diff --git a/assets/index-27e0f768.css b/assets/index-27e0f768.css new file mode 100644 index 0000000..694eda6 --- /dev/null +++ b/assets/index-27e0f768.css @@ -0,0 +1 @@ +.hljs{display:block;overflow-x:auto;padding:.5em;background:#f0f0f0}.hljs,.hljs-subst{color:#444}.hljs-comment{color:#888}.hljs-keyword,.hljs-attribute,.hljs-selector-tag,.hljs-meta-keyword,.hljs-doctag,.hljs-name{font-weight:700}.hljs-type,.hljs-string,.hljs-number,.hljs-selector-id,.hljs-selector-class,.hljs-quote,.hljs-template-tag,.hljs-deletion{color:#800}.hljs-title,.hljs-section{color:#800;font-weight:700}.hljs-regexp,.hljs-symbol,.hljs-variable,.hljs-template-variable,.hljs-link,.hljs-selector-attr,.hljs-selector-pseudo{color:#bc6060}.hljs-literal{color:#78a960}.hljs-built_in,.hljs-bullet,.hljs-code,.hljs-addition{color:#397300}.hljs-meta{color:#1f7199}.hljs-meta-string{color:#4d99bf}.mx-16{margin-left:4rem;margin-right:4rem}.mx-48{margin-left:12rem;margin-right:12rem}.my-48{margin-top:12rem;margin-bottom:12rem}.my-8{margin-top:2rem;margin-bottom:2rem}.mb-8{margin-bottom:2rem}.mr-5{margin-right:1.25rem}.mt-12{margin-top:3rem}.mt-8{margin-top:2rem}.h-10{height:2.5rem}.h-2{height:.5rem}.h-full{height:100%}.min-h-screen{min-height:100vh}.w-10{width:2.5rem}.w-2\/5{width:40%}.w-3\/5{width:60%}.w-60{width:15rem}.max-w-sm{max-width:24rem}.flex-grow,.grow{flex-grow:1}.cursor-pointer{cursor:pointer}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.space-x-0>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(0px * var(--tw-space-x-reverse));margin-left:calc(0px * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity))}.border-gray-800{--tw-border-opacity: 1;border-color:rgb(31 41 55 / var(--tw-border-opacity))}.bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-0{padding-left:0;padding-right:0}.px-12{padding-left:3rem;padding-right:3rem}.px-16{padding-left:4rem;padding-right:4rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-14{padding-top:3.5rem;padding-bottom:3.5rem}.pb-96{padding-bottom:24rem}.align-middle{vertical-align:middle}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.tracking-tight{letter-spacing:-.025em}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.ring-offset-gray-800{--tw-ring-offset-color: #1f2937}.hover\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.focus\:ring-blue-600:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(37 99 235 / var(--tw-ring-opacity))}@media (prefers-reduced-motion: no-preference){@keyframes pulse{50%{opacity:.5}}.motion-safe\:animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}}@media (prefers-color-scheme: dark){.dark\:border-gray-500{--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity))}.dark\:border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.dark\:border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity))}.dark\:bg-gray-600{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.dark\:bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.dark\:bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.dark\:text-gray-100{--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity))}.dark\:text-gray-200{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.dark\:text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.dark\:text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.dark\:ring-offset-gray-800{--tw-ring-offset-color: #1f2937}.dark\:hover\:bg-gray-800:hover{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.dark\:focus\:ring-blue-600:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(37 99 235 / var(--tw-ring-opacity))}}@media (min-width: 1024px){.lg\:w-1\/5{width:20%}.lg\:w-4\/5{width:80%}.lg\:flex-row{flex-direction:row}.lg\:space-x-8>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(2rem * var(--tw-space-x-reverse));margin-left:calc(2rem * calc(1 - var(--tw-space-x-reverse)))}.lg\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.lg\:text-2xl{font-size:1.5rem;line-height:2rem}.lg\:text-sm{font-size:.875rem;line-height:1.25rem}}@media (min-width: 1280px){.xl\:block{display:block}.xl\:hidden{display:none}}@font-face{font-family:IBM Plex Mono;src:url(/assets/IBMPlexMono-Regular-82ad22f5.woff2) format("woff2"),url(/assets/IBMPlexMono-Regular-06ba2f2e.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IBM PLex Mono;src:url(/assets/IBMPlexMono-Italic-30cb963d.woff2) format("woff2"),url(/assets/IBMPlexMono-Italic-fc3301da.woff) format("woff");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:IBM PLex Mono;src:url(/assets/IBMPlexMono-Bold-3152ee89.woff2) format("woff2"),url(/assets/IBMPlexMono-Bold-6bb3fd98.woff) format("woff");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/assets/IBMPlexMono-BoldItalic-6f4d360c.woff2) format("woff2"),url(/assets/IBMPlexMono-BoldItalic-5cd662b9.woff) format("woff");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Comic Mono;font-weight:400;src:url(/assets/ComicMono-742af5ad.woff) format("woff"),url(/assets/ComicMono-bed2c2b5.woff2) format("wooff2")}@font-face{font-family:Comic Mono;font-weight:700;src:url(/assets/ComicMono-Bold-2350c6c1.woff) format("woff"),url(./woff/ComicMono-Bold.woff2) format("woff2"),}@font-face{font-family:jgs7;src:url(/assets/jgs7-a69a9a5d.woff2) format("woff2"),url(/assets/jgs7-d3f51478.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:jgs5;src:url(/assets/jgs5-0e03e537.woff2) format("woff2"),url(/assets/jgs5-9f26a38a.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:jgs9;src:url(/assets/jgs9-dc75d6ab.woff2) format("woff2"),url(/assets/jgs9-0c41ef37.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:jgs_vecto;src:url(/assets/jgs_vecto-e7fb4a88.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Steps Mono;src:url(/assets/Steps-Mono-aff9e933.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Steps Mono Thin;src:url(/assets/Steps-Mono-Thin-b82a0d7e.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Jet Brains;src:url(/assets/JetBrainsMono-Regular-a9cb1cd8.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Jet Brains;src:url(/assets/JetBrainsMono-Bold-c503cc5e.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.hljs{display:block;overflow-x:auto;padding:.5em;background:#2E3440}.hljs,.hljs-subst{color:#d8dee9}.hljs-selector-tag{color:#81a1c1}.hljs-selector-id{color:#8fbcbb;font-weight:700}.hljs-selector-class,.hljs-selector-attr{color:#8fbcbb}.hljs-selector-pseudo{color:#88c0d0}.hljs-addition{background-color:#a3be8c80}.hljs-deletion{background-color:#bf616a80}.hljs-built_in,.hljs-type,.hljs-class{color:#8fbcbb}.hljs-function{color:#88c0d0}.hljs-function>.hljs-title{color:#88c0d0}.hljs-keyword,.hljs-literal,.hljs-symbol{color:#81a1c1}.hljs-number{color:#b48ead}.hljs-regexp{color:#ebcb8b}.hljs-string{color:#a3be8c}.hljs-title{color:#8fbcbb}.hljs-params{color:#d8dee9}.hljs-bullet{color:#81a1c1}.hljs-code{color:#8fbcbb}.hljs-emphasis{font-style:italic}.hljs-formula{color:#8fbcbb}.hljs-strong{font-weight:700}.hljs-link:hover{text-decoration:underline}.hljs-quote{color:#4c566a}.hljs-comment: #FEFEFE; .hljs-doctag{color:#8fbcbb}.hljs-meta,.hljs-meta-keyword{color:#5e81ac}.hljs-meta-string{color:#a3be8c}.hljs-attr{color:#8fbcbb}.hljs-attribute{color:#d8dee9}.hljs-builtin-name,.hljs-name{color:#81a1c1}.hljs-section{color:#88c0d0}.hljs-tag{color:#81a1c1}.hljs-variable,.hljs-template-variable{color:#d8dee9}.hljs-template-tag{color:#5e81ac}.abnf .hljs-attribute{color:#88c0d0}.abnf .hljs-symbol{color:#ebcb8b}.apache .hljs-attribute{color:#88c0d0}.apache .hljs-section{color:#81a1c1}.arduino .hljs-built_in{color:#88c0d0}.aspectj .hljs-meta{color:#d08770}.aspectj>.hljs-title{color:#88c0d0}.bnf .hljs-attribute{color:#8fbcbb}.clojure .hljs-name{color:#88c0d0}.clojure .hljs-symbol{color:#ebcb8b}.coq .hljs-built_in{color:#88c0d0}.cpp .hljs-meta-string{color:#8fbcbb}.css .hljs-built_in{color:#88c0d0}.css .hljs-keyword{color:#d08770}.diff .hljs-meta,.ebnf .hljs-attribute{color:#8fbcbb}.glsl .hljs-built_in{color:#88c0d0}.groovy .hljs-meta:not(:first-child){color:#d08770}.haxe .hljs-meta,.java .hljs-meta{color:#d08770}.ldif .hljs-attribute{color:#8fbcbb}.lisp .hljs-name,.lua .hljs-built_in,.moonscript .hljs-built_in,.nginx .hljs-attribute{color:#88c0d0}.nginx .hljs-section{color:#5e81ac}.pf .hljs-built_in,.processing .hljs-built_in{color:#88c0d0}.scss .hljs-keyword,.stylus .hljs-keyword{color:#81a1c1}.swift .hljs-meta{color:#d08770}.vim .hljs-built_in{color:#88c0d0;font-style:italic}.yaml .hljs-meta{color:#d08770}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.\!sticky{position:sticky!important}.sticky{position:sticky}.inset-y-0{top:0;bottom:0}.bottom-0{bottom:0}.bottom-12{bottom:3rem}.bottom-2{bottom:.5rem}.bottom-2\.5{bottom:.625rem}.left-0{left:0}.right-0{right:0}.right-2{right:.5rem}.right-2\.5{right:.625rem}.top-0{top:0}.z-0{z-index:0}.col-span-1{grid-column:span 1 / span 1}.col-span-3{grid-column:span 3 / span 3}.mx-0{margin-left:0;margin-right:0}.mx-12{margin-left:3rem;margin-right:3rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-6{margin-left:1.5rem;margin-right:1.5rem}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.my-4{margin-top:1rem;margin-bottom:1rem}.my-6{margin-top:1.5rem;margin-bottom:1.5rem}.-mt-2{margin-top:-.5rem}.mb-0{margin-bottom:0}.mb-2{margin-bottom:.5rem}.mb-24{margin-bottom:6rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.ml-0{margin-left:0}.ml-1{margin-left:.25rem}.ml-12{margin-left:3rem}.ml-2{margin-left:.5rem}.ml-4{margin-left:1rem}.ml-5{margin-left:1.25rem}.ml-6{margin-left:1.5rem}.ml-8{margin-left:2rem}.mr-2{margin-right:.5rem}.mr-4{margin-right:1rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.box-border{box-sizing:border-box}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-12{height:3rem}.h-4{height:1rem}.h-48{height:12rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-auto{height:auto}.h-screen{height:100vh}.max-h-96{max-height:24rem}.max-h-fit{max-height:-moz-fit-content;max-height:fit-content}.w-12{width:3rem}.w-14{width:3.5rem}.w-32{width:8rem}.w-4{width:1rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-screen{width:100vw}.flex-shrink-0{flex-shrink:0}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.border-spacing-y-4{--tw-border-spacing-y: 1rem;border-spacing:var(--tw-border-spacing-x) var(--tw-border-spacing-y)}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.list-disc{list-style-type:disc}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-y-2{row-gap:.5rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1.5rem * var(--tw-space-x-reverse));margin-left:calc(1.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-scroll{overflow:scroll}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-hidden{overflow-y:hidden}.overflow-y-scroll{overflow-y:scroll}.whitespace-pre{white-space:pre}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-b{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-b-4{border-bottom-width:4px}.border-l-2{border-left-width:2px}.border-l-4{border-left-width:4px}.border-l-8{border-left-width:8px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-none{border-style:none}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity))}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity))}.border-neutral-500{--tw-border-opacity: 1;border-color:rgb(115 115 115 / var(--tw-border-opacity))}.border-neutral-800{--tw-border-opacity: 1;border-color:rgb(38 38 38 / var(--tw-border-opacity))}.bg-emerald-600{--tw-bg-opacity: 1;background-color:rgb(5 150 105 / var(--tw-bg-opacity))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.bg-gray-500{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity))}.bg-neutral-500{--tw-bg-opacity: 1;background-color:rgb(115 115 115 / var(--tw-bg-opacity))}.bg-neutral-600{--tw-bg-opacity: 1;background-color:rgb(82 82 82 / var(--tw-bg-opacity))}.bg-neutral-700{--tw-bg-opacity: 1;background-color:rgb(64 64 64 / var(--tw-bg-opacity))}.bg-neutral-800{--tw-bg-opacity: 1;background-color:rgb(38 38 38 / var(--tw-bg-opacity))}.bg-neutral-900{--tw-bg-opacity: 1;background-color:rgb(23 23 23 / var(--tw-bg-opacity))}.bg-orange-300{--tw-bg-opacity: 1;background-color:rgb(253 186 116 / var(--tw-bg-opacity))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity))}.bg-red-800{--tw-bg-opacity: 1;background-color:rgb(153 27 27 / var(--tw-bg-opacity))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.bg-opacity-50{--tw-bg-opacity: .5}.fill-current{fill:currentColor}.fill-orange-300{fill:#fdba74}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-4{padding:1rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0{padding-top:0;padding-bottom:0}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-4{padding-top:1rem;padding-bottom:1rem}.pb-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-32{padding-bottom:8rem}.pb-36{padding-bottom:9rem}.pb-4{padding-bottom:1rem}.pl-10{padding-left:2.5rem}.pl-2{padding-left:.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pl-5{padding-left:1.25rem}.pl-8{padding-left:2rem}.pr-2{padding-right:.5rem}.pr-4{padding-right:1rem}.pt-0{padding-top:0}.pt-0\.5{padding-top:.125rem}.pt-1{padding-top:.25rem}.pt-12{padding-top:3rem}.pt-2{padding-top:.5rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.text-center{text-align:center}.align-top{vertical-align:top}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-normal{line-height:1.5}.text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.text-neutral-200{--tw-text-opacity: 1;color:rgb(229 229 229 / var(--tw-text-opacity))}.text-orange-300{--tw-text-opacity: 1;color:rgb(253 186 116 / var(--tw-text-opacity))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity))}.text-rose-600{--tw-text-opacity: 1;color:rgb(225 29 72 / var(--tw-text-opacity))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.underline-offset-4{text-underline-offset:4px}.placeholder-white::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(255 255 255 / var(--tw-placeholder-opacity))}.placeholder-white::placeholder{--tw-placeholder-opacity: 1;color:rgb(255 255 255 / var(--tw-placeholder-opacity))}.outline{outline-style:solid}.outline-0{outline-width:0px}.invert{--tw-invert: invert(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.striped .col-span-3,.striped .col-span-2{--tw-bg-opacity: 1;background-color:rgb(212 212 212 / var(--tw-bg-opacity))}.hover\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.hover\:bg-gray-800:hover{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.hover\:bg-gray-900:hover{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity))}.hover\:bg-green-700:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity))}.hover\:bg-neutral-500:hover{--tw-bg-opacity: 1;background-color:rgb(115 115 115 / var(--tw-bg-opacity))}.hover\:bg-neutral-600:hover{--tw-bg-opacity: 1;background-color:rgb(82 82 82 / var(--tw-bg-opacity))}.hover\:bg-neutral-700:hover{--tw-bg-opacity: 1;background-color:rgb(64 64 64 / var(--tw-bg-opacity))}.hover\:bg-neutral-800:hover{--tw-bg-opacity: 1;background-color:rgb(38 38 38 / var(--tw-bg-opacity))}.hover\:bg-neutral-900:hover{--tw-bg-opacity: 1;background-color:rgb(23 23 23 / var(--tw-bg-opacity))}.hover\:bg-red-900:hover{--tw-bg-opacity: 1;background-color:rgb(127 29 29 / var(--tw-bg-opacity))}.hover\:bg-white:hover{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.hover\:fill-black:hover{fill:#000}.hover\:text-black:hover{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity))}.hover\:text-gray-900:hover{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.focus\:border-blue-500:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-4:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-blue-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity))}:is([dir=rtl] .rtl\:border-l){border-left-width:1px}:is([dir=rtl] .rtl\:border-r-0){border-right-width:0px}@media (prefers-color-scheme: dark){.dark\:border-gray-500{--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity))}.dark\:border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.dark\:border-neutral-700{--tw-border-opacity: 1;border-color:rgb(64 64 64 / var(--tw-border-opacity))}.dark\:bg-gray-600{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.dark\:bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.dark\:text-gray-100{--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity))}.dark\:text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.dark\:text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.dark\:placeholder-gray-400::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity))}.dark\:placeholder-gray-400::placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity))}.dark\:ring-offset-gray-800{--tw-ring-offset-color: #1f2937}.dark\:focus\:border-blue-500:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity))}.dark\:focus\:ring-blue-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity))}.dark\:focus\:ring-blue-600:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(37 99 235 / var(--tw-ring-opacity))}}@media (min-width: 640px){.sm\:my-1{margin-top:.25rem;margin-bottom:.25rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.sm\:text-xs{font-size:.75rem;line-height:1rem}}@media (min-width: 768px){.md\:bottom-0{bottom:0}.md\:top-0{top:0}}@media (min-width: 1024px){.lg\:mx-12{margin-left:3rem;margin-right:3rem}.lg\:mx-20{margin-left:5rem;margin-right:5rem}.lg\:mx-4{margin-left:1rem;margin-right:1rem}.lg\:mx-48{margin-left:12rem;margin-right:12rem}.lg\:mx-6{margin-left:1.5rem;margin-right:1.5rem}.lg\:my-1{margin-top:.25rem;margin-bottom:.25rem}.lg\:my-12{margin-top:3rem;margin-bottom:3rem}.lg\:my-4{margin-top:1rem;margin-bottom:1rem}.lg\:mb-4{margin-bottom:1rem}.lg\:ml-12{margin-left:3rem}.lg\:ml-4{margin-left:1rem}.lg\:mt-12{margin-top:3rem}.lg\:mt-16{margin-top:4rem}.lg\:block{display:block}.lg\:flex{display:flex}.lg\:grid{display:grid}.lg\:h-8{height:2rem}.lg\:h-80{height:20rem}.lg\:h-auto{height:auto}.lg\:w-1\/3{width:33.333333%}.lg\:w-8{width:2rem}.lg\:w-80{width:20rem}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:justify-center{justify-content:center}.lg\:gap-4{gap:1rem}.lg\:space-x-8>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(2rem * var(--tw-space-x-reverse));margin-left:calc(2rem * calc(1 - var(--tw-space-x-reverse)))}.lg\:space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.lg\:overflow-x-auto{overflow-x:auto}.lg\:overflow-y-auto{overflow-y:auto}.lg\:p-6{padding:1.5rem}.lg\:px-12{padding-left:3rem;padding-right:3rem}.lg\:px-16{padding-left:4rem;padding-right:4rem}.lg\:px-2{padding-left:.5rem;padding-right:.5rem}.lg\:px-4{padding-left:1rem;padding-right:1rem}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:py-1{padding-top:.25rem;padding-bottom:.25rem}.lg\:py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.lg\:py-4{padding-top:1rem;padding-bottom:1rem}.lg\:pb-0{padding-bottom:0}.lg\:pb-2{padding-bottom:.5rem}.lg\:pb-4{padding-bottom:1rem}.lg\:pl-0{padding-left:0}.lg\:pl-6{padding-left:1.5rem}.lg\:pr-6{padding-right:1.5rem}.lg\:pt-2{padding-top:.5rem}.lg\:pt-4{padding-top:1rem}.lg\:text-center{text-align:center}.lg\:text-2xl{font-size:1.5rem;line-height:2rem}.lg\:text-3xl{font-size:1.875rem;line-height:2.25rem}.lg\:text-4xl{font-size:2.25rem;line-height:2.5rem}.lg\:text-sm{font-size:.875rem;line-height:1.25rem}.lg\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width: 1280px){.xl\:block{display:block}} diff --git a/assets/index-653e7191.css.gz b/assets/index-27e0f768.css.gz similarity index 56% rename from assets/index-653e7191.css.gz rename to assets/index-27e0f768.css.gz index c70e078..811cc4f 100644 Binary files a/assets/index-653e7191.css.gz and b/assets/index-27e0f768.css.gz differ diff --git a/assets/index-2b5bd032.js.gz b/assets/index-2b5bd032.js.gz deleted file mode 100644 index ac592c6..0000000 Binary files a/assets/index-2b5bd032.js.gz and /dev/null differ diff --git a/assets/index-653e7191.css b/assets/index-653e7191.css deleted file mode 100644 index 438d3ab..0000000 --- a/assets/index-653e7191.css +++ /dev/null @@ -1 +0,0 @@ -.hljs{display:block;overflow-x:auto;padding:.5em;background:#f0f0f0}.hljs,.hljs-subst{color:#444}.hljs-comment{color:#888}.hljs-keyword,.hljs-attribute,.hljs-selector-tag,.hljs-meta-keyword,.hljs-doctag,.hljs-name{font-weight:700}.hljs-type,.hljs-string,.hljs-number,.hljs-selector-id,.hljs-selector-class,.hljs-quote,.hljs-template-tag,.hljs-deletion{color:#800}.hljs-title,.hljs-section{color:#800;font-weight:700}.hljs-regexp,.hljs-symbol,.hljs-variable,.hljs-template-variable,.hljs-link,.hljs-selector-attr,.hljs-selector-pseudo{color:#bc6060}.hljs-literal{color:#78a960}.hljs-built_in,.hljs-bullet,.hljs-code,.hljs-addition{color:#397300}.hljs-meta{color:#1f7199}.hljs-meta-string{color:#4d99bf}.mx-16{margin-left:4rem;margin-right:4rem}.mx-48{margin-left:12rem;margin-right:12rem}.my-48{margin-top:12rem;margin-bottom:12rem}.my-8{margin-top:2rem;margin-bottom:2rem}.mb-8{margin-bottom:2rem}.mr-5{margin-right:1.25rem}.mt-12{margin-top:3rem}.mt-8{margin-top:2rem}.h-10{height:2.5rem}.h-2{height:.5rem}.h-full{height:100%}.min-h-screen{min-height:100vh}.w-10{width:2.5rem}.w-2\/5{width:40%}.w-3\/5{width:60%}.w-60{width:15rem}.max-w-sm{max-width:24rem}.flex-grow,.grow{flex-grow:1}.cursor-pointer{cursor:pointer}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.space-x-0>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(0px * var(--tw-space-x-reverse));margin-left:calc(0px * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity))}.border-gray-800{--tw-border-opacity: 1;border-color:rgb(31 41 55 / var(--tw-border-opacity))}.bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-0{padding-left:0;padding-right:0}.px-12{padding-left:3rem;padding-right:3rem}.px-16{padding-left:4rem;padding-right:4rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-14{padding-top:3.5rem;padding-bottom:3.5rem}.pb-96{padding-bottom:24rem}.align-middle{vertical-align:middle}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.tracking-tight{letter-spacing:-.025em}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.ring-offset-gray-800{--tw-ring-offset-color: #1f2937}.hover\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.focus\:ring-blue-600:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(37 99 235 / var(--tw-ring-opacity))}@media (prefers-reduced-motion: no-preference){@keyframes pulse{50%{opacity:.5}}.motion-safe\:animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}}@media (prefers-color-scheme: dark){.dark\:border-gray-500{--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity))}.dark\:border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.dark\:border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity))}.dark\:bg-gray-600{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.dark\:bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.dark\:bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.dark\:text-gray-100{--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity))}.dark\:text-gray-200{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity))}.dark\:text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.dark\:text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.dark\:ring-offset-gray-800{--tw-ring-offset-color: #1f2937}.dark\:hover\:bg-gray-800:hover{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.dark\:focus\:ring-blue-600:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(37 99 235 / var(--tw-ring-opacity))}}@media (min-width: 1024px){.lg\:w-1\/5{width:20%}.lg\:w-4\/5{width:80%}.lg\:flex-row{flex-direction:row}.lg\:space-x-8>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(2rem * var(--tw-space-x-reverse));margin-left:calc(2rem * calc(1 - var(--tw-space-x-reverse)))}.lg\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.lg\:text-2xl{font-size:1.5rem;line-height:2rem}.lg\:text-sm{font-size:.875rem;line-height:1.25rem}}@media (min-width: 1280px){.xl\:block{display:block}.xl\:hidden{display:none}}@font-face{font-family:IBM Plex Mono;src:url(/assets/IBMPlexMono-Regular-82ad22f5.woff2) format("woff2"),url(/assets/IBMPlexMono-Regular-06ba2f2e.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IBM PLex Mono;src:url(/assets/IBMPlexMono-Italic-30cb963d.woff2) format("woff2"),url(/assets/IBMPlexMono-Italic-fc3301da.woff) format("woff");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:IBM PLex Mono;src:url(/assets/IBMPlexMono-Bold-3152ee89.woff2) format("woff2"),url(/assets/IBMPlexMono-Bold-6bb3fd98.woff) format("woff");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/assets/IBMPlexMono-BoldItalic-6f4d360c.woff2) format("woff2"),url(/assets/IBMPlexMono-BoldItalic-5cd662b9.woff) format("woff");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Comic Mono;font-weight:400;src:url(/assets/ComicMono-742af5ad.woff) format("woff"),url(/assets/ComicMono-bed2c2b5.woff2) format("wooff2")}@font-face{font-family:Comic Mono;font-weight:700;src:url(/assets/ComicMono-Bold-2350c6c1.woff) format("woff"),url(./woff/ComicMono-Bold.woff2) format("woff2"),}@font-face{font-family:jgs7;src:url(/assets/jgs7-a69a9a5d.woff2) format("woff2"),url(/assets/jgs7-d3f51478.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:jgs5;src:url(/assets/jgs5-0e03e537.woff2) format("woff2"),url(/assets/jgs5-9f26a38a.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:jgs9;src:url(/assets/jgs9-dc75d6ab.woff2) format("woff2"),url(/assets/jgs9-0c41ef37.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:jgs_vecto;src:url(/assets/jgs_vecto-e7fb4a88.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Steps Mono;src:url(/assets/Steps-Mono-aff9e933.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Steps Mono Thin;src:url(/assets/Steps-Mono-Thin-b82a0d7e.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Jet Brains;src:url(/assets/JetBrainsMono-Regular-a9cb1cd8.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Jet Brains;src:url(/assets/JetBrainsMono-Bold-c503cc5e.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.hljs{display:block;overflow-x:auto;padding:.5em;background:#2E3440}.hljs,.hljs-subst{color:#d8dee9}.hljs-selector-tag{color:#81a1c1}.hljs-selector-id{color:#8fbcbb;font-weight:700}.hljs-selector-class,.hljs-selector-attr{color:#8fbcbb}.hljs-selector-pseudo{color:#88c0d0}.hljs-addition{background-color:#a3be8c80}.hljs-deletion{background-color:#bf616a80}.hljs-built_in,.hljs-type,.hljs-class{color:#8fbcbb}.hljs-function{color:#88c0d0}.hljs-function>.hljs-title{color:#88c0d0}.hljs-keyword,.hljs-literal,.hljs-symbol{color:#81a1c1}.hljs-number{color:#b48ead}.hljs-regexp{color:#ebcb8b}.hljs-string{color:#a3be8c}.hljs-title{color:#8fbcbb}.hljs-params{color:#d8dee9}.hljs-bullet{color:#81a1c1}.hljs-code{color:#8fbcbb}.hljs-emphasis{font-style:italic}.hljs-formula{color:#8fbcbb}.hljs-strong{font-weight:700}.hljs-link:hover{text-decoration:underline}.hljs-quote{color:#4c566a}.hljs-comment: #FEFEFE; .hljs-doctag{color:#8fbcbb}.hljs-meta,.hljs-meta-keyword{color:#5e81ac}.hljs-meta-string{color:#a3be8c}.hljs-attr{color:#8fbcbb}.hljs-attribute{color:#d8dee9}.hljs-builtin-name,.hljs-name{color:#81a1c1}.hljs-section{color:#88c0d0}.hljs-tag{color:#81a1c1}.hljs-variable,.hljs-template-variable{color:#d8dee9}.hljs-template-tag{color:#5e81ac}.abnf .hljs-attribute{color:#88c0d0}.abnf .hljs-symbol{color:#ebcb8b}.apache .hljs-attribute{color:#88c0d0}.apache .hljs-section{color:#81a1c1}.arduino .hljs-built_in{color:#88c0d0}.aspectj .hljs-meta{color:#d08770}.aspectj>.hljs-title{color:#88c0d0}.bnf .hljs-attribute{color:#8fbcbb}.clojure .hljs-name{color:#88c0d0}.clojure .hljs-symbol{color:#ebcb8b}.coq .hljs-built_in{color:#88c0d0}.cpp .hljs-meta-string{color:#8fbcbb}.css .hljs-built_in{color:#88c0d0}.css .hljs-keyword{color:#d08770}.diff .hljs-meta,.ebnf .hljs-attribute{color:#8fbcbb}.glsl .hljs-built_in{color:#88c0d0}.groovy .hljs-meta:not(:first-child){color:#d08770}.haxe .hljs-meta,.java .hljs-meta{color:#d08770}.ldif .hljs-attribute{color:#8fbcbb}.lisp .hljs-name,.lua .hljs-built_in,.moonscript .hljs-built_in,.nginx .hljs-attribute{color:#88c0d0}.nginx .hljs-section{color:#5e81ac}.pf .hljs-built_in,.processing .hljs-built_in{color:#88c0d0}.scss .hljs-keyword,.stylus .hljs-keyword{color:#81a1c1}.swift .hljs-meta{color:#d08770}.vim .hljs-built_in{color:#88c0d0;font-style:italic}.yaml .hljs-meta{color:#d08770}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.\!sticky{position:sticky!important}.sticky{position:sticky}.inset-y-0{top:0;bottom:0}.bottom-0{bottom:0}.bottom-12{bottom:3rem}.bottom-2{bottom:.5rem}.bottom-2\.5{bottom:.625rem}.left-0{left:0}.right-0{right:0}.right-2{right:.5rem}.right-2\.5{right:.625rem}.top-0{top:0}.z-0{z-index:0}.col-span-1{grid-column:span 1 / span 1}.col-span-3{grid-column:span 3 / span 3}.mx-0{margin-left:0;margin-right:0}.mx-12{margin-left:3rem;margin-right:3rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-6{margin-left:1.5rem;margin-right:1.5rem}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.my-4{margin-top:1rem;margin-bottom:1rem}.my-6{margin-top:1.5rem;margin-bottom:1.5rem}.-mt-2{margin-top:-.5rem}.mb-0{margin-bottom:0}.mb-2{margin-bottom:.5rem}.mb-24{margin-bottom:6rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.ml-0{margin-left:0}.ml-1{margin-left:.25rem}.ml-12{margin-left:3rem}.ml-2{margin-left:.5rem}.ml-4{margin-left:1rem}.ml-5{margin-left:1.25rem}.ml-6{margin-left:1.5rem}.ml-8{margin-left:2rem}.mr-2{margin-right:.5rem}.mr-4{margin-right:1rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.box-border{box-sizing:border-box}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-12{height:3rem}.h-4{height:1rem}.h-48{height:12rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-auto{height:auto}.h-screen{height:100vh}.max-h-96{max-height:24rem}.max-h-fit{max-height:-moz-fit-content;max-height:fit-content}.w-12{width:3rem}.w-14{width:3.5rem}.w-32{width:8rem}.w-4{width:1rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-screen{width:100vw}.flex-shrink-0{flex-shrink:0}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.border-spacing-y-4{--tw-border-spacing-y: 1rem;border-spacing:var(--tw-border-spacing-x) var(--tw-border-spacing-y)}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.list-disc{list-style-type:disc}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-y-2{row-gap:.5rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1.5rem * var(--tw-space-x-reverse));margin-left:calc(1.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-scroll{overflow:scroll}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-hidden{overflow-y:hidden}.overflow-y-scroll{overflow-y:scroll}.whitespace-pre{white-space:pre}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-b{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-b-4{border-bottom-width:4px}.border-l-2{border-left-width:2px}.border-l-4{border-left-width:4px}.border-l-8{border-left-width:8px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-none{border-style:none}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity))}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity))}.border-neutral-500{--tw-border-opacity: 1;border-color:rgb(115 115 115 / var(--tw-border-opacity))}.border-neutral-800{--tw-border-opacity: 1;border-color:rgb(38 38 38 / var(--tw-border-opacity))}.bg-emerald-600{--tw-bg-opacity: 1;background-color:rgb(5 150 105 / var(--tw-bg-opacity))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.bg-gray-500{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity))}.bg-neutral-500{--tw-bg-opacity: 1;background-color:rgb(115 115 115 / var(--tw-bg-opacity))}.bg-neutral-600{--tw-bg-opacity: 1;background-color:rgb(82 82 82 / var(--tw-bg-opacity))}.bg-neutral-700{--tw-bg-opacity: 1;background-color:rgb(64 64 64 / var(--tw-bg-opacity))}.bg-neutral-800{--tw-bg-opacity: 1;background-color:rgb(38 38 38 / var(--tw-bg-opacity))}.bg-neutral-900{--tw-bg-opacity: 1;background-color:rgb(23 23 23 / var(--tw-bg-opacity))}.bg-orange-300{--tw-bg-opacity: 1;background-color:rgb(253 186 116 / var(--tw-bg-opacity))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity))}.bg-red-800{--tw-bg-opacity: 1;background-color:rgb(153 27 27 / var(--tw-bg-opacity))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.bg-opacity-50{--tw-bg-opacity: .5}.fill-current{fill:currentColor}.fill-orange-300{fill:#fdba74}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-4{padding:1rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0{padding-top:0;padding-bottom:0}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-4{padding-top:1rem;padding-bottom:1rem}.pb-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-32{padding-bottom:8rem}.pb-36{padding-bottom:9rem}.pb-4{padding-bottom:1rem}.pl-10{padding-left:2.5rem}.pl-2{padding-left:.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pl-5{padding-left:1.25rem}.pl-8{padding-left:2rem}.pr-2{padding-right:.5rem}.pr-4{padding-right:1rem}.pt-0{padding-top:0}.pt-0\.5{padding-top:.125rem}.pt-1{padding-top:.25rem}.pt-12{padding-top:3rem}.pt-2{padding-top:.5rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.text-center{text-align:center}.align-top{vertical-align:top}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-normal{line-height:1.5}.text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.text-neutral-200{--tw-text-opacity: 1;color:rgb(229 229 229 / var(--tw-text-opacity))}.text-orange-300{--tw-text-opacity: 1;color:rgb(253 186 116 / var(--tw-text-opacity))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity))}.text-rose-600{--tw-text-opacity: 1;color:rgb(225 29 72 / var(--tw-text-opacity))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.underline-offset-4{text-underline-offset:4px}.placeholder-white::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(255 255 255 / var(--tw-placeholder-opacity))}.placeholder-white::placeholder{--tw-placeholder-opacity: 1;color:rgb(255 255 255 / var(--tw-placeholder-opacity))}.outline{outline-style:solid}.outline-0{outline-width:0px}.invert{--tw-invert: invert(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.striped .col-span-3,.striped .col-span-2{--tw-bg-opacity: 1;background-color:rgb(212 212 212 / var(--tw-bg-opacity))}.hover\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.hover\:bg-gray-800:hover{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.hover\:bg-gray-900:hover{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity))}.hover\:bg-green-700:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity))}.hover\:bg-neutral-500:hover{--tw-bg-opacity: 1;background-color:rgb(115 115 115 / var(--tw-bg-opacity))}.hover\:bg-neutral-600:hover{--tw-bg-opacity: 1;background-color:rgb(82 82 82 / var(--tw-bg-opacity))}.hover\:bg-neutral-700:hover{--tw-bg-opacity: 1;background-color:rgb(64 64 64 / var(--tw-bg-opacity))}.hover\:bg-neutral-800:hover{--tw-bg-opacity: 1;background-color:rgb(38 38 38 / var(--tw-bg-opacity))}.hover\:bg-neutral-900:hover{--tw-bg-opacity: 1;background-color:rgb(23 23 23 / var(--tw-bg-opacity))}.hover\:bg-red-900:hover{--tw-bg-opacity: 1;background-color:rgb(127 29 29 / var(--tw-bg-opacity))}.hover\:bg-white:hover{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.hover\:fill-black:hover{fill:#000}.hover\:text-black:hover{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity))}.hover\:text-gray-900:hover{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.focus\:border-blue-500:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-4:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-blue-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity))}:is([dir=rtl] .rtl\:border-l){border-left-width:1px}:is([dir=rtl] .rtl\:border-r-0){border-right-width:0px}@media (prefers-color-scheme: dark){.dark\:border-gray-500{--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity))}.dark\:border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity))}.dark\:border-neutral-700{--tw-border-opacity: 1;border-color:rgb(64 64 64 / var(--tw-border-opacity))}.dark\:bg-gray-600{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.dark\:bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.dark\:text-gray-100{--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity))}.dark\:text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.dark\:text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.dark\:placeholder-gray-400::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity))}.dark\:placeholder-gray-400::placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity))}.dark\:ring-offset-gray-800{--tw-ring-offset-color: #1f2937}.dark\:focus\:border-blue-500:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity))}.dark\:focus\:ring-blue-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity))}.dark\:focus\:ring-blue-600:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(37 99 235 / var(--tw-ring-opacity))}}@media (min-width: 640px){.sm\:my-1{margin-top:.25rem;margin-bottom:.25rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.sm\:text-xs{font-size:.75rem;line-height:1rem}}@media (min-width: 768px){.md\:bottom-0{bottom:0}.md\:top-0{top:0}}@media (min-width: 1024px){.lg\:mx-12{margin-left:3rem;margin-right:3rem}.lg\:mx-20{margin-left:5rem;margin-right:5rem}.lg\:mx-4{margin-left:1rem;margin-right:1rem}.lg\:mx-48{margin-left:12rem;margin-right:12rem}.lg\:mx-6{margin-left:1.5rem;margin-right:1.5rem}.lg\:my-1{margin-top:.25rem;margin-bottom:.25rem}.lg\:my-12{margin-top:3rem;margin-bottom:3rem}.lg\:my-4{margin-top:1rem;margin-bottom:1rem}.lg\:mb-4{margin-bottom:1rem}.lg\:ml-12{margin-left:3rem}.lg\:ml-4{margin-left:1rem}.lg\:mt-12{margin-top:3rem}.lg\:mt-16{margin-top:4rem}.lg\:block{display:block}.lg\:flex{display:flex}.lg\:grid{display:grid}.lg\:h-8{height:2rem}.lg\:h-80{height:20rem}.lg\:h-auto{height:auto}.lg\:w-1\/3{width:33.333333%}.lg\:w-8{width:2rem}.lg\:w-80{width:20rem}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:justify-center{justify-content:center}.lg\:gap-4{gap:1rem}.lg\:space-x-8>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(2rem * var(--tw-space-x-reverse));margin-left:calc(2rem * calc(1 - var(--tw-space-x-reverse)))}.lg\:space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.lg\:overflow-x-auto{overflow-x:auto}.lg\:overflow-y-auto{overflow-y:auto}.lg\:p-6{padding:1.5rem}.lg\:px-12{padding-left:3rem;padding-right:3rem}.lg\:px-16{padding-left:4rem;padding-right:4rem}.lg\:px-2{padding-left:.5rem;padding-right:.5rem}.lg\:px-4{padding-left:1rem;padding-right:1rem}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:py-1{padding-top:.25rem;padding-bottom:.25rem}.lg\:py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.lg\:py-4{padding-top:1rem;padding-bottom:1rem}.lg\:pb-0{padding-bottom:0}.lg\:pb-2{padding-bottom:.5rem}.lg\:pb-4{padding-bottom:1rem}.lg\:pl-0{padding-left:0}.lg\:pl-6{padding-left:1.5rem}.lg\:pr-6{padding-right:1.5rem}.lg\:pt-2{padding-top:.5rem}.lg\:pt-4{padding-top:1rem}.lg\:text-center{text-align:center}.lg\:text-2xl{font-size:1.5rem;line-height:2rem}.lg\:text-3xl{font-size:1.875rem;line-height:2.25rem}.lg\:text-4xl{font-size:2.25rem;line-height:2.5rem}.lg\:text-sm{font-size:.875rem;line-height:1.25rem}.lg\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width: 1280px){.xl\:block{display:block}} diff --git a/assets/index-2b5bd032.js b/assets/index-e085fcbe.js similarity index 94% rename from assets/index-2b5bd032.js rename to assets/index-e085fcbe.js index c6cdb22..1f5381e 100644 --- a/assets/index-2b5bd032.js +++ b/assets/index-e085fcbe.js @@ -1,4 +1,4 @@ -var Rx=Object.defineProperty;var Cx=(r,e,t)=>e in r?Rx(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t;var A=(r,e,t)=>(Cx(r,typeof e!="symbol"?e+"":e,t),t),od=(r,e,t)=>{if(!e.has(r))throw TypeError("Cannot "+t)};var X=(r,e,t)=>(od(r,e,"read from private field"),t?t.call(r):e.get(r)),dt=(r,e,t)=>{if(e.has(r))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(r):e.set(r,t)},Je=(r,e,t,n)=>(od(r,e,"write to private field"),n?n.call(r,t):e.set(r,t),t);var tc=(r,e,t,n)=>({set _(a){Je(r,e,a,t)},get _(){return X(r,e,n)}}),We=(r,e,t)=>(od(r,e,"access private method"),t);(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const a of document.querySelectorAll('link[rel="modulepreload"]'))n(a);new MutationObserver(a=>{for(const i of a)if(i.type==="childList")for(const s of i.addedNodes)s.tagName==="LINK"&&s.rel==="modulepreload"&&n(s)}).observe(document,{childList:!0,subtree:!0});function t(a){const i={};return a.integrity&&(i.integrity=a.integrity),a.referrerPolicy&&(i.referrerPolicy=a.referrerPolicy),a.crossOrigin==="use-credentials"?i.credentials="include":a.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function n(a){if(a.ep)return;a.ep=!0;const i=t(a);fetch(a.href,i)}})();let Hn=[],Ax=(r,e)=>{let t,n=[],a={lc:0,l:e||0,value:r,set(i){a.value=i,a.notify()},get(){return a.lc||a.listen(()=>{})(),a.value},notify(i){t=n;let s=!Hn.length;for(let o=0;o{n===t&&(n=n.slice());let o=n.indexOf(i);~o&&(n.splice(o,2),a.lc--,a.lc||a.off())}},subscribe(i,s){let o=a.listen(i,s);return i(a.value),o},off(){}};return a},wx=(r={})=>{let e=Ax(r);return e.setKey=function(t,n){typeof n>"u"?t in e.value&&(e.value={...e.value},delete e.value[t],e.notify(t)):e.value[t]!==n&&(e.value={...e.value,[t]:n},e.notify(t))},e};if(typeof DelayNode<"u"){class r extends DelayNode{constructor(t,n,a,i){super(t),n=Math.abs(n),this.delayTime.value=a;const s=t.createGain();s.gain.value=Math.min(Math.abs(i),.995),this.feedback=s.gain;const o=t.createGain();return o.gain.value=n,this.delayGain=o,this.connect(s),this.connect(o),s.connect(this),this.connect=l=>o.connect(l),this}start(t){this.delayGain.gain.setValueAtTime(this.delayGain.gain.value,t+this.delayTime.value)}}AudioContext.prototype.createFeedbackDelay=function(e,t,n){return new r(this,e,t,n)}}var l_={};l_.generateReverb=function(r,e){for(var t=r.audioContext||new AudioContext,n=t.sampleRate,a=r.numChannels||2,i=r.decayTime*1.5,s=Math.round(r.decayTime*n),o=Math.round(i*n),l=Math.round((r.fadeInTime||0)*n),c=Math.pow(1/1e3,1/s),u=t.createBuffer(a,o,n),m=0;m{i.duration=s,i.fade=o,i.lp=l,i.dim=c,i.ir=u,u?i.buffer=this.adjustLength(s,u):l_.generateReverb({audioContext:this,numChannels:2,decayTime:s,fadeInTime:o,lpFreqStart:l,lpFreqEnd:c},m=>{i.buffer=m})},i.generate(r,e,t,n,a),i});var Y1={a:{freqs:[660,1120,2750,3e3,3350],gains:[1,.5012,.0708,.0631,.0126],qs:[80,90,120,130,140]},e:{freqs:[440,1800,2700,3e3,3300],gains:[1,.1995,.1259,.1,.1],qs:[70,80,100,120,120]},i:{freqs:[270,1850,2900,3350,3590],gains:[1,.0631,.0631,.0158,.0158],qs:[40,90,100,120,120]},o:{freqs:[430,820,2700,3e3,3300],gains:[1,.3162,.0501,.0794,.01995],qs:[40,80,100,120,120]},u:{freqs:[370,630,2750,3e3,3400],gains:[1,.1,.0708,.0316,.01995],qs:[40,60,100,120,120]}};if(typeof GainNode<"u"){class r extends GainNode{constructor(t,n){if(super(t),!Y1[n])throw new Error("vowel: unknown vowel "+n);const{gains:a,qs:i,freqs:s}=Y1[n],o=t.createGain();for(let l=0;l<5;l++){const c=t.createGain();c.gain.value=a[l];const u=t.createBiquadFilter();u.type="bandpass",u.Q.value=i[l],u.frequency.value=s[l],this.connect(u),u.connect(c),c.connect(o)}return o.gain.value=8,this.connect=l=>o.connect(l),this}}AudioContext.prototype.createVowelFilter=function(e){return new r(this,e)}}const xx=r=>{var a;if(typeof r!="string")return[];const[e,t="",n]=((a=r.match(/^([a-gA-G])([#bsf]*)([0-9]*)$/))==null?void 0:a.slice(1))||[];return e?[e,t,n?Number(n):void 0]:[]},kx={c:0,d:2,e:4,f:5,g:7,a:9,b:11},Mx={"#":1,b:-1,s:1,f:-1},Yu=(r,e=3)=>{const[t,n,a=e]=xx(r);if(!t)throw new Error('not a note: "'+r+'"');const i=kx[t.toLowerCase()],s=(n==null?void 0:n.split("").reduce((o,l)=>o+Mx[l],0))||0;return(Number(a)+1)*12+i+s},Cv=r=>Math.pow(2,(r-69)/12)*440,$f=(r,e,t)=>Math.min(Math.max(r,e),t),Lx=r=>12*Math.log(r/440)/Math.LN2+69,Px=(r,e)=>{if(typeof r!="object")throw new Error("valueToMidi: expected object value");let{freq:t,note:n}=r;if(typeof t=="number")return Lx(t);if(typeof n=="string")return Yu(n);if(typeof n=="number")return n;if(!e)throw new Error("valueToMidi: expected freq or note to be set");return e},Bx="data:application/javascript;base64,Ly8gTElDRU5TRSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2My4wIHNlZSBodHRwczovL2dpdGh1Yi5jb20vZGt0cjAvV2ViRGlydC9ibG9iL21haW4vTElDRU5TRQovLyBhbGwgdGhlIGNyZWRpdCBnb2VzIHRvIGRrdHIwJ3Mgd2ViZGlydDogaHR0cHM6Ly9naXRodWIuY29tL2RrdHIwL1dlYkRpcnQvYmxvYi81Y2UzZDY5ODM2MmM1NGQ2ZTFiNjhhY2M0N2ViMjk1NWFjNjJjNzkzL2Rpc3QvQXVkaW9Xb3JrbGV0cy5qcwovLyA8MwoKY2xhc3MgQ29hcnNlUHJvY2Vzc29yIGV4dGVuZHMgQXVkaW9Xb3JrbGV0UHJvY2Vzc29yIHsKICBzdGF0aWMgZ2V0IHBhcmFtZXRlckRlc2NyaXB0b3JzKCkgewogICAgcmV0dXJuIFt7IG5hbWU6ICdjb2Fyc2UnLCBkZWZhdWx0VmFsdWU6IDEgfV07CiAgfQoKICBjb25zdHJ1Y3RvcigpIHsKICAgIHN1cGVyKCk7CiAgICB0aGlzLm5vdFN0YXJ0ZWQgPSB0cnVlOwogIH0KCiAgcHJvY2VzcyhpbnB1dHMsIG91dHB1dHMsIHBhcmFtZXRlcnMpIHsKICAgIGNvbnN0IGlucHV0ID0gaW5wdXRzWzBdOwogICAgY29uc3Qgb3V0cHV0ID0gb3V0cHV0c1swXTsKICAgIGNvbnN0IGNvYXJzZSA9IHBhcmFtZXRlcnMuY29hcnNlOwogICAgY29uc3QgYmxvY2tTaXplID0gMTI4OwogICAgY29uc3QgaGFzSW5wdXQgPSAhKGlucHV0WzBdID09PSB1bmRlZmluZWQpOwogICAgaWYgKGhhc0lucHV0KSB7CiAgICAgIHRoaXMubm90U3RhcnRlZCA9IGZhbHNlOwogICAgICBvdXRwdXRbMF1bMF0gPSBpbnB1dFswXVswXTsKICAgICAgZm9yIChsZXQgbiA9IDE7IG4gPCBibG9ja1NpemU7IG4rKykgewogICAgICAgIGZvciAobGV0IG8gPSAwOyBvIDwgb3V0cHV0Lmxlbmd0aDsgbysrKSB7CiAgICAgICAgICBvdXRwdXRbb11bbl0gPSBuICUgY29hcnNlID09IDAgPyBpbnB1dFswXVtuXSA6IG91dHB1dFtvXVtuIC0gMV07CiAgICAgICAgfQogICAgICB9CiAgICB9CiAgICByZXR1cm4gdGhpcy5ub3RTdGFydGVkIHx8IGhhc0lucHV0OwogIH0KfQoKcmVnaXN0ZXJQcm9jZXNzb3IoJ2NvYXJzZS1wcm9jZXNzb3InLCBDb2Fyc2VQcm9jZXNzb3IpOwoKY2xhc3MgQ3J1c2hQcm9jZXNzb3IgZXh0ZW5kcyBBdWRpb1dvcmtsZXRQcm9jZXNzb3IgewogIHN0YXRpYyBnZXQgcGFyYW1ldGVyRGVzY3JpcHRvcnMoKSB7CiAgICByZXR1cm4gW3sgbmFtZTogJ2NydXNoJywgZGVmYXVsdFZhbHVlOiAwIH1dOwogIH0KCiAgY29uc3RydWN0b3IoKSB7CiAgICBzdXBlcigpOwogICAgdGhpcy5ub3RTdGFydGVkID0gdHJ1ZTsKICB9CgogIHByb2Nlc3MoaW5wdXRzLCBvdXRwdXRzLCBwYXJhbWV0ZXJzKSB7CiAgICBjb25zdCBpbnB1dCA9IGlucHV0c1swXTsKICAgIGNvbnN0IG91dHB1dCA9IG91dHB1dHNbMF07CiAgICBjb25zdCBjcnVzaCA9IHBhcmFtZXRlcnMuY3J1c2g7CiAgICBjb25zdCBibG9ja1NpemUgPSAxMjg7CiAgICBjb25zdCBoYXNJbnB1dCA9ICEoaW5wdXRbMF0gPT09IHVuZGVmaW5lZCk7CiAgICBpZiAoaGFzSW5wdXQpIHsKICAgICAgdGhpcy5ub3RTdGFydGVkID0gZmFsc2U7CiAgICAgIGlmIChjcnVzaC5sZW5ndGggPT09IDEpIHsKICAgICAgICBjb25zdCB4ID0gTWF0aC5wb3coMiwgY3J1c2hbMF0gLSAxKTsKICAgICAgICBmb3IgKGxldCBuID0gMDsgbiA8IGJsb2NrU2l6ZTsgbisrKSB7CiAgICAgICAgICBjb25zdCB2YWx1ZSA9IE1hdGgucm91bmQoaW5wdXRbMF1bbl0gKiB4KSAvIHg7CiAgICAgICAgICBmb3IgKGxldCBvID0gMDsgbyA8IG91dHB1dC5sZW5ndGg7IG8rKykgewogICAgICAgICAgICBvdXRwdXRbb11bbl0gPSB2YWx1ZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZm9yIChsZXQgbiA9IDA7IG4gPCBibG9ja1NpemU7IG4rKykgewogICAgICAgICAgbGV0IHggPSBNYXRoLnBvdygyLCBjcnVzaFtuXSAtIDEpOwogICAgICAgICAgY29uc3QgdmFsdWUgPSBNYXRoLnJvdW5kKGlucHV0WzBdW25dICogeCkgLyB4OwogICAgICAgICAgZm9yIChsZXQgbyA9IDA7IG8gPCBvdXRwdXQubGVuZ3RoOyBvKyspIHsKICAgICAgICAgICAgb3V0cHV0W29dW25dID0gdmFsdWU7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICB9CiAgICByZXR1cm4gdGhpcy5ub3RTdGFydGVkIHx8IGhhc0lucHV0OwogIH0KfQpyZWdpc3RlclByb2Nlc3NvcignY3J1c2gtcHJvY2Vzc29yJywgQ3J1c2hQcm9jZXNzb3IpOwoKY2xhc3MgU2hhcGVQcm9jZXNzb3IgZXh0ZW5kcyBBdWRpb1dvcmtsZXRQcm9jZXNzb3IgewogIHN0YXRpYyBnZXQgcGFyYW1ldGVyRGVzY3JpcHRvcnMoKSB7CiAgICByZXR1cm4gW3sgbmFtZTogJ3NoYXBlJywgZGVmYXVsdFZhbHVlOiAwIH1dOwogIH0KCiAgY29uc3RydWN0b3IoKSB7CiAgICBzdXBlcigpOwogICAgdGhpcy5ub3RTdGFydGVkID0gdHJ1ZTsKICB9CgogIHByb2Nlc3MoaW5wdXRzLCBvdXRwdXRzLCBwYXJhbWV0ZXJzKSB7CiAgICBjb25zdCBpbnB1dCA9IGlucHV0c1swXTsKICAgIGNvbnN0IG91dHB1dCA9IG91dHB1dHNbMF07CiAgICBjb25zdCBzaGFwZTAgPSBwYXJhbWV0ZXJzLnNoYXBlWzBdOwogICAgY29uc3Qgc2hhcGUxID0gc2hhcGUwIDwgMSA/IHNoYXBlMCA6IDEuMCAtIDRlLTEwOwogICAgY29uc3Qgc2hhcGUgPSAoMi4wICogc2hhcGUxKSAvICgxLjAgLSBzaGFwZTEpOwogICAgY29uc3QgYmxvY2tTaXplID0gMTI4OwogICAgY29uc3QgaGFzSW5wdXQgPSAhKGlucHV0WzBdID09PSB1bmRlZmluZWQpOwogICAgaWYgKGhhc0lucHV0KSB7CiAgICAgIHRoaXMubm90U3RhcnRlZCA9IGZhbHNlOwogICAgICBmb3IgKGxldCBuID0gMDsgbiA8IGJsb2NrU2l6ZTsgbisrKSB7CiAgICAgICAgY29uc3QgdmFsdWUgPSAoKDEgKyBzaGFwZSkgKiBpbnB1dFswXVtuXSkgLyAoMSArIHNoYXBlICogTWF0aC5hYnMoaW5wdXRbMF1bbl0pKTsKICAgICAgICBmb3IgKGxldCBvID0gMDsgbyA8IG91dHB1dC5sZW5ndGg7IG8rKykgewogICAgICAgICAgb3V0cHV0W29dW25dID0gdmFsdWU7CiAgICAgICAgfQogICAgICB9CiAgICB9CiAgICByZXR1cm4gdGhpcy5ub3RTdGFydGVkIHx8IGhhc0lucHV0OwogIH0KfQoKcmVnaXN0ZXJQcm9jZXNzb3IoJ3NoYXBlLXByb2Nlc3NvcicsIFNoYXBlUHJvY2Vzc29yKTsK";function zc(r){const e=Dt().createGain();return e.gain.value=r,e}const c_=(r,e,t,n,a,i)=>{const s=Dt().createGain();return s.gain.setValueAtTime(0,i),s.gain.linearRampToValueAtTime(a,i+r),s.gain.linearRampToValueAtTime(t*a,i+r+e),{node:s,stop:o=>{s.gain.setValueAtTime(t*a,o),s.gain.linearRampToValueAtTime(0,o+n)}}},Yx=(r,e,t,n,a,i)=>{t=Math.max(.001,t),a=Math.max(.001,a);const s=Dt().createGain();return s.gain.setValueAtTime(1e-4,i),s.gain.exponentialRampToValueAtTime(a,i+r),s.gain.exponentialRampToValueAtTime(t*a,i+r+e),{node:s,stop:o=>{s.gain.exponentialRampToValueAtTime(1e-4,o+n)}}},Fx=(r,e,t,n,a,i,s,o,l)=>{const c=s-i,u=i+c,m=i+n*c;r.setValueAtTime(i,o),r.linearRampToValueAtTime(u,o+e),r.linearRampToValueAtTime(m,o+e+t),r.setValueAtTime(m,l),r.linearRampToValueAtTime(i,l+Math.max(a,.1))};function Ux(r,e,t,n,a,i){const s={threshold:e??-3,ratio:t??10,knee:n??10,attack:a??.005,release:i??.05};return new DynamicsCompressorNode(r,s)}function ld(r,e,t,n,a,i,s,o,l,c,u,m=.5){const f=r.createBiquadFilter();if(f.type=e,f.Q.value=n,f.frequency.value=t,!isNaN(l)&&l!==0){const _=l*m,O=$f(2**-_*t,0,2e4),w=$f(2**(l-_)*t,0,2e4);return Fx(f.frequency,a,i,s,o,O,w,c,u),f}return f}let F1=r=>r<.5?1:1-(r-.5)/.5;function $x(r,e,t=0){const n=Dt();if(!t)return r;let a=n.createGain(),i=n.createGain();r.connect(a),e.connect(i),a.gain.value=F1(t),i.gain.value=F1(1-t);let s=n.createGain();return a.connect(s),i.connect(s),s}let Gx=r=>console.log(r);const zs=(...r)=>Gx(...r),cd={};function Qx(r,e){var t=e?1e3:1024;if(r=t);return r.toFixed(1)+" "+n[a]}const qx=async(r,e,t,n,a,i,s)=>{let o=0;a!==void 0&&t!==void 0&&zs("[sampler] hap has note and freq. ignoring note","warning");let l=Px({freq:a,note:t},36);o=l-36;const c=Dt();let u;if(Array.isArray(i))u=i[e%i.length];else{const O=I=>Yu(I)-l,w=Object.keys(i).filter(I=>!I.startsWith("_")).reduce((I,k,$)=>!I||Math.abs(O(k)){const a=t?`sound "${t}:${n}"`:"sample";if(r=r.replace("#","%23"),!cd[r]){zs(`[sampler] load ${a}..`,"load-sample",{url:r});const i=Date.now();cd[r]=fetch(r).then(s=>s.arrayBuffer()).then(async s=>{const o=Date.now()-i,l=Qx(s.byteLength);return zs(`[sampler] load ${a}... done! loaded ${l} in ${o}ms`,"loaded-sample",{url:r}),await e.decodeAudioData(s)})}return cd[r]};function Vx(r){const e=Dt(),t=e.createBuffer(r.numberOfChannels,r.length,e.sampleRate);for(let n=0;nObject.entries(r).forEach(([n,a])=>{if(typeof a=="string"&&(a=[a]),typeof a!="object")throw new Error("wrong sample map format for "+n);t=a._base||t;const i=s=>(t+s).replace("github:","https://raw.githubusercontent.com/");Array.isArray(a)?a=a.map(i):a=Object.fromEntries(Object.entries(a).map(([s,o])=>[s,(typeof o=="string"?[o]:o).map(i)])),e(n,a)});let zx={};function Wx(r){const e=Object.entries(zx).find(([t])=>r.startsWith(t));if(e)return e[1]}const Fa=async(r,e=r._base||"",t={})=>{if(typeof r=="string"){const i=Wx(r);if(i)return i(r);if(r.startsWith("bubo:")){const[o,l]=r.split(":");r=`github:Bubobubobubobubo/dough-${l}`}if(r.startsWith("github:")){let[o,l]=r.split("github:");l=l.endsWith("/")?l.slice(0,-1):l,l.split("/").length===2&&(l+="/main"),r=`https://raw.githubusercontent.com/${l}/strudel.json`}if(r.startsWith("shabda:")){let[o,l]=r.split("shabda:");r=`https://shabda.ndre.gr/${l}.json?strudel=1`}if(r.startsWith("shabda/speech")){let[o,l]=r.split("shabda/speech");l=l.startsWith("/")?l.substring(1):l;let[c,u]=l.split(":"),m="f",f="en-GB";c&&([f,m]=c.split("/")),r=`https://shabda.ndre.gr/speech/${u}.json?gender=${m}&language=${f}&strudel=1'`}if(typeof fetch!="function")return;const s=r.split("/").slice(0,-1).join("/");return typeof fetch>"u"?void 0:fetch(r).then(o=>o.json()).then(o=>Fa(o,e||o._base||s,t)).catch(o=>{throw console.error(o),new Error(`error loading "${r}"`)})}const{prebake:n,tag:a}=t;Hx(r,(i,s)=>u_(i,(o,l,c)=>Xx(o,l,c,s),{type:"sample",samples:s,baseUrl:e,prebake:n,tag:a}),e)},U1=[];async function Xx(r,e,t,n,a){let{s:i,freq:s,unit:o,nudge:l=0,cut:c,loop:u,clip:m=void 0,n:f=0,note:_,speed:O=1,loopBegin:w=0,begin:I=0,loopEnd:k=1,end:$=1,vib:z,vibmod:p=.5}=e;if(O===0)return;u=i.startsWith("wt_")?1:e.loop;const S=Dt(),{attack:b=.001,decay:N=.001,sustain:L=1,release:Y=.001}=e,B=r+l,Q=await qx(i,f,_,O,s,n,a);let ee;if(z>0){ee=Dt().createOscillator(),ee.frequency.value=z;const q=Dt().createGain();q.gain.value=p*100,ee.connect(q),q.connect(Q.detune),ee.start(0)}if(S.currentTime>r){zs(`[sampler] still loading sound "${i}:${f}"`,"highlight");return}if(!Q){zs(`[sampler] could not load "${i}:${f}"`,"error");return}Q.playbackRate.value=Math.abs(O)*Q.playbackRate.value,o==="c"&&(Q.playbackRate.value=Q.playbackRate.value*Q.buffer.duration*1);const se=I*Q.buffer.duration;u&&(Q.loop=!0,Q.loopStart=w*Q.buffer.duration-se,Q.loopEnd=k*Q.buffer.duration-se),Q.start(B,se);const{node:ae,stop:re}=c_(b,N,L,Y,1,r);Q.connect(ae);const D=S.createGain();ae.connect(D),Q.onended=function(){Q.disconnect(),ee==null||ee.stop(),ae.disconnect(),D.disconnect(),t()};const P={node:D,bufferSource:Q,stop:(q,H=m===void 0&&u===void 0)=>{let te=q;if(H){const ie=Q.buffer.duration/Q.playbackRate.value;te=r+($-I)*ie}Q.stop(te+Y),re(te)}};if(c!==void 0){const q=U1[c];q&&(q.node.gain.setValueAtTime(1,B),q.node.gain.linearRampToValueAtTime(0,B+.01)),U1[c]=P}return P}const Fu=wx();function u_(r,e,t={}){Fu.setKey(r,{onTrigger:e,data:t})}function ud(r){return Fu.get()[r]}let dd;const Dt=()=>(dd||(dd=new AudioContext),dd);let nc;const d_=()=>{const r=Dt();return nc||(nc=r.createGain(),nc.connect(r.destination)),nc};let md;function Kx(){return md||(md=Dt().audioWorklet.addModule(Bx),md)}function hd(r,e,t){const n=new AudioWorkletNode(r,e);return Object.entries(t).forEach(([a,i])=>{n.parameters.get(a).value=i}),n}async function Zx(r={}){const{disableWorklets:e=!1}=r;typeof window<"u"&&(await Dt().resume(),e?console.log("disableWorklets: AudioWorklet effects coarse, crush and shape are skipped!"):await Kx().catch(t=>{console.warn("could not load AudioWorklet effects coarse, crush and shape",t)}))}async function jx(r){return new Promise(e=>{document.addEventListener("click",async function t(){await Zx(r),e(),document.removeEventListener("click",t)})})}let Pi={};function Jx(r,e,t,n){var a;if(t=$f(t,0,.98),!Pi[r]){const i=Dt().createFeedbackDelay(1,e,t);(a=i.start)==null||a.call(i,n),i.connect(d_()),Pi[r]=i}return Pi[r].delayTime.value!==e&&Pi[r].delayTime.setValueAtTime(e,n),Pi[r].feedback.value!==t&&Pi[r].feedback.setValueAtTime(t,n),Pi[r]}const ai={};function ek(r,e,t=1,n=.5,a=1e3,i=2e3){const s=Dt(),o=s.createGain();o.gain.value=i,ai[r]==null&&(ai[r]=s.createOscillator(),ai[r].frequency.value=t,ai[r].type="sine",ai[r].start()),ai[r].connect(o),ai[r].frequency.value!=t&&ai[r].frequency.setValueAtTime(t,e);const l=2;let c=0;const u=[];for(let m=0;m0&&u[m-1].connect(f),u.push(f)}return u[u.length-1]}let Pa={},rc=(r,e)=>r!==void 0&&r!==e;function tk(r,e,t,n,a,i){if(!Pa[r]){const s=Dt().createReverb(e,t,n,a,i);s.connect(d_()),Pa[r]=s}return(rc(e,Pa[r].duration)||rc(t,Pa[r].fade)||rc(n,Pa[r].lp)||rc(a,Pa[r].dim)||Pa[r].ir!==i)&&Pa[r].generate(e,t,n,a,i),Pa[r]}let Bi;function Gf(r=2048){if(!Bi){const e=Dt().createAnalyser();e.fftSize=r,Bi=e,new Float32Array(Bi.frequencyBinCount)}return Bi.fftSize!==r&&(Bi.fftSize=r,new Float32Array(Bi.frequencyBinCount)),Bi}function pd(r,e,t){const n=zc(t);return r.connect(n),n.connect(e),n}const nk=async(r,e,t)=>{const n=Dt();if(typeof r!="object")throw new Error(`expected hap.value to be an object, but got "${r}". Hint: append .note() or .s() to the end`,"error");r.duration=t;let a=n.currentTime+e,{s:i="triangle",bank:s,source:o,gain:l=.8,postgain:c=1,ftype:u="12db",fanchor:m=.5,cutoff:f,lpenv:_,lpattack:O=.01,lpdecay:w=.01,lpsustain:I=1,lprelease:k=.01,resonance:$=1,hpenv:z,hcutoff:p,hpattack:S=.01,hpdecay:b=.01,hpsustain:N=1,hprelease:L=.01,hresonance:Y=1,bpenv:B,bandf:Q,bpattack:ee=.01,bpdecay:se=.01,bpsustain:ae=1,bprelease:re=.01,bandq:D=1,phaser:P,phaserdepth:q=.75,phasersweep:H,phasercenter:te,coarse:ie,crush:_e,shape:Ce,pan:we,vowel:ve,delay:Ie=0,delayfeedback:de=.5,delaytime:Pe=.25,orbit:Ze=1,room:Ye,roomfade:st,roomlp:mt,roomdim:Et,roomsize:It,ir:gt,i:Nt=0,velocity:Lt=1,analyze:Pn,fft:He=8,compressor:ln,compressorRatio:nt,compressorKnee:Xe,compressorAttack:Bn,compressorRelease:cn}=r;l*=Lt;let pn=[];const j=()=>{pn.forEach(Be=>Be==null?void 0:Be.disconnect())};s&&i&&(i=`${s}_${i}`);let be;if(o)be=o(a,r,t);else if(ud(i)){const{onTrigger:Be}=ud(i),_t=await Be(a,r,j);_t&&(be=_t.node,_t.stop(a+t))}else throw new Error(`sound ${i} not found! Is it loaded?`);if(!be)return;if(n.currentTime>a){zs("[webaudio] skip hap: still loading",n.currentTime-a);return}const ye=[];if(ye.push(be),ye.push(zc(l)),f!==void 0){let Be=()=>ld(n,"lowpass",f,$,O,w,I,k,_,a,a+t,m);ye.push(Be()),u==="24db"&&ye.push(Be())}if(p!==void 0){let Be=()=>ld(n,"highpass",p,Y,S,b,N,L,z,a,a+t,m);ye.push(Be()),u==="24db"&&ye.push(Be())}if(Q!==void 0){let Be=()=>ld(n,"bandpass",Q,D,ee,se,ae,re,B,a,a+t,m);ye.push(Be()),u==="24db"&&ye.push(Be())}if(ve!==void 0){const Be=n.createVowelFilter(ve);ye.push(Be)}if(ie!==void 0&&ye.push(hd(n,"coarse-processor",{coarse:ie})),_e!==void 0&&ye.push(hd(n,"crush-processor",{crush:_e})),Ce!==void 0&&ye.push(hd(n,"shape-processor",{shape:Ce})),ln!==void 0&&ye.push(Ux(n,ln,nt,Xe,Bn,cn)),we!==void 0){const Be=n.createStereoPanner();Be.pan.value=2*we-1,ye.push(Be)}if(P!==void 0&&q>0){const Be=ek(Ze,a,P,q,te,H);ye.push(Be)}const xe=zc(c);ye.push(xe),xe.connect(d_());let et;if(Ie>0&&Pe>0&&de>0){const Be=Jx(Ze,Pe,de,a);et=pd(xe,Be,Ie)}let Ne;if(Ye>0){let Be;if(gt!==void 0){let In,ot=ud(gt);Array.isArray(ot)?In=ot.data.samples[Nt%ot.data.samples.length]:typeof ot=="object"&&(In=Object.values(ot.data.samples).flat()[Nt%Object.values(ot.data.samples).length]),Be=await Av(In,n,gt,0)}const _t=tk(Ze,It,st,mt,Et,Be);Ne=pd(xe,_t,Ye)}let $t;if(Pn){const Be=Gf(2**(He+5));$t=pd(xe,Be,Pn)}ye.slice(1).reduce((Be,_t)=>Be.connect(_t),ye[0]),pn=ye.concat([et,Ne,$t])};let fd={};function rk(r){const e=Dt();if(fd[r])return fd[r];const t=2*e.sampleRate,n=e.createBuffer(1,t,e.sampleRate),a=n.getChannelData(0);let i=0,s,o,l,c,u,m,f;s=o=l=c=u=m=f=0;for(let _=0;_t.stop(n)}}function ak(r,e,t){const n=wv("pink",t);return{node:$x(r,n.node,e),stop:a=>n==null?void 0:n.stop(a)}}const ik=(r,e=1,t="sine")=>{const n=Dt(),a=n.createOscillator();a.type=t,a.frequency.value=r,a.start();const i=new GainNode(n,{gain:e});return a.connect(i),{node:i,stop:s=>a.stop(s)}},sk=(r,e,t,n="sine")=>{const a=r.frequency.value*e,i=a*t;return ik(a,i,n)},$1=["sine","square","triangle","sawtooth"],ok=["pink","white","brown"];function lk(){[...$1,...ok].forEach(r=>{u_(r,(e,t,n)=>{let{attack:a=.001,decay:i=.05,sustain:s=.6,release:o=.01}=t,l;$1.includes(r)?l=uk(r,e,t):l=wv(r,e);let{node:c,stop:u,triggerRelease:m}=l;const f=zc(.3),{node:_,stop:O}=c_(a,i,s,o,1,e);return c.onended=()=>{c.disconnect(),f.disconnect(),n()},{node:c.connect(f).connect(_),stop:w=>{O(w),m==null||m(w);let I=w+o;u(I)}}},{type:"synth",prebake:!0})})}function ck(r,e){const t=new Float32Array(r+1),n=new Float32Array(r+1),a=Dt(),i=a.createOscillator(),s={sawtooth:c=>[0,-1/c],square:c=>[0,c%2===0?0:1/c],triangle:c=>[c%2===0?0:1/(c*c),0]};if(!s[e])throw new Error(`unknown wave type ${e}`);t[0]=0,n[0]=0;let o=1;for(;o<=r;){const[c,u]=s[e](o);t[o]=c,n[o]=u,o++}const l=a.createPeriodicWave(t,n);return i.setPeriodicWave(l),i}function uk(r,e,{n:t,note:n,freq:a,vib:i=0,vibmod:s=.5,noise:o=0,fmh:l=1,fmi:c,fmenv:u="lin",fmattack:m,fmdecay:f,fmsustain:_,fmrelease:O,fmvelocity:w,fmwave:I="sine"}){Dt();let k;!t||r==="sine"?(k=Dt().createOscillator(),k.type=r||"triangle"):k=ck(t,r),n=n||36,typeof n=="string"&&(n=Yu(n)),!a&&typeof n=="number"&&(a=Cv(n)),k.frequency.value=Number(a),k.start(e);let $,z;if(c){const{node:b,stop:N}=sk(k,l,c,I);[m,f,_,O,w].find(L=>L!==void 0)?(m=m??.001,f=f??.001,_=_??1,O=O??.001,w=w??1,z=c_(m,f,_,O,w,e),u==="exp"&&(z=Yx(m,f,_,O,w,e),z.node.maxValue=c*2,z.node.minValue=1e-5),b.connect(z.node),z.node.connect(k.frequency)):b.connect(k.frequency),$=N}let p;if(i>0){p=Dt().createOscillator(),p.frequency.value=i;const b=Dt().createGain();b.gain.value=s*100,p.connect(b),b.connect(k.detune),p.start(e)}let S;return o&&(S=ak(k,o,e)),{node:(S==null?void 0:S.node)||k,stop:b=>{p==null||p.stop(b),S==null||S.stop(b),$==null||$(b),k.stop(b)},triggerRelease:b=>{z==null||z.stop(b)}}}function dk(r=1,e=.05,t=220,n=0,a=0,i=.1,s=0,o=1,l=0,c=0,u=0,m=0,f=0,_=0,O=0,w=0,I=0,k=1,$=0,z=0){let p=Math.PI*2,S=Dt().sampleRate,b=H=>H>0?1:-1,N=l*=500*p/S/S,L=t*=(1+e*2*Math.random()-e)*p/S,Y=[],B=0,Q=0,ee=0,se=1,ae=0,re=0,D=0,P,q;for(n=n*S+9,$*=S,a*=S,i*=S,I*=S,c*=500*p/S**3,O*=p/S,u*=p/S,m*=S,f=f*S|0,q=n+$+a+i+I|0;ee1?s>2?s>3?Math.sin((B%p)**3):Math.max(Math.min(Math.tan(B),1),-1):1-(2*B/p%2+2)%2:1-4*Math.abs(Math.round(B/p)-B/p):Math.sin(B),D=(f?1-z+z*Math.sin(p*ee/f):1)*b(D)*Math.abs(D)**o*r*1*(eeee?0:(eem&&(t+=u,L+=u,se=0),f&&!(++ae%f)&&(t=L,l=N,se||(se=1));return Y}const mk=(r,e)=>{let{s:t,note:n=36,freq:a,zrand:i=0,attack:s=0,decay:o=0,sustain:l=.8,release:c=.1,curve:u=1,slide:m=0,deltaSlide:f=0,pitchJump:_=0,pitchJumpTime:O=0,lfo:w=0,znoise:I=0,zmod:k=0,zcrush:$=0,zdelay:z=0,tremolo:p=0,duration:S=.2,zzfx:b}=r;const N=Math.max(S-s-o,0);typeof n=="string"&&(n=Yu(n)),!a&&typeof n=="number"&&(a=Cv(n)),t=t.replace("z_","");const L=["sine","triangle","sawtooth","tan","noise"].indexOf(t)||0;u=t==="square"?0:u;const Y=dk(...b||[.25,i,a,s,N,c,L,u,m,f,_,O,w,I,k,$,z,l,o,p]),B=Dt(),Q=B.createBuffer(1,Y.length,B.sampleRate);Q.getChannelData(0).set(Y);const ee=Dt().createBufferSource();return ee.buffer=Q,ee.start(e),{node:ee}};function hk(){["zzfx","z_sine","z_sawtooth","z_triangle","z_square","z_tan","z_noise"].forEach(r=>{u_(r,(e,t,n)=>{const{node:a}=mk({s:r,...t},e);return a.onended=()=>{a.disconnect(),n()},{node:a,stop:()=>{}}},{type:"synth",prebake:!0})})}let gd;const pk=()=>{};typeof window<"u"&&window.addEventListener("message",r=>{var e;r.data==="strudel-stop"?pk():(e=r.data)!=null&&e.dough&&(gd==null||gd.node.port.postMessage(r.data))});const fk=(r,e,t,n,a)=>{const s=r.interface.feedback.getContext("2d");s&&(s.beginPath(),s.arc(e,t,n,0,Math.PI*2),s.fillStyle=a,s.fill(),s.closePath())},gk=(r,e,t)=>{if(t!==void 0&&t<1&&t>9)return;const n=r.clock.bpm/60/r.clock.time_signature[1]*200,a=r.interface.feedback.getContext("2d"),i=o=>{fk(r,50+o,r.interface.feedback.clientHeight-15,8,"#fdba74")},s=o=>{const l=50+o,c=r.interface.feedback.clientHeight-15,u=8;a.clearRect(l-u,c-u,u*2,u*2)};if(e==="local"&&t!==void 0){const o=t*25;r.blinkTimeouts[o]&&clearTimeout(r.blinkTimeouts[o]),i(o),r.blinkTimeouts[o]=setTimeout(()=>{s(o),r.interface.feedback.getContext("2d").clearRect(0,0,r.interface.feedback.width,r.interface.feedback.height)},n)}},_k=()=>{const r=()=>{requestAnimationFrame(r)};requestAnimationFrame(r)};let _d=null,G1=0;const bk=(r,e)=>{let t=e.osc,n=Gf(t.fftSize),a=new Float32Array(n.frequencyBinCount),i=new Uint8Array(n.frequencyBinCount);const s=r.getContext("2d");let o=0,l=1e3/30;function c(m,f,_,O){const I=performance.now();if(I-(G1||0)<1e3/30)return;G1=I,n.fftSize=e.osc.fftSize*4,n.getByteFrequencyData(i),s.clearRect(0,0,m,f);const $=1,z=Math.floor(i.length*$),p=Math.min(z,e.osc.orientation==="horizontal"?m:f),S=e.osc.orientation==="horizontal"?m/p:f/p;let b,N=0,L=0;s.fillStyle=e.osc.color||"rgb(255, 255, 255)";for(let Y=0;Y=0&&a[z-1]<0?p="negToPos":a[z]<0&&a[z-1]>=0&&(p="posToNeg"),p&&(_d===null||p===_d)){$=z,_d=p;break}}if(e.osc.mode==="freqscope")c(m,f,O,_);else if(e.osc.mode==="3D")for(let z=$;z{throw new Error("This node type doesn't define a deserialize function")})}add(e){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return typeof e!="function"&&(e=En.match(e)),t=>{let n=e(t);return n===void 0?null:[this,n]}}}rt.closedBy=new rt({deserialize:r=>r.split(" ")});rt.openedBy=new rt({deserialize:r=>r.split(" ")});rt.group=new rt({deserialize:r=>r.split(" ")});rt.contextHash=new rt({perNode:!0});rt.lookAhead=new rt({perNode:!0});rt.mounted=new rt({perNode:!0});class Ok{constructor(e,t,n){this.tree=e,this.overlay=t,this.parser=n}}const Ek=Object.create(null);class En{constructor(e,t,n,a=0){this.name=e,this.props=t,this.id=n,this.flags=a}static define(e){let t=e.props&&e.props.length?Object.create(null):Ek,n=(e.top?1:0)|(e.skipped?2:0)|(e.error?4:0)|(e.name==null?8:0),a=new En(e.name||"",t,e.id,n);if(e.props){for(let i of e.props)if(Array.isArray(i)||(i=i(a)),i){if(i[0].perNode)throw new RangeError("Can't store a per-node prop on a node type");t[i[0].id]=i[1]}}return a}prop(e){return this.props[e.id]}get isTop(){return(this.flags&1)>0}get isSkipped(){return(this.flags&2)>0}get isError(){return(this.flags&4)>0}get isAnonymous(){return(this.flags&8)>0}is(e){if(typeof e=="string"){if(this.name==e)return!0;let t=this.prop(rt.group);return t?t.indexOf(e)>-1:!1}return this.id==e}static match(e){let t=Object.create(null);for(let n in e)for(let a of n.split(" "))t[a]=e[n];return n=>{for(let a=n.prop(rt.group),i=-1;i<(a?a.length:0);i++){let s=t[i<0?n.name:a[i]];if(s)return s}}}}En.none=new En("",Object.create(null),0,8);class $l{constructor(e){this.types=e;for(let t=0;t0;for(let l=this.cursor(s|Ft.IncludeAnonymous);;){let c=!1;if(l.from<=i&&l.to>=a&&(!o&&l.type.isAnonymous||t(l)!==!1)){if(l.firstChild())continue;c=!0}for(;c&&n&&(o||!l.type.isAnonymous)&&n(l),!l.nextSibling();){if(!l.parent())return;c=!0}}}prop(e){return e.perNode?this.props?this.props[e.id]:void 0:this.type.prop(e)}get propValues(){let e=[];if(this.props)for(let t in this.props)e.push([+t,this.props[t]]);return e}balance(e={}){return this.children.length<=8?this:p_(En.none,this.children,this.positions,0,this.children.length,0,this.length,(t,n,a)=>new Ct(this.type,t,n,a,this.propValues),e.makeTree||((t,n,a)=>new Ct(En.none,t,n,a)))}static build(e){return Tk(e)}}Ct.empty=new Ct(En.none,[],[],0);class m_{constructor(e,t){this.buffer=e,this.index=t}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}get pos(){return this.index}next(){this.index-=4}fork(){return new m_(this.buffer,this.index)}}class ls{constructor(e,t,n){this.buffer=e,this.length=t,this.set=n}get type(){return En.none}toString(){let e=[];for(let t=0;t0));l=s[l+3]);return o}slice(e,t,n){let a=this.buffer,i=new Uint16Array(t-e),s=0;for(let o=e,l=0;o=e&&te;case 1:return t<=e&&n>e;case 2:return n>e;case 4:return!0}}function Dv(r,e){let t=r.childBefore(e);for(;t;){let n=t.lastChild;if(!n||n.to!=t.to)break;n.type.isError&&n.from==n.to?(r=t,t=n.prevSibling):t=n}return r}function Ws(r,e,t,n){for(var a;r.from==r.to||(t<1?r.from>=e:r.from>e)||(t>-1?r.to<=e:r.to0?o.length:-1;e!=c;e+=t){let u=o[e],m=l[e]+s.from;if(Nv(a,n,m,m+u.length)){if(u instanceof ls){if(i&Ft.ExcludeBuffers)continue;let f=u.findChild(0,u.buffer.length,t,n-m,a);if(f>-1)return new _a(new vk(s,u,e,m),null,f)}else if(i&Ft.IncludeAnonymous||!u.type.isAnonymous||h_(u)){let f;if(!(i&Ft.IgnoreMounts)&&u.props&&(f=u.prop(rt.mounted))&&!f.overlay)return new Pr(f.tree,m,e,s);let _=new Pr(u,m,e,s);return i&Ft.IncludeAnonymous||!_.type.isAnonymous?_:_.nextChild(t<0?u.children.length-1:0,t,n,a)}}}if(i&Ft.IncludeAnonymous||!s.type.isAnonymous||(s.index>=0?e=s.index+t:e=t<0?-1:s._parent._tree.children.length,s=s._parent,!s))return null}}get firstChild(){return this.nextChild(0,1,0,4)}get lastChild(){return this.nextChild(this._tree.children.length-1,-1,0,4)}childAfter(e){return this.nextChild(0,1,e,2)}childBefore(e){return this.nextChild(this._tree.children.length-1,-1,e,-2)}enter(e,t,n=0){let a;if(!(n&Ft.IgnoreOverlays)&&(a=this._tree.prop(rt.mounted))&&a.overlay){let i=e-this.from;for(let{from:s,to:o}of a.overlay)if((t>0?s<=i:s=i:o>i))return new Pr(a.tree,a.overlay[0].from+this.from,-1,this)}return this.nextChild(0,1,e,t,n)}nextSignificantParent(){let e=this;for(;e.type.isAnonymous&&e._parent;)e=e._parent;return e}get parent(){return this._parent?this._parent.nextSignificantParent():null}get nextSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index+1,1,0,4):null}get prevSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index-1,-1,0,4):null}cursor(e=0){return new pl(this,e)}get tree(){return this._tree}toTree(){return this._tree}resolve(e,t=0){return Ws(this,e,t,!1)}resolveInner(e,t=0){return Ws(this,e,t,!0)}enterUnfinishedNodesBefore(e){return Dv(this,e)}getChild(e,t=null,n=null){let a=Wc(this,e,t,n);return a.length?a[0]:null}getChildren(e,t=null,n=null){return Wc(this,e,t,n)}toString(){return this._tree.toString()}get node(){return this}matchContext(e){return Xc(this,e)}}function Wc(r,e,t,n){let a=r.cursor(),i=[];if(!a.firstChild())return i;if(t!=null){for(;!a.type.is(t);)if(!a.nextSibling())return i}for(;;){if(n!=null&&a.type.is(n))return i;if(a.type.is(e)&&i.push(a.node),!a.nextSibling())return n==null?i:[]}}function Xc(r,e,t=e.length-1){for(let n=r.parent;t>=0;n=n.parent){if(!n)return!1;if(!n.type.isAnonymous){if(e[t]&&e[t]!=n.name)return!1;t--}}return!0}class vk{constructor(e,t,n,a){this.parent=e,this.buffer=t,this.index=n,this.start=a}}class _a{get name(){return this.type.name}get from(){return this.context.start+this.context.buffer.buffer[this.index+1]}get to(){return this.context.start+this.context.buffer.buffer[this.index+2]}constructor(e,t,n){this.context=e,this._parent=t,this.index=n,this.type=e.buffer.set.types[e.buffer.buffer[n]]}child(e,t,n){let{buffer:a}=this.context,i=a.findChild(this.index+4,a.buffer[this.index+3],e,t-this.context.start,n);return i<0?null:new _a(this.context,this,i)}get firstChild(){return this.child(1,0,4)}get lastChild(){return this.child(-1,0,4)}childAfter(e){return this.child(1,e,2)}childBefore(e){return this.child(-1,e,-2)}enter(e,t,n=0){if(n&Ft.ExcludeBuffers)return null;let{buffer:a}=this.context,i=a.findChild(this.index+4,a.buffer[this.index+3],t>0?1:-1,e-this.context.start,t);return i<0?null:new _a(this.context,this,i)}get parent(){return this._parent||this.context.parent.nextSignificantParent()}externalSibling(e){return this._parent?null:this.context.parent.nextChild(this.context.index+e,e,0,4)}get nextSibling(){let{buffer:e}=this.context,t=e.buffer[this.index+3];return t<(this._parent?e.buffer[this._parent.index+3]:e.buffer.length)?new _a(this.context,this._parent,t):this.externalSibling(1)}get prevSibling(){let{buffer:e}=this.context,t=this._parent?this._parent.index+4:0;return this.index==t?this.externalSibling(-1):new _a(this.context,this._parent,e.findChild(t,this.index,-1,0,4))}cursor(e=0){return new pl(this,e)}get tree(){return null}toTree(){let e=[],t=[],{buffer:n}=this.context,a=this.index+4,i=n.buffer[this.index+3];if(i>a){let s=n.buffer[this.index+1];e.push(n.slice(a,i,s)),t.push(0)}return new Ct(this.type,e,t,this.to-this.from)}resolve(e,t=0){return Ws(this,e,t,!1)}resolveInner(e,t=0){return Ws(this,e,t,!0)}enterUnfinishedNodesBefore(e){return Dv(this,e)}toString(){return this.context.buffer.childString(this.index)}getChild(e,t=null,n=null){let a=Wc(this,e,t,n);return a.length?a[0]:null}getChildren(e,t=null,n=null){return Wc(this,e,t,n)}get node(){return this}matchContext(e){return Xc(this,e)}}class pl{get name(){return this.type.name}constructor(e,t=0){if(this.mode=t,this.buffer=null,this.stack=[],this.index=0,this.bufferNode=null,e instanceof Pr)this.yieldNode(e);else{this._tree=e.context.parent,this.buffer=e.context;for(let n=e._parent;n;n=n._parent)this.stack.unshift(n.index);this.bufferNode=e,this.yieldBuf(e.index)}}yieldNode(e){return e?(this._tree=e,this.type=e.type,this.from=e.from,this.to=e.to,!0):!1}yieldBuf(e,t){this.index=e;let{start:n,buffer:a}=this.buffer;return this.type=t||a.set.types[a.buffer[e]],this.from=n+a.buffer[e+1],this.to=n+a.buffer[e+2],!0}yield(e){return e?e instanceof Pr?(this.buffer=null,this.yieldNode(e)):(this.buffer=e.context,this.yieldBuf(e.index,e.type)):!1}toString(){return this.buffer?this.buffer.buffer.childString(this.index):this._tree.toString()}enterChild(e,t,n){if(!this.buffer)return this.yield(this._tree.nextChild(e<0?this._tree._tree.children.length-1:0,e,t,n,this.mode));let{buffer:a}=this.buffer,i=a.findChild(this.index+4,a.buffer[this.index+3],e,t-this.buffer.start,n);return i<0?!1:(this.stack.push(this.index),this.yieldBuf(i))}firstChild(){return this.enterChild(1,0,4)}lastChild(){return this.enterChild(-1,0,4)}childAfter(e){return this.enterChild(1,e,2)}childBefore(e){return this.enterChild(-1,e,-2)}enter(e,t,n=this.mode){return this.buffer?n&Ft.ExcludeBuffers?!1:this.enterChild(1,e,t):this.yield(this._tree.enter(e,t,n))}parent(){if(!this.buffer)return this.yieldNode(this.mode&Ft.IncludeAnonymous?this._tree._parent:this._tree.parent);if(this.stack.length)return this.yieldBuf(this.stack.pop());let e=this.mode&Ft.IncludeAnonymous?this.buffer.parent:this.buffer.parent.nextSignificantParent();return this.buffer=null,this.yieldNode(e)}sibling(e){if(!this.buffer)return this._tree._parent?this.yield(this._tree.index<0?null:this._tree._parent.nextChild(this._tree.index+e,e,0,4,this.mode)):!1;let{buffer:t}=this.buffer,n=this.stack.length-1;if(e<0){let a=n<0?0:this.stack[n]+4;if(this.index!=a)return this.yieldBuf(t.findChild(a,this.index,-1,0,4))}else{let a=t.buffer[this.index+3];if(a<(n<0?t.buffer.length:t.buffer[this.stack[n]+3]))return this.yieldBuf(a)}return n<0?this.yield(this.buffer.parent.nextChild(this.buffer.index+e,e,0,4,this.mode)):!1}nextSibling(){return this.sibling(1)}prevSibling(){return this.sibling(-1)}atLastNode(e){let t,n,{buffer:a}=this;if(a){if(e>0){if(this.index-1)for(let i=t+e,s=e<0?-1:n._tree.children.length;i!=s;i+=e){let o=n._tree.children[i];if(this.mode&Ft.IncludeAnonymous||o instanceof ls||!o.type.isAnonymous||h_(o))return!1}return!0}move(e,t){if(t&&this.enterChild(e,0,4))return!0;for(;;){if(this.sibling(e))return!0;if(this.atLastNode(e)||!this.parent())return!1}}next(e=!0){return this.move(1,e)}prev(e=!0){return this.move(-1,e)}moveTo(e,t=0){for(;(this.from==this.to||(t<1?this.from>=e:this.from>e)||(t>-1?this.to<=e:this.to=0;){for(let s=e;s;s=s._parent)if(s.index==a){if(a==this.index)return s;t=s,n=i+1;break e}a=this.stack[--i]}for(let a=n;a=0;i--){if(i<0)return Xc(this.node,e,a);let s=n[t.buffer[this.stack[i]]];if(!s.isAnonymous){if(e[a]&&e[a]!=s.name)return!1;a--}}return!0}}function h_(r){return r.children.some(e=>e instanceof ls||!e.type.isAnonymous||h_(e))}function Tk(r){var e;let{buffer:t,nodeSet:n,maxBufferLength:a=Iv,reused:i=[],minRepeatType:s=n.types.length}=r,o=Array.isArray(t)?new m_(t,t.length):t,l=n.types,c=0,u=0;function m(p,S,b,N,L){let{id:Y,start:B,end:Q,size:ee}=o,se=u;for(;ee<0;)if(o.next(),ee==-1){let q=i[Y];b.push(q),N.push(B-p);return}else if(ee==-3){c=Y;return}else if(ee==-4){u=Y;return}else throw new RangeError(`Unrecognized record size: ${ee}`);let ae=l[Y],re,D,P=B-p;if(Q-B<=a&&(D=w(o.pos-S,L))){let q=new Uint16Array(D.size-D.skip),H=o.pos-D.size,te=q.length;for(;o.pos>H;)te=I(D.start,q,te);re=new ls(q,Q-D.start,n),P=D.start-p}else{let q=o.pos-ee;o.next();let H=[],te=[],ie=Y>=s?Y:-1,_e=0,Ce=Q;for(;o.pos>q;)ie>=0&&o.id==ie&&o.size>=0?(o.end<=Ce-a&&(_(H,te,B,_e,o.end,Ce,ie,se),_e=H.length,Ce=o.end),o.next()):m(B,q,H,te,ie);if(ie>=0&&_e>0&&_e-1&&_e>0){let we=f(ae);re=p_(ae,H,te,0,H.length,0,Q-B,we,we)}else re=O(ae,H,te,Q-B,se-Q)}b.push(re),N.push(P)}function f(p){return(S,b,N)=>{let L=0,Y=S.length-1,B,Q;if(Y>=0&&(B=S[Y])instanceof Ct){if(!Y&&B.type==p&&B.length==N)return B;(Q=B.prop(rt.lookAhead))&&(L=b[Y]+B.length+Q)}return O(p,S,b,N,L)}}function _(p,S,b,N,L,Y,B,Q){let ee=[],se=[];for(;p.length>N;)ee.push(p.pop()),se.push(S.pop()+b-L);p.push(O(n.types[B],ee,se,Y-L,Q-Y)),S.push(L-b)}function O(p,S,b,N,L=0,Y){if(c){let B=[rt.contextHash,c];Y=Y?[B].concat(Y):[B]}if(L>25){let B=[rt.lookAhead,L];Y=Y?[B].concat(Y):[B]}return new Ct(p,S,b,N,Y)}function w(p,S){let b=o.fork(),N=0,L=0,Y=0,B=b.end-a,Q={size:0,start:0,skip:0};e:for(let ee=b.pos-p;b.pos>ee;){let se=b.size;if(b.id==S&&se>=0){Q.size=N,Q.start=L,Q.skip=Y,Y+=4,N+=4,b.next();continue}let ae=b.pos-se;if(se<0||ae=s?4:0,D=b.start;for(b.next();b.pos>ae;){if(b.size<0)if(b.size==-3)re+=4;else break e;else b.id>=s&&(re+=4);b.next()}L=D,N+=se,Y+=re}return(S<0||N==p)&&(Q.size=N,Q.start=L,Q.skip=Y),Q.size>4?Q:void 0}function I(p,S,b){let{id:N,start:L,end:Y,size:B}=o;if(o.next(),B>=0&&N4){let ee=o.pos-(B-4);for(;o.pos>ee;)b=I(p,S,b)}S[--b]=Q,S[--b]=Y-p,S[--b]=L-p,S[--b]=N}else B==-3?c=N:B==-4&&(u=N);return b}let k=[],$=[];for(;o.pos>0;)m(r.start||0,r.bufferStart||0,k,$,-1);let z=(e=r.length)!==null&&e!==void 0?e:k.length?$[0]+k[0].length:0;return new Ct(l[r.topID],k.reverse(),$.reverse(),z)}const q1=new WeakMap;function Ic(r,e){if(!r.isAnonymous||e instanceof ls||e.type!=r)return 1;let t=q1.get(e);if(t==null){t=1;for(let n of e.children){if(n.type!=r||!(n instanceof Ct)){t=1;break}t+=Ic(r,n)}q1.set(e,t)}return t}function p_(r,e,t,n,a,i,s,o,l){let c=0;for(let O=n;O=u)break;b+=N}if(z==p+1){if(b>u){let N=O[p];_(N.children,N.positions,0,N.children.length,w[p]+$);continue}m.push(O[p])}else{let N=w[z-1]+O[z-1].length-S;m.push(p_(r,O,w,p,z,S,N,null,l))}f.push(S+$-i)}}return _(e,t,n,a,0),(o||l)(m,f,s)}class xv{constructor(){this.map=new WeakMap}setBuffer(e,t,n){let a=this.map.get(e);a||this.map.set(e,a=new Map),a.set(t,n)}getBuffer(e,t){let n=this.map.get(e);return n&&n.get(t)}set(e,t){e instanceof _a?this.setBuffer(e.context.buffer,e.index,t):e instanceof Pr&&this.map.set(e.tree,t)}get(e){return e instanceof _a?this.getBuffer(e.context.buffer,e.index):e instanceof Pr?this.map.get(e.tree):void 0}cursorSet(e,t){e.buffer?this.setBuffer(e.buffer.buffer,e.index,t):this.map.set(e.tree,t)}cursorGet(e){return e.buffer?this.getBuffer(e.buffer.buffer,e.index):this.map.get(e.tree)}}class qa{constructor(e,t,n,a,i=!1,s=!1){this.from=e,this.to=t,this.tree=n,this.offset=a,this.open=(i?1:0)|(s?2:0)}get openStart(){return(this.open&1)>0}get openEnd(){return(this.open&2)>0}static addTree(e,t=[],n=!1){let a=[new qa(0,e.length,e,0,!1,n)];for(let i of t)i.to>e.length&&a.push(i);return a}static applyChanges(e,t,n=128){if(!t.length)return e;let a=[],i=1,s=e.length?e[0]:null;for(let o=0,l=0,c=0;;o++){let u=o=n)for(;s&&s.from=f.from||m<=f.to||c){let _=Math.max(f.from,l)-c,O=Math.min(f.to,m)-c;f=_>=O?null:new qa(_,O,f.tree,f.offset+c,o>0,!!u)}if(f&&a.push(f),s.to>m)break;s=inew kr(a.from,a.to)):[new kr(0,0)]:[new kr(0,e.length)],this.createParse(e,t||[],n)}parse(e,t,n){let a=this.startParse(e,t,n);for(;;){let i=a.advance();if(i)return i}}}class yk{constructor(e){this.string=e}get length(){return this.string.length}chunk(e){return this.string.slice(e)}get lineChunks(){return!1}read(e,t){return this.string.slice(e,t)}}function kv(r){return(e,t,n,a)=>new Ck(e,r,t,n,a)}class V1{constructor(e,t,n,a,i){if(this.parser=e,this.parse=t,this.overlay=n,this.target=a,this.ranges=i,!i.length||i.some(s=>s.from>=s.to))throw new RangeError("Invalid inner parse ranges given: "+JSON.stringify(i))}}class Rk{constructor(e,t,n,a,i,s,o){this.parser=e,this.predicate=t,this.mounts=n,this.index=a,this.start=i,this.target=s,this.prev=o,this.depth=0,this.ranges=[]}}const Qf=new rt({perNode:!0});class Ck{constructor(e,t,n,a,i){this.nest=t,this.input=n,this.fragments=a,this.ranges=i,this.inner=[],this.innerDone=0,this.baseTree=null,this.stoppedAt=null,this.baseParse=e}advance(){if(this.baseParse){let n=this.baseParse.advance();if(!n)return null;if(this.baseParse=null,this.baseTree=n,this.startInner(),this.stoppedAt!=null)for(let a of this.inner)a.parse.stopAt(this.stoppedAt)}if(this.innerDone==this.inner.length){let n=this.baseTree;return this.stoppedAt!=null&&(n=new Ct(n.type,n.children,n.positions,n.length,n.propValues.concat([[Qf,this.stoppedAt]]))),n}let e=this.inner[this.innerDone],t=e.parse.advance();if(t){this.innerDone++;let n=Object.assign(Object.create(null),e.target.props);n[rt.mounted.id]=new Ok(t,e.overlay,e.parser),e.target.props=n}return null}get parsedPos(){if(this.baseParse)return 0;let e=this.input.length;for(let t=this.innerDone;tu.frag.from<=a.from&&u.frag.to>=a.to&&u.mount.overlay);if(c)for(let u of c.mount.overlay){let m=u.from+c.pos,f=u.to+c.pos;m>=a.from&&f<=a.to&&!t.ranges.some(_=>_.fromm)&&t.ranges.push({from:m,to:f})}}o=!1}else if(n&&(s=Ak(n.ranges,a.from,a.to)))o=s!=2;else if(!a.type.isAnonymous&&a.fromnew kr(m.from-a.from,m.to-a.from)):null,a.tree,u)),i.overlay?u.length&&(n={ranges:u,depth:0,prev:n}):o=!1}}else t&&(l=t.predicate(a))&&(l===!0&&(l=new kr(a.from,a.to)),l.fromnew kr(u.from-t.start,u.to-t.start)),t.target,c)),t=t.prev}n&&!--n.depth&&(n=n.prev)}}}}function Ak(r,e,t){for(let n of r){if(n.from>=t)break;if(n.to>e)return n.from<=e&&n.to>=t?2:1}return 0}function H1(r,e,t,n,a,i){if(e=e.to);n++);let s=a.children[n],o=s.buffer;function l(c,u,m,f,_){let O=c;for(;o[O+2]+i<=e.from;)O=o[O+3];let w=[],I=[];H1(s,c,O,w,I,f);let k=o[O+1],$=o[O+2],z=k+i==e.from&&$+i==e.to&&o[O]==e.type.id;return w.push(z?e.toTree():l(O+4,o[O+3],s.set.types[o[O]],k,$-k)),I.push(k-f),H1(s,o[O+3],u,w,I,f),new Ct(m,w,I,_)}a.children[n]=l(0,o.length,En.none,0,s.length);for(let c=0;c<=t;c++)r.childAfter(e.from)}class z1{constructor(e,t){this.offset=t,this.done=!1,this.cursor=e.cursor(Ft.IncludeAnonymous|Ft.IgnoreMounts)}moveTo(e){let{cursor:t}=this,n=e-this.offset;for(;!this.done&&t.from=e&&t.enter(n,1,Ft.IgnoreOverlays|Ft.ExcludeBuffers)||t.next(!1)||(this.done=!0)}hasNode(e){if(this.moveTo(e.from),!this.done&&this.cursor.from+this.offset==e.from&&this.cursor.tree)for(let t=this.cursor.tree;;){if(t==e.tree)return!0;if(t.children.length&&t.positions[0]==0&&t.children[0]instanceof Ct)t=t.children[0];else break}return!1}}let Ik=class{constructor(e){var t;if(this.fragments=e,this.curTo=0,this.fragI=0,e.length){let n=this.curFrag=e[0];this.curTo=(t=n.tree.prop(Qf))!==null&&t!==void 0?t:n.to,this.inner=new z1(n.tree,-n.offset)}else this.curFrag=this.inner=null}hasNode(e){for(;this.curFrag&&e.from>=this.curTo;)this.nextFrag();return this.curFrag&&this.curFrag.from<=e.from&&this.curTo>=e.to&&this.inner.hasNode(e)}nextFrag(){var e;if(this.fragI++,this.fragI==this.fragments.length)this.curFrag=this.inner=null;else{let t=this.curFrag=this.fragments[this.fragI];this.curTo=(e=t.tree.prop(Qf))!==null&&e!==void 0?e:t.to,this.inner=new z1(t.tree,-t.offset)}}findMounts(e,t){var n;let a=[];if(this.inner){this.inner.cursor.moveTo(e,1);for(let i=this.inner.cursor.node;i;i=i.parent){let s=(n=i.tree)===null||n===void 0?void 0:n.prop(rt.mounted);if(s&&s.parser==t)for(let o=this.fragI;o=i.to)break;l.tree==this.curFrag.tree&&a.push({frag:l,pos:i.from-l.offset,mount:s})}}}return a}};function W1(r,e){let t=null,n=e;for(let a=1,i=0;a=o)break;l.to<=s||(t||(n=t=e.slice()),l.fromo&&t.splice(i+1,0,new kr(o,l.to))):l.to>o?t[i--]=new kr(o,l.to):t.splice(i--,1))}}return n}function Nk(r,e,t,n){let a=0,i=0,s=!1,o=!1,l=-1e9,c=[];for(;;){let u=a==r.length?1e9:s?r[a].to:r[a].from,m=i==e.length?1e9:o?e[i].to:e[i].from;if(s!=o){let f=Math.max(l,t),_=Math.min(u,m,n);f<_&&c.push(new kr(f,_))}if(l=Math.min(u,m),l==1e9)break;u==l&&(s?(s=!1,a++):s=!0),m==l&&(o?(o=!1,i++):o=!0)}return c}function X1(r,e){let t=[];for(let{pos:n,mount:a,frag:i}of r){let s=n+(a.overlay?a.overlay[0].from:0),o=s+a.tree.length,l=Math.max(i.from,s),c=Math.min(i.to,o);if(a.overlay){let u=a.overlay.map(f=>new kr(f.from+n,f.to+n)),m=Nk(e,u,l,c);for(let f=0,_=l;;f++){let O=f==m.length,w=O?c:m[f].from;if(w>_&&t.push(new qa(_,w,a.tree,-s,i.from>=_||i.openStart,i.to<=w||i.openEnd)),O)break;_=m[f].to}}else t.push(new qa(l,c,a.tree,-s,i.from>=s||i.openStart,i.to<=o||i.openEnd))}return t}let Dk=class qf{constructor(e,t,n,a,i,s,o,l,c,u=0,m){this.p=e,this.stack=t,this.state=n,this.reducePos=a,this.pos=i,this.score=s,this.buffer=o,this.bufferBase=l,this.curContext=c,this.lookAhead=u,this.parent=m}toString(){return`[${this.stack.filter((e,t)=>t%3==0).concat(this.state)}]@${this.pos}${this.score?"!"+this.score:""}`}static start(e,t,n=0){let a=e.parser.context;return new qf(e,[],t,n,n,0,[],0,a?new K1(a,a.start):null,0,null)}get context(){return this.curContext?this.curContext.context:null}pushState(e,t){this.stack.push(this.state,t,this.bufferBase+this.buffer.length),this.state=e}reduce(e){var t;let n=e>>19,a=e&65535,{parser:i}=this.p,s=i.dynamicPrecedence(a);if(s&&(this.score+=s),n==0){this.pushState(i.getGoto(this.state,a,!0),this.reducePos),a=2e3&&!(!((t=this.p.parser.nodeSet.types[a])===null||t===void 0)&&t.isAnonymous)&&(l==this.p.lastBigReductionStart?(this.p.bigReductionCount++,this.p.lastBigReductionSize=c):this.p.lastBigReductionSizeo;)this.stack.pop();this.reduceContext(a,l)}storeNode(e,t,n,a=4,i=!1){if(e==0&&(!this.stack.length||this.stack[this.stack.length-1]0&&s.buffer[o-4]==0&&s.buffer[o-1]>-1){if(t==n)return;if(s.buffer[o-2]>=t){s.buffer[o-2]=n;return}}}if(!i||this.pos==n)this.buffer.push(e,t,n,a);else{let s=this.buffer.length;if(s>0&&this.buffer[s-4]!=0)for(;s>0&&this.buffer[s-2]>n;)this.buffer[s]=this.buffer[s-4],this.buffer[s+1]=this.buffer[s-3],this.buffer[s+2]=this.buffer[s-2],this.buffer[s+3]=this.buffer[s-1],s-=4,a>4&&(a-=4);this.buffer[s]=e,this.buffer[s+1]=t,this.buffer[s+2]=n,this.buffer[s+3]=a}}shift(e,t,n){let a=this.pos;if(e&131072)this.pushState(e&65535,this.pos);else if(e&262144)this.pos=n,this.shiftContext(t,a),t<=this.p.parser.maxNode&&this.buffer.push(t,a,n,4);else{let i=e,{parser:s}=this.p;(n>this.pos||t<=s.maxNode)&&(this.pos=n,s.stateFlag(i,1)||(this.reducePos=n)),this.pushState(i,a),this.shiftContext(t,a),t<=s.maxNode&&this.buffer.push(t,a,n,4)}}apply(e,t,n){e&65536?this.reduce(e):this.shift(e,t,n)}useNode(e,t){let n=this.p.reused.length-1;(n<0||this.p.reused[n]!=e)&&(this.p.reused.push(e),n++);let a=this.pos;this.reducePos=this.pos=a+e.length,this.pushState(t,a),this.buffer.push(n,a,this.reducePos,-1),this.curContext&&this.updateContext(this.curContext.tracker.reuse(this.curContext.context,e,this,this.p.stream.reset(this.pos-e.length)))}split(){let e=this,t=e.buffer.length;for(;t>0&&e.buffer[t-2]>e.reducePos;)t-=4;let n=e.buffer.slice(t),a=e.bufferBase+t;for(;e&&a==e.bufferBase;)e=e.parent;return new qf(this.p,this.stack.slice(),this.state,this.reducePos,this.pos,this.score,n,a,this.curContext,this.lookAhead,e)}recoverByDelete(e,t){let n=e<=this.p.parser.maxNode;n&&this.storeNode(e,this.pos,t,4),this.storeNode(0,this.pos,t,n?8:4),this.pos=this.reducePos=t,this.score-=190}canShift(e){for(let t=new xk(this);;){let n=this.p.parser.stateSlot(t.state,4)||this.p.parser.hasAction(t.state,e);if(n==0)return!1;if(!(n&65536))return!0;t.reduce(n)}}recoverByInsert(e){if(this.stack.length>=300)return[];let t=this.p.parser.nextStates(this.state);if(t.length>8||this.stack.length>=120){let a=[];for(let i=0,s;il&1&&o==s)||a.push(t[i],s)}t=a}let n=[];for(let a=0;a>19,a=t&65535,i=this.stack.length-n*3;if(i<0||e.getGoto(this.stack[i],a,!1)<0){let s=this.findForcedReduction();if(s==null)return!1;t=s}this.storeNode(0,this.pos,this.pos,4,!0),this.score-=100}return this.reducePos=this.pos,this.reduce(t),!0}findForcedReduction(){let{parser:e}=this.p,t=[],n=(a,i)=>{if(!t.includes(a))return t.push(a),e.allActions(a,s=>{if(!(s&393216))if(s&65536){let o=(s>>19)-i;if(o>1){let l=s&65535,c=this.stack.length-o*3;if(c>=0&&e.getGoto(this.stack[c],l,!1)>=0)return o<<19|65536|l}}else{let o=n(s,i+1);if(o!=null)return o}})};return n(this.state,0)}forceAll(){for(;!this.p.parser.stateFlag(this.state,2);)if(!this.forceReduce()){this.storeNode(0,this.pos,this.pos,4,!0);break}return this}get deadEnd(){if(this.stack.length!=3)return!1;let{parser:e}=this.p;return e.data[e.stateSlot(this.state,1)]==65535&&!e.stateSlot(this.state,4)}restart(){this.state=this.stack[0],this.stack.length=0}sameState(e){if(this.state!=e.state||this.stack.length!=e.stack.length)return!1;for(let t=0;tthis.lookAhead&&(this.emitLookAhead(),this.lookAhead=e)}close(){this.curContext&&this.curContext.tracker.strict&&this.emitContext(),this.lookAhead>0&&this.emitLookAhead()}};class K1{constructor(e,t){this.tracker=e,this.context=t,this.hash=e.strict?e.hash(t):0}}class xk{constructor(e){this.start=e,this.state=e.state,this.stack=e.stack,this.base=this.stack.length}reduce(e){let t=e&65535,n=e>>19;n==0?(this.stack==this.start.stack&&(this.stack=this.stack.slice()),this.stack.push(this.state,0,0),this.base+=3):this.base-=(n-1)*3;let a=this.start.p.parser.getGoto(this.stack[this.base-3],t,!0);this.state=a}}class Kc{constructor(e,t,n){this.stack=e,this.pos=t,this.index=n,this.buffer=e.buffer,this.index==0&&this.maybeNext()}static create(e,t=e.bufferBase+e.buffer.length){return new Kc(e,t,t-e.bufferBase)}maybeNext(){let e=this.stack.parent;e!=null&&(this.index=this.stack.bufferBase-e.bufferBase,this.stack=e,this.buffer=e.buffer)}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}next(){this.index-=4,this.pos-=4,this.index==0&&this.maybeNext()}fork(){return new Kc(this.stack,this.pos,this.index)}}function Xo(r,e=Uint16Array){if(typeof r!="string")return r;let t=null;for(let n=0,a=0;n=92&&s--,s>=34&&s--;let l=s-32;if(l>=46&&(l-=46,o=!0),i+=l,o)break;i*=46}t?t[a++]=i:t=new e(i)}return t}class Nc{constructor(){this.start=-1,this.value=-1,this.end=-1,this.extended=-1,this.lookAhead=0,this.mask=0,this.context=0}}const Z1=new Nc;class kk{constructor(e,t){this.input=e,this.ranges=t,this.chunk="",this.chunkOff=0,this.chunk2="",this.chunk2Pos=0,this.next=-1,this.token=Z1,this.rangeIndex=0,this.pos=this.chunkPos=t[0].from,this.range=t[0],this.end=t[t.length-1].to,this.readNext()}resolveOffset(e,t){let n=this.range,a=this.rangeIndex,i=this.pos+e;for(;in.to:i>=n.to;){if(a==this.ranges.length-1)return null;let s=this.ranges[++a];i+=s.from-n.to,n=s}return i}clipPos(e){if(e>=this.range.from&&ee)return Math.max(e,t.from);return this.end}peek(e){let t=this.chunkOff+e,n,a;if(t>=0&&t=this.chunk2Pos&&no.to&&(this.chunk2=this.chunk2.slice(0,o.to-n)),a=this.chunk2.charCodeAt(0)}}return n>=this.token.lookAhead&&(this.token.lookAhead=n+1),a}acceptToken(e,t=0){let n=t?this.resolveOffset(t,-1):this.pos;if(n==null||n=this.chunk2Pos&&this.posthis.range.to?e.slice(0,this.range.to-this.pos):e,this.chunkPos=this.pos,this.chunkOff=0}}readNext(){return this.chunkOff>=this.chunk.length&&(this.getChunk(),this.chunkOff==this.chunk.length)?this.next=-1:this.next=this.chunk.charCodeAt(this.chunkOff)}advance(e=1){for(this.chunkOff+=e;this.pos+e>=this.range.to;){if(this.rangeIndex==this.ranges.length-1)return this.setDone();e-=this.range.to-this.pos,this.range=this.ranges[++this.rangeIndex],this.pos=this.range.from}return this.pos+=e,this.pos>=this.token.lookAhead&&(this.token.lookAhead=this.pos+1),this.readNext()}setDone(){return this.pos=this.chunkPos=this.end,this.range=this.ranges[this.rangeIndex=this.ranges.length-1],this.chunk="",this.next=-1}reset(e,t){if(t?(this.token=t,t.start=e,t.lookAhead=e+1,t.value=t.extended=-1):this.token=Z1,this.pos!=e){if(this.pos=e,e==this.end)return this.setDone(),this;for(;e=this.range.to;)this.range=this.ranges[++this.rangeIndex];e>=this.chunkPos&&e=this.chunkPos&&t<=this.chunkPos+this.chunk.length)return this.chunk.slice(e-this.chunkPos,t-this.chunkPos);if(e>=this.chunk2Pos&&t<=this.chunk2Pos+this.chunk2.length)return this.chunk2.slice(e-this.chunk2Pos,t-this.chunk2Pos);if(e>=this.range.from&&t<=this.range.to)return this.input.read(e,t);let n="";for(let a of this.ranges){if(a.from>=t)break;a.to>e&&(n+=this.input.read(Math.max(a.from,e),Math.min(a.to,t)))}return n}}class Ms{constructor(e,t){this.data=e,this.id=t}token(e,t){let{parser:n}=t.p;Mv(this.data,e,t,this.id,n.data,n.tokenPrecTable)}}Ms.prototype.contextual=Ms.prototype.fallback=Ms.prototype.extend=!1;class Zc{constructor(e,t,n){this.precTable=t,this.elseToken=n,this.data=typeof e=="string"?Xo(e):e}token(e,t){let n=e.pos,a=0;for(;;){let i=e.next<0,s=e.resolveOffset(1,1);if(Mv(this.data,e,t,0,this.data,this.precTable),e.token.value>-1)break;if(this.elseToken==null)return;if(i||a++,s==null)break;e.reset(s,e.token)}a&&(e.reset(n,e.token),e.acceptToken(this.elseToken,a))}}Zc.prototype.contextual=Ms.prototype.fallback=Ms.prototype.extend=!1;class Ra{constructor(e,t={}){this.token=e,this.contextual=!!t.contextual,this.fallback=!!t.fallback,this.extend=!!t.extend}}function Mv(r,e,t,n,a,i){let s=0,o=1<0){let O=r[_];if(l.allows(O)&&(e.token.value==-1||e.token.value==O||Mk(O,e.token.value,a,i))){e.acceptToken(O);break}}let u=e.next,m=0,f=r[s+2];if(e.next<0&&f>m&&r[c+f*3-3]==65535&&r[c+f*3-3]==65535){s=r[c+f*3-1];continue e}for(;m>1,O=c+_+(_<<1),w=r[O],I=r[O+1]||65536;if(u=I)m=_+1;else{s=r[O+2],e.advance();continue e}}break}}function j1(r,e,t){for(let n=e,a;(a=r[n])!=65535;n++)if(a==t)return n-e;return-1}function Mk(r,e,t,n){let a=j1(t,n,e);return a<0||j1(t,n,r)e)&&!n.type.isError)return t<0?Math.max(0,Math.min(n.to-1,e-25)):Math.min(r.length,Math.max(n.from+1,e+25));if(t<0?n.prevSibling():n.nextSibling())break;if(!n.parent())return t<0?0:r.length}}let Lk=class{constructor(e,t){this.fragments=e,this.nodeSet=t,this.i=0,this.fragment=null,this.safeFrom=-1,this.safeTo=-1,this.trees=[],this.start=[],this.index=[],this.nextFragment()}nextFragment(){let e=this.fragment=this.i==this.fragments.length?null:this.fragments[this.i++];if(e){for(this.safeFrom=e.openStart?J1(e.tree,e.from+e.offset,1)-e.offset:e.from,this.safeTo=e.openEnd?J1(e.tree,e.to+e.offset,-1)-e.offset:e.to;this.trees.length;)this.trees.pop(),this.start.pop(),this.index.pop();this.trees.push(e.tree),this.start.push(-e.offset),this.index.push(0),this.nextStart=this.safeFrom}else this.nextStart=1e9}nodeAt(e){if(ee)return this.nextStart=s,null;if(i instanceof Ct){if(s==e){if(s=Math.max(this.safeFrom,e)&&(this.trees.push(i),this.start.push(s),this.index.push(0))}else this.index[t]++,this.nextStart=s+i.length}}};class Pk{constructor(e,t){this.stream=t,this.tokens=[],this.mainToken=null,this.actions=[],this.tokens=e.tokenizers.map(n=>new Nc)}getActions(e){let t=0,n=null,{parser:a}=e.p,{tokenizers:i}=a,s=a.stateSlot(e.state,3),o=e.curContext?e.curContext.hash:0,l=0;for(let c=0;cm.end+25&&(l=Math.max(m.lookAhead,l)),m.value!=0)){let f=t;if(m.extended>-1&&(t=this.addActions(e,m.extended,m.end,t)),t=this.addActions(e,m.value,m.end,t),!u.extend&&(n=m,t>f))break}}for(;this.actions.length>t;)this.actions.pop();return l&&e.setLookAhead(l),!n&&e.pos==this.stream.end&&(n=new Nc,n.value=e.p.parser.eofTerm,n.start=n.end=e.pos,t=this.addActions(e,n.value,n.end,t)),this.mainToken=n,this.actions}getMainToken(e){if(this.mainToken)return this.mainToken;let t=new Nc,{pos:n,p:a}=e;return t.start=n,t.end=Math.min(n+1,a.stream.end),t.value=n==a.stream.end?a.parser.eofTerm:0,t}updateCachedToken(e,t,n){let a=this.stream.clipPos(n.pos);if(t.token(this.stream.reset(a,e),n),e.value>-1){let{parser:i}=n.p;for(let s=0;s=0&&n.p.parser.dialect.allows(o>>1)){o&1?e.extended=o>>1:e.value=o>>1;break}}}else e.value=0,e.end=this.stream.clipPos(a+1)}putAction(e,t,n,a){for(let i=0;ie.bufferLength*4?new Lk(n,e.nodeSet):null}get parsedPos(){return this.minStackPos}advance(){let e=this.stacks,t=this.minStackPos,n=this.stacks=[],a,i;if(this.bigReductionCount>300&&e.length==1){let[s]=e;for(;s.forceReduce()&&s.stack.length&&s.stack[s.stack.length-2]>=this.lastBigReductionStart;);this.bigReductionCount=this.lastBigReductionSize=0}for(let s=0;st)n.push(o);else{if(this.advanceStack(o,n,e))continue;{a||(a=[],i=[]),a.push(o);let l=this.tokens.getMainToken(o);i.push(l.value,l.end)}}break}}if(!n.length){let s=a&&Fk(a);if(s)return hr&&console.log("Finish with "+this.stackID(s)),this.stackToTree(s);if(this.parser.strict)throw hr&&a&&console.log("Stuck with token "+(this.tokens.mainToken?this.parser.getName(this.tokens.mainToken.value):"none")),new SyntaxError("No parse at "+t);this.recovering||(this.recovering=5)}if(this.recovering&&a){let s=this.stoppedAt!=null&&a[0].pos>this.stoppedAt?a[0]:this.runRecovery(a,i,n);if(s)return hr&&console.log("Force-finish "+this.stackID(s)),this.stackToTree(s.forceAll())}if(this.recovering){let s=this.recovering==1?1:this.recovering*3;if(n.length>s)for(n.sort((o,l)=>l.score-o.score);n.length>s;)n.pop();n.some(o=>o.reducePos>t)&&this.recovering--}else if(n.length>1){e:for(let s=0;s500&&c.buffer.length>500)if((o.score-c.score||o.buffer.length-c.buffer.length)>0)n.splice(l--,1);else{n.splice(s--,1);continue e}}}n.length>12&&n.splice(12,n.length-12)}this.minStackPos=n[0].pos;for(let s=1;s ":"";if(this.stoppedAt!=null&&a>this.stoppedAt)return e.forceReduce()?e:null;if(this.fragments){let c=e.curContext&&e.curContext.tracker.strict,u=c?e.curContext.hash:0;for(let m=this.fragments.nodeAt(a);m;){let f=this.parser.nodeSet.types[m.type.id]==m.type?i.getGoto(e.state,m.type.id):-1;if(f>-1&&m.length&&(!c||(m.prop(rt.contextHash)||0)==u))return e.useNode(m,f),hr&&console.log(s+this.stackID(e)+` (via reuse of ${i.getName(m.type.id)})`),!0;if(!(m instanceof Ct)||m.children.length==0||m.positions[0]>0)break;let _=m.children[0];if(_ instanceof Ct&&m.positions[0]==0)m=_;else break}}let o=i.stateSlot(e.state,4);if(o>0)return e.reduce(o),hr&&console.log(s+this.stackID(e)+` (via always-reduce ${i.getName(o&65535)})`),!0;if(e.stack.length>=15e3)for(;e.stack.length>9e3&&e.forceReduce(););let l=this.tokens.getActions(e);for(let c=0;ca?t.push(O):n.push(O)}return!1}advanceFully(e,t){let n=e.pos;for(;;){if(!this.advanceStack(e,null,null))return!1;if(e.pos>n)return e0(e,t),!0}}runRecovery(e,t,n){let a=null,i=!1;for(let s=0;s ":"";if(o.deadEnd&&(i||(i=!0,o.restart(),hr&&console.log(u+this.stackID(o)+" (restarted)"),this.advanceFully(o,n))))continue;let m=o.split(),f=u;for(let _=0;m.forceReduce()&&_<10&&(hr&&console.log(f+this.stackID(m)+" (via force-reduce)"),!this.advanceFully(m,n));_++)hr&&(f=this.stackID(m)+" -> ");for(let _ of o.recoverByInsert(l))hr&&console.log(u+this.stackID(_)+" (via recover-insert)"),this.advanceFully(_,n);this.stream.end>o.pos?(c==o.pos&&(c++,l=0),o.recoverByDelete(l,c),hr&&console.log(u+this.stackID(o)+` (via recover-delete ${this.parser.getName(l)})`),e0(o,n)):(!a||a.scorer;class Lv{constructor(e){this.start=e.start,this.shift=e.shift||Sd,this.reduce=e.reduce||Sd,this.reuse=e.reuse||Sd,this.hash=e.hash||(()=>0),this.strict=e.strict!==!1}}class Xs extends f_{constructor(e){if(super(),this.wrappers=[],e.version!=14)throw new RangeError(`Parser version (${e.version}) doesn't match runtime version (14)`);let t=e.nodeNames.split(" ");this.minRepeatTerm=t.length;for(let o=0;oe.topRules[o][1]),a=[];for(let o=0;o=0)i(u,l,o[c++]);else{let m=o[c+-u];for(let f=-u;f>0;f--)i(o[c++],l,m);c++}}}this.nodeSet=new $l(t.map((o,l)=>En.define({name:l>=this.minRepeatTerm?void 0:o,id:l,props:a[l],top:n.indexOf(l)>-1,error:l==0,skipped:e.skippedNodes&&e.skippedNodes.indexOf(l)>-1}))),e.propSources&&(this.nodeSet=this.nodeSet.extend(...e.propSources)),this.strict=!1,this.bufferLength=Iv;let s=Xo(e.tokenData);this.context=e.context,this.specializerSpecs=e.specialized||[],this.specialized=new Uint16Array(this.specializerSpecs.length);for(let o=0;otypeof o=="number"?new Ms(s,o):o),this.topRules=e.topRules,this.dialects=e.dialects||{},this.dynamicPrecedences=e.dynamicPrecedences||null,this.tokenPrecTable=e.tokenPrec,this.termNames=e.termNames||null,this.maxNode=this.nodeSet.types.length-1,this.dialect=this.parseDialect(),this.top=this.topRules[Object.keys(this.topRules)[0]]}createParse(e,t,n){let a=new Bk(this,e,t,n);for(let i of this.wrappers)a=i(a,e,t,n);return a}getGoto(e,t,n=!1){let a=this.goto;if(t>=a[0])return-1;for(let i=a[t+1];;){let s=a[i++],o=s&1,l=a[i++];if(o&&n)return l;for(let c=i+(s>>1);i0}validAction(e,t){return!!this.allActions(e,n=>n==t?!0:null)}allActions(e,t){let n=this.stateSlot(e,4),a=n?t(n):void 0;for(let i=this.stateSlot(e,1);a==null;i+=3){if(this.data[i]==65535)if(this.data[i+1]==1)i=Ua(this.data,i+2);else break;a=t(Ua(this.data,i+1))}return a}nextStates(e){let t=[];for(let n=this.stateSlot(e,1);;n+=3){if(this.data[n]==65535)if(this.data[n+1]==1)n=Ua(this.data,n+2);else break;if(!(this.data[n+2]&1)){let a=this.data[n+1];t.some((i,s)=>s&1&&i==a)||t.push(this.data[n],a)}}return t}configure(e){let t=Object.assign(Object.create(Xs.prototype),this);if(e.props&&(t.nodeSet=this.nodeSet.extend(...e.props)),e.top){let n=this.topRules[e.top];if(!n)throw new RangeError(`Invalid top rule name ${e.top}`);t.top=n}return e.tokenizers&&(t.tokenizers=this.tokenizers.map(n=>{let a=e.tokenizers.find(i=>i.from==n);return a?a.to:n})),e.specializers&&(t.specializers=this.specializers.slice(),t.specializerSpecs=this.specializerSpecs.map((n,a)=>{let i=e.specializers.find(o=>o.from==n.external);if(!i)return n;let s=Object.assign(Object.assign({},n),{external:i.to});return t.specializers[a]=t0(s),s})),e.contextTracker&&(t.context=e.contextTracker),e.dialect&&(t.dialect=this.parseDialect(e.dialect)),e.strict!=null&&(t.strict=e.strict),e.wrap&&(t.wrappers=t.wrappers.concat(e.wrap)),e.bufferLength!=null&&(t.bufferLength=e.bufferLength),t}hasWrappers(){return this.wrappers.length>0}getName(e){return this.termNames?this.termNames[e]:String(e<=this.maxNode&&this.nodeSet.types[e].name||e)}get eofTerm(){return this.maxNode+1}get topNode(){return this.nodeSet.types[this.top[1]]}dynamicPrecedence(e){let t=this.dynamicPrecedences;return t==null?0:t[e]||0}parseDialect(e){let t=Object.keys(this.dialects),n=t.map(()=>!1);if(e)for(let i of e.split(" ")){let s=t.indexOf(i);s>=0&&(n[s]=!0)}let a=null;for(let i=0;in)&&t.p.parser.stateFlag(t.state,2)&&(!e||e.scorer.external(t,n)<<1|e}return r.get}let Uk=0;class ta{constructor(e,t,n){this.set=e,this.base=t,this.modified=n,this.id=Uk++}static define(e){if(e!=null&&e.base)throw new Error("Can not derive from a modified tag");let t=new ta([],null,[]);if(t.set.push(t),e)for(let n of e.set)t.set.push(n);return t}static defineModifier(){let e=new jc;return t=>t.modified.indexOf(e)>-1?t:jc.get(t.base||t,t.modified.concat(e).sort((n,a)=>n.id-a.id))}}let $k=0;class jc{constructor(){this.instances=[],this.id=$k++}static get(e,t){if(!t.length)return e;let n=t[0].instances.find(o=>o.base==e&&Gk(t,o.modified));if(n)return n;let a=[],i=new ta(a,e,t);for(let o of t)o.instances.push(i);let s=Qk(t);for(let o of e.set)if(!o.modified.length)for(let l of s)a.push(jc.get(o,l));return i}}function Gk(r,e){return r.length==e.length&&r.every((t,n)=>t==e[n])}function Qk(r){let e=[[]];for(let t=0;tn.length-t.length)}function co(r){let e=Object.create(null);for(let t in r){let n=r[t];Array.isArray(n)||(n=[n]);for(let a of t.split(" "))if(a){let i=[],s=2,o=a;for(let m=0;;){if(o=="..."&&m>0&&m+3==a.length){s=1;break}let f=/^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(o);if(!f)throw new RangeError("Invalid path: "+a);if(i.push(f[0]=="*"?"":f[0][0]=='"'?JSON.parse(f[0]):f[0]),m+=f[0].length,m==a.length)break;let _=a[m++];if(m==a.length&&_=="!"){s=0;break}if(_!="/")throw new RangeError("Invalid path: "+a);o=a.slice(m)}let l=i.length-1,c=i[l];if(!c)throw new RangeError("Invalid path: "+a);let u=new Jc(n,s,l>0?i.slice(0,l):null);e[c]=u.sort(e[c])}}return Pv.add(e)}const Pv=new rt;class Jc{constructor(e,t,n,a){this.tags=e,this.mode=t,this.context=n,this.next=a}get opaque(){return this.mode==0}get inherit(){return this.mode==1}sort(e){return!e||e.depth{let s=a;for(let o of i)for(let l of o.set){let c=t[l.id];if(c){s=s?s+" "+c:c;break}}return s},scope:n}}function qk(r,e){let t=null;for(let n of r){let a=n.style(e);a&&(t=t?t+" "+a:a)}return t}function Vk(r,e,t,n=0,a=r.length){let i=new Hk(n,Array.isArray(e)?e:[e],t);i.highlightRange(r.cursor(),n,a,"",i.highlighters),i.flush(a)}class Hk{constructor(e,t,n){this.at=e,this.highlighters=t,this.span=n,this.class=""}startSpan(e,t){t!=this.class&&(this.flush(e),e>this.at&&(this.at=e),this.class=t)}flush(e){e>this.at&&this.class&&this.span(this.at,e,this.class)}highlightRange(e,t,n,a,i){let{type:s,from:o,to:l}=e;if(o>=n||l<=t)return;s.isTop&&(i=this.highlighters.filter(_=>!_.scope||_.scope(s)));let c=a,u=zk(e)||Jc.empty,m=qk(i,u.tags);if(m&&(c&&(c+=" "),c+=m,u.mode==1&&(a+=(a?" ":"")+m)),this.startSpan(Math.max(t,o),c),u.opaque)return;let f=e.tree&&e.tree.prop(rt.mounted);if(f&&f.overlay){let _=e.node.enter(f.overlay[0].from+o,1),O=this.highlighters.filter(I=>!I.scope||I.scope(f.tree.type)),w=e.firstChild();for(let I=0,k=o;;I++){let $=I=z||!e.nextSibling())););if(!$||z>n)break;k=$.to+o,k>t&&(this.highlightRange(_.cursor(),Math.max(t,$.from+o),Math.min(n,k),"",O),this.startSpan(Math.min(n,k),c))}w&&e.parent()}else if(e.firstChild()){f&&(a="");do if(!(e.to<=t)){if(e.from>=n)break;this.highlightRange(e,t,n,a,i),this.startSpan(Math.min(n,e.to),c)}while(e.nextSibling());e.parent()}}}function zk(r){let e=r.type.prop(Pv);for(;e&&e.context&&!r.matchContext(e.context);)e=e.next;return e||null}const Me=ta.define,ic=Me(),ui=Me(),n0=Me(ui),r0=Me(ui),di=Me(),sc=Me(di),Od=Me(di),ma=Me(),Yi=Me(ma),ca=Me(),ua=Me(),Vf=Me(),Lo=Me(Vf),oc=Me(),V={comment:ic,lineComment:Me(ic),blockComment:Me(ic),docComment:Me(ic),name:ui,variableName:Me(ui),typeName:n0,tagName:Me(n0),propertyName:r0,attributeName:Me(r0),className:Me(ui),labelName:Me(ui),namespace:Me(ui),macroName:Me(ui),literal:di,string:sc,docString:Me(sc),character:Me(sc),attributeValue:Me(sc),number:Od,integer:Me(Od),float:Me(Od),bool:Me(di),regexp:Me(di),escape:Me(di),color:Me(di),url:Me(di),keyword:ca,self:Me(ca),null:Me(ca),atom:Me(ca),unit:Me(ca),modifier:Me(ca),operatorKeyword:Me(ca),controlKeyword:Me(ca),definitionKeyword:Me(ca),moduleKeyword:Me(ca),operator:ua,derefOperator:Me(ua),arithmeticOperator:Me(ua),logicOperator:Me(ua),bitwiseOperator:Me(ua),compareOperator:Me(ua),updateOperator:Me(ua),definitionOperator:Me(ua),typeOperator:Me(ua),controlOperator:Me(ua),punctuation:Vf,separator:Me(Vf),bracket:Lo,angleBracket:Me(Lo),squareBracket:Me(Lo),paren:Me(Lo),brace:Me(Lo),content:ma,heading:Yi,heading1:Me(Yi),heading2:Me(Yi),heading3:Me(Yi),heading4:Me(Yi),heading5:Me(Yi),heading6:Me(Yi),contentSeparator:Me(ma),list:Me(ma),quote:Me(ma),emphasis:Me(ma),strong:Me(ma),link:Me(ma),monospace:Me(ma),strikethrough:Me(ma),inserted:Me(),deleted:Me(),changed:Me(),invalid:Me(),meta:oc,documentMeta:Me(oc),annotation:Me(oc),processingInstruction:Me(oc),definition:ta.defineModifier(),constant:ta.defineModifier(),function:ta.defineModifier(),standard:ta.defineModifier(),local:ta.defineModifier(),special:ta.defineModifier()};Bv([{tag:V.link,class:"tok-link"},{tag:V.heading,class:"tok-heading"},{tag:V.emphasis,class:"tok-emphasis"},{tag:V.strong,class:"tok-strong"},{tag:V.keyword,class:"tok-keyword"},{tag:V.atom,class:"tok-atom"},{tag:V.bool,class:"tok-bool"},{tag:V.url,class:"tok-url"},{tag:V.labelName,class:"tok-labelName"},{tag:V.inserted,class:"tok-inserted"},{tag:V.deleted,class:"tok-deleted"},{tag:V.literal,class:"tok-literal"},{tag:V.string,class:"tok-string"},{tag:V.number,class:"tok-number"},{tag:[V.regexp,V.escape,V.special(V.string)],class:"tok-string2"},{tag:V.variableName,class:"tok-variableName"},{tag:V.local(V.variableName),class:"tok-variableName tok-local"},{tag:V.definition(V.variableName),class:"tok-variableName tok-definition"},{tag:V.special(V.variableName),class:"tok-variableName2"},{tag:V.definition(V.propertyName),class:"tok-propertyName tok-definition"},{tag:V.typeName,class:"tok-typeName"},{tag:V.namespace,class:"tok-namespace"},{tag:V.className,class:"tok-className"},{tag:V.macroName,class:"tok-macroName"},{tag:V.propertyName,class:"tok-propertyName"},{tag:V.operator,class:"tok-operator"},{tag:V.comment,class:"tok-comment"},{tag:V.meta,class:"tok-meta"},{tag:V.invalid,class:"tok-invalid"},{tag:V.punctuation,class:"tok-punctuation"}]);const Wk=303,a0=1,Xk=2,Kk=304,Zk=306,jk=307,Jk=3,eM=4,tM=[9,10,11,12,13,32,133,160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8232,8233,8239,8287,12288],Yv=125,nM=59,i0=47,rM=42,aM=43,iM=45,sM=new Lv({start:!1,shift(r,e){return e==Jk||e==eM||e==Zk?r:e==jk},strict:!1}),oM=new Ra((r,e)=>{let{next:t}=r;(t==Yv||t==-1||e.context)&&r.acceptToken(Kk)},{contextual:!0,fallback:!0}),lM=new Ra((r,e)=>{let{next:t}=r,n;tM.indexOf(t)>-1||t==i0&&((n=r.peek(1))==i0||n==rM)||t!=Yv&&t!=nM&&t!=-1&&!e.context&&r.acceptToken(Wk)},{contextual:!0}),cM=new Ra((r,e)=>{let{next:t}=r;if((t==aM||t==iM)&&(r.advance(),t==r.next)){r.advance();let n=!e.context&&e.canShift(a0);r.acceptToken(n?a0:Xk)}},{contextual:!0}),uM=co({"get set async static":V.modifier,"for while do if else switch try catch finally return throw break continue default case":V.controlKeyword,"in of await yield void typeof delete instanceof":V.operatorKeyword,"let var const function class extends":V.definitionKeyword,"import export from":V.moduleKeyword,"with debugger as new":V.keyword,TemplateString:V.special(V.string),super:V.atom,BooleanLiteral:V.bool,this:V.self,null:V.null,Star:V.modifier,VariableName:V.variableName,"CallExpression/VariableName TaggedTemplateExpression/VariableName":V.function(V.variableName),VariableDefinition:V.definition(V.variableName),Label:V.labelName,PropertyName:V.propertyName,PrivatePropertyName:V.special(V.propertyName),"CallExpression/MemberExpression/PropertyName":V.function(V.propertyName),"FunctionDeclaration/VariableDefinition":V.function(V.definition(V.variableName)),"ClassDeclaration/VariableDefinition":V.definition(V.className),PropertyDefinition:V.definition(V.propertyName),PrivatePropertyDefinition:V.definition(V.special(V.propertyName)),UpdateOp:V.updateOperator,LineComment:V.lineComment,BlockComment:V.blockComment,Number:V.number,String:V.string,Escape:V.escape,ArithOp:V.arithmeticOperator,LogicOp:V.logicOperator,BitOp:V.bitwiseOperator,CompareOp:V.compareOperator,RegExp:V.regexp,Equals:V.definitionOperator,Arrow:V.function(V.punctuation),": Spread":V.punctuation,"( )":V.paren,"[ ]":V.squareBracket,"{ }":V.brace,"InterpolationStart InterpolationEnd":V.special(V.brace),".":V.derefOperator,", ;":V.separator,"@":V.meta,TypeName:V.typeName,TypeDefinition:V.definition(V.typeName),"type enum interface implements namespace module declare":V.definitionKeyword,"abstract global Privacy readonly override":V.modifier,"is keyof unique infer":V.operatorKeyword,JSXAttributeValue:V.attributeValue,JSXText:V.content,"JSXStartTag JSXStartCloseTag JSXSelfCloseEndTag JSXEndTag":V.angleBracket,"JSXIdentifier JSXNameSpacedName":V.tagName,"JSXAttribute/JSXIdentifier JSXAttribute/JSXNameSpacedName":V.attributeName,"JSXBuiltin/JSXIdentifier":V.standard(V.tagName)}),dM={__proto__:null,export:14,as:19,from:27,default:30,async:35,function:36,extends:46,this:50,true:58,false:58,null:70,void:74,typeof:78,super:96,new:130,delete:146,yield:155,await:159,class:164,public:221,private:221,protected:221,readonly:223,instanceof:242,satisfies:245,in:246,const:248,import:280,keyof:335,unique:339,infer:345,is:381,abstract:401,implements:403,type:405,let:408,var:410,using:413,interface:419,enum:423,namespace:429,module:431,declare:435,global:439,for:458,of:467,while:470,with:474,do:478,if:482,else:484,switch:488,case:494,try:500,catch:504,finally:508,return:512,throw:516,break:520,continue:524,debugger:528},mM={__proto__:null,async:117,get:119,set:121,declare:181,public:183,private:183,protected:183,static:185,abstract:187,override:189,readonly:195,accessor:197,new:385},hM={__proto__:null,"<":137},pM=Xs.deserialize({version:14,states:"$6tO`QUOOO%TQUOOO'WQWOOP(eOSOOO*sQ(CjO'#CfO*zOpO'#CgO+YO!bO'#CgO+hO07`O'#DZO-yQUO'#DaO.ZQUO'#DlO%TQUO'#DvO0_QUO'#EOOOQ(CY'#EW'#EWO0xQSO'#ETOOQO'#Ei'#EiOOQO'#Ic'#IcO1QQSO'#GkO1]QSO'#EhO1bQSO'#EhO3dQ(CjO'#JdO6TQ(CjO'#JeO6qQSO'#FWO6vQ#tO'#FoOOQ(CY'#F`'#F`O7RO&jO'#F`O7aQ,UO'#FvO8wQSO'#FuOOQ(CY'#Je'#JeOOQ(CW'#Jd'#JdO8|QSO'#GoOOQQ'#KP'#KPO9XQSO'#IPO9^Q(C[O'#IQOOQQ'#JQ'#JQOOQQ'#IU'#IUQ`QUOOO%TQUO'#DnO9fQUO'#DzO9mQUO'#D|O9SQSO'#GkO9tQ,UO'#ClO:SQSO'#EgO:_QSO'#ErO:dQ,UO'#F_O;RQSO'#GkOOQO'#KQ'#KQO;WQSO'#KQO;fQSO'#GsO;fQSO'#GtO;fQSO'#GvO9SQSO'#GyO<]QSO'#G|O=tQSO'#CbO>UQSO'#HYO>^QSO'#H`O>^QSO'#HbO`QUO'#HdO>^QSO'#HfO>^QSO'#HiO>cQSO'#HoO>hQ(C]O'#HuO%TQUO'#HwO>sQ(C]O'#HyO?OQ(C]O'#H{O9^Q(C[O'#H}O?ZQ(CjO'#CfO@]QWO'#DfQOQSOOO%TQUO'#D|O@sQSO'#EPO9tQ,UO'#EgOAOQSO'#EgOAZQ`O'#F_OOQQ'#Cd'#CdOOQ(CW'#Dk'#DkOOQ(CW'#Jh'#JhO%TQUO'#JhOOQO'#Jl'#JlOOQO'#I`'#I`OBZQWO'#E`OOQ(CW'#E_'#E_OCVQ(C`O'#E`OCaQWO'#ESOOQO'#Jk'#JkOCuQWO'#JlOESQWO'#ESOCaQWO'#E`PEaO?MpO'#C`POOO)CDo)CDoOOOO'#IV'#IVOElOpO,59ROOQ(CY,59R,59ROOOO'#IW'#IWOEzO!bO,59RO%TQUO'#D]OOOO'#IY'#IYOFYO07`O,59uOOQ(CY,59u,59uOFhQUO'#IZOF{QSO'#JfOH}QbO'#JfO+vQUO'#JfOIUQSO,59{OIlQSO'#EiOIyQSO'#JtOJUQSO'#JsOJUQSO'#JsOJ^QSO,5;VOJcQSO'#JrOOQ(CY,5:W,5:WOJjQUO,5:WOLkQ(CjO,5:bOM[QSO,5:jOMuQ(C[O'#JqOM|QSO'#JpO8|QSO'#JpONbQSO'#JpONjQSO,5;UONoQSO'#JpO!!wQbO'#JeOOQ(CY'#Cf'#CfO%TQUO'#EOO!#gQ`O,5:oOOQO'#Jm'#JmOOQO-EkOOQQ'#JY'#JYOOQQ,5>l,5>lOOQQ-EqQ(CjO,5:hOOQO,5@l,5@lO!?bQ,UO,5=VO!?pQ(C[O'#JZO8wQSO'#JZO!@RQ(C[O,59WO!@^QWO,59WO!@fQ,UO,59WO9tQ,UO,59WO!@qQSO,5;SO!@yQSO'#HXO!A[QSO'#KUO%TQUO,5;wO!7[QWO,5;yO!AdQSO,5=rO!AiQSO,5=rO!AnQSO,5=rO9^Q(C[O,5=rO;fQSO,5=bOOQO'#Cr'#CrO!A|QWO,5=_O!BUQ,UO,5=`O!BaQSO,5=bO!BfQ`O,5=eO!BnQSO'#KQO>cQSO'#HOO9SQSO'#HQO!BsQSO'#HQO9tQ,UO'#HSO!BxQSO'#HSOOQQ,5=h,5=hO!B}QSO'#HTO!CVQSO'#ClO!C[QSO,58|O!CfQSO,58|O!EkQUO,58|OOQQ,58|,58|O!E{Q(C[O,58|O%TQUO,58|O!HWQUO'#H[OOQQ'#H]'#H]OOQQ'#H^'#H^O`QUO,5=tO!HnQSO,5=tO`QUO,5=zO`QUO,5=|O!HsQSO,5>OO`QUO,5>QO!HxQSO,5>TO!H}QUO,5>ZOOQQ,5>a,5>aO%TQUO,5>aO9^Q(C[O,5>cOOQQ,5>e,5>eO!MXQSO,5>eOOQQ,5>g,5>gO!MXQSO,5>gOOQQ,5>i,5>iO!M^QWO'#DXO%TQUO'#JhO!M{QWO'#JhO!NjQWO'#DgO!N{QWO'#DgO##^QUO'#DgO##eQSO'#JgO##mQSO,5:QO##rQSO'#EmO#$QQSO'#JuO#$YQSO,5;WO#$_QWO'#DgO#$lQWO'#EROOQ(CY,5:k,5:kO%TQUO,5:kO#$sQSO,5:kO>cQSO,5;RO!@^QWO,5;RO!@fQ,UO,5;RO9tQ,UO,5;RO#${QSO,5@SO#%QQ!LQO,5:oOOQO-E<^-E<^O#&WQ(C`O,5:zOCaQWO,5:nO#&bQWO,5:nOCaQWO,5:zO!@RQ(C[O,5:nOOQ(CW'#Ec'#EcOOQO,5:z,5:zO%TQUO,5:zO#&oQ(C[O,5:zO#&zQ(C[O,5:zO!@^QWO,5:nOOQO,5;Q,5;QO#'YQ(C[O,5:zPOOO'#IT'#ITP#'nO?MpO,58zPOOO,58z,58zOOOO-EuO+vQUO,5>uOOQO,5>{,5>{O#(YQUO'#IZOOQO-E^QSO1G3jO$.OQUO1G3lO$2SQUO'#HkOOQQ1G3o1G3oO$2aQSO'#HqO>cQSO'#HsOOQQ1G3u1G3uO$2iQUO1G3uO9^Q(C[O1G3{OOQQ1G3}1G3}OOQ(CW'#GW'#GWO9^Q(C[O1G4PO9^Q(C[O1G4RO$6pQSO,5@SO!){QUO,5;XO8|QSO,5;XO>cQSO,5:RO!){QUO,5:RO!@^QWO,5:RO$6uQ$IUO,5:ROOQO,5;X,5;XO$7PQWO'#I[O$7gQSO,5@ROOQ(CY1G/l1G/lO$7oQWO'#IbO$7yQSO,5@aOOQ(CW1G0r1G0rO!N{QWO,5:ROOQO'#I_'#I_O$8RQWO,5:mOOQ(CY,5:m,5:mO#$vQSO1G0VOOQ(CY1G0V1G0VO%TQUO1G0VOOQ(CY1G0m1G0mO>cQSO1G0mO!@^QWO1G0mO!@fQ,UO1G0mOOQ(CW1G5n1G5nO!@RQ(C[O1G0YOOQO1G0f1G0fO%TQUO1G0fO$8YQ(C[O1G0fO$8eQ(C[O1G0fO!@^QWO1G0YOCaQWO1G0YO$8sQ(C[O1G0fOOQO1G0Y1G0YO$9XQ(CjO1G0fPOOO-EuO$9uQSO1G5lO$9}QSO1G5yO$:VQbO1G5zO8|QSO,5>{O$:aQ(CjO1G5wO%TQUO1G5wO$:qQ(C[O1G5wO$;SQSO1G5vO$;SQSO1G5vO8|QSO1G5vO$;[QSO,5?OO8|QSO,5?OOOQO,5?O,5?OO$;pQSO,5?OO$$QQSO,5?OOOQO-EqQ(CjO,5VOOQQ,5>V,5>VO%TQUO'#HlO%(SQSO'#HnOOQQ,5>],5>]O8|QSO,5>]OOQQ,5>_,5>_OOQQ7+)a7+)aOOQQ7+)g7+)gOOQQ7+)k7+)kOOQQ7+)m7+)mO%(XQWO1G5nO%(mQ$IUO1G0sO%(wQSO1G0sOOQO1G/m1G/mO%)SQ$IUO1G/mO>cQSO1G/mO!){QUO'#DgOOQO,5>v,5>vOOQO-E|,5>|OOQO-E<`-E<`O!@^QWO1G/mOOQO-E<]-E<]OOQ(CY1G0X1G0XOOQ(CY7+%q7+%qO#$vQSO7+%qOOQ(CY7+&X7+&XO>cQSO7+&XO!@^QWO7+&XOOQO7+%t7+%tO$9XQ(CjO7+&QOOQO7+&Q7+&QO%TQUO7+&QO%)^Q(C[O7+&QO!@RQ(C[O7+%tO!@^QWO7+%tO%)iQ(C[O7+&QO%)wQ(CjO7++cO%TQUO7++cO%*XQSO7++bO%*XQSO7++bOOQO1G4j1G4jO8|QSO1G4jO%*aQSO1G4jOOQO7+%y7+%yO#$vQSO<wOOQO-ExO%TQUO,5>xOOQO-E<[-E<[O%2aQSO1G5pOOQ(CY<QQ$IUO1G0xO%>XQ$IUO1G0xO%@PQ$IUO1G0xO%@dQ(CjO<WOOQQ,5>Y,5>YO%M}QSO1G3wO8|QSO7+&_O!){QUO7+&_OOQO7+%X7+%XO%NSQ$IUO1G5zO>cQSO7+%XOOQ(CY<cQSO<cQSO7+)cO&5kQSO<zAN>zO%TQUOAN?WOOQO<TQSOANAxOOQQANAzANAzO9^Q(C[OANAzO#MsQSOANAzOOQO'#HV'#HVOOQO7+*d7+*dOOQQG22tG22tOOQQANEOANEOOOQQANEPANEPOOQQANBSANBSO&>]QSOANBSOOQQ<bQSOLD,iO&>jQ$IUO7+'sO&@`Q$IUO7+'uO&BUQ,UOG26{OOQO<ROPYXXYXkYXyYXzYX|YX!eYX!fYX!hYX!lYX#XYX#dcX#gYX#hYX#iYX#jYX#kYX#lYX#mYX#nYX#oYX#qYX#sYX#uYX#vYX#{YX(SYX(cYX(jYX(kYX!VYX!WYX~O#yYX~P#@lOP$[OX:XOk9{Oy#xOz#yO|#zO!e9}O!f#vO!h#wO!l$[O#g9yO#h9zO#i9zO#j9zO#k9|O#l9}O#m9}O#n:WO#o9}O#q:OO#s:QO#u:SO#v:TO(SVO(c$YO(j#{O(k#|O~O#y.hO~P#ByO#X:YO#{:YO#y(XX!W(XX~PN}O^'Za!V'Za'l'Za'j'Za!g'Za!S'Zao'Za!X'Za%a'Za!a'Za~P!7sOP#fiX#fi^#fik#fiz#fi!V#fi!e#fi!f#fi!h#fi!l#fi#g#fi#h#fi#i#fi#j#fi#k#fi#l#fi#m#fi#n#fi#o#fi#q#fi#s#fi#u#fi#v#fi'l#fi(S#fi(c#fi'j#fi!S#fi!g#fio#fi!X#fi%a#fi!a#fi~P#,`O^#zi!V#zi'l#zi'j#zi!S#zi!g#zio#zi!X#zi%a#zi!a#zi~P!7sO$W.mO$Y.mO~O$W.nO$Y.nO~O!a)^O#X.oO!X$^X$T$^X$W$^X$Y$^X$a$^X~O!U.pO~O!X)aO$T.rO$W)`O$Y)`O$a.sO~O!V:UO!W(WX~P#ByO!W.tO~O!a)^O$a(lX~O$a.vO~Oq)pO(T)qO(U.yO~O!S.}O~P!&VO!VcX!acX!gcX!g$sX(ccX~P!/ZO!g/TO~P#,`O!V/UO!a#tO(c'fO!g(pX~O!g/ZO~O!U*RO'u%_O!g(pP~O#d/]O~O!S$sX!V$sX!a$zX~P!/ZO!V/^O!S(qX~P#,`O!a/`O~O!S/bO~Ok/fO!a#tO!h%]O(O%QO(c'fO~O'u/hO~O!a+XO~O^%fO!V/lO'l%fO~O!W/nO~P!3XO!]/oO!^/oO'v!kO(V!lO~O|/qO(V!lO~O#T/rO~O'u&POd'`X!V'`X~O!V*kOd(Pa~Od/wO~Oy/xOz/xO|/yOgva(jva(kva!Vva#Xva~Odva#yva~P$ aOy)uO|)vOg$la(j$la(k$la!V$la#X$la~Od$la#y$la~P$!VOy)uO|)vOg$na(j$na(k$na!V$na#X$na~Od$na#y$na~P$!xO#d/{O~Od$|a!V$|a#X$|a#y$|a~P!0dO!a#tO~O#d0OO~O!V*|O^(ua'l(ua~Oy#xOz#yO|#zO!f#vO!h#wO(SVOP!niX!nik!ni!V!ni!e!ni!l!ni#g!ni#h!ni#i!ni#j!ni#k!ni#l!ni#m!ni#n!ni#o!ni#q!ni#s!ni#u!ni#v!ni(c!ni(j!ni(k!ni~O^!ni'l!ni'j!ni!S!ni!g!nio!ni!X!ni%a!ni!a!ni~P$$gOg.TO!X'UO%a.SO~Oi0YO'u0XO~P!1UO!a+XO^'}a!X'}a'l'}a!V'}a~O#d0`O~OXYX!VcX!WcX~O!V0aO!W(yX~O!W0cO~OX0dO~O'u+aO'wTO'zUO~O!X%vO'u%_O]'hX!V'hX~O!V+fO](xa~O!g0iO~P!7sOX0lO~O]0mO~O#X0pO~Og0sO!X${O~O(V(sO!W(vP~Og0|O!X0yO%a0{O(O%QO~OX1WO!V1UO!W(wX~O!W1XO~O]1ZO^%fO'l%fO~O'u#lO'wTO'zUO~O#X$dO#{$dOP(XXX(XXk(XXy(XXz(XX|(XX!V(XX!e(XX!h(XX!l(XX#g(XX#h(XX#i(XX#j(XX#k(XX#l(XX#m(XX#n(XX#q(XX#s(XX#u(XX#v(XX(S(XX(c(XX(j(XX(k(XX~O#o1^O&R1_O^(XX!f(XX~P$+]O#X$dO#o1^O&R1_O~O^1aO~P%TO^1cO~O&[1fOP&YiQ&YiV&Yi^&Yia&Yib&Yii&Yik&Yil&Yim&Yis&Yiu&Yiw&Yi|&Yi!Q&Yi!R&Yi!X&Yi!c&Yi!h&Yi!k&Yi!l&Yi!m&Yi!o&Yi!q&Yi!t&Yi!x&Yi#p&Yi$Q&Yi$U&Yi%`&Yi%b&Yi%d&Yi%e&Yi%f&Yi%i&Yi%k&Yi%n&Yi%o&Yi%q&Yi%}&Yi&T&Yi&V&Yi&X&Yi&Z&Yi&^&Yi&d&Yi&j&Yi&l&Yi&n&Yi&p&Yi&r&Yi'j&Yi'u&Yi'w&Yi'z&Yi(S&Yi(b&Yi(o&Yi!W&Yi_&Yi&a&Yi~O_1lO!W1jO&a1kO~P`O!XXO!h1nO~O&h,iOP&ciQ&ciV&ci^&cia&cib&cii&cik&cil&cim&cis&ciu&ciw&ci|&ci!Q&ci!R&ci!X&ci!c&ci!h&ci!k&ci!l&ci!m&ci!o&ci!q&ci!t&ci!x&ci#p&ci$Q&ci$U&ci%`&ci%b&ci%d&ci%e&ci%f&ci%i&ci%k&ci%n&ci%o&ci%q&ci%}&ci&T&ci&V&ci&X&ci&Z&ci&^&ci&d&ci&j&ci&l&ci&n&ci&p&ci&r&ci'j&ci'u&ci'w&ci'z&ci(S&ci(b&ci(o&ci!W&ci&[&ci_&ci&a&ci~O!S1tO~O!V!Za!W!Za~P#ByOl!mO|!nO!U1zO(V!lO!V'OX!W'OX~P?wO!V,yO!W(Za~O!V'UX!W'UX~P!6{O!V,|O!W(ia~O!W2RO~P'WO^%fO#X2[O'l%fO~O^%fO!a#tO#X2[O'l%fO~O^%fO!a#tO!l2`O#X2[O'l%fO(c'fO~O^%fO'l%fO~P!7sO!V$`Oo$ka~O!S&}i!V&}i~P!7sO!V'zO!S(Yi~O!V(RO!S(gi~O!S(hi!V(hi~P!7sO!V(ei!g(ei^(ei'l(ei~P!7sO#X2bO!V(ei!g(ei^(ei'l(ei~O!V(_O!g(di~O|%`O!X%aO!x]O#b2gO#c2fO'u%_O~O|%`O!X%aO#c2fO'u%_O~Og2nO!X'UO%a2mO~Og2nO!X'UO%a2mO(O%QO~O#dvaPvaXva^vakva!eva!fva!hva!lva#gva#hva#iva#jva#kva#lva#mva#nva#ova#qva#sva#uva#vva'lva(Sva(cva!gva!Sva'jvaova!Xva%ava!ava~P$ aO#d$laP$laX$la^$lak$laz$la!e$la!f$la!h$la!l$la#g$la#h$la#i$la#j$la#k$la#l$la#m$la#n$la#o$la#q$la#s$la#u$la#v$la'l$la(S$la(c$la!g$la!S$la'j$lao$la!X$la%a$la!a$la~P$!VO#d$naP$naX$na^$nak$naz$na!e$na!f$na!h$na!l$na#g$na#h$na#i$na#j$na#k$na#l$na#m$na#n$na#o$na#q$na#s$na#u$na#v$na'l$na(S$na(c$na!g$na!S$na'j$nao$na!X$na%a$na!a$na~P$!xO#d$|aP$|aX$|a^$|ak$|az$|a!V$|a!e$|a!f$|a!h$|a!l$|a#g$|a#h$|a#i$|a#j$|a#k$|a#l$|a#m$|a#n$|a#o$|a#q$|a#s$|a#u$|a#v$|a'l$|a(S$|a(c$|a!g$|a!S$|a'j$|a#X$|ao$|a!X$|a%a$|a!a$|a~P#,`O^#[q!V#[q'l#[q'j#[q!S#[q!g#[qo#[q!X#[q%a#[q!a#[q~P!7sOd'PX!V'PX~P!'oO!V.^Od(]a~O!U2vO!V'QX!g'QX~P%TO!V.aO!g(^a~O!V.aO!g(^a~P!7sO!S2yO~O#y!ja!W!ja~PJqO#y!ba!V!ba!W!ba~P#ByO#y!na!W!na~P!:^O#y!pa!W!pa~P!`O^#wy!V#wy'l#wy'j#wy!S#wy!g#wyo#wy!X#wy%a#wy!a#wy~P!7sOg;lOy)uO|)vO(j)xO(k)zO~OP#fiX#fik#fiz#fi!e#fi!f#fi!h#fi!l#fi#g#fi#h#fi#i#fi#j#fi#k#fi#l#fi#m#fi#n#fi#o#fi#q#fi#s#fi#u#fi#v#fi#y#fi(S#fi(c#fi!V#fi!W#fi~P%AWO!f#vOP(RXX(RXg(RXk(RXy(RXz(RX|(RX!e(RX!h(RX!l(RX#g(RX#h(RX#i(RX#j(RX#k(RX#l(RX#m(RX#n(RX#o(RX#q(RX#s(RX#u(RX#v(RX#y(RX(S(RX(c(RX(j(RX(k(RX!V(RX!W(RX~O#y#zi!V#zi!W#zi~P#ByO#y!ni!W!ni~P$$gO!W6_O~O!V'Za!W'Za~P#ByO!a#tO(c'fO!V'[a!g'[a~O!V/UO!g(pi~O!V/UO!a#tO!g(pi~Od$uq!V$uq#X$uq#y$uq~P!0dO!S'^a!V'^a~P#,`O!a6fO~O!V/^O!S(qi~P#,`O!V/^O!S(qi~O!S6jO~O!a#tO#o6oO~Ok6pO!a#tO(c'fO~O!S6rO~Od$wq!V$wq#X$wq#y$wq~P!0dO^$iy!V$iy'l$iy'j$iy!S$iy!g$iyo$iy!X$iy%a$iy!a$iy~P!7sO!a5jO~O!V4VO!X(ra~O^#[y!V#[y'l#[y'j#[y!S#[y!g#[yo#[y!X#[y%a#[y!a#[y~P!7sOX6wO~O!V0aO!W(yi~O]6}O~O(V(sO!V'cX!W'cX~O!V4mO!W(va~OikO'u7UO~P.bO!W7XO~P%$gOl!mO|7YO'wTO'zUO(V!lO(b!rO~O!X0yO~O!X0yO%a7[O~Og7_O!X0yO%a7[O~OX7dO!V'fa!W'fa~O!V1UO!W(wi~O!g7hO~O!g7iO~O!g7lO~O!g7lO~P%TO^7nO~O!a7oO~O!g7pO~O!V(hi!W(hi~P#ByO^%fO#X7xO'l%fO~O!V(ey!g(ey^(ey'l(ey~P!7sO!V(_O!g(dy~O!X'UO%a7{O~O#d$uqP$uqX$uq^$uqk$uqz$uq!V$uq!e$uq!f$uq!h$uq!l$uq#g$uq#h$uq#i$uq#j$uq#k$uq#l$uq#m$uq#n$uq#o$uq#q$uq#s$uq#u$uq#v$uq'l$uq(S$uq(c$uq!g$uq!S$uq'j$uq#X$uqo$uq!X$uq%a$uq!a$uq~P#,`O#d$wqP$wqX$wq^$wqk$wqz$wq!V$wq!e$wq!f$wq!h$wq!l$wq#g$wq#h$wq#i$wq#j$wq#k$wq#l$wq#m$wq#n$wq#o$wq#q$wq#s$wq#u$wq#v$wq'l$wq(S$wq(c$wq!g$wq!S$wq'j$wq#X$wqo$wq!X$wq%a$wq!a$wq~P#,`O!V'Qi!g'Qi~P!7sO#y#[q!V#[q!W#[q~P#ByOy/xOz/xO|/yOPvaXvagvakva!eva!fva!hva!lva#gva#hva#iva#jva#kva#lva#mva#nva#ova#qva#sva#uva#vva#yva(Sva(cva(jva(kva!Vva!Wva~Oy)uO|)vOP$laX$lag$lak$laz$la!e$la!f$la!h$la!l$la#g$la#h$la#i$la#j$la#k$la#l$la#m$la#n$la#o$la#q$la#s$la#u$la#v$la#y$la(S$la(c$la(j$la(k$la!V$la!W$la~Oy)uO|)vOP$naX$nag$nak$naz$na!e$na!f$na!h$na!l$na#g$na#h$na#i$na#j$na#k$na#l$na#m$na#n$na#o$na#q$na#s$na#u$na#v$na#y$na(S$na(c$na(j$na(k$na!V$na!W$na~OP$|aX$|ak$|az$|a!e$|a!f$|a!h$|a!l$|a#g$|a#h$|a#i$|a#j$|a#k$|a#l$|a#m$|a#n$|a#o$|a#q$|a#s$|a#u$|a#v$|a#y$|a(S$|a(c$|a!V$|a!W$|a~P%AWO#y$hq!V$hq!W$hq~P#ByO#y$iq!V$iq!W$iq~P#ByO!W8VO~O#y8WO~P!0dO!a#tO!V'[i!g'[i~O!a#tO(c'fO!V'[i!g'[i~O!V/UO!g(pq~O!S'^i!V'^i~P#,`O!V/^O!S(qq~O!S8^O~P#,`O!S8^O~Od(Qy!V(Qy~P!0dO!V'aa!X'aa~P#,`O^%Tq!X%Tq'l%Tq!V%Tq~P#,`OX8cO~O!V0aO!W(yq~O#X8gO!V'ca!W'ca~O!V4mO!W(vi~P#ByOPYXXYXkYXyYXzYX|YX!SYX!VYX!eYX!fYX!hYX!lYX#XYX#dcX#gYX#hYX#iYX#jYX#kYX#lYX#mYX#nYX#oYX#qYX#sYX#uYX#vYX#{YX(SYX(cYX(jYX(kYX~O!a%RX#o%RX~P&2WO!X0yO%a8kO~O'wTO'zUO(V8pO~O!V1UO!W(wq~O!g8sO~O!g8tO~O!g8uO~O!g8uO~P%TO#X8xO!V#ay!W#ay~O!V#ay!W#ay~P#ByO!X'UO%a8}O~O#y#wy!V#wy!W#wy~P#ByOP$uiX$uik$uiz$ui!e$ui!f$ui!h$ui!l$ui#g$ui#h$ui#i$ui#j$ui#k$ui#l$ui#m$ui#n$ui#o$ui#q$ui#s$ui#u$ui#v$ui#y$ui(S$ui(c$ui!V$ui!W$ui~P%AWOy)uO|)vO(k)zOP%XiX%Xig%Xik%Xiz%Xi!e%Xi!f%Xi!h%Xi!l%Xi#g%Xi#h%Xi#i%Xi#j%Xi#k%Xi#l%Xi#m%Xi#n%Xi#o%Xi#q%Xi#s%Xi#u%Xi#v%Xi#y%Xi(S%Xi(c%Xi(j%Xi!V%Xi!W%Xi~Oy)uO|)vOP%ZiX%Zig%Zik%Ziz%Zi!e%Zi!f%Zi!h%Zi!l%Zi#g%Zi#h%Zi#i%Zi#j%Zi#k%Zi#l%Zi#m%Zi#n%Zi#o%Zi#q%Zi#s%Zi#u%Zi#v%Zi#y%Zi(S%Zi(c%Zi(j%Zi(k%Zi!V%Zi!W%Zi~O#y$iy!V$iy!W$iy~P#ByO#y#[y!V#[y!W#[y~P#ByO!a#tO!V'[q!g'[q~O!V/UO!g(py~O!S'^q!V'^q~P#,`O!S9UO~P#,`O!V0aO!W(yy~O!V4mO!W(vq~O!X0yO%a9]O~O!g9`O~O!X'UO%a9eO~OP$uqX$uqk$uqz$uq!e$uq!f$uq!h$uq!l$uq#g$uq#h$uq#i$uq#j$uq#k$uq#l$uq#m$uq#n$uq#o$uq#q$uq#s$uq#u$uq#v$uq#y$uq(S$uq(c$uq!V$uq!W$uq~P%AWOP$wqX$wqk$wqz$wq!e$wq!f$wq!h$wq!l$wq#g$wq#h$wq#i$wq#j$wq#k$wq#l$wq#m$wq#n$wq#o$wq#q$wq#s$wq#u$wq#v$wq#y$wq(S$wq(c$wq!V$wq!W$wq~P%AWOd%]!Z!V%]!Z#X%]!Z#y%]!Z~P!0dO!V'cq!W'cq~P#ByO!V#a!Z!W#a!Z~P#ByO#d%]!ZP%]!ZX%]!Z^%]!Zk%]!Zz%]!Z!V%]!Z!e%]!Z!f%]!Z!h%]!Z!l%]!Z#g%]!Z#h%]!Z#i%]!Z#j%]!Z#k%]!Z#l%]!Z#m%]!Z#n%]!Z#o%]!Z#q%]!Z#s%]!Z#u%]!Z#v%]!Z'l%]!Z(S%]!Z(c%]!Z!g%]!Z!S%]!Z'j%]!Z#X%]!Zo%]!Z!X%]!Z%a%]!Z!a%]!Z~P#,`OP%]!ZX%]!Zk%]!Zz%]!Z!e%]!Z!f%]!Z!h%]!Z!l%]!Z#g%]!Z#h%]!Z#i%]!Z#j%]!Z#k%]!Z#l%]!Z#m%]!Z#n%]!Z#o%]!Z#q%]!Z#s%]!Z#u%]!Z#v%]!Z#y%]!Z(S%]!Z(c%]!Z!V%]!Z!W%]!Z~P%AWOo(WX~P1jO'v!kO~P!){O!ScX!VcX#XcX~P&2WOPYXXYXkYXyYXzYX|YX!VYX!VcX!eYX!fYX!hYX!lYX#XYX#XcX#dcX#gYX#hYX#iYX#jYX#kYX#lYX#mYX#nYX#oYX#qYX#sYX#uYX#vYX#{YX(SYX(cYX(jYX(kYX~O!acX!gYX!gcX(ccX~P&GnOP9pOQ9pOa;aOb!hOikOk9pOlkOmkOskOu9pOw9pO|WO!QkO!RkO!XXO!c9sO!hZO!k9pO!l9pO!m9pO!o9tO!q9wO!t!gO$Q!jO$UfO'u)TO'wTO'zUO(SVO(b[O(o;_O~O!V:UO!W$ka~Oi%ROk$sOl$rOm$rOs%SOu%TOw:[O|$zO!X${O!c;fO!h$wO#c:bO$Q%XO$m:^O$o:`O$r%YO'u(kO'wTO'zUO(O%QO(S$tO~O#p)[O~P&LdO!WYX!WcX~P&GnO#d9xO~O!a#tO#d9xO~O#X:YO~O#o9}O~O#X:dO!V(hX!W(hX~O#X:YO!V(fX!W(fX~O#d:eO~Od:gO~P!0dO#d:lO~O#d:mO~O!a#tO#d:nO~O!a#tO#d:eO~O#y:oO~P#ByO#d:pO~O#d:qO~O#d:rO~O#d:sO~O#d:tO~O#d:uO~O#y:vO~P!0dO#y:wO~P!0dO$U~!f!|!}#P#Q#T#b#c#n(o$m$o$r%U%`%a%b%i%k%n%o%q%s~'pR$U(o#h!R'n'v#il#g#jky'o(V'o'u$W$Y$W~",goto:"$&a(}PPPP)OP)RP)cP*r.uPPPP5UPP5kP;f>mP?QP?QPPP?QP@rP?QP?QP?QP@vPP@{PAfPF]PPPFaPPPPFaIaPPPIgJbPFaPLoPPPPN}FaPPPFaPFaP!#]FaP!&p!'r!'{P!(n!(r!(nPPPPP!+|!'rPP!,j!-dP!0WFaFa!0]!3f!7z!7z!;oPPP!;vFaPPPPPPPPPPP!?SP!@ePPFa!ArPFaPFaFaFaFaPFa!CUPP!F]P!I`P!Id!In!Ir!IrP!FYP!Iv!IvP!LyP!L}FaFa!MT#!V?QP?QP?Q?QP##a?Q?Q#%]?Q#'l?Q#)b?Q?Q#*O#+|#+|#,Q#,Y#+|#,bP#+|P?Q#,z?Q#.T?Q?Q5UPPP#/aPPP#/y#/yP#/yP#0`#/yPP#0fP#0]P#0]#0x#0]#1d#1j5R)R#1m)RP#1t#1t#1tP)RP)RP)RP)RPP)RP#1z#1}P#1})RP#2RP#2UP)RP)RP)RP)RP)RP)R)RPP#2[#2b#2l#2r#2x#3O#3U#3d#3j#3p#3z#4Q#4[#4k#4q#5b#5t#5z#6Q#6`#6u#8W#8f#8l#8r#8x#9O#9Y#9`#9f#9p#:S#:YPPPPPPPPPP#:`PPPPPPP#;S#>ZP#?j#?q#?yPPPP#DX#F}#Me#Mh#Mk#Nd#Ng#Nj#Nq#NyPP$ P$ T$ {$!z$#O$#dPP$#h$#n$#rP$#u$#y$#|$$r$%Y$%p$%t$%w$%z$&Q$&T$&X$&]R!zRmqOXs!Y#b%e&h&j&k&m,a,f1f1iY!tQ'U-R0y4tQ%kuQ%sxQ%z{Q&`!US&|!d,yQ'[!hS'b!q!wS*^${*cQ+_%tQ+l%|Q,Q&YQ-P'TQ-Z']Q-c'cQ/o*eQ1T,RR:c9t$|dOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$`$d%e%k%x&a&d&h&j&k&m&q&y'W'h'x'z(Q(X(m(q(u)t*w*{,^,a,f-V-_-m-s.a.h/y0O0`0|1^1_1a1c1f1i1k2[2b2v4q4{5]5^5a5t7Y7_7n7xS#o]9q!r)V$Z$l&})i,r,u.p1z3]4o5k8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bQ*n%UQ+d%vQ,S&]Q,Z&eQ.W:ZQ0V+VQ0Z+XQ0f+eQ1],XQ2j.TQ4_0aQ5S1UQ6Q2nQ6W:[Q6y4`R8O6R&zkOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$Z$`$d$l%e%k%x&a&d&e&h&j&k&m&q&y&}'W'h'x'z(Q(X(m(q(u)i)t*w*{+V,^,a,f,r,u-V-_-m-s.T.a.h.p/y0O0`0|1^1_1a1c1f1i1k1z2[2b2n2v3]4o4q4{5]5^5a5k5t6R7Y7_7n7x8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bt!mQ!q!t!w!x&|'T'U'b'c'd,y-P-R-c0y4t4v$^$ri#t#v$b$c$w$z%V%W%[)p)v)y){)|*T*Z*i*j+U+X+p+s.S.^/O/]/^/`/{0p0s0{2m3e3o3w3}4V4X4z6O6f6o7[7{8W8k8}9]9e:W:X:]:^:_:`:a:b:h:i:j:k:l:m:p:q:r:s:v:w;_;g;h;k;lQ%}{Q&z!dS'Q%a,|Q+d%vQ/z*rQ0f+eQ0k+kQ1[,WQ1],XQ4_0aQ4h0mQ5V1WQ5W1ZQ6y4`Q6|4eQ7g5YQ8f6}R8q7dpnOXs!U!Y#b%e&_&h&j&k&m,a,f1f1iR,U&a&t^OPXYstuvy!Y!_!f!i!n#Q#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$Z$`$d$l%e%k%x&a&d&e&h&j&k&m&q&y'W'h'z(Q(X(m(q(u)i)t*w*{+V,^,a,f,r,u-V-_-m-s.T.a.h.p/y0O0`0|1^1_1a1c1f1i1k1z2[2b2n2v3]4o4q4{5]5^5a5k5t6R7Y7_7n7x8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;a;b[#ZWZ#U#X&}'x!S%bm#f#g#j%]%`(R(](^(_*y*z*|,],s-q-w-x-y-{1n2f2g5j5{Q%nwQ%rxS%w{%|Q&T!SQ'X!gQ'Z!hQ(f#qS*Q$w*US+^%s%tQ+b%vQ+{&WQ,P&YS-Y'[']Q.V(gQ/Y*RQ0_+_Q0e+eQ0g+fQ0j+jQ1O+|S1S,Q,RQ2W-ZQ3f/UQ4^0aQ4b0dQ4g0lQ5R1TQ6c3gQ6x4`Q6{4dQ8b6wR9W8cv$yi#v%V%W%[)y){*T*i*j.^/]/{3e3}8W;_;g;h!S%px!h!s%r%s%t&{'Z'[']'a'k*]+^+_,v-Y-Z-b/g0_2P2W2_3yQ+W%nQ+q&QQ+t&RQ,O&YQ.U(fQ0}+{U1R,P,Q,RQ2o.VQ4|1OS5Q1S1TQ7c5R#O;c#t$b$c$w$z)p)v)|*Z+U+X+p+s.S/O/^/`0p0s0{2m3o3w4V4X4z6O6f6o7[7{8k8}9]9e:]:_:a:h:j:l:p:r:v;k;lg;d:W:X:^:`:b:i:k:m:q:s:wW%Oi%Q*k;_S&Q!P&_Q&R!QQ&S!RR+o&O$_$}i#t#v$b$c$w$z%V%W%[)p)v)y){)|*T*Z*i*j+U+X+p+s.S.^/O/]/^/`/{0p0s0{2m3e3o3w3}4V4X4z6O6f6o7[7{8W8k8}9]9e:W:X:]:^:_:`:a:b:h:i:j:k:l:m:p:q:r:s:v:w;_;g;h;k;lT)q$t)rV*o%U:Z:[U'Q!d%a,|S(t#x#yQ+i%yS.O(b(cQ0t+uQ4O/xR7R4m&zkOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$Z$`$d$l%e%k%x&a&d&e&h&j&k&m&q&y&}'W'h'x'z(Q(X(m(q(u)i)t*w*{+V,^,a,f,r,u-V-_-m-s.T.a.h.p/y0O0`0|1^1_1a1c1f1i1k1z2[2b2n2v3]4o4q4{5]5^5a5k5t6R7Y7_7n7x8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;b$i$_c#W#c%i%j%l'w'}(i(p(x(y(z({(|(})O)P)Q)R)S)U)X)])g+S+h,w-f-k-p-r.].c.g.i.j.k.z/|1u1x2Y2a2u2z2{2|2}3O3P3Q3R3S3T3U3V3W3Z3[3a4S4[5m5s5x6U6V6[6]7T7r7v8P8T8U8z9Y9a9r;UT#RV#S&{kOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$Z$`$d$l%e%k%x&a&d&e&h&j&k&m&q&y&}'W'h'x'z(Q(X(m(q(u)i)t*w*{+V,^,a,f,r,u-V-_-m-s.T.a.h.p/y0O0`0|1^1_1a1c1f1i1k1z2[2b2n2v3]4o4q4{5]5^5a5k5t6R7Y7_7n7x8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bQ'O!dR1{,yv!mQ!d!q!t!w!x&|'T'U'b'c'd,y-P-R-c0y4t4vS*]${*cS/g*^*eQ/p*fQ0v+wQ3y/oR3|/rlqOXs!Y#b%e&h&j&k&m,a,f1f1iQ&o!]Q'l!vS(h#s9xQ+[%qQ+y&TQ+z&VQ-W'YQ-e'eS.[(m:eS/}*w:nQ0]+]Q0x+xQ1m,hQ1o,iQ1w,tQ2U-XQ2X-]S4T0O:tQ4Y0^S4]0`:uQ5l1yQ5p2VQ5u2^Q6v4ZQ7s5nQ7t5qQ7w5vR8w7p$d$^c#W#c%j%l'w'}(i(p(x(y(z({(|(})O)P)Q)R)S)U)X)])g+S+h,w-f-k-p-r.].c.g.j.k.z/|1u1x2Y2a2u2z2{2|2}3O3P3Q3R3S3T3U3V3W3Z3[3a4S4[5m5s5x6U6V6[6]7T7r7v8P8T8U8z9Y9a9r;US(e#n'_U*h$|(l3YS+R%i.iQ2k0VQ5}2jQ7}6QR9O8O$d$]c#W#c%j%l'w'}(i(p(x(y(z({(|(})O)P)Q)R)S)U)X)])g+S+h,w-f-k-p-r.].c.g.j.k.z/|1u1x2Y2a2u2z2{2|2}3O3P3Q3R3S3T3U3V3W3Z3[3a4S4[5m5s5x6U6V6[6]7T7r7v8P8T8U8z9Y9a9r;US(d#n'_S(v#y$^S+Q%i.iS.P(c(eQ.l)WQ0S+RR2h.Q&zkOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$Z$`$d$l%e%k%x&a&d&e&h&j&k&m&q&y&}'W'h'x'z(Q(X(m(q(u)i)t*w*{+V,^,a,f,r,u-V-_-m-s.T.a.h.p/y0O0`0|1^1_1a1c1f1i1k1z2[2b2n2v3]4o4q4{5]5^5a5k5t6R7Y7_7n7x8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bS#o]9qQ&j!WQ&k!XQ&m!ZQ&n![R1e,dQ'V!gQ+T%nQ-U'XS.R(f+WQ2S-TW2l.U.V0U0WQ5o2TU5|2i2k2oS7z5}6PS8|7|7}S9c8{9OQ9k9dR9n9lU!uQ'U-RT4r0y4t!O_OXZ`s!U!Y#b#f%]%e&_&a&h&j&k&m(_,a,f-x1f1i]!oQ!q'U-R0y4tT#o]9q%WzOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$`$d%e%k%x&a&d&e&h&j&k&m&q&y'W'h'x'z(Q(X(m(q(u)t*w*{+V,^,a,f-V-_-m-s.T.a.h/y0O0`0|1^1_1a1c1f1i1k2[2b2n2v4q4{5]5^5a5t6R7Y7_7n7xS(t#x#yS.O(b(c!s:{$Z$l&})i,r,u.p1z3]4o5k8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bY!sQ'U-R0y4tQ'a!qS'k!t!wS'm!x4vS-b'b'cQ-d'dR2_-cQ'j!sS(Z#e1`S-a'a'mQ/X*QQ/e*]Q2`-dQ3k/YS3t/f/pQ6b3fS6m3z3|Q8Y6cR8a6pQ#ubQ'i!sS(Y#e1`S([#k*vQ*x%^Q+Y%oQ+`%uU-`'a'j'mQ-t(ZQ/W*QQ/d*]Q/j*`Q0[+ZQ1P+}S2]-a-dQ2e-|S3j/X/YS3s/e/pQ3v/iQ3x/kQ5O1QQ5w2`Q6a3fQ6e3kS6i3t3|Q6n3{Q7a5PS8X6b6cQ8]6jQ8_6mQ8n7bQ9S8YQ9T8^Q9V8aQ9_8oQ9g9UQ;O:yQ;Z;SR;[;TV!uQ'U-R%WaOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$`$d%e%k%x&a&d&e&h&j&k&m&q&y'W'h'x'z(Q(X(m(q(u)t*w*{+V,^,a,f-V-_-m-s.T.a.h/y0O0`0|1^1_1a1c1f1i1k2[2b2n2v4q4{5]5^5a5t6R7Y7_7n7xS#uy!i!r:x$Z$l&})i,r,u.p1z3]4o5k8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bR;O;a%WbOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$`$d%e%k%x&a&d&e&h&j&k&m&q&y'W'h'x'z(Q(X(m(q(u)t*w*{+V,^,a,f-V-_-m-s.T.a.h/y0O0`0|1^1_1a1c1f1i1k2[2b2n2v4q4{5]5^5a5t6R7Y7_7n7xQ%^j!S%ox!h!s%r%s%t&{'Z'[']'a'k*]+^+_,v-Y-Z-b/g0_2P2W2_3yS%uy!iQ+Z%pQ+}&YW1Q,O,P,Q,RU5P1R1S1TS7b5Q5RQ8o7c!r:y$Z$l&})i,r,u.p1z3]4o5k8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bQ;S;`R;T;a$zeOPXYstuv!Y!_!f!n#Q#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$`$d%e%k%x&a&d&h&j&k&m&q&y'W'h'z(Q(X(m(q(u)t*w*{+V,^,a,f-V-_-m-s.T.a.h/y0O0`0|1^1_1a1c1f1i1k2[2b2n2v4q4{5]5^5a5t6R7Y7_7n7xY#`WZ#U#X'x!S%bm#f#g#j%]%`(R(](^(_*y*z*|,],s-q-w-x-y-{1n2f2g5j5{Q,[&e!p:z$Z$l)i,r,u.p1z3]4o5k8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bR:}&}S'R!d%aR1},|$|dOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$`$d%e%k%x&a&d&h&j&k&m&q&y'W'h'x'z(Q(X(m(q(u)t*w*{,^,a,f-V-_-m-s.a.h/y0O0`0|1^1_1a1c1f1i1k2[2b2v4q4{5]5^5a5t7Y7_7n7x!r)V$Z$l&})i,r,u.p1z3]4o5k8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bQ,Z&eQ0V+VQ2j.TQ6Q2nR8O6R!f$Tc#W%i'w'}(i(p)P)Q)R)S)X)]+h-f-k-p-r.].c.z/|2Y2a2u3W4S4[5s5x6U7v8z9r!T:P)U)g,w.i1u1x2z3S3T3U3V3Z3a5m6V6[6]7T7r8P8T8U9Y9a;U!b$Vc#W%i'w'}(i(p)R)S)X)]+h-f-k-p-r.].c.z/|2Y2a2u3W4S4[5s5x6U7v8z9r!P:R)U)g,w.i1u1x2z3U3V3Z3a5m6V6[6]7T7r8P8T8U9Y9a;U!^$Zc#W%i'w'}(i(p)X)]+h-f-k-p-r.].c.z/|2Y2a2u3W4S4[5s5x6U7v8z9rQ3e/Sz;b)U)g,w.i1u1x2z3Z3a5m6V6[6]7T7r8P8T8U9Y9a;UQ;g;iR;h;j&zkOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$Z$`$d$l%e%k%x&a&d&e&h&j&k&m&q&y&}'W'h'x'z(Q(X(m(q(u)i)t*w*{+V,^,a,f,r,u-V-_-m-s.T.a.h.p/y0O0`0|1^1_1a1c1f1i1k1z2[2b2n2v3]4o4q4{5]5^5a5k5t6R7Y7_7n7x8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bS$mh$nR3^.o'RgOPWXYZhstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$Z$`$d$l$n%e%k%x&a&d&e&h&j&k&m&q&y&}'W'h'x'z(Q(X(m(q(u)i)t*w*{+V,^,a,f,r,u-V-_-m-s.T.a.h.o.p/y0O0`0|1^1_1a1c1f1i1k1z2[2b2n2v3]4o4q4{5]5^5a5k5t6R7Y7_7n7x8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bT$if$oQ$gfS)`$j)dR)l$oT$hf$oT)b$j)d'RhOPWXYZhstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$Z$`$d$l$n%e%k%x&a&d&e&h&j&k&m&q&y&}'W'h'x'z(Q(X(m(q(u)i)t*w*{+V,^,a,f,r,u-V-_-m-s.T.a.h.o.p/y0O0`0|1^1_1a1c1f1i1k1z2[2b2n2v3]4o4q4{5]5^5a5k5t6R7Y7_7n7x8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bT$mh$nQ$phR)k$n%WjOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$`$d%e%k%x&a&d&e&h&j&k&m&q&y'W'h'x'z(Q(X(m(q(u)t*w*{+V,^,a,f-V-_-m-s.T.a.h/y0O0`0|1^1_1a1c1f1i1k2[2b2n2v4q4{5]5^5a5t6R7Y7_7n7x!s;`$Z$l&})i,r,u.p1z3]4o5k8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;b#alOPXZs!Y!_!n#Q#b#m#z$l%e&a&d&e&h&j&k&m&q&y'W(u)i*{+V,^,a,f-V.T.p/y0|1^1_1a1c1f1i1k2n3]4q4{5]5^5a6R7Y7_7nv$|i#v%V%W%[)y){*T*i*j.^/]/{3e3}8W;_;g;h#O(l#t$b$c$w$z)p)v)|*Z+U+X+p+s.S/O/^/`0p0s0{2m3o3w4V4X4z6O6f6o7[7{8k8}9]9e:]:_:a:h:j:l:p:r:v;k;lQ*s%YQ.{)ug3Y:W:X:^:`:b:i:k:m:q:s:wv$xi#v%V%W%[)y){*T*i*j.^/]/{3e3}8W;_;g;hQ*V$yS*`${*cQ*t%ZQ/k*a#O;Q#t$b$c$w$z)p)v)|*Z+U+X+p+s.S/O/^/`0p0s0{2m3o3w4V4X4z6O6f6o7[7{8k8}9]9e:]:_:a:h:j:l:p:r:v;k;lf;R:W:X:^:`:b:i:k:m:q:s:wQ;V;cQ;W;dQ;X;eR;Y;fv$|i#v%V%W%[)y){*T*i*j.^/]/{3e3}8W;_;g;h#O(l#t$b$c$w$z)p)v)|*Z+U+X+p+s.S/O/^/`0p0s0{2m3o3w4V4X4z6O6f6o7[7{8k8}9]9e:]:_:a:h:j:l:p:r:v;k;lg3Y:W:X:^:`:b:i:k:m:q:s:wloOXs!Y#b%e&h&j&k&m,a,f1f1iQ*Y$zQ,o&tQ,p&vR3n/^$^$}i#t#v$b$c$w$z%V%W%[)p)v)y){)|*T*Z*i*j+U+X+p+s.S.^/O/]/^/`/{0p0s0{2m3e3o3w3}4V4X4z6O6f6o7[7{8W8k8}9]9e:W:X:]:^:_:`:a:b:h:i:j:k:l:m:p:q:r:s:v:w;_;g;h;k;lQ+r&RQ0r+tQ4k0qR7Q4lT*b${*cS*b${*cT4s0y4tS/i*_4qT3{/q7YQ+Y%oQ/j*`Q0[+ZQ1P+}Q5O1QQ7a5PQ8n7bR9_8on)y$u(n*u/[/s/t2s3l4R6`6q9R;P;];^!Y:h(j)Z*P*X.Z.w.|/S/a0T0o0q2r3m3q4j4l6S6T6g6k6s6u8[8`9f;i;j]:i3X6Z8Q9P9Q9op){$u(n*u/Q/[/s/t2s3l4R6`6q9R;P;];^![:j(j)Z*P*X.Z.w.|/S/a0T0o0q2p2r3m3q4j4l6S6T6g6k6s6u8[8`9f;i;j_:k3X6Z8Q8R9P9Q9opnOXs!U!Y#b%e&_&h&j&k&m,a,f1f1iQ&[!TR,^&epnOXs!U!Y#b%e&_&h&j&k&m,a,f1f1iR&[!TQ+v&SR0n+oqnOXs!U!Y#b%e&_&h&j&k&m,a,f1f1iQ0z+{S4y0}1OU7Z4w4x4|S8j7]7^S9Z8i8lQ9h9[R9m9iQ&c!UR,V&_R5V1WS%w{%|R0g+fQ&h!VR,a&iR,g&nT1g,f1iR,k&oQ,j&oR1p,kQ'o!yR-g'oQsOQ#bXT%hs#bQ!|TR'q!|Q#PUR's#PQ)r$tR.x)rQ#SVR'u#SQ#VWU'{#V'|-nQ'|#WR-n'}Q,z'OR1|,zQ._(nR2t._Q.b(pS2w.b2xR2x.cQ-R'UR2Q-RY!qQ'U-R0y4tR'`!qS#]W%`U(S#](T-oQ(T#^R-o(OQ,}'RR2O,}r`OXs!U!Y#b%e&_&a&h&j&k&m,a,f1f1iS#fZ%]U#p`#f-xR-x(_Q(`#hQ-u([W-}(`-u2c5yQ2c-vR5y2dQ)d$jR.q)dQ$nhR)j$nQ$acU)Y$a-j:VQ-j9rR:V)gQ/V*QW3h/V3i6d8ZU3i/W/X/YS6d3j3kR8Z6e#o)w$u(j(n)Z*P*X*p*q*u.X.Y.Z.w.|/Q/R/S/[/a/s/t0T0o0q2p2q2r2s3X3l3m3q4R4j4l6S6T6X6Y6Z6`6g6k6q6s6u8Q8R8S8[8`9P9Q9R9f9o;P;];^;i;jQ/_*XU3p/_3r6hQ3r/aR6h3qQ*c${R/m*cQ*l%PR/v*lQ4W0TR6t4WQ*}%cR0R*}Q4n0tS7S4n8hR8h7TQ+x&TR0w+xQ4t0yR7W4tQ1V,SS5T1V7eR7e5VQ0b+bW4a0b4c6z8dQ4c0eQ6z4bR8d6{Q+g%wR0h+gQ1i,fR5e1iWrOXs#bQ&l!YQ+P%eQ,`&hQ,b&jQ,c&kQ,e&mQ1d,aS1g,f1iR5d1fQ%gpQ&p!^Q&s!`Q&u!aQ&w!bQ'g!sQ+O%dQ+[%qQ+n%}Q,U&cQ,m&rW-^'a'i'j'mQ-e'eQ/l*bQ0]+]S1Y,V,YQ1q,lQ1r,oQ1s,pQ2X-]W2Z-`-a-d-fQ4Y0^Q4f0kQ4i0oQ4}1PQ5X1[Q5c1eU5r2Y2]2`Q5u2^Q6v4ZQ7O4hQ7P4jQ7V4sQ7`5OQ7f5WS7u5s5wQ7w5vQ8e6|Q8m7aQ8r7gQ8y7vQ9X8fQ9^8nQ9b8zR9j9_Q%qxQ'Y!hQ'e!sU+]%r%s%tQ,t&{U-X'Z'[']S-]'a'kQ/c*]S0^+^+_Q1y,vS2V-Y-ZQ2^-bQ3u/gQ4Z0_Q5n2PQ5q2WQ5v2_R6l3yS$vi;_R*m%QU%Pi%Q;_R/u*kQ$uiS(j#t+XQ(n#vS)Z$b$cQ*P$wQ*X$zQ*p%VQ*q%WQ*u%[Q.X:]Q.Y:_Q.Z:aQ.w)pS.|)v/OQ/Q)yQ/R){Q/S)|Q/[*TQ/a*ZQ/s*iQ/t*jh0T+U.S0{2m4z6O7[7{8k8}9]9eQ0o+pQ0q+sQ2p:hQ2q:jQ2r:lQ2s.^S3X:W:XQ3l/]Q3m/^Q3q/`Q4R/{Q4j0pQ4l0sQ6S:pQ6T:rQ6X:^Q6Y:`Q6Z:bQ6`3eQ6g3oQ6k3wQ6q3}Q6s4VQ6u4XQ8Q:mQ8R:iQ8S:kQ8[6fQ8`6oQ9P:qQ9Q:sQ9R8WQ9f:vQ9o:wQ;P;_Q;];gQ;^;hQ;i;kR;j;llpOXs!Y#b%e&h&j&k&m,a,f1f1iQ!ePS#dZ#mQ&r!_U'^!n4q7YQ't#QQ(w#zQ)h$lS,Y&a&dQ,_&eQ,l&qQ,q&yQ-T'WQ.e(uQ.u)iQ0P*{Q0W+VQ1b,^Q2T-VQ2k.TQ3`.pQ4P/yQ4x0|Q5Z1^Q5[1_Q5`1aQ5b1cQ5g1kQ5}2nQ6^3]Q7^4{Q7j5]Q7k5^Q7m5aQ7}6RQ8l7_R8v7n#UcOPXZs!Y!_!n#b#m#z%e&a&d&e&h&j&k&m&q&y'W(u*{+V,^,a,f-V.T/y0|1^1_1a1c1f1i1k2n4q4{5]5^5a6R7Y7_7nQ#WWQ#cYQ%itQ%juS%lv!fS'w#U'zQ'}#XQ(i#sQ(p#wQ(x#}Q(y$OQ(z$PQ({$QQ(|$RQ(}$SQ)O$TQ)P$UQ)Q$VQ)R$WQ)S$XQ)U$ZQ)X$`Q)]$dW)g$l)i.p3]Q+S%kQ+h%xS,w&}1zQ-f'hS-k'x-mQ-p(QQ-r(XQ.](mQ.c(qQ.g9pQ.i9sQ.j9tQ.k9wQ.z)tQ/|*wQ1u,rQ1x,uQ2Y-_Q2a-sQ2u.aQ2z9xQ2{9yQ2|9zQ2}9{Q3O9|Q3P9}Q3Q:OQ3R:PQ3S:QQ3T:RQ3U:SQ3V:TQ3W.hQ3Z:YQ3[:cQ3a:UQ4S0OQ4[0`Q5m:dQ5s2[Q5x2bQ6U2vQ6V:eQ6[:gQ6]:nQ7T4oQ7r5kQ7v5tQ8P:oQ8T:tQ8U:uQ8z7xQ9Y8gQ9a8xQ9r#QR;U;bR#YWR'P!dY!sQ'U-R0y4tS&{!d,yQ'a!qS'k!t!wS'm!x4vS,v&|'TS-b'b'cQ-d'dQ2P-PR2_-cR(o#vR(r#wQ!eQT-Q'U-R]!pQ!q'U-R0y4tQ#n]R'_9qT#iZ%]S#hZ%]S%cm,]U([#f#g#jS-v(](^Q-z(_Q0Q*|Q2d-wU2e-x-y-{S5z2f2gR7y5{`#[W#U#X%`'x(R*y-qr#eZm#f#g#j%](](^(_*|-w-x-y-{2f2g5{Q1`,]Q1v,sQ5i1nQ7q5jT:|&}*zT#_W%`S#^W%`S'y#U(RS(O#X*yS,x&}*zT-l'x-qT'S!d%aQ$jfR)n$oT)c$j)dR3_.oT*S$w*UR*[$zQ0U+UQ2i.SQ4w0{Q6P2mQ7]4zQ7|6OQ8i7[Q8{7{Q9[8kQ9d8}Q9i9]R9l9elqOXs!Y#b%e&h&j&k&m,a,f1f1iQ&b!UR,U&_rmOXs!T!U!Y#b%e&_&h&j&k&m,a,f1f1iR,]&eT%dm,]R0u+uR,T&]Q%{{R+m%|R+c%vT&f!V&iT&g!V&iT1h,f1i",nodeNames:"⚠ ArithOp ArithOp LineComment BlockComment Script ExportDeclaration export Star as VariableName String Escape from ; default FunctionDeclaration async function VariableDefinition > TypeParamList TypeDefinition extends ThisType this LiteralType ArithOp Number BooleanLiteral TemplateType InterpolationEnd Interpolation InterpolationStart NullType null VoidType void TypeofType typeof MemberExpression . ?. PropertyName [ TemplateString Escape Interpolation super RegExp ] ArrayExpression Spread , } { ObjectExpression Property async get set PropertyDefinition Block : NewExpression new TypeArgList CompareOp < ) ( ArgList UnaryExpression delete LogicOp BitOp YieldExpression yield AwaitExpression await ParenthesizedExpression ClassExpression class ClassBody MethodDeclaration Decorator @ MemberExpression PrivatePropertyName CallExpression declare Privacy static abstract override PrivatePropertyDefinition PropertyDeclaration readonly accessor Optional TypeAnnotation Equals StaticBlock FunctionExpression ArrowFunction ParamList ParamList ArrayPattern ObjectPattern PatternProperty Privacy readonly Arrow MemberExpression BinaryExpression ArithOp ArithOp ArithOp ArithOp BitOp CompareOp instanceof satisfies in const CompareOp BitOp BitOp BitOp LogicOp LogicOp ConditionalExpression LogicOp LogicOp AssignmentExpression UpdateOp PostfixExpression CallExpression TaggedTemplateExpression DynamicImport import ImportMeta JSXElement JSXSelfCloseEndTag JSXStartTag JSXSelfClosingTag JSXIdentifier JSXBuiltin JSXIdentifier JSXNamespacedName JSXMemberExpression JSXSpreadAttribute JSXAttribute JSXAttributeValue JSXEscape JSXEndTag JSXOpenTag JSXFragmentTag JSXText JSXEscape JSXStartCloseTag JSXCloseTag PrefixCast ArrowFunction TypeParamList SequenceExpression KeyofType keyof UniqueType unique ImportType InferredType infer TypeName ParenthesizedType FunctionSignature ParamList NewSignature IndexedType TupleType Label ArrayType ReadonlyType ObjectType MethodType PropertyType IndexSignature PropertyDefinition CallSignature TypePredicate is NewSignature new UnionType LogicOp IntersectionType LogicOp ConditionalType ParameterizedType ClassDeclaration abstract implements type VariableDeclaration let var using TypeAliasDeclaration InterfaceDeclaration interface EnumDeclaration enum EnumBody NamespaceDeclaration namespace module AmbientDeclaration declare GlobalDeclaration global ClassDeclaration ClassBody AmbientFunctionDeclaration ExportGroup VariableName VariableName ImportDeclaration ImportGroup ForStatement for ForSpec ForInSpec ForOfSpec of WhileStatement while WithStatement with DoStatement do IfStatement if else SwitchStatement switch SwitchBody CaseLabel case DefaultLabel TryStatement try CatchClause catch FinallyClause finally ReturnStatement return ThrowStatement throw BreakStatement break ContinueStatement continue DebuggerStatement debugger LabeledStatement ExpressionStatement SingleExpression SingleClassItem",maxTerm:366,context:sM,nodeProps:[["group",-26,6,14,16,62,199,203,207,208,210,213,216,226,228,234,236,238,240,243,249,255,257,259,261,263,265,266,"Statement",-32,10,11,25,28,29,35,45,48,49,51,56,64,72,76,78,80,81,103,104,113,114,131,134,136,137,138,139,141,142,162,163,165,"Expression",-23,24,26,30,34,36,38,166,168,170,171,173,174,175,177,178,179,181,182,183,193,195,197,198,"Type",-3,84,96,102,"ClassItem"],["openedBy",31,"InterpolationStart",50,"[",54,"{",69,"(",143,"JSXStartTag",155,"JSXStartTag JSXStartCloseTag"],["closedBy",33,"InterpolationEnd",44,"]",55,"}",70,")",144,"JSXSelfCloseEndTag JSXEndTag",160,"JSXEndTag"]],propSources:[uM],skippedNodes:[0,3,4,269],repeatNodeCount:33,tokenData:"$>y(CSR!bOX%ZXY+gYZ-yZ[+g[]%Z]^.c^p%Zpq+gqr/mrs3cst:_tu>PuvBavwDxwxGgxyMvyz! Qz{!![{|!%O|}!&]}!O!%O!O!P!'g!P!Q!1w!Q!R#0t!R![#3T![!]#@T!]!^#Aa!^!_#Bk!_!`#GS!`!a#In!a!b#N{!b!c$$z!c!}>P!}#O$&U#O#P$'`#P#Q$,w#Q#R$.R#R#S>P#S#T$/`#T#o$0j#o#p$4z#p#q$5p#q#r$7Q#r#s$8^#s$f%Z$f$g+g$g#BY>P#BY#BZ$9h#BZ$IS>P$IS$I_$9h$I_$I|>P$I|$I}$P$JT$JU$9h$JU$KV>P$KV$KW$9h$KW&FU>P&FU&FV$9h&FV;'S>P;'S;=`BZ<%l?HT>P?HT?HU$9h?HUO>P(n%d_$d&j'xp'{!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z&j&hT$d&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c&j&zP;=`<%l&c'|'U]$d&j'{!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!b(SU'{!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!b(iP;=`<%l'}'|(oP;=`<%l&}'[(y]$d&j'xpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(rp)wU'xpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)rp*^P;=`<%l)r'[*dP;=`<%l(r#S*nX'xp'{!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g#S+^P;=`<%l*g(n+dP;=`<%l%Z(CS+rq$d&j'xp'{!b'n(;dOX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p$f%Z$f$g+g$g#BY%Z#BY#BZ+g#BZ$IS%Z$IS$I_+g$I_$JT%Z$JT$JU+g$JU$KV%Z$KV$KW+g$KW&FU%Z&FU&FV+g&FV;'S%Z;'S;=`+a<%l?HT%Z?HT?HU+g?HUO%Z(CS.ST'y#S$d&j'o(;dO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c(CS.n_$d&j'xp'{!b'o(;dOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#`/x`$d&j!l$Ip'xp'{!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#S1V`#q$Id$d&j'xp'{!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`2X!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#S2d_#q$Id$d&j'xp'{!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$2b3l_'w$(n$d&j'{!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k*r4r_$d&j'{!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k)`5vX$d&jOr5qrs6cs!^5q!^!_6y!_#o5q#o#p6y#p;'S5q;'S;=`7h<%lO5q)`6jT$_#t$d&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c#t6|TOr6yrs7]s;'S6y;'S;=`7b<%lO6y#t7bO$_#t#t7eP;=`<%l6y)`7kP;=`<%l5q*r7w]$_#t$d&j'{!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}%W8uZ'{!bOY8pYZ6yZr8prs9hsw8pwx6yx#O8p#O#P6y#P;'S8p;'S;=`:R<%lO8p%W9oU$_#t'{!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}%W:UP;=`<%l8p*r:[P;=`<%l4k#%|:hg$d&j'xp'{!bOY%ZYZ&cZr%Zrs&}st%Ztu`k$d&j'xp'{!b(V!LY'u&;d$W#tOY%ZYZ&cZr%Zrs&}st%Ztu>Puw%Zwx(rx}%Z}!O@T!O!Q%Z!Q![>P![!^%Z!^!_*g!_!c%Z!c!}>P!}#O%Z#O#P&c#P#R%Z#R#S>P#S#T%Z#T#o>P#o#p*g#p$g%Z$g;'S>P;'S;=`BZ<%lO>P+d@`k$d&j'xp'{!b$W#tOY%ZYZ&cZr%Zrs&}st%Ztu@Tuw%Zwx(rx}%Z}!O@T!O!Q%Z!Q![@T![!^%Z!^!_*g!_!c%Z!c!}@T!}#O%Z#O#P&c#P#R%Z#R#S@T#S#T%Z#T#o@T#o#p*g#p$g%Z$g;'S@T;'S;=`BT<%lO@T+dBWP;=`<%l@T(CSB^P;=`<%l>P%#SBl`$d&j'xp'{!b#i$IdOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#SCy_$d&j#{$Id'xp'{!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%DfETa(k%Z![!^%Z!^!_*g!_!c%Z!c!i#>Z!i#O%Z#O#P&c#P#R%Z#R#S#>Z#S#T%Z#T#Z#>Z#Z#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l#>fi$d&j'xp'{!bl$'|OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#>Z![!^%Z!^!_*g!_!c%Z!c!i#>Z!i#O%Z#O#P&c#P#R%Z#R#S#>Z#S#T%Z#T#Z#>Z#Z#b%Z#b#c#5T#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%Gh#@b_!a$b$d&j#y%Puw%Zwx(rx}%Z}!O@T!O!Q%Z!Q![>P![!^%Z!^!_*g!_!c%Z!c!}>P!}#O%Z#O#P&c#P#R%Z#R#S>P#S#T%Z#T#o>P#o#p*g#p$f%Z$f$g+g$g#BY>P#BY#BZ$9h#BZ$IS>P$IS$I_$9h$I_$JT>P$JT$JU$9h$JU$KV>P$KV$KW$9h$KW&FU>P&FU&FV$9h&FV;'S>P;'S;=`BZ<%l?HT>P?HT?HU$9h?HUO>P(CS$=Uk$d&j'xp'{!b'o(;d(V!LY'u&;d$W#tOY%ZYZ&cZr%Zrs&}st%Ztu>Puw%Zwx(rx}%Z}!O@T!O!Q%Z!Q![>P![!^%Z!^!_*g!_!c%Z!c!}>P!}#O%Z#O#P&c#P#R%Z#R#S>P#S#T%Z#T#o>P#o#p*g#p$g%Z$g;'S>P;'S;=`BZ<%lO>P",tokenizers:[lM,cM,2,3,4,5,6,7,8,9,10,11,12,13,oM,new Zc("$S~RRtu[#O#Pg#S#T#|~_P#o#pb~gOq~~jVO#i!P#i#j!U#j#l!P#l#m!q#m;'S!P;'S;=`#v<%lO!P~!UO!O~~!XS!Q![!e!c!i!e#T#Z!e#o#p#Z~!hR!Q![!q!c!i!q#T#Z!q~!tR!Q![!}!c!i!}#T#Z!}~#QR!Q![!P!c!i!P#T#Z!P~#^R!Q![#g!c!i#g#T#Z#g~#jS!Q![#g!c!i#g#T#Z#g#q#r!P~#yP;=`<%l!P~$RO(U~~",141,327),new Zc("j~RQYZXz{^~^O'r~~aP!P!Qd~iO's~~",25,309)],topRules:{Script:[0,5],SingleExpression:[1,267],SingleClassItem:[2,268]},dialects:{jsx:12794,ts:12796},dynamicPrecedences:{76:1,78:1,163:1,191:1},specialized:[{term:313,get:r=>dM[r]||-1},{term:329,get:r=>mM[r]||-1},{term:67,get:r=>hM[r]||-1}],tokenPrec:12820});class Tt{lineAt(e){if(e<0||e>this.length)throw new RangeError(`Invalid position ${e} in document of length ${this.length}`);return this.lineInner(e,!1,1,0)}line(e){if(e<1||e>this.lines)throw new RangeError(`Invalid line number ${e} in ${this.lines}-line document`);return this.lineInner(e,!0,1,0)}replace(e,t,n){let a=[];return this.decompose(0,e,a,2),n.length&&n.decompose(0,n.length,a,3),this.decompose(t,this.length,a,1),fa.from(a,this.length-(t-e)+n.length)}append(e){return this.replace(this.length,this.length,e)}slice(e,t=this.length){let n=[];return this.decompose(e,t,n,0),fa.from(n,t-e)}eq(e){if(e==this)return!0;if(e.length!=this.length||e.lines!=this.lines)return!1;let t=this.scanIdentical(e,1),n=this.length-this.scanIdentical(e,-1),a=new rl(this),i=new rl(e);for(let s=t,o=t;;){if(a.next(s),i.next(s),s=0,a.lineBreak!=i.lineBreak||a.done!=i.done||a.value!=i.value)return!1;if(o+=a.value.length,a.done||o>=n)return!0}}iter(e=1){return new rl(this,e)}iterRange(e,t=this.length){return new Fv(this,e,t)}iterLines(e,t){let n;if(e==null)n=this.iter();else{t==null&&(t=this.lines+1);let a=this.line(e).from;n=this.iterRange(a,Math.max(a,t==this.lines+1?this.length:t<=1?0:this.line(t-1).to))}return new Uv(n)}toString(){return this.sliceString(0)}toJSON(){let e=[];return this.flatten(e),e}constructor(){}static of(e){if(e.length==0)throw new RangeError("A document must have at least one line");return e.length==1&&!e[0]?Tt.empty:e.length<=32?new on(e):fa.from(on.split(e,[]))}}class on extends Tt{constructor(e,t=fM(e)){super(),this.text=e,this.length=t}get lines(){return this.text.length}get children(){return null}lineInner(e,t,n,a){for(let i=0;;i++){let s=this.text[i],o=a+s.length;if((t?n:o)>=e)return new gM(a,o,n,s);a=o+1,n++}}decompose(e,t,n,a){let i=e<=0&&t>=this.length?this:new on(s0(this.text,e,t),Math.min(t,this.length)-Math.max(0,e));if(a&1){let s=n.pop(),o=Dc(i.text,s.text.slice(),0,i.length);if(o.length<=32)n.push(new on(o,s.length+i.length));else{let l=o.length>>1;n.push(new on(o.slice(0,l)),new on(o.slice(l)))}}else n.push(i)}replace(e,t,n){if(!(n instanceof on))return super.replace(e,t,n);let a=Dc(this.text,Dc(n.text,s0(this.text,0,e)),t),i=this.length+n.length-(t-e);return a.length<=32?new on(a,i):fa.from(on.split(a,[]),i)}sliceString(e,t=this.length,n=` +var Rx=Object.defineProperty;var Cx=(r,e,t)=>e in r?Rx(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t;var A=(r,e,t)=>(Cx(r,typeof e!="symbol"?e+"":e,t),t),od=(r,e,t)=>{if(!e.has(r))throw TypeError("Cannot "+t)};var X=(r,e,t)=>(od(r,e,"read from private field"),t?t.call(r):e.get(r)),dt=(r,e,t)=>{if(e.has(r))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(r):e.set(r,t)},Je=(r,e,t,n)=>(od(r,e,"write to private field"),n?n.call(r,t):e.set(r,t),t);var tc=(r,e,t,n)=>({set _(a){Je(r,e,a,t)},get _(){return X(r,e,n)}}),We=(r,e,t)=>(od(r,e,"access private method"),t);(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const a of document.querySelectorAll('link[rel="modulepreload"]'))n(a);new MutationObserver(a=>{for(const i of a)if(i.type==="childList")for(const s of i.addedNodes)s.tagName==="LINK"&&s.rel==="modulepreload"&&n(s)}).observe(document,{childList:!0,subtree:!0});function t(a){const i={};return a.integrity&&(i.integrity=a.integrity),a.referrerPolicy&&(i.referrerPolicy=a.referrerPolicy),a.crossOrigin==="use-credentials"?i.credentials="include":a.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function n(a){if(a.ep)return;a.ep=!0;const i=t(a);fetch(a.href,i)}})();let Hn=[],Ax=(r,e)=>{let t,n=[],a={lc:0,l:e||0,value:r,set(i){a.value=i,a.notify()},get(){return a.lc||a.listen(()=>{})(),a.value},notify(i){t=n;let s=!Hn.length;for(let o=0;o{n===t&&(n=n.slice());let o=n.indexOf(i);~o&&(n.splice(o,2),a.lc--,a.lc||a.off())}},subscribe(i,s){let o=a.listen(i,s);return i(a.value),o},off(){}};return a},wx=(r={})=>{let e=Ax(r);return e.setKey=function(t,n){typeof n>"u"?t in e.value&&(e.value={...e.value},delete e.value[t],e.notify(t)):e.value[t]!==n&&(e.value={...e.value,[t]:n},e.notify(t))},e};if(typeof DelayNode<"u"){class r extends DelayNode{constructor(t,n,a,i){super(t),n=Math.abs(n),this.delayTime.value=a;const s=t.createGain();s.gain.value=Math.min(Math.abs(i),.995),this.feedback=s.gain;const o=t.createGain();return o.gain.value=n,this.delayGain=o,this.connect(s),this.connect(o),s.connect(this),this.connect=l=>o.connect(l),this}start(t){this.delayGain.gain.setValueAtTime(this.delayGain.gain.value,t+this.delayTime.value)}}AudioContext.prototype.createFeedbackDelay=function(e,t,n){return new r(this,e,t,n)}}var l_={};l_.generateReverb=function(r,e){for(var t=r.audioContext||new AudioContext,n=t.sampleRate,a=r.numChannels||2,i=r.decayTime*1.5,s=Math.round(r.decayTime*n),o=Math.round(i*n),l=Math.round((r.fadeInTime||0)*n),c=Math.pow(1/1e3,1/s),u=t.createBuffer(a,o,n),m=0;m{i.duration=s,i.fade=o,i.lp=l,i.dim=c,i.ir=u,u?i.buffer=this.adjustLength(s,u):l_.generateReverb({audioContext:this,numChannels:2,decayTime:s,fadeInTime:o,lpFreqStart:l,lpFreqEnd:c},m=>{i.buffer=m})},i.generate(r,e,t,n,a),i});var Y1={a:{freqs:[660,1120,2750,3e3,3350],gains:[1,.5012,.0708,.0631,.0126],qs:[80,90,120,130,140]},e:{freqs:[440,1800,2700,3e3,3300],gains:[1,.1995,.1259,.1,.1],qs:[70,80,100,120,120]},i:{freqs:[270,1850,2900,3350,3590],gains:[1,.0631,.0631,.0158,.0158],qs:[40,90,100,120,120]},o:{freqs:[430,820,2700,3e3,3300],gains:[1,.3162,.0501,.0794,.01995],qs:[40,80,100,120,120]},u:{freqs:[370,630,2750,3e3,3400],gains:[1,.1,.0708,.0316,.01995],qs:[40,60,100,120,120]}};if(typeof GainNode<"u"){class r extends GainNode{constructor(t,n){if(super(t),!Y1[n])throw new Error("vowel: unknown vowel "+n);const{gains:a,qs:i,freqs:s}=Y1[n],o=t.createGain();for(let l=0;l<5;l++){const c=t.createGain();c.gain.value=a[l];const u=t.createBiquadFilter();u.type="bandpass",u.Q.value=i[l],u.frequency.value=s[l],this.connect(u),u.connect(c),c.connect(o)}return o.gain.value=8,this.connect=l=>o.connect(l),this}}AudioContext.prototype.createVowelFilter=function(e){return new r(this,e)}}const xx=r=>{var a;if(typeof r!="string")return[];const[e,t="",n]=((a=r.match(/^([a-gA-G])([#bsf]*)([0-9]*)$/))==null?void 0:a.slice(1))||[];return e?[e,t,n?Number(n):void 0]:[]},kx={c:0,d:2,e:4,f:5,g:7,a:9,b:11},Mx={"#":1,b:-1,s:1,f:-1},Yu=(r,e=3)=>{const[t,n,a=e]=xx(r);if(!t)throw new Error('not a note: "'+r+'"');const i=kx[t.toLowerCase()],s=(n==null?void 0:n.split("").reduce((o,l)=>o+Mx[l],0))||0;return(Number(a)+1)*12+i+s},Cv=r=>Math.pow(2,(r-69)/12)*440,$f=(r,e,t)=>Math.min(Math.max(r,e),t),Lx=r=>12*Math.log(r/440)/Math.LN2+69,Px=(r,e)=>{if(typeof r!="object")throw new Error("valueToMidi: expected object value");let{freq:t,note:n}=r;if(typeof t=="number")return Lx(t);if(typeof n=="string")return Yu(n);if(typeof n=="number")return n;if(!e)throw new Error("valueToMidi: expected freq or note to be set");return e},Bx="data:application/javascript;base64,Ly8gTElDRU5TRSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2My4wIHNlZSBodHRwczovL2dpdGh1Yi5jb20vZGt0cjAvV2ViRGlydC9ibG9iL21haW4vTElDRU5TRQovLyBhbGwgdGhlIGNyZWRpdCBnb2VzIHRvIGRrdHIwJ3Mgd2ViZGlydDogaHR0cHM6Ly9naXRodWIuY29tL2RrdHIwL1dlYkRpcnQvYmxvYi81Y2UzZDY5ODM2MmM1NGQ2ZTFiNjhhY2M0N2ViMjk1NWFjNjJjNzkzL2Rpc3QvQXVkaW9Xb3JrbGV0cy5qcwovLyA8MwoKY2xhc3MgQ29hcnNlUHJvY2Vzc29yIGV4dGVuZHMgQXVkaW9Xb3JrbGV0UHJvY2Vzc29yIHsKICBzdGF0aWMgZ2V0IHBhcmFtZXRlckRlc2NyaXB0b3JzKCkgewogICAgcmV0dXJuIFt7IG5hbWU6ICdjb2Fyc2UnLCBkZWZhdWx0VmFsdWU6IDEgfV07CiAgfQoKICBjb25zdHJ1Y3RvcigpIHsKICAgIHN1cGVyKCk7CiAgICB0aGlzLm5vdFN0YXJ0ZWQgPSB0cnVlOwogIH0KCiAgcHJvY2VzcyhpbnB1dHMsIG91dHB1dHMsIHBhcmFtZXRlcnMpIHsKICAgIGNvbnN0IGlucHV0ID0gaW5wdXRzWzBdOwogICAgY29uc3Qgb3V0cHV0ID0gb3V0cHV0c1swXTsKICAgIGNvbnN0IGNvYXJzZSA9IHBhcmFtZXRlcnMuY29hcnNlOwogICAgY29uc3QgYmxvY2tTaXplID0gMTI4OwogICAgY29uc3QgaGFzSW5wdXQgPSAhKGlucHV0WzBdID09PSB1bmRlZmluZWQpOwogICAgaWYgKGhhc0lucHV0KSB7CiAgICAgIHRoaXMubm90U3RhcnRlZCA9IGZhbHNlOwogICAgICBvdXRwdXRbMF1bMF0gPSBpbnB1dFswXVswXTsKICAgICAgZm9yIChsZXQgbiA9IDE7IG4gPCBibG9ja1NpemU7IG4rKykgewogICAgICAgIGZvciAobGV0IG8gPSAwOyBvIDwgb3V0cHV0Lmxlbmd0aDsgbysrKSB7CiAgICAgICAgICBvdXRwdXRbb11bbl0gPSBuICUgY29hcnNlID09IDAgPyBpbnB1dFswXVtuXSA6IG91dHB1dFtvXVtuIC0gMV07CiAgICAgICAgfQogICAgICB9CiAgICB9CiAgICByZXR1cm4gdGhpcy5ub3RTdGFydGVkIHx8IGhhc0lucHV0OwogIH0KfQoKcmVnaXN0ZXJQcm9jZXNzb3IoJ2NvYXJzZS1wcm9jZXNzb3InLCBDb2Fyc2VQcm9jZXNzb3IpOwoKY2xhc3MgQ3J1c2hQcm9jZXNzb3IgZXh0ZW5kcyBBdWRpb1dvcmtsZXRQcm9jZXNzb3IgewogIHN0YXRpYyBnZXQgcGFyYW1ldGVyRGVzY3JpcHRvcnMoKSB7CiAgICByZXR1cm4gW3sgbmFtZTogJ2NydXNoJywgZGVmYXVsdFZhbHVlOiAwIH1dOwogIH0KCiAgY29uc3RydWN0b3IoKSB7CiAgICBzdXBlcigpOwogICAgdGhpcy5ub3RTdGFydGVkID0gdHJ1ZTsKICB9CgogIHByb2Nlc3MoaW5wdXRzLCBvdXRwdXRzLCBwYXJhbWV0ZXJzKSB7CiAgICBjb25zdCBpbnB1dCA9IGlucHV0c1swXTsKICAgIGNvbnN0IG91dHB1dCA9IG91dHB1dHNbMF07CiAgICBjb25zdCBjcnVzaCA9IHBhcmFtZXRlcnMuY3J1c2g7CiAgICBjb25zdCBibG9ja1NpemUgPSAxMjg7CiAgICBjb25zdCBoYXNJbnB1dCA9ICEoaW5wdXRbMF0gPT09IHVuZGVmaW5lZCk7CiAgICBpZiAoaGFzSW5wdXQpIHsKICAgICAgdGhpcy5ub3RTdGFydGVkID0gZmFsc2U7CiAgICAgIGlmIChjcnVzaC5sZW5ndGggPT09IDEpIHsKICAgICAgICBjb25zdCB4ID0gTWF0aC5wb3coMiwgY3J1c2hbMF0gLSAxKTsKICAgICAgICBmb3IgKGxldCBuID0gMDsgbiA8IGJsb2NrU2l6ZTsgbisrKSB7CiAgICAgICAgICBjb25zdCB2YWx1ZSA9IE1hdGgucm91bmQoaW5wdXRbMF1bbl0gKiB4KSAvIHg7CiAgICAgICAgICBmb3IgKGxldCBvID0gMDsgbyA8IG91dHB1dC5sZW5ndGg7IG8rKykgewogICAgICAgICAgICBvdXRwdXRbb11bbl0gPSB2YWx1ZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZm9yIChsZXQgbiA9IDA7IG4gPCBibG9ja1NpemU7IG4rKykgewogICAgICAgICAgbGV0IHggPSBNYXRoLnBvdygyLCBjcnVzaFtuXSAtIDEpOwogICAgICAgICAgY29uc3QgdmFsdWUgPSBNYXRoLnJvdW5kKGlucHV0WzBdW25dICogeCkgLyB4OwogICAgICAgICAgZm9yIChsZXQgbyA9IDA7IG8gPCBvdXRwdXQubGVuZ3RoOyBvKyspIHsKICAgICAgICAgICAgb3V0cHV0W29dW25dID0gdmFsdWU7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICB9CiAgICByZXR1cm4gdGhpcy5ub3RTdGFydGVkIHx8IGhhc0lucHV0OwogIH0KfQpyZWdpc3RlclByb2Nlc3NvcignY3J1c2gtcHJvY2Vzc29yJywgQ3J1c2hQcm9jZXNzb3IpOwoKY2xhc3MgU2hhcGVQcm9jZXNzb3IgZXh0ZW5kcyBBdWRpb1dvcmtsZXRQcm9jZXNzb3IgewogIHN0YXRpYyBnZXQgcGFyYW1ldGVyRGVzY3JpcHRvcnMoKSB7CiAgICByZXR1cm4gW3sgbmFtZTogJ3NoYXBlJywgZGVmYXVsdFZhbHVlOiAwIH1dOwogIH0KCiAgY29uc3RydWN0b3IoKSB7CiAgICBzdXBlcigpOwogICAgdGhpcy5ub3RTdGFydGVkID0gdHJ1ZTsKICB9CgogIHByb2Nlc3MoaW5wdXRzLCBvdXRwdXRzLCBwYXJhbWV0ZXJzKSB7CiAgICBjb25zdCBpbnB1dCA9IGlucHV0c1swXTsKICAgIGNvbnN0IG91dHB1dCA9IG91dHB1dHNbMF07CiAgICBjb25zdCBzaGFwZTAgPSBwYXJhbWV0ZXJzLnNoYXBlWzBdOwogICAgY29uc3Qgc2hhcGUxID0gc2hhcGUwIDwgMSA/IHNoYXBlMCA6IDEuMCAtIDRlLTEwOwogICAgY29uc3Qgc2hhcGUgPSAoMi4wICogc2hhcGUxKSAvICgxLjAgLSBzaGFwZTEpOwogICAgY29uc3QgYmxvY2tTaXplID0gMTI4OwogICAgY29uc3QgaGFzSW5wdXQgPSAhKGlucHV0WzBdID09PSB1bmRlZmluZWQpOwogICAgaWYgKGhhc0lucHV0KSB7CiAgICAgIHRoaXMubm90U3RhcnRlZCA9IGZhbHNlOwogICAgICBmb3IgKGxldCBuID0gMDsgbiA8IGJsb2NrU2l6ZTsgbisrKSB7CiAgICAgICAgY29uc3QgdmFsdWUgPSAoKDEgKyBzaGFwZSkgKiBpbnB1dFswXVtuXSkgLyAoMSArIHNoYXBlICogTWF0aC5hYnMoaW5wdXRbMF1bbl0pKTsKICAgICAgICBmb3IgKGxldCBvID0gMDsgbyA8IG91dHB1dC5sZW5ndGg7IG8rKykgewogICAgICAgICAgb3V0cHV0W29dW25dID0gdmFsdWU7CiAgICAgICAgfQogICAgICB9CiAgICB9CiAgICByZXR1cm4gdGhpcy5ub3RTdGFydGVkIHx8IGhhc0lucHV0OwogIH0KfQoKcmVnaXN0ZXJQcm9jZXNzb3IoJ3NoYXBlLXByb2Nlc3NvcicsIFNoYXBlUHJvY2Vzc29yKTsK";function zc(r){const e=Dt().createGain();return e.gain.value=r,e}const c_=(r,e,t,n,a,i)=>{const s=Dt().createGain();return s.gain.setValueAtTime(0,i),s.gain.linearRampToValueAtTime(a,i+r),s.gain.linearRampToValueAtTime(t*a,i+r+e),{node:s,stop:o=>{s.gain.setValueAtTime(t*a,o),s.gain.linearRampToValueAtTime(0,o+n)}}},Yx=(r,e,t,n,a,i)=>{t=Math.max(.001,t),a=Math.max(.001,a);const s=Dt().createGain();return s.gain.setValueAtTime(1e-4,i),s.gain.exponentialRampToValueAtTime(a,i+r),s.gain.exponentialRampToValueAtTime(t*a,i+r+e),{node:s,stop:o=>{s.gain.exponentialRampToValueAtTime(1e-4,o+n)}}},Fx=(r,e,t,n,a,i,s,o,l)=>{const c=s-i,u=i+c,m=i+n*c;r.setValueAtTime(i,o),r.linearRampToValueAtTime(u,o+e),r.linearRampToValueAtTime(m,o+e+t),r.setValueAtTime(m,l),r.linearRampToValueAtTime(i,l+Math.max(a,.1))};function Ux(r,e,t,n,a,i){const s={threshold:e??-3,ratio:t??10,knee:n??10,attack:a??.005,release:i??.05};return new DynamicsCompressorNode(r,s)}function ld(r,e,t,n,a,i,s,o,l,c,u,m=.5){const f=r.createBiquadFilter();if(f.type=e,f.Q.value=n,f.frequency.value=t,!isNaN(l)&&l!==0){const _=l*m,O=$f(2**-_*t,0,2e4),w=$f(2**(l-_)*t,0,2e4);return Fx(f.frequency,a,i,s,o,O,w,c,u),f}return f}let F1=r=>r<.5?1:1-(r-.5)/.5;function $x(r,e,t=0){const n=Dt();if(!t)return r;let a=n.createGain(),i=n.createGain();r.connect(a),e.connect(i),a.gain.value=F1(t),i.gain.value=F1(1-t);let s=n.createGain();return a.connect(s),i.connect(s),s}let Gx=r=>console.log(r);const zs=(...r)=>Gx(...r),cd={};function Qx(r,e){var t=e?1e3:1024;if(r=t);return r.toFixed(1)+" "+n[a]}const qx=async(r,e,t,n,a,i,s)=>{let o=0;a!==void 0&&t!==void 0&&zs("[sampler] hap has note and freq. ignoring note","warning");let l=Px({freq:a,note:t},36);o=l-36;const c=Dt();let u;if(Array.isArray(i))u=i[e%i.length];else{const O=I=>Yu(I)-l,w=Object.keys(i).filter(I=>!I.startsWith("_")).reduce((I,k,$)=>!I||Math.abs(O(k)){const a=t?`sound "${t}:${n}"`:"sample";if(r=r.replace("#","%23"),!cd[r]){zs(`[sampler] load ${a}..`,"load-sample",{url:r});const i=Date.now();cd[r]=fetch(r).then(s=>s.arrayBuffer()).then(async s=>{const o=Date.now()-i,l=Qx(s.byteLength);return zs(`[sampler] load ${a}... done! loaded ${l} in ${o}ms`,"loaded-sample",{url:r}),await e.decodeAudioData(s)})}return cd[r]};function Vx(r){const e=Dt(),t=e.createBuffer(r.numberOfChannels,r.length,e.sampleRate);for(let n=0;nObject.entries(r).forEach(([n,a])=>{if(typeof a=="string"&&(a=[a]),typeof a!="object")throw new Error("wrong sample map format for "+n);t=a._base||t;const i=s=>(t+s).replace("github:","https://raw.githubusercontent.com/");Array.isArray(a)?a=a.map(i):a=Object.fromEntries(Object.entries(a).map(([s,o])=>[s,(typeof o=="string"?[o]:o).map(i)])),e(n,a)});let zx={};function Wx(r){const e=Object.entries(zx).find(([t])=>r.startsWith(t));if(e)return e[1]}const Fa=async(r,e=r._base||"",t={})=>{if(typeof r=="string"){const i=Wx(r);if(i)return i(r);if(r.startsWith("bubo:")){const[o,l]=r.split(":");r=`github:Bubobubobubobubo/dough-${l}`}if(r.startsWith("github:")){let[o,l]=r.split("github:");l=l.endsWith("/")?l.slice(0,-1):l,l.split("/").length===2&&(l+="/main"),r=`https://raw.githubusercontent.com/${l}/strudel.json`}if(r.startsWith("shabda:")){let[o,l]=r.split("shabda:");r=`https://shabda.ndre.gr/${l}.json?strudel=1`}if(r.startsWith("shabda/speech")){let[o,l]=r.split("shabda/speech");l=l.startsWith("/")?l.substring(1):l;let[c,u]=l.split(":"),m="f",f="en-GB";c&&([f,m]=c.split("/")),r=`https://shabda.ndre.gr/speech/${u}.json?gender=${m}&language=${f}&strudel=1'`}if(typeof fetch!="function")return;const s=r.split("/").slice(0,-1).join("/");return typeof fetch>"u"?void 0:fetch(r).then(o=>o.json()).then(o=>Fa(o,e||o._base||s,t)).catch(o=>{throw console.error(o),new Error(`error loading "${r}"`)})}const{prebake:n,tag:a}=t;Hx(r,(i,s)=>u_(i,(o,l,c)=>Xx(o,l,c,s),{type:"sample",samples:s,baseUrl:e,prebake:n,tag:a}),e)},U1=[];async function Xx(r,e,t,n,a){let{s:i,freq:s,unit:o,nudge:l=0,cut:c,loop:u,clip:m=void 0,n:f=0,note:_,speed:O=1,loopBegin:w=0,begin:I=0,loopEnd:k=1,end:$=1,vib:z,vibmod:p=.5}=e;if(O===0)return;u=i.startsWith("wt_")?1:e.loop;const S=Dt(),{attack:b=.001,decay:N=.001,sustain:L=1,release:Y=.001}=e,B=r+l,Q=await qx(i,f,_,O,s,n,a);let ee;if(z>0){ee=Dt().createOscillator(),ee.frequency.value=z;const q=Dt().createGain();q.gain.value=p*100,ee.connect(q),q.connect(Q.detune),ee.start(0)}if(S.currentTime>r){zs(`[sampler] still loading sound "${i}:${f}"`,"highlight");return}if(!Q){zs(`[sampler] could not load "${i}:${f}"`,"error");return}Q.playbackRate.value=Math.abs(O)*Q.playbackRate.value,o==="c"&&(Q.playbackRate.value=Q.playbackRate.value*Q.buffer.duration*1);const se=I*Q.buffer.duration;u&&(Q.loop=!0,Q.loopStart=w*Q.buffer.duration-se,Q.loopEnd=k*Q.buffer.duration-se),Q.start(B,se);const{node:ae,stop:re}=c_(b,N,L,Y,1,r);Q.connect(ae);const D=S.createGain();ae.connect(D),Q.onended=function(){Q.disconnect(),ee==null||ee.stop(),ae.disconnect(),D.disconnect(),t()};const P={node:D,bufferSource:Q,stop:(q,H=m===void 0&&u===void 0)=>{let te=q;if(H){const ie=Q.buffer.duration/Q.playbackRate.value;te=r+($-I)*ie}Q.stop(te+Y),re(te)}};if(c!==void 0){const q=U1[c];q&&(q.node.gain.setValueAtTime(1,B),q.node.gain.linearRampToValueAtTime(0,B+.01)),U1[c]=P}return P}const Fu=wx();function u_(r,e,t={}){Fu.setKey(r,{onTrigger:e,data:t})}function ud(r){return Fu.get()[r]}let dd;const Dt=()=>(dd||(dd=new AudioContext),dd);let nc;const d_=()=>{const r=Dt();return nc||(nc=r.createGain(),nc.connect(r.destination)),nc};let md;function Kx(){return md||(md=Dt().audioWorklet.addModule(Bx),md)}function hd(r,e,t){const n=new AudioWorkletNode(r,e);return Object.entries(t).forEach(([a,i])=>{n.parameters.get(a).value=i}),n}async function Zx(r={}){const{disableWorklets:e=!1}=r;typeof window<"u"&&(await Dt().resume(),e?console.log("disableWorklets: AudioWorklet effects coarse, crush and shape are skipped!"):await Kx().catch(t=>{console.warn("could not load AudioWorklet effects coarse, crush and shape",t)}))}async function jx(r){return new Promise(e=>{document.addEventListener("click",async function t(){await Zx(r),e(),document.removeEventListener("click",t)})})}let Pi={};function Jx(r,e,t,n){var a;if(t=$f(t,0,.98),!Pi[r]){const i=Dt().createFeedbackDelay(1,e,t);(a=i.start)==null||a.call(i,n),i.connect(d_()),Pi[r]=i}return Pi[r].delayTime.value!==e&&Pi[r].delayTime.setValueAtTime(e,n),Pi[r].feedback.value!==t&&Pi[r].feedback.setValueAtTime(t,n),Pi[r]}const ai={};function ek(r,e,t=1,n=.5,a=1e3,i=2e3){const s=Dt(),o=s.createGain();o.gain.value=i,ai[r]==null&&(ai[r]=s.createOscillator(),ai[r].frequency.value=t,ai[r].type="sine",ai[r].start()),ai[r].connect(o),ai[r].frequency.value!=t&&ai[r].frequency.setValueAtTime(t,e);const l=2;let c=0;const u=[];for(let m=0;m0&&u[m-1].connect(f),u.push(f)}return u[u.length-1]}let Pa={},rc=(r,e)=>r!==void 0&&r!==e;function tk(r,e,t,n,a,i){if(!Pa[r]){const s=Dt().createReverb(e,t,n,a,i);s.connect(d_()),Pa[r]=s}return(rc(e,Pa[r].duration)||rc(t,Pa[r].fade)||rc(n,Pa[r].lp)||rc(a,Pa[r].dim)||Pa[r].ir!==i)&&Pa[r].generate(e,t,n,a,i),Pa[r]}let Bi;function Gf(r=2048){if(!Bi){const e=Dt().createAnalyser();e.fftSize=r,Bi=e,new Float32Array(Bi.frequencyBinCount)}return Bi.fftSize!==r&&(Bi.fftSize=r,new Float32Array(Bi.frequencyBinCount)),Bi}function pd(r,e,t){const n=zc(t);return r.connect(n),n.connect(e),n}const nk=async(r,e,t)=>{const n=Dt();if(typeof r!="object")throw new Error(`expected hap.value to be an object, but got "${r}". Hint: append .note() or .s() to the end`,"error");r.duration=t;let a=n.currentTime+e,{s:i="triangle",bank:s,source:o,gain:l=.8,postgain:c=1,ftype:u="12db",fanchor:m=.5,cutoff:f,lpenv:_,lpattack:O=.01,lpdecay:w=.01,lpsustain:I=1,lprelease:k=.01,resonance:$=1,hpenv:z,hcutoff:p,hpattack:S=.01,hpdecay:b=.01,hpsustain:N=1,hprelease:L=.01,hresonance:Y=1,bpenv:B,bandf:Q,bpattack:ee=.01,bpdecay:se=.01,bpsustain:ae=1,bprelease:re=.01,bandq:D=1,phaser:P,phaserdepth:q=.75,phasersweep:H,phasercenter:te,coarse:ie,crush:_e,shape:Ce,pan:we,vowel:ve,delay:Ie=0,delayfeedback:de=.5,delaytime:Pe=.25,orbit:Ze=1,room:Ye,roomfade:st,roomlp:mt,roomdim:Et,roomsize:It,ir:gt,i:Nt=0,velocity:Lt=1,analyze:Pn,fft:He=8,compressor:ln,compressorRatio:nt,compressorKnee:Xe,compressorAttack:Bn,compressorRelease:cn}=r;l*=Lt;let pn=[];const j=()=>{pn.forEach(Be=>Be==null?void 0:Be.disconnect())};s&&i&&(i=`${s}_${i}`);let be;if(o)be=o(a,r,t);else if(ud(i)){const{onTrigger:Be}=ud(i),_t=await Be(a,r,j);_t&&(be=_t.node,_t.stop(a+t))}else throw new Error(`sound ${i} not found! Is it loaded?`);if(!be)return;if(n.currentTime>a){zs("[webaudio] skip hap: still loading",n.currentTime-a);return}const ye=[];if(ye.push(be),ye.push(zc(l)),f!==void 0){let Be=()=>ld(n,"lowpass",f,$,O,w,I,k,_,a,a+t,m);ye.push(Be()),u==="24db"&&ye.push(Be())}if(p!==void 0){let Be=()=>ld(n,"highpass",p,Y,S,b,N,L,z,a,a+t,m);ye.push(Be()),u==="24db"&&ye.push(Be())}if(Q!==void 0){let Be=()=>ld(n,"bandpass",Q,D,ee,se,ae,re,B,a,a+t,m);ye.push(Be()),u==="24db"&&ye.push(Be())}if(ve!==void 0){const Be=n.createVowelFilter(ve);ye.push(Be)}if(ie!==void 0&&ye.push(hd(n,"coarse-processor",{coarse:ie})),_e!==void 0&&ye.push(hd(n,"crush-processor",{crush:_e})),Ce!==void 0&&ye.push(hd(n,"shape-processor",{shape:Ce})),ln!==void 0&&ye.push(Ux(n,ln,nt,Xe,Bn,cn)),we!==void 0){const Be=n.createStereoPanner();Be.pan.value=2*we-1,ye.push(Be)}if(P!==void 0&&q>0){const Be=ek(Ze,a,P,q,te,H);ye.push(Be)}const xe=zc(c);ye.push(xe),xe.connect(d_());let et;if(Ie>0&&Pe>0&&de>0){const Be=Jx(Ze,Pe,de,a);et=pd(xe,Be,Ie)}let Ne;if(Ye>0){let Be;if(gt!==void 0){let In,ot=ud(gt);Array.isArray(ot)?In=ot.data.samples[Nt%ot.data.samples.length]:typeof ot=="object"&&(In=Object.values(ot.data.samples).flat()[Nt%Object.values(ot.data.samples).length]),Be=await Av(In,n,gt,0)}const _t=tk(Ze,It,st,mt,Et,Be);Ne=pd(xe,_t,Ye)}let $t;if(Pn){const Be=Gf(2**(He+5));$t=pd(xe,Be,Pn)}ye.slice(1).reduce((Be,_t)=>Be.connect(_t),ye[0]),pn=ye.concat([et,Ne,$t])};let fd={};function rk(r){const e=Dt();if(fd[r])return fd[r];const t=2*e.sampleRate,n=e.createBuffer(1,t,e.sampleRate),a=n.getChannelData(0);let i=0,s,o,l,c,u,m,f;s=o=l=c=u=m=f=0;for(let _=0;_t.stop(n)}}function ak(r,e,t){const n=wv("pink",t);return{node:$x(r,n.node,e),stop:a=>n==null?void 0:n.stop(a)}}const ik=(r,e=1,t="sine")=>{const n=Dt(),a=n.createOscillator();a.type=t,a.frequency.value=r,a.start();const i=new GainNode(n,{gain:e});return a.connect(i),{node:i,stop:s=>a.stop(s)}},sk=(r,e,t,n="sine")=>{const a=r.frequency.value*e,i=a*t;return ik(a,i,n)},$1=["sine","square","triangle","sawtooth"],ok=["pink","white","brown"];function lk(){[...$1,...ok].forEach(r=>{u_(r,(e,t,n)=>{let{attack:a=.001,decay:i=.05,sustain:s=.6,release:o=.01}=t,l;$1.includes(r)?l=uk(r,e,t):l=wv(r,e);let{node:c,stop:u,triggerRelease:m}=l;const f=zc(.3),{node:_,stop:O}=c_(a,i,s,o,1,e);return c.onended=()=>{c.disconnect(),f.disconnect(),n()},{node:c.connect(f).connect(_),stop:w=>{O(w),m==null||m(w);let I=w+o;u(I)}}},{type:"synth",prebake:!0})})}function ck(r,e){const t=new Float32Array(r+1),n=new Float32Array(r+1),a=Dt(),i=a.createOscillator(),s={sawtooth:c=>[0,-1/c],square:c=>[0,c%2===0?0:1/c],triangle:c=>[c%2===0?0:1/(c*c),0]};if(!s[e])throw new Error(`unknown wave type ${e}`);t[0]=0,n[0]=0;let o=1;for(;o<=r;){const[c,u]=s[e](o);t[o]=c,n[o]=u,o++}const l=a.createPeriodicWave(t,n);return i.setPeriodicWave(l),i}function uk(r,e,{n:t,note:n,freq:a,vib:i=0,vibmod:s=.5,noise:o=0,fmh:l=1,fmi:c,fmenv:u="lin",fmattack:m,fmdecay:f,fmsustain:_,fmrelease:O,fmvelocity:w,fmwave:I="sine"}){Dt();let k;!t||r==="sine"?(k=Dt().createOscillator(),k.type=r||"triangle"):k=ck(t,r),n=n||36,typeof n=="string"&&(n=Yu(n)),!a&&typeof n=="number"&&(a=Cv(n)),k.frequency.value=Number(a),k.start(e);let $,z;if(c){const{node:b,stop:N}=sk(k,l,c,I);[m,f,_,O,w].find(L=>L!==void 0)?(m=m??.001,f=f??.001,_=_??1,O=O??.001,w=w??1,z=c_(m,f,_,O,w,e),u==="exp"&&(z=Yx(m,f,_,O,w,e),z.node.maxValue=c*2,z.node.minValue=1e-5),b.connect(z.node),z.node.connect(k.frequency)):b.connect(k.frequency),$=N}let p;if(i>0){p=Dt().createOscillator(),p.frequency.value=i;const b=Dt().createGain();b.gain.value=s*100,p.connect(b),b.connect(k.detune),p.start(e)}let S;return o&&(S=ak(k,o,e)),{node:(S==null?void 0:S.node)||k,stop:b=>{p==null||p.stop(b),S==null||S.stop(b),$==null||$(b),k.stop(b)},triggerRelease:b=>{z==null||z.stop(b)}}}function dk(r=1,e=.05,t=220,n=0,a=0,i=.1,s=0,o=1,l=0,c=0,u=0,m=0,f=0,_=0,O=0,w=0,I=0,k=1,$=0,z=0){let p=Math.PI*2,S=Dt().sampleRate,b=H=>H>0?1:-1,N=l*=500*p/S/S,L=t*=(1+e*2*Math.random()-e)*p/S,Y=[],B=0,Q=0,ee=0,se=1,ae=0,re=0,D=0,P,q;for(n=n*S+9,$*=S,a*=S,i*=S,I*=S,c*=500*p/S**3,O*=p/S,u*=p/S,m*=S,f=f*S|0,q=n+$+a+i+I|0;ee1?s>2?s>3?Math.sin((B%p)**3):Math.max(Math.min(Math.tan(B),1),-1):1-(2*B/p%2+2)%2:1-4*Math.abs(Math.round(B/p)-B/p):Math.sin(B),D=(f?1-z+z*Math.sin(p*ee/f):1)*b(D)*Math.abs(D)**o*r*1*(eeee?0:(eem&&(t+=u,L+=u,se=0),f&&!(++ae%f)&&(t=L,l=N,se||(se=1));return Y}const mk=(r,e)=>{let{s:t,note:n=36,freq:a,zrand:i=0,attack:s=0,decay:o=0,sustain:l=.8,release:c=.1,curve:u=1,slide:m=0,deltaSlide:f=0,pitchJump:_=0,pitchJumpTime:O=0,lfo:w=0,znoise:I=0,zmod:k=0,zcrush:$=0,zdelay:z=0,tremolo:p=0,duration:S=.2,zzfx:b}=r;const N=Math.max(S-s-o,0);typeof n=="string"&&(n=Yu(n)),!a&&typeof n=="number"&&(a=Cv(n)),t=t.replace("z_","");const L=["sine","triangle","sawtooth","tan","noise"].indexOf(t)||0;u=t==="square"?0:u;const Y=dk(...b||[.25,i,a,s,N,c,L,u,m,f,_,O,w,I,k,$,z,l,o,p]),B=Dt(),Q=B.createBuffer(1,Y.length,B.sampleRate);Q.getChannelData(0).set(Y);const ee=Dt().createBufferSource();return ee.buffer=Q,ee.start(e),{node:ee}};function hk(){["zzfx","z_sine","z_sawtooth","z_triangle","z_square","z_tan","z_noise"].forEach(r=>{u_(r,(e,t,n)=>{const{node:a}=mk({s:r,...t},e);return a.onended=()=>{a.disconnect(),n()},{node:a,stop:()=>{}}},{type:"synth",prebake:!0})})}let gd;const pk=()=>{};typeof window<"u"&&window.addEventListener("message",r=>{var e;r.data==="strudel-stop"?pk():(e=r.data)!=null&&e.dough&&(gd==null||gd.node.port.postMessage(r.data))});const fk=(r,e,t,n,a)=>{const s=r.interface.feedback.getContext("2d");s&&(s.beginPath(),s.arc(e,t,n,0,Math.PI*2),s.fillStyle=a,s.fill(),s.closePath())},gk=(r,e,t)=>{if(t!==void 0&&t<1&&t>9)return;const n=r.clock.bpm/60/r.clock.time_signature[1]*200,a=r.interface.feedback.getContext("2d"),i=o=>{fk(r,50+o,r.interface.feedback.clientHeight-15,8,"#fdba74")},s=o=>{const l=50+o,c=r.interface.feedback.clientHeight-15,u=8;a.clearRect(l-u,c-u,u*2,u*2)};if(e==="local"&&t!==void 0){const o=t*25;r.blinkTimeouts[o]&&clearTimeout(r.blinkTimeouts[o]),i(o),r.blinkTimeouts[o]=setTimeout(()=>{s(o),r.interface.feedback.getContext("2d").clearRect(0,0,r.interface.feedback.width,r.interface.feedback.height)},n)}},_k=()=>{const r=()=>{requestAnimationFrame(r)};requestAnimationFrame(r)};let _d=null,G1=0;const bk=(r,e)=>{let t=e.osc,n=Gf(t.fftSize),a=new Float32Array(n.frequencyBinCount),i=new Uint8Array(n.frequencyBinCount);const s=r.getContext("2d");let o=0,l=1e3/30;function c(m,f,_,O){const I=performance.now();if(I-(G1||0)<1e3/30)return;G1=I,n.fftSize=e.osc.fftSize*4,n.getByteFrequencyData(i),s.clearRect(0,0,m,f);const $=1,z=Math.floor(i.length*$),p=Math.min(z,e.osc.orientation==="horizontal"?m:f),S=e.osc.orientation==="horizontal"?m/p:f/p;let b,N=0,L=0;s.fillStyle=e.osc.color||"rgb(255, 255, 255)";for(let Y=0;Y=0&&a[z-1]<0?p="negToPos":a[z]<0&&a[z-1]>=0&&(p="posToNeg"),p&&(_d===null||p===_d)){$=z,_d=p;break}}if(e.osc.mode==="freqscope")c(m,f,O,_);else if(e.osc.mode==="3D")for(let z=$;z{throw new Error("This node type doesn't define a deserialize function")})}add(e){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return typeof e!="function"&&(e=En.match(e)),t=>{let n=e(t);return n===void 0?null:[this,n]}}}rt.closedBy=new rt({deserialize:r=>r.split(" ")});rt.openedBy=new rt({deserialize:r=>r.split(" ")});rt.group=new rt({deserialize:r=>r.split(" ")});rt.contextHash=new rt({perNode:!0});rt.lookAhead=new rt({perNode:!0});rt.mounted=new rt({perNode:!0});class Ok{constructor(e,t,n){this.tree=e,this.overlay=t,this.parser=n}}const Ek=Object.create(null);class En{constructor(e,t,n,a=0){this.name=e,this.props=t,this.id=n,this.flags=a}static define(e){let t=e.props&&e.props.length?Object.create(null):Ek,n=(e.top?1:0)|(e.skipped?2:0)|(e.error?4:0)|(e.name==null?8:0),a=new En(e.name||"",t,e.id,n);if(e.props){for(let i of e.props)if(Array.isArray(i)||(i=i(a)),i){if(i[0].perNode)throw new RangeError("Can't store a per-node prop on a node type");t[i[0].id]=i[1]}}return a}prop(e){return this.props[e.id]}get isTop(){return(this.flags&1)>0}get isSkipped(){return(this.flags&2)>0}get isError(){return(this.flags&4)>0}get isAnonymous(){return(this.flags&8)>0}is(e){if(typeof e=="string"){if(this.name==e)return!0;let t=this.prop(rt.group);return t?t.indexOf(e)>-1:!1}return this.id==e}static match(e){let t=Object.create(null);for(let n in e)for(let a of n.split(" "))t[a]=e[n];return n=>{for(let a=n.prop(rt.group),i=-1;i<(a?a.length:0);i++){let s=t[i<0?n.name:a[i]];if(s)return s}}}}En.none=new En("",Object.create(null),0,8);class $l{constructor(e){this.types=e;for(let t=0;t0;for(let l=this.cursor(s|Ft.IncludeAnonymous);;){let c=!1;if(l.from<=i&&l.to>=a&&(!o&&l.type.isAnonymous||t(l)!==!1)){if(l.firstChild())continue;c=!0}for(;c&&n&&(o||!l.type.isAnonymous)&&n(l),!l.nextSibling();){if(!l.parent())return;c=!0}}}prop(e){return e.perNode?this.props?this.props[e.id]:void 0:this.type.prop(e)}get propValues(){let e=[];if(this.props)for(let t in this.props)e.push([+t,this.props[t]]);return e}balance(e={}){return this.children.length<=8?this:p_(En.none,this.children,this.positions,0,this.children.length,0,this.length,(t,n,a)=>new Ct(this.type,t,n,a,this.propValues),e.makeTree||((t,n,a)=>new Ct(En.none,t,n,a)))}static build(e){return Tk(e)}}Ct.empty=new Ct(En.none,[],[],0);class m_{constructor(e,t){this.buffer=e,this.index=t}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}get pos(){return this.index}next(){this.index-=4}fork(){return new m_(this.buffer,this.index)}}class ls{constructor(e,t,n){this.buffer=e,this.length=t,this.set=n}get type(){return En.none}toString(){let e=[];for(let t=0;t0));l=s[l+3]);return o}slice(e,t,n){let a=this.buffer,i=new Uint16Array(t-e),s=0;for(let o=e,l=0;o=e&&te;case 1:return t<=e&&n>e;case 2:return n>e;case 4:return!0}}function Dv(r,e){let t=r.childBefore(e);for(;t;){let n=t.lastChild;if(!n||n.to!=t.to)break;n.type.isError&&n.from==n.to?(r=t,t=n.prevSibling):t=n}return r}function Ws(r,e,t,n){for(var a;r.from==r.to||(t<1?r.from>=e:r.from>e)||(t>-1?r.to<=e:r.to0?o.length:-1;e!=c;e+=t){let u=o[e],m=l[e]+s.from;if(Nv(a,n,m,m+u.length)){if(u instanceof ls){if(i&Ft.ExcludeBuffers)continue;let f=u.findChild(0,u.buffer.length,t,n-m,a);if(f>-1)return new _a(new vk(s,u,e,m),null,f)}else if(i&Ft.IncludeAnonymous||!u.type.isAnonymous||h_(u)){let f;if(!(i&Ft.IgnoreMounts)&&u.props&&(f=u.prop(rt.mounted))&&!f.overlay)return new Pr(f.tree,m,e,s);let _=new Pr(u,m,e,s);return i&Ft.IncludeAnonymous||!_.type.isAnonymous?_:_.nextChild(t<0?u.children.length-1:0,t,n,a)}}}if(i&Ft.IncludeAnonymous||!s.type.isAnonymous||(s.index>=0?e=s.index+t:e=t<0?-1:s._parent._tree.children.length,s=s._parent,!s))return null}}get firstChild(){return this.nextChild(0,1,0,4)}get lastChild(){return this.nextChild(this._tree.children.length-1,-1,0,4)}childAfter(e){return this.nextChild(0,1,e,2)}childBefore(e){return this.nextChild(this._tree.children.length-1,-1,e,-2)}enter(e,t,n=0){let a;if(!(n&Ft.IgnoreOverlays)&&(a=this._tree.prop(rt.mounted))&&a.overlay){let i=e-this.from;for(let{from:s,to:o}of a.overlay)if((t>0?s<=i:s=i:o>i))return new Pr(a.tree,a.overlay[0].from+this.from,-1,this)}return this.nextChild(0,1,e,t,n)}nextSignificantParent(){let e=this;for(;e.type.isAnonymous&&e._parent;)e=e._parent;return e}get parent(){return this._parent?this._parent.nextSignificantParent():null}get nextSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index+1,1,0,4):null}get prevSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index-1,-1,0,4):null}cursor(e=0){return new pl(this,e)}get tree(){return this._tree}toTree(){return this._tree}resolve(e,t=0){return Ws(this,e,t,!1)}resolveInner(e,t=0){return Ws(this,e,t,!0)}enterUnfinishedNodesBefore(e){return Dv(this,e)}getChild(e,t=null,n=null){let a=Wc(this,e,t,n);return a.length?a[0]:null}getChildren(e,t=null,n=null){return Wc(this,e,t,n)}toString(){return this._tree.toString()}get node(){return this}matchContext(e){return Xc(this,e)}}function Wc(r,e,t,n){let a=r.cursor(),i=[];if(!a.firstChild())return i;if(t!=null){for(;!a.type.is(t);)if(!a.nextSibling())return i}for(;;){if(n!=null&&a.type.is(n))return i;if(a.type.is(e)&&i.push(a.node),!a.nextSibling())return n==null?i:[]}}function Xc(r,e,t=e.length-1){for(let n=r.parent;t>=0;n=n.parent){if(!n)return!1;if(!n.type.isAnonymous){if(e[t]&&e[t]!=n.name)return!1;t--}}return!0}class vk{constructor(e,t,n,a){this.parent=e,this.buffer=t,this.index=n,this.start=a}}class _a{get name(){return this.type.name}get from(){return this.context.start+this.context.buffer.buffer[this.index+1]}get to(){return this.context.start+this.context.buffer.buffer[this.index+2]}constructor(e,t,n){this.context=e,this._parent=t,this.index=n,this.type=e.buffer.set.types[e.buffer.buffer[n]]}child(e,t,n){let{buffer:a}=this.context,i=a.findChild(this.index+4,a.buffer[this.index+3],e,t-this.context.start,n);return i<0?null:new _a(this.context,this,i)}get firstChild(){return this.child(1,0,4)}get lastChild(){return this.child(-1,0,4)}childAfter(e){return this.child(1,e,2)}childBefore(e){return this.child(-1,e,-2)}enter(e,t,n=0){if(n&Ft.ExcludeBuffers)return null;let{buffer:a}=this.context,i=a.findChild(this.index+4,a.buffer[this.index+3],t>0?1:-1,e-this.context.start,t);return i<0?null:new _a(this.context,this,i)}get parent(){return this._parent||this.context.parent.nextSignificantParent()}externalSibling(e){return this._parent?null:this.context.parent.nextChild(this.context.index+e,e,0,4)}get nextSibling(){let{buffer:e}=this.context,t=e.buffer[this.index+3];return t<(this._parent?e.buffer[this._parent.index+3]:e.buffer.length)?new _a(this.context,this._parent,t):this.externalSibling(1)}get prevSibling(){let{buffer:e}=this.context,t=this._parent?this._parent.index+4:0;return this.index==t?this.externalSibling(-1):new _a(this.context,this._parent,e.findChild(t,this.index,-1,0,4))}cursor(e=0){return new pl(this,e)}get tree(){return null}toTree(){let e=[],t=[],{buffer:n}=this.context,a=this.index+4,i=n.buffer[this.index+3];if(i>a){let s=n.buffer[this.index+1];e.push(n.slice(a,i,s)),t.push(0)}return new Ct(this.type,e,t,this.to-this.from)}resolve(e,t=0){return Ws(this,e,t,!1)}resolveInner(e,t=0){return Ws(this,e,t,!0)}enterUnfinishedNodesBefore(e){return Dv(this,e)}toString(){return this.context.buffer.childString(this.index)}getChild(e,t=null,n=null){let a=Wc(this,e,t,n);return a.length?a[0]:null}getChildren(e,t=null,n=null){return Wc(this,e,t,n)}get node(){return this}matchContext(e){return Xc(this,e)}}class pl{get name(){return this.type.name}constructor(e,t=0){if(this.mode=t,this.buffer=null,this.stack=[],this.index=0,this.bufferNode=null,e instanceof Pr)this.yieldNode(e);else{this._tree=e.context.parent,this.buffer=e.context;for(let n=e._parent;n;n=n._parent)this.stack.unshift(n.index);this.bufferNode=e,this.yieldBuf(e.index)}}yieldNode(e){return e?(this._tree=e,this.type=e.type,this.from=e.from,this.to=e.to,!0):!1}yieldBuf(e,t){this.index=e;let{start:n,buffer:a}=this.buffer;return this.type=t||a.set.types[a.buffer[e]],this.from=n+a.buffer[e+1],this.to=n+a.buffer[e+2],!0}yield(e){return e?e instanceof Pr?(this.buffer=null,this.yieldNode(e)):(this.buffer=e.context,this.yieldBuf(e.index,e.type)):!1}toString(){return this.buffer?this.buffer.buffer.childString(this.index):this._tree.toString()}enterChild(e,t,n){if(!this.buffer)return this.yield(this._tree.nextChild(e<0?this._tree._tree.children.length-1:0,e,t,n,this.mode));let{buffer:a}=this.buffer,i=a.findChild(this.index+4,a.buffer[this.index+3],e,t-this.buffer.start,n);return i<0?!1:(this.stack.push(this.index),this.yieldBuf(i))}firstChild(){return this.enterChild(1,0,4)}lastChild(){return this.enterChild(-1,0,4)}childAfter(e){return this.enterChild(1,e,2)}childBefore(e){return this.enterChild(-1,e,-2)}enter(e,t,n=this.mode){return this.buffer?n&Ft.ExcludeBuffers?!1:this.enterChild(1,e,t):this.yield(this._tree.enter(e,t,n))}parent(){if(!this.buffer)return this.yieldNode(this.mode&Ft.IncludeAnonymous?this._tree._parent:this._tree.parent);if(this.stack.length)return this.yieldBuf(this.stack.pop());let e=this.mode&Ft.IncludeAnonymous?this.buffer.parent:this.buffer.parent.nextSignificantParent();return this.buffer=null,this.yieldNode(e)}sibling(e){if(!this.buffer)return this._tree._parent?this.yield(this._tree.index<0?null:this._tree._parent.nextChild(this._tree.index+e,e,0,4,this.mode)):!1;let{buffer:t}=this.buffer,n=this.stack.length-1;if(e<0){let a=n<0?0:this.stack[n]+4;if(this.index!=a)return this.yieldBuf(t.findChild(a,this.index,-1,0,4))}else{let a=t.buffer[this.index+3];if(a<(n<0?t.buffer.length:t.buffer[this.stack[n]+3]))return this.yieldBuf(a)}return n<0?this.yield(this.buffer.parent.nextChild(this.buffer.index+e,e,0,4,this.mode)):!1}nextSibling(){return this.sibling(1)}prevSibling(){return this.sibling(-1)}atLastNode(e){let t,n,{buffer:a}=this;if(a){if(e>0){if(this.index-1)for(let i=t+e,s=e<0?-1:n._tree.children.length;i!=s;i+=e){let o=n._tree.children[i];if(this.mode&Ft.IncludeAnonymous||o instanceof ls||!o.type.isAnonymous||h_(o))return!1}return!0}move(e,t){if(t&&this.enterChild(e,0,4))return!0;for(;;){if(this.sibling(e))return!0;if(this.atLastNode(e)||!this.parent())return!1}}next(e=!0){return this.move(1,e)}prev(e=!0){return this.move(-1,e)}moveTo(e,t=0){for(;(this.from==this.to||(t<1?this.from>=e:this.from>e)||(t>-1?this.to<=e:this.to=0;){for(let s=e;s;s=s._parent)if(s.index==a){if(a==this.index)return s;t=s,n=i+1;break e}a=this.stack[--i]}for(let a=n;a=0;i--){if(i<0)return Xc(this.node,e,a);let s=n[t.buffer[this.stack[i]]];if(!s.isAnonymous){if(e[a]&&e[a]!=s.name)return!1;a--}}return!0}}function h_(r){return r.children.some(e=>e instanceof ls||!e.type.isAnonymous||h_(e))}function Tk(r){var e;let{buffer:t,nodeSet:n,maxBufferLength:a=Iv,reused:i=[],minRepeatType:s=n.types.length}=r,o=Array.isArray(t)?new m_(t,t.length):t,l=n.types,c=0,u=0;function m(p,S,b,N,L){let{id:Y,start:B,end:Q,size:ee}=o,se=u;for(;ee<0;)if(o.next(),ee==-1){let q=i[Y];b.push(q),N.push(B-p);return}else if(ee==-3){c=Y;return}else if(ee==-4){u=Y;return}else throw new RangeError(`Unrecognized record size: ${ee}`);let ae=l[Y],re,D,P=B-p;if(Q-B<=a&&(D=w(o.pos-S,L))){let q=new Uint16Array(D.size-D.skip),H=o.pos-D.size,te=q.length;for(;o.pos>H;)te=I(D.start,q,te);re=new ls(q,Q-D.start,n),P=D.start-p}else{let q=o.pos-ee;o.next();let H=[],te=[],ie=Y>=s?Y:-1,_e=0,Ce=Q;for(;o.pos>q;)ie>=0&&o.id==ie&&o.size>=0?(o.end<=Ce-a&&(_(H,te,B,_e,o.end,Ce,ie,se),_e=H.length,Ce=o.end),o.next()):m(B,q,H,te,ie);if(ie>=0&&_e>0&&_e-1&&_e>0){let we=f(ae);re=p_(ae,H,te,0,H.length,0,Q-B,we,we)}else re=O(ae,H,te,Q-B,se-Q)}b.push(re),N.push(P)}function f(p){return(S,b,N)=>{let L=0,Y=S.length-1,B,Q;if(Y>=0&&(B=S[Y])instanceof Ct){if(!Y&&B.type==p&&B.length==N)return B;(Q=B.prop(rt.lookAhead))&&(L=b[Y]+B.length+Q)}return O(p,S,b,N,L)}}function _(p,S,b,N,L,Y,B,Q){let ee=[],se=[];for(;p.length>N;)ee.push(p.pop()),se.push(S.pop()+b-L);p.push(O(n.types[B],ee,se,Y-L,Q-Y)),S.push(L-b)}function O(p,S,b,N,L=0,Y){if(c){let B=[rt.contextHash,c];Y=Y?[B].concat(Y):[B]}if(L>25){let B=[rt.lookAhead,L];Y=Y?[B].concat(Y):[B]}return new Ct(p,S,b,N,Y)}function w(p,S){let b=o.fork(),N=0,L=0,Y=0,B=b.end-a,Q={size:0,start:0,skip:0};e:for(let ee=b.pos-p;b.pos>ee;){let se=b.size;if(b.id==S&&se>=0){Q.size=N,Q.start=L,Q.skip=Y,Y+=4,N+=4,b.next();continue}let ae=b.pos-se;if(se<0||ae=s?4:0,D=b.start;for(b.next();b.pos>ae;){if(b.size<0)if(b.size==-3)re+=4;else break e;else b.id>=s&&(re+=4);b.next()}L=D,N+=se,Y+=re}return(S<0||N==p)&&(Q.size=N,Q.start=L,Q.skip=Y),Q.size>4?Q:void 0}function I(p,S,b){let{id:N,start:L,end:Y,size:B}=o;if(o.next(),B>=0&&N4){let ee=o.pos-(B-4);for(;o.pos>ee;)b=I(p,S,b)}S[--b]=Q,S[--b]=Y-p,S[--b]=L-p,S[--b]=N}else B==-3?c=N:B==-4&&(u=N);return b}let k=[],$=[];for(;o.pos>0;)m(r.start||0,r.bufferStart||0,k,$,-1);let z=(e=r.length)!==null&&e!==void 0?e:k.length?$[0]+k[0].length:0;return new Ct(l[r.topID],k.reverse(),$.reverse(),z)}const q1=new WeakMap;function Ic(r,e){if(!r.isAnonymous||e instanceof ls||e.type!=r)return 1;let t=q1.get(e);if(t==null){t=1;for(let n of e.children){if(n.type!=r||!(n instanceof Ct)){t=1;break}t+=Ic(r,n)}q1.set(e,t)}return t}function p_(r,e,t,n,a,i,s,o,l){let c=0;for(let O=n;O=u)break;b+=N}if(z==p+1){if(b>u){let N=O[p];_(N.children,N.positions,0,N.children.length,w[p]+$);continue}m.push(O[p])}else{let N=w[z-1]+O[z-1].length-S;m.push(p_(r,O,w,p,z,S,N,null,l))}f.push(S+$-i)}}return _(e,t,n,a,0),(o||l)(m,f,s)}class xv{constructor(){this.map=new WeakMap}setBuffer(e,t,n){let a=this.map.get(e);a||this.map.set(e,a=new Map),a.set(t,n)}getBuffer(e,t){let n=this.map.get(e);return n&&n.get(t)}set(e,t){e instanceof _a?this.setBuffer(e.context.buffer,e.index,t):e instanceof Pr&&this.map.set(e.tree,t)}get(e){return e instanceof _a?this.getBuffer(e.context.buffer,e.index):e instanceof Pr?this.map.get(e.tree):void 0}cursorSet(e,t){e.buffer?this.setBuffer(e.buffer.buffer,e.index,t):this.map.set(e.tree,t)}cursorGet(e){return e.buffer?this.getBuffer(e.buffer.buffer,e.index):this.map.get(e.tree)}}class qa{constructor(e,t,n,a,i=!1,s=!1){this.from=e,this.to=t,this.tree=n,this.offset=a,this.open=(i?1:0)|(s?2:0)}get openStart(){return(this.open&1)>0}get openEnd(){return(this.open&2)>0}static addTree(e,t=[],n=!1){let a=[new qa(0,e.length,e,0,!1,n)];for(let i of t)i.to>e.length&&a.push(i);return a}static applyChanges(e,t,n=128){if(!t.length)return e;let a=[],i=1,s=e.length?e[0]:null;for(let o=0,l=0,c=0;;o++){let u=o=n)for(;s&&s.from=f.from||m<=f.to||c){let _=Math.max(f.from,l)-c,O=Math.min(f.to,m)-c;f=_>=O?null:new qa(_,O,f.tree,f.offset+c,o>0,!!u)}if(f&&a.push(f),s.to>m)break;s=inew kr(a.from,a.to)):[new kr(0,0)]:[new kr(0,e.length)],this.createParse(e,t||[],n)}parse(e,t,n){let a=this.startParse(e,t,n);for(;;){let i=a.advance();if(i)return i}}}class yk{constructor(e){this.string=e}get length(){return this.string.length}chunk(e){return this.string.slice(e)}get lineChunks(){return!1}read(e,t){return this.string.slice(e,t)}}function kv(r){return(e,t,n,a)=>new Ck(e,r,t,n,a)}class V1{constructor(e,t,n,a,i){if(this.parser=e,this.parse=t,this.overlay=n,this.target=a,this.ranges=i,!i.length||i.some(s=>s.from>=s.to))throw new RangeError("Invalid inner parse ranges given: "+JSON.stringify(i))}}class Rk{constructor(e,t,n,a,i,s,o){this.parser=e,this.predicate=t,this.mounts=n,this.index=a,this.start=i,this.target=s,this.prev=o,this.depth=0,this.ranges=[]}}const Qf=new rt({perNode:!0});class Ck{constructor(e,t,n,a,i){this.nest=t,this.input=n,this.fragments=a,this.ranges=i,this.inner=[],this.innerDone=0,this.baseTree=null,this.stoppedAt=null,this.baseParse=e}advance(){if(this.baseParse){let n=this.baseParse.advance();if(!n)return null;if(this.baseParse=null,this.baseTree=n,this.startInner(),this.stoppedAt!=null)for(let a of this.inner)a.parse.stopAt(this.stoppedAt)}if(this.innerDone==this.inner.length){let n=this.baseTree;return this.stoppedAt!=null&&(n=new Ct(n.type,n.children,n.positions,n.length,n.propValues.concat([[Qf,this.stoppedAt]]))),n}let e=this.inner[this.innerDone],t=e.parse.advance();if(t){this.innerDone++;let n=Object.assign(Object.create(null),e.target.props);n[rt.mounted.id]=new Ok(t,e.overlay,e.parser),e.target.props=n}return null}get parsedPos(){if(this.baseParse)return 0;let e=this.input.length;for(let t=this.innerDone;tu.frag.from<=a.from&&u.frag.to>=a.to&&u.mount.overlay);if(c)for(let u of c.mount.overlay){let m=u.from+c.pos,f=u.to+c.pos;m>=a.from&&f<=a.to&&!t.ranges.some(_=>_.fromm)&&t.ranges.push({from:m,to:f})}}o=!1}else if(n&&(s=Ak(n.ranges,a.from,a.to)))o=s!=2;else if(!a.type.isAnonymous&&a.fromnew kr(m.from-a.from,m.to-a.from)):null,a.tree,u)),i.overlay?u.length&&(n={ranges:u,depth:0,prev:n}):o=!1}}else t&&(l=t.predicate(a))&&(l===!0&&(l=new kr(a.from,a.to)),l.fromnew kr(u.from-t.start,u.to-t.start)),t.target,c)),t=t.prev}n&&!--n.depth&&(n=n.prev)}}}}function Ak(r,e,t){for(let n of r){if(n.from>=t)break;if(n.to>e)return n.from<=e&&n.to>=t?2:1}return 0}function H1(r,e,t,n,a,i){if(e=e.to);n++);let s=a.children[n],o=s.buffer;function l(c,u,m,f,_){let O=c;for(;o[O+2]+i<=e.from;)O=o[O+3];let w=[],I=[];H1(s,c,O,w,I,f);let k=o[O+1],$=o[O+2],z=k+i==e.from&&$+i==e.to&&o[O]==e.type.id;return w.push(z?e.toTree():l(O+4,o[O+3],s.set.types[o[O]],k,$-k)),I.push(k-f),H1(s,o[O+3],u,w,I,f),new Ct(m,w,I,_)}a.children[n]=l(0,o.length,En.none,0,s.length);for(let c=0;c<=t;c++)r.childAfter(e.from)}class z1{constructor(e,t){this.offset=t,this.done=!1,this.cursor=e.cursor(Ft.IncludeAnonymous|Ft.IgnoreMounts)}moveTo(e){let{cursor:t}=this,n=e-this.offset;for(;!this.done&&t.from=e&&t.enter(n,1,Ft.IgnoreOverlays|Ft.ExcludeBuffers)||t.next(!1)||(this.done=!0)}hasNode(e){if(this.moveTo(e.from),!this.done&&this.cursor.from+this.offset==e.from&&this.cursor.tree)for(let t=this.cursor.tree;;){if(t==e.tree)return!0;if(t.children.length&&t.positions[0]==0&&t.children[0]instanceof Ct)t=t.children[0];else break}return!1}}let Ik=class{constructor(e){var t;if(this.fragments=e,this.curTo=0,this.fragI=0,e.length){let n=this.curFrag=e[0];this.curTo=(t=n.tree.prop(Qf))!==null&&t!==void 0?t:n.to,this.inner=new z1(n.tree,-n.offset)}else this.curFrag=this.inner=null}hasNode(e){for(;this.curFrag&&e.from>=this.curTo;)this.nextFrag();return this.curFrag&&this.curFrag.from<=e.from&&this.curTo>=e.to&&this.inner.hasNode(e)}nextFrag(){var e;if(this.fragI++,this.fragI==this.fragments.length)this.curFrag=this.inner=null;else{let t=this.curFrag=this.fragments[this.fragI];this.curTo=(e=t.tree.prop(Qf))!==null&&e!==void 0?e:t.to,this.inner=new z1(t.tree,-t.offset)}}findMounts(e,t){var n;let a=[];if(this.inner){this.inner.cursor.moveTo(e,1);for(let i=this.inner.cursor.node;i;i=i.parent){let s=(n=i.tree)===null||n===void 0?void 0:n.prop(rt.mounted);if(s&&s.parser==t)for(let o=this.fragI;o=i.to)break;l.tree==this.curFrag.tree&&a.push({frag:l,pos:i.from-l.offset,mount:s})}}}return a}};function W1(r,e){let t=null,n=e;for(let a=1,i=0;a=o)break;l.to<=s||(t||(n=t=e.slice()),l.fromo&&t.splice(i+1,0,new kr(o,l.to))):l.to>o?t[i--]=new kr(o,l.to):t.splice(i--,1))}}return n}function Nk(r,e,t,n){let a=0,i=0,s=!1,o=!1,l=-1e9,c=[];for(;;){let u=a==r.length?1e9:s?r[a].to:r[a].from,m=i==e.length?1e9:o?e[i].to:e[i].from;if(s!=o){let f=Math.max(l,t),_=Math.min(u,m,n);f<_&&c.push(new kr(f,_))}if(l=Math.min(u,m),l==1e9)break;u==l&&(s?(s=!1,a++):s=!0),m==l&&(o?(o=!1,i++):o=!0)}return c}function X1(r,e){let t=[];for(let{pos:n,mount:a,frag:i}of r){let s=n+(a.overlay?a.overlay[0].from:0),o=s+a.tree.length,l=Math.max(i.from,s),c=Math.min(i.to,o);if(a.overlay){let u=a.overlay.map(f=>new kr(f.from+n,f.to+n)),m=Nk(e,u,l,c);for(let f=0,_=l;;f++){let O=f==m.length,w=O?c:m[f].from;if(w>_&&t.push(new qa(_,w,a.tree,-s,i.from>=_||i.openStart,i.to<=w||i.openEnd)),O)break;_=m[f].to}}else t.push(new qa(l,c,a.tree,-s,i.from>=s||i.openStart,i.to<=o||i.openEnd))}return t}let Dk=class qf{constructor(e,t,n,a,i,s,o,l,c,u=0,m){this.p=e,this.stack=t,this.state=n,this.reducePos=a,this.pos=i,this.score=s,this.buffer=o,this.bufferBase=l,this.curContext=c,this.lookAhead=u,this.parent=m}toString(){return`[${this.stack.filter((e,t)=>t%3==0).concat(this.state)}]@${this.pos}${this.score?"!"+this.score:""}`}static start(e,t,n=0){let a=e.parser.context;return new qf(e,[],t,n,n,0,[],0,a?new K1(a,a.start):null,0,null)}get context(){return this.curContext?this.curContext.context:null}pushState(e,t){this.stack.push(this.state,t,this.bufferBase+this.buffer.length),this.state=e}reduce(e){var t;let n=e>>19,a=e&65535,{parser:i}=this.p,s=i.dynamicPrecedence(a);if(s&&(this.score+=s),n==0){this.pushState(i.getGoto(this.state,a,!0),this.reducePos),a=2e3&&!(!((t=this.p.parser.nodeSet.types[a])===null||t===void 0)&&t.isAnonymous)&&(l==this.p.lastBigReductionStart?(this.p.bigReductionCount++,this.p.lastBigReductionSize=c):this.p.lastBigReductionSizeo;)this.stack.pop();this.reduceContext(a,l)}storeNode(e,t,n,a=4,i=!1){if(e==0&&(!this.stack.length||this.stack[this.stack.length-1]0&&s.buffer[o-4]==0&&s.buffer[o-1]>-1){if(t==n)return;if(s.buffer[o-2]>=t){s.buffer[o-2]=n;return}}}if(!i||this.pos==n)this.buffer.push(e,t,n,a);else{let s=this.buffer.length;if(s>0&&this.buffer[s-4]!=0)for(;s>0&&this.buffer[s-2]>n;)this.buffer[s]=this.buffer[s-4],this.buffer[s+1]=this.buffer[s-3],this.buffer[s+2]=this.buffer[s-2],this.buffer[s+3]=this.buffer[s-1],s-=4,a>4&&(a-=4);this.buffer[s]=e,this.buffer[s+1]=t,this.buffer[s+2]=n,this.buffer[s+3]=a}}shift(e,t,n){let a=this.pos;if(e&131072)this.pushState(e&65535,this.pos);else if(e&262144)this.pos=n,this.shiftContext(t,a),t<=this.p.parser.maxNode&&this.buffer.push(t,a,n,4);else{let i=e,{parser:s}=this.p;(n>this.pos||t<=s.maxNode)&&(this.pos=n,s.stateFlag(i,1)||(this.reducePos=n)),this.pushState(i,a),this.shiftContext(t,a),t<=s.maxNode&&this.buffer.push(t,a,n,4)}}apply(e,t,n){e&65536?this.reduce(e):this.shift(e,t,n)}useNode(e,t){let n=this.p.reused.length-1;(n<0||this.p.reused[n]!=e)&&(this.p.reused.push(e),n++);let a=this.pos;this.reducePos=this.pos=a+e.length,this.pushState(t,a),this.buffer.push(n,a,this.reducePos,-1),this.curContext&&this.updateContext(this.curContext.tracker.reuse(this.curContext.context,e,this,this.p.stream.reset(this.pos-e.length)))}split(){let e=this,t=e.buffer.length;for(;t>0&&e.buffer[t-2]>e.reducePos;)t-=4;let n=e.buffer.slice(t),a=e.bufferBase+t;for(;e&&a==e.bufferBase;)e=e.parent;return new qf(this.p,this.stack.slice(),this.state,this.reducePos,this.pos,this.score,n,a,this.curContext,this.lookAhead,e)}recoverByDelete(e,t){let n=e<=this.p.parser.maxNode;n&&this.storeNode(e,this.pos,t,4),this.storeNode(0,this.pos,t,n?8:4),this.pos=this.reducePos=t,this.score-=190}canShift(e){for(let t=new xk(this);;){let n=this.p.parser.stateSlot(t.state,4)||this.p.parser.hasAction(t.state,e);if(n==0)return!1;if(!(n&65536))return!0;t.reduce(n)}}recoverByInsert(e){if(this.stack.length>=300)return[];let t=this.p.parser.nextStates(this.state);if(t.length>8||this.stack.length>=120){let a=[];for(let i=0,s;il&1&&o==s)||a.push(t[i],s)}t=a}let n=[];for(let a=0;a>19,a=t&65535,i=this.stack.length-n*3;if(i<0||e.getGoto(this.stack[i],a,!1)<0){let s=this.findForcedReduction();if(s==null)return!1;t=s}this.storeNode(0,this.pos,this.pos,4,!0),this.score-=100}return this.reducePos=this.pos,this.reduce(t),!0}findForcedReduction(){let{parser:e}=this.p,t=[],n=(a,i)=>{if(!t.includes(a))return t.push(a),e.allActions(a,s=>{if(!(s&393216))if(s&65536){let o=(s>>19)-i;if(o>1){let l=s&65535,c=this.stack.length-o*3;if(c>=0&&e.getGoto(this.stack[c],l,!1)>=0)return o<<19|65536|l}}else{let o=n(s,i+1);if(o!=null)return o}})};return n(this.state,0)}forceAll(){for(;!this.p.parser.stateFlag(this.state,2);)if(!this.forceReduce()){this.storeNode(0,this.pos,this.pos,4,!0);break}return this}get deadEnd(){if(this.stack.length!=3)return!1;let{parser:e}=this.p;return e.data[e.stateSlot(this.state,1)]==65535&&!e.stateSlot(this.state,4)}restart(){this.state=this.stack[0],this.stack.length=0}sameState(e){if(this.state!=e.state||this.stack.length!=e.stack.length)return!1;for(let t=0;tthis.lookAhead&&(this.emitLookAhead(),this.lookAhead=e)}close(){this.curContext&&this.curContext.tracker.strict&&this.emitContext(),this.lookAhead>0&&this.emitLookAhead()}};class K1{constructor(e,t){this.tracker=e,this.context=t,this.hash=e.strict?e.hash(t):0}}class xk{constructor(e){this.start=e,this.state=e.state,this.stack=e.stack,this.base=this.stack.length}reduce(e){let t=e&65535,n=e>>19;n==0?(this.stack==this.start.stack&&(this.stack=this.stack.slice()),this.stack.push(this.state,0,0),this.base+=3):this.base-=(n-1)*3;let a=this.start.p.parser.getGoto(this.stack[this.base-3],t,!0);this.state=a}}class Kc{constructor(e,t,n){this.stack=e,this.pos=t,this.index=n,this.buffer=e.buffer,this.index==0&&this.maybeNext()}static create(e,t=e.bufferBase+e.buffer.length){return new Kc(e,t,t-e.bufferBase)}maybeNext(){let e=this.stack.parent;e!=null&&(this.index=this.stack.bufferBase-e.bufferBase,this.stack=e,this.buffer=e.buffer)}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}next(){this.index-=4,this.pos-=4,this.index==0&&this.maybeNext()}fork(){return new Kc(this.stack,this.pos,this.index)}}function Xo(r,e=Uint16Array){if(typeof r!="string")return r;let t=null;for(let n=0,a=0;n=92&&s--,s>=34&&s--;let l=s-32;if(l>=46&&(l-=46,o=!0),i+=l,o)break;i*=46}t?t[a++]=i:t=new e(i)}return t}class Nc{constructor(){this.start=-1,this.value=-1,this.end=-1,this.extended=-1,this.lookAhead=0,this.mask=0,this.context=0}}const Z1=new Nc;class kk{constructor(e,t){this.input=e,this.ranges=t,this.chunk="",this.chunkOff=0,this.chunk2="",this.chunk2Pos=0,this.next=-1,this.token=Z1,this.rangeIndex=0,this.pos=this.chunkPos=t[0].from,this.range=t[0],this.end=t[t.length-1].to,this.readNext()}resolveOffset(e,t){let n=this.range,a=this.rangeIndex,i=this.pos+e;for(;in.to:i>=n.to;){if(a==this.ranges.length-1)return null;let s=this.ranges[++a];i+=s.from-n.to,n=s}return i}clipPos(e){if(e>=this.range.from&&ee)return Math.max(e,t.from);return this.end}peek(e){let t=this.chunkOff+e,n,a;if(t>=0&&t=this.chunk2Pos&&no.to&&(this.chunk2=this.chunk2.slice(0,o.to-n)),a=this.chunk2.charCodeAt(0)}}return n>=this.token.lookAhead&&(this.token.lookAhead=n+1),a}acceptToken(e,t=0){let n=t?this.resolveOffset(t,-1):this.pos;if(n==null||n=this.chunk2Pos&&this.posthis.range.to?e.slice(0,this.range.to-this.pos):e,this.chunkPos=this.pos,this.chunkOff=0}}readNext(){return this.chunkOff>=this.chunk.length&&(this.getChunk(),this.chunkOff==this.chunk.length)?this.next=-1:this.next=this.chunk.charCodeAt(this.chunkOff)}advance(e=1){for(this.chunkOff+=e;this.pos+e>=this.range.to;){if(this.rangeIndex==this.ranges.length-1)return this.setDone();e-=this.range.to-this.pos,this.range=this.ranges[++this.rangeIndex],this.pos=this.range.from}return this.pos+=e,this.pos>=this.token.lookAhead&&(this.token.lookAhead=this.pos+1),this.readNext()}setDone(){return this.pos=this.chunkPos=this.end,this.range=this.ranges[this.rangeIndex=this.ranges.length-1],this.chunk="",this.next=-1}reset(e,t){if(t?(this.token=t,t.start=e,t.lookAhead=e+1,t.value=t.extended=-1):this.token=Z1,this.pos!=e){if(this.pos=e,e==this.end)return this.setDone(),this;for(;e=this.range.to;)this.range=this.ranges[++this.rangeIndex];e>=this.chunkPos&&e=this.chunkPos&&t<=this.chunkPos+this.chunk.length)return this.chunk.slice(e-this.chunkPos,t-this.chunkPos);if(e>=this.chunk2Pos&&t<=this.chunk2Pos+this.chunk2.length)return this.chunk2.slice(e-this.chunk2Pos,t-this.chunk2Pos);if(e>=this.range.from&&t<=this.range.to)return this.input.read(e,t);let n="";for(let a of this.ranges){if(a.from>=t)break;a.to>e&&(n+=this.input.read(Math.max(a.from,e),Math.min(a.to,t)))}return n}}class Ms{constructor(e,t){this.data=e,this.id=t}token(e,t){let{parser:n}=t.p;Mv(this.data,e,t,this.id,n.data,n.tokenPrecTable)}}Ms.prototype.contextual=Ms.prototype.fallback=Ms.prototype.extend=!1;class Zc{constructor(e,t,n){this.precTable=t,this.elseToken=n,this.data=typeof e=="string"?Xo(e):e}token(e,t){let n=e.pos,a=0;for(;;){let i=e.next<0,s=e.resolveOffset(1,1);if(Mv(this.data,e,t,0,this.data,this.precTable),e.token.value>-1)break;if(this.elseToken==null)return;if(i||a++,s==null)break;e.reset(s,e.token)}a&&(e.reset(n,e.token),e.acceptToken(this.elseToken,a))}}Zc.prototype.contextual=Ms.prototype.fallback=Ms.prototype.extend=!1;class Ra{constructor(e,t={}){this.token=e,this.contextual=!!t.contextual,this.fallback=!!t.fallback,this.extend=!!t.extend}}function Mv(r,e,t,n,a,i){let s=0,o=1<0){let O=r[_];if(l.allows(O)&&(e.token.value==-1||e.token.value==O||Mk(O,e.token.value,a,i))){e.acceptToken(O);break}}let u=e.next,m=0,f=r[s+2];if(e.next<0&&f>m&&r[c+f*3-3]==65535&&r[c+f*3-3]==65535){s=r[c+f*3-1];continue e}for(;m>1,O=c+_+(_<<1),w=r[O],I=r[O+1]||65536;if(u=I)m=_+1;else{s=r[O+2],e.advance();continue e}}break}}function j1(r,e,t){for(let n=e,a;(a=r[n])!=65535;n++)if(a==t)return n-e;return-1}function Mk(r,e,t,n){let a=j1(t,n,e);return a<0||j1(t,n,r)e)&&!n.type.isError)return t<0?Math.max(0,Math.min(n.to-1,e-25)):Math.min(r.length,Math.max(n.from+1,e+25));if(t<0?n.prevSibling():n.nextSibling())break;if(!n.parent())return t<0?0:r.length}}let Lk=class{constructor(e,t){this.fragments=e,this.nodeSet=t,this.i=0,this.fragment=null,this.safeFrom=-1,this.safeTo=-1,this.trees=[],this.start=[],this.index=[],this.nextFragment()}nextFragment(){let e=this.fragment=this.i==this.fragments.length?null:this.fragments[this.i++];if(e){for(this.safeFrom=e.openStart?J1(e.tree,e.from+e.offset,1)-e.offset:e.from,this.safeTo=e.openEnd?J1(e.tree,e.to+e.offset,-1)-e.offset:e.to;this.trees.length;)this.trees.pop(),this.start.pop(),this.index.pop();this.trees.push(e.tree),this.start.push(-e.offset),this.index.push(0),this.nextStart=this.safeFrom}else this.nextStart=1e9}nodeAt(e){if(ee)return this.nextStart=s,null;if(i instanceof Ct){if(s==e){if(s=Math.max(this.safeFrom,e)&&(this.trees.push(i),this.start.push(s),this.index.push(0))}else this.index[t]++,this.nextStart=s+i.length}}};class Pk{constructor(e,t){this.stream=t,this.tokens=[],this.mainToken=null,this.actions=[],this.tokens=e.tokenizers.map(n=>new Nc)}getActions(e){let t=0,n=null,{parser:a}=e.p,{tokenizers:i}=a,s=a.stateSlot(e.state,3),o=e.curContext?e.curContext.hash:0,l=0;for(let c=0;cm.end+25&&(l=Math.max(m.lookAhead,l)),m.value!=0)){let f=t;if(m.extended>-1&&(t=this.addActions(e,m.extended,m.end,t)),t=this.addActions(e,m.value,m.end,t),!u.extend&&(n=m,t>f))break}}for(;this.actions.length>t;)this.actions.pop();return l&&e.setLookAhead(l),!n&&e.pos==this.stream.end&&(n=new Nc,n.value=e.p.parser.eofTerm,n.start=n.end=e.pos,t=this.addActions(e,n.value,n.end,t)),this.mainToken=n,this.actions}getMainToken(e){if(this.mainToken)return this.mainToken;let t=new Nc,{pos:n,p:a}=e;return t.start=n,t.end=Math.min(n+1,a.stream.end),t.value=n==a.stream.end?a.parser.eofTerm:0,t}updateCachedToken(e,t,n){let a=this.stream.clipPos(n.pos);if(t.token(this.stream.reset(a,e),n),e.value>-1){let{parser:i}=n.p;for(let s=0;s=0&&n.p.parser.dialect.allows(o>>1)){o&1?e.extended=o>>1:e.value=o>>1;break}}}else e.value=0,e.end=this.stream.clipPos(a+1)}putAction(e,t,n,a){for(let i=0;ie.bufferLength*4?new Lk(n,e.nodeSet):null}get parsedPos(){return this.minStackPos}advance(){let e=this.stacks,t=this.minStackPos,n=this.stacks=[],a,i;if(this.bigReductionCount>300&&e.length==1){let[s]=e;for(;s.forceReduce()&&s.stack.length&&s.stack[s.stack.length-2]>=this.lastBigReductionStart;);this.bigReductionCount=this.lastBigReductionSize=0}for(let s=0;st)n.push(o);else{if(this.advanceStack(o,n,e))continue;{a||(a=[],i=[]),a.push(o);let l=this.tokens.getMainToken(o);i.push(l.value,l.end)}}break}}if(!n.length){let s=a&&Fk(a);if(s)return hr&&console.log("Finish with "+this.stackID(s)),this.stackToTree(s);if(this.parser.strict)throw hr&&a&&console.log("Stuck with token "+(this.tokens.mainToken?this.parser.getName(this.tokens.mainToken.value):"none")),new SyntaxError("No parse at "+t);this.recovering||(this.recovering=5)}if(this.recovering&&a){let s=this.stoppedAt!=null&&a[0].pos>this.stoppedAt?a[0]:this.runRecovery(a,i,n);if(s)return hr&&console.log("Force-finish "+this.stackID(s)),this.stackToTree(s.forceAll())}if(this.recovering){let s=this.recovering==1?1:this.recovering*3;if(n.length>s)for(n.sort((o,l)=>l.score-o.score);n.length>s;)n.pop();n.some(o=>o.reducePos>t)&&this.recovering--}else if(n.length>1){e:for(let s=0;s500&&c.buffer.length>500)if((o.score-c.score||o.buffer.length-c.buffer.length)>0)n.splice(l--,1);else{n.splice(s--,1);continue e}}}n.length>12&&n.splice(12,n.length-12)}this.minStackPos=n[0].pos;for(let s=1;s ":"";if(this.stoppedAt!=null&&a>this.stoppedAt)return e.forceReduce()?e:null;if(this.fragments){let c=e.curContext&&e.curContext.tracker.strict,u=c?e.curContext.hash:0;for(let m=this.fragments.nodeAt(a);m;){let f=this.parser.nodeSet.types[m.type.id]==m.type?i.getGoto(e.state,m.type.id):-1;if(f>-1&&m.length&&(!c||(m.prop(rt.contextHash)||0)==u))return e.useNode(m,f),hr&&console.log(s+this.stackID(e)+` (via reuse of ${i.getName(m.type.id)})`),!0;if(!(m instanceof Ct)||m.children.length==0||m.positions[0]>0)break;let _=m.children[0];if(_ instanceof Ct&&m.positions[0]==0)m=_;else break}}let o=i.stateSlot(e.state,4);if(o>0)return e.reduce(o),hr&&console.log(s+this.stackID(e)+` (via always-reduce ${i.getName(o&65535)})`),!0;if(e.stack.length>=15e3)for(;e.stack.length>9e3&&e.forceReduce(););let l=this.tokens.getActions(e);for(let c=0;ca?t.push(O):n.push(O)}return!1}advanceFully(e,t){let n=e.pos;for(;;){if(!this.advanceStack(e,null,null))return!1;if(e.pos>n)return e0(e,t),!0}}runRecovery(e,t,n){let a=null,i=!1;for(let s=0;s ":"";if(o.deadEnd&&(i||(i=!0,o.restart(),hr&&console.log(u+this.stackID(o)+" (restarted)"),this.advanceFully(o,n))))continue;let m=o.split(),f=u;for(let _=0;m.forceReduce()&&_<10&&(hr&&console.log(f+this.stackID(m)+" (via force-reduce)"),!this.advanceFully(m,n));_++)hr&&(f=this.stackID(m)+" -> ");for(let _ of o.recoverByInsert(l))hr&&console.log(u+this.stackID(_)+" (via recover-insert)"),this.advanceFully(_,n);this.stream.end>o.pos?(c==o.pos&&(c++,l=0),o.recoverByDelete(l,c),hr&&console.log(u+this.stackID(o)+` (via recover-delete ${this.parser.getName(l)})`),e0(o,n)):(!a||a.scorer;class Lv{constructor(e){this.start=e.start,this.shift=e.shift||Sd,this.reduce=e.reduce||Sd,this.reuse=e.reuse||Sd,this.hash=e.hash||(()=>0),this.strict=e.strict!==!1}}class Xs extends f_{constructor(e){if(super(),this.wrappers=[],e.version!=14)throw new RangeError(`Parser version (${e.version}) doesn't match runtime version (14)`);let t=e.nodeNames.split(" ");this.minRepeatTerm=t.length;for(let o=0;oe.topRules[o][1]),a=[];for(let o=0;o=0)i(u,l,o[c++]);else{let m=o[c+-u];for(let f=-u;f>0;f--)i(o[c++],l,m);c++}}}this.nodeSet=new $l(t.map((o,l)=>En.define({name:l>=this.minRepeatTerm?void 0:o,id:l,props:a[l],top:n.indexOf(l)>-1,error:l==0,skipped:e.skippedNodes&&e.skippedNodes.indexOf(l)>-1}))),e.propSources&&(this.nodeSet=this.nodeSet.extend(...e.propSources)),this.strict=!1,this.bufferLength=Iv;let s=Xo(e.tokenData);this.context=e.context,this.specializerSpecs=e.specialized||[],this.specialized=new Uint16Array(this.specializerSpecs.length);for(let o=0;otypeof o=="number"?new Ms(s,o):o),this.topRules=e.topRules,this.dialects=e.dialects||{},this.dynamicPrecedences=e.dynamicPrecedences||null,this.tokenPrecTable=e.tokenPrec,this.termNames=e.termNames||null,this.maxNode=this.nodeSet.types.length-1,this.dialect=this.parseDialect(),this.top=this.topRules[Object.keys(this.topRules)[0]]}createParse(e,t,n){let a=new Bk(this,e,t,n);for(let i of this.wrappers)a=i(a,e,t,n);return a}getGoto(e,t,n=!1){let a=this.goto;if(t>=a[0])return-1;for(let i=a[t+1];;){let s=a[i++],o=s&1,l=a[i++];if(o&&n)return l;for(let c=i+(s>>1);i0}validAction(e,t){return!!this.allActions(e,n=>n==t?!0:null)}allActions(e,t){let n=this.stateSlot(e,4),a=n?t(n):void 0;for(let i=this.stateSlot(e,1);a==null;i+=3){if(this.data[i]==65535)if(this.data[i+1]==1)i=Ua(this.data,i+2);else break;a=t(Ua(this.data,i+1))}return a}nextStates(e){let t=[];for(let n=this.stateSlot(e,1);;n+=3){if(this.data[n]==65535)if(this.data[n+1]==1)n=Ua(this.data,n+2);else break;if(!(this.data[n+2]&1)){let a=this.data[n+1];t.some((i,s)=>s&1&&i==a)||t.push(this.data[n],a)}}return t}configure(e){let t=Object.assign(Object.create(Xs.prototype),this);if(e.props&&(t.nodeSet=this.nodeSet.extend(...e.props)),e.top){let n=this.topRules[e.top];if(!n)throw new RangeError(`Invalid top rule name ${e.top}`);t.top=n}return e.tokenizers&&(t.tokenizers=this.tokenizers.map(n=>{let a=e.tokenizers.find(i=>i.from==n);return a?a.to:n})),e.specializers&&(t.specializers=this.specializers.slice(),t.specializerSpecs=this.specializerSpecs.map((n,a)=>{let i=e.specializers.find(o=>o.from==n.external);if(!i)return n;let s=Object.assign(Object.assign({},n),{external:i.to});return t.specializers[a]=t0(s),s})),e.contextTracker&&(t.context=e.contextTracker),e.dialect&&(t.dialect=this.parseDialect(e.dialect)),e.strict!=null&&(t.strict=e.strict),e.wrap&&(t.wrappers=t.wrappers.concat(e.wrap)),e.bufferLength!=null&&(t.bufferLength=e.bufferLength),t}hasWrappers(){return this.wrappers.length>0}getName(e){return this.termNames?this.termNames[e]:String(e<=this.maxNode&&this.nodeSet.types[e].name||e)}get eofTerm(){return this.maxNode+1}get topNode(){return this.nodeSet.types[this.top[1]]}dynamicPrecedence(e){let t=this.dynamicPrecedences;return t==null?0:t[e]||0}parseDialect(e){let t=Object.keys(this.dialects),n=t.map(()=>!1);if(e)for(let i of e.split(" ")){let s=t.indexOf(i);s>=0&&(n[s]=!0)}let a=null;for(let i=0;in)&&t.p.parser.stateFlag(t.state,2)&&(!e||e.scorer.external(t,n)<<1|e}return r.get}let Uk=0;class ta{constructor(e,t,n){this.set=e,this.base=t,this.modified=n,this.id=Uk++}static define(e){if(e!=null&&e.base)throw new Error("Can not derive from a modified tag");let t=new ta([],null,[]);if(t.set.push(t),e)for(let n of e.set)t.set.push(n);return t}static defineModifier(){let e=new jc;return t=>t.modified.indexOf(e)>-1?t:jc.get(t.base||t,t.modified.concat(e).sort((n,a)=>n.id-a.id))}}let $k=0;class jc{constructor(){this.instances=[],this.id=$k++}static get(e,t){if(!t.length)return e;let n=t[0].instances.find(o=>o.base==e&&Gk(t,o.modified));if(n)return n;let a=[],i=new ta(a,e,t);for(let o of t)o.instances.push(i);let s=Qk(t);for(let o of e.set)if(!o.modified.length)for(let l of s)a.push(jc.get(o,l));return i}}function Gk(r,e){return r.length==e.length&&r.every((t,n)=>t==e[n])}function Qk(r){let e=[[]];for(let t=0;tn.length-t.length)}function co(r){let e=Object.create(null);for(let t in r){let n=r[t];Array.isArray(n)||(n=[n]);for(let a of t.split(" "))if(a){let i=[],s=2,o=a;for(let m=0;;){if(o=="..."&&m>0&&m+3==a.length){s=1;break}let f=/^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(o);if(!f)throw new RangeError("Invalid path: "+a);if(i.push(f[0]=="*"?"":f[0][0]=='"'?JSON.parse(f[0]):f[0]),m+=f[0].length,m==a.length)break;let _=a[m++];if(m==a.length&&_=="!"){s=0;break}if(_!="/")throw new RangeError("Invalid path: "+a);o=a.slice(m)}let l=i.length-1,c=i[l];if(!c)throw new RangeError("Invalid path: "+a);let u=new Jc(n,s,l>0?i.slice(0,l):null);e[c]=u.sort(e[c])}}return Pv.add(e)}const Pv=new rt;class Jc{constructor(e,t,n,a){this.tags=e,this.mode=t,this.context=n,this.next=a}get opaque(){return this.mode==0}get inherit(){return this.mode==1}sort(e){return!e||e.depth{let s=a;for(let o of i)for(let l of o.set){let c=t[l.id];if(c){s=s?s+" "+c:c;break}}return s},scope:n}}function qk(r,e){let t=null;for(let n of r){let a=n.style(e);a&&(t=t?t+" "+a:a)}return t}function Vk(r,e,t,n=0,a=r.length){let i=new Hk(n,Array.isArray(e)?e:[e],t);i.highlightRange(r.cursor(),n,a,"",i.highlighters),i.flush(a)}class Hk{constructor(e,t,n){this.at=e,this.highlighters=t,this.span=n,this.class=""}startSpan(e,t){t!=this.class&&(this.flush(e),e>this.at&&(this.at=e),this.class=t)}flush(e){e>this.at&&this.class&&this.span(this.at,e,this.class)}highlightRange(e,t,n,a,i){let{type:s,from:o,to:l}=e;if(o>=n||l<=t)return;s.isTop&&(i=this.highlighters.filter(_=>!_.scope||_.scope(s)));let c=a,u=zk(e)||Jc.empty,m=qk(i,u.tags);if(m&&(c&&(c+=" "),c+=m,u.mode==1&&(a+=(a?" ":"")+m)),this.startSpan(Math.max(t,o),c),u.opaque)return;let f=e.tree&&e.tree.prop(rt.mounted);if(f&&f.overlay){let _=e.node.enter(f.overlay[0].from+o,1),O=this.highlighters.filter(I=>!I.scope||I.scope(f.tree.type)),w=e.firstChild();for(let I=0,k=o;;I++){let $=I=z||!e.nextSibling())););if(!$||z>n)break;k=$.to+o,k>t&&(this.highlightRange(_.cursor(),Math.max(t,$.from+o),Math.min(n,k),"",O),this.startSpan(Math.min(n,k),c))}w&&e.parent()}else if(e.firstChild()){f&&(a="");do if(!(e.to<=t)){if(e.from>=n)break;this.highlightRange(e,t,n,a,i),this.startSpan(Math.min(n,e.to),c)}while(e.nextSibling());e.parent()}}}function zk(r){let e=r.type.prop(Pv);for(;e&&e.context&&!r.matchContext(e.context);)e=e.next;return e||null}const Me=ta.define,ic=Me(),ui=Me(),n0=Me(ui),r0=Me(ui),di=Me(),sc=Me(di),Od=Me(di),ma=Me(),Yi=Me(ma),ca=Me(),ua=Me(),Vf=Me(),Lo=Me(Vf),oc=Me(),V={comment:ic,lineComment:Me(ic),blockComment:Me(ic),docComment:Me(ic),name:ui,variableName:Me(ui),typeName:n0,tagName:Me(n0),propertyName:r0,attributeName:Me(r0),className:Me(ui),labelName:Me(ui),namespace:Me(ui),macroName:Me(ui),literal:di,string:sc,docString:Me(sc),character:Me(sc),attributeValue:Me(sc),number:Od,integer:Me(Od),float:Me(Od),bool:Me(di),regexp:Me(di),escape:Me(di),color:Me(di),url:Me(di),keyword:ca,self:Me(ca),null:Me(ca),atom:Me(ca),unit:Me(ca),modifier:Me(ca),operatorKeyword:Me(ca),controlKeyword:Me(ca),definitionKeyword:Me(ca),moduleKeyword:Me(ca),operator:ua,derefOperator:Me(ua),arithmeticOperator:Me(ua),logicOperator:Me(ua),bitwiseOperator:Me(ua),compareOperator:Me(ua),updateOperator:Me(ua),definitionOperator:Me(ua),typeOperator:Me(ua),controlOperator:Me(ua),punctuation:Vf,separator:Me(Vf),bracket:Lo,angleBracket:Me(Lo),squareBracket:Me(Lo),paren:Me(Lo),brace:Me(Lo),content:ma,heading:Yi,heading1:Me(Yi),heading2:Me(Yi),heading3:Me(Yi),heading4:Me(Yi),heading5:Me(Yi),heading6:Me(Yi),contentSeparator:Me(ma),list:Me(ma),quote:Me(ma),emphasis:Me(ma),strong:Me(ma),link:Me(ma),monospace:Me(ma),strikethrough:Me(ma),inserted:Me(),deleted:Me(),changed:Me(),invalid:Me(),meta:oc,documentMeta:Me(oc),annotation:Me(oc),processingInstruction:Me(oc),definition:ta.defineModifier(),constant:ta.defineModifier(),function:ta.defineModifier(),standard:ta.defineModifier(),local:ta.defineModifier(),special:ta.defineModifier()};Bv([{tag:V.link,class:"tok-link"},{tag:V.heading,class:"tok-heading"},{tag:V.emphasis,class:"tok-emphasis"},{tag:V.strong,class:"tok-strong"},{tag:V.keyword,class:"tok-keyword"},{tag:V.atom,class:"tok-atom"},{tag:V.bool,class:"tok-bool"},{tag:V.url,class:"tok-url"},{tag:V.labelName,class:"tok-labelName"},{tag:V.inserted,class:"tok-inserted"},{tag:V.deleted,class:"tok-deleted"},{tag:V.literal,class:"tok-literal"},{tag:V.string,class:"tok-string"},{tag:V.number,class:"tok-number"},{tag:[V.regexp,V.escape,V.special(V.string)],class:"tok-string2"},{tag:V.variableName,class:"tok-variableName"},{tag:V.local(V.variableName),class:"tok-variableName tok-local"},{tag:V.definition(V.variableName),class:"tok-variableName tok-definition"},{tag:V.special(V.variableName),class:"tok-variableName2"},{tag:V.definition(V.propertyName),class:"tok-propertyName tok-definition"},{tag:V.typeName,class:"tok-typeName"},{tag:V.namespace,class:"tok-namespace"},{tag:V.className,class:"tok-className"},{tag:V.macroName,class:"tok-macroName"},{tag:V.propertyName,class:"tok-propertyName"},{tag:V.operator,class:"tok-operator"},{tag:V.comment,class:"tok-comment"},{tag:V.meta,class:"tok-meta"},{tag:V.invalid,class:"tok-invalid"},{tag:V.punctuation,class:"tok-punctuation"}]);const Wk=303,a0=1,Xk=2,Kk=304,Zk=306,jk=307,Jk=3,eM=4,tM=[9,10,11,12,13,32,133,160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8232,8233,8239,8287,12288],Yv=125,nM=59,i0=47,rM=42,aM=43,iM=45,sM=new Lv({start:!1,shift(r,e){return e==Jk||e==eM||e==Zk?r:e==jk},strict:!1}),oM=new Ra((r,e)=>{let{next:t}=r;(t==Yv||t==-1||e.context)&&r.acceptToken(Kk)},{contextual:!0,fallback:!0}),lM=new Ra((r,e)=>{let{next:t}=r,n;tM.indexOf(t)>-1||t==i0&&((n=r.peek(1))==i0||n==rM)||t!=Yv&&t!=nM&&t!=-1&&!e.context&&r.acceptToken(Wk)},{contextual:!0}),cM=new Ra((r,e)=>{let{next:t}=r;if((t==aM||t==iM)&&(r.advance(),t==r.next)){r.advance();let n=!e.context&&e.canShift(a0);r.acceptToken(n?a0:Xk)}},{contextual:!0}),uM=co({"get set async static":V.modifier,"for while do if else switch try catch finally return throw break continue default case":V.controlKeyword,"in of await yield void typeof delete instanceof":V.operatorKeyword,"let var const function class extends":V.definitionKeyword,"import export from":V.moduleKeyword,"with debugger as new":V.keyword,TemplateString:V.special(V.string),super:V.atom,BooleanLiteral:V.bool,this:V.self,null:V.null,Star:V.modifier,VariableName:V.variableName,"CallExpression/VariableName TaggedTemplateExpression/VariableName":V.function(V.variableName),VariableDefinition:V.definition(V.variableName),Label:V.labelName,PropertyName:V.propertyName,PrivatePropertyName:V.special(V.propertyName),"CallExpression/MemberExpression/PropertyName":V.function(V.propertyName),"FunctionDeclaration/VariableDefinition":V.function(V.definition(V.variableName)),"ClassDeclaration/VariableDefinition":V.definition(V.className),PropertyDefinition:V.definition(V.propertyName),PrivatePropertyDefinition:V.definition(V.special(V.propertyName)),UpdateOp:V.updateOperator,LineComment:V.lineComment,BlockComment:V.blockComment,Number:V.number,String:V.string,Escape:V.escape,ArithOp:V.arithmeticOperator,LogicOp:V.logicOperator,BitOp:V.bitwiseOperator,CompareOp:V.compareOperator,RegExp:V.regexp,Equals:V.definitionOperator,Arrow:V.function(V.punctuation),": Spread":V.punctuation,"( )":V.paren,"[ ]":V.squareBracket,"{ }":V.brace,"InterpolationStart InterpolationEnd":V.special(V.brace),".":V.derefOperator,", ;":V.separator,"@":V.meta,TypeName:V.typeName,TypeDefinition:V.definition(V.typeName),"type enum interface implements namespace module declare":V.definitionKeyword,"abstract global Privacy readonly override":V.modifier,"is keyof unique infer":V.operatorKeyword,JSXAttributeValue:V.attributeValue,JSXText:V.content,"JSXStartTag JSXStartCloseTag JSXSelfCloseEndTag JSXEndTag":V.angleBracket,"JSXIdentifier JSXNameSpacedName":V.tagName,"JSXAttribute/JSXIdentifier JSXAttribute/JSXNameSpacedName":V.attributeName,"JSXBuiltin/JSXIdentifier":V.standard(V.tagName)}),dM={__proto__:null,export:14,as:19,from:27,default:30,async:35,function:36,extends:46,this:50,true:58,false:58,null:70,void:74,typeof:78,super:96,new:130,delete:146,yield:155,await:159,class:164,public:221,private:221,protected:221,readonly:223,instanceof:242,satisfies:245,in:246,const:248,import:280,keyof:335,unique:339,infer:345,is:381,abstract:401,implements:403,type:405,let:408,var:410,using:413,interface:419,enum:423,namespace:429,module:431,declare:435,global:439,for:458,of:467,while:470,with:474,do:478,if:482,else:484,switch:488,case:494,try:500,catch:504,finally:508,return:512,throw:516,break:520,continue:524,debugger:528},mM={__proto__:null,async:117,get:119,set:121,declare:181,public:183,private:183,protected:183,static:185,abstract:187,override:189,readonly:195,accessor:197,new:385},hM={__proto__:null,"<":137},pM=Xs.deserialize({version:14,states:"$6tO`QUOOO%TQUOOO'WQWOOP(eOSOOO*sQ(CjO'#CfO*zOpO'#CgO+YO!bO'#CgO+hO07`O'#DZO-yQUO'#DaO.ZQUO'#DlO%TQUO'#DvO0_QUO'#EOOOQ(CY'#EW'#EWO0xQSO'#ETOOQO'#Ei'#EiOOQO'#Ic'#IcO1QQSO'#GkO1]QSO'#EhO1bQSO'#EhO3dQ(CjO'#JdO6TQ(CjO'#JeO6qQSO'#FWO6vQ#tO'#FoOOQ(CY'#F`'#F`O7RO&jO'#F`O7aQ,UO'#FvO8wQSO'#FuOOQ(CY'#Je'#JeOOQ(CW'#Jd'#JdO8|QSO'#GoOOQQ'#KP'#KPO9XQSO'#IPO9^Q(C[O'#IQOOQQ'#JQ'#JQOOQQ'#IU'#IUQ`QUOOO%TQUO'#DnO9fQUO'#DzO9mQUO'#D|O9SQSO'#GkO9tQ,UO'#ClO:SQSO'#EgO:_QSO'#ErO:dQ,UO'#F_O;RQSO'#GkOOQO'#KQ'#KQO;WQSO'#KQO;fQSO'#GsO;fQSO'#GtO;fQSO'#GvO9SQSO'#GyO<]QSO'#G|O=tQSO'#CbO>UQSO'#HYO>^QSO'#H`O>^QSO'#HbO`QUO'#HdO>^QSO'#HfO>^QSO'#HiO>cQSO'#HoO>hQ(C]O'#HuO%TQUO'#HwO>sQ(C]O'#HyO?OQ(C]O'#H{O9^Q(C[O'#H}O?ZQ(CjO'#CfO@]QWO'#DfQOQSOOO%TQUO'#D|O@sQSO'#EPO9tQ,UO'#EgOAOQSO'#EgOAZQ`O'#F_OOQQ'#Cd'#CdOOQ(CW'#Dk'#DkOOQ(CW'#Jh'#JhO%TQUO'#JhOOQO'#Jl'#JlOOQO'#I`'#I`OBZQWO'#E`OOQ(CW'#E_'#E_OCVQ(C`O'#E`OCaQWO'#ESOOQO'#Jk'#JkOCuQWO'#JlOESQWO'#ESOCaQWO'#E`PEaO?MpO'#C`POOO)CDo)CDoOOOO'#IV'#IVOElOpO,59ROOQ(CY,59R,59ROOOO'#IW'#IWOEzO!bO,59RO%TQUO'#D]OOOO'#IY'#IYOFYO07`O,59uOOQ(CY,59u,59uOFhQUO'#IZOF{QSO'#JfOH}QbO'#JfO+vQUO'#JfOIUQSO,59{OIlQSO'#EiOIyQSO'#JtOJUQSO'#JsOJUQSO'#JsOJ^QSO,5;VOJcQSO'#JrOOQ(CY,5:W,5:WOJjQUO,5:WOLkQ(CjO,5:bOM[QSO,5:jOMuQ(C[O'#JqOM|QSO'#JpO8|QSO'#JpONbQSO'#JpONjQSO,5;UONoQSO'#JpO!!wQbO'#JeOOQ(CY'#Cf'#CfO%TQUO'#EOO!#gQ`O,5:oOOQO'#Jm'#JmOOQO-EkOOQQ'#JY'#JYOOQQ,5>l,5>lOOQQ-EqQ(CjO,5:hOOQO,5@l,5@lO!?bQ,UO,5=VO!?pQ(C[O'#JZO8wQSO'#JZO!@RQ(C[O,59WO!@^QWO,59WO!@fQ,UO,59WO9tQ,UO,59WO!@qQSO,5;SO!@yQSO'#HXO!A[QSO'#KUO%TQUO,5;wO!7[QWO,5;yO!AdQSO,5=rO!AiQSO,5=rO!AnQSO,5=rO9^Q(C[O,5=rO;fQSO,5=bOOQO'#Cr'#CrO!A|QWO,5=_O!BUQ,UO,5=`O!BaQSO,5=bO!BfQ`O,5=eO!BnQSO'#KQO>cQSO'#HOO9SQSO'#HQO!BsQSO'#HQO9tQ,UO'#HSO!BxQSO'#HSOOQQ,5=h,5=hO!B}QSO'#HTO!CVQSO'#ClO!C[QSO,58|O!CfQSO,58|O!EkQUO,58|OOQQ,58|,58|O!E{Q(C[O,58|O%TQUO,58|O!HWQUO'#H[OOQQ'#H]'#H]OOQQ'#H^'#H^O`QUO,5=tO!HnQSO,5=tO`QUO,5=zO`QUO,5=|O!HsQSO,5>OO`QUO,5>QO!HxQSO,5>TO!H}QUO,5>ZOOQQ,5>a,5>aO%TQUO,5>aO9^Q(C[O,5>cOOQQ,5>e,5>eO!MXQSO,5>eOOQQ,5>g,5>gO!MXQSO,5>gOOQQ,5>i,5>iO!M^QWO'#DXO%TQUO'#JhO!M{QWO'#JhO!NjQWO'#DgO!N{QWO'#DgO##^QUO'#DgO##eQSO'#JgO##mQSO,5:QO##rQSO'#EmO#$QQSO'#JuO#$YQSO,5;WO#$_QWO'#DgO#$lQWO'#EROOQ(CY,5:k,5:kO%TQUO,5:kO#$sQSO,5:kO>cQSO,5;RO!@^QWO,5;RO!@fQ,UO,5;RO9tQ,UO,5;RO#${QSO,5@SO#%QQ!LQO,5:oOOQO-E<^-E<^O#&WQ(C`O,5:zOCaQWO,5:nO#&bQWO,5:nOCaQWO,5:zO!@RQ(C[O,5:nOOQ(CW'#Ec'#EcOOQO,5:z,5:zO%TQUO,5:zO#&oQ(C[O,5:zO#&zQ(C[O,5:zO!@^QWO,5:nOOQO,5;Q,5;QO#'YQ(C[O,5:zPOOO'#IT'#ITP#'nO?MpO,58zPOOO,58z,58zOOOO-EuO+vQUO,5>uOOQO,5>{,5>{O#(YQUO'#IZOOQO-E^QSO1G3jO$.OQUO1G3lO$2SQUO'#HkOOQQ1G3o1G3oO$2aQSO'#HqO>cQSO'#HsOOQQ1G3u1G3uO$2iQUO1G3uO9^Q(C[O1G3{OOQQ1G3}1G3}OOQ(CW'#GW'#GWO9^Q(C[O1G4PO9^Q(C[O1G4RO$6pQSO,5@SO!){QUO,5;XO8|QSO,5;XO>cQSO,5:RO!){QUO,5:RO!@^QWO,5:RO$6uQ$IUO,5:ROOQO,5;X,5;XO$7PQWO'#I[O$7gQSO,5@ROOQ(CY1G/l1G/lO$7oQWO'#IbO$7yQSO,5@aOOQ(CW1G0r1G0rO!N{QWO,5:ROOQO'#I_'#I_O$8RQWO,5:mOOQ(CY,5:m,5:mO#$vQSO1G0VOOQ(CY1G0V1G0VO%TQUO1G0VOOQ(CY1G0m1G0mO>cQSO1G0mO!@^QWO1G0mO!@fQ,UO1G0mOOQ(CW1G5n1G5nO!@RQ(C[O1G0YOOQO1G0f1G0fO%TQUO1G0fO$8YQ(C[O1G0fO$8eQ(C[O1G0fO!@^QWO1G0YOCaQWO1G0YO$8sQ(C[O1G0fOOQO1G0Y1G0YO$9XQ(CjO1G0fPOOO-EuO$9uQSO1G5lO$9}QSO1G5yO$:VQbO1G5zO8|QSO,5>{O$:aQ(CjO1G5wO%TQUO1G5wO$:qQ(C[O1G5wO$;SQSO1G5vO$;SQSO1G5vO8|QSO1G5vO$;[QSO,5?OO8|QSO,5?OOOQO,5?O,5?OO$;pQSO,5?OO$$QQSO,5?OOOQO-EqQ(CjO,5VOOQQ,5>V,5>VO%TQUO'#HlO%(SQSO'#HnOOQQ,5>],5>]O8|QSO,5>]OOQQ,5>_,5>_OOQQ7+)a7+)aOOQQ7+)g7+)gOOQQ7+)k7+)kOOQQ7+)m7+)mO%(XQWO1G5nO%(mQ$IUO1G0sO%(wQSO1G0sOOQO1G/m1G/mO%)SQ$IUO1G/mO>cQSO1G/mO!){QUO'#DgOOQO,5>v,5>vOOQO-E|,5>|OOQO-E<`-E<`O!@^QWO1G/mOOQO-E<]-E<]OOQ(CY1G0X1G0XOOQ(CY7+%q7+%qO#$vQSO7+%qOOQ(CY7+&X7+&XO>cQSO7+&XO!@^QWO7+&XOOQO7+%t7+%tO$9XQ(CjO7+&QOOQO7+&Q7+&QO%TQUO7+&QO%)^Q(C[O7+&QO!@RQ(C[O7+%tO!@^QWO7+%tO%)iQ(C[O7+&QO%)wQ(CjO7++cO%TQUO7++cO%*XQSO7++bO%*XQSO7++bOOQO1G4j1G4jO8|QSO1G4jO%*aQSO1G4jOOQO7+%y7+%yO#$vQSO<wOOQO-ExO%TQUO,5>xOOQO-E<[-E<[O%2aQSO1G5pOOQ(CY<QQ$IUO1G0xO%>XQ$IUO1G0xO%@PQ$IUO1G0xO%@dQ(CjO<WOOQQ,5>Y,5>YO%M}QSO1G3wO8|QSO7+&_O!){QUO7+&_OOQO7+%X7+%XO%NSQ$IUO1G5zO>cQSO7+%XOOQ(CY<cQSO<cQSO7+)cO&5kQSO<zAN>zO%TQUOAN?WOOQO<TQSOANAxOOQQANAzANAzO9^Q(C[OANAzO#MsQSOANAzOOQO'#HV'#HVOOQO7+*d7+*dOOQQG22tG22tOOQQANEOANEOOOQQANEPANEPOOQQANBSANBSO&>]QSOANBSOOQQ<bQSOLD,iO&>jQ$IUO7+'sO&@`Q$IUO7+'uO&BUQ,UOG26{OOQO<ROPYXXYXkYXyYXzYX|YX!eYX!fYX!hYX!lYX#XYX#dcX#gYX#hYX#iYX#jYX#kYX#lYX#mYX#nYX#oYX#qYX#sYX#uYX#vYX#{YX(SYX(cYX(jYX(kYX!VYX!WYX~O#yYX~P#@lOP$[OX:XOk9{Oy#xOz#yO|#zO!e9}O!f#vO!h#wO!l$[O#g9yO#h9zO#i9zO#j9zO#k9|O#l9}O#m9}O#n:WO#o9}O#q:OO#s:QO#u:SO#v:TO(SVO(c$YO(j#{O(k#|O~O#y.hO~P#ByO#X:YO#{:YO#y(XX!W(XX~PN}O^'Za!V'Za'l'Za'j'Za!g'Za!S'Zao'Za!X'Za%a'Za!a'Za~P!7sOP#fiX#fi^#fik#fiz#fi!V#fi!e#fi!f#fi!h#fi!l#fi#g#fi#h#fi#i#fi#j#fi#k#fi#l#fi#m#fi#n#fi#o#fi#q#fi#s#fi#u#fi#v#fi'l#fi(S#fi(c#fi'j#fi!S#fi!g#fio#fi!X#fi%a#fi!a#fi~P#,`O^#zi!V#zi'l#zi'j#zi!S#zi!g#zio#zi!X#zi%a#zi!a#zi~P!7sO$W.mO$Y.mO~O$W.nO$Y.nO~O!a)^O#X.oO!X$^X$T$^X$W$^X$Y$^X$a$^X~O!U.pO~O!X)aO$T.rO$W)`O$Y)`O$a.sO~O!V:UO!W(WX~P#ByO!W.tO~O!a)^O$a(lX~O$a.vO~Oq)pO(T)qO(U.yO~O!S.}O~P!&VO!VcX!acX!gcX!g$sX(ccX~P!/ZO!g/TO~P#,`O!V/UO!a#tO(c'fO!g(pX~O!g/ZO~O!U*RO'u%_O!g(pP~O#d/]O~O!S$sX!V$sX!a$zX~P!/ZO!V/^O!S(qX~P#,`O!a/`O~O!S/bO~Ok/fO!a#tO!h%]O(O%QO(c'fO~O'u/hO~O!a+XO~O^%fO!V/lO'l%fO~O!W/nO~P!3XO!]/oO!^/oO'v!kO(V!lO~O|/qO(V!lO~O#T/rO~O'u&POd'`X!V'`X~O!V*kOd(Pa~Od/wO~Oy/xOz/xO|/yOgva(jva(kva!Vva#Xva~Odva#yva~P$ aOy)uO|)vOg$la(j$la(k$la!V$la#X$la~Od$la#y$la~P$!VOy)uO|)vOg$na(j$na(k$na!V$na#X$na~Od$na#y$na~P$!xO#d/{O~Od$|a!V$|a#X$|a#y$|a~P!0dO!a#tO~O#d0OO~O!V*|O^(ua'l(ua~Oy#xOz#yO|#zO!f#vO!h#wO(SVOP!niX!nik!ni!V!ni!e!ni!l!ni#g!ni#h!ni#i!ni#j!ni#k!ni#l!ni#m!ni#n!ni#o!ni#q!ni#s!ni#u!ni#v!ni(c!ni(j!ni(k!ni~O^!ni'l!ni'j!ni!S!ni!g!nio!ni!X!ni%a!ni!a!ni~P$$gOg.TO!X'UO%a.SO~Oi0YO'u0XO~P!1UO!a+XO^'}a!X'}a'l'}a!V'}a~O#d0`O~OXYX!VcX!WcX~O!V0aO!W(yX~O!W0cO~OX0dO~O'u+aO'wTO'zUO~O!X%vO'u%_O]'hX!V'hX~O!V+fO](xa~O!g0iO~P!7sOX0lO~O]0mO~O#X0pO~Og0sO!X${O~O(V(sO!W(vP~Og0|O!X0yO%a0{O(O%QO~OX1WO!V1UO!W(wX~O!W1XO~O]1ZO^%fO'l%fO~O'u#lO'wTO'zUO~O#X$dO#{$dOP(XXX(XXk(XXy(XXz(XX|(XX!V(XX!e(XX!h(XX!l(XX#g(XX#h(XX#i(XX#j(XX#k(XX#l(XX#m(XX#n(XX#q(XX#s(XX#u(XX#v(XX(S(XX(c(XX(j(XX(k(XX~O#o1^O&R1_O^(XX!f(XX~P$+]O#X$dO#o1^O&R1_O~O^1aO~P%TO^1cO~O&[1fOP&YiQ&YiV&Yi^&Yia&Yib&Yii&Yik&Yil&Yim&Yis&Yiu&Yiw&Yi|&Yi!Q&Yi!R&Yi!X&Yi!c&Yi!h&Yi!k&Yi!l&Yi!m&Yi!o&Yi!q&Yi!t&Yi!x&Yi#p&Yi$Q&Yi$U&Yi%`&Yi%b&Yi%d&Yi%e&Yi%f&Yi%i&Yi%k&Yi%n&Yi%o&Yi%q&Yi%}&Yi&T&Yi&V&Yi&X&Yi&Z&Yi&^&Yi&d&Yi&j&Yi&l&Yi&n&Yi&p&Yi&r&Yi'j&Yi'u&Yi'w&Yi'z&Yi(S&Yi(b&Yi(o&Yi!W&Yi_&Yi&a&Yi~O_1lO!W1jO&a1kO~P`O!XXO!h1nO~O&h,iOP&ciQ&ciV&ci^&cia&cib&cii&cik&cil&cim&cis&ciu&ciw&ci|&ci!Q&ci!R&ci!X&ci!c&ci!h&ci!k&ci!l&ci!m&ci!o&ci!q&ci!t&ci!x&ci#p&ci$Q&ci$U&ci%`&ci%b&ci%d&ci%e&ci%f&ci%i&ci%k&ci%n&ci%o&ci%q&ci%}&ci&T&ci&V&ci&X&ci&Z&ci&^&ci&d&ci&j&ci&l&ci&n&ci&p&ci&r&ci'j&ci'u&ci'w&ci'z&ci(S&ci(b&ci(o&ci!W&ci&[&ci_&ci&a&ci~O!S1tO~O!V!Za!W!Za~P#ByOl!mO|!nO!U1zO(V!lO!V'OX!W'OX~P?wO!V,yO!W(Za~O!V'UX!W'UX~P!6{O!V,|O!W(ia~O!W2RO~P'WO^%fO#X2[O'l%fO~O^%fO!a#tO#X2[O'l%fO~O^%fO!a#tO!l2`O#X2[O'l%fO(c'fO~O^%fO'l%fO~P!7sO!V$`Oo$ka~O!S&}i!V&}i~P!7sO!V'zO!S(Yi~O!V(RO!S(gi~O!S(hi!V(hi~P!7sO!V(ei!g(ei^(ei'l(ei~P!7sO#X2bO!V(ei!g(ei^(ei'l(ei~O!V(_O!g(di~O|%`O!X%aO!x]O#b2gO#c2fO'u%_O~O|%`O!X%aO#c2fO'u%_O~Og2nO!X'UO%a2mO~Og2nO!X'UO%a2mO(O%QO~O#dvaPvaXva^vakva!eva!fva!hva!lva#gva#hva#iva#jva#kva#lva#mva#nva#ova#qva#sva#uva#vva'lva(Sva(cva!gva!Sva'jvaova!Xva%ava!ava~P$ aO#d$laP$laX$la^$lak$laz$la!e$la!f$la!h$la!l$la#g$la#h$la#i$la#j$la#k$la#l$la#m$la#n$la#o$la#q$la#s$la#u$la#v$la'l$la(S$la(c$la!g$la!S$la'j$lao$la!X$la%a$la!a$la~P$!VO#d$naP$naX$na^$nak$naz$na!e$na!f$na!h$na!l$na#g$na#h$na#i$na#j$na#k$na#l$na#m$na#n$na#o$na#q$na#s$na#u$na#v$na'l$na(S$na(c$na!g$na!S$na'j$nao$na!X$na%a$na!a$na~P$!xO#d$|aP$|aX$|a^$|ak$|az$|a!V$|a!e$|a!f$|a!h$|a!l$|a#g$|a#h$|a#i$|a#j$|a#k$|a#l$|a#m$|a#n$|a#o$|a#q$|a#s$|a#u$|a#v$|a'l$|a(S$|a(c$|a!g$|a!S$|a'j$|a#X$|ao$|a!X$|a%a$|a!a$|a~P#,`O^#[q!V#[q'l#[q'j#[q!S#[q!g#[qo#[q!X#[q%a#[q!a#[q~P!7sOd'PX!V'PX~P!'oO!V.^Od(]a~O!U2vO!V'QX!g'QX~P%TO!V.aO!g(^a~O!V.aO!g(^a~P!7sO!S2yO~O#y!ja!W!ja~PJqO#y!ba!V!ba!W!ba~P#ByO#y!na!W!na~P!:^O#y!pa!W!pa~P!`O^#wy!V#wy'l#wy'j#wy!S#wy!g#wyo#wy!X#wy%a#wy!a#wy~P!7sOg;lOy)uO|)vO(j)xO(k)zO~OP#fiX#fik#fiz#fi!e#fi!f#fi!h#fi!l#fi#g#fi#h#fi#i#fi#j#fi#k#fi#l#fi#m#fi#n#fi#o#fi#q#fi#s#fi#u#fi#v#fi#y#fi(S#fi(c#fi!V#fi!W#fi~P%AWO!f#vOP(RXX(RXg(RXk(RXy(RXz(RX|(RX!e(RX!h(RX!l(RX#g(RX#h(RX#i(RX#j(RX#k(RX#l(RX#m(RX#n(RX#o(RX#q(RX#s(RX#u(RX#v(RX#y(RX(S(RX(c(RX(j(RX(k(RX!V(RX!W(RX~O#y#zi!V#zi!W#zi~P#ByO#y!ni!W!ni~P$$gO!W6_O~O!V'Za!W'Za~P#ByO!a#tO(c'fO!V'[a!g'[a~O!V/UO!g(pi~O!V/UO!a#tO!g(pi~Od$uq!V$uq#X$uq#y$uq~P!0dO!S'^a!V'^a~P#,`O!a6fO~O!V/^O!S(qi~P#,`O!V/^O!S(qi~O!S6jO~O!a#tO#o6oO~Ok6pO!a#tO(c'fO~O!S6rO~Od$wq!V$wq#X$wq#y$wq~P!0dO^$iy!V$iy'l$iy'j$iy!S$iy!g$iyo$iy!X$iy%a$iy!a$iy~P!7sO!a5jO~O!V4VO!X(ra~O^#[y!V#[y'l#[y'j#[y!S#[y!g#[yo#[y!X#[y%a#[y!a#[y~P!7sOX6wO~O!V0aO!W(yi~O]6}O~O(V(sO!V'cX!W'cX~O!V4mO!W(va~OikO'u7UO~P.bO!W7XO~P%$gOl!mO|7YO'wTO'zUO(V!lO(b!rO~O!X0yO~O!X0yO%a7[O~Og7_O!X0yO%a7[O~OX7dO!V'fa!W'fa~O!V1UO!W(wi~O!g7hO~O!g7iO~O!g7lO~O!g7lO~P%TO^7nO~O!a7oO~O!g7pO~O!V(hi!W(hi~P#ByO^%fO#X7xO'l%fO~O!V(ey!g(ey^(ey'l(ey~P!7sO!V(_O!g(dy~O!X'UO%a7{O~O#d$uqP$uqX$uq^$uqk$uqz$uq!V$uq!e$uq!f$uq!h$uq!l$uq#g$uq#h$uq#i$uq#j$uq#k$uq#l$uq#m$uq#n$uq#o$uq#q$uq#s$uq#u$uq#v$uq'l$uq(S$uq(c$uq!g$uq!S$uq'j$uq#X$uqo$uq!X$uq%a$uq!a$uq~P#,`O#d$wqP$wqX$wq^$wqk$wqz$wq!V$wq!e$wq!f$wq!h$wq!l$wq#g$wq#h$wq#i$wq#j$wq#k$wq#l$wq#m$wq#n$wq#o$wq#q$wq#s$wq#u$wq#v$wq'l$wq(S$wq(c$wq!g$wq!S$wq'j$wq#X$wqo$wq!X$wq%a$wq!a$wq~P#,`O!V'Qi!g'Qi~P!7sO#y#[q!V#[q!W#[q~P#ByOy/xOz/xO|/yOPvaXvagvakva!eva!fva!hva!lva#gva#hva#iva#jva#kva#lva#mva#nva#ova#qva#sva#uva#vva#yva(Sva(cva(jva(kva!Vva!Wva~Oy)uO|)vOP$laX$lag$lak$laz$la!e$la!f$la!h$la!l$la#g$la#h$la#i$la#j$la#k$la#l$la#m$la#n$la#o$la#q$la#s$la#u$la#v$la#y$la(S$la(c$la(j$la(k$la!V$la!W$la~Oy)uO|)vOP$naX$nag$nak$naz$na!e$na!f$na!h$na!l$na#g$na#h$na#i$na#j$na#k$na#l$na#m$na#n$na#o$na#q$na#s$na#u$na#v$na#y$na(S$na(c$na(j$na(k$na!V$na!W$na~OP$|aX$|ak$|az$|a!e$|a!f$|a!h$|a!l$|a#g$|a#h$|a#i$|a#j$|a#k$|a#l$|a#m$|a#n$|a#o$|a#q$|a#s$|a#u$|a#v$|a#y$|a(S$|a(c$|a!V$|a!W$|a~P%AWO#y$hq!V$hq!W$hq~P#ByO#y$iq!V$iq!W$iq~P#ByO!W8VO~O#y8WO~P!0dO!a#tO!V'[i!g'[i~O!a#tO(c'fO!V'[i!g'[i~O!V/UO!g(pq~O!S'^i!V'^i~P#,`O!V/^O!S(qq~O!S8^O~P#,`O!S8^O~Od(Qy!V(Qy~P!0dO!V'aa!X'aa~P#,`O^%Tq!X%Tq'l%Tq!V%Tq~P#,`OX8cO~O!V0aO!W(yq~O#X8gO!V'ca!W'ca~O!V4mO!W(vi~P#ByOPYXXYXkYXyYXzYX|YX!SYX!VYX!eYX!fYX!hYX!lYX#XYX#dcX#gYX#hYX#iYX#jYX#kYX#lYX#mYX#nYX#oYX#qYX#sYX#uYX#vYX#{YX(SYX(cYX(jYX(kYX~O!a%RX#o%RX~P&2WO!X0yO%a8kO~O'wTO'zUO(V8pO~O!V1UO!W(wq~O!g8sO~O!g8tO~O!g8uO~O!g8uO~P%TO#X8xO!V#ay!W#ay~O!V#ay!W#ay~P#ByO!X'UO%a8}O~O#y#wy!V#wy!W#wy~P#ByOP$uiX$uik$uiz$ui!e$ui!f$ui!h$ui!l$ui#g$ui#h$ui#i$ui#j$ui#k$ui#l$ui#m$ui#n$ui#o$ui#q$ui#s$ui#u$ui#v$ui#y$ui(S$ui(c$ui!V$ui!W$ui~P%AWOy)uO|)vO(k)zOP%XiX%Xig%Xik%Xiz%Xi!e%Xi!f%Xi!h%Xi!l%Xi#g%Xi#h%Xi#i%Xi#j%Xi#k%Xi#l%Xi#m%Xi#n%Xi#o%Xi#q%Xi#s%Xi#u%Xi#v%Xi#y%Xi(S%Xi(c%Xi(j%Xi!V%Xi!W%Xi~Oy)uO|)vOP%ZiX%Zig%Zik%Ziz%Zi!e%Zi!f%Zi!h%Zi!l%Zi#g%Zi#h%Zi#i%Zi#j%Zi#k%Zi#l%Zi#m%Zi#n%Zi#o%Zi#q%Zi#s%Zi#u%Zi#v%Zi#y%Zi(S%Zi(c%Zi(j%Zi(k%Zi!V%Zi!W%Zi~O#y$iy!V$iy!W$iy~P#ByO#y#[y!V#[y!W#[y~P#ByO!a#tO!V'[q!g'[q~O!V/UO!g(py~O!S'^q!V'^q~P#,`O!S9UO~P#,`O!V0aO!W(yy~O!V4mO!W(vq~O!X0yO%a9]O~O!g9`O~O!X'UO%a9eO~OP$uqX$uqk$uqz$uq!e$uq!f$uq!h$uq!l$uq#g$uq#h$uq#i$uq#j$uq#k$uq#l$uq#m$uq#n$uq#o$uq#q$uq#s$uq#u$uq#v$uq#y$uq(S$uq(c$uq!V$uq!W$uq~P%AWOP$wqX$wqk$wqz$wq!e$wq!f$wq!h$wq!l$wq#g$wq#h$wq#i$wq#j$wq#k$wq#l$wq#m$wq#n$wq#o$wq#q$wq#s$wq#u$wq#v$wq#y$wq(S$wq(c$wq!V$wq!W$wq~P%AWOd%]!Z!V%]!Z#X%]!Z#y%]!Z~P!0dO!V'cq!W'cq~P#ByO!V#a!Z!W#a!Z~P#ByO#d%]!ZP%]!ZX%]!Z^%]!Zk%]!Zz%]!Z!V%]!Z!e%]!Z!f%]!Z!h%]!Z!l%]!Z#g%]!Z#h%]!Z#i%]!Z#j%]!Z#k%]!Z#l%]!Z#m%]!Z#n%]!Z#o%]!Z#q%]!Z#s%]!Z#u%]!Z#v%]!Z'l%]!Z(S%]!Z(c%]!Z!g%]!Z!S%]!Z'j%]!Z#X%]!Zo%]!Z!X%]!Z%a%]!Z!a%]!Z~P#,`OP%]!ZX%]!Zk%]!Zz%]!Z!e%]!Z!f%]!Z!h%]!Z!l%]!Z#g%]!Z#h%]!Z#i%]!Z#j%]!Z#k%]!Z#l%]!Z#m%]!Z#n%]!Z#o%]!Z#q%]!Z#s%]!Z#u%]!Z#v%]!Z#y%]!Z(S%]!Z(c%]!Z!V%]!Z!W%]!Z~P%AWOo(WX~P1jO'v!kO~P!){O!ScX!VcX#XcX~P&2WOPYXXYXkYXyYXzYX|YX!VYX!VcX!eYX!fYX!hYX!lYX#XYX#XcX#dcX#gYX#hYX#iYX#jYX#kYX#lYX#mYX#nYX#oYX#qYX#sYX#uYX#vYX#{YX(SYX(cYX(jYX(kYX~O!acX!gYX!gcX(ccX~P&GnOP9pOQ9pOa;aOb!hOikOk9pOlkOmkOskOu9pOw9pO|WO!QkO!RkO!XXO!c9sO!hZO!k9pO!l9pO!m9pO!o9tO!q9wO!t!gO$Q!jO$UfO'u)TO'wTO'zUO(SVO(b[O(o;_O~O!V:UO!W$ka~Oi%ROk$sOl$rOm$rOs%SOu%TOw:[O|$zO!X${O!c;fO!h$wO#c:bO$Q%XO$m:^O$o:`O$r%YO'u(kO'wTO'zUO(O%QO(S$tO~O#p)[O~P&LdO!WYX!WcX~P&GnO#d9xO~O!a#tO#d9xO~O#X:YO~O#o9}O~O#X:dO!V(hX!W(hX~O#X:YO!V(fX!W(fX~O#d:eO~Od:gO~P!0dO#d:lO~O#d:mO~O!a#tO#d:nO~O!a#tO#d:eO~O#y:oO~P#ByO#d:pO~O#d:qO~O#d:rO~O#d:sO~O#d:tO~O#d:uO~O#y:vO~P!0dO#y:wO~P!0dO$U~!f!|!}#P#Q#T#b#c#n(o$m$o$r%U%`%a%b%i%k%n%o%q%s~'pR$U(o#h!R'n'v#il#g#jky'o(V'o'u$W$Y$W~",goto:"$&a(}PPPP)OP)RP)cP*r.uPPPP5UPP5kP;f>mP?QP?QPPP?QP@rP?QP?QP?QP@vPP@{PAfPF]PPPFaPPPPFaIaPPPIgJbPFaPLoPPPPN}FaPPPFaPFaP!#]FaP!&p!'r!'{P!(n!(r!(nPPPPP!+|!'rPP!,j!-dP!0WFaFa!0]!3f!7z!7z!;oPPP!;vFaPPPPPPPPPPP!?SP!@ePPFa!ArPFaPFaFaFaFaPFa!CUPP!F]P!I`P!Id!In!Ir!IrP!FYP!Iv!IvP!LyP!L}FaFa!MT#!V?QP?QP?Q?QP##a?Q?Q#%]?Q#'l?Q#)b?Q?Q#*O#+|#+|#,Q#,Y#+|#,bP#+|P?Q#,z?Q#.T?Q?Q5UPPP#/aPPP#/y#/yP#/yP#0`#/yPP#0fP#0]P#0]#0x#0]#1d#1j5R)R#1m)RP#1t#1t#1tP)RP)RP)RP)RPP)RP#1z#1}P#1})RP#2RP#2UP)RP)RP)RP)RP)RP)R)RPP#2[#2b#2l#2r#2x#3O#3U#3d#3j#3p#3z#4Q#4[#4k#4q#5b#5t#5z#6Q#6`#6u#8W#8f#8l#8r#8x#9O#9Y#9`#9f#9p#:S#:YPPPPPPPPPP#:`PPPPPPP#;S#>ZP#?j#?q#?yPPPP#DX#F}#Me#Mh#Mk#Nd#Ng#Nj#Nq#NyPP$ P$ T$ {$!z$#O$#dPP$#h$#n$#rP$#u$#y$#|$$r$%Y$%p$%t$%w$%z$&Q$&T$&X$&]R!zRmqOXs!Y#b%e&h&j&k&m,a,f1f1iY!tQ'U-R0y4tQ%kuQ%sxQ%z{Q&`!US&|!d,yQ'[!hS'b!q!wS*^${*cQ+_%tQ+l%|Q,Q&YQ-P'TQ-Z']Q-c'cQ/o*eQ1T,RR:c9t$|dOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$`$d%e%k%x&a&d&h&j&k&m&q&y'W'h'x'z(Q(X(m(q(u)t*w*{,^,a,f-V-_-m-s.a.h/y0O0`0|1^1_1a1c1f1i1k2[2b2v4q4{5]5^5a5t7Y7_7n7xS#o]9q!r)V$Z$l&})i,r,u.p1z3]4o5k8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bQ*n%UQ+d%vQ,S&]Q,Z&eQ.W:ZQ0V+VQ0Z+XQ0f+eQ1],XQ2j.TQ4_0aQ5S1UQ6Q2nQ6W:[Q6y4`R8O6R&zkOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$Z$`$d$l%e%k%x&a&d&e&h&j&k&m&q&y&}'W'h'x'z(Q(X(m(q(u)i)t*w*{+V,^,a,f,r,u-V-_-m-s.T.a.h.p/y0O0`0|1^1_1a1c1f1i1k1z2[2b2n2v3]4o4q4{5]5^5a5k5t6R7Y7_7n7x8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bt!mQ!q!t!w!x&|'T'U'b'c'd,y-P-R-c0y4t4v$^$ri#t#v$b$c$w$z%V%W%[)p)v)y){)|*T*Z*i*j+U+X+p+s.S.^/O/]/^/`/{0p0s0{2m3e3o3w3}4V4X4z6O6f6o7[7{8W8k8}9]9e:W:X:]:^:_:`:a:b:h:i:j:k:l:m:p:q:r:s:v:w;_;g;h;k;lQ%}{Q&z!dS'Q%a,|Q+d%vQ/z*rQ0f+eQ0k+kQ1[,WQ1],XQ4_0aQ4h0mQ5V1WQ5W1ZQ6y4`Q6|4eQ7g5YQ8f6}R8q7dpnOXs!U!Y#b%e&_&h&j&k&m,a,f1f1iR,U&a&t^OPXYstuvy!Y!_!f!i!n#Q#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$Z$`$d$l%e%k%x&a&d&e&h&j&k&m&q&y'W'h'z(Q(X(m(q(u)i)t*w*{+V,^,a,f,r,u-V-_-m-s.T.a.h.p/y0O0`0|1^1_1a1c1f1i1k1z2[2b2n2v3]4o4q4{5]5^5a5k5t6R7Y7_7n7x8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;a;b[#ZWZ#U#X&}'x!S%bm#f#g#j%]%`(R(](^(_*y*z*|,],s-q-w-x-y-{1n2f2g5j5{Q%nwQ%rxS%w{%|Q&T!SQ'X!gQ'Z!hQ(f#qS*Q$w*US+^%s%tQ+b%vQ+{&WQ,P&YS-Y'[']Q.V(gQ/Y*RQ0_+_Q0e+eQ0g+fQ0j+jQ1O+|S1S,Q,RQ2W-ZQ3f/UQ4^0aQ4b0dQ4g0lQ5R1TQ6c3gQ6x4`Q6{4dQ8b6wR9W8cv$yi#v%V%W%[)y){*T*i*j.^/]/{3e3}8W;_;g;h!S%px!h!s%r%s%t&{'Z'[']'a'k*]+^+_,v-Y-Z-b/g0_2P2W2_3yQ+W%nQ+q&QQ+t&RQ,O&YQ.U(fQ0}+{U1R,P,Q,RQ2o.VQ4|1OS5Q1S1TQ7c5R#O;c#t$b$c$w$z)p)v)|*Z+U+X+p+s.S/O/^/`0p0s0{2m3o3w4V4X4z6O6f6o7[7{8k8}9]9e:]:_:a:h:j:l:p:r:v;k;lg;d:W:X:^:`:b:i:k:m:q:s:wW%Oi%Q*k;_S&Q!P&_Q&R!QQ&S!RR+o&O$_$}i#t#v$b$c$w$z%V%W%[)p)v)y){)|*T*Z*i*j+U+X+p+s.S.^/O/]/^/`/{0p0s0{2m3e3o3w3}4V4X4z6O6f6o7[7{8W8k8}9]9e:W:X:]:^:_:`:a:b:h:i:j:k:l:m:p:q:r:s:v:w;_;g;h;k;lT)q$t)rV*o%U:Z:[U'Q!d%a,|S(t#x#yQ+i%yS.O(b(cQ0t+uQ4O/xR7R4m&zkOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$Z$`$d$l%e%k%x&a&d&e&h&j&k&m&q&y&}'W'h'x'z(Q(X(m(q(u)i)t*w*{+V,^,a,f,r,u-V-_-m-s.T.a.h.p/y0O0`0|1^1_1a1c1f1i1k1z2[2b2n2v3]4o4q4{5]5^5a5k5t6R7Y7_7n7x8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;b$i$_c#W#c%i%j%l'w'}(i(p(x(y(z({(|(})O)P)Q)R)S)U)X)])g+S+h,w-f-k-p-r.].c.g.i.j.k.z/|1u1x2Y2a2u2z2{2|2}3O3P3Q3R3S3T3U3V3W3Z3[3a4S4[5m5s5x6U6V6[6]7T7r7v8P8T8U8z9Y9a9r;UT#RV#S&{kOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$Z$`$d$l%e%k%x&a&d&e&h&j&k&m&q&y&}'W'h'x'z(Q(X(m(q(u)i)t*w*{+V,^,a,f,r,u-V-_-m-s.T.a.h.p/y0O0`0|1^1_1a1c1f1i1k1z2[2b2n2v3]4o4q4{5]5^5a5k5t6R7Y7_7n7x8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bQ'O!dR1{,yv!mQ!d!q!t!w!x&|'T'U'b'c'd,y-P-R-c0y4t4vS*]${*cS/g*^*eQ/p*fQ0v+wQ3y/oR3|/rlqOXs!Y#b%e&h&j&k&m,a,f1f1iQ&o!]Q'l!vS(h#s9xQ+[%qQ+y&TQ+z&VQ-W'YQ-e'eS.[(m:eS/}*w:nQ0]+]Q0x+xQ1m,hQ1o,iQ1w,tQ2U-XQ2X-]S4T0O:tQ4Y0^S4]0`:uQ5l1yQ5p2VQ5u2^Q6v4ZQ7s5nQ7t5qQ7w5vR8w7p$d$^c#W#c%j%l'w'}(i(p(x(y(z({(|(})O)P)Q)R)S)U)X)])g+S+h,w-f-k-p-r.].c.g.j.k.z/|1u1x2Y2a2u2z2{2|2}3O3P3Q3R3S3T3U3V3W3Z3[3a4S4[5m5s5x6U6V6[6]7T7r7v8P8T8U8z9Y9a9r;US(e#n'_U*h$|(l3YS+R%i.iQ2k0VQ5}2jQ7}6QR9O8O$d$]c#W#c%j%l'w'}(i(p(x(y(z({(|(})O)P)Q)R)S)U)X)])g+S+h,w-f-k-p-r.].c.g.j.k.z/|1u1x2Y2a2u2z2{2|2}3O3P3Q3R3S3T3U3V3W3Z3[3a4S4[5m5s5x6U6V6[6]7T7r7v8P8T8U8z9Y9a9r;US(d#n'_S(v#y$^S+Q%i.iS.P(c(eQ.l)WQ0S+RR2h.Q&zkOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$Z$`$d$l%e%k%x&a&d&e&h&j&k&m&q&y&}'W'h'x'z(Q(X(m(q(u)i)t*w*{+V,^,a,f,r,u-V-_-m-s.T.a.h.p/y0O0`0|1^1_1a1c1f1i1k1z2[2b2n2v3]4o4q4{5]5^5a5k5t6R7Y7_7n7x8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bS#o]9qQ&j!WQ&k!XQ&m!ZQ&n![R1e,dQ'V!gQ+T%nQ-U'XS.R(f+WQ2S-TW2l.U.V0U0WQ5o2TU5|2i2k2oS7z5}6PS8|7|7}S9c8{9OQ9k9dR9n9lU!uQ'U-RT4r0y4t!O_OXZ`s!U!Y#b#f%]%e&_&a&h&j&k&m(_,a,f-x1f1i]!oQ!q'U-R0y4tT#o]9q%WzOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$`$d%e%k%x&a&d&e&h&j&k&m&q&y'W'h'x'z(Q(X(m(q(u)t*w*{+V,^,a,f-V-_-m-s.T.a.h/y0O0`0|1^1_1a1c1f1i1k2[2b2n2v4q4{5]5^5a5t6R7Y7_7n7xS(t#x#yS.O(b(c!s:{$Z$l&})i,r,u.p1z3]4o5k8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bY!sQ'U-R0y4tQ'a!qS'k!t!wS'm!x4vS-b'b'cQ-d'dR2_-cQ'j!sS(Z#e1`S-a'a'mQ/X*QQ/e*]Q2`-dQ3k/YS3t/f/pQ6b3fS6m3z3|Q8Y6cR8a6pQ#ubQ'i!sS(Y#e1`S([#k*vQ*x%^Q+Y%oQ+`%uU-`'a'j'mQ-t(ZQ/W*QQ/d*]Q/j*`Q0[+ZQ1P+}S2]-a-dQ2e-|S3j/X/YS3s/e/pQ3v/iQ3x/kQ5O1QQ5w2`Q6a3fQ6e3kS6i3t3|Q6n3{Q7a5PS8X6b6cQ8]6jQ8_6mQ8n7bQ9S8YQ9T8^Q9V8aQ9_8oQ9g9UQ;O:yQ;Z;SR;[;TV!uQ'U-R%WaOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$`$d%e%k%x&a&d&e&h&j&k&m&q&y'W'h'x'z(Q(X(m(q(u)t*w*{+V,^,a,f-V-_-m-s.T.a.h/y0O0`0|1^1_1a1c1f1i1k2[2b2n2v4q4{5]5^5a5t6R7Y7_7n7xS#uy!i!r:x$Z$l&})i,r,u.p1z3]4o5k8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bR;O;a%WbOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$`$d%e%k%x&a&d&e&h&j&k&m&q&y'W'h'x'z(Q(X(m(q(u)t*w*{+V,^,a,f-V-_-m-s.T.a.h/y0O0`0|1^1_1a1c1f1i1k2[2b2n2v4q4{5]5^5a5t6R7Y7_7n7xQ%^j!S%ox!h!s%r%s%t&{'Z'[']'a'k*]+^+_,v-Y-Z-b/g0_2P2W2_3yS%uy!iQ+Z%pQ+}&YW1Q,O,P,Q,RU5P1R1S1TS7b5Q5RQ8o7c!r:y$Z$l&})i,r,u.p1z3]4o5k8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bQ;S;`R;T;a$zeOPXYstuv!Y!_!f!n#Q#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$`$d%e%k%x&a&d&h&j&k&m&q&y'W'h'z(Q(X(m(q(u)t*w*{+V,^,a,f-V-_-m-s.T.a.h/y0O0`0|1^1_1a1c1f1i1k2[2b2n2v4q4{5]5^5a5t6R7Y7_7n7xY#`WZ#U#X'x!S%bm#f#g#j%]%`(R(](^(_*y*z*|,],s-q-w-x-y-{1n2f2g5j5{Q,[&e!p:z$Z$l)i,r,u.p1z3]4o5k8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bR:}&}S'R!d%aR1},|$|dOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$`$d%e%k%x&a&d&h&j&k&m&q&y'W'h'x'z(Q(X(m(q(u)t*w*{,^,a,f-V-_-m-s.a.h/y0O0`0|1^1_1a1c1f1i1k2[2b2v4q4{5]5^5a5t7Y7_7n7x!r)V$Z$l&})i,r,u.p1z3]4o5k8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bQ,Z&eQ0V+VQ2j.TQ6Q2nR8O6R!f$Tc#W%i'w'}(i(p)P)Q)R)S)X)]+h-f-k-p-r.].c.z/|2Y2a2u3W4S4[5s5x6U7v8z9r!T:P)U)g,w.i1u1x2z3S3T3U3V3Z3a5m6V6[6]7T7r8P8T8U9Y9a;U!b$Vc#W%i'w'}(i(p)R)S)X)]+h-f-k-p-r.].c.z/|2Y2a2u3W4S4[5s5x6U7v8z9r!P:R)U)g,w.i1u1x2z3U3V3Z3a5m6V6[6]7T7r8P8T8U9Y9a;U!^$Zc#W%i'w'}(i(p)X)]+h-f-k-p-r.].c.z/|2Y2a2u3W4S4[5s5x6U7v8z9rQ3e/Sz;b)U)g,w.i1u1x2z3Z3a5m6V6[6]7T7r8P8T8U9Y9a;UQ;g;iR;h;j&zkOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$Z$`$d$l%e%k%x&a&d&e&h&j&k&m&q&y&}'W'h'x'z(Q(X(m(q(u)i)t*w*{+V,^,a,f,r,u-V-_-m-s.T.a.h.p/y0O0`0|1^1_1a1c1f1i1k1z2[2b2n2v3]4o4q4{5]5^5a5k5t6R7Y7_7n7x8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bS$mh$nR3^.o'RgOPWXYZhstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$Z$`$d$l$n%e%k%x&a&d&e&h&j&k&m&q&y&}'W'h'x'z(Q(X(m(q(u)i)t*w*{+V,^,a,f,r,u-V-_-m-s.T.a.h.o.p/y0O0`0|1^1_1a1c1f1i1k1z2[2b2n2v3]4o4q4{5]5^5a5k5t6R7Y7_7n7x8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bT$if$oQ$gfS)`$j)dR)l$oT$hf$oT)b$j)d'RhOPWXYZhstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$Z$`$d$l$n%e%k%x&a&d&e&h&j&k&m&q&y&}'W'h'x'z(Q(X(m(q(u)i)t*w*{+V,^,a,f,r,u-V-_-m-s.T.a.h.o.p/y0O0`0|1^1_1a1c1f1i1k1z2[2b2n2v3]4o4q4{5]5^5a5k5t6R7Y7_7n7x8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bT$mh$nQ$phR)k$n%WjOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$`$d%e%k%x&a&d&e&h&j&k&m&q&y'W'h'x'z(Q(X(m(q(u)t*w*{+V,^,a,f-V-_-m-s.T.a.h/y0O0`0|1^1_1a1c1f1i1k2[2b2n2v4q4{5]5^5a5t6R7Y7_7n7x!s;`$Z$l&})i,r,u.p1z3]4o5k8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;b#alOPXZs!Y!_!n#Q#b#m#z$l%e&a&d&e&h&j&k&m&q&y'W(u)i*{+V,^,a,f-V.T.p/y0|1^1_1a1c1f1i1k2n3]4q4{5]5^5a6R7Y7_7nv$|i#v%V%W%[)y){*T*i*j.^/]/{3e3}8W;_;g;h#O(l#t$b$c$w$z)p)v)|*Z+U+X+p+s.S/O/^/`0p0s0{2m3o3w4V4X4z6O6f6o7[7{8k8}9]9e:]:_:a:h:j:l:p:r:v;k;lQ*s%YQ.{)ug3Y:W:X:^:`:b:i:k:m:q:s:wv$xi#v%V%W%[)y){*T*i*j.^/]/{3e3}8W;_;g;hQ*V$yS*`${*cQ*t%ZQ/k*a#O;Q#t$b$c$w$z)p)v)|*Z+U+X+p+s.S/O/^/`0p0s0{2m3o3w4V4X4z6O6f6o7[7{8k8}9]9e:]:_:a:h:j:l:p:r:v;k;lf;R:W:X:^:`:b:i:k:m:q:s:wQ;V;cQ;W;dQ;X;eR;Y;fv$|i#v%V%W%[)y){*T*i*j.^/]/{3e3}8W;_;g;h#O(l#t$b$c$w$z)p)v)|*Z+U+X+p+s.S/O/^/`0p0s0{2m3o3w4V4X4z6O6f6o7[7{8k8}9]9e:]:_:a:h:j:l:p:r:v;k;lg3Y:W:X:^:`:b:i:k:m:q:s:wloOXs!Y#b%e&h&j&k&m,a,f1f1iQ*Y$zQ,o&tQ,p&vR3n/^$^$}i#t#v$b$c$w$z%V%W%[)p)v)y){)|*T*Z*i*j+U+X+p+s.S.^/O/]/^/`/{0p0s0{2m3e3o3w3}4V4X4z6O6f6o7[7{8W8k8}9]9e:W:X:]:^:_:`:a:b:h:i:j:k:l:m:p:q:r:s:v:w;_;g;h;k;lQ+r&RQ0r+tQ4k0qR7Q4lT*b${*cS*b${*cT4s0y4tS/i*_4qT3{/q7YQ+Y%oQ/j*`Q0[+ZQ1P+}Q5O1QQ7a5PQ8n7bR9_8on)y$u(n*u/[/s/t2s3l4R6`6q9R;P;];^!Y:h(j)Z*P*X.Z.w.|/S/a0T0o0q2r3m3q4j4l6S6T6g6k6s6u8[8`9f;i;j]:i3X6Z8Q9P9Q9op){$u(n*u/Q/[/s/t2s3l4R6`6q9R;P;];^![:j(j)Z*P*X.Z.w.|/S/a0T0o0q2p2r3m3q4j4l6S6T6g6k6s6u8[8`9f;i;j_:k3X6Z8Q8R9P9Q9opnOXs!U!Y#b%e&_&h&j&k&m,a,f1f1iQ&[!TR,^&epnOXs!U!Y#b%e&_&h&j&k&m,a,f1f1iR&[!TQ+v&SR0n+oqnOXs!U!Y#b%e&_&h&j&k&m,a,f1f1iQ0z+{S4y0}1OU7Z4w4x4|S8j7]7^S9Z8i8lQ9h9[R9m9iQ&c!UR,V&_R5V1WS%w{%|R0g+fQ&h!VR,a&iR,g&nT1g,f1iR,k&oQ,j&oR1p,kQ'o!yR-g'oQsOQ#bXT%hs#bQ!|TR'q!|Q#PUR's#PQ)r$tR.x)rQ#SVR'u#SQ#VWU'{#V'|-nQ'|#WR-n'}Q,z'OR1|,zQ._(nR2t._Q.b(pS2w.b2xR2x.cQ-R'UR2Q-RY!qQ'U-R0y4tR'`!qS#]W%`U(S#](T-oQ(T#^R-o(OQ,}'RR2O,}r`OXs!U!Y#b%e&_&a&h&j&k&m,a,f1f1iS#fZ%]U#p`#f-xR-x(_Q(`#hQ-u([W-}(`-u2c5yQ2c-vR5y2dQ)d$jR.q)dQ$nhR)j$nQ$acU)Y$a-j:VQ-j9rR:V)gQ/V*QW3h/V3i6d8ZU3i/W/X/YS6d3j3kR8Z6e#o)w$u(j(n)Z*P*X*p*q*u.X.Y.Z.w.|/Q/R/S/[/a/s/t0T0o0q2p2q2r2s3X3l3m3q4R4j4l6S6T6X6Y6Z6`6g6k6q6s6u8Q8R8S8[8`9P9Q9R9f9o;P;];^;i;jQ/_*XU3p/_3r6hQ3r/aR6h3qQ*c${R/m*cQ*l%PR/v*lQ4W0TR6t4WQ*}%cR0R*}Q4n0tS7S4n8hR8h7TQ+x&TR0w+xQ4t0yR7W4tQ1V,SS5T1V7eR7e5VQ0b+bW4a0b4c6z8dQ4c0eQ6z4bR8d6{Q+g%wR0h+gQ1i,fR5e1iWrOXs#bQ&l!YQ+P%eQ,`&hQ,b&jQ,c&kQ,e&mQ1d,aS1g,f1iR5d1fQ%gpQ&p!^Q&s!`Q&u!aQ&w!bQ'g!sQ+O%dQ+[%qQ+n%}Q,U&cQ,m&rW-^'a'i'j'mQ-e'eQ/l*bQ0]+]S1Y,V,YQ1q,lQ1r,oQ1s,pQ2X-]W2Z-`-a-d-fQ4Y0^Q4f0kQ4i0oQ4}1PQ5X1[Q5c1eU5r2Y2]2`Q5u2^Q6v4ZQ7O4hQ7P4jQ7V4sQ7`5OQ7f5WS7u5s5wQ7w5vQ8e6|Q8m7aQ8r7gQ8y7vQ9X8fQ9^8nQ9b8zR9j9_Q%qxQ'Y!hQ'e!sU+]%r%s%tQ,t&{U-X'Z'[']S-]'a'kQ/c*]S0^+^+_Q1y,vS2V-Y-ZQ2^-bQ3u/gQ4Z0_Q5n2PQ5q2WQ5v2_R6l3yS$vi;_R*m%QU%Pi%Q;_R/u*kQ$uiS(j#t+XQ(n#vS)Z$b$cQ*P$wQ*X$zQ*p%VQ*q%WQ*u%[Q.X:]Q.Y:_Q.Z:aQ.w)pS.|)v/OQ/Q)yQ/R){Q/S)|Q/[*TQ/a*ZQ/s*iQ/t*jh0T+U.S0{2m4z6O7[7{8k8}9]9eQ0o+pQ0q+sQ2p:hQ2q:jQ2r:lQ2s.^S3X:W:XQ3l/]Q3m/^Q3q/`Q4R/{Q4j0pQ4l0sQ6S:pQ6T:rQ6X:^Q6Y:`Q6Z:bQ6`3eQ6g3oQ6k3wQ6q3}Q6s4VQ6u4XQ8Q:mQ8R:iQ8S:kQ8[6fQ8`6oQ9P:qQ9Q:sQ9R8WQ9f:vQ9o:wQ;P;_Q;];gQ;^;hQ;i;kR;j;llpOXs!Y#b%e&h&j&k&m,a,f1f1iQ!ePS#dZ#mQ&r!_U'^!n4q7YQ't#QQ(w#zQ)h$lS,Y&a&dQ,_&eQ,l&qQ,q&yQ-T'WQ.e(uQ.u)iQ0P*{Q0W+VQ1b,^Q2T-VQ2k.TQ3`.pQ4P/yQ4x0|Q5Z1^Q5[1_Q5`1aQ5b1cQ5g1kQ5}2nQ6^3]Q7^4{Q7j5]Q7k5^Q7m5aQ7}6RQ8l7_R8v7n#UcOPXZs!Y!_!n#b#m#z%e&a&d&e&h&j&k&m&q&y'W(u*{+V,^,a,f-V.T/y0|1^1_1a1c1f1i1k2n4q4{5]5^5a6R7Y7_7nQ#WWQ#cYQ%itQ%juS%lv!fS'w#U'zQ'}#XQ(i#sQ(p#wQ(x#}Q(y$OQ(z$PQ({$QQ(|$RQ(}$SQ)O$TQ)P$UQ)Q$VQ)R$WQ)S$XQ)U$ZQ)X$`Q)]$dW)g$l)i.p3]Q+S%kQ+h%xS,w&}1zQ-f'hS-k'x-mQ-p(QQ-r(XQ.](mQ.c(qQ.g9pQ.i9sQ.j9tQ.k9wQ.z)tQ/|*wQ1u,rQ1x,uQ2Y-_Q2a-sQ2u.aQ2z9xQ2{9yQ2|9zQ2}9{Q3O9|Q3P9}Q3Q:OQ3R:PQ3S:QQ3T:RQ3U:SQ3V:TQ3W.hQ3Z:YQ3[:cQ3a:UQ4S0OQ4[0`Q5m:dQ5s2[Q5x2bQ6U2vQ6V:eQ6[:gQ6]:nQ7T4oQ7r5kQ7v5tQ8P:oQ8T:tQ8U:uQ8z7xQ9Y8gQ9a8xQ9r#QR;U;bR#YWR'P!dY!sQ'U-R0y4tS&{!d,yQ'a!qS'k!t!wS'm!x4vS,v&|'TS-b'b'cQ-d'dQ2P-PR2_-cR(o#vR(r#wQ!eQT-Q'U-R]!pQ!q'U-R0y4tQ#n]R'_9qT#iZ%]S#hZ%]S%cm,]U([#f#g#jS-v(](^Q-z(_Q0Q*|Q2d-wU2e-x-y-{S5z2f2gR7y5{`#[W#U#X%`'x(R*y-qr#eZm#f#g#j%](](^(_*|-w-x-y-{2f2g5{Q1`,]Q1v,sQ5i1nQ7q5jT:|&}*zT#_W%`S#^W%`S'y#U(RS(O#X*yS,x&}*zT-l'x-qT'S!d%aQ$jfR)n$oT)c$j)dR3_.oT*S$w*UR*[$zQ0U+UQ2i.SQ4w0{Q6P2mQ7]4zQ7|6OQ8i7[Q8{7{Q9[8kQ9d8}Q9i9]R9l9elqOXs!Y#b%e&h&j&k&m,a,f1f1iQ&b!UR,U&_rmOXs!T!U!Y#b%e&_&h&j&k&m,a,f1f1iR,]&eT%dm,]R0u+uR,T&]Q%{{R+m%|R+c%vT&f!V&iT&g!V&iT1h,f1i",nodeNames:"⚠ ArithOp ArithOp LineComment BlockComment Script ExportDeclaration export Star as VariableName String Escape from ; default FunctionDeclaration async function VariableDefinition > TypeParamList TypeDefinition extends ThisType this LiteralType ArithOp Number BooleanLiteral TemplateType InterpolationEnd Interpolation InterpolationStart NullType null VoidType void TypeofType typeof MemberExpression . ?. PropertyName [ TemplateString Escape Interpolation super RegExp ] ArrayExpression Spread , } { ObjectExpression Property async get set PropertyDefinition Block : NewExpression new TypeArgList CompareOp < ) ( ArgList UnaryExpression delete LogicOp BitOp YieldExpression yield AwaitExpression await ParenthesizedExpression ClassExpression class ClassBody MethodDeclaration Decorator @ MemberExpression PrivatePropertyName CallExpression declare Privacy static abstract override PrivatePropertyDefinition PropertyDeclaration readonly accessor Optional TypeAnnotation Equals StaticBlock FunctionExpression ArrowFunction ParamList ParamList ArrayPattern ObjectPattern PatternProperty Privacy readonly Arrow MemberExpression BinaryExpression ArithOp ArithOp ArithOp ArithOp BitOp CompareOp instanceof satisfies in const CompareOp BitOp BitOp BitOp LogicOp LogicOp ConditionalExpression LogicOp LogicOp AssignmentExpression UpdateOp PostfixExpression CallExpression TaggedTemplateExpression DynamicImport import ImportMeta JSXElement JSXSelfCloseEndTag JSXStartTag JSXSelfClosingTag JSXIdentifier JSXBuiltin JSXIdentifier JSXNamespacedName JSXMemberExpression JSXSpreadAttribute JSXAttribute JSXAttributeValue JSXEscape JSXEndTag JSXOpenTag JSXFragmentTag JSXText JSXEscape JSXStartCloseTag JSXCloseTag PrefixCast ArrowFunction TypeParamList SequenceExpression KeyofType keyof UniqueType unique ImportType InferredType infer TypeName ParenthesizedType FunctionSignature ParamList NewSignature IndexedType TupleType Label ArrayType ReadonlyType ObjectType MethodType PropertyType IndexSignature PropertyDefinition CallSignature TypePredicate is NewSignature new UnionType LogicOp IntersectionType LogicOp ConditionalType ParameterizedType ClassDeclaration abstract implements type VariableDeclaration let var using TypeAliasDeclaration InterfaceDeclaration interface EnumDeclaration enum EnumBody NamespaceDeclaration namespace module AmbientDeclaration declare GlobalDeclaration global ClassDeclaration ClassBody AmbientFunctionDeclaration ExportGroup VariableName VariableName ImportDeclaration ImportGroup ForStatement for ForSpec ForInSpec ForOfSpec of WhileStatement while WithStatement with DoStatement do IfStatement if else SwitchStatement switch SwitchBody CaseLabel case DefaultLabel TryStatement try CatchClause catch FinallyClause finally ReturnStatement return ThrowStatement throw BreakStatement break ContinueStatement continue DebuggerStatement debugger LabeledStatement ExpressionStatement SingleExpression SingleClassItem",maxTerm:366,context:sM,nodeProps:[["group",-26,6,14,16,62,199,203,207,208,210,213,216,226,228,234,236,238,240,243,249,255,257,259,261,263,265,266,"Statement",-32,10,11,25,28,29,35,45,48,49,51,56,64,72,76,78,80,81,103,104,113,114,131,134,136,137,138,139,141,142,162,163,165,"Expression",-23,24,26,30,34,36,38,166,168,170,171,173,174,175,177,178,179,181,182,183,193,195,197,198,"Type",-3,84,96,102,"ClassItem"],["openedBy",31,"InterpolationStart",50,"[",54,"{",69,"(",143,"JSXStartTag",155,"JSXStartTag JSXStartCloseTag"],["closedBy",33,"InterpolationEnd",44,"]",55,"}",70,")",144,"JSXSelfCloseEndTag JSXEndTag",160,"JSXEndTag"]],propSources:[uM],skippedNodes:[0,3,4,269],repeatNodeCount:33,tokenData:"$>y(CSR!bOX%ZXY+gYZ-yZ[+g[]%Z]^.c^p%Zpq+gqr/mrs3cst:_tu>PuvBavwDxwxGgxyMvyz! Qz{!![{|!%O|}!&]}!O!%O!O!P!'g!P!Q!1w!Q!R#0t!R![#3T![!]#@T!]!^#Aa!^!_#Bk!_!`#GS!`!a#In!a!b#N{!b!c$$z!c!}>P!}#O$&U#O#P$'`#P#Q$,w#Q#R$.R#R#S>P#S#T$/`#T#o$0j#o#p$4z#p#q$5p#q#r$7Q#r#s$8^#s$f%Z$f$g+g$g#BY>P#BY#BZ$9h#BZ$IS>P$IS$I_$9h$I_$I|>P$I|$I}$P$JT$JU$9h$JU$KV>P$KV$KW$9h$KW&FU>P&FU&FV$9h&FV;'S>P;'S;=`BZ<%l?HT>P?HT?HU$9h?HUO>P(n%d_$d&j'xp'{!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z&j&hT$d&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c&j&zP;=`<%l&c'|'U]$d&j'{!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!b(SU'{!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!b(iP;=`<%l'}'|(oP;=`<%l&}'[(y]$d&j'xpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(rp)wU'xpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)rp*^P;=`<%l)r'[*dP;=`<%l(r#S*nX'xp'{!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g#S+^P;=`<%l*g(n+dP;=`<%l%Z(CS+rq$d&j'xp'{!b'n(;dOX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p$f%Z$f$g+g$g#BY%Z#BY#BZ+g#BZ$IS%Z$IS$I_+g$I_$JT%Z$JT$JU+g$JU$KV%Z$KV$KW+g$KW&FU%Z&FU&FV+g&FV;'S%Z;'S;=`+a<%l?HT%Z?HT?HU+g?HUO%Z(CS.ST'y#S$d&j'o(;dO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c(CS.n_$d&j'xp'{!b'o(;dOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#`/x`$d&j!l$Ip'xp'{!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#S1V`#q$Id$d&j'xp'{!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`2X!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#S2d_#q$Id$d&j'xp'{!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$2b3l_'w$(n$d&j'{!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k*r4r_$d&j'{!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k)`5vX$d&jOr5qrs6cs!^5q!^!_6y!_#o5q#o#p6y#p;'S5q;'S;=`7h<%lO5q)`6jT$_#t$d&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c#t6|TOr6yrs7]s;'S6y;'S;=`7b<%lO6y#t7bO$_#t#t7eP;=`<%l6y)`7kP;=`<%l5q*r7w]$_#t$d&j'{!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}%W8uZ'{!bOY8pYZ6yZr8prs9hsw8pwx6yx#O8p#O#P6y#P;'S8p;'S;=`:R<%lO8p%W9oU$_#t'{!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}%W:UP;=`<%l8p*r:[P;=`<%l4k#%|:hg$d&j'xp'{!bOY%ZYZ&cZr%Zrs&}st%Ztu`k$d&j'xp'{!b(V!LY'u&;d$W#tOY%ZYZ&cZr%Zrs&}st%Ztu>Puw%Zwx(rx}%Z}!O@T!O!Q%Z!Q![>P![!^%Z!^!_*g!_!c%Z!c!}>P!}#O%Z#O#P&c#P#R%Z#R#S>P#S#T%Z#T#o>P#o#p*g#p$g%Z$g;'S>P;'S;=`BZ<%lO>P+d@`k$d&j'xp'{!b$W#tOY%ZYZ&cZr%Zrs&}st%Ztu@Tuw%Zwx(rx}%Z}!O@T!O!Q%Z!Q![@T![!^%Z!^!_*g!_!c%Z!c!}@T!}#O%Z#O#P&c#P#R%Z#R#S@T#S#T%Z#T#o@T#o#p*g#p$g%Z$g;'S@T;'S;=`BT<%lO@T+dBWP;=`<%l@T(CSB^P;=`<%l>P%#SBl`$d&j'xp'{!b#i$IdOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#SCy_$d&j#{$Id'xp'{!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%DfETa(k%Z![!^%Z!^!_*g!_!c%Z!c!i#>Z!i#O%Z#O#P&c#P#R%Z#R#S#>Z#S#T%Z#T#Z#>Z#Z#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l#>fi$d&j'xp'{!bl$'|OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#>Z![!^%Z!^!_*g!_!c%Z!c!i#>Z!i#O%Z#O#P&c#P#R%Z#R#S#>Z#S#T%Z#T#Z#>Z#Z#b%Z#b#c#5T#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%Gh#@b_!a$b$d&j#y%Puw%Zwx(rx}%Z}!O@T!O!Q%Z!Q![>P![!^%Z!^!_*g!_!c%Z!c!}>P!}#O%Z#O#P&c#P#R%Z#R#S>P#S#T%Z#T#o>P#o#p*g#p$f%Z$f$g+g$g#BY>P#BY#BZ$9h#BZ$IS>P$IS$I_$9h$I_$JT>P$JT$JU$9h$JU$KV>P$KV$KW$9h$KW&FU>P&FU&FV$9h&FV;'S>P;'S;=`BZ<%l?HT>P?HT?HU$9h?HUO>P(CS$=Uk$d&j'xp'{!b'o(;d(V!LY'u&;d$W#tOY%ZYZ&cZr%Zrs&}st%Ztu>Puw%Zwx(rx}%Z}!O@T!O!Q%Z!Q![>P![!^%Z!^!_*g!_!c%Z!c!}>P!}#O%Z#O#P&c#P#R%Z#R#S>P#S#T%Z#T#o>P#o#p*g#p$g%Z$g;'S>P;'S;=`BZ<%lO>P",tokenizers:[lM,cM,2,3,4,5,6,7,8,9,10,11,12,13,oM,new Zc("$S~RRtu[#O#Pg#S#T#|~_P#o#pb~gOq~~jVO#i!P#i#j!U#j#l!P#l#m!q#m;'S!P;'S;=`#v<%lO!P~!UO!O~~!XS!Q![!e!c!i!e#T#Z!e#o#p#Z~!hR!Q![!q!c!i!q#T#Z!q~!tR!Q![!}!c!i!}#T#Z!}~#QR!Q![!P!c!i!P#T#Z!P~#^R!Q![#g!c!i#g#T#Z#g~#jS!Q![#g!c!i#g#T#Z#g#q#r!P~#yP;=`<%l!P~$RO(U~~",141,327),new Zc("j~RQYZXz{^~^O'r~~aP!P!Qd~iO's~~",25,309)],topRules:{Script:[0,5],SingleExpression:[1,267],SingleClassItem:[2,268]},dialects:{jsx:12794,ts:12796},dynamicPrecedences:{76:1,78:1,163:1,191:1},specialized:[{term:313,get:r=>dM[r]||-1},{term:329,get:r=>mM[r]||-1},{term:67,get:r=>hM[r]||-1}],tokenPrec:12820});class Tt{lineAt(e){if(e<0||e>this.length)throw new RangeError(`Invalid position ${e} in document of length ${this.length}`);return this.lineInner(e,!1,1,0)}line(e){if(e<1||e>this.lines)throw new RangeError(`Invalid line number ${e} in ${this.lines}-line document`);return this.lineInner(e,!0,1,0)}replace(e,t,n){let a=[];return this.decompose(0,e,a,2),n.length&&n.decompose(0,n.length,a,3),this.decompose(t,this.length,a,1),fa.from(a,this.length-(t-e)+n.length)}append(e){return this.replace(this.length,this.length,e)}slice(e,t=this.length){let n=[];return this.decompose(e,t,n,0),fa.from(n,t-e)}eq(e){if(e==this)return!0;if(e.length!=this.length||e.lines!=this.lines)return!1;let t=this.scanIdentical(e,1),n=this.length-this.scanIdentical(e,-1),a=new rl(this),i=new rl(e);for(let s=t,o=t;;){if(a.next(s),i.next(s),s=0,a.lineBreak!=i.lineBreak||a.done!=i.done||a.value!=i.value)return!1;if(o+=a.value.length,a.done||o>=n)return!0}}iter(e=1){return new rl(this,e)}iterRange(e,t=this.length){return new Fv(this,e,t)}iterLines(e,t){let n;if(e==null)n=this.iter();else{t==null&&(t=this.lines+1);let a=this.line(e).from;n=this.iterRange(a,Math.max(a,t==this.lines+1?this.length:t<=1?0:this.line(t-1).to))}return new Uv(n)}toString(){return this.sliceString(0)}toJSON(){let e=[];return this.flatten(e),e}constructor(){}static of(e){if(e.length==0)throw new RangeError("A document must have at least one line");return e.length==1&&!e[0]?Tt.empty:e.length<=32?new on(e):fa.from(on.split(e,[]))}}class on extends Tt{constructor(e,t=fM(e)){super(),this.text=e,this.length=t}get lines(){return this.text.length}get children(){return null}lineInner(e,t,n,a){for(let i=0;;i++){let s=this.text[i],o=a+s.length;if((t?n:o)>=e)return new gM(a,o,n,s);a=o+1,n++}}decompose(e,t,n,a){let i=e<=0&&t>=this.length?this:new on(s0(this.text,e,t),Math.min(t,this.length)-Math.max(0,e));if(a&1){let s=n.pop(),o=Dc(i.text,s.text.slice(),0,i.length);if(o.length<=32)n.push(new on(o,s.length+i.length));else{let l=o.length>>1;n.push(new on(o.slice(0,l)),new on(o.slice(l)))}}else n.push(i)}replace(e,t,n){if(!(n instanceof on))return super.replace(e,t,n);let a=Dc(this.text,Dc(n.text,s0(this.text,0,e)),t),i=this.length+n.length-(t-e);return a.length<=32?new on(a,i):fa.from(on.split(a,[]),i)}sliceString(e,t=this.length,n=` `){let a="";for(let i=0,s=0;i<=t&&se&&s&&(a+=n),ei&&(a+=o.slice(Math.max(0,e-i),t-i)),i=l+1}return a}flatten(e){for(let t of this.text)e.push(t)}scanIdentical(){return 0}static split(e,t){let n=[],a=-1;for(let i of e)n.push(i),a+=i.length+1,n.length==32&&(t.push(new on(n,a)),n=[],a=-1);return a>-1&&t.push(new on(n,a)),t}}class fa extends Tt{constructor(e,t){super(),this.children=e,this.length=t,this.lines=0;for(let n of e)this.lines+=n.lines}lineInner(e,t,n,a){for(let i=0;;i++){let s=this.children[i],o=a+s.length,l=n+s.lines-1;if((t?l:o)>=e)return s.lineInner(e,t,n,a);a=o+1,n=l+1}}decompose(e,t,n,a){for(let i=0,s=0;s<=t&&i=s){let c=a&((s<=e?1:0)|(l>=t?2:0));s>=e&&l<=t&&!c?n.push(o):o.decompose(e-s,t-s,n,c)}s=l+1}}replace(e,t,n){if(n.lines=i&&t<=o){let l=s.replace(e-i,t-i,n),c=this.lines-s.lines+l.lines;if(l.lines>5-1&&l.lines>c>>5+1){let u=this.children.slice();return u[a]=l,new fa(u,this.length-(t-e)+n.length)}return super.replace(i,o,l)}i=o+1}return super.replace(e,t,n)}sliceString(e,t=this.length,n=` `){let a="";for(let i=0,s=0;ie&&i&&(a+=n),es&&(a+=o.sliceString(e-s,t-s,n)),s=l+1}return a}flatten(e){for(let t of this.children)t.flatten(e)}scanIdentical(e,t){if(!(e instanceof fa))return 0;let n=0,[a,i,s,o]=t>0?[0,0,this.children.length,e.children.length]:[this.children.length-1,e.children.length-1,-1,-1];for(;;a+=t,i+=t){if(a==s||i==o)return n;let l=this.children[a],c=e.children[i];if(l!=c)return n+l.scanIdentical(c,t);n+=l.length+1}}static from(e,t=e.reduce((n,a)=>n+a.length+1,-1)){let n=0;for(let _ of e)n+=_.lines;if(n<32){let _=[];for(let O of e)O.flatten(_);return new on(_,t)}let a=Math.max(32,n>>5),i=a<<1,s=a>>1,o=[],l=0,c=-1,u=[];function m(_){let O;if(_.lines>i&&_ instanceof fa)for(let w of _.children)m(w);else _.lines>s&&(l>s||!l)?(f(),o.push(_)):_ instanceof on&&l&&(O=u[u.length-1])instanceof on&&_.lines+O.lines<=32?(l+=_.lines,c+=_.length+1,u[u.length-1]=new on(O.text.concat(_.text),O.length+1+_.length)):(l+_.lines>a&&f(),l+=_.lines,c+=_.length+1,u.push(_))}function f(){l!=0&&(o.push(u.length==1?u[0]:fa.from(u,c)),c=-1,l=u.length=0)}for(let _ of e)m(_);return f(),o.length==1?o[0]:new fa(o,t)}}Tt.empty=new on([""],0);function fM(r){let e=-1;for(let t of r)e+=t.length+1;return e}function Dc(r,e,t=0,n=1e9){for(let a=0,i=0,s=!0;i=t&&(l>n&&(o=o.slice(0,n-a)),a0?1:(e instanceof on?e.text.length:e.children.length)<<1]}nextInner(e,t){for(this.done=this.lineBreak=!1;;){let n=this.nodes.length-1,a=this.nodes[n],i=this.offsets[n],s=i>>1,o=a instanceof on?a.text.length:a.children.length;if(s==(t>0?o:0)){if(n==0)return this.done=!0,this.value="",this;t>0&&this.offsets[n-1]++,this.nodes.pop(),this.offsets.pop()}else if((i&1)==(t>0?0:1)){if(this.offsets[n]+=t,e==0)return this.lineBreak=!0,this.value=` `,this;e--}else if(a instanceof on){let l=a.text[s+(t<0?-1:0)];if(this.offsets[n]+=t,l.length>Math.max(0,e))return this.value=e==0?l:t>0?l.slice(e):l.slice(0,l.length-e),this;e-=l.length}else{let l=a.children[s+(t<0?-1:0)];e>l.length?(e-=l.length,this.offsets[n]+=t):(t<0&&this.offsets[n]--,this.nodes.push(l),this.offsets.push(t>0?1:(l instanceof on?l.text.length:l.children.length)<<1))}}}next(e=0){return e<0&&(this.nextInner(-e,-this.dir),e=this.value.length),this.nextInner(e,this.dir)}}class Fv{constructor(e,t,n){this.value="",this.done=!1,this.cursor=new rl(e,t>n?-1:1),this.pos=t>n?e.length:0,this.from=Math.min(t,n),this.to=Math.max(t,n)}nextInner(e,t){if(t<0?this.pos<=this.from:this.pos>=this.to)return this.value="",this.done=!0,this;e+=Math.max(0,t<0?this.pos-this.to:this.from-this.pos);let n=t<0?this.pos-this.from:this.to-this.pos;e>n&&(e=n),n-=e;let{value:a}=this.cursor.next(e);return this.pos+=(a.length+e)*t,this.value=a.length<=n?a:t<0?a.slice(a.length-n):a.slice(0,n),this.done=!this.value,this}next(e=0){return e<0?e=Math.max(e,this.from-this.pos):e>0&&(e=Math.min(e,this.to-this.pos)),this.nextInner(e,this.cursor.dir)}get lineBreak(){return this.cursor.lineBreak&&this.value!=""}}class Uv{constructor(e){this.inner=e,this.afterBreak=!0,this.value="",this.done=!1}next(e=0){let{done:t,lineBreak:n,value:a}=this.inner.next(e);return t?(this.done=!0,this.value=""):n?this.afterBreak?this.value="":(this.afterBreak=!0,this.next()):(this.value=a,this.afterBreak=!1),this}get lineBreak(){return!1}}typeof Symbol<"u"&&(Tt.prototype[Symbol.iterator]=function(){return this.iter()},rl.prototype[Symbol.iterator]=Fv.prototype[Symbol.iterator]=Uv.prototype[Symbol.iterator]=function(){return this});let gM=class{constructor(e,t,n,a){this.from=e,this.to=t,this.number=n,this.text=a}get length(){return this.to-this.from}},Ls="lc,34,7n,7,7b,19,,,,2,,2,,,20,b,1c,l,g,,2t,7,2,6,2,2,,4,z,,u,r,2j,b,1m,9,9,,o,4,,9,,3,,5,17,3,3b,f,,w,1j,,,,4,8,4,,3,7,a,2,t,,1m,,,,2,4,8,,9,,a,2,q,,2,2,1l,,4,2,4,2,2,3,3,,u,2,3,,b,2,1l,,4,5,,2,4,,k,2,m,6,,,1m,,,2,,4,8,,7,3,a,2,u,,1n,,,,c,,9,,14,,3,,1l,3,5,3,,4,7,2,b,2,t,,1m,,2,,2,,3,,5,2,7,2,b,2,s,2,1l,2,,,2,4,8,,9,,a,2,t,,20,,4,,2,3,,,8,,29,,2,7,c,8,2q,,2,9,b,6,22,2,r,,,,,,1j,e,,5,,2,5,b,,10,9,,2u,4,,6,,2,2,2,p,2,4,3,g,4,d,,2,2,6,,f,,jj,3,qa,3,t,3,t,2,u,2,1s,2,,7,8,,2,b,9,,19,3,3b,2,y,,3a,3,4,2,9,,6,3,63,2,2,,1m,,,7,,,,,2,8,6,a,2,,1c,h,1r,4,1c,7,,,5,,14,9,c,2,w,4,2,2,,3,1k,,,2,3,,,3,1m,8,2,2,48,3,,d,,7,4,,6,,3,2,5i,1m,,5,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,p,2,5,,47,2,q,i,d,,12,8,p,b,1a,3,1c,,2,4,2,2,13,,1v,6,2,2,2,2,c,,8,,1b,,1f,,,3,2,2,5,2,,,16,2,8,,6m,,2,,4,,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,ar,2,49,b,4w,,1i,f,1k,3,1d,4,2,2,1x,3,10,5,,8,1q,,c,2,1g,9,a,4,2,,2n,3,2,,,2,6,,4g,,3,8,l,2,1l,2,,,,,m,,e,7,3,5,5f,8,2,3,,,n,,29,,2,6,,,2,,,2,,2,6j,,2,4,6,2,,2,r,2,2d,8,2,,,2,2y,,,,2,6,,,2t,3,2,4,,5,77,9,,2,6t,,a,2,,,4,,40,4,2,2,4,,w,a,14,6,2,4,8,,9,6,2,3,1a,d,,2,ba,7,,6,,,2a,m,2,7,,2,,2,3e,6,3,,,2,,7,,,20,2,3,,,,9n,2,f0b,5,1n,7,t4,,1r,4,29,,f5k,2,43q,,,3,4,5,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,79,7,c5,4,15s,7,31,7,240,5,gx7k,2o,3k,6o".split(",").map(r=>r?parseInt(r,36):1);for(let r=1;rr)return Ls[e-1]<=r;return!1}function o0(r){return r>=127462&&r<=127487}const l0=8205;function Un(r,e,t=!0,n=!0){return(t?$v:bM)(r,e,n)}function $v(r,e,t){if(e==r.length)return e;e&&Gv(r.charCodeAt(e))&&Qv(r.charCodeAt(e-1))&&e--;let n=xn(r,e);for(e+=xr(n);e=0&&o0(xn(r,s));)i++,s-=2;if(i%2==0)break;e+=2}else break}return e}function bM(r,e,t){for(;e>0;){let n=$v(r,e-2,t);if(n=56320&&r<57344}function Qv(r){return r>=55296&&r<56320}function xn(r,e){let t=r.charCodeAt(e);if(!Qv(t)||e+1==r.length)return t;let n=r.charCodeAt(e+1);return Gv(n)?(t-55296<<10)+(n-56320)+65536:t}function g_(r){return r<=65535?String.fromCharCode(r):(r-=65536,String.fromCharCode((r>>10)+55296,(r&1023)+56320))}function xr(r){return r<65536?1:2}const Hf=/\r\n?|\n/;var Sn=function(r){return r[r.Simple=0]="Simple",r[r.TrackDel=1]="TrackDel",r[r.TrackBefore=2]="TrackBefore",r[r.TrackAfter=3]="TrackAfter",r}(Sn||(Sn={}));class Sa{constructor(e){this.sections=e}get length(){let e=0;for(let t=0;te)return i+(e-a);i+=o}else{if(n!=Sn.Simple&&c>=e&&(n==Sn.TrackDel&&ae||n==Sn.TrackBefore&&ae))return null;if(c>e||c==e&&t<0&&!o)return e==a||t<0?i:i+l;i+=l}a=c}if(e>a)throw new RangeError(`Position ${e} is out of range for changeset of length ${a}`);return i}touchesRange(e,t=e){for(let n=0,a=0;n=0&&a<=t&&o>=e)return at?"cover":!0;a=o}return!1}toString(){let e="";for(let t=0;t=0?":"+a:"")}return e}toJSON(){return this.sections}static fromJSON(e){if(!Array.isArray(e)||e.length%2||e.some(t=>typeof t!="number"))throw new RangeError("Invalid JSON representation of ChangeDesc");return new Sa(e)}static create(e){return new Sa(e)}}class bn extends Sa{constructor(e,t){super(e),this.inserted=t}apply(e){if(this.length!=e.length)throw new RangeError("Applying change set to a document with the wrong length");return zf(this,(t,n,a,i,s)=>e=e.replace(a,a+(n-t),s),!1),e}mapDesc(e,t=!1){return Wf(this,e,t,!0)}invert(e){let t=this.sections.slice(),n=[];for(let a=0,i=0;a=0){t[a]=o,t[a+1]=s;let l=a>>1;for(;n.length0&&fi(n,t,i.text),i.forward(u),o+=u}let c=e[s++];for(;o>1].toJSON()))}return e}static of(e,t,n){let a=[],i=[],s=0,o=null;function l(u=!1){if(!u&&!a.length)return;sf||m<0||f>t)throw new RangeError(`Invalid change range ${m} to ${f} (in doc of length ${t})`);let O=_?typeof _=="string"?Tt.of(_.split(n||Hf)):_:Tt.empty,w=O.length;if(m==f&&w==0)return;ms&&Fn(a,m-s,-1),Fn(a,f-m,w),fi(i,a,O),s=f}}return c(e),l(!o),o}static empty(e){return new bn(e?[e,-1]:[],[])}static fromJSON(e){if(!Array.isArray(e))throw new RangeError("Invalid JSON representation of ChangeSet");let t=[],n=[];for(let a=0;ao&&typeof s!="string"))throw new RangeError("Invalid JSON representation of ChangeSet");if(i.length==1)t.push(i[0],0);else{for(;n.length=0&&t<=0&&t==r[a+1]?r[a]+=e:e==0&&r[a]==0?r[a+1]+=t:n?(r[a]+=e,r[a+1]+=t):r.push(e,t)}function fi(r,e,t){if(t.length==0)return;let n=e.length-2>>1;if(n>1])),!(t||s==r.sections.length||r.sections[s+1]<0);)o=r.sections[s++],l=r.sections[s++];e(a,c,i,u,m),a=c,i=u}}}function Wf(r,e,t,n=!1){let a=[],i=n?[]:null,s=new fl(r),o=new fl(e);for(let l=-1;;)if(s.ins==-1&&o.ins==-1){let c=Math.min(s.len,o.len);Fn(a,c,-1),s.forward(c),o.forward(c)}else if(o.ins>=0&&(s.ins<0||l==s.i||s.off==0&&(o.len=0&&l=0){let c=0,u=s.len;for(;u;)if(o.ins==-1){let m=Math.min(u,o.len);c+=m,u-=m,o.forward(m)}else if(o.ins==0&&o.lenl||s.ins>=0&&s.len>l)&&(o||n.length>c),i.forward2(l),s.forward(l)}}}}class fl{constructor(e){this.set=e,this.i=0,this.next()}next(){let{sections:e}=this.set;this.i>1;return t>=e.length?Tt.empty:e[t]}textBit(e){let{inserted:t}=this.set,n=this.i-2>>1;return n>=t.length&&!e?Tt.empty:t[n].slice(this.off,e==null?void 0:this.off+e)}forward(e){e==this.len?this.next():(this.len-=e,this.off+=e)}forward2(e){this.ins==-1?this.forward(e):e==this.ins?this.next():(this.ins-=e,this.off+=e)}}class qi{constructor(e,t,n){this.from=e,this.to=t,this.flags=n}get anchor(){return this.flags&16?this.to:this.from}get head(){return this.flags&16?this.from:this.to}get empty(){return this.from==this.to}get assoc(){return this.flags&4?-1:this.flags&8?1:0}get bidiLevel(){let e=this.flags&3;return e==3?null:e}get goalColumn(){let e=this.flags>>5;return e==33554431?void 0:e}map(e,t=-1){let n,a;return this.empty?n=a=e.mapPos(this.from,t):(n=e.mapPos(this.from,1),a=e.mapPos(this.to,-1)),n==this.from&&a==this.to?this:new qi(n,a,this.flags)}extend(e,t=e){if(e<=this.anchor&&t>=this.anchor)return pe.range(e,t);let n=Math.abs(e-this.anchor)>Math.abs(t-this.anchor)?e:t;return pe.range(this.anchor,n)}eq(e){return this.anchor==e.anchor&&this.head==e.head}toJSON(){return{anchor:this.anchor,head:this.head}}static fromJSON(e){if(!e||typeof e.anchor!="number"||typeof e.head!="number")throw new RangeError("Invalid JSON representation for SelectionRange");return pe.range(e.anchor,e.head)}static create(e,t,n){return new qi(e,t,n)}}class pe{constructor(e,t){this.ranges=e,this.mainIndex=t}map(e,t=-1){return e.empty?this:pe.create(this.ranges.map(n=>n.map(e,t)),this.mainIndex)}eq(e){if(this.ranges.length!=e.ranges.length||this.mainIndex!=e.mainIndex)return!1;for(let t=0;te.toJSON()),main:this.mainIndex}}static fromJSON(e){if(!e||!Array.isArray(e.ranges)||typeof e.main!="number"||e.main>=e.ranges.length)throw new RangeError("Invalid JSON representation for EditorSelection");return new pe(e.ranges.map(t=>qi.fromJSON(t)),e.main)}static single(e,t=e){return new pe([pe.range(e,t)],0)}static create(e,t=0){if(e.length==0)throw new RangeError("A selection needs at least one range");for(let n=0,a=0;ae?4:0)|i)}static normalized(e,t=0){let n=e[t];e.sort((a,i)=>a.from-i.from),t=e.indexOf(n);for(let a=1;ai.head?pe.range(l,o):pe.range(o,l))}}return new pe(e,t)}}function Vv(r,e){for(let t of r.ranges)if(t.to>e)throw new RangeError("Selection points outside of document")}let __=0;class Ue{constructor(e,t,n,a,i){this.combine=e,this.compareInput=t,this.compare=n,this.isStatic=a,this.id=__++,this.default=e([]),this.extensions=typeof i=="function"?i(this):i}static define(e={}){return new Ue(e.combine||(t=>t),e.compareInput||((t,n)=>t===n),e.compare||(e.combine?(t,n)=>t===n:b_),!!e.static,e.enables)}of(e){return new xc([],this,0,e)}compute(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new xc(e,this,1,t)}computeN(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new xc(e,this,2,t)}from(e,t){return t||(t=n=>n),this.compute([e],n=>t(n.field(e)))}}function b_(r,e){return r==e||r.length==e.length&&r.every((t,n)=>t===e[n])}class xc{constructor(e,t,n,a){this.dependencies=e,this.facet=t,this.type=n,this.value=a,this.id=__++}dynamicSlot(e){var t;let n=this.value,a=this.facet.compareInput,i=this.id,s=e[i]>>1,o=this.type==2,l=!1,c=!1,u=[];for(let m of this.dependencies)m=="doc"?l=!0:m=="selection"?c=!0:((t=e[m.id])!==null&&t!==void 0?t:1)&1||u.push(e[m.id]);return{create(m){return m.values[s]=n(m),1},update(m,f){if(l&&f.docChanged||c&&(f.docChanged||f.selection)||Xf(m,u)){let _=n(m);if(o?!c0(_,m.values[s],a):!a(_,m.values[s]))return m.values[s]=_,1}return 0},reconfigure:(m,f)=>{let _,O=f.config.address[i];if(O!=null){let w=tu(f,O);if(this.dependencies.every(I=>I instanceof Ue?f.facet(I)===m.facet(I):I instanceof yn?f.field(I,!1)==m.field(I,!1):!0)||(o?c0(_=n(m),w,a):a(_=n(m),w)))return m.values[s]=w,0}else _=n(m);return m.values[s]=_,1}}}}function c0(r,e,t){if(r.length!=e.length)return!1;for(let n=0;nr[l.id]),a=t.map(l=>l.type),i=n.filter(l=>!(l&1)),s=r[e.id]>>1;function o(l){let c=[];for(let u=0;un===a),e);return e.provide&&(t.provides=e.provide(t)),t}create(e){let t=e.facet(u0).find(n=>n.field==this);return((t==null?void 0:t.create)||this.createF)(e)}slot(e){let t=e[this.id]>>1;return{create:n=>(n.values[t]=this.create(n),1),update:(n,a)=>{let i=n.values[t],s=this.updateF(i,a);return this.compareF(i,s)?0:(n.values[t]=s,1)},reconfigure:(n,a)=>a.config.address[this.id]!=null?(n.values[t]=a.field(this),0):(n.values[t]=this.create(n),1)}}init(e){return[this,u0.of({field:this,create:e})]}get extension(){return this}}const $i={lowest:4,low:3,default:2,high:1,highest:0};function Po(r){return e=>new Hv(e,r)}const Ca={highest:Po($i.highest),high:Po($i.high),default:Po($i.default),low:Po($i.low),lowest:Po($i.lowest)};class Hv{constructor(e,t){this.inner=e,this.prec=t}}class ea{of(e){return new Kf(this,e)}reconfigure(e){return ea.reconfigure.of({compartment:this,extension:e})}get(e){return e.config.compartments.get(this)}}class Kf{constructor(e,t){this.compartment=e,this.inner=t}}class eu{constructor(e,t,n,a,i,s){for(this.base=e,this.compartments=t,this.dynamicSlots=n,this.address=a,this.staticValues=i,this.facets=s,this.statusTemplate=[];this.statusTemplate.length>1]}static resolve(e,t,n){let a=[],i=Object.create(null),s=new Map;for(let f of OM(e,t,s))f instanceof yn?a.push(f):(i[f.facet.id]||(i[f.facet.id]=[])).push(f);let o=Object.create(null),l=[],c=[];for(let f of a)o[f.id]=c.length<<1,c.push(_=>f.slot(_));let u=n==null?void 0:n.config.facets;for(let f in i){let _=i[f],O=_[0].facet,w=u&&u[f]||[];if(_.every(I=>I.type==0))if(o[O.id]=l.length<<1|1,b_(w,_))l.push(n.facet(O));else{let I=O.combine(_.map(k=>k.value));l.push(n&&O.compare(I,n.facet(O))?n.facet(O):I)}else{for(let I of _)I.type==0?(o[I.id]=l.length<<1|1,l.push(I.value)):(o[I.id]=c.length<<1,c.push(k=>I.dynamicSlot(k)));o[O.id]=c.length<<1,c.push(I=>SM(I,O,_))}}let m=c.map(f=>f(o));return new eu(e,s,m,o,l,i)}}function OM(r,e,t){let n=[[],[],[],[],[]],a=new Map;function i(s,o){let l=a.get(s);if(l!=null){if(l<=o)return;let c=n[l].indexOf(s);c>-1&&n[l].splice(c,1),s instanceof Kf&&t.delete(s.compartment)}if(a.set(s,o),Array.isArray(s))for(let c of s)i(c,o);else if(s instanceof Kf){if(t.has(s.compartment))throw new RangeError("Duplicate use of compartment in extensions");let c=e.get(s.compartment)||s.inner;t.set(s.compartment,c),i(c,o)}else if(s instanceof Hv)i(s.inner,s.prec);else if(s instanceof yn)n[o].push(s),s.provides&&i(s.provides,o);else if(s instanceof xc)n[o].push(s),s.facet.extensions&&i(s.facet.extensions,$i.default);else{let c=s.extension;if(!c)throw new Error(`Unrecognized extension value in extension set (${s}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);i(c,o)}}return i(r,$i.default),n.reduce((s,o)=>s.concat(o))}function al(r,e){if(e&1)return 2;let t=e>>1,n=r.status[t];if(n==4)throw new Error("Cyclic dependency between fields and/or facets");if(n&2)return n;r.status[t]=4;let a=r.computeSlot(r,r.config.dynamicSlots[t]);return r.status[t]=2|a}function tu(r,e){return e&1?r.config.staticValues[e>>1]:r.values[e>>1]}const zv=Ue.define(),Wv=Ue.define({combine:r=>r.some(e=>e),static:!0}),Xv=Ue.define({combine:r=>r.length?r[0]:void 0,static:!0}),Kv=Ue.define(),Zv=Ue.define(),jv=Ue.define(),Jv=Ue.define({combine:r=>r.length?r[0]:!1});class za{constructor(e,t){this.type=e,this.value=t}static define(){return new EM}}class EM{of(e){return new za(this,e)}}class vM{constructor(e){this.map=e}of(e){return new ct(this,e)}}class ct{constructor(e,t){this.type=e,this.value=t}map(e){let t=this.type.map(this.value,e);return t===void 0?void 0:t==this.value?this:new ct(this.type,t)}is(e){return this.type==e}static define(e={}){return new vM(e.map||(t=>t))}static mapEffects(e,t){if(!e.length)return e;let n=[];for(let a of e){let i=a.map(t);i&&n.push(i)}return n}}ct.reconfigure=ct.define();ct.appendConfig=ct.define();class On{constructor(e,t,n,a,i,s){this.startState=e,this.changes=t,this.selection=n,this.effects=a,this.annotations=i,this.scrollIntoView=s,this._doc=null,this._state=null,n&&Vv(n,t.newLength),i.some(o=>o.type==On.time)||(this.annotations=i.concat(On.time.of(Date.now())))}static create(e,t,n,a,i,s){return new On(e,t,n,a,i,s)}get newDoc(){return this._doc||(this._doc=this.changes.apply(this.startState.doc))}get newSelection(){return this.selection||this.startState.selection.map(this.changes)}get state(){return this._state||this.startState.applyTransaction(this),this._state}annotation(e){for(let t of this.annotations)if(t.type==e)return t.value}get docChanged(){return!this.changes.empty}get reconfigured(){return this.startState.config!=this.state.config}isUserEvent(e){let t=this.annotation(On.userEvent);return!!(t&&(t==e||t.length>e.length&&t.slice(0,e.length)==e&&t[e.length]=="."))}}On.time=za.define();On.userEvent=za.define();On.addToHistory=za.define();On.remote=za.define();function TM(r,e){let t=[];for(let n=0,a=0;;){let i,s;if(n=r[n]))i=r[n++],s=r[n++];else if(a=0;a--){let i=n[a](r);i instanceof On?r=i:Array.isArray(i)&&i.length==1&&i[0]instanceof On?r=i[0]:r=tT(e,Ps(i),!1)}return r}function RM(r){let e=r.startState,t=e.facet(jv),n=r;for(let a=t.length-1;a>=0;a--){let i=t[a](r);i&&Object.keys(i).length&&(n=eT(n,Zf(e,i,r.changes.newLength),!0))}return n==r?r:On.create(e,r.changes,r.selection,n.effects,n.annotations,n.scrollIntoView)}const CM=[];function Ps(r){return r==null?CM:Array.isArray(r)?r:[r]}var zt=function(r){return r[r.Word=0]="Word",r[r.Space=1]="Space",r[r.Other=2]="Other",r}(zt||(zt={}));const AM=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;let jf;try{jf=new RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch{}function wM(r){if(jf)return jf.test(r);for(let e=0;e"€"&&(t.toUpperCase()!=t.toLowerCase()||AM.test(t)))return!0}return!1}function IM(r){return e=>{if(!/\S/.test(e))return zt.Space;if(wM(e))return zt.Word;for(let t=0;t-1)return zt.Word;return zt.Other}}class vt{constructor(e,t,n,a,i,s){this.config=e,this.doc=t,this.selection=n,this.values=a,this.status=e.statusTemplate.slice(),this.computeSlot=i,s&&(s._state=this);for(let o=0;oa.set(l,o)),t=null),a.set(s.value.compartment,s.value.extension)):s.is(ct.reconfigure)?(t=null,n=s.value):s.is(ct.appendConfig)&&(t=null,n=Ps(n).concat(s.value));let i;t?i=e.startState.values.slice():(t=eu.resolve(n,a,this),i=new vt(t,this.doc,this.selection,t.dynamicSlots.map(()=>null),(o,l)=>l.reconfigure(o,this),null).values),new vt(t,e.newDoc,e.newSelection,i,(s,o)=>o.update(s,e),e)}replaceSelection(e){return typeof e=="string"&&(e=this.toText(e)),this.changeByRange(t=>({changes:{from:t.from,to:t.to,insert:e},range:pe.cursor(t.from+e.length)}))}changeByRange(e){let t=this.selection,n=e(t.ranges[0]),a=this.changes(n.changes),i=[n.range],s=Ps(n.effects);for(let o=1;os.spec.fromJSON(o,l)))}}return vt.create({doc:e.doc,selection:pe.fromJSON(e.selection),extensions:t.extensions?a.concat([t.extensions]):a})}static create(e={}){let t=eu.resolve(e.extensions||[],new Map),n=e.doc instanceof Tt?e.doc:Tt.of((e.doc||"").split(t.staticFacet(vt.lineSeparator)||Hf)),a=e.selection?e.selection instanceof pe?e.selection:pe.single(e.selection.anchor,e.selection.head):pe.single(0);return Vv(a,n.length),t.staticFacet(Wv)||(a=a.asSingle()),new vt(t,n,a,t.dynamicSlots.map(()=>null),(i,s)=>s.create(i),null)}get tabSize(){return this.facet(vt.tabSize)}get lineBreak(){return this.facet(vt.lineSeparator)||` diff --git a/assets/index-e085fcbe.js.gz b/assets/index-e085fcbe.js.gz new file mode 100644 index 0000000..5b7e6ec Binary files /dev/null and b/assets/index-e085fcbe.js.gz differ diff --git a/index.html b/index.html index 16a7d89..461422f 100644 --- a/index.html +++ b/index.html @@ -14,8 +14,8 @@ - - + +