diff --git a/develop/assets/L0x5DF4xlVMF-BfR8bXMIjhEq3-OXg-1651b21a.woff2 b/develop/assets/L0x5DF4xlVMF-BfR8bXMIjhEq3-OXg-1651b21a.woff2 new file mode 100644 index 0000000..171e3b6 Binary files /dev/null and b/develop/assets/L0x5DF4xlVMF-BfR8bXMIjhEq3-OXg-1651b21a.woff2 differ diff --git a/develop/assets/L0x5DF4xlVMF-BfR8bXMIjhFq3-OXg-d3f58cdc.woff2 b/develop/assets/L0x5DF4xlVMF-BfR8bXMIjhFq3-OXg-d3f58cdc.woff2 new file mode 100644 index 0000000..4d97d1f Binary files /dev/null and b/develop/assets/L0x5DF4xlVMF-BfR8bXMIjhFq3-OXg-d3f58cdc.woff2 differ diff --git a/develop/assets/L0x5DF4xlVMF-BfR8bXMIjhGq3-OXg-d694a640.woff2 b/develop/assets/L0x5DF4xlVMF-BfR8bXMIjhGq3-OXg-d694a640.woff2 new file mode 100644 index 0000000..0dceac8 Binary files /dev/null and b/develop/assets/L0x5DF4xlVMF-BfR8bXMIjhGq3-OXg-d694a640.woff2 differ diff --git a/develop/assets/L0x5DF4xlVMF-BfR8bXMIjhIq3-OXg-5e78ebd0.woff2 b/develop/assets/L0x5DF4xlVMF-BfR8bXMIjhIq3-OXg-5e78ebd0.woff2 new file mode 100644 index 0000000..847843c Binary files /dev/null and b/develop/assets/L0x5DF4xlVMF-BfR8bXMIjhIq3-OXg-5e78ebd0.woff2 differ diff --git a/develop/assets/L0x5DF4xlVMF-BfR8bXMIjhLq38-47388fbc.woff2 b/develop/assets/L0x5DF4xlVMF-BfR8bXMIjhLq38-47388fbc.woff2 new file mode 100644 index 0000000..81c2067 Binary files /dev/null and b/develop/assets/L0x5DF4xlVMF-BfR8bXMIjhLq38-47388fbc.woff2 differ diff --git a/develop/assets/L0x5DF4xlVMF-BfR8bXMIjhPq3-OXg-f5503b96.woff2 b/develop/assets/L0x5DF4xlVMF-BfR8bXMIjhPq3-OXg-f5503b96.woff2 new file mode 100644 index 0000000..551e74b Binary files /dev/null and b/develop/assets/L0x5DF4xlVMF-BfR8bXMIjhPq3-OXg-f5503b96.woff2 differ diff --git a/develop/assets/L0x7DF4xlVMF-BfR8bXMIjhOm32WWg-fa913521.woff2 b/develop/assets/L0x7DF4xlVMF-BfR8bXMIjhOm32WWg-fa913521.woff2 new file mode 100644 index 0000000..a6ab54b Binary files /dev/null and b/develop/assets/L0x7DF4xlVMF-BfR8bXMIjhOm32WWg-fa913521.woff2 differ diff --git a/develop/assets/L0x7DF4xlVMF-BfR8bXMIjhOm36WWoKC-b16f5ee9.woff2 b/develop/assets/L0x7DF4xlVMF-BfR8bXMIjhOm36WWoKC-b16f5ee9.woff2 new file mode 100644 index 0000000..73d6c1b Binary files /dev/null and b/develop/assets/L0x7DF4xlVMF-BfR8bXMIjhOm36WWoKC-b16f5ee9.woff2 differ diff --git a/develop/assets/L0x7DF4xlVMF-BfR8bXMIjhOm3CWWoKC-cc6b746b.woff2 b/develop/assets/L0x7DF4xlVMF-BfR8bXMIjhOm3CWWoKC-cc6b746b.woff2 new file mode 100644 index 0000000..dc7aa80 Binary files /dev/null and b/develop/assets/L0x7DF4xlVMF-BfR8bXMIjhOm3CWWoKC-cc6b746b.woff2 differ diff --git a/develop/assets/L0x7DF4xlVMF-BfR8bXMIjhOm3KWWoKC-3bcb9c16.woff2 b/develop/assets/L0x7DF4xlVMF-BfR8bXMIjhOm3KWWoKC-3bcb9c16.woff2 new file mode 100644 index 0000000..c5e35ac Binary files /dev/null and b/develop/assets/L0x7DF4xlVMF-BfR8bXMIjhOm3KWWoKC-3bcb9c16.woff2 differ diff --git a/develop/assets/L0x7DF4xlVMF-BfR8bXMIjhOm3OWWoKC-6954b147.woff2 b/develop/assets/L0x7DF4xlVMF-BfR8bXMIjhOm3OWWoKC-6954b147.woff2 new file mode 100644 index 0000000..3d8b441 Binary files /dev/null and b/develop/assets/L0x7DF4xlVMF-BfR8bXMIjhOm3OWWoKC-6954b147.woff2 differ diff --git a/develop/assets/L0x7DF4xlVMF-BfR8bXMIjhOm3mWWoKC-a65fc93a.woff2 b/develop/assets/L0x7DF4xlVMF-BfR8bXMIjhOm3mWWoKC-a65fc93a.woff2 new file mode 100644 index 0000000..77bdce6 Binary files /dev/null and b/develop/assets/L0x7DF4xlVMF-BfR8bXMIjhOm3mWWoKC-a65fc93a.woff2 differ diff --git a/develop/assets/index-23047523.css b/develop/assets/index-23047523.css new file mode 100644 index 0000000..a92771b --- /dev/null +++ b/develop/assets/index-23047523.css @@ -0,0 +1 @@ +@charset "UTF-8";.alert-portal{position:fixed;right:10px;top:85px;z-index:10001;width:500px}.alert-enter-active,.alert-leave-active{transition:all .5s ease}.alert-enter-from,.alert-leave-to{opacity:0;transform:translate(30px)}.select-list select{height:auto!important;padding:0!important}.select-list select option{padding:.5em 1em!important}.channel-container[data-v-331910cd]{background-color:#00000008;border:1px solid rgba(0,0,0,.125);border-radius:8px;width:100%}.channel-container .channel-bar[data-v-331910cd]{color:#fff;background-color:#61ab30;border-radius:8px;text-align:center;margin-left:50%}.wizard[data-v-331910cd]{font-size:1.25rem}.osd-canvas[data-v-d4ff4095]{width:100%;background-image:url(/develop/assets/osd_background-86c2ae99.jpg);background-attachment:local;background-size:cover}svg[data-v-1581546b]{display:block;background-image:url(/develop/assets/osd_background-86c2ae99.jpg);background-attachment:local;background-size:cover;font-family:monospace;font-size:18px;border:1px solid rgba(51,51,51,.3019607843);margin:auto}svg text[data-v-1581546b]{fill:#fff}svg .text-invert[data-v-1581546b]{paint-order:stroke;fill:#000;stroke:#fff;stroke-width:3px;stroke-linecap:butt;stroke-linejoin:miter}.blackbox-progress{width:50%;margin:10px}.logo{display:block;height:100%;width:100%;transform:scale(.99)}.w-100[data-v-1ee68027]{width:100%}.is-256x256{height:256px;width:256px}.template-card .card-content[data-v-c380dbc8]{height:150px;overflow:hidden;text-overflow:ellipsis}.navbar.is-primary .navbar-brand>a.navbar-item:focus{background-color:unset!important}.navbar-item .notification{padding:15px!important;margin-bottom:0!important}.router-outlet-container{margin-top:6rem!important;margin-bottom:6rem!important}.logo[data-v-90888a2a]{display:inline-block;height:100%;width:76px;transform:scale(.99)}.text[data-v-90888a2a]{display:inline-block;width:175px;height:100%;margin-left:-8px}.tooltip{position:relative;display:inline-block}.tooltip .tooltip-icon{cursor:pointer}.tooltip .tooltip-text{position:absolute;display:inline-block;white-space:pre-line;min-width:160px;visibility:hidden;font-size:.85em;font-weight:700;text-align:center;padding:6px;border-radius:6px;z-index:1001}.tooltip .tooltip-text:after{content:" ";position:absolute;margin-left:-5px;border-width:5px;border-style:solid}.tooltip.tooltip-top .tooltip-text{bottom:100%;left:54%;transform:translate(-50%)}.tooltip.tooltip-top .tooltip-text:after{top:100%;left:50%;border-color:hsl(0,0%,21%) transparent transparent transparent}.tooltip.tooltip-bottom .tooltip-text{top:100%;left:54%;transform:translate(-50%)}.tooltip.tooltip-bottom .tooltip-text:after{bottom:100%;left:50%;border-color:transparent transparent hsl(0,0%,21%) transparent}.tooltip-enter-active{transition:transform .4s ease-out,opacity .3s ease-out}.tooltip-leave-active{transition:transform .35s ease-in,opacity .28s ease-out}.tooltip-enter-from{transition:none}.tooltip-enter-from,.tooltip-leave-to{opacity:0}:root{--family-sans-serif: BlinkMacSystemFont, -apple-system, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, Helvetica, Arial, sans-serif;--family-monospace: monospace;--size-1: 3rem;--size-2: 2.5rem;--size-3: 2rem;--size-4: 1.5rem;--size-5: 1.25rem;--size-6: 1rem;--size-7: .75rem;--gap: 32px;--weight-light: 300;--weight-normal: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--block-spacing: 1.5rem;--item-padding: .375rem 1rem;--radius-small: 2px;--radius: 4px;--radius-large: 6px;--radius-rounded: 9999px;--easing: ease-out;--speed: 86ms;--scheme-main: hsl(0, 0%, 100%);--scheme-main-bis: hsl(0, 0%, 96%);--scheme-main-ter: hsl(0, 0%, 92%);--scheme-invert: hsl(0, 0%, 4%);--scheme-invert-rgb: 10, 10, 10;--scheme-invert-bis: hsl(0, 0%, 9%);--scheme-invert-ter: hsl(0, 0%, 14%);--background: hsl(0, 0%, 92%);--background-rgb: 235, 235, 235;--border: hsl(0, 0%, 86%);--border-rgb: 219, 219, 219;--border-hover: hsl(0, 0%, 71%);--border-light: hsl(0, 0%, 93%);--border-light-hover: hsl(0, 0%, 71%);--invert-dark-color: rgba(10, 10, 10, .7);--invert-dark-color-rgb: 10, 10, 10;--invert-dark-color-bis: rgba(23, 23, 23, .7);--invert-dark-color-ter: rgba(36, 36, 36, .7);--invert-light-color: white;--invert-light-color-rgb: 255, 255, 255;--invert-light-color-bis: #f2f2f2;--invert-light-color-ter: #e6e6e6;--text: hsl(0, 0%, 29%);--text-invert: var(--invert-light-color);--text-light: hsl(0, 0%, 48%);--text-strong: hsl(0, 0%, 21%);--code: #da1039;--code-background: var(--background);--pre: var(--text);--pre-background: var(--background);--link: hsl(96, 53%, 43%);--link-light: #f4faef;--link-dark: #57942e;--link-visited: hsl(96, 53%, 43%);--link-hover: hsl(0, 0%, 21%);--link-hover-border: hsl(0, 0%, 71%);--link-focus: hsl(0, 0%, 21%);--link-focus-border: var(--link);--link-active: hsl(0, 0%, 21%);--link-active-border: hsl(0, 0%, 29%);--family-primary: BlinkMacSystemFont, -apple-system, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, Helvetica, Arial, sans-serif;--family-secondary: BlinkMacSystemFont, -apple-system, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, Helvetica, Arial, sans-serif;--family-code: monospace;--size-small: .75rem;--size-normal: 1rem;--size-medium: 1.25rem;--size-large: 1.5rem;--shadow: 0 .5em 1em -.125em rgba(var(--scheme-invert-rgb), .1), 0 0 0 1px rgba(var(--scheme-invert-rgb), .02);--white-h: 0deg;--white-s: 0%;--white-l: 100%;--white-a: 1;--white: hsla(var(--white-h), var(--white-s), var(--white-l), var(--white-a));--white-invert: var(--invert-dark-color);--white-invert-bis: var(--invert-dark-color-bis);--white-invert-ter: var(--invert-dark-color-ter);--white-light-l: 100%;--white-light: hsla(var(--white-h), var(--white-s), var(--white-light-l), var(--white-a));--white-dark-l: 29%;--white-dark: hsla(var(--white-h), var(--white-s), var(--white-dark-l), var(--white-a));--black-h: 0deg;--black-s: 0%;--black-l: 4%;--black-a: 1;--black: hsla(var(--black-h), var(--black-s), var(--black-l), var(--black-a));--black-invert: var(--invert-light-color);--black-invert-bis: var(--invert-light-color-bis);--black-invert-ter: var(--invert-light-color-ter);--black-light-l: 96%;--black-light: hsla(var(--black-h), var(--black-s), var(--black-light-l), var(--black-a));--black-dark-l: 57%;--black-dark: hsla(var(--black-h), var(--black-s), var(--black-dark-l), var(--black-a));--light-h: 0deg;--light-s: 0%;--light-l: 92%;--light-a: 1;--light: hsla(var(--light-h), var(--light-s), var(--light-l), var(--light-a));--light-invert: var(--invert-dark-color);--light-invert-bis: var(--invert-dark-color-bis);--light-invert-ter: var(--invert-dark-color-ter);--light-light-l: 96%;--light-light: hsla(var(--light-h), var(--light-s), var(--light-light-l), var(--light-a));--light-dark-l: 29%;--light-dark: hsla(var(--light-h), var(--light-s), var(--light-dark-l), var(--light-a));--dark-h: 0deg;--dark-s: 0%;--dark-l: 21%;--dark-a: 1;--dark: hsla(var(--dark-h), var(--dark-s), var(--dark-l), var(--dark-a));--dark-invert: var(--invert-light-color);--dark-invert-bis: var(--invert-light-color-bis);--dark-invert-ter: var(--invert-light-color-ter);--dark-light-l: 96%;--dark-light: hsla(var(--dark-h), var(--dark-s), var(--dark-light-l), var(--dark-a));--dark-dark-l: 54%;--dark-dark: hsla(var(--dark-h), var(--dark-s), var(--dark-dark-l), var(--dark-a));--primary-h: 96deg;--primary-s: 53%;--primary-l: 43%;--primary-a: 1;--primary: hsla(var(--primary-h), var(--primary-s), var(--primary-l), var(--primary-a));--primary-invert: var(--invert-light-color);--primary-invert-bis: var(--invert-light-color-bis);--primary-invert-ter: var(--invert-light-color-ter);--primary-light-l: 96%;--primary-light: hsla(var(--primary-h), var(--primary-s), var(--primary-light-l), var(--primary-a));--primary-dark-l: 38%;--primary-dark: hsla(var(--primary-h), var(--primary-s), var(--primary-dark-l), var(--primary-a));--secondary-h: 217deg;--secondary-s: 61%;--secondary-l: 40%;--secondary-a: 1;--secondary: hsla(var(--secondary-h), var(--secondary-s), var(--secondary-l), var(--secondary-a));--secondary-invert: var(--invert-light-color);--secondary-invert-bis: var(--invert-light-color-bis);--secondary-invert-ter: var(--invert-light-color-ter);--secondary-light-l: 96%;--secondary-light: hsla(var(--secondary-h), var(--secondary-s), var(--secondary-light-l), var(--secondary-a));--secondary-dark-l: 50%;--secondary-dark: hsla(var(--secondary-h), var(--secondary-s), var(--secondary-dark-l), var(--secondary-a));--link-h: 96deg;--link-s: 53%;--link-l: 43%;--link-a: 1;--link: hsla(var(--link-h), var(--link-s), var(--link-l), var(--link-a));--link-invert: var(--invert-light-color);--link-invert-bis: var(--invert-light-color-bis);--link-invert-ter: var(--invert-light-color-ter);--link-light-l: 96%;--link-light: hsla(var(--link-h), var(--link-s), var(--link-light-l), var(--link-a));--link-dark-l: 38%;--link-dark: hsla(var(--link-h), var(--link-s), var(--link-dark-l), var(--link-a));--info-h: 207deg;--info-s: 61%;--info-l: 53%;--info-a: 1;--info: hsla(var(--info-h), var(--info-s), var(--info-l), var(--info-a));--info-invert: var(--invert-light-color);--info-invert-bis: var(--invert-light-color-bis);--info-invert-ter: var(--invert-light-color-ter);--info-light-l: 96%;--info-light: hsla(var(--info-h), var(--info-s), var(--info-light-l), var(--info-a));--info-dark-l: 41%;--info-dark: hsla(var(--info-h), var(--info-s), var(--info-dark-l), var(--info-a));--success-h: 96deg;--success-s: 53%;--success-l: 48%;--success-a: 1;--success: hsla(var(--success-h), var(--success-s), var(--success-l), var(--success-a));--success-invert: var(--invert-light-color);--success-invert-bis: var(--invert-light-color-bis);--success-invert-ter: var(--invert-light-color-ter);--success-light-l: 96%;--success-light: hsla(var(--success-h), var(--success-s), var(--success-light-l), var(--success-a));--success-dark-l: 33%;--success-dark: hsla(var(--success-h), var(--success-s), var(--success-dark-l), var(--success-a));--warning-h: 44deg;--warning-s: 100%;--warning-l: 77%;--warning-a: 1;--warning: hsla(var(--warning-h), var(--warning-s), var(--warning-l), var(--warning-a));--warning-invert: var(--invert-dark-color);--warning-invert-bis: var(--invert-dark-color-bis);--warning-invert-ter: var(--invert-dark-color-ter);--warning-light-l: 96%;--warning-light: hsla(var(--warning-h), var(--warning-s), var(--warning-light-l), var(--warning-a));--warning-dark-l: 29%;--warning-dark: hsla(var(--warning-h), var(--warning-s), var(--warning-dark-l), var(--warning-a));--danger-h: 348deg;--danger-s: 86%;--danger-l: 61%;--danger-a: 1;--danger: hsla(var(--danger-h), var(--danger-s), var(--danger-l), var(--danger-a));--danger-invert: var(--invert-light-color);--danger-invert-bis: var(--invert-light-color-bis);--danger-invert-ter: var(--invert-light-color-ter);--danger-light-l: 96%;--danger-light: hsla(var(--danger-h), var(--danger-s), var(--danger-light-l), var(--danger-a));--danger-dark-l: 43%;--danger-dark: hsla(var(--danger-h), var(--danger-s), var(--danger-dark-l), var(--danger-a))}:root{--black-bis: hsl(0, 0%, 9%);--black-ter: hsl(0, 0%, 14%);--grey-darker: hsl(0, 0%, 21%);--grey-dark: hsl(0, 0%, 29%);--grey: hsl(0, 0%, 48%);--grey-light: hsl(0, 0%, 71%);--grey-lighter: hsl(0, 0%, 86%);--grey-lightest: hsl(0, 0%, 93%);--white-ter: hsl(0, 0%, 92%);--white-bis: hsl(0, 0%, 96%)}/*! minireset.css v0.0.6 | MIT License | github.com/jgthms/minireset.css */html,body,p,ol,ul,li,dl,dt,dd,blockquote,figure,fieldset,legend,textarea,pre,iframe,hr,h1,h2,h3,h4,h5,h6{margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:400}ul{list-style:none}button,input,select,textarea{margin:0}html{box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}img,video{height:auto;max-width:100%}iframe{border:0}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}td:not([align]),th:not([align]){text-align:inherit}.pagination-previous,.pagination-next,.pagination-link,.pagination-ellipsis,.file-cta,.file-name,.button,.select select,.input,.textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;align-items:center;border:var(--control-border-width) solid transparent;border-radius:var(--control-radius);box-shadow:none;display:inline-flex;font-size:var(--size-normal);height:var(--control-height);justify-content:flex-start;line-height:var(--control-line-height);padding-bottom:var(--control-padding-vertical);padding-left:var(--control-padding-horizontal);padding-right:var(--control-padding-horizontal);padding-top:var(--control-padding-vertical);position:relative;vertical-align:top}.pagination-previous:focus,.pagination-next:focus,.pagination-link:focus,.pagination-ellipsis:focus,.file-cta:focus,.file-name:focus,.button:focus,.select select:focus,.input:focus,.textarea:focus,.is-focused.pagination-previous,.is-focused.pagination-next,.is-focused.pagination-link,.is-focused.pagination-ellipsis,.is-focused.file-cta,.is-focused.file-name,.is-focused.button,.select select.is-focused,.is-focused.input,.is-focused.textarea,.pagination-previous:active,.pagination-next:active,.pagination-link:active,.pagination-ellipsis:active,.file-cta:active,.file-name:active,.button:active,.select select:active,.input:active,.textarea:active,.is-active.pagination-previous,.is-active.pagination-next,.is-active.pagination-link,.is-active.pagination-ellipsis,.is-active.file-cta,.is-active.file-name,.is-active.button,.select select.is-active,.is-active.input,.is-active.textarea{outline:none}[disabled].pagination-previous,[disabled].pagination-next,[disabled].pagination-link,[disabled].pagination-ellipsis,[disabled].file-cta,[disabled].file-name,[disabled].button,.select select[disabled],[disabled].input,[disabled].textarea,fieldset[disabled] .pagination-previous,fieldset[disabled] .pagination-next,fieldset[disabled] .pagination-link,fieldset[disabled] .pagination-ellipsis,fieldset[disabled] .file-cta,fieldset[disabled] .file-name,fieldset[disabled] .button,fieldset[disabled] .select select,.select fieldset[disabled] select,fieldset[disabled] .input,fieldset[disabled] .textarea{cursor:not-allowed}.select select,.input,.textarea{background-color:var(--input-background-color);border-color:var(--input-border-color);border-radius:var(--input-radius);color:var(--input-color)}.select select::-moz-placeholder,.input::-moz-placeholder,.textarea::-moz-placeholder{color:var(--input-placeholder-color);opacity:var(--input-placeholder-opacity)}.select select::-webkit-input-placeholder,.input::-webkit-input-placeholder,.textarea::-webkit-input-placeholder{color:var(--input-placeholder-color);opacity:var(--input-placeholder-opacity)}.select select:-moz-placeholder,.input:-moz-placeholder,.textarea:-moz-placeholder{color:var(--input-placeholder-color);opacity:var(--input-placeholder-opacity)}.select select:-ms-input-placeholder,.input:-ms-input-placeholder,.textarea:-ms-input-placeholder{color:var(--input-placeholder-color);opacity:var(--input-placeholder-opacity)}.select select:hover,.input:hover,.textarea:hover,.select select.is-hovered,.is-hovered.input,.is-hovered.textarea{border-color:var(--input-hover-border-color)}.select select:focus,.input:focus,.textarea:focus,.select select.is-focused,.is-focused.input,.is-focused.textarea,.select select:active,.input:active,.textarea:active,.select select.is-active,.is-active.input,.is-active.textarea{border-color:var(--input-focus-border-color);box-shadow:var(--input-focus-box-shadow-size) var(--input-focus-box-shadow-color)}.select select[disabled],[disabled].input,[disabled].textarea,fieldset[disabled] .select select,.select fieldset[disabled] select,fieldset[disabled] .input,fieldset[disabled] .textarea{background-color:var(--input-disabled-background-color);border-color:var(--input-disabled-border-color);box-shadow:none;color:var(--input-disabled-color);-webkit-text-fill-color:var(--input-disabled-color);opacity:1}.select select[disabled]::-moz-placeholder,[disabled].input::-moz-placeholder,[disabled].textarea::-moz-placeholder,fieldset[disabled] .select select::-moz-placeholder,.select fieldset[disabled] select::-moz-placeholder,fieldset[disabled] .input::-moz-placeholder,fieldset[disabled] .textarea::-moz-placeholder{color:var(--input-disabled-placeholder-color);opacity:var(--input-disabled-placeholder-opacity)}.select select[disabled]::-webkit-input-placeholder,[disabled].input::-webkit-input-placeholder,[disabled].textarea::-webkit-input-placeholder,fieldset[disabled] .select select::-webkit-input-placeholder,.select fieldset[disabled] select::-webkit-input-placeholder,fieldset[disabled] .input::-webkit-input-placeholder,fieldset[disabled] .textarea::-webkit-input-placeholder{color:var(--input-disabled-placeholder-color);opacity:var(--input-disabled-placeholder-opacity)}.select select[disabled]:-moz-placeholder,[disabled].input:-moz-placeholder,[disabled].textarea:-moz-placeholder,fieldset[disabled] .select select:-moz-placeholder,.select fieldset[disabled] select:-moz-placeholder,fieldset[disabled] .input:-moz-placeholder,fieldset[disabled] .textarea:-moz-placeholder{color:var(--input-disabled-placeholder-color);opacity:var(--input-disabled-placeholder-opacity)}.select select[disabled]:-ms-input-placeholder,[disabled].input:-ms-input-placeholder,[disabled].textarea:-ms-input-placeholder,fieldset[disabled] .select select:-ms-input-placeholder,.select fieldset[disabled] select:-ms-input-placeholder,fieldset[disabled] .input:-ms-input-placeholder,fieldset[disabled] .textarea:-ms-input-placeholder{color:var(--input-disabled-placeholder-color);opacity:var(--input-disabled-placeholder-opacity)}.is-unselectable,.tabs,.pagination-previous,.pagination-next,.pagination-link,.pagination-ellipsis,.breadcrumb,.file,.delete,.button,.modal-close{-webkit-user-select:none;user-select:none}.navbar-link:not(.is-arrowless):after,.select:not(.is-multiple,.is-loading):after{--arrow-color: transparent;border:3px solid var(--arrow-color);border-radius:2px;border-right:0;border-top:0;content:" ";display:block;height:.625em;margin-top:-.4375em;pointer-events:none;position:absolute;top:50%;transform:rotate(-45deg);transform-origin:center;width:.625em}.tabs:not(:last-child),.pagination:not(:last-child),.message:not(:last-child),.level:not(:last-child),.breadcrumb:not(:last-child),.title:not(:last-child),.subtitle:not(:last-child),.table:not(:last-child),.table-container:not(:last-child),.progress:not(:last-child),.notification:not(:last-child),.content:not(:last-child),.box:not(:last-child){margin-bottom:var(--block-spacing)}.modal-close{--delete-height: 20px;--delete-width: 20px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:rgba(var(--scheme-invert-rgb),.2);border:none;border-radius:var(--radius-rounded);cursor:pointer;pointer-events:auto;display:inline-block;flex-grow:0;flex-shrink:0;font-size:0;height:var(--delete-height);max-height:var(--delete-height);max-width:var(--delete-width);min-height:var(--delete-height);min-width:var(--delete-width);outline:none;position:relative;vertical-align:top;width:var(--delete-width)}.modal-close:before,.modal-close:after{background-color:var(--scheme-main);content:"";display:block;left:50%;position:absolute;top:50%;transform:translate(-50%) translateY(-50%) rotate(45deg);transform-origin:center center}.modal-close:before{height:2px;width:50%}.modal-close:after{height:50%;width:2px}.modal-close:hover,.modal-close:focus{background-color:rgba(var(--scheme-invert-rgb),.3)}.modal-close:active{background-color:rgba(var(--scheme-invert-rgb),.4)}.is-small.modal-close{--delete-height: 16px;--delete-width: 16px}.is-medium.modal-close{--delete-height: 24px;--delete-width: 24px}.is-large.modal-close{--delete-height: 32px;--delete-width: 32px}.control.is-loading:after,.select.is-loading:after,.button.is-loading:after{--loader-border-color: var(--grey-lighter);animation:spinAround .5s infinite linear;border:2px solid var(--loader-border-color);border-radius:var(--radius-rounded);border-right-color:transparent;border-top-color:transparent;content:"";display:block;height:1em;position:relative;width:1em}.hero-video,.is-overlay,.modal,.modal-background,.image.is-square img,.image.is-square .has-ratio,.image.is-1by1 img,.image.is-1by1 .has-ratio,.image.is-5by4 img,.image.is-5by4 .has-ratio,.image.is-4by3 img,.image.is-4by3 .has-ratio,.image.is-3by2 img,.image.is-3by2 .has-ratio,.image.is-5by3 img,.image.is-5by3 .has-ratio,.image.is-16by9 img,.image.is-16by9 .has-ratio,.image.is-2by1 img,.image.is-2by1 .has-ratio,.image.is-3by1 img,.image.is-3by1 .has-ratio,.image.is-4by5 img,.image.is-4by5 .has-ratio,.image.is-3by4 img,.image.is-3by4 .has-ratio,.image.is-2by3 img,.image.is-2by3 .has-ratio,.image.is-3by5 img,.image.is-3by5 .has-ratio,.image.is-9by16 img,.image.is-9by16 .has-ratio,.image.is-1by2 img,.image.is-1by2 .has-ratio,.image.is-1by3 img,.image.is-1by3 .has-ratio{bottom:0;left:0;position:absolute;right:0;top:0}.navbar-burger{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;color:currentColor;font-family:inherit;font-size:1em;margin:0;padding:0}html{background-color:var(--body-background-color);font-size:var(--body-font-size);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;min-width:var(--body-min-width);overflow-x:var(--body-overflow-x);overflow-y:var(--body-overflow-y);text-rendering:var(--body-rendering);text-size-adjust:100%}:root{--body-background-color: var(--scheme-main);--body-min-width: 300px;--body-rendering: optimizeLegibility;--body-family: var(--family-primary);--body-overflow-x: hidden;--body-overflow-y: scroll;--body-color: var(--text);--body-font-size: 1em;--body-weight: var(--weight-normal);--body-line-height: 1.5;--code-family: var(--family-code);--code-padding: .25em .5em .25em;--code-weight: normal;--code-size: .875em;--small-font-size: .875em;--hr-background-color: var(--background);--hr-height: 2px;--hr-margin: 1.5rem 0;--strong-color: var(--text-strong);--strong-weight: var(--weight-bold);--pre-font-size: .875em;--pre-padding: 1.25rem 1.5rem;--pre-code-font-size: 1em}article,aside,figure,footer,header,hgroup,section{display:block}body,button,input,optgroup,select,textarea{font-family:var(--body-family)}code,pre{-moz-osx-font-smoothing:auto;-webkit-font-smoothing:auto;font-family:var(--code-family)}body{color:var(--body-color);font-size:var(--body-font-size);font-weight:var(--body-weight);line-height:var(--body-line-height)}a{color:var(--link);cursor:pointer;text-decoration:none}a strong{color:currentColor}a:hover{color:var(--link-hover)}a:visited{color:var(--link-visited)}a:active{color:var(--link-active)}a:focus{color:var(--link-focus)}code{background-color:var(--code-background);color:var(--code);font-size:var(--code-size);font-weight:var(--code-weight);padding:var(--code-padding)}hr{background-color:var(--hr-background-color);border:none;display:block;height:var(--hr-height);margin:var(--hr-margin)}img{height:auto;max-width:100%}input[type=checkbox],input[type=radio]{vertical-align:baseline}small{font-size:var(--small-font-size)}span{font-style:inherit;font-weight:inherit}strong{color:var(--strong-color);font-weight:var(--strong-weight)}fieldset{border:none}pre{-webkit-overflow-scrolling:touch;background-color:var(--pre-background);color:var(--pre);font-size:var(--pre-font-size);overflow-x:auto;padding:var(--pre-padding);white-space:pre;word-wrap:normal}pre code{background-color:transparent;color:currentColor;font-size:var(--pre-code-font-size);padding:0}table td,table th{vertical-align:top}table td:not([align]),table th:not([align]){text-align:inherit}table th{color:var(--text-strong)}@keyframes spinAround{0%{transform:rotate(0)}to{transform:rotate(359deg)}}.spinAround{animation-name:spinAround}@keyframes moveIndeterminate{0%{background-position:200% 0}to{background-position:-200% 0}}.moveIndeterminate{animation-name:moveIndeterminate}:root{--box-color: var(--text);--box-background-color: var(--scheme-main);--box-radius: var(--radius-large);--box-shadow: var(--shadow);--box-padding: 1.25rem;--box-link-hover-shadow: 0 .5em 1em -.125em rgba(var(--scheme-invert-rgb), .1), 0 0 0 1px var(--link);--box-link-active-shadow: inset 0 1px 2px rgba(var(--scheme-invert-rgb), .2), 0 0 0 1px var(--link)}.box{background-color:var(--box-background-color);border-radius:var(--box-radius);box-shadow:var(--box-shadow);color:var(--box-color);display:block;padding:var(--box-padding)}a.box:hover,a.box:focus{box-shadow:var(--box-link-hover-shadow)}a.box:active{box-shadow:var(--box-link-active-shadow)}:root{--button-color: var(--text-strong);--button-background-color: var(--scheme-main);--button-family: false;--button-font-size: var(--size-normal);--button-border-color: var(--border);--button-border-width: var(--control-border-width);--button-padding-vertical: calc(.5em - var(--button-border-width));--button-padding-horizontal: 1em;--button-hover-color: var(--link-hover);--button-hover-border-color: var(--link-hover-border);--button-focus-color: var(--link-focus);--button-focus-border-color: var(--link-focus-border);--button-focus-box-shadow-size: 0 0 0 .125em;--button-focus-box-shadow-color: rgba(var(--scheme-invert-rgb), .25);--button-active-color: var(--link-active);--button-active-border-color: var(--link-active-border);--button-text-color: var(--text);--button-text-decoration: underline;--button-text-hover-background-color: var(--background);--button-text-hover-color: var(--text-strong);--button-ghost-background: none;--button-ghost-border-color: transparent;--button-ghost-color: var(--link);--button-ghost-decoration: none;--button-ghost-hover-color: var(--link);--button-ghost-hover-decoration: underline;--button-disabled-background-color: var(--scheme-main);--button-disabled-border-color: var(--border);--button-disabled-shadow: none;--button-disabled-opacity: .5;--button-static-color: var(--text-light);--button-static-background-color: var(--scheme-main-ter);--button-static-border-color: var(--border)}.button{background-color:var(--button-background-color);transition:color calc(2 * var(--speed)) var(--easing);transition:background-color calc(2 * var(--speed)) var(--easing);border-color:var(--button-border-color);border-width:var(--button-border-width);color:var(--button-color);cursor:pointer;font-size:var(--button-font-size);justify-content:center;padding-bottom:var(--button-padding-vertical);padding-left:var(--button-padding-horizontal);padding-right:var(--button-padding-horizontal);padding-top:var(--button-padding-vertical);text-align:center;white-space:nowrap}.button strong{color:inherit}.button .icon,.button .icon.is-small,.button .icon.is-medium,.button .icon.is-large{height:1.5em;width:1.5em}.button .icon:first-child:not(:last-child){margin-left:calc(-.5 * var(--button-padding-horizontal) - var(--button-border-width));margin-right:calc(var(--button-padding-horizontal) * .25)}.button .icon:last-child:not(:first-child){margin-left:calc(var(--button-padding-horizontal) * .25);margin-right:calc(-.5 * var(--button-padding-horizontal) - var(--button-border-width))}.button .icon:first-child:last-child{margin-left:calc(-.5 * var(--button-padding-horizontal) - var(--button-border-width));margin-right:calc(-.5 * var(--button-padding-horizontal) - var(--button-border-width))}.button:hover,.button.is-hovered{border-color:var(--button-hover-border-color);color:var(--button-hover-color)}.button:focus,.button.is-focused{border-color:var(--button-focus-border-color);color:var(--button-focus-color)}.button:focus:not(:active),.button.is-focused:not(:active){box-shadow:var(--button-focus-box-shadow-size) var(--button-focus-box-shadow-color)}.button:active,.button.is-active{border-color:var(--button-active-border-color);color:var(--button-active-color)}.button.is-text{background-color:transparent;border-color:transparent;color:var(--button-text-color);text-decoration:var(--button-text-decoration)}.button.is-text:hover,.button.is-text.is-hovered,.button.is-text:focus,.button.is-text.is-focused{background-color:var(--white-ter);color:var(--text-strong)}.button.is-text:active,.button.is-text.is-active{background-color:var(--grey-lightest);color:var(--text-strong)}.button.is-text[disabled],fieldset[disabled] .button.is-text{background-color:transparent;border-color:transparent;box-shadow:none}.button.is-ghost{background:var(--button-ghost-background);border-color:var(--button-ghost-border-color);color:var(--button-ghost-color);text-decoration:var(--button-ghost-decoration)}.button.is-ghost:hover,.button.is-ghost.is-hovered{color:var(--button-ghost-hover-color);text-decoration:var(--button-ghost-hover-decoration)}.button.is-white{background-color:var(--white);border-color:transparent;color:var(--white-invert)}.button.is-white:hover,.button.is-white.is-hovered{background-color:hsla(var(--white-h),var(--white-s),calc(var(--white-l) + -2.5%),var(--white-a));border-color:transparent;color:var(--white-invert)}.button.is-white:focus,.button.is-white.is-focused{border-color:transparent;color:var(--white-invert)}.button.is-white:focus:not(:active),.button.is-white.is-focused:not(:active){box-shadow:var(--button-focus-box-shadow-size) hsla(var(--white-h),var(--white-s),var(--white-l),.25)}.button.is-white:active,.button.is-white.is-active{background-color:hsla(var(--white-h),var(--white-s),calc(var(--white-l) + -5%),var(--white-a));border-color:transparent;color:var(--white-invert)}.button.is-white[disabled],fieldset[disabled] .button.is-white{background-color:var(--white);border-color:var(--white);box-shadow:none}.button.is-white.is-inverted{background-color:var(--white-invert);color:var(--white)}.button.is-white.is-inverted:hover,.button.is-white.is-inverted.is-hovered{background-color:var(--white-invert-ter)}.button.is-white.is-inverted[disabled],fieldset[disabled] .button.is-white.is-inverted{background-color:var(--white-invert);border-color:transparent;box-shadow:none;color:var(--white)}.button.is-white.is-loading:after{border-color:transparent transparent var(--white-invert) var(--white-invert)!important}.button.is-white.is-outlined{background-color:transparent;border-color:var(--white);color:var(--white)}.button.is-white.is-outlined:hover,.button.is-white.is-outlined.is-hovered,.button.is-white.is-outlined:focus,.button.is-white.is-outlined.is-focused{background-color:var(--white);border-color:var(--white);color:var(--white-invert)}.button.is-white.is-outlined.is-loading:after{border-color:transparent transparent var(--white) var(--white)!important}.button.is-white.is-outlined.is-loading:hover:after,.button.is-white.is-outlined.is-loading.is-hovered:after,.button.is-white.is-outlined.is-loading:focus:after,.button.is-white.is-outlined.is-loading.is-focused:after{border-color:transparent transparent var(--white-invert) var(--white-invert)!important}.button.is-white.is-outlined[disabled],fieldset[disabled] .button.is-white.is-outlined{background-color:transparent;border-color:var(--white);box-shadow:none;color:var(--white)}.button.is-white.is-inverted.is-outlined{background-color:transparent;border-color:var(--white-invert);color:var(--white-invert)}.button.is-white.is-inverted.is-outlined:hover,.button.is-white.is-inverted.is-outlined.is-hovered,.button.is-white.is-inverted.is-outlined:focus,.button.is-white.is-inverted.is-outlined.is-focused{background-color:var(--white-invert);color:var(--white)}.button.is-white.is-inverted.is-outlined.is-loading:hover:after,.button.is-white.is-inverted.is-outlined.is-loading.is-hovered:after,.button.is-white.is-inverted.is-outlined.is-loading:focus:after,.button.is-white.is-inverted.is-outlined.is-loading.is-focused:after{border-color:transparent transparent var(--white) var(--white)!important}.button.is-white.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-white.is-inverted.is-outlined{background-color:transparent;border-color:var(--white-invert);box-shadow:none;color:var(--white-invert)}.button.is-black{background-color:var(--black);border-color:transparent;color:var(--black-invert)}.button.is-black:hover,.button.is-black.is-hovered{background-color:hsla(var(--black-h),var(--black-s),calc(var(--black-l) + -2.5%),var(--black-a));border-color:transparent;color:var(--black-invert)}.button.is-black:focus,.button.is-black.is-focused{border-color:transparent;color:var(--black-invert)}.button.is-black:focus:not(:active),.button.is-black.is-focused:not(:active){box-shadow:var(--button-focus-box-shadow-size) hsla(var(--black-h),var(--black-s),var(--black-l),.25)}.button.is-black:active,.button.is-black.is-active{background-color:hsla(var(--black-h),var(--black-s),calc(var(--black-l) + -5%),var(--black-a));border-color:transparent;color:var(--black-invert)}.button.is-black[disabled],fieldset[disabled] .button.is-black{background-color:var(--black);border-color:var(--black);box-shadow:none}.button.is-black.is-inverted{background-color:var(--black-invert);color:var(--black)}.button.is-black.is-inverted:hover,.button.is-black.is-inverted.is-hovered{background-color:var(--black-invert-ter)}.button.is-black.is-inverted[disabled],fieldset[disabled] .button.is-black.is-inverted{background-color:var(--black-invert);border-color:transparent;box-shadow:none;color:var(--black)}.button.is-black.is-loading:after{border-color:transparent transparent var(--black-invert) var(--black-invert)!important}.button.is-black.is-outlined{background-color:transparent;border-color:var(--black);color:var(--black)}.button.is-black.is-outlined:hover,.button.is-black.is-outlined.is-hovered,.button.is-black.is-outlined:focus,.button.is-black.is-outlined.is-focused{background-color:var(--black);border-color:var(--black);color:var(--black-invert)}.button.is-black.is-outlined.is-loading:after{border-color:transparent transparent var(--black) var(--black)!important}.button.is-black.is-outlined.is-loading:hover:after,.button.is-black.is-outlined.is-loading.is-hovered:after,.button.is-black.is-outlined.is-loading:focus:after,.button.is-black.is-outlined.is-loading.is-focused:after{border-color:transparent transparent var(--black-invert) var(--black-invert)!important}.button.is-black.is-outlined[disabled],fieldset[disabled] .button.is-black.is-outlined{background-color:transparent;border-color:var(--black);box-shadow:none;color:var(--black)}.button.is-black.is-inverted.is-outlined{background-color:transparent;border-color:var(--black-invert);color:var(--black-invert)}.button.is-black.is-inverted.is-outlined:hover,.button.is-black.is-inverted.is-outlined.is-hovered,.button.is-black.is-inverted.is-outlined:focus,.button.is-black.is-inverted.is-outlined.is-focused{background-color:var(--black-invert);color:var(--black)}.button.is-black.is-inverted.is-outlined.is-loading:hover:after,.button.is-black.is-inverted.is-outlined.is-loading.is-hovered:after,.button.is-black.is-inverted.is-outlined.is-loading:focus:after,.button.is-black.is-inverted.is-outlined.is-loading.is-focused:after{border-color:transparent transparent var(--black) var(--black)!important}.button.is-black.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-black.is-inverted.is-outlined{background-color:transparent;border-color:var(--black-invert);box-shadow:none;color:var(--black-invert)}.button.is-light{background-color:var(--light);border-color:transparent;color:var(--light-invert)}.button.is-light:hover,.button.is-light.is-hovered{background-color:hsla(var(--light-h),var(--light-s),calc(var(--light-l) + -2.5%),var(--light-a));border-color:transparent;color:var(--light-invert)}.button.is-light:focus,.button.is-light.is-focused{border-color:transparent;color:var(--light-invert)}.button.is-light:focus:not(:active),.button.is-light.is-focused:not(:active){box-shadow:var(--button-focus-box-shadow-size) hsla(var(--light-h),var(--light-s),var(--light-l),.25)}.button.is-light:active,.button.is-light.is-active{background-color:hsla(var(--light-h),var(--light-s),calc(var(--light-l) + -5%),var(--light-a));border-color:transparent;color:var(--light-invert)}.button.is-light[disabled],fieldset[disabled] .button.is-light{background-color:var(--light);border-color:var(--light);box-shadow:none}.button.is-light.is-inverted{background-color:var(--light-invert);color:var(--light)}.button.is-light.is-inverted:hover,.button.is-light.is-inverted.is-hovered{background-color:var(--light-invert-ter)}.button.is-light.is-inverted[disabled],fieldset[disabled] .button.is-light.is-inverted{background-color:var(--light-invert);border-color:transparent;box-shadow:none;color:var(--light)}.button.is-light.is-loading:after{border-color:transparent transparent var(--light-invert) var(--light-invert)!important}.button.is-light.is-outlined{background-color:transparent;border-color:var(--light);color:var(--light)}.button.is-light.is-outlined:hover,.button.is-light.is-outlined.is-hovered,.button.is-light.is-outlined:focus,.button.is-light.is-outlined.is-focused{background-color:var(--light);border-color:var(--light);color:var(--light-invert)}.button.is-light.is-outlined.is-loading:after{border-color:transparent transparent var(--light) var(--light)!important}.button.is-light.is-outlined.is-loading:hover:after,.button.is-light.is-outlined.is-loading.is-hovered:after,.button.is-light.is-outlined.is-loading:focus:after,.button.is-light.is-outlined.is-loading.is-focused:after{border-color:transparent transparent var(--light-invert) var(--light-invert)!important}.button.is-light.is-outlined[disabled],fieldset[disabled] .button.is-light.is-outlined{background-color:transparent;border-color:var(--light);box-shadow:none;color:var(--light)}.button.is-light.is-inverted.is-outlined{background-color:transparent;border-color:var(--light-invert);color:var(--light-invert)}.button.is-light.is-inverted.is-outlined:hover,.button.is-light.is-inverted.is-outlined.is-hovered,.button.is-light.is-inverted.is-outlined:focus,.button.is-light.is-inverted.is-outlined.is-focused{background-color:var(--light-invert);color:var(--light)}.button.is-light.is-inverted.is-outlined.is-loading:hover:after,.button.is-light.is-inverted.is-outlined.is-loading.is-hovered:after,.button.is-light.is-inverted.is-outlined.is-loading:focus:after,.button.is-light.is-inverted.is-outlined.is-loading.is-focused:after{border-color:transparent transparent var(--light) var(--light)!important}.button.is-light.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-light.is-inverted.is-outlined{background-color:transparent;border-color:var(--light-invert);box-shadow:none;color:var(--light-invert)}.button.is-dark{background-color:var(--dark);border-color:transparent;color:var(--dark-invert)}.button.is-dark:hover,.button.is-dark.is-hovered{background-color:hsla(var(--dark-h),var(--dark-s),calc(var(--dark-l) + -2.5%),var(--dark-a));border-color:transparent;color:var(--dark-invert)}.button.is-dark:focus,.button.is-dark.is-focused{border-color:transparent;color:var(--dark-invert)}.button.is-dark:focus:not(:active),.button.is-dark.is-focused:not(:active){box-shadow:var(--button-focus-box-shadow-size) hsla(var(--dark-h),var(--dark-s),var(--dark-l),.25)}.button.is-dark:active,.button.is-dark.is-active{background-color:hsla(var(--dark-h),var(--dark-s),calc(var(--dark-l) + -5%),var(--dark-a));border-color:transparent;color:var(--dark-invert)}.button.is-dark[disabled],fieldset[disabled] .button.is-dark{background-color:var(--dark);border-color:var(--dark);box-shadow:none}.button.is-dark.is-inverted{background-color:var(--dark-invert);color:var(--dark)}.button.is-dark.is-inverted:hover,.button.is-dark.is-inverted.is-hovered{background-color:var(--dark-invert-ter)}.button.is-dark.is-inverted[disabled],fieldset[disabled] .button.is-dark.is-inverted{background-color:var(--dark-invert);border-color:transparent;box-shadow:none;color:var(--dark)}.button.is-dark.is-loading:after{border-color:transparent transparent var(--dark-invert) var(--dark-invert)!important}.button.is-dark.is-outlined{background-color:transparent;border-color:var(--dark);color:var(--dark)}.button.is-dark.is-outlined:hover,.button.is-dark.is-outlined.is-hovered,.button.is-dark.is-outlined:focus,.button.is-dark.is-outlined.is-focused{background-color:var(--dark);border-color:var(--dark);color:var(--dark-invert)}.button.is-dark.is-outlined.is-loading:after{border-color:transparent transparent var(--dark) var(--dark)!important}.button.is-dark.is-outlined.is-loading:hover:after,.button.is-dark.is-outlined.is-loading.is-hovered:after,.button.is-dark.is-outlined.is-loading:focus:after,.button.is-dark.is-outlined.is-loading.is-focused:after{border-color:transparent transparent var(--dark-invert) var(--dark-invert)!important}.button.is-dark.is-outlined[disabled],fieldset[disabled] .button.is-dark.is-outlined{background-color:transparent;border-color:var(--dark);box-shadow:none;color:var(--dark)}.button.is-dark.is-inverted.is-outlined{background-color:transparent;border-color:var(--dark-invert);color:var(--dark-invert)}.button.is-dark.is-inverted.is-outlined:hover,.button.is-dark.is-inverted.is-outlined.is-hovered,.button.is-dark.is-inverted.is-outlined:focus,.button.is-dark.is-inverted.is-outlined.is-focused{background-color:var(--dark-invert);color:var(--dark)}.button.is-dark.is-inverted.is-outlined.is-loading:hover:after,.button.is-dark.is-inverted.is-outlined.is-loading.is-hovered:after,.button.is-dark.is-inverted.is-outlined.is-loading:focus:after,.button.is-dark.is-inverted.is-outlined.is-loading.is-focused:after{border-color:transparent transparent var(--dark) var(--dark)!important}.button.is-dark.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-dark.is-inverted.is-outlined{background-color:transparent;border-color:var(--dark-invert);box-shadow:none;color:var(--dark-invert)}.button.is-primary{background-color:var(--primary);border-color:transparent;color:var(--primary-invert)}.button.is-primary:hover,.button.is-primary.is-hovered{background-color:hsla(var(--primary-h),var(--primary-s),calc(var(--primary-l) + -2.5%),var(--primary-a));border-color:transparent;color:var(--primary-invert)}.button.is-primary:focus,.button.is-primary.is-focused{border-color:transparent;color:var(--primary-invert)}.button.is-primary:focus:not(:active),.button.is-primary.is-focused:not(:active){box-shadow:var(--button-focus-box-shadow-size) hsla(var(--primary-h),var(--primary-s),var(--primary-l),.25)}.button.is-primary:active,.button.is-primary.is-active{background-color:hsla(var(--primary-h),var(--primary-s),calc(var(--primary-l) + -5%),var(--primary-a));border-color:transparent;color:var(--primary-invert)}.button.is-primary[disabled],fieldset[disabled] .button.is-primary{background-color:var(--primary);border-color:var(--primary);box-shadow:none}.button.is-primary.is-inverted{background-color:var(--primary-invert);color:var(--primary)}.button.is-primary.is-inverted:hover,.button.is-primary.is-inverted.is-hovered{background-color:var(--primary-invert-ter)}.button.is-primary.is-inverted[disabled],fieldset[disabled] .button.is-primary.is-inverted{background-color:var(--primary-invert);border-color:transparent;box-shadow:none;color:var(--primary)}.button.is-primary.is-loading:after{border-color:transparent transparent var(--primary-invert) var(--primary-invert)!important}.button.is-primary.is-outlined{background-color:transparent;border-color:var(--primary);color:var(--primary)}.button.is-primary.is-outlined:hover,.button.is-primary.is-outlined.is-hovered,.button.is-primary.is-outlined:focus,.button.is-primary.is-outlined.is-focused{background-color:var(--primary);border-color:var(--primary);color:var(--primary-invert)}.button.is-primary.is-outlined.is-loading:after{border-color:transparent transparent var(--primary) var(--primary)!important}.button.is-primary.is-outlined.is-loading:hover:after,.button.is-primary.is-outlined.is-loading.is-hovered:after,.button.is-primary.is-outlined.is-loading:focus:after,.button.is-primary.is-outlined.is-loading.is-focused:after{border-color:transparent transparent var(--primary-invert) var(--primary-invert)!important}.button.is-primary.is-outlined[disabled],fieldset[disabled] .button.is-primary.is-outlined{background-color:transparent;border-color:var(--primary);box-shadow:none;color:var(--primary)}.button.is-primary.is-inverted.is-outlined{background-color:transparent;border-color:var(--primary-invert);color:var(--primary-invert)}.button.is-primary.is-inverted.is-outlined:hover,.button.is-primary.is-inverted.is-outlined.is-hovered,.button.is-primary.is-inverted.is-outlined:focus,.button.is-primary.is-inverted.is-outlined.is-focused{background-color:var(--primary-invert);color:var(--primary)}.button.is-primary.is-inverted.is-outlined.is-loading:hover:after,.button.is-primary.is-inverted.is-outlined.is-loading.is-hovered:after,.button.is-primary.is-inverted.is-outlined.is-loading:focus:after,.button.is-primary.is-inverted.is-outlined.is-loading.is-focused:after{border-color:transparent transparent var(--primary) var(--primary)!important}.button.is-primary.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-primary.is-inverted.is-outlined{background-color:transparent;border-color:var(--primary-invert);box-shadow:none;color:var(--primary-invert)}.button.is-primary.is-light{background-color:var(--primary-light);color:var(--primary-dark)}.button.is-primary.is-light:hover,.button.is-primary.is-light.is-hovered{background-color:hsla(var(--primary-h),var(--primary-s),calc(var(--primary-light-l) - 2.5%),var(--primary-a));border-color:transparent;color:var(--primary-dark)}.button.is-primary.is-light:active,.button.is-primary.is-light.is-active{background-color:hsla(var(--primary-h),var(--primary-s),calc(var(--primary-light-l) - 5%),var(--primary-a));border-color:transparent;color:var(--primary-dark)}.button.is-secondary{background-color:var(--secondary);border-color:transparent;color:var(--secondary-invert)}.button.is-secondary:hover,.button.is-secondary.is-hovered{background-color:hsla(var(--secondary-h),var(--secondary-s),calc(var(--secondary-l) + -2.5%),var(--secondary-a));border-color:transparent;color:var(--secondary-invert)}.button.is-secondary:focus,.button.is-secondary.is-focused{border-color:transparent;color:var(--secondary-invert)}.button.is-secondary:focus:not(:active),.button.is-secondary.is-focused:not(:active){box-shadow:var(--button-focus-box-shadow-size) hsla(var(--secondary-h),var(--secondary-s),var(--secondary-l),.25)}.button.is-secondary:active,.button.is-secondary.is-active{background-color:hsla(var(--secondary-h),var(--secondary-s),calc(var(--secondary-l) + -5%),var(--secondary-a));border-color:transparent;color:var(--secondary-invert)}.button.is-secondary[disabled],fieldset[disabled] .button.is-secondary{background-color:var(--secondary);border-color:var(--secondary);box-shadow:none}.button.is-secondary.is-inverted{background-color:var(--secondary-invert);color:var(--secondary)}.button.is-secondary.is-inverted:hover,.button.is-secondary.is-inverted.is-hovered{background-color:var(--secondary-invert-ter)}.button.is-secondary.is-inverted[disabled],fieldset[disabled] .button.is-secondary.is-inverted{background-color:var(--secondary-invert);border-color:transparent;box-shadow:none;color:var(--secondary)}.button.is-secondary.is-loading:after{border-color:transparent transparent var(--secondary-invert) var(--secondary-invert)!important}.button.is-secondary.is-outlined{background-color:transparent;border-color:var(--secondary);color:var(--secondary)}.button.is-secondary.is-outlined:hover,.button.is-secondary.is-outlined.is-hovered,.button.is-secondary.is-outlined:focus,.button.is-secondary.is-outlined.is-focused{background-color:var(--secondary);border-color:var(--secondary);color:var(--secondary-invert)}.button.is-secondary.is-outlined.is-loading:after{border-color:transparent transparent var(--secondary) var(--secondary)!important}.button.is-secondary.is-outlined.is-loading:hover:after,.button.is-secondary.is-outlined.is-loading.is-hovered:after,.button.is-secondary.is-outlined.is-loading:focus:after,.button.is-secondary.is-outlined.is-loading.is-focused:after{border-color:transparent transparent var(--secondary-invert) var(--secondary-invert)!important}.button.is-secondary.is-outlined[disabled],fieldset[disabled] .button.is-secondary.is-outlined{background-color:transparent;border-color:var(--secondary);box-shadow:none;color:var(--secondary)}.button.is-secondary.is-inverted.is-outlined{background-color:transparent;border-color:var(--secondary-invert);color:var(--secondary-invert)}.button.is-secondary.is-inverted.is-outlined:hover,.button.is-secondary.is-inverted.is-outlined.is-hovered,.button.is-secondary.is-inverted.is-outlined:focus,.button.is-secondary.is-inverted.is-outlined.is-focused{background-color:var(--secondary-invert);color:var(--secondary)}.button.is-secondary.is-inverted.is-outlined.is-loading:hover:after,.button.is-secondary.is-inverted.is-outlined.is-loading.is-hovered:after,.button.is-secondary.is-inverted.is-outlined.is-loading:focus:after,.button.is-secondary.is-inverted.is-outlined.is-loading.is-focused:after{border-color:transparent transparent var(--secondary) var(--secondary)!important}.button.is-secondary.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-secondary.is-inverted.is-outlined{background-color:transparent;border-color:var(--secondary-invert);box-shadow:none;color:var(--secondary-invert)}.button.is-secondary.is-light{background-color:var(--secondary-light);color:var(--secondary-dark)}.button.is-secondary.is-light:hover,.button.is-secondary.is-light.is-hovered{background-color:hsla(var(--secondary-h),var(--secondary-s),calc(var(--secondary-light-l) - 2.5%),var(--secondary-a));border-color:transparent;color:var(--secondary-dark)}.button.is-secondary.is-light:active,.button.is-secondary.is-light.is-active{background-color:hsla(var(--secondary-h),var(--secondary-s),calc(var(--secondary-light-l) - 5%),var(--secondary-a));border-color:transparent;color:var(--secondary-dark)}.button.is-link{background-color:var(--link);border-color:transparent;color:var(--link-invert)}.button.is-link:hover,.button.is-link.is-hovered{background-color:hsla(var(--link-h),var(--link-s),calc(var(--link-l) + -2.5%),var(--link-a));border-color:transparent;color:var(--link-invert)}.button.is-link:focus,.button.is-link.is-focused{border-color:transparent;color:var(--link-invert)}.button.is-link:focus:not(:active),.button.is-link.is-focused:not(:active){box-shadow:var(--button-focus-box-shadow-size) hsla(var(--link-h),var(--link-s),var(--link-l),.25)}.button.is-link:active,.button.is-link.is-active{background-color:hsla(var(--link-h),var(--link-s),calc(var(--link-l) + -5%),var(--link-a));border-color:transparent;color:var(--link-invert)}.button.is-link[disabled],fieldset[disabled] .button.is-link{background-color:var(--link);border-color:var(--link);box-shadow:none}.button.is-link.is-inverted{background-color:var(--link-invert);color:var(--link)}.button.is-link.is-inverted:hover,.button.is-link.is-inverted.is-hovered{background-color:var(--link-invert-ter)}.button.is-link.is-inverted[disabled],fieldset[disabled] .button.is-link.is-inverted{background-color:var(--link-invert);border-color:transparent;box-shadow:none;color:var(--link)}.button.is-link.is-loading:after{border-color:transparent transparent var(--link-invert) var(--link-invert)!important}.button.is-link.is-outlined{background-color:transparent;border-color:var(--link);color:var(--link)}.button.is-link.is-outlined:hover,.button.is-link.is-outlined.is-hovered,.button.is-link.is-outlined:focus,.button.is-link.is-outlined.is-focused{background-color:var(--link);border-color:var(--link);color:var(--link-invert)}.button.is-link.is-outlined.is-loading:after{border-color:transparent transparent var(--link) var(--link)!important}.button.is-link.is-outlined.is-loading:hover:after,.button.is-link.is-outlined.is-loading.is-hovered:after,.button.is-link.is-outlined.is-loading:focus:after,.button.is-link.is-outlined.is-loading.is-focused:after{border-color:transparent transparent var(--link-invert) var(--link-invert)!important}.button.is-link.is-outlined[disabled],fieldset[disabled] .button.is-link.is-outlined{background-color:transparent;border-color:var(--link);box-shadow:none;color:var(--link)}.button.is-link.is-inverted.is-outlined{background-color:transparent;border-color:var(--link-invert);color:var(--link-invert)}.button.is-link.is-inverted.is-outlined:hover,.button.is-link.is-inverted.is-outlined.is-hovered,.button.is-link.is-inverted.is-outlined:focus,.button.is-link.is-inverted.is-outlined.is-focused{background-color:var(--link-invert);color:var(--link)}.button.is-link.is-inverted.is-outlined.is-loading:hover:after,.button.is-link.is-inverted.is-outlined.is-loading.is-hovered:after,.button.is-link.is-inverted.is-outlined.is-loading:focus:after,.button.is-link.is-inverted.is-outlined.is-loading.is-focused:after{border-color:transparent transparent var(--link) var(--link)!important}.button.is-link.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-link.is-inverted.is-outlined{background-color:transparent;border-color:var(--link-invert);box-shadow:none;color:var(--link-invert)}.button.is-link.is-light{background-color:var(--link-light);color:var(--link-dark)}.button.is-link.is-light:hover,.button.is-link.is-light.is-hovered{background-color:hsla(var(--link-h),var(--link-s),calc(var(--link-light-l) - 2.5%),var(--link-a));border-color:transparent;color:var(--link-dark)}.button.is-link.is-light:active,.button.is-link.is-light.is-active{background-color:hsla(var(--link-h),var(--link-s),calc(var(--link-light-l) - 5%),var(--link-a));border-color:transparent;color:var(--link-dark)}.button.is-info{background-color:var(--info);border-color:transparent;color:var(--info-invert)}.button.is-info:hover,.button.is-info.is-hovered{background-color:hsla(var(--info-h),var(--info-s),calc(var(--info-l) + -2.5%),var(--info-a));border-color:transparent;color:var(--info-invert)}.button.is-info:focus,.button.is-info.is-focused{border-color:transparent;color:var(--info-invert)}.button.is-info:focus:not(:active),.button.is-info.is-focused:not(:active){box-shadow:var(--button-focus-box-shadow-size) hsla(var(--info-h),var(--info-s),var(--info-l),.25)}.button.is-info:active,.button.is-info.is-active{background-color:hsla(var(--info-h),var(--info-s),calc(var(--info-l) + -5%),var(--info-a));border-color:transparent;color:var(--info-invert)}.button.is-info[disabled],fieldset[disabled] .button.is-info{background-color:var(--info);border-color:var(--info);box-shadow:none}.button.is-info.is-inverted{background-color:var(--info-invert);color:var(--info)}.button.is-info.is-inverted:hover,.button.is-info.is-inverted.is-hovered{background-color:var(--info-invert-ter)}.button.is-info.is-inverted[disabled],fieldset[disabled] .button.is-info.is-inverted{background-color:var(--info-invert);border-color:transparent;box-shadow:none;color:var(--info)}.button.is-info.is-loading:after{border-color:transparent transparent var(--info-invert) var(--info-invert)!important}.button.is-info.is-outlined{background-color:transparent;border-color:var(--info);color:var(--info)}.button.is-info.is-outlined:hover,.button.is-info.is-outlined.is-hovered,.button.is-info.is-outlined:focus,.button.is-info.is-outlined.is-focused{background-color:var(--info);border-color:var(--info);color:var(--info-invert)}.button.is-info.is-outlined.is-loading:after{border-color:transparent transparent var(--info) var(--info)!important}.button.is-info.is-outlined.is-loading:hover:after,.button.is-info.is-outlined.is-loading.is-hovered:after,.button.is-info.is-outlined.is-loading:focus:after,.button.is-info.is-outlined.is-loading.is-focused:after{border-color:transparent transparent var(--info-invert) var(--info-invert)!important}.button.is-info.is-outlined[disabled],fieldset[disabled] .button.is-info.is-outlined{background-color:transparent;border-color:var(--info);box-shadow:none;color:var(--info)}.button.is-info.is-inverted.is-outlined{background-color:transparent;border-color:var(--info-invert);color:var(--info-invert)}.button.is-info.is-inverted.is-outlined:hover,.button.is-info.is-inverted.is-outlined.is-hovered,.button.is-info.is-inverted.is-outlined:focus,.button.is-info.is-inverted.is-outlined.is-focused{background-color:var(--info-invert);color:var(--info)}.button.is-info.is-inverted.is-outlined.is-loading:hover:after,.button.is-info.is-inverted.is-outlined.is-loading.is-hovered:after,.button.is-info.is-inverted.is-outlined.is-loading:focus:after,.button.is-info.is-inverted.is-outlined.is-loading.is-focused:after{border-color:transparent transparent var(--info) var(--info)!important}.button.is-info.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-info.is-inverted.is-outlined{background-color:transparent;border-color:var(--info-invert);box-shadow:none;color:var(--info-invert)}.button.is-info.is-light{background-color:var(--info-light);color:var(--info-dark)}.button.is-info.is-light:hover,.button.is-info.is-light.is-hovered{background-color:hsla(var(--info-h),var(--info-s),calc(var(--info-light-l) - 2.5%),var(--info-a));border-color:transparent;color:var(--info-dark)}.button.is-info.is-light:active,.button.is-info.is-light.is-active{background-color:hsla(var(--info-h),var(--info-s),calc(var(--info-light-l) - 5%),var(--info-a));border-color:transparent;color:var(--info-dark)}.button.is-success{background-color:var(--success);border-color:transparent;color:var(--success-invert)}.button.is-success:hover,.button.is-success.is-hovered{background-color:hsla(var(--success-h),var(--success-s),calc(var(--success-l) + -2.5%),var(--success-a));border-color:transparent;color:var(--success-invert)}.button.is-success:focus,.button.is-success.is-focused{border-color:transparent;color:var(--success-invert)}.button.is-success:focus:not(:active),.button.is-success.is-focused:not(:active){box-shadow:var(--button-focus-box-shadow-size) hsla(var(--success-h),var(--success-s),var(--success-l),.25)}.button.is-success:active,.button.is-success.is-active{background-color:hsla(var(--success-h),var(--success-s),calc(var(--success-l) + -5%),var(--success-a));border-color:transparent;color:var(--success-invert)}.button.is-success[disabled],fieldset[disabled] .button.is-success{background-color:var(--success);border-color:var(--success);box-shadow:none}.button.is-success.is-inverted{background-color:var(--success-invert);color:var(--success)}.button.is-success.is-inverted:hover,.button.is-success.is-inverted.is-hovered{background-color:var(--success-invert-ter)}.button.is-success.is-inverted[disabled],fieldset[disabled] .button.is-success.is-inverted{background-color:var(--success-invert);border-color:transparent;box-shadow:none;color:var(--success)}.button.is-success.is-loading:after{border-color:transparent transparent var(--success-invert) var(--success-invert)!important}.button.is-success.is-outlined{background-color:transparent;border-color:var(--success);color:var(--success)}.button.is-success.is-outlined:hover,.button.is-success.is-outlined.is-hovered,.button.is-success.is-outlined:focus,.button.is-success.is-outlined.is-focused{background-color:var(--success);border-color:var(--success);color:var(--success-invert)}.button.is-success.is-outlined.is-loading:after{border-color:transparent transparent var(--success) var(--success)!important}.button.is-success.is-outlined.is-loading:hover:after,.button.is-success.is-outlined.is-loading.is-hovered:after,.button.is-success.is-outlined.is-loading:focus:after,.button.is-success.is-outlined.is-loading.is-focused:after{border-color:transparent transparent var(--success-invert) var(--success-invert)!important}.button.is-success.is-outlined[disabled],fieldset[disabled] .button.is-success.is-outlined{background-color:transparent;border-color:var(--success);box-shadow:none;color:var(--success)}.button.is-success.is-inverted.is-outlined{background-color:transparent;border-color:var(--success-invert);color:var(--success-invert)}.button.is-success.is-inverted.is-outlined:hover,.button.is-success.is-inverted.is-outlined.is-hovered,.button.is-success.is-inverted.is-outlined:focus,.button.is-success.is-inverted.is-outlined.is-focused{background-color:var(--success-invert);color:var(--success)}.button.is-success.is-inverted.is-outlined.is-loading:hover:after,.button.is-success.is-inverted.is-outlined.is-loading.is-hovered:after,.button.is-success.is-inverted.is-outlined.is-loading:focus:after,.button.is-success.is-inverted.is-outlined.is-loading.is-focused:after{border-color:transparent transparent var(--success) var(--success)!important}.button.is-success.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-success.is-inverted.is-outlined{background-color:transparent;border-color:var(--success-invert);box-shadow:none;color:var(--success-invert)}.button.is-success.is-light{background-color:var(--success-light);color:var(--success-dark)}.button.is-success.is-light:hover,.button.is-success.is-light.is-hovered{background-color:hsla(var(--success-h),var(--success-s),calc(var(--success-light-l) - 2.5%),var(--success-a));border-color:transparent;color:var(--success-dark)}.button.is-success.is-light:active,.button.is-success.is-light.is-active{background-color:hsla(var(--success-h),var(--success-s),calc(var(--success-light-l) - 5%),var(--success-a));border-color:transparent;color:var(--success-dark)}.button.is-warning{background-color:var(--warning);border-color:transparent;color:var(--warning-invert)}.button.is-warning:hover,.button.is-warning.is-hovered{background-color:hsla(var(--warning-h),var(--warning-s),calc(var(--warning-l) + -2.5%),var(--warning-a));border-color:transparent;color:var(--warning-invert)}.button.is-warning:focus,.button.is-warning.is-focused{border-color:transparent;color:var(--warning-invert)}.button.is-warning:focus:not(:active),.button.is-warning.is-focused:not(:active){box-shadow:var(--button-focus-box-shadow-size) hsla(var(--warning-h),var(--warning-s),var(--warning-l),.25)}.button.is-warning:active,.button.is-warning.is-active{background-color:hsla(var(--warning-h),var(--warning-s),calc(var(--warning-l) + -5%),var(--warning-a));border-color:transparent;color:var(--warning-invert)}.button.is-warning[disabled],fieldset[disabled] .button.is-warning{background-color:var(--warning);border-color:var(--warning);box-shadow:none}.button.is-warning.is-inverted{background-color:var(--warning-invert);color:var(--warning)}.button.is-warning.is-inverted:hover,.button.is-warning.is-inverted.is-hovered{background-color:var(--warning-invert-ter)}.button.is-warning.is-inverted[disabled],fieldset[disabled] .button.is-warning.is-inverted{background-color:var(--warning-invert);border-color:transparent;box-shadow:none;color:var(--warning)}.button.is-warning.is-loading:after{border-color:transparent transparent var(--warning-invert) var(--warning-invert)!important}.button.is-warning.is-outlined{background-color:transparent;border-color:var(--warning);color:var(--warning)}.button.is-warning.is-outlined:hover,.button.is-warning.is-outlined.is-hovered,.button.is-warning.is-outlined:focus,.button.is-warning.is-outlined.is-focused{background-color:var(--warning);border-color:var(--warning);color:var(--warning-invert)}.button.is-warning.is-outlined.is-loading:after{border-color:transparent transparent var(--warning) var(--warning)!important}.button.is-warning.is-outlined.is-loading:hover:after,.button.is-warning.is-outlined.is-loading.is-hovered:after,.button.is-warning.is-outlined.is-loading:focus:after,.button.is-warning.is-outlined.is-loading.is-focused:after{border-color:transparent transparent var(--warning-invert) var(--warning-invert)!important}.button.is-warning.is-outlined[disabled],fieldset[disabled] .button.is-warning.is-outlined{background-color:transparent;border-color:var(--warning);box-shadow:none;color:var(--warning)}.button.is-warning.is-inverted.is-outlined{background-color:transparent;border-color:var(--warning-invert);color:var(--warning-invert)}.button.is-warning.is-inverted.is-outlined:hover,.button.is-warning.is-inverted.is-outlined.is-hovered,.button.is-warning.is-inverted.is-outlined:focus,.button.is-warning.is-inverted.is-outlined.is-focused{background-color:var(--warning-invert);color:var(--warning)}.button.is-warning.is-inverted.is-outlined.is-loading:hover:after,.button.is-warning.is-inverted.is-outlined.is-loading.is-hovered:after,.button.is-warning.is-inverted.is-outlined.is-loading:focus:after,.button.is-warning.is-inverted.is-outlined.is-loading.is-focused:after{border-color:transparent transparent var(--warning) var(--warning)!important}.button.is-warning.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-warning.is-inverted.is-outlined{background-color:transparent;border-color:var(--warning-invert);box-shadow:none;color:var(--warning-invert)}.button.is-warning.is-light{background-color:var(--warning-light);color:var(--warning-dark)}.button.is-warning.is-light:hover,.button.is-warning.is-light.is-hovered{background-color:hsla(var(--warning-h),var(--warning-s),calc(var(--warning-light-l) - 2.5%),var(--warning-a));border-color:transparent;color:var(--warning-dark)}.button.is-warning.is-light:active,.button.is-warning.is-light.is-active{background-color:hsla(var(--warning-h),var(--warning-s),calc(var(--warning-light-l) - 5%),var(--warning-a));border-color:transparent;color:var(--warning-dark)}.button.is-danger{background-color:var(--danger);border-color:transparent;color:var(--danger-invert)}.button.is-danger:hover,.button.is-danger.is-hovered{background-color:hsla(var(--danger-h),var(--danger-s),calc(var(--danger-l) + -2.5%),var(--danger-a));border-color:transparent;color:var(--danger-invert)}.button.is-danger:focus,.button.is-danger.is-focused{border-color:transparent;color:var(--danger-invert)}.button.is-danger:focus:not(:active),.button.is-danger.is-focused:not(:active){box-shadow:var(--button-focus-box-shadow-size) hsla(var(--danger-h),var(--danger-s),var(--danger-l),.25)}.button.is-danger:active,.button.is-danger.is-active{background-color:hsla(var(--danger-h),var(--danger-s),calc(var(--danger-l) + -5%),var(--danger-a));border-color:transparent;color:var(--danger-invert)}.button.is-danger[disabled],fieldset[disabled] .button.is-danger{background-color:var(--danger);border-color:var(--danger);box-shadow:none}.button.is-danger.is-inverted{background-color:var(--danger-invert);color:var(--danger)}.button.is-danger.is-inverted:hover,.button.is-danger.is-inverted.is-hovered{background-color:var(--danger-invert-ter)}.button.is-danger.is-inverted[disabled],fieldset[disabled] .button.is-danger.is-inverted{background-color:var(--danger-invert);border-color:transparent;box-shadow:none;color:var(--danger)}.button.is-danger.is-loading:after{border-color:transparent transparent var(--danger-invert) var(--danger-invert)!important}.button.is-danger.is-outlined{background-color:transparent;border-color:var(--danger);color:var(--danger)}.button.is-danger.is-outlined:hover,.button.is-danger.is-outlined.is-hovered,.button.is-danger.is-outlined:focus,.button.is-danger.is-outlined.is-focused{background-color:var(--danger);border-color:var(--danger);color:var(--danger-invert)}.button.is-danger.is-outlined.is-loading:after{border-color:transparent transparent var(--danger) var(--danger)!important}.button.is-danger.is-outlined.is-loading:hover:after,.button.is-danger.is-outlined.is-loading.is-hovered:after,.button.is-danger.is-outlined.is-loading:focus:after,.button.is-danger.is-outlined.is-loading.is-focused:after{border-color:transparent transparent var(--danger-invert) var(--danger-invert)!important}.button.is-danger.is-outlined[disabled],fieldset[disabled] .button.is-danger.is-outlined{background-color:transparent;border-color:var(--danger);box-shadow:none;color:var(--danger)}.button.is-danger.is-inverted.is-outlined{background-color:transparent;border-color:var(--danger-invert);color:var(--danger-invert)}.button.is-danger.is-inverted.is-outlined:hover,.button.is-danger.is-inverted.is-outlined.is-hovered,.button.is-danger.is-inverted.is-outlined:focus,.button.is-danger.is-inverted.is-outlined.is-focused{background-color:var(--danger-invert);color:var(--danger)}.button.is-danger.is-inverted.is-outlined.is-loading:hover:after,.button.is-danger.is-inverted.is-outlined.is-loading.is-hovered:after,.button.is-danger.is-inverted.is-outlined.is-loading:focus:after,.button.is-danger.is-inverted.is-outlined.is-loading.is-focused:after{border-color:transparent transparent var(--danger) var(--danger)!important}.button.is-danger.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-danger.is-inverted.is-outlined{background-color:transparent;border-color:var(--danger-invert);box-shadow:none;color:var(--danger-invert)}.button.is-danger.is-light{background-color:var(--danger-light);color:var(--danger-dark)}.button.is-danger.is-light:hover,.button.is-danger.is-light.is-hovered{background-color:hsla(var(--danger-h),var(--danger-s),calc(var(--danger-light-l) - 2.5%),var(--danger-a));border-color:transparent;color:var(--danger-dark)}.button.is-danger.is-light:active,.button.is-danger.is-light.is-active{background-color:hsla(var(--danger-h),var(--danger-s),calc(var(--danger-light-l) - 5%),var(--danger-a));border-color:transparent;color:var(--danger-dark)}.button.is-small{--button-font-size: var(--size-small)}.button.is-small:not(.is-rounded){border-radius:var(--radius-small)}.button.is-normal{--button-font-size: var(--size-normal)}.button.is-medium{--button-font-size: var(--size-medium)}.button.is-large{--button-font-size: var(--size-large)}.button[disabled],fieldset[disabled] .button{background-color:var(--button-disabled-background-color);border-color:var(--button-disabled-border-color);box-shadow:var(--button-disabled-shadow);opacity:var(--button-disabled-opacity)}.button.is-fullwidth{display:flex;width:100%}.button.is-loading{color:transparent!important;pointer-events:none}.button.is-loading:after{position:absolute;left:calc(50% - .5em);top:calc(50% - .5em);position:absolute!important}.button.is-static{background-color:var(--button-static-background-color);border-color:var(--button-static-border-color);color:var(--button-static-color);box-shadow:none;pointer-events:none}.button.is-rounded{border-radius:var(--radius-rounded);padding-left:calc(var(--button-padding-horizontal) + .25em);padding-right:calc(var(--button-padding-horizontal) + .25em)}.buttons{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}.buttons .button{margin-bottom:.5rem}.buttons .button:not(:last-child,.is-fullwidth){margin-right:.5rem}.buttons:last-child{margin-bottom:-.5rem}.buttons:not(:last-child){margin-bottom:1rem}.buttons.are-small .button:not(.is-normal,.is-medium,.is-large){--button-font-size: var(--size-small)}.buttons.are-small .button:not(.is-normal,.is-medium,.is-large):not(.is-rounded){border-radius:var(--radius-small)}.buttons.are-medium .button:not(.is-small,.is-normal,.is-large){--button-font-size: var(--size-medium)}.buttons.are-large .button:not(.is-small,.is-normal,.is-medium){--button-font-size: var(--size-large)}.buttons.has-addons .button:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.buttons.has-addons .button:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0;margin-right:-1px}.buttons.has-addons .button:last-child{margin-right:0}.buttons.has-addons .button:hover,.buttons.has-addons .button.is-hovered{z-index:2}.buttons.has-addons .button:focus,.buttons.has-addons .button.is-focused,.buttons.has-addons .button:active,.buttons.has-addons .button.is-active,.buttons.has-addons .button.is-selected{z-index:3}.buttons.has-addons .button:focus:hover,.buttons.has-addons .button.is-focused:hover,.buttons.has-addons .button:active:hover,.buttons.has-addons .button.is-active:hover,.buttons.has-addons .button.is-selected:hover{z-index:4}.buttons.has-addons .button.is-expanded{flex-grow:1;flex-shrink:1}.buttons.is-centered{justify-content:center}.buttons.is-centered:not(.has-addons) .button:not(.is-fullwidth){margin-left:.25rem;margin-right:.25rem}.buttons.is-right{justify-content:flex-end}.buttons.is-right:not(.has-addons) .button:not(.is-fullwidth){margin-left:.25rem;margin-right:.25rem}@media screen and (max-width: 768px){.button.is-responsive.is-small{font-size:calc(var(--size-small) * .75)}.button.is-responsive,.button.is-responsive.is-normal{font-size:calc(var(--size-small) * .875)}.button.is-responsive.is-medium{font-size:var(--size-small)}.button.is-responsive.is-large{font-size:var(--size-normal)}}@media screen and (min-width: 769px) and (max-width: 1023px){.button.is-responsive.is-small{font-size:calc(var(--size-small) * .875)}.button.is-responsive,.button.is-responsive.is-normal{font-size:var(--size-small)}.button.is-responsive.is-medium{font-size:var(--size-normal)}.button.is-responsive.is-large{font-size:var(--size-medium)}}.container{flex-grow:1;margin:0 auto;position:relative;width:auto}.container.is-fluid{max-width:none!important;padding-left:32px;padding-right:32px;width:100%}@media screen and (min-width: 1024px){.container{max-width:960px}}@media screen and (max-width: 1215px){.container.is-widescreen:not(.is-max-desktop){max-width:1152px}}@media screen and (max-width: 1407px){.container.is-fullhd:not(.is-max-desktop,.is-max-widescreen){max-width:1344px}}@media screen and (min-width: 1216px){.container:not(.is-max-desktop){max-width:1152px}}@media screen and (min-width: 1408px){.container:not(.is-max-desktop,.is-max-widescreen){max-width:1344px}}:root{--content-heading-color: var(--text-strong);--content-heading-weight: var(--weight-semibold);--content-heading-line-height: 1.125;--content-block-margin-bottom: 1em;--content-blockquote-background-color: var(--background);--content-blockquote-border-left: 5px solid var(--border);--content-blockquote-padding: 1.25em 1.5em;--content-pre-padding: 1.25em 1.5em;--content-table-cell-border: 1px solid var(--border);--content-table-cell-border-width: 0 0 1px;--content-table-cell-padding: .5em .75em;--content-table-cell-heading-color: var(--text-strong);--content-table-head-cell-border-width: 0 0 2px;--content-table-head-cell-color: var(--text-strong);--content-table-body-last-row-cell-border-bottom-width: 0;--content-table-foot-cell-border-width: 2px 0 0;--content-table-foot-cell-color: var(--text-strong)}.content li+li{margin-top:.25em}.content p:not(:last-child),.content dl:not(:last-child),.content ol:not(:last-child),.content ul:not(:last-child),.content blockquote:not(:last-child),.content pre:not(:last-child),.content table:not(:last-child){margin-bottom:var(--content-block-margin-bottom)}.content h1,.content h2,.content h3,.content h4,.content h5,.content h6{color:var(--content-heading-color);font-weight:var(--content-heading-weight);line-height:var(--content-heading-line-height)}.content h1{font-size:2em;margin-bottom:.5em}.content h1:not(:first-child){margin-top:1em}.content h2{font-size:1.75em;margin-bottom:.5714285714em}.content h2:not(:first-child){margin-top:1.4285714286em}.content h3{font-size:1.5em;margin-bottom:.6666666667em}.content h3:not(:first-child){margin-top:1.3333333333em}.content h4{font-size:1.25em;margin-bottom:.8em}.content h5{font-size:1.125em;margin-bottom:.8888888889em}.content h6{font-size:1em;margin-bottom:1em}.content blockquote{background-color:var(--content-blockquote-background-color);border-left:var(--content-blockquote-border-left);padding:var(--content-blockquote-padding)}.content ol{list-style-position:outside;margin-left:2em;margin-top:1em}.content ol:not([type]){list-style-type:decimal}.content ol:not([type]).is-lower-alpha{list-style-type:lower-alpha}.content ol:not([type]).is-lower-roman{list-style-type:lower-roman}.content ol:not([type]).is-upper-alpha{list-style-type:upper-alpha}.content ol:not([type]).is-upper-roman{list-style-type:upper-roman}.content ul{list-style:disc outside;margin-left:2em;margin-top:1em}.content ul ul{list-style-type:circle;margin-top:.5em}.content ul ul ul{list-style-type:square}.content dd{margin-left:2em}.content figure{margin-left:2em;margin-right:2em;text-align:center}.content figure:not(:first-child){margin-top:2em}.content figure:not(:last-child){margin-bottom:2em}.content figure img{display:inline-block}.content figure figcaption{font-style:italic}.content pre{-webkit-overflow-scrolling:touch;overflow-x:auto;padding:var(--content-pre-padding);white-space:pre;word-wrap:normal}.content sup,.content sub{font-size:75%}.content table{width:100%}.content table td,.content table th{border:var(--content-table-cell-border);border-width:var(--content-table-cell-border-width);padding:var(--content-table-cell-padding);vertical-align:top}.content table th{color:var(--content-table-cell-heading-color)}.content table th:not([align]){text-align:inherit}.content table thead td,.content table thead th{border-width:var(--content-table-head-cell-border-width);color:var(--content-table-head-cell-color)}.content table tfoot td,.content table tfoot th{border-width:var(--content-table-foot-cell-border-width);color:var(--content-table-foot-cell-color)}.content table tbody tr:last-child td,.content table tbody tr:last-child th{border-bottom-width:var(--content-table-body-last-row-cell-border-bottom-width)}.content .tabs li+li{margin-top:0}.content.is-small{font-size:var(--size-small)}.content.is-normal{font-size:var(--size-normal)}.content.is-medium{font-size:var(--size-medium)}.content.is-large{font-size:var(--size-large)}:root{--icon-dimensions: 1.5rem;--icon-dimensions-small: 1rem;--icon-dimensions-medium: 2rem;--icon-dimensions-large: 3rem;--icon-text-spacing: .25em}.icon{align-items:center;display:inline-flex;justify-content:center;height:var(--icon-dimensions);width:var(--icon-dimensions)}.icon.is-small{--icon-dimensions: var(--icon-dimensions-small)}.icon.is-medium{--icon-dimensions: var(--icon-dimensions-medium)}.icon.is-large{--icon-dimensions: var(--icon-dimensions-large)}.icon-text{align-items:flex-start;color:inherit;display:inline-flex;flex-wrap:wrap;line-height:var(--icon-dimensions);vertical-align:top}.icon-text .icon{flex-grow:0;flex-shrink:0}.icon-text .icon:not(:last-child){margin-right:var(--icon-text-spacing)}.icon-text .icon:not(:first-child){margin-left:var(--icon-text-spacing)}div.icon-text{display:flex}.image{display:block;position:relative}.image img{display:block;height:auto;width:100%}.image img.is-rounded{border-radius:var(--radius-rounded)}.image.is-fullwidth{width:100%}.image.is-square img,.image.is-square .has-ratio,.image.is-1by1 img,.image.is-1by1 .has-ratio,.image.is-5by4 img,.image.is-5by4 .has-ratio,.image.is-4by3 img,.image.is-4by3 .has-ratio,.image.is-3by2 img,.image.is-3by2 .has-ratio,.image.is-5by3 img,.image.is-5by3 .has-ratio,.image.is-16by9 img,.image.is-16by9 .has-ratio,.image.is-2by1 img,.image.is-2by1 .has-ratio,.image.is-3by1 img,.image.is-3by1 .has-ratio,.image.is-4by5 img,.image.is-4by5 .has-ratio,.image.is-3by4 img,.image.is-3by4 .has-ratio,.image.is-2by3 img,.image.is-2by3 .has-ratio,.image.is-3by5 img,.image.is-3by5 .has-ratio,.image.is-9by16 img,.image.is-9by16 .has-ratio,.image.is-1by2 img,.image.is-1by2 .has-ratio,.image.is-1by3 img,.image.is-1by3 .has-ratio{height:100%;width:100%}.image.is-square,.image.is-1by1{padding-top:100%}.image.is-5by4{padding-top:80%}.image.is-4by3{padding-top:75%}.image.is-3by2{padding-top:66.6666666667%}.image.is-5by3{padding-top:60%}.image.is-16by9{padding-top:56.25%}.image.is-2by1{padding-top:50%}.image.is-3by1{padding-top:33.3333333333%}.image.is-4by5{padding-top:125%}.image.is-3by4{padding-top:133.3333333333%}.image.is-2by3{padding-top:150%}.image.is-3by5{padding-top:166.6666666667%}.image.is-9by16{padding-top:177.7777777778%}.image.is-1by2{padding-top:200%}.image.is-1by3{padding-top:300%}.image.is-16x16{height:16px;width:16px}.image.is-24x24{height:24px;width:24px}.image.is-32x32{height:32px;width:32px}.image.is-48x48{height:48px;width:48px}.image.is-64x64{height:64px;width:64px}.image.is-96x96{height:96px;width:96px}.image.is-128x128{height:128px;width:128px}:root{--notification-background-color: var(--background);--notification-code-background-color: var(--scheme-main);--notification-radius: var(--radius);--notification-padding-ltr: 1.25rem 2.5rem 1.25rem 1.5rem;--notification-padding-rtl: 1.25rem 1.5rem 1.25rem 2.5rem}.notification{background-color:var(--notification-background-color);border-radius:var(--notification-radius);color:var(--notification-color);position:relative;padding:var(--notification-padding-ltr)}.notification a:not(.button,.dropdown-item){color:currentColor;text-decoration:underline}.notification strong{color:currentColor}.notification code,.notification pre{background:var(--notification-code-background-color)}.notification pre code{background:transparent}.notification>.delete{right:.5rem;position:absolute;top:.5rem}.notification .title,.notification .subtitle,.notification .content{color:currentColor}.notification.is-white{--notification-background-color: var(--white);--notification-color: var(--white-invert)}.notification.is-black{--notification-background-color: var(--black);--notification-color: var(--black-invert)}.notification.is-light{--notification-background-color: var(--light);--notification-color: var(--light-invert)}.notification.is-dark{--notification-background-color: var(--dark);--notification-color: var(--dark-invert)}.notification.is-primary{--notification-background-color: var(--primary);--notification-color: var(--primary-invert)}.notification.is-primary.is-light{--notification-background-color: var(--primary-light);--notification-color: var(--primary-dark)}.notification.is-secondary{--notification-background-color: var(--secondary);--notification-color: var(--secondary-invert)}.notification.is-secondary.is-light{--notification-background-color: var(--secondary-light);--notification-color: var(--secondary-dark)}.notification.is-link{--notification-background-color: var(--link);--notification-color: var(--link-invert)}.notification.is-link.is-light{--notification-background-color: var(--link-light);--notification-color: var(--link-dark)}.notification.is-info{--notification-background-color: var(--info);--notification-color: var(--info-invert)}.notification.is-info.is-light{--notification-background-color: var(--info-light);--notification-color: var(--info-dark)}.notification.is-success{--notification-background-color: var(--success);--notification-color: var(--success-invert)}.notification.is-success.is-light{--notification-background-color: var(--success-light);--notification-color: var(--success-dark)}.notification.is-warning{--notification-background-color: var(--warning);--notification-color: var(--warning-invert)}.notification.is-warning.is-light{--notification-background-color: var(--warning-light);--notification-color: var(--warning-dark)}.notification.is-danger{--notification-background-color: var(--danger);--notification-color: var(--danger-invert)}.notification.is-danger.is-light{--notification-background-color: var(--danger-light);--notification-color: var(--danger-dark)}:root{--progress-height: var(--size-normal);--progress-bar-background-color: var(--border-light);--progress-value-background-color: var(--text);--progress-border-radius: var(--radius-rounded);--progress-indeterminate-duration: 1.5s}.progress{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-radius:var(--progress-border-radius);display:block;height:var(--progress-height);overflow:hidden;padding:0;width:100%}.progress::-webkit-progress-bar{background-color:var(--progress-bar-background-color)}.progress::-webkit-progress-value,.progress::-moz-progress-bar,.progress::-ms-fill{background-color:var(--progress-value-background-color)}.progress::-ms-fill{border:none}.progress.is-white::-webkit-progress-value{background-color:var(--white)}.progress.is-white::-moz-progress-bar{background-color:var(--white)}.progress.is-white::-ms-fill{background-color:var(--white)}.progress.is-white:indeterminate{background-image:linear-gradient(to right,var(--white) 30%,var(--progress-bar-background-color) 30%)}.progress.is-black::-webkit-progress-value{background-color:var(--black)}.progress.is-black::-moz-progress-bar{background-color:var(--black)}.progress.is-black::-ms-fill{background-color:var(--black)}.progress.is-black:indeterminate{background-image:linear-gradient(to right,var(--black) 30%,var(--progress-bar-background-color) 30%)}.progress.is-light::-webkit-progress-value{background-color:var(--light)}.progress.is-light::-moz-progress-bar{background-color:var(--light)}.progress.is-light::-ms-fill{background-color:var(--light)}.progress.is-light:indeterminate{background-image:linear-gradient(to right,var(--light) 30%,var(--progress-bar-background-color) 30%)}.progress.is-dark::-webkit-progress-value{background-color:var(--dark)}.progress.is-dark::-moz-progress-bar{background-color:var(--dark)}.progress.is-dark::-ms-fill{background-color:var(--dark)}.progress.is-dark:indeterminate{background-image:linear-gradient(to right,var(--dark) 30%,var(--progress-bar-background-color) 30%)}.progress.is-primary::-webkit-progress-value{background-color:var(--primary)}.progress.is-primary::-moz-progress-bar{background-color:var(--primary)}.progress.is-primary::-ms-fill{background-color:var(--primary)}.progress.is-primary:indeterminate{background-image:linear-gradient(to right,var(--primary) 30%,var(--progress-bar-background-color) 30%)}.progress.is-secondary::-webkit-progress-value{background-color:var(--secondary)}.progress.is-secondary::-moz-progress-bar{background-color:var(--secondary)}.progress.is-secondary::-ms-fill{background-color:var(--secondary)}.progress.is-secondary:indeterminate{background-image:linear-gradient(to right,var(--secondary) 30%,var(--progress-bar-background-color) 30%)}.progress.is-link::-webkit-progress-value{background-color:var(--link)}.progress.is-link::-moz-progress-bar{background-color:var(--link)}.progress.is-link::-ms-fill{background-color:var(--link)}.progress.is-link:indeterminate{background-image:linear-gradient(to right,var(--link) 30%,var(--progress-bar-background-color) 30%)}.progress.is-info::-webkit-progress-value{background-color:var(--info)}.progress.is-info::-moz-progress-bar{background-color:var(--info)}.progress.is-info::-ms-fill{background-color:var(--info)}.progress.is-info:indeterminate{background-image:linear-gradient(to right,var(--info) 30%,var(--progress-bar-background-color) 30%)}.progress.is-success::-webkit-progress-value{background-color:var(--success)}.progress.is-success::-moz-progress-bar{background-color:var(--success)}.progress.is-success::-ms-fill{background-color:var(--success)}.progress.is-success:indeterminate{background-image:linear-gradient(to right,var(--success) 30%,var(--progress-bar-background-color) 30%)}.progress.is-warning::-webkit-progress-value{background-color:var(--warning)}.progress.is-warning::-moz-progress-bar{background-color:var(--warning)}.progress.is-warning::-ms-fill{background-color:var(--warning)}.progress.is-warning:indeterminate{background-image:linear-gradient(to right,var(--warning) 30%,var(--progress-bar-background-color) 30%)}.progress.is-danger::-webkit-progress-value{background-color:var(--danger)}.progress.is-danger::-moz-progress-bar{background-color:var(--danger)}.progress.is-danger::-ms-fill{background-color:var(--danger)}.progress.is-danger:indeterminate{background-image:linear-gradient(to right,var(--danger) 30%,var(--progress-bar-background-color) 30%)}.progress:indeterminate{animation-duration:var(--progress-indeterminate-duration);animation-iteration-count:infinite;animation-name:moveIndeterminate;animation-timing-function:linear;background-color:var(--progress-bar-background-color);background-image:linear-gradient(to right,var(--text) 30%,var(--progress-bar-background-color) 30%);background-position:top left;background-repeat:no-repeat;background-size:150% 150%}.progress:indeterminate::-webkit-progress-bar{background-color:transparent}.progress:indeterminate::-moz-progress-bar{background-color:transparent}.progress:indeterminate::-ms-fill{animation-name:none}.progress.is-small{--progress-height: var(--size-small)}.progress.is-medium{--progress-height: var(--size-medium)}.progress.is-large{--progress-height: var(--size-large)}:root{--table-color: var(--text-strong);--table-cell-border-width: 0 0 1px;--table-cell-border: 1px solid var(--border);--table-cell-heading-color: var(--text-strong);--table-cell-text-align: left;--table-cell-padding: .5em .75em;--table-head-cell-border-width: 0 0 2px;--table-head-cell-color: var(--text-strong);--table-foot-cell-border-width: 2px 0 0;--table-foot-cell-color: var(--text-strong);--table-head-background-color: transparent;--table-body-background-color: transparent;--table-foot-background-color: transparent;--table-row-hover-background-color: var(--scheme-main-bis);--table-row-active-background-color: var(--primary);--table-row-active-color: var(--primary-invert);--table-striped-row-even-background-color: var(--scheme-main-bis);--table-striped-row-even-hover-background-color: var(--scheme-main-ter)}.table{background-color:var(--table-background-color);color:var(--table-color)}.table td,.table th{border:var(--table-cell-border);border-width:var(--table-cell-border-width);padding:var(--table-cell-padding);vertical-align:top}.table td.is-white,.table th.is-white{background-color:var(--white);border-color:var(--white);color:var(--white-invert)}.table td.is-black,.table th.is-black{background-color:var(--black);border-color:var(--black);color:var(--black-invert)}.table td.is-light,.table th.is-light{background-color:var(--light);border-color:var(--light);color:var(--light-invert)}.table td.is-dark,.table th.is-dark{background-color:var(--dark);border-color:var(--dark);color:var(--dark-invert)}.table td.is-primary,.table th.is-primary{background-color:var(--primary);border-color:var(--primary);color:var(--primary-invert)}.table td.is-secondary,.table th.is-secondary{background-color:var(--secondary);border-color:var(--secondary);color:var(--secondary-invert)}.table td.is-link,.table th.is-link{background-color:var(--link);border-color:var(--link);color:var(--link-invert)}.table td.is-info,.table th.is-info{background-color:var(--info);border-color:var(--info);color:var(--info-invert)}.table td.is-success,.table th.is-success{background-color:var(--success);border-color:var(--success);color:var(--success-invert)}.table td.is-warning,.table th.is-warning{background-color:var(--warning);border-color:var(--warning);color:var(--warning-invert)}.table td.is-danger,.table th.is-danger{background-color:var(--danger);border-color:var(--danger);color:var(--danger-invert)}.table td.is-narrow,.table th.is-narrow{white-space:nowrap;width:1%}.table td.is-selected,.table th.is-selected{background-color:var(--table-row-active-background-color);color:var(--table-row-active-color)}.table td.is-selected a,.table td.is-selected strong,.table th.is-selected a,.table th.is-selected strong{color:currentColor}.table td.is-vcentered,.table th.is-vcentered{vertical-align:middle}.table th{color:var(--table-cell-heading-color)}.table th:not([align]){text-align:var(--table-cell-text-align)}.table tr.is-selected{background-color:var(--table-row-active-background-color);color:var(--table-row-active-color)}.table tr.is-selected a,.table tr.is-selected strong{color:currentColor}.table tr.is-selected td,.table tr.is-selected th{border-color:var(--table-row-active-color);color:currentColor}.table thead{background-color:var(--table-head-background-color)}.table thead td,.table thead th{border-width:var(--table-head-cell-border-width);color:var(--table-head-cell-color)}.table tfoot{background-color:var(--table-foot-background-color)}.table tfoot td,.table tfoot th{border-width:var(--table-foot-cell-border-width);color:var(--table-foot-cell-color)}.table tbody{background-color:var(--table-body-background-color)}.table tbody tr:last-child td,.table tbody tr:last-child th{border-bottom-width:0}.table.is-bordered td,.table.is-bordered th{border-width:1px}.table.is-bordered tr:last-child td,.table.is-bordered tr:last-child th{border-bottom-width:1px}.table.is-fullwidth{width:100%}.table.is-hoverable tbody tr:not(.is-selected):hover{background-color:var(--table-row-hover-background-color)}.table.is-hoverable.is-striped tbody tr:not(.is-selected):hover{background-color:var(--table-row-hover-background-color)}.table.is-hoverable.is-striped tbody tr:not(.is-selected):hover:nth-child(2n){background-color:var(--table-striped-row-even-hover-background-color)}.table.is-narrow td,.table.is-narrow th{padding:.25em .5em}.table.is-striped tbody tr:not(.is-selected):nth-child(2n){background-color:var(--table-striped-row-even-background-color)}.table-container{-webkit-overflow-scrolling:touch;overflow:auto;overflow-y:hidden;max-width:100%}:root{--tag-background-color: var(--scheme-main-bis);--tag-color: var(--text);--tag-radius: var(--radius);--tag-font-size: var(--size-small);--tag-delete-margin: 1px;--tag-focus-background-color: var(--scheme-main-ter);--tag-active-background-color: var(--scheme-main-ter)}.tags{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}.tags .tag{margin-bottom:.5rem}.tags .tag:not(:last-child){margin-right:.5rem}.tags:last-child{margin-bottom:-.5rem}.tags:not(:last-child){margin-bottom:1rem}.tags.are-medium .tag:not(.is-normal,.is-large){--tag-font-size: var(--size-normal)}.tags.are-large .tag:not(.is-normal,.is-medium){--tag-font-size: var(--size-medium)}.tags.is-centered{justify-content:center}.tags.is-centered .tag{margin-right:.25rem;margin-left:.25rem}.tags.is-right{justify-content:flex-end}.tags.is-right .tag:not(:first-child){margin-left:.5rem}.tags.is-right .tag:not(:last-child){margin-right:0}.tags.has-addons .tag{margin-right:0}.tags.has-addons .tag:not(:first-child){margin-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.tags.has-addons .tag:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.tag:not(body){align-items:center;background-color:var(--tag-background-color);border-radius:var(--tag-radius);color:var(--tag-color);display:inline-flex;font-size:var(--tag-font-size);height:2em;justify-content:center;line-height:1.5;padding-left:.75em;padding-right:.75em;white-space:nowrap}.tag:not(body) .delete{margin-left:.25rem;margin-right:-.375rem}.tag:not(body).is-white{background-color:var(--white);color:var(--white-invert)}.tag:not(body).is-black{background-color:var(--black);color:var(--black-invert)}.tag:not(body).is-light{background-color:var(--light);color:var(--light-invert)}.tag:not(body).is-dark{background-color:var(--dark);color:var(--dark-invert)}.tag:not(body).is-primary{background-color:var(--primary);color:var(--primary-invert)}.tag:not(body).is-primary.is-light{background-color:var(--primary-light);color:var(--primary-dark)}.tag:not(body).is-secondary{background-color:var(--secondary);color:var(--secondary-invert)}.tag:not(body).is-secondary.is-light{background-color:var(--secondary-light);color:var(--secondary-dark)}.tag:not(body).is-link{background-color:var(--link);color:var(--link-invert)}.tag:not(body).is-link.is-light{background-color:var(--link-light);color:var(--link-dark)}.tag:not(body).is-info{background-color:var(--info);color:var(--info-invert)}.tag:not(body).is-info.is-light{background-color:var(--info-light);color:var(--info-dark)}.tag:not(body).is-success{background-color:var(--success);color:var(--success-invert)}.tag:not(body).is-success.is-light{background-color:var(--success-light);color:var(--success-dark)}.tag:not(body).is-warning{background-color:var(--warning);color:var(--warning-invert)}.tag:not(body).is-warning.is-light{background-color:var(--warning-light);color:var(--warning-dark)}.tag:not(body).is-danger{background-color:var(--danger);color:var(--danger-invert)}.tag:not(body).is-danger.is-light{background-color:var(--danger-light);color:var(--danger-dark)}.tag:not(body).is-small{--tag-font-size: var(--size-small)}.tag:not(body).is-medium{--tag-font-size: var(--size-medium)}.tag:not(body).is-large{--tag-font-size: var(--size-large)}.tag:not(body) .icon:first-child:not(:last-child){margin-left:-.375em;margin-right:.1875em}.tag:not(body) .icon:last-child:not(:first-child){margin-left:.1875em;margin-right:-.375em}.tag:not(body) .icon:first-child:last-child{margin-left:-.375em;margin-right:-.375em}.tag:not(body).is-delete{margin-left:var(--tag-delete-margin);padding:0;position:relative;width:2em}.tag:not(body).is-delete:before,.tag:not(body).is-delete:after{background-color:currentColor;content:"";display:block;left:50%;position:absolute;top:50%;transform:translate(-50%) translateY(-50%) rotate(45deg);transform-origin:center center}.tag:not(body).is-delete:before{height:1px;width:50%}.tag:not(body).is-delete:after{height:50%;width:1px}.tag:not(body).is-delete:hover,.tag:not(body).is-delete:focus{background-color:var(--tag-focus-background-color)}.tag:not(body).is-delete:active{background-color:var(--tag-active-background-color)}.tag:not(body).is-rounded{border-radius:var(--radius-rounded)}a.tag:hover{text-decoration:underline}:root{--title-sub-size: .75em;--title-family: false;--title-sup-size: .75em;--title-color: var(--text-strong);--title-size: var(--size-3);--title-weight: var(--weight-semibold);--title-line-height: 1.125;--title-strong-color: inherit;--title-strong-weight: inherit;--subtitle-color: var(--text);--subtitle-family: false;--subtitle-size: var(--size-5);--subtitle-weight: var(--weight-normal);--subtitle-line-height: 1.25;--subtitle-strong-color: var(--text-strong);--subtitle-strong-weight: var(--weight-semibold);--subtitle-negative-margin: -1.25rem}.title,.subtitle{word-break:break-word}.title em,.title span,.subtitle em,.subtitle span{font-weight:inherit}.title sub,.subtitle sub{font-size:var(--title-sub-size)}.title sup,.subtitle sup{font-size:var(--title-sup-size)}.title .tag,.subtitle .tag{vertical-align:middle}.title{color:var(--title-color);font-size:var(--title-size);font-weight:var(--title-weight);line-height:var(--title-line-height)}.title strong{color:var(--title-strong-color);font-weight:var(--title-strong-weight)}.title:not(.is-spaced)+.subtitle{margin-top:var(--subtitle-negative-margin)}.subtitle{color:var(--subtitle-color);font-size:var(--subtitle-size);font-weight:var(--subtitle-weight);line-height:var(--subtitle-line-height)}.subtitle strong{color:var(--subtitle-strong-color);font-weight:var(--subtitle-strong-weight)}.subtitle:not(.is-spaced)+.title{margin-top:var(--subtitle-negative-margin)}.title.is-1,.subtitle.is-1{font-size:3rem}.title.is-2,.subtitle.is-2{font-size:2.5rem}.title.is-3,.subtitle.is-3{font-size:2rem}.title.is-4,.subtitle.is-4{font-size:1.5rem}.title.is-5,.subtitle.is-5{font-size:1.25rem}.title.is-6,.subtitle.is-6{font-size:1rem}.title.is-7,.subtitle.is-7{font-size:.75rem}:root{--number-background: var(--background);--number-radius-rounded: var(--radius-rounded);--number-font-size: var(--size-medium)}.block:not(:last-child){margin-bottom:var(--block-spacing)}.delete{--delete-height: 20px;--delete-width: 20px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:rgba(var(--scheme-invert-rgb),.2);border:none;border-radius:var(--radius-rounded);cursor:pointer;pointer-events:auto;display:inline-block;flex-grow:0;flex-shrink:0;font-size:0;height:var(--delete-height);max-height:var(--delete-height);max-width:var(--delete-width);min-height:var(--delete-height);min-width:var(--delete-width);outline:none;position:relative;vertical-align:top;width:var(--delete-width)}.delete:before,.delete:after{background-color:var(--scheme-main);content:"";display:block;left:50%;position:absolute;top:50%;transform:translate(-50%) translateY(-50%) rotate(45deg);transform-origin:center center}.delete:before{height:2px;width:50%}.delete:after{height:50%;width:2px}.delete:hover,.delete:focus{background-color:rgba(var(--scheme-invert-rgb),.3)}.delete:active{background-color:rgba(var(--scheme-invert-rgb),.4)}.delete.is-small{--delete-height: 16px;--delete-width: 16px}.delete.is-medium{--delete-height: 24px;--delete-width: 24px}.delete.is-large{--delete-height: 32px;--delete-width: 32px}.heading{display:block;font-size:11px;letter-spacing:1px;margin-bottom:5px;text-transform:uppercase}.loader{--loader-border-color: var(--grey-lighter);animation:spinAround .5s infinite linear;border:2px solid var(--loader-border-color);border-radius:var(--radius-rounded);border-right-color:transparent;border-top-color:transparent;content:"";display:block;height:1em;position:relative;width:1em}.number{align-items:center;background-color:var(--number-background);border-radius:var(--number-radius-rounded);display:inline-flex;font-size:var(--number-font-size);height:2em;justify-content:center;margin-right:1.5rem;min-width:2.5em;padding:.25rem .5rem;text-align:center;vertical-align:top}:root{--input-color: var(--text-strong);--input-background-color: var(--scheme-main);--input-border-color: var(--border);--input-height: var(--control-height);--input-shadow-color: rgba(var(--scheme-invert-rgb), .05);--input-shadow: inset 0 .0625em .125em rgba(var(--scheme-invert-rgb), .05);--input-placeholder-color: var(--text-strong);--input-placeholder-opacity: .3;--input-hover-color: var(--text-strong);--input-hover-border-color: var(--border-hover);--input-focus-color: var(--text-strong);--input-focus-border-color: var(--link);--input-focus-box-shadow-size: 0 0 0 .125em;--input-focus-box-shadow-color: rgba(var(--scheme-invert-rgb), .25);--input-disabled-color: var(--text-light);--input-disabled-background-color: var(--background);--input-disabled-border-color: var(--background);--input-disabled-placeholder-color: var(--text-light);--input-disabled-placeholder-opacity: .3;--input-arrow-color: var(--link);--input-icon-color: var(--border);--input-icon-active-color: var(--text);--input-radius: var(--radius)}.textarea,.input{box-shadow:var(--input-shadow);max-width:100%;width:100%}[readonly].textarea,[readonly].input{box-shadow:none}.is-white.textarea,.is-white.input{--focus-box-shadow-color: hsla(var(--white-h), var(--white-s), var(--white-l), .25);border-color:var(--white)}.is-white.textarea:focus,.is-white.input:focus,.is-white.is-focused.textarea,.is-white.is-focused.input,.is-white.textarea:active,.is-white.input:active,.is-white.is-active.textarea,.is-white.is-active.input{box-shadow:var(--input-focus-box-shadow-size) var(--focus-box-shadow-color)}.is-black.textarea,.is-black.input{--focus-box-shadow-color: hsla(var(--black-h), var(--black-s), var(--black-l), .25);border-color:var(--black)}.is-black.textarea:focus,.is-black.input:focus,.is-black.is-focused.textarea,.is-black.is-focused.input,.is-black.textarea:active,.is-black.input:active,.is-black.is-active.textarea,.is-black.is-active.input{box-shadow:var(--input-focus-box-shadow-size) var(--focus-box-shadow-color)}.is-light.textarea,.is-light.input{--focus-box-shadow-color: hsla(var(--light-h), var(--light-s), var(--light-l), .25);border-color:var(--light)}.is-light.textarea:focus,.is-light.input:focus,.is-light.is-focused.textarea,.is-light.is-focused.input,.is-light.textarea:active,.is-light.input:active,.is-light.is-active.textarea,.is-light.is-active.input{box-shadow:var(--input-focus-box-shadow-size) var(--focus-box-shadow-color)}.is-dark.textarea,.is-dark.input{--focus-box-shadow-color: hsla(var(--dark-h), var(--dark-s), var(--dark-l), .25);border-color:var(--dark)}.is-dark.textarea:focus,.is-dark.input:focus,.is-dark.is-focused.textarea,.is-dark.is-focused.input,.is-dark.textarea:active,.is-dark.input:active,.is-dark.is-active.textarea,.is-dark.is-active.input{box-shadow:var(--input-focus-box-shadow-size) var(--focus-box-shadow-color)}.is-primary.textarea,.is-primary.input{--focus-box-shadow-color: hsla(var(--primary-h), var(--primary-s), var(--primary-l), .25);border-color:var(--primary)}.is-primary.textarea:focus,.is-primary.input:focus,.is-primary.is-focused.textarea,.is-primary.is-focused.input,.is-primary.textarea:active,.is-primary.input:active,.is-primary.is-active.textarea,.is-primary.is-active.input{box-shadow:var(--input-focus-box-shadow-size) var(--focus-box-shadow-color)}.is-secondary.textarea,.is-secondary.input{--focus-box-shadow-color: hsla(var(--secondary-h), var(--secondary-s), var(--secondary-l), .25);border-color:var(--secondary)}.is-secondary.textarea:focus,.is-secondary.input:focus,.is-secondary.is-focused.textarea,.is-secondary.is-focused.input,.is-secondary.textarea:active,.is-secondary.input:active,.is-secondary.is-active.textarea,.is-secondary.is-active.input{box-shadow:var(--input-focus-box-shadow-size) var(--focus-box-shadow-color)}.is-link.textarea,.is-link.input{--focus-box-shadow-color: hsla(var(--link-h), var(--link-s), var(--link-l), .25);border-color:var(--link)}.is-link.textarea:focus,.is-link.input:focus,.is-link.is-focused.textarea,.is-link.is-focused.input,.is-link.textarea:active,.is-link.input:active,.is-link.is-active.textarea,.is-link.is-active.input{box-shadow:var(--input-focus-box-shadow-size) var(--focus-box-shadow-color)}.is-info.textarea,.is-info.input{--focus-box-shadow-color: hsla(var(--info-h), var(--info-s), var(--info-l), .25);border-color:var(--info)}.is-info.textarea:focus,.is-info.input:focus,.is-info.is-focused.textarea,.is-info.is-focused.input,.is-info.textarea:active,.is-info.input:active,.is-info.is-active.textarea,.is-info.is-active.input{box-shadow:var(--input-focus-box-shadow-size) var(--focus-box-shadow-color)}.is-success.textarea,.is-success.input{--focus-box-shadow-color: hsla(var(--success-h), var(--success-s), var(--success-l), .25);border-color:var(--success)}.is-success.textarea:focus,.is-success.input:focus,.is-success.is-focused.textarea,.is-success.is-focused.input,.is-success.textarea:active,.is-success.input:active,.is-success.is-active.textarea,.is-success.is-active.input{box-shadow:var(--input-focus-box-shadow-size) var(--focus-box-shadow-color)}.is-warning.textarea,.is-warning.input{--focus-box-shadow-color: hsla(var(--warning-h), var(--warning-s), var(--warning-l), .25);border-color:var(--warning)}.is-warning.textarea:focus,.is-warning.input:focus,.is-warning.is-focused.textarea,.is-warning.is-focused.input,.is-warning.textarea:active,.is-warning.input:active,.is-warning.is-active.textarea,.is-warning.is-active.input{box-shadow:var(--input-focus-box-shadow-size) var(--focus-box-shadow-color)}.is-danger.textarea,.is-danger.input{--focus-box-shadow-color: hsla(var(--danger-h), var(--danger-s), var(--danger-l), .25);border-color:var(--danger)}.is-danger.textarea:focus,.is-danger.input:focus,.is-danger.is-focused.textarea,.is-danger.is-focused.input,.is-danger.textarea:active,.is-danger.input:active,.is-danger.is-active.textarea,.is-danger.is-active.input{box-shadow:var(--input-focus-box-shadow-size) var(--focus-box-shadow-color)}.is-small.textarea,.is-small.input{border-radius:var(--control-radius-small)}.is-small.textarea,.is-small.input{font-size:var(--size-small)}.is-medium.textarea,.is-medium.input{font-size:var(--size-medium)}.is-large.textarea,.is-large.input{font-size:var(--size-large)}.is-fullwidth.textarea,.is-fullwidth.input{display:block;width:100%}.is-inline.textarea,.is-inline.input{display:inline;width:auto}.input.is-rounded{border-radius:var(--radius-rounded);padding-left:calc(var(--control-padding-horizontal) + .375em);padding-right:calc(var(--control-padding-horizontal) + .375em)}.input.is-static{background-color:transparent;border-color:transparent;box-shadow:none;padding-left:0;padding-right:0}:root{--textarea-padding: var(--control-padding-horizontal);--textarea-max-height: 40em;--textarea-min-height: 8em}.textarea{display:block;max-width:100%;min-width:100%;padding:var(--textarea-padding);resize:vertical}.textarea:not([rows]){max-height:var(--textarea-max-height);min-height:var(--textarea-min-height)}.textarea[rows]{height:initial}.textarea.has-fixed-size{resize:none}.radio,.checkbox{cursor:pointer;display:inline-block;line-height:1.25;position:relative}.radio input,.checkbox input{cursor:pointer}.radio:hover,.checkbox:hover{color:var(--input-hover-color)}[disabled].radio,[disabled].checkbox,fieldset[disabled] .radio,fieldset[disabled] .checkbox,.radio input[disabled],.checkbox input[disabled],.is-disabled.radio,.is-disabled.checkbox{color:var(--input-disabled-color);cursor:not-allowed}.is-small.radio,.is-small.checkbox{font-size:var(--size-small)}.is-medium.radio,.is-medium.checkbox{font-size:var(--size-medium)}.is-large.radio,.is-large.checkbox{font-size:var(--size-large)}.radio+.radio{margin-left:.5em}:root{--select-arrow-color: var(--input-arrow-color);--select-disabled-border-color: var(--input-disabled-border-color);--select-hover-color: var(--input-hover-color);--select-disabled-color: var(--input-disabled-color);--select-disabled-opacity: .5;--select-focus-box-shadow-size: var(--input-focus-box-shadow-size)}.select{display:inline-block;max-width:100%;position:relative;vertical-align:top}.select:not(.is-multiple){height:var(--input-height)}.select:not(.is-multiple,.is-loading):after{border-color:var(--select-arrow-color);right:1.125em;z-index:4}.select.is-rounded select{border-radius:var(--radius-rounded);padding-left:1em}.select select{cursor:pointer;display:block;font-size:1em;max-width:100%;outline:none}.select select::-ms-expand{display:none}.select select[disabled]:hover,fieldset[disabled] .select select:hover{border-color:var(--select-disabled-border-color)}.select select:not([multiple]){padding-right:2.5em}.select select[multiple]{height:auto;padding:0}.select select[multiple] option{padding:.5em 1em}.select:not(.is-multiple,.is-loading):hover:after{border-color:var(--select-hover-color)}.select.is-white:not(:hover):after{border-color:var(--white)}.select.is-white select{border-color:var(--white)}.select.is-white select:hover,.select.is-white select.is-hovered{border-color:hsla(var(--white-h),var(--white-s),calc(var(--white-l) + -5%),var(--white-a))}.select.is-white select:focus,.select.is-white select.is-focused,.select.is-white select:active,.select.is-white select.is-active{box-shadow:var(--select-focus-box-shadow-size) hsla(var(--white-h),var(--white-s),var(--white-l),.25)}.select.is-black:not(:hover):after{border-color:var(--black)}.select.is-black select{border-color:var(--black)}.select.is-black select:hover,.select.is-black select.is-hovered{border-color:hsla(var(--black-h),var(--black-s),calc(var(--black-l) + -5%),var(--black-a))}.select.is-black select:focus,.select.is-black select.is-focused,.select.is-black select:active,.select.is-black select.is-active{box-shadow:var(--select-focus-box-shadow-size) hsla(var(--black-h),var(--black-s),var(--black-l),.25)}.select.is-light:not(:hover):after{border-color:var(--light)}.select.is-light select{border-color:var(--light)}.select.is-light select:hover,.select.is-light select.is-hovered{border-color:hsla(var(--light-h),var(--light-s),calc(var(--light-l) + -5%),var(--light-a))}.select.is-light select:focus,.select.is-light select.is-focused,.select.is-light select:active,.select.is-light select.is-active{box-shadow:var(--select-focus-box-shadow-size) hsla(var(--light-h),var(--light-s),var(--light-l),.25)}.select.is-dark:not(:hover):after{border-color:var(--dark)}.select.is-dark select{border-color:var(--dark)}.select.is-dark select:hover,.select.is-dark select.is-hovered{border-color:hsla(var(--dark-h),var(--dark-s),calc(var(--dark-l) + -5%),var(--dark-a))}.select.is-dark select:focus,.select.is-dark select.is-focused,.select.is-dark select:active,.select.is-dark select.is-active{box-shadow:var(--select-focus-box-shadow-size) hsla(var(--dark-h),var(--dark-s),var(--dark-l),.25)}.select.is-primary:not(:hover):after{border-color:var(--primary)}.select.is-primary select{border-color:var(--primary)}.select.is-primary select:hover,.select.is-primary select.is-hovered{border-color:hsla(var(--primary-h),var(--primary-s),calc(var(--primary-l) + -5%),var(--primary-a))}.select.is-primary select:focus,.select.is-primary select.is-focused,.select.is-primary select:active,.select.is-primary select.is-active{box-shadow:var(--select-focus-box-shadow-size) hsla(var(--primary-h),var(--primary-s),var(--primary-l),.25)}.select.is-secondary:not(:hover):after{border-color:var(--secondary)}.select.is-secondary select{border-color:var(--secondary)}.select.is-secondary select:hover,.select.is-secondary select.is-hovered{border-color:hsla(var(--secondary-h),var(--secondary-s),calc(var(--secondary-l) + -5%),var(--secondary-a))}.select.is-secondary select:focus,.select.is-secondary select.is-focused,.select.is-secondary select:active,.select.is-secondary select.is-active{box-shadow:var(--select-focus-box-shadow-size) hsla(var(--secondary-h),var(--secondary-s),var(--secondary-l),.25)}.select.is-link:not(:hover):after{border-color:var(--link)}.select.is-link select{border-color:var(--link)}.select.is-link select:hover,.select.is-link select.is-hovered{border-color:hsla(var(--link-h),var(--link-s),calc(var(--link-l) + -5%),var(--link-a))}.select.is-link select:focus,.select.is-link select.is-focused,.select.is-link select:active,.select.is-link select.is-active{box-shadow:var(--select-focus-box-shadow-size) hsla(var(--link-h),var(--link-s),var(--link-l),.25)}.select.is-info:not(:hover):after{border-color:var(--info)}.select.is-info select{border-color:var(--info)}.select.is-info select:hover,.select.is-info select.is-hovered{border-color:hsla(var(--info-h),var(--info-s),calc(var(--info-l) + -5%),var(--info-a))}.select.is-info select:focus,.select.is-info select.is-focused,.select.is-info select:active,.select.is-info select.is-active{box-shadow:var(--select-focus-box-shadow-size) hsla(var(--info-h),var(--info-s),var(--info-l),.25)}.select.is-success:not(:hover):after{border-color:var(--success)}.select.is-success select{border-color:var(--success)}.select.is-success select:hover,.select.is-success select.is-hovered{border-color:hsla(var(--success-h),var(--success-s),calc(var(--success-l) + -5%),var(--success-a))}.select.is-success select:focus,.select.is-success select.is-focused,.select.is-success select:active,.select.is-success select.is-active{box-shadow:var(--select-focus-box-shadow-size) hsla(var(--success-h),var(--success-s),var(--success-l),.25)}.select.is-warning:not(:hover):after{border-color:var(--warning)}.select.is-warning select{border-color:var(--warning)}.select.is-warning select:hover,.select.is-warning select.is-hovered{border-color:hsla(var(--warning-h),var(--warning-s),calc(var(--warning-l) + -5%),var(--warning-a))}.select.is-warning select:focus,.select.is-warning select.is-focused,.select.is-warning select:active,.select.is-warning select.is-active{box-shadow:var(--select-focus-box-shadow-size) hsla(var(--warning-h),var(--warning-s),var(--warning-l),.25)}.select.is-danger:not(:hover):after{border-color:var(--danger)}.select.is-danger select{border-color:var(--danger)}.select.is-danger select:hover,.select.is-danger select.is-hovered{border-color:hsla(var(--danger-h),var(--danger-s),calc(var(--danger-l) + -5%),var(--danger-a))}.select.is-danger select:focus,.select.is-danger select.is-focused,.select.is-danger select:active,.select.is-danger select.is-active{box-shadow:var(--select-focus-box-shadow-size) hsla(var(--danger-h),var(--danger-s),var(--danger-l),.25)}.select.is-small{border-radius:var(--control-radius-small)}.select.is-small{font-size:var(--size-small)}.select.is-medium{font-size:var(--size-medium)}.select.is-large{font-size:var(--size-large)}.select.is-disabled:after{border-color:var(--select-disabled-color);opacity:var(--select-disabled-opacity)}.select.is-fullwidth,.select.is-fullwidth select{width:100%}.select.is-loading:after{margin-top:0;position:absolute;right:.625em;top:.625em;transform:none}.select.is-loading.is-small:after{font-size:var(--size-small)}.select.is-loading.is-medium:after{font-size:var(--size-medium)}.select.is-loading.is-large:after{font-size:var(--size-large)}:root{--file-border-color: var(--border);--file-radius: var(--radius);--file-cta-background-color: var(--scheme-main-ter);--file-cta-color: var(--text-light);--file-cta-hover-color: var(--text);--file-cta-hover-background-color: var(--grey-lightest);--file-cta-active-color: var(--text-strong);--file-cta-active-background-color: var(--grey-lighter);--file-name-border-color: var(--border);--file-name-border-style: solid;--file-name-border-width: 1px 1px 1px 0;--file-name-max-width: 16em;--file-icon-font-size: 14px}.file{align-items:stretch;display:flex;justify-content:flex-start;position:relative}.file.is-white .file-cta{background-color:var(--white);border-color:transparent;color:var(--white-invert)}.file.is-white:hover .file-cta,.file.is-white.is-hovered .file-cta{background-color:hsla(var(--white-h),var(--white-s),calc(var(--white-l) + -2.5%),var(--white-a));border-color:transparent;color:var(--white-invert)}.file.is-white:focus .file-cta,.file.is-white.is-focused .file-cta{border-color:transparent;box-shadow:0 0 .5em hsla(var(--white-h),var(--white-s),var(--white-l),.25);color:var(--white-invert)}.file.is-white:active .file-cta,.file.is-white.is-active .file-cta{background-color:hsla(var(--white-h),var(--white-s),calc(var(--white-l) + -5%),var(--white-a));border-color:transparent;color:var(--white-invert)}.file.is-black .file-cta{background-color:var(--black);border-color:transparent;color:var(--black-invert)}.file.is-black:hover .file-cta,.file.is-black.is-hovered .file-cta{background-color:hsla(var(--black-h),var(--black-s),calc(var(--black-l) + -2.5%),var(--black-a));border-color:transparent;color:var(--black-invert)}.file.is-black:focus .file-cta,.file.is-black.is-focused .file-cta{border-color:transparent;box-shadow:0 0 .5em hsla(var(--black-h),var(--black-s),var(--black-l),.25);color:var(--black-invert)}.file.is-black:active .file-cta,.file.is-black.is-active .file-cta{background-color:hsla(var(--black-h),var(--black-s),calc(var(--black-l) + -5%),var(--black-a));border-color:transparent;color:var(--black-invert)}.file.is-light .file-cta{background-color:var(--light);border-color:transparent;color:var(--light-invert)}.file.is-light:hover .file-cta,.file.is-light.is-hovered .file-cta{background-color:hsla(var(--light-h),var(--light-s),calc(var(--light-l) + -2.5%),var(--light-a));border-color:transparent;color:var(--light-invert)}.file.is-light:focus .file-cta,.file.is-light.is-focused .file-cta{border-color:transparent;box-shadow:0 0 .5em hsla(var(--light-h),var(--light-s),var(--light-l),.25);color:var(--light-invert)}.file.is-light:active .file-cta,.file.is-light.is-active .file-cta{background-color:hsla(var(--light-h),var(--light-s),calc(var(--light-l) + -5%),var(--light-a));border-color:transparent;color:var(--light-invert)}.file.is-dark .file-cta{background-color:var(--dark);border-color:transparent;color:var(--dark-invert)}.file.is-dark:hover .file-cta,.file.is-dark.is-hovered .file-cta{background-color:hsla(var(--dark-h),var(--dark-s),calc(var(--dark-l) + -2.5%),var(--dark-a));border-color:transparent;color:var(--dark-invert)}.file.is-dark:focus .file-cta,.file.is-dark.is-focused .file-cta{border-color:transparent;box-shadow:0 0 .5em hsla(var(--dark-h),var(--dark-s),var(--dark-l),.25);color:var(--dark-invert)}.file.is-dark:active .file-cta,.file.is-dark.is-active .file-cta{background-color:hsla(var(--dark-h),var(--dark-s),calc(var(--dark-l) + -5%),var(--dark-a));border-color:transparent;color:var(--dark-invert)}.file.is-primary .file-cta{background-color:var(--primary);border-color:transparent;color:var(--primary-invert)}.file.is-primary:hover .file-cta,.file.is-primary.is-hovered .file-cta{background-color:hsla(var(--primary-h),var(--primary-s),calc(var(--primary-l) + -2.5%),var(--primary-a));border-color:transparent;color:var(--primary-invert)}.file.is-primary:focus .file-cta,.file.is-primary.is-focused .file-cta{border-color:transparent;box-shadow:0 0 .5em hsla(var(--primary-h),var(--primary-s),var(--primary-l),.25);color:var(--primary-invert)}.file.is-primary:active .file-cta,.file.is-primary.is-active .file-cta{background-color:hsla(var(--primary-h),var(--primary-s),calc(var(--primary-l) + -5%),var(--primary-a));border-color:transparent;color:var(--primary-invert)}.file.is-secondary .file-cta{background-color:var(--secondary);border-color:transparent;color:var(--secondary-invert)}.file.is-secondary:hover .file-cta,.file.is-secondary.is-hovered .file-cta{background-color:hsla(var(--secondary-h),var(--secondary-s),calc(var(--secondary-l) + -2.5%),var(--secondary-a));border-color:transparent;color:var(--secondary-invert)}.file.is-secondary:focus .file-cta,.file.is-secondary.is-focused .file-cta{border-color:transparent;box-shadow:0 0 .5em hsla(var(--secondary-h),var(--secondary-s),var(--secondary-l),.25);color:var(--secondary-invert)}.file.is-secondary:active .file-cta,.file.is-secondary.is-active .file-cta{background-color:hsla(var(--secondary-h),var(--secondary-s),calc(var(--secondary-l) + -5%),var(--secondary-a));border-color:transparent;color:var(--secondary-invert)}.file.is-link .file-cta{background-color:var(--link);border-color:transparent;color:var(--link-invert)}.file.is-link:hover .file-cta,.file.is-link.is-hovered .file-cta{background-color:hsla(var(--link-h),var(--link-s),calc(var(--link-l) + -2.5%),var(--link-a));border-color:transparent;color:var(--link-invert)}.file.is-link:focus .file-cta,.file.is-link.is-focused .file-cta{border-color:transparent;box-shadow:0 0 .5em hsla(var(--link-h),var(--link-s),var(--link-l),.25);color:var(--link-invert)}.file.is-link:active .file-cta,.file.is-link.is-active .file-cta{background-color:hsla(var(--link-h),var(--link-s),calc(var(--link-l) + -5%),var(--link-a));border-color:transparent;color:var(--link-invert)}.file.is-info .file-cta{background-color:var(--info);border-color:transparent;color:var(--info-invert)}.file.is-info:hover .file-cta,.file.is-info.is-hovered .file-cta{background-color:hsla(var(--info-h),var(--info-s),calc(var(--info-l) + -2.5%),var(--info-a));border-color:transparent;color:var(--info-invert)}.file.is-info:focus .file-cta,.file.is-info.is-focused .file-cta{border-color:transparent;box-shadow:0 0 .5em hsla(var(--info-h),var(--info-s),var(--info-l),.25);color:var(--info-invert)}.file.is-info:active .file-cta,.file.is-info.is-active .file-cta{background-color:hsla(var(--info-h),var(--info-s),calc(var(--info-l) + -5%),var(--info-a));border-color:transparent;color:var(--info-invert)}.file.is-success .file-cta{background-color:var(--success);border-color:transparent;color:var(--success-invert)}.file.is-success:hover .file-cta,.file.is-success.is-hovered .file-cta{background-color:hsla(var(--success-h),var(--success-s),calc(var(--success-l) + -2.5%),var(--success-a));border-color:transparent;color:var(--success-invert)}.file.is-success:focus .file-cta,.file.is-success.is-focused .file-cta{border-color:transparent;box-shadow:0 0 .5em hsla(var(--success-h),var(--success-s),var(--success-l),.25);color:var(--success-invert)}.file.is-success:active .file-cta,.file.is-success.is-active .file-cta{background-color:hsla(var(--success-h),var(--success-s),calc(var(--success-l) + -5%),var(--success-a));border-color:transparent;color:var(--success-invert)}.file.is-warning .file-cta{background-color:var(--warning);border-color:transparent;color:var(--warning-invert)}.file.is-warning:hover .file-cta,.file.is-warning.is-hovered .file-cta{background-color:hsla(var(--warning-h),var(--warning-s),calc(var(--warning-l) + -2.5%),var(--warning-a));border-color:transparent;color:var(--warning-invert)}.file.is-warning:focus .file-cta,.file.is-warning.is-focused .file-cta{border-color:transparent;box-shadow:0 0 .5em hsla(var(--warning-h),var(--warning-s),var(--warning-l),.25);color:var(--warning-invert)}.file.is-warning:active .file-cta,.file.is-warning.is-active .file-cta{background-color:hsla(var(--warning-h),var(--warning-s),calc(var(--warning-l) + -5%),var(--warning-a));border-color:transparent;color:var(--warning-invert)}.file.is-danger .file-cta{background-color:var(--danger);border-color:transparent;color:var(--danger-invert)}.file.is-danger:hover .file-cta,.file.is-danger.is-hovered .file-cta{background-color:hsla(var(--danger-h),var(--danger-s),calc(var(--danger-l) + -2.5%),var(--danger-a));border-color:transparent;color:var(--danger-invert)}.file.is-danger:focus .file-cta,.file.is-danger.is-focused .file-cta{border-color:transparent;box-shadow:0 0 .5em hsla(var(--danger-h),var(--danger-s),var(--danger-l),.25);color:var(--danger-invert)}.file.is-danger:active .file-cta,.file.is-danger.is-active .file-cta{background-color:hsla(var(--danger-h),var(--danger-s),calc(var(--danger-l) + -5%),var(--danger-a));border-color:transparent;color:var(--danger-invert)}.file.is-small{font-size:var(--size-small)}.file.is-normal{font-size:var(--size-normal)}.file.is-medium{font-size:var(--size-medium)}.file.is-large{font-size:var(--size-large)}.file.is-medium{--file-icon-font-size: 21px}.file.is-large{--file-icon-font-size: 28px}.file.has-name .file-cta{border-bottom-right-radius:0;border-top-right-radius:0}.file.has-name .file-name{border-bottom-left-radius:0;border-top-left-radius:0}.file.has-name.is-empty .file-cta{border-radius:var(--file-radius)}.file.has-name.is-empty .file-name{display:none}.file.is-boxed .file-label{flex-direction:column}.file.is-boxed .file-cta{flex-direction:column;height:auto;padding:1em 3em}.file.is-boxed .file-name{border-width:0 1px 1px}.file.is-boxed .file-icon{--file-icon-font-size: 21px;height:1.5em;width:1.5em}.file.is-boxed.is-small{--file-icon-font-size: 14px}.file.is-boxed.is-medium{--file-icon-font-size: 28px}.file.is-boxed.is-large{--file-icon-font-size: 35px}.file.is-boxed.has-name .file-cta{border-radius:var(--file-radius) var(--file-radius) 0 0}.file.is-boxed.has-name .file-name{border-radius:0 0 var(--file-radius) var(--file-radius);border-width:0 1px 1px}.file.is-centered{justify-content:center}.file.is-fullwidth .file-label{width:100%}.file.is-fullwidth .file-name{flex-grow:1;max-width:none}.file.is-right{justify-content:flex-end}.file.is-right .file-cta{border-radius:0 var(--file-radius) var(--file-radius) 0}.file.is-right .file-name{border-radius:var(--file-radius) 0 0 var(--file-radius);border-width:1px 0 1px 1px;order:-1}.file-label{align-items:stretch;display:flex;cursor:pointer;justify-content:flex-start;overflow:hidden;position:relative}.file-label:hover .file-cta{background-color:var(--file-cta-hover-background-color);color:var(--file-cta-hover-color)}.file-label:hover .file-name{border-color:var(--border-hover)}.file-label:active .file-cta{background-color:var(--file-cta-active-background-color);color:var(--file-cta-active-color)}.file-label:active .file-name{border-color:var(--border-light)}.file-input{height:100%;left:0;opacity:0;outline:none;position:absolute;top:0;width:100%}.file-cta,.file-name{border-color:var(--file-border-color);border-radius:var(--file-radius);font-size:1em;padding-left:1em;padding-right:1em;white-space:nowrap}.file-cta{background-color:var(--file-cta-background-color);color:var(--file-cta-color)}.file-name{border-color:var(--file-name-border-color);border-style:var(--file-name-border-style);border-width:var(--file-name-border-width);display:block;max-width:var(--file-name-max-width);overflow:hidden;text-align:inherit;text-overflow:ellipsis}.file-icon{align-items:center;display:flex;height:1em;justify-content:center;margin-right:.5em;width:1em}.file-icon .fa{font-size:var(--file-icon-font-size)}:root{--label-size: var(--size-normal);--label-color: var(--text-strong);--label-weight: var(--weight-bold)}.label{color:var(--label-color);display:block;font-size:var(--label-size);font-weight:var(--label-weight)}.label:not(:last-child){margin-bottom:.5em}.label.is-small{--label-size: var(--size-small)}.label.is-medium{--label-size: var(--size-medium)}.label.is-large{--label-size: var(--size-large)}:root{--help-font-size: var(--size-small)}.help{display:block;font-size:var(--help-font-size);margin-top:.25rem}.help.is-white{color:var(--white)}.help.is-black{color:var(--black)}.help.is-light{color:var(--light)}.help.is-dark{color:var(--dark)}.help.is-primary{color:var(--primary)}.help.is-secondary{color:var(--secondary)}.help.is-link{color:var(--link)}.help.is-info{color:var(--info)}.help.is-success{color:var(--success)}.help.is-warning{color:var(--warning)}.help.is-danger{color:var(--danger)}.field:not(:last-child){margin-bottom:.75rem}.field.has-addons{display:flex;justify-content:flex-start}.field.has-addons .control:not(:last-child){margin-right:-1px}.field.has-addons .control:not(:first-child,:last-child) .button,.field.has-addons .control:not(:first-child,:last-child) .input,.field.has-addons .control:not(:first-child,:last-child) .select select{border-radius:0}.field.has-addons .control:first-child:not(:only-child) .button,.field.has-addons .control:first-child:not(:only-child) .input,.field.has-addons .control:first-child:not(:only-child) .select select{border-bottom-right-radius:0;border-top-right-radius:0}.field.has-addons .control:last-child:not(:only-child) .button,.field.has-addons .control:last-child:not(:only-child) .input,.field.has-addons .control:last-child:not(:only-child) .select select{border-bottom-left-radius:0;border-top-left-radius:0}.field.has-addons .control .button:not([disabled]):hover,.field.has-addons .control .button:not([disabled]).is-hovered,.field.has-addons .control .input:not([disabled]):hover,.field.has-addons .control .input:not([disabled]).is-hovered,.field.has-addons .control .select select:not([disabled]):hover,.field.has-addons .control .select select:not([disabled]).is-hovered{z-index:2}.field.has-addons .control .button:not([disabled]):focus,.field.has-addons .control .button:not([disabled]).is-focused,.field.has-addons .control .button:not([disabled]):active,.field.has-addons .control .button:not([disabled]).is-active,.field.has-addons .control .input:not([disabled]):focus,.field.has-addons .control .input:not([disabled]).is-focused,.field.has-addons .control .input:not([disabled]):active,.field.has-addons .control .input:not([disabled]).is-active,.field.has-addons .control .select select:not([disabled]):focus,.field.has-addons .control .select select:not([disabled]).is-focused,.field.has-addons .control .select select:not([disabled]):active,.field.has-addons .control .select select:not([disabled]).is-active{z-index:3}.field.has-addons .control .button:not([disabled]):focus:hover,.field.has-addons .control .button:not([disabled]).is-focused:hover,.field.has-addons .control .button:not([disabled]):active:hover,.field.has-addons .control .button:not([disabled]).is-active:hover,.field.has-addons .control .input:not([disabled]):focus:hover,.field.has-addons .control .input:not([disabled]).is-focused:hover,.field.has-addons .control .input:not([disabled]):active:hover,.field.has-addons .control .input:not([disabled]).is-active:hover,.field.has-addons .control .select select:not([disabled]):focus:hover,.field.has-addons .control .select select:not([disabled]).is-focused:hover,.field.has-addons .control .select select:not([disabled]):active:hover,.field.has-addons .control .select select:not([disabled]).is-active:hover{z-index:4}.field.has-addons .control.is-expanded{flex-grow:1;flex-shrink:1}.field.has-addons.has-addons-centered{justify-content:center}.field.has-addons.has-addons-right{justify-content:flex-end}.field.has-addons.has-addons-fullwidth .control{flex-grow:1;flex-shrink:0}.field.is-grouped{display:flex;justify-content:flex-start}.field.is-grouped>.control{flex-shrink:0}.field.is-grouped>.control:not(:last-child){margin-bottom:0;margin-right:.75rem}.field.is-grouped>.control.is-expanded{flex-grow:1;flex-shrink:1}.field.is-grouped.is-grouped-centered{justify-content:center}.field.is-grouped.is-grouped-right{justify-content:flex-end}.field.is-grouped.is-grouped-multiline{flex-wrap:wrap}.field.is-grouped.is-grouped-multiline>.control:last-child,.field.is-grouped.is-grouped-multiline>.control:not(:last-child){margin-bottom:.75rem}.field.is-grouped.is-grouped-multiline:last-child{margin-bottom:-.75rem}.field.is-grouped.is-grouped-multiline:not(:last-child){margin-bottom:0}@media screen and (min-width: 769px),print{.field.is-horizontal{display:flex}}.field-label .label{font-size:inherit}@media screen and (max-width: 768px){.field-label{margin-bottom:.5rem}}@media screen and (min-width: 769px),print{.field-label{flex-basis:0;flex-grow:1;flex-shrink:0;margin-right:1.5rem;text-align:right}.field-label.is-small{font-size:var(--size-small)}.field-label.is-medium{font-size:var(--size-medium)}.field-label.is-large{font-size:var(--size-large)}.field-label.is-small,.field-label.is-normal,.field-label.is-medium,.field-label.is-large{padding-top:.375em}}.field-body .field .field{margin-bottom:0}@media screen and (min-width: 769px),print{.field-body{display:flex;flex-basis:0;flex-grow:5;flex-shrink:1}.field-body .field{margin-bottom:0}.field-body>.field{flex-shrink:1}.field-body>.field:not(.is-narrow){flex-grow:1}.field-body>.field:not(:last-child){margin-right:.75rem}}:root{--control-radius: var(--radius);--control-radius-small: var(--radius-small);--control-border-width: 1px;--control-height: 2.5em;--control-line-height: 1.5;--control-padding-vertical: calc(.5em - var(--control-border-width));--control-padding-horizontal: calc(.75em - var(--control-border-width));--control-font-size: var(--size-normal)}.control{box-sizing:border-box;clear:both;font-size:var(--control-font-size);position:relative;text-align:inherit}.control.has-icons-left .input:focus~.icon,.control.has-icons-left .select:focus~.icon,.control.has-icons-right .input:focus~.icon,.control.has-icons-right .select:focus~.icon{color:var(--input-icon-active-color)}.control.has-icons-left .input.is-small~.icon,.control.has-icons-left .select.is-small~.icon,.control.has-icons-right .input.is-small~.icon,.control.has-icons-right .select.is-small~.icon{font-size:var(--size-small)}.control.has-icons-left .input.is-medium~.icon,.control.has-icons-left .select.is-medium~.icon,.control.has-icons-right .input.is-medium~.icon,.control.has-icons-right .select.is-medium~.icon{font-size:var(--size-medium)}.control.has-icons-left .input.is-large~.icon,.control.has-icons-left .select.is-large~.icon,.control.has-icons-right .input.is-large~.icon,.control.has-icons-right .select.is-large~.icon{font-size:var(--size-large)}.control.has-icons-left .icon,.control.has-icons-right .icon{color:var(--input-icon-color);height:var(--input-height);pointer-events:none;position:absolute;top:0;width:var(--input-height);z-index:4}.control.has-icons-left .input,.control.has-icons-left .select select{padding-left:var(--input-height)}.control.has-icons-left .icon.is-left{left:0}.control.has-icons-right .input,.control.has-icons-right .select select{padding-right:var(--input-height)}.control.has-icons-right .icon.is-right{right:0}.control.is-loading.has-icons-right .icon.is-right{visibility:hidden}.control.is-loading:after{position:absolute!important;right:var(--control-padding-horizontal);top:calc(50% - .5em);z-index:4}.control.is-loading.is-small:after{font-size:var(--size-small)}.control.is-loading.is-medium:after{font-size:var(--size-medium)}.control.is-loading.is-large:after{font-size:var(--size-large)}:root{--breadcrumb-font-size: var(--size-normal);--breadcrumb-item-color: var(--link);--breadcrumb-item-hover-color: var(--link-hover);--breadcrumb-item-active-color: var(--text-strong);--breadcrumb-item-separator-color: var(--border-hover);--breadcrumb-item-padding-vertical: 0;--breadcrumb-item-padding-horizontal: .75em;--breadcrumb-li-content: /}.breadcrumb{font-size:var(--breadcrumb-font-size);white-space:nowrap;--breadcrumb-li-content: "/"}.breadcrumb a{align-items:center;color:var(--breadcrumb-item-color);display:flex;justify-content:center;padding:var(--breadcrumb-item-padding-vertical) var(--breadcrumb-item-padding-horizontal)}.breadcrumb a:hover{--breadcrumb-item-color: var(--breadcrumb-item-hover-color)}.breadcrumb li{align-items:center;display:flex}.breadcrumb li:first-child a{padding-left:0}.breadcrumb li.is-active a{color:var(--breadcrumb-item-active-color);cursor:default;pointer-events:none}.breadcrumb li+li:before{color:var(--breadcrumb-item-separator-color);content:var(--breadcrumb-li-content)}.breadcrumb ul,.breadcrumb ol{align-items:flex-start;display:flex;flex-wrap:wrap;justify-content:flex-start}.breadcrumb .icon:first-child{margin-right:.5em}.breadcrumb .icon:last-child{margin-left:.5em}.breadcrumb.is-centered ol,.breadcrumb.is-centered ul{justify-content:center}.breadcrumb.is-right ol,.breadcrumb.is-right ul{justify-content:flex-end}.breadcrumb.is-small{--breadcrumb-font-size: var(--size-small)}.breadcrumb.is-medium{--breadcrumb-font-size: var(--size-medium)}.breadcrumb.is-large{--breadcrumb-font-size: var(--size-large)}.breadcrumb.has-arrow-separator{--breadcrumb-li-content: "→"}.breadcrumb.has-bullet-separator{--breadcrumb-li-content: "•"}.breadcrumb.has-dot-separator{--breadcrumb-li-content: "·"}.breadcrumb.has-succeeds-separator{--breadcrumb-li-content: "≻"}:root{--card-background-color: var(--scheme-main);--card-shadow: var(--shadow);--card-color: var(--text);--card-radius: .25rem;--card-header-background-color: transparent;--card-header-shadow: 0 .125em .25em rgba(var(--scheme-invert-rgb), .1);--card-header-color: var(--text-strong);--card-header-weight: var(--weight-bold);--card-header-padding: .75rem 1rem;--card-content-background-color: transparent;--card-content-padding: 1.5rem;--card-footer-background-color: transparent;--card-footer-border-top: 1px solid var(--border-light);--card-footer-padding: .75rem;--card-media-margin: var(--block-spacing)}.card{background-color:var(--card-background-color);border-radius:var(--card-radius);box-shadow:var(--card-shadow);color:var(--card-color);max-width:100%;position:relative}.card-footer:first-child,.card-content:first-child,.card-header:first-child{border-top-left-radius:var(--card-radius);border-top-right-radius:var(--card-radius)}.card-footer:last-child,.card-content:last-child,.card-header:last-child{border-bottom-left-radius:var(--card-radius);border-bottom-right-radius:var(--card-radius)}.card-header{background-color:var(--card-header-background-color);align-items:stretch;box-shadow:var(--card-header-shadow);display:flex}.card-header-title{align-items:center;color:var(--card-header-color);display:flex;flex-grow:1;font-weight:var(--card-header-weight);padding:var(--card-header-padding)}.card-header-title.is-centered{justify-content:center}.card-header-icon{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;color:currentColor;font-family:inherit;font-size:1em;margin:0;padding:0;align-items:center;cursor:pointer;display:flex;justify-content:center;padding:var(--card-header-padding)}.card-image{display:block;position:relative}.card-image:first-child img{border-top-left-radius:var(--card-radius);border-top-right-radius:var(--card-radius)}.card-image:last-child img{border-bottom-left-radius:var(--card-radius);border-bottom-right-radius:var(--card-radius)}.card-content{background-color:var(--card-content-background-color);padding:var(--card-content-padding)}.card-footer{background-color:var(--card-footer-background-color);border-top:var(--card-footer-border-top);align-items:stretch;display:flex}.card-footer-item{align-items:center;display:flex;flex-basis:0;flex-grow:1;flex-shrink:0;justify-content:center;padding:var(--card-footer-padding)}.card-footer-item:not(:last-child){border-right:var(--card-footer-border-top)}.card .media:not(:last-child){margin-bottom:var(--card-media-margin)}:root{--dropdown-content-offset: 4px;--dropdown-menu-min-width: 12rem;--dropdown-content-z: 20;--dropdown-content-background-color: var(--scheme-main);--dropdown-content-radius: var(--radius);--dropdown-content-shadow: var(--shadow);--dropdown-content-padding-bottom: .5rem;--dropdown-content-padding-top: .5rem;--dropdown-item-color: var(--text);--dropdown-item-padding: var(--item-padding);--dropdown-item-hover-background-color: var(--background);--dropdown-item-hover-color: var(--scheme-invert);--dropdown-item-active-background-color: var(--link);--dropdown-item-active-color: var(--link-invert);--dropdown-divider-background-color: var(--border-light)}.dropdown{display:inline-flex;position:relative;vertical-align:top}.dropdown.is-active .dropdown-menu,.dropdown.is-hoverable:hover .dropdown-menu{display:block}.dropdown.is-right .dropdown-menu{left:auto;right:0}.dropdown.is-up .dropdown-menu{bottom:100%;padding-bottom:var(--dropdown-content-offset);padding-top:initial;top:auto}.dropdown-menu{display:none;left:0;min-width:var(--dropdown-menu-min-width);padding-top:var(--dropdown-content-offset);position:absolute;top:100%;z-index:var(--dropdown-content-z)}.dropdown-content{background-color:var(--dropdown-content-background-color);border-radius:var(--dropdown-content-radius);box-shadow:var(--dropdown-content-shadow);padding-bottom:var(--dropdown-content-padding-bottom);padding-top:var(--dropdown-content-padding-top)}.dropdown-item{color:var(--dropdown-item-color);display:block;font-size:.875rem;line-height:1.5;padding:var(--dropdown-item-padding);position:relative}a.dropdown-item,button.dropdown-item{padding-right:3rem;text-align:inherit;white-space:nowrap;width:100%}a.dropdown-item:hover,button.dropdown-item:hover{background-color:var(--dropdown-item-hover-background-color);color:var(--dropdown-item-hover-color)}a.dropdown-item.is-active,button.dropdown-item.is-active{background-color:var(--dropdown-item-active-background-color);color:var(--dropdown-item-active-color)}.dropdown-divider{background-color:var(--dropdown-divider-background-color);border:none;display:block;height:1px;margin:.5rem 0}:root{--level-item-spacing: calc(var(--block-spacing) * .5)}.level{align-items:center;justify-content:space-between}.level code{border-radius:var(--radius)}.level img{display:inline-block;vertical-align:top}.level.is-mobile,.level.is-mobile .level-left,.level.is-mobile .level-right{display:flex}.level.is-mobile .level-left+.level-right{margin-top:0}.level.is-mobile .level-item:not(:last-child){margin-bottom:0;margin-right:var(--level-item-spacing)}.level.is-mobile .level-item:not(.is-narrow){flex-grow:1}@media screen and (min-width: 769px),print{.level{display:flex}.level>.level-item:not(.is-narrow){flex-grow:1}}.level-item{align-items:center;display:flex;flex-basis:auto;flex-grow:0;flex-shrink:0;justify-content:center}.level-item .title,.level-item .subtitle{margin-bottom:0}@media screen and (max-width: 768px){.level-item:not(:last-child){margin-bottom:var(--level-item-spacing)}}.level-left,.level-right{flex-basis:auto;flex-grow:0;flex-shrink:0}.level-left .level-item.is-flexible,.level-right .level-item.is-flexible{flex-grow:1}@media screen and (min-width: 769px),print{.level-left .level-item:not(:last-child),.level-right .level-item:not(:last-child){margin-right:var(--level-item-spacing)}}.level-left{align-items:center;justify-content:flex-start}@media screen and (max-width: 768px){.level-left+.level-right{margin-top:1.5rem}}@media screen and (min-width: 769px),print{.level-left{display:flex}}.level-right{align-items:center;justify-content:flex-end}@media screen and (min-width: 769px),print{.level-right{display:flex}}:root{--media-border-color: rgba(var(--border-rgb), .5);--media-border-size: 1px;--media-spacing: 1rem;--media-spacing-large: 1.5rem;--media-content-spacing: .75rem;--media-level-1-spacing: .75rem;--media-level-1-content-spacing: .5rem;--media-level-2-spacing: .5rem}.media{align-items:flex-start;display:flex;text-align:inherit}.media .content:not(:last-child){margin-bottom:var(--media-content-spacing)}.media .media{border-top:var(--media-border-size) solid var(--media-border-color);display:flex;padding-top:var(--media-level-1-spacing)}.media .media .content:not(:last-child),.media .media .control:not(:last-child){margin-bottom:var(--media-level-1-content-spacing)}.media .media .media{padding-top:var(--media-level-2-spacing)}.media .media .media+.media{margin-top:var(--media-level-2-spacing)}.media+.media{border-top:var(--media-border-size) solid var(--media-border-color);margin-top:var(--media-spacing);padding-top:var(--media-spacing)}.media.is-large+.media{margin-top:var(--media-spacing-large);padding-top:var(--media-spacing-large)}.media-left,.media-right{flex-basis:auto;flex-grow:0;flex-shrink:0}.media-left{margin-right:var(--media-spacing)}.media-right{margin-left:var(--media-spacing)}.media-content{flex-basis:auto;flex-grow:1;flex-shrink:1;text-align:inherit}@media screen and (max-width: 768px){.media-content{overflow-x:auto}}:root{--menu-font-size: var(--size-normal);--menu-list-line-height: 1.25;--menu-item-radius: var(--radius-small);--menu-item-color: var(--text);--menu-list-link-padding: .5em .75em;--menu-item-hover-background-color: var(--background);--menu-item-hover-color: var(--text-strong);--menu-item-active-background-color: var(--link);--menu-item-active-color: var(--link-invert);--menu-list-border-left: 1px solid var(--border);--menu-nested-list-padding-left: .75em;--menu-nested-list-margin: .75em;--menu-label-color: var(--text-light);--menu-label-font-size: .75em;--menu-label-letter-spacing: .1em;--menu-label-spacing: 1em}.menu{font-size:var(--menu-font-size)}.menu.is-small{--menu-font-size: var(--size-small)}.menu.is-medium{--menu-font-size: var(--size-medium)}.menu.is-large{--menu-font-size: var(--size-large)}.menu-list{line-height:var(--menu-list-line-height)}.menu-list a{border-radius:var(--menu-item-radius);color:var(--menu-item-color);display:block;padding:var(--menu-list-link-padding)}.menu-list a:hover{background-color:var(--menu-item-hover-background-color);color:var(--menu-item-hover-color)}.menu-list a.is-active{background-color:var(--menu-item-active-background-color);color:var(--menu-item-active-color)}.menu-list li ul{border-left:var(--menu-list-border-left);margin:var(--menu-nested-list-margin);padding-left:var(--menu-nested-list-padding-left)}.menu-label{color:var(--menu-label-color);font-size:var(--menu-label-font-size);letter-spacing:var(--menu-label-letter-spacing);text-transform:uppercase}.menu-label:not(:first-child){margin-top:var(--menu-label-spacing)}.menu-label:not(:last-child){margin-bottom:var(--menu-label-spacing)}:root{--message-background-color: var(--background);--message-font-size: var(--size-normal);--message-radius: var(--radius);--message-header-background-color: var(--text);--message-header-color: var(--text-invert);--message-header-weight: var(--weight-bold);--message-header-padding: .75em 1em;--message-header-radius: var(--radius);--message-body-border-color: var(--border);--message-body-radius: var(--radius);--message-body-border-width: 0 0 0 4px;--message-body-color: var(--text);--message-body-padding: 1.25em 1.5em;--message-body-pre-background-color: var(--scheme-main);--message-header-body-border-width: 0;--message-body-pre-code-background-color: transparent}.message{background-color:var(--message-background-color);border-radius:var(--message-radius);font-size:var(--message-font-size)}.message strong{color:currentColor}.message a:not(.button,.tag,.dropdown-item){color:currentColor;text-decoration:underline}.message.is-small{--message-font-size: var(--size-small)}.message.is-medium{--message-font-size: var(--size-medium)}.message.is-large{--message-font-size: var(--size-large)}.message.is-white{--message-background-color: var(--white-light);--message-header-background-color: var(--white);--message-header-color: var(--white-invert);--message-body-border-color: var(--white);--message-body-color: var(--white-dark)}.message.is-black{--message-background-color: var(--black-light);--message-header-background-color: var(--black);--message-header-color: var(--black-invert);--message-body-border-color: var(--black);--message-body-color: var(--black-dark)}.message.is-light{--message-background-color: var(--light-light);--message-header-background-color: var(--light);--message-header-color: var(--light-invert);--message-body-border-color: var(--light);--message-body-color: var(--light-dark)}.message.is-dark{--message-background-color: var(--dark-light);--message-header-background-color: var(--dark);--message-header-color: var(--dark-invert);--message-body-border-color: var(--dark);--message-body-color: var(--dark-dark)}.message.is-primary{--message-background-color: var(--primary-light);--message-header-background-color: var(--primary);--message-header-color: var(--primary-invert);--message-body-border-color: var(--primary);--message-body-color: var(--primary-dark)}.message.is-secondary{--message-background-color: var(--secondary-light);--message-header-background-color: var(--secondary);--message-header-color: var(--secondary-invert);--message-body-border-color: var(--secondary);--message-body-color: var(--secondary-dark)}.message.is-link{--message-background-color: var(--link-light);--message-header-background-color: var(--link);--message-header-color: var(--link-invert);--message-body-border-color: var(--link);--message-body-color: var(--link-dark)}.message.is-info{--message-background-color: var(--info-light);--message-header-background-color: var(--info);--message-header-color: var(--info-invert);--message-body-border-color: var(--info);--message-body-color: var(--info-dark)}.message.is-success{--message-background-color: var(--success-light);--message-header-background-color: var(--success);--message-header-color: var(--success-invert);--message-body-border-color: var(--success);--message-body-color: var(--success-dark)}.message.is-warning{--message-background-color: var(--warning-light);--message-header-background-color: var(--warning);--message-header-color: var(--warning-invert);--message-body-border-color: var(--warning);--message-body-color: var(--warning-dark)}.message.is-danger{--message-background-color: var(--danger-light);--message-header-background-color: var(--danger);--message-header-color: var(--danger-invert);--message-body-border-color: var(--danger);--message-body-color: var(--danger-dark)}.message-header{align-items:center;background-color:var(--message-header-background-color);border-radius:var(--message-header-radius) var(--message-header-radius) 0 0;color:var(--message-header-color);display:flex;font-weight:var(--message-header-weight);justify-content:space-between;line-height:1.25;padding:var(--message-header-padding);position:relative}.message-header .delete{flex-grow:0;flex-shrink:0;margin-left:.75em}.message-header+.message-body{border-width:var(--message-header-body-border-width);border-top-left-radius:0;border-top-right-radius:0}.message-body{border-color:var(--message-body-border-color);border-radius:var(--message-body-radius);border-style:solid;border-width:var(--message-body-border-width);color:var(--message-body-color);padding:var(--message-body-padding)}.message-body code,.message-body pre{background-color:var(--message-body-pre-background-color)}.message-body pre code{background-color:var(--message-body-pre-code-background-color)}:root{--modal-z: 40;--modal-background-background-color: rgba(var(--scheme-invert-rgb), .86);--modal-content-width: 640px;--modal-content-margin-mobile: 20px;--modal-content-spacing-mobile: 160px;--modal-content-spacing-tablet: 40px;--modal-close-dimensions: 40px;--modal-close-right: 20px;--modal-close-top: 20px;--modal-card-spacing: 40px;--modal-card-head-background-color: var(--background);--modal-card-head-padding: 20px;--modal-card-head-border-bottom: 1px solid var(--border);--modal-card-head-radius: var(--radius-large);--modal-card-title-color: var(--text-strong);--modal-card-title-size: var(--size-4);--modal-card-title-line-height: 1;--modal-card-foot-radius: var(--radius-large);--modal-card-foot-border-top: 1px solid var(--border);--modal-card-body-background-color: var(--scheme-main);--modal-card-body-padding: 20px}.modal{align-items:center;display:none;flex-direction:column;justify-content:center;overflow:hidden;position:fixed;z-index:var(--modal-z)}.modal.is-active{display:flex}.modal-background{background-color:var(--modal-background-background-color)}.modal-content,.modal-card{margin:0 var(--modal-content-margin-mobile);max-height:calc(100vh - var(--modal-content-spacing-mobile));overflow:auto;position:relative;width:100%}@media screen and (min-width: 769px){.modal-content,.modal-card{margin:0 auto;max-height:calc(100vh - var(--modal-content-spacing-tablet));width:var(--modal-content-width)}}.modal-close{height:var(--modal-close-dimensions);position:fixed;right:var(--modal-close-right);top:var(--modal-close-top);width:var(--modal-close-dimensions)}.modal-card{display:flex;flex-direction:column;max-height:calc(100vh - var(--modal-card-spacing));overflow:hidden;-ms-overflow-y:visible}.modal-card-head,.modal-card-foot{align-items:center;background-color:var(--modal-card-head-background-color);display:flex;flex-shrink:0;justify-content:flex-start;padding:var(--modal-card-head-padding);position:relative}.modal-card-head{border-bottom:var(--modal-card-head-border-bottom);border-top-left-radius:var(--modal-card-head-radius);border-top-right-radius:var(--modal-card-head-radius)}.modal-card-title{color:var(--modal-card-title-color);flex-grow:1;flex-shrink:0;font-size:var(--modal-card-title-size);line-height:var(--modal-card-title-line-height)}.modal-card-foot{border-bottom-left-radius:var(--modal-card-foot-radius);border-bottom-right-radius:var(--modal-card-foot-radius);border-top:var(--modal-card-foot-border-top)}.modal-card-foot .button:not(:last-child){margin-right:.5em}.modal-card-body{-webkit-overflow-scrolling:touch;background-color:var(--modal-card-body-background-color);flex-grow:1;flex-shrink:1;overflow:auto;padding:var(--modal-card-body-padding)}:root{--navbar-background-color: var(--scheme-main);--navbar-box-shadow-size: 0 2px 0 0;--navbar-box-shadow-color: var(--background);--navbar-height: 3.25rem;--navbar-padding-vertical: 1rem;--navbar-padding-horizontal: 2rem;--navbar-z: 30;--navbar-fixed-z: 30;--navbar-shadow-color: rgba(var(--scheme-invert-rgb), .1);--navbar-item-color: var(--text);--navbar-item-padding: var(--item-padding);--navbar-item-hover-color: var(--link);--navbar-item-hover-background-color: var(--scheme-main-bis);--navbar-item-active-color: var(--scheme-invert);--navbar-item-active-background-color: transparent;--navbar-item-img-max-height: 1.75rem;--navbar-burger-color: var(--navbar-item-color);--navbar-tab-hover-background-color: transparent;--navbar-tab-hover-border-bottom-color: var(--link);--navbar-tab-active-color: var(--link);--navbar-tab-active-background-color: transparent;--navbar-tab-active-border-bottom-color: var(--link);--navbar-tab-active-border-bottom-style: solid;--navbar-tab-active-border-bottom-width: 3px;--navbar-dropdown-background-color: var(--scheme-main);--navbar-dropdown-border-top: 2px solid var(--border);--navbar-dropdown-offset: -4px;--navbar-dropdown-arrow: var(--input-arrow-color);--navbar-dropdown-radius: var(--radius-large);--navbar-dropdown-z: 20;--navbar-dropdown-boxed-radius: var(--radius-large);--navbar-dropdown-boxed-shadow: 0 8px 8px rgba(var(--scheme-invert-rgb), .1), 0 0 0 1px rgba(var(--scheme-invert-rgb), .1);--navbar-dropdown-item-hover-color: var(--scheme-invert);--navbar-dropdown-item-hover-background-color: var(--background);--navbar-dropdown-item-active-color: var(--link);--navbar-dropdown-item-active-background-color: var(--background);--navbar-divider-background-color: var(--background);--navbar-divider-height: 2px;--navbar-bottom-box-shadow-size: 0 -2px 0 0}.navbar{background-color:var(--navbar-background-color);min-height:var(--navbar-height);position:relative;z-index:var(--navbar-z)}.navbar.is-white{--navbar-burger-color: var(--white-invert);background-color:var(--white);color:var(--white-invert)}.navbar.is-white .navbar-brand>.navbar-item,.navbar.is-white .navbar-brand .navbar-link{color:var(--white-invert)}.navbar.is-white .navbar-brand>a.navbar-item:focus,.navbar.is-white .navbar-brand>a.navbar-item:hover,.navbar.is-white .navbar-brand>a.navbar-item.is-active,.navbar.is-white .navbar-brand .navbar-link:focus,.navbar.is-white .navbar-brand .navbar-link:hover,.navbar.is-white .navbar-brand .navbar-link.is-active{--navbar-item-hover-background-color: hsla(var(--white-h), var(--white-s), calc(var(--white-l) + -5%), var(--white-a));background-color:var(--navbar-item-hover-background-color);color:var(--white-invert)}.navbar.is-white .navbar-brand .navbar-link:after{border-color:var(--white-invert)}@media screen and (min-width: 1024px){.navbar.is-white{--navbar-dropdown-item-active-background-color: var(--white);--navbar-dropdown-item-active-color: var(--white-invert)}.navbar.is-white .navbar-brand>.navbar-item,.navbar.is-white .navbar-brand .navbar-link,.navbar.is-white .navbar-start>.navbar-item,.navbar.is-white .navbar-start .navbar-link,.navbar.is-white .navbar-end>.navbar-item,.navbar.is-white .navbar-end .navbar-link{color:var(--white-invert)}.navbar.is-white .navbar-brand>a.navbar-item:focus,.navbar.is-white .navbar-brand>a.navbar-item:hover,.navbar.is-white .navbar-brand>a.navbar-item.is-active,.navbar.is-white .navbar-brand .navbar-link:focus,.navbar.is-white .navbar-brand .navbar-link:hover,.navbar.is-white .navbar-brand .navbar-link.is-active,.navbar.is-white .navbar-start>a.navbar-item:focus,.navbar.is-white .navbar-start>a.navbar-item:hover,.navbar.is-white .navbar-start>a.navbar-item.is-active,.navbar.is-white .navbar-start .navbar-link:focus,.navbar.is-white .navbar-start .navbar-link:hover,.navbar.is-white .navbar-start .navbar-link.is-active,.navbar.is-white .navbar-end>a.navbar-item:focus,.navbar.is-white .navbar-end>a.navbar-item:hover,.navbar.is-white .navbar-end>a.navbar-item.is-active,.navbar.is-white .navbar-end .navbar-link:focus,.navbar.is-white .navbar-end .navbar-link:hover,.navbar.is-white .navbar-end .navbar-link.is-active{--navbar-item-hover-background-color: hsla(var(--white-h), var(--white-s), calc(var(--white-l) + -5%), var(--white-a));background-color:var(--navbar-item-hover-background-color);color:var(--white-invert)}.navbar.is-white .navbar-brand .navbar-link:after,.navbar.is-white .navbar-start .navbar-link:after,.navbar.is-white .navbar-end .navbar-link:after{border-color:var(--white-invert)}.navbar.is-white .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-white .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-white .navbar-item.has-dropdown.is-active .navbar-link{--navbar-dropdown-item-hover-background-color: hsla(var(--white-h), var(--white-s), calc(var(--white-l) + -5%), var(--white-a));background-color:var(--navbar-dropdown-item-hover-background-color);color:var(--white-invert)}.navbar.is-white .navbar-dropdown a.navbar-item.is-active{background-color:var(--white);color:var(--white-invert)}}.navbar.is-black{--navbar-burger-color: var(--black-invert);background-color:var(--black);color:var(--black-invert)}.navbar.is-black .navbar-brand>.navbar-item,.navbar.is-black .navbar-brand .navbar-link{color:var(--black-invert)}.navbar.is-black .navbar-brand>a.navbar-item:focus,.navbar.is-black .navbar-brand>a.navbar-item:hover,.navbar.is-black .navbar-brand>a.navbar-item.is-active,.navbar.is-black .navbar-brand .navbar-link:focus,.navbar.is-black .navbar-brand .navbar-link:hover,.navbar.is-black .navbar-brand .navbar-link.is-active{--navbar-item-hover-background-color: hsla(var(--black-h), var(--black-s), calc(var(--black-l) + -5%), var(--black-a));background-color:var(--navbar-item-hover-background-color);color:var(--black-invert)}.navbar.is-black .navbar-brand .navbar-link:after{border-color:var(--black-invert)}@media screen and (min-width: 1024px){.navbar.is-black{--navbar-dropdown-item-active-background-color: var(--black);--navbar-dropdown-item-active-color: var(--black-invert)}.navbar.is-black .navbar-brand>.navbar-item,.navbar.is-black .navbar-brand .navbar-link,.navbar.is-black .navbar-start>.navbar-item,.navbar.is-black .navbar-start .navbar-link,.navbar.is-black .navbar-end>.navbar-item,.navbar.is-black .navbar-end .navbar-link{color:var(--black-invert)}.navbar.is-black .navbar-brand>a.navbar-item:focus,.navbar.is-black .navbar-brand>a.navbar-item:hover,.navbar.is-black .navbar-brand>a.navbar-item.is-active,.navbar.is-black .navbar-brand .navbar-link:focus,.navbar.is-black .navbar-brand .navbar-link:hover,.navbar.is-black .navbar-brand .navbar-link.is-active,.navbar.is-black .navbar-start>a.navbar-item:focus,.navbar.is-black .navbar-start>a.navbar-item:hover,.navbar.is-black .navbar-start>a.navbar-item.is-active,.navbar.is-black .navbar-start .navbar-link:focus,.navbar.is-black .navbar-start .navbar-link:hover,.navbar.is-black .navbar-start .navbar-link.is-active,.navbar.is-black .navbar-end>a.navbar-item:focus,.navbar.is-black .navbar-end>a.navbar-item:hover,.navbar.is-black .navbar-end>a.navbar-item.is-active,.navbar.is-black .navbar-end .navbar-link:focus,.navbar.is-black .navbar-end .navbar-link:hover,.navbar.is-black .navbar-end .navbar-link.is-active{--navbar-item-hover-background-color: hsla(var(--black-h), var(--black-s), calc(var(--black-l) + -5%), var(--black-a));background-color:var(--navbar-item-hover-background-color);color:var(--black-invert)}.navbar.is-black .navbar-brand .navbar-link:after,.navbar.is-black .navbar-start .navbar-link:after,.navbar.is-black .navbar-end .navbar-link:after{border-color:var(--black-invert)}.navbar.is-black .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-black .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-black .navbar-item.has-dropdown.is-active .navbar-link{--navbar-dropdown-item-hover-background-color: hsla(var(--black-h), var(--black-s), calc(var(--black-l) + -5%), var(--black-a));background-color:var(--navbar-dropdown-item-hover-background-color);color:var(--black-invert)}.navbar.is-black .navbar-dropdown a.navbar-item.is-active{background-color:var(--black);color:var(--black-invert)}}.navbar.is-light{--navbar-burger-color: var(--light-invert);background-color:var(--light);color:var(--light-invert)}.navbar.is-light .navbar-brand>.navbar-item,.navbar.is-light .navbar-brand .navbar-link{color:var(--light-invert)}.navbar.is-light .navbar-brand>a.navbar-item:focus,.navbar.is-light .navbar-brand>a.navbar-item:hover,.navbar.is-light .navbar-brand>a.navbar-item.is-active,.navbar.is-light .navbar-brand .navbar-link:focus,.navbar.is-light .navbar-brand .navbar-link:hover,.navbar.is-light .navbar-brand .navbar-link.is-active{--navbar-item-hover-background-color: hsla(var(--light-h), var(--light-s), calc(var(--light-l) + -5%), var(--light-a));background-color:var(--navbar-item-hover-background-color);color:var(--light-invert)}.navbar.is-light .navbar-brand .navbar-link:after{border-color:var(--light-invert)}@media screen and (min-width: 1024px){.navbar.is-light{--navbar-dropdown-item-active-background-color: var(--light);--navbar-dropdown-item-active-color: var(--light-invert)}.navbar.is-light .navbar-brand>.navbar-item,.navbar.is-light .navbar-brand .navbar-link,.navbar.is-light .navbar-start>.navbar-item,.navbar.is-light .navbar-start .navbar-link,.navbar.is-light .navbar-end>.navbar-item,.navbar.is-light .navbar-end .navbar-link{color:var(--light-invert)}.navbar.is-light .navbar-brand>a.navbar-item:focus,.navbar.is-light .navbar-brand>a.navbar-item:hover,.navbar.is-light .navbar-brand>a.navbar-item.is-active,.navbar.is-light .navbar-brand .navbar-link:focus,.navbar.is-light .navbar-brand .navbar-link:hover,.navbar.is-light .navbar-brand .navbar-link.is-active,.navbar.is-light .navbar-start>a.navbar-item:focus,.navbar.is-light .navbar-start>a.navbar-item:hover,.navbar.is-light .navbar-start>a.navbar-item.is-active,.navbar.is-light .navbar-start .navbar-link:focus,.navbar.is-light .navbar-start .navbar-link:hover,.navbar.is-light .navbar-start .navbar-link.is-active,.navbar.is-light .navbar-end>a.navbar-item:focus,.navbar.is-light .navbar-end>a.navbar-item:hover,.navbar.is-light .navbar-end>a.navbar-item.is-active,.navbar.is-light .navbar-end .navbar-link:focus,.navbar.is-light .navbar-end .navbar-link:hover,.navbar.is-light .navbar-end .navbar-link.is-active{--navbar-item-hover-background-color: hsla(var(--light-h), var(--light-s), calc(var(--light-l) + -5%), var(--light-a));background-color:var(--navbar-item-hover-background-color);color:var(--light-invert)}.navbar.is-light .navbar-brand .navbar-link:after,.navbar.is-light .navbar-start .navbar-link:after,.navbar.is-light .navbar-end .navbar-link:after{border-color:var(--light-invert)}.navbar.is-light .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-light .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-light .navbar-item.has-dropdown.is-active .navbar-link{--navbar-dropdown-item-hover-background-color: hsla(var(--light-h), var(--light-s), calc(var(--light-l) + -5%), var(--light-a));background-color:var(--navbar-dropdown-item-hover-background-color);color:var(--light-invert)}.navbar.is-light .navbar-dropdown a.navbar-item.is-active{background-color:var(--light);color:var(--light-invert)}}.navbar.is-dark{--navbar-burger-color: var(--dark-invert);background-color:var(--dark);color:var(--dark-invert)}.navbar.is-dark .navbar-brand>.navbar-item,.navbar.is-dark .navbar-brand .navbar-link{color:var(--dark-invert)}.navbar.is-dark .navbar-brand>a.navbar-item:focus,.navbar.is-dark .navbar-brand>a.navbar-item:hover,.navbar.is-dark .navbar-brand>a.navbar-item.is-active,.navbar.is-dark .navbar-brand .navbar-link:focus,.navbar.is-dark .navbar-brand .navbar-link:hover,.navbar.is-dark .navbar-brand .navbar-link.is-active{--navbar-item-hover-background-color: hsla(var(--dark-h), var(--dark-s), calc(var(--dark-l) + -5%), var(--dark-a));background-color:var(--navbar-item-hover-background-color);color:var(--dark-invert)}.navbar.is-dark .navbar-brand .navbar-link:after{border-color:var(--dark-invert)}@media screen and (min-width: 1024px){.navbar.is-dark{--navbar-dropdown-item-active-background-color: var(--dark);--navbar-dropdown-item-active-color: var(--dark-invert)}.navbar.is-dark .navbar-brand>.navbar-item,.navbar.is-dark .navbar-brand .navbar-link,.navbar.is-dark .navbar-start>.navbar-item,.navbar.is-dark .navbar-start .navbar-link,.navbar.is-dark .navbar-end>.navbar-item,.navbar.is-dark .navbar-end .navbar-link{color:var(--dark-invert)}.navbar.is-dark .navbar-brand>a.navbar-item:focus,.navbar.is-dark .navbar-brand>a.navbar-item:hover,.navbar.is-dark .navbar-brand>a.navbar-item.is-active,.navbar.is-dark .navbar-brand .navbar-link:focus,.navbar.is-dark .navbar-brand .navbar-link:hover,.navbar.is-dark .navbar-brand .navbar-link.is-active,.navbar.is-dark .navbar-start>a.navbar-item:focus,.navbar.is-dark .navbar-start>a.navbar-item:hover,.navbar.is-dark .navbar-start>a.navbar-item.is-active,.navbar.is-dark .navbar-start .navbar-link:focus,.navbar.is-dark .navbar-start .navbar-link:hover,.navbar.is-dark .navbar-start .navbar-link.is-active,.navbar.is-dark .navbar-end>a.navbar-item:focus,.navbar.is-dark .navbar-end>a.navbar-item:hover,.navbar.is-dark .navbar-end>a.navbar-item.is-active,.navbar.is-dark .navbar-end .navbar-link:focus,.navbar.is-dark .navbar-end .navbar-link:hover,.navbar.is-dark .navbar-end .navbar-link.is-active{--navbar-item-hover-background-color: hsla(var(--dark-h), var(--dark-s), calc(var(--dark-l) + -5%), var(--dark-a));background-color:var(--navbar-item-hover-background-color);color:var(--dark-invert)}.navbar.is-dark .navbar-brand .navbar-link:after,.navbar.is-dark .navbar-start .navbar-link:after,.navbar.is-dark .navbar-end .navbar-link:after{border-color:var(--dark-invert)}.navbar.is-dark .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-dark .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-dark .navbar-item.has-dropdown.is-active .navbar-link{--navbar-dropdown-item-hover-background-color: hsla(var(--dark-h), var(--dark-s), calc(var(--dark-l) + -5%), var(--dark-a));background-color:var(--navbar-dropdown-item-hover-background-color);color:var(--dark-invert)}.navbar.is-dark .navbar-dropdown a.navbar-item.is-active{background-color:var(--dark);color:var(--dark-invert)}}.navbar.is-primary{--navbar-burger-color: var(--primary-invert);background-color:var(--primary);color:var(--primary-invert)}.navbar.is-primary .navbar-brand>.navbar-item,.navbar.is-primary .navbar-brand .navbar-link{color:var(--primary-invert)}.navbar.is-primary .navbar-brand>a.navbar-item:focus,.navbar.is-primary .navbar-brand>a.navbar-item:hover,.navbar.is-primary .navbar-brand>a.navbar-item.is-active,.navbar.is-primary .navbar-brand .navbar-link:focus,.navbar.is-primary .navbar-brand .navbar-link:hover,.navbar.is-primary .navbar-brand .navbar-link.is-active{--navbar-item-hover-background-color: hsla(var(--primary-h), var(--primary-s), calc(var(--primary-l) + -5%), var(--primary-a));background-color:var(--navbar-item-hover-background-color);color:var(--primary-invert)}.navbar.is-primary .navbar-brand .navbar-link:after{border-color:var(--primary-invert)}@media screen and (min-width: 1024px){.navbar.is-primary{--navbar-dropdown-item-active-background-color: var(--primary);--navbar-dropdown-item-active-color: var(--primary-invert)}.navbar.is-primary .navbar-brand>.navbar-item,.navbar.is-primary .navbar-brand .navbar-link,.navbar.is-primary .navbar-start>.navbar-item,.navbar.is-primary .navbar-start .navbar-link,.navbar.is-primary .navbar-end>.navbar-item,.navbar.is-primary .navbar-end .navbar-link{color:var(--primary-invert)}.navbar.is-primary .navbar-brand>a.navbar-item:focus,.navbar.is-primary .navbar-brand>a.navbar-item:hover,.navbar.is-primary .navbar-brand>a.navbar-item.is-active,.navbar.is-primary .navbar-brand .navbar-link:focus,.navbar.is-primary .navbar-brand .navbar-link:hover,.navbar.is-primary .navbar-brand .navbar-link.is-active,.navbar.is-primary .navbar-start>a.navbar-item:focus,.navbar.is-primary .navbar-start>a.navbar-item:hover,.navbar.is-primary .navbar-start>a.navbar-item.is-active,.navbar.is-primary .navbar-start .navbar-link:focus,.navbar.is-primary .navbar-start .navbar-link:hover,.navbar.is-primary .navbar-start .navbar-link.is-active,.navbar.is-primary .navbar-end>a.navbar-item:focus,.navbar.is-primary .navbar-end>a.navbar-item:hover,.navbar.is-primary .navbar-end>a.navbar-item.is-active,.navbar.is-primary .navbar-end .navbar-link:focus,.navbar.is-primary .navbar-end .navbar-link:hover,.navbar.is-primary .navbar-end .navbar-link.is-active{--navbar-item-hover-background-color: hsla(var(--primary-h), var(--primary-s), calc(var(--primary-l) + -5%), var(--primary-a));background-color:var(--navbar-item-hover-background-color);color:var(--primary-invert)}.navbar.is-primary .navbar-brand .navbar-link:after,.navbar.is-primary .navbar-start .navbar-link:after,.navbar.is-primary .navbar-end .navbar-link:after{border-color:var(--primary-invert)}.navbar.is-primary .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-primary .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-primary .navbar-item.has-dropdown.is-active .navbar-link{--navbar-dropdown-item-hover-background-color: hsla(var(--primary-h), var(--primary-s), calc(var(--primary-l) + -5%), var(--primary-a));background-color:var(--navbar-dropdown-item-hover-background-color);color:var(--primary-invert)}.navbar.is-primary .navbar-dropdown a.navbar-item.is-active{background-color:var(--primary);color:var(--primary-invert)}}.navbar.is-secondary{--navbar-burger-color: var(--secondary-invert);background-color:var(--secondary);color:var(--secondary-invert)}.navbar.is-secondary .navbar-brand>.navbar-item,.navbar.is-secondary .navbar-brand .navbar-link{color:var(--secondary-invert)}.navbar.is-secondary .navbar-brand>a.navbar-item:focus,.navbar.is-secondary .navbar-brand>a.navbar-item:hover,.navbar.is-secondary .navbar-brand>a.navbar-item.is-active,.navbar.is-secondary .navbar-brand .navbar-link:focus,.navbar.is-secondary .navbar-brand .navbar-link:hover,.navbar.is-secondary .navbar-brand .navbar-link.is-active{--navbar-item-hover-background-color: hsla(var(--secondary-h), var(--secondary-s), calc(var(--secondary-l) + -5%), var(--secondary-a));background-color:var(--navbar-item-hover-background-color);color:var(--secondary-invert)}.navbar.is-secondary .navbar-brand .navbar-link:after{border-color:var(--secondary-invert)}@media screen and (min-width: 1024px){.navbar.is-secondary{--navbar-dropdown-item-active-background-color: var(--secondary);--navbar-dropdown-item-active-color: var(--secondary-invert)}.navbar.is-secondary .navbar-brand>.navbar-item,.navbar.is-secondary .navbar-brand .navbar-link,.navbar.is-secondary .navbar-start>.navbar-item,.navbar.is-secondary .navbar-start .navbar-link,.navbar.is-secondary .navbar-end>.navbar-item,.navbar.is-secondary .navbar-end .navbar-link{color:var(--secondary-invert)}.navbar.is-secondary .navbar-brand>a.navbar-item:focus,.navbar.is-secondary .navbar-brand>a.navbar-item:hover,.navbar.is-secondary .navbar-brand>a.navbar-item.is-active,.navbar.is-secondary .navbar-brand .navbar-link:focus,.navbar.is-secondary .navbar-brand .navbar-link:hover,.navbar.is-secondary .navbar-brand .navbar-link.is-active,.navbar.is-secondary .navbar-start>a.navbar-item:focus,.navbar.is-secondary .navbar-start>a.navbar-item:hover,.navbar.is-secondary .navbar-start>a.navbar-item.is-active,.navbar.is-secondary .navbar-start .navbar-link:focus,.navbar.is-secondary .navbar-start .navbar-link:hover,.navbar.is-secondary .navbar-start .navbar-link.is-active,.navbar.is-secondary .navbar-end>a.navbar-item:focus,.navbar.is-secondary .navbar-end>a.navbar-item:hover,.navbar.is-secondary .navbar-end>a.navbar-item.is-active,.navbar.is-secondary .navbar-end .navbar-link:focus,.navbar.is-secondary .navbar-end .navbar-link:hover,.navbar.is-secondary .navbar-end .navbar-link.is-active{--navbar-item-hover-background-color: hsla(var(--secondary-h), var(--secondary-s), calc(var(--secondary-l) + -5%), var(--secondary-a));background-color:var(--navbar-item-hover-background-color);color:var(--secondary-invert)}.navbar.is-secondary .navbar-brand .navbar-link:after,.navbar.is-secondary .navbar-start .navbar-link:after,.navbar.is-secondary .navbar-end .navbar-link:after{border-color:var(--secondary-invert)}.navbar.is-secondary .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-secondary .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-secondary .navbar-item.has-dropdown.is-active .navbar-link{--navbar-dropdown-item-hover-background-color: hsla(var(--secondary-h), var(--secondary-s), calc(var(--secondary-l) + -5%), var(--secondary-a));background-color:var(--navbar-dropdown-item-hover-background-color);color:var(--secondary-invert)}.navbar.is-secondary .navbar-dropdown a.navbar-item.is-active{background-color:var(--secondary);color:var(--secondary-invert)}}.navbar.is-link{--navbar-burger-color: var(--link-invert);background-color:var(--link);color:var(--link-invert)}.navbar.is-link .navbar-brand>.navbar-item,.navbar.is-link .navbar-brand .navbar-link{color:var(--link-invert)}.navbar.is-link .navbar-brand>a.navbar-item:focus,.navbar.is-link .navbar-brand>a.navbar-item:hover,.navbar.is-link .navbar-brand>a.navbar-item.is-active,.navbar.is-link .navbar-brand .navbar-link:focus,.navbar.is-link .navbar-brand .navbar-link:hover,.navbar.is-link .navbar-brand .navbar-link.is-active{--navbar-item-hover-background-color: hsla(var(--link-h), var(--link-s), calc(var(--link-l) + -5%), var(--link-a));background-color:var(--navbar-item-hover-background-color);color:var(--link-invert)}.navbar.is-link .navbar-brand .navbar-link:after{border-color:var(--link-invert)}@media screen and (min-width: 1024px){.navbar.is-link{--navbar-dropdown-item-active-background-color: var(--link);--navbar-dropdown-item-active-color: var(--link-invert)}.navbar.is-link .navbar-brand>.navbar-item,.navbar.is-link .navbar-brand .navbar-link,.navbar.is-link .navbar-start>.navbar-item,.navbar.is-link .navbar-start .navbar-link,.navbar.is-link .navbar-end>.navbar-item,.navbar.is-link .navbar-end .navbar-link{color:var(--link-invert)}.navbar.is-link .navbar-brand>a.navbar-item:focus,.navbar.is-link .navbar-brand>a.navbar-item:hover,.navbar.is-link .navbar-brand>a.navbar-item.is-active,.navbar.is-link .navbar-brand .navbar-link:focus,.navbar.is-link .navbar-brand .navbar-link:hover,.navbar.is-link .navbar-brand .navbar-link.is-active,.navbar.is-link .navbar-start>a.navbar-item:focus,.navbar.is-link .navbar-start>a.navbar-item:hover,.navbar.is-link .navbar-start>a.navbar-item.is-active,.navbar.is-link .navbar-start .navbar-link:focus,.navbar.is-link .navbar-start .navbar-link:hover,.navbar.is-link .navbar-start .navbar-link.is-active,.navbar.is-link .navbar-end>a.navbar-item:focus,.navbar.is-link .navbar-end>a.navbar-item:hover,.navbar.is-link .navbar-end>a.navbar-item.is-active,.navbar.is-link .navbar-end .navbar-link:focus,.navbar.is-link .navbar-end .navbar-link:hover,.navbar.is-link .navbar-end .navbar-link.is-active{--navbar-item-hover-background-color: hsla(var(--link-h), var(--link-s), calc(var(--link-l) + -5%), var(--link-a));background-color:var(--navbar-item-hover-background-color);color:var(--link-invert)}.navbar.is-link .navbar-brand .navbar-link:after,.navbar.is-link .navbar-start .navbar-link:after,.navbar.is-link .navbar-end .navbar-link:after{border-color:var(--link-invert)}.navbar.is-link .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-link .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-link .navbar-item.has-dropdown.is-active .navbar-link{--navbar-dropdown-item-hover-background-color: hsla(var(--link-h), var(--link-s), calc(var(--link-l) + -5%), var(--link-a));background-color:var(--navbar-dropdown-item-hover-background-color);color:var(--link-invert)}.navbar.is-link .navbar-dropdown a.navbar-item.is-active{background-color:var(--link);color:var(--link-invert)}}.navbar.is-info{--navbar-burger-color: var(--info-invert);background-color:var(--info);color:var(--info-invert)}.navbar.is-info .navbar-brand>.navbar-item,.navbar.is-info .navbar-brand .navbar-link{color:var(--info-invert)}.navbar.is-info .navbar-brand>a.navbar-item:focus,.navbar.is-info .navbar-brand>a.navbar-item:hover,.navbar.is-info .navbar-brand>a.navbar-item.is-active,.navbar.is-info .navbar-brand .navbar-link:focus,.navbar.is-info .navbar-brand .navbar-link:hover,.navbar.is-info .navbar-brand .navbar-link.is-active{--navbar-item-hover-background-color: hsla(var(--info-h), var(--info-s), calc(var(--info-l) + -5%), var(--info-a));background-color:var(--navbar-item-hover-background-color);color:var(--info-invert)}.navbar.is-info .navbar-brand .navbar-link:after{border-color:var(--info-invert)}@media screen and (min-width: 1024px){.navbar.is-info{--navbar-dropdown-item-active-background-color: var(--info);--navbar-dropdown-item-active-color: var(--info-invert)}.navbar.is-info .navbar-brand>.navbar-item,.navbar.is-info .navbar-brand .navbar-link,.navbar.is-info .navbar-start>.navbar-item,.navbar.is-info .navbar-start .navbar-link,.navbar.is-info .navbar-end>.navbar-item,.navbar.is-info .navbar-end .navbar-link{color:var(--info-invert)}.navbar.is-info .navbar-brand>a.navbar-item:focus,.navbar.is-info .navbar-brand>a.navbar-item:hover,.navbar.is-info .navbar-brand>a.navbar-item.is-active,.navbar.is-info .navbar-brand .navbar-link:focus,.navbar.is-info .navbar-brand .navbar-link:hover,.navbar.is-info .navbar-brand .navbar-link.is-active,.navbar.is-info .navbar-start>a.navbar-item:focus,.navbar.is-info .navbar-start>a.navbar-item:hover,.navbar.is-info .navbar-start>a.navbar-item.is-active,.navbar.is-info .navbar-start .navbar-link:focus,.navbar.is-info .navbar-start .navbar-link:hover,.navbar.is-info .navbar-start .navbar-link.is-active,.navbar.is-info .navbar-end>a.navbar-item:focus,.navbar.is-info .navbar-end>a.navbar-item:hover,.navbar.is-info .navbar-end>a.navbar-item.is-active,.navbar.is-info .navbar-end .navbar-link:focus,.navbar.is-info .navbar-end .navbar-link:hover,.navbar.is-info .navbar-end .navbar-link.is-active{--navbar-item-hover-background-color: hsla(var(--info-h), var(--info-s), calc(var(--info-l) + -5%), var(--info-a));background-color:var(--navbar-item-hover-background-color);color:var(--info-invert)}.navbar.is-info .navbar-brand .navbar-link:after,.navbar.is-info .navbar-start .navbar-link:after,.navbar.is-info .navbar-end .navbar-link:after{border-color:var(--info-invert)}.navbar.is-info .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-info .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-info .navbar-item.has-dropdown.is-active .navbar-link{--navbar-dropdown-item-hover-background-color: hsla(var(--info-h), var(--info-s), calc(var(--info-l) + -5%), var(--info-a));background-color:var(--navbar-dropdown-item-hover-background-color);color:var(--info-invert)}.navbar.is-info .navbar-dropdown a.navbar-item.is-active{background-color:var(--info);color:var(--info-invert)}}.navbar.is-success{--navbar-burger-color: var(--success-invert);background-color:var(--success);color:var(--success-invert)}.navbar.is-success .navbar-brand>.navbar-item,.navbar.is-success .navbar-brand .navbar-link{color:var(--success-invert)}.navbar.is-success .navbar-brand>a.navbar-item:focus,.navbar.is-success .navbar-brand>a.navbar-item:hover,.navbar.is-success .navbar-brand>a.navbar-item.is-active,.navbar.is-success .navbar-brand .navbar-link:focus,.navbar.is-success .navbar-brand .navbar-link:hover,.navbar.is-success .navbar-brand .navbar-link.is-active{--navbar-item-hover-background-color: hsla(var(--success-h), var(--success-s), calc(var(--success-l) + -5%), var(--success-a));background-color:var(--navbar-item-hover-background-color);color:var(--success-invert)}.navbar.is-success .navbar-brand .navbar-link:after{border-color:var(--success-invert)}@media screen and (min-width: 1024px){.navbar.is-success{--navbar-dropdown-item-active-background-color: var(--success);--navbar-dropdown-item-active-color: var(--success-invert)}.navbar.is-success .navbar-brand>.navbar-item,.navbar.is-success .navbar-brand .navbar-link,.navbar.is-success .navbar-start>.navbar-item,.navbar.is-success .navbar-start .navbar-link,.navbar.is-success .navbar-end>.navbar-item,.navbar.is-success .navbar-end .navbar-link{color:var(--success-invert)}.navbar.is-success .navbar-brand>a.navbar-item:focus,.navbar.is-success .navbar-brand>a.navbar-item:hover,.navbar.is-success .navbar-brand>a.navbar-item.is-active,.navbar.is-success .navbar-brand .navbar-link:focus,.navbar.is-success .navbar-brand .navbar-link:hover,.navbar.is-success .navbar-brand .navbar-link.is-active,.navbar.is-success .navbar-start>a.navbar-item:focus,.navbar.is-success .navbar-start>a.navbar-item:hover,.navbar.is-success .navbar-start>a.navbar-item.is-active,.navbar.is-success .navbar-start .navbar-link:focus,.navbar.is-success .navbar-start .navbar-link:hover,.navbar.is-success .navbar-start .navbar-link.is-active,.navbar.is-success .navbar-end>a.navbar-item:focus,.navbar.is-success .navbar-end>a.navbar-item:hover,.navbar.is-success .navbar-end>a.navbar-item.is-active,.navbar.is-success .navbar-end .navbar-link:focus,.navbar.is-success .navbar-end .navbar-link:hover,.navbar.is-success .navbar-end .navbar-link.is-active{--navbar-item-hover-background-color: hsla(var(--success-h), var(--success-s), calc(var(--success-l) + -5%), var(--success-a));background-color:var(--navbar-item-hover-background-color);color:var(--success-invert)}.navbar.is-success .navbar-brand .navbar-link:after,.navbar.is-success .navbar-start .navbar-link:after,.navbar.is-success .navbar-end .navbar-link:after{border-color:var(--success-invert)}.navbar.is-success .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-success .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-success .navbar-item.has-dropdown.is-active .navbar-link{--navbar-dropdown-item-hover-background-color: hsla(var(--success-h), var(--success-s), calc(var(--success-l) + -5%), var(--success-a));background-color:var(--navbar-dropdown-item-hover-background-color);color:var(--success-invert)}.navbar.is-success .navbar-dropdown a.navbar-item.is-active{background-color:var(--success);color:var(--success-invert)}}.navbar.is-warning{--navbar-burger-color: var(--warning-invert);background-color:var(--warning);color:var(--warning-invert)}.navbar.is-warning .navbar-brand>.navbar-item,.navbar.is-warning .navbar-brand .navbar-link{color:var(--warning-invert)}.navbar.is-warning .navbar-brand>a.navbar-item:focus,.navbar.is-warning .navbar-brand>a.navbar-item:hover,.navbar.is-warning .navbar-brand>a.navbar-item.is-active,.navbar.is-warning .navbar-brand .navbar-link:focus,.navbar.is-warning .navbar-brand .navbar-link:hover,.navbar.is-warning .navbar-brand .navbar-link.is-active{--navbar-item-hover-background-color: hsla(var(--warning-h), var(--warning-s), calc(var(--warning-l) + -5%), var(--warning-a));background-color:var(--navbar-item-hover-background-color);color:var(--warning-invert)}.navbar.is-warning .navbar-brand .navbar-link:after{border-color:var(--warning-invert)}@media screen and (min-width: 1024px){.navbar.is-warning{--navbar-dropdown-item-active-background-color: var(--warning);--navbar-dropdown-item-active-color: var(--warning-invert)}.navbar.is-warning .navbar-brand>.navbar-item,.navbar.is-warning .navbar-brand .navbar-link,.navbar.is-warning .navbar-start>.navbar-item,.navbar.is-warning .navbar-start .navbar-link,.navbar.is-warning .navbar-end>.navbar-item,.navbar.is-warning .navbar-end .navbar-link{color:var(--warning-invert)}.navbar.is-warning .navbar-brand>a.navbar-item:focus,.navbar.is-warning .navbar-brand>a.navbar-item:hover,.navbar.is-warning .navbar-brand>a.navbar-item.is-active,.navbar.is-warning .navbar-brand .navbar-link:focus,.navbar.is-warning .navbar-brand .navbar-link:hover,.navbar.is-warning .navbar-brand .navbar-link.is-active,.navbar.is-warning .navbar-start>a.navbar-item:focus,.navbar.is-warning .navbar-start>a.navbar-item:hover,.navbar.is-warning .navbar-start>a.navbar-item.is-active,.navbar.is-warning .navbar-start .navbar-link:focus,.navbar.is-warning .navbar-start .navbar-link:hover,.navbar.is-warning .navbar-start .navbar-link.is-active,.navbar.is-warning .navbar-end>a.navbar-item:focus,.navbar.is-warning .navbar-end>a.navbar-item:hover,.navbar.is-warning .navbar-end>a.navbar-item.is-active,.navbar.is-warning .navbar-end .navbar-link:focus,.navbar.is-warning .navbar-end .navbar-link:hover,.navbar.is-warning .navbar-end .navbar-link.is-active{--navbar-item-hover-background-color: hsla(var(--warning-h), var(--warning-s), calc(var(--warning-l) + -5%), var(--warning-a));background-color:var(--navbar-item-hover-background-color);color:var(--warning-invert)}.navbar.is-warning .navbar-brand .navbar-link:after,.navbar.is-warning .navbar-start .navbar-link:after,.navbar.is-warning .navbar-end .navbar-link:after{border-color:var(--warning-invert)}.navbar.is-warning .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-warning .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-warning .navbar-item.has-dropdown.is-active .navbar-link{--navbar-dropdown-item-hover-background-color: hsla(var(--warning-h), var(--warning-s), calc(var(--warning-l) + -5%), var(--warning-a));background-color:var(--navbar-dropdown-item-hover-background-color);color:var(--warning-invert)}.navbar.is-warning .navbar-dropdown a.navbar-item.is-active{background-color:var(--warning);color:var(--warning-invert)}}.navbar.is-danger{--navbar-burger-color: var(--danger-invert);background-color:var(--danger);color:var(--danger-invert)}.navbar.is-danger .navbar-brand>.navbar-item,.navbar.is-danger .navbar-brand .navbar-link{color:var(--danger-invert)}.navbar.is-danger .navbar-brand>a.navbar-item:focus,.navbar.is-danger .navbar-brand>a.navbar-item:hover,.navbar.is-danger .navbar-brand>a.navbar-item.is-active,.navbar.is-danger .navbar-brand .navbar-link:focus,.navbar.is-danger .navbar-brand .navbar-link:hover,.navbar.is-danger .navbar-brand .navbar-link.is-active{--navbar-item-hover-background-color: hsla(var(--danger-h), var(--danger-s), calc(var(--danger-l) + -5%), var(--danger-a));background-color:var(--navbar-item-hover-background-color);color:var(--danger-invert)}.navbar.is-danger .navbar-brand .navbar-link:after{border-color:var(--danger-invert)}@media screen and (min-width: 1024px){.navbar.is-danger{--navbar-dropdown-item-active-background-color: var(--danger);--navbar-dropdown-item-active-color: var(--danger-invert)}.navbar.is-danger .navbar-brand>.navbar-item,.navbar.is-danger .navbar-brand .navbar-link,.navbar.is-danger .navbar-start>.navbar-item,.navbar.is-danger .navbar-start .navbar-link,.navbar.is-danger .navbar-end>.navbar-item,.navbar.is-danger .navbar-end .navbar-link{color:var(--danger-invert)}.navbar.is-danger .navbar-brand>a.navbar-item:focus,.navbar.is-danger .navbar-brand>a.navbar-item:hover,.navbar.is-danger .navbar-brand>a.navbar-item.is-active,.navbar.is-danger .navbar-brand .navbar-link:focus,.navbar.is-danger .navbar-brand .navbar-link:hover,.navbar.is-danger .navbar-brand .navbar-link.is-active,.navbar.is-danger .navbar-start>a.navbar-item:focus,.navbar.is-danger .navbar-start>a.navbar-item:hover,.navbar.is-danger .navbar-start>a.navbar-item.is-active,.navbar.is-danger .navbar-start .navbar-link:focus,.navbar.is-danger .navbar-start .navbar-link:hover,.navbar.is-danger .navbar-start .navbar-link.is-active,.navbar.is-danger .navbar-end>a.navbar-item:focus,.navbar.is-danger .navbar-end>a.navbar-item:hover,.navbar.is-danger .navbar-end>a.navbar-item.is-active,.navbar.is-danger .navbar-end .navbar-link:focus,.navbar.is-danger .navbar-end .navbar-link:hover,.navbar.is-danger .navbar-end .navbar-link.is-active{--navbar-item-hover-background-color: hsla(var(--danger-h), var(--danger-s), calc(var(--danger-l) + -5%), var(--danger-a));background-color:var(--navbar-item-hover-background-color);color:var(--danger-invert)}.navbar.is-danger .navbar-brand .navbar-link:after,.navbar.is-danger .navbar-start .navbar-link:after,.navbar.is-danger .navbar-end .navbar-link:after{border-color:var(--danger-invert)}.navbar.is-danger .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-danger .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-danger .navbar-item.has-dropdown.is-active .navbar-link{--navbar-dropdown-item-hover-background-color: hsla(var(--danger-h), var(--danger-s), calc(var(--danger-l) + -5%), var(--danger-a));background-color:var(--navbar-dropdown-item-hover-background-color);color:var(--danger-invert)}.navbar.is-danger .navbar-dropdown a.navbar-item.is-active{background-color:var(--danger);color:var(--danger-invert)}}.navbar>.container{align-items:stretch;display:flex;min-height:var(--navbar-height);width:100%}.navbar.has-shadow{box-shadow:var(--navbar-box-shadow-size) var(--navbar-box-shadow-color)}.navbar.is-fixed-bottom,.navbar.is-fixed-top{left:0;position:fixed;right:0;z-index:var(--navbar-fixed-z)}.navbar.is-fixed-bottom{bottom:0}.navbar.is-fixed-bottom.has-shadow{box-shadow:var(--navbar-bottom-box-shadow-size) var(--navbar-box-shadow-color)}.navbar.is-fixed-top{top:0}html.has-navbar-fixed-top,body.has-navbar-fixed-top{padding-top:var(--navbar-height)}html.has-navbar-fixed-bottom,body.has-navbar-fixed-bottom{padding-bottom:var(--navbar-height)}.navbar-brand,.navbar-tabs{align-items:stretch;display:flex;flex-shrink:0;min-height:var(--navbar-height)}.navbar-brand a.navbar-item:focus,.navbar-brand a.navbar-item:hover{background-color:transparent}.navbar-tabs{-webkit-overflow-scrolling:touch;max-width:100vw;overflow-x:auto;overflow-y:hidden}.navbar-burger{color:var(--navbar-burger-color);--hamburger-dimensions: var(--navbar-height);-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;cursor:pointer;display:block;height:var(--hamburger-dimensions);position:relative;width:var(--hamburger-dimensions);margin-left:auto}.navbar-burger span{background-color:currentColor;display:block;height:1px;left:calc(50% - 8px);position:absolute;transform-origin:center;transition-duration:var(--speed);transition-property:background-color,opacity,transform;transition-timing-function:var(--easing);width:16px}.navbar-burger span:nth-child(1){top:calc(50% - 6px)}.navbar-burger span:nth-child(2){top:calc(50% - 1px)}.navbar-burger span:nth-child(3){top:calc(50% + 4px)}.navbar-burger:hover{background-color:#0000000d}.navbar-burger.is-active span:nth-child(1){transform:translateY(5px) rotate(45deg)}.navbar-burger.is-active span:nth-child(2){opacity:0}.navbar-burger.is-active span:nth-child(3){transform:translateY(-5px) rotate(-45deg)}.navbar-menu{display:none}.navbar-item,.navbar-link{color:var(--navbar-item-color);display:block;line-height:1.5;padding:.5rem .75rem;position:relative}.navbar-item .icon:only-child,.navbar-link .icon:only-child{margin-left:-.25rem;margin-right:-.25rem}a.navbar-item,.navbar-link{cursor:pointer}a.navbar-item:focus,a.navbar-item:focus-within,a.navbar-item:hover,a.navbar-item.is-active,.navbar-link:focus,.navbar-link:focus-within,.navbar-link:hover,.navbar-link.is-active{background-color:var(--navbar-item-hover-background-color);color:var(--navbar-item-hover-color)}.navbar-item{flex-grow:0;flex-shrink:0}.navbar-item img{max-height:var(--navbar-item-img-max-height)}.navbar-item.has-dropdown{padding:0}.navbar-item.is-expanded{flex-grow:1;flex-shrink:1}.navbar-item.is-tab{border-bottom:1px solid transparent;min-height:var(--navbar-height);padding-bottom:calc(.5rem - 1px)}.navbar-item.is-tab:focus,.navbar-item.is-tab:hover{background-color:var(--navbar-tab-hover-background-color);border-bottom-color:var(--navbar-tab-hover-border-bottom-color)}.navbar-item.is-tab.is-active{background-color:var(--navbar-tab-active-background-color);border-bottom-color:var(--navbar-tab-active-border-bottom-color);border-bottom-style:var(--navbar-tab-active-border-bottom-style);border-bottom-width:var(--navbar-tab-active-border-bottom-width);color:var(--navbar-tab-active-color);padding-bottom:calc(.5rem - var(--navbar-tab-active-border-bottom-width))}.navbar-content{flex-grow:1;flex-shrink:1}.navbar-link:not(.is-arrowless){padding-right:2.5em}.navbar-link:not(.is-arrowless):after{border-color:var(--navbar-dropdown-arrow);margin-top:-.375em;right:1.125em}.navbar-dropdown{font-size:.875rem;padding-bottom:.5rem;padding-top:.5rem}.navbar-dropdown .navbar-item{padding-left:1.5rem;padding-right:1.5rem}.navbar-divider{background-color:var(--navbar-divider-background-color);border:none;display:none;height:var(--navbar-divider-height);margin:.5rem 0}@media screen and (max-width: 1023px){.navbar>.container{display:block}.navbar-brand .navbar-item,.navbar-tabs .navbar-item{align-items:center;display:flex}.navbar-link:after{display:none}.navbar-menu{background-color:var(--navbar-background-color);box-shadow:0 8px 16px var(--navbar-shadow-color);padding:.5rem 0}.navbar-menu.is-active{display:block}.navbar.is-fixed-bottom-touch,.navbar.is-fixed-top-touch{left:0;position:fixed;right:0;z-index:var(--navbar-fixed-z)}.navbar.is-fixed-bottom-touch{bottom:0}.navbar.is-fixed-bottom-touch.has-shadow{box-shadow:0 -2px 3px var(--navbar-shadow-color)}.navbar.is-fixed-top-touch{top:0}.navbar.is-fixed-top .navbar-menu,.navbar.is-fixed-top-touch .navbar-menu{-webkit-overflow-scrolling:touch;max-height:calc(100vh - var(--navbar-height));overflow:auto}html.has-navbar-fixed-top-touch,body.has-navbar-fixed-top-touch{padding-top:var(--navbar-height)}html.has-navbar-fixed-bottom-touch,body.has-navbar-fixed-bottom-touch{padding-bottom:var(--navbar-height)}}@media screen and (min-width: 1024px){.navbar,.navbar-menu,.navbar-start,.navbar-end{align-items:stretch;display:flex}.navbar{min-height:var(--navbar-height)}.navbar.is-spaced{padding:var(--navbar-padding-vertical) var(--navbar-padding-horizontal)}.navbar.is-spaced .navbar-start,.navbar.is-spaced .navbar-end{align-items:center}.navbar.is-spaced a.navbar-item,.navbar.is-spaced .navbar-link{border-radius:var(--radius)}.navbar.is-transparent a.navbar-item:focus,.navbar.is-transparent a.navbar-item:hover,.navbar.is-transparent a.navbar-item.is-active,.navbar.is-transparent .navbar-link:focus,.navbar.is-transparent .navbar-link:hover,.navbar.is-transparent .navbar-link.is-active{background-color:transparent!important}.navbar.is-transparent .navbar-item.has-dropdown.is-active .navbar-link,.navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus .navbar-link,.navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus-within .navbar-link,.navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:hover .navbar-link{background-color:transparent!important}.navbar.is-transparent .navbar-dropdown a.navbar-item:focus,.navbar.is-transparent .navbar-dropdown a.navbar-item:hover{background-color:var(--navbar-dropdown-item-hover-background-color);color:var(--navbar-dropdown-item-hover-color)}.navbar.is-transparent .navbar-dropdown a.navbar-item.is-active{background-color:var(--navbar-dropdown-item-active-background-color);color:var(--navbar-dropdown-item-active-color)}.navbar-burger{display:none}.navbar-item,.navbar-link{align-items:center;display:flex}.navbar-item.has-dropdown{align-items:stretch}.navbar-item.has-dropdown-up .navbar-link:after{transform:rotate(135deg) translate(.25em,-.25em)}.navbar-item.has-dropdown-up .navbar-dropdown{border-bottom:var(--navbar-dropdown-border-top);border-radius:var(--navbar-dropdown-radius) var(--navbar-dropdown-radius) 0 0;border-top:none;bottom:100%;box-shadow:0 -8px 8px var(--navbar-shadow-color);top:auto}.navbar-item.is-active .navbar-dropdown,.navbar-item.is-hoverable:focus .navbar-dropdown,.navbar-item.is-hoverable:focus-within .navbar-dropdown,.navbar-item.is-hoverable:hover .navbar-dropdown{display:block}.navbar.is-spaced .navbar-item.is-active .navbar-dropdown,.navbar-item.is-active .navbar-dropdown.is-boxed,.navbar.is-spaced .navbar-item.is-hoverable:focus .navbar-dropdown,.navbar-item.is-hoverable:focus .navbar-dropdown.is-boxed,.navbar.is-spaced .navbar-item.is-hoverable:focus-within .navbar-dropdown,.navbar-item.is-hoverable:focus-within .navbar-dropdown.is-boxed,.navbar.is-spaced .navbar-item.is-hoverable:hover .navbar-dropdown,.navbar-item.is-hoverable:hover .navbar-dropdown.is-boxed{opacity:1;pointer-events:auto;transform:translateY(0)}.navbar-menu{flex-grow:1;flex-shrink:0}.navbar-start{justify-content:flex-start;margin-right:auto}.navbar-end{justify-content:flex-end;margin-left:auto}.navbar-dropdown{background-color:var(--navbar-dropdown-background-color);border-bottom-left-radius:var(--navbar-dropdown-radius);border-bottom-right-radius:var(--navbar-dropdown-radius);border-top:var(--navbar-dropdown-border-top);box-shadow:0 8px 8px var(--navbar-shadow-color);display:none;font-size:.875rem;left:0;min-width:100%;position:absolute;top:100%;z-index:var(--navbar-dropdown-z)}.navbar-dropdown .navbar-item{padding:var(--navbar-item-padding);white-space:nowrap}.navbar-dropdown a.navbar-item{padding-right:3rem}.navbar-dropdown a.navbar-item:focus,.navbar-dropdown a.navbar-item:hover{background-color:var(--navbar-dropdown-item-hover-background-color);color:var(--navbar-dropdown-item-hover-color)}.navbar-dropdown a.navbar-item.is-active{background-color:var(--navbar-dropdown-item-active-background-color)!important;color:var(--navbar-dropdown-item-active-color)}.navbar.is-spaced .navbar-dropdown,.navbar-dropdown.is-boxed{border-radius:var(--navbar-dropdown-boxed-radius);border-top:none;box-shadow:var(--navbar-dropdown-boxed-shadow);display:block;opacity:0;pointer-events:none;top:calc(100% + var(--navbar-dropdown-offset));transform:translateY(-5px);transition-duration:var(--speed);transition-property:opacity,transform}.navbar-dropdown.is-right{left:auto;right:0}.navbar-divider{display:block}.navbar>.container .navbar-brand,.container>.navbar .navbar-brand{margin-left:-.75rem}.navbar>.container .navbar-menu,.container>.navbar .navbar-menu{margin-right:-.75rem}.navbar.is-fixed-bottom-desktop,.navbar.is-fixed-top-desktop{left:0;position:fixed;right:0;z-index:var(--navbar-fixed-z)}.navbar.is-fixed-bottom-desktop{bottom:0}.navbar.is-fixed-bottom-desktop.has-shadow{box-shadow:0 -2px 3px var(--navbar-shadow-color)}.navbar.is-fixed-top-desktop{top:0}html.has-navbar-fixed-top-desktop,body.has-navbar-fixed-top-desktop{padding-top:var(--navbar-height)}html.has-navbar-fixed-bottom-desktop,body.has-navbar-fixed-bottom-desktop{padding-bottom:var(--navbar-height)}html.has-spaced-navbar-fixed-top,body.has-spaced-navbar-fixed-top{padding-top:calc(var(--navbar-height) + var(--navbar-padding-vertical) * 2)}html.has-spaced-navbar-fixed-bottom,body.has-spaced-navbar-fixed-bottom{padding-bottom:calc(var(--navbar-height) + var(--navbar-padding-vertical) * 2)}a.navbar-item.is-active,.navbar-link.is-active{color:var(--navbar-item-active-color)}a.navbar-item.is-active:not(:focus,:hover),.navbar-link.is-active:not(:focus,:hover){background-color:var(--navbar-item-active-background-color)}.navbar-item.has-dropdown:focus .navbar-link,.navbar-item.has-dropdown:hover .navbar-link,.navbar-item.has-dropdown.is-active .navbar-link{background-color:var(--navbar-item-hover-background-color)}}.hero.is-fullheight-with-navbar{min-height:calc(100vh - var(--navbar-height))}:root{--pagination-color: var(--text-strong);--pagination-border-color: var(--border);--pagination-font-size: var(--size-normal);--pagination-margin: -.25rem;--pagination-min-width: var(--control-height);--pagination-item-font-size: 1em;--pagination-item-margin: .25rem;--pagination-item-padding-left: .5em;--pagination-item-padding-right: .5em;--pagination-nav-padding-left: .75em;--pagination-nav-padding-right: .75em;--pagination-hover-color: var(--link-hover);--pagination-hover-border-color: var(--link-hover-border);--pagination-focus-color: var(--link-focus);--pagination-focus-border-color: var(--link-focus-border);--pagination-disabled-color: var(--text-light);--pagination-disabled-background-color: var(--border);--pagination-disabled-border-color: var(--border);--pagination-current-color: var(--link-invert);--pagination-current-background-color: var(--link);--pagination-current-border-color: var(--link);--pagination-ellipsis-color: var(--grey-light);--pagination-shadow-inset: inset 0 1px 2px rgba(var(--scheme-invert-rgb), .2)}.pagination{font-size:var(--pagination-font-size);margin:var(--pagination-margin)}.pagination.is-small{--pagination-font-size: var(--size-small)}.pagination.is-medium{--pagination-font-size: var(--size-medium)}.pagination.is-large{--pagination-font-size: var(--size-large)}.pagination.is-rounded .pagination-previous,.pagination.is-rounded .pagination-next{padding-left:1em;padding-right:1em;border-radius:var(--radius-rounded)}.pagination.is-rounded .pagination-link{border-radius:var(--radius-rounded)}.pagination,.pagination-list{align-items:center;display:flex;justify-content:center;text-align:center}.pagination-previous,.pagination-next,.pagination-link,.pagination-ellipsis{font-size:var(--pagination-item-font-size);justify-content:center;margin:var(--pagination-item-margin);padding-left:var(--pagination-item-padding-left);padding-right:var(--pagination-item-padding-right);text-align:center}.pagination-previous,.pagination-next,.pagination-link{border-color:var(--pagination-border-color);color:var(--pagination-color);min-width:var(--pagination-min-width)}.pagination-previous:hover,.pagination-next:hover,.pagination-link:hover{border-color:var(--pagination-hover-border-color);color:var(--pagination-hover-color)}.pagination-previous:focus,.pagination-next:focus,.pagination-link:focus{border-color:var(--pagination-focus-border-color)}.pagination-previous:active,.pagination-next:active,.pagination-link:active{box-shadow:var(--pagination-shadow-inset)}.pagination-previous[disabled],.pagination-previous.is-disabled,.pagination-next[disabled],.pagination-next.is-disabled,.pagination-link[disabled],.pagination-link.is-disabled{background-color:var(--pagination-disabled-background-color);border-color:var(--pagination-disabled-border-color);box-shadow:none;color:var(--pagination-disabled-color);opacity:.5}.pagination-previous,.pagination-next{padding-left:var(--pagination-nav-padding-left);padding-right:var(--pagination-nav-padding-right);white-space:nowrap}.pagination-link.is-current{background-color:var(--pagination-current-background-color);border-color:var(--pagination-current-border-color);color:var(--pagination-current-color)}.pagination-ellipsis{color:var(--pagination-ellipsis-color);pointer-events:none}.pagination-list{flex-wrap:wrap}.pagination-list li{list-style:none}@media screen and (max-width: 768px){.pagination{flex-wrap:wrap}.pagination-previous,.pagination-next,.pagination-list li{flex-grow:1;flex-shrink:1}}@media screen and (min-width: 769px),print{.pagination-list{flex-grow:1;flex-shrink:1;justify-content:flex-start;order:1}.pagination-previous,.pagination-next,.pagination-link,.pagination-ellipsis{margin-bottom:0;margin-top:0}.pagination-previous{order:2}.pagination-next{order:3}.pagination{justify-content:space-between;margin-bottom:0;margin-top:0}.pagination.is-centered .pagination-previous{order:1}.pagination.is-centered .pagination-list{justify-content:center;order:2}.pagination.is-centered .pagination-next{order:3}.pagination.is-right .pagination-previous{order:1}.pagination.is-right .pagination-next{order:2}.pagination.is-right .pagination-list{justify-content:flex-end;order:3}}:root{--panel-font-size: var(--size-normal);--panel-margin: var(--block-spacing);--panel-item-border: 1px solid var(--border-light);--panel-radius: var(--radius-large);--panel-shadow: var(--shadow);--panel-heading-background-color: var(--border-light);--panel-heading-color: var(--text-strong);--panel-heading-line-height: 1.25;--panel-heading-padding: .75em 1em;--panel-heading-size: 1.25em;--panel-heading-weight: var(--weight-bold);--panel-tabs-font-size: .875em;--panel-tab-border-bottom: 1px solid var(--border);--panel-tab-active-border-bottom-color: var(--link-active-border);--panel-tab-active-color: var(--link-active);--panel-list-item-color: var(--text);--panel-list-item-hover-color: var(--link);--panel-block-color: var(--text-strong);--panel-block-hover-background-color: var(--background);--panel-block-active-border-left-color: var(--link);--panel-block-active-color: var(--link-active);--panel-block-active-icon-color: var(--link);--panel-icon-color: var(--text-light)}.panel{border-radius:var(--panel-radius);box-shadow:var(--panel-shadow);font-size:var(--panel-font-size)}.panel:not(:last-child){margin-bottom:var(--panel-margin)}.panel.is-white .panel-heading{background-color:var(--white);color:var(--white-invert)}.panel.is-white .panel-tabs a.is-active{border-bottom-color:var(--white)}.panel.is-white .panel-block.is-active .panel-icon{color:var(--white)}.panel.is-black .panel-heading{background-color:var(--black);color:var(--black-invert)}.panel.is-black .panel-tabs a.is-active{border-bottom-color:var(--black)}.panel.is-black .panel-block.is-active .panel-icon{color:var(--black)}.panel.is-light .panel-heading{background-color:var(--light);color:var(--light-invert)}.panel.is-light .panel-tabs a.is-active{border-bottom-color:var(--light)}.panel.is-light .panel-block.is-active .panel-icon{color:var(--light)}.panel.is-dark .panel-heading{background-color:var(--dark);color:var(--dark-invert)}.panel.is-dark .panel-tabs a.is-active{border-bottom-color:var(--dark)}.panel.is-dark .panel-block.is-active .panel-icon{color:var(--dark)}.panel.is-primary .panel-heading{background-color:var(--primary);color:var(--primary-invert)}.panel.is-primary .panel-tabs a.is-active{border-bottom-color:var(--primary)}.panel.is-primary .panel-block.is-active .panel-icon{color:var(--primary)}.panel.is-secondary .panel-heading{background-color:var(--secondary);color:var(--secondary-invert)}.panel.is-secondary .panel-tabs a.is-active{border-bottom-color:var(--secondary)}.panel.is-secondary .panel-block.is-active .panel-icon{color:var(--secondary)}.panel.is-link .panel-heading{background-color:var(--link);color:var(--link-invert)}.panel.is-link .panel-tabs a.is-active{border-bottom-color:var(--link)}.panel.is-link .panel-block.is-active .panel-icon{color:var(--link)}.panel.is-info .panel-heading{background-color:var(--info);color:var(--info-invert)}.panel.is-info .panel-tabs a.is-active{border-bottom-color:var(--info)}.panel.is-info .panel-block.is-active .panel-icon{color:var(--info)}.panel.is-success .panel-heading{background-color:var(--success);color:var(--success-invert)}.panel.is-success .panel-tabs a.is-active{border-bottom-color:var(--success)}.panel.is-success .panel-block.is-active .panel-icon{color:var(--success)}.panel.is-warning .panel-heading{background-color:var(--warning);color:var(--warning-invert)}.panel.is-warning .panel-tabs a.is-active{border-bottom-color:var(--warning)}.panel.is-warning .panel-block.is-active .panel-icon{color:var(--warning)}.panel.is-danger .panel-heading{background-color:var(--danger);color:var(--danger-invert)}.panel.is-danger .panel-tabs a.is-active{border-bottom-color:var(--danger)}.panel.is-danger .panel-block.is-active .panel-icon{color:var(--danger)}.panel-tabs:not(:last-child),.panel-block:not(:last-child){border-bottom:var(--panel-item-border)}.panel-heading{background-color:var(--panel-heading-background-color);border-radius:var(--panel-radius) var(--panel-radius) 0 0;color:var(--panel-heading-color);font-size:var(--panel-heading-size);font-weight:var(--panel-heading-weight);line-height:var(--panel-heading-line-height);padding:var(--panel-heading-padding)}.panel-tabs{align-items:flex-end;display:flex;font-size:var(--panel-tabs-font-size);justify-content:center}.panel-tabs a{border-bottom:var(--panel-tab-border-bottom);margin-bottom:-1px;padding:.5em}.panel-tabs a.is-active{border-bottom-color:var(--panel-tab-active-border-bottom-color);color:var(--panel-tab-active-color)}.panel-list a{color:var(--panel-list-item-color)}.panel-list a:hover{color:var(--panel-list-item-hover-color)}.panel-block{align-items:center;color:var(--panel-block-color);display:flex;justify-content:flex-start;padding:.5em .75em}.panel-block input[type=checkbox]{margin-right:.75em}.panel-block>.control{flex-grow:1;flex-shrink:1;width:100%}.panel-block.is-wrapped{flex-wrap:wrap}.panel-block.is-active{border-left-color:var(--panel-block-active-border-left-color);color:var(--panel-block-active-color)}.panel-block.is-active .panel-icon{color:var(--panel-block-active-icon-color)}.panel-block:last-child{border-bottom-left-radius:var(--panel-radius);border-bottom-right-radius:var(--panel-radius)}a.panel-block,label.panel-block{cursor:pointer}a.panel-block:hover,label.panel-block:hover{background-color:var(--panel-block-hover-background-color)}.panel-icon{--fa-dimensions: 1em;--fa-font-size: 14px;display:inline-block;font-size:var(--fa-font-size);height:var(--fa-dimensions);line-height:var(--fa-dimensions);text-align:center;vertical-align:top;width:var(--fa-dimensions);color:var(--panel-icon-color);margin-right:.75em}.panel-icon .fa{font-size:inherit;line-height:inherit}:root{--tabs-font-size: var(--size-normal);--tabs-border-bottom-color: var(--border);--tabs-border-bottom-style: solid;--tabs-border-bottom-width: 1px;--tabs-link-color: var(--text);--tabs-link-hover-border-bottom-color: var(--text-strong);--tabs-link-hover-color: var(--text-strong);--tabs-link-active-border-bottom-color: var(--link);--tabs-link-active-color: var(--link);--tabs-link-padding: .5em 1em;--tabs-boxed-link-radius: var(--radius);--tabs-boxed-link-hover-background-color: var(--background);--tabs-boxed-link-hover-border-bottom-color: var(--border);--tabs-boxed-link-active-background-color: var(--scheme-main);--tabs-boxed-link-active-border-color: var(--border);--tabs-boxed-link-active-border-bottom-color: transparent;--tabs-toggle-link-border-color: var(--border);--tabs-toggle-link-border-style: solid;--tabs-toggle-link-border-width: 1px;--tabs-toggle-link-hover-background-color: var(--background);--tabs-toggle-link-hover-border-color: var(--border-hover);--tabs-toggle-link-radius: var(--radius);--tabs-toggle-link-active-background-color: var(--link);--tabs-toggle-link-active-border-color: var(--link);--tabs-toggle-link-active-color: var(--link-invert)}.tabs{-webkit-overflow-scrolling:touch;align-items:stretch;display:flex;font-size:var(--tabs-font-size);justify-content:space-between;overflow:hidden;overflow-x:auto;white-space:nowrap}.tabs a{align-items:center;border-bottom-color:var(--tabs-border-bottom-color);border-bottom-style:var(--tabs-border-bottom-style);border-bottom-width:var(--tabs-border-bottom-width);color:var(--tabs-link-color);display:flex;justify-content:center;margin-bottom:calc(-1 * var(--tabs-border-bottom-width));padding:var(--tabs-link-padding);vertical-align:top}.tabs a:hover{border-bottom-color:var(--tabs-link-hover-border-bottom-color);color:var(--tabs-link-hover-color)}.tabs li{display:block}.tabs li.is-active a{border-bottom-color:var(--tabs-link-active-border-bottom-color);color:var(--tabs-link-active-color)}.tabs ul{align-items:center;border-bottom-color:var(--tabs-border-bottom-color);border-bottom-style:var(--tabs-border-bottom-style);border-bottom-width:var(--tabs-border-bottom-width);display:flex;flex-grow:1;flex-shrink:0;justify-content:flex-start}.tabs ul.is-left{padding-right:.75em}.tabs ul.is-center{flex:none;justify-content:center;padding-left:.75em;padding-right:.75em}.tabs ul.is-right{justify-content:flex-end;padding-left:.75em}.tabs .icon:first-child{margin-right:.5em}.tabs .icon:last-child{margin-left:.5em}.tabs.is-centered ul{justify-content:center}.tabs.is-right ul{justify-content:flex-end}.tabs.is-boxed a{border:1px solid transparent;border-radius:var(--tabs-boxed-link-radius) var(--tabs-boxed-link-radius) 0 0}.tabs.is-boxed a:hover{background-color:var(--tabs-boxed-link-hover-background-color);border-bottom-color:var(--tabs-boxed-link-hover-border-bottom-color)}.tabs.is-boxed li.is-active a{background-color:var(--tabs-boxed-link-active-background-color);border-color:var(--tabs-boxed-link-active-border-color);border-bottom-color:var(--tabs-boxed-link-active-border-bottom-color)!important}.tabs.is-fullwidth li{flex-grow:1;flex-shrink:0}.tabs.is-toggle a{border-color:var(--tabs-toggle-link-border-color);border-style:var(--tabs-toggle-link-border-style);border-width:var(--tabs-toggle-link-border-width);margin-bottom:0;position:relative}.tabs.is-toggle a:hover{background-color:var(--tabs-toggle-link-hover-background-color);border-color:var(--tabs-toggle-link-hover-border-color);z-index:2}.tabs.is-toggle li+li{margin-left:calc(-1 * var(--tabs-toggle-link-border-width))}.tabs.is-toggle li:first-child a{border-top-left-radius:var(--tabs-toggle-link-radius);border-bottom-left-radius:var(--tabs-toggle-link-radius)}.tabs.is-toggle li:last-child a{border-top-right-radius:var(--tabs-toggle-link-radius);border-bottom-right-radius:var(--tabs-toggle-link-radius)}.tabs.is-toggle li.is-active a{background-color:var(--tabs-toggle-link-active-background-color);border-color:var(--tabs-toggle-link-active-border-color);color:var(--tabs-toggle-link-active-color);z-index:1}.tabs.is-toggle ul{border-bottom:none}.tabs.is-toggle.is-toggle-rounded li:first-child a{border-bottom-left-radius:var(--radius-rounded);border-top-left-radius:var(--radius-rounded);padding-left:1.25em}.tabs.is-toggle.is-toggle-rounded li:last-child a{border-bottom-right-radius:var(--radius-rounded);border-top-right-radius:var(--radius-rounded);padding-right:1.25em}.tabs.is-small{--tabs-font-size: var(--size-small)}.tabs.is-medium{--tabs-font-size: var(--size-medium)}.tabs.is-large{--tabs-font-size: var(--size-large)}.column{display:block;flex-basis:0;flex-grow:1;flex-shrink:1;padding:.75rem}.columns.is-mobile>.column.is-narrow{flex:none;width:unset}.columns.is-mobile>.column.is-full{flex:none;width:100%}.columns.is-mobile>.column.is-three-quarters{flex:none;width:75%}.columns.is-mobile>.column.is-two-thirds{flex:none;width:66.6666666667%}.columns.is-mobile>.column.is-half{flex:none;width:50%}.columns.is-mobile>.column.is-one-third{flex:none;width:33.3333333333%}.columns.is-mobile>.column.is-one-quarter{flex:none;width:25%}.columns.is-mobile>.column.is-one-fifth{flex:none;width:20%}.columns.is-mobile>.column.is-two-fifths{flex:none;width:40%}.columns.is-mobile>.column.is-three-fifths{flex:none;width:60%}.columns.is-mobile>.column.is-four-fifths{flex:none;width:80%}.columns.is-mobile>.column.is-offset-full{margin-left:100%}.columns.is-mobile>.column.is-offset-three-quarters{margin-left:75%}.columns.is-mobile>.column.is-offset-two-thirds{margin-left:66.6666666667%}.columns.is-mobile>.column.is-offset-half{margin-left:50%}.columns.is-mobile>.column.is-offset-one-third{margin-left:33.3333333333%}.columns.is-mobile>.column.is-offset-one-quarter{margin-left:25%}.columns.is-mobile>.column.is-offset-one-fifth{margin-left:20%}.columns.is-mobile>.column.is-offset-two-fifths{margin-left:40%}.columns.is-mobile>.column.is-offset-three-fifths{margin-left:60%}.columns.is-mobile>.column.is-offset-four-fifths{margin-left:80%}.columns.is-mobile>.column.is-0{flex:none;width:0%}.columns.is-mobile>.column.is-offset-0{margin-left:0%}.columns.is-mobile>.column.is-1{flex:none;width:8.3333333333%}.columns.is-mobile>.column.is-offset-1{margin-left:8.3333333333%}.columns.is-mobile>.column.is-2{flex:none;width:16.6666666667%}.columns.is-mobile>.column.is-offset-2{margin-left:16.6666666667%}.columns.is-mobile>.column.is-3{flex:none;width:25%}.columns.is-mobile>.column.is-offset-3{margin-left:25%}.columns.is-mobile>.column.is-4{flex:none;width:33.3333333333%}.columns.is-mobile>.column.is-offset-4{margin-left:33.3333333333%}.columns.is-mobile>.column.is-5{flex:none;width:41.6666666667%}.columns.is-mobile>.column.is-offset-5{margin-left:41.6666666667%}.columns.is-mobile>.column.is-6{flex:none;width:50%}.columns.is-mobile>.column.is-offset-6{margin-left:50%}.columns.is-mobile>.column.is-7{flex:none;width:58.3333333333%}.columns.is-mobile>.column.is-offset-7{margin-left:58.3333333333%}.columns.is-mobile>.column.is-8{flex:none;width:66.6666666667%}.columns.is-mobile>.column.is-offset-8{margin-left:66.6666666667%}.columns.is-mobile>.column.is-9{flex:none;width:75%}.columns.is-mobile>.column.is-offset-9{margin-left:75%}.columns.is-mobile>.column.is-10{flex:none;width:83.3333333333%}.columns.is-mobile>.column.is-offset-10{margin-left:83.3333333333%}.columns.is-mobile>.column.is-11{flex:none;width:91.6666666667%}.columns.is-mobile>.column.is-offset-11{margin-left:91.6666666667%}.columns.is-mobile>.column.is-12{flex:none;width:100%}.columns.is-mobile>.column.is-offset-12{margin-left:100%}@media screen and (max-width: 768px){.column.is-narrow-mobile{flex:none;width:unset}.column.is-full-mobile{flex:none;width:100%}.column.is-three-quarters-mobile{flex:none;width:75%}.column.is-two-thirds-mobile{flex:none;width:66.6666666667%}.column.is-half-mobile{flex:none;width:50%}.column.is-one-third-mobile{flex:none;width:33.3333333333%}.column.is-one-quarter-mobile{flex:none;width:25%}.column.is-one-fifth-mobile{flex:none;width:20%}.column.is-two-fifths-mobile{flex:none;width:40%}.column.is-three-fifths-mobile{flex:none;width:60%}.column.is-four-fifths-mobile{flex:none;width:80%}.column.is-offset-full-mobile{margin-left:100%}.column.is-offset-three-quarters-mobile{margin-left:75%}.column.is-offset-two-thirds-mobile{margin-left:66.6666666667%}.column.is-offset-half-mobile{margin-left:50%}.column.is-offset-one-third-mobile{margin-left:33.3333333333%}.column.is-offset-one-quarter-mobile{margin-left:25%}.column.is-offset-one-fifth-mobile{margin-left:20%}.column.is-offset-two-fifths-mobile{margin-left:40%}.column.is-offset-three-fifths-mobile{margin-left:60%}.column.is-offset-four-fifths-mobile{margin-left:80%}.column.is-0-mobile{flex:none;width:0%}.column.is-offset-0-mobile{margin-left:0%}.column.is-1-mobile{flex:none;width:8.3333333333%}.column.is-offset-1-mobile{margin-left:8.3333333333%}.column.is-2-mobile{flex:none;width:16.6666666667%}.column.is-offset-2-mobile{margin-left:16.6666666667%}.column.is-3-mobile{flex:none;width:25%}.column.is-offset-3-mobile{margin-left:25%}.column.is-4-mobile{flex:none;width:33.3333333333%}.column.is-offset-4-mobile{margin-left:33.3333333333%}.column.is-5-mobile{flex:none;width:41.6666666667%}.column.is-offset-5-mobile{margin-left:41.6666666667%}.column.is-6-mobile{flex:none;width:50%}.column.is-offset-6-mobile{margin-left:50%}.column.is-7-mobile{flex:none;width:58.3333333333%}.column.is-offset-7-mobile{margin-left:58.3333333333%}.column.is-8-mobile{flex:none;width:66.6666666667%}.column.is-offset-8-mobile{margin-left:66.6666666667%}.column.is-9-mobile{flex:none;width:75%}.column.is-offset-9-mobile{margin-left:75%}.column.is-10-mobile{flex:none;width:83.3333333333%}.column.is-offset-10-mobile{margin-left:83.3333333333%}.column.is-11-mobile{flex:none;width:91.6666666667%}.column.is-offset-11-mobile{margin-left:91.6666666667%}.column.is-12-mobile{flex:none;width:100%}.column.is-offset-12-mobile{margin-left:100%}}@media screen and (min-width: 769px),print{.column.is-narrow,.column.is-narrow-tablet{flex:none;width:unset}.column.is-full,.column.is-full-tablet{flex:none;width:100%}.column.is-three-quarters,.column.is-three-quarters-tablet{flex:none;width:75%}.column.is-two-thirds,.column.is-two-thirds-tablet{flex:none;width:66.6666666667%}.column.is-half,.column.is-half-tablet{flex:none;width:50%}.column.is-one-third,.column.is-one-third-tablet{flex:none;width:33.3333333333%}.column.is-one-quarter,.column.is-one-quarter-tablet{flex:none;width:25%}.column.is-one-fifth,.column.is-one-fifth-tablet{flex:none;width:20%}.column.is-two-fifths,.column.is-two-fifths-tablet{flex:none;width:40%}.column.is-three-fifths,.column.is-three-fifths-tablet{flex:none;width:60%}.column.is-four-fifths,.column.is-four-fifths-tablet{flex:none;width:80%}.column.is-offset-full,.column.is-offset-full-tablet{margin-left:100%}.column.is-offset-three-quarters,.column.is-offset-three-quarters-tablet{margin-left:75%}.column.is-offset-two-thirds,.column.is-offset-two-thirds-tablet{margin-left:66.6666666667%}.column.is-offset-half,.column.is-offset-half-tablet{margin-left:50%}.column.is-offset-one-third,.column.is-offset-one-third-tablet{margin-left:33.3333333333%}.column.is-offset-one-quarter,.column.is-offset-one-quarter-tablet{margin-left:25%}.column.is-offset-one-fifth,.column.is-offset-one-fifth-tablet{margin-left:20%}.column.is-offset-two-fifths,.column.is-offset-two-fifths-tablet{margin-left:40%}.column.is-offset-three-fifths,.column.is-offset-three-fifths-tablet{margin-left:60%}.column.is-offset-four-fifths,.column.is-offset-four-fifths-tablet{margin-left:80%}.column.is-0,.column.is-0-tablet{flex:none;width:0%}.column.is-offset-0,.column.is-offset-0-tablet{margin-left:0%}.column.is-1,.column.is-1-tablet{flex:none;width:8.3333333333%}.column.is-offset-1,.column.is-offset-1-tablet{margin-left:8.3333333333%}.column.is-2,.column.is-2-tablet{flex:none;width:16.6666666667%}.column.is-offset-2,.column.is-offset-2-tablet{margin-left:16.6666666667%}.column.is-3,.column.is-3-tablet{flex:none;width:25%}.column.is-offset-3,.column.is-offset-3-tablet{margin-left:25%}.column.is-4,.column.is-4-tablet{flex:none;width:33.3333333333%}.column.is-offset-4,.column.is-offset-4-tablet{margin-left:33.3333333333%}.column.is-5,.column.is-5-tablet{flex:none;width:41.6666666667%}.column.is-offset-5,.column.is-offset-5-tablet{margin-left:41.6666666667%}.column.is-6,.column.is-6-tablet{flex:none;width:50%}.column.is-offset-6,.column.is-offset-6-tablet{margin-left:50%}.column.is-7,.column.is-7-tablet{flex:none;width:58.3333333333%}.column.is-offset-7,.column.is-offset-7-tablet{margin-left:58.3333333333%}.column.is-8,.column.is-8-tablet{flex:none;width:66.6666666667%}.column.is-offset-8,.column.is-offset-8-tablet{margin-left:66.6666666667%}.column.is-9,.column.is-9-tablet{flex:none;width:75%}.column.is-offset-9,.column.is-offset-9-tablet{margin-left:75%}.column.is-10,.column.is-10-tablet{flex:none;width:83.3333333333%}.column.is-offset-10,.column.is-offset-10-tablet{margin-left:83.3333333333%}.column.is-11,.column.is-11-tablet{flex:none;width:91.6666666667%}.column.is-offset-11,.column.is-offset-11-tablet{margin-left:91.6666666667%}.column.is-12,.column.is-12-tablet{flex:none;width:100%}.column.is-offset-12,.column.is-offset-12-tablet{margin-left:100%}}@media screen and (max-width: 1023px){.column.is-narrow-touch{flex:none;width:unset}.column.is-full-touch{flex:none;width:100%}.column.is-three-quarters-touch{flex:none;width:75%}.column.is-two-thirds-touch{flex:none;width:66.6666666667%}.column.is-half-touch{flex:none;width:50%}.column.is-one-third-touch{flex:none;width:33.3333333333%}.column.is-one-quarter-touch{flex:none;width:25%}.column.is-one-fifth-touch{flex:none;width:20%}.column.is-two-fifths-touch{flex:none;width:40%}.column.is-three-fifths-touch{flex:none;width:60%}.column.is-four-fifths-touch{flex:none;width:80%}.column.is-offset-full-touch{margin-left:100%}.column.is-offset-three-quarters-touch{margin-left:75%}.column.is-offset-two-thirds-touch{margin-left:66.6666666667%}.column.is-offset-half-touch{margin-left:50%}.column.is-offset-one-third-touch{margin-left:33.3333333333%}.column.is-offset-one-quarter-touch{margin-left:25%}.column.is-offset-one-fifth-touch{margin-left:20%}.column.is-offset-two-fifths-touch{margin-left:40%}.column.is-offset-three-fifths-touch{margin-left:60%}.column.is-offset-four-fifths-touch{margin-left:80%}.column.is-0-touch{flex:none;width:0%}.column.is-offset-0-touch{margin-left:0%}.column.is-1-touch{flex:none;width:8.3333333333%}.column.is-offset-1-touch{margin-left:8.3333333333%}.column.is-2-touch{flex:none;width:16.6666666667%}.column.is-offset-2-touch{margin-left:16.6666666667%}.column.is-3-touch{flex:none;width:25%}.column.is-offset-3-touch{margin-left:25%}.column.is-4-touch{flex:none;width:33.3333333333%}.column.is-offset-4-touch{margin-left:33.3333333333%}.column.is-5-touch{flex:none;width:41.6666666667%}.column.is-offset-5-touch{margin-left:41.6666666667%}.column.is-6-touch{flex:none;width:50%}.column.is-offset-6-touch{margin-left:50%}.column.is-7-touch{flex:none;width:58.3333333333%}.column.is-offset-7-touch{margin-left:58.3333333333%}.column.is-8-touch{flex:none;width:66.6666666667%}.column.is-offset-8-touch{margin-left:66.6666666667%}.column.is-9-touch{flex:none;width:75%}.column.is-offset-9-touch{margin-left:75%}.column.is-10-touch{flex:none;width:83.3333333333%}.column.is-offset-10-touch{margin-left:83.3333333333%}.column.is-11-touch{flex:none;width:91.6666666667%}.column.is-offset-11-touch{margin-left:91.6666666667%}.column.is-12-touch{flex:none;width:100%}.column.is-offset-12-touch{margin-left:100%}}@media screen and (min-width: 1024px){.column.is-narrow-desktop{flex:none;width:unset}.column.is-full-desktop{flex:none;width:100%}.column.is-three-quarters-desktop{flex:none;width:75%}.column.is-two-thirds-desktop{flex:none;width:66.6666666667%}.column.is-half-desktop{flex:none;width:50%}.column.is-one-third-desktop{flex:none;width:33.3333333333%}.column.is-one-quarter-desktop{flex:none;width:25%}.column.is-one-fifth-desktop{flex:none;width:20%}.column.is-two-fifths-desktop{flex:none;width:40%}.column.is-three-fifths-desktop{flex:none;width:60%}.column.is-four-fifths-desktop{flex:none;width:80%}.column.is-offset-full-desktop{margin-left:100%}.column.is-offset-three-quarters-desktop{margin-left:75%}.column.is-offset-two-thirds-desktop{margin-left:66.6666666667%}.column.is-offset-half-desktop{margin-left:50%}.column.is-offset-one-third-desktop{margin-left:33.3333333333%}.column.is-offset-one-quarter-desktop{margin-left:25%}.column.is-offset-one-fifth-desktop{margin-left:20%}.column.is-offset-two-fifths-desktop{margin-left:40%}.column.is-offset-three-fifths-desktop{margin-left:60%}.column.is-offset-four-fifths-desktop{margin-left:80%}.column.is-0-desktop{flex:none;width:0%}.column.is-offset-0-desktop{margin-left:0%}.column.is-1-desktop{flex:none;width:8.3333333333%}.column.is-offset-1-desktop{margin-left:8.3333333333%}.column.is-2-desktop{flex:none;width:16.6666666667%}.column.is-offset-2-desktop{margin-left:16.6666666667%}.column.is-3-desktop{flex:none;width:25%}.column.is-offset-3-desktop{margin-left:25%}.column.is-4-desktop{flex:none;width:33.3333333333%}.column.is-offset-4-desktop{margin-left:33.3333333333%}.column.is-5-desktop{flex:none;width:41.6666666667%}.column.is-offset-5-desktop{margin-left:41.6666666667%}.column.is-6-desktop{flex:none;width:50%}.column.is-offset-6-desktop{margin-left:50%}.column.is-7-desktop{flex:none;width:58.3333333333%}.column.is-offset-7-desktop{margin-left:58.3333333333%}.column.is-8-desktop{flex:none;width:66.6666666667%}.column.is-offset-8-desktop{margin-left:66.6666666667%}.column.is-9-desktop{flex:none;width:75%}.column.is-offset-9-desktop{margin-left:75%}.column.is-10-desktop{flex:none;width:83.3333333333%}.column.is-offset-10-desktop{margin-left:83.3333333333%}.column.is-11-desktop{flex:none;width:91.6666666667%}.column.is-offset-11-desktop{margin-left:91.6666666667%}.column.is-12-desktop{flex:none;width:100%}.column.is-offset-12-desktop{margin-left:100%}}@media screen and (min-width: 1216px){.column.is-narrow-widescreen{flex:none;width:unset}.column.is-full-widescreen{flex:none;width:100%}.column.is-three-quarters-widescreen{flex:none;width:75%}.column.is-two-thirds-widescreen{flex:none;width:66.6666666667%}.column.is-half-widescreen{flex:none;width:50%}.column.is-one-third-widescreen{flex:none;width:33.3333333333%}.column.is-one-quarter-widescreen{flex:none;width:25%}.column.is-one-fifth-widescreen{flex:none;width:20%}.column.is-two-fifths-widescreen{flex:none;width:40%}.column.is-three-fifths-widescreen{flex:none;width:60%}.column.is-four-fifths-widescreen{flex:none;width:80%}.column.is-offset-full-widescreen{margin-left:100%}.column.is-offset-three-quarters-widescreen{margin-left:75%}.column.is-offset-two-thirds-widescreen{margin-left:66.6666666667%}.column.is-offset-half-widescreen{margin-left:50%}.column.is-offset-one-third-widescreen{margin-left:33.3333333333%}.column.is-offset-one-quarter-widescreen{margin-left:25%}.column.is-offset-one-fifth-widescreen{margin-left:20%}.column.is-offset-two-fifths-widescreen{margin-left:40%}.column.is-offset-three-fifths-widescreen{margin-left:60%}.column.is-offset-four-fifths-widescreen{margin-left:80%}.column.is-0-widescreen{flex:none;width:0%}.column.is-offset-0-widescreen{margin-left:0%}.column.is-1-widescreen{flex:none;width:8.3333333333%}.column.is-offset-1-widescreen{margin-left:8.3333333333%}.column.is-2-widescreen{flex:none;width:16.6666666667%}.column.is-offset-2-widescreen{margin-left:16.6666666667%}.column.is-3-widescreen{flex:none;width:25%}.column.is-offset-3-widescreen{margin-left:25%}.column.is-4-widescreen{flex:none;width:33.3333333333%}.column.is-offset-4-widescreen{margin-left:33.3333333333%}.column.is-5-widescreen{flex:none;width:41.6666666667%}.column.is-offset-5-widescreen{margin-left:41.6666666667%}.column.is-6-widescreen{flex:none;width:50%}.column.is-offset-6-widescreen{margin-left:50%}.column.is-7-widescreen{flex:none;width:58.3333333333%}.column.is-offset-7-widescreen{margin-left:58.3333333333%}.column.is-8-widescreen{flex:none;width:66.6666666667%}.column.is-offset-8-widescreen{margin-left:66.6666666667%}.column.is-9-widescreen{flex:none;width:75%}.column.is-offset-9-widescreen{margin-left:75%}.column.is-10-widescreen{flex:none;width:83.3333333333%}.column.is-offset-10-widescreen{margin-left:83.3333333333%}.column.is-11-widescreen{flex:none;width:91.6666666667%}.column.is-offset-11-widescreen{margin-left:91.6666666667%}.column.is-12-widescreen{flex:none;width:100%}.column.is-offset-12-widescreen{margin-left:100%}}@media screen and (min-width: 1408px){.column.is-narrow-fullhd{flex:none;width:unset}.column.is-full-fullhd{flex:none;width:100%}.column.is-three-quarters-fullhd{flex:none;width:75%}.column.is-two-thirds-fullhd{flex:none;width:66.6666666667%}.column.is-half-fullhd{flex:none;width:50%}.column.is-one-third-fullhd{flex:none;width:33.3333333333%}.column.is-one-quarter-fullhd{flex:none;width:25%}.column.is-one-fifth-fullhd{flex:none;width:20%}.column.is-two-fifths-fullhd{flex:none;width:40%}.column.is-three-fifths-fullhd{flex:none;width:60%}.column.is-four-fifths-fullhd{flex:none;width:80%}.column.is-offset-full-fullhd{margin-left:100%}.column.is-offset-three-quarters-fullhd{margin-left:75%}.column.is-offset-two-thirds-fullhd{margin-left:66.6666666667%}.column.is-offset-half-fullhd{margin-left:50%}.column.is-offset-one-third-fullhd{margin-left:33.3333333333%}.column.is-offset-one-quarter-fullhd{margin-left:25%}.column.is-offset-one-fifth-fullhd{margin-left:20%}.column.is-offset-two-fifths-fullhd{margin-left:40%}.column.is-offset-three-fifths-fullhd{margin-left:60%}.column.is-offset-four-fifths-fullhd{margin-left:80%}.column.is-0-fullhd{flex:none;width:0%}.column.is-offset-0-fullhd{margin-left:0%}.column.is-1-fullhd{flex:none;width:8.3333333333%}.column.is-offset-1-fullhd{margin-left:8.3333333333%}.column.is-2-fullhd{flex:none;width:16.6666666667%}.column.is-offset-2-fullhd{margin-left:16.6666666667%}.column.is-3-fullhd{flex:none;width:25%}.column.is-offset-3-fullhd{margin-left:25%}.column.is-4-fullhd{flex:none;width:33.3333333333%}.column.is-offset-4-fullhd{margin-left:33.3333333333%}.column.is-5-fullhd{flex:none;width:41.6666666667%}.column.is-offset-5-fullhd{margin-left:41.6666666667%}.column.is-6-fullhd{flex:none;width:50%}.column.is-offset-6-fullhd{margin-left:50%}.column.is-7-fullhd{flex:none;width:58.3333333333%}.column.is-offset-7-fullhd{margin-left:58.3333333333%}.column.is-8-fullhd{flex:none;width:66.6666666667%}.column.is-offset-8-fullhd{margin-left:66.6666666667%}.column.is-9-fullhd{flex:none;width:75%}.column.is-offset-9-fullhd{margin-left:75%}.column.is-10-fullhd{flex:none;width:83.3333333333%}.column.is-offset-10-fullhd{margin-left:83.3333333333%}.column.is-11-fullhd{flex:none;width:91.6666666667%}.column.is-offset-11-fullhd{margin-left:91.6666666667%}.column.is-12-fullhd{flex:none;width:100%}.column.is-offset-12-fullhd{margin-left:100%}}.columns{margin-left:-.75rem;margin-right:-.75rem;margin-top:-.75rem}.columns:last-child{margin-bottom:-.75rem}.columns:not(:last-child){margin-bottom:.75rem}.columns.is-centered{justify-content:center}.columns.is-gapless{margin-left:0;margin-right:0;margin-top:0}.columns.is-gapless>.column{margin:0;padding:0!important}.columns.is-gapless:not(:last-child){margin-bottom:1.5rem}.columns.is-gapless:last-child{margin-bottom:0}.columns.is-mobile{display:flex}.columns.is-multiline{flex-wrap:wrap}.columns.is-vcentered{align-items:center}@media screen and (min-width: 769px),print{.columns:not(.is-desktop){display:flex}}@media screen and (min-width: 1024px){.columns.is-desktop{display:flex}}.columns.is-variable{--column-gap: .75rem;margin-left:calc(-1 * var(--column-gap));margin-right:calc(-1 * var(--column-gap))}.columns.is-variable>.column{padding-left:var(--column-gap);padding-right:var(--column-gap)}.columns.is-variable.is-0{--column-gap: 0rem}@media screen and (max-width: 768px){.columns.is-variable.is-0-mobile{--column-gap: 0rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-0-tablet{--column-gap: 0rem}}@media screen and (min-width: 769px) and (max-width: 1023px){.columns.is-variable.is-0-tablet-only{--column-gap: 0rem}}@media screen and (max-width: 1023px){.columns.is-variable.is-0-touch{--column-gap: 0rem}}@media screen and (min-width: 1024px){.columns.is-variable.is-0-desktop{--column-gap: 0rem}}@media screen and (min-width: 1024px) and (max-width: 1215px){.columns.is-variable.is-0-desktop-only{--column-gap: 0rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-0-widescreen{--column-gap: 0rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-0-widescreen-only{--column-gap: 0rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-0-fullhd{--column-gap: 0rem}}.columns.is-variable.is-1{--column-gap: .25rem}@media screen and (max-width: 768px){.columns.is-variable.is-1-mobile{--column-gap: .25rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-1-tablet{--column-gap: .25rem}}@media screen and (min-width: 769px) and (max-width: 1023px){.columns.is-variable.is-1-tablet-only{--column-gap: .25rem}}@media screen and (max-width: 1023px){.columns.is-variable.is-1-touch{--column-gap: .25rem}}@media screen and (min-width: 1024px){.columns.is-variable.is-1-desktop{--column-gap: .25rem}}@media screen and (min-width: 1024px) and (max-width: 1215px){.columns.is-variable.is-1-desktop-only{--column-gap: .25rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-1-widescreen{--column-gap: .25rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-1-widescreen-only{--column-gap: .25rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-1-fullhd{--column-gap: .25rem}}.columns.is-variable.is-2{--column-gap: .5rem}@media screen and (max-width: 768px){.columns.is-variable.is-2-mobile{--column-gap: .5rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-2-tablet{--column-gap: .5rem}}@media screen and (min-width: 769px) and (max-width: 1023px){.columns.is-variable.is-2-tablet-only{--column-gap: .5rem}}@media screen and (max-width: 1023px){.columns.is-variable.is-2-touch{--column-gap: .5rem}}@media screen and (min-width: 1024px){.columns.is-variable.is-2-desktop{--column-gap: .5rem}}@media screen and (min-width: 1024px) and (max-width: 1215px){.columns.is-variable.is-2-desktop-only{--column-gap: .5rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-2-widescreen{--column-gap: .5rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-2-widescreen-only{--column-gap: .5rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-2-fullhd{--column-gap: .5rem}}.columns.is-variable.is-3{--column-gap: .75rem}@media screen and (max-width: 768px){.columns.is-variable.is-3-mobile{--column-gap: .75rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-3-tablet{--column-gap: .75rem}}@media screen and (min-width: 769px) and (max-width: 1023px){.columns.is-variable.is-3-tablet-only{--column-gap: .75rem}}@media screen and (max-width: 1023px){.columns.is-variable.is-3-touch{--column-gap: .75rem}}@media screen and (min-width: 1024px){.columns.is-variable.is-3-desktop{--column-gap: .75rem}}@media screen and (min-width: 1024px) and (max-width: 1215px){.columns.is-variable.is-3-desktop-only{--column-gap: .75rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-3-widescreen{--column-gap: .75rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-3-widescreen-only{--column-gap: .75rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-3-fullhd{--column-gap: .75rem}}.columns.is-variable.is-4{--column-gap: 1rem}@media screen and (max-width: 768px){.columns.is-variable.is-4-mobile{--column-gap: 1rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-4-tablet{--column-gap: 1rem}}@media screen and (min-width: 769px) and (max-width: 1023px){.columns.is-variable.is-4-tablet-only{--column-gap: 1rem}}@media screen and (max-width: 1023px){.columns.is-variable.is-4-touch{--column-gap: 1rem}}@media screen and (min-width: 1024px){.columns.is-variable.is-4-desktop{--column-gap: 1rem}}@media screen and (min-width: 1024px) and (max-width: 1215px){.columns.is-variable.is-4-desktop-only{--column-gap: 1rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-4-widescreen{--column-gap: 1rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-4-widescreen-only{--column-gap: 1rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-4-fullhd{--column-gap: 1rem}}.columns.is-variable.is-5{--column-gap: 1.25rem}@media screen and (max-width: 768px){.columns.is-variable.is-5-mobile{--column-gap: 1.25rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-5-tablet{--column-gap: 1.25rem}}@media screen and (min-width: 769px) and (max-width: 1023px){.columns.is-variable.is-5-tablet-only{--column-gap: 1.25rem}}@media screen and (max-width: 1023px){.columns.is-variable.is-5-touch{--column-gap: 1.25rem}}@media screen and (min-width: 1024px){.columns.is-variable.is-5-desktop{--column-gap: 1.25rem}}@media screen and (min-width: 1024px) and (max-width: 1215px){.columns.is-variable.is-5-desktop-only{--column-gap: 1.25rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-5-widescreen{--column-gap: 1.25rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-5-widescreen-only{--column-gap: 1.25rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-5-fullhd{--column-gap: 1.25rem}}.columns.is-variable.is-6{--column-gap: 1.5rem}@media screen and (max-width: 768px){.columns.is-variable.is-6-mobile{--column-gap: 1.5rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-6-tablet{--column-gap: 1.5rem}}@media screen and (min-width: 769px) and (max-width: 1023px){.columns.is-variable.is-6-tablet-only{--column-gap: 1.5rem}}@media screen and (max-width: 1023px){.columns.is-variable.is-6-touch{--column-gap: 1.5rem}}@media screen and (min-width: 1024px){.columns.is-variable.is-6-desktop{--column-gap: 1.5rem}}@media screen and (min-width: 1024px) and (max-width: 1215px){.columns.is-variable.is-6-desktop-only{--column-gap: 1.5rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-6-widescreen{--column-gap: 1.5rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-6-widescreen-only{--column-gap: 1.5rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-6-fullhd{--column-gap: 1.5rem}}.columns.is-variable.is-7{--column-gap: 1.75rem}@media screen and (max-width: 768px){.columns.is-variable.is-7-mobile{--column-gap: 1.75rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-7-tablet{--column-gap: 1.75rem}}@media screen and (min-width: 769px) and (max-width: 1023px){.columns.is-variable.is-7-tablet-only{--column-gap: 1.75rem}}@media screen and (max-width: 1023px){.columns.is-variable.is-7-touch{--column-gap: 1.75rem}}@media screen and (min-width: 1024px){.columns.is-variable.is-7-desktop{--column-gap: 1.75rem}}@media screen and (min-width: 1024px) and (max-width: 1215px){.columns.is-variable.is-7-desktop-only{--column-gap: 1.75rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-7-widescreen{--column-gap: 1.75rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-7-widescreen-only{--column-gap: 1.75rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-7-fullhd{--column-gap: 1.75rem}}.columns.is-variable.is-8{--column-gap: 2rem}@media screen and (max-width: 768px){.columns.is-variable.is-8-mobile{--column-gap: 2rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-8-tablet{--column-gap: 2rem}}@media screen and (min-width: 769px) and (max-width: 1023px){.columns.is-variable.is-8-tablet-only{--column-gap: 2rem}}@media screen and (max-width: 1023px){.columns.is-variable.is-8-touch{--column-gap: 2rem}}@media screen and (min-width: 1024px){.columns.is-variable.is-8-desktop{--column-gap: 2rem}}@media screen and (min-width: 1024px) and (max-width: 1215px){.columns.is-variable.is-8-desktop-only{--column-gap: 2rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-8-widescreen{--column-gap: 2rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-8-widescreen-only{--column-gap: 2rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-8-fullhd{--column-gap: 2rem}}:root{--tile-spacing: .75rem}.tile{align-items:stretch;display:block;flex-basis:0;flex-grow:1;flex-shrink:1;min-height:min-content}.tile.is-ancestor{margin-left:calc(-1 * var(--tile-spacing));margin-right:calc(-1 * var(--tile-spacing));margin-top:calc(-1 * var(--tile-spacing))}.tile.is-ancestor:last-child{margin-bottom:calc(-1 * var(--tile-spacing))}.tile.is-ancestor:not(:last-child){margin-bottom:var(--tile-spacing)}.tile.is-child{margin:0!important}.tile.is-parent{padding:var(--tile-spacing)}.tile.is-vertical{flex-direction:column}.tile.is-vertical>.tile.is-child:not(:last-child){margin-bottom:1.5rem!important}@media screen and (min-width: 769px),print{.tile:not(.is-child){display:flex}.tile.is-1{flex:none;width:8.3333333333%}.tile.is-2{flex:none;width:16.6666666667%}.tile.is-3{flex:none;width:25%}.tile.is-4{flex:none;width:33.3333333333%}.tile.is-5{flex:none;width:41.6666666667%}.tile.is-6{flex:none;width:50%}.tile.is-7{flex:none;width:58.3333333333%}.tile.is-8{flex:none;width:66.6666666667%}.tile.is-9{flex:none;width:75%}.tile.is-10{flex:none;width:83.3333333333%}.tile.is-11{flex:none;width:91.6666666667%}.tile.is-12{flex:none;width:100%}}.has-text-white{color:var(--white)!important}a.has-text-white:hover,a.has-text-white:focus{color:hsla(var(--white-h),var(--white-s),calc(var(--white-l) + -10%),var(--white-a))!important}.has-background-white{background-color:var(--white)!important}.has-text-black{color:var(--black)!important}a.has-text-black:hover,a.has-text-black:focus{color:hsla(var(--black-h),var(--black-s),calc(var(--black-l) + -10%),var(--black-a))!important}.has-background-black{background-color:var(--black)!important}.has-text-light{color:var(--light)!important}a.has-text-light:hover,a.has-text-light:focus{color:hsla(var(--light-h),var(--light-s),calc(var(--light-l) + -10%),var(--light-a))!important}.has-background-light{background-color:var(--light)!important}.has-text-dark{color:var(--dark)!important}a.has-text-dark:hover,a.has-text-dark:focus{color:hsla(var(--dark-h),var(--dark-s),calc(var(--dark-l) + -10%),var(--dark-a))!important}.has-background-dark{background-color:var(--dark)!important}.has-text-primary{color:var(--primary)!important}a.has-text-primary:hover,a.has-text-primary:focus{color:hsla(var(--primary-h),var(--primary-s),calc(var(--primary-l) + -10%),var(--primary-a))!important}.has-background-primary{background-color:var(--primary)!important}.has-text-primary-light{color:var(--primary-light)!important}a.has-text-primary-light:hover,a.has-text-primary-light:focus{color:hsla(var(--primary-h),var(--primary-s),calc(var(--primary-light-l) - 10%),var(--primary-a))!important}.has-background-primary-light{background-color:var(--primary-light)!important}.has-text-primary-dark{color:var(--primary-dark)!important}a.has-text-primary-dark:hover,a.has-text-primary-dark:focus{color:hsla(var(--primary-h),var(--primary-s),calc(var(--primary-dark-l) + 10%),var(--primary-a))!important}.has-background-primary-dark{background-color:var(--primary-dark)!important}.has-text-secondary{color:var(--secondary)!important}a.has-text-secondary:hover,a.has-text-secondary:focus{color:hsla(var(--secondary-h),var(--secondary-s),calc(var(--secondary-l) + -10%),var(--secondary-a))!important}.has-background-secondary{background-color:var(--secondary)!important}.has-text-secondary-light{color:var(--secondary-light)!important}a.has-text-secondary-light:hover,a.has-text-secondary-light:focus{color:hsla(var(--secondary-h),var(--secondary-s),calc(var(--secondary-light-l) - 10%),var(--secondary-a))!important}.has-background-secondary-light{background-color:var(--secondary-light)!important}.has-text-secondary-dark{color:var(--secondary-dark)!important}a.has-text-secondary-dark:hover,a.has-text-secondary-dark:focus{color:hsla(var(--secondary-h),var(--secondary-s),calc(var(--secondary-dark-l) + 10%),var(--secondary-a))!important}.has-background-secondary-dark{background-color:var(--secondary-dark)!important}.has-text-link{color:var(--link)!important}a.has-text-link:hover,a.has-text-link:focus{color:hsla(var(--link-h),var(--link-s),calc(var(--link-l) + -10%),var(--link-a))!important}.has-background-link{background-color:var(--link)!important}.has-text-link-light{color:var(--link-light)!important}a.has-text-link-light:hover,a.has-text-link-light:focus{color:hsla(var(--link-h),var(--link-s),calc(var(--link-light-l) - 10%),var(--link-a))!important}.has-background-link-light{background-color:var(--link-light)!important}.has-text-link-dark{color:var(--link-dark)!important}a.has-text-link-dark:hover,a.has-text-link-dark:focus{color:hsla(var(--link-h),var(--link-s),calc(var(--link-dark-l) + 10%),var(--link-a))!important}.has-background-link-dark{background-color:var(--link-dark)!important}.has-text-info{color:var(--info)!important}a.has-text-info:hover,a.has-text-info:focus{color:hsla(var(--info-h),var(--info-s),calc(var(--info-l) + -10%),var(--info-a))!important}.has-background-info{background-color:var(--info)!important}.has-text-info-light{color:var(--info-light)!important}a.has-text-info-light:hover,a.has-text-info-light:focus{color:hsla(var(--info-h),var(--info-s),calc(var(--info-light-l) - 10%),var(--info-a))!important}.has-background-info-light{background-color:var(--info-light)!important}.has-text-info-dark{color:var(--info-dark)!important}a.has-text-info-dark:hover,a.has-text-info-dark:focus{color:hsla(var(--info-h),var(--info-s),calc(var(--info-dark-l) + 10%),var(--info-a))!important}.has-background-info-dark{background-color:var(--info-dark)!important}.has-text-success{color:var(--success)!important}a.has-text-success:hover,a.has-text-success:focus{color:hsla(var(--success-h),var(--success-s),calc(var(--success-l) + -10%),var(--success-a))!important}.has-background-success{background-color:var(--success)!important}.has-text-success-light{color:var(--success-light)!important}a.has-text-success-light:hover,a.has-text-success-light:focus{color:hsla(var(--success-h),var(--success-s),calc(var(--success-light-l) - 10%),var(--success-a))!important}.has-background-success-light{background-color:var(--success-light)!important}.has-text-success-dark{color:var(--success-dark)!important}a.has-text-success-dark:hover,a.has-text-success-dark:focus{color:hsla(var(--success-h),var(--success-s),calc(var(--success-dark-l) + 10%),var(--success-a))!important}.has-background-success-dark{background-color:var(--success-dark)!important}.has-text-warning{color:var(--warning)!important}a.has-text-warning:hover,a.has-text-warning:focus{color:hsla(var(--warning-h),var(--warning-s),calc(var(--warning-l) + -10%),var(--warning-a))!important}.has-background-warning{background-color:var(--warning)!important}.has-text-warning-light{color:var(--warning-light)!important}a.has-text-warning-light:hover,a.has-text-warning-light:focus{color:hsla(var(--warning-h),var(--warning-s),calc(var(--warning-light-l) - 10%),var(--warning-a))!important}.has-background-warning-light{background-color:var(--warning-light)!important}.has-text-warning-dark{color:var(--warning-dark)!important}a.has-text-warning-dark:hover,a.has-text-warning-dark:focus{color:hsla(var(--warning-h),var(--warning-s),calc(var(--warning-dark-l) + 10%),var(--warning-a))!important}.has-background-warning-dark{background-color:var(--warning-dark)!important}.has-text-danger{color:var(--danger)!important}a.has-text-danger:hover,a.has-text-danger:focus{color:hsla(var(--danger-h),var(--danger-s),calc(var(--danger-l) + -10%),var(--danger-a))!important}.has-background-danger{background-color:var(--danger)!important}.has-text-danger-light{color:var(--danger-light)!important}a.has-text-danger-light:hover,a.has-text-danger-light:focus{color:hsla(var(--danger-h),var(--danger-s),calc(var(--danger-light-l) - 10%),var(--danger-a))!important}.has-background-danger-light{background-color:var(--danger-light)!important}.has-text-danger-dark{color:var(--danger-dark)!important}a.has-text-danger-dark:hover,a.has-text-danger-dark:focus{color:hsla(var(--danger-h),var(--danger-s),calc(var(--danger-dark-l) + 10%),var(--danger-a))!important}.has-background-danger-dark{background-color:var(--danger-dark)!important}.has-text-black-bis{color:var(--black-bis)!important}.has-background-black-bis{background-color:var(--black-bis)!important}.has-text-black-ter{color:var(--black-ter)!important}.has-background-black-ter{background-color:var(--black-ter)!important}.has-text-grey-darker{color:var(--grey-darker)!important}.has-background-grey-darker{background-color:var(--grey-darker)!important}.has-text-grey-dark{color:var(--grey-dark)!important}.has-background-grey-dark{background-color:var(--grey-dark)!important}.has-text-grey{color:var(--grey)!important}.has-background-grey{background-color:var(--grey)!important}.has-text-grey-light{color:var(--grey-light)!important}.has-background-grey-light{background-color:var(--grey-light)!important}.has-text-grey-lighter{color:var(--grey-lighter)!important}.has-background-grey-lighter{background-color:var(--grey-lighter)!important}.has-text-grey-lightest{color:var(--grey-lightest)!important}.has-background-grey-lightest{background-color:var(--grey-lightest)!important}.has-text-white-ter{color:var(--white-ter)!important}.has-background-white-ter{background-color:var(--white-ter)!important}.has-text-white-bis{color:var(--white-bis)!important}.has-background-white-bis{background-color:var(--white-bis)!important}.is-flex-direction-row{flex-direction:row!important}.is-flex-direction-row-reverse{flex-direction:row-reverse!important}.is-flex-direction-column{flex-direction:column!important}.is-flex-direction-column-reverse{flex-direction:column-reverse!important}.is-flex-wrap-nowrap{flex-wrap:nowrap!important}.is-flex-wrap-wrap{flex-wrap:wrap!important}.is-flex-wrap-wrap-reverse{flex-wrap:wrap-reverse!important}.is-justify-content-flex-start{justify-content:flex-start!important}.is-justify-content-flex-end{justify-content:flex-end!important}.is-justify-content-center{justify-content:center!important}.is-justify-content-space-between{justify-content:space-between!important}.is-justify-content-space-around{justify-content:space-around!important}.is-justify-content-space-evenly{justify-content:space-evenly!important}.is-justify-content-start{justify-content:start!important}.is-justify-content-end{justify-content:end!important}.is-justify-content-left{justify-content:left!important}.is-justify-content-right{justify-content:right!important}.is-align-content-flex-start{align-content:flex-start!important}.is-align-content-flex-end{align-content:flex-end!important}.is-align-content-center{align-content:center!important}.is-align-content-space-between{align-content:space-between!important}.is-align-content-space-around{align-content:space-around!important}.is-align-content-space-evenly{align-content:space-evenly!important}.is-align-content-stretch{align-content:stretch!important}.is-align-content-start{align-content:start!important}.is-align-content-end{align-content:end!important}.is-align-content-baseline{align-content:baseline!important}.is-align-items-stretch{align-items:stretch!important}.is-align-items-flex-start{align-items:flex-start!important}.is-align-items-flex-end{align-items:flex-end!important}.is-align-items-center{align-items:center!important}.is-align-items-baseline{align-items:baseline!important}.is-align-items-start{align-items:start!important}.is-align-items-end{align-items:end!important}.is-align-items-self-start{align-items:self-start!important}.is-align-items-self-end{align-items:self-end!important}.is-align-self-auto{align-self:auto!important}.is-align-self-flex-start{align-self:flex-start!important}.is-align-self-flex-end{align-self:flex-end!important}.is-align-self-center{align-self:center!important}.is-align-self-baseline{align-self:baseline!important}.is-align-self-stretch{align-self:stretch!important}.is-flex-grow-0{flex-grow:0!important}.is-flex-grow-1{flex-grow:1!important}.is-flex-grow-2{flex-grow:2!important}.is-flex-grow-3{flex-grow:3!important}.is-flex-grow-4{flex-grow:4!important}.is-flex-grow-5{flex-grow:5!important}.is-flex-shrink-0{flex-shrink:0!important}.is-flex-shrink-1{flex-shrink:1!important}.is-flex-shrink-2{flex-shrink:2!important}.is-flex-shrink-3{flex-shrink:3!important}.is-flex-shrink-4{flex-shrink:4!important}.is-flex-shrink-5{flex-shrink:5!important}.is-gap-1{gap:0!important}.is-gap-2{gap:.25rem!important}.is-gap-3{gap:.5rem!important}.is-gap-4{gap:.75rem!important}.is-gap-5{gap:1rem!important}.is-gap-6{gap:1.5rem!important}.is-gap-7{gap:3rem!important}.is-clearfix:after{clear:both;content:" ";display:table}.is-pulled-left{float:left!important}.is-pulled-right{float:right!important}.is-radiusless{border-radius:0!important}.is-shadowless{box-shadow:none!important}.is-clickable{cursor:pointer!important;pointer-events:all!important}.is-clipped{overflow:hidden!important}@media screen and (max-width: 1023px){.is-clipped-touch{overflow:hidden!important}}.is-relative{position:relative!important}.is-marginless{margin:0!important}.is-paddingless{padding:0!important}.m-0{margin:0!important}.mt-0{margin-top:0!important}.mr-0{margin-right:0!important}.mb-0{margin-bottom:0!important}.ml-0{margin-left:0!important}.mx-0{margin-left:0!important;margin-right:0!important}.my-0{margin-top:0!important;margin-bottom:0!important}.m-1{margin:.25rem!important}.mt-1{margin-top:.25rem!important}.mr-1{margin-right:.25rem!important}.mb-1{margin-bottom:.25rem!important}.ml-1{margin-left:.25rem!important}.mx-1{margin-left:.25rem!important;margin-right:.25rem!important}.my-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.m-2{margin:.5rem!important}.mt-2{margin-top:.5rem!important}.mr-2{margin-right:.5rem!important}.mb-2{margin-bottom:.5rem!important}.ml-2{margin-left:.5rem!important}.mx-2{margin-left:.5rem!important;margin-right:.5rem!important}.my-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.m-3{margin:.75rem!important}.mt-3{margin-top:.75rem!important}.mr-3{margin-right:.75rem!important}.mb-3{margin-bottom:.75rem!important}.ml-3{margin-left:.75rem!important}.mx-3{margin-left:.75rem!important;margin-right:.75rem!important}.my-3{margin-top:.75rem!important;margin-bottom:.75rem!important}.m-4{margin:1rem!important}.mt-4{margin-top:1rem!important}.mr-4{margin-right:1rem!important}.mb-4{margin-bottom:1rem!important}.ml-4{margin-left:1rem!important}.mx-4{margin-left:1rem!important;margin-right:1rem!important}.my-4{margin-top:1rem!important;margin-bottom:1rem!important}.m-5{margin:1.5rem!important}.mt-5{margin-top:1.5rem!important}.mr-5{margin-right:1.5rem!important}.mb-5{margin-bottom:1.5rem!important}.ml-5{margin-left:1.5rem!important}.mx-5{margin-left:1.5rem!important;margin-right:1.5rem!important}.my-5{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.m-6{margin:3rem!important}.mt-6{margin-top:3rem!important}.mr-6{margin-right:3rem!important}.mb-6{margin-bottom:3rem!important}.ml-6{margin-left:3rem!important}.mx-6{margin-left:3rem!important;margin-right:3rem!important}.my-6{margin-top:3rem!important;margin-bottom:3rem!important}.m-auto{margin:auto!important}.mt-auto{margin-top:auto!important}.mr-auto{margin-right:auto!important}.mb-auto{margin-bottom:auto!important}.ml-auto{margin-left:auto!important}.mx-auto{margin-left:auto!important;margin-right:auto!important}.my-auto{margin-top:auto!important;margin-bottom:auto!important}.p-0{padding:0!important}.pt-0{padding-top:0!important}.pr-0{padding-right:0!important}.pb-0{padding-bottom:0!important}.pl-0{padding-left:0!important}.px-0{padding-left:0!important;padding-right:0!important}.py-0{padding-top:0!important;padding-bottom:0!important}.p-1{padding:.25rem!important}.pt-1{padding-top:.25rem!important}.pr-1{padding-right:.25rem!important}.pb-1{padding-bottom:.25rem!important}.pl-1{padding-left:.25rem!important}.px-1{padding-left:.25rem!important;padding-right:.25rem!important}.py-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.p-2{padding:.5rem!important}.pt-2{padding-top:.5rem!important}.pr-2{padding-right:.5rem!important}.pb-2{padding-bottom:.5rem!important}.pl-2{padding-left:.5rem!important}.px-2{padding-left:.5rem!important;padding-right:.5rem!important}.py-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.p-3{padding:.75rem!important}.pt-3{padding-top:.75rem!important}.pr-3{padding-right:.75rem!important}.pb-3{padding-bottom:.75rem!important}.pl-3{padding-left:.75rem!important}.px-3{padding-left:.75rem!important;padding-right:.75rem!important}.py-3{padding-top:.75rem!important;padding-bottom:.75rem!important}.p-4{padding:1rem!important}.pt-4{padding-top:1rem!important}.pr-4{padding-right:1rem!important}.pb-4{padding-bottom:1rem!important}.pl-4{padding-left:1rem!important}.px-4{padding-left:1rem!important;padding-right:1rem!important}.py-4{padding-top:1rem!important;padding-bottom:1rem!important}.p-5{padding:1.5rem!important}.pt-5{padding-top:1.5rem!important}.pr-5{padding-right:1.5rem!important}.pb-5{padding-bottom:1.5rem!important}.pl-5{padding-left:1.5rem!important}.px-5{padding-left:1.5rem!important;padding-right:1.5rem!important}.py-5{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.p-6{padding:3rem!important}.pt-6{padding-top:3rem!important}.pr-6{padding-right:3rem!important}.pb-6{padding-bottom:3rem!important}.pl-6{padding-left:3rem!important}.px-6{padding-left:3rem!important;padding-right:3rem!important}.py-6{padding-top:3rem!important;padding-bottom:3rem!important}.p-auto{padding:auto!important}.pt-auto{padding-top:auto!important}.pr-auto{padding-right:auto!important}.pb-auto{padding-bottom:auto!important}.pl-auto{padding-left:auto!important}.px-auto{padding-left:auto!important;padding-right:auto!important}.py-auto{padding-top:auto!important;padding-bottom:auto!important}.is-size-1{font-size:3rem!important}.is-size-2{font-size:2.5rem!important}.is-size-3{font-size:2rem!important}.is-size-4{font-size:1.5rem!important}.is-size-5{font-size:1.25rem!important}.is-size-6{font-size:1rem!important}.is-size-7{font-size:.75rem!important}@media screen and (max-width: 768px){.is-size-1-mobile{font-size:3rem!important}.is-size-2-mobile{font-size:2.5rem!important}.is-size-3-mobile{font-size:2rem!important}.is-size-4-mobile{font-size:1.5rem!important}.is-size-5-mobile{font-size:1.25rem!important}.is-size-6-mobile{font-size:1rem!important}.is-size-7-mobile{font-size:.75rem!important}}@media screen and (min-width: 769px),print{.is-size-1-tablet{font-size:3rem!important}.is-size-2-tablet{font-size:2.5rem!important}.is-size-3-tablet{font-size:2rem!important}.is-size-4-tablet{font-size:1.5rem!important}.is-size-5-tablet{font-size:1.25rem!important}.is-size-6-tablet{font-size:1rem!important}.is-size-7-tablet{font-size:.75rem!important}}@media screen and (max-width: 1023px){.is-size-1-touch{font-size:3rem!important}.is-size-2-touch{font-size:2.5rem!important}.is-size-3-touch{font-size:2rem!important}.is-size-4-touch{font-size:1.5rem!important}.is-size-5-touch{font-size:1.25rem!important}.is-size-6-touch{font-size:1rem!important}.is-size-7-touch{font-size:.75rem!important}}@media screen and (min-width: 1024px){.is-size-1-desktop{font-size:3rem!important}.is-size-2-desktop{font-size:2.5rem!important}.is-size-3-desktop{font-size:2rem!important}.is-size-4-desktop{font-size:1.5rem!important}.is-size-5-desktop{font-size:1.25rem!important}.is-size-6-desktop{font-size:1rem!important}.is-size-7-desktop{font-size:.75rem!important}}@media screen and (min-width: 1216px){.is-size-1-widescreen{font-size:3rem!important}.is-size-2-widescreen{font-size:2.5rem!important}.is-size-3-widescreen{font-size:2rem!important}.is-size-4-widescreen{font-size:1.5rem!important}.is-size-5-widescreen{font-size:1.25rem!important}.is-size-6-widescreen{font-size:1rem!important}.is-size-7-widescreen{font-size:.75rem!important}}@media screen and (min-width: 1408px){.is-size-1-fullhd{font-size:3rem!important}.is-size-2-fullhd{font-size:2.5rem!important}.is-size-3-fullhd{font-size:2rem!important}.is-size-4-fullhd{font-size:1.5rem!important}.is-size-5-fullhd{font-size:1.25rem!important}.is-size-6-fullhd{font-size:1rem!important}.is-size-7-fullhd{font-size:.75rem!important}}.has-text-centered{text-align:center!important}.has-text-justified{text-align:justify!important}.has-text-left{text-align:left!important}.has-text-right{text-align:right!important}@media screen and (max-width: 768px){.has-text-centered-mobile{text-align:center!important}}@media screen and (min-width: 769px),print{.has-text-centered-tablet{text-align:center!important}}@media screen and (min-width: 769px) and (max-width: 1023px){.has-text-centered-tablet-only{text-align:center!important}}@media screen and (max-width: 1023px){.has-text-centered-touch{text-align:center!important}}@media screen and (min-width: 1024px){.has-text-centered-desktop{text-align:center!important}}@media screen and (min-width: 1024px) and (max-width: 1215px){.has-text-centered-desktop-only{text-align:center!important}}@media screen and (min-width: 1216px){.has-text-centered-widescreen{text-align:center!important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-centered-widescreen-only{text-align:center!important}}@media screen and (min-width: 1408px){.has-text-centered-fullhd{text-align:center!important}}@media screen and (max-width: 768px){.has-text-justified-mobile{text-align:justify!important}}@media screen and (min-width: 769px),print{.has-text-justified-tablet{text-align:justify!important}}@media screen and (min-width: 769px) and (max-width: 1023px){.has-text-justified-tablet-only{text-align:justify!important}}@media screen and (max-width: 1023px){.has-text-justified-touch{text-align:justify!important}}@media screen and (min-width: 1024px){.has-text-justified-desktop{text-align:justify!important}}@media screen and (min-width: 1024px) and (max-width: 1215px){.has-text-justified-desktop-only{text-align:justify!important}}@media screen and (min-width: 1216px){.has-text-justified-widescreen{text-align:justify!important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-justified-widescreen-only{text-align:justify!important}}@media screen and (min-width: 1408px){.has-text-justified-fullhd{text-align:justify!important}}@media screen and (max-width: 768px){.has-text-left-mobile{text-align:left!important}}@media screen and (min-width: 769px),print{.has-text-left-tablet{text-align:left!important}}@media screen and (min-width: 769px) and (max-width: 1023px){.has-text-left-tablet-only{text-align:left!important}}@media screen and (max-width: 1023px){.has-text-left-touch{text-align:left!important}}@media screen and (min-width: 1024px){.has-text-left-desktop{text-align:left!important}}@media screen and (min-width: 1024px) and (max-width: 1215px){.has-text-left-desktop-only{text-align:left!important}}@media screen and (min-width: 1216px){.has-text-left-widescreen{text-align:left!important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-left-widescreen-only{text-align:left!important}}@media screen and (min-width: 1408px){.has-text-left-fullhd{text-align:left!important}}@media screen and (max-width: 768px){.has-text-right-mobile{text-align:right!important}}@media screen and (min-width: 769px),print{.has-text-right-tablet{text-align:right!important}}@media screen and (min-width: 769px) and (max-width: 1023px){.has-text-right-tablet-only{text-align:right!important}}@media screen and (max-width: 1023px){.has-text-right-touch{text-align:right!important}}@media screen and (min-width: 1024px){.has-text-right-desktop{text-align:right!important}}@media screen and (min-width: 1024px) and (max-width: 1215px){.has-text-right-desktop-only{text-align:right!important}}@media screen and (min-width: 1216px){.has-text-right-widescreen{text-align:right!important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-right-widescreen-only{text-align:right!important}}@media screen and (min-width: 1408px){.has-text-right-fullhd{text-align:right!important}}.is-capitalized{text-transform:capitalize!important}.is-lowercase{text-transform:lowercase!important}.is-uppercase{text-transform:uppercase!important}.is-italic{font-style:italic!important}.is-underlined{text-decoration:underline!important}.has-text-weight-light{font-weight:var(--weight-light)!important}.has-text-weight-normal{font-weight:var(--weight-normal)!important}.has-text-weight-medium{font-weight:var(--weight-medium)!important}.has-text-weight-semibold{font-weight:var(--weight-semibold)!important}.has-text-weight-bold{font-weight:var(--weight-bold)!important}.is-family-primary{font-family:var(--family-primary)!important}.is-family-secondary{font-family:var(--family-secondary)!important}.is-family-sans-serif{font-family:var(--family-sans-serif)!important}.is-family-monospace{font-family:var(--family-monospace)!important}.is-family-code{font-family:var(--family-code)!important}.is-block{display:block!important}@media screen and (max-width: 768px){.is-block-mobile{display:block!important}}@media screen and (min-width: 769px),print{.is-block-tablet{display:block!important}}@media screen and (min-width: 769px) and (max-width: 1023px){.is-block-tablet-only{display:block!important}}@media screen and (max-width: 1023px){.is-block-touch{display:block!important}}@media screen and (min-width: 1024px){.is-block-desktop{display:block!important}}@media screen and (min-width: 1024px) and (max-width: 1215px){.is-block-desktop-only{display:block!important}}@media screen and (min-width: 1216px){.is-block-widescreen{display:block!important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-block-widescreen-only{display:block!important}}@media screen and (min-width: 1408px){.is-block-fullhd{display:block!important}}.is-flex{display:flex!important}@media screen and (max-width: 768px){.is-flex-mobile{display:flex!important}}@media screen and (min-width: 769px),print{.is-flex-tablet{display:flex!important}}@media screen and (min-width: 769px) and (max-width: 1023px){.is-flex-tablet-only{display:flex!important}}@media screen and (max-width: 1023px){.is-flex-touch{display:flex!important}}@media screen and (min-width: 1024px){.is-flex-desktop{display:flex!important}}@media screen and (min-width: 1024px) and (max-width: 1215px){.is-flex-desktop-only{display:flex!important}}@media screen and (min-width: 1216px){.is-flex-widescreen{display:flex!important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-flex-widescreen-only{display:flex!important}}@media screen and (min-width: 1408px){.is-flex-fullhd{display:flex!important}}.is-inline{display:inline!important}@media screen and (max-width: 768px){.is-inline-mobile{display:inline!important}}@media screen and (min-width: 769px),print{.is-inline-tablet{display:inline!important}}@media screen and (min-width: 769px) and (max-width: 1023px){.is-inline-tablet-only{display:inline!important}}@media screen and (max-width: 1023px){.is-inline-touch{display:inline!important}}@media screen and (min-width: 1024px){.is-inline-desktop{display:inline!important}}@media screen and (min-width: 1024px) and (max-width: 1215px){.is-inline-desktop-only{display:inline!important}}@media screen and (min-width: 1216px){.is-inline-widescreen{display:inline!important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-widescreen-only{display:inline!important}}@media screen and (min-width: 1408px){.is-inline-fullhd{display:inline!important}}.is-inline-block{display:inline-block!important}@media screen and (max-width: 768px){.is-inline-block-mobile{display:inline-block!important}}@media screen and (min-width: 769px),print{.is-inline-block-tablet{display:inline-block!important}}@media screen and (min-width: 769px) and (max-width: 1023px){.is-inline-block-tablet-only{display:inline-block!important}}@media screen and (max-width: 1023px){.is-inline-block-touch{display:inline-block!important}}@media screen and (min-width: 1024px){.is-inline-block-desktop{display:inline-block!important}}@media screen and (min-width: 1024px) and (max-width: 1215px){.is-inline-block-desktop-only{display:inline-block!important}}@media screen and (min-width: 1216px){.is-inline-block-widescreen{display:inline-block!important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-block-widescreen-only{display:inline-block!important}}@media screen and (min-width: 1408px){.is-inline-block-fullhd{display:inline-block!important}}.is-inline-flex{display:inline-flex!important}@media screen and (max-width: 768px){.is-inline-flex-mobile{display:inline-flex!important}}@media screen and (min-width: 769px),print{.is-inline-flex-tablet{display:inline-flex!important}}@media screen and (min-width: 769px) and (max-width: 1023px){.is-inline-flex-tablet-only{display:inline-flex!important}}@media screen and (max-width: 1023px){.is-inline-flex-touch{display:inline-flex!important}}@media screen and (min-width: 1024px){.is-inline-flex-desktop{display:inline-flex!important}}@media screen and (min-width: 1024px) and (max-width: 1215px){.is-inline-flex-desktop-only{display:inline-flex!important}}@media screen and (min-width: 1216px){.is-inline-flex-widescreen{display:inline-flex!important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-flex-widescreen-only{display:inline-flex!important}}@media screen and (min-width: 1408px){.is-inline-flex-fullhd{display:inline-flex!important}}.is-hidden{display:none!important}.is-sr-only{border:none!important;clip:rect(0,0,0,0)!important;height:.01em!important;overflow:hidden!important;padding:0!important;position:absolute!important;white-space:nowrap!important;width:.01em!important}@media screen and (max-width: 768px){.is-hidden-mobile{display:none!important}}@media screen and (min-width: 769px),print{.is-hidden-tablet{display:none!important}}@media screen and (min-width: 769px) and (max-width: 1023px){.is-hidden-tablet-only{display:none!important}}@media screen and (max-width: 1023px){.is-hidden-touch{display:none!important}}@media screen and (min-width: 1024px){.is-hidden-desktop{display:none!important}}@media screen and (min-width: 1024px) and (max-width: 1215px){.is-hidden-desktop-only{display:none!important}}@media screen and (min-width: 1216px){.is-hidden-widescreen{display:none!important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-hidden-widescreen-only{display:none!important}}@media screen and (min-width: 1408px){.is-hidden-fullhd{display:none!important}}.is-invisible{visibility:hidden!important}@media screen and (max-width: 768px){.is-invisible-mobile{visibility:hidden!important}}@media screen and (min-width: 769px),print{.is-invisible-tablet{visibility:hidden!important}}@media screen and (min-width: 769px) and (max-width: 1023px){.is-invisible-tablet-only{visibility:hidden!important}}@media screen and (max-width: 1023px){.is-invisible-touch{visibility:hidden!important}}@media screen and (min-width: 1024px){.is-invisible-desktop{visibility:hidden!important}}@media screen and (min-width: 1024px) and (max-width: 1215px){.is-invisible-desktop-only{visibility:hidden!important}}@media screen and (min-width: 1216px){.is-invisible-widescreen{visibility:hidden!important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-invisible-widescreen-only{visibility:hidden!important}}@media screen and (min-width: 1408px){.is-invisible-fullhd{visibility:hidden!important}}:root{--hero-body-padding: 3rem 1.5rem;--hero-body-padding-tablet: 3rem 3rem;--hero-body-padding-small: 1.5rem;--hero-body-padding-medium: 9rem 4.5rem;--hero-body-padding-large: 18rem 6rem}.hero{align-items:stretch;display:flex;flex-direction:column;justify-content:space-between}.hero .navbar{background:none}.hero .tabs ul{border-bottom:none}.hero.is-white{background-color:var(--white);color:var(--white-invert)}.hero.is-white a:not(.button,.dropdown-item,.tag,.pagination-link.is-current),.hero.is-white strong{color:inherit}.hero.is-white .title{color:var(--white-invert)}.hero.is-white .subtitle{color:var(--white-invert-bis)}.hero.is-white .subtitle a:not(.button),.hero.is-white .subtitle strong{color:var(--white-invert)}@media screen and (max-width: 1023px){.hero.is-white .navbar-menu{background-color:var(--white)}}.hero.is-white .navbar-item,.hero.is-white .navbar-link{color:var(--white-invert-ter)}.hero.is-white a.navbar-item:hover,.hero.is-white a.navbar-item.is-active,.hero.is-white .navbar-link:hover,.hero.is-white .navbar-link.is-active{background-color:hsla(var(--white-h),var(--white-s),calc(var(--white-l) + -5%),var(--white-a));color:var(--white-invert)}.hero.is-white .tabs a{color:var(--white-invert);opacity:.9}.hero.is-white .tabs a:hover{opacity:1}.hero.is-white .tabs li.is-active a{color:var(--white)!important;opacity:1}.hero.is-white .tabs.is-boxed a,.hero.is-white .tabs.is-toggle a{color:var(--white-invert)}.hero.is-white .tabs.is-boxed a:hover,.hero.is-white .tabs.is-toggle a:hover{background-color:rgba(var(--scheme-invert-rgb),.1)}.hero.is-white .tabs.is-boxed li.is-active a,.hero.is-white .tabs.is-boxed li.is-active a:hover,.hero.is-white .tabs.is-toggle li.is-active a,.hero.is-white .tabs.is-toggle li.is-active a:hover{background-color:var(--white-invert);border-color:var(--white-invert);color:var(--white)}.hero.is-white.is-bold{background-image:linear-gradient(141deg,hsla(calc(var(--white-h) - 10deg),calc(var(--white-s) + 10%),calc(var(--white-l) - 10%),var(--white-a)) 0%,hsl(0,0%,100%) 71%,hsla(calc(var(--white-h) + 10deg),calc(var(--white-s) + 5%),calc(var(--white-l) + 5%),var(--white-a)) 100%)}@media screen and (max-width: 768px){.hero.is-white.is-bold .navbar-menu{background-image:linear-gradient(141deg,hsla(calc(var(--white-h) - 10deg),calc(var(--white-s) + 10%),calc(var(--white-l) - 10%),var(--white-a)) 0%,hsl(0,0%,100%) 71%,hsla(calc(var(--white-h) + 10deg),calc(var(--white-s) + 5%),calc(var(--white-l) + 5%),var(--white-a)) 100%)}}.hero.is-black{background-color:var(--black);color:var(--black-invert)}.hero.is-black a:not(.button,.dropdown-item,.tag,.pagination-link.is-current),.hero.is-black strong{color:inherit}.hero.is-black .title{color:var(--black-invert)}.hero.is-black .subtitle{color:var(--black-invert-bis)}.hero.is-black .subtitle a:not(.button),.hero.is-black .subtitle strong{color:var(--black-invert)}@media screen and (max-width: 1023px){.hero.is-black .navbar-menu{background-color:var(--black)}}.hero.is-black .navbar-item,.hero.is-black .navbar-link{color:var(--black-invert-ter)}.hero.is-black a.navbar-item:hover,.hero.is-black a.navbar-item.is-active,.hero.is-black .navbar-link:hover,.hero.is-black .navbar-link.is-active{background-color:hsla(var(--black-h),var(--black-s),calc(var(--black-l) + -5%),var(--black-a));color:var(--black-invert)}.hero.is-black .tabs a{color:var(--black-invert);opacity:.9}.hero.is-black .tabs a:hover{opacity:1}.hero.is-black .tabs li.is-active a{color:var(--black)!important;opacity:1}.hero.is-black .tabs.is-boxed a,.hero.is-black .tabs.is-toggle a{color:var(--black-invert)}.hero.is-black .tabs.is-boxed a:hover,.hero.is-black .tabs.is-toggle a:hover{background-color:rgba(var(--scheme-invert-rgb),.1)}.hero.is-black .tabs.is-boxed li.is-active a,.hero.is-black .tabs.is-boxed li.is-active a:hover,.hero.is-black .tabs.is-toggle li.is-active a,.hero.is-black .tabs.is-toggle li.is-active a:hover{background-color:var(--black-invert);border-color:var(--black-invert);color:var(--black)}.hero.is-black.is-bold{background-image:linear-gradient(141deg,hsla(calc(var(--black-h) - 10deg),calc(var(--black-s) + 10%),calc(var(--black-l) - 10%),var(--black-a)) 0%,hsl(0,0%,4%) 71%,hsla(calc(var(--black-h) + 10deg),calc(var(--black-s) + 5%),calc(var(--black-l) + 5%),var(--black-a)) 100%)}@media screen and (max-width: 768px){.hero.is-black.is-bold .navbar-menu{background-image:linear-gradient(141deg,hsla(calc(var(--black-h) - 10deg),calc(var(--black-s) + 10%),calc(var(--black-l) - 10%),var(--black-a)) 0%,hsl(0,0%,4%) 71%,hsla(calc(var(--black-h) + 10deg),calc(var(--black-s) + 5%),calc(var(--black-l) + 5%),var(--black-a)) 100%)}}.hero.is-light{background-color:var(--light);color:var(--light-invert)}.hero.is-light a:not(.button,.dropdown-item,.tag,.pagination-link.is-current),.hero.is-light strong{color:inherit}.hero.is-light .title{color:var(--light-invert)}.hero.is-light .subtitle{color:var(--light-invert-bis)}.hero.is-light .subtitle a:not(.button),.hero.is-light .subtitle strong{color:var(--light-invert)}@media screen and (max-width: 1023px){.hero.is-light .navbar-menu{background-color:var(--light)}}.hero.is-light .navbar-item,.hero.is-light .navbar-link{color:var(--light-invert-ter)}.hero.is-light a.navbar-item:hover,.hero.is-light a.navbar-item.is-active,.hero.is-light .navbar-link:hover,.hero.is-light .navbar-link.is-active{background-color:hsla(var(--light-h),var(--light-s),calc(var(--light-l) + -5%),var(--light-a));color:var(--light-invert)}.hero.is-light .tabs a{color:var(--light-invert);opacity:.9}.hero.is-light .tabs a:hover{opacity:1}.hero.is-light .tabs li.is-active a{color:var(--light)!important;opacity:1}.hero.is-light .tabs.is-boxed a,.hero.is-light .tabs.is-toggle a{color:var(--light-invert)}.hero.is-light .tabs.is-boxed a:hover,.hero.is-light .tabs.is-toggle a:hover{background-color:rgba(var(--scheme-invert-rgb),.1)}.hero.is-light .tabs.is-boxed li.is-active a,.hero.is-light .tabs.is-boxed li.is-active a:hover,.hero.is-light .tabs.is-toggle li.is-active a,.hero.is-light .tabs.is-toggle li.is-active a:hover{background-color:var(--light-invert);border-color:var(--light-invert);color:var(--light)}.hero.is-light.is-bold{background-image:linear-gradient(141deg,hsla(calc(var(--light-h) - 10deg),calc(var(--light-s) + 10%),calc(var(--light-l) - 10%),var(--light-a)) 0%,hsl(0,0%,92%) 71%,hsla(calc(var(--light-h) + 10deg),calc(var(--light-s) + 5%),calc(var(--light-l) + 5%),var(--light-a)) 100%)}@media screen and (max-width: 768px){.hero.is-light.is-bold .navbar-menu{background-image:linear-gradient(141deg,hsla(calc(var(--light-h) - 10deg),calc(var(--light-s) + 10%),calc(var(--light-l) - 10%),var(--light-a)) 0%,hsl(0,0%,92%) 71%,hsla(calc(var(--light-h) + 10deg),calc(var(--light-s) + 5%),calc(var(--light-l) + 5%),var(--light-a)) 100%)}}.hero.is-dark{background-color:var(--dark);color:var(--dark-invert)}.hero.is-dark a:not(.button,.dropdown-item,.tag,.pagination-link.is-current),.hero.is-dark strong{color:inherit}.hero.is-dark .title{color:var(--dark-invert)}.hero.is-dark .subtitle{color:var(--dark-invert-bis)}.hero.is-dark .subtitle a:not(.button),.hero.is-dark .subtitle strong{color:var(--dark-invert)}@media screen and (max-width: 1023px){.hero.is-dark .navbar-menu{background-color:var(--dark)}}.hero.is-dark .navbar-item,.hero.is-dark .navbar-link{color:var(--dark-invert-ter)}.hero.is-dark a.navbar-item:hover,.hero.is-dark a.navbar-item.is-active,.hero.is-dark .navbar-link:hover,.hero.is-dark .navbar-link.is-active{background-color:hsla(var(--dark-h),var(--dark-s),calc(var(--dark-l) + -5%),var(--dark-a));color:var(--dark-invert)}.hero.is-dark .tabs a{color:var(--dark-invert);opacity:.9}.hero.is-dark .tabs a:hover{opacity:1}.hero.is-dark .tabs li.is-active a{color:var(--dark)!important;opacity:1}.hero.is-dark .tabs.is-boxed a,.hero.is-dark .tabs.is-toggle a{color:var(--dark-invert)}.hero.is-dark .tabs.is-boxed a:hover,.hero.is-dark .tabs.is-toggle a:hover{background-color:rgba(var(--scheme-invert-rgb),.1)}.hero.is-dark .tabs.is-boxed li.is-active a,.hero.is-dark .tabs.is-boxed li.is-active a:hover,.hero.is-dark .tabs.is-toggle li.is-active a,.hero.is-dark .tabs.is-toggle li.is-active a:hover{background-color:var(--dark-invert);border-color:var(--dark-invert);color:var(--dark)}.hero.is-dark.is-bold{background-image:linear-gradient(141deg,hsla(calc(var(--dark-h) - 10deg),calc(var(--dark-s) + 10%),calc(var(--dark-l) - 10%),var(--dark-a)) 0%,hsl(0,0%,21%) 71%,hsla(calc(var(--dark-h) + 10deg),calc(var(--dark-s) + 5%),calc(var(--dark-l) + 5%),var(--dark-a)) 100%)}@media screen and (max-width: 768px){.hero.is-dark.is-bold .navbar-menu{background-image:linear-gradient(141deg,hsla(calc(var(--dark-h) - 10deg),calc(var(--dark-s) + 10%),calc(var(--dark-l) - 10%),var(--dark-a)) 0%,hsl(0,0%,21%) 71%,hsla(calc(var(--dark-h) + 10deg),calc(var(--dark-s) + 5%),calc(var(--dark-l) + 5%),var(--dark-a)) 100%)}}.hero.is-primary{background-color:var(--primary);color:var(--primary-invert)}.hero.is-primary a:not(.button,.dropdown-item,.tag,.pagination-link.is-current),.hero.is-primary strong{color:inherit}.hero.is-primary .title{color:var(--primary-invert)}.hero.is-primary .subtitle{color:var(--primary-invert-bis)}.hero.is-primary .subtitle a:not(.button),.hero.is-primary .subtitle strong{color:var(--primary-invert)}@media screen and (max-width: 1023px){.hero.is-primary .navbar-menu{background-color:var(--primary)}}.hero.is-primary .navbar-item,.hero.is-primary .navbar-link{color:var(--primary-invert-ter)}.hero.is-primary a.navbar-item:hover,.hero.is-primary a.navbar-item.is-active,.hero.is-primary .navbar-link:hover,.hero.is-primary .navbar-link.is-active{background-color:hsla(var(--primary-h),var(--primary-s),calc(var(--primary-l) + -5%),var(--primary-a));color:var(--primary-invert)}.hero.is-primary .tabs a{color:var(--primary-invert);opacity:.9}.hero.is-primary .tabs a:hover{opacity:1}.hero.is-primary .tabs li.is-active a{color:var(--primary)!important;opacity:1}.hero.is-primary .tabs.is-boxed a,.hero.is-primary .tabs.is-toggle a{color:var(--primary-invert)}.hero.is-primary .tabs.is-boxed a:hover,.hero.is-primary .tabs.is-toggle a:hover{background-color:rgba(var(--scheme-invert-rgb),.1)}.hero.is-primary .tabs.is-boxed li.is-active a,.hero.is-primary .tabs.is-boxed li.is-active a:hover,.hero.is-primary .tabs.is-toggle li.is-active a,.hero.is-primary .tabs.is-toggle li.is-active a:hover{background-color:var(--primary-invert);border-color:var(--primary-invert);color:var(--primary)}.hero.is-primary.is-bold{background-image:linear-gradient(141deg,hsla(calc(var(--primary-h) - 10deg),calc(var(--primary-s) + 10%),calc(var(--primary-l) - 10%),var(--primary-a)) 0%,hsl(96,53%,43%) 71%,hsla(calc(var(--primary-h) + 10deg),calc(var(--primary-s) + 5%),calc(var(--primary-l) + 5%),var(--primary-a)) 100%)}@media screen and (max-width: 768px){.hero.is-primary.is-bold .navbar-menu{background-image:linear-gradient(141deg,hsla(calc(var(--primary-h) - 10deg),calc(var(--primary-s) + 10%),calc(var(--primary-l) - 10%),var(--primary-a)) 0%,hsl(96,53%,43%) 71%,hsla(calc(var(--primary-h) + 10deg),calc(var(--primary-s) + 5%),calc(var(--primary-l) + 5%),var(--primary-a)) 100%)}}.hero.is-secondary{background-color:var(--secondary);color:var(--secondary-invert)}.hero.is-secondary a:not(.button,.dropdown-item,.tag,.pagination-link.is-current),.hero.is-secondary strong{color:inherit}.hero.is-secondary .title{color:var(--secondary-invert)}.hero.is-secondary .subtitle{color:var(--secondary-invert-bis)}.hero.is-secondary .subtitle a:not(.button),.hero.is-secondary .subtitle strong{color:var(--secondary-invert)}@media screen and (max-width: 1023px){.hero.is-secondary .navbar-menu{background-color:var(--secondary)}}.hero.is-secondary .navbar-item,.hero.is-secondary .navbar-link{color:var(--secondary-invert-ter)}.hero.is-secondary a.navbar-item:hover,.hero.is-secondary a.navbar-item.is-active,.hero.is-secondary .navbar-link:hover,.hero.is-secondary .navbar-link.is-active{background-color:hsla(var(--secondary-h),var(--secondary-s),calc(var(--secondary-l) + -5%),var(--secondary-a));color:var(--secondary-invert)}.hero.is-secondary .tabs a{color:var(--secondary-invert);opacity:.9}.hero.is-secondary .tabs a:hover{opacity:1}.hero.is-secondary .tabs li.is-active a{color:var(--secondary)!important;opacity:1}.hero.is-secondary .tabs.is-boxed a,.hero.is-secondary .tabs.is-toggle a{color:var(--secondary-invert)}.hero.is-secondary .tabs.is-boxed a:hover,.hero.is-secondary .tabs.is-toggle a:hover{background-color:rgba(var(--scheme-invert-rgb),.1)}.hero.is-secondary .tabs.is-boxed li.is-active a,.hero.is-secondary .tabs.is-boxed li.is-active a:hover,.hero.is-secondary .tabs.is-toggle li.is-active a,.hero.is-secondary .tabs.is-toggle li.is-active a:hover{background-color:var(--secondary-invert);border-color:var(--secondary-invert);color:var(--secondary)}.hero.is-secondary.is-bold{background-image:linear-gradient(141deg,hsla(calc(var(--secondary-h) - 10deg),calc(var(--secondary-s) + 10%),calc(var(--secondary-l) - 10%),var(--secondary-a)) 0%,hsl(217,61%,40%) 71%,hsla(calc(var(--secondary-h) + 10deg),calc(var(--secondary-s) + 5%),calc(var(--secondary-l) + 5%),var(--secondary-a)) 100%)}@media screen and (max-width: 768px){.hero.is-secondary.is-bold .navbar-menu{background-image:linear-gradient(141deg,hsla(calc(var(--secondary-h) - 10deg),calc(var(--secondary-s) + 10%),calc(var(--secondary-l) - 10%),var(--secondary-a)) 0%,hsl(217,61%,40%) 71%,hsla(calc(var(--secondary-h) + 10deg),calc(var(--secondary-s) + 5%),calc(var(--secondary-l) + 5%),var(--secondary-a)) 100%)}}.hero.is-link{background-color:var(--link);color:var(--link-invert)}.hero.is-link a:not(.button,.dropdown-item,.tag,.pagination-link.is-current),.hero.is-link strong{color:inherit}.hero.is-link .title{color:var(--link-invert)}.hero.is-link .subtitle{color:var(--link-invert-bis)}.hero.is-link .subtitle a:not(.button),.hero.is-link .subtitle strong{color:var(--link-invert)}@media screen and (max-width: 1023px){.hero.is-link .navbar-menu{background-color:var(--link)}}.hero.is-link .navbar-item,.hero.is-link .navbar-link{color:var(--link-invert-ter)}.hero.is-link a.navbar-item:hover,.hero.is-link a.navbar-item.is-active,.hero.is-link .navbar-link:hover,.hero.is-link .navbar-link.is-active{background-color:hsla(var(--link-h),var(--link-s),calc(var(--link-l) + -5%),var(--link-a));color:var(--link-invert)}.hero.is-link .tabs a{color:var(--link-invert);opacity:.9}.hero.is-link .tabs a:hover{opacity:1}.hero.is-link .tabs li.is-active a{color:var(--link)!important;opacity:1}.hero.is-link .tabs.is-boxed a,.hero.is-link .tabs.is-toggle a{color:var(--link-invert)}.hero.is-link .tabs.is-boxed a:hover,.hero.is-link .tabs.is-toggle a:hover{background-color:rgba(var(--scheme-invert-rgb),.1)}.hero.is-link .tabs.is-boxed li.is-active a,.hero.is-link .tabs.is-boxed li.is-active a:hover,.hero.is-link .tabs.is-toggle li.is-active a,.hero.is-link .tabs.is-toggle li.is-active a:hover{background-color:var(--link-invert);border-color:var(--link-invert);color:var(--link)}.hero.is-link.is-bold{background-image:linear-gradient(141deg,hsla(calc(var(--link-h) - 10deg),calc(var(--link-s) + 10%),calc(var(--link-l) - 10%),var(--link-a)) 0%,hsl(96,53%,43%) 71%,hsla(calc(var(--link-h) + 10deg),calc(var(--link-s) + 5%),calc(var(--link-l) + 5%),var(--link-a)) 100%)}@media screen and (max-width: 768px){.hero.is-link.is-bold .navbar-menu{background-image:linear-gradient(141deg,hsla(calc(var(--link-h) - 10deg),calc(var(--link-s) + 10%),calc(var(--link-l) - 10%),var(--link-a)) 0%,hsl(96,53%,43%) 71%,hsla(calc(var(--link-h) + 10deg),calc(var(--link-s) + 5%),calc(var(--link-l) + 5%),var(--link-a)) 100%)}}.hero.is-info{background-color:var(--info);color:var(--info-invert)}.hero.is-info a:not(.button,.dropdown-item,.tag,.pagination-link.is-current),.hero.is-info strong{color:inherit}.hero.is-info .title{color:var(--info-invert)}.hero.is-info .subtitle{color:var(--info-invert-bis)}.hero.is-info .subtitle a:not(.button),.hero.is-info .subtitle strong{color:var(--info-invert)}@media screen and (max-width: 1023px){.hero.is-info .navbar-menu{background-color:var(--info)}}.hero.is-info .navbar-item,.hero.is-info .navbar-link{color:var(--info-invert-ter)}.hero.is-info a.navbar-item:hover,.hero.is-info a.navbar-item.is-active,.hero.is-info .navbar-link:hover,.hero.is-info .navbar-link.is-active{background-color:hsla(var(--info-h),var(--info-s),calc(var(--info-l) + -5%),var(--info-a));color:var(--info-invert)}.hero.is-info .tabs a{color:var(--info-invert);opacity:.9}.hero.is-info .tabs a:hover{opacity:1}.hero.is-info .tabs li.is-active a{color:var(--info)!important;opacity:1}.hero.is-info .tabs.is-boxed a,.hero.is-info .tabs.is-toggle a{color:var(--info-invert)}.hero.is-info .tabs.is-boxed a:hover,.hero.is-info .tabs.is-toggle a:hover{background-color:rgba(var(--scheme-invert-rgb),.1)}.hero.is-info .tabs.is-boxed li.is-active a,.hero.is-info .tabs.is-boxed li.is-active a:hover,.hero.is-info .tabs.is-toggle li.is-active a,.hero.is-info .tabs.is-toggle li.is-active a:hover{background-color:var(--info-invert);border-color:var(--info-invert);color:var(--info)}.hero.is-info.is-bold{background-image:linear-gradient(141deg,hsla(calc(var(--info-h) - 10deg),calc(var(--info-s) + 10%),calc(var(--info-l) - 10%),var(--info-a)) 0%,hsl(207,61%,53%) 71%,hsla(calc(var(--info-h) + 10deg),calc(var(--info-s) + 5%),calc(var(--info-l) + 5%),var(--info-a)) 100%)}@media screen and (max-width: 768px){.hero.is-info.is-bold .navbar-menu{background-image:linear-gradient(141deg,hsla(calc(var(--info-h) - 10deg),calc(var(--info-s) + 10%),calc(var(--info-l) - 10%),var(--info-a)) 0%,hsl(207,61%,53%) 71%,hsla(calc(var(--info-h) + 10deg),calc(var(--info-s) + 5%),calc(var(--info-l) + 5%),var(--info-a)) 100%)}}.hero.is-success{background-color:var(--success);color:var(--success-invert)}.hero.is-success a:not(.button,.dropdown-item,.tag,.pagination-link.is-current),.hero.is-success strong{color:inherit}.hero.is-success .title{color:var(--success-invert)}.hero.is-success .subtitle{color:var(--success-invert-bis)}.hero.is-success .subtitle a:not(.button),.hero.is-success .subtitle strong{color:var(--success-invert)}@media screen and (max-width: 1023px){.hero.is-success .navbar-menu{background-color:var(--success)}}.hero.is-success .navbar-item,.hero.is-success .navbar-link{color:var(--success-invert-ter)}.hero.is-success a.navbar-item:hover,.hero.is-success a.navbar-item.is-active,.hero.is-success .navbar-link:hover,.hero.is-success .navbar-link.is-active{background-color:hsla(var(--success-h),var(--success-s),calc(var(--success-l) + -5%),var(--success-a));color:var(--success-invert)}.hero.is-success .tabs a{color:var(--success-invert);opacity:.9}.hero.is-success .tabs a:hover{opacity:1}.hero.is-success .tabs li.is-active a{color:var(--success)!important;opacity:1}.hero.is-success .tabs.is-boxed a,.hero.is-success .tabs.is-toggle a{color:var(--success-invert)}.hero.is-success .tabs.is-boxed a:hover,.hero.is-success .tabs.is-toggle a:hover{background-color:rgba(var(--scheme-invert-rgb),.1)}.hero.is-success .tabs.is-boxed li.is-active a,.hero.is-success .tabs.is-boxed li.is-active a:hover,.hero.is-success .tabs.is-toggle li.is-active a,.hero.is-success .tabs.is-toggle li.is-active a:hover{background-color:var(--success-invert);border-color:var(--success-invert);color:var(--success)}.hero.is-success.is-bold{background-image:linear-gradient(141deg,hsla(calc(var(--success-h) - 10deg),calc(var(--success-s) + 10%),calc(var(--success-l) - 10%),var(--success-a)) 0%,hsl(96,53%,48%) 71%,hsla(calc(var(--success-h) + 10deg),calc(var(--success-s) + 5%),calc(var(--success-l) + 5%),var(--success-a)) 100%)}@media screen and (max-width: 768px){.hero.is-success.is-bold .navbar-menu{background-image:linear-gradient(141deg,hsla(calc(var(--success-h) - 10deg),calc(var(--success-s) + 10%),calc(var(--success-l) - 10%),var(--success-a)) 0%,hsl(96,53%,48%) 71%,hsla(calc(var(--success-h) + 10deg),calc(var(--success-s) + 5%),calc(var(--success-l) + 5%),var(--success-a)) 100%)}}.hero.is-warning{background-color:var(--warning);color:var(--warning-invert)}.hero.is-warning a:not(.button,.dropdown-item,.tag,.pagination-link.is-current),.hero.is-warning strong{color:inherit}.hero.is-warning .title{color:var(--warning-invert)}.hero.is-warning .subtitle{color:var(--warning-invert-bis)}.hero.is-warning .subtitle a:not(.button),.hero.is-warning .subtitle strong{color:var(--warning-invert)}@media screen and (max-width: 1023px){.hero.is-warning .navbar-menu{background-color:var(--warning)}}.hero.is-warning .navbar-item,.hero.is-warning .navbar-link{color:var(--warning-invert-ter)}.hero.is-warning a.navbar-item:hover,.hero.is-warning a.navbar-item.is-active,.hero.is-warning .navbar-link:hover,.hero.is-warning .navbar-link.is-active{background-color:hsla(var(--warning-h),var(--warning-s),calc(var(--warning-l) + -5%),var(--warning-a));color:var(--warning-invert)}.hero.is-warning .tabs a{color:var(--warning-invert);opacity:.9}.hero.is-warning .tabs a:hover{opacity:1}.hero.is-warning .tabs li.is-active a{color:var(--warning)!important;opacity:1}.hero.is-warning .tabs.is-boxed a,.hero.is-warning .tabs.is-toggle a{color:var(--warning-invert)}.hero.is-warning .tabs.is-boxed a:hover,.hero.is-warning .tabs.is-toggle a:hover{background-color:rgba(var(--scheme-invert-rgb),.1)}.hero.is-warning .tabs.is-boxed li.is-active a,.hero.is-warning .tabs.is-boxed li.is-active a:hover,.hero.is-warning .tabs.is-toggle li.is-active a,.hero.is-warning .tabs.is-toggle li.is-active a:hover{background-color:var(--warning-invert);border-color:var(--warning-invert);color:var(--warning)}.hero.is-warning.is-bold{background-image:linear-gradient(141deg,hsla(calc(var(--warning-h) - 10deg),calc(var(--warning-s) + 10%),calc(var(--warning-l) - 10%),var(--warning-a)) 0%,hsl(44,100%,77%) 71%,hsla(calc(var(--warning-h) + 10deg),calc(var(--warning-s) + 5%),calc(var(--warning-l) + 5%),var(--warning-a)) 100%)}@media screen and (max-width: 768px){.hero.is-warning.is-bold .navbar-menu{background-image:linear-gradient(141deg,hsla(calc(var(--warning-h) - 10deg),calc(var(--warning-s) + 10%),calc(var(--warning-l) - 10%),var(--warning-a)) 0%,hsl(44,100%,77%) 71%,hsla(calc(var(--warning-h) + 10deg),calc(var(--warning-s) + 5%),calc(var(--warning-l) + 5%),var(--warning-a)) 100%)}}.hero.is-danger{background-color:var(--danger);color:var(--danger-invert)}.hero.is-danger a:not(.button,.dropdown-item,.tag,.pagination-link.is-current),.hero.is-danger strong{color:inherit}.hero.is-danger .title{color:var(--danger-invert)}.hero.is-danger .subtitle{color:var(--danger-invert-bis)}.hero.is-danger .subtitle a:not(.button),.hero.is-danger .subtitle strong{color:var(--danger-invert)}@media screen and (max-width: 1023px){.hero.is-danger .navbar-menu{background-color:var(--danger)}}.hero.is-danger .navbar-item,.hero.is-danger .navbar-link{color:var(--danger-invert-ter)}.hero.is-danger a.navbar-item:hover,.hero.is-danger a.navbar-item.is-active,.hero.is-danger .navbar-link:hover,.hero.is-danger .navbar-link.is-active{background-color:hsla(var(--danger-h),var(--danger-s),calc(var(--danger-l) + -5%),var(--danger-a));color:var(--danger-invert)}.hero.is-danger .tabs a{color:var(--danger-invert);opacity:.9}.hero.is-danger .tabs a:hover{opacity:1}.hero.is-danger .tabs li.is-active a{color:var(--danger)!important;opacity:1}.hero.is-danger .tabs.is-boxed a,.hero.is-danger .tabs.is-toggle a{color:var(--danger-invert)}.hero.is-danger .tabs.is-boxed a:hover,.hero.is-danger .tabs.is-toggle a:hover{background-color:rgba(var(--scheme-invert-rgb),.1)}.hero.is-danger .tabs.is-boxed li.is-active a,.hero.is-danger .tabs.is-boxed li.is-active a:hover,.hero.is-danger .tabs.is-toggle li.is-active a,.hero.is-danger .tabs.is-toggle li.is-active a:hover{background-color:var(--danger-invert);border-color:var(--danger-invert);color:var(--danger)}.hero.is-danger.is-bold{background-image:linear-gradient(141deg,hsla(calc(var(--danger-h) - 10deg),calc(var(--danger-s) + 10%),calc(var(--danger-l) - 10%),var(--danger-a)) 0%,hsl(348,86%,61%) 71%,hsla(calc(var(--danger-h) + 10deg),calc(var(--danger-s) + 5%),calc(var(--danger-l) + 5%),var(--danger-a)) 100%)}@media screen and (max-width: 768px){.hero.is-danger.is-bold .navbar-menu{background-image:linear-gradient(141deg,hsla(calc(var(--danger-h) - 10deg),calc(var(--danger-s) + 10%),calc(var(--danger-l) - 10%),var(--danger-a)) 0%,hsl(348,86%,61%) 71%,hsla(calc(var(--danger-h) + 10deg),calc(var(--danger-s) + 5%),calc(var(--danger-l) + 5%),var(--danger-a)) 100%)}}.hero.is-small{--hero-body-padding: var(--hero-body-padding-small)}@media screen and (min-width: 769px),print{.hero.is-medium{--hero-body-padding: var(--hero-body-padding-medium)}}@media screen and (min-width: 769px),print{.hero.is-large{--hero-body-padding: var(--hero-body-padding-large)}}.hero.is-halfheight .hero-body,.hero.is-fullheight .hero-body,.hero.is-fullheight-with-navbar .hero-body{align-items:center;display:flex}.hero.is-halfheight .hero-body>.container,.hero.is-fullheight .hero-body>.container,.hero.is-fullheight-with-navbar .hero-body>.container{flex-grow:1;flex-shrink:1}.hero.is-halfheight{min-height:50vh}.hero.is-fullheight{min-height:100vh}.hero-video{overflow:hidden}.hero-video video{left:50%;min-height:100%;min-width:100%;position:absolute;top:50%;transform:translate3d(-50%,-50%,0)}.hero-video.is-transparent{opacity:.3}@media screen and (max-width: 768px){.hero-video{display:none}}.hero-buttons{margin-top:1.5rem}@media screen and (max-width: 768px){.hero-buttons .button{display:flex}.hero-buttons .button:not(:last-child){margin-bottom:.75rem}}@media screen and (min-width: 769px),print{.hero-buttons{display:flex;justify-content:center}.hero-buttons .button:not(:last-child){margin-right:1.5rem}}.hero-head,.hero-foot{flex-grow:0;flex-shrink:0}.hero-body{flex-grow:1;flex-shrink:0;padding:var(--hero-body-padding)}@media screen and (min-width: 769px) and (max-width: 1023px){.hero-body{padding:var(--hero-body-padding-tablet)}}:root{--section-padding: 3rem 1.5rem;--section-padding-medium: 9rem 4.5rem;--section-padding-large: 18rem 6rem}.section{padding:var(--section-padding)}@media screen and (min-width: 1024px){.section{padding:var(--section-padding-desktop)}.section.is-medium{padding:var(--section-padding-medium)}.section.is-large{padding:var(--section-padding-large)}}:root{--footer-background-color: var(--scheme-main-bis);--footer-color: false;--footer-padding: 3rem 1.5rem 6rem}.footer{background-color:var(--footer-background-color);padding:var(--footer-padding)}.switch[type=checkbox]{outline:0;-webkit-user-select:none;user-select:none;display:inline-block;position:absolute;opacity:0}.switch[type=checkbox]:focus+label:before,.switch[type=checkbox]:focus+label:after{outline:1px dotted hsl(0,0%,71%)}.switch[type=checkbox][disabled]{cursor:not-allowed}.switch[type=checkbox][disabled]+label{opacity:.5}.switch[type=checkbox][disabled]+label:before{opacity:.5}.switch[type=checkbox][disabled]+label:after{opacity:.5}.switch[type=checkbox][disabled]+label:hover{cursor:not-allowed}.switch[type=checkbox]+label{position:relative;display:inline-flex;align-items:center;justify-content:flex-start;font-size:1rem;height:2.5em;line-height:1.5;padding-left:3.5rem;padding-top:.2rem;cursor:pointer}.switch[type=checkbox]+label:before{position:absolute;display:block;top:calc(50% - .75rem);left:0;width:3rem;height:1.5rem;border:.1rem solid transparent;border-radius:4px;background:hsl(0,0%,71%);content:""}.switch[type=checkbox]+label:after{display:block;position:absolute;top:calc(50% - .5rem);left:.25rem;width:1rem;height:1rem;transform:translateZ(0);border-radius:4px;background:rgb(255,255,255);transition:all .25s ease-out;content:""}.switch[type=checkbox]+label .switch-active,.switch[type=checkbox]+label .switch-inactive{font-size:.9rem;z-index:1;margin-top:-4px}.switch[type=checkbox]+label.has-text-inside .switch-inactive{margin-left:-1.925rem}.switch[type=checkbox]+label.has-text-inside .switch-active{margin-left:-3.25rem}.switch[type=checkbox].is-rtl+label{padding-left:0;padding-right:3.5rem}.switch[type=checkbox].is-rtl+label:before{left:auto;right:0}.switch[type=checkbox].is-rtl+label:after{left:auto;right:1.625rem}.switch[type=checkbox]:checked+label:before{background:hsl(96,53%,43%)}.switch[type=checkbox]:checked+label:after{left:1.625rem}.switch[type=checkbox]:checked.is-rtl+label:after{left:auto;right:.25rem}.switch[type=checkbox].is-outlined+label:before{background-color:transparent;border-color:#b5b5b5}.switch[type=checkbox].is-outlined+label:after{background:hsl(0,0%,71%)}.switch[type=checkbox].is-outlined:checked+label:before{background-color:transparent;border-color:#62a834}.switch[type=checkbox].is-outlined:checked+label:after{background:hsl(96,53%,43%)}.switch[type=checkbox].is-thin+label:before{top:.5454545456rem;height:.375rem}.switch[type=checkbox].is-thin+label:after{box-shadow:0 0 3px #7a7a7a}.switch[type=checkbox].is-rounded+label:before{border-radius:24px}.switch[type=checkbox].is-rounded+label:after{border-radius:50%}.switch[type=checkbox].is-small+label{position:relative;display:inline-flex;align-items:center;justify-content:flex-start;font-size:.75rem;height:2.5em;line-height:1.5;padding-left:2.75rem;padding-top:.2rem;cursor:pointer}.switch[type=checkbox].is-small+label:before{position:absolute;display:block;top:calc(50% - .5625rem);left:0;width:2.25rem;height:1.125rem;border:.1rem solid transparent;border-radius:4px;background:hsl(0,0%,71%);content:""}.switch[type=checkbox].is-small+label:after{display:block;position:absolute;top:calc(50% - .3125rem);left:.25rem;width:.625rem;height:.625rem;transform:translateZ(0);border-radius:4px;background:rgb(255,255,255);transition:all .25s ease-out;content:""}.switch[type=checkbox].is-small+label .switch-active,.switch[type=checkbox].is-small+label .switch-inactive{font-size:.65rem;z-index:1;margin-top:-4px}.switch[type=checkbox].is-small+label.has-text-inside .switch-inactive{margin-left:-1.55rem}.switch[type=checkbox].is-small+label.has-text-inside .switch-active{margin-left:-2.5rem}.switch[type=checkbox].is-small.is-rtl+label{padding-left:0;padding-right:2.75rem}.switch[type=checkbox].is-small.is-rtl+label:before{left:auto;right:0}.switch[type=checkbox].is-small.is-rtl+label:after{left:auto;right:1.25rem}.switch[type=checkbox].is-small:checked+label:before{background:hsl(96,53%,43%)}.switch[type=checkbox].is-small:checked+label:after{left:1.25rem}.switch[type=checkbox].is-small:checked.is-rtl+label:after{left:auto;right:.25rem}.switch[type=checkbox].is-small.is-outlined+label:before{background-color:transparent;border-color:#b5b5b5}.switch[type=checkbox].is-small.is-outlined+label:after{background:hsl(0,0%,71%)}.switch[type=checkbox].is-small.is-outlined:checked+label:before{background-color:transparent;border-color:#62a834}.switch[type=checkbox].is-small.is-outlined:checked+label:after{background:hsl(96,53%,43%)}.switch[type=checkbox].is-small.is-thin+label:before{top:.4090909093rem;height:.28125rem}.switch[type=checkbox].is-small.is-thin+label:after{box-shadow:0 0 3px #7a7a7a}.switch[type=checkbox].is-small.is-rounded+label:before{border-radius:24px}.switch[type=checkbox].is-small.is-rounded+label:after{border-radius:50%}.switch[type=checkbox].is-medium+label{position:relative;display:inline-flex;align-items:center;justify-content:flex-start;font-size:1.25rem;height:2.5em;line-height:1.5;padding-left:4.25rem;padding-top:.2rem;cursor:pointer}.switch[type=checkbox].is-medium+label:before{position:absolute;display:block;top:calc(50% - .9375rem);left:0;width:3.75rem;height:1.875rem;border:.1rem solid transparent;border-radius:4px;background:hsl(0,0%,71%);content:""}.switch[type=checkbox].is-medium+label:after{display:block;position:absolute;top:calc(50% - .6875rem);left:.25rem;width:1.375rem;height:1.375rem;transform:translateZ(0);border-radius:4px;background:rgb(255,255,255);transition:all .25s ease-out;content:""}.switch[type=checkbox].is-medium+label .switch-active,.switch[type=checkbox].is-medium+label .switch-inactive{font-size:1.15rem;z-index:1;margin-top:-4px}.switch[type=checkbox].is-medium+label.has-text-inside .switch-inactive{margin-left:-2.3rem}.switch[type=checkbox].is-medium+label.has-text-inside .switch-active{margin-left:-4rem}.switch[type=checkbox].is-medium.is-rtl+label{padding-left:0;padding-right:4.25rem}.switch[type=checkbox].is-medium.is-rtl+label:before{left:auto;right:0}.switch[type=checkbox].is-medium.is-rtl+label:after{left:auto;right:2rem}.switch[type=checkbox].is-medium:checked+label:before{background:hsl(96,53%,43%)}.switch[type=checkbox].is-medium:checked+label:after{left:2rem}.switch[type=checkbox].is-medium:checked.is-rtl+label:after{left:auto;right:.25rem}.switch[type=checkbox].is-medium.is-outlined+label:before{background-color:transparent;border-color:#b5b5b5}.switch[type=checkbox].is-medium.is-outlined+label:after{background:hsl(0,0%,71%)}.switch[type=checkbox].is-medium.is-outlined:checked+label:before{background-color:transparent;border-color:#62a834}.switch[type=checkbox].is-medium.is-outlined:checked+label:after{background:hsl(96,53%,43%)}.switch[type=checkbox].is-medium.is-thin+label:before{top:.6818181819rem;height:.46875rem}.switch[type=checkbox].is-medium.is-thin+label:after{box-shadow:0 0 3px #7a7a7a}.switch[type=checkbox].is-medium.is-rounded+label:before{border-radius:24px}.switch[type=checkbox].is-medium.is-rounded+label:after{border-radius:50%}.switch[type=checkbox].is-large+label{position:relative;display:inline-flex;align-items:center;justify-content:flex-start;font-size:1.5rem;height:2.5em;line-height:1.5;padding-left:5rem;padding-top:.2rem;cursor:pointer}.switch[type=checkbox].is-large+label:before{position:absolute;display:block;top:calc(50% - 1.125rem);left:0;width:4.5rem;height:2.25rem;border:.1rem solid transparent;border-radius:4px;background:hsl(0,0%,71%);content:""}.switch[type=checkbox].is-large+label:after{display:block;position:absolute;top:calc(50% - .875rem);left:.25rem;width:1.75rem;height:1.75rem;transform:translateZ(0);border-radius:4px;background:rgb(255,255,255);transition:all .25s ease-out;content:""}.switch[type=checkbox].is-large+label .switch-active,.switch[type=checkbox].is-large+label .switch-inactive{font-size:1.4rem;z-index:1;margin-top:-4px}.switch[type=checkbox].is-large+label.has-text-inside .switch-inactive{margin-left:-2.675rem}.switch[type=checkbox].is-large+label.has-text-inside .switch-active{margin-left:-4.75rem}.switch[type=checkbox].is-large.is-rtl+label{padding-left:0;padding-right:5rem}.switch[type=checkbox].is-large.is-rtl+label:before{left:auto;right:0}.switch[type=checkbox].is-large.is-rtl+label:after{left:auto;right:2.375rem}.switch[type=checkbox].is-large:checked+label:before{background:hsl(96,53%,43%)}.switch[type=checkbox].is-large:checked+label:after{left:2.375rem}.switch[type=checkbox].is-large:checked.is-rtl+label:after{left:auto;right:.25rem}.switch[type=checkbox].is-large.is-outlined+label:before{background-color:transparent;border-color:#b5b5b5}.switch[type=checkbox].is-large.is-outlined+label:after{background:hsl(0,0%,71%)}.switch[type=checkbox].is-large.is-outlined:checked+label:before{background-color:transparent;border-color:#62a834}.switch[type=checkbox].is-large.is-outlined:checked+label:after{background:hsl(96,53%,43%)}.switch[type=checkbox].is-large.is-thin+label:before{top:.8181818183rem;height:.5625rem}.switch[type=checkbox].is-large.is-thin+label:after{box-shadow:0 0 3px #7a7a7a}.switch[type=checkbox].is-large.is-rounded+label:before{border-radius:24px}.switch[type=checkbox].is-large.is-rounded+label:after{border-radius:50%}.switch[type=checkbox].is-white+label .switch-active{display:none}.switch[type=checkbox].is-white+label .switch-inactive{display:inline-block}.switch[type=checkbox].is-white:checked+label:before{background:rgb(255,255,255)}.switch[type=checkbox].is-white:checked+label .switch-active{display:inline-block}.switch[type=checkbox].is-white:checked+label .switch-inactive{display:none}.switch[type=checkbox].is-white.is-outlined:checked+label:before{background-color:transparent;border-color:#fff!important}.switch[type=checkbox].is-white.is-outlined:checked+label:after{background:rgb(255,255,255)}.switch[type=checkbox].is-white.is-thin.is-outlined+label:after{box-shadow:none}.switch[type=checkbox].is-unchecked-white+label:before{background:rgb(255,255,255)}.switch[type=checkbox].is-unchecked-white.is-outlined+label:before{background-color:transparent;border-color:#fff!important}.switch[type=checkbox].is-unchecked-white.is-outlined+label:after{background:rgb(255,255,255)}.switch[type=checkbox].is-black+label .switch-active{display:none}.switch[type=checkbox].is-black+label .switch-inactive{display:inline-block}.switch[type=checkbox].is-black:checked+label:before{background:hsl(0,0%,4%)}.switch[type=checkbox].is-black:checked+label .switch-active{display:inline-block}.switch[type=checkbox].is-black:checked+label .switch-inactive{display:none}.switch[type=checkbox].is-black.is-outlined:checked+label:before{background-color:transparent;border-color:#0a0a0a!important}.switch[type=checkbox].is-black.is-outlined:checked+label:after{background:hsl(0,0%,4%)}.switch[type=checkbox].is-black.is-thin.is-outlined+label:after{box-shadow:none}.switch[type=checkbox].is-unchecked-black+label:before{background:hsl(0,0%,4%)}.switch[type=checkbox].is-unchecked-black.is-outlined+label:before{background-color:transparent;border-color:#0a0a0a!important}.switch[type=checkbox].is-unchecked-black.is-outlined+label:after{background:hsl(0,0%,4%)}.switch[type=checkbox].is-light+label .switch-active{display:none}.switch[type=checkbox].is-light+label .switch-inactive{display:inline-block}.switch[type=checkbox].is-light:checked+label:before{background:hsl(0,0%,96%)}.switch[type=checkbox].is-light:checked+label .switch-active{display:inline-block}.switch[type=checkbox].is-light:checked+label .switch-inactive{display:none}.switch[type=checkbox].is-light.is-outlined:checked+label:before{background-color:transparent;border-color:#f5f5f5!important}.switch[type=checkbox].is-light.is-outlined:checked+label:after{background:hsl(0,0%,96%)}.switch[type=checkbox].is-light.is-thin.is-outlined+label:after{box-shadow:none}.switch[type=checkbox].is-unchecked-light+label:before{background:hsl(0,0%,96%)}.switch[type=checkbox].is-unchecked-light.is-outlined+label:before{background-color:transparent;border-color:#f5f5f5!important}.switch[type=checkbox].is-unchecked-light.is-outlined+label:after{background:hsl(0,0%,96%)}.switch[type=checkbox].is-dark+label .switch-active{display:none}.switch[type=checkbox].is-dark+label .switch-inactive{display:inline-block}.switch[type=checkbox].is-dark:checked+label:before{background:hsl(0,0%,21%)}.switch[type=checkbox].is-dark:checked+label .switch-active{display:inline-block}.switch[type=checkbox].is-dark:checked+label .switch-inactive{display:none}.switch[type=checkbox].is-dark.is-outlined:checked+label:before{background-color:transparent;border-color:#363636!important}.switch[type=checkbox].is-dark.is-outlined:checked+label:after{background:hsl(0,0%,21%)}.switch[type=checkbox].is-dark.is-thin.is-outlined+label:after{box-shadow:none}.switch[type=checkbox].is-unchecked-dark+label:before{background:hsl(0,0%,21%)}.switch[type=checkbox].is-unchecked-dark.is-outlined+label:before{background-color:transparent;border-color:#363636!important}.switch[type=checkbox].is-unchecked-dark.is-outlined+label:after{background:hsl(0,0%,21%)}.switch[type=checkbox].is-primary+label .switch-active{display:none}.switch[type=checkbox].is-primary+label .switch-inactive{display:inline-block}.switch[type=checkbox].is-primary:checked+label:before{background:hsl(96,53%,43%)}.switch[type=checkbox].is-primary:checked+label .switch-active{display:inline-block}.switch[type=checkbox].is-primary:checked+label .switch-inactive{display:none}.switch[type=checkbox].is-primary.is-outlined:checked+label:before{background-color:transparent;border-color:#62a834!important}.switch[type=checkbox].is-primary.is-outlined:checked+label:after{background:hsl(96,53%,43%)}.switch[type=checkbox].is-primary.is-thin.is-outlined+label:after{box-shadow:none}.switch[type=checkbox].is-unchecked-primary+label:before{background:hsl(96,53%,43%)}.switch[type=checkbox].is-unchecked-primary.is-outlined+label:before{background-color:transparent;border-color:#62a834!important}.switch[type=checkbox].is-unchecked-primary.is-outlined+label:after{background:hsl(96,53%,43%)}.switch[type=checkbox].is-link+label .switch-active{display:none}.switch[type=checkbox].is-link+label .switch-inactive{display:inline-block}.switch[type=checkbox].is-link:checked+label:before{background:hsl(229,53%,53%)}.switch[type=checkbox].is-link:checked+label .switch-active{display:inline-block}.switch[type=checkbox].is-link:checked+label .switch-inactive{display:none}.switch[type=checkbox].is-link.is-outlined:checked+label:before{background-color:transparent;border-color:#485fc7!important}.switch[type=checkbox].is-link.is-outlined:checked+label:after{background:hsl(229,53%,53%)}.switch[type=checkbox].is-link.is-thin.is-outlined+label:after{box-shadow:none}.switch[type=checkbox].is-unchecked-link+label:before{background:hsl(229,53%,53%)}.switch[type=checkbox].is-unchecked-link.is-outlined+label:before{background-color:transparent;border-color:#485fc7!important}.switch[type=checkbox].is-unchecked-link.is-outlined+label:after{background:hsl(229,53%,53%)}.switch[type=checkbox].is-info+label .switch-active{display:none}.switch[type=checkbox].is-info+label .switch-inactive{display:inline-block}.switch[type=checkbox].is-info:checked+label:before{background:hsl(207,61%,53%)}.switch[type=checkbox].is-info:checked+label .switch-active{display:inline-block}.switch[type=checkbox].is-info:checked+label .switch-inactive{display:none}.switch[type=checkbox].is-info.is-outlined:checked+label:before{background-color:transparent;border-color:#3e8ed0!important}.switch[type=checkbox].is-info.is-outlined:checked+label:after{background:hsl(207,61%,53%)}.switch[type=checkbox].is-info.is-thin.is-outlined+label:after{box-shadow:none}.switch[type=checkbox].is-unchecked-info+label:before{background:hsl(207,61%,53%)}.switch[type=checkbox].is-unchecked-info.is-outlined+label:before{background-color:transparent;border-color:#3e8ed0!important}.switch[type=checkbox].is-unchecked-info.is-outlined+label:after{background:hsl(207,61%,53%)}.switch[type=checkbox].is-success+label .switch-active{display:none}.switch[type=checkbox].is-success+label .switch-inactive{display:inline-block}.switch[type=checkbox].is-success:checked+label:before{background:hsl(96,53%,43%)}.switch[type=checkbox].is-success:checked+label .switch-active{display:inline-block}.switch[type=checkbox].is-success:checked+label .switch-inactive{display:none}.switch[type=checkbox].is-success.is-outlined:checked+label:before{background-color:transparent;border-color:#62a834!important}.switch[type=checkbox].is-success.is-outlined:checked+label:after{background:hsl(96,53%,43%)}.switch[type=checkbox].is-success.is-thin.is-outlined+label:after{box-shadow:none}.switch[type=checkbox].is-unchecked-success+label:before{background:hsl(96,53%,43%)}.switch[type=checkbox].is-unchecked-success.is-outlined+label:before{background-color:transparent;border-color:#62a834!important}.switch[type=checkbox].is-unchecked-success.is-outlined+label:after{background:hsl(96,53%,43%)}.switch[type=checkbox].is-warning+label .switch-active{display:none}.switch[type=checkbox].is-warning+label .switch-inactive{display:inline-block}.switch[type=checkbox].is-warning:checked+label:before{background:hsl(44,100%,77%)}.switch[type=checkbox].is-warning:checked+label .switch-active{display:inline-block}.switch[type=checkbox].is-warning:checked+label .switch-inactive{display:none}.switch[type=checkbox].is-warning.is-outlined:checked+label:before{background-color:transparent;border-color:#ffe08a!important}.switch[type=checkbox].is-warning.is-outlined:checked+label:after{background:hsl(44,100%,77%)}.switch[type=checkbox].is-warning.is-thin.is-outlined+label:after{box-shadow:none}.switch[type=checkbox].is-unchecked-warning+label:before{background:hsl(44,100%,77%)}.switch[type=checkbox].is-unchecked-warning.is-outlined+label:before{background-color:transparent;border-color:#ffe08a!important}.switch[type=checkbox].is-unchecked-warning.is-outlined+label:after{background:hsl(44,100%,77%)}.switch[type=checkbox].is-danger+label .switch-active{display:none}.switch[type=checkbox].is-danger+label .switch-inactive{display:inline-block}.switch[type=checkbox].is-danger:checked+label:before{background:hsl(348,86%,61%)}.switch[type=checkbox].is-danger:checked+label .switch-active{display:inline-block}.switch[type=checkbox].is-danger:checked+label .switch-inactive{display:none}.switch[type=checkbox].is-danger.is-outlined:checked+label:before{background-color:transparent;border-color:#f14668!important}.switch[type=checkbox].is-danger.is-outlined:checked+label:after{background:hsl(348,86%,61%)}.switch[type=checkbox].is-danger.is-thin.is-outlined+label:after{box-shadow:none}.switch[type=checkbox].is-unchecked-danger+label:before{background:hsl(348,86%,61%)}.switch[type=checkbox].is-unchecked-danger.is-outlined+label:before{background-color:transparent;border-color:#f14668!important}.switch[type=checkbox].is-unchecked-danger.is-outlined+label:after{background:hsl(348,86%,61%)}.field-body .switch[type=checkbox]+label{margin-top:.375em}.theme-dark{--text: hsl(0, 0%, 95%);--text-strong: rgb(255, 255, 255);--text-light: hsl(0, 0%, 75%);--link: hsl(96, 53%, 43%);--link-visited: hsl(96, 53%, 43%);--link-hover: hsl(0, 0%, 73%);--link-invert: hsl(0, 0%, 73%);--link-focus: hsl(0, 0%, 73%);--scheme-main: hsl(0, 0%, 16%);--scheme-main-bis: hsl(0, 0%, 19%);--scheme-main-ter: hsl(0, 0%, 19%);--scheme-invert: hsl(0, 0%, 95%);--background: hsl(0, 0%, 19%);--body-background-color: hsl(0, 0%, 19%);--border: hsl(0, 0%, 29%);--border-hover: hsl(0, 0%, 73%);--border-light: hsl(0, 0%, 29%);--shadow: 0 .5em 1em -.125em rgba(8, 8, 8, .5), 0 0px 0 1px rgba(8, 8, 8, .2);--card-header-shadow: 0 .125em .25em rgba(8, 8, 8, .5);--navbar-bottom-box-shadow-size: 0 -.1em .125em;--navbar-box-shadow-color: rgb(8 8 8 / 30%)}body{font-family:Roboto,sans-serif;font-feature-settings:"kern","liga";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.column-narrow .column{padding-top:8px;padding-bottom:8px}.field-label{align-self:center}.field-is-5 .field-label{flex-grow:5}.field-is-4 .field-label{flex-grow:4}.field-is-3 .field-label{flex-grow:3}.field-is-2 .field-label{flex-grow:2}.card-header-button{margin:10px}.card-footer-item.button{border-radius:0;height:unset}@keyframes logo-wiggle{0%{transform:translateY(-70%) rotate(20deg);transform-origin:center}4%{transform:translateY(0) rotate(16deg) scaleY(.999);transform-origin:center}6%{transform:translateY(-2%) rotate(14deg) scaleY(1);transform-origin:center}8%{transform:translateY(0) rotate(12deg);transform-origin:center}18%{transform:rotate(-5deg)}28%{transform:rotate(5deg)}38%{transform:rotate(-1.5deg)}44%{transform:rotate(0)}to{transform:rotate(0)}}.logo-animation .avocado{transform-origin:bottom center;animation:logo-wiggle 10s cubic-bezier(.45,.2,.45,1) 1}@keyframes text-wiggle{0%{transform:translateY(-70%);transform-origin:center}4%{transform:translateY(0) scaleY(.999);transform-origin:center}6%{transform:translateY(-2%) scaleY(1);transform-origin:center}8%{transform:translateY(0);transform-origin:center}}.text-animation .tagline{transform-origin:bottom center;animation:text-wiggle 10s cubic-bezier(.45,.2,.45,1) 1} diff --git a/develop/assets/index-6140690f.js b/develop/assets/index-6140690f.js new file mode 100644 index 0000000..5ba139b --- /dev/null +++ b/develop/assets/index-6140690f.js @@ -0,0 +1,4161 @@ +var EI=Object.defineProperty;var TI=(t,e,n)=>e in t?EI(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var $e=(t,e,n)=>(TI(t,typeof e!="symbol"?e+"":e,n),n),_0=(t,e,n)=>{if(!e.has(t))throw TypeError("Cannot "+n)};var W=(t,e,n)=>(_0(t,e,"read from private field"),n?n.call(t):e.get(t)),pt=(t,e,n)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,n)},Qe=(t,e,n,s)=>(_0(t,e,"write to private field"),s?s.call(t,n):e.set(t,n),n);var Jh=(t,e,n,s)=>({set _(i){Qe(t,e,i,n)},get _(){return W(t,e,s)}}),Ye=(t,e,n)=>(_0(t,e,"access private method"),n);(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))s(i);new MutationObserver(i=>{for(const r of i)if(r.type==="childList")for(const o of r.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&s(o)}).observe(document,{childList:!0,subtree:!0});function n(i){const r={};return i.integrity&&(r.integrity=i.integrity),i.referrerPolicy&&(r.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?r.credentials="include":i.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function s(i){if(i.ep)return;i.ep=!0;const r=n(i);fetch(i.href,r)}})();/** +* @vue/shared v3.4.15 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/function mv(t,e){const n=new Set(t.split(","));return e?s=>n.has(s.toLowerCase()):s=>n.has(s)}const tn={},eu=[],qs=()=>{},AI=()=>!1,zg=t=>t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&(t.charCodeAt(2)>122||t.charCodeAt(2)<97),gv=t=>t.startsWith("onUpdate:"),In=Object.assign,_v=(t,e)=>{const n=t.indexOf(e);n>-1&&t.splice(n,1)},MI=Object.prototype.hasOwnProperty,Mt=(t,e)=>MI.call(t,e),Xe=Array.isArray,tu=t=>Th(t)==="[object Map]",qu=t=>Th(t)==="[object Set]",Qx=t=>Th(t)==="[object Date]",ft=t=>typeof t=="function",Mn=t=>typeof t=="string",Ea=t=>typeof t=="symbol",qt=t=>t!==null&&typeof t=="object",KM=t=>(qt(t)||ft(t))&&ft(t.then)&&ft(t.catch),XM=Object.prototype.toString,Th=t=>XM.call(t),kI=t=>Th(t).slice(8,-1),ZM=t=>Th(t)==="[object Object]",bv=t=>Mn(t)&&t!=="NaN"&&t[0]!=="-"&&""+parseInt(t,10)===t,vm=mv(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Hg=t=>{const e=Object.create(null);return n=>e[n]||(e[n]=t(n))},RI=/-(\w)/g,Tr=Hg(t=>t.replace(RI,(e,n)=>n?n.toUpperCase():"")),CI=/\B([A-Z])/g,Yu=Hg(t=>t.replace(CI,"-$1").toLowerCase()),Vg=Hg(t=>t.charAt(0).toUpperCase()+t.slice(1)),b0=Hg(t=>t?`on${Vg(t)}`:""),Ta=(t,e)=>!Object.is(t,e),wm=(t,e)=>{for(let n=0;n{Object.defineProperty(t,e,{configurable:!0,enumerable:!1,value:n})},If=t=>{const e=parseFloat(t);return isNaN(e)?t:e},OI=t=>{const e=Mn(t)?Number(t):NaN;return isNaN(e)?t:e};let e2;const JM=()=>e2||(e2=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Wg(t){if(Xe(t)){const e={};for(let n=0;n{if(n){const s=n.split(LI);s.length>1&&(e[s[0].trim()]=s[1].trim())}}),e}function os(t){let e="";if(Mn(t))e=t;else if(Xe(t))for(let n=0;nxu(n,e))}const Ue=t=>Mn(t)?t:t==null?"":Xe(t)||qt(t)&&(t.toString===XM||!ft(t.toString))?JSON.stringify(t,e4,2):String(t),e4=(t,e)=>e&&e.__v_isRef?e4(t,e.value):tu(e)?{[`Map(${e.size})`]:[...e.entries()].reduce((n,[s,i],r)=>(n[y0(s,r)+" =>"]=i,n),{})}:qu(e)?{[`Set(${e.size})`]:[...e.values()].map(n=>y0(n))}:Ea(e)?y0(e):qt(e)&&!Xe(e)&&!ZM(e)?String(e):e,y0=(t,e="")=>{var n;return Ea(t)?`Symbol(${(n=t.description)!=null?n:e})`:t};/** +* @vue/reactivity v3.4.15 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/let Vs;class t4{constructor(e=!1){this.detached=e,this._active=!0,this.effects=[],this.cleanups=[],this.parent=Vs,!e&&Vs&&(this.index=(Vs.scopes||(Vs.scopes=[])).push(this)-1)}get active(){return this._active}run(e){if(this._active){const n=Vs;try{return Vs=this,e()}finally{Vs=n}}}on(){Vs=this}off(){Vs=this.parent}stop(e){if(this._active){let n,s;for(n=0,s=this.effects.length;n=2))break}this._dirtyLevel<2&&(this._dirtyLevel=0),Xl()}return this._dirtyLevel>=2}set dirty(e){this._dirtyLevel=e?2:0}run(){if(this._dirtyLevel=0,!this.active)return this.fn();let e=ga,n=Al;try{return ga=!0,Al=this,this._runnings++,t2(this),this.fn()}finally{n2(this),this._runnings--,Al=n,ga=e}}stop(){var e;this.active&&(t2(this),n2(this),(e=this.onStop)==null||e.call(this),this.active=!1)}}function GI(t){return t.value}function t2(t){t._trackId++,t._depsLength=0}function n2(t){if(t.deps&&t.deps.length>t._depsLength){for(let e=t._depsLength;e{const n=new Map;return n.cleanup=t,n.computed=e,n},Ym=new WeakMap,Ml=Symbol(""),xb=Symbol("");function Ds(t,e,n){if(ga&&Al){let s=Ym.get(t);s||Ym.set(t,s=new Map);let i=s.get(n);i||s.set(n,i=c4(()=>s.delete(n))),o4(Al,i)}}function oo(t,e,n,s,i,r){const o=Ym.get(t);if(!o)return;let a=[];if(e==="clear")a=[...o.values()];else if(n==="length"&&Xe(t)){const l=Number(s);o.forEach((c,u)=>{(u==="length"||!Ea(u)&&u>=l)&&a.push(c)})}else switch(n!==void 0&&a.push(o.get(n)),e){case"add":Xe(t)?bv(n)&&a.push(o.get("length")):(a.push(o.get(Ml)),tu(t)&&a.push(o.get(xb)));break;case"delete":Xe(t)||(a.push(o.get(Ml)),tu(t)&&a.push(o.get(xb)));break;case"set":tu(t)&&a.push(o.get(Ml));break}wv();for(const l of a)l&&a4(l,2);xv()}function zI(t,e){var n;return(n=Ym.get(t))==null?void 0:n.get(e)}const HI=mv("__proto__,__v_isRef,__isVue"),u4=new Set(Object.getOwnPropertyNames(Symbol).filter(t=>t!=="arguments"&&t!=="caller").map(t=>Symbol[t]).filter(Ea)),s2=VI();function VI(){const t={};return["includes","indexOf","lastIndexOf"].forEach(e=>{t[e]=function(...n){const s=ut(this);for(let r=0,o=this.length;r{t[e]=function(...n){Kl(),wv();const s=ut(this)[e].apply(this,n);return xv(),Xl(),s}}),t}function WI(t){const e=ut(this);return Ds(e,"has",t),e.hasOwnProperty(t)}class d4{constructor(e=!1,n=!1){this._isReadonly=e,this._shallow=n}get(e,n,s){const i=this._isReadonly,r=this._shallow;if(n==="__v_isReactive")return!i;if(n==="__v_isReadonly")return i;if(n==="__v_isShallow")return r;if(n==="__v_raw")return s===(i?r?iL:m4:r?p4:h4).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(s)?e:void 0;const o=Xe(e);if(!i){if(o&&Mt(s2,n))return Reflect.get(s2,n,s);if(n==="hasOwnProperty")return WI}const a=Reflect.get(e,n,s);return(Ea(n)?u4.has(n):HI(n))||(i||Ds(e,"get",n),r)?a:$n(a)?o&&bv(n)?a:a.value:qt(a)?i?_4(a):Ku(a):a}}class f4 extends d4{constructor(e=!1){super(!1,e)}set(e,n,s,i){let r=e[n];if(!this._shallow){const l=Su(r);if(!Km(s)&&!Su(s)&&(r=ut(r),s=ut(s)),!Xe(e)&&$n(r)&&!$n(s))return l?!1:(r.value=s,!0)}const o=Xe(e)&&bv(n)?Number(n)t,jg=t=>Reflect.getPrototypeOf(t);function Qh(t,e,n=!1,s=!1){t=t.__v_raw;const i=ut(t),r=ut(e);n||(Ta(e,r)&&Ds(i,"get",e),Ds(i,"get",r));const{has:o}=jg(i),a=s?Sv:n?Av:Lf;if(o.call(i,e))return a(t.get(e));if(o.call(i,r))return a(t.get(r));t!==i&&t.get(e)}function ep(t,e=!1){const n=this.__v_raw,s=ut(n),i=ut(t);return e||(Ta(t,i)&&Ds(s,"has",t),Ds(s,"has",i)),t===i?n.has(t):n.has(t)||n.has(i)}function tp(t,e=!1){return t=t.__v_raw,!e&&Ds(ut(t),"iterate",Ml),Reflect.get(t,"size",t)}function i2(t){t=ut(t);const e=ut(this);return jg(e).has.call(e,t)||(e.add(t),oo(e,"add",t,t)),this}function r2(t,e){e=ut(e);const n=ut(this),{has:s,get:i}=jg(n);let r=s.call(n,t);r||(t=ut(t),r=s.call(n,t));const o=i.call(n,t);return n.set(t,e),r?Ta(e,o)&&oo(n,"set",t,e):oo(n,"add",t,e),this}function o2(t){const e=ut(this),{has:n,get:s}=jg(e);let i=n.call(e,t);i||(t=ut(t),i=n.call(e,t)),s&&s.call(e,t);const r=e.delete(t);return i&&oo(e,"delete",t,void 0),r}function a2(){const t=ut(this),e=t.size!==0,n=t.clear();return e&&oo(t,"clear",void 0,void 0),n}function np(t,e){return function(s,i){const r=this,o=r.__v_raw,a=ut(o),l=e?Sv:t?Av:Lf;return!t&&Ds(a,"iterate",Ml),o.forEach((c,u)=>s.call(i,l(c),l(u),r))}}function sp(t,e,n){return function(...s){const i=this.__v_raw,r=ut(i),o=tu(r),a=t==="entries"||t===Symbol.iterator&&o,l=t==="keys"&&o,c=i[t](...s),u=n?Sv:e?Av:Lf;return!e&&Ds(r,"iterate",l?xb:Ml),{next(){const{value:d,done:f}=c.next();return f?{value:d,done:f}:{value:a?[u(d[0]),u(d[1])]:u(d),done:f}},[Symbol.iterator](){return this}}}}function Co(t){return function(...e){return t==="delete"?!1:t==="clear"?void 0:this}}function XI(){const t={get(r){return Qh(this,r)},get size(){return tp(this)},has:ep,add:i2,set:r2,delete:o2,clear:a2,forEach:np(!1,!1)},e={get(r){return Qh(this,r,!1,!0)},get size(){return tp(this)},has:ep,add:i2,set:r2,delete:o2,clear:a2,forEach:np(!1,!0)},n={get(r){return Qh(this,r,!0)},get size(){return tp(this,!0)},has(r){return ep.call(this,r,!0)},add:Co("add"),set:Co("set"),delete:Co("delete"),clear:Co("clear"),forEach:np(!0,!1)},s={get(r){return Qh(this,r,!0,!0)},get size(){return tp(this,!0)},has(r){return ep.call(this,r,!0)},add:Co("add"),set:Co("set"),delete:Co("delete"),clear:Co("clear"),forEach:np(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(r=>{t[r]=sp(r,!1,!1),n[r]=sp(r,!0,!1),e[r]=sp(r,!1,!0),s[r]=sp(r,!0,!0)}),[t,n,e,s]}const[ZI,JI,QI,eL]=XI();function Ev(t,e){const n=e?t?eL:QI:t?JI:ZI;return(s,i,r)=>i==="__v_isReactive"?!t:i==="__v_isReadonly"?t:i==="__v_raw"?s:Reflect.get(Mt(n,i)&&i in s?n:s,i,r)}const tL={get:Ev(!1,!1)},nL={get:Ev(!1,!0)},sL={get:Ev(!0,!1)},h4=new WeakMap,p4=new WeakMap,m4=new WeakMap,iL=new WeakMap;function rL(t){switch(t){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function oL(t){return t.__v_skip||!Object.isExtensible(t)?0:rL(kI(t))}function Ku(t){return Su(t)?t:Tv(t,!1,qI,tL,h4)}function g4(t){return Tv(t,!1,KI,nL,p4)}function _4(t){return Tv(t,!0,YI,sL,m4)}function Tv(t,e,n,s,i){if(!qt(t)||t.__v_raw&&!(e&&t.__v_isReactive))return t;const r=i.get(t);if(r)return r;const o=oL(t);if(o===0)return t;const a=new Proxy(t,o===2?s:n);return i.set(t,a),a}function _a(t){return Su(t)?_a(t.__v_raw):!!(t&&t.__v_isReactive)}function Su(t){return!!(t&&t.__v_isReadonly)}function Km(t){return!!(t&&t.__v_isShallow)}function df(t){return _a(t)||Su(t)}function ut(t){const e=t&&t.__v_raw;return e?ut(e):t}function qg(t){return qm(t,"__v_skip",!0),t}const Lf=t=>qt(t)?Ku(t):t,Av=t=>qt(t)?_4(t):t;class b4{constructor(e,n,s,i){this._setter=n,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this.effect=new vv(()=>e(this._value),()=>xm(this,1),()=>this.dep&&l4(this.dep)),this.effect.computed=this,this.effect.active=this._cacheable=!i,this.__v_isReadonly=s}get value(){const e=ut(this);return(!e._cacheable||e.effect.dirty)&&Ta(e._value,e._value=e.effect.run())&&xm(e,2),y4(e),e.effect._dirtyLevel>=1&&xm(e,1),e._value}set value(e){this._setter(e)}get _dirty(){return this.effect.dirty}set _dirty(e){this.effect.dirty=e}}function aL(t,e,n=!1){let s,i;const r=ft(t);return r?(s=t,i=qs):(s=t.get,i=t.set),new b4(s,i,r||!i,n)}function y4(t){ga&&Al&&(t=ut(t),o4(Al,t.dep||(t.dep=c4(()=>t.dep=void 0,t instanceof b4?t:void 0))))}function xm(t,e=2,n){t=ut(t);const s=t.dep;s&&a4(s,e)}function $n(t){return!!(t&&t.__v_isRef===!0)}function Yg(t){return v4(t,!1)}function Mv(t){return v4(t,!0)}function v4(t,e){return $n(t)?t:new lL(t,e)}class lL{constructor(e,n){this.__v_isShallow=n,this.dep=void 0,this.__v_isRef=!0,this._rawValue=n?e:ut(e),this._value=n?e:Lf(e)}get value(){return y4(this),this._value}set value(e){const n=this.__v_isShallow||Km(e)||Su(e);e=n?e:ut(e),Ta(e,this._rawValue)&&(this._rawValue=e,this._value=n?e:Lf(e),xm(this,2))}}function nu(t){return $n(t)?t.value:t}const cL={get:(t,e,n)=>nu(Reflect.get(t,e,n)),set:(t,e,n,s)=>{const i=t[e];return $n(i)&&!$n(n)?(i.value=n,!0):Reflect.set(t,e,n,s)}};function w4(t){return _a(t)?t:new Proxy(t,cL)}function uL(t){const e=Xe(t)?new Array(t.length):{};for(const n in t)e[n]=fL(t,n);return e}class dL{constructor(e,n,s){this._object=e,this._key=n,this._defaultValue=s,this.__v_isRef=!0}get value(){const e=this._object[this._key];return e===void 0?this._defaultValue:e}set value(e){this._object[this._key]=e}get dep(){return zI(ut(this._object),this._key)}}function fL(t,e,n){const s=t[e];return $n(s)?s:new dL(t,e,n)}/** +* @vue/runtime-core v3.4.15 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/function ba(t,e,n,s){let i;try{i=s?t(...s):t()}catch(r){Kg(r,e,n)}return i}function pi(t,e,n,s){if(ft(t)){const r=ba(t,e,n,s);return r&&KM(r)&&r.catch(o=>{Kg(o,e,n)}),r}const i=[];for(let r=0;r>>1,i=rs[s],r=Df(i);rpr&&rs.splice(e,1)}function gL(t){Xe(t)?su.push(...t):(!Qo||!Qo.includes(t,t.allowRecurse?sl+1:sl))&&su.push(t),S4()}function l2(t,e,n=Pf?pr+1:0){for(;nDf(n)-Df(s));if(su.length=0,Qo){Qo.push(...e);return}for(Qo=e,sl=0;slt.id==null?1/0:t.id,_L=(t,e)=>{const n=Df(t)-Df(e);if(n===0){if(t.pre&&!e.pre)return-1;if(e.pre&&!t.pre)return 1}return n};function T4(t){Sb=!1,Pf=!0,rs.sort(_L);const e=qs;try{for(pr=0;prMn(h)?h.trim():h)),d&&(i=n.map(If))}let a,l=s[a=b0(e)]||s[a=b0(Tr(e))];!l&&r&&(l=s[a=b0(Yu(e))]),l&&pi(l,t,6,i);const c=s[a+"Once"];if(c){if(!t.emitted)t.emitted={};else if(t.emitted[a])return;t.emitted[a]=!0,pi(c,t,6,i)}}function A4(t,e,n=!1){const s=e.emitsCache,i=s.get(t);if(i!==void 0)return i;const r=t.emits;let o={},a=!1;if(!ft(t)){const l=c=>{const u=A4(c,e,!0);u&&(a=!0,In(o,u))};!n&&e.mixins.length&&e.mixins.forEach(l),t.extends&&l(t.extends),t.mixins&&t.mixins.forEach(l)}return!r&&!a?(qt(t)&&s.set(t,null),null):(Xe(r)?r.forEach(l=>o[l]=null):In(o,r),qt(t)&&s.set(t,o),o)}function Zg(t,e){return!t||!zg(e)?!1:(e=e.slice(2).replace(/Once$/,""),Mt(t,e[0].toLowerCase()+e.slice(1))||Mt(t,Yu(e))||Mt(t,e))}let On=null,Jg=null;function Xm(t){const e=On;return On=t,Jg=t&&t.type.__scopeId||null,e}function Xu(t){Jg=t}function Zu(){Jg=null}function et(t,e=On,n){if(!e||t._n)return t;const s=(...i)=>{s._d&&v2(-1);const r=Xm(e);let o;try{o=t(...i)}finally{Xm(r),s._d&&v2(1)}return o};return s._n=!0,s._c=!0,s._d=!0,s}function v0(t){const{type:e,vnode:n,proxy:s,withProxy:i,props:r,propsOptions:[o],slots:a,attrs:l,emit:c,render:u,renderCache:d,data:f,setupState:h,ctx:_,inheritAttrs:p}=t;let m,b;const y=Xm(t);try{if(n.shapeFlag&4){const x=i||s,S=x;m=fr(u.call(S,x,d,r,h,f,_)),b=l}else{const x=e;m=fr(x.length>1?x(r,{attrs:l,slots:a,emit:c}):x(r,null)),b=e.props?l:yL(l)}}catch(x){pf.length=0,Kg(x,t,1),m=X(mi)}let v=m;if(b&&p!==!1){const x=Object.keys(b),{shapeFlag:S}=v;x.length&&S&7&&(o&&x.some(gv)&&(b=vL(b,o)),v=Aa(v,b))}return n.dirs&&(v=Aa(v),v.dirs=v.dirs?v.dirs.concat(n.dirs):n.dirs),n.transition&&(v.transition=n.transition),m=v,Xm(y),m}const yL=t=>{let e;for(const n in t)(n==="class"||n==="style"||zg(n))&&((e||(e={}))[n]=t[n]);return e},vL=(t,e)=>{const n={};for(const s in t)(!gv(s)||!(s.slice(9)in e))&&(n[s]=t[s]);return n};function wL(t,e,n){const{props:s,children:i,component:r}=t,{props:o,children:a,patchFlag:l}=e,c=r.emitsOptions;if(e.dirs||e.transition)return!0;if(n&&l>=0){if(l&1024)return!0;if(l&16)return s?c2(s,o,c):!!o;if(l&8){const u=e.dynamicProps;for(let d=0;dt.__isSuspense;function ML(t,e){e&&e.pendingBranch?Xe(t)?e.effects.push(...t):e.effects.push(t):gL(t)}const kL=Symbol.for("v-scx"),RL=()=>yr(kL),ip={};function ya(t,e,n){return k4(t,e,n)}function k4(t,e,{immediate:n,deep:s,flush:i,once:r,onTrack:o,onTrigger:a}=tn){if(e&&r){const w=e;e=(...T)=>{w(...T),S()}}const l=jn,c=w=>s===!0?w:dl(w,s===!1?1:void 0);let u,d=!1,f=!1;if($n(t)?(u=()=>t.value,d=Km(t)):_a(t)?(u=()=>c(t),d=!0):Xe(t)?(f=!0,d=t.some(w=>_a(w)||Km(w)),u=()=>t.map(w=>{if($n(w))return w.value;if(_a(w))return c(w);if(ft(w))return ba(w,l,2)})):ft(t)?e?u=()=>ba(t,l,2):u=()=>(h&&h(),pi(t,l,3,[_])):u=qs,e&&s){const w=u;u=()=>dl(w())}let h,_=w=>{h=v.onStop=()=>{ba(w,l,4),h=v.onStop=void 0}},p;if(i_)if(_=qs,e?n&&pi(e,l,3,[u(),f?[]:void 0,_]):u(),i==="sync"){const w=RL();p=w.__watcherHandles||(w.__watcherHandles=[])}else return qs;let m=f?new Array(t.length).fill(ip):ip;const b=()=>{if(!(!v.active||!v.dirty))if(e){const w=v.run();(s||d||(f?w.some((T,E)=>Ta(T,m[E])):Ta(w,m)))&&(h&&h(),pi(e,l,3,[w,m===ip?void 0:f&&m[0]===ip?[]:m,_]),m=w)}else v.run()};b.allowRecurse=!!e;let y;i==="sync"?y=b:i==="post"?y=()=>Ms(b,l&&l.suspense):(b.pre=!0,l&&(b.id=l.uid),y=()=>Rv(b));const v=new vv(u,qs,y),x=s4(),S=()=>{v.stop(),x&&_v(x.effects,v)};return e?n?b():m=v.run():i==="post"?Ms(v.run.bind(v),l&&l.suspense):v.run(),p&&p.push(S),S}function CL(t,e,n){const s=this.proxy,i=Mn(t)?t.includes(".")?R4(s,t):()=>s[t]:t.bind(s,s);let r;ft(e)?r=e:(r=e.handler,n=e);const o=Ah(this),a=k4(i,r.bind(s),n);return o(),a}function R4(t,e){const n=e.split(".");return()=>{let s=t;for(let i=0;i0){if(n>=e)return t;n++}if(s=s||new Set,s.has(t))return t;if(s.add(t),$n(t))dl(t.value,e,n,s);else if(Xe(t))for(let i=0;i{dl(i,e,n,s)});else if(ZM(t))for(const i in t)dl(t[i],e,n,s);return t}function Ve(t,e){if(On===null)return t;const n=r_(On)||On.proxy,s=t.dirs||(t.dirs=[]);for(let i=0;i{t.isMounted=!0}),Pv(()=>{t.isUnmounting=!0}),t}const ei=[Function,Array],O4={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:ei,onEnter:ei,onAfterEnter:ei,onEnterCancelled:ei,onBeforeLeave:ei,onLeave:ei,onAfterLeave:ei,onLeaveCancelled:ei,onBeforeAppear:ei,onAppear:ei,onAfterAppear:ei,onAppearCancelled:ei},OL={name:"BaseTransition",props:O4,setup(t,{slots:e}){const n=K4(),s=C4();let i;return()=>{const r=e.default&&Iv(e.default(),!0);if(!r||!r.length)return;let o=r[0];if(r.length>1){for(const p of r)if(p.type!==mi){o=p;break}}const a=ut(t),{mode:l}=a;if(s.isLeaving)return w0(o);const c=d2(o);if(!c)return w0(o);const u=Ff(c,a,s,n);Nf(c,u);const d=n.subTree,f=d&&d2(d);let h=!1;const{getTransitionKey:_}=c.type;if(_){const p=_();i===void 0?i=p:p!==i&&(i=p,h=!0)}if(f&&f.type!==mi&&(!il(c,f)||h)){const p=Ff(f,a,s,n);if(Nf(f,p),l==="out-in")return s.isLeaving=!0,p.afterLeave=()=>{s.isLeaving=!1,n.update.active!==!1&&(n.effect.dirty=!0,n.update())},w0(o);l==="in-out"&&c.type!==mi&&(p.delayLeave=(m,b,y)=>{const v=I4(s,f);v[String(f.key)]=f,m[ea]=()=>{b(),m[ea]=void 0,delete u.delayedLeave},u.delayedLeave=y})}return o}}},IL=OL;function I4(t,e){const{leavingVNodes:n}=t;let s=n.get(e.type);return s||(s=Object.create(null),n.set(e.type,s)),s}function Ff(t,e,n,s){const{appear:i,mode:r,persisted:o=!1,onBeforeEnter:a,onEnter:l,onAfterEnter:c,onEnterCancelled:u,onBeforeLeave:d,onLeave:f,onAfterLeave:h,onLeaveCancelled:_,onBeforeAppear:p,onAppear:m,onAfterAppear:b,onAppearCancelled:y}=e,v=String(t.key),x=I4(n,t),S=(E,A)=>{E&&pi(E,s,9,A)},w=(E,A)=>{const O=A[1];S(E,A),Xe(E)?E.every(I=>I.length<=1)&&O():E.length<=1&&O()},T={mode:r,persisted:o,beforeEnter(E){let A=a;if(!n.isMounted)if(i)A=p||a;else return;E[ea]&&E[ea](!0);const O=x[v];O&&il(t,O)&&O.el[ea]&&O.el[ea](),S(A,[E])},enter(E){let A=l,O=c,I=u;if(!n.isMounted)if(i)A=m||l,O=b||c,I=y||u;else return;let B=!1;const U=E[rp]=D=>{B||(B=!0,D?S(I,[E]):S(O,[E]),T.delayedLeave&&T.delayedLeave(),E[rp]=void 0)};A?w(A,[E,U]):U()},leave(E,A){const O=String(t.key);if(E[rp]&&E[rp](!0),n.isUnmounting)return A();S(d,[E]);let I=!1;const B=E[ea]=U=>{I||(I=!0,A(),U?S(_,[E]):S(h,[E]),E[ea]=void 0,x[O]===t&&delete x[O])};x[O]=t,f?w(f,[E,B]):B()},clone(E){return Ff(E,e,n,s)}};return T}function w0(t){if(Qg(t))return t=Aa(t),t.children=null,t}function d2(t){return Qg(t)?t.children?t.children[0]:void 0:t}function Nf(t,e){t.shapeFlag&6&&t.component?Nf(t.component.subTree,e):t.shapeFlag&128?(t.ssContent.transition=e.clone(t.ssContent),t.ssFallback.transition=e.clone(t.ssFallback)):t.transition=e}function Iv(t,e=!1,n){let s=[],i=0;for(let r=0;r1)for(let r=0;rIn({name:t.name},e,{setup:t}))():t}const ff=t=>!!t.type.__asyncLoader,Qg=t=>t.type.__isKeepAlive;function LL(t,e){L4(t,"a",e)}function PL(t,e){L4(t,"da",e)}function L4(t,e,n=jn){const s=t.__wdc||(t.__wdc=()=>{let i=n;for(;i;){if(i.isDeactivated)return;i=i.parent}return t()});if(e_(e,s,n),n){let i=n.parent;for(;i&&i.parent;)Qg(i.parent.vnode)&&DL(s,e,n,i),i=i.parent}}function DL(t,e,n,s){const i=e_(e,t,s,!0);D4(()=>{_v(s[e],i)},n)}function e_(t,e,n=jn,s=!1){if(n){const i=n[t]||(n[t]=[]),r=e.__weh||(e.__weh=(...o)=>{if(n.isUnmounted)return;Kl();const a=Ah(n),l=pi(e,n,t,o);return a(),Xl(),l});return s?i.unshift(r):i.push(r),r}}const So=t=>(e,n=jn)=>(!i_||t==="sp")&&e_(t,(...s)=>e(...s),n),FL=So("bm"),Lv=So("m"),NL=So("bu"),P4=So("u"),Pv=So("bum"),D4=So("um"),$L=So("sp"),UL=So("rtg"),BL=So("rtc");function GL(t,e=jn){e_("ec",t,e)}function Vt(t,e,n,s){let i;const r=n&&n[s];if(Xe(t)||Mn(t)){i=new Array(t.length);for(let o=0,a=t.length;oe(o,a,void 0,r&&r[a]));else{const o=Object.keys(t);i=new Array(o.length);for(let a=0,l=o.length;aJm(e)?!(e.type===mi||e.type===tt&&!N4(e.children)):!0)?t:null}const Eb=t=>t?X4(t)?r_(t)||t.proxy:Eb(t.parent):null,hf=In(Object.create(null),{$:t=>t,$el:t=>t.vnode.el,$data:t=>t.data,$props:t=>t.props,$attrs:t=>t.attrs,$slots:t=>t.slots,$refs:t=>t.refs,$parent:t=>Eb(t.parent),$root:t=>Eb(t.root),$emit:t=>t.emit,$options:t=>Dv(t),$forceUpdate:t=>t.f||(t.f=()=>{t.effect.dirty=!0,Rv(t.update)}),$nextTick:t=>t.n||(t.n=Xg.bind(t.proxy)),$watch:t=>CL.bind(t)}),x0=(t,e)=>t!==tn&&!t.__isScriptSetup&&Mt(t,e),zL={get({_:t},e){const{ctx:n,setupState:s,data:i,props:r,accessCache:o,type:a,appContext:l}=t;let c;if(e[0]!=="$"){const h=o[e];if(h!==void 0)switch(h){case 1:return s[e];case 2:return i[e];case 4:return n[e];case 3:return r[e]}else{if(x0(s,e))return o[e]=1,s[e];if(i!==tn&&Mt(i,e))return o[e]=2,i[e];if((c=t.propsOptions[0])&&Mt(c,e))return o[e]=3,r[e];if(n!==tn&&Mt(n,e))return o[e]=4,n[e];Tb&&(o[e]=0)}}const u=hf[e];let d,f;if(u)return e==="$attrs"&&Ds(t,"get",e),u(t);if((d=a.__cssModules)&&(d=d[e]))return d;if(n!==tn&&Mt(n,e))return o[e]=4,n[e];if(f=l.config.globalProperties,Mt(f,e))return f[e]},set({_:t},e,n){const{data:s,setupState:i,ctx:r}=t;return x0(i,e)?(i[e]=n,!0):s!==tn&&Mt(s,e)?(s[e]=n,!0):Mt(t.props,e)||e[0]==="$"&&e.slice(1)in t?!1:(r[e]=n,!0)},has({_:{data:t,setupState:e,accessCache:n,ctx:s,appContext:i,propsOptions:r}},o){let a;return!!n[o]||t!==tn&&Mt(t,o)||x0(e,o)||(a=r[0])&&Mt(a,o)||Mt(s,o)||Mt(hf,o)||Mt(i.config.globalProperties,o)},defineProperty(t,e,n){return n.get!=null?t._.accessCache[e]=0:Mt(n,"value")&&this.set(t,e,n.value,null),Reflect.defineProperty(t,e,n)}};function f2(t){return Xe(t)?t.reduce((e,n)=>(e[n]=null,e),{}):t}let Tb=!0;function HL(t){const e=Dv(t),n=t.proxy,s=t.ctx;Tb=!1,e.beforeCreate&&h2(e.beforeCreate,t,"bc");const{data:i,computed:r,methods:o,watch:a,provide:l,inject:c,created:u,beforeMount:d,mounted:f,beforeUpdate:h,updated:_,activated:p,deactivated:m,beforeDestroy:b,beforeUnmount:y,destroyed:v,unmounted:x,render:S,renderTracked:w,renderTriggered:T,errorCaptured:E,serverPrefetch:A,expose:O,inheritAttrs:I,components:B,directives:U,filters:D}=e;if(c&&VL(c,s,null),o)for(const H in o){const j=o[H];ft(j)&&(s[H]=j.bind(n))}if(i){const H=i.call(n,n);qt(H)&&(t.data=Ku(H))}if(Tb=!0,r)for(const H in r){const j=r[H],Z=ft(j)?j.bind(n,n):ft(j.get)?j.get.bind(n,n):qs,K=!ft(j)&&ft(j.set)?j.set.bind(n):qs,oe=En({get:Z,set:K});Object.defineProperty(s,H,{enumerable:!0,configurable:!0,get:()=>oe.value,set:Q=>oe.value=Q})}if(a)for(const H in a)$4(a[H],s,n,H);if(l){const H=ft(l)?l.call(n):l;Reflect.ownKeys(H).forEach(j=>{Sm(j,H[j])})}u&&h2(u,t,"c");function F(H,j){Xe(j)?j.forEach(Z=>H(Z.bind(n))):j&&H(j.bind(n))}if(F(FL,d),F(Lv,f),F(NL,h),F(P4,_),F(LL,p),F(PL,m),F(GL,E),F(BL,w),F(UL,T),F(Pv,y),F(D4,x),F($L,A),Xe(O))if(O.length){const H=t.exposed||(t.exposed={});O.forEach(j=>{Object.defineProperty(H,j,{get:()=>n[j],set:Z=>n[j]=Z})})}else t.exposed||(t.exposed={});S&&t.render===qs&&(t.render=S),I!=null&&(t.inheritAttrs=I),B&&(t.components=B),U&&(t.directives=U)}function VL(t,e,n=qs){Xe(t)&&(t=Ab(t));for(const s in t){const i=t[s];let r;qt(i)?"default"in i?r=yr(i.from||s,i.default,!0):r=yr(i.from||s):r=yr(i),$n(r)?Object.defineProperty(e,s,{enumerable:!0,configurable:!0,get:()=>r.value,set:o=>r.value=o}):e[s]=r}}function h2(t,e,n){pi(Xe(t)?t.map(s=>s.bind(e.proxy)):t.bind(e.proxy),e,n)}function $4(t,e,n,s){const i=s.includes(".")?R4(n,s):()=>n[s];if(Mn(t)){const r=e[t];ft(r)&&ya(i,r)}else if(ft(t))ya(i,t.bind(n));else if(qt(t))if(Xe(t))t.forEach(r=>$4(r,e,n,s));else{const r=ft(t.handler)?t.handler.bind(n):e[t.handler];ft(r)&&ya(i,r,t)}}function Dv(t){const e=t.type,{mixins:n,extends:s}=e,{mixins:i,optionsCache:r,config:{optionMergeStrategies:o}}=t.appContext,a=r.get(e);let l;return a?l=a:!i.length&&!n&&!s?l=e:(l={},i.length&&i.forEach(c=>Zm(l,c,o,!0)),Zm(l,e,o)),qt(e)&&r.set(e,l),l}function Zm(t,e,n,s=!1){const{mixins:i,extends:r}=e;r&&Zm(t,r,n,!0),i&&i.forEach(o=>Zm(t,o,n,!0));for(const o in e)if(!(s&&o==="expose")){const a=WL[o]||n&&n[o];t[o]=a?a(t[o],e[o]):e[o]}return t}const WL={data:p2,props:m2,emits:m2,methods:ef,computed:ef,beforeCreate:ps,created:ps,beforeMount:ps,mounted:ps,beforeUpdate:ps,updated:ps,beforeDestroy:ps,beforeUnmount:ps,destroyed:ps,unmounted:ps,activated:ps,deactivated:ps,errorCaptured:ps,serverPrefetch:ps,components:ef,directives:ef,watch:qL,provide:p2,inject:jL};function p2(t,e){return e?t?function(){return In(ft(t)?t.call(this,this):t,ft(e)?e.call(this,this):e)}:e:t}function jL(t,e){return ef(Ab(t),Ab(e))}function Ab(t){if(Xe(t)){const e={};for(let n=0;n1)return n&&ft(e)?e.call(s&&s.proxy):e}}function XL(){return!!(jn||On||$f)}function ZL(t,e,n,s=!1){const i={},r={};qm(r,n_,1),t.propsDefaults=Object.create(null),B4(t,e,i,r);for(const o in t.propsOptions[0])o in i||(i[o]=void 0);n?t.props=s?i:g4(i):t.type.props?t.props=i:t.props=r,t.attrs=r}function JL(t,e,n,s){const{props:i,attrs:r,vnode:{patchFlag:o}}=t,a=ut(i),[l]=t.propsOptions;let c=!1;if((s||o>0)&&!(o&16)){if(o&8){const u=t.vnode.dynamicProps;for(let d=0;d{l=!0;const[f,h]=G4(d,e,!0);In(o,f),h&&a.push(...h)};!n&&e.mixins.length&&e.mixins.forEach(u),t.extends&&u(t.extends),t.mixins&&t.mixins.forEach(u)}if(!r&&!l)return qt(t)&&s.set(t,eu),eu;if(Xe(r))for(let u=0;u-1,h[1]=p<0||_-1||Mt(h,"default"))&&a.push(d)}}}const c=[o,a];return qt(t)&&s.set(t,c),c}function g2(t){return t[0]!=="$"}function _2(t){const e=t&&t.toString().match(/^\s*(function|class) (\w+)/);return e?e[2]:t===null?"null":""}function b2(t,e){return _2(t)===_2(e)}function y2(t,e){return Xe(e)?e.findIndex(n=>b2(n,t)):ft(e)&&b2(e,t)?0:-1}const z4=t=>t[0]==="_"||t==="$stable",Fv=t=>Xe(t)?t.map(fr):[fr(t)],QL=(t,e,n)=>{if(e._n)return e;const s=et((...i)=>Fv(e(...i)),n);return s._c=!1,s},H4=(t,e,n)=>{const s=t._ctx;for(const i in t){if(z4(i))continue;const r=t[i];if(ft(r))e[i]=QL(i,r,s);else if(r!=null){const o=Fv(r);e[i]=()=>o}}},V4=(t,e)=>{const n=Fv(e);t.slots.default=()=>n},eP=(t,e)=>{if(t.vnode.shapeFlag&32){const n=e._;n?(t.slots=ut(e),qm(e,"_",n)):H4(e,t.slots={})}else t.slots={},e&&V4(t,e);qm(t.slots,n_,1)},tP=(t,e,n)=>{const{vnode:s,slots:i}=t;let r=!0,o=tn;if(s.shapeFlag&32){const a=e._;a?n&&a===1?r=!1:(In(i,e),!n&&a===1&&delete i._):(r=!e.$stable,H4(e,i)),o=e}else e&&(V4(t,e),o={default:1});if(r)for(const a in i)!z4(a)&&o[a]==null&&delete i[a]};function kb(t,e,n,s,i=!1){if(Xe(t)){t.forEach((f,h)=>kb(f,e&&(Xe(e)?e[h]:e),n,s,i));return}if(ff(s)&&!i)return;const r=s.shapeFlag&4?r_(s.component)||s.component.proxy:s.el,o=i?null:r,{i:a,r:l}=t,c=e&&e.r,u=a.refs===tn?a.refs={}:a.refs,d=a.setupState;if(c!=null&&c!==l&&(Mn(c)?(u[c]=null,Mt(d,c)&&(d[c]=null)):$n(c)&&(c.value=null)),ft(l))ba(l,a,12,[o,u]);else{const f=Mn(l),h=$n(l),_=t.f;if(f||h){const p=()=>{if(_){const m=f?Mt(d,l)?d[l]:u[l]:l.value;i?Xe(m)&&_v(m,r):Xe(m)?m.includes(r)||m.push(r):f?(u[l]=[r],Mt(d,l)&&(d[l]=u[l])):(l.value=[r],t.k&&(u[t.k]=l.value))}else f?(u[l]=o,Mt(d,l)&&(d[l]=o)):h&&(l.value=o,t.k&&(u[t.k]=o))};i||_?p():(p.id=-1,Ms(p,n))}}}const Ms=ML;function nP(t){return sP(t)}function sP(t,e){const n=JM();n.__VUE__=!0;const{insert:s,remove:i,patchProp:r,createElement:o,createText:a,createComment:l,setText:c,setElementText:u,parentNode:d,nextSibling:f,setScopeId:h=qs,insertStaticContent:_}=t,p=(P,V,te,he=null,be=null,Te=null,Ae=void 0,ke=null,Ce=!!V.dynamicChildren)=>{if(P===V)return;P&&!il(P,V)&&(he=de(P),Q(P,be,Te,!0),P=null),V.patchFlag===-2&&(Ce=!1,V.dynamicChildren=null);const{type:C,ref:M,shapeFlag:ne}=V;switch(C){case t_:m(P,V,te,he);break;case mi:b(P,V,te,he);break;case Em:P==null&&y(V,te,he,Ae);break;case tt:B(P,V,te,he,be,Te,Ae,ke,Ce);break;default:ne&1?S(P,V,te,he,be,Te,Ae,ke,Ce):ne&6?U(P,V,te,he,be,Te,Ae,ke,Ce):(ne&64||ne&128)&&C.process(P,V,te,he,be,Te,Ae,ke,Ce,ge)}M!=null&&be&&kb(M,P&&P.ref,Te,V||P,!V)},m=(P,V,te,he)=>{if(P==null)s(V.el=a(V.children),te,he);else{const be=V.el=P.el;V.children!==P.children&&c(be,V.children)}},b=(P,V,te,he)=>{P==null?s(V.el=l(V.children||""),te,he):V.el=P.el},y=(P,V,te,he)=>{[P.el,P.anchor]=_(P.children,V,te,he,P.el,P.anchor)},v=({el:P,anchor:V},te,he)=>{let be;for(;P&&P!==V;)be=f(P),s(P,te,he),P=be;s(V,te,he)},x=({el:P,anchor:V})=>{let te;for(;P&&P!==V;)te=f(P),i(P),P=te;i(V)},S=(P,V,te,he,be,Te,Ae,ke,Ce)=>{V.type==="svg"?Ae="svg":V.type==="math"&&(Ae="mathml"),P==null?w(V,te,he,be,Te,Ae,ke,Ce):A(P,V,be,Te,Ae,ke,Ce)},w=(P,V,te,he,be,Te,Ae,ke)=>{let Ce,C;const{props:M,shapeFlag:ne,transition:le,dirs:pe}=P;if(Ce=P.el=o(P.type,Te,M&&M.is,M),ne&8?u(Ce,P.children):ne&16&&E(P.children,Ce,null,he,be,S0(P,Te),Ae,ke),pe&&Ba(P,null,he,"created"),T(Ce,P,P.scopeId,Ae,he),M){for(const Fe in M)Fe!=="value"&&!vm(Fe)&&r(Ce,Fe,null,M[Fe],Te,P.children,he,be,ie);"value"in M&&r(Ce,"value",null,M.value,Te),(C=M.onVnodeBeforeMount)&&ir(C,he,P)}pe&&Ba(P,null,he,"beforeMount");const xe=iP(be,le);xe&&le.beforeEnter(Ce),s(Ce,V,te),((C=M&&M.onVnodeMounted)||xe||pe)&&Ms(()=>{C&&ir(C,he,P),xe&&le.enter(Ce),pe&&Ba(P,null,he,"mounted")},be)},T=(P,V,te,he,be)=>{if(te&&h(P,te),he)for(let Te=0;Te{for(let C=Ce;C{const ke=V.el=P.el;let{patchFlag:Ce,dynamicChildren:C,dirs:M}=V;Ce|=P.patchFlag&16;const ne=P.props||tn,le=V.props||tn;let pe;if(te&&Ga(te,!1),(pe=le.onVnodeBeforeUpdate)&&ir(pe,te,V,P),M&&Ba(V,P,te,"beforeUpdate"),te&&Ga(te,!0),C?O(P.dynamicChildren,C,ke,te,he,S0(V,be),Te):Ae||j(P,V,ke,null,te,he,S0(V,be),Te,!1),Ce>0){if(Ce&16)I(ke,V,ne,le,te,he,be);else if(Ce&2&&ne.class!==le.class&&r(ke,"class",null,le.class,be),Ce&4&&r(ke,"style",ne.style,le.style,be),Ce&8){const xe=V.dynamicProps;for(let Fe=0;Fe{pe&&ir(pe,te,V,P),M&&Ba(V,P,te,"updated")},he)},O=(P,V,te,he,be,Te,Ae)=>{for(let ke=0;ke{if(te!==he){if(te!==tn)for(const ke in te)!vm(ke)&&!(ke in he)&&r(P,ke,te[ke],null,Ae,V.children,be,Te,ie);for(const ke in he){if(vm(ke))continue;const Ce=he[ke],C=te[ke];Ce!==C&&ke!=="value"&&r(P,ke,C,Ce,Ae,V.children,be,Te,ie)}"value"in he&&r(P,"value",te.value,he.value,Ae)}},B=(P,V,te,he,be,Te,Ae,ke,Ce)=>{const C=V.el=P?P.el:a(""),M=V.anchor=P?P.anchor:a("");let{patchFlag:ne,dynamicChildren:le,slotScopeIds:pe}=V;pe&&(ke=ke?ke.concat(pe):pe),P==null?(s(C,te,he),s(M,te,he),E(V.children||[],te,M,be,Te,Ae,ke,Ce)):ne>0&&ne&64&&le&&P.dynamicChildren?(O(P.dynamicChildren,le,te,be,Te,Ae,ke),(V.key!=null||be&&V===be.subTree)&&W4(P,V,!0)):j(P,V,te,M,be,Te,Ae,ke,Ce)},U=(P,V,te,he,be,Te,Ae,ke,Ce)=>{V.slotScopeIds=ke,P==null?V.shapeFlag&512?be.ctx.activate(V,te,he,Ae,Ce):D(V,te,he,be,Te,Ae,Ce):$(P,V,Ce)},D=(P,V,te,he,be,Te,Ae)=>{const ke=P.component=fP(P,he,be);if(Qg(P)&&(ke.ctx.renderer=ge),hP(ke),ke.asyncDep){if(be&&be.registerDep(ke,F),!P.el){const Ce=ke.subTree=X(mi);b(null,Ce,V,te)}}else F(ke,P,V,te,be,Te,Ae)},$=(P,V,te)=>{const he=V.component=P.component;if(wL(P,V,te))if(he.asyncDep&&!he.asyncResolved){H(he,V,te);return}else he.next=V,mL(he.update),he.effect.dirty=!0,he.update();else V.el=P.el,he.vnode=V},F=(P,V,te,he,be,Te,Ae)=>{const ke=()=>{if(P.isMounted){let{next:M,bu:ne,u:le,parent:pe,vnode:xe}=P;{const k=j4(P);if(k){M&&(M.el=xe.el,H(P,M,Ae)),k.asyncDep.then(()=>{P.isUnmounted||ke()});return}}let Fe=M,re;Ga(P,!1),M?(M.el=xe.el,H(P,M,Ae)):M=xe,ne&&wm(ne),(re=M.props&&M.props.onVnodeBeforeUpdate)&&ir(re,pe,M,xe),Ga(P,!0);const _e=v0(P),Y=P.subTree;P.subTree=_e,p(Y,_e,d(Y.el),de(Y),P,be,Te),M.el=_e.el,Fe===null&&xL(P,_e.el),le&&Ms(le,be),(re=M.props&&M.props.onVnodeUpdated)&&Ms(()=>ir(re,pe,M,xe),be)}else{let M;const{el:ne,props:le}=V,{bm:pe,m:xe,parent:Fe}=P,re=ff(V);if(Ga(P,!1),pe&&wm(pe),!re&&(M=le&&le.onVnodeBeforeMount)&&ir(M,Fe,V),Ga(P,!0),ne&&Be){const _e=()=>{P.subTree=v0(P),Be(ne,P.subTree,P,be,null)};re?V.type.__asyncLoader().then(()=>!P.isUnmounted&&_e()):_e()}else{const _e=P.subTree=v0(P);p(null,_e,te,he,P,be,Te),V.el=_e.el}if(xe&&Ms(xe,be),!re&&(M=le&&le.onVnodeMounted)){const _e=V;Ms(()=>ir(M,Fe,_e),be)}(V.shapeFlag&256||Fe&&ff(Fe.vnode)&&Fe.vnode.shapeFlag&256)&&P.a&&Ms(P.a,be),P.isMounted=!0,V=te=he=null}},Ce=P.effect=new vv(ke,qs,()=>Rv(C),P.scope),C=P.update=()=>{Ce.dirty&&Ce.run()};C.id=P.uid,Ga(P,!0),C()},H=(P,V,te)=>{V.component=P;const he=P.vnode.props;P.vnode=V,P.next=null,JL(P,V.props,he,te),tP(P,V.children,te),Kl(),l2(P),Xl()},j=(P,V,te,he,be,Te,Ae,ke,Ce=!1)=>{const C=P&&P.children,M=P?P.shapeFlag:0,ne=V.children,{patchFlag:le,shapeFlag:pe}=V;if(le>0){if(le&128){K(C,ne,te,he,be,Te,Ae,ke,Ce);return}else if(le&256){Z(C,ne,te,he,be,Te,Ae,ke,Ce);return}}pe&8?(M&16&&ie(C,be,Te),ne!==C&&u(te,ne)):M&16?pe&16?K(C,ne,te,he,be,Te,Ae,ke,Ce):ie(C,be,Te,!0):(M&8&&u(te,""),pe&16&&E(ne,te,he,be,Te,Ae,ke,Ce))},Z=(P,V,te,he,be,Te,Ae,ke,Ce)=>{P=P||eu,V=V||eu;const C=P.length,M=V.length,ne=Math.min(C,M);let le;for(le=0;leM?ie(P,be,Te,!0,!1,ne):E(V,te,he,be,Te,Ae,ke,Ce,ne)},K=(P,V,te,he,be,Te,Ae,ke,Ce)=>{let C=0;const M=V.length;let ne=P.length-1,le=M-1;for(;C<=ne&&C<=le;){const pe=P[C],xe=V[C]=Ce?ta(V[C]):fr(V[C]);if(il(pe,xe))p(pe,xe,te,null,be,Te,Ae,ke,Ce);else break;C++}for(;C<=ne&&C<=le;){const pe=P[ne],xe=V[le]=Ce?ta(V[le]):fr(V[le]);if(il(pe,xe))p(pe,xe,te,null,be,Te,Ae,ke,Ce);else break;ne--,le--}if(C>ne){if(C<=le){const pe=le+1,xe=pele)for(;C<=ne;)Q(P[C],be,Te,!0),C++;else{const pe=C,xe=C,Fe=new Map;for(C=xe;C<=le;C++){const z=V[C]=Ce?ta(V[C]):fr(V[C]);z.key!=null&&Fe.set(z.key,C)}let re,_e=0;const Y=le-xe+1;let k=!1,R=0;const L=new Array(Y);for(C=0;C=Y){Q(z,be,Te,!0);continue}let q;if(z.key!=null)q=Fe.get(z.key);else for(re=xe;re<=le;re++)if(L[re-xe]===0&&il(z,V[re])){q=re;break}q===void 0?Q(z,be,Te,!0):(L[q-xe]=C+1,q>=R?R=q:k=!0,p(z,V[q],te,null,be,Te,Ae,ke,Ce),_e++)}const N=k?rP(L):eu;for(re=N.length-1,C=Y-1;C>=0;C--){const z=xe+C,q=V[z],ue=z+1{const{el:Te,type:Ae,transition:ke,children:Ce,shapeFlag:C}=P;if(C&6){oe(P.component.subTree,V,te,he);return}if(C&128){P.suspense.move(V,te,he);return}if(C&64){Ae.move(P,V,te,ge);return}if(Ae===tt){s(Te,V,te);for(let ne=0;neke.enter(Te),be);else{const{leave:ne,delayLeave:le,afterLeave:pe}=ke,xe=()=>s(Te,V,te),Fe=()=>{ne(Te,()=>{xe(),pe&&pe()})};le?le(Te,xe,Fe):Fe()}else s(Te,V,te)},Q=(P,V,te,he=!1,be=!1)=>{const{type:Te,props:Ae,ref:ke,children:Ce,dynamicChildren:C,shapeFlag:M,patchFlag:ne,dirs:le}=P;if(ke!=null&&kb(ke,null,te,P,!0),M&256){V.ctx.deactivate(P);return}const pe=M&1&&le,xe=!ff(P);let Fe;if(xe&&(Fe=Ae&&Ae.onVnodeBeforeUnmount)&&ir(Fe,V,P),M&6)Pe(P.component,te,he);else{if(M&128){P.suspense.unmount(te,he);return}pe&&Ba(P,null,V,"beforeUnmount"),M&64?P.type.remove(P,V,te,be,ge,he):C&&(Te!==tt||ne>0&&ne&64)?ie(C,V,te,!1,!0):(Te===tt&&ne&384||!be&&M&16)&&ie(Ce,V,te),he&&me(P)}(xe&&(Fe=Ae&&Ae.onVnodeUnmounted)||pe)&&Ms(()=>{Fe&&ir(Fe,V,P),pe&&Ba(P,null,V,"unmounted")},te)},me=P=>{const{type:V,el:te,anchor:he,transition:be}=P;if(V===tt){Me(te,he);return}if(V===Em){x(P);return}const Te=()=>{i(te),be&&!be.persisted&&be.afterLeave&&be.afterLeave()};if(P.shapeFlag&1&&be&&!be.persisted){const{leave:Ae,delayLeave:ke}=be,Ce=()=>Ae(te,Te);ke?ke(P.el,Te,Ce):Ce()}else Te()},Me=(P,V)=>{let te;for(;P!==V;)te=f(P),i(P),P=te;i(V)},Pe=(P,V,te)=>{const{bum:he,scope:be,update:Te,subTree:Ae,um:ke}=P;he&&wm(he),be.stop(),Te&&(Te.active=!1,Q(Ae,P,V,te)),ke&&Ms(ke,V),Ms(()=>{P.isUnmounted=!0},V),V&&V.pendingBranch&&!V.isUnmounted&&P.asyncDep&&!P.asyncResolved&&P.suspenseId===V.pendingId&&(V.deps--,V.deps===0&&V.resolve())},ie=(P,V,te,he=!1,be=!1,Te=0)=>{for(let Ae=Te;AeP.shapeFlag&6?de(P.component.subTree):P.shapeFlag&128?P.suspense.next():f(P.anchor||P.el);let Se=!1;const we=(P,V,te)=>{P==null?V._vnode&&Q(V._vnode,null,null,!0):p(V._vnode||null,P,V,null,null,null,te),Se||(Se=!0,l2(),E4(),Se=!1),V._vnode=P},ge={p,um:Q,m:oe,r:me,mt:D,mc:E,pc:j,pbc:O,n:de,o:t};let He,Be;return e&&([He,Be]=e(ge)),{render:we,hydrate:He,createApp:KL(we,He)}}function S0({type:t,props:e},n){return n==="svg"&&t==="foreignObject"||n==="mathml"&&t==="annotation-xml"&&e&&e.encoding&&e.encoding.includes("html")?void 0:n}function Ga({effect:t,update:e},n){t.allowRecurse=e.allowRecurse=n}function iP(t,e){return(!t||t&&!t.pendingBranch)&&e&&!e.persisted}function W4(t,e,n=!1){const s=t.children,i=e.children;if(Xe(s)&&Xe(i))for(let r=0;r>1,t[n[a]]0&&(e[s]=n[r-1]),n[r]=s)}}for(r=n.length,o=n[r-1];r-- >0;)n[r]=o,o=e[o];return n}function j4(t){const e=t.subTree.component;if(e)return e.asyncDep&&!e.asyncResolved?e:j4(e)}const oP=t=>t.__isTeleport,tt=Symbol.for("v-fgt"),t_=Symbol.for("v-txt"),mi=Symbol.for("v-cmt"),Em=Symbol.for("v-stc"),pf=[];let Ni=null;function J(t=!1){pf.push(Ni=t?null:[])}function aP(){pf.pop(),Ni=pf[pf.length-1]||null}let Uf=1;function v2(t){Uf+=t}function q4(t){return t.dynamicChildren=Uf>0?Ni||eu:null,aP(),Uf>0&&Ni&&Ni.push(t),t}function se(t,e,n,s,i,r){return q4(g(t,e,n,s,i,r,!0))}function fn(t,e,n,s,i){return q4(X(t,e,n,s,i,!0))}function Jm(t){return t?t.__v_isVNode===!0:!1}function il(t,e){return t.type===e.type&&t.key===e.key}const n_="__vInternal",Y4=({key:t})=>t??null,Tm=({ref:t,ref_key:e,ref_for:n})=>(typeof t=="number"&&(t=""+t),t!=null?Mn(t)||$n(t)||ft(t)?{i:On,r:t,k:e,f:!!n}:t:null);function g(t,e=null,n=null,s=0,i=null,r=t===tt?0:1,o=!1,a=!1){const l={__v_isVNode:!0,__v_skip:!0,type:t,props:e,key:e&&Y4(e),ref:e&&Tm(e),scopeId:Jg,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetAnchor:null,staticCount:0,shapeFlag:r,patchFlag:s,dynamicProps:i,dynamicChildren:null,appContext:null,ctx:On};return a?(Nv(l,n),r&128&&t.normalize(l)):n&&(l.shapeFlag|=Mn(n)?8:16),Uf>0&&!o&&Ni&&(l.patchFlag>0||r&6)&&l.patchFlag!==32&&Ni.push(l),l}const X=lP;function lP(t,e=null,n=null,s=0,i=null,r=!1){if((!t||t===M4)&&(t=mi),Jm(t)){const a=Aa(t,e,!0);return n&&Nv(a,n),Uf>0&&!r&&Ni&&(a.shapeFlag&6?Ni[Ni.indexOf(t)]=a:Ni.push(a)),a.patchFlag|=-2,a}if(bP(t)&&(t=t.__vccOpts),e){e=cP(e);let{class:a,style:l}=e;a&&!Mn(a)&&(e.class=os(a)),qt(l)&&(df(l)&&!Xe(l)&&(l=In({},l)),e.style=Wg(l))}const o=Mn(t)?1:AL(t)?128:oP(t)?64:qt(t)?4:ft(t)?2:0;return g(t,e,n,s,i,o,r,!0)}function cP(t){return t?df(t)||n_ in t?In({},t):t:null}function Aa(t,e,n=!1){const{props:s,ref:i,patchFlag:r,children:o}=t,a=e?s_(s||{},e):s;return{__v_isVNode:!0,__v_skip:!0,type:t.type,props:a,key:a&&Y4(a),ref:e&&e.ref?n&&i?Xe(i)?i.concat(Tm(e)):[i,Tm(e)]:Tm(e):i,scopeId:t.scopeId,slotScopeIds:t.slotScopeIds,children:o,target:t.target,targetAnchor:t.targetAnchor,staticCount:t.staticCount,shapeFlag:t.shapeFlag,patchFlag:e&&t.type!==tt?r===-1?16:r|16:r,dynamicProps:t.dynamicProps,dynamicChildren:t.dynamicChildren,appContext:t.appContext,dirs:t.dirs,transition:t.transition,component:t.component,suspense:t.suspense,ssContent:t.ssContent&&Aa(t.ssContent),ssFallback:t.ssFallback&&Aa(t.ssFallback),el:t.el,anchor:t.anchor,ctx:t.ctx,ce:t.ce}}function ye(t=" ",e=0){return X(t_,null,t,e)}function Pa(t,e){const n=X(Em,null,t);return n.staticCount=e,n}function qe(t="",e=!1){return e?(J(),fn(mi,null,t)):X(mi,null,t)}function fr(t){return t==null||typeof t=="boolean"?X(mi):Xe(t)?X(tt,null,t.slice()):typeof t=="object"?ta(t):X(t_,null,String(t))}function ta(t){return t.el===null&&t.patchFlag!==-1||t.memo?t:Aa(t)}function Nv(t,e){let n=0;const{shapeFlag:s}=t;if(e==null)e=null;else if(Xe(e))n=16;else if(typeof e=="object")if(s&65){const i=e.default;i&&(i._c&&(i._d=!1),Nv(t,i()),i._c&&(i._d=!0));return}else{n=32;const i=e._;!i&&!(n_ in e)?e._ctx=On:i===3&&On&&(On.slots._===1?e._=1:(e._=2,t.patchFlag|=1024))}else ft(e)?(e={default:e,_ctx:On},n=32):(e=String(e),s&64?(n=16,e=[ye(e)]):n=8);t.children=e,t.shapeFlag|=n}function s_(...t){const e={};for(let n=0;njn||On;let Qm,Rb;{const t=JM(),e=(n,s)=>{let i;return(i=t[n])||(i=t[n]=[]),i.push(s),r=>{i.length>1?i.forEach(o=>o(r)):i[0](r)}};Qm=e("__VUE_INSTANCE_SETTERS__",n=>jn=n),Rb=e("__VUE_SSR_SETTERS__",n=>i_=n)}const Ah=t=>{const e=jn;return Qm(t),t.scope.on(),()=>{t.scope.off(),Qm(e)}},w2=()=>{jn&&jn.scope.off(),Qm(null)};function X4(t){return t.vnode.shapeFlag&4}let i_=!1;function hP(t,e=!1){e&&Rb(e);const{props:n,children:s}=t.vnode,i=X4(t);ZL(t,n,i,e),eP(t,s);const r=i?pP(t,e):void 0;return e&&Rb(!1),r}function pP(t,e){const n=t.type;t.accessCache=Object.create(null),t.proxy=qg(new Proxy(t.ctx,zL));const{setup:s}=n;if(s){const i=t.setupContext=s.length>1?gP(t):null,r=Ah(t);Kl();const o=ba(s,t,0,[t.props,i]);if(Xl(),r(),KM(o)){if(o.then(w2,w2),e)return o.then(a=>{x2(t,a,e)}).catch(a=>{Kg(a,t,0)});t.asyncDep=o}else x2(t,o,e)}else Z4(t,e)}function x2(t,e,n){ft(e)?t.type.__ssrInlineRender?t.ssrRender=e:t.render=e:qt(e)&&(t.setupState=w4(e)),Z4(t,n)}let S2;function Z4(t,e,n){const s=t.type;if(!t.render){if(!e&&S2&&!s.render){const i=s.template||Dv(t).template;if(i){const{isCustomElement:r,compilerOptions:o}=t.appContext.config,{delimiters:a,compilerOptions:l}=s,c=In(In({isCustomElement:r,delimiters:a},o),l);s.render=S2(i,c)}}t.render=s.render||qs}{const i=Ah(t);Kl();try{HL(t)}finally{Xl(),i()}}}function mP(t){return t.attrsProxy||(t.attrsProxy=new Proxy(t.attrs,{get(e,n){return Ds(t,"get","$attrs"),e[n]}}))}function gP(t){const e=n=>{t.exposed=n||{}};return{get attrs(){return mP(t)},slots:t.slots,emit:t.emit,expose:e}}function r_(t){if(t.exposed)return t.exposeProxy||(t.exposeProxy=new Proxy(w4(qg(t.exposed)),{get(e,n){if(n in e)return e[n];if(n in hf)return hf[n](t)},has(e,n){return n in e||n in hf}}))}function _P(t,e=!0){return ft(t)?t.displayName||t.name:t.name||e&&t.__name}function bP(t){return ft(t)&&"__vccOpts"in t}const En=(t,e)=>aL(t,e,i_);function Eu(t,e,n){const s=arguments.length;return s===2?qt(e)&&!Xe(e)?Jm(e)?X(t,null,[e]):X(t,e):X(t,null,e):(s>3?n=Array.prototype.slice.call(arguments,2):s===3&&Jm(n)&&(n=[n]),X(t,e,n))}const yP="3.4.15";/** +* @vue/runtime-dom v3.4.15 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/const vP="http://www.w3.org/2000/svg",wP="http://www.w3.org/1998/Math/MathML",na=typeof document<"u"?document:null,E2=na&&na.createElement("template"),xP={insert:(t,e,n)=>{e.insertBefore(t,n||null)},remove:t=>{const e=t.parentNode;e&&e.removeChild(t)},createElement:(t,e,n,s)=>{const i=e==="svg"?na.createElementNS(vP,t):e==="mathml"?na.createElementNS(wP,t):na.createElement(t,n?{is:n}:void 0);return t==="select"&&s&&s.multiple!=null&&i.setAttribute("multiple",s.multiple),i},createText:t=>na.createTextNode(t),createComment:t=>na.createComment(t),setText:(t,e)=>{t.nodeValue=e},setElementText:(t,e)=>{t.textContent=e},parentNode:t=>t.parentNode,nextSibling:t=>t.nextSibling,querySelector:t=>na.querySelector(t),setScopeId(t,e){t.setAttribute(e,"")},insertStaticContent(t,e,n,s,i,r){const o=n?n.previousSibling:e.lastChild;if(i&&(i===r||i.nextSibling))for(;e.insertBefore(i.cloneNode(!0),n),!(i===r||!(i=i.nextSibling)););else{E2.innerHTML=s==="svg"?`${t}`:s==="mathml"?`${t}`:t;const a=E2.content;if(s==="svg"||s==="mathml"){const l=a.firstChild;for(;l.firstChild;)a.appendChild(l.firstChild);a.removeChild(l)}e.insertBefore(a,n)}return[o?o.nextSibling:e.firstChild,n?n.previousSibling:e.lastChild]}},Oo="transition",Md="animation",Tu=Symbol("_vtc"),$v=(t,{slots:e})=>Eu(IL,Q4(t),e);$v.displayName="Transition";const J4={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},SP=$v.props=In({},O4,J4),za=(t,e=[])=>{Xe(t)?t.forEach(n=>n(...e)):t&&t(...e)},T2=t=>t?Xe(t)?t.some(e=>e.length>1):t.length>1:!1;function Q4(t){const e={};for(const B in t)B in J4||(e[B]=t[B]);if(t.css===!1)return e;const{name:n="v",type:s,duration:i,enterFromClass:r=`${n}-enter-from`,enterActiveClass:o=`${n}-enter-active`,enterToClass:a=`${n}-enter-to`,appearFromClass:l=r,appearActiveClass:c=o,appearToClass:u=a,leaveFromClass:d=`${n}-leave-from`,leaveActiveClass:f=`${n}-leave-active`,leaveToClass:h=`${n}-leave-to`}=t,_=EP(i),p=_&&_[0],m=_&&_[1],{onBeforeEnter:b,onEnter:y,onEnterCancelled:v,onLeave:x,onLeaveCancelled:S,onBeforeAppear:w=b,onAppear:T=y,onAppearCancelled:E=v}=e,A=(B,U,D)=>{jo(B,U?u:a),jo(B,U?c:o),D&&D()},O=(B,U)=>{B._isLeaving=!1,jo(B,d),jo(B,h),jo(B,f),U&&U()},I=B=>(U,D)=>{const $=B?T:y,F=()=>A(U,B,D);za($,[U,F]),A2(()=>{jo(U,B?l:r),Vr(U,B?u:a),T2($)||M2(U,s,p,F)})};return In(e,{onBeforeEnter(B){za(b,[B]),Vr(B,r),Vr(B,o)},onBeforeAppear(B){za(w,[B]),Vr(B,l),Vr(B,c)},onEnter:I(!1),onAppear:I(!0),onLeave(B,U){B._isLeaving=!0;const D=()=>O(B,U);Vr(B,d),t5(),Vr(B,f),A2(()=>{B._isLeaving&&(jo(B,d),Vr(B,h),T2(x)||M2(B,s,m,D))}),za(x,[B,D])},onEnterCancelled(B){A(B,!1),za(v,[B])},onAppearCancelled(B){A(B,!0),za(E,[B])},onLeaveCancelled(B){O(B),za(S,[B])}})}function EP(t){if(t==null)return null;if(qt(t))return[E0(t.enter),E0(t.leave)];{const e=E0(t);return[e,e]}}function E0(t){return OI(t)}function Vr(t,e){e.split(/\s+/).forEach(n=>n&&t.classList.add(n)),(t[Tu]||(t[Tu]=new Set)).add(e)}function jo(t,e){e.split(/\s+/).forEach(s=>s&&t.classList.remove(s));const n=t[Tu];n&&(n.delete(e),n.size||(t[Tu]=void 0))}function A2(t){requestAnimationFrame(()=>{requestAnimationFrame(t)})}let TP=0;function M2(t,e,n,s){const i=t._endId=++TP,r=()=>{i===t._endId&&s()};if(n)return setTimeout(r,n);const{type:o,timeout:a,propCount:l}=e5(t,e);if(!o)return s();const c=o+"end";let u=0;const d=()=>{t.removeEventListener(c,f),r()},f=h=>{h.target===t&&++u>=l&&d()};setTimeout(()=>{u(n[_]||"").split(", "),i=s(`${Oo}Delay`),r=s(`${Oo}Duration`),o=k2(i,r),a=s(`${Md}Delay`),l=s(`${Md}Duration`),c=k2(a,l);let u=null,d=0,f=0;e===Oo?o>0&&(u=Oo,d=o,f=r.length):e===Md?c>0&&(u=Md,d=c,f=l.length):(d=Math.max(o,c),u=d>0?o>c?Oo:Md:null,f=u?u===Oo?r.length:l.length:0);const h=u===Oo&&/\b(transform|all)(,|$)/.test(s(`${Oo}Property`).toString());return{type:u,timeout:d,propCount:f,hasTransform:h}}function k2(t,e){for(;t.lengthR2(n)+R2(t[s])))}function R2(t){return t==="auto"?0:Number(t.slice(0,-1).replace(",","."))*1e3}function t5(){return document.body.offsetHeight}function AP(t,e,n){const s=t[Tu];s&&(e=(e?[e,...s]:[...s]).join(" ")),e==null?t.removeAttribute("class"):n?t.setAttribute("class",e):t.className=e}const Uv=Symbol("_vod"),eg={beforeMount(t,{value:e},{transition:n}){t[Uv]=t.style.display==="none"?"":t.style.display,n&&e?n.beforeEnter(t):kd(t,e)},mounted(t,{value:e},{transition:n}){n&&e&&n.enter(t)},updated(t,{value:e,oldValue:n},{transition:s}){!e!=!n&&(s?e?(s.beforeEnter(t),kd(t,!0),s.enter(t)):s.leave(t,()=>{kd(t,!1)}):kd(t,e))},beforeUnmount(t,{value:e}){kd(t,e)}};function kd(t,e){t.style.display=e?t[Uv]:"none"}const MP=Symbol("");function kP(t,e,n){const s=t.style,i=s.display,r=Mn(n);if(n&&!r){if(e&&!Mn(e))for(const o in e)n[o]==null&&Cb(s,o,"");for(const o in n)Cb(s,o,n[o])}else if(r){if(e!==n){const o=s[MP];o&&(n+=";"+o),s.cssText=n}}else e&&t.removeAttribute("style");Uv in t&&(s.display=i)}const C2=/\s*!important$/;function Cb(t,e,n){if(Xe(n))n.forEach(s=>Cb(t,e,s));else if(n==null&&(n=""),e.startsWith("--"))t.setProperty(e,n);else{const s=RP(t,e);C2.test(n)?t.setProperty(Yu(s),n.replace(C2,""),"important"):t[s]=n}}const O2=["Webkit","Moz","ms"],T0={};function RP(t,e){const n=T0[e];if(n)return n;let s=Tr(e);if(s!=="filter"&&s in t)return T0[e]=s;s=Vg(s);for(let i=0;iA0||(DP.then(()=>A0=0),A0=Date.now());function NP(t,e){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;pi($P(s,n.value),e,5,[s])};return n.value=t,n.attached=FP(),n}function $P(t,e){if(Xe(e)){const n=t.stopImmediatePropagation;return t.stopImmediatePropagation=()=>{n.call(t),t._stopped=!0},e.map(s=>i=>!i._stopped&&s&&s(i))}else return e}const D2=t=>t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&t.charCodeAt(2)>96&&t.charCodeAt(2)<123,UP=(t,e,n,s,i,r,o,a,l)=>{const c=i==="svg";e==="class"?AP(t,s,c):e==="style"?kP(t,n,s):zg(e)?gv(e)||LP(t,e,n,s,o):(e[0]==="."?(e=e.slice(1),!0):e[0]==="^"?(e=e.slice(1),!1):BP(t,e,s,c))?OP(t,e,s,r,o,a,l):(e==="true-value"?t._trueValue=s:e==="false-value"&&(t._falseValue=s),CP(t,e,s,c))};function BP(t,e,n,s){if(s)return!!(e==="innerHTML"||e==="textContent"||e in t&&D2(e)&&ft(n));if(e==="spellcheck"||e==="draggable"||e==="translate"||e==="form"||e==="list"&&t.tagName==="INPUT"||e==="type"&&t.tagName==="TEXTAREA")return!1;if(e==="width"||e==="height"){const i=t.tagName;if(i==="IMG"||i==="VIDEO"||i==="CANVAS"||i==="SOURCE")return!1}return D2(e)&&Mn(n)?!1:e in t}const n5=new WeakMap,s5=new WeakMap,tg=Symbol("_moveCb"),F2=Symbol("_enterCb"),i5={name:"TransitionGroup",props:In({},SP,{tag:String,moveClass:String}),setup(t,{slots:e}){const n=K4(),s=C4();let i,r;return P4(()=>{if(!i.length)return;const o=t.moveClass||`${t.name||"v"}-move`;if(!jP(i[0].el,n.vnode.el,o))return;i.forEach(HP),i.forEach(VP);const a=i.filter(WP);t5(),a.forEach(l=>{const c=l.el,u=c.style;Vr(c,o),u.transform=u.webkitTransform=u.transitionDuration="";const d=c[tg]=f=>{f&&f.target!==c||(!f||/transform$/.test(f.propertyName))&&(c.removeEventListener("transitionend",d),c[tg]=null,jo(c,o))};c.addEventListener("transitionend",d)})}),()=>{const o=ut(t),a=Q4(o);let l=o.tag||tt;i=r,r=e.default?Iv(e.default()):[];for(let c=0;cdelete t.mode;i5.props;const zP=i5;function HP(t){const e=t.el;e[tg]&&e[tg](),e[F2]&&e[F2]()}function VP(t){s5.set(t,t.el.getBoundingClientRect())}function WP(t){const e=n5.get(t),n=s5.get(t),s=e.left-n.left,i=e.top-n.top;if(s||i){const r=t.el.style;return r.transform=r.webkitTransform=`translate(${s}px,${i}px)`,r.transitionDuration="0s",t}}function jP(t,e,n){const s=t.cloneNode(),i=t[Tu];i&&i.forEach(a=>{a.split(/\s+/).forEach(l=>l&&s.classList.remove(l))}),n.split(/\s+/).forEach(a=>a&&s.classList.add(a)),s.style.display="none";const r=e.nodeType===1?e:e.parentNode;r.appendChild(s);const{hasTransform:o}=e5(s);return r.removeChild(s),o}const Au=t=>{const e=t.props["onUpdate:modelValue"]||!1;return Xe(e)?n=>wm(e,n):e};function qP(t){t.target.composing=!0}function N2(t){const e=t.target;e.composing&&(e.composing=!1,e.dispatchEvent(new Event("input")))}const ao=Symbol("_assign"),Je={created(t,{modifiers:{lazy:e,trim:n,number:s}},i){t[ao]=Au(i);const r=s||i.props&&i.props.type==="number";oa(t,e?"change":"input",o=>{if(o.target.composing)return;let a=t.value;n&&(a=a.trim()),r&&(a=If(a)),t[ao](a)}),n&&oa(t,"change",()=>{t.value=t.value.trim()}),e||(oa(t,"compositionstart",qP),oa(t,"compositionend",N2),oa(t,"change",N2))},mounted(t,{value:e}){t.value=e??""},beforeUpdate(t,{value:e,modifiers:{lazy:n,trim:s,number:i}},r){if(t[ao]=Au(r),t.composing)return;const o=i||t.type==="number"?If(t.value):t.value,a=e??"";o!==a&&(document.activeElement===t&&t.type!=="range"&&(n||s&&t.value.trim()===a)||(t.value=a))}},r5={deep:!0,created(t,e,n){t[ao]=Au(n),oa(t,"change",()=>{const s=t._modelValue,i=Bf(t),r=t.checked,o=t[ao];if(Xe(s)){const a=yv(s,i),l=a!==-1;if(r&&!l)o(s.concat(i));else if(!r&&l){const c=[...s];c.splice(a,1),o(c)}}else if(qu(s)){const a=new Set(s);r?a.add(i):a.delete(i),o(a)}else o(o5(t,r))})},mounted:$2,beforeUpdate(t,e,n){t[ao]=Au(n),$2(t,e,n)}};function $2(t,{value:e,oldValue:n},s){t._modelValue=e,Xe(e)?t.checked=yv(e,s.props.value)>-1:qu(e)?t.checked=e.has(s.props.value):e!==n&&(t.checked=xu(e,o5(t,!0)))}const o_={deep:!0,created(t,{value:e,modifiers:{number:n}},s){const i=qu(e);oa(t,"change",()=>{const r=Array.prototype.filter.call(t.options,o=>o.selected).map(o=>n?If(Bf(o)):Bf(o));t[ao](t.multiple?i?new Set(r):r:r[0]),t._assigning=!0,Xg(()=>{t._assigning=!1})}),t[ao]=Au(s)},mounted(t,{value:e,oldValue:n,modifiers:{number:s}}){U2(t,e,n,s)},beforeUpdate(t,e,n){t[ao]=Au(n)},updated(t,{value:e,oldValue:n,modifiers:{number:s}}){t._assigning||U2(t,e,n,s)}};function U2(t,e,n,s){const i=t.multiple,r=Xe(e);if(!(i&&!r&&!qu(e))&&!(r&&xu(e,n))){for(let o=0,a=t.options.length;o-1}else l.selected=e.has(c);else if(xu(Bf(l),e)){t.selectedIndex!==o&&(t.selectedIndex=o);return}}!i&&t.selectedIndex!==-1&&(t.selectedIndex=-1)}}function Bf(t){return"_value"in t?t._value:t.value}function o5(t,e){const n=e?"_trueValue":"_falseValue";return n in t?t[n]:e}const YP=["ctrl","shift","alt","meta"],KP={stop:t=>t.stopPropagation(),prevent:t=>t.preventDefault(),self:t=>t.target!==t.currentTarget,ctrl:t=>!t.ctrlKey,shift:t=>!t.shiftKey,alt:t=>!t.altKey,meta:t=>!t.metaKey,left:t=>"button"in t&&t.button!==0,middle:t=>"button"in t&&t.button!==1,right:t=>"button"in t&&t.button!==2,exact:(t,e)=>YP.some(n=>t[`${n}Key`]&&!e.includes(n))},XP=(t,e)=>{const n=t._withMods||(t._withMods={}),s=e.join(".");return n[s]||(n[s]=(i,...r)=>{for(let o=0;o{const e=JP().createApp(...t),{mount:n}=e;return e.mount=s=>{const i=tD(s);if(!i)return;const r=e._component;!ft(r)&&!r.render&&!r.template&&(r.template=i.innerHTML),i.innerHTML="";const o=n(i,!1,eD(i));return i instanceof Element&&(i.removeAttribute("v-cloak"),i.setAttribute("data-v-app","")),o},e};function eD(t){if(t instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&t instanceof MathMLElement)return"mathml"}function tD(t){return Mn(t)?document.querySelector(t):t}const nD="modulepreload",sD=function(t){return"/develop/"+t},G2={},iD=function(e,n,s){if(!n||n.length===0)return e();const i=document.getElementsByTagName("link");return Promise.all(n.map(r=>{if(r=sD(r),r in G2)return;G2[r]=!0;const o=r.endsWith(".css"),a=o?'[rel="stylesheet"]':"";if(!!s)for(let u=i.length-1;u>=0;u--){const d=i[u];if(d.href===r&&(!o||d.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${r}"]${a}`))return;const c=document.createElement("link");if(c.rel=o?"stylesheet":nD,o||(c.as="script",c.crossOrigin=""),c.href=r,document.head.appendChild(c),o)return new Promise((u,d)=>{c.addEventListener("load",u),c.addEventListener("error",()=>d(new Error(`Unable to preload CSS for ${r}`)))})})).then(()=>e()).catch(r=>{const o=new Event("vite:preloadError",{cancelable:!0});if(o.payload=r,window.dispatchEvent(o),!o.defaultPrevented)throw r})};function rD(){class t{constructor(){$e(this,"hasUpdate",!1);$e(this,"updateSW");$e(this,"updateCallback")}updatePreparing(){return!1}updatePending(){return!1}async checkForUpdate(n,s){if(this.updateCallback=s,!this.updateSW)try{const i=this,{registerSW:r}=await iD(()=>import("./virtual_pwa-register-7dd63b88.js"),[]);this.updateSW=r({immediate:!0,onOfflineReady(){console.log("PWA offline ready")},onNeedRefresh(){i.hasUpdate=!0,i.updateCallback&&i.updateCallback(i.hasUpdate)},onRegistered(o){},onRegisterError(o){}})}catch{console.log("PWA disabled")}}async update(n){this.hasUpdate&&(this.hasUpdate=!1,this.updateSW&&this.updateSW(!0))}async finishUpdate(){}}return new t}function oD(){try{throw new Error("new.App undefined")}catch{return console.log("Registering PWA updater"),rD()}}const fl=oD();/*! + * vue-router v4.2.5 + * (c) 2023 Eduardo San Martin Morote + * @license MIT + */const Nc=typeof window<"u";function aD(t){return t.__esModule||t[Symbol.toStringTag]==="Module"}const Bt=Object.assign;function M0(t,e){const n={};for(const s in e){const i=e[s];n[s]=ji(i)?i.map(t):t(i)}return n}const mf=()=>{},ji=Array.isArray,lD=/\/$/,cD=t=>t.replace(lD,"");function k0(t,e,n="/"){let s,i={},r="",o="";const a=e.indexOf("#");let l=e.indexOf("?");return a=0&&(l=-1),l>-1&&(s=e.slice(0,l),r=e.slice(l+1,a>-1?a:e.length),i=t(r)),a>-1&&(s=s||e.slice(0,a),o=e.slice(a,e.length)),s=hD(s??e,n),{fullPath:s+(r&&"?")+r+o,path:s,query:i,hash:o}}function uD(t,e){const n=e.query?t(e.query):"";return e.path+(n&&"?")+n+(e.hash||"")}function z2(t,e){return!e||!t.toLowerCase().startsWith(e.toLowerCase())?t:t.slice(e.length)||"/"}function dD(t,e,n){const s=e.matched.length-1,i=n.matched.length-1;return s>-1&&s===i&&Mu(e.matched[s],n.matched[i])&&a5(e.params,n.params)&&t(e.query)===t(n.query)&&e.hash===n.hash}function Mu(t,e){return(t.aliasOf||t)===(e.aliasOf||e)}function a5(t,e){if(Object.keys(t).length!==Object.keys(e).length)return!1;for(const n in t)if(!fD(t[n],e[n]))return!1;return!0}function fD(t,e){return ji(t)?H2(t,e):ji(e)?H2(e,t):t===e}function H2(t,e){return ji(e)?t.length===e.length&&t.every((n,s)=>n===e[s]):t.length===1&&t[0]===e}function hD(t,e){if(t.startsWith("/"))return t;if(!t)return e;const n=e.split("/"),s=t.split("/"),i=s[s.length-1];(i===".."||i===".")&&s.push("");let r=n.length-1,o,a;for(o=0;o1&&r--;else break;return n.slice(0,r).join("/")+"/"+s.slice(o-(o===s.length?1:0)).join("/")}var Gf;(function(t){t.pop="pop",t.push="push"})(Gf||(Gf={}));var gf;(function(t){t.back="back",t.forward="forward",t.unknown=""})(gf||(gf={}));function pD(t){if(!t)if(Nc){const e=document.querySelector("base");t=e&&e.getAttribute("href")||"/",t=t.replace(/^\w+:\/\/[^\/]+/,"")}else t="/";return t[0]!=="/"&&t[0]!=="#"&&(t="/"+t),cD(t)}const mD=/^[^#]+#/;function gD(t,e){return t.replace(mD,"#")+e}function _D(t,e){const n=document.documentElement.getBoundingClientRect(),s=t.getBoundingClientRect();return{behavior:e.behavior,left:s.left-n.left-(e.left||0),top:s.top-n.top-(e.top||0)}}const a_=()=>({left:window.pageXOffset,top:window.pageYOffset});function bD(t){let e;if("el"in t){const n=t.el,s=typeof n=="string"&&n.startsWith("#"),i=typeof n=="string"?s?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!i)return;e=_D(i,t)}else e=t;"scrollBehavior"in document.documentElement.style?window.scrollTo(e):window.scrollTo(e.left!=null?e.left:window.pageXOffset,e.top!=null?e.top:window.pageYOffset)}function V2(t,e){return(history.state?history.state.position-e:-1)+t}const Ob=new Map;function yD(t,e){Ob.set(t,e)}function vD(t){const e=Ob.get(t);return Ob.delete(t),e}let wD=()=>location.protocol+"//"+location.host;function l5(t,e){const{pathname:n,search:s,hash:i}=e,r=t.indexOf("#");if(r>-1){let a=i.includes(t.slice(r))?t.slice(r).length:1,l=i.slice(a);return l[0]!=="/"&&(l="/"+l),z2(l,"")}return z2(n,t)+s+i}function xD(t,e,n,s){let i=[],r=[],o=null;const a=({state:f})=>{const h=l5(t,location),_=n.value,p=e.value;let m=0;if(f){if(n.value=h,e.value=f,o&&o===_){o=null;return}m=p?f.position-p.position:0}else s(h);i.forEach(b=>{b(n.value,_,{delta:m,type:Gf.pop,direction:m?m>0?gf.forward:gf.back:gf.unknown})})};function l(){o=n.value}function c(f){i.push(f);const h=()=>{const _=i.indexOf(f);_>-1&&i.splice(_,1)};return r.push(h),h}function u(){const{history:f}=window;f.state&&f.replaceState(Bt({},f.state,{scroll:a_()}),"")}function d(){for(const f of r)f();r=[],window.removeEventListener("popstate",a),window.removeEventListener("beforeunload",u)}return window.addEventListener("popstate",a),window.addEventListener("beforeunload",u,{passive:!0}),{pauseListeners:l,listen:c,destroy:d}}function W2(t,e,n,s=!1,i=!1){return{back:t,current:e,forward:n,replaced:s,position:window.history.length,scroll:i?a_():null}}function SD(t){const{history:e,location:n}=window,s={value:l5(t,n)},i={value:e.state};i.value||r(s.value,{back:null,current:s.value,forward:null,position:e.length-1,replaced:!0,scroll:null},!0);function r(l,c,u){const d=t.indexOf("#"),f=d>-1?(n.host&&document.querySelector("base")?t:t.slice(d))+l:wD()+t+l;try{e[u?"replaceState":"pushState"](c,"",f),i.value=c}catch(h){console.error(h),n[u?"replace":"assign"](f)}}function o(l,c){const u=Bt({},e.state,W2(i.value.back,l,i.value.forward,!0),c,{position:i.value.position});r(l,u,!0),s.value=l}function a(l,c){const u=Bt({},i.value,e.state,{forward:l,scroll:a_()});r(u.current,u,!0);const d=Bt({},W2(s.value,l,null),{position:u.position+1},c);r(l,d,!1),s.value=l}return{location:s,state:i,push:a,replace:o}}function ED(t){t=pD(t);const e=SD(t),n=xD(t,e.state,e.location,e.replace);function s(r,o=!0){o||n.pauseListeners(),history.go(r)}const i=Bt({location:"",base:t,go:s,createHref:gD.bind(null,t)},e,n);return Object.defineProperty(i,"location",{enumerable:!0,get:()=>e.location.value}),Object.defineProperty(i,"state",{enumerable:!0,get:()=>e.state.value}),i}function TD(t){return t=location.host?t||location.pathname+location.search:"",t.includes("#")||(t+="#"),ED(t)}function AD(t){return typeof t=="string"||t&&typeof t=="object"}function c5(t){return typeof t=="string"||typeof t=="symbol"}const Io={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0},u5=Symbol("");var j2;(function(t){t[t.aborted=4]="aborted",t[t.cancelled=8]="cancelled",t[t.duplicated=16]="duplicated"})(j2||(j2={}));function ku(t,e){return Bt(new Error,{type:t,[u5]:!0},e)}function Lr(t,e){return t instanceof Error&&u5 in t&&(e==null||!!(t.type&e))}const q2="[^/]+?",MD={sensitive:!1,strict:!1,start:!0,end:!0},kD=/[.+*?^${}()[\]/\\]/g;function RD(t,e){const n=Bt({},MD,e),s=[];let i=n.start?"^":"";const r=[];for(const c of t){const u=c.length?[]:[90];n.strict&&!c.length&&(i+="/");for(let d=0;de.length?e.length===1&&e[0]===40+40?1:-1:0}function OD(t,e){let n=0;const s=t.score,i=e.score;for(;n0&&e[e.length-1]<0}const ID={type:0,value:""},LD=/[a-zA-Z0-9_]/;function PD(t){if(!t)return[[]];if(t==="/")return[[ID]];if(!t.startsWith("/"))throw new Error(`Invalid path "${t}"`);function e(h){throw new Error(`ERR (${n})/"${c}": ${h}`)}let n=0,s=n;const i=[];let r;function o(){r&&i.push(r),r=[]}let a=0,l,c="",u="";function d(){c&&(n===0?r.push({type:0,value:c}):n===1||n===2||n===3?(r.length>1&&(l==="*"||l==="+")&&e(`A repeatable param (${c}) must be alone in its segment. eg: '/:ids+.`),r.push({type:1,value:c,regexp:u,repeatable:l==="*"||l==="+",optional:l==="*"||l==="?"})):e("Invalid state to consume buffer"),c="")}function f(){c+=l}for(;a{o(y)}:mf}function o(u){if(c5(u)){const d=s.get(u);d&&(s.delete(u),n.splice(n.indexOf(d),1),d.children.forEach(o),d.alias.forEach(o))}else{const d=n.indexOf(u);d>-1&&(n.splice(d,1),u.record.name&&s.delete(u.record.name),u.children.forEach(o),u.alias.forEach(o))}}function a(){return n}function l(u){let d=0;for(;d=0&&(u.record.path!==n[d].record.path||!d5(u,n[d]));)d++;n.splice(d,0,u),u.record.name&&!X2(u)&&s.set(u.record.name,u)}function c(u,d){let f,h={},_,p;if("name"in u&&u.name){if(f=s.get(u.name),!f)throw ku(1,{location:u});p=f.record.name,h=Bt(K2(d.params,f.keys.filter(y=>!y.optional).map(y=>y.name)),u.params&&K2(u.params,f.keys.map(y=>y.name))),_=f.stringify(h)}else if("path"in u)_=u.path,f=n.find(y=>y.re.test(_)),f&&(h=f.parse(_),p=f.record.name);else{if(f=d.name?s.get(d.name):n.find(y=>y.re.test(d.path)),!f)throw ku(1,{location:u,currentLocation:d});p=f.record.name,h=Bt({},d.params,u.params),_=f.stringify(h)}const m=[];let b=f;for(;b;)m.unshift(b.record),b=b.parent;return{name:p,path:_,params:h,matched:m,meta:UD(m)}}return t.forEach(u=>r(u)),{addRoute:r,resolve:c,removeRoute:o,getRoutes:a,getRecordMatcher:i}}function K2(t,e){const n={};for(const s of e)s in t&&(n[s]=t[s]);return n}function ND(t){return{path:t.path,redirect:t.redirect,name:t.name,meta:t.meta||{},aliasOf:void 0,beforeEnter:t.beforeEnter,props:$D(t),children:t.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in t?t.components||null:t.component&&{default:t.component}}}function $D(t){const e={},n=t.props||!1;if("component"in t)e.default=n;else for(const s in t.components)e[s]=typeof n=="object"?n[s]:n;return e}function X2(t){for(;t;){if(t.record.aliasOf)return!0;t=t.parent}return!1}function UD(t){return t.reduce((e,n)=>Bt(e,n.meta),{})}function Z2(t,e){const n={};for(const s in t)n[s]=s in e?e[s]:t[s];return n}function d5(t,e){return e.children.some(n=>n===t||d5(t,n))}const f5=/#/g,BD=/&/g,GD=/\//g,zD=/=/g,HD=/\?/g,h5=/\+/g,VD=/%5B/g,WD=/%5D/g,p5=/%5E/g,jD=/%60/g,m5=/%7B/g,qD=/%7C/g,g5=/%7D/g,YD=/%20/g;function Bv(t){return encodeURI(""+t).replace(qD,"|").replace(VD,"[").replace(WD,"]")}function KD(t){return Bv(t).replace(m5,"{").replace(g5,"}").replace(p5,"^")}function Ib(t){return Bv(t).replace(h5,"%2B").replace(YD,"+").replace(f5,"%23").replace(BD,"%26").replace(jD,"`").replace(m5,"{").replace(g5,"}").replace(p5,"^")}function XD(t){return Ib(t).replace(zD,"%3D")}function ZD(t){return Bv(t).replace(f5,"%23").replace(HD,"%3F")}function JD(t){return t==null?"":ZD(t).replace(GD,"%2F")}function ng(t){try{return decodeURIComponent(""+t)}catch{}return""+t}function QD(t){const e={};if(t===""||t==="?")return e;const s=(t[0]==="?"?t.slice(1):t).split("&");for(let i=0;ir&&Ib(r)):[s&&Ib(s)]).forEach(r=>{r!==void 0&&(e+=(e.length?"&":"")+n,r!=null&&(e+="="+r))})}return e}function e7(t){const e={};for(const n in t){const s=t[n];s!==void 0&&(e[n]=ji(s)?s.map(i=>i==null?null:""+i):s==null?s:""+s)}return e}const t7=Symbol(""),Q2=Symbol(""),Gv=Symbol(""),_5=Symbol(""),Lb=Symbol("");function Rd(){let t=[];function e(s){return t.push(s),()=>{const i=t.indexOf(s);i>-1&&t.splice(i,1)}}function n(){t=[]}return{add:e,list:()=>t.slice(),reset:n}}function sa(t,e,n,s,i){const r=s&&(s.enterCallbacks[i]=s.enterCallbacks[i]||[]);return()=>new Promise((o,a)=>{const l=d=>{d===!1?a(ku(4,{from:n,to:e})):d instanceof Error?a(d):AD(d)?a(ku(2,{from:e,to:d})):(r&&s.enterCallbacks[i]===r&&typeof d=="function"&&r.push(d),o())},c=t.call(s&&s.instances[i],e,n,l);let u=Promise.resolve(c);t.length<3&&(u=u.then(l)),u.catch(d=>a(d))})}function R0(t,e,n,s){const i=[];for(const r of t)for(const o in r.components){let a=r.components[o];if(!(e!=="beforeRouteEnter"&&!r.instances[o]))if(n7(a)){const c=(a.__vccOpts||a)[e];c&&i.push(sa(c,n,s,r,o))}else{let l=a();i.push(()=>l.then(c=>{if(!c)return Promise.reject(new Error(`Couldn't resolve component "${o}" at "${r.path}"`));const u=aD(c)?c.default:c;r.components[o]=u;const f=(u.__vccOpts||u)[e];return f&&sa(f,n,s,r,o)()}))}}return i}function n7(t){return typeof t=="object"||"displayName"in t||"props"in t||"__vccOpts"in t}function eS(t){const e=yr(Gv),n=yr(_5),s=En(()=>e.resolve(nu(t.to))),i=En(()=>{const{matched:l}=s.value,{length:c}=l,u=l[c-1],d=n.matched;if(!u||!d.length)return-1;const f=d.findIndex(Mu.bind(null,u));if(f>-1)return f;const h=tS(l[c-2]);return c>1&&tS(u)===h&&d[d.length-1].path!==h?d.findIndex(Mu.bind(null,l[c-2])):f}),r=En(()=>i.value>-1&&r7(n.params,s.value.params)),o=En(()=>i.value>-1&&i.value===n.matched.length-1&&a5(n.params,s.value.params));function a(l={}){return i7(l)?e[nu(t.replace)?"replace":"push"](nu(t.to)).catch(mf):Promise.resolve()}return{route:s,href:En(()=>s.value.href),isActive:r,isExactActive:o,navigate:a}}const s7=nt({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"}},useLink:eS,setup(t,{slots:e}){const n=Ku(eS(t)),{options:s}=yr(Gv),i=En(()=>({[nS(t.activeClass,s.linkActiveClass,"router-link-active")]:n.isActive,[nS(t.exactActiveClass,s.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const r=e.default&&e.default(n);return t.custom?r:Eu("a",{"aria-current":n.isExactActive?t.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:i.value},r)}}}),b5=s7;function i7(t){if(!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)&&!t.defaultPrevented&&!(t.button!==void 0&&t.button!==0)){if(t.currentTarget&&t.currentTarget.getAttribute){const e=t.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(e))return}return t.preventDefault&&t.preventDefault(),!0}}function r7(t,e){for(const n in e){const s=e[n],i=t[n];if(typeof s=="string"){if(s!==i)return!1}else if(!ji(i)||i.length!==s.length||s.some((r,o)=>r!==i[o]))return!1}return!0}function tS(t){return t?t.aliasOf?t.aliasOf.path:t.path:""}const nS=(t,e,n)=>t??e??n,o7=nt({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(t,{attrs:e,slots:n}){const s=yr(Lb),i=En(()=>t.route||s.value),r=yr(Q2,0),o=En(()=>{let c=nu(r);const{matched:u}=i.value;let d;for(;(d=u[c])&&!d.components;)c++;return c}),a=En(()=>i.value.matched[o.value]);Sm(Q2,En(()=>o.value+1)),Sm(t7,a),Sm(Lb,i);const l=Yg();return ya(()=>[l.value,a.value,t.name],([c,u,d],[f,h,_])=>{u&&(u.instances[d]=c,h&&h!==u&&c&&c===f&&(u.leaveGuards.size||(u.leaveGuards=h.leaveGuards),u.updateGuards.size||(u.updateGuards=h.updateGuards))),c&&u&&(!h||!Mu(u,h)||!f)&&(u.enterCallbacks[d]||[]).forEach(p=>p(c))},{flush:"post"}),()=>{const c=i.value,u=t.name,d=a.value,f=d&&d.components[u];if(!f)return sS(n.default,{Component:f,route:c});const h=d.props[u],_=h?h===!0?c.params:typeof h=="function"?h(c):h:null,m=Eu(f,Bt({},_,e,{onVnodeUnmounted:b=>{b.component.isUnmounted&&(d.instances[u]=null)},ref:l}));return sS(n.default,{Component:m,route:c})||m}}});function sS(t,e){if(!t)return null;const n=t(e);return n.length===1?n[0]:n}const y5=o7;function a7(t){const e=FD(t.routes,t),n=t.parseQuery||QD,s=t.stringifyQuery||J2,i=t.history,r=Rd(),o=Rd(),a=Rd(),l=Mv(Io);let c=Io;Nc&&t.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const u=M0.bind(null,de=>""+de),d=M0.bind(null,JD),f=M0.bind(null,ng);function h(de,Se){let we,ge;return c5(de)?(we=e.getRecordMatcher(de),ge=Se):ge=de,e.addRoute(ge,we)}function _(de){const Se=e.getRecordMatcher(de);Se&&e.removeRoute(Se)}function p(){return e.getRoutes().map(de=>de.record)}function m(de){return!!e.getRecordMatcher(de)}function b(de,Se){if(Se=Bt({},Se||l.value),typeof de=="string"){const V=k0(n,de,Se.path),te=e.resolve({path:V.path},Se),he=i.createHref(V.fullPath);return Bt(V,te,{params:f(te.params),hash:ng(V.hash),redirectedFrom:void 0,href:he})}let we;if("path"in de)we=Bt({},de,{path:k0(n,de.path,Se.path).path});else{const V=Bt({},de.params);for(const te in V)V[te]==null&&delete V[te];we=Bt({},de,{params:d(V)}),Se.params=d(Se.params)}const ge=e.resolve(we,Se),He=de.hash||"";ge.params=u(f(ge.params));const Be=uD(s,Bt({},de,{hash:KD(He),path:ge.path})),P=i.createHref(Be);return Bt({fullPath:Be,hash:He,query:s===J2?e7(de.query):de.query||{}},ge,{redirectedFrom:void 0,href:P})}function y(de){return typeof de=="string"?k0(n,de,l.value.path):Bt({},de)}function v(de,Se){if(c!==de)return ku(8,{from:Se,to:de})}function x(de){return T(de)}function S(de){return x(Bt(y(de),{replace:!0}))}function w(de){const Se=de.matched[de.matched.length-1];if(Se&&Se.redirect){const{redirect:we}=Se;let ge=typeof we=="function"?we(de):we;return typeof ge=="string"&&(ge=ge.includes("?")||ge.includes("#")?ge=y(ge):{path:ge},ge.params={}),Bt({query:de.query,hash:de.hash,params:"path"in ge?{}:de.params},ge)}}function T(de,Se){const we=c=b(de),ge=l.value,He=de.state,Be=de.force,P=de.replace===!0,V=w(we);if(V)return T(Bt(y(V),{state:typeof V=="object"?Bt({},He,V.state):He,force:Be,replace:P}),Se||we);const te=we;te.redirectedFrom=Se;let he;return!Be&&dD(s,ge,we)&&(he=ku(16,{to:te,from:ge}),oe(ge,ge,!0,!1)),(he?Promise.resolve(he):O(te,ge)).catch(be=>Lr(be)?Lr(be,2)?be:K(be):j(be,te,ge)).then(be=>{if(be){if(Lr(be,2))return T(Bt({replace:P},y(be.to),{state:typeof be.to=="object"?Bt({},He,be.to.state):He,force:Be}),Se||te)}else be=B(te,ge,!0,P,He);return I(te,ge,be),be})}function E(de,Se){const we=v(de,Se);return we?Promise.reject(we):Promise.resolve()}function A(de){const Se=Me.values().next().value;return Se&&typeof Se.runWithContext=="function"?Se.runWithContext(de):de()}function O(de,Se){let we;const[ge,He,Be]=l7(de,Se);we=R0(ge.reverse(),"beforeRouteLeave",de,Se);for(const V of ge)V.leaveGuards.forEach(te=>{we.push(sa(te,de,Se))});const P=E.bind(null,de,Se);return we.push(P),ie(we).then(()=>{we=[];for(const V of r.list())we.push(sa(V,de,Se));return we.push(P),ie(we)}).then(()=>{we=R0(He,"beforeRouteUpdate",de,Se);for(const V of He)V.updateGuards.forEach(te=>{we.push(sa(te,de,Se))});return we.push(P),ie(we)}).then(()=>{we=[];for(const V of Be)if(V.beforeEnter)if(ji(V.beforeEnter))for(const te of V.beforeEnter)we.push(sa(te,de,Se));else we.push(sa(V.beforeEnter,de,Se));return we.push(P),ie(we)}).then(()=>(de.matched.forEach(V=>V.enterCallbacks={}),we=R0(Be,"beforeRouteEnter",de,Se),we.push(P),ie(we))).then(()=>{we=[];for(const V of o.list())we.push(sa(V,de,Se));return we.push(P),ie(we)}).catch(V=>Lr(V,8)?V:Promise.reject(V))}function I(de,Se,we){a.list().forEach(ge=>A(()=>ge(de,Se,we)))}function B(de,Se,we,ge,He){const Be=v(de,Se);if(Be)return Be;const P=Se===Io,V=Nc?history.state:{};we&&(ge||P?i.replace(de.fullPath,Bt({scroll:P&&V&&V.scroll},He)):i.push(de.fullPath,He)),l.value=de,oe(de,Se,we,P),K()}let U;function D(){U||(U=i.listen((de,Se,we)=>{if(!Pe.listening)return;const ge=b(de),He=w(ge);if(He){T(Bt(He,{replace:!0}),ge).catch(mf);return}c=ge;const Be=l.value;Nc&&yD(V2(Be.fullPath,we.delta),a_()),O(ge,Be).catch(P=>Lr(P,12)?P:Lr(P,2)?(T(P.to,ge).then(V=>{Lr(V,20)&&!we.delta&&we.type===Gf.pop&&i.go(-1,!1)}).catch(mf),Promise.reject()):(we.delta&&i.go(-we.delta,!1),j(P,ge,Be))).then(P=>{P=P||B(ge,Be,!1),P&&(we.delta&&!Lr(P,8)?i.go(-we.delta,!1):we.type===Gf.pop&&Lr(P,20)&&i.go(-1,!1)),I(ge,Be,P)}).catch(mf)}))}let $=Rd(),F=Rd(),H;function j(de,Se,we){K(de);const ge=F.list();return ge.length?ge.forEach(He=>He(de,Se,we)):console.error(de),Promise.reject(de)}function Z(){return H&&l.value!==Io?Promise.resolve():new Promise((de,Se)=>{$.add([de,Se])})}function K(de){return H||(H=!de,D(),$.list().forEach(([Se,we])=>de?we(de):Se()),$.reset()),de}function oe(de,Se,we,ge){const{scrollBehavior:He}=t;if(!Nc||!He)return Promise.resolve();const Be=!we&&vD(V2(de.fullPath,0))||(ge||!we)&&history.state&&history.state.scroll||null;return Xg().then(()=>He(de,Se,Be)).then(P=>P&&bD(P)).catch(P=>j(P,de,Se))}const Q=de=>i.go(de);let me;const Me=new Set,Pe={currentRoute:l,listening:!0,addRoute:h,removeRoute:_,hasRoute:m,getRoutes:p,resolve:b,options:t,push:x,replace:S,go:Q,back:()=>Q(-1),forward:()=>Q(1),beforeEach:r.add,beforeResolve:o.add,afterEach:a.add,onError:F.add,isReady:Z,install(de){const Se=this;de.component("RouterLink",b5),de.component("RouterView",y5),de.config.globalProperties.$router=Se,Object.defineProperty(de.config.globalProperties,"$route",{enumerable:!0,get:()=>nu(l)}),Nc&&!me&&l.value===Io&&(me=!0,x(i.location).catch(He=>{}));const we={};for(const He in Io)Object.defineProperty(we,He,{get:()=>l.value[He],enumerable:!0});de.provide(Gv,Se),de.provide(_5,g4(we)),de.provide(Lb,l);const ge=de.unmount;Me.add(de),de.unmount=function(){Me.delete(de),Me.size<1&&(c=Io,U&&U(),U=null,l.value=Io,me=!1,H=!1),ge()}}};function ie(de){return de.reduce((Se,we)=>Se.then(()=>A(we)),Promise.resolve())}return Pe}function l7(t,e){const n=[],s=[],i=[],r=Math.max(e.matched.length,t.matched.length);for(let o=0;oMu(c,a))?s.push(a):n.push(a));const l=t.matched[o];l&&(e.matched.find(c=>Mu(c,l))||i.push(l))}return[n,s,i]}//! moment.js +//! version : 2.30.1 +//! authors : Tim Wood, Iskren Chernev, Moment.js contributors +//! license : MIT +//! momentjs.com +var v5;function De(){return v5.apply(null,arguments)}function c7(t){v5=t}function qi(t){return t instanceof Array||Object.prototype.toString.call(t)==="[object Array]"}function kl(t){return t!=null&&Object.prototype.toString.call(t)==="[object Object]"}function It(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function zv(t){if(Object.getOwnPropertyNames)return Object.getOwnPropertyNames(t).length===0;var e;for(e in t)if(It(t,e))return!1;return!0}function ks(t){return t===void 0}function mo(t){return typeof t=="number"||Object.prototype.toString.call(t)==="[object Number]"}function Mh(t){return t instanceof Date||Object.prototype.toString.call(t)==="[object Date]"}function w5(t,e){var n=[],s,i=t.length;for(s=0;s>>0,s;for(s=0;s0)for(n=0;n=0;return(r?n?"+":"":"-")+Math.pow(10,Math.max(0,i)).toString().substr(1)+s}var jv=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,op=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,O0={},iu={};function Ke(t,e,n,s){var i=s;typeof s=="string"&&(i=function(){return this[s]()}),t&&(iu[t]=i),e&&(iu[e[0]]=function(){return Ar(i.apply(this,arguments),e[1],e[2])}),n&&(iu[n]=function(){return this.localeData().ordinal(i.apply(this,arguments),t)})}function p7(t){return t.match(/\[[\s\S]/)?t.replace(/^\[|\]$/g,""):t.replace(/\\/g,"")}function m7(t){var e=t.match(jv),n,s;for(n=0,s=e.length;n=0&&op.test(t);)t=t.replace(op,s),op.lastIndex=0,n-=1;return t}var g7={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};function _7(t){var e=this._longDateFormat[t],n=this._longDateFormat[t.toUpperCase()];return e||!n?e:(this._longDateFormat[t]=n.match(jv).map(function(s){return s==="MMMM"||s==="MM"||s==="DD"||s==="dddd"?s.slice(1):s}).join(""),this._longDateFormat[t])}var b7="Invalid date";function y7(){return this._invalidDate}var v7="%d",w7=/\d{1,2}/;function x7(t){return this._ordinal.replace("%d",t)}var S7={future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};function E7(t,e,n,s){var i=this._relativeTime[n];return Cr(i)?i(t,e,n,s):i.replace(/%d/i,t)}function T7(t,e){var n=this._relativeTime[t>0?"future":"past"];return Cr(n)?n(e):n.replace(/%s/i,e)}var oS={D:"date",dates:"date",date:"date",d:"day",days:"day",day:"day",e:"weekday",weekdays:"weekday",weekday:"weekday",E:"isoWeekday",isoweekdays:"isoWeekday",isoweekday:"isoWeekday",DDD:"dayOfYear",dayofyears:"dayOfYear",dayofyear:"dayOfYear",h:"hour",hours:"hour",hour:"hour",ms:"millisecond",milliseconds:"millisecond",millisecond:"millisecond",m:"minute",minutes:"minute",minute:"minute",M:"month",months:"month",month:"month",Q:"quarter",quarters:"quarter",quarter:"quarter",s:"second",seconds:"second",second:"second",gg:"weekYear",weekyears:"weekYear",weekyear:"weekYear",GG:"isoWeekYear",isoweekyears:"isoWeekYear",isoweekyear:"isoWeekYear",w:"week",weeks:"week",week:"week",W:"isoWeek",isoweeks:"isoWeek",isoweek:"isoWeek",y:"year",years:"year",year:"year"};function vi(t){return typeof t=="string"?oS[t]||oS[t.toLowerCase()]:void 0}function qv(t){var e={},n,s;for(s in t)It(t,s)&&(n=vi(s),n&&(e[n]=t[s]));return e}var A7={date:9,day:11,weekday:11,isoWeekday:11,dayOfYear:4,hour:13,millisecond:16,minute:14,month:8,quarter:7,second:15,weekYear:1,isoWeekYear:1,week:5,isoWeek:5,year:1};function M7(t){var e=[],n;for(n in t)It(t,n)&&e.push({unit:n,priority:A7[n]});return e.sort(function(s,i){return s.priority-i.priority}),e}var T5=/\d/,Zs=/\d\d/,A5=/\d{3}/,Yv=/\d{4}/,c_=/[+-]?\d{6}/,an=/\d\d?/,M5=/\d\d\d\d?/,k5=/\d\d\d\d\d\d?/,u_=/\d{1,3}/,Kv=/\d{1,4}/,d_=/[+-]?\d{1,6}/,Ju=/\d+/,f_=/[+-]?\d+/,k7=/Z|[+-]\d\d:?\d\d/gi,h_=/Z|[+-]\d\d(?::?\d\d)?/gi,R7=/[+-]?\d+(\.\d{1,3})?/,Rh=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,Qu=/^[1-9]\d?/,Xv=/^([1-9]\d|\d)/,sg;sg={};function ze(t,e,n){sg[t]=Cr(e)?e:function(s,i){return s&&n?n:e}}function C7(t,e){return It(sg,t)?sg[t](e._strict,e._locale):new RegExp(O7(t))}function O7(t){return lo(t.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(e,n,s,i,r){return n||s||i||r}))}function lo(t){return t.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function li(t){return t<0?Math.ceil(t)||0:Math.floor(t)}function xt(t){var e=+t,n=0;return e!==0&&isFinite(e)&&(n=li(e)),n}var Nb={};function Wt(t,e){var n,s=e,i;for(typeof t=="string"&&(t=[t]),mo(e)&&(s=function(r,o){o[e]=xt(r)}),i=t.length,n=0;n68?1900:2e3)};var R5=ed("FullYear",!0);function D7(){return p_(this.year())}function ed(t,e){return function(n){return n!=null?(C5(this,t,n),De.updateOffset(this,e),this):zf(this,t)}}function zf(t,e){if(!t.isValid())return NaN;var n=t._d,s=t._isUTC;switch(e){case"Milliseconds":return s?n.getUTCMilliseconds():n.getMilliseconds();case"Seconds":return s?n.getUTCSeconds():n.getSeconds();case"Minutes":return s?n.getUTCMinutes():n.getMinutes();case"Hours":return s?n.getUTCHours():n.getHours();case"Date":return s?n.getUTCDate():n.getDate();case"Day":return s?n.getUTCDay():n.getDay();case"Month":return s?n.getUTCMonth():n.getMonth();case"FullYear":return s?n.getUTCFullYear():n.getFullYear();default:return NaN}}function C5(t,e,n){var s,i,r,o,a;if(!(!t.isValid()||isNaN(n))){switch(s=t._d,i=t._isUTC,e){case"Milliseconds":return void(i?s.setUTCMilliseconds(n):s.setMilliseconds(n));case"Seconds":return void(i?s.setUTCSeconds(n):s.setSeconds(n));case"Minutes":return void(i?s.setUTCMinutes(n):s.setMinutes(n));case"Hours":return void(i?s.setUTCHours(n):s.setHours(n));case"Date":return void(i?s.setUTCDate(n):s.setDate(n));case"FullYear":break;default:return}r=n,o=t.month(),a=t.date(),a=a===29&&o===1&&!p_(r)?28:a,i?s.setUTCFullYear(r,o,a):s.setFullYear(r,o,a)}}function F7(t){return t=vi(t),Cr(this[t])?this[t]():this}function N7(t,e){if(typeof t=="object"){t=qv(t);var n=M7(t),s,i=n.length;for(s=0;s=0?(a=new Date(t+400,e,n,s,i,r,o),isFinite(a.getFullYear())&&a.setFullYear(t)):a=new Date(t,e,n,s,i,r,o),a}function Hf(t){var e,n;return t<100&&t>=0?(n=Array.prototype.slice.call(arguments),n[0]=t+400,e=new Date(Date.UTC.apply(null,n)),isFinite(e.getUTCFullYear())&&e.setUTCFullYear(t)):e=new Date(Date.UTC.apply(null,arguments)),e}function ig(t,e,n){var s=7+e-n,i=(7+Hf(t,0,s).getUTCDay()-e)%7;return-i+s-1}function F5(t,e,n,s,i){var r=(7+n-s)%7,o=ig(t,s,i),a=1+7*(e-1)+r+o,l,c;return a<=0?(l=t-1,c=_f(l)+a):a>_f(t)?(l=t+1,c=a-_f(t)):(l=t,c=a),{year:l,dayOfYear:c}}function Vf(t,e,n){var s=ig(t.year(),e,n),i=Math.floor((t.dayOfYear()-s-1)/7)+1,r,o;return i<1?(o=t.year()-1,r=i+co(o,e,n)):i>co(t.year(),e,n)?(r=i-co(t.year(),e,n),o=t.year()+1):(o=t.year(),r=i),{week:r,year:o}}function co(t,e,n){var s=ig(t,e,n),i=ig(t+1,e,n);return(_f(t)-s+i)/7}Ke("w",["ww",2],"wo","week");Ke("W",["WW",2],"Wo","isoWeek");ze("w",an,Qu);ze("ww",an,Zs);ze("W",an,Qu);ze("WW",an,Zs);Ch(["w","ww","W","WW"],function(t,e,n,s){e[s.substr(0,1)]=xt(t)});function X7(t){return Vf(t,this._week.dow,this._week.doy).week}var Z7={dow:0,doy:6};function J7(){return this._week.dow}function Q7(){return this._week.doy}function e9(t){var e=this.localeData().week(this);return t==null?e:this.add((t-e)*7,"d")}function t9(t){var e=Vf(this,1,4).week;return t==null?e:this.add((t-e)*7,"d")}Ke("d",0,"do","day");Ke("dd",0,0,function(t){return this.localeData().weekdaysMin(this,t)});Ke("ddd",0,0,function(t){return this.localeData().weekdaysShort(this,t)});Ke("dddd",0,0,function(t){return this.localeData().weekdays(this,t)});Ke("e",0,0,"weekday");Ke("E",0,0,"isoWeekday");ze("d",an);ze("e",an);ze("E",an);ze("dd",function(t,e){return e.weekdaysMinRegex(t)});ze("ddd",function(t,e){return e.weekdaysShortRegex(t)});ze("dddd",function(t,e){return e.weekdaysRegex(t)});Ch(["dd","ddd","dddd"],function(t,e,n,s){var i=n._locale.weekdaysParse(t,s,n._strict);i!=null?e.d=i:mt(n).invalidWeekday=t});Ch(["d","e","E"],function(t,e,n,s){e[s]=xt(t)});function n9(t,e){return typeof t!="string"?t:isNaN(t)?(t=e.weekdaysParse(t),typeof t=="number"?t:null):parseInt(t,10)}function s9(t,e){return typeof t=="string"?e.weekdaysParse(t)%7||7:isNaN(t)?null:t}function Jv(t,e){return t.slice(e,7).concat(t.slice(0,e))}var i9="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),N5="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),r9="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),o9=Rh,a9=Rh,l9=Rh;function c9(t,e){var n=qi(this._weekdays)?this._weekdays:this._weekdays[t&&t!==!0&&this._weekdays.isFormat.test(e)?"format":"standalone"];return t===!0?Jv(n,this._week.dow):t?n[t.day()]:n}function u9(t){return t===!0?Jv(this._weekdaysShort,this._week.dow):t?this._weekdaysShort[t.day()]:this._weekdaysShort}function d9(t){return t===!0?Jv(this._weekdaysMin,this._week.dow):t?this._weekdaysMin[t.day()]:this._weekdaysMin}function f9(t,e,n){var s,i,r,o=t.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],s=0;s<7;++s)r=Rr([2e3,1]).day(s),this._minWeekdaysParse[s]=this.weekdaysMin(r,"").toLocaleLowerCase(),this._shortWeekdaysParse[s]=this.weekdaysShort(r,"").toLocaleLowerCase(),this._weekdaysParse[s]=this.weekdays(r,"").toLocaleLowerCase();return n?e==="dddd"?(i=xn.call(this._weekdaysParse,o),i!==-1?i:null):e==="ddd"?(i=xn.call(this._shortWeekdaysParse,o),i!==-1?i:null):(i=xn.call(this._minWeekdaysParse,o),i!==-1?i:null):e==="dddd"?(i=xn.call(this._weekdaysParse,o),i!==-1||(i=xn.call(this._shortWeekdaysParse,o),i!==-1)?i:(i=xn.call(this._minWeekdaysParse,o),i!==-1?i:null)):e==="ddd"?(i=xn.call(this._shortWeekdaysParse,o),i!==-1||(i=xn.call(this._weekdaysParse,o),i!==-1)?i:(i=xn.call(this._minWeekdaysParse,o),i!==-1?i:null)):(i=xn.call(this._minWeekdaysParse,o),i!==-1||(i=xn.call(this._weekdaysParse,o),i!==-1)?i:(i=xn.call(this._shortWeekdaysParse,o),i!==-1?i:null))}function h9(t,e,n){var s,i,r;if(this._weekdaysParseExact)return f9.call(this,t,e,n);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),s=0;s<7;s++){if(i=Rr([2e3,1]).day(s),n&&!this._fullWeekdaysParse[s]&&(this._fullWeekdaysParse[s]=new RegExp("^"+this.weekdays(i,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[s]=new RegExp("^"+this.weekdaysShort(i,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[s]=new RegExp("^"+this.weekdaysMin(i,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[s]||(r="^"+this.weekdays(i,"")+"|^"+this.weekdaysShort(i,"")+"|^"+this.weekdaysMin(i,""),this._weekdaysParse[s]=new RegExp(r.replace(".",""),"i")),n&&e==="dddd"&&this._fullWeekdaysParse[s].test(t))return s;if(n&&e==="ddd"&&this._shortWeekdaysParse[s].test(t))return s;if(n&&e==="dd"&&this._minWeekdaysParse[s].test(t))return s;if(!n&&this._weekdaysParse[s].test(t))return s}}function p9(t){if(!this.isValid())return t!=null?this:NaN;var e=zf(this,"Day");return t!=null?(t=n9(t,this.localeData()),this.add(t-e,"d")):e}function m9(t){if(!this.isValid())return t!=null?this:NaN;var e=(this.day()+7-this.localeData()._week.dow)%7;return t==null?e:this.add(t-e,"d")}function g9(t){if(!this.isValid())return t!=null?this:NaN;if(t!=null){var e=s9(t,this.localeData());return this.day(this.day()%7?e:e-7)}else return this.day()||7}function _9(t){return this._weekdaysParseExact?(It(this,"_weekdaysRegex")||Qv.call(this),t?this._weekdaysStrictRegex:this._weekdaysRegex):(It(this,"_weekdaysRegex")||(this._weekdaysRegex=o9),this._weekdaysStrictRegex&&t?this._weekdaysStrictRegex:this._weekdaysRegex)}function b9(t){return this._weekdaysParseExact?(It(this,"_weekdaysRegex")||Qv.call(this),t?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(It(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=a9),this._weekdaysShortStrictRegex&&t?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function y9(t){return this._weekdaysParseExact?(It(this,"_weekdaysRegex")||Qv.call(this),t?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(It(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=l9),this._weekdaysMinStrictRegex&&t?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function Qv(){function t(u,d){return d.length-u.length}var e=[],n=[],s=[],i=[],r,o,a,l,c;for(r=0;r<7;r++)o=Rr([2e3,1]).day(r),a=lo(this.weekdaysMin(o,"")),l=lo(this.weekdaysShort(o,"")),c=lo(this.weekdays(o,"")),e.push(a),n.push(l),s.push(c),i.push(a),i.push(l),i.push(c);e.sort(t),n.sort(t),s.sort(t),i.sort(t),this._weekdaysRegex=new RegExp("^("+i.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+s.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+n.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+e.join("|")+")","i")}function ew(){return this.hours()%12||12}function v9(){return this.hours()||24}Ke("H",["HH",2],0,"hour");Ke("h",["hh",2],0,ew);Ke("k",["kk",2],0,v9);Ke("hmm",0,0,function(){return""+ew.apply(this)+Ar(this.minutes(),2)});Ke("hmmss",0,0,function(){return""+ew.apply(this)+Ar(this.minutes(),2)+Ar(this.seconds(),2)});Ke("Hmm",0,0,function(){return""+this.hours()+Ar(this.minutes(),2)});Ke("Hmmss",0,0,function(){return""+this.hours()+Ar(this.minutes(),2)+Ar(this.seconds(),2)});function $5(t,e){Ke(t,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),e)})}$5("a",!0);$5("A",!1);function U5(t,e){return e._meridiemParse}ze("a",U5);ze("A",U5);ze("H",an,Xv);ze("h",an,Qu);ze("k",an,Qu);ze("HH",an,Zs);ze("hh",an,Zs);ze("kk",an,Zs);ze("hmm",M5);ze("hmmss",k5);ze("Hmm",M5);ze("Hmmss",k5);Wt(["H","HH"],Fn);Wt(["k","kk"],function(t,e,n){var s=xt(t);e[Fn]=s===24?0:s});Wt(["a","A"],function(t,e,n){n._isPm=n._locale.isPM(t),n._meridiem=t});Wt(["h","hh"],function(t,e,n){e[Fn]=xt(t),mt(n).bigHour=!0});Wt("hmm",function(t,e,n){var s=t.length-2;e[Fn]=xt(t.substr(0,s)),e[$i]=xt(t.substr(s)),mt(n).bigHour=!0});Wt("hmmss",function(t,e,n){var s=t.length-4,i=t.length-2;e[Fn]=xt(t.substr(0,s)),e[$i]=xt(t.substr(s,2)),e[io]=xt(t.substr(i)),mt(n).bigHour=!0});Wt("Hmm",function(t,e,n){var s=t.length-2;e[Fn]=xt(t.substr(0,s)),e[$i]=xt(t.substr(s))});Wt("Hmmss",function(t,e,n){var s=t.length-4,i=t.length-2;e[Fn]=xt(t.substr(0,s)),e[$i]=xt(t.substr(s,2)),e[io]=xt(t.substr(i))});function w9(t){return(t+"").toLowerCase().charAt(0)==="p"}var x9=/[ap]\.?m?\.?/i,S9=ed("Hours",!0);function E9(t,e,n){return t>11?n?"pm":"PM":n?"am":"AM"}var B5={calendar:f7,longDateFormat:g7,invalidDate:b7,ordinal:v7,dayOfMonthOrdinalParse:w7,relativeTime:S7,months:U7,monthsShort:O5,week:Z7,weekdays:i9,weekdaysMin:r9,weekdaysShort:N5,meridiemParse:x9},un={},Cd={},Wf;function T9(t,e){var n,s=Math.min(t.length,e.length);for(n=0;n0;){if(i=m_(r.slice(0,n).join("-")),i)return i;if(s&&s.length>=n&&T9(r,s)>=n-1)break;n--}e++}return Wf}function M9(t){return!!(t&&t.match("^[^/\\\\]*$"))}function m_(t){var e=null,n;if(un[t]===void 0&&typeof module<"u"&&module&&module.exports&&M9(t))try{e=Wf._abbr,n=require,n("./locale/"+t),va(e)}catch{un[t]=null}return un[t]}function va(t,e){var n;return t&&(ks(e)?n=Eo(t):n=tw(t,e),n?Wf=n:typeof console<"u"&&console.warn&&console.warn("Locale "+t+" not found. Did you forget to load it?")),Wf._abbr}function tw(t,e){if(e!==null){var n,s=B5;if(e.abbr=t,un[t]!=null)S5("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),s=un[t]._config;else if(e.parentLocale!=null)if(un[e.parentLocale]!=null)s=un[e.parentLocale]._config;else if(n=m_(e.parentLocale),n!=null)s=n._config;else return Cd[e.parentLocale]||(Cd[e.parentLocale]=[]),Cd[e.parentLocale].push({name:t,config:e}),null;return un[t]=new Wv(Db(s,e)),Cd[t]&&Cd[t].forEach(function(i){tw(i.name,i.config)}),va(t),un[t]}else return delete un[t],null}function k9(t,e){if(e!=null){var n,s,i=B5;un[t]!=null&&un[t].parentLocale!=null?un[t].set(Db(un[t]._config,e)):(s=m_(t),s!=null&&(i=s._config),e=Db(i,e),s==null&&(e.abbr=t),n=new Wv(e),n.parentLocale=un[t],un[t]=n),va(t)}else un[t]!=null&&(un[t].parentLocale!=null?(un[t]=un[t].parentLocale,t===va()&&va(t)):un[t]!=null&&delete un[t]);return un[t]}function Eo(t){var e;if(t&&t._locale&&t._locale._abbr&&(t=t._locale._abbr),!t)return Wf;if(!qi(t)){if(e=m_(t),e)return e;t=[t]}return A9(t)}function R9(){return Fb(un)}function nw(t){var e,n=t._a;return n&&mt(t).overflow===-2&&(e=n[so]<0||n[so]>11?so:n[mr]<1||n[mr]>Zv(n[ls],n[so])?mr:n[Fn]<0||n[Fn]>24||n[Fn]===24&&(n[$i]!==0||n[io]!==0||n[hl]!==0)?Fn:n[$i]<0||n[$i]>59?$i:n[io]<0||n[io]>59?io:n[hl]<0||n[hl]>999?hl:-1,mt(t)._overflowDayOfYear&&(emr)&&(e=mr),mt(t)._overflowWeeks&&e===-1&&(e=L7),mt(t)._overflowWeekday&&e===-1&&(e=P7),mt(t).overflow=e),t}var C9=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,O9=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,I9=/Z|[+-]\d\d(?::?\d\d)?/,ap=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/],["YYYYMM",/\d{6}/,!1],["YYYY",/\d{4}/,!1]],I0=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],L9=/^\/?Date\((-?\d+)/i,P9=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,D9={UT:0,GMT:0,EDT:-4*60,EST:-5*60,CDT:-5*60,CST:-6*60,MDT:-6*60,MST:-7*60,PDT:-7*60,PST:-8*60};function G5(t){var e,n,s=t._i,i=C9.exec(s)||O9.exec(s),r,o,a,l,c=ap.length,u=I0.length;if(i){for(mt(t).iso=!0,e=0,n=c;e_f(o)||t._dayOfYear===0)&&(mt(t)._overflowDayOfYear=!0),n=Hf(o,0,t._dayOfYear),t._a[so]=n.getUTCMonth(),t._a[mr]=n.getUTCDate()),e=0;e<3&&t._a[e]==null;++e)t._a[e]=s[e]=i[e];for(;e<7;e++)t._a[e]=s[e]=t._a[e]==null?e===2?1:0:t._a[e];t._a[Fn]===24&&t._a[$i]===0&&t._a[io]===0&&t._a[hl]===0&&(t._nextDay=!0,t._a[Fn]=0),t._d=(t._useUTC?Hf:K7).apply(null,s),r=t._useUTC?t._d.getUTCDay():t._d.getDay(),t._tzm!=null&&t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),t._nextDay&&(t._a[Fn]=24),t._w&&typeof t._w.d<"u"&&t._w.d!==r&&(mt(t).weekdayMismatch=!0)}}function H9(t){var e,n,s,i,r,o,a,l,c;e=t._w,e.GG!=null||e.W!=null||e.E!=null?(r=1,o=4,n=$c(e.GG,t._a[ls],Vf(on(),1,4).year),s=$c(e.W,1),i=$c(e.E,1),(i<1||i>7)&&(l=!0)):(r=t._locale._week.dow,o=t._locale._week.doy,c=Vf(on(),r,o),n=$c(e.gg,t._a[ls],c.year),s=$c(e.w,c.week),e.d!=null?(i=e.d,(i<0||i>6)&&(l=!0)):e.e!=null?(i=e.e+r,(e.e<0||e.e>6)&&(l=!0)):i=r),s<1||s>co(n,r,o)?mt(t)._overflowWeeks=!0:l!=null?mt(t)._overflowWeekday=!0:(a=F5(n,s,i,r,o),t._a[ls]=a.year,t._dayOfYear=a.dayOfYear)}De.ISO_8601=function(){};De.RFC_2822=function(){};function iw(t){if(t._f===De.ISO_8601){G5(t);return}if(t._f===De.RFC_2822){z5(t);return}t._a=[],mt(t).empty=!0;var e=""+t._i,n,s,i,r,o,a=e.length,l=0,c,u;for(i=E5(t._f,t._locale).match(jv)||[],u=i.length,n=0;n0&&mt(t).unusedInput.push(o),e=e.slice(e.indexOf(s)+s.length),l+=s.length),iu[r]?(s?mt(t).empty=!1:mt(t).unusedTokens.push(r),I7(r,s,t)):t._strict&&!s&&mt(t).unusedTokens.push(r);mt(t).charsLeftOver=a-l,e.length>0&&mt(t).unusedInput.push(e),t._a[Fn]<=12&&mt(t).bigHour===!0&&t._a[Fn]>0&&(mt(t).bigHour=void 0),mt(t).parsedDateParts=t._a.slice(0),mt(t).meridiem=t._meridiem,t._a[Fn]=V9(t._locale,t._a[Fn],t._meridiem),c=mt(t).era,c!==null&&(t._a[ls]=t._locale.erasConvertYear(c,t._a[ls])),sw(t),nw(t)}function V9(t,e,n){var s;return n==null?e:t.meridiemHour!=null?t.meridiemHour(e,n):(t.isPM!=null&&(s=t.isPM(n),s&&e<12&&(e+=12),!s&&e===12&&(e=0)),e)}function W9(t){var e,n,s,i,r,o,a=!1,l=t._f.length;if(l===0){mt(t).invalidFormat=!0,t._d=new Date(NaN);return}for(i=0;ithis?this:t:l_()});function W5(t,e){var n,s;if(e.length===1&&qi(e[0])&&(e=e[0]),!e.length)return on();for(n=e[0],s=1;sthis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function fF(){if(!ks(this._isDSTShifted))return this._isDSTShifted;var t={},e;return Vv(t,this),t=H5(t),t._a?(e=t._isUTC?Rr(t._a):on(t._a),this._isDSTShifted=this.isValid()&&sF(t._a,e.toArray())>0):this._isDSTShifted=!1,this._isDSTShifted}function hF(){return this.isValid()?!this._isUTC:!1}function pF(){return this.isValid()?this._isUTC:!1}function q5(){return this.isValid()?this._isUTC&&this._offset===0:!1}var mF=/^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,gF=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function Ki(t,e){var n=t,s=null,i,r,o;return Mm(t)?n={ms:t._milliseconds,d:t._days,M:t._months}:mo(t)||!isNaN(+t)?(n={},e?n[e]=+t:n.milliseconds=+t):(s=mF.exec(t))?(i=s[1]==="-"?-1:1,n={y:0,d:xt(s[mr])*i,h:xt(s[Fn])*i,m:xt(s[$i])*i,s:xt(s[io])*i,ms:xt($b(s[hl]*1e3))*i}):(s=gF.exec(t))?(i=s[1]==="-"?-1:1,n={y:Ha(s[2],i),M:Ha(s[3],i),w:Ha(s[4],i),d:Ha(s[5],i),h:Ha(s[6],i),m:Ha(s[7],i),s:Ha(s[8],i)}):n==null?n={}:typeof n=="object"&&("from"in n||"to"in n)&&(o=_F(on(n.from),on(n.to)),n={},n.ms=o.milliseconds,n.M=o.months),r=new g_(n),Mm(t)&&It(t,"_locale")&&(r._locale=t._locale),Mm(t)&&It(t,"_isValid")&&(r._isValid=t._isValid),r}Ki.fn=g_.prototype;Ki.invalid=nF;function Ha(t,e){var n=t&&parseFloat(t.replace(",","."));return(isNaN(n)?0:n)*e}function lS(t,e){var n={};return n.months=e.month()-t.month()+(e.year()-t.year())*12,t.clone().add(n.months,"M").isAfter(e)&&--n.months,n.milliseconds=+e-+t.clone().add(n.months,"M"),n}function _F(t,e){var n;return t.isValid()&&e.isValid()?(e=ow(e,t),t.isBefore(e)?n=lS(t,e):(n=lS(e,t),n.milliseconds=-n.milliseconds,n.months=-n.months),n):{milliseconds:0,months:0}}function Y5(t,e){return function(n,s){var i,r;return s!==null&&!isNaN(+s)&&(S5(e,"moment()."+e+"(period, number) is deprecated. Please use moment()."+e+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),r=n,n=s,s=r),i=Ki(n,s),K5(this,i,t),this}}function K5(t,e,n,s){var i=e._milliseconds,r=$b(e._days),o=$b(e._months);t.isValid()&&(s=s??!0,o&&L5(t,zf(t,"Month")+o*n),r&&C5(t,"Date",zf(t,"Date")+r*n),i&&t._d.setTime(t._d.valueOf()+i*n),s&&De.updateOffset(t,r||o))}var bF=Y5(1,"add"),yF=Y5(-1,"subtract");function X5(t){return typeof t=="string"||t instanceof String}function vF(t){return Yi(t)||Mh(t)||X5(t)||mo(t)||xF(t)||wF(t)||t===null||t===void 0}function wF(t){var e=kl(t)&&!zv(t),n=!1,s=["years","year","y","months","month","M","days","day","d","dates","date","D","hours","hour","h","minutes","minute","m","seconds","second","s","milliseconds","millisecond","ms"],i,r,o=s.length;for(i=0;in.valueOf():n.valueOf()9999?Am(n,e?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):Cr(Date.prototype.toISOString)?e?this.toDate().toISOString():new Date(this.valueOf()+this.utcOffset()*60*1e3).toISOString().replace("Z",Am(n,"Z")):Am(n,e?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")}function FF(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var t="moment",e="",n,s,i,r;return this.isLocal()||(t=this.utcOffset()===0?"moment.utc":"moment.parseZone",e="Z"),n="["+t+'("]',s=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",i="-MM-DD[T]HH:mm:ss.SSS",r=e+'[")]',this.format(n+s+i+r)}function NF(t){t||(t=this.isUtc()?De.defaultFormatUtc:De.defaultFormat);var e=Am(this,t);return this.localeData().postformat(e)}function $F(t,e){return this.isValid()&&(Yi(t)&&t.isValid()||on(t).isValid())?Ki({to:this,from:t}).locale(this.locale()).humanize(!e):this.localeData().invalidDate()}function UF(t){return this.from(on(),t)}function BF(t,e){return this.isValid()&&(Yi(t)&&t.isValid()||on(t).isValid())?Ki({from:this,to:t}).locale(this.locale()).humanize(!e):this.localeData().invalidDate()}function GF(t){return this.to(on(),t)}function Z5(t){var e;return t===void 0?this._locale._abbr:(e=Eo(t),e!=null&&(this._locale=e),this)}var J5=yi("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(t){return t===void 0?this.localeData():this.locale(t)});function Q5(){return this._locale}var rg=1e3,ru=60*rg,og=60*ru,ek=(365*400+97)*24*og;function ou(t,e){return(t%e+e)%e}function tk(t,e,n){return t<100&&t>=0?new Date(t+400,e,n)-ek:new Date(t,e,n).valueOf()}function nk(t,e,n){return t<100&&t>=0?Date.UTC(t+400,e,n)-ek:Date.UTC(t,e,n)}function zF(t){var e,n;if(t=vi(t),t===void 0||t==="millisecond"||!this.isValid())return this;switch(n=this._isUTC?nk:tk,t){case"year":e=n(this.year(),0,1);break;case"quarter":e=n(this.year(),this.month()-this.month()%3,1);break;case"month":e=n(this.year(),this.month(),1);break;case"week":e=n(this.year(),this.month(),this.date()-this.weekday());break;case"isoWeek":e=n(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case"day":case"date":e=n(this.year(),this.month(),this.date());break;case"hour":e=this._d.valueOf(),e-=ou(e+(this._isUTC?0:this.utcOffset()*ru),og);break;case"minute":e=this._d.valueOf(),e-=ou(e,ru);break;case"second":e=this._d.valueOf(),e-=ou(e,rg);break}return this._d.setTime(e),De.updateOffset(this,!0),this}function HF(t){var e,n;if(t=vi(t),t===void 0||t==="millisecond"||!this.isValid())return this;switch(n=this._isUTC?nk:tk,t){case"year":e=n(this.year()+1,0,1)-1;break;case"quarter":e=n(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":e=n(this.year(),this.month()+1,1)-1;break;case"week":e=n(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":e=n(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":e=n(this.year(),this.month(),this.date()+1)-1;break;case"hour":e=this._d.valueOf(),e+=og-ou(e+(this._isUTC?0:this.utcOffset()*ru),og)-1;break;case"minute":e=this._d.valueOf(),e+=ru-ou(e,ru)-1;break;case"second":e=this._d.valueOf(),e+=rg-ou(e,rg)-1;break}return this._d.setTime(e),De.updateOffset(this,!0),this}function VF(){return this._d.valueOf()-(this._offset||0)*6e4}function WF(){return Math.floor(this.valueOf()/1e3)}function jF(){return new Date(this.valueOf())}function qF(){var t=this;return[t.year(),t.month(),t.date(),t.hour(),t.minute(),t.second(),t.millisecond()]}function YF(){var t=this;return{years:t.year(),months:t.month(),date:t.date(),hours:t.hours(),minutes:t.minutes(),seconds:t.seconds(),milliseconds:t.milliseconds()}}function KF(){return this.isValid()?this.toISOString():null}function XF(){return Hv(this)}function ZF(){return la({},mt(this))}function JF(){return mt(this).overflow}function QF(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}Ke("N",0,0,"eraAbbr");Ke("NN",0,0,"eraAbbr");Ke("NNN",0,0,"eraAbbr");Ke("NNNN",0,0,"eraName");Ke("NNNNN",0,0,"eraNarrow");Ke("y",["y",1],"yo","eraYear");Ke("y",["yy",2],0,"eraYear");Ke("y",["yyy",3],0,"eraYear");Ke("y",["yyyy",4],0,"eraYear");ze("N",aw);ze("NN",aw);ze("NNN",aw);ze("NNNN",uN);ze("NNNNN",dN);Wt(["N","NN","NNN","NNNN","NNNNN"],function(t,e,n,s){var i=n._locale.erasParse(t,s,n._strict);i?mt(n).era=i:mt(n).invalidEra=t});ze("y",Ju);ze("yy",Ju);ze("yyy",Ju);ze("yyyy",Ju);ze("yo",fN);Wt(["y","yy","yyy","yyyy"],ls);Wt(["yo"],function(t,e,n,s){var i;n._locale._eraYearOrdinalRegex&&(i=t.match(n._locale._eraYearOrdinalRegex)),n._locale.eraYearOrdinalParse?e[ls]=n._locale.eraYearOrdinalParse(t,i):e[ls]=parseInt(t,10)});function eN(t,e){var n,s,i,r=this._eras||Eo("en")._eras;for(n=0,s=r.length;n=0)return r[s]}function nN(t,e){var n=t.since<=t.until?1:-1;return e===void 0?De(t.since).year():De(t.since).year()+(e-t.offset)*n}function sN(){var t,e,n,s=this.localeData().eras();for(t=0,e=s.length;tr&&(e=r),yN.call(this,t,e,n,s,i))}function yN(t,e,n,s,i){var r=F5(t,e,n,s,i),o=Hf(r.year,0,r.dayOfYear);return this.year(o.getUTCFullYear()),this.month(o.getUTCMonth()),this.date(o.getUTCDate()),this}Ke("Q",0,"Qo","quarter");ze("Q",T5);Wt("Q",function(t,e){e[so]=(xt(t)-1)*3});function vN(t){return t==null?Math.ceil((this.month()+1)/3):this.month((t-1)*3+this.month()%3)}Ke("D",["DD",2],"Do","date");ze("D",an,Qu);ze("DD",an,Zs);ze("Do",function(t,e){return t?e._dayOfMonthOrdinalParse||e._ordinalParse:e._dayOfMonthOrdinalParseLenient});Wt(["D","DD"],mr);Wt("Do",function(t,e){e[mr]=xt(t.match(an)[0])});var ik=ed("Date",!0);Ke("DDD",["DDDD",3],"DDDo","dayOfYear");ze("DDD",u_);ze("DDDD",A5);Wt(["DDD","DDDD"],function(t,e,n){n._dayOfYear=xt(t)});function wN(t){var e=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return t==null?e:this.add(t-e,"d")}Ke("m",["mm",2],0,"minute");ze("m",an,Xv);ze("mm",an,Zs);Wt(["m","mm"],$i);var xN=ed("Minutes",!1);Ke("s",["ss",2],0,"second");ze("s",an,Xv);ze("ss",an,Zs);Wt(["s","ss"],io);var SN=ed("Seconds",!1);Ke("S",0,0,function(){return~~(this.millisecond()/100)});Ke(0,["SS",2],0,function(){return~~(this.millisecond()/10)});Ke(0,["SSS",3],0,"millisecond");Ke(0,["SSSS",4],0,function(){return this.millisecond()*10});Ke(0,["SSSSS",5],0,function(){return this.millisecond()*100});Ke(0,["SSSSSS",6],0,function(){return this.millisecond()*1e3});Ke(0,["SSSSSSS",7],0,function(){return this.millisecond()*1e4});Ke(0,["SSSSSSSS",8],0,function(){return this.millisecond()*1e5});Ke(0,["SSSSSSSSS",9],0,function(){return this.millisecond()*1e6});ze("S",u_,T5);ze("SS",u_,Zs);ze("SSS",u_,A5);var ca,rk;for(ca="SSSS";ca.length<=9;ca+="S")ze(ca,Ju);function EN(t,e){e[hl]=xt(("0."+t)*1e3)}for(ca="S";ca.length<=9;ca+="S")Wt(ca,EN);rk=ed("Milliseconds",!1);Ke("z",0,0,"zoneAbbr");Ke("zz",0,0,"zoneName");function TN(){return this._isUTC?"UTC":""}function AN(){return this._isUTC?"Coordinated Universal Time":""}var Le=kh.prototype;Le.add=bF;Le.calendar=TF;Le.clone=AF;Le.diff=LF;Le.endOf=HF;Le.format=NF;Le.from=$F;Le.fromNow=UF;Le.to=BF;Le.toNow=GF;Le.get=F7;Le.invalidAt=JF;Le.isAfter=MF;Le.isBefore=kF;Le.isBetween=RF;Le.isSame=CF;Le.isSameOrAfter=OF;Le.isSameOrBefore=IF;Le.isValid=XF;Le.lang=J5;Le.locale=Z5;Le.localeData=Q5;Le.max=X9;Le.min=K9;Le.parsingFlags=ZF;Le.set=N7;Le.startOf=zF;Le.subtract=yF;Le.toArray=qF;Le.toObject=YF;Le.toDate=jF;Le.toISOString=DF;Le.inspect=FF;typeof Symbol<"u"&&Symbol.for!=null&&(Le[Symbol.for("nodejs.util.inspect.custom")]=function(){return"Moment<"+this.format()+">"});Le.toJSON=KF;Le.toString=PF;Le.unix=WF;Le.valueOf=VF;Le.creationData=QF;Le.eraName=sN;Le.eraNarrow=iN;Le.eraAbbr=rN;Le.eraYear=oN;Le.year=R5;Le.isLeapYear=D7;Le.weekYear=hN;Le.isoWeekYear=pN;Le.quarter=Le.quarters=vN;Le.month=P5;Le.daysInMonth=j7;Le.week=Le.weeks=e9;Le.isoWeek=Le.isoWeeks=t9;Le.weeksInYear=_N;Le.weeksInWeekYear=bN;Le.isoWeeksInYear=mN;Le.isoWeeksInISOWeekYear=gN;Le.date=ik;Le.day=Le.days=p9;Le.weekday=m9;Le.isoWeekday=g9;Le.dayOfYear=wN;Le.hour=Le.hours=S9;Le.minute=Le.minutes=xN;Le.second=Le.seconds=SN;Le.millisecond=Le.milliseconds=rk;Le.utcOffset=rF;Le.utc=aF;Le.local=lF;Le.parseZone=cF;Le.hasAlignedHourOffset=uF;Le.isDST=dF;Le.isLocal=hF;Le.isUtcOffset=pF;Le.isUtc=q5;Le.isUTC=q5;Le.zoneAbbr=TN;Le.zoneName=AN;Le.dates=yi("dates accessor is deprecated. Use date instead.",ik);Le.months=yi("months accessor is deprecated. Use month instead",P5);Le.years=yi("years accessor is deprecated. Use year instead",R5);Le.zone=yi("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",oF);Le.isDSTShifted=yi("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",fF);function MN(t){return on(t*1e3)}function kN(){return on.apply(null,arguments).parseZone()}function ok(t){return t}var Dt=Wv.prototype;Dt.calendar=h7;Dt.longDateFormat=_7;Dt.invalidDate=y7;Dt.ordinal=x7;Dt.preparse=ok;Dt.postformat=ok;Dt.relativeTime=E7;Dt.pastFuture=T7;Dt.set=d7;Dt.eras=eN;Dt.erasParse=tN;Dt.erasConvertYear=nN;Dt.erasAbbrRegex=lN;Dt.erasNameRegex=aN;Dt.erasNarrowRegex=cN;Dt.months=z7;Dt.monthsShort=H7;Dt.monthsParse=W7;Dt.monthsRegex=Y7;Dt.monthsShortRegex=q7;Dt.week=X7;Dt.firstDayOfYear=Q7;Dt.firstDayOfWeek=J7;Dt.weekdays=c9;Dt.weekdaysMin=d9;Dt.weekdaysShort=u9;Dt.weekdaysParse=h9;Dt.weekdaysRegex=_9;Dt.weekdaysShortRegex=b9;Dt.weekdaysMinRegex=y9;Dt.isPM=w9;Dt.meridiem=E9;function ag(t,e,n,s){var i=Eo(),r=Rr().set(s,e);return i[n](r,t)}function ak(t,e,n){if(mo(t)&&(e=t,t=void 0),t=t||"",e!=null)return ag(t,e,n,"month");var s,i=[];for(s=0;s<12;s++)i[s]=ag(t,s,n,"month");return i}function cw(t,e,n,s){typeof t=="boolean"?(mo(e)&&(n=e,e=void 0),e=e||""):(e=t,n=e,t=!1,mo(e)&&(n=e,e=void 0),e=e||"");var i=Eo(),r=t?i._week.dow:0,o,a=[];if(n!=null)return ag(e,(n+r)%7,s,"day");for(o=0;o<7;o++)a[o]=ag(e,(o+r)%7,s,"day");return a}function RN(t,e){return ak(t,e,"months")}function CN(t,e){return ak(t,e,"monthsShort")}function ON(t,e,n){return cw(t,e,n,"weekdays")}function IN(t,e,n){return cw(t,e,n,"weekdaysShort")}function LN(t,e,n){return cw(t,e,n,"weekdaysMin")}va("en",{eras:[{since:"0001-01-01",until:1/0,offset:1,name:"Anno Domini",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"Before Christ",narrow:"BC",abbr:"BC"}],dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(t){var e=t%10,n=xt(t%100/10)===1?"th":e===1?"st":e===2?"nd":e===3?"rd":"th";return t+n}});De.lang=yi("moment.lang is deprecated. Use moment.locale instead.",va);De.langData=yi("moment.langData is deprecated. Use moment.localeData instead.",Eo);var Pr=Math.abs;function PN(){var t=this._data;return this._milliseconds=Pr(this._milliseconds),this._days=Pr(this._days),this._months=Pr(this._months),t.milliseconds=Pr(t.milliseconds),t.seconds=Pr(t.seconds),t.minutes=Pr(t.minutes),t.hours=Pr(t.hours),t.months=Pr(t.months),t.years=Pr(t.years),this}function lk(t,e,n,s){var i=Ki(e,n);return t._milliseconds+=s*i._milliseconds,t._days+=s*i._days,t._months+=s*i._months,t._bubble()}function DN(t,e){return lk(this,t,e,1)}function FN(t,e){return lk(this,t,e,-1)}function cS(t){return t<0?Math.floor(t):Math.ceil(t)}function NN(){var t=this._milliseconds,e=this._days,n=this._months,s=this._data,i,r,o,a,l;return t>=0&&e>=0&&n>=0||t<=0&&e<=0&&n<=0||(t+=cS(Bb(n)+e)*864e5,e=0,n=0),s.milliseconds=t%1e3,i=li(t/1e3),s.seconds=i%60,r=li(i/60),s.minutes=r%60,o=li(r/60),s.hours=o%24,e+=li(o/24),l=li(ck(e)),n+=l,e-=cS(Bb(l)),a=li(n/12),n%=12,s.days=e,s.months=n,s.years=a,this}function ck(t){return t*4800/146097}function Bb(t){return t*146097/4800}function $N(t){if(!this.isValid())return NaN;var e,n,s=this._milliseconds;if(t=vi(t),t==="month"||t==="quarter"||t==="year")switch(e=this._days+s/864e5,n=this._months+ck(e),t){case"month":return n;case"quarter":return n/3;case"year":return n/12}else switch(e=this._days+Math.round(Bb(this._months)),t){case"week":return e/7+s/6048e5;case"day":return e+s/864e5;case"hour":return e*24+s/36e5;case"minute":return e*1440+s/6e4;case"second":return e*86400+s/1e3;case"millisecond":return Math.floor(e*864e5)+s;default:throw new Error("Unknown unit "+t)}}function To(t){return function(){return this.as(t)}}var uk=To("ms"),UN=To("s"),BN=To("m"),GN=To("h"),zN=To("d"),HN=To("w"),VN=To("M"),WN=To("Q"),jN=To("y"),qN=uk;function YN(){return Ki(this)}function KN(t){return t=vi(t),this.isValid()?this[t+"s"]():NaN}function Zl(t){return function(){return this.isValid()?this._data[t]:NaN}}var XN=Zl("milliseconds"),ZN=Zl("seconds"),JN=Zl("minutes"),QN=Zl("hours"),e$=Zl("days"),t$=Zl("months"),n$=Zl("years");function s$(){return li(this.days()/7)}var qr=Math.round,Gc={ss:44,s:45,m:45,h:22,d:26,w:null,M:11};function i$(t,e,n,s,i){return i.relativeTime(e||1,!!n,t,s)}function r$(t,e,n,s){var i=Ki(t).abs(),r=qr(i.as("s")),o=qr(i.as("m")),a=qr(i.as("h")),l=qr(i.as("d")),c=qr(i.as("M")),u=qr(i.as("w")),d=qr(i.as("y")),f=r<=n.ss&&["s",r]||r0,f[4]=s,i$.apply(null,f)}function o$(t){return t===void 0?qr:typeof t=="function"?(qr=t,!0):!1}function a$(t,e){return Gc[t]===void 0?!1:e===void 0?Gc[t]:(Gc[t]=e,t==="s"&&(Gc.ss=e-1),!0)}function l$(t,e){if(!this.isValid())return this.localeData().invalidDate();var n=!1,s=Gc,i,r;return typeof t=="object"&&(e=t,t=!1),typeof t=="boolean"&&(n=t),typeof e=="object"&&(s=Object.assign({},Gc,e),e.s!=null&&e.ss==null&&(s.ss=e.s-1)),i=this.localeData(),r=r$(this,!n,s,i),n&&(r=i.pastFuture(+this,r)),i.postformat(r)}var L0=Math.abs;function lc(t){return(t>0)-(t<0)||+t}function b_(){if(!this.isValid())return this.localeData().invalidDate();var t=L0(this._milliseconds)/1e3,e=L0(this._days),n=L0(this._months),s,i,r,o,a=this.asSeconds(),l,c,u,d;return a?(s=li(t/60),i=li(s/60),t%=60,s%=60,r=li(n/12),n%=12,o=t?t.toFixed(3).replace(/\.?0+$/,""):"",l=a<0?"-":"",c=lc(this._months)!==lc(a)?"-":"",u=lc(this._days)!==lc(a)?"-":"",d=lc(this._milliseconds)!==lc(a)?"-":"",l+"P"+(r?c+r+"Y":"")+(n?c+n+"M":"")+(e?u+e+"D":"")+(i||s||t?"T":"")+(i?d+i+"H":"")+(s?d+s+"M":"")+(t?d+o+"S":"")):"P0D"}var Tt=g_.prototype;Tt.isValid=tF;Tt.abs=PN;Tt.add=DN;Tt.subtract=FN;Tt.as=$N;Tt.asMilliseconds=uk;Tt.asSeconds=UN;Tt.asMinutes=BN;Tt.asHours=GN;Tt.asDays=zN;Tt.asWeeks=HN;Tt.asMonths=VN;Tt.asQuarters=WN;Tt.asYears=jN;Tt.valueOf=qN;Tt._bubble=NN;Tt.clone=YN;Tt.get=KN;Tt.milliseconds=XN;Tt.seconds=ZN;Tt.minutes=JN;Tt.hours=QN;Tt.days=e$;Tt.weeks=s$;Tt.months=t$;Tt.years=n$;Tt.humanize=l$;Tt.toISOString=b_;Tt.toString=b_;Tt.toJSON=b_;Tt.locale=Z5;Tt.localeData=Q5;Tt.toIsoString=yi("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",b_);Tt.lang=J5;Ke("X",0,0,"unix");Ke("x",0,0,"valueOf");ze("x",f_);ze("X",R7);Wt("X",function(t,e,n){n._d=new Date(parseFloat(t)*1e3)});Wt("x",function(t,e,n){n._d=new Date(xt(t))});//! moment.js +De.version="2.30.1";c7(on);De.fn=Le;De.min=Z9;De.max=J9;De.now=Q9;De.utc=Rr;De.unix=MN;De.months=RN;De.isDate=Mh;De.locale=va;De.invalid=l_;De.duration=Ki;De.isMoment=Yi;De.weekdays=ON;De.parseZone=kN;De.localeData=Eo;De.isDuration=Mm;De.monthsShort=CN;De.weekdaysMin=LN;De.defineLocale=tw;De.updateLocale=k9;De.locales=R9;De.weekdaysShort=IN;De.normalizeUnits=vi;De.relativeTimeRounding=o$;De.relativeTimeThreshold=a$;De.calendarFormat=EF;De.prototype=Le;De.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"};function dk(t){return De(t).fromNow()}function c$(t,e=!1,n=1){const s=e?1e3:1024;if(Math.abs(t)=s&&rfk=t,hk=Symbol();function Gb(t){return t&&typeof t=="object"&&Object.prototype.toString.call(t)==="[object Object]"&&typeof t.toJSON!="function"}var bf;(function(t){t.direct="direct",t.patchObject="patch object",t.patchFunction="patch function"})(bf||(bf={}));function d$(){const t=n4(!0),e=t.run(()=>Yg({}));let n=[],s=[];const i=qg({install(r){y_(i),i._a=r,r.provide(hk,i),r.config.globalProperties.$pinia=i,s.forEach(o=>n.push(o)),s=[]},use(r){return!this._a&&!u$?s.push(r):n.push(r),this},_p:n,_a:null,_e:t,_s:new Map,state:e});return i}const pk=()=>{};function uS(t,e,n,s=pk){t.push(e);const i=()=>{const r=t.indexOf(e);r>-1&&(t.splice(r,1),s())};return!n&&s4()&&BI(i),i}function cc(t,...e){t.slice().forEach(n=>{n(...e)})}const f$=t=>t();function zb(t,e){t instanceof Map&&e instanceof Map&&e.forEach((n,s)=>t.set(s,n)),t instanceof Set&&e instanceof Set&&e.forEach(t.add,t);for(const n in e){if(!e.hasOwnProperty(n))continue;const s=e[n],i=t[n];Gb(i)&&Gb(s)&&t.hasOwnProperty(n)&&!$n(s)&&!_a(s)?t[n]=zb(i,s):t[n]=s}return t}const h$=Symbol();function p$(t){return!Gb(t)||!t.hasOwnProperty(h$)}const{assign:qo}=Object;function m$(t){return!!($n(t)&&t.effect)}function g$(t,e,n,s){const{state:i,actions:r,getters:o}=e,a=n.state.value[t];let l;function c(){a||(n.state.value[t]=i?i():{});const u=uL(n.state.value[t]);return qo(u,r,Object.keys(o||{}).reduce((d,f)=>(d[f]=qg(En(()=>{y_(n);const h=n._s.get(t);return o[f].call(h,h)})),d),{}))}return l=mk(t,c,e,n,s,!0),l}function mk(t,e,n={},s,i,r){let o;const a=qo({actions:{}},n),l={deep:!0};let c,u,d=[],f=[],h;const _=s.state.value[t];!r&&!_&&(s.state.value[t]={}),Yg({});let p;function m(E){let A;c=u=!1,typeof E=="function"?(E(s.state.value[t]),A={type:bf.patchFunction,storeId:t,events:h}):(zb(s.state.value[t],E),A={type:bf.patchObject,payload:E,storeId:t,events:h});const O=p=Symbol();Xg().then(()=>{p===O&&(c=!0)}),u=!0,cc(d,A,s.state.value[t])}const b=r?function(){const{state:A}=n,O=A?A():{};this.$patch(I=>{qo(I,O)})}:pk;function y(){o.stop(),d=[],f=[],s._s.delete(t)}function v(E,A){return function(){y_(s);const O=Array.from(arguments),I=[],B=[];function U(F){I.push(F)}function D(F){B.push(F)}cc(f,{args:O,name:E,store:S,after:U,onError:D});let $;try{$=A.apply(this&&this.$id===t?this:S,O)}catch(F){throw cc(B,F),F}return $ instanceof Promise?$.then(F=>(cc(I,F),F)).catch(F=>(cc(B,F),Promise.reject(F))):(cc(I,$),$)}}const x={_p:s,$id:t,$onAction:uS.bind(null,f),$patch:m,$reset:b,$subscribe(E,A={}){const O=uS(d,E,A.detached,()=>I()),I=o.run(()=>ya(()=>s.state.value[t],B=>{(A.flush==="sync"?u:c)&&E({storeId:t,type:bf.direct,events:h},B)},qo({},l,A)));return O},$dispose:y},S=Ku(x);s._s.set(t,S);const T=(s._a&&s._a.runWithContext||f$)(()=>s._e.run(()=>(o=n4()).run(e)));for(const E in T){const A=T[E];if($n(A)&&!m$(A)||_a(A))r||(_&&p$(A)&&($n(A)?A.value=_[E]:zb(A,_[E])),s.state.value[t][E]=A);else if(typeof A=="function"){const O=v(E,A);T[E]=O,a.actions[E]=A}}return qo(S,T),qo(ut(S),T),Object.defineProperty(S,"$state",{get:()=>s.state.value[t],set:E=>{m(A=>{qo(A,E)})}}),s._p.forEach(E=>{qo(S,o.run(()=>E({store:S,app:s._a,pinia:s,options:a})))}),_&&r&&n.hydrate&&n.hydrate(S.$state,_),c=!0,u=!0,S}function ds(t,e,n){let s,i;const r=typeof e=="function";typeof t=="string"?(s=t,i=r?n:e):(i=t,s=t.id);function o(a,l){const c=XL();return a=a||(c?yr(hk,null):null),a&&y_(a),a=fk,a._s.has(s)||(r?mk(s,e,i,a):g$(s,i,a)),a._s.get(s)}return o.$id=s,o}function gk(t,e){return Array.isArray(e)?e.reduce((n,s)=>(n[s]=function(){return t(this.$pinia)[s]},n),{}):Object.keys(e).reduce((n,s)=>(n[s]=function(){const i=t(this.$pinia),r=e[s];return typeof r=="function"?r.call(this,i):i[r]},n),{})}const dS="#".charCodeAt(0),_$=4;var qn=(t=>(t[t.Invalid=0]="Invalid",t[t.Get=1]="Get",t[t.Set=2]="Set",t[t.Log=3]="Log",t[t.CalImu=4]="CalImu",t[t.Blackbox=5]="Blackbox",t[t.Motor=6]="Motor",t[t.CalSticks=7]="CalSticks",t[t.Serial=8]="Serial",t[t.OSD=9]="OSD",t[t.Max=10]="Max",t))(qn||{}),vn=(t=>(t[t.Invalid=0]="Invalid",t[t.Info=1]="Info",t[t.Profile=2]="Profile",t[t.DefaultProfile=3]="DefaultProfile",t[t.State=4]="State",t[t.PidRatePresets=5]="PidRatePresets",t[t.VtxSettings=6]="VtxSettings",t[t.OSDFont=7]="OSDFont",t[t.BLHeliSettings=8]="BLHeliSettings",t[t.BindInfo=9]="BindInfo",t[t.PerfCounters=10]="PerfCounters",t[t.BlackboxPresets=11]="BlackboxPresets",t[t.Target=12]="Target",t))(vn||{}),tf=(t=>(t[t.Reset=0]="Reset",t[t.List=1]="List",t[t.Get=2]="Get",t))(tf||{}),nf=(t=>(t[t.TestStatus=0]="TestStatus",t[t.TestEnable=1]="TestEnable",t[t.TestDisable=2]="TestDisable",t[t.TestSetValue=3]="TestSetValue",t[t.Esc4WayIf=4]="Esc4WayIf",t))(nf||{}),Hb=(t=>(t[t.ReadChar=0]="ReadChar",t[t.WriteChar=1]="WriteChar",t))(Hb||{}),Rm=(t=>(t[t.None=0]="None",t[t.Error=1]="Error",t[t.Streaming=2]="Streaming",t[t.Exit=3]="Exit",t))(Rm||{}),P0=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Jl(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function Ql(t){if(t.__esModule)return t;var e=t.default;if(typeof e=="function"){var n=function s(){return this instanceof s?Reflect.construct(e,arguments,this.constructor):e.apply(this,arguments)};n.prototype=e.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(t).forEach(function(s){var i=Object.getOwnPropertyDescriptor(t,s);Object.defineProperty(n,s,i.get?i:{enumerable:!0,get:function(){return t[s]}})}),n}var Vb={exports:{}};const b$="2.0.0",_k=256,y$=Number.MAX_SAFE_INTEGER||9007199254740991,v$=16,w$=_k-6,x$=["major","premajor","minor","preminor","patch","prepatch","prerelease"];var v_={MAX_LENGTH:_k,MAX_SAFE_COMPONENT_LENGTH:v$,MAX_SAFE_BUILD_LENGTH:w$,MAX_SAFE_INTEGER:y$,RELEASE_TYPES:x$,SEMVER_SPEC_VERSION:b$,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2};const S$=typeof process=="object"&&{}&&{}.NODE_DEBUG&&/\bsemver\b/i.test({}.NODE_DEBUG)?(...t)=>console.error("SEMVER",...t):()=>{};var w_=S$;(function(t,e){const{MAX_SAFE_COMPONENT_LENGTH:n,MAX_SAFE_BUILD_LENGTH:s,MAX_LENGTH:i}=v_,r=w_;e=t.exports={};const o=e.re=[],a=e.safeRe=[],l=e.src=[],c=e.t={};let u=0;const d="[a-zA-Z0-9-]",f=[["\\s",1],["\\d",i],[d,s]],h=p=>{for(const[m,b]of f)p=p.split(`${m}*`).join(`${m}{0,${b}}`).split(`${m}+`).join(`${m}{1,${b}}`);return p},_=(p,m,b)=>{const y=h(m),v=u++;r(p,v,m),c[p]=v,l[v]=m,o[v]=new RegExp(m,b?"g":void 0),a[v]=new RegExp(y,b?"g":void 0)};_("NUMERICIDENTIFIER","0|[1-9]\\d*"),_("NUMERICIDENTIFIERLOOSE","\\d+"),_("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${d}*`),_("MAINVERSION",`(${l[c.NUMERICIDENTIFIER]})\\.(${l[c.NUMERICIDENTIFIER]})\\.(${l[c.NUMERICIDENTIFIER]})`),_("MAINVERSIONLOOSE",`(${l[c.NUMERICIDENTIFIERLOOSE]})\\.(${l[c.NUMERICIDENTIFIERLOOSE]})\\.(${l[c.NUMERICIDENTIFIERLOOSE]})`),_("PRERELEASEIDENTIFIER",`(?:${l[c.NUMERICIDENTIFIER]}|${l[c.NONNUMERICIDENTIFIER]})`),_("PRERELEASEIDENTIFIERLOOSE",`(?:${l[c.NUMERICIDENTIFIERLOOSE]}|${l[c.NONNUMERICIDENTIFIER]})`),_("PRERELEASE",`(?:-(${l[c.PRERELEASEIDENTIFIER]}(?:\\.${l[c.PRERELEASEIDENTIFIER]})*))`),_("PRERELEASELOOSE",`(?:-?(${l[c.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${l[c.PRERELEASEIDENTIFIERLOOSE]})*))`),_("BUILDIDENTIFIER",`${d}+`),_("BUILD",`(?:\\+(${l[c.BUILDIDENTIFIER]}(?:\\.${l[c.BUILDIDENTIFIER]})*))`),_("FULLPLAIN",`v?${l[c.MAINVERSION]}${l[c.PRERELEASE]}?${l[c.BUILD]}?`),_("FULL",`^${l[c.FULLPLAIN]}$`),_("LOOSEPLAIN",`[v=\\s]*${l[c.MAINVERSIONLOOSE]}${l[c.PRERELEASELOOSE]}?${l[c.BUILD]}?`),_("LOOSE",`^${l[c.LOOSEPLAIN]}$`),_("GTLT","((?:<|>)?=?)"),_("XRANGEIDENTIFIERLOOSE",`${l[c.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),_("XRANGEIDENTIFIER",`${l[c.NUMERICIDENTIFIER]}|x|X|\\*`),_("XRANGEPLAIN",`[v=\\s]*(${l[c.XRANGEIDENTIFIER]})(?:\\.(${l[c.XRANGEIDENTIFIER]})(?:\\.(${l[c.XRANGEIDENTIFIER]})(?:${l[c.PRERELEASE]})?${l[c.BUILD]}?)?)?`),_("XRANGEPLAINLOOSE",`[v=\\s]*(${l[c.XRANGEIDENTIFIERLOOSE]})(?:\\.(${l[c.XRANGEIDENTIFIERLOOSE]})(?:\\.(${l[c.XRANGEIDENTIFIERLOOSE]})(?:${l[c.PRERELEASELOOSE]})?${l[c.BUILD]}?)?)?`),_("XRANGE",`^${l[c.GTLT]}\\s*${l[c.XRANGEPLAIN]}$`),_("XRANGELOOSE",`^${l[c.GTLT]}\\s*${l[c.XRANGEPLAINLOOSE]}$`),_("COERCE",`(^|[^\\d])(\\d{1,${n}})(?:\\.(\\d{1,${n}}))?(?:\\.(\\d{1,${n}}))?(?:$|[^\\d])`),_("COERCERTL",l[c.COERCE],!0),_("LONETILDE","(?:~>?)"),_("TILDETRIM",`(\\s*)${l[c.LONETILDE]}\\s+`,!0),e.tildeTrimReplace="$1~",_("TILDE",`^${l[c.LONETILDE]}${l[c.XRANGEPLAIN]}$`),_("TILDELOOSE",`^${l[c.LONETILDE]}${l[c.XRANGEPLAINLOOSE]}$`),_("LONECARET","(?:\\^)"),_("CARETTRIM",`(\\s*)${l[c.LONECARET]}\\s+`,!0),e.caretTrimReplace="$1^",_("CARET",`^${l[c.LONECARET]}${l[c.XRANGEPLAIN]}$`),_("CARETLOOSE",`^${l[c.LONECARET]}${l[c.XRANGEPLAINLOOSE]}$`),_("COMPARATORLOOSE",`^${l[c.GTLT]}\\s*(${l[c.LOOSEPLAIN]})$|^$`),_("COMPARATOR",`^${l[c.GTLT]}\\s*(${l[c.FULLPLAIN]})$|^$`),_("COMPARATORTRIM",`(\\s*)${l[c.GTLT]}\\s*(${l[c.LOOSEPLAIN]}|${l[c.XRANGEPLAIN]})`,!0),e.comparatorTrimReplace="$1$2$3",_("HYPHENRANGE",`^\\s*(${l[c.XRANGEPLAIN]})\\s+-\\s+(${l[c.XRANGEPLAIN]})\\s*$`),_("HYPHENRANGELOOSE",`^\\s*(${l[c.XRANGEPLAINLOOSE]})\\s+-\\s+(${l[c.XRANGEPLAINLOOSE]})\\s*$`),_("STAR","(<|>)?=?\\s*\\*"),_("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$"),_("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")})(Vb,Vb.exports);var Oh=Vb.exports;const E$=Object.freeze({loose:!0}),T$=Object.freeze({}),A$=t=>t?typeof t!="object"?E$:t:T$;var uw=A$;const fS=/^[0-9]+$/,bk=(t,e)=>{const n=fS.test(t),s=fS.test(e);return n&&s&&(t=+t,e=+e),t===e?0:n&&!s?-1:s&&!n?1:tbk(e,t);var yk={compareIdentifiers:bk,rcompareIdentifiers:M$};const lp=w_,{MAX_LENGTH:hS,MAX_SAFE_INTEGER:cp}=v_,{safeRe:pS,t:mS}=Oh,k$=uw,{compareIdentifiers:uc}=yk;let R$=class or{constructor(e,n){if(n=k$(n),e instanceof or){if(e.loose===!!n.loose&&e.includePrerelease===!!n.includePrerelease)return e;e=e.version}else if(typeof e!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof e}".`);if(e.length>hS)throw new TypeError(`version is longer than ${hS} characters`);lp("SemVer",e,n),this.options=n,this.loose=!!n.loose,this.includePrerelease=!!n.includePrerelease;const s=e.trim().match(n.loose?pS[mS.LOOSE]:pS[mS.FULL]);if(!s)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+s[1],this.minor=+s[2],this.patch=+s[3],this.major>cp||this.major<0)throw new TypeError("Invalid major version");if(this.minor>cp||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>cp||this.patch<0)throw new TypeError("Invalid patch version");s[4]?this.prerelease=s[4].split(".").map(i=>{if(/^[0-9]+$/.test(i)){const r=+i;if(r>=0&&r=0;)typeof this.prerelease[r]=="number"&&(this.prerelease[r]++,r=-2);if(r===-1){if(n===this.prerelease.join(".")&&s===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(i)}}if(n){let r=[n,i];s===!1&&(r=[n]),uc(this.prerelease[0],n)===0?isNaN(this.prerelease[1])&&(this.prerelease=r):this.prerelease=r}break}default:throw new Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};var Es=R$;const gS=Es,C$=(t,e,n=!1)=>{if(t instanceof gS)return t;try{return new gS(t,e)}catch(s){if(!n)return null;throw s}};var td=C$;const O$=td,I$=(t,e)=>{const n=O$(t,e);return n?n.version:null};var L$=I$;const P$=td,D$=(t,e)=>{const n=P$(t.trim().replace(/^[=v]+/,""),e);return n?n.version:null};var F$=D$;const _S=Es,N$=(t,e,n,s,i)=>{typeof n=="string"&&(i=s,s=n,n=void 0);try{return new _S(t instanceof _S?t.version:t,n).inc(e,s,i).version}catch{return null}};var $$=N$;const bS=td,U$=(t,e)=>{const n=bS(t,null,!0),s=bS(e,null,!0),i=n.compare(s);if(i===0)return null;const r=i>0,o=r?n:s,a=r?s:n,l=!!o.prerelease.length;if(!!a.prerelease.length&&!l)return!a.patch&&!a.minor?"major":o.patch?"patch":o.minor?"minor":"major";const u=l?"pre":"";return n.major!==s.major?u+"major":n.minor!==s.minor?u+"minor":n.patch!==s.patch?u+"patch":"prerelease"};var B$=U$;const G$=Es,z$=(t,e)=>new G$(t,e).major;var H$=z$;const V$=Es,W$=(t,e)=>new V$(t,e).minor;var j$=W$;const q$=Es,Y$=(t,e)=>new q$(t,e).patch;var K$=Y$;const X$=td,Z$=(t,e)=>{const n=X$(t,e);return n&&n.prerelease.length?n.prerelease:null};var J$=Z$;const yS=Es,Q$=(t,e,n)=>new yS(t,n).compare(new yS(e,n));var Xi=Q$;const eU=Xi,tU=(t,e,n)=>eU(e,t,n);var nU=tU;const sU=Xi,iU=(t,e)=>sU(t,e,!0);var rU=iU;const vS=Es,oU=(t,e,n)=>{const s=new vS(t,n),i=new vS(e,n);return s.compare(i)||s.compareBuild(i)};var dw=oU;const aU=dw,lU=(t,e)=>t.sort((n,s)=>aU(n,s,e));var cU=lU;const uU=dw,dU=(t,e)=>t.sort((n,s)=>uU(s,n,e));var fU=dU;const hU=Xi,pU=(t,e,n)=>hU(t,e,n)>0;var x_=pU;const mU=Xi,gU=(t,e,n)=>mU(t,e,n)<0;var fw=gU;const _U=Xi,bU=(t,e,n)=>_U(t,e,n)===0;var vk=bU;const yU=Xi,vU=(t,e,n)=>yU(t,e,n)!==0;var wk=vU;const wU=Xi,xU=(t,e,n)=>wU(t,e,n)>=0;var hw=xU;const SU=Xi,EU=(t,e,n)=>SU(t,e,n)<=0;var pw=EU;const TU=vk,AU=wk,MU=x_,kU=hw,RU=fw,CU=pw,OU=(t,e,n,s)=>{switch(e){case"===":return typeof t=="object"&&(t=t.version),typeof n=="object"&&(n=n.version),t===n;case"!==":return typeof t=="object"&&(t=t.version),typeof n=="object"&&(n=n.version),t!==n;case"":case"=":case"==":return TU(t,n,s);case"!=":return AU(t,n,s);case">":return MU(t,n,s);case">=":return kU(t,n,s);case"<":return RU(t,n,s);case"<=":return CU(t,n,s);default:throw new TypeError(`Invalid operator: ${e}`)}};var xk=OU;const IU=Es,LU=td,{safeRe:up,t:dp}=Oh,PU=(t,e)=>{if(t instanceof IU)return t;if(typeof t=="number"&&(t=String(t)),typeof t!="string")return null;e=e||{};let n=null;if(!e.rtl)n=t.match(up[dp.COERCE]);else{let s;for(;(s=up[dp.COERCERTL].exec(t))&&(!n||n.index+n[0].length!==t.length);)(!n||s.index+s[0].length!==n.index+n[0].length)&&(n=s),up[dp.COERCERTL].lastIndex=s.index+s[1].length+s[2].length;up[dp.COERCERTL].lastIndex=-1}return n===null?null:LU(`${n[2]}.${n[3]||"0"}.${n[4]||"0"}`,e)};var DU=PU,D0,wS;function FU(){return wS||(wS=1,D0=function(t){t.prototype[Symbol.iterator]=function*(){for(let e=this.head;e;e=e.next)yield e.value}}),D0}var NU=Pt;Pt.Node=Dl;Pt.create=Pt;function Pt(t){var e=this;if(e instanceof Pt||(e=new Pt),e.tail=null,e.head=null,e.length=0,t&&typeof t.forEach=="function")t.forEach(function(i){e.push(i)});else if(arguments.length>0)for(var n=0,s=arguments.length;n1)n=e;else if(this.head)s=this.head.next,n=this.head.value;else throw new TypeError("Reduce of empty list with no initial value");for(var i=0;s!==null;i++)n=t(n,s.value,i),s=s.next;return n};Pt.prototype.reduceReverse=function(t,e){var n,s=this.tail;if(arguments.length>1)n=e;else if(this.tail)s=this.tail.prev,n=this.tail.value;else throw new TypeError("Reduce of empty list with no initial value");for(var i=this.length-1;s!==null;i--)n=t(n,s.value,i),s=s.prev;return n};Pt.prototype.toArray=function(){for(var t=new Array(this.length),e=0,n=this.head;n!==null;e++)t[e]=n.value,n=n.next;return t};Pt.prototype.toArrayReverse=function(){for(var t=new Array(this.length),e=0,n=this.tail;n!==null;e++)t[e]=n.value,n=n.prev;return t};Pt.prototype.slice=function(t,e){e=e||this.length,e<0&&(e+=this.length),t=t||0,t<0&&(t+=this.length);var n=new Pt;if(ethis.length&&(e=this.length);for(var s=0,i=this.head;i!==null&&sthis.length&&(e=this.length);for(var s=this.length,i=this.tail;i!==null&&s>e;s--)i=i.prev;for(;i!==null&&s>t;s--,i=i.prev)n.push(i.value);return n};Pt.prototype.splice=function(t,e,...n){t>this.length&&(t=this.length-1),t<0&&(t=this.length+t);for(var s=0,i=this.head;i!==null&&s1;let zU=class{constructor(e){if(typeof e=="number"&&(e={max:e}),e||(e={}),e.max&&(typeof e.max!="number"||e.max<0))throw new TypeError("max must be a non-negative number");this[rl]=e.max||1/0;const n=e.length||F0;if(this[dc]=typeof n!="function"?F0:n,this[yf]=e.stale||!1,e.maxAge&&typeof e.maxAge!="number")throw new TypeError("maxAge must be a number");this[pl]=e.maxAge||0,this[Yr]=e.dispose,this[xS]=e.noDisposeOnSet||!1,this[Sk]=e.updateAgeOnGet||!1,this.reset()}set max(e){if(typeof e!="number"||e<0)throw new TypeError("max must be a non-negative number");this[rl]=e||1/0,Id(this)}get max(){return this[rl]}set allowStale(e){this[yf]=!!e}get allowStale(){return this[yf]}set maxAge(e){if(typeof e!="number")throw new TypeError("maxAge must be a non-negative number");this[pl]=e,Id(this)}get maxAge(){return this[pl]}set lengthCalculator(e){typeof e!="function"&&(e=F0),e!==this[dc]&&(this[dc]=e,this[Xr]=0,this[zn].forEach(n=>{n.length=this[dc](n.value,n.key),this[Xr]+=n.length})),Id(this)}get lengthCalculator(){return this[dc]}get length(){return this[Xr]}get itemCount(){return this[zn].length}rforEach(e,n){n=n||this;for(let s=this[zn].tail;s!==null;){const i=s.prev;SS(this,e,s,n),s=i}}forEach(e,n){n=n||this;for(let s=this[zn].head;s!==null;){const i=s.next;SS(this,e,s,n),s=i}}keys(){return this[zn].toArray().map(e=>e.key)}values(){return this[zn].toArray().map(e=>e.value)}reset(){this[Yr]&&this[zn]&&this[zn].length&&this[zn].forEach(e=>this[Yr](e.key,e.value)),this[Ai]=new Map,this[zn]=new GU,this[Xr]=0}dump(){return this[zn].map(e=>lg(this,e)?!1:{k:e.key,v:e.value,e:e.now+(e.maxAge||0)}).toArray().filter(e=>e)}dumpLru(){return this[zn]}set(e,n,s){if(s=s||this[pl],s&&typeof s!="number")throw new TypeError("maxAge must be a number");const i=s?Date.now():0,r=this[dc](n,e);if(this[Ai].has(e)){if(r>this[rl])return au(this,this[Ai].get(e)),!1;const l=this[Ai].get(e).value;return this[Yr]&&(this[xS]||this[Yr](e,l.value)),l.now=i,l.maxAge=s,l.value=n,this[Xr]+=r-l.length,l.length=r,this.get(e),Id(this),!0}const o=new HU(e,n,r,i,s);return o.length>this[rl]?(this[Yr]&&this[Yr](e,n),!1):(this[Xr]+=o.length,this[zn].unshift(o),this[Ai].set(e,this[zn].head),Id(this),!0)}has(e){if(!this[Ai].has(e))return!1;const n=this[Ai].get(e).value;return!lg(this,n)}get(e){return N0(this,e,!0)}peek(e){return N0(this,e,!1)}pop(){const e=this[zn].tail;return e?(au(this,e),e.value):null}del(e){au(this,this[Ai].get(e))}load(e){this.reset();const n=Date.now();for(let s=e.length-1;s>=0;s--){const i=e[s],r=i.e||0;if(r===0)this.set(i.k,i.v);else{const o=r-n;o>0&&this.set(i.k,i.v,o)}}}prune(){this[Ai].forEach((e,n)=>N0(this,n,!1))}};const N0=(t,e,n)=>{const s=t[Ai].get(e);if(s){const i=s.value;if(lg(t,i)){if(au(t,s),!t[yf])return}else n&&(t[Sk]&&(s.value.now=Date.now()),t[zn].unshiftNode(s));return i.value}},lg=(t,e)=>{if(!e||!e.maxAge&&!t[pl])return!1;const n=Date.now()-e.now;return e.maxAge?n>e.maxAge:t[pl]&&n>t[pl]},Id=t=>{if(t[Xr]>t[rl])for(let e=t[zn].tail;t[Xr]>t[rl]&&e!==null;){const n=e.prev;au(t,e),e=n}},au=(t,e)=>{if(e){const n=e.value;t[Yr]&&t[Yr](n.key,n.value),t[Xr]-=n.length,t[Ai].delete(n.key),t[zn].removeNode(e)}};let HU=class{constructor(e,n,s,i,r){this.key=e,this.value=n,this.length=s,this.now=i,this.maxAge=r||0}};const SS=(t,e,n,s)=>{let i=n.value;lg(t,i)&&(au(t,n),t[yf]||(i=void 0)),i&&e.call(s,i.value,i.key,t)};var VU=zU,$0,ES;function Zi(){if(ES)return $0;ES=1;class t{constructor(D,$){if($=s($),D instanceof t)return D.loose===!!$.loose&&D.includePrerelease===!!$.includePrerelease?D:new t(D.raw,$);if(D instanceof i)return this.raw=D.value,this.set=[[D]],this.format(),this;if(this.options=$,this.loose=!!$.loose,this.includePrerelease=!!$.includePrerelease,this.raw=D.trim().split(/\s+/).join(" "),this.set=this.raw.split("||").map(F=>this.parseRange(F.trim())).filter(F=>F.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){const F=this.set[0];if(this.set=this.set.filter(H=>!_(H[0])),this.set.length===0)this.set=[F];else if(this.set.length>1){for(const H of this.set)if(H.length===1&&p(H[0])){this.set=[H];break}}}this.format()}format(){return this.range=this.set.map(D=>D.join(" ").trim()).join("||").trim(),this.range}toString(){return this.range}parseRange(D){const F=((this.options.includePrerelease&&f)|(this.options.loose&&h))+":"+D,H=n.get(F);if(H)return H;const j=this.options.loose,Z=j?a[l.HYPHENRANGELOOSE]:a[l.HYPHENRANGE];D=D.replace(Z,I(this.options.includePrerelease)),r("hyphen replace",D),D=D.replace(a[l.COMPARATORTRIM],c),r("comparator trim",D),D=D.replace(a[l.TILDETRIM],u),r("tilde trim",D),D=D.replace(a[l.CARETTRIM],d),r("caret trim",D);let K=D.split(" ").map(Me=>b(Me,this.options)).join(" ").split(/\s+/).map(Me=>O(Me,this.options));j&&(K=K.filter(Me=>(r("loose invalid filter",Me,this.options),!!Me.match(a[l.COMPARATORLOOSE])))),r("range list",K);const oe=new Map,Q=K.map(Me=>new i(Me,this.options));for(const Me of Q){if(_(Me))return[Me];oe.set(Me.value,Me)}oe.size>1&&oe.has("")&&oe.delete("");const me=[...oe.values()];return n.set(F,me),me}intersects(D,$){if(!(D instanceof t))throw new TypeError("a Range is required");return this.set.some(F=>m(F,$)&&D.set.some(H=>m(H,$)&&F.every(j=>H.every(Z=>j.intersects(Z,$)))))}test(D){if(!D)return!1;if(typeof D=="string")try{D=new o(D,this.options)}catch{return!1}for(let $=0;$U.value==="<0.0.0-0",p=U=>U.value==="",m=(U,D)=>{let $=!0;const F=U.slice();let H=F.pop();for(;$&&F.length;)$=F.every(j=>H.intersects(j,D)),H=F.pop();return $},b=(U,D)=>(r("comp",U,D),U=S(U,D),r("caret",U),U=v(U,D),r("tildes",U),U=T(U,D),r("xrange",U),U=A(U,D),r("stars",U),U),y=U=>!U||U.toLowerCase()==="x"||U==="*",v=(U,D)=>U.trim().split(/\s+/).map($=>x($,D)).join(" "),x=(U,D)=>{const $=D.loose?a[l.TILDELOOSE]:a[l.TILDE];return U.replace($,(F,H,j,Z,K)=>{r("tilde",U,F,H,j,Z,K);let oe;return y(H)?oe="":y(j)?oe=`>=${H}.0.0 <${+H+1}.0.0-0`:y(Z)?oe=`>=${H}.${j}.0 <${H}.${+j+1}.0-0`:K?(r("replaceTilde pr",K),oe=`>=${H}.${j}.${Z}-${K} <${H}.${+j+1}.0-0`):oe=`>=${H}.${j}.${Z} <${H}.${+j+1}.0-0`,r("tilde return",oe),oe})},S=(U,D)=>U.trim().split(/\s+/).map($=>w($,D)).join(" "),w=(U,D)=>{r("caret",U,D);const $=D.loose?a[l.CARETLOOSE]:a[l.CARET],F=D.includePrerelease?"-0":"";return U.replace($,(H,j,Z,K,oe)=>{r("caret",U,H,j,Z,K,oe);let Q;return y(j)?Q="":y(Z)?Q=`>=${j}.0.0${F} <${+j+1}.0.0-0`:y(K)?j==="0"?Q=`>=${j}.${Z}.0${F} <${j}.${+Z+1}.0-0`:Q=`>=${j}.${Z}.0${F} <${+j+1}.0.0-0`:oe?(r("replaceCaret pr",oe),j==="0"?Z==="0"?Q=`>=${j}.${Z}.${K}-${oe} <${j}.${Z}.${+K+1}-0`:Q=`>=${j}.${Z}.${K}-${oe} <${j}.${+Z+1}.0-0`:Q=`>=${j}.${Z}.${K}-${oe} <${+j+1}.0.0-0`):(r("no pr"),j==="0"?Z==="0"?Q=`>=${j}.${Z}.${K}${F} <${j}.${Z}.${+K+1}-0`:Q=`>=${j}.${Z}.${K}${F} <${j}.${+Z+1}.0-0`:Q=`>=${j}.${Z}.${K} <${+j+1}.0.0-0`),r("caret return",Q),Q})},T=(U,D)=>(r("replaceXRanges",U,D),U.split(/\s+/).map($=>E($,D)).join(" ")),E=(U,D)=>{U=U.trim();const $=D.loose?a[l.XRANGELOOSE]:a[l.XRANGE];return U.replace($,(F,H,j,Z,K,oe)=>{r("xRange",U,F,H,j,Z,K,oe);const Q=y(j),me=Q||y(Z),Me=me||y(K),Pe=Me;return H==="="&&Pe&&(H=""),oe=D.includePrerelease?"-0":"",Q?H===">"||H==="<"?F="<0.0.0-0":F="*":H&&Pe?(me&&(Z=0),K=0,H===">"?(H=">=",me?(j=+j+1,Z=0,K=0):(Z=+Z+1,K=0)):H==="<="&&(H="<",me?j=+j+1:Z=+Z+1),H==="<"&&(oe="-0"),F=`${H+j}.${Z}.${K}${oe}`):me?F=`>=${j}.0.0${oe} <${+j+1}.0.0-0`:Me&&(F=`>=${j}.${Z}.0${oe} <${j}.${+Z+1}.0-0`),r("xRange return",F),F})},A=(U,D)=>(r("replaceStars",U,D),U.trim().replace(a[l.STAR],"")),O=(U,D)=>(r("replaceGTE0",U,D),U.trim().replace(a[D.includePrerelease?l.GTE0PRE:l.GTE0],"")),I=U=>(D,$,F,H,j,Z,K,oe,Q,me,Me,Pe,ie)=>(y(F)?$="":y(H)?$=`>=${F}.0.0${U?"-0":""}`:y(j)?$=`>=${F}.${H}.0${U?"-0":""}`:Z?$=`>=${$}`:$=`>=${$}${U?"-0":""}`,y(Q)?oe="":y(me)?oe=`<${+Q+1}.0.0-0`:y(Me)?oe=`<${Q}.${+me+1}.0-0`:Pe?oe=`<=${Q}.${me}.${Me}-${Pe}`:U?oe=`<${Q}.${me}.${+Me+1}-0`:oe=`<=${oe}`,`${$} ${oe}`.trim()),B=(U,D,$)=>{for(let F=0;F0){const H=U[F].semver;if(H.major===D.major&&H.minor===D.minor&&H.patch===D.patch)return!0}return!1}return!0};return $0}var U0,TS;function S_(){if(TS)return U0;TS=1;const t=Symbol("SemVer ANY");class e{static get ANY(){return t}constructor(u,d){if(d=n(d),u instanceof e){if(u.loose===!!d.loose)return u;u=u.value}u=u.trim().split(/\s+/).join(" "),o("comparator",u,d),this.options=d,this.loose=!!d.loose,this.parse(u),this.semver===t?this.value="":this.value=this.operator+this.semver.version,o("comp",this)}parse(u){const d=this.options.loose?s[i.COMPARATORLOOSE]:s[i.COMPARATOR],f=u.match(d);if(!f)throw new TypeError(`Invalid comparator: ${u}`);this.operator=f[1]!==void 0?f[1]:"",this.operator==="="&&(this.operator=""),f[2]?this.semver=new a(f[2],this.options.loose):this.semver=t}toString(){return this.value}test(u){if(o("Comparator.test",u,this.options.loose),this.semver===t||u===t)return!0;if(typeof u=="string")try{u=new a(u,this.options)}catch{return!1}return r(u,this.operator,this.semver,this.options)}intersects(u,d){if(!(u instanceof e))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new l(u.value,d).test(this.value):u.operator===""?u.value===""?!0:new l(this.value,d).test(u.semver):(d=n(d),d.includePrerelease&&(this.value==="<0.0.0-0"||u.value==="<0.0.0-0")||!d.includePrerelease&&(this.value.startsWith("<0.0.0")||u.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&u.operator.startsWith(">")||this.operator.startsWith("<")&&u.operator.startsWith("<")||this.semver.version===u.semver.version&&this.operator.includes("=")&&u.operator.includes("=")||r(this.semver,"<",u.semver,d)&&this.operator.startsWith(">")&&u.operator.startsWith("<")||r(this.semver,">",u.semver,d)&&this.operator.startsWith("<")&&u.operator.startsWith(">")))}}U0=e;const n=uw,{safeRe:s,t:i}=Oh,r=xk,o=w_,a=Es,l=Zi();return U0}const WU=Zi(),jU=(t,e,n)=>{try{e=new WU(e,n)}catch{return!1}return e.test(t)};var E_=jU;const qU=Zi(),YU=(t,e)=>new qU(t,e).set.map(n=>n.map(s=>s.value).join(" ").trim().split(" "));var KU=YU;const XU=Es,ZU=Zi(),JU=(t,e,n)=>{let s=null,i=null,r=null;try{r=new ZU(e,n)}catch{return null}return t.forEach(o=>{r.test(o)&&(!s||i.compare(o)===-1)&&(s=o,i=new XU(s,n))}),s};var QU=JU;const eB=Es,tB=Zi(),nB=(t,e,n)=>{let s=null,i=null,r=null;try{r=new tB(e,n)}catch{return null}return t.forEach(o=>{r.test(o)&&(!s||i.compare(o)===1)&&(s=o,i=new eB(s,n))}),s};var sB=nB;const B0=Es,iB=Zi(),AS=x_,rB=(t,e)=>{t=new iB(t,e);let n=new B0("0.0.0");if(t.test(n)||(n=new B0("0.0.0-0"),t.test(n)))return n;n=null;for(let s=0;s{const a=new B0(o.semver.version);switch(o.operator){case">":a.prerelease.length===0?a.patch++:a.prerelease.push(0),a.raw=a.format();case"":case">=":(!r||AS(a,r))&&(r=a);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${o.operator}`)}}),r&&(!n||AS(n,r))&&(n=r)}return n&&t.test(n)?n:null};var oB=rB;const aB=Zi(),lB=(t,e)=>{try{return new aB(t,e).range||"*"}catch{return null}};var cB=lB;const uB=Es,Ek=S_(),{ANY:dB}=Ek,fB=Zi(),hB=E_,MS=x_,kS=fw,pB=pw,mB=hw,gB=(t,e,n,s)=>{t=new uB(t,s),e=new fB(e,s);let i,r,o,a,l;switch(n){case">":i=MS,r=pB,o=kS,a=">",l=">=";break;case"<":i=kS,r=mB,o=MS,a="<",l="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(hB(t,e,s))return!1;for(let c=0;c{h.semver===dB&&(h=new Ek(">=0.0.0")),d=d||h,f=f||h,i(h.semver,d.semver,s)?d=h:o(h.semver,f.semver,s)&&(f=h)}),d.operator===a||d.operator===l||(!f.operator||f.operator===a)&&r(t,f.semver))return!1;if(f.operator===l&&o(t,f.semver))return!1}return!0};var mw=gB;const _B=mw,bB=(t,e,n)=>_B(t,e,">",n);var yB=bB;const vB=mw,wB=(t,e,n)=>vB(t,e,"<",n);var xB=wB;const RS=Zi(),SB=(t,e,n)=>(t=new RS(t,n),e=new RS(e,n),t.intersects(e,n));var EB=SB;const TB=E_,AB=Xi;var MB=(t,e,n)=>{const s=[];let i=null,r=null;const o=t.sort((u,d)=>AB(u,d,n));for(const u of o)TB(u,e,n)?(r=u,i||(i=u)):(r&&s.push([i,r]),r=null,i=null);i&&s.push([i,null]);const a=[];for(const[u,d]of s)u===d?a.push(u):!d&&u===o[0]?a.push("*"):d?u===o[0]?a.push(`<=${d}`):a.push(`${u} - ${d}`):a.push(`>=${u}`);const l=a.join(" || "),c=typeof e.raw=="string"?e.raw:String(e);return l.length{if(t===e)return!0;t=new CS(t,n),e=new CS(e,n);let s=!1;e:for(const i of t.set){for(const r of e.set){const o=CB(i,r,n);if(s=s||o!==null,o)continue e}if(s)return!1}return!0},RB=[new gw(">=0.0.0-0")],OS=[new gw(">=0.0.0")],CB=(t,e,n)=>{if(t===e)return!0;if(t.length===1&&t[0].semver===G0){if(e.length===1&&e[0].semver===G0)return!0;n.includePrerelease?t=RB:t=OS}if(e.length===1&&e[0].semver===G0){if(n.includePrerelease)return!0;e=OS}const s=new Set;let i,r;for(const h of t)h.operator===">"||h.operator===">="?i=IS(i,h,n):h.operator==="<"||h.operator==="<="?r=LS(r,h,n):s.add(h.semver);if(s.size>1)return null;let o;if(i&&r){if(o=_w(i.semver,r.semver,n),o>0)return null;if(o===0&&(i.operator!==">="||r.operator!=="<="))return null}for(const h of s){if(i&&!Ld(h,String(i),n)||r&&!Ld(h,String(r),n))return null;for(const _ of e)if(!Ld(h,String(_),n))return!1;return!0}let a,l,c,u,d=r&&!n.includePrerelease&&r.semver.prerelease.length?r.semver:!1,f=i&&!n.includePrerelease&&i.semver.prerelease.length?i.semver:!1;d&&d.prerelease.length===1&&r.operator==="<"&&d.prerelease[0]===0&&(d=!1);for(const h of e){if(u=u||h.operator===">"||h.operator===">=",c=c||h.operator==="<"||h.operator==="<=",i){if(f&&h.semver.prerelease&&h.semver.prerelease.length&&h.semver.major===f.major&&h.semver.minor===f.minor&&h.semver.patch===f.patch&&(f=!1),h.operator===">"||h.operator===">="){if(a=IS(i,h,n),a===h&&a!==i)return!1}else if(i.operator===">="&&!Ld(i.semver,String(h),n))return!1}if(r){if(d&&h.semver.prerelease&&h.semver.prerelease.length&&h.semver.major===d.major&&h.semver.minor===d.minor&&h.semver.patch===d.patch&&(d=!1),h.operator==="<"||h.operator==="<="){if(l=LS(r,h,n),l===h&&l!==r)return!1}else if(r.operator==="<="&&!Ld(r.semver,String(h),n))return!1}if(!h.operator&&(r||i)&&o!==0)return!1}return!(i&&c&&!r&&o!==0||r&&u&&!i&&o!==0||f||d)},IS=(t,e,n)=>{if(!t)return e;const s=_w(t.semver,e.semver,n);return s>0?t:s<0||e.operator===">"&&t.operator===">="?e:t},LS=(t,e,n)=>{if(!t)return e;const s=_w(t.semver,e.semver,n);return s<0?t:s>0||e.operator==="<"&&t.operator==="<="?e:t};var OB=kB;const z0=Oh,PS=v_,IB=Es,DS=yk,LB=td,PB=L$,DB=F$,FB=$$,NB=B$,$B=H$,UB=j$,BB=K$,GB=J$,zB=Xi,HB=nU,VB=rU,WB=dw,jB=cU,qB=fU,YB=x_,KB=fw,XB=vk,ZB=wk,JB=hw,QB=pw,eG=xk,tG=DU,nG=S_(),sG=Zi(),iG=E_,rG=KU,oG=QU,aG=sB,lG=oB,cG=cB,uG=mw,dG=yB,fG=xB,hG=EB,pG=MB,mG=OB;var Wb={parse:LB,valid:PB,clean:DB,inc:FB,diff:NB,major:$B,minor:UB,patch:BB,prerelease:GB,compare:zB,rcompare:HB,compareLoose:VB,compareBuild:WB,sort:jB,rsort:qB,gt:YB,lt:KB,eq:XB,neq:ZB,gte:JB,lte:QB,cmp:eG,coerce:tG,Comparator:nG,Range:sG,satisfies:iG,toComparators:rG,maxSatisfying:oG,minSatisfying:aG,minVersion:lG,validRange:cG,outside:uG,gtr:dG,ltr:fG,intersects:hG,simplifyRange:pG,subset:mG,SemVer:IB,re:z0.re,src:z0.src,tokens:z0.t,SEMVER_SPEC_VERSION:PS.SEMVER_SPEC_VERSION,RELEASE_TYPES:PS.RELEASE_TYPES,compareIdentifiers:DS.compareIdentifiers,rcompareIdentifiers:DS.rcompareIdentifiers};const Ps=Jl(Wb);function vf(t,e){const n=new Uint8Array(t.length+e.length);return n.set(t),n.set(e,t.length),n}function H0(t){const e=new Uint8Array(t.length);for(let n=0;n=this.buf.byteLength){let n=this.buf.byteLength;for(;n>16&255}.${t>>8&255}.${t>>0&255}`}const gG=/(android)/i.test(navigator.userAgent),_G={baudRate:921600,bufferSize:4*1024*1024,updateInterval:1e3},bG={baudRate:921600,bufferSize:4*1024*1024,updateInterval:250},cg={serial:gG?_G:bG};class NS{constructor(e){$e(this,"promises",Array());this.permits=e}signal(){this.permits+=1,this.promises.length>0&&this.promises.pop()()}async wait(){this.permits-=1,(this.permits<0||this.promises.length>0)&&await new Promise(e=>this.promises.unshift(e))}}const fp=cg.serial.bufferSize;class yG{constructor(e,n){$e(this,"_resolverId",1);$e(this,"_resolvers",[]);$e(this,"_buffer",new Uint8Array(fp));$e(this,"_head",0);$e(this,"_tail",0);$e(this,"_done");$e(this,"_abort",new AbortController);this.readable=e,this._done=e.pipeTo(new WritableStream({write:this.write.bind(this)},new ByteLengthQueuingStrategy({highWaterMark:4096})),{signal:this._abort.signal}).catch(s=>{s!="close"&&n(s)})}get _read_len(){return this._head==this._tail?0:this._head>this._tail?this._head-this._tail:fp-this._tail+this._head}async close(){this._abort.abort("close"),await this._done,this.readable.cancel()}async write(e,n){for(const s of e){const i=(this._head+1)%fp;if(i==this._tail)throw n==null||n.error("queue full"),new Error("queue full");this._buffer[this._head]=s,this._head=i}if(this._resolvers.length){const s=this._resolvers[0];this._read_len>=s.size&&(s.fn(this._read(s.size)),this._resolvers.shift())}}_defer(e,n){const s=this._resolverId++,i=[new Promise(r=>{this._resolvers.push({id:s,fn:r,size:e})})];return n&&i.push(new Promise((r,o)=>{const a=setTimeout(()=>{this._resolvers=this._resolvers.filter(l=>l.id!=s),clearTimeout(a),o("timeout")},n)})),Promise.race(i)}async pop(e){return(await this.read(1,e))[0]}async read(e,n){return e==0?new Uint8Array(e):this._read_len>>0===e)this.encodeRaw(0,e,fc(e));else if(e>>0===e){const n=-e-1;this.encodeRaw(1,n,fc(n))}else this.encodeHeader(7,26),this.buf.writeFloat32(e)}encodeObject(e){const n=Object.entries(e);this.encodeRaw(5,n.length,fc(n.length));for(const[s,i]of n)this.encode(s),this.encode(i)}encodeArray(e){this.encodeRaw(4,e.length,fc(e.length));for(const n of e)this.encode(n)}encodeString(e){this.encodeRaw(3,e.length,fc(e.length));for(let n=0;n=0;r--)this.buf.writeUint8(n>>r*8&255)}encodeHeader(e,n){return this.buf.writeUint8(e<{if(n)return n;if(this.buf.remaining()<=0)return 0;const{type:s,max:i}=this.decodeType();return s==7&&i==31?(this.buf.advance(1),0):1/0}}decodeSimpleValue(e){switch(e){case 20:return!1;case 21:return!0;case 22:return null;case 23:return;default:return e}}decodeFloat16(e){const n=(e&31744)>>10,s=e&1023;return(e>>15?-1:1)*(n?n===31?s?NaN:1/0:Math.pow(2,n-15)*(1+s/1024):6103515625e-14*(s/1024))}decodeFloat(e){switch(e){case 24:{const n=this.decodeSimpleValue(this.buf.peekUint8());return this.buf.advance(1),n}case 25:{const n=this.buf.peekUint16();return this.buf.advance(2),this.decodeFloat16(n)}case 26:{const n=[this.buf.peekUint8(),this.buf.peekUint8(),this.buf.peekUint8(),this.buf.peekUint8()],s=this.buf.peekFloat32();this.buf.advance(4);const i=Mk[(n[0]&127)<<1|n[1]>>7];return(i*s+(s>0?.5:-.5)>>0)/i}case 27:{const n=this.buf.peekFloat64();return this.buf.advance(8),n}default:{if(e<24)return this.decodeSimpleValue(e);throw new Error("wrong size "+e+" on float")}}}decodeRaw(e){if(e<24)return e;const n=1<=0;i--){const r=this.buf.peekUint8();this.buf.advance(1),s|=r<>>0}decodeType(){if(this.buf.remaining()<=0)throw new Error("EOF");const e=this.buf.peekUint8();return{type:(e&wG)>>Tk,max:e&Ak}}}class Cm{static encode(e){return new xG().encode(e)}static decodeMultiple(e){const n=[],s=new SG(e);for(;!s.isEOF();)try{n.push(s.decode())}catch(i){if(i.message!="EOF")throw i}return n}}var kk={};(function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.serial=t.SerialPort=t.SerialPolyfillProtocol=void 0;var e;(function(S){S[S.UsbCdcAcm=0]="UsbCdcAcm"})(e=t.SerialPolyfillProtocol||(t.SerialPolyfillProtocol={}));const n=32,s=34,i=35,r=255,o=8,a="none",l=1,c=[16,8,7,6,5],u=[1,2],d=["none","even","odd"],f=["none","odd","even"],h=[1,1.5,2],_={protocol:e.UsbCdcAcm,usbControlInterfaceClass:2,usbTransferInterfaceClass:10};function p(S,w){const T=S.configurations[0];for(const E of T.interfaces)if(E.alternates[0].interfaceClass===w)return E;throw new TypeError(`Unable to find interface with class ${w}.`)}function m(S,w){const T=S.alternates[0];for(const E of T.endpoints)if(E.direction==w)return E;throw new TypeError(`Interface ${S.interfaceNumber} does not have an ${w} endpoint.`)}class b{constructor(w,T,E){this.type="bytes",this.device_=w,this.endpoint_=T,this.onError_=E}async pull(w){var T;let E;if(w.desiredSize){const A=w.desiredSize/this.endpoint_.packetSize;E=Math.ceil(A)*this.endpoint_.packetSize}else E=this.endpoint_.packetSize;try{for(;;){const A=await this.device_.transferIn(this.endpoint_.endpointNumber,E);if(A.status!="ok"){w.error(`USB error: ${A.status}`),this.onError_();break}if(!((T=A.data)===null||T===void 0)&&T.buffer&&A.data.byteLength>0){const O=new Uint8Array(A.data.buffer,A.data.byteOffset,A.data.byteLength);w.enqueue(O);break}}}catch(A){w.error(A.toString()),this.onError_()}}}class y{constructor(w,T,E){this.device_=w,this.endpoint_=T,this.onError_=E}async write(w,T){try{const E=await this.device_.transferOut(this.endpoint_.endpointNumber,w);E.status!="ok"&&(T.error(E.status),this.onError_())}catch(E){T.error(E.toString()),this.onError_()}}}class v{constructor(w,T){this.polyfillOptions_=Object.assign(Object.assign({},_),T),this.outputSignals_={dataTerminalReady:!1,requestToSend:!1,break:!1},this.device_=w,this.controlInterface_=p(this.device_,this.polyfillOptions_.usbControlInterfaceClass),this.transferInterface_=p(this.device_,this.polyfillOptions_.usbTransferInterfaceClass),this.inEndpoint_=m(this.transferInterface_,"in"),this.outEndpoint_=m(this.transferInterface_,"out")}get readable(){var w;return!this.readable_&&this.device_.opened&&(this.readable_=new ReadableStream(new b(this.device_,this.inEndpoint_,()=>{this.readable_=null}),{highWaterMark:(w=this.serialOptions_.bufferSize)!==null&&w!==void 0?w:r})),this.readable_}get writable(){var w;return!this.writable_&&this.device_.opened&&(this.writable_=new WritableStream(new y(this.device_,this.outEndpoint_,()=>{this.writable_=null}),new ByteLengthQueuingStrategy({highWaterMark:(w=this.serialOptions_.bufferSize)!==null&&w!==void 0?w:r}))),this.writable_}async open(w){this.serialOptions_=w,this.validateOptions();try{await this.device_.open(),this.device_.configuration===null&&await this.device_.selectConfiguration(1),await this.device_.claimInterface(this.controlInterface_.interfaceNumber),this.controlInterface_!==this.transferInterface_&&await this.device_.claimInterface(this.transferInterface_.interfaceNumber),await this.setLineCoding(),await this.setSignals({dataTerminalReady:!0})}catch(T){throw this.device_.opened&&await this.device_.close(),new Error("Error setting up device: "+T.toString())}}async close(){const w=[];this.readable_&&w.push(this.readable_.cancel()),this.writable_&&w.push(this.writable_.abort()),await Promise.all(w),this.readable_=null,this.writable_=null,this.device_.opened&&(await this.setSignals({dataTerminalReady:!1,requestToSend:!1}),await this.device_.close())}async forget(){return this.device_.forget()}getInfo(){return{usbVendorId:this.device_.vendorId,usbProductId:this.device_.productId}}reconfigure(w){return this.serialOptions_=Object.assign(Object.assign({},this.serialOptions_),w),this.validateOptions(),this.setLineCoding()}async setSignals(w){if(this.outputSignals_=Object.assign(Object.assign({},this.outputSignals_),w),w.dataTerminalReady!==void 0||w.requestToSend!==void 0){const T=(this.outputSignals_.dataTerminalReady?1:0)|(this.outputSignals_.requestToSend?2:0);await this.device_.controlTransferOut({requestType:"class",recipient:"interface",request:s,value:T,index:this.controlInterface_.interfaceNumber})}if(w.break!==void 0){const T=this.outputSignals_.break?65535:0;await this.device_.controlTransferOut({requestType:"class",recipient:"interface",request:i,value:T,index:this.controlInterface_.interfaceNumber})}}validateOptions(){if(!this.isValidBaudRate(this.serialOptions_.baudRate))throw new RangeError("invalid Baud Rate "+this.serialOptions_.baudRate);if(!this.isValidDataBits(this.serialOptions_.dataBits))throw new RangeError("invalid dataBits "+this.serialOptions_.dataBits);if(!this.isValidStopBits(this.serialOptions_.stopBits))throw new RangeError("invalid stopBits "+this.serialOptions_.stopBits);if(!this.isValidParity(this.serialOptions_.parity))throw new RangeError("invalid parity "+this.serialOptions_.parity)}isValidBaudRate(w){return w%1===0}isValidDataBits(w){return typeof w>"u"?!0:c.includes(w)}isValidStopBits(w){return typeof w>"u"?!0:u.includes(w)}isValidParity(w){return typeof w>"u"?!0:d.includes(w)}async setLineCoding(){var w,T,E;const A=new ArrayBuffer(7),O=new DataView(A);if(O.setUint32(0,this.serialOptions_.baudRate,!0),O.setUint8(4,h.indexOf((w=this.serialOptions_.stopBits)!==null&&w!==void 0?w:l)),O.setUint8(5,f.indexOf((T=this.serialOptions_.parity)!==null&&T!==void 0?T:a)),O.setUint8(6,(E=this.serialOptions_.dataBits)!==null&&E!==void 0?E:o),(await this.device_.controlTransferOut({requestType:"class",recipient:"interface",request:n,value:0,index:this.controlInterface_.interfaceNumber},A)).status!="ok")throw new DOMException("NetworkError","Failed to set line coding.")}}t.SerialPort=v;class x{async requestPort(w,T){T=Object.assign(Object.assign({},_),T);const E=[];if(w&&w.filters)for(const I of w.filters){const B={classCode:T.usbControlInterfaceClass};I.usbVendorId!==void 0&&(B.vendorId=I.usbVendorId),I.usbProductId!==void 0&&(B.productId=I.usbProductId),E.push(B)}E.length===0&&E.push({classCode:T.usbControlInterfaceClass});const A=await navigator.usb.requestDevice({filters:E});return new v(A,T)}async getPorts(w){w=Object.assign(Object.assign({},_),w);const T=await navigator.usb.getDevices(),E=[];return T.forEach(A=>{try{const O=new v(A,w);E.push(O)}catch{}}),E}}t.serial=new x})(kk);function EG(){return navigator.serial?navigator.serial:kk.serial}const TG=EG(),AG="S",MG="R",kG=[{usbVendorId:1155,usbProductId:22336},{usbVendorId:11836,usbProductId:22336}],$S=()=>{};let RG=class{constructor(){$e(this,"shouldRun",!0);$e(this,"reSync",!0);$e(this,"waitingCommands",new NS(1));$e(this,"port");$e(this,"writer");$e(this,"reader")}async connect(e=console.warn){try{return await this._connectPort(e),await this.get(vn.Info,1e4)}catch(n){throw await this.close(),n}}async _connectPort(e=console.warn){this.port=await TG.requestPort({filters:kG}),this.waitingCommands=new NS(1),await this.port.open({baudRate:cg.serial.baudRate,bufferSize:cg.serial.bufferSize,flowControl:"none"}),this.writer=await this.port.writable.getWriter(),this.reader=new yG(this.port.readable,e),this.shouldRun=!0}async softReboot(){await this.write(H0(AG))}async hardReboot(){if(this.port)throw new Error("port already connected");await this._connectPort();const e=await this.get(vn.Target,500).then(n=>n.name).catch(()=>{});return await this.write(H0(MG)),await this.write(H0(`\r +bl\r +`)),await this.close(),e}async get(e,n){const s=await this._command(qn.Get,$S,n,[e]);if(s.payload[0]!=e)throw new Error("invalid value");if(s.payload.length<2)throw new Error("no payload");return s.payload.length==2?s.payload[1]:s.payload.slice(1)}async set(e,...n){const s=await this.command(qn.Set,e,...n);if(s.payload[0]!=e)throw new Error("invalid value");if(s.payload.length<2)throw new Error("no payload");return s.payload.length==2?s.payload[1]:s.payload.slice(1)}async command(e,...n){return this._command(e,$S,void 0,n)}async commandProgress(e,n,...s){return this._command(e,n,void 0,s)}async close(){var e,n;if(this.reSync=!0,this.shouldRun=!1,this.reader)try{await((e=this.reader)==null?void 0:e.close())}catch(s){st.warn("serial",s)}if(this.writer)try{await this.writer.releaseLock()}catch(s){st.warn("serial",s)}try{await((n=this.port)==null?void 0:n.close())}catch(s){st.warn("serial",s)}this.reader=void 0,this.writer=void 0,this.port=void 0}async _command(e,n,s,i){await this.waitingCommands.wait();try{const r=await this.send(e,n,s,i);if(r.cmd!=e)throw new Error("invalid command");if(r.flag&Rm.Error)throw new Error(r.payload[0]);return r}finally{this.waitingCommands.signal()}}async write(e){if(this.writer)await this.writer.write(e);else throw new Error("no serial writer")}async send(e,n,s,i){const r=this.encodeValues(i),o=Uint8Array.from([dS,e,r.length>>8&255,r.length&255]);st.trace("serial","[quic] sent cmd:",e,"len:",r.length,i),await this.write(vf(o,r));let a=await this.readPacket(n,s);for(;a.cmd==qn.Log;)st.info("serial","[quic] "+a.payload[0]),a=await this.readPacket(n,s);return st.trace("serial","[quic] recv cmd:",a.cmd,"flag:",a.flag,"len:",a.len,a.payload),a}encodeValues(e){let n=new Uint8Array;for(const s of e){const i=Cm.encode(s);n=vf(n,i)}return n}async readHeader(e){if(!this.reader)throw new Error("no serial reader");for(;this.shouldRun;){const s=await this.reader.pop(e);if(s===dS){this.reSync=!1;break}if(!this.reSync)throw this.reSync=!0,st.info("serial","invalid magic "+s),new Error("invalid magic "+s)}const n=await this.reader.read(_$-1,e);return{cmd:n[0]&31,flag:n[0]>>5,len:n[1]<<8|n[2]}}async readPacket(e,n){const s=await this.readHeader(n);if(s.cmd>=qn.Max||s.cmd==qn.Invalid)throw new Error("invalid command");if(!this.reader)throw new Error("no serial reader");if(!(s.flag&Rm.Streaming)){const o=await this.reader.read(s.len,n);e(o.length);let a=[];return s.len&&(a=Cm.decodeMultiple(o)),{...s,payload:a}}const i=new bw;for(i.writeUint8s(await this.reader.read(s.len,n)),st.trace("serial","[quic] recv stream chunk",i.length),e(i.length);i;){const o=await this.readHeader(n);if(o.cmd!=s.cmd||!(o.flag&Rm.Streaming))throw new Error("invalid command");if(o.len==0)break;const a=await this.reader.read(o.len,n);i.writeUint8s(a),st.trace("serial","[quic] recv stream chunk",i.length),e(i.length)}const r=Cm.decodeMultiple(i.array());return{...s,payload:r}}};const wt=new RG,wn=ds("root",{state:()=>({needs_apply:!1,needs_reboot:!1,alerts:[],pid_rate_presets:[]}),actions:{append_alert(t){this.alerts=[...this.alerts,{id:Date.now().toString()+"-"+this.alerts.length.toString(),...t}]},pop_alert(t){this.alerts=[...this.alerts.filter(e=>e.id!=t)]},set_needs_apply(){this.needs_apply=!0},set_needs_reboot(){this.needs_apply=!0,this.needs_reboot=!0},reset_needs_apply(){this.needs_apply=!1},reset_needs_reboot(){this.needs_apply=!1,this.needs_reboot=!1},fetch_pid_rate_presets(){return wt.get(vn.PidRatePresets).then(t=>this.pid_rate_presets=t)},cal_imu(){return wt.command(qn.CalImu)},cal_sticks(){return wt.command(qn.CalSticks)}}}),CG=nt({name:"AlterPortal",setup(){return{root:wn()}},data(){return{timeouts:{}}},watch:{"root.alerts"(t,e){if(t.length<=e.length)return;const n=t[t.length-1].id;this.timeouts[n]=window.setTimeout(()=>{this.root.pop_alert(n),delete this.timeouts[n]},2500)}},methods:{dismiss(t){clearTimeout(this.timeouts[t]),this.root.pop_alert(t),delete this.timeouts[t]}}});const ot=(t,e)=>{const n=t.__vccOpts||t;for(const[s,i]of e)n[s]=i;return n},OG={class:"alert-portal"},IG=["onClick"];function LG(t,e,n,s,i,r){return J(),se("div",OG,[X(zP,{name:"alert",tag:"div"},{default:et(()=>[(J(!0),se(tt,null,Vt(t.root.alerts,o=>(J(),se("div",{key:o.id,class:os(["notification",["is-"+o.type]])},[g("button",{class:"delete",onClick:a=>t.dismiss(o.id)},null,8,IG),ye(" "+Ue(o.msg),1)],2))),128))]),_:1})])}const PG=ot(CG,[["render",LG]]),DG=nt({name:"ModalPortal"}),FG={class:"modal-portal"},NG={key:0,class:"modal is-active"},$G=g("div",{class:"modal-background"},null,-1);function UG(t,e,n,s,i,r){return J(),se("div",FG,[ye(Ue(t.$modal.isShown)+" ",1),t.$modal.isShown?(J(),se("div",NG,[$G,(J(),fn(EL(t.$modal.component),s_(t.$modal.props,{onClose:e[0]||(e[0]=o=>t.$modal.close(o))}),null,16))])):qe("",!0)])}const BG=ot(DG,[["render",UG]]),GG=nt({name:"SelectModal",props:["options","title"],data(){return{value:void 0}}});const zG={class:"modal-card"},HG={class:"modal-card-head"},VG={class:"modal-card-title"},WG={class:"modal-card-body"},jG={class:"select is-fullwidth is-multiple select-list"},qG={class:"control"},YG=["value"],KG={class:"modal-card-foot"},XG=["disabled"];function ZG(t,e,n,s,i,r){return J(),se("div",zG,[g("header",HG,[g("p",VG,"Select "+Ue(t.title),1),g("button",{class:"delete has-background-primary","aria-label":"close",onClick:e[0]||(e[0]=o=>t.$emit("close"))})]),g("section",WG,[g("div",jG,[g("div",qG,[Ve(g("select",{size:"8","onUpdate:modelValue":e[1]||(e[1]=o=>t.value=o)},[(J(!0),se(tt,null,Vt(t.options,o=>(J(),se("option",{key:o.value,value:o.value},Ue(o.text),9,YG))),128))],512),[[o_,t.value]])])])]),g("footer",KG,[g("button",{class:"button",onClick:e[2]||(e[2]=o=>t.$emit("close"))},"Cancel"),g("button",{class:"button is-success",onClick:e[3]||(e[3]=o=>t.$emit("close",t.value)),disabled:t.value==null}," Select ",8,XG)])])}const US=ot(GG,[["render",ZG]]);var Rk=(t=>(t[t.BRUSHLESS=2]="BRUSHLESS",t[t.OSD=4]="OSD",t[t.BLACKBOX=8]="BLACKBOX",t[t.DEBUG=16]="DEBUG",t))(Rk||{}),Ck=(t=>(t[t.ROTATE_NONE=0]="ROTATE_NONE",t[t.ROTATE_45_CCW=1]="ROTATE_45_CCW",t[t.ROTATE_45_CW=2]="ROTATE_45_CW",t[t.ROTATE_90_CW=4]="ROTATE_90_CW",t[t.ROTATE_90_CCW=8]="ROTATE_90_CCW",t[t.ROTATE_180=16]="ROTATE_180",t[t.FLIP_180=32]="FLIP_180",t))(Ck||{}),Ok=(t=>(t[t.INVALID=0]="INVALID",t[t.MPU6000=1]="MPU6000",t[t.MPU6500=2]="MPU6500",t[t.ICM20601=3]="ICM20601",t[t.ICM20602=4]="ICM20602",t[t.ICM20608=5]="ICM20608",t[t.ICM20649=6]="ICM20649",t[t.ICM20689=7]="ICM20689",t[t.ICM42605=8]="ICM42605",t[t.ICM42688P=9]="ICM42688P",t[t.BMI270=10]="BMI270",t))(Ok||{}),Ik=(t=>(t[t.INVALID=0]="INVALID",t[t.MPU6000=1]="MPU6000",t[t.MPU6500=2]="MPU6500",t[t.ICM20601=3]="ICM20601",t[t.ICM20602=4]="ICM20602",t[t.ICM20608=5]="ICM20608",t[t.ICM20689=6]="ICM20689",t[t.ICM42605=7]="ICM42605",t[t.ICM42688P=8]="ICM42688P",t[t.BMI270=9]="BMI270",t[t.BMI323=10]="BMI323",t))(Ik||{}),Lk=(t=>(t[t.CHANNEL_5=0]="CHANNEL_5",t[t.CHANNEL_6=1]="CHANNEL_6",t[t.CHANNEL_7=2]="CHANNEL_7",t[t.CHANNEL_8=3]="CHANNEL_8",t[t.CHANNEL_9=4]="CHANNEL_9",t[t.CHANNEL_10=5]="CHANNEL_10",t[t.CHANNEL_11=6]="CHANNEL_11",t[t.CHANNEL_12=7]="CHANNEL_12",t[t.CHANNEL_13=8]="CHANNEL_13",t[t.CHANNEL_14=9]="CHANNEL_14",t[t.CHANNEL_15=10]="CHANNEL_15",t[t.CHANNEL_16=11]="CHANNEL_16",t[t.OFF=12]="OFF",t[t.ON=13]="ON",t[t.AUX_GESTURE=14]="AUX_GESTURE",t))(Lk||{}),Pk=(t=>(t[t.AUX_ARMING=0]="AUX_ARMING",t[t.AUX_IDLE_UP=1]="AUX_IDLE_UP",t[t.AUX_LEVELMODE=2]="AUX_LEVELMODE",t[t.AUX_RACEMODE=3]="AUX_RACEMODE",t[t.AUX_HORIZON=4]="AUX_HORIZON",t[t.AUX_STICK_BOOST_PROFILE=5]="AUX_STICK_BOOST_PROFILE",t[t._AUX_RATE_PROFILE=6]="_AUX_RATE_PROFILE",t[t.AUX_BUZZER_ENABLE=7]="AUX_BUZZER_ENABLE",t[t.AUX_TURTLE=8]="AUX_TURTLE",t[t.AUX_MOTOR_TEST=9]="AUX_MOTOR_TEST",t[t.AUX_RSSI=10]="AUX_RSSI",t[t.AUX_FPV_SWITCH=11]="AUX_FPV_SWITCH",t[t.AUX_BLACKBOX=12]="AUX_BLACKBOX",t))(Pk||{}),Dk=(t=>(t[t.AUX_ARMING=0]="AUX_ARMING",t[t.AUX_IDLE_UP=1]="AUX_IDLE_UP",t[t.AUX_LEVELMODE=2]="AUX_LEVELMODE",t[t.AUX_RACEMODE=3]="AUX_RACEMODE",t[t.AUX_HORIZON=4]="AUX_HORIZON",t[t.AUX_STICK_BOOST_PROFILE=5]="AUX_STICK_BOOST_PROFILE",t[t._AUX_RATE_PROFILE=6]="_AUX_RATE_PROFILE",t[t.AUX_BUZZER_ENABLE=7]="AUX_BUZZER_ENABLE",t[t.AUX_TURTLE=8]="AUX_TURTLE",t[t.AUX_MOTOR_TEST=9]="AUX_MOTOR_TEST",t[t.AUX_RSSI=10]="AUX_RSSI",t[t.AUX_FPV_SWITCH=11]="AUX_FPV_SWITCH",t[t.AUX_BLACKBOX=12]="AUX_BLACKBOX",t[t.AUX_PREARM=13]="AUX_PREARM",t))(Dk||{}),Fk=(t=>(t[t.INVALID=0]="INVALID",t[t.UNIFIED_SERIAL=1]="UNIFIED_SERIAL",t[t.SBUS=2]="SBUS",t[t.CRSF=3]="CRSF",t[t.IBUS=4]="IBUS",t[t.FPORT=5]="FPORT",t[t.DSMX_2048=6]="DSMX_2048",t[t.DSM2_1024=7]="DSM2_1024",t[t.NRF24_BAYANG_TELEMETRY=8]="NRF24_BAYANG_TELEMETRY",t[t.BAYANG_PROTOCOL_BLE_BEACON=9]="BAYANG_PROTOCOL_BLE_BEACON",t[t.BAYANG_PROTOCOL_TELEMETRY_AUTOBIND=10]="BAYANG_PROTOCOL_TELEMETRY_AUTOBIND",t[t.FRSKY_D8=11]="FRSKY_D8",t[t.FRSKY_D16=12]="FRSKY_D16",t[t.REDPINE=13]="REDPINE",t[t.EXPRESS_LRS=14]="EXPRESS_LRS",t))(Fk||{}),Nk=(t=>(t[t.INVALID=0]="INVALID",t[t.UNIFIED_SERIAL=1]="UNIFIED_SERIAL",t[t.SBUS=2]="SBUS",t[t.CRSF=3]="CRSF",t[t.IBUS=4]="IBUS",t[t.FPORT=5]="FPORT",t[t.DSM=6]="DSM",t[t.NRF24_BAYANG_TELEMETRY=7]="NRF24_BAYANG_TELEMETRY",t[t.BAYANG_PROTOCOL_BLE_BEACON=8]="BAYANG_PROTOCOL_BLE_BEACON",t[t.BAYANG_PROTOCOL_TELEMETRY_AUTOBIND=9]="BAYANG_PROTOCOL_TELEMETRY_AUTOBIND",t[t.FRSKY_D8=10]="FRSKY_D8",t[t.FRSKY_D16=11]="FRSKY_D16",t[t.REDPINE=12]="REDPINE",t[t.EXPRESS_LRS=13]="EXPRESS_LRS",t))(Nk||{}),$k=(t=>(t[t.INVALID=0]="INVALID",t[t.UNIFIED_SERIAL=1]="UNIFIED_SERIAL",t[t.SBUS=2]="SBUS",t[t.CRSF=3]="CRSF",t[t.IBUS=4]="IBUS",t[t.FPORT=5]="FPORT",t[t.DSM=6]="DSM",t[t.NRF24_BAYANG_TELEMETRY=7]="NRF24_BAYANG_TELEMETRY",t[t.BAYANG_PROTOCOL_BLE_BEACON=8]="BAYANG_PROTOCOL_BLE_BEACON",t[t.BAYANG_PROTOCOL_TELEMETRY_AUTOBIND=9]="BAYANG_PROTOCOL_TELEMETRY_AUTOBIND",t[t.FRSKY_D8=10]="FRSKY_D8",t[t.FRSKY_D16_FCC=11]="FRSKY_D16_FCC",t[t.FRSKY_D16_LBT=12]="FRSKY_D16_LBT",t[t.REDPINE=13]="REDPINE",t[t.EXPRESS_LRS=14]="EXPRESS_LRS",t[t.FLYSKY_AFHDS=15]="FLYSKY_AFHDS",t[t.FLYSKY_AFHDS2A=16]="FLYSKY_AFHDS2A",t))($k||{}),Uk=(t=>(t[t.INVALID=0]="INVALID",t[t.DSM=1]="DSM",t[t.SBUS=2]="SBUS",t[t.IBUS=3]="IBUS",t[t.FPORT=4]="FPORT",t[t.CRSF=5]="CRSF",t[t.REDPINE=6]="REDPINE",t[t.SBUS_INVERTED=7]="SBUS_INVERTED",t[t.FPORT_INVERTED=8]="FPORT_INVERTED",t[t.REDPINE_INVERTED=9]="REDPINE_INVERTED",t))(Uk||{}),zc=(t=>(t[t.STICK_WIZARD_INACTIVE=0]="STICK_WIZARD_INACTIVE",t[t.STICK_WIZARD_SUCCESS=1]="STICK_WIZARD_SUCCESS",t[t.STICK_WIZARD_FAILED=2]="STICK_WIZARD_FAILED",t[t.STICK_WIZARD_START=3]="STICK_WIZARD_START",t[t.STICK_WIZARD_CAPTURE_STICKS=4]="STICK_WIZARD_CAPTURE_STICKS",t[t.STICK_WIZARD_WAIT_FOR_CONFIRM=5]="STICK_WIZARD_WAIT_FOR_CONFIRM",t[t.STICK_WIZARD_CONFIRMED=6]="STICK_WIZARD_CONFIRMED",t[t.STICK_WIZARD_TIMEOUT=7]="STICK_WIZARD_TIMEOUT",t))(zc||{}),Bk=(t=>(t[t.FAILLOOP_NONE=0]="FAILLOOP_NONE",t[t.FAILLOOP_LOW_BATTERY=2]="FAILLOOP_LOW_BATTERY",t[t.FAILLOOP_RADIO=3]="FAILLOOP_RADIO",t[t.FAILLOOP_GYRO=4]="FAILLOOP_GYRO",t[t.FAILLOOP_FAULT=5]="FAILLOOP_FAULT",t[t.FAILLOOP_LOOPTIME=6]="FAILLOOP_LOOPTIME",t[t.FAILLOOP_SPI=7]="FAILLOOP_SPI",t[t.FAILLOOP_SPI_MAIN=8]="FAILLOOP_SPI_MAIN",t))(Bk||{}),je=(t=>(t[t.LOOP=0]="LOOP",t[t.TIME=1]="TIME",t[t.PID_P_TERM=2]="PID_P_TERM",t[t.PID_I_TERM=3]="PID_I_TERM",t[t.PID_D_TERM=4]="PID_D_TERM",t[t.RX=5]="RX",t[t.SETPOINT=6]="SETPOINT",t[t.ACCEL_RAW=7]="ACCEL_RAW",t[t.ACCEL_FILTER=8]="ACCEL_FILTER",t[t.GYRO_RAW=9]="GYRO_RAW",t[t.GYRO_FILTER=10]="GYRO_FILTER",t[t.MOTOR=11]="MOTOR",t[t.CPU_LOAD=12]="CPU_LOAD",t[t.DEBUG=13]="DEBUG",t))(je||{});const JG={0:"",2:"low battery at powerup - currently unused",3:"radio chip not found",4:"gyro not found",5:"clock, intterrupts, systick, gcc bad code, bad memory access (code issues like bad pointers) - this should not come up",6:"loop time issue - if loop time exceeds 20mS",7:"spi error - triggered by hardware spi driver only",8:"spi error main loop - triggered by hardware spi driver only"},ec=ds("constant",{state:()=>({Features:Rk,GyroRotation:Ck,AuxChannels:Lk,RXSerialProtocol:Uk,StickWizardState:zc,Failloop:Bk}),getters:{RXProtocol(){const t=Tn();return Ps.gt(t.quic_protocol_semver,"0.1.0")?$k:t.quic_protocol_version>5?Nk:Fk},AuxFunctions(){const t=Tn();return Ps.gt(t.quic_protocol_semver,"0.1.0")?Dk:Pk},GyroType(){const t=Tn();return Ps.gt(t.quic_protocol_semver,"0.2.0")?Ik:Ok}},actions:{}}),Js=ds("state",{state:()=>({looptime_autodetect:0,cpu_load:0,cpu_temp:0,vbat_filtered:0,vbattfilt:null,ibat_filtered:0,rx:[],rx_filtered:[],rx_status:0,rx_rssi:0,GEstG:null,accel:null,aux:[],stick_calibration_wizard:0,failloop:0,pidoutput:null,accel_raw:null,gyro:null,gyro_raw:null}),getters:{vbat(t){return t.vbattfilt||t.vbat_filtered},failloopMessage(t){return JG[t.failloop]}},actions:{fetch_state(){return wt.get(vn.State).then(t=>this.$patch(t)).catch(t=>st.warn("state",t))}}});function T_(t){return t!==String(parseFloat(t))}function QG(t){return Object.getOwnPropertyNames(t).filter(function(e){return t.propertyIsEnumerable(e)&&T_(e)})}function ez(t){return Object.keys(t).filter(T_)}function tz(t){var e=[];for(var n in t)t.hasOwnProperty(n)&&t.propertyIsEnumerable(n)&&T_(n)&&e.push(n);return e}var nz=Object.getOwnPropertyNames?QG:Object.keys?ez:tz,Gk=function(){function t(e){this.enumObj=e,this.keysList=Object.freeze(nz(e));for(var n=this.keysList.length,s=new Array(n),i=new Map,r=0;r=n.length,r={done:i,value:n.keysList[s]};return++s,r}},e[Symbol.iterator]=function(){return this},e},t.prototype.values=function(){var e,n=this,s=0;return e={next:function(){var i=s>=n.length,r={done:i,value:n.valuesList[s]};return++s,r}},e[Symbol.iterator]=function(){return this},e},t.prototype.entries=function(){var e,n=this,s=0;return e={next:function(){var i=s>=n.length,r={done:i,value:n[s]};return++s,r}},e[Symbol.iterator]=function(){return this},e},t.prototype[Symbol.iterator]=function(){return this.entries()},t.prototype.forEach=function(e,n){for(var s=this.length,i=0;i({usart_ports:[],motor_pins:[],mcu:"",target_name:"",git_version:"",quic_protocol_version:0,quic_protocol_semver:"v0.0.0",gyro_id:0,gyro_name:"",rx_protocol:0,rx_protocols:[],features:0}),getters:{has_feature(t){return e=>t.features==null?!0:t.features&e},quicVersionGt(t){return e=>Ps.gt(t.quic_protocol_semver,e)},quicVersionGte(t){return e=>Ps.gte(t.quic_protocol_semver,e)},is_read_only(t){const e=Js();return t.quic_protocol_version<5||e.failloop>0}},actions:{set_info(t){this.$patch(t),this.quic_protocol_version&&(this.quic_protocol_semver=Ru(this.quic_protocol_version));const e=ec();this.gyro_name=Xs(e.GyroType).getKeys()[this.gyro_id]}}}),Ih=ds("default_profile",{state:()=>({serial:{rx:0,smart_audio:0,hdzero:0},filter:{gyro:[{},{}],dterm:[{},{}]},osd:{callsign:"",elements:[],elements_hd:[]},meta:{version:0,datetime:0},motor:{invert_yaw:1},rate:{mode:0,silverware:{},betaflight:{}},voltage:{},receiver:{lqi_source:-1,aux:[]},pid:{pid_profile:0,pid_rates:[{}],stick_profile:0,stick_rates:[{}],big_angle:{},small_angle:{},throttle_dterm_attenuation:{}}}),getters:{has_legacy_stickrates(t){return Ps.lte(Ru(t.meta.version),"v0.1.0")},has_legacy_osd(t){return Ps.lte(Ru(t.meta.version),"v0.1.0")}},actions:{fetch_default_profile(){return wt.get(vn.DefaultProfile).then(t=>{t.meta.name=t.meta.name.replace(/\0/g,""),this.$patch(t)})}}}),vw=Symbol.for("yaml.alias"),jb=Symbol.for("yaml.document"),wa=Symbol.for("yaml.map"),Hk=Symbol.for("yaml.pair"),go=Symbol.for("yaml.scalar"),nd=Symbol.for("yaml.seq"),_i=Symbol.for("yaml.node.type"),tc=t=>!!t&&typeof t=="object"&&t[_i]===vw,sd=t=>!!t&&typeof t=="object"&&t[_i]===jb,id=t=>!!t&&typeof t=="object"&&t[_i]===wa,hn=t=>!!t&&typeof t=="object"&&t[_i]===Hk,Xt=t=>!!t&&typeof t=="object"&&t[_i]===go,rd=t=>!!t&&typeof t=="object"&&t[_i]===nd;function mn(t){if(t&&typeof t=="object")switch(t[_i]){case wa:case nd:return!0}return!1}function An(t){if(t&&typeof t=="object")switch(t[_i]){case vw:case wa:case go:case nd:return!0}return!1}const dz=t=>(Xt(t)||mn(t))&&!!t.anchor,Os=Symbol("break visit"),Vk=Symbol("skip children"),vr=Symbol("remove node");function Ma(t,e){const n=Wk(e);sd(t)?Hc(null,t.contents,n,Object.freeze([t]))===vr&&(t.contents=null):Hc(null,t,n,Object.freeze([]))}Ma.BREAK=Os;Ma.SKIP=Vk;Ma.REMOVE=vr;function Hc(t,e,n,s){const i=jk(t,e,n,s);if(An(i)||hn(i))return qk(t,s,i),Hc(t,i,n,s);if(typeof i!="symbol"){if(mn(e)){s=Object.freeze(s.concat(e));for(let r=0;rt.replace(/[!,[\]{}]/g,e=>fz[e]);class _s{constructor(e,n){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},_s.defaultYaml,e),this.tags=Object.assign({},_s.defaultTags,n)}clone(){const e=new _s(this.yaml,this.tags);return e.docStart=this.docStart,e}atDocument(){const e=new _s(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:_s.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},_s.defaultTags);break}return e}add(e,n){this.atNextDocument&&(this.yaml={explicit:_s.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},_s.defaultTags),this.atNextDocument=!1);const s=e.trim().split(/[ \t]+/),i=s.shift();switch(i){case"%TAG":{if(s.length!==2&&(n(0,"%TAG directive should contain exactly two parts"),s.length<2))return!1;const[r,o]=s;return this.tags[r]=o,!0}case"%YAML":{if(this.yaml.explicit=!0,s.length!==1)return n(0,"%YAML directive should contain exactly one part"),!1;const[r]=s;if(r==="1.1"||r==="1.2")return this.yaml.version=r,!0;{const o=/^\d+\.\d+$/.test(r);return n(6,`Unsupported YAML version ${r}`,o),!1}}default:return n(0,`Unknown directive ${i}`,!0),!1}}tagName(e,n){if(e==="!")return"!";if(e[0]!=="!")return n(`Not a valid tag: ${e}`),null;if(e[1]==="<"){const o=e.slice(2,-1);return o==="!"||o==="!!"?(n(`Verbatim tags aren't resolved, so ${e} is invalid.`),null):(e[e.length-1]!==">"&&n("Verbatim tags must end with a >"),o)}const[,s,i]=e.match(/^(.*!)([^!]*)$/s);i||n(`The ${e} tag has no suffix`);const r=this.tags[s];if(r)try{return r+decodeURIComponent(i)}catch(o){return n(String(o)),null}return s==="!"?e:(n(`Could not resolve tag: ${e}`),null)}tagString(e){for(const[n,s]of Object.entries(this.tags))if(e.startsWith(s))return n+hz(e.substring(s.length));return e[0]==="!"?e:`!<${e}>`}toString(e){const n=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],s=Object.entries(this.tags);let i;if(e&&s.length>0&&An(e.contents)){const r={};Ma(e.contents,(o,a)=>{An(a)&&a.tag&&(r[a.tag]=!0)}),i=Object.keys(r)}else i=[];for(const[r,o]of s)r==="!!"&&o==="tag:yaml.org,2002:"||(!e||i.some(a=>a.startsWith(o)))&&n.push(`%TAG ${r} ${o}`);return n.join(` +`)}}_s.defaultYaml={explicit:!1,version:"1.2"};_s.defaultTags={"!!":"tag:yaml.org,2002:"};function Yk(t){if(/[\x00-\x19\s,[\]{}]/.test(t)){const n=`Anchor must not contain whitespace or control characters: ${JSON.stringify(t)}`;throw new Error(n)}return!0}function Kk(t){const e=new Set;return Ma(t,{Value(n,s){s.anchor&&e.add(s.anchor)}}),e}function Xk(t,e){for(let n=1;;++n){const s=`${t}${n}`;if(!e.has(s))return s}}function pz(t,e){const n=[],s=new Map;let i=null;return{onAnchor:r=>{n.push(r),i||(i=Kk(t));const o=Xk(e,i);return i.add(o),o},setAnchors:()=>{for(const r of n){const o=s.get(r);if(typeof o=="object"&&o.anchor&&(Xt(o.node)||mn(o.node)))o.node.anchor=o.anchor;else{const a=new Error("Failed to resolve repeated object (this should not happen)");throw a.source=r,a}}},sourceObjects:s}}function Wc(t,e,n,s){if(s&&typeof s=="object")if(Array.isArray(s))for(let i=0,r=s.length;igi(s,String(i),n));if(t&&typeof t.toJSON=="function"){if(!n||!dz(t))return t.toJSON(e,n);const s={aliasCount:0,count:1,res:void 0};n.anchors.set(t,s),n.onCreate=r=>{s.res=r,delete n.onCreate};const i=t.toJSON(e,n);return n.onCreate&&n.onCreate(i),i}return typeof t=="bigint"&&!(n!=null&&n.keep)?Number(t):t}class ww{constructor(e){Object.defineProperty(this,_i,{value:e})}clone(){const e=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(e.range=this.range.slice()),e}toJS(e,{mapAsMap:n,maxAliasCount:s,onAnchor:i,reviver:r}={}){if(!sd(e))throw new TypeError("A document argument is required");const o={anchors:new Map,doc:e,keep:!0,mapAsMap:n===!0,mapKeyWarned:!1,maxAliasCount:typeof s=="number"?s:100},a=gi(this,"",o);if(typeof i=="function")for(const{count:l,res:c}of o.anchors.values())i(c,l);return typeof r=="function"?Wc(r,{"":a},"",a):a}}class M_ extends ww{constructor(e){super(vw),this.source=e,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(e){let n;return Ma(e,{Node:(s,i)=>{if(i===this)return Ma.BREAK;i.anchor===this.source&&(n=i)}}),n}toJSON(e,n){if(!n)return{source:this.source};const{anchors:s,doc:i,maxAliasCount:r}=n,o=this.resolve(i);if(!o){const l=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(l)}let a=s.get(o);if(a||(gi(o,null,n),a=s.get(o)),!a||a.res===void 0){const l="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(l)}if(r>=0&&(a.count+=1,a.aliasCount===0&&(a.aliasCount=Om(i,o,s)),a.count*a.aliasCount>r)){const l="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(l)}return a.res}toString(e,n,s){const i=`*${this.source}`;if(e){if(Yk(this.source),e.options.verifyAliasOrder&&!e.anchors.has(this.source)){const r=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(r)}if(e.implicitKey)return`${i} `}return i}}function Om(t,e,n){if(tc(e)){const s=e.resolve(t),i=n&&s&&n.get(s);return i?i.count*i.aliasCount:0}else if(mn(e)){let s=0;for(const i of e.items){const r=Om(t,i,n);r>s&&(s=r)}return s}else if(hn(e)){const s=Om(t,e.key,n),i=Om(t,e.value,n);return Math.max(s,i)}return 1}const Zk=t=>!t||typeof t!="function"&&typeof t!="object";class dt extends ww{constructor(e){super(go),this.value=e}toJSON(e,n){return n!=null&&n.keep?this.value:gi(this.value,e,n)}toString(){return String(this.value)}}dt.BLOCK_FOLDED="BLOCK_FOLDED";dt.BLOCK_LITERAL="BLOCK_LITERAL";dt.PLAIN="PLAIN";dt.QUOTE_DOUBLE="QUOTE_DOUBLE";dt.QUOTE_SINGLE="QUOTE_SINGLE";const mz="tag:yaml.org,2002:";function gz(t,e,n){if(e){const s=n.filter(r=>r.tag===e),i=s.find(r=>!r.format)??s[0];if(!i)throw new Error(`Tag ${e} not found`);return i}return n.find(s=>{var i;return((i=s.identify)==null?void 0:i.call(s,t))&&!s.format})}function Yf(t,e,n){var d,f,h;if(sd(t)&&(t=t.contents),An(t))return t;if(hn(t)){const _=(f=(d=n.schema[wa]).createNode)==null?void 0:f.call(d,n.schema,null,n);return _.items.push(t),_}(t instanceof String||t instanceof Number||t instanceof Boolean||typeof BigInt<"u"&&t instanceof BigInt)&&(t=t.valueOf());const{aliasDuplicateObjects:s,onAnchor:i,onTagObj:r,schema:o,sourceObjects:a}=n;let l;if(s&&t&&typeof t=="object"){if(l=a.get(t),l)return l.anchor||(l.anchor=i(t)),new M_(l.anchor);l={anchor:null,node:null},a.set(t,l)}e!=null&&e.startsWith("!!")&&(e=mz+e.slice(2));let c=gz(t,e,o.tags);if(!c){if(t&&typeof t.toJSON=="function"&&(t=t.toJSON()),!t||typeof t!="object"){const _=new dt(t);return l&&(l.node=_),_}c=t instanceof Map?o[wa]:Symbol.iterator in Object(t)?o[nd]:o[wa]}r&&(r(c),delete n.onTagObj);const u=c!=null&&c.createNode?c.createNode(n.schema,t,n):typeof((h=c==null?void 0:c.nodeClass)==null?void 0:h.from)=="function"?c.nodeClass.from(n.schema,t,n):new dt(t);return e?u.tag=e:c.default||(u.tag=c.tag),l&&(l.node=u),u}function ug(t,e,n){let s=n;for(let i=e.length-1;i>=0;--i){const r=e[i];if(typeof r=="number"&&Number.isInteger(r)&&r>=0){const o=[];o[r]=s,s=o}else s=new Map([[r,s]])}return Yf(s,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:t,sourceObjects:new Map})}const sf=t=>t==null||typeof t=="object"&&!!t[Symbol.iterator]().next().done;let k_=class extends ww{constructor(e,n){super(e),Object.defineProperty(this,"schema",{value:n,configurable:!0,enumerable:!1,writable:!0})}clone(e){const n=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return e&&(n.schema=e),n.items=n.items.map(s=>An(s)||hn(s)?s.clone(e):s),this.range&&(n.range=this.range.slice()),n}addIn(e,n){if(sf(e))this.add(n);else{const[s,...i]=e,r=this.get(s,!0);if(mn(r))r.addIn(i,n);else if(r===void 0&&this.schema)this.set(s,ug(this.schema,i,n));else throw new Error(`Expected YAML collection at ${s}. Remaining path: ${i}`)}}deleteIn(e){const[n,...s]=e;if(s.length===0)return this.delete(n);const i=this.get(n,!0);if(mn(i))return i.deleteIn(s);throw new Error(`Expected YAML collection at ${n}. Remaining path: ${s}`)}getIn(e,n){const[s,...i]=e,r=this.get(s,!0);return i.length===0?!n&&Xt(r)?r.value:r:mn(r)?r.getIn(i,n):void 0}hasAllNullValues(e){return this.items.every(n=>{if(!hn(n))return!1;const s=n.value;return s==null||e&&Xt(s)&&s.value==null&&!s.commentBefore&&!s.comment&&!s.tag})}hasIn(e){const[n,...s]=e;if(s.length===0)return this.has(n);const i=this.get(n,!0);return mn(i)?i.hasIn(s):!1}setIn(e,n){const[s,...i]=e;if(i.length===0)this.set(s,n);else{const r=this.get(s,!0);if(mn(r))r.setIn(i,n);else if(r===void 0&&this.schema)this.set(s,ug(this.schema,i,n));else throw new Error(`Expected YAML collection at ${s}. Remaining path: ${i}`)}}};k_.maxFlowStringSingleLineLength=60;const _z=t=>t.replace(/^(?!$)(?: $)?/gm,"#");function ro(t,e){return/^\n+$/.test(t)?t.substring(1):e?t.replace(/^(?! *$)/gm,e):t}const ua=(t,e,n)=>t.endsWith(` +`)?ro(n,e):n.includes(` +`)?` +`+ro(n,e):(t.endsWith(" ")?"":" ")+n,Jk="flow",qb="block",Im="quoted";function R_(t,e,n="flow",{indentAtStart:s,lineWidth:i=80,minContentWidth:r=20,onFold:o,onOverflow:a}={}){if(!i||i<0)return t;const l=Math.max(1+r,1+i-e.length);if(t.length<=l)return t;const c=[],u={};let d=i-e.length;typeof s=="number"&&(s>i-Math.max(2,r)?c.push(0):d=i-s);let f,h,_=!1,p=-1,m=-1,b=-1;n===qb&&(p=GS(t,p),p!==-1&&(d=p+l));for(let v;v=t[p+=1];){if(n===Im&&v==="\\"){switch(m=p,t[p+1]){case"x":p+=3;break;case"u":p+=5;break;case"U":p+=9;break;default:p+=1}b=p}if(v===` +`)n===qb&&(p=GS(t,p)),d=p+l,f=void 0;else{if(v===" "&&h&&h!==" "&&h!==` +`&&h!==" "){const x=t[p+1];x&&x!==" "&&x!==` +`&&x!==" "&&(f=p)}if(p>=d)if(f)c.push(f),d=f+l,f=void 0;else if(n===Im){for(;h===" "||h===" ";)h=v,v=t[p+=1],_=!0;const x=p>b+1?p-2:m-1;if(u[x])return t;c.push(x),u[x]=!0,d=x+l,f=void 0}else _=!0}h=v}if(_&&a&&a(),c.length===0)return t;o&&o();let y=t.slice(0,c[0]);for(let v=0;v({indentAtStart:e?t.indent.length:t.indentAtStart,lineWidth:t.options.lineWidth,minContentWidth:t.options.minContentWidth}),O_=t=>/^(%|---|\.\.\.)/m.test(t);function bz(t,e,n){if(!e||e<0)return!1;const s=e-n,i=t.length;if(i<=s)return!1;for(let r=0,o=0;rs)return!0;if(o=r+1,i-o<=s)return!1}return!0}function wf(t,e){const n=JSON.stringify(t);if(e.options.doubleQuotedAsJSON)return n;const{implicitKey:s}=e,i=e.options.doubleQuotedMinMultiLineLength,r=e.indent||(O_(t)?" ":"");let o="",a=0;for(let l=0,c=n[l];c;c=n[++l])if(c===" "&&n[l+1]==="\\"&&n[l+2]==="n"&&(o+=n.slice(a,l)+"\\ ",l+=1,a=l,c="\\"),c==="\\")switch(n[l+1]){case"u":{o+=n.slice(a,l);const u=n.substr(l+2,4);switch(u){case"0000":o+="\\0";break;case"0007":o+="\\a";break;case"000b":o+="\\v";break;case"001b":o+="\\e";break;case"0085":o+="\\N";break;case"00a0":o+="\\_";break;case"2028":o+="\\L";break;case"2029":o+="\\P";break;default:u.substr(0,2)==="00"?o+="\\x"+u.substr(2):o+=n.substr(l,6)}l+=5,a=l+1}break;case"n":if(s||n[l+2]==='"'||n.length +`;let d,f;for(f=n.length;f>0;--f){const w=n[f-1];if(w!==` +`&&w!==" "&&w!==" ")break}let h=n.substring(f);const _=h.indexOf(` +`);_===-1?d="-":n===h||_!==h.length-1?(d="+",r&&r()):d="",h&&(n=n.slice(0,-h.length),h[h.length-1]===` +`&&(h=h.slice(0,-1)),h=h.replace(Kb,`$&${c}`));let p=!1,m,b=-1;for(m=0;m")+(p?c?"2":"1":"")+d;if(t&&(x+=" "+a(t.replace(/ ?[\r\n]+/g," ")),i&&i()),u)return n=n.replace(/\n+/g,`$&${c}`),`${x} +${c}${y}${n}${h}`;n=n.replace(/\n+/g,` +$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${c}`);const S=R_(`${y}${n}${h}`,c,qb,C_(s,!0));return`${x} +${c}${S}`}function yz(t,e,n,s){const{type:i,value:r}=t,{actualString:o,implicitKey:a,indent:l,indentStep:c,inFlow:u}=e;if(a&&r.includes(` +`)||u&&/[[\]{},]/.test(r))return jc(r,e);if(!r||/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(r))return a||u||!r.includes(` +`)?jc(r,e):Lm(t,e,n,s);if(!a&&!u&&i!==dt.PLAIN&&r.includes(` +`))return Lm(t,e,n,s);if(O_(r)){if(l==="")return e.forceBlockIndent=!0,Lm(t,e,n,s);if(a&&l===c)return jc(r,e)}const d=r.replace(/\n+/g,`$& +${l}`);if(o){const f=p=>{var m;return p.default&&p.tag!=="tag:yaml.org,2002:str"&&((m=p.test)==null?void 0:m.test(d))},{compat:h,tags:_}=e.doc.schema;if(_.some(f)||h!=null&&h.some(f))return jc(r,e)}return a?d:R_(d,l,Jk,C_(e,!1))}function Lh(t,e,n,s){const{implicitKey:i,inFlow:r}=e,o=typeof t.value=="string"?t:Object.assign({},t,{value:String(t.value)});let{type:a}=t;a!==dt.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(o.value)&&(a=dt.QUOTE_DOUBLE);const l=u=>{switch(u){case dt.BLOCK_FOLDED:case dt.BLOCK_LITERAL:return i||r?jc(o.value,e):Lm(o,e,n,s);case dt.QUOTE_DOUBLE:return wf(o.value,e);case dt.QUOTE_SINGLE:return Yb(o.value,e);case dt.PLAIN:return yz(o,e,n,s);default:return null}};let c=l(a);if(c===null){const{defaultKeyType:u,defaultStringType:d}=e.options,f=i&&u||d;if(c=l(f),c===null)throw new Error(`Unsupported default string type ${f}`)}return c}function Qk(t,e){const n=Object.assign({blockQuote:!0,commentString:_z,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trueStr:"true",verifyAliasOrder:!0},t.schema.toStringOptions,e);let s;switch(n.collectionStyle){case"block":s=!1;break;case"flow":s=!0;break;default:s=null}return{anchors:new Set,doc:t,flowCollectionPadding:n.flowCollectionPadding?" ":"",indent:"",indentStep:typeof n.indent=="number"?" ".repeat(n.indent):" ",inFlow:s,options:n}}function vz(t,e){var i;if(e.tag){const r=t.filter(o=>o.tag===e.tag);if(r.length>0)return r.find(o=>o.format===e.format)??r[0]}let n,s;if(Xt(e)){s=e.value;const r=t.filter(o=>{var a;return(a=o.identify)==null?void 0:a.call(o,s)});n=r.find(o=>o.format===e.format)??r.find(o=>!o.format)}else s=e,n=t.find(r=>r.nodeClass&&s instanceof r.nodeClass);if(!n){const r=((i=s==null?void 0:s.constructor)==null?void 0:i.name)??typeof s;throw new Error(`Tag not resolved for ${r} value`)}return n}function wz(t,e,{anchors:n,doc:s}){if(!s.directives)return"";const i=[],r=(Xt(t)||mn(t))&&t.anchor;r&&Yk(r)&&(n.add(r),i.push(`&${r}`));const o=t.tag?t.tag:e.default?null:e.tag;return o&&i.push(s.directives.tagString(o)),i.join(" ")}function Iu(t,e,n,s){var l;if(hn(t))return t.toString(e,n,s);if(tc(t)){if(e.doc.directives)return t.toString(e);if((l=e.resolvedAliases)!=null&&l.has(t))throw new TypeError("Cannot stringify circular structure without alias nodes");e.resolvedAliases?e.resolvedAliases.add(t):e.resolvedAliases=new Set([t]),t=t.resolve(e.doc)}let i;const r=An(t)?t:e.doc.createNode(t,{onTagObj:c=>i=c});i||(i=vz(e.doc.schema.tags,r));const o=wz(r,i,e);o.length>0&&(e.indentAtStart=(e.indentAtStart??0)+o.length+1);const a=typeof i.stringify=="function"?i.stringify(r,e,n,s):Xt(r)?Lh(r,e,n,s):r.toString(e,n,s);return o?Xt(r)||a[0]==="{"||a[0]==="["?`${o} ${a}`:`${o} +${e.indent}${a}`:a}function xz({key:t,value:e},n,s,i){const{allNullValues:r,doc:o,indent:a,indentStep:l,options:{commentString:c,indentSeq:u,simpleKeys:d}}=n;let f=An(t)&&t.comment||null;if(d){if(f)throw new Error("With simple keys, key nodes cannot have comments");if(mn(t)){const T="With simple keys, collection cannot be used as a key value";throw new Error(T)}}let h=!d&&(!t||f&&e==null&&!n.inFlow||mn(t)||(Xt(t)?t.type===dt.BLOCK_FOLDED||t.type===dt.BLOCK_LITERAL:typeof t=="object"));n=Object.assign({},n,{allNullValues:!1,implicitKey:!h&&(d||!r),indent:a+l});let _=!1,p=!1,m=Iu(t,n,()=>_=!0,()=>p=!0);if(!h&&!n.inFlow&&m.length>1024){if(d)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");h=!0}if(n.inFlow){if(r||e==null)return _&&s&&s(),m===""?"?":h?`? ${m}`:m}else if(r&&!d||e==null&&h)return m=`? ${m}`,f&&!_?m+=ua(m,n.indent,c(f)):p&&i&&i(),m;_&&(f=null),h?(f&&(m+=ua(m,n.indent,c(f))),m=`? ${m} +${a}:`):(m=`${m}:`,f&&(m+=ua(m,n.indent,c(f))));let b,y,v;An(e)?(b=!!e.spaceBefore,y=e.commentBefore,v=e.comment):(b=!1,y=null,v=null,e&&typeof e=="object"&&(e=o.createNode(e))),n.implicitKey=!1,!h&&!f&&Xt(e)&&(n.indentAtStart=m.length+1),p=!1,!u&&l.length>=2&&!n.inFlow&&!h&&rd(e)&&!e.flow&&!e.tag&&!e.anchor&&(n.indent=n.indent.substring(2));let x=!1;const S=Iu(e,n,()=>x=!0,()=>p=!0);let w=" ";if(f||b||y){if(w=b?` +`:"",y){const T=c(y);w+=` +${ro(T,n.indent)}`}S===""&&!n.inFlow?w===` +`&&(w=` + +`):w+=` +${n.indent}`}else if(!h&&mn(e)){const T=S[0],E=S.indexOf(` +`),A=E!==-1,O=n.inFlow??e.flow??e.items.length===0;if(A||!O){let I=!1;if(A&&(T==="&"||T==="!")){let B=S.indexOf(" ");T==="&"&&B!==-1&&Bt===zS||Xt(t)&&t.value===zS&&(!t.type||t.type===dt.PLAIN);function V0(t,e,n){const s=t&&tc(n)?n.resolve(t.doc):n;if(!id(s))throw new Error("Merge sources must be maps or map aliases");const i=s.toJSON(null,t,Map);for(const[r,o]of i)e instanceof Map?e.has(r)||e.set(r,o):e instanceof Set?e.add(r):Object.prototype.hasOwnProperty.call(e,r)||Object.defineProperty(e,r,{value:o,writable:!0,enumerable:!0,configurable:!0});return e}function Ez(t,e,n){if(e===null)return"";if(typeof e!="object")return String(e);if(An(t)&&(n!=null&&n.doc)){const s=Qk(n.doc,{});s.anchors=new Set;for(const r of n.anchors.keys())s.anchors.add(r.anchor);s.inFlow=!0,s.inStringifyKey=!0;const i=t.toString(s);if(!n.mapKeyWarned){let r=JSON.stringify(i);r.length>40&&(r=r.substring(0,36)+'..."'),e8(n.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${r}. Set mapAsMap: true to use object keys.`),n.mapKeyWarned=!0}return i}return JSON.stringify(e)}function xw(t,e,n){const s=Yf(t,void 0,n),i=Yf(e,void 0,n);return new cs(s,i)}class cs{constructor(e,n=null){Object.defineProperty(this,_i,{value:Hk}),this.key=e,this.value=n}clone(e){let{key:n,value:s}=this;return An(n)&&(n=n.clone(e)),An(s)&&(s=s.clone(e)),new cs(n,s)}toJSON(e,n){const s=n!=null&&n.mapAsMap?new Map:{};return t8(n,s,this)}toString(e,n,s){return e!=null&&e.doc?xz(this,e,n,s):JSON.stringify(this)}}function n8(t,e,n){return(e.inFlow??t.flow?Az:Tz)(t,e,n)}function Tz({comment:t,items:e},n,{blockItemPrefix:s,flowChars:i,itemIndent:r,onChompKeep:o,onComment:a}){const{indent:l,options:{commentString:c}}=n,u=Object.assign({},n,{indent:r,type:null});let d=!1;const f=[];for(let _=0;_m=null,()=>d=!0);m&&(b+=ua(b,r,c(m))),d&&m&&(d=!1),f.push(s+b)}let h;if(f.length===0)h=i.start+i.end;else{h=f[0];for(let _=1;_v=null);bf||x.includes(` +`))&&(d=!0),h.push(x),f=h.length}let _;const{start:p,end:m}=s;if(h.length===0)_=p+m;else if(d||(d=h.reduce((y,v)=>y+v.length+2,2)>k_.maxFlowStringSingleLineLength),d){_=p;for(const b of h)_+=b?` +${a}${o}${b}`:` +`;_+=` +${o}${m}`}else _=`${p}${l}${h.join(" ")}${l}${m}`;return t&&(_+=ua(_,o,c(t)),r&&r()),_}function dg({indent:t,options:{commentString:e}},n,s,i){if(s&&i&&(s=s.replace(/^\n+/,"")),s){const r=ro(e(s),t);n.push(r.trimStart())}}function ml(t,e){const n=Xt(e)?e.value:e;for(const s of t)if(hn(s)&&(s.key===e||s.key===n||Xt(s.key)&&s.key.value===n))return s}class js extends k_{static get tagName(){return"tag:yaml.org,2002:map"}constructor(e){super(wa,e),this.items=[]}static from(e,n,s){const{keepUndefined:i,replacer:r}=s,o=new this(e),a=(l,c)=>{if(typeof r=="function")c=r.call(n,l,c);else if(Array.isArray(r)&&!r.includes(l))return;(c!==void 0||i)&&o.items.push(xw(l,c,s))};if(n instanceof Map)for(const[l,c]of n)a(l,c);else if(n&&typeof n=="object")for(const l of Object.keys(n))a(l,n[l]);return typeof e.sortMapEntries=="function"&&o.items.sort(e.sortMapEntries),o}add(e,n){var o;let s;hn(e)?s=e:!e||typeof e!="object"||!("key"in e)?s=new cs(e,e==null?void 0:e.value):s=new cs(e.key,e.value);const i=ml(this.items,s.key),r=(o=this.schema)==null?void 0:o.sortMapEntries;if(i){if(!n)throw new Error(`Key ${s.key} already set`);Xt(i.value)&&Zk(s.value)?i.value.value=s.value:i.value=s.value}else if(r){const a=this.items.findIndex(l=>r(s,l)<0);a===-1?this.items.push(s):this.items.splice(a,0,s)}else this.items.push(s)}delete(e){const n=ml(this.items,e);return n?this.items.splice(this.items.indexOf(n),1).length>0:!1}get(e,n){const s=ml(this.items,e),i=s==null?void 0:s.value;return(!n&&Xt(i)?i.value:i)??void 0}has(e){return!!ml(this.items,e)}set(e,n){this.add(new cs(e,n),!0)}toJSON(e,n,s){const i=s?new s:n!=null&&n.mapAsMap?new Map:{};n!=null&&n.onCreate&&n.onCreate(i);for(const r of this.items)t8(n,i,r);return i}toString(e,n,s){if(!e)return JSON.stringify(this);for(const i of this.items)if(!hn(i))throw new Error(`Map items must all be pairs; found ${JSON.stringify(i)} instead`);return!e.allNullValues&&this.hasAllNullValues(!1)&&(e=Object.assign({},e,{allNullValues:!0})),n8(this,e,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:e.indent||"",onChompKeep:s,onComment:n})}}const od={collection:"map",default:!0,nodeClass:js,tag:"tag:yaml.org,2002:map",resolve(t,e){return id(t)||e("Expected a mapping for this tag"),t},createNode:(t,e,n)=>js.from(t,e,n)};class ka extends k_{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(e){super(nd,e),this.items=[]}add(e){this.items.push(e)}delete(e){const n=hp(e);return typeof n!="number"?!1:this.items.splice(n,1).length>0}get(e,n){const s=hp(e);if(typeof s!="number")return;const i=this.items[s];return!n&&Xt(i)?i.value:i}has(e){const n=hp(e);return typeof n=="number"&&n=0?e:null}const ad={collection:"seq",default:!0,nodeClass:ka,tag:"tag:yaml.org,2002:seq",resolve(t,e){return rd(t)||e("Expected a sequence for this tag"),t},createNode:(t,e,n)=>ka.from(t,e,n)},I_={identify:t=>typeof t=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:t=>t,stringify(t,e,n,s){return e=Object.assign({actualString:!0},e),Lh(t,e,n,s)}},L_={identify:t=>t==null,createNode:()=>new dt(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new dt(null),stringify:({source:t},e)=>typeof t=="string"&&L_.test.test(t)?t:e.options.nullStr},Sw={identify:t=>typeof t=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:t=>new dt(t[0]==="t"||t[0]==="T"),stringify({source:t,value:e},n){if(t&&Sw.test.test(t)){const s=t[0]==="t"||t[0]==="T";if(e===s)return t}return e?n.options.trueStr:n.options.falseStr}};function Ji({format:t,minFractionDigits:e,tag:n,value:s}){if(typeof s=="bigint")return String(s);const i=typeof s=="number"?s:Number(s);if(!isFinite(i))return isNaN(i)?".nan":i<0?"-.inf":".inf";let r=JSON.stringify(s);if(!t&&e&&(!n||n==="tag:yaml.org,2002:float")&&/^\d/.test(r)){let o=r.indexOf(".");o<0&&(o=r.length,r+=".");let a=e-(r.length-o-1);for(;a-- >0;)r+="0"}return r}const s8={identify:t=>typeof t=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF|nan|NaN|NAN))$/,resolve:t=>t.slice(-3).toLowerCase()==="nan"?NaN:t[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:Ji},i8={identify:t=>typeof t=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:t=>parseFloat(t),stringify(t){const e=Number(t.value);return isFinite(e)?e.toExponential():Ji(t)}},r8={identify:t=>typeof t=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(t){const e=new dt(parseFloat(t)),n=t.indexOf(".");return n!==-1&&t[t.length-1]==="0"&&(e.minFractionDigits=t.length-n-1),e},stringify:Ji},P_=t=>typeof t=="bigint"||Number.isInteger(t),Ew=(t,e,n,{intAsBigInt:s})=>s?BigInt(t):parseInt(t.substring(e),n);function o8(t,e,n){const{value:s}=t;return P_(s)&&s>=0?n+s.toString(e):Ji(t)}const a8={identify:t=>P_(t)&&t>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(t,e,n)=>Ew(t,2,8,n),stringify:t=>o8(t,8,"0o")},l8={identify:P_,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(t,e,n)=>Ew(t,0,10,n),stringify:Ji},c8={identify:t=>P_(t)&&t>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(t,e,n)=>Ew(t,2,16,n),stringify:t=>o8(t,16,"0x")},Mz=[od,ad,I_,L_,Sw,a8,l8,c8,s8,i8,r8];function HS(t){return typeof t=="bigint"||Number.isInteger(t)}const pp=({value:t})=>JSON.stringify(t),kz=[{identify:t=>typeof t=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:t=>t,stringify:pp},{identify:t=>t==null,createNode:()=>new dt(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:pp},{identify:t=>typeof t=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true|false$/,resolve:t=>t==="true",stringify:pp},{identify:HS,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(t,e,{intAsBigInt:n})=>n?BigInt(t):parseInt(t,10),stringify:({value:t})=>HS(t)?t.toString():JSON.stringify(t)},{identify:t=>typeof t=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:t=>parseFloat(t),stringify:pp}],Rz={default:!0,tag:"",test:/^/,resolve(t,e){return e(`Unresolved plain scalar ${JSON.stringify(t)}`),t}},Cz=[od,ad].concat(kz,Rz),Tw={identify:t=>t instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(t,e){if(typeof Buffer=="function")return Buffer.from(t,"base64");if(typeof atob=="function"){const n=atob(t.replace(/[\n\r]/g,"")),s=new Uint8Array(n.length);for(let i=0;i1&&e("Each pair must have its own sequence indicator");const i=s.items[0]||new cs(new dt(null));if(s.commentBefore&&(i.key.commentBefore=i.key.commentBefore?`${s.commentBefore} +${i.key.commentBefore}`:s.commentBefore),s.comment){const r=i.value??i.key;r.comment=r.comment?`${s.comment} +${r.comment}`:s.comment}s=i}t.items[n]=hn(s)?s:new cs(s)}}else e("Expected a sequence for this tag");return t}function d8(t,e,n){const{replacer:s}=n,i=new ka(t);i.tag="tag:yaml.org,2002:pairs";let r=0;if(e&&Symbol.iterator in Object(e))for(let o of e){typeof s=="function"&&(o=s.call(e,String(r++),o));let a,l;if(Array.isArray(o))if(o.length===2)a=o[0],l=o[1];else throw new TypeError(`Expected [key, value] tuple: ${o}`);else if(o&&o instanceof Object){const c=Object.keys(o);if(c.length===1)a=c[0],l=o[a];else throw new TypeError(`Expected tuple with one key, not ${c.length} keys`)}else a=o;i.items.push(xw(a,l,n))}return i}const Aw={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:u8,createNode:d8};class lu extends ka{constructor(){super(),this.add=js.prototype.add.bind(this),this.delete=js.prototype.delete.bind(this),this.get=js.prototype.get.bind(this),this.has=js.prototype.has.bind(this),this.set=js.prototype.set.bind(this),this.tag=lu.tag}toJSON(e,n){if(!n)return super.toJSON(e);const s=new Map;n!=null&&n.onCreate&&n.onCreate(s);for(const i of this.items){let r,o;if(hn(i)?(r=gi(i.key,"",n),o=gi(i.value,r,n)):r=gi(i,"",n),s.has(r))throw new Error("Ordered maps must not include duplicate keys");s.set(r,o)}return s}static from(e,n,s){const i=d8(e,n,s),r=new this;return r.items=i.items,r}}lu.tag="tag:yaml.org,2002:omap";const Mw={collection:"seq",identify:t=>t instanceof Map,nodeClass:lu,default:!1,tag:"tag:yaml.org,2002:omap",resolve(t,e){const n=u8(t,e),s=[];for(const{key:i}of n.items)Xt(i)&&(s.includes(i.value)?e(`Ordered maps must not include duplicate keys: ${i.value}`):s.push(i.value));return Object.assign(new lu,n)},createNode:(t,e,n)=>lu.from(t,e,n)};function f8({value:t,source:e},n){return e&&(t?h8:p8).test.test(e)?e:t?n.options.trueStr:n.options.falseStr}const h8={identify:t=>t===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new dt(!0),stringify:f8},p8={identify:t=>t===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/i,resolve:()=>new dt(!1),stringify:f8},Oz={identify:t=>typeof t=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?\.(?:inf|Inf|INF|nan|NaN|NAN)$/,resolve:t=>t.slice(-3).toLowerCase()==="nan"?NaN:t[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:Ji},Iz={identify:t=>typeof t=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:t=>parseFloat(t.replace(/_/g,"")),stringify(t){const e=Number(t.value);return isFinite(e)?e.toExponential():Ji(t)}},Lz={identify:t=>typeof t=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(t){const e=new dt(parseFloat(t.replace(/_/g,""))),n=t.indexOf(".");if(n!==-1){const s=t.substring(n+1).replace(/_/g,"");s[s.length-1]==="0"&&(e.minFractionDigits=s.length)}return e},stringify:Ji},Ph=t=>typeof t=="bigint"||Number.isInteger(t);function D_(t,e,n,{intAsBigInt:s}){const i=t[0];if((i==="-"||i==="+")&&(e+=1),t=t.substring(e).replace(/_/g,""),s){switch(n){case 2:t=`0b${t}`;break;case 8:t=`0o${t}`;break;case 16:t=`0x${t}`;break}const o=BigInt(t);return i==="-"?BigInt(-1)*o:o}const r=parseInt(t,n);return i==="-"?-1*r:r}function kw(t,e,n){const{value:s}=t;if(Ph(s)){const i=s.toString(e);return s<0?"-"+n+i.substr(1):n+i}return Ji(t)}const Pz={identify:Ph,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(t,e,n)=>D_(t,2,2,n),stringify:t=>kw(t,2,"0b")},Dz={identify:Ph,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(t,e,n)=>D_(t,1,8,n),stringify:t=>kw(t,8,"0")},Fz={identify:Ph,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(t,e,n)=>D_(t,0,10,n),stringify:Ji},Nz={identify:Ph,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(t,e,n)=>D_(t,2,16,n),stringify:t=>kw(t,16,"0x")};class cu extends js{constructor(e){super(e),this.tag=cu.tag}add(e){let n;hn(e)?n=e:e&&typeof e=="object"&&"key"in e&&"value"in e&&e.value===null?n=new cs(e.key,null):n=new cs(e,null),ml(this.items,n.key)||this.items.push(n)}get(e,n){const s=ml(this.items,e);return!n&&hn(s)?Xt(s.key)?s.key.value:s.key:s}set(e,n){if(typeof n!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof n}`);const s=ml(this.items,e);s&&!n?this.items.splice(this.items.indexOf(s),1):!s&&n&&this.items.push(new cs(e))}toJSON(e,n){return super.toJSON(e,n,Set)}toString(e,n,s){if(!e)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},e,{allNullValues:!0}),n,s);throw new Error("Set items must all have null values")}static from(e,n,s){const{replacer:i}=s,r=new this(e);if(n&&Symbol.iterator in Object(n))for(let o of n)typeof i=="function"&&(o=i.call(n,o,o)),r.items.push(xw(o,null,s));return r}}cu.tag="tag:yaml.org,2002:set";const Rw={collection:"map",identify:t=>t instanceof Set,nodeClass:cu,default:!1,tag:"tag:yaml.org,2002:set",createNode:(t,e,n)=>cu.from(t,e,n),resolve(t,e){if(id(t)){if(t.hasAllNullValues(!0))return Object.assign(new cu,t);e("Set items must all have null values")}else e("Expected a mapping for this tag");return t}};function Cw(t,e){const n=t[0],s=n==="-"||n==="+"?t.substring(1):t,i=o=>e?BigInt(o):Number(o),r=s.replace(/_/g,"").split(":").reduce((o,a)=>o*i(60)+i(a),i(0));return n==="-"?i(-1)*r:r}function m8(t){let{value:e}=t,n=o=>o;if(typeof e=="bigint")n=o=>BigInt(o);else if(isNaN(e)||!isFinite(e))return Ji(t);let s="";e<0&&(s="-",e*=n(-1));const i=n(60),r=[e%i];return e<60?r.unshift(0):(e=(e-r[0])/i,r.unshift(e%i),e>=60&&(e=(e-r[0])/i,r.unshift(e))),s+r.map(o=>String(o).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}const g8={identify:t=>typeof t=="bigint"||Number.isInteger(t),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(t,e,{intAsBigInt:n})=>Cw(t,n),stringify:m8},_8={identify:t=>typeof t=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:t=>Cw(t,!1),stringify:m8},F_={identify:t=>t instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve(t){const e=t.match(F_.test);if(!e)throw new Error("!!timestamp expects a date, starting with yyyy-mm-dd");const[,n,s,i,r,o,a]=e.map(Number),l=e[7]?Number((e[7]+"00").substr(1,3)):0;let c=Date.UTC(n,s-1,i,r||0,o||0,a||0,l);const u=e[8];if(u&&u!=="Z"){let d=Cw(u,!1);Math.abs(d)<30&&(d*=60),c-=6e4*d}return new Date(c)},stringify:({value:t})=>t.toISOString().replace(/((T00:00)?:00)?\.000Z$/,"")},VS=[od,ad,I_,L_,h8,p8,Pz,Dz,Fz,Nz,Oz,Iz,Lz,Tw,Mw,Aw,Rw,g8,_8,F_],WS=new Map([["core",Mz],["failsafe",[od,ad,I_]],["json",Cz],["yaml11",VS],["yaml-1.1",VS]]),jS={binary:Tw,bool:Sw,float:r8,floatExp:i8,floatNaN:s8,floatTime:_8,int:l8,intHex:c8,intOct:a8,intTime:g8,map:od,null:L_,omap:Mw,pairs:Aw,seq:ad,set:Rw,timestamp:F_},$z={"tag:yaml.org,2002:binary":Tw,"tag:yaml.org,2002:omap":Mw,"tag:yaml.org,2002:pairs":Aw,"tag:yaml.org,2002:set":Rw,"tag:yaml.org,2002:timestamp":F_};function W0(t,e){let n=WS.get(e);if(!n)if(Array.isArray(t))n=[];else{const s=Array.from(WS.keys()).filter(i=>i!=="yaml11").map(i=>JSON.stringify(i)).join(", ");throw new Error(`Unknown schema "${e}"; use one of ${s} or define customTags array`)}if(Array.isArray(t))for(const s of t)n=n.concat(s);else typeof t=="function"&&(n=t(n.slice()));return n.map(s=>{if(typeof s!="string")return s;const i=jS[s];if(i)return i;const r=Object.keys(jS).map(o=>JSON.stringify(o)).join(", ");throw new Error(`Unknown custom tag "${s}"; use one of ${r}`)})}const Uz=(t,e)=>t.keye.key?1:0;class N_{constructor({compat:e,customTags:n,merge:s,resolveKnownTags:i,schema:r,sortMapEntries:o,toStringDefaults:a}){this.compat=Array.isArray(e)?W0(e,"compat"):e?W0(null,e):null,this.merge=!!s,this.name=typeof r=="string"&&r||"core",this.knownTags=i?$z:{},this.tags=W0(n,this.name),this.toStringOptions=a??null,Object.defineProperty(this,wa,{value:od}),Object.defineProperty(this,go,{value:I_}),Object.defineProperty(this,nd,{value:ad}),this.sortMapEntries=typeof o=="function"?o:o===!0?Uz:null}clone(){const e=Object.create(N_.prototype,Object.getOwnPropertyDescriptors(this));return e.tags=this.tags.slice(),e}}function Bz(t,e){var l;const n=[];let s=e.directives===!0;if(e.directives!==!1&&t.directives){const c=t.directives.toString(t);c?(n.push(c),s=!0):t.directives.docStart&&(s=!0)}s&&n.push("---");const i=Qk(t,e),{commentString:r}=i.options;if(t.commentBefore){n.length!==1&&n.unshift("");const c=r(t.commentBefore);n.unshift(ro(c,""))}let o=!1,a=null;if(t.contents){if(An(t.contents)){if(t.contents.spaceBefore&&s&&n.push(""),t.contents.commentBefore){const d=r(t.contents.commentBefore);n.push(ro(d,""))}i.forceBlockIndent=!!t.comment,a=t.contents.comment}const c=a?void 0:()=>o=!0;let u=Iu(t.contents,i,()=>a=null,c);a&&(u+=ua(u,"",r(a))),(u[0]==="|"||u[0]===">")&&n[n.length-1]==="---"?n[n.length-1]=`--- ${u}`:n.push(u)}else n.push(Iu(t.contents,i));if((l=t.directives)!=null&&l.docEnd)if(t.comment){const c=r(t.comment);c.includes(` +`)?(n.push("..."),n.push(ro(c,""))):n.push(`... ${c}`)}else n.push("...");else{let c=t.comment;c&&o&&(c=c.replace(/^\n+/,"")),c&&((!o||a)&&n[n.length-1]!==""&&n.push(""),n.push(ro(r(c),"")))}return n.join(` +`)+` +`}class ld{constructor(e,n,s){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,_i,{value:jb});let i=null;typeof n=="function"||Array.isArray(n)?i=n:s===void 0&&n&&(s=n,n=void 0);const r=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,uniqueKeys:!0,version:"1.2"},s);this.options=r;let{version:o}=r;s!=null&&s._directives?(this.directives=s._directives.atDocument(),this.directives.yaml.explicit&&(o=this.directives.yaml.version)):this.directives=new _s({version:o}),this.setSchema(o,s),this.contents=e===void 0?null:this.createNode(e,i,s)}clone(){const e=Object.create(ld.prototype,{[_i]:{value:jb}});return e.commentBefore=this.commentBefore,e.comment=this.comment,e.errors=this.errors.slice(),e.warnings=this.warnings.slice(),e.options=Object.assign({},this.options),this.directives&&(e.directives=this.directives.clone()),e.schema=this.schema.clone(),e.contents=An(this.contents)?this.contents.clone(e.schema):this.contents,this.range&&(e.range=this.range.slice()),e}add(e){hc(this.contents)&&this.contents.add(e)}addIn(e,n){hc(this.contents)&&this.contents.addIn(e,n)}createAlias(e,n){if(!e.anchor){const s=Kk(this);e.anchor=!n||s.has(n)?Xk(n||"a",s):n}return new M_(e.anchor)}createNode(e,n,s){let i;if(typeof n=="function")e=n.call({"":e},"",e),i=n;else if(Array.isArray(n)){const m=y=>typeof y=="number"||y instanceof String||y instanceof Number,b=n.filter(m).map(String);b.length>0&&(n=n.concat(b)),i=n}else s===void 0&&n&&(s=n,n=void 0);const{aliasDuplicateObjects:r,anchorPrefix:o,flow:a,keepUndefined:l,onTagObj:c,tag:u}=s??{},{onAnchor:d,setAnchors:f,sourceObjects:h}=pz(this,o||"a"),_={aliasDuplicateObjects:r??!0,keepUndefined:l??!1,onAnchor:d,onTagObj:c,replacer:i,schema:this.schema,sourceObjects:h},p=Yf(e,u,_);return a&&mn(p)&&(p.flow=!0),f(),p}createPair(e,n,s={}){const i=this.createNode(e,null,s),r=this.createNode(n,null,s);return new cs(i,r)}delete(e){return hc(this.contents)?this.contents.delete(e):!1}deleteIn(e){return sf(e)?this.contents==null?!1:(this.contents=null,!0):hc(this.contents)?this.contents.deleteIn(e):!1}get(e,n){return mn(this.contents)?this.contents.get(e,n):void 0}getIn(e,n){return sf(e)?!n&&Xt(this.contents)?this.contents.value:this.contents:mn(this.contents)?this.contents.getIn(e,n):void 0}has(e){return mn(this.contents)?this.contents.has(e):!1}hasIn(e){return sf(e)?this.contents!==void 0:mn(this.contents)?this.contents.hasIn(e):!1}set(e,n){this.contents==null?this.contents=ug(this.schema,[e],n):hc(this.contents)&&this.contents.set(e,n)}setIn(e,n){sf(e)?this.contents=n:this.contents==null?this.contents=ug(this.schema,Array.from(e),n):hc(this.contents)&&this.contents.setIn(e,n)}setSchema(e,n={}){typeof e=="number"&&(e=String(e));let s;switch(e){case"1.1":this.directives?this.directives.yaml.version="1.1":this.directives=new _s({version:"1.1"}),s={merge:!0,resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":this.directives?this.directives.yaml.version=e:this.directives=new _s({version:e}),s={merge:!1,resolveKnownTags:!0,schema:"core"};break;case null:this.directives&&delete this.directives,s=null;break;default:{const i=JSON.stringify(e);throw new Error(`Expected '1.1', '1.2' or null as first argument, but found: ${i}`)}}if(n.schema instanceof Object)this.schema=n.schema;else if(s)this.schema=new N_(Object.assign(s,n));else throw new Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:e,jsonArg:n,mapAsMap:s,maxAliasCount:i,onAnchor:r,reviver:o}={}){const a={anchors:new Map,doc:this,keep:!e,mapAsMap:s===!0,mapKeyWarned:!1,maxAliasCount:typeof i=="number"?i:100},l=gi(this.contents,n??"",a);if(typeof r=="function")for(const{count:c,res:u}of a.anchors.values())r(u,c);return typeof o=="function"?Wc(o,{"":l},"",l):l}toJSON(e,n){return this.toJS({json:!0,jsonArg:e,mapAsMap:!1,onAnchor:n})}toString(e={}){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");if("indent"in e&&(!Number.isInteger(e.indent)||Number(e.indent)<=0)){const n=JSON.stringify(e.indent);throw new Error(`"indent" option must be a positive integer, not ${n}`)}return Bz(this,e)}}function hc(t){if(mn(t))return!0;throw new Error("Expected a YAML collection as document contents")}class Ow extends Error{constructor(e,n,s,i){super(),this.name=e,this.code=s,this.message=i,this.pos=n}}class gl extends Ow{constructor(e,n,s){super("YAMLParseError",e,n,s)}}class b8 extends Ow{constructor(e,n,s){super("YAMLWarning",e,n,s)}}const fg=(t,e)=>n=>{if(n.pos[0]===-1)return;n.linePos=n.pos.map(a=>e.linePos(a));const{line:s,col:i}=n.linePos[0];n.message+=` at line ${s}, column ${i}`;let r=i-1,o=t.substring(e.lineStarts[s-1],e.lineStarts[s]).replace(/[\n\r]+$/,"");if(r>=60&&o.length>80){const a=Math.min(r-39,o.length-79);o="…"+o.substring(a),r-=a-1}if(o.length>80&&(o=o.substring(0,79)+"…"),s>1&&/^ *$/.test(o.substring(0,r))){let a=t.substring(e.lineStarts[s-2],e.lineStarts[s-1]);a.length>80&&(a=a.substring(0,79)+`… +`),o=a+o}if(/[^ ]/.test(o)){let a=1;const l=n.linePos[1];l&&l.line===s&&l.col>i&&(a=Math.max(1,Math.min(l.col-i,80-r)));const c=" ".repeat(r)+"^".repeat(a);n.message+=`: + +${o} +${c} +`}};function Lu(t,{flow:e,indicator:n,next:s,offset:i,onError:r,startOnNewline:o}){let a=!1,l=o,c=o,u="",d="",f=!1,h=!1,_=!1,p=null,m=null,b=null,y=null,v=null;for(const w of t)switch(_&&(w.type!=="space"&&w.type!=="newline"&&w.type!=="comma"&&r(w.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),_=!1),w.type){case"space":!e&&l&&n!=="doc-start"&&w.source[0]===" "&&r(w,"TAB_AS_INDENT","Tabs are not allowed as indentation"),c=!0;break;case"comment":{c||r(w,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");const T=w.source.substring(1)||" ";u?u+=d+T:u=T,d="",l=!1;break}case"newline":l?u?u+=w.source:a=!0:d+=w.source,l=!0,f=!0,(p||m)&&(h=!0),c=!0;break;case"anchor":p&&r(w,"MULTIPLE_ANCHORS","A node can have at most one anchor"),w.source.endsWith(":")&&r(w.offset+w.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0),p=w,v===null&&(v=w.offset),l=!1,c=!1,_=!0;break;case"tag":{m&&r(w,"MULTIPLE_TAGS","A node can have at most one tag"),m=w,v===null&&(v=w.offset),l=!1,c=!1,_=!0;break}case n:(p||m)&&r(w,"BAD_PROP_ORDER",`Anchors and tags must be after the ${w.source} indicator`),y&&r(w,"UNEXPECTED_TOKEN",`Unexpected ${w.source} in ${e??"collection"}`),y=w,l=!1,c=!1;break;case"comma":if(e){b&&r(w,"UNEXPECTED_TOKEN",`Unexpected , in ${e}`),b=w,l=!1,c=!1;break}default:r(w,"UNEXPECTED_TOKEN",`Unexpected ${w.type} token`),l=!1,c=!1}const x=t[t.length-1],S=x?x.offset+x.source.length:i;return _&&s&&s.type!=="space"&&s.type!=="newline"&&s.type!=="comma"&&(s.type!=="scalar"||s.source!=="")&&r(s.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),{comma:b,found:y,spaceBefore:a,comment:u,hasNewline:f,hasNewlineAfterProp:h,anchor:p,tag:m,end:S,start:v??S}}function Kf(t){if(!t)return null;switch(t.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(t.source.includes(` +`))return!0;if(t.end){for(const e of t.end)if(e.type==="newline")return!0}return!1;case"flow-collection":for(const e of t.items){for(const n of e.start)if(n.type==="newline")return!0;if(e.sep){for(const n of e.sep)if(n.type==="newline")return!0}if(Kf(e.key)||Kf(e.value))return!0}return!1;default:return!0}}function Xb(t,e,n){if((e==null?void 0:e.type)==="flow-collection"){const s=e.end[0];s.indent===t&&(s.source==="]"||s.source==="}")&&Kf(e)&&n(s,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}function y8(t,e,n){const{uniqueKeys:s}=t.options;if(s===!1)return!1;const i=typeof s=="function"?s:(r,o)=>r===o||Xt(r)&&Xt(o)&&r.value===o.value&&!(r.value==="<<"&&t.schema.merge);return e.some(r=>i(r.key,n))}const qS="All mapping items must start at the same column";function Gz({composeNode:t,composeEmptyNode:e},n,s,i,r){var u;const o=(r==null?void 0:r.nodeClass)??js,a=new o(n.schema);n.atRoot&&(n.atRoot=!1);let l=s.offset,c=null;for(const d of s.items){const{start:f,key:h,sep:_,value:p}=d,m=Lu(f,{indicator:"explicit-key-ind",next:h??(_==null?void 0:_[0]),offset:l,onError:i,startOnNewline:!0}),b=!m.found;if(b){if(h&&(h.type==="block-seq"?i(l,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key"):"indent"in h&&h.indent!==s.indent&&i(l,"BAD_INDENT",qS)),!m.anchor&&!m.tag&&!_){c=m.end,m.comment&&(a.comment?a.comment+=` +`+m.comment:a.comment=m.comment);continue}(m.hasNewlineAfterProp||Kf(h))&&i(h??f[f.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else((u=m.found)==null?void 0:u.indent)!==s.indent&&i(l,"BAD_INDENT",qS);const y=m.end,v=h?t(n,h,m,i):e(n,y,f,null,m,i);n.schema.compat&&Xb(s.indent,h,i),y8(n,a.items,v)&&i(y,"DUPLICATE_KEY","Map keys must be unique");const x=Lu(_??[],{indicator:"map-value-ind",next:p,offset:v.range[2],onError:i,startOnNewline:!h||h.type==="block-scalar"});if(l=x.end,x.found){b&&((p==null?void 0:p.type)==="block-map"&&!x.hasNewline&&i(l,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings"),n.options.strict&&m.startt&&(t.type==="block-map"||t.type==="block-seq");function Hz({composeNode:t,composeEmptyNode:e},n,s,i,r){const o=s.start.source==="{",a=o?"flow map":"flow sequence",l=(r==null?void 0:r.nodeClass)??(o?js:ka),c=new l(n.schema);c.flow=!0;const u=n.atRoot;u&&(n.atRoot=!1);let d=s.offset+s.start.source.length;for(let m=0;m0){const m=Dh(_,p,n.options.strict,i);m.comment&&(c.comment?c.comment+=` +`+m.comment:c.comment=m.comment),c.range=[s.offset,p,m.offset]}else c.range=[s.offset,p,p];return c}function Y0(t,e,n,s,i,r){const o=n.type==="block-map"?Gz(t,e,n,s,r):n.type==="block-seq"?zz(t,e,n,s,r):Hz(t,e,n,s,r),a=o.constructor;return i==="!"||i===a.tagName?(o.tag=a.tagName,o):(i&&(o.tag=i),o)}function Vz(t,e,n,s,i){var d;const r=s?e.directives.tagName(s.source,f=>i(s,"TAG_RESOLVE_FAILED",f)):null,o=n.type==="block-map"?"map":n.type==="block-seq"?"seq":n.start.source==="{"?"map":"seq";if(!s||!r||r==="!"||r===js.tagName&&o==="map"||r===ka.tagName&&o==="seq"||!o)return Y0(t,e,n,i,r);let a=e.schema.tags.find(f=>f.tag===r&&f.collection===o);if(!a){const f=e.schema.knownTags[r];if(f&&f.collection===o)e.schema.tags.push(Object.assign({},f,{default:!1})),a=f;else return f!=null&&f.collection?i(s,"BAD_COLLECTION_TYPE",`${f.tag} used for ${o} collection, but expects ${f.collection}`,!0):i(s,"TAG_RESOLVE_FAILED",`Unresolved tag: ${r}`,!0),Y0(t,e,n,i,r)}const l=Y0(t,e,n,i,r,a),c=((d=a.resolve)==null?void 0:d.call(a,l,f=>i(s,"TAG_RESOLVE_FAILED",f),e.options))??l,u=An(c)?c:new dt(c);return u.range=l.range,u.tag=r,a!=null&&a.format&&(u.format=a.format),u}function v8(t,e,n){const s=t.offset,i=Wz(t,e,n);if(!i)return{value:"",type:null,comment:"",range:[s,s,s]};const r=i.mode===">"?dt.BLOCK_FOLDED:dt.BLOCK_LITERAL,o=t.source?jz(t.source):[];let a=o.length;for(let p=o.length-1;p>=0;--p){const m=o[p][1];if(m===""||m==="\r")a=p;else break}if(a===0){const p=i.chomp==="+"&&o.length>0?` +`.repeat(Math.max(1,o.length-1)):"";let m=s+i.length;return t.source&&(m+=t.source.length),{value:p,type:r,comment:i.comment,range:[s,m,m]}}let l=t.indent+i.indent,c=t.offset+i.length,u=0;for(let p=0;pl&&(l=m.length);else{if(m.length=a;--p)o[p][0].length>l&&(a=p+1);let d="",f="",h=!1;for(let p=0;pl||b[0]===" "?(f===" "?f=` +`:!h&&f===` +`&&(f=` + +`),d+=f+m.slice(l)+b,f=` +`,h=!0):b===""?f===` +`?d+=` +`:f=` +`:(d+=f+b,f=" ",h=!1)}switch(i.chomp){case"-":break;case"+":for(let p=a;pn(s+f,h,_);switch(i){case"scalar":a=dt.PLAIN,l=qz(r,c);break;case"single-quoted-scalar":a=dt.QUOTE_SINGLE,l=Yz(r,c);break;case"double-quoted-scalar":a=dt.QUOTE_DOUBLE,l=Kz(r,c);break;default:return n(t,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${i}`),{value:"",type:null,comment:"",range:[s,s+r.length,s+r.length]}}const u=s+r.length,d=Dh(o,u,e,n);return{value:l,type:a,comment:d.comment,range:[s,u,d.offset]}}function qz(t,e){let n="";switch(t[0]){case" ":n="a tab character";break;case",":n="flow indicator character ,";break;case"%":n="directive indicator character %";break;case"|":case">":{n=`block scalar indicator ${t[0]}`;break}case"@":case"`":{n=`reserved character ${t[0]}`;break}}return n&&e(0,"BAD_SCALAR_START",`Plain value cannot start with ${n}`),x8(t)}function Yz(t,e){return(t[t.length-1]!=="'"||t.length===1)&&e(t.length,"MISSING_CHAR","Missing closing 'quote"),x8(t.slice(1,-1)).replace(/''/g,"'")}function x8(t){let e,n;try{e=new RegExp(`(.*?)(?r?t.slice(r,s+1):i)}else n+=i}return(t[t.length-1]!=='"'||t.length===1)&&e(t.length,"MISSING_CHAR",'Missing closing "quote'),n}function Xz(t,e){let n="",s=t[e+1];for(;(s===" "||s===" "||s===` +`||s==="\r")&&!(s==="\r"&&t[e+2]!==` +`);)s===` +`&&(n+=` +`),e+=1,s=t[e+1];return n||(n=" "),{fold:n,offset:e}}const Zz={0:"\0",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:` +`,r:"\r",t:" ",v:"\v",N:"…",_:" ",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\"," ":" "};function Jz(t,e,n,s){const i=t.substr(e,n),o=i.length===n&&/^[0-9a-fA-F]+$/.test(i)?parseInt(i,16):NaN;if(isNaN(o)){const a=t.substr(e-2,n+2);return s(e-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${a}`),a}return String.fromCodePoint(o)}function S8(t,e,n,s){const{value:i,type:r,comment:o,range:a}=e.type==="block-scalar"?v8(e,t.options.strict,s):w8(e,t.options.strict,s),l=n?t.directives.tagName(n.source,d=>s(n,"TAG_RESOLVE_FAILED",d)):null,c=n&&l?Qz(t.schema,i,l,n,s):e.type==="scalar"?eH(t,i,e,s):t.schema[go];let u;try{const d=c.resolve(i,f=>s(n??e,"TAG_RESOLVE_FAILED",f),t.options);u=Xt(d)?d:new dt(d)}catch(d){const f=d instanceof Error?d.message:String(d);s(n??e,"TAG_RESOLVE_FAILED",f),u=new dt(i)}return u.range=a,u.source=i,r&&(u.type=r),l&&(u.tag=l),c.format&&(u.format=c.format),o&&(u.comment=o),u}function Qz(t,e,n,s,i){var a;if(n==="!")return t[go];const r=[];for(const l of t.tags)if(!l.collection&&l.tag===n)if(l.default&&l.test)r.push(l);else return l;for(const l of r)if((a=l.test)!=null&&a.test(e))return l;const o=t.knownTags[n];return o&&!o.collection?(t.tags.push(Object.assign({},o,{default:!1,test:void 0})),o):(i(s,"TAG_RESOLVE_FAILED",`Unresolved tag: ${n}`,n!=="tag:yaml.org,2002:str"),t[go])}function eH({directives:t,schema:e},n,s,i){const r=e.tags.find(o=>{var a;return o.default&&((a=o.test)==null?void 0:a.test(n))})||e[go];if(e.compat){const o=e.compat.find(a=>{var l;return a.default&&((l=a.test)==null?void 0:l.test(n))})??e[go];if(r.tag!==o.tag){const a=t.tagString(r.tag),l=t.tagString(o.tag),c=`Value may be parsed as either ${a} or ${l}`;i(s,"TAG_RESOLVE_FAILED",c,!0)}}return r}function tH(t,e,n){if(e){n===null&&(n=e.length);for(let s=n-1;s>=0;--s){let i=e[s];switch(i.type){case"space":case"comment":case"newline":t-=i.source.length;continue}for(i=e[++s];(i==null?void 0:i.type)==="space";)t+=i.source.length,i=e[++s];break}}return t}const nH={composeNode:E8,composeEmptyNode:Iw};function E8(t,e,n,s){const{spaceBefore:i,comment:r,anchor:o,tag:a}=n;let l,c=!0;switch(e.type){case"alias":l=sH(t,e,s),(o||a)&&s(e,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":l=S8(t,e,a,s),o&&(l.anchor=o.source.substring(1));break;case"block-map":case"block-seq":case"flow-collection":l=Vz(nH,t,e,a,s),o&&(l.anchor=o.source.substring(1));break;default:{const u=e.type==="error"?e.message:`Unsupported token (type: ${e.type})`;s(e,"UNEXPECTED_TOKEN",u),l=Iw(t,e.offset,void 0,null,n,s),c=!1}}return o&&l.anchor===""&&s(o,"BAD_ALIAS","Anchor cannot be an empty string"),i&&(l.spaceBefore=!0),r&&(e.type==="scalar"&&e.source===""?l.comment=r:l.commentBefore=r),t.options.keepSourceTokens&&c&&(l.srcToken=e),l}function Iw(t,e,n,s,{spaceBefore:i,comment:r,anchor:o,tag:a,end:l},c){const u={type:"scalar",offset:tH(e,n,s),indent:-1,source:""},d=S8(t,u,a,c);return o&&(d.anchor=o.source.substring(1),d.anchor===""&&c(o,"BAD_ALIAS","Anchor cannot be an empty string")),i&&(d.spaceBefore=!0),r&&(d.comment=r,d.range[2]=l),d}function sH({options:t},{offset:e,source:n,end:s},i){const r=new M_(n.substring(1));r.source===""&&i(e,"BAD_ALIAS","Alias cannot be an empty string"),r.source.endsWith(":")&&i(e+n.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);const o=e+n.length,a=Dh(s,o,t.strict,i);return r.range=[e,o,a.offset],a.comment&&(r.comment=a.comment),r}function iH(t,e,{offset:n,start:s,value:i,end:r},o){const a=Object.assign({_directives:e},t),l=new ld(void 0,a),c={atRoot:!0,directives:l.directives,options:l.options,schema:l.schema},u=Lu(s,{indicator:"doc-start",next:i??(r==null?void 0:r[0]),offset:n,onError:o,startOnNewline:!0});u.found&&(l.directives.docStart=!0,i&&(i.type==="block-map"||i.type==="block-seq")&&!u.hasNewline&&o(u.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")),l.contents=i?E8(c,i,u,o):Iw(c,u.end,s,null,u,o);const d=l.contents.range[2],f=Dh(r,d,!1,o);return f.comment&&(l.comment=f.comment),l.range=[n,d,f.offset],l}function Pd(t){if(typeof t=="number")return[t,t+1];if(Array.isArray(t))return t.length===2?t:[t[0],t[1]];const{offset:e,source:n}=t;return[e,e+(typeof n=="string"?n.length:1)]}function YS(t){var i;let e="",n=!1,s=!1;for(let r=0;r{const o=Pd(n);r?this.warnings.push(new b8(o,s,i)):this.errors.push(new gl(o,s,i))},this.directives=new _s({version:e.version||"1.2"}),this.options=e}decorate(e,n){const{comment:s,afterEmptyLine:i}=YS(this.prelude);if(s){const r=e.contents;if(n)e.comment=e.comment?`${e.comment} +${s}`:s;else if(i||e.directives.docStart||!r)e.commentBefore=s;else if(mn(r)&&!r.flow&&r.items.length>0){let o=r.items[0];hn(o)&&(o=o.key);const a=o.commentBefore;o.commentBefore=a?`${s} +${a}`:s}else{const o=r.commentBefore;r.commentBefore=o?`${s} +${o}`:s}}n?(Array.prototype.push.apply(e.errors,this.errors),Array.prototype.push.apply(e.warnings,this.warnings)):(e.errors=this.errors,e.warnings=this.warnings),this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:YS(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(e,n=!1,s=-1){for(const i of e)yield*this.next(i);yield*this.end(n,s)}*next(e){switch(e.type){case"directive":this.directives.add(e.source,(n,s,i)=>{const r=Pd(e);r[0]+=n,this.onError(r,"BAD_DIRECTIVE",s,i)}),this.prelude.push(e.source),this.atDirectives=!0;break;case"document":{const n=iH(this.options,this.directives,e,this.onError);this.atDirectives&&!n.directives.docStart&&this.onError(e,"MISSING_CHAR","Missing directives-end/doc-start indicator line"),this.decorate(n,!1),this.doc&&(yield this.doc),this.doc=n,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(e.source);break;case"error":{const n=e.source?`${e.message}: ${JSON.stringify(e.source)}`:e.message,s=new gl(Pd(e),"UNEXPECTED_TOKEN",n);this.atDirectives||!this.doc?this.errors.push(s):this.doc.errors.push(s);break}case"doc-end":{if(!this.doc){const s="Unexpected doc-end without preceding document";this.errors.push(new gl(Pd(e),"UNEXPECTED_TOKEN",s));break}this.doc.directives.docEnd=!0;const n=Dh(e.end,e.offset+e.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),n.comment){const s=this.doc.comment;this.doc.comment=s?`${s} +${n.comment}`:n.comment}this.doc.range[2]=n.offset;break}default:this.errors.push(new gl(Pd(e),"UNEXPECTED_TOKEN",`Unsupported token ${e.type}`))}}*end(e=!1,n=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(e){const s=Object.assign({_directives:this.directives},this.options),i=new ld(void 0,s);this.atDirectives&&this.onError(n,"MISSING_CHAR","Missing directives-end indicator line"),i.range=[0,n,n],this.decorate(i,!1),yield i}}}function rH(t,e=!0,n){if(t){const s=(i,r,o)=>{const a=typeof i=="number"?i:Array.isArray(i)?i[0]:i.offset;if(n)n(a,r,o);else throw new gl([a,a+1],r,o)};switch(t.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return w8(t,e,s);case"block-scalar":return v8(t,e,s)}}return null}function oH(t,e){const{implicitKey:n=!1,indent:s,inFlow:i=!1,offset:r=-1,type:o="PLAIN"}=e,a=Lh({type:o,value:t},{implicitKey:n,indent:s>0?" ".repeat(s):"",inFlow:i,options:{blockQuote:!0,lineWidth:-1}}),l=e.end??[{type:"newline",offset:-1,indent:s,source:` +`}];switch(a[0]){case"|":case">":{const c=a.indexOf(` +`),u=a.substring(0,c),d=a.substring(c+1)+` +`,f=[{type:"block-scalar-header",offset:r,indent:s,source:u}];return T8(f,l)||f.push({type:"newline",offset:-1,indent:s,source:` +`}),{type:"block-scalar",offset:r,indent:s,props:f,source:d}}case'"':return{type:"double-quoted-scalar",offset:r,indent:s,source:a,end:l};case"'":return{type:"single-quoted-scalar",offset:r,indent:s,source:a,end:l};default:return{type:"scalar",offset:r,indent:s,source:a,end:l}}}function aH(t,e,n={}){let{afterKey:s=!1,implicitKey:i=!1,inFlow:r=!1,type:o}=n,a="indent"in t?t.indent:null;if(s&&typeof a=="number"&&(a+=2),!o)switch(t.type){case"single-quoted-scalar":o="QUOTE_SINGLE";break;case"double-quoted-scalar":o="QUOTE_DOUBLE";break;case"block-scalar":{const c=t.props[0];if(c.type!=="block-scalar-header")throw new Error("Invalid block scalar header");o=c.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:o="PLAIN"}const l=Lh({type:o,value:e},{implicitKey:i||a===null,indent:a!==null&&a>0?" ".repeat(a):"",inFlow:r,options:{blockQuote:!0,lineWidth:-1}});switch(l[0]){case"|":case">":lH(t,l);break;case'"':K0(t,l,"double-quoted-scalar");break;case"'":K0(t,l,"single-quoted-scalar");break;default:K0(t,l,"scalar")}}function lH(t,e){const n=e.indexOf(` +`),s=e.substring(0,n),i=e.substring(n+1)+` +`;if(t.type==="block-scalar"){const r=t.props[0];if(r.type!=="block-scalar-header")throw new Error("Invalid block scalar header");r.source=s,t.source=i}else{const{offset:r}=t,o="indent"in t?t.indent:-1,a=[{type:"block-scalar-header",offset:r,indent:o,source:s}];T8(a,"end"in t?t.end:void 0)||a.push({type:"newline",offset:-1,indent:o,source:` +`});for(const l of Object.keys(t))l!=="type"&&l!=="offset"&&delete t[l];Object.assign(t,{type:"block-scalar",indent:o,props:a,source:i})}}function T8(t,e){if(e)for(const n of e)switch(n.type){case"space":case"comment":t.push(n);break;case"newline":return t.push(n),!0}return!1}function K0(t,e,n){switch(t.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":t.type=n,t.source=e;break;case"block-scalar":{const s=t.props.slice(1);let i=e.length;t.props[0].type==="block-scalar-header"&&(i-=t.props[0].source.length);for(const r of s)r.offset+=i;delete t.props,Object.assign(t,{type:n,source:e,end:s});break}case"block-map":case"block-seq":{const i={type:"newline",offset:t.offset+e.length,indent:t.indent,source:` +`};delete t.items,Object.assign(t,{type:n,source:e,end:[i]});break}default:{const s="indent"in t?t.indent:-1,i="end"in t&&Array.isArray(t.end)?t.end.filter(r=>r.type==="space"||r.type==="comment"||r.type==="newline"):[];for(const r of Object.keys(t))r!=="type"&&r!=="offset"&&delete t[r];Object.assign(t,{type:n,indent:s,source:e,end:i})}}}const cH=t=>"type"in t?hg(t):Pm(t);function hg(t){switch(t.type){case"block-scalar":{let e="";for(const n of t.props)e+=hg(n);return e+t.source}case"block-map":case"block-seq":{let e="";for(const n of t.items)e+=Pm(n);return e}case"flow-collection":{let e=t.start.source;for(const n of t.items)e+=Pm(n);for(const n of t.end)e+=n.source;return e}case"document":{let e=Pm(t);if(t.end)for(const n of t.end)e+=n.source;return e}default:{let e=t.source;if("end"in t&&t.end)for(const n of t.end)e+=n.source;return e}}}function Pm({start:t,key:e,sep:n,value:s}){let i="";for(const r of t)i+=r.source;if(e&&(i+=hg(e)),n)for(const r of n)i+=r.source;return s&&(i+=hg(s)),i}const Zb=Symbol("break visit"),uH=Symbol("skip children"),A8=Symbol("remove item");function Fl(t,e){"type"in t&&t.type==="document"&&(t={start:t.start,value:t.value}),M8(Object.freeze([]),t,e)}Fl.BREAK=Zb;Fl.SKIP=uH;Fl.REMOVE=A8;Fl.itemAtPath=(t,e)=>{let n=t;for(const[s,i]of e){const r=n==null?void 0:n[s];if(r&&"items"in r)n=r.items[i];else return}return n};Fl.parentCollection=(t,e)=>{const n=Fl.itemAtPath(t,e.slice(0,-1)),s=e[e.length-1][0],i=n==null?void 0:n[s];if(i&&"items"in i)return i;throw new Error("Parent collection not found")};function M8(t,e,n){let s=n(e,t);if(typeof s=="symbol")return s;for(const i of["key","value"]){const r=e[i];if(r&&"items"in r){for(let o=0;o!!t&&"items"in t,fH=t=>!!t&&(t.type==="scalar"||t.type==="single-quoted-scalar"||t.type==="double-quoted-scalar"||t.type==="block-scalar");function hH(t){switch(t){case $_:return"";case U_:return"";case B_:return"";case Xf:return"";default:return JSON.stringify(t)}}function k8(t){switch(t){case $_:return"byte-order-mark";case U_:return"doc-mode";case B_:return"flow-error-end";case Xf:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case` +`:case`\r +`:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(t[0]){case" ":case" ":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}const pH=Object.freeze(Object.defineProperty({__proto__:null,BOM:$_,DOCUMENT:U_,FLOW_END:B_,SCALAR:Xf,createScalarToken:oH,isCollection:dH,isScalar:fH,prettyToken:hH,resolveAsScalar:rH,setScalarValue:aH,stringify:cH,tokenType:k8,visit:Fl},Symbol.toStringTag,{value:"Module"}));function ti(t){switch(t){case void 0:case" ":case` +`:case"\r":case" ":return!0;default:return!1}}const KS="0123456789ABCDEFabcdef".split(""),mH="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()".split(""),X0=",[]{}".split(""),gH=` ,[]{} +\r `.split(""),Z0=t=>!t||gH.includes(t);class R8{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(e,n=!1){e&&(this.buffer=this.buffer?this.buffer+e:e,this.lineEndPos=null),this.atEnd=!n;let s=this.next??"stream";for(;s&&(n||this.hasChars(1));)s=yield*this.parseNext(s)}atLineEnd(){let e=this.pos,n=this.buffer[e];for(;n===" "||n===" ";)n=this.buffer[++e];return!n||n==="#"||n===` +`?!0:n==="\r"?this.buffer[e+1]===` +`:!1}charAt(e){return this.buffer[this.pos+e]}continueScalar(e){let n=this.buffer[e];if(this.indentNext>0){let s=0;for(;n===" ";)n=this.buffer[++s+e];if(n==="\r"){const i=this.buffer[s+e+1];if(i===` +`||!i&&!this.atEnd)return e+s+1}return n===` +`||s>=this.indentNext||!n&&!this.atEnd?e+s:-1}if(n==="-"||n==="."){const s=this.buffer.substr(e,3);if((s==="---"||s==="...")&&ti(this.buffer[e+3]))return-1}return e}getLine(){let e=this.lineEndPos;return(typeof e!="number"||e!==-1&&ethis.indentValue&&!ti(this.charAt(1))&&(this.indentNext=this.indentValue),yield*this.parseBlockStart()}*parseBlockStart(){const[e,n]=this.peek(2);if(!n&&!this.atEnd)return this.setNext("block-start");if((e==="-"||e==="?"||e===":")&&ti(n)){const s=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=s,yield*this.parseBlockStart()}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);const e=this.getLine();if(e===null)return this.setNext("doc");let n=yield*this.pushIndicators();switch(e[n]){case"#":yield*this.pushCount(e.length-n);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(Z0),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return n+=yield*this.parseBlockScalarHeader(),n+=yield*this.pushSpaces(!0),yield*this.pushCount(e.length-n),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let e,n,s=-1;do e=yield*this.pushNewline(),e>0?(n=yield*this.pushSpaces(!1),this.indentValue=s=n):n=0,n+=yield*this.pushSpaces(!0);while(e+n>0);const i=this.getLine();if(i===null)return this.setNext("flow");if((s!==-1&&s"0"&&n<="9")this.blockScalarIndent=Number(n)-1;else if(n!=="-")break}return yield*this.pushUntil(n=>ti(n)||n==="#")}*parseBlockScalar(){let e=this.pos-1,n=0,s;e:for(let i=this.pos;s=this.buffer[i];++i)switch(s){case" ":n+=1;break;case` +`:e=i,n=0;break;case"\r":{const r=this.buffer[i+1];if(!r&&!this.atEnd)return this.setNext("block-scalar");if(r===` +`)break}default:break e}if(!s&&!this.atEnd)return this.setNext("block-scalar");if(n>=this.indentNext){this.blockScalarIndent===-1?this.indentNext=n:this.indentNext+=this.blockScalarIndent;do{const i=this.continueScalar(e+1);if(i===-1)break;e=this.buffer.indexOf(` +`,i)}while(e!==-1);if(e===-1){if(!this.atEnd)return this.setNext("block-scalar");e=this.buffer.length}}if(!this.blockScalarKeep)do{let i=e-1,r=this.buffer[i];r==="\r"&&(r=this.buffer[--i]);const o=i;for(;r===" "||r===" ";)r=this.buffer[--i];if(r===` +`&&i>=this.pos&&i+1+n>o)e=i;else break}while(!0);return yield Xf,yield*this.pushToIndex(e+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){const e=this.flowLevel>0;let n=this.pos-1,s=this.pos-1,i;for(;i=this.buffer[++s];)if(i===":"){const r=this.buffer[s+1];if(ti(r)||e&&r===",")break;n=s}else if(ti(i)){let r=this.buffer[s+1];if(i==="\r"&&(r===` +`?(s+=1,i=` +`,r=this.buffer[s+1]):n=s),r==="#"||e&&X0.includes(r))break;if(i===` +`){const o=this.continueScalar(s+1);if(o===-1)break;s=Math.max(s,o-2)}}else{if(e&&X0.includes(i))break;n=s}return!i&&!this.atEnd?this.setNext("plain-scalar"):(yield Xf,yield*this.pushToIndex(n+1,!0),e?"flow":"doc")}*pushCount(e){return e>0?(yield this.buffer.substr(this.pos,e),this.pos+=e,e):0}*pushToIndex(e,n){const s=this.buffer.slice(this.pos,e);return s?(yield s,this.pos+=s.length,s.length):(n&&(yield""),0)}*pushIndicators(){switch(this.charAt(0)){case"!":return(yield*this.pushTag())+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"&":return(yield*this.pushUntil(Z0))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{const e=this.flowLevel>0,n=this.charAt(1);if(ti(n)||e&&X0.includes(n))return e?this.flowKey&&(this.flowKey=!1):this.indentNext=this.indentValue+1,(yield*this.pushCount(1))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators())}}return 0}*pushTag(){if(this.charAt(1)==="<"){let e=this.pos+2,n=this.buffer[e];for(;!ti(n)&&n!==">";)n=this.buffer[++e];return yield*this.pushToIndex(n===">"?e+1:e,!1)}else{let e=this.pos+1,n=this.buffer[e];for(;n;)if(mH.includes(n))n=this.buffer[++e];else if(n==="%"&&KS.includes(this.buffer[e+1])&&KS.includes(this.buffer[e+2]))n=this.buffer[e+=3];else break;return yield*this.pushToIndex(e,!1)}}*pushNewline(){const e=this.buffer[this.pos];return e===` +`?yield*this.pushCount(1):e==="\r"&&this.charAt(1)===` +`?yield*this.pushCount(2):0}*pushSpaces(e){let n=this.pos-1,s;do s=this.buffer[++n];while(s===" "||e&&s===" ");const i=n-this.pos;return i>0&&(yield this.buffer.substr(this.pos,i),this.pos=n),i}*pushUntil(e){let n=this.pos,s=this.buffer[n];for(;!e(s);)s=this.buffer[++n];return yield*this.pushToIndex(n,!1)}}class C8{constructor(){this.lineStarts=[],this.addNewLine=e=>this.lineStarts.push(e),this.linePos=e=>{let n=0,s=this.lineStarts.length;for(;n>1;this.lineStarts[r]=0;)switch(t[e].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break e}for(;((n=t[++e])==null?void 0:n.type)==="space";);return t.splice(e,t.length)}function ZS(t){if(t.start.type==="flow-seq-start")for(const e of t.items)e.sep&&!e.value&&!Mi(e.start,"explicit-key-ind")&&!Mi(e.sep,"map-value-ind")&&(e.key&&(e.value=e.key),delete e.key,O8(e.value)?e.value.end?Array.prototype.push.apply(e.value.end,e.sep):e.value.end=e.sep:Array.prototype.push.apply(e.start,e.sep),delete e.sep)}class Pw{constructor(e){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new R8,this.onNewLine=e}*parse(e,n=!1){this.onNewLine&&this.offset===0&&this.onNewLine(0);for(const s of this.lexer.lex(e,n))yield*this.next(s);n||(yield*this.end())}*next(e){if(this.source=e,this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=e.length;return}const n=k8(e);if(n)if(n==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=n,yield*this.step(),n){case"newline":this.atNewLine=!0,this.indent=0,this.onNewLine&&this.onNewLine(this.offset+e.length);break;case"space":this.atNewLine&&e[0]===" "&&(this.indent+=e.length);break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":this.atNewLine&&(this.indent+=e.length);break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=e.length}else{const s=`Not a YAML token: ${e}`;yield*this.pop({type:"error",offset:this.offset,message:s,source:e}),this.offset+=e.length}}*end(){for(;this.stack.length>0;)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){const e=this.peek(1);if(this.type==="doc-end"&&(!e||e.type!=="doc-end")){for(;this.stack.length>0;)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!e)return yield*this.stream();switch(e.type){case"document":return yield*this.document(e);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(e);case"block-scalar":return yield*this.blockScalar(e);case"block-map":return yield*this.blockMap(e);case"block-seq":return yield*this.blockSequence(e);case"flow-collection":return yield*this.flowCollection(e);case"doc-end":return yield*this.documentEnd(e)}yield*this.pop()}peek(e){return this.stack[this.stack.length-e]}*pop(e){const n=e??this.stack.pop();if(n)if(this.stack.length===0)yield n;else{const s=this.peek(1);switch(n.type==="block-scalar"?n.indent="indent"in s?s.indent:0:n.type==="flow-collection"&&s.type==="document"&&(n.indent=0),n.type==="flow-collection"&&ZS(n),s.type){case"document":s.value=n;break;case"block-scalar":s.props.push(n);break;case"block-map":{const i=s.items[s.items.length-1];if(i.value){s.items.push({start:[],key:n,sep:[]}),this.onKeyLine=!0;return}else if(i.sep)i.value=n;else{Object.assign(i,{key:n,sep:[]}),this.onKeyLine=!Mi(i.start,"explicit-key-ind");return}break}case"block-seq":{const i=s.items[s.items.length-1];i.value?s.items.push({start:[],value:n}):i.value=n;break}case"flow-collection":{const i=s.items[s.items.length-1];!i||i.value?s.items.push({start:[],key:n,sep:[]}):i.sep?i.value=n:Object.assign(i,{key:n,sep:[]});return}default:yield*this.pop(),yield*this.pop(n)}if((s.type==="document"||s.type==="block-map"||s.type==="block-seq")&&(n.type==="block-map"||n.type==="block-seq")){const i=n.items[n.items.length-1];i&&!i.sep&&!i.value&&i.start.length>0&&XS(i.start)===-1&&(n.indent===0||i.start.every(r=>r.type!=="comment"||r.indent=e.indent){const i=!this.onKeyLine&&this.indent===e.indent&&n.sep;let r=[];if(i&&n.sep&&!n.value){const o=[];for(let a=0;ae.indent&&(o.length=0);break;default:o.length=0}}o.length>=2&&(r=n.sep.splice(o[1]))}switch(this.type){case"anchor":case"tag":i||n.value?(r.push(this.sourceToken),e.items.push({start:r}),this.onKeyLine=!0):n.sep?n.sep.push(this.sourceToken):n.start.push(this.sourceToken);return;case"explicit-key-ind":!n.sep&&!Mi(n.start,"explicit-key-ind")?n.start.push(this.sourceToken):i||n.value?(r.push(this.sourceToken),e.items.push({start:r})):this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]}),this.onKeyLine=!0;return;case"map-value-ind":if(Mi(n.start,"explicit-key-ind"))if(n.sep)if(n.value)e.items.push({start:[],key:null,sep:[this.sourceToken]});else if(Mi(n.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:r,key:null,sep:[this.sourceToken]}]});else if(O8(n.key)&&!Mi(n.sep,"newline")){const o=pc(n.start),a=n.key,l=n.sep;l.push(this.sourceToken),delete n.key,delete n.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:o,key:a,sep:l}]})}else r.length>0?n.sep=n.sep.concat(r,this.sourceToken):n.sep.push(this.sourceToken);else if(Mi(n.start,"newline"))Object.assign(n,{key:null,sep:[this.sourceToken]});else{const o=pc(n.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:o,key:null,sep:[this.sourceToken]}]})}else n.sep?n.value||i?e.items.push({start:r,key:null,sep:[this.sourceToken]}):Mi(n.sep,"map-value-ind")?this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]}):n.sep.push(this.sourceToken):Object.assign(n,{key:null,sep:[this.sourceToken]});this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{const o=this.flowScalar(this.type);i||n.value?(e.items.push({start:r,key:o,sep:[]}),this.onKeyLine=!0):n.sep?this.stack.push(o):(Object.assign(n,{key:o,sep:[]}),this.onKeyLine=!0);return}default:{const o=this.startBlockValue(e);if(o){i&&o.type!=="block-seq"&&Mi(n.start,"explicit-key-ind")&&e.items.push({start:r}),this.stack.push(o);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(e){var s;const n=e.items[e.items.length-1];switch(this.type){case"newline":if(n.value){const i="end"in n.value?n.value.end:void 0,r=Array.isArray(i)?i[i.length-1]:void 0;(r==null?void 0:r.type)==="comment"?i==null||i.push(this.sourceToken):e.items.push({start:[this.sourceToken]})}else n.start.push(this.sourceToken);return;case"space":case"comment":if(n.value)e.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(n.start,e.indent)){const i=e.items[e.items.length-2],r=(s=i==null?void 0:i.value)==null?void 0:s.end;if(Array.isArray(r)){Array.prototype.push.apply(r,n.start),r.push(this.sourceToken),e.items.pop();return}}n.start.push(this.sourceToken)}return;case"anchor":case"tag":if(n.value||this.indent<=e.indent)break;n.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==e.indent)break;n.value||Mi(n.start,"seq-item-ind")?e.items.push({start:[this.sourceToken]}):n.start.push(this.sourceToken);return}if(this.indent>e.indent){const i=this.startBlockValue(e);if(i){this.stack.push(i);return}}yield*this.pop(),yield*this.step()}*flowCollection(e){const n=e.items[e.items.length-1];if(this.type==="flow-error-end"){let s;do yield*this.pop(),s=this.peek(1);while(s&&s.type==="flow-collection")}else if(e.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":!n||n.sep?e.items.push({start:[this.sourceToken]}):n.start.push(this.sourceToken);return;case"map-value-ind":!n||n.value?e.items.push({start:[],key:null,sep:[this.sourceToken]}):n.sep?n.sep.push(this.sourceToken):Object.assign(n,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":!n||n.value?e.items.push({start:[this.sourceToken]}):n.sep?n.sep.push(this.sourceToken):n.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{const i=this.flowScalar(this.type);!n||n.value?e.items.push({start:[],key:i,sep:[]}):n.sep?this.stack.push(i):Object.assign(n,{key:i,sep:[]});return}case"flow-map-end":case"flow-seq-end":e.end.push(this.sourceToken);return}const s=this.startBlockValue(e);s?this.stack.push(s):(yield*this.pop(),yield*this.step())}else{const s=this.peek(2);if(s.type==="block-map"&&(this.type==="map-value-ind"&&s.indent===e.indent||this.type==="newline"&&!s.items[s.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type==="map-value-ind"&&s.type!=="flow-collection"){const i=mp(s),r=pc(i);ZS(e);const o=e.end.splice(1,e.end.length);o.push(this.sourceToken);const a={type:"block-map",offset:e.offset,indent:e.indent,items:[{start:r,key:e,sep:o}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=a}else yield*this.lineEnd(e)}}flowScalar(e){if(this.onNewLine){let n=this.source.indexOf(` +`)+1;for(;n!==0;)this.onNewLine(this.offset+n),n=this.source.indexOf(` +`,n)+1}return{type:e,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(e){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;const n=mp(e),s=pc(n);return s.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:s}]}}case"map-value-ind":{this.onKeyLine=!0;const n=mp(e),s=pc(n);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:s,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(e,n){return this.type!=="comment"||this.indent<=n?!1:e.every(s=>s.type==="newline"||s.type==="space")}*documentEnd(e){this.type!=="doc-mode"&&(e.end?e.end.push(this.sourceToken):e.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop()))}*lineEnd(e){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:e.end?e.end.push(this.sourceToken):e.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop())}}}function I8(t){const e=t.prettyErrors!==!1;return{lineCounter:t.lineCounter||e&&new C8||null,prettyErrors:e}}function _H(t,e={}){const{lineCounter:n,prettyErrors:s}=I8(e),i=new Pw(n==null?void 0:n.addNewLine),r=new Lw(e),o=Array.from(r.compose(i.parse(t)));if(s&&n)for(const a of o)a.errors.forEach(fg(t,n)),a.warnings.forEach(fg(t,n));return o.length>0?o:Object.assign([],{empty:!0},r.streamInfo())}function L8(t,e={}){const{lineCounter:n,prettyErrors:s}=I8(e),i=new Pw(n==null?void 0:n.addNewLine),r=new Lw(e);let o=null;for(const a of r.compose(i.parse(t),!0,t.length))if(!o)o=a;else if(o.options.logLevel!=="silent"){o.errors.push(new gl(a.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}return s&&n&&(o.errors.forEach(fg(t,n)),o.warnings.forEach(fg(t,n))),o}function bH(t,e,n){let s;typeof e=="function"?s=e:n===void 0&&e&&typeof e=="object"&&(n=e);const i=L8(t,n);if(!i)return null;if(i.warnings.forEach(r=>e8(i.options.logLevel,r)),i.errors.length>0){if(i.options.logLevel!=="silent")throw i.errors[0];i.errors=[]}return i.toJS(Object.assign({reviver:s},n))}function yH(t,e,n){let s=null;if(typeof e=="function"||Array.isArray(e)?s=e:n===void 0&&e&&(n=e),typeof n=="string"&&(n=n.length),typeof n=="number"){const i=Math.round(n);n=i<1?void 0:i>8?{indent:8}:{indent:i}}if(t===void 0){const{keepUndefined:i}=n??e??{};if(!i)return}return new ld(t,s,n).toString(n)}const _o=Object.freeze(Object.defineProperty({__proto__:null,Alias:M_,CST:pH,Composer:Lw,Document:ld,Lexer:R8,LineCounter:C8,Pair:cs,Parser:Pw,Scalar:dt,Schema:N_,YAMLError:Ow,YAMLMap:js,YAMLParseError:gl,YAMLSeq:ka,YAMLWarning:b8,isAlias:tc,isCollection:mn,isDocument:sd,isMap:id,isNode:An,isPair:hn,isScalar:Xt,isSeq:rd,parse:bH,parseAllDocuments:_H,parseDocument:L8,stringify:yH,visit:Ma,visitAsync:A_},Symbol.toStringTag,{value:"Module"}));function Jb(t){if(t!==void 0&&t!=="NONE"){if(Array.isArray(t)){for(let e=t.length-1;e>=0;e--)t[e]=Jb(t[e]),t[e]||t.splice(e,1);if(t.length==0)return}if(Object.getPrototypeOf(t)===Object.prototype){const e=Object.keys(t);for(let n=e.length-1;n>=0;n--)t[e[n]]=Jb(t[e[n]]),t[e[n]]||delete t[e[n]];if(Object.keys(t).length==0)return}return t}}const cd=ds("target",{state:()=>({name:"",brushless:!0,gyro_orientation:0,leds:[],serial_ports:[],serial_soft_ports:[],spi_ports:[],motor_pins:[]}),getters:{yaml(t){const e=Tn();return _o.stringify(Jb({mcu:e.mcu,...t.$state}))},serial_port_names(t){const e={},n=Tn();if(n.quicVersionGte("0.2.0")){for(const s of t.serial_ports)s.index!=0&&(e[`SERIAL_PORT${s.index}`]=s.index);for(const s of t.serial_soft_ports)s.index!=0&&(e[`SERIAL_SOFT_PORT${s.index}`]=100+s.index)}else for(let s=1;sthis.$patch(t))},apply(t){const e=wn();return wt.set(vn.Target,t).then(()=>this.fetch()).then(()=>e.append_alert({type:"success",msg:"Target applied!"}))}}});function pg(t,e){for(const[n,s]of Object.entries(e))s!==null&&typeof s=="object"?(t[n]===void 0&&(t[n]=new s.__proto__.constructor),pg(t[n],s)):t[n]=s;return t}function J0(t,e,n){return t<<16|e<<8|n}function JS(t){return t=t||J0(0,1,0),tf.index!=0);for(const f of Object.keys(t.serial))t.serial[f]!=0&&(t.serial[f]<=d.length?t.serial[f]=d[t.serial[f]-1].index:t.serial[f]=t.serial[f]-d.length+100)}return t.meta.name&&(t.meta.name=t.meta.name.replace(/\0/g,"")),(u=t.osd)!=null&&u.callsign&&(t.osd.callsign=t.osd.callsign.replace(/\0/g,"")),t}function Q0(t){var o,a;const e=cd(),n=Ih(),s=JS((o=n==null?void 0:n.meta)==null?void 0:o.version),i=JS((a=t==null?void 0:t.meta)==null?void 0:a.version);let r=JSON.parse(JSON.stringify(t));return r.meta||(r.meta={}),s!=i&&(r=vH(r,e.$state,Ru(i),Ru(s))),r.meta.datetime=Math.floor(Date.now()/1e3),r}const Zt=ds("profile",{state:()=>({semver:"v0.0.0",serial:{rx:0,smart_audio:0,hdzero:0},filter:{gyro:[{},{}],dterm:[{},{}]},osd:{callsign:"",elements:[],elements_hd:[]},meta:{name:"",datetime:0},motor:{gyro_orientation:0,invert_yaw:1,motor_pins:[]},rate:{mode:0,profile:0,silverware:{},betaflight:{},low_rate_mulitplier:0,level_max_angle:0,sticks_deadband:0,rates:[],throttle_expo:0,throttle_mid:0},voltage:{vbat_scale:0,ibat_scale:0},receiver:{lqi_source:-1,channel_mapping:0,aux:[],protocol:0},pid:{pid_profile:0,pid_rates:[{}],stick_profile:0,stick_rates:[{}],big_angle:{},small_angle:{},throttle_dterm_attenuation:{}},blackbox:{field_flags:0,sample_rate_hz:0}}),getters:{current_pid_rate:t=>t.pid.pid_rates[t.pid.pid_profile],current_stick_rate:t=>t.pid.stick_rates[t.pid.stick_profile],profileVersionGt(t){return e=>Ps.gt(t.semver,e)}},actions:{set_profile(t){t.semver=Ru(t.meta.version),t.meta.name=t.meta.name.replace(/\0/g,""),this.$patch(t)},set_current_pid_rate(t){const e=[...this.pid.pid_rates];e[this.pid.pid_profile]=t,this.pid={...this.pid,pid_rates:e}},set_current_stick_rate(t){const e=[...this.pid.stick_rates];e[this.pid.stick_profile]=t,this.pid={...this.pid,stick_rates:e}},set_osd_elements(t){this.osd={...this.osd,elements:t}},set_osd_elements_hd(t){this.osd={...this.osd,elements_hd:t}},reset(){const t=Ih();return this.apply_profile(t.$state)},fetch_profile(){return wt.get(vn.Profile).then(t=>this.set_profile(t))},async merge_profile(t){const e=Q0(await wt.get(vn.Profile)),n=Q0(t),s=pg(e,n);return this.apply_profile(s)},apply_profile(t){const e=wn(),n=Q0(t);return wt.set(vn.Profile,n).then(s=>this.set_profile(s)).then(()=>e.append_alert({type:"success",msg:"Profile applied!"})).then(()=>e.reset_needs_apply()).catch(s=>{st.error(s),e.append_alert({type:"danger",msg:"Apply failed! "+s})})}}}),Qb=ds("vtx",{state:()=>({settings:{protocol:0,detected:0,channel:0,band:0,power_table:{levels:0,labels:[],values:[]}}}),actions:{apply_vtx_settings(t){const e=wn();if(t.power_table)for(let n=0;nthis.settings=n).then(()=>{e.append_alert({type:"success",msg:"Apply successful!"})}).catch(()=>{e.append_alert({type:"danger",msg:"Apply failed"})})},update_vtx_settings(t=!1){if(this.settings.detected==0||t)return wt.get(vn.VtxSettings).then(e=>{const n=e.detected==0?this.settings.protocol:e.protocol;this.settings={...e,protocol:n}})}}}),P8=ds("perf",{state:()=>({counters:[]}),actions:{fetch_perf_counters(){return wt.get(vn.PerfCounters).then(t=>this.counters=t)}}}),D8=ds("bind",{state:()=>({info:{bind_saved:0,raw:new Uint8Array}}),actions:{fetch_bind_info(){return wt.get(vn.BindInfo).then(t=>this.info=t)},apply_bind_info(t){const e=wn();return wt.set(vn.BindInfo,t).then(n=>this.info=n).then(()=>e.set_needs_reboot()).then(()=>e.append_alert({type:"success",msg:"Bind info applied!"})).catch(n=>{st.error(n),e.append_alert({type:"danger",msg:"Apply failed! "+n})})}}}),wH=nt({name:"Motor",setup(){return{profile:Zt(),info:Tn(),constants:ec()}},data(){return{invertYawModes:[{value:0,text:"Props In"},{value:1,text:"Props Out"}],dshotTimes:[{value:150,text:"150"},{value:300,text:"300"},{value:600,text:"600"}]}},computed:{gyroOrientation:{get(){return this.profile.motor.gyro_orientation&31},set(t){this.profile.motor.gyro_orientation=t|(this.gyroFlip?this.constants.GyroRotation.FLIP_180:0)}},gyroOrientations(){return[{value:this.constants.GyroRotation.ROTATE_NONE,text:"ROTATE_NONE"},{value:this.constants.GyroRotation.ROTATE_45_CCW,text:"ROTATE_45_CCW"},{value:this.constants.GyroRotation.ROTATE_45_CW,text:"ROTATE_45_CW"},{value:this.constants.GyroRotation.ROTATE_90_CW,text:"ROTATE_90_CW"},{value:this.constants.GyroRotation.ROTATE_90_CCW,text:"ROTATE_90_CCW"},{value:this.constants.GyroRotation.ROTATE_90_CCW|this.constants.GyroRotation.ROTATE_45_CCW,text:"ROTATE_135_CW"},{value:this.constants.GyroRotation.ROTATE_90_CW|this.constants.GyroRotation.ROTATE_45_CW,text:"ROTATE_135_CCW"},{value:this.constants.GyroRotation.ROTATE_180,text:"ROTATE_180"}]},gyroFlip:{get(){return(this.profile.motor.gyro_orientation&this.constants.GyroRotation.FLIP_180)>0},set(t){this.profile.motor.gyro_orientation=this.gyroOrientation|(t?this.constants.GyroRotation.FLIP_180:0)}}}}),xH={class:"card"},SH=g("header",{class:"card-header"},[g("p",{class:"card-header-title"},"Motor")],-1),EH={class:"card-content"},TH={class:"content column-narrow field-is-5"},AH={class:"columns"},MH={class:"column is-6"},kH={class:"field is-horizontal"},RH={class:"field-label"},CH={class:"label"},OH={class:"field-body"},IH={class:"field"},LH={class:"control is-expanded"},PH={class:"field is-horizontal"},DH={class:"field-label"},FH={class:"label"},NH={class:"field-body"},$H={class:"field"},UH={class:"control is-expanded"},BH={key:0,class:"field is-horizontal"},GH={class:"field-label"},zH={class:"label"},HH={class:"field-body"},VH={class:"field"},WH={class:"control is-expanded"},jH={class:"field is-horizontal"},qH={class:"field-label"},YH={class:"label"},KH={class:"field-body"},XH={class:"field"},ZH={class:"control is-expanded"},JH=g("label",{class:"py-0",style:{height:"2em"},for:"gyro-flip"},null,-1),QH={class:"field is-horizontal"},eV={class:"field-label"},tV={class:"label"},nV={class:"field-body"},sV={class:"field"},iV={class:"control is-expanded"},rV={class:"column is-6"},oV={class:"field is-horizontal"},aV={class:"field-label"},lV={class:"label"},cV={class:"field-body"},uV={class:"field"},dV={class:"control is-expanded"},fV={class:"field is-horizontal"},hV={class:"field-label"},pV={class:"label"},mV={class:"field-body"},gV={class:"field"},_V={class:"control is-expanded"},bV={class:"field is-horizontal"},yV={class:"field-label"},vV={class:"label"},wV={class:"field-body"},xV={class:"field"},SV={class:"control is-expanded"},EV={key:0,class:"field is-horizontal"},TV={class:"field-label"},AV={class:"label"},MV={class:"field-body"},kV={class:"field"},RV={class:"control is-expanded"};function CV(t,e,n,s,i,r){const o=Re("tooltip"),a=Re("input-select");return J(),se("div",xH,[SH,g("div",EH,[g("div",TH,[g("div",AH,[g("div",MH,[g("div",kH,[g("div",RH,[g("label",CH,[ye(" Invert Yaw "),X(o,{entry:"motor.invert_yaw"})])]),g("div",OH,[g("div",IH,[g("div",LH,[X(a,{id:"invert-yaw",class:"is-fullwidth",modelValue:t.profile.motor.invert_yaw,"onUpdate:modelValue":e[0]||(e[0]=l=>t.profile.motor.invert_yaw=l),modelModifiers:{number:!0},options:t.invertYawModes},null,8,["modelValue","options"])])])])]),g("div",PH,[g("div",DH,[g("label",FH,[ye(" Digital Idle "),X(o,{entry:"motor.digital_idle"})])]),g("div",NH,[g("div",$H,[g("div",UH,[Ve(g("input",{class:"input",id:"digital-idle",type:"number",step:"0.5",min:"0",max:"100","onUpdate:modelValue":e[1]||(e[1]=l=>t.profile.motor.digital_idle=l)},null,512),[[Je,t.profile.motor.digital_idle,void 0,{number:!0}]])])])])]),t.info.quic_protocol_version>1&&t.info.has_feature(t.constants.Features.BRUSHLESS)?(J(),se("div",BH,[g("div",GH,[g("label",zH,[ye(" DShot Time "),X(o,{entry:"motor.dshot_time"})])]),g("div",HH,[g("div",VH,[g("div",WH,[X(a,{id:"dshot-time",class:"is-fullwidth",modelValue:t.profile.motor.dshot_time,"onUpdate:modelValue":e[2]||(e[2]=l=>t.profile.motor.dshot_time=l),options:t.dshotTimes},null,8,["modelValue","options"])])])])])):qe("",!0),g("div",jH,[g("div",qH,[g("label",YH,[ye(" Flip Gyro "),X(o,{entry:"motor.flip_gyro"})])]),g("div",KH,[g("div",XH,[g("div",ZH,[Ve(g("input",{type:"checkbox",class:"switch",id:"gyro-flip","onUpdate:modelValue":e[3]||(e[3]=l=>t.gyroFlip=l)},null,512),[[r5,t.gyroFlip]]),JH])])])]),g("div",QH,[g("div",eV,[g("label",tV,[ye(" Gyro Orientation "),X(o,{entry:"motor.gyro_orientation"})])]),g("div",nV,[g("div",sV,[g("div",iV,[X(a,{class:"is-fullwidth",id:"gyro-orientation",modelValue:t.gyroOrientation,"onUpdate:modelValue":e[4]||(e[4]=l=>t.gyroOrientation=l),options:t.gyroOrientations},null,8,["modelValue","options"])])])])])]),g("div",rV,[g("div",oV,[g("div",aV,[g("label",lV,[ye(" Torque Boost "),X(o,{entry:"motor.torque_boost"})])]),g("div",cV,[g("div",uV,[g("div",dV,[Ve(g("input",{class:"input",id:"torque-boost",type:"number",step:"0.1",min:"0","onUpdate:modelValue":e[5]||(e[5]=l=>t.profile.motor.torque_boost=l)},null,512),[[Je,t.profile.motor.torque_boost,void 0,{number:!0}]])])])])]),g("div",fV,[g("div",hV,[g("label",pV,[ye(" Throttle Boost "),X(o,{entry:"motor.throttle_boost"})])]),g("div",mV,[g("div",gV,[g("div",_V,[Ve(g("input",{class:"input",id:"throttle-boost",type:"number",step:"0.1",min:"0","onUpdate:modelValue":e[6]||(e[6]=l=>t.profile.motor.throttle_boost=l)},null,512),[[Je,t.profile.motor.throttle_boost,void 0,{number:!0}]])])])])]),g("div",bV,[g("div",yV,[g("label",vV,[ye(" Turtle Throttle Percent "),X(o,{entry:"motor.turtle_throttle_percent"})])]),g("div",wV,[g("div",xV,[g("div",SV,[Ve(g("input",{class:"input",id:"turtle-throttle-percent",type:"number",step:"1",min:"0",max:"100","onUpdate:modelValue":e[7]||(e[7]=l=>t.profile.motor.turtle_throttle_percent=l)},null,512),[[Je,t.profile.motor.turtle_throttle_percent,void 0,{number:!0}]])])])])]),t.profile.profileVersionGt("0.2.0")?(J(),se("div",EV,[g("div",TV,[g("label",AV,[ye(" Motor Limit Percent "),X(o,{entry:"motor.motor_limit"})])]),g("div",MV,[g("div",kV,[g("div",RV,[Ve(g("input",{class:"input",id:"motor-limit-percent",type:"number",step:"1",min:"0",max:"100","onUpdate:modelValue":e[8]||(e[8]=l=>t.profile.motor.motor_limit=l)},null,512),[[Je,t.profile.motor.motor_limit,void 0,{number:!0}]])])])])])):qe("",!0)])])])])])}const OV=ot(wH,[["render",CV]]),IV=nt({name:"voltage",data(){return{pidVoltageCompensationOptions:[{value:0,text:"Off"},{value:1,text:"On"}]}},setup(){return{profile:Zt(),state:Js()}},computed:{pid_voltage_compensation:{get(){return this.profile.voltage.pid_voltage_compensation},set(t){this.profile.voltage.pid_voltage_compensation=t?1:0}}}}),LV={class:"card"},PV={class:"card-header"},DV=g("p",{class:"card-header-title"},"Voltage",-1),FV={class:"card-header-icon"},NV={class:"card-content"},$V={class:"content column-narrow field-is-5"},UV={class:"field is-horizontal"},BV={class:"field-label"},GV={class:"label"},zV={class:"field-body"},HV={class:"field"},VV={class:"control is-expanded"},WV={class:"field is-horizontal"},jV={class:"field-label"},qV={class:"label"},YV={class:"field-body"},KV={class:"field"},XV={class:"control is-expanded"},ZV={class:"field is-horizontal"},JV={class:"field-label"},QV={class:"label"},eW={class:"field-body"},tW={class:"field"},nW={class:"control is-expanded"},sW={class:"field is-horizontal"},iW={class:"field-label"},rW={class:"label"},oW={class:"field-body"},aW={class:"field"},lW={class:"control is-expanded"},cW={class:"field is-horizontal"},uW={class:"field-label"},dW={class:"label"},fW={class:"field-body"},hW={class:"field"},pW={class:"control is-expanded"},mW={class:"field is-horizontal"},gW={class:"field-label"},_W={class:"label"},bW={class:"field-body"},yW={class:"field"},vW={class:"control is-expanded"},wW={class:"field is-horizontal"},xW={class:"field-label"},SW={class:"label"},EW={class:"field-body"},TW={class:"field"},AW={class:"control is-expanded"};function MW(t,e,n,s,i,r){const o=Re("tooltip"),a=Re("input-select");return J(),se("div",LV,[g("header",PV,[DV,g("small",FV,Ue(t.state.vbat.toFixed(2))+"V "+Ue(t.state.ibat_filtered.toFixed(2))+"mA ",1)]),g("div",NV,[g("div",$V,[g("div",UV,[g("div",BV,[g("label",GV,[ye(" LipoCellCount "),X(o,{entry:"voltage.lipo_cell_count"})])]),g("div",zV,[g("div",HV,[g("div",VV,[Ve(g("input",{class:"input",id:"lipo-cell-count",type:"number",step:"1",min:"0","onUpdate:modelValue":e[0]||(e[0]=l=>t.profile.voltage.lipo_cell_count=l)},null,512),[[Je,t.profile.voltage.lipo_cell_count,void 0,{number:!0}]])])])])]),g("div",WV,[g("div",jV,[g("label",qV,[ye(" PidVoltageCompensation "),X(o,{entry:"voltage.pid_voltage_compensation"})])]),g("div",YV,[g("div",KV,[g("div",XV,[X(a,{class:"is-fullwidth",modelValue:t.profile.voltage.pid_voltage_compensation,"onUpdate:modelValue":e[1]||(e[1]=l=>t.profile.voltage.pid_voltage_compensation=l),modelModifiers:{number:!0},options:t.pidVoltageCompensationOptions},null,8,["modelValue","options"])])])])]),g("div",ZV,[g("div",JV,[g("label",QV,[ye(" VBattLow "),X(o,{entry:"voltage.vbattlow"})])]),g("div",eW,[g("div",tW,[g("div",nW,[Ve(g("input",{class:"input",id:"vbattlow",type:"number",step:"0.1",min:"0","onUpdate:modelValue":e[2]||(e[2]=l=>t.profile.voltage.vbattlow=l)},null,512),[[Je,t.profile.voltage.vbattlow,void 0,{number:!0}]])])])])]),g("div",sW,[g("div",iW,[g("label",rW,[ye(" ActualBatteryVoltage "),X(o,{entry:"voltage.actual_battery_voltage"})])]),g("div",oW,[g("div",aW,[g("div",lW,[Ve(g("input",{class:"input",id:"actual-battery-voltage",type:"number",step:"0.1",min:"0","onUpdate:modelValue":e[3]||(e[3]=l=>t.profile.voltage.actual_battery_voltage=l)},null,512),[[Je,t.profile.voltage.actual_battery_voltage,void 0,{number:!0}]])])])])]),g("div",cW,[g("div",uW,[g("label",dW,[ye(" ReportedTelemetryVoltage "),X(o,{entry:"voltage.reported_telemetry_voltage"})])]),g("div",fW,[g("div",hW,[g("div",pW,[Ve(g("input",{class:"input",id:"reported-telemetry-voltage",type:"number",step:"0.1",min:"0","onUpdate:modelValue":e[4]||(e[4]=l=>t.profile.voltage.reported_telemetry_voltage=l)},null,512),[[Je,t.profile.voltage.reported_telemetry_voltage,void 0,{number:!0}]])])])])]),g("div",mW,[g("div",gW,[g("label",_W,[ye(" Voltage Meter Scale "),X(o,{entry:"voltage.vbat_scale"})])]),g("div",bW,[g("div",yW,[g("div",vW,[Ve(g("input",{class:"input",id:"vbat_scale",type:"number",step:"1",min:"0","onUpdate:modelValue":e[5]||(e[5]=l=>t.profile.voltage.vbat_scale=l)},null,512),[[Je,t.profile.voltage.vbat_scale,void 0,{number:!0}]])])])])]),g("div",wW,[g("div",xW,[g("label",SW,[ye(" Current Meter Scale "),X(o,{entry:"voltage.ibat_scale"})])]),g("div",EW,[g("div",TW,[g("div",AW,[Ve(g("input",{class:"input",id:"ibat_scale",type:"number",step:"1",min:"0","onUpdate:modelValue":e[6]||(e[6]=l=>t.profile.voltage.ibat_scale=l)},null,512),[[Je,t.profile.voltage.ibat_scale,void 0,{number:!0}]])])])])])])])])}const kW=ot(IV,[["render",MW]]),RW=nt({name:"serial",setup(){return{root:wn(),target:cd(),profile:Zt()}},computed:{serialPorts(){const t=[{value:0,text:"None"}];for(const[e,n]of Object.entries(this.target.serial_port_names))t.push({value:n,text:e});return t}},watch:{"profile.serial":{handler(){this.root.set_needs_reboot()},deep:!0}}}),CW={class:"card"},OW=g("header",{class:"card-header"},[g("p",{class:"card-header-title"},"Serial")],-1),IW={class:"card-content"},LW={class:"content column-narrow field-is-5"},PW={class:"field is-horizontal"},DW={class:"field-label"},FW={class:"label"},NW={class:"field-body"},$W={class:"field"},UW={class:"control is-expanded"},BW={class:"field is-horizontal"},GW={class:"field-label"},zW={class:"label"},HW={class:"field-body"},VW={class:"field"},WW={class:"control is-expanded"},jW={class:"field is-horizontal"},qW={class:"field-label"},YW={class:"label"},KW={class:"field-body"},XW={class:"field"},ZW={class:"control is-expanded"};function JW(t,e,n,s,i,r){const o=Re("tooltip"),a=Re("input-select");return J(),se("div",CW,[OW,g("div",IW,[g("div",LW,[g("div",PW,[g("div",DW,[g("label",FW,[ye(" RX "),X(o,{entry:"serial.rx"})])]),g("div",NW,[g("div",$W,[g("div",UW,[X(a,{class:"is-fullwidth",id:"rx",modelValue:t.profile.serial.rx,"onUpdate:modelValue":e[0]||(e[0]=l=>t.profile.serial.rx=l),modelModifiers:{number:!0},options:t.serialPorts},null,8,["modelValue","options"])])])])]),g("div",BW,[g("div",GW,[g("label",zW,[ye(" VTX "),X(o,{entry:"serial.smart_audio"})])]),g("div",HW,[g("div",VW,[g("div",WW,[X(a,{class:"is-fullwidth",id:"smart-audio",modelValue:t.profile.serial.smart_audio,"onUpdate:modelValue":e[1]||(e[1]=l=>t.profile.serial.smart_audio=l),modelModifiers:{number:!0},options:t.serialPorts},null,8,["modelValue","options"])])])])]),g("div",jW,[g("div",qW,[g("label",YW,[ye(" Digital VTX "),X(o,{entry:"serial.digital_vtx"})])]),g("div",KW,[g("div",XW,[g("div",ZW,[X(a,{class:"is-fullwidth",id:"digital_vtx",modelValue:t.profile.serial.hdzero,"onUpdate:modelValue":e[2]||(e[2]=l=>t.profile.serial.hdzero=l),modelModifiers:{number:!0},options:t.serialPorts},null,8,["modelValue","options"])])])])])])])])}const QW=ot(RW,[["render",JW]]),ej=nt({name:"vtx",setup(){return{vtx:Qb(),info:Tn()}},data(){return{protocolNames:["INVALID","TRAMP","SMARTAUDIO","MSP_VTX"],frequencyTable:[[5865,5845,5825,5805,5785,5765,5745,5725],[5733,5752,5771,5790,5809,5828,5847,5866],[5705,5685,5665,5645,5885,5905,5925,5945],[5740,5760,5780,5800,5820,5840,5860,5880],[5658,5695,5732,5769,5806,5843,5880,5917],[5333,5373,5413,5453,5493,5533,5573,5613]]}},computed:{displayValueEdit(){return this.vtx.settings.protocol==1},vtxProtocolOptions(){const t=[{value:0,text:"AUTO"},{value:1,text:"TRAMP"},{value:2,text:"SMARTAUDIO"}];return this.info.quicVersionGt("0.1.1")&&t.push({value:3,text:"MSP_VTX"}),t},vtxBandOptions(){const t=[{value:0,text:"VTX_BAND_A"},{value:1,text:"VTX_BAND_B"},{value:2,text:"VTX_BAND_E"},{value:3,text:"VTX_BAND_F"},{value:4,text:"VTX_BAND_R"}];return this.info.quicVersionGt("0.1.1")&&t.push({value:5,text:"VTX_BAND_L"}),t},vtxPowerLevelOptions(){if(this.vtx.settings.power_table)return this.vtx.settings.power_table.labels.map((e,n)=>({value:n,text:e}));const t=[{value:0,text:"VTX_POWER_LEVEL_1"},{value:1,text:"VTX_POWER_LEVEL_2"},{value:2,text:"VTX_POWER_LEVEL_3"},{value:3,text:"VTX_POWER_LEVEL_4"}];return this.info.quicVersionGt("0.1.1")&&t.push({value:4,text:"VTX_POWER_LEVEL_5"}),t},vtxChannelOptions(){return[{value:0,text:"VTX_CHANNEL_1"},{value:1,text:"VTX_CHANNEL_2"},{value:2,text:"VTX_CHANNEL_3"},{value:3,text:"VTX_CHANNEL_4"},{value:4,text:"VTX_CHANNEL_5"},{value:5,text:"VTX_CHANNEL_6"},{value:6,text:"VTX_CHANNEL_7"},{value:7,text:"VTX_CHANNEL_8"}]},vtxPitModeOptions(){return[{value:0,text:"Off"},{value:1,text:"On"}]}},created(){this.vtx.update_vtx_settings(!0)}}),tj={class:"card"},nj=g("header",{class:"card-header"},[g("p",{class:"card-header-title"},"VTX")],-1),sj={class:"card-content"},ij={class:"content columns"},rj={class:"column field-is-3"},oj={class:"field is-horizontal"},aj=g("div",{class:"field-label"},[g("label",{class:"label"},"Protocol")],-1),lj={class:"field-body"},cj={class:"field"},uj={class:"control is-expanded"},dj={class:"field is-horizontal"},fj=g("div",{class:"field-label"},[g("label",{class:"label"},"Frequency")],-1),hj={class:"field-body"},pj={class:"field"},mj={class:"control is-expanded"},gj={class:"field is-horizontal"},_j=g("div",{class:"field-label"},[g("label",{class:"label"},"Band")],-1),bj={class:"field-body"},yj={class:"field"},vj={class:"control is-expanded"},wj={class:"field is-horizontal"},xj=g("div",{class:"field-label"},[g("label",{class:"label"},"Channel")],-1),Sj={class:"field-body"},Ej={class:"field"},Tj={class:"control is-expanded"},Aj={key:0,class:"field is-horizontal"},Mj=g("div",{class:"field-label"},[g("label",{class:"label"},"Pit Mode")],-1),kj={class:"field-body"},Rj={class:"field"},Cj={class:"control is-expanded"},Oj={class:"field is-horizontal"},Ij=g("div",{class:"field-label"},[g("label",{class:"label"},"Power")],-1),Lj={class:"field-body"},Pj={class:"field"},Dj={class:"control is-expanded"},Fj={key:1,class:"is-size-5 has-text-centered has-text-weight-semibold"},Nj={class:"column field-is-3"},$j={class:"columns"},Uj=g("div",{class:"column is-4",style:{"margin-left":"30%"}},[g("h6",{class:"mb-1 ml-2"},"Label")],-1),Bj={key:0,class:"column is-4"},Gj=g("h6",{class:"mb-1 ml-3"},"Value",-1),zj=[Gj],Hj={class:"field field-is-2 is-horizontal"},Vj={class:"field-label"},Wj={class:"label"},jj={class:"field-body"},qj={class:"field"},Yj={class:"control is-expanded"},Kj={class:"columns is-multiline"},Xj={class:"column is-6"},Zj=["id","readonly","onUpdate:modelValue"],Jj={key:0,class:"column is-6"},Qj=["id","onUpdate:modelValue"],eq={class:"card-footer"},tq=g("span",{class:"card-footer-item"},null,-1);function nq(t,e,n,s,i,r){const o=Re("input-select"),a=Re("spinner-btn");return J(),se("div",tj,[nj,g("div",sj,[g("div",ij,[g("div",rj,[g("div",oj,[aj,g("div",lj,[g("div",cj,[g("div",uj,[X(o,{id:"vtx-protocol",modelValue:t.vtx.settings.protocol,"onUpdate:modelValue":e[0]||(e[0]=l=>t.vtx.settings.protocol=l),modelModifiers:{number:!0},options:t.vtxProtocolOptions},null,8,["modelValue","options"])])])])]),t.vtx.settings.detected?(J(),se(tt,{key:0},[g("div",dj,[fj,g("div",hj,[g("div",pj,[g("div",mj,Ue(t.frequencyTable[t.vtx.settings.band][t.vtx.settings.channel]),1)])])]),g("div",gj,[_j,g("div",bj,[g("div",yj,[g("div",vj,[X(o,{id:"vtx-band",modelValue:t.vtx.settings.band,"onUpdate:modelValue":e[1]||(e[1]=l=>t.vtx.settings.band=l),modelModifiers:{number:!0},options:t.vtxBandOptions},null,8,["modelValue","options"])])])])]),g("div",wj,[xj,g("div",Sj,[g("div",Ej,[g("div",Tj,[X(o,{id:"vtx-channel",modelValue:t.vtx.settings.channel,"onUpdate:modelValue":e[2]||(e[2]=l=>t.vtx.settings.channel=l),modelModifiers:{number:!0},options:t.vtxChannelOptions},null,8,["modelValue","options"])])])])]),t.vtx.settings.pit_mode!=2?(J(),se("div",Aj,[Mj,g("div",kj,[g("div",Rj,[g("div",Cj,[X(o,{id:"vtx-pit-mode",modelValue:t.vtx.settings.pit_mode,"onUpdate:modelValue":e[3]||(e[3]=l=>t.vtx.settings.pit_mode=l),modelModifiers:{number:!0},options:t.vtxPitModeOptions},null,8,["modelValue","options"])])])])])):qe("",!0),g("div",Oj,[Ij,g("div",Lj,[g("div",Pj,[g("div",Dj,[X(o,{id:"vtx-power-level",modelValue:t.vtx.settings.power_level,"onUpdate:modelValue":e[4]||(e[4]=l=>t.vtx.settings.power_level=l),modelModifiers:{number:!0},options:t.vtxPowerLevelOptions},null,8,["modelValue","options"])])])])])],64)):(J(),se("div",Fj," Not detected "))]),g("div",Nj,[t.vtx.settings.detected&&t.vtx.settings.power_table?(J(),se(tt,{key:0},[g("div",$j,[Uj,t.displayValueEdit?(J(),se("div",Bj,zj)):qe("",!0)]),(J(!0),se(tt,null,Vt(t.vtx.settings.power_table.labels,(l,c)=>(J(),se("div",Hj,[g("div",Vj,[g("label",Wj,"Power Level "+Ue(c+1),1)]),g("div",jj,[g("div",qj,[g("div",Yj,[g("div",Kj,[g("div",Xj,[Ve(g("input",{class:os(["input",{"is-static":t.vtx.settings.protocol==3}]),id:"power-level-value-"+c,readonly:t.vtx.settings.protocol==3,type:"text",maxlength:"3","onUpdate:modelValue":u=>t.vtx.settings.power_table.labels[c]=u},null,10,Zj),[[Je,t.vtx.settings.power_table.labels[c],void 0,{text:!0}]])]),t.displayValueEdit?(J(),se("div",Jj,[Ve(g("input",{class:"input",id:"power-level-value-"+c,type:"number",step:"0.1",min:"0","onUpdate:modelValue":u=>t.vtx.settings.power_table.values[c]=u},null,8,Qj),[[Je,t.vtx.settings.power_table.values[c],void 0,{number:!0}]])])):qe("",!0)])])])])]))),256))],64)):qe("",!0)])])]),g("footer",eq,[tq,X(a,{class:"card-footer-item is-primary",onClick:e[5]||(e[5]=l=>t.vtx.apply_vtx_settings(t.vtx.settings))},{default:et(()=>[ye(" Apply ")]),_:1})])])}const sq=ot(ej,[["render",nq]]);/** + * @license + * Copyright 2010-2022 Three.js Authors + * SPDX-License-Identifier: MIT + */const Dw="142",iq=0,QS=1,rq=2,F8=1,oq=2,rf=3,Pu=0,Hi=1,Nl=2,aq=1,xa=0,uu=1,eE=2,tE=3,nE=4,lq=5,Uc=100,cq=101,uq=102,sE=103,iE=104,dq=200,fq=201,hq=202,pq=203,N8=204,$8=205,mq=206,gq=207,_q=208,bq=209,yq=210,vq=0,wq=1,xq=2,ey=3,Sq=4,Eq=5,Tq=6,Aq=7,U8=0,Mq=1,kq=2,uo=0,Rq=1,Cq=2,Oq=3,Iq=4,Lq=5,B8=300,Du=301,Fu=302,ty=303,ny=304,G_=306,Nu=1e3,ci=1001,mg=1002,Xn=1003,sy=1004,iy=1005,Is=1006,G8=1007,ud=1008,$l=1009,Pq=1010,Dq=1011,z8=1012,Fq=1013,_l=1014,da=1015,Zf=1016,Nq=1017,$q=1018,du=1020,Uq=1021,Bq=1022,Ui=1023,Gq=1024,zq=1025,Rl=1026,$u=1027,Hq=1028,Vq=1029,Wq=1030,jq=1031,qq=1033,e1=33776,t1=33777,n1=33778,s1=33779,rE=35840,oE=35841,aE=35842,lE=35843,Yq=36196,cE=37492,uE=37496,dE=37808,fE=37809,hE=37810,pE=37811,mE=37812,gE=37813,_E=37814,bE=37815,yE=37816,vE=37817,wE=37818,xE=37819,SE=37820,EE=37821,TE=36492,Jf=2300,Uu=2301,i1=2302,AE=2400,ME=2401,kE=2402,Kq=2500,Xq=2501,Zq=1,H8=2,Ul=3e3,Ut=3001,Jq=3200,Qq=3201,Fw=0,eY=1,Kr="srgb",bl="srgb-linear",r1=7680,tY=519,ry=35044,RE="300 es",oy=1035;class dd{addEventListener(e,n){this._listeners===void 0&&(this._listeners={});const s=this._listeners;s[e]===void 0&&(s[e]=[]),s[e].indexOf(n)===-1&&s[e].push(n)}hasEventListener(e,n){if(this._listeners===void 0)return!1;const s=this._listeners;return s[e]!==void 0&&s[e].indexOf(n)!==-1}removeEventListener(e,n){if(this._listeners===void 0)return;const i=this._listeners[e];if(i!==void 0){const r=i.indexOf(n);r!==-1&&i.splice(r,1)}}dispatchEvent(e){if(this._listeners===void 0)return;const s=this._listeners[e.type];if(s!==void 0){e.target=this;const i=s.slice(0);for(let r=0,o=i.length;r>8&255]+es[t>>16&255]+es[t>>24&255]+"-"+es[e&255]+es[e>>8&255]+"-"+es[e>>16&15|64]+es[e>>24&255]+"-"+es[n&63|128]+es[n>>8&255]+"-"+es[n>>16&255]+es[n>>24&255]+es[s&255]+es[s>>8&255]+es[s>>16&255]+es[s>>24&255]).toLowerCase()}function bs(t,e,n){return Math.max(e,Math.min(n,t))}function Nw(t,e){return(t%e+e)%e}function nY(t,e,n,s,i){return s+(t-e)*(i-s)/(n-e)}function sY(t,e,n){return t!==e?(n-t)/(e-t):0}function Sf(t,e,n){return(1-n)*t+n*e}function iY(t,e,n,s){return Sf(t,e,1-Math.exp(-n*s))}function rY(t,e=1){return e-Math.abs(Nw(t,e*2)-e)}function oY(t,e,n){return t<=e?0:t>=n?1:(t=(t-e)/(n-e),t*t*(3-2*t))}function aY(t,e,n){return t<=e?0:t>=n?1:(t=(t-e)/(n-e),t*t*t*(t*(t*6-15)+10))}function lY(t,e){return t+Math.floor(Math.random()*(e-t+1))}function cY(t,e){return t+Math.random()*(e-t)}function uY(t){return t*(.5-Math.random())}function dY(t){t!==void 0&&(CE=t);let e=CE+=1831565813;return e=Math.imul(e^e>>>15,e|1),e^=e+Math.imul(e^e>>>7,e|61),((e^e>>>14)>>>0)/4294967296}function fY(t){return t*xf}function hY(t){return t*Qf}function ay(t){return(t&t-1)===0&&t!==0}function V8(t){return Math.pow(2,Math.ceil(Math.log(t)/Math.LN2))}function gg(t){return Math.pow(2,Math.floor(Math.log(t)/Math.LN2))}function pY(t,e,n,s,i){const r=Math.cos,o=Math.sin,a=r(n/2),l=o(n/2),c=r((e+s)/2),u=o((e+s)/2),d=r((e-s)/2),f=o((e-s)/2),h=r((s-e)/2),_=o((s-e)/2);switch(i){case"XYX":t.set(a*u,l*d,l*f,a*c);break;case"YZY":t.set(l*f,a*u,l*d,a*c);break;case"ZXZ":t.set(l*d,l*f,a*u,a*c);break;case"XZX":t.set(a*u,l*_,l*h,a*c);break;case"YXY":t.set(l*h,a*u,l*_,a*c);break;case"ZYZ":t.set(l*_,l*h,a*u,a*c);break;default:console.warn("THREE.MathUtils: .setQuaternionFromProperEuler() encountered an unknown order: "+i)}}function mY(t,e){switch(e.constructor){case Float32Array:return t;case Uint16Array:return t/65535;case Uint8Array:return t/255;case Int16Array:return Math.max(t/32767,-1);case Int8Array:return Math.max(t/127,-1);default:throw new Error("Invalid component type.")}}function gY(t,e){switch(e.constructor){case Float32Array:return t;case Uint16Array:return Math.round(t*65535);case Uint8Array:return Math.round(t*255);case Int16Array:return Math.round(t*32767);case Int8Array:return Math.round(t*127);default:throw new Error("Invalid component type.")}}var _Y=Object.freeze({__proto__:null,DEG2RAD:xf,RAD2DEG:Qf,generateUUID:Vi,clamp:bs,euclideanModulo:Nw,mapLinear:nY,inverseLerp:sY,lerp:Sf,damp:iY,pingpong:rY,smoothstep:oY,smootherstep:aY,randInt:lY,randFloat:cY,randFloatSpread:uY,seededRandom:dY,degToRad:fY,radToDeg:hY,isPowerOfTwo:ay,ceilPowerOfTwo:V8,floorPowerOfTwo:gg,setQuaternionFromProperEuler:pY,normalize:gY,denormalize:mY});class Et{constructor(e=0,n=0){Et.prototype.isVector2=!0,this.x=e,this.y=n}get width(){return this.x}set width(e){this.x=e}get height(){return this.y}set height(e){this.y=e}set(e,n){return this.x=e,this.y=n,this}setScalar(e){return this.x=e,this.y=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setComponent(e,n){switch(e){case 0:this.x=n;break;case 1:this.y=n;break;default:throw new Error("index is out of range: "+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;default:throw new Error("index is out of range: "+e)}}clone(){return new this.constructor(this.x,this.y)}copy(e){return this.x=e.x,this.y=e.y,this}add(e,n){return n!==void 0?(console.warn("THREE.Vector2: .add() now only accepts one argument. Use .addVectors( a, b ) instead."),this.addVectors(e,n)):(this.x+=e.x,this.y+=e.y,this)}addScalar(e){return this.x+=e,this.y+=e,this}addVectors(e,n){return this.x=e.x+n.x,this.y=e.y+n.y,this}addScaledVector(e,n){return this.x+=e.x*n,this.y+=e.y*n,this}sub(e,n){return n!==void 0?(console.warn("THREE.Vector2: .sub() now only accepts one argument. Use .subVectors( a, b ) instead."),this.subVectors(e,n)):(this.x-=e.x,this.y-=e.y,this)}subScalar(e){return this.x-=e,this.y-=e,this}subVectors(e,n){return this.x=e.x-n.x,this.y=e.y-n.y,this}multiply(e){return this.x*=e.x,this.y*=e.y,this}multiplyScalar(e){return this.x*=e,this.y*=e,this}divide(e){return this.x/=e.x,this.y/=e.y,this}divideScalar(e){return this.multiplyScalar(1/e)}applyMatrix3(e){const n=this.x,s=this.y,i=e.elements;return this.x=i[0]*n+i[3]*s+i[6],this.y=i[1]*n+i[4]*s+i[7],this}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this}clamp(e,n){return this.x=Math.max(e.x,Math.min(n.x,this.x)),this.y=Math.max(e.y,Math.min(n.y,this.y)),this}clampScalar(e,n){return this.x=Math.max(e,Math.min(n,this.x)),this.y=Math.max(e,Math.min(n,this.y)),this}clampLength(e,n){const s=this.length();return this.divideScalar(s||1).multiplyScalar(Math.max(e,Math.min(n,s)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}roundToZero(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this}negate(){return this.x=-this.x,this.y=-this.y,this}dot(e){return this.x*e.x+this.y*e.y}cross(e){return this.x*e.y-this.y*e.x}lengthSq(){return this.x*this.x+this.y*this.y}length(){return Math.sqrt(this.x*this.x+this.y*this.y)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)}normalize(){return this.divideScalar(this.length()||1)}angle(){return Math.atan2(-this.y,-this.x)+Math.PI}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){const n=this.x-e.x,s=this.y-e.y;return n*n+s*s}manhattanDistanceTo(e){return Math.abs(this.x-e.x)+Math.abs(this.y-e.y)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,n){return this.x+=(e.x-this.x)*n,this.y+=(e.y-this.y)*n,this}lerpVectors(e,n,s){return this.x=e.x+(n.x-e.x)*s,this.y=e.y+(n.y-e.y)*s,this}equals(e){return e.x===this.x&&e.y===this.y}fromArray(e,n=0){return this.x=e[n],this.y=e[n+1],this}toArray(e=[],n=0){return e[n]=this.x,e[n+1]=this.y,e}fromBufferAttribute(e,n,s){return s!==void 0&&console.warn("THREE.Vector2: offset has been removed from .fromBufferAttribute()."),this.x=e.getX(n),this.y=e.getY(n),this}rotateAround(e,n){const s=Math.cos(n),i=Math.sin(n),r=this.x-e.x,o=this.y-e.y;return this.x=r*s-o*i+e.x,this.y=r*i+o*s+e.y,this}random(){return this.x=Math.random(),this.y=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y}}class fi{constructor(){fi.prototype.isMatrix3=!0,this.elements=[1,0,0,0,1,0,0,0,1],arguments.length>0&&console.error("THREE.Matrix3: the constructor no longer reads arguments. use .set() instead.")}set(e,n,s,i,r,o,a,l,c){const u=this.elements;return u[0]=e,u[1]=i,u[2]=a,u[3]=n,u[4]=r,u[5]=l,u[6]=s,u[7]=o,u[8]=c,this}identity(){return this.set(1,0,0,0,1,0,0,0,1),this}copy(e){const n=this.elements,s=e.elements;return n[0]=s[0],n[1]=s[1],n[2]=s[2],n[3]=s[3],n[4]=s[4],n[5]=s[5],n[6]=s[6],n[7]=s[7],n[8]=s[8],this}extractBasis(e,n,s){return e.setFromMatrix3Column(this,0),n.setFromMatrix3Column(this,1),s.setFromMatrix3Column(this,2),this}setFromMatrix4(e){const n=e.elements;return this.set(n[0],n[4],n[8],n[1],n[5],n[9],n[2],n[6],n[10]),this}multiply(e){return this.multiplyMatrices(this,e)}premultiply(e){return this.multiplyMatrices(e,this)}multiplyMatrices(e,n){const s=e.elements,i=n.elements,r=this.elements,o=s[0],a=s[3],l=s[6],c=s[1],u=s[4],d=s[7],f=s[2],h=s[5],_=s[8],p=i[0],m=i[3],b=i[6],y=i[1],v=i[4],x=i[7],S=i[2],w=i[5],T=i[8];return r[0]=o*p+a*y+l*S,r[3]=o*m+a*v+l*w,r[6]=o*b+a*x+l*T,r[1]=c*p+u*y+d*S,r[4]=c*m+u*v+d*w,r[7]=c*b+u*x+d*T,r[2]=f*p+h*y+_*S,r[5]=f*m+h*v+_*w,r[8]=f*b+h*x+_*T,this}multiplyScalar(e){const n=this.elements;return n[0]*=e,n[3]*=e,n[6]*=e,n[1]*=e,n[4]*=e,n[7]*=e,n[2]*=e,n[5]*=e,n[8]*=e,this}determinant(){const e=this.elements,n=e[0],s=e[1],i=e[2],r=e[3],o=e[4],a=e[5],l=e[6],c=e[7],u=e[8];return n*o*u-n*a*c-s*r*u+s*a*l+i*r*c-i*o*l}invert(){const e=this.elements,n=e[0],s=e[1],i=e[2],r=e[3],o=e[4],a=e[5],l=e[6],c=e[7],u=e[8],d=u*o-a*c,f=a*l-u*r,h=c*r-o*l,_=n*d+s*f+i*h;if(_===0)return this.set(0,0,0,0,0,0,0,0,0);const p=1/_;return e[0]=d*p,e[1]=(i*c-u*s)*p,e[2]=(a*s-i*o)*p,e[3]=f*p,e[4]=(u*n-i*l)*p,e[5]=(i*r-a*n)*p,e[6]=h*p,e[7]=(s*l-c*n)*p,e[8]=(o*n-s*r)*p,this}transpose(){let e;const n=this.elements;return e=n[1],n[1]=n[3],n[3]=e,e=n[2],n[2]=n[6],n[6]=e,e=n[5],n[5]=n[7],n[7]=e,this}getNormalMatrix(e){return this.setFromMatrix4(e).invert().transpose()}transposeIntoArray(e){const n=this.elements;return e[0]=n[0],e[1]=n[3],e[2]=n[6],e[3]=n[1],e[4]=n[4],e[5]=n[7],e[6]=n[2],e[7]=n[5],e[8]=n[8],this}setUvTransform(e,n,s,i,r,o,a){const l=Math.cos(r),c=Math.sin(r);return this.set(s*l,s*c,-s*(l*o+c*a)+o+e,-i*c,i*l,-i*(-c*o+l*a)+a+n,0,0,1),this}scale(e,n){const s=this.elements;return s[0]*=e,s[3]*=e,s[6]*=e,s[1]*=n,s[4]*=n,s[7]*=n,this}rotate(e){const n=Math.cos(e),s=Math.sin(e),i=this.elements,r=i[0],o=i[3],a=i[6],l=i[1],c=i[4],u=i[7];return i[0]=n*r+s*l,i[3]=n*o+s*c,i[6]=n*a+s*u,i[1]=-s*r+n*l,i[4]=-s*o+n*c,i[7]=-s*a+n*u,this}translate(e,n){const s=this.elements;return s[0]+=e*s[2],s[3]+=e*s[5],s[6]+=e*s[8],s[1]+=n*s[2],s[4]+=n*s[5],s[7]+=n*s[8],this}equals(e){const n=this.elements,s=e.elements;for(let i=0;i<9;i++)if(n[i]!==s[i])return!1;return!0}fromArray(e,n=0){for(let s=0;s<9;s++)this.elements[s]=e[s+n];return this}toArray(e=[],n=0){const s=this.elements;return e[n]=s[0],e[n+1]=s[1],e[n+2]=s[2],e[n+3]=s[3],e[n+4]=s[4],e[n+5]=s[5],e[n+6]=s[6],e[n+7]=s[7],e[n+8]=s[8],e}clone(){return new this.constructor().fromArray(this.elements)}}function W8(t){for(let e=t.length-1;e>=0;--e)if(t[e]>65535)return!0;return!1}function eh(t){return document.createElementNS("http://www.w3.org/1999/xhtml",t)}function Cl(t){return t<.04045?t*.0773993808:Math.pow(t*.9478672986+.0521327014,2.4)}function Dm(t){return t<.0031308?t*12.92:1.055*Math.pow(t,.41666)-.055}const o1={[Kr]:{[bl]:Cl},[bl]:{[Kr]:Dm}},wi={legacyMode:!0,get workingColorSpace(){return bl},set workingColorSpace(t){console.warn("THREE.ColorManagement: .workingColorSpace is readonly.")},convert:function(t,e,n){if(this.legacyMode||e===n||!e||!n)return t;if(o1[e]&&o1[e][n]!==void 0){const s=o1[e][n];return t.r=s(t.r),t.g=s(t.g),t.b=s(t.b),t}throw new Error("Unsupported color space conversion.")},fromWorkingColorSpace:function(t,e){return this.convert(t,this.workingColorSpace,e)},toWorkingColorSpace:function(t,e){return this.convert(t,e,this.workingColorSpace)}},j8={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074},Ln={r:0,g:0,b:0},xi={h:0,s:0,l:0},gp={h:0,s:0,l:0};function a1(t,e,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?t+(e-t)*6*n:n<1/2?e:n<2/3?t+(e-t)*6*(2/3-n):t}function _p(t,e){return e.r=t.r,e.g=t.g,e.b=t.b,e}let at=class{constructor(e,n,s){return this.isColor=!0,this.r=1,this.g=1,this.b=1,n===void 0&&s===void 0?this.set(e):this.setRGB(e,n,s)}set(e){return e&&e.isColor?this.copy(e):typeof e=="number"?this.setHex(e):typeof e=="string"&&this.setStyle(e),this}setScalar(e){return this.r=e,this.g=e,this.b=e,this}setHex(e,n=Kr){return e=Math.floor(e),this.r=(e>>16&255)/255,this.g=(e>>8&255)/255,this.b=(e&255)/255,wi.toWorkingColorSpace(this,n),this}setRGB(e,n,s,i=bl){return this.r=e,this.g=n,this.b=s,wi.toWorkingColorSpace(this,i),this}setHSL(e,n,s,i=bl){if(e=Nw(e,1),n=bs(n,0,1),s=bs(s,0,1),n===0)this.r=this.g=this.b=s;else{const r=s<=.5?s*(1+n):s+n-s*n,o=2*s-r;this.r=a1(o,r,e+1/3),this.g=a1(o,r,e),this.b=a1(o,r,e-1/3)}return wi.toWorkingColorSpace(this,i),this}setStyle(e,n=Kr){function s(r){r!==void 0&&parseFloat(r)<1&&console.warn("THREE.Color: Alpha component of "+e+" will be ignored.")}let i;if(i=/^((?:rgb|hsl)a?)\(([^\)]*)\)/.exec(e)){let r;const o=i[1],a=i[2];switch(o){case"rgb":case"rgba":if(r=/^\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(a))return this.r=Math.min(255,parseInt(r[1],10))/255,this.g=Math.min(255,parseInt(r[2],10))/255,this.b=Math.min(255,parseInt(r[3],10))/255,wi.toWorkingColorSpace(this,n),s(r[4]),this;if(r=/^\s*(\d+)\%\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(a))return this.r=Math.min(100,parseInt(r[1],10))/100,this.g=Math.min(100,parseInt(r[2],10))/100,this.b=Math.min(100,parseInt(r[3],10))/100,wi.toWorkingColorSpace(this,n),s(r[4]),this;break;case"hsl":case"hsla":if(r=/^\s*(\d*\.?\d+)\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(a)){const l=parseFloat(r[1])/360,c=parseInt(r[2],10)/100,u=parseInt(r[3],10)/100;return s(r[4]),this.setHSL(l,c,u,n)}break}}else if(i=/^\#([A-Fa-f\d]+)$/.exec(e)){const r=i[1],o=r.length;if(o===3)return this.r=parseInt(r.charAt(0)+r.charAt(0),16)/255,this.g=parseInt(r.charAt(1)+r.charAt(1),16)/255,this.b=parseInt(r.charAt(2)+r.charAt(2),16)/255,wi.toWorkingColorSpace(this,n),this;if(o===6)return this.r=parseInt(r.charAt(0)+r.charAt(1),16)/255,this.g=parseInt(r.charAt(2)+r.charAt(3),16)/255,this.b=parseInt(r.charAt(4)+r.charAt(5),16)/255,wi.toWorkingColorSpace(this,n),this}return e&&e.length>0?this.setColorName(e,n):this}setColorName(e,n=Kr){const s=j8[e.toLowerCase()];return s!==void 0?this.setHex(s,n):console.warn("THREE.Color: Unknown color "+e),this}clone(){return new this.constructor(this.r,this.g,this.b)}copy(e){return this.r=e.r,this.g=e.g,this.b=e.b,this}copySRGBToLinear(e){return this.r=Cl(e.r),this.g=Cl(e.g),this.b=Cl(e.b),this}copyLinearToSRGB(e){return this.r=Dm(e.r),this.g=Dm(e.g),this.b=Dm(e.b),this}convertSRGBToLinear(){return this.copySRGBToLinear(this),this}convertLinearToSRGB(){return this.copyLinearToSRGB(this),this}getHex(e=Kr){return wi.fromWorkingColorSpace(_p(this,Ln),e),bs(Ln.r*255,0,255)<<16^bs(Ln.g*255,0,255)<<8^bs(Ln.b*255,0,255)<<0}getHexString(e=Kr){return("000000"+this.getHex(e).toString(16)).slice(-6)}getHSL(e,n=bl){wi.fromWorkingColorSpace(_p(this,Ln),n);const s=Ln.r,i=Ln.g,r=Ln.b,o=Math.max(s,i,r),a=Math.min(s,i,r);let l,c;const u=(a+o)/2;if(a===o)l=0,c=0;else{const d=o-a;switch(c=u<=.5?d/(o+a):d/(2-o-a),o){case s:l=(i-r)/d+(i"u")return e.src;let n;if(e instanceof HTMLCanvasElement)n=e;else{mc===void 0&&(mc=eh("canvas")),mc.width=e.width,mc.height=e.height;const s=mc.getContext("2d");e instanceof ImageData?s.putImageData(e,0,0):s.drawImage(e,0,0,e.width,e.height),n=mc}return n.width>2048||n.height>2048?(console.warn("THREE.ImageUtils.getDataURL: Image converted to jpg for performance reasons",e),n.toDataURL("image/jpeg",.6)):n.toDataURL("image/png")}static sRGBToLinear(e){if(typeof HTMLImageElement<"u"&&e instanceof HTMLImageElement||typeof HTMLCanvasElement<"u"&&e instanceof HTMLCanvasElement||typeof ImageBitmap<"u"&&e instanceof ImageBitmap){const n=eh("canvas");n.width=e.width,n.height=e.height;const s=n.getContext("2d");s.drawImage(e,0,0,e.width,e.height);const i=s.getImageData(0,0,e.width,e.height),r=i.data;for(let o=0;o1)switch(this.wrapS){case Nu:e.x=e.x-Math.floor(e.x);break;case ci:e.x=e.x<0?0:1;break;case mg:Math.abs(Math.floor(e.x)%2)===1?e.x=Math.ceil(e.x)-e.x:e.x=e.x-Math.floor(e.x);break}if(e.y<0||e.y>1)switch(this.wrapT){case Nu:e.y=e.y-Math.floor(e.y);break;case ci:e.y=e.y<0?0:1;break;case mg:Math.abs(Math.floor(e.y)%2)===1?e.y=Math.ceil(e.y)-e.y:e.y=e.y-Math.floor(e.y);break}return this.flipY&&(e.y=1-e.y),e}set needsUpdate(e){e===!0&&(this.version++,this.source.needsUpdate=!0)}}ws.DEFAULT_IMAGE=null;ws.DEFAULT_MAPPING=B8;class Ht{constructor(e=0,n=0,s=0,i=1){Ht.prototype.isVector4=!0,this.x=e,this.y=n,this.z=s,this.w=i}get width(){return this.z}set width(e){this.z=e}get height(){return this.w}set height(e){this.w=e}set(e,n,s,i){return this.x=e,this.y=n,this.z=s,this.w=i,this}setScalar(e){return this.x=e,this.y=e,this.z=e,this.w=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setZ(e){return this.z=e,this}setW(e){return this.w=e,this}setComponent(e,n){switch(e){case 0:this.x=n;break;case 1:this.y=n;break;case 2:this.z=n;break;case 3:this.w=n;break;default:throw new Error("index is out of range: "+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;case 2:return this.z;case 3:return this.w;default:throw new Error("index is out of range: "+e)}}clone(){return new this.constructor(this.x,this.y,this.z,this.w)}copy(e){return this.x=e.x,this.y=e.y,this.z=e.z,this.w=e.w!==void 0?e.w:1,this}add(e,n){return n!==void 0?(console.warn("THREE.Vector4: .add() now only accepts one argument. Use .addVectors( a, b ) instead."),this.addVectors(e,n)):(this.x+=e.x,this.y+=e.y,this.z+=e.z,this.w+=e.w,this)}addScalar(e){return this.x+=e,this.y+=e,this.z+=e,this.w+=e,this}addVectors(e,n){return this.x=e.x+n.x,this.y=e.y+n.y,this.z=e.z+n.z,this.w=e.w+n.w,this}addScaledVector(e,n){return this.x+=e.x*n,this.y+=e.y*n,this.z+=e.z*n,this.w+=e.w*n,this}sub(e,n){return n!==void 0?(console.warn("THREE.Vector4: .sub() now only accepts one argument. Use .subVectors( a, b ) instead."),this.subVectors(e,n)):(this.x-=e.x,this.y-=e.y,this.z-=e.z,this.w-=e.w,this)}subScalar(e){return this.x-=e,this.y-=e,this.z-=e,this.w-=e,this}subVectors(e,n){return this.x=e.x-n.x,this.y=e.y-n.y,this.z=e.z-n.z,this.w=e.w-n.w,this}multiply(e){return this.x*=e.x,this.y*=e.y,this.z*=e.z,this.w*=e.w,this}multiplyScalar(e){return this.x*=e,this.y*=e,this.z*=e,this.w*=e,this}applyMatrix4(e){const n=this.x,s=this.y,i=this.z,r=this.w,o=e.elements;return this.x=o[0]*n+o[4]*s+o[8]*i+o[12]*r,this.y=o[1]*n+o[5]*s+o[9]*i+o[13]*r,this.z=o[2]*n+o[6]*s+o[10]*i+o[14]*r,this.w=o[3]*n+o[7]*s+o[11]*i+o[15]*r,this}divideScalar(e){return this.multiplyScalar(1/e)}setAxisAngleFromQuaternion(e){this.w=2*Math.acos(e.w);const n=Math.sqrt(1-e.w*e.w);return n<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=e.x/n,this.y=e.y/n,this.z=e.z/n),this}setAxisAngleFromRotationMatrix(e){let n,s,i,r;const l=e.elements,c=l[0],u=l[4],d=l[8],f=l[1],h=l[5],_=l[9],p=l[2],m=l[6],b=l[10];if(Math.abs(u-f)<.01&&Math.abs(d-p)<.01&&Math.abs(_-m)<.01){if(Math.abs(u+f)<.1&&Math.abs(d+p)<.1&&Math.abs(_+m)<.1&&Math.abs(c+h+b-3)<.1)return this.set(1,0,0,0),this;n=Math.PI;const v=(c+1)/2,x=(h+1)/2,S=(b+1)/2,w=(u+f)/4,T=(d+p)/4,E=(_+m)/4;return v>x&&v>S?v<.01?(s=0,i=.707106781,r=.707106781):(s=Math.sqrt(v),i=w/s,r=T/s):x>S?x<.01?(s=.707106781,i=0,r=.707106781):(i=Math.sqrt(x),s=w/i,r=E/i):S<.01?(s=.707106781,i=.707106781,r=0):(r=Math.sqrt(S),s=T/r,i=E/r),this.set(s,i,r,n),this}let y=Math.sqrt((m-_)*(m-_)+(d-p)*(d-p)+(f-u)*(f-u));return Math.abs(y)<.001&&(y=1),this.x=(m-_)/y,this.y=(d-p)/y,this.z=(f-u)/y,this.w=Math.acos((c+h+b-1)/2),this}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this.z=Math.min(this.z,e.z),this.w=Math.min(this.w,e.w),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this.z=Math.max(this.z,e.z),this.w=Math.max(this.w,e.w),this}clamp(e,n){return this.x=Math.max(e.x,Math.min(n.x,this.x)),this.y=Math.max(e.y,Math.min(n.y,this.y)),this.z=Math.max(e.z,Math.min(n.z,this.z)),this.w=Math.max(e.w,Math.min(n.w,this.w)),this}clampScalar(e,n){return this.x=Math.max(e,Math.min(n,this.x)),this.y=Math.max(e,Math.min(n,this.y)),this.z=Math.max(e,Math.min(n,this.z)),this.w=Math.max(e,Math.min(n,this.w)),this}clampLength(e,n){const s=this.length();return this.divideScalar(s||1).multiplyScalar(Math.max(e,Math.min(n,s)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this.w=Math.floor(this.w),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this.w=Math.ceil(this.w),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this.w=Math.round(this.w),this}roundToZero(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this.z=this.z<0?Math.ceil(this.z):Math.floor(this.z),this.w=this.w<0?Math.ceil(this.w):Math.floor(this.w),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this.w=-this.w,this}dot(e){return this.x*e.x+this.y*e.y+this.z*e.z+this.w*e.w}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)+Math.abs(this.w)}normalize(){return this.divideScalar(this.length()||1)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,n){return this.x+=(e.x-this.x)*n,this.y+=(e.y-this.y)*n,this.z+=(e.z-this.z)*n,this.w+=(e.w-this.w)*n,this}lerpVectors(e,n,s){return this.x=e.x+(n.x-e.x)*s,this.y=e.y+(n.y-e.y)*s,this.z=e.z+(n.z-e.z)*s,this.w=e.w+(n.w-e.w)*s,this}equals(e){return e.x===this.x&&e.y===this.y&&e.z===this.z&&e.w===this.w}fromArray(e,n=0){return this.x=e[n],this.y=e[n+1],this.z=e[n+2],this.w=e[n+3],this}toArray(e=[],n=0){return e[n]=this.x,e[n+1]=this.y,e[n+2]=this.z,e[n+3]=this.w,e}fromBufferAttribute(e,n,s){return s!==void 0&&console.warn("THREE.Vector4: offset has been removed from .fromBufferAttribute()."),this.x=e.getX(n),this.y=e.getY(n),this.z=e.getZ(n),this.w=e.getW(n),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this.w=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z,yield this.w}}class Bl extends dd{constructor(e,n,s={}){super(),this.isWebGLRenderTarget=!0,this.width=e,this.height=n,this.depth=1,this.scissor=new Ht(0,0,e,n),this.scissorTest=!1,this.viewport=new Ht(0,0,e,n);const i={width:e,height:n,depth:1};this.texture=new ws(i,s.mapping,s.wrapS,s.wrapT,s.magFilter,s.minFilter,s.format,s.type,s.anisotropy,s.encoding),this.texture.isRenderTargetTexture=!0,this.texture.flipY=!1,this.texture.generateMipmaps=s.generateMipmaps!==void 0?s.generateMipmaps:!1,this.texture.internalFormat=s.internalFormat!==void 0?s.internalFormat:null,this.texture.minFilter=s.minFilter!==void 0?s.minFilter:Is,this.depthBuffer=s.depthBuffer!==void 0?s.depthBuffer:!0,this.stencilBuffer=s.stencilBuffer!==void 0?s.stencilBuffer:!1,this.depthTexture=s.depthTexture!==void 0?s.depthTexture:null,this.samples=s.samples!==void 0?s.samples:0}setSize(e,n,s=1){(this.width!==e||this.height!==n||this.depth!==s)&&(this.width=e,this.height=n,this.depth=s,this.texture.image.width=e,this.texture.image.height=n,this.texture.image.depth=s,this.dispose()),this.viewport.set(0,0,e,n),this.scissor.set(0,0,e,n)}clone(){return new this.constructor().copy(this)}copy(e){this.width=e.width,this.height=e.height,this.depth=e.depth,this.viewport.copy(e.viewport),this.texture=e.texture.clone(),this.texture.isRenderTargetTexture=!0;const n=Object.assign({},e.texture.image);return this.texture.source=new Y8(n),this.depthBuffer=e.depthBuffer,this.stencilBuffer=e.stencilBuffer,e.depthTexture!==null&&(this.depthTexture=e.depthTexture.clone()),this.samples=e.samples,this}dispose(){this.dispatchEvent({type:"dispose"})}}class K8 extends ws{constructor(e=null,n=1,s=1,i=1){super(null),this.isDataArrayTexture=!0,this.image={data:e,width:n,height:s,depth:i},this.magFilter=Xn,this.minFilter=Xn,this.wrapR=ci,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}}class yY extends ws{constructor(e=null,n=1,s=1,i=1){super(null),this.isData3DTexture=!0,this.image={data:e,width:n,height:s,depth:i},this.magFilter=Xn,this.minFilter=Xn,this.wrapR=ci,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}}class Mr{constructor(e=0,n=0,s=0,i=1){this.isQuaternion=!0,this._x=e,this._y=n,this._z=s,this._w=i}static slerp(e,n,s,i){return console.warn("THREE.Quaternion: Static .slerp() has been deprecated. Use qm.slerpQuaternions( qa, qb, t ) instead."),s.slerpQuaternions(e,n,i)}static slerpFlat(e,n,s,i,r,o,a){let l=s[i+0],c=s[i+1],u=s[i+2],d=s[i+3];const f=r[o+0],h=r[o+1],_=r[o+2],p=r[o+3];if(a===0){e[n+0]=l,e[n+1]=c,e[n+2]=u,e[n+3]=d;return}if(a===1){e[n+0]=f,e[n+1]=h,e[n+2]=_,e[n+3]=p;return}if(d!==p||l!==f||c!==h||u!==_){let m=1-a;const b=l*f+c*h+u*_+d*p,y=b>=0?1:-1,v=1-b*b;if(v>Number.EPSILON){const S=Math.sqrt(v),w=Math.atan2(S,b*y);m=Math.sin(m*w)/S,a=Math.sin(a*w)/S}const x=a*y;if(l=l*m+f*x,c=c*m+h*x,u=u*m+_*x,d=d*m+p*x,m===1-a){const S=1/Math.sqrt(l*l+c*c+u*u+d*d);l*=S,c*=S,u*=S,d*=S}}e[n]=l,e[n+1]=c,e[n+2]=u,e[n+3]=d}static multiplyQuaternionsFlat(e,n,s,i,r,o){const a=s[i],l=s[i+1],c=s[i+2],u=s[i+3],d=r[o],f=r[o+1],h=r[o+2],_=r[o+3];return e[n]=a*_+u*d+l*h-c*f,e[n+1]=l*_+u*f+c*d-a*h,e[n+2]=c*_+u*h+a*f-l*d,e[n+3]=u*_-a*d-l*f-c*h,e}get x(){return this._x}set x(e){this._x=e,this._onChangeCallback()}get y(){return this._y}set y(e){this._y=e,this._onChangeCallback()}get z(){return this._z}set z(e){this._z=e,this._onChangeCallback()}get w(){return this._w}set w(e){this._w=e,this._onChangeCallback()}set(e,n,s,i){return this._x=e,this._y=n,this._z=s,this._w=i,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._w)}copy(e){return this._x=e.x,this._y=e.y,this._z=e.z,this._w=e.w,this._onChangeCallback(),this}setFromEuler(e,n){if(!(e&&e.isEuler))throw new Error("THREE.Quaternion: .setFromEuler() now expects an Euler rotation rather than a Vector3 and order.");const s=e._x,i=e._y,r=e._z,o=e._order,a=Math.cos,l=Math.sin,c=a(s/2),u=a(i/2),d=a(r/2),f=l(s/2),h=l(i/2),_=l(r/2);switch(o){case"XYZ":this._x=f*u*d+c*h*_,this._y=c*h*d-f*u*_,this._z=c*u*_+f*h*d,this._w=c*u*d-f*h*_;break;case"YXZ":this._x=f*u*d+c*h*_,this._y=c*h*d-f*u*_,this._z=c*u*_-f*h*d,this._w=c*u*d+f*h*_;break;case"ZXY":this._x=f*u*d-c*h*_,this._y=c*h*d+f*u*_,this._z=c*u*_+f*h*d,this._w=c*u*d-f*h*_;break;case"ZYX":this._x=f*u*d-c*h*_,this._y=c*h*d+f*u*_,this._z=c*u*_-f*h*d,this._w=c*u*d+f*h*_;break;case"YZX":this._x=f*u*d+c*h*_,this._y=c*h*d+f*u*_,this._z=c*u*_-f*h*d,this._w=c*u*d-f*h*_;break;case"XZY":this._x=f*u*d-c*h*_,this._y=c*h*d-f*u*_,this._z=c*u*_+f*h*d,this._w=c*u*d+f*h*_;break;default:console.warn("THREE.Quaternion: .setFromEuler() encountered an unknown order: "+o)}return n!==!1&&this._onChangeCallback(),this}setFromAxisAngle(e,n){const s=n/2,i=Math.sin(s);return this._x=e.x*i,this._y=e.y*i,this._z=e.z*i,this._w=Math.cos(s),this._onChangeCallback(),this}setFromRotationMatrix(e){const n=e.elements,s=n[0],i=n[4],r=n[8],o=n[1],a=n[5],l=n[9],c=n[2],u=n[6],d=n[10],f=s+a+d;if(f>0){const h=.5/Math.sqrt(f+1);this._w=.25/h,this._x=(u-l)*h,this._y=(r-c)*h,this._z=(o-i)*h}else if(s>a&&s>d){const h=2*Math.sqrt(1+s-a-d);this._w=(u-l)/h,this._x=.25*h,this._y=(i+o)/h,this._z=(r+c)/h}else if(a>d){const h=2*Math.sqrt(1+a-s-d);this._w=(r-c)/h,this._x=(i+o)/h,this._y=.25*h,this._z=(l+u)/h}else{const h=2*Math.sqrt(1+d-s-a);this._w=(o-i)/h,this._x=(r+c)/h,this._y=(l+u)/h,this._z=.25*h}return this._onChangeCallback(),this}setFromUnitVectors(e,n){let s=e.dot(n)+1;return sMath.abs(e.z)?(this._x=-e.y,this._y=e.x,this._z=0,this._w=s):(this._x=0,this._y=-e.z,this._z=e.y,this._w=s)):(this._x=e.y*n.z-e.z*n.y,this._y=e.z*n.x-e.x*n.z,this._z=e.x*n.y-e.y*n.x,this._w=s),this.normalize()}angleTo(e){return 2*Math.acos(Math.abs(bs(this.dot(e),-1,1)))}rotateTowards(e,n){const s=this.angleTo(e);if(s===0)return this;const i=Math.min(1,n/s);return this.slerp(e,i),this}identity(){return this.set(0,0,0,1)}invert(){return this.conjugate()}conjugate(){return this._x*=-1,this._y*=-1,this._z*=-1,this._onChangeCallback(),this}dot(e){return this._x*e._x+this._y*e._y+this._z*e._z+this._w*e._w}lengthSq(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w}length(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)}normalize(){let e=this.length();return e===0?(this._x=0,this._y=0,this._z=0,this._w=1):(e=1/e,this._x=this._x*e,this._y=this._y*e,this._z=this._z*e,this._w=this._w*e),this._onChangeCallback(),this}multiply(e,n){return n!==void 0?(console.warn("THREE.Quaternion: .multiply() now only accepts one argument. Use .multiplyQuaternions( a, b ) instead."),this.multiplyQuaternions(e,n)):this.multiplyQuaternions(this,e)}premultiply(e){return this.multiplyQuaternions(e,this)}multiplyQuaternions(e,n){const s=e._x,i=e._y,r=e._z,o=e._w,a=n._x,l=n._y,c=n._z,u=n._w;return this._x=s*u+o*a+i*c-r*l,this._y=i*u+o*l+r*a-s*c,this._z=r*u+o*c+s*l-i*a,this._w=o*u-s*a-i*l-r*c,this._onChangeCallback(),this}slerp(e,n){if(n===0)return this;if(n===1)return this.copy(e);const s=this._x,i=this._y,r=this._z,o=this._w;let a=o*e._w+s*e._x+i*e._y+r*e._z;if(a<0?(this._w=-e._w,this._x=-e._x,this._y=-e._y,this._z=-e._z,a=-a):this.copy(e),a>=1)return this._w=o,this._x=s,this._y=i,this._z=r,this;const l=1-a*a;if(l<=Number.EPSILON){const h=1-n;return this._w=h*o+n*this._w,this._x=h*s+n*this._x,this._y=h*i+n*this._y,this._z=h*r+n*this._z,this.normalize(),this._onChangeCallback(),this}const c=Math.sqrt(l),u=Math.atan2(c,a),d=Math.sin((1-n)*u)/c,f=Math.sin(n*u)/c;return this._w=o*d+this._w*f,this._x=s*d+this._x*f,this._y=i*d+this._y*f,this._z=r*d+this._z*f,this._onChangeCallback(),this}slerpQuaternions(e,n,s){return this.copy(e).slerp(n,s)}random(){const e=Math.random(),n=Math.sqrt(1-e),s=Math.sqrt(e),i=2*Math.PI*Math.random(),r=2*Math.PI*Math.random();return this.set(n*Math.cos(i),s*Math.sin(r),s*Math.cos(r),n*Math.sin(i))}equals(e){return e._x===this._x&&e._y===this._y&&e._z===this._z&&e._w===this._w}fromArray(e,n=0){return this._x=e[n],this._y=e[n+1],this._z=e[n+2],this._w=e[n+3],this._onChangeCallback(),this}toArray(e=[],n=0){return e[n]=this._x,e[n+1]=this._y,e[n+2]=this._z,e[n+3]=this._w,e}fromBufferAttribute(e,n){return this._x=e.getX(n),this._y=e.getY(n),this._z=e.getZ(n),this._w=e.getW(n),this}_onChange(e){return this._onChangeCallback=e,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._w}}class ee{constructor(e=0,n=0,s=0){ee.prototype.isVector3=!0,this.x=e,this.y=n,this.z=s}set(e,n,s){return s===void 0&&(s=this.z),this.x=e,this.y=n,this.z=s,this}setScalar(e){return this.x=e,this.y=e,this.z=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setZ(e){return this.z=e,this}setComponent(e,n){switch(e){case 0:this.x=n;break;case 1:this.y=n;break;case 2:this.z=n;break;default:throw new Error("index is out of range: "+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw new Error("index is out of range: "+e)}}clone(){return new this.constructor(this.x,this.y,this.z)}copy(e){return this.x=e.x,this.y=e.y,this.z=e.z,this}add(e,n){return n!==void 0?(console.warn("THREE.Vector3: .add() now only accepts one argument. Use .addVectors( a, b ) instead."),this.addVectors(e,n)):(this.x+=e.x,this.y+=e.y,this.z+=e.z,this)}addScalar(e){return this.x+=e,this.y+=e,this.z+=e,this}addVectors(e,n){return this.x=e.x+n.x,this.y=e.y+n.y,this.z=e.z+n.z,this}addScaledVector(e,n){return this.x+=e.x*n,this.y+=e.y*n,this.z+=e.z*n,this}sub(e,n){return n!==void 0?(console.warn("THREE.Vector3: .sub() now only accepts one argument. Use .subVectors( a, b ) instead."),this.subVectors(e,n)):(this.x-=e.x,this.y-=e.y,this.z-=e.z,this)}subScalar(e){return this.x-=e,this.y-=e,this.z-=e,this}subVectors(e,n){return this.x=e.x-n.x,this.y=e.y-n.y,this.z=e.z-n.z,this}multiply(e,n){return n!==void 0?(console.warn("THREE.Vector3: .multiply() now only accepts one argument. Use .multiplyVectors( a, b ) instead."),this.multiplyVectors(e,n)):(this.x*=e.x,this.y*=e.y,this.z*=e.z,this)}multiplyScalar(e){return this.x*=e,this.y*=e,this.z*=e,this}multiplyVectors(e,n){return this.x=e.x*n.x,this.y=e.y*n.y,this.z=e.z*n.z,this}applyEuler(e){return e&&e.isEuler||console.error("THREE.Vector3: .applyEuler() now expects an Euler rotation rather than a Vector3 and order."),this.applyQuaternion(OE.setFromEuler(e))}applyAxisAngle(e,n){return this.applyQuaternion(OE.setFromAxisAngle(e,n))}applyMatrix3(e){const n=this.x,s=this.y,i=this.z,r=e.elements;return this.x=r[0]*n+r[3]*s+r[6]*i,this.y=r[1]*n+r[4]*s+r[7]*i,this.z=r[2]*n+r[5]*s+r[8]*i,this}applyNormalMatrix(e){return this.applyMatrix3(e).normalize()}applyMatrix4(e){const n=this.x,s=this.y,i=this.z,r=e.elements,o=1/(r[3]*n+r[7]*s+r[11]*i+r[15]);return this.x=(r[0]*n+r[4]*s+r[8]*i+r[12])*o,this.y=(r[1]*n+r[5]*s+r[9]*i+r[13])*o,this.z=(r[2]*n+r[6]*s+r[10]*i+r[14])*o,this}applyQuaternion(e){const n=this.x,s=this.y,i=this.z,r=e.x,o=e.y,a=e.z,l=e.w,c=l*n+o*i-a*s,u=l*s+a*n-r*i,d=l*i+r*s-o*n,f=-r*n-o*s-a*i;return this.x=c*l+f*-r+u*-a-d*-o,this.y=u*l+f*-o+d*-r-c*-a,this.z=d*l+f*-a+c*-o-u*-r,this}project(e){return this.applyMatrix4(e.matrixWorldInverse).applyMatrix4(e.projectionMatrix)}unproject(e){return this.applyMatrix4(e.projectionMatrixInverse).applyMatrix4(e.matrixWorld)}transformDirection(e){const n=this.x,s=this.y,i=this.z,r=e.elements;return this.x=r[0]*n+r[4]*s+r[8]*i,this.y=r[1]*n+r[5]*s+r[9]*i,this.z=r[2]*n+r[6]*s+r[10]*i,this.normalize()}divide(e){return this.x/=e.x,this.y/=e.y,this.z/=e.z,this}divideScalar(e){return this.multiplyScalar(1/e)}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this.z=Math.min(this.z,e.z),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this.z=Math.max(this.z,e.z),this}clamp(e,n){return this.x=Math.max(e.x,Math.min(n.x,this.x)),this.y=Math.max(e.y,Math.min(n.y,this.y)),this.z=Math.max(e.z,Math.min(n.z,this.z)),this}clampScalar(e,n){return this.x=Math.max(e,Math.min(n,this.x)),this.y=Math.max(e,Math.min(n,this.y)),this.z=Math.max(e,Math.min(n,this.z)),this}clampLength(e,n){const s=this.length();return this.divideScalar(s||1).multiplyScalar(Math.max(e,Math.min(n,s)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this}roundToZero(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this.z=this.z<0?Math.ceil(this.z):Math.floor(this.z),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this}dot(e){return this.x*e.x+this.y*e.y+this.z*e.z}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)}normalize(){return this.divideScalar(this.length()||1)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,n){return this.x+=(e.x-this.x)*n,this.y+=(e.y-this.y)*n,this.z+=(e.z-this.z)*n,this}lerpVectors(e,n,s){return this.x=e.x+(n.x-e.x)*s,this.y=e.y+(n.y-e.y)*s,this.z=e.z+(n.z-e.z)*s,this}cross(e,n){return n!==void 0?(console.warn("THREE.Vector3: .cross() now only accepts one argument. Use .crossVectors( a, b ) instead."),this.crossVectors(e,n)):this.crossVectors(this,e)}crossVectors(e,n){const s=e.x,i=e.y,r=e.z,o=n.x,a=n.y,l=n.z;return this.x=i*l-r*a,this.y=r*o-s*l,this.z=s*a-i*o,this}projectOnVector(e){const n=e.lengthSq();if(n===0)return this.set(0,0,0);const s=e.dot(this)/n;return this.copy(e).multiplyScalar(s)}projectOnPlane(e){return c1.copy(this).projectOnVector(e),this.sub(c1)}reflect(e){return this.sub(c1.copy(e).multiplyScalar(2*this.dot(e)))}angleTo(e){const n=Math.sqrt(this.lengthSq()*e.lengthSq());if(n===0)return Math.PI/2;const s=this.dot(e)/n;return Math.acos(bs(s,-1,1))}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){const n=this.x-e.x,s=this.y-e.y,i=this.z-e.z;return n*n+s*s+i*i}manhattanDistanceTo(e){return Math.abs(this.x-e.x)+Math.abs(this.y-e.y)+Math.abs(this.z-e.z)}setFromSpherical(e){return this.setFromSphericalCoords(e.radius,e.phi,e.theta)}setFromSphericalCoords(e,n,s){const i=Math.sin(n)*e;return this.x=i*Math.sin(s),this.y=Math.cos(n)*e,this.z=i*Math.cos(s),this}setFromCylindrical(e){return this.setFromCylindricalCoords(e.radius,e.theta,e.y)}setFromCylindricalCoords(e,n,s){return this.x=e*Math.sin(n),this.y=s,this.z=e*Math.cos(n),this}setFromMatrixPosition(e){const n=e.elements;return this.x=n[12],this.y=n[13],this.z=n[14],this}setFromMatrixScale(e){const n=this.setFromMatrixColumn(e,0).length(),s=this.setFromMatrixColumn(e,1).length(),i=this.setFromMatrixColumn(e,2).length();return this.x=n,this.y=s,this.z=i,this}setFromMatrixColumn(e,n){return this.fromArray(e.elements,n*4)}setFromMatrix3Column(e,n){return this.fromArray(e.elements,n*3)}setFromEuler(e){return this.x=e._x,this.y=e._y,this.z=e._z,this}equals(e){return e.x===this.x&&e.y===this.y&&e.z===this.z}fromArray(e,n=0){return this.x=e[n],this.y=e[n+1],this.z=e[n+2],this}toArray(e=[],n=0){return e[n]=this.x,e[n+1]=this.y,e[n+2]=this.z,e}fromBufferAttribute(e,n,s){return s!==void 0&&console.warn("THREE.Vector3: offset has been removed from .fromBufferAttribute()."),this.x=e.getX(n),this.y=e.getY(n),this.z=e.getZ(n),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this}randomDirection(){const e=(Math.random()-.5)*2,n=Math.random()*Math.PI*2,s=Math.sqrt(1-e**2);return this.x=s*Math.cos(n),this.y=s*Math.sin(n),this.z=e,this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z}}const c1=new ee,OE=new Mr;class fd{constructor(e=new ee(1/0,1/0,1/0),n=new ee(-1/0,-1/0,-1/0)){this.isBox3=!0,this.min=e,this.max=n}set(e,n){return this.min.copy(e),this.max.copy(n),this}setFromArray(e){let n=1/0,s=1/0,i=1/0,r=-1/0,o=-1/0,a=-1/0;for(let l=0,c=e.length;lr&&(r=u),d>o&&(o=d),f>a&&(a=f)}return this.min.set(n,s,i),this.max.set(r,o,a),this}setFromBufferAttribute(e){let n=1/0,s=1/0,i=1/0,r=-1/0,o=-1/0,a=-1/0;for(let l=0,c=e.count;lr&&(r=u),d>o&&(o=d),f>a&&(a=f)}return this.min.set(n,s,i),this.max.set(r,o,a),this}setFromPoints(e){this.makeEmpty();for(let n=0,s=e.length;nthis.max.x||e.ythis.max.y||e.zthis.max.z)}containsBox(e){return this.min.x<=e.min.x&&e.max.x<=this.max.x&&this.min.y<=e.min.y&&e.max.y<=this.max.y&&this.min.z<=e.min.z&&e.max.z<=this.max.z}getParameter(e,n){return n.set((e.x-this.min.x)/(this.max.x-this.min.x),(e.y-this.min.y)/(this.max.y-this.min.y),(e.z-this.min.z)/(this.max.z-this.min.z))}intersectsBox(e){return!(e.max.xthis.max.x||e.max.ythis.max.y||e.max.zthis.max.z)}intersectsSphere(e){return this.clampPoint(e.center,Va),Va.distanceToSquared(e.center)<=e.radius*e.radius}intersectsPlane(e){let n,s;return e.normal.x>0?(n=e.normal.x*this.min.x,s=e.normal.x*this.max.x):(n=e.normal.x*this.max.x,s=e.normal.x*this.min.x),e.normal.y>0?(n+=e.normal.y*this.min.y,s+=e.normal.y*this.max.y):(n+=e.normal.y*this.max.y,s+=e.normal.y*this.min.y),e.normal.z>0?(n+=e.normal.z*this.min.z,s+=e.normal.z*this.max.z):(n+=e.normal.z*this.max.z,s+=e.normal.z*this.min.z),n<=-e.constant&&s>=-e.constant}intersectsTriangle(e){if(this.isEmpty())return!1;this.getCenter(Dd),bp.subVectors(this.max,Dd),gc.subVectors(e.a,Dd),_c.subVectors(e.b,Dd),bc.subVectors(e.c,Dd),Lo.subVectors(_c,gc),Po.subVectors(bc,_c),Wa.subVectors(gc,bc);let n=[0,-Lo.z,Lo.y,0,-Po.z,Po.y,0,-Wa.z,Wa.y,Lo.z,0,-Lo.x,Po.z,0,-Po.x,Wa.z,0,-Wa.x,-Lo.y,Lo.x,0,-Po.y,Po.x,0,-Wa.y,Wa.x,0];return!d1(n,gc,_c,bc,bp)||(n=[1,0,0,0,1,0,0,0,1],!d1(n,gc,_c,bc,bp))?!1:(yp.crossVectors(Lo,Po),n=[yp.x,yp.y,yp.z],d1(n,gc,_c,bc,bp))}clampPoint(e,n){return n.copy(e).clamp(this.min,this.max)}distanceToPoint(e){return Va.copy(e).clamp(this.min,this.max).sub(e).length()}getBoundingSphere(e){return this.getCenter(e.center),e.radius=this.getSize(Va).length()*.5,e}intersect(e){return this.min.max(e.min),this.max.min(e.max),this.isEmpty()&&this.makeEmpty(),this}union(e){return this.min.min(e.min),this.max.max(e.max),this}applyMatrix4(e){return this.isEmpty()?this:(Dr[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(e),Dr[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(e),Dr[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(e),Dr[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(e),Dr[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(e),Dr[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(e),Dr[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(e),Dr[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(e),this.setFromPoints(Dr),this)}translate(e){return this.min.add(e),this.max.add(e),this}equals(e){return e.min.equals(this.min)&&e.max.equals(this.max)}}const Dr=[new ee,new ee,new ee,new ee,new ee,new ee,new ee,new ee],Va=new ee,u1=new fd,gc=new ee,_c=new ee,bc=new ee,Lo=new ee,Po=new ee,Wa=new ee,Dd=new ee,bp=new ee,yp=new ee,ja=new ee;function d1(t,e,n,s,i){for(let r=0,o=t.length-3;r<=o;r+=3){ja.fromArray(t,r);const a=i.x*Math.abs(ja.x)+i.y*Math.abs(ja.y)+i.z*Math.abs(ja.z),l=e.dot(ja),c=n.dot(ja),u=s.dot(ja);if(Math.max(-Math.max(l,c,u),Math.min(l,c,u))>a)return!1}return!0}const vY=new fd,IE=new ee,vp=new ee,f1=new ee;class hd{constructor(e=new ee,n=-1){this.center=e,this.radius=n}set(e,n){return this.center.copy(e),this.radius=n,this}setFromPoints(e,n){const s=this.center;n!==void 0?s.copy(n):vY.setFromPoints(e).getCenter(s);let i=0;for(let r=0,o=e.length;rthis.radius*this.radius&&(n.sub(this.center).normalize(),n.multiplyScalar(this.radius).add(this.center)),n}getBoundingBox(e){return this.isEmpty()?(e.makeEmpty(),e):(e.set(this.center,this.center),e.expandByScalar(this.radius),e)}applyMatrix4(e){return this.center.applyMatrix4(e),this.radius=this.radius*e.getMaxScaleOnAxis(),this}translate(e){return this.center.add(e),this}expandByPoint(e){f1.subVectors(e,this.center);const n=f1.lengthSq();if(n>this.radius*this.radius){const s=Math.sqrt(n),i=(s-this.radius)*.5;this.center.add(f1.multiplyScalar(i/s)),this.radius+=i}return this}union(e){return this.center.equals(e.center)===!0?vp.set(0,0,1).multiplyScalar(e.radius):vp.subVectors(e.center,this.center).normalize().multiplyScalar(e.radius),this.expandByPoint(IE.copy(e.center).add(vp)),this.expandByPoint(IE.copy(e.center).sub(vp)),this}equals(e){return e.center.equals(this.center)&&e.radius===this.radius}clone(){return new this.constructor().copy(this)}}const Fr=new ee,h1=new ee,wp=new ee,Do=new ee,p1=new ee,xp=new ee,m1=new ee;class $w{constructor(e=new ee,n=new ee(0,0,-1)){this.origin=e,this.direction=n}set(e,n){return this.origin.copy(e),this.direction.copy(n),this}copy(e){return this.origin.copy(e.origin),this.direction.copy(e.direction),this}at(e,n){return n.copy(this.direction).multiplyScalar(e).add(this.origin)}lookAt(e){return this.direction.copy(e).sub(this.origin).normalize(),this}recast(e){return this.origin.copy(this.at(e,Fr)),this}closestPointToPoint(e,n){n.subVectors(e,this.origin);const s=n.dot(this.direction);return s<0?n.copy(this.origin):n.copy(this.direction).multiplyScalar(s).add(this.origin)}distanceToPoint(e){return Math.sqrt(this.distanceSqToPoint(e))}distanceSqToPoint(e){const n=Fr.subVectors(e,this.origin).dot(this.direction);return n<0?this.origin.distanceToSquared(e):(Fr.copy(this.direction).multiplyScalar(n).add(this.origin),Fr.distanceToSquared(e))}distanceSqToSegment(e,n,s,i){h1.copy(e).add(n).multiplyScalar(.5),wp.copy(n).sub(e).normalize(),Do.copy(this.origin).sub(h1);const r=e.distanceTo(n)*.5,o=-this.direction.dot(wp),a=Do.dot(this.direction),l=-Do.dot(wp),c=Do.lengthSq(),u=Math.abs(1-o*o);let d,f,h,_;if(u>0)if(d=o*l-a,f=o*a-l,_=r*u,d>=0)if(f>=-_)if(f<=_){const p=1/u;d*=p,f*=p,h=d*(d+o*f+2*a)+f*(o*d+f+2*l)+c}else f=r,d=Math.max(0,-(o*f+a)),h=-d*d+f*(f+2*l)+c;else f=-r,d=Math.max(0,-(o*f+a)),h=-d*d+f*(f+2*l)+c;else f<=-_?(d=Math.max(0,-(-o*r+a)),f=d>0?-r:Math.min(Math.max(-r,-l),r),h=-d*d+f*(f+2*l)+c):f<=_?(d=0,f=Math.min(Math.max(-r,-l),r),h=f*(f+2*l)+c):(d=Math.max(0,-(o*r+a)),f=d>0?r:Math.min(Math.max(-r,-l),r),h=-d*d+f*(f+2*l)+c);else f=o>0?-r:r,d=Math.max(0,-(o*f+a)),h=-d*d+f*(f+2*l)+c;return s&&s.copy(this.direction).multiplyScalar(d).add(this.origin),i&&i.copy(wp).multiplyScalar(f).add(h1),h}intersectSphere(e,n){Fr.subVectors(e.center,this.origin);const s=Fr.dot(this.direction),i=Fr.dot(Fr)-s*s,r=e.radius*e.radius;if(i>r)return null;const o=Math.sqrt(r-i),a=s-o,l=s+o;return a<0&&l<0?null:a<0?this.at(l,n):this.at(a,n)}intersectsSphere(e){return this.distanceSqToPoint(e.center)<=e.radius*e.radius}distanceToPlane(e){const n=e.normal.dot(this.direction);if(n===0)return e.distanceToPoint(this.origin)===0?0:null;const s=-(this.origin.dot(e.normal)+e.constant)/n;return s>=0?s:null}intersectPlane(e,n){const s=this.distanceToPlane(e);return s===null?null:this.at(s,n)}intersectsPlane(e){const n=e.distanceToPoint(this.origin);return n===0||e.normal.dot(this.direction)*n<0}intersectBox(e,n){let s,i,r,o,a,l;const c=1/this.direction.x,u=1/this.direction.y,d=1/this.direction.z,f=this.origin;return c>=0?(s=(e.min.x-f.x)*c,i=(e.max.x-f.x)*c):(s=(e.max.x-f.x)*c,i=(e.min.x-f.x)*c),u>=0?(r=(e.min.y-f.y)*u,o=(e.max.y-f.y)*u):(r=(e.max.y-f.y)*u,o=(e.min.y-f.y)*u),s>o||r>i||((r>s||s!==s)&&(s=r),(o=0?(a=(e.min.z-f.z)*d,l=(e.max.z-f.z)*d):(a=(e.max.z-f.z)*d,l=(e.min.z-f.z)*d),s>l||a>i)||((a>s||s!==s)&&(s=a),(l=0?s:i,n)}intersectsBox(e){return this.intersectBox(e,Fr)!==null}intersectTriangle(e,n,s,i,r){p1.subVectors(n,e),xp.subVectors(s,e),m1.crossVectors(p1,xp);let o=this.direction.dot(m1),a;if(o>0){if(i)return null;a=1}else if(o<0)a=-1,o=-o;else return null;Do.subVectors(this.origin,e);const l=a*this.direction.dot(xp.crossVectors(Do,xp));if(l<0)return null;const c=a*this.direction.dot(p1.cross(Do));if(c<0||l+c>o)return null;const u=-a*Do.dot(m1);return u<0?null:this.at(u/o,r)}applyMatrix4(e){return this.origin.applyMatrix4(e),this.direction.transformDirection(e),this}equals(e){return e.origin.equals(this.origin)&&e.direction.equals(this.direction)}clone(){return new this.constructor().copy(this)}}class Lt{constructor(){Lt.prototype.isMatrix4=!0,this.elements=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],arguments.length>0&&console.error("THREE.Matrix4: the constructor no longer reads arguments. use .set() instead.")}set(e,n,s,i,r,o,a,l,c,u,d,f,h,_,p,m){const b=this.elements;return b[0]=e,b[4]=n,b[8]=s,b[12]=i,b[1]=r,b[5]=o,b[9]=a,b[13]=l,b[2]=c,b[6]=u,b[10]=d,b[14]=f,b[3]=h,b[7]=_,b[11]=p,b[15]=m,this}identity(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this}clone(){return new Lt().fromArray(this.elements)}copy(e){const n=this.elements,s=e.elements;return n[0]=s[0],n[1]=s[1],n[2]=s[2],n[3]=s[3],n[4]=s[4],n[5]=s[5],n[6]=s[6],n[7]=s[7],n[8]=s[8],n[9]=s[9],n[10]=s[10],n[11]=s[11],n[12]=s[12],n[13]=s[13],n[14]=s[14],n[15]=s[15],this}copyPosition(e){const n=this.elements,s=e.elements;return n[12]=s[12],n[13]=s[13],n[14]=s[14],this}setFromMatrix3(e){const n=e.elements;return this.set(n[0],n[3],n[6],0,n[1],n[4],n[7],0,n[2],n[5],n[8],0,0,0,0,1),this}extractBasis(e,n,s){return e.setFromMatrixColumn(this,0),n.setFromMatrixColumn(this,1),s.setFromMatrixColumn(this,2),this}makeBasis(e,n,s){return this.set(e.x,n.x,s.x,0,e.y,n.y,s.y,0,e.z,n.z,s.z,0,0,0,0,1),this}extractRotation(e){const n=this.elements,s=e.elements,i=1/yc.setFromMatrixColumn(e,0).length(),r=1/yc.setFromMatrixColumn(e,1).length(),o=1/yc.setFromMatrixColumn(e,2).length();return n[0]=s[0]*i,n[1]=s[1]*i,n[2]=s[2]*i,n[3]=0,n[4]=s[4]*r,n[5]=s[5]*r,n[6]=s[6]*r,n[7]=0,n[8]=s[8]*o,n[9]=s[9]*o,n[10]=s[10]*o,n[11]=0,n[12]=0,n[13]=0,n[14]=0,n[15]=1,this}makeRotationFromEuler(e){e&&e.isEuler||console.error("THREE.Matrix4: .makeRotationFromEuler() now expects a Euler rotation rather than a Vector3 and order.");const n=this.elements,s=e.x,i=e.y,r=e.z,o=Math.cos(s),a=Math.sin(s),l=Math.cos(i),c=Math.sin(i),u=Math.cos(r),d=Math.sin(r);if(e.order==="XYZ"){const f=o*u,h=o*d,_=a*u,p=a*d;n[0]=l*u,n[4]=-l*d,n[8]=c,n[1]=h+_*c,n[5]=f-p*c,n[9]=-a*l,n[2]=p-f*c,n[6]=_+h*c,n[10]=o*l}else if(e.order==="YXZ"){const f=l*u,h=l*d,_=c*u,p=c*d;n[0]=f+p*a,n[4]=_*a-h,n[8]=o*c,n[1]=o*d,n[5]=o*u,n[9]=-a,n[2]=h*a-_,n[6]=p+f*a,n[10]=o*l}else if(e.order==="ZXY"){const f=l*u,h=l*d,_=c*u,p=c*d;n[0]=f-p*a,n[4]=-o*d,n[8]=_+h*a,n[1]=h+_*a,n[5]=o*u,n[9]=p-f*a,n[2]=-o*c,n[6]=a,n[10]=o*l}else if(e.order==="ZYX"){const f=o*u,h=o*d,_=a*u,p=a*d;n[0]=l*u,n[4]=_*c-h,n[8]=f*c+p,n[1]=l*d,n[5]=p*c+f,n[9]=h*c-_,n[2]=-c,n[6]=a*l,n[10]=o*l}else if(e.order==="YZX"){const f=o*l,h=o*c,_=a*l,p=a*c;n[0]=l*u,n[4]=p-f*d,n[8]=_*d+h,n[1]=d,n[5]=o*u,n[9]=-a*u,n[2]=-c*u,n[6]=h*d+_,n[10]=f-p*d}else if(e.order==="XZY"){const f=o*l,h=o*c,_=a*l,p=a*c;n[0]=l*u,n[4]=-d,n[8]=c*u,n[1]=f*d+p,n[5]=o*u,n[9]=h*d-_,n[2]=_*d-h,n[6]=a*u,n[10]=p*d+f}return n[3]=0,n[7]=0,n[11]=0,n[12]=0,n[13]=0,n[14]=0,n[15]=1,this}makeRotationFromQuaternion(e){return this.compose(wY,e,xY)}lookAt(e,n,s){const i=this.elements;return Ns.subVectors(e,n),Ns.lengthSq()===0&&(Ns.z=1),Ns.normalize(),Fo.crossVectors(s,Ns),Fo.lengthSq()===0&&(Math.abs(s.z)===1?Ns.x+=1e-4:Ns.z+=1e-4,Ns.normalize(),Fo.crossVectors(s,Ns)),Fo.normalize(),Sp.crossVectors(Ns,Fo),i[0]=Fo.x,i[4]=Sp.x,i[8]=Ns.x,i[1]=Fo.y,i[5]=Sp.y,i[9]=Ns.y,i[2]=Fo.z,i[6]=Sp.z,i[10]=Ns.z,this}multiply(e,n){return n!==void 0?(console.warn("THREE.Matrix4: .multiply() now only accepts one argument. Use .multiplyMatrices( a, b ) instead."),this.multiplyMatrices(e,n)):this.multiplyMatrices(this,e)}premultiply(e){return this.multiplyMatrices(e,this)}multiplyMatrices(e,n){const s=e.elements,i=n.elements,r=this.elements,o=s[0],a=s[4],l=s[8],c=s[12],u=s[1],d=s[5],f=s[9],h=s[13],_=s[2],p=s[6],m=s[10],b=s[14],y=s[3],v=s[7],x=s[11],S=s[15],w=i[0],T=i[4],E=i[8],A=i[12],O=i[1],I=i[5],B=i[9],U=i[13],D=i[2],$=i[6],F=i[10],H=i[14],j=i[3],Z=i[7],K=i[11],oe=i[15];return r[0]=o*w+a*O+l*D+c*j,r[4]=o*T+a*I+l*$+c*Z,r[8]=o*E+a*B+l*F+c*K,r[12]=o*A+a*U+l*H+c*oe,r[1]=u*w+d*O+f*D+h*j,r[5]=u*T+d*I+f*$+h*Z,r[9]=u*E+d*B+f*F+h*K,r[13]=u*A+d*U+f*H+h*oe,r[2]=_*w+p*O+m*D+b*j,r[6]=_*T+p*I+m*$+b*Z,r[10]=_*E+p*B+m*F+b*K,r[14]=_*A+p*U+m*H+b*oe,r[3]=y*w+v*O+x*D+S*j,r[7]=y*T+v*I+x*$+S*Z,r[11]=y*E+v*B+x*F+S*K,r[15]=y*A+v*U+x*H+S*oe,this}multiplyScalar(e){const n=this.elements;return n[0]*=e,n[4]*=e,n[8]*=e,n[12]*=e,n[1]*=e,n[5]*=e,n[9]*=e,n[13]*=e,n[2]*=e,n[6]*=e,n[10]*=e,n[14]*=e,n[3]*=e,n[7]*=e,n[11]*=e,n[15]*=e,this}determinant(){const e=this.elements,n=e[0],s=e[4],i=e[8],r=e[12],o=e[1],a=e[5],l=e[9],c=e[13],u=e[2],d=e[6],f=e[10],h=e[14],_=e[3],p=e[7],m=e[11],b=e[15];return _*(+r*l*d-i*c*d-r*a*f+s*c*f+i*a*h-s*l*h)+p*(+n*l*h-n*c*f+r*o*f-i*o*h+i*c*u-r*l*u)+m*(+n*c*d-n*a*h-r*o*d+s*o*h+r*a*u-s*c*u)+b*(-i*a*u-n*l*d+n*a*f+i*o*d-s*o*f+s*l*u)}transpose(){const e=this.elements;let n;return n=e[1],e[1]=e[4],e[4]=n,n=e[2],e[2]=e[8],e[8]=n,n=e[6],e[6]=e[9],e[9]=n,n=e[3],e[3]=e[12],e[12]=n,n=e[7],e[7]=e[13],e[13]=n,n=e[11],e[11]=e[14],e[14]=n,this}setPosition(e,n,s){const i=this.elements;return e.isVector3?(i[12]=e.x,i[13]=e.y,i[14]=e.z):(i[12]=e,i[13]=n,i[14]=s),this}invert(){const e=this.elements,n=e[0],s=e[1],i=e[2],r=e[3],o=e[4],a=e[5],l=e[6],c=e[7],u=e[8],d=e[9],f=e[10],h=e[11],_=e[12],p=e[13],m=e[14],b=e[15],y=d*m*c-p*f*c+p*l*h-a*m*h-d*l*b+a*f*b,v=_*f*c-u*m*c-_*l*h+o*m*h+u*l*b-o*f*b,x=u*p*c-_*d*c+_*a*h-o*p*h-u*a*b+o*d*b,S=_*d*l-u*p*l-_*a*f+o*p*f+u*a*m-o*d*m,w=n*y+s*v+i*x+r*S;if(w===0)return this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);const T=1/w;return e[0]=y*T,e[1]=(p*f*r-d*m*r-p*i*h+s*m*h+d*i*b-s*f*b)*T,e[2]=(a*m*r-p*l*r+p*i*c-s*m*c-a*i*b+s*l*b)*T,e[3]=(d*l*r-a*f*r-d*i*c+s*f*c+a*i*h-s*l*h)*T,e[4]=v*T,e[5]=(u*m*r-_*f*r+_*i*h-n*m*h-u*i*b+n*f*b)*T,e[6]=(_*l*r-o*m*r-_*i*c+n*m*c+o*i*b-n*l*b)*T,e[7]=(o*f*r-u*l*r+u*i*c-n*f*c-o*i*h+n*l*h)*T,e[8]=x*T,e[9]=(_*d*r-u*p*r-_*s*h+n*p*h+u*s*b-n*d*b)*T,e[10]=(o*p*r-_*a*r+_*s*c-n*p*c-o*s*b+n*a*b)*T,e[11]=(u*a*r-o*d*r-u*s*c+n*d*c+o*s*h-n*a*h)*T,e[12]=S*T,e[13]=(u*p*i-_*d*i+_*s*f-n*p*f-u*s*m+n*d*m)*T,e[14]=(_*a*i-o*p*i-_*s*l+n*p*l+o*s*m-n*a*m)*T,e[15]=(o*d*i-u*a*i+u*s*l-n*d*l-o*s*f+n*a*f)*T,this}scale(e){const n=this.elements,s=e.x,i=e.y,r=e.z;return n[0]*=s,n[4]*=i,n[8]*=r,n[1]*=s,n[5]*=i,n[9]*=r,n[2]*=s,n[6]*=i,n[10]*=r,n[3]*=s,n[7]*=i,n[11]*=r,this}getMaxScaleOnAxis(){const e=this.elements,n=e[0]*e[0]+e[1]*e[1]+e[2]*e[2],s=e[4]*e[4]+e[5]*e[5]+e[6]*e[6],i=e[8]*e[8]+e[9]*e[9]+e[10]*e[10];return Math.sqrt(Math.max(n,s,i))}makeTranslation(e,n,s){return this.set(1,0,0,e,0,1,0,n,0,0,1,s,0,0,0,1),this}makeRotationX(e){const n=Math.cos(e),s=Math.sin(e);return this.set(1,0,0,0,0,n,-s,0,0,s,n,0,0,0,0,1),this}makeRotationY(e){const n=Math.cos(e),s=Math.sin(e);return this.set(n,0,s,0,0,1,0,0,-s,0,n,0,0,0,0,1),this}makeRotationZ(e){const n=Math.cos(e),s=Math.sin(e);return this.set(n,-s,0,0,s,n,0,0,0,0,1,0,0,0,0,1),this}makeRotationAxis(e,n){const s=Math.cos(n),i=Math.sin(n),r=1-s,o=e.x,a=e.y,l=e.z,c=r*o,u=r*a;return this.set(c*o+s,c*a-i*l,c*l+i*a,0,c*a+i*l,u*a+s,u*l-i*o,0,c*l-i*a,u*l+i*o,r*l*l+s,0,0,0,0,1),this}makeScale(e,n,s){return this.set(e,0,0,0,0,n,0,0,0,0,s,0,0,0,0,1),this}makeShear(e,n,s,i,r,o){return this.set(1,s,r,0,e,1,o,0,n,i,1,0,0,0,0,1),this}compose(e,n,s){const i=this.elements,r=n._x,o=n._y,a=n._z,l=n._w,c=r+r,u=o+o,d=a+a,f=r*c,h=r*u,_=r*d,p=o*u,m=o*d,b=a*d,y=l*c,v=l*u,x=l*d,S=s.x,w=s.y,T=s.z;return i[0]=(1-(p+b))*S,i[1]=(h+x)*S,i[2]=(_-v)*S,i[3]=0,i[4]=(h-x)*w,i[5]=(1-(f+b))*w,i[6]=(m+y)*w,i[7]=0,i[8]=(_+v)*T,i[9]=(m-y)*T,i[10]=(1-(f+p))*T,i[11]=0,i[12]=e.x,i[13]=e.y,i[14]=e.z,i[15]=1,this}decompose(e,n,s){const i=this.elements;let r=yc.set(i[0],i[1],i[2]).length();const o=yc.set(i[4],i[5],i[6]).length(),a=yc.set(i[8],i[9],i[10]).length();this.determinant()<0&&(r=-r),e.x=i[12],e.y=i[13],e.z=i[14],Si.copy(this);const c=1/r,u=1/o,d=1/a;return Si.elements[0]*=c,Si.elements[1]*=c,Si.elements[2]*=c,Si.elements[4]*=u,Si.elements[5]*=u,Si.elements[6]*=u,Si.elements[8]*=d,Si.elements[9]*=d,Si.elements[10]*=d,n.setFromRotationMatrix(Si),s.x=r,s.y=o,s.z=a,this}makePerspective(e,n,s,i,r,o){o===void 0&&console.warn("THREE.Matrix4: .makePerspective() has been redefined and has a new signature. Please check the docs.");const a=this.elements,l=2*r/(n-e),c=2*r/(s-i),u=(n+e)/(n-e),d=(s+i)/(s-i),f=-(o+r)/(o-r),h=-2*o*r/(o-r);return a[0]=l,a[4]=0,a[8]=u,a[12]=0,a[1]=0,a[5]=c,a[9]=d,a[13]=0,a[2]=0,a[6]=0,a[10]=f,a[14]=h,a[3]=0,a[7]=0,a[11]=-1,a[15]=0,this}makeOrthographic(e,n,s,i,r,o){const a=this.elements,l=1/(n-e),c=1/(s-i),u=1/(o-r),d=(n+e)*l,f=(s+i)*c,h=(o+r)*u;return a[0]=2*l,a[4]=0,a[8]=0,a[12]=-d,a[1]=0,a[5]=2*c,a[9]=0,a[13]=-f,a[2]=0,a[6]=0,a[10]=-2*u,a[14]=-h,a[3]=0,a[7]=0,a[11]=0,a[15]=1,this}equals(e){const n=this.elements,s=e.elements;for(let i=0;i<16;i++)if(n[i]!==s[i])return!1;return!0}fromArray(e,n=0){for(let s=0;s<16;s++)this.elements[s]=e[s+n];return this}toArray(e=[],n=0){const s=this.elements;return e[n]=s[0],e[n+1]=s[1],e[n+2]=s[2],e[n+3]=s[3],e[n+4]=s[4],e[n+5]=s[5],e[n+6]=s[6],e[n+7]=s[7],e[n+8]=s[8],e[n+9]=s[9],e[n+10]=s[10],e[n+11]=s[11],e[n+12]=s[12],e[n+13]=s[13],e[n+14]=s[14],e[n+15]=s[15],e}}const yc=new ee,Si=new Lt,wY=new ee(0,0,0),xY=new ee(1,1,1),Fo=new ee,Sp=new ee,Ns=new ee,LE=new Lt,PE=new Mr;class Fh{constructor(e=0,n=0,s=0,i=Fh.DefaultOrder){this.isEuler=!0,this._x=e,this._y=n,this._z=s,this._order=i}get x(){return this._x}set x(e){this._x=e,this._onChangeCallback()}get y(){return this._y}set y(e){this._y=e,this._onChangeCallback()}get z(){return this._z}set z(e){this._z=e,this._onChangeCallback()}get order(){return this._order}set order(e){this._order=e,this._onChangeCallback()}set(e,n,s,i=this._order){return this._x=e,this._y=n,this._z=s,this._order=i,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._order)}copy(e){return this._x=e._x,this._y=e._y,this._z=e._z,this._order=e._order,this._onChangeCallback(),this}setFromRotationMatrix(e,n=this._order,s=!0){const i=e.elements,r=i[0],o=i[4],a=i[8],l=i[1],c=i[5],u=i[9],d=i[2],f=i[6],h=i[10];switch(n){case"XYZ":this._y=Math.asin(bs(a,-1,1)),Math.abs(a)<.9999999?(this._x=Math.atan2(-u,h),this._z=Math.atan2(-o,r)):(this._x=Math.atan2(f,c),this._z=0);break;case"YXZ":this._x=Math.asin(-bs(u,-1,1)),Math.abs(u)<.9999999?(this._y=Math.atan2(a,h),this._z=Math.atan2(l,c)):(this._y=Math.atan2(-d,r),this._z=0);break;case"ZXY":this._x=Math.asin(bs(f,-1,1)),Math.abs(f)<.9999999?(this._y=Math.atan2(-d,h),this._z=Math.atan2(-o,c)):(this._y=0,this._z=Math.atan2(l,r));break;case"ZYX":this._y=Math.asin(-bs(d,-1,1)),Math.abs(d)<.9999999?(this._x=Math.atan2(f,h),this._z=Math.atan2(l,r)):(this._x=0,this._z=Math.atan2(-o,c));break;case"YZX":this._z=Math.asin(bs(l,-1,1)),Math.abs(l)<.9999999?(this._x=Math.atan2(-u,c),this._y=Math.atan2(-d,r)):(this._x=0,this._y=Math.atan2(a,h));break;case"XZY":this._z=Math.asin(-bs(o,-1,1)),Math.abs(o)<.9999999?(this._x=Math.atan2(f,c),this._y=Math.atan2(a,r)):(this._x=Math.atan2(-u,h),this._y=0);break;default:console.warn("THREE.Euler: .setFromRotationMatrix() encountered an unknown order: "+n)}return this._order=n,s===!0&&this._onChangeCallback(),this}setFromQuaternion(e,n,s){return LE.makeRotationFromQuaternion(e),this.setFromRotationMatrix(LE,n,s)}setFromVector3(e,n=this._order){return this.set(e.x,e.y,e.z,n)}reorder(e){return PE.setFromEuler(this),this.setFromQuaternion(PE,e)}equals(e){return e._x===this._x&&e._y===this._y&&e._z===this._z&&e._order===this._order}fromArray(e){return this._x=e[0],this._y=e[1],this._z=e[2],e[3]!==void 0&&(this._order=e[3]),this._onChangeCallback(),this}toArray(e=[],n=0){return e[n]=this._x,e[n+1]=this._y,e[n+2]=this._z,e[n+3]=this._order,e}_onChange(e){return this._onChangeCallback=e,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._order}toVector3(){console.error("THREE.Euler: .toVector3() has been removed. Use Vector3.setFromEuler() instead")}}Fh.DefaultOrder="XYZ";Fh.RotationOrders=["XYZ","YZX","ZXY","XZY","YXZ","ZYX"];let X8=class{constructor(){this.mask=1}set(e){this.mask=(1<>>0}enable(e){this.mask|=1<1){for(let n=0;n1){for(let s=0;s0){i.children=[];for(let a=0;a0){i.animations=[];for(let a=0;a0&&(s.geometries=a),l.length>0&&(s.materials=l),c.length>0&&(s.textures=c),u.length>0&&(s.images=u),d.length>0&&(s.shapes=d),f.length>0&&(s.skeletons=f),h.length>0&&(s.animations=h),_.length>0&&(s.nodes=_)}return s.object=i,s;function o(a){const l=[];for(const c in a){const u=a[c];delete u.metadata,l.push(u)}return l}}clone(e){return new this.constructor().copy(this,e)}copy(e,n=!0){if(this.name=e.name,this.up.copy(e.up),this.position.copy(e.position),this.rotation.order=e.rotation.order,this.quaternion.copy(e.quaternion),this.scale.copy(e.scale),this.matrix.copy(e.matrix),this.matrixWorld.copy(e.matrixWorld),this.matrixAutoUpdate=e.matrixAutoUpdate,this.matrixWorldNeedsUpdate=e.matrixWorldNeedsUpdate,this.layers.mask=e.layers.mask,this.visible=e.visible,this.castShadow=e.castShadow,this.receiveShadow=e.receiveShadow,this.frustumCulled=e.frustumCulled,this.renderOrder=e.renderOrder,this.userData=JSON.parse(JSON.stringify(e.userData)),n===!0)for(let s=0;s0?i.multiplyScalar(1/Math.sqrt(r)):i.set(0,0,0)}static getBarycoord(e,n,s,i,r){Ei.subVectors(i,n),$r.subVectors(s,n),g1.subVectors(e,n);const o=Ei.dot(Ei),a=Ei.dot($r),l=Ei.dot(g1),c=$r.dot($r),u=$r.dot(g1),d=o*c-a*a;if(d===0)return r.set(-2,-1,-1);const f=1/d,h=(c*l-a*u)*f,_=(o*u-a*l)*f;return r.set(1-h-_,_,h)}static containsPoint(e,n,s,i){return this.getBarycoord(e,n,s,i,Ur),Ur.x>=0&&Ur.y>=0&&Ur.x+Ur.y<=1}static getUV(e,n,s,i,r,o,a,l){return this.getBarycoord(e,n,s,i,Ur),l.set(0,0),l.addScaledVector(r,Ur.x),l.addScaledVector(o,Ur.y),l.addScaledVector(a,Ur.z),l}static isFrontFacing(e,n,s,i){return Ei.subVectors(s,n),$r.subVectors(e,n),Ei.cross($r).dot(i)<0}set(e,n,s){return this.a.copy(e),this.b.copy(n),this.c.copy(s),this}setFromPointsAndIndices(e,n,s,i){return this.a.copy(e[n]),this.b.copy(e[s]),this.c.copy(e[i]),this}setFromAttributeAndIndices(e,n,s,i){return this.a.fromBufferAttribute(e,n),this.b.fromBufferAttribute(e,s),this.c.fromBufferAttribute(e,i),this}clone(){return new this.constructor().copy(this)}copy(e){return this.a.copy(e.a),this.b.copy(e.b),this.c.copy(e.c),this}getArea(){return Ei.subVectors(this.c,this.b),$r.subVectors(this.a,this.b),Ei.cross($r).length()*.5}getMidpoint(e){return e.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)}getNormal(e){return to.getNormal(this.a,this.b,this.c,e)}getPlane(e){return e.setFromCoplanarPoints(this.a,this.b,this.c)}getBarycoord(e,n){return to.getBarycoord(e,this.a,this.b,this.c,n)}getUV(e,n,s,i,r){return to.getUV(e,this.a,this.b,this.c,n,s,i,r)}containsPoint(e){return to.containsPoint(e,this.a,this.b,this.c)}isFrontFacing(e){return to.isFrontFacing(this.a,this.b,this.c,e)}intersectsBox(e){return e.intersectsTriangle(this)}closestPointToPoint(e,n){const s=this.a,i=this.b,r=this.c;let o,a;wc.subVectors(i,s),xc.subVectors(r,s),_1.subVectors(e,s);const l=wc.dot(_1),c=xc.dot(_1);if(l<=0&&c<=0)return n.copy(s);b1.subVectors(e,i);const u=wc.dot(b1),d=xc.dot(b1);if(u>=0&&d<=u)return n.copy(i);const f=l*d-u*c;if(f<=0&&l>=0&&u<=0)return o=l/(l-u),n.copy(s).addScaledVector(wc,o);y1.subVectors(e,r);const h=wc.dot(y1),_=xc.dot(y1);if(_>=0&&h<=_)return n.copy(r);const p=h*c-l*_;if(p<=0&&c>=0&&_<=0)return a=c/(c-_),n.copy(s).addScaledVector(xc,a);const m=u*_-h*d;if(m<=0&&d-u>=0&&h-_>=0)return BE.subVectors(r,i),a=(d-u)/(d-u+(h-_)),n.copy(i).addScaledVector(BE,a);const b=1/(m+p+f);return o=p*b,a=f*b,n.copy(s).addScaledVector(wc,o).addScaledVector(xc,a)}equals(e){return e.a.equals(this.a)&&e.b.equals(this.b)&&e.c.equals(this.c)}}let MY=0;class wr extends dd{constructor(){super(),this.isMaterial=!0,Object.defineProperty(this,"id",{value:MY++}),this.uuid=Vi(),this.name="",this.type="Material",this.blending=uu,this.side=Pu,this.vertexColors=!1,this.opacity=1,this.transparent=!1,this.blendSrc=N8,this.blendDst=$8,this.blendEquation=Uc,this.blendSrcAlpha=null,this.blendDstAlpha=null,this.blendEquationAlpha=null,this.depthFunc=ey,this.depthTest=!0,this.depthWrite=!0,this.stencilWriteMask=255,this.stencilFunc=tY,this.stencilRef=0,this.stencilFuncMask=255,this.stencilFail=r1,this.stencilZFail=r1,this.stencilZPass=r1,this.stencilWrite=!1,this.clippingPlanes=null,this.clipIntersection=!1,this.clipShadows=!1,this.shadowSide=null,this.colorWrite=!0,this.precision=null,this.polygonOffset=!1,this.polygonOffsetFactor=0,this.polygonOffsetUnits=0,this.dithering=!1,this.alphaToCoverage=!1,this.premultipliedAlpha=!1,this.visible=!0,this.toneMapped=!0,this.userData={},this.version=0,this._alphaTest=0}get alphaTest(){return this._alphaTest}set alphaTest(e){this._alphaTest>0!=e>0&&this.version++,this._alphaTest=e}onBuild(){}onBeforeRender(){}onBeforeCompile(){}customProgramCacheKey(){return this.onBeforeCompile.toString()}setValues(e){if(e!==void 0)for(const n in e){const s=e[n];if(s===void 0){console.warn("THREE.Material: '"+n+"' parameter is undefined.");continue}if(n==="shading"){console.warn("THREE."+this.type+": .shading has been removed. Use the boolean .flatShading instead."),this.flatShading=s===aq;continue}const i=this[n];if(i===void 0){console.warn("THREE."+this.type+": '"+n+"' is not a property of this material.");continue}i&&i.isColor?i.set(s):i&&i.isVector3&&s&&s.isVector3?i.copy(s):this[n]=s}}toJSON(e){const n=e===void 0||typeof e=="string";n&&(e={textures:{},images:{}});const s={metadata:{version:4.5,type:"Material",generator:"Material.toJSON"}};s.uuid=this.uuid,s.type=this.type,this.name!==""&&(s.name=this.name),this.color&&this.color.isColor&&(s.color=this.color.getHex()),this.roughness!==void 0&&(s.roughness=this.roughness),this.metalness!==void 0&&(s.metalness=this.metalness),this.sheen!==void 0&&(s.sheen=this.sheen),this.sheenColor&&this.sheenColor.isColor&&(s.sheenColor=this.sheenColor.getHex()),this.sheenRoughness!==void 0&&(s.sheenRoughness=this.sheenRoughness),this.emissive&&this.emissive.isColor&&(s.emissive=this.emissive.getHex()),this.emissiveIntensity&&this.emissiveIntensity!==1&&(s.emissiveIntensity=this.emissiveIntensity),this.specular&&this.specular.isColor&&(s.specular=this.specular.getHex()),this.specularIntensity!==void 0&&(s.specularIntensity=this.specularIntensity),this.specularColor&&this.specularColor.isColor&&(s.specularColor=this.specularColor.getHex()),this.shininess!==void 0&&(s.shininess=this.shininess),this.clearcoat!==void 0&&(s.clearcoat=this.clearcoat),this.clearcoatRoughness!==void 0&&(s.clearcoatRoughness=this.clearcoatRoughness),this.clearcoatMap&&this.clearcoatMap.isTexture&&(s.clearcoatMap=this.clearcoatMap.toJSON(e).uuid),this.clearcoatRoughnessMap&&this.clearcoatRoughnessMap.isTexture&&(s.clearcoatRoughnessMap=this.clearcoatRoughnessMap.toJSON(e).uuid),this.clearcoatNormalMap&&this.clearcoatNormalMap.isTexture&&(s.clearcoatNormalMap=this.clearcoatNormalMap.toJSON(e).uuid,s.clearcoatNormalScale=this.clearcoatNormalScale.toArray()),this.iridescence!==void 0&&(s.iridescence=this.iridescence),this.iridescenceIOR!==void 0&&(s.iridescenceIOR=this.iridescenceIOR),this.iridescenceThicknessRange!==void 0&&(s.iridescenceThicknessRange=this.iridescenceThicknessRange),this.iridescenceMap&&this.iridescenceMap.isTexture&&(s.iridescenceMap=this.iridescenceMap.toJSON(e).uuid),this.iridescenceThicknessMap&&this.iridescenceThicknessMap.isTexture&&(s.iridescenceThicknessMap=this.iridescenceThicknessMap.toJSON(e).uuid),this.map&&this.map.isTexture&&(s.map=this.map.toJSON(e).uuid),this.matcap&&this.matcap.isTexture&&(s.matcap=this.matcap.toJSON(e).uuid),this.alphaMap&&this.alphaMap.isTexture&&(s.alphaMap=this.alphaMap.toJSON(e).uuid),this.lightMap&&this.lightMap.isTexture&&(s.lightMap=this.lightMap.toJSON(e).uuid,s.lightMapIntensity=this.lightMapIntensity),this.aoMap&&this.aoMap.isTexture&&(s.aoMap=this.aoMap.toJSON(e).uuid,s.aoMapIntensity=this.aoMapIntensity),this.bumpMap&&this.bumpMap.isTexture&&(s.bumpMap=this.bumpMap.toJSON(e).uuid,s.bumpScale=this.bumpScale),this.normalMap&&this.normalMap.isTexture&&(s.normalMap=this.normalMap.toJSON(e).uuid,s.normalMapType=this.normalMapType,s.normalScale=this.normalScale.toArray()),this.displacementMap&&this.displacementMap.isTexture&&(s.displacementMap=this.displacementMap.toJSON(e).uuid,s.displacementScale=this.displacementScale,s.displacementBias=this.displacementBias),this.roughnessMap&&this.roughnessMap.isTexture&&(s.roughnessMap=this.roughnessMap.toJSON(e).uuid),this.metalnessMap&&this.metalnessMap.isTexture&&(s.metalnessMap=this.metalnessMap.toJSON(e).uuid),this.emissiveMap&&this.emissiveMap.isTexture&&(s.emissiveMap=this.emissiveMap.toJSON(e).uuid),this.specularMap&&this.specularMap.isTexture&&(s.specularMap=this.specularMap.toJSON(e).uuid),this.specularIntensityMap&&this.specularIntensityMap.isTexture&&(s.specularIntensityMap=this.specularIntensityMap.toJSON(e).uuid),this.specularColorMap&&this.specularColorMap.isTexture&&(s.specularColorMap=this.specularColorMap.toJSON(e).uuid),this.envMap&&this.envMap.isTexture&&(s.envMap=this.envMap.toJSON(e).uuid,this.combine!==void 0&&(s.combine=this.combine)),this.envMapIntensity!==void 0&&(s.envMapIntensity=this.envMapIntensity),this.reflectivity!==void 0&&(s.reflectivity=this.reflectivity),this.refractionRatio!==void 0&&(s.refractionRatio=this.refractionRatio),this.gradientMap&&this.gradientMap.isTexture&&(s.gradientMap=this.gradientMap.toJSON(e).uuid),this.transmission!==void 0&&(s.transmission=this.transmission),this.transmissionMap&&this.transmissionMap.isTexture&&(s.transmissionMap=this.transmissionMap.toJSON(e).uuid),this.thickness!==void 0&&(s.thickness=this.thickness),this.thicknessMap&&this.thicknessMap.isTexture&&(s.thicknessMap=this.thicknessMap.toJSON(e).uuid),this.attenuationDistance!==void 0&&(s.attenuationDistance=this.attenuationDistance),this.attenuationColor!==void 0&&(s.attenuationColor=this.attenuationColor.getHex()),this.size!==void 0&&(s.size=this.size),this.shadowSide!==null&&(s.shadowSide=this.shadowSide),this.sizeAttenuation!==void 0&&(s.sizeAttenuation=this.sizeAttenuation),this.blending!==uu&&(s.blending=this.blending),this.side!==Pu&&(s.side=this.side),this.vertexColors&&(s.vertexColors=!0),this.opacity<1&&(s.opacity=this.opacity),this.transparent===!0&&(s.transparent=this.transparent),s.depthFunc=this.depthFunc,s.depthTest=this.depthTest,s.depthWrite=this.depthWrite,s.colorWrite=this.colorWrite,s.stencilWrite=this.stencilWrite,s.stencilWriteMask=this.stencilWriteMask,s.stencilFunc=this.stencilFunc,s.stencilRef=this.stencilRef,s.stencilFuncMask=this.stencilFuncMask,s.stencilFail=this.stencilFail,s.stencilZFail=this.stencilZFail,s.stencilZPass=this.stencilZPass,this.rotation!==void 0&&this.rotation!==0&&(s.rotation=this.rotation),this.polygonOffset===!0&&(s.polygonOffset=!0),this.polygonOffsetFactor!==0&&(s.polygonOffsetFactor=this.polygonOffsetFactor),this.polygonOffsetUnits!==0&&(s.polygonOffsetUnits=this.polygonOffsetUnits),this.linewidth!==void 0&&this.linewidth!==1&&(s.linewidth=this.linewidth),this.dashSize!==void 0&&(s.dashSize=this.dashSize),this.gapSize!==void 0&&(s.gapSize=this.gapSize),this.scale!==void 0&&(s.scale=this.scale),this.dithering===!0&&(s.dithering=!0),this.alphaTest>0&&(s.alphaTest=this.alphaTest),this.alphaToCoverage===!0&&(s.alphaToCoverage=this.alphaToCoverage),this.premultipliedAlpha===!0&&(s.premultipliedAlpha=this.premultipliedAlpha),this.wireframe===!0&&(s.wireframe=this.wireframe),this.wireframeLinewidth>1&&(s.wireframeLinewidth=this.wireframeLinewidth),this.wireframeLinecap!=="round"&&(s.wireframeLinecap=this.wireframeLinecap),this.wireframeLinejoin!=="round"&&(s.wireframeLinejoin=this.wireframeLinejoin),this.flatShading===!0&&(s.flatShading=this.flatShading),this.visible===!1&&(s.visible=!1),this.toneMapped===!1&&(s.toneMapped=!1),this.fog===!1&&(s.fog=!1),JSON.stringify(this.userData)!=="{}"&&(s.userData=this.userData);function i(r){const o=[];for(const a in r){const l=r[a];delete l.metadata,o.push(l)}return o}if(n){const r=i(e.textures),o=i(e.images);r.length>0&&(s.textures=r),o.length>0&&(s.images=o)}return s}clone(){return new this.constructor().copy(this)}copy(e){this.name=e.name,this.blending=e.blending,this.side=e.side,this.vertexColors=e.vertexColors,this.opacity=e.opacity,this.transparent=e.transparent,this.blendSrc=e.blendSrc,this.blendDst=e.blendDst,this.blendEquation=e.blendEquation,this.blendSrcAlpha=e.blendSrcAlpha,this.blendDstAlpha=e.blendDstAlpha,this.blendEquationAlpha=e.blendEquationAlpha,this.depthFunc=e.depthFunc,this.depthTest=e.depthTest,this.depthWrite=e.depthWrite,this.stencilWriteMask=e.stencilWriteMask,this.stencilFunc=e.stencilFunc,this.stencilRef=e.stencilRef,this.stencilFuncMask=e.stencilFuncMask,this.stencilFail=e.stencilFail,this.stencilZFail=e.stencilZFail,this.stencilZPass=e.stencilZPass,this.stencilWrite=e.stencilWrite;const n=e.clippingPlanes;let s=null;if(n!==null){const i=n.length;s=new Array(i);for(let r=0;r!==i;++r)s[r]=n[r].clone()}return this.clippingPlanes=s,this.clipIntersection=e.clipIntersection,this.clipShadows=e.clipShadows,this.shadowSide=e.shadowSide,this.colorWrite=e.colorWrite,this.precision=e.precision,this.polygonOffset=e.polygonOffset,this.polygonOffsetFactor=e.polygonOffsetFactor,this.polygonOffsetUnits=e.polygonOffsetUnits,this.dithering=e.dithering,this.alphaTest=e.alphaTest,this.alphaToCoverage=e.alphaToCoverage,this.premultipliedAlpha=e.premultipliedAlpha,this.visible=e.visible,this.toneMapped=e.toneMapped,this.userData=JSON.parse(JSON.stringify(e.userData)),this}dispose(){this.dispatchEvent({type:"dispose"})}set needsUpdate(e){e===!0&&this.version++}}class fa extends wr{constructor(e){super(),this.isMeshBasicMaterial=!0,this.type="MeshBasicMaterial",this.color=new at(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=U8,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.specularMap=e.specularMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,this.combine=e.combine,this.reflectivity=e.reflectivity,this.refractionRatio=e.refractionRatio,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.fog=e.fog,this}}const Cn=new ee,Tp=new Et;class Ys{constructor(e,n,s){if(Array.isArray(e))throw new TypeError("THREE.BufferAttribute: array should be a Typed Array.");this.isBufferAttribute=!0,this.name="",this.array=e,this.itemSize=n,this.count=e!==void 0?e.length/n:0,this.normalized=s===!0,this.usage=ry,this.updateRange={offset:0,count:-1},this.version=0}onUploadCallback(){}set needsUpdate(e){e===!0&&this.version++}setUsage(e){return this.usage=e,this}copy(e){return this.name=e.name,this.array=new e.array.constructor(e.array),this.itemSize=e.itemSize,this.count=e.count,this.normalized=e.normalized,this.usage=e.usage,this}copyAt(e,n,s){e*=this.itemSize,s*=n.itemSize;for(let i=0,r=this.itemSize;i0&&(e.userData=this.userData),this.parameters!==void 0){const l=this.parameters;for(const c in l)l[c]!==void 0&&(e[c]=l[c]);return e}e.data={attributes:{}};const n=this.index;n!==null&&(e.data.index={type:n.array.constructor.name,array:Array.prototype.slice.call(n.array)});const s=this.attributes;for(const l in s){const c=s[l];e.data.attributes[l]=c.toJSON(e.data)}const i={};let r=!1;for(const l in this.morphAttributes){const c=this.morphAttributes[l],u=[];for(let d=0,f=c.length;d0&&(i[l]=u,r=!0)}r&&(e.data.morphAttributes=i,e.data.morphTargetsRelative=this.morphTargetsRelative);const o=this.groups;o.length>0&&(e.data.groups=JSON.parse(JSON.stringify(o)));const a=this.boundingSphere;return a!==null&&(e.data.boundingSphere={center:a.center.toArray(),radius:a.radius}),e}clone(){return new this.constructor().copy(this)}copy(e){this.index=null,this.attributes={},this.morphAttributes={},this.groups=[],this.boundingBox=null,this.boundingSphere=null;const n={};this.name=e.name;const s=e.index;s!==null&&this.setIndex(s.clone(n));const i=e.attributes;for(const c in i){const u=i[c];this.setAttribute(c,u.clone(n))}const r=e.morphAttributes;for(const c in r){const u=[],d=r[c];for(let f=0,h=d.length;f0){const i=n[s[0]];if(i!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let r=0,o=i.length;rn.far?null:{distance:c,point:Ip.clone(),object:t}}function Lp(t,e,n,s,i,r,o,a,l,c,u,d){No.fromBufferAttribute(i,c),$o.fromBufferAttribute(i,u),Uo.fromBufferAttribute(i,d);const f=t.morphTargetInfluences;if(r&&f){Ap.set(0,0,0),Mp.set(0,0,0),kp.set(0,0,0);for(let _=0,p=r.length;_0?1:-1,u.push(Z.x,Z.y,Z.z),d.push(Q/T),d.push(1-K/E),H+=1}}for(let K=0;K0&&(n.defines=this.defines),n.vertexShader=this.vertexShader,n.fragmentShader=this.fragmentShader;const s={};for(const i in this.extensions)this.extensions[i]===!0&&(s[i]=!0);return Object.keys(s).length>0&&(n.extensions=s),n}}class Q8 extends kn{constructor(){super(),this.isCamera=!0,this.type="Camera",this.matrixWorldInverse=new Lt,this.projectionMatrix=new Lt,this.projectionMatrixInverse=new Lt}copy(e,n){return super.copy(e,n),this.matrixWorldInverse.copy(e.matrixWorldInverse),this.projectionMatrix.copy(e.projectionMatrix),this.projectionMatrixInverse.copy(e.projectionMatrixInverse),this}getWorldDirection(e){this.updateWorldMatrix(!0,!1);const n=this.matrixWorld.elements;return e.set(-n[8],-n[9],-n[10]).normalize()}updateMatrixWorld(e){super.updateMatrixWorld(e),this.matrixWorldInverse.copy(this.matrixWorld).invert()}updateWorldMatrix(e,n){super.updateWorldMatrix(e,n),this.matrixWorldInverse.copy(this.matrixWorld).invert()}clone(){return new this.constructor().copy(this)}}class ys extends Q8{constructor(e=50,n=1,s=.1,i=2e3){super(),this.isPerspectiveCamera=!0,this.type="PerspectiveCamera",this.fov=e,this.zoom=1,this.near=s,this.far=i,this.focus=10,this.aspect=n,this.view=null,this.filmGauge=35,this.filmOffset=0,this.updateProjectionMatrix()}copy(e,n){return super.copy(e,n),this.fov=e.fov,this.zoom=e.zoom,this.near=e.near,this.far=e.far,this.focus=e.focus,this.aspect=e.aspect,this.view=e.view===null?null:Object.assign({},e.view),this.filmGauge=e.filmGauge,this.filmOffset=e.filmOffset,this}setFocalLength(e){const n=.5*this.getFilmHeight()/e;this.fov=Qf*2*Math.atan(n),this.updateProjectionMatrix()}getFocalLength(){const e=Math.tan(xf*.5*this.fov);return .5*this.getFilmHeight()/e}getEffectiveFOV(){return Qf*2*Math.atan(Math.tan(xf*.5*this.fov)/this.zoom)}getFilmWidth(){return this.filmGauge*Math.min(this.aspect,1)}getFilmHeight(){return this.filmGauge/Math.max(this.aspect,1)}setViewOffset(e,n,s,i,r,o){this.aspect=e/n,this.view===null&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=e,this.view.fullHeight=n,this.view.offsetX=s,this.view.offsetY=i,this.view.width=r,this.view.height=o,this.updateProjectionMatrix()}clearViewOffset(){this.view!==null&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){const e=this.near;let n=e*Math.tan(xf*.5*this.fov)/this.zoom,s=2*n,i=this.aspect*s,r=-.5*i;const o=this.view;if(this.view!==null&&this.view.enabled){const l=o.fullWidth,c=o.fullHeight;r+=o.offsetX*i/l,n-=o.offsetY*s/c,i*=o.width/l,s*=o.height/c}const a=this.filmOffset;a!==0&&(r+=e*a/this.getFilmWidth()),this.projectionMatrix.makePerspective(r,r+i,n,n-s,e,this.far),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(e){const n=super.toJSON(e);return n.object.fov=this.fov,n.object.zoom=this.zoom,n.object.near=this.near,n.object.far=this.far,n.object.focus=this.focus,n.object.aspect=this.aspect,this.view!==null&&(n.object.view=Object.assign({},this.view)),n.object.filmGauge=this.filmGauge,n.object.filmOffset=this.filmOffset,n}}const Tc=90,Ac=1;class LY extends kn{constructor(e,n,s){if(super(),this.type="CubeCamera",s.isWebGLCubeRenderTarget!==!0){console.error("THREE.CubeCamera: The constructor now expects an instance of WebGLCubeRenderTarget as third parameter.");return}this.renderTarget=s;const i=new ys(Tc,Ac,e,n);i.layers=this.layers,i.up.set(0,-1,0),i.lookAt(new ee(1,0,0)),this.add(i);const r=new ys(Tc,Ac,e,n);r.layers=this.layers,r.up.set(0,-1,0),r.lookAt(new ee(-1,0,0)),this.add(r);const o=new ys(Tc,Ac,e,n);o.layers=this.layers,o.up.set(0,0,1),o.lookAt(new ee(0,1,0)),this.add(o);const a=new ys(Tc,Ac,e,n);a.layers=this.layers,a.up.set(0,0,-1),a.lookAt(new ee(0,-1,0)),this.add(a);const l=new ys(Tc,Ac,e,n);l.layers=this.layers,l.up.set(0,-1,0),l.lookAt(new ee(0,0,1)),this.add(l);const c=new ys(Tc,Ac,e,n);c.layers=this.layers,c.up.set(0,-1,0),c.lookAt(new ee(0,0,-1)),this.add(c)}update(e,n){this.parent===null&&this.updateMatrixWorld();const s=this.renderTarget,[i,r,o,a,l,c]=this.children,u=e.getRenderTarget(),d=e.toneMapping,f=e.xr.enabled;e.toneMapping=uo,e.xr.enabled=!1;const h=s.texture.generateMipmaps;s.texture.generateMipmaps=!1,e.setRenderTarget(s,0),e.render(n,i),e.setRenderTarget(s,1),e.render(n,r),e.setRenderTarget(s,2),e.render(n,o),e.setRenderTarget(s,3),e.render(n,a),e.setRenderTarget(s,4),e.render(n,l),s.texture.generateMipmaps=h,e.setRenderTarget(s,5),e.render(n,c),e.setRenderTarget(u),e.toneMapping=d,e.xr.enabled=f,s.texture.needsPMREMUpdate=!0}}class eR extends ws{constructor(e,n,s,i,r,o,a,l,c,u){e=e!==void 0?e:[],n=n!==void 0?n:Du,super(e,n,s,i,r,o,a,l,c,u),this.isCubeTexture=!0,this.flipY=!1}get images(){return this.image}set images(e){this.image=e}}class PY extends Bl{constructor(e,n={}){super(e,e,n),this.isWebGLCubeRenderTarget=!0;const s={width:e,height:e,depth:1},i=[s,s,s,s,s,s];this.texture=new eR(i,n.mapping,n.wrapS,n.wrapT,n.magFilter,n.minFilter,n.format,n.type,n.anisotropy,n.encoding),this.texture.isRenderTargetTexture=!0,this.texture.generateMipmaps=n.generateMipmaps!==void 0?n.generateMipmaps:!1,this.texture.minFilter=n.minFilter!==void 0?n.minFilter:Is}fromEquirectangularTexture(e,n){this.texture.type=n.type,this.texture.encoding=n.encoding,this.texture.generateMipmaps=n.generateMipmaps,this.texture.minFilter=n.minFilter,this.texture.magFilter=n.magFilter;const s={uniforms:{tEquirect:{value:null}},vertexShader:` + + varying vec3 vWorldDirection; + + vec3 transformDirection( in vec3 dir, in mat4 matrix ) { + + return normalize( ( matrix * vec4( dir, 0.0 ) ).xyz ); + + } + + void main() { + + vWorldDirection = transformDirection( position, modelMatrix ); + + #include + #include + + } + `,fragmentShader:` + + uniform sampler2D tEquirect; + + varying vec3 vWorldDirection; + + #include + + void main() { + + vec3 direction = normalize( vWorldDirection ); + + vec2 sampleUV = equirectUv( direction ); + + gl_FragColor = texture2D( tEquirect, sampleUV ); + + } + `},i=new pd(5,5,5),r=new Gl({name:"CubemapFromEquirect",uniforms:Bu(s.uniforms),vertexShader:s.vertexShader,fragmentShader:s.fragmentShader,side:Hi,blending:xa});r.uniforms.tEquirect.value=n;const o=new Bi(i,r),a=n.minFilter;return n.minFilter===ud&&(n.minFilter=Is),new LY(1,10,this).update(e,o),n.minFilter=a,o.geometry.dispose(),o.material.dispose(),this}clear(e,n,s,i){const r=e.getRenderTarget();for(let o=0;o<6;o++)e.setRenderTarget(this,o),e.clear(n,s,i);e.setRenderTarget(r)}}const A1=new ee,DY=new ee,FY=new fi;class Za{constructor(e=new ee(1,0,0),n=0){this.isPlane=!0,this.normal=e,this.constant=n}set(e,n){return this.normal.copy(e),this.constant=n,this}setComponents(e,n,s,i){return this.normal.set(e,n,s),this.constant=i,this}setFromNormalAndCoplanarPoint(e,n){return this.normal.copy(e),this.constant=-n.dot(this.normal),this}setFromCoplanarPoints(e,n,s){const i=A1.subVectors(s,n).cross(DY.subVectors(e,n)).normalize();return this.setFromNormalAndCoplanarPoint(i,e),this}copy(e){return this.normal.copy(e.normal),this.constant=e.constant,this}normalize(){const e=1/this.normal.length();return this.normal.multiplyScalar(e),this.constant*=e,this}negate(){return this.constant*=-1,this.normal.negate(),this}distanceToPoint(e){return this.normal.dot(e)+this.constant}distanceToSphere(e){return this.distanceToPoint(e.center)-e.radius}projectPoint(e,n){return n.copy(this.normal).multiplyScalar(-this.distanceToPoint(e)).add(e)}intersectLine(e,n){const s=e.delta(A1),i=this.normal.dot(s);if(i===0)return this.distanceToPoint(e.start)===0?n.copy(e.start):null;const r=-(e.start.dot(this.normal)+this.constant)/i;return r<0||r>1?null:n.copy(s).multiplyScalar(r).add(e.start)}intersectsLine(e){const n=this.distanceToPoint(e.start),s=this.distanceToPoint(e.end);return n<0&&s>0||s<0&&n>0}intersectsBox(e){return e.intersectsPlane(this)}intersectsSphere(e){return e.intersectsPlane(this)}coplanarPoint(e){return e.copy(this.normal).multiplyScalar(-this.constant)}applyMatrix4(e,n){const s=n||FY.getNormalMatrix(e),i=this.coplanarPoint(A1).applyMatrix4(e),r=this.normal.applyMatrix3(s).normalize();return this.constant=-i.dot(r),this}translate(e){return this.constant-=e.dot(this.normal),this}equals(e){return e.normal.equals(this.normal)&&e.constant===this.constant}clone(){return new this.constructor().copy(this)}}const Mc=new hd,Pp=new ee;class Uw{constructor(e=new Za,n=new Za,s=new Za,i=new Za,r=new Za,o=new Za){this.planes=[e,n,s,i,r,o]}set(e,n,s,i,r,o){const a=this.planes;return a[0].copy(e),a[1].copy(n),a[2].copy(s),a[3].copy(i),a[4].copy(r),a[5].copy(o),this}copy(e){const n=this.planes;for(let s=0;s<6;s++)n[s].copy(e.planes[s]);return this}setFromProjectionMatrix(e){const n=this.planes,s=e.elements,i=s[0],r=s[1],o=s[2],a=s[3],l=s[4],c=s[5],u=s[6],d=s[7],f=s[8],h=s[9],_=s[10],p=s[11],m=s[12],b=s[13],y=s[14],v=s[15];return n[0].setComponents(a-i,d-l,p-f,v-m).normalize(),n[1].setComponents(a+i,d+l,p+f,v+m).normalize(),n[2].setComponents(a+r,d+c,p+h,v+b).normalize(),n[3].setComponents(a-r,d-c,p-h,v-b).normalize(),n[4].setComponents(a-o,d-u,p-_,v-y).normalize(),n[5].setComponents(a+o,d+u,p+_,v+y).normalize(),this}intersectsObject(e){const n=e.geometry;return n.boundingSphere===null&&n.computeBoundingSphere(),Mc.copy(n.boundingSphere).applyMatrix4(e.matrixWorld),this.intersectsSphere(Mc)}intersectsSprite(e){return Mc.center.set(0,0,0),Mc.radius=.7071067811865476,Mc.applyMatrix4(e.matrixWorld),this.intersectsSphere(Mc)}intersectsSphere(e){const n=this.planes,s=e.center,i=-e.radius;for(let r=0;r<6;r++)if(n[r].distanceToPoint(s)0?e.max.x:e.min.x,Pp.y=i.normal.y>0?e.max.y:e.min.y,Pp.z=i.normal.z>0?e.max.z:e.min.z,i.distanceToPoint(Pp)<0)return!1}return!0}containsPoint(e){const n=this.planes;for(let s=0;s<6;s++)if(n[s].distanceToPoint(e)<0)return!1;return!0}clone(){return new this.constructor().copy(this)}}function tR(){let t=null,e=!1,n=null,s=null;function i(r,o){n(r,o),s=t.requestAnimationFrame(i)}return{start:function(){e!==!0&&n!==null&&(s=t.requestAnimationFrame(i),e=!0)},stop:function(){t.cancelAnimationFrame(s),e=!1},setAnimationLoop:function(r){n=r},setContext:function(r){t=r}}}function NY(t,e){const n=e.isWebGL2,s=new WeakMap;function i(c,u){const d=c.array,f=c.usage,h=t.createBuffer();t.bindBuffer(u,h),t.bufferData(u,d,f),c.onUploadCallback();let _;if(d instanceof Float32Array)_=5126;else if(d instanceof Uint16Array)if(c.isFloat16BufferAttribute)if(n)_=5131;else throw new Error("THREE.WebGLAttributes: Usage of Float16BufferAttribute requires WebGL2.");else _=5123;else if(d instanceof Int16Array)_=5122;else if(d instanceof Uint32Array)_=5125;else if(d instanceof Int32Array)_=5124;else if(d instanceof Int8Array)_=5120;else if(d instanceof Uint8Array)_=5121;else if(d instanceof Uint8ClampedArray)_=5121;else throw new Error("THREE.WebGLAttributes: Unsupported buffer data format: "+d);return{buffer:h,type:_,bytesPerElement:d.BYTES_PER_ELEMENT,version:c.version}}function r(c,u,d){const f=u.array,h=u.updateRange;t.bindBuffer(d,c),h.count===-1?t.bufferSubData(d,0,f):(n?t.bufferSubData(d,h.offset*f.BYTES_PER_ELEMENT,f,h.offset,h.count):t.bufferSubData(d,h.offset*f.BYTES_PER_ELEMENT,f.subarray(h.offset,h.offset+h.count)),h.count=-1)}function o(c){return c.isInterleavedBufferAttribute&&(c=c.data),s.get(c)}function a(c){c.isInterleavedBufferAttribute&&(c=c.data);const u=s.get(c);u&&(t.deleteBuffer(u.buffer),s.delete(c))}function l(c,u){if(c.isGLBufferAttribute){const f=s.get(c);(!f||f.version 0.0 ) ? v : 0.5 * inversesqrt( max( 1.0 - x * x, 1e-7 ) ) - v; + return cross( v1, v2 ) * theta_sintheta; +} +vec3 LTC_Evaluate( const in vec3 N, const in vec3 V, const in vec3 P, const in mat3 mInv, const in vec3 rectCoords[ 4 ] ) { + vec3 v1 = rectCoords[ 1 ] - rectCoords[ 0 ]; + vec3 v2 = rectCoords[ 3 ] - rectCoords[ 0 ]; + vec3 lightNormal = cross( v1, v2 ); + if( dot( lightNormal, P - rectCoords[ 0 ] ) < 0.0 ) return vec3( 0.0 ); + vec3 T1, T2; + T1 = normalize( V - N * dot( V, N ) ); + T2 = - cross( N, T1 ); + mat3 mat = mInv * transposeMat3( mat3( T1, T2, N ) ); + vec3 coords[ 4 ]; + coords[ 0 ] = mat * ( rectCoords[ 0 ] - P ); + coords[ 1 ] = mat * ( rectCoords[ 1 ] - P ); + coords[ 2 ] = mat * ( rectCoords[ 2 ] - P ); + coords[ 3 ] = mat * ( rectCoords[ 3 ] - P ); + coords[ 0 ] = normalize( coords[ 0 ] ); + coords[ 1 ] = normalize( coords[ 1 ] ); + coords[ 2 ] = normalize( coords[ 2 ] ); + coords[ 3 ] = normalize( coords[ 3 ] ); + vec3 vectorFormFactor = vec3( 0.0 ); + vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 0 ], coords[ 1 ] ); + vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 1 ], coords[ 2 ] ); + vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 2 ], coords[ 3 ] ); + vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 3 ], coords[ 0 ] ); + float result = LTC_ClippedSphereFormFactor( vectorFormFactor ); + return vec3( result ); +} +float G_BlinnPhong_Implicit( ) { + return 0.25; +} +float D_BlinnPhong( const in float shininess, const in float dotNH ) { + return RECIPROCAL_PI * ( shininess * 0.5 + 1.0 ) * pow( dotNH, shininess ); +} +vec3 BRDF_BlinnPhong( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in vec3 specularColor, const in float shininess ) { + vec3 halfDir = normalize( lightDir + viewDir ); + float dotNH = saturate( dot( normal, halfDir ) ); + float dotVH = saturate( dot( viewDir, halfDir ) ); + vec3 F = F_Schlick( specularColor, 1.0, dotVH ); + float G = G_BlinnPhong_Implicit( ); + float D = D_BlinnPhong( shininess, dotNH ); + return F * ( G * D ); +} +#if defined( USE_SHEEN ) +float D_Charlie( float roughness, float dotNH ) { + float alpha = pow2( roughness ); + float invAlpha = 1.0 / alpha; + float cos2h = dotNH * dotNH; + float sin2h = max( 1.0 - cos2h, 0.0078125 ); + return ( 2.0 + invAlpha ) * pow( sin2h, invAlpha * 0.5 ) / ( 2.0 * PI ); +} +float V_Neubelt( float dotNV, float dotNL ) { + return saturate( 1.0 / ( 4.0 * ( dotNL + dotNV - dotNL * dotNV ) ) ); +} +vec3 BRDF_Sheen( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, vec3 sheenColor, const in float sheenRoughness ) { + vec3 halfDir = normalize( lightDir + viewDir ); + float dotNL = saturate( dot( normal, lightDir ) ); + float dotNV = saturate( dot( normal, viewDir ) ); + float dotNH = saturate( dot( normal, halfDir ) ); + float D = D_Charlie( sheenRoughness, dotNH ); + float V = V_Neubelt( dotNV, dotNL ); + return sheenColor * ( D * V ); +} +#endif`,qY=`#ifdef USE_IRIDESCENCE +const mat3 XYZ_TO_REC709 = mat3( + 3.2404542, -0.9692660, 0.0556434, + -1.5371385, 1.8760108, -0.2040259, + -0.4985314, 0.0415560, 1.0572252 +); +vec3 Fresnel0ToIor( vec3 fresnel0 ) { + vec3 sqrtF0 = sqrt( fresnel0 ); + return ( vec3( 1.0 ) + sqrtF0 ) / ( vec3( 1.0 ) - sqrtF0 ); +} +vec3 IorToFresnel0( vec3 transmittedIor, float incidentIor ) { + return pow2( ( transmittedIor - vec3( incidentIor ) ) / ( transmittedIor + vec3( incidentIor ) ) ); +} +float IorToFresnel0( float transmittedIor, float incidentIor ) { + return pow2( ( transmittedIor - incidentIor ) / ( transmittedIor + incidentIor )); +} +vec3 evalSensitivity( float OPD, vec3 shift ) { + float phase = 2.0 * PI * OPD * 1.0e-9; + vec3 val = vec3( 5.4856e-13, 4.4201e-13, 5.2481e-13 ); + vec3 pos = vec3( 1.6810e+06, 1.7953e+06, 2.2084e+06 ); + vec3 var = vec3( 4.3278e+09, 9.3046e+09, 6.6121e+09 ); + vec3 xyz = val * sqrt( 2.0 * PI * var ) * cos( pos * phase + shift ) * exp( -pow2( phase ) * var ); + xyz.x += 9.7470e-14 * sqrt( 2.0 * PI * 4.5282e+09 ) * cos( 2.2399e+06 * phase + shift[0] ) * exp( -4.5282e+09 * pow2( phase ) ); + xyz /= 1.0685e-7; + vec3 srgb = XYZ_TO_REC709 * xyz; + return srgb; +} +vec3 evalIridescence( float outsideIOR, float eta2, float cosTheta1, float thinFilmThickness, vec3 baseF0 ) { + vec3 I; + float iridescenceIOR = mix( outsideIOR, eta2, smoothstep( 0.0, 0.03, thinFilmThickness ) ); + float sinTheta2Sq = pow2( outsideIOR / iridescenceIOR ) * ( 1.0 - pow2( cosTheta1 ) ); + float cosTheta2Sq = 1.0 - sinTheta2Sq; + if ( cosTheta2Sq < 0.0 ) { + return vec3( 1.0 ); + } + float cosTheta2 = sqrt( cosTheta2Sq ); + float R0 = IorToFresnel0( iridescenceIOR, outsideIOR ); + float R12 = F_Schlick( R0, 1.0, cosTheta1 ); + float R21 = R12; + float T121 = 1.0 - R12; + float phi12 = 0.0; + if ( iridescenceIOR < outsideIOR ) phi12 = PI; + float phi21 = PI - phi12; + vec3 baseIOR = Fresnel0ToIor( clamp( baseF0, 0.0, 0.9999 ) ); vec3 R1 = IorToFresnel0( baseIOR, iridescenceIOR ); + vec3 R23 = F_Schlick( R1, 1.0, cosTheta2 ); + vec3 phi23 = vec3( 0.0 ); + if ( baseIOR[0] < iridescenceIOR ) phi23[0] = PI; + if ( baseIOR[1] < iridescenceIOR ) phi23[1] = PI; + if ( baseIOR[2] < iridescenceIOR ) phi23[2] = PI; + float OPD = 2.0 * iridescenceIOR * thinFilmThickness * cosTheta2; + vec3 phi = vec3( phi21 ) + phi23; + vec3 R123 = clamp( R12 * R23, 1e-5, 0.9999 ); + vec3 r123 = sqrt( R123 ); + vec3 Rs = pow2( T121 ) * R23 / ( vec3( 1.0 ) - R123 ); + vec3 C0 = R12 + Rs; + I = C0; + vec3 Cm = Rs - T121; + for ( int m = 1; m <= 2; ++m ) { + Cm *= r123; + vec3 Sm = 2.0 * evalSensitivity( float( m ) * OPD, float( m ) * phi ); + I += Cm * Sm; + } + return max( I, vec3( 0.0 ) ); +} +#endif`,YY=`#ifdef USE_BUMPMAP + uniform sampler2D bumpMap; + uniform float bumpScale; + vec2 dHdxy_fwd() { + vec2 dSTdx = dFdx( vUv ); + vec2 dSTdy = dFdy( vUv ); + float Hll = bumpScale * texture2D( bumpMap, vUv ).x; + float dBx = bumpScale * texture2D( bumpMap, vUv + dSTdx ).x - Hll; + float dBy = bumpScale * texture2D( bumpMap, vUv + dSTdy ).x - Hll; + return vec2( dBx, dBy ); + } + vec3 perturbNormalArb( vec3 surf_pos, vec3 surf_norm, vec2 dHdxy, float faceDirection ) { + vec3 vSigmaX = vec3( dFdx( surf_pos.x ), dFdx( surf_pos.y ), dFdx( surf_pos.z ) ); + vec3 vSigmaY = vec3( dFdy( surf_pos.x ), dFdy( surf_pos.y ), dFdy( surf_pos.z ) ); + vec3 vN = surf_norm; + vec3 R1 = cross( vSigmaY, vN ); + vec3 R2 = cross( vN, vSigmaX ); + float fDet = dot( vSigmaX, R1 ) * faceDirection; + vec3 vGrad = sign( fDet ) * ( dHdxy.x * R1 + dHdxy.y * R2 ); + return normalize( abs( fDet ) * surf_norm - vGrad ); + } +#endif`,KY=`#if NUM_CLIPPING_PLANES > 0 + vec4 plane; + #pragma unroll_loop_start + for ( int i = 0; i < UNION_CLIPPING_PLANES; i ++ ) { + plane = clippingPlanes[ i ]; + if ( dot( vClipPosition, plane.xyz ) > plane.w ) discard; + } + #pragma unroll_loop_end + #if UNION_CLIPPING_PLANES < NUM_CLIPPING_PLANES + bool clipped = true; + #pragma unroll_loop_start + for ( int i = UNION_CLIPPING_PLANES; i < NUM_CLIPPING_PLANES; i ++ ) { + plane = clippingPlanes[ i ]; + clipped = ( dot( vClipPosition, plane.xyz ) > plane.w ) && clipped; + } + #pragma unroll_loop_end + if ( clipped ) discard; + #endif +#endif`,XY=`#if NUM_CLIPPING_PLANES > 0 + varying vec3 vClipPosition; + uniform vec4 clippingPlanes[ NUM_CLIPPING_PLANES ]; +#endif`,ZY=`#if NUM_CLIPPING_PLANES > 0 + varying vec3 vClipPosition; +#endif`,JY=`#if NUM_CLIPPING_PLANES > 0 + vClipPosition = - mvPosition.xyz; +#endif`,QY=`#if defined( USE_COLOR_ALPHA ) + diffuseColor *= vColor; +#elif defined( USE_COLOR ) + diffuseColor.rgb *= vColor; +#endif`,eK=`#if defined( USE_COLOR_ALPHA ) + varying vec4 vColor; +#elif defined( USE_COLOR ) + varying vec3 vColor; +#endif`,tK=`#if defined( USE_COLOR_ALPHA ) + varying vec4 vColor; +#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR ) + varying vec3 vColor; +#endif`,nK=`#if defined( USE_COLOR_ALPHA ) + vColor = vec4( 1.0 ); +#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR ) + vColor = vec3( 1.0 ); +#endif +#ifdef USE_COLOR + vColor *= color; +#endif +#ifdef USE_INSTANCING_COLOR + vColor.xyz *= instanceColor.xyz; +#endif`,sK=`#define PI 3.141592653589793 +#define PI2 6.283185307179586 +#define PI_HALF 1.5707963267948966 +#define RECIPROCAL_PI 0.3183098861837907 +#define RECIPROCAL_PI2 0.15915494309189535 +#define EPSILON 1e-6 +#ifndef saturate +#define saturate( a ) clamp( a, 0.0, 1.0 ) +#endif +#define whiteComplement( a ) ( 1.0 - saturate( a ) ) +float pow2( const in float x ) { return x*x; } +vec3 pow2( const in vec3 x ) { return x*x; } +float pow3( const in float x ) { return x*x*x; } +float pow4( const in float x ) { float x2 = x*x; return x2*x2; } +float max3( const in vec3 v ) { return max( max( v.x, v.y ), v.z ); } +float average( const in vec3 color ) { return dot( color, vec3( 0.3333 ) ); } +highp float rand( const in vec2 uv ) { + const highp float a = 12.9898, b = 78.233, c = 43758.5453; + highp float dt = dot( uv.xy, vec2( a,b ) ), sn = mod( dt, PI ); + return fract( sin( sn ) * c ); +} +#ifdef HIGH_PRECISION + float precisionSafeLength( vec3 v ) { return length( v ); } +#else + float precisionSafeLength( vec3 v ) { + float maxComponent = max3( abs( v ) ); + return length( v / maxComponent ) * maxComponent; + } +#endif +struct IncidentLight { + vec3 color; + vec3 direction; + bool visible; +}; +struct ReflectedLight { + vec3 directDiffuse; + vec3 directSpecular; + vec3 indirectDiffuse; + vec3 indirectSpecular; +}; +struct GeometricContext { + vec3 position; + vec3 normal; + vec3 viewDir; +#ifdef USE_CLEARCOAT + vec3 clearcoatNormal; +#endif +}; +vec3 transformDirection( in vec3 dir, in mat4 matrix ) { + return normalize( ( matrix * vec4( dir, 0.0 ) ).xyz ); +} +vec3 inverseTransformDirection( in vec3 dir, in mat4 matrix ) { + return normalize( ( vec4( dir, 0.0 ) * matrix ).xyz ); +} +mat3 transposeMat3( const in mat3 m ) { + mat3 tmp; + tmp[ 0 ] = vec3( m[ 0 ].x, m[ 1 ].x, m[ 2 ].x ); + tmp[ 1 ] = vec3( m[ 0 ].y, m[ 1 ].y, m[ 2 ].y ); + tmp[ 2 ] = vec3( m[ 0 ].z, m[ 1 ].z, m[ 2 ].z ); + return tmp; +} +float linearToRelativeLuminance( const in vec3 color ) { + vec3 weights = vec3( 0.2126, 0.7152, 0.0722 ); + return dot( weights, color.rgb ); +} +bool isPerspectiveMatrix( mat4 m ) { + return m[ 2 ][ 3 ] == - 1.0; +} +vec2 equirectUv( in vec3 dir ) { + float u = atan( dir.z, dir.x ) * RECIPROCAL_PI2 + 0.5; + float v = asin( clamp( dir.y, - 1.0, 1.0 ) ) * RECIPROCAL_PI + 0.5; + return vec2( u, v ); +}`,iK=`#ifdef ENVMAP_TYPE_CUBE_UV + #define cubeUV_minMipLevel 4.0 + #define cubeUV_minTileSize 16.0 + float getFace( vec3 direction ) { + vec3 absDirection = abs( direction ); + float face = - 1.0; + if ( absDirection.x > absDirection.z ) { + if ( absDirection.x > absDirection.y ) + face = direction.x > 0.0 ? 0.0 : 3.0; + else + face = direction.y > 0.0 ? 1.0 : 4.0; + } else { + if ( absDirection.z > absDirection.y ) + face = direction.z > 0.0 ? 2.0 : 5.0; + else + face = direction.y > 0.0 ? 1.0 : 4.0; + } + return face; + } + vec2 getUV( vec3 direction, float face ) { + vec2 uv; + if ( face == 0.0 ) { + uv = vec2( direction.z, direction.y ) / abs( direction.x ); + } else if ( face == 1.0 ) { + uv = vec2( - direction.x, - direction.z ) / abs( direction.y ); + } else if ( face == 2.0 ) { + uv = vec2( - direction.x, direction.y ) / abs( direction.z ); + } else if ( face == 3.0 ) { + uv = vec2( - direction.z, direction.y ) / abs( direction.x ); + } else if ( face == 4.0 ) { + uv = vec2( - direction.x, direction.z ) / abs( direction.y ); + } else { + uv = vec2( direction.x, direction.y ) / abs( direction.z ); + } + return 0.5 * ( uv + 1.0 ); + } + vec3 bilinearCubeUV( sampler2D envMap, vec3 direction, float mipInt ) { + float face = getFace( direction ); + float filterInt = max( cubeUV_minMipLevel - mipInt, 0.0 ); + mipInt = max( mipInt, cubeUV_minMipLevel ); + float faceSize = exp2( mipInt ); + vec2 uv = getUV( direction, face ) * ( faceSize - 2.0 ) + 1.0; + if ( face > 2.0 ) { + uv.y += faceSize; + face -= 3.0; + } + uv.x += face * faceSize; + uv.x += filterInt * 3.0 * cubeUV_minTileSize; + uv.y += 4.0 * ( exp2( CUBEUV_MAX_MIP ) - faceSize ); + uv.x *= CUBEUV_TEXEL_WIDTH; + uv.y *= CUBEUV_TEXEL_HEIGHT; + #ifdef texture2DGradEXT + return texture2DGradEXT( envMap, uv, vec2( 0.0 ), vec2( 0.0 ) ).rgb; + #else + return texture2D( envMap, uv ).rgb; + #endif + } + #define r0 1.0 + #define v0 0.339 + #define m0 - 2.0 + #define r1 0.8 + #define v1 0.276 + #define m1 - 1.0 + #define r4 0.4 + #define v4 0.046 + #define m4 2.0 + #define r5 0.305 + #define v5 0.016 + #define m5 3.0 + #define r6 0.21 + #define v6 0.0038 + #define m6 4.0 + float roughnessToMip( float roughness ) { + float mip = 0.0; + if ( roughness >= r1 ) { + mip = ( r0 - roughness ) * ( m1 - m0 ) / ( r0 - r1 ) + m0; + } else if ( roughness >= r4 ) { + mip = ( r1 - roughness ) * ( m4 - m1 ) / ( r1 - r4 ) + m1; + } else if ( roughness >= r5 ) { + mip = ( r4 - roughness ) * ( m5 - m4 ) / ( r4 - r5 ) + m4; + } else if ( roughness >= r6 ) { + mip = ( r5 - roughness ) * ( m6 - m5 ) / ( r5 - r6 ) + m5; + } else { + mip = - 2.0 * log2( 1.16 * roughness ); } + return mip; + } + vec4 textureCubeUV( sampler2D envMap, vec3 sampleDir, float roughness ) { + float mip = clamp( roughnessToMip( roughness ), m0, CUBEUV_MAX_MIP ); + float mipF = fract( mip ); + float mipInt = floor( mip ); + vec3 color0 = bilinearCubeUV( envMap, sampleDir, mipInt ); + if ( mipF == 0.0 ) { + return vec4( color0, 1.0 ); + } else { + vec3 color1 = bilinearCubeUV( envMap, sampleDir, mipInt + 1.0 ); + return vec4( mix( color0, color1, mipF ), 1.0 ); + } + } +#endif`,rK=`vec3 transformedNormal = objectNormal; +#ifdef USE_INSTANCING + mat3 m = mat3( instanceMatrix ); + transformedNormal /= vec3( dot( m[ 0 ], m[ 0 ] ), dot( m[ 1 ], m[ 1 ] ), dot( m[ 2 ], m[ 2 ] ) ); + transformedNormal = m * transformedNormal; +#endif +transformedNormal = normalMatrix * transformedNormal; +#ifdef FLIP_SIDED + transformedNormal = - transformedNormal; +#endif +#ifdef USE_TANGENT + vec3 transformedTangent = ( modelViewMatrix * vec4( objectTangent, 0.0 ) ).xyz; + #ifdef FLIP_SIDED + transformedTangent = - transformedTangent; + #endif +#endif`,oK=`#ifdef USE_DISPLACEMENTMAP + uniform sampler2D displacementMap; + uniform float displacementScale; + uniform float displacementBias; +#endif`,aK=`#ifdef USE_DISPLACEMENTMAP + transformed += normalize( objectNormal ) * ( texture2D( displacementMap, vUv ).x * displacementScale + displacementBias ); +#endif`,lK=`#ifdef USE_EMISSIVEMAP + vec4 emissiveColor = texture2D( emissiveMap, vUv ); + totalEmissiveRadiance *= emissiveColor.rgb; +#endif`,cK=`#ifdef USE_EMISSIVEMAP + uniform sampler2D emissiveMap; +#endif`,uK="gl_FragColor = linearToOutputTexel( gl_FragColor );",dK=`vec4 LinearToLinear( in vec4 value ) { + return value; +} +vec4 LinearTosRGB( in vec4 value ) { + return vec4( mix( pow( value.rgb, vec3( 0.41666 ) ) * 1.055 - vec3( 0.055 ), value.rgb * 12.92, vec3( lessThanEqual( value.rgb, vec3( 0.0031308 ) ) ) ), value.a ); +}`,fK=`#ifdef USE_ENVMAP + #ifdef ENV_WORLDPOS + vec3 cameraToFrag; + if ( isOrthographic ) { + cameraToFrag = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) ); + } else { + cameraToFrag = normalize( vWorldPosition - cameraPosition ); + } + vec3 worldNormal = inverseTransformDirection( normal, viewMatrix ); + #ifdef ENVMAP_MODE_REFLECTION + vec3 reflectVec = reflect( cameraToFrag, worldNormal ); + #else + vec3 reflectVec = refract( cameraToFrag, worldNormal, refractionRatio ); + #endif + #else + vec3 reflectVec = vReflect; + #endif + #ifdef ENVMAP_TYPE_CUBE + vec4 envColor = textureCube( envMap, vec3( flipEnvMap * reflectVec.x, reflectVec.yz ) ); + #elif defined( ENVMAP_TYPE_CUBE_UV ) + vec4 envColor = textureCubeUV( envMap, reflectVec, 0.0 ); + #else + vec4 envColor = vec4( 0.0 ); + #endif + #ifdef ENVMAP_BLENDING_MULTIPLY + outgoingLight = mix( outgoingLight, outgoingLight * envColor.xyz, specularStrength * reflectivity ); + #elif defined( ENVMAP_BLENDING_MIX ) + outgoingLight = mix( outgoingLight, envColor.xyz, specularStrength * reflectivity ); + #elif defined( ENVMAP_BLENDING_ADD ) + outgoingLight += envColor.xyz * specularStrength * reflectivity; + #endif +#endif`,hK=`#ifdef USE_ENVMAP + uniform float envMapIntensity; + uniform float flipEnvMap; + #ifdef ENVMAP_TYPE_CUBE + uniform samplerCube envMap; + #else + uniform sampler2D envMap; + #endif + +#endif`,pK=`#ifdef USE_ENVMAP + uniform float reflectivity; + #if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG ) + #define ENV_WORLDPOS + #endif + #ifdef ENV_WORLDPOS + varying vec3 vWorldPosition; + uniform float refractionRatio; + #else + varying vec3 vReflect; + #endif +#endif`,mK=`#ifdef USE_ENVMAP + #if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) ||defined( PHONG ) + #define ENV_WORLDPOS + #endif + #ifdef ENV_WORLDPOS + + varying vec3 vWorldPosition; + #else + varying vec3 vReflect; + uniform float refractionRatio; + #endif +#endif`,gK=`#ifdef USE_ENVMAP + #ifdef ENV_WORLDPOS + vWorldPosition = worldPosition.xyz; + #else + vec3 cameraToVertex; + if ( isOrthographic ) { + cameraToVertex = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) ); + } else { + cameraToVertex = normalize( worldPosition.xyz - cameraPosition ); + } + vec3 worldNormal = inverseTransformDirection( transformedNormal, viewMatrix ); + #ifdef ENVMAP_MODE_REFLECTION + vReflect = reflect( cameraToVertex, worldNormal ); + #else + vReflect = refract( cameraToVertex, worldNormal, refractionRatio ); + #endif + #endif +#endif`,_K=`#ifdef USE_FOG + vFogDepth = - mvPosition.z; +#endif`,bK=`#ifdef USE_FOG + varying float vFogDepth; +#endif`,yK=`#ifdef USE_FOG + #ifdef FOG_EXP2 + float fogFactor = 1.0 - exp( - fogDensity * fogDensity * vFogDepth * vFogDepth ); + #else + float fogFactor = smoothstep( fogNear, fogFar, vFogDepth ); + #endif + gl_FragColor.rgb = mix( gl_FragColor.rgb, fogColor, fogFactor ); +#endif`,vK=`#ifdef USE_FOG + uniform vec3 fogColor; + varying float vFogDepth; + #ifdef FOG_EXP2 + uniform float fogDensity; + #else + uniform float fogNear; + uniform float fogFar; + #endif +#endif`,wK=`#ifdef USE_GRADIENTMAP + uniform sampler2D gradientMap; +#endif +vec3 getGradientIrradiance( vec3 normal, vec3 lightDirection ) { + float dotNL = dot( normal, lightDirection ); + vec2 coord = vec2( dotNL * 0.5 + 0.5, 0.0 ); + #ifdef USE_GRADIENTMAP + return vec3( texture2D( gradientMap, coord ).r ); + #else + return ( coord.x < 0.7 ) ? vec3( 0.7 ) : vec3( 1.0 ); + #endif +}`,xK=`#ifdef USE_LIGHTMAP + vec4 lightMapTexel = texture2D( lightMap, vUv2 ); + vec3 lightMapIrradiance = lightMapTexel.rgb * lightMapIntensity; + reflectedLight.indirectDiffuse += lightMapIrradiance; +#endif`,SK=`#ifdef USE_LIGHTMAP + uniform sampler2D lightMap; + uniform float lightMapIntensity; +#endif`,EK=`vec3 diffuse = vec3( 1.0 ); +GeometricContext geometry; +geometry.position = mvPosition.xyz; +geometry.normal = normalize( transformedNormal ); +geometry.viewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( -mvPosition.xyz ); +GeometricContext backGeometry; +backGeometry.position = geometry.position; +backGeometry.normal = -geometry.normal; +backGeometry.viewDir = geometry.viewDir; +vLightFront = vec3( 0.0 ); +vIndirectFront = vec3( 0.0 ); +#ifdef DOUBLE_SIDED + vLightBack = vec3( 0.0 ); + vIndirectBack = vec3( 0.0 ); +#endif +IncidentLight directLight; +float dotNL; +vec3 directLightColor_Diffuse; +vIndirectFront += getAmbientLightIrradiance( ambientLightColor ); +vIndirectFront += getLightProbeIrradiance( lightProbe, geometry.normal ); +#ifdef DOUBLE_SIDED + vIndirectBack += getAmbientLightIrradiance( ambientLightColor ); + vIndirectBack += getLightProbeIrradiance( lightProbe, backGeometry.normal ); +#endif +#if NUM_POINT_LIGHTS > 0 + #pragma unroll_loop_start + for ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) { + getPointLightInfo( pointLights[ i ], geometry, directLight ); + dotNL = dot( geometry.normal, directLight.direction ); + directLightColor_Diffuse = directLight.color; + vLightFront += saturate( dotNL ) * directLightColor_Diffuse; + #ifdef DOUBLE_SIDED + vLightBack += saturate( - dotNL ) * directLightColor_Diffuse; + #endif + } + #pragma unroll_loop_end +#endif +#if NUM_SPOT_LIGHTS > 0 + #pragma unroll_loop_start + for ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) { + getSpotLightInfo( spotLights[ i ], geometry, directLight ); + dotNL = dot( geometry.normal, directLight.direction ); + directLightColor_Diffuse = directLight.color; + vLightFront += saturate( dotNL ) * directLightColor_Diffuse; + #ifdef DOUBLE_SIDED + vLightBack += saturate( - dotNL ) * directLightColor_Diffuse; + #endif + } + #pragma unroll_loop_end +#endif +#if NUM_DIR_LIGHTS > 0 + #pragma unroll_loop_start + for ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) { + getDirectionalLightInfo( directionalLights[ i ], geometry, directLight ); + dotNL = dot( geometry.normal, directLight.direction ); + directLightColor_Diffuse = directLight.color; + vLightFront += saturate( dotNL ) * directLightColor_Diffuse; + #ifdef DOUBLE_SIDED + vLightBack += saturate( - dotNL ) * directLightColor_Diffuse; + #endif + } + #pragma unroll_loop_end +#endif +#if NUM_HEMI_LIGHTS > 0 + #pragma unroll_loop_start + for ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) { + vIndirectFront += getHemisphereLightIrradiance( hemisphereLights[ i ], geometry.normal ); + #ifdef DOUBLE_SIDED + vIndirectBack += getHemisphereLightIrradiance( hemisphereLights[ i ], backGeometry.normal ); + #endif + } + #pragma unroll_loop_end +#endif`,TK=`uniform bool receiveShadow; +uniform vec3 ambientLightColor; +uniform vec3 lightProbe[ 9 ]; +vec3 shGetIrradianceAt( in vec3 normal, in vec3 shCoefficients[ 9 ] ) { + float x = normal.x, y = normal.y, z = normal.z; + vec3 result = shCoefficients[ 0 ] * 0.886227; + result += shCoefficients[ 1 ] * 2.0 * 0.511664 * y; + result += shCoefficients[ 2 ] * 2.0 * 0.511664 * z; + result += shCoefficients[ 3 ] * 2.0 * 0.511664 * x; + result += shCoefficients[ 4 ] * 2.0 * 0.429043 * x * y; + result += shCoefficients[ 5 ] * 2.0 * 0.429043 * y * z; + result += shCoefficients[ 6 ] * ( 0.743125 * z * z - 0.247708 ); + result += shCoefficients[ 7 ] * 2.0 * 0.429043 * x * z; + result += shCoefficients[ 8 ] * 0.429043 * ( x * x - y * y ); + return result; +} +vec3 getLightProbeIrradiance( const in vec3 lightProbe[ 9 ], const in vec3 normal ) { + vec3 worldNormal = inverseTransformDirection( normal, viewMatrix ); + vec3 irradiance = shGetIrradianceAt( worldNormal, lightProbe ); + return irradiance; +} +vec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) { + vec3 irradiance = ambientLightColor; + return irradiance; +} +float getDistanceAttenuation( const in float lightDistance, const in float cutoffDistance, const in float decayExponent ) { + #if defined ( PHYSICALLY_CORRECT_LIGHTS ) + float distanceFalloff = 1.0 / max( pow( lightDistance, decayExponent ), 0.01 ); + if ( cutoffDistance > 0.0 ) { + distanceFalloff *= pow2( saturate( 1.0 - pow4( lightDistance / cutoffDistance ) ) ); + } + return distanceFalloff; + #else + if ( cutoffDistance > 0.0 && decayExponent > 0.0 ) { + return pow( saturate( - lightDistance / cutoffDistance + 1.0 ), decayExponent ); + } + return 1.0; + #endif +} +float getSpotAttenuation( const in float coneCosine, const in float penumbraCosine, const in float angleCosine ) { + return smoothstep( coneCosine, penumbraCosine, angleCosine ); +} +#if NUM_DIR_LIGHTS > 0 + struct DirectionalLight { + vec3 direction; + vec3 color; + }; + uniform DirectionalLight directionalLights[ NUM_DIR_LIGHTS ]; + void getDirectionalLightInfo( const in DirectionalLight directionalLight, const in GeometricContext geometry, out IncidentLight light ) { + light.color = directionalLight.color; + light.direction = directionalLight.direction; + light.visible = true; + } +#endif +#if NUM_POINT_LIGHTS > 0 + struct PointLight { + vec3 position; + vec3 color; + float distance; + float decay; + }; + uniform PointLight pointLights[ NUM_POINT_LIGHTS ]; + void getPointLightInfo( const in PointLight pointLight, const in GeometricContext geometry, out IncidentLight light ) { + vec3 lVector = pointLight.position - geometry.position; + light.direction = normalize( lVector ); + float lightDistance = length( lVector ); + light.color = pointLight.color; + light.color *= getDistanceAttenuation( lightDistance, pointLight.distance, pointLight.decay ); + light.visible = ( light.color != vec3( 0.0 ) ); + } +#endif +#if NUM_SPOT_LIGHTS > 0 + struct SpotLight { + vec3 position; + vec3 direction; + vec3 color; + float distance; + float decay; + float coneCos; + float penumbraCos; + }; + uniform SpotLight spotLights[ NUM_SPOT_LIGHTS ]; + void getSpotLightInfo( const in SpotLight spotLight, const in GeometricContext geometry, out IncidentLight light ) { + vec3 lVector = spotLight.position - geometry.position; + light.direction = normalize( lVector ); + float angleCos = dot( light.direction, spotLight.direction ); + float spotAttenuation = getSpotAttenuation( spotLight.coneCos, spotLight.penumbraCos, angleCos ); + if ( spotAttenuation > 0.0 ) { + float lightDistance = length( lVector ); + light.color = spotLight.color * spotAttenuation; + light.color *= getDistanceAttenuation( lightDistance, spotLight.distance, spotLight.decay ); + light.visible = ( light.color != vec3( 0.0 ) ); + } else { + light.color = vec3( 0.0 ); + light.visible = false; + } + } +#endif +#if NUM_RECT_AREA_LIGHTS > 0 + struct RectAreaLight { + vec3 color; + vec3 position; + vec3 halfWidth; + vec3 halfHeight; + }; + uniform sampler2D ltc_1; uniform sampler2D ltc_2; + uniform RectAreaLight rectAreaLights[ NUM_RECT_AREA_LIGHTS ]; +#endif +#if NUM_HEMI_LIGHTS > 0 + struct HemisphereLight { + vec3 direction; + vec3 skyColor; + vec3 groundColor; + }; + uniform HemisphereLight hemisphereLights[ NUM_HEMI_LIGHTS ]; + vec3 getHemisphereLightIrradiance( const in HemisphereLight hemiLight, const in vec3 normal ) { + float dotNL = dot( normal, hemiLight.direction ); + float hemiDiffuseWeight = 0.5 * dotNL + 0.5; + vec3 irradiance = mix( hemiLight.groundColor, hemiLight.skyColor, hemiDiffuseWeight ); + return irradiance; + } +#endif`,AK=`#if defined( USE_ENVMAP ) + vec3 getIBLIrradiance( const in vec3 normal ) { + #if defined( ENVMAP_TYPE_CUBE_UV ) + vec3 worldNormal = inverseTransformDirection( normal, viewMatrix ); + vec4 envMapColor = textureCubeUV( envMap, worldNormal, 1.0 ); + return PI * envMapColor.rgb * envMapIntensity; + #else + return vec3( 0.0 ); + #endif + } + vec3 getIBLRadiance( const in vec3 viewDir, const in vec3 normal, const in float roughness ) { + #if defined( ENVMAP_TYPE_CUBE_UV ) + vec3 reflectVec = reflect( - viewDir, normal ); + reflectVec = normalize( mix( reflectVec, normal, roughness * roughness) ); + reflectVec = inverseTransformDirection( reflectVec, viewMatrix ); + vec4 envMapColor = textureCubeUV( envMap, reflectVec, roughness ); + return envMapColor.rgb * envMapIntensity; + #else + return vec3( 0.0 ); + #endif + } +#endif`,MK=`ToonMaterial material; +material.diffuseColor = diffuseColor.rgb;`,kK=`varying vec3 vViewPosition; +struct ToonMaterial { + vec3 diffuseColor; +}; +void RE_Direct_Toon( const in IncidentLight directLight, const in GeometricContext geometry, const in ToonMaterial material, inout ReflectedLight reflectedLight ) { + vec3 irradiance = getGradientIrradiance( geometry.normal, directLight.direction ) * directLight.color; + reflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor ); +} +void RE_IndirectDiffuse_Toon( const in vec3 irradiance, const in GeometricContext geometry, const in ToonMaterial material, inout ReflectedLight reflectedLight ) { + reflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor ); +} +#define RE_Direct RE_Direct_Toon +#define RE_IndirectDiffuse RE_IndirectDiffuse_Toon +#define Material_LightProbeLOD( material ) (0)`,RK=`BlinnPhongMaterial material; +material.diffuseColor = diffuseColor.rgb; +material.specularColor = specular; +material.specularShininess = shininess; +material.specularStrength = specularStrength;`,CK=`varying vec3 vViewPosition; +struct BlinnPhongMaterial { + vec3 diffuseColor; + vec3 specularColor; + float specularShininess; + float specularStrength; +}; +void RE_Direct_BlinnPhong( const in IncidentLight directLight, const in GeometricContext geometry, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) { + float dotNL = saturate( dot( geometry.normal, directLight.direction ) ); + vec3 irradiance = dotNL * directLight.color; + reflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor ); + reflectedLight.directSpecular += irradiance * BRDF_BlinnPhong( directLight.direction, geometry.viewDir, geometry.normal, material.specularColor, material.specularShininess ) * material.specularStrength; +} +void RE_IndirectDiffuse_BlinnPhong( const in vec3 irradiance, const in GeometricContext geometry, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) { + reflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor ); +} +#define RE_Direct RE_Direct_BlinnPhong +#define RE_IndirectDiffuse RE_IndirectDiffuse_BlinnPhong +#define Material_LightProbeLOD( material ) (0)`,OK=`PhysicalMaterial material; +material.diffuseColor = diffuseColor.rgb * ( 1.0 - metalnessFactor ); +vec3 dxy = max( abs( dFdx( geometryNormal ) ), abs( dFdy( geometryNormal ) ) ); +float geometryRoughness = max( max( dxy.x, dxy.y ), dxy.z ); +material.roughness = max( roughnessFactor, 0.0525 );material.roughness += geometryRoughness; +material.roughness = min( material.roughness, 1.0 ); +#ifdef IOR + #ifdef SPECULAR + float specularIntensityFactor = specularIntensity; + vec3 specularColorFactor = specularColor; + #ifdef USE_SPECULARINTENSITYMAP + specularIntensityFactor *= texture2D( specularIntensityMap, vUv ).a; + #endif + #ifdef USE_SPECULARCOLORMAP + specularColorFactor *= texture2D( specularColorMap, vUv ).rgb; + #endif + material.specularF90 = mix( specularIntensityFactor, 1.0, metalnessFactor ); + #else + float specularIntensityFactor = 1.0; + vec3 specularColorFactor = vec3( 1.0 ); + material.specularF90 = 1.0; + #endif + material.specularColor = mix( min( pow2( ( ior - 1.0 ) / ( ior + 1.0 ) ) * specularColorFactor, vec3( 1.0 ) ) * specularIntensityFactor, diffuseColor.rgb, metalnessFactor ); +#else + material.specularColor = mix( vec3( 0.04 ), diffuseColor.rgb, metalnessFactor ); + material.specularF90 = 1.0; +#endif +#ifdef USE_CLEARCOAT + material.clearcoat = clearcoat; + material.clearcoatRoughness = clearcoatRoughness; + material.clearcoatF0 = vec3( 0.04 ); + material.clearcoatF90 = 1.0; + #ifdef USE_CLEARCOATMAP + material.clearcoat *= texture2D( clearcoatMap, vUv ).x; + #endif + #ifdef USE_CLEARCOAT_ROUGHNESSMAP + material.clearcoatRoughness *= texture2D( clearcoatRoughnessMap, vUv ).y; + #endif + material.clearcoat = saturate( material.clearcoat ); material.clearcoatRoughness = max( material.clearcoatRoughness, 0.0525 ); + material.clearcoatRoughness += geometryRoughness; + material.clearcoatRoughness = min( material.clearcoatRoughness, 1.0 ); +#endif +#ifdef USE_IRIDESCENCE + material.iridescence = iridescence; + material.iridescenceIOR = iridescenceIOR; + #ifdef USE_IRIDESCENCEMAP + material.iridescence *= texture2D( iridescenceMap, vUv ).r; + #endif + #ifdef USE_IRIDESCENCE_THICKNESSMAP + material.iridescenceThickness = (iridescenceThicknessMaximum - iridescenceThicknessMinimum) * texture2D( iridescenceThicknessMap, vUv ).g + iridescenceThicknessMinimum; + #else + material.iridescenceThickness = iridescenceThicknessMaximum; + #endif +#endif +#ifdef USE_SHEEN + material.sheenColor = sheenColor; + #ifdef USE_SHEENCOLORMAP + material.sheenColor *= texture2D( sheenColorMap, vUv ).rgb; + #endif + material.sheenRoughness = clamp( sheenRoughness, 0.07, 1.0 ); + #ifdef USE_SHEENROUGHNESSMAP + material.sheenRoughness *= texture2D( sheenRoughnessMap, vUv ).a; + #endif +#endif`,IK=`struct PhysicalMaterial { + vec3 diffuseColor; + float roughness; + vec3 specularColor; + float specularF90; + #ifdef USE_CLEARCOAT + float clearcoat; + float clearcoatRoughness; + vec3 clearcoatF0; + float clearcoatF90; + #endif + #ifdef USE_IRIDESCENCE + float iridescence; + float iridescenceIOR; + float iridescenceThickness; + vec3 iridescenceFresnel; + vec3 iridescenceF0; + #endif + #ifdef USE_SHEEN + vec3 sheenColor; + float sheenRoughness; + #endif +}; +vec3 clearcoatSpecular = vec3( 0.0 ); +vec3 sheenSpecular = vec3( 0.0 ); +float IBLSheenBRDF( const in vec3 normal, const in vec3 viewDir, const in float roughness) { + float dotNV = saturate( dot( normal, viewDir ) ); + float r2 = roughness * roughness; + float a = roughness < 0.25 ? -339.2 * r2 + 161.4 * roughness - 25.9 : -8.48 * r2 + 14.3 * roughness - 9.95; + float b = roughness < 0.25 ? 44.0 * r2 - 23.7 * roughness + 3.26 : 1.97 * r2 - 3.27 * roughness + 0.72; + float DG = exp( a * dotNV + b ) + ( roughness < 0.25 ? 0.0 : 0.1 * ( roughness - 0.25 ) ); + return saturate( DG * RECIPROCAL_PI ); +} +vec2 DFGApprox( const in vec3 normal, const in vec3 viewDir, const in float roughness ) { + float dotNV = saturate( dot( normal, viewDir ) ); + const vec4 c0 = vec4( - 1, - 0.0275, - 0.572, 0.022 ); + const vec4 c1 = vec4( 1, 0.0425, 1.04, - 0.04 ); + vec4 r = roughness * c0 + c1; + float a004 = min( r.x * r.x, exp2( - 9.28 * dotNV ) ) * r.x + r.y; + vec2 fab = vec2( - 1.04, 1.04 ) * a004 + r.zw; + return fab; +} +vec3 EnvironmentBRDF( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float roughness ) { + vec2 fab = DFGApprox( normal, viewDir, roughness ); + return specularColor * fab.x + specularF90 * fab.y; +} +#ifdef USE_IRIDESCENCE +void computeMultiscatteringIridescence( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float iridescence, const in vec3 iridescenceF0, const in float roughness, inout vec3 singleScatter, inout vec3 multiScatter ) { +#else +void computeMultiscattering( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float roughness, inout vec3 singleScatter, inout vec3 multiScatter ) { +#endif + vec2 fab = DFGApprox( normal, viewDir, roughness ); + #ifdef USE_IRIDESCENCE + vec3 Fr = mix( specularColor, iridescenceF0, iridescence ); + #else + vec3 Fr = specularColor; + #endif + vec3 FssEss = Fr * fab.x + specularF90 * fab.y; + float Ess = fab.x + fab.y; + float Ems = 1.0 - Ess; + vec3 Favg = Fr + ( 1.0 - Fr ) * 0.047619; vec3 Fms = FssEss * Favg / ( 1.0 - Ems * Favg ); + singleScatter += FssEss; + multiScatter += Fms * Ems; +} +#if NUM_RECT_AREA_LIGHTS > 0 + void RE_Direct_RectArea_Physical( const in RectAreaLight rectAreaLight, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) { + vec3 normal = geometry.normal; + vec3 viewDir = geometry.viewDir; + vec3 position = geometry.position; + vec3 lightPos = rectAreaLight.position; + vec3 halfWidth = rectAreaLight.halfWidth; + vec3 halfHeight = rectAreaLight.halfHeight; + vec3 lightColor = rectAreaLight.color; + float roughness = material.roughness; + vec3 rectCoords[ 4 ]; + rectCoords[ 0 ] = lightPos + halfWidth - halfHeight; rectCoords[ 1 ] = lightPos - halfWidth - halfHeight; + rectCoords[ 2 ] = lightPos - halfWidth + halfHeight; + rectCoords[ 3 ] = lightPos + halfWidth + halfHeight; + vec2 uv = LTC_Uv( normal, viewDir, roughness ); + vec4 t1 = texture2D( ltc_1, uv ); + vec4 t2 = texture2D( ltc_2, uv ); + mat3 mInv = mat3( + vec3( t1.x, 0, t1.y ), + vec3( 0, 1, 0 ), + vec3( t1.z, 0, t1.w ) + ); + vec3 fresnel = ( material.specularColor * t2.x + ( vec3( 1.0 ) - material.specularColor ) * t2.y ); + reflectedLight.directSpecular += lightColor * fresnel * LTC_Evaluate( normal, viewDir, position, mInv, rectCoords ); + reflectedLight.directDiffuse += lightColor * material.diffuseColor * LTC_Evaluate( normal, viewDir, position, mat3( 1.0 ), rectCoords ); + } +#endif +void RE_Direct_Physical( const in IncidentLight directLight, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) { + float dotNL = saturate( dot( geometry.normal, directLight.direction ) ); + vec3 irradiance = dotNL * directLight.color; + #ifdef USE_CLEARCOAT + float dotNLcc = saturate( dot( geometry.clearcoatNormal, directLight.direction ) ); + vec3 ccIrradiance = dotNLcc * directLight.color; + clearcoatSpecular += ccIrradiance * BRDF_GGX( directLight.direction, geometry.viewDir, geometry.clearcoatNormal, material.clearcoatF0, material.clearcoatF90, material.clearcoatRoughness ); + #endif + #ifdef USE_SHEEN + sheenSpecular += irradiance * BRDF_Sheen( directLight.direction, geometry.viewDir, geometry.normal, material.sheenColor, material.sheenRoughness ); + #endif + #ifdef USE_IRIDESCENCE + reflectedLight.directSpecular += irradiance * BRDF_GGX_Iridescence( directLight.direction, geometry.viewDir, geometry.normal, material.specularColor, material.specularF90, material.iridescence, material.iridescenceFresnel, material.roughness ); + #else + reflectedLight.directSpecular += irradiance * BRDF_GGX( directLight.direction, geometry.viewDir, geometry.normal, material.specularColor, material.specularF90, material.roughness ); + #endif + reflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor ); +} +void RE_IndirectDiffuse_Physical( const in vec3 irradiance, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) { + reflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor ); +} +void RE_IndirectSpecular_Physical( const in vec3 radiance, const in vec3 irradiance, const in vec3 clearcoatRadiance, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight) { + #ifdef USE_CLEARCOAT + clearcoatSpecular += clearcoatRadiance * EnvironmentBRDF( geometry.clearcoatNormal, geometry.viewDir, material.clearcoatF0, material.clearcoatF90, material.clearcoatRoughness ); + #endif + #ifdef USE_SHEEN + sheenSpecular += irradiance * material.sheenColor * IBLSheenBRDF( geometry.normal, geometry.viewDir, material.sheenRoughness ); + #endif + vec3 singleScattering = vec3( 0.0 ); + vec3 multiScattering = vec3( 0.0 ); + vec3 cosineWeightedIrradiance = irradiance * RECIPROCAL_PI; + #ifdef USE_IRIDESCENCE + computeMultiscatteringIridescence( geometry.normal, geometry.viewDir, material.specularColor, material.specularF90, material.iridescence, material.iridescenceFresnel, material.roughness, singleScattering, multiScattering ); + #else + computeMultiscattering( geometry.normal, geometry.viewDir, material.specularColor, material.specularF90, material.roughness, singleScattering, multiScattering ); + #endif + vec3 totalScattering = singleScattering + multiScattering; + vec3 diffuse = material.diffuseColor * ( 1.0 - max( max( totalScattering.r, totalScattering.g ), totalScattering.b ) ); + reflectedLight.indirectSpecular += radiance * singleScattering; + reflectedLight.indirectSpecular += multiScattering * cosineWeightedIrradiance; + reflectedLight.indirectDiffuse += diffuse * cosineWeightedIrradiance; +} +#define RE_Direct RE_Direct_Physical +#define RE_Direct_RectArea RE_Direct_RectArea_Physical +#define RE_IndirectDiffuse RE_IndirectDiffuse_Physical +#define RE_IndirectSpecular RE_IndirectSpecular_Physical +float computeSpecularOcclusion( const in float dotNV, const in float ambientOcclusion, const in float roughness ) { + return saturate( pow( dotNV + ambientOcclusion, exp2( - 16.0 * roughness - 1.0 ) ) - 1.0 + ambientOcclusion ); +}`,LK=` +GeometricContext geometry; +geometry.position = - vViewPosition; +geometry.normal = normal; +geometry.viewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( vViewPosition ); +#ifdef USE_CLEARCOAT + geometry.clearcoatNormal = clearcoatNormal; +#endif +#ifdef USE_IRIDESCENCE +float dotNVi = saturate( dot( normal, geometry.viewDir ) ); +if ( material.iridescenceThickness == 0.0 ) { + material.iridescence = 0.0; +} else { + material.iridescence = saturate( material.iridescence ); +} +if ( material.iridescence > 0.0 ) { + material.iridescenceFresnel = evalIridescence( 1.0, material.iridescenceIOR, dotNVi, material.iridescenceThickness, material.specularColor ); + material.iridescenceF0 = Schlick_to_F0( material.iridescenceFresnel, 1.0, dotNVi ); +} +#endif +IncidentLight directLight; +#if ( NUM_POINT_LIGHTS > 0 ) && defined( RE_Direct ) + PointLight pointLight; + #if defined( USE_SHADOWMAP ) && NUM_POINT_LIGHT_SHADOWS > 0 + PointLightShadow pointLightShadow; + #endif + #pragma unroll_loop_start + for ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) { + pointLight = pointLights[ i ]; + getPointLightInfo( pointLight, geometry, directLight ); + #if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_POINT_LIGHT_SHADOWS ) + pointLightShadow = pointLightShadows[ i ]; + directLight.color *= all( bvec2( directLight.visible, receiveShadow ) ) ? getPointShadow( pointShadowMap[ i ], pointLightShadow.shadowMapSize, pointLightShadow.shadowBias, pointLightShadow.shadowRadius, vPointShadowCoord[ i ], pointLightShadow.shadowCameraNear, pointLightShadow.shadowCameraFar ) : 1.0; + #endif + RE_Direct( directLight, geometry, material, reflectedLight ); + } + #pragma unroll_loop_end +#endif +#if ( NUM_SPOT_LIGHTS > 0 ) && defined( RE_Direct ) + SpotLight spotLight; + #if defined( USE_SHADOWMAP ) && NUM_SPOT_LIGHT_SHADOWS > 0 + SpotLightShadow spotLightShadow; + #endif + #pragma unroll_loop_start + for ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) { + spotLight = spotLights[ i ]; + getSpotLightInfo( spotLight, geometry, directLight ); + #if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS ) + spotLightShadow = spotLightShadows[ i ]; + directLight.color *= all( bvec2( directLight.visible, receiveShadow ) ) ? getShadow( spotShadowMap[ i ], spotLightShadow.shadowMapSize, spotLightShadow.shadowBias, spotLightShadow.shadowRadius, vSpotShadowCoord[ i ] ) : 1.0; + #endif + RE_Direct( directLight, geometry, material, reflectedLight ); + } + #pragma unroll_loop_end +#endif +#if ( NUM_DIR_LIGHTS > 0 ) && defined( RE_Direct ) + DirectionalLight directionalLight; + #if defined( USE_SHADOWMAP ) && NUM_DIR_LIGHT_SHADOWS > 0 + DirectionalLightShadow directionalLightShadow; + #endif + #pragma unroll_loop_start + for ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) { + directionalLight = directionalLights[ i ]; + getDirectionalLightInfo( directionalLight, geometry, directLight ); + #if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_DIR_LIGHT_SHADOWS ) + directionalLightShadow = directionalLightShadows[ i ]; + directLight.color *= all( bvec2( directLight.visible, receiveShadow ) ) ? getShadow( directionalShadowMap[ i ], directionalLightShadow.shadowMapSize, directionalLightShadow.shadowBias, directionalLightShadow.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0; + #endif + RE_Direct( directLight, geometry, material, reflectedLight ); + } + #pragma unroll_loop_end +#endif +#if ( NUM_RECT_AREA_LIGHTS > 0 ) && defined( RE_Direct_RectArea ) + RectAreaLight rectAreaLight; + #pragma unroll_loop_start + for ( int i = 0; i < NUM_RECT_AREA_LIGHTS; i ++ ) { + rectAreaLight = rectAreaLights[ i ]; + RE_Direct_RectArea( rectAreaLight, geometry, material, reflectedLight ); + } + #pragma unroll_loop_end +#endif +#if defined( RE_IndirectDiffuse ) + vec3 iblIrradiance = vec3( 0.0 ); + vec3 irradiance = getAmbientLightIrradiance( ambientLightColor ); + irradiance += getLightProbeIrradiance( lightProbe, geometry.normal ); + #if ( NUM_HEMI_LIGHTS > 0 ) + #pragma unroll_loop_start + for ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) { + irradiance += getHemisphereLightIrradiance( hemisphereLights[ i ], geometry.normal ); + } + #pragma unroll_loop_end + #endif +#endif +#if defined( RE_IndirectSpecular ) + vec3 radiance = vec3( 0.0 ); + vec3 clearcoatRadiance = vec3( 0.0 ); +#endif`,PK=`#if defined( RE_IndirectDiffuse ) + #ifdef USE_LIGHTMAP + vec4 lightMapTexel = texture2D( lightMap, vUv2 ); + vec3 lightMapIrradiance = lightMapTexel.rgb * lightMapIntensity; + irradiance += lightMapIrradiance; + #endif + #if defined( USE_ENVMAP ) && defined( STANDARD ) && defined( ENVMAP_TYPE_CUBE_UV ) + iblIrradiance += getIBLIrradiance( geometry.normal ); + #endif +#endif +#if defined( USE_ENVMAP ) && defined( RE_IndirectSpecular ) + radiance += getIBLRadiance( geometry.viewDir, geometry.normal, material.roughness ); + #ifdef USE_CLEARCOAT + clearcoatRadiance += getIBLRadiance( geometry.viewDir, geometry.clearcoatNormal, material.clearcoatRoughness ); + #endif +#endif`,DK=`#if defined( RE_IndirectDiffuse ) + RE_IndirectDiffuse( irradiance, geometry, material, reflectedLight ); +#endif +#if defined( RE_IndirectSpecular ) + RE_IndirectSpecular( radiance, iblIrradiance, clearcoatRadiance, geometry, material, reflectedLight ); +#endif`,FK=`#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT ) + gl_FragDepthEXT = vIsPerspective == 0.0 ? gl_FragCoord.z : log2( vFragDepth ) * logDepthBufFC * 0.5; +#endif`,NK=`#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT ) + uniform float logDepthBufFC; + varying float vFragDepth; + varying float vIsPerspective; +#endif`,$K=`#ifdef USE_LOGDEPTHBUF + #ifdef USE_LOGDEPTHBUF_EXT + varying float vFragDepth; + varying float vIsPerspective; + #else + uniform float logDepthBufFC; + #endif +#endif`,UK=`#ifdef USE_LOGDEPTHBUF + #ifdef USE_LOGDEPTHBUF_EXT + vFragDepth = 1.0 + gl_Position.w; + vIsPerspective = float( isPerspectiveMatrix( projectionMatrix ) ); + #else + if ( isPerspectiveMatrix( projectionMatrix ) ) { + gl_Position.z = log2( max( EPSILON, gl_Position.w + 1.0 ) ) * logDepthBufFC - 1.0; + gl_Position.z *= gl_Position.w; + } + #endif +#endif`,BK=`#ifdef USE_MAP + vec4 sampledDiffuseColor = texture2D( map, vUv ); + #ifdef DECODE_VIDEO_TEXTURE + sampledDiffuseColor = vec4( mix( pow( sampledDiffuseColor.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), sampledDiffuseColor.rgb * 0.0773993808, vec3( lessThanEqual( sampledDiffuseColor.rgb, vec3( 0.04045 ) ) ) ), sampledDiffuseColor.w ); + #endif + diffuseColor *= sampledDiffuseColor; +#endif`,GK=`#ifdef USE_MAP + uniform sampler2D map; +#endif`,zK=`#if defined( USE_MAP ) || defined( USE_ALPHAMAP ) + vec2 uv = ( uvTransform * vec3( gl_PointCoord.x, 1.0 - gl_PointCoord.y, 1 ) ).xy; +#endif +#ifdef USE_MAP + diffuseColor *= texture2D( map, uv ); +#endif +#ifdef USE_ALPHAMAP + diffuseColor.a *= texture2D( alphaMap, uv ).g; +#endif`,HK=`#if defined( USE_MAP ) || defined( USE_ALPHAMAP ) + uniform mat3 uvTransform; +#endif +#ifdef USE_MAP + uniform sampler2D map; +#endif +#ifdef USE_ALPHAMAP + uniform sampler2D alphaMap; +#endif`,VK=`float metalnessFactor = metalness; +#ifdef USE_METALNESSMAP + vec4 texelMetalness = texture2D( metalnessMap, vUv ); + metalnessFactor *= texelMetalness.b; +#endif`,WK=`#ifdef USE_METALNESSMAP + uniform sampler2D metalnessMap; +#endif`,jK=`#if defined( USE_MORPHCOLORS ) && defined( MORPHTARGETS_TEXTURE ) + vColor *= morphTargetBaseInfluence; + for ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) { + #if defined( USE_COLOR_ALPHA ) + if ( morphTargetInfluences[ i ] != 0.0 ) vColor += getMorph( gl_VertexID, i, 2 ) * morphTargetInfluences[ i ]; + #elif defined( USE_COLOR ) + if ( morphTargetInfluences[ i ] != 0.0 ) vColor += getMorph( gl_VertexID, i, 2 ).rgb * morphTargetInfluences[ i ]; + #endif + } +#endif`,qK=`#ifdef USE_MORPHNORMALS + objectNormal *= morphTargetBaseInfluence; + #ifdef MORPHTARGETS_TEXTURE + for ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) { + if ( morphTargetInfluences[ i ] != 0.0 ) objectNormal += getMorph( gl_VertexID, i, 1 ).xyz * morphTargetInfluences[ i ]; + } + #else + objectNormal += morphNormal0 * morphTargetInfluences[ 0 ]; + objectNormal += morphNormal1 * morphTargetInfluences[ 1 ]; + objectNormal += morphNormal2 * morphTargetInfluences[ 2 ]; + objectNormal += morphNormal3 * morphTargetInfluences[ 3 ]; + #endif +#endif`,YK=`#ifdef USE_MORPHTARGETS + uniform float morphTargetBaseInfluence; + #ifdef MORPHTARGETS_TEXTURE + uniform float morphTargetInfluences[ MORPHTARGETS_COUNT ]; + uniform sampler2DArray morphTargetsTexture; + uniform ivec2 morphTargetsTextureSize; + vec4 getMorph( const in int vertexIndex, const in int morphTargetIndex, const in int offset ) { + int texelIndex = vertexIndex * MORPHTARGETS_TEXTURE_STRIDE + offset; + int y = texelIndex / morphTargetsTextureSize.x; + int x = texelIndex - y * morphTargetsTextureSize.x; + ivec3 morphUV = ivec3( x, y, morphTargetIndex ); + return texelFetch( morphTargetsTexture, morphUV, 0 ); + } + #else + #ifndef USE_MORPHNORMALS + uniform float morphTargetInfluences[ 8 ]; + #else + uniform float morphTargetInfluences[ 4 ]; + #endif + #endif +#endif`,KK=`#ifdef USE_MORPHTARGETS + transformed *= morphTargetBaseInfluence; + #ifdef MORPHTARGETS_TEXTURE + for ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) { + if ( morphTargetInfluences[ i ] != 0.0 ) transformed += getMorph( gl_VertexID, i, 0 ).xyz * morphTargetInfluences[ i ]; + } + #else + transformed += morphTarget0 * morphTargetInfluences[ 0 ]; + transformed += morphTarget1 * morphTargetInfluences[ 1 ]; + transformed += morphTarget2 * morphTargetInfluences[ 2 ]; + transformed += morphTarget3 * morphTargetInfluences[ 3 ]; + #ifndef USE_MORPHNORMALS + transformed += morphTarget4 * morphTargetInfluences[ 4 ]; + transformed += morphTarget5 * morphTargetInfluences[ 5 ]; + transformed += morphTarget6 * morphTargetInfluences[ 6 ]; + transformed += morphTarget7 * morphTargetInfluences[ 7 ]; + #endif + #endif +#endif`,XK=`float faceDirection = gl_FrontFacing ? 1.0 : - 1.0; +#ifdef FLAT_SHADED + vec3 fdx = vec3( dFdx( vViewPosition.x ), dFdx( vViewPosition.y ), dFdx( vViewPosition.z ) ); + vec3 fdy = vec3( dFdy( vViewPosition.x ), dFdy( vViewPosition.y ), dFdy( vViewPosition.z ) ); + vec3 normal = normalize( cross( fdx, fdy ) ); +#else + vec3 normal = normalize( vNormal ); + #ifdef DOUBLE_SIDED + normal = normal * faceDirection; + #endif + #ifdef USE_TANGENT + vec3 tangent = normalize( vTangent ); + vec3 bitangent = normalize( vBitangent ); + #ifdef DOUBLE_SIDED + tangent = tangent * faceDirection; + bitangent = bitangent * faceDirection; + #endif + #if defined( TANGENTSPACE_NORMALMAP ) || defined( USE_CLEARCOAT_NORMALMAP ) + mat3 vTBN = mat3( tangent, bitangent, normal ); + #endif + #endif +#endif +vec3 geometryNormal = normal;`,ZK=`#ifdef OBJECTSPACE_NORMALMAP + normal = texture2D( normalMap, vUv ).xyz * 2.0 - 1.0; + #ifdef FLIP_SIDED + normal = - normal; + #endif + #ifdef DOUBLE_SIDED + normal = normal * faceDirection; + #endif + normal = normalize( normalMatrix * normal ); +#elif defined( TANGENTSPACE_NORMALMAP ) + vec3 mapN = texture2D( normalMap, vUv ).xyz * 2.0 - 1.0; + mapN.xy *= normalScale; + #ifdef USE_TANGENT + normal = normalize( vTBN * mapN ); + #else + normal = perturbNormal2Arb( - vViewPosition, normal, mapN, faceDirection ); + #endif +#elif defined( USE_BUMPMAP ) + normal = perturbNormalArb( - vViewPosition, normal, dHdxy_fwd(), faceDirection ); +#endif`,JK=`#ifndef FLAT_SHADED + varying vec3 vNormal; + #ifdef USE_TANGENT + varying vec3 vTangent; + varying vec3 vBitangent; + #endif +#endif`,QK=`#ifndef FLAT_SHADED + varying vec3 vNormal; + #ifdef USE_TANGENT + varying vec3 vTangent; + varying vec3 vBitangent; + #endif +#endif`,eX=`#ifndef FLAT_SHADED + vNormal = normalize( transformedNormal ); + #ifdef USE_TANGENT + vTangent = normalize( transformedTangent ); + vBitangent = normalize( cross( vNormal, vTangent ) * tangent.w ); + #endif +#endif`,tX=`#ifdef USE_NORMALMAP + uniform sampler2D normalMap; + uniform vec2 normalScale; +#endif +#ifdef OBJECTSPACE_NORMALMAP + uniform mat3 normalMatrix; +#endif +#if ! defined ( USE_TANGENT ) && ( defined ( TANGENTSPACE_NORMALMAP ) || defined ( USE_CLEARCOAT_NORMALMAP ) ) + vec3 perturbNormal2Arb( vec3 eye_pos, vec3 surf_norm, vec3 mapN, float faceDirection ) { + vec3 q0 = vec3( dFdx( eye_pos.x ), dFdx( eye_pos.y ), dFdx( eye_pos.z ) ); + vec3 q1 = vec3( dFdy( eye_pos.x ), dFdy( eye_pos.y ), dFdy( eye_pos.z ) ); + vec2 st0 = dFdx( vUv.st ); + vec2 st1 = dFdy( vUv.st ); + vec3 N = surf_norm; + vec3 q1perp = cross( q1, N ); + vec3 q0perp = cross( N, q0 ); + vec3 T = q1perp * st0.x + q0perp * st1.x; + vec3 B = q1perp * st0.y + q0perp * st1.y; + float det = max( dot( T, T ), dot( B, B ) ); + float scale = ( det == 0.0 ) ? 0.0 : faceDirection * inversesqrt( det ); + return normalize( T * ( mapN.x * scale ) + B * ( mapN.y * scale ) + N * mapN.z ); + } +#endif`,nX=`#ifdef USE_CLEARCOAT + vec3 clearcoatNormal = geometryNormal; +#endif`,sX=`#ifdef USE_CLEARCOAT_NORMALMAP + vec3 clearcoatMapN = texture2D( clearcoatNormalMap, vUv ).xyz * 2.0 - 1.0; + clearcoatMapN.xy *= clearcoatNormalScale; + #ifdef USE_TANGENT + clearcoatNormal = normalize( vTBN * clearcoatMapN ); + #else + clearcoatNormal = perturbNormal2Arb( - vViewPosition, clearcoatNormal, clearcoatMapN, faceDirection ); + #endif +#endif`,iX=`#ifdef USE_CLEARCOATMAP + uniform sampler2D clearcoatMap; +#endif +#ifdef USE_CLEARCOAT_ROUGHNESSMAP + uniform sampler2D clearcoatRoughnessMap; +#endif +#ifdef USE_CLEARCOAT_NORMALMAP + uniform sampler2D clearcoatNormalMap; + uniform vec2 clearcoatNormalScale; +#endif`,rX=`#ifdef USE_IRIDESCENCEMAP + uniform sampler2D iridescenceMap; +#endif +#ifdef USE_IRIDESCENCE_THICKNESSMAP + uniform sampler2D iridescenceThicknessMap; +#endif`,oX=`#ifdef OPAQUE +diffuseColor.a = 1.0; +#endif +#ifdef USE_TRANSMISSION +diffuseColor.a *= transmissionAlpha + 0.1; +#endif +gl_FragColor = vec4( outgoingLight, diffuseColor.a );`,aX=`vec3 packNormalToRGB( const in vec3 normal ) { + return normalize( normal ) * 0.5 + 0.5; +} +vec3 unpackRGBToNormal( const in vec3 rgb ) { + return 2.0 * rgb.xyz - 1.0; +} +const float PackUpscale = 256. / 255.;const float UnpackDownscale = 255. / 256.; +const vec3 PackFactors = vec3( 256. * 256. * 256., 256. * 256., 256. ); +const vec4 UnpackFactors = UnpackDownscale / vec4( PackFactors, 1. ); +const float ShiftRight8 = 1. / 256.; +vec4 packDepthToRGBA( const in float v ) { + vec4 r = vec4( fract( v * PackFactors ), v ); + r.yzw -= r.xyz * ShiftRight8; return r * PackUpscale; +} +float unpackRGBAToDepth( const in vec4 v ) { + return dot( v, UnpackFactors ); +} +vec4 pack2HalfToRGBA( vec2 v ) { + vec4 r = vec4( v.x, fract( v.x * 255.0 ), v.y, fract( v.y * 255.0 ) ); + return vec4( r.x - r.y / 255.0, r.y, r.z - r.w / 255.0, r.w ); +} +vec2 unpackRGBATo2Half( vec4 v ) { + return vec2( v.x + ( v.y / 255.0 ), v.z + ( v.w / 255.0 ) ); +} +float viewZToOrthographicDepth( const in float viewZ, const in float near, const in float far ) { + return ( viewZ + near ) / ( near - far ); +} +float orthographicDepthToViewZ( const in float linearClipZ, const in float near, const in float far ) { + return linearClipZ * ( near - far ) - near; +} +float viewZToPerspectiveDepth( const in float viewZ, const in float near, const in float far ) { + return ( ( near + viewZ ) * far ) / ( ( far - near ) * viewZ ); +} +float perspectiveDepthToViewZ( const in float invClipZ, const in float near, const in float far ) { + return ( near * far ) / ( ( far - near ) * invClipZ - far ); +}`,lX=`#ifdef PREMULTIPLIED_ALPHA + gl_FragColor.rgb *= gl_FragColor.a; +#endif`,cX=`vec4 mvPosition = vec4( transformed, 1.0 ); +#ifdef USE_INSTANCING + mvPosition = instanceMatrix * mvPosition; +#endif +mvPosition = modelViewMatrix * mvPosition; +gl_Position = projectionMatrix * mvPosition;`,uX=`#ifdef DITHERING + gl_FragColor.rgb = dithering( gl_FragColor.rgb ); +#endif`,dX=`#ifdef DITHERING + vec3 dithering( vec3 color ) { + float grid_position = rand( gl_FragCoord.xy ); + vec3 dither_shift_RGB = vec3( 0.25 / 255.0, -0.25 / 255.0, 0.25 / 255.0 ); + dither_shift_RGB = mix( 2.0 * dither_shift_RGB, -2.0 * dither_shift_RGB, grid_position ); + return color + dither_shift_RGB; + } +#endif`,fX=`float roughnessFactor = roughness; +#ifdef USE_ROUGHNESSMAP + vec4 texelRoughness = texture2D( roughnessMap, vUv ); + roughnessFactor *= texelRoughness.g; +#endif`,hX=`#ifdef USE_ROUGHNESSMAP + uniform sampler2D roughnessMap; +#endif`,pX=`#ifdef USE_SHADOWMAP + #if NUM_DIR_LIGHT_SHADOWS > 0 + uniform sampler2D directionalShadowMap[ NUM_DIR_LIGHT_SHADOWS ]; + varying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ]; + struct DirectionalLightShadow { + float shadowBias; + float shadowNormalBias; + float shadowRadius; + vec2 shadowMapSize; + }; + uniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ]; + #endif + #if NUM_SPOT_LIGHT_SHADOWS > 0 + uniform sampler2D spotShadowMap[ NUM_SPOT_LIGHT_SHADOWS ]; + varying vec4 vSpotShadowCoord[ NUM_SPOT_LIGHT_SHADOWS ]; + struct SpotLightShadow { + float shadowBias; + float shadowNormalBias; + float shadowRadius; + vec2 shadowMapSize; + }; + uniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ]; + #endif + #if NUM_POINT_LIGHT_SHADOWS > 0 + uniform sampler2D pointShadowMap[ NUM_POINT_LIGHT_SHADOWS ]; + varying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ]; + struct PointLightShadow { + float shadowBias; + float shadowNormalBias; + float shadowRadius; + vec2 shadowMapSize; + float shadowCameraNear; + float shadowCameraFar; + }; + uniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ]; + #endif + float texture2DCompare( sampler2D depths, vec2 uv, float compare ) { + return step( compare, unpackRGBAToDepth( texture2D( depths, uv ) ) ); + } + vec2 texture2DDistribution( sampler2D shadow, vec2 uv ) { + return unpackRGBATo2Half( texture2D( shadow, uv ) ); + } + float VSMShadow (sampler2D shadow, vec2 uv, float compare ){ + float occlusion = 1.0; + vec2 distribution = texture2DDistribution( shadow, uv ); + float hard_shadow = step( compare , distribution.x ); + if (hard_shadow != 1.0 ) { + float distance = compare - distribution.x ; + float variance = max( 0.00000, distribution.y * distribution.y ); + float softness_probability = variance / (variance + distance * distance ); softness_probability = clamp( ( softness_probability - 0.3 ) / ( 0.95 - 0.3 ), 0.0, 1.0 ); occlusion = clamp( max( hard_shadow, softness_probability ), 0.0, 1.0 ); + } + return occlusion; + } + float getShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowBias, float shadowRadius, vec4 shadowCoord ) { + float shadow = 1.0; + shadowCoord.xyz /= shadowCoord.w; + shadowCoord.z += shadowBias; + bvec4 inFrustumVec = bvec4 ( shadowCoord.x >= 0.0, shadowCoord.x <= 1.0, shadowCoord.y >= 0.0, shadowCoord.y <= 1.0 ); + bool inFrustum = all( inFrustumVec ); + bvec2 frustumTestVec = bvec2( inFrustum, shadowCoord.z <= 1.0 ); + bool frustumTest = all( frustumTestVec ); + if ( frustumTest ) { + #if defined( SHADOWMAP_TYPE_PCF ) + vec2 texelSize = vec2( 1.0 ) / shadowMapSize; + float dx0 = - texelSize.x * shadowRadius; + float dy0 = - texelSize.y * shadowRadius; + float dx1 = + texelSize.x * shadowRadius; + float dy1 = + texelSize.y * shadowRadius; + float dx2 = dx0 / 2.0; + float dy2 = dy0 / 2.0; + float dx3 = dx1 / 2.0; + float dy3 = dy1 / 2.0; + shadow = ( + texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy0 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy0 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy0 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy2 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy2 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy2 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, 0.0 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, 0.0 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, 0.0 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, 0.0 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy3 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy3 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy3 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy1 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy1 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy1 ), shadowCoord.z ) + ) * ( 1.0 / 17.0 ); + #elif defined( SHADOWMAP_TYPE_PCF_SOFT ) + vec2 texelSize = vec2( 1.0 ) / shadowMapSize; + float dx = texelSize.x; + float dy = texelSize.y; + vec2 uv = shadowCoord.xy; + vec2 f = fract( uv * shadowMapSize + 0.5 ); + uv -= f * texelSize; + shadow = ( + texture2DCompare( shadowMap, uv, shadowCoord.z ) + + texture2DCompare( shadowMap, uv + vec2( dx, 0.0 ), shadowCoord.z ) + + texture2DCompare( shadowMap, uv + vec2( 0.0, dy ), shadowCoord.z ) + + texture2DCompare( shadowMap, uv + texelSize, shadowCoord.z ) + + mix( texture2DCompare( shadowMap, uv + vec2( -dx, 0.0 ), shadowCoord.z ), + texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 0.0 ), shadowCoord.z ), + f.x ) + + mix( texture2DCompare( shadowMap, uv + vec2( -dx, dy ), shadowCoord.z ), + texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, dy ), shadowCoord.z ), + f.x ) + + mix( texture2DCompare( shadowMap, uv + vec2( 0.0, -dy ), shadowCoord.z ), + texture2DCompare( shadowMap, uv + vec2( 0.0, 2.0 * dy ), shadowCoord.z ), + f.y ) + + mix( texture2DCompare( shadowMap, uv + vec2( dx, -dy ), shadowCoord.z ), + texture2DCompare( shadowMap, uv + vec2( dx, 2.0 * dy ), shadowCoord.z ), + f.y ) + + mix( mix( texture2DCompare( shadowMap, uv + vec2( -dx, -dy ), shadowCoord.z ), + texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, -dy ), shadowCoord.z ), + f.x ), + mix( texture2DCompare( shadowMap, uv + vec2( -dx, 2.0 * dy ), shadowCoord.z ), + texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 2.0 * dy ), shadowCoord.z ), + f.x ), + f.y ) + ) * ( 1.0 / 9.0 ); + #elif defined( SHADOWMAP_TYPE_VSM ) + shadow = VSMShadow( shadowMap, shadowCoord.xy, shadowCoord.z ); + #else + shadow = texture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z ); + #endif + } + return shadow; + } + vec2 cubeToUV( vec3 v, float texelSizeY ) { + vec3 absV = abs( v ); + float scaleToCube = 1.0 / max( absV.x, max( absV.y, absV.z ) ); + absV *= scaleToCube; + v *= scaleToCube * ( 1.0 - 2.0 * texelSizeY ); + vec2 planar = v.xy; + float almostATexel = 1.5 * texelSizeY; + float almostOne = 1.0 - almostATexel; + if ( absV.z >= almostOne ) { + if ( v.z > 0.0 ) + planar.x = 4.0 - v.x; + } else if ( absV.x >= almostOne ) { + float signX = sign( v.x ); + planar.x = v.z * signX + 2.0 * signX; + } else if ( absV.y >= almostOne ) { + float signY = sign( v.y ); + planar.x = v.x + 2.0 * signY + 2.0; + planar.y = v.z * signY - 2.0; + } + return vec2( 0.125, 0.25 ) * planar + vec2( 0.375, 0.75 ); + } + float getPointShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowBias, float shadowRadius, vec4 shadowCoord, float shadowCameraNear, float shadowCameraFar ) { + vec2 texelSize = vec2( 1.0 ) / ( shadowMapSize * vec2( 4.0, 2.0 ) ); + vec3 lightToPosition = shadowCoord.xyz; + float dp = ( length( lightToPosition ) - shadowCameraNear ) / ( shadowCameraFar - shadowCameraNear ); dp += shadowBias; + vec3 bd3D = normalize( lightToPosition ); + #if defined( SHADOWMAP_TYPE_PCF ) || defined( SHADOWMAP_TYPE_PCF_SOFT ) || defined( SHADOWMAP_TYPE_VSM ) + vec2 offset = vec2( - 1, 1 ) * shadowRadius * texelSize.y; + return ( + texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyy, texelSize.y ), dp ) + + texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyy, texelSize.y ), dp ) + + texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyx, texelSize.y ), dp ) + + texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyx, texelSize.y ), dp ) + + texture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp ) + + texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxy, texelSize.y ), dp ) + + texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxy, texelSize.y ), dp ) + + texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxx, texelSize.y ), dp ) + + texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxx, texelSize.y ), dp ) + ) * ( 1.0 / 9.0 ); + #else + return texture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp ); + #endif + } +#endif`,mX=`#ifdef USE_SHADOWMAP + #if NUM_DIR_LIGHT_SHADOWS > 0 + uniform mat4 directionalShadowMatrix[ NUM_DIR_LIGHT_SHADOWS ]; + varying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ]; + struct DirectionalLightShadow { + float shadowBias; + float shadowNormalBias; + float shadowRadius; + vec2 shadowMapSize; + }; + uniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ]; + #endif + #if NUM_SPOT_LIGHT_SHADOWS > 0 + uniform mat4 spotShadowMatrix[ NUM_SPOT_LIGHT_SHADOWS ]; + varying vec4 vSpotShadowCoord[ NUM_SPOT_LIGHT_SHADOWS ]; + struct SpotLightShadow { + float shadowBias; + float shadowNormalBias; + float shadowRadius; + vec2 shadowMapSize; + }; + uniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ]; + #endif + #if NUM_POINT_LIGHT_SHADOWS > 0 + uniform mat4 pointShadowMatrix[ NUM_POINT_LIGHT_SHADOWS ]; + varying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ]; + struct PointLightShadow { + float shadowBias; + float shadowNormalBias; + float shadowRadius; + vec2 shadowMapSize; + float shadowCameraNear; + float shadowCameraFar; + }; + uniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ]; + #endif +#endif`,gX=`#ifdef USE_SHADOWMAP + #if NUM_DIR_LIGHT_SHADOWS > 0 || NUM_SPOT_LIGHT_SHADOWS > 0 || NUM_POINT_LIGHT_SHADOWS > 0 + vec3 shadowWorldNormal = inverseTransformDirection( transformedNormal, viewMatrix ); + vec4 shadowWorldPosition; + #endif + #if NUM_DIR_LIGHT_SHADOWS > 0 + #pragma unroll_loop_start + for ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) { + shadowWorldPosition = worldPosition + vec4( shadowWorldNormal * directionalLightShadows[ i ].shadowNormalBias, 0 ); + vDirectionalShadowCoord[ i ] = directionalShadowMatrix[ i ] * shadowWorldPosition; + } + #pragma unroll_loop_end + #endif + #if NUM_SPOT_LIGHT_SHADOWS > 0 + #pragma unroll_loop_start + for ( int i = 0; i < NUM_SPOT_LIGHT_SHADOWS; i ++ ) { + shadowWorldPosition = worldPosition + vec4( shadowWorldNormal * spotLightShadows[ i ].shadowNormalBias, 0 ); + vSpotShadowCoord[ i ] = spotShadowMatrix[ i ] * shadowWorldPosition; + } + #pragma unroll_loop_end + #endif + #if NUM_POINT_LIGHT_SHADOWS > 0 + #pragma unroll_loop_start + for ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) { + shadowWorldPosition = worldPosition + vec4( shadowWorldNormal * pointLightShadows[ i ].shadowNormalBias, 0 ); + vPointShadowCoord[ i ] = pointShadowMatrix[ i ] * shadowWorldPosition; + } + #pragma unroll_loop_end + #endif +#endif`,_X=`float getShadowMask() { + float shadow = 1.0; + #ifdef USE_SHADOWMAP + #if NUM_DIR_LIGHT_SHADOWS > 0 + DirectionalLightShadow directionalLight; + #pragma unroll_loop_start + for ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) { + directionalLight = directionalLightShadows[ i ]; + shadow *= receiveShadow ? getShadow( directionalShadowMap[ i ], directionalLight.shadowMapSize, directionalLight.shadowBias, directionalLight.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0; + } + #pragma unroll_loop_end + #endif + #if NUM_SPOT_LIGHT_SHADOWS > 0 + SpotLightShadow spotLight; + #pragma unroll_loop_start + for ( int i = 0; i < NUM_SPOT_LIGHT_SHADOWS; i ++ ) { + spotLight = spotLightShadows[ i ]; + shadow *= receiveShadow ? getShadow( spotShadowMap[ i ], spotLight.shadowMapSize, spotLight.shadowBias, spotLight.shadowRadius, vSpotShadowCoord[ i ] ) : 1.0; + } + #pragma unroll_loop_end + #endif + #if NUM_POINT_LIGHT_SHADOWS > 0 + PointLightShadow pointLight; + #pragma unroll_loop_start + for ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) { + pointLight = pointLightShadows[ i ]; + shadow *= receiveShadow ? getPointShadow( pointShadowMap[ i ], pointLight.shadowMapSize, pointLight.shadowBias, pointLight.shadowRadius, vPointShadowCoord[ i ], pointLight.shadowCameraNear, pointLight.shadowCameraFar ) : 1.0; + } + #pragma unroll_loop_end + #endif + #endif + return shadow; +}`,bX=`#ifdef USE_SKINNING + mat4 boneMatX = getBoneMatrix( skinIndex.x ); + mat4 boneMatY = getBoneMatrix( skinIndex.y ); + mat4 boneMatZ = getBoneMatrix( skinIndex.z ); + mat4 boneMatW = getBoneMatrix( skinIndex.w ); +#endif`,yX=`#ifdef USE_SKINNING + uniform mat4 bindMatrix; + uniform mat4 bindMatrixInverse; + uniform highp sampler2D boneTexture; + uniform int boneTextureSize; + mat4 getBoneMatrix( const in float i ) { + float j = i * 4.0; + float x = mod( j, float( boneTextureSize ) ); + float y = floor( j / float( boneTextureSize ) ); + float dx = 1.0 / float( boneTextureSize ); + float dy = 1.0 / float( boneTextureSize ); + y = dy * ( y + 0.5 ); + vec4 v1 = texture2D( boneTexture, vec2( dx * ( x + 0.5 ), y ) ); + vec4 v2 = texture2D( boneTexture, vec2( dx * ( x + 1.5 ), y ) ); + vec4 v3 = texture2D( boneTexture, vec2( dx * ( x + 2.5 ), y ) ); + vec4 v4 = texture2D( boneTexture, vec2( dx * ( x + 3.5 ), y ) ); + mat4 bone = mat4( v1, v2, v3, v4 ); + return bone; + } +#endif`,vX=`#ifdef USE_SKINNING + vec4 skinVertex = bindMatrix * vec4( transformed, 1.0 ); + vec4 skinned = vec4( 0.0 ); + skinned += boneMatX * skinVertex * skinWeight.x; + skinned += boneMatY * skinVertex * skinWeight.y; + skinned += boneMatZ * skinVertex * skinWeight.z; + skinned += boneMatW * skinVertex * skinWeight.w; + transformed = ( bindMatrixInverse * skinned ).xyz; +#endif`,wX=`#ifdef USE_SKINNING + mat4 skinMatrix = mat4( 0.0 ); + skinMatrix += skinWeight.x * boneMatX; + skinMatrix += skinWeight.y * boneMatY; + skinMatrix += skinWeight.z * boneMatZ; + skinMatrix += skinWeight.w * boneMatW; + skinMatrix = bindMatrixInverse * skinMatrix * bindMatrix; + objectNormal = vec4( skinMatrix * vec4( objectNormal, 0.0 ) ).xyz; + #ifdef USE_TANGENT + objectTangent = vec4( skinMatrix * vec4( objectTangent, 0.0 ) ).xyz; + #endif +#endif`,xX=`float specularStrength; +#ifdef USE_SPECULARMAP + vec4 texelSpecular = texture2D( specularMap, vUv ); + specularStrength = texelSpecular.r; +#else + specularStrength = 1.0; +#endif`,SX=`#ifdef USE_SPECULARMAP + uniform sampler2D specularMap; +#endif`,EX=`#if defined( TONE_MAPPING ) + gl_FragColor.rgb = toneMapping( gl_FragColor.rgb ); +#endif`,TX=`#ifndef saturate +#define saturate( a ) clamp( a, 0.0, 1.0 ) +#endif +uniform float toneMappingExposure; +vec3 LinearToneMapping( vec3 color ) { + return toneMappingExposure * color; +} +vec3 ReinhardToneMapping( vec3 color ) { + color *= toneMappingExposure; + return saturate( color / ( vec3( 1.0 ) + color ) ); +} +vec3 OptimizedCineonToneMapping( vec3 color ) { + color *= toneMappingExposure; + color = max( vec3( 0.0 ), color - 0.004 ); + return pow( ( color * ( 6.2 * color + 0.5 ) ) / ( color * ( 6.2 * color + 1.7 ) + 0.06 ), vec3( 2.2 ) ); +} +vec3 RRTAndODTFit( vec3 v ) { + vec3 a = v * ( v + 0.0245786 ) - 0.000090537; + vec3 b = v * ( 0.983729 * v + 0.4329510 ) + 0.238081; + return a / b; +} +vec3 ACESFilmicToneMapping( vec3 color ) { + const mat3 ACESInputMat = mat3( + vec3( 0.59719, 0.07600, 0.02840 ), vec3( 0.35458, 0.90834, 0.13383 ), + vec3( 0.04823, 0.01566, 0.83777 ) + ); + const mat3 ACESOutputMat = mat3( + vec3( 1.60475, -0.10208, -0.00327 ), vec3( -0.53108, 1.10813, -0.07276 ), + vec3( -0.07367, -0.00605, 1.07602 ) + ); + color *= toneMappingExposure / 0.6; + color = ACESInputMat * color; + color = RRTAndODTFit( color ); + color = ACESOutputMat * color; + return saturate( color ); +} +vec3 CustomToneMapping( vec3 color ) { return color; }`,AX=`#ifdef USE_TRANSMISSION + float transmissionAlpha = 1.0; + float transmissionFactor = transmission; + float thicknessFactor = thickness; + #ifdef USE_TRANSMISSIONMAP + transmissionFactor *= texture2D( transmissionMap, vUv ).r; + #endif + #ifdef USE_THICKNESSMAP + thicknessFactor *= texture2D( thicknessMap, vUv ).g; + #endif + vec3 pos = vWorldPosition; + vec3 v = normalize( cameraPosition - pos ); + vec3 n = inverseTransformDirection( normal, viewMatrix ); + vec4 transmission = getIBLVolumeRefraction( + n, v, roughnessFactor, material.diffuseColor, material.specularColor, material.specularF90, + pos, modelMatrix, viewMatrix, projectionMatrix, ior, thicknessFactor, + attenuationColor, attenuationDistance ); + totalDiffuse = mix( totalDiffuse, transmission.rgb, transmissionFactor ); + transmissionAlpha = mix( transmissionAlpha, transmission.a, transmissionFactor ); +#endif`,MX=`#ifdef USE_TRANSMISSION + uniform float transmission; + uniform float thickness; + uniform float attenuationDistance; + uniform vec3 attenuationColor; + #ifdef USE_TRANSMISSIONMAP + uniform sampler2D transmissionMap; + #endif + #ifdef USE_THICKNESSMAP + uniform sampler2D thicknessMap; + #endif + uniform vec2 transmissionSamplerSize; + uniform sampler2D transmissionSamplerMap; + uniform mat4 modelMatrix; + uniform mat4 projectionMatrix; + varying vec3 vWorldPosition; + vec3 getVolumeTransmissionRay( const in vec3 n, const in vec3 v, const in float thickness, const in float ior, const in mat4 modelMatrix ) { + vec3 refractionVector = refract( - v, normalize( n ), 1.0 / ior ); + vec3 modelScale; + modelScale.x = length( vec3( modelMatrix[ 0 ].xyz ) ); + modelScale.y = length( vec3( modelMatrix[ 1 ].xyz ) ); + modelScale.z = length( vec3( modelMatrix[ 2 ].xyz ) ); + return normalize( refractionVector ) * thickness * modelScale; + } + float applyIorToRoughness( const in float roughness, const in float ior ) { + return roughness * clamp( ior * 2.0 - 2.0, 0.0, 1.0 ); + } + vec4 getTransmissionSample( const in vec2 fragCoord, const in float roughness, const in float ior ) { + float framebufferLod = log2( transmissionSamplerSize.x ) * applyIorToRoughness( roughness, ior ); + #ifdef texture2DLodEXT + return texture2DLodEXT( transmissionSamplerMap, fragCoord.xy, framebufferLod ); + #else + return texture2D( transmissionSamplerMap, fragCoord.xy, framebufferLod ); + #endif + } + vec3 applyVolumeAttenuation( const in vec3 radiance, const in float transmissionDistance, const in vec3 attenuationColor, const in float attenuationDistance ) { + if ( attenuationDistance == 0.0 ) { + return radiance; + } else { + vec3 attenuationCoefficient = -log( attenuationColor ) / attenuationDistance; + vec3 transmittance = exp( - attenuationCoefficient * transmissionDistance ); return transmittance * radiance; + } + } + vec4 getIBLVolumeRefraction( const in vec3 n, const in vec3 v, const in float roughness, const in vec3 diffuseColor, + const in vec3 specularColor, const in float specularF90, const in vec3 position, const in mat4 modelMatrix, + const in mat4 viewMatrix, const in mat4 projMatrix, const in float ior, const in float thickness, + const in vec3 attenuationColor, const in float attenuationDistance ) { + vec3 transmissionRay = getVolumeTransmissionRay( n, v, thickness, ior, modelMatrix ); + vec3 refractedRayExit = position + transmissionRay; + vec4 ndcPos = projMatrix * viewMatrix * vec4( refractedRayExit, 1.0 ); + vec2 refractionCoords = ndcPos.xy / ndcPos.w; + refractionCoords += 1.0; + refractionCoords /= 2.0; + vec4 transmittedLight = getTransmissionSample( refractionCoords, roughness, ior ); + vec3 attenuatedColor = applyVolumeAttenuation( transmittedLight.rgb, length( transmissionRay ), attenuationColor, attenuationDistance ); + vec3 F = EnvironmentBRDF( n, v, specularColor, specularF90, roughness ); + return vec4( ( 1.0 - F ) * attenuatedColor * diffuseColor, transmittedLight.a ); + } +#endif`,kX=`#if ( defined( USE_UV ) && ! defined( UVS_VERTEX_ONLY ) ) + varying vec2 vUv; +#endif`,RX=`#ifdef USE_UV + #ifdef UVS_VERTEX_ONLY + vec2 vUv; + #else + varying vec2 vUv; + #endif + uniform mat3 uvTransform; +#endif`,CX=`#ifdef USE_UV + vUv = ( uvTransform * vec3( uv, 1 ) ).xy; +#endif`,OX=`#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP ) + varying vec2 vUv2; +#endif`,IX=`#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP ) + attribute vec2 uv2; + varying vec2 vUv2; + uniform mat3 uv2Transform; +#endif`,LX=`#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP ) + vUv2 = ( uv2Transform * vec3( uv2, 1 ) ).xy; +#endif`,PX=`#if defined( USE_ENVMAP ) || defined( DISTANCE ) || defined ( USE_SHADOWMAP ) || defined ( USE_TRANSMISSION ) + vec4 worldPosition = vec4( transformed, 1.0 ); + #ifdef USE_INSTANCING + worldPosition = instanceMatrix * worldPosition; + #endif + worldPosition = modelMatrix * worldPosition; +#endif`;const DX=`varying vec2 vUv; +uniform mat3 uvTransform; +void main() { + vUv = ( uvTransform * vec3( uv, 1 ) ).xy; + gl_Position = vec4( position.xy, 1.0, 1.0 ); +}`,FX=`uniform sampler2D t2D; +varying vec2 vUv; +void main() { + gl_FragColor = texture2D( t2D, vUv ); + #ifdef DECODE_VIDEO_TEXTURE + gl_FragColor = vec4( mix( pow( gl_FragColor.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), gl_FragColor.rgb * 0.0773993808, vec3( lessThanEqual( gl_FragColor.rgb, vec3( 0.04045 ) ) ) ), gl_FragColor.w ); + #endif + #include + #include +}`,NX=`varying vec3 vWorldDirection; +#include +void main() { + vWorldDirection = transformDirection( position, modelMatrix ); + #include + #include + gl_Position.z = gl_Position.w; +}`,$X=`#include +uniform float opacity; +varying vec3 vWorldDirection; +#include +void main() { + vec3 vReflect = vWorldDirection; + #include + gl_FragColor = envColor; + gl_FragColor.a *= opacity; + #include + #include +}`,UX=`#include +#include +#include +#include +#include +#include +#include +varying vec2 vHighPrecisionZW; +void main() { + #include + #include + #ifdef USE_DISPLACEMENTMAP + #include + #include + #include + #endif + #include + #include + #include + #include + #include + #include + #include + vHighPrecisionZW = gl_Position.zw; +}`,BX=`#if DEPTH_PACKING == 3200 + uniform float opacity; +#endif +#include +#include +#include +#include +#include +#include +#include +#include +varying vec2 vHighPrecisionZW; +void main() { + #include + vec4 diffuseColor = vec4( 1.0 ); + #if DEPTH_PACKING == 3200 + diffuseColor.a = opacity; + #endif + #include + #include + #include + #include + float fragCoordZ = 0.5 * vHighPrecisionZW[0] / vHighPrecisionZW[1] + 0.5; + #if DEPTH_PACKING == 3200 + gl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), opacity ); + #elif DEPTH_PACKING == 3201 + gl_FragColor = packDepthToRGBA( fragCoordZ ); + #endif +}`,GX=`#define DISTANCE +varying vec3 vWorldPosition; +#include +#include +#include +#include +#include +#include +void main() { + #include + #include + #ifdef USE_DISPLACEMENTMAP + #include + #include + #include + #endif + #include + #include + #include + #include + #include + #include + #include + vWorldPosition = worldPosition.xyz; +}`,zX=`#define DISTANCE +uniform vec3 referencePosition; +uniform float nearDistance; +uniform float farDistance; +varying vec3 vWorldPosition; +#include +#include +#include +#include +#include +#include +#include +void main () { + #include + vec4 diffuseColor = vec4( 1.0 ); + #include + #include + #include + float dist = length( vWorldPosition - referencePosition ); + dist = ( dist - nearDistance ) / ( farDistance - nearDistance ); + dist = saturate( dist ); + gl_FragColor = packDepthToRGBA( dist ); +}`,HX=`varying vec3 vWorldDirection; +#include +void main() { + vWorldDirection = transformDirection( position, modelMatrix ); + #include + #include +}`,VX=`uniform sampler2D tEquirect; +varying vec3 vWorldDirection; +#include +void main() { + vec3 direction = normalize( vWorldDirection ); + vec2 sampleUV = equirectUv( direction ); + gl_FragColor = texture2D( tEquirect, sampleUV ); + #include + #include +}`,WX=`uniform float scale; +attribute float lineDistance; +varying float vLineDistance; +#include +#include +#include +#include +#include +#include +void main() { + vLineDistance = scale * lineDistance; + #include + #include + #include + #include + #include + #include + #include + #include +}`,jX=`uniform vec3 diffuse; +uniform float opacity; +uniform float dashSize; +uniform float totalSize; +varying float vLineDistance; +#include +#include +#include +#include +#include +void main() { + #include + if ( mod( vLineDistance, totalSize ) > dashSize ) { + discard; + } + vec3 outgoingLight = vec3( 0.0 ); + vec4 diffuseColor = vec4( diffuse, opacity ); + #include + #include + outgoingLight = diffuseColor.rgb; + #include + #include + #include + #include + #include +}`,qX=`#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + #include + #include + #include + #if defined ( USE_ENVMAP ) || defined ( USE_SKINNING ) + #include + #include + #include + #include + #include + #endif + #include + #include + #include + #include + #include + #include + #include + #include + #include +}`,YX=`uniform vec3 diffuse; +uniform float opacity; +#ifndef FLAT_SHADED + varying vec3 vNormal; +#endif +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + vec4 diffuseColor = vec4( diffuse, opacity ); + #include + #include + #include + #include + #include + #include + ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) ); + #ifdef USE_LIGHTMAP + vec4 lightMapTexel = texture2D( lightMap, vUv2 ); + reflectedLight.indirectDiffuse += lightMapTexel.rgb * lightMapIntensity * RECIPROCAL_PI; + #else + reflectedLight.indirectDiffuse += vec3( 1.0 ); + #endif + #include + reflectedLight.indirectDiffuse *= diffuseColor.rgb; + vec3 outgoingLight = reflectedLight.indirectDiffuse; + #include + #include + #include + #include + #include + #include + #include +}`,KX=`#define LAMBERT +varying vec3 vLightFront; +varying vec3 vIndirectFront; +#ifdef DOUBLE_SIDED + varying vec3 vLightBack; + varying vec3 vIndirectBack; +#endif +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include +}`,XX=`uniform vec3 diffuse; +uniform vec3 emissive; +uniform float opacity; +varying vec3 vLightFront; +varying vec3 vIndirectFront; +#ifdef DOUBLE_SIDED + varying vec3 vLightBack; + varying vec3 vIndirectBack; +#endif +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + vec4 diffuseColor = vec4( diffuse, opacity ); + ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) ); + vec3 totalEmissiveRadiance = emissive; + #include + #include + #include + #include + #include + #include + #include + #ifdef DOUBLE_SIDED + reflectedLight.indirectDiffuse += ( gl_FrontFacing ) ? vIndirectFront : vIndirectBack; + #else + reflectedLight.indirectDiffuse += vIndirectFront; + #endif + #include + reflectedLight.indirectDiffuse *= BRDF_Lambert( diffuseColor.rgb ); + #ifdef DOUBLE_SIDED + reflectedLight.directDiffuse = ( gl_FrontFacing ) ? vLightFront : vLightBack; + #else + reflectedLight.directDiffuse = vLightFront; + #endif + reflectedLight.directDiffuse *= BRDF_Lambert( diffuseColor.rgb ) * getShadowMask(); + #include + vec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance; + #include + #include + #include + #include + #include + #include + #include +}`,ZX=`#define MATCAP +varying vec3 vViewPosition; +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + vViewPosition = - mvPosition.xyz; +}`,JX=`#define MATCAP +uniform vec3 diffuse; +uniform float opacity; +uniform sampler2D matcap; +varying vec3 vViewPosition; +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + vec4 diffuseColor = vec4( diffuse, opacity ); + #include + #include + #include + #include + #include + #include + #include + vec3 viewDir = normalize( vViewPosition ); + vec3 x = normalize( vec3( viewDir.z, 0.0, - viewDir.x ) ); + vec3 y = cross( viewDir, x ); + vec2 uv = vec2( dot( x, normal ), dot( y, normal ) ) * 0.495 + 0.5; + #ifdef USE_MATCAP + vec4 matcapColor = texture2D( matcap, uv ); + #else + vec4 matcapColor = vec4( vec3( mix( 0.2, 0.8, uv.y ) ), 1.0 ); + #endif + vec3 outgoingLight = diffuseColor.rgb * matcapColor.rgb; + #include + #include + #include + #include + #include + #include +}`,QX=`#define NORMAL +#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( TANGENTSPACE_NORMALMAP ) + varying vec3 vViewPosition; +#endif +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include +#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( TANGENTSPACE_NORMALMAP ) + vViewPosition = - mvPosition.xyz; +#endif +}`,eZ=`#define NORMAL +uniform float opacity; +#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( TANGENTSPACE_NORMALMAP ) + varying vec3 vViewPosition; +#endif +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + #include + #include + #include + gl_FragColor = vec4( packNormalToRGB( normal ), opacity ); + #ifdef OPAQUE + gl_FragColor.a = 1.0; + #endif +}`,tZ=`#define PHONG +varying vec3 vViewPosition; +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + vViewPosition = - mvPosition.xyz; + #include + #include + #include + #include +}`,nZ=`#define PHONG +uniform vec3 diffuse; +uniform vec3 emissive; +uniform vec3 specular; +uniform float shininess; +uniform float opacity; +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + vec4 diffuseColor = vec4( diffuse, opacity ); + ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) ); + vec3 totalEmissiveRadiance = emissive; + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + vec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveRadiance; + #include + #include + #include + #include + #include + #include + #include +}`,sZ=`#define STANDARD +varying vec3 vViewPosition; +#ifdef USE_TRANSMISSION + varying vec3 vWorldPosition; +#endif +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + vViewPosition = - mvPosition.xyz; + #include + #include + #include +#ifdef USE_TRANSMISSION + vWorldPosition = worldPosition.xyz; +#endif +}`,iZ=`#define STANDARD +#ifdef PHYSICAL + #define IOR + #define SPECULAR +#endif +uniform vec3 diffuse; +uniform vec3 emissive; +uniform float roughness; +uniform float metalness; +uniform float opacity; +#ifdef IOR + uniform float ior; +#endif +#ifdef SPECULAR + uniform float specularIntensity; + uniform vec3 specularColor; + #ifdef USE_SPECULARINTENSITYMAP + uniform sampler2D specularIntensityMap; + #endif + #ifdef USE_SPECULARCOLORMAP + uniform sampler2D specularColorMap; + #endif +#endif +#ifdef USE_CLEARCOAT + uniform float clearcoat; + uniform float clearcoatRoughness; +#endif +#ifdef USE_IRIDESCENCE + uniform float iridescence; + uniform float iridescenceIOR; + uniform float iridescenceThicknessMinimum; + uniform float iridescenceThicknessMaximum; +#endif +#ifdef USE_SHEEN + uniform vec3 sheenColor; + uniform float sheenRoughness; + #ifdef USE_SHEENCOLORMAP + uniform sampler2D sheenColorMap; + #endif + #ifdef USE_SHEENROUGHNESSMAP + uniform sampler2D sheenRoughnessMap; + #endif +#endif +varying vec3 vViewPosition; +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + vec4 diffuseColor = vec4( diffuse, opacity ); + ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) ); + vec3 totalEmissiveRadiance = emissive; + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + vec3 totalDiffuse = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse; + vec3 totalSpecular = reflectedLight.directSpecular + reflectedLight.indirectSpecular; + #include + vec3 outgoingLight = totalDiffuse + totalSpecular + totalEmissiveRadiance; + #ifdef USE_SHEEN + float sheenEnergyComp = 1.0 - 0.157 * max3( material.sheenColor ); + outgoingLight = outgoingLight * sheenEnergyComp + sheenSpecular; + #endif + #ifdef USE_CLEARCOAT + float dotNVcc = saturate( dot( geometry.clearcoatNormal, geometry.viewDir ) ); + vec3 Fcc = F_Schlick( material.clearcoatF0, material.clearcoatF90, dotNVcc ); + outgoingLight = outgoingLight * ( 1.0 - material.clearcoat * Fcc ) + clearcoatSpecular * material.clearcoat; + #endif + #include + #include + #include + #include + #include + #include +}`,rZ=`#define TOON +varying vec3 vViewPosition; +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + vViewPosition = - mvPosition.xyz; + #include + #include + #include +}`,oZ=`#define TOON +uniform vec3 diffuse; +uniform vec3 emissive; +uniform float opacity; +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + vec4 diffuseColor = vec4( diffuse, opacity ); + ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) ); + vec3 totalEmissiveRadiance = emissive; + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + vec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance; + #include + #include + #include + #include + #include + #include +}`,aZ=`uniform float size; +uniform float scale; +#include +#include +#include +#include +#include +#include +void main() { + #include + #include + #include + #include + #include + gl_PointSize = size; + #ifdef USE_SIZEATTENUATION + bool isPerspective = isPerspectiveMatrix( projectionMatrix ); + if ( isPerspective ) gl_PointSize *= ( scale / - mvPosition.z ); + #endif + #include + #include + #include + #include +}`,lZ=`uniform vec3 diffuse; +uniform float opacity; +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + vec3 outgoingLight = vec3( 0.0 ); + vec4 diffuseColor = vec4( diffuse, opacity ); + #include + #include + #include + #include + outgoingLight = diffuseColor.rgb; + #include + #include + #include + #include + #include +}`,cZ=`#include +#include +#include +#include +#include +void main() { + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include +}`,uZ=`uniform vec3 color; +uniform float opacity; +#include +#include +#include +#include +#include +#include +#include +void main() { + gl_FragColor = vec4( color, opacity * ( 1.0 - getShadowMask() ) ); + #include + #include + #include +}`,dZ=`uniform float rotation; +uniform vec2 center; +#include +#include +#include +#include +#include +void main() { + #include + vec4 mvPosition = modelViewMatrix * vec4( 0.0, 0.0, 0.0, 1.0 ); + vec2 scale; + scale.x = length( vec3( modelMatrix[ 0 ].x, modelMatrix[ 0 ].y, modelMatrix[ 0 ].z ) ); + scale.y = length( vec3( modelMatrix[ 1 ].x, modelMatrix[ 1 ].y, modelMatrix[ 1 ].z ) ); + #ifndef USE_SIZEATTENUATION + bool isPerspective = isPerspectiveMatrix( projectionMatrix ); + if ( isPerspective ) scale *= - mvPosition.z; + #endif + vec2 alignedPosition = ( position.xy - ( center - vec2( 0.5 ) ) ) * scale; + vec2 rotatedPosition; + rotatedPosition.x = cos( rotation ) * alignedPosition.x - sin( rotation ) * alignedPosition.y; + rotatedPosition.y = sin( rotation ) * alignedPosition.x + cos( rotation ) * alignedPosition.y; + mvPosition.xy += rotatedPosition; + gl_Position = projectionMatrix * mvPosition; + #include + #include + #include +}`,fZ=`uniform vec3 diffuse; +uniform float opacity; +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + vec3 outgoingLight = vec3( 0.0 ); + vec4 diffuseColor = vec4( diffuse, opacity ); + #include + #include + #include + #include + outgoingLight = diffuseColor.rgb; + #include + #include + #include + #include +}`,yt={alphamap_fragment:$Y,alphamap_pars_fragment:UY,alphatest_fragment:BY,alphatest_pars_fragment:GY,aomap_fragment:zY,aomap_pars_fragment:HY,begin_vertex:VY,beginnormal_vertex:WY,bsdfs:jY,iridescence_fragment:qY,bumpmap_pars_fragment:YY,clipping_planes_fragment:KY,clipping_planes_pars_fragment:XY,clipping_planes_pars_vertex:ZY,clipping_planes_vertex:JY,color_fragment:QY,color_pars_fragment:eK,color_pars_vertex:tK,color_vertex:nK,common:sK,cube_uv_reflection_fragment:iK,defaultnormal_vertex:rK,displacementmap_pars_vertex:oK,displacementmap_vertex:aK,emissivemap_fragment:lK,emissivemap_pars_fragment:cK,encodings_fragment:uK,encodings_pars_fragment:dK,envmap_fragment:fK,envmap_common_pars_fragment:hK,envmap_pars_fragment:pK,envmap_pars_vertex:mK,envmap_physical_pars_fragment:AK,envmap_vertex:gK,fog_vertex:_K,fog_pars_vertex:bK,fog_fragment:yK,fog_pars_fragment:vK,gradientmap_pars_fragment:wK,lightmap_fragment:xK,lightmap_pars_fragment:SK,lights_lambert_vertex:EK,lights_pars_begin:TK,lights_toon_fragment:MK,lights_toon_pars_fragment:kK,lights_phong_fragment:RK,lights_phong_pars_fragment:CK,lights_physical_fragment:OK,lights_physical_pars_fragment:IK,lights_fragment_begin:LK,lights_fragment_maps:PK,lights_fragment_end:DK,logdepthbuf_fragment:FK,logdepthbuf_pars_fragment:NK,logdepthbuf_pars_vertex:$K,logdepthbuf_vertex:UK,map_fragment:BK,map_pars_fragment:GK,map_particle_fragment:zK,map_particle_pars_fragment:HK,metalnessmap_fragment:VK,metalnessmap_pars_fragment:WK,morphcolor_vertex:jK,morphnormal_vertex:qK,morphtarget_pars_vertex:YK,morphtarget_vertex:KK,normal_fragment_begin:XK,normal_fragment_maps:ZK,normal_pars_fragment:JK,normal_pars_vertex:QK,normal_vertex:eX,normalmap_pars_fragment:tX,clearcoat_normal_fragment_begin:nX,clearcoat_normal_fragment_maps:sX,clearcoat_pars_fragment:iX,iridescence_pars_fragment:rX,output_fragment:oX,packing:aX,premultiplied_alpha_fragment:lX,project_vertex:cX,dithering_fragment:uX,dithering_pars_fragment:dX,roughnessmap_fragment:fX,roughnessmap_pars_fragment:hX,shadowmap_pars_fragment:pX,shadowmap_pars_vertex:mX,shadowmap_vertex:gX,shadowmask_pars_fragment:_X,skinbase_vertex:bX,skinning_pars_vertex:yX,skinning_vertex:vX,skinnormal_vertex:wX,specularmap_fragment:xX,specularmap_pars_fragment:SX,tonemapping_fragment:EX,tonemapping_pars_fragment:TX,transmission_fragment:AX,transmission_pars_fragment:MX,uv_pars_fragment:kX,uv_pars_vertex:RX,uv_vertex:CX,uv2_pars_fragment:OX,uv2_pars_vertex:IX,uv2_vertex:LX,worldpos_vertex:PX,background_vert:DX,background_frag:FX,cube_vert:NX,cube_frag:$X,depth_vert:UX,depth_frag:BX,distanceRGBA_vert:GX,distanceRGBA_frag:zX,equirect_vert:HX,equirect_frag:VX,linedashed_vert:WX,linedashed_frag:jX,meshbasic_vert:qX,meshbasic_frag:YX,meshlambert_vert:KX,meshlambert_frag:XX,meshmatcap_vert:ZX,meshmatcap_frag:JX,meshnormal_vert:QX,meshnormal_frag:eZ,meshphong_vert:tZ,meshphong_frag:nZ,meshphysical_vert:sZ,meshphysical_frag:iZ,meshtoon_vert:rZ,meshtoon_frag:oZ,points_vert:aZ,points_frag:lZ,shadow_vert:cZ,shadow_frag:uZ,sprite_vert:dZ,sprite_frag:fZ},Ne={common:{diffuse:{value:new at(16777215)},opacity:{value:1},map:{value:null},uvTransform:{value:new fi},uv2Transform:{value:new fi},alphaMap:{value:null},alphaTest:{value:0}},specularmap:{specularMap:{value:null}},envmap:{envMap:{value:null},flipEnvMap:{value:-1},reflectivity:{value:1},ior:{value:1.5},refractionRatio:{value:.98}},aomap:{aoMap:{value:null},aoMapIntensity:{value:1}},lightmap:{lightMap:{value:null},lightMapIntensity:{value:1}},emissivemap:{emissiveMap:{value:null}},bumpmap:{bumpMap:{value:null},bumpScale:{value:1}},normalmap:{normalMap:{value:null},normalScale:{value:new Et(1,1)}},displacementmap:{displacementMap:{value:null},displacementScale:{value:1},displacementBias:{value:0}},roughnessmap:{roughnessMap:{value:null}},metalnessmap:{metalnessMap:{value:null}},gradientmap:{gradientMap:{value:null}},fog:{fogDensity:{value:25e-5},fogNear:{value:1},fogFar:{value:2e3},fogColor:{value:new at(16777215)}},lights:{ambientLightColor:{value:[]},lightProbe:{value:[]},directionalLights:{value:[],properties:{direction:{},color:{}}},directionalLightShadows:{value:[],properties:{shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},directionalShadowMap:{value:[]},directionalShadowMatrix:{value:[]},spotLights:{value:[],properties:{color:{},position:{},direction:{},distance:{},coneCos:{},penumbraCos:{},decay:{}}},spotLightShadows:{value:[],properties:{shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},spotShadowMap:{value:[]},spotShadowMatrix:{value:[]},pointLights:{value:[],properties:{color:{},position:{},decay:{},distance:{}}},pointLightShadows:{value:[],properties:{shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{},shadowCameraNear:{},shadowCameraFar:{}}},pointShadowMap:{value:[]},pointShadowMatrix:{value:[]},hemisphereLights:{value:[],properties:{direction:{},skyColor:{},groundColor:{}}},rectAreaLights:{value:[],properties:{color:{},position:{},width:{},height:{}}},ltc_1:{value:null},ltc_2:{value:null}},points:{diffuse:{value:new at(16777215)},opacity:{value:1},size:{value:1},scale:{value:1},map:{value:null},alphaMap:{value:null},alphaTest:{value:0},uvTransform:{value:new fi}},sprite:{diffuse:{value:new at(16777215)},opacity:{value:1},center:{value:new Et(.5,.5)},rotation:{value:0},map:{value:null},alphaMap:{value:null},alphaTest:{value:0},uvTransform:{value:new fi}}},hr={basic:{uniforms:ts([Ne.common,Ne.specularmap,Ne.envmap,Ne.aomap,Ne.lightmap,Ne.fog]),vertexShader:yt.meshbasic_vert,fragmentShader:yt.meshbasic_frag},lambert:{uniforms:ts([Ne.common,Ne.specularmap,Ne.envmap,Ne.aomap,Ne.lightmap,Ne.emissivemap,Ne.fog,Ne.lights,{emissive:{value:new at(0)}}]),vertexShader:yt.meshlambert_vert,fragmentShader:yt.meshlambert_frag},phong:{uniforms:ts([Ne.common,Ne.specularmap,Ne.envmap,Ne.aomap,Ne.lightmap,Ne.emissivemap,Ne.bumpmap,Ne.normalmap,Ne.displacementmap,Ne.fog,Ne.lights,{emissive:{value:new at(0)},specular:{value:new at(1118481)},shininess:{value:30}}]),vertexShader:yt.meshphong_vert,fragmentShader:yt.meshphong_frag},standard:{uniforms:ts([Ne.common,Ne.envmap,Ne.aomap,Ne.lightmap,Ne.emissivemap,Ne.bumpmap,Ne.normalmap,Ne.displacementmap,Ne.roughnessmap,Ne.metalnessmap,Ne.fog,Ne.lights,{emissive:{value:new at(0)},roughness:{value:1},metalness:{value:0},envMapIntensity:{value:1}}]),vertexShader:yt.meshphysical_vert,fragmentShader:yt.meshphysical_frag},toon:{uniforms:ts([Ne.common,Ne.aomap,Ne.lightmap,Ne.emissivemap,Ne.bumpmap,Ne.normalmap,Ne.displacementmap,Ne.gradientmap,Ne.fog,Ne.lights,{emissive:{value:new at(0)}}]),vertexShader:yt.meshtoon_vert,fragmentShader:yt.meshtoon_frag},matcap:{uniforms:ts([Ne.common,Ne.bumpmap,Ne.normalmap,Ne.displacementmap,Ne.fog,{matcap:{value:null}}]),vertexShader:yt.meshmatcap_vert,fragmentShader:yt.meshmatcap_frag},points:{uniforms:ts([Ne.points,Ne.fog]),vertexShader:yt.points_vert,fragmentShader:yt.points_frag},dashed:{uniforms:ts([Ne.common,Ne.fog,{scale:{value:1},dashSize:{value:1},totalSize:{value:2}}]),vertexShader:yt.linedashed_vert,fragmentShader:yt.linedashed_frag},depth:{uniforms:ts([Ne.common,Ne.displacementmap]),vertexShader:yt.depth_vert,fragmentShader:yt.depth_frag},normal:{uniforms:ts([Ne.common,Ne.bumpmap,Ne.normalmap,Ne.displacementmap,{opacity:{value:1}}]),vertexShader:yt.meshnormal_vert,fragmentShader:yt.meshnormal_frag},sprite:{uniforms:ts([Ne.sprite,Ne.fog]),vertexShader:yt.sprite_vert,fragmentShader:yt.sprite_frag},background:{uniforms:{uvTransform:{value:new fi},t2D:{value:null}},vertexShader:yt.background_vert,fragmentShader:yt.background_frag},cube:{uniforms:ts([Ne.envmap,{opacity:{value:1}}]),vertexShader:yt.cube_vert,fragmentShader:yt.cube_frag},equirect:{uniforms:{tEquirect:{value:null}},vertexShader:yt.equirect_vert,fragmentShader:yt.equirect_frag},distanceRGBA:{uniforms:ts([Ne.common,Ne.displacementmap,{referencePosition:{value:new ee},nearDistance:{value:1},farDistance:{value:1e3}}]),vertexShader:yt.distanceRGBA_vert,fragmentShader:yt.distanceRGBA_frag},shadow:{uniforms:ts([Ne.lights,Ne.fog,{color:{value:new at(0)},opacity:{value:1}}]),vertexShader:yt.shadow_vert,fragmentShader:yt.shadow_frag}};hr.physical={uniforms:ts([hr.standard.uniforms,{clearcoat:{value:0},clearcoatMap:{value:null},clearcoatRoughness:{value:0},clearcoatRoughnessMap:{value:null},clearcoatNormalScale:{value:new Et(1,1)},clearcoatNormalMap:{value:null},iridescence:{value:0},iridescenceMap:{value:null},iridescenceIOR:{value:1.3},iridescenceThicknessMinimum:{value:100},iridescenceThicknessMaximum:{value:400},iridescenceThicknessMap:{value:null},sheen:{value:0},sheenColor:{value:new at(0)},sheenColorMap:{value:null},sheenRoughness:{value:1},sheenRoughnessMap:{value:null},transmission:{value:0},transmissionMap:{value:null},transmissionSamplerSize:{value:new Et},transmissionSamplerMap:{value:null},thickness:{value:0},thicknessMap:{value:null},attenuationDistance:{value:0},attenuationColor:{value:new at(0)},specularIntensity:{value:1},specularIntensityMap:{value:null},specularColor:{value:new at(1,1,1)},specularColorMap:{value:null}}]),vertexShader:yt.meshphysical_vert,fragmentShader:yt.meshphysical_frag};function hZ(t,e,n,s,i,r){const o=new at(0);let a=i===!0?0:1,l,c,u=null,d=0,f=null;function h(p,m){let b=!1,y=m.isScene===!0?m.background:null;y&&y.isTexture&&(y=e.get(y));const v=t.xr,x=v.getSession&&v.getSession();x&&x.environmentBlendMode==="additive"&&(y=null),y===null?_(o,a):y&&y.isColor&&(_(y,1),b=!0),(t.autoClear||b)&&t.clear(t.autoClearColor,t.autoClearDepth,t.autoClearStencil),y&&(y.isCubeTexture||y.mapping===G_)?(c===void 0&&(c=new Bi(new pd(1,1,1),new Gl({name:"BackgroundCubeMaterial",uniforms:Bu(hr.cube.uniforms),vertexShader:hr.cube.vertexShader,fragmentShader:hr.cube.fragmentShader,side:Hi,depthTest:!1,depthWrite:!1,fog:!1})),c.geometry.deleteAttribute("normal"),c.geometry.deleteAttribute("uv"),c.onBeforeRender=function(S,w,T){this.matrixWorld.copyPosition(T.matrixWorld)},Object.defineProperty(c.material,"envMap",{get:function(){return this.uniforms.envMap.value}}),s.update(c)),c.material.uniforms.envMap.value=y,c.material.uniforms.flipEnvMap.value=y.isCubeTexture&&y.isRenderTargetTexture===!1?-1:1,(u!==y||d!==y.version||f!==t.toneMapping)&&(c.material.needsUpdate=!0,u=y,d=y.version,f=t.toneMapping),c.layers.enableAll(),p.unshift(c,c.geometry,c.material,0,0,null)):y&&y.isTexture&&(l===void 0&&(l=new Bi(new Bw(2,2),new Gl({name:"BackgroundMaterial",uniforms:Bu(hr.background.uniforms),vertexShader:hr.background.vertexShader,fragmentShader:hr.background.fragmentShader,side:Pu,depthTest:!1,depthWrite:!1,fog:!1})),l.geometry.deleteAttribute("normal"),Object.defineProperty(l.material,"map",{get:function(){return this.uniforms.t2D.value}}),s.update(l)),l.material.uniforms.t2D.value=y,y.matrixAutoUpdate===!0&&y.updateMatrix(),l.material.uniforms.uvTransform.value.copy(y.matrix),(u!==y||d!==y.version||f!==t.toneMapping)&&(l.material.needsUpdate=!0,u=y,d=y.version,f=t.toneMapping),l.layers.enableAll(),p.unshift(l,l.geometry,l.material,0,0,null))}function _(p,m){n.buffers.color.setClear(p.r,p.g,p.b,m,r)}return{getClearColor:function(){return o},setClearColor:function(p,m=1){o.set(p),a=m,_(o,a)},getClearAlpha:function(){return a},setClearAlpha:function(p){a=p,_(o,a)},render:h}}function pZ(t,e,n,s){const i=t.getParameter(34921),r=s.isWebGL2?null:e.get("OES_vertex_array_object"),o=s.isWebGL2||r!==null,a={},l=m(null);let c=l,u=!1;function d(D,$,F,H,j){let Z=!1;if(o){const K=p(H,F,$);c!==K&&(c=K,h(c.object)),Z=b(D,H,F,j),Z&&y(D,H,F,j)}else{const K=$.wireframe===!0;(c.geometry!==H.id||c.program!==F.id||c.wireframe!==K)&&(c.geometry=H.id,c.program=F.id,c.wireframe=K,Z=!0)}j!==null&&n.update(j,34963),(Z||u)&&(u=!1,E(D,$,F,H),j!==null&&t.bindBuffer(34963,n.get(j).buffer))}function f(){return s.isWebGL2?t.createVertexArray():r.createVertexArrayOES()}function h(D){return s.isWebGL2?t.bindVertexArray(D):r.bindVertexArrayOES(D)}function _(D){return s.isWebGL2?t.deleteVertexArray(D):r.deleteVertexArrayOES(D)}function p(D,$,F){const H=F.wireframe===!0;let j=a[D.id];j===void 0&&(j={},a[D.id]=j);let Z=j[$.id];Z===void 0&&(Z={},j[$.id]=Z);let K=Z[H];return K===void 0&&(K=m(f()),Z[H]=K),K}function m(D){const $=[],F=[],H=[];for(let j=0;j=0){const Me=j[Q];let Pe=Z[Q];if(Pe===void 0&&(Q==="instanceMatrix"&&D.instanceMatrix&&(Pe=D.instanceMatrix),Q==="instanceColor"&&D.instanceColor&&(Pe=D.instanceColor)),Me===void 0||Me.attribute!==Pe||Pe&&Me.data!==Pe.data)return!0;K++}return c.attributesNum!==K||c.index!==H}function y(D,$,F,H){const j={},Z=$.attributes;let K=0;const oe=F.getAttributes();for(const Q in oe)if(oe[Q].location>=0){let Me=Z[Q];Me===void 0&&(Q==="instanceMatrix"&&D.instanceMatrix&&(Me=D.instanceMatrix),Q==="instanceColor"&&D.instanceColor&&(Me=D.instanceColor));const Pe={};Pe.attribute=Me,Me&&Me.data&&(Pe.data=Me.data),j[Q]=Pe,K++}c.attributes=j,c.attributesNum=K,c.index=H}function v(){const D=c.newAttributes;for(let $=0,F=D.length;$=0){let me=j[oe];if(me===void 0&&(oe==="instanceMatrix"&&D.instanceMatrix&&(me=D.instanceMatrix),oe==="instanceColor"&&D.instanceColor&&(me=D.instanceColor)),me!==void 0){const Me=me.normalized,Pe=me.itemSize,ie=n.get(me);if(ie===void 0)continue;const de=ie.buffer,Se=ie.type,we=ie.bytesPerElement;if(me.isInterleavedBufferAttribute){const ge=me.data,He=ge.stride,Be=me.offset;if(ge.isInstancedInterleavedBuffer){for(let P=0;P0&&t.getShaderPrecisionFormat(35632,36338).precision>0)return"highp";T="mediump"}return T==="mediump"&&t.getShaderPrecisionFormat(35633,36337).precision>0&&t.getShaderPrecisionFormat(35632,36337).precision>0?"mediump":"lowp"}const o=typeof WebGL2RenderingContext<"u"&&t instanceof WebGL2RenderingContext||typeof WebGL2ComputeRenderingContext<"u"&&t instanceof WebGL2ComputeRenderingContext;let a=n.precision!==void 0?n.precision:"highp";const l=r(a);l!==a&&(console.warn("THREE.WebGLRenderer:",a,"not supported, using",l,"instead."),a=l);const c=o||e.has("WEBGL_draw_buffers"),u=n.logarithmicDepthBuffer===!0,d=t.getParameter(34930),f=t.getParameter(35660),h=t.getParameter(3379),_=t.getParameter(34076),p=t.getParameter(34921),m=t.getParameter(36347),b=t.getParameter(36348),y=t.getParameter(36349),v=f>0,x=o||e.has("OES_texture_float"),S=v&&x,w=o?t.getParameter(36183):0;return{isWebGL2:o,drawBuffers:c,getMaxAnisotropy:i,getMaxPrecision:r,precision:a,logarithmicDepthBuffer:u,maxTextures:d,maxVertexTextures:f,maxTextureSize:h,maxCubemapSize:_,maxAttributes:p,maxVertexUniforms:m,maxVaryings:b,maxFragmentUniforms:y,vertexTextures:v,floatFragmentTextures:x,floatVertexTextures:S,maxSamples:w}}function _Z(t){const e=this;let n=null,s=0,i=!1,r=!1;const o=new Za,a=new fi,l={value:null,needsUpdate:!1};this.uniform=l,this.numPlanes=0,this.numIntersection=0,this.init=function(d,f,h){const _=d.length!==0||f||s!==0||i;return i=f,n=u(d,h,0),s=d.length,_},this.beginShadows=function(){r=!0,u(null)},this.endShadows=function(){r=!1,c()},this.setState=function(d,f,h){const _=d.clippingPlanes,p=d.clipIntersection,m=d.clipShadows,b=t.get(d);if(!i||_===null||_.length===0||r&&!m)r?u(null):c();else{const y=r?0:s,v=y*4;let x=b.clippingState||null;l.value=x,x=u(_,f,v,h);for(let S=0;S!==v;++S)x[S]=n[S];b.clippingState=x,this.numIntersection=p?this.numPlanes:0,this.numPlanes+=y}};function c(){l.value!==n&&(l.value=n,l.needsUpdate=s>0),e.numPlanes=s,e.numIntersection=0}function u(d,f,h,_){const p=d!==null?d.length:0;let m=null;if(p!==0){if(m=l.value,_!==!0||m===null){const b=h+p*4,y=f.matrixWorldInverse;a.getNormalMatrix(y),(m===null||m.length0){const c=new PY(l.height/2);return c.fromEquirectangularTexture(t,o),e.set(o,c),o.addEventListener("dispose",i),n(c.texture,o.mapping)}else return null}}return o}function i(o){const a=o.target;a.removeEventListener("dispose",i);const l=e.get(a);l!==void 0&&(e.delete(a),l.dispose())}function r(){e=new WeakMap}return{get:s,dispose:r}}class Gw extends Q8{constructor(e=-1,n=1,s=1,i=-1,r=.1,o=2e3){super(),this.isOrthographicCamera=!0,this.type="OrthographicCamera",this.zoom=1,this.view=null,this.left=e,this.right=n,this.top=s,this.bottom=i,this.near=r,this.far=o,this.updateProjectionMatrix()}copy(e,n){return super.copy(e,n),this.left=e.left,this.right=e.right,this.top=e.top,this.bottom=e.bottom,this.near=e.near,this.far=e.far,this.zoom=e.zoom,this.view=e.view===null?null:Object.assign({},e.view),this}setViewOffset(e,n,s,i,r,o){this.view===null&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=e,this.view.fullHeight=n,this.view.offsetX=s,this.view.offsetY=i,this.view.width=r,this.view.height=o,this.updateProjectionMatrix()}clearViewOffset(){this.view!==null&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){const e=(this.right-this.left)/(2*this.zoom),n=(this.top-this.bottom)/(2*this.zoom),s=(this.right+this.left)/2,i=(this.top+this.bottom)/2;let r=s-e,o=s+e,a=i+n,l=i-n;if(this.view!==null&&this.view.enabled){const c=(this.right-this.left)/this.view.fullWidth/this.zoom,u=(this.top-this.bottom)/this.view.fullHeight/this.zoom;r+=c*this.view.offsetX,o=r+c*this.view.width,a-=u*this.view.offsetY,l=a-u*this.view.height}this.projectionMatrix.makeOrthographic(r,o,a,l,this.near,this.far),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(e){const n=super.toJSON(e);return n.object.zoom=this.zoom,n.object.left=this.left,n.object.right=this.right,n.object.top=this.top,n.object.bottom=this.bottom,n.object.near=this.near,n.object.far=this.far,this.view!==null&&(n.object.view=Object.assign({},this.view)),n}}const qc=4,zE=[.125,.215,.35,.446,.526,.582],ol=20,M1=new Gw,HE=new at;let k1=null;const Ja=(1+Math.sqrt(5))/2,kc=1/Ja,VE=[new ee(1,1,1),new ee(-1,1,1),new ee(1,1,-1),new ee(-1,1,-1),new ee(0,Ja,kc),new ee(0,Ja,-kc),new ee(kc,0,Ja),new ee(-kc,0,Ja),new ee(Ja,kc,0),new ee(-Ja,kc,0)];class WE{constructor(e){this._renderer=e,this._pingPongRenderTarget=null,this._lodMax=0,this._cubeSize=0,this._lodPlanes=[],this._sizeLods=[],this._sigmas=[],this._blurMaterial=null,this._cubemapMaterial=null,this._equirectMaterial=null,this._compileMaterial(this._blurMaterial)}fromScene(e,n=0,s=.1,i=100){k1=this._renderer.getRenderTarget(),this._setSize(256);const r=this._allocateTargets();return r.depthBuffer=!0,this._sceneToCubeUV(e,s,i,r),n>0&&this._blur(r,0,0,n),this._applyPMREM(r),this._cleanup(r),r}fromEquirectangular(e,n=null){return this._fromTexture(e,n)}fromCubemap(e,n=null){return this._fromTexture(e,n)}compileCubemapShader(){this._cubemapMaterial===null&&(this._cubemapMaterial=YE(),this._compileMaterial(this._cubemapMaterial))}compileEquirectangularShader(){this._equirectMaterial===null&&(this._equirectMaterial=qE(),this._compileMaterial(this._equirectMaterial))}dispose(){this._dispose(),this._cubemapMaterial!==null&&this._cubemapMaterial.dispose(),this._equirectMaterial!==null&&this._equirectMaterial.dispose()}_setSize(e){this._lodMax=Math.floor(Math.log2(e)),this._cubeSize=Math.pow(2,this._lodMax)}_dispose(){this._blurMaterial!==null&&this._blurMaterial.dispose(),this._pingPongRenderTarget!==null&&this._pingPongRenderTarget.dispose();for(let e=0;e2?v:0,v,v),u.setRenderTarget(i),p&&u.render(_,a),u.render(e,a)}_.geometry.dispose(),_.material.dispose(),u.toneMapping=f,u.autoClear=d,e.background=m}_textureToCubeUV(e,n){const s=this._renderer,i=e.mapping===Du||e.mapping===Fu;i?(this._cubemapMaterial===null&&(this._cubemapMaterial=YE()),this._cubemapMaterial.uniforms.flipEnvMap.value=e.isRenderTargetTexture===!1?-1:1):this._equirectMaterial===null&&(this._equirectMaterial=qE());const r=i?this._cubemapMaterial:this._equirectMaterial,o=new Bi(this._lodPlanes[0],r),a=r.uniforms;a.envMap.value=e;const l=this._cubeSize;Dp(n,0,0,3*l,2*l),s.setRenderTarget(n),s.render(o,M1)}_applyPMREM(e){const n=this._renderer,s=n.autoClear;n.autoClear=!1;for(let i=1;iol&&console.warn(`sigmaRadians, ${r}, is too large and will clip, as it requested ${m} samples when the maximum is set to ${ol}`);const b=[];let y=0;for(let T=0;Tv-qc?i-v+qc:0),w=4*(this._cubeSize-x);Dp(n,S,w,3*x,2*x),l.setRenderTarget(n),l.render(d,M1)}}function yZ(t){const e=[],n=[],s=[];let i=t;const r=t-qc+1+zE.length;for(let o=0;ot-qc?l=zE[o-t+qc-1]:o===0&&(l=0),s.push(l);const c=1/(a-2),u=-c,d=1+c,f=[u,u,d,u,d,d,u,u,d,d,u,d],h=6,_=6,p=3,m=2,b=1,y=new Float32Array(p*_*h),v=new Float32Array(m*_*h),x=new Float32Array(b*_*h);for(let w=0;w2?0:-1,A=[T,E,0,T+2/3,E,0,T+2/3,E+1,0,T,E,0,T+2/3,E+1,0,T,E+1,0];y.set(A,p*_*w),v.set(f,m*_*w);const O=[w,w,w,w,w,w];x.set(O,b*_*w)}const S=new Or;S.setAttribute("position",new Ys(y,p)),S.setAttribute("uv",new Ys(v,m)),S.setAttribute("faceIndex",new Ys(x,b)),e.push(S),i>qc&&i--}return{lodPlanes:e,sizeLods:n,sigmas:s}}function jE(t,e,n){const s=new Bl(t,e,n);return s.texture.mapping=G_,s.texture.name="PMREM.cubeUv",s.scissorTest=!0,s}function Dp(t,e,n,s,i){t.viewport.set(e,n,s,i),t.scissor.set(e,n,s,i)}function vZ(t,e,n){const s=new Float32Array(ol),i=new ee(0,1,0);return new Gl({name:"SphericalGaussianBlur",defines:{n:ol,CUBEUV_TEXEL_WIDTH:1/e,CUBEUV_TEXEL_HEIGHT:1/n,CUBEUV_MAX_MIP:`${t}.0`},uniforms:{envMap:{value:null},samples:{value:1},weights:{value:s},latitudinal:{value:!1},dTheta:{value:0},mipInt:{value:0},poleAxis:{value:i}},vertexShader:zw(),fragmentShader:` + + precision mediump float; + precision mediump int; + + varying vec3 vOutputDirection; + + uniform sampler2D envMap; + uniform int samples; + uniform float weights[ n ]; + uniform bool latitudinal; + uniform float dTheta; + uniform float mipInt; + uniform vec3 poleAxis; + + #define ENVMAP_TYPE_CUBE_UV + #include + + vec3 getSample( float theta, vec3 axis ) { + + float cosTheta = cos( theta ); + // Rodrigues' axis-angle rotation + vec3 sampleDirection = vOutputDirection * cosTheta + + cross( axis, vOutputDirection ) * sin( theta ) + + axis * dot( axis, vOutputDirection ) * ( 1.0 - cosTheta ); + + return bilinearCubeUV( envMap, sampleDirection, mipInt ); + + } + + void main() { + + vec3 axis = latitudinal ? poleAxis : cross( poleAxis, vOutputDirection ); + + if ( all( equal( axis, vec3( 0.0 ) ) ) ) { + + axis = vec3( vOutputDirection.z, 0.0, - vOutputDirection.x ); + + } + + axis = normalize( axis ); + + gl_FragColor = vec4( 0.0, 0.0, 0.0, 1.0 ); + gl_FragColor.rgb += weights[ 0 ] * getSample( 0.0, axis ); + + for ( int i = 1; i < n; i++ ) { + + if ( i >= samples ) { + + break; + + } + + float theta = dTheta * float( i ); + gl_FragColor.rgb += weights[ i ] * getSample( -1.0 * theta, axis ); + gl_FragColor.rgb += weights[ i ] * getSample( theta, axis ); + + } + + } + `,blending:xa,depthTest:!1,depthWrite:!1})}function qE(){return new Gl({name:"EquirectangularToCubeUV",uniforms:{envMap:{value:null}},vertexShader:zw(),fragmentShader:` + + precision mediump float; + precision mediump int; + + varying vec3 vOutputDirection; + + uniform sampler2D envMap; + + #include + + void main() { + + vec3 outputDirection = normalize( vOutputDirection ); + vec2 uv = equirectUv( outputDirection ); + + gl_FragColor = vec4( texture2D ( envMap, uv ).rgb, 1.0 ); + + } + `,blending:xa,depthTest:!1,depthWrite:!1})}function YE(){return new Gl({name:"CubemapToCubeUV",uniforms:{envMap:{value:null},flipEnvMap:{value:-1}},vertexShader:zw(),fragmentShader:` + + precision mediump float; + precision mediump int; + + uniform float flipEnvMap; + + varying vec3 vOutputDirection; + + uniform samplerCube envMap; + + void main() { + + gl_FragColor = textureCube( envMap, vec3( flipEnvMap * vOutputDirection.x, vOutputDirection.yz ) ); + + } + `,blending:xa,depthTest:!1,depthWrite:!1})}function zw(){return` + + precision mediump float; + precision mediump int; + + attribute float faceIndex; + + varying vec3 vOutputDirection; + + // RH coordinate system; PMREM face-indexing convention + vec3 getDirection( vec2 uv, float face ) { + + uv = 2.0 * uv - 1.0; + + vec3 direction = vec3( uv, 1.0 ); + + if ( face == 0.0 ) { + + direction = direction.zyx; // ( 1, v, u ) pos x + + } else if ( face == 1.0 ) { + + direction = direction.xzy; + direction.xz *= -1.0; // ( -u, 1, -v ) pos y + + } else if ( face == 2.0 ) { + + direction.x *= -1.0; // ( -u, v, 1 ) pos z + + } else if ( face == 3.0 ) { + + direction = direction.zyx; + direction.xz *= -1.0; // ( -1, v, -u ) neg x + + } else if ( face == 4.0 ) { + + direction = direction.xzy; + direction.xy *= -1.0; // ( -u, -1, v ) neg y + + } else if ( face == 5.0 ) { + + direction.z *= -1.0; // ( u, v, -1 ) neg z + + } + + return direction; + + } + + void main() { + + vOutputDirection = getDirection( uv, faceIndex ); + gl_Position = vec4( position, 1.0 ); + + } + `}function wZ(t){let e=new WeakMap,n=null;function s(a){if(a&&a.isTexture){const l=a.mapping,c=l===ty||l===ny,u=l===Du||l===Fu;if(c||u)if(a.isRenderTargetTexture&&a.needsPMREMUpdate===!0){a.needsPMREMUpdate=!1;let d=e.get(a);return n===null&&(n=new WE(t)),d=c?n.fromEquirectangular(a,d):n.fromCubemap(a,d),e.set(a,d),d.texture}else{if(e.has(a))return e.get(a).texture;{const d=a.image;if(c&&d&&d.height>0||u&&d&&i(d)){n===null&&(n=new WE(t));const f=c?n.fromEquirectangular(a):n.fromCubemap(a);return e.set(a,f),a.addEventListener("dispose",r),f.texture}else return null}}}return a}function i(a){let l=0;const c=6;for(let u=0;ue.maxTextureSize&&(I=Math.ceil(O/e.maxTextureSize),O=e.maxTextureSize);const B=new Float32Array(O*I*4*p),U=new K8(B,O,I,p);U.type=da,U.needsUpdate=!0;const D=A*4;for(let F=0;F0)return t;const i=e*n;let r=KE[i];if(r===void 0&&(r=new Float32Array(i),KE[i]=r),e!==0){s.toArray(r,0);for(let o=1,a=0;o!==e;++o)a+=n,t[o].toArray(r,a)}return r}function xs(t,e){if(t.length!==e.length)return!1;for(let n=0,s=t.length;n":" "} ${a}: ${n[o]}`)}return s.join(` +`)}function xJ(t){switch(t){case Ul:return["Linear","( value )"];case Ut:return["sRGB","( value )"];default:return console.warn("THREE.WebGLProgram: Unsupported encoding:",t),["Linear","( value )"]}}function n3(t,e,n){const s=t.getShaderParameter(e,35713),i=t.getShaderInfoLog(e).trim();if(s&&i==="")return"";const r=/ERROR: 0:(\d+)/.exec(i);if(r){const o=parseInt(r[1]);return n.toUpperCase()+` + +`+i+` + +`+wJ(t.getShaderSource(e),o)}else return i}function SJ(t,e){const n=xJ(e);return"vec4 "+t+"( vec4 value ) { return LinearTo"+n[0]+n[1]+"; }"}function EJ(t,e){let n;switch(e){case Rq:n="Linear";break;case Cq:n="Reinhard";break;case Oq:n="OptimizedCineon";break;case Iq:n="ACESFilmic";break;case Lq:n="Custom";break;default:console.warn("THREE.WebGLProgram: Unsupported toneMapping:",e),n="Linear"}return"vec3 "+t+"( vec3 color ) { return "+n+"ToneMapping( color ); }"}function TJ(t){return[t.extensionDerivatives||t.envMapCubeUVHeight||t.bumpMap||t.tangentSpaceNormalMap||t.clearcoatNormalMap||t.flatShading||t.shaderID==="physical"?"#extension GL_OES_standard_derivatives : enable":"",(t.extensionFragDepth||t.logarithmicDepthBuffer)&&t.rendererExtensionFragDepth?"#extension GL_EXT_frag_depth : enable":"",t.extensionDrawBuffers&&t.rendererExtensionDrawBuffers?"#extension GL_EXT_draw_buffers : require":"",(t.extensionShaderTextureLOD||t.envMap||t.transmission)&&t.rendererExtensionShaderTextureLod?"#extension GL_EXT_shader_texture_lod : enable":""].filter(of).join(` +`)}function AJ(t){const e=[];for(const n in t){const s=t[n];s!==!1&&e.push("#define "+n+" "+s)}return e.join(` +`)}function MJ(t,e){const n={},s=t.getProgramParameter(e,35721);for(let i=0;i/gm;function ly(t){return t.replace(kJ,RJ)}function RJ(t,e){const n=yt[e];if(n===void 0)throw new Error("Can not resolve #include <"+e+">");return ly(n)}const CJ=/#pragma unroll_loop[\s]+?for \( int i \= (\d+)\; i < (\d+)\; i \+\+ \) \{([\s\S]+?)(?=\})\}/g,OJ=/#pragma unroll_loop_start\s+for\s*\(\s*int\s+i\s*=\s*(\d+)\s*;\s*i\s*<\s*(\d+)\s*;\s*i\s*\+\+\s*\)\s*{([\s\S]+?)}\s+#pragma unroll_loop_end/g;function r3(t){return t.replace(OJ,oR).replace(CJ,IJ)}function IJ(t,e,n,s){return console.warn("WebGLProgram: #pragma unroll_loop shader syntax is deprecated. Please use #pragma unroll_loop_start syntax instead."),oR(t,e,n,s)}function oR(t,e,n,s){let i="";for(let r=parseInt(e);r0&&(m+=` +`),b=[h,_].filter(of).join(` +`),b.length>0&&(b+=` +`)):(m=[o3(n),"#define SHADER_NAME "+n.shaderName,_,n.instancing?"#define USE_INSTANCING":"",n.instancingColor?"#define USE_INSTANCING_COLOR":"",n.supportsVertexTextures?"#define VERTEX_TEXTURES":"",n.useFog&&n.fog?"#define USE_FOG":"",n.useFog&&n.fogExp2?"#define FOG_EXP2":"",n.map?"#define USE_MAP":"",n.envMap?"#define USE_ENVMAP":"",n.envMap?"#define "+u:"",n.lightMap?"#define USE_LIGHTMAP":"",n.aoMap?"#define USE_AOMAP":"",n.emissiveMap?"#define USE_EMISSIVEMAP":"",n.bumpMap?"#define USE_BUMPMAP":"",n.normalMap?"#define USE_NORMALMAP":"",n.normalMap&&n.objectSpaceNormalMap?"#define OBJECTSPACE_NORMALMAP":"",n.normalMap&&n.tangentSpaceNormalMap?"#define TANGENTSPACE_NORMALMAP":"",n.clearcoatMap?"#define USE_CLEARCOATMAP":"",n.clearcoatRoughnessMap?"#define USE_CLEARCOAT_ROUGHNESSMAP":"",n.clearcoatNormalMap?"#define USE_CLEARCOAT_NORMALMAP":"",n.iridescenceMap?"#define USE_IRIDESCENCEMAP":"",n.iridescenceThicknessMap?"#define USE_IRIDESCENCE_THICKNESSMAP":"",n.displacementMap&&n.supportsVertexTextures?"#define USE_DISPLACEMENTMAP":"",n.specularMap?"#define USE_SPECULARMAP":"",n.specularIntensityMap?"#define USE_SPECULARINTENSITYMAP":"",n.specularColorMap?"#define USE_SPECULARCOLORMAP":"",n.roughnessMap?"#define USE_ROUGHNESSMAP":"",n.metalnessMap?"#define USE_METALNESSMAP":"",n.alphaMap?"#define USE_ALPHAMAP":"",n.transmission?"#define USE_TRANSMISSION":"",n.transmissionMap?"#define USE_TRANSMISSIONMAP":"",n.thicknessMap?"#define USE_THICKNESSMAP":"",n.sheenColorMap?"#define USE_SHEENCOLORMAP":"",n.sheenRoughnessMap?"#define USE_SHEENROUGHNESSMAP":"",n.vertexTangents?"#define USE_TANGENT":"",n.vertexColors?"#define USE_COLOR":"",n.vertexAlphas?"#define USE_COLOR_ALPHA":"",n.vertexUvs?"#define USE_UV":"",n.uvsVertexOnly?"#define UVS_VERTEX_ONLY":"",n.flatShading?"#define FLAT_SHADED":"",n.skinning?"#define USE_SKINNING":"",n.morphTargets?"#define USE_MORPHTARGETS":"",n.morphNormals&&n.flatShading===!1?"#define USE_MORPHNORMALS":"",n.morphColors&&n.isWebGL2?"#define USE_MORPHCOLORS":"",n.morphTargetsCount>0&&n.isWebGL2?"#define MORPHTARGETS_TEXTURE":"",n.morphTargetsCount>0&&n.isWebGL2?"#define MORPHTARGETS_TEXTURE_STRIDE "+n.morphTextureStride:"",n.morphTargetsCount>0&&n.isWebGL2?"#define MORPHTARGETS_COUNT "+n.morphTargetsCount:"",n.doubleSided?"#define DOUBLE_SIDED":"",n.flipSided?"#define FLIP_SIDED":"",n.shadowMapEnabled?"#define USE_SHADOWMAP":"",n.shadowMapEnabled?"#define "+l:"",n.sizeAttenuation?"#define USE_SIZEATTENUATION":"",n.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",n.logarithmicDepthBuffer&&n.rendererExtensionFragDepth?"#define USE_LOGDEPTHBUF_EXT":"","uniform mat4 modelMatrix;","uniform mat4 modelViewMatrix;","uniform mat4 projectionMatrix;","uniform mat4 viewMatrix;","uniform mat3 normalMatrix;","uniform vec3 cameraPosition;","uniform bool isOrthographic;","#ifdef USE_INSTANCING"," attribute mat4 instanceMatrix;","#endif","#ifdef USE_INSTANCING_COLOR"," attribute vec3 instanceColor;","#endif","attribute vec3 position;","attribute vec3 normal;","attribute vec2 uv;","#ifdef USE_TANGENT"," attribute vec4 tangent;","#endif","#if defined( USE_COLOR_ALPHA )"," attribute vec4 color;","#elif defined( USE_COLOR )"," attribute vec3 color;","#endif","#if ( defined( USE_MORPHTARGETS ) && ! defined( MORPHTARGETS_TEXTURE ) )"," attribute vec3 morphTarget0;"," attribute vec3 morphTarget1;"," attribute vec3 morphTarget2;"," attribute vec3 morphTarget3;"," #ifdef USE_MORPHNORMALS"," attribute vec3 morphNormal0;"," attribute vec3 morphNormal1;"," attribute vec3 morphNormal2;"," attribute vec3 morphNormal3;"," #else"," attribute vec3 morphTarget4;"," attribute vec3 morphTarget5;"," attribute vec3 morphTarget6;"," attribute vec3 morphTarget7;"," #endif","#endif","#ifdef USE_SKINNING"," attribute vec4 skinIndex;"," attribute vec4 skinWeight;","#endif",` +`].filter(of).join(` +`),b=[h,o3(n),"#define SHADER_NAME "+n.shaderName,_,n.useFog&&n.fog?"#define USE_FOG":"",n.useFog&&n.fogExp2?"#define FOG_EXP2":"",n.map?"#define USE_MAP":"",n.matcap?"#define USE_MATCAP":"",n.envMap?"#define USE_ENVMAP":"",n.envMap?"#define "+c:"",n.envMap?"#define "+u:"",n.envMap?"#define "+d:"",f?"#define CUBEUV_TEXEL_WIDTH "+f.texelWidth:"",f?"#define CUBEUV_TEXEL_HEIGHT "+f.texelHeight:"",f?"#define CUBEUV_MAX_MIP "+f.maxMip+".0":"",n.lightMap?"#define USE_LIGHTMAP":"",n.aoMap?"#define USE_AOMAP":"",n.emissiveMap?"#define USE_EMISSIVEMAP":"",n.bumpMap?"#define USE_BUMPMAP":"",n.normalMap?"#define USE_NORMALMAP":"",n.normalMap&&n.objectSpaceNormalMap?"#define OBJECTSPACE_NORMALMAP":"",n.normalMap&&n.tangentSpaceNormalMap?"#define TANGENTSPACE_NORMALMAP":"",n.clearcoat?"#define USE_CLEARCOAT":"",n.clearcoatMap?"#define USE_CLEARCOATMAP":"",n.clearcoatRoughnessMap?"#define USE_CLEARCOAT_ROUGHNESSMAP":"",n.clearcoatNormalMap?"#define USE_CLEARCOAT_NORMALMAP":"",n.iridescence?"#define USE_IRIDESCENCE":"",n.iridescenceMap?"#define USE_IRIDESCENCEMAP":"",n.iridescenceThicknessMap?"#define USE_IRIDESCENCE_THICKNESSMAP":"",n.specularMap?"#define USE_SPECULARMAP":"",n.specularIntensityMap?"#define USE_SPECULARINTENSITYMAP":"",n.specularColorMap?"#define USE_SPECULARCOLORMAP":"",n.roughnessMap?"#define USE_ROUGHNESSMAP":"",n.metalnessMap?"#define USE_METALNESSMAP":"",n.alphaMap?"#define USE_ALPHAMAP":"",n.alphaTest?"#define USE_ALPHATEST":"",n.sheen?"#define USE_SHEEN":"",n.sheenColorMap?"#define USE_SHEENCOLORMAP":"",n.sheenRoughnessMap?"#define USE_SHEENROUGHNESSMAP":"",n.transmission?"#define USE_TRANSMISSION":"",n.transmissionMap?"#define USE_TRANSMISSIONMAP":"",n.thicknessMap?"#define USE_THICKNESSMAP":"",n.decodeVideoTexture?"#define DECODE_VIDEO_TEXTURE":"",n.vertexTangents?"#define USE_TANGENT":"",n.vertexColors||n.instancingColor?"#define USE_COLOR":"",n.vertexAlphas?"#define USE_COLOR_ALPHA":"",n.vertexUvs?"#define USE_UV":"",n.uvsVertexOnly?"#define UVS_VERTEX_ONLY":"",n.gradientMap?"#define USE_GRADIENTMAP":"",n.flatShading?"#define FLAT_SHADED":"",n.doubleSided?"#define DOUBLE_SIDED":"",n.flipSided?"#define FLIP_SIDED":"",n.shadowMapEnabled?"#define USE_SHADOWMAP":"",n.shadowMapEnabled?"#define "+l:"",n.premultipliedAlpha?"#define PREMULTIPLIED_ALPHA":"",n.physicallyCorrectLights?"#define PHYSICALLY_CORRECT_LIGHTS":"",n.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",n.logarithmicDepthBuffer&&n.rendererExtensionFragDepth?"#define USE_LOGDEPTHBUF_EXT":"","uniform mat4 viewMatrix;","uniform vec3 cameraPosition;","uniform bool isOrthographic;",n.toneMapping!==uo?"#define TONE_MAPPING":"",n.toneMapping!==uo?yt.tonemapping_pars_fragment:"",n.toneMapping!==uo?EJ("toneMapping",n.toneMapping):"",n.dithering?"#define DITHERING":"",n.opaque?"#define OPAQUE":"",yt.encodings_pars_fragment,SJ("linearToOutputTexel",n.outputEncoding),n.useDepthPacking?"#define DEPTH_PACKING "+n.depthPacking:"",` +`].filter(of).join(` +`)),o=ly(o),o=s3(o,n),o=i3(o,n),a=ly(a),a=s3(a,n),a=i3(a,n),o=r3(o),a=r3(a),n.isWebGL2&&n.isRawShaderMaterial!==!0&&(y=`#version 300 es +`,m=["precision mediump sampler2DArray;","#define attribute in","#define varying out","#define texture2D texture"].join(` +`)+` +`+m,b=["#define varying in",n.glslVersion===RE?"":"layout(location = 0) out highp vec4 pc_fragColor;",n.glslVersion===RE?"":"#define gl_FragColor pc_fragColor","#define gl_FragDepthEXT gl_FragDepth","#define texture2D texture","#define textureCube texture","#define texture2DProj textureProj","#define texture2DLodEXT textureLod","#define texture2DProjLodEXT textureProjLod","#define textureCubeLodEXT textureLod","#define texture2DGradEXT textureGrad","#define texture2DProjGradEXT textureProjGrad","#define textureCubeGradEXT textureGrad"].join(` +`)+` +`+b);const v=y+m+o,x=y+b+a,S=t3(i,35633,v),w=t3(i,35632,x);if(i.attachShader(p,S),i.attachShader(p,w),n.index0AttributeName!==void 0?i.bindAttribLocation(p,0,n.index0AttributeName):n.morphTargets===!0&&i.bindAttribLocation(p,0,"position"),i.linkProgram(p),t.debug.checkShaderErrors){const A=i.getProgramInfoLog(p).trim(),O=i.getShaderInfoLog(S).trim(),I=i.getShaderInfoLog(w).trim();let B=!0,U=!0;if(i.getProgramParameter(p,35714)===!1){B=!1;const D=n3(i,S,"vertex"),$=n3(i,w,"fragment");console.error("THREE.WebGLProgram: Shader Error "+i.getError()+" - VALIDATE_STATUS "+i.getProgramParameter(p,35715)+` + +Program Info Log: `+A+` +`+D+` +`+$)}else A!==""?console.warn("THREE.WebGLProgram: Program Info Log:",A):(O===""||I==="")&&(U=!1);U&&(this.diagnostics={runnable:B,programLog:A,vertexShader:{log:O,prefix:m},fragmentShader:{log:I,prefix:b}})}i.deleteShader(S),i.deleteShader(w);let T;this.getUniforms=function(){return T===void 0&&(T=new Fm(i,p)),T};let E;return this.getAttributes=function(){return E===void 0&&(E=MJ(i,p)),E},this.destroy=function(){s.releaseStatesOfProgram(this),i.deleteProgram(p),this.program=void 0},this.name=n.shaderName,this.id=vJ++,this.cacheKey=e,this.usedTimes=1,this.program=p,this.vertexShader=S,this.fragmentShader=w,this}let UJ=0;class BJ{constructor(){this.shaderCache=new Map,this.materialCache=new Map}update(e){const n=e.vertexShader,s=e.fragmentShader,i=this._getShaderStage(n),r=this._getShaderStage(s),o=this._getShaderCacheForMaterial(e);return o.has(i)===!1&&(o.add(i),i.usedTimes++),o.has(r)===!1&&(o.add(r),r.usedTimes++),this}remove(e){const n=this.materialCache.get(e);for(const s of n)s.usedTimes--,s.usedTimes===0&&this.shaderCache.delete(s.code);return this.materialCache.delete(e),this}getVertexShaderID(e){return this._getShaderStage(e.vertexShader).id}getFragmentShaderID(e){return this._getShaderStage(e.fragmentShader).id}dispose(){this.shaderCache.clear(),this.materialCache.clear()}_getShaderCacheForMaterial(e){const n=this.materialCache;return n.has(e)===!1&&n.set(e,new Set),n.get(e)}_getShaderStage(e){const n=this.shaderCache;if(n.has(e)===!1){const s=new GJ(e);n.set(e,s)}return n.get(e)}}class GJ{constructor(e){this.id=UJ++,this.code=e,this.usedTimes=0}}function zJ(t,e,n,s,i,r,o){const a=new X8,l=new BJ,c=[],u=i.isWebGL2,d=i.logarithmicDepthBuffer,f=i.vertexTextures;let h=i.precision;const _={MeshDepthMaterial:"depth",MeshDistanceMaterial:"distanceRGBA",MeshNormalMaterial:"normal",MeshBasicMaterial:"basic",MeshLambertMaterial:"lambert",MeshPhongMaterial:"phong",MeshToonMaterial:"toon",MeshStandardMaterial:"physical",MeshPhysicalMaterial:"physical",MeshMatcapMaterial:"matcap",LineBasicMaterial:"basic",LineDashedMaterial:"dashed",PointsMaterial:"points",ShadowMaterial:"shadow",SpriteMaterial:"sprite"};function p(E,A,O,I,B){const U=I.fog,D=B.geometry,$=E.isMeshStandardMaterial?I.environment:null,F=(E.isMeshStandardMaterial?n:e).get(E.envMap||$),H=F&&F.mapping===G_?F.image.height:null,j=_[E.type];E.precision!==null&&(h=i.getMaxPrecision(E.precision),h!==E.precision&&console.warn("THREE.WebGLProgram.getParameters:",E.precision,"not supported, using",h,"instead."));const Z=D.morphAttributes.position||D.morphAttributes.normal||D.morphAttributes.color,K=Z!==void 0?Z.length:0;let oe=0;D.morphAttributes.position!==void 0&&(oe=1),D.morphAttributes.normal!==void 0&&(oe=2),D.morphAttributes.color!==void 0&&(oe=3);let Q,me,Me,Pe;if(j){const He=hr[j];Q=He.vertexShader,me=He.fragmentShader}else Q=E.vertexShader,me=E.fragmentShader,l.update(E),Me=l.getVertexShaderID(E),Pe=l.getFragmentShaderID(E);const ie=t.getRenderTarget(),de=E.alphaTest>0,Se=E.clearcoat>0,we=E.iridescence>0;return{isWebGL2:u,shaderID:j,shaderName:E.type,vertexShader:Q,fragmentShader:me,defines:E.defines,customVertexShaderID:Me,customFragmentShaderID:Pe,isRawShaderMaterial:E.isRawShaderMaterial===!0,glslVersion:E.glslVersion,precision:h,instancing:B.isInstancedMesh===!0,instancingColor:B.isInstancedMesh===!0&&B.instanceColor!==null,supportsVertexTextures:f,outputEncoding:ie===null?t.outputEncoding:ie.isXRRenderTarget===!0?ie.texture.encoding:Ul,map:!!E.map,matcap:!!E.matcap,envMap:!!F,envMapMode:F&&F.mapping,envMapCubeUVHeight:H,lightMap:!!E.lightMap,aoMap:!!E.aoMap,emissiveMap:!!E.emissiveMap,bumpMap:!!E.bumpMap,normalMap:!!E.normalMap,objectSpaceNormalMap:E.normalMapType===eY,tangentSpaceNormalMap:E.normalMapType===Fw,decodeVideoTexture:!!E.map&&E.map.isVideoTexture===!0&&E.map.encoding===Ut,clearcoat:Se,clearcoatMap:Se&&!!E.clearcoatMap,clearcoatRoughnessMap:Se&&!!E.clearcoatRoughnessMap,clearcoatNormalMap:Se&&!!E.clearcoatNormalMap,iridescence:we,iridescenceMap:we&&!!E.iridescenceMap,iridescenceThicknessMap:we&&!!E.iridescenceThicknessMap,displacementMap:!!E.displacementMap,roughnessMap:!!E.roughnessMap,metalnessMap:!!E.metalnessMap,specularMap:!!E.specularMap,specularIntensityMap:!!E.specularIntensityMap,specularColorMap:!!E.specularColorMap,opaque:E.transparent===!1&&E.blending===uu,alphaMap:!!E.alphaMap,alphaTest:de,gradientMap:!!E.gradientMap,sheen:E.sheen>0,sheenColorMap:!!E.sheenColorMap,sheenRoughnessMap:!!E.sheenRoughnessMap,transmission:E.transmission>0,transmissionMap:!!E.transmissionMap,thicknessMap:!!E.thicknessMap,combine:E.combine,vertexTangents:!!E.normalMap&&!!D.attributes.tangent,vertexColors:E.vertexColors,vertexAlphas:E.vertexColors===!0&&!!D.attributes.color&&D.attributes.color.itemSize===4,vertexUvs:!!E.map||!!E.bumpMap||!!E.normalMap||!!E.specularMap||!!E.alphaMap||!!E.emissiveMap||!!E.roughnessMap||!!E.metalnessMap||!!E.clearcoatMap||!!E.clearcoatRoughnessMap||!!E.clearcoatNormalMap||!!E.iridescenceMap||!!E.iridescenceThicknessMap||!!E.displacementMap||!!E.transmissionMap||!!E.thicknessMap||!!E.specularIntensityMap||!!E.specularColorMap||!!E.sheenColorMap||!!E.sheenRoughnessMap,uvsVertexOnly:!(E.map||E.bumpMap||E.normalMap||E.specularMap||E.alphaMap||E.emissiveMap||E.roughnessMap||E.metalnessMap||E.clearcoatNormalMap||E.iridescenceMap||E.iridescenceThicknessMap||E.transmission>0||E.transmissionMap||E.thicknessMap||E.specularIntensityMap||E.specularColorMap||E.sheen>0||E.sheenColorMap||E.sheenRoughnessMap)&&!!E.displacementMap,fog:!!U,useFog:E.fog===!0,fogExp2:U&&U.isFogExp2,flatShading:!!E.flatShading,sizeAttenuation:E.sizeAttenuation,logarithmicDepthBuffer:d,skinning:B.isSkinnedMesh===!0,morphTargets:D.morphAttributes.position!==void 0,morphNormals:D.morphAttributes.normal!==void 0,morphColors:D.morphAttributes.color!==void 0,morphTargetsCount:K,morphTextureStride:oe,numDirLights:A.directional.length,numPointLights:A.point.length,numSpotLights:A.spot.length,numRectAreaLights:A.rectArea.length,numHemiLights:A.hemi.length,numDirLightShadows:A.directionalShadowMap.length,numPointLightShadows:A.pointShadowMap.length,numSpotLightShadows:A.spotShadowMap.length,numClippingPlanes:o.numPlanes,numClipIntersection:o.numIntersection,dithering:E.dithering,shadowMapEnabled:t.shadowMap.enabled&&O.length>0,shadowMapType:t.shadowMap.type,toneMapping:E.toneMapped?t.toneMapping:uo,physicallyCorrectLights:t.physicallyCorrectLights,premultipliedAlpha:E.premultipliedAlpha,doubleSided:E.side===Nl,flipSided:E.side===Hi,useDepthPacking:!!E.depthPacking,depthPacking:E.depthPacking||0,index0AttributeName:E.index0AttributeName,extensionDerivatives:E.extensions&&E.extensions.derivatives,extensionFragDepth:E.extensions&&E.extensions.fragDepth,extensionDrawBuffers:E.extensions&&E.extensions.drawBuffers,extensionShaderTextureLOD:E.extensions&&E.extensions.shaderTextureLOD,rendererExtensionFragDepth:u||s.has("EXT_frag_depth"),rendererExtensionDrawBuffers:u||s.has("WEBGL_draw_buffers"),rendererExtensionShaderTextureLod:u||s.has("EXT_shader_texture_lod"),customProgramCacheKey:E.customProgramCacheKey()}}function m(E){const A=[];if(E.shaderID?A.push(E.shaderID):(A.push(E.customVertexShaderID),A.push(E.customFragmentShaderID)),E.defines!==void 0)for(const O in E.defines)A.push(O),A.push(E.defines[O]);return E.isRawShaderMaterial===!1&&(b(A,E),y(A,E),A.push(t.outputEncoding)),A.push(E.customProgramCacheKey),A.join()}function b(E,A){E.push(A.precision),E.push(A.outputEncoding),E.push(A.envMapMode),E.push(A.envMapCubeUVHeight),E.push(A.combine),E.push(A.vertexUvs),E.push(A.fogExp2),E.push(A.sizeAttenuation),E.push(A.morphTargetsCount),E.push(A.morphAttributeCount),E.push(A.numDirLights),E.push(A.numPointLights),E.push(A.numSpotLights),E.push(A.numHemiLights),E.push(A.numRectAreaLights),E.push(A.numDirLightShadows),E.push(A.numPointLightShadows),E.push(A.numSpotLightShadows),E.push(A.shadowMapType),E.push(A.toneMapping),E.push(A.numClippingPlanes),E.push(A.numClipIntersection),E.push(A.depthPacking)}function y(E,A){a.disableAll(),A.isWebGL2&&a.enable(0),A.supportsVertexTextures&&a.enable(1),A.instancing&&a.enable(2),A.instancingColor&&a.enable(3),A.map&&a.enable(4),A.matcap&&a.enable(5),A.envMap&&a.enable(6),A.lightMap&&a.enable(7),A.aoMap&&a.enable(8),A.emissiveMap&&a.enable(9),A.bumpMap&&a.enable(10),A.normalMap&&a.enable(11),A.objectSpaceNormalMap&&a.enable(12),A.tangentSpaceNormalMap&&a.enable(13),A.clearcoat&&a.enable(14),A.clearcoatMap&&a.enable(15),A.clearcoatRoughnessMap&&a.enable(16),A.clearcoatNormalMap&&a.enable(17),A.iridescence&&a.enable(18),A.iridescenceMap&&a.enable(19),A.iridescenceThicknessMap&&a.enable(20),A.displacementMap&&a.enable(21),A.specularMap&&a.enable(22),A.roughnessMap&&a.enable(23),A.metalnessMap&&a.enable(24),A.gradientMap&&a.enable(25),A.alphaMap&&a.enable(26),A.alphaTest&&a.enable(27),A.vertexColors&&a.enable(28),A.vertexAlphas&&a.enable(29),A.vertexUvs&&a.enable(30),A.vertexTangents&&a.enable(31),A.uvsVertexOnly&&a.enable(32),A.fog&&a.enable(33),E.push(a.mask),a.disableAll(),A.useFog&&a.enable(0),A.flatShading&&a.enable(1),A.logarithmicDepthBuffer&&a.enable(2),A.skinning&&a.enable(3),A.morphTargets&&a.enable(4),A.morphNormals&&a.enable(5),A.morphColors&&a.enable(6),A.premultipliedAlpha&&a.enable(7),A.shadowMapEnabled&&a.enable(8),A.physicallyCorrectLights&&a.enable(9),A.doubleSided&&a.enable(10),A.flipSided&&a.enable(11),A.useDepthPacking&&a.enable(12),A.dithering&&a.enable(13),A.specularIntensityMap&&a.enable(14),A.specularColorMap&&a.enable(15),A.transmission&&a.enable(16),A.transmissionMap&&a.enable(17),A.thicknessMap&&a.enable(18),A.sheen&&a.enable(19),A.sheenColorMap&&a.enable(20),A.sheenRoughnessMap&&a.enable(21),A.decodeVideoTexture&&a.enable(22),A.opaque&&a.enable(23),E.push(a.mask)}function v(E){const A=_[E.type];let O;if(A){const I=hr[A];O=CY.clone(I.uniforms)}else O=E.uniforms;return O}function x(E,A){let O;for(let I=0,B=c.length;I0?s.push(b):h.transparent===!0?i.push(b):n.push(b)}function l(d,f,h,_,p,m){const b=o(d,f,h,_,p,m);h.transmission>0?s.unshift(b):h.transparent===!0?i.unshift(b):n.unshift(b)}function c(d,f){n.length>1&&n.sort(d||VJ),s.length>1&&s.sort(f||a3),i.length>1&&i.sort(f||a3)}function u(){for(let d=e,f=t.length;d=t.get(s).length?(r=new l3,t.get(s).push(r)):r=t.get(s)[i],r}function n(){t=new WeakMap}return{get:e,dispose:n}}function jJ(){const t={};return{get:function(e){if(t[e.id]!==void 0)return t[e.id];let n;switch(e.type){case"DirectionalLight":n={direction:new ee,color:new at};break;case"SpotLight":n={position:new ee,direction:new ee,color:new at,distance:0,coneCos:0,penumbraCos:0,decay:0};break;case"PointLight":n={position:new ee,color:new at,distance:0,decay:0};break;case"HemisphereLight":n={direction:new ee,skyColor:new at,groundColor:new at};break;case"RectAreaLight":n={color:new at,position:new ee,halfWidth:new ee,halfHeight:new ee};break}return t[e.id]=n,n}}}function qJ(){const t={};return{get:function(e){if(t[e.id]!==void 0)return t[e.id];let n;switch(e.type){case"DirectionalLight":n={shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new Et};break;case"SpotLight":n={shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new Et};break;case"PointLight":n={shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new Et,shadowCameraNear:1,shadowCameraFar:1e3};break}return t[e.id]=n,n}}}let YJ=0;function KJ(t,e){return(e.castShadow?1:0)-(t.castShadow?1:0)}function XJ(t,e){const n=new jJ,s=qJ(),i={version:0,hash:{directionalLength:-1,pointLength:-1,spotLength:-1,rectAreaLength:-1,hemiLength:-1,numDirectionalShadows:-1,numPointShadows:-1,numSpotShadows:-1},ambient:[0,0,0],probe:[],directional:[],directionalShadow:[],directionalShadowMap:[],directionalShadowMatrix:[],spot:[],spotShadow:[],spotShadowMap:[],spotShadowMatrix:[],rectArea:[],rectAreaLTC1:null,rectAreaLTC2:null,point:[],pointShadow:[],pointShadowMap:[],pointShadowMatrix:[],hemi:[]};for(let u=0;u<9;u++)i.probe.push(new ee);const r=new ee,o=new Lt,a=new Lt;function l(u,d){let f=0,h=0,_=0;for(let A=0;A<9;A++)i.probe[A].set(0,0,0);let p=0,m=0,b=0,y=0,v=0,x=0,S=0,w=0;u.sort(KJ);const T=d!==!0?Math.PI:1;for(let A=0,O=u.length;A0&&(e.isWebGL2||t.has("OES_texture_float_linear")===!0?(i.rectAreaLTC1=Ne.LTC_FLOAT_1,i.rectAreaLTC2=Ne.LTC_FLOAT_2):t.has("OES_texture_half_float_linear")===!0?(i.rectAreaLTC1=Ne.LTC_HALF_1,i.rectAreaLTC2=Ne.LTC_HALF_2):console.error("THREE.WebGLRenderer: Unable to use RectAreaLight. Missing WebGL extensions.")),i.ambient[0]=f,i.ambient[1]=h,i.ambient[2]=_;const E=i.hash;(E.directionalLength!==p||E.pointLength!==m||E.spotLength!==b||E.rectAreaLength!==y||E.hemiLength!==v||E.numDirectionalShadows!==x||E.numPointShadows!==S||E.numSpotShadows!==w)&&(i.directional.length=p,i.spot.length=b,i.rectArea.length=y,i.point.length=m,i.hemi.length=v,i.directionalShadow.length=x,i.directionalShadowMap.length=x,i.pointShadow.length=S,i.pointShadowMap.length=S,i.spotShadow.length=w,i.spotShadowMap.length=w,i.directionalShadowMatrix.length=x,i.pointShadowMatrix.length=S,i.spotShadowMatrix.length=w,E.directionalLength=p,E.pointLength=m,E.spotLength=b,E.rectAreaLength=y,E.hemiLength=v,E.numDirectionalShadows=x,E.numPointShadows=S,E.numSpotShadows=w,i.version=YJ++)}function c(u,d){let f=0,h=0,_=0,p=0,m=0;const b=d.matrixWorldInverse;for(let y=0,v=u.length;y=n.get(r).length?(a=new c3(t,e),n.get(r).push(a)):a=n.get(r)[o],a}function i(){n=new WeakMap}return{get:s,dispose:i}}class JJ extends wr{constructor(e){super(),this.isMeshDepthMaterial=!0,this.type="MeshDepthMaterial",this.depthPacking=Jq,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.setValues(e)}copy(e){return super.copy(e),this.depthPacking=e.depthPacking,this.map=e.map,this.alphaMap=e.alphaMap,this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this}}class QJ extends wr{constructor(e){super(),this.isMeshDistanceMaterial=!0,this.type="MeshDistanceMaterial",this.referencePosition=new ee,this.nearDistance=1,this.farDistance=1e3,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.setValues(e)}copy(e){return super.copy(e),this.referencePosition.copy(e.referencePosition),this.nearDistance=e.nearDistance,this.farDistance=e.farDistance,this.map=e.map,this.alphaMap=e.alphaMap,this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this}}const eQ=`void main() { + gl_Position = vec4( position, 1.0 ); +}`,tQ=`uniform sampler2D shadow_pass; +uniform vec2 resolution; +uniform float radius; +#include +void main() { + const float samples = float( VSM_SAMPLES ); + float mean = 0.0; + float squared_mean = 0.0; + float uvStride = samples <= 1.0 ? 0.0 : 2.0 / ( samples - 1.0 ); + float uvStart = samples <= 1.0 ? 0.0 : - 1.0; + for ( float i = 0.0; i < samples; i ++ ) { + float uvOffset = uvStart + i * uvStride; + #ifdef HORIZONTAL_PASS + vec2 distribution = unpackRGBATo2Half( texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( uvOffset, 0.0 ) * radius ) / resolution ) ); + mean += distribution.x; + squared_mean += distribution.y * distribution.y + distribution.x * distribution.x; + #else + float depth = unpackRGBAToDepth( texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( 0.0, uvOffset ) * radius ) / resolution ) ); + mean += depth; + squared_mean += depth * depth; + #endif + } + mean = mean / samples; + squared_mean = squared_mean / samples; + float std_dev = sqrt( squared_mean - mean * mean ); + gl_FragColor = pack2HalfToRGBA( vec2( mean, std_dev ) ); +}`;function nQ(t,e,n){let s=new Uw;const i=new Et,r=new Et,o=new Ht,a=new JJ({depthPacking:Qq}),l=new QJ,c={},u=n.maxTextureSize,d={0:Hi,1:Pu,2:Nl},f=new Gl({defines:{VSM_SAMPLES:8},uniforms:{shadow_pass:{value:null},resolution:{value:new Et},radius:{value:4}},vertexShader:eQ,fragmentShader:tQ}),h=f.clone();h.defines.HORIZONTAL_PASS=1;const _=new Or;_.setAttribute("position",new Ys(new Float32Array([-1,-1,.5,3,-1,.5,-1,3,.5]),3));const p=new Bi(_,f),m=this;this.enabled=!1,this.autoUpdate=!0,this.needsUpdate=!1,this.type=F8,this.render=function(x,S,w){if(m.enabled===!1||m.autoUpdate===!1&&m.needsUpdate===!1||x.length===0)return;const T=t.getRenderTarget(),E=t.getActiveCubeFace(),A=t.getActiveMipmapLevel(),O=t.state;O.setBlending(xa),O.buffers.color.setClear(1,1,1,1),O.buffers.depth.setTest(!0),O.setScissorTest(!1);for(let I=0,B=x.length;Iu||i.y>u)&&(i.x>u&&(r.x=Math.floor(u/$.x),i.x=r.x*$.x,D.mapSize.x=r.x),i.y>u&&(r.y=Math.floor(u/$.y),i.y=r.y*$.y,D.mapSize.y=r.y)),D.map===null){const H=this.type!==rf?{minFilter:Xn,magFilter:Xn}:{};D.map=new Bl(i.x,i.y,H),D.map.texture.name=U.name+".shadowMap",D.camera.updateProjectionMatrix()}t.setRenderTarget(D.map),t.clear();const F=D.getViewportCount();for(let H=0;H0){const B=O.uuid,U=S.uuid;let D=c[B];D===void 0&&(D={},c[B]=D);let $=D[U];$===void 0&&($=O.clone(),D[U]=$),O=$}return O.visible=S.visible,O.wireframe=S.wireframe,A===rf?O.side=S.shadowSide!==null?S.shadowSide:S.side:O.side=S.shadowSide!==null?S.shadowSide:d[S.side],O.alphaMap=S.alphaMap,O.alphaTest=S.alphaTest,O.clipShadows=S.clipShadows,O.clippingPlanes=S.clippingPlanes,O.clipIntersection=S.clipIntersection,O.displacementMap=S.displacementMap,O.displacementScale=S.displacementScale,O.displacementBias=S.displacementBias,O.wireframeLinewidth=S.wireframeLinewidth,O.linewidth=S.linewidth,w.isPointLight===!0&&O.isMeshDistanceMaterial===!0&&(O.referencePosition.setFromMatrixPosition(w.matrixWorld),O.nearDistance=T,O.farDistance=E),O}function v(x,S,w,T,E){if(x.visible===!1)return;if(x.layers.test(S.layers)&&(x.isMesh||x.isLine||x.isPoints)&&(x.castShadow||x.receiveShadow&&E===rf)&&(!x.frustumCulled||s.intersectsObject(x))){x.modelViewMatrix.multiplyMatrices(w.matrixWorldInverse,x.matrixWorld);const I=e.update(x),B=x.material;if(Array.isArray(B)){const U=I.groups;for(let D=0,$=U.length;D<$;D++){const F=U[D],H=B[F.materialIndex];if(H&&H.visible){const j=y(x,H,T,w.near,w.far,E);t.renderBufferDirect(w,null,I,j,x,F)}}}else if(B.visible){const U=y(x,B,T,w.near,w.far,E);t.renderBufferDirect(w,null,I,U,x,null)}}const O=x.children;for(let I=0,B=O.length;I=1):F.indexOf("OpenGL ES")!==-1&&($=parseFloat(/^OpenGL ES (\d)/.exec(F)[1]),D=$>=2);let H=null,j={};const Z=t.getParameter(3088),K=t.getParameter(2978),oe=new Ht().fromArray(Z),Q=new Ht().fromArray(K);function me(R,L,N){const z=new Uint8Array(4),q=t.createTexture();t.bindTexture(R,q),t.texParameteri(R,10241,9728),t.texParameteri(R,10240,9728);for(let ue=0;uele||C.height>le)&&(pe=le/Math.max(C.width,C.height)),pe<1||M===!0)if(typeof HTMLImageElement<"u"&&C instanceof HTMLImageElement||typeof HTMLCanvasElement<"u"&&C instanceof HTMLCanvasElement||typeof ImageBitmap<"u"&&C instanceof ImageBitmap){const xe=M?gg:Math.floor,Fe=xe(pe*C.width),re=xe(pe*C.height);p===void 0&&(p=y(Fe,re));const _e=ne?y(Fe,re):p;return _e.width=Fe,_e.height=re,_e.getContext("2d").drawImage(C,0,0,Fe,re),console.warn("THREE.WebGLRenderer: Texture has been resized from ("+C.width+"x"+C.height+") to ("+Fe+"x"+re+")."),_e}else return"data"in C&&console.warn("THREE.WebGLRenderer: Image in DataTexture is too big ("+C.width+"x"+C.height+")."),C;return C}function x(C){return ay(C.width)&&ay(C.height)}function S(C){return a?!1:C.wrapS!==ci||C.wrapT!==ci||C.minFilter!==Xn&&C.minFilter!==Is}function w(C,M){return C.generateMipmaps&&M&&C.minFilter!==Xn&&C.minFilter!==Is}function T(C){t.generateMipmap(C)}function E(C,M,ne,le,pe=!1){if(a===!1)return M;if(C!==null){if(t[C]!==void 0)return t[C];console.warn("THREE.WebGLRenderer: Attempt to use non-existing WebGL internal format '"+C+"'")}let xe=M;return M===6403&&(ne===5126&&(xe=33326),ne===5131&&(xe=33325),ne===5121&&(xe=33321)),M===33319&&(ne===5126&&(xe=33328),ne===5131&&(xe=33327),ne===5121&&(xe=33323)),M===6408&&(ne===5126&&(xe=34836),ne===5131&&(xe=34842),ne===5121&&(xe=le===Ut&&pe===!1?35907:32856),ne===32819&&(xe=32854),ne===32820&&(xe=32855)),(xe===33325||xe===33326||xe===33327||xe===33328||xe===34842||xe===34836)&&e.get("EXT_color_buffer_float"),xe}function A(C,M,ne){return w(C,ne)===!0||C.isFramebufferTexture&&C.minFilter!==Xn&&C.minFilter!==Is?Math.log2(Math.max(M.width,M.height))+1:C.mipmaps!==void 0&&C.mipmaps.length>0?C.mipmaps.length:C.isCompressedTexture&&Array.isArray(C.image)?M.mipmaps.length:1}function O(C){return C===Xn||C===sy||C===iy?9728:9729}function I(C){const M=C.target;M.removeEventListener("dispose",I),U(M),M.isVideoTexture&&_.delete(M)}function B(C){const M=C.target;M.removeEventListener("dispose",B),$(M)}function U(C){const M=s.get(C);if(M.__webglInit===void 0)return;const ne=C.source,le=m.get(ne);if(le){const pe=le[M.__cacheKey];pe.usedTimes--,pe.usedTimes===0&&D(C),Object.keys(le).length===0&&m.delete(ne)}s.remove(C)}function D(C){const M=s.get(C);t.deleteTexture(M.__webglTexture);const ne=C.source,le=m.get(ne);delete le[M.__cacheKey],o.memory.textures--}function $(C){const M=C.texture,ne=s.get(C),le=s.get(M);if(le.__webglTexture!==void 0&&(t.deleteTexture(le.__webglTexture),o.memory.textures--),C.depthTexture&&C.depthTexture.dispose(),C.isWebGLCubeRenderTarget)for(let pe=0;pe<6;pe++)t.deleteFramebuffer(ne.__webglFramebuffer[pe]),ne.__webglDepthbuffer&&t.deleteRenderbuffer(ne.__webglDepthbuffer[pe]);else{if(t.deleteFramebuffer(ne.__webglFramebuffer),ne.__webglDepthbuffer&&t.deleteRenderbuffer(ne.__webglDepthbuffer),ne.__webglMultisampledFramebuffer&&t.deleteFramebuffer(ne.__webglMultisampledFramebuffer),ne.__webglColorRenderbuffer)for(let pe=0;pe=l&&console.warn("THREE.WebGLTextures: Trying to use "+C+" texture units while this GPU supports only "+l),F+=1,C}function Z(C){const M=[];return M.push(C.wrapS),M.push(C.wrapT),M.push(C.magFilter),M.push(C.minFilter),M.push(C.anisotropy),M.push(C.internalFormat),M.push(C.format),M.push(C.type),M.push(C.generateMipmaps),M.push(C.premultiplyAlpha),M.push(C.flipY),M.push(C.unpackAlignment),M.push(C.encoding),M.join()}function K(C,M){const ne=s.get(C);if(C.isVideoTexture&&ke(C),C.isRenderTargetTexture===!1&&C.version>0&&ne.__version!==C.version){const le=C.image;if(le===null)console.warn("THREE.WebGLRenderer: Texture marked for update but no image data found.");else if(le.complete===!1)console.warn("THREE.WebGLRenderer: Texture marked for update but image is incomplete");else{Se(ne,C,M);return}}n.activeTexture(33984+M),n.bindTexture(3553,ne.__webglTexture)}function oe(C,M){const ne=s.get(C);if(C.version>0&&ne.__version!==C.version){Se(ne,C,M);return}n.activeTexture(33984+M),n.bindTexture(35866,ne.__webglTexture)}function Q(C,M){const ne=s.get(C);if(C.version>0&&ne.__version!==C.version){Se(ne,C,M);return}n.activeTexture(33984+M),n.bindTexture(32879,ne.__webglTexture)}function me(C,M){const ne=s.get(C);if(C.version>0&&ne.__version!==C.version){we(ne,C,M);return}n.activeTexture(33984+M),n.bindTexture(34067,ne.__webglTexture)}const Me={[Nu]:10497,[ci]:33071,[mg]:33648},Pe={[Xn]:9728,[sy]:9984,[iy]:9986,[Is]:9729,[G8]:9985,[ud]:9987};function ie(C,M,ne){if(ne?(t.texParameteri(C,10242,Me[M.wrapS]),t.texParameteri(C,10243,Me[M.wrapT]),(C===32879||C===35866)&&t.texParameteri(C,32882,Me[M.wrapR]),t.texParameteri(C,10240,Pe[M.magFilter]),t.texParameteri(C,10241,Pe[M.minFilter])):(t.texParameteri(C,10242,33071),t.texParameteri(C,10243,33071),(C===32879||C===35866)&&t.texParameteri(C,32882,33071),(M.wrapS!==ci||M.wrapT!==ci)&&console.warn("THREE.WebGLRenderer: Texture is not power of two. Texture.wrapS and Texture.wrapT should be set to THREE.ClampToEdgeWrapping."),t.texParameteri(C,10240,O(M.magFilter)),t.texParameteri(C,10241,O(M.minFilter)),M.minFilter!==Xn&&M.minFilter!==Is&&console.warn("THREE.WebGLRenderer: Texture is not power of two. Texture.minFilter should be set to THREE.NearestFilter or THREE.LinearFilter.")),e.has("EXT_texture_filter_anisotropic")===!0){const le=e.get("EXT_texture_filter_anisotropic");if(M.type===da&&e.has("OES_texture_float_linear")===!1||a===!1&&M.type===Zf&&e.has("OES_texture_half_float_linear")===!1)return;(M.anisotropy>1||s.get(M).__currentAnisotropy)&&(t.texParameterf(C,le.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(M.anisotropy,i.getMaxAnisotropy())),s.get(M).__currentAnisotropy=M.anisotropy)}}function de(C,M){let ne=!1;C.__webglInit===void 0&&(C.__webglInit=!0,M.addEventListener("dispose",I));const le=M.source;let pe=m.get(le);pe===void 0&&(pe={},m.set(le,pe));const xe=Z(M);if(xe!==C.__cacheKey){pe[xe]===void 0&&(pe[xe]={texture:t.createTexture(),usedTimes:0},o.memory.textures++,ne=!0),pe[xe].usedTimes++;const Fe=pe[C.__cacheKey];Fe!==void 0&&(pe[C.__cacheKey].usedTimes--,Fe.usedTimes===0&&D(M)),C.__cacheKey=xe,C.__webglTexture=pe[xe].texture}return ne}function Se(C,M,ne){let le=3553;M.isDataArrayTexture&&(le=35866),M.isData3DTexture&&(le=32879);const pe=de(C,M),xe=M.source;if(n.activeTexture(33984+ne),n.bindTexture(le,C.__webglTexture),xe.version!==xe.__currentVersion||pe===!0){t.pixelStorei(37440,M.flipY),t.pixelStorei(37441,M.premultiplyAlpha),t.pixelStorei(3317,M.unpackAlignment),t.pixelStorei(37443,0);const Fe=S(M)&&x(M.image)===!1;let re=v(M.image,Fe,!1,u);re=Ce(M,re);const _e=x(re)||a,Y=r.convert(M.format,M.encoding);let k=r.convert(M.type),R=E(M.internalFormat,Y,k,M.encoding,M.isVideoTexture);ie(le,M,_e);let L;const N=M.mipmaps,z=a&&M.isVideoTexture!==!0,q=xe.__currentVersion===void 0||pe===!0,ue=A(M,re,_e);if(M.isDepthTexture)R=6402,a?M.type===da?R=36012:M.type===_l?R=33190:M.type===du?R=35056:R=33189:M.type===da&&console.error("WebGLRenderer: Floating point depth texture requires WebGL2."),M.format===Rl&&R===6402&&M.type!==z8&&M.type!==_l&&(console.warn("THREE.WebGLRenderer: Use UnsignedShortType or UnsignedIntType for DepthFormat DepthTexture."),M.type=_l,k=r.convert(M.type)),M.format===$u&&R===6402&&(R=34041,M.type!==du&&(console.warn("THREE.WebGLRenderer: Use UnsignedInt248Type for DepthStencilFormat DepthTexture."),M.type=du,k=r.convert(M.type))),q&&(z?n.texStorage2D(3553,1,R,re.width,re.height):n.texImage2D(3553,0,R,re.width,re.height,0,Y,k,null));else if(M.isDataTexture)if(N.length>0&&_e){z&&q&&n.texStorage2D(3553,ue,R,N[0].width,N[0].height);for(let ae=0,Ie=N.length;ae>=1,Ie>>=1}}else if(N.length>0&&_e){z&&q&&n.texStorage2D(3553,ue,R,N[0].width,N[0].height);for(let ae=0,Ie=N.length;ae0&&q++,n.texStorage2D(34067,q,L,re[0].width,re[0].height));for(let ae=0;ae<6;ae++)if(Fe){N?n.texSubImage2D(34069+ae,0,0,0,re[ae].width,re[ae].height,k,R,re[ae].data):n.texImage2D(34069+ae,0,L,re[ae].width,re[ae].height,0,k,R,re[ae].data);for(let Ie=0;Ie0&&Ae(C)===!1){const re=xe?M:[M];ne.__webglMultisampledFramebuffer=t.createFramebuffer(),ne.__webglColorRenderbuffer=[],n.bindFramebuffer(36160,ne.__webglMultisampledFramebuffer);for(let _e=0;_e0&&Ae(C)===!1){const M=C.isWebGLMultipleRenderTargets?C.texture:[C.texture],ne=C.width,le=C.height;let pe=16384;const xe=[],Fe=C.stencilBuffer?33306:36096,re=s.get(C),_e=C.isWebGLMultipleRenderTargets===!0;if(_e)for(let Y=0;Y0&&e.has("WEBGL_multisampled_render_to_texture")===!0&&M.__useRenderToTexture!==!1}function ke(C){const M=o.render.frame;_.get(C)!==M&&(_.set(C,M),C.update())}function Ce(C,M){const ne=C.encoding,le=C.format,pe=C.type;return C.isCompressedTexture===!0||C.isVideoTexture===!0||C.format===oy||ne!==Ul&&(ne===Ut?a===!1?e.has("EXT_sRGB")===!0&&le===Ui?(C.format=oy,C.minFilter=Is,C.generateMipmaps=!1):M=q8.sRGBToLinear(M):(le!==Ui||pe!==$l)&&console.warn("THREE.WebGLTextures: sRGB encoded textures have to use RGBAFormat and UnsignedByteType."):console.error("THREE.WebGLTextures: Unsupported texture encoding:",ne)),M}this.allocateTextureUnit=j,this.resetTextureUnits=H,this.setTexture2D=K,this.setTexture2DArray=oe,this.setTexture3D=Q,this.setTextureCube=me,this.rebindTextures=V,this.setupRenderTarget=te,this.updateRenderTargetMipmap=he,this.updateMultisampleRenderTarget=be,this.setupDepthRenderbuffer=P,this.setupFrameBufferTexture=ge,this.useMultisampledRTT=Ae}function rQ(t,e,n){const s=n.isWebGL2;function i(r,o=null){let a;if(r===$l)return 5121;if(r===Nq)return 32819;if(r===$q)return 32820;if(r===Pq)return 5120;if(r===Dq)return 5122;if(r===z8)return 5123;if(r===Fq)return 5124;if(r===_l)return 5125;if(r===da)return 5126;if(r===Zf)return s?5131:(a=e.get("OES_texture_half_float"),a!==null?a.HALF_FLOAT_OES:null);if(r===Uq)return 6406;if(r===Ui)return 6408;if(r===Gq)return 6409;if(r===zq)return 6410;if(r===Rl)return 6402;if(r===$u)return 34041;if(r===Hq)return 6403;if(r===Bq)return console.warn("THREE.WebGLRenderer: THREE.RGBFormat has been removed. Use THREE.RGBAFormat instead. https://github.com/mrdoob/three.js/pull/23228"),6408;if(r===oy)return a=e.get("EXT_sRGB"),a!==null?a.SRGB_ALPHA_EXT:null;if(r===Vq)return 36244;if(r===Wq)return 33319;if(r===jq)return 33320;if(r===qq)return 36249;if(r===e1||r===t1||r===n1||r===s1)if(o===Ut)if(a=e.get("WEBGL_compressed_texture_s3tc_srgb"),a!==null){if(r===e1)return a.COMPRESSED_SRGB_S3TC_DXT1_EXT;if(r===t1)return a.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT;if(r===n1)return a.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT;if(r===s1)return a.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT}else return null;else if(a=e.get("WEBGL_compressed_texture_s3tc"),a!==null){if(r===e1)return a.COMPRESSED_RGB_S3TC_DXT1_EXT;if(r===t1)return a.COMPRESSED_RGBA_S3TC_DXT1_EXT;if(r===n1)return a.COMPRESSED_RGBA_S3TC_DXT3_EXT;if(r===s1)return a.COMPRESSED_RGBA_S3TC_DXT5_EXT}else return null;if(r===rE||r===oE||r===aE||r===lE)if(a=e.get("WEBGL_compressed_texture_pvrtc"),a!==null){if(r===rE)return a.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;if(r===oE)return a.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;if(r===aE)return a.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;if(r===lE)return a.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG}else return null;if(r===Yq)return a=e.get("WEBGL_compressed_texture_etc1"),a!==null?a.COMPRESSED_RGB_ETC1_WEBGL:null;if(r===cE||r===uE)if(a=e.get("WEBGL_compressed_texture_etc"),a!==null){if(r===cE)return o===Ut?a.COMPRESSED_SRGB8_ETC2:a.COMPRESSED_RGB8_ETC2;if(r===uE)return o===Ut?a.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:a.COMPRESSED_RGBA8_ETC2_EAC}else return null;if(r===dE||r===fE||r===hE||r===pE||r===mE||r===gE||r===_E||r===bE||r===yE||r===vE||r===wE||r===xE||r===SE||r===EE)if(a=e.get("WEBGL_compressed_texture_astc"),a!==null){if(r===dE)return o===Ut?a.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR:a.COMPRESSED_RGBA_ASTC_4x4_KHR;if(r===fE)return o===Ut?a.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR:a.COMPRESSED_RGBA_ASTC_5x4_KHR;if(r===hE)return o===Ut?a.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR:a.COMPRESSED_RGBA_ASTC_5x5_KHR;if(r===pE)return o===Ut?a.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR:a.COMPRESSED_RGBA_ASTC_6x5_KHR;if(r===mE)return o===Ut?a.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR:a.COMPRESSED_RGBA_ASTC_6x6_KHR;if(r===gE)return o===Ut?a.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR:a.COMPRESSED_RGBA_ASTC_8x5_KHR;if(r===_E)return o===Ut?a.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR:a.COMPRESSED_RGBA_ASTC_8x6_KHR;if(r===bE)return o===Ut?a.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR:a.COMPRESSED_RGBA_ASTC_8x8_KHR;if(r===yE)return o===Ut?a.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR:a.COMPRESSED_RGBA_ASTC_10x5_KHR;if(r===vE)return o===Ut?a.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR:a.COMPRESSED_RGBA_ASTC_10x6_KHR;if(r===wE)return o===Ut?a.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR:a.COMPRESSED_RGBA_ASTC_10x8_KHR;if(r===xE)return o===Ut?a.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR:a.COMPRESSED_RGBA_ASTC_10x10_KHR;if(r===SE)return o===Ut?a.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR:a.COMPRESSED_RGBA_ASTC_12x10_KHR;if(r===EE)return o===Ut?a.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR:a.COMPRESSED_RGBA_ASTC_12x12_KHR}else return null;if(r===TE)if(a=e.get("EXT_texture_compression_bptc"),a!==null){if(r===TE)return o===Ut?a.COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT:a.COMPRESSED_RGBA_BPTC_UNORM_EXT}else return null;return r===du?s?34042:(a=e.get("WEBGL_depth_texture"),a!==null?a.UNSIGNED_INT_24_8_WEBGL:null):t[r]!==void 0?t[r]:null}return{convert:i}}class oQ extends ys{constructor(e=[]){super(),this.isArrayCamera=!0,this.cameras=e}}class yl extends kn{constructor(){super(),this.isGroup=!0,this.type="Group"}}const aQ={type:"move"};class O1{constructor(){this._targetRay=null,this._grip=null,this._hand=null}getHandSpace(){return this._hand===null&&(this._hand=new yl,this._hand.matrixAutoUpdate=!1,this._hand.visible=!1,this._hand.joints={},this._hand.inputState={pinching:!1}),this._hand}getTargetRaySpace(){return this._targetRay===null&&(this._targetRay=new yl,this._targetRay.matrixAutoUpdate=!1,this._targetRay.visible=!1,this._targetRay.hasLinearVelocity=!1,this._targetRay.linearVelocity=new ee,this._targetRay.hasAngularVelocity=!1,this._targetRay.angularVelocity=new ee),this._targetRay}getGripSpace(){return this._grip===null&&(this._grip=new yl,this._grip.matrixAutoUpdate=!1,this._grip.visible=!1,this._grip.hasLinearVelocity=!1,this._grip.linearVelocity=new ee,this._grip.hasAngularVelocity=!1,this._grip.angularVelocity=new ee),this._grip}dispatchEvent(e){return this._targetRay!==null&&this._targetRay.dispatchEvent(e),this._grip!==null&&this._grip.dispatchEvent(e),this._hand!==null&&this._hand.dispatchEvent(e),this}disconnect(e){return this.dispatchEvent({type:"disconnected",data:e}),this._targetRay!==null&&(this._targetRay.visible=!1),this._grip!==null&&(this._grip.visible=!1),this._hand!==null&&(this._hand.visible=!1),this}update(e,n,s){let i=null,r=null,o=null;const a=this._targetRay,l=this._grip,c=this._hand;if(e&&n.session.visibilityState!=="visible-blurred"){if(c&&e.hand){o=!0;for(const p of e.hand.values()){const m=n.getJointPose(p,s);if(c.joints[p.jointName]===void 0){const y=new yl;y.matrixAutoUpdate=!1,y.visible=!1,c.joints[p.jointName]=y,c.add(y)}const b=c.joints[p.jointName];m!==null&&(b.matrix.fromArray(m.transform.matrix),b.matrix.decompose(b.position,b.rotation,b.scale),b.jointRadius=m.radius),b.visible=m!==null}const u=c.joints["index-finger-tip"],d=c.joints["thumb-tip"],f=u.position.distanceTo(d.position),h=.02,_=.005;c.inputState.pinching&&f>h+_?(c.inputState.pinching=!1,this.dispatchEvent({type:"pinchend",handedness:e.handedness,target:this})):!c.inputState.pinching&&f<=h-_&&(c.inputState.pinching=!0,this.dispatchEvent({type:"pinchstart",handedness:e.handedness,target:this}))}else l!==null&&e.gripSpace&&(r=n.getPose(e.gripSpace,s),r!==null&&(l.matrix.fromArray(r.transform.matrix),l.matrix.decompose(l.position,l.rotation,l.scale),r.linearVelocity?(l.hasLinearVelocity=!0,l.linearVelocity.copy(r.linearVelocity)):l.hasLinearVelocity=!1,r.angularVelocity?(l.hasAngularVelocity=!0,l.angularVelocity.copy(r.angularVelocity)):l.hasAngularVelocity=!1));a!==null&&(i=n.getPose(e.targetRaySpace,s),i===null&&r!==null&&(i=r),i!==null&&(a.matrix.fromArray(i.transform.matrix),a.matrix.decompose(a.position,a.rotation,a.scale),i.linearVelocity?(a.hasLinearVelocity=!0,a.linearVelocity.copy(i.linearVelocity)):a.hasLinearVelocity=!1,i.angularVelocity?(a.hasAngularVelocity=!0,a.angularVelocity.copy(i.angularVelocity)):a.hasAngularVelocity=!1,this.dispatchEvent(aQ)))}return a!==null&&(a.visible=i!==null),l!==null&&(l.visible=r!==null),c!==null&&(c.visible=o!==null),this}}class lQ extends ws{constructor(e,n,s,i,r,o,a,l,c,u){if(u=u!==void 0?u:Rl,u!==Rl&&u!==$u)throw new Error("DepthTexture format must be either THREE.DepthFormat or THREE.DepthStencilFormat");s===void 0&&u===Rl&&(s=_l),s===void 0&&u===$u&&(s=du),super(null,i,r,o,a,l,u,s,c),this.isDepthTexture=!0,this.image={width:e,height:n},this.magFilter=a!==void 0?a:Xn,this.minFilter=l!==void 0?l:Xn,this.flipY=!1,this.generateMipmaps=!1}}class cQ extends dd{constructor(e,n){super();const s=this;let i=null,r=1,o=null,a="local-floor",l=null,c=null,u=null,d=null,f=null,h=null;const _=n.getContextAttributes();let p=null,m=null;const b=[],y=[],v=new ys;v.layers.enable(1),v.viewport=new Ht;const x=new ys;x.layers.enable(2),x.viewport=new Ht;const S=[v,x],w=new oQ;w.layers.enable(1),w.layers.enable(2);let T=null,E=null;this.cameraAutoUpdate=!0,this.enabled=!1,this.isPresenting=!1,this.getController=function(Z){let K=b[Z];return K===void 0&&(K=new O1,b[Z]=K),K.getTargetRaySpace()},this.getControllerGrip=function(Z){let K=b[Z];return K===void 0&&(K=new O1,b[Z]=K),K.getGripSpace()},this.getHand=function(Z){let K=b[Z];return K===void 0&&(K=new O1,b[Z]=K),K.getHandSpace()};function A(Z){const K=y.indexOf(Z.inputSource);if(K===-1)return;const oe=b[K];oe!==void 0&&oe.dispatchEvent({type:Z.type,data:Z.inputSource})}function O(){i.removeEventListener("select",A),i.removeEventListener("selectstart",A),i.removeEventListener("selectend",A),i.removeEventListener("squeeze",A),i.removeEventListener("squeezestart",A),i.removeEventListener("squeezeend",A),i.removeEventListener("end",O),i.removeEventListener("inputsourceschange",I);for(let Z=0;Z=0&&(y[Q]=null,b[Q].dispatchEvent({type:"disconnected",data:oe}))}for(let K=0;K=y.length){y.push(oe),Q=Me;break}else if(y[Me]===null){y[Me]=oe,Q=Me;break}if(Q===-1)break}const me=b[Q];me&&me.dispatchEvent({type:"connected",data:oe})}}const B=new ee,U=new ee;function D(Z,K,oe){B.setFromMatrixPosition(K.matrixWorld),U.setFromMatrixPosition(oe.matrixWorld);const Q=B.distanceTo(U),me=K.projectionMatrix.elements,Me=oe.projectionMatrix.elements,Pe=me[14]/(me[10]-1),ie=me[14]/(me[10]+1),de=(me[9]+1)/me[5],Se=(me[9]-1)/me[5],we=(me[8]-1)/me[0],ge=(Me[8]+1)/Me[0],He=Pe*we,Be=Pe*ge,P=Q/(-we+ge),V=P*-we;K.matrixWorld.decompose(Z.position,Z.quaternion,Z.scale),Z.translateX(V),Z.translateZ(P),Z.matrixWorld.compose(Z.position,Z.quaternion,Z.scale),Z.matrixWorldInverse.copy(Z.matrixWorld).invert();const te=Pe+P,he=ie+P,be=He-V,Te=Be+(Q-V),Ae=de*ie/he*te,ke=Se*ie/he*te;Z.projectionMatrix.makePerspective(be,Te,Ae,ke,te,he)}function $(Z,K){K===null?Z.matrixWorld.copy(Z.matrix):Z.matrixWorld.multiplyMatrices(K.matrixWorld,Z.matrix),Z.matrixWorldInverse.copy(Z.matrixWorld).invert()}this.updateCamera=function(Z){if(i===null)return;w.near=x.near=v.near=Z.near,w.far=x.far=v.far=Z.far,(T!==w.near||E!==w.far)&&(i.updateRenderState({depthNear:w.near,depthFar:w.far}),T=w.near,E=w.far);const K=Z.parent,oe=w.cameras;$(w,K);for(let me=0;me0&&(p.alphaTest.value=m.alphaTest);const b=e.get(m).envMap;if(b&&(p.envMap.value=b,p.flipEnvMap.value=b.isCubeTexture&&b.isRenderTargetTexture===!1?-1:1,p.reflectivity.value=m.reflectivity,p.ior.value=m.ior,p.refractionRatio.value=m.refractionRatio),m.lightMap){p.lightMap.value=m.lightMap;const x=t.physicallyCorrectLights!==!0?Math.PI:1;p.lightMapIntensity.value=m.lightMapIntensity*x}m.aoMap&&(p.aoMap.value=m.aoMap,p.aoMapIntensity.value=m.aoMapIntensity);let y;m.map?y=m.map:m.specularMap?y=m.specularMap:m.displacementMap?y=m.displacementMap:m.normalMap?y=m.normalMap:m.bumpMap?y=m.bumpMap:m.roughnessMap?y=m.roughnessMap:m.metalnessMap?y=m.metalnessMap:m.alphaMap?y=m.alphaMap:m.emissiveMap?y=m.emissiveMap:m.clearcoatMap?y=m.clearcoatMap:m.clearcoatNormalMap?y=m.clearcoatNormalMap:m.clearcoatRoughnessMap?y=m.clearcoatRoughnessMap:m.iridescenceMap?y=m.iridescenceMap:m.iridescenceThicknessMap?y=m.iridescenceThicknessMap:m.specularIntensityMap?y=m.specularIntensityMap:m.specularColorMap?y=m.specularColorMap:m.transmissionMap?y=m.transmissionMap:m.thicknessMap?y=m.thicknessMap:m.sheenColorMap?y=m.sheenColorMap:m.sheenRoughnessMap&&(y=m.sheenRoughnessMap),y!==void 0&&(y.isWebGLRenderTarget&&(y=y.texture),y.matrixAutoUpdate===!0&&y.updateMatrix(),p.uvTransform.value.copy(y.matrix));let v;m.aoMap?v=m.aoMap:m.lightMap&&(v=m.lightMap),v!==void 0&&(v.isWebGLRenderTarget&&(v=v.texture),v.matrixAutoUpdate===!0&&v.updateMatrix(),p.uv2Transform.value.copy(v.matrix))}function r(p,m){p.diffuse.value.copy(m.color),p.opacity.value=m.opacity}function o(p,m){p.dashSize.value=m.dashSize,p.totalSize.value=m.dashSize+m.gapSize,p.scale.value=m.scale}function a(p,m,b,y){p.diffuse.value.copy(m.color),p.opacity.value=m.opacity,p.size.value=m.size*b,p.scale.value=y*.5,m.map&&(p.map.value=m.map),m.alphaMap&&(p.alphaMap.value=m.alphaMap),m.alphaTest>0&&(p.alphaTest.value=m.alphaTest);let v;m.map?v=m.map:m.alphaMap&&(v=m.alphaMap),v!==void 0&&(v.matrixAutoUpdate===!0&&v.updateMatrix(),p.uvTransform.value.copy(v.matrix))}function l(p,m){p.diffuse.value.copy(m.color),p.opacity.value=m.opacity,p.rotation.value=m.rotation,m.map&&(p.map.value=m.map),m.alphaMap&&(p.alphaMap.value=m.alphaMap),m.alphaTest>0&&(p.alphaTest.value=m.alphaTest);let b;m.map?b=m.map:m.alphaMap&&(b=m.alphaMap),b!==void 0&&(b.matrixAutoUpdate===!0&&b.updateMatrix(),p.uvTransform.value.copy(b.matrix))}function c(p,m){p.specular.value.copy(m.specular),p.shininess.value=Math.max(m.shininess,1e-4)}function u(p,m){m.gradientMap&&(p.gradientMap.value=m.gradientMap)}function d(p,m){p.roughness.value=m.roughness,p.metalness.value=m.metalness,m.roughnessMap&&(p.roughnessMap.value=m.roughnessMap),m.metalnessMap&&(p.metalnessMap.value=m.metalnessMap),e.get(m).envMap&&(p.envMapIntensity.value=m.envMapIntensity)}function f(p,m,b){p.ior.value=m.ior,m.sheen>0&&(p.sheenColor.value.copy(m.sheenColor).multiplyScalar(m.sheen),p.sheenRoughness.value=m.sheenRoughness,m.sheenColorMap&&(p.sheenColorMap.value=m.sheenColorMap),m.sheenRoughnessMap&&(p.sheenRoughnessMap.value=m.sheenRoughnessMap)),m.clearcoat>0&&(p.clearcoat.value=m.clearcoat,p.clearcoatRoughness.value=m.clearcoatRoughness,m.clearcoatMap&&(p.clearcoatMap.value=m.clearcoatMap),m.clearcoatRoughnessMap&&(p.clearcoatRoughnessMap.value=m.clearcoatRoughnessMap),m.clearcoatNormalMap&&(p.clearcoatNormalScale.value.copy(m.clearcoatNormalScale),p.clearcoatNormalMap.value=m.clearcoatNormalMap,m.side===Hi&&p.clearcoatNormalScale.value.negate())),m.iridescence>0&&(p.iridescence.value=m.iridescence,p.iridescenceIOR.value=m.iridescenceIOR,p.iridescenceThicknessMinimum.value=m.iridescenceThicknessRange[0],p.iridescenceThicknessMaximum.value=m.iridescenceThicknessRange[1],m.iridescenceMap&&(p.iridescenceMap.value=m.iridescenceMap),m.iridescenceThicknessMap&&(p.iridescenceThicknessMap.value=m.iridescenceThicknessMap)),m.transmission>0&&(p.transmission.value=m.transmission,p.transmissionSamplerMap.value=b.texture,p.transmissionSamplerSize.value.set(b.width,b.height),m.transmissionMap&&(p.transmissionMap.value=m.transmissionMap),p.thickness.value=m.thickness,m.thicknessMap&&(p.thicknessMap.value=m.thicknessMap),p.attenuationDistance.value=m.attenuationDistance,p.attenuationColor.value.copy(m.attenuationColor)),p.specularIntensity.value=m.specularIntensity,p.specularColor.value.copy(m.specularColor),m.specularIntensityMap&&(p.specularIntensityMap.value=m.specularIntensityMap),m.specularColorMap&&(p.specularColorMap.value=m.specularColorMap)}function h(p,m){m.matcap&&(p.matcap.value=m.matcap)}function _(p,m){p.referencePosition.value.copy(m.referencePosition),p.nearDistance.value=m.nearDistance,p.farDistance.value=m.farDistance}return{refreshFogUniforms:n,refreshMaterialUniforms:s}}function dQ(){const t=eh("canvas");return t.style.display="block",t}function aR(t={}){this.isWebGLRenderer=!0;const e=t.canvas!==void 0?t.canvas:dQ(),n=t.context!==void 0?t.context:null,s=t.depth!==void 0?t.depth:!0,i=t.stencil!==void 0?t.stencil:!0,r=t.antialias!==void 0?t.antialias:!1,o=t.premultipliedAlpha!==void 0?t.premultipliedAlpha:!0,a=t.preserveDrawingBuffer!==void 0?t.preserveDrawingBuffer:!1,l=t.powerPreference!==void 0?t.powerPreference:"default",c=t.failIfMajorPerformanceCaveat!==void 0?t.failIfMajorPerformanceCaveat:!1;let u;n!==null?u=n.getContextAttributes().alpha:u=t.alpha!==void 0?t.alpha:!1;let d=null,f=null;const h=[],_=[];this.domElement=e,this.debug={checkShaderErrors:!0},this.autoClear=!0,this.autoClearColor=!0,this.autoClearDepth=!0,this.autoClearStencil=!0,this.sortObjects=!0,this.clippingPlanes=[],this.localClippingEnabled=!1,this.outputEncoding=Ul,this.physicallyCorrectLights=!1,this.toneMapping=uo,this.toneMappingExposure=1,Object.defineProperties(this,{gammaFactor:{get:function(){return console.warn("THREE.WebGLRenderer: .gammaFactor has been removed."),2},set:function(){console.warn("THREE.WebGLRenderer: .gammaFactor has been removed.")}}});const p=this;let m=!1,b=0,y=0,v=null,x=-1,S=null;const w=new Ht,T=new Ht;let E=null,A=e.width,O=e.height,I=1,B=null,U=null;const D=new Ht(0,0,A,O),$=new Ht(0,0,A,O);let F=!1;const H=new Uw;let j=!1,Z=!1,K=null;const oe=new Lt,Q=new Et,me=new ee,Me={background:null,fog:null,environment:null,overrideMaterial:null,isScene:!0};function Pe(){return v===null?I:1}let ie=n;function de(G,ce){for(let ve=0;ve0?f=_[_.length-1]:f=null,h.pop(),h.length>0?d=h[h.length-1]:d=null};function Fs(G,ce,ve,fe){if(G.visible===!1)return;if(G.layers.test(ce.layers)){if(G.isGroup)ve=G.renderOrder;else if(G.isLOD)G.autoUpdate===!0&&G.update(ce);else if(G.isLight)f.pushLight(G),G.castShadow&&f.pushShadow(G);else if(G.isSprite){if(!G.frustumCulled||H.intersectsSprite(G)){fe&&me.setFromMatrixPosition(G.matrixWorld).applyMatrix4(oe);const ht=Te.update(G),bt=G.material;bt.visible&&d.push(G,ht,bt,ve,me.z,null)}}else if((G.isMesh||G.isLine||G.isPoints)&&(G.isSkinnedMesh&&G.skeleton.frame!==He.render.frame&&(G.skeleton.update(),G.skeleton.frame=He.render.frame),!G.frustumCulled||H.intersectsObject(G))){fe&&me.setFromMatrixPosition(G.matrixWorld).applyMatrix4(oe);const ht=Te.update(G),bt=G.material;if(Array.isArray(bt)){const _t=ht.groups;for(let $t=0,At=_t.length;$t0&&yI(Ee,ce,ve),fe&&ge.viewport(w.copy(fe)),Ee.length>0&&Zh(Ee,ce,ve),it.length>0&&Zh(it,ce,ve),ht.length>0&&Zh(ht,ce,ve),ge.buffers.depth.setTest(!0),ge.buffers.depth.setMask(!0),ge.buffers.color.setMask(!0),ge.setPolygonOffset(!1)}function yI(G,ce,ve){const fe=we.isWebGL2;K===null&&(K=new Bl(1,1,{generateMipmaps:!0,type:Se.has("EXT_color_buffer_half_float")?Zf:$l,minFilter:ud,samples:fe&&r===!0?4:0})),p.getDrawingBufferSize(Q),fe?K.setSize(Q.x,Q.y):K.setSize(gg(Q.x),gg(Q.y));const Ee=p.getRenderTarget();p.setRenderTarget(K),p.clear();const it=p.toneMapping;p.toneMapping=uo,Zh(G,ce,ve),p.toneMapping=it,P.updateMultisampleRenderTarget(K),P.updateRenderTargetMipmap(K),p.setRenderTarget(Ee)}function Zh(G,ce,ve){const fe=ce.isScene===!0?ce.overrideMaterial:null;for(let Ee=0,it=G.length;Ee0&&P.useMultisampledRTT(G)===!1?Ee=Be.get(G).__webglMultisampledFramebuffer:Ee=$t,w.copy(G.viewport),T.copy(G.scissor),E=G.scissorTest}else w.copy(D).multiplyScalar(I).floor(),T.copy($).multiplyScalar(I).floor(),E=F;if(ge.bindFramebuffer(36160,Ee)&&we.drawBuffers&&fe&&ge.drawBuffers(G,Ee),ge.viewport(w),ge.scissor(T),ge.setScissorTest(E),it){const _t=Be.get(G.texture);ie.framebufferTexture2D(36160,36064,34069+ce,_t.__webglTexture,ve)}else if(ht){const _t=Be.get(G.texture),$t=ce||0;ie.framebufferTextureLayer(36160,36064,_t.__webglTexture,ve||0,$t)}x=-1},this.readRenderTargetPixels=function(G,ce,ve,fe,Ee,it,ht){if(!(G&&G.isWebGLRenderTarget)){console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.");return}let bt=Be.get(G).__webglFramebuffer;if(G.isWebGLCubeRenderTarget&&ht!==void 0&&(bt=bt[ht]),bt){ge.bindFramebuffer(36160,bt);try{const _t=G.texture,$t=_t.format,At=_t.type;if($t!==Ui&&re.convert($t)!==ie.getParameter(35739)){console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.");return}const Ct=At===Zf&&(Se.has("EXT_color_buffer_half_float")||we.isWebGL2&&Se.has("EXT_color_buffer_float"));if(At!==$l&&re.convert(At)!==ie.getParameter(35738)&&!(At===da&&(we.isWebGL2||Se.has("OES_texture_float")||Se.has("WEBGL_color_buffer_float")))&&!Ct){console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.");return}ce>=0&&ce<=G.width-fe&&ve>=0&&ve<=G.height-Ee&&ie.readPixels(ce,ve,fe,Ee,re.convert($t),re.convert(At),it)}finally{const _t=v!==null?Be.get(v).__webglFramebuffer:null;ge.bindFramebuffer(36160,_t)}}},this.copyFramebufferToTexture=function(G,ce,ve=0){const fe=Math.pow(2,-ve),Ee=Math.floor(ce.image.width*fe),it=Math.floor(ce.image.height*fe);P.setTexture2D(ce,0),ie.copyTexSubImage2D(3553,ve,0,0,G.x,G.y,Ee,it),ge.unbindTexture()},this.copyTextureToTexture=function(G,ce,ve,fe=0){const Ee=ce.image.width,it=ce.image.height,ht=re.convert(ve.format),bt=re.convert(ve.type);P.setTexture2D(ve,0),ie.pixelStorei(37440,ve.flipY),ie.pixelStorei(37441,ve.premultiplyAlpha),ie.pixelStorei(3317,ve.unpackAlignment),ce.isDataTexture?ie.texSubImage2D(3553,fe,G.x,G.y,Ee,it,ht,bt,ce.image.data):ce.isCompressedTexture?ie.compressedTexSubImage2D(3553,fe,G.x,G.y,ce.mipmaps[0].width,ce.mipmaps[0].height,ht,ce.mipmaps[0].data):ie.texSubImage2D(3553,fe,G.x,G.y,ht,bt,ce.image),fe===0&&ve.generateMipmaps&&ie.generateMipmap(3553),ge.unbindTexture()},this.copyTextureToTexture3D=function(G,ce,ve,fe,Ee=0){if(p.isWebGL1Renderer){console.warn("THREE.WebGLRenderer.copyTextureToTexture3D: can only be used with WebGL2.");return}const it=G.max.x-G.min.x+1,ht=G.max.y-G.min.y+1,bt=G.max.z-G.min.z+1,_t=re.convert(fe.format),$t=re.convert(fe.type);let At;if(fe.isData3DTexture)P.setTexture3D(fe,0),At=32879;else if(fe.isDataArrayTexture)P.setTexture2DArray(fe,0),At=35866;else{console.warn("THREE.WebGLRenderer.copyTextureToTexture3D: only supports THREE.DataTexture3D and THREE.DataTexture2DArray.");return}ie.pixelStorei(37440,fe.flipY),ie.pixelStorei(37441,fe.premultiplyAlpha),ie.pixelStorei(3317,fe.unpackAlignment);const Ct=ie.getParameter(3314),_n=ie.getParameter(32878),Ua=ie.getParameter(3316),rc=ie.getParameter(3315),oc=ie.getParameter(32877),tr=ve.isCompressedTexture?ve.mipmaps[0]:ve.image;ie.pixelStorei(3314,tr.width),ie.pixelStorei(32878,tr.height),ie.pixelStorei(3316,G.min.x),ie.pixelStorei(3315,G.min.y),ie.pixelStorei(32877,G.min.z),ve.isDataTexture||ve.isData3DTexture?ie.texSubImage3D(At,Ee,ce.x,ce.y,ce.z,it,ht,bt,_t,$t,tr.data):ve.isCompressedTexture?(console.warn("THREE.WebGLRenderer.copyTextureToTexture3D: untested support for compressed srcTexture."),ie.compressedTexSubImage3D(At,Ee,ce.x,ce.y,ce.z,it,ht,bt,_t,tr.data)):ie.texSubImage3D(At,Ee,ce.x,ce.y,ce.z,it,ht,bt,_t,$t,tr),ie.pixelStorei(3314,Ct),ie.pixelStorei(32878,_n),ie.pixelStorei(3316,Ua),ie.pixelStorei(3315,rc),ie.pixelStorei(32877,oc),Ee===0&&fe.generateMipmaps&&ie.generateMipmap(At),ge.unbindTexture()},this.initTexture=function(G){G.isCubeTexture?P.setTextureCube(G,0):G.isData3DTexture?P.setTexture3D(G,0):G.isDataArrayTexture?P.setTexture2DArray(G,0):P.setTexture2D(G,0),ge.unbindTexture()},this.resetState=function(){b=0,y=0,v=null,ge.reset(),_e.reset()},typeof __THREE_DEVTOOLS__<"u"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}class fQ extends aR{}fQ.prototype.isWebGL1Renderer=!0;class hQ extends kn{constructor(){super(),this.isScene=!0,this.type="Scene",this.background=null,this.environment=null,this.fog=null,this.overrideMaterial=null,this.autoUpdate=!0,typeof __THREE_DEVTOOLS__<"u"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}copy(e,n){return super.copy(e,n),e.background!==null&&(this.background=e.background.clone()),e.environment!==null&&(this.environment=e.environment.clone()),e.fog!==null&&(this.fog=e.fog.clone()),e.overrideMaterial!==null&&(this.overrideMaterial=e.overrideMaterial.clone()),this.autoUpdate=e.autoUpdate,this.matrixAutoUpdate=e.matrixAutoUpdate,this}toJSON(e){const n=super.toJSON(e);return this.fog!==null&&(n.object.fog=this.fog.toJSON()),n}}class pQ{constructor(e,n){this.isInterleavedBuffer=!0,this.array=e,this.stride=n,this.count=e!==void 0?e.length/n:0,this.usage=ry,this.updateRange={offset:0,count:-1},this.version=0,this.uuid=Vi()}onUploadCallback(){}set needsUpdate(e){e===!0&&this.version++}setUsage(e){return this.usage=e,this}copy(e){return this.array=new e.array.constructor(e.array),this.count=e.count,this.stride=e.stride,this.usage=e.usage,this}copyAt(e,n,s){e*=this.stride,s*=n.stride;for(let i=0,r=this.stride;il)continue;f.applyMatrix4(this.matrixWorld);const E=e.ray.origin.distanceTo(f);Ee.far||n.push({distance:E,point:d.clone().applyMatrix4(this.matrixWorld),index:v,face:null,faceIndex:null,object:this})}}else{const b=Math.max(0,o.start),y=Math.min(m.count,o.start+o.count);for(let v=b,x=y-1;vl)continue;f.applyMatrix4(this.matrixWorld);const w=e.ray.origin.distanceTo(f);we.far||n.push({distance:w,point:d.clone().applyMatrix4(this.matrixWorld),index:v,face:null,faceIndex:null,object:this})}}}updateMorphTargets(){const n=this.geometry.morphAttributes,s=Object.keys(n);if(s.length>0){const i=n[s[0]];if(i!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let r=0,o=i.length;r0){const i=n[s[0]];if(i!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let r=0,o=i.length;ri.far)return;r.push({distance:c,distanceToRay:Math.sqrt(a),point:l,index:e,face:null,object:o})}}class H_ extends wr{constructor(e){super(),this.isMeshStandardMaterial=!0,this.defines={STANDARD:""},this.type="MeshStandardMaterial",this.color=new at(16777215),this.roughness=1,this.metalness=0,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new at(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Fw,this.normalScale=new Et(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.roughnessMap=null,this.metalnessMap=null,this.alphaMap=null,this.envMap=null,this.envMapIntensity=1,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.flatShading=!1,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.defines={STANDARD:""},this.color.copy(e.color),this.roughness=e.roughness,this.metalness=e.metalness,this.map=e.map,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.emissive.copy(e.emissive),this.emissiveMap=e.emissiveMap,this.emissiveIntensity=e.emissiveIntensity,this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.roughnessMap=e.roughnessMap,this.metalnessMap=e.metalnessMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,this.envMapIntensity=e.envMapIntensity,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.flatShading=e.flatShading,this.fog=e.fog,this}}class nc extends H_{constructor(e){super(),this.isMeshPhysicalMaterial=!0,this.defines={STANDARD:"",PHYSICAL:""},this.type="MeshPhysicalMaterial",this.clearcoatMap=null,this.clearcoatRoughness=0,this.clearcoatRoughnessMap=null,this.clearcoatNormalScale=new Et(1,1),this.clearcoatNormalMap=null,this.ior=1.5,Object.defineProperty(this,"reflectivity",{get:function(){return bs(2.5*(this.ior-1)/(this.ior+1),0,1)},set:function(n){this.ior=(1+.4*n)/(1-.4*n)}}),this.iridescenceMap=null,this.iridescenceIOR=1.3,this.iridescenceThicknessRange=[100,400],this.iridescenceThicknessMap=null,this.sheenColor=new at(0),this.sheenColorMap=null,this.sheenRoughness=1,this.sheenRoughnessMap=null,this.transmissionMap=null,this.thickness=0,this.thicknessMap=null,this.attenuationDistance=0,this.attenuationColor=new at(1,1,1),this.specularIntensity=1,this.specularIntensityMap=null,this.specularColor=new at(1,1,1),this.specularColorMap=null,this._sheen=0,this._clearcoat=0,this._iridescence=0,this._transmission=0,this.setValues(e)}get sheen(){return this._sheen}set sheen(e){this._sheen>0!=e>0&&this.version++,this._sheen=e}get clearcoat(){return this._clearcoat}set clearcoat(e){this._clearcoat>0!=e>0&&this.version++,this._clearcoat=e}get iridescence(){return this._iridescence}set iridescence(e){this._iridescence>0!=e>0&&this.version++,this._iridescence=e}get transmission(){return this._transmission}set transmission(e){this._transmission>0!=e>0&&this.version++,this._transmission=e}copy(e){return super.copy(e),this.defines={STANDARD:"",PHYSICAL:""},this.clearcoat=e.clearcoat,this.clearcoatMap=e.clearcoatMap,this.clearcoatRoughness=e.clearcoatRoughness,this.clearcoatRoughnessMap=e.clearcoatRoughnessMap,this.clearcoatNormalMap=e.clearcoatNormalMap,this.clearcoatNormalScale.copy(e.clearcoatNormalScale),this.ior=e.ior,this.iridescence=e.iridescence,this.iridescenceMap=e.iridescenceMap,this.iridescenceIOR=e.iridescenceIOR,this.iridescenceThicknessRange=[...e.iridescenceThicknessRange],this.iridescenceThicknessMap=e.iridescenceThicknessMap,this.sheen=e.sheen,this.sheenColor.copy(e.sheenColor),this.sheenColorMap=e.sheenColorMap,this.sheenRoughness=e.sheenRoughness,this.sheenRoughnessMap=e.sheenRoughnessMap,this.transmission=e.transmission,this.transmissionMap=e.transmissionMap,this.thickness=e.thickness,this.thicknessMap=e.thicknessMap,this.attenuationDistance=e.attenuationDistance,this.attenuationColor.copy(e.attenuationColor),this.specularIntensity=e.specularIntensity,this.specularIntensityMap=e.specularIntensityMap,this.specularColor.copy(e.specularColor),this.specularColorMap=e.specularColorMap,this}}const dn={arraySlice:function(t,e,n){return dn.isTypedArray(t)?new t.constructor(t.subarray(e,n!==void 0?n:t.length)):t.slice(e,n)},convertArray:function(t,e,n){return!t||!n&&t.constructor===e?t:typeof e.BYTES_PER_ELEMENT=="number"?new e(t):Array.prototype.slice.call(t)},isTypedArray:function(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)},getKeyframeOrder:function(t){function e(i,r){return t[i]-t[r]}const n=t.length,s=new Array(n);for(let i=0;i!==n;++i)s[i]=i;return s.sort(e),s},sortedArray:function(t,e,n){const s=t.length,i=new t.constructor(s);for(let r=0,o=0;o!==s;++r){const a=n[r]*e;for(let l=0;l!==e;++l)i[o++]=t[a+l]}return i},flattenJSON:function(t,e,n,s){let i=1,r=t[0];for(;r!==void 0&&r[s]===void 0;)r=t[i++];if(r===void 0)return;let o=r[s];if(o!==void 0)if(Array.isArray(o))do o=r[s],o!==void 0&&(e.push(r.time),n.push.apply(n,o)),r=t[i++];while(r!==void 0);else if(o.toArray!==void 0)do o=r[s],o!==void 0&&(e.push(r.time),o.toArray(n,n.length)),r=t[i++];while(r!==void 0);else do o=r[s],o!==void 0&&(e.push(r.time),n.push(o)),r=t[i++];while(r!==void 0)},subclip:function(t,e,n,s,i=30){const r=t.clone();r.name=e;const o=[];for(let l=0;l=s)){d.push(c.times[h]);for(let p=0;pr.tracks[l].times[0]&&(a=r.tracks[l].times[0]);for(let l=0;l=a.times[_]){const b=_*d+u,y=b+d-u;p=dn.arraySlice(a.values,b,y)}else{const b=a.createInterpolant(),y=u,v=d-u;b.evaluate(r),p=dn.arraySlice(b.resultBuffer,y,v)}l==="quaternion"&&new Mr().fromArray(p).normalize().conjugate().toArray(p);const m=c.times.length;for(let b=0;b=r)){const a=n[1];e=r)break t}o=s,s=0;break n}break e}for(;s>>1;en;)--o;if(++o,r!==0||o!==i){r>=o&&(o=Math.max(o,1),r=o-1);const a=this.getValueSize();this.times=dn.arraySlice(s,r,o),this.values=dn.arraySlice(this.values,r*a,o*a)}return this}validate(){let e=!0;const n=this.getValueSize();n-Math.floor(n)!==0&&(console.error("THREE.KeyframeTrack: Invalid value size in track.",this),e=!1);const s=this.times,i=this.values,r=s.length;r===0&&(console.error("THREE.KeyframeTrack: Track is empty.",this),e=!1);let o=null;for(let a=0;a!==r;a++){const l=s[a];if(typeof l=="number"&&isNaN(l)){console.error("THREE.KeyframeTrack: Time is not a valid number.",this,a,l),e=!1;break}if(o!==null&&o>l){console.error("THREE.KeyframeTrack: Out of order keys.",this,a,l,o),e=!1;break}o=l}if(i!==void 0&&dn.isTypedArray(i))for(let a=0,l=i.length;a!==l;++a){const c=i[a];if(isNaN(c)){console.error("THREE.KeyframeTrack: Value is not a valid number.",this,a,c),e=!1;break}}return e}optimize(){const e=dn.arraySlice(this.times),n=dn.arraySlice(this.values),s=this.getValueSize(),i=this.getInterpolation()===i1,r=e.length-1;let o=1;for(let a=1;a0){e[o]=e[r];for(let a=r*s,l=o*s,c=0;c!==s;++c)n[l+c]=n[a+c];++o}return o!==e.length?(this.times=dn.arraySlice(e,0,o),this.values=dn.arraySlice(n,0,o*s)):(this.times=e,this.values=n),this}clone(){const e=dn.arraySlice(this.times,0),n=dn.arraySlice(this.values,0),s=this.constructor,i=new s(this.name,e,n);return i.createInterpolant=this.createInterpolant,i}}Ir.prototype.TimeBufferType=Float32Array;Ir.prototype.ValueBufferType=Float32Array;Ir.prototype.DefaultInterpolation=Uu;class gd extends Ir{}gd.prototype.ValueTypeName="bool";gd.prototype.ValueBufferType=Array;gd.prototype.DefaultInterpolation=Jf;gd.prototype.InterpolantFactoryMethodLinear=void 0;gd.prototype.InterpolantFactoryMethodSmooth=void 0;class dR extends Ir{}dR.prototype.ValueTypeName="color";class th extends Ir{}th.prototype.ValueTypeName="number";class TQ extends Nh{constructor(e,n,s,i){super(e,n,s,i)}interpolate_(e,n,s,i){const r=this.resultBuffer,o=this.sampleValues,a=this.valueSize,l=(s-n)/(i-n);let c=e*a;for(let u=c+a;c!==u;c+=4)Mr.slerpFlat(r,0,o,c-a,o,c,l);return r}}class zl extends Ir{InterpolantFactoryMethodLinear(e){return new TQ(this.times,this.values,this.getValueSize(),e)}}zl.prototype.ValueTypeName="quaternion";zl.prototype.DefaultInterpolation=Uu;zl.prototype.InterpolantFactoryMethodSmooth=void 0;class _d extends Ir{}_d.prototype.ValueTypeName="string";_d.prototype.ValueBufferType=Array;_d.prototype.DefaultInterpolation=Jf;_d.prototype.InterpolantFactoryMethodLinear=void 0;_d.prototype.InterpolantFactoryMethodSmooth=void 0;class nh extends Ir{}nh.prototype.ValueTypeName="vector";class AQ{constructor(e,n=-1,s,i=Kq){this.name=e,this.tracks=s,this.duration=n,this.blendMode=i,this.uuid=Vi(),this.duration<0&&this.resetDuration()}static parse(e){const n=[],s=e.tracks,i=1/(e.fps||1);for(let o=0,a=s.length;o!==a;++o)n.push(kQ(s[o]).scale(i));const r=new this(e.name,e.duration,n,e.blendMode);return r.uuid=e.uuid,r}static toJSON(e){const n=[],s=e.tracks,i={name:e.name,duration:e.duration,tracks:n,uuid:e.uuid,blendMode:e.blendMode};for(let r=0,o=s.length;r!==o;++r)n.push(Ir.toJSON(s[r]));return i}static CreateFromMorphTargetSequence(e,n,s,i){const r=n.length,o=[];for(let a=0;a1){const d=u[1];let f=i[d];f||(i[d]=f=[]),f.push(c)}}const o=[];for(const a in i)o.push(this.CreateFromMorphTargetSequence(a,i[a],n,s));return o}static parseAnimation(e,n){if(!e)return console.error("THREE.AnimationClip: No animation in JSONLoader data."),null;const s=function(d,f,h,_,p){if(h.length!==0){const m=[],b=[];dn.flattenJSON(h,m,b,_),m.length!==0&&p.push(new d(f,m,b))}},i=[],r=e.name||"default",o=e.fps||30,a=e.blendMode;let l=e.length||-1;const c=e.hierarchy||[];for(let d=0;d{n&&n(r),this.manager.itemEnd(e)},0),r;if(Br[e]!==void 0){Br[e].push({onLoad:n,onProgress:s,onError:i});return}Br[e]=[],Br[e].push({onLoad:n,onProgress:s,onError:i});const o=new Request(e,{headers:new Headers(this.requestHeader),credentials:this.withCredentials?"include":"same-origin"}),a=this.mimeType,l=this.responseType;fetch(o).then(c=>{if(c.status===200||c.status===0){if(c.status===0&&console.warn("THREE.FileLoader: HTTP Status 0 received."),typeof ReadableStream>"u"||c.body===void 0||c.body.getReader===void 0)return c;const u=Br[e],d=c.body.getReader(),f=c.headers.get("Content-Length"),h=f?parseInt(f):0,_=h!==0;let p=0;const m=new ReadableStream({start(b){y();function y(){d.read().then(({done:v,value:x})=>{if(v)b.close();else{p+=x.byteLength;const S=new ProgressEvent("progress",{lengthComputable:_,loaded:p,total:h});for(let w=0,T=u.length;w{switch(l){case"arraybuffer":return c.arrayBuffer();case"blob":return c.blob();case"document":return c.text().then(u=>new DOMParser().parseFromString(u,a));case"json":return c.json();default:if(a===void 0)return c.text();{const d=/charset="?([^;"\s]*)"?/i.exec(a),f=d&&d[1]?d[1].toLowerCase():void 0,h=new TextDecoder(f);return c.arrayBuffer().then(_=>h.decode(_))}}}).then(c=>{Gu.add(e,c);const u=Br[e];delete Br[e];for(let d=0,f=u.length;d{const u=Br[e];if(u===void 0)throw this.manager.itemError(e),c;delete Br[e];for(let d=0,f=u.length;d{this.manager.itemEnd(e)}),this.manager.itemStart(e)}setResponseType(e){return this.responseType=e,this}setMimeType(e){return this.mimeType=e,this}}class OQ extends $h{constructor(e){super(e)}load(e,n,s,i){this.path!==void 0&&(e=this.path+e),e=this.manager.resolveURL(e);const r=this,o=Gu.get(e);if(o!==void 0)return r.manager.itemStart(e),setTimeout(function(){n&&n(o),r.manager.itemEnd(e)},0),o;const a=eh("img");function l(){u(),Gu.add(e,this),n&&n(this),r.manager.itemEnd(e)}function c(d){u(),i&&i(d),r.manager.itemError(e),r.manager.itemEnd(e)}function u(){a.removeEventListener("load",l,!1),a.removeEventListener("error",c,!1)}return a.addEventListener("load",l,!1),a.addEventListener("error",c,!1),e.slice(0,5)!=="data:"&&this.crossOrigin!==void 0&&(a.crossOrigin=this.crossOrigin),r.manager.itemStart(e),a.src=e,a}}class IQ extends $h{constructor(e){super(e)}load(e,n,s,i){const r=new ws,o=new OQ(this.manager);return o.setCrossOrigin(this.crossOrigin),o.setPath(this.path),o.load(e,function(a){r.image=a,r.needsUpdate=!0,n!==void 0&&n(r)},s,i),r}}class V_ extends kn{constructor(e,n=1){super(),this.isLight=!0,this.type="Light",this.color=new at(e),this.intensity=n}dispose(){}copy(e,n){return super.copy(e,n),this.color.copy(e.color),this.intensity=e.intensity,this}toJSON(e){const n=super.toJSON(e);return n.object.color=this.color.getHex(),n.object.intensity=this.intensity,this.groundColor!==void 0&&(n.object.groundColor=this.groundColor.getHex()),this.distance!==void 0&&(n.object.distance=this.distance),this.angle!==void 0&&(n.object.angle=this.angle),this.decay!==void 0&&(n.object.decay=this.decay),this.penumbra!==void 0&&(n.object.penumbra=this.penumbra),this.shadow!==void 0&&(n.object.shadow=this.shadow.toJSON()),n}}class LQ extends V_{constructor(e,n,s){super(e,s),this.isHemisphereLight=!0,this.type="HemisphereLight",this.position.copy(kn.DefaultUp),this.updateMatrix(),this.groundColor=new at(n)}copy(e,n){return super.copy(e,n),this.groundColor.copy(e.groundColor),this}}const x3=new Lt,S3=new ee,E3=new ee;class jw{constructor(e){this.camera=e,this.bias=0,this.normalBias=0,this.radius=1,this.blurSamples=8,this.mapSize=new Et(512,512),this.map=null,this.mapPass=null,this.matrix=new Lt,this.autoUpdate=!0,this.needsUpdate=!1,this._frustum=new Uw,this._frameExtents=new Et(1,1),this._viewportCount=1,this._viewports=[new Ht(0,0,1,1)]}getViewportCount(){return this._viewportCount}getFrustum(){return this._frustum}updateMatrices(e){const n=this.camera,s=this.matrix;S3.setFromMatrixPosition(e.matrixWorld),n.position.copy(S3),E3.setFromMatrixPosition(e.target.matrixWorld),n.lookAt(E3),n.updateMatrixWorld(),x3.multiplyMatrices(n.projectionMatrix,n.matrixWorldInverse),this._frustum.setFromProjectionMatrix(x3),s.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1),s.multiply(n.projectionMatrix),s.multiply(n.matrixWorldInverse)}getViewport(e){return this._viewports[e]}getFrameExtents(){return this._frameExtents}dispose(){this.map&&this.map.dispose(),this.mapPass&&this.mapPass.dispose()}copy(e){return this.camera=e.camera.clone(),this.bias=e.bias,this.radius=e.radius,this.mapSize.copy(e.mapSize),this}clone(){return new this.constructor().copy(this)}toJSON(){const e={};return this.bias!==0&&(e.bias=this.bias),this.normalBias!==0&&(e.normalBias=this.normalBias),this.radius!==1&&(e.radius=this.radius),(this.mapSize.x!==512||this.mapSize.y!==512)&&(e.mapSize=this.mapSize.toArray()),e.camera=this.camera.toJSON(!1).object,delete e.camera.matrix,e}}class PQ extends jw{constructor(){super(new ys(50,1,.5,500)),this.isSpotLightShadow=!0,this.focus=1}updateMatrices(e){const n=this.camera,s=Qf*2*e.angle*this.focus,i=this.mapSize.width/this.mapSize.height,r=e.distance||n.far;(s!==n.fov||i!==n.aspect||r!==n.far)&&(n.fov=s,n.aspect=i,n.far=r,n.updateProjectionMatrix()),super.updateMatrices(e)}copy(e){return super.copy(e),this.focus=e.focus,this}}class DQ extends V_{constructor(e,n,s=0,i=Math.PI/3,r=0,o=1){super(e,n),this.isSpotLight=!0,this.type="SpotLight",this.position.copy(kn.DefaultUp),this.updateMatrix(),this.target=new kn,this.distance=s,this.angle=i,this.penumbra=r,this.decay=o,this.shadow=new PQ}get power(){return this.intensity*Math.PI}set power(e){this.intensity=e/Math.PI}dispose(){this.shadow.dispose()}copy(e,n){return super.copy(e,n),this.distance=e.distance,this.angle=e.angle,this.penumbra=e.penumbra,this.decay=e.decay,this.target=e.target.clone(),this.shadow=e.shadow.clone(),this}}const T3=new Lt,$d=new ee,L1=new ee;class FQ extends jw{constructor(){super(new ys(90,1,.5,500)),this.isPointLightShadow=!0,this._frameExtents=new Et(4,2),this._viewportCount=6,this._viewports=[new Ht(2,1,1,1),new Ht(0,1,1,1),new Ht(3,1,1,1),new Ht(1,1,1,1),new Ht(3,0,1,1),new Ht(1,0,1,1)],this._cubeDirections=[new ee(1,0,0),new ee(-1,0,0),new ee(0,0,1),new ee(0,0,-1),new ee(0,1,0),new ee(0,-1,0)],this._cubeUps=[new ee(0,1,0),new ee(0,1,0),new ee(0,1,0),new ee(0,1,0),new ee(0,0,1),new ee(0,0,-1)]}updateMatrices(e,n=0){const s=this.camera,i=this.matrix,r=e.distance||s.far;r!==s.far&&(s.far=r,s.updateProjectionMatrix()),$d.setFromMatrixPosition(e.matrixWorld),s.position.copy($d),L1.copy(s.position),L1.add(this._cubeDirections[n]),s.up.copy(this._cubeUps[n]),s.lookAt(L1),s.updateMatrixWorld(),i.makeTranslation(-$d.x,-$d.y,-$d.z),T3.multiplyMatrices(s.projectionMatrix,s.matrixWorldInverse),this._frustum.setFromProjectionMatrix(T3)}}class NQ extends V_{constructor(e,n,s=0,i=1){super(e,n),this.isPointLight=!0,this.type="PointLight",this.distance=s,this.decay=i,this.shadow=new FQ}get power(){return this.intensity*4*Math.PI}set power(e){this.intensity=e/(4*Math.PI)}dispose(){this.shadow.dispose()}copy(e,n){return super.copy(e,n),this.distance=e.distance,this.decay=e.decay,this.shadow=e.shadow.clone(),this}}class $Q extends jw{constructor(){super(new Gw(-5,5,5,-5,.5,500)),this.isDirectionalLightShadow=!0}}class hR extends V_{constructor(e,n){super(e,n),this.isDirectionalLight=!0,this.type="DirectionalLight",this.position.copy(kn.DefaultUp),this.updateMatrix(),this.target=new kn,this.shadow=new $Q}dispose(){this.shadow.dispose()}copy(e){return super.copy(e),this.target=e.target.clone(),this.shadow=e.shadow.clone(),this}}class Ol{static decodeText(e){if(typeof TextDecoder<"u")return new TextDecoder().decode(e);let n="";for(let s=0,i=e.length;s"u"&&console.warn("THREE.ImageBitmapLoader: createImageBitmap() not supported."),typeof fetch>"u"&&console.warn("THREE.ImageBitmapLoader: fetch() not supported."),this.options={premultiplyAlpha:"none"}}setOptions(e){return this.options=e,this}load(e,n,s,i){e===void 0&&(e=""),this.path!==void 0&&(e=this.path+e),e=this.manager.resolveURL(e);const r=this,o=Gu.get(e);if(o!==void 0)return r.manager.itemStart(e),setTimeout(function(){n&&n(o),r.manager.itemEnd(e)},0),o;const a={};a.credentials=this.crossOrigin==="anonymous"?"same-origin":"include",a.headers=this.requestHeader,fetch(e,a).then(function(l){return l.blob()}).then(function(l){return createImageBitmap(l,Object.assign(r.options,{colorSpaceConversion:"none"}))}).then(function(l){Gu.add(e,l),n&&n(l),r.manager.itemEnd(e)}).catch(function(l){i&&i(l),r.manager.itemError(e),r.manager.itemEnd(e)}),r.manager.itemStart(e)}}const qw="\\[\\]\\.:\\/",BQ=new RegExp("["+qw+"]","g"),Yw="[^"+qw+"]",GQ="[^"+qw.replace("\\.","")+"]",zQ=/((?:WC+[\/:])*)/.source.replace("WC",Yw),HQ=/(WCOD+)?/.source.replace("WCOD",GQ),VQ=/(?:\.(WC+)(?:\[(.+)\])?)?/.source.replace("WC",Yw),WQ=/\.(WC+)(?:\[(.+)\])?/.source.replace("WC",Yw),jQ=new RegExp("^"+zQ+HQ+VQ+WQ+"$"),qQ=["material","materials","bones"];class YQ{constructor(e,n,s){const i=s||Gt.parseTrackName(n);this._targetGroup=e,this._bindings=e.subscribe_(n,i)}getValue(e,n){this.bind();const s=this._targetGroup.nCachedObjects_,i=this._bindings[s];i!==void 0&&i.getValue(e,n)}setValue(e,n){const s=this._bindings;for(let i=this._targetGroup.nCachedObjects_,r=s.length;i!==r;++i)s[i].setValue(e,n)}bind(){const e=this._bindings;for(let n=this._targetGroup.nCachedObjects_,s=e.length;n!==s;++n)e[n].bind()}unbind(){const e=this._bindings;for(let n=this._targetGroup.nCachedObjects_,s=e.length;n!==s;++n)e[n].unbind()}}class Gt{constructor(e,n,s){this.path=n,this.parsedPath=s||Gt.parseTrackName(n),this.node=Gt.findNode(e,this.parsedPath.nodeName)||e,this.rootNode=e,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}static create(e,n,s){return e&&e.isAnimationObjectGroup?new Gt.Composite(e,n,s):new Gt(e,n,s)}static sanitizeNodeName(e){return e.replace(/\s/g,"_").replace(BQ,"")}static parseTrackName(e){const n=jQ.exec(e);if(n===null)throw new Error("PropertyBinding: Cannot parse trackName: "+e);const s={nodeName:n[2],objectName:n[3],objectIndex:n[4],propertyName:n[5],propertyIndex:n[6]},i=s.nodeName&&s.nodeName.lastIndexOf(".");if(i!==void 0&&i!==-1){const r=s.nodeName.substring(i+1);qQ.indexOf(r)!==-1&&(s.nodeName=s.nodeName.substring(0,i),s.objectName=r)}if(s.propertyName===null||s.propertyName.length===0)throw new Error("PropertyBinding: can not parse propertyName from trackName: "+e);return s}static findNode(e,n){if(n===void 0||n===""||n==="."||n===-1||n===e.name||n===e.uuid)return e;if(e.skeleton){const s=e.skeleton.getBoneByName(n);if(s!==void 0)return s}if(e.children){const s=function(r){for(let o=0;o=2.0 are supported."));return}const c=new See(l,{path:n||this.resourcePath||"",crossOrigin:this.crossOrigin,requestHeader:this.requestHeader,manager:this.manager,ktx2Loader:this.ktx2Loader,meshoptDecoder:this.meshoptDecoder});c.fileLoader.setRequestHeader(this.requestHeader);for(let u=0;u=0&&a[d]===void 0&&console.warn('THREE.GLTFLoader: Unknown extension "'+d+'".')}}c.setExtensions(o),c.setPlugins(a),c.parse(s,i)}parseAsync(e,n){const s=this;return new Promise(function(i,r){s.parse(e,n,i,r)})}}function XQ(){let t={};return{get:function(e){return t[e]},add:function(e,n){t[e]=n},remove:function(e){delete t[e]},removeAll:function(){t={}}}}const vt={KHR_BINARY_GLTF:"KHR_binary_glTF",KHR_DRACO_MESH_COMPRESSION:"KHR_draco_mesh_compression",KHR_LIGHTS_PUNCTUAL:"KHR_lights_punctual",KHR_MATERIALS_CLEARCOAT:"KHR_materials_clearcoat",KHR_MATERIALS_IOR:"KHR_materials_ior",KHR_MATERIALS_PBR_SPECULAR_GLOSSINESS:"KHR_materials_pbrSpecularGlossiness",KHR_MATERIALS_SHEEN:"KHR_materials_sheen",KHR_MATERIALS_SPECULAR:"KHR_materials_specular",KHR_MATERIALS_TRANSMISSION:"KHR_materials_transmission",KHR_MATERIALS_IRIDESCENCE:"KHR_materials_iridescence",KHR_MATERIALS_UNLIT:"KHR_materials_unlit",KHR_MATERIALS_VOLUME:"KHR_materials_volume",KHR_TEXTURE_BASISU:"KHR_texture_basisu",KHR_TEXTURE_TRANSFORM:"KHR_texture_transform",KHR_MESH_QUANTIZATION:"KHR_mesh_quantization",KHR_MATERIALS_EMISSIVE_STRENGTH:"KHR_materials_emissive_strength",EXT_TEXTURE_WEBP:"EXT_texture_webp",EXT_MESHOPT_COMPRESSION:"EXT_meshopt_compression"};class ZQ{constructor(e){this.parser=e,this.name=vt.KHR_LIGHTS_PUNCTUAL,this.cache={refs:{},uses:{}}}_markDefs(){const e=this.parser,n=this.parser.json.nodes||[];for(let s=0,i=n.length;s=0)throw new Error("THREE.GLTFLoader: setKTX2Loader must be called before loading KTX2 textures");return null}return n.loadTextureImage(e,r.source,o)}}class lee{constructor(e){this.parser=e,this.name=vt.EXT_TEXTURE_WEBP,this.isSupported=null}loadTexture(e){const n=this.name,s=this.parser,i=s.json,r=i.textures[e];if(!r.extensions||!r.extensions[n])return null;const o=r.extensions[n],a=i.images[o.source];let l=s.textureLoader;if(a.uri){const c=s.options.manager.getHandler(a.uri);c!==null&&(l=c)}return this.detectSupport().then(function(c){if(c)return s.loadTextureImage(e,o.source,l);if(i.extensionsRequired&&i.extensionsRequired.indexOf(n)>=0)throw new Error("THREE.GLTFLoader: WebP required by asset but unsupported.");return s.loadTexture(e)})}detectSupport(){return this.isSupported||(this.isSupported=new Promise(function(e){const n=new Image;n.src="data:image/webp;base64,UklGRiIAAABXRUJQVlA4IBYAAAAwAQCdASoBAAEADsD+JaQAA3AAAAAA",n.onload=n.onerror=function(){e(n.height===1)}})),this.isSupported}}class cee{constructor(e){this.name=vt.EXT_MESHOPT_COMPRESSION,this.parser=e}loadBufferView(e){const n=this.parser.json,s=n.bufferViews[e];if(s.extensions&&s.extensions[this.name]){const i=s.extensions[this.name],r=this.parser.getDependency("buffer",i.buffer),o=this.parser.options.meshoptDecoder;if(!o||!o.supported){if(n.extensionsRequired&&n.extensionsRequired.indexOf(this.name)>=0)throw new Error("THREE.GLTFLoader: setMeshoptDecoder must be called before loading compressed files");return null}return Promise.all([r,o.ready]).then(function(a){const l=i.byteOffset||0,c=i.byteLength||0,u=i.count,d=i.byteStride,f=new ArrayBuffer(u*d),h=new Uint8Array(a[0],l,c);return o.decodeGltfBuffer(new Uint8Array(f),u,d,h,i.mode,i.filter),f})}else return null}}const pR="glTF",Ud=12,A3={JSON:1313821514,BIN:5130562};class uee{constructor(e){this.name=vt.KHR_BINARY_GLTF,this.content=null,this.body=null;const n=new DataView(e,0,Ud);if(this.header={magic:Ol.decodeText(new Uint8Array(e.slice(0,4))),version:n.getUint32(4,!0),length:n.getUint32(8,!0)},this.header.magic!==pR)throw new Error("THREE.GLTFLoader: Unsupported glTF-Binary header.");if(this.header.version<2)throw new Error("THREE.GLTFLoader: Legacy binary file detected.");const s=this.header.length-Ud,i=new DataView(e,Ud);let r=0;for(;r",n).replace("#include ",s).replace("#include ",i).replace("#include ",r).replace("#include ",o)},Object.defineProperties(this,{specular:{get:function(){return a.specular.value},set:function(l){a.specular.value=l}},specularMap:{get:function(){return a.specularMap.value},set:function(l){a.specularMap.value=l,l?this.defines.USE_SPECULARMAP="":delete this.defines.USE_SPECULARMAP}},glossiness:{get:function(){return a.glossiness.value},set:function(l){a.glossiness.value=l}},glossinessMap:{get:function(){return a.glossinessMap.value},set:function(l){a.glossinessMap.value=l,l?(this.defines.USE_GLOSSINESSMAP="",this.defines.USE_UV=""):(delete this.defines.USE_GLOSSINESSMAP,delete this.defines.USE_UV)}}}),delete this.metalness,delete this.roughness,delete this.metalnessMap,delete this.roughnessMap,this.setValues(e)}copy(e){return super.copy(e),this.specularMap=e.specularMap,this.specular.copy(e.specular),this.glossinessMap=e.glossinessMap,this.glossiness=e.glossiness,delete this.metalness,delete this.roughness,delete this.metalnessMap,delete this.roughnessMap,this}}class hee{constructor(){this.name=vt.KHR_MATERIALS_PBR_SPECULAR_GLOSSINESS,this.specularGlossinessParams=["color","map","lightMap","lightMapIntensity","aoMap","aoMapIntensity","emissive","emissiveIntensity","emissiveMap","bumpMap","bumpScale","normalMap","normalMapType","displacementMap","displacementScale","displacementBias","specularMap","specular","glossinessMap","glossiness","alphaMap","envMap","envMapIntensity"]}getMaterialType(){return uy}extendParams(e,n,s){const i=n.extensions[this.name];e.color=new at(1,1,1),e.opacity=1;const r=[];if(Array.isArray(i.diffuseFactor)){const o=i.diffuseFactor;e.color.fromArray(o),e.opacity=o[3]}if(i.diffuseTexture!==void 0&&r.push(s.assignTexture(e,"map",i.diffuseTexture,Ut)),e.emissive=new at(0,0,0),e.glossiness=i.glossinessFactor!==void 0?i.glossinessFactor:1,e.specular=new at(1,1,1),Array.isArray(i.specularFactor)&&e.specular.fromArray(i.specularFactor),i.specularGlossinessTexture!==void 0){const o=i.specularGlossinessTexture;r.push(s.assignTexture(e,"glossinessMap",o)),r.push(s.assignTexture(e,"specularMap",o,Ut))}return Promise.all(r)}createMaterial(e){const n=new uy(e);return n.fog=!0,n.color=e.color,n.map=e.map===void 0?null:e.map,n.lightMap=null,n.lightMapIntensity=1,n.aoMap=e.aoMap===void 0?null:e.aoMap,n.aoMapIntensity=1,n.emissive=e.emissive,n.emissiveIntensity=e.emissiveIntensity===void 0?1:e.emissiveIntensity,n.emissiveMap=e.emissiveMap===void 0?null:e.emissiveMap,n.bumpMap=e.bumpMap===void 0?null:e.bumpMap,n.bumpScale=1,n.normalMap=e.normalMap===void 0?null:e.normalMap,n.normalMapType=Fw,e.normalScale&&(n.normalScale=e.normalScale),n.displacementMap=null,n.displacementScale=1,n.displacementBias=0,n.specularMap=e.specularMap===void 0?null:e.specularMap,n.specular=e.specular,n.glossinessMap=e.glossinessMap===void 0?null:e.glossinessMap,n.glossiness=e.glossiness,n.alphaMap=null,n.envMap=e.envMap===void 0?null:e.envMap,n.envMapIntensity=1,n}}class pee{constructor(){this.name=vt.KHR_MESH_QUANTIZATION}}class mR extends Nh{constructor(e,n,s,i){super(e,n,s,i)}copySampleValue_(e){const n=this.resultBuffer,s=this.sampleValues,i=this.valueSize,r=e*i*3+i;for(let o=0;o!==i;o++)n[o]=s[r+o];return n}interpolate_(e,n,s,i){const r=this.resultBuffer,o=this.sampleValues,a=this.valueSize,l=a*2,c=a*3,u=i-n,d=(s-n)/u,f=d*d,h=f*d,_=e*c,p=_-c,m=-2*h+3*f,b=h-f,y=1-m,v=b-f+d;for(let x=0;x!==a;x++){const S=o[p+x+a],w=o[p+x+l]*u,T=o[_+x+a],E=o[_+x]*u;r[x]=y*S+v*w+m*T+b*E}return r}}const mee=new Mr;class gee extends mR{interpolate_(e,n,s,i){const r=super.interpolate_(e,n,s,i);return mee.fromArray(r).normalize().toArray(r),r}}const Gr={FLOAT:5126,FLOAT_MAT3:35675,FLOAT_MAT4:35676,FLOAT_VEC2:35664,FLOAT_VEC3:35665,FLOAT_VEC4:35666,LINEAR:9729,REPEAT:10497,SAMPLER_2D:35678,POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6,UNSIGNED_BYTE:5121,UNSIGNED_SHORT:5123},sh={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array},M3={9728:Xn,9729:Is,9984:sy,9985:G8,9986:iy,9987:ud},k3={33071:ci,33648:mg,10497:Nu},R3={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},dy={POSITION:"position",NORMAL:"normal",TANGENT:"tangent",TEXCOORD_0:"uv",TEXCOORD_1:"uv2",COLOR_0:"color",WEIGHTS_0:"skinWeight",JOINTS_0:"skinIndex"},Bo={scale:"scale",translation:"position",rotation:"quaternion",weights:"morphTargetInfluences"},_ee={CUBICSPLINE:void 0,LINEAR:Uu,STEP:Jf},P1={OPAQUE:"OPAQUE",MASK:"MASK",BLEND:"BLEND"};function bee(t){return t.DefaultMaterial===void 0&&(t.DefaultMaterial=new H_({color:16777215,emissive:0,metalness:1,roughness:1,transparent:!1,depthTest:!0,side:Pu})),t.DefaultMaterial}function Bd(t,e,n){for(const s in n.extensions)t[s]===void 0&&(e.userData.gltfExtensions=e.userData.gltfExtensions||{},e.userData.gltfExtensions[s]=n.extensions[s])}function Qa(t,e){e.extras!==void 0&&(typeof e.extras=="object"?Object.assign(t.userData,e.extras):console.warn("THREE.GLTFLoader: Ignoring primitive type .extras, "+e.extras))}function yee(t,e,n){let s=!1,i=!1,r=!1;for(let c=0,u=e.length;c0||t.search(/^data\:image\/jpeg/)===0?"image/jpeg":t.search(/\.webp($|\?)/i)>0||t.search(/^data\:image\/webp/)===0?"image/webp":"image/png"}class See{constructor(e={},n={}){this.json=e,this.extensions={},this.plugins={},this.options=n,this.cache=new XQ,this.associations=new Map,this.primitiveCache={},this.meshCache={refs:{},uses:{}},this.cameraCache={refs:{},uses:{}},this.lightCache={refs:{},uses:{}},this.sourceCache={},this.textureCache={},this.nodeNamesUsed={};const s=/^((?!chrome|android).)*safari/i.test(navigator.userAgent)===!0,i=navigator.userAgent.indexOf("Firefox")>-1,r=i?navigator.userAgent.match(/Firefox\/([0-9]+)\./)[1]:-1;typeof createImageBitmap>"u"||s||i&&r<98?this.textureLoader=new IQ(this.options.manager):this.textureLoader=new UQ(this.options.manager),this.textureLoader.setCrossOrigin(this.options.crossOrigin),this.textureLoader.setRequestHeader(this.options.requestHeader),this.fileLoader=new fR(this.options.manager),this.fileLoader.setResponseType("arraybuffer"),this.options.crossOrigin==="use-credentials"&&this.fileLoader.setWithCredentials(!0)}setExtensions(e){this.extensions=e}setPlugins(e){this.plugins=e}parse(e,n){const s=this,i=this.json,r=this.extensions;this.cache.removeAll(),this._invokeAll(function(o){return o._markDefs&&o._markDefs()}),Promise.all(this._invokeAll(function(o){return o.beforeRoot&&o.beforeRoot()})).then(function(){return Promise.all([s.getDependencies("scene"),s.getDependencies("animation"),s.getDependencies("camera")])}).then(function(o){const a={scene:o[0][i.scene||0],scenes:o[0],animations:o[1],cameras:o[2],asset:i.asset,parser:s,userData:{}};Bd(r,a,i),Qa(a,i),Promise.all(s._invokeAll(function(l){return l.afterRoot&&l.afterRoot(a)})).then(function(){e(a)})}).catch(n)}_markDefs(){const e=this.json.nodes||[],n=this.json.skins||[],s=this.json.meshes||[];for(let i=0,r=n.length;i{const l=this.associations.get(o);l!=null&&this.associations.set(a,l);for(const[c,u]of o.children.entries())r(u,a.children[c])};return r(s,i),i.name+="_instance_"+e.uses[n]++,i}_invokeOne(e){const n=Object.values(this.plugins);n.push(this);for(let s=0;s=2&&m.setY(A,w[T*l+1]),l>=3&&m.setZ(A,w[T*l+2]),l>=4&&m.setW(A,w[T*l+3]),l>=5)throw new Error("THREE.GLTFLoader: Unsupported itemSize in sparse BufferAttribute.")}}return m})}loadTexture(e){const n=this.json,s=this.options,r=n.textures[e].source,o=n.images[r];let a=this.textureLoader;if(o.uri){const l=s.manager.getHandler(o.uri);l!==null&&(a=l)}return this.loadTextureImage(e,r,a)}loadTextureImage(e,n,s){const i=this,r=this.json,o=r.textures[e],a=r.images[n],l=(a.uri||a.bufferView)+":"+o.sampler;if(this.textureCache[l])return this.textureCache[l];const c=this.loadImageSource(n,s).then(function(u){u.flipY=!1,o.name&&(u.name=o.name);const f=(r.samplers||{})[o.sampler]||{};return u.magFilter=M3[f.magFilter]||Is,u.minFilter=M3[f.minFilter]||ud,u.wrapS=k3[f.wrapS]||Nu,u.wrapT=k3[f.wrapT]||Nu,i.associations.set(u,{textures:e}),u}).catch(function(){return null});return this.textureCache[l]=c,c}loadImageSource(e,n){const s=this,i=this.json,r=this.options;if(this.sourceCache[e]!==void 0)return this.sourceCache[e].then(d=>d.clone());const o=i.images[e],a=self.URL||self.webkitURL;let l=o.uri||"",c=!1;if(o.bufferView!==void 0)l=s.getDependency("bufferView",o.bufferView).then(function(d){c=!0;const f=new Blob([d],{type:o.mimeType});return l=a.createObjectURL(f),l});else if(o.uri===void 0)throw new Error("THREE.GLTFLoader: Image "+e+" is missing URI and bufferView");const u=Promise.resolve(l).then(function(d){return new Promise(function(f,h){let _=f;n.isImageBitmapLoader===!0&&(_=function(p){const m=new ws(p);m.needsUpdate=!0,f(m)}),n.load(Ol.resolveURL(d,r.path),_,void 0,h)})}).then(function(d){return c===!0&&a.revokeObjectURL(l),d.userData.mimeType=o.mimeType||xee(o.uri),d}).catch(function(d){throw console.error("THREE.GLTFLoader: Couldn't load texture",l),d});return this.sourceCache[e]=u,u}assignTexture(e,n,s,i){const r=this;return this.getDependency("texture",s.index).then(function(o){if(s.texCoord!==void 0&&s.texCoord!=0&&!(n==="aoMap"&&s.texCoord==1)&&console.warn("THREE.GLTFLoader: Custom UV set "+s.texCoord+" for texture "+n+" not yet supported."),r.extensions[vt.KHR_TEXTURE_TRANSFORM]){const a=s.extensions!==void 0?s.extensions[vt.KHR_TEXTURE_TRANSFORM]:void 0;if(a){const l=r.associations.get(o);o=r.extensions[vt.KHR_TEXTURE_TRANSFORM].extendTexture(o,a),r.associations.set(o,l)}}return i!==void 0&&(o.encoding=i),e[n]=o,o})}assignFinalMaterial(e){const n=e.geometry;let s=e.material;const i=n.attributes.tangent===void 0,r=n.attributes.color!==void 0,o=n.attributes.normal===void 0;if(e.isPoints){const a="PointsMaterial:"+s.uuid;let l=this.cache.get(a);l||(l=new uR,wr.prototype.copy.call(l,s),l.color.copy(s.color),l.map=s.map,l.sizeAttenuation=!1,this.cache.add(a,l)),s=l}else if(e.isLine){const a="LineBasicMaterial:"+s.uuid;let l=this.cache.get(a);l||(l=new cR,wr.prototype.copy.call(l,s),l.color.copy(s.color),this.cache.add(a,l)),s=l}if(i||r||o){let a="ClonedMaterial:"+s.uuid+":";s.isGLTFSpecularGlossinessMaterial&&(a+="specular-glossiness:"),i&&(a+="derivative-tangents:"),r&&(a+="vertex-colors:"),o&&(a+="flat-shading:");let l=this.cache.get(a);l||(l=s.clone(),r&&(l.vertexColors=!0),o&&(l.flatShading=!0),i&&(l.normalScale&&(l.normalScale.y*=-1),l.clearcoatNormalScale&&(l.clearcoatNormalScale.y*=-1)),this.cache.add(a,l),this.associations.set(l,this.associations.get(s))),s=l}s.aoMap&&n.attributes.uv2===void 0&&n.attributes.uv!==void 0&&n.setAttribute("uv2",n.attributes.uv),e.material=s}getMaterialType(){return H_}loadMaterial(e){const n=this,s=this.json,i=this.extensions,r=s.materials[e];let o;const a={},l=r.extensions||{},c=[];if(l[vt.KHR_MATERIALS_PBR_SPECULAR_GLOSSINESS]){const d=i[vt.KHR_MATERIALS_PBR_SPECULAR_GLOSSINESS];o=d.getMaterialType(),c.push(d.extendParams(a,r,n))}else if(l[vt.KHR_MATERIALS_UNLIT]){const d=i[vt.KHR_MATERIALS_UNLIT];o=d.getMaterialType(),c.push(d.extendParams(a,r,n))}else{const d=r.pbrMetallicRoughness||{};if(a.color=new at(1,1,1),a.opacity=1,Array.isArray(d.baseColorFactor)){const f=d.baseColorFactor;a.color.fromArray(f),a.opacity=f[3]}d.baseColorTexture!==void 0&&c.push(n.assignTexture(a,"map",d.baseColorTexture,Ut)),a.metalness=d.metallicFactor!==void 0?d.metallicFactor:1,a.roughness=d.roughnessFactor!==void 0?d.roughnessFactor:1,d.metallicRoughnessTexture!==void 0&&(c.push(n.assignTexture(a,"metalnessMap",d.metallicRoughnessTexture)),c.push(n.assignTexture(a,"roughnessMap",d.metallicRoughnessTexture))),o=this._invokeOne(function(f){return f.getMaterialType&&f.getMaterialType(e)}),c.push(Promise.all(this._invokeAll(function(f){return f.extendMaterialParams&&f.extendMaterialParams(e,a)})))}r.doubleSided===!0&&(a.side=Nl);const u=r.alphaMode||P1.OPAQUE;if(u===P1.BLEND?(a.transparent=!0,a.depthWrite=!1):(a.transparent=!1,u===P1.MASK&&(a.alphaTest=r.alphaCutoff!==void 0?r.alphaCutoff:.5)),r.normalTexture!==void 0&&o!==fa&&(c.push(n.assignTexture(a,"normalMap",r.normalTexture)),a.normalScale=new Et(1,1),r.normalTexture.scale!==void 0)){const d=r.normalTexture.scale;a.normalScale.set(d,d)}return r.occlusionTexture!==void 0&&o!==fa&&(c.push(n.assignTexture(a,"aoMap",r.occlusionTexture)),r.occlusionTexture.strength!==void 0&&(a.aoMapIntensity=r.occlusionTexture.strength)),r.emissiveFactor!==void 0&&o!==fa&&(a.emissive=new at().fromArray(r.emissiveFactor)),r.emissiveTexture!==void 0&&o!==fa&&c.push(n.assignTexture(a,"emissiveMap",r.emissiveTexture,Ut)),Promise.all(c).then(function(){let d;return o===uy?d=i[vt.KHR_MATERIALS_PBR_SPECULAR_GLOSSINESS].createMaterial(a):d=new o(a),r.name&&(d.name=r.name),Qa(d,r),n.associations.set(d,{materials:e}),r.extensions&&Bd(i,d,r),d})}createUniqueName(e){const n=Gt.sanitizeNodeName(e||"");let s=n;for(let i=1;this.nodeNamesUsed[s];++i)s=n+"_"+i;return this.nodeNamesUsed[s]=!0,s}loadGeometries(e){const n=this,s=this.extensions,i=this.primitiveCache;function r(a){return s[vt.KHR_DRACO_MESH_COMPRESSION].decodePrimitive(a,n).then(function(l){return O3(l,a,n)})}const o=[];for(let a=0,l=e.length;a0&&vee(b,r),b.name=n.createUniqueName(r.name||"mesh_"+e),Qa(b,r),m.extensions&&Bd(i,b,m),n.assignFinalMaterial(b),d.push(b)}for(let h=0,_=d.length;h<_;h++)n.associations.set(d[h],{meshes:e,primitives:h});if(d.length===1)return d[0];const f=new yl;n.associations.set(f,{meshes:e});for(let h=0,_=d.length;h<_;h++)f.add(d[h]);return f})}loadCamera(e){let n;const s=this.json.cameras[e],i=s[s.type];if(!i){console.warn("THREE.GLTFLoader: Missing camera parameters.");return}return s.type==="perspective"?n=new ys(_Y.radToDeg(i.yfov),i.aspectRatio||1,i.znear||1,i.zfar||2e6):s.type==="orthographic"&&(n=new Gw(-i.xmag,i.xmag,i.ymag,-i.ymag,i.znear,i.zfar)),s.name&&(n.name=this.createUniqueName(s.name)),Qa(n,s),Promise.resolve(n)}loadSkin(e){const n=this.json.skins[e],s={joints:n.joints};return n.inverseBindMatrices===void 0?Promise.resolve(s):this.getDependency("accessor",n.inverseBindMatrices).then(function(i){return s.inverseBindMatrices=i,s})}loadAnimation(e){const s=this.json.animations[e],i=[],r=[],o=[],a=[],l=[];for(let c=0,u=s.channels.length;c1?l=new yl:a.length===1?l=a[0]:l=new kn,l!==a[0])for(let c=0,u=a.length;c{const d=new Map;for(const[f,h]of r.associations)(f instanceof wr||f instanceof ws)&&d.set(f,h);return u.traverse(f=>{const h=r.associations.get(f);h!=null&&d.set(f,h)}),d};return r.associations=c(o),o})}}function gR(t,e,n,s){const i=n.nodes[t];return s.getDependency("node",t).then(function(r){if(i.skin===void 0)return r;let o;return s.getDependency("skin",i.skin).then(function(a){o=a;const l=[];for(let c=0,u=o.joints.length;ct.root.cal_imu())},{default:et(()=>[ye(" calibrate ")]),_:1})]),Ree])}const _R=ot(Tee,[["render",Cee]]),Oee=nt({name:"home",components:{Motor:OV,Voltage:kW,Serial:QW,VTX:sq,GyroModel:_R},setup(){return{profile:Zt()}}}),Iee={class:"columns is-multiline"},Lee={class:"column is-12"},Pee={class:"column is-12"},Dee={class:"columns"},Fee={class:"column is-6"},Nee={class:"column is-6"},$ee={class:"columns"},Uee={class:"column is-12"};function Bee(t,e,n,s,i,r){const o=Re("GyroModel"),a=Re("Motor"),l=Re("Voltage"),c=Re("Serial"),u=Re("VTX");return J(),se(tt,null,[g("div",Iee,[g("div",Lee,[X(o)]),g("div",Pee,[X(a)])]),g("div",Dee,[g("div",Fee,[X(l)]),g("div",Nee,[X(c)])]),g("div",$ee,[g("div",Uee,[t.profile.serial.smart_audio!=0||t.profile.serial.hdzero!=0?(J(),fn(u,{key:0})):qe("",!0)])])],64)}const Gee=ot(Oee,[["render",Bee]]);/*! + * Chart.js v3.9.1 + * https://www.chartjs.org + * (c) 2022 Chart.js Contributors + * Released under the MIT License + */function zr(){}const zee=function(){let t=0;return function(){return t++}}();function Nt(t){return t===null||typeof t>"u"}function sn(t){if(Array.isArray&&Array.isArray(t))return!0;const e=Object.prototype.toString.call(t);return e.slice(0,7)==="[object"&&e.slice(-6)==="Array]"}function Rt(t){return t!==null&&Object.prototype.toString.call(t)==="[object Object]"}const Jn=t=>(typeof t=="number"||t instanceof Number)&&isFinite(+t);function ri(t,e){return Jn(t)?t:e}function gt(t,e){return typeof t>"u"?e:t}const Hee=(t,e)=>typeof t=="string"&&t.endsWith("%")?parseFloat(t)/100:t/e,bR=(t,e)=>typeof t=="string"&&t.endsWith("%")?parseFloat(t)/100*e:+t;function Kt(t,e,n){if(t&&typeof t.call=="function")return t.apply(n,e)}function zt(t,e,n,s){let i,r,o;if(sn(t))if(r=t.length,s)for(i=r-1;i>=0;i--)e.call(n,t[i],i);else for(i=0;it,x:t=>t.x,y:t=>t.y};function Ra(t,e){return(L3[e]||(L3[e]=jee(e)))(t)}function jee(t){const e=qee(t);return n=>{for(const s of e){if(s==="")break;n=n&&n[s]}return n}}function qee(t){const e=t.split("."),n=[];let s="";for(const i of e)s+=i,s.endsWith("\\")?s=s.slice(0,-1)+".":(n.push(s),s="");return n}function Kw(t){return t.charAt(0).toUpperCase()+t.slice(1)}const bi=t=>typeof t<"u",Ca=t=>typeof t=="function",P3=(t,e)=>{if(t.size!==e.size)return!1;for(const n of t)if(!e.has(n))return!1;return!0};function Yee(t){return t.type==="mouseup"||t.type==="click"||t.type==="contextmenu"}const pn=Math.PI,jt=2*pn,Kee=jt+pn,yg=Number.POSITIVE_INFINITY,Xee=pn/180,yn=pn/2,Gd=pn/4,D3=pn*2/3,ui=Math.log10,xr=Math.sign;function F3(t){const e=Math.round(t);t=Tf(t,e,t/1e3)?e:t;const n=Math.pow(10,Math.floor(ui(t))),s=t/n;return(s<=1?1:s<=2?2:s<=5?5:10)*n}function Zee(t){const e=[],n=Math.sqrt(t);let s;for(s=1;si-r).pop(),e}function zu(t){return!isNaN(parseFloat(t))&&isFinite(t)}function Tf(t,e,n){return Math.abs(t-e)=t}function vR(t,e,n){let s,i,r;for(s=0,i=t.length;sl&&c=Math.min(e,n)-s&&t<=Math.max(e,n)+s}function Zw(t,e,n){n=n||(o=>t[o]1;)r=i+s>>1,n(r)?i=r:s=r;return{lo:i,hi:s}}const vl=(t,e,n,s)=>Zw(t,n,s?i=>t[i][e]<=n:i=>t[i][e]Zw(t,n,s=>t[s][e]>=n);function nte(t,e,n){let s=0,i=t.length;for(;ss&&t[i-1]>n;)i--;return s>0||i{const s="_onData"+Kw(n),i=t[n];Object.defineProperty(t,n,{configurable:!0,enumerable:!1,value(...r){const o=i.apply(this,r);return t._chartjs.listeners.forEach(a=>{typeof a[s]=="function"&&a[s](...r)}),o}})})}function $3(t,e){const n=t._chartjs;if(!n)return;const s=n.listeners,i=s.indexOf(e);i!==-1&&s.splice(i,1),!(s.length>0)&&(xR.forEach(r=>{delete t[r]}),delete t._chartjs)}function SR(t){const e=new Set;let n,s;for(n=0,s=t.length;n"u"?function(t){return t()}:window.requestAnimationFrame}();function TR(t,e,n){const s=n||(o=>Array.prototype.slice.call(o));let i=!1,r=[];return function(...o){r=s(o),i||(i=!0,ER.call(window,()=>{i=!1,t.apply(e,r)}))}}function ite(t,e){let n;return function(...s){return e?(clearTimeout(n),n=setTimeout(t,e,s)):t.apply(this,s),e}}const Jw=t=>t==="start"?"left":t==="end"?"right":"center",ss=(t,e,n)=>t==="start"?e:t==="end"?n:(e+n)/2,rte=(t,e,n,s)=>t===(s?"left":"right")?n:t==="center"?(e+n)/2:e;function AR(t,e,n){const s=e.length;let i=0,r=s;if(t._sorted){const{iScale:o,_parsed:a}=t,l=o.axis,{min:c,max:u,minDefined:d,maxDefined:f}=o.getUserBounds();d&&(i=as(Math.min(vl(a,o.axis,c).lo,n?s:vl(e,l,o.getPixelForValue(c)).lo),0,s-1)),f?r=as(Math.max(vl(a,o.axis,u,!0).hi+1,n?0:vl(e,l,o.getPixelForValue(u),!0).hi+1),i,s)-i:r=s-i}return{start:i,count:r}}function MR(t){const{xScale:e,yScale:n,_scaleRanges:s}=t,i={xmin:e.min,xmax:e.max,ymin:n.min,ymax:n.max};if(!s)return t._scaleRanges=i,!0;const r=s.xmin!==e.min||s.xmax!==e.max||s.ymin!==n.min||s.ymax!==n.max;return Object.assign(s,i),r}const Up=t=>t===0||t===1,U3=(t,e,n)=>-(Math.pow(2,10*(t-=1))*Math.sin((t-e)*jt/n)),B3=(t,e,n)=>Math.pow(2,-10*t)*Math.sin((t-e)*jt/n)+1,Af={linear:t=>t,easeInQuad:t=>t*t,easeOutQuad:t=>-t*(t-2),easeInOutQuad:t=>(t/=.5)<1?.5*t*t:-.5*(--t*(t-2)-1),easeInCubic:t=>t*t*t,easeOutCubic:t=>(t-=1)*t*t+1,easeInOutCubic:t=>(t/=.5)<1?.5*t*t*t:.5*((t-=2)*t*t+2),easeInQuart:t=>t*t*t*t,easeOutQuart:t=>-((t-=1)*t*t*t-1),easeInOutQuart:t=>(t/=.5)<1?.5*t*t*t*t:-.5*((t-=2)*t*t*t-2),easeInQuint:t=>t*t*t*t*t,easeOutQuint:t=>(t-=1)*t*t*t*t+1,easeInOutQuint:t=>(t/=.5)<1?.5*t*t*t*t*t:.5*((t-=2)*t*t*t*t+2),easeInSine:t=>-Math.cos(t*yn)+1,easeOutSine:t=>Math.sin(t*yn),easeInOutSine:t=>-.5*(Math.cos(pn*t)-1),easeInExpo:t=>t===0?0:Math.pow(2,10*(t-1)),easeOutExpo:t=>t===1?1:-Math.pow(2,-10*t)+1,easeInOutExpo:t=>Up(t)?t:t<.5?.5*Math.pow(2,10*(t*2-1)):.5*(-Math.pow(2,-10*(t*2-1))+2),easeInCirc:t=>t>=1?t:-(Math.sqrt(1-t*t)-1),easeOutCirc:t=>Math.sqrt(1-(t-=1)*t),easeInOutCirc:t=>(t/=.5)<1?-.5*(Math.sqrt(1-t*t)-1):.5*(Math.sqrt(1-(t-=2)*t)+1),easeInElastic:t=>Up(t)?t:U3(t,.075,.3),easeOutElastic:t=>Up(t)?t:B3(t,.075,.3),easeInOutElastic(t){return Up(t)?t:t<.5?.5*U3(t*2,.1125,.45):.5+.5*B3(t*2-1,.1125,.45)},easeInBack(t){return t*t*((1.70158+1)*t-1.70158)},easeOutBack(t){return(t-=1)*t*((1.70158+1)*t+1.70158)+1},easeInOutBack(t){let e=1.70158;return(t/=.5)<1?.5*(t*t*(((e*=1.525)+1)*t-e)):.5*((t-=2)*t*(((e*=1.525)+1)*t+e)+2)},easeInBounce:t=>1-Af.easeOutBounce(1-t),easeOutBounce(t){return t<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375},easeInOutBounce:t=>t<.5?Af.easeInBounce(t*2)*.5:Af.easeOutBounce(t*2-1)*.5+.5};/*! + * @kurkle/color v0.2.1 + * https://github.com/kurkle/color#readme + * (c) 2022 Jukka Kurkela + * Released under the MIT License + */function Uh(t){return t+.5|0}const pa=(t,e,n)=>Math.max(Math.min(t,n),e);function af(t){return pa(Uh(t*2.55),0,255)}function Sa(t){return pa(Uh(t*255),0,255)}function Zr(t){return pa(Uh(t/2.55)/100,0,1)}function G3(t){return pa(Uh(t*100),0,100)}const si={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},py=[..."0123456789ABCDEF"],ote=t=>py[t&15],ate=t=>py[(t&240)>>4]+py[t&15],Bp=t=>(t&240)>>4===(t&15),lte=t=>Bp(t.r)&&Bp(t.g)&&Bp(t.b)&&Bp(t.a);function cte(t){var e=t.length,n;return t[0]==="#"&&(e===4||e===5?n={r:255&si[t[1]]*17,g:255&si[t[2]]*17,b:255&si[t[3]]*17,a:e===5?si[t[4]]*17:255}:(e===7||e===9)&&(n={r:si[t[1]]<<4|si[t[2]],g:si[t[3]]<<4|si[t[4]],b:si[t[5]]<<4|si[t[6]],a:e===9?si[t[7]]<<4|si[t[8]]:255})),n}const ute=(t,e)=>t<255?e(t):"";function dte(t){var e=lte(t)?ote:ate;return t?"#"+e(t.r)+e(t.g)+e(t.b)+ute(t.a,e):void 0}const fte=/^(hsla?|hwb|hsv)\(\s*([-+.e\d]+)(?:deg)?[\s,]+([-+.e\d]+)%[\s,]+([-+.e\d]+)%(?:[\s,]+([-+.e\d]+)(%)?)?\s*\)$/;function kR(t,e,n){const s=e*Math.min(n,1-n),i=(r,o=(r+t/30)%12)=>n-s*Math.max(Math.min(o-3,9-o,1),-1);return[i(0),i(8),i(4)]}function hte(t,e,n){const s=(i,r=(i+t/60)%6)=>n-n*e*Math.max(Math.min(r,4-r,1),0);return[s(5),s(3),s(1)]}function pte(t,e,n){const s=kR(t,1,.5);let i;for(e+n>1&&(i=1/(e+n),e*=i,n*=i),i=0;i<3;i++)s[i]*=1-e-n,s[i]+=e;return s}function mte(t,e,n,s,i){return t===i?(e-n)/s+(e.5?u/(2-r-o):u/(r+o),l=mte(n,s,i,u,r),l=l*60+.5),[l|0,c||0,a]}function ex(t,e,n,s){return(Array.isArray(e)?t(e[0],e[1],e[2]):t(e,n,s)).map(Sa)}function tx(t,e,n){return ex(kR,t,e,n)}function gte(t,e,n){return ex(pte,t,e,n)}function _te(t,e,n){return ex(hte,t,e,n)}function RR(t){return(t%360+360)%360}function bte(t){const e=fte.exec(t);let n=255,s;if(!e)return;e[5]!==s&&(n=e[6]?af(+e[5]):Sa(+e[5]));const i=RR(+e[2]),r=+e[3]/100,o=+e[4]/100;return e[1]==="hwb"?s=gte(i,r,o):e[1]==="hsv"?s=_te(i,r,o):s=tx(i,r,o),{r:s[0],g:s[1],b:s[2],a:n}}function yte(t,e){var n=Qw(t);n[0]=RR(n[0]+e),n=tx(n),t.r=n[0],t.g=n[1],t.b=n[2]}function vte(t){if(!t)return;const e=Qw(t),n=e[0],s=G3(e[1]),i=G3(e[2]);return t.a<255?`hsla(${n}, ${s}%, ${i}%, ${Zr(t.a)})`:`hsl(${n}, ${s}%, ${i}%)`}const z3={x:"dark",Z:"light",Y:"re",X:"blu",W:"gr",V:"medium",U:"slate",A:"ee",T:"ol",S:"or",B:"ra",C:"lateg",D:"ights",R:"in",Q:"turquois",E:"hi",P:"ro",O:"al",N:"le",M:"de",L:"yello",F:"en",K:"ch",G:"arks",H:"ea",I:"ightg",J:"wh"},H3={OiceXe:"f0f8ff",antiquewEte:"faebd7",aqua:"ffff",aquamarRe:"7fffd4",azuY:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"0",blanKedOmond:"ffebcd",Xe:"ff",XeviTet:"8a2be2",bPwn:"a52a2a",burlywood:"deb887",caMtXe:"5f9ea0",KartYuse:"7fff00",KocTate:"d2691e",cSO:"ff7f50",cSnflowerXe:"6495ed",cSnsilk:"fff8dc",crimson:"dc143c",cyan:"ffff",xXe:"8b",xcyan:"8b8b",xgTMnPd:"b8860b",xWay:"a9a9a9",xgYF:"6400",xgYy:"a9a9a9",xkhaki:"bdb76b",xmagFta:"8b008b",xTivegYF:"556b2f",xSange:"ff8c00",xScEd:"9932cc",xYd:"8b0000",xsOmon:"e9967a",xsHgYF:"8fbc8f",xUXe:"483d8b",xUWay:"2f4f4f",xUgYy:"2f4f4f",xQe:"ced1",xviTet:"9400d3",dAppRk:"ff1493",dApskyXe:"bfff",dimWay:"696969",dimgYy:"696969",dodgerXe:"1e90ff",fiYbrick:"b22222",flSOwEte:"fffaf0",foYstWAn:"228b22",fuKsia:"ff00ff",gaRsbSo:"dcdcdc",ghostwEte:"f8f8ff",gTd:"ffd700",gTMnPd:"daa520",Way:"808080",gYF:"8000",gYFLw:"adff2f",gYy:"808080",honeyMw:"f0fff0",hotpRk:"ff69b4",RdianYd:"cd5c5c",Rdigo:"4b0082",ivSy:"fffff0",khaki:"f0e68c",lavFMr:"e6e6fa",lavFMrXsh:"fff0f5",lawngYF:"7cfc00",NmoncEffon:"fffacd",ZXe:"add8e6",ZcSO:"f08080",Zcyan:"e0ffff",ZgTMnPdLw:"fafad2",ZWay:"d3d3d3",ZgYF:"90ee90",ZgYy:"d3d3d3",ZpRk:"ffb6c1",ZsOmon:"ffa07a",ZsHgYF:"20b2aa",ZskyXe:"87cefa",ZUWay:"778899",ZUgYy:"778899",ZstAlXe:"b0c4de",ZLw:"ffffe0",lime:"ff00",limegYF:"32cd32",lRF:"faf0e6",magFta:"ff00ff",maPon:"800000",VaquamarRe:"66cdaa",VXe:"cd",VScEd:"ba55d3",VpurpN:"9370db",VsHgYF:"3cb371",VUXe:"7b68ee",VsprRggYF:"fa9a",VQe:"48d1cc",VviTetYd:"c71585",midnightXe:"191970",mRtcYam:"f5fffa",mistyPse:"ffe4e1",moccasR:"ffe4b5",navajowEte:"ffdead",navy:"80",Tdlace:"fdf5e6",Tive:"808000",TivedBb:"6b8e23",Sange:"ffa500",SangeYd:"ff4500",ScEd:"da70d6",pOegTMnPd:"eee8aa",pOegYF:"98fb98",pOeQe:"afeeee",pOeviTetYd:"db7093",papayawEp:"ffefd5",pHKpuff:"ffdab9",peru:"cd853f",pRk:"ffc0cb",plum:"dda0dd",powMrXe:"b0e0e6",purpN:"800080",YbeccapurpN:"663399",Yd:"ff0000",Psybrown:"bc8f8f",PyOXe:"4169e1",saddNbPwn:"8b4513",sOmon:"fa8072",sandybPwn:"f4a460",sHgYF:"2e8b57",sHshell:"fff5ee",siFna:"a0522d",silver:"c0c0c0",skyXe:"87ceeb",UXe:"6a5acd",UWay:"708090",UgYy:"708090",snow:"fffafa",sprRggYF:"ff7f",stAlXe:"4682b4",tan:"d2b48c",teO:"8080",tEstN:"d8bfd8",tomato:"ff6347",Qe:"40e0d0",viTet:"ee82ee",JHt:"f5deb3",wEte:"ffffff",wEtesmoke:"f5f5f5",Lw:"ffff00",LwgYF:"9acd32"};function wte(){const t={},e=Object.keys(H3),n=Object.keys(z3);let s,i,r,o,a;for(s=0;s>16&255,r>>8&255,r&255]}return t}let Gp;function xte(t){Gp||(Gp=wte(),Gp.transparent=[0,0,0,0]);const e=Gp[t.toLowerCase()];return e&&{r:e[0],g:e[1],b:e[2],a:e.length===4?e[3]:255}}const Ste=/^rgba?\(\s*([-+.\d]+)(%)?[\s,]+([-+.e\d]+)(%)?[\s,]+([-+.e\d]+)(%)?(?:[\s,/]+([-+.e\d]+)(%)?)?\s*\)$/;function Ete(t){const e=Ste.exec(t);let n=255,s,i,r;if(e){if(e[7]!==s){const o=+e[7];n=e[8]?af(o):pa(o*255,0,255)}return s=+e[1],i=+e[3],r=+e[5],s=255&(e[2]?af(s):pa(s,0,255)),i=255&(e[4]?af(i):pa(i,0,255)),r=255&(e[6]?af(r):pa(r,0,255)),{r:s,g:i,b:r,a:n}}}function Tte(t){return t&&(t.a<255?`rgba(${t.r}, ${t.g}, ${t.b}, ${Zr(t.a)})`:`rgb(${t.r}, ${t.g}, ${t.b})`)}const D1=t=>t<=.0031308?t*12.92:Math.pow(t,1/2.4)*1.055-.055,Rc=t=>t<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4);function Ate(t,e,n){const s=Rc(Zr(t.r)),i=Rc(Zr(t.g)),r=Rc(Zr(t.b));return{r:Sa(D1(s+n*(Rc(Zr(e.r))-s))),g:Sa(D1(i+n*(Rc(Zr(e.g))-i))),b:Sa(D1(r+n*(Rc(Zr(e.b))-r))),a:t.a+n*(e.a-t.a)}}function zp(t,e,n){if(t){let s=Qw(t);s[e]=Math.max(0,Math.min(s[e]+s[e]*n,e===0?360:1)),s=tx(s),t.r=s[0],t.g=s[1],t.b=s[2]}}function CR(t,e){return t&&Object.assign(e||{},t)}function V3(t){var e={r:0,g:0,b:0,a:255};return Array.isArray(t)?t.length>=3&&(e={r:t[0],g:t[1],b:t[2],a:255},t.length>3&&(e.a=Sa(t[3]))):(e=CR(t,{r:0,g:0,b:0,a:1}),e.a=Sa(e.a)),e}function Mte(t){return t.charAt(0)==="r"?Ete(t):bte(t)}class vg{constructor(e){if(e instanceof vg)return e;const n=typeof e;let s;n==="object"?s=V3(e):n==="string"&&(s=cte(e)||xte(e)||Mte(e)),this._rgb=s,this._valid=!!s}get valid(){return this._valid}get rgb(){var e=CR(this._rgb);return e&&(e.a=Zr(e.a)),e}set rgb(e){this._rgb=V3(e)}rgbString(){return this._valid?Tte(this._rgb):void 0}hexString(){return this._valid?dte(this._rgb):void 0}hslString(){return this._valid?vte(this._rgb):void 0}mix(e,n){if(e){const s=this.rgb,i=e.rgb;let r;const o=n===r?.5:n,a=2*o-1,l=s.a-i.a,c=((a*l===-1?a:(a+l)/(1+a*l))+1)/2;r=1-c,s.r=255&c*s.r+r*i.r+.5,s.g=255&c*s.g+r*i.g+.5,s.b=255&c*s.b+r*i.b+.5,s.a=o*s.a+(1-o)*i.a,this.rgb=s}return this}interpolate(e,n){return e&&(this._rgb=Ate(this._rgb,e._rgb,n)),this}clone(){return new vg(this.rgb)}alpha(e){return this._rgb.a=Sa(e),this}clearer(e){const n=this._rgb;return n.a*=1-e,this}greyscale(){const e=this._rgb,n=Uh(e.r*.3+e.g*.59+e.b*.11);return e.r=e.g=e.b=n,this}opaquer(e){const n=this._rgb;return n.a*=1+e,this}negate(){const e=this._rgb;return e.r=255-e.r,e.g=255-e.g,e.b=255-e.b,this}lighten(e){return zp(this._rgb,2,e),this}darken(e){return zp(this._rgb,2,-e),this}saturate(e){return zp(this._rgb,1,e),this}desaturate(e){return zp(this._rgb,1,-e),this}rotate(e){return yte(this._rgb,e),this}}function OR(t){return new vg(t)}function IR(t){if(t&&typeof t=="object"){const e=t.toString();return e==="[object CanvasPattern]"||e==="[object CanvasGradient]"}return!1}function W3(t){return IR(t)?t:OR(t)}function F1(t){return IR(t)?t:OR(t).saturate(.5).darken(.1).hexString()}const Hl=Object.create(null),my=Object.create(null);function Mf(t,e){if(!e)return t;const n=e.split(".");for(let s=0,i=n.length;sn.chart.platform.getDevicePixelRatio(),this.elements={},this.events=["mousemove","mouseout","click","touchstart","touchmove"],this.font={family:"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif",size:12,style:"normal",lineHeight:1.2,weight:null},this.hover={},this.hoverBackgroundColor=(n,s)=>F1(s.backgroundColor),this.hoverBorderColor=(n,s)=>F1(s.borderColor),this.hoverColor=(n,s)=>F1(s.color),this.indexAxis="x",this.interaction={mode:"nearest",intersect:!0,includeInvisible:!1},this.maintainAspectRatio=!0,this.onHover=null,this.onClick=null,this.parsing=!0,this.plugins={},this.responsive=!0,this.scale=void 0,this.scales={},this.showLine=!0,this.drawActiveElementsOnTop=!0,this.describe(e)}set(e,n){return N1(this,e,n)}get(e){return Mf(this,e)}describe(e,n){return N1(my,e,n)}override(e,n){return N1(Hl,e,n)}route(e,n,s,i){const r=Mf(this,e),o=Mf(this,s),a="_"+n;Object.defineProperties(r,{[a]:{value:r[n],writable:!0},[n]:{enumerable:!0,get(){const l=this[a],c=o[i];return Rt(l)?Object.assign({},c,l):gt(l,c)},set(l){this[a]=l}}})}}var St=new kte({_scriptable:t=>!t.startsWith("on"),_indexable:t=>t!=="events",hover:{_fallback:"interaction"},interaction:{_scriptable:!1,_indexable:!1}});function Rte(t){return!t||Nt(t.size)||Nt(t.family)?null:(t.style?t.style+" ":"")+(t.weight?t.weight+" ":"")+t.size+"px "+t.family}function wg(t,e,n,s,i){let r=e[i];return r||(r=e[i]=t.measureText(i).width,n.push(i)),r>s&&(s=r),s}function Cte(t,e,n,s){s=s||{};let i=s.data=s.data||{},r=s.garbageCollect=s.garbageCollect||[];s.font!==e&&(i=s.data={},r=s.garbageCollect=[],s.font=e),t.save(),t.font=e;let o=0;const a=n.length;let l,c,u,d,f;for(l=0;ln.length){for(l=0;l0&&t.stroke()}}function oh(t,e,n){return n=n||.5,!e||t&&t.x>e.left-n&&t.xe.top-n&&t.y0&&r.strokeColor!=="";let l,c;for(t.save(),t.font=i.string,Lte(t,r),l=0;l+t||0;function ix(t,e){const n={},s=Rt(e),i=s?Object.keys(e):e,r=Rt(t)?s?o=>gt(t[o],t[e[o]]):o=>t[o]:()=>t;for(const o of i)n[o]=$te(r(o));return n}function PR(t){return ix(t,{top:"y",right:"x",bottom:"y",left:"x"})}function Il(t){return ix(t,["topLeft","topRight","bottomLeft","bottomRight"])}function us(t){const e=PR(t);return e.width=e.left+e.right,e.height=e.top+e.bottom,e}function Nn(t,e){t=t||{},e=e||St.font;let n=gt(t.size,e.size);typeof n=="string"&&(n=parseInt(n,10));let s=gt(t.style,e.style);s&&!(""+s).match(Fte)&&(console.warn('Invalid font style specified: "'+s+'"'),s="");const i={family:gt(t.family,e.family),lineHeight:Nte(gt(t.lineHeight,e.lineHeight),n),size:n,style:s,weight:gt(t.weight,e.weight),string:""};return i.string=Rte(i),i}function Hp(t,e,n,s){let i=!0,r,o,a;for(r=0,o=t.length;rn&&a===0?0:a+l;return{min:o(s,-Math.abs(r)),max:o(i,r)}}function Da(t,e){return Object.assign(Object.create(t),e)}function rx(t,e=[""],n=t,s,i=()=>t[0]){bi(s)||(s=$R("_fallback",t));const r={[Symbol.toStringTag]:"Object",_cacheable:!0,_scopes:t,_rootScopes:n,_fallback:s,_getTarget:i,override:o=>rx([o,...t],e,n,s)};return new Proxy(r,{deleteProperty(o,a){return delete o[a],delete o._keys,delete t[0][a],!0},get(o,a){return FR(o,a,()=>qte(a,e,t,o))},getOwnPropertyDescriptor(o,a){return Reflect.getOwnPropertyDescriptor(o._scopes[0],a)},getPrototypeOf(){return Reflect.getPrototypeOf(t[0])},has(o,a){return Y3(o).includes(a)},ownKeys(o){return Y3(o)},set(o,a,l){const c=o._storage||(o._storage=i());return o[a]=c[a]=l,delete o._keys,!0}})}function Hu(t,e,n,s){const i={_cacheable:!1,_proxy:t,_context:e,_subProxy:n,_stack:new Set,_descriptors:DR(t,s),setContext:r=>Hu(t,r,n,s),override:r=>Hu(t.override(r),e,n,s)};return new Proxy(i,{deleteProperty(r,o){return delete r[o],delete t[o],!0},get(r,o,a){return FR(r,o,()=>Gte(r,o,a))},getOwnPropertyDescriptor(r,o){return r._descriptors.allKeys?Reflect.has(t,o)?{enumerable:!0,configurable:!0}:void 0:Reflect.getOwnPropertyDescriptor(t,o)},getPrototypeOf(){return Reflect.getPrototypeOf(t)},has(r,o){return Reflect.has(t,o)},ownKeys(){return Reflect.ownKeys(t)},set(r,o,a){return t[o]=a,delete r[o],!0}})}function DR(t,e={scriptable:!0,indexable:!0}){const{_scriptable:n=e.scriptable,_indexable:s=e.indexable,_allKeys:i=e.allKeys}=t;return{allKeys:i,scriptable:n,indexable:s,isScriptable:Ca(n)?n:()=>n,isIndexable:Ca(s)?s:()=>s}}const Bte=(t,e)=>t?t+Kw(e):e,ox=(t,e)=>Rt(e)&&t!=="adapters"&&(Object.getPrototypeOf(e)===null||e.constructor===Object);function FR(t,e,n){if(Object.prototype.hasOwnProperty.call(t,e))return t[e];const s=n();return t[e]=s,s}function Gte(t,e,n){const{_proxy:s,_context:i,_subProxy:r,_descriptors:o}=t;let a=s[e];return Ca(a)&&o.isScriptable(e)&&(a=zte(e,a,t,n)),sn(a)&&a.length&&(a=Hte(e,a,t,o.isIndexable)),ox(e,a)&&(a=Hu(a,i,r&&r[e],o)),a}function zte(t,e,n,s){const{_proxy:i,_context:r,_subProxy:o,_stack:a}=n;if(a.has(t))throw new Error("Recursion detected: "+Array.from(a).join("->")+"->"+t);return a.add(t),e=e(r,o||s),a.delete(t),ox(t,e)&&(e=ax(i._scopes,i,t,e)),e}function Hte(t,e,n,s){const{_proxy:i,_context:r,_subProxy:o,_descriptors:a}=n;if(bi(r.index)&&s(t))e=e[r.index%e.length];else if(Rt(e[0])){const l=e,c=i._scopes.filter(u=>u!==l);e=[];for(const u of l){const d=ax(c,i,t,u);e.push(Hu(d,r,o&&o[t],a))}}return e}function NR(t,e,n){return Ca(t)?t(e,n):t}const Vte=(t,e)=>t===!0?e:typeof t=="string"?Ra(e,t):void 0;function Wte(t,e,n,s,i){for(const r of e){const o=Vte(n,r);if(o){t.add(o);const a=NR(o._fallback,n,i);if(bi(a)&&a!==n&&a!==s)return a}else if(o===!1&&bi(s)&&n!==s)return null}return!1}function ax(t,e,n,s){const i=e._rootScopes,r=NR(e._fallback,n,s),o=[...t,...i],a=new Set;a.add(s);let l=q3(a,o,n,r||n,s);return l===null||bi(r)&&r!==n&&(l=q3(a,o,r,l,s),l===null)?!1:rx(Array.from(a),[""],i,r,()=>jte(e,n,s))}function q3(t,e,n,s,i){for(;n;)n=Wte(t,e,n,s,i);return n}function jte(t,e,n){const s=t._getTarget();e in s||(s[e]={});const i=s[e];return sn(i)&&Rt(n)?n:i}function qte(t,e,n,s){let i;for(const r of e)if(i=$R(Bte(r,t),n),bi(i))return ox(t,i)?ax(n,s,t,i):i}function $R(t,e){for(const n of e){if(!n)continue;const s=n[t];if(bi(s))return s}}function Y3(t){let e=t._keys;return e||(e=t._keys=Yte(t._scopes)),e}function Yte(t){const e=new Set;for(const n of t)for(const s of Object.keys(n).filter(i=>!i.startsWith("_")))e.add(s);return Array.from(e)}function UR(t,e,n,s){const{iScale:i}=t,{key:r="r"}=this._parsing,o=new Array(s);let a,l,c,u;for(a=0,l=s;aet==="x"?"y":"x";function Xte(t,e,n,s){const i=t.skip?e:t,r=e,o=n.skip?e:n,a=hy(r,i),l=hy(o,r);let c=a/(a+l),u=l/(a+l);c=isNaN(c)?0:c,u=isNaN(u)?0:u;const d=s*c,f=s*u;return{previous:{x:r.x-d*(o.x-i.x),y:r.y-d*(o.y-i.y)},next:{x:r.x+f*(o.x-i.x),y:r.y+f*(o.y-i.y)}}}function Zte(t,e,n){const s=t.length;let i,r,o,a,l,c=Vu(t,0);for(let u=0;u!c.skip)),e.cubicInterpolationMode==="monotone")Qte(t,i);else{let c=s?t[t.length-1]:t[0];for(r=0,o=t.length;rwindow.getComputedStyle(t,null);function nne(t,e){return W_(t).getPropertyValue(e)}const sne=["top","right","bottom","left"];function Ll(t,e,n){const s={};n=n?"-"+n:"";for(let i=0;i<4;i++){const r=sne[i];s[r]=parseFloat(t[e+"-"+r+n])||0}return s.width=s.left+s.right,s.height=s.top+s.bottom,s}const ine=(t,e,n)=>(t>0||e>0)&&(!n||!n.shadowRoot);function rne(t,e){const n=t.touches,s=n&&n.length?n[0]:t,{offsetX:i,offsetY:r}=s;let o=!1,a,l;if(ine(i,r,t.target))a=i,l=r;else{const c=e.getBoundingClientRect();a=s.clientX-c.left,l=s.clientY-c.top,o=!0}return{x:a,y:l,box:o}}function el(t,e){if("native"in t)return t;const{canvas:n,currentDevicePixelRatio:s}=e,i=W_(n),r=i.boxSizing==="border-box",o=Ll(i,"padding"),a=Ll(i,"border","width"),{x:l,y:c,box:u}=rne(t,n),d=o.left+(u&&a.left),f=o.top+(u&&a.top);let{width:h,height:_}=e;return r&&(h-=o.width+a.width,_-=o.height+a.height),{x:Math.round((l-d)/h*n.width/s),y:Math.round((c-f)/_*n.height/s)}}function one(t,e,n){let s,i;if(e===void 0||n===void 0){const r=lx(t);if(!r)e=t.clientWidth,n=t.clientHeight;else{const o=r.getBoundingClientRect(),a=W_(r),l=Ll(a,"border","width"),c=Ll(a,"padding");e=o.width-c.width-l.width,n=o.height-c.height-l.height,s=xg(a.maxWidth,r,"clientWidth"),i=xg(a.maxHeight,r,"clientHeight")}}return{width:e,height:n,maxWidth:s||yg,maxHeight:i||yg}}const $1=t=>Math.round(t*10)/10;function ane(t,e,n,s){const i=W_(t),r=Ll(i,"margin"),o=xg(i.maxWidth,t,"clientWidth")||yg,a=xg(i.maxHeight,t,"clientHeight")||yg,l=one(t,e,n);let{width:c,height:u}=l;if(i.boxSizing==="content-box"){const d=Ll(i,"border","width"),f=Ll(i,"padding");c-=f.width+d.width,u-=f.height+d.height}return c=Math.max(0,c-r.width),u=Math.max(0,s?Math.floor(c/s):u-r.height),c=$1(Math.min(c,o,l.maxWidth)),u=$1(Math.min(u,a,l.maxHeight)),c&&!u&&(u=$1(c/2)),{width:c,height:u}}function K3(t,e,n){const s=e||1,i=Math.floor(t.height*s),r=Math.floor(t.width*s);t.height=i/s,t.width=r/s;const o=t.canvas;return o.style&&(n||!o.style.height&&!o.style.width)&&(o.style.height=`${t.height}px`,o.style.width=`${t.width}px`),t.currentDevicePixelRatio!==s||o.height!==i||o.width!==r?(t.currentDevicePixelRatio=s,o.height=i,o.width=r,t.ctx.setTransform(s,0,0,s,0,0),!0):!1}const lne=function(){let t=!1;try{const e={get passive(){return t=!0,!1}};window.addEventListener("test",null,e),window.removeEventListener("test",null,e)}catch{}return t}();function X3(t,e){const n=nne(t,e),s=n&&n.match(/^(\d+)(\.\d+)?px$/);return s?+s[1]:void 0}function tl(t,e,n,s){return{x:t.x+n*(e.x-t.x),y:t.y+n*(e.y-t.y)}}function cne(t,e,n,s){return{x:t.x+n*(e.x-t.x),y:s==="middle"?n<.5?t.y:e.y:s==="after"?n<1?t.y:e.y:n>0?e.y:t.y}}function une(t,e,n,s){const i={x:t.cp2x,y:t.cp2y},r={x:e.cp1x,y:e.cp1y},o=tl(t,i,n),a=tl(i,r,n),l=tl(r,e,n),c=tl(o,a,n),u=tl(a,l,n);return tl(c,u,n)}const Z3=new Map;function dne(t,e){e=e||{};const n=t+JSON.stringify(e);let s=Z3.get(n);return s||(s=new Intl.NumberFormat(t,e),Z3.set(n,s)),s}function Bh(t,e,n){return dne(e,n).format(t)}const fne=function(t,e){return{x(n){return t+t+e-n},setWidth(n){e=n},textAlign(n){return n==="center"?n:n==="right"?"left":"right"},xPlus(n,s){return n-s},leftForLtr(n,s){return n-s}}},hne=function(){return{x(t){return t},setWidth(t){},textAlign(t){return t},xPlus(t,e){return t+e},leftForLtr(t,e){return t}}};function fu(t,e,n){return t?fne(e,n):hne()}function zR(t,e){let n,s;(e==="ltr"||e==="rtl")&&(n=t.canvas.style,s=[n.getPropertyValue("direction"),n.getPropertyPriority("direction")],n.setProperty("direction",e,"important"),t.prevTextDirection=s)}function HR(t,e){e!==void 0&&(delete t.prevTextDirection,t.canvas.style.setProperty("direction",e[0],e[1]))}function VR(t){return t==="angle"?{between:rh,compare:Qee,normalize:Di}:{between:ha,compare:(e,n)=>e-n,normalize:e=>e}}function J3({start:t,end:e,count:n,loop:s,style:i}){return{start:t%n,end:e%n,loop:s&&(e-t+1)%n===0,style:i}}function pne(t,e,n){const{property:s,start:i,end:r}=n,{between:o,normalize:a}=VR(s),l=e.length;let{start:c,end:u,loop:d}=t,f,h;if(d){for(c+=l,u+=l,f=0,h=l;fl(i,v,b)&&a(i,v)!==0,S=()=>a(r,b)===0||l(r,v,b),w=()=>p||x(),T=()=>!p||S();for(let E=u,A=u;E<=d;++E)y=e[E%o],!y.skip&&(b=c(y[s]),b!==v&&(p=l(b,i,r),m===null&&w()&&(m=a(b,i)===0?E:A),m!==null&&T()&&(_.push(J3({start:m,end:E,loop:f,count:o,style:h})),m=null),A=E,v=b));return m!==null&&_.push(J3({start:m,end:d,loop:f,count:o,style:h})),_}function gne(t,e){const n=[],s=t.segments;for(let i=0;ii&&t[r%e].skip;)r--;return r%=e,{start:i,end:r}}function bne(t,e,n,s){const i=t.length,r=[];let o=e,a=t[e],l;for(l=e+1;l<=n;++l){const c=t[l%i];c.skip||c.stop?a.skip||(s=!1,r.push({start:e%i,end:(l-1)%i,loop:s}),e=o=c.stop?l:null):(o=l,a.skip&&(e=l)),a=c}return o!==null&&r.push({start:e%i,end:o%i,loop:s}),r}function yne(t,e){const n=t.points,s=t.options.spanGaps,i=n.length;if(!i)return[];const r=!!t._loop,{start:o,end:a}=_ne(n,i,r,s);if(s===!0)return Q3(t,[{start:o,end:a,loop:r}],n,e);const l=aa({chart:e,initial:n.initial,numSteps:o,currentStep:Math.min(s-n.start,o)}))}_refresh(){this._request||(this._running=!0,this._request=ER.call(window,()=>{this._update(),this._request=null,this._running&&this._refresh()}))}_update(e=Date.now()){let n=0;this._charts.forEach((s,i)=>{if(!s.running||!s.items.length)return;const r=s.items;let o=r.length-1,a=!1,l;for(;o>=0;--o)l=r[o],l._active?(l._total>s.duration&&(s.duration=l._total),l.tick(e),a=!0):(r[o]=r[r.length-1],r.pop());a&&(i.draw(),this._notify(i,s,e,"progress")),r.length||(s.running=!1,this._notify(i,s,e,"complete"),s.initial=!1),n+=r.length}),this._lastDate=e,n===0&&(this._running=!1)}_getAnims(e){const n=this._charts;let s=n.get(e);return s||(s={running:!1,initial:!0,items:[],listeners:{complete:[],progress:[]}},n.set(e,s)),s}listen(e,n,s){this._getAnims(e).listeners[n].push(s)}add(e,n){!n||!n.length||this._getAnims(e).items.push(...n)}has(e){return this._getAnims(e).items.length>0}start(e){const n=this._charts.get(e);n&&(n.running=!0,n.start=Date.now(),n.duration=n.items.reduce((s,i)=>Math.max(s,i._duration),0),this._refresh())}running(e){if(!this._running)return!1;const n=this._charts.get(e);return!(!n||!n.running||!n.items.length)}stop(e){const n=this._charts.get(e);if(!n||!n.items.length)return;const s=n.items;let i=s.length-1;for(;i>=0;--i)s[i].cancel();n.items=[],this._notify(e,n,Date.now(),"complete")}remove(e){return this._charts.delete(e)}}var Wr=new xne;const tT="transparent",Sne={boolean(t,e,n){return n>.5?e:t},color(t,e,n){const s=W3(t||tT),i=s.valid&&W3(e||tT);return i&&i.valid?i.mix(s,n).hexString():e},number(t,e,n){return t+(e-t)*n}};class Ene{constructor(e,n,s,i){const r=n[s];i=Hp([e.to,i,r,e.from]);const o=Hp([e.from,r,i]);this._active=!0,this._fn=e.fn||Sne[e.type||typeof o],this._easing=Af[e.easing]||Af.linear,this._start=Math.floor(Date.now()+(e.delay||0)),this._duration=this._total=Math.floor(e.duration),this._loop=!!e.loop,this._target=n,this._prop=s,this._from=o,this._to=i,this._promises=void 0}active(){return this._active}update(e,n,s){if(this._active){this._notify(!1);const i=this._target[this._prop],r=s-this._start,o=this._duration-r;this._start=s,this._duration=Math.floor(Math.max(o,e.duration)),this._total+=r,this._loop=!!e.loop,this._to=Hp([e.to,n,i,e.from]),this._from=Hp([e.from,i,n])}}cancel(){this._active&&(this.tick(Date.now()),this._active=!1,this._notify(!1))}tick(e){const n=e-this._start,s=this._duration,i=this._prop,r=this._from,o=this._loop,a=this._to;let l;if(this._active=r!==a&&(o||n1?2-l:l,l=this._easing(Math.min(1,Math.max(0,l))),this._target[i]=this._fn(r,a,l)}wait(){const e=this._promises||(this._promises=[]);return new Promise((n,s)=>{e.push({res:n,rej:s})})}_notify(e){const n=e?"res":"rej",s=this._promises||[];for(let i=0;it!=="onProgress"&&t!=="onComplete"&&t!=="fn"});St.set("animations",{colors:{type:"color",properties:Ane},numbers:{type:"number",properties:Tne}});St.describe("animations",{_fallback:"animation"});St.set("transitions",{active:{animation:{duration:400}},resize:{animation:{duration:0}},show:{animations:{colors:{from:"transparent"},visible:{type:"boolean",duration:0}}},hide:{animations:{colors:{to:"transparent"},visible:{type:"boolean",easing:"linear",fn:t=>t|0}}}});class WR{constructor(e,n){this._chart=e,this._properties=new Map,this.configure(n)}configure(e){if(!Rt(e))return;const n=this._properties;Object.getOwnPropertyNames(e).forEach(s=>{const i=e[s];if(!Rt(i))return;const r={};for(const o of Mne)r[o]=i[o];(sn(i.properties)&&i.properties||[s]).forEach(o=>{(o===s||!n.has(o))&&n.set(o,r)})})}_animateOptions(e,n){const s=n.options,i=Rne(e,s);if(!i)return[];const r=this._createAnimations(i,s);return s.$shared&&kne(e.options.$animations,s).then(()=>{e.options=s},()=>{}),r}_createAnimations(e,n){const s=this._properties,i=[],r=e.$animations||(e.$animations={}),o=Object.keys(n),a=Date.now();let l;for(l=o.length-1;l>=0;--l){const c=o[l];if(c.charAt(0)==="$")continue;if(c==="options"){i.push(...this._animateOptions(e,n));continue}const u=n[c];let d=r[c];const f=s.get(c);if(d)if(f&&d.active()){d.update(f,u,a);continue}else d.cancel();if(!f||!f.duration){e[c]=u;continue}r[c]=d=new Ene(f,e,c,u),i.push(d)}return i}update(e,n){if(this._properties.size===0){Object.assign(e,n);return}const s=this._createAnimations(e,n);if(s.length)return Wr.add(this._chart,s),!0}}function kne(t,e){const n=[],s=Object.keys(e);for(let i=0;i0||!n&&r<0)return i.index}return null}function oT(t,e){const{chart:n,_cachedMeta:s}=t,i=n._stacks||(n._stacks={}),{iScale:r,vScale:o,index:a}=s,l=r.axis,c=o.axis,u=Lne(r,o,s),d=e.length;let f;for(let h=0;hn[s].axis===e).shift()}function Fne(t,e){return Da(t,{active:!1,dataset:void 0,datasetIndex:e,index:e,mode:"default",type:"dataset"})}function Nne(t,e,n){return Da(t,{active:!1,dataIndex:e,parsed:void 0,raw:void 0,element:n,index:e,mode:"default",type:"data"})}function zd(t,e){const n=t.controller.index,s=t.vScale&&t.vScale.axis;if(s){e=e||t._parsed;for(const i of e){const r=i._stacks;if(!r||r[s]===void 0||r[s][n]===void 0)return;delete r[s][n]}}}const B1=t=>t==="reset"||t==="none",aT=(t,e)=>e?t:Object.assign({},t),$ne=(t,e,n)=>t&&!e.hidden&&e._stacked&&{keys:jR(n,!0),values:null};class Qi{constructor(e,n){this.chart=e,this._ctx=e.ctx,this.index=n,this._cachedDataOpts={},this._cachedMeta=this.getMeta(),this._type=this._cachedMeta.type,this.options=void 0,this._parsing=!1,this._data=void 0,this._objectData=void 0,this._sharedOptions=void 0,this._drawStart=void 0,this._drawCount=void 0,this.enableOptionSharing=!1,this.supportsDecimation=!1,this.$context=void 0,this._syncList=[],this.initialize()}initialize(){const e=this._cachedMeta;this.configure(),this.linkScales(),e._stacked=iT(e.vScale,e),this.addElements()}updateIndex(e){this.index!==e&&zd(this._cachedMeta),this.index=e}linkScales(){const e=this.chart,n=this._cachedMeta,s=this.getDataset(),i=(d,f,h,_)=>d==="x"?f:d==="r"?_:h,r=n.xAxisID=gt(s.xAxisID,U1(e,"x")),o=n.yAxisID=gt(s.yAxisID,U1(e,"y")),a=n.rAxisID=gt(s.rAxisID,U1(e,"r")),l=n.indexAxis,c=n.iAxisID=i(l,r,o,a),u=n.vAxisID=i(l,o,r,a);n.xScale=this.getScaleForId(r),n.yScale=this.getScaleForId(o),n.rScale=this.getScaleForId(a),n.iScale=this.getScaleForId(c),n.vScale=this.getScaleForId(u)}getDataset(){return this.chart.data.datasets[this.index]}getMeta(){return this.chart.getDatasetMeta(this.index)}getScaleForId(e){return this.chart.scales[e]}_getOtherScale(e){const n=this._cachedMeta;return e===n.iScale?n.vScale:n.iScale}reset(){this._update("reset")}_destroy(){const e=this._cachedMeta;this._data&&$3(this._data,this),e._stacked&&zd(e)}_dataCheck(){const e=this.getDataset(),n=e.data||(e.data=[]),s=this._data;if(Rt(n))this._data=Ine(n);else if(s!==n){if(s){$3(s,this);const i=this._cachedMeta;zd(i),i._parsed=[]}n&&Object.isExtensible(n)&&ste(n,this),this._syncList=[],this._data=n}}addElements(){const e=this._cachedMeta;this._dataCheck(),this.datasetElementType&&(e.dataset=new this.datasetElementType)}buildOrUpdateElements(e){const n=this._cachedMeta,s=this.getDataset();let i=!1;this._dataCheck();const r=n._stacked;n._stacked=iT(n.vScale,n),n.stack!==s.stack&&(i=!0,zd(n),n.stack=s.stack),this._resyncElements(e),(i||r!==n._stacked)&&oT(this,n._parsed)}configure(){const e=this.chart.config,n=e.datasetScopeKeys(this._type),s=e.getOptionScopes(this.getDataset(),n,!0);this.options=e.createResolver(s,this.getContext()),this._parsing=this.options.parsing,this._cachedDataOpts={}}parse(e,n){const{_cachedMeta:s,_data:i}=this,{iScale:r,_stacked:o}=s,a=r.axis;let l=e===0&&n===i.length?!0:s._sorted,c=e>0&&s._parsed[e-1],u,d,f;if(this._parsing===!1)s._parsed=i,s._sorted=!0,f=i;else{sn(i[e])?f=this.parseArrayData(s,i,e,n):Rt(i[e])?f=this.parseObjectData(s,i,e,n):f=this.parsePrimitiveData(s,i,e,n);const h=()=>d[a]===null||c&&d[a]p||d=0;--f)if(!_()){this.updateRangeFromParsed(c,e,h,l);break}}return c}getAllParsedValues(e){const n=this._cachedMeta._parsed,s=[];let i,r,o;for(i=0,r=n.length;i=0&&ethis.getContext(s,i),p=c.resolveNamedOptions(f,h,_,d);return p.$shared&&(p.$shared=l,r[o]=Object.freeze(aT(p,l))),p}_resolveAnimations(e,n,s){const i=this.chart,r=this._cachedDataOpts,o=`animation-${n}`,a=r[o];if(a)return a;let l;if(i.options.animation!==!1){const u=this.chart.config,d=u.datasetAnimationScopeKeys(this._type,n),f=u.getOptionScopes(this.getDataset(),d);l=u.createResolver(f,this.getContext(e,s,n))}const c=new WR(i,l&&l.animations);return l&&l._cacheable&&(r[o]=Object.freeze(c)),c}getSharedOptions(e){if(e.$shared)return this._sharedOptions||(this._sharedOptions=Object.assign({},e))}includeOptions(e,n){return!n||B1(e)||this.chart._animationsDisabled}_getSharedOptions(e,n){const s=this.resolveDataElementOptions(e,n),i=this._sharedOptions,r=this.getSharedOptions(s),o=this.includeOptions(n,r)||r!==i;return this.updateSharedOptions(r,n,s),{sharedOptions:r,includeOptions:o}}updateElement(e,n,s,i){B1(i)?Object.assign(e,s):this._resolveAnimations(n,i).update(e,s)}updateSharedOptions(e,n,s){e&&!B1(n)&&this._resolveAnimations(void 0,n).update(e,s)}_setStyle(e,n,s,i){e.active=i;const r=this.getStyle(n,i);this._resolveAnimations(n,s,i).update(e,{options:!i&&this.getSharedOptions(r)||r})}removeHoverStyle(e,n,s){this._setStyle(e,s,"active",!1)}setHoverStyle(e,n,s){this._setStyle(e,s,"active",!0)}_removeDatasetHoverStyle(){const e=this._cachedMeta.dataset;e&&this._setStyle(e,void 0,"active",!1)}_setDatasetHoverStyle(){const e=this._cachedMeta.dataset;e&&this._setStyle(e,void 0,"active",!0)}_resyncElements(e){const n=this._data,s=this._cachedMeta.data;for(const[a,l,c]of this._syncList)this[a](l,c);this._syncList=[];const i=s.length,r=n.length,o=Math.min(r,i);o&&this.parse(0,o),r>i?this._insertElements(i,r-i,e):r{for(c.length+=n,a=c.length-1;a>=o;a--)c[a]=c[a-n]};for(l(r),a=e;ai-r))}return t._cache.$bar}function Bne(t){const e=t.iScale,n=Une(e,t.type);let s=e._length,i,r,o,a;const l=()=>{o===32767||o===-32768||(bi(a)&&(s=Math.min(s,Math.abs(o-a)||s)),a=o)};for(i=0,r=n.length;i0?i[t-1]:null,a=tMath.abs(a)&&(l=a,c=o),e[n.axis]=c,e._custom={barStart:l,barEnd:c,start:i,end:r,min:o,max:a}}function qR(t,e,n,s){return sn(t)?Hne(t,e,n,s):e[n.axis]=n.parse(t,s),e}function lT(t,e,n,s){const i=t.iScale,r=t.vScale,o=i.getLabels(),a=i===r,l=[];let c,u,d,f;for(c=n,u=n+s;c=n?1:-1)}function Wne(t){let e,n,s,i,r;return t.horizontal?(e=t.base>t.x,n="left",s="right"):(e=t.basel.controller.options.grouped),r=s.options.stacked,o=[],a=l=>{const c=l.controller.getParsed(n),u=c&&c[l.vScale.axis];if(Nt(u)||isNaN(u))return!0};for(const l of i)if(!(n!==void 0&&a(l))&&((r===!1||o.indexOf(l.stack)===-1||r===void 0&&l.stack===void 0)&&o.push(l.stack),l.index===e))break;return o.length||o.push(void 0),o}_getStackCount(e){return this._getStacks(void 0,e).length}_getStackIndex(e,n,s){const i=this._getStacks(e,s),r=n!==void 0?i.indexOf(n):-1;return r===-1?i.length-1:r}_getRuler(){const e=this.options,n=this._cachedMeta,s=n.iScale,i=[];let r,o;for(r=0,o=n.data.length;r=0;--s)n=Math.max(n,e[s].size(this.resolveDataElementOptions(s))/2);return n>0&&n}getLabelAndValue(e){const n=this._cachedMeta,{xScale:s,yScale:i}=n,r=this.getParsed(e),o=s.getLabelForValue(r.x),a=i.getLabelForValue(r.y),l=r._custom;return{label:n.label,value:"("+o+", "+a+(l?", "+l:"")+")"}}update(e){const n=this._cachedMeta.data;this.updateElements(n,0,n.length,e)}updateElements(e,n,s,i){const r=i==="reset",{iScale:o,vScale:a}=this._cachedMeta,{sharedOptions:l,includeOptions:c}=this._getSharedOptions(n,i),u=o.axis,d=a.axis;for(let f=n;frh(v,a,l,!0)?1:Math.max(x,x*n,S,S*n),_=(v,x,S)=>rh(v,a,l,!0)?-1:Math.min(x,x*n,S,S*n),p=h(0,c,d),m=h(yn,u,f),b=_(pn,c,d),y=_(pn+yn,u,f);s=(p-b)/2,i=(m-y)/2,r=-(p+b)/2,o=-(m+y)/2}return{ratioX:s,ratioY:i,offsetX:r,offsetY:o}}class Gh extends Qi{constructor(e,n){super(e,n),this.enableOptionSharing=!0,this.innerRadius=void 0,this.outerRadius=void 0,this.offsetX=void 0,this.offsetY=void 0}linkScales(){}parse(e,n){const s=this.getDataset().data,i=this._cachedMeta;if(this._parsing===!1)i._parsed=s;else{let r=l=>+s[l];if(Rt(s[e])){const{key:l="value"}=this._parsing;r=c=>+Ra(s[c],l)}let o,a;for(o=e,a=e+n;o0&&!isNaN(e)?jt*(Math.abs(e)/n):0}getLabelAndValue(e){const n=this._cachedMeta,s=this.chart,i=s.data.labels||[],r=Bh(n._parsed[e],s.options.locale);return{label:i[e]||"",value:r}}getMaxBorderWidth(e){let n=0;const s=this.chart;let i,r,o,a,l;if(!e){for(i=0,r=s.data.datasets.length;it!=="spacing",_indexable:t=>t!=="spacing"};Gh.overrides={aspectRatio:1,plugins:{legend:{labels:{generateLabels(t){const e=t.data;if(e.labels.length&&e.datasets.length){const{labels:{pointStyle:n}}=t.legend.options;return e.labels.map((s,i)=>{const o=t.getDatasetMeta(0).controller.getStyle(i);return{text:s,fillStyle:o.backgroundColor,strokeStyle:o.borderColor,lineWidth:o.borderWidth,pointStyle:n,hidden:!t.getDataVisibility(i),index:i}})}return[]}},onClick(t,e,n){n.chart.toggleDataVisibility(e.index),n.chart.update()}},tooltip:{callbacks:{title(){return""},label(t){let e=t.label;const n=": "+t.formattedValue;return sn(e)?(e=e.slice(),e[0]+=n):e+=n,e}}}}};class j_ extends Qi{initialize(){this.enableOptionSharing=!0,this.supportsDecimation=!0,super.initialize()}update(e){const n=this._cachedMeta,{dataset:s,data:i=[],_dataset:r}=n,o=this.chart._animationsDisabled;let{start:a,count:l}=AR(n,i,o);this._drawStart=a,this._drawCount=l,MR(n)&&(a=0,l=i.length),s._chart=this.chart,s._datasetIndex=this.index,s._decimated=!!r._decimated,s.points=i;const c=this.resolveDatasetElementOptions(e);this.options.showLine||(c.borderWidth=0),c.segment=this.options.segment,this.updateElement(s,void 0,{animated:!o,options:c},e),this.updateElements(i,a,l,e)}updateElements(e,n,s,i){const r=i==="reset",{iScale:o,vScale:a,_stacked:l,_dataset:c}=this._cachedMeta,{sharedOptions:u,includeOptions:d}=this._getSharedOptions(n,i),f=o.axis,h=a.axis,{spanGaps:_,segment:p}=this.options,m=zu(_)?_:Number.POSITIVE_INFINITY,b=this.chart._animationsDisabled||r||i==="none";let y=n>0&&this.getParsed(n-1);for(let v=n;v0&&Math.abs(S[f]-y[f])>m,p&&(w.parsed=S,w.raw=c.data[v]),d&&(w.options=u||this.resolveDataElementOptions(v,x.active?"active":i)),b||this.updateElement(x,v,w,i),y=S}}getMaxOverflow(){const e=this._cachedMeta,n=e.dataset,s=n.options&&n.options.borderWidth||0,i=e.data||[];if(!i.length)return s;const r=i[0].size(this.resolveDataElementOptions(0)),o=i[i.length-1].size(this.resolveDataElementOptions(i.length-1));return Math.max(s,r,o)/2}draw(){const e=this._cachedMeta;e.dataset.updateControlPoints(this.chart.chartArea,e.iScale.axis),super.draw()}}j_.id="line";j_.defaults={datasetElementType:"line",dataElementType:"point",showLine:!0,spanGaps:!1};j_.overrides={scales:{_index_:{type:"category"},_value_:{type:"linear"}}};class dx extends Qi{constructor(e,n){super(e,n),this.innerRadius=void 0,this.outerRadius=void 0}getLabelAndValue(e){const n=this._cachedMeta,s=this.chart,i=s.data.labels||[],r=Bh(n._parsed[e].r,s.options.locale);return{label:i[e]||"",value:r}}parseObjectData(e,n,s,i){return UR.bind(this)(e,n,s,i)}update(e){const n=this._cachedMeta.data;this._updateRadius(),this.updateElements(n,0,n.length,e)}getMinMax(){const e=this._cachedMeta,n={min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY};return e.data.forEach((s,i)=>{const r=this.getParsed(i).r;!isNaN(r)&&this.chart.getDataVisibility(i)&&(rn.max&&(n.max=r))}),n}_updateRadius(){const e=this.chart,n=e.chartArea,s=e.options,i=Math.min(n.right-n.left,n.bottom-n.top),r=Math.max(i/2,0),o=Math.max(s.cutoutPercentage?r/100*s.cutoutPercentage:1,0),a=(r-o)/e.getVisibleDatasetCount();this.outerRadius=r-a*this.index,this.innerRadius=this.outerRadius-a}updateElements(e,n,s,i){const r=i==="reset",o=this.chart,l=o.options.animation,c=this._cachedMeta.rScale,u=c.xCenter,d=c.yCenter,f=c.getIndexAngle(0)-.5*pn;let h=f,_;const p=360/this.countVisibleElements();for(_=0;_{!isNaN(this.getParsed(i).r)&&this.chart.getDataVisibility(i)&&n++}),n}_computeAngle(e,n,s){return this.chart.getDataVisibility(e)?Gi(this.resolveDataElementOptions(e,n).angle||s):0}}dx.id="polarArea";dx.defaults={dataElementType:"arc",animation:{animateRotate:!0,animateScale:!0},animations:{numbers:{type:"number",properties:["x","y","startAngle","endAngle","innerRadius","outerRadius"]}},indexAxis:"r",startAngle:0};dx.overrides={aspectRatio:1,plugins:{legend:{labels:{generateLabels(t){const e=t.data;if(e.labels.length&&e.datasets.length){const{labels:{pointStyle:n}}=t.legend.options;return e.labels.map((s,i)=>{const o=t.getDatasetMeta(0).controller.getStyle(i);return{text:s,fillStyle:o.backgroundColor,strokeStyle:o.borderColor,lineWidth:o.borderWidth,pointStyle:n,hidden:!t.getDataVisibility(i),index:i}})}return[]}},onClick(t,e,n){n.chart.toggleDataVisibility(e.index),n.chart.update()}},tooltip:{callbacks:{title(){return""},label(t){return t.chart.data.labels[t.dataIndex]+": "+t.formattedValue}}}},scales:{r:{type:"radialLinear",angleLines:{display:!1},beginAtZero:!0,grid:{circular:!0},pointLabels:{display:!1},startAngle:0}}};class YR extends Gh{}YR.id="pie";YR.defaults={cutout:0,rotation:0,circumference:360,radius:"100%"};class fx extends Qi{getLabelAndValue(e){const n=this._cachedMeta.vScale,s=this.getParsed(e);return{label:n.getLabels()[e],value:""+n.getLabelForValue(s[n.axis])}}parseObjectData(e,n,s,i){return UR.bind(this)(e,n,s,i)}update(e){const n=this._cachedMeta,s=n.dataset,i=n.data||[],r=n.iScale.getLabels();if(s.points=i,e!=="resize"){const o=this.resolveDatasetElementOptions(e);this.options.showLine||(o.borderWidth=0);const a={_loop:!0,_fullLoop:r.length===i.length,options:o};this.updateElement(s,void 0,a,e)}this.updateElements(i,0,i.length,e)}updateElements(e,n,s,i){const r=this._cachedMeta.rScale,o=i==="reset";for(let a=n;a{i[r]=s[r]&&s[r].active()?s[r]._to:this[r]}),i}};er.defaults={};er.defaultRoutes=void 0;const KR={values(t){return sn(t)?t:""+t},numeric(t,e,n){if(t===0)return"0";const s=this.chart.options.locale;let i,r=t;if(n.length>1){const c=Math.max(Math.abs(n[0].value),Math.abs(n[n.length-1].value));(c<1e-4||c>1e15)&&(i="scientific"),r=Xne(t,n)}const o=ui(Math.abs(r)),a=Math.max(Math.min(-1*Math.floor(o),20),0),l={notation:i,minimumFractionDigits:a,maximumFractionDigits:a};return Object.assign(l,this.options.ticks.format),Bh(t,s,l)},logarithmic(t,e,n){if(t===0)return"0";const s=t/Math.pow(10,Math.floor(ui(t)));return s===1||s===2||s===5?KR.numeric.call(this,t,e,n):""}};function Xne(t,e){let n=e.length>3?e[2].value-e[1].value:e[1].value-e[0].value;return Math.abs(n)>=1&&t!==Math.floor(t)&&(n=t-Math.floor(t)),n}var q_={formatters:KR};St.set("scale",{display:!0,offset:!1,reverse:!1,beginAtZero:!1,bounds:"ticks",grace:0,grid:{display:!0,lineWidth:1,drawBorder:!0,drawOnChartArea:!0,drawTicks:!0,tickLength:8,tickWidth:(t,e)=>e.lineWidth,tickColor:(t,e)=>e.color,offset:!1,borderDash:[],borderDashOffset:0,borderWidth:1},title:{display:!1,text:"",padding:{top:4,bottom:4}},ticks:{minRotation:0,maxRotation:50,mirror:!1,textStrokeWidth:0,textStrokeColor:"",padding:3,display:!0,autoSkip:!0,autoSkipPadding:3,labelOffset:0,callback:q_.formatters.values,minor:{},major:{},align:"center",crossAlign:"near",showLabelBackdrop:!1,backdropColor:"rgba(255, 255, 255, 0.75)",backdropPadding:2}});St.route("scale.ticks","color","","color");St.route("scale.grid","color","","borderColor");St.route("scale.grid","borderColor","","borderColor");St.route("scale.title","color","","color");St.describe("scale",{_fallback:!1,_scriptable:t=>!t.startsWith("before")&&!t.startsWith("after")&&t!=="callback"&&t!=="parser",_indexable:t=>t!=="borderDash"&&t!=="tickBorderDash"});St.describe("scales",{_fallback:"scale"});St.describe("scale.ticks",{_scriptable:t=>t!=="backdropPadding"&&t!=="callback",_indexable:t=>t!=="backdropPadding"});function Zne(t,e){const n=t.options.ticks,s=n.maxTicksLimit||Jne(t),i=n.major.enabled?ese(e):[],r=i.length,o=i[0],a=i[r-1],l=[];if(r>s)return tse(e,l,i,r/s),l;const c=Qne(i,e,s);if(r>0){let u,d;const f=r>1?Math.round((a-o)/(r-1)):null;for(Wp(e,l,c,Nt(f)?0:o-f,o),u=0,d=r-1;ui)return l}return Math.max(i,1)}function ese(t){const e=[];let n,s;for(n=0,s=t.length;nt==="left"?"right":t==="right"?"left":t,dT=(t,e,n)=>e==="top"||e==="left"?t[e]+n:t[e]-n;function fT(t,e){const n=[],s=t.length/e,i=t.length;let r=0;for(;ro+a)))return l}function rse(t,e){zt(t,n=>{const s=n.gc,i=s.length/2;let r;if(i>e){for(r=0;rs?s:n,s=i&&n>s?n:s,{min:ri(n,ri(s,n)),max:ri(s,ri(n,s))}}getPadding(){return{left:this.paddingLeft||0,top:this.paddingTop||0,right:this.paddingRight||0,bottom:this.paddingBottom||0}}getTicks(){return this.ticks}getLabels(){const e=this.chart.data;return this.options.labels||(this.isHorizontal()?e.xLabels:e.yLabels)||e.labels||[]}beforeLayout(){this._cache={},this._dataLimitsCached=!1}beforeUpdate(){Kt(this.options.beforeUpdate,[this])}update(e,n,s){const{beginAtZero:i,grace:r,ticks:o}=this.options,a=o.sampleSize;this.beforeUpdate(),this.maxWidth=e,this.maxHeight=n,this._margins=s=Object.assign({left:0,right:0,top:0,bottom:0},s),this.ticks=null,this._labelSizes=null,this._gridLineItems=null,this._labelItems=null,this.beforeSetDimensions(),this.setDimensions(),this.afterSetDimensions(),this._maxLength=this.isHorizontal()?this.width+s.left+s.right:this.height+s.top+s.bottom,this._dataLimitsCached||(this.beforeDataLimits(),this.determineDataLimits(),this.afterDataLimits(),this._range=Ute(this,r,i),this._dataLimitsCached=!0),this.beforeBuildTicks(),this.ticks=this.buildTicks()||[],this.afterBuildTicks();const l=a=r||s<=1||!this.isHorizontal()){this.labelRotation=i;return}const u=this._getLabelSizes(),d=u.widest.width,f=u.highest.height,h=as(this.chart.width-d,0,this.maxWidth);a=e.offset?this.maxWidth/s:h/(s-1),d+6>a&&(a=h/(s-(e.offset?.5:1)),l=this.maxHeight-Hd(e.grid)-n.padding-hT(e.title,this.chart.options.font),c=Math.sqrt(d*d+f*f),o=Xw(Math.min(Math.asin(as((u.highest.height+6)/a,-1,1)),Math.asin(as(l/c,-1,1))-Math.asin(as(f/c,-1,1)))),o=Math.max(i,Math.min(r,o))),this.labelRotation=o}afterCalculateLabelRotation(){Kt(this.options.afterCalculateLabelRotation,[this])}afterAutoSkip(){}beforeFit(){Kt(this.options.beforeFit,[this])}fit(){const e={width:0,height:0},{chart:n,options:{ticks:s,title:i,grid:r}}=this,o=this._isVisible(),a=this.isHorizontal();if(o){const l=hT(i,n.options.font);if(a?(e.width=this.maxWidth,e.height=Hd(r)+l):(e.height=this.maxHeight,e.width=Hd(r)+l),s.display&&this.ticks.length){const{first:c,last:u,widest:d,highest:f}=this._getLabelSizes(),h=s.padding*2,_=Gi(this.labelRotation),p=Math.cos(_),m=Math.sin(_);if(a){const b=s.mirror?0:m*d.width+p*f.height;e.height=Math.min(this.maxHeight,e.height+b+h)}else{const b=s.mirror?0:p*d.width+m*f.height;e.width=Math.min(this.maxWidth,e.width+b+h)}this._calculatePadding(c,u,m,p)}}this._handleMargins(),a?(this.width=this._length=n.width-this._margins.left-this._margins.right,this.height=e.height):(this.width=e.width,this.height=this._length=n.height-this._margins.top-this._margins.bottom)}_calculatePadding(e,n,s,i){const{ticks:{align:r,padding:o},position:a}=this.options,l=this.labelRotation!==0,c=a!=="top"&&this.axis==="x";if(this.isHorizontal()){const u=this.getPixelForTick(0)-this.left,d=this.right-this.getPixelForTick(this.ticks.length-1);let f=0,h=0;l?c?(f=i*e.width,h=s*n.height):(f=s*e.height,h=i*n.width):r==="start"?h=n.width:r==="end"?f=e.width:r!=="inner"&&(f=e.width/2,h=n.width/2),this.paddingLeft=Math.max((f-u+o)*this.width/(this.width-u),0),this.paddingRight=Math.max((h-d+o)*this.width/(this.width-d),0)}else{let u=n.height/2,d=e.height/2;r==="start"?(u=0,d=e.height):r==="end"&&(u=n.height,d=0),this.paddingTop=u+o,this.paddingBottom=d+o}}_handleMargins(){this._margins&&(this._margins.left=Math.max(this.paddingLeft,this._margins.left),this._margins.top=Math.max(this.paddingTop,this._margins.top),this._margins.right=Math.max(this.paddingRight,this._margins.right),this._margins.bottom=Math.max(this.paddingBottom,this._margins.bottom))}afterFit(){Kt(this.options.afterFit,[this])}isHorizontal(){const{axis:e,position:n}=this.options;return n==="top"||n==="bottom"||e==="x"}isFullSize(){return this.options.fullSize}_convertTicksToLabels(e){this.beforeTickToLabelConversion(),this.generateTickLabels(e);let n,s;for(n=0,s=e.length;n({width:r[T]||0,height:o[T]||0});return{first:w(0),last:w(n-1),widest:w(x),highest:w(S),widths:r,heights:o}}getLabelForValue(e){return e}getPixelForValue(e,n){return NaN}getValueForPixel(e){}getPixelForTick(e){const n=this.ticks;return e<0||e>n.length-1?null:this.getPixelForValue(n[e].value)}getPixelForDecimal(e){this._reversePixels&&(e=1-e);const n=this._startPixel+e*this._length;return ete(this._alignToPixels?qa(this.chart,n,0):n)}getDecimalForPixel(e){const n=(e-this._startPixel)/this._length;return this._reversePixels?1-n:n}getBasePixel(){return this.getPixelForValue(this.getBaseValue())}getBaseValue(){const{min:e,max:n}=this;return e<0&&n<0?n:e>0&&n>0?e:0}getContext(e){const n=this.ticks||[];if(e>=0&&ea*i?a/s:l/i:l*i0}_computeGridLineItems(e){const n=this.axis,s=this.chart,i=this.options,{grid:r,position:o}=i,a=r.offset,l=this.isHorizontal(),u=this.ticks.length+(a?1:0),d=Hd(r),f=[],h=r.setContext(this.getContext()),_=h.drawBorder?h.borderWidth:0,p=_/2,m=function($){return qa(s,$,_)};let b,y,v,x,S,w,T,E,A,O,I,B;if(o==="top")b=m(this.bottom),w=this.bottom-d,E=b-p,O=m(e.top)+p,B=e.bottom;else if(o==="bottom")b=m(this.top),O=e.top,B=m(e.bottom)-p,w=b+p,E=this.top+d;else if(o==="left")b=m(this.right),S=this.right-d,T=b-p,A=m(e.left)+p,I=e.right;else if(o==="right")b=m(this.left),A=e.left,I=m(e.right)-p,S=b+p,T=this.left+d;else if(n==="x"){if(o==="center")b=m((e.top+e.bottom)/2+.5);else if(Rt(o)){const $=Object.keys(o)[0],F=o[$];b=m(this.chart.scales[$].getPixelForValue(F))}O=e.top,B=e.bottom,w=b+p,E=w+d}else if(n==="y"){if(o==="center")b=m((e.left+e.right)/2);else if(Rt(o)){const $=Object.keys(o)[0],F=o[$];b=m(this.chart.scales[$].getPixelForValue(F))}S=b-p,T=S-d,A=e.left,I=e.right}const U=gt(i.ticks.maxTicksLimit,u),D=Math.max(1,Math.ceil(u/U));for(y=0;yr.value===e);return i>=0?n.setContext(this.getContext(i)).lineWidth:0}drawGrid(e){const n=this.options.grid,s=this.ctx,i=this._gridLineItems||(this._gridLineItems=this._computeGridLineItems(e));let r,o;const a=(l,c,u)=>{!u.width||!u.color||(s.save(),s.lineWidth=u.width,s.strokeStyle=u.color,s.setLineDash(u.borderDash||[]),s.lineDashOffset=u.borderDashOffset,s.beginPath(),s.moveTo(l.x,l.y),s.lineTo(c.x,c.y),s.stroke(),s.restore())};if(n.display)for(r=0,o=i.length;r{this.draw(i)}}]:[{z:s,draw:i=>{this.drawBackground(),this.drawGrid(i),this.drawTitle()}},{z:s+1,draw:()=>{this.drawBorder()}},{z:n,draw:i=>{this.drawLabels(i)}}]}getMatchingVisibleMetas(e){const n=this.chart.getSortedVisibleDatasetMetas(),s=this.axis+"AxisID",i=[];let r,o;for(r=0,o=n.length;r{const s=n.split("."),i=s.pop(),r=[t].concat(s).join("."),o=e[n].split("."),a=o.pop(),l=o.join(".");St.route(r,i,l,a)})}function fse(t){return"id"in t&&"defaults"in t}class hse{constructor(){this.controllers=new jp(Qi,"datasets",!0),this.elements=new jp(er,"elements"),this.plugins=new jp(Object,"plugins"),this.scales=new jp(sc,"scales"),this._typedRegistries=[this.controllers,this.scales,this.elements]}add(...e){this._each("register",e)}remove(...e){this._each("unregister",e)}addControllers(...e){this._each("register",e,this.controllers)}addElements(...e){this._each("register",e,this.elements)}addPlugins(...e){this._each("register",e,this.plugins)}addScales(...e){this._each("register",e,this.scales)}getController(e){return this._get(e,this.controllers,"controller")}getElement(e){return this._get(e,this.elements,"element")}getPlugin(e){return this._get(e,this.plugins,"plugin")}getScale(e){return this._get(e,this.scales,"scale")}removeControllers(...e){this._each("unregister",e,this.controllers)}removeElements(...e){this._each("unregister",e,this.elements)}removePlugins(...e){this._each("unregister",e,this.plugins)}removeScales(...e){this._each("unregister",e,this.scales)}_each(e,n,s){[...n].forEach(i=>{const r=s||this._getRegistryForType(i);s||r.isForType(i)||r===this.plugins&&i.id?this._exec(e,r,i):zt(i,o=>{const a=s||this._getRegistryForType(o);this._exec(e,a,o)})})}_exec(e,n,s){const i=Kw(e);Kt(s["before"+i],[],s),n[e](s),Kt(s["after"+i],[],s)}_getRegistryForType(e){for(let n=0;n0&&this.getParsed(n-1);for(let x=n;x0&&Math.abs(w[h]-v[h])>b,m&&(T.parsed=w,T.raw=c.data[x]),f&&(T.options=d||this.resolveDataElementOptions(x,S.active?"active":i)),y||this.updateElement(S,x,T,i),v=w}this.updateSharedOptions(d,i,u)}getMaxOverflow(){const e=this._cachedMeta,n=e.data||[];if(!this.options.showLine){let a=0;for(let l=n.length-1;l>=0;--l)a=Math.max(a,n[l].size(this.resolveDataElementOptions(l))/2);return a>0&&a}const s=e.dataset,i=s.options&&s.options.borderWidth||0;if(!n.length)return i;const r=n[0].size(this.resolveDataElementOptions(0)),o=n[n.length-1].size(this.resolveDataElementOptions(n.length-1));return Math.max(i,r,o)/2}}Y_.id="scatter";Y_.defaults={datasetElementType:!1,dataElementType:"point",showLine:!1,fill:!1};Y_.overrides={interaction:{mode:"point"},plugins:{tooltip:{callbacks:{title(){return""},label(t){return"("+t.label+", "+t.formattedValue+")"}}}},scales:{x:{type:"linear"},y:{type:"linear"}}};function Ya(){throw new Error("This method is not implemented: Check that a complete date adapter is provided.")}class _y{constructor(e){this.options=e||{}}init(e){}formats(){return Ya()}parse(e,n){return Ya()}format(e,n){return Ya()}add(e,n,s){return Ya()}diff(e,n,s){return Ya()}startOf(e,n,s){return Ya()}endOf(e,n){return Ya()}}_y.override=function(t){Object.assign(_y.prototype,t)};var XR={_date:_y};function pse(t,e,n,s){const{controller:i,data:r,_sorted:o}=t,a=i._cachedMeta.iScale;if(a&&e===a.axis&&e!=="r"&&o&&r.length){const l=a._reversePixels?tte:vl;if(s){if(i._sharedOptions){const c=r[0],u=typeof c.getRange=="function"&&c.getRange(e);if(u){const d=l(r,e,n-u),f=l(r,e,n+u);return{lo:d.lo,hi:f.hi}}}}else return l(r,e,n)}return{lo:0,hi:r.length-1}}function zh(t,e,n,s,i){const r=t.getSortedVisibleDatasetMetas(),o=n[e];for(let a=0,l=r.length;a{l[o](e[n],i)&&(r.push({element:l,datasetIndex:c,index:u}),a=a||l.inRange(e.x,e.y,i))}),s&&!a?[]:r}var bse={evaluateInteractionItems:zh,modes:{index(t,e,n,s){const i=el(e,t),r=n.axis||"x",o=n.includeInvisible||!1,a=n.intersect?z1(t,i,r,s,o):H1(t,i,r,!1,s,o),l=[];return a.length?(t.getSortedVisibleDatasetMetas().forEach(c=>{const u=a[0].index,d=c.data[u];d&&!d.skip&&l.push({element:d,datasetIndex:c.index,index:u})}),l):[]},dataset(t,e,n,s){const i=el(e,t),r=n.axis||"xy",o=n.includeInvisible||!1;let a=n.intersect?z1(t,i,r,s,o):H1(t,i,r,!1,s,o);if(a.length>0){const l=a[0].datasetIndex,c=t.getDatasetMeta(l).data;a=[];for(let u=0;un.pos===e)}function mT(t,e){return t.filter(n=>ZR.indexOf(n.pos)===-1&&n.box.axis===e)}function Wd(t,e){return t.sort((n,s)=>{const i=e?s:n,r=e?n:s;return i.weight===r.weight?i.index-r.index:i.weight-r.weight})}function yse(t){const e=[];let n,s,i,r,o,a;for(n=0,s=(t||[]).length;nc.box.fullSize),!0),s=Wd(Vd(e,"left"),!0),i=Wd(Vd(e,"right")),r=Wd(Vd(e,"top"),!0),o=Wd(Vd(e,"bottom")),a=mT(e,"x"),l=mT(e,"y");return{fullSize:n,leftAndTop:s.concat(r),rightAndBottom:i.concat(l).concat(o).concat(a),chartArea:Vd(e,"chartArea"),vertical:s.concat(i).concat(l),horizontal:r.concat(o).concat(a)}}function gT(t,e,n,s){return Math.max(t[n],e[n])+Math.max(t[s],e[s])}function JR(t,e){t.top=Math.max(t.top,e.top),t.left=Math.max(t.left,e.left),t.bottom=Math.max(t.bottom,e.bottom),t.right=Math.max(t.right,e.right)}function Sse(t,e,n,s){const{pos:i,box:r}=n,o=t.maxPadding;if(!Rt(i)){n.size&&(t[i]-=n.size);const d=s[n.stack]||{size:0,count:1};d.size=Math.max(d.size,n.horizontal?r.height:r.width),n.size=d.size/d.count,t[i]+=n.size}r.getPadding&&JR(o,r.getPadding());const a=Math.max(0,e.outerWidth-gT(o,t,"left","right")),l=Math.max(0,e.outerHeight-gT(o,t,"top","bottom")),c=a!==t.w,u=l!==t.h;return t.w=a,t.h=l,n.horizontal?{same:c,other:u}:{same:u,other:c}}function Ese(t){const e=t.maxPadding;function n(s){const i=Math.max(e[s]-t[s],0);return t[s]+=i,i}t.y+=n("top"),t.x+=n("left"),n("right"),n("bottom")}function Tse(t,e){const n=e.maxPadding;function s(i){const r={left:0,top:0,right:0,bottom:0};return i.forEach(o=>{r[o]=Math.max(e[o],n[o])}),r}return s(t?["left","right"]:["top","bottom"])}function lf(t,e,n,s){const i=[];let r,o,a,l,c,u;for(r=0,o=t.length,c=0;r{typeof p.beforeLayout=="function"&&p.beforeLayout()});const u=l.reduce((p,m)=>m.box.options&&m.box.options.display===!1?p:p+1,0)||1,d=Object.freeze({outerWidth:e,outerHeight:n,padding:i,availableWidth:r,availableHeight:o,vBoxMaxWidth:r/2/u,hBoxMaxHeight:o/2}),f=Object.assign({},i);JR(f,us(s));const h=Object.assign({maxPadding:f,w:r,h:o,x:i.left,y:i.top},i),_=wse(l.concat(c),d);lf(a.fullSize,h,d,_),lf(l,h,d,_),lf(c,h,d,_)&&lf(l,h,d,_),Ese(h),_T(a.leftAndTop,h,d,_),h.x+=h.w,h.y+=h.h,_T(a.rightAndBottom,h,d,_),t.chartArea={left:h.left,top:h.top,right:h.left+h.w,bottom:h.top+h.h,height:h.h,width:h.w},zt(a.chartArea,p=>{const m=p.box;Object.assign(m,t.chartArea),m.update(h.w,h.h,{left:0,top:0,right:0,bottom:0})})}};class QR{acquireContext(e,n){}releaseContext(e){return!1}addEventListener(e,n,s){}removeEventListener(e,n,s){}getDevicePixelRatio(){return 1}getMaximumSize(e,n,s,i){return n=Math.max(0,n||e.width),s=s||e.height,{width:n,height:Math.max(0,i?Math.floor(n/i):s)}}isAttached(e){return!0}updateConfig(e){}}class Ase extends QR{acquireContext(e){return e&&e.getContext&&e.getContext("2d")||null}updateConfig(e){e.options.animation=!1}}const Nm="$chartjs",Mse={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup",pointerenter:"mouseenter",pointerdown:"mousedown",pointermove:"mousemove",pointerup:"mouseup",pointerleave:"mouseout",pointerout:"mouseout"},bT=t=>t===null||t==="";function kse(t,e){const n=t.style,s=t.getAttribute("height"),i=t.getAttribute("width");if(t[Nm]={initial:{height:s,width:i,style:{display:n.display,height:n.height,width:n.width}}},n.display=n.display||"block",n.boxSizing=n.boxSizing||"border-box",bT(i)){const r=X3(t,"width");r!==void 0&&(t.width=r)}if(bT(s))if(t.style.height==="")t.height=t.width/(e||2);else{const r=X3(t,"height");r!==void 0&&(t.height=r)}return t}const e6=lne?{passive:!0}:!1;function Rse(t,e,n){t.addEventListener(e,n,e6)}function Cse(t,e,n){t.canvas.removeEventListener(e,n,e6)}function Ose(t,e){const n=Mse[t.type]||t.type,{x:s,y:i}=el(t,e);return{type:n,chart:e,native:t,x:s!==void 0?s:null,y:i!==void 0?i:null}}function Sg(t,e){for(const n of t)if(n===e||n.contains(e))return!0}function Ise(t,e,n){const s=t.canvas,i=new MutationObserver(r=>{let o=!1;for(const a of r)o=o||Sg(a.addedNodes,s),o=o&&!Sg(a.removedNodes,s);o&&n()});return i.observe(document,{childList:!0,subtree:!0}),i}function Lse(t,e,n){const s=t.canvas,i=new MutationObserver(r=>{let o=!1;for(const a of r)o=o||Sg(a.removedNodes,s),o=o&&!Sg(a.addedNodes,s);o&&n()});return i.observe(document,{childList:!0,subtree:!0}),i}const lh=new Map;let yT=0;function t6(){const t=window.devicePixelRatio;t!==yT&&(yT=t,lh.forEach((e,n)=>{n.currentDevicePixelRatio!==t&&e()}))}function Pse(t,e){lh.size||window.addEventListener("resize",t6),lh.set(t,e)}function Dse(t){lh.delete(t),lh.size||window.removeEventListener("resize",t6)}function Fse(t,e,n){const s=t.canvas,i=s&&lx(s);if(!i)return;const r=TR((a,l)=>{const c=i.clientWidth;n(a,l),c{const l=a[0],c=l.contentRect.width,u=l.contentRect.height;c===0&&u===0||r(c,u)});return o.observe(i),Pse(t,r),o}function V1(t,e,n){n&&n.disconnect(),e==="resize"&&Dse(t)}function Nse(t,e,n){const s=t.canvas,i=TR(r=>{t.ctx!==null&&n(Ose(r,t))},t,r=>{const o=r[0];return[o,o.offsetX,o.offsetY]});return Rse(s,e,i),i}class $se extends QR{acquireContext(e,n){const s=e&&e.getContext&&e.getContext("2d");return s&&s.canvas===e?(kse(e,n),s):null}releaseContext(e){const n=e.canvas;if(!n[Nm])return!1;const s=n[Nm].initial;["height","width"].forEach(r=>{const o=s[r];Nt(o)?n.removeAttribute(r):n.setAttribute(r,o)});const i=s.style||{};return Object.keys(i).forEach(r=>{n.style[r]=i[r]}),n.width=n.width,delete n[Nm],!0}addEventListener(e,n,s){this.removeEventListener(e,n);const i=e.$proxies||(e.$proxies={}),o={attach:Ise,detach:Lse,resize:Fse}[n]||Nse;i[n]=o(e,n,s)}removeEventListener(e,n){const s=e.$proxies||(e.$proxies={}),i=s[n];if(!i)return;({attach:V1,detach:V1,resize:V1}[n]||Cse)(e,n,i),s[n]=void 0}getDevicePixelRatio(){return window.devicePixelRatio}getMaximumSize(e,n,s,i){return ane(e,n,s,i)}isAttached(e){const n=lx(e);return!!(n&&n.isConnected)}}function Use(t){return!GR()||typeof OffscreenCanvas<"u"&&t instanceof OffscreenCanvas?Ase:$se}class Bse{constructor(){this._init=[]}notify(e,n,s,i){n==="beforeInit"&&(this._init=this._createDescriptors(e,!0),this._notify(this._init,e,"install"));const r=i?this._descriptors(e).filter(i):this._descriptors(e),o=this._notify(r,e,n,s);return n==="afterDestroy"&&(this._notify(r,e,"stop"),this._notify(this._init,e,"uninstall")),o}_notify(e,n,s,i){i=i||{};for(const r of e){const o=r.plugin,a=o[s],l=[n,i,r.options];if(Kt(a,l,o)===!1&&i.cancelable)return!1}return!0}invalidate(){Nt(this._cache)||(this._oldCache=this._cache,this._cache=void 0)}_descriptors(e){if(this._cache)return this._cache;const n=this._cache=this._createDescriptors(e);return this._notifyStateChanges(e),n}_createDescriptors(e,n){const s=e&&e.config,i=gt(s.options&&s.options.plugins,{}),r=Gse(s);return i===!1&&!n?[]:Hse(e,r,i,n)}_notifyStateChanges(e){const n=this._oldCache||[],s=this._cache,i=(r,o)=>r.filter(a=>!o.some(l=>a.plugin.id===l.plugin.id));this._notify(i(n,s),e,"stop"),this._notify(i(s,n),e,"start")}}function Gse(t){const e={},n=[],s=Object.keys(gr.plugins.items);for(let r=0;r{const l=s[a];if(!Rt(l))return console.error(`Invalid scale configuration for scale: ${a}`);if(l._proxy)return console.warn(`Ignoring resolver passed as options for scale: ${a}`);const c=yy(a,l),u=jse(c,i),d=n.scales||{};r[c]=r[c]||a,o[a]=Ef(Object.create(null),[{axis:c},l,d[c],d[u]])}),t.data.datasets.forEach(a=>{const l=a.type||t.type,c=a.indexAxis||by(l,e),d=(Hl[l]||{}).scales||{};Object.keys(d).forEach(f=>{const h=Wse(f,c),_=a[h+"AxisID"]||r[h]||h;o[_]=o[_]||Object.create(null),Ef(o[_],[{axis:h},s[_],d[f]])})}),Object.keys(o).forEach(a=>{const l=o[a];Ef(l,[St.scales[l.type],St.scale])}),o}function n6(t){const e=t.options||(t.options={});e.plugins=gt(e.plugins,{}),e.scales=Yse(t,e)}function s6(t){return t=t||{},t.datasets=t.datasets||[],t.labels=t.labels||[],t}function Kse(t){return t=t||{},t.data=s6(t.data),n6(t),t}const vT=new Map,i6=new Set;function Yp(t,e){let n=vT.get(t);return n||(n=e(),vT.set(t,n),i6.add(n)),n}const jd=(t,e,n)=>{const s=Ra(e,n);s!==void 0&&t.add(s)};let Xse=class{constructor(e){this._config=Kse(e),this._scopeCache=new Map,this._resolverCache=new Map}get platform(){return this._config.platform}get type(){return this._config.type}set type(e){this._config.type=e}get data(){return this._config.data}set data(e){this._config.data=s6(e)}get options(){return this._config.options}set options(e){this._config.options=e}get plugins(){return this._config.plugins}update(){const e=this._config;this.clearCache(),n6(e)}clearCache(){this._scopeCache.clear(),this._resolverCache.clear()}datasetScopeKeys(e){return Yp(e,()=>[[`datasets.${e}`,""]])}datasetAnimationScopeKeys(e,n){return Yp(`${e}.transition.${n}`,()=>[[`datasets.${e}.transitions.${n}`,`transitions.${n}`],[`datasets.${e}`,""]])}datasetElementScopeKeys(e,n){return Yp(`${e}-${n}`,()=>[[`datasets.${e}.elements.${n}`,`datasets.${e}`,`elements.${n}`,""]])}pluginScopeKeys(e){const n=e.id,s=this.type;return Yp(`${s}-plugin-${n}`,()=>[[`plugins.${n}`,...e.additionalOptionScopes||[]]])}_cachedScopes(e,n){const s=this._scopeCache;let i=s.get(e);return(!i||n)&&(i=new Map,s.set(e,i)),i}getOptionScopes(e,n,s){const{options:i,type:r}=this,o=this._cachedScopes(e,s),a=o.get(n);if(a)return a;const l=new Set;n.forEach(u=>{e&&(l.add(e),u.forEach(d=>jd(l,e,d))),u.forEach(d=>jd(l,i,d)),u.forEach(d=>jd(l,Hl[r]||{},d)),u.forEach(d=>jd(l,St,d)),u.forEach(d=>jd(l,my,d))});const c=Array.from(l);return c.length===0&&c.push(Object.create(null)),i6.has(n)&&o.set(n,c),c}chartOptionScopes(){const{options:e,type:n}=this;return[e,Hl[n]||{},St.datasets[n]||{},{type:n},St,my]}resolveNamedOptions(e,n,s,i=[""]){const r={$shared:!0},{resolver:o,subPrefixes:a}=wT(this._resolverCache,e,i);let l=o;if(Jse(o,n)){r.$shared=!1,s=Ca(s)?s():s;const c=this.createResolver(e,s,a);l=Hu(o,s,c)}for(const c of n)r[c]=l[c];return r}createResolver(e,n,s=[""],i){const{resolver:r}=wT(this._resolverCache,e,s);return Rt(n)?Hu(r,n,void 0,i):r}};function wT(t,e,n){let s=t.get(e);s||(s=new Map,t.set(e,s));const i=n.join();let r=s.get(i);return r||(r={resolver:rx(e,n),subPrefixes:n.filter(a=>!a.toLowerCase().includes("hover"))},s.set(i,r)),r}const Zse=t=>Rt(t)&&Object.getOwnPropertyNames(t).reduce((e,n)=>e||Ca(t[n]),!1);function Jse(t,e){const{isScriptable:n,isIndexable:s}=DR(t);for(const i of e){const r=n(i),o=s(i),a=(o||r)&&t[i];if(r&&(Ca(a)||Zse(a))||o&&sn(a))return!0}return!1}var Qse="3.9.1";const eie=["top","bottom","left","right","chartArea"];function xT(t,e){return t==="top"||t==="bottom"||eie.indexOf(t)===-1&&e==="x"}function ST(t,e){return function(n,s){return n[t]===s[t]?n[e]-s[e]:n[t]-s[t]}}function ET(t){const e=t.chart,n=e.options.animation;e.notifyPlugins("afterRender"),Kt(n&&n.onComplete,[t],e)}function tie(t){const e=t.chart,n=e.options.animation;Kt(n&&n.onProgress,[t],e)}function r6(t){return GR()&&typeof t=="string"?t=document.getElementById(t):t&&t.length&&(t=t[0]),t&&t.canvas&&(t=t.canvas),t}const Eg={},o6=t=>{const e=r6(t);return Object.values(Eg).filter(n=>n.canvas===e).pop()};function nie(t,e,n){const s=Object.keys(t);for(const i of s){const r=+i;if(r>=e){const o=t[i];delete t[i],(n>0||r>e)&&(t[r+n]=o)}}}function sie(t,e,n,s){return!n||t.type==="mouseout"?null:s?e:t}class ch{constructor(e,n){const s=this.config=new Xse(n),i=r6(e),r=o6(i);if(r)throw new Error("Canvas is already in use. Chart with ID '"+r.id+"' must be destroyed before the canvas with ID '"+r.canvas.id+"' can be reused.");const o=s.createResolver(s.chartOptionScopes(),this.getContext());this.platform=new(s.platform||Use(i)),this.platform.updateConfig(s);const a=this.platform.acquireContext(i,o.aspectRatio),l=a&&a.canvas,c=l&&l.height,u=l&&l.width;if(this.id=zee(),this.ctx=a,this.canvas=l,this.width=u,this.height=c,this._options=o,this._aspectRatio=this.aspectRatio,this._layers=[],this._metasets=[],this._stacks=void 0,this.boxes=[],this.currentDevicePixelRatio=void 0,this.chartArea=void 0,this._active=[],this._lastEvent=void 0,this._listeners={},this._responsiveListeners=void 0,this._sortedMetasets=[],this.scales={},this._plugins=new Bse,this.$proxies={},this._hiddenIndices={},this.attached=!1,this._animationsDisabled=void 0,this.$context=void 0,this._doResize=ite(d=>this.update(d),o.resizeDelay||0),this._dataChanges=[],Eg[this.id]=this,!a||!l){console.error("Failed to create chart: can't acquire context from the given item");return}Wr.listen(this,"complete",ET),Wr.listen(this,"progress",tie),this._initialize(),this.attached&&this.update()}get aspectRatio(){const{options:{aspectRatio:e,maintainAspectRatio:n},width:s,height:i,_aspectRatio:r}=this;return Nt(e)?n&&r?r:i?s/i:null:e}get data(){return this.config.data}set data(e){this.config.data=e}get options(){return this._options}set options(e){this.config.options=e}_initialize(){return this.notifyPlugins("beforeInit"),this.options.responsive?this.resize():K3(this,this.options.devicePixelRatio),this.bindEvents(),this.notifyPlugins("afterInit"),this}clear(){return j3(this.canvas,this.ctx),this}stop(){return Wr.stop(this),this}resize(e,n){Wr.running(this)?this._resizeBeforeDraw={width:e,height:n}:this._resize(e,n)}_resize(e,n){const s=this.options,i=this.canvas,r=s.maintainAspectRatio&&this.aspectRatio,o=this.platform.getMaximumSize(i,e,n,r),a=s.devicePixelRatio||this.platform.getDevicePixelRatio(),l=this.width?"resize":"attach";this.width=o.width,this.height=o.height,this._aspectRatio=this.aspectRatio,K3(this,a,!0)&&(this.notifyPlugins("resize",{size:o}),Kt(s.onResize,[this,o],this),this.attached&&this._doResize(l)&&this.render())}ensureScalesHaveIDs(){const n=this.options.scales||{};zt(n,(s,i)=>{s.id=i})}buildOrUpdateScales(){const e=this.options,n=e.scales,s=this.scales,i=Object.keys(s).reduce((o,a)=>(o[a]=!1,o),{});let r=[];n&&(r=r.concat(Object.keys(n).map(o=>{const a=n[o],l=yy(o,a),c=l==="r",u=l==="x";return{options:a,dposition:c?"chartArea":u?"bottom":"left",dtype:c?"radialLinear":u?"category":"linear"}}))),zt(r,o=>{const a=o.options,l=a.id,c=yy(l,a),u=gt(a.type,o.dtype);(a.position===void 0||xT(a.position,c)!==xT(o.dposition))&&(a.position=o.dposition),i[l]=!0;let d=null;if(l in s&&s[l].type===u)d=s[l];else{const f=gr.getScale(u);d=new f({id:l,type:u,ctx:this.ctx,chart:this}),s[d.id]=d}d.init(a,e)}),zt(i,(o,a)=>{o||delete s[a]}),zt(s,o=>{hi.configure(this,o,o.options),hi.addBox(this,o)})}_updateMetasets(){const e=this._metasets,n=this.data.datasets.length,s=e.length;if(e.sort((i,r)=>i.index-r.index),s>n){for(let i=n;in.length&&delete this._stacks,e.forEach((s,i)=>{n.filter(r=>r===s._dataset).length===0&&this._destroyDatasetMeta(i)})}buildOrUpdateControllers(){const e=[],n=this.data.datasets;let s,i;for(this._removeUnreferencedMetasets(),s=0,i=n.length;s{this.getDatasetMeta(n).controller.reset()},this)}reset(){this._resetElements(),this.notifyPlugins("reset")}update(e){const n=this.config;n.update();const s=this._options=n.createResolver(n.chartOptionScopes(),this.getContext()),i=this._animationsDisabled=!s.animation;if(this._updateScales(),this._checkEventBindings(),this._updateHiddenIndices(),this._plugins.invalidate(),this.notifyPlugins("beforeUpdate",{mode:e,cancelable:!0})===!1)return;const r=this.buildOrUpdateControllers();this.notifyPlugins("beforeElementsUpdate");let o=0;for(let c=0,u=this.data.datasets.length;c{c.reset()}),this._updateDatasets(e),this.notifyPlugins("afterUpdate",{mode:e}),this._layers.sort(ST("z","_idx"));const{_active:a,_lastEvent:l}=this;l?this._eventHandler(l,!0):a.length&&this._updateHoverStyles(a,a,!0),this.render()}_updateScales(){zt(this.scales,e=>{hi.removeBox(this,e)}),this.ensureScalesHaveIDs(),this.buildOrUpdateScales()}_checkEventBindings(){const e=this.options,n=new Set(Object.keys(this._listeners)),s=new Set(e.events);(!P3(n,s)||!!this._responsiveListeners!==e.responsive)&&(this.unbindEvents(),this.bindEvents())}_updateHiddenIndices(){const{_hiddenIndices:e}=this,n=this._getUniformDataChanges()||[];for(const{method:s,start:i,count:r}of n){const o=s==="_removeElements"?-r:r;nie(e,i,o)}}_getUniformDataChanges(){const e=this._dataChanges;if(!e||!e.length)return;this._dataChanges=[];const n=this.data.datasets.length,s=r=>new Set(e.filter(o=>o[0]===r).map((o,a)=>a+","+o.splice(1).join(","))),i=s(0);for(let r=1;rr.split(",")).map(r=>({method:r[1],start:+r[2],count:+r[3]}))}_updateLayout(e){if(this.notifyPlugins("beforeLayout",{cancelable:!0})===!1)return;hi.update(this,this.width,this.height,e);const n=this.chartArea,s=n.width<=0||n.height<=0;this._layers=[],zt(this.boxes,i=>{s&&i.position==="chartArea"||(i.configure&&i.configure(),this._layers.push(...i._layers()))},this),this._layers.forEach((i,r)=>{i._idx=r}),this.notifyPlugins("afterLayout")}_updateDatasets(e){if(this.notifyPlugins("beforeDatasetsUpdate",{mode:e,cancelable:!0})!==!1){for(let n=0,s=this.data.datasets.length;n=0;--n)this._drawDataset(e[n]);this.notifyPlugins("afterDatasetsDraw")}_drawDataset(e){const n=this.ctx,s=e._clip,i=!s.disabled,r=this.chartArea,o={meta:e,index:e.index,cancelable:!0};this.notifyPlugins("beforeDatasetDraw",o)!==!1&&(i&&nx(n,{left:s.left===!1?0:r.left-s.left,right:s.right===!1?this.width:r.right+s.right,top:s.top===!1?0:r.top-s.top,bottom:s.bottom===!1?this.height:r.bottom+s.bottom}),e.controller.draw(),i&&sx(n),o.cancelable=!1,this.notifyPlugins("afterDatasetDraw",o))}isPointInArea(e){return oh(e,this.chartArea,this._minPadding)}getElementsAtEventForMode(e,n,s,i){const r=bse.modes[n];return typeof r=="function"?r(this,e,s,i):[]}getDatasetMeta(e){const n=this.data.datasets[e],s=this._metasets;let i=s.filter(r=>r&&r._dataset===n).pop();return i||(i={type:null,data:[],dataset:null,controller:null,hidden:null,xAxisID:null,yAxisID:null,order:n&&n.order||0,index:e,_dataset:n,_parsed:[],_sorted:!1},s.push(i)),i}getContext(){return this.$context||(this.$context=Da(null,{chart:this,type:"chart"}))}getVisibleDatasetCount(){return this.getSortedVisibleDatasetMetas().length}isDatasetVisible(e){const n=this.data.datasets[e];if(!n)return!1;const s=this.getDatasetMeta(e);return typeof s.hidden=="boolean"?!s.hidden:!n.hidden}setDatasetVisibility(e,n){const s=this.getDatasetMeta(e);s.hidden=!n}toggleDataVisibility(e){this._hiddenIndices[e]=!this._hiddenIndices[e]}getDataVisibility(e){return!this._hiddenIndices[e]}_updateVisibility(e,n,s){const i=s?"show":"hide",r=this.getDatasetMeta(e),o=r.controller._resolveAnimations(void 0,i);bi(n)?(r.data[n].hidden=!s,this.update()):(this.setDatasetVisibility(e,s),o.update(r,{visible:s}),this.update(a=>a.datasetIndex===e?i:void 0))}hide(e,n){this._updateVisibility(e,n,!1)}show(e,n){this._updateVisibility(e,n,!0)}_destroyDatasetMeta(e){const n=this._metasets[e];n&&n.controller&&n.controller._destroy(),delete this._metasets[e]}_stop(){let e,n;for(this.stop(),Wr.remove(this),e=0,n=this.data.datasets.length;e{n.addEventListener(this,r,o),e[r]=o},i=(r,o,a)=>{r.offsetX=o,r.offsetY=a,this._eventHandler(r)};zt(this.options.events,r=>s(r,i))}bindResponsiveEvents(){this._responsiveListeners||(this._responsiveListeners={});const e=this._responsiveListeners,n=this.platform,s=(l,c)=>{n.addEventListener(this,l,c),e[l]=c},i=(l,c)=>{e[l]&&(n.removeEventListener(this,l,c),delete e[l])},r=(l,c)=>{this.canvas&&this.resize(l,c)};let o;const a=()=>{i("attach",a),this.attached=!0,this.resize(),s("resize",r),s("detach",o)};o=()=>{this.attached=!1,i("resize",r),this._stop(),this._resize(0,0),s("attach",a)},n.isAttached(this.canvas)?a():o()}unbindEvents(){zt(this._listeners,(e,n)=>{this.platform.removeEventListener(this,n,e)}),this._listeners={},zt(this._responsiveListeners,(e,n)=>{this.platform.removeEventListener(this,n,e)}),this._responsiveListeners=void 0}updateHoverStyle(e,n,s){const i=s?"set":"remove";let r,o,a,l;for(n==="dataset"&&(r=this.getDatasetMeta(e[0].datasetIndex),r.controller["_"+i+"DatasetHoverStyle"]()),a=0,l=e.length;a{const a=this.getDatasetMeta(r);if(!a)throw new Error("No dataset found at index "+r);return{datasetIndex:r,element:a.data[o],index:o}});!_g(s,n)&&(this._active=s,this._lastEvent=null,this._updateHoverStyles(s,n))}notifyPlugins(e,n,s){return this._plugins.notify(this,e,n,s)}_updateHoverStyles(e,n,s){const i=this.options.hover,r=(l,c)=>l.filter(u=>!c.some(d=>u.datasetIndex===d.datasetIndex&&u.index===d.index)),o=r(n,e),a=s?e:r(e,n);o.length&&this.updateHoverStyle(o,i.mode,!1),a.length&&i.mode&&this.updateHoverStyle(a,i.mode,!0)}_eventHandler(e,n){const s={event:e,replay:n,cancelable:!0,inChartArea:this.isPointInArea(e)},i=o=>(o.options.events||this.options.events).includes(e.native.type);if(this.notifyPlugins("beforeEvent",s,i)===!1)return;const r=this._handleEvent(e,n,s.inChartArea);return s.cancelable=!1,this.notifyPlugins("afterEvent",s,i),(r||s.changed)&&this.render(),this}_handleEvent(e,n,s){const{_active:i=[],options:r}=this,o=n,a=this._getActiveElements(e,i,s,o),l=Yee(e),c=sie(e,this._lastEvent,s,l);s&&(this._lastEvent=null,Kt(r.onHover,[e,a,this],this),l&&Kt(r.onClick,[e,a,this],this));const u=!_g(a,i);return(u||n)&&(this._active=a,this._updateHoverStyles(a,i,n)),this._lastEvent=c,u}_getActiveElements(e,n,s,i){if(e.type==="mouseout")return[];if(!s)return n;const r=this.options.hover;return this.getElementsAtEventForMode(e,r.mode,r,i)}}const TT=()=>zt(ch.instances,t=>t._plugins.invalidate()),Go=!0;Object.defineProperties(ch,{defaults:{enumerable:Go,value:St},instances:{enumerable:Go,value:Eg},overrides:{enumerable:Go,value:Hl},registry:{enumerable:Go,value:gr},version:{enumerable:Go,value:Qse},getChart:{enumerable:Go,value:o6},register:{enumerable:Go,value:(...t)=>{gr.add(...t),TT()}},unregister:{enumerable:Go,value:(...t)=>{gr.remove(...t),TT()}}});function a6(t,e,n){const{startAngle:s,pixelMargin:i,x:r,y:o,outerRadius:a,innerRadius:l}=e;let c=i/a;t.beginPath(),t.arc(r,o,a,s-c,n+c),l>i?(c=i/l,t.arc(r,o,l,n+c,s-c,!0)):t.arc(r,o,i,n+yn,s-yn),t.closePath(),t.clip()}function iie(t){return ix(t,["outerStart","outerEnd","innerStart","innerEnd"])}function rie(t,e,n,s){const i=iie(t.options.borderRadius),r=(n-e)/2,o=Math.min(r,s*e/2),a=l=>{const c=(n-Math.min(r,l))*s/2;return as(l,0,Math.min(r,c))};return{outerStart:a(i.outerStart),outerEnd:a(i.outerEnd),innerStart:as(i.innerStart,0,o),innerEnd:as(i.innerEnd,0,o)}}function Cc(t,e,n,s){return{x:n+t*Math.cos(e),y:s+t*Math.sin(e)}}function vy(t,e,n,s,i,r){const{x:o,y:a,startAngle:l,pixelMargin:c,innerRadius:u}=e,d=Math.max(e.outerRadius+s+n-c,0),f=u>0?u+s+n+c:0;let h=0;const _=i-l;if(s){const $=u>0?u-s:0,F=d>0?d-s:0,H=($+F)/2,j=H!==0?_*H/(H+s):_;h=(_-j)/2}const p=Math.max(.001,_*d-n/pn)/d,m=(_-p)/2,b=l+m+h,y=i-m-h,{outerStart:v,outerEnd:x,innerStart:S,innerEnd:w}=rie(e,f,d,y-b),T=d-v,E=d-x,A=b+v/T,O=y-x/E,I=f+S,B=f+w,U=b+S/I,D=y-w/B;if(t.beginPath(),r){if(t.arc(o,a,d,A,O),x>0){const H=Cc(E,O,o,a);t.arc(H.x,H.y,x,O,y+yn)}const $=Cc(B,y,o,a);if(t.lineTo($.x,$.y),w>0){const H=Cc(B,D,o,a);t.arc(H.x,H.y,w,y+yn,D+Math.PI)}if(t.arc(o,a,f,y-w/f,b+S/f,!0),S>0){const H=Cc(I,U,o,a);t.arc(H.x,H.y,S,U+Math.PI,b-yn)}const F=Cc(T,b,o,a);if(t.lineTo(F.x,F.y),v>0){const H=Cc(T,A,o,a);t.arc(H.x,H.y,v,b-yn,A)}}else{t.moveTo(o,a);const $=Math.cos(A)*d+o,F=Math.sin(A)*d+a;t.lineTo($,F);const H=Math.cos(O)*d+o,j=Math.sin(O)*d+a;t.lineTo(H,j)}t.closePath()}function oie(t,e,n,s,i){const{fullCircles:r,startAngle:o,circumference:a}=e;let l=e.endAngle;if(r){vy(t,e,n,s,o+jt,i);for(let c=0;c=jt||rh(r,a,l),p=ha(o,c+f,u+f);return _&&p}getCenterPoint(e){const{x:n,y:s,startAngle:i,endAngle:r,innerRadius:o,outerRadius:a}=this.getProps(["x","y","startAngle","endAngle","innerRadius","outerRadius","circumference"],e),{offset:l,spacing:c}=this.options,u=(i+r)/2,d=(o+a+c+l)/2;return{x:n+Math.cos(u)*d,y:s+Math.sin(u)*d}}tooltipPosition(e){return this.getCenterPoint(e)}draw(e){const{options:n,circumference:s}=this,i=(n.offset||0)/2,r=(n.spacing||0)/2,o=n.circular;if(this.pixelMargin=n.borderAlign==="inner"?.33:0,this.fullCircles=s>jt?Math.floor(s/jt):0,s===0||this.innerRadius<0||this.outerRadius<0)return;e.save();let a=0;if(i){a=i/2;const c=(this.startAngle+this.endAngle)/2;e.translate(Math.cos(c)*a,Math.sin(c)*a),this.circumference>=pn&&(a=i)}e.fillStyle=n.backgroundColor,e.strokeStyle=n.borderColor;const l=oie(e,this,a,r,o);lie(e,this,a,r,l,o),e.restore()}}hx.id="arc";hx.defaults={borderAlign:"center",borderColor:"#fff",borderJoinStyle:void 0,borderRadius:0,borderWidth:2,offset:0,spacing:0,angle:void 0,circular:!0};hx.defaultRoutes={backgroundColor:"backgroundColor"};function l6(t,e,n=e){t.lineCap=gt(n.borderCapStyle,e.borderCapStyle),t.setLineDash(gt(n.borderDash,e.borderDash)),t.lineDashOffset=gt(n.borderDashOffset,e.borderDashOffset),t.lineJoin=gt(n.borderJoinStyle,e.borderJoinStyle),t.lineWidth=gt(n.borderWidth,e.borderWidth),t.strokeStyle=gt(n.borderColor,e.borderColor)}function cie(t,e,n){t.lineTo(n.x,n.y)}function uie(t){return t.stepped?Ote:t.tension||t.cubicInterpolationMode==="monotone"?Ite:cie}function c6(t,e,n={}){const s=t.length,{start:i=0,end:r=s-1}=n,{start:o,end:a}=e,l=Math.max(i,o),c=Math.min(r,a),u=ia&&r>a;return{count:s,start:l,loop:e.loop,ilen:c(o+(c?a-x:x))%r,v=()=>{p!==m&&(t.lineTo(u,m),t.lineTo(u,p),t.lineTo(u,b))};for(l&&(h=i[y(0)],t.moveTo(h.x,h.y)),f=0;f<=a;++f){if(h=i[y(f)],h.skip)continue;const x=h.x,S=h.y,w=x|0;w===_?(Sm&&(m=S),u=(d*u+x)/++d):(v(),t.lineTo(x,S),_=w,d=0,p=m=S),b=S}v()}function wy(t){const e=t.options,n=e.borderDash&&e.borderDash.length;return!t._decimated&&!t._loop&&!e.tension&&e.cubicInterpolationMode!=="monotone"&&!e.stepped&&!n?fie:die}function hie(t){return t.stepped?cne:t.tension||t.cubicInterpolationMode==="monotone"?une:tl}function pie(t,e,n,s){let i=e._path;i||(i=e._path=new Path2D,e.path(i,n,s)&&i.closePath()),l6(t,e.options),t.stroke(i)}function mie(t,e,n,s){const{segments:i,options:r}=e,o=wy(e);for(const a of i)l6(t,r,a.style),t.beginPath(),o(t,e,a,{start:n,end:n+s-1})&&t.closePath(),t.stroke()}const gie=typeof Path2D=="function";function _ie(t,e,n,s){gie&&!e.options.segment?pie(t,e,n,s):mie(t,e,n,s)}class Hh extends er{constructor(e){super(),this.animated=!0,this.options=void 0,this._chart=void 0,this._loop=void 0,this._fullLoop=void 0,this._path=void 0,this._points=void 0,this._segments=void 0,this._decimated=!1,this._pointsUpdated=!1,this._datasetIndex=void 0,e&&Object.assign(this,e)}updateControlPoints(e,n){const s=this.options;if((s.tension||s.cubicInterpolationMode==="monotone")&&!s.stepped&&!this._pointsUpdated){const i=s.spanGaps?this._loop:this._fullLoop;tne(this._points,s,e,i,n),this._pointsUpdated=!0}}set points(e){this._points=e,delete this._segments,delete this._path,this._pointsUpdated=!1}get points(){return this._points}get segments(){return this._segments||(this._segments=yne(this,this.options.segment))}first(){const e=this.segments,n=this.points;return e.length&&n[e[0].start]}last(){const e=this.segments,n=this.points,s=e.length;return s&&n[e[s-1].end]}interpolate(e,n){const s=this.options,i=e[n],r=this.points,o=gne(this,{property:n,start:i,end:i});if(!o.length)return;const a=[],l=hie(s);let c,u;for(c=0,u=o.length;ct!=="borderDash"&&t!=="fill"};function AT(t,e,n,s){const i=t.options,{[n]:r}=t.getProps([n],s);return Math.abs(e-r){let{boxHeight:n=e,boxWidth:s=e}=t;return t.usePointStyle&&(n=Math.min(n,e),s=t.pointStyleWidth||Math.min(s,e)),{boxWidth:s,boxHeight:n,itemHeight:Math.max(e,n)}},Sie=(t,e)=>t!==null&&e!==null&&t.datasetIndex===e.datasetIndex&&t.index===e.index;class kT extends er{constructor(e){super(),this._added=!1,this.legendHitBoxes=[],this._hoveredItem=null,this.doughnutMode=!1,this.chart=e.chart,this.options=e.options,this.ctx=e.ctx,this.legendItems=void 0,this.columnSizes=void 0,this.lineWidths=void 0,this.maxHeight=void 0,this.maxWidth=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.height=void 0,this.width=void 0,this._margins=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(e,n,s){this.maxWidth=e,this.maxHeight=n,this._margins=s,this.setDimensions(),this.buildLabels(),this.fit()}setDimensions(){this.isHorizontal()?(this.width=this.maxWidth,this.left=this._margins.left,this.right=this.width):(this.height=this.maxHeight,this.top=this._margins.top,this.bottom=this.height)}buildLabels(){const e=this.options.labels||{};let n=Kt(e.generateLabels,[this.chart],this)||[];e.filter&&(n=n.filter(s=>e.filter(s,this.chart.data))),e.sort&&(n=n.sort((s,i)=>e.sort(s,i,this.chart.data))),this.options.reverse&&n.reverse(),this.legendItems=n}fit(){const{options:e,ctx:n}=this;if(!e.display){this.width=this.height=0;return}const s=e.labels,i=Nn(s.font),r=i.size,o=this._computeTitleHeight(),{boxWidth:a,itemHeight:l}=MT(s,r);let c,u;n.font=i.string,this.isHorizontal()?(c=this.maxWidth,u=this._fitRows(o,r,a,l)+10):(u=this.maxHeight,c=this._fitCols(o,r,a,l)+10),this.width=Math.min(c,e.maxWidth||this.maxWidth),this.height=Math.min(u,e.maxHeight||this.maxHeight)}_fitRows(e,n,s,i){const{ctx:r,maxWidth:o,options:{labels:{padding:a}}}=this,l=this.legendHitBoxes=[],c=this.lineWidths=[0],u=i+a;let d=e;r.textAlign="left",r.textBaseline="middle";let f=-1,h=-u;return this.legendItems.forEach((_,p)=>{const m=s+n/2+r.measureText(_.text).width;(p===0||c[c.length-1]+m+2*a>o)&&(d+=u,c[c.length-(p>0?0:1)]=0,h+=u,f++),l[p]={left:0,top:h,row:f,width:m,height:i},c[c.length-1]+=m+a}),d}_fitCols(e,n,s,i){const{ctx:r,maxHeight:o,options:{labels:{padding:a}}}=this,l=this.legendHitBoxes=[],c=this.columnSizes=[],u=o-e;let d=a,f=0,h=0,_=0,p=0;return this.legendItems.forEach((m,b)=>{const y=s+n/2+r.measureText(m.text).width;b>0&&h+i+2*a>u&&(d+=f+a,c.push({width:f,height:h}),_+=f+a,p++,f=h=0),l[b]={left:_,top:h,col:p,width:y,height:i},f=Math.max(f,y),h+=i+a}),d+=f,c.push({width:f,height:h}),d}adjustHitBoxes(){if(!this.options.display)return;const e=this._computeTitleHeight(),{legendHitBoxes:n,options:{align:s,labels:{padding:i},rtl:r}}=this,o=fu(r,this.left,this.width);if(this.isHorizontal()){let a=0,l=ss(s,this.left+i,this.right-this.lineWidths[a]);for(const c of n)a!==c.row&&(a=c.row,l=ss(s,this.left+i,this.right-this.lineWidths[a])),c.top+=this.top+e+i,c.left=o.leftForLtr(o.x(l),c.width),l+=c.width+i}else{let a=0,l=ss(s,this.top+e+i,this.bottom-this.columnSizes[a].height);for(const c of n)c.col!==a&&(a=c.col,l=ss(s,this.top+e+i,this.bottom-this.columnSizes[a].height)),c.top=l,c.left+=this.left+i,c.left=o.leftForLtr(o.x(c.left),c.width),l+=c.height+i}}isHorizontal(){return this.options.position==="top"||this.options.position==="bottom"}draw(){if(this.options.display){const e=this.ctx;nx(e,this),this._draw(),sx(e)}}_draw(){const{options:e,columnSizes:n,lineWidths:s,ctx:i}=this,{align:r,labels:o}=e,a=St.color,l=fu(e.rtl,this.left,this.width),c=Nn(o.font),{color:u,padding:d}=o,f=c.size,h=f/2;let _;this.drawTitle(),i.textAlign=l.textAlign("left"),i.textBaseline="middle",i.lineWidth=.5,i.font=c.string;const{boxWidth:p,boxHeight:m,itemHeight:b}=MT(o,f),y=function(T,E,A){if(isNaN(p)||p<=0||isNaN(m)||m<0)return;i.save();const O=gt(A.lineWidth,1);if(i.fillStyle=gt(A.fillStyle,a),i.lineCap=gt(A.lineCap,"butt"),i.lineDashOffset=gt(A.lineDashOffset,0),i.lineJoin=gt(A.lineJoin,"miter"),i.lineWidth=O,i.strokeStyle=gt(A.strokeStyle,a),i.setLineDash(gt(A.lineDash,[])),o.usePointStyle){const I={radius:m*Math.SQRT2/2,pointStyle:A.pointStyle,rotation:A.rotation,borderWidth:O},B=l.xPlus(T,p/2),U=E+h;LR(i,I,B,U,o.pointStyleWidth&&p)}else{const I=E+Math.max((f-m)/2,0),B=l.leftForLtr(T,p),U=Il(A.borderRadius);i.beginPath(),Object.values(U).some(D=>D!==0)?ah(i,{x:B,y:I,w:p,h:m,radius:U}):i.rect(B,I,p,m),i.fill(),O!==0&&i.stroke()}i.restore()},v=function(T,E,A){Vl(i,A.text,T,E+b/2,c,{strikethrough:A.hidden,textAlign:l.textAlign(A.textAlign)})},x=this.isHorizontal(),S=this._computeTitleHeight();x?_={x:ss(r,this.left+d,this.right-s[0]),y:this.top+d+S,line:0}:_={x:this.left+d,y:ss(r,this.top+S+d,this.bottom-n[0].height),line:0},zR(this.ctx,e.textDirection);const w=b+d;this.legendItems.forEach((T,E)=>{i.strokeStyle=T.fontColor||u,i.fillStyle=T.fontColor||u;const A=i.measureText(T.text).width,O=l.textAlign(T.textAlign||(T.textAlign=o.textAlign)),I=p+h+A;let B=_.x,U=_.y;l.setWidth(this.width),x?E>0&&B+I+d>this.right&&(U=_.y+=w,_.line++,B=_.x=ss(r,this.left+d,this.right-s[_.line])):E>0&&U+w>this.bottom&&(B=_.x=B+n[_.line].width+d,_.line++,U=_.y=ss(r,this.top+S+d,this.bottom-n[_.line].height));const D=l.x(B);y(D,U,T),B=rte(O,B+p+h,x?B+I:this.right,e.rtl),v(l.x(B),U,T),x?_.x+=I+d:_.y+=w}),HR(this.ctx,e.textDirection)}drawTitle(){const e=this.options,n=e.title,s=Nn(n.font),i=us(n.padding);if(!n.display)return;const r=fu(e.rtl,this.left,this.width),o=this.ctx,a=n.position,l=s.size/2,c=i.top+l;let u,d=this.left,f=this.width;if(this.isHorizontal())f=Math.max(...this.lineWidths),u=this.top+c,d=ss(e.align,d,this.right-f);else{const _=this.columnSizes.reduce((p,m)=>Math.max(p,m.height),0);u=c+ss(e.align,this.top,this.bottom-_-e.labels.padding-this._computeTitleHeight())}const h=ss(a,d,d+f);o.textAlign=r.textAlign(Jw(a)),o.textBaseline="middle",o.strokeStyle=n.color,o.fillStyle=n.color,o.font=s.string,Vl(o,n.text,h,u,s)}_computeTitleHeight(){const e=this.options.title,n=Nn(e.font),s=us(e.padding);return e.display?n.lineHeight+s.height:0}_getLegendItemAt(e,n){let s,i,r;if(ha(e,this.left,this.right)&&ha(n,this.top,this.bottom)){for(r=this.legendHitBoxes,s=0;st.chart.options.color,boxWidth:40,padding:10,generateLabels(t){const e=t.data.datasets,{labels:{usePointStyle:n,pointStyle:s,textAlign:i,color:r}}=t.legend.options;return t._getSortedDatasetMetas().map(o=>{const a=o.controller.getStyle(n?0:void 0),l=us(a.borderWidth);return{text:e[o.index].label,fillStyle:a.backgroundColor,fontColor:r,hidden:!o.visible,lineCap:a.borderCapStyle,lineDash:a.borderDash,lineDashOffset:a.borderDashOffset,lineJoin:a.borderJoinStyle,lineWidth:(l.width+l.height)/4,strokeStyle:a.borderColor,pointStyle:s||a.pointStyle,rotation:a.rotation,textAlign:i||a.textAlign,borderRadius:0,datasetIndex:o.index}},this)}},title:{color:t=>t.chart.options.color,display:!1,position:"center",text:""}},descriptors:{_scriptable:t=>!t.startsWith("on"),labels:{_scriptable:t=>!["generateLabels","filter","sort"].includes(t)}}};class d6 extends er{constructor(e){super(),this.chart=e.chart,this.options=e.options,this.ctx=e.ctx,this._padding=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.width=void 0,this.height=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(e,n){const s=this.options;if(this.left=0,this.top=0,!s.display){this.width=this.height=this.right=this.bottom=0;return}this.width=this.right=e,this.height=this.bottom=n;const i=sn(s.text)?s.text.length:1;this._padding=us(s.padding);const r=i*Nn(s.font).lineHeight+this._padding.height;this.isHorizontal()?this.height=r:this.width=r}isHorizontal(){const e=this.options.position;return e==="top"||e==="bottom"}_drawArgs(e){const{top:n,left:s,bottom:i,right:r,options:o}=this,a=o.align;let l=0,c,u,d;return this.isHorizontal()?(u=ss(a,s,r),d=n+e,c=r-s):(o.position==="left"?(u=s+e,d=ss(a,i,n),l=pn*-.5):(u=r-e,d=ss(a,n,i),l=pn*.5),c=i-n),{titleX:u,titleY:d,maxWidth:c,rotation:l}}draw(){const e=this.ctx,n=this.options;if(!n.display)return;const s=Nn(n.font),r=s.lineHeight/2+this._padding.top,{titleX:o,titleY:a,maxWidth:l,rotation:c}=this._drawArgs(r);Vl(e,n.text,0,0,s,{color:n.color,maxWidth:l,rotation:c,textAlign:Jw(n.align),textBaseline:"middle",translation:[o,a]})}}function Aie(t,e){const n=new d6({ctx:t.ctx,options:e,chart:t});hi.configure(t,n,e),hi.addBox(t,n),t.titleBlock=n}var Mie={id:"title",_element:d6,start(t,e,n){Aie(t,n)},stop(t){const e=t.titleBlock;hi.removeBox(t,e),delete t.titleBlock},beforeUpdate(t,e,n){const s=t.titleBlock;hi.configure(t,s,n),s.options=n},defaults:{align:"center",display:!1,font:{weight:"bold"},fullSize:!0,padding:10,position:"top",text:"",weight:2e3},defaultRoutes:{color:"color"},descriptors:{_scriptable:!0,_indexable:!1}};const kf={average(t){if(!t.length)return!1;let e,n,s=0,i=0,r=0;for(e=0,n=t.length;e-1?t.split(` +`):t}function kie(t,e){const{element:n,datasetIndex:s,index:i}=e,r=t.getDatasetMeta(s).controller,{label:o,value:a}=r.getLabelAndValue(i);return{chart:t,label:o,parsed:r.getParsed(i),raw:t.data.datasets[s].data[i],formattedValue:a,dataset:r.getDataset(),dataIndex:i,datasetIndex:s,element:n}}function RT(t,e){const n=t.chart.ctx,{body:s,footer:i,title:r}=t,{boxWidth:o,boxHeight:a}=e,l=Nn(e.bodyFont),c=Nn(e.titleFont),u=Nn(e.footerFont),d=r.length,f=i.length,h=s.length,_=us(e.padding);let p=_.height,m=0,b=s.reduce((x,S)=>x+S.before.length+S.lines.length+S.after.length,0);if(b+=t.beforeBody.length+t.afterBody.length,d&&(p+=d*c.lineHeight+(d-1)*e.titleSpacing+e.titleMarginBottom),b){const x=e.displayColors?Math.max(a,l.lineHeight):l.lineHeight;p+=h*x+(b-h)*l.lineHeight+(b-1)*e.bodySpacing}f&&(p+=e.footerMarginTop+f*u.lineHeight+(f-1)*e.footerSpacing);let y=0;const v=function(x){m=Math.max(m,n.measureText(x).width+y)};return n.save(),n.font=c.string,zt(t.title,v),n.font=l.string,zt(t.beforeBody.concat(t.afterBody),v),y=e.displayColors?o+2+e.boxPadding:0,zt(s,x=>{zt(x.before,v),zt(x.lines,v),zt(x.after,v)}),y=0,n.font=u.string,zt(t.footer,v),n.restore(),m+=_.width,{width:m,height:p}}function Rie(t,e){const{y:n,height:s}=e;return nt.height-s/2?"bottom":"center"}function Cie(t,e,n,s){const{x:i,width:r}=s,o=n.caretSize+n.caretPadding;if(t==="left"&&i+r+o>e.width||t==="right"&&i-r-o<0)return!0}function Oie(t,e,n,s){const{x:i,width:r}=n,{width:o,chartArea:{left:a,right:l}}=t;let c="center";return s==="center"?c=i<=(a+l)/2?"left":"right":i<=r/2?c="left":i>=o-r/2&&(c="right"),Cie(c,t,e,n)&&(c="center"),c}function CT(t,e,n){const s=n.yAlign||e.yAlign||Rie(t,n);return{xAlign:n.xAlign||e.xAlign||Oie(t,e,n,s),yAlign:s}}function Iie(t,e){let{x:n,width:s}=t;return e==="right"?n-=s:e==="center"&&(n-=s/2),n}function Lie(t,e,n){let{y:s,height:i}=t;return e==="top"?s+=n:e==="bottom"?s-=i+n:s-=i/2,s}function OT(t,e,n,s){const{caretSize:i,caretPadding:r,cornerRadius:o}=t,{xAlign:a,yAlign:l}=n,c=i+r,{topLeft:u,topRight:d,bottomLeft:f,bottomRight:h}=Il(o);let _=Iie(e,a);const p=Lie(e,l,c);return l==="center"?a==="left"?_+=c:a==="right"&&(_-=c):a==="left"?_-=Math.max(u,f)+i:a==="right"&&(_+=Math.max(d,h)+i),{x:as(_,0,s.width-e.width),y:as(p,0,s.height-e.height)}}function Kp(t,e,n){const s=us(n.padding);return e==="center"?t.x+t.width/2:e==="right"?t.x+t.width-s.right:t.x+s.left}function IT(t){return ar([],jr(t))}function Pie(t,e,n){return Da(t,{tooltip:e,tooltipItems:n,type:"tooltip"})}function LT(t,e){const n=e&&e.dataset&&e.dataset.tooltip&&e.dataset.tooltip.callbacks;return n?t.override(n):t}let xy=class extends er{constructor(e){super(),this.opacity=0,this._active=[],this._eventPosition=void 0,this._size=void 0,this._cachedAnimations=void 0,this._tooltipItems=[],this.$animations=void 0,this.$context=void 0,this.chart=e.chart||e._chart,this._chart=this.chart,this.options=e.options,this.dataPoints=void 0,this.title=void 0,this.beforeBody=void 0,this.body=void 0,this.afterBody=void 0,this.footer=void 0,this.xAlign=void 0,this.yAlign=void 0,this.x=void 0,this.y=void 0,this.height=void 0,this.width=void 0,this.caretX=void 0,this.caretY=void 0,this.labelColors=void 0,this.labelPointStyles=void 0,this.labelTextColors=void 0}initialize(e){this.options=e,this._cachedAnimations=void 0,this.$context=void 0}_resolveAnimations(){const e=this._cachedAnimations;if(e)return e;const n=this.chart,s=this.options.setContext(this.getContext()),i=s.enabled&&n.options.animation&&s.animations,r=new WR(this.chart,i);return i._cacheable&&(this._cachedAnimations=Object.freeze(r)),r}getContext(){return this.$context||(this.$context=Pie(this.chart.getContext(),this,this._tooltipItems))}getTitle(e,n){const{callbacks:s}=n,i=s.beforeTitle.apply(this,[e]),r=s.title.apply(this,[e]),o=s.afterTitle.apply(this,[e]);let a=[];return a=ar(a,jr(i)),a=ar(a,jr(r)),a=ar(a,jr(o)),a}getBeforeBody(e,n){return IT(n.callbacks.beforeBody.apply(this,[e]))}getBody(e,n){const{callbacks:s}=n,i=[];return zt(e,r=>{const o={before:[],lines:[],after:[]},a=LT(s,r);ar(o.before,jr(a.beforeLabel.call(this,r))),ar(o.lines,a.label.call(this,r)),ar(o.after,jr(a.afterLabel.call(this,r))),i.push(o)}),i}getAfterBody(e,n){return IT(n.callbacks.afterBody.apply(this,[e]))}getFooter(e,n){const{callbacks:s}=n,i=s.beforeFooter.apply(this,[e]),r=s.footer.apply(this,[e]),o=s.afterFooter.apply(this,[e]);let a=[];return a=ar(a,jr(i)),a=ar(a,jr(r)),a=ar(a,jr(o)),a}_createItems(e){const n=this._active,s=this.chart.data,i=[],r=[],o=[];let a=[],l,c;for(l=0,c=n.length;le.filter(u,d,f,s))),e.itemSort&&(a=a.sort((u,d)=>e.itemSort(u,d,s))),zt(a,u=>{const d=LT(e.callbacks,u);i.push(d.labelColor.call(this,u)),r.push(d.labelPointStyle.call(this,u)),o.push(d.labelTextColor.call(this,u))}),this.labelColors=i,this.labelPointStyles=r,this.labelTextColors=o,this.dataPoints=a,a}update(e,n){const s=this.options.setContext(this.getContext()),i=this._active;let r,o=[];if(!i.length)this.opacity!==0&&(r={opacity:0});else{const a=kf[s.position].call(this,i,this._eventPosition);o=this._createItems(s),this.title=this.getTitle(o,s),this.beforeBody=this.getBeforeBody(o,s),this.body=this.getBody(o,s),this.afterBody=this.getAfterBody(o,s),this.footer=this.getFooter(o,s);const l=this._size=RT(this,s),c=Object.assign({},a,l),u=CT(this.chart,s,c),d=OT(s,c,u,this.chart);this.xAlign=u.xAlign,this.yAlign=u.yAlign,r={opacity:1,x:d.x,y:d.y,width:l.width,height:l.height,caretX:a.x,caretY:a.y}}this._tooltipItems=o,this.$context=void 0,r&&this._resolveAnimations().update(this,r),e&&s.external&&s.external.call(this,{chart:this.chart,tooltip:this,replay:n})}drawCaret(e,n,s,i){const r=this.getCaretPosition(e,s,i);n.lineTo(r.x1,r.y1),n.lineTo(r.x2,r.y2),n.lineTo(r.x3,r.y3)}getCaretPosition(e,n,s){const{xAlign:i,yAlign:r}=this,{caretSize:o,cornerRadius:a}=s,{topLeft:l,topRight:c,bottomLeft:u,bottomRight:d}=Il(a),{x:f,y:h}=e,{width:_,height:p}=n;let m,b,y,v,x,S;return r==="center"?(x=h+p/2,i==="left"?(m=f,b=m-o,v=x+o,S=x-o):(m=f+_,b=m+o,v=x-o,S=x+o),y=m):(i==="left"?b=f+Math.max(l,u)+o:i==="right"?b=f+_-Math.max(c,d)-o:b=this.caretX,r==="top"?(v=h,x=v-o,m=b-o,y=b+o):(v=h+p,x=v+o,m=b+o,y=b-o),S=v),{x1:m,x2:b,x3:y,y1:v,y2:x,y3:S}}drawTitle(e,n,s){const i=this.title,r=i.length;let o,a,l;if(r){const c=fu(s.rtl,this.x,this.width);for(e.x=Kp(this,s.titleAlign,s),n.textAlign=c.textAlign(s.titleAlign),n.textBaseline="middle",o=Nn(s.titleFont),a=s.titleSpacing,n.fillStyle=s.titleColor,n.font=o.string,l=0;lv!==0)?(e.beginPath(),e.fillStyle=r.multiKeyBackground,ah(e,{x:m,y:p,w:c,h:l,radius:y}),e.fill(),e.stroke(),e.fillStyle=o.backgroundColor,e.beginPath(),ah(e,{x:b,y:p+1,w:c-2,h:l-2,radius:y}),e.fill()):(e.fillStyle=r.multiKeyBackground,e.fillRect(m,p,c,l),e.strokeRect(m,p,c,l),e.fillStyle=o.backgroundColor,e.fillRect(b,p+1,c-2,l-2))}e.fillStyle=this.labelTextColors[s]}drawBody(e,n,s){const{body:i}=this,{bodySpacing:r,bodyAlign:o,displayColors:a,boxHeight:l,boxWidth:c,boxPadding:u}=s,d=Nn(s.bodyFont);let f=d.lineHeight,h=0;const _=fu(s.rtl,this.x,this.width),p=function(E){n.fillText(E,_.x(e.x+h),e.y+f/2),e.y+=f+r},m=_.textAlign(o);let b,y,v,x,S,w,T;for(n.textAlign=o,n.textBaseline="middle",n.font=d.string,e.x=Kp(this,m,s),n.fillStyle=s.bodyColor,zt(this.beforeBody,p),h=a&&m!=="right"?o==="center"?c/2+u:c+2+u:0,x=0,w=i.length;x0&&n.stroke()}_updateAnimationTarget(e){const n=this.chart,s=this.$animations,i=s&&s.x,r=s&&s.y;if(i||r){const o=kf[e.position].call(this,this._active,this._eventPosition);if(!o)return;const a=this._size=RT(this,e),l=Object.assign({},o,this._size),c=CT(n,e,l),u=OT(e,l,c,n);(i._to!==u.x||r._to!==u.y)&&(this.xAlign=c.xAlign,this.yAlign=c.yAlign,this.width=a.width,this.height=a.height,this.caretX=o.x,this.caretY=o.y,this._resolveAnimations().update(this,u))}}_willRender(){return!!this.opacity}draw(e){const n=this.options.setContext(this.getContext());let s=this.opacity;if(!s)return;this._updateAnimationTarget(n);const i={width:this.width,height:this.height},r={x:this.x,y:this.y};s=Math.abs(s)<.001?0:s;const o=us(n.padding),a=this.title.length||this.beforeBody.length||this.body.length||this.afterBody.length||this.footer.length;n.enabled&&a&&(e.save(),e.globalAlpha=s,this.drawBackground(r,e,i,n),zR(e,n.textDirection),r.y+=o.top,this.drawTitle(r,e,n),this.drawBody(r,e,n),this.drawFooter(r,e,n),HR(e,n.textDirection),e.restore())}getActiveElements(){return this._active||[]}setActiveElements(e,n){const s=this._active,i=e.map(({datasetIndex:a,index:l})=>{const c=this.chart.getDatasetMeta(a);if(!c)throw new Error("Cannot find a dataset at index "+a);return{datasetIndex:a,element:c.data[l],index:l}}),r=!_g(s,i),o=this._positionChanged(i,n);(r||o)&&(this._active=i,this._eventPosition=n,this._ignoreReplayEvents=!0,this.update(!0))}handleEvent(e,n,s=!0){if(n&&this._ignoreReplayEvents)return!1;this._ignoreReplayEvents=!1;const i=this.options,r=this._active||[],o=this._getActiveElements(e,r,n,s),a=this._positionChanged(o,e),l=n||!_g(o,r)||a;return l&&(this._active=o,(i.enabled||i.external)&&(this._eventPosition={x:e.x,y:e.y},this.update(!0,n))),l}_getActiveElements(e,n,s,i){const r=this.options;if(e.type==="mouseout")return[];if(!i)return n;const o=this.chart.getElementsAtEventForMode(e,r.mode,r,s);return r.reverse&&o.reverse(),o}_positionChanged(e,n){const{caretX:s,caretY:i,options:r}=this,o=kf[r.position].call(this,e,n);return o!==!1&&(s!==o.x||i!==o.y)}};xy.positioners=kf;var Die={id:"tooltip",_element:xy,positioners:kf,afterInit(t,e,n){n&&(t.tooltip=new xy({chart:t,options:n}))},beforeUpdate(t,e,n){t.tooltip&&t.tooltip.initialize(n)},reset(t,e,n){t.tooltip&&t.tooltip.initialize(n)},afterDraw(t){const e=t.tooltip;if(e&&e._willRender()){const n={tooltip:e};if(t.notifyPlugins("beforeTooltipDraw",n)===!1)return;e.draw(t.ctx),t.notifyPlugins("afterTooltipDraw",n)}},afterEvent(t,e){if(t.tooltip){const n=e.replay;t.tooltip.handleEvent(e.event,n,e.inChartArea)&&(e.changed=!0)}},defaults:{enabled:!0,external:null,position:"average",backgroundColor:"rgba(0,0,0,0.8)",titleColor:"#fff",titleFont:{weight:"bold"},titleSpacing:2,titleMarginBottom:6,titleAlign:"left",bodyColor:"#fff",bodySpacing:2,bodyFont:{},bodyAlign:"left",footerColor:"#fff",footerSpacing:2,footerMarginTop:6,footerFont:{weight:"bold"},footerAlign:"left",padding:6,caretPadding:2,caretSize:5,cornerRadius:6,boxHeight:(t,e)=>e.bodyFont.size,boxWidth:(t,e)=>e.bodyFont.size,multiKeyBackground:"#fff",displayColors:!0,boxPadding:0,borderColor:"rgba(0,0,0,0)",borderWidth:0,animation:{duration:400,easing:"easeOutQuart"},animations:{numbers:{type:"number",properties:["x","y","width","height","caretX","caretY"]},opacity:{easing:"linear",duration:200}},callbacks:{beforeTitle:zr,title(t){if(t.length>0){const e=t[0],n=e.chart.data.labels,s=n?n.length:0;if(this&&this.options&&this.options.mode==="dataset")return e.dataset.label||"";if(e.label)return e.label;if(s>0&&e.dataIndext!=="filter"&&t!=="itemSort"&&t!=="external",_indexable:!1,callbacks:{_scriptable:!1,_indexable:!1},animation:{_fallback:!1},animations:{_fallback:"animation"}},additionalOptionScopes:["interaction"]};const Fie=(t,e,n,s)=>(typeof e=="string"?(n=t.push(e)-1,s.unshift({index:n,label:e})):isNaN(e)&&(n=null),n);function Nie(t,e,n,s){const i=t.indexOf(e);if(i===-1)return Fie(t,e,n,s);const r=t.lastIndexOf(e);return i!==r?n:i}const $ie=(t,e)=>t===null?null:as(Math.round(t),0,e);class Tg extends sc{constructor(e){super(e),this._startValue=void 0,this._valueRange=0,this._addedLabels=[]}init(e){const n=this._addedLabels;if(n.length){const s=this.getLabels();for(const{index:i,label:r}of n)s[i]===r&&s.splice(i,1);this._addedLabels=[]}super.init(e)}parse(e,n){if(Nt(e))return null;const s=this.getLabels();return n=isFinite(n)&&s[n]===e?n:Nie(s,e,gt(n,e),this._addedLabels),$ie(n,s.length-1)}determineDataLimits(){const{minDefined:e,maxDefined:n}=this.getUserBounds();let{min:s,max:i}=this.getMinMax(!0);this.options.bounds==="ticks"&&(e||(s=0),n||(i=this.getLabels().length-1)),this.min=s,this.max=i}buildTicks(){const e=this.min,n=this.max,s=this.options.offset,i=[];let r=this.getLabels();r=e===0&&n===r.length-1?r:r.slice(e,n+1),this._valueRange=Math.max(r.length-(s?0:1),1),this._startValue=this.min-(s?.5:0);for(let o=e;o<=n;o++)i.push({value:o});return i}getLabelForValue(e){const n=this.getLabels();return e>=0&&en.length-1?null:this.getPixelForValue(n[e].value)}getValueForPixel(e){return Math.round(this._startValue+this.getDecimalForPixel(e)*this._valueRange)}getBasePixel(){return this.bottom}}Tg.id="category";Tg.defaults={ticks:{callback:Tg.prototype.getLabelForValue}};function Uie(t,e){const n=[],{bounds:i,step:r,min:o,max:a,precision:l,count:c,maxTicks:u,maxDigits:d,includeBounds:f}=t,h=r||1,_=u-1,{min:p,max:m}=e,b=!Nt(o),y=!Nt(a),v=!Nt(c),x=(m-p)/(d+1);let S=F3((m-p)/_/h)*h,w,T,E,A;if(S<1e-14&&!b&&!y)return[{value:p},{value:m}];A=Math.ceil(m/S)-Math.floor(p/S),A>_&&(S=F3(A*S/_/h)*h),Nt(l)||(w=Math.pow(10,l),S=Math.ceil(S*w)/w),i==="ticks"?(T=Math.floor(p/S)*S,E=Math.ceil(m/S)*S):(T=p,E=m),b&&y&&r&&Jee((a-o)/r,S/1e3)?(A=Math.round(Math.min((a-o)/S,u)),S=(a-o)/A,T=o,E=a):v?(T=b?o:T,E=y?a:E,A=c-1,S=(E-T)/A):(A=(E-T)/S,Tf(A,Math.round(A),S/1e3)?A=Math.round(A):A=Math.ceil(A));const O=Math.max(N3(S),N3(T));w=Math.pow(10,Nt(l)?O:l),T=Math.round(T*w)/w,E=Math.round(E*w)/w;let I=0;for(b&&(f&&T!==o?(n.push({value:o}),Ti=n?i:l,a=l=>r=s?r:l;if(e){const l=xr(i),c=xr(r);l<0&&c<0?a(0):l>0&&c>0&&o(0)}if(i===r){let l=1;(r>=Number.MAX_SAFE_INTEGER||i<=Number.MIN_SAFE_INTEGER)&&(l=Math.abs(r*.05)),a(r+l),e||o(i-l)}this.min=i,this.max=r}getTickLimit(){const e=this.options.ticks;let{maxTicksLimit:n,stepSize:s}=e,i;return s?(i=Math.ceil(this.max/s)-Math.floor(this.min/s)+1,i>1e3&&(console.warn(`scales.${this.id}.ticks.stepSize: ${s} would result generating up to ${i} ticks. Limiting to 1000.`),i=1e3)):(i=this.computeTickLimit(),n=n||11),n&&(i=Math.min(n,i)),i}computeTickLimit(){return Number.POSITIVE_INFINITY}buildTicks(){const e=this.options,n=e.ticks;let s=this.getTickLimit();s=Math.max(2,s);const i={maxTicks:s,bounds:e.bounds,min:e.min,max:e.max,precision:n.precision,step:n.stepSize,count:n.count,maxDigits:this._maxDigits(),horizontal:this.isHorizontal(),minRotation:n.minRotation||0,includeBounds:n.includeBounds!==!1},r=this._range||this,o=Uie(i,r);return e.bounds==="ticks"&&vR(o,this,"value"),e.reverse?(o.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),o}configure(){const e=this.ticks;let n=this.min,s=this.max;if(super.configure(),this.options.offset&&e.length){const i=(s-n)/Math.max(e.length-1,1)/2;n-=i,s+=i}this._startValue=n,this._endValue=s,this._valueRange=s-n}getLabelForValue(e){return Bh(e,this.chart.options.locale,this.options.ticks.format)}}class mx extends Ag{determineDataLimits(){const{min:e,max:n}=this.getMinMax(!0);this.min=Jn(e)?e:0,this.max=Jn(n)?n:1,this.handleTickRangeOptions()}computeTickLimit(){const e=this.isHorizontal(),n=e?this.width:this.height,s=Gi(this.options.ticks.minRotation),i=(e?Math.sin(s):Math.cos(s))||.001,r=this._resolveTickFontOptions(0);return Math.ceil(n/Math.min(40,r.lineHeight/i))}getPixelForValue(e){return e===null?NaN:this.getPixelForDecimal((e-this._startValue)/this._valueRange)}getValueForPixel(e){return this._startValue+this.getDecimalForPixel(e)*this._valueRange}}mx.id="linear";mx.defaults={ticks:{callback:q_.formatters.numeric}};function DT(t){return t/Math.pow(10,Math.floor(ui(t)))===1}function Bie(t,e){const n=Math.floor(ui(e.max)),s=Math.ceil(e.max/Math.pow(10,n)),i=[];let r=ri(t.min,Math.pow(10,Math.floor(ui(e.min)))),o=Math.floor(ui(r)),a=Math.floor(r/Math.pow(10,o)),l=o<0?Math.pow(10,Math.abs(o)):1;do i.push({value:r,major:DT(r)}),++a,a===10&&(a=1,++o,l=o>=0?1:l),r=Math.round(a*Math.pow(10,o)*l)/l;while(o0?s:null}determineDataLimits(){const{min:e,max:n}=this.getMinMax(!0);this.min=Jn(e)?Math.max(0,e):null,this.max=Jn(n)?Math.max(0,n):null,this.options.beginAtZero&&(this._zero=!0),this.handleTickRangeOptions()}handleTickRangeOptions(){const{minDefined:e,maxDefined:n}=this.getUserBounds();let s=this.min,i=this.max;const r=l=>s=e?s:l,o=l=>i=n?i:l,a=(l,c)=>Math.pow(10,Math.floor(ui(l))+c);s===i&&(s<=0?(r(1),o(10)):(r(a(s,-1)),o(a(i,1)))),s<=0&&r(a(i,-1)),i<=0&&o(a(s,1)),this._zero&&this.min!==this._suggestedMin&&s===a(this.min,0)&&r(a(s,-1)),this.min=s,this.max=i}buildTicks(){const e=this.options,n={min:this._userMin,max:this._userMax},s=Bie(n,this);return e.bounds==="ticks"&&vR(s,this,"value"),e.reverse?(s.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),s}getLabelForValue(e){return e===void 0?"0":Bh(e,this.chart.options.locale,this.options.ticks.format)}configure(){const e=this.min;super.configure(),this._startValue=ui(e),this._valueRange=ui(this.max)-ui(e)}getPixelForValue(e){return(e===void 0||e===0)&&(e=this.min),e===null||isNaN(e)?NaN:this.getPixelForDecimal(e===this.min?0:(ui(e)-this._startValue)/this._valueRange)}getValueForPixel(e){const n=this.getDecimalForPixel(e);return Math.pow(10,this._startValue+n*this._valueRange)}}f6.id="logarithmic";f6.defaults={ticks:{callback:q_.formatters.logarithmic,major:{enabled:!0}}};function Sy(t){const e=t.ticks;if(e.display&&t.display){const n=us(e.backdropPadding);return gt(e.font&&e.font.size,St.font.size)+n.height}return 0}function Gie(t,e,n){return n=sn(n)?n:[n],{w:Cte(t,e.string,n),h:n.length*e.lineHeight}}function FT(t,e,n,s,i){return t===s||t===i?{start:e-n/2,end:e+n/2}:ti?{start:e-n,end:e}:{start:e,end:e+n}}function zie(t){const e={l:t.left+t._padding.left,r:t.right-t._padding.right,t:t.top+t._padding.top,b:t.bottom-t._padding.bottom},n=Object.assign({},e),s=[],i=[],r=t._pointLabels.length,o=t.options.pointLabels,a=o.centerPointLabels?pn/r:0;for(let l=0;le.r&&(a=(s.end-e.r)/r,t.r=Math.max(t.r,e.r+a)),i.starte.b&&(l=(i.end-e.b)/o,t.b=Math.max(t.b,e.b+l))}function Vie(t,e,n){const s=[],i=t._pointLabels.length,r=t.options,o=Sy(r)/2,a=t.drawingArea,l=r.pointLabels.centerPointLabels?pn/i:0;for(let c=0;c270||n<90)&&(t-=e),t}function Yie(t,e){const{ctx:n,options:{pointLabels:s}}=t;for(let i=e-1;i>=0;i--){const r=s.setContext(t.getPointLabelContext(i)),o=Nn(r.font),{x:a,y:l,textAlign:c,left:u,top:d,right:f,bottom:h}=t._pointLabelItems[i],{backdropColor:_}=r;if(!Nt(_)){const p=Il(r.borderRadius),m=us(r.backdropPadding);n.fillStyle=_;const b=u-m.left,y=d-m.top,v=f-u+m.width,x=h-d+m.height;Object.values(p).some(S=>S!==0)?(n.beginPath(),ah(n,{x:b,y,w:v,h:x,radius:p}),n.fill()):n.fillRect(b,y,v,x)}Vl(n,t._pointLabels[i],a,l+o.lineHeight/2,o,{color:r.color,textAlign:c,textBaseline:"middle"})}}function h6(t,e,n,s){const{ctx:i}=t;if(n)i.arc(t.xCenter,t.yCenter,e,0,jt);else{let r=t.getPointPosition(0,e);i.moveTo(r.x,r.y);for(let o=1;o{const i=Kt(this.options.pointLabels.callback,[n,s],this);return i||i===0?i:""}).filter((n,s)=>this.chart.getDataVisibility(s))}fit(){const e=this.options;e.display&&e.pointLabels.display?zie(this):this.setCenterPoint(0,0,0,0)}setCenterPoint(e,n,s,i){this.xCenter+=Math.floor((e-n)/2),this.yCenter+=Math.floor((s-i)/2),this.drawingArea-=Math.min(this.drawingArea/2,Math.max(e,n,s,i))}getIndexAngle(e){const n=jt/(this._pointLabels.length||1),s=this.options.startAngle||0;return Di(e*n+Gi(s))}getDistanceFromCenterForValue(e){if(Nt(e))return NaN;const n=this.drawingArea/(this.max-this.min);return this.options.reverse?(this.max-e)*n:(e-this.min)*n}getValueForDistanceFromCenter(e){if(Nt(e))return NaN;const n=e/(this.drawingArea/(this.max-this.min));return this.options.reverse?this.max-n:this.min+n}getPointLabelContext(e){const n=this._pointLabels||[];if(e>=0&&e{if(u!==0){a=this.getDistanceFromCenterForValue(c.value);const d=i.setContext(this.getContext(u-1));Kie(this,d,a,r)}}),s.display){for(e.save(),o=r-1;o>=0;o--){const c=s.setContext(this.getPointLabelContext(o)),{color:u,lineWidth:d}=c;!d||!u||(e.lineWidth=d,e.strokeStyle=u,e.setLineDash(c.borderDash),e.lineDashOffset=c.borderDashOffset,a=this.getDistanceFromCenterForValue(n.ticks.reverse?this.min:this.max),l=this.getPointPosition(o,a),e.beginPath(),e.moveTo(this.xCenter,this.yCenter),e.lineTo(l.x,l.y),e.stroke())}e.restore()}}drawBorder(){}drawLabels(){const e=this.ctx,n=this.options,s=n.ticks;if(!s.display)return;const i=this.getIndexAngle(0);let r,o;e.save(),e.translate(this.xCenter,this.yCenter),e.rotate(i),e.textAlign="center",e.textBaseline="middle",this.ticks.forEach((a,l)=>{if(l===0&&!n.reverse)return;const c=s.setContext(this.getContext(l)),u=Nn(c.font);if(r=this.getDistanceFromCenterForValue(this.ticks[l].value),c.showLabelBackdrop){e.font=u.string,o=e.measureText(a.label).width,e.fillStyle=c.backdropColor;const d=us(c.backdropPadding);e.fillRect(-o/2-d.left,-r-u.size/2-d.top,o+d.width,u.size+d.height)}Vl(e,a.label,0,-r,u,{color:c.color})}),e.restore()}drawTitle(){}}X_.id="radialLinear";X_.defaults={display:!0,animate:!0,position:"chartArea",angleLines:{display:!0,lineWidth:1,borderDash:[],borderDashOffset:0},grid:{circular:!1},startAngle:0,ticks:{showLabelBackdrop:!0,callback:q_.formatters.numeric},pointLabels:{backdropColor:void 0,backdropPadding:2,display:!0,font:{size:10},callback(t){return t},padding:5,centerPointLabels:!1}};X_.defaultRoutes={"angleLines.color":"borderColor","pointLabels.color":"color","ticks.color":"color"};X_.descriptors={angleLines:{_fallback:"grid"}};const Z_={millisecond:{common:!0,size:1,steps:1e3},second:{common:!0,size:1e3,steps:60},minute:{common:!0,size:6e4,steps:60},hour:{common:!0,size:36e5,steps:24},day:{common:!0,size:864e5,steps:30},week:{common:!1,size:6048e5,steps:4},month:{common:!0,size:2628e6,steps:12},quarter:{common:!1,size:7884e6,steps:4},year:{common:!0,size:3154e7}},Ls=Object.keys(Z_);function Zie(t,e){return t-e}function NT(t,e){if(Nt(e))return null;const n=t._adapter,{parser:s,round:i,isoWeekday:r}=t._parseOpts;let o=e;return typeof s=="function"&&(o=s(o)),Jn(o)||(o=typeof s=="string"?n.parse(o,s):n.parse(o)),o===null?null:(i&&(o=i==="week"&&(zu(r)||r===!0)?n.startOf(o,"isoWeek",r):n.startOf(o,i)),+o)}function $T(t,e,n,s){const i=Ls.length;for(let r=Ls.indexOf(t);r=Ls.indexOf(n);r--){const o=Ls[r];if(Z_[o].common&&t._adapter.diff(i,s,o)>=e-1)return o}return Ls[n?Ls.indexOf(n):0]}function Qie(t){for(let e=Ls.indexOf(t)+1,n=Ls.length;e=e?n[s]:n[i];t[r]=!0}}function ere(t,e,n,s){const i=t._adapter,r=+i.startOf(e[0].value,s),o=e[e.length-1].value;let a,l;for(a=r;a<=o;a=+i.add(a,1,s))l=n[a],l>=0&&(e[l].major=!0);return e}function BT(t,e,n){const s=[],i={},r=e.length;let o,a;for(o=0;o+e.value))}initOffsets(e){let n=0,s=0,i,r;this.options.offset&&e.length&&(i=this.getDecimalForValue(e[0]),e.length===1?n=1-i:n=(this.getDecimalForValue(e[1])-i)/2,r=this.getDecimalForValue(e[e.length-1]),e.length===1?s=r:s=(r-this.getDecimalForValue(e[e.length-2]))/2);const o=e.length<3?.5:.25;n=as(n,0,o),s=as(s,0,o),this._offsets={start:n,end:s,factor:1/(n+1+s)}}_generate(){const e=this._adapter,n=this.min,s=this.max,i=this.options,r=i.time,o=r.unit||$T(r.minUnit,n,s,this._getLabelCapacity(n)),a=gt(r.stepSize,1),l=o==="week"?r.isoWeekday:!1,c=zu(l)||l===!0,u={};let d=n,f,h;if(c&&(d=+e.startOf(d,"isoWeek",l)),d=+e.startOf(d,c?"day":o),e.diff(s,n,o)>1e5*a)throw new Error(n+" and "+s+" are too far apart with stepSize of "+a+" "+o);const _=i.ticks.source==="data"&&this.getDataTimestamps();for(f=d,h=0;fp-m).map(p=>+p)}getLabelForValue(e){const n=this._adapter,s=this.options.time;return s.tooltipFormat?n.format(e,s.tooltipFormat):n.format(e,s.displayFormats.datetime)}_tickFormatFunction(e,n,s,i){const r=this.options,o=r.time.displayFormats,a=this._unit,l=this._majorUnit,c=a&&o[a],u=l&&o[l],d=s[n],f=l&&u&&d&&d.major,h=this._adapter.format(e,i||(f?u:c)),_=r.ticks.callback;return _?Kt(_,[h,n,s],this):h}generateTickLabels(e){let n,s,i;for(n=0,s=e.length;n0?a:1}getDataTimestamps(){let e=this._cache.data||[],n,s;if(e.length)return e;const i=this.getMatchingVisibleMetas();if(this._normalized&&i.length)return this._cache.data=i[0].controller.getAllParsedValues(this);for(n=0,s=i.length;n=t[s].pos&&e<=t[i].pos&&({lo:s,hi:i}=vl(t,"pos",e)),{pos:r,time:a}=t[s],{pos:o,time:l}=t[i]):(e>=t[s].time&&e<=t[i].time&&({lo:s,hi:i}=vl(t,"time",e)),{time:r,pos:a}=t[s],{time:o,pos:l}=t[i]);const c=o-r;return c?a+(l-a)*(e-r)/c:a}class p6 extends Vh{constructor(e){super(e),this._table=[],this._minPos=void 0,this._tableRange=void 0}initOffsets(){const e=this._getTimestampsForTable(),n=this._table=this.buildLookupTable(e);this._minPos=Xp(n,this.min),this._tableRange=Xp(n,this.max)-this._minPos,super.initOffsets(e)}buildLookupTable(e){const{min:n,max:s}=this,i=[],r=[];let o,a,l,c,u;for(o=0,a=e.length;o=n&&c<=s&&i.push(c);if(i.length<2)return[{time:n,pos:0},{time:s,pos:1}];for(o=0,a=i.length;o"u"?[]:[...t.labels],datasets:[]};return m6(n,{...t},e),n}function m6(t,e,n){const s=[];t.datasets=e.datasets.map(i=>{const r=t.datasets.find(o=>o[n]===i[n]);return!r||!i.data||s.includes(r)?{...i}:(s.push(r),Object.assign(r,i),r)})}function sre(t,e,n){t.data.labels=e,n!==void 0&&n.emit(Wu.LabelsUpdated)}function ire(t,e){t.options={...e}}function rre(t,e){const n=t.datasets.map(i=>i.label),s=e.datasets.map(i=>i.label);return e.datasets.length===t.datasets.length&&n.every((i,r)=>i===s[r])}const ore="Please remove the tags from your chart component. See https://vue-chartjs.org/guide/#vue-single-file-components",are="Update ERROR: chart instance not found",g6=(t,e,n)=>nt({props:{chartData:{type:Object,required:!0},chartOptions:{type:Object,default:()=>{}},datasetIdKey:{type:String,default:"label"},chartId:{type:String,default:t},width:{type:Number,default:400},height:{type:Number,default:400},cssClasses:{type:String,default:""},styles:{type:Object,default:()=>{}},plugins:{type:Array,default:()=>[]}},setup(s,i){ch.register(n);const r=Mv(null),o=Yg(null);function a(d,f){if(r.value!==null&&Jp(ut(r.value),i),o.value===null)throw new Error(ore);{const h=nre(d,s.datasetIdKey),_=o.value.getContext("2d");_!==null&&(r.value=new ch(_,{type:e,data:df(d)?new Proxy(h,{}):h,options:f,plugins:s.plugins}))}}function l(d,f){const h=df(d)?ut(d):{...d},_=df(f)?ut(f):{...f};if(Object.keys(_).length>0){const p=ut(r.value);rre(h,_)&&p!==null?(m6(p==null?void 0:p.data,h,s.datasetIdKey),h.labels!==void 0&&sre(p,h.labels,i),u()):(p!==null&&Jp(p,i),Zp(a,s.chartData,s.chartOptions,i))}else r.value!==null&&Jp(ut(r.value),i),Zp(a,s.chartData,s.chartOptions,i)}function c(d){const f=ut(r.value);f!==null?(ire(f,d),u()):Zp(a,s.chartData,s.chartOptions,i)}function u(){const d=ut(r.value);d!==null?tre(d,i):console.error(are)}return ya(()=>s.chartData,(d,f)=>l(d,f),{deep:!0}),ya(()=>s.chartOptions,d=>c(d),{deep:!0}),Lv(()=>{"datasets"in s.chartData&&s.chartData.datasets.length>0&&Zp(a,s.chartData,s.chartOptions,i)}),Pv(()=>{r.value!==null&&Jp(ut(r.value),i)}),i.expose({chart:r,updateChart:u}),()=>Eu("div",{style:s.styles,class:s.cssClasses},[Eu("canvas",{id:s.chartId,width:s.width,height:s.height,ref:o})])}}),lre=g6("line-chart","line",j_),cre=g6("scatter-chart","scatter",Y_),ure=nt({name:"line-chart",components:{LineChart:lre},props:["title","axis","labels"],data(){return{colors:["#1f77b4","#ff7f0e","#2ca02c","#d62728"]}},computed:{chartData(){return{labels:this.labels,datasets:this.axis.map((t,e)=>({label:t.label,data:t.data,borderColor:this.colors[e],fill:!1,radius:1,pointRadius:0,lineTension:.1}))}},chartOptions(){return{responsive:!0,maintainAspectRatio:!1,animation:{duration:0},responsiveAnimationDuration:0,scales:{x:{type:"linear",gridLines:{display:!0},ticks:{step:10}},y:{gridLines:{display:!0},ticks:{step:10}}},plugins:{title:{display:!0,text:this.title},tooltip:{enabled:!0,position:"average",mode:"index",intersect:!1}}}}}});function dre(t,e,n,s,i,r){const o=Re("LineChart",!0);return J(),fn(o,{"chart-data":t.chartData,"chart-options":t.chartOptions,ref:"chart"},null,8,["chart-data","chart-options"])}const gx=ot(ure,[["render",dre]]),fre=nt({name:"StickRates",components:{LineChart:gx},setup(){return{profile:Zt()}},computed:{fileRef(){return this.$refs.file},downloadAnchorRef(){return this.$refs.downloadAnchor},currentProfile(){return this.profile.rate.rates[this.profile.rate.profile]},currentMode:{get(){return this.currentProfile.mode},set(t){const e=this.profile.rate.rates[this.profile.rate.profile].mode;this.rateBackup[e]=JSON.parse(JSON.stringify(this.profile.rate.rates[this.profile.rate.profile].rate)),this.profile.rate.rates[this.profile.rate.profile].mode=t;const n=[...this.rateBackup[t]||this.rateDefaults[t]];this.profile.rate.rates[this.profile.rate.profile].rate=n}},currentModeText(){return this.rateModes[this.currentProfile.mode].text},rateLabel(){return this.rateLabels[this.currentProfile.mode]}},data(){return{rateProfiles:[{value:0,text:"Rate Profile 1"},{value:1,text:"Rate Profile 2"}],MODE_SILVERWARE:0,MODE_BETAFLIGHT:1,MODE_ACTUAL:2,rateBackup:{},rateDefaults:[[[860,860,500],[.8,.8,.6],[.55,0,.55]],[[1.3,1.3,1.3],[.7,.7,.7],[.4,.4,.4]],[[70,70,70],[670,670,670],[0,0,0]]],rateStep:[[5,.05,.05],[.05,.05,.05],[5,5,.05]],rateLimits:[[{min:0,max:1800},{min:0,max:1},{min:0,max:1}],[{min:0,max:3},{min:0,max:3},{min:0,max:1}],[{min:0,max:500},{min:0,max:1800},{min:0,max:1}]],rateModes:[{value:0,text:"Silverware"},{value:1,text:"Betaflight"},{value:2,text:"Actual"}],plot:{axis:[],labels:[]},SILVERWARE_MAX_RATE:0,SILVERWARE_ACRO_EXPO:1,SILVERWARE_ANGLE_EXPO:2,BETAFLIGHT_RC_RATE:0,BETAFLIGHT_SUPER_RATE:1,BETAFLIGHT_EXPO:2,ACTUAL_CENTER_SENSITIVITY:0,ACTUAL_MAX_RATE:1,ACTUAL_EXPO:2,rateLabels:[["MAX_RATE","ACRO_EXPO","ANGLE_EXPO"],["RC_RATE","SUPER_RATE","EXPO"],["CENTER_SENSITIVITY","MAX_RATE","EXPO"]]}},methods:{constrain(t,e,n){return t>n?n:t2&&(r+=14.54*(r-2));let o=200*r*e;const a=this.currentProfile.rate[this.BETAFLIGHT_SUPER_RATE][t];if(a){const l=1/this.constrain(1-i*a,.01,1);o*=l}return o},calcActual(t,e){const n=this.currentProfile.rate[this.ACTUAL_EXPO][t],i=Math.abs(e)*(Math.pow(e,5)*n+e*(1-n)),r=this.currentProfile.rate[this.ACTUAL_CENTER_SENSITIVITY][t],o=this.currentProfile.rate[this.ACTUAL_MAX_RATE][t],a=Math.max(0,o-r);return e*r+a*i},update(){const t=[{label:"Roll",data:[]},{label:"Pitch",data:[]},{label:"Yaw",data:[]}],e=[];for(let n=-100;n<=100;n++){const s=n/100;e.push(""+n.toString());for(let i=0;i<3;i++)switch(this.currentProfile.mode){case this.MODE_SILVERWARE:t[i].data.push({x:n,y:this.calcSilverware(i,s)});break;case this.MODE_BETAFLIGHT:t[i].data.push({x:n,y:this.calcBetatflight(i,s)});break;case this.MODE_ACTUAL:t[i].data.push({x:n,y:this.calcActual(i,s)});break}}this.plot={labels:e,axis:t}},uploadRates(){const t=new FileReader;t.addEventListener("load",e=>{var n,s;if((n=e==null?void 0:e.target)!=null&&n.result){const i=_o.parse((s=e==null?void 0:e.target)==null?void 0:s.result);this.profile.rate.rates=[...i]}}),this.fileRef.oninput=()=>{var e,n;(n=(e=this.fileRef)==null?void 0:e.files)!=null&&n.length&&t.readAsText(this.fileRef.files[0])},this.fileRef.click()},downloadRates(){const t=_o.stringify(this.profile.rate.rates),n="data:text/yaml;charset=utf-8,"+encodeURIComponent(t),s=new Date().toISOString().substring(0,10),r=`Rates_${this.profile.meta.name.replace(/\0/g,"")}_${s}.yaml`;this.downloadAnchorRef.setAttribute("href",n),this.downloadAnchorRef.setAttribute("download",r),this.downloadAnchorRef.click()}},mounted(){this.update()}}),hre={class:"card"},pre=g("header",{class:"card-header"},[g("p",{class:"card-header-title"},"Rates")],-1),mre={class:"card-content"},gre={class:"content column-narrow field-is-5"},_re={class:"columns"},bre={class:"column is-6"},yre={class:"field is-horizontal"},vre={class:"field-label"},wre={class:"label",for:"profile"},xre={class:"field-body"},Sre={class:"field"},Ere={class:"control is-expanded"},Tre={class:"field is-horizontal"},Are={class:"field-label"},Mre={class:"label",for:"rate-mode"},kre={class:"field-body"},Rre={class:"field"},Cre={class:"control is-expanded"},Ore={class:"card mt-5 mb-6"},Ire={class:"card-header"},Lre={class:"card-header-title"},Pre={class:"card-content"},Dre={class:"content"},Fre=Pa('
Roll
Pitch
Yaw
',1),Nre={class:"column is-4"},$re=["for"],Ure={class:"field-body"},Bre={class:"field"},Gre={class:"control is-expanded"},zre={class:"columns is-multiline"},Hre={class:"column is-4"},Vre=["id","step","min","max","onUpdate:modelValue"],Wre={class:"column is-4"},jre=["id","step","min","max","onUpdate:modelValue"],qre={class:"column is-4"},Yre=["id","step","min","max","onUpdate:modelValue"],Kre={class:"field is-horizontal"},Xre={class:"field-label"},Zre={class:"label",for:"level-max-angle"},Jre={class:"field-body"},Qre={class:"field"},eoe={class:"control is-expanded"},toe={class:"field is-horizontal"},noe={class:"field-label"},soe={class:"label",for:"sticks-deadband"},ioe={class:"field-body"},roe={class:"field"},ooe={class:"control is-expanded"},aoe={class:"column is-6"},loe={class:"card-footer"},coe={accept:".yaml",type:"file",ref:"file",style:{display:"none"}},uoe={ref:"downloadAnchor",target:"_blank"};function doe(t,e,n,s,i,r){const o=Re("tooltip"),a=Re("input-select"),l=Re("LineChart"),c=Re("spinner-btn");return J(),se("div",hre,[pre,g("div",mre,[g("div",gre,[g("div",_re,[g("div",bre,[g("div",yre,[g("div",vre,[g("label",wre,[ye(" Profile "),X(o,{entry:"rate.profile"})])]),g("div",xre,[g("div",Sre,[g("div",Ere,[X(a,{id:"profile",class:"is-fullwidth",modelValue:t.profile.rate.profile,"onUpdate:modelValue":e[0]||(e[0]=u=>t.profile.rate.profile=u),modelModifiers:{number:!0},options:t.rateProfiles,onChange:e[1]||(e[1]=u=>t.update())},null,8,["modelValue","options"])])])])]),g("div",Tre,[g("div",Are,[g("label",Mre,[ye(" Mode "),X(o,{entry:"rate.mode"})])]),g("div",kre,[g("div",Rre,[g("div",Cre,[X(a,{id:"rate-mode",class:"is-fullwidth",modelValue:t.currentMode,"onUpdate:modelValue":e[2]||(e[2]=u=>t.currentMode=u),modelModifiers:{number:!0},options:t.rateModes,onChange:e[3]||(e[3]=u=>t.update())},null,8,["modelValue","options"])])])])]),g("div",Ore,[g("header",Ire,[g("p",Lre,Ue(t.currentModeText),1)]),g("div",Pre,[g("div",Dre,[Fre,(J(!0),se(tt,null,Vt(t.currentProfile.rate,(u,d)=>(J(),se("div",{class:"columns is-multiline",key:t.rateLabel[d]},[g("div",Nre,[g("label",{for:`${t.currentModeText}-${t.rateLabel[d]}`},Ue(t.rateLabel[d]),9,$re)]),g("div",Ure,[g("div",Bre,[g("div",Gre,[g("div",zre,[g("div",Hre,[Ve(g("input",{class:"input",id:`${t.currentModeText}-${t.rateLabel[d]}-roll`,type:"number",step:t.rateStep[t.currentMode][d],min:t.rateLimits[t.currentMode][d].min,max:t.rateLimits[t.currentMode][d].max,"onUpdate:modelValue":f=>t.currentProfile.rate[d][0]=f,onInput:e[4]||(e[4]=f=>t.update())},null,40,Vre),[[Je,t.currentProfile.rate[d][0],void 0,{number:!0}]])]),g("div",Wre,[Ve(g("input",{class:"input",id:`${t.currentModeText}-${t.rateLabel[d]}-pitch`,type:"number",step:t.rateStep[t.currentMode][d],min:t.rateLimits[t.currentMode][d].min,max:t.rateLimits[t.currentMode][d].max,"onUpdate:modelValue":f=>t.currentProfile.rate[d][1]=f,onInput:e[5]||(e[5]=f=>t.update())},null,40,jre),[[Je,t.currentProfile.rate[d][1],void 0,{number:!0}]])]),g("div",qre,[Ve(g("input",{class:"input",id:`${t.currentModeText}-${t.rateLabel[d]}-yaw`,type:"number",step:t.rateStep[t.currentMode][d],min:t.rateLimits[t.currentMode][d].min,max:t.rateLimits[t.currentMode][d].max,"onUpdate:modelValue":f=>t.currentProfile.rate[d][2]=f,onInput:e[6]||(e[6]=f=>t.update())},null,40,Yre),[[Je,t.currentProfile.rate[d][2],void 0,{number:!0}]])])])])])])]))),128))])])]),g("div",Kre,[g("div",Xre,[g("label",Zre,[ye(" LevelMaxAngle "),X(o,{entry:"rate.level_max_angle"})])]),g("div",Jre,[g("div",Qre,[g("div",eoe,[Ve(g("input",{class:"input",id:"level-max-angle",type:"number",step:"5","onUpdate:modelValue":e[7]||(e[7]=u=>t.profile.rate.level_max_angle=u)},null,512),[[Je,t.profile.rate.level_max_angle,void 0,{number:!0}]])])])])]),g("div",toe,[g("div",noe,[g("label",soe,[ye(" SticksDeadband "),X(o,{entry:"rate.sticks_deadband"})])]),g("div",ioe,[g("div",roe,[g("div",ooe,[Ve(g("input",{class:"input",step:"0.01",id:"sticks-deadband",type:"number","onUpdate:modelValue":e[8]||(e[8]=u=>t.profile.rate.sticks_deadband=u)},null,512),[[Je,t.profile.rate.sticks_deadband,void 0,{number:!0}]])])])])])]),g("div",aoe,[X(l,{title:"Rates",labels:t.plot.labels,axis:t.plot.axis},null,8,["labels","axis"])])])])]),g("footer",loe,[X(c,{class:"card-footer-item",onClick:t.downloadRates},{default:et(()=>[ye(" Save Rates ")]),_:1},8,["onClick"]),X(c,{class:"card-footer-item",onClick:t.uploadRates},{default:et(()=>[ye(" Load Rates ")]),_:1},8,["onClick"])]),g("input",coe,null,512),g("a",uoe,null,512)])}const foe=ot(fre,[["render",doe]]),hoe=nt({name:"StickRatesLegacy",components:{LineChart:gx},setup(){return{profile:Zt()}},data(){return{plotLowRates:!1,rateModes:[{value:0,text:"Silverware"},{value:1,text:"Betaflight"}],plot:{axis:[],labels:[]}}},computed:{currentMode(){return this.rateModes[this.profile.rate.mode]}},watch:{"profile.rate":{handler(t){this.update()},deep:!0},plotLowRates(){this.update()}},methods:{constrainf(t,e,n){return t>n?n:t1&&(e=1),e<-1&&(e=-1);const n=t*t*t*e+t*(1-e);return this.limitf(n,1)},calcSilverware(t,e){const n=this.profile.rate.silverware.acro_expo[t],s=this.profile.rate.silverware.max_rate[t];return this.rcexpo(e,n)*s},calcBetatflight(t,e){const i=this.profile.rate.betaflight.expo[t];e=this.rcexpo(e,i);let r=this.profile.rate.betaflight.rc_rate[t];r>2&&(r+=14.54*(r-2));const o=e>0?e:-e;let a=200*r*e;const l=this.profile.rate.betaflight.super_rate[t];if(l){const c=1/this.constrainf(1-o*l,.01,1);a*=c}return this.constrainf(a,-1998,1998)},update(){const t=[{label:"Roll",data:[]},{label:"Pitch",data:[]},{label:"Yaw",data:[]}],e=[],n=this.plotLowRates?this.profile.rate.low_rate_mulitplier:1;for(let s=-100;s<=100;s++){const i=s/100;e.push(""+s);for(let r=0;r<3;r++)this.currentMode.text=="Silverware"?t[r].data.push({x:s,y:this.calcSilverware(r,i)*n}):this.currentMode.text=="Betaflight"&&t[r].data.push({x:s,y:this.calcBetatflight(r,i)*n})}this.plot={labels:e,axis:t}}},mounted(){this.update()}}),poe={class:"card"},moe=g("header",{class:"card-header"},[g("p",{class:"card-header-title"},"Rates")],-1),goe={class:"card-content"},_oe={class:"content column-narrow field-is-5"},boe={class:"columns"},yoe={class:"column is-6"},voe={class:"field is-horizontal"},woe={class:"field-label"},xoe={class:"label",for:"rate-mode"},Soe={class:"field-body"},Eoe={class:"field"},Toe={class:"control is-expanded"},Aoe={class:"card mt-5 mb-6"},Moe={class:"card-header"},koe={class:"card-header-title"},Roe={class:"card-content"},Coe={class:"content"},Ooe=Pa('
Roll
Pitch
Yaw
',1),Ioe={class:"column is-4"},Loe=["for"],Poe={class:"field-body"},Doe={class:"field"},Foe={class:"control is-expanded"},Noe={class:"columns is-multiline"},$oe={class:"column is-4"},Uoe=["id","onUpdate:modelValue"],Boe={class:"column is-4"},Goe=["id","onUpdate:modelValue"],zoe={class:"column is-4"},Hoe=["id","onUpdate:modelValue"],Voe={class:"field is-horizontal"},Woe={class:"field-label"},joe={class:"label",for:"level-max-angle"},qoe={class:"field-body"},Yoe={class:"field"},Koe={class:"control is-expanded"},Xoe={class:"field is-horizontal"},Zoe={class:"field-label"},Joe={class:"label",for:"low-rate-mulitplier"},Qoe={class:"field-body"},eae={class:"field"},tae={class:"control is-expanded"},nae={class:"field is-horizontal"},sae={class:"field-label"},iae={class:"label",for:"sticks-deadband"},rae={class:"field-body"},oae={class:"field"},aae={class:"control is-expanded"},lae={class:"column is-6"},cae=g("label",{for:"plotLowRates"},"Plot LowRates",-1);function uae(t,e,n,s,i,r){const o=Re("tooltip"),a=Re("input-select"),l=Re("LineChart");return J(),se("div",poe,[moe,g("div",goe,[g("div",_oe,[g("div",boe,[g("div",yoe,[g("div",voe,[g("div",woe,[g("label",xoe,[ye(" Mode "),X(o,{entry:"rate.mode"})])]),g("div",Soe,[g("div",Eoe,[g("div",Toe,[X(a,{id:"rate-mode",class:"is-fullwidth",modelValue:t.profile.rate.mode,"onUpdate:modelValue":e[0]||(e[0]=c=>t.profile.rate.mode=c),modelModifiers:{number:!0},options:t.rateModes,onChange:e[1]||(e[1]=c=>t.update())},null,8,["modelValue","options"])])])])]),g("div",Aoe,[g("header",Moe,[g("p",koe,Ue(t.currentMode.text),1)]),g("div",Roe,[g("div",Coe,[Ooe,(J(!0),se(tt,null,Vt(t.profile.rate[t.currentMode.text.toLowerCase()],(c,u)=>(J(),se("div",{class:"columns is-multiline",key:u},[g("div",Ioe,[g("label",{for:`${t.currentMode.text}-${u}`},Ue(u),9,Loe)]),g("div",Poe,[g("div",Doe,[g("div",Foe,[g("div",Noe,[g("div",$oe,[Ve(g("input",{class:"input",id:`${t.currentMode.text}-${u}-roll`,type:"number",step:"10","onUpdate:modelValue":d=>t.profile.rate[t.currentMode.text.toLowerCase()][u][0]=d},null,8,Uoe),[[Je,t.profile.rate[t.currentMode.text.toLowerCase()][u][0],void 0,{number:!0}]])]),g("div",Boe,[Ve(g("input",{class:"input",id:`${t.currentMode.text}-${u}-pitch`,type:"number",step:"10","onUpdate:modelValue":d=>t.profile.rate[t.currentMode.text.toLowerCase()][u][1]=d},null,8,Goe),[[Je,t.profile.rate[t.currentMode.text.toLowerCase()][u][1],void 0,{number:!0}]])]),g("div",zoe,[Ve(g("input",{class:"input",id:`${t.currentMode.text}-${u}-yaw`,type:"number",step:"10","onUpdate:modelValue":d=>t.profile.rate[t.currentMode.text.toLowerCase()][u][2]=d},null,8,Hoe),[[Je,t.profile.rate[t.currentMode.text.toLowerCase()][u][2],void 0,{number:!0}]])])])])])])]))),128))])])]),g("div",Voe,[g("div",Woe,[g("label",joe,[ye(" LevelMaxAngle "),X(o,{entry:"rate.level_max_angle"})])]),g("div",qoe,[g("div",Yoe,[g("div",Koe,[Ve(g("input",{class:"input",id:"level-max-angle",type:"number",step:"5","onUpdate:modelValue":e[2]||(e[2]=c=>t.profile.rate.level_max_angle=c)},null,512),[[Je,t.profile.rate.level_max_angle,void 0,{number:!0}]])])])])]),g("div",Xoe,[g("div",Zoe,[g("label",Joe,[ye(" LowRateMulitplier "),X(o,{entry:"rate.low_rate_mulitplier"})])]),g("div",Qoe,[g("div",eae,[g("div",tae,[Ve(g("input",{class:"input",id:"low-rate-mulitplier",type:"number",step:"0.05","onUpdate:modelValue":e[3]||(e[3]=c=>t.profile.rate.low_rate_mulitplier=c)},null,512),[[Je,t.profile.rate.low_rate_mulitplier,void 0,{number:!0}]])])])])]),g("div",nae,[g("div",sae,[g("label",iae,[ye(" SticksDeadband "),X(o,{entry:"rate.sticks_deadband"})])]),g("div",rae,[g("div",oae,[g("div",aae,[Ve(g("input",{class:"input",step:"0.01",id:"sticks-deadband",type:"number","onUpdate:modelValue":e[4]||(e[4]=c=>t.profile.rate.sticks_deadband=c)},null,512),[[Je,t.profile.rate.sticks_deadband,void 0,{number:!0}]])])])])])]),g("div",lae,[t.profile.rate.silverware.acro_expo?(J(),fn(l,{key:0,title:(t.plotLowRates?"Low ":"")+"Rates",labels:t.plot.labels,axis:t.plot.axis},null,8,["title","labels","axis"])):qe("",!0),Ve(g("input",{id:"plotLowRates",name:"plotLowRates",type:"checkbox",class:"switch","onUpdate:modelValue":e[5]||(e[5]=c=>t.plotLowRates=c)},null,512),[[r5,t.plotLowRates]]),cae])])])])])}const dae=ot(hoe,[["render",uae]]),fae=nt({name:"PIDRates",data(){return{pidProfiles:[{value:0,text:"PID Profile 1"},{value:1,text:"PID Profile 2"}],stickProfiles:[{value:0,text:"Stick Boost Profile AUX Off"},{value:1,text:"Stick Boost Profile AUX On"}],tdaOptions:[{value:0,text:"Off"},{value:1,text:"On"}],current_preset:-1}},setup(){return{root:wn(),profile:Zt()}},computed:{pid_rates:{get(){return this.profile.current_pid_rate},set(t){this.profile.set_current_pid_rate(t)}},stick_rates:{get(){return this.profile.current_stick_rate},set(t){this.profile.set_current_stick_rate(t)}},presets(){return[{index:-1,name:"Choose..."},...this.root.pid_rate_presets].map(t=>({value:t.index,text:t.name}))}},methods:{load_preset(t){this.pid_rates=this.root.pid_rate_presets[t].rate}}}),hae={class:"card"},pae=g("header",{class:"card-header"},[g("p",{class:"card-header-title"},"PID")],-1),mae={class:"card-content"},gae={class:"content column-narrow field-is-5"},_ae={class:"columns"},bae={class:"column is-6"},yae={class:"field field-is-2 is-horizontal"},vae={class:"field-label"},wae={class:"label",for:"pid-preset"},xae={class:"field-body"},Sae={class:"field has-addons"},Eae={class:"control is-expanded"},Tae={class:"control"},Aae={class:"field field-is-2 is-horizontal"},Mae={class:"field-label"},kae={class:"label",for:"pid-profile"},Rae={class:"field-body"},Cae={class:"field"},Oae={class:"control is-expanded"},Iae=Pa('
Roll
Pitch
Yaw
',1),Lae={class:"field-label"},Pae={class:"label"},Dae={class:"field-body"},Fae={class:"field"},Nae={class:"control is-expanded"},$ae=["id","onUpdate:modelValue"],Uae={class:"field"},Bae={class:"control is-expanded"},Gae=["id","onUpdate:modelValue"],zae={class:"field"},Hae={class:"control is-expanded"},Vae=["id","onUpdate:modelValue"],Wae={class:"field is-horizontal mt-6"},jae={class:"field-label"},qae={class:"label",for:"throttle_dterm_attenuation-enable"},Yae={class:"field-body"},Kae={class:"field"},Xae={class:"control is-expanded"},Zae={class:"field is-horizontal"},Jae={class:"field-label"},Qae={class:"label",for:"throttle_dterm_attenuation-breakpoint"},ele={class:"field-body"},tle={class:"field"},nle={class:"control is-expanded"},sle={class:"field is-horizontal"},ile={class:"field-label"},rle={class:"label",for:"throttle_dterm_attenuation-percent"},ole={class:"field-body"},ale={class:"field"},lle={class:"control is-expanded"},cle={class:"column is-6"},ule={class:"field field-is-2 is-horizontal"},dle={class:"field-label"},fle={class:"label",for:"stick-profile"},hle={class:"field-body"},ple={class:"field"},mle={class:"control is-expanded"},gle=Pa('
Roll
Pitch
Yaw
',1),_le={class:"field-label"},ble={class:"label"},yle={class:"field-body"},vle={class:"field"},wle={class:"control is-expanded"},xle=["id","onUpdate:modelValue"],Sle={class:"field"},Ele={class:"control is-expanded"},Tle=["id","onUpdate:modelValue"],Ale={class:"field"},Mle={class:"control is-expanded"},kle=["id","onUpdate:modelValue"],Rle={class:"columns mt-6 mb-1"},Cle={class:"column is-4"},Ole={class:"has-text-right"},Ile=g("div",{class:"column is-4"},[g("h6",null,"Small")],-1),Lle=g("div",{class:"column is-4"},[g("h6",null,"Big")],-1),Ple={class:"field-label"},Dle={class:"label"},Fle={class:"field-body"},Nle={class:"field"},$le={class:"control is-expanded"},Ule=["id","onUpdate:modelValue"],Ble={class:"field"},Gle={class:"control is-expanded"},zle=["id","onUpdate:modelValue"];function Hle(t,e,n,s,i,r){const o=Re("tooltip"),a=Re("input-select"),l=Re("spinner-btn");return J(),se("div",hae,[pae,g("div",mae,[g("div",gae,[g("div",_ae,[g("div",bae,[g("div",yae,[g("div",vae,[g("label",wae,[ye(" PID Preset "),X(o,{entry:"pid.preset"})])]),g("div",xae,[g("div",Sae,[g("div",Eae,[X(a,{id:"pid-preset",class:"is-fullwidth",modelValue:t.current_preset,"onUpdate:modelValue":e[0]||(e[0]=c=>t.current_preset=c),modelModifiers:{number:!0},options:t.presets},null,8,["modelValue","options"])]),g("div",Tae,[X(l,{onClick:e[1]||(e[1]=c=>t.load_preset(t.current_preset)),disabled:t.current_preset==-1},{default:et(()=>[ye(" Load ")]),_:1},8,["disabled"])])])])]),g("div",Aae,[g("div",Mae,[g("label",kae,[ye(" PIDProfile "),X(o,{entry:"pid.profile"})])]),g("div",Rae,[g("div",Cae,[g("div",Oae,[X(a,{id:"pid-profile",class:"is-fullwidth",modelValue:t.profile.pid.pid_profile,"onUpdate:modelValue":e[2]||(e[2]=c=>t.profile.pid.pid_profile=c),modelModifiers:{number:!0},options:t.pidProfiles},null,8,["modelValue","options"])])])])]),Iae,(J(!0),se(tt,null,Vt(t.pid_rates,(c,u)=>(J(),se("div",{class:"field field-is-2 is-horizontal",key:u},[g("div",Lae,[g("label",Pae,Ue(u),1)]),g("div",Dae,[g("div",Fae,[g("p",Nae,[Ve(g("input",{class:"input",id:`pid-${u}-roll`,type:"number",step:"1.0",min:"0","onUpdate:modelValue":d=>t.pid_rates[u][0]=d},null,8,$ae),[[Je,t.pid_rates[u][0],void 0,{number:!0}]])])]),g("div",Uae,[g("p",Bae,[Ve(g("input",{class:"input",id:`pid-${u}-pitch`,type:"number",step:"1.0",min:"0","onUpdate:modelValue":d=>t.pid_rates[u][1]=d},null,8,Gae),[[Je,t.pid_rates[u][1],void 0,{number:!0}]])])]),g("div",zae,[g("p",Hae,[Ve(g("input",{class:"input",id:`pid-${u}-yaw`,type:"number",step:"1.0",min:"0","onUpdate:modelValue":d=>t.pid_rates[u][2]=d},null,8,Vae),[[Je,t.pid_rates[u][2],void 0,{number:!0}]])])])])]))),128)),g("div",Wae,[g("div",jae,[g("label",qae,[ye(" Throttle DTerm Attenuation "),X(o,{entry:"pid.tda_active"})])]),g("div",Yae,[g("div",Kae,[g("div",Xae,[X(a,{id:"throttle_dterm_attenuation-enable",class:"is-fullwidth",modelValue:t.profile.pid.throttle_dterm_attenuation.tda_active,"onUpdate:modelValue":e[3]||(e[3]=c=>t.profile.pid.throttle_dterm_attenuation.tda_active=c),modelModifiers:{number:!0},options:t.tdaOptions},null,8,["modelValue","options"])])])])]),g("div",Zae,[g("div",Jae,[g("label",Qae,[ye(" TDA Breakpoint "),X(o,{entry:"pid.tda_breakpoint"})])]),g("div",ele,[g("div",tle,[g("div",nle,[Ve(g("input",{class:"input",id:"throttle_dterm_attenuation-breakpoint",type:"number",step:"0.05",min:"0","onUpdate:modelValue":e[4]||(e[4]=c=>t.profile.pid.throttle_dterm_attenuation.tda_breakpoint=c)},null,512),[[Je,t.profile.pid.throttle_dterm_attenuation.tda_breakpoint,void 0,{number:!0}]])])])])]),g("div",sle,[g("div",ile,[g("label",rle,[ye(" TDA Percent "),X(o,{entry:"pid.tda_percent"})])]),g("div",ole,[g("div",ale,[g("div",lle,[Ve(g("input",{class:"input",id:"throttle_dterm_attenuation-percent",type:"number",step:"0.05",min:"0","onUpdate:modelValue":e[5]||(e[5]=c=>t.profile.pid.throttle_dterm_attenuation.tda_percent=c)},null,512),[[Je,t.profile.pid.throttle_dterm_attenuation.tda_percent,void 0,{number:!0}]])])])])])]),g("div",cle,[g("div",ule,[g("div",dle,[g("label",fle,[ye(" Stick Boost Profile "),X(o,{entry:"pid.stick_profile"})])]),g("div",hle,[g("div",ple,[g("div",mle,[X(a,{id:"stick-profile",class:"is-fullwidth",modelValue:t.profile.pid.stick_profile,"onUpdate:modelValue":e[6]||(e[6]=c=>t.profile.pid.stick_profile=c),modelModifiers:{number:!0},options:t.stickProfiles},null,8,["modelValue","options"])])])])]),gle,(J(!0),se(tt,null,Vt(t.stick_rates,(c,u)=>(J(),se("div",{class:"field field-is-2 is-horizontal",key:u},[g("div",_le,[g("label",ble,Ue(u),1)]),g("div",yle,[g("div",vle,[g("p",wle,[Ve(g("input",{class:"input",id:`stick-${u}-roll`,type:"number",step:"0.01","onUpdate:modelValue":d=>t.stick_rates[u][0]=d},null,8,xle),[[Je,t.stick_rates[u][0],void 0,{number:!0}]])])]),g("div",Sle,[g("p",Ele,[Ve(g("input",{class:"input",id:`stick-${u}-pitch`,type:"number",step:"0.01","onUpdate:modelValue":d=>t.stick_rates[u][1]=d},null,8,Tle),[[Je,t.stick_rates[u][1],void 0,{number:!0}]])])]),g("div",Ale,[g("p",Mle,[Ve(g("input",{class:"input",id:`stick-${u}-yaw`,type:"number",step:"0.01","onUpdate:modelValue":d=>t.stick_rates[u][2]=d},null,8,kle),[[Je,t.stick_rates[u][2],void 0,{number:!0}]])])])])]))),128)),g("div",Rle,[g("div",Cle,[g("h6",Ole,[ye(" Angle Strength "),X(o,{entry:"pid.angle_strength"})])]),Ile,Lle]),(J(),se(tt,null,Vt(["kp","kd"],(c,u)=>g("div",{class:"field field-is-2 is-horizontal",key:u},[g("div",Ple,[g("label",Dle,Ue(c),1)]),g("div",Fle,[g("div",Nle,[g("p",$le,[Ve(g("input",{class:"input",id:`small-angle-${c}`,type:"number",step:"0.01","onUpdate:modelValue":d=>t.profile.pid.small_angle[c]=d},null,8,Ule),[[Je,t.profile.pid.small_angle[c],void 0,{number:!0}]])])]),g("div",Ble,[g("p",Gle,[Ve(g("input",{class:"input",id:`big-angle-${c}`,type:"number",step:"0.01","onUpdate:modelValue":d=>t.profile.pid.big_angle[c]=d},null,8,zle),[[Je,t.profile.pid.big_angle[c],void 0,{number:!0}]])])])])])),64))])])])])])}const Vle=ot(fae,[["render",Hle]]),Wle=nt({name:"FilterSettings",setup(){return{profile:Zt()}},data(){return{filterTypeOptions:[{value:0,text:"None"},{value:1,text:"PT1"},{value:2,text:"PT2"},{value:3,text:"PT3"}],toggleOptions:[{value:0,text:"Off"},{value:1,text:"On"}]}}}),jle={class:"card"},qle={class:"card-header"},Yle=g("p",{class:"card-header-title"},"Filter",-1),Kle={class:"card-content"},Xle={class:"content column-narrow field-is-5"},Zle={key:0,class:"columns"},Jle={key:0,class:"column is-6"},Qle={class:"field is-horizontal"},ece={class:"field-label"},tce={class:"label",for:"gyro-1-type"},nce={class:"field-body"},sce={class:"field"},ice={class:"control is-expanded"},rce={class:"field is-horizontal"},oce={class:"field-label"},ace={class:"label",for:"gyro-1-freq"},lce={class:"field-body"},cce={class:"field"},uce={class:"control is-expanded"},dce={class:"field is-horizontal mt-6"},fce={class:"field-label"},hce={class:"label",for:"gyro-2-type"},pce={class:"field-body"},mce={class:"field"},gce={class:"control is-expanded"},_ce={class:"field is-horizontal"},bce={class:"field-label"},yce={class:"label",for:"gyro-2-freq"},vce={class:"field-body"},wce={class:"field"},xce={class:"control is-expanded"},Sce={key:0,class:"field is-horizontal mt-6"},Ece={class:"field-label"},Tce={class:"label",for:"gyro-dynamic-enable"},Ace={class:"field-body"},Mce={class:"field"},kce={class:"control is-expanded"},Rce={key:1,class:"column is-6"},Cce={class:"field is-horizontal"},Oce={class:"field-label"},Ice={class:"label",for:"dterm-1-type"},Lce={class:"field-body"},Pce={class:"field"},Dce={class:"control is-expanded"},Fce={class:"field is-horizontal"},Nce={class:"field-label"},$ce={class:"label",for:"dterm-1-freq"},Uce={class:"field-body"},Bce={class:"field"},Gce={class:"control is-expanded"},zce={class:"field is-horizontal mt-6"},Hce={class:"field-label"},Vce={class:"label",for:"dterm-2-type"},Wce={class:"field-body"},jce={class:"field"},qce={class:"control is-expanded"},Yce={class:"field is-horizontal"},Kce={class:"field-label"},Xce={class:"label",for:"dterm-2-freq"},Zce={class:"field-body"},Jce={class:"field"},Qce={class:"control is-expanded"},eue={class:"field is-horizontal mt-6"},tue={class:"field-label"},nue={class:"label",for:"dterm-dynamic-enable"},sue={class:"field-body"},iue={class:"field"},rue={class:"control is-expanded"},oue={class:"field is-horizontal"},aue={class:"field-label"},lue={class:"label",for:"dterm-dynamic-min"},cue={class:"field-body"},uue={class:"field"},due={class:"control is-expanded"},fue={class:"field is-horizontal"},hue={class:"field-label"},pue={class:"label",for:"dterm-dynamic-max"},mue={class:"field-body"},gue={class:"field"},_ue={class:"control is-expanded"};function bue(t,e,n,s,i,r){const o=Re("tooltip"),a=Re("input-select");return J(),se("div",jle,[g("header",qle,[Yle,X(o,{class:"card-header-icon",entry:"filter.settings",size:"lg"})]),g("div",Kle,[g("div",Xle,[t.profile?(J(),se("div",Zle,[t.profile.filter.gyro?(J(),se("div",Jle,[g("div",Qle,[g("div",ece,[g("label",tce,[ye(" Gyro Pass 1 Type "),X(o,{entry:"filter.gyro_1_type"})])]),g("div",nce,[g("div",sce,[g("div",ice,[X(a,{class:"is-fullwidth",id:"gyro-1-type",modelValue:t.profile.filter.gyro[0].type,"onUpdate:modelValue":e[0]||(e[0]=l=>t.profile.filter.gyro[0].type=l),modelModifiers:{number:!0},options:t.filterTypeOptions},null,8,["modelValue","options"])])])])]),g("div",rce,[g("div",oce,[g("label",ace,[ye(" Gyro Pass 1 Freq "),X(o,{entry:"filter.gyro_1_freq"})])]),g("div",lce,[g("div",cce,[g("div",uce,[Ve(g("input",{class:"input",id:"gyro-1-freq",type:"number",step:"5",min:"0","onUpdate:modelValue":e[1]||(e[1]=l=>t.profile.filter.gyro[0].cutoff_freq=l)},null,512),[[Je,t.profile.filter.gyro[0].cutoff_freq,void 0,{number:!0}]])])])])]),g("div",dce,[g("div",fce,[g("label",hce,[ye(" Gyro Pass 2 Type "),X(o,{entry:"filter.gyro_2_type"})])]),g("div",pce,[g("div",mce,[g("div",gce,[X(a,{class:"is-fullwidth",id:"gyro-2-type",modelValue:t.profile.filter.gyro[1].type,"onUpdate:modelValue":e[2]||(e[2]=l=>t.profile.filter.gyro[1].type=l),modelModifiers:{number:!0},options:t.filterTypeOptions},null,8,["modelValue","options"])])])])]),g("div",_ce,[g("div",bce,[g("label",yce,[ye(" Gyro Pass 2 Freq "),X(o,{entry:"filter.gyro_2_freq"})])]),g("div",vce,[g("div",wce,[g("div",xce,[Ve(g("input",{class:"input",id:"gyro-2-freq",type:"number",step:"5",min:"0","onUpdate:modelValue":e[3]||(e[3]=l=>t.profile.filter.gyro[1].cutoff_freq=l)},null,512),[[Je,t.profile.filter.gyro[1].cutoff_freq,void 0,{number:!0}]])])])])]),t.profile.profileVersionGt("0.2.2")?(J(),se("div",Sce,[g("div",Ece,[g("label",Tce,[ye(" Gyro Dynamic Notch "),X(o,{entry:"filter.gyro_dynamic_notch_enable"})])]),g("div",Ace,[g("div",Mce,[g("div",kce,[X(a,{class:"is-fullwidth",id:"gyro-dynamic-enable",modelValue:t.profile.filter.gyro_dynamic_notch_enable,"onUpdate:modelValue":e[4]||(e[4]=l=>t.profile.filter.gyro_dynamic_notch_enable=l),modelModifiers:{number:!0},options:t.toggleOptions},null,8,["modelValue","options"])])])])])):qe("",!0)])):qe("",!0),t.profile.filter.dterm?(J(),se("div",Rce,[g("div",Cce,[g("div",Oce,[g("label",Ice,[ye(" DTerm Pass 1 Type "),X(o,{entry:"filter.dterm_1_type"})])]),g("div",Lce,[g("div",Pce,[g("div",Dce,[X(a,{class:"is-fullwidth",id:"dterm-1-type",modelValue:t.profile.filter.dterm[0].type,"onUpdate:modelValue":e[5]||(e[5]=l=>t.profile.filter.dterm[0].type=l),modelModifiers:{number:!0},options:t.filterTypeOptions},null,8,["modelValue","options"])])])])]),g("div",Fce,[g("div",Nce,[g("label",$ce,[ye(" DTerm Pass 1 Freq "),X(o,{entry:"filter.dterm_1_freq"})])]),g("div",Uce,[g("div",Bce,[g("div",Gce,[Ve(g("input",{class:"input",id:"dterm-1-freq",type:"number",step:"5",min:"0","onUpdate:modelValue":e[6]||(e[6]=l=>t.profile.filter.dterm[0].cutoff_freq=l)},null,512),[[Je,t.profile.filter.dterm[0].cutoff_freq,void 0,{number:!0}]])])])])]),g("div",zce,[g("div",Hce,[g("label",Vce,[ye(" DTerm Pass 2 Type "),X(o,{entry:"filter.dterm_2_type"})])]),g("div",Wce,[g("div",jce,[g("div",qce,[X(a,{class:"is-fullwidth",id:"dterm-2-type",modelValue:t.profile.filter.dterm[1].type,"onUpdate:modelValue":e[7]||(e[7]=l=>t.profile.filter.dterm[1].type=l),modelModifiers:{number:!0},options:t.filterTypeOptions},null,8,["modelValue","options"])])])])]),g("div",Yce,[g("div",Kce,[g("label",Xce,[ye(" DTerm Pass 2 Freq "),X(o,{entry:"filter.dterm_2_freq"})])]),g("div",Zce,[g("div",Jce,[g("div",Qce,[Ve(g("input",{class:"input",id:"dterm-2-freq",type:"number",step:"5",min:"0","onUpdate:modelValue":e[8]||(e[8]=l=>t.profile.filter.dterm[1].cutoff_freq=l)},null,512),[[Je,t.profile.filter.dterm[1].cutoff_freq,void 0,{number:!0}]])])])])]),g("div",eue,[g("div",tue,[g("label",nue,[ye(" DTerm Dynamic "),X(o,{entry:"filter.dterm_dynamic_enable"})])]),g("div",sue,[g("div",iue,[g("div",rue,[X(a,{class:"is-fullwidth",id:"dterm-dynamic-enable",modelValue:t.profile.filter.dterm_dynamic_enable,"onUpdate:modelValue":e[9]||(e[9]=l=>t.profile.filter.dterm_dynamic_enable=l),modelModifiers:{number:!0},options:t.toggleOptions},null,8,["modelValue","options"])])])])]),g("div",oue,[g("div",aue,[g("label",lue,[ye(" DTerm Dynamic Min "),X(o,{entry:"filter.dterm_dynamic_min"})])]),g("div",cue,[g("div",uue,[g("div",due,[Ve(g("input",{class:"input",id:"dterm-dynamic-min",type:"number",step:"5",min:"0","onUpdate:modelValue":e[10]||(e[10]=l=>t.profile.filter.dterm_dynamic_min=l)},null,512),[[Je,t.profile.filter.dterm_dynamic_min,void 0,{number:!0}]])])])])]),g("div",fue,[g("div",hue,[g("label",pue,[ye(" DTerm Dynamic Max "),X(o,{entry:"filter.dterm_dynamic_max"})])]),g("div",mue,[g("div",gue,[g("div",_ue,[Ve(g("input",{class:"input",id:"dterm-dynamic-max",type:"number",step:"5",min:"0","onUpdate:modelValue":e[11]||(e[11]=l=>t.profile.filter.dterm_dynamic_max=l)},null,512),[[Je,t.profile.filter.dterm_dynamic_max,void 0,{number:!0}]])])])])])])):qe("",!0)])):qe("",!0)])])])}const yue=ot(Wle,[["render",bue]]),vue=nt({name:"ThrottleSettings",components:{LineChart:gx},setup(){return{profile:Zt()}},data(){return{plot:{labels:["Throttle"],axis:[{label:"Throttle",data:[]}]}}},watch:{"profile.rate.throttle_expo"(){this.update()},"profile.rate.throttle_mid"(){this.update()}},methods:{constrainf(t,e,n){return t>n?n:tt.profile.rate.throttle_mid=l)},null,512),[[Je,t.profile.rate.throttle_mid,void 0,{number:!0}]])])])])]),g("div",Lue,[g("div",Pue,[g("label",Due,[ye(" Throttle Expo "),X(o,{entry:"rate.throttle_expo"})])]),g("div",Fue,[g("div",Nue,[g("div",$ue,[Ve(g("input",{class:"input",step:"0.01",id:"throttle_expo",type:"number",min:"0",max:"1","onUpdate:modelValue":e[1]||(e[1]=l=>t.profile.rate.throttle_expo=l)},null,512),[[Je,t.profile.rate.throttle_expo,void 0,{number:!0}]])])])])])]),g("div",Uue,[X(a,{title:"Throttle",labels:t.plot.labels,axis:t.plot.axis},null,8,["labels","axis"])])])])])])}const Gue=ot(vue,[["render",Bue]]),zue=nt({name:"Rate",components:{StickRates:foe,PIDRates:Vle,FilterSettings:yue,StickRatesLegacy:dae,ThrottleSettings:Gue},setup(){return{profile:Zt(),default_profile:Ih()}}}),Hue={class:"columns is-multiline"},Vue={class:"column is-12"},Wue={key:0,class:"column is-12"},jue={class:"column is-12"},que={class:"column is-12"};function Yue(t,e,n,s,i,r){const o=Re("StickRatesLegacy"),a=Re("StickRates"),l=Re("ThrottleSettings"),c=Re("PIDRates"),u=Re("FilterSettings");return J(),se("div",Hue,[g("div",Vue,[t.default_profile.has_legacy_stickrates?(J(),fn(o,{key:0})):(J(),fn(a,{key:1}))]),t.profile.profileVersionGt("0.2.0")?(J(),se("div",Wue,[X(l)])):qe("",!0),g("div",jue,[X(c)]),g("div",que,[X(u)])])}const Kue=ot(zue,[["render",Yue]]);var _6={exports:{}},b6={exports:{}};(function(){var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",e={rotl:function(n,s){return n<>>32-s},rotr:function(n,s){return n<<32-s|n>>>s},endian:function(n){if(n.constructor==Number)return e.rotl(n,8)&16711935|e.rotl(n,24)&4278255360;for(var s=0;s0;n--)s.push(Math.floor(Math.random()*256));return s},bytesToWords:function(n){for(var s=[],i=0,r=0;i>>5]|=n[i]<<24-r%32;return s},wordsToBytes:function(n){for(var s=[],i=0;i>>5]>>>24-i%32&255);return s},bytesToHex:function(n){for(var s=[],i=0;i>>4).toString(16)),s.push((n[i]&15).toString(16));return s.join("")},hexToBytes:function(n){for(var s=[],i=0;i>>6*(3-o)&63)):s.push("=");return s.join("")},base64ToBytes:function(n){n=n.replace(/[^A-Z0-9+\/]/ig,"");for(var s=[],i=0,r=0;i>>6-r*2);return s}};b6.exports=e})();var Xue=b6.exports,Ey={utf8:{stringToBytes:function(t){return Ey.bin.stringToBytes(unescape(encodeURIComponent(t)))},bytesToString:function(t){return decodeURIComponent(escape(Ey.bin.bytesToString(t)))}},bin:{stringToBytes:function(t){for(var e=[],n=0;n + * @license MIT + */var Zue=function(t){return t!=null&&(y6(t)||Jue(t)||!!t._isBuffer)};function y6(t){return!!t.constructor&&typeof t.constructor.isBuffer=="function"&&t.constructor.isBuffer(t)}function Jue(t){return typeof t.readFloatLE=="function"&&typeof t.slice=="function"&&y6(t.slice(0,0))}(function(){var t=Xue,e=GT.utf8,n=Zue,s=GT.bin,i=function(r,o){r.constructor==String?o&&o.encoding==="binary"?r=s.stringToBytes(r):r=e.stringToBytes(r):n(r)?r=Array.prototype.slice.call(r,0):!Array.isArray(r)&&r.constructor!==Uint8Array&&(r=r.toString());for(var a=t.bytesToWords(r),l=r.length*8,c=1732584193,u=-271733879,d=-1732584194,f=271733878,h=0;h>>24)&16711935|(a[h]<<24|a[h]>>>8)&4278255360;a[l>>>5]|=128<>>9<<4)+14]=l;for(var _=i._ff,p=i._gg,m=i._hh,b=i._ii,h=0;h>>0,u=u+v>>>0,d=d+x>>>0,f=f+S>>>0}return t.endian([c,u,d,f])};i._ff=function(r,o,a,l,c,u,d){var f=r+(o&a|~o&l)+(c>>>0)+d;return(f<>>32-u)+o},i._gg=function(r,o,a,l,c,u,d){var f=r+(o&l|a&~l)+(c>>>0)+d;return(f<>>32-u)+o},i._hh=function(r,o,a,l,c,u,d){var f=r+(o^a^l)+(c>>>0)+d;return(f<>>32-u)+o},i._ii=function(r,o,a,l,c,u,d){var f=r+(a^(o|~l))+(c>>>0)+d;return(f<>>32-u)+o},i._blocksize=16,i._digestsize=16,_6.exports=function(r,o){if(r==null)throw new Error("Illegal argument "+r);var a=t.wordsToBytes(i(r,o));return o&&o.asBytes?a:o&&o.asString?s.bytesToString(a):t.bytesToHex(a)}})();var Que=_6.exports;const ede=Jl(Que),tde=nt({name:"ReceiverSettings",data(){return{lqiSourceNames:[{value:0,text:"PACKET_RATE"},{value:1,text:"CHANNEL"},{value:2,text:"DIRECT"}],elrsBindPhraseInput:""}},setup(){return{profile:Zt(),info:Tn(),bind:D8(),state:Js(),root:wn()}},computed:{...gk(ec,{serialProtoNames:t=>Xs(t.RXSerialProtocol).getKeys(),RXProtocol:t=>t.RXProtocol}),date(){return new Date(this.profile.meta.datetime*1e3)},protoNames(){return Xs(this.RXProtocol).getKeys()},rx_protocol(){return this.profile.receiver.protocol||this.info.rx_protocol},protocolOptions(){return(this.info.rx_protocols||[]).filter(t=>t>0).map(t=>({value:t,text:this.protoNames[t]}))},serialProto(){return this.serialProtoNames.reduce((t,e,n)=>(t[e]=n,t),{})},isSpiProtocol(){return[this.RXProtocol.FRSKY_D8,this.RXProtocol.FRSKY_D16||this.RXProtocol.FRSKY_D16_FCC,this.RXProtocol.FRSKY_D16||this.RXProtocol.FRSKY_D16_LBT,this.RXProtocol.REDPINE,this.RXProtocol.FLYSKY_AFHDS,this.RXProtocol.FLYSKY_AFHDS2A].includes(this.rx_protocol)},protoStatus(){if([this.RXProtocol.FRSKY_D8,this.RXProtocol.FRSKY_D16||this.RXProtocol.FRSKY_D16_FCC,this.RXProtocol.FRSKY_D16||this.RXProtocol.FRSKY_D16_LBT,this.RXProtocol.REDPINE,this.RXProtocol.EXPRESS_LRS,this.RXProtocol.FLYSKY_AFHDS,this.RXProtocol.FLYSKY_AFHDS2A].includes(this.rx_protocol))return["RX_STATUS_NONE","RX_STATUS_BINDING","RX_STATUS_BOUND"][this.state.rx_status];if(this.rx_protocol==this.RXProtocol.UNIFIED_SERIAL){if(this.state.rx_status<100)return"RX_STATUS_NONE";if(this.state.rx_status>=100&&this.state.rx_status<200)return"RX_STATUS_DETECTING";if(this.state.rx_status>=200&&this.state.rx_status<300)return"RX_STATUS_DETECTED"}return""},serialProtoStatus(){let t=0;return this.state.rx_status>=100&&this.state.rx_status<200?t=this.state.rx_status-100:this.state.rx_status>=200&&this.state.rx_status<300&&(t=this.state.rx_status-200),this.serialProtoNames[t]},elrsBindPhrase(){var t,e,n;return(n=(e=(t=this.bind)==null?void 0:t.info)==null?void 0:e.raw)==null?void 0:n.slice(1,7).join(", ")},elrsSwitchMode(){var t,e;return(e=(t=this.bind)==null?void 0:t.info)!=null&&e.raw[8]?"Hybrid Switches":"Wide Switches"},downloadAnchor(){return this.$refs.downloadAnchor},fileRef(){return this.$refs.file}},watch:{"profile.receiver.protocol"(){this.reset()}},methods:{async applyBindInfo(t){await this.profile.apply_profile(this.profile.$state),await this.bind.apply_bind_info(t)},parseHexString(t){const e=[];for(;t.length>=2;)e.push(parseInt(t.substring(0,2),16)),t=t.substring(2,t.length);return e},apply_elrs_bind_phrase(t){var i;const e=ede(`-DMY_BINDING_PHRASE="${t}"`),n=this.parseHexString(e).slice(0,6),s={...(i=this.bind)==null?void 0:i.info};s.bind_saved=1,s.raw[0]=1;for(let r=0;r<6;r++)s.raw[r+1]=n[r];return s.raw[7]=55,this.applyBindInfo(s)},downloadBindData(){const t=window.btoa(String.fromCharCode(...new Uint8Array(this.bind.info.raw))),n="data:application/octet-stream;charset=utf-8,"+encodeURIComponent(t),s=this.date.toISOString().substring(0,10),r=`BindData_${this.profile.meta.name.replace(/\0/g,"")}_${s}.base64`;this.downloadAnchor.setAttribute("href",n),this.downloadAnchor.setAttribute("download",r),this.downloadAnchor.click()},uploadBindData(){const t=new FileReader;t.addEventListener("load",e=>{var s,i;const n={...(s=this.bind)==null?void 0:s.info};n.bind_saved=1,n.raw=Uint8Array.from(window.atob((i=e==null?void 0:e.target)==null?void 0:i.result),r=>r.charCodeAt(0)),this.applyBindInfo(n)}),this.fileRef.oninput=()=>{var e,n;(n=(e=this.fileRef)==null?void 0:e.files)!=null&&n.length&&t.readAsText(this.fileRef.files[0])},this.fileRef.click()},reset(){var e;const t={...(e=this.bind)==null?void 0:e.info};t.bind_saved=0;for(let n=0;n[ye("Reset")]),_:1},8,["onClick"])]),g("div",rde,[g("div",ode,[t.info.rx_protocol&&!t.profile.receiver.protocol?(J(),se("div",ade,[g("div",lde,[g("label",cde,[ye(" Protocol "),X(a,{entry:"receiver.protocol"})])]),g("div",ude,[g("div",dde,[g("div",fde,Ue(t.protoNames[t.info.rx_protocol]),1)])])])):qe("",!0),t.profile.receiver.protocol?(J(),se("div",hde,[g("div",pde,[g("label",mde,[ye(" Protocol "),X(a,{entry:"receiver.protocol"})])]),g("div",gde,[g("div",_de,[g("div",bde,[X(l,{class:"is-fullwidth",modelValue:t.profile.receiver.protocol,"onUpdate:modelValue":e[0]||(e[0]=c=>t.profile.receiver.protocol=c),modelModifiers:{number:!0},options:t.protocolOptions},null,8,["modelValue","options"])])])])])):qe("",!0),t.info.quic_protocol_version>3?(J(),se("div",yde,[g("div",vde,[g("label",wde,[ye(" LQI Source "),X(a,{entry:"receiver.lqi_source"})])]),g("div",xde,[g("div",Sde,[g("div",Ede,[X(l,{class:"is-fullwidth",modelValue:t.profile.receiver.lqi_source,"onUpdate:modelValue":e[1]||(e[1]=c=>t.profile.receiver.lqi_source=c),modelModifiers:{number:!0},options:t.lqiSourceNames},null,8,["modelValue","options"])])])])])):qe("",!0),t.info.quic_protocol_version>2?(J(),se("div",Tde,[g("div",Ade,[g("label",Mde,[ye(" Bind Saved "),X(a,{entry:"receiver.bind_saved"})])]),g("div",kde,[g("div",Rde,[g("div",Cde,Ue(t.bind.info.bind_saved?"yes":"no"),1)])])])):qe("",!0),t.info.quic_protocol_version>2?(J(),se("div",Ode,[Ide,g("div",Lde,[g("div",Pde,[g("div",Dde,Ue(t.state.rx_rssi),1)])])])):qe("",!0),t.info.quic_protocol_version>2?(J(),se("div",Fde,[Nde,g("div",$de,[g("div",Ude,[g("div",Bde,Ue(t.protoStatus),1)])])])):qe("",!0),t.info.quic_protocol_version>2&&t.rx_protocol==t.RXProtocol.UNIFIED_SERIAL?(J(),se("div",Gde,[zde,g("div",Hde,[g("div",Vde,[g("div",Wde,Ue(t.serialProtoStatus),1)])])])):qe("",!0),t.bind.info.raw&&t.rx_protocol==t.RXProtocol.EXPRESS_LRS?(J(),se("div",jde,[qde,g("div",Yde,[g("div",Kde,[g("div",Xde,[Zde,g("div",Jde,[g("div",Qde,[g("div",efe,Ue(t.elrsSwitchMode),1)])])]),g("div",tfe,[nfe,g("div",sfe,[g("div",ife,[g("div",rfe,Ue(t.elrsBindPhrase),1)])])]),g("div",ofe,[afe,g("div",lfe,[g("div",cfe,[g("div",ufe,[Ve(g("input",{class:"input",id:"name",type:"text","onUpdate:modelValue":e[2]||(e[2]=c=>t.elrsBindPhraseInput=c)},null,512),[[Je,t.elrsBindPhraseInput]])])])])])])]),g("footer",dfe,[ffe,X(o,{class:"card-footer-item",onClick:e[3]||(e[3]=c=>t.apply_elrs_bind_phrase(t.elrsBindPhraseInput)),disabled:t.elrsBindPhraseInput.length<4},{default:et(()=>[ye(" Apply ")]),_:1},8,["disabled"])])])):qe("",!0),t.bind.info.raw&&t.isSpiProtocol?(J(),se("div",hfe,[pfe,mfe,g("footer",gfe,[X(o,{class:"card-footer-item",onClick:t.downloadBindData},{default:et(()=>[ye(" Save Bind Data ")]),_:1},8,["onClick"]),X(o,{class:"card-footer-item",onClick:t.uploadBindData},{default:et(()=>[ye(" Load Bind Data ")]),_:1},8,["onClick"])]),g("input",_fe,null,512),g("a",bfe,null,512)])):qe("",!0),yfe])])])}const wfe=ot(tde,[["render",vfe]]),xfe=nt({name:"RCChannels",data(){return{timerCount:0,timerTimeout:0,receiverChannelMappingOptions:[{value:0,text:"AETR"},{value:1,text:"TAER"}],channelNames:["Roll","Pitch","Yaw","Throttle"],wizardStates:["","Succeeded","Failed","","Recording, move sticks to extents","Testing calibration, move sticks again to extents","",""]}},setup(){return{root:wn(),state:Js(),profile:Zt()}},computed:{channelStyle(){return this.state.rx_filtered.map((t,e)=>{if(e==3)return{"margin-left":"0%",width:2+Math.abs(t)*98+"%"};const n=2+Math.abs(t)*49;return{"margin-left":t<0?51-n+"%":"49%",width:n+"%"}})}},watch:{timerCount:{handler(t){clearTimeout(this.timerTimeout),t>0&&(this.timerTimeout=window.setTimeout(()=>{this.timerCount--},1e3))},immediate:!0},"state.stick_calibration_wizard":{handler(t){switch(t){case zc.STICK_WIZARD_SUCCESS:case zc.STICK_WIZARD_FAILED:this.timerCount=0,setTimeout(()=>this.profile.fetch_profile(),500);break;case zc.STICK_WIZARD_CAPTURE_STICKS:case zc.STICK_WIZARD_WAIT_FOR_CONFIRM:this.timerCount=19;break}},immediate:!0}}});const Wh=t=>(Xu("data-v-331910cd"),t=t(),Zu(),t),Sfe={class:"card"},Efe=Wh(()=>g("header",{class:"card-header"},[g("p",{class:"card-header-title"},"RC Channels")],-1)),Tfe={class:"card-content"},Afe={class:"content"},Mfe={class:"field field-is-2 is-horizontal mb-6"},kfe={class:"field-label"},Rfe={class:"label"},Cfe={class:"field-body"},Ofe={class:"field"},Ife={class:"control is-expanded"},Lfe={class:"field-label",style:{"align-self":"unset"}},Pfe={class:"label"},Dfe={class:"field-body"},Ffe={class:"field has-addons"},Nfe={class:"control my-0"},$fe=["id","onUpdate:modelValue"],Ufe=Wh(()=>g("p",{class:"control"},[g("a",{class:"button is-small is-static"}," min ")],-1)),Bfe={class:"field has-addons"},Gfe={class:"control my-0"},zfe=["id","onUpdate:modelValue"],Hfe=Wh(()=>g("p",{class:"control"},[g("a",{class:"button is-small is-static"}," max ")],-1)),Vfe={class:"column is-6 py-0"},Wfe={class:"channel-container"},jfe={class:"columns mt-5"},qfe={class:"column is-8 wizard"},Yfe=Wh(()=>g("br",null,null,-1)),Kfe=Wh(()=>g("br",null,null,-1)),Xfe={key:0},Zfe={class:"column is-4"};function Jfe(t,e,n,s,i,r){const o=Re("tooltip"),a=Re("input-select"),l=Re("spinner-btn");return J(),se("div",Sfe,[Efe,g("div",Tfe,[g("div",Afe,[g("div",Mfe,[g("div",kfe,[g("label",Rfe,[ye(" Channel Mapping "),X(o,{entry:"receiver.channel_mapping"})])]),g("div",Cfe,[g("div",Ofe,[g("div",Ife,[X(a,{class:"is-fullwidth",modelValue:t.profile.receiver.channel_mapping,"onUpdate:modelValue":e[0]||(e[0]=c=>t.profile.receiver.channel_mapping=c),modelModifiers:{number:!0},options:t.receiverChannelMappingOptions},null,8,["modelValue","options"])])])])]),(J(!0),se(tt,null,Vt(t.channelStyle,(c,u)=>(J(),se("div",{class:"field is-horizontal",key:"channel-"+u},[g("div",Lfe,[g("label",Pfe,Ue(t.channelNames[u]),1)]),g("div",Dfe,[g("div",Ffe,[g("p",Nfe,[Ve(g("input",{class:"input is-small",id:`limit-${t.channelNames[u]}-min`,type:"number",step:"0.1","onUpdate:modelValue":d=>t.profile.receiver.stick_calibration_limits[u].min=d},null,8,$fe),[[Je,t.profile.receiver.stick_calibration_limits[u].min,void 0,{number:!0}]])]),Ufe]),g("div",Bfe,[g("p",Gfe,[Ve(g("input",{class:"input is-small",id:`limit-${t.channelNames[u]}-max`,type:"number",step:"0.1","onUpdate:modelValue":d=>t.profile.receiver.stick_calibration_limits[u].max=d},null,8,zfe),[[Je,t.profile.receiver.stick_calibration_limits[u].max,void 0,{number:!0}]])]),Hfe])]),g("div",Vfe,[g("div",Wfe,[g("div",{class:"channel-bar",style:Wg(c)},Ue(Math.floor(t.state.rx_filtered[u]*(u!=3?50:100))),5)])])]))),128)),g("div",jfe,[g("div",qfe,[ye(" Stick Calibration Wizard "),Yfe,ye(" "+Ue(t.wizardStates[t.state.stick_calibration_wizard])+" ",1),Kfe,t.timerCount?(J(),se("span",Xfe,"Continuing in "+Ue(t.timerCount)+"s..",1)):qe("",!0)]),g("div",Zfe,[X(l,{class:"is-pulled-right is-primary",onClick:e[1]||(e[1]=c=>t.root.cal_sticks())},{default:et(()=>[ye(" Calibrate ")]),_:1})])])])])])}const Qfe=ot(xfe,[["render",Jfe],["__scopeId","data-v-331910cd"]]),ehe=nt({name:"AuxChannels",setup(){return{state:Js(),profile:Zt()}},computed:{...gk(ec,{auxChannels:t=>Xs(t.AuxChannels).map((e,n)=>({text:n,value:e})),auxFunctions:t=>Xs(t.AuxFunctions).getKeys().map((e,n)=>({index:n,key:e})).filter(e=>!e.key.startsWith("_"))})},methods:{valueForIndex(t){return this.state.aux[t]},classForIndex(t){return this.profile.receiver.aux?this.profile.receiver.aux[t]==12?"text-danger":this.profile.receiver.aux[t]==13||this.valueForIndex(this.profile.receiver.aux[t])?"text-success":"":""}}}),the={class:"card"},nhe=g("header",{class:"card-header"},[g("p",{class:"card-header-title"},"Aux Channels")],-1),she={class:"card-content"},ihe={class:"content"},rhe={class:"columns"},ohe={class:"column is-8"},ahe={class:"field-label"},lhe=["for"],che={class:"field-body"},uhe={class:"field"},dhe={class:"control is-expanded"},fhe={class:"column is-4"},hhe={class:"card"},phe=g("header",{class:"card-header"},[g("p",{class:"card-header-title"},"Current AUX State")],-1),mhe={class:"card-content"},ghe={class:"content"},_he={class:"column is-6 py-1"};function bhe(t,e,n,s,i,r){const o=Re("tooltip"),a=Re("input-select");return J(),se("div",the,[nhe,g("div",she,[g("div",ihe,[g("div",rhe,[g("div",ohe,[(J(!0),se(tt,null,Vt(t.auxFunctions,l=>(J(),se("div",{class:"field field-is-3 is-horizontal mr-4",key:l.key},[g("div",ahe,[g("label",{class:os(["label",t.classForIndex(l.index)]),for:l.key},[ye(Ue(l.key)+" ",1),X(o,{entry:"channel."+l.key.toLowerCase()},null,8,["entry"])],10,lhe)]),g("div",che,[g("div",uhe,[g("div",dhe,[X(a,{id:l.key,class:"is-fullwidth",modelValue:t.profile.receiver.aux[l.index],"onUpdate:modelValue":c=>t.profile.receiver.aux[l.index]=c,modelModifiers:{number:!0},options:t.auxChannels},null,8,["id","modelValue","onUpdate:modelValue","options"])])])])]))),128))]),g("div",fhe,[g("div",hhe,[phe,g("div",mhe,[g("div",ghe,[(J(!0),se(tt,null,Vt(t.auxChannels,(l,c)=>(J(),se("div",{class:"columns",key:l.text},[g("div",_he,Ue(l.text),1),g("div",{class:os(["column is-6 py-1",t.valueForIndex(c)?"text-success":"text-danger"])},Ue(t.valueForIndex(c)?"ON":"OFF"),3)]))),128))])])])])])])])])}const yhe=ot(ehe,[["render",bhe]]),vhe=nt({name:"Receiver",components:{ReceiverSettings:wfe,RCChannels:Qfe,AuxChannels:yhe},setup(){return{info:Tn()}}}),whe={class:"columns is-multiline"},xhe={class:"column is-12"},She={key:0,class:"column is-12"},Ehe={class:"column is-12"};function The(t,e,n,s,i,r){const o=Re("ReceiverSettings"),a=Re("RCChannels"),l=Re("AuxChannels");return J(),se("div",whe,[g("div",xhe,[X(o)]),t.info.quicVersionGt("0.1.0")?(J(),se("div",She,[X(a)])):qe("",!0),g("div",Ehe,[X(l)])])}const Ahe=ot(vhe,[["render",The]]);var Oe;let Ot=(Oe=class{static pixelsWidth(e,n=Oe.BORDER,s=!1){return s&&(n=0),e*(Oe.CHAR_WIDTH*(s?2:1)+n)+n}static pixelsHeight(e,n=Oe.BORDER,s=!1){return s&&(n=0),e*(Oe.CHAR_HEIGHT*(s?2:1)+n)+n}static elementDecode(e,n){switch(n){case"active":return e&1;case"invert":return e>>1&1;case"pos_x":return e>>2&255;case"pos_y":return e>>10&255;default:return 0}}static elementEncode(e,n,s){switch(n){case"active":return s?e|1:e&-2;case"invert":return s?e|2:e&-3;case"pos_x":return e&-1021|(s&255)<<2;case"pos_y":return e&-261121|(s&255)<<10;default:return e}}static unpackFont(e,n){return Oe.unpackFontCanvas(e,n),e.toDataURL()}static unpackFontBitmap(e,n=!1){const s=new global.OffscreenCanvas(209,305);return Oe.unpackFontCanvas(s,e,n),s.transferToImageBitmap()}static unpackFontCanvas(e,n,s=!1){const i=e.getContext("2d");i.clearRect(0,0,e.width,e.height),i.fillStyle="red",i.fillRect(0,0,Oe.FULL_WIDTH,Oe.FULL_HEIGHT);const r=new Uint8ClampedArray(Oe.CHAR_WIDTH*Oe.CHAR_HEIGHT*4);for(let o=0;o>6&3,s),Oe.setPixel(r,c+1,u,f>>4&3,s),Oe.setPixel(r,c+2,u,f>>2&3,s),Oe.setPixel(r,c+3,u,f>>0&3,s),c+=4,c==Oe.CHAR_WIDTH&&(c=0,u++);const d=new ImageData(r,Oe.CHAR_WIDTH,Oe.CHAR_HEIGHT);i.putImageData(d,Oe.pixelsWidth(a),Oe.pixelsHeight(o))}}static packCanvas(e){const n=e.getImageData(0,0,Oe.FULL_WIDTH,Oe.FULL_HEIGHT),s=[];for(let i=0;i0&&(i|=2),e[(s*Oe.FULL_WIDTH+n)*4+3]<255&&(i|=1),i}},$e(Oe,"CHAR_WIDTH",12),$e(Oe,"CHAR_HEIGHT",18),$e(Oe,"BORDER",1),$e(Oe,"FONT_WIDTH",16),$e(Oe,"FONT_HEIGHT",16),$e(Oe,"FULL_WIDTH",Oe.pixelsWidth(Oe.FONT_WIDTH)),$e(Oe,"FULL_HEIGHT",Oe.pixelsHeight(Oe.FONT_HEIGHT)),$e(Oe,"LOGO_HEIGHT",4),$e(Oe,"LOGO_WIDTH",24),$e(Oe,"LOGO_FULL_WIDTH",Oe.pixelsWidth(Oe.LOGO_WIDTH,0)),$e(Oe,"LOGO_FULL_HEIGHT",Oe.pixelsHeight(Oe.LOGO_HEIGHT,0)),Oe);const v6=ds("osd",{state:()=>({font_raw:void 0,font_bitmap:void 0,font_bitmap_inverted:void 0}),actions:{async fetch_sd_osd_font(){if(!Tn().quicVersionGte("0.2.0"))return wt.get(vn.OSDFont).then(n=>{this.font_raw=n,this.font_bitmap=Ot.unpackFontBitmap(n),this.font_bitmap_inverted=Ot.unpackFontBitmap(n,!0)});const e=[];for(let n=0;n<256;n++){const s=await wt.command(qn.OSD,Hb.ReadChar,n);e[n]=s.payload[0]}this.font_raw=e,this.font_bitmap=Ot.unpackFontBitmap(e),this.font_bitmap_inverted=Ot.unpackFontBitmap(e,!0)},async apply_font(t){if(!Tn().quicVersionGte("0.2.0"))return wt.set(vn.OSDFont,...t);for(let n=0;n<256;n++)await wt.command(qn.OSD,Hb.WriteChar,n,t[n])},fetch_hd_osd_font(){return new Promise((t,e)=>{const n=new Image;n.onload=()=>{t(n)},n.src="osd/hdzero_quic.png"}).then(t=>createImageBitmap(t)).then(t=>{this.font_raw=void 0,this.font_bitmap=t,this.font_bitmap_inverted=void 0})}}});function Mhe(t,e,n,s,i,r){return s<2*r&&(r=s/2),i<2*r&&(r=i/2),t.beginPath(),t.moveTo(e+r,n),t.arcTo(e+s,n,e+s,n+i,r),t.arcTo(e+s,n+i,e,n+i,r),t.arcTo(e,n+i,e,n,r),t.arcTo(e,n,e+s,n,r),t.closePath(),t}const khe=nt({name:"OSDElements",setup(){return{profile:Zt(),osd:v6()}},data(){return{preview:"NTSC",drag:{element:-1,colOffset:0,coord:{x:0,y:0}}}},computed:{is_hd(){return this.profile.serial.hdzero>0},currentElements(){return this.is_hd?this.profile.osd.elements_hd:this.profile.osd.elements},limits(){return{width:this.is_hd?50:30,height:this.is_hd?18:15}},screen(){const t={...this.limits};return!this.is_hd&&this.preview=="NTSC"&&(t.height-=2),t},canvas(){return this.$refs.canvas},canvasWidth(){return this.screen.width*Ot.CHAR_WIDTH},canvasHeight(){return this.screen.height*Ot.CHAR_HEIGHT},elementOptions(){return[{name:"CALLSIGN",enabled:!0,text:this.profile.osd.callsign},{name:"CELL COUNT",enabled:!0,text:"1S"},{name:"FUELGAUGE VOLTS",enabled:!0,text:" 4.3V"},{name:"FILTERED VOLTS",enabled:!0,text:" 4.3V"},{name:"GYRO TEMP",enabled:!0,text:" 40"},{name:"FLIGHT MODE",enabled:!0,text:" ACRO "},{name:"RSSI",enabled:!0,text:" 90"},{name:"STOPWATCH",enabled:!0,text:"01:20"},{name:"SYSTEM STATUS",enabled:!0,text:" **FAILSAFE** "},{name:"THROTTLE",enabled:!0,text:" 50"},{name:"VTX CHANNEL",enabled:!0,text:"R:7:1"},{name:"CURRENT",enabled:!0,text:"0.00š"}]},elements(){return this.currentElements.filter((t,e)=>this.elementOptions[e]).map((t,e)=>({index:e,...this.elementOptions[e],active:Ot.elementDecode(t,"active"),invert:Ot.elementDecode(t,"invert"),pos:{x:Ot.elementDecode(t,"pos_x"),y:Ot.elementDecode(t,"pos_y")},value:t}))},callsign:{set(t){let e=t.toUpperCase();for(let n=t.length;n<36;n++)e+="\0";this.profile.osd.callsign=e},get(){return this.profile.osd.callsign.replace(/\0/g,"")}}},watch:{elements(){this.draw_canvas()},drag(){this.draw_canvas()},canvasWidth(){this.$nextTick(()=>{this.draw_canvas()})},canvasHeight(){this.$nextTick(()=>{this.draw_canvas()})},"osd.font_bitmap"(){this.$nextTick(()=>{this.draw_canvas()})}},methods:{translateMouse(t){return{x:t.offsetX*(this.canvasWidth/this.canvas.clientWidth),y:t.offsetY*(this.canvasHeight/this.canvas.clientHeight)}},translateElemement(t){return!this.is_hd&&this.preview=="NTSC"&&t.y>12&&(t.y-=2),{x:t.x*Ot.CHAR_WIDTH,y:Ot.CHAR_HEIGHT-2+(t.y-1)*Ot.CHAR_HEIGHT}},normalizeCoords(t,e=0){return{x:Math.min(Math.max(Math.floor((t.x-e)/Ot.CHAR_WIDTH),0),this.limits.width-1),y:Math.min(Math.max(Math.floor(t.y/Ot.CHAR_HEIGHT),0),this.limits.height-1)}},drag_start(t){t.preventDefault(),t.stopPropagation();const e=this.translateMouse(t),n=this.findElement(e);if(n!=null){const s=this.translateElemement(n.pos),i=e.x-s.x;this.drag={element:n.index,colOffset:i,coord:this.normalizeCoords(e,i)},this.canvas.style.cursor="grab"}},drag_move(t){t.preventDefault(),t.stopPropagation();const e=this.translateMouse(t);if(this.drag.element==-1){const n=this.findElement(e);this.canvas.style.cursor=n!=null?"pointer":"initial";return}this.drag={...this.drag,coord:this.normalizeCoords(e,this.drag.colOffset)}},drag_drop(t){t.preventDefault(),t.stopPropagation();const e=this.translateMouse(t);if(this.drag.element==-1)return;const n=this.normalizeCoords(e,this.drag.colOffset);this.osd_set(this.drag.element,"pos_x",n.x),this.osd_set(this.drag.element,"pos_y",n.y),this.canvas.style.cursor="initial",this.drag={element:-1,colOffset:0,coord:{x:0,y:0}}},osd_set(t,e,n){const s=this.is_hd?this.profile.osd.elements_hd:this.profile.osd.elements,i=[...s];i[t]=Ot.elementEncode(s[t],e,n),this.is_hd?this.profile.set_osd_elements_hd(i):this.profile.set_osd_elements(i)},draw_canvas_text(t,e,n,s){let i=0;for(let r=0;rn.y+Ot.CHAR_HEIGHT)continue;let s=e.text.indexOf("\0");if(s==-1&&(s=e.text.length),!(t.xn.x+s*Ot.CHAR_WIDTH))return e}return null}},mounted(){Promise.resolve().then(()=>{if(this.is_hd)return this.osd.fetch_hd_osd_font()}).then(t=>this.draw_canvas())}});const J_=t=>(Xu("data-v-d4ff4095"),t=t(),Zu(),t),Rhe={class:"card"},Che={class:"card-header"},Ohe=J_(()=>g("p",{class:"card-header-title"},"Elements",-1)),Ihe={class:"card-content"},Lhe={class:"content"},Phe={class:"columns is-multiline"},Dhe={class:"column is-6"},Fhe={class:"field field-is-2 is-horizontal"},Nhe=J_(()=>g("div",{class:"field-label"},[g("label",{class:"label"}," Callsign Text ")],-1)),$he={class:"field-body"},Uhe={class:"field"},Bhe={class:"control is-expanded"},Ghe=Pa('
Element
Active
Invert
X
Y
',1),zhe={key:0,class:"field mb-2 field-is-2 is-horizontal"},Hhe={class:"field-label"},Vhe={class:"label",for:"pid-preset"},Whe={class:"field-body"},jhe={class:"field"},qhe={class:"control is-expanded"},Yhe=["id","name","checked","onInput"],Khe=["for"],Xhe={class:"field"},Zhe={class:"control is-expanded"},Jhe=["id","name","checked","onInput"],Qhe=["for"],epe={class:"field",style:{"align-self":"center"}},tpe={class:"control is-expanded"},npe=["value","max","onInput"],spe={class:"field",style:{"align-self":"center"}},ipe={class:"control is-expanded"},rpe=["value","max","onInput"],ope={class:"column is-6"},ape={class:"card"},lpe={class:"card-header"},cpe={class:"card-header-title"},upe={key:0,class:"select ml-4"},dpe=J_(()=>g("option",null,"NTSC",-1)),fpe=J_(()=>g("option",null,"PAL",-1)),hpe=[dpe,fpe],ppe={class:"card-content"},mpe={class:"content"},gpe=["width","height"];function _pe(t,e,n,s,i,r){const o=Re("tooltip");return J(),se("div",Rhe,[g("header",Che,[Ohe,X(o,{class:"card-header-icon",entry:"osd.elements",size:"lg"})]),g("div",Ihe,[g("div",Lhe,[g("div",Phe,[g("div",Dhe,[g("div",Fhe,[Nhe,g("div",$he,[g("div",Uhe,[g("div",Bhe,[Ve(g("input",{class:"input",type:"text","onUpdate:modelValue":e[0]||(e[0]=a=>t.callsign=a)},null,512),[[Je,t.callsign]])])])])]),Ghe,(J(!0),se(tt,null,Vt(t.elements,(a,l)=>(J(),se(tt,{key:l},[a.enabled?(J(),se("div",zhe,[g("div",Hhe,[g("label",Vhe,Ue(a.name),1)]),g("div",Whe,[g("div",jhe,[g("div",qhe,[g("input",{id:"active-"+l,name:"active-"+l,type:"checkbox",class:"switch",checked:a.active==1,onInput:c=>t.osd_set(l,"active",!a.active)},null,40,Yhe),g("label",{class:"py-0",style:{height:"2em"},for:"active-"+l},null,8,Khe)])]),g("div",Xhe,[g("div",Zhe,[g("input",{id:"invert-"+l,name:"invert-"+l,type:"checkbox",class:"switch",checked:a.invert==1,onInput:c=>t.osd_set(l,"invert",!a.invert)},null,40,Jhe),g("label",{class:"py-0",style:{height:"2em"},for:"invert-"+l},null,8,Qhe)])]),g("div",epe,[g("div",tpe,[g("input",{class:"input",type:"number",step:"1",value:a.pos.x,min:"0",max:t.limits.width-1,onInput:c=>{var u;return t.osd_set(l,"pos_x",(u=c==null?void 0:c.target)==null?void 0:u.value)}},null,40,npe)])]),g("div",spe,[g("div",ipe,[g("input",{class:"input",type:"number",step:"1",value:a.pos.y,min:"0",max:t.limits.height-1,onInput:c=>{var u;return t.osd_set(l,"pos_y",(u=c==null?void 0:c.target)==null?void 0:u.value)}},null,40,rpe)])])])])):qe("",!0)],64))),128))]),g("div",ope,[g("div",ape,[g("header",lpe,[g("div",cpe,[ye(" Preview "),t.is_hd?qe("",!0):(J(),se("div",upe,[Ve(g("select",{"onUpdate:modelValue":e[1]||(e[1]=a=>t.preview=a)},hpe,512),[[o_,t.preview]])]))])]),g("div",ppe,[g("div",mpe,[g("canvas",{width:t.canvasWidth,height:t.canvasHeight,ref:"canvas",class:"osd-canvas",onMousedown:e[2]||(e[2]=(...a)=>t.drag_start&&t.drag_start(...a)),onMousemove:e[3]||(e[3]=(...a)=>t.drag_move&&t.drag_move(...a)),onMouseup:e[4]||(e[4]=(...a)=>t.drag_drop&&t.drag_drop(...a)),onMouseleave:e[5]||(e[5]=(...a)=>t.drag_drop&&t.drag_drop(...a))},null,40,gpe)])])])])])])])])}const bpe=ot(khe,[["render",_pe],["__scopeId","data-v-d4ff4095"]]),ype=nt({name:"OSDElementsLegacy",data(){return{screen:{width:30-2,height:16-2,char_width:12,char_height:18},imageSource:null}},setup(){return{profile:Zt()}},computed:{svg_width(){return this.screen.width*this.screen.char_width},svg_height(){return this.screen.height*this.screen.char_height},viewBox(){return`0 0 ${this.svg_width} ${this.svg_height}`},callsign:{get(){return this.profile.osd.elements.slice(1,5).flatMap(t=>[0,8,16,24].map(e=>{const n=t>>e&255;return n==63?"":String.fromCharCode(n)})).join("")},set(t){const e=t.toUpperCase(),n=Array(20).fill(63).map((i,r)=>r{const a=Math.floor(o/4),l=[0,8,16,24][o%4];return i[a]=i[a]|(r&255)<this.element_options[e]).map((t,e)=>({...this.element_options[e],active:this.osd_decode(t,"active"),invert:this.osd_decode(t,"invert"),pos_x:this.osd_decode(t,"pos_x"),pos_y:this.osd_decode(t,"pos_y"),value:t}))}},methods:{osd_set(t,e,n){const s=[...this.profile.osd.elements];s[t]=this.osd_encode(this.profile.osd.elements[t],e,n),this.profile.set_osd_elements(s)},osd_decode(t,e){switch(e){case"active":return t&1;case"invert":return t>>1&1;case"pos_x":return t>>2&31;case"pos_y":return t>>7&15;default:return 0}},osd_encode(t,e,n){switch(e){case"active":return n?t|1:t&-2;case"invert":return n?t|2:t&-3;case"pos_x":return t&-125|(n&31)<<2;case"pos_y":return t&-1921|(n&15)<<7;default:return t}}}});const _x=t=>(Xu("data-v-1581546b"),t=t(),Zu(),t),vpe={class:"card"},wpe={class:"card-header"},xpe=_x(()=>g("p",{class:"card-header-title"},"Elements",-1)),Spe={class:"card-content"},Epe={class:"content"},Tpe={class:"columns is-multiline"},Ape={class:"column is-6"},Mpe={class:"field field-is-2 is-horizontal"},kpe=_x(()=>g("div",{class:"field-label"},[g("label",{class:"label"}," Callsign Text ")],-1)),Rpe={class:"field-body"},Cpe={class:"field"},Ope={class:"control is-expanded"},Ipe=Pa('
Element
Active
Invert
X
Y
',1),Lpe={key:0,class:"field mb-2 field-is-2 is-horizontal"},Ppe={class:"field-label"},Dpe={class:"label",for:"pid-preset"},Fpe={class:"field-body"},Npe={class:"field"},$pe={class:"control is-expanded"},Upe=["id","name","checked","onInput"],Bpe=["for"],Gpe={class:"field"},zpe={class:"control is-expanded"},Hpe=["id","name","checked","onInput"],Vpe=["for"],Wpe={class:"field",style:{"align-self":"center"}},jpe={class:"control is-expanded"},qpe=["value","onInput"],Ype={class:"field",style:{"align-self":"center"}},Kpe={class:"control is-expanded"},Xpe=["value","onInput"],Zpe={class:"column is-6"},Jpe={class:"card"},Qpe=_x(()=>g("header",{class:"card-header"},[g("p",{class:"card-header-title"},"Preview")],-1)),eme={class:"card-content"},tme={class:"content"},nme=["viewBox"],sme={key:0},ime=["x","y"];function rme(t,e,n,s,i,r){const o=Re("tooltip");return J(),se("div",vpe,[g("header",wpe,[xpe,X(o,{class:"card-header-icon",entry:"osd.elements",size:"lg"})]),g("div",Spe,[g("div",Epe,[g("div",Tpe,[g("div",Ape,[g("div",Mpe,[kpe,g("div",Rpe,[g("div",Cpe,[g("div",Ope,[Ve(g("input",{class:"input",type:"text","onUpdate:modelValue":e[0]||(e[0]=a=>t.callsign=a)},null,512),[[Je,t.callsign]])])])])]),Ipe,(J(!0),se(tt,null,Vt(t.elements,(a,l)=>(J(),se(tt,{key:l},[a.enabled?(J(),se("div",Lpe,[g("div",Ppe,[g("label",Dpe,Ue(a.name),1)]),g("div",Fpe,[g("div",Npe,[g("div",$pe,[g("input",{id:"active-"+l,name:"active-"+l,type:"checkbox",class:"switch",checked:a.active==1,onInput:c=>t.osd_set(l,"active",!a.active)},null,40,Upe),g("label",{class:"py-0",style:{height:"2em"},for:"active-"+l},null,8,Bpe)])]),g("div",Gpe,[g("div",zpe,[g("input",{id:"invert-"+l,name:"invert-"+l,type:"checkbox",class:"switch",checked:a.invert==1,onInput:c=>t.osd_set(l,"invert",!a.invert)},null,40,Hpe),g("label",{class:"py-0",style:{height:"2em"},for:"invert-"+l},null,8,Vpe)])]),g("div",Wpe,[g("div",jpe,[g("input",{class:"input",type:"number",step:"1",value:a.pos_x,onInput:c=>{var u;return t.osd_set(l,"pos_x",(u=c==null?void 0:c.target)==null?void 0:u.value)}},null,40,qpe)])]),g("div",Ype,[g("div",Kpe,[g("input",{class:"input",type:"number",step:"1",value:a.pos_y,onInput:c=>{var u;return t.osd_set(l,"pos_y",(u=c==null?void 0:c.target)==null?void 0:u.value)}},null,40,Xpe)])])])])):qe("",!0)],64))),128))]),g("div",Zpe,[g("div",Jpe,[Qpe,g("div",eme,[g("div",tme,[(J(),se("svg",{viewBox:t.viewBox,xmlns:"http://www.w3.org/2000/svg"},[(J(!0),se(tt,null,Vt(t.elements,(a,l)=>(J(),se("g",{key:l},[a.enabled&&a.active?(J(),se("g",sme,[(J(!0),se(tt,null,Vt(a.text,(c,u)=>(J(),se("text",{class:os({"text-invert":a.invert}),key:"el-"+l+"-"+u,x:(a.pos_x+u)*t.screen.char_width,y:a.pos_y*(t.screen.char_height-1)},Ue(c),11,ime))),128))])):qe("",!0)]))),128))],8,nme))])])])])])])])])}const ome=ot(ype,[["render",rme],["__scopeId","data-v-1581546b"]]),ame=t=>new Promise((e,n)=>{const s=new Image;s.onload=()=>e(s),s.onerror=i=>n(i),s.src=t}),lme=nt({name:"OSDFont",data(){return{fontFiles:[{text:"betaflight",value:"betaflight.png"},{text:"bold",value:"bold.png"},{text:"clarity",value:"clarity.png"},{text:"default",value:"default.png"},{text:"digital",value:"digital.png"},{text:"extra_large",value:"extra_large.png"},{text:"impact_mini",value:"impact_mini.png"},{text:"impact",value:"impact.png"},{text:"large",value:"large.png"},{text:"vision",value:"vision.png"}],current_font_file:"clarity.png",imageSource:void 0}},setup(){return{root:wn(),profile:Zt(),osd:v6()}},methods:{apply_osd_font(t){return ame("osd/"+t).then(e=>{const n=Ot.packFont(this.$refs.canvas,e);return this.osd.apply_font(n)}).then(()=>this.get_osd_font()).then(()=>this.root.append_alert({type:"success",msg:"Font updated!"})).catch(()=>{this.root.append_alert({type:"danger",msg:"Font update failed!"})})},async get_osd_font(){await this.osd.fetch_sd_osd_font(),this.imageSource=Ot.unpackFont(this.$refs.canvas,this.osd.font_raw)},uploadLogo(){const t=n=>new Promise((s,i)=>{const r=new FileReader;r.onerror=i,r.onabort=i,r.onload=o=>{var l;const a=new Image;a.onerror=i,a.onabort=i,a.onload=function(){s(a)},a.src=((l=o==null?void 0:o.target)==null?void 0:l.result)||""},r.readAsDataURL(n)});return(async()=>{const n={types:[{description:"Images",accept:{"image/*":[".png"]}}],excludeAcceptAllOption:!0,multiple:!1},[s]=await window.showOpenFilePicker(n);return await s.getFile()})().then(n=>t(n)).then(n=>{if(n.width!=288&&n.height!=72)throw new Error("Invalid logo dimensions");const s=Ot.packLogo(this.$refs.canvas,this.$refs.logoCanvas,n);return this.osd.apply_font(s)}).then(()=>this.get_osd_font()).then(()=>this.root.append_alert({type:"success",msg:"Logo updated!"})).catch(n=>{this.root.append_alert({type:"danger",msg:"Logo update failed! "+n.message})}).finally(()=>this.$refs.form.reset())}},created(){this.get_osd_font()}}),cme={class:"card"},ume={class:"card-header"},dme=g("p",{class:"card-header-title"},"Font",-1),fme={class:"card-content"},hme={class:"content"},pme={class:"field field-is-4 is-horizontal"},mme=g("div",{class:"field-label"},[g("label",{class:"label"}," Full OSD font to upload ")],-1),gme={class:"field-body"},_me={class:"field has-addons"},bme={class:"control is-expanded"},yme={class:"control"},vme={ref:"form"},wme={class:"field field-is-4 is-horizontal"},xme=g("div",{class:"field-label"},[g("label",{class:"label"},[ye(" Custom Logo "),g("br"),ye(" 288x72 Black/White/Transparent PNG ")])],-1),Sme={class:"field-body"},Eme={class:"field has-addons"},Tme=g("p",{class:"control is-expanded"},null,-1),Ame={class:"control"},Mme={class:"columns mt-5"},kme={class:"column is-6"},Rme={class:"card"},Cme=g("header",{class:"card-header"},[g("p",{class:"card-header-title"},"Preview")],-1),Ome={class:"card-content"},Ime={class:"content"},Lme={class:"image m-0"},Pme=["src"],Dme={class:"column is-6"},Fme={class:"card"},Nme=g("header",{class:"card-header"},[g("p",{class:"card-header-title"},"Current")],-1),$me={class:"card-content"},Ume={class:"content"},Bme={class:"image m-0"},Gme=["src"],zme={ref:"canvas",class:"mx-5 mt-3 is-hidden",width:"209",height:"305"},Hme={ref:"logoCanvas",class:"mx-5 mt-3 is-hidden",width:"288",height:"72"};function Vme(t,e,n,s,i,r){const o=Re("tooltip"),a=Re("input-select"),l=Re("spinner-btn");return J(),se("div",cme,[g("header",ume,[dme,X(o,{class:"card-header-icon",entry:"osd.font",size:"lg"})]),g("div",fme,[g("div",hme,[g("div",pme,[mme,g("div",gme,[g("div",_me,[g("p",bme,[X(a,{id:"font-file",class:"is-fullwidth",modelValue:t.current_font_file,"onUpdate:modelValue":e[0]||(e[0]=c=>t.current_font_file=c),options:t.fontFiles},null,8,["modelValue","options"])]),g("p",yme,[X(l,{class:"float-right",onClick:e[1]||(e[1]=c=>t.apply_osd_font(t.current_font_file))},{default:et(()=>[ye(" Upload Font ")]),_:1})])])])]),g("form",vme,[g("div",wme,[xme,g("div",Sme,[g("div",Eme,[Tme,g("p",Ame,[X(l,{onClick:e[2]||(e[2]=c=>t.uploadLogo())},{default:et(()=>[ye(" Upload Logo ")]),_:1})])])])])],512),g("div",Mme,[g("div",kme,[g("div",Rme,[Cme,g("div",Ome,[g("div",Ime,[g("figure",Lme,[g("img",{src:"osd/"+t.current_font_file},null,8,Pme)])])])])]),g("div",Dme,[g("div",Fme,[Nme,g("div",$me,[g("div",Ume,[g("figure",Bme,[g("img",{src:t.imageSource},null,8,Gme)]),g("canvas",zme,null,512),g("canvas",Hme,null,512)])])])])])])])])}const Wme=ot(lme,[["render",Vme]]),jme=nt({name:"OSD",components:{OSDElements:bpe,OSDElementsLegacy:ome,OSDFont:Wme},setup(){return{profile:Zt(),default_profile:Ih()}},computed:{is_hd(){return this.profile.serial.hdzero}}}),qme={class:"columns is-multiline"},Yme={class:"column is-12"},Kme={class:"column is-12"};function Xme(t,e,n,s,i,r){const o=Re("OSDElementsLegacy"),a=Re("OSDElements"),l=Re("OSDFont");return J(),se("div",qme,[g("div",Yme,[t.default_profile.has_legacy_osd?(J(),fn(o,{key:0})):(J(),fn(a,{key:1}))]),g("div",Kme,[t.is_hd?qe("",!0):(J(),fn(l,{key:0}))])])}const Zme=ot(jme,[["render",Xme]]),Q_=ds("motor",{state:()=>({loading:!1,test:{active:0,value:new Array},settings:null,_pins:[{index:1,id:"MOTOR_FL",label:"Front Left"},{index:3,id:"MOTOR_FR",label:"Front Right"},{index:0,id:"MOTOR_BL",label:"Back Left"},{index:2,id:"MOTOR_BR",label:"Back Right"}]}),getters:{pins(t){const e=Zt();return t._pins.map(n=>({...n,pin:e.motor.motor_pins[n.index]}))}},actions:{fetch_motor_test(){return wt.command(qn.Motor,nf.TestStatus).then(t=>{this.test=t.payload[0]})},fetch_motor_settings(){const t=wn();return this.loading=!0,wt.get(vn.BLHeliSettings).then(e=>{this.settings=e}).catch(e=>{t.append_alert({type:"danger",msg:"Loading motor settings failed!"}),st.error("motor",e)}).finally(()=>{this.loading=!1})},apply_motor_settings(t){const e=wn();return this.loading=!0,wt.set(vn.BLHeliSettings,...t).then(()=>{this.settings=t,e.append_alert({type:"success",msg:"Motor settings applied!"})}).catch(n=>{st.error("motor",n),e.append_alert({type:"danger",msg:"Failed to apply motor settings!"})}).finally(()=>{this.loading=!1})},async motor_test_toggle(){return await this.fetch_motor_test(),wt.command(qn.Motor,this.test.active?nf.TestDisable:nf.TestEnable).then(()=>{this.test.active=this.test.active?0:1})},motor_test_set_value(t){return wt.command(qn.Motor,nf.TestSetValue,t).then(e=>{this.test.value=e.payload[0]})}}}),Jme=nt({name:"MotorTest",setup(){return{motor:Q_(),state:Js()}},computed:{value(){return this.motor.test.value.map(t=>(t<0&&(t=0),t*100))}},methods:{update(){return this.motor.motor_test_set_value(this.value.map(t=>t/100))}},created(){this.motor.fetch_motor_test()}}),Qme={key:0,class:"card"},ege={class:"card-header"},tge=g("p",{class:"card-header-title"},"Motor Test",-1),nge={class:"card-header-icon"},sge=g("br",null,null,-1),ige={class:"card-content"},rge={class:"content"},oge={key:0,class:"columns is-multiline"},age={class:"field field-is-2 is-horizontal"},lge={class:"field-label"},cge={class:"label",for:"pid-preset"},uge={class:"field-body"},dge={class:"field has-addons"},fge={class:"control is-expanded"},hge=["id","onUpdate:modelValue"],pge={class:"control"},mge=["id","onUpdate:modelValue"],gge={key:1,class:"is-size-5 has-text-centered has-text-weight-semibold"},_ge={class:"card-footer"},bge=g("span",{class:"card-footer-item"},null,-1),yge=g("span",{class:"card-footer-item"},null,-1);function vge(t,e,n,s,i,r){const o=Re("tooltip"),a=Re("spinner-btn");return t.motor.test?(J(),se("div",Qme,[g("header",ege,[tge,g("small",nge,[ye(Ue(t.state.vbat.toFixed(2))+"V ",1),sge,ye(" "+Ue(t.state.ibat_filtered.toFixed(2))+"mA ",1)]),X(o,{class:"card-header-icon",entry:"motor.test",size:"lg"})]),g("div",ige,[g("div",rge,[t.motor.test.active?(J(),se("div",oge,[(J(!0),se(tt,null,Vt(t.motor.pins,l=>(J(),se("div",{class:"column is-6",key:l.index},[g("div",age,[g("div",lge,[g("label",cge,Ue(l.label),1)]),g("div",uge,[g("div",dge,[g("div",fge,[Ve(g("input",{class:"input",id:l.id,type:"range",step:"1",min:"0",max:"50","onUpdate:modelValue":c=>t.value[l.index]=c,onInput:e[0]||(e[0]=c=>t.update())},null,40,hge),[[Je,t.value[l.index],void 0,{number:!0}]])]),g("div",pge,[Ve(g("input",{class:"input",id:l.id,type:"number",step:"1",min:"0",max:"50","onUpdate:modelValue":c=>t.value[l.index]=c,onChange:e[1]||(e[1]=c=>t.update())},null,40,mge),[[Je,t.value[l.index],void 0,{number:!0}]])])])])])]))),128))])):(J(),se("div",gge," Motor Test disabled "))])]),g("footer",_ge,[bge,yge,X(a,{class:"card-footer-item",onClick:e[2]||(e[2]=l=>t.motor.motor_test_toggle())},{default:et(()=>[ye(Ue(t.motor.test.active?"Disable":"Enable"),1)]),_:1})])])):qe("",!0)}const wge=ot(Jme,[["render",vge]]),xge=nt({name:"MotorPins",setup(){return{motor:Q_(),target:cd(),profile:Zt()}},computed:{motorPins(){return this.target.motor_pin_names.map((t,e)=>({value:e,text:`Pin ${e} (${t})`}))}}}),Sge={class:"card"},Ege={class:"card-header"},Tge=g("p",{class:"card-header-title"},"Motor Pins",-1),Age={class:"card-content"},Mge={class:"content"},kge={class:"columns is-multiline my-2"},Rge={class:"field field-is-2 is-horizontal"},Cge={class:"field-label"},Oge={class:"label",for:"pid-profile"},Ige=g("br",null,null,-1),Lge={class:"text-muted"},Pge={class:"field-body"},Dge={class:"field"},Fge={class:"control is-expanded"};function Nge(t,e,n,s,i,r){const o=Re("tooltip"),a=Re("input-select");return J(),se("div",Sge,[g("header",Ege,[Tge,X(o,{class:"card-header-icon",entry:"motor_pins",size:"lg"})]),g("div",Age,[g("div",Mge,[g("div",kge,[(J(!0),se(tt,null,Vt(t.motor.pins,l=>(J(),se("div",{class:"column is-6",key:"motor-pin-"+l.index},[g("div",Rge,[g("div",Cge,[g("label",Oge,[ye(Ue(l.label)+" ",1),Ige,g("span",Lge,"Motor "+Ue(l.index),1)])]),g("div",Pge,[g("div",Dge,[g("div",Fge,[X(a,{id:"motor-pin-"+l.index,class:"is-fullwidth",modelValue:t.profile.motor.motor_pins[l.index],"onUpdate:modelValue":c=>t.profile.motor.motor_pins[l.index]=c,options:t.motorPins},null,8,["id","modelValue","onUpdate:modelValue","options"])])])])])]))),128))])])])])}const $ge=ot(xge,[["render",Nge]]),Uge=nt({name:"ESCSettings",setup(){return{motor:Q_(),info:Tn()}},data(){return{motor_direction_options:[{value:1,text:"Normal"},{value:2,text:"Reversed"},{value:3,text:"Bidirectional"},{value:4,text:"Bidirectional Reversed"}]}},methods:{trim(t){return t.replace(/#/g,"").replace(/\$/g," ")},mapPin(t){return Ps.gt(this.info.quic_protocol_semver,"0.2.1")?t.index:t.pin}}}),Bge={class:"card"},Gge={class:"card-header"},zge=g("p",{class:"card-header-title"},"ESC Settings",-1),Hge={class:"card-content"},Vge={class:"content"},Wge={key:0,class:"columns is-multiline"},jge={class:"columns is-multiline my-2"},qge={class:"column is-4"},Yge={class:"column is-8"},Kge={class:"column is-4 pt-0 mt-0"},Xge=["for"],Zge={class:"column is-8 pt-0 mt-0"},Jge={key:1,class:"is-size-5 has-text-centered has-text-weight-semibold"},Qge={class:"card-footer"},e_e=g("span",{class:"card-footer-item"},null,-1),t_e=g("span",{class:"card-footer-item"},null,-1);function n_e(t,e,n,s,i,r){const o=Re("tooltip"),a=Re("input-select"),l=Re("spinner-btn");return J(),se("div",Bge,[g("header",Gge,[zge,X(o,{class:"card-header-icon",entry:"motor_settings",size:"lg"})]),g("div",Hge,[g("div",Vge,[t.motor.settings&&t.motor.settings.length?(J(),se("div",Wge,[(J(!0),se(tt,null,Vt(t.motor.pins,c=>(J(),se("div",{class:"column is-6 px-5",key:"motor-settings-"+c.index},[g("div",jge,[g("div",qge,[g("h6",null,Ue(c.label),1)]),g("div",Yge,Ue(t.trim(t.motor.settings[t.mapPin(c)].LAYOUT))+" - "+Ue(t.trim(t.motor.settings[t.mapPin(c)].NAME))+", "+Ue(t.motor.settings[t.mapPin(c)].MAIN_REVISION)+"."+Ue(t.motor.settings[t.mapPin(c)].SUB_REVISION),1),g("div",Kge,[g("label",{for:"motor-direction-"+c.index},"Direction",8,Xge)]),g("div",Zge,[X(a,{id:"motor-direction-"+c.index,modelValue:t.motor.settings[t.mapPin(c)].MOTOR_DIRECTION,"onUpdate:modelValue":u=>t.motor.settings[t.mapPin(c)].MOTOR_DIRECTION=u,modelModifiers:{number:!0},options:t.motor_direction_options},null,8,["id","modelValue","onUpdate:modelValue","options"])])])]))),128))])):(J(),se("div",Jge," Settings not loaded "))])]),g("footer",Qge,[e_e,t_e,t.motor.settings&&t.motor.settings.length?(J(),fn(l,{key:0,class:"card-footer-item",disabled:t.motor.loading,onClick:e[0]||(e[0]=c=>t.motor.apply_motor_settings(t.motor.settings))},{default:et(()=>[ye(" Apply ")]),_:1},8,["disabled"])):(J(),fn(l,{key:1,class:"card-footer-item",disabled:t.motor.loading,onClick:e[1]||(e[1]=c=>t.motor.fetch_motor_settings())},{default:et(()=>[ye(" Load ")]),_:1},8,["disabled"]))])])}const s_e=ot(Uge,[["render",n_e]]),i_e=nt({name:"Motor",components:{MotorTest:wge,MotorPins:$ge,ESCSettings:s_e},setup(){return{info:Tn(),constants:ec()}}}),r_e={class:"columns is-multiline"},o_e={class:"column is-12"},a_e={class:"column is-12"},l_e={key:0,class:"column is-12"};function c_e(t,e,n,s,i,r){const o=Re("MotorTest"),a=Re("MotorPins"),l=Re("ESCSettings");return J(),se("div",r_e,[g("div",o_e,[X(o)]),g("div",a_e,[X(a)]),t.info.has_feature(t.constants.Features.BRUSHLESS)?(J(),se("div",l_e,[X(l)])):qe("",!0)])}const u_e=ot(i_e,[["render",c_e]]);function Hr(t){return e=>t*e*1/1e3*180/Math.PI}function q1(t){return e=>t+e}const d_e=[{name:"loopIteration",blackbox_field:je.LOOP,advance:1,signed:!1},{name:"time",blackbox_field:je.TIME,advance:1,signed:!1},{name:"axisP",array_index:0,blackbox_field:je.PID_P_TERM,advance:0,signed:!0},{name:"axisP",array_index:1,blackbox_field:je.PID_P_TERM,advance:0,signed:!0},{name:"axisP",array_index:2,blackbox_field:je.PID_P_TERM,advance:1,signed:!0},{name:"axisI",array_index:0,blackbox_field:je.PID_I_TERM,advance:0,signed:!0},{name:"axisI",array_index:1,blackbox_field:je.PID_I_TERM,advance:0,signed:!0},{name:"axisI",array_index:2,blackbox_field:je.PID_I_TERM,advance:1,signed:!0},{name:"axisD",array_index:0,blackbox_field:je.PID_D_TERM,advance:0,signed:!0},{name:"axisD",array_index:1,blackbox_field:je.PID_D_TERM,advance:0,signed:!0},{name:"axisD",array_index:2,blackbox_field:je.PID_D_TERM,advance:1,signed:!0},{name:"rcCommand",array_index:0,signed:!0,blackbox_field:je.RX,advance:0,convert:t=>t/2},{name:"rcCommand",array_index:1,signed:!0,blackbox_field:je.RX,advance:0,convert:t=>t/2},{name:"rcCommand",array_index:2,signed:!0,blackbox_field:je.RX,advance:0,convert:t=>-t/2},{name:"rcCommand",array_index:3,signed:!0,blackbox_field:je.RX,advance:1,convert:q1(1e3)},{name:"setpoint",array_index:0,blackbox_field:je.SETPOINT,advance:0,signed:!0,convert:Hr(1)},{name:"setpoint",array_index:1,blackbox_field:je.SETPOINT,advance:0,signed:!0,convert:Hr(1)},{name:"setpoint",array_index:2,blackbox_field:je.SETPOINT,advance:0,signed:!0,convert:Hr(-1)},{name:"setpoint",array_index:3,blackbox_field:je.SETPOINT,advance:1,signed:!0},{name:"accRaw",array_index:0,blackbox_field:je.ACCEL_RAW,advance:0,signed:!0},{name:"accRaw",array_index:1,blackbox_field:je.ACCEL_RAW,advance:0,signed:!0},{name:"accRaw",array_index:2,blackbox_field:je.ACCEL_RAW,advance:1,signed:!0,convert:q1(1e3)},{name:"accSmooth",array_index:0,blackbox_field:je.ACCEL_FILTER,advance:0,signed:!0},{name:"accSmooth",array_index:1,blackbox_field:je.ACCEL_FILTER,advance:0,signed:!0},{name:"accSmooth",array_index:2,blackbox_field:je.ACCEL_FILTER,advance:1,signed:!0,convert:q1(1e3)},{name:"gyroRaw",array_index:0,blackbox_field:je.GYRO_RAW,advance:0,signed:!0,convert:Hr(1)},{name:"gyroRaw",array_index:1,blackbox_field:je.GYRO_RAW,advance:0,signed:!0,convert:Hr(1)},{name:"gyroRaw",array_index:2,blackbox_field:je.GYRO_RAW,advance:1,signed:!0,convert:Hr(-1)},{name:"gyroADC",array_index:0,blackbox_field:je.GYRO_FILTER,advance:0,signed:!0,convert:Hr(1)},{name:"gyroADC",array_index:1,blackbox_field:je.GYRO_FILTER,advance:0,signed:!0,convert:Hr(1)},{name:"gyroADC",array_index:2,blackbox_field:je.GYRO_FILTER,advance:1,signed:!0,convert:Hr(-1)},{name:"motor",array_index:0,blackbox_field:je.MOTOR,advance:0,signed:!0},{name:"motor",array_index:1,blackbox_field:je.MOTOR,advance:0,signed:!0},{name:"motor",array_index:2,blackbox_field:je.MOTOR,advance:0,signed:!0},{name:"motor",array_index:3,blackbox_field:je.MOTOR,advance:1,signed:!0},{name:"cpuload",blackbox_field:je.CPU_LOAD,advance:1,signed:!1},{name:"debug[0]",array_index:0,blackbox_field:je.DEBUG,advance:0,signed:!0},{name:"debug[1]",array_index:1,blackbox_field:je.DEBUG,advance:0,signed:!0},{name:"debug[2]",array_index:2,blackbox_field:je.DEBUG,advance:0,signed:!0},{name:"debug[3]",array_index:3,blackbox_field:je.DEBUG,advance:1,signed:!0}];let f_e=class{constructor(e){$e(this,"buffer",new bw);$e(this,"defs",d_e);$e(this,"fieldflags");this.file=e,this.fieldflags=bx(e.field_flags)}writeHeaders(e){this.writeHeaderRaw("Product","Blackbox flight data recorder by Nicholas Sherlock"),this.writeHeaderRaw("Data version","2"),this.writeHeaderRaw("Firmware type","Cleanflight"),this.writeHeaderRaw("Firmware revision","Betaflight 4.3.0"),this.writeHeaderRaw("gyro_scale","0x3f800000"),this.writeHeaderRaw("acc_1G","1000"),this.writeHeaderRaw("motorOutput","0,1000"),this.writeHeaderRaw("looptime",this.file.looptime.toString()),this.writeHeaderRaw("gyro_sync_denom","1"),this.writeHeaderRaw("pid_process_denom","1"),this.writeHeaderRaw("rates","78,78,78"),this.writeHeaderRaw("rates_type","3"),this.writeHeaderRaw("minthrottle","1000"),this.writeHeaderRaw("maxthrottle","2000"),this.writeHeaderRaw("gyro_notch_hz","0,0"),this.writeHeaderRaw("gyro_notch_cutoff","0,0"),this.writeHeaderRaw("Craft name",e.meta.name.replace(/\0/g,"")),this.writeHeaderRaw("rollPID",[e.pid.pid_rates[e.pid.pid_profile].kp[0],e.pid.pid_rates[e.pid.pid_profile].ki[0],e.pid.pid_rates[e.pid.pid_profile].kd[0]].join(",")),this.writeHeaderRaw("pitchPID",[e.pid.pid_rates[e.pid.pid_profile].kp[1],e.pid.pid_rates[e.pid.pid_profile].ki[1],e.pid.pid_rates[e.pid.pid_profile].kd[1]].join(",")),this.writeHeaderRaw("yawPID",[e.pid.pid_rates[e.pid.pid_profile].kp[2],e.pid.pid_rates[e.pid.pid_profile].ki[2],e.pid.pid_rates[e.pid.pid_profile].kd[2]].join(","));const n={1:0,2:2,3:3};e.filter.gyro[0].type>0&&(this.writeHeaderRaw("gyro_lpf1_type",n[e.filter.gyro[0].type].toString()),this.writeHeaderRaw("gyro_lpf1_static_hz",e.filter.gyro[0].cutoff_freq.toString())),e.filter.gyro[1].type>0&&(this.writeHeaderRaw("gyro_lpf2_type",n[e.filter.gyro[1].type].toString()),this.writeHeaderRaw("gyro_lpf2_static_hz",e.filter.gyro[1].cutoff_freq.toString())),e.filter.dterm[0].type>0&&(this.writeHeaderRaw("dterm_lpf1_type",n[e.filter.dterm[0].type].toString()),this.writeHeaderRaw("dterm_lpf1_static_hz",e.filter.dterm[0].cutoff_freq.toString())),e.filter.dterm_dynamic_enable&&this.writeHeaderRaw("dterm_lpf1_dyn_hz",[e.filter.dterm_dynamic_min,e.filter.dterm_dynamic_max].join(",")),e.filter.dterm[1].type>0&&(this.writeHeaderRaw("dterm_lpf2_type",n[e.filter.dterm[1].type].toString()),this.writeHeaderRaw("dterm_lpf2_static_hz",e.filter.dterm[1].cutoff_freq.toString())),this.writeHeaderRaw("I interval",""+this.file.blackbox_rate),this.writeHeaderRaw("P interval","1/"+this.file.blackbox_rate),this.writeHeaderJoin("Field I name",s=>{let i=s.name;return s.array_index!=null&&(i+="["+s.array_index+"]"),i}),this.writeHeaderJoin("Field I signed",s=>s.signed?"1":"0"),this.writeHeaderJoin("Field I predictor",s=>"0"),this.writeHeaderJoin("Field I encoding",s=>s.signed?"0":"1"),this.writeHeaderJoin("Field P predictor",s=>"0"),this.writeHeaderJoin("Field P encoding",s=>s.signed?"0":"1")}writeValue(e){if(!e[0]){st.warn("blackbox","skipping blackbox entry");return}this.buffer.writeUint8("I".charCodeAt(0));let n=1,s=0;for(const i of this.defs){if(n&this.fieldflags&1<127;)this.buffer.writeUint8((e&255|128)&255),e>>>=7;this.buffer.writeUint8(e)}writeSigned(e){const n=e<<1^e>>31;return this.writeUnsigned(n)}};const Yo=["Roll","Pitch","Yaw"],zT=[...Yo,"Throttle"],HT=t=>Array.from(Array(t).keys()).map(e=>e.toString()),Ty={[je.LOOP]:{name:"loop",title:"Loop",scale:1,unit:"none"},[je.TIME]:{name:"time",title:"Time",scale:1,unit:"us"},[je.PID_P_TERM]:{name:"pid_pterm",title:"PID P-Term",axis:Yo,scale:1e3,unit:"none"},[je.PID_I_TERM]:{name:"pid_iterm",title:"PID I-Term",axis:Yo,scale:1e3,unit:"none"},[je.PID_D_TERM]:{name:"pid_dterm",title:"PID D-Term",axis:Yo,scale:1e3,unit:"none"},[je.RX]:{name:"rx",title:"RX",axis:zT,scale:1e3,unit:"none"},[je.SETPOINT]:{name:"setpoint",title:"Setpoint",axis:zT,scale:1e3,unit:"rad"},[je.ACCEL_RAW]:{name:"accel_raw",title:"Accel Raw",axis:Yo,scale:1e3,unit:"rad"},[je.ACCEL_FILTER]:{name:"accel_filter",title:"Accel Filter",axis:Yo,scale:1e3,unit:"rad"},[je.GYRO_RAW]:{name:"gyro_raw",title:"Gyro Raw",axis:Yo,scale:1e3,unit:"rad"},[je.GYRO_FILTER]:{name:"gyro_filter",title:"Gyro Filter",axis:Yo,scale:1e3,unit:"rad"},[je.MOTOR]:{name:"motor",title:"Motor",axis:HT(4),scale:1e3,unit:"none"},[je.CPU_LOAD]:{name:"cpu_load",title:"CPU Load",scale:1,unit:"us"},[je.DEBUG]:{name:"debug",title:"Debug",axis:HT(4),scale:1,unit:"none"}};function bx(t){return(t??-1)|1<({busy:!1,speed:void 0,progress:void 0,list:{flash_size:0,files:[]},presets:[]}),actions:{reset_blackbox(){const t=wn();return wt.command(qn.Blackbox,tf.Reset).then(()=>{t.append_alert({type:"success",msg:"Blackbox successfully reset"})}).catch(e=>{t.append_alert({type:"danger",msg:e})})},list_blackbox(){return wt.command(qn.Blackbox,tf.List).then(t=>this.list=t.payload[0])},fetch_presets(){return wt.get(vn.BlackboxPresets).then(t=>this.presets=t)},download_blackbox_quic(t){const e=wn(),n=this.list.files[t],s=bx(n.field_flags),i=performance.now();return wt.commandProgress(qn.Blackbox,r=>{const o=(performance.now()-i)/1e3;this.progress=r/n.size,this.speed=r/o},tf.Get,t).then(r=>{const o=Object.keys(Ty).filter((c,u)=>(s&1<0).map(c=>Ty[c]),a={...n,fields:o,entries:r.payload};return"data:text/json;charset=utf-8,"+encodeURIComponent(JSON.stringify(a))}).then(r=>(e.append_alert({type:"success",msg:"Blackbox successfully downloaded!"}),r)).catch(r=>{throw e.append_alert({type:"danger",msg:"Blackbox download failed"}),r}).finally(()=>{this.progress=void 0,this.speed=void 0})},download_blackbox_btfl(t){const e=wn(),n=this.list.files[t],s=performance.now();return wt.commandProgress(qn.Blackbox,i=>{const r=(performance.now()-s)/1e3;this.progress=i/n.size,this.speed=i/r},tf.Get,t).then(i=>{const r=Zt(),o=new f_e(n);o.writeHeaders(r);for(const a of i.payload)o.writeValue(a);return o.toUrl()}).then(i=>(e.append_alert({type:"success",msg:"Blackbox successfully downloaded!"}),i)).catch(i=>{throw e.append_alert({type:"danger",msg:"Blackbox download failed"}),i}).finally(()=>{this.progress=void 0,this.speed=void 0})}}}),h_e=nt({name:"blackbox",setup(){return{blackbox:w6(),profile:Zt(),state:Js(),info:Tn()}},data(){return{current_preset:-1}},computed:{usedSize(){var t,e;return(((e=(t=this.blackbox)==null?void 0:t.list)==null?void 0:e.files)||[]).reduce((n,s)=>n+s.size,0)},blackboxRate(){return this.profile.blackbox.sample_rate_hz.toString()+" Hz"},blackboxFields(){const t=bx(this.profile.blackbox.field_flags),e=Xs(je).getEntries().map((n,s)=>({val:s,title:Ty[s].title,active:(t&1<0}));return e.every(n=>n.active)?["All"]:e.filter(n=>n.active).map(n=>n.title)},blackboxPresets(){return[{value:-1,text:"Choose..."},...this.blackbox.presets.map((t,e)=>({value:e,text:t.name}))]}},methods:{humanFileSize:c$,reset(){return this.blackbox.reset_blackbox().then(()=>this.blackbox.list_blackbox())},download_quic(t){return this.blackbox.download_blackbox_quic(t).then(e=>{const n=new Date().toISOString().substring(0,10),i=`${this.profile.meta.name.replace(/\0/g,"")}_${n}_file_${t}.json`;this.$refs.downloadAnchor.setAttribute("href",e),this.$refs.downloadAnchor.setAttribute("download",i),this.$refs.downloadAnchor.click()})},download_btfl(t){return this.blackbox.download_blackbox_btfl(t).then(e=>{const n=new Date().toISOString().substring(0,10),i=`${this.profile.meta.name.replace(/\0/g,"")}_${n}_file_${t}.bfl`;this.$refs.downloadAnchor.setAttribute("href",e),this.$refs.downloadAnchor.setAttribute("download",i),this.$refs.downloadAnchor.click()})},load_preset(t){this.profile.blackbox.field_flags=this.blackbox.presets[t].field_flags,this.profile.blackbox.sample_rate_hz=this.blackbox.presets[t].sample_rate_hz,this.current_preset=-1}},created(){this.blackbox.list_blackbox(),this.info.quicVersionGt("0.1.2")&&this.blackbox.fetch_presets()}});const p_e={class:"columns is-multiline"},m_e={class:"column is-12"},g_e={key:0,class:"card"},__e=g("div",{class:"card-header"},[g("p",{class:"card-header-title"},"Blackbox Settings")],-1),b_e={class:"card-content"},y_e={class:"content column-narrow"},v_e={class:"field field-is-2 is-horizontal"},w_e=g("div",{class:"field-label"},[g("label",{class:"label",for:"pid-preset"}," Preset ")],-1),x_e={class:"field-body"},S_e={class:"field has-addons"},E_e={class:"control"},T_e={class:"control"},A_e={class:"field field-is-2 is-horizontal"},M_e=g("div",{class:"field-label"},[g("label",{class:"label"},"Log Rate")],-1),k_e={class:"field-body"},R_e={class:"field"},C_e={class:"control is-expanded"},O_e=["value"],I_e={class:"field field-is-2 is-horizontal"},L_e=g("div",{class:"field-label is-align-self-flex-start pt-2"},[g("label",{class:"label"},"Fields")],-1),P_e={class:"field-body"},D_e={class:"field"},F_e={class:"control is-expanded"},N_e=["value"],$_e={class:"column is-12"},U_e={key:0,class:"card"},B_e={class:"card-header"},G_e=g("p",{class:"card-header-title"},"Blackbox Files",-1),z_e={class:"blackbox-progress has-text-right"},H_e=["value","max"],V_e={class:"card-content"},W_e={class:"content"},j_e={class:"mr-4 is-size-6"},q_e={ref:"downloadAnchor",target:"_blank"},Y_e={key:0},K_e=["value"],X_e={class:"card-footer"},Z_e={class:"card-footer-item"},J_e=g("span",{class:"card-footer-item"},null,-1);function Q_e(t,e,n,s,i,r){var c,u,d;const o=Re("input-select"),a=Re("spinner-btn"),l=Re("font-awesome-icon");return J(),se("div",p_e,[g("div",m_e,[t.info.quicVersionGt("0.1.2")?(J(),se("div",g_e,[__e,g("div",b_e,[g("div",y_e,[g("div",v_e,[w_e,g("div",x_e,[g("div",S_e,[g("div",E_e,[X(o,{id:"blackbox-preset",modelValue:t.current_preset,"onUpdate:modelValue":e[0]||(e[0]=f=>t.current_preset=f),modelModifiers:{number:!0},options:t.blackboxPresets},null,8,["modelValue","options"])]),g("div",T_e,[X(a,{onClick:e[1]||(e[1]=f=>t.load_preset(t.current_preset)),disabled:t.current_preset==-1},{default:et(()=>[ye(" Load ")]),_:1},8,["disabled"])])])])]),g("div",A_e,[M_e,g("div",k_e,[g("div",R_e,[g("div",C_e,[g("input",{class:"input is-static",value:t.blackboxRate,readonly:""},null,8,O_e)])])])]),g("div",I_e,[L_e,g("div",P_e,[g("div",D_e,[g("div",F_e,[(J(!0),se(tt,null,Vt(t.blackboxFields,f=>(J(),se("input",{key:f,class:"input is-static",value:f,readonly:""},null,8,N_e))),128))])])])])])])])):qe("",!0)]),g("div",$_e,[t.blackbox.list?(J(),se("div",U_e,[g("div",B_e,[G_e,g("div",z_e,[g("progress",{class:"progress my-0 is-danger",value:t.usedSize,max:(t.blackbox.list.flash_size||1)*1024},null,8,H_e),g("h6",null," Used: "+Ue(t.humanFileSize(t.usedSize))+" / "+Ue(t.humanFileSize(t.blackbox.list.flash_size*1024)),1)])]),g("div",V_e,[g("div",W_e,[(J(!0),se(tt,null,Vt(t.blackbox.list.files,(f,h)=>(J(),se("div",{key:h,class:"is-flex is-align-items-center"},[g("div",j_e," File "+Ue(h+1)+": "+Ue(t.humanFileSize(f.size)),1),X(a,{class:"is-small my-2 mx-2",onClick:_=>t.download_btfl(h)},{default:et(()=>[X(l,{icon:"fa-solid fa-download",size:"lg",class:"mr-2","fixed-width":""}),ye(" BTFL ")]),_:2},1032,["onClick"]),X(a,{class:"is-small my-2 mx-2",onClick:_=>t.download_quic(h)},{default:et(()=>[X(l,{icon:"fa-solid fa-download",size:"lg",class:"mr-2","fixed-width":""}),ye(" QUIC ")]),_:2},1032,["onClick"])]))),128)),g("a",q_e,null,512),t.blackbox.progress?(J(),se("div",Y_e,[ye(" Downloading "+Ue(t.humanFileSize(t.blackbox.speed||0))+"/s... ",1),g("progress",{class:"progress is-info my-0",value:t.blackbox.progress,max:"1"},null,8,K_e)])):qe("",!0)])]),g("footer",X_e,[g("span",Z_e,Ue(((d=(u=(c=t.blackbox)==null?void 0:c.list)==null?void 0:u.files)==null?void 0:d.length)||0)+" Files ",1),J_e,X(a,{class:"card-footer-item is-danger",onClick:e[2]||(e[2]=f=>t.reset())},{default:et(()=>[ye(" Reset ")]),_:1})])])):qe("",!0)])])}const e0e=ot(h_e,[["render",Q_e]]),t0e=nt({name:"RealtimePlot",components:{Scatter:cre},props:["title","time","input","axis","transform"],data(){return{colors:["#1f77b4","#ff7f0e","#2ca02c","#d62728"],lastUpdate:0,chartData:void 0,datasets:[]}},computed:{chartOptions(){return{responsive:!0,maintainAspectRatio:!1,animation:{duration:0},elements:{line:{tension:0}},scales:{x:{type:"time",time:{unit:"second",displayFormats:{second:"HH:mm:ss"}}}},plugins:{title:{display:!0,text:this.title},tooltip:{enabled:!0,mode:"index",position:"average",intersect:!1,callbacks:{label:t=>{let e=t.dataset.label||"";return e&&(e+=": "),e+=t.formattedValue,e}}}}}}},methods:{updateChartData(){let t=[];Array.isArray(this.axis)?t=this.axis.map((e,n)=>({label:e,data:this.datasets[n]||[],fill:!1,borderColor:this.colors[n],showLine:!0,interpolate:!0})):t=[{label:this.axis,data:this.datasets[0]||[],fill:!1,borderColor:this.colors[0],showLine:!0,interpolate:!0}],this.chartData={labels:[],datasets:t}}},watch:{input(t){const e=this.transform||(s=>s),n=this.time||Date.now();if(Array.isArray(this.axis))for(let s=0;s=60;)this.datasets[s].shift()}else for(this.datasets[0]=[...this.datasets[0]||[],{x:n,y:e(t)}];this.datasets[0].length>=60;)this.datasets[0].shift();Date.now()-this.lastUpdate>250&&this.updateChartData()},title(){this.updateChartData()},time(){this.updateChartData()},axis(){this.updateChartData()},transform(){this.updateChartData()}}});function n0e(t,e,n,s,i,r){const o=Re("Scatter");return t.chartData?(J(),fn(o,{key:0,"chart-data":t.chartData,"chart-options":t.chartOptions,ref:"chart"},null,8,["chart-data","chart-options"])):qe("",!0)}const x6=ot(t0e,[["render",n0e]]),s0e=nt({name:"state",components:{RealtimePlot:x6,GyroModel:_R},setup(){return{state:Js()}},data(){return{plots:[{name:"rx_filtered",size:12,title:"Rx Channels",axis:["Roll","Pitch","Yaw","Throttle"]},{name:"cpu_load",size:12,title:"CPU Load",axis:"us"},{name:"gyro_raw",size:6,title:"Gyro Raw",axis:["Roll","Pitch","Yaw"]},{name:"gyro",size:6,title:"Gyro Filter",axis:["Roll","Pitch","Yaw"]},{name:"gyro_temp",size:12,title:"Gyro Temperature",axis:"°C"},{name:"GEstG",size:12,title:"Gyro Vector",axis:["Roll","Pitch","Yaw"]},{name:"accel_raw",size:6,title:"AccelRaw",axis:["Roll","Pitch","Yaw"]},{name:"accel",size:6,title:"AccelFilter",axis:["Roll","Pitch","Yaw"]},{name:"pidoutput",size:12,title:"Pid Output",axis:["Roll","Pitch","Yaw"]}]}}}),i0e={class:"columns is-multiline"},r0e={class:"column is-12"};function o0e(t,e,n,s,i,r){const o=Re("GyroModel"),a=Re("RealtimePlot");return J(),se("div",i0e,[g("div",r0e,[X(o)]),(J(!0),se(tt,null,Vt(t.plots,l=>(J(),se("div",{class:os(["column",["is-"+l.size]]),key:l.name},[X(a,{title:l.title,axis:l.axis,input:t.state[l.name]},null,8,["title","axis","input"])],2))),128))])}const a0e=ot(s0e,[["render",o0e]]),l0e=nt({name:"perf",components:{RealtimePlot:x6},setup(){return{perf:P8()}}}),c0e={class:"columns is-multiline"};function u0e(t,e,n,s,i,r){const o=Re("RealtimePlot");return J(),se("div",c0e,[(J(!0),se(tt,null,Vt(t.perf.counters,(a,l)=>(J(),se("div",{class:"column is-6 my-3",key:"counter"+l},[X(o,{title:a.name,axis:Object.keys(a).slice(1),input:a},null,8,["title","axis","input"])]))),128))])}const d0e=ot(l0e,[["render",u0e]]),f0e=nt({name:"ProlfileMetadata",setup(){return{state:Js(),info:Tn(),profile:Zt(),serial:xd()}},computed:{date(){return new Date(this.profile.meta.datetime*1e3)},fileRef(){return this.$refs.file},downloadAnchorRef(){return this.$refs.downloadAnchor},versionLink(){return/^(v\d\..*)/.test(this.info.git_version)?"https://github.com/BossHobby/QUICKSILVER/releases/tag/"+this.info.git_version:"https://github.com/BossHobby/QUICKSILVER/commit/"+this.info.git_version}},methods:{timeAgo:dk,uploadProfile(){const t=new FileReader;t.addEventListener("load",e=>{var n,s;if((n=e==null?void 0:e.target)!=null&&n.result){const i=_o.parse((s=e==null?void 0:e.target)==null?void 0:s.result);this.profile.apply_profile(i)}}),this.fileRef.oninput=()=>{var e,n;(n=(e=this.fileRef)==null?void 0:e.files)!=null&&n.length&&t.readAsText(this.fileRef.files[0])},this.fileRef.click()},downloadProfile(){return wt.get(vn.Profile).then(t=>{const n="data:text/yaml;charset=utf-8,"+encodeURIComponent(_o.stringify(t)),s=this.date.toISOString().substring(0,10),r=`Profile_${t.meta.name.replace(/\0/g,"")}_${s}.yaml`;this.downloadAnchorRef.setAttribute("href",n),this.downloadAnchorRef.setAttribute("download",r),this.downloadAnchorRef.click()})}}}),h0e={class:"card"},p0e=g("header",{class:"card-header"},[g("p",{class:"card-header-title"},"Profile")],-1),m0e={class:"card-content"},g0e={class:"content column-narrow field-is-2"},_0e={class:"field is-horizontal"},b0e=g("div",{class:"field-label"},[g("label",{class:"label",for:"name"},"Name")],-1),y0e={class:"field-body"},v0e={class:"field"},w0e={class:"control is-expanded"},x0e={class:"field is-horizontal"},S0e=g("div",{class:"field-label"},[g("label",{class:"label"},"Last Modified")],-1),E0e={class:"field-body"},T0e={class:"field"},A0e={class:"control is-expanded"},M0e=["value"],k0e={class:"field is-horizontal"},R0e=g("div",{class:"field-label"},[g("label",{class:"label"},"Version")],-1),C0e={class:"field-body"},O0e={class:"field"},I0e={class:"control is-expanded"},L0e=["href"],P0e={class:"card-footer"},D0e={accept:".yaml",type:"file",ref:"file",style:{display:"none"}},F0e={ref:"downloadAnchor",target:"_blank"};function N0e(t,e,n,s,i,r){const o=Re("spinner-btn");return J(),se("div",h0e,[p0e,g("div",m0e,[g("div",g0e,[g("div",_0e,[b0e,g("div",y0e,[g("div",v0e,[g("div",w0e,[Ve(g("input",{class:"input",type:"text","onUpdate:modelValue":e[0]||(e[0]=a=>t.profile.meta.name=a)},null,512),[[Je,t.profile.meta.name]])])])])]),g("div",x0e,[S0e,g("div",E0e,[g("div",T0e,[g("div",A0e,[g("input",{class:"input is-static",value:t.timeAgo(t.date),readonly:""},null,8,M0e)])])])]),g("div",k0e,[R0e,g("div",C0e,[g("div",O0e,[g("div",I0e,[g("a",{href:t.versionLink,target:"_blank"},Ue(t.info.git_version),9,L0e)])])])])])]),g("footer",P0e,[X(o,{class:"card-footer-item",onClick:t.downloadProfile},{default:et(()=>[ye(" Save Profile ")]),_:1},8,["onClick"]),X(o,{class:"card-footer-item",onClick:t.uploadProfile,disabled:t.info.is_read_only},{default:et(()=>[ye(" Load Profile ")]),_:1},8,["onClick","disabled"]),X(o,{class:"card-footer-item is-warning",onClick:t.profile.reset},{default:et(()=>[ye(" Reset Profile ")]),_:1},8,["onClick"])]),g("input",D0e,null,512),g("a",F0e,null,512)])}const $0e=ot(f0e,[["render",N0e]]),U0e={xmlns:"http://www.w3.org/2000/svg","xml:space":"preserve",width:"512",height:"512",viewBox:"0 0 135.467 135.467"},B0e=Pa('',1),G0e=[B0e];function z0e(t,e){return J(),se("svg",U0e,[...G0e])}const S6={render:z0e},H0e=nt({name:"Info",components:{LogoClean:S6},data(){return{updateAvailable:null,appVersion:"0.7.3"}},methods:{doUpdate(){return fl.update(this.updateAvailable)}},created(){fl.updatePending()||fl.checkForUpdate(this.appVersion,t=>this.updateAvailable=t)}});const V0e={class:"hero is-primary"},W0e={class:"hero-body"},j0e={class:"columns"},q0e={class:"column is-2 p-0"},Y0e={class:"column"},K0e={class:"title"},X0e={class:"text-muted"},Z0e=g("p",{class:"subtitle"},[ye(" Checkout our "),g("a",{target:"_blank",href:"https://docs.bosshobby.com/",style:{"font-weight":"bold"}}," Docs"),ye(" for help on getting started."),g("br"),ye(" First time users should start on the FLASH tab. ")],-1),J0e={key:0,class:"subtitle"};function Q0e(t,e,n,s,i,r){const o=Re("LogoClean"),a=Re("spinner-btn");return J(),se("section",V0e,[g("div",W0e,[g("div",j0e,[g("div",q0e,[X(o,{class:"logo logo-animation",viewBox:"-5 -5 160 160"})]),g("div",Y0e,[g("p",K0e,[ye(" QUICKSILVER "),g("small",X0e,Ue(t.appVersion),1)]),Z0e,t.updateAvailable?(J(),se("p",J0e,"New Version available!")):qe("",!0),t.updateAvailable?(J(),fn(a,{key:1,onClick:t.doUpdate},{default:et(()=>[ye(" Update Now ")]),_:1},8,["onClick"])):qe("",!0)])])])])}const E6=ot(H0e,[["render",Q0e]]),e1e=nt({name:"SerialPassthrough",setup(){return{target:cd(),serial:xd()}},data(){return{serial_port:0,preset:null,presetOptions:[{value:null,text:"Please select an option"},{text:"ExpressLRS",value:{baudrate:42e4,half_duplex:!1,stop_bits:1}},{text:"OpenVTX",value:{baudrate:4800,half_duplex:!0,stop_bits:2}}]}},computed:{serialPorts(){const t=[{value:0,text:"SERIAL_PORT_INVALID"}];for(const[e,n]of Object.entries(this.target.serial_port_names))t.push({value:n,text:e});return t}},methods:{start_passthrough(){return this.serial.serial_passthrough({port:this.serial_port,...this.preset||{}})}}}),t1e={class:"card"},n1e={class:"card-header"},s1e=g("p",{class:"card-header-title"},"Serial Passthrough",-1),i1e={class:"card-content"},r1e={class:"content"},o1e={class:"columns"},a1e={class:"column is-6"},l1e={class:"field"},c1e=g("label",{class:"label"},"Serial Port",-1),u1e={class:"control is-expanded"},d1e={class:"column is-6"},f1e={class:"field"},h1e=g("label",{class:"label"},"Preset",-1),p1e={class:"control is-expanded"},m1e={class:"card-footer"},g1e=g("span",{class:"card-footer-item"},null,-1),_1e=g("span",{class:"card-footer-item"},null,-1);function b1e(t,e,n,s,i,r){const o=Re("tooltip"),a=Re("input-select"),l=Re("spinner-btn");return J(),se("div",t1e,[g("header",n1e,[s1e,X(o,{class:"card-header-icon",entry:"serial_passthrough",size:"lg"})]),g("div",i1e,[g("div",r1e,[g("div",o1e,[g("div",a1e,[g("div",l1e,[c1e,g("div",u1e,[X(a,{class:"is-fullwidth",modelValue:t.serial_port,"onUpdate:modelValue":e[0]||(e[0]=c=>t.serial_port=c),modelModifiers:{number:!0},options:t.serialPorts},null,8,["modelValue","options"])])])]),g("div",d1e,[g("div",f1e,[h1e,g("div",p1e,[X(a,{class:"is-fullwidth",modelValue:t.preset,"onUpdate:modelValue":e[1]||(e[1]=c=>t.preset=c),options:t.presetOptions},null,8,["modelValue","options"])])])])])])]),g("footer",m1e,[g1e,_1e,X(l,{class:"card-footer-item",disabled:t.serial_port==0||t.preset==null,onClick:t.start_passthrough},{default:et(()=>[ye(" Start ")]),_:1},8,["disabled","onClick"])])])}const y1e=ot(e1e,[["render",b1e]]),v1e=nt({name:"Target",setup(){const t=ec();return{info:Tn(),target:cd(),Features:En(()=>t.Features),GyroType:En(()=>t.GyroType)}},computed:{fileRef(){return this.$refs.file},downloadAnchorRef(){return this.$refs.downloadAnchor},features(){return Xs(this.Features).getKeys().filter((t,e)=>this.info.features&1<{var n,s;if((n=e==null?void 0:e.target)!=null&&n.result){const i=_o.parse((s=e==null?void 0:e.target)==null?void 0:s.result);this.target.apply(i)}}),this.fileRef.oninput=()=>{var e,n;(n=(e=this.fileRef)==null?void 0:e.files)!=null&&n.length&&t.readAsText(this.fileRef.files[0])},this.fileRef.click()},downloadTarget(){const e="data:text/yaml;charset=utf-8,"+encodeURIComponent(this.target.yaml),n=new Date().toISOString().substring(0,10),s=`Target_${this.target.name}_${n}.yaml`;this.downloadAnchorRef.setAttribute("href",e),this.downloadAnchorRef.setAttribute("download",s),this.downloadAnchorRef.click()}}});const bd=t=>(Xu("data-v-1ee68027"),t=t(),Zu(),t),w1e={class:"card"},x1e=bd(()=>g("header",{class:"card-header"},[g("p",{class:"card-header-title"},"Target")],-1)),S1e={class:"card-content"},E1e={class:"content column-narrow field-is-2"},T1e={class:"field is-horizontal"},A1e=bd(()=>g("div",{class:"field-label"},[g("label",{class:"label",for:"name"},"Name")],-1)),M1e={class:"field-body"},k1e={class:"field"},R1e={class:"control"},C1e=["value"],O1e={class:"field is-horizontal"},I1e=bd(()=>g("div",{class:"field-label"},[g("label",{class:"label",for:"name"},"MCU")],-1)),L1e={class:"field-body"},P1e={class:"field"},D1e={class:"control"},F1e=["value"],N1e={key:1,class:"field is-horizontal"},$1e=bd(()=>g("div",{class:"field-label"},[g("label",{class:"label",for:"name"},"Name")],-1)),U1e={class:"field-body"},B1e={class:"field"},G1e={class:"control"},z1e=["value"],H1e={key:2,class:"field is-horizontal"},V1e=bd(()=>g("div",{class:"field-label"},[g("label",{class:"label"},"Gyro")],-1)),W1e={class:"field-body"},j1e={class:"field"},q1e={class:"control is-expanded"},Y1e=["value"],K1e={key:3,class:"field is-horizontal"},X1e=bd(()=>g("div",{class:"field-label"},[g("label",{class:"label"},"Features")],-1)),Z1e={class:"field-body"},J1e={class:"field"},Q1e={class:"control is-expanded"},ebe=["value"],tbe={key:0,class:"card-footer"},nbe={accept:".yaml",type:"file",ref:"file",style:{display:"none"}},sbe={ref:"downloadAnchor",target:"_blank"};function ibe(t,e,n,s,i,r){const o=Re("spinner-btn");return J(),se("div",w1e,[x1e,g("div",S1e,[g("div",E1e,[t.info.quicVersionGte("0.2.0")?(J(),se(tt,{key:0},[g("div",T1e,[A1e,g("div",M1e,[g("div",k1e,[g("div",R1e,[g("input",{class:"input is-static",value:t.target.name,readonly:""},null,8,C1e)])])])]),g("div",O1e,[I1e,g("div",L1e,[g("div",P1e,[g("div",D1e,[g("input",{class:"input is-static",value:t.info.mcu,readonly:""},null,8,F1e)])])])])],64)):(J(),se("div",N1e,[$1e,g("div",U1e,[g("div",B1e,[g("div",G1e,[g("input",{class:"input is-static",value:t.info.target_name,readonly:""},null,8,z1e)])])])])),t.info.gyro_id!=null?(J(),se("div",H1e,[V1e,g("div",W1e,[g("div",j1e,[g("div",q1e,[g("input",{class:"input is-static",value:t.info.gyro_name,readonly:""},null,8,Y1e)])])])])):qe("",!0),t.info.features!=null?(J(),se("div",K1e,[X1e,g("div",Z1e,[g("div",J1e,[g("div",Q1e,[g("input",{class:"input is-static",value:t.features,readonly:""},null,8,ebe)])])])])):qe("",!0)])]),t.info.quicVersionGte("0.2.0")?(J(),se("footer",tbe,[X(o,{class:"card-footer-item",onClick:t.downloadTarget},{default:et(()=>[ye(" Save Target ")]),_:1},8,["onClick"]),X(o,{class:"card-footer-item",onClick:t.uploadTarget},{default:et(()=>[ye(" Load Target ")]),_:1},8,["onClick"])])):qe("",!0),g("input",nbe,null,512),g("a",sbe,null,512)])}const rbe=ot(v1e,[["render",ibe],["__scopeId","data-v-1ee68027"]]),obe=nt({name:"Profile",components:{Info:E6,ProfileMetadata:$0e,SerialPassthrough:y1e,Target:rbe},setup(){return{info:Tn(),state:Js()}}}),abe={class:"columns is-multiline"},lbe={class:"column is-12"},cbe={class:"column is-12"},ube={class:"notification is-warning"},dbe=g("br",null,null,-1),fbe=g("br",null,null,-1),hbe={class:"notification is-danger"},pbe=g("br",null,null,-1),mbe=g("br",null,null,-1),gbe={class:"column is-12"},_be={class:"column is-12"},bbe={class:"column is-12"};function ybe(t,e,n,s,i,r){const o=Re("Info"),a=Re("ProfileMetadata"),l=Re("Target"),c=Re("SerialPassthrough");return J(),se("div",abe,[g("div",lbe,[X(o)]),g("div",cbe,[Ve(g("div",ube,[ye(" Incompatible Firmware! "),dbe,ye(" Please update to be able to change settings. "),fbe,ye(" Current profile can be exported and loaded. ")],512),[[eg,t.info.quic_protocol_version<5]]),Ve(g("div",hbe,[ye(" Faillop "+Ue(t.state.failloopMessage)+" ("+Ue(t.state.failloop)+") Detected! ",1),pbe,ye(" Please fix the issue to be able to change settings. "),mbe],512),[[eg,t.state.failloop>0]])]),g("div",gbe,[X(a)]),g("div",_be,[X(l)]),g("div",bbe,[X(c)])])}const vbe=ot(obe,[["render",ybe]]);function Oc(t){return new Promise(e=>{setTimeout(e,t)})}class wbe{constructor(e){$e(this,"progressCallback");this.device=e}onProgress(e){this.progressCallback=e}async open(){await this.device.open(),await this.device.claimInterface(0)}async close(){try{await this.device.close()}catch(e){st.warn("flash","Close failed",e)}}progress(e,n,s){this.progressCallback&&this.progressCallback({task:e,current:n,total:s})}async getString(e){const n=await this.device.controlTransferIn({recipient:"device",requestType:"standard",request:6,value:768|e,index:0},255);if((n==null?void 0:n.status)!="ok")throw new Error(n.status);const s=n.data,i=s.getUint8(0);let r="";for(let o=2;o{const s=await this.controlTransferIn(3,0,0,6);if(s[4]==2)return s;const i=s[1]|s[2]<<8|s[3]<<16;return await Oc(i),n()},n=async()=>(await this.controlTransferOut(4,0,0),e());return e()}async getChipInfo(){const e=s=>{s=="@External Flash /0x90000000/1001*128Kg,3*128Kg,20*128Ka"&&(s="@External Flash /0x90000000/998*128Kg,1*128Kg,4*128Kg,21*128Ka"),s=s.replace("@Option byte","@Option Bytes");const r=s.replace(/[^\x20-\x7E]+/g,"").split("/");if(r.length>3&&(st.info("flash",'parseDescriptor: shrinking long descriptor "'+s+'"'),r.length=3),!r[0].startsWith("@"))return null;const o=r[0].trim().replace("@",""),a=parseInt(r[1]),l=[];let c=0;const u=r[2].split(",");if(u.length<1)return null;for(let f=0;f>8&255,e>>16&255,e>>24&255];await this.controlTransferOut(1,0,0,s);const i=await this.controlTransferIn(3,0,0,6);if(i[4]!=4)throw new Error("Failed to request address load");const r=i[1]|i[2]<<8|i[3]<<16;await Oc(r);const o=await this.controlTransferIn(3,0,0,6);if(o[4]!=5&&n)throw new Error("Failed to request address load");return o}async unlockOptionBytes(e,n){const s=async()=>{st.info("flash","Initiate read unprotect"),await this.controlTransferOut(1,0,0,[146]);const o=await this.controlTransferIn(3,0,0,6);if(o[4]!=4)throw new Error("Failed to initiate unprotect memory command");const l=(o[1]|o[2]<<8|o[3]<<16)+2e4;await Oc(l);try{const c=await this.controlTransferIn(3,0,0,6);throw st.info("flash","Failed to execute unprotect memory command"),st.info("flash",c),new Error("Failed to execute unprotect memory command")}catch{st.info("flash","Unprotect memory command ran successfully. Unplug flight controller. Connect again in DFU mode and try flashing again.")}},i=async()=>{const o=await this.controlTransferIn(2,2,0,n);return(await this.controlTransferIn(3,0,0,6))[4]==9&&o.length==n?(st.info("flash","Option bytes read successfully"),st.info("flash","Chip does not appear read protected"),this.clearStatus()):(st.info("flash","Option bytes could not be read. Quite possibly read protected."),await this.clearStatus(),s())};await this.clearStatus();const r=await this.loadAddress(e,!1);if(r[4]==10&&r[0]==11)return await this.clearStatus(),s();if(r[4]==5)return st.info("flash","Address load for option bytes sector succeeded."),await this.clearStatus(),i();throw new Error("Address load failed")}async erasePages(e){const n=[];for(let i=0;i>8&255,r>>16&255,r>>24&255];st.info("flash","Erasing. sector "+i.sector+", page "+i.page+" @ 0x"+r.toString(16)),await this.controlTransferOut(1,0,0,o);const a=await this.controlTransferIn(3,0,0,6);if(a[4]!=4)throw new Error("Failed to initiate page erase, page 0x"+r.toString(16));const l=a[1]|a[2]<<8|a[3]<<16;await Oc(l);const c=await this.controlTransferIn(3,0,0,6);if(c[4]!=5)if(c[4]==4){if(st.info("flash","erase_page: dfuDNBUSY after timeout, clearing"),await this.clearStatus(),(await this.controlTransferIn(3,0,0,6))[4]!=2)throw new Error("Failed to erase page 0x"+r.toString(16)+" (did not reach dfuIDLE after clearing")}else throw new Error("Failed to erase page 0x"+r.toString(16))}}async upload(e,n){st.info("flash","Writing data...");const s=e.segment_bytes_total;let i=0;for(const r of e.segments){let o=r.address,a=2,l=0;for(await this.loadAddress(o);lr.data.length&&(c=r.data.length-l);const u=r.data.slice(l,l+c);o+=c,l+=c,i+=c,this.progress("write",i,s),this.controlTransferOut(1,a++,0,[...u]);const d=await this.controlTransferIn(3,0,0,6);if(d[4]!=4)throw new Error("Failed to initiate write "+c+"bytes to 0x"+o.toString(16));const f=d[1]|d[2]<<8|d[3]<<16;if(await Oc(f),(await this.controlTransferIn(3,0,0,6))[4]!=5)throw new Error("Failed to write "+c+"bytes to 0x"+o.toString(16))}}}async verify(e,n){st.info("flash","Verifying data...");const s=e.segment_bytes_total;let i=0;for(const r of e.segments){let o=r.address,a=2,l=0;for(await this.clearStatus(),await this.loadAddress(o),await this.clearStatus();lr.data.length&&(c=r.data.length-l);const u=await this.controlTransferIn(2,a++,0,c);for(let d=0;di)throw new Error("Not Enough flash space "+e.linear_bytes_total+"> "+i);let r=2048;try{r=(await this.getFunctionalDescriptor()).wTransferSize}catch{}await this.clearStatus(),n.internal_flash&&await this.unlockOptionBytes(n.option_bytes.start_address,n.option_bytes.total_size),await this.erasePages(s),await this.upload(e,r),await this.verify(e,r),await Oc(500),await this.leave(e)}}const xbe=new Uint8Array([1,0,170,18]),Sbe={stm32f411:134266880,stm32f765:134316032,stm32f745:134316032,stm32h743:134348800,stm32f405:134266880,stm32f722:134266880,at32f435:135200768,at32f435m:135200768};class Mg{constructor(e,n){$e(this,"start_linear_address");$e(this,"start_segment_address");$e(this,"segments",[]);this.start_linear_address=e,this.start_segment_address=n}get linear_bytes_total(){return this.end_address-this.start_address}get segment_bytes_total(){return this.segments.reduce((e,n)=>e+=n.data.length,0)}get start_address(){return this.segments[0].address}get end_address(){return this.segments[this.segments.length-1].address+this.segments[this.segments.length-1].data.length}findSegment(e){for(let n=0;n=e&&e<=this.segments[n].address+this.segments[n].data.byteLength)return this.segments[n];return this.segments.push({address:e,data:new Uint8Array}),this.segments[this.segments.length-1]}patch(e,n){n=vf(xbe,n);const s=this.findSegment(e),i=s.address-e,r=i+n.byteLength;s.data.byteLength>8)+c+u&255;for(let p=0;p{this.progressCallback&&this.progressCallback(s)}),await n.open(),await n.flash(e),await n.close()}}function Ao(){return typeof navigator=="object"&&"userAgent"in navigator?navigator.userAgent:typeof process=="object"&&process.version!==void 0?`Node.js/${process.version.substr(1)} (${process.platform}; ${process.arch})`:""}const Abe=Object.freeze(Object.defineProperty({__proto__:null,getUserAgent:Ao},Symbol.toStringTag,{value:"Module"}));var e0={exports:{}},Mbe=T6;function T6(t,e,n,s){if(typeof n!="function")throw new Error("method for before hook must be a function");return s||(s={}),Array.isArray(e)?e.reverse().reduce(function(i,r){return T6.bind(null,t,r,i,s)},n)():Promise.resolve().then(function(){return t.registry[e]?t.registry[e].reduce(function(i,r){return r.hook.bind(null,i,s)},n)():n(s)})}var kbe=Rbe;function Rbe(t,e,n,s){var i=s;t.registry[n]||(t.registry[n]=[]),e==="before"&&(s=function(r,o){return Promise.resolve().then(i.bind(null,o)).then(r.bind(null,o))}),e==="after"&&(s=function(r,o){var a;return Promise.resolve().then(r.bind(null,o)).then(function(l){return a=l,i(a,o)}).then(function(){return a})}),e==="error"&&(s=function(r,o){return Promise.resolve().then(r.bind(null,o)).catch(function(a){return i(a,o)})}),t.registry[n].push({hook:s,orig:i})}var Cbe=Obe;function Obe(t,e,n){if(t.registry[e]){var s=t.registry[e].map(function(i){return i.orig}).indexOf(n);s!==-1&&t.registry[e].splice(s,1)}}var A6=Mbe,Ibe=kbe,Lbe=Cbe,VT=Function.bind,WT=VT.bind(VT);function M6(t,e,n){var s=WT(Lbe,null).apply(null,n?[e,n]:[e]);t.api={remove:s},t.remove=s,["before","error","after","wrap"].forEach(function(i){var r=n?[e,i,n]:[e,i];t[i]=t.api[i]=WT(Ibe,null).apply(null,r)})}function Pbe(){var t="h",e={registry:{}},n=A6.bind(null,e,t);return M6(n,e,t),n}function k6(){var t={registry:{}},e=A6.bind(null,t);return M6(e,t),e}var jT=!1;function yd(){return jT||(console.warn('[before-after-hook]: "Hook()" repurposing warning, use "Hook.Collection()". Read more: https://git.io/upgrade-before-after-hook-to-1.4'),jT=!0),k6()}yd.Singular=Pbe.bind();yd.Collection=k6.bind();e0.exports=yd;e0.exports.Hook=yd;e0.exports.Singular=yd.Singular;var Dbe=e0.exports.Collection=yd.Collection;/*! + * is-plain-object + * + * Copyright (c) 2014-2017, Jon Schlinkert. + * Released under the MIT License. + */function qT(t){return Object.prototype.toString.call(t)==="[object Object]"}function R6(t){var e,n;return qT(t)===!1?!1:(e=t.constructor,e===void 0?!0:(n=e.prototype,!(qT(n)===!1||n.hasOwnProperty("isPrototypeOf")===!1)))}function Fbe(t){return t?Object.keys(t).reduce((e,n)=>(e[n.toLowerCase()]=t[n],e),{}):{}}function C6(t,e){const n=Object.assign({},t);return Object.keys(e).forEach(s=>{R6(e[s])?s in t?n[s]=C6(t[s],e[s]):Object.assign(n,{[s]:e[s]}):Object.assign(n,{[s]:e[s]})}),n}function YT(t){for(const e in t)t[e]===void 0&&delete t[e];return t}function Ay(t,e,n){if(typeof e=="string"){let[i,r]=e.split(" ");n=Object.assign(r?{method:i,url:r}:{url:i},n)}else n=Object.assign({},e);n.headers=Fbe(n.headers),YT(n),YT(n.headers);const s=C6(t||{},n);return t&&t.mediaType.previews.length&&(s.mediaType.previews=t.mediaType.previews.filter(i=>!s.mediaType.previews.includes(i)).concat(s.mediaType.previews)),s.mediaType.previews=s.mediaType.previews.map(i=>i.replace(/-preview/,"")),s}function Nbe(t,e){const n=/\?/.test(t)?"&":"?",s=Object.keys(e);return s.length===0?t:t+n+s.map(i=>i==="q"?"q="+e.q.split("+").map(encodeURIComponent).join("+"):`${i}=${encodeURIComponent(e[i])}`).join("&")}var $be=/\{[^}]+\}/g;function Ube(t){return t.replace(/^\W+|\W+$/g,"").split(/,/)}function Bbe(t){const e=t.match($be);return e?e.map(Ube).reduce((n,s)=>n.concat(s),[]):[]}function KT(t,e){return Object.keys(t).filter(n=>!e.includes(n)).reduce((n,s)=>(n[s]=t[s],n),{})}function O6(t){return t.split(/(%[0-9A-Fa-f]{2})/g).map(function(e){return/%[0-9A-Fa-f]/.test(e)||(e=encodeURI(e).replace(/%5B/g,"[").replace(/%5D/g,"]")),e}).join("")}function Yc(t){return encodeURIComponent(t).replace(/[!'()*]/g,function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()})}function qd(t,e,n){return e=t==="+"||t==="#"?O6(e):Yc(e),n?Yc(n)+"="+e:e}function Ic(t){return t!=null}function Y1(t){return t===";"||t==="&"||t==="?"}function Gbe(t,e,n,s){var i=t[n],r=[];if(Ic(i)&&i!=="")if(typeof i=="string"||typeof i=="number"||typeof i=="boolean")i=i.toString(),s&&s!=="*"&&(i=i.substring(0,parseInt(s,10))),r.push(qd(e,i,Y1(e)?n:""));else if(s==="*")Array.isArray(i)?i.filter(Ic).forEach(function(o){r.push(qd(e,o,Y1(e)?n:""))}):Object.keys(i).forEach(function(o){Ic(i[o])&&r.push(qd(e,i[o],o))});else{const o=[];Array.isArray(i)?i.filter(Ic).forEach(function(a){o.push(qd(e,a))}):Object.keys(i).forEach(function(a){Ic(i[a])&&(o.push(Yc(a)),o.push(qd(e,i[a].toString())))}),Y1(e)?r.push(Yc(n)+"="+o.join(",")):o.length!==0&&r.push(o.join(","))}else e===";"?Ic(i)&&r.push(Yc(n)):i===""&&(e==="&"||e==="?")?r.push(Yc(n)+"="):i===""&&r.push("");return r}function zbe(t){return{expand:Hbe.bind(null,t)}}function Hbe(t,e){var n=["+","#",".","/",";","?","&"];return t.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g,function(s,i,r){if(i){let a="";const l=[];if(n.indexOf(i.charAt(0))!==-1&&(a=i.charAt(0),i=i.substr(1)),i.split(/,/g).forEach(function(c){var u=/([^:\*]*)(?::(\d+)|(\*))?/.exec(c);l.push(Gbe(e,a,u[1],u[2]||u[3]))}),a&&a!=="+"){var o=",";return a==="?"?o="&":a!=="#"&&(o=a),(l.length!==0?a:"")+l.join(o)}else return l.join(",")}else return O6(r)})}function I6(t){let e=t.method.toUpperCase(),n=(t.url||"/").replace(/:([a-z]\w+)/g,"{$1}"),s=Object.assign({},t.headers),i,r=KT(t,["method","baseUrl","url","headers","request","mediaType"]);const o=Bbe(n);n=zbe(n).expand(r),/^http/.test(n)||(n=t.baseUrl+n);const a=Object.keys(t).filter(u=>o.includes(u)).concat("baseUrl"),l=KT(r,a);if(!/application\/octet-stream/i.test(s.accept)&&(t.mediaType.format&&(s.accept=s.accept.split(/,/).map(u=>u.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/,`application/vnd$1$2.${t.mediaType.format}`)).join(",")),t.mediaType.previews.length)){const u=s.accept.match(/[\w-]+(?=-preview)/g)||[];s.accept=u.concat(t.mediaType.previews).map(d=>{const f=t.mediaType.format?`.${t.mediaType.format}`:"+json";return`application/vnd.github.${d}-preview${f}`}).join(",")}return["GET","HEAD"].includes(e)?n=Nbe(n,l):"data"in l?i=l.data:Object.keys(l).length&&(i=l),!s["content-type"]&&typeof i<"u"&&(s["content-type"]="application/json; charset=utf-8"),["PATCH","PUT"].includes(e)&&typeof i>"u"&&(i=""),Object.assign({method:e,url:n,headers:s},typeof i<"u"?{body:i}:null,t.request?{request:t.request}:null)}function Vbe(t,e,n){return I6(Ay(t,e,n))}function L6(t,e){const n=Ay(t,e),s=Vbe.bind(null,n);return Object.assign(s,{DEFAULTS:n,defaults:L6.bind(null,n),merge:Ay.bind(null,n),parse:I6})}var Wbe="7.0.6",jbe=`octokit-endpoint.js/${Wbe} ${Ao()}`,qbe={method:"GET",baseUrl:"https://api.github.com",headers:{accept:"application/vnd.github.v3+json","user-agent":jbe},mediaType:{format:"",previews:[]}},Ybe=L6(null,qbe),Zn=typeof globalThis<"u"&&globalThis||typeof self<"u"&&self||typeof global<"u"&&global||{},gs={searchParams:"URLSearchParams"in Zn,iterable:"Symbol"in Zn&&"iterator"in Symbol,blob:"FileReader"in Zn&&"Blob"in Zn&&function(){try{return new Blob,!0}catch{return!1}}(),formData:"FormData"in Zn,arrayBuffer:"ArrayBuffer"in Zn};function Kbe(t){return t&&DataView.prototype.isPrototypeOf(t)}if(gs.arrayBuffer)var Xbe=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],Zbe=ArrayBuffer.isView||function(t){return t&&Xbe.indexOf(Object.prototype.toString.call(t))>-1};function vd(t){if(typeof t!="string"&&(t=String(t)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(t)||t==="")throw new TypeError('Invalid character in header field name: "'+t+'"');return t.toLowerCase()}function yx(t){return typeof t!="string"&&(t=String(t)),t}function vx(t){var e={next:function(){var n=t.shift();return{done:n===void 0,value:n}}};return gs.iterable&&(e[Symbol.iterator]=function(){return e}),e}function Un(t){this.map={},t instanceof Un?t.forEach(function(e,n){this.append(n,e)},this):Array.isArray(t)?t.forEach(function(e){if(e.length!=2)throw new TypeError("Headers constructor: expected name/value pair to be length 2, found"+e.length);this.append(e[0],e[1])},this):t&&Object.getOwnPropertyNames(t).forEach(function(e){this.append(e,t[e])},this)}Un.prototype.append=function(t,e){t=vd(t),e=yx(e);var n=this.map[t];this.map[t]=n?n+", "+e:e};Un.prototype.delete=function(t){delete this.map[vd(t)]};Un.prototype.get=function(t){return t=vd(t),this.has(t)?this.map[t]:null};Un.prototype.has=function(t){return this.map.hasOwnProperty(vd(t))};Un.prototype.set=function(t,e){this.map[vd(t)]=yx(e)};Un.prototype.forEach=function(t,e){for(var n in this.map)this.map.hasOwnProperty(n)&&t.call(e,this.map[n],n,this)};Un.prototype.keys=function(){var t=[];return this.forEach(function(e,n){t.push(n)}),vx(t)};Un.prototype.values=function(){var t=[];return this.forEach(function(e){t.push(e)}),vx(t)};Un.prototype.entries=function(){var t=[];return this.forEach(function(e,n){t.push([n,e])}),vx(t)};gs.iterable&&(Un.prototype[Symbol.iterator]=Un.prototype.entries);function K1(t){if(!t._noBody){if(t.bodyUsed)return Promise.reject(new TypeError("Already read"));t.bodyUsed=!0}}function P6(t){return new Promise(function(e,n){t.onload=function(){e(t.result)},t.onerror=function(){n(t.error)}})}function Jbe(t){var e=new FileReader,n=P6(e);return e.readAsArrayBuffer(t),n}function Qbe(t){var e=new FileReader,n=P6(e),s=/charset=([A-Za-z0-9_-]+)/.exec(t.type),i=s?s[1]:"utf-8";return e.readAsText(t,i),n}function eye(t){for(var e=new Uint8Array(t),n=new Array(e.length),s=0;s-1?e:t}function Wl(t,e){if(!(this instanceof Wl))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');e=e||{};var n=e.body;if(t instanceof Wl){if(t.bodyUsed)throw new TypeError("Already read");this.url=t.url,this.credentials=t.credentials,e.headers||(this.headers=new Un(t.headers)),this.method=t.method,this.mode=t.mode,this.signal=t.signal,!n&&t._bodyInit!=null&&(n=t._bodyInit,t.bodyUsed=!0)}else this.url=String(t);if(this.credentials=e.credentials||this.credentials||"same-origin",(e.headers||!this.headers)&&(this.headers=new Un(e.headers)),this.method=nye(e.method||this.method||"GET"),this.mode=e.mode||this.mode||null,this.signal=e.signal||this.signal||function(){if("AbortController"in Zn){var r=new AbortController;return r.signal}}(),this.referrer=null,(this.method==="GET"||this.method==="HEAD")&&n)throw new TypeError("Body not allowed for GET or HEAD requests");if(this._initBody(n),(this.method==="GET"||this.method==="HEAD")&&(e.cache==="no-store"||e.cache==="no-cache")){var s=/([?&])_=[^&]*/;if(s.test(this.url))this.url=this.url.replace(s,"$1_="+new Date().getTime());else{var i=/\?/;this.url+=(i.test(this.url)?"&":"?")+"_="+new Date().getTime()}}}Wl.prototype.clone=function(){return new Wl(this,{body:this._bodyInit})};function sye(t){var e=new FormData;return t.trim().split("&").forEach(function(n){if(n){var s=n.split("="),i=s.shift().replace(/\+/g," "),r=s.join("=").replace(/\+/g," ");e.append(decodeURIComponent(i),decodeURIComponent(r))}}),e}function iye(t){var e=new Un,n=t.replace(/\r?\n[\t ]+/g," ");return n.split("\r").map(function(s){return s.indexOf(` +`)===0?s.substr(1,s.length):s}).forEach(function(s){var i=s.split(":"),r=i.shift().trim();if(r){var o=i.join(":").trim();try{e.append(r,o)}catch(a){console.warn("Response "+a.message)}}}),e}D6.call(Wl.prototype);function kr(t,e){if(!(this instanceof kr))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');if(e||(e={}),this.type="default",this.status=e.status===void 0?200:e.status,this.status<200||this.status>599)throw new RangeError("Failed to construct 'Response': The status provided (0) is outside the range [200, 599].");this.ok=this.status>=200&&this.status<300,this.statusText=e.statusText===void 0?"":""+e.statusText,this.headers=new Un(e.headers),this.url=e.url||"",this._initBody(t)}D6.call(kr.prototype);kr.prototype.clone=function(){return new kr(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new Un(this.headers),url:this.url})};kr.error=function(){var t=new kr(null,{status:200,statusText:""});return t.ok=!1,t.status=0,t.type="error",t};var rye=[301,302,303,307,308];kr.redirect=function(t,e){if(rye.indexOf(e)===-1)throw new RangeError("Invalid status code");return new kr(null,{status:e,headers:{location:t}})};var al=Zn.DOMException;try{new al}catch{al=function(e,n){this.message=e,this.name=n;var s=Error(e);this.stack=s.stack},al.prototype=Object.create(Error.prototype),al.prototype.constructor=al}function F6(t,e){return new Promise(function(n,s){var i=new Wl(t,e);if(i.signal&&i.signal.aborted)return s(new al("Aborted","AbortError"));var r=new XMLHttpRequest;function o(){r.abort()}r.onload=function(){var c={statusText:r.statusText,headers:iye(r.getAllResponseHeaders()||"")};i.url.indexOf("file://")===0&&(r.status<200||r.status>599)?c.status=200:c.status=r.status,c.url="responseURL"in r?r.responseURL:c.headers.get("X-Request-URL");var u="response"in r?r.response:r.responseText;setTimeout(function(){n(new kr(u,c))},0)},r.onerror=function(){setTimeout(function(){s(new TypeError("Network request failed"))},0)},r.ontimeout=function(){setTimeout(function(){s(new TypeError("Network request timed out"))},0)},r.onabort=function(){setTimeout(function(){s(new al("Aborted","AbortError"))},0)};function a(c){try{return c===""&&Zn.location.href?Zn.location.href:c}catch{return c}}if(r.open(i.method,a(i.url),!0),i.credentials==="include"?r.withCredentials=!0:i.credentials==="omit"&&(r.withCredentials=!1),"responseType"in r&&(gs.blob?r.responseType="blob":gs.arrayBuffer&&(r.responseType="arraybuffer")),e&&typeof e.headers=="object"&&!(e.headers instanceof Un||Zn.Headers&&e.headers instanceof Zn.Headers)){var l=[];Object.getOwnPropertyNames(e.headers).forEach(function(c){l.push(vd(c)),r.setRequestHeader(c,yx(e.headers[c]))}),i.headers.forEach(function(c,u){l.indexOf(u)===-1&&r.setRequestHeader(u,c)})}else i.headers.forEach(function(c,u){r.setRequestHeader(u,c)});i.signal&&(i.signal.addEventListener("abort",o),r.onreadystatechange=function(){r.readyState===4&&i.signal.removeEventListener("abort",o)}),r.send(typeof i._bodyInit>"u"?null:i._bodyInit)})}F6.polyfill=!0;Zn.fetch||(Zn.fetch=F6,Zn.Headers=Un,Zn.Request=Wl,Zn.Response=kr);var oye=self.fetch.bind(self);const aye=Jl(oye);class My extends Error{constructor(e){super(e),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor),this.name="Deprecation"}}var wx={exports:{}},lye=N6;function N6(t,e){if(t&&e)return N6(t)(e);if(typeof t!="function")throw new TypeError("need wrapper function");return Object.keys(t).forEach(function(s){n[s]=t[s]}),n;function n(){for(var s=new Array(arguments.length),i=0;iconsole.warn(t)),dye=B6(t=>console.warn(t));class ll extends Error{constructor(e,n,s){super(e),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor),this.name="HttpError",this.status=n;let i;"headers"in s&&typeof s.headers<"u"&&(i=s.headers),"response"in s&&(this.response=s.response,i=s.response.headers);const r=Object.assign({},s.request);s.request.headers.authorization&&(r.headers=Object.assign({},s.request.headers,{authorization:s.request.headers.authorization.replace(/ .*$/," [REDACTED]")})),r.url=r.url.replace(/\bclient_secret=\w+/g,"client_secret=[REDACTED]").replace(/\baccess_token=\w+/g,"access_token=[REDACTED]"),this.request=r,Object.defineProperty(this,"code",{get(){return uye(new My("[@octokit/request-error] `error.code` is deprecated, use `error.status`.")),n}}),Object.defineProperty(this,"headers",{get(){return dye(new My("[@octokit/request-error] `error.headers` is deprecated, use `error.response.headers`.")),i||{}}})}}var fye="6.2.8";function hye(t){return t.arrayBuffer()}function ZT(t){const e=t.request&&t.request.log?t.request.log:console;(R6(t.body)||Array.isArray(t.body))&&(t.body=JSON.stringify(t.body));let n={},s,i;return(t.request&&t.request.fetch||globalThis.fetch||aye)(t.url,Object.assign({method:t.method,body:t.body,headers:t.headers,redirect:t.redirect,...t.body&&{duplex:"half"}},t.request)).then(async o=>{i=o.url,s=o.status;for(const a of o.headers)n[a[0]]=a[1];if("deprecation"in n){const a=n.link&&n.link.match(/<([^>]+)>; rel="deprecation"/),l=a&&a.pop();e.warn(`[@octokit/request] "${t.method} ${t.url}" is deprecated. It is scheduled to be removed on ${n.sunset}${l?`. See ${l}`:""}`)}if(!(s===204||s===205)){if(t.method==="HEAD"){if(s<400)return;throw new ll(o.statusText,s,{response:{url:i,status:s,headers:n,data:void 0},request:t})}if(s===304)throw new ll("Not modified",s,{response:{url:i,status:s,headers:n,data:await X1(o)},request:t});if(s>=400){const a=await X1(o);throw new ll(pye(a),s,{response:{url:i,status:s,headers:n,data:a},request:t})}return X1(o)}}).then(o=>({status:s,url:i,headers:n,data:o})).catch(o=>{throw o instanceof ll||o.name==="AbortError"?o:new ll(o.message,500,{request:t})})}async function X1(t){const e=t.headers.get("content-type");return/application\/json/.test(e)?t.json():!e||/^text\/|charset=utf-8$/.test(e)?t.text():hye(t)}function pye(t){return typeof t=="string"?t:"message"in t?Array.isArray(t.errors)?`${t.message}: ${t.errors.map(JSON.stringify).join(", ")}`:t.message:`Unknown error: ${JSON.stringify(t)}`}function ky(t,e){const n=t.defaults(e);return Object.assign(function(i,r){const o=n.merge(i,r);if(!o.request||!o.request.hook)return ZT(n.parse(o));const a=(l,c)=>ZT(n.parse(n.merge(l,c)));return Object.assign(a,{endpoint:n,defaults:ky.bind(null,n)}),o.request.hook(a,o)},{endpoint:n,defaults:ky.bind(null,n)})}var Qn=ky(Ybe,{headers:{"user-agent":`octokit-request.js/${fye} ${Ao()}`}}),mye="5.0.6";function gye(t){return`Request failed due to following response errors: +`+t.errors.map(e=>` - ${e.message}`).join(` +`)}var _ye=class extends Error{constructor(t,e,n){super(gye(n)),this.request=t,this.headers=e,this.response=n,this.name="GraphqlResponseError",this.errors=n.errors,this.data=n.data,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},bye=["method","baseUrl","url","headers","request","query","mediaType"],yye=["query","method","url"],JT=/\/api\/v3\/?$/;function vye(t,e,n){if(n){if(typeof e=="string"&&"query"in n)return Promise.reject(new Error('[@octokit/graphql] "query" cannot be used as variable name'));for(const o in n)if(yye.includes(o))return Promise.reject(new Error(`[@octokit/graphql] "${o}" cannot be used as variable name`))}const s=typeof e=="string"?Object.assign({query:e},n):e,i=Object.keys(s).reduce((o,a)=>bye.includes(a)?(o[a]=s[a],o):(o.variables||(o.variables={}),o.variables[a]=s[a],o),{}),r=s.baseUrl||t.endpoint.DEFAULTS.baseUrl;return JT.test(r)&&(i.url=r.replace(JT,"/api/graphql")),t(i).then(o=>{if(o.data.errors){const a={};for(const l of Object.keys(o.headers))a[l]=o.headers[l];throw new _ye(i,a,o.data)}return o.data.data})}function xx(t,e){const n=t.defaults(e);return Object.assign((i,r)=>vye(n,i,r),{defaults:xx.bind(null,n),endpoint:n.endpoint})}xx(Qn,{headers:{"user-agent":`octokit-graphql.js/${mye} ${Ao()}`},method:"POST",url:"/graphql"});function wye(t){return xx(t,{method:"POST",url:"/graphql"})}var xye=/^v1\./,Sye=/^ghs_/,Eye=/^ghu_/;async function Tye(t){const e=t.split(/\./).length===3,n=xye.test(t)||Sye.test(t),s=Eye.test(t);return{type:"token",token:t,tokenType:e?"app":n?"installation":s?"user-to-server":"oauth"}}function Aye(t){return t.split(/\./).length===3?`bearer ${t}`:`token ${t}`}async function Mye(t,e,n,s){const i=e.endpoint.merge(n,s);return i.headers.authorization=Aye(t),e(i)}var kye=function(e){if(!e)throw new Error("[@octokit/auth-token] No token passed to createTokenAuth");if(typeof e!="string")throw new Error("[@octokit/auth-token] Token passed to createTokenAuth is not a string");return e=e.replace(/^(token|bearer) +/i,""),Object.assign(Tye.bind(null,e),{hook:Mye.bind(null,e)})},G6="4.2.4",jh=class{static defaults(e){return class extends this{constructor(...s){const i=s[0]||{};if(typeof e=="function"){super(e(i));return}super(Object.assign({},e,i,i.userAgent&&e.userAgent?{userAgent:`${i.userAgent} ${e.userAgent}`}:null))}}}static plugin(...e){var n;const s=this.plugins;return n=class extends this{},n.plugins=s.concat(e.filter(r=>!s.includes(r))),n}constructor(e={}){const n=new Dbe,s={baseUrl:Qn.endpoint.DEFAULTS.baseUrl,headers:{},request:Object.assign({},e.request,{hook:n.bind(null,"request")}),mediaType:{previews:[],format:""}};if(s.headers["user-agent"]=[e.userAgent,`octokit-core.js/${G6} ${Ao()}`].filter(Boolean).join(" "),e.baseUrl&&(s.baseUrl=e.baseUrl),e.previews&&(s.mediaType.previews=e.previews),e.timeZone&&(s.headers["time-zone"]=e.timeZone),this.request=Qn.defaults(s),this.graphql=wye(this.request).defaults(s),this.log=Object.assign({debug:()=>{},info:()=>{},warn:console.warn.bind(console),error:console.error.bind(console)},e.log),this.hook=n,e.authStrategy){const{authStrategy:r,...o}=e,a=r(Object.assign({request:this.request,log:this.log,octokit:this,octokitOptions:o},e.auth));n.wrap("request",a.hook),this.auth=a}else if(!e.auth)this.auth=async()=>({type:"unauthenticated"});else{const r=kye(e.auth);n.wrap("request",r.hook),this.auth=r}this.constructor.plugins.forEach(r=>{Object.assign(this,r(this,e))})}};jh.VERSION=G6;jh.plugins=[];const Rye=Object.freeze(Object.defineProperty({__proto__:null,Octokit:jh},Symbol.toStringTag,{value:"Module"}));var Cye="6.1.2";function Oye(t){if(!t.data)return{...t,data:[]};if(!("total_count"in t.data&&!("url"in t.data)))return t;const n=t.data.incomplete_results,s=t.data.repository_selection,i=t.data.total_count;delete t.data.incomplete_results,delete t.data.repository_selection,delete t.data.total_count;const r=Object.keys(t.data)[0],o=t.data[r];return t.data=o,typeof n<"u"&&(t.data.incomplete_results=n),typeof s<"u"&&(t.data.repository_selection=s),t.data.total_count=i,t}function Sx(t,e,n){const s=typeof e=="function"?e.endpoint(n):t.request.endpoint(e,n),i=typeof e=="function"?e:t.request,r=s.method,o=s.headers;let a=s.url;return{[Symbol.asyncIterator]:()=>({async next(){if(!a)return{done:!0};try{const l=await i({method:r,url:a,headers:o}),c=Oye(l);return a=((c.headers.link||"").match(/<([^>]+)>;\s*rel="next"/)||[])[1],{value:c}}catch(l){if(l.status!==409)throw l;return a="",{value:{status:200,headers:{},data:[]}}}}})}}function z6(t,e,n,s){return typeof n=="function"&&(s=n,n=void 0),H6(t,[],Sx(t,e,n)[Symbol.asyncIterator](),s)}function H6(t,e,n,s){return n.next().then(i=>{if(i.done)return e;let r=!1;function o(){r=!0}return e=e.concat(s?s(i.value,o):i.value.data),r?e:H6(t,e,n,s)})}var V6=Object.assign(z6,{iterator:Sx});function W6(t){return{paginate:Object.assign(z6.bind(null,t),{iterator:Sx.bind(null,t)})}}W6.VERSION=Cye;var Iye="7.2.3",Lye={actions:{addCustomLabelsToSelfHostedRunnerForOrg:["POST /orgs/{org}/actions/runners/{runner_id}/labels"],addCustomLabelsToSelfHostedRunnerForRepo:["POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],addSelectedRepoToRequiredWorkflow:["PUT /orgs/{org}/actions/required_workflows/{required_workflow_id}/repositories/{repository_id}"],approveWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve"],cancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel"],createEnvironmentVariable:["POST /repositories/{repository_id}/environments/{environment_name}/variables"],createOrUpdateEnvironmentSecret:["PUT /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}"],createOrgVariable:["POST /orgs/{org}/actions/variables"],createRegistrationTokenForOrg:["POST /orgs/{org}/actions/runners/registration-token"],createRegistrationTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/registration-token"],createRemoveTokenForOrg:["POST /orgs/{org}/actions/runners/remove-token"],createRemoveTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/remove-token"],createRepoVariable:["POST /repos/{owner}/{repo}/actions/variables"],createRequiredWorkflow:["POST /orgs/{org}/actions/required_workflows"],createWorkflowDispatch:["POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches"],deleteActionsCacheById:["DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}"],deleteActionsCacheByKey:["DELETE /repos/{owner}/{repo}/actions/caches{?key,ref}"],deleteArtifact:["DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],deleteEnvironmentSecret:["DELETE /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],deleteEnvironmentVariable:["DELETE /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],deleteOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}"],deleteOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}"],deleteRepoVariable:["DELETE /repos/{owner}/{repo}/actions/variables/{name}"],deleteRequiredWorkflow:["DELETE /orgs/{org}/actions/required_workflows/{required_workflow_id}"],deleteSelfHostedRunnerFromOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}"],deleteSelfHostedRunnerFromRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}"],deleteWorkflowRun:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}"],deleteWorkflowRunLogs:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],disableSelectedRepositoryGithubActionsOrganization:["DELETE /orgs/{org}/actions/permissions/repositories/{repository_id}"],disableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable"],downloadArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}"],downloadJobLogsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs"],downloadWorkflowRunAttemptLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs"],downloadWorkflowRunLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],enableSelectedRepositoryGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories/{repository_id}"],enableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable"],generateRunnerJitconfigForOrg:["POST /orgs/{org}/actions/runners/generate-jitconfig"],generateRunnerJitconfigForRepo:["POST /repos/{owner}/{repo}/actions/runners/generate-jitconfig"],getActionsCacheList:["GET /repos/{owner}/{repo}/actions/caches"],getActionsCacheUsage:["GET /repos/{owner}/{repo}/actions/cache/usage"],getActionsCacheUsageByRepoForOrg:["GET /orgs/{org}/actions/cache/usage-by-repository"],getActionsCacheUsageForOrg:["GET /orgs/{org}/actions/cache/usage"],getAllowedActionsOrganization:["GET /orgs/{org}/actions/permissions/selected-actions"],getAllowedActionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/selected-actions"],getArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],getEnvironmentPublicKey:["GET /repositories/{repository_id}/environments/{environment_name}/secrets/public-key"],getEnvironmentSecret:["GET /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],getEnvironmentVariable:["GET /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],getGithubActionsDefaultWorkflowPermissionsOrganization:["GET /orgs/{org}/actions/permissions/workflow"],getGithubActionsDefaultWorkflowPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/workflow"],getGithubActionsPermissionsOrganization:["GET /orgs/{org}/actions/permissions"],getGithubActionsPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions"],getJobForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}"],getOrgPublicKey:["GET /orgs/{org}/actions/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}"],getOrgVariable:["GET /orgs/{org}/actions/variables/{name}"],getPendingDeploymentsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],getRepoPermissions:["GET /repos/{owner}/{repo}/actions/permissions",{},{renamed:["actions","getGithubActionsPermissionsRepository"]}],getRepoPublicKey:["GET /repos/{owner}/{repo}/actions/secrets/public-key"],getRepoRequiredWorkflow:["GET /repos/{org}/{repo}/actions/required_workflows/{required_workflow_id_for_repo}"],getRepoRequiredWorkflowUsage:["GET /repos/{org}/{repo}/actions/required_workflows/{required_workflow_id_for_repo}/timing"],getRepoSecret:["GET /repos/{owner}/{repo}/actions/secrets/{secret_name}"],getRepoVariable:["GET /repos/{owner}/{repo}/actions/variables/{name}"],getRequiredWorkflow:["GET /orgs/{org}/actions/required_workflows/{required_workflow_id}"],getReviewsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals"],getSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}"],getSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}"],getWorkflow:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}"],getWorkflowAccessToRepository:["GET /repos/{owner}/{repo}/actions/permissions/access"],getWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}"],getWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}"],getWorkflowRunUsage:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing"],getWorkflowUsage:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing"],listArtifactsForRepo:["GET /repos/{owner}/{repo}/actions/artifacts"],listEnvironmentSecrets:["GET /repositories/{repository_id}/environments/{environment_name}/secrets"],listEnvironmentVariables:["GET /repositories/{repository_id}/environments/{environment_name}/variables"],listJobsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs"],listJobsForWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs"],listLabelsForSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}/labels"],listLabelsForSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],listOrgSecrets:["GET /orgs/{org}/actions/secrets"],listOrgVariables:["GET /orgs/{org}/actions/variables"],listRepoOrganizationSecrets:["GET /repos/{owner}/{repo}/actions/organization-secrets"],listRepoOrganizationVariables:["GET /repos/{owner}/{repo}/actions/organization-variables"],listRepoRequiredWorkflows:["GET /repos/{org}/{repo}/actions/required_workflows"],listRepoSecrets:["GET /repos/{owner}/{repo}/actions/secrets"],listRepoVariables:["GET /repos/{owner}/{repo}/actions/variables"],listRepoWorkflows:["GET /repos/{owner}/{repo}/actions/workflows"],listRequiredWorkflowRuns:["GET /repos/{owner}/{repo}/actions/required_workflows/{required_workflow_id_for_repo}/runs"],listRequiredWorkflows:["GET /orgs/{org}/actions/required_workflows"],listRunnerApplicationsForOrg:["GET /orgs/{org}/actions/runners/downloads"],listRunnerApplicationsForRepo:["GET /repos/{owner}/{repo}/actions/runners/downloads"],listSelectedReposForOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}/repositories"],listSelectedReposForOrgVariable:["GET /orgs/{org}/actions/variables/{name}/repositories"],listSelectedRepositoriesEnabledGithubActionsOrganization:["GET /orgs/{org}/actions/permissions/repositories"],listSelectedRepositoriesRequiredWorkflow:["GET /orgs/{org}/actions/required_workflows/{required_workflow_id}/repositories"],listSelfHostedRunnersForOrg:["GET /orgs/{org}/actions/runners"],listSelfHostedRunnersForRepo:["GET /repos/{owner}/{repo}/actions/runners"],listWorkflowRunArtifacts:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts"],listWorkflowRuns:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs"],listWorkflowRunsForRepo:["GET /repos/{owner}/{repo}/actions/runs"],reRunJobForWorkflowRun:["POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun"],reRunWorkflow:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun"],reRunWorkflowFailedJobs:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs"],removeAllCustomLabelsFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels"],removeAllCustomLabelsFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],removeCustomLabelFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name}"],removeCustomLabelFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],removeSelectedRepoFromRequiredWorkflow:["DELETE /orgs/{org}/actions/required_workflows/{required_workflow_id}/repositories/{repository_id}"],reviewCustomGatesForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/deployment_protection_rule"],reviewPendingDeploymentsForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],setAllowedActionsOrganization:["PUT /orgs/{org}/actions/permissions/selected-actions"],setAllowedActionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/selected-actions"],setCustomLabelsForSelfHostedRunnerForOrg:["PUT /orgs/{org}/actions/runners/{runner_id}/labels"],setCustomLabelsForSelfHostedRunnerForRepo:["PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],setGithubActionsDefaultWorkflowPermissionsOrganization:["PUT /orgs/{org}/actions/permissions/workflow"],setGithubActionsDefaultWorkflowPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/workflow"],setGithubActionsPermissionsOrganization:["PUT /orgs/{org}/actions/permissions"],setGithubActionsPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories"],setSelectedReposForOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories"],setSelectedReposToRequiredWorkflow:["PUT /orgs/{org}/actions/required_workflows/{required_workflow_id}/repositories"],setSelectedRepositoriesEnabledGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories"],setWorkflowAccessToRepository:["PUT /repos/{owner}/{repo}/actions/permissions/access"],updateEnvironmentVariable:["PATCH /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],updateOrgVariable:["PATCH /orgs/{org}/actions/variables/{name}"],updateRepoVariable:["PATCH /repos/{owner}/{repo}/actions/variables/{name}"],updateRequiredWorkflow:["PATCH /orgs/{org}/actions/required_workflows/{required_workflow_id}"]},activity:{checkRepoIsStarredByAuthenticatedUser:["GET /user/starred/{owner}/{repo}"],deleteRepoSubscription:["DELETE /repos/{owner}/{repo}/subscription"],deleteThreadSubscription:["DELETE /notifications/threads/{thread_id}/subscription"],getFeeds:["GET /feeds"],getRepoSubscription:["GET /repos/{owner}/{repo}/subscription"],getThread:["GET /notifications/threads/{thread_id}"],getThreadSubscriptionForAuthenticatedUser:["GET /notifications/threads/{thread_id}/subscription"],listEventsForAuthenticatedUser:["GET /users/{username}/events"],listNotificationsForAuthenticatedUser:["GET /notifications"],listOrgEventsForAuthenticatedUser:["GET /users/{username}/events/orgs/{org}"],listPublicEvents:["GET /events"],listPublicEventsForRepoNetwork:["GET /networks/{owner}/{repo}/events"],listPublicEventsForUser:["GET /users/{username}/events/public"],listPublicOrgEvents:["GET /orgs/{org}/events"],listReceivedEventsForUser:["GET /users/{username}/received_events"],listReceivedPublicEventsForUser:["GET /users/{username}/received_events/public"],listRepoEvents:["GET /repos/{owner}/{repo}/events"],listRepoNotificationsForAuthenticatedUser:["GET /repos/{owner}/{repo}/notifications"],listReposStarredByAuthenticatedUser:["GET /user/starred"],listReposStarredByUser:["GET /users/{username}/starred"],listReposWatchedByUser:["GET /users/{username}/subscriptions"],listStargazersForRepo:["GET /repos/{owner}/{repo}/stargazers"],listWatchedReposForAuthenticatedUser:["GET /user/subscriptions"],listWatchersForRepo:["GET /repos/{owner}/{repo}/subscribers"],markNotificationsAsRead:["PUT /notifications"],markRepoNotificationsAsRead:["PUT /repos/{owner}/{repo}/notifications"],markThreadAsRead:["PATCH /notifications/threads/{thread_id}"],setRepoSubscription:["PUT /repos/{owner}/{repo}/subscription"],setThreadSubscription:["PUT /notifications/threads/{thread_id}/subscription"],starRepoForAuthenticatedUser:["PUT /user/starred/{owner}/{repo}"],unstarRepoForAuthenticatedUser:["DELETE /user/starred/{owner}/{repo}"]},apps:{addRepoToInstallation:["PUT /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","addRepoToInstallationForAuthenticatedUser"]}],addRepoToInstallationForAuthenticatedUser:["PUT /user/installations/{installation_id}/repositories/{repository_id}"],checkToken:["POST /applications/{client_id}/token"],createFromManifest:["POST /app-manifests/{code}/conversions"],createInstallationAccessToken:["POST /app/installations/{installation_id}/access_tokens"],deleteAuthorization:["DELETE /applications/{client_id}/grant"],deleteInstallation:["DELETE /app/installations/{installation_id}"],deleteToken:["DELETE /applications/{client_id}/token"],getAuthenticated:["GET /app"],getBySlug:["GET /apps/{app_slug}"],getInstallation:["GET /app/installations/{installation_id}"],getOrgInstallation:["GET /orgs/{org}/installation"],getRepoInstallation:["GET /repos/{owner}/{repo}/installation"],getSubscriptionPlanForAccount:["GET /marketplace_listing/accounts/{account_id}"],getSubscriptionPlanForAccountStubbed:["GET /marketplace_listing/stubbed/accounts/{account_id}"],getUserInstallation:["GET /users/{username}/installation"],getWebhookConfigForApp:["GET /app/hook/config"],getWebhookDelivery:["GET /app/hook/deliveries/{delivery_id}"],listAccountsForPlan:["GET /marketplace_listing/plans/{plan_id}/accounts"],listAccountsForPlanStubbed:["GET /marketplace_listing/stubbed/plans/{plan_id}/accounts"],listInstallationReposForAuthenticatedUser:["GET /user/installations/{installation_id}/repositories"],listInstallationRequestsForAuthenticatedApp:["GET /app/installation-requests"],listInstallations:["GET /app/installations"],listInstallationsForAuthenticatedUser:["GET /user/installations"],listPlans:["GET /marketplace_listing/plans"],listPlansStubbed:["GET /marketplace_listing/stubbed/plans"],listReposAccessibleToInstallation:["GET /installation/repositories"],listSubscriptionsForAuthenticatedUser:["GET /user/marketplace_purchases"],listSubscriptionsForAuthenticatedUserStubbed:["GET /user/marketplace_purchases/stubbed"],listWebhookDeliveries:["GET /app/hook/deliveries"],redeliverWebhookDelivery:["POST /app/hook/deliveries/{delivery_id}/attempts"],removeRepoFromInstallation:["DELETE /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","removeRepoFromInstallationForAuthenticatedUser"]}],removeRepoFromInstallationForAuthenticatedUser:["DELETE /user/installations/{installation_id}/repositories/{repository_id}"],resetToken:["PATCH /applications/{client_id}/token"],revokeInstallationAccessToken:["DELETE /installation/token"],scopeToken:["POST /applications/{client_id}/token/scoped"],suspendInstallation:["PUT /app/installations/{installation_id}/suspended"],unsuspendInstallation:["DELETE /app/installations/{installation_id}/suspended"],updateWebhookConfigForApp:["PATCH /app/hook/config"]},billing:{getGithubActionsBillingOrg:["GET /orgs/{org}/settings/billing/actions"],getGithubActionsBillingUser:["GET /users/{username}/settings/billing/actions"],getGithubPackagesBillingOrg:["GET /orgs/{org}/settings/billing/packages"],getGithubPackagesBillingUser:["GET /users/{username}/settings/billing/packages"],getSharedStorageBillingOrg:["GET /orgs/{org}/settings/billing/shared-storage"],getSharedStorageBillingUser:["GET /users/{username}/settings/billing/shared-storage"]},checks:{create:["POST /repos/{owner}/{repo}/check-runs"],createSuite:["POST /repos/{owner}/{repo}/check-suites"],get:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}"],getSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}"],listAnnotations:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations"],listForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-runs"],listForSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs"],listSuitesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-suites"],rerequestRun:["POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest"],rerequestSuite:["POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest"],setSuitesPreferences:["PATCH /repos/{owner}/{repo}/check-suites/preferences"],update:["PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}"]},codeScanning:{deleteAnalysis:["DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}"],getAlert:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}",{},{renamedParameters:{alert_id:"alert_number"}}],getAnalysis:["GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}"],getCodeqlDatabase:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}"],getDefaultSetup:["GET /repos/{owner}/{repo}/code-scanning/default-setup"],getSarif:["GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}"],listAlertInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances"],listAlertsForOrg:["GET /orgs/{org}/code-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/code-scanning/alerts"],listAlertsInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances",{},{renamed:["codeScanning","listAlertInstances"]}],listCodeqlDatabases:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases"],listRecentAnalyses:["GET /repos/{owner}/{repo}/code-scanning/analyses"],updateAlert:["PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}"],updateDefaultSetup:["PATCH /repos/{owner}/{repo}/code-scanning/default-setup"],uploadSarif:["POST /repos/{owner}/{repo}/code-scanning/sarifs"]},codesOfConduct:{getAllCodesOfConduct:["GET /codes_of_conduct"],getConductCode:["GET /codes_of_conduct/{key}"]},codespaces:{addRepositoryForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],codespaceMachinesForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/machines"],createForAuthenticatedUser:["POST /user/codespaces"],createOrUpdateOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],createOrUpdateSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}"],createWithPrForAuthenticatedUser:["POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces"],createWithRepoForAuthenticatedUser:["POST /repos/{owner}/{repo}/codespaces"],deleteCodespacesBillingUsers:["DELETE /orgs/{org}/codespaces/billing/selected_users"],deleteForAuthenticatedUser:["DELETE /user/codespaces/{codespace_name}"],deleteFromOrganization:["DELETE /orgs/{org}/members/{username}/codespaces/{codespace_name}"],deleteOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],deleteSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}"],exportForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/exports"],getCodespacesForUserInOrg:["GET /orgs/{org}/members/{username}/codespaces"],getExportDetailsForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/exports/{export_id}"],getForAuthenticatedUser:["GET /user/codespaces/{codespace_name}"],getOrgPublicKey:["GET /orgs/{org}/codespaces/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}"],getPublicKeyForAuthenticatedUser:["GET /user/codespaces/secrets/public-key"],getRepoPublicKey:["GET /repos/{owner}/{repo}/codespaces/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],getSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}"],listDevcontainersInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/devcontainers"],listForAuthenticatedUser:["GET /user/codespaces"],listInOrganization:["GET /orgs/{org}/codespaces",{},{renamedParameters:{org_id:"org"}}],listInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces"],listOrgSecrets:["GET /orgs/{org}/codespaces/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/codespaces/secrets"],listRepositoriesForSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}/repositories"],listSecretsForAuthenticatedUser:["GET /user/codespaces/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],preFlightWithRepoForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/new"],publishForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/publish"],removeRepositoryForSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],repoMachinesForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/machines"],setCodespacesBilling:["PUT /orgs/{org}/codespaces/billing"],setCodespacesBillingUsers:["POST /orgs/{org}/codespaces/billing/selected_users"],setRepositoriesForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],startForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/start"],stopForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/stop"],stopInOrganization:["POST /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop"],updateForAuthenticatedUser:["PATCH /user/codespaces/{codespace_name}"]},dependabot:{addSelectedRepoToOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],deleteOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],getAlert:["GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"],getOrgPublicKey:["GET /orgs/{org}/dependabot/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}"],getRepoPublicKey:["GET /repos/{owner}/{repo}/dependabot/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/dependabot/alerts"],listAlertsForOrg:["GET /orgs/{org}/dependabot/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/dependabot/alerts"],listOrgSecrets:["GET /orgs/{org}/dependabot/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/dependabot/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],updateAlert:["PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"]},dependencyGraph:{createRepositorySnapshot:["POST /repos/{owner}/{repo}/dependency-graph/snapshots"],diffRange:["GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead}"],exportSbom:["GET /repos/{owner}/{repo}/dependency-graph/sbom"]},emojis:{get:["GET /emojis"]},gists:{checkIsStarred:["GET /gists/{gist_id}/star"],create:["POST /gists"],createComment:["POST /gists/{gist_id}/comments"],delete:["DELETE /gists/{gist_id}"],deleteComment:["DELETE /gists/{gist_id}/comments/{comment_id}"],fork:["POST /gists/{gist_id}/forks"],get:["GET /gists/{gist_id}"],getComment:["GET /gists/{gist_id}/comments/{comment_id}"],getRevision:["GET /gists/{gist_id}/{sha}"],list:["GET /gists"],listComments:["GET /gists/{gist_id}/comments"],listCommits:["GET /gists/{gist_id}/commits"],listForUser:["GET /users/{username}/gists"],listForks:["GET /gists/{gist_id}/forks"],listPublic:["GET /gists/public"],listStarred:["GET /gists/starred"],star:["PUT /gists/{gist_id}/star"],unstar:["DELETE /gists/{gist_id}/star"],update:["PATCH /gists/{gist_id}"],updateComment:["PATCH /gists/{gist_id}/comments/{comment_id}"]},git:{createBlob:["POST /repos/{owner}/{repo}/git/blobs"],createCommit:["POST /repos/{owner}/{repo}/git/commits"],createRef:["POST /repos/{owner}/{repo}/git/refs"],createTag:["POST /repos/{owner}/{repo}/git/tags"],createTree:["POST /repos/{owner}/{repo}/git/trees"],deleteRef:["DELETE /repos/{owner}/{repo}/git/refs/{ref}"],getBlob:["GET /repos/{owner}/{repo}/git/blobs/{file_sha}"],getCommit:["GET /repos/{owner}/{repo}/git/commits/{commit_sha}"],getRef:["GET /repos/{owner}/{repo}/git/ref/{ref}"],getTag:["GET /repos/{owner}/{repo}/git/tags/{tag_sha}"],getTree:["GET /repos/{owner}/{repo}/git/trees/{tree_sha}"],listMatchingRefs:["GET /repos/{owner}/{repo}/git/matching-refs/{ref}"],updateRef:["PATCH /repos/{owner}/{repo}/git/refs/{ref}"]},gitignore:{getAllTemplates:["GET /gitignore/templates"],getTemplate:["GET /gitignore/templates/{name}"]},interactions:{getRestrictionsForAuthenticatedUser:["GET /user/interaction-limits"],getRestrictionsForOrg:["GET /orgs/{org}/interaction-limits"],getRestrictionsForRepo:["GET /repos/{owner}/{repo}/interaction-limits"],getRestrictionsForYourPublicRepos:["GET /user/interaction-limits",{},{renamed:["interactions","getRestrictionsForAuthenticatedUser"]}],removeRestrictionsForAuthenticatedUser:["DELETE /user/interaction-limits"],removeRestrictionsForOrg:["DELETE /orgs/{org}/interaction-limits"],removeRestrictionsForRepo:["DELETE /repos/{owner}/{repo}/interaction-limits"],removeRestrictionsForYourPublicRepos:["DELETE /user/interaction-limits",{},{renamed:["interactions","removeRestrictionsForAuthenticatedUser"]}],setRestrictionsForAuthenticatedUser:["PUT /user/interaction-limits"],setRestrictionsForOrg:["PUT /orgs/{org}/interaction-limits"],setRestrictionsForRepo:["PUT /repos/{owner}/{repo}/interaction-limits"],setRestrictionsForYourPublicRepos:["PUT /user/interaction-limits",{},{renamed:["interactions","setRestrictionsForAuthenticatedUser"]}]},issues:{addAssignees:["POST /repos/{owner}/{repo}/issues/{issue_number}/assignees"],addLabels:["POST /repos/{owner}/{repo}/issues/{issue_number}/labels"],checkUserCanBeAssigned:["GET /repos/{owner}/{repo}/assignees/{assignee}"],checkUserCanBeAssignedToIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/assignees/{assignee}"],create:["POST /repos/{owner}/{repo}/issues"],createComment:["POST /repos/{owner}/{repo}/issues/{issue_number}/comments"],createLabel:["POST /repos/{owner}/{repo}/labels"],createMilestone:["POST /repos/{owner}/{repo}/milestones"],deleteComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}"],deleteLabel:["DELETE /repos/{owner}/{repo}/labels/{name}"],deleteMilestone:["DELETE /repos/{owner}/{repo}/milestones/{milestone_number}"],get:["GET /repos/{owner}/{repo}/issues/{issue_number}"],getComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}"],getEvent:["GET /repos/{owner}/{repo}/issues/events/{event_id}"],getLabel:["GET /repos/{owner}/{repo}/labels/{name}"],getMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}"],list:["GET /issues"],listAssignees:["GET /repos/{owner}/{repo}/assignees"],listComments:["GET /repos/{owner}/{repo}/issues/{issue_number}/comments"],listCommentsForRepo:["GET /repos/{owner}/{repo}/issues/comments"],listEvents:["GET /repos/{owner}/{repo}/issues/{issue_number}/events"],listEventsForRepo:["GET /repos/{owner}/{repo}/issues/events"],listEventsForTimeline:["GET /repos/{owner}/{repo}/issues/{issue_number}/timeline"],listForAuthenticatedUser:["GET /user/issues"],listForOrg:["GET /orgs/{org}/issues"],listForRepo:["GET /repos/{owner}/{repo}/issues"],listLabelsForMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels"],listLabelsForRepo:["GET /repos/{owner}/{repo}/labels"],listLabelsOnIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/labels"],listMilestones:["GET /repos/{owner}/{repo}/milestones"],lock:["PUT /repos/{owner}/{repo}/issues/{issue_number}/lock"],removeAllLabels:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels"],removeAssignees:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees"],removeLabel:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}"],setLabels:["PUT /repos/{owner}/{repo}/issues/{issue_number}/labels"],unlock:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock"],update:["PATCH /repos/{owner}/{repo}/issues/{issue_number}"],updateComment:["PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}"],updateLabel:["PATCH /repos/{owner}/{repo}/labels/{name}"],updateMilestone:["PATCH /repos/{owner}/{repo}/milestones/{milestone_number}"]},licenses:{get:["GET /licenses/{license}"],getAllCommonlyUsed:["GET /licenses"],getForRepo:["GET /repos/{owner}/{repo}/license"]},markdown:{render:["POST /markdown"],renderRaw:["POST /markdown/raw",{headers:{"content-type":"text/plain; charset=utf-8"}}]},meta:{get:["GET /meta"],getAllVersions:["GET /versions"],getOctocat:["GET /octocat"],getZen:["GET /zen"],root:["GET /"]},migrations:{cancelImport:["DELETE /repos/{owner}/{repo}/import"],deleteArchiveForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/archive"],deleteArchiveForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/archive"],downloadArchiveForOrg:["GET /orgs/{org}/migrations/{migration_id}/archive"],getArchiveForAuthenticatedUser:["GET /user/migrations/{migration_id}/archive"],getCommitAuthors:["GET /repos/{owner}/{repo}/import/authors"],getImportStatus:["GET /repos/{owner}/{repo}/import"],getLargeFiles:["GET /repos/{owner}/{repo}/import/large_files"],getStatusForAuthenticatedUser:["GET /user/migrations/{migration_id}"],getStatusForOrg:["GET /orgs/{org}/migrations/{migration_id}"],listForAuthenticatedUser:["GET /user/migrations"],listForOrg:["GET /orgs/{org}/migrations"],listReposForAuthenticatedUser:["GET /user/migrations/{migration_id}/repositories"],listReposForOrg:["GET /orgs/{org}/migrations/{migration_id}/repositories"],listReposForUser:["GET /user/migrations/{migration_id}/repositories",{},{renamed:["migrations","listReposForAuthenticatedUser"]}],mapCommitAuthor:["PATCH /repos/{owner}/{repo}/import/authors/{author_id}"],setLfsPreference:["PATCH /repos/{owner}/{repo}/import/lfs"],startForAuthenticatedUser:["POST /user/migrations"],startForOrg:["POST /orgs/{org}/migrations"],startImport:["PUT /repos/{owner}/{repo}/import"],unlockRepoForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock"],unlockRepoForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock"],updateImport:["PATCH /repos/{owner}/{repo}/import"]},orgs:{addSecurityManagerTeam:["PUT /orgs/{org}/security-managers/teams/{team_slug}"],blockUser:["PUT /orgs/{org}/blocks/{username}"],cancelInvitation:["DELETE /orgs/{org}/invitations/{invitation_id}"],checkBlockedUser:["GET /orgs/{org}/blocks/{username}"],checkMembershipForUser:["GET /orgs/{org}/members/{username}"],checkPublicMembershipForUser:["GET /orgs/{org}/public_members/{username}"],convertMemberToOutsideCollaborator:["PUT /orgs/{org}/outside_collaborators/{username}"],createInvitation:["POST /orgs/{org}/invitations"],createWebhook:["POST /orgs/{org}/hooks"],delete:["DELETE /orgs/{org}"],deleteWebhook:["DELETE /orgs/{org}/hooks/{hook_id}"],enableOrDisableSecurityProductOnAllOrgRepos:["POST /orgs/{org}/{security_product}/{enablement}"],get:["GET /orgs/{org}"],getMembershipForAuthenticatedUser:["GET /user/memberships/orgs/{org}"],getMembershipForUser:["GET /orgs/{org}/memberships/{username}"],getWebhook:["GET /orgs/{org}/hooks/{hook_id}"],getWebhookConfigForOrg:["GET /orgs/{org}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}"],list:["GET /organizations"],listAppInstallations:["GET /orgs/{org}/installations"],listBlockedUsers:["GET /orgs/{org}/blocks"],listFailedInvitations:["GET /orgs/{org}/failed_invitations"],listForAuthenticatedUser:["GET /user/orgs"],listForUser:["GET /users/{username}/orgs"],listInvitationTeams:["GET /orgs/{org}/invitations/{invitation_id}/teams"],listMembers:["GET /orgs/{org}/members"],listMembershipsForAuthenticatedUser:["GET /user/memberships/orgs"],listOutsideCollaborators:["GET /orgs/{org}/outside_collaborators"],listPatGrantRepositories:["GET /organizations/{org}/personal-access-tokens/{pat_id}/repositories"],listPatGrantRequestRepositories:["GET /organizations/{org}/personal-access-token-requests/{pat_request_id}/repositories"],listPatGrantRequests:["GET /organizations/{org}/personal-access-token-requests"],listPatGrants:["GET /organizations/{org}/personal-access-tokens"],listPendingInvitations:["GET /orgs/{org}/invitations"],listPublicMembers:["GET /orgs/{org}/public_members"],listSecurityManagerTeams:["GET /orgs/{org}/security-managers"],listWebhookDeliveries:["GET /orgs/{org}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /orgs/{org}/hooks"],pingWebhook:["POST /orgs/{org}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeMember:["DELETE /orgs/{org}/members/{username}"],removeMembershipForUser:["DELETE /orgs/{org}/memberships/{username}"],removeOutsideCollaborator:["DELETE /orgs/{org}/outside_collaborators/{username}"],removePublicMembershipForAuthenticatedUser:["DELETE /orgs/{org}/public_members/{username}"],removeSecurityManagerTeam:["DELETE /orgs/{org}/security-managers/teams/{team_slug}"],reviewPatGrantRequest:["POST /organizations/{org}/personal-access-token-requests/{pat_request_id}"],reviewPatGrantRequestsInBulk:["POST /organizations/{org}/personal-access-token-requests"],setMembershipForUser:["PUT /orgs/{org}/memberships/{username}"],setPublicMembershipForAuthenticatedUser:["PUT /orgs/{org}/public_members/{username}"],unblockUser:["DELETE /orgs/{org}/blocks/{username}"],update:["PATCH /orgs/{org}"],updateMembershipForAuthenticatedUser:["PATCH /user/memberships/orgs/{org}"],updatePatAccess:["POST /organizations/{org}/personal-access-tokens/{pat_id}"],updatePatAccesses:["POST /organizations/{org}/personal-access-tokens"],updateWebhook:["PATCH /orgs/{org}/hooks/{hook_id}"],updateWebhookConfigForOrg:["PATCH /orgs/{org}/hooks/{hook_id}/config"]},packages:{deletePackageForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}"],deletePackageForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}"],deletePackageForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}"],deletePackageVersionForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getAllPackageVersionsForAPackageOwnedByAnOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByOrg"]}],getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByAuthenticatedUser"]}],getAllPackageVersionsForPackageOwnedByAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions"],getPackageForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}"],getPackageForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}"],getPackageForUser:["GET /users/{username}/packages/{package_type}/{package_name}"],getPackageVersionForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],listDockerMigrationConflictingPackagesForAuthenticatedUser:["GET /user/docker/conflicts"],listDockerMigrationConflictingPackagesForOrganization:["GET /orgs/{org}/docker/conflicts"],listDockerMigrationConflictingPackagesForUser:["GET /users/{username}/docker/conflicts"],listPackagesForAuthenticatedUser:["GET /user/packages"],listPackagesForOrganization:["GET /orgs/{org}/packages"],listPackagesForUser:["GET /users/{username}/packages"],restorePackageForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForUser:["POST /users/{username}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageVersionForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForUser:["POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"]},projects:{addCollaborator:["PUT /projects/{project_id}/collaborators/{username}"],createCard:["POST /projects/columns/{column_id}/cards"],createColumn:["POST /projects/{project_id}/columns"],createForAuthenticatedUser:["POST /user/projects"],createForOrg:["POST /orgs/{org}/projects"],createForRepo:["POST /repos/{owner}/{repo}/projects"],delete:["DELETE /projects/{project_id}"],deleteCard:["DELETE /projects/columns/cards/{card_id}"],deleteColumn:["DELETE /projects/columns/{column_id}"],get:["GET /projects/{project_id}"],getCard:["GET /projects/columns/cards/{card_id}"],getColumn:["GET /projects/columns/{column_id}"],getPermissionForUser:["GET /projects/{project_id}/collaborators/{username}/permission"],listCards:["GET /projects/columns/{column_id}/cards"],listCollaborators:["GET /projects/{project_id}/collaborators"],listColumns:["GET /projects/{project_id}/columns"],listForOrg:["GET /orgs/{org}/projects"],listForRepo:["GET /repos/{owner}/{repo}/projects"],listForUser:["GET /users/{username}/projects"],moveCard:["POST /projects/columns/cards/{card_id}/moves"],moveColumn:["POST /projects/columns/{column_id}/moves"],removeCollaborator:["DELETE /projects/{project_id}/collaborators/{username}"],update:["PATCH /projects/{project_id}"],updateCard:["PATCH /projects/columns/cards/{card_id}"],updateColumn:["PATCH /projects/columns/{column_id}"]},pulls:{checkIfMerged:["GET /repos/{owner}/{repo}/pulls/{pull_number}/merge"],create:["POST /repos/{owner}/{repo}/pulls"],createReplyForReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies"],createReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],createReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments"],deletePendingReview:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],deleteReviewComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}"],dismissReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals"],get:["GET /repos/{owner}/{repo}/pulls/{pull_number}"],getReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],getReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}"],list:["GET /repos/{owner}/{repo}/pulls"],listCommentsForReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments"],listCommits:["GET /repos/{owner}/{repo}/pulls/{pull_number}/commits"],listFiles:["GET /repos/{owner}/{repo}/pulls/{pull_number}/files"],listRequestedReviewers:["GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],listReviewComments:["GET /repos/{owner}/{repo}/pulls/{pull_number}/comments"],listReviewCommentsForRepo:["GET /repos/{owner}/{repo}/pulls/comments"],listReviews:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],merge:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge"],removeRequestedReviewers:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],requestReviewers:["POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],submitReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events"],update:["PATCH /repos/{owner}/{repo}/pulls/{pull_number}"],updateBranch:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch"],updateReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],updateReviewComment:["PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}"]},rateLimit:{get:["GET /rate_limit"]},reactions:{createForCommitComment:["POST /repos/{owner}/{repo}/comments/{comment_id}/reactions"],createForIssue:["POST /repos/{owner}/{repo}/issues/{issue_number}/reactions"],createForIssueComment:["POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],createForPullRequestReviewComment:["POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],createForRelease:["POST /repos/{owner}/{repo}/releases/{release_id}/reactions"],createForTeamDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],createForTeamDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"],deleteForCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}"],deleteForIssue:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}"],deleteForIssueComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}"],deleteForPullRequestComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}"],deleteForRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}"],deleteForTeamDiscussion:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}"],deleteForTeamDiscussionComment:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}"],listForCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}/reactions"],listForIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/reactions"],listForIssueComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],listForPullRequestReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],listForRelease:["GET /repos/{owner}/{repo}/releases/{release_id}/reactions"],listForTeamDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],listForTeamDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"]},repos:{acceptInvitation:["PATCH /user/repository_invitations/{invitation_id}",{},{renamed:["repos","acceptInvitationForAuthenticatedUser"]}],acceptInvitationForAuthenticatedUser:["PATCH /user/repository_invitations/{invitation_id}"],addAppAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],addCollaborator:["PUT /repos/{owner}/{repo}/collaborators/{username}"],addStatusCheckContexts:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],addTeamAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],addUserAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],checkCollaborator:["GET /repos/{owner}/{repo}/collaborators/{username}"],checkVulnerabilityAlerts:["GET /repos/{owner}/{repo}/vulnerability-alerts"],codeownersErrors:["GET /repos/{owner}/{repo}/codeowners/errors"],compareCommits:["GET /repos/{owner}/{repo}/compare/{base}...{head}"],compareCommitsWithBasehead:["GET /repos/{owner}/{repo}/compare/{basehead}"],createAutolink:["POST /repos/{owner}/{repo}/autolinks"],createCommitComment:["POST /repos/{owner}/{repo}/commits/{commit_sha}/comments"],createCommitSignatureProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],createCommitStatus:["POST /repos/{owner}/{repo}/statuses/{sha}"],createDeployKey:["POST /repos/{owner}/{repo}/keys"],createDeployment:["POST /repos/{owner}/{repo}/deployments"],createDeploymentBranchPolicy:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],createDeploymentProtectionRule:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],createDeploymentStatus:["POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],createDispatchEvent:["POST /repos/{owner}/{repo}/dispatches"],createForAuthenticatedUser:["POST /user/repos"],createFork:["POST /repos/{owner}/{repo}/forks"],createInOrg:["POST /orgs/{org}/repos"],createOrUpdateEnvironment:["PUT /repos/{owner}/{repo}/environments/{environment_name}"],createOrUpdateFileContents:["PUT /repos/{owner}/{repo}/contents/{path}"],createOrgRuleset:["POST /orgs/{org}/rulesets"],createPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployment"],createPagesSite:["POST /repos/{owner}/{repo}/pages"],createRelease:["POST /repos/{owner}/{repo}/releases"],createRepoRuleset:["POST /repos/{owner}/{repo}/rulesets"],createTagProtection:["POST /repos/{owner}/{repo}/tags/protection"],createUsingTemplate:["POST /repos/{template_owner}/{template_repo}/generate"],createWebhook:["POST /repos/{owner}/{repo}/hooks"],declineInvitation:["DELETE /user/repository_invitations/{invitation_id}",{},{renamed:["repos","declineInvitationForAuthenticatedUser"]}],declineInvitationForAuthenticatedUser:["DELETE /user/repository_invitations/{invitation_id}"],delete:["DELETE /repos/{owner}/{repo}"],deleteAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],deleteAdminBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],deleteAnEnvironment:["DELETE /repos/{owner}/{repo}/environments/{environment_name}"],deleteAutolink:["DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}"],deleteBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection"],deleteCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}"],deleteCommitSignatureProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],deleteDeployKey:["DELETE /repos/{owner}/{repo}/keys/{key_id}"],deleteDeployment:["DELETE /repos/{owner}/{repo}/deployments/{deployment_id}"],deleteDeploymentBranchPolicy:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],deleteFile:["DELETE /repos/{owner}/{repo}/contents/{path}"],deleteInvitation:["DELETE /repos/{owner}/{repo}/invitations/{invitation_id}"],deleteOrgRuleset:["DELETE /orgs/{org}/rulesets/{ruleset_id}"],deletePagesSite:["DELETE /repos/{owner}/{repo}/pages"],deletePullRequestReviewProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],deleteRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}"],deleteReleaseAsset:["DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}"],deleteRepoRuleset:["DELETE /repos/{owner}/{repo}/rulesets/{ruleset_id}"],deleteTagProtection:["DELETE /repos/{owner}/{repo}/tags/protection/{tag_protection_id}"],deleteWebhook:["DELETE /repos/{owner}/{repo}/hooks/{hook_id}"],disableAutomatedSecurityFixes:["DELETE /repos/{owner}/{repo}/automated-security-fixes"],disableDeploymentProtectionRule:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],disableLfsForRepo:["DELETE /repos/{owner}/{repo}/lfs"],disableVulnerabilityAlerts:["DELETE /repos/{owner}/{repo}/vulnerability-alerts"],downloadArchive:["GET /repos/{owner}/{repo}/zipball/{ref}",{},{renamed:["repos","downloadZipballArchive"]}],downloadTarballArchive:["GET /repos/{owner}/{repo}/tarball/{ref}"],downloadZipballArchive:["GET /repos/{owner}/{repo}/zipball/{ref}"],enableAutomatedSecurityFixes:["PUT /repos/{owner}/{repo}/automated-security-fixes"],enableLfsForRepo:["PUT /repos/{owner}/{repo}/lfs"],enableVulnerabilityAlerts:["PUT /repos/{owner}/{repo}/vulnerability-alerts"],generateReleaseNotes:["POST /repos/{owner}/{repo}/releases/generate-notes"],get:["GET /repos/{owner}/{repo}"],getAccessRestrictions:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],getAdminBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],getAllDeploymentProtectionRules:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],getAllEnvironments:["GET /repos/{owner}/{repo}/environments"],getAllStatusCheckContexts:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"],getAllTopics:["GET /repos/{owner}/{repo}/topics"],getAppsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps"],getAutolink:["GET /repos/{owner}/{repo}/autolinks/{autolink_id}"],getBranch:["GET /repos/{owner}/{repo}/branches/{branch}"],getBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection"],getBranchRules:["GET /repos/{owner}/{repo}/rules/branches/{branch}"],getClones:["GET /repos/{owner}/{repo}/traffic/clones"],getCodeFrequencyStats:["GET /repos/{owner}/{repo}/stats/code_frequency"],getCollaboratorPermissionLevel:["GET /repos/{owner}/{repo}/collaborators/{username}/permission"],getCombinedStatusForRef:["GET /repos/{owner}/{repo}/commits/{ref}/status"],getCommit:["GET /repos/{owner}/{repo}/commits/{ref}"],getCommitActivityStats:["GET /repos/{owner}/{repo}/stats/commit_activity"],getCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}"],getCommitSignatureProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],getCommunityProfileMetrics:["GET /repos/{owner}/{repo}/community/profile"],getContent:["GET /repos/{owner}/{repo}/contents/{path}"],getContributorsStats:["GET /repos/{owner}/{repo}/stats/contributors"],getCustomDeploymentProtectionRule:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],getDeployKey:["GET /repos/{owner}/{repo}/keys/{key_id}"],getDeployment:["GET /repos/{owner}/{repo}/deployments/{deployment_id}"],getDeploymentBranchPolicy:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],getDeploymentStatus:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}"],getEnvironment:["GET /repos/{owner}/{repo}/environments/{environment_name}"],getLatestPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/latest"],getLatestRelease:["GET /repos/{owner}/{repo}/releases/latest"],getOrgRuleset:["GET /orgs/{org}/rulesets/{ruleset_id}"],getOrgRulesets:["GET /orgs/{org}/rulesets"],getPages:["GET /repos/{owner}/{repo}/pages"],getPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/{build_id}"],getPagesHealthCheck:["GET /repos/{owner}/{repo}/pages/health"],getParticipationStats:["GET /repos/{owner}/{repo}/stats/participation"],getPullRequestReviewProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],getPunchCardStats:["GET /repos/{owner}/{repo}/stats/punch_card"],getReadme:["GET /repos/{owner}/{repo}/readme"],getReadmeInDirectory:["GET /repos/{owner}/{repo}/readme/{dir}"],getRelease:["GET /repos/{owner}/{repo}/releases/{release_id}"],getReleaseAsset:["GET /repos/{owner}/{repo}/releases/assets/{asset_id}"],getReleaseByTag:["GET /repos/{owner}/{repo}/releases/tags/{tag}"],getRepoRuleset:["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}"],getRepoRulesets:["GET /repos/{owner}/{repo}/rulesets"],getStatusChecksProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],getTeamsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"],getTopPaths:["GET /repos/{owner}/{repo}/traffic/popular/paths"],getTopReferrers:["GET /repos/{owner}/{repo}/traffic/popular/referrers"],getUsersWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"],getViews:["GET /repos/{owner}/{repo}/traffic/views"],getWebhook:["GET /repos/{owner}/{repo}/hooks/{hook_id}"],getWebhookConfigForRepo:["GET /repos/{owner}/{repo}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}"],listAutolinks:["GET /repos/{owner}/{repo}/autolinks"],listBranches:["GET /repos/{owner}/{repo}/branches"],listBranchesForHeadCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head"],listCollaborators:["GET /repos/{owner}/{repo}/collaborators"],listCommentsForCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/comments"],listCommitCommentsForRepo:["GET /repos/{owner}/{repo}/comments"],listCommitStatusesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/statuses"],listCommits:["GET /repos/{owner}/{repo}/commits"],listContributors:["GET /repos/{owner}/{repo}/contributors"],listCustomDeploymentRuleIntegrations:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps"],listDeployKeys:["GET /repos/{owner}/{repo}/keys"],listDeploymentBranchPolicies:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],listDeploymentStatuses:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],listDeployments:["GET /repos/{owner}/{repo}/deployments"],listForAuthenticatedUser:["GET /user/repos"],listForOrg:["GET /orgs/{org}/repos"],listForUser:["GET /users/{username}/repos"],listForks:["GET /repos/{owner}/{repo}/forks"],listInvitations:["GET /repos/{owner}/{repo}/invitations"],listInvitationsForAuthenticatedUser:["GET /user/repository_invitations"],listLanguages:["GET /repos/{owner}/{repo}/languages"],listPagesBuilds:["GET /repos/{owner}/{repo}/pages/builds"],listPublic:["GET /repositories"],listPullRequestsAssociatedWithCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls"],listReleaseAssets:["GET /repos/{owner}/{repo}/releases/{release_id}/assets"],listReleases:["GET /repos/{owner}/{repo}/releases"],listTagProtection:["GET /repos/{owner}/{repo}/tags/protection"],listTags:["GET /repos/{owner}/{repo}/tags"],listTeams:["GET /repos/{owner}/{repo}/teams"],listWebhookDeliveries:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /repos/{owner}/{repo}/hooks"],merge:["POST /repos/{owner}/{repo}/merges"],mergeUpstream:["POST /repos/{owner}/{repo}/merge-upstream"],pingWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeAppAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],removeCollaborator:["DELETE /repos/{owner}/{repo}/collaborators/{username}"],removeStatusCheckContexts:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],removeStatusCheckProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],removeTeamAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],removeUserAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],renameBranch:["POST /repos/{owner}/{repo}/branches/{branch}/rename"],replaceAllTopics:["PUT /repos/{owner}/{repo}/topics"],requestPagesBuild:["POST /repos/{owner}/{repo}/pages/builds"],setAdminBranchProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],setAppAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],setStatusCheckContexts:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],setTeamAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],setUserAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],testPushWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/tests"],transfer:["POST /repos/{owner}/{repo}/transfer"],update:["PATCH /repos/{owner}/{repo}"],updateBranchProtection:["PUT /repos/{owner}/{repo}/branches/{branch}/protection"],updateCommitComment:["PATCH /repos/{owner}/{repo}/comments/{comment_id}"],updateDeploymentBranchPolicy:["PUT /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],updateInformationAboutPagesSite:["PUT /repos/{owner}/{repo}/pages"],updateInvitation:["PATCH /repos/{owner}/{repo}/invitations/{invitation_id}"],updateOrgRuleset:["PUT /orgs/{org}/rulesets/{ruleset_id}"],updatePullRequestReviewProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],updateRelease:["PATCH /repos/{owner}/{repo}/releases/{release_id}"],updateReleaseAsset:["PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}"],updateRepoRuleset:["PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}"],updateStatusCheckPotection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks",{},{renamed:["repos","updateStatusCheckProtection"]}],updateStatusCheckProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],updateWebhook:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}"],updateWebhookConfigForRepo:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config"],uploadReleaseAsset:["POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}",{baseUrl:"https://uploads.github.com"}]},search:{code:["GET /search/code"],commits:["GET /search/commits"],issuesAndPullRequests:["GET /search/issues"],labels:["GET /search/labels"],repos:["GET /search/repositories"],topics:["GET /search/topics"],users:["GET /search/users"]},secretScanning:{getAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/secret-scanning/alerts"],listAlertsForOrg:["GET /orgs/{org}/secret-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/secret-scanning/alerts"],listLocationsForAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations"],updateAlert:["PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"]},securityAdvisories:{createPrivateVulnerabilityReport:["POST /repos/{owner}/{repo}/security-advisories/reports"],createRepositoryAdvisory:["POST /repos/{owner}/{repo}/security-advisories"],getRepositoryAdvisory:["GET /repos/{owner}/{repo}/security-advisories/{ghsa_id}"],listRepositoryAdvisories:["GET /repos/{owner}/{repo}/security-advisories"],updateRepositoryAdvisory:["PATCH /repos/{owner}/{repo}/security-advisories/{ghsa_id}"]},teams:{addOrUpdateMembershipForUserInOrg:["PUT /orgs/{org}/teams/{team_slug}/memberships/{username}"],addOrUpdateProjectPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}"],addOrUpdateRepoPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],checkPermissionsForProjectInOrg:["GET /orgs/{org}/teams/{team_slug}/projects/{project_id}"],checkPermissionsForRepoInOrg:["GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],create:["POST /orgs/{org}/teams"],createDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],createDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions"],deleteDiscussionCommentInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],deleteDiscussionInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],deleteInOrg:["DELETE /orgs/{org}/teams/{team_slug}"],getByName:["GET /orgs/{org}/teams/{team_slug}"],getDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],getDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],getMembershipForUserInOrg:["GET /orgs/{org}/teams/{team_slug}/memberships/{username}"],list:["GET /orgs/{org}/teams"],listChildInOrg:["GET /orgs/{org}/teams/{team_slug}/teams"],listDiscussionCommentsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],listDiscussionsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions"],listForAuthenticatedUser:["GET /user/teams"],listMembersInOrg:["GET /orgs/{org}/teams/{team_slug}/members"],listPendingInvitationsInOrg:["GET /orgs/{org}/teams/{team_slug}/invitations"],listProjectsInOrg:["GET /orgs/{org}/teams/{team_slug}/projects"],listReposInOrg:["GET /orgs/{org}/teams/{team_slug}/repos"],removeMembershipForUserInOrg:["DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}"],removeProjectInOrg:["DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}"],removeRepoInOrg:["DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],updateDiscussionCommentInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],updateDiscussionInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],updateInOrg:["PATCH /orgs/{org}/teams/{team_slug}"]},users:{addEmailForAuthenticated:["POST /user/emails",{},{renamed:["users","addEmailForAuthenticatedUser"]}],addEmailForAuthenticatedUser:["POST /user/emails"],addSocialAccountForAuthenticatedUser:["POST /user/social_accounts"],block:["PUT /user/blocks/{username}"],checkBlocked:["GET /user/blocks/{username}"],checkFollowingForUser:["GET /users/{username}/following/{target_user}"],checkPersonIsFollowedByAuthenticated:["GET /user/following/{username}"],createGpgKeyForAuthenticated:["POST /user/gpg_keys",{},{renamed:["users","createGpgKeyForAuthenticatedUser"]}],createGpgKeyForAuthenticatedUser:["POST /user/gpg_keys"],createPublicSshKeyForAuthenticated:["POST /user/keys",{},{renamed:["users","createPublicSshKeyForAuthenticatedUser"]}],createPublicSshKeyForAuthenticatedUser:["POST /user/keys"],createSshSigningKeyForAuthenticatedUser:["POST /user/ssh_signing_keys"],deleteEmailForAuthenticated:["DELETE /user/emails",{},{renamed:["users","deleteEmailForAuthenticatedUser"]}],deleteEmailForAuthenticatedUser:["DELETE /user/emails"],deleteGpgKeyForAuthenticated:["DELETE /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","deleteGpgKeyForAuthenticatedUser"]}],deleteGpgKeyForAuthenticatedUser:["DELETE /user/gpg_keys/{gpg_key_id}"],deletePublicSshKeyForAuthenticated:["DELETE /user/keys/{key_id}",{},{renamed:["users","deletePublicSshKeyForAuthenticatedUser"]}],deletePublicSshKeyForAuthenticatedUser:["DELETE /user/keys/{key_id}"],deleteSocialAccountForAuthenticatedUser:["DELETE /user/social_accounts"],deleteSshSigningKeyForAuthenticatedUser:["DELETE /user/ssh_signing_keys/{ssh_signing_key_id}"],follow:["PUT /user/following/{username}"],getAuthenticated:["GET /user"],getByUsername:["GET /users/{username}"],getContextForUser:["GET /users/{username}/hovercard"],getGpgKeyForAuthenticated:["GET /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","getGpgKeyForAuthenticatedUser"]}],getGpgKeyForAuthenticatedUser:["GET /user/gpg_keys/{gpg_key_id}"],getPublicSshKeyForAuthenticated:["GET /user/keys/{key_id}",{},{renamed:["users","getPublicSshKeyForAuthenticatedUser"]}],getPublicSshKeyForAuthenticatedUser:["GET /user/keys/{key_id}"],getSshSigningKeyForAuthenticatedUser:["GET /user/ssh_signing_keys/{ssh_signing_key_id}"],list:["GET /users"],listBlockedByAuthenticated:["GET /user/blocks",{},{renamed:["users","listBlockedByAuthenticatedUser"]}],listBlockedByAuthenticatedUser:["GET /user/blocks"],listEmailsForAuthenticated:["GET /user/emails",{},{renamed:["users","listEmailsForAuthenticatedUser"]}],listEmailsForAuthenticatedUser:["GET /user/emails"],listFollowedByAuthenticated:["GET /user/following",{},{renamed:["users","listFollowedByAuthenticatedUser"]}],listFollowedByAuthenticatedUser:["GET /user/following"],listFollowersForAuthenticatedUser:["GET /user/followers"],listFollowersForUser:["GET /users/{username}/followers"],listFollowingForUser:["GET /users/{username}/following"],listGpgKeysForAuthenticated:["GET /user/gpg_keys",{},{renamed:["users","listGpgKeysForAuthenticatedUser"]}],listGpgKeysForAuthenticatedUser:["GET /user/gpg_keys"],listGpgKeysForUser:["GET /users/{username}/gpg_keys"],listPublicEmailsForAuthenticated:["GET /user/public_emails",{},{renamed:["users","listPublicEmailsForAuthenticatedUser"]}],listPublicEmailsForAuthenticatedUser:["GET /user/public_emails"],listPublicKeysForUser:["GET /users/{username}/keys"],listPublicSshKeysForAuthenticated:["GET /user/keys",{},{renamed:["users","listPublicSshKeysForAuthenticatedUser"]}],listPublicSshKeysForAuthenticatedUser:["GET /user/keys"],listSocialAccountsForAuthenticatedUser:["GET /user/social_accounts"],listSocialAccountsForUser:["GET /users/{username}/social_accounts"],listSshSigningKeysForAuthenticatedUser:["GET /user/ssh_signing_keys"],listSshSigningKeysForUser:["GET /users/{username}/ssh_signing_keys"],setPrimaryEmailVisibilityForAuthenticated:["PATCH /user/email/visibility",{},{renamed:["users","setPrimaryEmailVisibilityForAuthenticatedUser"]}],setPrimaryEmailVisibilityForAuthenticatedUser:["PATCH /user/email/visibility"],unblock:["DELETE /user/blocks/{username}"],unfollow:["DELETE /user/following/{username}"],updateAuthenticated:["PATCH /user"]}},Pye=Lye,Rf=new Map;for(const[t,e]of Object.entries(Pye))for(const[n,s]of Object.entries(e)){const[i,r,o]=s,[a,l]=i.split(/ /),c=Object.assign({method:a,url:l},r);Rf.has(t)||Rf.set(t,new Map),Rf.get(t).set(n,{scope:t,methodName:n,endpointDefaults:c,decorations:o})}var Dye={get({octokit:t,scope:e,cache:n},s){if(n[s])return n[s];const{decorations:i,endpointDefaults:r}=Rf.get(e).get(s);return i?n[s]=Nye(t,e,s,r,i):n[s]=t.request.defaults(r),n[s]}};function Fye(t){const e={};for(const n of Rf.keys())e[n]=new Proxy({octokit:t,scope:n,cache:{}},Dye);return e}function Nye(t,e,n,s,i){const r=t.request.defaults(s);function o(...a){let l=r.endpoint.merge(...a);if(i.mapToData)return l=Object.assign({},l,{data:l[i.mapToData],[i.mapToData]:void 0}),r(l);if(i.renamed){const[c,u]=i.renamed;t.log.warn(`octokit.${e}.${n}() has been renamed to octokit.${c}.${u}()`)}if(i.deprecated&&t.log.warn(i.deprecated),i.renamedParameters){const c=r.endpoint.merge(...a);for(const[u,d]of Object.entries(i.renamedParameters))u in c&&(t.log.warn(`"${u}" parameter is deprecated for "octokit.${e}.${n}()". Use "${d}" instead`),d in c||(c[d]=c[u]),delete c[u]);return r(c)}return r(...a)}return Object.assign(o,r)}function j6(t){return{rest:Fye(t)}}j6.VERSION=Iye;var q6={exports:{}};(function(t,e){(function(n,s){t.exports=s()})(P0,function(){var n=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof P0<"u"?P0:typeof self<"u"?self:{};function s(_e){return _e&&_e.default||_e}var i=function(_e,Y,k={}){var R,L,N;for(R in Y)N=Y[R],k[R]=(L=_e[R])!=null?L:N;return k},r=function(_e,Y,k={}){var R,L;for(R in _e)L=_e[R],Y[R]!==void 0&&(k[R]=L);return k},o={load:i,overwrite:r},a;a=class{constructor(Y,k){this.incr=Y,this.decr=k,this._first=null,this._last=null,this.length=0}push(Y){var k;this.length++,typeof this.incr=="function"&&this.incr(),k={value:Y,prev:this._last,next:null},this._last!=null?(this._last.next=k,this._last=k):this._first=this._last=k}shift(){var Y;if(this._first!=null)return this.length--,typeof this.decr=="function"&&this.decr(),Y=this._first.value,(this._first=this._first.next)!=null?this._first.prev=null:this._last=null,Y}first(){if(this._first!=null)return this._first.value}getArray(){var Y,k,R;for(Y=this._first,R=[];Y!=null;)R.push((k=Y,Y=Y.next,k.value));return R}forEachShift(Y){var k;for(k=this.shift();k!=null;)Y(k),k=this.shift()}debug(){var Y,k,R,L,N;for(Y=this._first,N=[];Y!=null;)N.push((k=Y,Y=Y.next,{value:k.value,prev:(R=k.prev)!=null?R.value:void 0,next:(L=k.next)!=null?L.value:void 0}));return N}};var l=a,c;c=class{constructor(Y){if(this.instance=Y,this._events={},this.instance.on!=null||this.instance.once!=null||this.instance.removeAllListeners!=null)throw new Error("An Emitter already exists for this object");this.instance.on=(k,R)=>this._addListener(k,"many",R),this.instance.once=(k,R)=>this._addListener(k,"once",R),this.instance.removeAllListeners=(k=null)=>k!=null?delete this._events[k]:this._events={}}_addListener(Y,k,R){var L;return(L=this._events)[Y]==null&&(L[Y]=[]),this._events[Y].push({cb:R,status:k}),this.instance}listenerCount(Y){return this._events[Y]!=null?this._events[Y].length:0}async trigger(Y,...k){var R,L;try{return Y!=="debug"&&this.trigger("debug",`Event triggered: ${Y}`,k),this._events[Y]==null?void 0:(this._events[Y]=this._events[Y].filter(function(N){return N.status!=="none"}),L=this._events[Y].map(async N=>{var z,q;if(N.status!=="none"){N.status==="once"&&(N.status="none");try{return q=typeof N.cb=="function"?N.cb(...k):void 0,typeof(q!=null?q.then:void 0)=="function"?await q:q}catch(ue){return z=ue,this.trigger("error",z),null}}}),(await Promise.all(L)).find(function(N){return N!=null}))}catch(N){return R=N,this.trigger("error",R),null}}};var u=c,d,f,h;d=l,f=u,h=class{constructor(Y){this.Events=new f(this),this._length=0,this._lists=(function(){var k,R,L;for(L=[],k=1,R=Y;1<=R?k<=R:k>=R;1<=R?++k:--k)L.push(new d(()=>this.incr(),()=>this.decr()));return L}).call(this)}incr(){if(this._length++===0)return this.Events.trigger("leftzero")}decr(){if(--this._length===0)return this.Events.trigger("zero")}push(Y){return this._lists[Y.options.priority].push(Y)}queued(Y){return Y!=null?this._lists[Y].length:this._length}shiftAll(Y){return this._lists.forEach(function(k){return k.forEachShift(Y)})}getFirst(Y=this._lists){var k,R,L;for(k=0,R=Y.length;k0)return L;return[]}shiftLastFrom(Y){return this.getFirst(this._lists.slice(Y).reverse()).shift()}};var _=h,p;p=class extends Error{};var m=p,b,y,v,x,S;x=10,y=5,S=o,b=m,v=class{constructor(Y,k,R,L,N,z,q,ue){this.task=Y,this.args=k,this.rejectOnDrop=N,this.Events=z,this._states=q,this.Promise=ue,this.options=S.load(R,L),this.options.priority=this._sanitizePriority(this.options.priority),this.options.id===L.id&&(this.options.id=`${this.options.id}-${this._randomIndex()}`),this.promise=new this.Promise((ae,Ie)=>{this._resolve=ae,this._reject=Ie}),this.retryCount=0}_sanitizePriority(Y){var k;return k=~~Y!==Y?y:Y,k<0?0:k>x-1?x-1:k}_randomIndex(){return Math.random().toString(36).slice(2)}doDrop({error:Y,message:k="This job has been dropped by Bottleneck"}={}){return this._states.remove(this.options.id)?(this.rejectOnDrop&&this._reject(Y??new b(k)),this.Events.trigger("dropped",{args:this.args,options:this.options,task:this.task,promise:this.promise}),!0):!1}_assertStatus(Y){var k;if(k=this._states.jobStatus(this.options.id),!(k===Y||Y==="DONE"&&k===null))throw new b(`Invalid job status ${k}, expected ${Y}. Please open an issue at https://github.com/SGrondin/bottleneck/issues`)}doReceive(){return this._states.start(this.options.id),this.Events.trigger("received",{args:this.args,options:this.options})}doQueue(Y,k){return this._assertStatus("RECEIVED"),this._states.next(this.options.id),this.Events.trigger("queued",{args:this.args,options:this.options,reachedHWM:Y,blocked:k})}doRun(){return this.retryCount===0?(this._assertStatus("QUEUED"),this._states.next(this.options.id)):this._assertStatus("EXECUTING"),this.Events.trigger("scheduled",{args:this.args,options:this.options})}async doExecute(Y,k,R,L){var N,z,q;this.retryCount===0?(this._assertStatus("RUNNING"),this._states.next(this.options.id)):this._assertStatus("EXECUTING"),z={args:this.args,options:this.options,retryCount:this.retryCount},this.Events.trigger("executing",z);try{if(q=await(Y!=null?Y.schedule(this.options,this.task,...this.args):this.task(...this.args)),k())return this.doDone(z),await L(this.options,z),this._assertStatus("DONE"),this._resolve(q)}catch(ue){return N=ue,this._onFailure(N,z,k,R,L)}}doExpire(Y,k,R){var L,N;return this._states.jobStatus(this.options.id==="RUNNING")&&this._states.next(this.options.id),this._assertStatus("EXECUTING"),N={args:this.args,options:this.options,retryCount:this.retryCount},L=new b(`This job timed out after ${this.options.expiration} ms.`),this._onFailure(L,N,Y,k,R)}async _onFailure(Y,k,R,L,N){var z,q;if(R())return z=await this.Events.trigger("failed",Y,k),z!=null?(q=~~z,this.Events.trigger("retry",`Retrying ${this.options.id} after ${q} ms`,k),this.retryCount++,L(q)):(this.doDone(k),await N(this.options,k),this._assertStatus("DONE"),this._reject(Y))}doDone(Y){return this._assertStatus("EXECUTING"),this._states.next(this.options.id),this.Events.trigger("done",Y)}};var w=v,T,E,A;A=o,T=m,E=class{constructor(Y,k,R){this.instance=Y,this.storeOptions=k,this.clientId=this.instance._randomIndex(),A.load(R,R,this),this._nextRequest=this._lastReservoirRefresh=this._lastReservoirIncrease=Date.now(),this._running=0,this._done=0,this._unblockTime=0,this.ready=this.Promise.resolve(),this.clients={},this._startHeartbeat()}_startHeartbeat(){var Y;return this.heartbeat==null&&(this.storeOptions.reservoirRefreshInterval!=null&&this.storeOptions.reservoirRefreshAmount!=null||this.storeOptions.reservoirIncreaseInterval!=null&&this.storeOptions.reservoirIncreaseAmount!=null)?typeof(Y=this.heartbeat=setInterval(()=>{var k,R,L,N,z;if(N=Date.now(),this.storeOptions.reservoirRefreshInterval!=null&&N>=this._lastReservoirRefresh+this.storeOptions.reservoirRefreshInterval&&(this._lastReservoirRefresh=N,this.storeOptions.reservoir=this.storeOptions.reservoirRefreshAmount,this.instance._drainAll(this.computeCapacity())),this.storeOptions.reservoirIncreaseInterval!=null&&N>=this._lastReservoirIncrease+this.storeOptions.reservoirIncreaseInterval&&({reservoirIncreaseAmount:k,reservoirIncreaseMaximum:L,reservoir:z}=this.storeOptions,this._lastReservoirIncrease=N,R=L!=null?Math.min(k,L-z):k,R>0))return this.storeOptions.reservoir+=R,this.instance._drainAll(this.computeCapacity())},this.heartbeatInterval)).unref=="function"?Y.unref():void 0:clearInterval(this.heartbeat)}async __publish__(Y){return await this.yieldLoop(),this.instance.Events.trigger("message",Y.toString())}async __disconnect__(Y){return await this.yieldLoop(),clearInterval(this.heartbeat),this.Promise.resolve()}yieldLoop(Y=0){return new this.Promise(function(k,R){return setTimeout(k,Y)})}computePenalty(){var Y;return(Y=this.storeOptions.penalty)!=null?Y:15*this.storeOptions.minTime||5e3}async __updateSettings__(Y){return await this.yieldLoop(),A.overwrite(Y,Y,this.storeOptions),this._startHeartbeat(),this.instance._drainAll(this.computeCapacity()),!0}async __running__(){return await this.yieldLoop(),this._running}async __queued__(){return await this.yieldLoop(),this.instance.queued()}async __done__(){return await this.yieldLoop(),this._done}async __groupCheck__(Y){return await this.yieldLoop(),this._nextRequest+this.timeout=Y}check(Y,k){return this.conditionsCheck(Y)&&this._nextRequest-k<=0}async __check__(Y){var k;return await this.yieldLoop(),k=Date.now(),this.check(Y,k)}async __register__(Y,k,R){var L,N;return await this.yieldLoop(),L=Date.now(),this.conditionsCheck(k)?(this._running+=k,this.storeOptions.reservoir!=null&&(this.storeOptions.reservoir-=k),N=Math.max(this._nextRequest-L,0),this._nextRequest=L+N+this.storeOptions.minTime,{success:!0,wait:N,reservoir:this.storeOptions.reservoir}):{success:!1}}strategyIsBlock(){return this.storeOptions.strategy===3}async __submit__(Y,k){var R,L,N;if(await this.yieldLoop(),this.storeOptions.maxConcurrent!=null&&k>this.storeOptions.maxConcurrent)throw new T(`Impossible to add a job having a weight of ${k} to a limiter having a maxConcurrent setting of ${this.storeOptions.maxConcurrent}`);return L=Date.now(),N=this.storeOptions.highWater!=null&&Y===this.storeOptions.highWater&&!this.check(k,L),R=this.strategyIsBlock()&&(N||this.isBlocked(L)),R&&(this._unblockTime=L+this.computePenalty(),this._nextRequest=this._unblockTime+this.storeOptions.minTime,this.instance._dropAllQueued()),{reachedHWM:N,blocked:R,strategy:this.storeOptions.strategy}}async __free__(Y,k){return await this.yieldLoop(),this._running-=k,this._done+=k,this.instance._drainAll(this.computeCapacity()),{running:this._running}}};var O=E,I,B;I=m,B=class{constructor(Y){this.status=Y,this._jobs={},this.counts=this.status.map(function(){return 0})}next(Y){var k,R;if(k=this._jobs[Y],R=k+1,k!=null&&R(Y[this.status[R]]=k,Y),{})}};var U=B,D,$;D=l,$=class{constructor(Y,k){this.schedule=this.schedule.bind(this),this.name=Y,this.Promise=k,this._running=0,this._queue=new D}isEmpty(){return this._queue.length===0}async _tryToRun(){var Y,k,R,L,N,z,q;if(this._running<1&&this._queue.length>0)return this._running++,{task:q,args:Y,resolve:N,reject:L}=this._queue.shift(),k=await async function(){try{return z=await q(...Y),function(){return N(z)}}catch(ue){return R=ue,function(){return L(R)}}}(),this._running--,this._tryToRun(),k()}schedule(Y,...k){var R,L,N;return N=L=null,R=new this.Promise(function(z,q){return N=z,L=q}),this._queue.push({task:Y,args:k,resolve:N,reject:L}),this._tryToRun(),R}};var F=$,H="2.19.5",j={version:H},Z=Object.freeze({version:H,default:j}),K=()=>console.log("You must import the full version of Bottleneck in order to use this feature."),oe=()=>console.log("You must import the full version of Bottleneck in order to use this feature."),Q=()=>console.log("You must import the full version of Bottleneck in order to use this feature."),me,Me,Pe,ie,de,Se;Se=o,me=u,ie=K,Pe=oe,de=Q,Me=(function(){class _e{constructor(k={}){this.deleteKey=this.deleteKey.bind(this),this.limiterOptions=k,Se.load(this.limiterOptions,this.defaults,this),this.Events=new me(this),this.instances={},this.Bottleneck=Fe,this._startAutoCleanup(),this.sharedConnection=this.connection!=null,this.connection==null&&(this.limiterOptions.datastore==="redis"?this.connection=new ie(Object.assign({},this.limiterOptions,{Events:this.Events})):this.limiterOptions.datastore==="ioredis"&&(this.connection=new Pe(Object.assign({},this.limiterOptions,{Events:this.Events}))))}key(k=""){var R;return(R=this.instances[k])!=null?R:(()=>{var L;return L=this.instances[k]=new this.Bottleneck(Object.assign(this.limiterOptions,{id:`${this.id}-${k}`,timeout:this.timeout,connection:this.connection})),this.Events.trigger("created",L,k),L})()}async deleteKey(k=""){var R,L;return L=this.instances[k],this.connection&&(R=await this.connection.__runCommand__(["del",...de.allKeys(`${this.id}-${k}`)])),L!=null&&(delete this.instances[k],await L.disconnect()),L!=null||R>0}limiters(){var k,R,L,N;R=this.instances,L=[];for(k in R)N=R[k],L.push({key:k,limiter:N});return L}keys(){return Object.keys(this.instances)}async clusterKeys(){var k,R,L,N,z,q,ue,ae,Ie;if(this.connection==null)return this.Promise.resolve(this.keys());for(q=[],k=null,Ie=`b_${this.id}-`.length,R=9;k!==0;)for([ae,L]=await this.connection.__runCommand__(["scan",k??0,"match",`b_${this.id}-*_settings`,"count",1e4]),k=~~ae,N=0,ue=L.length;N{var R,L,N,z,q,ue;q=Date.now(),N=this.instances,z=[];for(L in N){ue=N[L];try{await ue._store.__groupCheck__(q)?z.push(this.deleteKey(L)):z.push(void 0)}catch(ae){R=ae,z.push(ue.Events.trigger("error",R))}}return z},this.timeout/2)).unref=="function"?k.unref():void 0}updateSettings(k={}){if(Se.overwrite(k,this.defaults,this),Se.overwrite(k,k,this.limiterOptions),k.timeout!=null)return this._startAutoCleanup()}disconnect(k=!0){var R;if(!this.sharedConnection)return(R=this.connection)!=null?R.disconnect(k):void 0}}return _e.prototype.defaults={timeout:1e3*60*5,connection:null,Promise,id:"group-key"},_e}).call(n);var we=Me,ge,He,Be;Be=o,He=u,ge=(function(){class _e{constructor(k={}){this.options=k,Be.load(this.options,this.defaults,this),this.Events=new He(this),this._arr=[],this._resetPromise(),this._lastFlush=Date.now()}_resetPromise(){return this._promise=new this.Promise((k,R)=>this._resolve=k)}_flush(){return clearTimeout(this._timeout),this._lastFlush=Date.now(),this._resolve(),this.Events.trigger("batch",this._arr),this._arr=[],this._resetPromise()}add(k){var R;return this._arr.push(k),R=this._promise,this._arr.length===this.maxSize?this._flush():this.maxTime!=null&&this._arr.length===1&&(this._timeout=setTimeout(()=>this._flush(),this.maxTime)),R}}return _e.prototype.defaults={maxTime:null,maxSize:null,Promise},_e}).call(n);var P=ge,V=()=>console.log("You must import the full version of Bottleneck in order to use this feature."),te=s(Z),he,be,Te,Ae,ke,Ce,C,M,ne,le,pe,xe=[].splice;Ce=10,be=5,pe=o,C=_,Ae=w,ke=O,M=V,Te=u,ne=U,le=F,he=(function(){class _e{constructor(k={},...R){var L,N;this._addToQueue=this._addToQueue.bind(this),this._validateOptions(k,R),pe.load(k,this.instanceDefaults,this),this._queues=new C(Ce),this._scheduled={},this._states=new ne(["RECEIVED","QUEUED","RUNNING","EXECUTING"].concat(this.trackDoneStatus?["DONE"]:[])),this._limiter=null,this.Events=new Te(this),this._submitLock=new le("submit",this.Promise),this._registerLock=new le("register",this.Promise),N=pe.load(k,this.storeDefaults,{}),this._store=(function(){if(this.datastore==="redis"||this.datastore==="ioredis"||this.connection!=null)return L=pe.load(k,this.redisStoreDefaults,{}),new M(this,N,L);if(this.datastore==="local")return L=pe.load(k,this.localStoreDefaults,{}),new ke(this,N,L);throw new _e.prototype.BottleneckError(`Invalid datastore type: ${this.datastore}`)}).call(this),this._queues.on("leftzero",()=>{var z;return(z=this._store.heartbeat)!=null&&typeof z.ref=="function"?z.ref():void 0}),this._queues.on("zero",()=>{var z;return(z=this._store.heartbeat)!=null&&typeof z.unref=="function"?z.unref():void 0})}_validateOptions(k,R){if(!(k!=null&&typeof k=="object"&&R.length===0))throw new _e.prototype.BottleneckError("Bottleneck v2 takes a single object argument. Refer to https://github.com/SGrondin/bottleneck#upgrading-to-v2 if you're upgrading from Bottleneck v1.")}ready(){return this._store.ready}clients(){return this._store.clients}channel(){return`b_${this.id}`}channel_client(){return`b_${this.id}_${this._store.clientId}`}publish(k){return this._store.__publish__(k)}disconnect(k=!0){return this._store.__disconnect__(k)}chain(k){return this._limiter=k,this}queued(k){return this._queues.queued(k)}clusterQueued(){return this._store.__queued__()}empty(){return this.queued()===0&&this._submitLock.isEmpty()}running(){return this._store.__running__()}done(){return this._store.__done__()}jobStatus(k){return this._states.jobStatus(k)}jobs(k){return this._states.statusJobs(k)}counts(){return this._states.statusCounts()}_randomIndex(){return Math.random().toString(36).slice(2)}check(k=1){return this._store.__check__(k)}_clearGlobalState(k){return this._scheduled[k]!=null?(clearTimeout(this._scheduled[k].expiration),delete this._scheduled[k],!0):!1}async _free(k,R,L,N){var z,q;try{if({running:q}=await this._store.__free__(k,L.weight),this.Events.trigger("debug",`Freed ${L.id}`,N),q===0&&this.empty())return this.Events.trigger("idle")}catch(ue){return z=ue,this.Events.trigger("error",z)}}_run(k,R,L){var N,z,q;return R.doRun(),N=this._clearGlobalState.bind(this,k),q=this._run.bind(this,k,R),z=this._free.bind(this,k,R),this._scheduled[k]={timeout:setTimeout(()=>R.doExecute(this._limiter,N,q,z),L),expiration:R.options.expiration!=null?setTimeout(function(){return R.doExpire(N,q,z)},L+R.options.expiration):void 0,job:R}}_drainOne(k){return this._registerLock.schedule(()=>{var R,L,N,z,q;return this.queued()===0?this.Promise.resolve(null):(q=this._queues.getFirst(),{options:z,args:R}=N=q.first(),k!=null&&z.weight>k?this.Promise.resolve(null):(this.Events.trigger("debug",`Draining ${z.id}`,{args:R,options:z}),L=this._randomIndex(),this._store.__register__(L,z.weight,z.expiration).then(({success:ue,wait:ae,reservoir:Ie})=>{var Ze;return this.Events.trigger("debug",`Drained ${z.id}`,{success:ue,args:R,options:z}),ue?(q.shift(),Ze=this.empty(),Ze&&this.Events.trigger("empty"),Ie===0&&this.Events.trigger("depleted",Ze),this._run(L,N,ae),this.Promise.resolve(z.weight)):this.Promise.resolve(null)})))})}_drainAll(k,R=0){return this._drainOne(k).then(L=>{var N;return L!=null?(N=k!=null?k-L:k,this._drainAll(N,R+L)):this.Promise.resolve(R)}).catch(L=>this.Events.trigger("error",L))}_dropAllQueued(k){return this._queues.shiftAll(function(R){return R.doDrop({message:k})})}stop(k={}){var R,L;return k=pe.load(k,this.stopDefaults),L=N=>{var z;return z=()=>{var q;return q=this._states.counts,q[0]+q[1]+q[2]+q[3]===N},new this.Promise((q,ue)=>z()?q():this.on("done",()=>{if(z())return this.removeAllListeners("done"),q()}))},R=k.dropWaitingJobs?(this._run=function(N,z){return z.doDrop({message:k.dropErrorMessage})},this._drainOne=()=>this.Promise.resolve(null),this._registerLock.schedule(()=>this._submitLock.schedule(()=>{var N,z,q;z=this._scheduled;for(N in z)q=z[N],this.jobStatus(q.job.options.id)==="RUNNING"&&(clearTimeout(q.timeout),clearTimeout(q.expiration),q.job.doDrop({message:k.dropErrorMessage}));return this._dropAllQueued(k.dropErrorMessage),L(0)}))):this.schedule({priority:Ce-1,weight:0},()=>L(1)),this._receive=function(N){return N._reject(new _e.prototype.BottleneckError(k.enqueueErrorMessage))},this.stop=()=>this.Promise.reject(new _e.prototype.BottleneckError("stop() has already been called")),R}async _addToQueue(k){var R,L,N,z,q,ue,ae;({args:R,options:z}=k);try{({reachedHWM:q,blocked:L,strategy:ae}=await this._store.__submit__(this.queued(),z.weight))}catch(Ie){return N=Ie,this.Events.trigger("debug",`Could not queue ${z.id}`,{args:R,options:z,error:N}),k.doDrop({error:N}),!1}return L?(k.doDrop(),!0):q&&(ue=ae===_e.prototype.strategy.LEAK?this._queues.shiftLastFrom(z.priority):ae===_e.prototype.strategy.OVERFLOW_PRIORITY?this._queues.shiftLastFrom(z.priority+1):ae===_e.prototype.strategy.OVERFLOW?k:void 0,ue!=null&&ue.doDrop(),ue==null||ae===_e.prototype.strategy.OVERFLOW)?(ue==null&&k.doDrop(),q):(k.doQueue(q,L),this._queues.push(k),await this._drainAll(),q)}_receive(k){return this._states.jobStatus(k.options.id)!=null?(k._reject(new _e.prototype.BottleneckError(`A job with the same id already exists (id=${k.options.id})`)),!1):(k.doReceive(),this._submitLock.schedule(this._addToQueue,k))}submit(...k){var R,L,N,z,q,ue,ae;return typeof k[0]=="function"?(q=k,[L,...k]=q,[R]=xe.call(k,-1),z=pe.load({},this.jobDefaults)):(ue=k,[z,L,...k]=ue,[R]=xe.call(k,-1),z=pe.load(z,this.jobDefaults)),ae=(...Ie)=>new this.Promise(function(Ze,lt){return L(...Ie,function(...gn){return(gn[0]!=null?lt:Ze)(gn)})}),N=new Ae(ae,k,z,this.jobDefaults,this.rejectOnDrop,this.Events,this._states,this.Promise),N.promise.then(function(Ie){return typeof R=="function"?R(...Ie):void 0}).catch(function(Ie){return Array.isArray(Ie)?typeof R=="function"?R(...Ie):void 0:typeof R=="function"?R(Ie):void 0}),this._receive(N)}schedule(...k){var R,L,N;return typeof k[0]=="function"?([N,...k]=k,L={}):[L,N,...k]=k,R=new Ae(N,k,L,this.jobDefaults,this.rejectOnDrop,this.Events,this._states,this.Promise),this._receive(R),R.promise}wrap(k){var R,L;return R=this.schedule.bind(this),L=function(...N){return R(k.bind(this),...N)},L.withOptions=function(N,...z){return R(N,k,...z)},L}async updateSettings(k={}){return await this._store.__updateSettings__(pe.overwrite(k,this.storeDefaults)),pe.overwrite(k,this.instanceDefaults,this),this}currentReservoir(){return this._store.__currentReservoir__()}incrementReservoir(k=0){return this._store.__incrementReservoir__(k)}}return _e.default=_e,_e.Events=Te,_e.version=_e.prototype.version=te.version,_e.strategy=_e.prototype.strategy={LEAK:1,OVERFLOW:2,OVERFLOW_PRIORITY:4,BLOCK:3},_e.BottleneckError=_e.prototype.BottleneckError=m,_e.Group=_e.prototype.Group=we,_e.RedisConnection=_e.prototype.RedisConnection=K,_e.IORedisConnection=_e.prototype.IORedisConnection=oe,_e.Batcher=_e.prototype.Batcher=P,_e.prototype.jobDefaults={priority:be,weight:1,expiration:null,id:""},_e.prototype.storeDefaults={maxConcurrent:null,minTime:0,highWater:null,strategy:_e.prototype.strategy.LEAK,penalty:null,reservoir:null,reservoirRefreshInterval:null,reservoirRefreshAmount:null,reservoirIncreaseInterval:null,reservoirIncreaseAmount:null,reservoirIncreaseMaximum:null},_e.prototype.localStoreDefaults={Promise,timeout:null,heartbeatInterval:250},_e.prototype.redisStoreDefaults={Promise,timeout:null,heartbeatInterval:5e3,clientTimeout:1e4,Redis:null,clientOptions:{},clusterNodes:null,clearDatastore:!1,connection:null},_e.prototype.instanceDefaults={datastore:"local",connection:null,id:"",rejectOnDrop:!0,trackDoneStatus:!1,Promise},_e.prototype.stopDefaults={enqueueErrorMessage:"This limiter has been stopped and cannot accept new jobs.",dropWaitingJobs:!0,dropErrorMessage:"This limiter has been stopped."},_e}).call(n);var Fe=he,re=Fe;return re})})(q6);var $ye=q6.exports;const Y6=Jl($ye);async function K6(t,e,n,s){if(!n.request||!n.request.request)throw n;if(n.status>=400&&!t.doNotRetry.includes(n.status)){const i=s.request.retries!=null?s.request.retries:t.retries,r=Math.pow((s.request.retryCount||0)+1,2);throw e.retry.retryRequest(n,i,r)}throw n}async function Uye(t,e,n,s){const i=new Y6;return i.on("failed",function(r,o){const a=~~r.request.request.retries,l=~~r.request.request.retryAfter;if(s.request.retryCount=o.retryCount+1,a>o.retryCount)return l*t.retryAfterBaseValue}),i.schedule(Bye.bind(null,t,e,n),s)}async function Bye(t,e,n,s){const i=await n(n,s);if(i.data&&i.data.errors&&/Something went wrong while executing your query/.test(i.data.errors[0].message)){const r=new ll(i.data.errors[0].message,500,{request:s,response:i});return K6(t,e,r,s)}return i}var Gye="4.1.6";function X6(t,e){const n=Object.assign({enabled:!0,retryAfterBaseValue:1e3,doNotRetry:[400,401,403,404,422],retries:3},e.retry);return n.enabled&&(t.hook.error("request",K6.bind(null,n,t)),t.hook.wrap("request",Uye.bind(null,n,t))),{retry:{retryRequest:(s,i,r)=>(s.request.request=Object.assign({},s.request.request,{retries:i,retryAfter:r}),s)}}}X6.VERSION=Gye;const zye="5.2.3",Z1=()=>Promise.resolve();function Hye(t,e,n){return t.retryLimiter.schedule(Vye,t,e,n)}async function Vye(t,e,n){const s=n.method!=="GET"&&n.method!=="HEAD",{pathname:i}=new URL(n.url,"http://github.test"),r=n.method==="GET"&&i.startsWith("/search/"),o=i.startsWith("/graphql"),l=~~e.retryCount>0?{priority:0,weight:0}:{};t.clustering&&(l.expiration=1e3*60),(s||o)&&await t.write.key(t.id).schedule(l,Z1),s&&t.triggersNotification(i)&&await t.notifications.key(t.id).schedule(l,Z1),r&&await t.search.key(t.id).schedule(l,Z1);const c=t.global.key(t.id).schedule(l,e,n);if(o){const u=await c;if(u.data.errors!=null&&u.data.errors.some(d=>d.type==="RATE_LIMITED"))throw Object.assign(new Error("GraphQL Rate Limit Exceeded"),{response:u,data:u.data})}return c}var Wye=["/orgs/{org}/invitations","/orgs/{org}/invitations/{invitation_id}","/orgs/{org}/teams/{team_slug}/discussions","/orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments","/repos/{owner}/{repo}/collaborators/{username}","/repos/{owner}/{repo}/commits/{commit_sha}/comments","/repos/{owner}/{repo}/issues","/repos/{owner}/{repo}/issues/{issue_number}/comments","/repos/{owner}/{repo}/pulls","/repos/{owner}/{repo}/pulls/{pull_number}/comments","/repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies","/repos/{owner}/{repo}/pulls/{pull_number}/merge","/repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers","/repos/{owner}/{repo}/pulls/{pull_number}/reviews","/repos/{owner}/{repo}/releases","/teams/{team_id}/discussions","/teams/{team_id}/discussions/{discussion_number}/comments"];function jye(t){const n=`^(?:${t.map(s=>s.split("/").map(i=>i.startsWith("{")?"(?:.+?)":i).join("/")).map(s=>`(?:${s})`).join("|")})[^/]*$`;return new RegExp(n,"i")}const QT=jye(Wye),Z6=QT.test.bind(QT),Kc={},qye=function(t,e){Kc.global=new t.Group({id:"octokit-global",maxConcurrent:10,...e}),Kc.search=new t.Group({id:"octokit-search",maxConcurrent:1,minTime:2e3,...e}),Kc.write=new t.Group({id:"octokit-write",maxConcurrent:1,minTime:1e3,...e}),Kc.notifications=new t.Group({id:"octokit-notifications",maxConcurrent:1,minTime:3e3,...e})};function Ex(t,e){const{enabled:n=!0,Bottleneck:s=Y6,id:i="no-id",timeout:r=1e3*60*2,connection:o}=e.throttle||{};if(!n)return{};const a={connection:o,timeout:r};Kc.global==null&&qye(s,a),e.throttle&&e.throttle.minimalSecondaryRateRetryAfter&&(t.log.warn("[@octokit/plugin-throttling] `options.throttle.minimalSecondaryRateRetryAfter` is deprecated, please use `options.throttle.fallbackSecondaryRateRetryAfter` instead"),e.throttle.fallbackSecondaryRateRetryAfter=e.throttle.minimalSecondaryRateRetryAfter,delete e.throttle.minimalSecondaryRateRetryAfter),e.throttle&&e.throttle.onAbuseLimit&&(t.log.warn("[@octokit/plugin-throttling] `onAbuseLimit()` is deprecated and will be removed in a future release of `@octokit/plugin-throttling`, please use the `onSecondaryRateLimit` handler instead"),e.throttle.onSecondaryRateLimit=e.throttle.onAbuseLimit,delete e.throttle.onAbuseLimit);const l=Object.assign({clustering:o!=null,triggersNotification:Z6,fallbackSecondaryRateRetryAfter:60,retryAfterBaseValue:1e3,retryLimiter:new s,id:i,...Kc},e.throttle);if(typeof l.onSecondaryRateLimit!="function"||typeof l.onRateLimit!="function")throw new Error(`octokit/plugin-throttling error: + You must pass the onSecondaryRateLimit and onRateLimit error handlers. + See https://octokit.github.io/rest.js/#throttling + + const octokit = new Octokit({ + throttle: { + onSecondaryRateLimit: (retryAfter, options) => {/* ... */}, + onRateLimit: (retryAfter, options) => {/* ... */} + } + }) + `);const c={},u=new s.Events(c);return c.on("secondary-limit",l.onSecondaryRateLimit),c.on("rate-limit",l.onRateLimit),c.on("error",d=>t.log.warn("Error in throttling-plugin limit handler",d)),l.retryLimiter.on("failed",async function(d,f){const[h,_,p]=f.args,{pathname:m}=new URL(p.url,"http://github.test");if(!(m.startsWith("/graphql")&&d.status!==401||d.status===403))return;const y=~~_.retryCount;_.retryCount=y,p.request.retryCount=y;const{wantRetry:v,retryAfter:x=0}=await async function(){if(/\bsecondary rate\b/i.test(d.message)){const S=Number(d.response.headers["retry-after"])||h.fallbackSecondaryRateRetryAfter;return{wantRetry:await u.trigger("secondary-limit",S,p,t,y),retryAfter:S}}if(d.response.headers!=null&&d.response.headers["x-ratelimit-remaining"]==="0"){const S=new Date(~~d.response.headers["x-ratelimit-reset"]*1e3).getTime(),w=Math.max(Math.ceil((S-Date.now())/1e3),0);return{wantRetry:await u.trigger("rate-limit",w,p,t,y),retryAfter:w}}return{}}();if(v)return _.retryCount++,x*h.retryAfterBaseValue}),t.hook.wrap("request",Hye.bind(null,l)),{}}Ex.VERSION=zye;Ex.triggersNotification=Z6;var Yye=function(e){return btoa(e)};const Fa=Jl(Yye);function Kye(t){const e=t.clientType||"oauth-app",n=t.baseUrl||"https://github.com",s={clientType:e,allowSignup:t.allowSignup!==!1,clientId:t.clientId,login:t.login||null,redirectUrl:t.redirectUrl||null,state:t.state||Math.random().toString(36).substr(2),url:""};if(e==="oauth-app"){const i="scopes"in t?t.scopes:[];s.scopes=typeof i=="string"?i.split(/[,\s]+/).filter(Boolean):i}return s.url=Xye(`${n}/login/oauth/authorize`,s),s}function Xye(t,e){const n={allowSignup:"allow_signup",clientId:"client_id",login:"login",redirectUrl:"redirect_uri",scopes:"scope",state:"state"};let s=t;return Object.keys(n).filter(i=>e[i]!==null).filter(i=>i!=="scopes"?!0:e.clientType==="github-app"?!1:!Array.isArray(e[i])||e[i].length>0).map(i=>[n[i],`${e[i]}`]).forEach(([i,r],o)=>{s+=o===0?"?":"&",s+=`${i}=${encodeURIComponent(r)}`}),s}var Zye="2.0.6";function J6(t){const e=t.endpoint.DEFAULTS;return/^https:\/\/(api\.)?github\.com$/.test(e.baseUrl)?"https://github.com":e.baseUrl.replace("/api/v3","")}async function t0(t,e,n){const s={baseUrl:J6(t),headers:{accept:"application/json"},...n},i=await t(e,s);if("error"in i.data){const r=new ll(`${i.data.error_description} (${i.data.error}, ${i.data.error_uri})`,400,{request:t.endpoint.merge(e,s),headers:i.headers});throw r.response=i,r}return i}function Jye({request:t=Qn,...e}){const n=J6(t);return Kye({...e,baseUrl:n})}async function Q6(t){const e=t.request||Qn,n=await t0(e,"POST /login/oauth/access_token",{client_id:t.clientId,client_secret:t.clientSecret,code:t.code,redirect_uri:t.redirectUrl}),s={clientType:t.clientType,clientId:t.clientId,clientSecret:t.clientSecret,token:n.data.access_token,scopes:n.data.scope.split(/\s+/).filter(Boolean)};if(t.clientType==="github-app"){if("refresh_token"in n.data){const i=new Date(n.headers.date).getTime();s.refreshToken=n.data.refresh_token,s.expiresAt=eA(i,n.data.expires_in),s.refreshTokenExpiresAt=eA(i,n.data.refresh_token_expires_in)}delete s.scopes}return{...n,authentication:s}}function eA(t,e){return new Date(t+e*1e3).toISOString()}async function eC(t){const e=t.request||Qn,n={client_id:t.clientId};return"scopes"in t&&Array.isArray(t.scopes)&&(n.scope=t.scopes.join(" ")),t0(e,"POST /login/device/code",n)}async function Ry(t){const e=t.request||Qn,n=await t0(e,"POST /login/oauth/access_token",{client_id:t.clientId,device_code:t.code,grant_type:"urn:ietf:params:oauth:grant-type:device_code"}),s={clientType:t.clientType,clientId:t.clientId,token:n.data.access_token,scopes:n.data.scope.split(/\s+/).filter(Boolean)};if("clientSecret"in t&&(s.clientSecret=t.clientSecret),t.clientType==="github-app"){if("refresh_token"in n.data){const i=new Date(n.headers.date).getTime();s.refreshToken=n.data.refresh_token,s.expiresAt=tA(i,n.data.expires_in),s.refreshTokenExpiresAt=tA(i,n.data.refresh_token_expires_in)}delete s.scopes}return{...n,authentication:s}}function tA(t,e){return new Date(t+e*1e3).toISOString()}async function tC(t){const n=await(t.request||Qn)("POST /applications/{client_id}/token",{headers:{authorization:`basic ${Fa(`${t.clientId}:${t.clientSecret}`)}`},client_id:t.clientId,access_token:t.token}),s={clientType:t.clientType,clientId:t.clientId,clientSecret:t.clientSecret,token:t.token,scopes:n.data.scopes};return n.data.expires_at&&(s.expiresAt=n.data.expires_at),t.clientType==="github-app"&&delete s.scopes,{...n,authentication:s}}async function nC(t){const e=t.request||Qn,n=await t0(e,"POST /login/oauth/access_token",{client_id:t.clientId,client_secret:t.clientSecret,grant_type:"refresh_token",refresh_token:t.refreshToken}),s=new Date(n.headers.date).getTime(),i={clientType:"github-app",clientId:t.clientId,clientSecret:t.clientSecret,token:n.data.access_token,refreshToken:n.data.refresh_token,expiresAt:nA(s,n.data.expires_in),refreshTokenExpiresAt:nA(s,n.data.refresh_token_expires_in)};return{...n,authentication:i}}function nA(t,e){return new Date(t+e*1e3).toISOString()}async function Qye(t){const{request:e,clientType:n,clientId:s,clientSecret:i,token:r,...o}=t,l=await(e||Qn)("POST /applications/{client_id}/token/scoped",{headers:{authorization:`basic ${Fa(`${s}:${i}`)}`},client_id:s,access_token:r,...o}),c=Object.assign({clientType:n,clientId:s,clientSecret:i,token:l.data.token},l.data.expires_at?{expiresAt:l.data.expires_at}:{});return{...l,authentication:c}}async function sC(t){const e=t.request||Qn,n=Fa(`${t.clientId}:${t.clientSecret}`),s=await e("PATCH /applications/{client_id}/token",{headers:{authorization:`basic ${n}`},client_id:t.clientId,access_token:t.token}),i={clientType:t.clientType,clientId:t.clientId,clientSecret:t.clientSecret,token:s.data.token,scopes:s.data.scopes};return s.data.expires_at&&(i.expiresAt=s.data.expires_at),t.clientType==="github-app"&&delete i.scopes,{...s,authentication:i}}async function iC(t){const e=t.request||Qn,n=Fa(`${t.clientId}:${t.clientSecret}`);return e("DELETE /applications/{client_id}/token",{headers:{authorization:`basic ${n}`},client_id:t.clientId,access_token:t.token})}async function rC(t){const e=t.request||Qn,n=Fa(`${t.clientId}:${t.clientSecret}`);return e("DELETE /applications/{client_id}/grant",{headers:{authorization:`basic ${n}`},client_id:t.clientId,access_token:t.token})}const eve=Object.freeze(Object.defineProperty({__proto__:null,VERSION:Zye,checkToken:tC,createDeviceCode:eC,deleteAuthorization:rC,deleteToken:iC,exchangeDeviceCode:Ry,exchangeWebFlowCode:Q6,getWebFlowAuthorizationUrl:Jye,refreshToken:nC,resetToken:sC,scopeToken:Qye},Symbol.toStringTag,{value:"Module"}));async function oC(t,e){const n=tve(t,e.auth);if(n)return n;const{data:s}=await eC({clientType:t.clientType,clientId:t.clientId,request:e.request||t.request,scopes:e.auth.scopes||t.scopes});await t.onVerification(s);const i=await Cy(e.request||t.request,t.clientId,t.clientType,s);return t.authentication=i,i}function tve(t,e){if(e.refresh===!0||!t.authentication)return!1;if(t.clientType==="github-app")return t.authentication;const n=t.authentication,s=("scopes"in e&&e.scopes||t.scopes).join(" "),i=n.scopes.join(" ");return s===i?n:!1}async function sA(t){await new Promise(e=>setTimeout(e,t*1e3))}async function Cy(t,e,n,s){try{const i={clientId:e,request:t,code:s.device_code},{authentication:r}=n==="oauth-app"?await Ry({...i,clientType:"oauth-app"}):await Ry({...i,clientType:"github-app"});return{type:"token",tokenType:"oauth",...r}}catch(i){if(!i.response)throw i;const r=i.response.data.error;if(r==="authorization_pending")return await sA(s.interval),Cy(t,e,n,s);if(r==="slow_down")return await sA(s.interval+5),Cy(t,e,n,s);throw i}}async function nve(t,e){return oC(t,{auth:e})}async function sve(t,e,n,s){let i=e.endpoint.merge(n,s);if(/\/login\/(oauth\/access_token|device\/code)$/.test(i.url))return e(i);const{token:r}=await oC(t,{request:e,auth:{type:"oauth"}});return i.headers.authorization=`token ${r}`,e(i)}var ive="4.0.5";function rve(t){const e=t.request||Qn.defaults({headers:{"user-agent":`octokit-auth-oauth-device.js/${ive} ${Ao()}`}}),{request:n=e,...s}=t,i=t.clientType==="github-app"?{...s,clientType:"github-app",request:n}:{...s,clientType:"oauth-app",request:n,scopes:t.scopes||[]};if(!t.clientId)throw new Error('[@octokit/auth-oauth-device] "clientId" option must be set (https://github.com/octokit/auth-oauth-device.js#usage)');if(!t.onVerification)throw new Error('[@octokit/auth-oauth-device] "onVerification" option must be a function (https://github.com/octokit/auth-oauth-device.js#usage)');return Object.assign(nve.bind(null,i),{hook:sve.bind(null,i)})}var aC="2.1.2";async function iA(t){if("code"in t.strategyOptions){const{authentication:e}=await Q6({clientId:t.clientId,clientSecret:t.clientSecret,clientType:t.clientType,onTokenCreated:t.onTokenCreated,...t.strategyOptions,request:t.request});return{type:"token",tokenType:"oauth",...e}}if("onVerification"in t.strategyOptions){const n=await rve({clientType:t.clientType,clientId:t.clientId,onTokenCreated:t.onTokenCreated,...t.strategyOptions,request:t.request})({type:"oauth"});return{clientSecret:t.clientSecret,...n}}if("token"in t.strategyOptions)return{type:"token",tokenType:"oauth",clientId:t.clientId,clientSecret:t.clientSecret,clientType:t.clientType,onTokenCreated:t.onTokenCreated,...t.strategyOptions};throw new Error("[@octokit/auth-oauth-user] Invalid strategy options")}async function Oy(t,e={}){var s,i;if(t.authentication||(t.authentication=t.clientType==="oauth-app"?await iA(t):await iA(t)),t.authentication.invalid)throw new Error("[@octokit/auth-oauth-user] Token is invalid");const n=t.authentication;if("expiresAt"in n&&(e.type==="refresh"||new Date(n.expiresAt){if(/BEGIN RSA PRIVATE KEY/.test(t))throw new Error("[universal-github-app-jwt] Private Key is in PKCS#1 format, but only PKCS#8 is supported. See https://github.com/gr2m/universal-github-app-jwt#readme");const n={name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},s={alg:"RS256",typ:"JWT"},i=hve(t),r=await crypto.subtle.importKey("pkcs8",i,n,!1,["sign"]),o=pve(s,e),a=cC(o),l=await crypto.subtle.sign(n.name,r,a),c=mve(l);return`${o}.${c}`};async function _ve({id:t,privateKey:e,now:n=Math.floor(Date.now()/1e3)}){const s=n-30,i=s+60*10,o=await gve({privateKey:e,payload:{iat:s,exp:i,iss:t}});return{appId:t,expiration:i,token:o}}const Yd=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,dC=new Set,Iy=typeof process=="object"&&process?process:{},fC=(t,e,n,s)=>{typeof Iy.emitWarning=="function"?Iy.emitWarning(t,e,n,s):console.error(`[${n}] ${e}: ${t}`)};let kg=globalThis.AbortController,oA=globalThis.AbortSignal;var YM;if(typeof kg>"u"){oA=class{constructor(){$e(this,"onabort");$e(this,"_onabort",[]);$e(this,"reason");$e(this,"aborted",!1)}addEventListener(s,i){this._onabort.push(i)}},kg=class{constructor(){$e(this,"signal",new oA);e()}abort(s){var i,r;if(!this.signal.aborted){this.signal.reason=s,this.signal.aborted=!0;for(const o of this.signal._onabort)o(s);(r=(i=this.signal).onabort)==null||r.call(i,s)}}};let t=((YM=Iy.env)==null?void 0:YM.LRU_CACHE_IGNORE_AC_WARNING)!=="1";const e=()=>{t&&(t=!1,fC("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",e))}}const bve=t=>!dC.has(t),Ko=t=>t&&t===Math.floor(t)&&t>0&&isFinite(t),hC=t=>Ko(t)?t<=Math.pow(2,8)?Uint8Array:t<=Math.pow(2,16)?Uint16Array:t<=Math.pow(2,32)?Uint32Array:t<=Number.MAX_SAFE_INTEGER?Um:null:null;class Um extends Array{constructor(e){super(e),this.fill(0)}}var _u;const ul=class ul{constructor(e,n){$e(this,"heap");$e(this,"length");if(!W(ul,_u))throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new n(e),this.length=0}static create(e){const n=hC(e);if(!n)return[];Qe(ul,_u,!0);const s=new ul(e,n);return Qe(ul,_u,!1),s}push(e){this.heap[this.length++]=e}pop(){return this.heap[--this.length]}};_u=new WeakMap,pt(ul,_u,!1);let Ly=ul;var Ci,Gs,lr,Oi,bu,Pn,Ii,Dn,Jt,ct,ms,zs,ns,Hn,Li,Yn,Jr,Qr,Pi,cr,aa,Rs,vh,Dy,Sl,eo,wh,Hs,Gg,pC,El,yu,xh,ur,Xo,dr,Zo,Sh,Fy,vu,Bm,wu,Gm,Yt,ln,Eh,Ny,Tl,cf;const Zx=class Zx{constructor(e){pt(this,vh);pt(this,Gg);pt(this,ur);pt(this,dr);pt(this,Sh);pt(this,vu);pt(this,wu);pt(this,Yt);pt(this,Eh);pt(this,Tl);pt(this,Ci,void 0);pt(this,Gs,void 0);pt(this,lr,void 0);pt(this,Oi,void 0);pt(this,bu,void 0);$e(this,"ttl");$e(this,"ttlResolution");$e(this,"ttlAutopurge");$e(this,"updateAgeOnGet");$e(this,"updateAgeOnHas");$e(this,"allowStale");$e(this,"noDisposeOnSet");$e(this,"noUpdateTTL");$e(this,"maxEntrySize");$e(this,"sizeCalculation");$e(this,"noDeleteOnFetchRejection");$e(this,"noDeleteOnStaleGet");$e(this,"allowStaleOnFetchAbort");$e(this,"allowStaleOnFetchRejection");$e(this,"ignoreFetchAbort");pt(this,Pn,void 0);pt(this,Ii,void 0);pt(this,Dn,void 0);pt(this,Jt,void 0);pt(this,ct,void 0);pt(this,ms,void 0);pt(this,zs,void 0);pt(this,ns,void 0);pt(this,Hn,void 0);pt(this,Li,void 0);pt(this,Yn,void 0);pt(this,Jr,void 0);pt(this,Qr,void 0);pt(this,Pi,void 0);pt(this,cr,void 0);pt(this,aa,void 0);pt(this,Rs,void 0);pt(this,Sl,()=>{});pt(this,eo,()=>{});pt(this,wh,()=>{});pt(this,Hs,()=>!1);pt(this,El,e=>{});pt(this,yu,(e,n,s)=>{});pt(this,xh,(e,n,s,i)=>{if(s||i)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0});const{max:n=0,ttl:s,ttlResolution:i=1,ttlAutopurge:r,updateAgeOnGet:o,updateAgeOnHas:a,allowStale:l,dispose:c,disposeAfter:u,noDisposeOnSet:d,noUpdateTTL:f,maxSize:h=0,maxEntrySize:_=0,sizeCalculation:p,fetchMethod:m,noDeleteOnFetchRejection:b,noDeleteOnStaleGet:y,allowStaleOnFetchRejection:v,allowStaleOnFetchAbort:x,ignoreFetchAbort:S}=e;if(n!==0&&!Ko(n))throw new TypeError("max option must be a nonnegative integer");const w=n?hC(n):Array;if(!w)throw new Error("invalid max value: "+n);if(Qe(this,Ci,n),Qe(this,Gs,h),this.maxEntrySize=_||W(this,Gs),this.sizeCalculation=p,this.sizeCalculation){if(!W(this,Gs)&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(m!==void 0&&typeof m!="function")throw new TypeError("fetchMethod must be a function if specified");if(Qe(this,bu,m),Qe(this,aa,!!m),Qe(this,Dn,new Map),Qe(this,Jt,new Array(n).fill(void 0)),Qe(this,ct,new Array(n).fill(void 0)),Qe(this,ms,new w(n)),Qe(this,zs,new w(n)),Qe(this,ns,0),Qe(this,Hn,0),Qe(this,Li,Ly.create(n)),Qe(this,Pn,0),Qe(this,Ii,0),typeof c=="function"&&Qe(this,lr,c),typeof u=="function"?(Qe(this,Oi,u),Qe(this,Yn,[])):(Qe(this,Oi,void 0),Qe(this,Yn,void 0)),Qe(this,cr,!!W(this,lr)),Qe(this,Rs,!!W(this,Oi)),this.noDisposeOnSet=!!d,this.noUpdateTTL=!!f,this.noDeleteOnFetchRejection=!!b,this.allowStaleOnFetchRejection=!!v,this.allowStaleOnFetchAbort=!!x,this.ignoreFetchAbort=!!S,this.maxEntrySize!==0){if(W(this,Gs)!==0&&!Ko(W(this,Gs)))throw new TypeError("maxSize must be a positive integer if specified");if(!Ko(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");Ye(this,Gg,pC).call(this)}if(this.allowStale=!!l,this.noDeleteOnStaleGet=!!y,this.updateAgeOnGet=!!o,this.updateAgeOnHas=!!a,this.ttlResolution=Ko(i)||i===0?i:1,this.ttlAutopurge=!!r,this.ttl=s||0,this.ttl){if(!Ko(this.ttl))throw new TypeError("ttl must be a positive integer if specified");Ye(this,vh,Dy).call(this)}if(W(this,Ci)===0&&this.ttl===0&&W(this,Gs)===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!W(this,Ci)&&!W(this,Gs)){const T="LRU_CACHE_UNBOUNDED";bve(T)&&(dC.add(T),fC("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",T,Zx))}}static unsafeExposeInternals(e){return{starts:W(e,Qr),ttls:W(e,Pi),sizes:W(e,Jr),keyMap:W(e,Dn),keyList:W(e,Jt),valList:W(e,ct),next:W(e,ms),prev:W(e,zs),get head(){return W(e,ns)},get tail(){return W(e,Hn)},free:W(e,Li),isBackgroundFetch:n=>{var s;return Ye(s=e,Yt,ln).call(s,n)},backgroundFetch:(n,s,i,r)=>{var o;return Ye(o=e,wu,Gm).call(o,n,s,i,r)},moveToTail:n=>{var s;return Ye(s=e,Tl,cf).call(s,n)},indexes:n=>{var s;return Ye(s=e,ur,Xo).call(s,n)},rindexes:n=>{var s;return Ye(s=e,dr,Zo).call(s,n)},isStale:n=>{var s;return W(s=e,Hs).call(s,n)}}}get max(){return W(this,Ci)}get maxSize(){return W(this,Gs)}get calculatedSize(){return W(this,Ii)}get size(){return W(this,Pn)}get fetchMethod(){return W(this,bu)}get dispose(){return W(this,lr)}get disposeAfter(){return W(this,Oi)}getRemainingTTL(e){return W(this,Dn).has(e)?1/0:0}*entries(){for(const e of Ye(this,ur,Xo).call(this))W(this,ct)[e]!==void 0&&W(this,Jt)[e]!==void 0&&!Ye(this,Yt,ln).call(this,W(this,ct)[e])&&(yield[W(this,Jt)[e],W(this,ct)[e]])}*rentries(){for(const e of Ye(this,dr,Zo).call(this))W(this,ct)[e]!==void 0&&W(this,Jt)[e]!==void 0&&!Ye(this,Yt,ln).call(this,W(this,ct)[e])&&(yield[W(this,Jt)[e],W(this,ct)[e]])}*keys(){for(const e of Ye(this,ur,Xo).call(this)){const n=W(this,Jt)[e];n!==void 0&&!Ye(this,Yt,ln).call(this,W(this,ct)[e])&&(yield n)}}*rkeys(){for(const e of Ye(this,dr,Zo).call(this)){const n=W(this,Jt)[e];n!==void 0&&!Ye(this,Yt,ln).call(this,W(this,ct)[e])&&(yield n)}}*values(){for(const e of Ye(this,ur,Xo).call(this))W(this,ct)[e]!==void 0&&!Ye(this,Yt,ln).call(this,W(this,ct)[e])&&(yield W(this,ct)[e])}*rvalues(){for(const e of Ye(this,dr,Zo).call(this))W(this,ct)[e]!==void 0&&!Ye(this,Yt,ln).call(this,W(this,ct)[e])&&(yield W(this,ct)[e])}[Symbol.iterator](){return this.entries()}find(e,n={}){for(const s of Ye(this,ur,Xo).call(this)){const i=W(this,ct)[s],r=Ye(this,Yt,ln).call(this,i)?i.__staleWhileFetching:i;if(r!==void 0&&e(r,W(this,Jt)[s],this))return this.get(W(this,Jt)[s],n)}}forEach(e,n=this){for(const s of Ye(this,ur,Xo).call(this)){const i=W(this,ct)[s],r=Ye(this,Yt,ln).call(this,i)?i.__staleWhileFetching:i;r!==void 0&&e.call(n,r,W(this,Jt)[s],this)}}rforEach(e,n=this){for(const s of Ye(this,dr,Zo).call(this)){const i=W(this,ct)[s],r=Ye(this,Yt,ln).call(this,i)?i.__staleWhileFetching:i;r!==void 0&&e.call(n,r,W(this,Jt)[s],this)}}purgeStale(){let e=!1;for(const n of Ye(this,dr,Zo).call(this,{allowStale:!0}))W(this,Hs).call(this,n)&&(this.delete(W(this,Jt)[n]),e=!0);return e}dump(){const e=[];for(const n of Ye(this,ur,Xo).call(this,{allowStale:!0})){const s=W(this,Jt)[n],i=W(this,ct)[n],r=Ye(this,Yt,ln).call(this,i)?i.__staleWhileFetching:i;if(r===void 0||s===void 0)continue;const o={value:r};if(W(this,Pi)&&W(this,Qr)){o.ttl=W(this,Pi)[n];const a=Yd.now()-W(this,Qr)[n];o.start=Math.floor(Date.now()-a)}W(this,Jr)&&(o.size=W(this,Jr)[n]),e.unshift([s,o])}return e}load(e){this.clear();for(const[n,s]of e){if(s.start){const i=Date.now()-s.start;s.start=Yd.now()-i}this.set(n,s.value,s)}}set(e,n,s={}){var f,h,_;if(n===void 0)return this.delete(e),this;const{ttl:i=this.ttl,start:r,noDisposeOnSet:o=this.noDisposeOnSet,sizeCalculation:a=this.sizeCalculation,status:l}=s;let{noUpdateTTL:c=this.noUpdateTTL}=s;const u=W(this,xh).call(this,e,n,s.size||0,a);if(this.maxEntrySize&&u>this.maxEntrySize)return l&&(l.set="miss",l.maxEntrySizeExceeded=!0),this.delete(e),this;let d=W(this,Pn)===0?void 0:W(this,Dn).get(e);if(d===void 0)d=W(this,Pn)===0?W(this,Hn):W(this,Li).length!==0?W(this,Li).pop():W(this,Pn)===W(this,Ci)?Ye(this,vu,Bm).call(this,!1):W(this,Pn),W(this,Jt)[d]=e,W(this,ct)[d]=n,W(this,Dn).set(e,d),W(this,ms)[W(this,Hn)]=d,W(this,zs)[d]=W(this,Hn),Qe(this,Hn,d),Jh(this,Pn)._++,W(this,yu).call(this,d,u,l),l&&(l.set="add"),c=!1;else{Ye(this,Tl,cf).call(this,d);const p=W(this,ct)[d];if(n!==p){if(W(this,aa)&&Ye(this,Yt,ln).call(this,p)?p.__abortController.abort(new Error("replaced")):o||(W(this,cr)&&((f=W(this,lr))==null||f.call(this,p,e,"set")),W(this,Rs)&&((h=W(this,Yn))==null||h.push([p,e,"set"]))),W(this,El).call(this,d),W(this,yu).call(this,d,u,l),W(this,ct)[d]=n,l){l.set="replace";const m=p&&Ye(this,Yt,ln).call(this,p)?p.__staleWhileFetching:p;m!==void 0&&(l.oldValue=m)}}else l&&(l.set="update")}if(i!==0&&!W(this,Pi)&&Ye(this,vh,Dy).call(this),W(this,Pi)&&(c||W(this,wh).call(this,d,i,r),l&&W(this,eo).call(this,l,d)),!o&&W(this,Rs)&&W(this,Yn)){const p=W(this,Yn);let m;for(;m=p==null?void 0:p.shift();)(_=W(this,Oi))==null||_.call(this,...m)}return this}pop(){var e;try{for(;W(this,Pn);){const n=W(this,ct)[W(this,ns)];if(Ye(this,vu,Bm).call(this,!0),Ye(this,Yt,ln).call(this,n)){if(n.__staleWhileFetching)return n.__staleWhileFetching}else if(n!==void 0)return n}}finally{if(W(this,Rs)&&W(this,Yn)){const n=W(this,Yn);let s;for(;s=n==null?void 0:n.shift();)(e=W(this,Oi))==null||e.call(this,...s)}}}has(e,n={}){const{updateAgeOnHas:s=this.updateAgeOnHas,status:i}=n,r=W(this,Dn).get(e);if(r!==void 0){const o=W(this,ct)[r];if(Ye(this,Yt,ln).call(this,o)&&o.__staleWhileFetching===void 0)return!1;if(W(this,Hs).call(this,r))i&&(i.has="stale",W(this,eo).call(this,i,r));else return s&&W(this,Sl).call(this,r),i&&(i.has="hit",W(this,eo).call(this,i,r)),!0}else i&&(i.has="miss");return!1}peek(e,n={}){const{allowStale:s=this.allowStale}=n,i=W(this,Dn).get(e);if(i!==void 0&&(s||!W(this,Hs).call(this,i))){const r=W(this,ct)[i];return Ye(this,Yt,ln).call(this,r)?r.__staleWhileFetching:r}}async fetch(e,n={}){const{allowStale:s=this.allowStale,updateAgeOnGet:i=this.updateAgeOnGet,noDeleteOnStaleGet:r=this.noDeleteOnStaleGet,ttl:o=this.ttl,noDisposeOnSet:a=this.noDisposeOnSet,size:l=0,sizeCalculation:c=this.sizeCalculation,noUpdateTTL:u=this.noUpdateTTL,noDeleteOnFetchRejection:d=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:f=this.allowStaleOnFetchRejection,ignoreFetchAbort:h=this.ignoreFetchAbort,allowStaleOnFetchAbort:_=this.allowStaleOnFetchAbort,context:p,forceRefresh:m=!1,status:b,signal:y}=n;if(!W(this,aa))return b&&(b.fetch="get"),this.get(e,{allowStale:s,updateAgeOnGet:i,noDeleteOnStaleGet:r,status:b});const v={allowStale:s,updateAgeOnGet:i,noDeleteOnStaleGet:r,ttl:o,noDisposeOnSet:a,size:l,sizeCalculation:c,noUpdateTTL:u,noDeleteOnFetchRejection:d,allowStaleOnFetchRejection:f,allowStaleOnFetchAbort:_,ignoreFetchAbort:h,status:b,signal:y};let x=W(this,Dn).get(e);if(x===void 0){b&&(b.fetch="miss");const S=Ye(this,wu,Gm).call(this,e,x,v,p);return S.__returned=S}else{const S=W(this,ct)[x];if(Ye(this,Yt,ln).call(this,S)){const O=s&&S.__staleWhileFetching!==void 0;return b&&(b.fetch="inflight",O&&(b.returnedStale=!0)),O?S.__staleWhileFetching:S.__returned=S}const w=W(this,Hs).call(this,x);if(!m&&!w)return b&&(b.fetch="hit"),Ye(this,Tl,cf).call(this,x),i&&W(this,Sl).call(this,x),b&&W(this,eo).call(this,b,x),S;const T=Ye(this,wu,Gm).call(this,e,x,v,p),A=T.__staleWhileFetching!==void 0&&s;return b&&(b.fetch=w?"stale":"refresh",A&&w&&(b.returnedStale=!0)),A?T.__staleWhileFetching:T.__returned=T}}get(e,n={}){const{allowStale:s=this.allowStale,updateAgeOnGet:i=this.updateAgeOnGet,noDeleteOnStaleGet:r=this.noDeleteOnStaleGet,status:o}=n,a=W(this,Dn).get(e);if(a!==void 0){const l=W(this,ct)[a],c=Ye(this,Yt,ln).call(this,l);return o&&W(this,eo).call(this,o,a),W(this,Hs).call(this,a)?(o&&(o.get="stale"),c?(o&&s&&l.__staleWhileFetching!==void 0&&(o.returnedStale=!0),s?l.__staleWhileFetching:void 0):(r||this.delete(e),o&&s&&(o.returnedStale=!0),s?l:void 0)):(o&&(o.get="hit"),c?l.__staleWhileFetching:(Ye(this,Tl,cf).call(this,a),i&&W(this,Sl).call(this,a),l))}else o&&(o.get="miss")}delete(e){var s,i,r,o;let n=!1;if(W(this,Pn)!==0){const a=W(this,Dn).get(e);if(a!==void 0)if(n=!0,W(this,Pn)===1)this.clear();else{W(this,El).call(this,a);const l=W(this,ct)[a];Ye(this,Yt,ln).call(this,l)?l.__abortController.abort(new Error("deleted")):(W(this,cr)||W(this,Rs))&&(W(this,cr)&&((s=W(this,lr))==null||s.call(this,l,e,"delete")),W(this,Rs)&&((i=W(this,Yn))==null||i.push([l,e,"delete"]))),W(this,Dn).delete(e),W(this,Jt)[a]=void 0,W(this,ct)[a]=void 0,a===W(this,Hn)?Qe(this,Hn,W(this,zs)[a]):a===W(this,ns)?Qe(this,ns,W(this,ms)[a]):(W(this,ms)[W(this,zs)[a]]=W(this,ms)[a],W(this,zs)[W(this,ms)[a]]=W(this,zs)[a]),Jh(this,Pn)._--,W(this,Li).push(a)}}if(W(this,Rs)&&((r=W(this,Yn))!=null&&r.length)){const a=W(this,Yn);let l;for(;l=a==null?void 0:a.shift();)(o=W(this,Oi))==null||o.call(this,...l)}return n}clear(){var e,n,s;for(const i of Ye(this,dr,Zo).call(this,{allowStale:!0})){const r=W(this,ct)[i];if(Ye(this,Yt,ln).call(this,r))r.__abortController.abort(new Error("deleted"));else{const o=W(this,Jt)[i];W(this,cr)&&((e=W(this,lr))==null||e.call(this,r,o,"delete")),W(this,Rs)&&((n=W(this,Yn))==null||n.push([r,o,"delete"]))}}if(W(this,Dn).clear(),W(this,ct).fill(void 0),W(this,Jt).fill(void 0),W(this,Pi)&&W(this,Qr)&&(W(this,Pi).fill(0),W(this,Qr).fill(0)),W(this,Jr)&&W(this,Jr).fill(0),Qe(this,ns,0),Qe(this,Hn,0),W(this,Li).length=0,Qe(this,Ii,0),Qe(this,Pn,0),W(this,Rs)&&W(this,Yn)){const i=W(this,Yn);let r;for(;r=i==null?void 0:i.shift();)(s=W(this,Oi))==null||s.call(this,...r)}}};Ci=new WeakMap,Gs=new WeakMap,lr=new WeakMap,Oi=new WeakMap,bu=new WeakMap,Pn=new WeakMap,Ii=new WeakMap,Dn=new WeakMap,Jt=new WeakMap,ct=new WeakMap,ms=new WeakMap,zs=new WeakMap,ns=new WeakMap,Hn=new WeakMap,Li=new WeakMap,Yn=new WeakMap,Jr=new WeakMap,Qr=new WeakMap,Pi=new WeakMap,cr=new WeakMap,aa=new WeakMap,Rs=new WeakMap,vh=new WeakSet,Dy=function(){const e=new Um(W(this,Ci)),n=new Um(W(this,Ci));Qe(this,Pi,e),Qe(this,Qr,n),Qe(this,wh,(r,o,a=Yd.now())=>{if(n[r]=o!==0?a:0,e[r]=o,o!==0&&this.ttlAutopurge){const l=setTimeout(()=>{W(this,Hs).call(this,r)&&this.delete(W(this,Jt)[r])},o+1);l.unref&&l.unref()}}),Qe(this,Sl,r=>{n[r]=e[r]!==0?Yd.now():0}),Qe(this,eo,(r,o)=>{if(e[o]){const a=e[o],l=n[o];r.ttl=a,r.start=l,r.now=s||i();const c=r.now-l;r.remainingTTL=a-c}});let s=0;const i=()=>{const r=Yd.now();if(this.ttlResolution>0){s=r;const o=setTimeout(()=>s=0,this.ttlResolution);o.unref&&o.unref()}return r};this.getRemainingTTL=r=>{const o=W(this,Dn).get(r);if(o===void 0)return 0;const a=e[o],l=n[o];if(a===0||l===0)return 1/0;const c=(s||i())-l;return a-c},Qe(this,Hs,r=>e[r]!==0&&n[r]!==0&&(s||i())-n[r]>e[r])},Sl=new WeakMap,eo=new WeakMap,wh=new WeakMap,Hs=new WeakMap,Gg=new WeakSet,pC=function(){const e=new Um(W(this,Ci));Qe(this,Ii,0),Qe(this,Jr,e),Qe(this,El,n=>{Qe(this,Ii,W(this,Ii)-e[n]),e[n]=0}),Qe(this,xh,(n,s,i,r)=>{if(Ye(this,Yt,ln).call(this,s))return 0;if(!Ko(i))if(r){if(typeof r!="function")throw new TypeError("sizeCalculation must be a function");if(i=r(s,n),!Ko(i))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return i}),Qe(this,yu,(n,s,i)=>{if(e[n]=s,W(this,Gs)){const r=W(this,Gs)-e[n];for(;W(this,Ii)>r;)Ye(this,vu,Bm).call(this,!0)}Qe(this,Ii,W(this,Ii)+e[n]),i&&(i.entrySize=s,i.totalCalculatedSize=W(this,Ii))})},El=new WeakMap,yu=new WeakMap,xh=new WeakMap,ur=new WeakSet,Xo=function*({allowStale:e=this.allowStale}={}){if(W(this,Pn))for(let n=W(this,Hn);!(!Ye(this,Sh,Fy).call(this,n)||((e||!W(this,Hs).call(this,n))&&(yield n),n===W(this,ns)));)n=W(this,zs)[n]},dr=new WeakSet,Zo=function*({allowStale:e=this.allowStale}={}){if(W(this,Pn))for(let n=W(this,ns);!(!Ye(this,Sh,Fy).call(this,n)||((e||!W(this,Hs).call(this,n))&&(yield n),n===W(this,Hn)));)n=W(this,ms)[n]},Sh=new WeakSet,Fy=function(e){return e!==void 0&&W(this,Dn).get(W(this,Jt)[e])===e},vu=new WeakSet,Bm=function(e){var r,o;const n=W(this,ns),s=W(this,Jt)[n],i=W(this,ct)[n];return W(this,aa)&&Ye(this,Yt,ln).call(this,i)?i.__abortController.abort(new Error("evicted")):(W(this,cr)||W(this,Rs))&&(W(this,cr)&&((r=W(this,lr))==null||r.call(this,i,s,"evict")),W(this,Rs)&&((o=W(this,Yn))==null||o.push([i,s,"evict"]))),W(this,El).call(this,n),e&&(W(this,Jt)[n]=void 0,W(this,ct)[n]=void 0,W(this,Li).push(n)),W(this,Pn)===1?(Qe(this,ns,Qe(this,Hn,0)),W(this,Li).length=0):Qe(this,ns,W(this,ms)[n]),W(this,Dn).delete(s),Jh(this,Pn)._--,n},wu=new WeakSet,Gm=function(e,n,s,i){const r=n===void 0?void 0:W(this,ct)[n];if(Ye(this,Yt,ln).call(this,r))return r;const o=new kg,{signal:a}=s;a==null||a.addEventListener("abort",()=>o.abort(a.reason),{signal:o.signal});const l={signal:o.signal,options:s,context:i},c=(p,m=!1)=>{const{aborted:b}=o.signal,y=s.ignoreFetchAbort&&p!==void 0;if(s.status&&(b&&!m?(s.status.fetchAborted=!0,s.status.fetchError=o.signal.reason,y&&(s.status.fetchAbortIgnored=!0)):s.status.fetchResolved=!0),b&&!y&&!m)return d(o.signal.reason);const v=h;return W(this,ct)[n]===h&&(p===void 0?v.__staleWhileFetching?W(this,ct)[n]=v.__staleWhileFetching:this.delete(e):(s.status&&(s.status.fetchUpdated=!0),this.set(e,p,l.options))),p},u=p=>(s.status&&(s.status.fetchRejected=!0,s.status.fetchError=p),d(p)),d=p=>{const{aborted:m}=o.signal,b=m&&s.allowStaleOnFetchAbort,y=b||s.allowStaleOnFetchRejection,v=y||s.noDeleteOnFetchRejection,x=h;if(W(this,ct)[n]===h&&(!v||x.__staleWhileFetching===void 0?this.delete(e):b||(W(this,ct)[n]=x.__staleWhileFetching)),y)return s.status&&x.__staleWhileFetching!==void 0&&(s.status.returnedStale=!0),x.__staleWhileFetching;if(x.__returned===x)throw p},f=(p,m)=>{var y;const b=(y=W(this,bu))==null?void 0:y.call(this,e,r,l);b&&b instanceof Promise&&b.then(v=>p(v),m),o.signal.addEventListener("abort",()=>{(!s.ignoreFetchAbort||s.allowStaleOnFetchAbort)&&(p(),s.allowStaleOnFetchAbort&&(p=v=>c(v,!0)))})};s.status&&(s.status.fetchDispatched=!0);const h=new Promise(f).then(c,u),_=Object.assign(h,{__abortController:o,__staleWhileFetching:r,__returned:void 0});return n===void 0?(this.set(e,_,{...l.options,status:void 0}),n=W(this,Dn).get(e)):W(this,ct)[n]=_,_},Yt=new WeakSet,ln=function(e){if(!W(this,aa))return!1;const n=e;return!!n&&n instanceof Promise&&n.hasOwnProperty("__staleWhileFetching")&&n.__abortController instanceof kg},Eh=new WeakSet,Ny=function(e,n){W(this,zs)[n]=e,W(this,ms)[e]=n},Tl=new WeakSet,cf=function(e){e!==W(this,Hn)&&(e===W(this,ns)?Qe(this,ns,W(this,ms)[e]):Ye(this,Eh,Ny).call(this,W(this,zs)[e],W(this,ms)[e]),Ye(this,Eh,Ny).call(this,W(this,Hn),e),Qe(this,Hn,e))};let Py=Zx;async function Rg({appId:t,privateKey:e,timeDifference:n}){try{const s=await _ve({id:+t,privateKey:e,now:n&&Math.floor(Date.now()/1e3)+n});return{type:"app",token:s.token,appId:s.appId,expiresAt:new Date(s.expiration*1e3).toISOString()}}catch(s){throw e==="-----BEGIN RSA PRIVATE KEY-----"?new Error("The 'privateKey` option contains only the first line '-----BEGIN RSA PRIVATE KEY-----'. If you are setting it using a `.env` file, make sure it is set on a single line with newlines replaced by '\n'"):s}}function yve(){return new Py({max:15e3,ttl:1e3*60*59})}async function vve(t,e){const n=mC(e),s=await t.get(n);if(!s)return;const[i,r,o,a,l,c]=s.split("|"),u=e.permissions||l.split(/,/).reduce((d,f)=>(/!$/.test(f)?d[f.slice(0,-1)]="write":d[f]="read",d),{});return{token:i,createdAt:r,expiresAt:o,permissions:u,repositoryIds:e.repositoryIds,repositoryNames:e.repositoryNames,singleFileName:c,repositorySelection:a}}async function wve(t,e,n){const s=mC(e),i=e.permissions?"":Object.keys(n.permissions).map(o=>`${o}${n.permissions[o]==="write"?"!":""}`).join(","),r=[n.token,n.createdAt,n.expiresAt,n.repositorySelection,i,n.singleFileName].join("|");await t.set(s,r)}function mC({installationId:t,permissions:e={},repositoryIds:n=[],repositoryNames:s=[]}){const i=Object.keys(e).sort().map(a=>e[a]==="read"?a:`${a}!`).join(","),r=n.sort().join(","),o=s.join(",");return[t,r,o,i].filter(Boolean).join("|")}function aA({installationId:t,token:e,createdAt:n,expiresAt:s,repositorySelection:i,permissions:r,repositoryIds:o,repositoryNames:a,singleFileName:l}){return Object.assign({type:"token",tokenType:"installation",token:e,installationId:t,permissions:r,createdAt:n,expiresAt:s,repositorySelection:i},o?{repositoryIds:o}:null,a?{repositoryNames:a}:null,l?{singleFileName:l}:null)}async function gC(t,e,n){const s=Number(e.installationId||t.installationId);if(!s)throw new Error("[@octokit/auth-app] installationId option is required for installation authentication.");if(e.factory){const{type:y,factory:v,oauthApp:x,...S}={...t,...e};return v(S)}const i=Object.assign({installationId:s},e);if(!e.refresh){const y=await vve(t.cache,i);if(y){const{token:v,createdAt:x,expiresAt:S,permissions:w,repositoryIds:T,repositoryNames:E,singleFileName:A,repositorySelection:O}=y;return aA({installationId:s,token:v,createdAt:x,expiresAt:S,permissions:w,repositorySelection:O,repositoryIds:T,repositoryNames:E,singleFileName:A})}}const r=await Rg(t),o=n||t.request,{data:{token:a,expires_at:l,repositories:c,permissions:u,repository_selection:d,single_file:f}}=await o("POST /app/installations/{installation_id}/access_tokens",{installation_id:s,repository_ids:e.repositoryIds,repositories:e.repositoryNames,permissions:e.permissions,mediaType:{previews:["machine-man"]},headers:{authorization:`bearer ${r.token}`}}),h=u||{},_=d||"all",p=c?c.map(y=>y.id):void 0,m=c?c.map(y=>y.name):void 0,b=new Date().toISOString();return await wve(t.cache,i,{token:a,createdAt:b,expiresAt:l,repositorySelection:_,permissions:h,repositoryIds:p,repositoryNames:m,singleFileName:f}),aA({installationId:s,token:a,createdAt:b,expiresAt:l,repositorySelection:_,permissions:h,repositoryIds:p,repositoryNames:m,singleFileName:f})}async function xve(t,e){switch(e.type){case"app":return Rg(t);case"oauth":t.log.warn(new My('[@octokit/auth-app] {type: "oauth"} is deprecated. Use {type: "oauth-app"} instead'));case"oauth-app":return t.oauthApp({type:"oauth-app"});case"installation":return gC(t,{...e,type:"installation"});case"oauth-user":return t.oauthApp(e);default:throw new Error(`Invalid auth type: ${e.type}`)}}var Sve=["/app","/app/hook/config","/app/hook/deliveries","/app/hook/deliveries/{delivery_id}","/app/hook/deliveries/{delivery_id}/attempts","/app/installations","/app/installations/{installation_id}","/app/installations/{installation_id}/access_tokens","/app/installations/{installation_id}/suspended","/marketplace_listing/accounts/{account_id}","/marketplace_listing/plan","/marketplace_listing/plans","/marketplace_listing/plans/{plan_id}/accounts","/marketplace_listing/stubbed/accounts/{account_id}","/marketplace_listing/stubbed/plan","/marketplace_listing/stubbed/plans","/marketplace_listing/stubbed/plans/{plan_id}/accounts","/orgs/{org}/installation","/repos/{owner}/{repo}/installation","/users/{username}/installation"];function Eve(t){const n=`^(?:${t.map(s=>s.split("/").map(i=>i.startsWith("{")?"(?:.+?)":i).join("/")).map(s=>`(?:${s})`).join("|")})$`;return new RegExp(n,"i")}var Tve=Eve(Sve);function Ave(t){return!!t&&Tve.test(t.split("?")[0])}var Mve=5*1e3;function kve(t){return!(t.message.match(/'Expiration time' claim \('exp'\) must be a numeric value representing the future time at which the assertion expires/)||t.message.match(/'Issued at' claim \('iat'\) must be an Integer representing the time that the assertion was issued/))}async function Rve(t,e,n,s){const i=e.endpoint.merge(n,s),r=i.url;if(/\/login\/oauth\/access_token$/.test(r))return e(i);if(Ave(r.replace(e.endpoint.DEFAULTS.baseUrl,""))){const{token:l}=await Rg(t);i.headers.authorization=`bearer ${l}`;let c;try{c=await e(i)}catch(u){if(kve(u)||typeof u.response.headers.date>"u")throw u;const d=Math.floor((Date.parse(u.response.headers.date)-Date.parse(new Date().toString()))/1e3);t.log.warn(u.message),t.log.warn(`[@octokit/auth-app] GitHub API time and system time are different by ${d} seconds. Retrying request with the difference accounted for.`);const{token:f}=await Rg({...t,timeDifference:d});return i.headers.authorization=`bearer ${f}`,e(i)}return c}if(n0(r)){const l=await t.oauthApp({type:"oauth-app"});return i.headers.authorization=l.headers.authorization,e(i)}const{token:o,createdAt:a}=await gC(t,{},e);return i.headers.authorization=`token ${o}`,_C(t,e,i,a)}async function _C(t,e,n,s,i=0){const r=+new Date-+new Date(s);try{return await e(n)}catch(o){if(o.status!==401)throw o;if(r>=Mve)throw i>0&&(o.message=`After ${i} retries within ${r/1e3}s of creating the installation access token, the response remains 401. At this point, the cause may be an authentication problem or a system outage. Please check https://www.githubstatus.com for status information`),o;++i;const a=i*1e3;return t.log.warn(`[@octokit/auth-app] Retrying after 401 response to account for token replication delay (retry: ${i}, wait: ${a/1e3}s)`),await new Promise(l=>setTimeout(l,a)),_C(t,e,n,s,i)}}var Cve="4.0.13";function Tx(t){if(!t.appId)throw new Error("[@octokit/auth-app] appId option is required");if(!Number.isFinite(+t.appId))throw new Error("[@octokit/auth-app] appId option must be a number or numeric string");if(!t.privateKey)throw new Error("[@octokit/auth-app] privateKey option is required");if("installationId"in t&&!t.installationId)throw new Error("[@octokit/auth-app] installationId is set to a falsy value");const e=Object.assign({warn:console.warn.bind(console)},t.log),n=t.request||Qn.defaults({headers:{"user-agent":`octokit-auth-app.js/${Cve} ${Ao()}`}}),s=Object.assign({request:n,cache:yve()},t,t.installationId?{installationId:Number(t.installationId)}:{},{log:e,oauthApp:lC({clientType:"github-app",clientId:t.clientId||"",clientSecret:t.clientSecret||"",request:n})});return Object.assign(xve.bind(null,s),{hook:Rve.bind(null,s)})}const bC=Ql(fve),Ove=Ql(Rye),Ive=Ql(Abe),s0=Ql(lve),ic=Ql(eve);async function Lve(t){return{type:"unauthenticated",reason:t}}function Pve(t){return t.status!==403||!t.response?!1:t.response.headers["x-ratelimit-remaining"]==="0"}var Dve=/\babuse\b/i;function Fve(t){return t.status!==403?!1:Dve.test(t.message)}async function Nve(t,e,n,s){const i=e.endpoint.merge(n,s);return e(i).catch(r=>{throw r.status===404?(r.message=`Not found. May be due to lack of authentication. Reason: ${t}`,r):Pve(r)?(r.message=`API rate limit exceeded. This maybe caused by the lack of authentication. Reason: ${t}`,r):Fve(r)?(r.message=`You have triggered an abuse detection mechanism. This maybe caused by the lack of authentication. Reason: ${t}`,r):r.status===401?(r.message=`Unauthorized. "${i.method} ${i.url}" failed most likely due to lack of authentication. Reason: ${t}`,r):(r.status>=400&&r.status<500&&(r.message=r.message.replace(/\.?$/,`. May be caused by lack of authentication (${t}).`)),r)})}var yC=function(e){if(!e||!e.reason)throw new Error("[@octokit/auth-unauthenticated] No reason passed to createUnauthenticatedAuth");return Object.assign(Lve.bind(null,e.reason),{hook:Nve.bind(null,e.reason)})};const $ve=Object.freeze(Object.defineProperty({__proto__:null,createUnauthenticatedAuth:yC},Symbol.toStringTag,{value:"Module"})),vC=Ql($ve);/*! fromentries. MIT License. Feross Aboukhadijeh */var J1,lA;function Uve(){return lA||(lA=1,J1=function(e){return[...e].reduce((n,[s,i])=>(n[s]=i,n),{})}),J1}var Bve=Object.create,i0=Object.defineProperty,Gve=Object.getOwnPropertyDescriptor,zve=Object.getOwnPropertyNames,Hve=Object.getPrototypeOf,Vve=Object.prototype.hasOwnProperty,Wve=(t,e)=>{for(var n in e)i0(t,n,{get:e[n],enumerable:!0})},wC=(t,e,n,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of zve(e))!Vve.call(t,i)&&i!==n&&i0(t,i,{get:()=>e[i],enumerable:!(s=Gve(e,i))||s.enumerable});return t},Mo=(t,e,n)=>(n=t!=null?Bve(Hve(t)):{},wC(e||!t||!t.__esModule?i0(n,"default",{value:t,enumerable:!0}):n,t)),jve=t=>wC(i0({},"__esModule",{value:!0}),t),xC={};Wve(xC,{OAuthApp:()=>LC,createAWSLambdaAPIGatewayV2Handler:()=>wwe,createCloudflareHandler:()=>ywe,createNodeMiddleware:()=>_we,createWebWorkerHandler:()=>CC,handleRequest:()=>r0});var SC=jve(xC),qve=bC,EC="4.2.4";function TC(t,e,n){if(Array.isArray(e)){for(const s of e)TC(t,s,n);return}t.eventHandlers[e]||(t.eventHandlers[e]=[]),t.eventHandlers[e].push(n)}var Yve=Ove,Kve=Ive,Xve=Yve.Octokit.defaults({userAgent:`octokit-oauth-app.js/${EC} ${(0,Kve.getUserAgent)()}`}),Zve=s0;async function bo(t,e){const{name:n,action:s}=e;if(t.eventHandlers[`${n}.${s}`])for(const i of t.eventHandlers[`${n}.${s}`])await i(e);if(t.eventHandlers[n])for(const i of t.eventHandlers[n])await i(e)}async function Jve(t,e){return t.octokit.auth({type:"oauth-user",...e,async factory(n){const s=new t.Octokit({authStrategy:Zve.createOAuthUserAuth,auth:n}),i=await s.auth({type:"get"});return await bo(t,{name:"token",action:"created",token:i.token,scopes:i.scopes,authentication:i,octokit:s}),s}})}var Qve=Mo(ic);function ewe(t,e){const n={clientId:t.clientId,request:t.octokit.request,...e,allowSignup:t.allowSignup??e.allowSignup,redirectUrl:e.redirectUrl??t.redirectUrl,scopes:e.scopes??t.defaultScopes};return Qve.getWebFlowAuthorizationUrl({clientType:t.clientType,...n})}var twe=Mo(bC);async function nwe(t,e){const n=await t.octokit.auth({type:"oauth-user",...e});return await bo(t,{name:"token",action:"created",token:n.token,scopes:n.scopes,authentication:n,octokit:new t.Octokit({authStrategy:twe.createOAuthUserAuth,auth:{clientType:t.clientType,clientId:t.clientId,clientSecret:t.clientSecret,token:n.token,scopes:n.scopes,refreshToken:n.refreshToken,expiresAt:n.expiresAt,refreshTokenExpiresAt:n.refreshTokenExpiresAt}})}),{authentication:n}}var swe=Mo(ic);async function iwe(t,e){const n=await swe.checkToken({clientType:t.clientType,clientId:t.clientId,clientSecret:t.clientSecret,request:t.octokit.request,...e});return Object.assign(n.authentication,{type:"token",tokenType:"oauth"}),n}var cA=Mo(ic),uA=s0;async function rwe(t,e){const n={clientId:t.clientId,clientSecret:t.clientSecret,request:t.octokit.request,...e};if(t.clientType==="oauth-app"){const r=await cA.resetToken({clientType:"oauth-app",...n}),o=Object.assign(r.authentication,{type:"token",tokenType:"oauth"});return await bo(t,{name:"token",action:"reset",token:r.authentication.token,scopes:r.authentication.scopes||void 0,authentication:o,octokit:new t.Octokit({authStrategy:uA.createOAuthUserAuth,auth:{clientType:t.clientType,clientId:t.clientId,clientSecret:t.clientSecret,token:r.authentication.token,scopes:r.authentication.scopes}})}),{...r,authentication:o}}const s=await cA.resetToken({clientType:"github-app",...n}),i=Object.assign(s.authentication,{type:"token",tokenType:"oauth"});return await bo(t,{name:"token",action:"reset",token:s.authentication.token,authentication:i,octokit:new t.Octokit({authStrategy:uA.createOAuthUserAuth,auth:{clientType:t.clientType,clientId:t.clientId,clientSecret:t.clientSecret,token:s.authentication.token}})}),{...s,authentication:i}}var owe=Mo(ic),awe=s0;async function lwe(t,e){if(t.clientType==="oauth-app")throw new Error("[@octokit/oauth-app] app.refreshToken() is not supported for OAuth Apps");const n=await owe.refreshToken({clientType:"github-app",clientId:t.clientId,clientSecret:t.clientSecret,request:t.octokit.request,refreshToken:e.refreshToken}),s=Object.assign(n.authentication,{type:"token",tokenType:"oauth"});return await bo(t,{name:"token",action:"refreshed",token:n.authentication.token,authentication:s,octokit:new t.Octokit({authStrategy:awe.createOAuthUserAuth,auth:{clientType:t.clientType,clientId:t.clientId,clientSecret:t.clientSecret,token:n.authentication.token}})}),{...n,authentication:s}}var cwe=Mo(ic),uwe=s0;async function dwe(t,e){if(t.clientType==="oauth-app")throw new Error("[@octokit/oauth-app] app.scopeToken() is not supported for OAuth Apps");const n=await cwe.scopeToken({clientType:"github-app",clientId:t.clientId,clientSecret:t.clientSecret,request:t.octokit.request,...e}),s=Object.assign(n.authentication,{type:"token",tokenType:"oauth"});return await bo(t,{name:"token",action:"scoped",token:n.authentication.token,authentication:s,octokit:new t.Octokit({authStrategy:uwe.createOAuthUserAuth,auth:{clientType:t.clientType,clientId:t.clientId,clientSecret:t.clientSecret,token:n.authentication.token}})}),{...n,authentication:s}}var dA=Mo(ic),fwe=vC;async function hwe(t,e){const n={clientId:t.clientId,clientSecret:t.clientSecret,request:t.octokit.request,...e},s=t.clientType==="oauth-app"?await dA.deleteToken({clientType:"oauth-app",...n}):await dA.deleteToken({clientType:"github-app",...n});return await bo(t,{name:"token",action:"deleted",token:e.token,octokit:new t.Octokit({authStrategy:fwe.createUnauthenticatedAuth,auth:{reason:'Handling "token.deleted" event. The access for the token has been revoked.'}})}),s}var fA=Mo(ic),hA=vC;async function pwe(t,e){const n={clientId:t.clientId,clientSecret:t.clientSecret,request:t.octokit.request,...e},s=t.clientType==="oauth-app"?await fA.deleteAuthorization({clientType:"oauth-app",...n}):await fA.deleteAuthorization({clientType:"github-app",...n});return await bo(t,{name:"token",action:"deleted",token:e.token,octokit:new t.Octokit({authStrategy:hA.createUnauthenticatedAuth,auth:{reason:'Handling "token.deleted" event. The access for the token has been revoked.'}})}),await bo(t,{name:"authorization",action:"deleted",token:e.token,octokit:new t.Octokit({authStrategy:hA.createUnauthenticatedAuth,auth:{reason:'Handling "authorization.deleted" event. The access for the app has been revoked.'}})}),s}var mwe=Mo(Uve());async function r0(t,{pathPrefix:e="/api/github/oauth"},n){var s,i,r,o,a,l;if(n.method==="OPTIONS")return{status:200,headers:{"access-control-allow-origin":"*","access-control-allow-methods":"*","access-control-allow-headers":"Content-Type, User-Agent, Authorization"}};const{pathname:c}=new URL(n.url,"http://localhost"),u=[n.method,c].join(" "),d={getLogin:`GET ${e}/login`,getCallback:`GET ${e}/callback`,createToken:`POST ${e}/token`,getToken:`GET ${e}/token`,patchToken:`PATCH ${e}/token`,patchRefreshToken:`PATCH ${e}/refresh-token`,scopeToken:`POST ${e}/token/scoped`,deleteToken:`DELETE ${e}/token`,deleteGrant:`DELETE ${e}/grant`};if(!Object.values(d).includes(u))return null;let f;try{const m=await n.text();f=m?JSON.parse(m):{}}catch{return{status:400,headers:{"content-type":"application/json","access-control-allow-origin":"*"},text:JSON.stringify({error:"[@octokit/oauth-app] request error"})}}const{searchParams:h}=new URL(n.url,"http://localhost"),_=(0,mwe.default)(h),p=n.headers;try{if(u===d.getLogin){const{url:b}=t.getWebFlowAuthorizationUrl({state:_.state,scopes:_.scopes?_.scopes.split(","):void 0,allowSignup:_.allowSignup?_.allowSignup==="true":void 0,redirectUrl:_.redirectUrl});return{status:302,headers:{location:b}}}if(u===d.getCallback){if(_.error)throw new Error(`[@octokit/oauth-app] ${_.error} ${_.error_description}`);if(!_.code)throw new Error('[@octokit/oauth-app] "code" parameter is required');const{authentication:{token:b}}=await t.createToken({code:_.code});return{status:200,headers:{"content-type":"text/html"},text:`

Token created successfully

+ +

Your token is: ${b}. Copy it now as it cannot be shown again.

`}}if(u===d.createToken){const{code:b,redirectUrl:y}=f;if(!b)throw new Error('[@octokit/oauth-app] "code" parameter is required');const v=await t.createToken({code:b,redirectUrl:y});return delete v.authentication.clientSecret,{status:201,headers:{"content-type":"application/json","access-control-allow-origin":"*"},text:JSON.stringify(v)}}if(u===d.getToken){const b=(s=p.authorization)==null?void 0:s.substr(6);if(!b)throw new Error('[@octokit/oauth-app] "Authorization" header is required');const y=await t.checkToken({token:b});return delete y.authentication.clientSecret,{status:200,headers:{"content-type":"application/json","access-control-allow-origin":"*"},text:JSON.stringify(y)}}if(u===d.patchToken){const b=(i=p.authorization)==null?void 0:i.substr(6);if(!b)throw new Error('[@octokit/oauth-app] "Authorization" header is required');const y=await t.resetToken({token:b});return delete y.authentication.clientSecret,{status:200,headers:{"content-type":"application/json","access-control-allow-origin":"*"},text:JSON.stringify(y)}}if(u===d.patchRefreshToken){if(!((r=p.authorization)==null?void 0:r.substr(6)))throw new Error('[@octokit/oauth-app] "Authorization" header is required');const{refreshToken:y}=f;if(!y)throw new Error("[@octokit/oauth-app] refreshToken must be sent in request body");const v=await t.refreshToken({refreshToken:y});return delete v.authentication.clientSecret,{status:200,headers:{"content-type":"application/json","access-control-allow-origin":"*"},text:JSON.stringify(v)}}if(u===d.scopeToken){const b=(o=p.authorization)==null?void 0:o.substr(6);if(!b)throw new Error('[@octokit/oauth-app] "Authorization" header is required');const y=await t.scopeToken({token:b,...f});return delete y.authentication.clientSecret,{status:200,headers:{"content-type":"application/json","access-control-allow-origin":"*"},text:JSON.stringify(y)}}if(u===d.deleteToken){const b=(a=p.authorization)==null?void 0:a.substr(6);if(!b)throw new Error('[@octokit/oauth-app] "Authorization" header is required');return await t.deleteToken({token:b}),{status:204,headers:{"access-control-allow-origin":"*"}}}const m=(l=p.authorization)==null?void 0:l.substr(6);if(!m)throw new Error('[@octokit/oauth-app] "Authorization" header is required');return await t.deleteAuthorization({token:m}),{status:204,headers:{"access-control-allow-origin":"*"}}}catch(m){return{status:400,headers:{"content-type":"application/json","access-control-allow-origin":"*"},text:JSON.stringify({error:m.message})}}}function AC(t){const{method:e,url:n,headers:s}=t;async function i(){return await new Promise((o,a)=>{let l=[];t.on("error",a).on("data",c=>l.push(c)).on("end",()=>o(Buffer.concat(l).toString()))})}return{method:e,url:n,headers:s,text:i}}function MC(t,e){e.writeHead(t.status,t.headers),e.end(t.text)}function Ax(t){return{status:404,headers:{"content-type":"application/json"},text:JSON.stringify({error:`Unknown route: ${t.method} ${t.url}`})}}function gwe(t,e){const n=AC(t),s=Ax(n);MC(s,e)}function _we(t,{pathPrefix:e,onUnhandledRequest:n}={}){return n&&t.octokit.log.warn("[@octokit/oauth-app] `onUnhandledRequest` is deprecated and will be removed from the next major version."),n??(n=gwe),async function(s,i,r){const o=AC(s),a=await r0(t,{pathPrefix:e},o);a?MC(a,i):typeof r=="function"?r():n(s,i)}}function kC(t){const e=Object.fromEntries(t.headers.entries());return{method:t.method,url:t.url,headers:e,text:()=>t.text()}}function RC(t){return new Response(t.text,{status:t.status,headers:t.headers})}async function bwe(t){const e=kC(t),n=Ax(e);return RC(n)}function CC(t,{pathPrefix:e,onUnhandledRequest:n}={}){return n&&t.octokit.log.warn("[@octokit/oauth-app] `onUnhandledRequest` is deprecated and will be removed from the next major version."),n??(n=bwe),async function(s){const i=kC(s),r=await r0(t,{pathPrefix:e},i);return r?RC(r):await n(s)}}function ywe(...t){return t[0].octokit.log.warn("[@octokit/oauth-app] `createCloudflareHandler` is deprecated, use `createWebWorkerHandler` instead"),CC(...t)}function OC(t){const{method:e}=t.requestContext.http;let n=t.rawPath;const{stage:s}=t.requestContext;n.startsWith("/"+s)&&(n=n.substring(s.length+1)),t.rawQueryString&&(n+="?"+t.rawQueryString);const i=t.headers;return{method:e,url:n,headers:i,text:async()=>t.body||""}}function IC(t){return{statusCode:t.status,headers:t.headers,body:t.text}}async function vwe(t){const e=OC(t),n=Ax(e);return IC(n)}function wwe(t,{pathPrefix:e,onUnhandledRequest:n}={}){return n&&t.octokit.log.warn("[@octokit/oauth-app] `onUnhandledRequest` is deprecated and will be removed from the next major version."),n??(n=vwe),async function(s){const i=OC(s),r=await r0(t,{pathPrefix:e},i);return r?IC(r):n(s)}}var LC=class{static defaults(t){return class extends this{constructor(...n){super({...t,...n[0]})}}}constructor(t){const e=t.Octokit||Xve;this.type=t.clientType||"oauth-app";const n=new e({authStrategy:qve.createOAuthAppAuth,auth:{clientType:this.type,clientId:t.clientId,clientSecret:t.clientSecret}}),s={clientType:this.type,clientId:t.clientId,clientSecret:t.clientSecret,defaultScopes:t.defaultScopes||[],allowSignup:t.allowSignup,baseUrl:t.baseUrl,redirectUrl:t.redirectUrl,log:t.log,Octokit:e,octokit:n,eventHandlers:{}};this.on=TC.bind(null,s),this.octokit=n,this.getUserOctokit=Jve.bind(null,s),this.getWebFlowAuthorizationUrl=ewe.bind(null,s),this.createToken=nwe.bind(null,s),this.checkToken=iwe.bind(null,s),this.resetToken=rwe.bind(null,s),this.refreshToken=lwe.bind(null,s),this.scopeToken=dwe.bind(null,s),this.deleteToken=hwe.bind(null,s),this.deleteAuthorization=pwe.bind(null,s)}};LC.VERSION=EC;var xwe=(t,e=1,n)=>{if(n={indent:" ",includeEmptyLines:!1,...n},typeof t!="string")throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof t}\``);if(typeof e!="number")throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof e}\``);if(typeof n.indent!="string")throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof n.indent}\``);if(e===0)return t;const s=n.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return t.replace(s,n.indent.repeat(e))};const Swe={},Ewe=Object.freeze(Object.defineProperty({__proto__:null,default:Swe},Symbol.toStringTag,{value:"Module"})),Twe=Ql(Ewe),pA=Twe,mA=/\s+at.*(?:\(|\s)(.*)\)?/,Awe=/^(?:(?:(?:node|(?:internal\/[\w/]*|.*node_modules\/(?:babel-polyfill|pirates)\/.*)?\w+)\.js:\d+:\d+)|native)/,Mwe=typeof pA.homedir>"u"?"":pA.homedir();var kwe=(t,e)=>(e=Object.assign({pretty:!1},e),t.replace(/\\/g,"/").split(` +`).filter(n=>{const s=n.match(mA);if(s===null||!s[1])return!0;const i=s[1];return i.includes(".app/Contents/Resources/electron.asar")||i.includes(".app/Contents/Resources/default_app.asar")?!1:!Awe.test(i)}).filter(n=>n.trim()!=="").map(n=>e.pretty?n.replace(mA,(s,i)=>s.replace(i,i.replace(Mwe,"~"))):n).join(` +`));const Rwe=xwe,Cwe=kwe,Owe=t=>t.replace(/\s+at .*aggregate-error\/index.js:\d+:\d+\)?/g,"");class Iwe extends Error{constructor(e){if(!Array.isArray(e))throw new TypeError(`Expected input to be an Array, got ${typeof e}`);e=[...e].map(s=>s instanceof Error?s:s!==null&&typeof s=="object"?Object.assign(new Error(s.message),s):new Error(s));let n=e.map(s=>typeof s.stack=="string"?Owe(Cwe(s.stack)):String(s)).join(` +`);n=` +`+Rwe(n,4),super(n),this.name="AggregateError",Object.defineProperty(this,"_errors",{value:e})}*[Symbol.iterator](){for(const e of this._errors)yield e}}var Lwe=Iwe;const Qp=Jl(Lwe);var hu=(t=>(t.SHA1="sha1",t.SHA256="sha256",t))(hu||{}),Pwe=t=>t.startsWith("sha256=")?"sha256":"sha1",Mx=new TextEncoder;function Dwe(t){const n=t.match(/[\dA-F]{2}/gi).map(function(s){return parseInt(s,16)});return new Uint8Array(n)}function Fwe(t){return Array.prototype.map.call(new Uint8Array(t),e=>e.toString(16).padStart(2,"0")).join("")}function Nwe(t){return{[hu.SHA1]:"SHA-1",[hu.SHA256]:"SHA-256"}[t]}async function PC(t,e){return crypto.subtle.importKey("raw",Mx.encode(t),{name:"HMAC",hash:{name:Nwe(e)}},!1,["sign","verify"])}async function $we(t,e){const{secret:n,algorithm:s}=typeof t=="object"?{secret:t.secret,algorithm:t.algorithm||hu.SHA256}:{secret:t,algorithm:hu.SHA256};if(!n||!e)throw new TypeError("[@octokit/webhooks-methods] secret & payload required for sign()");if(!Object.values(hu).includes(s))throw new TypeError(`[@octokit/webhooks] Algorithm ${s} is not supported. Must be 'sha1' or 'sha256'`);const i=await crypto.subtle.sign("HMAC",await PC(n,s),Mx.encode(e));return`${s}=${Fwe(i)}`}async function DC(t,e,n){if(!t||!e||!n)throw new TypeError("[@octokit/webhooks-methods] secret, eventPayload & signature required");const s=Pwe(n);return await crypto.subtle.verify("HMAC",await PC(t,s),Dwe(n.replace(`${s}=`,"")),Mx.encode(e))}var FC=t=>({debug:()=>{},info:()=>{},warn:console.warn.bind(console),error:console.error.bind(console),...t}),Uwe=["branch_protection_rule","branch_protection_rule.created","branch_protection_rule.deleted","branch_protection_rule.edited","check_run","check_run.completed","check_run.created","check_run.requested_action","check_run.rerequested","check_suite","check_suite.completed","check_suite.requested","check_suite.rerequested","code_scanning_alert","code_scanning_alert.appeared_in_branch","code_scanning_alert.closed_by_user","code_scanning_alert.created","code_scanning_alert.fixed","code_scanning_alert.reopened","code_scanning_alert.reopened_by_user","commit_comment","commit_comment.created","create","delete","dependabot_alert","dependabot_alert.created","dependabot_alert.dismissed","dependabot_alert.fixed","dependabot_alert.reintroduced","dependabot_alert.reopened","deploy_key","deploy_key.created","deploy_key.deleted","deployment","deployment.created","deployment_status","deployment_status.created","discussion","discussion.answered","discussion.category_changed","discussion.created","discussion.deleted","discussion.edited","discussion.labeled","discussion.locked","discussion.pinned","discussion.transferred","discussion.unanswered","discussion.unlabeled","discussion.unlocked","discussion.unpinned","discussion_comment","discussion_comment.created","discussion_comment.deleted","discussion_comment.edited","fork","github_app_authorization","github_app_authorization.revoked","gollum","installation","installation.created","installation.deleted","installation.new_permissions_accepted","installation.suspend","installation.unsuspend","installation_repositories","installation_repositories.added","installation_repositories.removed","installation_target","installation_target.renamed","issue_comment","issue_comment.created","issue_comment.deleted","issue_comment.edited","issues","issues.assigned","issues.closed","issues.deleted","issues.demilestoned","issues.edited","issues.labeled","issues.locked","issues.milestoned","issues.opened","issues.pinned","issues.reopened","issues.transferred","issues.unassigned","issues.unlabeled","issues.unlocked","issues.unpinned","label","label.created","label.deleted","label.edited","marketplace_purchase","marketplace_purchase.cancelled","marketplace_purchase.changed","marketplace_purchase.pending_change","marketplace_purchase.pending_change_cancelled","marketplace_purchase.purchased","member","member.added","member.edited","member.removed","membership","membership.added","membership.removed","merge_group","merge_group.checks_requested","meta","meta.deleted","milestone","milestone.closed","milestone.created","milestone.deleted","milestone.edited","milestone.opened","org_block","org_block.blocked","org_block.unblocked","organization","organization.deleted","organization.member_added","organization.member_invited","organization.member_removed","organization.renamed","package","package.published","package.updated","page_build","ping","project","project.closed","project.created","project.deleted","project.edited","project.reopened","project_card","project_card.converted","project_card.created","project_card.deleted","project_card.edited","project_card.moved","project_column","project_column.created","project_column.deleted","project_column.edited","project_column.moved","projects_v2_item","projects_v2_item.archived","projects_v2_item.converted","projects_v2_item.created","projects_v2_item.deleted","projects_v2_item.edited","projects_v2_item.reordered","projects_v2_item.restored","public","pull_request","pull_request.assigned","pull_request.auto_merge_disabled","pull_request.auto_merge_enabled","pull_request.closed","pull_request.converted_to_draft","pull_request.demilestoned","pull_request.dequeued","pull_request.edited","pull_request.labeled","pull_request.locked","pull_request.milestoned","pull_request.opened","pull_request.queued","pull_request.ready_for_review","pull_request.reopened","pull_request.review_request_removed","pull_request.review_requested","pull_request.synchronize","pull_request.unassigned","pull_request.unlabeled","pull_request.unlocked","pull_request_review","pull_request_review.dismissed","pull_request_review.edited","pull_request_review.submitted","pull_request_review_comment","pull_request_review_comment.created","pull_request_review_comment.deleted","pull_request_review_comment.edited","pull_request_review_thread","pull_request_review_thread.resolved","pull_request_review_thread.unresolved","push","registry_package","registry_package.published","registry_package.updated","release","release.created","release.deleted","release.edited","release.prereleased","release.published","release.released","release.unpublished","repository","repository.archived","repository.created","repository.deleted","repository.edited","repository.privatized","repository.publicized","repository.renamed","repository.transferred","repository.unarchived","repository_dispatch","repository_import","repository_vulnerability_alert","repository_vulnerability_alert.create","repository_vulnerability_alert.dismiss","repository_vulnerability_alert.reopen","repository_vulnerability_alert.resolve","secret_scanning_alert","secret_scanning_alert.created","secret_scanning_alert.reopened","secret_scanning_alert.resolved","security_advisory","security_advisory.performed","security_advisory.published","security_advisory.updated","security_advisory.withdrawn","sponsorship","sponsorship.cancelled","sponsorship.created","sponsorship.edited","sponsorship.pending_cancellation","sponsorship.pending_tier_change","sponsorship.tier_changed","star","star.created","star.deleted","status","team","team.added_to_repository","team.created","team.deleted","team.edited","team.removed_from_repository","team_add","watch","watch.started","workflow_dispatch","workflow_job","workflow_job.completed","workflow_job.in_progress","workflow_job.queued","workflow_run","workflow_run.completed","workflow_run.in_progress","workflow_run.requested"];function kx(t,e,n){t.hooks[e]||(t.hooks[e]=[]),t.hooks[e].push(n)}function NC(t,e,n){if(Array.isArray(e)){e.forEach(s=>NC(t,s,n));return}if(["*","error"].includes(e)){const s=e==="*"?"any":e,i=`Using the "${e}" event with the regular Webhooks.on() function is not supported. Please use the Webhooks.on${s.charAt(0).toUpperCase()+s.slice(1)}() method instead`;throw new Error(i)}Uwe.includes(e)||t.log.warn(`"${e}" is not a known webhook name (https://developer.github.com/v3/activity/events/types/)`),kx(t,e,n)}function Bwe(t,e){kx(t,"*",e)}function Gwe(t,e){kx(t,"error",e)}function gA(t,e){let n;try{n=t(e)}catch(s){console.log('FATAL: Error occurred in "error" event handler'),console.log(s)}n&&n.catch&&n.catch(s=>{console.log('FATAL: Error occurred in "error" event handler'),console.log(s)})}function zwe(t,e,n){const s=[t.hooks[n],t.hooks["*"]];return e&&s.unshift(t.hooks[`${n}.${e}`]),[].concat(...s.filter(Boolean))}function Hwe(t,e){const n=t.hooks.error||[];if(e instanceof Error){const o=Object.assign(new Qp([e]),{event:e,errors:[e]});return n.forEach(a=>gA(a,o)),Promise.reject(o)}if(!e||!e.name)throw new Qp(["Event name not passed"]);if(!e.payload)throw new Qp(["Event payload not passed"]);const s=zwe(t,"action"in e.payload?e.payload.action:null,e.name);if(s.length===0)return Promise.resolve();const i=[],r=s.map(o=>{let a=Promise.resolve(e);return t.transform&&(a=a.then(t.transform)),a.then(l=>o(l)).catch(l=>i.push(Object.assign(l,{event:e})))});return Promise.all(r).then(()=>{if(i.length===0)return;const o=new Qp(i);throw Object.assign(o,{event:e,errors:i}),n.forEach(a=>gA(a,o)),o})}function $C(t,e,n){if(Array.isArray(e)){e.forEach(s=>$C(t,s,n));return}if(t.hooks[e]){for(let s=t.hooks[e].length-1;s>=0;s--)if(t.hooks[e][s]===n){t.hooks[e].splice(s,1);return}}}function Vwe(t){const e={hooks:{},log:FC(t&&t.log)};return t&&t.transform&&(e.transform=t.transform),{on:NC.bind(null,e),onAny:Bwe.bind(null,e),onError:Gwe.bind(null,e),removeListener:$C.bind(null,e),receive:Hwe.bind(null,e)}}function Rx(t){return JSON.stringify(t).replace(/[^\\]\\u[\da-f]{4}/g,n=>n.substr(0,3)+n.substr(3).toUpperCase())}async function Wwe(t,e){return $we(t,typeof e=="string"?e:Rx(e))}async function jwe(t,e,n){return DC(t,typeof e=="string"?e:Rx(e),n)}async function qwe(t,e){if(!await DC(t.secret,typeof e.payload=="object"?Rx(e.payload):e.payload,e.signature).catch(()=>!1)){const s=new Error("[@octokit/webhooks] signature does not match event payload and secret");return t.eventHandler.receive(Object.assign(s,{event:e,status:400}))}return t.eventHandler.receive({id:e.id,name:e.name,payload:typeof e.payload=="string"?JSON.parse(e.payload):e.payload})}var Ywe=class{constructor(t){if(!t||!t.secret)throw new Error("[@octokit/webhooks] options.secret required");const e={eventHandler:Vwe(t),secret:t.secret,hooks:{},log:FC(t.log)};this.sign=Wwe.bind(null,t.secret),this.verify=(n,s)=>(typeof n=="object"&&console.warn("[@octokit/webhooks] Passing a JSON payload object to `verify()` is deprecated and the functionality will be removed in a future release of `@octokit/webhooks`"),jwe(t.secret,n,s)),this.on=e.eventHandler.on,this.onAny=e.eventHandler.onAny,this.onError=e.eventHandler.onError,this.removeListener=e.eventHandler.removeListener,this.receive=e.eventHandler.receive,this.verifyAndReceive=n=>(typeof n.payload=="object"&&console.warn("[@octokit/webhooks] Passing a JSON payload object to `verifyAndReceive()` is deprecated and the functionality will be removed in a future release of `@octokit/webhooks`"),qwe(e,n))}},Kwe="13.1.8";function Xwe(t,e){return new Ywe({secret:e.secret,transform:async n=>{if(!("installation"in n.payload)||typeof n.payload.installation!="object"){const r=new t.constructor({authStrategy:yC,auth:{reason:'"installation" key missing in webhook event payload'}});return{...n,octokit:r}}const s=n.payload.installation.id,i=await t.auth({type:"installation",installationId:s,factory(r){return new r.octokit.constructor({...r.octokitOptions,authStrategy:Tx,auth:{...r,installationId:s}})}});return i.hook.before("request",r=>{r.headers["x-github-delivery"]=n.id}),{...n,octokit:i}}})}async function UC(t,e){return t.octokit.auth({type:"installation",installationId:e,factory(n){const s={...n.octokitOptions,authStrategy:Tx,auth:{...n,installationId:e}};return new n.octokit.constructor(s)}})}function Zwe(t){return Object.assign(Jwe.bind(null,t),{iterator:BC.bind(null,t)})}async function Jwe(t,e){const n=BC(t)[Symbol.asyncIterator]();let s=await n.next();for(;!s.done;)await e(s.value),s=await n.next()}function BC(t){return{async*[Symbol.asyncIterator](){const e=V6.iterator(t.octokit,"GET /app/installations");for await(const{data:n}of e)for(const s of n)yield{octokit:await UC(t,s.id),installation:s}}}}function Qwe(t){return Object.assign(exe.bind(null,t),{iterator:GC.bind(null,t)})}async function exe(t,e,n){const s=GC(t,n?e:void 0)[Symbol.asyncIterator]();let i=await s.next();for(;!i.done;)n?await n(i.value):await e(i.value),i=await s.next()}function txe(t,e){return{async*[Symbol.asyncIterator](){yield{octokit:await t.getInstallationOctokit(e)}}}}function GC(t,e){return{async*[Symbol.asyncIterator](){const n=e?txe(t,e.installationId):t.eachInstallation.iterator();for await(const{octokit:s}of n){const i=V6.iterator(s,"GET /installation/repositories");for await(const{data:r}of i)for(const o of r)yield{octokit:s,repository:o}}}}}var zC=class{static defaults(e){return class extends this{constructor(...s){super({...e,...s[0]})}}}constructor(e){const n=e.Octokit||jh,s=Object.assign({appId:e.appId,privateKey:e.privateKey},e.oauth?{clientId:e.oauth.clientId,clientSecret:e.oauth.clientSecret}:{});this.octokit=new n({authStrategy:Tx,auth:s,log:e.log}),this.log=Object.assign({debug:()=>{},info:()=>{},warn:console.warn.bind(console),error:console.error.bind(console)},e.log),e.webhooks?this.webhooks=Xwe(this.octokit,e.webhooks):Object.defineProperty(this,"webhooks",{get(){throw new Error("[@octokit/app] webhooks option not set")}}),e.oauth?this.oauth=new SC.OAuthApp({...e.oauth,clientType:"github-app",Octokit:n}):Object.defineProperty(this,"oauth",{get(){throw new Error("[@octokit/app] oauth.clientId / oauth.clientSecret options are not set")}}),this.getInstallationOctokit=UC.bind(null,this),this.eachInstallation=Zwe(this),this.eachRepository=Qwe(this)}};zC.VERSION=Kwe;var nxe="2.1.0",HC=jh.plugin(j6,W6,X6,Ex).defaults({userAgent:`octokit.js/${nxe}`,throttle:{onRateLimit:sxe,onSecondaryRateLimit:ixe}});function sxe(t,e,n){if(n.log.warn(`Request quota exhausted for request ${e.method} ${e.url}`),e.request.retryCount===0)return n.log.info(`Retrying after ${t} seconds!`),!0}function ixe(t,e,n){if(n.log.warn(`SecondaryRateLimit detected for request ${e.method} ${e.url}`),e.request.retryCount===0)return n.log.info(`Retrying after ${t} seconds!`),!0}var rxe=zC.defaults({Octokit:HC});SC.OAuthApp.defaults({Octokit:HC});const dh=15,$y=30,Uy=19,oxe=29,Cg=256,Cx=Cg+1+oxe,_A=2*Cx+1,Kd=256,axe=7,bA=16,yA=17,vA=18,Q1=8*2,Og=-1,lxe=1,em=2,cxe=0,Bc=0,wA=1,uxe=3,Ts=4,ki=0,VC=1,tm=2,Fi=-2,dxe=-3,Lc=-5;function o0(t){return a0(t.map(([e,n])=>new Array(e).fill(n,0,e)))}function a0(t){return t.reduce((e,n)=>e.concat(Array.isArray(n)?a0(n):n),[])}const xA=[0,1,2,3].concat(...o0([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function Qt(){const t=this;function e(i){const r=t.dyn_tree,o=t.stat_desc.static_tree,a=t.stat_desc.extra_bits,l=t.stat_desc.extra_base,c=t.stat_desc.max_length;let u,d,f,h,_,p,m=0;for(h=0;h<=dh;h++)i.bl_count[h]=0;for(r[i.heap[i.heap_max]*2+1]=0,u=i.heap_max+1;u<_A;u++)d=i.heap[u],h=r[r[d*2+1]*2+1]+1,h>c&&(h=c,m++),r[d*2+1]=h,!(d>t.max_code)&&(i.bl_count[h]++,_=0,d>=l&&(_=a[d-l]),p=r[d*2],i.opt_len+=p*(h+_),o&&(i.static_len+=p*(o[d*2+1]+_)));if(m!==0){do{for(h=c-1;i.bl_count[h]===0;)h--;i.bl_count[h]--,i.bl_count[h+1]+=2,i.bl_count[c]--,m-=2}while(m>0);for(h=c;h!==0;h--)for(d=i.bl_count[h];d!==0;)f=i.heap[--u],!(f>t.max_code)&&(r[f*2+1]!=h&&(i.opt_len+=(h-r[f*2+1])*r[f*2],r[f*2+1]=h),d--)}}function n(i,r){let o=0;do o|=i&1,i>>>=1,o<<=1;while(--r>0);return o>>>1}function s(i,r,o){const a=[];let l=0,c,u,d;for(c=1;c<=dh;c++)a[c]=l=l+o[c-1]<<1;for(u=0;u<=r;u++)d=i[u*2+1],d!==0&&(i[u*2]=n(a[d]++,d))}t.build_tree=function(i){const r=t.dyn_tree,o=t.stat_desc.static_tree,a=t.stat_desc.elems;let l,c,u=-1,d;for(i.heap_len=0,i.heap_max=_A,l=0;l=1;l--)i.pqdownheap(r,l);d=a;do l=i.heap[1],i.heap[1]=i.heap[i.heap_len--],i.pqdownheap(r,1),c=i.heap[1],i.heap[--i.heap_max]=l,i.heap[--i.heap_max]=c,r[d*2]=r[l*2]+r[c*2],i.depth[d]=Math.max(i.depth[l],i.depth[c])+1,r[l*2+1]=r[c*2+1]=d,i.heap[1]=d++,i.pqdownheap(r,1);while(i.heap_len>=2);i.heap[--i.heap_max]=i.heap[1],e(i),s(r,t.max_code,i.bl_count)}}Qt._length_code=[0,1,2,3,4,5,6,7].concat(...o0([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]]));Qt.base_length=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0];Qt.base_dist=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576];Qt.d_code=function(t){return t<256?xA[t]:xA[256+(t>>>7)]};Qt.extra_lbits=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0];Qt.extra_dbits=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];Qt.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7];Qt.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function Kn(t,e,n,s,i){const r=this;r.static_tree=t,r.extra_bits=e,r.extra_base=n,r.elems=s,r.max_length=i}const fxe=[12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227],hxe=o0([[144,8],[112,9],[24,7],[8,8]]);Kn.static_ltree=a0(fxe.map((t,e)=>[t,hxe[e]]));const pxe=[0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23],mxe=o0([[30,5]]);Kn.static_dtree=a0(pxe.map((t,e)=>[t,mxe[e]]));Kn.static_l_desc=new Kn(Kn.static_ltree,Qt.extra_lbits,Cg+1,Cx,dh);Kn.static_d_desc=new Kn(Kn.static_dtree,Qt.extra_dbits,0,$y,dh);Kn.static_bl_desc=new Kn(null,Qt.extra_blbits,0,Uy,axe);const gxe=9,_xe=8;function rr(t,e,n,s,i){const r=this;r.good_length=t,r.max_lazy=e,r.nice_length=n,r.max_chain=s,r.func=i}const WC=0,zm=1,nl=2,Ti=[new rr(0,0,0,0,WC),new rr(4,4,8,4,zm),new rr(4,5,16,8,zm),new rr(4,6,32,32,zm),new rr(4,4,16,16,nl),new rr(8,16,32,32,nl),new rr(8,16,128,128,nl),new rr(8,32,128,256,nl),new rr(32,128,258,1024,nl),new rr(32,258,258,4096,nl)],nm=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],ii=0,sm=1,Xd=2,im=3,bxe=32,eb=42,rm=113,Zd=666,tb=8,yxe=0,nb=1,vxe=2,cn=3,Hm=258,Us=Hm+cn+1;function SA(t,e,n,s){const i=t[e*2],r=t[n*2];return i=3&&H[Qt.bl_order[L]*2+1]===0;L--);return t.opt_len+=3*(L+1)+5+5+4,L}function Be(L){t.pending_buf[t.pending++]=L}function P(L){Be(L&255),Be(L>>>8&255)}function V(L){Be(L>>8&255),Be(L&255&255)}function te(L,N){let z;const q=N;ie>Q1-q?(z=L,Pe|=z<>>Q1-ie,ie+=q-Q1):(Pe|=L<=8&&(Be(Pe&255),Pe>>>=8,ie-=8)}function ke(){te(nb<<1,3),he(Kd,Kn.static_ltree),Ae(),1+Me+10-ie<9&&(te(nb<<1,3),he(Kd,Kn.static_ltree),Ae()),Me=7}function Ce(L,N){let z,q,ue;if(t.dist_buf[Q]=L,t.lc_buf[Q]=N&255,Q++,L===0?$[N*2]++:(me++,L--,$[(Qt._length_code[N]+Cg+1)*2]++,F[Qt.d_code(L)*2]++),!(Q&8191)&&I>2){for(z=Q*8,q=S-b,ue=0;ue<$y;ue++)z+=F[ue*2]*(5+Qt.extra_dbits[ue]);if(z>>>=3,me8?P(Pe):ie>0&&Be(Pe&255),Pe=0,ie=0}function ne(L,N,z){M(),Me=8,z&&(P(N),P(~N)),t.pending_buf.set(l.subarray(L,L+N),t.pending),t.pending+=N}function le(L,N,z){te((yxe<<1)+(z?1:0),3),ne(L,N,!0)}function pe(L,N,z){let q,ue,ae=0;I>0?(j.build_tree(t),Z.build_tree(t),ae=He(),q=t.opt_len+3+7>>>3,ue=t.static_len+3+7>>>3,ue<=q&&(q=ue)):q=ue=N+5,N+4<=q&&L!=-1?le(L,N,z):ue==q?(te((nb<<1)+(z?1:0),3),C(Kn.static_ltree,Kn.static_dtree)):(te((vxe<<1)+(z?1:0),3),Te(j.max_code+1,Z.max_code+1,ae+1),C($,F)),Se(),z&&M()}function xe(L){pe(b>=0?b:-1,S-b,L),b=S,e.flush_pending()}function Fe(){let L,N,z,q;do{if(q=c-T-S,q===0&&S===0&&T===0)q=r;else if(q==-1)q--;else if(S>=r+r-Us){l.set(l.subarray(r,r+r),0),w-=r,S-=r,b-=r,L=h,z=L;do N=d[--z]&65535,d[z]=N>=r?N-r:0;while(--L!==0);L=r,z=L;do N=u[--z]&65535,u[z]=N>=r?N-r:0;while(--L!==0);q+=r}if(e.avail_in===0)return;L=e.read_buf(l,S+T,q),T+=L,T>=cn&&(f=l[S]&255,f=(f<s-5&&(N=s-5);;){if(T<=1){if(Fe(),T===0&&L==Bc)return ii;if(T===0)break}if(S+=T,T=0,z=b+N,(S===0||S>=z)&&(T=S-z,S=z,xe(!1),e.avail_out===0)||S-b>=r-Us&&(xe(!1),e.avail_out===0))return ii}return xe(L==Ts),e.avail_out===0?L==Ts?Xd:ii:L==Ts?im:sm}function _e(L){let N=A,z=S,q,ue,ae=E;const Ie=S>r-Us?S-(r-Us):0;let Ze=D;const lt=a,gn=S+Hm;let Fs=l[z+ae-1],Ed=l[z+ae];E>=U&&(N>>=2),Ze>T&&(Ze=T);do if(q=L,!(l[q+ae]!=Ed||l[q+ae-1]!=Fs||l[q]!=l[z]||l[++q]!=l[z+1])){z+=2,q++;do;while(l[++z]==l[++q]&&l[++z]==l[++q]&&l[++z]==l[++q]&&l[++z]==l[++q]&&l[++z]==l[++q]&&l[++z]==l[++q]&&l[++z]==l[++q]&&l[++z]==l[++q]&&zae){if(w=L,ae=ue,ue>=Ze)break;Fs=l[z+ae-1],Ed=l[z+ae]}}while((L=u[L<]&65535)>Ie&&--N!==0);return ae<=T?ae:T}function Y(L){let N=0,z;for(;;){if(T=cn&&(f=(f<=cn)if(z=Ce(S-w,y-cn),T-=y,y<=O&&T>=cn){y--;do S++,f=(f<=cn&&(f=(f<4096)&&(y=cn-1)),E>=cn&&y<=E){q=S+T-cn,z=Ce(S-1-v,E-cn),T-=E-1,E-=2;do++S<=q&&(f=(f<gxe||q!=tb||z<9||z>15||N<0||N>9||ae<0||ae>em?Fi:(L.dstate=t,o=z,r=1<9||z<0||z>em?Fi:(Ti[I].func!=Ti[N].func&&L.total_in!==0&&(q=L.deflate(wA)),I!=N&&(I=N,O=Ti[I].max_lazy,U=Ti[I].good_length,D=Ti[I].nice_length,A=Ti[I].max_chain),B=z,q)},t.deflateSetDictionary=function(L,N,z){let q=z,ue,ae=0;if(!N||n!=eb)return Fi;if(qr-Us&&(q=r-Us,ae=z-q),l.set(N.subarray(ae,ae+q),0),S=q,b=q,f=l[0]&255,f=(f<Ts||N<0)return Fi;if(!L.next_out||!L.next_in&&L.avail_in!==0||n==Zd&&N!=Ts)return L.msg=nm[tm-Fi],Fi;if(L.avail_out===0)return L.msg=nm[tm-Lc],Lc;if(e=L,ae=i,i=N,n==eb&&(q=tb+(o-8<<4)<<8,ue=(I-1&255)>>1,ue>3&&(ue=3),q|=ue<<6,S!==0&&(q|=bxe),q+=31-q%31,n=rm,V(q)),t.pending!==0){if(e.flush_pending(),e.avail_out===0)return i=-1,ki}else if(e.avail_in===0&&N<=ae&&N!=Ts)return e.msg=nm[tm-Lc],Lc;if(n==Zd&&e.avail_in!==0)return L.msg=nm[tm-Lc],Lc;if(e.avail_in!==0||T!==0||N!=Bc&&n!=Zd){switch(Ie=-1,Ti[I].func){case WC:Ie=re(N);break;case zm:Ie=Y(N);break;case nl:Ie=k(N);break}if((Ie==Xd||Ie==im)&&(n=Zd),Ie==ii||Ie==Xd)return e.avail_out===0&&(i=-1),ki;if(Ie==sm){if(N==wA)ke();else if(le(0,0,!1),N==uxe)for(z=0;zn&&(i=n),i===0?0:(s.avail_in-=i,t.set(s.next_in.subarray(s.next_in_index,s.next_in_index+i),e),s.next_in_index+=i,s.total_in+=i,i)},flush_pending(){const t=this;let e=t.dstate.pending;e>t.avail_out&&(e=t.avail_out),e!==0&&(t.next_out.set(t.dstate.pending_buf.subarray(t.dstate.pending_out,t.dstate.pending_out+e),t.next_out_index),t.next_out_index+=e,t.dstate.pending_out+=e,t.total_out+=e,t.avail_out-=e,t.dstate.pending-=e,t.dstate.pending===0&&(t.dstate.pending_out=0))}};function xxe(t){const e=this,n=new jC,s=Sxe(t&&t.chunkSize?t.chunkSize:64*1024),i=Bc,r=new Uint8Array(s);let o=t?t.level:Og;typeof o>"u"&&(o=Og),n.deflateInit(o),n.next_out=r,e.append=function(a,l){let c,u,d=0,f=0,h=0;const _=[];if(a.length){n.next_in_index=0,n.next_in=a,n.avail_in=a.length;do{if(n.next_out_index=0,n.avail_out=s,c=n.deflate(i),c!=ki)throw new Error("deflating: "+n.msg);n.next_out_index&&(n.next_out_index==s?_.push(new Uint8Array(r)):_.push(r.subarray(0,n.next_out_index))),h+=n.next_out_index,l&&n.next_in_index>0&&n.next_in_index!=d&&(l(n.next_in_index),d=n.next_in_index)}while(n.avail_in>0||n.avail_out===0);return _.length>1?(u=new Uint8Array(h),_.forEach(function(p){u.set(p,f),f+=p.length})):u=_[0]?new Uint8Array(_[0]):new Uint8Array,u}},e.flush=function(){let a,l,c=0,u=0;const d=[];do{if(n.next_out_index=0,n.avail_out=s,a=n.deflate(Ts),a!=VC&&a!=ki)throw new Error("deflating: "+n.msg);s-n.avail_out>0&&d.push(r.slice(0,n.next_out_index)),u+=n.next_out_index}while(n.avail_in>0||n.avail_out===0);return n.deflateEnd(),l=new Uint8Array(u),d.forEach(function(f){l.set(f,c),c+=f.length}),l}}function Sxe(t){return t+5*(Math.floor(t/16383)+1)}const Exe=15,kt=0,ho=1,Txe=2,Cs=-2,en=-3,EA=-4,po=-5,Bs=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],qC=1440,Axe=0,Mxe=4,kxe=9,Rxe=5,Cxe=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],Oxe=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],Ixe=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],Lxe=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],Pxe=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],Dxe=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],zo=15;function By(){const t=this;let e,n,s,i,r,o;function a(c,u,d,f,h,_,p,m,b,y,v){let x,S,w,T,E,A,O,I,B,U,D,$,F,H,j;U=0,E=d;do s[c[u+U]]++,U++,E--;while(E!==0);if(s[0]==d)return p[0]=-1,m[0]=0,kt;for(I=m[0],A=1;A<=zo&&s[A]===0;A++);for(O=A,IE&&(I=E),m[0]=I,H=1<$+I;){if(T++,$+=I,j=w-$,j=j>I?I:j,(S=1<<(A=O-$))>x+1&&(S-=x+1,F=O,AqC)return en;r[T]=D=y[0],y[0]+=j,T!==0?(o[T]=E,i[0]=A,i[1]=I,A=E>>>$-I,i[2]=D-r[T-1]-A,b.set(i,(r[T-1]+A)*3)):p[0]=D}for(i[1]=O-$,U>=d?i[0]=128+64:v[U]>>$;A>>=1)E^=A;for(E^=A,B=(1<<$)-1;(E&B)!=o[T];)T--,$-=I,B=(1<<$)-1}return H!==0&&w!=1?po:kt}function l(c){let u;for(e||(e=[],n=[],s=new Int32Array(zo+1),i=[],r=new Int32Array(zo),o=new Int32Array(zo+1)),n.length257?(y==en?b.msg="oversubscribed distance tree":y==po?(b.msg="incomplete distance tree",y=en):y!=EA&&(b.msg="empty distance tree with lengths",y=en),y):kt)}}By.inflate_trees_fixed=function(t,e,n,s){return t[0]=kxe,e[0]=Rxe,n[0]=Cxe,s[0]=Oxe,kt};const om=0,TA=1,AA=2,MA=3,kA=4,RA=5,CA=6,sb=7,OA=8,am=9;function Fxe(){const t=this;let e,n=0,s,i=0,r=0,o=0,a=0,l=0,c=0,u=0,d,f=0,h,_=0;function p(m,b,y,v,x,S,w,T){let E,A,O,I,B,U,D,$,F,H,j,Z,K,oe,Q,me;D=T.next_in_index,$=T.avail_in,B=w.bitb,U=w.bitk,F=w.write,H=F>=A[me+1],U-=A[me+1],w.win[F++]=A[me+2],H--;continue}do{if(B>>=A[me+1],U-=A[me+1],I&16){for(I&=15,K=A[me+2]+(B&Bs[I]),B>>=I,U-=I;U<15;)$--,B|=(T.read_byte(D++)&255)<>=A[me+1],U-=A[me+1],I&16){for(I&=15;U>=I,U-=I,H-=K,F>=oe)Q=F-oe,F-Q>0&&2>F-Q?(w.win[F++]=w.win[Q++],w.win[F++]=w.win[Q++],K-=2):(w.win.set(w.win.subarray(Q,Q+2),F),F+=2,Q+=2,K-=2);else{Q=F-oe;do Q+=w.end;while(Q<0);if(I=w.end-Q,K>I){if(K-=I,F-Q>0&&I>F-Q)do w.win[F++]=w.win[Q++];while(--I!==0);else w.win.set(w.win.subarray(Q,Q+I),F),F+=I,Q+=I,I=0;Q=0}}if(F-Q>0&&K>F-Q)do w.win[F++]=w.win[Q++];while(--K!==0);else w.win.set(w.win.subarray(Q,Q+K),F),F+=K,Q+=K,K=0;break}else if(!(I&64))E+=A[me+2],E+=B&Bs[I],me=(O+E)*3,I=A[me];else return T.msg="invalid distance code",K=T.avail_in-$,K=U>>3>3:K,$+=K,D-=K,U-=K<<3,w.bitb=B,w.bitk=U,T.avail_in=$,T.total_in+=D-T.next_in_index,T.next_in_index=D,w.write=F,en;while(!0);break}if(I&64)return I&32?(K=T.avail_in-$,K=U>>3>3:K,$+=K,D-=K,U-=K<<3,w.bitb=B,w.bitk=U,T.avail_in=$,T.total_in+=D-T.next_in_index,T.next_in_index=D,w.write=F,ho):(T.msg="invalid literal/length code",K=T.avail_in-$,K=U>>3>3:K,$+=K,D-=K,U-=K<<3,w.bitb=B,w.bitk=U,T.avail_in=$,T.total_in+=D-T.next_in_index,T.next_in_index=D,w.write=F,en);if(E+=A[me+2],E+=B&Bs[I],me=(O+E)*3,(I=A[me])===0){B>>=A[me+1],U-=A[me+1],w.win[F++]=A[me+2],H--;break}}while(!0)}while(H>=258&&$>=10);return K=T.avail_in-$,K=U>>3>3:K,$+=K,D-=K,U-=K<<3,w.bitb=B,w.bitk=U,T.avail_in=$,T.total_in+=D-T.next_in_index,T.next_in_index=D,w.write=F,kt}t.init=function(m,b,y,v,x,S){e=om,c=m,u=b,d=y,f=v,h=x,_=S,s=null},t.proc=function(m,b,y){let v,x,S,w=0,T=0,E=0,A,O,I,B;for(E=b.next_in_index,A=b.avail_in,w=m.bitb,T=m.bitk,O=m.write,I=O=258&&A>=10&&(m.bitb=w,m.bitk=T,b.avail_in=A,b.total_in+=E-b.next_in_index,b.next_in_index=E,m.write=O,y=p(c,u,d,f,h,_,m,b),E=b.next_in_index,A=b.avail_in,w=m.bitb,T=m.bitk,O=m.write,I=O>>=s[x+1],T-=s[x+1],S=s[x],S===0){o=s[x+2],e=CA;break}if(S&16){a=S&15,n=s[x+2],e=AA;break}if(!(S&64)){r=S,i=x/3+s[x+2];break}if(S&32){e=sb;break}return e=am,b.msg="invalid literal/length code",y=en,m.bitb=w,m.bitk=T,b.avail_in=A,b.total_in+=E-b.next_in_index,b.next_in_index=E,m.write=O,m.inflate_flush(b,y);case AA:for(v=a;T>=v,T-=v,r=u,s=h,i=_,e=MA;case MA:for(v=r;T>=s[x+1],T-=s[x+1],S=s[x],S&16){a=S&15,l=s[x+2],e=kA;break}if(!(S&64)){r=S,i=x/3+s[x+2];break}return e=am,b.msg="invalid distance code",y=en,m.bitb=w,m.bitk=T,b.avail_in=A,b.total_in+=E-b.next_in_index,b.next_in_index=E,m.write=O,m.inflate_flush(b,y);case kA:for(v=a;T>=v,T-=v,e=RA;case RA:for(B=O-l;B<0;)B+=m.end;for(;n!==0;){if(I===0&&(O==m.end&&m.read!==0&&(O=0,I=O7&&(T-=8,A++,E--),m.write=O,y=m.inflate_flush(b,y),O=m.write,I=Op.avail_out&&(b=p.avail_out),b!==0&&m==po&&(m=kt),p.avail_out-=b,p.total_out+=b,p.next_out.set(n.win.subarray(v,v+b),y),y+=b,v+=b,v==n.end&&(v=0,n.write==n.end&&(n.write=0),b=n.write-v,b>p.avail_out&&(b=p.avail_out),b!==0&&m==po&&(m=kt),p.avail_out-=b,p.total_out+=b,p.next_out.set(n.win.subarray(v,v+b),y),y+=b,v+=b),p.next_out_index=y,n.read=v,m},n.proc=function(p,m){let b,y,v,x,S,w,T,E;for(x=p.next_in_index,S=p.avail_in,y=n.bitb,v=n.bitk,w=n.write,T=w>>1){case 0:y>>>=3,v-=3,b=v&7,y>>>=b,v-=b,s=ib;break;case 1:A=[],O=[],I=[[]],B=[[]],By.inflate_trees_fixed(A,O,I,B),u.init(A[0],O[0],I[0],0,B[0],0),y>>>=3,v-=3,s=lm;break;case 2:y>>>=3,v-=3,s=PA;break;case 3:return y>>>=3,v-=3,s=Ka,p.msg="invalid block type",m=en,n.bitb=y,n.bitk=v,p.avail_in=S,p.total_in+=x-p.next_in_index,p.next_in_index=x,n.write=w,n.inflate_flush(p,m)}break;case ib:for(;v<32;){if(S!==0)m=kt;else return n.bitb=y,n.bitk=v,p.avail_in=S,p.total_in+=x-p.next_in_index,p.next_in_index=x,n.write=w,n.inflate_flush(p,m);S--,y|=(p.read_byte(x++)&255)<>>16&65535)!=(y&65535))return s=Ka,p.msg="invalid stored block lengths",m=en,n.bitb=y,n.bitk=v,p.avail_in=S,p.total_in+=x-p.next_in_index,p.next_in_index=x,n.write=w,n.inflate_flush(p,m);i=y&65535,y=v=0,s=i!==0?LA:d!==0?cm:Pc;break;case LA:if(S===0||T===0&&(w==n.end&&n.read!==0&&(w=0,T=wS&&(b=S),b>T&&(b=T),n.win.set(p.read_buf(x,b),w),x+=b,S-=b,w+=b,T-=b,(i-=b)!==0)break;s=d!==0?cm:Pc;break;case PA:for(;v<14;){if(S!==0)m=kt;else return n.bitb=y,n.bitk=v,p.avail_in=S,p.total_in+=x-p.next_in_index,p.next_in_index=x,n.write=w,n.inflate_flush(p,m);S--,y|=(p.read_byte(x++)&255)<29||(b>>5&31)>29)return s=Ka,p.msg="too many length or distance symbols",m=en,n.bitb=y,n.bitk=v,p.avail_in=S,p.total_in+=x-p.next_in_index,p.next_in_index=x,n.write=w,n.inflate_flush(p,m);if(b=258+(b&31)+(b>>5&31),!a||a.length>>=14,v-=14,o=0,s=DA;case DA:for(;o<4+(r>>>10);){for(;v<3;){if(S!==0)m=kt;else return n.bitb=y,n.bitk=v,p.avail_in=S,p.total_in+=x-p.next_in_index,p.next_in_index=x,n.write=w,n.inflate_flush(p,m);S--,y|=(p.read_byte(x++)&255)<>>=3,v-=3}for(;o<19;)a[IA[o++]]=0;if(l[0]=7,b=_.inflate_trees_bits(a,l,c,f,p),b!=kt)return m=b,m==en&&(a=null,s=Ka),n.bitb=y,n.bitk=v,p.avail_in=S,p.total_in+=x-p.next_in_index,p.next_in_index=x,n.write=w,n.inflate_flush(p,m);o=0,s=FA;case FA:for(;b=r,!(o>=258+(b&31)+(b>>5&31));){let H,j;for(b=l[0];v>>=b,v-=b,a[o++]=j;else{for(E=j==18?7:j-14,H=j==18?11:3;v>>=b,v-=b,H+=y&Bs[E],y>>>=E,v-=E,E=o,b=r,E+H>258+(b&31)+(b>>5&31)||j==16&&E<1)return a=null,s=Ka,p.msg="invalid bit length repeat",m=en,n.bitb=y,n.bitk=v,p.avail_in=S,p.total_in+=x-p.next_in_index,p.next_in_index=x,n.write=w,n.inflate_flush(p,m);j=j==16?a[E-1]:0;do a[E++]=j;while(--H!==0);o=E}}if(c[0]=-1,U=[],D=[],$=[],F=[],U[0]=9,D[0]=6,b=r,b=_.inflate_trees_dynamic(257+(b&31),1+(b>>5&31),a,U,D,$,F,f,p),b!=kt)return b==en&&(a=null,s=Ka),m=b,n.bitb=y,n.bitk=v,p.avail_in=S,p.total_in+=x-p.next_in_index,p.next_in_index=x,n.write=w,n.inflate_flush(p,m);u.init(U[0],D[0],f,$[0],f,F[0]),s=lm;case lm:if(n.bitb=y,n.bitk=v,p.avail_in=S,p.total_in+=x-p.next_in_index,p.next_in_index=x,n.write=w,(m=u.proc(n,p,m))!=ho)return n.inflate_flush(p,m);if(m=kt,u.free(p),x=p.next_in_index,S=p.avail_in,y=n.bitb,v=n.bitk,w=n.write,T=w15?(t.inflateEnd(n),Cs):(t.wbits=s,n.istate.blocks=new Nxe(n,1<>4)+8>o.wbits){o.mode=Ho,n.msg="invalid win size",o.marker=5;break}o.mode=$A;case $A:if(n.avail_in===0)return i;if(i=s,n.avail_in--,n.total_in++,r=n.read_byte(n.next_in_index++)&255,((o.method<<8)+r)%31!==0){o.mode=Ho,n.msg="incorrect header check",o.marker=5;break}if(!(r&$xe)){o.mode=Jd;break}o.mode=UA;case UA:if(n.avail_in===0)return i;i=s,n.avail_in--,n.total_in++,o.need=(n.read_byte(n.next_in_index++)&255)<<24&4278190080,o.mode=BA;case BA:if(n.avail_in===0)return i;i=s,n.avail_in--,n.total_in++,o.need+=(n.read_byte(n.next_in_index++)&255)<<16&16711680,o.mode=GA;case GA:if(n.avail_in===0)return i;i=s,n.avail_in--,n.total_in++,o.need+=(n.read_byte(n.next_in_index++)&255)<<8&65280,o.mode=zA;case zA:return n.avail_in===0?i:(i=s,n.avail_in--,n.total_in++,o.need+=n.read_byte(n.next_in_index++)&255,o.mode=rb,Txe);case rb:return o.mode=Ho,n.msg="need dictionary",o.marker=0,Cs;case Jd:if(i=o.blocks.proc(n,i),i==en){o.mode=Ho,o.marker=0;break}if(i==kt&&(i=s),i!=ho)return i;i=s,o.blocks.reset(n,o.was),o.mode=HA;case HA:return n.avail_in=0,ho;case Ho:return en;default:return Cs}},t.inflateSetDictionary=function(n,s,i){let r=0,o=i;if(!n||!n.istate||n.istate.mode!=rb)return Cs;const a=n.istate;return o>=1<0&&n.next_in_index!=f&&(l(n.next_in_index),f=n.next_in_index)}while(n.avail_in>0||n.avail_out===0);return c.length>1?(d=new Uint8Array(_),c.forEach(function(p){d.set(p,h),h+=p.length})):d=c[0]?new Uint8Array(c[0]):new Uint8Array,d}},e.flush=function(){n.inflateEnd()}}const Pl=4294967295,ia=65535,Vxe=8,Wxe=0,jxe=99,qxe=67324752,Yxe=134695760,VA=33639248,Kxe=101010256,WA=101075792,Xxe=117853008,Dc=22,ob=20,ab=56,Zxe=1,Jxe=39169,Qxe=10,e2e=1,t2e=21589,n2e=28789,s2e=25461,i2e=6534,jA=1,r2e=6,qA=8,YA=2048,KA=16,o2e="/",Wi=void 0,Ig="undefined",KC="function";class XA{constructor(e){return class extends TransformStream{constructor(n,s){const i=new e(s);super({transform(r,o){o.enqueue(i.append(r))},flush(r){const o=i.flush();o&&r.enqueue(o)}})}}}}const a2e=64;let XC=2;try{typeof navigator!=Ig&&navigator.hardwareConcurrency&&(XC=navigator.hardwareConcurrency)}catch{}const l2e={chunkSize:512*1024,maxWorkers:XC,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:Wi,CompressionStreamNative:typeof CompressionStream!=Ig&&CompressionStream,DecompressionStreamNative:typeof DecompressionStream!=Ig&&DecompressionStream},ra=Object.assign({},l2e);function c2e(){return ra}function u2e(t){return Math.max(t.chunkSize,a2e)}function Ox(t){const{baseURL:e,chunkSize:n,maxWorkers:s,terminateWorkerTimeout:i,useCompressionStream:r,useWebWorkers:o,Deflate:a,Inflate:l,CompressionStream:c,DecompressionStream:u,workerScripts:d}=t;if(Vo("baseURL",e),Vo("chunkSize",n),Vo("maxWorkers",s),Vo("terminateWorkerTimeout",i),Vo("useCompressionStream",r),Vo("useWebWorkers",o),a&&(ra.CompressionStream=new XA(a)),l&&(ra.DecompressionStream=new XA(l)),Vo("CompressionStream",c),Vo("DecompressionStream",u),d!==Wi){const{deflate:f,inflate:h}=d;if((f||h)&&(ra.workerScripts||(ra.workerScripts={})),f){if(!Array.isArray(f))throw new Error("workerScripts.deflate must be an array");ra.workerScripts.deflate=f}if(h){if(!Array.isArray(h))throw new Error("workerScripts.inflate must be an array");ra.workerScripts.inflate=h}}}function Vo(t,e){e!==Wi&&(ra[t]=e)}const lb={application:{"andrew-inset":"ez",annodex:"anx","atom+xml":"atom","atomcat+xml":"atomcat","atomserv+xml":"atomsrv",bbolin:"lin","cu-seeme":"cu","davmount+xml":"davmount",dsptype:"tsp",ecmascript:["es","ecma"],futuresplash:"spl",hta:"hta","java-archive":"jar","java-serialized-object":"ser","java-vm":"class",m3g:"m3g","mac-binhex40":"hqx",mathematica:["nb","ma","mb"],msaccess:"mdb",msword:["doc","dot","wiz"],mxf:"mxf",oda:"oda",ogg:"ogx",pdf:"pdf","pgp-keys":"key","pgp-signature":["asc","sig"],"pics-rules":"prf",postscript:["ps","ai","eps","epsi","epsf","eps2","eps3"],rar:"rar","rdf+xml":"rdf","rss+xml":"rss",rtf:"rtf","xhtml+xml":["xhtml","xht"],xml:["xml","xsl","xsd","xpdl"],"xspf+xml":"xspf",zip:"zip","vnd.android.package-archive":"apk","vnd.cinderella":"cdy","vnd.google-earth.kml+xml":"kml","vnd.google-earth.kmz":"kmz","vnd.mozilla.xul+xml":"xul","vnd.ms-excel":["xls","xlb","xlt","xlm","xla","xlc","xlw"],"vnd.ms-pki.seccat":"cat","vnd.ms-pki.stl":"stl","vnd.ms-powerpoint":["ppt","pps","pot","ppa","pwz"],"vnd.oasis.opendocument.chart":"odc","vnd.oasis.opendocument.database":"odb","vnd.oasis.opendocument.formula":"odf","vnd.oasis.opendocument.graphics":"odg","vnd.oasis.opendocument.graphics-template":"otg","vnd.oasis.opendocument.image":"odi","vnd.oasis.opendocument.presentation":"odp","vnd.oasis.opendocument.presentation-template":"otp","vnd.oasis.opendocument.spreadsheet":"ods","vnd.oasis.opendocument.spreadsheet-template":"ots","vnd.oasis.opendocument.text":"odt","vnd.oasis.opendocument.text-master":["odm","otm"],"vnd.oasis.opendocument.text-template":"ott","vnd.oasis.opendocument.text-web":"oth","vnd.openxmlformats-officedocument.spreadsheetml.sheet":"xlsx","vnd.openxmlformats-officedocument.spreadsheetml.template":"xltx","vnd.openxmlformats-officedocument.presentationml.presentation":"pptx","vnd.openxmlformats-officedocument.presentationml.slideshow":"ppsx","vnd.openxmlformats-officedocument.presentationml.template":"potx","vnd.openxmlformats-officedocument.wordprocessingml.document":"docx","vnd.openxmlformats-officedocument.wordprocessingml.template":"dotx","vnd.smaf":"mmf","vnd.stardivision.calc":"sdc","vnd.stardivision.chart":"sds","vnd.stardivision.draw":"sda","vnd.stardivision.impress":"sdd","vnd.stardivision.math":["sdf","smf"],"vnd.stardivision.writer":["sdw","vor"],"vnd.stardivision.writer-global":"sgl","vnd.sun.xml.calc":"sxc","vnd.sun.xml.calc.template":"stc","vnd.sun.xml.draw":"sxd","vnd.sun.xml.draw.template":"std","vnd.sun.xml.impress":"sxi","vnd.sun.xml.impress.template":"sti","vnd.sun.xml.math":"sxm","vnd.sun.xml.writer":"sxw","vnd.sun.xml.writer.global":"sxg","vnd.sun.xml.writer.template":"stw","vnd.symbian.install":["sis","sisx"],"vnd.visio":["vsd","vst","vss","vsw","vsdx","vssx","vstx","vssm","vstm"],"vnd.wap.wbxml":"wbxml","vnd.wap.wmlc":"wmlc","vnd.wap.wmlscriptc":"wmlsc","vnd.wordperfect":"wpd","vnd.wordperfect5.1":"wp5","x-123":"wk","x-7z-compressed":"7z","x-abiword":"abw","x-apple-diskimage":"dmg","x-bcpio":"bcpio","x-bittorrent":"torrent","x-cbr":["cbr","cba","cbt","cb7"],"x-cbz":"cbz","x-cdf":["cdf","cda"],"x-cdlink":"vcd","x-chess-pgn":"pgn","x-cpio":"cpio","x-csh":"csh","x-director":["dir","dxr","cst","cct","cxt","w3d","fgd","swa"],"x-dms":"dms","x-doom":"wad","x-dvi":"dvi","x-httpd-eruby":"rhtml","x-font":"pcf.Z","x-freemind":"mm","x-gnumeric":"gnumeric","x-go-sgf":"sgf","x-graphing-calculator":"gcf","x-gtar":["gtar","taz"],"x-hdf":"hdf","x-httpd-php":["phtml","pht","php"],"x-httpd-php-source":"phps","x-httpd-php3":"php3","x-httpd-php3-preprocessed":"php3p","x-httpd-php4":"php4","x-httpd-php5":"php5","x-ica":"ica","x-info":"info","x-internet-signup":["ins","isp"],"x-iphone":"iii","x-iso9660-image":"iso","x-java-jnlp-file":"jnlp","x-jmol":"jmz","x-killustrator":"kil","x-latex":"latex","x-lyx":"lyx","x-lzx":"lzx","x-maker":["frm","fb","fbdoc"],"x-ms-wmd":"wmd","x-msdos-program":["com","exe","bat","dll"],"x-netcdf":["nc"],"x-ns-proxy-autoconfig":["pac","dat"],"x-nwc":"nwc","x-object":"o","x-oz-application":"oza","x-pkcs7-certreqresp":"p7r","x-python-code":["pyc","pyo"],"x-qgis":["qgs","shp","shx"],"x-quicktimeplayer":"qtl","x-redhat-package-manager":["rpm","rpa"],"x-ruby":"rb","x-sh":"sh","x-shar":"shar","x-shockwave-flash":["swf","swfl"],"x-silverlight":"scr","x-stuffit":"sit","x-sv4cpio":"sv4cpio","x-sv4crc":"sv4crc","x-tar":"tar","x-tex-gf":"gf","x-tex-pk":"pk","x-texinfo":["texinfo","texi"],"x-trash":["~","%","bak","old","sik"],"x-ustar":"ustar","x-wais-source":"src","x-wingz":"wz","x-x509-ca-cert":["crt","der","cer"],"x-xcf":"xcf","x-xfig":"fig","x-xpinstall":"xpi",applixware:"aw","atomsvc+xml":"atomsvc","ccxml+xml":"ccxml","cdmi-capability":"cdmia","cdmi-container":"cdmic","cdmi-domain":"cdmid","cdmi-object":"cdmio","cdmi-queue":"cdmiq","docbook+xml":"dbk","dssc+der":"dssc","dssc+xml":"xdssc","emma+xml":"emma","epub+zip":"epub",exi:"exi","font-tdpfr":"pfr","gml+xml":"gml","gpx+xml":"gpx",gxf:"gxf",hyperstudio:"stk","inkml+xml":["ink","inkml"],ipfix:"ipfix","jsonml+json":"jsonml","lost+xml":"lostxml","mads+xml":"mads",marc:"mrc","marcxml+xml":"mrcx","mathml+xml":["mathml","mml"],mbox:"mbox","mediaservercontrol+xml":"mscml","metalink+xml":"metalink","metalink4+xml":"meta4","mets+xml":"mets","mods+xml":"mods",mp21:["m21","mp21"],mp4:"mp4s","oebps-package+xml":"opf","omdoc+xml":"omdoc",onenote:["onetoc","onetoc2","onetmp","onepkg"],oxps:"oxps","patch-ops-error+xml":"xer","pgp-encrypted":"pgp",pkcs10:"p10","pkcs7-mime":["p7m","p7c"],"pkcs7-signature":"p7s",pkcs8:"p8","pkix-attr-cert":"ac","pkix-crl":"crl","pkix-pkipath":"pkipath",pkixcmp:"pki","pls+xml":"pls","prs.cww":"cww","pskc+xml":"pskcxml","reginfo+xml":"rif","relax-ng-compact-syntax":"rnc","resource-lists+xml":"rl","resource-lists-diff+xml":"rld","rls-services+xml":"rs","rpki-ghostbusters":"gbr","rpki-manifest":"mft","rpki-roa":"roa","rsd+xml":"rsd","sbml+xml":"sbml","scvp-cv-request":"scq","scvp-cv-response":"scs","scvp-vp-request":"spq","scvp-vp-response":"spp",sdp:"sdp","set-payment-initiation":"setpay","set-registration-initiation":"setreg","shf+xml":"shf","sparql-query":"rq","sparql-results+xml":"srx",srgs:"gram","srgs+xml":"grxml","sru+xml":"sru","ssdl+xml":"ssdl","ssml+xml":"ssml","tei+xml":["tei","teicorpus"],"thraud+xml":"tfi","timestamped-data":"tsd","vnd.3gpp.pic-bw-large":"plb","vnd.3gpp.pic-bw-small":"psb","vnd.3gpp.pic-bw-var":"pvb","vnd.3gpp2.tcap":"tcap","vnd.3m.post-it-notes":"pwn","vnd.accpac.simply.aso":"aso","vnd.accpac.simply.imp":"imp","vnd.acucobol":"acu","vnd.acucorp":["atc","acutc"],"vnd.adobe.air-application-installer-package+zip":"air","vnd.adobe.formscentral.fcdt":"fcdt","vnd.adobe.fxp":["fxp","fxpl"],"vnd.adobe.xdp+xml":"xdp","vnd.adobe.xfdf":"xfdf","vnd.ahead.space":"ahead","vnd.airzip.filesecure.azf":"azf","vnd.airzip.filesecure.azs":"azs","vnd.amazon.ebook":"azw","vnd.americandynamics.acc":"acc","vnd.amiga.ami":"ami","vnd.anser-web-certificate-issue-initiation":"cii","vnd.anser-web-funds-transfer-initiation":"fti","vnd.antix.game-component":"atx","vnd.apple.installer+xml":"mpkg","vnd.apple.mpegurl":"m3u8","vnd.aristanetworks.swi":"swi","vnd.astraea-software.iota":"iota","vnd.audiograph":"aep","vnd.blueice.multipass":"mpm","vnd.bmi":"bmi","vnd.businessobjects":"rep","vnd.chemdraw+xml":"cdxml","vnd.chipnuts.karaoke-mmd":"mmd","vnd.claymore":"cla","vnd.cloanto.rp9":"rp9","vnd.clonk.c4group":["c4g","c4d","c4f","c4p","c4u"],"vnd.cluetrust.cartomobile-config":"c11amc","vnd.cluetrust.cartomobile-config-pkg":"c11amz","vnd.commonspace":"csp","vnd.contact.cmsg":"cdbcmsg","vnd.cosmocaller":"cmc","vnd.crick.clicker":"clkx","vnd.crick.clicker.keyboard":"clkk","vnd.crick.clicker.palette":"clkp","vnd.crick.clicker.template":"clkt","vnd.crick.clicker.wordbank":"clkw","vnd.criticaltools.wbs+xml":"wbs","vnd.ctc-posml":"pml","vnd.cups-ppd":"ppd","vnd.curl.car":"car","vnd.curl.pcurl":"pcurl","vnd.dart":"dart","vnd.data-vision.rdz":"rdz","vnd.dece.data":["uvf","uvvf","uvd","uvvd"],"vnd.dece.ttml+xml":["uvt","uvvt"],"vnd.dece.unspecified":["uvx","uvvx"],"vnd.dece.zip":["uvz","uvvz"],"vnd.denovo.fcselayout-link":"fe_launch","vnd.dna":"dna","vnd.dolby.mlp":"mlp","vnd.dpgraph":"dpg","vnd.dreamfactory":"dfac","vnd.ds-keypoint":"kpxx","vnd.dvb.ait":"ait","vnd.dvb.service":"svc","vnd.dynageo":"geo","vnd.ecowin.chart":"mag","vnd.enliven":"nml","vnd.epson.esf":"esf","vnd.epson.msf":"msf","vnd.epson.quickanime":"qam","vnd.epson.salt":"slt","vnd.epson.ssf":"ssf","vnd.eszigno3+xml":["es3","et3"],"vnd.ezpix-album":"ez2","vnd.ezpix-package":"ez3","vnd.fdf":"fdf","vnd.fdsn.mseed":"mseed","vnd.fdsn.seed":["seed","dataless"],"vnd.flographit":"gph","vnd.fluxtime.clip":"ftc","vnd.framemaker":["fm","frame","maker","book"],"vnd.frogans.fnc":"fnc","vnd.frogans.ltf":"ltf","vnd.fsc.weblaunch":"fsc","vnd.fujitsu.oasys":"oas","vnd.fujitsu.oasys2":"oa2","vnd.fujitsu.oasys3":"oa3","vnd.fujitsu.oasysgp":"fg5","vnd.fujitsu.oasysprs":"bh2","vnd.fujixerox.ddd":"ddd","vnd.fujixerox.docuworks":"xdw","vnd.fujixerox.docuworks.binder":"xbd","vnd.fuzzysheet":"fzs","vnd.genomatix.tuxedo":"txd","vnd.geogebra.file":"ggb","vnd.geogebra.tool":"ggt","vnd.geometry-explorer":["gex","gre"],"vnd.geonext":"gxt","vnd.geoplan":"g2w","vnd.geospace":"g3w","vnd.gmx":"gmx","vnd.grafeq":["gqf","gqs"],"vnd.groove-account":"gac","vnd.groove-help":"ghf","vnd.groove-identity-message":"gim","vnd.groove-injector":"grv","vnd.groove-tool-message":"gtm","vnd.groove-tool-template":"tpl","vnd.groove-vcard":"vcg","vnd.hal+xml":"hal","vnd.handheld-entertainment+xml":"zmm","vnd.hbci":"hbci","vnd.hhe.lesson-player":"les","vnd.hp-hpgl":"hpgl","vnd.hp-hpid":"hpid","vnd.hp-hps":"hps","vnd.hp-jlyt":"jlt","vnd.hp-pcl":"pcl","vnd.hp-pclxl":"pclxl","vnd.hydrostatix.sof-data":"sfd-hdstx","vnd.ibm.minipay":"mpy","vnd.ibm.modcap":["afp","listafp","list3820"],"vnd.ibm.rights-management":"irm","vnd.ibm.secure-container":"sc","vnd.iccprofile":["icc","icm"],"vnd.igloader":"igl","vnd.immervision-ivp":"ivp","vnd.immervision-ivu":"ivu","vnd.insors.igm":"igm","vnd.intercon.formnet":["xpw","xpx"],"vnd.intergeo":"i2g","vnd.intu.qbo":"qbo","vnd.intu.qfx":"qfx","vnd.ipunplugged.rcprofile":"rcprofile","vnd.irepository.package+xml":"irp","vnd.is-xpr":"xpr","vnd.isac.fcs":"fcs","vnd.jam":"jam","vnd.jcp.javame.midlet-rms":"rms","vnd.jisp":"jisp","vnd.joost.joda-archive":"joda","vnd.kahootz":["ktz","ktr"],"vnd.kde.karbon":"karbon","vnd.kde.kchart":"chrt","vnd.kde.kformula":"kfo","vnd.kde.kivio":"flw","vnd.kde.kontour":"kon","vnd.kde.kpresenter":["kpr","kpt"],"vnd.kde.kspread":"ksp","vnd.kde.kword":["kwd","kwt"],"vnd.kenameaapp":"htke","vnd.kidspiration":"kia","vnd.kinar":["kne","knp"],"vnd.koan":["skp","skd","skt","skm"],"vnd.kodak-descriptor":"sse","vnd.las.las+xml":"lasxml","vnd.llamagraphics.life-balance.desktop":"lbd","vnd.llamagraphics.life-balance.exchange+xml":"lbe","vnd.lotus-1-2-3":"123","vnd.lotus-approach":"apr","vnd.lotus-freelance":"pre","vnd.lotus-notes":"nsf","vnd.lotus-organizer":"org","vnd.lotus-screencam":"scm","vnd.lotus-wordpro":"lwp","vnd.macports.portpkg":"portpkg","vnd.mcd":"mcd","vnd.medcalcdata":"mc1","vnd.mediastation.cdkey":"cdkey","vnd.mfer":"mwf","vnd.mfmp":"mfm","vnd.micrografx.flo":"flo","vnd.micrografx.igx":"igx","vnd.mif":"mif","vnd.mobius.daf":"daf","vnd.mobius.dis":"dis","vnd.mobius.mbk":"mbk","vnd.mobius.mqy":"mqy","vnd.mobius.msl":"msl","vnd.mobius.plc":"plc","vnd.mobius.txf":"txf","vnd.mophun.application":"mpn","vnd.mophun.certificate":"mpc","vnd.ms-artgalry":"cil","vnd.ms-cab-compressed":"cab","vnd.ms-excel.addin.macroenabled.12":"xlam","vnd.ms-excel.sheet.binary.macroenabled.12":"xlsb","vnd.ms-excel.sheet.macroenabled.12":"xlsm","vnd.ms-excel.template.macroenabled.12":"xltm","vnd.ms-fontobject":"eot","vnd.ms-htmlhelp":"chm","vnd.ms-ims":"ims","vnd.ms-lrm":"lrm","vnd.ms-officetheme":"thmx","vnd.ms-powerpoint.addin.macroenabled.12":"ppam","vnd.ms-powerpoint.presentation.macroenabled.12":"pptm","vnd.ms-powerpoint.slide.macroenabled.12":"sldm","vnd.ms-powerpoint.slideshow.macroenabled.12":"ppsm","vnd.ms-powerpoint.template.macroenabled.12":"potm","vnd.ms-project":["mpp","mpt"],"vnd.ms-word.document.macroenabled.12":"docm","vnd.ms-word.template.macroenabled.12":"dotm","vnd.ms-works":["wps","wks","wcm","wdb"],"vnd.ms-wpl":"wpl","vnd.ms-xpsdocument":"xps","vnd.mseq":"mseq","vnd.musician":"mus","vnd.muvee.style":"msty","vnd.mynfc":"taglet","vnd.neurolanguage.nlu":"nlu","vnd.nitf":["ntf","nitf"],"vnd.noblenet-directory":"nnd","vnd.noblenet-sealer":"nns","vnd.noblenet-web":"nnw","vnd.nokia.n-gage.data":"ngdat","vnd.nokia.n-gage.symbian.install":"n-gage","vnd.nokia.radio-preset":"rpst","vnd.nokia.radio-presets":"rpss","vnd.novadigm.edm":"edm","vnd.novadigm.edx":"edx","vnd.novadigm.ext":"ext","vnd.oasis.opendocument.chart-template":"otc","vnd.oasis.opendocument.formula-template":"odft","vnd.oasis.opendocument.image-template":"oti","vnd.olpc-sugar":"xo","vnd.oma.dd2+xml":"dd2","vnd.openofficeorg.extension":"oxt","vnd.openxmlformats-officedocument.presentationml.slide":"sldx","vnd.osgeo.mapguide.package":"mgp","vnd.osgi.dp":"dp","vnd.osgi.subsystem":"esa","vnd.palm":["pdb","pqa","oprc"],"vnd.pawaafile":"paw","vnd.pg.format":"str","vnd.pg.osasli":"ei6","vnd.picsel":"efif","vnd.pmi.widget":"wg","vnd.pocketlearn":"plf","vnd.powerbuilder6":"pbd","vnd.previewsystems.box":"box","vnd.proteus.magazine":"mgz","vnd.publishare-delta-tree":"qps","vnd.pvi.ptid1":"ptid","vnd.quark.quarkxpress":["qxd","qxt","qwd","qwt","qxl","qxb"],"vnd.realvnc.bed":"bed","vnd.recordare.musicxml":"mxl","vnd.recordare.musicxml+xml":"musicxml","vnd.rig.cryptonote":"cryptonote","vnd.rn-realmedia":"rm","vnd.rn-realmedia-vbr":"rmvb","vnd.route66.link66+xml":"link66","vnd.sailingtracker.track":"st","vnd.seemail":"see","vnd.sema":"sema","vnd.semd":"semd","vnd.semf":"semf","vnd.shana.informed.formdata":"ifm","vnd.shana.informed.formtemplate":"itp","vnd.shana.informed.interchange":"iif","vnd.shana.informed.package":"ipk","vnd.simtech-mindmapper":["twd","twds"],"vnd.smart.teacher":"teacher","vnd.solent.sdkm+xml":["sdkm","sdkd"],"vnd.spotfire.dxp":"dxp","vnd.spotfire.sfs":"sfs","vnd.stepmania.package":"smzip","vnd.stepmania.stepchart":"sm","vnd.sus-calendar":["sus","susp"],"vnd.svd":"svd","vnd.syncml+xml":"xsm","vnd.syncml.dm+wbxml":"bdm","vnd.syncml.dm+xml":"xdm","vnd.tao.intent-module-archive":"tao","vnd.tcpdump.pcap":["pcap","cap","dmp"],"vnd.tmobile-livetv":"tmo","vnd.trid.tpt":"tpt","vnd.triscape.mxs":"mxs","vnd.trueapp":"tra","vnd.ufdl":["ufd","ufdl"],"vnd.uiq.theme":"utz","vnd.umajin":"umj","vnd.unity":"unityweb","vnd.uoml+xml":"uoml","vnd.vcx":"vcx","vnd.visionary":"vis","vnd.vsf":"vsf","vnd.webturbo":"wtb","vnd.wolfram.player":"nbp","vnd.wqd":"wqd","vnd.wt.stf":"stf","vnd.xara":"xar","vnd.xfdl":"xfdl","vnd.yamaha.hv-dic":"hvd","vnd.yamaha.hv-script":"hvs","vnd.yamaha.hv-voice":"hvp","vnd.yamaha.openscoreformat":"osf","vnd.yamaha.openscoreformat.osfpvg+xml":"osfpvg","vnd.yamaha.smaf-audio":"saf","vnd.yamaha.smaf-phrase":"spf","vnd.yellowriver-custom-menu":"cmp","vnd.zul":["zir","zirz"],"vnd.zzazz.deck+xml":"zaz","voicexml+xml":"vxml",widget:"wgt",winhlp:"hlp","wsdl+xml":"wsdl","wspolicy+xml":"wspolicy","x-ace-compressed":"ace","x-authorware-bin":["aab","x32","u32","vox"],"x-authorware-map":"aam","x-authorware-seg":"aas","x-blorb":["blb","blorb"],"x-bzip":"bz","x-bzip2":["bz2","boz"],"x-cfs-compressed":"cfs","x-chat":"chat","x-conference":"nsc","x-dgc-compressed":"dgc","x-dtbncx+xml":"ncx","x-dtbook+xml":"dtb","x-dtbresource+xml":"res","x-eva":"eva","x-font-bdf":"bdf","x-font-ghostscript":"gsf","x-font-linux-psf":"psf","x-font-pcf":"pcf","x-font-snf":"snf","x-font-ttf":["ttf","ttc"],"x-font-type1":["pfa","pfb","pfm","afm"],"x-freearc":"arc","x-gca-compressed":"gca","x-glulx":"ulx","x-gramps-xml":"gramps","x-install-instructions":"install","x-lzh-compressed":["lzh","lha"],"x-mie":"mie","x-mobipocket-ebook":["prc","mobi"],"x-ms-application":"application","x-ms-shortcut":"lnk","x-ms-xbap":"xbap","x-msbinder":"obd","x-mscardfile":"crd","x-msclip":"clp","application/x-ms-installer":"msi","x-msmediaview":["mvb","m13","m14"],"x-msmetafile":["wmf","wmz","emf","emz"],"x-msmoney":"mny","x-mspublisher":"pub","x-msschedule":"scd","x-msterminal":"trm","x-mswrite":"wri","x-nzb":"nzb","x-pkcs12":["p12","pfx"],"x-pkcs7-certificates":["p7b","spc"],"x-research-info-systems":"ris","x-silverlight-app":"xap","x-sql":"sql","x-stuffitx":"sitx","x-subrip":"srt","x-t3vm-image":"t3","x-tex-tfm":"tfm","x-tgif":"obj","x-xliff+xml":"xlf","x-xz":"xz","x-zmachine":["z1","z2","z3","z4","z5","z6","z7","z8"],"xaml+xml":"xaml","xcap-diff+xml":"xdf","xenc+xml":"xenc","xml-dtd":"dtd","xop+xml":"xop","xproc+xml":"xpl","xslt+xml":"xslt","xv+xml":["mxml","xhvml","xvml","xvm"],yang:"yang","yin+xml":"yin",envoy:"evy",fractals:"fif","internet-property-stream":"acx",olescript:"axs","vnd.ms-outlook":"msg","vnd.ms-pkicertstore":"sst","x-compress":"z","x-perfmon":["pma","pmc","pmr","pmw"],"ynd.ms-pkipko":"pko",gzip:["gz","tgz"],"smil+xml":["smi","smil"],"vnd.debian.binary-package":["deb","udeb"],"vnd.hzn-3d-crossword":"x3d","vnd.sqlite3":["db","sqlite","sqlite3","db-wal","sqlite-wal","db-shm","sqlite-shm"],"vnd.wap.sic":"sic","vnd.wap.slc":"slc","x-krita":["kra","krz"],"x-perl":["pm","pl"],yaml:["yaml","yml"]},audio:{amr:"amr","amr-wb":"awb",annodex:"axa",basic:["au","snd"],flac:"flac",midi:["mid","midi","kar","rmi"],mpeg:["mpga","mpega","mp3","m4a","mp2a","m2a","m3a"],mpegurl:"m3u",ogg:["oga","ogg","spx"],"prs.sid":"sid","x-aiff":"aifc","x-gsm":"gsm","x-ms-wma":"wma","x-ms-wax":"wax","x-pn-realaudio":"ram","x-realaudio":"ra","x-sd2":"sd2",adpcm:"adp",mp4:"mp4a",s3m:"s3m",silk:"sil","vnd.dece.audio":["uva","uvva"],"vnd.digital-winds":"eol","vnd.dra":"dra","vnd.dts":"dts","vnd.dts.hd":"dtshd","vnd.lucent.voice":"lvp","vnd.ms-playready.media.pya":"pya","vnd.nuera.ecelp4800":"ecelp4800","vnd.nuera.ecelp7470":"ecelp7470","vnd.nuera.ecelp9600":"ecelp9600","vnd.rip":"rip",webm:"weba","x-caf":"caf","x-matroska":"mka","x-pn-realaudio-plugin":"rmp",xm:"xm",aac:"aac",aiff:["aiff","aif","aff"],opus:"opus",wav:"wav"},chemical:{"x-alchemy":"alc","x-cache":["cac","cache"],"x-cache-csf":"csf","x-cactvs-binary":["cbin","cascii","ctab"],"x-cdx":"cdx","x-chem3d":"c3d","x-cif":"cif","x-cmdf":"cmdf","x-cml":"cml","x-compass":"cpa","x-crossfire":"bsd","x-csml":["csml","csm"],"x-ctx":"ctx","x-cxf":["cxf","cef"],"x-embl-dl-nucleotide":["emb","embl"],"x-gamess-input":["inp","gam","gamin"],"x-gaussian-checkpoint":["fch","fchk"],"x-gaussian-cube":"cub","x-gaussian-input":["gau","gjc","gjf"],"x-gaussian-log":"gal","x-gcg8-sequence":"gcg","x-genbank":"gen","x-hin":"hin","x-isostar":["istr","ist"],"x-jcamp-dx":["jdx","dx"],"x-kinemage":"kin","x-macmolecule":"mcm","x-macromodel-input":"mmod","x-mdl-molfile":"mol","x-mdl-rdfile":"rd","x-mdl-rxnfile":"rxn","x-mdl-sdfile":"sd","x-mdl-tgf":"tgf","x-mmcif":"mcif","x-mol2":"mol2","x-molconn-Z":"b","x-mopac-graph":"gpt","x-mopac-input":["mop","mopcrt","zmt"],"x-mopac-out":"moo","x-ncbi-asn1":"asn","x-ncbi-asn1-ascii":["prt","ent"],"x-ncbi-asn1-binary":"val","x-rosdal":"ros","x-swissprot":"sw","x-vamas-iso14976":"vms","x-vmd":"vmd","x-xtel":"xtel","x-xyz":"xyz"},font:{otf:"otf",woff:"woff",woff2:"woff2"},image:{gif:"gif",ief:"ief",jpeg:["jpeg","jpg","jpe","jfif","jfif-tbnl","jif"],pcx:"pcx",png:"png","svg+xml":["svg","svgz"],tiff:["tiff","tif"],"vnd.djvu":["djvu","djv"],"vnd.wap.wbmp":"wbmp","x-canon-cr2":"cr2","x-canon-crw":"crw","x-cmu-raster":"ras","x-coreldraw":"cdr","x-coreldrawpattern":"pat","x-coreldrawtemplate":"cdt","x-corelphotopaint":"cpt","x-epson-erf":"erf","x-icon":"ico","x-jg":"art","x-jng":"jng","x-nikon-nef":"nef","x-olympus-orf":"orf","x-portable-anymap":"pnm","x-portable-bitmap":"pbm","x-portable-graymap":"pgm","x-portable-pixmap":"ppm","x-rgb":"rgb","x-xbitmap":"xbm","x-xpixmap":"xpm","x-xwindowdump":"xwd",bmp:"bmp",cgm:"cgm",g3fax:"g3",ktx:"ktx","prs.btif":"btif",sgi:"sgi","vnd.dece.graphic":["uvi","uvvi","uvg","uvvg"],"vnd.dwg":"dwg","vnd.dxf":"dxf","vnd.fastbidsheet":"fbs","vnd.fpx":"fpx","vnd.fst":"fst","vnd.fujixerox.edmics-mmr":"mmr","vnd.fujixerox.edmics-rlc":"rlc","vnd.ms-modi":"mdi","vnd.ms-photo":"wdp","vnd.net-fpx":"npx","vnd.xiff":"xif",webp:"webp","x-3ds":"3ds","x-cmx":"cmx","x-freehand":["fh","fhc","fh4","fh5","fh7"],"x-pict":["pic","pct"],"x-tga":"tga","cis-cod":"cod",avif:"avifs",heic:["heif","heic"],pjpeg:["pjpg"],"vnd.adobe.photoshop":"psd","x-adobe-dng":"dng","x-fuji-raf":"raf","x-icns":"icns","x-kodak-dcr":"dcr","x-kodak-k25":"k25","x-kodak-kdc":"kdc","x-minolta-mrw":"mrw","x-panasonic-raw":["raw","rw2","rwl"],"x-pentax-pef":["pef","ptx"],"x-sigma-x3f":"x3f","x-sony-arw":"arw","x-sony-sr2":"sr2","x-sony-srf":"srf"},message:{rfc822:["eml","mime","mht","mhtml","nws"]},model:{iges:["igs","iges"],mesh:["msh","mesh","silo"],vrml:["wrl","vrml"],"x3d+vrml":["x3dv","x3dvz"],"x3d+xml":"x3dz","x3d+binary":["x3db","x3dbz"],"vnd.collada+xml":"dae","vnd.dwf":"dwf","vnd.gdl":"gdl","vnd.gtw":"gtw","vnd.mts":"mts","vnd.usdz+zip":"usdz","vnd.vtu":"vtu"},text:{"cache-manifest":["manifest","appcache"],calendar:["ics","icz","ifb"],css:"css",csv:"csv",h323:"323",html:["html","htm","shtml","stm"],iuls:"uls",plain:["txt","text","brf","conf","def","list","log","in","bas","diff","ksh"],richtext:"rtx",scriptlet:["sct","wsc"],texmacs:"tm","tab-separated-values":"tsv","vnd.sun.j2me.app-descriptor":"jad","vnd.wap.wml":"wml","vnd.wap.wmlscript":"wmls","x-bibtex":"bib","x-boo":"boo","x-c++hdr":["h++","hpp","hxx","hh"],"x-c++src":["c++","cpp","cxx","cc"],"x-component":"htc","x-dsrc":"d","x-diff":"patch","x-haskell":"hs","x-java":"java","x-literate-haskell":"lhs","x-moc":"moc","x-pascal":["p","pas","pp","inc"],"x-pcs-gcd":"gcd","x-python":"py","x-scala":"scala","x-setext":"etx","x-tcl":["tcl","tk"],"x-tex":["tex","ltx","sty","cls"],"x-vcalendar":"vcs","x-vcard":"vcf",n3:"n3","prs.lines.tag":"dsc",sgml:["sgml","sgm"],troff:["t","tr","roff","man","me","ms"],turtle:"ttl","uri-list":["uri","uris","urls"],vcard:"vcard","vnd.curl":"curl","vnd.curl.dcurl":"dcurl","vnd.curl.scurl":"scurl","vnd.curl.mcurl":"mcurl","vnd.dvb.subtitle":"sub","vnd.fly":"fly","vnd.fmi.flexstor":"flx","vnd.graphviz":"gv","vnd.in3d.3dml":"3dml","vnd.in3d.spot":"spot","x-asm":["s","asm"],"x-c":["c","h","dic"],"x-fortran":["f","for","f77","f90"],"x-opml":"opml","x-nfo":"nfo","x-sfv":"sfv","x-uuencode":"uu",webviewhtml:"htt",javascript:"js",json:"json",markdown:["md","markdown","mdown","markdn"],"vnd.wap.si":"si","vnd.wap.sl":"sl"},video:{avif:"avif","3gpp":"3gp",annodex:"axv",dl:"dl",dv:["dif","dv"],fli:"fli",gl:"gl",mpeg:["mpeg","mpg","mpe","m1v","m2v","mp2","mpa","mpv2"],mp4:["mp4","mp4v","mpg4"],quicktime:["qt","mov"],ogg:"ogv","vnd.mpegurl":["mxu","m4u"],"x-flv":"flv","x-la-asf":["lsf","lsx"],"x-mng":"mng","x-ms-asf":["asf","asx","asr"],"x-ms-wm":"wm","x-ms-wmv":"wmv","x-ms-wmx":"wmx","x-ms-wvx":"wvx","x-msvideo":"avi","x-sgi-movie":"movie","x-matroska":["mpv","mkv","mk3d","mks"],"3gpp2":"3g2",h261:"h261",h263:"h263",h264:"h264",jpeg:"jpgv",jpm:["jpm","jpgm"],mj2:["mj2","mjp2"],"vnd.dece.hd":["uvh","uvvh"],"vnd.dece.mobile":["uvm","uvvm"],"vnd.dece.pd":["uvp","uvvp"],"vnd.dece.sd":["uvs","uvvs"],"vnd.dece.video":["uvv","uvvv"],"vnd.dvb.file":"dvb","vnd.fvt":"fvt","vnd.ms-playready.media.pyv":"pyv","vnd.uvvu.mp4":["uvu","uvvu"],"vnd.vivo":"viv",webm:"webm","x-f4v":"f4v","x-m4v":"m4v","x-ms-vob":"vob","x-smv":"smv",mp2t:"ts"},"x-conference":{"x-cooltalk":"ice"},"x-world":{"x-vrml":["vrm","flr","wrz","xaf","xof"]}};(()=>{const t={};for(const e of Object.keys(lb))for(const n of Object.keys(lb[e])){const s=lb[e][n];if(typeof s=="string")t[s]=e+"/"+n;else for(let i=0;i>>1^3988292384:e=e>>>1;ZC[t]=e}class Lg{constructor(e){this.crc=e||-1}append(e){let n=this.crc|0;for(let s=0,i=e.length|0;s>>8^ZC[(n^e[s])&255];this.crc=n}get(){return~this.crc}}class JC extends TransformStream{constructor(){let e;const n=new Lg;super({transform(s,i){n.append(s),i.enqueue(s)},flush(){const s=new Uint8Array(4);new DataView(s.buffer).setUint32(0,n.get()),e.value=s}}),e=this}}function d2e(t){if(typeof TextEncoder>"u"){t=unescape(encodeURIComponent(t));const e=new Uint8Array(t.length);for(let n=0;n0&&e&&(t[n-1]=vs.partial(e,t[n-1]&2147483648>>e-1,1)),t},partial(t,e,n){return t===32?e:(n?e|0:e<<32-t)+t*1099511627776},getPartial(t){return Math.round(t/1099511627776)||32},_shiftRight(t,e,n,s){for(s===void 0&&(s=[]);e>=32;e-=32)s.push(n),n=0;if(e===0)return s.concat(t);for(let o=0;o>>e),n=t[o]<<32-e;const i=t.length?t[t.length-1]:0,r=vs.getPartial(i);return s.push(vs.partial(e+r&31,e+r>32?n:s.pop(),1)),s}},Pg={bytes:{fromBits(t){const n=vs.bitLength(t)/8,s=new Uint8Array(n);let i;for(let r=0;r>>24,i<<=8;return s},toBits(t){const e=[];let n,s=0;for(n=0;n9007199254740991)throw new Error("Cannot hash more than 2^53 - 1 bits");const r=new Uint32Array(n);let o=0;for(let a=e.blockSize+s-(e.blockSize+s&e.blockSize-1);a<=i;a+=e.blockSize)e._block(r.subarray(16*o,16*(o+1))),o+=1;return n.splice(0,16*o),e}finalize(){const t=this;let e=t._buffer;const n=t._h;e=vs.concat(e,[vs.partial(1,1)]);for(let s=e.length+2;s&15;s++)e.push(0);for(e.push(Math.floor(t._length/4294967296)),e.push(t._length|0);e.length;)t._block(e.splice(0,16));return t.reset(),n}_f(t,e,n,s){if(t<=19)return e&n|~e&s;if(t<=39)return e^n^s;if(t<=59)return e&n|e&s|n&s;if(t<=79)return e^n^s}_S(t,e){return e<>>32-t}_block(t){const e=this,n=e._h,s=Array(80);for(let c=0;c<16;c++)s[c]=t[c];let i=n[0],r=n[1],o=n[2],a=n[3],l=n[4];for(let c=0;c<=79;c++){c>=16&&(s[c]=e._S(1,s[c-3]^s[c-8]^s[c-14]^s[c-16]));const u=e._S(5,i)+e._f(c,r,o,a)+l+s[c]+e._key[Math.floor(c/20)]|0;l=a,a=o,o=e._S(30,r),r=i,i=u}n[0]=n[0]+i|0,n[1]=n[1]+r|0,n[2]=n[2]+o|0,n[3]=n[3]+a|0,n[4]=n[4]+l|0}};const eO={};eO.aes=class{constructor(t){const e=this;e._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],e._tables[0][0][0]||e._precompute();const n=e._tables[0][4],s=e._tables[1],i=t.length;let r,o,a,l=1;if(i!==4&&i!==6&&i!==8)throw new Error("invalid aes key size");for(e._key=[o=t.slice(0),a=[]],r=i;r<4*i+28;r++){let c=o[r-1];(r%i===0||i===8&&r%i===4)&&(c=n[c>>>24]<<24^n[c>>16&255]<<16^n[c>>8&255]<<8^n[c&255],r%i===0&&(c=c<<8^c>>>24^l<<24,l=l<<1^(l>>7)*283)),o[r]=o[r-i]^c}for(let c=0;r;c++,r--){const u=o[c&3?r:r-4];r<=4||c<4?a[c]=u:a[c]=s[0][n[u>>>24]]^s[1][n[u>>16&255]]^s[2][n[u>>8&255]]^s[3][n[u&255]]}}encrypt(t){return this._crypt(t,0)}decrypt(t){return this._crypt(t,1)}_precompute(){const t=this._tables[0],e=this._tables[1],n=t[4],s=e[4],i=[],r=[];let o,a,l,c;for(let u=0;u<256;u++)r[(i[u]=u<<1^(u>>7)*283)^u]=u;for(let u=o=0;!n[u];u^=a||1,o=r[o]||1){let d=o^o<<1^o<<2^o<<3^o<<4;d=d>>8^d&255^99,n[u]=d,s[d]=u,c=i[l=i[a=i[u]]];let f=c*16843009^l*65537^a*257^u*16843008,h=i[d]*257^d*16843008;for(let _=0;_<4;_++)t[_][u]=h=h<<24^h>>>8,e[_][d]=f=f<<24^f>>>8}for(let u=0;u<5;u++)t[u]=t[u].slice(0),e[u]=e[u].slice(0)}_crypt(t,e){if(t.length!==4)throw new Error("invalid aes block size");const n=this._key[e],s=n.length/4-2,i=[0,0,0,0],r=this._tables[e],o=r[0],a=r[1],l=r[2],c=r[3],u=r[4];let d=t[0]^n[0],f=t[e?3:1]^n[1],h=t[2]^n[2],_=t[e?1:3]^n[3],p=4,m,b,y;for(let v=0;v>>24]^a[f>>16&255]^l[h>>8&255]^c[_&255]^n[p],b=o[f>>>24]^a[h>>16&255]^l[_>>8&255]^c[d&255]^n[p+1],y=o[h>>>24]^a[_>>16&255]^l[d>>8&255]^c[f&255]^n[p+2],_=o[_>>>24]^a[d>>16&255]^l[f>>8&255]^c[h&255]^n[p+3],p+=4,d=m,f=b,h=y;for(let v=0;v<4;v++)i[e?3&-v:v]=u[d>>>24]<<24^u[f>>16&255]<<16^u[h>>8&255]<<8^u[_&255]^n[p++],m=d,d=f,f=h,h=_,_=m;return i}};const f2e={getRandomValues(t){const e=new Uint32Array(t.buffer),n=s=>{let i=987654321;const r=4294967295;return function(){return i=36969*(i&65535)+(i>>16)&r,s=18e3*(s&65535)+(s>>16)&r,(((i<<16)+s&r)/4294967296+.5)*(Math.random()>.5?1:-1)}};for(let s=0,i;s>24&255)===255){let e=t>>16&255,n=t>>8&255,s=t&255;e===255?(e=0,n===255?(n=0,s===255?s=0:++s):++n):++e,t=0,t+=e<<16,t+=n<<8,t+=s}else t+=1<<24;return t}incCounter(t){(t[0]=this.incWord(t[0]))===0&&(t[1]=this.incWord(t[1]))}calculate(t,e,n){let s;if(!(s=e.length))return[];const i=vs.bitLength(e);for(let r=0;r>5)+1<<2;let r,o,a,l,c;const u=new ArrayBuffer(i),d=new DataView(u);let f=0;const h=vs;for(e=Pg.bytes.toBits(e),c=1;f<(i||1);c++){for(r=o=t.encrypt(h.concat(e,[c])),a=1;ai&&(t=new n().update(t).finalize());for(let r=0;rthis.resolveReady=r),password:e,signed:n,strength:s-1,pending:new Uint8Array})},async transform(r,o){const a=this,{password:l,strength:c,resolveReady:u,ready:d}=a;l?(await T2e(a,c,l,di(r,0,fh[c]+2)),r=di(r,fh[c]+2),i?o.error(new Error(Ix)):u()):await d;const f=new Uint8Array(r.length-Jo-(r.length-Jo)%Xc);o.enqueue(cO(a,r,f,0,Jo,!0))},async flush(r){const{signed:o,ctr:a,hmac:l,pending:c,ready:u}=this;if(l&&a){await u;const d=di(c,0,c.length-Jo),f=di(c,c.length-Jo);let h=new Uint8Array;if(d.length){const _=ph(Sr,d);l.update(_);const p=a.update(_);h=hh(Sr,p)}if(o){const _=di(hh(Sr,l.digest()),0,Jo);for(let p=0;pthis.resolveReady=i),password:e,strength:n-1,pending:new Uint8Array})},async transform(i,r){const o=this,{password:a,strength:l,resolveReady:c,ready:u}=o;let d=new Uint8Array;a?(d=await A2e(o,l,a),c()):await u;const f=new Uint8Array(d.length+i.length-i.length%Xc);f.set(d,0),r.enqueue(cO(o,i,f,d.length,0))},async flush(i){const{ctr:r,hmac:o,pending:a,ready:l}=this;if(o&&r){await l;let c=new Uint8Array;if(a.length){const u=r.update(ph(Sr,a));o.update(u),c=hh(Sr,u)}s.signature=hh(Sr,o.digest()).slice(0,Jo),i.enqueue(Lx(c,s.signature))}}}),s=this}}function cO(t,e,n,s,i,r){const{ctr:o,hmac:a,pending:l}=t,c=e.length-i;l.length&&(e=Lx(l,e),n=R2e(n,c-c%Xc));let u;for(u=0;u<=c-Xc;u+=Xc){const d=ph(Sr,di(e,u,u+Xc));r&&a.update(d);const f=o.update(d);r||a.update(f),n.set(hh(Sr,f),u+s)}return t.pending=di(e,u),n}async function T2e(t,e,n,s){const i=await uO(t,e,n,di(s,0,fh[e])),r=di(s,fh[e]);if(i[0]!=r[0]||i[1]!=r[1])throw new Error(nO)}async function A2e(t,e,n){const s=iO(new Uint8Array(fh[e])),i=await uO(t,e,n,s);return Lx(s,i)}async function uO(t,e,n,s){t.password=null;const i=d2e(n),r=await M2e(p2e,i,_2e,!1,b2e),o=await k2e(Object.assign({salt:s},Gy),r,8*(Qd[e]*2+2)),a=new Uint8Array(o),l=ph(Sr,di(a,0,Qd[e])),c=ph(Sr,di(a,Qd[e],Qd[e]*2)),u=di(a,Qd[e]*2);return Object.assign(t,{keys:{key:l,authentication:c,passwordVerification:u},ctr:new w2e(new v2e(l),Array.from(y2e)),hmac:new x2e(c)}),u}async function M2e(t,e,n,s,i){if(ZA)try{return await qh.importKey(t,e,n,s,i)}catch{return ZA=!1,jl.importKey(e)}else return jl.importKey(e)}async function k2e(t,e,n){if(JA)try{return await qh.deriveBits(t,e,n)}catch{return JA=!1,jl.pbkdf2(e,t.salt,Gy.iterations,n)}else return jl.pbkdf2(e,t.salt,Gy.iterations,n)}function Lx(t,e){let n=t;return t.length+e.length&&(n=new Uint8Array(t.length+e.length),n.set(t,0),n.set(e,t.length)),n}function R2e(t,e){if(e&&e>t.length){const n=t;t=new Uint8Array(e),t.set(n,0)}return t}function di(t,e,n){return t.subarray(e,n)}function hh(t,e){return t.fromBits(e)}function ph(t,e){return t.toBits(e)}const pu=12;class C2e extends TransformStream{constructor({password:e,passwordVerification:n,checkPasswordOnly:s}){super({start(){Object.assign(this,{password:e,passwordVerification:n}),dO(this,e)},transform(i,r){const o=this;if(o.password){const a=QA(o,i.subarray(0,pu));if(o.password=null,a[pu-1]!=o.passwordVerification)throw new Error(nO);i=i.subarray(pu)}s?r.error(new Error(Ix)):r.enqueue(QA(o,i))}})}}class O2e extends TransformStream{constructor({password:e,passwordVerification:n}){super({start(){Object.assign(this,{password:e,passwordVerification:n}),dO(this,e)},transform(s,i){const r=this;let o,a;if(r.password){r.password=null;const l=iO(new Uint8Array(pu));l[pu-1]=r.passwordVerification,o=new Uint8Array(s.length+l.length),o.set(eM(r,l),0),a=pu}else o=new Uint8Array(s.length),a=0;o.set(eM(r,s),a),i.enqueue(o)}})}}function QA(t,e){const n=new Uint8Array(e.length);for(let s=0;s>>24]),i=~t.crcKey2.get(),t.keys=[n,s,i]}function fO(t){const e=t.keys[2]|2;return hO(Math.imul(e,e^1)>>>8)}function hO(t){return t&255}function tM(t){return t&4294967295}const nM="deflate-raw";class I2e extends TransformStream{constructor(e,{chunkSize:n,CompressionStream:s,CompressionStreamNative:i}){super({});const{compressed:r,encrypted:o,useCompressionStream:a,zipCrypto:l,signed:c,level:u}=e,d=this;let f,h,_=pO(super.readable);(!o||l)&&c&&(f=new JC,_=Er(_,f)),r&&(_=gO(_,a,{level:u,chunkSize:n},i,s)),o&&(l?_=Er(_,new O2e(e)):(h=new E2e(e),_=Er(_,h))),mO(d,_,()=>{let p;o&&!l&&(p=h.signature),(!o||l)&&c&&(p=new DataView(f.value.buffer).getUint32(0)),d.signature=p})}}class L2e extends TransformStream{constructor(e,{chunkSize:n,DecompressionStream:s,DecompressionStreamNative:i}){super({});const{zipCrypto:r,encrypted:o,signed:a,signature:l,compressed:c,useCompressionStream:u}=e;let d,f,h=pO(super.readable);o&&(r?h=Er(h,new C2e(e)):(f=new S2e(e),h=Er(h,f))),c&&(h=gO(h,u,{chunkSize:n},i,s)),(!o||r)&&a&&(d=new JC,h=Er(h,d)),mO(this,h,()=>{if((!o||r)&&a){const _=new DataView(d.value.buffer);if(l!=_.getUint32(0,!1))throw new Error(sO)}})}}function pO(t){return Er(t,new TransformStream({transform(e,n){e&&e.length&&n.enqueue(e)}}))}function mO(t,e,n){e=Er(e,new TransformStream({flush:n})),Object.defineProperty(t,"readable",{get(){return e}})}function gO(t,e,n,s,i){try{const r=e&&s?s:i;t=Er(t,new r(nM,n))}catch(r){if(e)t=Er(t,new i(nM,n));else throw r}return t}function Er(t,e){return t.pipeThrough(e)}const P2e="message",D2e="start",F2e="pull",sM="data",N2e="ack",$2e="close",U2e="deflate",_O="inflate";class B2e extends TransformStream{constructor(e,n){super({});const s=this,{codecType:i}=e;let r;i.startsWith(U2e)?r=I2e:i.startsWith(_O)&&(r=L2e);let o=0;const a=new r(e,n),l=super.readable,c=new TransformStream({transform(u,d){u&&u.length&&(o+=u.length,d.enqueue(u))},flush(){const{signature:u}=a;Object.assign(s,{signature:u,size:o})}});Object.defineProperty(s,"readable",{get(){return l.pipeThrough(a).pipeThrough(c)}})}}const G2e=typeof Worker!=Ig;class cb{constructor(e,{readable:n,writable:s},{options:i,config:r,streamOptions:o,useWebWorkers:a,transferStreams:l,scripts:c},u){const{signal:d}=o;return Object.assign(e,{busy:!0,readable:n.pipeThrough(new z2e(n,o,r),{signal:d}),writable:s,options:Object.assign({},i),scripts:c,transferStreams:l,terminate(){const{worker:f,busy:h}=e;f&&!h&&(f.terminate(),e.interface=null)},onTaskFinished(){e.busy=!1,u(e)}}),(a&&G2e?V2e:H2e)(e,r)}}class z2e extends TransformStream{constructor(e,{onstart:n,onprogress:s,size:i,onend:r},{chunkSize:o}){let a=0;super({start(){n&&ub(n,i)},async transform(l,c){a+=l.length,s&&await ub(s,a,i),c.enqueue(l)},flush(){e.size=a,r&&ub(r,a)}},{highWaterMark:1,size:()=>o})}}async function ub(t,...e){try{await t(...e)}catch{}}function H2e(t,e){return{run:()=>W2e(t,e)}}function V2e(t,{baseURL:e,chunkSize:n}){return t.interface||Object.assign(t,{worker:Y2e(t.scripts[0],e,t),interface:{run:()=>j2e(t,{chunkSize:n})}}),t.interface}async function W2e({options:t,readable:e,writable:n,onTaskFinished:s},i){const r=new B2e(t,i);try{await e.pipeThrough(r).pipeTo(n,{preventClose:!0,preventAbort:!0});const{signature:o,size:a}=r;return{signature:o,size:a}}finally{s()}}async function j2e(t,e){let n,s;const i=new Promise((f,h)=>{n=f,s=h});Object.assign(t,{reader:null,writer:null,resolveResult:n,rejectResult:s,result:i});const{readable:r,options:o,scripts:a}=t,{writable:l,closed:c}=q2e(t.writable);zy({type:D2e,scripts:a.slice(1),options:o,config:e,readable:r,writable:l},t)||Object.assign(t,{reader:r.getReader(),writer:l.getWriter()});const d=await i;try{await l.getWriter().close()}catch{}return await c,d}function q2e(t){const e=t.getWriter();let n;const s=new Promise(r=>n=r);return{writable:new WritableStream({async write(r){await e.ready,await e.write(r)},close(){e.releaseLock(),n()},abort(r){return e.abort(r)}}),closed:s}}let iM=!0,rM=!0;function Y2e(t,e,n){const s={type:"module"};let i,r;typeof t==KC&&(t=t());try{i=new URL(t,e)}catch{i=t}if(iM)try{r=new Worker(i)}catch{iM=!1,r=new Worker(i,s)}else r=new Worker(i,s);return r.addEventListener(P2e,o=>K2e(o,n)),r}function zy(t,{worker:e,writer:n,onTaskFinished:s,transferStreams:i}){try{let{value:r,readable:o,writable:a}=t;const l=[];if(r&&(r.byteLength!y.busy);if(m)aM(m),p=new cb(m,t,e,b);else if(Xa.lengthdb.push({resolve:y,stream:t,workerOptions:e}));return p.run();function b(y){if(db.length){const[{resolve:v,stream:x,workerOptions:S}]=db.splice(0,1);v(new cb(y,x,S,b))}else y.worker?(aM(y),Number.isFinite(h)&&h>=0&&(y.terminateTimeout=setTimeout(()=>{Xa=Xa.filter(v=>v!=y),y.terminate()},h))):Xa=Xa.filter(v=>v!=y)}}function aM(t){const{terminateTimeout:e}=t;e&&(clearTimeout(e),t.terminateTimeout=null)}function Z2e(t){const e=()=>URL.createObjectURL(new Blob([`const{Array:e,Object:t,Number:n,Math:r,Error:s,Uint8Array:i,Uint16Array:o,Uint32Array:c,Int32Array:f,Map:a,DataView:l,Promise:u,TextEncoder:w,crypto:h,postMessage:d,TransformStream:p,ReadableStream:y,WritableStream:m,CompressionStream:b,DecompressionStream:g}=self;class k{constructor(e){return class extends p{constructor(t,n){const r=new e(n);super({transform(e,t){t.enqueue(r.append(e))},flush(e){const t=r.flush();t&&e.enqueue(t)}})}}}}const v=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)1&t?t=t>>>1^3988292384:t>>>=1;v[e]=t}class S{constructor(e){this.t=e||-1}append(e){let t=0|this.t;for(let n=0,r=0|e.length;r>n;n++)t=t>>>8^v[255&(t^e[n])];this.t=t}get(){return~this.t}}class z extends p{constructor(){let e;const t=new S;super({transform(e,n){t.append(e),n.enqueue(e)},flush(){const n=new i(4);new l(n.buffer).setUint32(0,t.get()),e.value=n}}),e=this}}const C={concat(e,t){if(0===e.length||0===t.length)return e.concat(t);const n=e[e.length-1],r=C.i(n);return 32===r?e.concat(t):C.o(t,r,0|n,e.slice(0,e.length-1))},l(e){const t=e.length;if(0===t)return 0;const n=e[t-1];return 32*(t-1)+C.i(n)},u(e,t){if(32*e.length0&&t&&(e[n-1]=C.h(t,e[n-1]&2147483648>>t-1,1)),e},h:(e,t,n)=>32===e?t:(n?0|t:t<<32-e)+1099511627776*e,i:e=>r.round(e/1099511627776)||32,o(e,t,n,r){for(void 0===r&&(r=[]);t>=32;t-=32)r.push(n),n=0;if(0===t)return r.concat(e);for(let s=0;s>>t),n=e[s]<<32-t;const s=e.length?e[e.length-1]:0,i=C.i(s);return r.push(C.h(t+i&31,t+i>32?n:r.pop(),1)),r}},x={p:{m(e){const t=C.l(e)/8,n=new i(t);let r;for(let s=0;t>s;s++)0==(3&s)&&(r=e[s/4]),n[s]=r>>>24,r<<=8;return n},g(e){const t=[];let n,r=0;for(n=0;n9007199254740991)throw new s("Cannot hash more than 2^53 - 1 bits");const o=new c(n);let f=0;for(let e=t.blockSize+r-(t.blockSize+r&t.blockSize-1);i>=e;e+=t.blockSize)t.I(o.subarray(16*f,16*(f+1))),f+=1;return n.splice(0,16*f),t}D(){const e=this;let t=e.C;const n=e.S;t=C.concat(t,[C.h(1,1)]);for(let e=t.length+2;15&e;e++)t.push(0);for(t.push(r.floor(e._/4294967296)),t.push(0|e._);t.length;)e.I(t.splice(0,16));return e.reset(),n}V(e,t,n,r){return e>19?e>39?e>59?e>79?void 0:t^n^r:t&n|t&r|n&r:t^n^r:t&n|~t&r}P(e,t){return t<>>32-e}I(t){const n=this,s=n.S,i=e(80);for(let e=0;16>e;e++)i[e]=t[e];let o=s[0],c=s[1],f=s[2],a=s[3],l=s[4];for(let e=0;79>=e;e++){16>e||(i[e]=n.P(1,i[e-3]^i[e-8]^i[e-14]^i[e-16]));const t=n.P(5,o)+n.V(e,c,f,a)+l+i[e]+n.v[r.floor(e/20)]|0;l=a,a=f,f=n.P(30,c),c=o,o=t}s[0]=s[0]+o|0,s[1]=s[1]+c|0,s[2]=s[2]+f|0,s[3]=s[3]+a|0,s[4]=s[4]+l|0}},A={getRandomValues(e){const t=new c(e.buffer),n=e=>{let t=987654321;const n=4294967295;return()=>(t=36969*(65535&t)+(t>>16)&n,(((t<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n)/4294967296+.5)*(r.random()>.5?1:-1))};for(let s,i=0;inew I.R(x.p.g(e)),B(e,t,n,r){if(n=n||1e4,0>r||0>n)throw new s("invalid params to pbkdf2");const i=1+(r>>5)<<2;let o,c,f,a,u;const w=new ArrayBuffer(i),h=new l(w);let d=0;const p=C;for(t=x.p.g(t),u=1;(i||1)>d;u++){for(o=c=e.encrypt(p.concat(t,[u])),f=1;n>f;f++)for(c=e.encrypt(c),a=0;ad&&fs&&(e=(new n).update(e).D());for(let t=0;s>t;t++)r[0][t]=909522486^e[t],r[1][t]=1549556828^e[t];t.U[0].update(r[0]),t.U[1].update(r[1]),t.K=new n(t.U[0])}reset(){const e=this;e.K=new e.M(e.U[0]),e.N=!1}update(e){this.N=!0,this.K.update(e)}digest(){const e=this,t=e.K.D(),n=new e.M(e.U[1]).update(t).D();return e.reset(),n}encrypt(e){if(this.N)throw new s("encrypt on already updated hmac called!");return this.update(e),this.digest(e)}}},D=void 0!==h&&"function"==typeof h.getRandomValues,V="Invalid password",P="Invalid signature",R="zipjs-abort-check-password";function B(e){return D?h.getRandomValues(e):A.getRandomValues(e)}const E=16,M={name:"PBKDF2"},U=t.assign({hash:{name:"HMAC"}},M),K=t.assign({iterations:1e3,hash:{name:"SHA-1"}},M),N=["deriveBits"],O=[8,12,16],T=[16,24,32],W=10,j=[0,0,0,0],H="undefined",L="function",F=typeof h!=H,q=F&&h.subtle,G=F&&typeof q!=H,J=x.p,Q=class{constructor(e){const t=this;t.O=[[[],[],[],[],[]],[[],[],[],[],[]]],t.O[0][0][0]||t.T();const n=t.O[0][4],r=t.O[1],i=e.length;let o,c,f,a=1;if(4!==i&&6!==i&&8!==i)throw new s("invalid aes key size");for(t.v=[c=e.slice(0),f=[]],o=i;4*i+28>o;o++){let e=c[o-1];(o%i==0||8===i&&o%i==4)&&(e=n[e>>>24]<<24^n[e>>16&255]<<16^n[e>>8&255]<<8^n[255&e],o%i==0&&(e=e<<8^e>>>24^a<<24,a=a<<1^283*(a>>7))),c[o]=c[o-i]^e}for(let e=0;o;e++,o--){const t=c[3&e?o:o-4];f[e]=4>=o||4>e?t:r[0][n[t>>>24]]^r[1][n[t>>16&255]]^r[2][n[t>>8&255]]^r[3][n[255&t]]}}encrypt(e){return this.W(e,0)}decrypt(e){return this.W(e,1)}T(){const e=this.O[0],t=this.O[1],n=e[4],r=t[4],s=[],i=[];let o,c,f,a;for(let e=0;256>e;e++)i[(s[e]=e<<1^283*(e>>7))^e]=e;for(let l=o=0;!n[l];l^=c||1,o=i[o]||1){let i=o^o<<1^o<<2^o<<3^o<<4;i=i>>8^255&i^99,n[l]=i,r[i]=l,a=s[f=s[c=s[l]]];let u=16843009*a^65537*f^257*c^16843008*l,w=257*s[i]^16843008*i;for(let n=0;4>n;n++)e[n][l]=w=w<<24^w>>>8,t[n][i]=u=u<<24^u>>>8}for(let n=0;5>n;n++)e[n]=e[n].slice(0),t[n]=t[n].slice(0)}W(e,t){if(4!==e.length)throw new s("invalid aes block size");const n=this.v[t],r=n.length/4-2,i=[0,0,0,0],o=this.O[t],c=o[0],f=o[1],a=o[2],l=o[3],u=o[4];let w,h,d,p=e[0]^n[0],y=e[t?3:1]^n[1],m=e[2]^n[2],b=e[t?1:3]^n[3],g=4;for(let e=0;r>e;e++)w=c[p>>>24]^f[y>>16&255]^a[m>>8&255]^l[255&b]^n[g],h=c[y>>>24]^f[m>>16&255]^a[b>>8&255]^l[255&p]^n[g+1],d=c[m>>>24]^f[b>>16&255]^a[p>>8&255]^l[255&y]^n[g+2],b=c[b>>>24]^f[p>>16&255]^a[y>>8&255]^l[255&m]^n[g+3],g+=4,p=w,y=h,m=d;for(let e=0;4>e;e++)i[t?3&-e:e]=u[p>>>24]<<24^u[y>>16&255]<<16^u[m>>8&255]<<8^u[255&b]^n[g++],w=p,p=y,y=m,m=b,b=w;return i}},X=class{constructor(e,t){this.j=e,this.H=t,this.L=t}reset(){this.L=this.H}update(e){return this.F(this.j,e,this.L)}q(e){if(255==(e>>24&255)){let t=e>>16&255,n=e>>8&255,r=255&e;255===t?(t=0,255===n?(n=0,255===r?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}else e+=1<<24;return e}G(e){0===(e[0]=this.q(e[0]))&&(e[1]=this.q(e[1]))}F(e,t,n){let r;if(!(r=t.length))return[];const s=C.l(t);for(let s=0;r>s;s+=4){this.G(n);const r=e.encrypt(n);t[s]^=r[0],t[s+1]^=r[1],t[s+2]^=r[2],t[s+3]^=r[3]}return C.u(t,s)}},Y=I.R;let Z=F&&G&&typeof q.importKey==L,$=F&&G&&typeof q.deriveBits==L;class ee extends p{constructor({password:e,signed:n,encryptionStrength:r,checkPasswordOnly:o}){super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:e,signed:n,X:r-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:c,J:f,ready:a}=n;r?(await(async(e,t,n,r)=>{const i=await re(e,t,n,ie(r,0,O[t])),o=ie(r,O[t]);if(i[0]!=o[0]||i[1]!=o[1])throw new s(V)})(n,c,r,ie(e,0,O[c]+2)),e=ie(e,O[c]+2),o?t.error(new s(R)):f()):await a;const l=new i(e.length-W-(e.length-W)%E);t.enqueue(ne(n,e,l,0,W,!0))},async flush(e){const{signed:t,Y:n,Z:r,pending:o,ready:c}=this;if(r&&n){await c;const f=ie(o,0,o.length-W),a=ie(o,o.length-W);let l=new i;if(f.length){const e=ce(J,f);r.update(e);const t=n.update(e);l=oe(J,t)}if(t){const e=ie(oe(J,r.digest()),0,W);for(let t=0;W>t;t++)if(e[t]!=a[t])throw new s(P)}e.enqueue(l)}}})}}class te extends p{constructor({password:e,encryptionStrength:n}){let r;super({start(){t.assign(this,{ready:new u((e=>this.J=e)),password:e,X:n-1,pending:new i})},async transform(e,t){const n=this,{password:r,X:s,J:o,ready:c}=n;let f=new i;r?(f=await(async(e,t,n)=>{const r=B(new i(O[t]));return se(r,await re(e,t,n,r))})(n,s,r),o()):await c;const a=new i(f.length+e.length-e.length%E);a.set(f,0),t.enqueue(ne(n,e,a,f.length,0))},async flush(e){const{Y:t,Z:n,pending:s,ready:o}=this;if(n&&t){await o;let c=new i;if(s.length){const e=t.update(ce(J,s));n.update(e),c=oe(J,e)}r.signature=oe(J,n.digest()).slice(0,W),e.enqueue(se(c,r.signature))}}}),r=this}}function ne(e,t,n,r,s,o){const{Y:c,Z:f,pending:a}=e,l=t.length-s;let u;for(a.length&&(t=se(a,t),n=((e,t)=>{if(t&&t>e.length){const n=e;(e=new i(t)).set(n,0)}return e})(n,l-l%E)),u=0;l-E>=u;u+=E){const e=ce(J,ie(t,u,u+E));o&&f.update(e);const s=c.update(e);o||f.update(s),n.set(oe(J,s),u+r)}return e.pending=ie(t,u),n}async function re(n,r,s,o){n.password=null;const c=(e=>{if(void 0===w){const t=new i((e=unescape(encodeURIComponent(e))).length);for(let n=0;n{if(!Z)return I.importKey(t);try{return await q.importKey("raw",t,n,!1,s)}catch(e){return Z=!1,I.importKey(t)}})(0,c,U,0,N),a=await(async(e,t,n)=>{if(!$)return I.B(t,e.salt,K.iterations,n);try{return await q.deriveBits(e,t,n)}catch(r){return $=!1,I.B(t,e.salt,K.iterations,n)}})(t.assign({salt:o},K),f,8*(2*T[r]+2)),l=new i(a),u=ce(J,ie(l,0,T[r])),h=ce(J,ie(l,T[r],2*T[r])),d=ie(l,2*T[r]);return t.assign(n,{keys:{key:u,$:h,passwordVerification:d},Y:new X(new Q(u),e.from(j)),Z:new Y(h)}),d}function se(e,t){let n=e;return e.length+t.length&&(n=new i(e.length+t.length),n.set(e,0),n.set(t,e.length)),n}function ie(e,t,n){return e.subarray(t,n)}function oe(e,t){return e.m(t)}function ce(e,t){return e.g(t)}class fe extends p{constructor({password:e,passwordVerification:n,checkPasswordOnly:r}){super({start(){t.assign(this,{password:e,passwordVerification:n}),we(this,e)},transform(e,t){const n=this;if(n.password){const t=le(n,e.subarray(0,12));if(n.password=null,t[11]!=n.passwordVerification)throw new s(V);e=e.subarray(12)}r?t.error(new s(R)):t.enqueue(le(n,e))}})}}class ae extends p{constructor({password:e,passwordVerification:n}){super({start(){t.assign(this,{password:e,passwordVerification:n}),we(this,e)},transform(e,t){const n=this;let r,s;if(n.password){n.password=null;const t=B(new i(12));t[11]=n.passwordVerification,r=new i(e.length+t.length),r.set(ue(n,t),0),s=12}else r=new i(e.length),s=0;r.set(ue(n,e),s),t.enqueue(r)}})}}function le(e,t){const n=new i(t.length);for(let r=0;r>>24]),i=~e.te.get(),e.keys=[n,s,i]}function de(e){const t=2|e.keys[2];return pe(r.imul(t,1^t)>>>8)}function pe(e){return 255&e}function ye(e){return 4294967295&e}const me="deflate-raw";class be extends p{constructor(e,{chunkSize:t,CompressionStream:n,CompressionStreamNative:r}){super({});const{compressed:s,encrypted:i,useCompressionStream:o,zipCrypto:c,signed:f,level:a}=e,u=this;let w,h,d=ke(super.readable);i&&!c||!f||(w=new z,d=ze(d,w)),s&&(d=Se(d,o,{level:a,chunkSize:t},r,n)),i&&(c?d=ze(d,new ae(e)):(h=new te(e),d=ze(d,h))),ve(u,d,(()=>{let e;i&&!c&&(e=h.signature),i&&!c||!f||(e=new l(w.value.buffer).getUint32(0)),u.signature=e}))}}class ge extends p{constructor(e,{chunkSize:t,DecompressionStream:n,DecompressionStreamNative:r}){super({});const{zipCrypto:i,encrypted:o,signed:c,signature:f,compressed:a,useCompressionStream:u}=e;let w,h,d=ke(super.readable);o&&(i?d=ze(d,new fe(e)):(h=new ee(e),d=ze(d,h))),a&&(d=Se(d,u,{chunkSize:t},r,n)),o&&!i||!c||(w=new z,d=ze(d,w)),ve(this,d,(()=>{if((!o||i)&&c){const e=new l(w.value.buffer);if(f!=e.getUint32(0,!1))throw new s(P)}}))}}function ke(e){return ze(e,new p({transform(e,t){e&&e.length&&t.enqueue(e)}}))}function ve(e,n,r){n=ze(n,new p({flush:r})),t.defineProperty(e,"readable",{get:()=>n})}function Se(e,t,n,r,s){try{e=ze(e,new(t&&r?r:s)(me,n))}catch(r){if(!t)throw r;e=ze(e,new s(me,n))}return e}function ze(e,t){return e.pipeThrough(t)}const Ce="data";class xe extends p{constructor(e,n){super({});const r=this,{codecType:s}=e;let i;s.startsWith("deflate")?i=be:s.startsWith("inflate")&&(i=ge);let o=0;const c=new i(e,n),f=super.readable,a=new p({transform(e,t){e&&e.length&&(o+=e.length,t.enqueue(e))},flush(){const{signature:e}=c;t.assign(r,{signature:e,size:o})}});t.defineProperty(r,"readable",{get:()=>f.pipeThrough(c).pipeThrough(a)})}}const _e=new a,Ae=new a;let Ie=0;async function De(e){try{const{options:t,scripts:r,config:s}=e;r&&r.length&&importScripts.apply(void 0,r),self.initCodec&&self.initCodec(),s.CompressionStreamNative=self.CompressionStream,s.DecompressionStreamNative=self.DecompressionStream,self.Deflate&&(s.CompressionStream=new k(self.Deflate)),self.Inflate&&(s.DecompressionStream=new k(self.Inflate));const i={highWaterMark:1,size:()=>s.chunkSize},o=e.readable||new y({async pull(e){const t=new u((e=>_e.set(Ie,e)));Ve({type:"pull",messageId:Ie}),Ie=(Ie+1)%n.MAX_SAFE_INTEGER;const{value:r,done:s}=await t;e.enqueue(r),s&&e.close()}},i),c=e.writable||new m({async write(e){let t;const r=new u((e=>t=e));Ae.set(Ie,t),Ve({type:Ce,value:e,messageId:Ie}),Ie=(Ie+1)%n.MAX_SAFE_INTEGER,await r}},i),f=new xe(t,s);await o.pipeThrough(f).pipeTo(c,{preventClose:!0,preventAbort:!0});try{await c.getWriter().close()}catch(e){}const{signature:a,size:l}=f;Ve({type:"close",result:{signature:a,size:l}})}catch(e){Pe(e)}}function Ve(e){let{value:t}=e;if(t)if(t.length)try{t=new i(t),e.value=t.buffer,d(e,[e.value])}catch(t){d(e)}else d(e);else d(e)}function Pe(e=new s("Unknown error")){const{message:t,stack:n,code:r,name:i}=e;d({error:{message:t,stack:n,code:r,name:i}})}addEventListener("message",(({data:e})=>{const{type:t,messageId:n,value:r,done:s}=e;try{if("start"==t&&De(e),t==Ce){const e=_e.get(n);_e.delete(n),e({value:new i(r),done:s})}if("ack"==t){const e=Ae.get(n);Ae.delete(n),e()}}catch(e){Pe(e)}}));const Re=-2;function Be(t){return Ee(t.map((([t,n])=>new e(t).fill(n,0,t))))}function Ee(t){return t.reduce(((t,n)=>t.concat(e.isArray(n)?Ee(n):n)),[])}const Me=[0,1,2,3].concat(...Be([[2,4],[2,5],[4,6],[4,7],[8,8],[8,9],[16,10],[16,11],[32,12],[32,13],[64,14],[64,15],[2,0],[1,16],[1,17],[2,18],[2,19],[4,20],[4,21],[8,22],[8,23],[16,24],[16,25],[32,26],[32,27],[64,28],[64,29]]));function Ue(){const e=this;function t(e,t){let n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.ne=n=>{const s=e.re,i=e.ie.se,o=e.ie.oe;let c,f,a,l=-1;for(n.ce=0,n.fe=573,c=0;o>c;c++)0!==s[2*c]?(n.ae[++n.ce]=l=c,n.le[c]=0):s[2*c+1]=0;for(;2>n.ce;)a=n.ae[++n.ce]=2>l?++l:0,s[2*a]=1,n.le[a]=0,n.ue--,i&&(n.we-=i[2*a+1]);for(e.he=l,c=r.floor(n.ce/2);c>=1;c--)n.de(s,c);a=o;do{c=n.ae[1],n.ae[1]=n.ae[n.ce--],n.de(s,1),f=n.ae[1],n.ae[--n.fe]=c,n.ae[--n.fe]=f,s[2*a]=s[2*c]+s[2*f],n.le[a]=r.max(n.le[c],n.le[f])+1,s[2*c+1]=s[2*f+1]=a,n.ae[1]=a++,n.de(s,1)}while(n.ce>=2);n.ae[--n.fe]=n.ae[1],(t=>{const n=e.re,r=e.ie.se,s=e.ie.pe,i=e.ie.ye,o=e.ie.me;let c,f,a,l,u,w,h=0;for(l=0;15>=l;l++)t.be[l]=0;for(n[2*t.ae[t.fe]+1]=0,c=t.fe+1;573>c;c++)f=t.ae[c],l=n[2*n[2*f+1]+1]+1,l>o&&(l=o,h++),n[2*f+1]=l,f>e.he||(t.be[l]++,u=0,i>f||(u=s[f-i]),w=n[2*f],t.ue+=w*(l+u),r&&(t.we+=w*(r[2*f+1]+u)));if(0!==h){do{for(l=o-1;0===t.be[l];)l--;t.be[l]--,t.be[l+1]+=2,t.be[o]--,h-=2}while(h>0);for(l=o;0!==l;l--)for(f=t.be[l];0!==f;)a=t.ae[--c],a>e.he||(n[2*a+1]!=l&&(t.ue+=(l-n[2*a+1])*n[2*a],n[2*a+1]=l),f--)}})(n),((e,n,r)=>{const s=[];let i,o,c,f=0;for(i=1;15>=i;i++)s[i]=f=f+r[i-1]<<1;for(o=0;n>=o;o++)c=e[2*o+1],0!==c&&(e[2*o]=t(s[c]++,c))})(s,e.he,n.be)}}function Ke(e,t,n,r,s){const i=this;i.se=e,i.pe=t,i.ye=n,i.oe=r,i.me=s}Ue.ge=[0,1,2,3,4,5,6,7].concat(...Be([[2,8],[2,9],[2,10],[2,11],[4,12],[4,13],[4,14],[4,15],[8,16],[8,17],[8,18],[8,19],[16,20],[16,21],[16,22],[16,23],[32,24],[32,25],[32,26],[31,27],[1,28]])),Ue.ke=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],Ue.ve=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],Ue.Se=e=>256>e?Me[e]:Me[256+(e>>>7)],Ue.ze=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],Ue.Ce=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],Ue.xe=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],Ue._e=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];const Ne=Be([[144,8],[112,9],[24,7],[8,8]]);Ke.Ae=Ee([12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,19,275,147,403,83,339,211,467,51,307,179,435,115,371,243,499,11,267,139,395,75,331,203,459,43,299,171,427,107,363,235,491,27,283,155,411,91,347,219,475,59,315,187,443,123,379,251,507,7,263,135,391,71,327,199,455,39,295,167,423,103,359,231,487,23,279,151,407,87,343,215,471,55,311,183,439,119,375,247,503,15,271,143,399,79,335,207,463,47,303,175,431,111,367,239,495,31,287,159,415,95,351,223,479,63,319,191,447,127,383,255,511,0,64,32,96,16,80,48,112,8,72,40,104,24,88,56,120,4,68,36,100,20,84,52,116,3,131,67,195,35,163,99,227].map(((e,t)=>[e,Ne[t]])));const Oe=Be([[30,5]]);function Te(e,t,n,r,s){const i=this;i.Ie=e,i.De=t,i.Ve=n,i.Pe=r,i.Re=s}Ke.Be=Ee([0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23].map(((e,t)=>[e,Oe[t]]))),Ke.Ee=new Ke(Ke.Ae,Ue.ze,257,286,15),Ke.Me=new Ke(Ke.Be,Ue.Ce,0,30,15),Ke.Ue=new Ke(null,Ue.xe,0,19,7);const We=[new Te(0,0,0,0,0),new Te(4,4,8,4,1),new Te(4,5,16,8,1),new Te(4,6,32,32,1),new Te(4,4,16,16,2),new Te(8,16,32,32,2),new Te(8,16,128,128,2),new Te(8,32,128,256,2),new Te(32,128,258,1024,2),new Te(32,258,258,4096,2)],je=["need dictionary","stream end","","","stream error","data error","","buffer error","",""],He=113,Le=666,Fe=262;function qe(e,t,n,r){const s=e[2*t],i=e[2*n];return i>s||s==i&&r[t]<=r[n]}function Ge(){const e=this;let t,n,s,c,f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z,C,x,_,A,I,D,V,P,R,B,E,M,U;const K=new Ue,N=new Ue,O=new Ue;let T,W,j,H,L,F;function q(){let t;for(t=0;286>t;t++)E[2*t]=0;for(t=0;30>t;t++)M[2*t]=0;for(t=0;19>t;t++)U[2*t]=0;E[512]=1,e.ue=e.we=0,W=j=0}function G(e,t){let n,r=-1,s=e[1],i=0,o=7,c=4;0===s&&(o=138,c=3),e[2*(t+1)+1]=65535;for(let f=0;t>=f;f++)n=s,s=e[2*(f+1)+1],++ii?U[2*n]+=i:0!==n?(n!=r&&U[2*n]++,U[32]++):i>10?U[36]++:U[34]++,i=0,r=n,0===s?(o=138,c=3):n==s?(o=6,c=3):(o=7,c=4))}function J(t){e.Ke[e.pending++]=t}function Q(e){J(255&e),J(e>>>8&255)}function X(e,t){let n;const r=t;F>16-r?(n=e,L|=n<>>16-F,F+=r-16):(L|=e<=n;n++)if(r=i,i=e[2*(n+1)+1],++o>=c||r!=i){if(f>o)do{Y(r,U)}while(0!=--o);else 0!==r?(r!=s&&(Y(r,U),o--),Y(16,U),X(o-3,2)):o>10?(Y(18,U),X(o-11,7)):(Y(17,U),X(o-3,3));o=0,s=r,0===i?(c=138,f=3):r==i?(c=6,f=3):(c=7,f=4)}}function $(){16==F?(Q(L),L=0,F=0):8>F||(J(255&L),L>>>=8,F-=8)}function ee(t,n){let s,i,o;if(e.Ne[W]=t,e.Oe[W]=255&n,W++,0===t?E[2*n]++:(j++,t--,E[2*(Ue.ge[n]+256+1)]++,M[2*Ue.Se(t)]++),0==(8191&W)&&V>2){for(s=8*W,i=C-k,o=0;30>o;o++)s+=M[2*o]*(5+Ue.Ce[o]);if(s>>>=3,jc);Y(256,t),H=t[513]}function ne(){F>8?Q(L):F>0&&J(255&L),L=0,F=0}function re(t,n,r){X(0+(r?1:0),3),((t,n)=>{ne(),H=8,Q(n),Q(~n),e.Ke.set(u.subarray(t,t+n),e.pending),e.pending+=n})(t,n)}function se(n){((t,n,r)=>{let s,i,o=0;V>0?(K.ne(e),N.ne(e),o=(()=>{let t;for(G(E,K.he),G(M,N.he),O.ne(e),t=18;t>=3&&0===U[2*Ue._e[t]+1];t--);return e.ue+=14+3*(t+1),t})(),s=e.ue+3+7>>>3,i=e.we+3+7>>>3,i>s||(s=i)):s=i=n+5,n+4>s||-1==t?i==s?(X(2+(r?1:0),3),te(Ke.Ae,Ke.Be)):(X(4+(r?1:0),3),((e,t,n)=>{let r;for(X(e-257,5),X(t-1,5),X(n-4,4),r=0;n>r;r++)X(U[2*Ue._e[r]+1],3);Z(E,e-1),Z(M,t-1)})(K.he+1,N.he+1,o+1),te(E,M)):re(t,n,r),q(),r&&ne()})(0>k?-1:k,C-k,n),k=C,t.Te()}function ie(){let e,n,r,s;do{if(s=w-_-C,0===s&&0===C&&0===_)s=f;else if(-1==s)s--;else if(C>=f+f-Fe){u.set(u.subarray(f,f+f),0),x-=f,C-=f,k-=f,e=y,r=e;do{n=65535&d[--r],d[r]=f>n?0:n-f}while(0!=--e);e=f,r=e;do{n=65535&h[--r],h[r]=f>n?0:n-f}while(0!=--e);s+=f}if(0===t.We)return;e=t.je(u,C+_,s),_+=e,3>_||(p=255&u[C],p=(p<_&&0!==t.We)}function oe(e){let t,n,r=I,s=C,i=A;const o=C>f-Fe?C-(f-Fe):0;let c=B;const a=l,w=C+258;let d=u[s+i-1],p=u[s+i];R>A||(r>>=2),c>_&&(c=_);do{if(t=e,u[t+i]==p&&u[t+i-1]==d&&u[t]==u[s]&&u[++t]==u[s+1]){s+=2,t++;do{}while(u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&u[++s]==u[++t]&&w>s);if(n=258-(w-s),s=w-258,n>i){if(x=e,i=n,n>=c)break;d=u[s+i-1],p=u[s+i]}}}while((e=65535&h[e&a])>o&&0!=--r);return i>_?_:i}e.le=[],e.be=[],e.ae=[],E=[],M=[],U=[],e.de=(t,n)=>{const r=e.ae,s=r[n];let i=n<<1;for(;i<=e.ce&&(i(W||(W=8),j||(j=8),G||(G=0),t.Le=null,-1==S&&(S=6),1>j||j>9||8!=W||9>x||x>15||0>S||S>9||0>G||G>2?Re:(t.Fe=e,a=x,f=1<(t.qe=t.Ge=0,t.Le=null,e.pending=0,e.Je=0,n=He,c=0,K.re=E,K.ie=Ke.Ee,N.re=M,N.ie=Ke.Me,O.re=U,O.ie=Ke.Ue,L=0,F=0,H=8,q(),(()=>{w=2*f,d[y-1]=0;for(let e=0;y-1>e;e++)d[e]=0;D=We[V].De,R=We[V].Ie,B=We[V].Ve,I=We[V].Pe,C=0,k=0,_=0,v=A=2,z=0,p=0})(),0))(t))),e.Qe=()=>42!=n&&n!=He&&n!=Le?Re:(e.Oe=null,e.Ne=null,e.Ke=null,d=null,h=null,u=null,e.Fe=null,n==He?-3:0),e.Xe=(e,t,n)=>{let r=0;return-1==t&&(t=6),0>t||t>9||0>n||n>2?Re:(We[V].Re!=We[t].Re&&0!==e.qe&&(r=e.Ye(1)),V!=t&&(V=t,D=We[V].De,R=We[V].Ie,B=We[V].Ve,I=We[V].Pe),P=n,r)},e.Ze=(e,t,r)=>{let s,i=r,o=0;if(!t||42!=n)return Re;if(3>i)return 0;for(i>f-Fe&&(i=f-Fe,o=r-i),u.set(t.subarray(o,o+i),0),C=i,k=i,p=255&u[0],p=(p<=s;s++)p=(p<{let o,w,m,I,R;if(i>4||0>i)return Re;if(!r.$e||!r.et&&0!==r.We||n==Le&&4!=i)return r.Le=je[4],Re;if(0===r.tt)return r.Le=je[7],-5;var B;if(t=r,I=c,c=i,42==n&&(w=8+(a-8<<4)<<8,m=(V-1&255)>>1,m>3&&(m=3),w|=m<<6,0!==C&&(w|=32),w+=31-w%31,n=He,J((B=w)>>8&255),J(255&B)),0!==e.pending){if(t.Te(),0===t.tt)return c=-1,0}else if(0===t.We&&I>=i&&4!=i)return t.Le=je[7],-5;if(n==Le&&0!==t.We)return r.Le=je[7],-5;if(0!==t.We||0!==_||0!=i&&n!=Le){switch(R=-1,We[V].Re){case 0:R=(e=>{let n,r=65535;for(r>s-5&&(r=s-5);;){if(1>=_){if(ie(),0===_&&0==e)return 0;if(0===_)break}if(C+=_,_=0,n=k+r,(0===C||C>=n)&&(_=C-n,C=n,se(!1),0===t.tt))return 0;if(C-k>=f-Fe&&(se(!1),0===t.tt))return 0}return se(4==e),0===t.tt?4==e?2:0:4==e?3:1})(i);break;case 1:R=(e=>{let n,r=0;for(;;){if(Fe>_){if(ie(),Fe>_&&0==e)return 0;if(0===_)break}if(3>_||(p=(p<f-Fe||2!=P&&(v=oe(r)),3>v)n=ee(0,255&u[C]),_--,C++;else if(n=ee(C-x,v-3),_-=v,v>D||3>_)C+=v,v=0,p=255&u[C],p=(p<{let n,r,s=0;for(;;){if(Fe>_){if(ie(),Fe>_&&0==e)return 0;if(0===_)break}if(3>_||(p=(p<A&&f-Fe>=(C-s&65535)&&(2!=P&&(v=oe(s)),5>=v&&(1==P||3==v&&C-x>4096)&&(v=2)),3>A||v>A)if(0!==z){if(n=ee(0,255&u[C-1]),n&&se(!1),C++,_--,0===t.tt)return 0}else z=1,C++,_--;else{r=C+_-3,n=ee(C-1-S,A-3),_-=A-1,A-=2;do{++C>r||(p=(p<1+H+10-F&&(X(2,3),Y(256,Ke.Ae),$()),H=7;else if(re(0,0,!1),3==i)for(o=0;y>o;o++)d[o]=0;if(t.Te(),0===t.tt)return c=-1,0}}return 4!=i?0:1}}function Je(){const e=this;e.nt=0,e.rt=0,e.We=0,e.qe=0,e.tt=0,e.Ge=0}function Qe(e){const t=new Je,n=(o=e&&e.chunkSize?e.chunkSize:65536)+5*(r.floor(o/16383)+1);var o;const c=new i(n);let f=e?e.level:-1;void 0===f&&(f=-1),t.He(f),t.$e=c,this.append=(e,r)=>{let o,f,a=0,l=0,u=0;const w=[];if(e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,o=t.Ye(0),0!=o)throw new s("deflating: "+t.Le);t.rt&&(t.rt==n?w.push(new i(c)):w.push(c.subarray(0,t.rt))),u+=t.rt,r&&t.nt>0&&t.nt!=a&&(r(t.nt),a=t.nt)}while(t.We>0||0===t.tt);return w.length>1?(f=new i(u),w.forEach((e=>{f.set(e,l),l+=e.length}))):f=w[0]?new i(w[0]):new i,f}},this.flush=()=>{let e,r,o=0,f=0;const a=[];do{if(t.rt=0,t.tt=n,e=t.Ye(4),1!=e&&0!=e)throw new s("deflating: "+t.Le);n-t.tt>0&&a.push(c.slice(0,t.rt)),f+=t.rt}while(t.We>0||0===t.tt);return t.Qe(),r=new i(f),a.forEach((e=>{r.set(e,o),o+=e.length})),r}}Je.prototype={He(e,t){const n=this;return n.Fe=new Ge,t||(t=15),n.Fe.He(n,e,t)},Ye(e){const t=this;return t.Fe?t.Fe.Ye(t,e):Re},Qe(){const e=this;if(!e.Fe)return Re;const t=e.Fe.Qe();return e.Fe=null,t},Xe(e,t){const n=this;return n.Fe?n.Fe.Xe(n,e,t):Re},Ze(e,t){const n=this;return n.Fe?n.Fe.Ze(n,e,t):Re},je(e,t,n){const r=this;let s=r.We;return s>n&&(s=n),0===s?0:(r.We-=s,e.set(r.et.subarray(r.nt,r.nt+s),t),r.nt+=s,r.qe+=s,s)},Te(){const e=this;let t=e.Fe.pending;t>e.tt&&(t=e.tt),0!==t&&(e.$e.set(e.Fe.Ke.subarray(e.Fe.Je,e.Fe.Je+t),e.rt),e.rt+=t,e.Fe.Je+=t,e.Ge+=t,e.tt-=t,e.Fe.pending-=t,0===e.Fe.pending&&(e.Fe.Je=0))}};const Xe=-2,Ye=-3,Ze=-5,$e=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],et=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],tt=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],nt=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],rt=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],st=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],it=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function ot(){let e,t,n,r,s,i;function o(e,t,o,c,f,a,l,u,w,h,d){let p,y,m,b,g,k,v,S,z,C,x,_,A,I,D;C=0,g=o;do{n[e[t+C]]++,C++,g--}while(0!==g);if(n[0]==o)return l[0]=-1,u[0]=0,0;for(S=u[0],k=1;15>=k&&0===n[k];k++);for(v=k,k>S&&(S=k),g=15;0!==g&&0===n[g];g--);for(m=g,S>g&&(S=g),u[0]=S,I=1<k;k++,I<<=1)if(0>(I-=n[k]))return Ye;if(0>(I-=n[g]))return Ye;for(n[g]+=I,i[1]=k=0,C=1,A=2;0!=--g;)i[A]=k+=n[C],A++,C++;g=0,C=0;do{0!==(k=e[t+C])&&(d[i[k]++]=g),C++}while(++g=v;v++)for(p=n[v];0!=p--;){for(;v>_+S;){if(b++,_+=S,D=m-_,D=D>S?S:D,(y=1<<(k=v-_))>p+1&&(y-=p+1,A=v,D>k))for(;++kn[++A];)y-=n[A];if(D=1<1440)return Ye;s[b]=x=h[0],h[0]+=D,0!==b?(i[b]=g,r[0]=k,r[1]=S,k=g>>>_-S,r[2]=x-s[b-1]-k,w.set(r,3*(s[b-1]+k))):l[0]=x}for(r[1]=v-_,o>C?d[C]d[C]?0:96,r[2]=d[C++]):(r[0]=a[d[C]-c]+16+64,r[2]=f[d[C++]-c]):r[0]=192,y=1<>>_;D>k;k+=y)w.set(r,3*(x+k));for(k=1<>>=1)g^=k;for(g^=k,z=(1<<_)-1;(g&z)!=i[b];)b--,_-=S,z=(1<<_)-1}return 0!==I&&1!=m?Ze:0}function c(o){let c;for(e||(e=[],t=[],n=new f(16),r=[],s=new f(15),i=new f(16)),t.lengthc;c++)t[c]=0;for(c=0;16>c;c++)n[c]=0;for(c=0;3>c;c++)r[c]=0;s.set(n.subarray(0,15),0),i.set(n.subarray(0,16),0)}this.st=(n,r,s,i,f)=>{let a;return c(19),e[0]=0,a=o(n,0,19,19,null,null,s,r,i,e,t),a==Ye?f.Le="oversubscribed dynamic bit lengths tree":a!=Ze&&0!==r[0]||(f.Le="incomplete dynamic bit lengths tree",a=Ye),a},this.it=(n,r,s,i,f,a,l,u,w)=>{let h;return c(288),e[0]=0,h=o(s,0,n,257,nt,rt,a,i,u,e,t),0!=h||0===i[0]?(h==Ye?w.Le="oversubscribed literal/length tree":-4!=h&&(w.Le="incomplete literal/length tree",h=Ye),h):(c(288),h=o(s,n,r,0,st,it,l,f,u,e,t),0!=h||0===f[0]&&n>257?(h==Ye?w.Le="oversubscribed distance tree":h==Ze?(w.Le="incomplete distance tree",h=Ye):-4!=h&&(w.Le="empty distance tree with lengths",h=Ye),h):0)}}function ct(){const e=this;let t,n,r,s,i=0,o=0,c=0,f=0,a=0,l=0,u=0,w=0,h=0,d=0;function p(e,t,n,r,s,i,o,c){let f,a,l,u,w,h,d,p,y,m,b,g,k,v,S,z;d=c.nt,p=c.We,w=o.ot,h=o.ct,y=o.write,m=yh;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],0!=(16&u)){for(u&=15,k=a[z+2]+(w&$e[u]),w>>=u,h-=u;15>h;)p--,w|=(255&c.ft(d++))<>=a[z+1],h-=a[z+1],0!=(16&u)){for(u&=15;u>h;)p--,w|=(255&c.ft(d++))<>=u,h-=u,m-=k,v>y){S=y-v;do{S+=o.end}while(0>S);if(u=o.end-S,k>u){if(k-=u,y-S>0&&u>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--u);else o.lt.set(o.lt.subarray(S,S+u),y),y+=u,S+=u,u=0;S=0}}else S=y-v,y-S>0&&2>y-S?(o.lt[y++]=o.lt[S++],o.lt[y++]=o.lt[S++],k-=2):(o.lt.set(o.lt.subarray(S,S+2),y),y+=2,S+=2,k-=2);if(y-S>0&&k>y-S)do{o.lt[y++]=o.lt[S++]}while(0!=--k);else o.lt.set(o.lt.subarray(S,S+k),y),y+=k,S+=k,k=0;break}if(0!=(64&u))return c.Le="invalid distance code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,Ye;f+=a[z+2],f+=w&$e[u],z=3*(l+f),u=a[z]}break}if(0!=(64&u))return 0!=(32&u)?(k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,1):(c.Le="invalid literal/length code",k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,Ye);if(f+=a[z+2],f+=w&$e[u],z=3*(l+f),0===(u=a[z])){w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--;break}}else w>>=a[z+1],h-=a[z+1],o.lt[y++]=a[z+2],m--}while(m>=258&&p>=10);return k=c.We-p,k=k>h>>3?h>>3:k,p+=k,d-=k,h-=k<<3,o.ot=w,o.ct=h,c.We=p,c.qe+=d-c.nt,c.nt=d,o.write=y,0}e.init=(e,i,o,c,f,a)=>{t=0,u=e,w=i,r=o,h=c,s=f,d=a,n=null},e.ut=(e,y,m)=>{let b,g,k,v,S,z,C,x=0,_=0,A=0;for(A=y.nt,v=y.We,x=e.ot,_=e.ct,S=e.write,z=S=258&&v>=10&&(e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,m=p(u,w,r,h,s,d,e,y),A=y.nt,v=y.We,x=e.ot,_=e.ct,S=e.write,z=S_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}if(g=3*(o+(x&$e[b])),x>>>=n[g+1],_-=n[g+1],k=n[g],0===k){f=n[g+2],t=6;break}if(0!=(16&k)){a=15&k,i=n[g+2],t=2;break}if(0==(64&k)){c=k,o=g/3+n[g+2];break}if(0!=(32&k)){t=7;break}return t=9,y.Le="invalid literal/length code",m=Ye,e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);case 2:for(b=a;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}i+=x&$e[b],x>>=b,_-=b,c=w,n=s,o=d,t=3;case 3:for(b=c;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}if(g=3*(o+(x&$e[b])),x>>=n[g+1],_-=n[g+1],k=n[g],0!=(16&k)){a=15&k,l=n[g+2],t=4;break}if(0==(64&k)){c=k,o=g/3+n[g+2];break}return t=9,y.Le="invalid distance code",m=Ye,e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);case 4:for(b=a;b>_;){if(0===v)return e.ot=x,e.ct=_,y.We=v,y.qe+=A-y.nt,y.nt=A,e.write=S,e.wt(y,m);m=0,v--,x|=(255&y.ft(A++))<<_,_+=8}l+=x&$e[b],x>>=b,_-=b,t=5;case 5:for(C=S-l;0>C;)C+=e.end;for(;0!==i;){if(0===z&&(S==e.end&&0!==e.read&&(S=0,z=S7&&(_-=8,v++,A--),e.write=S,m=e.wt(y,m),S=e.write,z=S{}}ot.dt=(e,t,n,r)=>(e[0]=9,t[0]=5,n[0]=et,r[0]=tt,0);const ft=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function at(e,t){const n=this;let r,s=0,o=0,c=0,a=0;const l=[0],u=[0],w=new ct;let h=0,d=new f(4320);const p=new ot;n.ct=0,n.ot=0,n.lt=new i(t),n.end=t,n.read=0,n.write=0,n.reset=(e,t)=>{t&&(t[0]=0),6==s&&w.ht(e),s=0,n.ct=0,n.ot=0,n.read=n.write=0},n.reset(e,null),n.wt=(e,t)=>{let r,s,i;return s=e.rt,i=n.read,r=(i>n.write?n.end:n.write)-i,r>e.tt&&(r=e.tt),0!==r&&t==Ze&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r,i==n.end&&(i=0,n.write==n.end&&(n.write=0),r=n.write-i,r>e.tt&&(r=e.tt),0!==r&&t==Ze&&(t=0),e.tt-=r,e.Ge+=r,e.$e.set(n.lt.subarray(i,i+r),s),s+=r,i+=r),e.rt=s,n.read=i,t},n.ut=(e,t)=>{let i,f,y,m,b,g,k,v;for(m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=gy;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>1){case 0:f>>>=3,y-=3,i=7&y,f>>>=i,y-=i,s=1;break;case 1:S=[],z=[],C=[[]],x=[[]],ot.dt(S,z,C,x),w.init(S[0],z[0],C[0],0,x[0],0),f>>>=3,y-=3,s=6;break;case 2:f>>>=3,y-=3,s=3;break;case 3:return f>>>=3,y-=3,s=9,e.Le="invalid block type",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t)}break;case 1:for(;32>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>16&65535)!=(65535&f))return s=9,e.Le="invalid stored block lengths",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);o=65535&f,f=y=0,s=0!==o?2:0!==h?7:0;break;case 2:if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(0===k&&(g==n.end&&0!==n.read&&(g=0,k=gb&&(i=b),i>k&&(i=k),n.lt.set(e.je(m,i),g),m+=i,b-=i,g+=i,k-=i,0!=(o-=i))break;s=0!==h?7:0;break;case 3:for(;14>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<29||(i>>5&31)>29)return s=9,e.Le="too many length or distance symbols",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);if(i=258+(31&i)+(i>>5&31),!r||r.lengthv;v++)r[v]=0;f>>>=14,y-=14,a=0,s=4;case 4:for(;4+(c>>>10)>a;){for(;3>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=3,y-=3}for(;19>a;)r[ft[a++]]=0;if(l[0]=7,i=p.st(r,l,u,d,e),0!=i)return(t=i)==Ye&&(r=null,s=9),n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);a=0,s=5;case 5:for(;i=c,258+(31&i)+(i>>5&31)>a;){let o,w;for(i=l[0];i>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<w)f>>>=i,y-=i,r[a++]=w;else{for(v=18==w?7:w-14,o=18==w?11:3;i+v>y;){if(0===b)return n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);t=0,b--,f|=(255&e.ft(m++))<>>=i,y-=i,o+=f&$e[v],f>>>=v,y-=v,v=a,i=c,v+o>258+(31&i)+(i>>5&31)||16==w&&1>v)return r=null,s=9,e.Le="invalid bit length repeat",t=Ye,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w=16==w?r[v-1]:0;do{r[v++]=w}while(0!=--o);a=v}}if(u[0]=-1,_=[],A=[],I=[],D=[],_[0]=9,A[0]=6,i=c,i=p.it(257+(31&i),1+(i>>5&31),r,_,A,I,D,d,e),0!=i)return i==Ye&&(r=null,s=9),t=i,n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,n.wt(e,t);w.init(_[0],A[0],d,I[0],d,D[0]),s=6;case 6:if(n.ot=f,n.ct=y,e.We=b,e.qe+=m-e.nt,e.nt=m,n.write=g,1!=(t=w.ut(n,e,t)))return n.wt(e,t);if(t=0,w.ht(e),m=e.nt,b=e.We,f=n.ot,y=n.ct,g=n.write,k=g{n.reset(e,null),n.lt=null,d=null},n.yt=(e,t,r)=>{n.lt.set(e.subarray(t,t+r),0),n.read=n.write=r},n.bt=()=>1==s?1:0}const lt=13,ut=[0,0,255,255];function wt(){const e=this;function t(e){return e&&e.gt?(e.qe=e.Ge=0,e.Le=null,e.gt.mode=7,e.gt.kt.reset(e,null),0):Xe}e.mode=0,e.method=0,e.vt=[0],e.St=0,e.marker=0,e.zt=0,e.Ct=t=>(e.kt&&e.kt.ht(t),e.kt=null,0),e.xt=(n,r)=>(n.Le=null,e.kt=null,8>r||r>15?(e.Ct(n),Xe):(e.zt=r,n.gt.kt=new at(n,1<{let n,r;if(!e||!e.gt||!e.et)return Xe;const s=e.gt;for(t=4==t?Ze:0,n=Ze;;)switch(s.mode){case 0:if(0===e.We)return n;if(n=t,e.We--,e.qe++,8!=(15&(s.method=e.ft(e.nt++)))){s.mode=lt,e.Le="unknown compression method",s.marker=5;break}if(8+(s.method>>4)>s.zt){s.mode=lt,e.Le="invalid win size",s.marker=5;break}s.mode=1;case 1:if(0===e.We)return n;if(n=t,e.We--,e.qe++,r=255&e.ft(e.nt++),((s.method<<8)+r)%31!=0){s.mode=lt,e.Le="incorrect header check",s.marker=5;break}if(0==(32&r)){s.mode=7;break}s.mode=2;case 2:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St=(255&e.ft(e.nt++))<<24&4278190080,s.mode=3;case 3:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<16&16711680,s.mode=4;case 4:if(0===e.We)return n;n=t,e.We--,e.qe++,s.St+=(255&e.ft(e.nt++))<<8&65280,s.mode=5;case 5:return 0===e.We?n:(n=t,e.We--,e.qe++,s.St+=255&e.ft(e.nt++),s.mode=6,2);case 6:return s.mode=lt,e.Le="need dictionary",s.marker=0,Xe;case 7:if(n=s.kt.ut(e,n),n==Ye){s.mode=lt,s.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,s.kt.reset(e,s.vt),s.mode=12;case 12:return e.We=0,1;case lt:return Ye;default:return Xe}},e.At=(e,t,n)=>{let r=0,s=n;if(!e||!e.gt||6!=e.gt.mode)return Xe;const i=e.gt;return s<1<{let n,r,s,i,o;if(!e||!e.gt)return Xe;const c=e.gt;if(c.mode!=lt&&(c.mode=lt,c.marker=0),0===(n=e.We))return Ze;for(r=e.nt,s=c.marker;0!==n&&4>s;)e.ft(r)==ut[s]?s++:s=0!==e.ft(r)?0:4-s,r++,n--;return e.qe+=r-e.nt,e.nt=r,e.We=n,c.marker=s,4!=s?Ye:(i=e.qe,o=e.Ge,t(e),e.qe=i,e.Ge=o,c.mode=7,0)},e.Dt=e=>e&&e.gt&&e.gt.kt?e.gt.kt.bt():Xe}function ht(){}function dt(e){const t=new ht,n=e&&e.chunkSize?r.floor(2*e.chunkSize):131072,o=new i(n);let c=!1;t.xt(),t.$e=o,this.append=(e,r)=>{const f=[];let a,l,u=0,w=0,h=0;if(0!==e.length){t.nt=0,t.et=e,t.We=e.length;do{if(t.rt=0,t.tt=n,0!==t.We||c||(t.nt=0,c=!0),a=t._t(0),c&&a===Ze){if(0!==t.We)throw new s("inflating: bad input")}else if(0!==a&&1!==a)throw new s("inflating: "+t.Le);if((c||1===a)&&t.We===e.length)throw new s("inflating: bad input");t.rt&&(t.rt===n?f.push(new i(o)):f.push(o.subarray(0,t.rt))),h+=t.rt,r&&t.nt>0&&t.nt!=u&&(r(t.nt),u=t.nt)}while(t.We>0||0===t.tt);return f.length>1?(l=new i(h),f.forEach((e=>{l.set(e,w),w+=e.length}))):l=f[0]?new i(f[0]):new i,l}},this.flush=()=>{t.Ct()}}ht.prototype={xt(e){const t=this;return t.gt=new wt,e||(e=15),t.gt.xt(t,e)},_t(e){const t=this;return t.gt?t.gt._t(t,e):Xe},Ct(){const e=this;if(!e.gt)return Xe;const t=e.gt.Ct(e);return e.gt=null,t},It(){const e=this;return e.gt?e.gt.It(e):Xe},At(e,t){const n=this;return n.gt?n.gt.At(n,e,t):Xe},ft(e){return this.et[e]},je(e,t){return this.et.subarray(e,e+t)}},self.initCodec=()=>{self.Deflate=Qe,self.Inflate=dt}; +`],{type:"text/javascript"}));t({workerScripts:{inflate:[e],deflate:[e]}})}const J2e="Writer iterator completed too soon",Q2e="Content-Type",eSe=64*1024,bO="writable";class Dx{constructor(){this.size=0}init(){this.initialized=!0}}class Fx extends Dx{get readable(){const e=this,{chunkSize:n=eSe}=e,s=new ReadableStream({start(){this.chunkOffset=0},async pull(i){const{offset:r=0,size:o,diskNumberStart:a}=s,{chunkOffset:l}=this;i.enqueue(await is(e,r+l,Math.min(n,o-l),a)),l+n>o?i.close():this.chunkOffset+=n}});return s}}class tSe extends Fx{constructor(e){super(),Object.assign(this,{blob:e,size:e.size})}async readUint8Array(e,n){const s=this,i=e+n;let o=await(e||in&&(o=o.slice(e,i)),new Uint8Array(o)}}class nSe extends Dx{constructor(e){super();const n=this,s=new TransformStream,i=[];e&&i.push([Q2e,e]),Object.defineProperty(n,bO,{get(){return s.writable}}),n.blob=new Response(s.readable,{headers:i}).blob()}getData(){return this.blob}}class sSe extends nSe{constructor(e){super(e),Object.assign(this,{encoding:e,utf8:!e||e.toLowerCase()=="utf-8"})}async getData(){const{encoding:e,utf8:n}=this,s=await super.getData();if(s.text&&n)return s.text();{const i=new FileReader;return new Promise((r,o)=>{Object.assign(i,{onload:({target:a})=>r(a.result),onerror:()=>o(i.error)}),i.readAsText(s,e)})}}}class iSe extends Fx{constructor(e){super(),Object.assign(this,{array:e,size:e.length})}readUint8Array(e,n){return this.array.slice(e,e+n)}}class rSe extends Fx{constructor(e){super(),this.readers=e}async init(){const e=this,{readers:n}=e;e.lastDiskNumber=0,e.lastDiskOffset=0,await Promise.all(n.map(async(s,i)=>{await s.init(),i!=n.length-1&&(e.lastDiskOffset+=s.size),e.size+=s.size})),super.init()}async readUint8Array(e,n,s=0){const i=this,{readers:r}=this;let o,a=s;a==-1&&(a=r.length-1);let l=e;for(;l>=r[a].size;)l-=r[a].size,a++;const c=r[a],u=c.size;if(l+n<=u)o=await is(c,l,n);else{const d=u-l;o=new Uint8Array(n),o.set(await is(c,l,d)),o.set(await i.readUint8Array(e+d,n-d,s),d)}return i.lastDiskNumber=Math.max(a,i.lastDiskNumber),o}}class lM extends Dx{constructor(e,n=4294967295){super();const s=this;Object.assign(s,{diskNumber:0,diskOffset:0,size:0,maxSize:n,availableSize:n});let i,r,o;const a=new WritableStream({async write(u){const{availableSize:d}=s;if(o)u.length>=d?(await l(u.slice(0,d)),await c(),s.diskOffset+=i.size,s.diskNumber++,o=null,await this.write(u.slice(d))):await l(u);else{const{value:f,done:h}=await e.next();if(h&&!f)throw new Error(J2e);i=f,i.size=0,i.maxSize&&(s.maxSize=i.maxSize),s.availableSize=s.maxSize,await Dg(i),r=f.writable,o=r.getWriter(),await this.write(u)}},async close(){await o.ready,await c()}});Object.defineProperty(s,bO,{get(){return a}});async function l(u){const d=u.length;d&&(await o.ready,await o.write(u),i.size+=d,s.size+=d,s.availableSize-=d)}async function c(){r.size=i.size,await o.close()}}}async function Dg(t,e){t.init&&!t.initialized&&await t.init(e)}function oSe(t){return Array.isArray(t)&&(t=new rSe(t)),t instanceof ReadableStream&&(t={readable:t}),t}function aSe(t){t.writable===Wi&&typeof t.next==KC&&(t=new lM(t)),t instanceof WritableStream&&(t={writable:t});const{writable:e}=t;return e.size===Wi&&(e.size=0),t instanceof lM||Object.assign(t,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),t}function is(t,e,n,s){return t.readUint8Array(e,n,s)}const yO="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split(""),lSe=yO.length==256;function cSe(t){if(lSe){let e="";for(let n=0;nthis[n]=e[n])}}const fb="File format is not recognized",_Se="End of central directory not found",bSe="End of Zip64 central directory not found",ySe="End of Zip64 central directory locator not found",vSe="Central directory header not found",wSe="Local file header not found",xSe="Zip64 extra field not found",SSe="File contains encrypted entry",ESe="Encryption method not supported",uM="Compression method not supported",dM="Split zip file",fM="utf-8",hM="cp437",TSe=[[EO,Pl],[TO,Pl],[AO,Pl],[Vy,ia]],ASe={[ia]:{getValue:Sn,bytes:4},[Pl]:{getValue:Vm,bytes:8}};class MSe{constructor(e,n={}){Object.assign(this,{reader:oSe(e),options:n,config:c2e()})}async*getEntriesGenerator(e={}){const n=this;let{reader:s}=n;const{config:i}=n;if(await Dg(s),(s.size===Wi||!s.readUint8Array)&&(s=new tSe(await new Response(s.readable).blob()),await Dg(s)),s.size=s.size&&(m=s.size-l-a-Dc,l=s.size-a-Dc),h!=f)throw new Error(dM);if(l<0)throw new Error(fb);let y=0,v=await is(s,l,a,_),x=Wn(v);if(a){const O=r.offset-a;if(Sn(x,y)!=VA&&l!=O){const I=l;l=O,m+=l-I,v=await is(s,l,a,_),x=Wn(v)}}const S=r.offset-l-(s.lastDiskOffset||0);if(a!=S&&S>=0&&(a=S,v=await is(s,l,a,_),x=Wn(v)),l<0||l>=s.size)throw new Error(fb);const w=ai(n,e,"filenameEncoding"),T=ai(n,e,"commentEncoding");for(let O=0;OI.getData(ge,Se,He),y=K;const{onprogress:we}=e;if(we)try{await we(O+1,p,new cM(I))}catch{}yield Se}const E=ai(n,e,"extractPrependedData"),A=ai(n,e,"extractAppendedData");return E&&(n.prependedData=b>0?await is(s,0,b):new Uint8Array),n.comment=u?await is(s,c+Dc,u):new Uint8Array,A&&(n.appendedData=d>>8&255:f>>>24&255),signature:f,compressed:c!=0,encrypted:x,useWebWorkers:ai(i,s,"useWebWorkers"),useCompressionStream:ai(i,s,"useCompressionStream"),transferStreams:ai(i,s,"transferStreams"),checkPasswordOnly:O},config:u,streamOptions:{signal:A,size:T,onstart:B,onprogress:U,onend:D}};let F=0;try{({outputSize:F}=await X2e({readable:E,writable:I},$))}catch(H){if(!O||H.message!=Ix)throw H}finally{const H=ai(i,s,"preventClose");I.size+=F,!H&&!I.locked&&await I.getWriter().close()}return O?void 0:e.getData?e.getData():I}}function RO(t,e,n){const s=t.rawBitFlag=Vn(e,n+2),i=(s&jA)==jA,r=Sn(e,n+6);Object.assign(t,{encrypted:i,version:Vn(e,n),bitFlag:{level:(s&r2e)>>1,dataDescriptor:(s&qA)==qA,languageEncodingFlag:(s&YA)==YA},rawLastModDate:r,lastModDate:PSe(r),filenameLength:Vn(e,n+22),extraFieldLength:Vn(e,n+24)})}async function CO(t,e,n,s,i){const{rawExtraField:r}=e,o=e.extraField=new Map,a=Wn(new Uint8Array(r));let l=0;try{for(;le[i]==r);for(let i=0,r=0;i=5&&(r.push(Wy),o.push(jy));let a=1;r.forEach((l,c)=>{if(t.data.length>=a+4){const u=Sn(s,a);e[l]=t[l]=new Date(u*1e3);const d=o[c];t[d]=u}a+=4})}async function LSe(t,e,n,s,i){const r=new Uint8Array(4),o=Wn(r);DSe(o,0,e);const a=s+i;return await l(s)||await l(Math.min(a,n));async function l(c){const u=n-c,d=await is(t,u,c);for(let f=d.length-s;f>=0;f--)if(d[f]==r[0]&&d[f+1]==r[1]&&d[f+2]==r[2]&&d[f+3]==r[3])return{offset:u+f,buffer:d.slice(f,f+s).buffer}}}function ai(t,e,n){return e[n]===Wi?t.options[n]:e[n]}function PSe(t){const e=(t&4294901760)>>16,n=t&65535;try{return new Date(1980+((e&65024)>>9),((e&480)>>5)-1,e&31,(n&63488)>>11,(n&2016)>>5,(n&31)*2,0)}catch{}}function hb(t){return new Date(Number(t/BigInt(1e4)-BigInt(116444736e5)))}function mu(t,e){return t.getUint8(e)}function Vn(t,e){return t.getUint16(e,!0)}function Sn(t,e){return t.getUint32(e,!0)}function Vm(t,e){return Number(t.getBigUint64(e,!0))}function DSe(t,e,n){t.setUint32(e,n,!0)}function Wn(t){return new DataView(t.buffer)}let OO;try{OO=import.meta.url}catch{}Ox({baseURL:OO});Z2e(Ox);Ox({Deflate:xxe,Inflate:Hxe});const Fc={owner:"BossHobby",repo:"QUICKSILVER"},FSe={owner:"BossHobby",repo:"Configurator"},NSe="https://cors.bubblesort.me/?",$Se=[["Origin","http://localhost"],["X-Requested-With","XMLHttpRequest"]],USe=336407,BSe=`-----BEGIN PRIVATE KEY----- +MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCjm+/HBlaUmeHs +JuPNoLR/llQ+HmyZEdkP7ia6hF232WKRyGtwKAWWI1mAFle/m4L1I6FQQhh4uCqn +8uG01Ex+bBd6C6ecu214tx3xMTnmyh4MqUzjUYmEdcSZ3VjGJwU8J8yyXpfu7H8O +JgK5ibk6AX5qh45VvhjYRbZKLnILrMvOPJ6Y0H31FnucO6SZo7ZZnRK3C6O+Qi/w +0cHmtuQCVk4QOL+oCJIW0QNM2NYVrZY5OJc0lpbMuXmaEG8tIb2qUP0kwcX2oGMg +p68amMS3TXTH3Odc2mYhtLIoPhVyrVXyYHjcdp67vHJfomXcvW4E+TcxckBFwgI5 +iHIDIr+XAgMBAAECggEAB8LtBA8L6m7GZfKOWgHmrirOgkflNPnAx12v3qdK3t7k +KzBL0H1FjpLMuyPUM9XHx6NSEsGf8ZIjC+acyHxNyK2OC48j+250ygY92GRSb91k +wYsCh8IlePAxTG9Qt83AFNN6hXexU3dKq7wn4u9ipxrNCXa2zOCAwznDZQ+A/4a2 +jlIkMN9hqkwnTttkdGDo1gDO/U5lWIHO513vXhqvMXt76j2ekAShs2gGBpBvs+wn +/tyBJDIrSXcMCy4nwE4sDpPTpBcR2NF4wgxkjGBRphQzzBM2q0eNftlRmOlzNe/V +AdldCElnQNYvVmASMcKi+Iz6D7rgpCNU4AU/u8mGcQKBgQDX97mOPHM9Ox9a33RC +P10ifubVzQORBop2rkHsDGGWqTH/06ygUXF/OkPljVWJLhYGrXExiUnO9F7y0+lI +TsVLeqdgUwHqnrR+A78J+2kOQZHe2zD9dSgjrNhANL7lJfNMbat1d9m89a6Cc4cJ +gEpiShocw2T6DLs1+AQ2z0KPvwKBgQDB76as+S2IY9nYxR65E8LlTCAhPOrz7gzp +075MQb/+Ch7WnenX5UWpNtIAI5orXLGBTKoAP7x6eWLiJ4vxjj/C5szBI4nYjZT6 +JkiGGRqhmD8DVWi+eG9Ah5FlK1IOLa4vQdCwlhBx7xtYM/UbfWZjKUu+ZWk4JB0x +luUAvLTGKQKBgDR3+Nq3kP/FR17afvJBVq00y3wR7NXlEuq2d0mT0Hm77WvLz1q7 +rqlMTIaOicNkMPG6XY+9XPMsp4yzMy/gA0rNJ7DdOc/4cr1Sx6zzKZjPEVNlSUeq +mO/h5D/lEKO3Tp643jkRvxKLVbRXwOzsACZU/ncSeYvOYAVCljOCsxcdAoGBAI5a +A4UJ7gMkD96Oaku9lpxKsXbUST29qVrlItTEmlG1SgeMp/3h+60GYUTa3SohAuX+ +yPYf0pAvk4afMpifKmw8j2ThWihLXGP1P9y2hpbAstgWlCjjK/44xF93WeawXx+u +9qj3raCDuxWWJb8E3+e/gyqBM6eS0p74vKU63pJpAoGBAJVWaujxxkojAoVwbs0R +n/vvwY6snT2EgTGFaHllXtQAHkhoonqPQ0W+4NoM7KnZPDQcKERNrYJQkK+YKTnl +p9r9s032bxaycq7WAPoQAisit0zIt0iZzS6xDew0PIq0g4DjH0GG/y25gtx5MFcr +zM39Lg5JAtecNMRkjep4XQdR +-----END PRIVATE KEY-----`;class GSe{constructor(){$e(this,"_octokit")}async kit(){if(this._octokit)return this._octokit;const n=await new rxe({appId:USe,privateKey:BSe}).getInstallationOctokit(37707080);return this._octokit=n}async fetchReleases(){const s=(await(await this.kit()).rest.repos.listReleases(Fc)).data.filter(r=>r.assets.length>0),i={};for(const r of s)i[r.tag_name]=r.assets;return i}async fetchArtifacts(e){const n=await this.kit();return n.rest.actions.listWorkflowRunsForRepo({...Fc,branch:e,per_page:1,status:"success",exclude_pull_requests:!0}).then(s=>s.data.total_count==0?[]:n.rest.actions.listWorkflowRunArtifacts({...Fc,run_id:s.data.workflow_runs[0].id,per_page:100}).then(i=>i.data.artifacts))}async fetchVersion(e){return(await this.kit()).rest.repos.getContent({...Fc,path:"VERSION",ref:e}).then(s=>{var i,r;return(i=s==null?void 0:s.data)!=null&&i.content?atob((r=s.data)==null?void 0:r.content).trim():"v0.0.0"}).catch(()=>"v0.0.0")}async fetchBranches(){const s=(await(await this.kit()).rest.repos.listBranches(Fc)).data.map(r=>Promise.all([this.fetchArtifacts(r.name),this.fetchVersion(r.name)]).then(([o,a])=>({name:r.name,commit:r.commit.sha,version:a,artifacts:o}))),i={};for(const r of await Promise.all(s))i[r.name]=r;return i}findNewVersion(e,n){for(const s of e)if(Ps.gt(s,n))return s;return null}async checkForUpdate(e){const i=(await(await this.kit()).rest.repos.listReleases(FSe)).data.filter(a=>a.assets.length>0&&Ps.valid(a.tag_name)),r=i.map(a=>a.tag_name),o=this.findNewVersion(r,e);return o?i.find(a=>a.tag_name==o):null}fetchAsset(e){const n=`${NSe}${e.browser_download_url}`;return fetch(n,{headers:$Se})}async fetchArtifact(e){const s=await(await this.kit()).rest.actions.downloadArtifact({...Fc,artifact_id:e.id,archive_format:"zip"}),i=new MSe(new iSe(new Uint8Array(s.data))),r=(await i.getEntries()).shift();if(!r)return;const o=await r.getData(new sSe);return await i.close(),o}}const Zc=new GSe,mM="https://raw.githubusercontent.com/BossHobby/Targets/targets/",zSe=ds("flash",{state:()=>({releases:{},branches:{},targets:[],manufacturers:{}}),actions:{fetch(){return Promise.all([Zc.fetchReleases().then(t=>this.releases=t),Zc.fetchBranches().then(t=>this.branches=t),fetch(mM+"_index.json").then(t=>t.json()).then(t=>{this.targets=t.targets,this.manufacturers=t.manufacturers})])},fetchRuntimeConfig(t){return fetch(mM+t+".yaml").then(e=>e.ok?e.text():Promise.reject(e)).then(e=>_o.parse(e)).then(e=>Cm.encode(e))}}});function yo(t){return Array.isArray?Array.isArray(t):PO(t)==="[object Array]"}const HSe=1/0;function VSe(t){if(typeof t=="string")return t;let e=t+"";return e=="0"&&1/t==-HSe?"-0":e}function WSe(t){return t==null?"":VSe(t)}function _r(t){return typeof t=="string"}function IO(t){return typeof t=="number"}function jSe(t){return t===!0||t===!1||qSe(t)&&PO(t)=="[object Boolean]"}function LO(t){return typeof t=="object"}function qSe(t){return LO(t)&&t!==null}function Ws(t){return t!=null}function pb(t){return!t.trim().length}function PO(t){return t==null?t===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(t)}const YSe="Incorrect 'index' type",KSe=t=>`Invalid value for key ${t}`,XSe=t=>`Pattern length exceeds max of ${t}.`,ZSe=t=>`Missing ${t} property in key`,JSe=t=>`Property 'weight' in key '${t}' must be a positive integer`,gM=Object.prototype.hasOwnProperty;class QSe{constructor(e){this._keys=[],this._keyMap={};let n=0;e.forEach(s=>{let i=DO(s);n+=i.weight,this._keys.push(i),this._keyMap[i.id]=i,n+=i.weight}),this._keys.forEach(s=>{s.weight/=n})}get(e){return this._keyMap[e]}keys(){return this._keys}toJSON(){return JSON.stringify(this._keys)}}function DO(t){let e=null,n=null,s=null,i=1,r=null;if(_r(t)||yo(t))s=t,e=_M(t),n=qy(t);else{if(!gM.call(t,"name"))throw new Error(ZSe("name"));const o=t.name;if(s=o,gM.call(t,"weight")&&(i=t.weight,i<=0))throw new Error(JSe(o));e=_M(o),n=qy(o),r=t.getFn}return{path:e,id:n,weight:i,src:s,getFn:r}}function _M(t){return yo(t)?t:t.split(".")}function qy(t){return yo(t)?t.join("."):t}function eEe(t,e){let n=[],s=!1;const i=(r,o,a)=>{if(Ws(r))if(!o[a])n.push(r);else{let l=o[a];const c=r[l];if(!Ws(c))return;if(a===o.length-1&&(_r(c)||IO(c)||jSe(c)))n.push(WSe(c));else if(yo(c)){s=!0;for(let u=0,d=c.length;ut.score===e.score?t.idx{this._keysMap[n.id]=s})}create(){this.isCreated||!this.docs.length||(this.isCreated=!0,_r(this.docs[0])?this.docs.forEach((e,n)=>{this._addString(e,n)}):this.docs.forEach((e,n)=>{this._addObject(e,n)}),this.norm.clear())}add(e){const n=this.size();_r(e)?this._addString(e,n):this._addObject(e,n)}removeAt(e){this.records.splice(e,1);for(let n=e,s=this.size();n{let o=i.getFn?i.getFn(e):this.getFn(e,i.path);if(Ws(o)){if(yo(o)){let a=[];const l=[{nestedArrIndex:-1,value:o}];for(;l.length;){const{nestedArrIndex:c,value:u}=l.pop();if(Ws(u))if(_r(u)&&!pb(u)){let d={v:u,i:c,n:this.norm.get(u)};a.push(d)}else yo(u)&&u.forEach((d,f)=>{l.push({nestedArrIndex:f,value:d})})}s.$[r]=a}else if(_r(o)&&!pb(o)){let a={v:o,n:this.norm.get(o)};s.$[r]=a}}}),this.records.push(s)}toJSON(){return{keys:this.keys,records:this.records}}}function FO(t,e,{getFn:n=rt.getFn,fieldNormWeight:s=rt.fieldNormWeight}={}){const i=new Nx({getFn:n,fieldNormWeight:s});return i.setKeys(t.map(DO)),i.setSources(e),i.create(),i}function aEe(t,{getFn:e=rt.getFn,fieldNormWeight:n=rt.fieldNormWeight}={}){const{keys:s,records:i}=t,r=new Nx({getFn:e,fieldNormWeight:n});return r.setKeys(s),r.setIndexRecords(i),r}function um(t,{errors:e=0,currentLocation:n=0,expectedLocation:s=0,distance:i=rt.distance,ignoreLocation:r=rt.ignoreLocation}={}){const o=e/t.length;if(r)return o;const a=Math.abs(s-n);return i?o+a/i:a?1:o}function lEe(t=[],e=rt.minMatchCharLength){let n=[],s=-1,i=-1,r=0;for(let o=t.length;r=e&&n.push([s,i]),s=-1)}return t[r-1]&&r-s>=e&&n.push([s,r-1]),n}const cl=32;function cEe(t,e,n,{location:s=rt.location,distance:i=rt.distance,threshold:r=rt.threshold,findAllMatches:o=rt.findAllMatches,minMatchCharLength:a=rt.minMatchCharLength,includeMatches:l=rt.includeMatches,ignoreLocation:c=rt.ignoreLocation}={}){if(e.length>cl)throw new Error(XSe(cl));const u=e.length,d=t.length,f=Math.max(0,Math.min(s,d));let h=r,_=f;const p=a>1||l,m=p?Array(d):[];let b;for(;(b=t.indexOf(e,_))>-1;){let T=um(e,{currentLocation:b,expectedLocation:f,distance:i,ignoreLocation:c});if(h=Math.min(T,h),_=b+u,p){let E=0;for(;E=O;D-=1){let $=D-1,F=n[t.charAt($)];if(p&&(m[$]=+!!F),B[D]=(B[D+1]<<1|1)&F,T&&(B[D]|=(y[D+1]|y[D])<<1|1|y[D+1]),B[D]&S&&(v=um(e,{errors:T,currentLocation:$,expectedLocation:f,distance:i,ignoreLocation:c}),v<=h)){if(h=v,_=$,_<=f)break;O=Math.max(1,2*f-_)}}if(um(e,{errors:T+1,currentLocation:f,expectedLocation:f,distance:i,ignoreLocation:c})>h)break;y=B}const w={isMatch:_>=0,score:Math.max(.001,v)};if(p){const T=lEe(m,a);T.length?l&&(w.indices=T):w.isMatch=!1}return w}function uEe(t){let e={};for(let n=0,s=t.length;n{this.chunks.push({pattern:f,alphabet:uEe(f),startIndex:h})},d=this.pattern.length;if(d>cl){let f=0;const h=d%cl,_=d-h;for(;f<_;)u(this.pattern.substr(f,cl),f),f+=cl;if(h){const p=d-cl;u(this.pattern.substr(p),p)}}else u(this.pattern,0)}searchIn(e){const{isCaseSensitive:n,includeMatches:s}=this.options;if(n||(e=e.toLowerCase()),this.pattern===e){let _={isMatch:!0,score:0};return s&&(_.indices=[[0,e.length-1]]),_}const{location:i,distance:r,threshold:o,findAllMatches:a,minMatchCharLength:l,ignoreLocation:c}=this.options;let u=[],d=0,f=!1;this.chunks.forEach(({pattern:_,alphabet:p,startIndex:m})=>{const{isMatch:b,score:y,indices:v}=cEe(e,_,p,{location:i+m,distance:r,threshold:o,findAllMatches:a,minMatchCharLength:l,includeMatches:s,ignoreLocation:c});b&&(f=!0),d+=y,b&&v&&(u=[...u,...v])});let h={isMatch:f,score:f?d/this.chunks.length:1};return f&&s&&(h.indices=u),h}}class Na{constructor(e){this.pattern=e}static isMultiMatch(e){return bM(e,this.multiRegex)}static isSingleMatch(e){return bM(e,this.singleRegex)}search(){}}function bM(t,e){const n=t.match(e);return n?n[1]:null}class dEe extends Na{constructor(e){super(e)}static get type(){return"exact"}static get multiRegex(){return/^="(.*)"$/}static get singleRegex(){return/^=(.*)$/}search(e){const n=e===this.pattern;return{isMatch:n,score:n?0:1,indices:[0,this.pattern.length-1]}}}class fEe extends Na{constructor(e){super(e)}static get type(){return"inverse-exact"}static get multiRegex(){return/^!"(.*)"$/}static get singleRegex(){return/^!(.*)$/}search(e){const s=e.indexOf(this.pattern)===-1;return{isMatch:s,score:s?0:1,indices:[0,e.length-1]}}}class hEe extends Na{constructor(e){super(e)}static get type(){return"prefix-exact"}static get multiRegex(){return/^\^"(.*)"$/}static get singleRegex(){return/^\^(.*)$/}search(e){const n=e.startsWith(this.pattern);return{isMatch:n,score:n?0:1,indices:[0,this.pattern.length-1]}}}class pEe extends Na{constructor(e){super(e)}static get type(){return"inverse-prefix-exact"}static get multiRegex(){return/^!\^"(.*)"$/}static get singleRegex(){return/^!\^(.*)$/}search(e){const n=!e.startsWith(this.pattern);return{isMatch:n,score:n?0:1,indices:[0,e.length-1]}}}class mEe extends Na{constructor(e){super(e)}static get type(){return"suffix-exact"}static get multiRegex(){return/^"(.*)"\$$/}static get singleRegex(){return/^(.*)\$$/}search(e){const n=e.endsWith(this.pattern);return{isMatch:n,score:n?0:1,indices:[e.length-this.pattern.length,e.length-1]}}}class gEe extends Na{constructor(e){super(e)}static get type(){return"inverse-suffix-exact"}static get multiRegex(){return/^!"(.*)"\$$/}static get singleRegex(){return/^!(.*)\$$/}search(e){const n=!e.endsWith(this.pattern);return{isMatch:n,score:n?0:1,indices:[0,e.length-1]}}}class $O extends Na{constructor(e,{location:n=rt.location,threshold:s=rt.threshold,distance:i=rt.distance,includeMatches:r=rt.includeMatches,findAllMatches:o=rt.findAllMatches,minMatchCharLength:a=rt.minMatchCharLength,isCaseSensitive:l=rt.isCaseSensitive,ignoreLocation:c=rt.ignoreLocation}={}){super(e),this._bitapSearch=new NO(e,{location:n,threshold:s,distance:i,includeMatches:r,findAllMatches:o,minMatchCharLength:a,isCaseSensitive:l,ignoreLocation:c})}static get type(){return"fuzzy"}static get multiRegex(){return/^"(.*)"$/}static get singleRegex(){return/^(.*)$/}search(e){return this._bitapSearch.searchIn(e)}}class UO extends Na{constructor(e){super(e)}static get type(){return"include"}static get multiRegex(){return/^'"(.*)"$/}static get singleRegex(){return/^'(.*)$/}search(e){let n=0,s;const i=[],r=this.pattern.length;for(;(s=e.indexOf(this.pattern,n))>-1;)n=s+r,i.push([s,n-1]);const o=!!i.length;return{isMatch:o,score:o?0:1,indices:i}}}const Yy=[dEe,UO,hEe,pEe,gEe,mEe,fEe,$O],yM=Yy.length,_Ee=/ +(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)/,bEe="|";function yEe(t,e={}){return t.split(bEe).map(n=>{let s=n.trim().split(_Ee).filter(r=>r&&!!r.trim()),i=[];for(let r=0,o=s.length;r!!(t[Fg.AND]||t[Fg.OR]),SEe=t=>!!t[Zy.PATH],EEe=t=>!yo(t)&&LO(t)&&!Jy(t),vM=t=>({[Fg.AND]:Object.keys(t).map(e=>({[e]:t[e]}))});function BO(t,e,{auto:n=!0}={}){const s=i=>{let r=Object.keys(i);const o=SEe(i);if(!o&&r.length>1&&!Jy(i))return s(vM(i));if(EEe(i)){const l=o?i[Zy.PATH]:r[0],c=o?i[Zy.PATTERN]:i[l];if(!_r(c))throw new Error(KSe(l));const u={keyId:qy(l),pattern:c};return n&&(u.searcher=Xy(c,e)),u}let a={children:[],operator:r[0]};return r.forEach(l=>{const c=i[l];yo(c)&&c.forEach(u=>{a.children.push(s(u))})}),a};return Jy(t)||(t=vM(t)),s(t)}function TEe(t,{ignoreFieldNorm:e=rt.ignoreFieldNorm}){t.forEach(n=>{let s=1;n.matches.forEach(({key:i,norm:r,score:o})=>{const a=i?i.weight:null;s*=Math.pow(o===0&&a?Number.EPSILON:o,(a||1)*(e?1:r))}),n.score=s})}function AEe(t,e){const n=t.matches;e.matches=[],Ws(n)&&n.forEach(s=>{if(!Ws(s.indices)||!s.indices.length)return;const{indices:i,value:r}=s;let o={indices:i,value:r};s.key&&(o.key=s.key.src),s.idx>-1&&(o.refIndex=s.idx),e.matches.push(o)})}function MEe(t,e){e.score=t.score}function kEe(t,e,{includeMatches:n=rt.includeMatches,includeScore:s=rt.includeScore}={}){const i=[];return n&&i.push(AEe),s&&i.push(MEe),t.map(r=>{const{idx:o}=r,a={item:e[o],refIndex:o};return i.length&&i.forEach(l=>{l(r,a)}),a})}class wd{constructor(e,n={},s){this.options={...rt,...n},this.options.useExtendedSearch,this._keyStore=new QSe(this.options.keys),this.setCollection(e,s)}setCollection(e,n){if(this._docs=e,n&&!(n instanceof Nx))throw new Error(YSe);this._myIndex=n||FO(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight})}add(e){Ws(e)&&(this._docs.push(e),this._myIndex.add(e))}remove(e=()=>!1){const n=[];for(let s=0,i=this._docs.length;s-1&&(l=l.slice(0,n)),kEe(l,this._docs,{includeMatches:s,includeScore:i})}_searchStringList(e){const n=Xy(e,this.options),{records:s}=this._myIndex,i=[];return s.forEach(({v:r,i:o,n:a})=>{if(!Ws(r))return;const{isMatch:l,score:c,indices:u}=n.searchIn(r);l&&i.push({item:r,idx:o,matches:[{score:c,value:r,norm:a,indices:u}]})}),i}_searchLogical(e){const n=BO(e,this.options),s=(a,l,c)=>{if(!a.children){const{keyId:d,searcher:f}=a,h=this._findMatches({key:this._keyStore.get(d),value:this._myIndex.getValueForItemAtKeyId(l,d),searcher:f});return h&&h.length?[{idx:c,item:l,matches:h}]:[]}const u=[];for(let d=0,f=a.children.length;d{if(Ws(a)){let c=s(n,a,l);c.length&&(r[l]||(r[l]={idx:l,item:a,matches:[]},o.push(r[l])),c.forEach(({matches:u})=>{r[l].matches.push(...u)}))}}),o}_searchObjectList(e){const n=Xy(e,this.options),{keys:s,records:i}=this._myIndex,r=[];return i.forEach(({$:o,i:a})=>{if(!Ws(o))return;let l=[];s.forEach((c,u)=>{l.push(...this._findMatches({key:c,value:o[u],searcher:n}))}),l.length&&r.push({idx:a,item:o,matches:l})}),r}_findMatches({key:e,value:n,searcher:s}){if(!Ws(n))return[];let i=[];if(yo(n))n.forEach(({v:r,i:o,n:a})=>{if(!Ws(r))return;const{isMatch:l,score:c,indices:u}=s.searchIn(r);l&&i.push({score:c,key:e,value:r,idx:o,norm:a,indices:u})});else{const{v:r,n:o}=n,{isMatch:a,score:l,indices:c}=s.searchIn(r);a&&i.push({score:l,key:e,value:r,norm:o,indices:c})}return i}}wd.version="6.6.2";wd.createIndex=FO;wd.parseIndex=aEe;wd.config=rt;wd.parseQuery=BO;xEe(wEe);const REe=nt({name:"Flash",setup(){return{root:wn(),flash:zSe(),serial:xd()}},data(){return{loading:!1,dropdownHover:!1,dropdownActive:!1,sourceOptions:[{value:"release",text:"Release"},{value:"branch",text:"Development Branch"},{value:"local",text:"Local"}],progress:[],source:"release",release:void 0,branch:void 0,targetSearch:"",currentTarget:void 0,target:void 0,file:void 0}},watch:{source(){this.release=this.pickRelease(),this.branch=this.branchOptions[0],this.targetSearch="",this.target=void 0,this.file=void 0},release(){this.targetSearch="",this.target=void 0,this.file=void 0},branch(){this.targetSearch="",this.target=void 0,this.file=void 0}},computed:{branchOptions(){return Object.keys(this.flash.branches)},releaseOptions(){return Object.keys(this.flash.releases)},isRuntimeTarget(){if(this.source=="release"&&this.release)return Wb.satisfies(this.release,">=0.10.0-dev",{includePrerelease:!0});if(this.source=="branch"&&this.branch){const t=this.flash.branches[this.branch];return Wb.satisfies(t.version,">=0.10.0-dev",{includePrerelease:!0})}return!1},targetOptions(){let t=[];if(this.isRuntimeTarget)t=this.flash.targets.map(n=>{const s=this.flash.manufacturers[n.manufacturer||"CUST"];return{value:n,text:`${s.name} / ${n.name}`}});else{let n=[];this.source=="release"&&this.release?n=this.flash.releases[this.release]||[]:this.source=="branch"&&this.branch&&(n=this.flash.branches[this.branch].artifacts||[]),t=n.map(s=>({value:s,text:s.name.replace("quicksilver.","")}))}return this.targetSearch.length==0?t:new wd(t,{includeScore:!1,keys:["text"]}).search(this.targetSearch).map(n=>n.item)},canFlash(){return this.loading?!1:this.source=="local"?!!this.file:!!this.target}},methods:{async resetToBootloader(){this.currentTarget=await this.serial.hard_reboot()},pickRelease(){return this.releaseOptions.find(t=>!t.endsWith("-dev")&&!t.includes("-rc"))},selectTarget(t){this.target=t.value,this.targetSearch=t.text,this.dropdownHover=!1,this.dropdownActive=!1},updateFile(){const t=this.$refs.file;t.files&&t.files.length?this.file=t.files[0]:this.file=void 0},fetchFirmware(){switch(this.source){case"local":return new Promise((t,e)=>{if(!this.file)return e();const n=new FileReader;n.addEventListener("load",s=>{var i;(i=s==null?void 0:s.target)!=null&&i.result?t(s.target.result):e()}),n.readAsText(this.file)});case"release":if(this.isRuntimeTarget&&this.release){const e=this.flash.releases[this.release].find(n=>{var s;return n.name.includes((s=this.target)==null?void 0:s.mcu)});return Zc.fetchAsset(e).then(n=>n.text())}return Zc.fetchAsset(this.target).then(t=>t.text());case"branch":if(this.isRuntimeTarget&&this.branch){const e=this.flash.branches[this.branch].artifacts.find(n=>{var s;return n.name.includes((s=this.target)==null?void 0:s.mcu)});return Zc.fetchArtifact(e)}return Zc.fetchArtifact(this.target);default:return Promise.resolve(void 0)}},updateProgress(t){const e={...this.progress};e[t.task]=t,this.progress=e},onSubmit(t){t.preventDefault(),this.loading=!0;const e=new Tbe;return e.onProgress(n=>this.updateProgress(n)),e.connect().then(()=>(this.updateProgress({task:"download",current:10,total:100}),this.fetchFirmware())).then(async n=>{if(!n)throw new Error("firmware not found");this.updateProgress({task:"download",current:90,total:100});const s=Mg.parse(n);if(this.isRuntimeTarget){const i=await this.flash.fetchRuntimeConfig(this.target.target);st.info("Flash","injecting target ",this.target.target),s.patch(Sbe[this.target.mcu],i)}return this.updateProgress({task:"download",current:100,total:100}),e.flash(s)}).then(()=>this.root.append_alert({type:"success",msg:"Firmware flashed!"})).catch(n=>{st.error("Flash",n),this.root.append_alert({type:"danger",msg:"Flash failed!"})}).finally(()=>{this.progress=[],this.loading=!1})}},created(){this.loading=!0,this.flash.fetch().then(()=>{this.release=this.pickRelease(),this.branch=this.branchOptions[0]}).finally(()=>{this.loading=!1})}}),CEe={class:"columns"},OEe={class:"card"},IEe={class:"card-header"},LEe={class:"card-header-title"},PEe={class:"card-content field-is-3"},DEe={key:0,class:"field is-horizontal"},FEe=g("div",{class:"field-label is-normal"},[g("label",{class:"label"}," Current Target ")],-1),NEe={class:"field-body"},$Ee={class:"field"},UEe={class:"control is-expanded"},BEe=["value"],GEe={class:"field is-horizontal"},zEe={class:"field-label is-normal"},HEe={class:"label"},VEe={class:"field-body"},WEe={class:"field is-narrow"},jEe={class:"control"},qEe={class:"select is-fullwidth"},YEe={key:1,class:"field is-horizontal"},KEe={class:"field-label is-medium"},XEe={class:"label"},ZEe={class:"field-body"},JEe={class:"field"},QEe={class:"file-label"},e3e=["disabled"],t3e={class:"file-cta"},n3e={class:"file-icon"},s3e=g("span",{class:"file-label"}," Choose a file… ",-1),i3e={key:0,class:"file-name"},r3e={key:2,class:"field is-horizontal"},o3e={class:"field-label is-normal"},a3e={class:"label"},l3e={class:"field-body"},c3e={class:"field is-narrow"},u3e={class:"control"},d3e={class:"select is-fullwidth"},f3e={key:3,class:"field is-horizontal"},h3e={class:"field-label is-normal"},p3e={class:"label"},m3e={class:"field-body"},g3e={class:"field is-narrow"},_3e={class:"control"},b3e=["value"],y3e={key:4,class:"field is-horizontal"},v3e={class:"field-label is-normal"},w3e={class:"label"},x3e={class:"field-body"},S3e={class:"field is-narrow"},E3e={class:"control"},T3e={class:"select is-fullwidth"},A3e={key:5,class:"field is-horizontal"},M3e={class:"field-label is-normal"},k3e={class:"label"},R3e={class:"field-body"},C3e={class:"field is-narrow"},O3e={class:"control"},I3e={class:"select is-fullwidth"},L3e={class:"dropdown-trigger"},P3e={class:"field"},D3e={class:"control is-expanded has-icons-right"},F3e=["disabled"],N3e={class:"dropdown-content"},$3e=["value","onClick"],U3e={class:"column is-2"},B3e={class:"column is-10"},G3e=["value","max"],z3e={class:"card-footer"};function H3e(t,e,n,s,i,r){const o=Re("tooltip"),a=Re("spinner-btn"),l=Re("input-select"),c=Re("font-awesome-icon");return J(),se("div",CEe,[g("form",{class:"column is-12",onSubmit:e[10]||(e[10]=(...u)=>t.onSubmit&&t.onSubmit(...u))},[g("div",OEe,[g("div",IEe,[g("p",LEe,[ye(" Flash "),X(o,{entry:"flash.reset"})]),X(a,{class:"card-header-button is-info",type:"button",onClick:e[0]||(e[0]=u=>t.resetToBootloader())},{default:et(()=>[ye(" Reset to Bootloader ")]),_:1})]),g("div",PEe,[t.currentTarget?(J(),se("div",DEe,[FEe,g("div",NEe,[g("div",$Ee,[g("div",UEe,[g("input",{class:"input is-static",value:t.currentTarget,readonly:""},null,8,BEe)])])])])):qe("",!0),g("div",GEe,[g("div",zEe,[g("label",HEe,[ye(" Source "),X(o,{entry:"flash.source"})])]),g("div",VEe,[g("div",WEe,[g("div",jEe,[g("div",qEe,[X(l,{modelValue:t.source,"onUpdate:modelValue":e[1]||(e[1]=u=>t.source=u),options:t.sourceOptions,disabled:t.loading},null,8,["modelValue","options","disabled"])])])])])]),t.source=="local"?(J(),se("div",YEe,[g("div",KEe,[g("label",XEe,[ye(" File "),X(o,{entry:"flash.file-local"})])]),g("div",ZEe,[g("div",JEe,[g("div",{class:os(["file is-boxed is-medium",{"has-name":t.file}])},[g("label",QEe,[g("input",{class:"file-input",type:"file",onChange:e[2]||(e[2]=u=>t.updateFile()),ref:"file",accept:".hex",disabled:t.loading},null,40,e3e),g("span",t3e,[g("span",n3e,[X(c,{icon:"fa-solid fa-upload"})]),s3e]),t.file?(J(),se("span",i3e,Ue(t.file.name),1)):qe("",!0)])],2)])])])):qe("",!0),t.source=="branch"?(J(),se("div",r3e,[g("div",o3e,[g("label",a3e,[ye(" Branch "),X(o,{entry:"flash.file-branch"})])]),g("div",l3e,[g("div",c3e,[g("div",u3e,[g("div",d3e,[X(l,{modelValue:t.branch,"onUpdate:modelValue":e[3]||(e[3]=u=>t.branch=u),options:t.branchOptions,disabled:t.loading},null,8,["modelValue","options","disabled"])])])])])])):qe("",!0),t.source=="branch"?(J(),se("div",f3e,[g("div",h3e,[g("label",p3e,[ye(" Commit "),X(o,{entry:"flash.file-commit"})])]),g("div",m3e,[g("div",g3e,[g("div",_3e,[g("input",{class:"input is-fullwidth is-static",type:"text",value:t.flash.branches[t.branch||"develop"].commit.slice(0,8)},null,8,b3e)])])])])):qe("",!0),t.source=="release"?(J(),se("div",y3e,[g("div",v3e,[g("label",w3e,[ye(" Release "),X(o,{entry:"flash.file-release"})])]),g("div",x3e,[g("div",S3e,[g("div",E3e,[g("div",T3e,[X(l,{modelValue:t.release,"onUpdate:modelValue":e[4]||(e[4]=u=>t.release=u),options:t.releaseOptions,disabled:t.loading},null,8,["modelValue","options","disabled"])])])])])])):qe("",!0),t.source!="local"?(J(),se("div",A3e,[g("div",M3e,[g("label",k3e,[ye(" Target "),X(o,{entry:"flash.file-remote"})])]),g("div",R3e,[g("div",C3e,[g("div",O3e,[g("div",I3e,[g("div",{class:os(["dropdown",{"is-active":t.dropdownActive||t.dropdownHover}])},[g("div",L3e,[g("div",P3e,[g("p",D3e,[Ve(g("input",{class:"input is-fullwidth",type:"search",placeholder:"Search...","onUpdate:modelValue":e[5]||(e[5]=u=>t.targetSearch=u),onFocus:e[6]||(e[6]=u=>t.dropdownActive=!0),onBlur:e[7]||(e[7]=u=>t.dropdownActive=!1),disabled:t.loading},null,40,F3e),[[Je,t.targetSearch]])])])]),g("div",{class:"dropdown-menu",style:{"overflow-y":"auto","max-height":"50vh"},role:"menu",onMouseover:e[8]||(e[8]=u=>t.dropdownHover=!0),onMouseleave:e[9]||(e[9]=u=>t.dropdownHover=!1)},[g("div",N3e,[(J(!0),se(tt,null,Vt(t.targetOptions,u=>(J(),se("a",{key:u.value,value:u.value,class:os(["dropdown-item",{"is-active":t.target==u}]),onClick:XP(d=>t.selectTarget(u),["prevent"])},Ue(u.text),11,$3e))),128))])],32)],2)])])])])])):qe("",!0),(J(!0),se(tt,null,Vt(t.progress,(u,d)=>(J(),se("div",{key:d,class:"columns my-2 mx-2"},[g("div",U3e,Ue(d),1),g("div",B3e,[g("progress",{class:"progress is-primary",height:"20px",value:u.current,max:u.total},null,8,G3e)])]))),128))]),g("footer",z3e,[X(a,{class:os(["card-footer-item",{"is-loading":t.loading}]),disabled:!t.canFlash,type:"submit"},{default:et(()=>[ye(" Flash ")]),_:1},8,["class","disabled"])])])],32)])}const V3e=ot(REe,[["render",H3e]]),W3e=nt({name:"home",components:{Info:E6},methods:{}});function j3e(t,e,n,s,i,r){const o=Re("Info");return J(),fn(o)}const q3e=ot(W3e,[["render",j3e]]),GO="https://raw.githubusercontent.com/BossHobby/Templates/develop-deploy/";function Qy(t){return GO+t}const Y3e=ds("templates",{state:()=>({index:[]}),actions:{fetch_templates(){return fetch(GO+"index.json").then(e=>e.json()).then(e=>{this.index=e.map(n=>(n.image&&(n.image=Qy(n.image)),n.profile=Qy(n.profile),n))})}}}),K3e=nt({name:"TemplateModal",props:["template"],setup(){return{info:Tn(),profile:Zt()}},data(){return{selected:{},tmpl:void 0}},watch:{template(t){this.updateTemplate(t)}},computed:{formValid(){var t;for(const e of((t=this.tmpl)==null?void 0:t.options)||[])if(!this.selected[e.name])return!1;return!0},selectedValues(){var e,n;const t={};for(const s of Object.keys(this.selected)){const i=(n=(e=this.tmpl)==null?void 0:e.options)==null?void 0:n.find(r=>r.name==s);i&&(t[s]=i.entries.find(r=>r.name==this.selected[s]))}return t}},methods:{updateTemplate(t){if(!t){this.tmpl=void 0;return}const e=JSON.parse(JSON.stringify(t)),n={};for(const s of e.options||[]){for(const i of s.entries)for(const r of Object.keys(i.selector||{}))if(i.selector[r].includes(this.info[r])){i.title+=" (auto-selected)",n[s.name]=i.name;break}if(!n[s.name]){const i=s.entries.find(r=>r.name==s.default);i&&(n[s.name]=s.default,i.title+=" (auto-selected)")}}this.tmpl=e,this.selected=n},async applyTemplate(){var e,n;if(!this.tmpl)return;const t=await fetch((e=this.tmpl)==null?void 0:e.profile).then(s=>s.text()).then(s=>_o.parse(s));for(const s of this.tmpl.options||[]){const i=s.entries.find(o=>o.name==this.selected[s.name]);if(!i)continue;const r=await fetch(Qy(i.file)).then(o=>o.text()).then(o=>_o.parse(o));st.info("template","applying option",i.name),pg(t,r.profile)}if((n=this.tmpl)!=null&&n.mutations)for(const s of this.tmpl.mutations){const i=s.options.find(r=>Object.entries(r.selector).every(([o,a])=>a.includes(this.selected[o])));i&&(st.info("template","applying mutation",i.name),pg(t,i.profile))}return this.profile.merge_profile(t)}},created(){this.updateTemplate(this.template)}});const X3e={key:0,class:"card my-5"},Z3e={class:"card-content"},J3e={class:"title"},Q3e={class:"is-3"},eTe={class:"is-size-5 has-text-weight-normal has-text-grey-lighter is-pulled-right"},tTe={class:"media"},nTe={class:"media-left"},sTe={class:"image",style:{width:"300px"}},iTe=["src"],rTe={class:"media-content"},oTe={class:"m-2"},aTe=g("hr",null,null,-1),lTe={class:"field is-horizontal"},cTe={class:"field-label is-medium is-align-self-flex-start"},uTe={class:"label"},dTe={class:"is-size-5"},fTe={class:"field-body is-flex-grow-2"},hTe={class:"field"},pTe={class:"control mb-2"},mTe={class:"select is-fullwidth"},gTe=["onUpdate:modelValue"],_Te=["value"],bTe={key:0,class:"help is-danger"},yTe={key:1,class:"help has-text-grey-light"},vTe={class:"card-footer"},wTe=g("span",{class:"card-footer-item"},null,-1),xTe=g("span",{class:"card-footer-item"},null,-1),STe=g("span",{class:"card-footer-item"},null,-1);function ETe(t,e,n,s,i,r){const o=Re("font-awesome-icon"),a=Re("tooltip"),l=Re("spinner-btn");return t.tmpl?(J(),se("div",X3e,[g("div",Z3e,[g("p",J3e,[g("span",Q3e,Ue(t.tmpl.name),1),g("span",eTe,[X(o,{icon:"fa-regular fa-pen-to-square","fixed-width":""}),ye(" by "+Ue(t.tmpl.author),1)])]),g("article",tTe,[g("figure",nTe,[g("p",sTe,[g("img",{src:t.tmpl.image},null,8,iTe)])]),g("div",rTe,[g("p",oTe,Ue(t.tmpl.desc),1),aTe,(J(!0),se(tt,null,Vt(t.tmpl.options,c=>{var u,d;return J(),se("div",lTe,[g("div",cTe,[g("label",uTe,[g("span",dTe,Ue(c.title),1),X(a,{text:c.desc},null,8,["text"])])]),g("div",fTe,[g("div",hTe,[g("div",pTe,[g("div",mTe,[Ve(g("select",{"onUpdate:modelValue":f=>t.selected[c.name]=f},[(J(!0),se(tt,null,Vt(c.entries,f=>(J(),se("option",{value:f.name},Ue(f.title),9,_Te))),256))],8,gTe),[[o_,t.selected[c.name]]])])]),t.selected[c.name]?qe("",!0):(J(),se("p",bTe," Please select an option! ")),(u=t.selectedValues[c.name])!=null&&u.desc?(J(),se("p",yTe,Ue((d=t.selectedValues[c.name])==null?void 0:d.desc),1)):qe("",!0)])])])}),256))])])]),g("footer",vTe,[wTe,xTe,STe,X(l,{class:"card-footer-item is-primary",onClick:e[0]||(e[0]=c=>t.applyTemplate()),disabled:!t.formValid},{default:et(()=>[ye(" Apply ")]),_:1},8,["disabled"])])])):qe("",!0)}const TTe=ot(K3e,[["render",ETe]]),ATe=nt({name:"Templates",components:{TemplateCard:TTe},setup(){return{templates:Y3e(),profile:Zt()}},created(){this.templates.fetch_templates()}});const MTe=t=>(Xu("data-v-c380dbc8"),t=t(),Zu(),t),kTe=MTe(()=>g("section",{class:"hero is-primary"},[g("div",{class:"hero-body"},[g("h5",{class:"title is-5"}," Templates provide a way to apply configurations supplied by the community. ")])],-1));function RTe(t,e,n,s,i,r){const o=Re("TemplateCard");return J(),se(tt,null,[kTe,(J(!0),se(tt,null,Vt(t.templates.index,a=>(J(),fn(o,{key:a.name,template:a},null,8,["template"]))),128))],64)}const CTe=ot(ATe,[["render",RTe],["__scopeId","data-v-c380dbc8"]]),Ri=a7({history:TD("/develop/"),routes:[{path:"/",redirect:()=>xd().is_connected?"/profile":"/home"},{path:"/home",name:"home",component:q3e},{path:"/templates",name:"templates",component:CTe},{path:"/flash",name:"flash",component:V3e},{path:"/profile",name:"profile",component:vbe},{path:"/setup",name:"setup",component:Gee},{path:"/rates",name:"rates",component:Kue},{path:"/receiver",name:"receiver",component:Ahe},{path:"/osd",name:"osd",component:Zme},{path:"/motor",name:"motor",component:u_e},{path:"/blackbox",name:"blackbox",component:e0e},{path:"/state",name:"state",component:a0e},{path:"/perf",name:"perf",component:d0e}]});Ri.beforeEach((t,e,n)=>{xd().is_connected?t.name==="home"?n({name:"profile"}):n():t.name!=="home"&&t.name!=="flash"&&t.name!=="log"?n({name:"home"}):n()});let ev=null,tv=0;function nv(){clearInterval(ev),ev=null,tv=0}function OTe(t){nv(),ev=setInterval(async()=>{await t(tv),tv++},cg.serial.updateInterval)}const xd=ds("serial",{state:()=>({is_connected:!1,is_connecting:!1}),actions:{async poll_serial(t){if(!this.is_connected)return;const e=D8(),n=P8(),s=Js(),i=Qb();await s.fetch_state(),t%4&&(Ri.currentRoute.value.fullPath=="/receiver"&&await e.fetch_bind_info(),Ri.currentRoute.value.fullPath=="/perf"&&await n.fetch_perf_counters(),Ri.currentRoute.value.fullPath=="/setup"&&await i.update_vtx_settings())},soft_reboot(){return wt.softReboot()},serial_passthrough({port:t,baudrate:e,half_duplex:n,stop_bits:s}){const i=wn();return wt.command(qn.Serial,0,t,e,n?1:0,s).then(()=>wt.close()).then(()=>this.toggle_connection()).then(()=>{i.append_alert({type:"success",msg:"Serial passthrough successful!"})}).catch(r=>{st.error("serial",r),i.append_alert({type:"danger",msg:"Serial passthrough failed"})})},hard_reboot(){const t=wn();return wt.hardReboot().then(e=>(t.append_alert({type:"success",msg:"Reset to bootloader successful!"}),e)).catch(e=>{st.error("serial",e),t.append_alert({type:"danger",msg:"Reset to bootloader failed"})})},toggle_connection(){const t=wn(),e=Tn(),n=Q_(),s=w6(),i=Qb(),r=Ih(),o=Zt(),a=cd();return this.is_connected?(nv(),this.is_connected=!1,this.is_connecting=!1,t.reset_needs_reboot(),Ri.currentRoute.value.fullPath!="/home"&&Ri.push("/home"),wt.close()):(this.is_connecting=!0,wt.connect(l=>{st.error("serial",l),wt.close(),nv(),this.is_connected=!1,this.is_connecting=!1,t.reset_needs_reboot(),Ri.currentRoute.value.fullPath!="/home"&&Ri.push("/home")}).then(l=>{e.$reset(),n.$reset(),i.$reset(),s.$reset(),r.$reset(),o.$reset(),a.$reset(),this.is_connected=!0,e.set_info(l),e.quicVersionGte("0.2.0")&&a.fetch(),r.fetch_default_profile(),t.fetch_pid_rate_presets(),o.fetch_profile(),i.update_vtx_settings(),OTe(c=>this.poll_serial(c)),Ri.currentRoute.value.fullPath!="/profile"&&Ri.push("/profile")}).catch(l=>{st.error("serial",l),this.is_connected=!1,t.reset_needs_reboot(),t.append_alert({type:"danger",msg:"Connection to the board failed"})}).finally(()=>{this.is_connecting=!1}))}}}),ITe={xmlns:"http://www.w3.org/2000/svg","xml:space":"preserve",width:"512",height:"82"},LTe=g("g",{class:"tagline"},[g("path",{d:"M136.296 482.246c-3.928-4.12-4.077-8.114-.683-18.244 3.19-9.522 8.952-17.058 13.143-17.193 9.668-.311 18.425 10.55 16.774 20.804-.755 4.687-.449 5.607 2.558 7.673 6.313 4.338 3.485 8.076-3.563 4.708-2.557-1.223-4.29-.844-9.544 2.086-8.256 4.604-14.401 4.659-18.685.166m15.716-4.63c1.995-2.313 1.83-2.74-2.447-6.32-6.633-5.55-6.138-8.303 1.381-7.676 3.283.274 5.968-.001 5.968-.61 0-2.224-5.394-12.128-6.604-12.128-1.917 0-7.981 7.296-8.782 10.566-.393 1.603-.523 5.354-.29 8.335.325 4.158 1.041 5.523 3.076 5.861 5.595.93 6.82 1.887 3.98 3.112-1.957.844-2.098 1.17-.538 1.242 1.164.054 3.079-1.018 4.256-2.383m23.435-9.629c-1.804-1.304-4.04-3.338-4.97-4.52-2.498-3.18-8.271-15.06-10.414-21.43-2.197-6.53-1.186-7.814 6.136-7.792 4.606.014 4.676.108 9.11 12.151 4.476 12.157 6.273 15.615 8.117 15.615 1.234 0-1.904-14.511-4.603-21.287-2.441-6.128-2.617-12.966-.356-13.818.912-.343 3.52-.1 5.795.54 4.447 1.25 5.648 4.152 8.488 20.496 1.953 11.242 1.652 13.381-2.546 18.095-4.42 4.963-9.637 5.652-14.757 1.95m27.697-11.888c-2.765-5.371-17.05-35.946-17.05-36.494 0-1.53 4.494-4.892 6.539-4.892 4.898 0 18.661 26.952 18.661 36.545 0 7.683-5.12 10.725-8.15 4.84m13.574-7.875c-7.038-7.382-6.52-34.394.808-42.08 5.32-5.58 17.642-6.01 17.642-.614 0 2.81-6.538 5.432-8.747 3.509-1.442-1.256-2.13-.76-3.318 2.393-2.653 7.04-3.055 21.514-.757 27.282 1.827 4.586 2.623 5.213 6.624 5.213 2.509 0 5.32-.977 6.271-2.179 2.28-2.881 8.656-6.287 9.707-5.185 1.814 1.903.505 3.472-7.333 8.785-9.377 6.357-16.627 7.355-20.897 2.876m32.998-13.046c-4.76-8.202-12.098-29.165-11.33-32.373.852-3.563 7.223-5.934 8.791-3.272.66 1.12 1.658.312 3.015-2.439 3.844-7.796 10.167-12.986 15.824-12.986h5.144l-2.75 4.05c-1.512 2.228-4.19 7.312-5.951 11.3l-3.202 7.25 6.193 5.61c8.412 7.622 14.258 16.055 12.447 17.955-.98 1.027-3.623.131-8.834-2.996l-7.435-4.462.365 6.566c.36 6.46.285 6.595-4.66 8.415-4.969 1.828-5.053 1.8-7.617-2.618m38.038-15.437c1.54-3.388 1.888-6.477 1.24-11.008l-.9-6.297-6.712-.969c-6.928-.999-11.729-4.478-11.729-8.5 0-5.248 8.236-14.996 14.845-17.573 1.235-.481 4.1-.317 6.367.365 3.658 1.1 4.034.952 3.346-1.32-.91-3.01 2.435-7.024 5.855-7.024 4.932 0 18.662 26.966 18.662 36.652 0 5.01-2.77 8.648-5.69 7.473-.959-.386-4.968-7.673-8.91-16.193-4.987-10.784-7.72-15.268-8.991-14.756-1.005.404-2.661.735-3.68.735-2.211 0-7.676 10.642-6.756 13.156.353.966 3.312 2.462 6.575 3.323 6.661 1.76 7.964 3.896 6.82 11.183-1.684 10.715-4.886 15.463-10.429 15.463-1.839 0-1.83-.495.087-4.71m37.76-16.656c-1.415-1.789-6.44-15.67-7.435-20.542-.254-1.244-1.73-5.355-3.282-9.136-2.232-5.442-2.538-7.653-1.467-10.607 1.759-4.85 7.422-5.238 8.806-.602.514 1.722 3.308 8.451 6.209 14.955s5.804 13.275 6.451 15.048c.907 2.486 1.82 3.009 3.993 2.285 2.634-.876 5.065 1 5.119 3.95.028 1.541-10.633 6.471-14.076 6.509-1.552.016-3.495-.82-4.317-1.86m17.868-16.303c-12.8-14.501-15.169-23.045-7.13-25.72 2.349-.783 3.845.105 7.464 4.426l4.527 5.405-.7-6.911c-.874-8.61.149-15.658 2.402-16.565.944-.38 3.377-.225 5.406.344l3.69 1.035.45 22.35c.448 22.286.44 22.352-2.583 23.201-5.22 1.467-5.88 1.098-13.526-7.565m29.36-10.13c-5.437-8.588-12.008-26.864-11.354-31.575.325-2.341 2.951-4.634 9.73-8.497 9.392-5.352 17.088-7.242 14.097-3.462-.815 1.03-3.872 3.002-6.795 4.384-5.834 2.76-6.03 3.408-3.745 12.373l1.568 6.148 6.393-3.621c9.344-5.293 10.982-2.385 2.631 4.67l-6.462 5.46 3.296 5.224c1.813 2.873 3.561 5.223 3.885 5.223s3.76-2.382 7.638-5.294l7.048-5.294-1.866-4.655c-1.026-2.56-2.526-8.844-3.332-13.965-1.272-8.08-1.159-9.987.857-14.443 2.997-6.624 6.157-8.287 14.206-7.476 9.264.933 11.045 3.23 9.377 12.081l-1.33 7.051 5.447 1.52c6.165 1.722 9.868 4.691 11.53 9.249 2.477 6.794-2.384 9.956-6.118 3.979-1.147-1.836-3.966-4.293-6.265-5.46-3.88-1.972-4.448-1.925-7.893.647-3.008 2.247-3.46 3.265-2.386 5.37.729 1.428 1.325 5.155 1.325 8.282 0 4.713-.567 5.957-3.31 7.268-2.671 1.276-3.76 1.157-5.637-.62-2.154-2.037-3.02-1.643-11.611 5.282-12.23 9.856-14.769 9.874-20.925.15m37.97-48.188c-1.053-2.487-2.791 3.916-2.832 10.433-.022 3.624.22 3.35 1.846-2.087 1.03-3.443 1.473-7.199.987-8.346",style:{display:"inline",fill:"#000","fill-opacity":".29819","stroke-width":"1.35834"},transform:"matrix(1.43639 .63307 -.61952 1.40565 104.251 -703.335)"}),g("path",{d:"M137.121 482.059c-2.47-2.18-4.08-4.92-4.08-6.941 0-5.546 6.51-20.81 10.647-24.969 3.663-3.68 4.177-3.807 9.12-2.254 7.956 2.5 12.065 8.494 12.065 17.6 0 6.41.491 7.849 3.543 10.366 4.981 4.11 2.376 6.75-3.512 3.556-3.827-2.075-4.477-2.092-6.5-.171-2.887 2.74-11.256 6.414-14.609 6.414-1.426 0-4.43-1.62-6.674-3.601m14.575-3.403c3.613-2.028 3.228-3.6-2.076-8.485-2.554-2.351-4.643-4.836-4.643-5.522 0-1.744 7.576-1.56 10.824.264 2.425 1.361 2.6 1.19 1.763-1.74-1.603-5.614-5.35-11.569-7.561-12.016-3.63-.733-8.936 8.16-9.198 15.416-.228 6.32 2.002 11.452 4.323 9.947.647-.419 1.882-.304 2.746.256 1.079.7.768 1.347-.995 2.07-2.35.966-2.363 1.062-.156 1.152 1.324.054 3.562-.55 4.973-1.342m22.096-12.384c-5.114-4.709-13.165-21.055-13.401-27.205-.151-3.936.161-4.207 5.297-4.601 5.067-.389 5.512-.134 6.215 3.552 1.374 7.206 10.065 25.643 11.615 24.64 1.711-1.11 1.15-4.135-3.637-19.582-1.923-6.206-3.121-12.31-2.662-13.563.987-2.698 6.145-3.001 9.202-.541 2.203 1.773 5.4 13.165 7.025 25.024.853 6.23.647 6.86-3.755 11.477-5.766 6.047-9.971 6.258-15.9.8m30.6-9.478c-2.671-3.238-16.972-34.543-16.972-37.153 0-1.919 3.8-4.931 6.213-4.925 2.73.007 16.018 25.946 17.173 33.522.743 4.874-1.111 10.99-3.332 10.99-.59 0-1.978-1.095-3.082-2.434m13.153-7.887c-3.39-2.696-4.924-9.601-4.924-22.15 0-11.816 2.253-18.965 7.1-22.525 3.085-2.267 11.094-2.685 14.036-.733 3.16 2.098-.9 6.018-5.502 5.31-2.061-.318-4.364.201-5.116 1.152-1.812 2.29-3.157 19.762-2.014 26.152 1.235 6.901 5.95 10.177 11.303 7.852 2.131-.926 4.906-2.879 6.166-4.339 2.469-2.861 7.731-3.677 6.902-1.07-.277.872-4.314 4.002-8.972 6.956-8.898 5.643-14.822 6.703-18.98 3.395m32.48-12.847c-.709-1.412-3.795-8.925-6.859-16.696-4.437-11.255-5.286-14.686-4.174-16.867 1.793-3.513 6.696-4.955 7.682-2.26.5 1.367 1.899.074 4.403-4.068 4.373-7.231 10.41-12.06 15.077-12.06h3.387l-5.378 10.85-5.377 10.85 9.412 9.873c5.7 5.978 9.413 11.027 9.413 12.798 0 1.61-.24 2.927-.536 2.927-.294 0-4.174-2.158-8.62-4.794-4.448-2.636-8.06-4.358-8.028-3.825.031.532.55 3.641 1.153 6.91 1.233 6.684 1.247 6.663-5.418 7.975-3.942.775-5.09.474-6.137-1.613m37.602-14.74c.573-1.72 1.09-6.572 1.15-10.78l.108-7.651-5.305-1.205c-13.561-3.08-15.987-6.1-11.296-14.06 5.709-9.689 13.438-13.849 20.472-11.018 2.952 1.188 2.618 4.72-.447 4.72-2.914 0-8.066 7.863-8.066 12.31 0 2.08 1.065 3.179 3.647 3.758 9.508 2.133 9.981 2.741 9.342 12.01-.492 7.133-1.174 9.04-4.21 11.779-4.643 4.19-6.76 4.244-5.395.138m24.198-11.824c-2.671-3.238-16.971-34.543-16.971-37.153 0-1.919 3.8-4.931 6.212-4.925 2.73.007 16.018 25.946 17.173 33.522.743 4.874-1.111 10.99-3.331 10.99-.591 0-1.978-1.095-3.083-2.434m14.426-7.038c-2.73-3.164-12.82-33.08-12.825-38.024-.003-3.344 2.048-5.366 5.444-5.366.688 0 3.226 4.539 5.64 10.086 12.351 28.384 11.803 27.38 14.212 26.028 1.545-.867 2.744-.685 3.736.569 1.835 2.32-1.225 5.362-7.68 7.636-5.831 2.054-5.966 2.04-8.527-.93m19.382-13.133c-7.945-8.574-14.818-20.125-13.979-23.493.385-1.542 2.205-3.404 4.044-4.138 2.953-1.177 3.826-.72 7.446 3.897l4.1 5.231.663-11.08c.708-11.832 1.635-13.077 8.395-11.286 2.801.742 2.879 1.352 2.879 22.584 0 20.53-.157 21.885-2.653 22.911-4.443 1.827-5.222 1.496-10.895-4.626m29.094-10.433c-5.288-7.058-7.452-11.757-10.904-23.68-2.427-8.385-2.634-10.488-1.21-12.29 1.815-2.292 18.75-11.676 21.072-11.676 3.34 0 .809 3.028-5.204 6.224l-6.564 3.488 2.058 7.316c1.131 4.024 2.199 7.477 2.371 7.673s3.042-1.165 6.376-3.024c5.518-3.077 7.628-3.309 7.628-.837 0 .495-2.664 2.994-5.92 5.553l-5.92 4.652 2.273 4.06c4.122 7.366 5.033 7.492 12.92 1.794 3.992-2.883 7.258-5.466 7.258-5.74s-.881-2.858-1.958-5.743c-2.83-7.582-4.345-19.877-3.08-24.995 2.219-8.983 10.753-12.342 20.502-8.07 4.546 1.993 4.73 2.334 3.937 7.304-.457 2.868-1.178 6.534-1.601 8.148-.67 2.555-.058 3.054 4.732 3.857 6.469 1.085 11.952 6.2 11.952 11.148 0 5.168-2.678 5.979-5.643 1.71-1.425-2.051-4.399-4.71-6.61-5.91-3.756-2.037-4.245-1.997-7.488.611-1.908 1.535-3.243 3.629-2.967 4.654.277 1.024.8 4.827 1.162 8.45.596 5.961.359 6.709-2.492 7.85-2.43.973-3.802.636-5.993-1.473-1.563-1.504-3.055-2.183-3.316-1.51-.928 2.398-18.816 15.672-21.119 15.672-1.289 0-4.102-2.347-6.252-5.216m36.223-45.126c.53-3.287.335-6.159-.475-7.008-1.366-1.433-2.004 1.03-3.288 12.702-.454 4.122-.302 4.42 1.172 2.306.932-1.337 2.098-4.936 2.591-8",style:{display:"inline",fill:"#000","fill-opacity":".600917","stroke-width":"1.35834"},transform:"matrix(1.43639 .63307 -.61952 1.40565 104.251 -703.335)"}),g("path",{d:"M140.023 484.133c-1.567-.608-3.834-2.682-5.038-4.61-2.039-3.263-2.032-4.007.103-10.855 2.897-9.297 4.858-13.333 8.805-18.126 2.741-3.327 3.67-3.659 7.235-2.587 10.133 3.048 14.54 9.177 13.341 18.552-.602 4.708-.183 5.912 3.133 9.011 4.874 4.555 3.785 6.536-2.16 3.93-4.225-1.85-4.967-1.782-9.237.86-5.932 3.672-12.548 5.235-16.182 3.825m12.165-5.608 3.59-2.961-4.737-4.096c-5.847-5.054-6.376-8.76-1.09-7.641 2.006.424 4.692 1.195 5.969 1.713 4.62 1.875 1.553-8.396-4.113-13.775-2.68-2.544-2.794-2.51-6.724 2.002-7.053 8.1-6.926 23.397.198 23.656 1.657.06 2.263.427 1.346.815-1.712.724-1.01 3.249.903 3.249.588 0 2.684-1.333 4.658-2.962m19.956-14.358c-3.78-4.204-12.577-23.114-12.577-27.036 0-1.85 9.176-3.665 10.48-2.073.547.67 1.751 3.749 2.675 6.843 2.603 8.723 8.528 20.63 10.59 21.284 2.463.782 1.412-6.071-3.322-21.664-2.036-6.707-3.044-12.171-2.368-12.834.647-.636 3.092-.842 5.432-.46 4.803.786 5.562 2.462 8.922 19.692 1.499 7.684 1.634 10.994.54 13.215-2.977 6.05-5.43 7.833-10.782 7.833-4.295 0-6.076-.891-9.59-4.8m23.886-24.544c-4.736-10.018-8.61-19.083-8.61-20.144 0-1.062 1.575-2.345 3.499-2.852 4.338-1.142 6.364 1.346 13.782 16.927 6.675 14.02 7.461 24.284 1.861 24.284-1.144 0-5.413-7.383-10.532-18.215m21.82 8.692c-2.258-1.918-3.19-4.47-3.683-10.086-1.374-15.658-.86-24.065 1.755-28.693 3.73-6.603 14.366-9.748 17.893-5.291 2.322 2.935-3.734 5.869-7.616 3.69-2.292-1.287-2.884-.961-4.154 2.29-.815 2.086-1.627 8.904-1.805 15.151-.277 9.69.085 11.94 2.461 15.303 3.892 5.51 7.752 5.665 14.498.584 6.543-4.929 10.28-5.785 6.592-1.511-2.85 3.303-17.354 11.13-20.625 11.13-1.261 0-3.654-1.155-5.316-2.567m29.3-19.975c-7.07-16.514-9.128-24.042-7.293-26.673 1.806-2.592 4.753-2.926 6.806-.773 1.001 1.05 2.418-.314 4.853-4.672 3.9-6.981 9.24-11.253 14.264-11.41l3.422-.108-4.337 7.701c-7.115 12.634-7.073 13.996.65 20.777 6.436 5.651 12.096 13.43 12.096 16.623 0 .852-3.91-.705-8.688-3.46l-8.688-5.009.879 6.944c.945 7.477.7 7.89-5.514 9.286-4.037.907-4.18.752-8.45-9.226m39.746-4.654c0-.42.927-2.645 2.06-4.943 1.456-2.954 1.803-5.977 1.182-10.318-.925-6.473-1.16-6.657-10.537-8.322-9.626-1.708-11.047-5.914-5.061-14.973 4.597-6.958 9.718-9.752 15.708-8.574 5.204 1.024 6.383 4.77 1.503 4.77-2.041 0-3.632 1.217-4.648 3.556-.85 1.956-1.99 3.268-2.534 2.916-1.357-.88-1.258 6.926.106 8.357.603.632 3.587 1.78 6.632 2.55 4.748 1.202 5.599 1.977 5.976 5.447.719 6.61-1.069 13.434-4.447 16.977-2.927 3.07-5.94 4.367-5.94 2.557m16.567-31.36c-4.735-10.019-8.61-19.084-8.61-20.146 0-1.061 1.575-2.344 3.5-2.85 4.338-1.143 6.363 1.345 13.781 16.926 6.675 14.02 7.462 24.284 1.861 24.284-1.143 0-5.412-7.383-10.532-18.215m21.452 7.433c-2.708-5.637-10.349-29.474-10.894-33.987-.33-2.734.276-4.315 2.031-5.3 3.537-1.985 3.383-2.116 6.534 5.565 9.993 24.366 13.094 30.148 16.1 30.022 4.908-.207 4.553 3.214-.567 5.458-7.264 3.183-11.073 2.676-13.204-1.758m21.208-10.554c-10.82-11.469-15.525-21.196-12.389-25.616 2.16-3.042 5.816-1.887 10.057 3.179l4.116 4.917v-9.672c0-11.708.752-14.08 4.453-14.052 5.681.042 6.023 1.268 6.266 22.469.129 11.176-.133 20.941-.58 21.7s-2.073 1.726-3.613 2.148c-2.074.57-4.227-.745-8.31-5.073m27.89-11.704c-5.978-9.082-13.192-29.422-11.858-33.436.787-2.37 18.557-11.704 21.242-11.159 1.168.237-.943 1.92-4.758 3.794-3.772 1.853-6.858 4.089-6.858 4.97 0 2.697 4.173 14.62 5.099 14.567.478-.027 2.362-.944 4.185-2.038 1.824-1.093 4.784-2.01 6.579-2.037 2.834-.043 2.444.544-2.971 4.472-3.429 2.486-6.24 5.158-6.247 5.937s1.522 3.785 3.398 6.681l3.411 5.265 4.215-2.964c2.319-1.63 5.886-4.01 7.927-5.29 2.665-1.67 3.52-3.11 3.03-5.108-5.395-22.04-5.755-27.471-2.22-33.55 3.01-5.18 7.676-6.692 14.606-4.735 7.18 2.027 8.559 4.19 6.831 10.715-2.066 7.806-1.949 8.065 4.472 9.866 6.642 1.863 11.35 6.334 11.35 10.779 0 4.995-1.545 5.03-6.078.134-5.49-5.928-10.084-7.232-14.585-4.139-2.566 1.764-3.186 3.06-2.508 5.245.494 1.597 1.202 4.946 1.571 7.443 1.1 7.428-4.005 11.241-8.868 6.625-1.932-1.833-2.85-1.453-8.67 3.592-12.852 11.138-17.27 12.004-22.295 4.37m35.636-37.168c2.177-5.464 2.535-12.7.688-13.897-1.847-1.196-2.455.565-3.481 10.075-1.045 9.686-.073 11.016 2.793 3.822",style:{display:"inline",fill:"#000200","stroke-width":"1.35834"},transform:"matrix(1.43639 .63307 -.61952 1.40565 104.251 -703.335)"})],-1),PTe=[LTe];function DTe(t,e){return J(),se("svg",ITe,[...PTe])}const FTe={render:DTe},NTe={xmlns:"http://www.w3.org/2000/svg","xml:space":"preserve",width:"512",height:"130"},$Te=Pa('DEVELOP',2),UTe=[$Te];function BTe(t,e){return J(),se("svg",NTe,[...UTe])}const GTe={render:BTe},zTe=nt({name:"app",components:{LogoClean:S6,LogoText:FTe,LogoTextDevelop:GTe,RouterLink:b5,RouterView:y5,AlertPortal:PG,ModalPortal:BG},setup(){const t=ec();return{info:Tn(),profile:Zt(),state:Js(),serial:xd(),root:wn(),Features:En(()=>t.Features)}},data(){return{darkMode:!0,branch:"develop",showMenuItem:!1}},watch:{darkMode(t,e){t!=e&&document.firstElementChild&&(t?document.firstElementChild.className="theme-dark":document.firstElementChild.className="")}},computed:{availablePortOptions(){return this.serial.available.map(t=>({value:t,text:t.name}))},date(){return new Date(this.profile.meta.datetime*1e3)},connectButtonText(){return this.serial.is_connecting?"Connecting...":this.serial.is_connected?"Disconnect":"Connect"},canConnect(){return!this.serial.is_connecting&&this.$route.name!="flash"},updateProcessing(){return fl.updatePreparing()||fl.updatePending()},logDownloadAnchorRef(){return this.$refs.logDownloadAnchor}},methods:{timeAgo:dk,getDarkMode(){return localStorage.getItem("dark-mode")?localStorage.getItem("dark-mode")=="true":!window.matchMedia("(prefers-color-scheme: light)").matches},setDarkMode(t){localStorage.setItem("dark-mode",t?"true":"false"),this.darkMode=t},selectSerial(t,e){this.$modal.show(US,{title:"Serial",options:e.map(n=>({text:n.displayName+" "+n.portName,value:n.portId}))}).then(n=>t.sender.send("serial",n))},selectUSBDevice(t,e){this.$modal.show(US,{title:"USB Device",options:e.map(n=>({text:n.productName,value:n.deviceId}))}).then(n=>t.sender.send("usb-device",n))},downloadLog(){const t=st.history.join(` +`),e="data:text/plain;charset=utf-8,"+encodeURIComponent(t),n=`Log_${new Date().toISOString()}.txt`;this.logDownloadAnchorRef.setAttribute("href",e),this.logDownloadAnchorRef.setAttribute("download",n),this.logDownloadAnchorRef.click()}},created(){var t,e;this.darkMode=this.getDarkMode(),fl.updatePending()&&fl.finishUpdate(),(t=window.electron)==null||t.ipcRenderer.on("select-serial",this.selectSerial),(e=window.electron)==null||e.ipcRenderer.on("select-usb-device",this.selectUSBDevice)},unmounted(){var t,e;clearInterval(this.interval),(t=window.electron)==null||t.ipcRenderer.removeAllListeners("select-serial"),(e=window.electron)==null||e.ipcRenderer.removeAllListeners("select-usb-device")}});const c0=t=>(Xu("data-v-90888a2a"),t=t(),Zu(),t),HTe={key:0,class:"overlay","no-wrap":"","z-index":"9999"},VTe=c0(()=>g("div",{class:"text-center"},[g("span",{class:"icon"},[g("i",{class:"fas fa-spinner fa-pulse"})]),g("h1",null,"Updating...")],-1)),WTe=[VTe],jTe={class:"navbar is-fixed-top is-primary",role:"navigation","aria-label":"main navigation"},qTe={class:"navbar-brand"},YTe=c0(()=>g("span",{"aria-hidden":"true"},null,-1)),KTe=c0(()=>g("span",{"aria-hidden":"true"},null,-1)),XTe=c0(()=>g("span",{"aria-hidden":"true"},null,-1)),ZTe=[YTe,KTe,XTe],JTe={key:0,class:"navbar-start"},QTe={key:1,class:"navbar-start"},eAe={class:"navbar-end"},tAe={class:"navbar-item"},nAe={class:"buttons"},sAe={ref:"logDownloadAnchor",style:{display:"none"}},iAe={class:"container router-outlet-container"},rAe={key:1,class:"navbar is-fixed-bottom has-shadow"},oAe={class:"navbar-brand"},aAe={class:"navbar-item is-size-4"},lAe={class:"navbar-item"},cAe={class:"navbar-item",style:{"font-size":"70%"}},uAe={class:"navbar-item",style:{"font-size":"60%"}},dAe={class:"navbar-end"},fAe={class:"navbar-item"},hAe={class:"notification is-warning"},pAe={class:"notification is-warning"};function mAe(t,e,n,s,i,r){const o=Re("LogoTextDevelop"),a=Re("LogoText"),l=Re("router-link"),c=Re("font-awesome-icon"),u=Re("tooltip"),d=Re("spinner-btn"),f=Re("AlertPortal"),h=Re("ModalPortal"),_=Re("router-view");return J(),se(tt,null,[t.updateProcessing?(J(),se("div",HTe,WTe)):qe("",!0),g("nav",jTe,[g("div",qTe,[X(l,{class:"navbar-item py-1",to:"/profile"},{default:et(()=>[t.branch=="develop"?(J(),fn(o,{key:0,viewBox:"0 0 512 130",class:"text"})):(J(),fn(a,{key:1,viewBox:"0 0 512 82",class:"text"}))]),_:1}),g("a",{role:"button",class:"navbar-burger","aria-label":"menu","aria-expanded":"false","data-target":"mainMavbar",onClick:e[0]||(e[0]=p=>t.showMenuItem=!t.showMenuItem)},ZTe)]),g("div",{id:"mainMavbar",class:os(["navbar-menu",{"is-active":t.showMenuItem}])},[t.serial.is_connected?(J(),se("div",JTe,[X(l,{"active-class":"is-active",class:"navbar-item",to:"/templates"},{default:et(()=>[ye(" Templates ")]),_:1}),X(l,{"active-class":"is-active",class:"navbar-item",to:"/profile"},{default:et(()=>[ye(" Profile ")]),_:1}),X(l,{"active-class":"is-active",class:"navbar-item",to:"/setup"},{default:et(()=>[ye(" Setup ")]),_:1}),X(l,{"active-class":"is-active",class:"navbar-item",to:"/rates"},{default:et(()=>[ye(" Rates ")]),_:1}),X(l,{"active-class":"is-active",class:"navbar-item",to:"/receiver"},{default:et(()=>[ye(" Receiver ")]),_:1}),t.info.has_feature(t.Features.OSD)?(J(),fn(l,{key:0,"active-class":"is-active",class:"navbar-item",to:"/osd"},{default:et(()=>[ye(" OSD ")]),_:1})):qe("",!0),X(l,{"active-class":"is-active",class:"navbar-item",to:"/motor"},{default:et(()=>[ye(" Motor ")]),_:1}),t.info.has_feature(t.Features.BLACKBOX)&&t.info.quic_protocol_version>1?(J(),fn(l,{key:1,"active-class":"is-active",class:"navbar-item",to:"/blackbox"},{default:et(()=>[ye(" Blackbox ")]),_:1})):qe("",!0),X(l,{"active-class":"is-active",class:"navbar-item",to:"/state"},{default:et(()=>[ye(" State ")]),_:1}),t.info.has_feature(t.Features.DEBUG)&&t.info.quic_protocol_version>1?(J(),fn(l,{key:2,"active-class":"is-active",class:"navbar-item",to:"/perf"},{default:et(()=>[ye(" Perf ")]),_:1})):qe("",!0)])):(J(),se("div",QTe,[X(l,{"active-class":"is-active",class:"navbar-item",to:"/"},{default:et(()=>[ye(" Home ")]),_:1}),X(l,{"active-class":"is-active",class:"navbar-item",to:"/flash"},{default:et(()=>[ye(" Flash ")]),_:1})])),g("div",eAe,[g("div",tAe,[g("div",nAe,[g("button",{class:"button is-primary",onClick:e[1]||(e[1]=p=>t.downloadLog())},[X(u,{entry:"log.download"},{default:et(()=>[X(c,{icon:"fa-solid fa-file-export",size:"lg","fixed-width":""})]),_:1}),g("a",sAe,null,512)]),g("button",{class:"button is-primary",onClick:e[2]||(e[2]=p=>t.setDarkMode(!t.darkMode))},[t.darkMode?(J(),fn(c,{key:1,icon:"fa-solid fa-cloud-sun",size:"lg","fixed-width":""})):(J(),fn(c,{key:0,icon:"fa-solid fa-cloud-moon",size:"lg","fixed-width":""}))]),X(d,{class:"button is-primary",onClick:t.serial.toggle_connection,disabled:!t.canConnect},{default:et(()=>[ye(Ue(t.connectButtonText),1)]),_:1},8,["onClick","disabled"])])])])],2)]),X(f),X(h),g("div",iAe,[X(_)]),t.serial.is_connected?(J(),se("div",rAe,[g("div",oAe,[g("span",aAe,Ue(t.profile.meta.name),1),g("span",lAe,"Modified "+Ue(t.timeAgo(t.date)),1),g("span",cAe," Looptime "+Ue(t.state.looptime_autodetect)+" CPU Load "+Ue(t.state.cpu_load),1),g("span",uAe," CPU Temp "+Ue(t.state.cpu_temp.toFixed(2))+"°C ",1)]),g("div",dAe,[g("span",fAe,[Ve(g("div",hAe,[X(c,{icon:"fa-solid fa-triangle-exclamation"}),ye(" Unsaved changes ")],512),[[eg,t.root.needs_apply]]),Ve(g("div",pAe,[X(c,{icon:"fa-solid fa-triangle-exclamation"}),ye(" Reboot required ")],512),[[eg,!t.root.needs_apply&&t.root.needs_reboot]])]),X(d,{class:"navbar-item is-warning my-auto mx-2",onClick:e[3]||(e[3]=p=>t.serial.soft_reboot())},{default:et(()=>[ye(" Reboot ")]),_:1}),X(d,{class:"navbar-item is-primary my-auto mx-2",onClick:e[4]||(e[4]=p=>t.profile.apply_profile(t.profile.$state)),disabled:t.info.is_read_only},{default:et(()=>[ye(" Apply ")]),_:1},8,["disabled"])])])):qe("",!0)],64)}const gAe=ot(zTe,[["render",mAe],["__scopeId","data-v-90888a2a"]]),zO=d$(),_Ae=["profile"];zO.use(({store:t})=>{_Ae.includes(t.$id)&&t.$subscribe(e=>{if(e.type!="direct")return;wn().set_needs_apply()})});const bAe=nt({inheritAttrs:!1,data(){return{loading:!1}},computed:{filteredAttrs(){const t=/^on[^a-z]/,e={},{$attrs:n}=this;for(const s in n)t.test(s)||(e[s]=n[s]);return e}},methods:{clickHandler(t){const e=this.$attrs.onClick;this.loading=!0,Promise.resolve().then(()=>e?e(t):null).finally(()=>this.loading=!1)}}});function yAe(t,e,n,s,i,r){return J(),se("button",s_({class:["button",{"is-loading":t.loading}]},t.filteredAttrs,{onClick:e[0]||(e[0]=(...o)=>t.clickHandler&&t.clickHandler(...o))}),[F4(t.$slots,"default")],16)}const vAe=ot(bAe,[["render",yAe]]),wAe={text:"Use this section to change motor positions, useful when using an fc in non standard configuration"},xAe={text:"Connect a lipo to access esc settings. Change direction of rotation. Not all esc are supported, Blheli-32 does not work"},SAe={text:"Can be used to flash serial receivers via passthrough, set correct uart and Start"},EAe={"channel.aux_arming":{text:"Arm the craft, default is to also activate Idle-up"},"channel.aux_blackbox":{text:"Start/stop blackbox recording"},"channel.aux_buzzer_enable":{disabled:!0},"channel.aux_fpv_switch":{text:"Vtx Pit mode on a switch"},"channel.aux_horizon":{text:"Self levelling up to a specific angle then Acro on both Roll and Pitch, requires Level mode active"},"channel.aux_idle_up":{text:"Ensures props never stop spinning, similar to airmode, default is to use the same channel as ARM"},"channel.aux_levelmode":{text:"Accelerometer data is used to self level, needed for Racemode and Horizon"},"channel.aux_motor_test":{text:"Activate the motor test function, useful to check individual motors in the field"},"channel.aux_prearm":{text:"Allows for a separate AUX channel to be set as a safety for arming, the set AUX should be ON before the ARM switch is activated. If not used leave this as ON"},"channel.aux_racemode":{text:"Uses self levelling only on the roll axis, acro on pitch, requires Level mode active"},"channel.aux_rate_profile":{disabled:!0},"channel.aux_rssi":{text:"For fcs that can send rssi on a channel"},"channel.aux_stick_boost_profile":{disabled:!0},"channel.aux_turtle":{text:"Set this to ON and the fc will detect when landed inverted and activate Turtle when ARM is active, optional to set to an Aux switch",link:"https://docs.bosshobby.com/Features/#turtle-mode"},"filter.dterm_1_freq":{disabled:!0},"filter.dterm_1_type":{disabled:!0},"filter.dterm_2_freq":{disabled:!0},"filter.dterm_2_type":{disabled:!0},"filter.dterm_dynamic_enable":{text:"Enable a dynamic D-term filtercut, you almost always want to leave this ON",link:"https://docs.bosshobby.com/Features/#dynamic-d-term"},"filter.dterm_dynamic_max":{disabled:!0},"filter.dterm_dynamic_min":{disabled:!0},"filter.gyro_1_freq":{disabled:!0},"filter.gyro_1_type":{disabled:!0},"filter.gyro_2_freq":{disabled:!0},"filter.gyro_2_type":{disabled:!0},"filter.settings":{text:"The default filter setting are designed to be safe, before making adjustments refer to the wiki",link:"https://docs.bosshobby.com/Features/#filters"},"flash.file-branch":{text:"Development branch to flash a hex from"},"flash.file-local":{text:"Choose a self built hex"},"flash.file-release":{text:"The default selection is the latest `stable` release, dev versions are available as testers"},"flash.file-commit":{text:"The latest commit hash on the selected branch"},"flash.file-remote":{text:"Targets are named `board_name.motor_type` choose serial if your rx is separate and attatched to a uart. If you don't see your fc listed exactly then don't flash, please ask for a target in our Discord server",link:"https://discord.gg/qzyvewaCnP"},"flash.reset":{text:"Pressing the `Reset To Bootloader` button should force the fc into DFU mode for flashing, if it doesn't work use the button on the fc while connecting USB"},"flash.source":{text:"If you compile your own hex select `local` and choose it in the next box"},"log.download":{text:"Download log file"},"motor.digital_idle":{text:"Adjust in small ammounts if needed to achieve smooth idle"},"motor.dshot_time":{text:"On some fcs this might need set to 300 to avoid failloops, Default 600"},"motor.flip_gyro":{disabled:!0},"motor.gyro_orientation":{text:"Change this if the fc is mounted in a non standard way, use with the flip-gyro option until the preview model moves correctly"},"motor.invert_yaw":{text:"Default is props out"},"motor.motor_limit":{text:"Set a cap on the maximum throttle"},"motor.test":{text:"Connect a lipo, PROPS OFF, use sliders to confirm motor operation and direction"},"motor.throttle_boost":{text:"Experimental, use with caution, can rob motors of power if set too high"},"motor.torque_boost":{text:"A very experimental feature for more advanced use",link:"https://docs.bosshobby.com/Features/#torque-boost"},"motor.turtle_throttle_percent":{text:"For whoops set to 100% larger craft start at 10% and increase by 10 to suit needs",link:"https://docs.bosshobby.com/Features/#turtle-mode"},motor_pins:wAe,motor_settings:xAe,"osd.elements":{text:"Select and position OSD elements, callsign must use upper case",link:"https://docs.bosshobby.com/Features/#osd"},"osd.font":{text:"A choice of fonts are available, select and upload. You can also upload your own custom boot logo as long as it a 288x72 Black/White/Transparent PNG"},"pid.angle_strength":{text:"Angle Strength adjusts how your craft responds to external forces from bumps to stick inputs",link:"https://docs.bosshobby.com/Features/#angle-strength"},"pid.preset":{text:"Select by thrust to weight ratio or props size, these presets give a safe starting point to further tune if needed"},"pid.profile":{text:"You can have 2 different sets of pids loaded in 2 profiles"},"pid.stick_profile":{text:"Allows for adjustment to stick feel",link:"https://docs.bosshobby.com/Features/#stick-boost"},"pid.tda_active":{text:"As higher throttle levels are reached D-term gain is reduced allowing the D-term notch filter to work safely",link:"https://docs.bosshobby.com/Features/#throttle-d-term-attenuation-tda"},"pid.tda_breakpoint":{text:"Throttle percentage before TDA starts to act"},"pid.tda_percent":{text:"Percentage reduction of D-term at max throttle"},"rate.level_max_angle":{text:"Increase to give a higher velocity for racing, combined with high camera angle, to a max of 90"},"rate.low_rate_mulitplier":{disabled:!0},"rate.mode":{text:"Silverware, Betaflight and Actual rates option"},"rate.profile":{text:"2 slots available for different profiles"},"rate.sticks_deadband":{text:"If your radio has `jitter` on Pitch/Roll stick center raising this a little can help"},"rate.throttle_expo":{text:"Adding some expo will soften the stick feel around the set `Throttle Mid`"},"rate.throttle_mid":{text:"Can be set to about where your `hover point` is giving improved resolution on the stick"},"receiver.bind_saved":{text:"Once you have bind and issued stick gesture up,up,up followed by down,down,down on Pitch this will show YES"},"receiver.channel_mapping":{text:"Quicksilver default is AETR the other option is TAER"},"receiver.lqi_source":{text:"Select the source for your rssi/lqi OSD display. Direct is best for ELRS, others can use Packet-Rate"},"receiver.protocol":{text:"Serial or spi connected rx will be detected automatically here"},"serial.digital_vtx":{text:"MSP serial port for digital systems like HDZero, DJI WTF and Walksnail. HDZero requires TX and RX connected to use msp, define the UART here"},"serial.rx":{text:"Enter the UART number the serial RX is connected to (for spi RX leave as NONE)"},"serial.smart_audio":{text:"Enter the UART the VTX TX line is connected to"},serial_passthrough:SAe,"voltage.actual_battery_voltage":{text:"Default is 4.2V, set to whatever value you get from a multimeter or lipo tester for a full lipo."},"voltage.vbat_scale":{text:"Use the value provided by the FC manufacturer"},"voltage.ibat_scale":{text:"Use the value provided by the FC manufacturer"},"voltage.lipo_cell_count":{text:"Enter the number of cells, leave at 0 to use autodetect"},"voltage.pid_voltage_compensation":{text:"Adjusts the pids to compensate for lipo voltage drop, default ON"},"voltage.reported_telemetry_voltage":{text:"Set to the value received by your tx or in the OSD view with a full lipo"},"voltage.vbattlow":{text:"Set the desired voltage to trigger a warning, single cell voltage is used Default 3.3V (uses Fuel gauge volts)",link:"https://docs.bosshobby.com/Features/#voltage"}},TAe={updated(t,{value:e,oldValue:n},{transition:s}){e!==n&&(e?(s.beforeEnter(t),t.style.visibility="visible",s.enter(t)):s.leave(t,()=>{t.style.visibility="hidden"}))}},AAe=nt({props:{text:String,entry:String,size:String},directives:{visible:TAe},setup(){return{}},data(){return{placmentClass:{},visbleClick:!1,visbleHover:!1}},computed:{tooltip(){return this.text?{text:this.text}:EAe[this.entry]},danger(){return!this.tooltip||!this.tooltip.text},visible(){return this.visbleClick||this.visbleHover},active(){return(this.text||this.entry)&&(!this.tooltip||!this.tooltip.disabled)}},methods:{onClick(){this.$slots.default||(this.visbleClick=!this.visbleClick)}},mounted(){var s,i;const t=(s=this.$refs.tooltipContainer)==null?void 0:s.offsetTop,e=(i=this.$refs.tooltipContent)==null?void 0:i.clientHeight,n=t>=e;this.placmentClass={"tooltip-bottom":!n,"tooltip-top":n}}});const MAe=["id"],kAe={ref:"tooltipContent",class:"tooltip-text has-text-centered has-text-light has-background-dark"},RAe={key:0},CAe={key:0},OAe=["href"],IAe={key:1};function LAe(t,e,n,s,i,r){const o=Re("font-awesome-icon"),a=TL("visible");return t.active?(J(),se("span",{key:0,ref:"tooltipContainer",class:os(["tooltip",t.placmentClass]),onMouseenter:e[0]||(e[0]=l=>t.visbleHover=!0),onMouseleave:e[1]||(e[1]=l=>t.visbleHover=!1),onClick:e[2]||(e[2]=(...l)=>t.onClick&&t.onClick(...l))},[F4(t.$slots,"default",{},()=>[g("span",{class:os(["tooltip-icon",{"has-text-danger":t.danger,"has-text-grey":!t.danger}]),id:"tooltip-"+t.entry},[X(o,{icon:"fa-solid fa-circle-question",size:t.size,"fixed-width":""},null,8,["size"])],10,MAe)]),X($v,{name:"tooltip"},{default:et(()=>[Ve((J(),se("span",kAe,[t.danger?(J(),se("span",IAe," Missing tooltip entry "+Ue(t.entry),1)):(J(),se("span",RAe,[ye(Ue(t.tooltip.text)+" ",1),t.tooltip.link?(J(),se("div",CAe,[g("a",{target:"_blank",href:t.tooltip.link},"read more",8,OAe)])):qe("",!0)]))])),[[a,t.visible]])]),_:1})],34)):qe("",!0)}const PAe=ot(AAe,[["render",LAe]]),DAe=nt({props:["modelValue","options"],emits:["update:modelValue"],computed:{inputVal:{get(){return this.modelValue},set(t){this.$emit("update:modelValue",t)}},optionMap(){return(this.options||[]).map(t=>typeof t=="string"?{text:t,value:t}:t)}}}),FAe={class:"select"},NAe=["value"];function $Ae(t,e,n,s,i,r){return J(),se("div",FAe,[Ve(g("select",s_({"onUpdate:modelValue":e[0]||(e[0]=o=>t.inputVal=o)},t.$attrs),[(J(!0),se(tt,null,Vt(t.optionMap,o=>(J(),se("option",{key:o.value,value:o.value},Ue(o.text),9,NAe))),128))],16),[[o_,t.inputVal]])])}const UAe=ot(DAe,[["render",$Ae]]);function wM(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(t);e&&(s=s.filter(function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable})),n.push.apply(n,s)}return n}function Ge(t){for(var e=1;et.length)&&(e=t.length);for(var n=0,s=new Array(e);n-1;i--){var r=n[i],o=(r.tagName||"").toUpperCase();["STYLE","LINK"].indexOf(o)>-1&&(s=r)}return rn.head.insertBefore(e,s),t}}var uMe="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";function yh(){for(var t=12,e="";t-- >0;)e+=uMe[Math.random()*62|0];return e}function Sd(t){for(var e=[],n=(t||[]).length>>>0;n--;)e[n]=t[n];return e}function Hx(t){return t.classList?Sd(t.classList):(t.getAttribute("class")||"").split(" ").filter(function(e){return e})}function eI(t){return"".concat(t).replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}function dMe(t){return Object.keys(t||{}).reduce(function(e,n){return e+"".concat(n,'="').concat(eI(t[n]),'" ')},"").trim()}function u0(t){return Object.keys(t||{}).reduce(function(e,n){return e+"".concat(n,": ").concat(t[n].trim(),";")},"")}function Vx(t){return t.size!==br.size||t.x!==br.x||t.y!==br.y||t.rotate!==br.rotate||t.flipX||t.flipY}function fMe(t){var e=t.transform,n=t.containerWidth,s=t.iconWidth,i={transform:"translate(".concat(n/2," 256)")},r="translate(".concat(e.x*32,", ").concat(e.y*32,") "),o="scale(".concat(e.size/16*(e.flipX?-1:1),", ").concat(e.size/16*(e.flipY?-1:1),") "),a="rotate(".concat(e.rotate," 0 0)"),l={transform:"".concat(r," ").concat(o," ").concat(a)},c={transform:"translate(".concat(s/2*-1," -256)")};return{outer:i,inner:l,path:c}}function hMe(t){var e=t.transform,n=t.width,s=n===void 0?iv:n,i=t.height,r=i===void 0?iv:i,o=t.startCentered,a=o===void 0?!1:o,l="";return a&&qO?l+="translate(".concat(e.x/Wo-s/2,"em, ").concat(e.y/Wo-r/2,"em) "):a?l+="translate(calc(-50% + ".concat(e.x/Wo,"em), calc(-50% + ").concat(e.y/Wo,"em)) "):l+="translate(".concat(e.x/Wo,"em, ").concat(e.y/Wo,"em) "),l+="scale(".concat(e.size/Wo*(e.flipX?-1:1),", ").concat(e.size/Wo*(e.flipY?-1:1),") "),l+="rotate(".concat(e.rotate,"deg) "),l}var pMe=`:root, :host { + --fa-font-solid: normal 900 1em/1 "Font Awesome 6 Solid"; + --fa-font-regular: normal 400 1em/1 "Font Awesome 6 Regular"; + --fa-font-light: normal 300 1em/1 "Font Awesome 6 Light"; + --fa-font-thin: normal 100 1em/1 "Font Awesome 6 Thin"; + --fa-font-duotone: normal 900 1em/1 "Font Awesome 6 Duotone"; + --fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 6 Sharp"; + --fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 6 Sharp"; + --fa-font-sharp-light: normal 300 1em/1 "Font Awesome 6 Sharp"; + --fa-font-sharp-thin: normal 100 1em/1 "Font Awesome 6 Sharp"; + --fa-font-brands: normal 400 1em/1 "Font Awesome 6 Brands"; +} + +svg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa { + overflow: visible; + box-sizing: content-box; +} + +.svg-inline--fa { + display: var(--fa-display, inline-block); + height: 1em; + overflow: visible; + vertical-align: -0.125em; +} +.svg-inline--fa.fa-2xs { + vertical-align: 0.1em; +} +.svg-inline--fa.fa-xs { + vertical-align: 0em; +} +.svg-inline--fa.fa-sm { + vertical-align: -0.0714285705em; +} +.svg-inline--fa.fa-lg { + vertical-align: -0.2em; +} +.svg-inline--fa.fa-xl { + vertical-align: -0.25em; +} +.svg-inline--fa.fa-2xl { + vertical-align: -0.3125em; +} +.svg-inline--fa.fa-pull-left { + margin-right: var(--fa-pull-margin, 0.3em); + width: auto; +} +.svg-inline--fa.fa-pull-right { + margin-left: var(--fa-pull-margin, 0.3em); + width: auto; +} +.svg-inline--fa.fa-li { + width: var(--fa-li-width, 2em); + top: 0.25em; +} +.svg-inline--fa.fa-fw { + width: var(--fa-fw-width, 1.25em); +} + +.fa-layers svg.svg-inline--fa { + bottom: 0; + left: 0; + margin: auto; + position: absolute; + right: 0; + top: 0; +} + +.fa-layers-counter, .fa-layers-text { + display: inline-block; + position: absolute; + text-align: center; +} + +.fa-layers { + display: inline-block; + height: 1em; + position: relative; + text-align: center; + vertical-align: -0.125em; + width: 1em; +} +.fa-layers svg.svg-inline--fa { + -webkit-transform-origin: center center; + transform-origin: center center; +} + +.fa-layers-text { + left: 50%; + top: 50%; + -webkit-transform: translate(-50%, -50%); + transform: translate(-50%, -50%); + -webkit-transform-origin: center center; + transform-origin: center center; +} + +.fa-layers-counter { + background-color: var(--fa-counter-background-color, #ff253a); + border-radius: var(--fa-counter-border-radius, 1em); + box-sizing: border-box; + color: var(--fa-inverse, #fff); + line-height: var(--fa-counter-line-height, 1); + max-width: var(--fa-counter-max-width, 5em); + min-width: var(--fa-counter-min-width, 1.5em); + overflow: hidden; + padding: var(--fa-counter-padding, 0.25em 0.5em); + right: var(--fa-right, 0); + text-overflow: ellipsis; + top: var(--fa-top, 0); + -webkit-transform: scale(var(--fa-counter-scale, 0.25)); + transform: scale(var(--fa-counter-scale, 0.25)); + -webkit-transform-origin: top right; + transform-origin: top right; +} + +.fa-layers-bottom-right { + bottom: var(--fa-bottom, 0); + right: var(--fa-right, 0); + top: auto; + -webkit-transform: scale(var(--fa-layers-scale, 0.25)); + transform: scale(var(--fa-layers-scale, 0.25)); + -webkit-transform-origin: bottom right; + transform-origin: bottom right; +} + +.fa-layers-bottom-left { + bottom: var(--fa-bottom, 0); + left: var(--fa-left, 0); + right: auto; + top: auto; + -webkit-transform: scale(var(--fa-layers-scale, 0.25)); + transform: scale(var(--fa-layers-scale, 0.25)); + -webkit-transform-origin: bottom left; + transform-origin: bottom left; +} + +.fa-layers-top-right { + top: var(--fa-top, 0); + right: var(--fa-right, 0); + -webkit-transform: scale(var(--fa-layers-scale, 0.25)); + transform: scale(var(--fa-layers-scale, 0.25)); + -webkit-transform-origin: top right; + transform-origin: top right; +} + +.fa-layers-top-left { + left: var(--fa-left, 0); + right: auto; + top: var(--fa-top, 0); + -webkit-transform: scale(var(--fa-layers-scale, 0.25)); + transform: scale(var(--fa-layers-scale, 0.25)); + -webkit-transform-origin: top left; + transform-origin: top left; +} + +.fa-1x { + font-size: 1em; +} + +.fa-2x { + font-size: 2em; +} + +.fa-3x { + font-size: 3em; +} + +.fa-4x { + font-size: 4em; +} + +.fa-5x { + font-size: 5em; +} + +.fa-6x { + font-size: 6em; +} + +.fa-7x { + font-size: 7em; +} + +.fa-8x { + font-size: 8em; +} + +.fa-9x { + font-size: 9em; +} + +.fa-10x { + font-size: 10em; +} + +.fa-2xs { + font-size: 0.625em; + line-height: 0.1em; + vertical-align: 0.225em; +} + +.fa-xs { + font-size: 0.75em; + line-height: 0.0833333337em; + vertical-align: 0.125em; +} + +.fa-sm { + font-size: 0.875em; + line-height: 0.0714285718em; + vertical-align: 0.0535714295em; +} + +.fa-lg { + font-size: 1.25em; + line-height: 0.05em; + vertical-align: -0.075em; +} + +.fa-xl { + font-size: 1.5em; + line-height: 0.0416666682em; + vertical-align: -0.125em; +} + +.fa-2xl { + font-size: 2em; + line-height: 0.03125em; + vertical-align: -0.1875em; +} + +.fa-fw { + text-align: center; + width: 1.25em; +} + +.fa-ul { + list-style-type: none; + margin-left: var(--fa-li-margin, 2.5em); + padding-left: 0; +} +.fa-ul > li { + position: relative; +} + +.fa-li { + left: calc(var(--fa-li-width, 2em) * -1); + position: absolute; + text-align: center; + width: var(--fa-li-width, 2em); + line-height: inherit; +} + +.fa-border { + border-color: var(--fa-border-color, #eee); + border-radius: var(--fa-border-radius, 0.1em); + border-style: var(--fa-border-style, solid); + border-width: var(--fa-border-width, 0.08em); + padding: var(--fa-border-padding, 0.2em 0.25em 0.15em); +} + +.fa-pull-left { + float: left; + margin-right: var(--fa-pull-margin, 0.3em); +} + +.fa-pull-right { + float: right; + margin-left: var(--fa-pull-margin, 0.3em); +} + +.fa-beat { + -webkit-animation-name: fa-beat; + animation-name: fa-beat; + -webkit-animation-delay: var(--fa-animation-delay, 0s); + animation-delay: var(--fa-animation-delay, 0s); + -webkit-animation-direction: var(--fa-animation-direction, normal); + animation-direction: var(--fa-animation-direction, normal); + -webkit-animation-duration: var(--fa-animation-duration, 1s); + animation-duration: var(--fa-animation-duration, 1s); + -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite); + animation-iteration-count: var(--fa-animation-iteration-count, infinite); + -webkit-animation-timing-function: var(--fa-animation-timing, ease-in-out); + animation-timing-function: var(--fa-animation-timing, ease-in-out); +} + +.fa-bounce { + -webkit-animation-name: fa-bounce; + animation-name: fa-bounce; + -webkit-animation-delay: var(--fa-animation-delay, 0s); + animation-delay: var(--fa-animation-delay, 0s); + -webkit-animation-direction: var(--fa-animation-direction, normal); + animation-direction: var(--fa-animation-direction, normal); + -webkit-animation-duration: var(--fa-animation-duration, 1s); + animation-duration: var(--fa-animation-duration, 1s); + -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite); + animation-iteration-count: var(--fa-animation-iteration-count, infinite); + -webkit-animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1)); + animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1)); +} + +.fa-fade { + -webkit-animation-name: fa-fade; + animation-name: fa-fade; + -webkit-animation-delay: var(--fa-animation-delay, 0s); + animation-delay: var(--fa-animation-delay, 0s); + -webkit-animation-direction: var(--fa-animation-direction, normal); + animation-direction: var(--fa-animation-direction, normal); + -webkit-animation-duration: var(--fa-animation-duration, 1s); + animation-duration: var(--fa-animation-duration, 1s); + -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite); + animation-iteration-count: var(--fa-animation-iteration-count, infinite); + -webkit-animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1)); + animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1)); +} + +.fa-beat-fade { + -webkit-animation-name: fa-beat-fade; + animation-name: fa-beat-fade; + -webkit-animation-delay: var(--fa-animation-delay, 0s); + animation-delay: var(--fa-animation-delay, 0s); + -webkit-animation-direction: var(--fa-animation-direction, normal); + animation-direction: var(--fa-animation-direction, normal); + -webkit-animation-duration: var(--fa-animation-duration, 1s); + animation-duration: var(--fa-animation-duration, 1s); + -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite); + animation-iteration-count: var(--fa-animation-iteration-count, infinite); + -webkit-animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1)); + animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1)); +} + +.fa-flip { + -webkit-animation-name: fa-flip; + animation-name: fa-flip; + -webkit-animation-delay: var(--fa-animation-delay, 0s); + animation-delay: var(--fa-animation-delay, 0s); + -webkit-animation-direction: var(--fa-animation-direction, normal); + animation-direction: var(--fa-animation-direction, normal); + -webkit-animation-duration: var(--fa-animation-duration, 1s); + animation-duration: var(--fa-animation-duration, 1s); + -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite); + animation-iteration-count: var(--fa-animation-iteration-count, infinite); + -webkit-animation-timing-function: var(--fa-animation-timing, ease-in-out); + animation-timing-function: var(--fa-animation-timing, ease-in-out); +} + +.fa-shake { + -webkit-animation-name: fa-shake; + animation-name: fa-shake; + -webkit-animation-delay: var(--fa-animation-delay, 0s); + animation-delay: var(--fa-animation-delay, 0s); + -webkit-animation-direction: var(--fa-animation-direction, normal); + animation-direction: var(--fa-animation-direction, normal); + -webkit-animation-duration: var(--fa-animation-duration, 1s); + animation-duration: var(--fa-animation-duration, 1s); + -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite); + animation-iteration-count: var(--fa-animation-iteration-count, infinite); + -webkit-animation-timing-function: var(--fa-animation-timing, linear); + animation-timing-function: var(--fa-animation-timing, linear); +} + +.fa-spin { + -webkit-animation-name: fa-spin; + animation-name: fa-spin; + -webkit-animation-delay: var(--fa-animation-delay, 0s); + animation-delay: var(--fa-animation-delay, 0s); + -webkit-animation-direction: var(--fa-animation-direction, normal); + animation-direction: var(--fa-animation-direction, normal); + -webkit-animation-duration: var(--fa-animation-duration, 2s); + animation-duration: var(--fa-animation-duration, 2s); + -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite); + animation-iteration-count: var(--fa-animation-iteration-count, infinite); + -webkit-animation-timing-function: var(--fa-animation-timing, linear); + animation-timing-function: var(--fa-animation-timing, linear); +} + +.fa-spin-reverse { + --fa-animation-direction: reverse; +} + +.fa-pulse, +.fa-spin-pulse { + -webkit-animation-name: fa-spin; + animation-name: fa-spin; + -webkit-animation-direction: var(--fa-animation-direction, normal); + animation-direction: var(--fa-animation-direction, normal); + -webkit-animation-duration: var(--fa-animation-duration, 1s); + animation-duration: var(--fa-animation-duration, 1s); + -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite); + animation-iteration-count: var(--fa-animation-iteration-count, infinite); + -webkit-animation-timing-function: var(--fa-animation-timing, steps(8)); + animation-timing-function: var(--fa-animation-timing, steps(8)); +} + +@media (prefers-reduced-motion: reduce) { + .fa-beat, +.fa-bounce, +.fa-fade, +.fa-beat-fade, +.fa-flip, +.fa-pulse, +.fa-shake, +.fa-spin, +.fa-spin-pulse { + -webkit-animation-delay: -1ms; + animation-delay: -1ms; + -webkit-animation-duration: 1ms; + animation-duration: 1ms; + -webkit-animation-iteration-count: 1; + animation-iteration-count: 1; + -webkit-transition-delay: 0s; + transition-delay: 0s; + -webkit-transition-duration: 0s; + transition-duration: 0s; + } +} +@-webkit-keyframes fa-beat { + 0%, 90% { + -webkit-transform: scale(1); + transform: scale(1); + } + 45% { + -webkit-transform: scale(var(--fa-beat-scale, 1.25)); + transform: scale(var(--fa-beat-scale, 1.25)); + } +} +@keyframes fa-beat { + 0%, 90% { + -webkit-transform: scale(1); + transform: scale(1); + } + 45% { + -webkit-transform: scale(var(--fa-beat-scale, 1.25)); + transform: scale(var(--fa-beat-scale, 1.25)); + } +} +@-webkit-keyframes fa-bounce { + 0% { + -webkit-transform: scale(1, 1) translateY(0); + transform: scale(1, 1) translateY(0); + } + 10% { + -webkit-transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0); + transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0); + } + 30% { + -webkit-transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em)); + transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em)); + } + 50% { + -webkit-transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0); + transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0); + } + 57% { + -webkit-transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em)); + transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em)); + } + 64% { + -webkit-transform: scale(1, 1) translateY(0); + transform: scale(1, 1) translateY(0); + } + 100% { + -webkit-transform: scale(1, 1) translateY(0); + transform: scale(1, 1) translateY(0); + } +} +@keyframes fa-bounce { + 0% { + -webkit-transform: scale(1, 1) translateY(0); + transform: scale(1, 1) translateY(0); + } + 10% { + -webkit-transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0); + transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0); + } + 30% { + -webkit-transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em)); + transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em)); + } + 50% { + -webkit-transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0); + transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0); + } + 57% { + -webkit-transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em)); + transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em)); + } + 64% { + -webkit-transform: scale(1, 1) translateY(0); + transform: scale(1, 1) translateY(0); + } + 100% { + -webkit-transform: scale(1, 1) translateY(0); + transform: scale(1, 1) translateY(0); + } +} +@-webkit-keyframes fa-fade { + 50% { + opacity: var(--fa-fade-opacity, 0.4); + } +} +@keyframes fa-fade { + 50% { + opacity: var(--fa-fade-opacity, 0.4); + } +} +@-webkit-keyframes fa-beat-fade { + 0%, 100% { + opacity: var(--fa-beat-fade-opacity, 0.4); + -webkit-transform: scale(1); + transform: scale(1); + } + 50% { + opacity: 1; + -webkit-transform: scale(var(--fa-beat-fade-scale, 1.125)); + transform: scale(var(--fa-beat-fade-scale, 1.125)); + } +} +@keyframes fa-beat-fade { + 0%, 100% { + opacity: var(--fa-beat-fade-opacity, 0.4); + -webkit-transform: scale(1); + transform: scale(1); + } + 50% { + opacity: 1; + -webkit-transform: scale(var(--fa-beat-fade-scale, 1.125)); + transform: scale(var(--fa-beat-fade-scale, 1.125)); + } +} +@-webkit-keyframes fa-flip { + 50% { + -webkit-transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg)); + transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg)); + } +} +@keyframes fa-flip { + 50% { + -webkit-transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg)); + transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg)); + } +} +@-webkit-keyframes fa-shake { + 0% { + -webkit-transform: rotate(-15deg); + transform: rotate(-15deg); + } + 4% { + -webkit-transform: rotate(15deg); + transform: rotate(15deg); + } + 8%, 24% { + -webkit-transform: rotate(-18deg); + transform: rotate(-18deg); + } + 12%, 28% { + -webkit-transform: rotate(18deg); + transform: rotate(18deg); + } + 16% { + -webkit-transform: rotate(-22deg); + transform: rotate(-22deg); + } + 20% { + -webkit-transform: rotate(22deg); + transform: rotate(22deg); + } + 32% { + -webkit-transform: rotate(-12deg); + transform: rotate(-12deg); + } + 36% { + -webkit-transform: rotate(12deg); + transform: rotate(12deg); + } + 40%, 100% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } +} +@keyframes fa-shake { + 0% { + -webkit-transform: rotate(-15deg); + transform: rotate(-15deg); + } + 4% { + -webkit-transform: rotate(15deg); + transform: rotate(15deg); + } + 8%, 24% { + -webkit-transform: rotate(-18deg); + transform: rotate(-18deg); + } + 12%, 28% { + -webkit-transform: rotate(18deg); + transform: rotate(18deg); + } + 16% { + -webkit-transform: rotate(-22deg); + transform: rotate(-22deg); + } + 20% { + -webkit-transform: rotate(22deg); + transform: rotate(22deg); + } + 32% { + -webkit-transform: rotate(-12deg); + transform: rotate(-12deg); + } + 36% { + -webkit-transform: rotate(12deg); + transform: rotate(12deg); + } + 40%, 100% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } +} +@-webkit-keyframes fa-spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} +@keyframes fa-spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} +.fa-rotate-90 { + -webkit-transform: rotate(90deg); + transform: rotate(90deg); +} + +.fa-rotate-180 { + -webkit-transform: rotate(180deg); + transform: rotate(180deg); +} + +.fa-rotate-270 { + -webkit-transform: rotate(270deg); + transform: rotate(270deg); +} + +.fa-flip-horizontal { + -webkit-transform: scale(-1, 1); + transform: scale(-1, 1); +} + +.fa-flip-vertical { + -webkit-transform: scale(1, -1); + transform: scale(1, -1); +} + +.fa-flip-both, +.fa-flip-horizontal.fa-flip-vertical { + -webkit-transform: scale(-1, -1); + transform: scale(-1, -1); +} + +.fa-rotate-by { + -webkit-transform: rotate(var(--fa-rotate-angle, none)); + transform: rotate(var(--fa-rotate-angle, none)); +} + +.fa-stack { + display: inline-block; + vertical-align: middle; + height: 2em; + position: relative; + width: 2.5em; +} + +.fa-stack-1x, +.fa-stack-2x { + bottom: 0; + left: 0; + margin: auto; + position: absolute; + right: 0; + top: 0; + z-index: var(--fa-stack-z-index, auto); +} + +.svg-inline--fa.fa-stack-1x { + height: 1em; + width: 1.25em; +} +.svg-inline--fa.fa-stack-2x { + height: 2em; + width: 2.5em; +} + +.fa-inverse { + color: var(--fa-inverse, #fff); +} + +.sr-only, +.fa-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; +} + +.sr-only-focusable:not(:focus), +.fa-sr-only-focusable:not(:focus) { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + margin: -1px; + overflow: hidden; + clip: rect(0, 0, 0, 0); + white-space: nowrap; + border-width: 0; +} + +.svg-inline--fa .fa-primary { + fill: var(--fa-primary-color, currentColor); + opacity: var(--fa-primary-opacity, 1); +} + +.svg-inline--fa .fa-secondary { + fill: var(--fa-secondary-color, currentColor); + opacity: var(--fa-secondary-opacity, 0.4); +} + +.svg-inline--fa.fa-swap-opacity .fa-primary { + opacity: var(--fa-secondary-opacity, 0.4); +} + +.svg-inline--fa.fa-swap-opacity .fa-secondary { + opacity: var(--fa-primary-opacity, 1); +} + +.svg-inline--fa mask .fa-primary, +.svg-inline--fa mask .fa-secondary { + fill: black; +} + +.fad.fa-inverse, +.fa-duotone.fa-inverse { + color: var(--fa-inverse, #fff); +}`;function tI(){var t=YO,e=KO,n=We.cssPrefix,s=We.replacementClass,i=pMe;if(n!==t||s!==e){var r=new RegExp("\\.".concat(t,"\\-"),"g"),o=new RegExp("\\--".concat(t,"\\-"),"g"),a=new RegExp("\\.".concat(e),"g");i=i.replace(r,".".concat(n,"-")).replace(o,"--".concat(n,"-")).replace(a,".".concat(s))}return i}var kM=!1;function mb(){We.autoAddCss&&!kM&&(cMe(tI()),kM=!0)}var mMe={mixout:function(){return{dom:{css:tI,insertCss:mb}}},hooks:function(){return{beforeDOMElementCreation:function(){mb()},beforeI2svg:function(){mb()}}}},wo=Oa||{};wo[vo]||(wo[vo]={});wo[vo].styles||(wo[vo].styles={});wo[vo].hooks||(wo[vo].hooks={});wo[vo].shims||(wo[vo].shims=[]);var zi=wo[vo],nI=[],gMe=function t(){rn.removeEventListener("DOMContentLoaded",t),$g=1,nI.map(function(e){return e()})},$g=!1;ko&&($g=(rn.documentElement.doScroll?/^loaded|^c/:/^loaded|^i|^c/).test(rn.readyState),$g||rn.addEventListener("DOMContentLoaded",gMe));function _Me(t){ko&&($g?setTimeout(t,0):nI.push(t))}function Xh(t){var e=t.tag,n=t.attributes,s=n===void 0?{}:n,i=t.children,r=i===void 0?[]:i;return typeof t=="string"?eI(t):"<".concat(e," ").concat(dMe(s),">").concat(r.map(Xh).join(""),"")}function RM(t,e,n){if(t&&t[e]&&t[e][n])return{prefix:e,iconName:n,icon:t[e][n]}}var bMe=function(e,n){return function(s,i,r,o){return e.call(n,s,i,r,o)}},gb=function(e,n,s,i){var r=Object.keys(e),o=r.length,a=i!==void 0?bMe(n,i):n,l,c,u;for(s===void 0?(l=1,u=e[r[0]]):(l=0,u=s);l=55296&&i<=56319&&n=55296&&s<=56319&&n>e+1&&(i=t.charCodeAt(e+1),i>=56320&&i<=57343)?(s-55296)*1024+i-56320+65536:s}function CM(t){return Object.keys(t).reduce(function(e,n){var s=t[n],i=!!s.icon;return i?e[s.iconName]=s.icon:e[n]=s,e},{})}function av(t,e){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=n.skipHooks,i=s===void 0?!1:s,r=CM(e);typeof zi.hooks.addPack=="function"&&!i?zi.hooks.addPack(t,CM(e)):zi.styles[t]=Ge(Ge({},zi.styles[t]||{}),r),t==="fas"&&av("fa",e)}var _m,bm,ym,Jc=zi.styles,wMe=zi.shims,xMe=(_m={},Bn(_m,nn,Object.values(_h[nn])),Bn(_m,bn,Object.values(_h[bn])),_m),Wx=null,sI={},iI={},rI={},oI={},aI={},SMe=(bm={},Bn(bm,nn,Object.keys(mh[nn])),Bn(bm,bn,Object.keys(mh[bn])),bm);function EMe(t){return~iMe.indexOf(t)}function TMe(t,e){var n=e.split("-"),s=n[0],i=n.slice(1).join("-");return s===t&&i!==""&&!EMe(i)?i:null}var lI=function(){var e=function(r){return gb(Jc,function(o,a,l){return o[l]=gb(a,r,{}),o},{})};sI=e(function(i,r,o){if(r[3]&&(i[r[3]]=o),r[2]){var a=r[2].filter(function(l){return typeof l=="number"});a.forEach(function(l){i[l.toString(16)]=o})}return i}),iI=e(function(i,r,o){if(i[o]=o,r[2]){var a=r[2].filter(function(l){return typeof l=="string"});a.forEach(function(l){i[l]=o})}return i}),aI=e(function(i,r,o){var a=r[2];return i[o]=o,a.forEach(function(l){i[l]=o}),i});var n="far"in Jc||We.autoFetchSvg,s=gb(wMe,function(i,r){var o=r[0],a=r[1],l=r[2];return a==="far"&&!n&&(a="fas"),typeof o=="string"&&(i.names[o]={prefix:a,iconName:l}),typeof o=="number"&&(i.unicodes[o.toString(16)]={prefix:a,iconName:l}),i},{names:{},unicodes:{}});rI=s.names,oI=s.unicodes,Wx=d0(We.styleDefault,{family:We.familyDefault})};lMe(function(t){Wx=d0(t.styleDefault,{family:We.familyDefault})});lI();function jx(t,e){return(sI[t]||{})[e]}function AMe(t,e){return(iI[t]||{})[e]}function xl(t,e){return(aI[t]||{})[e]}function cI(t){return rI[t]||{prefix:null,iconName:null}}function MMe(t){var e=oI[t],n=jx("fas",t);return e||(n?{prefix:"fas",iconName:n}:null)||{prefix:null,iconName:null}}function Ia(){return Wx}var qx=function(){return{prefix:null,iconName:null,rest:[]}};function d0(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=e.family,s=n===void 0?nn:n,i=mh[s][t],r=gh[s][t]||gh[s][i],o=t in zi.styles?t:null;return r||o||null}var OM=(ym={},Bn(ym,nn,Object.keys(_h[nn])),Bn(ym,bn,Object.keys(_h[bn])),ym);function f0(t){var e,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},s=n.skipLookups,i=s===void 0?!1:s,r=(e={},Bn(e,nn,"".concat(We.cssPrefix,"-").concat(nn)),Bn(e,bn,"".concat(We.cssPrefix,"-").concat(bn)),e),o=null,a=nn;(t.includes(r[nn])||t.some(function(c){return OM[nn].includes(c)}))&&(a=nn),(t.includes(r[bn])||t.some(function(c){return OM[bn].includes(c)}))&&(a=bn);var l=t.reduce(function(c,u){var d=TMe(We.cssPrefix,u);if(Jc[u]?(u=xMe[a].includes(u)?JAe[a][u]:u,o=u,c.prefix=u):SMe[a].indexOf(u)>-1?(o=u,c.prefix=d0(u,{family:a})):d?c.iconName=d:u!==We.replacementClass&&u!==r[nn]&&u!==r[bn]&&c.rest.push(u),!i&&c.prefix&&c.iconName){var f=o==="fa"?cI(c.iconName):{},h=xl(c.prefix,c.iconName);f.prefix&&(o=null),c.iconName=f.iconName||h||c.iconName,c.prefix=f.prefix||c.prefix,c.prefix==="far"&&!Jc.far&&Jc.fas&&!We.autoFetchSvg&&(c.prefix="fas")}return c},qx());return(t.includes("fa-brands")||t.includes("fab"))&&(l.prefix="fab"),(t.includes("fa-duotone")||t.includes("fad"))&&(l.prefix="fad"),!l.prefix&&a===bn&&(Jc.fass||We.autoFetchSvg)&&(l.prefix="fass",l.iconName=xl(l.prefix,l.iconName)||l.iconName),(l.prefix==="fa"||o==="fa")&&(l.prefix=Ia()||"fas"),l}var kMe=function(){function t(){BAe(this,t),this.definitions={}}return GAe(t,[{key:"add",value:function(){for(var n=this,s=arguments.length,i=new Array(s),r=0;r0&&u.forEach(function(d){typeof d=="string"&&(n[a][d]=c)}),n[a][l]=c}),n}}]),t}(),IM=[],Qc={},gu={},RMe=Object.keys(gu);function CMe(t,e){var n=e.mixoutsTo;return IM=t,Qc={},Object.keys(gu).forEach(function(s){RMe.indexOf(s)===-1&&delete gu[s]}),IM.forEach(function(s){var i=s.mixout?s.mixout():{};if(Object.keys(i).forEach(function(o){typeof i[o]=="function"&&(n[o]=i[o]),Ng(i[o])==="object"&&Object.keys(i[o]).forEach(function(a){n[o]||(n[o]={}),n[o][a]=i[o][a]})}),s.hooks){var r=s.hooks();Object.keys(r).forEach(function(o){Qc[o]||(Qc[o]=[]),Qc[o].push(r[o])})}s.provides&&s.provides(gu)}),n}function lv(t,e){for(var n=arguments.length,s=new Array(n>2?n-2:0),i=2;i1?e-1:0),s=1;s0&&arguments[0]!==void 0?arguments[0]:{};return ko?(Yl("beforeI2svg",e),xo("pseudoElements2svg",e),xo("i2svg",e)):Promise.reject("Operation requires a DOM of some kind.")},watch:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=e.autoReplaceSvgRoot;We.autoReplaceSvg===!1&&(We.autoReplaceSvg=!0),We.observeMutations=!0,_Me(function(){PMe({autoReplaceSvgRoot:n}),Yl("watch",e)})}},LMe={icon:function(e){if(e===null)return null;if(Ng(e)==="object"&&e.prefix&&e.iconName)return{prefix:e.prefix,iconName:xl(e.prefix,e.iconName)||e.iconName};if(Array.isArray(e)&&e.length===2){var n=e[1].indexOf("fa-")===0?e[1].slice(3):e[1],s=d0(e[0]);return{prefix:s,iconName:xl(s,n)||n}}if(typeof e=="string"&&(e.indexOf("".concat(We.cssPrefix,"-"))>-1||e.match(QAe))){var i=f0(e.split(" "),{skipLookups:!0});return{prefix:i.prefix||Ia(),iconName:xl(i.prefix,i.iconName)||i.iconName}}if(typeof e=="string"){var r=Ia();return{prefix:r,iconName:xl(r,e)||e}}}},Qs={noAuto:OMe,config:We,dom:IMe,parse:LMe,library:uI,findIconDefinition:cv,toHtml:Xh},PMe=function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=e.autoReplaceSvgRoot,s=n===void 0?rn:n;(Object.keys(zi.styles).length>0||We.autoFetchSvg)&&ko&&We.autoReplaceSvg&&Qs.dom.i2svg({node:s})};function h0(t,e){return Object.defineProperty(t,"abstract",{get:e}),Object.defineProperty(t,"html",{get:function(){return t.abstract.map(function(s){return Xh(s)})}}),Object.defineProperty(t,"node",{get:function(){if(ko){var s=rn.createElement("div");return s.innerHTML=t.html,s.children}}}),t}function DMe(t){var e=t.children,n=t.main,s=t.mask,i=t.attributes,r=t.styles,o=t.transform;if(Vx(o)&&n.found&&!s.found){var a=n.width,l=n.height,c={x:a/l/2,y:.5};i.style=u0(Ge(Ge({},r),{},{"transform-origin":"".concat(c.x+o.x/16,"em ").concat(c.y+o.y/16,"em")}))}return[{tag:"svg",attributes:i,children:e}]}function FMe(t){var e=t.prefix,n=t.iconName,s=t.children,i=t.attributes,r=t.symbol,o=r===!0?"".concat(e,"-").concat(We.cssPrefix,"-").concat(n):r;return[{tag:"svg",attributes:{style:"display: none;"},children:[{tag:"symbol",attributes:Ge(Ge({},i),{},{id:o}),children:s}]}]}function Yx(t){var e=t.icons,n=e.main,s=e.mask,i=t.prefix,r=t.iconName,o=t.transform,a=t.symbol,l=t.title,c=t.maskId,u=t.titleId,d=t.extra,f=t.watchable,h=f===void 0?!1:f,_=s.found?s:n,p=_.width,m=_.height,b=i==="fak",y=[We.replacementClass,r?"".concat(We.cssPrefix,"-").concat(r):""].filter(function(A){return d.classes.indexOf(A)===-1}).filter(function(A){return A!==""||!!A}).concat(d.classes).join(" "),v={children:[],attributes:Ge(Ge({},d.attributes),{},{"data-prefix":i,"data-icon":r,class:y,role:d.attributes.role||"img",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 ".concat(p," ").concat(m)})},x=b&&!~d.classes.indexOf("fa-fw")?{width:"".concat(p/m*16*.0625,"em")}:{};h&&(v.attributes[ql]=""),l&&(v.children.push({tag:"title",attributes:{id:v.attributes["aria-labelledby"]||"title-".concat(u||yh())},children:[l]}),delete v.attributes.title);var S=Ge(Ge({},v),{},{prefix:i,iconName:r,main:n,mask:s,maskId:c,transform:o,symbol:a,styles:Ge(Ge({},x),d.styles)}),w=s.found&&n.found?xo("generateAbstractMask",S)||{children:[],attributes:{}}:xo("generateAbstractIcon",S)||{children:[],attributes:{}},T=w.children,E=w.attributes;return S.children=T,S.attributes=E,a?FMe(S):DMe(S)}function LM(t){var e=t.content,n=t.width,s=t.height,i=t.transform,r=t.title,o=t.extra,a=t.watchable,l=a===void 0?!1:a,c=Ge(Ge(Ge({},o.attributes),r?{title:r}:{}),{},{class:o.classes.join(" ")});l&&(c[ql]="");var u=Ge({},o.styles);Vx(i)&&(u.transform=hMe({transform:i,startCentered:!0,width:n,height:s}),u["-webkit-transform"]=u.transform);var d=u0(u);d.length>0&&(c.style=d);var f=[];return f.push({tag:"span",attributes:c,children:[e]}),r&&f.push({tag:"span",attributes:{class:"sr-only"},children:[r]}),f}function NMe(t){var e=t.content,n=t.title,s=t.extra,i=Ge(Ge(Ge({},s.attributes),n?{title:n}:{}),{},{class:s.classes.join(" ")}),r=u0(s.styles);r.length>0&&(i.style=r);var o=[];return o.push({tag:"span",attributes:i,children:[e]}),n&&o.push({tag:"span",attributes:{class:"sr-only"},children:[n]}),o}var _b=zi.styles;function uv(t){var e=t[0],n=t[1],s=t.slice(4),i=$x(s,1),r=i[0],o=null;return Array.isArray(r)?o={tag:"g",attributes:{class:"".concat(We.cssPrefix,"-").concat(wl.GROUP)},children:[{tag:"path",attributes:{class:"".concat(We.cssPrefix,"-").concat(wl.SECONDARY),fill:"currentColor",d:r[0]}},{tag:"path",attributes:{class:"".concat(We.cssPrefix,"-").concat(wl.PRIMARY),fill:"currentColor",d:r[1]}}]}:o={tag:"path",attributes:{fill:"currentColor",d:r}},{found:!0,width:e,height:n,icon:o}}var $Me={found:!1,width:512,height:512};function UMe(t,e){!XO&&!We.showMissingIcons&&t&&console.error('Icon with name "'.concat(t,'" and prefix "').concat(e,'" is missing.'))}function dv(t,e){var n=e;return e==="fa"&&We.styleDefault!==null&&(e=Ia()),new Promise(function(s,i){if(xo("missingIconAbstract"),n==="fa"){var r=cI(t)||{};t=r.iconName||t,e=r.prefix||e}if(t&&e&&_b[e]&&_b[e][t]){var o=_b[e][t];return s(uv(o))}UMe(t,e),s(Ge(Ge({},$Me),{},{icon:We.showMissingIcons&&t?xo("missingIconAbstract")||{}:{}}))})}var PM=function(){},fv=We.measurePerformance&&dm&&dm.mark&&dm.measure?dm:{mark:PM,measure:PM},uf='FA "6.5.1"',BMe=function(e){return fv.mark("".concat(uf," ").concat(e," begins")),function(){return dI(e)}},dI=function(e){fv.mark("".concat(uf," ").concat(e," ends")),fv.measure("".concat(uf," ").concat(e),"".concat(uf," ").concat(e," begins"),"".concat(uf," ").concat(e," ends"))},Kx={begin:BMe,end:dI},Wm=function(){};function DM(t){var e=t.getAttribute?t.getAttribute(ql):null;return typeof e=="string"}function GMe(t){var e=t.getAttribute?t.getAttribute(Bx):null,n=t.getAttribute?t.getAttribute(Gx):null;return e&&n}function zMe(t){return t&&t.classList&&t.classList.contains&&t.classList.contains(We.replacementClass)}function HMe(){if(We.autoReplaceSvg===!0)return jm.replace;var t=jm[We.autoReplaceSvg];return t||jm.replace}function VMe(t){return rn.createElementNS("http://www.w3.org/2000/svg",t)}function WMe(t){return rn.createElement(t)}function fI(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=e.ceFn,s=n===void 0?t.tag==="svg"?VMe:WMe:n;if(typeof t=="string")return rn.createTextNode(t);var i=s(t.tag);Object.keys(t.attributes||[]).forEach(function(o){i.setAttribute(o,t.attributes[o])});var r=t.children||[];return r.forEach(function(o){i.appendChild(fI(o,{ceFn:s}))}),i}function jMe(t){var e=" ".concat(t.outerHTML," ");return e="".concat(e,"Font Awesome fontawesome.com "),e}var jm={replace:function(e){var n=e[0];if(n.parentNode)if(e[1].forEach(function(i){n.parentNode.insertBefore(fI(i),n)}),n.getAttribute(ql)===null&&We.keepOriginalSource){var s=rn.createComment(jMe(n));n.parentNode.replaceChild(s,n)}else n.remove()},nest:function(e){var n=e[0],s=e[1];if(~Hx(n).indexOf(We.replacementClass))return jm.replace(e);var i=new RegExp("".concat(We.cssPrefix,"-.*"));if(delete s[0].attributes.id,s[0].attributes.class){var r=s[0].attributes.class.split(" ").reduce(function(a,l){return l===We.replacementClass||l.match(i)?a.toSvg.push(l):a.toNode.push(l),a},{toNode:[],toSvg:[]});s[0].attributes.class=r.toSvg.join(" "),r.toNode.length===0?n.removeAttribute("class"):n.setAttribute("class",r.toNode.join(" "))}var o=s.map(function(a){return Xh(a)}).join(` +`);n.setAttribute(ql,""),n.innerHTML=o}};function FM(t){t()}function hI(t,e){var n=typeof e=="function"?e:Wm;if(t.length===0)n();else{var s=FM;We.mutateApproach===XAe&&(s=Oa.requestAnimationFrame||FM),s(function(){var i=HMe(),r=Kx.begin("mutate");t.map(i),r(),n()})}}var Xx=!1;function pI(){Xx=!0}function hv(){Xx=!1}var Ug=null;function NM(t){if(AM&&We.observeMutations){var e=t.treeCallback,n=e===void 0?Wm:e,s=t.nodeCallback,i=s===void 0?Wm:s,r=t.pseudoElementsCallback,o=r===void 0?Wm:r,a=t.observeMutationsRoot,l=a===void 0?rn:a;Ug=new AM(function(c){if(!Xx){var u=Ia();Sd(c).forEach(function(d){if(d.type==="childList"&&d.addedNodes.length>0&&!DM(d.addedNodes[0])&&(We.searchPseudoElements&&o(d.target),n(d.target)),d.type==="attributes"&&d.target.parentNode&&We.searchPseudoElements&&o(d.target.parentNode),d.type==="attributes"&&DM(d.target)&&~sMe.indexOf(d.attributeName))if(d.attributeName==="class"&&GMe(d.target)){var f=f0(Hx(d.target)),h=f.prefix,_=f.iconName;d.target.setAttribute(Bx,h||u),_&&d.target.setAttribute(Gx,_)}else zMe(d.target)&&i(d.target)})}}),ko&&Ug.observe(l,{childList:!0,attributes:!0,characterData:!0,subtree:!0})}}function qMe(){Ug&&Ug.disconnect()}function YMe(t){var e=t.getAttribute("style"),n=[];return e&&(n=e.split(";").reduce(function(s,i){var r=i.split(":"),o=r[0],a=r.slice(1);return o&&a.length>0&&(s[o]=a.join(":").trim()),s},{})),n}function KMe(t){var e=t.getAttribute("data-prefix"),n=t.getAttribute("data-icon"),s=t.innerText!==void 0?t.innerText.trim():"",i=f0(Hx(t));return i.prefix||(i.prefix=Ia()),e&&n&&(i.prefix=e,i.iconName=n),i.iconName&&i.prefix||(i.prefix&&s.length>0&&(i.iconName=AMe(i.prefix,t.innerText)||jx(i.prefix,ov(t.innerText))),!i.iconName&&We.autoFetchSvg&&t.firstChild&&t.firstChild.nodeType===Node.TEXT_NODE&&(i.iconName=t.firstChild.data)),i}function XMe(t){var e=Sd(t.attributes).reduce(function(i,r){return i.name!=="class"&&i.name!=="style"&&(i[r.name]=r.value),i},{}),n=t.getAttribute("title"),s=t.getAttribute("data-fa-title-id");return We.autoA11y&&(n?e["aria-labelledby"]="".concat(We.replacementClass,"-title-").concat(s||yh()):(e["aria-hidden"]="true",e.focusable="false")),e}function ZMe(){return{iconName:null,title:null,titleId:null,prefix:null,transform:br,symbol:!1,mask:{iconName:null,prefix:null,rest:[]},maskId:null,extra:{classes:[],styles:{},attributes:{}}}}function $M(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{styleParser:!0},n=KMe(t),s=n.iconName,i=n.prefix,r=n.rest,o=XMe(t),a=lv("parseNodeAttributes",{},t),l=e.styleParser?YMe(t):[];return Ge({iconName:s,title:t.getAttribute("title"),titleId:t.getAttribute("data-fa-title-id"),prefix:i,transform:br,mask:{iconName:null,prefix:null,rest:[]},maskId:null,symbol:!1,extra:{classes:r,styles:l,attributes:o}},a)}var JMe=zi.styles;function mI(t){var e=We.autoReplaceSvg==="nest"?$M(t,{styleParser:!1}):$M(t);return~e.extra.classes.indexOf(ZO)?xo("generateLayersText",t,e):xo("generateSvgReplacementMutation",t,e)}var La=new Set;zx.map(function(t){La.add("fa-".concat(t))});Object.keys(mh[nn]).map(La.add.bind(La));Object.keys(mh[bn]).map(La.add.bind(La));La=Yh(La);function UM(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;if(!ko)return Promise.resolve();var n=rn.documentElement.classList,s=function(d){return n.add("".concat(MM,"-").concat(d))},i=function(d){return n.remove("".concat(MM,"-").concat(d))},r=We.autoFetchSvg?La:zx.map(function(u){return"fa-".concat(u)}).concat(Object.keys(JMe));r.includes("fa")||r.push("fa");var o=[".".concat(ZO,":not([").concat(ql,"])")].concat(r.map(function(u){return".".concat(u,":not([").concat(ql,"])")})).join(", ");if(o.length===0)return Promise.resolve();var a=[];try{a=Sd(t.querySelectorAll(o))}catch{}if(a.length>0)s("pending"),i("complete");else return Promise.resolve();var l=Kx.begin("onTree"),c=a.reduce(function(u,d){try{var f=mI(d);f&&u.push(f)}catch(h){XO||h.name==="MissingIcon"&&console.error(h)}return u},[]);return new Promise(function(u,d){Promise.all(c).then(function(f){hI(f,function(){s("active"),s("complete"),i("pending"),typeof e=="function"&&e(),l(),u()})}).catch(function(f){l(),d(f)})})}function QMe(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;mI(t).then(function(n){n&&hI([n],e)})}function e4e(t){return function(e){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},s=(e||{}).icon?e:cv(e||{}),i=n.mask;return i&&(i=(i||{}).icon?i:cv(i||{})),t(s,Ge(Ge({},n),{},{mask:i}))}}var t4e=function(e){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},s=n.transform,i=s===void 0?br:s,r=n.symbol,o=r===void 0?!1:r,a=n.mask,l=a===void 0?null:a,c=n.maskId,u=c===void 0?null:c,d=n.title,f=d===void 0?null:d,h=n.titleId,_=h===void 0?null:h,p=n.classes,m=p===void 0?[]:p,b=n.attributes,y=b===void 0?{}:b,v=n.styles,x=v===void 0?{}:v;if(e){var S=e.prefix,w=e.iconName,T=e.icon;return h0(Ge({type:"icon"},e),function(){return Yl("beforeDOMElementCreation",{iconDefinition:e,params:n}),We.autoA11y&&(f?y["aria-labelledby"]="".concat(We.replacementClass,"-title-").concat(_||yh()):(y["aria-hidden"]="true",y.focusable="false")),Yx({icons:{main:uv(T),mask:l?uv(l.icon):{found:!1,width:null,height:null,icon:{}}},prefix:S,iconName:w,transform:Ge(Ge({},br),i),symbol:o,title:f,maskId:u,titleId:_,extra:{attributes:y,styles:x,classes:m}})})}},n4e={mixout:function(){return{icon:e4e(t4e)}},hooks:function(){return{mutationObserverCallbacks:function(n){return n.treeCallback=UM,n.nodeCallback=QMe,n}}},provides:function(e){e.i2svg=function(n){var s=n.node,i=s===void 0?rn:s,r=n.callback,o=r===void 0?function(){}:r;return UM(i,o)},e.generateSvgReplacementMutation=function(n,s){var i=s.iconName,r=s.title,o=s.titleId,a=s.prefix,l=s.transform,c=s.symbol,u=s.mask,d=s.maskId,f=s.extra;return new Promise(function(h,_){Promise.all([dv(i,a),u.iconName?dv(u.iconName,u.prefix):Promise.resolve({found:!1,width:512,height:512,icon:{}})]).then(function(p){var m=$x(p,2),b=m[0],y=m[1];h([n,Yx({icons:{main:b,mask:y},prefix:a,iconName:i,transform:l,symbol:c,maskId:d,title:r,titleId:o,extra:f,watchable:!0})])}).catch(_)})},e.generateAbstractIcon=function(n){var s=n.children,i=n.attributes,r=n.main,o=n.transform,a=n.styles,l=u0(a);l.length>0&&(i.style=l);var c;return Vx(o)&&(c=xo("generateAbstractTransformGrouping",{main:r,transform:o,containerWidth:r.width,iconWidth:r.width})),s.push(c||r.icon),{children:s,attributes:i}}}},s4e={mixout:function(){return{layer:function(n){var s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=s.classes,r=i===void 0?[]:i;return h0({type:"layer"},function(){Yl("beforeDOMElementCreation",{assembler:n,params:s});var o=[];return n(function(a){Array.isArray(a)?a.map(function(l){o=o.concat(l.abstract)}):o=o.concat(a.abstract)}),[{tag:"span",attributes:{class:["".concat(We.cssPrefix,"-layers")].concat(Yh(r)).join(" ")},children:o}]})}}}},i4e={mixout:function(){return{counter:function(n){var s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=s.title,r=i===void 0?null:i,o=s.classes,a=o===void 0?[]:o,l=s.attributes,c=l===void 0?{}:l,u=s.styles,d=u===void 0?{}:u;return h0({type:"counter",content:n},function(){return Yl("beforeDOMElementCreation",{content:n,params:s}),NMe({content:n.toString(),title:r,extra:{attributes:c,styles:d,classes:["".concat(We.cssPrefix,"-layers-counter")].concat(Yh(a))}})})}}}},r4e={mixout:function(){return{text:function(n){var s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=s.transform,r=i===void 0?br:i,o=s.title,a=o===void 0?null:o,l=s.classes,c=l===void 0?[]:l,u=s.attributes,d=u===void 0?{}:u,f=s.styles,h=f===void 0?{}:f;return h0({type:"text",content:n},function(){return Yl("beforeDOMElementCreation",{content:n,params:s}),LM({content:n,transform:Ge(Ge({},br),r),title:a,extra:{attributes:d,styles:h,classes:["".concat(We.cssPrefix,"-layers-text")].concat(Yh(c))}})})}}},provides:function(e){e.generateLayersText=function(n,s){var i=s.title,r=s.transform,o=s.extra,a=null,l=null;if(qO){var c=parseInt(getComputedStyle(n).fontSize,10),u=n.getBoundingClientRect();a=u.width/c,l=u.height/c}return We.autoA11y&&!i&&(o.attributes["aria-hidden"]="true"),Promise.resolve([n,LM({content:n.innerHTML,width:a,height:l,transform:r,title:i,extra:o,watchable:!0})])}}},o4e=new RegExp('"',"ug"),BM=[1105920,1112319];function a4e(t){var e=t.replace(o4e,""),n=vMe(e,0),s=n>=BM[0]&&n<=BM[1],i=e.length===2?e[0]===e[1]:!1;return{value:ov(i?e[0]:e),isSecondary:s||i}}function GM(t,e){var n="".concat(KAe).concat(e.replace(":","-"));return new Promise(function(s,i){if(t.getAttribute(n)!==null)return s();var r=Sd(t.children),o=r.filter(function(T){return T.getAttribute(rv)===e})[0],a=Oa.getComputedStyle(t,e),l=a.getPropertyValue("font-family").match(eMe),c=a.getPropertyValue("font-weight"),u=a.getPropertyValue("content");if(o&&!l)return t.removeChild(o),s();if(l&&u!=="none"&&u!==""){var d=a.getPropertyValue("content"),f=~["Sharp"].indexOf(l[2])?bn:nn,h=~["Solid","Regular","Light","Thin","Duotone","Brands","Kit"].indexOf(l[2])?gh[f][l[2].toLowerCase()]:tMe[f][c],_=a4e(d),p=_.value,m=_.isSecondary,b=l[0].startsWith("FontAwesome"),y=jx(h,p),v=y;if(b){var x=MMe(p);x.iconName&&x.prefix&&(y=x.iconName,h=x.prefix)}if(y&&!m&&(!o||o.getAttribute(Bx)!==h||o.getAttribute(Gx)!==v)){t.setAttribute(n,v),o&&t.removeChild(o);var S=ZMe(),w=S.extra;w.attributes[rv]=e,dv(y,h).then(function(T){var E=Yx(Ge(Ge({},S),{},{icons:{main:T,mask:qx()},prefix:h,iconName:v,extra:w,watchable:!0})),A=rn.createElementNS("http://www.w3.org/2000/svg","svg");e==="::before"?t.insertBefore(A,t.firstChild):t.appendChild(A),A.outerHTML=E.map(function(O){return Xh(O)}).join(` +`),t.removeAttribute(n),s()}).catch(i)}else s()}else s()})}function l4e(t){return Promise.all([GM(t,"::before"),GM(t,"::after")])}function c4e(t){return t.parentNode!==document.head&&!~ZAe.indexOf(t.tagName.toUpperCase())&&!t.getAttribute(rv)&&(!t.parentNode||t.parentNode.tagName!=="svg")}function zM(t){if(ko)return new Promise(function(e,n){var s=Sd(t.querySelectorAll("*")).filter(c4e).map(l4e),i=Kx.begin("searchPseudoElements");pI(),Promise.all(s).then(function(){i(),hv(),e()}).catch(function(){i(),hv(),n()})})}var u4e={hooks:function(){return{mutationObserverCallbacks:function(n){return n.pseudoElementsCallback=zM,n}}},provides:function(e){e.pseudoElements2svg=function(n){var s=n.node,i=s===void 0?rn:s;We.searchPseudoElements&&zM(i)}}},HM=!1,d4e={mixout:function(){return{dom:{unwatch:function(){pI(),HM=!0}}}},hooks:function(){return{bootstrap:function(){NM(lv("mutationObserverCallbacks",{}))},noAuto:function(){qMe()},watch:function(n){var s=n.observeMutationsRoot;HM?hv():NM(lv("mutationObserverCallbacks",{observeMutationsRoot:s}))}}}},VM=function(e){var n={size:16,x:0,y:0,flipX:!1,flipY:!1,rotate:0};return e.toLowerCase().split(" ").reduce(function(s,i){var r=i.toLowerCase().split("-"),o=r[0],a=r.slice(1).join("-");if(o&&a==="h")return s.flipX=!0,s;if(o&&a==="v")return s.flipY=!0,s;if(a=parseFloat(a),isNaN(a))return s;switch(o){case"grow":s.size=s.size+a;break;case"shrink":s.size=s.size-a;break;case"left":s.x=s.x-a;break;case"right":s.x=s.x+a;break;case"up":s.y=s.y-a;break;case"down":s.y=s.y+a;break;case"rotate":s.rotate=s.rotate+a;break}return s},n)},f4e={mixout:function(){return{parse:{transform:function(n){return VM(n)}}}},hooks:function(){return{parseNodeAttributes:function(n,s){var i=s.getAttribute("data-fa-transform");return i&&(n.transform=VM(i)),n}}},provides:function(e){e.generateAbstractTransformGrouping=function(n){var s=n.main,i=n.transform,r=n.containerWidth,o=n.iconWidth,a={transform:"translate(".concat(r/2," 256)")},l="translate(".concat(i.x*32,", ").concat(i.y*32,") "),c="scale(".concat(i.size/16*(i.flipX?-1:1),", ").concat(i.size/16*(i.flipY?-1:1),") "),u="rotate(".concat(i.rotate," 0 0)"),d={transform:"".concat(l," ").concat(c," ").concat(u)},f={transform:"translate(".concat(o/2*-1," -256)")},h={outer:a,inner:d,path:f};return{tag:"g",attributes:Ge({},h.outer),children:[{tag:"g",attributes:Ge({},h.inner),children:[{tag:s.icon.tag,children:s.icon.children,attributes:Ge(Ge({},s.icon.attributes),h.path)}]}]}}}},bb={x:0,y:0,width:"100%",height:"100%"};function WM(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return t.attributes&&(t.attributes.fill||e)&&(t.attributes.fill="black"),t}function h4e(t){return t.tag==="g"?t.children:[t]}var p4e={hooks:function(){return{parseNodeAttributes:function(n,s){var i=s.getAttribute("data-fa-mask"),r=i?f0(i.split(" ").map(function(o){return o.trim()})):qx();return r.prefix||(r.prefix=Ia()),n.mask=r,n.maskId=s.getAttribute("data-fa-mask-id"),n}}},provides:function(e){e.generateAbstractMask=function(n){var s=n.children,i=n.attributes,r=n.main,o=n.mask,a=n.maskId,l=n.transform,c=r.width,u=r.icon,d=o.width,f=o.icon,h=fMe({transform:l,containerWidth:d,iconWidth:c}),_={tag:"rect",attributes:Ge(Ge({},bb),{},{fill:"white"})},p=u.children?{children:u.children.map(WM)}:{},m={tag:"g",attributes:Ge({},h.inner),children:[WM(Ge({tag:u.tag,attributes:Ge(Ge({},u.attributes),h.path)},p))]},b={tag:"g",attributes:Ge({},h.outer),children:[m]},y="mask-".concat(a||yh()),v="clip-".concat(a||yh()),x={tag:"mask",attributes:Ge(Ge({},bb),{},{id:y,maskUnits:"userSpaceOnUse",maskContentUnits:"userSpaceOnUse"}),children:[_,b]},S={tag:"defs",children:[{tag:"clipPath",attributes:{id:v},children:h4e(f)},x]};return s.push(S,{tag:"rect",attributes:Ge({fill:"currentColor","clip-path":"url(#".concat(v,")"),mask:"url(#".concat(y,")")},bb)}),{children:s,attributes:i}}}},m4e={provides:function(e){var n=!1;Oa.matchMedia&&(n=Oa.matchMedia("(prefers-reduced-motion: reduce)").matches),e.missingIconAbstract=function(){var s=[],i={fill:"currentColor"},r={attributeType:"XML",repeatCount:"indefinite",dur:"2s"};s.push({tag:"path",attributes:Ge(Ge({},i),{},{d:"M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z"})});var o=Ge(Ge({},r),{},{attributeName:"opacity"}),a={tag:"circle",attributes:Ge(Ge({},i),{},{cx:"256",cy:"364",r:"28"}),children:[]};return n||a.children.push({tag:"animate",attributes:Ge(Ge({},r),{},{attributeName:"r",values:"28;14;28;28;14;28;"})},{tag:"animate",attributes:Ge(Ge({},o),{},{values:"1;0;1;1;0;1;"})}),s.push(a),s.push({tag:"path",attributes:Ge(Ge({},i),{},{opacity:"1",d:"M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z"}),children:n?[]:[{tag:"animate",attributes:Ge(Ge({},o),{},{values:"1;0;0;0;0;1;"})}]}),n||s.push({tag:"path",attributes:Ge(Ge({},i),{},{opacity:"0",d:"M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z"}),children:[{tag:"animate",attributes:Ge(Ge({},o),{},{values:"0;0;1;1;0;0;"})}]}),{tag:"g",attributes:{class:"missing"},children:s}}}},g4e={hooks:function(){return{parseNodeAttributes:function(n,s){var i=s.getAttribute("data-fa-symbol"),r=i===null?!1:i===""?!0:i;return n.symbol=r,n}}}},_4e=[mMe,n4e,s4e,i4e,r4e,u4e,d4e,f4e,p4e,m4e,g4e];CMe(_4e,{mixoutsTo:Qs});Qs.noAuto;Qs.config;var b4e=Qs.library;Qs.dom;var pv=Qs.parse;Qs.findIconDefinition;Qs.toHtml;var y4e=Qs.icon;Qs.layer;Qs.text;Qs.counter;function jM(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(t);e&&(s=s.filter(function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable})),n.push.apply(n,s)}return n}function no(t){for(var e=1;e=0)&&(n[i]=t[i]);return n}function w4e(t,e){if(t==null)return{};var n=v4e(t,e),s,i;if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);for(i=0;i=0)&&Object.prototype.propertyIsEnumerable.call(t,s)&&(n[s]=t[s])}return n}function x4e(t,e){if(typeof t!="object"||t===null)return t;var n=t[Symbol.toPrimitive];if(n!==void 0){var s=n.call(t,e||"default");if(typeof s!="object")return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}function S4e(t){var e=x4e(t,"string");return typeof e=="symbol"?e:String(e)}var E4e=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},gI={exports:{}};(function(t){(function(e){var n=function(b,y,v){if(!c(y)||d(y)||f(y)||h(y)||l(y))return y;var x,S=0,w=0;if(u(y))for(x=[],w=y.length;S1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(typeof t=="string")return t;var s=(t.children||[]).map(function(l){return _I(l)}),i=Object.keys(t.attributes||{}).reduce(function(l,c){var u=t.attributes[c];switch(c){case"class":l.class=k4e(u);break;case"style":l.style=M4e(u);break;default:l.attrs[c]=u}return l},{attrs:{},class:{},style:{}});n.class;var r=n.style,o=r===void 0?{}:r,a=w4e(n,A4e);return Eu(t.tag,no(no(no({},e),{},{class:i.class,style:no(no({},i.style),o)},i.attrs),a),s)}var bI=!1;try{bI=!0}catch{}function R4e(){if(!bI&&console&&typeof console.error=="function"){var t;(t=console).error.apply(t,arguments)}}function yb(t,e){return Array.isArray(e)&&e.length>0||!Array.isArray(e)&&e?As({},t,e):{}}function C4e(t){var e,n=(e={"fa-spin":t.spin,"fa-pulse":t.pulse,"fa-fw":t.fixedWidth,"fa-border":t.border,"fa-li":t.listItem,"fa-inverse":t.inverse,"fa-flip":t.flip===!0,"fa-flip-horizontal":t.flip==="horizontal"||t.flip==="both","fa-flip-vertical":t.flip==="vertical"||t.flip==="both"},As(e,"fa-".concat(t.size),t.size!==null),As(e,"fa-rotate-".concat(t.rotation),t.rotation!==null),As(e,"fa-pull-".concat(t.pull),t.pull!==null),As(e,"fa-swap-opacity",t.swapOpacity),As(e,"fa-bounce",t.bounce),As(e,"fa-shake",t.shake),As(e,"fa-beat",t.beat),As(e,"fa-fade",t.fade),As(e,"fa-beat-fade",t.beatFade),As(e,"fa-flash",t.flash),As(e,"fa-spin-pulse",t.spinPulse),As(e,"fa-spin-reverse",t.spinReverse),e);return Object.keys(n).map(function(s){return n[s]?s:null}).filter(function(s){return s})}function qM(t){if(t&&Bg(t)==="object"&&t.prefix&&t.iconName&&t.icon)return t;if(pv.icon)return pv.icon(t);if(t===null)return null;if(Bg(t)==="object"&&t.prefix&&t.iconName)return t;if(Array.isArray(t)&&t.length===2)return{prefix:t[0],iconName:t[1]};if(typeof t=="string")return{prefix:"fas",iconName:t}}var O4e=nt({name:"FontAwesomeIcon",props:{border:{type:Boolean,default:!1},fixedWidth:{type:Boolean,default:!1},flip:{type:[Boolean,String],default:!1,validator:function(e){return[!0,!1,"horizontal","vertical","both"].indexOf(e)>-1}},icon:{type:[Object,Array,String],required:!0},mask:{type:[Object,Array,String],default:null},maskId:{type:String,default:null},listItem:{type:Boolean,default:!1},pull:{type:String,default:null,validator:function(e){return["right","left"].indexOf(e)>-1}},pulse:{type:Boolean,default:!1},rotation:{type:[String,Number],default:null,validator:function(e){return[90,180,270].indexOf(Number.parseInt(e,10))>-1}},swapOpacity:{type:Boolean,default:!1},size:{type:String,default:null,validator:function(e){return["2xs","xs","sm","lg","xl","2xl","1x","2x","3x","4x","5x","6x","7x","8x","9x","10x"].indexOf(e)>-1}},spin:{type:Boolean,default:!1},transform:{type:[String,Object],default:null},symbol:{type:[Boolean,String],default:!1},title:{type:String,default:null},titleId:{type:String,default:null},inverse:{type:Boolean,default:!1},bounce:{type:Boolean,default:!1},shake:{type:Boolean,default:!1},beat:{type:Boolean,default:!1},fade:{type:Boolean,default:!1},beatFade:{type:Boolean,default:!1},flash:{type:Boolean,default:!1},spinPulse:{type:Boolean,default:!1},spinReverse:{type:Boolean,default:!1}},setup:function(e,n){var s=n.attrs,i=En(function(){return qM(e.icon)}),r=En(function(){return yb("classes",C4e(e))}),o=En(function(){return yb("transform",typeof e.transform=="string"?pv.transform(e.transform):e.transform)}),a=En(function(){return yb("mask",qM(e.mask))}),l=En(function(){return y4e(i.value,no(no(no(no({},r.value),o.value),a.value),{},{symbol:e.symbol,title:e.title,titleId:e.titleId,maskId:e.maskId}))});ya(l,function(u){if(!u)return R4e("Could not find one or more icon(s)",i.value,a.value)},{immediate:!0});var c=En(function(){return l.value?_I(l.value.abstract[0],{},s):null});return function(){return c.value}}}),I4e={prefix:"fas",iconName:"circle-question",icon:[512,512,[62108,"question-circle"],"f059","M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM169.8 165.3c7.9-22.3 29.1-37.3 52.8-37.3h58.3c34.9 0 63.1 28.3 63.1 63.1c0 22.6-12.1 43.5-31.7 54.8L280 264.4c-.2 13-10.9 23.6-24 23.6c-13.3 0-24-10.7-24-24V250.5c0-8.6 4.6-16.5 12.1-20.8l44.3-25.4c4.7-2.7 7.6-7.7 7.6-13.1c0-8.4-6.8-15.1-15.1-15.1H222.6c-3.4 0-6.4 2.1-7.5 5.3l-.4 1.2c-4.4 12.5-18.2 19-30.6 14.6s-19-18.2-14.6-30.6l.4-1.2zM224 352a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z"]},L4e={prefix:"fas",iconName:"download",icon:[512,512,[],"f019","M288 32c0-17.7-14.3-32-32-32s-32 14.3-32 32V274.7l-73.4-73.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l128 128c12.5 12.5 32.8 12.5 45.3 0l128-128c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L288 274.7V32zM64 352c-35.3 0-64 28.7-64 64v32c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V416c0-35.3-28.7-64-64-64H346.5l-45.3 45.3c-25 25-65.5 25-90.5 0L165.5 352H64zm368 56a24 24 0 1 1 0 48 24 24 0 1 1 0-48z"]},P4e={prefix:"fas",iconName:"upload",icon:[512,512,[],"f093","M288 109.3V352c0 17.7-14.3 32-32 32s-32-14.3-32-32V109.3l-73.4 73.4c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l128-128c12.5-12.5 32.8-12.5 45.3 0l128 128c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L288 109.3zM64 352H192c0 35.3 28.7 64 64 64s64-28.7 64-64H448c35.3 0 64 28.7 64 64v32c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V416c0-35.3 28.7-64 64-64zM432 456a24 24 0 1 0 0-48 24 24 0 1 0 0 48z"]},D4e={prefix:"fas",iconName:"file-export",icon:[576,512,["arrow-right-from-file"],"f56e","M0 64C0 28.7 28.7 0 64 0H224V128c0 17.7 14.3 32 32 32H384V288H216c-13.3 0-24 10.7-24 24s10.7 24 24 24H384V448c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V64zM384 336V288H494.1l-39-39c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l80 80c9.4 9.4 9.4 24.6 0 33.9l-80 80c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l39-39H384zm0-208H256V0L384 128z"]},F4e={prefix:"fas",iconName:"cloud-moon",icon:[640,512,[],"f6c3","M495.8 0c5.5 0 10.9 .2 16.3 .7c7 .6 12.8 5.7 14.3 12.5s-1.6 13.9-7.7 17.3c-44.4 25.2-74.4 73-74.4 127.8c0 81 65.5 146.6 146.2 146.6c8.6 0 17-.7 25.1-2.1c6.9-1.2 13.8 2.2 17 8.5s1.9 13.8-3.1 18.7c-34.5 33.6-81.7 54.4-133.6 54.4c-9.3 0-18.4-.7-27.4-1.9c-11.2-22.6-29.8-40.9-52.6-51.7c-2.7-58.5-50.3-105.3-109.2-106.7c-1.7-10.4-2.6-21-2.6-31.8C304 86.1 389.8 0 495.8 0zM447.9 431.9c0 44.2-35.8 80-80 80H96c-53 0-96-43-96-96c0-47.6 34.6-87 80-94.6l0-1.3c0-53 43-96 96-96c34.9 0 65.4 18.6 82.2 46.4c13-9.1 28.8-14.4 45.8-14.4c44.2 0 80 35.8 80 80c0 5.9-.6 11.7-1.9 17.2c37.4 6.7 65.8 39.4 65.8 78.7z"]},N4e={prefix:"fas",iconName:"triangle-exclamation",icon:[512,512,[9888,"exclamation-triangle","warning"],"f071","M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480H40c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24V296c0 13.3 10.7 24 24 24s24-10.7 24-24V184c0-13.3-10.7-24-24-24zm32 224a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z"]},$4e={prefix:"fas",iconName:"cloud-sun",icon:[640,512,[9925],"f6c4","M294.2 1.2c5.1 2.1 8.7 6.7 9.6 12.1l14.1 84.7 84.7 14.1c5.4 .9 10 4.5 12.1 9.6s1.5 10.9-1.6 15.4l-38.5 55c-2.2-.1-4.4-.2-6.7-.2c-23.3 0-45.1 6.2-64 17.1l0-1.1c0-53-43-96-96-96s-96 43-96 96s43 96 96 96c8.1 0 15.9-1 23.4-2.9c-36.6 18.1-63.3 53.1-69.8 94.9l-24.4 17c-4.5 3.1-10.3 3.8-15.4 1.6s-8.7-6.7-9.6-12.1L98.1 317.9 13.4 303.8c-5.4-.9-10-4.5-12.1-9.6s-1.5-10.9 1.6-15.4L52.5 208 2.9 137.2c-3.2-4.5-3.8-10.3-1.6-15.4s6.7-8.7 12.1-9.6L98.1 98.1l14.1-84.7c.9-5.4 4.5-10 9.6-12.1s10.9-1.5 15.4 1.6L208 52.5 278.8 2.9c4.5-3.2 10.3-3.8 15.4-1.6zM144 208a64 64 0 1 1 128 0 64 64 0 1 1 -128 0zM639.9 431.9c0 44.2-35.8 80-80 80H288c-53 0-96-43-96-96c0-47.6 34.6-87 80-94.6l0-1.3c0-53 43-96 96-96c34.9 0 65.4 18.6 82.2 46.4c13-9.1 28.8-14.4 45.8-14.4c44.2 0 80 35.8 80 80c0 5.9-.6 11.7-1.9 17.2c37.4 6.7 65.8 39.4 65.8 78.7z"]},U4e={prefix:"far",iconName:"pen-to-square",icon:[512,512,["edit"],"f044","M441 58.9L453.1 71c9.4 9.4 9.4 24.6 0 33.9L424 134.1 377.9 88 407 58.9c9.4-9.4 24.6-9.4 33.9 0zM209.8 256.2L344 121.9 390.1 168 255.8 302.2c-2.9 2.9-6.5 5-10.4 6.1l-58.5 16.7 16.7-58.5c1.1-3.9 3.2-7.5 6.1-10.4zM373.1 25L175.8 222.2c-8.7 8.7-15 19.4-18.3 31.1l-28.6 100c-2.4 8.4-.1 17.4 6.1 23.6s15.2 8.5 23.6 6.1l100-28.6c11.8-3.4 22.5-9.7 31.1-18.3L487 138.9c28.1-28.1 28.1-73.7 0-101.8L474.9 25C446.8-3.1 401.2-3.1 373.1 25zM88 64C39.4 64 0 103.4 0 152V424c0 48.6 39.4 88 88 88H360c48.6 0 88-39.4 88-88V312c0-13.3-10.7-24-24-24s-24 10.7-24 24V424c0 22.1-17.9 40-40 40H88c-22.1 0-40-17.9-40-40V152c0-22.1 17.9-40 40-40H200c13.3 0 24-10.7 24-24s-10.7-24-24-24H88z"]};b4e.add(I4e,N4e,P4e,F4e,$4e,L4e,U4e,D4e);class B4e{constructor(){$e(this,"state",Ku({isShown:!1,resolve:void 0,component:void 0,props:{}}))}get isShown(){return this.state.isShown}get component(){return this.state.component}get props(){return this.state.props}show(e,n){return this.state.props=n||{},this.state.component=Mv(e),this.state.isShown=!0,new Promise(s=>{this.state.resolve=s})}close(e){this.state.resolve&&this.state.resolve(e),this.state.isShown=!1,this.state.component=void 0,this.state.resolve=void 0,this.state.props={}}}const G4e={install(t){t.config.globalProperties.$modal=new B4e}};/*! + * chartjs-adapter-moment v1.0.1 + * https://www.chartjs.org + * (c) 2022 chartjs-adapter-moment Contributors + * Released under the MIT license + */const z4e={datetime:"MMM D, YYYY, h:mm:ss a",millisecond:"h:mm:ss.SSS a",second:"h:mm:ss a",minute:"h:mm a",hour:"hA",day:"MMM D",week:"ll",month:"MMM YYYY",quarter:"[Q]Q - YYYY",year:"YYYY"};XR._date.override(typeof De=="function"?{_id:"moment",formats:function(){return z4e},parse:function(t,e){return typeof t=="string"&&typeof e=="string"?t=De(t,e):t instanceof De||(t=De(t)),t.isValid()?t.valueOf():null},format:function(t,e){return De(t).format(e)},add:function(t,e,n){return De(t).add(e,n).valueOf()},diff:function(t,e,n){return De(t).diff(De(e),n)},startOf:function(t,e,n){return t=De(t),e==="isoWeek"?(n=Math.trunc(Math.min(Math.max(0,n),6)),t.isoWeekday(n).startOf("day").valueOf()):t.startOf(e).valueOf()},endOf:function(t,e){return De(t).endOf(e).valueOf()}}:{});ch.register(Mie,Tie,Die,K_,Hh,Vh,mx,Tg);const $a=QP(gAe);$a.component("spinner-btn",vAe);$a.component("tooltip",PAe);$a.component("input-select",UAe);$a.component("FontAwesomeIcon",O4e);$a.use(zO);$a.use(Ri);$a.use(G4e);$a.mount("#app");export{iD as _}; diff --git a/develop/assets/virtual_pwa-register-7dd63b88.js b/develop/assets/virtual_pwa-register-7dd63b88.js new file mode 100644 index 0000000..743edfe --- /dev/null +++ b/develop/assets/virtual_pwa-register-7dd63b88.js @@ -0,0 +1 @@ +import{_ as m}from"./index-6140690f.js";function E(w={}){const{immediate:g=!1,onNeedRefresh:r,onOfflineReady:t,onRegistered:o,onRegisteredSW:d,onRegisterError:l}=w;let e,c,s;const u=async(p=!0)=>{await c,await(s==null?void 0:s())};async function _(){if("serviceWorker"in navigator){const{Workbox:p}=await m(()=>import("./workbox-window.prod.es5-a7b12eab.js"),[]);e=new p("/develop/sw.js",{scope:"/develop/",type:"classic"}),s=async()=>{await(e==null?void 0:e.messageSkipWaiting())};{let i=!1;const n=()=>{i=!0,e==null||e.addEventListener("controlling",a=>{a.isUpdate&&window.location.reload()}),r==null||r()};e.addEventListener("installed",a=>{typeof a.isUpdate>"u"?typeof a.isExternal<"u"?a.isExternal?n():!i&&(t==null||t()):a.isExternal?window.location.reload():!i&&(t==null||t()):a.isUpdate||t==null||t()}),e.addEventListener("waiting",n),e.addEventListener("externalwaiting",n)}e.register({immediate:g}).then(i=>{d?d("/develop/sw.js",i):o==null||o(i)}).catch(i=>{l==null||l(i)})}}return c=_(),u}export{E as registerSW}; diff --git a/develop/index.html b/develop/index.html index 1f915f5..db7fe91 100644 --- a/develop/index.html +++ b/develop/index.html @@ -19,9 +19,9 @@ - - - + + +
diff --git a/develop/sw.js b/develop/sw.js index 6110db4..6506a5d 100644 --- a/develop/sw.js +++ b/develop/sw.js @@ -1,2 +1,2 @@ (function(){"use strict";try{self["workbox:core:7.0.0"]&&_()}catch{}const i={}.NODE_ENV==="production"?null:(()=>{"__WB_DISABLE_DEV_LOGS"in globalThis||(self.__WB_DISABLE_DEV_LOGS=!1);let r=!1;const e={debug:"#7f8c8d",log:"#2ecc71",warn:"#f39c12",error:"#c0392b",groupCollapsed:"#3498db",groupEnd:null},t=function(a,o){if(self.__WB_DISABLE_DEV_LOGS)return;if(a==="groupCollapsed"&&/^((?!chrome|android).)*safari/i.test(navigator.userAgent)){console[a](...o);return}const c=[`background: ${e[a]}`,"border-radius: 0.5em","color: white","font-weight: bold","padding: 2px 0.5em"],l=r?[]:["%cworkbox",c.join(";")];console[a](...l,...o),a==="groupCollapsed"&&(r=!0),a==="groupEnd"&&(r=!1)},s={},n=Object.keys(e);for(const a of n){const o=a;s[o]=(...c)=>{t(o,c)}}return s})(),A={"invalid-value":({paramName:r,validValueDescription:e,value:t})=>{if(!r||!e)throw new Error("Unexpected input to 'invalid-value' error.");return`The '${r}' parameter was given a value with an unexpected value. ${e} Received a value of ${JSON.stringify(t)}.`},"not-an-array":({moduleName:r,className:e,funcName:t,paramName:s})=>{if(!r||!e||!t||!s)throw new Error("Unexpected input to 'not-an-array' error.");return`The parameter '${s}' passed into '${r}.${e}.${t}()' must be an array.`},"incorrect-type":({expectedType:r,paramName:e,moduleName:t,className:s,funcName:n})=>{if(!r||!e||!t||!n)throw new Error("Unexpected input to 'incorrect-type' error.");const a=s?`${s}.`:"";return`The parameter '${e}' passed into '${t}.${a}${n}()' must be of type ${r}.`},"incorrect-class":({expectedClassName:r,paramName:e,moduleName:t,className:s,funcName:n,isReturnValueProblem:a})=>{if(!r||!t||!n)throw new Error("Unexpected input to 'incorrect-class' error.");const o=s?`${s}.`:"";return a?`The return value from '${t}.${o}${n}()' must be an instance of class ${r}.`:`The parameter '${e}' passed into '${t}.${o}${n}()' must be an instance of class ${r}.`},"missing-a-method":({expectedMethod:r,paramName:e,moduleName:t,className:s,funcName:n})=>{if(!r||!e||!t||!s||!n)throw new Error("Unexpected input to 'missing-a-method' error.");return`${t}.${s}.${n}() expected the '${e}' parameter to expose a '${r}' method.`},"add-to-cache-list-unexpected-type":({entry:r})=>`An unexpected entry was passed to 'workbox-precaching.PrecacheController.addToCacheList()' The entry '${JSON.stringify(r)}' isn't supported. You must supply an array of strings with one or more characters, objects with a url property or Request objects.`,"add-to-cache-list-conflicting-entries":({firstEntry:r,secondEntry:e})=>{if(!r||!e)throw new Error("Unexpected input to 'add-to-cache-list-duplicate-entries' error.");return`Two of the entries passed to 'workbox-precaching.PrecacheController.addToCacheList()' had the URL ${r} but different revision details. Workbox is unable to cache and version the asset correctly. Please remove one of the entries.`},"plugin-error-request-will-fetch":({thrownErrorMessage:r})=>{if(!r)throw new Error("Unexpected input to 'plugin-error-request-will-fetch', error.");return`An error was thrown by a plugins 'requestWillFetch()' method. The thrown error message was: '${r}'.`},"invalid-cache-name":({cacheNameId:r,value:e})=>{if(!r)throw new Error("Expected a 'cacheNameId' for error 'invalid-cache-name'");return`You must provide a name containing at least one character for setCacheDetails({${r}: '...'}). Received a value of '${JSON.stringify(e)}'`},"unregister-route-but-not-found-with-method":({method:r})=>{if(!r)throw new Error("Unexpected input to 'unregister-route-but-not-found-with-method' error.");return`The route you're trying to unregister was not previously registered for the method type '${r}'.`},"unregister-route-route-not-registered":()=>"The route you're trying to unregister was not previously registered.","queue-replay-failed":({name:r})=>`Replaying the background sync queue '${r}' failed.`,"duplicate-queue-name":({name:r})=>`The Queue name '${r}' is already being used. All instances of backgroundSync.Queue must be given unique names.`,"expired-test-without-max-age":({methodName:r,paramName:e})=>`The '${r}()' method can only be used when the '${e}' is used in the constructor.`,"unsupported-route-type":({moduleName:r,className:e,funcName:t,paramName:s})=>`The supplied '${s}' parameter was an unsupported type. Please check the docs for ${r}.${e}.${t} for valid input types.`,"not-array-of-class":({value:r,expectedClass:e,moduleName:t,className:s,funcName:n,paramName:a})=>`The supplied '${a}' parameter must be an array of '${e}' objects. Received '${JSON.stringify(r)},'. Please check the call to ${t}.${s}.${n}() to fix the issue.`,"max-entries-or-age-required":({moduleName:r,className:e,funcName:t})=>`You must define either config.maxEntries or config.maxAgeSecondsin ${r}.${e}.${t}`,"statuses-or-headers-required":({moduleName:r,className:e,funcName:t})=>`You must define either config.statuses or config.headersin ${r}.${e}.${t}`,"invalid-string":({moduleName:r,funcName:e,paramName:t})=>{if(!t||!r||!e)throw new Error("Unexpected input to 'invalid-string' error.");return`When using strings, the '${t}' parameter must start with 'http' (for cross-origin matches) or '/' (for same-origin matches). Please see the docs for ${r}.${e}() for more info.`},"channel-name-required":()=>"You must provide a channelName to construct a BroadcastCacheUpdate instance.","invalid-responses-are-same-args":()=>"The arguments passed into responsesAreSame() appear to be invalid. Please ensure valid Responses are used.","expire-custom-caches-only":()=>"You must provide a 'cacheName' property when using the expiration plugin with a runtime caching strategy.","unit-must-be-bytes":({normalizedRangeHeader:r})=>{if(!r)throw new Error("Unexpected input to 'unit-must-be-bytes' error.");return`The 'unit' portion of the Range header must be set to 'bytes'. The Range header provided was "${r}"`},"single-range-only":({normalizedRangeHeader:r})=>{if(!r)throw new Error("Unexpected input to 'single-range-only' error.");return`Multiple ranges are not supported. Please use a single start value, and optional end value. The Range header provided was "${r}"`},"invalid-range-values":({normalizedRangeHeader:r})=>{if(!r)throw new Error("Unexpected input to 'invalid-range-values' error.");return`The Range header is missing both start and end values. At least one of those values is needed. The Range header provided was "${r}"`},"no-range-header":()=>"No Range header was found in the Request provided.","range-not-satisfiable":({size:r,start:e,end:t})=>`The start (${e}) and end (${t}) values in the Range are not satisfiable by the cached response, which is ${r} bytes.`,"attempt-to-cache-non-get-request":({url:r,method:e})=>`Unable to cache '${r}' because it is a '${e}' request and only 'GET' requests can be cached.`,"cache-put-with-no-response":({url:r})=>`There was an attempt to cache '${r}' but the response was not defined.`,"no-response":({url:r,error:e})=>{let t=`The strategy could not generate a response for '${r}'.`;return e&&(t+=` The underlying error is ${e}.`),t},"bad-precaching-response":({url:r,status:e})=>`The precaching request for '${r}' failed`+(e?` with an HTTP status of ${e}.`:"."),"non-precached-url":({url:r})=>`createHandlerBoundToURL('${r}') was called, but that URL is not precached. Please pass in a URL that is precached instead.`,"add-to-cache-list-conflicting-integrities":({url:r})=>`Two of the entries passed to 'workbox-precaching.PrecacheController.addToCacheList()' had the URL ${r} with different integrity values. Please remove one of them.`,"missing-precache-entry":({cacheName:r,url:e})=>`Unable to find a precached response in ${r} for ${e}.`,"cross-origin-copy-response":({origin:r})=>`workbox-core.copyResponse() can only be used with same-origin responses. It was passed a response with origin ${r}.`,"opaque-streams-source":({type:r})=>{const e=`One of the workbox-streams sources resulted in an '${r}' response.`;return r==="opaqueredirect"?`${e} Please do not use a navigation request that results in a redirect as a source.`:`${e} Please ensure your sources are CORS-enabled.`}},q=(r,...e)=>{let t=r;return e.length>0&&(t+=` :: ${JSON.stringify(e)}`),t},I=(r,e={})=>{const t=A[r];if(!t)throw new Error(`Unable to find message for code '${r}'.`);return t(e)},W={}.NODE_ENV==="production"?q:I;class u extends Error{constructor(e,t){const s=W(e,t);super(s),this.name=e,this.details=t}}const M=(r,e)=>{if(!Array.isArray(r))throw new u("not-an-array",e)},F=(r,e,t)=>{if(typeof r[e]!=="function")throw t.expectedMethod=e,new u("missing-a-method",t)},j=(r,e,t)=>{if(typeof r!==e)throw t.expectedType=e,new u("incorrect-type",t)},H=(r,e,t)=>{if(!(r instanceof e))throw t.expectedClassName=e.name,new u("incorrect-class",t)},B=(r,e,t)=>{if(!e.includes(r))throw t.validValueDescription=`Valid values are ${JSON.stringify(e)}.`,new u("invalid-value",t)},G=(r,e,t)=>{const s=new u("not-array-of-class",t);if(!Array.isArray(r))throw s;for(const n of r)if(!(n instanceof e))throw s},d={}.NODE_ENV==="production"?null:{hasMethod:F,isArray:M,isInstance:H,isOneOf:B,isType:j,isArrayOfClass:G},T=new Set,g={googleAnalytics:"googleAnalytics",precache:"precache-v2",prefix:"workbox",runtime:"runtime",suffix:typeof registration<"u"?registration.scope:""},k=r=>[g.prefix,r,g.suffix].filter(e=>e&&e.length>0).join("-"),J=r=>{for(const e of Object.keys(g))r(e)},R={updateDetails:r=>{J(e=>{typeof r[e]=="string"&&(g[e]=r[e])})},getGoogleAnalyticsName:r=>r||k(g.googleAnalytics),getPrecacheName:r=>r||k(g.precache),getPrefix:()=>g.prefix,getRuntimeName:r=>r||k(g.runtime),getSuffix:()=>g.suffix};function O(r,e){const t=new URL(r);for(const s of e)t.searchParams.delete(s);return t.href}async function Y(r,e,t,s){const n=O(e.url,t);if(e.url===n)return r.match(e,s);const a=Object.assign(Object.assign({},s),{ignoreSearch:!0}),o=await r.keys(e,a);for(const c of o){const l=O(c.url,t);if(n===l)return r.match(c,s)}}let b;function Q(){if(b===void 0){const r=new Response("");if("body"in r)try{new Response(r.body),b=!0}catch{b=!1}b=!1}return b}class X{constructor(){this.promise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}}async function Z(){({}).NODE_ENV!=="production"&&i.log(`About to run ${T.size} callbacks to clean up caches.`);for(const r of T)await r(),{}.NODE_ENV!=="production"&&i.log(r,"is complete.");({}).NODE_ENV!=="production"&&i.log("Finished running callbacks.")}const h=r=>new URL(String(r),location.href).href.replace(new RegExp(`^${location.origin}`),"");function z(r){return new Promise(e=>setTimeout(e,r))}function v(r,e){const t=e();return r.waitUntil(t),t}async function ee(r,e){let t=null;if(r.url&&(t=new URL(r.url).origin),t!==self.location.origin)throw new u("cross-origin-copy-response",{origin:t});const s=r.clone(),n={headers:new Headers(s.headers),status:s.status,statusText:s.statusText},a=e?e(n):n,o=Q()?s.body:await s.blob();return new Response(o,a)}function te(){self.addEventListener("activate",()=>self.clients.claim())}try{self["workbox:routing:7.0.0"]&&_()}catch{}const x="GET",re=["DELETE","GET","HEAD","PATCH","POST","PUT"],C=r=>r&&typeof r=="object"?({}.NODE_ENV!=="production"&&d.hasMethod(r,"handle",{moduleName:"workbox-routing",className:"Route",funcName:"constructor",paramName:"handler"}),r):({}.NODE_ENV!=="production"&&d.isType(r,"function",{moduleName:"workbox-routing",className:"Route",funcName:"constructor",paramName:"handler"}),{handle:r});class N{constructor(e,t,s=x){({}).NODE_ENV!=="production"&&(d.isType(e,"function",{moduleName:"workbox-routing",className:"Route",funcName:"constructor",paramName:"match"}),s&&d.isOneOf(s,re,{paramName:"method"})),this.handler=C(t),this.match=e,this.method=s}setCatchHandler(e){this.catchHandler=C(e)}}class se extends N{constructor(e,t,s){({}).NODE_ENV!=="production"&&d.isInstance(e,RegExp,{moduleName:"workbox-routing",className:"RegExpRoute",funcName:"constructor",paramName:"pattern"});const n=({url:a})=>{const o=e.exec(a.href);if(o){if(a.origin!==location.origin&&o.index!==0){({}).NODE_ENV!=="production"&&i.debug(`The regular expression '${e.toString()}' only partially matched against the cross-origin URL '${a.toString()}'. RegExpRoute's will only handle cross-origin requests if they match the entire URL.`);return}return o.slice(1)}};super(n,t,s)}}class ne{constructor(){this._routes=new Map,this._defaultHandlerMap=new Map}get routes(){return this._routes}addFetchListener(){self.addEventListener("fetch",e=>{const{request:t}=e,s=this.handleRequest({request:t,event:e});s&&e.respondWith(s)})}addCacheListener(){self.addEventListener("message",e=>{if(e.data&&e.data.type==="CACHE_URLS"){const{payload:t}=e.data;({}).NODE_ENV!=="production"&&i.debug("Caching URLs from the window",t.urlsToCache);const s=Promise.all(t.urlsToCache.map(n=>{typeof n=="string"&&(n=[n]);const a=new Request(...n);return this.handleRequest({request:a,event:e})}));e.waitUntil(s),e.ports&&e.ports[0]&&s.then(()=>e.ports[0].postMessage(!0))}})}handleRequest({request:e,event:t}){({}).NODE_ENV!=="production"&&d.isInstance(e,Request,{moduleName:"workbox-routing",className:"Router",funcName:"handleRequest",paramName:"options.request"});const s=new URL(e.url,location.href);if(!s.protocol.startsWith("http")){({}).NODE_ENV!=="production"&&i.debug("Workbox Router only supports URLs that start with 'http'.");return}const n=s.origin===location.origin,{params:a,route:o}=this.findMatchingRoute({event:t,request:e,sameOrigin:n,url:s});let c=o&&o.handler;const l=[];({}).NODE_ENV!=="production"&&c&&(l.push(["Found a route to handle this request:",o]),a&&l.push(["Passing the following params to the route's handler:",a]));const m=e.method;if(!c&&this._defaultHandlerMap.has(m)&&({}.NODE_ENV!=="production"&&l.push(`Failed to find a matching route. Falling back to the default handler for ${m}.`),c=this._defaultHandlerMap.get(m)),!c){({}).NODE_ENV!=="production"&&i.debug(`No route found for: ${h(s)}`);return}({}).NODE_ENV!=="production"&&(i.groupCollapsed(`Router is responding to: ${h(s)}`),l.forEach(p=>{Array.isArray(p)?i.log(...p):i.log(p)}),i.groupEnd());let y;try{y=c.handle({url:s,request:e,event:t,params:a})}catch(p){y=Promise.reject(p)}const f=o&&o.catchHandler;return y instanceof Promise&&(this._catchHandler||f)&&(y=y.catch(async p=>{if(f){({}).NODE_ENV!=="production"&&(i.groupCollapsed(`Error thrown when responding to: ${h(s)}. Falling back to route's Catch Handler.`),i.error("Error thrown by:",o),i.error(p),i.groupEnd());try{return await f.handle({url:s,request:e,event:t,params:a})}catch(S){S instanceof Error&&(p=S)}}if(this._catchHandler)return{}.NODE_ENV!=="production"&&(i.groupCollapsed(`Error thrown when responding to: ${h(s)}. Falling back to global Catch Handler.`),i.error("Error thrown by:",o),i.error(p),i.groupEnd()),this._catchHandler.handle({url:s,request:e,event:t});throw p})),y}findMatchingRoute({url:e,sameOrigin:t,request:s,event:n}){const a=this._routes.get(s.method)||[];for(const o of a){let c;const l=o.match({url:e,sameOrigin:t,request:s,event:n});if(l)return{}.NODE_ENV!=="production"&&l instanceof Promise&&i.warn(`While routing ${h(e)}, an async matchCallback function was used. Please convert the following route to use a synchronous matchCallback function:`,o),c=l,(Array.isArray(c)&&c.length===0||l.constructor===Object&&Object.keys(l).length===0||typeof l=="boolean")&&(c=void 0),{route:o,params:c}}return{}}setDefaultHandler(e,t=x){this._defaultHandlerMap.set(t,C(e))}setCatchHandler(e){this._catchHandler=C(e)}registerRoute(e){({}).NODE_ENV!=="production"&&(d.isType(e,"object",{moduleName:"workbox-routing",className:"Router",funcName:"registerRoute",paramName:"route"}),d.hasMethod(e,"match",{moduleName:"workbox-routing",className:"Router",funcName:"registerRoute",paramName:"route"}),d.isType(e.handler,"object",{moduleName:"workbox-routing",className:"Router",funcName:"registerRoute",paramName:"route"}),d.hasMethod(e.handler,"handle",{moduleName:"workbox-routing",className:"Router",funcName:"registerRoute",paramName:"route.handler"}),d.isType(e.method,"string",{moduleName:"workbox-routing",className:"Router",funcName:"registerRoute",paramName:"route.method"})),this._routes.has(e.method)||this._routes.set(e.method,[]),this._routes.get(e.method).push(e)}unregisterRoute(e){if(!this._routes.has(e.method))throw new u("unregister-route-but-not-found-with-method",{method:e.method});const t=this._routes.get(e.method).indexOf(e);if(t>-1)this._routes.get(e.method).splice(t,1);else throw new u("unregister-route-route-not-registered")}}let E;const ae=()=>(E||(E=new ne,E.addFetchListener(),E.addCacheListener()),E);function D(r,e,t){let s;if(typeof r=="string"){const a=new URL(r,location.href);if({}.NODE_ENV!=="production"){if(!(r.startsWith("/")||r.startsWith("http")))throw new u("invalid-string",{moduleName:"workbox-routing",funcName:"registerRoute",paramName:"capture"});const c=r.startsWith("http")?a.pathname:r,l="[*:?+]";new RegExp(`${l}`).exec(c)&&i.debug(`The '$capture' parameter contains an Express-style wildcard character (${l}). Strings are now always interpreted as exact matches; use a RegExp for partial or wildcard matches.`)}const o=({url:c})=>({}.NODE_ENV!=="production"&&c.pathname===a.pathname&&c.origin!==a.origin&&i.debug(`${r} only partially matches the cross-origin URL ${c.toString()}. This route will only handle cross-origin requests if they match the entire URL.`),c.href===a.href);s=new N(o,e,t)}else if(r instanceof RegExp)s=new se(r,e,t);else if(typeof r=="function")s=new N(r,e,t);else if(r instanceof N)s=r;else throw new u("unsupported-route-type",{moduleName:"workbox-routing",funcName:"registerRoute",paramName:"capture"});return ae().registerRoute(s),s}try{self["workbox:strategies:7.0.0"]&&_()}catch{}function $(r){return typeof r=="string"?new Request(r):r}class oe{constructor(e,t){this._cacheKeys={},{}.NODE_ENV!=="production"&&d.isInstance(t.event,ExtendableEvent,{moduleName:"workbox-strategies",className:"StrategyHandler",funcName:"constructor",paramName:"options.event"}),Object.assign(this,t),this.event=t.event,this._strategy=e,this._handlerDeferred=new X,this._extendLifetimePromises=[],this._plugins=[...e.plugins],this._pluginStateMap=new Map;for(const s of this._plugins)this._pluginStateMap.set(s,{});this.event.waitUntil(this._handlerDeferred.promise)}async fetch(e){const{event:t}=this;let s=$(e);if(s.mode==="navigate"&&t instanceof FetchEvent&&t.preloadResponse){const o=await t.preloadResponse;if(o)return{}.NODE_ENV!=="production"&&i.log(`Using a preloaded navigation response for '${h(s.url)}'`),o}const n=this.hasCallback("fetchDidFail")?s.clone():null;try{for(const o of this.iterateCallbacks("requestWillFetch"))s=await o({request:s.clone(),event:t})}catch(o){if(o instanceof Error)throw new u("plugin-error-request-will-fetch",{thrownErrorMessage:o.message})}const a=s.clone();try{let o;o=await fetch(s,s.mode==="navigate"?void 0:this._strategy.fetchOptions),{}.NODE_ENV!=="production"&&i.debug(`Network request for '${h(s.url)}' returned a response with status '${o.status}'.`);for(const c of this.iterateCallbacks("fetchDidSucceed"))o=await c({event:t,request:a,response:o});return o}catch(o){throw{}.NODE_ENV!=="production"&&i.log(`Network request for '${h(s.url)}' threw an error.`,o),n&&await this.runCallbacks("fetchDidFail",{error:o,event:t,originalRequest:n.clone(),request:a.clone()}),o}}async fetchAndCachePut(e){const t=await this.fetch(e),s=t.clone();return this.waitUntil(this.cachePut(e,s)),t}async cacheMatch(e){const t=$(e);let s;const{cacheName:n,matchOptions:a}=this._strategy,o=await this.getCacheKey(t,"read"),c=Object.assign(Object.assign({},a),{cacheName:n});s=await caches.match(o,c),{}.NODE_ENV!=="production"&&(s?i.debug(`Found a cached response in '${n}'.`):i.debug(`No cached response found in '${n}'.`));for(const l of this.iterateCallbacks("cachedResponseWillBeUsed"))s=await l({cacheName:n,matchOptions:a,cachedResponse:s,request:o,event:this.event})||void 0;return s}async cachePut(e,t){const s=$(e);await z(0);const n=await this.getCacheKey(s,"write");if({}.NODE_ENV!=="production"){if(n.method&&n.method!=="GET")throw new u("attempt-to-cache-non-get-request",{url:h(n.url),method:n.method});const f=t.headers.get("Vary");f&&i.debug(`The response for ${h(n.url)} has a 'Vary: ${f}' header. Consider setting the {ignoreVary: true} option on your strategy to ensure cache matching and deletion works as expected.`)}if(!t)throw{}.NODE_ENV!=="production"&&i.error(`Cannot cache non-existent response for '${h(n.url)}'.`),new u("cache-put-with-no-response",{url:h(n.url)});const a=await this._ensureResponseSafeToCache(t);if(!a)return{}.NODE_ENV!=="production"&&i.debug(`Response '${h(n.url)}' will not be cached.`,a),!1;const{cacheName:o,matchOptions:c}=this._strategy,l=await self.caches.open(o),m=this.hasCallback("cacheDidUpdate"),y=m?await Y(l,n.clone(),["__WB_REVISION__"],c):null;({}).NODE_ENV!=="production"&&i.debug(`Updating the '${o}' cache with a new Response for ${h(n.url)}.`);try{await l.put(n,m?a.clone():a)}catch(f){if(f instanceof Error)throw f.name==="QuotaExceededError"&&await Z(),f}for(const f of this.iterateCallbacks("cacheDidUpdate"))await f({cacheName:o,oldResponse:y,newResponse:a.clone(),request:n,event:this.event});return!0}async getCacheKey(e,t){const s=`${e.url} | ${t}`;if(!this._cacheKeys[s]){let n=e;for(const a of this.iterateCallbacks("cacheKeyWillBeUsed"))n=$(await a({mode:t,request:n,event:this.event,params:this.params}));this._cacheKeys[s]=n}return this._cacheKeys[s]}hasCallback(e){for(const t of this._strategy.plugins)if(e in t)return!0;return!1}async runCallbacks(e,t){for(const s of this.iterateCallbacks(e))await s(t)}*iterateCallbacks(e){for(const t of this._strategy.plugins)if(typeof t[e]=="function"){const s=this._pluginStateMap.get(t);yield a=>{const o=Object.assign(Object.assign({},a),{state:s});return t[e](o)}}}waitUntil(e){return this._extendLifetimePromises.push(e),e}async doneWaiting(){let e;for(;e=this._extendLifetimePromises.shift();)await e}destroy(){this._handlerDeferred.resolve(null)}async _ensureResponseSafeToCache(e){let t=e,s=!1;for(const n of this.iterateCallbacks("cacheWillUpdate"))if(t=await n({request:this.request,response:t,event:this.event})||void 0,s=!0,!t)break;return s||(t&&t.status!==200&&(t=void 0),{}.NODE_ENV!=="production"&&t&&t.status!==200&&(t.status===0?i.warn(`The response for '${this.request.url}' is an opaque response. The caching strategy that you're using will not cache opaque responses by default.`):i.debug(`The response for '${this.request.url}' returned a status code of '${e.status}' and won't be cached as a result.`))),t}}class L{constructor(e={}){this.cacheName=R.getRuntimeName(e.cacheName),this.plugins=e.plugins||[],this.fetchOptions=e.fetchOptions,this.matchOptions=e.matchOptions}handle(e){const[t]=this.handleAll(e);return t}handleAll(e){e instanceof FetchEvent&&(e={event:e,request:e.request});const t=e.event,s=typeof e.request=="string"?new Request(e.request):e.request,n="params"in e?e.params:void 0,a=new oe(this,{event:t,request:s,params:n}),o=this._getResponse(a,s,t),c=this._awaitComplete(o,a,s,t);return[o,c]}async _getResponse(e,t,s){await e.runCallbacks("handlerWillStart",{event:s,request:t});let n;try{if(n=await this._handle(t,e),!n||n.type==="error")throw new u("no-response",{url:t.url})}catch(a){if(a instanceof Error){for(const o of e.iterateCallbacks("handlerDidError"))if(n=await o({error:a,event:s,request:t}),n)break}if(n)({}).NODE_ENV!=="production"&&i.log(`While responding to '${h(t.url)}', an ${a instanceof Error?a.toString():""} error occurred. Using a fallback response provided by a handlerDidError plugin.`);else throw a}for(const a of e.iterateCallbacks("handlerWillRespond"))n=await a({event:s,request:t,response:n});return n}async _awaitComplete(e,t,s,n){let a,o;try{a=await e}catch{}try{await t.runCallbacks("handlerDidRespond",{event:n,request:s,response:a}),await t.doneWaiting()}catch(c){c instanceof Error&&(o=c)}if(await t.runCallbacks("handlerDidComplete",{event:n,request:s,response:a,error:o}),t.destroy(),o)throw o}}const P={strategyStart:(r,e)=>`Using ${r} to respond to '${h(e.url)}'`,printFinalResponse:r=>{r&&(i.groupCollapsed("View the final response here."),i.log(r||"[No response returned]"),i.groupEnd())}},ie={cacheWillUpdate:async({response:r})=>r.status===200||r.status===0?r:null};class ce extends L{constructor(e={}){super(e),this.plugins.some(t=>"cacheWillUpdate"in t)||this.plugins.unshift(ie)}async _handle(e,t){const s=[];({}).NODE_ENV!=="production"&&d.isInstance(e,Request,{moduleName:"workbox-strategies",className:this.constructor.name,funcName:"handle",paramName:"request"});const n=t.fetchAndCachePut(e).catch(()=>{});t.waitUntil(n);let a=await t.cacheMatch(e),o;if(a)({}).NODE_ENV!=="production"&&s.push(`Found a cached response in the '${this.cacheName}' cache. Will update with the network response in the background.`);else{({}).NODE_ENV!=="production"&&s.push(`No response found in the '${this.cacheName}' cache. Will wait for the network response.`);try{a=await n}catch(c){c instanceof Error&&(o=c)}}if({}.NODE_ENV!=="production"){i.groupCollapsed(P.strategyStart(this.constructor.name,e));for(const c of s)i.log(c);P.printFinalResponse(a),i.groupEnd()}if(!a)throw new u("no-response",{url:e.url,error:o});return a}}try{self["workbox:precaching:7.0.0"]&&_()}catch{}const le="__WB_REVISION__";function ue(r){if(!r)throw new u("add-to-cache-list-unexpected-type",{entry:r});if(typeof r=="string"){const a=new URL(r,location.href);return{cacheKey:a.href,url:a.href}}const{revision:e,url:t}=r;if(!t)throw new u("add-to-cache-list-unexpected-type",{entry:r});if(!e){const a=new URL(t,location.href);return{cacheKey:a.href,url:a.href}}const s=new URL(t,location.href),n=new URL(t,location.href);return s.searchParams.set(le,e),{cacheKey:s.href,url:n.href}}class he{constructor(){this.updatedURLs=[],this.notUpdatedURLs=[],this.handlerWillStart=async({request:e,state:t})=>{t&&(t.originalRequest=e)},this.cachedResponseWillBeUsed=async({event:e,state:t,cachedResponse:s})=>{if(e.type==="install"&&t&&t.originalRequest&&t.originalRequest instanceof Request){const n=t.originalRequest.url;s?this.notUpdatedURLs.push(n):this.updatedURLs.push(n)}return s}}}class de{constructor({precacheController:e}){this.cacheKeyWillBeUsed=async({request:t,params:s})=>{const n=(s==null?void 0:s.cacheKey)||this._precacheController.getCacheKeyForURL(t.url);return n?new Request(n,{headers:t.headers}):t},this._precacheController=e}}const fe=(r,e)=>{i.groupCollapsed(r);for(const t of e)i.log(t);i.groupEnd()};function pe(r){const e=r.length;e>0&&(i.groupCollapsed(`During precaching cleanup, ${e} cached request${e===1?" was":"s were"} deleted.`),fe("Deleted Cache Requests",r),i.groupEnd())}function V(r,e){if(e.length!==0){i.groupCollapsed(r);for(const t of e)i.log(t);i.groupEnd()}}function ge(r,e){const t=r.length,s=e.length;if(t||s){let n=`Precaching ${t} file${t===1?"":"s"}.`;s>0&&(n+=` ${s} file${s===1?" is":"s are"} already cached.`),i.groupCollapsed(n),V("View newly precached URLs.",r),V("View previously precached URLs.",e),i.groupEnd()}}class w extends L{constructor(e={}){e.cacheName=R.getPrecacheName(e.cacheName),super(e),this._fallbackToNetwork=e.fallbackToNetwork!==!1,this.plugins.push(w.copyRedirectedCacheableResponsesPlugin)}async _handle(e,t){const s=await t.cacheMatch(e);return s||(t.event&&t.event.type==="install"?await this._handleInstall(e,t):await this._handleFetch(e,t))}async _handleFetch(e,t){let s;const n=t.params||{};if(this._fallbackToNetwork){({}).NODE_ENV!=="production"&&i.warn(`The precached response for ${h(e.url)} in ${this.cacheName} was not found. Falling back to the network.`);const a=n.integrity,o=e.integrity,c=!o||o===a;if(s=await t.fetch(new Request(e,{integrity:e.mode!=="no-cors"?o||a:void 0})),a&&c&&e.mode!=="no-cors"){this._useDefaultCacheabilityPluginIfNeeded();const l=await t.cachePut(e,s.clone());({}).NODE_ENV!=="production"&&l&&i.log(`A response for ${h(e.url)} was used to "repair" the precache.`)}}else throw new u("missing-precache-entry",{cacheName:this.cacheName,url:e.url});if({}.NODE_ENV!=="production"){const a=n.cacheKey||await t.getCacheKey(e,"read");i.groupCollapsed("Precaching is responding to: "+h(e.url)),i.log(`Serving the precached url: ${h(a instanceof Request?a.url:a)}`),i.groupCollapsed("View request details here."),i.log(e),i.groupEnd(),i.groupCollapsed("View response details here."),i.log(s),i.groupEnd(),i.groupEnd()}return s}async _handleInstall(e,t){this._useDefaultCacheabilityPluginIfNeeded();const s=await t.fetch(e);if(!await t.cachePut(e,s.clone()))throw new u("bad-precaching-response",{url:e.url,status:s.status});return s}_useDefaultCacheabilityPluginIfNeeded(){let e=null,t=0;for(const[s,n]of this.plugins.entries())n!==w.copyRedirectedCacheableResponsesPlugin&&(n===w.defaultPrecacheCacheabilityPlugin&&(e=s),n.cacheWillUpdate&&t++);t===0?this.plugins.push(w.defaultPrecacheCacheabilityPlugin):t>1&&e!==null&&this.plugins.splice(e,1)}}w.defaultPrecacheCacheabilityPlugin={async cacheWillUpdate({response:r}){return!r||r.status>=400?null:r}},w.copyRedirectedCacheableResponsesPlugin={async cacheWillUpdate({response:r}){return r.redirected?await ee(r):r}};class we{constructor({cacheName:e,plugins:t=[],fallbackToNetwork:s=!0}={}){this._urlsToCacheKeys=new Map,this._urlsToCacheModes=new Map,this._cacheKeysToIntegrities=new Map,this._strategy=new w({cacheName:R.getPrecacheName(e),plugins:[...t,new de({precacheController:this})],fallbackToNetwork:s}),this.install=this.install.bind(this),this.activate=this.activate.bind(this)}get strategy(){return this._strategy}precache(e){this.addToCacheList(e),this._installAndActiveListenersAdded||(self.addEventListener("install",this.install),self.addEventListener("activate",this.activate),this._installAndActiveListenersAdded=!0)}addToCacheList(e){({}).NODE_ENV!=="production"&&d.isArray(e,{moduleName:"workbox-precaching",className:"PrecacheController",funcName:"addToCacheList",paramName:"entries"});const t=[];for(const s of e){typeof s=="string"?t.push(s):s&&s.revision===void 0&&t.push(s.url);const{cacheKey:n,url:a}=ue(s),o=typeof s!="string"&&s.revision?"reload":"default";if(this._urlsToCacheKeys.has(a)&&this._urlsToCacheKeys.get(a)!==n)throw new u("add-to-cache-list-conflicting-entries",{firstEntry:this._urlsToCacheKeys.get(a),secondEntry:n});if(typeof s!="string"&&s.integrity){if(this._cacheKeysToIntegrities.has(n)&&this._cacheKeysToIntegrities.get(n)!==s.integrity)throw new u("add-to-cache-list-conflicting-integrities",{url:a});this._cacheKeysToIntegrities.set(n,s.integrity)}if(this._urlsToCacheKeys.set(a,n),this._urlsToCacheModes.set(a,o),t.length>0){const c=`Workbox is precaching URLs without revision info: ${t.join(", ")} -This is generally NOT safe. Learn more at https://bit.ly/wb-precache`;({}).NODE_ENV==="production"?console.warn(c):i.warn(c)}}}install(e){return v(e,async()=>{const t=new he;this.strategy.plugins.push(t);for(const[a,o]of this._urlsToCacheKeys){const c=this._cacheKeysToIntegrities.get(o),l=this._urlsToCacheModes.get(a),m=new Request(a,{integrity:c,cache:l,credentials:"same-origin"});await Promise.all(this.strategy.handleAll({params:{cacheKey:o},request:m,event:e}))}const{updatedURLs:s,notUpdatedURLs:n}=t;return{}.NODE_ENV!=="production"&&ge(s,n),{updatedURLs:s,notUpdatedURLs:n}})}activate(e){return v(e,async()=>{const t=await self.caches.open(this.strategy.cacheName),s=await t.keys(),n=new Set(this._urlsToCacheKeys.values()),a=[];for(const o of s)n.has(o.url)||(await t.delete(o),a.push(o.url));return{}.NODE_ENV!=="production"&&pe(a),{deletedURLs:a}})}getURLsToCacheKeys(){return this._urlsToCacheKeys}getCachedURLs(){return[...this._urlsToCacheKeys.keys()]}getCacheKeyForURL(e){const t=new URL(e,location.href);return this._urlsToCacheKeys.get(t.href)}getIntegrityForCacheKey(e){return this._cacheKeysToIntegrities.get(e)}async matchPrecache(e){const t=e instanceof Request?e.url:e,s=this.getCacheKeyForURL(t);if(s)return(await self.caches.open(this.strategy.cacheName)).match(s)}createHandlerBoundToURL(e){const t=this.getCacheKeyForURL(e);if(!t)throw new u("non-precached-url",{url:e});return s=>(s.request=new Request(e),s.params=Object.assign({cacheKey:t},s.params),this.strategy.handle(s))}}let U;const K=()=>(U||(U=new we),U);function me(r,e=[]){for(const t of[...r.searchParams.keys()])e.some(s=>s.test(t))&&r.searchParams.delete(t);return r}function*ye(r,{ignoreURLParametersMatching:e=[/^utm_/,/^fbclid$/],directoryIndex:t="index.html",cleanURLs:s=!0,urlManipulation:n}={}){const a=new URL(r,location.href);a.hash="",yield a.href;const o=me(a,e);if(yield o.href,t&&o.pathname.endsWith("/")){const c=new URL(o.href);c.pathname+=t,yield c.href}if(s){const c=new URL(o.href);c.pathname+=".html",yield c.href}if(n){const c=n({url:a});for(const l of c)yield l.href}}class be extends N{constructor(e,t){const s=({request:n})=>{const a=e.getURLsToCacheKeys();for(const o of ye(n.url,t)){const c=a.get(o);if(c){const l=e.getIntegrityForCacheKey(c);return{cacheKey:c,integrity:l}}}({}).NODE_ENV!=="production"&&i.debug("Precaching did not find a match for "+h(n.url))};super(s,e.strategy)}}function Ne(r){const e=K(),t=new be(e,r);D(t)}const Ee="-precache-",Re=async(r,e=Ee)=>{const s=(await self.caches.keys()).filter(n=>n.includes(e)&&n.includes(self.registration.scope)&&n!==r);return await Promise.all(s.map(n=>self.caches.delete(n))),s};function _e(){self.addEventListener("activate",r=>{const e=R.getPrecacheName();r.waitUntil(Re(e).then(t=>{({}).NODE_ENV!=="production"&&t.length>0&&i.log("The following out-of-date precaches were cleaned up automatically:",t)}))})}function Ce(r){K().precache(r)}function $e(r,e){Ce(r),Ne(e)}const ke=["raw.githubusercontent.com","api.github.com","cors.bubblesort.me"];self.__WB_DISABLE_DEV_LOGS=!0,self.addEventListener("message",r=>{r.data&&r.data.type==="SKIP_WAITING"&&self.skipWaiting()}),te(),_e(),D(({url:r})=>ke.includes(r.hostname),new ce),$e([{"revision":null,"url":"assets/index-15a179a4.css"},{"revision":null,"url":"assets/index-88d1663f.js"},{"revision":null,"url":"assets/virtual_pwa-register-9dff179b.js"},{"revision":null,"url":"assets/workbox-window.prod.es5-a7b12eab.js"},{"revision":"df4d88c2a47839062329d377d9ec16d6","url":"index.html"},{"revision":"2db5793b9be971d50e1a2076028daa6a","url":"pwa-192x192.png"},{"revision":"cab59206261b6d26308ef3dcfa06c135","url":"pwa-512x512.png"},{"revision":"aebc12724353fd603685c1b59633cb31","url":"manifest.webmanifest"}])})(); +This is generally NOT safe. Learn more at https://bit.ly/wb-precache`;({}).NODE_ENV==="production"?console.warn(c):i.warn(c)}}}install(e){return v(e,async()=>{const t=new he;this.strategy.plugins.push(t);for(const[a,o]of this._urlsToCacheKeys){const c=this._cacheKeysToIntegrities.get(o),l=this._urlsToCacheModes.get(a),m=new Request(a,{integrity:c,cache:l,credentials:"same-origin"});await Promise.all(this.strategy.handleAll({params:{cacheKey:o},request:m,event:e}))}const{updatedURLs:s,notUpdatedURLs:n}=t;return{}.NODE_ENV!=="production"&&ge(s,n),{updatedURLs:s,notUpdatedURLs:n}})}activate(e){return v(e,async()=>{const t=await self.caches.open(this.strategy.cacheName),s=await t.keys(),n=new Set(this._urlsToCacheKeys.values()),a=[];for(const o of s)n.has(o.url)||(await t.delete(o),a.push(o.url));return{}.NODE_ENV!=="production"&&pe(a),{deletedURLs:a}})}getURLsToCacheKeys(){return this._urlsToCacheKeys}getCachedURLs(){return[...this._urlsToCacheKeys.keys()]}getCacheKeyForURL(e){const t=new URL(e,location.href);return this._urlsToCacheKeys.get(t.href)}getIntegrityForCacheKey(e){return this._cacheKeysToIntegrities.get(e)}async matchPrecache(e){const t=e instanceof Request?e.url:e,s=this.getCacheKeyForURL(t);if(s)return(await self.caches.open(this.strategy.cacheName)).match(s)}createHandlerBoundToURL(e){const t=this.getCacheKeyForURL(e);if(!t)throw new u("non-precached-url",{url:e});return s=>(s.request=new Request(e),s.params=Object.assign({cacheKey:t},s.params),this.strategy.handle(s))}}let U;const K=()=>(U||(U=new we),U);function me(r,e=[]){for(const t of[...r.searchParams.keys()])e.some(s=>s.test(t))&&r.searchParams.delete(t);return r}function*ye(r,{ignoreURLParametersMatching:e=[/^utm_/,/^fbclid$/],directoryIndex:t="index.html",cleanURLs:s=!0,urlManipulation:n}={}){const a=new URL(r,location.href);a.hash="",yield a.href;const o=me(a,e);if(yield o.href,t&&o.pathname.endsWith("/")){const c=new URL(o.href);c.pathname+=t,yield c.href}if(s){const c=new URL(o.href);c.pathname+=".html",yield c.href}if(n){const c=n({url:a});for(const l of c)yield l.href}}class be extends N{constructor(e,t){const s=({request:n})=>{const a=e.getURLsToCacheKeys();for(const o of ye(n.url,t)){const c=a.get(o);if(c){const l=e.getIntegrityForCacheKey(c);return{cacheKey:c,integrity:l}}}({}).NODE_ENV!=="production"&&i.debug("Precaching did not find a match for "+h(n.url))};super(s,e.strategy)}}function Ne(r){const e=K(),t=new be(e,r);D(t)}const Ee="-precache-",Re=async(r,e=Ee)=>{const s=(await self.caches.keys()).filter(n=>n.includes(e)&&n.includes(self.registration.scope)&&n!==r);return await Promise.all(s.map(n=>self.caches.delete(n))),s};function _e(){self.addEventListener("activate",r=>{const e=R.getPrecacheName();r.waitUntil(Re(e).then(t=>{({}).NODE_ENV!=="production"&&t.length>0&&i.log("The following out-of-date precaches were cleaned up automatically:",t)}))})}function Ce(r){K().precache(r)}function $e(r,e){Ce(r),Ne(e)}const ke=["raw.githubusercontent.com","api.github.com","cors.bubblesort.me"];self.__WB_DISABLE_DEV_LOGS=!0,self.addEventListener("message",r=>{r.data&&r.data.type==="SKIP_WAITING"&&self.skipWaiting()}),te(),_e(),D(({url:r})=>ke.includes(r.hostname),new ce),$e([{"revision":null,"url":"assets/index-23047523.css"},{"revision":null,"url":"assets/index-6140690f.js"},{"revision":null,"url":"assets/virtual_pwa-register-7dd63b88.js"},{"revision":null,"url":"assets/workbox-window.prod.es5-a7b12eab.js"},{"revision":"3ebc522b738b0bb7623d6692c1d0883b","url":"index.html"},{"revision":"2db5793b9be971d50e1a2076028daa6a","url":"pwa-192x192.png"},{"revision":"cab59206261b6d26308ef3dcfa06c135","url":"pwa-512x512.png"},{"revision":"aebc12724353fd603685c1b59633cb31","url":"manifest.webmanifest"}])})();