From 28baebc1d15a82184f2303b3a7748d048f28e8ec Mon Sep 17 00:00:00 2001 From: Alex Hunt Date: Mon, 9 Nov 2026 14:06:24 +0000 Subject: [PATCH] Bump react-devtools to 8.0.0 --- config/gni/devtools_grd_files.gni | 1 - .../react_devtools/ReactDevToolsViewBase.ts | 6 +- front_end/third_party/react-devtools/BUILD.gn | 1 - .../react-devtools/package/frontend.css | 1754 +- .../react-devtools/package/frontend.d.ts | 76 +- .../react-devtools/package/frontend.js | 30441 +++++----------- .../package/importFile.worker.worker.js | 4129 --- .../react-devtools-tsconfig.json | 3 +- 8 files changed, 11254 insertions(+), 25157 deletions(-) delete mode 100644 front_end/third_party/react-devtools/package/importFile.worker.worker.js diff --git a/config/gni/devtools_grd_files.gni b/config/gni/devtools_grd_files.gni index 2c103a0f8ae5..b01eefc5671d 100644 --- a/config/gni/devtools_grd_files.gni +++ b/config/gni/devtools_grd_files.gni @@ -2257,7 +2257,6 @@ grd_files_debug_sources = [ "front_end/third_party/puppeteer/package/lib/esm/third_party/rxjs/rxjs.js", "front_end/third_party/react-devtools/package/frontend.css.js", "front_end/third_party/react-devtools/package/frontend.js", - "front_end/third_party/react-devtools/package/importFile.worker.worker.js", "front_end/third_party/third-party-web/lib/nostats-subset.js", "front_end/third_party/wasmparser/package/dist/esm/WasmDis.js", "front_end/third_party/wasmparser/package/dist/esm/WasmParser.js", diff --git a/front_end/panels/react_devtools/ReactDevToolsViewBase.ts b/front_end/panels/react_devtools/ReactDevToolsViewBase.ts index 4f6eee89c633..3084f6863a31 100644 --- a/front_end/panels/react_devtools/ReactDevToolsViewBase.ts +++ b/front_end/panels/react_devtools/ReactDevToolsViewBase.ts @@ -63,8 +63,10 @@ async function openResource( throw new Error('Could not find resource for ' + url); } -function viewElementSourceFunction(source: ReactDevToolsTypes.Source, symbolicatedSource: ReactDevToolsTypes.Source | null): void { - const {sourceURL, line, column} = symbolicatedSource +type ReactDevToolsSource = ReactDevToolsTypes.ReactFunctionLocation | ReactDevToolsTypes.ReactCallSite; + +function viewElementSourceFunction(source: ReactDevToolsSource, symbolicatedSource: ReactDevToolsSource | null): void { + const [, sourceURL, line, column] = symbolicatedSource ? symbolicatedSource : source; diff --git a/front_end/third_party/react-devtools/BUILD.gn b/front_end/third_party/react-devtools/BUILD.gn index dcef30dca3f6..0bb05eeca4d1 100644 --- a/front_end/third_party/react-devtools/BUILD.gn +++ b/front_end/third_party/react-devtools/BUILD.gn @@ -19,7 +19,6 @@ devtools_pre_built("react-devtools") { "react-devtools-tsconfig.json", "package/frontend.d.ts", "package/frontend.js", - "package/importFile.worker.worker.js" ] } diff --git a/front_end/third_party/react-devtools/package/frontend.css b/front_end/third_party/react-devtools/package/frontend.css index 0dc2b5a06f4b..d2b7ac2ed0e5 100644 --- a/front_end/third_party/react-devtools/package/frontend.css +++ b/front_end/third_party/react-devtools/package/frontend.css @@ -217,6 +217,108 @@ color: var(--color-text); } +.qcO5nQrEYlrbGUI5_HV2 { + border: none; + border-radius: 0.25rem; + padding: 0.25rem 0.5rem; + font-family: var(--font-family-sans); + font-size: 12px; + background-color: var(--color-tooltip-background); + color: var(--color-tooltip-text); + box-shadow: 1px 1px 2px var(--color-shadow); + + /* Make sure this is above the DevTools, which are above the Overlay */ + z-index: 10000002; +} + +.sP6uS8ZOU4PkDlNU0AYK { + background-color: var(--color-forget-badge-background); + color: var(--color-forget-text); + padding-right: 1.75em; + position: relative; +} + +.sP6uS8ZOU4PkDlNU0AYK::after { + bottom: 0; + content: '✨'; + position: absolute; + right: 0.25em; +} + +.SjNrJ30jUO5kUSCsWh4c { + display: inline-flex; + align-items: center; +} + +.SjNrJ30jUO5kUSCsWh4c *:not(:first-child) { + margin-left: 0.25rem; +} + +.j9rH1DJ2jYY7I1tswNOx { + font-family: var(--font-family-monospace); + font-size: var(--font-size-monospace-small); + color: var(--color-component-badge-count); +} + +.ZyguyEAlgtIAxL8BF0X2 { + display: flex; + flex-direction: column; +} + +.o9d_jIRNkIvFv_Pi6HYf { + /* even if empty, provides layout alignment with the main view */ + display: flex; + flex: 0 0 42px; + border-bottom: 1px solid var(--color-border); +} + +.FcTxjcHq9hXf4lk52K7X { + cursor: default; + list-style-type: none; + margin: 0; + padding: 0; +} + +.FcTxjcHq9hXf4lk52K7X[data-pending-activity-slice-selection="true"] { + cursor: wait; +} + +.FcTxjcHq9hXf4lk52K7X:focus { + outline: none; +} + +.Gbv3ezDLJ_u9EuA4D8ZZ { + color: var(--color-component-name); + line-height: var(--line-height-data); + padding: 0 0.25rem; + user-select: none; +} + +.Gbv3ezDLJ_u9EuA4D8ZZ:hover { + background-color: var(--color-background-hover); +} + +.Gbv3ezDLJ_u9EuA4D8ZZ[aria-selected="true"] { + background-color: var(--color-background-inactive); +} + +.FcTxjcHq9hXf4lk52K7X:focus .Gbv3ezDLJ_u9EuA4D8ZZ[aria-selected="true"] { + background-color: var(--color-background-selected); + color: var(--color-text-selected); + + /* Invert colors */ + --color-component-name: var(--color-component-name-inverted); + --color-text: var(--color-text-selected); + --color-component-badge-background: var( + --color-component-badge-background-inverted + ); + --color-forget-badge-background: var(--color-forget-badge-background-inverted); + --color-component-badge-count: var(--color-component-badge-count-inverted); + --color-attribute-name: var(--color-attribute-name-inverted); + --color-attribute-value: var(--color-attribute-value-inverted); + --color-expand-collapse-toggle: var(--color-component-name-inverted); +} + .dPHAvUl3PSp59chvDv66, .rcOJ8fC0AbSrvixHIvdw, .V5OmBsGHEXanXzw77sNS { @@ -273,57 +375,6 @@ cursor: default; } -.qcO5nQrEYlrbGUI5_HV2 { - border: none; - border-radius: 0.25rem; - padding: 0.25rem 0.5rem; - font-family: var(--font-family-sans); - font-size: 12px; - background-color: var(--color-tooltip-background); - color: var(--color-tooltip-text); - box-shadow: 1px 1px 2px var(--color-shadow); - - /* Make sure this is above the DevTools, which are above the Overlay */ - z-index: 10000002; -} - -.sP6uS8ZOU4PkDlNU0AYK { - background-color: var(--color-forget-badge-background); - color: var(--color-forget-text); - padding-right: 1.75em; - position: relative; -} - -.sP6uS8ZOU4PkDlNU0AYK::after { - bottom: 0; - content: '✨'; - position: absolute; - right: 0.25em; -} - -.j3Lt3YqBHSwuvIVtnIxU { - display: flex; -} - -.j3Lt3YqBHSwuvIVtnIxU > span { /* targets .ToggleContent */ - padding: 0; -} - -.SjNrJ30jUO5kUSCsWh4c { - display: inline-flex; - align-items: center; -} - -.SjNrJ30jUO5kUSCsWh4c *:not(:first-child) { - margin-left: 0.25rem; -} - -.j9rH1DJ2jYY7I1tswNOx { - font-family: var(--font-family-monospace); - font-size: var(--font-size-monospace-small); - color: var(--color-component-badge-count); -} - .MOeHyomWH2dTqysCu6Ii { border: none; background: var(--color-button-background); @@ -412,6 +463,15 @@ overflow-x: auto; } +.WtcZWJv4iheZLB6KcarF { + display: inline-flex; + align-items: baseline; +} + +.tVKTqcrj07wtCkbjZPxz { + user-select: none; +} + .cUTK6f0z3ITKjeL2ol8i { flex: 0 0 auto; height: 20px; @@ -483,6 +543,22 @@ margin-left: 0.25rem; } +.hL22yQCjQzU4O_pjtwuf { + min-width: 0.5rem; + flex: 1 1 auto; + border: none; + background: transparent; + outline: none; + padding: 0; + border: none; + font-family: var(--font-family-monospace); + font-size: var(--font-size-monospace-normal); +} + +.hL22yQCjQzU4O_pjtwuf:focus { + border-color: var(--color-border); +} + .VMs1TFKbGygwf2rHPPkR { flex: 1 1; display: flex; @@ -513,6 +589,53 @@ white-space: pre; } +/* Shown while the (deferred) search is still computing matches. */ +.MleADBxWijqo1aPFBmM0 { + flex: 0 0 auto; + width: 0.75rem; + height: 0.75rem; + margin: 0 0.25rem; + border: 2px solid var(--color-border); + border-top-color: var(--color-dim); + border-radius: 50%; + animation: Po9Hk9TEw92pqO4LDlFF 0.6s linear infinite; +} + +@keyframes Po9Hk9TEw92pqO4LDlFF { + to { + transform: rotate(360deg); + } +} + +.cY2LeW1cdGXMMZGy9JVs { + color: var(--color-text); + font-size: var(--font-size-sans-normal); + font-family: inherit; + text-align: center; + background: none; + /* A visible border so it's clear this number can be edited. */ + border: 1px solid var(--color-border); + border-radius: 0.125rem; + outline: none; + padding: 0 0.25rem; + margin: 0; + /* Keep a floor so the box doesn't shrink/jitter as the digit count changes. */ + min-width: 1.5ch; +} + +/* AutoSizeInput sizes the element width to fit the text exactly (assuming no + padding/border). content-box makes our padding + border add around that + width rather than eating into it and clipping digits. The descendant + selector raises specificity above the global `.DevTools *` border-box rule, + which otherwise wins by source order at equal specificity. */ +.yVLbSSc1CG5ZY60ChkxC .cY2LeW1cdGXMMZGy9JVs { + box-sizing: content-box; +} + +.cY2LeW1cdGXMMZGy9JVs:focus { + background-color: var(--color-button-background-focus); +} + .RO_9dALMy9pEJs_usl1_{ height: 20px; width: 1px; @@ -562,6 +685,7 @@ font-family: var(--font-family-monospace); font-size: var(--font-size-monospace-normal); line-height: var(--line-height-data); + user-select: none; } .aJUb5cChORMbLRrbpgMQ { @@ -622,6 +746,35 @@ color: var(--color-button-active); } +.ecRv8ZDEd2jUlshrmYRY { + max-width: 100%; + overflow-x: auto; + flex: 1; + display: flex; + align-items: center; + position: relative; +} + +.jqWOqVL5M9suM9ezOHdi { + color: var(--color-button-active); + font-family: var(--font-family-monospace); + font-size: var(--font-size-monospace-normal); +} + +.MQ5uwAnmVzMChWn38AP9 { + display: flex; + flex: 1 1 auto; + overflow-x: auto; +} + +.zfUfyaOfyYWPoCzp0Mqt { + flex: 0 0 auto; + height: 20px; + width: 1px; + background-color: var(--color-border); + margin: 0 0.5rem; +} + .Jw1vKro1qyK08Kgi4lXQ { flex: 0 0 auto; display: flex; @@ -764,41 +917,18 @@ .VaoI4BlPGgwJwhOCRtsD { height: 100%; } -.LB5T_pKaz1qwpQSf8mfI { - display: flex; -} - -.LB5T_pKaz1qwpQSf8mfI > span { /* targets .ToggleContent */ - padding: 0; -} - .PsW2lOQKNhPWyn8VKINA { cursor: help; } .eKXhn2sbXs1thQ1xt1b6 { user-select: none; - display: inline-flex; -} - -.eKXhn2sbXs1thQ1xt1b6 *:not(:first-child) { - margin-left: 0.25rem; -} - -.hL22yQCjQzU4O_pjtwuf { - min-width: 0.5rem; - flex: 1 1 auto; - border: none; - background: transparent; - outline: none; - padding: 0; - border: none; - font-family: var(--font-family-monospace); - font-size: var(--font-size-monospace-normal); -} - -.hL22yQCjQzU4O_pjtwuf:focus { - border-color: var(--color-border); + flex: 1 1 auto; + min-width: 0; + display: flex; + flex-wrap: wrap; + justify-content: start; + gap: 0.25rem; } .HPF7_KiXXen5Qvttf5jQ { @@ -1042,25 +1172,122 @@ min-width: 1rem; } -.DmmJ_c1P9vfx9ERrACGM, .RjKfbqv4ZTMxYD91YOsJ { - padding: 0.25rem 0 0 0; +.wpvd4DQpK2H76LOb60tA { + border-top: 1px solid var(--color-border); + padding: 0.5rem 1rem; } -.ZZgXK0QkPtmRlYNt1vOs { - padding: 0 0.25rem; +.wpvd4DQpK2H76LOb60tA:last-child { + margin-bottom: -0.25rem; } -.ZZgXK0QkPtmRlYNt1vOs { - padding: 0 0.25rem; +.XUsgh2a6XXl50komqVYN { + border-top: 1px solid var(--color-border); } -.F8ZcQwTPGdaFfSSN4It1, .OKLOnFhXJqOtrex9P8_W { - padding: 0 0.5rem; - display: flex; - align-items: center; +.XUsgh2a6XXl50komqVYN:last-child { + margin-bottom: -0.25rem; } -.F8ZcQwTPGdaFfSSN4It1 { +.lTLopnDNzdBuHrImox94 { + width: 100%; + padding: 0.25rem; + display: flex; +} + +.lTLopnDNzdBuHrImox94[data-pending="true"] { + cursor: progress; +} + +.GfsgP0fJOc9CyOYnMV0_ { + flex: 0 0 1rem; + margin-left: -0.25rem; + width: 1rem; + height: 1rem; + padding: 0; + color: var(--color-expand-collapse-toggle); +} + +.rBP_gskrUPrLMQ0B3FjI, .xLvA73T562jp_SpvSaOd, .g7fXKbuuoAf3IKZeylho, .NQ_N2_KgvfeIFd635scU { + font-family: var(--font-family-monospace); + font-size: var(--font-size-monospace-normal); + text-align: left; + white-space: nowrap; +} +.rBP_gskrUPrLMQ0B3FjI { + flex: 0 1 auto; + overflow: hidden; + text-overflow: ellipsis; +} + +.g7fXKbuuoAf3IKZeylho { + flex: 0 0 auto; + white-space: pre; +} + +.NQ_N2_KgvfeIFd635scU { + flex: 1 0 0; +} + +.KgC_fm8mDhSeYsPk3ZWD { + margin-top: -0.25rem; +} + +.SVJPLuO65T76_Oinb4g3 { + padding: 0.25rem; +} + +.YeogGPA6kcKytqadMtEZ { + position: relative; + flex: 0 0 20%; + height: 0.25rem; + border-radius: 0.125rem; + background-color: var(--color-timebar-background); +} + +.lFMgiiT092CodgBXnq3S, .iv5g4Xd3BMVEohlDsxRW { + position: absolute; + border-radius: 0.125rem; + background-color: var(--color-suspense); + width: 100%; + height: 100%; +} + +.iv5g4Xd3BMVEohlDsxRW { + background-color: var(--color-suspense-errored); +} + +.MLn7EC_46N8ibhVPFKQD { + font-family: var(--font-family-monospace); + font-size: var(--font-size-monospace-normal); + padding-left: 1.25rem; + margin-top: 0.25rem; +} + +.oUuMYVkL9KH0wShHgvnF { + padding: 0.25rem; + padding-left: 1.25rem; +} + +.DmmJ_c1P9vfx9ERrACGM, .RjKfbqv4ZTMxYD91YOsJ { + padding: 0.25rem 0 0 0; +} + +.ZZgXK0QkPtmRlYNt1vOs { + padding: 0 0.25rem; +} + +.ZZgXK0QkPtmRlYNt1vOs { + padding: 0 0.25rem; +} + +.F8ZcQwTPGdaFfSSN4It1, .OKLOnFhXJqOtrex9P8_W { + padding: 0 0.5rem; + display: flex; + align-items: center; +} + +.F8ZcQwTPGdaFfSSN4It1 { border-top: 1px solid var(--color-console-error-border); background-color: var(--color-console-error-background); color: var(--color-error-text); @@ -1193,6 +1420,133 @@ overflow: auto; text-overflow: ellipsis; } +.dWdskSeqND9gZFOzsdm5 { + padding: 0.25rem; +} + +.XFgshQdxpiOdfesbjfGB, .y5jqK8Aj5TJriGP5YpSH { + display: flex; + padding-left: 1rem; + white-space-collapse: preserve; +} + +.tDYIppfiWEdTudqFX4t8 { + opacity: 0.5; +} + +.tDYIppfiWEdTudqFX4t8, .y5jqK8Aj5TJriGP5YpSH { + display: none; +} + +.tDYIppfiWEdTudqFX4t8.XFgshQdxpiOdfesbjfGB { + display: flex; +} + +.XFgshQdxpiOdfesbjfGB + .y5jqK8Aj5TJriGP5YpSH { + display: block; +} + +.iRjtP1XSoI5sW9_nPLl5 { + color: var(--color-link); + white-space: pre; + overflow: hidden; + text-overflow: ellipsis; + cursor: pointer; + border-radius: 0.125rem; +} + +.iRjtP1XSoI5sW9_nPLl5:hover { + background-color: var(--color-background-hover); +} + +.D9Um4i7WgVkGjd3dIdyl { + margin-left: 0.25rem; +} + +.L0PAZZ3cXr4e9qapS9A2 { + padding-left: 1rem; +} + +.vixyfeqB5ApTHkevMPWK { + background: none; + color: var(--color-link); + font: inherit; + font-style: italic; + text-decoration: underline; +} + +.pI_VJ7oR8W56RwNPRqRY { + color: var(--color-component-name); + font-family: var(--font-family-monospace); + font-size: var(--font-size-monospace-normal); + font-weight: bold; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + max-width: 100%; + border-radius: 0.25rem; + padding: 0.125rem 0.25rem; + background: none; + border: none; + display: block; +} +.pI_VJ7oR8W56RwNPRqRY:focus { + outline: none; + background-color: var(--color-button-background-focus); +} + +.DDpZnIfa9qZrTIDTLu_F { + cursor: pointer; + width: 100%; + padding: 0; +} + +.i8a6nhnEjAvd78gGEF_Q { + display: flex; + align-items: center; + padding-left: 1rem; + width: 100%; + border-radius: 0.25rem; +} + +.i8a6nhnEjAvd78gGEF_Q:hover { + background-color: var(--color-background-hover); +} + +.jNaY1TRqpuajJLZOQYTK { + color: var(--color-dim); + cursor: default; +} + +.QGBqdeQCINFdybolYjz_ { + border-radius: 0.25rem; + animation: v9U5NmE9fqe0TBuebXMr 2s infinite; +} + +@keyframes v9U5NmE9fqe0TBuebXMr { + 0%, 100% { + background-color: none; + } + 50% { + background-color: var(--color-dimmest); + } +} + +.h37LbBgC8utwNEu88NNe { + --color-suspense: var(--color-suspense-default); + --color-transition: var(--color-transition-default); +} + +.RFdbzN8FLJEvoqkvfhsP { + --color-suspense: var(--color-suspense-server); + --color-transition: var(--color-transition-server); +} + +.YduWaP37mjSstkD6B3GU { + --color-suspense: var(--color-suspense-other); + --color-transition: var(--color-transition-other); +} + .VD1V5qP1lmb39G72wedQ { padding: 0.25rem; font-family: var(--font-family-monospace); @@ -1299,20 +1653,6 @@ border-top: 1px solid var(--color-border); } -.QGBqdeQCINFdybolYjz_ { - border-radius: 0.25rem; - animation: v9U5NmE9fqe0TBuebXMr 2s infinite; -} - -@keyframes v9U5NmE9fqe0TBuebXMr { - 0%, 100% { - background-color: var(--color-dim); - } - 50% { - background-color: var(--color-dimmest) - } -} - .LmOPSwtqCOPq95UvFbZg { display: flex; align-items: center; @@ -1334,18 +1674,23 @@ margin-left: 1rem; } -.QyzwGL5CVGmpYxajigQg { - font-family: var(--font-family-sans); -} - -.G1iPSTGC6eNcmT5RjA6C { - color: var(--color-component-name); - font-family: var(--font-family-monospace); - font-size: var(--font-size-monospace-normal); - white-space: nowrap; +.NFD64eYlA1hrOS9eqR2X { + color: var(--color-link); + white-space: pre; overflow: hidden; text-overflow: ellipsis; - max-width: 100%; + flex: 1; + cursor: pointer; + border-radius: 0.125rem; + padding: 0px 2px; +} + +.NFD64eYlA1hrOS9eqR2X:hover { + background-color: var(--color-background-hover); +} + +.QyzwGL5CVGmpYxajigQg { + font-family: var(--font-family-sans); } .YOXaHk9xYzASY3DKURUA { @@ -1364,41 +1709,6 @@ } } -.G1iPSTGC6eNcmT5RjA6C { - border-radius: 0.25rem; - padding: 0.125rem 0.25rem; - background: none; - border: none; - display: block; -} -.G1iPSTGC6eNcmT5RjA6C:focus { - outline: none; - background-color: var(--color-button-background-focus); -} - -.G2BCKBICgnFcziDETl7t { - color: var(--color-dim); - cursor: default; -} - -.YuAWbMYGVSUD5Xw13fGJ { - cursor: pointer; - width: 100%; - padding: 0; -} - -.YXMHJBveMFexrfyxqi6O { - display: flex; - align-items: center; - padding-left: 1rem; - width: 100%; - border-radius: 0.25rem; -} - -.YXMHJBveMFexrfyxqi6O:hover { - background-color: var(--color-background-hover); -} - .P14TYiR8U2gzEkHw_ISN { padding-left: 1.25rem; white-space: nowrap; @@ -1406,12 +1716,14 @@ text-overflow: ellipsis; } +.PXoW6yiwsQLUS0UufY_z { + padding-left: 1.25rem; +} .W87cPUOEq9_b8BJ8wzi_ { display: flex; flex-direction: column; height: 100%; width: 100%; - border-left: 1px solid var(--color-border); border-top: 1px solid var(--color-border); } @@ -1477,7 +1789,11 @@ padding: 0.25rem; color: var(--color-dimmer); font-style: italic; - border-left: 1px solid var(--color-border); +} + +.xf8jJ99IKk5wSxAfBZ2b { + padding: 0.25rem; + font-style: italic; } .qItvNDYiaAL24IKVfRqL { @@ -1486,6 +1802,14 @@ color: var(--color-console-error-icon); } +.aIqo43ZcaxjZ9ZsajbGi { + height: 20px; + width: 1px; + flex: 0 0 1px; + margin: 0 0.5rem; + background-color: var(--color-border); +} + .PFpmDOwgyV41JdBnRz9Z { position: absolute; width: 100%; @@ -1682,8 +2006,9 @@ margin: 0.125rem 0.25rem 0.125rem 0; } -.nJPtP4BdOmVGjNgNGrft { - margin: 0.5rem 0; +.cBQkVNKAObkSjP7hDT_y { + opacity: 0.5; + cursor: not-allowed; } .LF27cZYKRmoLaJO_HhHw { @@ -1886,13 +2211,13 @@ .mtKVxGxGerKyM404mgS6 { flex: 0 0 var(--horizontal-resize-percentage); - overflow: auto; } .zBXCQOyxTkno88EftTO3 { flex: 1 1 35%; overflow-x: hidden; overflow-y: auto; + border-left: 1px solid var(--color-border); } .LvlXDd_vWgrnA_2hlp6P { @@ -1902,13 +2227,20 @@ .KruXWRv8AZhJAyJ4mgCu { position: absolute; - left: -2px; + /* + * moving the bar out of its bounding box might cause its hitbox to overlap + * with another scrollbar creating disorienting UX where you both resize and scroll + * at the same time. + * If you adjust this value, double check that starting resize right on this edge + * doesn't also cause scroll + */ + left: 1px; width: 5px; height: 100%; cursor: ew-resize; } -@media screen and (max-width: 600px) { +@container devtools (width < 600px) { .sq7P_up0IVLFeviKrLng { flex-direction: column; } @@ -1919,10 +2251,11 @@ .zBXCQOyxTkno88EftTO3 { flex: 1 1 50%; + border-left: none; } .KruXWRv8AZhJAyJ4mgCu { - top: -2px; + top: 1px; left: 0; width: 100%; height: 5px; @@ -1975,6 +2308,15 @@ transition: all ease-in-out 250ms; } +._5xGz7fm94OdCZ4A_55L { + border-radius: 0.125rem; + background-color: var(--color-search-match); +} +.YIPJ0G0nEkGHkV5LarcR { + border-radius: 0.125rem; + background-color: var(--color-search-match-current); +} + .p9pnq6uefSWIZs0uyvsm { pointer-events: none; white-space: nowrap; @@ -2208,6 +2550,251 @@ color: var(--color-button-disabled); } +.N8H0SJ33TtBea__rELXw { + height: 20px; + width: 1px; + border-left: 1px solid var(--color-border); + padding-left: 0.25rem; + margin-left: 0.25rem; +} + +/** + * https://developer.mozilla.org/en-US/docs/Web/API/File/Using_files_from_web_applications + */ +._08ibVjqcFQVJ0Dv8n1AX { + position: absolute !important; + height: 1px; + width: 1px; + overflow: hidden; + clip: rect(1px, 1px, 1px, 1px); +} + +.aieWFlSkxB_kzGCdLw_G { + margin: 0.5rem 0; + color: var(--color-dim); + font-family: var(--font-family-monospace); + font-size: var(--font-size-monospace-normal); +} + +.jw93IlCe1adpUzntTNgc { + user-select: none; + cursor: pointer; + border-bottom: 3px solid transparent; + padding-top: 4px; + padding-bottom: 1px; + display: flex; + align-items: flex-end; +} +.jw93IlCe1adpUzntTNgc:hover { + background-color: var(--color-background); +} + +._5XUdsPllhotmtTs9R33A, +.tX5mJ_WVcSwasnpmMncZ { + width: 100%; + min-height: 2px; + background-color: var(--color-commit-did-not-render-fill); + color: var(--color-commit-did-not-render-fill-text); +} + +.tX5mJ_WVcSwasnpmMncZ { + background-color: var(--color-button-active); +} +.sfkKfFJiQWXm4ZkgOQA_ { + /** + * The decision to suppress the default (horizontal) scroll bars is intentional. + * The snapshot selector is small enough that the scrollbar renders it essentially useless. + * There are two alternative navigation mechanisms (arrow keys and arrow buttons). + * If necessary, we could also expand the click-and-drag mechanism to scroll. + */ + overflow-x: hidden !important; +} + +.uWBBMcT5QRe8BLmRr5DN { + margin-top: 2.5rem; +} + +.PeBCG3928_FRgKe17he8 { + list-style: none; + padding: 0; + margin: 0; +} + +.wKr9YTA5FM7_JaJbZOv2 { + display: flex; +} + +.cfm4U9M_1T9x2RmXMrxG { + font-weight: bold; + margin-right: 0.25rem; +} +.cfm4U9M_1T9x2RmXMrxG:after { + content: ':'; +} + +.qRIEqFLWDIjANIC0Ntie { + flex-grow: 1; + text-align: end; +} + +.izM1TvBpZUUcTQ42Frqn { + flex-grow: 1; +} + +.s7evU0HIQSOHulfOSX9I { + list-style: none; + margin: 0 0 0 1rem; + padding: 0; +} + +.c8bhlz4IND24Tuk1grrp { + display: flex; +} + +.WD60Q47uUTiP3xkXlZyb { + margin-right: 0.25rem; +} +.WD60Q47uUTiP3xkXlZyb:after { + content: ':'; +} + +.xhTBBmJDUq4Q4FqKQ0Ej { + flex-grow: 1; + text-align: end; +} +._CufCnCVGPGWnSFl1uho { + flex: 0 0 auto; + margin-left: 0.25rem; +} + +.Hl8vt0A1Pvc45oOEfvfc { + height: 100%; + min-width: 30px; + margin-left: 0.25rem; + overflow: visible; +} +.Hl8vt0A1Pvc45oOEfvfc:focus { + outline: none; + background-color: var(--color-button-background-focus); +} + +.xiLvxcsoqxeWVh07R31l { + flex: 0 0 auto; + white-space: nowrap; + font-family: var(--font-family-monospace); + margin-left: 0.25rem; +} + +.jsUKzO10uV20A3wnvydO { + height: 100%; + display: flex; + align-items: center; + justify-content: center; + color: var(--color-dim); +} + +.ugxes_bEQaeJOFCGJiHj { + background: none; + font-size: var(--font-size-sans-normal); + text-align: right; + font-family: var(--font-family-monospace); + border: 1px solid transparent; + border-radius: 0.125rem; + padding: 0.125rem; + color: var(--color-attribute-editable-value); +} + +.ugxes_bEQaeJOFCGJiHj:focus { + background-color: var(--color-button-background-focus); + outline: none; +} + +.N5BzlnGYbkkzyvpM4qiQ { + margin: 0 0 0.5rem; +} + +.OgEAxEkwb3k_69AoeGQg, +._1c63tyMUi98qTClO_SL, +.IfiD3wgD1AOg2rtpeal7 { + display: block; + width: 100%; + text-align: left; + background: none; + border: none; + padding: 0.25rem 0.5rem; + color: var(--color-text); +} +._1c63tyMUi98qTClO_SL:focus, +._1c63tyMUi98qTClO_SL:hover { + outline: none; + background-color: var(--color-background-hover); +} + +.OgEAxEkwb3k_69AoeGQg, +.IfiD3wgD1AOg2rtpeal7 { + color: var(--color-dim); +} + +.Db7NQhHEeI91oH3Hvbam { + height: 2.25rem; + padding: 0 0.5rem; + flex: 0 0 auto; + display: flex; + align-items: center; + border-bottom: 1px solid var(--color-border); +} + +.aZe2MG7Dqp4KMuyOUDBb { + padding: 0.5rem; + user-select: none; + overflow: auto; +} + +.f6VXZunRdhS7mNMG6eEP { + list-style: none; + margin: 0; + padding: 0; +} + +.kcRreMlssKZxm_LOVtFG { + margin: 0 0 0.5rem; +} + +.ZwF9CPaTyMcALuS4IHhC { + overflow: hidden; + text-overflow: ellipsis; + font-weight: bold; +} + +.uo6JwMiedyAH3mIG8aVo { + font-family: var(--font-family-monospace); + font-size: var(--font-size-monospace-normal); +} + +.I2PpODEiFO9QPDXyopKq { + display: flex; + align-items: center; + justify-content: center; + height: 100%; + color: var(--color-dim); +} + +.BCDwBn2mncLqqERXZimU { + list-style: none; + margin: 0.25rem 0 0 0; + padding: 0; + background: var(--color-background-inactive); + padding: 0.25rem 0.5rem; + border-radius: 0.25rem; +} + +.QRBDzhIQcmbPsRZCmqac { + margin: 0.25rem 0 0 0; +} +.QRBDzhIQcmbPsRZCmqac:first-of-type { + margin: 0; +} + .PQXvlxJHC_mjwS_kG5hZ { width: 100%; height: 100%; @@ -2271,15 +2858,54 @@ justify-content: center; } -.SCM8kzD_pFUd1D02QPtH { - margin-top: 1rem; - color: var(--color-dim); - font-size: var(--font-size-sans-small); -} - .i7tKtcE5WUEZ2bsj4PAy { font-size: var(--font-size-sans-large); - margin-bottom: 0.5rem; + font-weight: bold; + margin-bottom: 0.25rem; +} + +.v2WjyQNCh9uAYok5kQR2 { + max-width: 100%; + text-align: center; + color: var(--color-dim); +} + +.WJqa4R7MiN_14vX8_57Y { + color: var(--color-link); + text-decoration: underline; +} + +.T8rLrwVJR9HC5FGML7io { + margin-top: 1.5rem; + max-width: 80%; + padding: 0.625rem 0.75rem; + background: var(--color-background-hover); + /* Squarer than the CTA's pill, so the two don't read as the same control. */ + border-radius: 0.25rem; + text-align: center; +} + +.IxcoY8VwV_BvyE1tMNYt { + margin-top: 0.5rem; + padding: 0.375rem 1rem; + border: none; + border-radius: 1rem; + background: var(--color-background-hover); + color: var(--color-button-focus); + font-family: inherit; + font-size: var(--font-size-sans-normal); + font-weight: bold; + cursor: pointer; +} + +.IxcoY8VwV_BvyE1tMNYt:hover { + background: var(--color-background-selected); + color: var(--color-text-selected); +} + +.IxcoY8VwV_BvyE1tMNYt:focus-visible { + outline: 2px solid var(--color-button-active); + outline-offset: 2px; } .P93KFw4qPKJlTiW5iGWi { @@ -2338,549 +2964,615 @@ align-items: center; } +/* Pinned to the bottom of the main view (like a Chrome-style find bar). */ +.wMwbQaLx7bpLF20zkAWY { + position: absolute; + left: 0; + right: 0; + bottom: 0; + z-index: 3; + display: flex; + align-items: center; + padding: 0.25rem 0.5rem; + background-color: var(--color-background); + border-top: 1px solid var(--color-border); + box-shadow: 0 -2px 8px var(--color-shadow); +} + .hQFhOL9f3ZT4IO97Mr85 { color: var(--color-link); margin-left: 0.25rem; margin-right: 0.25rem; } -.N3EGKzrGIkBOWEWDf9L7 { - position: fixed; -} -.AzaWiYKucXJKkE2mLtJl, -.egwTq8xaZYmu5AwzN7q3, -.I89UegKZ4CVKZ4fZi70A { - display: block; - border-radius: 0.125rem; - padding: 0.25rem; - user-select: none; - pointer-events: none; - background-color: var(--color-tooltip-background); - box-shadow: 1px 1px 2px var(--color-shadow); - color: var(--color-tooltip-text); - font-size: 11px; -} -.egwTq8xaZYmu5AwzN7q3 { - margin-top: 0.25rem; - background-color: var(--color-warning-background); -} -.AzaWiYKucXJKkE2mLtJl, -.egwTq8xaZYmu5AwzN7q3 { - max-width: 300px; -} -.I89UegKZ4CVKZ4fZi70A { - white-space: nowrap; +.kksxAeylH3yoPGPSZs4x { + height: 2.25rem; + padding: 0 0.5rem; + flex: 0 0 auto; + display: flex; + align-items: center; + border-bottom: 1px solid var(--color-border); } -.VNOllhItld4Pgmtf5Ppw { - height: 1px; - background-color: #aaa; - margin: 0.25rem 0; +.VJy47nzDRAprXO7tY3LS { + padding-bottom: 0.5rem; + user-select: none; + display: flex; + flex-direction: column; + min-height: 0; + height: 100%; } -.MPvO_4SSYDzHNp4lE94K { - display: grid; - padding-top: 5px; - grid-gap: 2px 5px; - grid-template-columns: min-content auto; +.GvCtOanhOiuVj7O2JEiA { + flex: 0 0 auto; + display: flex; + flex-direction: column; + gap: 0.5rem; + padding: 0.5rem; + border-bottom: 1px solid var(--color-border); + background: var(--color-background); } -.sZnI6xuf_7orBe2Asxn_ { - color: var(--color-dim); - text-align: right; - white-space: nowrap; +.aPuXdzxRJwE_AqjE5kBX { + display: flex; + flex-direction: column; + gap: 0.75rem; } -.M0WUFL6gXSNmExgreLwO { - word-break: break-all; - max-height: 50vh; - overflow: hidden; +.Q6uCWJR8jnUv3kuLpYG7 { + flex: 1; + min-height: 0; + overflow-y: auto; + padding: 0.5rem; } -.d9f4tr7dJUEW6jrEDyOt { - word-break: break-word; +.ISf33Slct6dgSxu6Jgnp { + flex: 1; + color: var(--color-component-name); + font-family: var(--font-family-monospace); + font-size: var(--font-size-monospace-normal); + white-space: nowrap; + overflow-x: hidden; + text-overflow: ellipsis; } -.ejuIKX4HIM2d9POSXI85 { +.aHgahOIZbyM7IqHd3i2t { font-weight: bold; - word-break: break-word; - margin-right: 0.25rem; + margin-bottom: 0.5rem; } -.s2XYTneQ2NK7qdHee2Jn { +.DHfht546g4Kr5iX3Oa6Q, +.q3pfRhYTXkmwbWV74Kww { + display: block; + width: 100%; + text-align: left; + background: none; + border: none; + padding: 0.25rem 0.5rem; + color: var(--color-text); } -.GMAYJazv4K7ZpOr97hCQ { - word-break: break-word; +.q3pfRhYTXkmwbWV74Kww:focus, +.q3pfRhYTXkmwbWV74Kww:hover { + outline: none; + background-color: var(--color-background-hover); } -.w6QmYYdfsQPk6sau6zog { - font-weight: bold; - word-break: break-word; - margin-right: 0.25rem; +.DHfht546g4Kr5iX3Oa6Q { + background-color: var(--color-background-selected); + color: var(--color-text-selected); } -.XGcHiWMwrBc5c2KR8wLv { - color: var(--color-warning-text-color); +.DHfht546g4Kr5iX3Oa6Q:focus { + outline: none; } -.Y4pd_lwDQuEbGYYczxPw { - border: 1px solid var(--color-border); +.q7DKH8lkKQ6AHtXuQrpZ { + position: relative; + width: 100%; + height: 100%; + display: flex; + flex-direction: row; + background-color: var(--color-background); + color: var(--color-text); + font-family: var(--font-family-sans); } -.F9Q4ycxrR5Cx58QdXTQF { - color: var(--color-dim); +.q7DKH8lkKQ6AHtXuQrpZ, .q7DKH8lkKQ6AHtXuQrpZ * { + box-sizing: border-box; + -webkit-font-smoothing: var(--font-smoothing); } -.OEnj08490n7qDJm7CNI8 { - position: absolute; - top: 0; - bottom: 0; - left: 0; - right: 0; + +.GVcOP_O5vbAd_jL1v55z { + height: 20px; + width: 1px; + flex: 0 0 1px; + margin: 0 0.5rem; + background-color: var(--color-border); } -.QjVtusM1KGirAKftEjwY { +.Y1vhyUdTVp992is2YQlQ { + border-top: 1px solid var(--color-border); + flex: 1 1 65%; display: flex; - flex-direction: column; - align-items: center; - justify-content: center; - padding: 0 1rem; + flex-direction: row; + height: 100%; + overflow: auto; } -.jiMh2PwnK6_SN21x4Q7M { - font-size: var(--font-size-sans-large); - margin-bottom: 0.5rem; +.nHw8mRu9tmGoOM5ByrPk { + flex: 0 0 calc(100% - var(--horizontal-resize-tree-percentage)); + overflow-x: hidden; + overflow-y: auto; + border-left: 1px solid var(--color-border); } -.pNkugLfjnL1A_GKSmR2Q { - text-align: center; - margin: 0; +.MRA9pqQBCZMXOKWgfBnm { + flex: 0 0 0px; + position: relative; } -.M9S99onnkkihyqGdp7ag { - color: var(--color-link); +.AC1bgLxbMhmKY3vqFvGx { + position: absolute; + /* + * moving the bar out of its bounding box might cause its hitbox to overlap + * with another scrollbar creating disorienting UX where you both resize and scroll + * at the same time. + * If you adjust this value, double check that starting resize right on this edge + * doesn't also cause scroll + */ + left: 1px; + width: 5px; + height: 100%; + cursor: ew-resize; } -.Zu1Ac7CcqoyQYyYmgeqc { - margin-top: 1rem; - color: var(--color-dim); - font-size: var(--font-size-sans-small); +@container devtools (width < 600px) { + .q7DKH8lkKQ6AHtXuQrpZ { + flex-direction: column; + } + + .Y1vhyUdTVp992is2YQlQ { + border-top: 1px solid var(--color-border); + flex: 1 1 50%; + overflow: hidden; + } + + .nHw8mRu9tmGoOM5ByrPk { + flex: 0 0 calc(100% - var(--vertical-resize-tree-percentage)); + border-left: none; + } + + .Y1vhyUdTVp992is2YQlQ + .MRA9pqQBCZMXOKWgfBnm .AC1bgLxbMhmKY3vqFvGx { + top: 1px; + left: 0; + width: 100%; + height: 5px; + cursor: ns-resize; + } + + .m5db4RwvUTzUDoL2r7pb[data-orientation="horizontal"] { + display: none; + } } -.Ixc7sI8z0MqS7K2bdXGW { - color: var(--color-bridge-version-number); +@container devtools (width >= 600px) { + .m5db4RwvUTzUDoL2r7pb[data-orientation="vertical"] { + display: none; + } } -.fwIa_vMWRtgmxAgYtV2y { - background: var(--color-background-hover); - padding: 0.25rem 0.5rem; - border-radius: 0.25rem; - margin-top: 1rem; +.n7dB3dzd1q7aNuzHAYew { + flex: 0 0 var(--horizontal-resize-activity-list-percentage);; + border-right: 1px solid var(--color-border); + overflow: auto; } -.eue06UGfhEQuo2ZKaXrY { - width: 100%; - position: relative; - flex: 1 1 auto; + +.DGSKCZU2zIOnk68bC61m { + flex: 1 1 35%; display: flex; flex-direction: column; - align-items: center; - justify-content: center; + height: 100%; + overflow: auto; } - -.K_JJva1_xDfpSRy6RpDu { - margin: 0.5rem 0; - color: var(--color-dim); - font-family: var(--font-family-monospace); - font-size: var(--font-size-monospace-normal); +.SbzcjhqCtgju4wEo2frz { + padding: 0.25rem; + flex-grow: 1; + overflow: auto; } -.fU0E28avKp3oPxeR34NR { +.plKr18BJh30jdgnbb2BK { + flex: 0 0 42px; + padding: 0.5rem; display: flex; - flex-direction: row; align-items: center; - justify-content: center; - flex-flow: wrap; + border-bottom: 1px solid var(--color-border); } -.wjNO8GSvNqofzPC3JMXU { - text-align: center; +.q9nG3ehu7AOLuS3FRIjC { + flex: 0 0 42px; + display: flex; + justify-content: end; + border-top: 1px solid var(--color-border); + padding: 0.5rem; + display: grid; + grid-template-columns: 1fr auto; + align-items: center; } -.tWwch6_bJnvq33qchywK { - font-size: var(--font-size-sans-large); - margin-bottom: 0.5rem; +.L5K1UaiukDLZIb97Q59n { + padding: 0.25rem; } -.lgd3ZCMgCXtUMxt070tV { - height: 2.25rem; - padding: 0 0.5rem; - flex: 0 0 auto; +.OmGMDIF0adXqiJNFqvCm { + flex: 1; display: flex; - align-items: center; - border-bottom: 1px solid var(--color-border); -} - -.sWXfInUyKrvDk6lK2o9D { - padding: 0.5rem; - user-select: none; - overflow: auto; } -.tubB5UBWO8CymMFmA5CF { - list-style: none; +.iuBgHaqy4YkkEdFQYj1j { margin: 0; padding: 0; + list-style: none; + display: inline-flex; + flex-direction: row; + flex-wrap: nowrap; + align-items: baseline; } -.UOZgvcZmCsPSOtKDj0WN { - flex: 1 1; - margin: 0 0 0.5rem; +.Pz53me8H_7ybxjUEd7Th { + display: inline; } -.fDFFFS6FSdkZVvvvVkUt { - overflow: hidden; - text-overflow: ellipsis; - font-weight: bold; - flex: 1 1; +.PbaNMbIMbFzkNhjsEOaN { + user-select: none; +} + +.Pz53me8H_7ybxjUEd7Th[aria-current="true"] .uPa5pXoLCd9HFQ2XoiUG { + color: var(--color-button-active); } -.jlV06smRNDvlE9a_KfXK { +.uPa5pXoLCd9HFQ2XoiUG { + background: var(--color-button-background); + border: none; + border-radius: 0.25rem; + color: var(--color-button); font-family: var(--font-family-monospace); font-size: var(--font-size-monospace-normal); + padding: 0.25rem; + white-space: nowrap; } -.jCiyjnM7GK5KxPMT5GMO { - display: flex; - flex-direction: row; - align-items: center; - border-top: 1px solid var(--color-border); -} - -.BTlRsBnXtBSjjGNX0uzb, -.fRBYQh_ObZ4pHWasihPS { - width: 100%; - overflow: hidden; - text-overflow: ellipsis; - font-family: var(--font-family-sans); - font-size: var(--font-size-sans-normal); +.uPa5pXoLCd9HFQ2XoiUG:hover { + background-color: var(--color-button-background-hover); + color: var(--color-button-hover); } -.BTlRsBnXtBSjjGNX0uzb { - color: var(--color-dim); +.uPa5pXoLCd9HFQ2XoiUG:focus-visible { + background: var(--color-button-background-focus); } -.fRBYQh_ObZ4pHWasihPS { - color: var(--color-text); +.rt863EXuQMiCSuIfM5Jg { + border-radius: 0.25rem; + display: inline-flex; + align-items: center; + padding: 0; + flex: 0 0 auto; + border: none; + background: var(--color-button-background); + color: var(--color-button); } -.fRBYQh_ObZ4pHWasihPS:focus, -.fRBYQh_ObZ4pHWasihPS:hover { - background-color: var(--color-background-hover); +.zwWPJT3H9YF5U_lB2_OA { + display: inline-flex; + align-items: center; + border-radius: 0.25rem; + padding: 0.25rem; } -.N8H0SJ33TtBea__rELXw { - height: 20px; - width: 1px; - border-left: 1px solid var(--color-border); - padding-left: 0.25rem; - margin-left: 0.25rem; +.rt863EXuQMiCSuIfM5Jg:hover { + color: var(--color-button-hover); +} +.rt863EXuQMiCSuIfM5Jg[aria-expanded="true"], +.rt863EXuQMiCSuIfM5Jg[aria-expanded="true"]:active { + color: var(--color-button-active); + outline: none; } -/** - * https://developer.mozilla.org/en-US/docs/Web/API/File/Using_files_from_web_applications - */ -._08ibVjqcFQVJ0Dv8n1AX { - position: absolute !important; - height: 1px; - width: 1px; - overflow: hidden; - clip: rect(1px, 1px, 1px, 1px); +.rt863EXuQMiCSuIfM5Jg:focus, +.zwWPJT3H9YF5U_lB2_OA:focus { + outline: none; +} +.rt863EXuQMiCSuIfM5Jg:focus > .zwWPJT3H9YF5U_lB2_OA { + background: var(--color-button-background-focus); } -.aieWFlSkxB_kzGCdLw_G { - margin: 0.5rem 0; - color: var(--color-dim); +.QRBiXzYfMfjXyB1JZ8L2[data-reach-menu-list] { + display: inline-flex; + flex-direction: column; + background-color: var(--color-background); + color: var(--color-button); + padding: 0.25rem 0; + padding-right: 0; + border: 1px solid var(--color-border); + border-radius: 0.25rem; + max-height: 10rem; + overflow: auto; + + /* Make sure this is above the DevTools, which are above the Overlay */ + z-index: 10000002; + position: relative; + + /* Reach UI tries to set its own :( */ font-family: var(--font-family-monospace); font-size: var(--font-size-monospace-normal); } -.jw93IlCe1adpUzntTNgc { - user-select: none; - cursor: pointer; - border-bottom: 3px solid transparent; - padding-top: 4px; - padding-bottom: 1px; - display: flex; - align-items: flex-end; -} -.jw93IlCe1adpUzntTNgc:hover { - background-color: var(--color-background); +.PewWcAVxtZiQhfQdH1O6 { + padding: .25rem; + outline-color: transparent; + outline-style: solid; + outline-width: 1px; + border-radius: 0.25rem; } -._5XUdsPllhotmtTs9R33A, -.tX5mJ_WVcSwasnpmMncZ { - width: 100%; - min-height: 2px; - background-color: var(--color-commit-did-not-render-fill); - color: var(--color-commit-did-not-render-fill-text); +.TjhJHd0iAjIrTC88PwNQ { + cursor: pointer; + outline-color: var(--color-transition); + background-color: color-mix(in srgb, var(--color-transition) 5%, transparent); } -.tX5mJ_WVcSwasnpmMncZ { - background-color: var(--color-button-active); -} -.sfkKfFJiQWXm4ZkgOQA_ { - /** - * The decision to suppress the default (horizontal) scroll bars is intentional. - * The snapshot selector is small enough that the scrollbar renders it essentially useless. - * There are two alternative navigation mechanisms (arrow keys and arrow buttons). - * If necessary, we could also expand the click-and-drag mechanism to scroll. - */ - overflow-x: hidden !important; +.e21a3ma7dFHatMHvO_JW { + outline-width: 4px; + border-radius: 0.125rem; } -.uWBBMcT5QRe8BLmRr5DN { - margin-top: 2.5rem; +.TjhJHd0iAjIrTC88PwNQ[data-hovered='true'] { + background-color: color-mix(in srgb, var(--color-transition) 15%, transparent); } -.PeBCG3928_FRgKe17he8 { - list-style: none; - padding: 0; - margin: 0; +.aiyOnrmdik7VOzpM_XLc { + position: relative; } -.wKr9YTA5FM7_JaJbZOv2 { - display: flex; +.hkk5qrZzhJKrQuHKUkoV { + pointer-events: all; + border-radius: 0.125rem; } -.cfm4U9M_1T9x2RmXMrxG { - font-weight: bold; - margin-right: 0.25rem; +.hkk5qrZzhJKrQuHKUkoV[data-visible='false'] { + background-color: transparent; } -.cfm4U9M_1T9x2RmXMrxG:after { - content: ':'; + +.zbQZdju2FB2ngiox1ouU { + pointer-events: none; } -.qRIEqFLWDIjANIC0Ntie { - flex-grow: 1; - text-align: end; +.bFAkRFZ6spULAdgjNmfG { + pointer-events: none; + color: color-mix(in srgb, var(--color-suspense) 50%, var(--color-text)); + overflow: hidden; + text-overflow: ellipsis; + font-family: var(--font-family-sans); + font-size: var(--font-size-sans-small); + line-height: var(--line-height-data); + padding: 0 .25rem; + container-type: size; + container-name: title; } -.izM1TvBpZUUcTQ42Frqn { - flex-grow: 1; +@container title (width < 30px) or (height < 18px) { + .bFAkRFZ6spULAdgjNmfG > span { + display: none; + } } -.s7evU0HIQSOHulfOSX9I { - list-style: none; - margin: 0 0 0 1rem; - padding: 0; +._d0sSvH6td86MqYSjIkm[data-visible='false'] > .zbQZdju2FB2ngiox1ouU { + overflow: initial; } -.c8bhlz4IND24Tuk1grrp { - display: flex; +.v8K3REtY2RS1seYd6jlJ { + box-shadow: var(--elevation-4); + pointer-events: all; + cursor: pointer; + border-radius: 0.125rem; + background-color: color-mix(in srgb, var(--color-background) 50%, var(--color-suspense) 25%); + backdrop-filter: grayscale(100%); + transition: background-color 0.2s ease-in; + outline-color: var(--color-suspense); + outline-style: solid; + outline-width: 1px; } -.WD60Q47uUTiP3xkXlZyb { - margin-right: 0.25rem; +._d0sSvH6td86MqYSjIkm { + position: absolute; } -.WD60Q47uUTiP3xkXlZyb:after { - content: ':'; + +._d0sSvH6td86MqYSjIkm[data-visible='false'] { + pointer-events: none; + outline-width: 0; } -.xhTBBmJDUq4Q4FqKQ0Ej { - flex-grow: 1; - text-align: end; +.hkk5qrZzhJKrQuHKUkoV[data-suspended='true'] { + opacity: 0.33; } -._CufCnCVGPGWnSFl1uho { - flex: 0 0 auto; - margin-left: 0.25rem; + +/* highlight this boundary */ +.hkk5qrZzhJKrQuHKUkoV[data-hovered='true'] > .v8K3REtY2RS1seYd6jlJ { + background-color: color-mix(in srgb, var(--color-background) 50%, var(--color-suspense) 50%); + transition: background-color 0.2s ease-out; } -.Hl8vt0A1Pvc45oOEfvfc { - height: 100%; - min-width: 30px; - margin-left: 0.25rem; - overflow: visible; +.hkk5qrZzhJKrQuHKUkoV[data-selected='true'][data-visible='true'] { + box-shadow: var(--elevation-4); } -.Hl8vt0A1Pvc45oOEfvfc:focus { - outline: none; - background-color: var(--color-button-background-focus); + +.dIvDA4V7X6TXPpaqAZfx { + outline-color: var(--color-suspense); + outline-style: solid; + outline-width: 4px; + border-radius: 0.125rem; + pointer-events: none; } -.xiLvxcsoqxeWVh07R31l { - flex: 0 0 auto; - white-space: nowrap; - font-family: var(--font-family-monospace); - margin-left: 0.25rem; +.hkk5qrZzhJKrQuHKUkoV[data-selected='true'] > .v8K3REtY2RS1seYd6jlJ { + box-shadow: none; } -.jsUKzO10uV20A3wnvydO { - height: 100%; +.pH06dNzMajCQwpBFGjCE { display: flex; + flex-direction: row; + padding: 0.25rem; align-items: center; - justify-content: center; - color: var(--color-dim); } -.ugxes_bEQaeJOFCGJiHj { - background: none; - font-size: var(--font-size-sans-normal); - text-align: right; - font-family: var(--font-family-monospace); - border: 1px solid transparent; - border-radius: 0.125rem; - padding: 0.125rem; - color: var(--color-attribute-editable-value); +.ruGAvmU58NhFcON0QJ2w { + display: flex; + flex-direction: column; + flex-grow: 1; } -.ugxes_bEQaeJOFCGJiHj:focus { - background-color: var(--color-button-background-focus); - outline: none; +.sd4zFOxOox4tB_GabW32 { + height: fit-content; + max-width: 3rem; } -.N5BzlnGYbkkzyvpM4qiQ { - margin: 0 0 0.5rem; +.X1Sbypz4wjpX6p3WnU2K { + align-self: center; } -.OgEAxEkwb3k_69AoeGQg, -._1c63tyMUi98qTClO_SL, -.IfiD3wgD1AOg2rtpeal7 { - display: block; +.tvGQHoAbJGNNKK2D6aJ4 { + position: relative; width: 100%; - text-align: left; - background: none; - border: none; - padding: 0.25rem 0.5rem; - color: var(--color-text); -} -._1c63tyMUi98qTClO_SL:focus, -._1c63tyMUi98qTClO_SL:hover { - outline: none; - background-color: var(--color-background-hover); + height: 1.5rem; + border-radius: 0.75rem; + padding: 0.25rem; + box-sizing: border-box; + display: flex; + align-items: center; } -.OgEAxEkwb3k_69AoeGQg, -.IfiD3wgD1AOg2rtpeal7 { - color: var(--color-dim); +.tvGQHoAbJGNNKK2D6aJ4:has(.kjhdBBozhLPqSbEWPJEH:focus-visible) { + outline: 2px solid var(--color-button-background-focus); } -.Db7NQhHEeI91oH3Hvbam { - height: 2.25rem; - padding: 0 0.5rem; - flex: 0 0 auto; - display: flex; - align-items: center; - border-bottom: 1px solid var(--color-border); +.kjhdBBozhLPqSbEWPJEH { + position: absolute; + width: 100%; + opacity: 0; + height: 0px; + overflow: hidden; } -.aZe2MG7Dqp4KMuyOUDBb { - padding: 0.5rem; - user-select: none; - overflow: auto; +.kjhdBBozhLPqSbEWPJEH:focus { + outline: none; } -.f6VXZunRdhS7mNMG6eEP { - list-style: none; - margin: 0; - padding: 0; +.pP_v8GsTnVpv_dAnf4Bh { + cursor: pointer; + flex: 1; + height: 100%; + padding-right: 1px; /* we use this instead of flex gap to make every pixel clickable */ + display: flex; + align-items: center; } - -.kcRreMlssKZxm_LOVtFG { - margin: 0 0 0.5rem; +.pP_v8GsTnVpv_dAnf4Bh:last-child { + padding-right: 0; } -.ZwF9CPaTyMcALuS4IHhC { - overflow: hidden; - text-overflow: ellipsis; - font-weight: bold; +.jvBzPlx9_AKqJCNxp2N0 { + flex: 1; + height: 0.5rem; + border-radius: 0.5rem; + background: color-mix(in srgb, var(--color-suspense) 10%, transparent); + transition: all 0.3s ease-in; } -.uo6JwMiedyAH3mIG8aVo { - font-family: var(--font-family-monospace); - font-size: var(--font-size-monospace-normal); +.dCPhlPzr1wHuc5_bJFUs { + height: 1rem; + background: var(--color-suspense); } -.I2PpODEiFO9QPDXyopKq { - display: flex; - align-items: center; - justify-content: center; - height: 100%; - color: var(--color-dim); +.hY8BaQf0YSwxhMfN8NFo { + background: var(--color-transition); } -.BCDwBn2mncLqqERXZimU { - list-style: none; - margin: 0.25rem 0 0 0; - padding: 0; - background: var(--color-background-inactive); - padding: 0.25rem 0.5rem; - border-radius: 0.25rem; +.Bp6f68ozGGOHK3HXLqil > .jvBzPlx9_AKqJCNxp2N0 { + height: 0.75rem; + transition: all 0.3s ease-out; } -.QRBDzhIQcmbPsRZCmqac { - margin: 0.25rem 0 0 0; +.heerhqdQN3l0vqNUXhK6 { + position: relative; + display: block; + background-color: var(--color-background); + color: var(--color-text); + font-family: var(--font-family-sans); } -.QRBDzhIQcmbPsRZCmqac:first-of-type { - margin: 0; + +.heerhqdQN3l0vqNUXhK6, .heerhqdQN3l0vqNUXhK6 * { + box-sizing: border-box; + -webkit-font-smoothing: var(--font-smoothing); } -.kksxAeylH3yoPGPSZs4x { - height: 2.25rem; - padding: 0 0.5rem; - flex: 0 0 auto; +.X9q4yGKDGqs0RgZHCRtg { display: flex; + flex-direction: row; align-items: center; + padding: 0.5rem; border-bottom: 1px solid var(--color-border); } -.VJy47nzDRAprXO7tY3LS { +.CyrMIfkMbDufDMdneowu { padding: 0.5rem; - user-select: none; - overflow-y: auto; - display: flex; - flex-direction: column; - gap: 0.5rem; + text-align: center; } -.ISf33Slct6dgSxu6Jgnp { - flex: 1; - color: var(--color-component-name); - font-family: var(--font-family-monospace); - font-size: var(--font-size-monospace-normal); - white-space: nowrap; - overflow-x: hidden; - text-overflow: ellipsis; +.nKs33K0ysqBcwmQ7pFAQ { + height: 20px; + width: 1px; + flex: 0 0 1px; + margin: 0 0.5rem; + background-color: var(--color-border); } -.aHgahOIZbyM7IqHd3i2t { - font-weight: bold; - margin-bottom: 0.5rem; +.RicnDh60UBGffi4UTPJb { + flex: 1 0 auto; + display: flex; } -.DHfht546g4Kr5iX3Oa6Q, -.q3pfRhYTXkmwbWV74Kww { - display: block; - width: 100%; - text-align: left; - background: none; - border: none; - padding: 0.25rem 0.5rem; - color: var(--color-text); +.nsdLIZo70_NkWNEphcbz { + padding-left: 1.5rem; + margin-left: -1rem; + user-select: none; + flex: 1 0 auto; + text-align: center; } -.q3pfRhYTXkmwbWV74Kww:focus, -.q3pfRhYTXkmwbWV74Kww:hover { - outline: none; - background-color: var(--color-background-hover); +.F_3NN5g9xL81Z4jxQuB6 { + display: flex; + flex: 1 0 auto; } -.DHfht546g4Kr5iX3Oa6Q { - background-color: var(--color-background-selected); - color: var(--color-text-selected); +.WRi9CdfxuCDTE6jvdvjr { + display: inline; + margin-right: 0.5rem; } -.DHfht546g4Kr5iX3Oa6Q:focus { - outline: none; +.E0pbfVzMwgpH_TEHTHIf, .E0pbfVzMwgpH_TEHTHIf * { + box-sizing: border-box; + -webkit-font-smoothing: var(--font-smoothing); +} + +.E0pbfVzMwgpH_TEHTHIf { + position: relative; + width: 100%; + height: 100%; + display: flex; + flex-direction: row; + background-color: var(--color-background); + color: var(--color-text); + font-family: var(--font-family-sans); } .REvy6Ilr7KQBh3VP5KtT { @@ -2951,6 +3643,8 @@ flex-direction: column; background-color: var(--color-background); color: var(--color-text); + container-name: devtools; + container-type: inline-size; } .tPiY5I6mjO9E1BEvS3GI { diff --git a/front_end/third_party/react-devtools/package/frontend.d.ts b/front_end/third_party/react-devtools/package/frontend.d.ts index 52536739ccaa..be5559a1ddd9 100644 --- a/front_end/third_party/react-devtools/package/frontend.d.ts +++ b/front_end/third_party/react-devtools/package/frontend.d.ts @@ -5,55 +5,83 @@ * LICENSE file in the root directory of this source tree. */ -export type MessagePayload = null | string | number | boolean | { [key: string]: MessagePayload } | MessagePayload[]; -export type Message = { event: string, payload?: MessagePayload }; +export type MessagePayload = + | null + | string + | number + | boolean + | {[key: string]: MessagePayload} + | MessagePayload[]; +export type Message = {event: string; payload?: MessagePayload}; -export type WallListener = (message: Message) => void; +export type WallListener = (message: unknown) => void; export type Wall = { - listen: (fn: WallListener) => Function, - send: (event: string, payload?: MessagePayload) => void, + listen: (fn: WallListener) => () => void; + send: (event: string, payload?: MessagePayload) => void; }; export type Bridge = { - addListener(event: string, listener: (params: unknown) => any): void; + addListener(event: string, listener: (params: unknown) => unknown): void; removeListener(event: string, listener: Function): void; shutdown: () => void; }; export type Store = Object; export type BrowserTheme = 'dark' | 'light'; export type Config = { - supportsReloadAndProfile?: boolean, + supportsReloadAndProfile?: boolean; }; export function createBridge(wall: Wall): Bridge; export function createStore(bridge: Bridge, config?: Config): Store; -export type Source = { - sourceURL: string, - line: number, - column: number, -}; +export type ReactFunctionLocation = [ + string, // function name + string, // file name TODO: model nested eval locations as nested arrays + number, // enclosing line number + number, // enclosing column number +]; +export type ReactCallSite = [ + string, // function name + string, // file name TODO: model nested eval locations as nested arrays + number, // line number + number, // column number + number, // enclosing line number + number, // enclosing column number + boolean, // async resume +]; export type ViewElementSource = ( - source: Source, - symbolicatedSource: Source | null, + source: ReactFunctionLocation | ReactCallSite, + symbolicatedSource: ReactFunctionLocation | ReactCallSite | null, ) => void; export type ViewAttributeSource = ( id: number, path: Array, ) => void; export type CanViewElementSource = ( - source: Source, - symbolicatedSource: Source | null, + source: ReactFunctionLocation | ReactCallSite, + symbolicatedSource: ReactFunctionLocation | ReactCallSite | null, ) => boolean; +export type FetchFileWithCaching = (url: string) => Promise; export type InitializationOptions = { - bridge: Bridge, - store: Store, - theme?: BrowserTheme, - viewAttributeSourceFunction?: ViewAttributeSource, - viewElementSourceFunction?: ViewElementSource, - canViewElementSourceFunction?: CanViewElementSource, + bridge: Bridge; + store: Store; + theme?: BrowserTheme; + viewAttributeSourceFunction?: ViewAttributeSource; + viewElementSourceFunction?: ViewElementSource; + canViewElementSourceFunction?: CanViewElementSource; + fetchFileWithCaching?: FetchFileWithCaching; }; -export function initializeComponents(node: Element | Document, options: InitializationOptions): void; -export function initializeProfiler(node: Element | Document, options: InitializationOptions): void; +export function initializeComponents( + node: Element | Document, + options: InitializationOptions, +): void; +export function initializeProfiler( + node: Element | Document, + options: InitializationOptions, +): void; +export function initializeSuspense( + node: Element | Document, + options: InitializationOptions, +): void; diff --git a/front_end/third_party/react-devtools/package/frontend.js b/front_end/third_party/react-devtools/package/frontend.js index 25ba903ef4f0..42de11bf2b06 100644 --- a/front_end/third_party/react-devtools/package/frontend.js +++ b/front_end/third_party/react-devtools/package/frontend.js @@ -5,33 +5,13 @@ var __webpack_unused_export__; /* provided dependency */ var process = __webpack_require__(397); -/** - * @license React - * react-dom-client.production.js - * - * Copyright (c) Meta Platforms, Inc. and affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ /* - Modernizr 3.0.0pre (Custom Build) | MIT -*/var Scheduler=__webpack_require__(572),React=__webpack_require__(147),ReactDOM=__webpack_require__(443);function formatProdErrorMessage(code){var url="https://react.dev/errors/"+code;if(1index||(cursor.current=valueStack[index],valueStack[index]=null,index--);}function push(cursor,value){index++;valueStack[index]=cursor.current;cursor.current=value;}var contextStackCursor=createCursor(null),contextFiberStackCursor=createCursor(null),rootInstanceStackCursor=createCursor(null),hostTransitionProviderCursor=createCursor(null);function pushHostContainer(fiber,nextRootInstance){push(rootInstanceStackCursor,nextRootInstance);push(contextFiberStackCursor,fiber);push(contextStackCursor,null);switch(nextRootInstance.nodeType){case 9:case 11:fiber=(fiber=nextRootInstance.documentElement)?(fiber=fiber.namespaceURI)?getOwnHostContext(fiber):0:0;break;default:if(fiber=nextRootInstance.tagName,nextRootInstance=nextRootInstance.namespaceURI)nextRootInstance=getOwnHostContext(nextRootInstance),fiber=getChildHostContextProd(nextRootInstance,fiber);else switch(fiber){case"svg":fiber=1;break;case"math":fiber=2;break;default:fiber=0;}}pop(contextStackCursor);push(contextStackCursor,fiber);}function popHostContainer(){pop(contextStackCursor);pop(contextFiberStackCursor);pop(rootInstanceStackCursor);}function pushHostContext(fiber){null!==fiber.memoizedState&&push(hostTransitionProviderCursor,fiber);var context=contextStackCursor.current;var JSCompiler_inline_result=getChildHostContextProd(context,fiber.type);context!==JSCompiler_inline_result&&(push(contextFiberStackCursor,fiber),push(contextStackCursor,JSCompiler_inline_result));}function popHostContext(fiber){contextFiberStackCursor.current===fiber&&(pop(contextStackCursor),pop(contextFiberStackCursor));hostTransitionProviderCursor.current===fiber&&(pop(hostTransitionProviderCursor),HostTransitionContext._currentValue=sharedNotPendingObject);}var prefix,suffix;function describeBuiltInComponentFrame(name){if(void 0===prefix)try{throw Error();}catch(x){var match=x.stack.trim().match(/\n( *(at )?)/);prefix=match&&match[1]||"";suffix=-1)":-1namePropDescriptor||sampleLines[RunInRootFrame]!==controlLines[namePropDescriptor]){var frame="\n"+sampleLines[RunInRootFrame].replace(" at new "," at ");fn.displayName&&frame.includes("")&&(frame=frame.replace("",fn.displayName));return frame;}while(1<=RunInRootFrame&&0<=namePropDescriptor);}break;}}}finally{reentry=!1,Error.prepareStackTrace=previousPrepareStackTrace;}return(previousPrepareStackTrace=fn?fn.displayName||fn.name:"")?describeBuiltInComponentFrame(previousPrepareStackTrace):"";}function describeFiber(fiber){switch(fiber.tag){case 26:case 27:case 5:return describeBuiltInComponentFrame(fiber.type);case 16:return describeBuiltInComponentFrame("Lazy");case 13:return describeBuiltInComponentFrame("Suspense");case 19:return describeBuiltInComponentFrame("SuspenseList");case 0:case 15:return describeNativeComponentFrame(fiber.type,!1);case 11:return describeNativeComponentFrame(fiber.type.render,!1);case 1:return describeNativeComponentFrame(fiber.type,!0);case 31:return describeBuiltInComponentFrame("Activity");case 30:return describeBuiltInComponentFrame("ViewTransition");default:return"";}}function getStackByFiberInDevAndProd(workInProgress){try{var info="";do info+=describeFiber(workInProgress),workInProgress=workInProgress.return;while(workInProgress);return info;}catch(x){return"\nError generating stack: "+x.message+"\n"+x.stack;}}var hasOwnProperty=Object.prototype.hasOwnProperty,scheduleCallback$3=Scheduler.unstable_scheduleCallback,cancelCallback$1=Scheduler.unstable_cancelCallback,shouldYield=Scheduler.unstable_shouldYield,requestPaint=Scheduler.unstable_requestPaint,now=Scheduler.unstable_now,getCurrentPriorityLevel=Scheduler.unstable_getCurrentPriorityLevel,ImmediatePriority=Scheduler.unstable_ImmediatePriority,UserBlockingPriority=Scheduler.unstable_UserBlockingPriority,NormalPriority$1=Scheduler.unstable_NormalPriority,LowPriority=Scheduler.unstable_LowPriority,IdlePriority=Scheduler.unstable_IdlePriority,log$1=Scheduler.log,unstable_setDisableYieldValue=Scheduler.unstable_setDisableYieldValue,rendererID=null,injectedHook=null;function setIsStrictModeForDevtools(newIsStrictMode){"function"===typeof log$1&&unstable_setDisableYieldValue(newIsStrictMode);if(injectedHook&&"function"===typeof injectedHook.setStrictMode)try{injectedHook.setStrictMode(rendererID,newIsStrictMode);}catch(err){}}var clz32=Math.clz32?Math.clz32:clz32Fallback,log=Math.log,LN2=Math.LN2;function clz32Fallback(x){x>>>=0;return 0===x?32:31-(log(x)/LN2|0)|0;}var nextTransitionLane=256,nextRetryLane=4194304;function getHighestPriorityLanes(lanes){var pendingSyncLanes=lanes&42;if(0!==pendingSyncLanes)return pendingSyncLanes;switch(lanes&-lanes){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return lanes&4194048;case 4194304:case 8388608:case 16777216:case 33554432:return lanes&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return lanes;}}function getNextLanes(root,wipLanes,rootHasPendingCommit){var pendingLanes=root.pendingLanes;if(0===pendingLanes)return 0;var nextLanes=0,suspendedLanes=root.suspendedLanes,pingedLanes=root.pingedLanes;root=root.warmLanes;var nonIdlePendingLanes=pendingLanes&134217727;0!==nonIdlePendingLanes?(pendingLanes=nonIdlePendingLanes&~suspendedLanes,0!==pendingLanes?nextLanes=getHighestPriorityLanes(pendingLanes):(pingedLanes&=nonIdlePendingLanes,0!==pingedLanes?nextLanes=getHighestPriorityLanes(pingedLanes):rootHasPendingCommit||(rootHasPendingCommit=nonIdlePendingLanes&~root,0!==rootHasPendingCommit&&(nextLanes=getHighestPriorityLanes(rootHasPendingCommit))))):(nonIdlePendingLanes=pendingLanes&~suspendedLanes,0!==nonIdlePendingLanes?nextLanes=getHighestPriorityLanes(nonIdlePendingLanes):0!==pingedLanes?nextLanes=getHighestPriorityLanes(pingedLanes):rootHasPendingCommit||(rootHasPendingCommit=pendingLanes&~root,0!==rootHasPendingCommit&&(nextLanes=getHighestPriorityLanes(rootHasPendingCommit))));return 0===nextLanes?0:0!==wipLanes&&wipLanes!==nextLanes&&0===(wipLanes&suspendedLanes)&&(suspendedLanes=nextLanes&-nextLanes,rootHasPendingCommit=wipLanes&-wipLanes,suspendedLanes>=rootHasPendingCommit||32===suspendedLanes&&0!==(rootHasPendingCommit&4194048))?wipLanes:nextLanes;}function checkIfRootIsPrerendering(root,renderLanes){return 0===(root.pendingLanes&~(root.suspendedLanes&~root.pingedLanes)&renderLanes);}function computeExpirationTime(lane,currentTime){switch(lane){case 1:case 2:case 4:case 8:case 64:return currentTime+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return currentTime+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1;}}function claimNextTransitionLane(){var lane=nextTransitionLane;nextTransitionLane<<=1;0===(nextTransitionLane&4194048)&&(nextTransitionLane=256);return lane;}function claimNextRetryLane(){var lane=nextRetryLane;nextRetryLane<<=1;0===(nextRetryLane&62914560)&&(nextRetryLane=4194304);return lane;}function createLaneMap(initial){for(var laneMap=[],i=0;31>i;i++)laneMap.push(initial);return laneMap;}function markRootUpdated$1(root,updateLane){root.pendingLanes|=updateLane;root.indicatorLanes|=updateLane&4194048;268435456!==updateLane&&(root.suspendedLanes=0,root.pingedLanes=0,root.warmLanes=0);}function markRootFinished(root,finishedLanes,remainingLanes,spawnedLane,updatedLanes,suspendedRetryLanes){var previouslyPendingLanes=root.pendingLanes;root.pendingLanes=remainingLanes;root.suspendedLanes=0;root.pingedLanes=0;root.warmLanes=0;root.indicatorLanes&=remainingLanes;root.expiredLanes&=remainingLanes;root.entangledLanes&=remainingLanes;root.errorRecoveryDisabledLanes&=remainingLanes;root.shellSuspendCounter=0;var entanglements=root.entanglements,expirationTimes=root.expirationTimes,hiddenUpdates=root.hiddenUpdates;for(remainingLanes=previouslyPendingLanes&~remainingLanes;0=documentMode),SPACEBAR_CHAR=String.fromCharCode(32),hasSpaceKeypress=!1;function isFallbackCompositionEnd(domEventName,nativeEvent){switch(domEventName){case"keyup":return-1!==END_KEYCODES.indexOf(nativeEvent.keyCode);case"keydown":return 229!==nativeEvent.keyCode;case"keypress":case"mousedown":case"focusout":return!0;default:return!1;}}function getDataFromCustomEvent(nativeEvent){nativeEvent=nativeEvent.detail;return"object"===typeof nativeEvent&&"data"in nativeEvent?nativeEvent.data:null;}var isComposing=!1;function getNativeBeforeInputChars(domEventName,nativeEvent){switch(domEventName){case"compositionend":return getDataFromCustomEvent(nativeEvent);case"keypress":if(32!==nativeEvent.which)return null;hasSpaceKeypress=!0;return SPACEBAR_CHAR;case"textInput":return domEventName=nativeEvent.data,domEventName===SPACEBAR_CHAR&&hasSpaceKeypress?null:domEventName;default:return null;}}function getFallbackBeforeInputChars(domEventName,nativeEvent){if(isComposing)return"compositionend"===domEventName||!canUseCompositionEvent&&isFallbackCompositionEnd(domEventName,nativeEvent)?(domEventName=getData(),fallbackText=startText=root=null,isComposing=!1,domEventName):null;switch(domEventName){case"paste":return null;case"keypress":if(!(nativeEvent.ctrlKey||nativeEvent.altKey||nativeEvent.metaKey)||nativeEvent.ctrlKey&&nativeEvent.altKey){if(nativeEvent.char&&1=offset)return{node:node,offset:offset-root};root=nodeEnd;}a:{for(;node;){if(node.nextSibling){node=node.nextSibling;break a;}node=node.parentNode;}node=void 0;}node=getLeafNode(node);}}function containsNode(outerNode,innerNode){return outerNode&&innerNode?outerNode===innerNode?!0:outerNode&&3===outerNode.nodeType?!1:innerNode&&3===innerNode.nodeType?containsNode(outerNode,innerNode.parentNode):"contains"in outerNode?outerNode.contains(innerNode):outerNode.compareDocumentPosition?!!(outerNode.compareDocumentPosition(innerNode)&16):!1:!1;}function getActiveElementDeep(containerInfo){containerInfo=null!=containerInfo&&null!=containerInfo.ownerDocument&&null!=containerInfo.ownerDocument.defaultView?containerInfo.ownerDocument.defaultView:window;for(var element=getActiveElement(containerInfo.document);element instanceof containerInfo.HTMLIFrameElement;){try{var JSCompiler_inline_result="string"===typeof element.contentWindow.location.href;}catch(err){JSCompiler_inline_result=!1;}if(JSCompiler_inline_result)containerInfo=element.contentWindow;else break;element=getActiveElement(containerInfo.document);}return element;}function hasSelectionCapabilities(elem){var nodeName=elem&&elem.nodeName&&elem.nodeName.toLowerCase();return nodeName&&("input"===nodeName&&("text"===elem.type||"search"===elem.type||"tel"===elem.type||"url"===elem.type||"password"===elem.type)||"textarea"===nodeName||"true"===elem.contentEditable);}var skipSelectionChangeEvent=canUseDOM&&"documentMode"in document&&11>=document.documentMode,activeElement=null,activeElementInst=null,lastSelection=null,mouseDown=!1;function constructSelectEvent(dispatchQueue,nativeEvent,nativeEventTarget){var doc=nativeEventTarget.window===nativeEventTarget?nativeEventTarget.document:9===nativeEventTarget.nodeType?nativeEventTarget:nativeEventTarget.ownerDocument;mouseDown||null==activeElement||activeElement!==getActiveElement(doc)||(doc=activeElement,"selectionStart"in doc&&hasSelectionCapabilities(doc)?doc={start:doc.selectionStart,end:doc.selectionEnd}:(doc=(doc.ownerDocument&&doc.ownerDocument.defaultView||window).getSelection(),doc={anchorNode:doc.anchorNode,anchorOffset:doc.anchorOffset,focusNode:doc.focusNode,focusOffset:doc.focusOffset}),lastSelection&&shallowEqual(lastSelection,doc)||(lastSelection=doc,doc=accumulateTwoPhaseListeners(activeElementInst,"onSelect"),0>=numberOfOverflowBits;baseLength-=numberOfOverflowBits;treeContextId=1<<32-clz32(totalChildren)+baseLength|index<JSCompiler_temp?100:0;for(root=root.pendingGestures;null!==root;){if(root.provider===gestureTimeline){root.count++;root.rangeStart=JSCompiler_temp;root.rangeEnd=gestureOptions;if(null!==transitionTypes)for(gestureTimeline=root.types,null===gestureTimeline&&(gestureTimeline=root.types=[]),JSCompiler_temp=0;JSCompiler_tempnewIdx?(nextOldFiber=oldFiber,oldFiber=null):nextOldFiber=oldFiber.sibling;var newFiber=updateSlot(returnFiber,oldFiber,newChildren[newIdx],lanes);if(null===newFiber){null===oldFiber&&(oldFiber=nextOldFiber);break;}shouldTrackSideEffects&&oldFiber&&null===newFiber.alternate&&deleteChild(returnFiber,oldFiber);currentFirstChild=placeChild(newFiber,currentFirstChild,newIdx);null===previousNewFiber?resultingFirstChild=newFiber:previousNewFiber.sibling=newFiber;previousNewFiber=newFiber;oldFiber=nextOldFiber;}if(newIdx===newChildren.length)return deleteRemainingChildren(returnFiber,oldFiber),isHydrating&&pushTreeFork(returnFiber,newIdx),resultingFirstChild;if(null===oldFiber){for(;newIdxnewIdx?(nextOldFiber=oldFiber,oldFiber=null):nextOldFiber=oldFiber.sibling;var newFiber=updateSlot(returnFiber,oldFiber,step.value,lanes);if(null===newFiber){null===oldFiber&&(oldFiber=nextOldFiber);break;}shouldTrackSideEffects&&oldFiber&&null===newFiber.alternate&&deleteChild(returnFiber,oldFiber);currentFirstChild=placeChild(newFiber,currentFirstChild,newIdx);null===previousNewFiber?resultingFirstChild=newFiber:previousNewFiber.sibling=newFiber;previousNewFiber=newFiber;oldFiber=nextOldFiber;}if(step.done)return deleteRemainingChildren(returnFiber,oldFiber),isHydrating&&pushTreeFork(returnFiber,newIdx),resultingFirstChild;if(null===oldFiber){for(;!step.done;newIdx++,step=newChildren.next())step=createChild(returnFiber,step.value,lanes),null!==step&&(currentFirstChild=placeChild(step,currentFirstChild,newIdx),null===previousNewFiber?resultingFirstChild=step:previousNewFiber.sibling=step,previousNewFiber=step);isHydrating&&pushTreeFork(returnFiber,newIdx);return resultingFirstChild;}for(oldFiber=mapRemainingChildren(oldFiber);!step.done;newIdx++,step=newChildren.next())step=updateFromMap(oldFiber,returnFiber,newIdx,step.value,lanes),null!==step&&(shouldTrackSideEffects&&null!==step.alternate&&oldFiber.delete(null===step.key?newIdx:step.key),currentFirstChild=placeChild(step,currentFirstChild,newIdx),null===previousNewFiber?resultingFirstChild=step:previousNewFiber.sibling=step,previousNewFiber=step);shouldTrackSideEffects&&oldFiber.forEach(function(child){return deleteChild(returnFiber,child);});isHydrating&&pushTreeFork(returnFiber,newIdx);return resultingFirstChild;}function reconcileChildFibersImpl(returnFiber,currentFirstChild,newChild,lanes){"object"===typeof newChild&&null!==newChild&&newChild.type===REACT_FRAGMENT_TYPE&&null===newChild.key&&void 0===newChild.props.ref&&(newChild=newChild.props.children);if("object"===typeof newChild&&null!==newChild){switch(newChild.$$typeof){case REACT_ELEMENT_TYPE:a:{for(var key=newChild.key;null!==currentFirstChild;){if(currentFirstChild.key===key){key=newChild.type;if(key===REACT_FRAGMENT_TYPE){if(7===currentFirstChild.tag){deleteRemainingChildren(returnFiber,currentFirstChild.sibling);lanes=useFiber(currentFirstChild,newChild.props.children);coerceRef(lanes,newChild);lanes.return=returnFiber;returnFiber=lanes;break a;}}else if(currentFirstChild.elementType===key||"object"===typeof key&&null!==key&&key.$$typeof===REACT_LAZY_TYPE&&resolveLazy(key)===currentFirstChild.type){deleteRemainingChildren(returnFiber,currentFirstChild.sibling);lanes=useFiber(currentFirstChild,newChild.props);coerceRef(lanes,newChild);lanes.return=returnFiber;returnFiber=lanes;break a;}deleteRemainingChildren(returnFiber,currentFirstChild);break;}else deleteChild(returnFiber,currentFirstChild);currentFirstChild=currentFirstChild.sibling;}newChild.type===REACT_FRAGMENT_TYPE?(lanes=createFiberFromFragment(newChild.props.children,returnFiber.mode,lanes,newChild.key),coerceRef(lanes,newChild),lanes.return=returnFiber,returnFiber=lanes):(lanes=createFiberFromTypeAndProps(newChild.type,newChild.key,newChild.props,null,returnFiber.mode,lanes),coerceRef(lanes,newChild),lanes.return=returnFiber,returnFiber=lanes);}return placeSingleChild(returnFiber);case REACT_PORTAL_TYPE:a:{for(key=newChild.key;null!==currentFirstChild;){if(currentFirstChild.key===key){if(4===currentFirstChild.tag&¤tFirstChild.stateNode.containerInfo===newChild.containerInfo&¤tFirstChild.stateNode.implementation===newChild.implementation){deleteRemainingChildren(returnFiber,currentFirstChild.sibling);lanes=useFiber(currentFirstChild,newChild.children||[]);lanes.return=returnFiber;returnFiber=lanes;break a;}else{deleteRemainingChildren(returnFiber,currentFirstChild);break;}}else deleteChild(returnFiber,currentFirstChild);currentFirstChild=currentFirstChild.sibling;}lanes=createFiberFromPortal(newChild,returnFiber.mode,lanes);lanes.return=returnFiber;returnFiber=lanes;}return placeSingleChild(returnFiber);case REACT_LAZY_TYPE:return key=newChild._init,newChild=key(newChild._payload),reconcileChildFibersImpl(returnFiber,currentFirstChild,newChild,lanes);}if(isArrayImpl(newChild))return reconcileChildrenArray(returnFiber,currentFirstChild,newChild,lanes);if(getIteratorFn(newChild)){key=getIteratorFn(newChild);if("function"!==typeof key)throw Error(formatProdErrorMessage(150));newChild=key.call(newChild);return reconcileChildrenIterator(returnFiber,currentFirstChild,newChild,lanes);}if("function"===typeof newChild[ASYNC_ITERATOR])return reconcileChildrenAsyncIteratable(returnFiber,currentFirstChild,newChild,lanes);if("function"===typeof newChild.then)return reconcileChildFibersImpl(returnFiber,currentFirstChild,unwrapThenable(newChild),lanes);if(newChild.$$typeof===REACT_CONTEXT_TYPE)return reconcileChildFibersImpl(returnFiber,currentFirstChild,readContextDuringReconciliation(returnFiber,newChild),lanes);throwOnInvalidObjectType(returnFiber,newChild);}return"string"===typeof newChild&&""!==newChild||"number"===typeof newChild||"bigint"===typeof newChild?(newChild=""+newChild,null!==currentFirstChild&&6===currentFirstChild.tag?(deleteRemainingChildren(returnFiber,currentFirstChild.sibling),lanes=useFiber(currentFirstChild,newChild),lanes.return=returnFiber,returnFiber=lanes):(deleteRemainingChildren(returnFiber,currentFirstChild),lanes=createFiberFromText(newChild,returnFiber.mode,lanes),lanes.return=returnFiber,returnFiber=lanes),placeSingleChild(returnFiber)):deleteRemainingChildren(returnFiber,currentFirstChild);}return function(returnFiber,currentFirstChild,newChild,lanes){try{thenableIndexCounter$1=0;var firstChildFiber=reconcileChildFibersImpl(returnFiber,currentFirstChild,newChild,lanes);thenableState$1=null;return firstChildFiber;}catch(x){if(x===SuspenseException||x===SuspenseActionException)throw x;var fiber=createFiberImplClass(29,x,null,returnFiber.mode);fiber.lanes=lanes;fiber.return=returnFiber;return fiber;}finally{}};}var reconcileChildFibers=createChildReconciler(!0),mountChildFibers=createChildReconciler(!1),hasForceUpdate=!1;function initializeUpdateQueue(fiber){fiber.updateQueue={baseState:fiber.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null};}function cloneUpdateQueue(current,workInProgress){current=current.updateQueue;workInProgress.updateQueue===current&&(workInProgress.updateQueue={baseState:current.baseState,firstBaseUpdate:current.firstBaseUpdate,lastBaseUpdate:current.lastBaseUpdate,shared:current.shared,callbacks:null});}function createUpdate(lane){return{lane:lane,tag:0,payload:null,callback:null,next:null};}function enqueueUpdate(fiber,update,lane){var updateQueue=fiber.updateQueue;if(null===updateQueue)return null;updateQueue=updateQueue.shared;if(0!==(executionContext&2)){var pending=updateQueue.pending;null===pending?update.next=update:(update.next=pending.next,pending.next=update);updateQueue.pending=update;update=getRootForUpdatedFiber(fiber);markUpdateLaneFromFiberToRoot(fiber,null,lane);return update;}enqueueUpdate$1(fiber,updateQueue,update,lane);return getRootForUpdatedFiber(fiber);}function entangleTransitions(root,fiber,lane){fiber=fiber.updateQueue;if(null!==fiber&&(fiber=fiber.shared,0!==(lane&4194048))){var queueLanes=fiber.lanes;queueLanes&=root.pendingLanes;lane|=queueLanes;fiber.lanes=lane;markRootEntangled(root,lane);}}function enqueueCapturedUpdate(workInProgress,capturedUpdate){var queue=workInProgress.updateQueue,current=workInProgress.alternate;if(null!==current&&(current=current.updateQueue,queue===current)){var newFirst=null,newLast=null;queue=queue.firstBaseUpdate;if(null!==queue){do{var clone={lane:queue.lane,tag:queue.tag,payload:queue.payload,callback:null,next:null};null===newLast?newFirst=newLast=clone:newLast=newLast.next=clone;queue=queue.next;}while(null!==queue);null===newLast?newFirst=newLast=capturedUpdate:newLast=newLast.next=capturedUpdate;}else newFirst=newLast=capturedUpdate;queue={baseState:current.baseState,firstBaseUpdate:newFirst,lastBaseUpdate:newLast,shared:current.shared,callbacks:current.callbacks};workInProgress.updateQueue=queue;return;}workInProgress=queue.lastBaseUpdate;null===workInProgress?queue.firstBaseUpdate=capturedUpdate:workInProgress.next=capturedUpdate;queue.lastBaseUpdate=capturedUpdate;}var didReadFromEntangledAsyncAction=!1;function suspendIfUpdateReadFromEntangledAsyncAction(){if(didReadFromEntangledAsyncAction){var entangledActionThenable=currentEntangledActionThenable;if(null!==entangledActionThenable)throw entangledActionThenable;}}function processUpdateQueue(workInProgress$jscomp$0,props,instance$jscomp$0,renderLanes){didReadFromEntangledAsyncAction=!1;var queue=workInProgress$jscomp$0.updateQueue;hasForceUpdate=!1;var firstBaseUpdate=queue.firstBaseUpdate,lastBaseUpdate=queue.lastBaseUpdate,pendingQueue=queue.shared.pending;if(null!==pendingQueue){queue.shared.pending=null;var lastPendingUpdate=pendingQueue,firstPendingUpdate=lastPendingUpdate.next;lastPendingUpdate.next=null;null===lastBaseUpdate?firstBaseUpdate=firstPendingUpdate:lastBaseUpdate.next=firstPendingUpdate;lastBaseUpdate=lastPendingUpdate;var current=workInProgress$jscomp$0.alternate;null!==current&&(current=current.updateQueue,pendingQueue=current.lastBaseUpdate,pendingQueue!==lastBaseUpdate&&(null===pendingQueue?current.firstBaseUpdate=firstPendingUpdate:pendingQueue.next=firstPendingUpdate,current.lastBaseUpdate=lastPendingUpdate));}if(null!==firstBaseUpdate){var newState=queue.baseState;lastBaseUpdate=0;current=firstPendingUpdate=lastPendingUpdate=null;pendingQueue=firstBaseUpdate;do{var updateLane=pendingQueue.lane&-536870913,isHiddenUpdate=updateLane!==pendingQueue.lane;if(isHiddenUpdate?(workInProgressRootRenderLanes&updateLane)===updateLane:(renderLanes&updateLane)===updateLane){0!==updateLane&&updateLane===currentEntangledLane&&(didReadFromEntangledAsyncAction=!0);null!==current&&(current=current.next={lane:0,tag:pendingQueue.tag,payload:pendingQueue.payload,callback:null,next:null});a:{var workInProgress=workInProgress$jscomp$0,update=pendingQueue;updateLane=props;var instance=instance$jscomp$0;switch(update.tag){case 1:workInProgress=update.payload;if("function"===typeof workInProgress){newState=workInProgress.call(instance,newState,updateLane);break a;}newState=workInProgress;break a;case 3:workInProgress.flags=workInProgress.flags&-65537|128;case 0:workInProgress=update.payload;updateLane="function"===typeof workInProgress?workInProgress.call(instance,newState,updateLane):workInProgress;if(null===updateLane||void 0===updateLane)break a;newState=assign({},newState,updateLane);break a;case 2:hasForceUpdate=!0;}}updateLane=pendingQueue.callback;null!==updateLane&&(workInProgress$jscomp$0.flags|=64,isHiddenUpdate&&(workInProgress$jscomp$0.flags|=8192),isHiddenUpdate=queue.callbacks,null===isHiddenUpdate?queue.callbacks=[updateLane]:isHiddenUpdate.push(updateLane));}else isHiddenUpdate={lane:updateLane,tag:pendingQueue.tag,payload:pendingQueue.payload,callback:pendingQueue.callback,next:null},null===current?(firstPendingUpdate=current=isHiddenUpdate,lastPendingUpdate=newState):current=current.next=isHiddenUpdate,lastBaseUpdate|=updateLane;pendingQueue=pendingQueue.next;if(null===pendingQueue)if(pendingQueue=queue.shared.pending,null===pendingQueue)break;else isHiddenUpdate=pendingQueue,pendingQueue=isHiddenUpdate.next,isHiddenUpdate.next=null,queue.lastBaseUpdate=isHiddenUpdate,queue.shared.pending=null;}while(1);null===current&&(lastPendingUpdate=newState);queue.baseState=lastPendingUpdate;queue.firstBaseUpdate=firstPendingUpdate;queue.lastBaseUpdate=current;null===firstBaseUpdate&&(queue.shared.lanes=0);workInProgressRootSkippedLanes|=lastBaseUpdate;workInProgress$jscomp$0.lanes=lastBaseUpdate;workInProgress$jscomp$0.memoizedState=newState;}}function callCallback(callback,context){if("function"!==typeof callback)throw Error(formatProdErrorMessage(191,callback));callback.call(context);}function commitCallbacks(updateQueue,context){var callbacks=updateQueue.callbacks;if(null!==callbacks)for(updateQueue.callbacks=null,updateQueue=0;updateQueuepreviousPriority?previousPriority:8;var prevTransition=ReactSharedInternals.T,currentTransition={};currentTransition.types=null!==prevTransition?prevTransition.types:null;currentTransition.gesture=null;ReactSharedInternals.T=currentTransition;dispatchOptimisticSetState(fiber,!1,queue,pendingState);try{var returnValue=callback(),onStartTransitionFinish=ReactSharedInternals.S;null!==onStartTransitionFinish&&onStartTransitionFinish(currentTransition,returnValue);if(null!==returnValue&&"object"===typeof returnValue&&"function"===typeof returnValue.then){var thenableForFinishedState=chainThenableValue(returnValue,finishedState);dispatchSetStateInternal(fiber,queue,thenableForFinishedState,requestUpdateLane(fiber));}else dispatchSetStateInternal(fiber,queue,finishedState,requestUpdateLane(fiber));}catch(error){dispatchSetStateInternal(fiber,queue,{then:function(){},status:"rejected",reason:error},requestUpdateLane());}finally{ReactDOMSharedInternals.p=previousPriority,null!==prevTransition&&null!==currentTransition.types&&(prevTransition.types=currentTransition.types),ReactSharedInternals.T=prevTransition;}}function noop(){}function startHostTransition(formFiber,pendingState,action,formData){if(5!==formFiber.tag)throw Error(formatProdErrorMessage(476));var queue=ensureFormComponentIsStateful(formFiber).queue;startTransition(formFiber,queue,pendingState,sharedNotPendingObject,null===action?noop:function(){requestFormReset$1(formFiber);return action(formData);});}function ensureFormComponentIsStateful(formFiber){var existingStateHook=formFiber.memoizedState;if(null!==existingStateHook)return existingStateHook;existingStateHook={memoizedState:sharedNotPendingObject,baseState:sharedNotPendingObject,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:basicStateReducer,lastRenderedState:sharedNotPendingObject},next:null};var initialResetState={};existingStateHook.next={memoizedState:initialResetState,baseState:initialResetState,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:basicStateReducer,lastRenderedState:initialResetState},next:null};formFiber.memoizedState=existingStateHook;formFiber=formFiber.alternate;null!==formFiber&&(formFiber.memoizedState=existingStateHook);return existingStateHook;}function requestFormReset$1(formFiber){var transition=ReactSharedInternals.T;if(null!==transition&&transition.gesture)throw Error(formatProdErrorMessage(555));transition=ensureFormComponentIsStateful(formFiber);null===transition.next&&(transition=formFiber.alternate.memoizedState);dispatchSetStateInternal(formFiber,transition.next.queue,{},requestUpdateLane());}function useHostTransitionStatus(){return readContext(HostTransitionContext);}function updateId(){return updateWorkInProgressHook().memoizedState;}function updateRefresh(){return updateWorkInProgressHook().memoizedState;}function refreshCache(fiber,seedKey,seedValue){for(var provider=fiber.return;null!==provider;){switch(provider.tag){case 24:case 3:var lane=requestUpdateLane();fiber=createUpdate(lane);var root$77=enqueueUpdate(provider,fiber,lane);null!==root$77&&(scheduleUpdateOnFiber(root$77,provider,lane),entangleTransitions(root$77,provider,lane));provider=createCache();null!==seedKey&&void 0!==seedKey&&null!==root$77&&provider.data.set(seedKey,seedValue);fiber.payload={cache:provider};return;}provider=provider.return;}}function dispatchReducerAction(fiber,queue,action){var lane=requestUpdateLane();action={lane:lane,revertLane:0,gesture:null,action:action,hasEagerState:!1,eagerState:null,next:null};isRenderPhaseUpdate(fiber)?enqueueRenderPhaseUpdate(queue,action):(action=enqueueConcurrentHookUpdate(fiber,queue,action,lane),null!==action&&(scheduleUpdateOnFiber(action,fiber,lane),entangleTransitionUpdate(action,queue,lane)));}function dispatchSetState(fiber,queue,action){var lane=requestUpdateLane();dispatchSetStateInternal(fiber,queue,action,lane);}function dispatchSetStateInternal(fiber,queue,action,lane){var update={lane:lane,revertLane:0,gesture:null,action:action,hasEagerState:!1,eagerState:null,next:null};if(isRenderPhaseUpdate(fiber))enqueueRenderPhaseUpdate(queue,update);else{var alternate=fiber.alternate;if(0===fiber.lanes&&(null===alternate||0===alternate.lanes)&&(alternate=queue.lastRenderedReducer,null!==alternate))try{var currentState=queue.lastRenderedState,eagerState=alternate(currentState,action);update.hasEagerState=!0;update.eagerState=eagerState;if(objectIs(eagerState,currentState))return enqueueUpdate$1(fiber,queue,update,0),null===workInProgressRoot&&finishQueueingConcurrentUpdates(),!1;}catch(error){}finally{}action=enqueueConcurrentHookUpdate(fiber,queue,update,lane);if(null!==action)return scheduleUpdateOnFiber(action,fiber,lane),entangleTransitionUpdate(action,queue,lane),!0;}return!1;}function dispatchOptimisticSetState(fiber,throwIfDuringRender,queue,action){var transition=ReactSharedInternals.T,lane=null!==transition&&transition.gesture?64:2;action={lane:lane,revertLane:requestTransitionLane(),gesture:null,action:action,hasEagerState:!1,eagerState:null,next:null};if(isRenderPhaseUpdate(fiber)){if(throwIfDuringRender)throw Error(formatProdErrorMessage(479));}else if(throwIfDuringRender=enqueueConcurrentHookUpdate(fiber,queue,action,lane),null!==throwIfDuringRender&&(scheduleUpdateOnFiber(throwIfDuringRender,fiber,lane),null!==transition&&(transition=transition.gesture,null!==transition))){a:{for(fiber=throwIfDuringRender.pendingGestures;null!==fiber;){if(fiber.provider===transition){throwIfDuringRender=fiber;break a;}lane=fiber.next;if(null===lane)break;fiber=lane;}transition={provider:transition,count:0,rangeStart:0,rangeEnd:100,types:null,running:null,prev:fiber,next:null};null===fiber?throwIfDuringRender.pendingGestures=transition:fiber.next=transition;ensureRootIsScheduled(throwIfDuringRender);throwIfDuringRender=transition;}action.gesture=throwIfDuringRender;}}function isRenderPhaseUpdate(fiber){var alternate=fiber.alternate;return fiber===currentlyRenderingFiber||null!==alternate&&alternate===currentlyRenderingFiber;}function enqueueRenderPhaseUpdate(queue,update){didScheduleRenderPhaseUpdateDuringThisPass=didScheduleRenderPhaseUpdate=!0;var pending=queue.pending;null===pending?update.next=update:(update.next=pending.next,pending.next=update);queue.pending=update;}function entangleTransitionUpdate(root,queue,lane){if(0!==(lane&4194048)){var queueLanes=queue.lanes;queueLanes&=root.pendingLanes;lane|=queueLanes;queue.lanes=lane;markRootEntangled(root,lane);}}var ContextOnlyDispatcher={readContext:readContext,use:use,useCallback:throwInvalidHookError,useContext:throwInvalidHookError,useEffect:throwInvalidHookError,useImperativeHandle:throwInvalidHookError,useLayoutEffect:throwInvalidHookError,useInsertionEffect:throwInvalidHookError,useMemo:throwInvalidHookError,useReducer:throwInvalidHookError,useRef:throwInvalidHookError,useState:throwInvalidHookError,useDebugValue:throwInvalidHookError,useDeferredValue:throwInvalidHookError,useTransition:throwInvalidHookError,useSyncExternalStore:throwInvalidHookError,useId:throwInvalidHookError,useHostTransitionStatus:throwInvalidHookError,useFormState:throwInvalidHookError,useActionState:throwInvalidHookError,useOptimistic:throwInvalidHookError,useMemoCache:throwInvalidHookError,useCacheRefresh:throwInvalidHookError};ContextOnlyDispatcher.useEffectEvent=throwInvalidHookError;var HooksDispatcherOnMount={readContext:readContext,use:use,useCallback:function(callback,deps){mountWorkInProgressHook().memoizedState=[callback,void 0===deps?null:deps];return callback;},useContext:readContext,useEffect:mountEffect,useImperativeHandle:function(ref,create,deps){deps=null!==deps&&void 0!==deps?deps.concat([ref]):null;mountEffectImpl(4194308,4,imperativeHandleEffect.bind(null,create,ref),deps);},useLayoutEffect:function(create,deps){return mountEffectImpl(4194308,4,create,deps);},useInsertionEffect:function(create,deps){mountEffectImpl(4,2,create,deps);},useMemo:function(nextCreate,deps){var hook=mountWorkInProgressHook();deps=void 0===deps?null:deps;var nextValue=nextCreate();if(shouldDoubleInvokeUserFnsInHooksDEV){setIsStrictModeForDevtools(!0);try{nextCreate();}finally{setIsStrictModeForDevtools(!1);}}hook.memoizedState=[nextValue,deps];return nextValue;},useReducer:function(reducer,initialArg,init){var hook=mountWorkInProgressHook();if(void 0!==init){var initialState=init(initialArg);if(shouldDoubleInvokeUserFnsInHooksDEV){setIsStrictModeForDevtools(!0);try{init(initialArg);}finally{setIsStrictModeForDevtools(!1);}}}else initialState=initialArg;hook.memoizedState=hook.baseState=initialState;reducer={pending:null,lanes:0,dispatch:null,lastRenderedReducer:reducer,lastRenderedState:initialState};hook.queue=reducer;reducer=reducer.dispatch=dispatchReducerAction.bind(null,currentlyRenderingFiber,reducer);return[hook.memoizedState,reducer];},useRef:function(initialValue){var hook=mountWorkInProgressHook();initialValue={current:initialValue};return hook.memoizedState=initialValue;},useState:function(initialState){initialState=mountStateImpl(initialState);var queue=initialState.queue,dispatch=dispatchSetState.bind(null,currentlyRenderingFiber,queue);queue.dispatch=dispatch;return[initialState.memoizedState,dispatch];},useDebugValue:mountDebugValue,useDeferredValue:function(value,initialValue){var hook=mountWorkInProgressHook();return mountDeferredValueImpl(hook,value,initialValue);},useTransition:function(){var stateHook=mountStateImpl(!1);stateHook=startTransition.bind(null,currentlyRenderingFiber,stateHook.queue,!0,!1);mountWorkInProgressHook().memoizedState=stateHook;return[!1,stateHook];},useSyncExternalStore:function(subscribe,getSnapshot,getServerSnapshot){var fiber=currentlyRenderingFiber,hook=mountWorkInProgressHook();if(isHydrating){if(void 0===getServerSnapshot)throw Error(formatProdErrorMessage(407));getServerSnapshot=getServerSnapshot();}else{getServerSnapshot=getSnapshot();if(null===workInProgressRoot)throw Error(formatProdErrorMessage(349));0!==(workInProgressRootRenderLanes&124)||pushStoreConsistencyCheck(fiber,getSnapshot,getServerSnapshot);}hook.memoizedState=getServerSnapshot;var inst={value:getServerSnapshot,getSnapshot:getSnapshot};hook.queue=inst;mountEffect(subscribeToStore.bind(null,fiber,inst,subscribe),[subscribe]);fiber.flags|=2048;pushSimpleEffect(9,{destroy:void 0},updateStoreInstance.bind(null,fiber,inst,getServerSnapshot,getSnapshot),null);return getServerSnapshot;},useId:function(){var hook=mountWorkInProgressHook(),identifierPrefix=workInProgressRoot.identifierPrefix;if(isHydrating){var JSCompiler_inline_result=treeContextOverflow;var idWithLeadingBit=treeContextId;JSCompiler_inline_result=(idWithLeadingBit&~(1<<32-clz32(idWithLeadingBit)-1)).toString(32)+JSCompiler_inline_result;identifierPrefix="_"+identifierPrefix+"R_"+JSCompiler_inline_result;JSCompiler_inline_result=localIdCounter++;0\x3c/script>";nextResource=nextResource.removeChild(nextResource.firstChild);break;case"select":nextResource="string"===typeof newProps.is?ownerDocument.createElement("select",{is:newProps.is}):ownerDocument.createElement("select");newProps.multiple?nextResource.multiple=!0:newProps.size&&(nextResource.size=newProps.size);break;default:nextResource="string"===typeof newProps.is?ownerDocument.createElement(type,{is:newProps.is}):ownerDocument.createElement(type);}}nextResource[internalInstanceKey]=workInProgress;nextResource[internalPropsKey]=newProps;a:for(ownerDocument=workInProgress.child;null!==ownerDocument;){if(5===ownerDocument.tag||6===ownerDocument.tag)nextResource.appendChild(ownerDocument.stateNode);else if(4!==ownerDocument.tag&&27!==ownerDocument.tag&&null!==ownerDocument.child){ownerDocument.child.return=ownerDocument;ownerDocument=ownerDocument.child;continue;}if(ownerDocument===workInProgress)break a;for(;null===ownerDocument.sibling;){if(null===ownerDocument.return||ownerDocument.return===workInProgress)break a;ownerDocument=ownerDocument.return;}ownerDocument.sibling.return=ownerDocument.return;ownerDocument=ownerDocument.sibling;}workInProgress.stateNode=nextResource;a:switch(setInitialProperties(nextResource,type,newProps),type){case"button":case"input":case"select":case"textarea":newProps=!!newProps.autoFocus;break a;case"img":newProps=!0;break a;default:newProps=!1;}newProps&&markUpdate(workInProgress);}}bubbleProperties(workInProgress);workInProgress.subtreeFlags&=-33554433;preloadInstanceAndSuspendIfNeeded(workInProgress,workInProgress.type,null===current?null:current.memoizedProps,workInProgress.pendingProps,renderLanes);return null;case 6:if(current&&null!=workInProgress.stateNode)current.memoizedProps!==newProps&&markUpdate(workInProgress);else{if("string"!==typeof newProps&&null===workInProgress.stateNode)throw Error(formatProdErrorMessage(166));current=rootInstanceStackCursor.current;if(popHydrationState(workInProgress)){current=workInProgress.stateNode;renderLanes=workInProgress.memoizedProps;newProps=null;type=hydrationParentFiber;if(null!==type)switch(type.tag){case 27:case 5:newProps=type.memoizedProps;}current[internalInstanceKey]=workInProgress;current=current.nodeValue===renderLanes||null!==newProps&&!0===newProps.suppressHydrationWarning||checkForUnmatchedText(current.nodeValue,renderLanes)?!0:!1;current||throwOnHydrationMismatch(workInProgress,!0);}else current=getOwnerDocumentFromRootContainer(current).createTextNode(newProps),current[internalInstanceKey]=workInProgress,workInProgress.stateNode=current;}bubbleProperties(workInProgress);return null;case 31:renderLanes=workInProgress.memoizedState;if(null===current||null!==current.memoizedState){newProps=popHydrationState(workInProgress);if(null!==renderLanes){if(null===current){if(!newProps)throw Error(formatProdErrorMessage(318));current=workInProgress.memoizedState;current=null!==current?current.dehydrated:null;if(!current)throw Error(formatProdErrorMessage(557));current[internalInstanceKey]=workInProgress;}else resetHydrationState(),0===(workInProgress.flags&128)&&(workInProgress.memoizedState=null),workInProgress.flags|=4;bubbleProperties(workInProgress);current=!1;}else renderLanes=upgradeHydrationErrorsToRecoverable(),null!==current&&null!==current.memoizedState&&(current.memoizedState.hydrationErrors=renderLanes),current=!0;if(!current){if(workInProgress.flags&256)return popSuspenseHandler(workInProgress),workInProgress;popSuspenseHandler(workInProgress);return null;}if(0!==(workInProgress.flags&128))throw Error(formatProdErrorMessage(558));}bubbleProperties(workInProgress);return null;case 13:newProps=workInProgress.memoizedState;if(null===current||null!==current.memoizedState&&null!==current.memoizedState.dehydrated){type=popHydrationState(workInProgress);if(null!==newProps&&null!==newProps.dehydrated){if(null===current){if(!type)throw Error(formatProdErrorMessage(318));type=workInProgress.memoizedState;type=null!==type?type.dehydrated:null;if(!type)throw Error(formatProdErrorMessage(317));type[internalInstanceKey]=workInProgress;}else resetHydrationState(),0===(workInProgress.flags&128)&&(workInProgress.memoizedState=null),workInProgress.flags|=4;bubbleProperties(workInProgress);type=!1;}else type=upgradeHydrationErrorsToRecoverable(),null!==current&&null!==current.memoizedState&&(current.memoizedState.hydrationErrors=type),type=!0;if(!type){if(workInProgress.flags&256)return popSuspenseHandler(workInProgress),workInProgress;popSuspenseHandler(workInProgress);return null;}}popSuspenseHandler(workInProgress);if(0!==(workInProgress.flags&128))return workInProgress.lanes=renderLanes,workInProgress;renderLanes=null!==newProps;current=null!==current&&null!==current.memoizedState;renderLanes&&(newProps=workInProgress.child,type=null,null!==newProps.alternate&&null!==newProps.alternate.memoizedState&&null!==newProps.alternate.memoizedState.cachePool&&(type=newProps.alternate.memoizedState.cachePool.pool),nextResource=null,null!==newProps.memoizedState&&null!==newProps.memoizedState.cachePool&&(nextResource=newProps.memoizedState.cachePool.pool),nextResource!==type&&(newProps.flags|=2048));renderLanes!==current&&renderLanes&&(workInProgress.child.flags|=8192);scheduleRetryEffect(workInProgress,workInProgress.updateQueue);bubbleProperties(workInProgress);return null;case 4:return popHostContainer(),null===current&&listenToAllSupportedEvents(workInProgress.stateNode.containerInfo),bubbleProperties(workInProgress),null;case 10:return popProvider(workInProgress.type),bubbleProperties(workInProgress),null;case 19:pop(suspenseStackCursor);newProps=workInProgress.memoizedState;if(null===newProps)return bubbleProperties(workInProgress),null;type=0!==(workInProgress.flags&128);nextResource=newProps.rendering;if(null===nextResource){if(type)cutOffTailIfNeeded(newProps,!1);else{if(0!==workInProgressRootExitStatus||null!==current&&0!==(current.flags&128))for(current=workInProgress.child;null!==current;){nextResource=findFirstSuspended(current);if(null!==nextResource){workInProgress.flags|=128;cutOffTailIfNeeded(newProps,!1);current=nextResource.updateQueue;workInProgress.updateQueue=current;scheduleRetryEffect(workInProgress,current);workInProgress.subtreeFlags=0;current=renderLanes;for(renderLanes=workInProgress.child;null!==renderLanes;)resetWorkInProgress(renderLanes,current),renderLanes=renderLanes.sibling;push(suspenseStackCursor,suspenseStackCursor.current&1|2);isHydrating&&pushTreeFork(workInProgress,newProps.treeForkCount);return workInProgress.child;}current=current.sibling;}null!==newProps.tail&&now()>workInProgressRootRenderTargetTime&&(workInProgress.flags|=128,type=!0,cutOffTailIfNeeded(newProps,!1),workInProgress.lanes=4194304);}}else{if(!type)if(current=findFirstSuspended(nextResource),null!==current){if(workInProgress.flags|=128,type=!0,current=current.updateQueue,workInProgress.updateQueue=current,scheduleRetryEffect(workInProgress,current),cutOffTailIfNeeded(newProps,!0),null===newProps.tail&&"hidden"===newProps.tailMode&&!nextResource.alternate&&!isHydrating)return bubbleProperties(workInProgress),null;}else 2*now()-newProps.renderingStartTime>workInProgressRootRenderTargetTime&&536870912!==renderLanes&&(workInProgress.flags|=128,type=!0,cutOffTailIfNeeded(newProps,!1),workInProgress.lanes=4194304);newProps.isBackwards?(nextResource.sibling=workInProgress.child,workInProgress.child=nextResource):(current=newProps.last,null!==current?current.sibling=nextResource:workInProgress.child=nextResource,newProps.last=nextResource);}if(null!==newProps.tail)return current=newProps.tail,newProps.rendering=current,newProps.tail=current.sibling,newProps.renderingStartTime=now(),current.sibling=null,renderLanes=suspenseStackCursor.current,push(suspenseStackCursor,type?renderLanes&1|2:renderLanes&1),isHydrating&&pushTreeFork(workInProgress,newProps.treeForkCount),current;bubbleProperties(workInProgress);return null;case 22:case 23:return popSuspenseHandler(workInProgress),popHiddenContext(),newProps=null!==workInProgress.memoizedState,null!==current?null!==current.memoizedState!==newProps&&(workInProgress.flags|=8192):newProps&&(workInProgress.flags|=8192),newProps?0!==(renderLanes&536870912)&&0===(workInProgress.flags&128)&&(bubbleProperties(workInProgress),workInProgress.subtreeFlags&6&&(workInProgress.flags|=8192)):bubbleProperties(workInProgress),renderLanes=workInProgress.updateQueue,null!==renderLanes&&scheduleRetryEffect(workInProgress,renderLanes.retryQueue),renderLanes=null,null!==current&&null!==current.memoizedState&&null!==current.memoizedState.cachePool&&(renderLanes=current.memoizedState.cachePool.pool),newProps=null,null!==workInProgress.memoizedState&&null!==workInProgress.memoizedState.cachePool&&(newProps=workInProgress.memoizedState.cachePool.pool),newProps!==renderLanes&&(workInProgress.flags|=2048),null!==current&&pop(resumedCache),null;case 24:return renderLanes=null,null!==current&&(renderLanes=current.memoizedState.cache),workInProgress.memoizedState.cache!==renderLanes&&(workInProgress.flags|=2048),popProvider(CacheContext),bubbleProperties(workInProgress),null;case 25:return null;case 30:return workInProgress.flags|=33554432,bubbleProperties(workInProgress),null;}throw Error(formatProdErrorMessage(156,workInProgress.tag));}function unwindWork(current,workInProgress){popTreeContext(workInProgress);switch(workInProgress.tag){case 1:return current=workInProgress.flags,current&65536?(workInProgress.flags=current&-65537|128,workInProgress):null;case 3:return popProvider(CacheContext),popHostContainer(),current=workInProgress.flags,0!==(current&65536)&&0===(current&128)?(workInProgress.flags=current&-65537|128,workInProgress):null;case 26:case 27:case 5:return popHostContext(workInProgress),null;case 31:if(null!==workInProgress.memoizedState){popSuspenseHandler(workInProgress);if(null===workInProgress.alternate)throw Error(formatProdErrorMessage(340));resetHydrationState();}current=workInProgress.flags;return current&65536?(workInProgress.flags=current&-65537|128,workInProgress):null;case 13:popSuspenseHandler(workInProgress);current=workInProgress.memoizedState;if(null!==current&&null!==current.dehydrated){if(null===workInProgress.alternate)throw Error(formatProdErrorMessage(340));resetHydrationState();}current=workInProgress.flags;return current&65536?(workInProgress.flags=current&-65537|128,workInProgress):null;case 19:return pop(suspenseStackCursor),null;case 4:return popHostContainer(),null;case 10:return popProvider(workInProgress.type),null;case 22:case 23:return popSuspenseHandler(workInProgress),popHiddenContext(),null!==current&&pop(resumedCache),current=workInProgress.flags,current&65536?(workInProgress.flags=current&-65537|128,workInProgress):null;case 24:return popProvider(CacheContext),null;case 25:return null;default:return null;}}function unwindInterruptedWork(current,interruptedWork){popTreeContext(interruptedWork);switch(interruptedWork.tag){case 3:popProvider(CacheContext);popHostContainer();break;case 26:case 27:case 5:popHostContext(interruptedWork);break;case 4:popHostContainer();break;case 31:null!==interruptedWork.memoizedState&&popSuspenseHandler(interruptedWork);break;case 13:popSuspenseHandler(interruptedWork);break;case 19:pop(suspenseStackCursor);break;case 10:popProvider(interruptedWork.type);break;case 22:case 23:popSuspenseHandler(interruptedWork);popHiddenContext();null!==current&&pop(resumedCache);break;case 24:popProvider(CacheContext);}}function commitHookEffectListMount(flags,finishedWork){try{var updateQueue=finishedWork.updateQueue,lastEffect=null!==updateQueue?updateQueue.lastEffect:null;if(null!==lastEffect){var firstEffect=lastEffect.next;updateQueue=firstEffect;do{if((updateQueue.tag&flags)===flags){lastEffect=void 0;var create=updateQueue.create,inst=updateQueue.inst;lastEffect=create();inst.destroy=lastEffect;}updateQueue=updateQueue.next;}while(updateQueue!==firstEffect);}}catch(error){captureCommitPhaseError(finishedWork,finishedWork.return,error);}}function commitHookEffectListUnmount(flags,finishedWork,nearestMountedAncestor$jscomp$0){try{var updateQueue=finishedWork.updateQueue,lastEffect=null!==updateQueue?updateQueue.lastEffect:null;if(null!==lastEffect){var firstEffect=lastEffect.next;updateQueue=firstEffect;do{if((updateQueue.tag&flags)===flags){var inst=updateQueue.inst,destroy=inst.destroy;if(void 0!==destroy){inst.destroy=void 0;lastEffect=finishedWork;var nearestMountedAncestor=nearestMountedAncestor$jscomp$0,destroy_=destroy;try{destroy_();}catch(error){captureCommitPhaseError(lastEffect,nearestMountedAncestor,error);}}}updateQueue=updateQueue.next;}while(updateQueue!==firstEffect);}}catch(error){captureCommitPhaseError(finishedWork,finishedWork.return,error);}}function commitClassCallbacks(finishedWork){var updateQueue=finishedWork.updateQueue;if(null!==updateQueue){var instance=finishedWork.stateNode;try{commitCallbacks(updateQueue,instance);}catch(error){captureCommitPhaseError(finishedWork,finishedWork.return,error);}}}function safelyCallComponentWillUnmount(current,nearestMountedAncestor,instance){instance.props=resolveClassComponentProps(current.type,current.memoizedProps);instance.state=current.memoizedState;try{instance.componentWillUnmount();}catch(error){captureCommitPhaseError(current,nearestMountedAncestor,error);}}function safelyAttachRef(current,nearestMountedAncestor){try{var ref=current.ref;if(null!==ref){switch(current.tag){case 26:case 27:case 5:var instanceToUse=current.stateNode;break;case 30:var instance=current.stateNode,name=getViewTransitionName(current.memoizedProps,instance);if(null===instance.ref||instance.ref.name!==name)instance.ref=createViewTransitionInstance(name);instanceToUse=instance.ref;break;case 7:null===current.stateNode&&(current.stateNode=new FragmentInstance(current));instanceToUse=current.stateNode;break;default:instanceToUse=current.stateNode;}"function"===typeof ref?current.refCleanup=ref(instanceToUse):ref.current=instanceToUse;}}catch(error){captureCommitPhaseError(current,nearestMountedAncestor,error);}}function safelyDetachRef(current,nearestMountedAncestor){var ref=current.ref,refCleanup=current.refCleanup;if(null!==ref)if("function"===typeof refCleanup)try{refCleanup();}catch(error){captureCommitPhaseError(current,nearestMountedAncestor,error);}finally{current.refCleanup=null,current=current.alternate,null!=current&&(current.refCleanup=null);}else if("function"===typeof ref)try{ref(null);}catch(error$149){captureCommitPhaseError(current,nearestMountedAncestor,error$149);}else ref.current=null;}function commitHostMount(finishedWork){var type=finishedWork.type,props=finishedWork.memoizedProps,instance=finishedWork.stateNode;try{a:switch(type){case"button":case"input":case"select":case"textarea":props.autoFocus&&instance.focus();break a;case"img":if(props.src){var src=props.src;if("object"===typeof src)try{setSrcObject(instance,type,src);break a;}catch(x){}instance.src=src;}else props.srcSet&&(instance.srcset=props.srcSet);}}catch(error){captureCommitPhaseError(finishedWork,finishedWork.return,error);}}function commitHostUpdate(finishedWork,newProps,oldProps){try{var domElement=finishedWork.stateNode;updateProperties(domElement,finishedWork.type,oldProps,newProps);domElement[internalPropsKey]=newProps;}catch(error){captureCommitPhaseError(finishedWork,finishedWork.return,error);}}function commitNewChildToFragmentInstances(fiber,parentFragmentInstances){if(5===fiber.tag&&null===fiber.alternate&&null!==parentFragmentInstances)for(var i=0;i title"));setInitialProperties(lanes,current,flags);lanes[internalInstanceKey]=finishedWork;markNodeAsHoistable(lanes);current=lanes;break a;case"link":if(hoistableRoot=getHydratableHoistableCache("link","href",root).get(current+(flags.href||"")))for(var i=0;iend$jscomp$0&&(curFocusedElem=end$jscomp$0,end$jscomp$0=start$jscomp$0,start$jscomp$0=curFocusedElem);var startMarker=getNodeForCharacterOffset(priorFocusedElem,start$jscomp$0),endMarker=getNodeForCharacterOffset(priorFocusedElem,end$jscomp$0);if(startMarker&&endMarker&&(1!==selection.rangeCount||selection.anchorNode!==startMarker.node||selection.anchorOffset!==startMarker.offset||selection.focusNode!==endMarker.node||selection.focusOffset!==endMarker.offset)){var range=doc.createRange();range.setStart(startMarker.node,startMarker.offset);selection.removeAllRanges();start$jscomp$0>end$jscomp$0?(selection.addRange(range),selection.extend(endMarker.node,endMarker.offset)):(range.setEnd(endMarker.node,endMarker.offset),selection.addRange(range));}}}}doc=[];for(selection=priorFocusedElem;selection=selection.parentNode;)1===selection.nodeType&&doc.push({element:selection,left:selection.scrollLeft,top:selection.scrollTop});"function"===typeof priorFocusedElem.focus&&priorFocusedElem.focus();for(priorFocusedElem=0;priorFocusedElemrenderPriority?32:renderPriority;ReactSharedInternals.T=null;renderPriority=pendingPassiveTransitions;pendingPassiveTransitions=null;var root$jscomp$0=pendingEffectsRoot,lanes=pendingEffectsLanes;pendingEffectsStatus=0;pendingFinishedWork=pendingEffectsRoot=null;pendingEffectsLanes=0;if(0!==(executionContext&6))throw Error(formatProdErrorMessage(331));var prevExecutionContext=executionContext;executionContext|=4;commitPassiveUnmountOnFiber(root$jscomp$0.current);commitPassiveMountOnFiber(root$jscomp$0,root$jscomp$0.current,lanes,renderPriority);executionContext=prevExecutionContext;flushSyncWorkAcrossRoots_impl(0,!1);if(injectedHook&&"function"===typeof injectedHook.onPostCommitFiberRoot)try{injectedHook.onPostCommitFiberRoot(rendererID,root$jscomp$0);}catch(err){}return!0;}finally{ReactDOMSharedInternals.p=previousPriority,ReactSharedInternals.T=prevTransition,releaseRootPooledCache(root,remainingLanes);}}function captureCommitPhaseErrorOnRoot(rootFiber,sourceFiber,error){sourceFiber=createCapturedValueAtFiber(error,sourceFiber);sourceFiber=createRootErrorUpdate(rootFiber.stateNode,sourceFiber,2);rootFiber=enqueueUpdate(rootFiber,sourceFiber,2);null!==rootFiber&&(markRootUpdated$1(rootFiber,2),ensureRootIsScheduled(rootFiber));}function captureCommitPhaseError(sourceFiber,nearestMountedAncestor,error){if(3===sourceFiber.tag)captureCommitPhaseErrorOnRoot(sourceFiber,sourceFiber,error);else for(;null!==nearestMountedAncestor;){if(3===nearestMountedAncestor.tag){captureCommitPhaseErrorOnRoot(nearestMountedAncestor,sourceFiber,error);break;}else if(1===nearestMountedAncestor.tag){var instance=nearestMountedAncestor.stateNode;if("function"===typeof nearestMountedAncestor.type.getDerivedStateFromError||"function"===typeof instance.componentDidCatch&&(null===legacyErrorBoundariesThatAlreadyFailed||!legacyErrorBoundariesThatAlreadyFailed.has(instance))){sourceFiber=createCapturedValueAtFiber(error,sourceFiber);error=createClassErrorUpdate(2);instance=enqueueUpdate(nearestMountedAncestor,error,2);null!==instance&&(initializeClassErrorUpdate(error,instance,nearestMountedAncestor,sourceFiber),markRootUpdated$1(instance,2),ensureRootIsScheduled(instance));break;}}nearestMountedAncestor=nearestMountedAncestor.return;}}function attachPingListener(root,wakeable,lanes){var pingCache=root.pingCache;if(null===pingCache){pingCache=root.pingCache=new PossiblyWeakMap();var threadIDs=new Set();pingCache.set(wakeable,threadIDs);}else threadIDs=pingCache.get(wakeable),void 0===threadIDs&&(threadIDs=new Set(),pingCache.set(wakeable,threadIDs));threadIDs.has(lanes)||(workInProgressRootDidAttachPingListener=!0,threadIDs.add(lanes),root=pingSuspendedRoot.bind(null,root,wakeable,lanes),wakeable.then(root,root));}function pingSuspendedRoot(root,wakeable,pingedLanes){var pingCache=root.pingCache;null!==pingCache&&pingCache.delete(wakeable);root.pingedLanes|=root.suspendedLanes&pingedLanes;root.warmLanes&=~pingedLanes;workInProgressRoot===root&&(workInProgressRootRenderLanes&pingedLanes)===pingedLanes&&(4===workInProgressRootExitStatus||3===workInProgressRootExitStatus&&(workInProgressRootRenderLanes&62914560)===workInProgressRootRenderLanes&&300>now()-globalMostRecentFallbackTime?0===(executionContext&2)&&prepareFreshStack(root,0):workInProgressRootPingedLanes|=pingedLanes,workInProgressSuspendedRetryLanes===workInProgressRootRenderLanes&&(workInProgressSuspendedRetryLanes=0));ensureRootIsScheduled(root);}function retryTimedOutBoundary(boundaryFiber,retryLane){0===retryLane&&(retryLane=claimNextRetryLane());boundaryFiber=enqueueConcurrentRenderForLane(boundaryFiber,retryLane);null!==boundaryFiber&&(markRootUpdated$1(boundaryFiber,retryLane),ensureRootIsScheduled(boundaryFiber));}function retryDehydratedSuspenseBoundary(boundaryFiber){var suspenseState=boundaryFiber.memoizedState,retryLane=0;null!==suspenseState&&(retryLane=suspenseState.retryLane);retryTimedOutBoundary(boundaryFiber,retryLane);}function resolveRetryWakeable(boundaryFiber,wakeable){var retryLane=0;switch(boundaryFiber.tag){case 31:case 13:var retryCache=boundaryFiber.stateNode;var suspenseState=boundaryFiber.memoizedState;null!==suspenseState&&(retryLane=suspenseState.retryLane);break;case 19:retryCache=boundaryFiber.stateNode;break;case 22:retryCache=boundaryFiber.stateNode._retryCache;break;default:throw Error(formatProdErrorMessage(314));}null!==retryCache&&retryCache.delete(wakeable);retryTimedOutBoundary(boundaryFiber,retryLane);}function scheduleCallback$1(priorityLevel,callback){return scheduleCallback$3(priorityLevel,callback);}var firstScheduledRoot=null,lastScheduledRoot=null,didScheduleMicrotask=!1,mightHavePendingSyncWork=!1,isFlushingWork=!1,currentEventTransitionLane=0;function ensureRootIsScheduled(root){root!==lastScheduledRoot&&null===root.next&&(null===lastScheduledRoot?firstScheduledRoot=lastScheduledRoot=root:lastScheduledRoot=lastScheduledRoot.next=root);mightHavePendingSyncWork=!0;didScheduleMicrotask||(didScheduleMicrotask=!0,scheduleImmediateRootScheduleTask());}function flushSyncWorkAcrossRoots_impl(syncTransitionLanes,onlyLegacy){if(!isFlushingWork&&mightHavePendingSyncWork){isFlushingWork=!0;do{var didPerformSomeWork=!1;for(var root$191=firstScheduledRoot;null!==root$191;){if(!onlyLegacy)if(0!==syncTransitionLanes){var pendingLanes=root$191.pendingLanes;if(0===pendingLanes)var JSCompiler_inline_result=0;else{var suspendedLanes=root$191.suspendedLanes,pingedLanes=root$191.pingedLanes;JSCompiler_inline_result=(1<<31-clz32(42|syncTransitionLanes)+1)-1;JSCompiler_inline_result&=pendingLanes&~(suspendedLanes&~pingedLanes);JSCompiler_inline_result=JSCompiler_inline_result&201326741?JSCompiler_inline_result&201326741|1:JSCompiler_inline_result?JSCompiler_inline_result|2:0;}0!==JSCompiler_inline_result&&(didPerformSomeWork=!0,performSyncWorkOnRoot(root$191,JSCompiler_inline_result));}else JSCompiler_inline_result=workInProgressRootRenderLanes,JSCompiler_inline_result=getNextLanes(root$191,root$191===workInProgressRoot?JSCompiler_inline_result:0,null!==root$191.cancelPendingCommit||-1!==root$191.timeoutHandle),0===(JSCompiler_inline_result&3)&&64!==JSCompiler_inline_result||checkIfRootIsPrerendering(root$191,JSCompiler_inline_result)||(didPerformSomeWork=!0,performSyncWorkOnRoot(root$191,JSCompiler_inline_result));root$191=root$191.next;}}while(didPerformSomeWork);isFlushingWork=!1;}}function processRootScheduleInImmediateTask(){processRootScheduleInMicrotask();}function processRootScheduleInMicrotask(){mightHavePendingSyncWork=didScheduleMicrotask=!1;var syncTransitionLanes=0;0!==currentEventTransitionLane&&(syncTransitionLanes=shouldAttemptEagerTransition()?currentEventTransitionLane:32);for(var currentTime=now(),prev=null,root=firstScheduledRoot;null!==root;){var next=root.next,nextLanes=scheduleTaskForRootDuringMicrotask(root,currentTime);if(0===nextLanes)root.next=null,null===prev?firstScheduledRoot=next:prev.next=next,null===next&&(lastScheduledRoot=prev);else if(prev=root,0!==syncTransitionLanes||0!==(nextLanes&3)||64===nextLanes)mightHavePendingSyncWork=!0;root=next;}0!==pendingEffectsStatus&&5!==pendingEffectsStatus||flushSyncWorkAcrossRoots_impl(syncTransitionLanes,!1);if(0!==currentEventTransitionLane){currentEventTransitionLane=0;if(needsIsomorphicIndicator&&null!=isomorphicDefaultTransitionIndicator&&null===pendingIsomorphicIndicator)try{pendingIsomorphicIndicator=isomorphicDefaultTransitionIndicator()||noop$1;}catch(x){pendingIsomorphicIndicator=noop$1,reportGlobalError(x);}for(syncTransitionLanes=firstScheduledRoot;null!==syncTransitionLanes;){if(0!==syncTransitionLanes.indicatorLanes&&null===syncTransitionLanes.pendingIndicator)if(null!==pendingIsomorphicIndicator)currentTime=syncTransitionLanes,pendingEntangledRoots++,currentTime.pendingIndicator=releaseIsomorphicIndicator;else try{var onDefaultTransitionIndicator=syncTransitionLanes.onDefaultTransitionIndicator;syncTransitionLanes.pendingIndicator=onDefaultTransitionIndicator()||noop$1;}catch(x){syncTransitionLanes.pendingIndicator=noop$1,reportGlobalError(x);}syncTransitionLanes=syncTransitionLanes.next;}}}function scheduleTaskForRootDuringMicrotask(root,currentTime){for(var suspendedLanes=root.suspendedLanes,pingedLanes=root.pingedLanes,expirationTimes=root.expirationTimes,lanes=root.pendingLanes&-62914561;0rangeEnd;timeline instanceof AnimationTimeline?targetElement.animate(keyframes,{pseudoElement:pseudoElement,timeline:timeline,easing:"linear",fill:"both",direction:width?"normal":"reverse",rangeStart:(width?rangeEnd:rangeStart)+"%",rangeEnd:(width?rangeStart:rangeEnd)+"%"}):(keyframes=targetElement.animate(keyframes,{pseudoElement:pseudoElement,easing:"linear",fill:"both",direction:width?"normal":"reverse",delay:width?rangeEnd:rangeStart,duration:width?rangeStart-rangeEnd:rangeEnd-rangeStart}),(timeline=timeline.animate(keyframes))&&customTimelineCleanup.push(timeline));}function startGestureTransition(rootContainer,timeline,rangeStart,rangeEnd,transitionTypes,mutationCallback,animateCallback,errorCallback){var ownerDocument=9===rootContainer.nodeType?rootContainer:rootContainer.ownerDocument;try{forceLayout(ownerDocument);var transition=ownerDocument.startViewTransition({update:mutationCallback,types:transitionTypes});ownerDocument.__reactViewTransition=transition;var customTimelineCleanup=[],readyCallback=function(){for(var documentElement=ownerDocument.documentElement,animations=documentElement.getAnimations({subtree:!0}),foundGroups=new Set(),foundNews=new Set(),longestDuration=0,i=0;ilongestDuration&&(longestDuration=effect),pseudoElement.startsWith("::view-transition-group")?foundGroups.add(pseudoElement.slice(23)):pseudoElement.startsWith("::view-transition-new")&&foundNews.add(pseudoElement.slice(21)));}longestDuration=(rangeEnd-rangeStart)/longestDuration;for(i=0;i title"):null);}function isHostHoistableType(type,props,hostContext){if(1===hostContext||null!=props.itemProp)return!1;switch(type){case"meta":case"title":return!0;case"style":if("string"!==typeof props.precedence||"string"!==typeof props.href||""===props.href)break;return!0;case"link":if("string"!==typeof props.rel||"string"!==typeof props.href||""===props.href||props.onLoad||props.onError)break;switch(props.rel){case"stylesheet":return type=props.disabled,"string"===typeof props.precedence&&null==type;default:return!0;}case"script":if(props.async&&"function"!==typeof props.async&&"symbol"!==typeof props.async&&!props.onLoad&&!props.onError&&props.src&&"string"===typeof props.src)return!0;}return!1;}function maySuspendCommit(type,props){return"img"===type&&null!=props.src&&""!==props.src&&null==props.onLoad&&"lazy"!==props.loading;}function preloadResource(resource){return"stylesheet"===resource.type&&0===(resource.state.loading&3)?!1:!0;}var suspendedState=null;function suspendInstance(instance){if(null===suspendedState)throw Error(formatProdErrorMessage(475));var state=suspendedState;"function"===typeof instance.decode&&"function"===typeof setTimeout&&(state.count++,state=onUnsuspend.bind(state),Promise.race([instance.decode(),new Promise(function(resolve){return setTimeout(resolve,500);})]).then(state,state));}function suspendResource(hoistableRoot,resource,props){if(null===suspendedState)throw Error(formatProdErrorMessage(475));var state=suspendedState;if("stylesheet"===resource.type&&("string"!==typeof props.media||!1!==matchMedia(props.media).matches)&&0===(resource.state.loading&4)){if(null===resource.instance){var key=getStyleKey(props.href),instance=hoistableRoot.querySelector(getStylesheetSelectorFromKey(key));if(instance){hoistableRoot=instance._p;null!==hoistableRoot&&"object"===typeof hoistableRoot&&"function"===typeof hoistableRoot.then&&(state.count++,state=onUnsuspend.bind(state),hoistableRoot.then(state,state));resource.state.loading|=4;resource.instance=instance;markNodeAsHoistable(instance);return;}instance=hoistableRoot.ownerDocument||hoistableRoot;props=stylesheetPropsFromRawProps(props);(key=preloadPropsMap.get(key))&&adoptPreloadPropsForStylesheet(props,key);instance=instance.createElement("link");markNodeAsHoistable(instance);var linkInstance=instance;linkInstance._p=new Promise(function(resolve,reject){linkInstance.onload=resolve;linkInstance.onerror=reject;});setInitialProperties(instance,"link",props);resource.instance=instance;}null===state.stylesheets&&(state.stylesheets=new Map());state.stylesheets.set(resource,hoistableRoot);(hoistableRoot=resource.state.preload)&&0===(resource.state.loading&3)&&(state.count++,resource=onUnsuspend.bind(state),hoistableRoot.addEventListener("load",resource),hoistableRoot.addEventListener("error",resource));}}function waitForCommitToBeReady(){if(null===suspendedState)throw Error(formatProdErrorMessage(475));var state=suspendedState;state.stylesheets&&0===state.count&&insertSuspendedStylesheets(state,state.stylesheets);return 0index||(cursor.current=valueStack[index],valueStack[index]=null,index--);}function push(cursor,value){index++;valueStack[index]=cursor.current;cursor.current=value;}var contextStackCursor=createCursor(null),contextFiberStackCursor=createCursor(null),rootInstanceStackCursor=createCursor(null),hostTransitionProviderCursor=createCursor(null);function pushHostContainer(fiber,nextRootInstance){push(rootInstanceStackCursor,nextRootInstance);push(contextFiberStackCursor,fiber);push(contextStackCursor,null);switch(nextRootInstance.nodeType){case 9:case 11:fiber=(fiber=nextRootInstance.documentElement)?(fiber=fiber.namespaceURI)?getOwnHostContext(fiber):0:0;break;default:if(fiber=nextRootInstance.tagName,nextRootInstance=nextRootInstance.namespaceURI)nextRootInstance=getOwnHostContext(nextRootInstance),fiber=getChildHostContextProd(nextRootInstance,fiber);else switch(fiber){case"svg":fiber=1;break;case"math":fiber=2;break;default:fiber=0;}}pop(contextStackCursor);push(contextStackCursor,fiber);}function popHostContainer(){pop(contextStackCursor);pop(contextFiberStackCursor);pop(rootInstanceStackCursor);}function pushHostContext(fiber){var stateHook=fiber.memoizedState;null!==stateHook&&(HostTransitionContext._currentValue=stateHook.memoizedState,push(hostTransitionProviderCursor,fiber));stateHook=contextStackCursor.current;var JSCompiler_inline_result=getChildHostContextProd(stateHook,fiber.type);stateHook!==JSCompiler_inline_result&&(push(contextFiberStackCursor,fiber),push(contextStackCursor,JSCompiler_inline_result));}function popHostContext(fiber){contextFiberStackCursor.current===fiber&&(pop(contextStackCursor),pop(contextFiberStackCursor));hostTransitionProviderCursor.current===fiber&&(pop(hostTransitionProviderCursor),HostTransitionContext._currentValue=sharedNotPendingObject);}var prefix,suffix;function describeBuiltInComponentFrame(name){if(void 0===prefix)try{throw Error();}catch(x){var match=x.stack.trim().match(/\n( *(at )?)/);prefix=match&&match[1]||"";suffix=-1)":-1namePropDescriptor||sampleLines[RunInRootFrame]!==controlLines[namePropDescriptor]){var frame="\n"+sampleLines[RunInRootFrame].replace(" at new "," at ");fn.displayName&&frame.includes("")&&(frame=frame.replace("",fn.displayName));return frame;}while(1<=RunInRootFrame&&0<=namePropDescriptor);}break;}}}finally{reentry=!1,Error.prepareStackTrace=previousPrepareStackTrace;}return(previousPrepareStackTrace=fn?fn.displayName||fn.name:"")?describeBuiltInComponentFrame(previousPrepareStackTrace):"";}function describeFiber(fiber,childFiber){switch(fiber.tag){case 26:case 27:case 5:return describeBuiltInComponentFrame(fiber.type);case 16:return describeBuiltInComponentFrame("Lazy");case 13:return fiber.child!==childFiber&&null!==childFiber?describeBuiltInComponentFrame("Suspense Fallback"):describeBuiltInComponentFrame("Suspense");case 19:return describeBuiltInComponentFrame("SuspenseList");case 0:case 15:return describeNativeComponentFrame(fiber.type,!1);case 11:return describeNativeComponentFrame(fiber.type.render,!1);case 1:return describeNativeComponentFrame(fiber.type,!0);case 31:return describeBuiltInComponentFrame("Activity");case 30:return describeBuiltInComponentFrame("ViewTransition");default:return"";}}function getStackByFiberInDevAndProd(workInProgress){try{var info="",previous=null;do info+=describeFiber(workInProgress,previous),previous=workInProgress,workInProgress=workInProgress.return;while(workInProgress);return info;}catch(x){return"\nError generating stack: "+x.message+"\n"+x.stack;}}var hasOwnProperty=Object.prototype.hasOwnProperty,scheduleCallback$3=Scheduler.unstable_scheduleCallback,cancelCallback$1=Scheduler.unstable_cancelCallback,shouldYield=Scheduler.unstable_shouldYield,requestPaint=Scheduler.unstable_requestPaint,now=Scheduler.unstable_now,getCurrentPriorityLevel=Scheduler.unstable_getCurrentPriorityLevel,ImmediatePriority=Scheduler.unstable_ImmediatePriority,UserBlockingPriority=Scheduler.unstable_UserBlockingPriority,NormalPriority$1=Scheduler.unstable_NormalPriority,LowPriority=Scheduler.unstable_LowPriority,IdlePriority=Scheduler.unstable_IdlePriority,log$1=Scheduler.log,unstable_setDisableYieldValue=Scheduler.unstable_setDisableYieldValue,rendererID=null,injectedHook=null;function setIsStrictModeForDevtools(newIsStrictMode){"function"===typeof log$1&&unstable_setDisableYieldValue(newIsStrictMode);if(injectedHook&&"function"===typeof injectedHook.setStrictMode)try{injectedHook.setStrictMode(rendererID,newIsStrictMode);}catch(err){}}var clz32=Math.clz32?Math.clz32:clz32Fallback,log=Math.log,LN2=Math.LN2;function clz32Fallback(x){x>>>=0;return 0===x?32:31-(log(x)/LN2|0)|0;}var nextTransitionUpdateLane=256,nextTransitionDeferredLane=262144,nextRetryLane=4194304;function getHighestPriorityLanes(lanes){var pendingSyncLanes=lanes&42;if(0!==pendingSyncLanes)return pendingSyncLanes;switch(lanes&-lanes){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return lanes&-lanes;case 262144:case 524288:case 1048576:case 2097152:return lanes&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return lanes&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return lanes;}}function getNextLanes(root,wipLanes,rootHasPendingCommit){var pendingLanes=root.pendingLanes;if(0===pendingLanes)return 0;var nextLanes=0,suspendedLanes=root.suspendedLanes,pingedLanes=root.pingedLanes;root=root.warmLanes;var nonIdlePendingLanes=pendingLanes&134217727;0!==nonIdlePendingLanes?(pendingLanes=nonIdlePendingLanes&~suspendedLanes,0!==pendingLanes?nextLanes=getHighestPriorityLanes(pendingLanes):(pingedLanes&=nonIdlePendingLanes,0!==pingedLanes?nextLanes=getHighestPriorityLanes(pingedLanes):rootHasPendingCommit||(rootHasPendingCommit=nonIdlePendingLanes&~root,0!==rootHasPendingCommit&&(nextLanes=getHighestPriorityLanes(rootHasPendingCommit))))):(nonIdlePendingLanes=pendingLanes&~suspendedLanes,0!==nonIdlePendingLanes?nextLanes=getHighestPriorityLanes(nonIdlePendingLanes):0!==pingedLanes?nextLanes=getHighestPriorityLanes(pingedLanes):rootHasPendingCommit||(rootHasPendingCommit=pendingLanes&~root,0!==rootHasPendingCommit&&(nextLanes=getHighestPriorityLanes(rootHasPendingCommit))));return 0===nextLanes?0:0!==wipLanes&&wipLanes!==nextLanes&&0===(wipLanes&suspendedLanes)&&(suspendedLanes=nextLanes&-nextLanes,rootHasPendingCommit=wipLanes&-wipLanes,suspendedLanes>=rootHasPendingCommit||32===suspendedLanes&&0!==(rootHasPendingCommit&4194048))?wipLanes:nextLanes;}function checkIfRootIsPrerendering(root,renderLanes){return 0===(root.pendingLanes&~(root.suspendedLanes&~root.pingedLanes)&renderLanes);}function getEntangledLanes(root,renderLanes){0!==(renderLanes&8)&&(renderLanes|=renderLanes&32);var allEntangledLanes=root.entangledLanes;if(0!==allEntangledLanes)for(root=root.entanglements,allEntangledLanes&=renderLanes;0i;i++)laneMap.push(initial);return laneMap;}function markRootUpdated$1(root,updateLane){root.pendingLanes|=updateLane;root.indicatorLanes|=updateLane&4194048;268435456!==updateLane&&(root.suspendedLanes=0,root.pingedLanes=0,root.warmLanes=0);}function markRootPinged$1(root,pingedLanes){root.pingedLanes|=root.suspendedLanes&pingedLanes;root.warmLanes&=~pingedLanes;}function markRootFinished(root,finishedLanes,remainingLanes,spawnedLane,updatedLanes,suspendedRetryLanes){var previouslyPendingLanes=root.pendingLanes;root.pendingLanes=remainingLanes;root.suspendedLanes=0;root.pingedLanes=0;root.warmLanes=0;root.indicatorLanes&=remainingLanes;root.expiredLanes&=remainingLanes;root.entangledLanes&=remainingLanes;root.errorRecoveryDisabledLanes&=remainingLanes;root.shellSuspendCounter=0;var entanglements=root.entanglements,expirationTimes=root.expirationTimes,hiddenUpdates=root.hiddenUpdates;for(remainingLanes=previouslyPendingLanes&~remainingLanes;0=documentMode),SPACEBAR_CHAR=String.fromCharCode(32),hasSpaceKeypress=!1;function isFallbackCompositionEnd(domEventName,nativeEvent){switch(domEventName){case"keyup":return-1!==END_KEYCODES.indexOf(nativeEvent.keyCode);case"keydown":return 229!==nativeEvent.keyCode;case"keypress":case"mousedown":case"focusout":return!0;default:return!1;}}function getDataFromCustomEvent(nativeEvent){nativeEvent=nativeEvent.detail;return"object"===typeof nativeEvent&&"data"in nativeEvent?nativeEvent.data:null;}var isComposing=!1;function getNativeBeforeInputChars(domEventName,nativeEvent){switch(domEventName){case"compositionend":return getDataFromCustomEvent(nativeEvent);case"keypress":if(32!==nativeEvent.which)return null;hasSpaceKeypress=!0;return SPACEBAR_CHAR;case"textInput":return domEventName=nativeEvent.data,domEventName===SPACEBAR_CHAR&&hasSpaceKeypress?null:domEventName;default:return null;}}function getFallbackBeforeInputChars(domEventName,nativeEvent){if(isComposing)return"compositionend"===domEventName||!canUseCompositionEvent&&isFallbackCompositionEnd(domEventName,nativeEvent)?(domEventName=getData(),fallbackText=startText=root=null,isComposing=!1,domEventName):null;switch(domEventName){case"paste":return null;case"keypress":if(!(nativeEvent.ctrlKey||nativeEvent.altKey||nativeEvent.metaKey)||nativeEvent.ctrlKey&&nativeEvent.altKey){if(nativeEvent.char&&1=offset)return{node:node,offset:offset-root};root=nodeEnd;}a:{for(;node;){if(node.nextSibling){node=node.nextSibling;break a;}node=node.parentNode;}node=void 0;}node=getLeafNode(node);}}function containsNode(outerNode,innerNode){return outerNode&&innerNode?outerNode===innerNode?!0:outerNode&&3===outerNode.nodeType?!1:innerNode&&3===innerNode.nodeType?containsNode(outerNode,innerNode.parentNode):"contains"in outerNode?outerNode.contains(innerNode):outerNode.compareDocumentPosition?!!(outerNode.compareDocumentPosition(innerNode)&16):!1:!1;}function getActiveElementDeep(containerInfo){containerInfo=null!=containerInfo&&null!=containerInfo.ownerDocument&&null!=containerInfo.ownerDocument.defaultView?containerInfo.ownerDocument.defaultView:window;for(var element=getActiveElement(containerInfo.document);element instanceof containerInfo.HTMLIFrameElement;){try{var JSCompiler_inline_result="string"===typeof element.contentWindow.location.href;}catch(err){JSCompiler_inline_result=!1;}if(JSCompiler_inline_result)containerInfo=element.contentWindow;else break;element=getActiveElement(containerInfo.document);}return element;}function hasSelectionCapabilities(elem){var nodeName=elem&&elem.nodeName&&elem.nodeName.toLowerCase();return nodeName&&("input"===nodeName&&("text"===elem.type||"search"===elem.type||"tel"===elem.type||"url"===elem.type||"password"===elem.type)||"textarea"===nodeName||"true"===elem.contentEditable);}var skipSelectionChangeEvent=canUseDOM&&"documentMode"in document&&11>=document.documentMode,activeElement=null,activeElementInst=null,lastSelection=null,mouseDown=!1;function constructSelectEvent(dispatchQueue,nativeEvent,nativeEventTarget){var doc=nativeEventTarget.window===nativeEventTarget?nativeEventTarget.document:9===nativeEventTarget.nodeType?nativeEventTarget:nativeEventTarget.ownerDocument;mouseDown||null==activeElement||activeElement!==getActiveElement(doc)||(doc=activeElement,"selectionStart"in doc&&hasSelectionCapabilities(doc)?doc={start:doc.selectionStart,end:doc.selectionEnd}:(doc=(doc.ownerDocument&&doc.ownerDocument.defaultView||window).getSelection(),doc={anchorNode:doc.anchorNode,anchorOffset:doc.anchorOffset,focusNode:doc.focusNode,focusOffset:doc.focusOffset}),lastSelection&&shallowEqual(lastSelection,doc)||(lastSelection=doc,doc=accumulateTwoPhaseListeners(activeElementInst,"onSelect"),0>=numberOfOverflowBits;baseLength-=numberOfOverflowBits;treeContextId=1<<32-clz32(totalChildren)+baseLength|index<rangeStart?100:0;for(root=root.pendingGestures;null!==root;){if(root.provider===gestureTimeline){root.count++;root.rangeStart=rangeStart;root.rangeEnd=gestureOptions;if(null!==transitionTypes)for(gestureTimeline=root.types,null===gestureTimeline&&(gestureTimeline=root.types=[]),rangeStart=0;rangeStartrangeStart+(rangeEnd-rangeStart)/2:finalOffsetnewIdx?(nextOldFiber=oldFiber,oldFiber=null):nextOldFiber=oldFiber.sibling;var newFiber=updateSlot(returnFiber,oldFiber,newChildren[newIdx],lanes);if(null===newFiber){null===oldFiber&&(oldFiber=nextOldFiber);break;}shouldTrackSideEffects&&oldFiber&&null===newFiber.alternate&&deleteChild(returnFiber,oldFiber);currentFirstChild=placeChild(newFiber,currentFirstChild,newIdx);null===previousNewFiber?resultingFirstChild=newFiber:previousNewFiber.sibling=newFiber;previousNewFiber=newFiber;oldFiber=nextOldFiber;}if(newIdx===newChildren.length)return deleteRemainingChildren(returnFiber,oldFiber),isHydrating&&pushTreeFork(returnFiber,newIdx),resultingFirstChild;if(null===oldFiber){for(;newIdxnewIdx?(nextOldFiber=oldFiber,oldFiber=null):nextOldFiber=oldFiber.sibling;var newFiber=updateSlot(returnFiber,oldFiber,step.value,lanes);if(null===newFiber){null===oldFiber&&(oldFiber=nextOldFiber);break;}shouldTrackSideEffects&&oldFiber&&null===newFiber.alternate&&deleteChild(returnFiber,oldFiber);currentFirstChild=placeChild(newFiber,currentFirstChild,newIdx);null===previousNewFiber?resultingFirstChild=newFiber:previousNewFiber.sibling=newFiber;previousNewFiber=newFiber;oldFiber=nextOldFiber;}if(step.done)return deleteRemainingChildren(returnFiber,oldFiber),isHydrating&&pushTreeFork(returnFiber,newIdx),resultingFirstChild;if(null===oldFiber){for(;!step.done;newIdx++,step=newChildren.next())step=createChild(returnFiber,step.value,lanes),null!==step&&(currentFirstChild=placeChild(step,currentFirstChild,newIdx),null===previousNewFiber?resultingFirstChild=step:previousNewFiber.sibling=step,previousNewFiber=step);isHydrating&&pushTreeFork(returnFiber,newIdx);return resultingFirstChild;}for(oldFiber=mapRemainingChildren(oldFiber);!step.done;newIdx++,step=newChildren.next())step=updateFromMap(oldFiber,returnFiber,newIdx,step.value,lanes),null!==step&&(shouldTrackSideEffects&&(nextOldFiber=step.alternate,null!==nextOldFiber&&(nextOldFiber.key===REACT_OPTIMISTIC_KEY?oldFiber.delete(-newIdx-1):oldFiber.delete(null===nextOldFiber.key?newIdx:nextOldFiber.key))),currentFirstChild=placeChild(step,currentFirstChild,newIdx),null===previousNewFiber?resultingFirstChild=step:previousNewFiber.sibling=step,previousNewFiber=step);shouldTrackSideEffects&&oldFiber.forEach(function(child){return deleteChild(returnFiber,child);});isHydrating&&pushTreeFork(returnFiber,newIdx);return resultingFirstChild;}function reconcileChildFibersImpl(returnFiber,currentFirstChild,newChild,lanes){"object"===typeof newChild&&null!==newChild&&newChild.type===REACT_FRAGMENT_TYPE&&null===newChild.key&&void 0===newChild.props.ref&&(newChild=newChild.props.children);if("object"===typeof newChild&&null!==newChild){switch(newChild.$$typeof){case REACT_ELEMENT_TYPE:a:{for(var key=newChild.key;null!==currentFirstChild;){if(currentFirstChild.key===key||currentFirstChild.key===REACT_OPTIMISTIC_KEY){var elementType=newChild.type;if(elementType===REACT_FRAGMENT_TYPE){if(7===currentFirstChild.tag){deleteRemainingChildren(returnFiber,currentFirstChild.sibling);lanes=useFiber(currentFirstChild,newChild.props.children);lanes.key=key;coerceRef(lanes,newChild);lanes.return=returnFiber;returnFiber=lanes;break a;}}else if(currentFirstChild.elementType===elementType||"object"===typeof elementType&&null!==elementType&&elementType.$$typeof===REACT_LAZY_TYPE&&resolveLazy(elementType)===currentFirstChild.type){deleteRemainingChildren(returnFiber,currentFirstChild.sibling);lanes=useFiber(currentFirstChild,newChild.props);lanes.key=key;coerceRef(lanes,newChild);lanes.return=returnFiber;returnFiber=lanes;break a;}deleteRemainingChildren(returnFiber,currentFirstChild);break;}else deleteChild(returnFiber,currentFirstChild);currentFirstChild=currentFirstChild.sibling;}newChild.type===REACT_FRAGMENT_TYPE?(lanes=createFiberFromFragment(newChild.props.children,returnFiber.mode,lanes,newChild.key),coerceRef(lanes,newChild),lanes.return=returnFiber,returnFiber=lanes):(lanes=createFiberFromTypeAndProps(newChild.type,newChild.key,newChild.props,null,returnFiber.mode,lanes),coerceRef(lanes,newChild),lanes.return=returnFiber,returnFiber=lanes);}return placeSingleChild(returnFiber);case REACT_PORTAL_TYPE:a:{key=newChild;for(newChild=key.key;null!==currentFirstChild;){if(currentFirstChild.key===newChild||currentFirstChild.key===REACT_OPTIMISTIC_KEY){if(4===currentFirstChild.tag&¤tFirstChild.stateNode.containerInfo===key.containerInfo&¤tFirstChild.stateNode.implementation===key.implementation){deleteRemainingChildren(returnFiber,currentFirstChild.sibling);lanes=useFiber(currentFirstChild,key.children||[]);lanes.key=newChild;lanes.return=returnFiber;returnFiber=lanes;break a;}else{deleteRemainingChildren(returnFiber,currentFirstChild);break;}}else deleteChild(returnFiber,currentFirstChild);currentFirstChild=currentFirstChild.sibling;}lanes=createFiberFromPortal(key,returnFiber.mode,lanes);lanes.return=returnFiber;returnFiber=lanes;}return placeSingleChild(returnFiber);case REACT_LAZY_TYPE:return newChild=resolveLazy(newChild),reconcileChildFibersImpl(returnFiber,currentFirstChild,newChild,lanes);}if(isArrayImpl(newChild))return reconcileChildrenArray(returnFiber,currentFirstChild,newChild,lanes);if(getIteratorFn(newChild)){key=getIteratorFn(newChild);if("function"!==typeof key)throw Error(formatProdErrorMessage(150));newChild=key.call(newChild);return reconcileChildrenIterator(returnFiber,currentFirstChild,newChild,lanes);}if("function"===typeof newChild[ASYNC_ITERATOR])return reconcileChildrenAsyncIteratable(returnFiber,currentFirstChild,newChild,lanes);if("function"===typeof newChild.then)return reconcileChildFibersImpl(returnFiber,currentFirstChild,unwrapThenable(newChild),lanes);if(newChild.$$typeof===REACT_CONTEXT_TYPE)return reconcileChildFibersImpl(returnFiber,currentFirstChild,readContextDuringReconciliation(returnFiber,newChild),lanes);throwOnInvalidObjectTypeImpl(returnFiber,newChild);}return"string"===typeof newChild&&""!==newChild||"number"===typeof newChild||"bigint"===typeof newChild?(newChild=""+newChild,null!==currentFirstChild&&6===currentFirstChild.tag?(deleteRemainingChildren(returnFiber,currentFirstChild.sibling),lanes=useFiber(currentFirstChild,newChild),lanes.return=returnFiber,returnFiber=lanes):(deleteRemainingChildren(returnFiber,currentFirstChild),lanes=createFiberFromText(newChild,returnFiber.mode,lanes),lanes.return=returnFiber,returnFiber=lanes),placeSingleChild(returnFiber)):deleteRemainingChildren(returnFiber,currentFirstChild);}return function(returnFiber,currentFirstChild,newChild,lanes){try{thenableIndexCounter$1=0;var firstChildFiber=reconcileChildFibersImpl(returnFiber,currentFirstChild,newChild,lanes);thenableState$1=null;return firstChildFiber;}catch(x){if(x===SuspenseException||x===SuspenseActionException)throw x;var fiber=createFiberImplClass(29,x,null,returnFiber.mode);fiber.lanes=lanes;fiber.return=returnFiber;return fiber;}finally{}};}var reconcileChildFibers=createChildReconciler(!0),mountChildFibers=createChildReconciler(!1),hasForceUpdate=!1;function initializeUpdateQueue(fiber){fiber.updateQueue={baseState:fiber.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null};}function cloneUpdateQueue(current,workInProgress){current=current.updateQueue;workInProgress.updateQueue===current&&(workInProgress.updateQueue={baseState:current.baseState,firstBaseUpdate:current.firstBaseUpdate,lastBaseUpdate:current.lastBaseUpdate,shared:current.shared,callbacks:null});}function createUpdate(lane){return{lane:lane,tag:0,payload:null,callback:null,next:null};}function enqueueUpdate(fiber,update,lane){var updateQueue=fiber.updateQueue;if(null===updateQueue)return null;updateQueue=updateQueue.shared;if(0!==(executionContext&2)){var pending=updateQueue.pending;null===pending?update.next=update:(update.next=pending.next,pending.next=update);updateQueue.pending=update;update=getRootForUpdatedFiber(fiber);markUpdateLaneFromFiberToRoot(fiber,null,lane);return update;}enqueueUpdate$1(fiber,updateQueue,update,lane);return getRootForUpdatedFiber(fiber);}function entangleTransitions(root,fiber,lane){fiber=fiber.updateQueue;if(null!==fiber&&(fiber=fiber.shared,0!==(lane&4194048))){var queueLanes=fiber.lanes;queueLanes&=root.pendingLanes;lane|=queueLanes;fiber.lanes=lane;markRootEntangled(root,lane);}}function enqueueCapturedUpdate(workInProgress,capturedUpdate){var queue=workInProgress.updateQueue,current=workInProgress.alternate;if(null!==current&&(current=current.updateQueue,queue===current)){var newFirst=null,newLast=null;queue=queue.firstBaseUpdate;if(null!==queue){do{var clone={lane:queue.lane,tag:queue.tag,payload:queue.payload,callback:null,next:null};null===newLast?newFirst=newLast=clone:newLast=newLast.next=clone;queue=queue.next;}while(null!==queue);null===newLast?newFirst=newLast=capturedUpdate:newLast=newLast.next=capturedUpdate;}else newFirst=newLast=capturedUpdate;queue={baseState:current.baseState,firstBaseUpdate:newFirst,lastBaseUpdate:newLast,shared:current.shared,callbacks:current.callbacks};workInProgress.updateQueue=queue;return;}workInProgress=queue.lastBaseUpdate;null===workInProgress?queue.firstBaseUpdate=capturedUpdate:workInProgress.next=capturedUpdate;queue.lastBaseUpdate=capturedUpdate;}var didReadFromEntangledAsyncAction=!1;function suspendIfUpdateReadFromEntangledAsyncAction(){if(didReadFromEntangledAsyncAction){var entangledActionThenable=currentEntangledActionThenable;if(null!==entangledActionThenable)throw entangledActionThenable;}}function processUpdateQueue(workInProgress$jscomp$0,props,instance$jscomp$0,renderLanes){didReadFromEntangledAsyncAction=!1;var queue=workInProgress$jscomp$0.updateQueue;hasForceUpdate=!1;var firstBaseUpdate=queue.firstBaseUpdate,lastBaseUpdate=queue.lastBaseUpdate,pendingQueue=queue.shared.pending;if(null!==pendingQueue){queue.shared.pending=null;var lastPendingUpdate=pendingQueue,firstPendingUpdate=lastPendingUpdate.next;lastPendingUpdate.next=null;null===lastBaseUpdate?firstBaseUpdate=firstPendingUpdate:lastBaseUpdate.next=firstPendingUpdate;lastBaseUpdate=lastPendingUpdate;var current=workInProgress$jscomp$0.alternate;null!==current&&(current=current.updateQueue,pendingQueue=current.lastBaseUpdate,pendingQueue!==lastBaseUpdate&&(null===pendingQueue?current.firstBaseUpdate=firstPendingUpdate:pendingQueue.next=firstPendingUpdate,current.lastBaseUpdate=lastPendingUpdate));}if(null!==firstBaseUpdate){var newState=queue.baseState;lastBaseUpdate=0;current=firstPendingUpdate=lastPendingUpdate=null;pendingQueue=firstBaseUpdate;do{var updateLane=pendingQueue.lane&-536870913,isHiddenUpdate=updateLane!==pendingQueue.lane;if(isHiddenUpdate?(workInProgressRootRenderLanes&updateLane)===updateLane:(renderLanes&updateLane)===updateLane){0!==updateLane&&updateLane===currentEntangledLane&&(didReadFromEntangledAsyncAction=!0);null!==current&&(current=current.next={lane:0,tag:pendingQueue.tag,payload:pendingQueue.payload,callback:null,next:null});a:{var workInProgress=workInProgress$jscomp$0,update=pendingQueue;updateLane=props;var instance=instance$jscomp$0;switch(update.tag){case 1:workInProgress=update.payload;if("function"===typeof workInProgress){newState=workInProgress.call(instance,newState,updateLane);break a;}newState=workInProgress;break a;case 3:workInProgress.flags=workInProgress.flags&-65537|128;case 0:workInProgress=update.payload;updateLane="function"===typeof workInProgress?workInProgress.call(instance,newState,updateLane):workInProgress;if(null===updateLane||void 0===updateLane)break a;newState=assign({},newState,updateLane);break a;case 2:hasForceUpdate=!0;}}updateLane=pendingQueue.callback;null!==updateLane&&(workInProgress$jscomp$0.flags|=64,isHiddenUpdate&&(workInProgress$jscomp$0.flags|=8192),isHiddenUpdate=queue.callbacks,null===isHiddenUpdate?queue.callbacks=[updateLane]:isHiddenUpdate.push(updateLane));}else isHiddenUpdate={lane:updateLane,tag:pendingQueue.tag,payload:pendingQueue.payload,callback:pendingQueue.callback,next:null},null===current?(firstPendingUpdate=current=isHiddenUpdate,lastPendingUpdate=newState):current=current.next=isHiddenUpdate,lastBaseUpdate|=updateLane;pendingQueue=pendingQueue.next;if(null===pendingQueue)if(pendingQueue=queue.shared.pending,null===pendingQueue)break;else isHiddenUpdate=pendingQueue,pendingQueue=isHiddenUpdate.next,isHiddenUpdate.next=null,queue.lastBaseUpdate=isHiddenUpdate,queue.shared.pending=null;}while(1);null===current&&(lastPendingUpdate=newState);queue.baseState=lastPendingUpdate;queue.firstBaseUpdate=firstPendingUpdate;queue.lastBaseUpdate=current;null===firstBaseUpdate&&(queue.shared.lanes=0);workInProgressRootSkippedLanes|=lastBaseUpdate;workInProgress$jscomp$0.lanes=lastBaseUpdate;workInProgress$jscomp$0.memoizedState=newState;}}function callCallback(callback,context){if("function"!==typeof callback)throw Error(formatProdErrorMessage(191,callback));callback.call(context);}function commitCallbacks(updateQueue,context){var callbacks=updateQueue.callbacks;if(null!==callbacks)for(updateQueue.callbacks=null,updateQueue=0;updateQueuepreviousPriority?previousPriority:8;var prevTransition=ReactSharedInternals.T,currentTransition={};currentTransition.types=null!==prevTransition?prevTransition.types:null;currentTransition.gesture=null;ReactSharedInternals.T=currentTransition;dispatchOptimisticSetState(fiber,!1,queue,pendingState);try{var returnValue=callback(),onStartTransitionFinish=ReactSharedInternals.S;null!==onStartTransitionFinish&&onStartTransitionFinish(currentTransition,returnValue);if(null!==returnValue&&"object"===typeof returnValue&&"function"===typeof returnValue.then){var thenableForFinishedState=chainThenableValue(returnValue,finishedState);dispatchSetStateInternal(fiber,queue,thenableForFinishedState,requestUpdateLane(fiber));}else dispatchSetStateInternal(fiber,queue,finishedState,requestUpdateLane(fiber));}catch(error){dispatchSetStateInternal(fiber,queue,{then:function(){},status:"rejected",reason:error},requestUpdateLane());}finally{ReactDOMSharedInternals.p=previousPriority,null!==prevTransition&&null!==currentTransition.types&&(prevTransition.types=currentTransition.types),ReactSharedInternals.T=prevTransition;}}function noop(){}function startHostTransition(formFiber,pendingState,action,formData){if(5!==formFiber.tag)throw Error(formatProdErrorMessage(476));var queue=ensureFormComponentIsStateful(formFiber).queue;startTransition(formFiber,queue,pendingState,sharedNotPendingObject,null===action?noop:function(){requestFormReset$1(formFiber);return action(formData);});}function ensureFormComponentIsStateful(formFiber){var existingStateHook=formFiber.memoizedState;if(null!==existingStateHook)return existingStateHook;existingStateHook={memoizedState:sharedNotPendingObject,baseState:sharedNotPendingObject,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:basicStateReducer,lastRenderedState:sharedNotPendingObject},next:null};var initialResetState={};existingStateHook.next={memoizedState:initialResetState,baseState:initialResetState,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:basicStateReducer,lastRenderedState:initialResetState},next:null};formFiber.memoizedState=existingStateHook;formFiber=formFiber.alternate;null!==formFiber&&(formFiber.memoizedState=existingStateHook);return existingStateHook;}function requestFormReset$1(formFiber){var transition=ReactSharedInternals.T;if(null!==transition&&transition.gesture)throw Error(formatProdErrorMessage(555));transition=ensureFormComponentIsStateful(formFiber);null===transition.next&&(transition=formFiber.alternate.memoizedState);dispatchSetStateInternal(formFiber,transition.next.queue,{},requestUpdateLane());}function useHostTransitionStatus(){return readContext(HostTransitionContext);}function updateId(){return updateWorkInProgressHook().memoizedState;}function updateRefresh(){return updateWorkInProgressHook().memoizedState;}function refreshCache(fiber,seedKey,seedValue){for(var provider=fiber.return;null!==provider;){switch(provider.tag){case 24:case 3:var lane=requestUpdateLane();fiber=createUpdate(lane);var root$79=enqueueUpdate(provider,fiber,lane);null!==root$79&&(scheduleUpdateOnFiber(root$79,provider,lane),entangleTransitions(root$79,provider,lane));provider=createCache();null!==seedKey&&void 0!==seedKey&&null!==root$79&&provider.data.set(seedKey,seedValue);fiber.payload={cache:provider};return;}provider=provider.return;}}function dispatchReducerAction(fiber,queue,action){var lane=requestUpdateLane();action={lane:lane,revertLane:0,gesture:null,action:action,hasEagerState:!1,eagerState:null,next:null};isRenderPhaseUpdate(fiber)?enqueueRenderPhaseUpdate(queue,action):(action=enqueueConcurrentHookUpdate(fiber,queue,action,lane),null!==action&&(scheduleUpdateOnFiber(action,fiber,lane),entangleTransitionUpdate(action,queue,lane)));}function dispatchSetState(fiber,queue,action){var lane=requestUpdateLane();dispatchSetStateInternal(fiber,queue,action,lane);}function dispatchSetStateInternal(fiber,queue,action,lane){var update={lane:lane,revertLane:0,gesture:null,action:action,hasEagerState:!1,eagerState:null,next:null};if(isRenderPhaseUpdate(fiber))enqueueRenderPhaseUpdate(queue,update);else{var alternate=fiber.alternate;if(0===fiber.lanes&&(null===alternate||0===alternate.lanes)&&(alternate=queue.lastRenderedReducer,null!==alternate))try{var currentState=queue.lastRenderedState,eagerState=alternate(currentState,action);update.hasEagerState=!0;update.eagerState=eagerState;if(objectIs(eagerState,currentState))return enqueueUpdate$1(fiber,queue,update,0),null===workInProgressRoot&&finishQueueingConcurrentUpdates(),!1;}catch(error){}finally{}action=enqueueConcurrentHookUpdate(fiber,queue,update,lane);if(null!==action)return scheduleUpdateOnFiber(action,fiber,lane),entangleTransitionUpdate(action,queue,lane),!0;}return!1;}function dispatchOptimisticSetState(fiber,throwIfDuringRender,queue,action){var transition=ReactSharedInternals.T,lane=null!==transition&&transition.gesture?64:2;action={lane:lane,revertLane:requestTransitionLane(),gesture:null,action:action,hasEagerState:!1,eagerState:null,next:null};if(isRenderPhaseUpdate(fiber)){if(throwIfDuringRender)throw Error(formatProdErrorMessage(479));}else if(throwIfDuringRender=enqueueConcurrentHookUpdate(fiber,queue,action,lane),null!==throwIfDuringRender&&(scheduleUpdateOnFiber(throwIfDuringRender,fiber,lane),null!==transition&&(transition=transition.gesture,null!==transition))){a:{for(fiber=throwIfDuringRender.pendingGestures;null!==fiber;){if(fiber.provider===transition){throwIfDuringRender=fiber;break a;}lane=fiber.next;if(null===lane)break;fiber=lane;}transition={provider:transition,count:0,rangeStart:0,rangeEnd:100,types:null,running:null,commit:null,committing:!1,revertLane:0,prev:fiber,next:null};null===fiber?throwIfDuringRender.pendingGestures=transition:fiber.next=transition;ensureRootIsScheduled(throwIfDuringRender);throwIfDuringRender=transition;}throwIfDuringRender=action.gesture=throwIfDuringRender;0===throwIfDuringRender.revertLane?throwIfDuringRender.revertLane=action.revertLane:action.revertLane=throwIfDuringRender.revertLane;}}function isRenderPhaseUpdate(fiber){var alternate=fiber.alternate;return fiber===currentlyRenderingFiber||null!==alternate&&alternate===currentlyRenderingFiber;}function enqueueRenderPhaseUpdate(queue,update){didScheduleRenderPhaseUpdateDuringThisPass=didScheduleRenderPhaseUpdate=!0;var pending=queue.pending;null===pending?update.next=update:(update.next=pending.next,pending.next=update);queue.pending=update;}function entangleTransitionUpdate(root,queue,lane){if(0!==(lane&4194048)){var queueLanes=queue.lanes;queueLanes&=root.pendingLanes;lane|=queueLanes;queue.lanes=lane;markRootEntangled(root,lane);}}var ContextOnlyDispatcher={readContext:readContext,use:use,useCallback:throwInvalidHookError,useContext:throwInvalidHookError,useEffect:throwInvalidHookError,useImperativeHandle:throwInvalidHookError,useLayoutEffect:throwInvalidHookError,useInsertionEffect:throwInvalidHookError,useMemo:throwInvalidHookError,useReducer:throwInvalidHookError,useRef:throwInvalidHookError,useState:throwInvalidHookError,useDebugValue:throwInvalidHookError,useDeferredValue:throwInvalidHookError,useTransition:throwInvalidHookError,useSyncExternalStore:throwInvalidHookError,useId:throwInvalidHookError,useHostTransitionStatus:throwInvalidHookError,useFormState:throwInvalidHookError,useActionState:throwInvalidHookError,useOptimistic:throwInvalidHookError,useMemoCache:throwInvalidHookError,useCacheRefresh:throwInvalidHookError,useEffectEvent:throwInvalidHookError},HooksDispatcherOnMount={readContext:readContext,use:use,useCallback:function(callback,deps){mountWorkInProgressHook().memoizedState=[callback,void 0===deps?null:deps];return callback;},useContext:readContext,useEffect:mountEffect,useImperativeHandle:function(ref,create,deps){deps=null!==deps&&void 0!==deps?deps.concat([ref]):null;mountEffectImpl(4194308,4,imperativeHandleEffect.bind(null,create,ref),deps);},useLayoutEffect:function(create,deps){return mountEffectImpl(4194308,4,create,deps);},useInsertionEffect:function(create,deps){mountEffectImpl(4,2,create,deps);},useMemo:function(nextCreate,deps){var hook=mountWorkInProgressHook();deps=void 0===deps?null:deps;var nextValue=nextCreate();if(shouldDoubleInvokeUserFnsInHooksDEV){setIsStrictModeForDevtools(!0);try{nextCreate();}finally{setIsStrictModeForDevtools(!1);}}hook.memoizedState=[nextValue,deps];return nextValue;},useReducer:function(reducer,initialArg,init){var hook=mountWorkInProgressHook();if(void 0!==init){var initialState=init(initialArg);if(shouldDoubleInvokeUserFnsInHooksDEV){setIsStrictModeForDevtools(!0);try{init(initialArg);}finally{setIsStrictModeForDevtools(!1);}}}else initialState=initialArg;hook.memoizedState=hook.baseState=initialState;reducer={pending:null,lanes:0,dispatch:null,lastRenderedReducer:reducer,lastRenderedState:initialState};hook.queue=reducer;reducer=reducer.dispatch=dispatchReducerAction.bind(null,currentlyRenderingFiber,reducer);return[hook.memoizedState,reducer];},useRef:function(initialValue){var hook=mountWorkInProgressHook();initialValue={current:initialValue};return hook.memoizedState=initialValue;},useState:function(initialState){initialState=mountStateImpl(initialState);var queue=initialState.queue,dispatch=dispatchSetState.bind(null,currentlyRenderingFiber,queue);queue.dispatch=dispatch;return[initialState.memoizedState,dispatch];},useDebugValue:mountDebugValue,useDeferredValue:function(value,initialValue){var hook=mountWorkInProgressHook();return mountDeferredValueImpl(hook,value,initialValue);},useTransition:function(){var stateHook=mountStateImpl(!1);stateHook=startTransition.bind(null,currentlyRenderingFiber,stateHook.queue,!0,!1);mountWorkInProgressHook().memoizedState=stateHook;return[!1,stateHook];},useSyncExternalStore:function(subscribe,getSnapshot,getServerSnapshot){var fiber=currentlyRenderingFiber,hook=mountWorkInProgressHook();if(isHydrating){if(void 0===getServerSnapshot)throw Error(formatProdErrorMessage(407));getServerSnapshot=getServerSnapshot();}else{getServerSnapshot=getSnapshot();if(null===workInProgressRoot)throw Error(formatProdErrorMessage(349));0!==(workInProgressRootRenderLanes&127)||pushStoreConsistencyCheck(fiber,getSnapshot,getServerSnapshot);}hook.memoizedState=getServerSnapshot;var inst={value:getServerSnapshot,getSnapshot:getSnapshot};hook.queue=inst;mountEffect(subscribeToStore.bind(null,fiber,inst,subscribe),[subscribe]);fiber.flags|=2048;pushSimpleEffect(9,{destroy:void 0},updateStoreInstance.bind(null,fiber,inst,getServerSnapshot,getSnapshot),null);return getServerSnapshot;},useId:function(){var hook=mountWorkInProgressHook(),identifierPrefix=workInProgressRoot.identifierPrefix;if(isHydrating){var JSCompiler_inline_result=treeContextOverflow;var idWithLeadingBit=treeContextId;JSCompiler_inline_result=(idWithLeadingBit&~(1<<32-clz32(idWithLeadingBit)-1)).toString(32)+JSCompiler_inline_result;identifierPrefix="_"+identifierPrefix+"R_"+JSCompiler_inline_result;JSCompiler_inline_result=localIdCounter++;0\x3c/script>";nextResource=nextResource.removeChild(nextResource.firstChild);break;case"select":nextResource="string"===typeof newProps.is?ownerDocument.createElement("select",{is:newProps.is}):ownerDocument.createElement("select");newProps.multiple?nextResource.multiple=!0:newProps.size&&(nextResource.size=newProps.size);break;default:nextResource="string"===typeof newProps.is?ownerDocument.createElement(type,{is:newProps.is}):ownerDocument.createElement(type);}}nextResource[internalInstanceKey]=workInProgress;nextResource[internalPropsKey]=newProps;a:for(ownerDocument=workInProgress.child;null!==ownerDocument;){if(5===ownerDocument.tag||6===ownerDocument.tag)nextResource.appendChild(ownerDocument.stateNode);else if(4!==ownerDocument.tag&&27!==ownerDocument.tag&&null!==ownerDocument.child){ownerDocument.child.return=ownerDocument;ownerDocument=ownerDocument.child;continue;}if(ownerDocument===workInProgress)break a;for(;null===ownerDocument.sibling;){if(null===ownerDocument.return||ownerDocument.return===workInProgress)break a;ownerDocument=ownerDocument.return;}ownerDocument.sibling.return=ownerDocument.return;ownerDocument=ownerDocument.sibling;}workInProgress.stateNode=nextResource;a:switch(setInitialProperties(nextResource,type,newProps),type){case"button":case"input":case"select":case"textarea":newProps=!!newProps.autoFocus;break a;case"img":newProps=!0;break a;default:newProps=!1;}newProps&&markUpdate(workInProgress);}}bubbleProperties(workInProgress);workInProgress.subtreeFlags&=-33554433;preloadInstanceAndSuspendIfNeeded(workInProgress,workInProgress.type,null===current?null:current.memoizedProps,workInProgress.pendingProps,renderLanes);return null;case 6:if(current&&null!=workInProgress.stateNode)current.memoizedProps!==newProps&&markUpdate(workInProgress);else{if("string"!==typeof newProps&&null===workInProgress.stateNode)throw Error(formatProdErrorMessage(166));current=rootInstanceStackCursor.current;if(popHydrationState(workInProgress)){current=workInProgress.stateNode;renderLanes=workInProgress.memoizedProps;newProps=null;type=hydrationParentFiber;if(null!==type)switch(type.tag){case 27:case 5:newProps=type.memoizedProps;}current[internalInstanceKey]=workInProgress;current=current.nodeValue===renderLanes||null!==newProps&&!0===newProps.suppressHydrationWarning||checkForUnmatchedText(current.nodeValue,renderLanes)?!0:!1;current||throwOnHydrationMismatch(workInProgress,!0);}else current=getOwnerDocumentFromRootContainer(current).createTextNode(newProps),current[internalInstanceKey]=workInProgress,workInProgress.stateNode=current;}bubbleProperties(workInProgress);return null;case 31:renderLanes=workInProgress.memoizedState;if(null===current||null!==current.memoizedState){newProps=popHydrationState(workInProgress);if(null!==renderLanes){if(null===current){if(!newProps)throw Error(formatProdErrorMessage(318));current=workInProgress.memoizedState;current=null!==current?current.dehydrated:null;if(!current)throw Error(formatProdErrorMessage(557));current[internalInstanceKey]=workInProgress;}else resetHydrationState(),0===(workInProgress.flags&128)&&(workInProgress.memoizedState=null),workInProgress.flags|=4;bubbleProperties(workInProgress);current=!1;}else renderLanes=upgradeHydrationErrorsToRecoverable(),null!==current&&null!==current.memoizedState&&(current.memoizedState.hydrationErrors=renderLanes),current=!0;if(!current){if(workInProgress.flags&256)return popSuspenseHandler(workInProgress),workInProgress;popSuspenseHandler(workInProgress);return null;}if(0!==(workInProgress.flags&128))throw Error(formatProdErrorMessage(558));}bubbleProperties(workInProgress);return null;case 13:newProps=workInProgress.memoizedState;if(null===current||null!==current.memoizedState&&null!==current.memoizedState.dehydrated){type=popHydrationState(workInProgress);if(null!==newProps&&null!==newProps.dehydrated){if(null===current){if(!type)throw Error(formatProdErrorMessage(318));type=workInProgress.memoizedState;type=null!==type?type.dehydrated:null;if(!type)throw Error(formatProdErrorMessage(317));type[internalInstanceKey]=workInProgress;}else resetHydrationState(),0===(workInProgress.flags&128)&&(workInProgress.memoizedState=null),workInProgress.flags|=4;bubbleProperties(workInProgress);type=!1;}else type=upgradeHydrationErrorsToRecoverable(),null!==current&&null!==current.memoizedState&&(current.memoizedState.hydrationErrors=type),type=!0;if(!type){if(workInProgress.flags&256)return popSuspenseHandler(workInProgress),workInProgress;popSuspenseHandler(workInProgress);return null;}}popSuspenseHandler(workInProgress);if(0!==(workInProgress.flags&128))return workInProgress.lanes=renderLanes,workInProgress;renderLanes=null!==newProps;current=null!==current&&null!==current.memoizedState;renderLanes&&(newProps=workInProgress.child,type=null,null!==newProps.alternate&&null!==newProps.alternate.memoizedState&&null!==newProps.alternate.memoizedState.cachePool&&(type=newProps.alternate.memoizedState.cachePool.pool),nextResource=null,null!==newProps.memoizedState&&null!==newProps.memoizedState.cachePool&&(nextResource=newProps.memoizedState.cachePool.pool),nextResource!==type&&(newProps.flags|=2048));renderLanes!==current&&renderLanes&&(workInProgress.child.flags|=8192);scheduleRetryEffect(workInProgress,workInProgress.updateQueue);bubbleProperties(workInProgress);return null;case 4:return popHostContainer(),null===current&&listenToAllSupportedEvents(workInProgress.stateNode.containerInfo),workInProgress.flags|=67108864,bubbleProperties(workInProgress),null;case 10:return popProvider(workInProgress.type),bubbleProperties(workInProgress),null;case 19:popSuspenseListContext(workInProgress);newProps=workInProgress.memoizedState;if(null===newProps)return bubbleProperties(workInProgress),null;type=0!==(workInProgress.flags&128);nextResource=newProps.rendering;if(null===nextResource){if(type)cutOffTailIfNeeded(newProps,!1);else{if(0!==workInProgressRootExitStatus||null!==current&&0!==(current.flags&128))for(current=workInProgress.child;null!==current;){nextResource=findFirstSuspended(current);if(null!==nextResource){workInProgress.flags|=128;cutOffTailIfNeeded(newProps,!1);current=nextResource.updateQueue;workInProgress.updateQueue=current;scheduleRetryEffect(workInProgress,current);workInProgress.subtreeFlags=0;current=renderLanes;for(renderLanes=workInProgress.child;null!==renderLanes;)resetWorkInProgress(renderLanes,current),renderLanes=renderLanes.sibling;pushSuspenseListContext(workInProgress,suspenseStackCursor.current&1|2);isHydrating&&pushTreeFork(workInProgress,newProps.treeForkCount);return workInProgress.child;}current=current.sibling;}null!==newProps.tail&&now()>workInProgressRootRenderTargetTime&&(workInProgress.flags|=128,type=!0,cutOffTailIfNeeded(newProps,!1),workInProgress.lanes=4194304);}}else{if(!type)if(current=findFirstSuspended(nextResource),null!==current){if(workInProgress.flags|=128,type=!0,current=current.updateQueue,workInProgress.updateQueue=current,scheduleRetryEffect(workInProgress,current),cutOffTailIfNeeded(newProps,!0),null===newProps.tail&&"collapsed"!==newProps.tailMode&&"visible"!==newProps.tailMode&&!nextResource.alternate&&!isHydrating)return bubbleProperties(workInProgress),null;}else 2*now()-newProps.renderingStartTime>workInProgressRootRenderTargetTime&&536870912!==renderLanes&&(workInProgress.flags|=128,type=!0,cutOffTailIfNeeded(newProps,!1),workInProgress.lanes=4194304);newProps.isBackwards?(nextResource.sibling=workInProgress.child,workInProgress.child=nextResource):(current=newProps.last,null!==current?current.sibling=nextResource:workInProgress.child=nextResource,newProps.last=nextResource);}if(null!==newProps.tail){current=newProps.tail;a:{for(renderLanes=current;null!==renderLanes;){if(null!==renderLanes.alternate){renderLanes=!1;break a;}renderLanes=renderLanes.sibling;}renderLanes=!0;}newProps.rendering=current;newProps.tail=current.sibling;newProps.renderingStartTime=now();current.sibling=null;nextResource=suspenseStackCursor.current;nextResource=type?nextResource&1|2:nextResource&1;"visible"===newProps.tailMode||"collapsed"===newProps.tailMode||!renderLanes||isHydrating?pushSuspenseListContext(workInProgress,nextResource):(renderLanes=nextResource,push(suspenseHandlerStackCursor,workInProgress),push(suspenseStackCursor,renderLanes),null===shellBoundary&&(shellBoundary=workInProgress));isHydrating&&pushTreeFork(workInProgress,newProps.treeForkCount);return current;}bubbleProperties(workInProgress);return null;case 22:case 23:return popSuspenseHandler(workInProgress),popHiddenContext(),newProps=null!==workInProgress.memoizedState,null!==current?null!==current.memoizedState!==newProps&&(workInProgress.flags|=8192):newProps&&(workInProgress.flags|=8192),newProps?0!==(renderLanes&536870912)&&0===(workInProgress.flags&128)&&(bubbleProperties(workInProgress),workInProgress.subtreeFlags&6&&(workInProgress.flags|=8192)):bubbleProperties(workInProgress),renderLanes=workInProgress.updateQueue,null!==renderLanes&&scheduleRetryEffect(workInProgress,renderLanes.retryQueue),renderLanes=null,null!==current&&null!==current.memoizedState&&null!==current.memoizedState.cachePool&&(renderLanes=current.memoizedState.cachePool.pool),newProps=null,null!==workInProgress.memoizedState&&null!==workInProgress.memoizedState.cachePool&&(newProps=workInProgress.memoizedState.cachePool.pool),newProps!==renderLanes&&(workInProgress.flags|=2048),null!==current&&pop(resumedCache),null;case 24:return renderLanes=null,null!==current&&(renderLanes=current.memoizedState.cache),workInProgress.memoizedState.cache!==renderLanes&&(workInProgress.flags|=2048),popProvider(CacheContext),bubbleProperties(workInProgress),null;case 25:return null;case 30:return workInProgress.flags|=33554432,current=workInProgress.pendingProps,workInProgress.flags=void 0!==current.parentEnter||void 0!==current.parentExit||null!=current.onParentEnter||null!=current.onParentExit||null!=current.onGestureParentEnter||null!=current.onGestureParentExit?workInProgress.flags|1073741824:workInProgress.flags&-1073741825,bubbleProperties(workInProgress),null;}throw Error(formatProdErrorMessage(156,workInProgress.tag));}function unwindWork(current,workInProgress){popTreeContext(workInProgress);switch(workInProgress.tag){case 1:return current=workInProgress.flags,current&65536?(workInProgress.flags=current&-65537|128,workInProgress):null;case 3:return popProvider(CacheContext),popHostContainer(),current=workInProgress.flags,0!==(current&65536)&&0===(current&128)?(workInProgress.flags=current&-65537|128,workInProgress):null;case 26:case 27:case 5:return popHostContext(workInProgress),null;case 31:if(null!==workInProgress.memoizedState){popSuspenseHandler(workInProgress);if(null===workInProgress.alternate)throw Error(formatProdErrorMessage(340));resetHydrationState();}current=workInProgress.flags;return current&65536?(workInProgress.flags=current&-65537|128,workInProgress):null;case 13:popSuspenseHandler(workInProgress);current=workInProgress.memoizedState;if(null!==current&&null!==current.dehydrated){if(null===workInProgress.alternate)throw Error(formatProdErrorMessage(340));resetHydrationState();}current=workInProgress.flags;return current&65536?(workInProgress.flags=current&-65537|128,workInProgress):null;case 19:return popSuspenseListContext(workInProgress),current=workInProgress.flags,current&65536?(workInProgress.flags=current&-65537|128,current=workInProgress.memoizedState,null!==current&&(current.rendering=null,current.tail=null),workInProgress.flags|=4,workInProgress):null;case 4:return popHostContainer(),null;case 10:return popProvider(workInProgress.type),null;case 22:case 23:return popSuspenseHandler(workInProgress),popHiddenContext(),null!==current&&pop(resumedCache),current=workInProgress.flags,current&65536?(workInProgress.flags=current&-65537|128,workInProgress):null;case 24:return popProvider(CacheContext),null;case 25:return null;default:return null;}}function unwindInterruptedWork(current,interruptedWork){popTreeContext(interruptedWork);switch(interruptedWork.tag){case 3:popProvider(CacheContext);popHostContainer();break;case 26:case 27:case 5:popHostContext(interruptedWork);break;case 4:popHostContainer();break;case 31:null!==interruptedWork.memoizedState&&popSuspenseHandler(interruptedWork);break;case 13:popSuspenseHandler(interruptedWork);break;case 19:popSuspenseListContext(interruptedWork);break;case 10:popProvider(interruptedWork.type);break;case 22:case 23:popSuspenseHandler(interruptedWork);popHiddenContext();null!==current&&pop(resumedCache);break;case 24:popProvider(CacheContext);}}function commitHookEffectListMount(flags,finishedWork){try{var updateQueue=finishedWork.updateQueue,lastEffect=null!==updateQueue?updateQueue.lastEffect:null;if(null!==lastEffect){var firstEffect=lastEffect.next;updateQueue=firstEffect;do{if((updateQueue.tag&flags)===flags){lastEffect=void 0;var create=updateQueue.create,inst=updateQueue.inst;lastEffect=create();inst.destroy=lastEffect;}updateQueue=updateQueue.next;}while(updateQueue!==firstEffect);}}catch(error){captureCommitPhaseError(finishedWork,finishedWork.return,error);}}function commitHookEffectListUnmount(flags,finishedWork,nearestMountedAncestor$jscomp$0){try{var updateQueue=finishedWork.updateQueue,lastEffect=null!==updateQueue?updateQueue.lastEffect:null;if(null!==lastEffect){var firstEffect=lastEffect.next;updateQueue=firstEffect;do{if((updateQueue.tag&flags)===flags){var inst=updateQueue.inst,destroy=inst.destroy;if(void 0!==destroy){inst.destroy=void 0;lastEffect=finishedWork;var nearestMountedAncestor=nearestMountedAncestor$jscomp$0,destroy_=destroy;try{destroy_();}catch(error){captureCommitPhaseError(lastEffect,nearestMountedAncestor,error);}}}updateQueue=updateQueue.next;}while(updateQueue!==firstEffect);}}catch(error){captureCommitPhaseError(finishedWork,finishedWork.return,error);}}function commitClassCallbacks(finishedWork){var updateQueue=finishedWork.updateQueue;if(null!==updateQueue){var instance=finishedWork.stateNode;try{commitCallbacks(updateQueue,instance);}catch(error){captureCommitPhaseError(finishedWork,finishedWork.return,error);}}}function safelyCallComponentWillUnmount(current,nearestMountedAncestor,instance){instance.props=resolveClassComponentProps(current.type,current.memoizedProps);instance.state=current.memoizedState;try{instance.componentWillUnmount();}catch(error){captureCommitPhaseError(current,nearestMountedAncestor,error);}}function safelyAttachRef(current,nearestMountedAncestor){try{var ref=current.ref;if(null!==ref){switch(current.tag){case 26:case 27:case 5:var instanceToUse=current.stateNode;break;case 30:var instance=current.stateNode,name=getViewTransitionName(current.memoizedProps,instance);if(null===instance.ref||instance.ref.name!==name)instance.ref=createViewTransitionInstance(name);instanceToUse=instance.ref;break;case 7:if(null===current.stateNode){var fragmentInstance=new FragmentInstance(current);traverseVisibleInstancesAndTextInstances(current.child,!1,addFragmentHandleToFiber,fragmentInstance,void 0,void 0);current.stateNode=fragmentInstance;}instanceToUse=current.stateNode;break;default:instanceToUse=current.stateNode;}"function"===typeof ref?current.refCleanup=ref(instanceToUse):ref.current=instanceToUse;}}catch(error){captureCommitPhaseError(current,nearestMountedAncestor,error);}}function safelyDetachRef(current,nearestMountedAncestor){var ref=current.ref,refCleanup=current.refCleanup;if(null!==ref)if("function"===typeof refCleanup)try{refCleanup();}catch(error){captureCommitPhaseError(current,nearestMountedAncestor,error);}finally{current.refCleanup=null,current=current.alternate,null!=current&&(current.refCleanup=null);}else if("function"===typeof ref)try{ref(null);}catch(error$155){captureCommitPhaseError(current,nearestMountedAncestor,error$155);}else ref.current=null;}function commitNewChildToFragmentInstances(fiber,parentFragmentInstances){if((5===fiber.tag||27===fiber.tag||6===fiber.tag)&&null===fiber.alternate&&null!==parentFragmentInstances)for(var i=0;i title"));setInitialProperties(current,root,lanes);current[internalInstanceKey]=finishedWork;markNodeAsHoistable(current);root=current;break a;case"link":if(ii=getHydratableHoistableCache("link","href",flags).get(root+(lanes.href||"")))for(_eventPayloads$ii=0;_eventPayloads$iiend$jscomp$0&&(curFocusedElem=end$jscomp$0,end$jscomp$0=start$jscomp$0,start$jscomp$0=curFocusedElem);var startMarker=getNodeForCharacterOffset(priorFocusedElem,start$jscomp$0),endMarker=getNodeForCharacterOffset(priorFocusedElem,end$jscomp$0);if(startMarker&&endMarker&&(1!==selection.rangeCount||selection.anchorNode!==startMarker.node||selection.anchorOffset!==startMarker.offset||selection.focusNode!==endMarker.node||selection.focusOffset!==endMarker.offset)){var range=doc.createRange();range.setStart(startMarker.node,startMarker.offset);selection.removeAllRanges();start$jscomp$0>end$jscomp$0?(selection.addRange(range),selection.extend(endMarker.node,endMarker.offset)):(range.setEnd(endMarker.node,endMarker.offset),selection.addRange(range));}}}}doc=[];for(selection=priorFocusedElem;selection=selection.parentNode;)1===selection.nodeType&&doc.push({element:selection,left:selection.scrollLeft,top:selection.scrollTop});"function"===typeof priorFocusedElem.focus&&priorFocusedElem.focus();for(priorFocusedElem=0;priorFocusedElemrenderPriority?32:renderPriority;ReactSharedInternals.T=null;renderPriority=pendingPassiveTransitions;pendingPassiveTransitions=null;var root$jscomp$0=pendingEffectsRoot,lanes=pendingEffectsLanes;pendingEffectsStatus=0;pendingFinishedWork=pendingEffectsRoot=null;pendingEffectsLanes=0;if(0!==(executionContext&6))throw Error(formatProdErrorMessage(331));var prevExecutionContext=executionContext;executionContext|=4;commitPassiveUnmountOnFiber(root$jscomp$0.current);commitPassiveMountOnFiber(root$jscomp$0,root$jscomp$0.current,lanes,renderPriority);executionContext=prevExecutionContext;flushSyncWorkAcrossRoots_impl(0,!1);if(injectedHook&&"function"===typeof injectedHook.onPostCommitFiberRoot)try{injectedHook.onPostCommitFiberRoot(rendererID,root$jscomp$0);}catch(err){}return!0;}finally{ReactDOMSharedInternals.p=previousPriority,ReactSharedInternals.T=prevTransition,releaseRootPooledCache(root,remainingLanes);}}function captureCommitPhaseErrorOnRoot(rootFiber,sourceFiber,error){sourceFiber=createCapturedValueAtFiber(error,sourceFiber);sourceFiber=createRootErrorUpdate(rootFiber.stateNode,sourceFiber,2);rootFiber=enqueueUpdate(rootFiber,sourceFiber,2);null!==rootFiber&&(markRootUpdated$1(rootFiber,2),ensureRootIsScheduled(rootFiber));}function captureCommitPhaseError(sourceFiber,nearestMountedAncestor,error){if(3===sourceFiber.tag)captureCommitPhaseErrorOnRoot(sourceFiber,sourceFiber,error);else for(;null!==nearestMountedAncestor;){if(3===nearestMountedAncestor.tag){captureCommitPhaseErrorOnRoot(nearestMountedAncestor,sourceFiber,error);break;}else if(1===nearestMountedAncestor.tag){var instance=nearestMountedAncestor.stateNode;if("function"===typeof nearestMountedAncestor.type.getDerivedStateFromError||"function"===typeof instance.componentDidCatch&&(null===legacyErrorBoundariesThatAlreadyFailed||!legacyErrorBoundariesThatAlreadyFailed.has(instance))){sourceFiber=createCapturedValueAtFiber(error,sourceFiber);error=createClassErrorUpdate(2);instance=enqueueUpdate(nearestMountedAncestor,error,2);null!==instance&&(initializeClassErrorUpdate(error,instance,nearestMountedAncestor,sourceFiber),markRootUpdated$1(instance,2),ensureRootIsScheduled(instance));break;}}nearestMountedAncestor=nearestMountedAncestor.return;}}function attachPingListener(root,wakeable,lanes){var pingCache=root.pingCache;if(null===pingCache){pingCache=root.pingCache=new PossiblyWeakMap();var threadIDs=new Set();pingCache.set(wakeable,threadIDs);}else threadIDs=pingCache.get(wakeable),void 0===threadIDs&&(threadIDs=new Set(),pingCache.set(wakeable,threadIDs));threadIDs.has(lanes)||(workInProgressRootDidAttachPingListener=!0,threadIDs.add(lanes),root=pingSuspendedRoot.bind(null,root,wakeable,lanes),wakeable.then(root,root));}function pingSuspendedRoot(root,wakeable,pingedLanes){var pingCache=root.pingCache;null!==pingCache&&pingCache.delete(wakeable);markRootPinged$1(root,pingedLanes);workInProgressRoot===root&&(workInProgressRootRenderLanes&pingedLanes)===pingedLanes&&(4===workInProgressRootExitStatus||3===workInProgressRootExitStatus&&(workInProgressRootRenderLanes&62914560)===workInProgressRootRenderLanes&&300>now()-globalMostRecentFallbackTime?0===(executionContext&2)?prepareFreshStack(root,0):workInProgressRootPingedLanes|=pingedLanes:workInProgressRootPingedLanes|=pingedLanes,workInProgressSuspendedRetryLanes===workInProgressRootRenderLanes&&(workInProgressSuspendedRetryLanes=0));ensureRootIsScheduled(root);}function retryTimedOutBoundary(boundaryFiber,retryLane){0===retryLane&&(retryLane=claimNextRetryLane());boundaryFiber=enqueueConcurrentRenderForLane(boundaryFiber,retryLane);null!==boundaryFiber&&(markRootUpdated$1(boundaryFiber,retryLane),ensureRootIsScheduled(boundaryFiber));}function retryDehydratedSuspenseBoundary(boundaryFiber){var suspenseState=boundaryFiber.memoizedState,retryLane=0;null!==suspenseState&&(retryLane=suspenseState.retryLane);retryTimedOutBoundary(boundaryFiber,retryLane);}function resolveRetryWakeable(boundaryFiber,wakeable){var retryLane=0;switch(boundaryFiber.tag){case 31:case 13:var retryCache=boundaryFiber.stateNode;var suspenseState=boundaryFiber.memoizedState;null!==suspenseState&&(retryLane=suspenseState.retryLane);break;case 19:retryCache=boundaryFiber.stateNode;break;case 22:retryCache=boundaryFiber.stateNode;if(null===retryCache)return;retryCache=retryCache._retryCache;break;default:throw Error(formatProdErrorMessage(314));}null!==retryCache&&retryCache.delete(wakeable);retryTimedOutBoundary(boundaryFiber,retryLane);}function scheduleCallback$1(priorityLevel,callback){return scheduleCallback$3(priorityLevel,callback);}var firstScheduledRoot=null,lastScheduledRoot=null,didScheduleMicrotask=!1,mightHavePendingSyncWork=!1,isFlushingWork=!1,currentEventTransitionLane=0;function ensureRootIsScheduled(root){root!==lastScheduledRoot&&null===root.next&&(null===lastScheduledRoot?firstScheduledRoot=lastScheduledRoot=root:lastScheduledRoot=lastScheduledRoot.next=root);mightHavePendingSyncWork=!0;didScheduleMicrotask||(didScheduleMicrotask=!0,scheduleImmediateRootScheduleTask());}function flushSyncWorkAcrossRoots_impl(syncTransitionLanes,onlyLegacy){if(!isFlushingWork&&mightHavePendingSyncWork){isFlushingWork=!0;do{var didPerformSomeWork=!1;for(var root$205=firstScheduledRoot;null!==root$205;){if(!onlyLegacy)if(0!==syncTransitionLanes){var pendingLanes=root$205.pendingLanes;if(0===pendingLanes)var JSCompiler_inline_result=0;else{var suspendedLanes=root$205.suspendedLanes,pingedLanes=root$205.pingedLanes;JSCompiler_inline_result=(1<<31-clz32(42|syncTransitionLanes)+1)-1;JSCompiler_inline_result&=pendingLanes&~(suspendedLanes&~pingedLanes);JSCompiler_inline_result=JSCompiler_inline_result&201326741?JSCompiler_inline_result&201326741|1:JSCompiler_inline_result?JSCompiler_inline_result|2:0;}0!==JSCompiler_inline_result&&(didPerformSomeWork=!0,performSyncWorkOnRoot(root$205,JSCompiler_inline_result));}else JSCompiler_inline_result=workInProgressRootRenderLanes,JSCompiler_inline_result=getNextLanes(root$205,root$205===workInProgressRoot?JSCompiler_inline_result:0,null!==root$205.cancelPendingCommit||-1!==root$205.timeoutHandle),0===(JSCompiler_inline_result&3)&&64!==JSCompiler_inline_result||checkIfRootIsPrerendering(root$205,JSCompiler_inline_result)||(didPerformSomeWork=!0,performSyncWorkOnRoot(root$205,JSCompiler_inline_result));root$205=root$205.next;}}while(didPerformSomeWork);isFlushingWork=!1;}}function processRootScheduleInImmediateTask(){processRootScheduleInMicrotask();}function processRootScheduleInMicrotask(){mightHavePendingSyncWork=didScheduleMicrotask=!1;var syncTransitionLanes=0;0!==currentEventTransitionLane&&(syncTransitionLanes=shouldAttemptEagerTransition()?currentEventTransitionLane:32);for(var currentTime=now(),prev=null,root=firstScheduledRoot;null!==root;){var next=root.next,nextLanes=scheduleTaskForRootDuringMicrotask(root,currentTime);if(0===nextLanes)root.next=null,null===prev?firstScheduledRoot=next:prev.next=next,null===next&&(lastScheduledRoot=prev);else if(prev=root,0!==syncTransitionLanes||0!==(nextLanes&3)||64===nextLanes)mightHavePendingSyncWork=!0;root=next;}0!==pendingEffectsStatus&&5!==pendingEffectsStatus||flushSyncWorkAcrossRoots_impl(syncTransitionLanes,!1);if(0!==currentEventTransitionLane){currentEventTransitionLane=0;if(needsIsomorphicIndicator&&null!=isomorphicDefaultTransitionIndicator&&null===pendingIsomorphicIndicator)try{pendingIsomorphicIndicator=isomorphicDefaultTransitionIndicator()||noop$1;}catch(x){pendingIsomorphicIndicator=noop$1,reportGlobalError(x);}for(syncTransitionLanes=firstScheduledRoot;null!==syncTransitionLanes;){if(0!==syncTransitionLanes.indicatorLanes&&null===syncTransitionLanes.pendingIndicator)if(null!==pendingIsomorphicIndicator)currentTime=syncTransitionLanes,pendingEntangledRoots++,currentTime.pendingIndicator=releaseIsomorphicIndicator;else try{var onDefaultTransitionIndicator=syncTransitionLanes.onDefaultTransitionIndicator;syncTransitionLanes.pendingIndicator=onDefaultTransitionIndicator()||noop$1;}catch(x){syncTransitionLanes.pendingIndicator=noop$1,reportGlobalError(x);}syncTransitionLanes=syncTransitionLanes.next;}}}function scheduleTaskForRootDuringMicrotask(root,currentTime){for(var suspendedLanes=root.suspendedLanes,pingedLanes=root.pingedLanes,expirationTimes=root.expirationTimes,lanes=root.pendingLanes&-62914561;0duration)break;var overlapTransferSize=overlapEntry.transferSize,overlapInitiatorType=overlapEntry.initiatorType;overlapTransferSize&&isLikelyStaticResource(overlapInitiatorType)&&(overlapEntry=overlapEntry.responseEnd,initiatorType+=overlapTransferSize*(overlapEntryestimatedBytesWithinLimit){blockingPromises.length=previousFontLoadingStatus;break;}suspenseyImage=new Promise(waitForImageToLoad.bind(suspenseyImage));blockingPromises.push(suspenseyImage);}}}if(0rangeEnd;timeline instanceof AnimationTimeline?(customTimelineCleanup=targetElement.animate(keyframes,{pseudoElement:pseudoElement,timeline:timeline,easing:"linear",fill:"both",direction:width?"normal":"reverse",rangeStart:(width?rangeEnd:rangeStart)+"%",rangeEnd:(width?rangeStart:rangeEnd)+"%"}),viewTransitionAnimations.push(customTimelineCleanup)):(keyframes=targetElement.animate(keyframes,{pseudoElement:pseudoElement,easing:"linear",fill:"both",direction:width?"normal":"reverse",delay:width?rangeEnd:rangeStart,duration:width?rangeStart-rangeEnd:rangeEnd-rangeStart}),viewTransitionAnimations.push(keyframes),(viewTransitionAnimations=timeline.animate(keyframes))&&customTimelineCleanup.push(viewTransitionAnimations));}function startGestureTransition(suspendedState,rootContainer,timeline,rangeStart,rangeEnd,transitionTypes,mutationCallback,animateCallback,errorCallback){var ownerDocument=9===rootContainer.nodeType?rootContainer:rootContainer.ownerDocument;try{forceLayout(ownerDocument);var transition=ownerDocument.startViewTransition({update:mutationCallback,types:transitionTypes});ownerDocument.__reactViewTransition=transition;var customTimelineCleanup=[],viewTransitionAnimations=[],readyCallback=function(){for(var documentElement=ownerDocument.documentElement,animations=documentElement.getAnimations({subtree:!0}),foundGroups=new Set(),foundNews=new Set(),longestDuration=0,i=0;ilongestDuration&&(longestDuration=effect),pseudoElement.startsWith("::view-transition-group")?foundGroups.add(pseudoElement.slice(23)):pseudoElement.startsWith("::view-transition-new")&&foundNews.add(pseudoElement.slice(21)));}longestDuration=(rangeEnd-rangeStart)/longestDuration;for(i=0;i title"):null);}function isHostHoistableType(type,props,hostContext){if(1===hostContext||null!=props.itemProp)return!1;switch(type){case"meta":case"title":return!0;case"style":if("string"!==typeof props.precedence||"string"!==typeof props.href||""===props.href)break;return!0;case"link":if("string"!==typeof props.rel||"string"!==typeof props.href||""===props.href||props.onLoad||props.onError)break;switch(props.rel){case"stylesheet":return type=props.disabled,"string"===typeof props.precedence&&null==type;default:return!0;}case"script":if(props.async&&"function"!==typeof props.async&&"symbol"!==typeof props.async&&!props.onLoad&&!props.onError&&props.src&&"string"===typeof props.src)return!0;}return!1;}function maySuspendCommit(type,props){return"img"===type&&null!=props.src&&""!==props.src&&null==props.onLoad&&"lazy"!==props.loading;}function preloadResource(resource){return"stylesheet"===resource.type&&0===(resource.state.loading&3)?!1:!0;}function estimateImageBytes(instance){return(instance.width||100)*(instance.height||100)*("number"===typeof devicePixelRatio?devicePixelRatio:1)*0.25;}function suspendInstance(state,instance){"function"===typeof instance.decode&&(state.imgCount++,instance.complete||(state.imgBytes+=estimateImageBytes(instance),state.suspenseyImages.push(instance)),state=onUnsuspendImg.bind(state),instance.decode().then(state,state));}function suspendResource(state,hoistableRoot,resource,props){if("stylesheet"===resource.type&&("string"!==typeof props.media||!1!==matchMedia(props.media).matches)&&0===(resource.state.loading&4)){if(null===resource.instance){var key=getStyleKey(props.href),instance=hoistableRoot.querySelector(getStylesheetSelectorFromKey(key));if(instance){hoistableRoot=instance._p;null!==hoistableRoot&&"object"===typeof hoistableRoot&&"function"===typeof hoistableRoot.then&&(state.count++,state=onUnsuspend.bind(state),hoistableRoot.then(state,state));resource.state.loading|=4;resource.instance=instance;markNodeAsHoistable(instance);return;}instance=hoistableRoot.ownerDocument||hoistableRoot;props=stylesheetPropsFromRawProps(props);(key=preloadPropsMap.get(key))&&adoptPreloadPropsForStylesheet(props,key);instance=instance.createElement("link");markNodeAsHoistable(instance);var linkInstance=instance;linkInstance._p=new Promise(function(resolve,reject){linkInstance.onload=resolve;linkInstance.onerror=reject;});setInitialProperties(instance,"link",props);resource.instance=instance;}null===state.stylesheets&&(state.stylesheets=new Map());state.stylesheets.set(resource,hoistableRoot);(hoistableRoot=resource.state.preload)&&0===(resource.state.loading&3)&&(state.count++,resource=onUnsuspend.bind(state),hoistableRoot.addEventListener("load",resource),hoistableRoot.addEventListener("error",resource));}}var estimatedBytesWithinLimit=0;function waitForCommitToBeReady(state,timeoutOffset){state.stylesheets&&0===state.count&&insertSuspendedStylesheets(state,state.stylesheets);return 0estimatedBytesWithinLimit?50:800)+timeoutOffset);state.unsuspend=commit;return function(){state.unsuspend=null;clearTimeout(stylesheetTimer);clearTimeout(imgTimer);};}:null;}function checkIfFullyUnsuspended(state){if(0===state.count&&(0===state.imgCount||!state.waitingForImages))if(state.stylesheets)insertSuspendedStylesheets(state,state.stylesheets);else if(state.unsuspend){var unsuspend=state.unsuspend;state.unsuspend=null;unsuspend();}}function onUnsuspend(){this.count--;checkIfFullyUnsuspended(this);}function onUnsuspendImg(){this.imgCount--;checkIfFullyUnsuspended(this);}var precedencesByRoot=null;function insertSuspendedStylesheets(state,resources){state.stylesheets=null;null!==state.unsuspend&&(state.count++,precedencesByRoot=new Map(),resources.forEach(insertStylesheetIntoRoot,state),precedencesByRoot=null,onUnsuspend.call(state));}function insertStylesheetIntoRoot(root,resource){if(!(resource.state.loading&4)){var precedences=precedencesByRoot.get(root);if(precedences)var last=precedences.get(null);else{precedences=new Map();precedencesByRoot.set(root,precedences);for(var nodes=root.querySelectorAll("link[data-precedence],style[data-precedence]"),i=0;i { -/** - * @license React - * react-dom.production.js - * - * Copyright (c) Meta Platforms, Inc. and affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - var React = __webpack_require__(147); @@ -61,12 +41,14 @@ var Internals = { p: 0, findDOMNode: null }, - REACT_PORTAL_TYPE = Symbol.for("react.portal"); + REACT_PORTAL_TYPE = Symbol.for("react.portal"), + REACT_RECOVERABLE_TYPE = Symbol.for("react.recoverable"), + REACT_OPTIMISTIC_KEY = Symbol.for("react.optimistic_key"); function createPortal$1(children, containerInfo, implementation) { var key = 3 < arguments.length && void 0 !== arguments[3] ? arguments[3] : null; return { $$typeof: REACT_PORTAL_TYPE, - key: null == key ? null : "" + key, + key: null == key ? null : key === REACT_OPTIMISTIC_KEY ? REACT_OPTIMISTIC_KEY : "" + key, children: children, containerInfo: containerInfo, implementation: implementation @@ -78,6 +60,12 @@ function getCrossOriginStringAs(as, input) { if ("string" === typeof input) return "use-credentials" === input ? input : ""; } exports.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE = Internals; +exports.browser = function (reason) { + return { + $$typeof: REACT_RECOVERABLE_TYPE, + _reason: reason + }; +}; exports.createPortal = function (children, container) { var key = 2 < arguments.length && void 0 !== arguments[2] ? arguments[2] : null; if (!container || 1 !== container.nodeType && 9 !== container.nodeType && 11 !== container.nodeType) throw Error(formatProdErrorMessage(299)); @@ -123,7 +111,8 @@ exports.preinitModule = function (href, options) { Internals.d.M(href, { crossOrigin: crossOrigin, integrity: "string" === typeof options.integrity ? options.integrity : void 0, - nonce: "string" === typeof options.nonce ? options.nonce : void 0 + nonce: "string" === typeof options.nonce ? options.nonce : void 0, + fetchPriority: "string" === typeof options.fetchPriority ? options.fetchPriority : void 0 }); } } else null == options && Internals.d.M(href); @@ -151,7 +140,9 @@ exports.preloadModule = function (href, options) { Internals.d.m(href, { as: "string" === typeof options.as && "script" !== options.as ? options.as : void 0, crossOrigin: crossOrigin, - integrity: "string" === typeof options.integrity ? options.integrity : void 0 + integrity: "string" === typeof options.integrity ? options.integrity : void 0, + nonce: "string" === typeof options.nonce ? options.nonce : void 0, + fetchPriority: "string" === typeof options.fetchPriority ? options.fetchPriority : void 0 }); } else Internals.d.m(href); }; @@ -167,7 +158,7 @@ exports.useFormState = function (action, initialState, permalink) { exports.useFormStatus = function () { return ReactSharedInternals.H.useHostTransitionStatus(); }; -exports.version = "19.2.0-experimental-9fd4c09d-20250704"; +exports.version = "19.3.0-experimental-d71b5372-20261106"; /***/ }), @@ -177,23 +168,17 @@ exports.version = "19.2.0-experimental-9fd4c09d-20250704"; function checkDCE() { - /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */ if (typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ === 'undefined' || typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE !== 'function') { return; } if (false) {} try { - // Verify that the code above has been dead code eliminated (DCE'd). __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(checkDCE); } catch (err) { - // DevTools shouldn't crash React, no matter what. - // We should still report in case we break this code. console.error(err); } } if (true) { - // DCE check should happen before ReactDOM bundle executes so that - // DevTools can report bad minification during injection. checkDCE(); module.exports = __webpack_require__(519); } else {} @@ -206,23 +191,17 @@ if (true) { function checkDCE() { - /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */ if (typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ === 'undefined' || typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE !== 'function') { return; } if (false) {} try { - // Verify that the code above has been dead code eliminated (DCE'd). __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(checkDCE); } catch (err) { - // DevTools shouldn't crash React, no matter what. - // We should still report in case we break this code. console.error(err); } } if (true) { - // DCE check should happen before ReactDOM bundle executes so that - // DevTools can report bad minification during injection. checkDCE(); module.exports = __webpack_require__(53); } else {} @@ -233,16 +212,6 @@ if (true) { /***/ ((__unused_webpack_module, exports) => { var __webpack_unused_export__; -/** - * @license React - * react-is.production.js - * - * Copyright (c) Meta Platforms, Inc. and affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - var REACT_ELEMENT_TYPE = Symbol.for("react.transitional.element"), @@ -349,16 +318,6 @@ __webpack_unused_export__ = typeOf; /***/ ((__unused_webpack_module, exports, __webpack_require__) => { /* provided dependency */ var process = __webpack_require__(397); -/** - * @license React - * react.production.js - * - * Copyright (c) Meta Platforms, Inc. and affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - var REACT_ELEMENT_TYPE = Symbol.for("react.transitional.element"), @@ -374,7 +333,6 @@ var REACT_ELEMENT_TYPE = Symbol.for("react.transitional.element"), REACT_MEMO_TYPE = Symbol.for("react.memo"), REACT_LAZY_TYPE = Symbol.for("react.lazy"), REACT_ACTIVITY_TYPE = Symbol.for("react.activity"), - REACT_POSTPONE_TYPE = Symbol.for("react.postpone"), REACT_VIEW_TRANSITION_TYPE = Symbol.for("react.view_transition"), MAYBE_ITERATOR_SYMBOL = Symbol.iterator; function getIteratorFn(maybeIterable) { @@ -382,7 +340,8 @@ function getIteratorFn(maybeIterable) { maybeIterable = MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL] || maybeIterable["@@iterator"]; return "function" === typeof maybeIterable ? maybeIterable : null; } -var ReactNoopUpdateQueue = { +var REACT_OPTIMISTIC_KEY = Symbol.for("react.optimistic_key"), + ReactNoopUpdateQueue = { isMounted: function () { return !1; }, @@ -428,18 +387,18 @@ var ReactSharedInternals = { G: null }, hasOwnProperty = Object.prototype.hasOwnProperty; -function ReactElement(type, key, self, source, owner, props) { - self = props.ref; +function ReactElement(type, key, props) { + var refProp = props.ref; return { $$typeof: REACT_ELEMENT_TYPE, type: type, key: key, - ref: void 0 !== self ? self : null, + ref: void 0 !== refProp ? refProp : null, props: props }; } function cloneAndReplaceKey(oldElement, newKey) { - return ReactElement(oldElement.type, newKey, void 0, void 0, void 0, oldElement.props); + return ReactElement(oldElement.type, newKey, oldElement.props); } function isValidElement(object) { return "object" === typeof object && null !== object && object.$$typeof === REACT_ELEMENT_TYPE; @@ -455,7 +414,7 @@ function escape(key) { } var userProvidedKeyEscapeRegex = /\/+/g; function getElementKey(element, index) { - return "object" === typeof element && null !== element && null != element.key ? escape("" + element.key) : index.toString(36); + return "object" === typeof element && null !== element && null != element.key ? element.key === REACT_OPTIMISTIC_KEY ? index.toString(36) : escape("" + element.key) : index.toString(36); } function resolveThenable(thenable) { switch (thenable.status) { @@ -520,14 +479,14 @@ function mapChildren(children, func, context) { } function lazyInitializer(payload) { if (-1 === payload._status) { - var ctor = payload._result; - ctor = ctor(); - ctor.then(function (moduleObject) { - if (0 === payload._status || -1 === payload._status) payload._status = 1, payload._result = moduleObject; + var ctor = payload._result, + thenable = ctor(); + thenable.then(function (moduleObject) { + if (0 === payload._status || -1 === payload._status) payload._status = 1, payload._result = moduleObject, void 0 === thenable.status && (thenable.status = "fulfilled", thenable.value = moduleObject); }, function (error) { - if (0 === payload._status || -1 === payload._status) payload._status = 2, payload._result = error; + if (0 === payload._status || -1 === payload._status) payload._status = 2, payload._result = error, void 0 === thenable.status && (thenable.status = "rejected", thenable.reason = error); }); - -1 === payload._status && (payload._status = 0, payload._result = ctor); + -1 === payload._status && (payload._status = 0, payload._result = thenable); } if (1 === payload._status) return payload._result.default; throw payload._result; @@ -574,7 +533,7 @@ function addTransitionType(type) { null === transitionTypes ? transition.types = [type] : -1 === transitionTypes.indexOf(type) && transitionTypes.push(type); } else startTransition(addTransitionType.bind(null, type)); } -exports.Children = { +var Children = { map: mapChildren, forEach: function (children, forEachFunc, forEachContext) { mapChildren(children, function () { @@ -598,12 +557,15 @@ exports.Children = { return children; } }; +exports.Activity = REACT_ACTIVITY_TYPE; +exports.Children = Children; exports.Component = Component; exports.Fragment = REACT_FRAGMENT_TYPE; exports.Profiler = REACT_PROFILER_TYPE; exports.PureComponent = PureComponent; exports.StrictMode = REACT_STRICT_MODE_TYPE; exports.Suspense = REACT_SUSPENSE_TYPE; +exports.ViewTransition = REACT_VIEW_TRANSITION_TYPE; exports.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE = ReactSharedInternals; exports.__COMPILER_RUNTIME = { __proto__: null, @@ -611,6 +573,7 @@ exports.__COMPILER_RUNTIME = { return ReactSharedInternals.H.useMemoCache(size); } }; +exports.addTransitionType = addTransitionType; exports.cache = function (fn) { return function () { return fn.apply(null, arguments); @@ -622,15 +585,14 @@ exports.cacheSignal = function () { exports.cloneElement = function (element, config, children) { if (null === element || void 0 === element) throw Error("The argument must be a React element, but you passed " + element + "."); var props = assign({}, element.props), - key = element.key, - owner = void 0; - if (null != config) for (propName in void 0 !== config.ref && (owner = void 0), void 0 !== config.key && (key = "" + config.key), config) !hasOwnProperty.call(config, propName) || "key" === propName || "__self" === propName || "__source" === propName || "ref" === propName && void 0 === config.ref || (props[propName] = config[propName]); + key = element.key; + if (null != config) for (propName in void 0 !== config.key && (key = config.key === REACT_OPTIMISTIC_KEY ? REACT_OPTIMISTIC_KEY : "" + config.key), config) !hasOwnProperty.call(config, propName) || "key" === propName || "__self" === propName || "__source" === propName || "ref" === propName && void 0 === config.ref || (props[propName] = config[propName]); var propName = arguments.length - 2; if (1 === propName) props.children = children;else if (1 < propName) { for (var childArray = Array(propName), i = 0; i < propName; i++) childArray[i] = arguments[i + 2]; props.children = childArray; } - return ReactElement(element.type, key, void 0, void 0, owner, props); + return ReactElement(element.type, key, props); }; exports.createContext = function (defaultValue) { defaultValue = { @@ -652,23 +614,20 @@ exports.createElement = function (type, config, children) { var propName, props = {}, key = null; - if (null != config) for (propName in void 0 !== config.key && (key = "" + config.key), config) hasOwnProperty.call(config, propName) && "key" !== propName && "__self" !== propName && "__source" !== propName && (props[propName] = config[propName]); + if (null != config) for (propName in void 0 !== config.key && (key = config.key === REACT_OPTIMISTIC_KEY ? REACT_OPTIMISTIC_KEY : "" + config.key), config) hasOwnProperty.call(config, propName) && "key" !== propName && "__self" !== propName && "__source" !== propName && (props[propName] = config[propName]); var childrenLength = arguments.length - 2; if (1 === childrenLength) props.children = children;else if (1 < childrenLength) { for (var childArray = Array(childrenLength), i = 0; i < childrenLength; i++) childArray[i] = arguments[i + 2]; props.children = childArray; } if (type && type.defaultProps) for (propName in childrenLength = type.defaultProps, childrenLength) void 0 === props[propName] && (props[propName] = childrenLength[propName]); - return ReactElement(type, key, void 0, void 0, null, props); + return ReactElement(type, key, props); }; exports.createRef = function () { return { current: null }; }; -exports.experimental_useEffectEvent = function (callback) { - return ReactSharedInternals.H.useEffectEvent(callback); -}; exports.experimental_useOptimistic = function (passthrough, reducer) { return useOptimistic(passthrough, reducer); }; @@ -696,20 +655,14 @@ exports.memo = function (type, compare) { compare: void 0 === compare ? null : compare }; }; +exports.optimisticKey = REACT_OPTIMISTIC_KEY; exports.startTransition = startTransition; exports.unstable_Activity = REACT_ACTIVITY_TYPE; exports.unstable_SuspenseList = REACT_SUSPENSE_LIST_TYPE; -exports.unstable_ViewTransition = REACT_VIEW_TRANSITION_TYPE; -exports.unstable_addTransitionType = addTransitionType; exports.unstable_getCacheForType = function (resourceType) { var dispatcher = ReactSharedInternals.A; return dispatcher ? dispatcher.getCacheForType(resourceType) : resourceType(); }; -exports.unstable_postpone = function (reason) { - reason = Error(reason); - reason.$$typeof = REACT_POSTPONE_TYPE; - throw reason; -}; exports.unstable_startGestureTransition = function (provider, scope, options) { if (null == provider) throw Error("A Timeline is required as the first argument to startGestureTransition."); var prevTransition = ReactSharedInternals.T, @@ -751,6 +704,9 @@ exports.useDeferredValue = function (value, initialValue) { exports.useEffect = function (create, deps) { return ReactSharedInternals.H.useEffect(create, deps); }; +exports.useEffectEvent = function (callback) { + return ReactSharedInternals.H.useEffectEvent(callback); +}; exports.useId = function () { return ReactSharedInternals.H.useId(); }; @@ -782,7 +738,7 @@ exports.useSyncExternalStore = function (subscribe, getSnapshot, getServerSnapsh exports.useTransition = function () { return ReactSharedInternals.H.useTransition(); }; -exports.version = "19.2.0-experimental-9fd4c09d-20250704"; +exports.version = "19.3.0-experimental-d71b5372-20261106"; /***/ }), @@ -800,16 +756,6 @@ if (true) { /***/ 350: /***/ ((__unused_webpack_module, exports) => { -/** - * @license React - * scheduler.production.js - * - * Copyright (c) Meta Platforms, Inc. and affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - function push(heap, node) { @@ -1067,1806 +1013,207 @@ if (true) { /***/ }), -/***/ 496: -/***/ ((__unused_webpack_module, exports, __webpack_require__) => { - +/***/ 837: +/***/ (function(__unused_webpack_module, exports) { +(function (global, factory) { + true ? factory(exports) : 0; +})(this, function (exports) { + 'use strict'; -Object.defineProperty(exports, "__esModule", ({ - value: true -})); -exports.importFromOldV8CPUProfile = exports.importFromChromeCPUProfile = exports.importFromChromeTimeline = exports.isChromeTimeline = void 0; -const profile_1 = __webpack_require__(211); -const utils_1 = __webpack_require__(844); -const value_formatters_1 = __webpack_require__(218); -const v8cpuFormatter_1 = __webpack_require__(320); -function isChromeTimeline(rawProfile) { - if (!Array.isArray(rawProfile)) return false; - if (rawProfile.length < 1) return false; - const first = rawProfile[0]; - if (!('pid' in first && 'tid' in first && 'ph' in first && 'cat' in first)) return false; - if (!rawProfile.find(e => e.name === 'CpuProfile' || e.name === 'Profile' || e.name === 'ProfileChunk')) return false; - return true; -} -exports.isChromeTimeline = isChromeTimeline; -function importFromChromeTimeline(events, fileName) { - // It seems like sometimes Chrome timeline files contain multiple CpuProfiles? - // For now, choose the first one in the list. - const cpuProfileByID = new Map(); - // Maps profile IDs (like "0x3") to pid/tid pairs formatted as `${pid}:${tid}` - const pidTidById = new Map(); - // Maps pid/tid pairs to thread names - const threadNameByPidTid = new Map(); - // The events aren't necessarily recorded in chronological order. Sort them so - // that they are. - utils_1.sortBy(events, e => e.ts); - for (let event of events) { - if (event.name === 'CpuProfile') { - const pidTid = `${event.pid}:${event.tid}`; - const id = event.id || pidTid; - cpuProfileByID.set(id, event.args.data.cpuProfile); - pidTidById.set(id, pidTid); - } - if (event.name === 'Profile') { - const pidTid = `${event.pid}:${event.tid}`; - cpuProfileByID.set(event.id || pidTid, Object.assign({ - startTime: 0, - endTime: 0, - nodes: [], - samples: [], - timeDeltas: [] - }, event.args.data)); - if (event.id) { - pidTidById.set(event.id, `${event.pid}:${event.tid}`); - } - } - if (event.name === 'thread_name') { - threadNameByPidTid.set(`${event.pid}:${event.tid}`, event.args.name); - } - if (event.name === 'ProfileChunk') { - const pidTid = `${event.pid}:${event.tid}`; - const cpuProfile = cpuProfileByID.get(event.id || pidTid); - if (cpuProfile) { - const chunk = event.args.data; - if (chunk.cpuProfile) { - if (chunk.cpuProfile.nodes) { - cpuProfile.nodes = cpuProfile.nodes.concat(chunk.cpuProfile.nodes); - } - if (chunk.cpuProfile.samples) { - cpuProfile.samples = cpuProfile.samples.concat(chunk.cpuProfile.samples); - } - } - if (chunk.timeDeltas) { - cpuProfile.timeDeltas = cpuProfile.timeDeltas.concat(chunk.timeDeltas); - } - if (chunk.startTime != null) { - cpuProfile.startTime = chunk.startTime; - } - if (chunk.endTime != null) { - cpuProfile.endTime = chunk.endTime; - } - } else { - console.warn(`Ignoring ProfileChunk for undeclared Profile with id ${event.id || pidTid}`); - } - } - } - if (cpuProfileByID.size > 0) { - const profiles = []; - let indexToView = 0; - utils_1.itForEach(cpuProfileByID.keys(), profileId => { - let threadName = null; - let pidTid = pidTidById.get(profileId); - if (pidTid) { - threadName = threadNameByPidTid.get(pidTid) || null; - if (threadName) {} - } - const profile = importFromChromeCPUProfile(cpuProfileByID.get(profileId)); - if (threadName && cpuProfileByID.size > 1) { - profile.setName(`${fileName} - ${threadName}`); - if (threadName === 'CrRendererMain') { - indexToView = profiles.length; - } - } else { - profile.setName(`${fileName}`); - } - profiles.push(profile); - }); - return { - name: fileName, - indexToView, - profiles - }; - } else { - throw new Error('Could not find CPU profile in Timeline'); - } -} -exports.importFromChromeTimeline = importFromChromeTimeline; -const callFrameToFrameInfo = new Map(); -function frameInfoForCallFrame(callFrame) { - return utils_1.getOrInsert(callFrameToFrameInfo, callFrame, callFrame => { - const name = callFrame.functionName || '(anonymous)'; - const file = callFrame.url; - const line = callFrame.lineNumber; - const col = callFrame.columnNumber; - return { - key: `${name}:${file}:${line}:${col}`, - name, - file, - line, - col - }; - }); -} -function shouldIgnoreFunction(callFrame) { - const { - functionName, - url - } = callFrame; - if (url === 'native dummy.js') { - // I'm not really sure what this is about, but this seems to be used - // as a way of avoiding edge cases in V8's implementation. - // See: https://github.com/v8/v8/blob/b8626ca4/tools/js2c.py#L419-L424 - return true; - } - return functionName === '(root)' || functionName === '(idle)'; -} -function shouldPlaceOnTopOfPreviousStack(functionName) { - return functionName === '(garbage collector)' || functionName === '(program)'; -} -function importFromChromeCPUProfile(chromeProfile) { - const profile = new profile_1.CallTreeProfileBuilder(chromeProfile.endTime - chromeProfile.startTime); - const nodeById = new Map(); - for (let node of chromeProfile.nodes) { - nodeById.set(node.id, node); - } - for (let node of chromeProfile.nodes) { - if (typeof node.parent === 'number') { - node.parent = nodeById.get(node.parent); - } - if (!node.children) continue; - for (let childId of node.children) { - const child = nodeById.get(childId); - if (!child) continue; - child.parent = node; - } - } - const samples = []; - const sampleTimes = []; - // The first delta is relative to the profile startTime. - // Ref: https://github.com/v8/v8/blob/44bd8fd7/src/inspector/js_protocol.json#L1485 - let elapsed = chromeProfile.timeDeltas[0]; - // Prevents negative time deltas from causing bad data. See - // https://github.com/jlfwong/speedscope/pull/305 for details. - let lastValidElapsed = elapsed; - let lastNodeId = NaN; - // The chrome CPU profile format doesn't collapse identical samples. We'll do that - // here to save a ton of work later doing mergers. - for (let i = 0; i < chromeProfile.samples.length; i++) { - const nodeId = chromeProfile.samples[i]; - if (nodeId != lastNodeId) { - samples.push(nodeId); - if (elapsed < lastValidElapsed) { - sampleTimes.push(lastValidElapsed); - } else { - sampleTimes.push(elapsed); - lastValidElapsed = elapsed; - } + const comma = ','.charCodeAt(0); + const semicolon = ';'.charCodeAt(0); + const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'; + const intToChar = new Uint8Array(64); + const charToInt = new Uint8Array(128); + for (let i = 0; i < chars.length; i++) { + const c = chars.charCodeAt(i); + intToChar[i] = c; + charToInt[c] = i; + } + const td = typeof TextDecoder !== 'undefined' ? new TextDecoder() : typeof Buffer !== 'undefined' ? { + decode(buf) { + const out = Buffer.from(buf.buffer, buf.byteOffset, buf.byteLength); + return out.toString(); + } + } : { + decode(buf) { + let out = ''; + for (let i = 0; i < buf.length; i++) { + out += String.fromCharCode(buf[i]); + } + return out; } - if (i === chromeProfile.samples.length - 1) { - if (!isNaN(lastNodeId)) { - samples.push(lastNodeId); - if (elapsed < lastValidElapsed) { - sampleTimes.push(lastValidElapsed); + }; + function decode(mappings) { + const state = new Int32Array(5); + const decoded = []; + let index = 0; + do { + const semi = indexOf(mappings, index); + const line = []; + let sorted = true; + let lastCol = 0; + state[0] = 0; + for (let i = index; i < semi; i++) { + let seg; + i = decodeInteger(mappings, i, state, 0); + const col = state[0]; + if (col < lastCol) sorted = false; + lastCol = col; + if (hasMoreVlq(mappings, i, semi)) { + i = decodeInteger(mappings, i, state, 1); + i = decodeInteger(mappings, i, state, 2); + i = decodeInteger(mappings, i, state, 3); + if (hasMoreVlq(mappings, i, semi)) { + i = decodeInteger(mappings, i, state, 4); + seg = [col, state[1], state[2], state[3], state[4]]; + } else { + seg = [col, state[1], state[2], state[3]]; + } } else { - sampleTimes.push(elapsed); - lastValidElapsed = elapsed; + seg = [col]; } + line.push(seg); } - } else { - const timeDelta = chromeProfile.timeDeltas[i + 1]; - elapsed += timeDelta; - lastNodeId = nodeId; - } - } - let prevStack = []; - for (let i = 0; i < samples.length; i++) { - const value = sampleTimes[i]; - const nodeId = samples[i]; - let stackTop = nodeById.get(nodeId); - if (!stackTop) continue; - // Find lowest common ancestor of the current stack and the previous one - let lca = null; - // This is O(n^2), but n should be relatively small here (stack height), - // so hopefully this isn't much of a problem - for (lca = stackTop; lca && prevStack.indexOf(lca) === -1; lca = shouldPlaceOnTopOfPreviousStack(lca.callFrame.functionName) ? utils_1.lastOf(prevStack) : lca.parent || null) {} - // Close frames that are no longer open - while (prevStack.length > 0 && utils_1.lastOf(prevStack) != lca) { - const closingNode = prevStack.pop(); - const frame = frameInfoForCallFrame(closingNode.callFrame); - profile.leaveFrame(frame, value); - } - // Open frames that are now becoming open - const toOpen = []; - for (let node = stackTop; node && node != lca && !shouldIgnoreFunction(node.callFrame); - // Place Chrome internal functions on top of the previous call stack - node = shouldPlaceOnTopOfPreviousStack(node.callFrame.functionName) ? utils_1.lastOf(prevStack) : node.parent || null) { - toOpen.push(node); - } - toOpen.reverse(); - for (let node of toOpen) { - profile.enterFrame(frameInfoForCallFrame(node.callFrame), value); - } - prevStack = prevStack.concat(toOpen); - } - // Close frames that are open at the end of the trace - for (let i = prevStack.length - 1; i >= 0; i--) { - profile.leaveFrame(frameInfoForCallFrame(prevStack[i].callFrame), utils_1.lastOf(sampleTimes)); - } - profile.setValueFormatter(new value_formatters_1.TimeFormatter('microseconds')); - return profile.build(); -} -exports.importFromChromeCPUProfile = importFromChromeCPUProfile; -function importFromOldV8CPUProfile(content) { - return importFromChromeCPUProfile(v8cpuFormatter_1.chromeTreeToNodes(content)); -} -exports.importFromOldV8CPUProfile = importFromOldV8CPUProfile; - -/***/ }), - -/***/ 320: -/***/ ((__unused_webpack_module, exports) => { - - - -Object.defineProperty(exports, "__esModule", ({ - value: true -})); -exports.chromeTreeToNodes = void 0; -function treeToArray(root) { - const nodes = []; - function visit(node) { - nodes.push({ - id: node.id, - callFrame: { - columnNumber: 0, - functionName: node.functionName, - lineNumber: node.lineNumber, - scriptId: node.scriptId, - url: node.url - }, - hitCount: node.hitCount, - children: node.children.map(child => child.id) - }); - node.children.forEach(visit); - } - visit(root); - return nodes; -} -function timestampsToDeltas(timestamps, startTime) { - return timestamps.map((timestamp, index) => { - const lastTimestamp = index === 0 ? startTime * 1000000 : timestamps[index - 1]; - return timestamp - lastTimestamp; - }); -} -/** - * Convert the old tree-based format to the new flat-array based format - */ -function chromeTreeToNodes(content) { - // Note that both startTime and endTime are now in microseconds - return { - samples: content.samples, - startTime: content.startTime * 1000000, - endTime: content.endTime * 1000000, - nodes: treeToArray(content.head), - timeDeltas: timestampsToDeltas(content.timestamps, content.startTime) - }; -} -exports.chromeTreeToNodes = chromeTreeToNodes; - -/***/ }), - -/***/ 765: -/***/ ((__unused_webpack_module, exports) => { - - - -Object.defineProperty(exports, "__esModule", ({ - value: true -})); -exports.demangleCpp = void 0; -let cppfilt; -const cache = new Map(); -// This function converts a mangled C++ name such as "__ZNK7Support6ColorFeqERKS0_" -// into a human-readable symbol (in this case "Support::ColorF::==(Support::ColorF&)") -function demangleCpp(name) { - if (name.startsWith('__Z')) { - let result = cache.get(name); - if (result !== undefined) { - name = result; - } else { - if (!cppfilt) { - cppfilt = new Function('exports', code)(); - } - result = cppfilt(name.slice(1)); - result = result === '(null)' ? name : result; - cache.set(name, result); - name = result; - } - } - return name; -} -exports.demangleCpp = demangleCpp; -// This was taken from https://d.fuqu.jp/c++filtjs/ -const code = ` -return function(){function r(r){eval.call(null,r)}function a(r){throw print(r+":\\n"+(new Error).stack),ke=!0,"Assertion: "+r}function e(r,e){r||a("Assertion failed: "+e)}function i(r,a,i,v){function t(r,a){if("string"==a){var e=Oe;return le.stackAlloc(r.length+1),A(r,e),e}return r}function f(r,a){return"string"==a?s(r):r}try{func=ce.Module["_"+r]}catch(r){}e(func,"Cannot call unknown function "+r+" (perhaps LLVM optimizations or closure removed it?)");var _=0,n=v?v.map(function(r){return t(r,i[_++])}):[];return f(func.apply(null,n),a)}function v(r,a,e){return function(){return i(r,a,e,Array.prototype.slice.call(arguments))}}function t(r,e,i,v){switch(i=i||"i8","*"===i[i.length-1]&&(i="i32"),i){case"i1":Ae[r]=e;break;case"i8":Ae[r]=e;break;case"i16":ye[r>>1]=e;break;case"i32":Se[r>>2]=e;break;case"i64":Se[r>>2]=e;break;case"float":Ce[r>>2]=e;break;case"double":ze[0]=e,Se[r>>2]=xe[0],Se[r+4>>2]=xe[1];break;default:a("invalid type for setValue: "+i)}}function f(r,e,i){switch(e=e||"i8","*"===e[e.length-1]&&(e="i32"),e){case"i1":return Ae[r];case"i8":return Ae[r];case"i16":return ye[r>>1];case"i32":return Se[r>>2];case"i64":return Se[r>>2];case"float":return Ce[r>>2];case"double":return xe[0]=Se[r>>2],xe[1]=Se[r+4>>2],ze[0];default:a("invalid type for setValue: "+e)}return null}function _(r,a,e){var i,v;"number"==typeof r?(i=!0,v=r):(i=!1,v=r.length);var f="string"==typeof a?a:null,_=[Jr,le.stackAlloc,le.staticAlloc][void 0===e?we:e](Math.max(v,f?1:a.length));if(i)return Fa(_,0,v),_;for(var s,n=0;n>12<<12}function l(){for(;Le<=Ie;)Le=o(2*Le);var r=Ae,a=new ArrayBuffer(Le);Ae=new Int8Array(a),ye=new Int16Array(a),Se=new Int32Array(a),ge=new Uint8Array(a),me=new Uint16Array(a),Me=new Uint32Array(a),Ce=new Float32Array(a),Re=new Float64Array(a),Ae.set(r)}function b(r){for(;r.length>0;){var a=r.shift(),e=a.func;"number"==typeof e&&(e=pe[e]),e(void 0===a.arg?null:a.arg)}}function k(){b(Ve)}function u(){b(Be),be.print()}function c(r,a){return Array.prototype.slice.call(Ae.subarray(r,r+a))}function h(r,a){for(var e=new Uint8Array(a),i=0;i255&&(v&=255),e.push(v),i+=1}return a||e.push(0),e}function E(r){for(var a=[],e=0;e255&&(i&=255),a.push(String.fromCharCode(i))}return a.join("")}function A(r,a,e){for(var i=0;i255&&(v&=255),Ae[a+i]=v,i+=1}e||(Ae[a+i]=0)}function g(r,a,e,i){return r>=0?r:a<=32?2*Math.abs(1<=v&&(a<=32||r>v)&&(r=-2*v+r),r}function m(r,a,e){if(0==(0|r)|0==(0|a)|0==(0|e))var i=0;else{Se[r>>2]=0,Se[r+4>>2]=a,Se[r+8>>2]=e;var i=1}var i;return i}function S(r,a,e){if(0==(0|r)|(0|a)<0|0==(0|e))var i=0;else{Se[r>>2]=41,Se[r+4>>2]=a,Se[r+8>>2]=e;var i=1}var i;return i}function M(r,a,e){if(0==(0|r)|0==(0|e))var i=0;else{Se[r>>2]=6,Se[r+4>>2]=a,Se[r+8>>2]=e;var i=1}var i;return i}function C(r,a,e){if(0==(0|r)|0==(0|e))var i=0;else{Se[r>>2]=7,Se[r+4>>2]=a,Se[r+8>>2]=e;var i=1}var i;return i}function R(r,a){var e,i=0==(0|a);do if(i)var v=0;else{var e=(r+32|0)>>2,t=Se[e];if((0|t)>=(0|Se[r+36>>2])){var v=0;break}var f=(t<<2)+Se[r+28>>2]|0;Se[f>>2]=a;var _=Se[e]+1|0;Se[e]=_;var v=1}while(0);var v;return v}function T(r,a){var e,e=(r+12|0)>>2,i=Se[e],v=i+1|0;Se[e]=v;var t=Ae[i]<<24>>24==95;do if(t){var f=i+2|0;if(Se[e]=f,Ae[v]<<24>>24!=90){var _=0;break}var s=O(r,a),_=s}else var _=0;while(0);var _;return _}function O(r,a){var e=r+12|0,i=Ae[Se[e>>2]];r:do if(i<<24>>24==71||i<<24>>24==84)var v=Tr(r),t=v;else{var f=Ar(r),_=0==(0|f)|0==(0|a);do if(!_){if(0!=(1&Se[r+8>>2]|0))break;var s=Me[f>>2],n=(s-25|0)>>>0<3;a:do if(n)for(var o=f;;){var o,l=Me[o+4>>2],b=Me[l>>2];if((b-25|0)>>>0>=3){var k=l,u=b;break a}var o=l}else var k=f,u=s;while(0);var u,k;if(2!=(0|u)){var t=k;break r}var c=k+8|0,h=Me[c>>2],d=(Se[h>>2]-25|0)>>>0<3;a:do if(d)for(var w=h;;){var w,p=Me[w+4>>2];if((Se[p>>2]-25|0)>>>0>=3){var E=p;break a}var w=p}else var E=h;while(0);var E;Se[c>>2]=E;var t=k;break r}while(0);var A=Ae[Se[e>>2]];if(A<<24>>24==0||A<<24>>24==69){var t=f;break}var g=Or(f),y=Sr(r,g),m=D(r,3,f,y),t=m}while(0);var t;return t}function N(r){var a,e,i=Oe;Oe+=4;var v=i,e=v>>2,a=(r+12|0)>>2,t=Me[a],f=Ae[t],_=f<<24>>24;r:do if(f<<24>>24==114||f<<24>>24==86||f<<24>>24==75){var s=I(r,v,0);if(0==(0|s)){var n=0;break}var o=N(r);Se[s>>2]=o;var l=Se[e],b=R(r,l);if(0==(0|b)){var n=0;break}var n=Se[e]}else{do{if(97==(0|_)||98==(0|_)||99==(0|_)||100==(0|_)||101==(0|_)||102==(0|_)||103==(0|_)||104==(0|_)||105==(0|_)||106==(0|_)||108==(0|_)||109==(0|_)||110==(0|_)||111==(0|_)||115==(0|_)||116==(0|_)||118==(0|_)||119==(0|_)||120==(0|_)||121==(0|_)||122==(0|_)){var k=ai+20*(_-97)|0,u=P(r,k);Se[e]=u;var c=r+48|0,h=Se[c>>2]+Se[Se[u+4>>2]+4>>2]|0;Se[c>>2]=h;var d=Se[a]+1|0;Se[a]=d;var n=u;break r}if(117==(0|_)){Se[a]=t+1|0;var w=L(r),p=D(r,34,w,0);Se[e]=p;var E=p}else if(70==(0|_)){var A=F(r);Se[e]=A;var E=A}else if(48==(0|_)||49==(0|_)||50==(0|_)||51==(0|_)||52==(0|_)||53==(0|_)||54==(0|_)||55==(0|_)||56==(0|_)||57==(0|_)||78==(0|_)||90==(0|_)){var g=X(r);Se[e]=g;var E=g}else if(65==(0|_)){var y=j(r);Se[e]=y;var E=y}else if(77==(0|_)){var m=U(r);Se[e]=m;var E=m}else if(84==(0|_)){var S=x(r);if(Se[e]=S,Ae[Se[a]]<<24>>24!=73){var E=S;break}var M=R(r,S);if(0==(0|M)){var n=0;break r}var C=Se[e],T=z(r),O=D(r,4,C,T);Se[e]=O;var E=O}else if(83==(0|_)){var B=ge[t+1|0];if((B-48&255&255)<10|B<<24>>24==95|(B-65&255&255)<26){var H=V(r,0);if(Se[e]=H,Ae[Se[a]]<<24>>24!=73){var n=H;break r}var K=z(r),Y=D(r,4,H,K);Se[e]=Y;var E=Y}else{var G=X(r);if(Se[e]=G,0==(0|G)){var E=0;break}if(21==(0|Se[G>>2])){var n=G;break r}var E=G}}else if(80==(0|_)){Se[a]=t+1|0;var W=N(r),Z=D(r,29,W,0);Se[e]=Z;var E=Z}else if(82==(0|_)){Se[a]=t+1|0;var Q=N(r),q=D(r,30,Q,0);Se[e]=q;var E=q}else if(67==(0|_)){Se[a]=t+1|0;var $=N(r),J=D(r,31,$,0);Se[e]=J;var E=J}else if(71==(0|_)){Se[a]=t+1|0;var rr=N(r),ar=D(r,32,rr,0);Se[e]=ar;var E=ar}else{if(85!=(0|_)){var n=0;break r}Se[a]=t+1|0;var er=L(r);Se[e]=er;var ir=N(r),vr=Se[e],tr=D(r,28,ir,vr);Se[e]=tr;var E=tr}}while(0);var E,fr=R(r,E);if(0==(0|fr)){var n=0;break}var n=Se[e]}while(0);var n;return Oe=i,n}function I(r,a,e){for(var i,v=r+12|0,t=0!=(0|e),f=t?25:22,i=(r+48|0)>>2,_=t?26:23,s=t?27:24,n=a;;){var n,o=Se[v>>2],l=Ae[o];if(l<<24>>24!=114&&l<<24>>24!=86&&l<<24>>24!=75){var b=n;break}var k=o+1|0;if(Se[v>>2]=k,l<<24>>24==114){var u=Se[i]+9|0;Se[i]=u;var c=f}else if(l<<24>>24==86){var h=Se[i]+9|0;Se[i]=h;var c=_}else{var d=Se[i]+6|0;Se[i]=d;var c=s}var c,w=D(r,c,0,0);if(Se[n>>2]=w,0==(0|w)){var b=0;break}var n=w+4|0}var b;return b}function P(r,a){var e=0==(0|a);do if(e)var i=0;else{var v=J(r);if(0==(0|v)){var i=0;break}Se[v>>2]=33,Se[v+4>>2]=a;var i=v}while(0);var i;return i}function D(r,a,e,i){var v,t;do{if(1==(0|a)||2==(0|a)||3==(0|a)||4==(0|a)||10==(0|a)||28==(0|a)||37==(0|a)||43==(0|a)||44==(0|a)||45==(0|a)||46==(0|a)||47==(0|a)||48==(0|a)||49==(0|a)||50==(0|a)){if(0==(0|e)|0==(0|i)){var f=0;t=7;break}t=5;break}if(8==(0|a)||9==(0|a)||11==(0|a)||12==(0|a)||13==(0|a)||14==(0|a)||15==(0|a)||16==(0|a)||17==(0|a)||18==(0|a)||19==(0|a)||20==(0|a)||29==(0|a)||30==(0|a)||31==(0|a)||32==(0|a)||34==(0|a)||38==(0|a)||39==(0|a)||42==(0|a)){if(0==(0|e)){var f=0;t=7;break}t=5;break}if(36==(0|a)){if(0==(0|i)){var f=0;t=7;break}t=5;break}if(35==(0|a)||22==(0|a)||23==(0|a)||24==(0|a)||25==(0|a)||26==(0|a)||27==(0|a))t=5;else{var f=0;t=7}}while(0);do if(5==t){var _=J(r),v=_>>2;if(0==(0|_)){var f=0;break}Se[v]=a,Se[v+1]=e,Se[v+2]=i;var f=_}while(0);var f;return f}function L(r){var a=sr(r);if((0|a)<1)var e=0;else{var i=Rr(r,a);Se[r+44>>2]=i;var e=i}var e;return e}function F(r){var a,a=(r+12|0)>>2,e=Se[a],i=e+1|0;if(Se[a]=i,Ae[e]<<24>>24==70){if(Ae[i]<<24>>24==89){var v=e+2|0;Se[a]=v}var t=Sr(r,1),f=Se[a],_=f+1|0;Se[a]=_;var s=Ae[f]<<24>>24==69?t:0,n=s}else var n=0;var n;return n}function X(r){var a=Ar(r);return a}function j(r){var a,a=(r+12|0)>>2,e=Se[a],i=e+1|0;Se[a]=i;var v=Ae[e]<<24>>24==65;do if(v){var t=Ae[i];if(t<<24>>24==95)var f=0;else if((t-48&255&255)<10){for(var _=i;;){var _,s=_+1|0;if(Se[a]=s,(Ae[s]-48&255&255)>=10)break;var _=s}var n=s-i|0,o=lr(r,i,n);if(0==(0|o)){var l=0;break}var f=o}else{var b=nr(r);if(0==(0|b)){var l=0;break}var f=b}var f,k=Se[a],u=k+1|0;if(Se[a]=u,Ae[k]<<24>>24!=95){var l=0;break}var c=N(r),h=D(r,36,f,c),l=h}else var l=0;while(0);var l;return l}function U(r){var a=Oe;Oe+=4;var e=a,i=r+12|0,v=Se[i>>2],t=v+1|0;Se[i>>2]=t;var f=Ae[v]<<24>>24==77;r:do if(f){var _=N(r),s=I(r,e,1);if(0==(0|s)){var n=0;break}var o=N(r);Se[s>>2]=o;var l=(0|s)==(0|e);do if(!l){if(35==(0|Se[o>>2]))break;var b=Se[e>>2],k=R(r,b);if(0==(0|k)){var n=0;break r}}while(0);var u=Se[e>>2],c=D(r,37,_,u),n=c}else var n=0;while(0);var n;return Oe=a,n}function x(r){var a,a=(r+12|0)>>2,e=Se[a],i=e+1|0;Se[a]=i;var v=Ae[e]<<24>>24==84;do if(v){if(Ae[i]<<24>>24==95)var t=0,f=i;else{var _=sr(r);if((0|_)<0){var s=0;break}var t=_+1|0,f=Se[a]}var f,t;if(Se[a]=f+1|0,Ae[f]<<24>>24!=95){var s=0;break}var n=r+40|0,o=Se[n>>2]+1|0;Se[n>>2]=o;var l=Er(r,t),s=l}else var s=0;while(0);var s;return s}function z(r){var a,e=Oe;Oe+=4;var i=e,v=r+44|0,t=Se[v>>2],a=(r+12|0)>>2,f=Se[a],_=f+1|0;Se[a]=_;var s=Ae[f]<<24>>24==73;r:do if(s){Se[i>>2]=0;for(var n=i;;){var n,o=_r(r);if(0==(0|o)){var l=0;break r}var b=D(r,39,o,0);if(Se[n>>2]=b,0==(0|b)){var l=0;break r}var k=Se[a];if(Ae[k]<<24>>24==69)break;var n=b+8|0}var u=k+1|0;Se[a]=u,Se[v>>2]=t;var l=Se[i>>2]}else var l=0;while(0);var l;return Oe=e,l}function V(r,a){var e,e=(r+12|0)>>2,i=Se[e],v=i+1|0;Se[e]=v;var t=Ae[i]<<24>>24==83;r:do if(t){var f=i+2|0;Se[e]=f;var _=ge[v];if(_<<24>>24==95)var s=0;else{if(!((_-48&255&255)<10|(_-65&255&255)<26)){var n=8&Se[r+8>>2],o=n>>>3,l=0!=(0|n)|0==(0|a);do if(l)var b=o;else{if((Ae[f]-67&255&255)>=2){var b=o;break}var b=1}while(0);for(var b,k=0|ei;;){var k;if(k>>>0>=(ei+196|0)>>>0){var u=0;break r}if(_<<24>>24==Ae[0|k]<<24>>24)break;var k=k+28|0}var c=Se[k+20>>2];if(0!=(0|c)){var h=Se[k+24>>2],d=fr(r,c,h);Se[r+44>>2]=d}if(0==(0|b))var w=k+8|0,p=k+4|0;else var w=k+16|0,p=k+12|0;var p,w,E=Se[w>>2],A=Se[p>>2],g=r+48|0,y=Se[g>>2]+E|0;Se[g>>2]=y;var m=fr(r,A,E),u=m;break}for(var S=_,M=0,C=f;;){var C,M,S;if((S-48&255&255)<10)var R=36*M-48|0;else{if((S-65&255&255)>=26){var u=0;break r}var R=36*M-55|0}var R,T=(S<<24>>24)+R|0;if((0|T)<0){var u=0;break r}var O=C+1|0;Se[e]=O;var N=ge[C];if(N<<24>>24==95)break;var S=N,M=T,C=O}var s=T+1|0}var s;if((0|s)>=(0|Se[r+32>>2])){var u=0;break}var I=r+40|0,P=Se[I>>2]+1|0;Se[I>>2]=P;var u=Se[Se[r+28>>2]+(s<<2)>>2]}else var u=0;while(0);var u;return u}function B(r,a,e,i){var v,t,f,_,s=Oe;Oe+=28;var n,o=s,_=o>>2;Se[_]=r;var l=e+1|0,f=(o+12|0)>>2;Se[f]=l;var b=Jr(l),t=(o+4|0)>>2;if(Se[t]=b,0==(0|b))var k=0,u=1;else{var v=(o+8|0)>>2;Se[v]=0,Se[_+4]=0,Se[_+5]=0;var c=o+24|0;Se[c>>2]=0,H(o,a);var h=Me[t],d=0==(0|h);do{if(!d){var w=Me[v];if(w>>>0>=Me[f]>>>0){n=5;break}Se[v]=w+1|0,Ae[h+w|0]=0,n=6;break}n=5}while(0);5==n&&Y(o,0);var p=Se[t],E=0==(0|p)?Se[c>>2]:Se[f],k=p,u=E}var u,k;return Se[i>>2]=u,Oe=s,k}function H(r,a){var e,i,v,t,f,_,s,n,o,l,b,k,u,c,h,d,w,p,E,A,g,y,m,S,M,C,R,T,O,N,I,P,D,L,F,X,j,U,x,z,V,B,K,G,W,J,vr,tr,fr,_r,sr,nr,or,lr,br,kr,ur,cr,hr,dr,wr,pr=a>>2,Er=r>>2,Ar=Oe;Oe+=184;var gr,yr=Ar,wr=yr>>2,mr=Ar+64,dr=mr>>2,Sr=Ar+72,Mr=Ar+88,Cr=Ar+104,hr=Cr>>2,Rr=Ar+168,Tr=0==(0|a);r:do if(Tr)Z(r);else{var cr=(r+4|0)>>2,Or=Me[cr];if(0==(0|Or))break;var Nr=0|a,Ir=Me[Nr>>2];a:do{if(0==(0|Ir)){if(0!=(4&Se[Er]|0)){var Pr=Se[pr+1],Dr=Se[pr+2];q(r,Pr,Dr);break r}var ur=(r+8|0)>>2,Lr=Me[ur],Fr=a+8|0,Xr=Me[Fr>>2];if((Xr+Lr|0)>>>0>Me[Er+3]>>>0){var jr=Se[pr+1];Q(r,jr,Xr);break r}var Ur=Or+Lr|0,xr=Se[pr+1];Pa(Ur,xr,Xr,1);var zr=Se[ur]+Se[Fr>>2]|0;Se[ur]=zr;break r}if(1==(0|Ir)||2==(0|Ir)){var Vr=Se[pr+1];H(r,Vr);var Br=0==(4&Se[Er]|0),Hr=Me[cr],Kr=0!=(0|Hr);e:do if(Br){do if(Kr){var kr=(r+8|0)>>2,Yr=Me[kr];if((Yr+2|0)>>>0>Me[Er+3]>>>0)break;var Gr=Hr+Yr|0;oe=14906,Ae[Gr]=255&oe,oe>>=8,Ae[Gr+1]=255&oe;var Wr=Se[kr]+2|0;Se[kr]=Wr;break e}while(0);Q(r,0|He.__str120,2)}else{do if(Kr){var Zr=r+8|0,Qr=Me[Zr>>2];if(Qr>>>0>=Me[Er+3]>>>0)break;Se[Zr>>2]=Qr+1|0,Ae[Hr+Qr|0]=46;break e}while(0);Y(r,46)}while(0);var qr=Se[pr+2];H(r,qr);break r}if(3==(0|Ir)){for(var br=(r+20|0)>>2,$r=Me[br],lr=(r+16|0)>>2,Jr=a,ra=0,aa=$r;;){var aa,ra,Jr,ea=Me[Jr+4>>2];if(0==(0|ea)){var ia=ra,va=0;gr=33;break}if(ra>>>0>3){Z(r);break r}var ta=(ra<<4)+yr|0;Se[ta>>2]=aa,Se[br]=ta,Se[((ra<<4)+4>>2)+wr]=ea,Se[((ra<<4)+8>>2)+wr]=0;var fa=Me[lr];Se[((ra<<4)+12>>2)+wr]=fa;var _a=ra+1|0,sa=0|ea,na=Me[sa>>2];if((na-25|0)>>>0>=3){gr=25;break}var Jr=ea,ra=_a,aa=ta}e:do if(25==gr){if(4==(0|na)){Se[dr]=fa,Se[lr]=mr,Se[dr+1]=ea;var oa=Se[sa>>2],la=mr}else var oa=na,la=fa;var la,oa;if(2!=(0|oa)){var ia=_a,va=sa;break}for(var ba=_a,ka=ea+8|0;;){var ka,ba,ua=Me[ka>>2];if((Se[ua>>2]-25|0)>>>0>=3){var ia=ba,va=sa;break e}if(ba>>>0>3)break;var ca=(ba<<4)+yr|0,ha=ba-1|0,da=(ha<<4)+yr|0,or=ca>>2,nr=da>>2;Se[or]=Se[nr],Se[or+1]=Se[nr+1],Se[or+2]=Se[nr+2],Se[or+3]=Se[nr+3],Se[ca>>2]=da,Se[br]=ca,Se[((ha<<4)+4>>2)+wr]=ua,Se[((ha<<4)+8>>2)+wr]=0,Se[((ha<<4)+12>>2)+wr]=la;var ba=ba+1|0,ka=ua+4|0}Z(r);break r}while(0);var va,ia,wa=Se[pr+2];if(H(r,wa),4==(0|Se[va>>2])){var pa=Se[dr];Se[lr]=pa}var Ea=0==(0|ia);e:do if(!Ea)for(var Aa=r+8|0,ga=r+12|0,ya=ia;;){var ya,ma=ya-1|0;if(0==(0|Se[((ma<<4)+8>>2)+wr])){var Sa=Me[cr],Ma=0==(0|Sa);do{if(!Ma){var Ca=Me[Aa>>2];if(Ca>>>0>=Me[ga>>2]>>>0){gr=41;break}Se[Aa>>2]=Ca+1|0,Ae[Sa+Ca|0]=32,gr=42;break}gr=41}while(0);41==gr&&Y(r,32);var Ra=Se[((ma<<4)+4>>2)+wr];$(r,Ra)}if(0==(0|ma))break e;var ya=ma}while(0);Se[br]=$r;break r}if(4==(0|Ir)){var sr=(r+20|0)>>2,Ta=Se[sr];Se[sr]=0;var Oa=Se[pr+1];H(r,Oa);var Na=Me[cr],Ia=0==(0|Na);do{if(!Ia){var _r=(r+8|0)>>2,Da=Me[_r],La=0==(0|Da);do if(!La){if(Ae[Na+(Da-1)|0]<<24>>24!=60)break;Da>>>0>>0?(Se[_r]=Da+1|0,Ae[Na+Da|0]=32):Y(r,32)}while(0);var Fa=Me[cr];if(0==(0|Fa)){gr=54;break}var Xa=Me[_r];if(Xa>>>0>=Me[Er+3]>>>0){gr=54;break}Se[_r]=Xa+1|0,Ae[Fa+Xa|0]=60,gr=55;break}gr=54}while(0);54==gr&&Y(r,60);var ja=Se[pr+2];H(r,ja);var Ua=Me[cr],xa=0==(0|Ua);do{if(!xa){var fr=(r+8|0)>>2,za=Me[fr],Va=0==(0|za);do if(!Va){if(Ae[Ua+(za-1)|0]<<24>>24!=62)break;za>>>0>>0?(Se[fr]=za+1|0,Ae[Ua+za|0]=32):Y(r,32)}while(0);var Ba=Me[cr];if(0==(0|Ba)){gr=64;break}var Ha=Me[fr];if(Ha>>>0>=Me[Er+3]>>>0){gr=64;break}Se[fr]=Ha+1|0,Ae[Ba+Ha|0]=62,gr=65;break}gr=64}while(0);64==gr&&Y(r,62),Se[sr]=Ta;break r}if(5==(0|Ir)){var tr=(r+16|0)>>2,Ka=Me[tr];if(0==(0|Ka)){Z(r);break r}for(var Ya=Se[pr+1],Ga=Se[Ka+4>>2];;){var Ga,Ya,Wa=Se[Ga+8>>2];if(0==(0|Wa))break;if(39!=(0|Se[Wa>>2])){Z(r);break r}if((0|Ya)<1){if(0!=(0|Ya))break;var Za=Se[Ka>>2];Se[tr]=Za;var Qa=Se[Wa+4>>2];H(r,Qa),Se[tr]=Ka;break r}var Ya=Ya-1|0,Ga=Wa}Z(r);break r}if(6==(0|Ir)){var qa=Se[pr+2];H(r,qa);break r}if(7==(0|Ir)){var $a=r+8|0,Ja=Me[$a>>2];Ja>>>0>>0?(Se[$a>>2]=Ja+1|0,Ae[Or+Ja|0]=126):Y(r,126);var re=Se[pr+2];H(r,re);break r}if(8==(0|Ir)){var vr=(r+8|0)>>2,ae=Me[vr];if((ae+11|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str121,11);else{for(var ee=Or+ae|0,ie=0|He.__str121,ve=ee,te=ie+11;ie>2,se=Me[J];if((se+8|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str122,8);else{var ne=Or+se|0,le=0|ne;oe=542397526,Ae[le]=255&oe,oe>>=8,Ae[le+1]=255&oe,oe>>=8,Ae[le+2]=255&oe,oe>>=8,Ae[le+3]=255&oe;var be=ne+4|0;oe=544370534,Ae[be]=255&oe,oe>>=8,Ae[be+1]=255&oe,oe>>=8,Ae[be+2]=255&oe,oe>>=8,Ae[be+3]=255&oe;var ke=Se[J]+8|0;Se[J]=ke}var ue=Se[pr+1];H(r,ue);break r}if(10==(0|Ir)){var W=(r+8|0)>>2,ce=Me[W],he=r+12|0;if((ce+24|0)>>>0>Me[he>>2]>>>0)Q(r,0|He.__str123,24);else{var de=Or+ce|0;Pa(de,0|He.__str123,24,1);var we=Se[W]+24|0;Se[W]=we}var pe=Se[pr+1];H(r,pe);var Ee=Me[cr],ge=0==(0|Ee);do{if(!ge){var ye=Me[W];if((ye+4|0)>>>0>Me[he>>2]>>>0){gr=96;break}var me=Ee+ye|0;oe=762210605,Ae[me]=255&oe,oe>>=8,Ae[me+1]=255&oe,oe>>=8,Ae[me+2]=255&oe,oe>>=8,Ae[me+3]=255&oe;var Ce=Se[W]+4|0;Se[W]=Ce,gr=97;break}gr=96}while(0);96==gr&&Q(r,0|He.__str124,4);var Re=Se[pr+2];H(r,Re);break r}if(11==(0|Ir)){var G=(r+8|0)>>2,Te=Me[G];if((Te+13|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str125,13);else{for(var Ne=Or+Te|0,ie=0|He.__str125,ve=Ne,te=ie+13;ie>2,De=Me[K];if((De+18|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str126,18);else{for(var Le=Or+De|0,ie=0|He.__str126,ve=Le,te=ie+18;ie>2,je=Me[B];if((je+16|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str127,16);else{for(var Ue=Or+je|0,ie=0|He.__str127,ve=Ue,te=ie+16;ie>2,Ve=Me[V];if((Ve+21|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str128,21);else{var Be=Or+Ve|0;Pa(Be,0|He.__str128,21,1);var Ke=Se[V]+21|0;Se[V]=Ke}var Ye=Se[pr+1];H(r,Ye);break r}if(15==(0|Ir)){var z=(r+8|0)>>2,Ge=Me[z];if((Ge+17|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str129,17);else{for(var We=Or+Ge|0,ie=0|He.__str129,ve=We,te=ie+17;ie>2,qe=Me[x];if((qe+26|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str130,26);else{var $e=Or+qe|0;Pa($e,0|He.__str130,26,1);var Je=Se[x]+26|0;Se[x]=Je}var ri=Se[pr+1];H(r,ri);break r}if(17==(0|Ir)){var U=(r+8|0)>>2,ai=Me[U];if((ai+15|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str131,15);else{for(var ei=Or+ai|0,ie=0|He.__str131,ve=ei,te=ie+15;ie>2,ti=Me[j];if((ti+19|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str132,19);else{for(var fi=Or+ti|0,ie=0|He.__str132,ve=fi,te=ie+19;ie>2,ni=Me[X];if((ni+24|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str133,24);else{var oi=Or+ni|0;Pa(oi,0|He.__str133,24,1);var li=Se[X]+24|0;Se[X]=li}var bi=Se[pr+1];H(r,bi);break r}if(20==(0|Ir)){var F=(r+8|0)>>2,ki=Me[F];if((ki+17|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str134,17);else{for(var ui=Or+ki|0,ie=0|He.__str134,ve=ui,te=ie+17;ie>2,di=Me[L],wi=a+8|0,pi=Me[wi>>2];if((pi+di|0)>>>0>Me[Er+3]>>>0){var Ei=Se[pr+1];Q(r,Ei,pi);break r}var Ai=Or+di|0,gi=Se[pr+1];Pa(Ai,gi,pi,1);var yi=Se[L]+Se[wi>>2]|0;Se[L]=yi;break r}if(22==(0|Ir)||23==(0|Ir)||24==(0|Ir)){for(var mi=r+20|0;;){var mi,Si=Me[mi>>2];if(0==(0|Si))break a;if(0==(0|Se[Si+8>>2])){var Mi=Me[Se[Si+4>>2]>>2];if((Mi-22|0)>>>0>=3)break a;if((0|Mi)==(0|Ir))break}var mi=0|Si}var Ci=Se[pr+1];H(r,Ci);break r}if(25!=(0|Ir)&&26!=(0|Ir)&&27!=(0|Ir)&&28!=(0|Ir)&&29!=(0|Ir)&&30!=(0|Ir)&&31!=(0|Ir)&&32!=(0|Ir)){if(33==(0|Ir)){var D=(r+8|0)>>2,Ri=Me[D],P=(a+4|0)>>2,I=Me[P]>>2;if(0==(4&Se[Er]|0)){var Ti=Me[I+1];if((Ti+Ri|0)>>>0>Me[Er+3]>>>0){var Oi=Se[I];Q(r,Oi,Ti);break r}var Ni=Or+Ri|0,Ii=Se[I];Pa(Ni,Ii,Ti,1);var Pi=Se[D]+Se[Se[P]+4>>2]|0;Se[D]=Pi;break r}var Di=Me[I+3];if((Di+Ri|0)>>>0>Me[Er+3]>>>0){var Li=Se[I+2];Q(r,Li,Di);break r}var Fi=Or+Ri|0,Xi=Se[I+2];Pa(Fi,Xi,Di,1);var ji=Se[D]+Se[Se[P]+12>>2]|0;Se[D]=ji;break r}if(34==(0|Ir)){var Ui=Se[pr+1];H(r,Ui);break r}if(35==(0|Ir)){var N=(0|r)>>2;if(0!=(32&Se[N]|0)){var xi=Se[Er+5];rr(r,a,xi)}var zi=a+4|0,Vi=0==(0|Se[zi>>2]);e:do if(!Vi){var O=(r+20|0)>>2,Bi=Se[O],Hi=0|Mr;Se[Hi>>2]=Bi,Se[O]=Mr,Se[Mr+4>>2]=a;var Ki=Mr+8|0;Se[Ki>>2]=0;var Yi=Se[Er+4];Se[Mr+12>>2]=Yi;var Gi=Se[zi>>2];H(r,Gi);var Wi=Se[Hi>>2];if(Se[O]=Wi,0!=(0|Se[Ki>>2]))break r;if(0!=(32&Se[N]|0))break;var Zi=Me[cr],Qi=0==(0|Zi);do if(!Qi){var qi=r+8|0,$i=Me[qi>>2];if($i>>>0>=Me[Er+3]>>>0)break;Se[qi>>2]=$i+1|0,Ae[Zi+$i|0]=32;break e}while(0);Y(r,32)}while(0);if(0!=(32&Se[N]|0))break r;var Ji=Se[Er+5];rr(r,a,Ji);break r}if(36==(0|Ir)){var T=(r+20|0)>>2,rv=Me[T],av=0|Cr;Se[hr]=rv,Se[T]=av,Se[hr+1]=a;var ev=Cr+8|0;Se[ev>>2]=0;var iv=Se[Er+4];Se[hr+3]=iv;for(var vv=rv,tv=1;;){var tv,vv;if(0==(0|vv))break;if((Se[Se[vv+4>>2]>>2]-22|0)>>>0>=3)break;var fv=vv+8|0;if(0==(0|Se[fv>>2])){if(tv>>>0>3){Z(r);break r}var _v=(tv<<4)+Cr|0,R=_v>>2,C=vv>>2;Se[R]=Se[C],Se[R+1]=Se[C+1],Se[R+2]=Se[C+2],Se[R+3]=Se[C+3];var sv=Se[T];Se[_v>>2]=sv,Se[T]=_v,Se[fv>>2]=1;var nv=tv+1|0}else var nv=tv;var nv,vv=Se[vv>>2],tv=nv}var ov=Se[pr+2];if(H(r,ov),Se[T]=rv,0!=(0|Se[ev>>2]))break r;if(tv>>>0>1){for(var lv=tv;;){var lv,bv=lv-1|0,kv=Se[((bv<<4)+4>>2)+hr];if($(r,kv),bv>>>0<=1)break;var lv=bv}var uv=Se[T]}else var uv=rv;var uv;ar(r,a,uv);break r}if(37==(0|Ir)){var M=(r+20|0)>>2,cv=Se[M],hv=0|Rr;Se[hv>>2]=cv,Se[M]=Rr,Se[Rr+4>>2]=a;var dv=Rr+8|0;Se[dv>>2]=0;var wv=Se[Er+4];Se[Rr+12>>2]=wv;var pv=a+4|0,Ev=Se[pr+2];H(r,Ev);var Av=0==(0|Se[dv>>2]);e:do if(Av){var gv=Me[cr],yv=0==(0|gv);do{if(!yv){var mv=r+8|0,Sv=Me[mv>>2];if(Sv>>>0>=Me[Er+3]>>>0){gr=187;break}Se[mv>>2]=Sv+1|0,Ae[gv+Sv|0]=32,gr=188;break}gr=187}while(0);187==gr&&Y(r,32);var Mv=Se[pv>>2];H(r,Mv);var Cv=Me[cr],Rv=0==(0|Cv);do if(!Rv){var S=(r+8|0)>>2,Tv=Me[S];if((Tv+3|0)>>>0>Me[Er+3]>>>0)break;var Ov=Cv+Tv|0;Ae[Ov]=Ae[0|He.__str135],Ae[Ov+1]=Ae[(0|He.__str135)+1],Ae[Ov+2]=Ae[(0|He.__str135)+2];var Nv=Se[S]+3|0;Se[S]=Nv;break e}while(0);Q(r,0|He.__str135,3)}while(0);var Iv=Se[hv>>2];Se[M]=Iv;break r}if(38==(0|Ir)||39==(0|Ir)){var Pv=Se[pr+1];H(r,Pv);var Dv=a+8|0;if(0==(0|Se[Dv>>2]))break r;var Lv=Me[cr],Fv=0==(0|Lv);do{if(!Fv){var m=(r+8|0)>>2,Xv=Me[m];if((Xv+2|0)>>>0>Me[Er+3]>>>0){gr=197;break}var jv=Lv+Xv|0;oe=8236,Ae[jv]=255&oe,oe>>=8,Ae[jv+1]=255&oe;var Uv=Se[m]+2|0;Se[m]=Uv,gr=198;break}gr=197}while(0);197==gr&&Q(r,0|He.__str136,2);var xv=Se[Dv>>2];H(r,xv);break r}if(40==(0|Ir)){var y=(r+8|0)>>2,zv=Me[y],g=(r+12|0)>>2;if((zv+8|0)>>>0>Me[g]>>>0)Q(r,0|He.__str137,8);else{var Vv=Or+zv|0,le=0|Vv;oe=1919250543,Ae[le]=255&oe,oe>>=8,Ae[le+1]=255&oe,oe>>=8,Ae[le+2]=255&oe,oe>>=8,Ae[le+3]=255&oe;var be=Vv+4|0;oe=1919906913,Ae[be]=255&oe,oe>>=8,Ae[be+1]=255&oe,oe>>=8,Ae[be+2]=255&oe,oe>>=8,Ae[be+3]=255&oe;var Bv=Se[y]+8|0;Se[y]=Bv}var A=(a+4|0)>>2,Hv=(Ae[Se[Se[A]+4>>2]]-97&255&255)<26;e:do if(Hv){var Kv=Me[cr],Yv=0==(0|Kv);do if(!Yv){var Gv=Me[y];if(Gv>>>0>=Me[g]>>>0)break;Se[y]=Gv+1|0,Ae[Kv+Gv|0]=32;break e}while(0);Y(r,32)}while(0);var Wv=Me[cr],Zv=0==(0|Wv);do{if(!Zv){var Qv=Me[y],qv=Me[A],$v=Me[qv+8>>2];if(($v+Qv|0)>>>0>Me[g]>>>0){var Jv=qv,rt=$v;break}var at=Wv+Qv|0,et=Se[qv+4>>2];Pa(at,et,$v,1);var it=Se[y]+Se[Se[A]+8>>2]|0;Se[y]=it;break r}var vt=Me[A],Jv=vt,rt=Se[vt+8>>2]}while(0);var rt,Jv,tt=Se[Jv+4>>2];Q(r,tt,rt);break r}if(41==(0|Ir)){var E=(r+8|0)>>2,ft=Me[E];if((ft+9|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str10180,9);else{for(var _t=Or+ft|0,ie=0|He.__str10180,ve=_t,te=ie+9;ie>2,ot=Me[p];if((ot+9|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str10180,9);else{for(var lt=Or+ot|0,ie=0|He.__str10180,ve=lt,te=ie+9;ie>2],ct=42==(0|Se[ut>>2]);e:do if(ct){var w=(r+8|0)>>2,ht=Me[w],dt=r+12|0;ht>>>0>2]>>>0?(Se[w]=ht+1|0,Ae[Or+ht|0]=40):Y(r,40);var wt=Se[kt>>2];er(r,wt);var pt=Me[cr],Et=0==(0|pt);do if(!Et){var At=Me[w];if(At>>>0>=Me[dt>>2]>>>0)break;Se[w]=At+1|0,Ae[pt+At|0]=41;break e}while(0);Y(r,41)}else ir(r,ut);while(0);var gt=Me[cr],yt=0==(0|gt);do{if(!yt){var mt=r+8|0,St=Me[mt>>2];if(St>>>0>=Me[Er+3]>>>0){gr=232;break}Se[mt>>2]=St+1|0,Ae[gt+St|0]=40,gr=233;break}gr=232}while(0);232==gr&&Y(r,40);var Mt=Se[pr+2];H(r,Mt);var Ct=Me[cr],Rt=0==(0|Ct);do if(!Rt){var Tt=r+8|0,Ot=Me[Tt>>2];if(Ot>>>0>=Me[Er+3]>>>0)break;Se[Tt>>2]=Ot+1|0,Ae[Ct+Ot|0]=41;break r}while(0);Y(r,41);break r}if(44==(0|Ir)){var d=(a+8|0)>>2;if(45==(0|Se[Se[d]>>2])){var h=(a+4|0)>>2,Nt=Se[h],It=40==(0|Se[Nt>>2]);do if(It){var Pt=Se[Nt+4>>2];if(1!=(0|Se[Pt+8>>2]))break;if(Ae[Se[Pt+4>>2]]<<24>>24!=62)break;var Dt=r+8|0,Lt=Me[Dt>>2];Lt>>>0>>0?(Se[Dt>>2]=Lt+1|0,Ae[Or+Lt|0]=40):Y(r,40)}while(0);var Ft=Me[cr],Xt=0==(0|Ft);do{if(!Xt){var jt=r+8|0,Ut=Me[jt>>2];if(Ut>>>0>=Me[Er+3]>>>0){gr=248;break}Se[jt>>2]=Ut+1|0,Ae[Ft+Ut|0]=40,gr=249;break}gr=248}while(0);248==gr&&Y(r,40);var xt=Se[Se[d]+4>>2];H(r,xt);var zt=Me[cr],Vt=0==(0|zt);do{if(!Vt){var c=(r+8|0)>>2,Bt=Me[c];if((Bt+2|0)>>>0>Me[Er+3]>>>0){gr=252;break}var Ht=zt+Bt|0;oe=8233,Ae[Ht]=255&oe,oe>>=8,Ae[Ht+1]=255&oe;var Kt=Se[c]+2|0;Se[c]=Kt,gr=253;break}gr=252}while(0);252==gr&&Q(r,0|He.__str139,2);var Yt=Se[h];ir(r,Yt);var Gt=Me[cr],Wt=0==(0|Gt);do{if(!Wt){var u=(r+8|0)>>2,Zt=Me[u];if((Zt+2|0)>>>0>Me[Er+3]>>>0){gr=256;break}var Qt=Gt+Zt|0;oe=10272,Ae[Qt]=255&oe,oe>>=8,Ae[Qt+1]=255&oe;var qt=Se[u]+2|0;Se[u]=qt,gr=257;break}gr=256}while(0);256==gr&&Q(r,0|He.__str140,2);var $t=Se[Se[d]+8>>2];H(r,$t);var Jt=Me[cr],rf=0==(0|Jt);do{if(!rf){var af=r+8|0,ef=Me[af>>2];if(ef>>>0>=Me[Er+3]>>>0){gr=260;break}Se[af>>2]=ef+1|0,Ae[Jt+ef|0]=41,gr=261;break}gr=260}while(0);260==gr&&Y(r,41);var vf=Se[h];if(40!=(0|Se[vf>>2]))break r;var tf=Se[vf+4>>2];if(1!=(0|Se[tf+8>>2]))break r;if(Ae[Se[tf+4>>2]]<<24>>24!=62)break r;var ff=Me[cr],_f=0==(0|ff);do if(!_f){var sf=r+8|0,nf=Me[sf>>2];if(nf>>>0>=Me[Er+3]>>>0)break;Se[sf>>2]=nf+1|0,Ae[ff+nf|0]=41;break r}while(0);Y(r,41);break r}Z(r);break r}if(45==(0|Ir)){Z(r);break r}if(46==(0|Ir)){var of=a+4|0,k=(a+8|0)>>2,lf=Se[k],bf=47==(0|Se[lf>>2]);do if(bf){if(48!=(0|Se[Se[lf+8>>2]>>2]))break;var b=(r+8|0)>>2,kf=Me[b],l=(r+12|0)>>2;kf>>>0>>0?(Se[b]=kf+1|0,Ae[Or+kf|0]=40):Y(r,40);var uf=Se[Se[k]+4>>2];H(r,uf);var cf=Me[cr],hf=0==(0|cf);do{if(!hf){var df=Me[b];if((df+2|0)>>>0>Me[l]>>>0){gr=278;break}var wf=cf+df|0;oe=8233,Ae[wf]=255&oe,oe>>=8,Ae[wf+1]=255&oe;var pf=Se[b]+2|0;Se[b]=pf,gr=279;break}gr=278}while(0);278==gr&&Q(r,0|He.__str139,2);var Ef=Se[of>>2];ir(r,Ef);var Af=Me[cr],gf=0==(0|Af);do{if(!gf){var yf=Me[b];if((yf+2|0)>>>0>Me[l]>>>0){gr=282;break}var mf=Af+yf|0;oe=10272,Ae[mf]=255&oe,oe>>=8,Ae[mf+1]=255&oe;var Sf=Se[b]+2|0;Se[b]=Sf,gr=283;break}gr=282}while(0);282==gr&&Q(r,0|He.__str140,2);var Mf=Se[Se[Se[k]+8>>2]+4>>2];H(r,Mf);var Cf=Me[cr],Rf=0==(0|Cf);do{if(!Rf){var Tf=Me[b];if((Tf+5|0)>>>0>Me[l]>>>0){gr=286;break}var Of=Cf+Tf|0;Ae[Of]=Ae[0|He.__str141],Ae[Of+1]=Ae[(0|He.__str141)+1],Ae[Of+2]=Ae[(0|He.__str141)+2],Ae[Of+3]=Ae[(0|He.__str141)+3],Ae[Of+4]=Ae[(0|He.__str141)+4];var Nf=Se[b]+5|0;Se[b]=Nf,gr=287;break}gr=286}while(0);286==gr&&Q(r,0|He.__str141,5);var If=Se[Se[Se[k]+8>>2]+8>>2];H(r,If);var Pf=Me[cr],Df=0==(0|Pf);do if(!Df){var Lf=Me[b];if(Lf>>>0>=Me[l]>>>0)break;Se[b]=Lf+1|0,Ae[Pf+Lf|0]=41;break r}while(0);Y(r,41);break r}while(0);Z(r);break r}if(47==(0|Ir)||48==(0|Ir)){Z(r);break r}if(49==(0|Ir)||50==(0|Ir)){var Ff=a+4|0,Xf=Se[Ff>>2],jf=33==(0|Se[Xf>>2]);do{if(jf){var Uf=Me[Se[Xf+4>>2]+16>>2];if(1==(0|Uf)||2==(0|Uf)||3==(0|Uf)||4==(0|Uf)||5==(0|Uf)||6==(0|Uf)){var xf=a+8|0;if(0!=(0|Se[Se[xf>>2]>>2])){var zf=Uf;break}if(50==(0|Ir)){var Vf=r+8|0,Bf=Me[Vf>>2];Bf>>>0>>0?(Se[Vf>>2]=Bf+1|0,Ae[Or+Bf|0]=45):Y(r,45)}var Hf=Se[xf>>2];if(H(r,Hf),2==(0|Uf)){var Kf=Me[cr],Yf=0==(0|Kf);do if(!Yf){var Gf=r+8|0,Wf=Me[Gf>>2];if(Wf>>>0>=Me[Er+3]>>>0)break;Se[Gf>>2]=Wf+1|0,Ae[Kf+Wf|0]=117;break r}while(0);Y(r,117);break r}if(3==(0|Uf)){var Zf=Me[cr],Qf=0==(0|Zf);do if(!Qf){var qf=r+8|0,$f=Me[qf>>2];if($f>>>0>=Me[Er+3]>>>0)break;Se[qf>>2]=$f+1|0,Ae[Zf+$f|0]=108;break r}while(0);Y(r,108);break r}if(4==(0|Uf)){var Jf=Me[cr],r_=0==(0|Jf);do if(!r_){var o=(r+8|0)>>2,a_=Me[o];if((a_+2|0)>>>0>Me[Er+3]>>>0)break;var e_=Jf+a_|0;oe=27765,Ae[e_]=255&oe,oe>>=8,Ae[e_+1]=255&oe;var i_=Se[o]+2|0;Se[o]=i_;break r}while(0);Q(r,0|He.__str142,2);break r}if(5==(0|Uf)){var v_=Me[cr],t_=0==(0|v_);do if(!t_){var n=(r+8|0)>>2,f_=Me[n];if((f_+2|0)>>>0>Me[Er+3]>>>0)break;var __=v_+f_|0;oe=27756,Ae[__]=255&oe,oe>>=8,Ae[__+1]=255&oe;var s_=Se[n]+2|0;Se[n]=s_;break r}while(0);Q(r,0|He.__str143,2);break r}if(6==(0|Uf)){var n_=Me[cr],o_=0==(0|n_);do if(!o_){var s=(r+8|0)>>2,l_=Me[s];if((l_+3|0)>>>0>Me[Er+3]>>>0)break;var b_=n_+l_|0;Ae[b_]=Ae[0|He.__str144],Ae[b_+1]=Ae[(0|He.__str144)+1],Ae[b_+2]=Ae[(0|He.__str144)+2];var k_=Se[s]+3|0;Se[s]=k_;break r}while(0);Q(r,0|He.__str144,3);break r}break r}if(7==(0|Uf)){var _=Se[pr+2]>>2;if(0!=(0|Se[_])){var zf=7;break}if(!(1==(0|Se[_+2])&49==(0|Ir))){var zf=Uf;break}var u_=Ae[Se[_+1]]<<24>>24;if(48==(0|u_)){var f=(r+8|0)>>2,c_=Me[f];if((c_+5|0)>>>0>Me[Er+3]>>>0){Q(r,0|He.__str145,5);break r}var h_=Or+c_|0;Ae[h_]=Ae[0|He.__str145],Ae[h_+1]=Ae[(0|He.__str145)+1],Ae[h_+2]=Ae[(0|He.__str145)+2],Ae[h_+3]=Ae[(0|He.__str145)+3],Ae[h_+4]=Ae[(0|He.__str145)+4];var d_=Se[f]+5|0;Se[f]=d_;break r}if(49==(0|u_)){var t=(r+8|0)>>2,w_=Me[t];if((w_+4|0)>>>0>Me[Er+3]>>>0){Q(r,0|He.__str146,4);break r}var p_=Or+w_|0;oe=1702195828,Ae[p_]=255&oe,oe>>=8,Ae[p_+1]=255&oe,oe>>=8,Ae[p_+2]=255&oe,oe>>=8,Ae[p_+3]=255&oe;var E_=Se[t]+4|0;Se[t]=E_;break r}var zf=Uf;break}var zf=Uf;break}var zf=0}while(0);var zf,v=(r+8|0)>>2,A_=Me[v],i=(r+12|0)>>2;A_>>>0>>0?(Se[v]=A_+1|0,Ae[Or+A_|0]=40):Y(r,40);var g_=Se[Ff>>2];H(r,g_);var y_=Me[cr],m_=0==(0|y_);do{if(!m_){var S_=Me[v];if(S_>>>0>=Me[i]>>>0){gr=335;break}Se[v]=S_+1|0,Ae[y_+S_|0]=41,gr=336;break}gr=335}while(0);335==gr&&Y(r,41);var M_=50==(0|Se[Nr>>2]);e:do if(M_){var C_=Me[cr],R_=0==(0|C_);do if(!R_){var T_=Me[v];if(T_>>>0>=Me[i]>>>0)break;Se[v]=T_+1|0,Ae[C_+T_|0]=45;break e}while(0);Y(r,45)}while(0);if(8==(0|zf)){var O_=Me[cr],N_=0==(0|O_);do{if(!N_){var I_=Me[v];if(I_>>>0>=Me[i]>>>0){gr=345;break}Se[v]=I_+1|0,Ae[O_+I_|0]=91,gr=346;break}gr=345}while(0);345==gr&&Y(r,91);var P_=Se[pr+2];H(r,P_);var D_=Me[cr],L_=0==(0|D_);do if(!L_){var F_=Me[v];if(F_>>>0>=Me[i]>>>0)break;Se[v]=F_+1|0,Ae[D_+F_|0]=93;break r}while(0);Y(r,93);break r}var X_=Se[pr+2];H(r,X_);break r}Z(r);break r}}while(0);var e=(r+20|0)>>2,j_=Se[e],U_=0|Sr;Se[U_>>2]=j_,Se[e]=Sr,Se[Sr+4>>2]=a;var x_=Sr+8|0;Se[x_>>2]=0;var z_=Se[Er+4];Se[Sr+12>>2]=z_;var V_=Se[pr+1];H(r,V_),0==(0|Se[x_>>2])&&$(r,a);var B_=Se[U_>>2];Se[e]=B_}while(0);Oe=Ar}function K(r,a,e,i){var v=i>>2;Se[v]=r,Se[v+1]=r+e|0,Se[v+2]=a,Se[v+3]=r,Se[v+6]=e<<1,Se[v+5]=0,Se[v+9]=e,Se[v+8]=0,Se[v+10]=0,Se[v+11]=0,Se[v+12]=0}function Y(r,a){var e,i=r+4|0,v=Me[i>>2],t=0==(0|v);do if(!t){var e=(r+8|0)>>2,f=Me[e];if(f>>>0>2]>>>0)var _=v,s=f;else{tr(r,1);var n=Me[i>>2];if(0==(0|n))break;var _=n,s=Se[e]}var s,_;Ae[_+s|0]=255&a;var o=Se[e]+1|0;Se[e]=o}while(0)}function G(r,a,e,i){var v,t=i>>2,f=Oe;Oe+=4;var _=f,v=_>>2,s=0==(0|r);do if(s){if(0==(0|i)){var n=0;break}Se[t]=-3;var n=0}else{var o=0==(0|e);if(0!=(0|a)&o){if(0==(0|i)){var n=0;break}Se[t]=-3;var n=0}else{var l=W(r,_);if(0==(0|l)){if(0==(0|i)){var n=0;break}if(1==(0|Se[v])){Se[t]=-1;var n=0}else{Se[t]=-2;var n=0}}else{var b=0==(0|a);do if(b){if(o){var k=l;break}var u=Se[v];Se[e>>2]=u;var k=l}else{var c=Ca(l);if(c>>>0>2]>>>0){Ra(a,l);va(l);var k=a}else{va(a);var h=Se[v];Se[e>>2]=h;var k=l}}while(0);var k;if(0==(0|i)){var n=k;break}Se[t]=0;var n=k}}}while(0);var n;return Oe=f,n}function W(r,a){var e,i=Oe;Oe+=52;var v,t=i,e=t>>2;Se[a>>2]=0;var f=Ca(r),_=Ae[r]<<24>>24==95;do{if(_){if(Ae[r+1|0]<<24>>24==90){var s=0;v=13;break}v=3;break}v=3}while(0);do if(3==v){var n=Na(r,0|He.__str117,8);if(0!=(0|n)){var s=1;v=13;break}var o=Ae[r+8|0];if(o<<24>>24!=46&&o<<24>>24!=95&&o<<24>>24!=36){var s=1;v=13;break}var l=r+9|0,b=Ae[l];if(b<<24>>24!=68&&b<<24>>24!=73){ -var s=1;v=13;break}if(Ae[r+10|0]<<24>>24!=95){var s=1;v=13;break}var k=f+29|0,u=Jr(k);if(0==(0|u)){Se[a>>2]=1;var c=0;v=19;break}Ae[l]<<24>>24==73?Pa(u,0|He.__str118,30,1):Pa(u,0|He.__str119,29,1);var h=r+11|0,c=(Ia(u,h),u);v=19;break}while(0);if(13==v){var s;K(r,17,f,t);var d=Se[e+6],w=Ta(),p=Oe;Oe+=12*d,Oe=Oe+3>>2<<2;var E=Oe;if(Oe+=4*Se[e+9],Oe=Oe+3>>2<<2,Se[e+4]=p,Se[e+7]=E,s)var A=N(t),g=A;else var y=T(t,1),g=y;var g,m=Ae[Se[e+3]]<<24>>24==0?g:0,S=Se[e+12]+f+10*Se[e+10]|0;if(0==(0|m))var M=0;else var C=S/8+S|0,R=B(17,m,C,a),M=R;var M;Oa(w);var c=M}var c;return Oe=i,c}function Z(r){var a=r+4|0,e=Se[a>>2];va(e),Se[a>>2]=0}function Q(r,a,e){var i,v=r+4|0,t=Me[v>>2],f=0==(0|t);do if(!f){var i=(r+8|0)>>2,_=Me[i];if((_+e|0)>>>0>Me[r+12>>2]>>>0){tr(r,e);var s=Me[v>>2];if(0==(0|s))break;var n=s,o=Se[i]}else var n=t,o=_;var o,n;Pa(n+o|0,a,e,1);var l=Se[i]+e|0;Se[i]=l}while(0)}function q(r,a,e){var i,v,t=a+e|0,f=(0|e)>0;r:do if(f)for(var _=t,s=r+4|0,i=(r+8|0)>>2,n=r+12|0,o=a;;){var o,l=(_-o|0)>3;a:do{if(l){if(Ae[o]<<24>>24!=95){v=21;break}if(Ae[o+1|0]<<24>>24!=95){v=21;break}if(Ae[o+2|0]<<24>>24!=85){v=21;break}for(var b=o+3|0,k=0;;){var k,b;if(b>>>0>=t>>>0){v=21;break a}var u=ge[b],c=u<<24>>24;if((u-48&255&255)<10)var h=c-48|0;else if((u-65&255&255)<6)var h=c-55|0;else{if((u-97&255&255)>=6)break;var h=c-87|0}var h,b=b+1|0,k=(k<<4)+h|0}if(!(u<<24>>24==95&k>>>0<256)){v=21;break}var d=Me[s>>2],w=0==(0|d);do if(!w){var p=Me[i];if(p>>>0>=Me[n>>2]>>>0)break;Se[i]=p+1|0,Ae[d+p|0]=255&k;var E=b;v=25;break a}while(0);Y(r,k);var E=b;v=25;break}v=21}while(0);a:do if(21==v){var A=Me[s>>2],g=0==(0|A);do if(!g){var y=Me[i];if(y>>>0>=Me[n>>2]>>>0)break;var m=Ae[o];Se[i]=y+1|0,Ae[A+y|0]=m;var E=o;break a}while(0);var S=Ae[o]<<24>>24;Y(r,S);var E=o}while(0);var E,M=E+1|0;if(M>>>0>=t>>>0)break r;var o=M}while(0)}function $(r,a){var e,i,v,t,f,_,s,n=r>>2,o=Se[a>>2];r:do if(22==(0|o)||25==(0|o)){var l=Me[n+1],b=0==(0|l);do if(!b){var _=(r+8|0)>>2,k=Me[_];if((k+9|0)>>>0>Me[n+3]>>>0)break;for(var u=l+k|0,c=0|He.__str147,h=u,d=c+9;c>2,A=Me[f];if((A+9|0)>>>0>Me[n+3]>>>0)break;for(var g=p+A|0,c=0|He.__str148,h=g,d=c+9;c>2,M=Me[t];if((M+6|0)>>>0>Me[n+3]>>>0)break;var C=m+M|0;Ae[C]=Ae[0|He.__str149],Ae[C+1]=Ae[(0|He.__str149)+1],Ae[C+2]=Ae[(0|He.__str149)+2],Ae[C+3]=Ae[(0|He.__str149)+3],Ae[C+4]=Ae[(0|He.__str149)+4],Ae[C+5]=Ae[(0|He.__str149)+5];var R=Se[t]+6|0;Se[t]=R;break r}while(0);Q(r,0|He.__str149,6)}else if(28==(0|o)){var T=Me[n+1],O=0==(0|T);do{if(!O){var N=r+8|0,I=Me[N>>2];if(I>>>0>=Me[n+3]>>>0){s=17;break}Se[N>>2]=I+1|0,Ae[T+I|0]=32,s=18;break}s=17}while(0);17==s&&Y(r,32);var P=Se[a+8>>2];H(r,P)}else if(29==(0|o)){if(0!=(4&Se[n]|0))break;var D=Me[n+1],L=0==(0|D);do if(!L){var F=r+8|0,X=Me[F>>2];if(X>>>0>=Me[n+3]>>>0)break;Se[F>>2]=X+1|0,Ae[D+X|0]=42;break r}while(0);Y(r,42)}else if(30==(0|o)){var j=Me[n+1],U=0==(0|j);do if(!U){var x=r+8|0,z=Me[x>>2];if(z>>>0>=Me[n+3]>>>0)break;Se[x>>2]=z+1|0,Ae[j+z|0]=38;break r}while(0);Y(r,38)}else if(31==(0|o)){var V=Me[n+1],B=0==(0|V);do if(!B){var v=(r+8|0)>>2,K=Me[v];if((K+8|0)>>>0>Me[n+3]>>>0)break;var G=V+K|0,W=0|G;oe=1886220131,Ae[W]=255&oe,oe>>=8,Ae[W+1]=255&oe,oe>>=8,Ae[W+2]=255&oe,oe>>=8,Ae[W+3]=255&oe;var Z=G+4|0;oe=544761196,Ae[Z]=255&oe,oe>>=8,Ae[Z+1]=255&oe,oe>>=8,Ae[Z+2]=255&oe,oe>>=8,Ae[Z+3]=255&oe;var q=Se[v]+8|0;Se[v]=q;break r}while(0);Q(r,0|He.__str150,8)}else if(32==(0|o)){var $=Me[n+1],J=0==(0|$);do if(!J){var i=(r+8|0)>>2,rr=Me[i];if((rr+10|0)>>>0>Me[n+3]>>>0)break;for(var ar=$+rr|0,c=0|He.__str151,h=ar,d=c+10;c>2],tr=0==(0|vr);do{if(!tr){var fr=r+8|0,_r=Me[fr>>2];if(0!=(0|_r)&&Ae[vr+(_r-1)|0]<<24>>24==40){s=42;break}if(_r>>>0>=Me[n+3]>>>0){s=41;break}Se[fr>>2]=_r+1|0,Ae[vr+_r|0]=32,s=42;break}s=41}while(0);41==s&&Y(r,32);var sr=Se[a+4>>2];H(r,sr);var nr=Me[ir>>2],or=0==(0|nr);do if(!or){var e=(r+8|0)>>2,lr=Me[e];if((lr+3|0)>>>0>Me[n+3]>>>0)break;var br=nr+lr|0;Ae[br]=Ae[0|He.__str135],Ae[br+1]=Ae[(0|He.__str135)+1],Ae[br+2]=Ae[(0|He.__str135)+2];var kr=Se[e]+3|0;Se[e]=kr;break r}while(0);Q(r,0|He.__str135,3)}else if(3==(0|o)){var ur=Se[a+4>>2];H(r,ur)}else H(r,a);while(0)}function J(r){var a=r+20|0,e=Se[a>>2];if((0|e)<(0|Se[r+24>>2])){var i=Se[r+16>>2]+12*e|0,v=e+1|0;Se[a>>2]=v;var t=i}else var t=0;var t;return t}function rr(r,a,e){var i,v,t,f,_=r>>2,s=e,t=s>>2,n=0;r:for(;;){var n,s,o=0==(0|s);do if(!o){if(0!=(0|Se[t+2]))break;var l=Se[Se[t+1]>>2];if(29==(0|l)||30==(0|l)){f=9;break r}if(22==(0|l)||23==(0|l)||24==(0|l)||28==(0|l)||31==(0|l)||32==(0|l)||37==(0|l)){var b=Se[_+1];f=12;break r}var s=Se[t],t=s>>2,n=1;continue r}while(0);if(0!=(0|Se[a+4>>2])&0==(0|n)){f=9;break}var k=0,u=r+4|0,v=u>>2;f=22;break}do if(9==f){var c=Se[_+1];if(0==(0|c)){f=17;break}var h=Se[_+2];if(0==(0|h)){var d=c;f=13;break}var w=Ae[c+(h-1)|0];if(w<<24>>24==40||w<<24>>24==42){f=18;break}var b=c;f=12;break}while(0);do if(12==f){var b;if(0==(0|b)){f=17;break}var d=b;f=13;break}while(0);do if(13==f){var d,p=r+8|0,E=Me[p>>2];if(0!=(0|E)&&Ae[d+(E-1)|0]<<24>>24==32){f=18;break}if(E>>>0>=Me[_+3]>>>0){f=17;break}Se[p>>2]=E+1|0,Ae[d+E|0]=32,f=18;break}while(0);do if(17==f){Y(r,32),f=18;break}while(0);r:do if(18==f){var A=r+4|0,g=Me[A>>2],y=0==(0|g);do if(!y){var m=r+8|0,S=Me[m>>2];if(S>>>0>=Me[_+3]>>>0)break;Se[m>>2]=S+1|0,Ae[g+S|0]=40;var k=1,u=A,v=u>>2;break r}while(0);Y(r,40);var k=1,u=A,v=u>>2}while(0);var u,k,i=(r+20|0)>>2,M=Se[i];Se[i]=0,vr(r,e,0);r:do if(k){var C=Me[v],R=0==(0|C);do if(!R){var T=r+8|0,O=Me[T>>2];if(O>>>0>=Me[_+3]>>>0)break;Se[T>>2]=O+1|0,Ae[C+O|0]=41;break r}while(0);Y(r,41)}while(0);var N=Me[v],I=0==(0|N);do{if(!I){var P=r+8|0,D=Me[P>>2];if(D>>>0>=Me[_+3]>>>0){f=30;break}Se[P>>2]=D+1|0,Ae[N+D|0]=40,f=31;break}f=30}while(0);30==f&&Y(r,40);var L=Se[a+8>>2];0!=(0|L)&&H(r,L);var F=Me[v],X=0==(0|F);do{if(!X){var j=r+8|0,U=Me[j>>2];if(U>>>0>=Me[_+3]>>>0){f=36;break}Se[j>>2]=U+1|0,Ae[F+U|0]=41,f=37;break}f=36}while(0);36==f&&Y(r,41),vr(r,e,1),Se[i]=M}function ar(r,a,e){var i,v,t,f=r>>2,_=0==(0|e);do{if(!_){var s=e,v=s>>2;r:for(;;){var s;if(0==(0|s)){var n=1;t=14;break}if(0==(0|Se[v+2])){var o=36==(0|Se[Se[v+1]>>2]),l=1&o^1;if(o){var n=l;t=14;break}var b=r+4|0,k=Me[b>>2],u=0==(0|k);do{if(!u){var i=(r+8|0)>>2,c=Me[i];if((c+2|0)>>>0>Me[f+3]>>>0){t=9;break}var h=k+c|0;oe=10272,Ae[h]=255&oe,oe>>=8,Ae[h+1]=255&oe;var d=Se[i]+2|0;Se[i]=d,vr(r,e,0),t=10;break}t=9}while(0);9==t&&(Q(r,0|He.__str140,2),vr(r,e,0));var w=Me[b>>2],p=0==(0|w);do if(!p){var E=r+8|0,A=Me[E>>2];if(A>>>0>=Me[f+3]>>>0)break;Se[E>>2]=A+1|0,Ae[w+A|0]=41;var g=l;t=15;break r}while(0);Y(r,41);var g=l;t=15;break}var s=Se[v],v=s>>2}if(14==t){var n;vr(r,e,0);var g=n}var g;if(0!=(0|g)){t=17;break}var y=r+4|0;t=21;break}t=17}while(0);r:do if(17==t){var m=r+4|0,S=Me[m>>2],M=0==(0|S);do if(!M){var C=r+8|0,R=Me[C>>2];if(R>>>0>=Me[f+3]>>>0)break;Se[C>>2]=R+1|0,Ae[S+R|0]=32;var y=m;break r}while(0);Y(r,32);var y=m}while(0);var y,T=Me[y>>2],O=0==(0|T);do{if(!O){var N=r+8|0,I=Me[N>>2];if(I>>>0>=Me[f+3]>>>0){t=24;break}Se[N>>2]=I+1|0,Ae[T+I|0]=91,t=25;break}t=24}while(0);24==t&&Y(r,91);var P=Se[a+4>>2];0!=(0|P)&&H(r,P);var D=Me[y>>2],L=0==(0|D);do{if(!L){var F=r+8|0,X=Me[F>>2];if(X>>>0>=Me[f+3]>>>0){t=30;break}Se[F>>2]=X+1|0,Ae[D+X|0]=93,t=31;break}t=30}while(0);30==t&&Y(r,93)}function er(r,a){var e,i,v,t,f,_,s=Oe;Oe+=8;var n,o=s,_=(a+4|0)>>2,l=Se[_];if(4==(0|Se[l>>2])){var f=(r+20|0)>>2,b=Se[f];Se[f]=0;var t=(r+16|0)>>2,k=Se[t],u=0|o;Se[u>>2]=k,Se[t]=o;var c=Se[_];Se[o+4>>2]=c;var h=Se[c+4>>2];H(r,h);var d=Se[u>>2];Se[t]=d;var v=(r+4|0)>>2,w=Me[v],p=0==(0|w);do{if(!p){var i=(r+8|0)>>2,E=Me[i],A=0==(0|E);do if(!A){if(Ae[w+(E-1)|0]<<24>>24!=60)break;E>>>0>2]>>>0?(Se[i]=E+1|0,Ae[w+E|0]=32):Y(r,32)}while(0);var g=Me[v];if(0==(0|g)){n=12;break}var y=Me[i];if(y>>>0>=Me[r+12>>2]>>>0){n=12;break}Se[i]=y+1|0,Ae[g+y|0]=60,n=13;break}n=12}while(0);12==n&&Y(r,60);var m=Se[Se[_]+8>>2];H(r,m);var S=Me[v],M=0==(0|S);do{if(!M){var e=(r+8|0)>>2,C=Me[e],R=0==(0|C);do if(!R){if(Ae[S+(C-1)|0]<<24>>24!=62)break;C>>>0>2]>>>0?(Se[e]=C+1|0,Ae[S+C|0]=32):Y(r,32)}while(0);var T=Me[v];if(0==(0|T)){n=22;break}var O=Me[e];if(O>>>0>=Me[r+12>>2]>>>0){n=22;break}Se[e]=O+1|0,Ae[T+O|0]=62,n=23;break}n=22}while(0);22==n&&Y(r,62),Se[f]=b}else H(r,l);Oe=s}function ir(r,a){var e,i=40==(0|Se[a>>2]);r:do if(i){var v=Me[r+4>>2],t=0==(0|v);do{if(!t){var e=(r+8|0)>>2,f=Me[e],_=a+4|0,s=Me[_>>2],n=Me[s+8>>2];if((n+f|0)>>>0>Me[r+12>>2]>>>0){var o=s,l=n;break}var b=v+f|0,k=Se[s+4>>2];Pa(b,k,n,1);var u=Se[e]+Se[Se[_>>2]+8>>2]|0;Se[e]=u;break r}var c=Me[a+4>>2],o=c,l=Se[c+8>>2]}while(0);var l,o,h=Se[o+4>>2];Q(r,h,l)}else H(r,a);while(0)}function vr(r,a,e){var i,v,t,f,_,f=(r+4|0)>>2,s=0==(0|e),t=(r+16|0)>>2;r:do if(s)for(var n=a;;){var n;if(0==(0|n)){_=29;break r}if(0==(0|Se[f])){_=29;break r}var o=n+8|0,l=0==(0|Se[o>>2]);do if(l){var b=n+4|0;if((Se[Se[b>>2]>>2]-25|0)>>>0<3)break;Se[o>>2]=1;var k=Me[t],u=Se[n+12>>2];Se[t]=u;var c=Me[b>>2],h=Se[c>>2];if(35==(0|h)){var d=n,w=k,p=c;_=14;break r}if(36==(0|h)){var E=n,A=k,g=c;_=15;break r}if(2==(0|h)){var y=k,m=b;_=16;break r}$(r,c),Se[t]=k}while(0);var n=Se[n>>2]}else for(var S=a;;){var S;if(0==(0|S)){_=29;break r}if(0==(0|Se[f])){_=29;break r}var M=S+8|0;if(0==(0|Se[M>>2])){Se[M>>2]=1;var C=Me[t],R=Se[S+12>>2];Se[t]=R;var T=S+4|0,O=Me[T>>2],N=Se[O>>2];if(35==(0|N)){var d=S,w=C,p=O;_=14;break r}if(36==(0|N)){var E=S,A=C,g=O;_=15;break r}if(2==(0|N)){var y=C,m=T;_=16;break r}$(r,O),Se[t]=C}var S=Se[S>>2]}while(0);if(14==_){var p,w,d,I=Se[d>>2];rr(r,p,I),Se[t]=w}else if(15==_){var g,A,E,P=Se[E>>2];ar(r,g,P),Se[t]=A}else if(16==_){var m,y,v=(r+20|0)>>2,D=Se[v];Se[v]=0;var L=Se[Se[m>>2]+4>>2];H(r,L),Se[v]=D;var F=0==(4&Se[r>>2]|0),X=Me[f],j=0!=(0|X);r:do if(F){do if(j){var i=(r+8|0)>>2,U=Me[i];if((U+2|0)>>>0>Me[r+12>>2]>>>0)break;var x=X+U|0;oe=14906,Ae[x]=255&oe,oe>>=8,Ae[x+1]=255&oe;var z=Se[i]+2|0;Se[i]=z;break r}while(0);Q(r,0|He.__str120,2)}else{do if(j){var V=r+8|0,B=Me[V>>2];if(B>>>0>=Me[r+12>>2]>>>0)break;Se[V>>2]=B+1|0,Ae[X+B|0]=46;break r}while(0);Y(r,46)}while(0);var K=Me[Se[m>>2]+8>>2],G=(Se[K>>2]-25|0)>>>0<3;r:do if(G)for(var W=K;;){var W,Z=Me[W+4>>2];if((Se[Z>>2]-25|0)>>>0>=3){var q=Z;break r}var W=Z}else var q=K;while(0);var q;H(r,q),Se[t]=y}}function tr(r,a){var e,e=(r+4|0)>>2,i=Se[e],v=0==(0|i);r:do if(!v){for(var t=Se[r+8>>2]+a|0,f=r+12|0,_=Se[f>>2],s=i;;){var s,_;if(t>>>0<=_>>>0)break r;var n=_<<1,o=fa(s,n);if(0==(0|o))break;Se[e]=o,Se[f>>2]=n;var _=n,s=o}var l=Se[e];va(l),Se[e]=0,Se[r+24>>2]=1}while(0)}function fr(r,a,e){var i,v=J(r),i=v>>2;return 0!=(0|v)&&(Se[i]=21,Se[i+1]=a,Se[i+2]=e),v}function _r(r){var a,a=(r+12|0)>>2,e=Se[a],i=Ae[e]<<24>>24;if(88==(0|i)){var v=e+1|0;Se[a]=v;var t=nr(r),f=Se[a],_=f+1|0;Se[a]=_;var s=Ae[f]<<24>>24==69?t:0,n=s}else if(76==(0|i))var o=or(r),n=o;else var l=N(r),n=l;var n;return n}function sr(r){var a,a=(r+12|0)>>2,e=Se[a],i=Ae[e];if(i<<24>>24==110){var v=e+1|0;Se[a]=v;var t=1,f=Ae[v],_=v}else var t=0,f=i,_=e;var _,f,t,s=(f-48&255&255)<10;r:do if(s)for(var n=f,o=0,l=_;;){var l,o,n,b=(n<<24>>24)-48+10*o|0,k=l+1|0;Se[a]=k;var u=ge[k];if((u-48&255&255)>=10){var c=b;break r}var n=u,o=b,l=k}else var c=0;while(0);var c,h=0==(0|t)?c:0|-c;return h}function nr(r){var a,e,a=(r+12|0)>>2,i=Se[a],v=Ae[i];do{if(v<<24>>24==76){var t=or(r),f=t;e=21;break}if(v<<24>>24==84){var _=x(r),f=_;e=21;break}if(v<<24>>24==115){if(Ae[i+1|0]<<24>>24!=114){e=8;break}var s=i+2|0;Se[a]=s;var n=N(r),o=br(r);if(Ae[Se[a]]<<24>>24==73){var l=z(r),b=D(r,4,o,l),k=D(r,1,n,b),f=k;e=21;break}var u=D(r,1,n,o),f=u;e=21;break}e=8}while(0);r:do if(8==e){var c=kr(r);if(0==(0|c)){var f=0;break}var h=0|c,d=Se[h>>2],w=40==(0|d);do{if(w){var p=c+4|0,E=r+48|0,A=Se[Se[p>>2]+8>>2]-2+Se[E>>2]|0;Se[E>>2]=A;var g=Se[h>>2];if(40!=(0|g)){var y=g;e=13;break}var m=Se[p>>2],S=Se[m>>2],M=Da(S,0|He.__str90);if(0!=(0|M)){var C=m;e=15;break}var R=N(r),T=D(r,43,c,R),f=T;break r}var y=d;e=13}while(0);do if(13==e){var y;if(40==(0|y)){var C=Se[c+4>>2];e=15;break}if(41==(0|y)){var O=c+4|0;e=17;break}if(42==(0|y)){e=18;break}var f=0;break r}while(0);do if(15==e){var C,O=C+12|0;e=17;break}while(0);do if(17==e){var O,I=Se[O>>2];if(1==(0|I))break;if(2==(0|I)){var P=nr(r),L=nr(r),F=D(r,45,P,L),X=D(r,44,c,F);return X}if(3==(0|I)){var j=nr(r),U=nr(r),V=nr(r),B=D(r,48,U,V),H=D(r,47,j,B),K=D(r,46,c,H);return K}var f=0;break r}while(0);var Y=nr(r),G=D(r,43,c,Y);return G}while(0);var f;return f}function or(r){var a,a=(r+12|0)>>2,e=Se[a],i=e+1|0;Se[a]=i;var v=Ae[e]<<24>>24==76;r:do if(v){if(Ae[i]<<24>>24==95)var t=T(r,0),f=t;else{var _=N(r);if(0==(0|_)){var s=0;break}var n=33==(0|Se[_>>2]);do if(n){var o=Se[_+4>>2];if(0==(0|Se[o+16>>2]))break;var l=r+48|0,b=Se[l>>2]-Se[o+4>>2]|0;Se[l>>2]=b}while(0);var k=Se[a];if(Ae[k]<<24>>24==110){var u=k+1|0;Se[a]=u;var c=50,h=u}else var c=49,h=k;for(var h,c,d=h;;){var d,w=Ae[d];if(w<<24>>24==69)break;if(w<<24>>24==0){var s=0;break r}var p=d+1|0;Se[a]=p;var d=p}var E=lr(r,h,d-h|0),A=D(r,c,_,E),f=A}var f,g=Se[a],y=g+1|0;Se[a]=y;var m=Ae[g]<<24>>24==69?f:0,s=m}else var s=0;while(0);var s;return s}function lr(r,a,e){var i=J(r),v=m(i,a,e),t=0==(0|v)?0:i;return t}function br(r){var a=r+12|0,e=Me[a>>2],i=ge[e],v=(i-48&255&255)<10;do if(v)var t=L(r),f=t;else if((i-97&255&255)<26){var _=kr(r);if(0==(0|_)){var f=0;break}if(40!=(0|Se[_>>2])){var f=_;break}var s=r+48|0,n=Se[Se[_+4>>2]+8>>2]+Se[s>>2]+7|0;Se[s>>2]=n;var f=_}else if(i<<24>>24==67||i<<24>>24==68)var o=hr(r),f=o;else{if(i<<24>>24!=76){var f=0;break}Se[a>>2]=e+1|0;var l=L(r);if(0==(0|l)){var f=0;break}var b=dr(r),k=0==(0|b)?0:l,f=k}while(0);var f;return f}function kr(r){var a,e,a=(r+12|0)>>2,i=Se[a],v=i+1|0;Se[a]=v;var t=ge[i],f=i+2|0;Se[a]=f;var _=ge[v];do{if(t<<24>>24==118){if((_-48&255&255)>=10){var s=49,n=0;e=6;break}var o=(_<<24>>24)-48|0,l=L(r),b=ur(r,o,l),k=b;e=14;break}if(t<<24>>24==99){if(_<<24>>24!=118){var s=49,n=0;e=6;break}var u=N(r),c=D(r,42,u,0),k=c;e=14;break}var s=49,n=0;e=6}while(0);r:do if(6==e){for(;;){var n,s,h=(s-n)/2+n|0,d=(h<<4)+ri|0,w=Se[d>>2],p=Ae[w],E=t<<24>>24==p<<24>>24;if(E&&_<<24>>24==Ae[w+1|0]<<24>>24)break;var A=t<<24>>24>24;do if(A)var g=h,y=n;else{if(E&&_<<24>>24>24){var g=h,y=n;break}var g=s,y=h+1|0}while(0);var y,g;if((0|y)==(0|g)){var k=0;break r}var s=g,n=y}var m=cr(r,d),k=m}while(0);var k;return k}function ur(r,a,e){var i=J(r),v=S(i,a,e),t=0==(0|v)?0:i;return t}function cr(r,a){var e=J(r);return 0!=(0|e)&&(Se[e>>2]=40,Se[e+4>>2]=a),e}function hr(r){var a,e,i=Se[r+44>>2],e=i>>2,v=0==(0|i);do if(!v){var t=Se[e];if(0==(0|t)){var f=r+48|0,_=Se[f>>2]+Se[e+2]|0;Se[f>>2]=_}else{if(21!=(0|t))break;var s=r+48|0,n=Se[s>>2]+Se[e+2]|0;Se[s>>2]=n}}while(0);var a=(r+12|0)>>2,o=Se[a],l=o+1|0;Se[a]=l;var b=Ae[o]<<24>>24;do if(67==(0|b)){var k=o+2|0;Se[a]=k;var u=Ae[l]<<24>>24;if(49==(0|u))var c=1;else if(50==(0|u))var c=2;else{if(51!=(0|u)){var h=0;break}var c=3}var c,d=wr(r,c,i),h=d}else if(68==(0|b)){var w=o+2|0;Se[a]=w;var p=Ae[l]<<24>>24;if(48==(0|p))var E=1;else if(49==(0|p))var E=2;else{if(50!=(0|p)){var h=0;break}var E=3}var E,A=pr(r,E,i),h=A}else var h=0;while(0);var h;return h}function dr(r){var a=r+12|0,e=Se[a>>2];if(Ae[e]<<24>>24==95){var i=e+1|0;Se[a>>2]=i;var v=sr(r),t=v>>>31^1}else var t=1;var t;return t}function wr(r,a,e){var i=J(r),v=M(i,a,e),t=0==(0|v)?0:i;return t}function pr(r,a,e){var i=J(r),v=C(i,a,e),t=0==(0|v)?0:i;return t}function Er(r,a){var e=J(r);return 0!=(0|e)&&(Se[e>>2]=5,Se[e+4>>2]=a),e}function Ar(r){var a,a=(r+12|0)>>2,e=Se[a],i=Ae[e]<<24>>24;do if(78==(0|i))var v=gr(r),t=v;else if(90==(0|i))var f=yr(r),t=f;else if(76==(0|i))var _=br(r),t=_;else if(83==(0|i)){if(Ae[e+1|0]<<24>>24==116){var s=e+2|0;Se[a]=s;var n=lr(r,0|He.__str152,3),o=br(r),l=D(r,1,n,o),b=r+48|0,k=Se[b>>2]+3|0;Se[b>>2]=k;var u=0,c=l}else var h=V(r,0),u=1,c=h;var c,u;if(Ae[Se[a]]<<24>>24!=73){var t=c;break}if(0==(0|u)){var d=R(r,c);if(0==(0|d)){var t=0;break}}var w=z(r),p=D(r,4,c,w),t=p}else{var E=br(r);if(Ae[Se[a]]<<24>>24!=73){var t=E;break}var A=R(r,E);if(0==(0|A)){var t=0;break}var g=z(r),y=D(r,4,E,g),t=y}while(0);var t;return t}function gr(r){var a,e=Oe;Oe+=4;var i=e,a=(r+12|0)>>2,v=Se[a],t=v+1|0;Se[a]=t;var f=Ae[v]<<24>>24==78;do if(f){var _=I(r,i,1);if(0==(0|_)){var s=0;break}var n=mr(r);if(Se[_>>2]=n,0==(0|n)){var s=0;break}var o=Se[a],l=o+1|0;if(Se[a]=l,Ae[o]<<24>>24!=69){var s=0;break}var s=Se[i>>2]}else var s=0;while(0);var s;return Oe=e,s}function yr(r){var a,a=(r+12|0)>>2,e=Se[a],i=e+1|0;Se[a]=i;var v=Ae[e]<<24>>24==90;do if(v){var t=O(r,0),f=Se[a],_=f+1|0;if(Se[a]=_,Ae[f]<<24>>24!=69){var s=0;break}if(Ae[_]<<24>>24==115){var n=f+2|0;Se[a]=n;var o=dr(r);if(0==(0|o)){var s=0;break}var l=lr(r,0|He.__str168,14),b=D(r,2,t,l),s=b}else{var k=Ar(r),u=dr(r);if(0==(0|u)){var s=0;break}var c=D(r,2,t,k),s=c}}else var s=0;while(0);var s;return s}function mr(r){var a,e=r+12|0,i=0;r:for(;;){var i,v=ge[Se[e>>2]];if(v<<24>>24==0){var t=0;break}var f=(v-48&255&255)<10|(v-97&255&255)<26;do{if(!f){if(v<<24>>24==76||v<<24>>24==68||v<<24>>24==67){a=5;break}if(v<<24>>24==83){var _=V(r,1),s=_;a=10;break}if(v<<24>>24==73){if(0==(0|i)){var t=0;break r}var n=z(r),o=4,l=n;a=11;break}if(v<<24>>24==84){var b=x(r),s=b;a=10;break}if(v<<24>>24==69){var t=i;break r}var t=0;break r}a=5}while(0);do if(5==a){var k=br(r),s=k;a=10;break}while(0);do if(10==a){var s;if(0==(0|i)){var u=s;a=12;break}var o=1,l=s;a=11;break}while(0);if(11==a)var l,o,c=D(r,o,i,l),u=c;var u;if(v<<24>>24!=83)if(Ae[Se[e>>2]]<<24>>24!=69){var h=R(r,u);if(0==(0|h)){var t=0;break}var i=u}else var i=u;else var i=u}var t;return t}function Sr(r,a){var e,i,v=Oe;Oe+=4;var t=v,i=t>>2,e=(r+12|0)>>2,f=Se[e];if(Ae[f]<<24>>24==74){var _=f+1|0;Se[e]=_;var s=1}else var s=a;var s;Se[i]=0;var n=s,o=0,l=t;r:for(;;)for(var l,o,n,b=n,k=o;;){var k,b,u=Ae[Se[e]];if(u<<24>>24==0||u<<24>>24==69){var c=Se[i];if(0==(0|c)){var h=0;break r}var d=0==(0|Se[c+8>>2]);do if(d){var w=Se[c+4>>2];if(33!=(0|Se[w>>2])){var p=c;break}var E=Se[w+4>>2];if(9!=(0|Se[E+16>>2])){var p=c;break}var A=r+48|0,g=Se[A>>2]-Se[E+4>>2]|0;Se[A>>2]=g,Se[i]=0;var p=0}else var p=c;while(0);var p,y=D(r,35,k,p),h=y;break r}var m=N(r);if(0==(0|m)){var h=0;break r}if(0==(0|b)){var S=D(r,38,m,0);if(Se[l>>2]=S,0==(0|S)){var h=0;break r}var n=0,o=k,l=S+8|0;continue r}var b=0,k=m}var h;return Oe=v,h}function Mr(r){for(var a=r;;){var a;if(0==(0|a)){var e=0;break}var i=Se[a>>2];if(1!=(0|i)&&2!=(0|i)){if(6==(0|i)||7==(0|i)||42==(0|i)){var e=1;break}var e=0;break}var a=Se[a+8>>2]}var e;return e}function Cr(r){var a=r>>2;Se[a+3]=0,Se[a+2]=0,Se[a+1]=0,Se[a]=0,Se[a+4]=0}function Rr(r,a){var e,e=(r+12|0)>>2,i=Se[e],v=(Se[r+4>>2]-i|0)<(0|a);r:do if(v)var t=0;else{var f=i+a|0;Se[e]=f;var _=0==(4&Se[r+8>>2]|0);do if(!_){if(Ae[f]<<24>>24!=36)break;var s=a+(i+1)|0;Se[e]=s}while(0);var n=(0|a)>9;do if(n){var o=La(i,0|He.__str117,8);if(0!=(0|o))break;var l=Ae[i+8|0];if(l<<24>>24!=46&&l<<24>>24!=95&&l<<24>>24!=36)break;if(Ae[i+9|0]<<24>>24!=78)break;var b=r+48|0,k=22-a+Se[b>>2]|0;Se[b>>2]=k;var u=lr(r,0|He.__str169,21),t=u;break r}while(0);var c=lr(r,i,a),t=c}while(0);var t;return t}function Tr(r){var a,e,e=(r+48|0)>>2,i=Se[e],v=i+20|0;Se[e]=v;var a=(r+12|0)>>2,t=Se[a],f=t+1|0;Se[a]=f;var _=Ae[t];do if(_<<24>>24==84){var s=t+2|0;Se[a]=s;var n=Ae[f]<<24>>24;if(86==(0|n)){var o=i+15|0;Se[e]=o;var l=N(r),b=D(r,8,l,0),k=b}else if(84==(0|n)){var u=i+10|0;Se[e]=u;var c=N(r),h=D(r,9,c,0),k=h}else if(73==(0|n))var d=N(r),w=D(r,11,d,0),k=w;else if(83==(0|n))var p=N(r),E=D(r,12,p,0),k=E;else if(104==(0|n)){var A=Nr(r,104);if(0==(0|A)){var k=0;break}var g=O(r,0),y=D(r,14,g,0),k=y}else if(118==(0|n)){var m=Nr(r,118);if(0==(0|m)){var k=0;break}var S=O(r,0),M=D(r,15,S,0),k=M}else if(99==(0|n)){var C=Nr(r,0);if(0==(0|C)){var k=0;break}var R=Nr(r,0);if(0==(0|R)){var k=0;break}var T=O(r,0),I=D(r,16,T,0),k=I}else if(67==(0|n)){var P=N(r),L=sr(r);if((0|L)<0){var k=0;break}var F=Se[a],X=F+1|0;if(Se[a]=X,Ae[F]<<24>>24!=95){var k=0;break}var j=N(r),U=Se[e]+5|0;Se[e]=U;var x=D(r,10,j,P),k=x}else if(70==(0|n))var z=N(r),V=D(r,13,z,0),k=V;else{if(74!=(0|n)){var k=0;break}var B=N(r),H=D(r,17,B,0),k=H}}else if(_<<24>>24==71){var K=t+2|0;Se[a]=K;var Y=Ae[f]<<24>>24;if(86==(0|Y))var G=Ar(r),W=D(r,18,G,0),k=W;else if(82==(0|Y))var Z=Ar(r),Q=D(r,19,Z,0),k=Q;else{if(65!=(0|Y)){var k=0;break}var q=O(r,0),$=D(r,20,q,0),k=$}}else var k=0;while(0);var k;return k}function Or(r){for(var a,e=r,a=e>>2;;){var e;if(0==(0|e)){var i=0;break}var v=Se[a];if(4==(0|v)){var t=Se[a+1],f=Mr(t),i=0==(0|f)&1;break}if(25!=(0|v)&&26!=(0|v)&&27!=(0|v)){var i=0;break}var e=Se[a+1],a=e>>2}var i;return i}function Nr(r,a){var e;if(0==(0|a)){var i=r+12|0,v=Se[i>>2],t=v+1|0;Se[i>>2]=t;var f=Ae[v]<<24>>24}else var f=a;var f;do{if(104==(0|f)){var _=(sr(r),r+12|0);e=7;break}if(118==(0|f)){var s=(sr(r),r+12|0),n=Se[s>>2],o=n+1|0;if(Se[s>>2]=o,Ae[n]<<24>>24!=95){var l=0;e=8;break}var _=(sr(r),s);e=7;break}var l=0;e=8}while(0);if(7==e){var _,b=Se[_>>2],k=b+1|0;Se[_>>2]=k;var l=Ae[b]<<24>>24==95&1}var l;return l}function Ir(r){var a,e,i=r>>2,v=Oe;Oe+=56;var t,f=v,_=v+8,s=v+16,n=v+36,e=(0|r)>>2,o=Se[e],l=0==(8192&o|0);r:do{if(l){var a=(r+12|0)>>2,b=Se[a];if(Ae[b]<<24>>24!=63){var k=0;t=111;break}var u=b+1|0;Se[a]=u;var c=Ae[u];do if(c<<24>>24==63){if(Ae[b+2|0]<<24>>24==36){var h=b+3|0;if(Ae[h]<<24>>24!=63){var d=5;t=90;break}Se[a]=h;var w=6,p=h}else var w=0,p=u;var p,w,E=p+1|0;Se[a]=E;var A=Ae[E]<<24>>24;do if(48==(0|A)){var g=1;t=81}else{if(49==(0|A)){var g=2;t=81;break}if(50!=(0|A)){if(51==(0|A)){var y=0|He.__str2172,m=E;t=82;break}if(52==(0|A)){var y=0|He.__str3173,m=E;t=82;break}if(53==(0|A)){var y=0|He.__str4174,m=E;t=82;break}if(54==(0|A)){var y=0|He.__str5175,m=E;t=82;break}if(55==(0|A)){var y=0|He.__str6176,m=E;t=82;break}if(56==(0|A)){var y=0|He.__str7177,m=E;t=82;break}if(57==(0|A)){var y=0|He.__str8178,m=E;t=82;break}if(65==(0|A)){var y=0|He.__str9179,m=E;t=82;break}if(66==(0|A)){Se[a]=p+2|0;var S=0|He.__str10180,M=3;t=88;break}if(67==(0|A)){var y=0|He.__str11181,m=E;t=82;break}if(68==(0|A)){var y=0|He.__str12182,m=E;t=82;break}if(69==(0|A)){var y=0|He.__str13183,m=E;t=82;break}if(70==(0|A)){var y=0|He.__str14184,m=E;t=82;break}if(71==(0|A)){var y=0|He.__str15185,m=E;t=82;break}if(72==(0|A)){var y=0|He.__str16186,m=E;t=82;break}if(73==(0|A)){var y=0|He.__str17187,m=E;t=82;break}if(74==(0|A)){var y=0|He.__str18188,m=E;t=82;break}if(75==(0|A)){var y=0|He.__str19189,m=E;t=82;break}if(76==(0|A)){var y=0|He.__str20190,m=E;t=82;break}if(77==(0|A)){var y=0|He.__str21191,m=E;t=82;break}if(78==(0|A)){var y=0|He.__str22192,m=E;t=82;break}if(79==(0|A)){var y=0|He.__str23193,m=E;t=82;break}if(80==(0|A)){var y=0|He.__str24194,m=E;t=82;break}if(81==(0|A)){var y=0|He.__str25195,m=E;t=82;break}if(82==(0|A)){var y=0|He.__str26196,m=E;t=82;break}if(83==(0|A)){var y=0|He.__str27197,m=E;t=82;break}if(84==(0|A)){var y=0|He.__str28198,m=E;t=82;break}if(85==(0|A)){var y=0|He.__str29199,m=E;t=82;break}if(86==(0|A)){var y=0|He.__str30200,m=E;t=82;break}if(87==(0|A)){var y=0|He.__str31201,m=E;t=82;break}if(88==(0|A)){var y=0|He.__str32202,m=E;t=82;break}if(89==(0|A)){var y=0|He.__str33203,m=E;t=82;break}if(90==(0|A)){var y=0|He.__str34204,m=E;t=82;break}if(95==(0|A)){var C=p+2|0;Se[a]=C;var R=Ae[C]<<24>>24;if(48==(0|R)){var y=0|He.__str35205,m=C;t=82;break}if(49==(0|R)){var y=0|He.__str36206,m=C;t=82;break}if(50==(0|R)){var y=0|He.__str37207,m=C;t=82;break}if(51==(0|R)){var y=0|He.__str38208,m=C;t=82;break}if(52==(0|R)){var y=0|He.__str39209,m=C;t=82;break}if(53==(0|R)){var y=0|He.__str40210,m=C;t=82;break}if(54==(0|R)){var y=0|He.__str41211,m=C;t=82;break}if(55==(0|R)){var y=0|He.__str42212,m=C;t=82;break}if(56==(0|R)){var y=0|He.__str43213,m=C;t=82;break}if(57==(0|R)){var y=0|He.__str44214,m=C;t=82;break}if(65==(0|R)){var y=0|He.__str45215,m=C;t=82;break}if(66==(0|R)){var y=0|He.__str46216,m=C;t=82;break}if(67==(0|R)){Se[a]=p+3|0;var T=0|He.__str47217;t=84;break}if(68==(0|R)){var y=0|He.__str48218,m=C;t=82;break}if(69==(0|R)){var y=0|He.__str49219,m=C;t=82;break}if(70==(0|R)){var y=0|He.__str50220,m=C;t=82;break}if(71==(0|R)){var y=0|He.__str51221,m=C;t=82;break}if(72==(0|R)){var y=0|He.__str52222,m=C;t=82;break}if(73==(0|R)){var y=0|He.__str53223,m=C;t=82;break}if(74==(0|R)){var y=0|He.__str54224,m=C;t=82;break}if(75==(0|R)){var y=0|He.__str55225,m=C;t=82;break}if(76==(0|R)){var y=0|He.__str56226,m=C;t=82;break}if(77==(0|R)){var y=0|He.__str57227,m=C;t=82;break}if(78==(0|R)){var y=0|He.__str58228,m=C;t=82;break}if(79==(0|R)){var y=0|He.__str59229,m=C;t=82;break}if(82==(0|R)){var O=4|o;Se[e]=O;var N=p+3|0;Se[a]=N;var I=Ae[N]<<24>>24;if(48==(0|I)){Se[a]=p+4|0,Cr(s);var P=(Pr(r,_,s,0),Se[_>>2]),D=Se[_+4>>2],L=Dr(r,0|He.__str60230,(ne=Oe,Oe+=8,Se[ne>>2]=P,Se[ne+4>>2]=D,ne)),F=Se[a]-1|0;Se[a]=F;var y=L,m=F;t=82;break}if(49==(0|I)){Se[a]=p+4|0;var X=Lr(r),j=Lr(r),U=Lr(r),x=Lr(r),z=Se[a]-1|0;Se[a]=z;var V=Dr(r,0|He.__str61231,(ne=Oe,Oe+=16,Se[ne>>2]=X,Se[ne+4>>2]=j,Se[ne+8>>2]=U,Se[ne+12>>2]=x,ne)),y=V,m=Se[a];t=82;break}if(50==(0|I)){var y=0|He.__str62232,m=N;t=82;break}if(51==(0|I)){var y=0|He.__str63233,m=N;t=82;break}if(52==(0|I)){var y=0|He.__str64234,m=N;t=82;break}var y=0,m=N;t=82;break}if(83==(0|R)){var y=0|He.__str65235,m=C;t=82;break}if(84==(0|R)){var y=0|He.__str66236,m=C;t=82;break}if(85==(0|R)){var y=0|He.__str67237,m=C;t=82;break}if(86==(0|R)){var y=0|He.__str68238,m=C;t=82;break}if(88==(0|R)){var y=0|He.__str69239,m=C;t=82;break}if(89==(0|R)){var y=0|He.__str70240,m=C;t=82;break}var k=0;t=111;break r}var k=0;t=111;break r}var y=0|He.__str1171,m=E;t=82}while(0);do{if(81==t){var g;Se[a]=p+2|0;var B=g;t=83;break}if(82==t){var m,y;if(Se[a]=m+1|0,1==(0|w)||2==(0|w)){var B=w;t=83;break}if(4==(0|w)){var T=y;t=84;break}if(6!=(0|w)){var S=y,M=w;t=88;break}Cr(n);var H=Xr(r,n,0,60,62);if(0==(0|H))var K=y;else var Y=Dr(r,0|He.__str170,(ne=Oe,Oe+=8,Se[ne>>2]=y,Se[ne+4>>2]=H,ne)),K=Y;var K;Se[i+6]=0;var S=K,M=w;t=88;break}}while(0);if(83==t){var B,G=r+40|0,W=Fr(r,0|He._symbol_demangle_dashed_null,-1,G);if(0==(0|W)){var k=0;t=111;break r}var d=B;t=90;break}if(84==t){var T;Se[i+4]=T;var Z=1,Q=T;t=109;break r}if(88==t){var M,S,q=r+40|0,$=Fr(r,S,-1,q);if(0==(0|$)){var k=0;t=111;break r}var d=M;t=90;break}}else{if(c<<24>>24==36){var J=b+2|0;Se[a]=J;var rr=jr(r);Se[i+4]=rr;var ar=0!=(0|rr)&1;t=107;break}var d=0;t=90}while(0);if(90==t){var d,er=Me[a],ir=Ae[er]<<24>>24;if(64==(0|ir))Se[a]=er+1|0;else if(36==(0|ir))t=93;else{var vr=zr(r);if(0==(0|vr)){var k=-1;t=111;break}}if(5==(0|d)){var tr=r+20|0,fr=Se[tr>>2]+1|0;Se[tr>>2]=fr}else if(1==(0|d)||2==(0|d)){if(Me[i+11]>>>0<2){var k=-1;t=111;break}var _r=r+56|0,sr=Me[_r>>2],nr=Se[sr+4>>2];if(1==(0|d))Se[sr>>2]=nr;else{var or=Dr(r,0|He.__str71241,(ne=Oe,Oe+=4,Se[ne>>2]=nr,ne)),lr=Se[_r>>2];Se[lr>>2]=or}var br=4|Se[e];Se[e]=br}else if(3==(0|d)){var kr=Se[e]&-5;Se[e]=kr}var ur=ge[Se[a]];if((ur-48&255&255)<10)var cr=Vr(r),ar=cr;else if((ur-65&255&255)<26)var hr=Br(r,3==(0|d)&1),ar=hr;else{if(ur<<24>>24!=36){var k=-1;t=111;break}var dr=Hr(r),ar=dr}}var ar;if(0==(0|ar)){var k=-1;t=111;break}var Z=ar,Q=Se[i+4];t=109;break}var wr=Pr(r,f,0,0);if(0==(0|wr)){var k=-1;t=111;break}var pr=Se[f>>2],Er=Se[f+4>>2],Ar=Dr(r,0|He.__str170,(ne=Oe,Oe+=8,Se[ne>>2]=pr,Se[ne+4>>2]=Er,ne));Se[i+4]=Ar;var Z=1,Q=Ar;t=109;break}while(0);do if(109==t){var Q,Z;if(0!=(0|Q)){var k=Z;break}Xa(0|He.__str72242,1499,0|He.___func___symbol_demangle,0|He.__str73243);var k=Z}while(0);var k;return Oe=v,k}function Pr(r,a,e,i){var v,t,f,_=Oe;Oe+=24;var s=_,n=_+4,o=_+8,l=_+16,b=_+20;0==(0|a)&&Xa(0|He.__str72242,829,0|He.___func___demangle_datatype,0|He.__str121291);var f=(a+4|0)>>2;Se[f]=0;var t=(0|a)>>2;Se[t]=0;var v=(r+12|0)>>2,k=Me[v],u=k+1|0;Se[v]=u;var c=Ae[k],h=c<<24>>24;do if(95==(0|h)){Se[v]=k+2|0;var d=Ae[u],w=Zr(d);Se[t]=w}else if(67==(0|h)||68==(0|h)||69==(0|h)||70==(0|h)||71==(0|h)||72==(0|h)||73==(0|h)||74==(0|h)||75==(0|h)||77==(0|h)||78==(0|h)||79==(0|h)||88==(0|h)||90==(0|h)){var p=Qr(c);Se[t]=p}else if(84==(0|h)||85==(0|h)||86==(0|h)||89==(0|h)){var E=qr(r);if(0==(0|E))break;var A=0==(32768&Se[r>>2]|0);do if(A)if(84==(0|h))var g=0|He.__str122292;else if(85==(0|h))var g=0|He.__str123293;else if(86==(0|h))var g=0|He.__str124294;else{if(89!=(0|h)){var g=0;break}var g=0|He.__str125295}else var g=0;while(0);var g,y=Dr(r,0|He.__str170,(ne=Oe,Oe+=8,Se[ne>>2]=g,Se[ne+4>>2]=E,ne));Se[t]=y}else if(63==(0|h))if(0==(0|i))$r(a,r,e,63,0);else{var m=Lr(r);if(0==(0|m))break;var S=Dr(r,0|He.__str126296,(ne=Oe,Oe+=4,Se[ne>>2]=m,ne));Se[t]=S}else if(65==(0|h)||66==(0|h))$r(a,r,e,c,i);else if(81==(0|h)||82==(0|h)||83==(0|h)){var M=0==(0|i)?80:c;$r(a,r,e,M,i)}else if(80==(0|h))if(((Ae[u]<<24>>24)-48|0)>>>0<10){var C=k+2|0;if(Se[v]=C,Ae[u]<<24>>24!=54)break;var R=r+44|0,T=Se[R>>2];Se[v]=k+3|0;var O=Ae[C],N=Se[r>>2]&-17,I=Ur(O,s,n,N);if(0==(0|I))break;var P=Pr(r,o,e,0);if(0==(0|P))break;var D=Xr(r,e,1,40,41);if(0==(0|D))break;Se[R>>2]=T;var L=Se[o>>2],F=Se[o+4>>2],X=Se[s>>2],j=Dr(r,0|He.__str127297,(ne=Oe,Oe+=12,Se[ne>>2]=L,Se[ne+4>>2]=F,Se[ne+8>>2]=X,ne));Se[t]=j;var U=Dr(r,0|He.__str128298,(ne=Oe,Oe+=4,Se[ne>>2]=D,ne));Se[f]=U}else $r(a,r,e,80,i);else if(87==(0|h)){if(Ae[u]<<24>>24!=52)break;Se[v]=k+2|0;var x=qr(r);if(0==(0|x))break;if(0==(32768&Se[r>>2]|0)){var z=Dr(r,0|He.__str129299,(ne=Oe,Oe+=4,Se[ne>>2]=x,ne));Se[t]=z}else Se[t]=x}else if(48==(0|h)||49==(0|h)||50==(0|h)||51==(0|h)||52==(0|h)||53==(0|h)||54==(0|h)||55==(0|h)||56==(0|h)||57==(0|h)){var V=h<<1,B=V-96|0,H=Yr(e,B);Se[t]=H;var K=V-95|0,Y=Yr(e,K);Se[f]=Y}else if(36==(0|h)){var G=k+2|0;Se[v]=G;var W=Ae[u]<<24>>24;if(48==(0|W)){var Z=Lr(r);Se[t]=Z}else if(68==(0|W)){var Q=Lr(r);if(0==(0|Q))break;var q=Dr(r,0|He.__str130300,(ne=Oe,Oe+=4,Se[ne>>2]=Q,ne));Se[t]=q}else if(70==(0|W)){var $=Lr(r);if(0==(0|$))break;var J=Lr(r);if(0==(0|J))break;var rr=Dr(r,0|He.__str131301,(ne=Oe,Oe+=8,Se[ne>>2]=$,Se[ne+4>>2]=J,ne));Se[t]=rr}else if(71==(0|W)){var ar=Lr(r);if(0==(0|ar))break;var er=Lr(r);if(0==(0|er))break;var ir=Lr(r);if(0==(0|ir))break;var vr=Dr(r,0|He.__str132302,(ne=Oe,Oe+=12,Se[ne>>2]=ar,Se[ne+4>>2]=er,Se[ne+8>>2]=ir,ne));Se[t]=vr}else if(81==(0|W)){var tr=Lr(r);if(0==(0|tr))break;var fr=Dr(r,0|He.__str133303,(ne=Oe,Oe+=4,Se[ne>>2]=tr,ne));Se[t]=fr}else{if(36!=(0|W))break;if(Ae[G]<<24>>24!=67)break;Se[v]=k+3|0;var _r=xr(r,l,b);if(0==(0|_r))break;var sr=Pr(r,a,e,i);if(0==(0|sr))break;var nr=Se[t],or=Se[l>>2],lr=Dr(r,0|He.__str83253,(ne=Oe,Oe+=8,Se[ne>>2]=nr,Se[ne+4>>2]=or,ne));Se[t]=lr}}while(0);var br=0!=(0|Se[t])&1;return Oe=_,br}function Dr(r,a){var e,i=Oe;Oe+=4;var v=i,e=v>>2,t=v;Se[t>>2]=arguments[Dr.length];var f=1,_=0;r:for(;;){var _,f,s=Ae[a+_|0];do{if(s<<24>>24==0)break r;if(s<<24>>24==37){var n=_+1|0,o=Ae[a+n|0]<<24>>24;if(115==(0|o)){var l=Se[e],b=l,k=l+4|0;Se[e]=k;var u=Se[b>>2];if(0==(0|u)){var c=f,h=n;break}var d=Ca(u),c=d+f|0,h=n;break}if(99==(0|o)){var w=Se[e]+4|0;Se[e]=w;var c=f+1|0,h=n;break}if(37==(0|o))var p=n;else var p=_;var p,c=f+1|0,h=p}else var c=f+1|0,h=_}while(0);var h,c,f=c,_=h+1|0}var E=Wr(r,f);if(0==(0|E))var A=0;else{Se[t>>2]=arguments[Dr.length];var g=E,y=0;r:for(;;){var y,g,m=Ae[a+y|0];do{if(m<<24>>24==0)break r;if(m<<24>>24==37){var S=y+1|0,M=Ae[a+S|0]<<24>>24;if(115==(0|M)){var C=Se[e],R=C,T=C+4|0;Se[e]=T;var O=Se[R>>2];if(0==(0|O)){var N=g,I=S;break}var P=Ca(O);Pa(g,O,P,1);var N=g+P|0,I=S;break}if(99==(0|M)){var D=Se[e],L=D,F=D+4|0;Se[e]=F,Ae[g]=255&Se[L>>2];var N=g+1|0,I=S;break}if(37==(0|M))var X=S;else var X=y;var X;Ae[g]=37;var N=g+1|0,I=X}else{Ae[g]=m;var N=g+1|0,I=y}}while(0);var I,N,g=N,y=I+1|0}Ae[g]=0;var A=E}var A;return Oe=i,A}function Lr(r){var a,a=(r+12|0)>>2,e=Se[a],i=Ae[e];if(i<<24>>24==63){var v=e+1|0;Se[a]=v;var t=1,f=v,_=Ae[v]}else var t=0,f=e,_=i;var _,f,t,s=(_-48&255&255)<9;do if(s){var n=Wr(r,3),o=0!=(0|t);o&&(Ae[n]=45);var l=Ae[Se[a]]+1&255;Ae[n+t|0]=l;var b=o?2:1; -Ae[n+b|0]=0;var k=Se[a]+1|0;Se[a]=k;var u=n}else if(_<<24>>24==57){var c=Wr(r,4),h=0!=(0|t);h&&(Ae[c]=45),Ae[c+t|0]=49;var d=h?2:1;Ae[c+d|0]=48;var w=h?3:2;Ae[c+w|0]=0;var p=Se[a]+1|0;Se[a]=p;var u=c}else{if((_-65&255&255)>=16){var u=0;break}for(var E=0,A=f;;){var A,E,g=A+1|0;Se[a]=g;var y=(Ae[A]<<24>>24)+((E<<4)-65)|0,m=ge[g];if((m-65&255&255)>=16)break;var E=y,A=g}if(m<<24>>24!=64){var u=0;break}var S=Wr(r,17),M=0!=(0|t)?0|He.__str119289:0|ii,C=(za(S,0|He.__str118288,(ne=Oe,Oe+=8,Se[ne>>2]=M,Se[ne+4>>2]=y,ne)),Se[a]+1|0);Se[a]=C;var u=S}while(0);var u;return u}function Fr(r,a,e,i){var v,t,f,_;0==(0|a)&&Xa(0|He.__str72242,212,0|He.___func___str_array_push,0|He.__str115285),0==(0|i)&&Xa(0|He.__str72242,213,0|He.___func___str_array_push,0|He.__str116286);var f=(i+12|0)>>2,s=Me[f],n=0==(0|s);do{if(n){Se[f]=32;var o=Wr(r,128);if(0==(0|o)){var l=0;_=17;break}Se[i+16>>2]=o,_=11;break}if(Me[i+8>>2]>>>0>>0){_=11;break}var b=s<<3,k=Wr(r,b);if(0==(0|k)){var l=0;_=17;break}var u=k,c=i+16|0,h=Se[c>>2],d=Se[f]<<2;Pa(k,h,d,1);var w=Se[f]<<1;Se[f]=w,Se[c>>2]=u,_=11;break}while(0);do if(11==_){if((0|e)==-1)var p=Ca(a),E=p;else var E=e;var E,A=ja(a),g=E+1|0,y=Wr(r,g),t=(i+4|0)>>2,v=(i+16|0)>>2,m=(Se[t]<<2)+Se[v]|0;Se[m>>2]=y;var S=Se[Se[v]+(Se[t]<<2)>>2];if(0==(0|S)){Xa(0|He.__str72242,233,0|He.___func___str_array_push,0|He.__str117287);var M=Se[Se[v]+(Se[t]<<2)>>2]}else var M=S;var M;Pa(M,A,E,1),va(A),Ae[Se[Se[v]+(Se[t]<<2)>>2]+g|0]=0;var C=Se[t]+1|0;Se[t]=C;var R=i+8|0;if(C>>>0>2]>>>0){var l=1;break}Se[R>>2]=C;var l=1}while(0);var l;return l}function Xr(r,a,e,i,v){var t,f,_=Oe;Oe+=28;var s,n=_,o=_+8;Cr(o);var f=(r+12|0)>>2,l=0==(0|e),t=(0|n)>>2,b=n+4|0;r:do if(l)for(;;){var k=Se[f],u=Ae[k];if(u<<24>>24==0){s=12;break r}if(u<<24>>24==64){var c=k;s=7;break r}var h=Pr(r,n,a,1);if(0==(0|h)){var d=0;s=25;break r}var w=Se[t],p=Se[b>>2],E=Dr(r,0|He.__str170,(ne=Oe,Oe+=8,Se[ne>>2]=w,Se[ne+4>>2]=p,ne)),A=Fr(r,E,-1,o);if(0==(0|A)){var d=0;s=25;break r}var g=Se[t],y=Da(g,0|He.__str110280);if(0==(0|y)){s=12;break r}}else for(;;){var m=Se[f],S=Ae[m];if(S<<24>>24==0){s=12;break r}if(S<<24>>24==64){var c=m;s=7;break r}var M=Pr(r,n,a,1);if(0==(0|M)){var d=0;s=25;break r}var C=Se[t],R=Da(C,0|He.__str84254);if(0==(0|R)){s=13;break r}var T=Se[b>>2],O=Dr(r,0|He.__str170,(ne=Oe,Oe+=8,Se[ne>>2]=C,Se[ne+4>>2]=T,ne)),N=Fr(r,O,-1,o);if(0==(0|N)){var d=0;s=25;break r}var I=Se[t],P=Da(I,0|He.__str110280);if(0==(0|P)){s=12;break r}}while(0);do if(7==s){var c;Se[f]=c+1|0,s=12;break}while(0);do if(12==s){if(l){s=14;break}s=13;break}while(0);do if(13==s){var D=Se[f],L=D+1|0;if(Se[f]=L,Ae[D]<<24>>24==90){s=14;break}var d=0;s=25;break}while(0);r:do if(14==s){var F=o+4|0,X=Me[F>>2];do{if(0!=(0|X)){if(1==(0|X)){var j=o+16|0,U=Se[Se[j>>2]>>2],x=Da(U,0|He.__str84254);if(0==(0|x)){s=17;break}var z=j;s=20;break}var V=o+16|0;if(X>>>0<=1){var z=V;s=20;break}for(var B=0,H=1;;){var H,B,K=Se[Se[V>>2]+(H<<2)>>2],Y=Dr(r,0|He.__str112282,(ne=Oe,Oe+=8,Se[ne>>2]=B,Se[ne+4>>2]=K,ne)),G=H+1|0;if(G>>>0>=Me[F>>2]>>>0)break;var B=Y,H=G}if(0==(0|Y)){var z=V;s=20;break}var W=Y,Z=Y;s=21;break}s=17}while(0);if(17==s){var Q=i<<24>>24,q=v<<24>>24,$=Dr(r,0|He.__str111281,(ne=Oe,Oe+=8,Se[ne>>2]=Q,Se[ne+4>>2]=q,ne)),d=$;break}if(20==s)var z,W=Se[Se[z>>2]>>2],Z=0;var Z,W,J=v<<24>>24,rr=v<<24>>24==62;do if(rr){var ar=Ca(W);if(Ae[W+(ar-1)|0]<<24>>24!=62)break;var er=i<<24>>24,ir=Se[Se[o+16>>2]>>2],vr=Dr(r,0|He.__str113283,(ne=Oe,Oe+=16,Se[ne>>2]=er,Se[ne+4>>2]=ir,Se[ne+8>>2]=Z,Se[ne+12>>2]=J,ne)),d=vr;break r}while(0);var tr=i<<24>>24,fr=Se[Se[o+16>>2]>>2],_r=Dr(r,0|He.__str114284,(ne=Oe,Oe+=16,Se[ne>>2]=tr,Se[ne+4>>2]=fr,Se[ne+8>>2]=Z,Se[ne+12>>2]=J,ne)),d=_r}while(0);var d;return Oe=_,d}function jr(r){var a,e=Oe;Oe+=20;var i=e,v=r+24|0,t=Se[v>>2],a=(r+20|0)>>2,f=Se[a],_=r+44|0,s=Se[_>>2];Se[a]=t;var n=Kr(r);if(0==(0|n))var o=0;else{Cr(i);var l=Xr(r,i,0,60,62);if(0==(0|l))var b=n;else var k=Dr(r,0|He.__str170,(ne=Oe,Oe+=8,Se[ne>>2]=n,Se[ne+4>>2]=l,ne)),b=k;var b;Se[v>>2]=t,Se[a]=f,Se[_>>2]=s;var o=b}var o;return Oe=e,o}function Ur(r,a,e,i){var v,t=a>>2;Se[e>>2]=0,Se[t]=0;var f=0==(18&i|0);do{if(f){var _=r<<24>>24,s=1==((_-65)%2|0);if(0==(1&i|0)){if(s?Se[e>>2]=0|He.__str95265:v=14,65==(0|_)||66==(0|_)){Se[t]=0|He.__str96266,v=21;break}if(67==(0|_)||68==(0|_)){Se[t]=0|He.__str97267,v=21;break}if(69==(0|_)||70==(0|_)){Se[t]=0|He.__str98268,v=21;break}if(71==(0|_)||72==(0|_)){Se[t]=0|He.__str99269,v=21;break}if(73==(0|_)||74==(0|_)){Se[t]=0|He.__str100270,v=21;break}if(75==(0|_)||76==(0|_)){v=21;break}if(77==(0|_)){Se[t]=0|He.__str101271,v=21;break}var n=0;v=22;break}if(s?Se[e>>2]=0|He.__str88258:v=5,65==(0|_)||66==(0|_)){Se[t]=0|He.__str89259,v=21;break}if(67==(0|_)||68==(0|_)){Se[t]=0|He.__str90260,v=21;break}if(69==(0|_)||70==(0|_)){Se[t]=0|He.__str91261,v=21;break}if(71==(0|_)||72==(0|_)){Se[t]=0|He.__str92262,v=21;break}if(73==(0|_)||74==(0|_)){Se[t]=0|He.__str93263,v=21;break}if(75==(0|_)||76==(0|_)){v=21;break}if(77==(0|_)){Se[t]=0|He.__str94264,v=21;break}var n=0;v=22;break}v=21}while(0);if(21==v)var n=1;var n;return n}function xr(r,a,e){var i;Se[e>>2]=0;var i=(r+12|0)>>2,v=Se[i];if(Ae[v]<<24>>24==69){Se[e>>2]=0|He.__str102272;var t=Se[i]+1|0;Se[i]=t;var f=t}else var f=v;var f;Se[i]=f+1|0;var _=Ae[f]<<24>>24;if(65==(0|_)){Se[a>>2]=0;var s=1}else if(66==(0|_)){Se[a>>2]=0|He.__str103273;var s=1}else if(67==(0|_)){Se[a>>2]=0|He.__str104274;var s=1}else if(68==(0|_)){Se[a>>2]=0|He.__str105275;var s=1}else var s=0;var s;return s}function zr(r){var a,e,a=(r+12|0)>>2,i=r+40|0,v=r+20|0,t=0|i,f=r+44|0,_=r+48|0,s=r+52|0,n=r+56|0,o=r+20|0,l=r+24|0,b=r+16|0,k=0;r:for(;;){var k,u=Se[a],c=Ae[u];if(c<<24>>24==64){var h=u+1|0;Se[a]=h;var d=1;break}var w=c<<24>>24;do{if(0==(0|w)){var d=0;break r}if(48==(0|w)||49==(0|w)||50==(0|w)||51==(0|w)||52==(0|w)||53==(0|w)||54==(0|w)||55==(0|w)||56==(0|w)||57==(0|w)){var p=u+1|0;Se[a]=p;var E=(Ae[u]<<24>>24)-48|0,A=Yr(v,E),g=A;e=14;break}if(63==(0|w)){var y=u+1|0;Se[a]=y;var m=Ae[y]<<24>>24;if(36==(0|m)){var S=u+2|0;Se[a]=S;var M=jr(r);if(0==(0|M)){var d=0;break r}var C=Fr(r,M,-1,v);if(0==(0|C)){var d=0;break r}var R=M;e=15;break}if(63==(0|m)){var T=Se[t>>2],O=Se[f>>2],N=Se[_>>2],I=Se[s>>2],P=Se[n>>2],D=Se[o>>2],L=Se[l>>2];Cr(i);var F=Ir(r);if(0==(0|F))var X=k;else var j=Se[b>>2],U=Dr(r,0|He.__str109279,(ne=Oe,Oe+=4,Se[ne>>2]=j,ne)),X=U;var X;Se[o>>2]=D,Se[l>>2]=L,Se[t>>2]=T,Se[f>>2]=O,Se[_>>2]=N,Se[s>>2]=I,Se[n>>2]=P;var g=X;e=14;break}var x=Lr(r);if(0==(0|x)){var d=0;break r}var z=Dr(r,0|He.__str109279,(ne=Oe,Oe+=4,Se[ne>>2]=x,ne)),g=z;e=14;break}var V=Kr(r),g=V;e=14;break}while(0);if(14==e){var g;if(0==(0|g)){var d=0;break}var R=g}var R,B=Fr(r,R,-1,i);if(0==(0|B)){var d=0;break}var k=R}var d;return d}function Vr(r){var a,e,i,v=Oe;Oe+=36;var t,f=v,i=f>>2,_=v+4,s=v+8,e=s>>2,n=v+16;Se[i]=0;var o=0|r,l=Se[o>>2],b=0==(128&l|0),k=r+12|0;do if(b){var u=Ae[Se[k>>2]]<<24>>24;if(48==(0|u))var c=0|He.__str76246,h=k,a=h>>2;else if(49==(0|u))var c=0|He.__str77247,h=k,a=h>>2;else{if(50!=(0|u)){var c=0,h=k,a=h>>2;break}var c=0|He.__str78248,h=k,a=h>>2}}else var c=0,h=k,a=h>>2;while(0);var h,c,d=0==(512&l|0);do if(d){if((Ae[Se[a]]-48&255&255)>=3){var w=0;break}var w=0|He.__str79249}else var w=0;while(0);var w,p=Gr(r,0),E=Se[a],A=E+1|0;Se[a]=A;var g=Ae[E]<<24>>24;do{if(48==(0|g)||49==(0|g)||50==(0|g)||51==(0|g)||52==(0|g)||53==(0|g)){var y=r+44|0,m=Se[y>>2];Cr(n);var S=Pr(r,s,n,0);if(0==(0|S)){var M=0;t=28;break}var C=xr(r,f,_);if(0==(0|C)){var M=0;t=28;break}var R=Se[i],T=0==(0|R),O=Se[_>>2];do if(T)Se[i]=O;else{if(0==(0|O))break;var N=Dr(r,0|He.__str83253,(ne=Oe,Oe+=8,Se[ne>>2]=R,Se[ne+4>>2]=O,ne));Se[i]=N}while(0);Se[y>>2]=m,t=22;break}if(54==(0|g)||55==(0|g)){var I=s+4|0;Se[I>>2]=0,Se[e]=0;var P=xr(r,f,_);if(0==(0|P)){var M=0;t=28;break}if(Ae[Se[a]]<<24>>24==64){t=22;break}var D=qr(r);if(0==(0|D)){var M=0;t=28;break}var L=Dr(r,0|He.__str107277,(ne=Oe,Oe+=4,Se[ne>>2]=D,ne));Se[I>>2]=L,t=22;break}if(56==(0|g)||57==(0|g)){Se[e+1]=0,Se[e]=0,Se[i]=0,t=22;break}var M=0;t=28}while(0);if(22==t){var F=0==(4096&Se[o>>2]|0);do{if(F){var X=Se[e],j=Se[i];if(0==(0|j)){var U=X;t=26;break}var x=0!=(0|X)?0|He.__str87257:0,z=0|He.__str87257,V=j,B=x,H=X;t=27;break}Se[i]=0,Se[e+1]=0,Se[e]=0;var U=0;t=26;break}while(0);if(26==t)var U,K=0!=(0|U)?0|He.__str87257:0,z=K,V=0,B=0,H=U;var H,B,V,z,Y=Se[e+1],G=Dr(r,0|He.__str108278,(ne=Oe,Oe+=32,Se[ne>>2]=c,Se[ne+4>>2]=w,Se[ne+8>>2]=H,Se[ne+12>>2]=B,Se[ne+16>>2]=V,Se[ne+20>>2]=z,Se[ne+24>>2]=p,Se[ne+28>>2]=Y,ne));Se[r+16>>2]=G;var M=1}var M;return Oe=v,M}function Br(r,a){var e,i,v,t,f=Oe;Oe+=44;var _,s=f,t=s>>2,n=f+8,o=f+12,v=o>>2,l=f+16,b=f+20,k=f+40;Se[v]=0;var i=(r+12|0)>>2,u=Se[i],c=u+1|0;Se[i]=c;var h=ge[u],d=h<<24>>24,w=(h-65&255&255)>25;r:do if(w)var p=0;else{var e=(0|r)>>2,E=Me[e],A=0==(128&E|0),g=d-65|0;do if(A){var y=g/8|0;if(0==(0|y))var m=0|He.__str76246,S=g;else if(1==(0|y))var m=0|He.__str77247,S=g;else{if(2!=(0|y)){var m=0,S=g;break}var m=0|He.__str78248,S=g}}else var m=0,S=g;while(0);var S,m,M=0==(512&E|0)&h<<24>>24<89,C=(0|S)%8;do if(M)if(2==(0|C)||3==(0|C))var R=m,T=0|He.__str79249;else if(4==(0|C)||5==(0|C))var R=m,T=0|He.__str80250;else{if(6!=(0|C)&&7!=(0|C)){var R=m,T=0;break}var O=Dr(r,0|He.__str81251,(ne=Oe,Oe+=4,Se[ne>>2]=m,ne)),R=O,T=0|He.__str80250}else var R=m,T=0;while(0);var T,R,N=Gr(r,0),I=6==(0|C);do{if(!I){if(7==((d-56)%8|0)){_=14;break}var P=N;_=15;break}_=14}while(0);if(14==_)var D=Lr(r),L=Dr(r,0|He.__str82252,(ne=Oe,Oe+=8,Se[ne>>2]=N,Se[ne+4>>2]=D,ne)),P=L;var P,F=h<<24>>24>88;do if(F)var X=0;else{if((C-2|0)>>>0<2){var X=0;break}var j=xr(r,o,k);if(0==(0|j)){var p=0;break r}var U=Me[v],x=Se[k>>2];if(0==(0|U)&0==(0|x)){var X=0;break}var z=Dr(r,0|He.__str83253,(ne=Oe,Oe+=8,Se[ne>>2]=U,Se[ne+4>>2]=x,ne));Se[v]=z;var X=z}while(0);var X,V=Se[i],B=V+1|0;Se[i]=B;var H=Ae[V],K=Se[e],Y=Ur(H,n,l,K);if(0==(0|Y)){var p=0;break}Cr(b);var G=Se[i];if(Ae[G]<<24>>24==64){Se[t]=0|He.__str84254,Se[t+1]=0;var W=G+1|0;Se[i]=W}else{var Z=Pr(r,s,b,0);if(0==(0|Z)){var p=0;break}}if(0!=(4&Se[e]|0)&&(Se[t+1]=0,Se[t]=0),0==(0|a))var Q=P;else{var q=0|s,$=Se[q>>2],J=s+4|0,rr=Se[J>>2],ar=Dr(r,0|He.__str85255,(ne=Oe,Oe+=12,Se[ne>>2]=P,Se[ne+4>>2]=$,Se[ne+8>>2]=rr,ne));Se[J>>2]=0,Se[q>>2]=0;var Q=ar}var Q,er=r+44|0,ir=Se[er>>2],vr=Xr(r,b,1,40,41);if(0==(0|vr)){var p=0;break}if(0==(4096&Se[e]|0))var tr=vr,fr=X;else{Se[v]=0;var tr=0,fr=0}var fr,tr;Se[er>>2]=ir;var _r=Se[t],sr=Se[t+1];if(0==(0|_r))var nr=0;else var or=0!=(0|sr)?0:0|He.__str87257,nr=or;var nr,lr=Se[n>>2],br=0!=(0|lr)?0|He.__str87257:0,kr=Se[l>>2],ur=Dr(r,0|He.__str86256,(ne=Oe,Oe+=44,Se[ne>>2]=R,Se[ne+4>>2]=T,Se[ne+8>>2]=_r,Se[ne+12>>2]=nr,Se[ne+16>>2]=lr,Se[ne+20>>2]=br,Se[ne+24>>2]=kr,Se[ne+28>>2]=Q,Se[ne+32>>2]=tr,Se[ne+36>>2]=fr,Se[ne+40>>2]=sr,ne));Se[r+16>>2]=ur;var p=1}while(0);var p;return Oe=f,p}function Hr(r){var a,a=(r+12|0)>>2,e=Se[a];if(Ae[e]<<24>>24==36)var i=e;else{Xa(0|He.__str72242,1252,0|He.___func___handle_template,0|He.__str74244);var i=Se[a]}var i;Se[a]=i+1|0;var v=Kr(r),t=0==(0|v);do if(t)var f=0;else{var _=Xr(r,0,0,60,62);if(0==(0|_)){var f=0;break}var s=Dr(r,0|He.__str170,(ne=Oe,Oe+=8,Se[ne>>2]=v,Se[ne+4>>2]=_,ne));Se[r+16>>2]=s;var f=1}while(0);var f;return f}function Kr(r){for(var a,a=(r+12|0)>>2,e=Me[a],i=e,v=Ae[e];;){var v,i;if(!((v-65&255&255)<26|(v-97&255&255)<26|(v-48&255&255)<10)&&v<<24>>24!=95&&v<<24>>24!=36){var t=0;break}var f=i+1|0;Se[a]=f;var _=ge[f];if(_<<24>>24==64){Se[a]=i+2|0;var s=f-e|0,n=r+20|0,o=Fr(r,e,s,n);if(0==(0|o)){var t=0;break}var l=Se[r+24>>2]-1-Se[n>>2]|0,b=Yr(n,l),t=b;break}var i=f,v=_}var t;return t}function Yr(r,a){0==(0|r)&&Xa(0|He.__str72242,263,0|He.___func___str_array_get_ref,0|He.__str75245);var e=Se[r>>2]+a|0;if(e>>>0>2]>>>0)var i=Se[Se[r+16>>2]+(e<<2)>>2];else var i=0;var i;return i}function Gr(r,a){var e,e=(r+44|0)>>2,i=Me[e];if(i>>>0>a>>>0){for(var v=r+56|0,t=a,f=0,_=Se[v>>2],s=i;;){var s,_,f,t,n=Me[_+(t<<2)>>2];if(0==(0|n)){Xa(0|He.__str72242,680,0|He.___func___get_class_string,0|He.__str106276);var o=Se[v>>2],l=o,b=Se[o+(t<<2)>>2],k=Se[e]}else var l=_,b=n,k=s;var k,b,l,u=Ca(b),c=u+(f+2)|0,h=t+1|0;if(h>>>0>=k>>>0)break;var t=h,f=c,_=l,s=k}var d=c-1|0}else var d=-1;var d,w=Wr(r,d);if(0==(0|w))var p=0;else{var E=Se[e]-1|0,A=(0|E)<(0|a);r:do if(A)var g=0;else for(var y=r+56|0,m=0,S=E;;){var S,m,M=Se[Se[y>>2]+(S<<2)>>2],C=Ca(M),R=w+m|0;Pa(R,M,C,1);var T=C+m|0;if((0|S)>(0|a)){var O=T+1|0;Ae[w+T|0]=58;var N=T+2|0;Ae[w+O|0]=58;var I=N}else var I=T;var I,P=S-1|0;if((0|P)<(0|a)){var g=I;break r}var m=I,S=P}while(0);var g;Ae[w+g|0]=0;var p=w}var p;return p}function Wr(r,a){var e,i=a>>>0>1020;do if(i){var v=Se[r+4>>2],t=a+4|0,f=pe[v](t);if(0==(0|f)){var _=0;break}var s=r+60|0,n=Se[s>>2],o=f;Se[o>>2]=n,Se[s>>2]=f,Se[r+64>>2]=0;var _=f+4|0}else{var e=(r+64|0)>>2,l=Me[e];if(l>>>0>>0){var b=Se[r+4>>2],k=pe[b](1024);if(0==(0|k)){var _=0;break}var u=r+60|0,c=Se[u>>2],h=k;Se[h>>2]=c,Se[u>>2]=k,Se[e]=1020;var d=1020,w=k}else var d=l,w=Se[r+60>>2];var w,d;Se[e]=d-a|0;var _=w+(1024-d)|0}while(0);var _;return _}function Zr(r){var a=r<<24>>24;if(68==(0|a))var e=0|He.__str157327;else if(69==(0|a))var e=0|He.__str158328;else if(70==(0|a))var e=0|He.__str159329;else if(71==(0|a))var e=0|He.__str160330;else if(72==(0|a))var e=0|He.__str161331;else if(73==(0|a))var e=0|He.__str162332;else if(74==(0|a))var e=0|He.__str163333;else if(75==(0|a))var e=0|He.__str164334;else if(76==(0|a))var e=0|He.__str165335;else if(77==(0|a))var e=0|He.__str166336;else if(78==(0|a))var e=0|He.__str167337;else if(87==(0|a))var e=0|He.__str168338;else var e=0;var e;return e}function Qr(r){var a=r<<24>>24;if(67==(0|a))var e=0|He.__str145315;else if(68==(0|a))var e=0|He.__str146316;else if(69==(0|a))var e=0|He.__str147317;else if(70==(0|a))var e=0|He.__str148318;else if(71==(0|a))var e=0|He.__str149319;else if(72==(0|a))var e=0|He.__str150320;else if(73==(0|a))var e=0|He.__str151321;else if(74==(0|a))var e=0|He.__str152322;else if(75==(0|a))var e=0|He.__str153323;else if(77==(0|a))var e=0|He.__str154324;else if(78==(0|a))var e=0|He.__str155325;else if(79==(0|a))var e=0|He.__str156326;else if(88==(0|a))var e=0|He.__str84254;else if(90==(0|a))var e=0|He.__str110280;else var e=0;var e;return e}function qr(r){var a=r+44|0,e=Se[a>>2],i=zr(r);if(0==(0|i))var v=0;else var t=Gr(r,e),v=t;var v;return Se[a>>2]=e,v}function $r(r,a,e,i,v){var t,f,_,s=Oe;Oe+=16;var n,o=s,_=o>>2,l=s+4,b=s+8,f=b>>2;Se[l>>2]=0|ii;var t=(a+12|0)>>2,k=Se[t];if(Ae[k]<<24>>24==69){Se[l>>2]=0|He.__str134304;var u=k+1|0;Se[t]=u;var c=0|He.__str134304}else var c=0|ii;var c,h=i<<24>>24;do{if(65==(0|h)){var d=Dr(a,0|He.__str135305,(ne=Oe,Oe+=4,Se[ne>>2]=c,ne)),w=d;n=10;break}if(66==(0|h)){var p=Dr(a,0|He.__str136306,(ne=Oe,Oe+=4,Se[ne>>2]=c,ne)),w=p;n=10;break}if(80==(0|h)){var E=Dr(a,0|He.__str137307,(ne=Oe,Oe+=4,Se[ne>>2]=c,ne)),w=E;n=10;break}if(81==(0|h)){var A=Dr(a,0|He.__str138308,(ne=Oe,Oe+=4,Se[ne>>2]=c,ne)),w=A;n=10;break}if(82==(0|h)){var g=Dr(a,0|He.__str139309,(ne=Oe,Oe+=4,Se[ne>>2]=c,ne)),w=g;n=10;break}if(83==(0|h)){var y=Dr(a,0|He.__str140310,(ne=Oe,Oe+=4,Se[ne>>2]=c,ne)),w=y;n=10;break}if(63==(0|h)){var w=0|ii;n=10}else n=31}while(0);r:do if(10==n){var w,m=xr(a,o,l);if(0==(0|m))break;var S=a+44|0,M=Se[S>>2],C=Se[t],R=Ae[C]<<24>>24==89;a:do if(R){var T=C+1|0;Se[t]=T;var O=Lr(a);if(0==(0|O))break r;var N=Ha(O),I=Ae[w]<<24>>24==32,P=Se[_],D=0==(0|P);do{if(I){if(!D){n=17;break}var L=w+1|0;n=18;break}if(D){var L=w;n=18;break}n=17;break}while(0);if(17==n){var F=Dr(a,0|He.__str141311,(ne=Oe,Oe+=8,Se[ne>>2]=P,Se[ne+4>>2]=w,ne));Se[_]=0;var X=F}else if(18==n)var L,j=Dr(a,0|He.__str142312,(ne=Oe,Oe+=4,Se[ne>>2]=L,ne)),X=j;var X;if(0==(0|N)){var U=X;break}for(var x=X,z=N;;){var z,x,V=z-1|0,B=Lr(a),H=Dr(a,0|He.__str143313,(ne=Oe,Oe+=8,Se[ne>>2]=x,Se[ne+4>>2]=B,ne));if(0==(0|V)){var U=H;break a}var x=H,z=V}}else var U=w;while(0);var U,K=Pr(a,b,e,0);if(0==(0|K))break;var Y=Se[_];if(0==(0|Y)){var G=0==(0|v);do if(G){if(Ae[U]<<24>>24==0){var W=U;break}var Z=U+1|0;if(Ae[Z]<<24>>24!=42){var W=U;break}var Q=Se[f],q=Ca(Q);if(Ae[Q+(q-1)|0]<<24>>24!=42){var W=U;break}var W=Z}else var W=U;while(0);var W,$=Se[f],J=Dr(a,0|He.__str170,(ne=Oe,Oe+=8,Se[ne>>2]=$,Se[ne+4>>2]=W,ne));Se[r>>2]=J}else{var rr=Se[f],ar=Dr(a,0|He.__str144314,(ne=Oe,Oe+=12,Se[ne>>2]=rr,Se[ne+4>>2]=Y,Se[ne+8>>2]=U,ne));Se[r>>2]=ar}var er=Se[f+1];Se[r+4>>2]=er,Se[S>>2]=M}while(0);Oe=s}function Jr(r){var a,e=r>>>0<245;do{if(e){if(r>>>0<11)var i=16;else var i=r+11&-8;var i,v=i>>>3,t=Me[vi>>2],f=t>>>(v>>>0);if(0!=(3&f|0)){var _=(1&f^1)+v|0,s=_<<1,n=(s<<2)+vi+40|0,o=(s+2<<2)+vi+40|0,l=Me[o>>2],b=l+8|0,k=Me[b>>2];if((0|n)==(0|k))Se[vi>>2]=t&(1<<_^-1);else{if(k>>>0>2]>>>0)throw Ka(),"Reached an unreachable!";Se[o>>2]=k,Se[k+12>>2]=n}var u=_<<3;Se[l+4>>2]=3|u;var c=l+(4|u)|0,h=1|Se[c>>2];Se[c>>2]=h;var d=b;a=38;break}if(i>>>0<=Me[vi+8>>2]>>>0){var w=i;a=30;break}if(0!=(0|f)){var p=2<>>12&16,y=A>>>(g>>>0),m=y>>>5&8,S=y>>>(m>>>0),M=S>>>2&4,C=S>>>(M>>>0),R=C>>>1&2,T=C>>>(R>>>0),O=T>>>1&1,N=(m|g|M|R|O)+(T>>>(O>>>0))|0,I=N<<1,P=(I<<2)+vi+40|0,D=(I+2<<2)+vi+40|0,L=Me[D>>2],F=L+8|0,X=Me[F>>2];if((0|P)==(0|X))Se[vi>>2]=t&(1<>>0>2]>>>0)throw Ka(),"Reached an unreachable!";Se[D>>2]=X,Se[X+12>>2]=P}var j=N<<3,U=j-i|0;Se[L+4>>2]=3|i;var x=L,z=x+i|0;Se[x+(4|i)>>2]=1|U,Se[x+j>>2]=U;var V=Me[vi+8>>2];if(0!=(0|V)){var B=Se[vi+20>>2],H=V>>>2&1073741822,K=(H<<2)+vi+40|0,Y=Me[vi>>2],G=1<<(V>>>3),W=0==(Y&G|0);do{if(!W){var Z=(H+2<<2)+vi+40|0,Q=Me[Z>>2];if(Q>>>0>=Me[vi+16>>2]>>>0){var q=Q,$=Z;break}throw Ka(),"Reached an unreachable!"}Se[vi>>2]=Y|G;var q=K,$=(H+2<<2)+vi+40|0}while(0);var $,q;Se[$>>2]=B,Se[q+12>>2]=B;var J=B+8|0;Se[J>>2]=q;var rr=B+12|0;Se[rr>>2]=K}Se[vi+8>>2]=U,Se[vi+20>>2]=z;var d=F;a=38;break}if(0==(0|Se[vi+4>>2])){var w=i;a=30;break}var ar=ra(i);if(0==(0|ar)){var w=i;a=30;break}var d=ar;a=38;break}if(r>>>0>4294967231){var w=-1;a=30;break}var er=r+11&-8;if(0==(0|Se[vi+4>>2])){var w=er;a=30;break}var ir=ea(er);if(0==(0|ir)){var w=er;a=30;break}var d=ir;a=38;break}while(0);if(30==a){var w,vr=Me[vi+8>>2];if(w>>>0>vr>>>0){var tr=Me[vi+12>>2];if(w>>>0>>0){var fr=tr-w|0;Se[vi+12>>2]=fr;var _r=Me[vi+24>>2],sr=_r;Se[vi+24>>2]=sr+w|0,Se[w+(sr+4)>>2]=1|fr,Se[_r+4>>2]=3|w;var d=_r+8|0}else var nr=aa(w),d=nr}else{var or=vr-w|0,lr=Me[vi+20>>2];if(or>>>0>15){var br=lr;Se[vi+20>>2]=br+w|0,Se[vi+8>>2]=or,Se[w+(br+4)>>2]=1|or,Se[br+vr>>2]=or,Se[lr+4>>2]=3|w}else{Se[vi+8>>2]=0,Se[vi+20>>2]=0,Se[lr+4>>2]=3|vr;var kr=vr+(lr+4)|0,ur=1|Se[kr>>2];Se[kr>>2]=ur}var d=lr+8|0}}var d;return d}function ra(r){var a,e,i,v=Se[vi+4>>2],t=(v&-v)-1|0,f=t>>>12&16,_=t>>>(f>>>0),s=_>>>5&8,n=_>>>(s>>>0),o=n>>>2&4,l=n>>>(o>>>0),b=l>>>1&2,k=l>>>(b>>>0),u=k>>>1&1,c=Me[vi+((s|f|o|b|u)+(k>>>(u>>>0))<<2)+304>>2],h=c,e=h>>2,d=(Se[c+4>>2]&-8)-r|0;r:for(;;)for(var d,h,w=h;;){var w,p=Se[w+16>>2];if(0==(0|p)){var E=Se[w+20>>2];if(0==(0|E))break r;var A=E}else var A=p;var A,g=(Se[A+4>>2]&-8)-r|0;if(g>>>0>>0){var h=A,e=h>>2,d=g;continue r}var w=A}var y=h,m=Me[vi+16>>2],S=y>>>0>>0;do if(!S){var M=y+r|0,C=M;if(y>>>0>=M>>>0)break;var R=Me[e+6],T=Me[e+3],O=(0|T)==(0|h);do if(O){var N=h+20|0,I=Se[N>>2];if(0==(0|I)){var P=h+16|0,D=Se[P>>2];if(0==(0|D)){var L=0,a=L>>2;break}var F=P,X=D}else{var F=N,X=I;i=14}for(;;){var X,F,j=X+20|0,U=Se[j>>2];if(0==(0|U)){var x=X+16|0,z=Me[x>>2];if(0==(0|z))break;var F=x,X=z}else var F=j,X=U}if(F>>>0>>0)throw Ka(),"Reached an unreachable!";Se[F>>2]=0;var L=X,a=L>>2}else{var V=Me[e+2];if(V>>>0>>0)throw Ka(),"Reached an unreachable!";Se[V+12>>2]=T,Se[T+8>>2]=V;var L=T,a=L>>2}while(0);var L,B=0==(0|R);r:do if(!B){var H=h+28|0,K=(Se[H>>2]<<2)+vi+304|0,Y=(0|h)==(0|Se[K>>2]);do{if(Y){if(Se[K>>2]=L,0!=(0|L))break;var G=Se[vi+4>>2]&(1<>2]^-1);Se[vi+4>>2]=G;break r}if(R>>>0>2]>>>0)throw Ka(),"Reached an unreachable!";var W=R+16|0;if((0|Se[W>>2])==(0|h)?Se[W>>2]=L:Se[R+20>>2]=L,0==(0|L))break r}while(0);if(L>>>0>2]>>>0)throw Ka(),"Reached an unreachable!";Se[a+6]=R;var Z=Me[e+4];if(0!=(0|Z)){if(Z>>>0>2]>>>0)throw Ka(),"Reached an unreachable!";Se[a+4]=Z,Se[Z+24>>2]=L}var Q=Me[e+5];if(0==(0|Q))break;if(Q>>>0>2]>>>0)throw Ka(),"Reached an unreachable!";Se[a+5]=Q,Se[Q+24>>2]=L}while(0);if(d>>>0<16){var q=d+r|0;Se[e+1]=3|q;var $=q+(y+4)|0,J=1|Se[$>>2];Se[$>>2]=J}else{Se[e+1]=3|r,Se[r+(y+4)>>2]=1|d,Se[y+d+r>>2]=d;var rr=Me[vi+8>>2];if(0!=(0|rr)){var ar=Me[vi+20>>2],er=rr>>>2&1073741822,ir=(er<<2)+vi+40|0,vr=Me[vi>>2],tr=1<<(rr>>>3),fr=0==(vr&tr|0);do{if(!fr){var _r=(er+2<<2)+vi+40|0,sr=Me[_r>>2];if(sr>>>0>=Me[vi+16>>2]>>>0){var nr=sr,or=_r;break}throw Ka(),"Reached an unreachable!"}Se[vi>>2]=vr|tr;var nr=ir,or=(er+2<<2)+vi+40|0}while(0);var or,nr;Se[or>>2]=ar,Se[nr+12>>2]=ar,Se[ar+8>>2]=nr,Se[ar+12>>2]=ir}Se[vi+8>>2]=d,Se[vi+20>>2]=C}return h+8|0}while(0);throw Ka(),"Reached an unreachable!"}function aa(r){var a,e;0==(0|Se[ti>>2])&&ba();var i=0==(4&Se[vi+440>>2]|0);do{if(i){var v=Se[vi+24>>2],t=0==(0|v);do{if(!t){var f=v,_=ua(f);if(0==(0|_)){e=6;break}var s=Se[ti+8>>2],n=r+47-Se[vi+12>>2]+s&-s;if(n>>>0>=2147483647){e=14;break}var o=re(n);if((0|o)==(Se[_>>2]+Se[_+4>>2]|0)){var l=o,b=n,k=o;e=13;break}var u=o,c=n;e=15;break}e=6}while(0);do if(6==e){var h=re(0);if((0|h)==-1){e=14;break}var d=Se[ti+8>>2],w=d+(r+47)&-d,p=h,E=Se[ti+4>>2],A=E-1|0;if(0==(A&p|0))var g=w;else var g=w-p+(A+p&-E)|0;var g;if(g>>>0>=2147483647){e=14;break}var y=re(g);if((0|y)==(0|h)){var l=h,b=g,k=y;e=13;break}var u=y,c=g;e=15;break}while(0);if(13==e){var k,b,l;if((0|l)!=-1){var m=b,S=l;e=26;break}var u=k,c=b}else if(14==e){var M=4|Se[vi+440>>2];Se[vi+440>>2]=M,e=23;break}var c,u,C=0|-c,R=(0|u)!=-1&c>>>0<2147483647;do{if(R){if(c>>>0>=(r+48|0)>>>0){var T=c;e=21;break}var O=Se[ti+8>>2],N=r+47-c+O&-O;if(N>>>0>=2147483647){var T=c;e=21;break}var I=re(N);if((0|I)==-1){re(C);e=22;break}var T=N+c|0;e=21;break}var T=c;e=21}while(0);if(21==e){var T;if((0|u)!=-1){var m=T,S=u;e=26;break}}var P=4|Se[vi+440>>2];Se[vi+440>>2]=P,e=23;break}e=23}while(0);do if(23==e){var D=Se[ti+8>>2],L=D+(r+47)&-D;if(L>>>0>=2147483647){e=49;break}var F=re(L),X=re(0);if(!((0|X)!=-1&(0|F)!=-1&F>>>0>>0)){e=49;break}var j=X-F|0;if(j>>>0<=(r+40|0)>>>0|(0|F)==-1){e=49;break}var m=j,S=F;e=26;break}while(0);r:do if(26==e){var S,m,U=Se[vi+432>>2]+m|0;Se[vi+432>>2]=U,U>>>0>Me[vi+436>>2]>>>0&&(Se[vi+436>>2]=U);var x=Me[vi+24>>2],z=0==(0|x);a:do if(z){var V=Me[vi+16>>2];0==(0|V)|S>>>0>>0&&(Se[vi+16>>2]=S),Se[vi+444>>2]=S,Se[vi+448>>2]=m,Se[vi+456>>2]=0;var B=Se[ti>>2];Se[vi+36>>2]=B,Se[vi+32>>2]=-1,ha(),ca(S,m-40|0)}else{for(var H=vi+444|0,a=H>>2;;){var H;if(0==(0|H))break;var K=Me[a],Y=H+4|0,G=Me[Y>>2],W=K+G|0;if((0|S)==(0|W)){if(0!=(8&Se[a+3]|0))break;var Z=x;if(!(Z>>>0>=K>>>0&Z>>>0>>0))break;Se[Y>>2]=G+m|0;var Q=Se[vi+24>>2],q=Se[vi+12>>2]+m|0;ca(Q,q);break a}var H=Se[a+2],a=H>>2}S>>>0>2]>>>0&&(Se[vi+16>>2]=S);for(var $=S+m|0,J=vi+444|0;;){var J;if(0==(0|J))break;var rr=0|J,ar=Me[rr>>2];if((0|ar)==(0|$)){if(0!=(8&Se[J+12>>2]|0))break;Se[rr>>2]=S;var er=J+4|0,ir=Se[er>>2]+m|0;Se[er>>2]=ir;var vr=da(S,ar,r),tr=vr;e=50;break r}var J=Se[J+8>>2]}Ma(S,m)}while(0);var fr=Me[vi+12>>2];if(fr>>>0<=r>>>0){e=49;break}var _r=fr-r|0;Se[vi+12>>2]=_r;var sr=Me[vi+24>>2],nr=sr;Se[vi+24>>2]=nr+r|0,Se[r+(nr+4)>>2]=1|_r,Se[sr+4>>2]=3|r;var tr=sr+8|0;e=50;break}while(0);if(49==e){var or=Je();Se[or>>2]=12;var tr=0}var tr;return tr}function ea(r){var a,e,i,v,t,f,_=r>>2,s=0|-r,n=r>>>8,o=0==(0|n);do if(o)var l=0;else{if(r>>>0>16777215){var l=31;break}var b=(n+1048320|0)>>>16&8,k=n<>>16&4,c=k<>>16&2,d=14-(u|b|h)+(c<>>15)|0,l=r>>>((d+7|0)>>>0)&1|d<<1}while(0);var l,w=Me[vi+(l<<2)+304>>2],p=0==(0|w);r:do if(p)var E=0,A=s,g=0;else{if(31==(0|l))var y=0;else var y=25-(l>>>1)|0;for(var y,m=0,S=s,M=w,t=M>>2,C=r<>>0>>0){if((0|T)==(0|r)){var E=M,A=O,g=M;break r}var N=M,I=O}else var N=m,I=S;var I,N,P=Me[t+5],D=Me[((C>>>31<<2)+16>>2)+t],L=0==(0|P)|(0|P)==(0|D)?R:P;if(0==(0|D)){var E=N,A=I,g=L;break r}var m=N,S=I,M=D,t=M>>2,C=C<<1,R=L}}while(0);var g,A,E,F=0==(0|g)&0==(0|E);do if(F){var X=2<>2]&(X|-X);if(0==(0|j)){var U=g;break}var x=(j&-j)-1|0,z=x>>>12&16,V=x>>>(z>>>0),B=V>>>5&8,H=V>>>(B>>>0),K=H>>>2&4,Y=H>>>(K>>>0),G=Y>>>1&2,W=Y>>>(G>>>0),Z=W>>>1&1,U=Se[vi+((B|z|K|G|Z)+(W>>>(Z>>>0))<<2)+304>>2]}else var U=g;while(0);var U,Q=0==(0|U);r:do if(Q)var q=A,$=E,v=$>>2;else for(var J=U,i=J>>2,rr=A,ar=E;;){var ar,rr,J,er=(Se[i+1]&-8)-r|0,ir=er>>>0>>0,vr=ir?er:rr,tr=ir?J:ar,fr=Me[i+4];if(0==(0|fr)){var _r=Me[i+5];if(0==(0|_r)){var q=vr,$=tr,v=$>>2;break r}var J=_r,i=J>>2,rr=vr,ar=tr}else var J=fr,i=J>>2,rr=vr,ar=tr}while(0);var $,q,sr=0==(0|$);r:do{if(!sr){if(q>>>0>=(Se[vi+8>>2]-r|0)>>>0){var nr=0;break}var or=$,e=or>>2,lr=Me[vi+16>>2],br=or>>>0>>0;do if(!br){var kr=or+r|0,ur=kr;if(or>>>0>=kr>>>0)break;var cr=Me[v+6],hr=Me[v+3],dr=(0|hr)==(0|$);do if(dr){var wr=$+20|0,pr=Se[wr>>2];if(0==(0|pr)){var Er=$+16|0,Ar=Se[Er>>2];if(0==(0|Ar)){var gr=0,a=gr>>2;break}var yr=Er,mr=Ar}else{var yr=wr,mr=pr;f=28}for(;;){var mr,yr,Sr=mr+20|0,Mr=Se[Sr>>2];if(0==(0|Mr)){var Cr=mr+16|0,Rr=Me[Cr>>2];if(0==(0|Rr))break;var yr=Cr,mr=Rr}else var yr=Sr,mr=Mr}if(yr>>>0>>0)throw Ka(),"Reached an unreachable!";Se[yr>>2]=0;var gr=mr,a=gr>>2}else{var Tr=Me[v+2];if(Tr>>>0>>0)throw Ka(),"Reached an unreachable!";Se[Tr+12>>2]=hr,Se[hr+8>>2]=Tr;var gr=hr,a=gr>>2}while(0);var gr,Or=0==(0|cr);a:do if(!Or){var Nr=$+28|0,Ir=(Se[Nr>>2]<<2)+vi+304|0,Pr=(0|$)==(0|Se[Ir>>2]);do{if(Pr){if(Se[Ir>>2]=gr,0!=(0|gr))break;var Dr=Se[vi+4>>2]&(1<>2]^-1);Se[vi+4>>2]=Dr;break a}if(cr>>>0>2]>>>0)throw Ka(),"Reached an unreachable!";var Lr=cr+16|0;if((0|Se[Lr>>2])==(0|$)?Se[Lr>>2]=gr:Se[cr+20>>2]=gr,0==(0|gr))break a}while(0);if(gr>>>0>2]>>>0)throw Ka(),"Reached an unreachable!";Se[a+6]=cr;var Fr=Me[v+4];if(0!=(0|Fr)){if(Fr>>>0>2]>>>0)throw Ka(),"Reached an unreachable!";Se[a+4]=Fr,Se[Fr+24>>2]=gr}var Xr=Me[v+5];if(0==(0|Xr))break;if(Xr>>>0>2]>>>0)throw Ka(),"Reached an unreachable!";Se[a+5]=Xr,Se[Xr+24>>2]=gr}while(0);var jr=q>>>0<16;a:do if(jr){var Ur=q+r|0;Se[v+1]=3|Ur;var xr=Ur+(or+4)|0,zr=1|Se[xr>>2];Se[xr>>2]=zr}else if(Se[v+1]=3|r,Se[_+(e+1)]=1|q,Se[(q>>2)+e+_]=q,q>>>0<256){var Vr=q>>>2&1073741822,Br=(Vr<<2)+vi+40|0,Hr=Me[vi>>2],Kr=1<<(q>>>3),Yr=0==(Hr&Kr|0);do{if(!Yr){var Gr=(Vr+2<<2)+vi+40|0,Wr=Me[Gr>>2];if(Wr>>>0>=Me[vi+16>>2]>>>0){var Zr=Wr,Qr=Gr;break}throw Ka(),"Reached an unreachable!"}Se[vi>>2]=Hr|Kr;var Zr=Br,Qr=(Vr+2<<2)+vi+40|0}while(0);var Qr,Zr;Se[Qr>>2]=ur,Se[Zr+12>>2]=ur,Se[_+(e+2)]=Zr,Se[_+(e+3)]=Br}else{var qr=kr,$r=q>>>8,Jr=0==(0|$r);do if(Jr)var ra=0;else{if(q>>>0>16777215){var ra=31;break}var aa=($r+1048320|0)>>>16&8,ea=$r<>>16&4,va=ea<>>16&2,fa=14-(ia|aa|ta)+(va<>>15)|0,ra=q>>>((fa+7|0)>>>0)&1|fa<<1}while(0);var ra,_a=(ra<<2)+vi+304|0;Se[_+(e+7)]=ra;var sa=r+(or+16)|0;Se[_+(e+5)]=0,Se[sa>>2]=0;var na=Se[vi+4>>2],oa=1<>2]=la,Se[_a>>2]=qr,Se[_+(e+6)]=_a,Se[_+(e+3)]=qr,Se[_+(e+2)]=qr}else{if(31==(0|ra))var ba=0;else var ba=25-(ra>>>1)|0;for(var ba,ka=q<>2];;){var ua,ka;if((Se[ua+4>>2]&-8|0)==(0|q)){var ca=ua+8|0,ha=Me[ca>>2],da=Me[vi+16>>2],wa=ua>>>0>>0;do if(!wa){if(ha>>>0>>0)break;Se[ha+12>>2]=qr,Se[ca>>2]=qr,Se[_+(e+2)]=ha,Se[_+(e+3)]=ua,Se[_+(e+6)]=0;break a}while(0);throw Ka(),"Reached an unreachable!"}var pa=(ka>>>31<<2)+ua+16|0,Ea=Me[pa>>2];if(0==(0|Ea)){if(pa>>>0>=Me[vi+16>>2]>>>0){Se[pa>>2]=qr,Se[_+(e+6)]=ua,Se[_+(e+3)]=qr,Se[_+(e+2)]=qr;break a}throw Ka(),"Reached an unreachable!"}var ka=ka<<1,ua=Ea}}}while(0);var nr=$+8|0;break r}while(0);throw Ka(),"Reached an unreachable!"}var nr=0}while(0);var nr;return nr}function ia(r){var a;0==(0|Se[ti>>2])&&ba();var e=r>>>0<4294967232;r:do if(e){var i=Me[vi+24>>2];if(0==(0|i)){var v=0;break}var t=Me[vi+12>>2],f=t>>>0>(r+40|0)>>>0;do if(f){var _=Me[ti+8>>2],s=-40-r-1+t+_|0,n=Math.floor((s>>>0)/(_>>>0)),o=(n-1)*_|0,l=i,b=ua(l);if(0!=(8&Se[b+12>>2]|0))break;var k=re(0),a=(b+4|0)>>2;if((0|k)!=(Se[b>>2]+Se[a]|0))break;var u=o>>>0>2147483646?-2147483648-_|0:o,c=0|-u,h=re(c),d=re(0);if(!((0|h)!=-1&d>>>0>>0))break;var w=k-d|0;if((0|k)==(0|d))break;var p=Se[a]-w|0;Se[a]=p;var E=Se[vi+432>>2]-w|0;Se[vi+432>>2]=E;var A=Se[vi+24>>2],g=Se[vi+12>>2]-w|0;ca(A,g);var v=(0|k)!=(0|d);break r}while(0);if(Me[vi+12>>2]>>>0<=Me[vi+28>>2]>>>0){var v=0;break}Se[vi+28>>2]=-1;var v=0}else var v=0;while(0);var v;return 1&v}function va(r){var a,e,i,v,t,f,_,s=r>>2,n=0==(0|r);r:do if(!n){var o=r-8|0,l=o,b=Me[vi+16>>2],k=o>>>0>>0;a:do if(!k){var u=Me[r-4>>2],c=3&u;if(1==(0|c))break;var h=u&-8,f=h>>2,d=r+(h-8)|0,w=d,p=0==(1&u|0);e:do if(p){var E=Me[o>>2];if(0==(0|c))break r;var A=-8-E|0,t=A>>2,g=r+A|0,y=g,m=E+h|0;if(g>>>0>>0)break a;if((0|y)==(0|Se[vi+20>>2])){var v=(r+(h-4)|0)>>2;if(3!=(3&Se[v]|0)){var S=y,i=S>>2,M=m;break}Se[vi+8>>2]=m;var C=Se[v]&-2;Se[v]=C,Se[t+(s+1)]=1|m,Se[d>>2]=m;break r}if(E>>>0<256){var R=Me[t+(s+2)],T=Me[t+(s+3)];if((0|R)!=(0|T)){var O=((E>>>2&1073741822)<<2)+vi+40|0,N=(0|R)!=(0|O)&R>>>0>>0;do if(!N){if(!((0|T)==(0|O)|T>>>0>=b>>>0))break;Se[R+12>>2]=T,Se[T+8>>2]=R;var S=y,i=S>>2,M=m;break e}while(0);throw Ka(),"Reached an unreachable!"}var I=Se[vi>>2]&(1<<(E>>>3)^-1);Se[vi>>2]=I;var S=y,i=S>>2,M=m}else{var P=g,D=Me[t+(s+6)],L=Me[t+(s+3)],F=(0|L)==(0|P);do if(F){var X=A+(r+20)|0,j=Se[X>>2];if(0==(0|j)){var U=A+(r+16)|0,x=Se[U>>2];if(0==(0|x)){var z=0,e=z>>2;break}var V=U,B=x}else{var V=X,B=j;_=21}for(;;){var B,V,H=B+20|0,K=Se[H>>2];if(0==(0|K)){var Y=B+16|0,G=Me[Y>>2];if(0==(0|G))break;var V=Y,B=G}else var V=H,B=K}if(V>>>0>>0)throw Ka(),"Reached an unreachable!";Se[V>>2]=0;var z=B,e=z>>2}else{var W=Me[t+(s+2)];if(W>>>0>>0)throw Ka(),"Reached an unreachable!";Se[W+12>>2]=L,Se[L+8>>2]=W;var z=L,e=z>>2}while(0);var z;if(0==(0|D)){var S=y,i=S>>2,M=m;break}var Z=A+(r+28)|0,Q=(Se[Z>>2]<<2)+vi+304|0,q=(0|P)==(0|Se[Q>>2]);do{if(q){if(Se[Q>>2]=z,0!=(0|z))break;var $=Se[vi+4>>2]&(1<>2]^-1);Se[vi+4>>2]=$;var S=y,i=S>>2,M=m;break e}if(D>>>0>2]>>>0)throw Ka(),"Reached an unreachable!";var J=D+16|0;if((0|Se[J>>2])==(0|P)?Se[J>>2]=z:Se[D+20>>2]=z,0==(0|z)){var S=y,i=S>>2,M=m;break e}}while(0);if(z>>>0>2]>>>0)throw Ka(),"Reached an unreachable!";Se[e+6]=D;var rr=Me[t+(s+4)];if(0!=(0|rr)){if(rr>>>0>2]>>>0)throw Ka(),"Reached an unreachable!";Se[e+4]=rr,Se[rr+24>>2]=z}var ar=Me[t+(s+5)];if(0==(0|ar)){var S=y,i=S>>2,M=m;break}if(ar>>>0>2]>>>0)throw Ka(),"Reached an unreachable!";Se[e+5]=ar,Se[ar+24>>2]=z;var S=y,i=S>>2,M=m}}else var S=l,i=S>>2,M=h;while(0);var M,S,er=S;if(er>>>0>=d>>>0)break;var ir=r+(h-4)|0,vr=Me[ir>>2];if(0==(1&vr|0))break;var tr=0==(2&vr|0);do{if(tr){if((0|w)==(0|Se[vi+24>>2])){var fr=Se[vi+12>>2]+M|0;Se[vi+12>>2]=fr,Se[vi+24>>2]=S;var _r=1|fr;if(Se[i+1]=_r,(0|S)==(0|Se[vi+20>>2])&&(Se[vi+20>>2]=0,Se[vi+8>>2]=0),fr>>>0<=Me[vi+28>>2]>>>0)break r;ia(0);break r}if((0|w)==(0|Se[vi+20>>2])){var sr=Se[vi+8>>2]+M|0;Se[vi+8>>2]=sr,Se[vi+20>>2]=S;var nr=1|sr;Se[i+1]=nr;var or=er+sr|0;Se[or>>2]=sr;break r}var lr=(vr&-8)+M|0,br=vr>>>3,kr=vr>>>0<256;e:do if(kr){var ur=Me[s+f],cr=Me[((4|h)>>2)+s];if((0|ur)!=(0|cr)){var hr=((vr>>>2&1073741822)<<2)+vi+40|0,dr=(0|ur)==(0|hr);do{if(!dr){if(ur>>>0>2]>>>0){_=66;break}_=63;break}_=63}while(0);do if(63==_){if((0|cr)!=(0|hr)&&cr>>>0>2]>>>0)break;Se[ur+12>>2]=cr,Se[cr+8>>2]=ur;break e}while(0);throw Ka(),"Reached an unreachable!"}var wr=Se[vi>>2]&(1<>2]=wr}else{var pr=d,Er=Me[f+(s+4)],Ar=Me[((4|h)>>2)+s],gr=(0|Ar)==(0|pr);do if(gr){var yr=h+(r+12)|0,mr=Se[yr>>2];if(0==(0|mr)){var Sr=h+(r+8)|0,Mr=Se[Sr>>2];if(0==(0|Mr)){var Cr=0,a=Cr>>2;break}var Rr=Sr,Tr=Mr}else{var Rr=yr,Tr=mr;_=73}for(;;){var Tr,Rr,Or=Tr+20|0,Nr=Se[Or>>2];if(0==(0|Nr)){var Ir=Tr+16|0,Pr=Me[Ir>>2];if(0==(0|Pr))break;var Rr=Ir,Tr=Pr}else var Rr=Or,Tr=Nr}if(Rr>>>0>2]>>>0)throw Ka(),"Reached an unreachable!";Se[Rr>>2]=0;var Cr=Tr,a=Cr>>2}else{var Dr=Me[s+f];if(Dr>>>0>2]>>>0)throw Ka(),"Reached an unreachable!";Se[Dr+12>>2]=Ar, -Se[Ar+8>>2]=Dr;var Cr=Ar,a=Cr>>2}while(0);var Cr;if(0==(0|Er))break;var Lr=h+(r+20)|0,Fr=(Se[Lr>>2]<<2)+vi+304|0,Xr=(0|pr)==(0|Se[Fr>>2]);do{if(Xr){if(Se[Fr>>2]=Cr,0!=(0|Cr))break;var jr=Se[vi+4>>2]&(1<>2]^-1);Se[vi+4>>2]=jr;break e}if(Er>>>0>2]>>>0)throw Ka(),"Reached an unreachable!";var Ur=Er+16|0;if((0|Se[Ur>>2])==(0|pr)?Se[Ur>>2]=Cr:Se[Er+20>>2]=Cr,0==(0|Cr))break e}while(0);if(Cr>>>0>2]>>>0)throw Ka(),"Reached an unreachable!";Se[a+6]=Er;var xr=Me[f+(s+2)];if(0!=(0|xr)){if(xr>>>0>2]>>>0)throw Ka(),"Reached an unreachable!";Se[a+4]=xr,Se[xr+24>>2]=Cr}var zr=Me[f+(s+3)];if(0==(0|zr))break;if(zr>>>0>2]>>>0)throw Ka(),"Reached an unreachable!";Se[a+5]=zr,Se[zr+24>>2]=Cr}while(0);if(Se[i+1]=1|lr,Se[er+lr>>2]=lr,(0|S)!=(0|Se[vi+20>>2])){var Vr=lr;break}Se[vi+8>>2]=lr;break r}Se[ir>>2]=vr&-2,Se[i+1]=1|M,Se[er+M>>2]=M;var Vr=M}while(0);var Vr;if(Vr>>>0<256){var Br=Vr>>>2&1073741822,Hr=(Br<<2)+vi+40|0,Kr=Me[vi>>2],Yr=1<<(Vr>>>3),Gr=0==(Kr&Yr|0);do{if(!Gr){var Wr=(Br+2<<2)+vi+40|0,Zr=Me[Wr>>2];if(Zr>>>0>=Me[vi+16>>2]>>>0){var Qr=Zr,qr=Wr;break}throw Ka(),"Reached an unreachable!"}Se[vi>>2]=Kr|Yr;var Qr=Hr,qr=(Br+2<<2)+vi+40|0}while(0);var qr,Qr;Se[qr>>2]=S,Se[Qr+12>>2]=S,Se[i+2]=Qr,Se[i+3]=Hr;break r}var $r=S,Jr=Vr>>>8,ra=0==(0|Jr);do if(ra)var aa=0;else{if(Vr>>>0>16777215){var aa=31;break}var ea=(Jr+1048320|0)>>>16&8,va=Jr<>>16&4,_a=va<>>16&2,na=14-(fa|ea|sa)+(_a<>>15)|0,aa=Vr>>>((na+7|0)>>>0)&1|na<<1}while(0);var aa,oa=(aa<<2)+vi+304|0;Se[i+7]=aa,Se[i+5]=0,Se[i+4]=0;var la=Se[vi+4>>2],ba=1<>2]=ua,Se[oa>>2]=$r,Se[i+6]=oa,Se[i+3]=S,Se[i+2]=S}else{if(31==(0|aa))var ca=0;else var ca=25-(aa>>>1)|0;for(var ca,ha=Vr<>2];;){var da,ha;if((Se[da+4>>2]&-8|0)==(0|Vr)){var wa=da+8|0,pa=Me[wa>>2],Ea=Me[vi+16>>2],Aa=da>>>0>>0;do if(!Aa){if(pa>>>0>>0)break;Se[pa+12>>2]=$r,Se[wa>>2]=$r,Se[i+2]=pa,Se[i+3]=da,Se[i+6]=0;break e}while(0);throw Ka(),"Reached an unreachable!"}var ga=(ha>>>31<<2)+da+16|0,ya=Me[ga>>2];if(0==(0|ya)){if(ga>>>0>=Me[vi+16>>2]>>>0){Se[ga>>2]=$r,Se[i+6]=da,Se[i+3]=S,Se[i+2]=S;break e}throw Ka(),"Reached an unreachable!"}var ha=ha<<1,da=ya}}while(0);var ma=Se[vi+32>>2]-1|0;if(Se[vi+32>>2]=ma,0!=(0|ma))break r;ta();break r}while(0);throw Ka(),"Reached an unreachable!"}while(0)}function ta(){var r=Se[vi+452>>2],a=0==(0|r);r:do if(!a)for(var e=r;;){var e,i=Se[e+8>>2];if(0==(0|i))break r;var e=i}while(0);Se[vi+32>>2]=-1}function fa(r,a){if(0==(0|r))var e=Jr(a),i=e;else var v=la(r,a),i=v;var i;return i}function _a(r,a){var e,i=r>>>0<9;do if(i)var v=Jr(a),t=v;else{var f=r>>>0<16?16:r,_=0==(f-1&f|0);r:do if(_)var s=f;else{if(f>>>0<=16){var s=16;break}for(var n=16;;){var n,o=n<<1;if(o>>>0>=f>>>0){var s=o;break r}var n=o}}while(0);var s;if((-64-s|0)>>>0>a>>>0){if(a>>>0<11)var l=16;else var l=a+11&-8;var l,b=Jr(l+(s+12)|0);if(0==(0|b)){var t=0;break}var k=b-8|0;if(0==((b>>>0)%(s>>>0)|0))var u=k,c=0;else{var h=b+(s-1)&-s,d=h-8|0,w=k;if((d-w|0)>>>0>15)var p=d;else var p=h+(s-8)|0;var p,E=p-w|0,e=(b-4|0)>>2,A=Se[e],g=(A&-8)-E|0;if(0==(3&A|0)){var y=Se[k>>2]+E|0;Se[p>>2]=y,Se[p+4>>2]=g;var u=p,c=0}else{var m=p+4|0,S=g|1&Se[m>>2]|2;Se[m>>2]=S;var M=g+(p+4)|0,C=1|Se[M>>2];Se[M>>2]=C;var R=E|1&Se[e]|2;Se[e]=R;var T=b+(E-4)|0,O=1|Se[T>>2];Se[T>>2]=O;var u=p,c=b}}var c,u,N=u+4|0,I=Me[N>>2],P=0==(3&I|0);do if(P)var D=0;else{var L=I&-8;if(L>>>0<=(l+16|0)>>>0){var D=0;break}var F=L-l|0;Se[N>>2]=l|1&I|2,Se[u+(4|l)>>2]=3|F;var X=u+(4|L)|0,j=1|Se[X>>2];Se[X>>2]=j;var D=l+(u+8)|0}while(0);var D;0!=(0|c)&&va(c),0!=(0|D)&&va(D);var t=u+8|0}else{var U=Je();Se[U>>2]=12;var t=0}}while(0);var t;return t}function sa(r,a,e,i){var v,t;0==(0|Se[ti>>2])&&ba();var f=0==(0|i),_=0==(0|r);do{if(f){if(_){var s=Jr(0),n=s;t=30;break}var o=r<<2;if(o>>>0<11){var l=0,b=16;t=9;break}var l=0,b=o+11&-8;t=9;break}if(_){var n=i;t=30;break}var l=i,b=0;t=9;break}while(0);do if(9==t){var b,l,k=0==(1&e|0);r:do if(k){if(_){var u=0,c=0;break}for(var h=0,d=0;;){var d,h,w=Me[a+(d<<2)>>2];if(w>>>0<11)var p=16;else var p=w+11&-8;var p,E=p+h|0,A=d+1|0;if((0|A)==(0|r)){var u=0,c=E;break r}var h=E,d=A}}else{var g=Me[a>>2];if(g>>>0<11)var y=16;else var y=g+11&-8;var y,u=y,c=y*r|0}while(0);var c,u,m=Jr(b-4+c|0);if(0==(0|m)){var n=0;break}var S=m-8|0,M=Se[m-4>>2]&-8;if(0!=(2&e|0)){var C=-4-b+M|0;Fa(m,0,C,1)}if(0==(0|l)){var R=m+c|0,T=M-c|3;Se[m+(c-4)>>2]=T;var O=R,v=O>>2,N=c}else var O=l,v=O>>2,N=M;var N,O;Se[v]=m;var I=r-1|0,P=0==(0|I);r:do if(P)var D=S,L=N;else if(0==(0|u))for(var F=S,X=N,j=0;;){var j,X,F,U=Me[a+(j<<2)>>2];if(U>>>0<11)var x=16;else var x=U+11&-8;var x,z=X-x|0;Se[F+4>>2]=3|x;var V=F+x|0,B=j+1|0;if(Se[(B<<2>>2)+v]=x+(F+8)|0,(0|B)==(0|I)){var D=V,L=z;break r}var F=V,X=z,j=B}else for(var H=3|u,K=u+8|0,Y=S,G=N,W=0;;){var W,G,Y,Z=G-u|0;Se[Y+4>>2]=H;var Q=Y+u|0,q=W+1|0;if(Se[(q<<2>>2)+v]=Y+K|0,(0|q)==(0|I)){var D=Q,L=Z;break r}var Y=Q,G=Z,W=q}while(0);var L,D;Se[D+4>>2]=3|L;var n=O}while(0);var n;return n}function na(r){var a=r>>2;0==(0|Se[ti>>2])&&ba();var e=Me[vi+24>>2];if(0==(0|e))var i=0,v=0,t=0,f=0,_=0,s=0,n=0;else{for(var o=Me[vi+12>>2],l=o+40|0,b=vi+444|0,k=l,u=l,c=1;;){var c,u,k,b,h=Me[b>>2],d=h+8|0;if(0==(7&d|0))var w=0;else var w=7&-d;for(var w,p=b+4|0,E=h+w|0,A=c,g=u,y=k;;){var y,g,A,E;if(E>>>0>>0)break;if(E>>>0>=(h+Se[p>>2]|0)>>>0|(0|E)==(0|e))break;var m=Se[E+4>>2];if(7==(0|m))break;var S=m&-8,M=S+y|0;if(1==(3&m|0))var C=A+1|0,R=S+g|0;else var C=A,R=g;var R,C,E=E+S|0,A=C,g=R,y=M}var T=Me[b+8>>2];if(0==(0|T))break;var b=T,k=y,u=g,c=A}var O=Se[vi+432>>2],i=y,v=A,t=o,f=g,_=O-y|0,s=Se[vi+436>>2],n=O-g|0}var n,s,_,f,t,v,i;Se[a]=i,Se[a+1]=v,Se[a+2]=0,Se[a+3]=0,Se[a+4]=_,Se[a+5]=s,Se[a+6]=0,Se[a+7]=n,Se[a+8]=f,Se[a+9]=t}function oa(){0==(0|Se[ti>>2])&&ba();var r=Me[vi+24>>2],a=0==(0|r);r:do if(a)var e=0,i=0,v=0;else for(var t=Se[vi+436>>2],f=Me[vi+432>>2],_=vi+444|0,s=f-40-Se[vi+12>>2]|0;;){var s,_,n=Me[_>>2],o=n+8|0;if(0==(7&o|0))var l=0;else var l=7&-o;for(var l,b=_+4|0,k=n+l|0,u=s;;){var u,k;if(k>>>0>>0)break;if(k>>>0>=(n+Se[b>>2]|0)>>>0|(0|k)==(0|r))break;var c=Se[k+4>>2];if(7==(0|c))break;var h=c&-8,d=1==(3&c|0)?h:0,w=u-d|0,k=k+h|0,u=w}var p=Me[_+8>>2];if(0==(0|p)){var e=t,i=f,v=u;break r}var _=p,s=u}while(0);var v,i,e,E=Se[Se[qe>>2]+12>>2],A=(Qa(E,0|He.__str339,(ne=Oe,Oe+=4,Se[ne>>2]=e,ne)),Se[Se[qe>>2]+12>>2]),g=(Qa(A,0|He.__str1340,(ne=Oe,Oe+=4,Se[ne>>2]=i,ne)),Se[Se[qe>>2]+12>>2]);Qa(g,0|He.__str2341,(ne=Oe,Oe+=4,Se[ne>>2]=v,ne))}function la(r,a){var e,i,v,t=a>>>0>4294967231;r:do{if(!t){var f=r-8|0,_=f,i=(r-4|0)>>2,s=Me[i],n=s&-8,o=n-8|0,l=r+o|0,b=f>>>0>2]>>>0;do if(!b){var k=3&s;if(!(1!=(0|k)&(0|o)>-8))break;var e=(r+(n-4)|0)>>2;if(0==(1&Se[e]|0))break;if(a>>>0<11)var u=16;else var u=a+11&-8;var u,c=0==(0|k);do{if(c){var h=ka(_,u),d=0,w=h;v=17;break}if(n>>>0>>0){if((0|l)!=(0|Se[vi+24>>2])){v=21;break}var p=Se[vi+12>>2]+n|0;if(p>>>0<=u>>>0){v=21;break}var E=p-u|0,A=r+(u-8)|0;Se[i]=u|1&s|2;var g=1|E;Se[r+(u-4)>>2]=g,Se[vi+24>>2]=A,Se[vi+12>>2]=E;var d=0,w=_;v=17;break}var y=n-u|0;if(y>>>0<=15){var d=0,w=_;v=17;break}Se[i]=u|1&s|2,Se[r+(u-4)>>2]=3|y;var m=1|Se[e];Se[e]=m;var d=r+u|0,w=_;v=17;break}while(0);do if(17==v){var w,d;if(0==(0|w))break;0!=(0|d)&&va(d);var S=w+8|0;break r}while(0);var M=Jr(a);if(0==(0|M)){var S=0;break r}var C=0==(3&Se[i]|0)?8:4,R=n-C|0,T=R>>>0>>0?R:a;Pa(M,r,T,1),va(r);var S=M;break r}while(0);throw Ka(),"Reached an unreachable!"}var O=Je();Se[O>>2]=12;var S=0}while(0);var S;return S}function ba(){if(0==(0|Se[ti>>2])){var r=qa(8);if(0!=(r-1&r|0))throw Ka(),"Reached an unreachable!";Se[ti+8>>2]=r,Se[ti+4>>2]=r,Se[ti+12>>2]=-1,Se[ti+16>>2]=2097152,Se[ti+20>>2]=0,Se[vi+440>>2]=0;var a=$a(0);Se[ti>>2]=a&-16^1431655768}}function ka(r,a){var e=Se[r+4>>2]&-8,i=a>>>0<256;do if(i)var v=0;else{if(e>>>0>=(a+4|0)>>>0&&(e-a|0)>>>0<=Se[ti+8>>2]<<1>>>0){var v=r;break}var v=0}while(0);var v;return v}function ua(r){for(var a,e=vi+444|0,a=e>>2;;){var e,i=Me[a];if(i>>>0<=r>>>0&&(i+Se[a+1]|0)>>>0>r>>>0){var v=e;break}var t=Me[a+2];if(0==(0|t)){var v=0;break}var e=t,a=e>>2}var v;return v}function ca(r,a){var e=r,i=r+8|0;if(0==(7&i|0))var v=0;else var v=7&-i;var v,t=a-v|0;Se[vi+24>>2]=e+v|0,Se[vi+12>>2]=t,Se[v+(e+4)>>2]=1|t,Se[a+(e+4)>>2]=40;var f=Se[ti+16>>2];Se[vi+28>>2]=f}function ha(){for(var r=0;;){var r,a=r<<1,e=(a<<2)+vi+40|0;Se[vi+(a+3<<2)+40>>2]=e,Se[vi+(a+2<<2)+40>>2]=e;var i=r+1|0;if(32==(0|i))break;var r=i}}function da(r,a,e){var i,v,t,f,_=a>>2,s=r>>2,n=r+8|0;if(0==(7&n|0))var o=0;else var o=7&-n;var o,l=a+8|0;if(0==(7&l|0))var b=0,t=b>>2;else var b=7&-l,t=b>>2;var b,k=a+b|0,u=k,c=o+e|0,v=c>>2,h=r+c|0,d=h,w=k-(r+o)-e|0;Se[(o+4>>2)+s]=3|e;var p=(0|u)==(0|Se[vi+24>>2]);r:do if(p){var E=Se[vi+12>>2]+w|0;Se[vi+12>>2]=E,Se[vi+24>>2]=d;var A=1|E;Se[v+(s+1)]=A}else if((0|u)==(0|Se[vi+20>>2])){var g=Se[vi+8>>2]+w|0;Se[vi+8>>2]=g,Se[vi+20>>2]=d;var y=1|g;Se[v+(s+1)]=y;var m=r+g+c|0;Se[m>>2]=g}else{var S=Me[t+(_+1)];if(1==(3&S|0)){var M=S&-8,C=S>>>3,R=S>>>0<256;a:do if(R){var T=Me[((8|b)>>2)+_],O=Me[t+(_+3)];if((0|T)!=(0|O)){var N=((S>>>2&1073741822)<<2)+vi+40|0,I=(0|T)==(0|N);do{if(!I){if(T>>>0>2]>>>0){f=18;break}f=15;break}f=15}while(0);do if(15==f){if((0|O)!=(0|N)&&O>>>0>2]>>>0)break;Se[T+12>>2]=O,Se[O+8>>2]=T;break a}while(0);throw Ka(),"Reached an unreachable!"}var P=Se[vi>>2]&(1<>2]=P}else{var D=k,L=Me[((24|b)>>2)+_],F=Me[t+(_+3)],X=(0|F)==(0|D);do if(X){var j=16|b,U=j+(a+4)|0,x=Se[U>>2];if(0==(0|x)){var z=a+j|0,V=Se[z>>2];if(0==(0|V)){var B=0,i=B>>2;break}var H=z,K=V}else{var H=U,K=x;f=25}for(;;){var K,H,Y=K+20|0,G=Se[Y>>2];if(0==(0|G)){var W=K+16|0,Z=Me[W>>2];if(0==(0|Z))break;var H=W,K=Z}else var H=Y,K=G}if(H>>>0>2]>>>0)throw Ka(),"Reached an unreachable!";Se[H>>2]=0;var B=K,i=B>>2}else{var Q=Me[((8|b)>>2)+_];if(Q>>>0>2]>>>0)throw Ka(),"Reached an unreachable!";Se[Q+12>>2]=F,Se[F+8>>2]=Q;var B=F,i=B>>2}while(0);var B;if(0==(0|L))break;var q=b+(a+28)|0,$=(Se[q>>2]<<2)+vi+304|0,J=(0|D)==(0|Se[$>>2]);do{if(J){if(Se[$>>2]=B,0!=(0|B))break;var rr=Se[vi+4>>2]&(1<>2]^-1);Se[vi+4>>2]=rr;break a}if(L>>>0>2]>>>0)throw Ka(),"Reached an unreachable!";var ar=L+16|0;if((0|Se[ar>>2])==(0|D)?Se[ar>>2]=B:Se[L+20>>2]=B,0==(0|B))break a}while(0);if(B>>>0>2]>>>0)throw Ka(),"Reached an unreachable!";Se[i+6]=L;var er=16|b,ir=Me[(er>>2)+_];if(0!=(0|ir)){if(ir>>>0>2]>>>0)throw Ka(),"Reached an unreachable!";Se[i+4]=ir,Se[ir+24>>2]=B}var vr=Me[(er+4>>2)+_];if(0==(0|vr))break;if(vr>>>0>2]>>>0)throw Ka(),"Reached an unreachable!";Se[i+5]=vr,Se[vr+24>>2]=B}while(0);var tr=a+(M|b)|0,fr=M+w|0}else var tr=u,fr=w;var fr,tr,_r=tr+4|0,sr=Se[_r>>2]&-2;if(Se[_r>>2]=sr,Se[v+(s+1)]=1|fr,Se[(fr>>2)+s+v]=fr,fr>>>0<256){var nr=fr>>>2&1073741822,or=(nr<<2)+vi+40|0,lr=Me[vi>>2],br=1<<(fr>>>3),kr=0==(lr&br|0);do{if(!kr){var ur=(nr+2<<2)+vi+40|0,cr=Me[ur>>2];if(cr>>>0>=Me[vi+16>>2]>>>0){var hr=cr,dr=ur;break}throw Ka(),"Reached an unreachable!"}Se[vi>>2]=lr|br;var hr=or,dr=(nr+2<<2)+vi+40|0}while(0);var dr,hr;Se[dr>>2]=d,Se[hr+12>>2]=d,Se[v+(s+2)]=hr,Se[v+(s+3)]=or}else{var wr=h,pr=fr>>>8,Er=0==(0|pr);do if(Er)var Ar=0;else{if(fr>>>0>16777215){var Ar=31;break}var gr=(pr+1048320|0)>>>16&8,yr=pr<>>16&4,Sr=yr<>>16&2,Cr=14-(mr|gr|Mr)+(Sr<>>15)|0,Ar=fr>>>((Cr+7|0)>>>0)&1|Cr<<1}while(0);var Ar,Rr=(Ar<<2)+vi+304|0;Se[v+(s+7)]=Ar;var Tr=c+(r+16)|0;Se[v+(s+5)]=0,Se[Tr>>2]=0;var Or=Se[vi+4>>2],Nr=1<>2]=Ir,Se[Rr>>2]=wr,Se[v+(s+6)]=Rr,Se[v+(s+3)]=wr,Se[v+(s+2)]=wr}else{if(31==(0|Ar))var Pr=0;else var Pr=25-(Ar>>>1)|0;for(var Pr,Dr=fr<>2];;){var Lr,Dr;if((Se[Lr+4>>2]&-8|0)==(0|fr)){var Fr=Lr+8|0,Xr=Me[Fr>>2],jr=Me[vi+16>>2],Ur=Lr>>>0>>0;do if(!Ur){if(Xr>>>0>>0)break;Se[Xr+12>>2]=wr,Se[Fr>>2]=wr,Se[v+(s+2)]=Xr,Se[v+(s+3)]=Lr,Se[v+(s+6)]=0;break r}while(0);throw Ka(),"Reached an unreachable!"}var xr=(Dr>>>31<<2)+Lr+16|0,zr=Me[xr>>2];if(0==(0|zr)){if(xr>>>0>=Me[vi+16>>2]>>>0){Se[xr>>2]=wr,Se[v+(s+6)]=Lr,Se[v+(s+3)]=wr,Se[v+(s+2)]=wr;break r}throw Ka(),"Reached an unreachable!"}var Dr=Dr<<1,Lr=zr}}}}while(0);return r+(8|o)|0}function wa(r){return 0|He.__str3342}function pa(r){return 0|He.__str14343}function Ea(r){Se[r>>2]=si+8|0}function Aa(r){0!=(0|r)&&va(r)}function ga(r){ya(r);var a=r;Aa(a)}function ya(r){var a=0|r;Ye(a)}function ma(r){var a=0|r;Ea(a),Se[r>>2]=ni+8|0}function Sa(r){var a=0|r;ya(a);var e=r;Aa(e)}function Ma(r,a){var e,i,v=Me[vi+24>>2],i=v>>2,t=v,f=ua(t),_=Se[f>>2],s=Se[f+4>>2],n=_+s|0,o=_+(s-39)|0;if(0==(7&o|0))var l=0;else var l=7&-o;var l,b=_+(s-47)+l|0,k=b>>>0<(v+16|0)>>>0?t:b,u=k+8|0,e=u>>2,c=u,h=r,d=a-40|0;ca(h,d);var w=k+4|0;Se[w>>2]=27,Se[e]=Se[vi+444>>2],Se[e+1]=Se[vi+448>>2],Se[e+2]=Se[vi+452>>2],Se[e+3]=Se[vi+456>>2],Se[vi+444>>2]=r,Se[vi+448>>2]=a,Se[vi+456>>2]=0,Se[vi+452>>2]=c;var p=k+28|0;Se[p>>2]=7;var E=(k+32|0)>>>0>>0;r:do if(E)for(var A=p;;){var A,g=A+4|0;if(Se[g>>2]=7,(A+8|0)>>>0>=n>>>0)break r;var A=g}while(0);var y=(0|k)==(0|t);r:do if(!y){var m=k-v|0,S=t+m|0,M=m+(t+4)|0,C=Se[M>>2]&-2;Se[M>>2]=C;var R=1|m;Se[i+1]=R;var T=S;if(Se[T>>2]=m,m>>>0<256){var O=m>>>2&1073741822,N=(O<<2)+vi+40|0,I=Me[vi>>2],P=1<<(m>>>3),D=0==(I&P|0);do{if(!D){var L=(O+2<<2)+vi+40|0,F=Me[L>>2];if(F>>>0>=Me[vi+16>>2]>>>0){var X=F,j=L;break}throw Ka(),"Reached an unreachable!"}var U=I|P;Se[vi>>2]=U;var X=N,j=(O+2<<2)+vi+40|0}while(0);var j,X;Se[j>>2]=v,Se[X+12>>2]=v,Se[i+2]=X,Se[i+3]=N}else{var x=v,z=m>>>8,V=0==(0|z);do if(V)var B=0;else{if(m>>>0>16777215){var B=31;break}var H=(z+1048320|0)>>>16&8,K=z<>>16&4,G=K<>>16&2,Z=14-(Y|H|W)+(G<>>15)|0,B=m>>>((Z+7|0)>>>0)&1|Z<<1}while(0);var B,Q=(B<<2)+vi+304|0;Se[i+7]=B,Se[i+5]=0,Se[i+4]=0;var q=Se[vi+4>>2],$=1<>2]=J,Se[Q>>2]=x,Se[i+6]=Q,Se[i+3]=v,Se[i+2]=v}else{if(31==(0|B))var rr=0;else var rr=25-(B>>>1)|0;for(var rr,ar=m<>2];;){var er,ar;if((Se[er+4>>2]&-8|0)==(0|m)){var ir=er+8|0,vr=Me[ir>>2],tr=Me[vi+16>>2],fr=er>>>0>>0;do if(!fr){if(vr>>>0>>0)break;Se[vr+12>>2]=x,Se[ir>>2]=x,Se[i+2]=vr,Se[i+3]=er,Se[i+6]=0;break r}while(0);throw Ka(),"Reached an unreachable!"}var _r=(ar>>>31<<2)+er+16|0,sr=Me[_r>>2];if(0==(0|sr)){if(_r>>>0>=Me[vi+16>>2]>>>0){Se[_r>>2]=x,Se[i+6]=er,Se[i+3]=v,Se[i+2]=v;break r}throw Ka(),"Reached an unreachable!"}var ar=ar<<1,er=sr}}}}while(0)}function Ca(r){return d(r)}function Ra(r,a){var e=0;do Ae[r+e]=Ae[a+e],e++;while(0!=Ae[a+e-1]);return r}function Ta(){var r=Ta;return r.LLVM_SAVEDSTACKS||(r.LLVM_SAVEDSTACKS=[]),r.LLVM_SAVEDSTACKS.push(le.stackSave()),r.LLVM_SAVEDSTACKS.length-1}function Oa(r){var a=Ta,e=a.LLVM_SAVEDSTACKS[r];a.LLVM_SAVEDSTACKS.splice(r,1),le.stackRestore(e)}function Na(r,a,e){for(var i=0;it?1:-1;i++}return 0}function Ia(r,a){var e=Ca(r),i=0;do Ae[r+e+i]=Ae[a+i],i++;while(0!=Ae[a+i-1]);return r}function Pa(r,a,e,i){if(e>=20&&a%2==r%2)if(a%4==r%4){for(var v=a+e;a%4;)Ae[r++]=Ae[a++];for(var t=a>>2,f=r>>2,_=v>>2;t<_;)Se[f++]=Se[t++];for(a=t<<2,r=f<<2;a>1,n=r>>1,o=v>>1;st?1:-1}return 0}function Fa(r,a,e,i){if(e>=20){for(var v=r+e;r%4;)Ae[r++]=a;a<0&&(a+=256);for(var t=r>>2,f=v>>2,_=a|a<<8|a<<16|a<<24;t>2],xe[1]=Se[a+_+4>>2],e=ze[0]):"i64"==r?e=[Se[a+_>>2],Se[a+_+4>>2]]:(r="i32",e=Se[a+_>>2]),_+=le.getNativeFieldSize(r),e}for(var i,v,t,f=r,_=0,s=[];;){var n=f;if(i=Ae[f],0===i)break;if(v=Ae[f+1],i=="%".charCodeAt(0)){var o=!1,l=!1,b=!1,k=!1;r:for(;;){switch(v){case"+".charCodeAt(0):o=!0;break;case"-".charCodeAt(0):l=!0;break;case"#".charCodeAt(0):b=!0;break;case"0".charCodeAt(0):if(k)break r;k=!0;break;default:break r}f++,v=Ae[f+1]}var u=0;if(v=="*".charCodeAt(0))u=e("i32"),f++,v=Ae[f+1];else for(;v>="0".charCodeAt(0)&&v<="9".charCodeAt(0);)u=10*u+(v-"0".charCodeAt(0)),f++,v=Ae[f+1];var c=!1;if(v==".".charCodeAt(0)){var h=0;if(c=!0,f++,v=Ae[f+1],v=="*".charCodeAt(0))h=e("i32"),f++;else for(;;){var d=Ae[f+1];if(d<"0".charCodeAt(0)||d>"9".charCodeAt(0))break;h=10*h+(d-"0".charCodeAt(0)),f++}v=Ae[f+1]}else var h=6;var E;switch(String.fromCharCode(v)){case"h":var A=Ae[f+2];A=="h".charCodeAt(0)?(f++,E=1):E=2;break;case"l":var A=Ae[f+2];A=="l".charCodeAt(0)?(f++,E=8):E=4;break;case"L":case"q":case"j":E=8;break;case"z":case"t":case"I":E=4;break;default:E=null}if(E&&f++,v=Ae[f+1],["d","i","u","o","x","X","p"].indexOf(String.fromCharCode(v))!=-1){var m=v=="d".charCodeAt(0)||v=="i".charCodeAt(0);E=E||4;var t=e("i"+8*E);if(8==E&&(t=le.makeBigInt(t[0],t[1],v=="u".charCodeAt(0))),E<=4){var S=Math.pow(256,E)-1;t=(m?y:g)(t&S,8*E)}var M,C=Math.abs(t),R="";if(v=="d".charCodeAt(0)||v=="i".charCodeAt(0))M=y(t,8*E,1).toString(10);else if(v=="u".charCodeAt(0))M=g(t,8*E,1).toString(10),t=Math.abs(t);else if(v=="o".charCodeAt(0))M=(b?"0":"")+C.toString(8);else if(v=="x".charCodeAt(0)||v=="X".charCodeAt(0)){if(R=b?"0x":"",t<0){t=-t,M=(C-1).toString(16);for(var T=[],O=0;OP&&P>=-4?(v=(v=="g".charCodeAt(0)?"f":"F").charCodeAt(0),h-=P+1):(v=(v=="g".charCodeAt(0)?"e":"E").charCodeAt(0),h--),I=Math.min(h,20)}v=="e".charCodeAt(0)||v=="E".charCodeAt(0)?(M=t.toExponential(I),/[eE][-+]\\d$/.test(M)&&(M=M.slice(0,-1)+"0"+M.slice(-1))):v!="f".charCodeAt(0)&&v!="F".charCodeAt(0)||(M=t.toFixed(I));var D=M.split("e");if(N&&!b)for(;D[0].length>1&&D[0].indexOf(".")!=-1&&("0"==D[0].slice(-1)||"."==D[0].slice(-1));)D[0]=D[0].slice(0,-1);else for(b&&M.indexOf(".")==-1&&(D[0]+=".");h>I++;)D[0]+="0";M=D[0]+(D.length>1?"e"+D[1]:""),v=="E".charCodeAt(0)&&(M=M.toUpperCase()),o&&t>=0&&(M="+"+M)}else M=(t<0?"-":"")+"inf",k=!1;for(;M.lengthh&&(L=L.slice(0,h))):L=p("(null)",!0),!l)for(;L.length0;)s.push(" ".charCodeAt(0));l||s.push(e("i8"))}else if(v=="n".charCodeAt(0)){var X=e("i32*");Se[X>>2]=s.length}else if(v=="%".charCodeAt(0))s.push(i);else for(var O=n;O="0".charCodeAt(0)&&r<="9".charCodeAt(0)}function Ha(r){for(var a;(a=Ae[r])&&Va(a);)r++;if(!a||!Ba(a))return 0;for(var e=r;(a=Ae[e])&&Ba(a);)e++;return Math.floor(Number(s(r).substr(0,e-r)))}function Ka(r){throw ke=!0,"ABORT: "+r+", at "+(new Error).stack}function Ya(r){return Ya.ret||(Ya.ret=_([0],"i32",we)),Se[Ya.ret>>2]=r,r}function Ga(r,a,e,i){var v=$e.streams[r];if(!v||v.object.isDevice)return Ya(Ge.EBADF),-1;if(v.isWrite){if(v.object.isFolder)return Ya(Ge.EISDIR),-1;if(e<0||i<0)return Ya(Ge.EINVAL),-1;for(var t=v.object.contents;t.length>2]=a),a}function Ja(){return Ya.ret}function re(r){var a=re;a.called||(Ie=o(Ie),a.called=!0);var e=Ie;return 0!=r&&le.staticAlloc(r),e}function ae(){return Se[ae.buf>>2]}function ee(r){r=r||Module.arguments,k();var a=null;return Module._main&&(a=Module.callMain(r),Module.noExitRuntime||u()),a}var ie=[],ve=false,te="object"==typeof window,fe="function"==typeof importScripts,_e=!te&&!ve&&!fe;if(ve){print=function(r){process.stdout.write(r+"\\n")},printErr=function(r){process.stderr.write(r+"\\n")};var se=require("fs");read=function(r){var a=se.readFileSync(r).toString();return a||"/"==r[0]||(r=__dirname.split("/").slice(0,-1).join("/")+"/src/"+r,a=se.readFileSync(r).toString()),a},load=function(a){r(read(a))},ie=process.argv.slice(2)}else if(_e)this.read||(this.read=function(r){snarf(r)}),"undefined"!=typeof scriptArgs?ie=scriptArgs:"undefined"!=typeof arguments&&(ie=arguments);else if(te)this.print=printErr=function(r){console.log(r)},this.read=function(r){var a=new XMLHttpRequest;return a.open("GET",r,!1),a.send(null),a.responseText},this.arguments&&(ie=arguments);else{if(!fe)throw"Unknown runtime environment. Where are we?";this.load=importScripts}"undefined"==typeof load&&"undefined"!=typeof read&&(this.load=function(a){r(read(a))}),"undefined"==typeof printErr&&(this.printErr=function(){}),"undefined"==typeof print&&(this.print=printErr);try{this.Module=Module}catch(r){this.Module=Module={}}Module.arguments||(Module.arguments=ie),Module.print&&(print=Module.print);var ne,oe,le={stackSave:function(){return Oe},stackRestore:function(r){Oe=r},forceAlign:function(r,a){if(a=a||4,1==a)return r;if(isNumber(r)&&isNumber(a))return Math.ceil(r/a)*a;if(isNumber(a)&&isPowerOfTwo(a)){var e=log2(a);return"(((("+r+")+"+(a-1)+")>>"+e+")<<"+e+")"}return"Math.ceil(("+r+")/"+a+")*"+a},isNumberType:function(r){return r in le.INT_TYPES||r in le.FLOAT_TYPES},isPointerType:function(r){return"*"==r[r.length-1]},isStructType:function(r){return!isPointerType(r)&&(!!/^\\[\\d+\\ x\\ (.*)\\]/.test(r)||(!!/?/.test(r)||"%"==r[0]))},INT_TYPES:{i1:0,i8:0,i16:0,i32:0,i64:0},FLOAT_TYPES:{float:0,double:0},bitshift64:function(r,e,i,v){var t=Math.pow(2,v)-1;if(v<32)switch(i){case"shl":return[r<>>32-v];case"ashr":return[(r>>>v|(e&t)<<32-v)>>0>>>0,e>>v>>>0];case"lshr":return[(r>>>v|(e&t)<<32-v)>>>0,e>>>v]}else if(32==v)switch(i){case"shl":return[0,r];case"ashr":return[e,(0|e)<0?t:0];case"lshr":return[e,0]}else switch(i){case"shl":return[0,r<>v-32>>>0,(0|e)<0?t:0];case"lshr":return[e>>>v-32,0]}a("unknown bitshift64 op: "+[value,i,v])},or64:function(r,a){var e=0|r|(0|a),i=4294967296*(Math.round(r/4294967296)|Math.round(a/4294967296));return e+i},and64:function(r,a){var e=(0|r)&(0|a),i=4294967296*(Math.round(r/4294967296)&Math.round(a/4294967296));return e+i},xor64:function(r,a){var e=(0|r)^(0|a),i=4294967296*(Math.round(r/4294967296)^Math.round(a/4294967296));return e+i},getNativeTypeSize:function(r,a){if(1==le.QUANTUM_SIZE)return 1;var i={"%i1":1,"%i8":1,"%i16":2,"%i32":4,"%i64":8,"%float":4,"%double":8}["%"+r];if(!i)if("*"==r[r.length-1])i=le.QUANTUM_SIZE;else if("i"==r[0]){var v=parseInt(r.substr(1));e(v%8==0),i=v/8}return i},getNativeFieldSize:function(r){return Math.max(le.getNativeTypeSize(r),le.QUANTUM_SIZE)},dedup:function(r,a){var e={};return a?r.filter(function(r){return!e[r[a]]&&(e[r[a]]=!0,!0)}):r.filter(function(r){return!e[r]&&(e[r]=!0,!0)})},set:function(){for(var r="object"==typeof arguments[0]?arguments[0]:arguments,a={},e=0;e=0&&a.push(f-e),e=f,f}),r.flatSize=le.alignMemory(r.flatSize,r.alignSize),0==a.length?r.flatFactor=r.flatSize:1==le.dedup(a).length&&(r.flatFactor=a[0]),r.needsFlattening=1!=r.flatFactor,r.flatIndexes},generateStructInfo:function(r,a,i){var v,t;if(a){if(i=i||0,v=("undefined"==typeof Types?le.typeInfo:Types.types)[a],!v)return null;e(v.fields.length===r.length,"Number of named fields must match the type for "+a),t=v.flatIndexes}else{var v={fields:r.map(function(r){return r[0]})};t=le.calculateStructAlignment(v)}var f={__size__:v.flatSize};return a?r.forEach(function(r,a){if("string"==typeof r)f[r]=t[a]+i;else{var e;for(var _ in r)e=_;f[e]=le.generateStructInfo(r[e],v.fields[a],t[a])}}):r.forEach(function(r,a){f[r[1]]=t[a]}),f},stackAlloc:function(r){var a=Oe;return Oe+=r,Oe=Oe+3>>2<<2,a},staticAlloc:function(r){var a=Ie;return Ie+=r,Ie=Ie+3>>2<<2,Ie>=Le&&l(),a},alignMemory:function(r,a){var e=r=Math.ceil(r/(a?a:4))*(a?a:4);return e},makeBigInt:function(r,a,e){var i=e?(r>>>0)+4294967296*(a>>>0):(r>>>0)+4294967296*(0|a);return i},QUANTUM_SIZE:4,__dummy__:0},be={MAX_ALLOWED:0,corrections:0,sigs:{},note:function(r,e,i){e||(this.corrections++,this.corrections>=this.MAX_ALLOWED&&a("\\n\\nToo many corrections!"))},print:function(){}},ke=!1,ue=0,ce=this;Module.ccall=i,Module.setValue=t,Module.getValue=f;var he=0,de=1,we=2;Module.ALLOC_NORMAL=he,Module.ALLOC_STACK=de,Module.ALLOC_STATIC=we,Module.allocate=_,Module.Pointer_stringify=s,Module.Array_stringify=n;var pe,Ee,Ae,ge,ye,me,Se,Me,Ce,Re,Te,Oe,Ne,Ie,Pe=4096,De=Module.TOTAL_STACK||5242880,Le=Module.TOTAL_MEMORY||10485760;Module.FAST_MEMORY||2097152;e(!!(Int32Array&&Float64Array&&new Int32Array(1).subarray&&new Int32Array(1).set),"Cannot fallback to non-typed array case: Code is too specialized");var Fe=new ArrayBuffer(Le);Ae=new Int8Array(Fe),ye=new Int16Array(Fe),Se=new Int32Array(Fe),ge=new Uint8Array(Fe),me=new Uint16Array(Fe),Me=new Uint32Array(Fe),Ce=new Float32Array(Fe),Re=new Float64Array(Fe),Se[0]=255,e(255===ge[0]&&0===ge[3],"Typed arrays 2 must be run on a little-endian system");var Xe=p("(null)");Ie=Xe.length;for(var je=0;je>2)),ze=(Ce.subarray(Ue>>2),Re.subarray(Ue>>3));Ne=Ue+8,Ie=o(Ne);var Ve=[],Be=[];Module.Array_copy=c,Module.TypedArray_copy=h,Module.String_len=d,Module.String_copy=w,Module.intArrayFromString=p,Module.intArrayToString=E,Module.writeStringToMemory=A;var He=[],Ke=0;O.X=1,N.X=1,V.X=1,H.X=1,G.X=1,W.X=1,q.X=1,$.X=1,rr.X=1,ar.X=1,er.X=1,vr.X=1,nr.X=1,or.X=1,kr.X=1,hr.X=1,Ar.X=1,Sr.X=1,Tr.X=1,Ir.X=1,Pr.X=1,Dr.X=1,Lr.X=1,Fr.X=1,Xr.X=1,zr.X=1,Vr.X=1,Br.X=1,Gr.X=1,$r.X=1,Module._malloc=Jr,Jr.X=1,ra.X=1,aa.X=1,ea.X=1,ia.X=1,Module._free=va,va.X=1,_a.X=1,sa.X=1,na.X=1,oa.X=1,la.X=1,da.X=1,Ma.X=1;var Ye,Ge={E2BIG:7,EACCES:13,EADDRINUSE:98,EADDRNOTAVAIL:99,EAFNOSUPPORT:97,EAGAIN:11,EALREADY:114,EBADF:9,EBADMSG:74,EBUSY:16,ECANCELED:125,ECHILD:10,ECONNABORTED:103,ECONNREFUSED:111,ECONNRESET:104,EDEADLK:35,EDESTADDRREQ:89,EDOM:33,EDQUOT:122,EEXIST:17,EFAULT:14,EFBIG:27,EHOSTUNREACH:113,EIDRM:43,EILSEQ:84,EINPROGRESS:115,EINTR:4,EINVAL:22,EIO:5,EISCONN:106,EISDIR:21,ELOOP:40,EMFILE:24,EMLINK:31,EMSGSIZE:90,EMULTIHOP:72,ENAMETOOLONG:36,ENETDOWN:100,ENETRESET:102,ENETUNREACH:101,ENFILE:23,ENOBUFS:105,ENODATA:61,ENODEV:19,ENOENT:2,ENOEXEC:8,ENOLCK:37,ENOLINK:67,ENOMEM:12,ENOMSG:42,ENOPROTOOPT:92,ENOSPC:28,ENOSR:63,ENOSTR:60,ENOSYS:38,ENOTCONN:107,ENOTDIR:20,ENOTEMPTY:39,ENOTRECOVERABLE:131,ENOTSOCK:88,ENOTSUP:95,ENOTTY:25,ENXIO:6,EOVERFLOW:75,EOWNERDEAD:130,EPERM:1,EPIPE:32,EPROTO:71,EPROTONOSUPPORT:93,EPROTOTYPE:91,ERANGE:34,EROFS:30,ESPIPE:29,ESRCH:3,ESTALE:116,ETIME:62,ETIMEDOUT:110,ETXTBSY:26,EWOULDBLOCK:11,EXDEV:18},We=0,Ze=0,Qe=0,qe=0,$e={currentPath:"/",nextInode:2,streams:[null],ignorePermissions:!0,absolutePath:function(r,a){if("string"!=typeof r)return null;void 0===a&&(a=$e.currentPath),r&&"/"==r[0]&&(a="");for(var e=a+"/"+r,i=e.split("/").reverse(),v=[""];i.length;){var t=i.pop();""==t||"."==t||(".."==t?v.length>1&&v.pop():v.push(t))}return 1==v.length?"/":v.join("/")},analyzePath:function(r,a,e){var i={isRoot:!1,exists:!1,error:0,name:null,path:null,object:null,parentExists:!1,parentPath:null,parentObject:null};if(r=$e.absolutePath(r),"/"==r)i.isRoot=!0,i.exists=i.parentExists=!0,i.name="/",i.path=i.parentPath="/",i.object=i.parentObject=$e.root;else if(null!==r){e=e||0,r=r.slice(1).split("/");for(var v=$e.root,t=[""];r.length;){1==r.length&&v.isFolder&&(i.parentExists=!0,i.parentPath=1==t.length?"/":t.join("/"),i.parentObject=v,i.name=r[0]);var f=r.shift();if(!v.isFolder){i.error=Ge.ENOTDIR;break}if(!v.read){i.error=Ge.EACCES;break}if(!v.contents.hasOwnProperty(f)){i.error=Ge.ENOENT;break}if(v=v.contents[f],v.link&&(!a||0!=r.length)){if(e>40){i.error=Ge.ELOOP;break}var _=$e.absolutePath(v.link,t.join("/"));return $e.analyzePath([_].concat(r).join("/"),a,e+1)}t.push(f),0==r.length&&(i.exists=!0,i.path=t.join("/"),i.object=v)}return i}return i},findObject:function(r,a){$e.ensureRoot();var e=$e.analyzePath(r,a);return e.exists?e.object:(Ya(e.error),null)},createObject:function(r,a,e,i,v){if(r||(r="/"),"string"==typeof r&&(r=$e.findObject(r)),!r)throw Ya(Ge.EACCES),new Error("Parent path must exist.");if(!r.isFolder)throw Ya(Ge.ENOTDIR), -new Error("Parent must be a folder.");if(!r.write&&!$e.ignorePermissions)throw Ya(Ge.EACCES),new Error("Parent folder must be writeable.");if(!a||"."==a||".."==a)throw Ya(Ge.ENOENT),new Error("Name must not be empty.");if(r.contents.hasOwnProperty(a))throw Ya(Ge.EEXIST),new Error("Can't overwrite object.");r.contents[a]={read:void 0===i||i,write:void 0!==v&&v,timestamp:Date.now(),inodeNumber:$e.nextInode++};for(var t in e)e.hasOwnProperty(t)&&(r.contents[a][t]=e[t]);return r.contents[a]},createFolder:function(r,a,e,i){var v={isFolder:!0,isDevice:!1,contents:{}};return $e.createObject(r,a,v,e,i)},createPath:function(r,a,e,i){var v=$e.findObject(r);if(null===v)throw new Error("Invalid parent.");for(a=a.split("/").reverse();a.length;){var t=a.pop();t&&(v.contents.hasOwnProperty(t)||$e.createFolder(v,t,e,i),v=v.contents[t])}return v},createFile:function(r,a,e,i,v){return e.isFolder=!1,$e.createObject(r,a,e,i,v)},createDataFile:function(r,a,e,i,v){if("string"==typeof e){for(var t=new Array(e.length),f=0,_=e.length;f<_;++f)t[f]=e.charCodeAt(f);e=t}var s={isDevice:!1,contents:e};return $e.createFile(r,a,s,i,v)},createLazyFile:function(r,a,e,i,v){var t={isDevice:!1,url:e};return $e.createFile(r,a,t,i,v)},createLink:function(r,a,e,i,v){var t={isDevice:!1,link:e};return $e.createFile(r,a,t,i,v)},createDevice:function(r,a,e,i){if(!e&&!i)throw new Error("A device must have at least one callback defined.");var v={isDevice:!0,input:e,output:i};return $e.createFile(r,a,v,Boolean(e),Boolean(i))},forceLoadFile:function(r){if(r.isDevice||r.isFolder||r.link||r.contents)return!0;var a=!0;if("undefined"!=typeof XMLHttpRequest)e("Cannot do synchronous binary XHRs in modern browsers. Use --embed-file or --preload-file in emcc");else{if("undefined"==typeof read)throw new Error("Cannot load without read() or XMLHttpRequest.");try{r.contents=p(read(r.url),!0)}catch(r){a=!1}}return a||Ya(Ge.EIO),a},ensureRoot:function(){$e.root||($e.root={read:!0,write:!0,isFolder:!0,isDevice:!1,timestamp:Date.now(),inodeNumber:1,contents:{}})},init:function(r,a,i){function v(r){null===r||r==="\\n".charCodeAt(0)?(a.printer(a.buffer.join("")),a.buffer=[]):a.buffer.push(String.fromCharCode(r))}e(!$e.init.initialized,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)"),$e.init.initialized=!0,$e.ensureRoot(),r=r||Module.stdin,a=a||Module.stdout,i=i||Module.stderr;var t=!0,f=!0,s=!0;r||(t=!1,r=function(){if(!r.cache||!r.cache.length){var a;"undefined"!=typeof window&&"function"==typeof window.prompt?a=window.prompt("Input: "):"function"==typeof readline&&(a=readline()),a||(a=""),r.cache=p(a+"\\n",!0)}return r.cache.shift()}),a||(f=!1,a=v),a.printer||(a.printer=print),a.buffer||(a.buffer=[]),i||(s=!1,i=v),i.printer||(i.printer=print),i.buffer||(i.buffer=[]),$e.createFolder("/","tmp",!0,!0);var n=$e.createFolder("/","dev",!0,!0),o=$e.createDevice(n,"stdin",r),l=$e.createDevice(n,"stdout",null,a),b=$e.createDevice(n,"stderr",null,i);$e.createDevice(n,"tty",r,a),$e.streams[1]={path:"/dev/stdin",object:o,position:0,isRead:!0,isWrite:!1,isAppend:!1,isTerminal:!t,error:!1,eof:!1,ungotten:[]},$e.streams[2]={path:"/dev/stdout",object:l,position:0,isRead:!1,isWrite:!0,isAppend:!1,isTerminal:!f,error:!1,eof:!1,ungotten:[]},$e.streams[3]={path:"/dev/stderr",object:b,position:0,isRead:!1,isWrite:!0,isAppend:!1,isTerminal:!s,error:!1,eof:!1,ungotten:[]},We=_([1],"void*",we),Ze=_([2],"void*",we),Qe=_([3],"void*",we),$e.createPath("/","dev/shm/tmp",!0,!0),$e.streams[We]=$e.streams[1],$e.streams[Ze]=$e.streams[2],$e.streams[Qe]=$e.streams[3],qe=_([_([0,0,0,0,We,0,0,0,Ze,0,0,0,Qe,0,0,0],"void*",we)],"void*",we)},quit:function(){$e.init.initialized&&($e.streams[2]&&$e.streams[2].object.output.buffer.length>0&&$e.streams[2].object.output("\\n".charCodeAt(0)),$e.streams[3]&&$e.streams[3].object.output.buffer.length>0&&$e.streams[3].object.output("\\n".charCodeAt(0)))}},Je=Ja;Ve.unshift({func:function(){$e.ignorePermissions=!1,$e.init.initialized||$e.init()}}),Be.push({func:function(){$e.quit()}}),Ya(0),ae.buf=_(12,"void*",we),Module.callMain=function(r){function a(){for(var r=0;r<3;r++)i.push(0)}var e=r.length+1,i=[_(p("/bin/this.program"),"i8",we)];a();for(var v=0;v>2]=0|He.__str,Se[ri+4>>2]=0|He.__str1,Se[ri+16>>2]=0|He.__str2,Se[ri+20>>2]=0|He.__str3,Se[ri+32>>2]=0|He.__str4,Se[ri+36>>2]=0|He.__str5,Se[ri+48>>2]=0|He.__str6,Se[ri+52>>2]=0|He.__str7,Se[ri+64>>2]=0|He.__str8,Se[ri+68>>2]=0|He.__str7,Se[ri+80>>2]=0|He.__str9,Se[ri+84>>2]=0|He.__str10,Se[ri+96>>2]=0|He.__str11,Se[ri+100>>2]=0|He.__str12,Se[ri+112>>2]=0|He.__str13,Se[ri+116>>2]=0|He.__str14,Se[ri+128>>2]=0|He.__str15,Se[ri+132>>2]=0|He.__str16,Se[ri+144>>2]=0|He.__str17,Se[ri+148>>2]=0|He.__str18,Se[ri+160>>2]=0|He.__str19,Se[ri+164>>2]=0|He.__str20,Se[ri+176>>2]=0|He.__str21,Se[ri+180>>2]=0|He.__str22,Se[ri+192>>2]=0|He.__str23,Se[ri+196>>2]=0|He.__str24,Se[ri+208>>2]=0|He.__str25,Se[ri+212>>2]=0|He.__str26,Se[ri+224>>2]=0|He.__str27,Se[ri+228>>2]=0|He.__str28,Se[ri+240>>2]=0|He.__str29,Se[ri+244>>2]=0|He.__str30,Se[ri+256>>2]=0|He.__str31,Se[ri+260>>2]=0|He.__str32,Se[ri+272>>2]=0|He.__str33,Se[ri+276>>2]=0|He.__str34,Se[ri+288>>2]=0|He.__str35,Se[ri+292>>2]=0|He.__str36,Se[ri+304>>2]=0|He.__str37,Se[ri+308>>2]=0|He.__str38,Se[ri+320>>2]=0|He.__str39,Se[ri+324>>2]=0|He.__str40,Se[ri+336>>2]=0|He.__str41,Se[ri+340>>2]=0|He.__str42,Se[ri+352>>2]=0|He.__str43,Se[ri+356>>2]=0|He.__str44,Se[ri+368>>2]=0|He.__str45,Se[ri+372>>2]=0|He.__str46,Se[ri+384>>2]=0|He.__str47,Se[ri+388>>2]=0|He.__str48,Se[ri+400>>2]=0|He.__str49,Se[ri+404>>2]=0|He.__str119289,Se[ri+416>>2]=0|He.__str51,Se[ri+420>>2]=0|He.__str20,Se[ri+432>>2]=0|He.__str52,Se[ri+436>>2]=0|He.__str53,Se[ri+448>>2]=0|He.__str54,Se[ri+452>>2]=0|He.__str55,Se[ri+464>>2]=0|He.__str56,Se[ri+468>>2]=0|He.__str57,Se[ri+480>>2]=0|He.__str58,Se[ri+484>>2]=0|He.__str119289,Se[ri+496>>2]=0|He.__str59,Se[ri+500>>2]=0|He.__str60,Se[ri+512>>2]=0|He.__str61,Se[ri+516>>2]=0|He.__str62,Se[ri+528>>2]=0|He.__str63,Se[ri+532>>2]=0|He.__str64,Se[ri+544>>2]=0|He.__str65,Se[ri+548>>2]=0|He.__str66,Se[ri+560>>2]=0|He.__str67,Se[ri+564>>2]=0|He.__str68,Se[ri+576>>2]=0|He.__str69,Se[ri+580>>2]=0|He.__str70,Se[ri+592>>2]=0|He.__str71,Se[ri+596>>2]=0|He.__str72,Se[ri+608>>2]=0|He.__str73,Se[ri+612>>2]=0|He.__str74,Se[ri+624>>2]=0|He.__str75,Se[ri+628>>2]=0|He.__str76,Se[ri+640>>2]=0|He.__str77,Se[ri+644>>2]=0|He.__str72,Se[ri+656>>2]=0|He.__str78,Se[ri+660>>2]=0|He.__str79,Se[ri+672>>2]=0|He.__str80,Se[ri+676>>2]=0|He.__str81,Se[ri+688>>2]=0|He.__str82,Se[ri+692>>2]=0|He.__str83,Se[ri+704>>2]=0|He.__str84,Se[ri+708>>2]=0|He.__str85,Se[ri+720>>2]=0|He.__str86,Se[ri+724>>2]=0|He.__str87,Se[ri+736>>2]=0|He.__str88,Se[ri+740>>2]=0|He.__str89,Se[ri+752>>2]=0|He.__str90,Se[ri+756>>2]=0|He.__str91,Se[ri+768>>2]=0|He.__str92,Se[ri+772>>2]=0|He.__str91,Se[ai>>2]=0|He.__str145315,Se[ai+8>>2]=0|He.__str145315,Se[ai+20>>2]=0|He.__str167337,Se[ai+28>>2]=0|He.__str95,Se[ai+40>>2]=0|He.__str146316,Se[ai+48>>2]=0|He.__str97,Se[ai+60>>2]=0|He.__str155325,Se[ai+68>>2]=0|He.__str155325,Se[ai+80>>2]=0|He.__str156326,Se[ai+88>>2]=0|He.__str156326,Se[ai+100>>2]=0|He.__str154324,Se[ai+108>>2]=0|He.__str154324,Se[ai+120>>2]=0|He.__str101,Se[ai+128>>2]=0|He.__str101,Se[ai+140>>2]=0|He.__str147317,Se[ai+148>>2]=0|He.__str147317,Se[ai+160>>2]=0|He.__str150320,Se[ai+168>>2]=0|He.__str150320,Se[ai+180>>2]=0|He.__str151321,Se[ai+188>>2]=0|He.__str105,Se[ai+220>>2]=0|He.__str152322,Se[ai+228>>2]=0|He.__str152322,Se[ai+240>>2]=0|He.__str153323,Se[ai+248>>2]=0|He.__str153323,Se[ai+260>>2]=0|He.__str165335,Se[ai+268>>2]=0|He.__str165335,Se[ai+280>>2]=0|He.__str166336,Se[ai+288>>2]=0|He.__str166336,Se[ai+360>>2]=0|He.__str148318,Se[ai+368>>2]=0|He.__str148318,Se[ai+380>>2]=0|He.__str149319,Se[ai+388>>2]=0|He.__str149319,Se[ai+420>>2]=0|He.__str84254,Se[ai+428>>2]=0|He.__str84254,Se[ai+440>>2]=0|He.__str168338,Se[ai+448>>2]=0|He.__str146316,Se[ai+460>>2]=0|He.__str114,Se[ai+468>>2]=0|He.__str152322,Se[ai+480>>2]=0|He.__str115,Se[ai+488>>2]=0|He.__str115,Se[ai+500>>2]=0|He.__str110280,Se[ai+508>>2]=0|He.__str110280,Se[ei+4>>2]=0|He.__str152,Se[ei+12>>2]=0|He.__str152,Se[ei+32>>2]=0|He.__str153,Se[ei+40>>2]=0|He.__str153,Se[ei+48>>2]=0|He.__str154,Se[ei+60>>2]=0|He.__str155,Se[ei+68>>2]=0|He.__str155,Se[ei+76>>2]=0|He.__str156,Se[ei+88>>2]=0|He.__str157,Se[ei+96>>2]=0|He.__str158,Se[ei+104>>2]=0|He.__str156,Se[ei+116>>2]=0|He.__str159,Se[ei+124>>2]=0|He.__str160,Se[ei+132>>2]=0|He.__str161,Se[ei+144>>2]=0|He.__str162,Se[ei+152>>2]=0|He.__str163,Se[ei+160>>2]=0|He.__str164,Se[ei+172>>2]=0|He.__str165,Se[ei+180>>2]=0|He.__str166,Se[ei+188>>2]=0|He.__str167,Se[si+4>>2]=bi,Se[ni+4>>2]=ki,oi=_([2,0,0,0,0],["i8*",0,0,0,0],we),Se[bi>>2]=oi+8|0,Se[bi+4>>2]=0|He.__ZTSSt9bad_alloc,Se[bi+8>>2]=li,Se[ki>>2]=oi+8|0,Se[ki+4>>2]=0|He.__ZTSSt20bad_array_new_length,Se[ki+8>>2]=bi,ui=16,ci=6,hi=18,di=6,wi=6,pe=[0,0,Jr,0,va,0,ya,0,ga,0,wa,0,Sa,0,pa,0,Ea,0,ma,0],Module.FUNCTION_TABLE=pe,Module.run=ee,Module.preRun&&Module.preRun(),0==Ke){ee()}Module.postRun&&Module.postRun(),Module.___cxa_demangle=G;var pi=v("__cxa_demangle","string",["string","string","number","number"]);return function(r){return pi(r,"",1,0)}}(); -`; - -/***/ }), - -/***/ 121: -/***/ ((__unused_webpack_module, exports, __webpack_require__) => { - - - -Object.defineProperty(exports, "__esModule", ({ - value: true -})); -exports.Flamechart = void 0; -const utils_1 = __webpack_require__(844); -const math_1 = __webpack_require__(293); -class Flamechart { - constructor(source) { - this.source = source; - // Bottom to top - this.layers = []; - this.totalWeight = 0; - this.minFrameWidth = 1; - const stack = []; - const openFrame = (node, value) => { - const parent = utils_1.lastOf(stack); - const frame = { - node, - parent, - children: [], - start: value, - end: value - }; - if (parent) { - parent.children.push(frame); - } - stack.push(frame); - }; - this.minFrameWidth = Infinity; - const closeFrame = (node, value) => { - console.assert(stack.length > 0); - const stackTop = stack.pop(); - stackTop.end = value; - if (stackTop.end - stackTop.start === 0) return; - const layerIndex = stack.length; - while (this.layers.length <= layerIndex) this.layers.push([]); - this.layers[layerIndex].push(stackTop); - this.minFrameWidth = Math.min(this.minFrameWidth, stackTop.end - stackTop.start); - }; - this.totalWeight = source.getTotalWeight(); - source.forEachCall(openFrame, closeFrame); - if (!isFinite(this.minFrameWidth)) this.minFrameWidth = 1; - } - getTotalWeight() { - return this.totalWeight; - } - getLayers() { - return this.layers; - } - getColorBucketForFrame(frame) { - return this.source.getColorBucketForFrame(frame); - } - getMinFrameWidth() { - return this.minFrameWidth; - } - formatValue(v) { - return this.source.formatValue(v); - } - getClampedViewportWidth(viewportWidth) { - const maxWidth = this.getTotalWeight(); - // In order to avoid floating point error, we cap the maximum zoom. In - // particular, it's important that at the maximum zoom level, the total - // trace size + a viewport width is not equal to the trace size due to - // floating point rounding. - // - // For instance, if the profile's total weight is 2^60, and the viewport - // size is 1, trying to move one viewport width right will result in no - // change because 2^60 + 1 = 2^60 in floating point arithmetic. JavaScript - // numbers are 64 bit floats, and therefore have 53 mantissa bits. You can - // see this for yourself in the console. Try: - // - // > Math.pow(2, 60) + 1 === Math.pow(2, 60) - // true - // > Math.pow(2, 53) + 1 === Math.pow(2, 53) - // true - // > Math.pow(2, 52) + 1 === Math.pow(2, 52) - // false - // - // We use 2^40 as a cap instead, since we want to be able to make small - // adjustments within a viewport width. - // - // For reference, this will still allow you to zoom until 1 nanosecond fills - // the screen in a profile with a duration of over 18 minutes. - // - // > Math.pow(2, 40) / (60 * Math.pow(10, 9)) - // 18.325193796266667 - // - const maxZoom = Math.pow(2, 40); - // In addition to capping zoom to avoid floating point error, we further cap - // zoom to avoid letting you zoom in so that the smallest element more than - // fills the screen, since that probably isn't useful. The final zoom cap is - // determined by the minimum zoom of either 2^40x zoom or the necessary zoom - // for the smallest frame to fill the screen three times. - const minWidth = math_1.clamp(3 * this.getMinFrameWidth(), maxWidth / maxZoom, maxWidth); - return math_1.clamp(viewportWidth, minWidth, maxWidth); - } - // Given a desired config-space viewport rectangle, clamp the rectangle so - // that it fits within the given flamechart. This prevents the viewport from - // extending past the bounds of the flamechart or zooming in too far. - getClampedConfigSpaceViewportRect({ - configSpaceViewportRect, - renderInverted - }) { - const configSpaceSize = new math_1.Vec2(this.getTotalWeight(), this.getLayers().length); - const width = this.getClampedViewportWidth(configSpaceViewportRect.size.x); - const size = configSpaceViewportRect.size.withX(width); - const origin = math_1.Vec2.clamp(configSpaceViewportRect.origin, new math_1.Vec2(0, renderInverted ? 0 : -1), math_1.Vec2.max(math_1.Vec2.zero, configSpaceSize.minus(size).plus(new math_1.Vec2(0, 1)))); - return new math_1.Rect(origin, configSpaceViewportRect.size.withX(width)); - } -} -exports.Flamechart = Flamechart; - -/***/ }), - -/***/ 293: -/***/ ((__unused_webpack_module, exports) => { - - - -Object.defineProperty(exports, "__esModule", ({ - value: true -})); -exports.Rect = exports.AffineTransform = exports.Vec2 = exports.clamp = void 0; -function clamp(x, minVal, maxVal) { - if (x < minVal) return minVal; - if (x > maxVal) return maxVal; - return x; -} -exports.clamp = clamp; -let Vec2 = /** @class */(() => { - class Vec2 { - constructor(x, y) { - this.x = x; - this.y = y; - } - withX(x) { - return new Vec2(x, this.y); - } - withY(y) { - return new Vec2(this.x, y); - } - plus(other) { - return new Vec2(this.x + other.x, this.y + other.y); - } - minus(other) { - return new Vec2(this.x - other.x, this.y - other.y); - } - times(scalar) { - return new Vec2(this.x * scalar, this.y * scalar); - } - timesPointwise(other) { - return new Vec2(this.x * other.x, this.y * other.y); - } - dividedByPointwise(other) { - return new Vec2(this.x / other.x, this.y / other.y); - } - dot(other) { - return this.x * other.x + this.y * other.y; - } - equals(other) { - return this.x === other.x && this.y === other.y; - } - approxEquals(other, epsilon = 1e-9) { - return Math.abs(this.x - other.x) < epsilon && Math.abs(this.y - other.y) < epsilon; - } - length2() { - return this.dot(this); - } - length() { - return Math.sqrt(this.length2()); - } - abs() { - return new Vec2(Math.abs(this.x), Math.abs(this.y)); - } - static min(a, b) { - return new Vec2(Math.min(a.x, b.x), Math.min(a.y, b.y)); - } - static max(a, b) { - return new Vec2(Math.max(a.x, b.x), Math.max(a.y, b.y)); - } - static clamp(v, min, max) { - return new Vec2(clamp(v.x, min.x, max.x), clamp(v.y, min.y, max.y)); - } - flatten() { - return [this.x, this.y]; - } + if (!sorted) sort(line); + decoded.push(line); + index = semi + 1; + } while (index <= mappings.length); + return decoded; } - Vec2.zero = new Vec2(0, 0); - Vec2.unit = new Vec2(1, 1); - return Vec2; -})(); -exports.Vec2 = Vec2; -class AffineTransform { - constructor(m00 = 1, m01 = 0, m02 = 0, m10 = 0, m11 = 1, m12 = 0) { - this.m00 = m00; - this.m01 = m01; - this.m02 = m02; - this.m10 = m10; - this.m11 = m11; - this.m12 = m12; - } - withScale(s) { - let { - m00, - m01, - m02, - m10, - m11, - m12 - } = this; - m00 = s.x; - m11 = s.y; - return new AffineTransform(m00, m01, m02, m10, m11, m12); - } - static withScale(s) { - return new AffineTransform().withScale(s); - } - scaledBy(s) { - return AffineTransform.withScale(s).times(this); - } - getScale() { - return new Vec2(this.m00, this.m11); - } - withTranslation(t) { - let { - m00, - m01, - m02, - m10, - m11, - m12 - } = this; - m02 = t.x; - m12 = t.y; - return new AffineTransform(m00, m01, m02, m10, m11, m12); - } - static withTranslation(t) { - return new AffineTransform().withTranslation(t); - } - getTranslation() { - return new Vec2(this.m02, this.m12); - } - translatedBy(t) { - return AffineTransform.withTranslation(t).times(this); - } - static betweenRects(from, to) { - return AffineTransform.withTranslation(from.origin.times(-1)).scaledBy(new Vec2(to.size.x / from.size.x, to.size.y / from.size.y)).translatedBy(to.origin); - } - times(other) { - const m00 = this.m00 * other.m00 + this.m01 * other.m10; - const m01 = this.m00 * other.m01 + this.m01 * other.m11; - const m02 = this.m00 * other.m02 + this.m01 * other.m12 + this.m02; - const m10 = this.m10 * other.m00 + this.m11 * other.m10; - const m11 = this.m10 * other.m01 + this.m11 * other.m11; - const m12 = this.m10 * other.m02 + this.m11 * other.m12 + this.m12; - return new AffineTransform(m00, m01, m02, m10, m11, m12); - } - equals(other) { - return this.m00 == other.m00 && this.m01 == other.m01 && this.m02 == other.m02 && this.m10 == other.m10 && this.m11 == other.m11 && this.m12 == other.m12; - } - approxEquals(other, epsilon = 1e-9) { - return Math.abs(this.m00 - other.m00) < epsilon && Math.abs(this.m01 - other.m01) < epsilon && Math.abs(this.m02 - other.m02) < epsilon && Math.abs(this.m10 - other.m10) < epsilon && Math.abs(this.m11 - other.m11) < epsilon && Math.abs(this.m12 - other.m12) < epsilon; - } - timesScalar(s) { - const { - m00, - m01, - m02, - m10, - m11, - m12 - } = this; - return new AffineTransform(s * m00, s * m01, s * m02, s * m10, s * m11, s * m12); - } - det() { - const { - m00, - m01, - m02, - m10, - m11, - m12 - } = this; - const m20 = 0; - const m21 = 0; - const m22 = 1; - return m00 * (m11 * m22 - m12 * m21) - m01 * (m10 * m22 - m12 * m20) + m02 * (m10 * m21 - m11 * m20); - } - adj() { - const { - m00, - m01, - m02, - m10, - m11, - m12 - } = this; - const m20 = 0; - const m21 = 0; - const m22 = 1; - // Adjugate matrix (a) is the transpose of the - // cofactor matrix (c). - // - // 00 01 02 - // 10 11 12 - // 20 21 22 - const a00 = /* c00 = */+(m11 * m22 - m12 * m21); - const a01 = /* c10 = */-(m01 * m22 - m02 * m21); - const a02 = /* c20 = */+(m01 * m12 - m02 * m11); - const a10 = /* c01 = */-(m10 * m22 - m12 * m20); - const a11 = /* c11 = */+(m00 * m22 - m02 * m20); - const a12 = /* c21 = */-(m00 * m12 - m02 * m10); - return new AffineTransform(a00, a01, a02, a10, a11, a12); - } - inverted() { - const det = this.det(); - if (det === 0) return null; - const adj = this.adj(); - return adj.timesScalar(1 / det); - } - transformVector(v) { - return new Vec2(v.x * this.m00 + v.y * this.m01, v.x * this.m10 + v.y * this.m11); - } - inverseTransformVector(v) { - const inv = this.inverted(); - if (!inv) return null; - return inv.transformVector(v); - } - transformPosition(v) { - return new Vec2(v.x * this.m00 + v.y * this.m01 + this.m02, v.x * this.m10 + v.y * this.m11 + this.m12); - } - inverseTransformPosition(v) { - const inv = this.inverted(); - if (!inv) return null; - return inv.transformPosition(v); - } - transformRect(r) { - const size = this.transformVector(r.size); - const origin = this.transformPosition(r.origin); - if (size.x < 0 && size.y < 0) { - return new Rect(origin.plus(size), size.abs()); - } else if (size.x < 0) { - return new Rect(origin.withX(origin.x + size.x), size.abs()); - } else if (size.y < 0) { - return new Rect(origin.withY(origin.y + size.y), size.abs()); - } - return new Rect(origin, size); - } - inverseTransformRect(r) { - const inv = this.inverted(); - if (!inv) return null; - return inv.transformRect(r); - } - flatten() { - // Flatten into GLSL format - // prettier-ignore - return [this.m00, this.m10, 0, this.m01, this.m11, 0, this.m02, this.m12, 1]; - } -} -exports.AffineTransform = AffineTransform; -let Rect = /** @class */(() => { - class Rect { - constructor(origin, size) { - this.origin = origin; - this.size = size; - } - isEmpty() { - return this.width() == 0 || this.height() == 0; - } - width() { - return this.size.x; - } - height() { - return this.size.y; - } - left() { - return this.origin.x; - } - right() { - return this.left() + this.width(); - } - top() { - return this.origin.y; - } - bottom() { - return this.top() + this.height(); - } - topLeft() { - return this.origin; - } - topRight() { - return this.origin.plus(new Vec2(this.width(), 0)); - } - bottomRight() { - return this.origin.plus(this.size); - } - bottomLeft() { - return this.origin.plus(new Vec2(0, this.height())); - } - withOrigin(origin) { - return new Rect(origin, this.size); - } - withSize(size) { - return new Rect(this.origin, size); - } - closestPointTo(p) { - return new Vec2(clamp(p.x, this.left(), this.right()), clamp(p.y, this.top(), this.bottom())); - } - distanceFrom(p) { - return p.minus(this.closestPointTo(p)).length(); - } - contains(p) { - return this.distanceFrom(p) === 0; - } - hasIntersectionWith(other) { - const top = Math.max(this.top(), other.top()); - const bottom = Math.max(top, Math.min(this.bottom(), other.bottom())); - if (bottom - top === 0) return false; - const left = Math.max(this.left(), other.left()); - const right = Math.max(left, Math.min(this.right(), other.right())); - if (right - left === 0) return false; - return true; - } - intersectWith(other) { - const topLeft = Vec2.max(this.topLeft(), other.topLeft()); - const bottomRight = Vec2.max(topLeft, Vec2.min(this.bottomRight(), other.bottomRight())); - return new Rect(topLeft, bottomRight.minus(topLeft)); - } - equals(other) { - return this.origin.equals(other.origin) && this.size.equals(other.size); - } - approxEquals(other) { - return this.origin.approxEquals(other.origin) && this.size.approxEquals(other.size); - } - area() { - return this.size.x * this.size.y; - } + function indexOf(mappings, index) { + const idx = mappings.indexOf(';', index); + return idx === -1 ? mappings.length : idx; } - Rect.empty = new Rect(Vec2.zero, Vec2.zero); - Rect.unit = new Rect(Vec2.zero, Vec2.unit); - Rect.NDC = new Rect(new Vec2(-1, -1), new Vec2(2, 2)); - return Rect; -})(); -exports.Rect = Rect; + function decodeInteger(mappings, pos, state, j) { + let value = 0; + let shift = 0; + let integer = 0; + do { + const c = mappings.charCodeAt(pos++); + integer = charToInt[c]; + value |= (integer & 31) << shift; + shift += 5; + } while (integer & 32); + const shouldNegate = value & 1; + value >>>= 1; + if (shouldNegate) { + value = -0x80000000 | -value; + } + state[j] += value; + return pos; + } + function hasMoreVlq(mappings, i, length) { + if (i >= length) return false; + return mappings.charCodeAt(i) !== comma; + } + function sort(line) { + line.sort(sortComparator); + } + function sortComparator(a, b) { + return a[0] - b[0]; + } + function encode(decoded) { + const state = new Int32Array(5); + const bufLength = 1024 * 16; + const subLength = bufLength - 36; + const buf = new Uint8Array(bufLength); + const sub = buf.subarray(0, subLength); + let pos = 0; + let out = ''; + for (let i = 0; i < decoded.length; i++) { + const line = decoded[i]; + if (i > 0) { + if (pos === bufLength) { + out += td.decode(buf); + pos = 0; + } + buf[pos++] = semicolon; + } + if (line.length === 0) continue; + state[0] = 0; + for (let j = 0; j < line.length; j++) { + const segment = line[j]; + if (pos > subLength) { + out += td.decode(sub); + buf.copyWithin(0, subLength, pos); + pos -= subLength; + } + if (j > 0) buf[pos++] = comma; + pos = encodeInteger(buf, pos, state, segment, 0); + if (segment.length === 1) continue; + pos = encodeInteger(buf, pos, state, segment, 1); + pos = encodeInteger(buf, pos, state, segment, 2); + pos = encodeInteger(buf, pos, state, segment, 3); + if (segment.length === 4) continue; + pos = encodeInteger(buf, pos, state, segment, 4); + } + } + return out + td.decode(buf.subarray(0, pos)); + } + function encodeInteger(buf, pos, state, segment, j) { + const next = segment[j]; + let num = next - state[j]; + state[j] = next; + num = num < 0 ? -num << 1 | 1 : num << 1; + do { + let clamped = num & 0b011111; + num >>>= 5; + if (num > 0) clamped |= 0b100000; + buf[pos++] = intToChar[clamped]; + } while (num > 0); + return pos; + } + exports.decode = decode; + exports.encode = encode; + Object.defineProperty(exports, '__esModule', { + value: true + }); +}); /***/ }), -/***/ 211: -/***/ (function(__unused_webpack_module, exports, __webpack_require__) { - - +/***/ 537: +/***/ ((module) => { -var __createBinding = this && this.__createBinding || (Object.create ? function (o, m, k, k2) { - if (k2 === undefined) k2 = k; - Object.defineProperty(o, k2, { - enumerable: true, - get: function () { - return m[k]; - } - }); -} : function (o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -}); -var __setModuleDefault = this && this.__setModuleDefault || (Object.create ? function (o, v) { - Object.defineProperty(o, "default", { - enumerable: true, - value: v - }); -} : function (o, v) { - o["default"] = v; -}); -var __importStar = this && this.__importStar || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -var __awaiter = this && this.__awaiter || function (thisArg, _arguments, P, generator) { - function adopt(value) { - return value instanceof P ? value : new P(function (resolve) { - resolve(value); - }); - } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - } - function rejected(value) { - try { - step(generator["throw"](value)); - } catch (e) { - reject(e); - } - } - function step(result) { - result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); - } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -Object.defineProperty(exports, "__esModule", ({ - value: true -})); -exports.CallTreeProfileBuilder = exports.StackListProfileBuilder = exports.Profile = exports.CallTreeNode = exports.Frame = exports.HasWeights = void 0; -const utils_1 = __webpack_require__(844); -const value_formatters_1 = __webpack_require__(218); -const demangleCppModule = Promise.resolve().then(() => __importStar(__webpack_require__(765))); -// Force eager loading of the module -demangleCppModule.then(() => {}); -class HasWeights { - constructor() { - this.selfWeight = 0; - this.totalWeight = 0; - } - getSelfWeight() { - return this.selfWeight; - } - getTotalWeight() { - return this.totalWeight; - } - addToTotalWeight(delta) { - this.totalWeight += delta; - } - addToSelfWeight(delta) { - this.selfWeight += delta; - } - overwriteWeightWith(other) { - this.selfWeight = other.selfWeight; - this.totalWeight = other.totalWeight; - } -} -exports.HasWeights = HasWeights; -let Frame = /** @class */(() => { - class Frame extends HasWeights { - constructor(info) { - super(); - this.key = info.key; - this.name = info.name; - this.file = info.file; - this.line = info.line; - this.col = info.col; - } - static getOrInsert(set, info) { - return set.getOrInsert(new Frame(info)); - } - } - Frame.root = new Frame({ - key: '(speedscope root)', - name: '(speedscope root)' - }); - return Frame; -})(); -exports.Frame = Frame; -class CallTreeNode extends HasWeights { - constructor(frame, parent) { - super(); - this.frame = frame; - this.parent = parent; - this.children = []; - // If a node is "frozen", it means it should no longer be mutated. - this.frozen = false; - } - isRoot() { - return this.frame === Frame.root; - } - isFrozen() { - return this.frozen; - } - freeze() { - this.frozen = true; - } -} -exports.CallTreeNode = CallTreeNode; -class Profile { - constructor(totalWeight = 0) { - this.name = ''; - this.frames = new utils_1.KeyedSet(); - // Profiles store two call-trees. - // - // The "append order" call tree is the one in which nodes are ordered in - // whatever order they were appended to their parent. - // - // The "grouped" call tree is one in which each node has at most one child per - // frame. Nodes are ordered in decreasing order of weight - this.appendOrderCalltreeRoot = new CallTreeNode(Frame.root, null); - this.groupedCalltreeRoot = new CallTreeNode(Frame.root, null); - // List of references to CallTreeNodes at the top of the - // stack at the time of the sample. - this.samples = []; - this.weights = []; - this.valueFormatter = new value_formatters_1.RawValueFormatter(); - this.totalNonIdleWeight = null; - this.totalWeight = totalWeight; - } - getAppendOrderCalltreeRoot() { - return this.appendOrderCalltreeRoot; - } - getGroupedCalltreeRoot() { - return this.groupedCalltreeRoot; - } - formatValue(v) { - return this.valueFormatter.format(v); - } - setValueFormatter(f) { - this.valueFormatter = f; - } - getWeightUnit() { - return this.valueFormatter.unit; - } - getName() { - return this.name; - } - setName(name) { - this.name = name; - } - getTotalWeight() { - return this.totalWeight; - } - getTotalNonIdleWeight() { - if (this.totalNonIdleWeight === null) { - this.totalNonIdleWeight = this.groupedCalltreeRoot.children.reduce((n, c) => n + c.getTotalWeight(), 0); - } - return this.totalNonIdleWeight; - } - // This is private because it should only be called in the ProfileBuilder - // classes. Once a Profile instance has been constructed, it should be treated - // as immutable. - sortGroupedCallTree() { - function visit(node) { - node.children.sort((a, b) => -(a.getTotalWeight() - b.getTotalWeight())); - node.children.forEach(visit); - } - visit(this.groupedCalltreeRoot); - } - forEachCallGrouped(openFrame, closeFrame) { - function visit(node, start) { - if (node.frame !== Frame.root) { - openFrame(node, start); - } - let childTime = 0; - node.children.forEach(function (child) { - visit(child, start + childTime); - childTime += child.getTotalWeight(); - }); - if (node.frame !== Frame.root) { - closeFrame(node, start + node.getTotalWeight()); - } - } - visit(this.groupedCalltreeRoot, 0); - } - forEachCall(openFrame, closeFrame) { - let prevStack = []; - let value = 0; - let sampleIndex = 0; - for (let stackTop of this.samples) { - // Find lowest common ancestor of the current stack and the previous one - let lca = null; - // This is O(n^2), but n should be relatively small here (stack height), - // so hopefully this isn't much of a problem - for (lca = stackTop; lca && lca.frame != Frame.root && prevStack.indexOf(lca) === -1; lca = lca.parent) {} - // Close frames that are no longer open - while (prevStack.length > 0 && utils_1.lastOf(prevStack) != lca) { - const node = prevStack.pop(); - closeFrame(node, value); - } - // Open frames that are now becoming open - const toOpen = []; - for (let node = stackTop; node && node.frame != Frame.root && node != lca; node = node.parent) { - toOpen.push(node); - } - toOpen.reverse(); - for (let node of toOpen) { - openFrame(node, value); - } - prevStack = prevStack.concat(toOpen); - value += this.weights[sampleIndex++]; - } - // Close frames that are open at the end of the trace - for (let i = prevStack.length - 1; i >= 0; i--) { - closeFrame(prevStack[i], value); - } - } - forEachFrame(fn) { - this.frames.forEach(fn); - } - getProfileWithRecursionFlattened() { - const builder = new CallTreeProfileBuilder(); - const stack = []; - const framesInStack = new Set(); - function openFrame(node, value) { - if (framesInStack.has(node.frame)) { - stack.push(null); - } else { - framesInStack.add(node.frame); - stack.push(node); - builder.enterFrame(node.frame, value); - } - } - function closeFrame(node, value) { - const stackTop = stack.pop(); - if (stackTop) { - framesInStack.delete(stackTop.frame); - builder.leaveFrame(stackTop.frame, value); - } - } - this.forEachCall(openFrame, closeFrame); - const flattenedProfile = builder.build(); - flattenedProfile.name = this.name; - flattenedProfile.valueFormatter = this.valueFormatter; - // When constructing a profile with recursion flattened, - // counter-intuitive things can happen to "self time" measurements - // for functions. - // For example, given the following list of stacks w/ weights: - // - // a 1 - // a;b;a 1 - // a;b;a;b;a 1 - // a;b;a 1 - // - // The resulting profile with recursion flattened out will look like this: - // - // a 1 - // a;b 3 - // - // Which is useful to view, but it's counter-intuitive to move self-time - // for frames around, since analyzing the self-time of functions is an important - // thing to be able to do accurately, and we don't want this to change when recursion - // is flattened. To work around that, we'll just copy the weights directly from the - // un-flattened profile. - this.forEachFrame(f => { - flattenedProfile.frames.getOrInsert(f).overwriteWeightWith(f); - }); - return flattenedProfile; - } - getInvertedProfileForCallersOf(focalFrameInfo) { - const focalFrame = Frame.getOrInsert(this.frames, focalFrameInfo); - const builder = new StackListProfileBuilder(); - // TODO(jlfwong): Could construct this at profile - // construction time rather than on demand. - const nodes = []; - function visit(node) { - if (node.frame === focalFrame) { - nodes.push(node); - } else { - for (let child of node.children) { - visit(child); - } - } - } - visit(this.appendOrderCalltreeRoot); - for (let node of nodes) { - const stack = []; - for (let n = node; n != null && n.frame !== Frame.root; n = n.parent) { - stack.push(n.frame); - } - builder.appendSampleWithWeight(stack, node.getTotalWeight()); - } - const ret = builder.build(); - ret.name = this.name; - ret.valueFormatter = this.valueFormatter; - return ret; +(function (name, definition) { + if (true) { + module.exports = definition(); + } else {} +})("clipboard", function () { + if (typeof document === 'undefined' || !document.addEventListener) { + return null; } - getProfileForCalleesOf(focalFrameInfo) { - const focalFrame = Frame.getOrInsert(this.frames, focalFrameInfo); - const builder = new StackListProfileBuilder(); - function recordSubtree(focalFrameNode) { - const stack = []; - function visit(node) { - stack.push(node.frame); - builder.appendSampleWithWeight(stack, node.getSelfWeight()); - for (let child of node.children) { - visit(child); - } - stack.pop(); - } - visit(focalFrameNode); - } - function findCalls(node) { - if (node.frame === focalFrame) { - recordSubtree(node); - } else { - for (let child of node.children) { - findCalls(child); - } + var clipboard = {}; + clipboard.copy = function () { + var _intercept = false; + var _data = null; + var _bogusSelection = false; + function cleanup() { + _intercept = false; + _data = null; + if (_bogusSelection) { + window.getSelection().removeAllRanges(); } + _bogusSelection = false; } - findCalls(this.appendOrderCalltreeRoot); - const ret = builder.build(); - ret.name = this.name; - ret.valueFormatter = this.valueFormatter; - return ret; - } - // Demangle symbols for readability - demangle() { - return __awaiter(this, void 0, void 0, function* () { - let demangleCpp = null; - for (let frame of this.frames) { - // This function converts a mangled C++ name such as "__ZNK7Support6ColorFeqERKS0_" - // into a human-readable symbol (in this case "Support::ColorF::==(Support::ColorF&)") - if (frame.name.startsWith('__Z')) { - if (!demangleCpp) { - demangleCpp = (yield demangleCppModule).demangleCpp; - } - frame.name = demangleCpp(frame.name); + document.addEventListener("copy", function (e) { + if (_intercept) { + for (var key in _data) { + e.clipboardData.setData(key, _data[key]); } + e.preventDefault(); } }); - } - remapNames(callback) { - for (let frame of this.frames) { - frame.name = callback(frame.name); - } - } -} -exports.Profile = Profile; -class StackListProfileBuilder extends Profile { - constructor() { - super(...arguments); - this.pendingSample = null; - } - _appendSample(stack, weight, useAppendOrder) { - if (isNaN(weight)) throw new Error('invalid weight'); - let node = useAppendOrder ? this.appendOrderCalltreeRoot : this.groupedCalltreeRoot; - let framesInStack = new Set(); - for (let frameInfo of stack) { - const frame = Frame.getOrInsert(this.frames, frameInfo); - const last = useAppendOrder ? utils_1.lastOf(node.children) : node.children.find(c => c.frame === frame); - if (last && !last.isFrozen() && last.frame == frame) { - node = last; - } else { - const parent = node; - node = new CallTreeNode(frame, node); - parent.children.push(node); - } - node.addToTotalWeight(weight); - // It's possible for the same frame to occur multiple - // times in the same call stack due to either direct - // or indirect recursion. We want to avoid counting that - // frame multiple times for a single sample, we so just - // track all of the unique frames that participated in - // this call stack, then add to their weight at the end. - framesInStack.add(node.frame); - } - node.addToSelfWeight(weight); - if (useAppendOrder) { - for (let child of node.children) { - child.freeze(); - } - } - if (useAppendOrder) { - node.frame.addToSelfWeight(weight); - for (let frame of framesInStack) { - frame.addToTotalWeight(weight); - } - if (node === utils_1.lastOf(this.samples)) { - this.weights[this.weights.length - 1] += weight; - } else { - this.samples.push(node); - this.weights.push(weight); - } - } - } - appendSampleWithWeight(stack, weight) { - if (weight === 0) { - // Samples with zero weight have no effect, so let's ignore them - return; - } - if (weight < 0) { - throw new Error('Samples must have positive weights'); - } - this._appendSample(stack, weight, true); - this._appendSample(stack, weight, false); - } - appendSampleWithTimestamp(stack, timestamp) { - if (this.pendingSample) { - if (timestamp < this.pendingSample.centralTimestamp) { - throw new Error('Timestamps received out of order'); - } - const endTimestamp = (timestamp + this.pendingSample.centralTimestamp) / 2; - this.appendSampleWithWeight(this.pendingSample.stack, endTimestamp - this.pendingSample.startTimestamp); - this.pendingSample = { - stack, - startTimestamp: endTimestamp, - centralTimestamp: timestamp - }; - } else { - this.pendingSample = { - stack, - startTimestamp: timestamp, - centralTimestamp: timestamp - }; - } - } - build() { - if (this.pendingSample) { - if (this.samples.length > 0) { - this.appendSampleWithWeight(this.pendingSample.stack, this.pendingSample.centralTimestamp - this.pendingSample.startTimestamp); - } else { - // There is only a single sample. In this case, units will be meaningless, - // so we'll append with a weight of 1 and also clear any value formatter - this.appendSampleWithWeight(this.pendingSample.stack, 1); - this.setValueFormatter(new value_formatters_1.RawValueFormatter()); - } - } - this.totalWeight = Math.max(this.totalWeight, this.weights.reduce((a, b) => a + b, 0)); - this.sortGroupedCallTree(); - return this; - } -} -exports.StackListProfileBuilder = StackListProfileBuilder; -// As an alternative API for importing profiles more efficiently, provide a -// way to open & close frames directly without needing to construct tons of -// arrays as intermediaries. -class CallTreeProfileBuilder extends Profile { - constructor() { - super(...arguments); - this.appendOrderStack = [this.appendOrderCalltreeRoot]; - this.groupedOrderStack = [this.groupedCalltreeRoot]; - this.framesInStack = new Map(); - this.stack = []; - this.lastValue = 0; - } - addWeightsToFrames(value) { - const delta = value - this.lastValue; - for (let frame of this.framesInStack.keys()) { - frame.addToTotalWeight(delta); - } - const stackTop = utils_1.lastOf(this.stack); - if (stackTop) { - stackTop.addToSelfWeight(delta); - } - } - addWeightsToNodes(value, stack) { - const delta = value - this.lastValue; - for (let node of stack) { - node.addToTotalWeight(delta); - } - const stackTop = utils_1.lastOf(stack); - if (stackTop) { - stackTop.addToSelfWeight(delta); - } - } - _enterFrame(frame, value, useAppendOrder) { - let stack = useAppendOrder ? this.appendOrderStack : this.groupedOrderStack; - this.addWeightsToNodes(value, stack); - let prevTop = utils_1.lastOf(stack); - if (prevTop) { - if (useAppendOrder) { - const delta = value - this.lastValue; - if (delta > 0) { - this.samples.push(prevTop); - this.weights.push(value - this.lastValue); - } else if (delta < 0) { - throw new Error(`Samples must be provided in increasing order of cumulative value. Last sample was ${this.lastValue}, this sample was ${value}`); - } - } - const last = useAppendOrder ? utils_1.lastOf(prevTop.children) : prevTop.children.find(c => c.frame === frame); - let node; - if (last && !last.isFrozen() && last.frame == frame) { - node = last; - } else { - node = new CallTreeNode(frame, prevTop); - prevTop.children.push(node); - } - stack.push(node); - } - } - enterFrame(frameInfo, value) { - const frame = Frame.getOrInsert(this.frames, frameInfo); - this.addWeightsToFrames(value); - this._enterFrame(frame, value, true); - this._enterFrame(frame, value, false); - this.stack.push(frame); - const frameCount = this.framesInStack.get(frame) || 0; - this.framesInStack.set(frame, frameCount + 1); - this.lastValue = value; - } - _leaveFrame(frame, value, useAppendOrder) { - let stack = useAppendOrder ? this.appendOrderStack : this.groupedOrderStack; - this.addWeightsToNodes(value, stack); - if (useAppendOrder) { - const leavingStackTop = this.appendOrderStack.pop(); - if (leavingStackTop == null) { - throw new Error(`Trying to leave ${frame.key} when stack is empty`); - } - if (this.lastValue == null) { - throw new Error(`Trying to leave a ${frame.key} before any have been entered`); - } - leavingStackTop.freeze(); - if (leavingStackTop.frame.key !== frame.key) { - throw new Error(`Tried to leave frame "${frame.name}" while frame "${leavingStackTop.frame.name}" was at the top at ${value}`); - } - const delta = value - this.lastValue; - if (delta > 0) { - this.samples.push(leavingStackTop); - this.weights.push(value - this.lastValue); - } else if (delta < 0) { - throw new Error(`Samples must be provided in increasing order of cumulative value. Last sample was ${this.lastValue}, this sample was ${value}`); - } - } else { - this.groupedOrderStack.pop(); - } - } - leaveFrame(frameInfo, value) { - const frame = Frame.getOrInsert(this.frames, frameInfo); - this.addWeightsToFrames(value); - this._leaveFrame(frame, value, true); - this._leaveFrame(frame, value, false); - this.stack.pop(); - const frameCount = this.framesInStack.get(frame); - if (frameCount == null) return; - if (frameCount === 1) { - this.framesInStack.delete(frame); - } else { - this.framesInStack.set(frame, frameCount - 1); - } - this.lastValue = value; - this.totalWeight = Math.max(this.totalWeight, this.lastValue); - } - build() { - // Each stack is expected to contain a single node which we initialize to be - // the root node. - if (this.appendOrderStack.length > 1 || this.groupedOrderStack.length > 1) { - throw new Error('Tried to complete profile construction with a non-empty stack'); - } - this.sortGroupedCallTree(); - return this; - } -} -exports.CallTreeProfileBuilder = CallTreeProfileBuilder; - -/***/ }), - -/***/ 844: -/***/ ((__unused_webpack_module, exports) => { - - - -Object.defineProperty(exports, "__esModule", ({ - value: true -})); -exports.decodeBase64 = exports.lazyStatic = exports.memoizeByReference = exports.memoizeByShallowEquality = exports.objectsHaveShallowEquality = exports.noop = exports.binarySearch = exports.triangle = exports.fract = exports.formatPercent = exports.zeroPad = exports.itReduce = exports.itForEach = exports.itMap = exports.KeyedSet = exports.getOrThrow = exports.getOrElse = exports.getOrInsert = exports.sortBy = exports.lastOf = void 0; -function lastOf(ts) { - return ts[ts.length - 1] || null; -} -exports.lastOf = lastOf; -function sortBy(ts, key) { - function comparator(a, b) { - const keyA = key(a); - const keyB = key(b); - return keyA < keyB ? -1 : keyA > keyB ? 1 : 0; - } - ts.sort(comparator); -} -exports.sortBy = sortBy; -function getOrInsert(map, k, fallback) { - if (!map.has(k)) map.set(k, fallback(k)); - return map.get(k); -} -exports.getOrInsert = getOrInsert; -function getOrElse(map, k, fallback) { - if (!map.has(k)) return fallback(k); - return map.get(k); -} -exports.getOrElse = getOrElse; -function getOrThrow(map, k) { - if (!map.has(k)) { - throw new Error(`Expected key ${k}`); - } - return map.get(k); -} -exports.getOrThrow = getOrThrow; -class KeyedSet { - constructor() { - this.map = new Map(); - } - getOrInsert(t) { - const key = t.key; - const existing = this.map.get(key); - if (existing) return existing; - this.map.set(key, t); - return t; - } - forEach(fn) { - this.map.forEach(fn); - } - [Symbol.iterator]() { - return this.map.values(); - } -} -exports.KeyedSet = KeyedSet; -function* itMap(it, f) { - for (let t of it) { - yield f(t); - } -} -exports.itMap = itMap; -function itForEach(it, f) { - for (let t of it) { - f(t); - } -} -exports.itForEach = itForEach; -function itReduce(it, f, init) { - let accum = init; - for (let t of it) { - accum = f(accum, t); - } - return accum; -} -exports.itReduce = itReduce; -function zeroPad(s, width) { - return new Array(Math.max(width - s.length, 0) + 1).join('0') + s; -} -exports.zeroPad = zeroPad; -function formatPercent(percent) { - let formattedPercent = `${percent.toFixed(0)}%`; - if (percent === 100) formattedPercent = '100%';else if (percent > 99) formattedPercent = '>99%';else if (percent < 0.01) formattedPercent = '<0.01%';else if (percent < 1) formattedPercent = `${percent.toFixed(2)}%`;else if (percent < 10) formattedPercent = `${percent.toFixed(1)}%`; - return formattedPercent; -} -exports.formatPercent = formatPercent; -function fract(x) { - return x - Math.floor(x); -} -exports.fract = fract; -function triangle(x) { - return 2.0 * Math.abs(fract(x) - 0.5) - 1.0; -} -exports.triangle = triangle; -function binarySearch(lo, hi, f, target, targetRangeSize = 1) { - console.assert(!isNaN(targetRangeSize) && !isNaN(target)); - while (true) { - if (hi - lo <= targetRangeSize) return [lo, hi]; - const mid = (hi + lo) / 2; - const val = f(mid); - if (val < target) lo = mid;else hi = mid; - } -} -exports.binarySearch = binarySearch; -function noop(...args) {} -exports.noop = noop; -function objectsHaveShallowEquality(a, b) { - for (let key in a) { - if (a[key] !== b[key]) return false; - } - for (let key in b) { - if (a[key] !== b[key]) return false; - } - return true; -} -exports.objectsHaveShallowEquality = objectsHaveShallowEquality; -function memoizeByShallowEquality(cb) { - let last = null; - return args => { - let result; - if (last == null) { - result = cb(args); - last = { - args, - result - }; - return result; - } else if (objectsHaveShallowEquality(last.args, args)) { - return last.result; - } else { - last.args = args; - last.result = cb(args); - return last.result; - } - }; -} -exports.memoizeByShallowEquality = memoizeByShallowEquality; -function memoizeByReference(cb) { - let last = null; - return args => { - let result; - if (last == null) { - result = cb(args); - last = { - args, - result - }; - return result; - } else if (last.args === args) { - return last.result; - } else { - last.args = args; - last.result = cb(args); - return last.result; - } - }; -} -exports.memoizeByReference = memoizeByReference; -function lazyStatic(cb) { - let last = null; - return () => { - if (last == null) { - last = { - result: cb() - }; - } - return last.result; - }; -} -exports.lazyStatic = lazyStatic; -const base64lookupTable = lazyStatic(() => { - const alphabet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'; - const ret = new Map(); - for (let i = 0; i < alphabet.length; i++) { - ret.set(alphabet.charAt(i), i); - } - ret.set('=', -1); - return ret; -}); -// NOTE: There are probably simpler solutions to this problem, but I have this written already, so -// until we run into problems with this, let's just use this. -// -// See: https://developer.mozilla.org/en-US/docs/Web/API/WindowBase64/Base64_encoding_and_decoding#The_Unicode_Problem#The_Unicode_Problem -function decodeBase64(encoded) { - // Reference: https://www.rfc-editor.org/rfc/rfc4648.txt - const lookupTable = base64lookupTable(); - // 3 byte groups are represented as sequneces of 4 characters. - // - // "The encoding process represents 24-bit groups of input bits as output - // strings of 4 encoded characters." - // - // "Special processing is performed if fewer than 24 bits are available - // at the end of the data being encoded. A full encoding quantum is - // always completed at the end of a quantity. When fewer than 24 input - // bits are available in an input group bits with value zero are added - // (on the right) to form an integral number of 6-bit groups." - if (encoded.length % 4 !== 0) { - throw new Error(`Invalid length for base64 encoded string. Expected length % 4 = 0, got length = ${encoded.length}`); - } - const quartetCount = encoded.length / 4; - let byteCount; - // Special processing is performed if fewer than 24 bits are available - // at the end of the data being encoded. A full encoding quantum is - // always completed at the end of a quantity. When fewer than 24 input - // bits are available in an input group, bits with value zero are added - // (on the right) to form an integral number of 6-bit groups. Padding - // at the end of the data is performed using the '=' character. Since - // all base 64 input is an integral number of octets, only the following - // cases can arise: - // - // (1) The final quantum of encoding input is an integral multiple of 24 - // bits; here, the final unit of encoded output will be an integral - // multiple of 4 characters with no "=" padding. - // - // (2) The final quantum of encoding input is exactly 8 bits; here, the - // final unit of encoded output will be two characters followed by - // two "=" padding characters. - // - // (3) The final quantum of encoding input is exactly 16 bits; here, the - // final unit of encoded output will be three characters followed by - // one "=" padding character. - if (encoded.length >= 4) { - if (encoded.charAt(encoded.length - 1) === '=') { - if (encoded.charAt(encoded.length - 2) === '=') { - // Case (2) - byteCount = quartetCount * 3 - 2; - } else { - // Case (3) - byteCount = quartetCount * 3 - 1; - } - } else { - // Case (1) - byteCount = quartetCount * 3; - } - } else { - // Case (1) - byteCount = quartetCount * 3; - } - const bytes = new Uint8Array(byteCount); - let offset = 0; - for (let i = 0; i < quartetCount; i++) { - const enc1 = encoded.charAt(i * 4 + 0); - const enc2 = encoded.charAt(i * 4 + 1); - const enc3 = encoded.charAt(i * 4 + 2); - const enc4 = encoded.charAt(i * 4 + 3); - const sextet1 = lookupTable.get(enc1); - const sextet2 = lookupTable.get(enc2); - const sextet3 = lookupTable.get(enc3); - const sextet4 = lookupTable.get(enc4); - if (sextet1 == null || sextet2 == null || sextet3 == null || sextet4 == null) { - throw new Error(`Invalid quartet at indices ${i * 4} .. ${i * 4 + 3}: ${encoded.substring(i * 4, i * 4 + 3)}`); - } - bytes[offset++] = sextet1 << 2 | sextet2 >> 4; - if (enc3 !== '=') { - bytes[offset++] = (sextet2 & 15) << 4 | sextet3 >> 2; - } - if (enc4 !== '=') { - bytes[offset++] = (sextet3 & 7) << 6 | sextet4; - } - } - if (offset !== byteCount) { - throw new Error(`Expected to decode ${byteCount} bytes, but only decoded ${offset})`); - } - return bytes; -} -exports.decodeBase64 = decodeBase64; - -/***/ }), - -/***/ 218: -/***/ ((__unused_webpack_module, exports, __webpack_require__) => { - - - -Object.defineProperty(exports, "__esModule", ({ - value: true -})); -exports.ByteFormatter = exports.TimeFormatter = exports.RawValueFormatter = void 0; -const utils_1 = __webpack_require__(844); -class RawValueFormatter { - constructor() { - this.unit = 'none'; - } - format(v) { - return v.toLocaleString(); - } -} -exports.RawValueFormatter = RawValueFormatter; -class TimeFormatter { - constructor(unit) { - this.unit = unit; - if (unit === 'nanoseconds') this.multiplier = 1e-9;else if (unit === 'microseconds') this.multiplier = 1e-6;else if (unit === 'milliseconds') this.multiplier = 1e-3;else this.multiplier = 1; - } - formatUnsigned(v) { - const s = v * this.multiplier; - if (s / 60 >= 1) { - const minutes = Math.floor(s / 60); - const seconds = Math.floor(s - minutes * 60).toString(); - return `${minutes}:${utils_1.zeroPad(seconds, 2)}`; - } - if (s / 1 >= 1) return `${s.toFixed(2)}s`; - if (s / 1e-3 >= 1) return `${(s / 1e-3).toFixed(2)}ms`; - if (s / 1e-6 >= 1) return `${(s / 1e-6).toFixed(2)}µs`;else return `${(s / 1e-9).toFixed(2)}ns`; - } - format(v) { - return `${v < 0 ? '-' : ''}${this.formatUnsigned(Math.abs(v))}`; - } -} -exports.TimeFormatter = TimeFormatter; -class ByteFormatter { - constructor() { - this.unit = 'bytes'; - } - format(v) { - if (v < 1024) return `${v.toFixed(0)} B`; - v /= 1024; - if (v < 1024) return `${v.toFixed(2)} KB`; - v /= 1024; - if (v < 1024) return `${v.toFixed(2)} MB`; - v /= 1024; - return `${v.toFixed(2)} GB`; - } -} -exports.ByteFormatter = ByteFormatter; - -/***/ }), - -/***/ 41: -/***/ (function(__unused_webpack_module, exports, __webpack_require__) { - - - -var __createBinding = this && this.__createBinding || (Object.create ? function (o, m, k, k2) { - if (k2 === undefined) k2 = k; - Object.defineProperty(o, k2, { - enumerable: true, - get: function () { - return m[k]; - } - }); -} : function (o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -}); -var __exportStar = this && this.__exportStar || function (m, exports) { - for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ - value: true -})); -__exportStar(__webpack_require__(496), exports); -__exportStar(__webpack_require__(121), exports); - -/***/ }), - -/***/ 537: -/***/ ((module) => { - -// Import support https://stackoverflow.com/questions/13673346/supporting-both-commonjs-and-amd -(function (name, definition) { - if (true) { - module.exports = definition(); - } else {} -})("clipboard", function () { - if (typeof document === 'undefined' || !document.addEventListener) { - return null; - } - var clipboard = {}; - clipboard.copy = function () { - var _intercept = false; - var _data = null; // Map from data type (e.g. "text/html") to value. - var _bogusSelection = false; - function cleanup() { - _intercept = false; - _data = null; - if (_bogusSelection) { - window.getSelection().removeAllRanges(); - } - _bogusSelection = false; - } - document.addEventListener("copy", function (e) { - if (_intercept) { - for (var key in _data) { - e.clipboardData.setData(key, _data[key]); - } - e.preventDefault(); - } - }); - - // Workaround for Safari: https://bugs.webkit.org/show_bug.cgi?id=156529 - function bogusSelect() { - var sel = document.getSelection(); - // If "nothing" is selected... - if (!document.queryCommandEnabled("copy") && sel.isCollapsed) { - // ... temporarily select the entire body. - // - // We select the entire body because: - // - it's guaranteed to exist, - // - it works (unlike, say, document.head, or phantom element that is - // not inserted into the DOM), - // - it doesn't seem to flicker (due to the synchronous copy event), and - // - it avoids modifying the DOM (can trigger mutation observers). - // - // Because we can't do proper feature detection (we already checked - // document.queryCommandEnabled("copy") , which actually gives a false - // negative for Blink when nothing is selected) and UA sniffing is not - // reliable (a lot of UA strings contain "Safari"), this will also - // happen for some browsers other than Safari. :-() - var range = document.createRange(); - range.selectNodeContents(document.body); - sel.removeAllRanges(); - sel.addRange(range); - _bogusSelection = true; + function bogusSelect() { + var sel = document.getSelection(); + if (!document.queryCommandEnabled("copy") && sel.isCollapsed) { + var range = document.createRange(); + range.selectNodeContents(document.body); + sel.removeAllRanges(); + sel.addRange(range); + _bogusSelection = true; } } ; @@ -2889,8 +1236,6 @@ __exportStar(__webpack_require__(121), exports); function triggerCopy(tryBogusSelect) { try { if (document.execCommand("copy")) { - // document.execCommand is synchronous: http://www.w3.org/TR/2015/WD-clipboard-apis-20150421/#integration-with-rich-text-editing-apis - // So we can call resolve() back here. cleanup(); resolve(); } else { @@ -2941,10 +1286,7 @@ __exportStar(__webpack_require__(121), exports); }); }; }(); - - // Handle IE behaviour. if (typeof ClipboardEvent === "undefined" && typeof window.clipboardData !== "undefined" && typeof window.clipboardData.setData !== "undefined") { - /*! promise-polyfill 2.0.1 */ (function (a) { function b(a, b) { return function () { @@ -3053,8 +1395,6 @@ __exportStar(__webpack_require__(121), exports); })(this); clipboard.copy = function (data) { return new Promise(function (resolve, reject) { - // IE supports string and URL types: https://msdn.microsoft.com/en-us/library/ms536744(v=vs.85).aspx - // We only support the string type for now. if (typeof data !== "string" && !("text/plain" in data)) { throw new Error("You must provide a text/plain type."); } @@ -3073,7 +1413,6 @@ __exportStar(__webpack_require__(121), exports); if (strData) { resolve(strData); } else { - // The user rejected the paste request. reject(new Error("Pasting was rejected.")); } }); @@ -3084,187 +1423,6 @@ __exportStar(__webpack_require__(121), exports); /***/ }), -/***/ 715: -/***/ (function(module, exports, __webpack_require__) { - -var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;(function (root, factory) { - 'use strict'; - - // Universal Module Definition (UMD) to support AMD, CommonJS/Node.js, Rhino, and browsers. - - /* istanbul ignore next */ - if (true) { - !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(356)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), - __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? - (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), - __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); - } else {} -})(this, function ErrorStackParser(StackFrame) { - 'use strict'; - - var FIREFOX_SAFARI_STACK_REGEXP = /(^|@)\S+:\d+/; - var CHROME_IE_STACK_REGEXP = /^\s*at .*(\S+:\d+|\(native\))/m; - var SAFARI_NATIVE_CODE_REGEXP = /^(eval@)?(\[native code])?$/; - return { - /** - * Given an Error object, extract the most information from it. - * - * @param {Error} error object - * @return {Array} of StackFrames - */ - parse: function ErrorStackParser$$parse(error) { - if (typeof error.stacktrace !== 'undefined' || typeof error['opera#sourceloc'] !== 'undefined') { - return this.parseOpera(error); - } else if (error.stack && error.stack.match(CHROME_IE_STACK_REGEXP)) { - return this.parseV8OrIE(error); - } else if (error.stack) { - return this.parseFFOrSafari(error); - } else { - throw new Error('Cannot parse given Error object'); - } - }, - // Separate line and column numbers from a string of the form: (URI:Line:Column) - extractLocation: function ErrorStackParser$$extractLocation(urlLike) { - // Fail-fast but return locations like "(native)" - if (urlLike.indexOf(':') === -1) { - return [urlLike]; - } - var regExp = /(.+?)(?::(\d+))?(?::(\d+))?$/; - var parts = regExp.exec(urlLike.replace(/[()]/g, '')); - return [parts[1], parts[2] || undefined, parts[3] || undefined]; - }, - parseV8OrIE: function ErrorStackParser$$parseV8OrIE(error) { - var filtered = error.stack.split('\n').filter(function (line) { - return !!line.match(CHROME_IE_STACK_REGEXP); - }, this); - return filtered.map(function (line) { - if (line.indexOf('(eval ') > -1) { - // Throw away eval information until we implement stacktrace.js/stackframe#8 - line = line.replace(/eval code/g, 'eval').replace(/(\(eval at [^()]*)|(\),.*$)/g, ''); - } - var sanitizedLine = line.replace(/^\s+/, '').replace(/\(eval code/g, '('); - - // capture and preseve the parenthesized location "(/foo/my bar.js:12:87)" in - // case it has spaces in it, as the string is split on \s+ later on - var location = sanitizedLine.match(/ (\((.+):(\d+):(\d+)\)$)/); - - // remove the parenthesized location from the line, if it was matched - sanitizedLine = location ? sanitizedLine.replace(location[0], '') : sanitizedLine; - var tokens = sanitizedLine.split(/\s+/).slice(1); - // if a location was matched, pass it to extractLocation() otherwise pop the last token - var locationParts = this.extractLocation(location ? location[1] : tokens.pop()); - var functionName = tokens.join(' ') || undefined; - var fileName = ['eval', ''].indexOf(locationParts[0]) > -1 ? undefined : locationParts[0]; - return new StackFrame({ - functionName: functionName, - fileName: fileName, - lineNumber: locationParts[1], - columnNumber: locationParts[2], - source: line - }); - }, this); - }, - parseFFOrSafari: function ErrorStackParser$$parseFFOrSafari(error) { - var filtered = error.stack.split('\n').filter(function (line) { - return !line.match(SAFARI_NATIVE_CODE_REGEXP); - }, this); - return filtered.map(function (line) { - // Throw away eval information until we implement stacktrace.js/stackframe#8 - if (line.indexOf(' > eval') > -1) { - line = line.replace(/ line (\d+)(?: > eval line \d+)* > eval:\d+:\d+/g, ':$1'); - } - if (line.indexOf('@') === -1 && line.indexOf(':') === -1) { - // Safari eval frames only have function names and nothing else - return new StackFrame({ - functionName: line - }); - } else { - var functionNameRegex = /((.*".+"[^@]*)?[^@]*)(?:@)/; - var matches = line.match(functionNameRegex); - var functionName = matches && matches[1] ? matches[1] : undefined; - var locationParts = this.extractLocation(line.replace(functionNameRegex, '')); - return new StackFrame({ - functionName: functionName, - fileName: locationParts[0], - lineNumber: locationParts[1], - columnNumber: locationParts[2], - source: line - }); - } - }, this); - }, - parseOpera: function ErrorStackParser$$parseOpera(e) { - if (!e.stacktrace || e.message.indexOf('\n') > -1 && e.message.split('\n').length > e.stacktrace.split('\n').length) { - return this.parseOpera9(e); - } else if (!e.stack) { - return this.parseOpera10(e); - } else { - return this.parseOpera11(e); - } - }, - parseOpera9: function ErrorStackParser$$parseOpera9(e) { - var lineRE = /Line (\d+).*script (?:in )?(\S+)/i; - var lines = e.message.split('\n'); - var result = []; - for (var i = 2, len = lines.length; i < len; i += 2) { - var match = lineRE.exec(lines[i]); - if (match) { - result.push(new StackFrame({ - fileName: match[2], - lineNumber: match[1], - source: lines[i] - })); - } - } - return result; - }, - parseOpera10: function ErrorStackParser$$parseOpera10(e) { - var lineRE = /Line (\d+).*script (?:in )?(\S+)(?:: In function (\S+))?$/i; - var lines = e.stacktrace.split('\n'); - var result = []; - for (var i = 0, len = lines.length; i < len; i += 2) { - var match = lineRE.exec(lines[i]); - if (match) { - result.push(new StackFrame({ - functionName: match[3] || undefined, - fileName: match[2], - lineNumber: match[1], - source: lines[i] - })); - } - } - return result; - }, - // Opera 10.65+ Error.stack very similar to FF/Safari - parseOpera11: function ErrorStackParser$$parseOpera11(error) { - var filtered = error.stack.split('\n').filter(function (line) { - return !!line.match(FIREFOX_SAFARI_STACK_REGEXP) && !line.match(/^Error created at/); - }, this); - return filtered.map(function (line) { - var tokens = line.split('@'); - var locationParts = this.extractLocation(tokens.pop()); - var functionCall = tokens.shift() || ''; - var functionName = functionCall.replace(//, '$2').replace(/\([^)]*\)/g, '') || undefined; - var argsRaw; - if (functionCall.match(/\(([^)]*)\)/)) { - argsRaw = functionCall.replace(/^[^(]+\(([^)]*)\)$/, '$1'); - } - var args = argsRaw === undefined || argsRaw === '[arguments not available]' ? undefined : argsRaw.split(','); - return new StackFrame({ - functionName: functionName, - args: args, - fileName: locationParts[0], - lineNumber: locationParts[1], - columnNumber: locationParts[2], - source: line - }); - }, this); - } - }; -}); - -/***/ }), - /***/ 14: /***/ ((module) => { @@ -3274,9 +1432,6 @@ module.exports = string => { if (typeof string !== 'string') { throw new TypeError('Expected a string'); } - - // Escape characters with special meaning either inside or outside character sets. - // Use a simple backslash escape when it’s always valid, and a \unnnn escape when the simpler form would be disallowed by Unicode patterns’ stricter grammar. return string.replace(/[|\\{}()[\]^$+*?.]/g, '\\$&').replace(/-/g, '\\x2d'); }; @@ -3285,24 +1440,8 @@ module.exports = string => { /***/ 486: /***/ ((module) => { -/** - * These functions are for handling of query-string free URLs, necessitated - * by query string stripping of URLs in JavaScriptCore stack traces - * introduced in iOS 16.4. - * - * See https://github.com/facebook/react-native/issues/36794 for context. - * - * - */ - -// We use regex-based URL parsing as defined in RFC3986 because it's easier to -// determine whether the input is a complete URI, a path-absolute or a -// path-rootless (as defined in the spec), and be as faithful to the input as -// possible. This will match any string, and does not imply validity. -// -// https://www.rfc-editor.org/rfc/rfc3986#appendix-B const URI_REGEX = /^(([^:/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/; -function _rfc3986Parse(url /*:string */) { +function _rfc3986Parse(url) { const match = url.match(URI_REGEX); if (match == null) { throw new Error("Unexpected error - failed to regex-match URL"); @@ -3315,34 +1454,18 @@ function _rfc3986Parse(url /*:string */) { fragmentWithHash: match[8] || "" }; } -function isJscSafeUrl(url /*:string */) /*:boolean*/{ +function isJscSafeUrl(url) { const parsedUrl = _rfc3986Parse(url); return !parsedUrl.hasQueryPart; } - -/** - * @param {string} urlToNormalize - * @returns string - */ -function toNormalUrl(urlToNormalize /*:string */) /*:string */{ +function toNormalUrl(urlToNormalize) { const parsedUrl = _rfc3986Parse(urlToNormalize); if (parsedUrl.path.indexOf("//&") === -1) { return urlToNormalize; } - return parsedUrl.schemeAndAuthority + parsedUrl.path.replace("//&", "?") + ( - // We don't expect JSC urls to also have query strings, but interpret - // liberally and append them. - parsedUrl.queryWithoutQuestionMark.length > 0 ? "&" + parsedUrl.queryWithoutQuestionMark : "") + - // Likewise, JSC URLs will usually have their fragments stripped, but - // preserve if we find one. - parsedUrl.fragmentWithHash; + return parsedUrl.schemeAndAuthority + parsedUrl.path.replace("//&", "?") + (parsedUrl.queryWithoutQuestionMark.length > 0 ? "&" + parsedUrl.queryWithoutQuestionMark : "") + parsedUrl.fragmentWithHash; } - -/** - * @param {string} urlToConvert - * @returns string - */ -function toJscSafeUrl(urlToConvert /*:string */) /*:string */{ +function toJscSafeUrl(urlToConvert) { if (!_rfc3986Parse(urlToConvert).hasQueryPart) { return urlToConvert; } @@ -3350,12 +1473,7 @@ function toJscSafeUrl(urlToConvert /*:string */) /*:string */{ if (parsedUrl.queryWithoutQuestionMark.length > 0 && (parsedUrl.path === "" || parsedUrl.path === "/")) { throw new Error(`The given URL "${urlToConvert}" has an empty path and cannot be converted to a JSC-safe format.`); } - return parsedUrl.schemeAndAuthority + parsedUrl.path + (parsedUrl.queryWithoutQuestionMark.length > 0 ? "//&" + - // Query strings may contain '?' (e.g. in key or value names) - these - // must be percent-encoded to form a valid path, and not be stripped. - parsedUrl.queryWithoutQuestionMark.replace(/\?/g, "%3F") : "") + - // We expect JSC to strip this - we don't handle fragments for now. - parsedUrl.fragmentWithHash; + return parsedUrl.schemeAndAuthority + parsedUrl.path + (parsedUrl.queryWithoutQuestionMark.length > 0 ? "//&" + parsedUrl.queryWithoutQuestionMark.replace(/\?/g, "%3F") : "") + parsedUrl.fragmentWithHash; } module.exports = { isJscSafeUrl, @@ -3379,13 +1497,10 @@ module.exports = { }, fn(module, module.exports), module.exports; } var _global = createCommonjsModule(function (module) { - // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 - var global = module.exports = typeof window != 'undefined' && window.Math == Math ? window : typeof self != 'undefined' && self.Math == Math ? self - // eslint-disable-next-line no-new-func - : Function('return this')(); + var global = module.exports = typeof window != 'undefined' && window.Math == Math ? window : typeof self != 'undefined' && self.Math == Math ? self : Function('return this')(); if (typeof __g == 'number') { __g = global; - } // eslint-disable-line no-undef + } }); var _core = createCommonjsModule(function (module) { var core = module.exports = { @@ -3393,7 +1508,7 @@ module.exports = { }; if (typeof __e == 'number') { __e = core; - } // eslint-disable-line no-undef + } }); var _core_1 = _core.version; var _isObject = function (it) { @@ -3412,8 +1527,6 @@ module.exports = { return true; } }; - - // Thank's IE8 for his funny defineProperty var _descriptors = !_fails(function () { return Object.defineProperty({}, 'a', { get: function () { @@ -3422,7 +1535,6 @@ module.exports = { }).a != 7; }); var document = _global.document; - // typeof document.createElement is 'object' in old IE var is = _isObject(document) && _isObject(document.createElement); var _domCreate = function (it) { return is ? document.createElement(it) : {}; @@ -3434,11 +1546,6 @@ module.exports = { } }).a != 7; }); - - // 7.1.1 ToPrimitive(input [, PreferredType]) - - // instead of the ES6 spec version, we didn't implement @@toPrimitive case - // and the second argument - flag - preferred type is a string var _toPrimitive = function (it, S) { if (!_isObject(it)) { return it; @@ -3463,7 +1570,7 @@ module.exports = { if (_ie8DomDefine) { try { return dP(O, P, Attributes); - } catch (e) {/* empty */} + } catch (e) {} } if ('get' in Attributes || 'set' in Attributes) { throw TypeError('Accessors not supported!'); @@ -3540,7 +1647,6 @@ module.exports = { } else { _hide(O, key, val); } - // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative })(Function.prototype, TO_STRING, function toString() { return typeof this == 'function' && this[SRC] || _functionToString.call(this); }); @@ -3551,9 +1657,6 @@ module.exports = { } return it; }; - - // optional / simple context binding - var _ctx = function (fn, that, length) { _aFunction(fn); if (that === undefined) { @@ -3573,8 +1676,7 @@ module.exports = { return fn.call(that, a, b, c); }; } - return function /* ...args */ - () { + return function () { return fn.apply(that, arguments); }; }; @@ -3593,17 +1695,12 @@ module.exports = { source = name; } for (key in source) { - // contains in native own = !IS_FORCED && target && target[key] !== undefined; - // export native or passed out = (own ? target : source)[key]; - // bind timers to global for call from export context exp = IS_BIND && own ? _ctx(out, _global) : IS_PROTO && typeof out == 'function' ? _ctx(Function.call, out) : out; - // extend global if (target) { _redefine(target, key, out, type & $export.U); } - // export if (exports[key] != out) { _hide(exports, key, exp); } @@ -3613,34 +1710,26 @@ module.exports = { } }; _global.core = _core; - // type bitmap - $export.F = 1; // forced - $export.G = 2; // global - $export.S = 4; // static - $export.P = 8; // proto - $export.B = 16; // bind - $export.W = 32; // wrap - $export.U = 64; // safe - $export.R = 128; // real proto method for `library` + $export.F = 1; + $export.G = 2; + $export.S = 4; + $export.P = 8; + $export.B = 16; + $export.W = 32; + $export.U = 64; + $export.R = 128; var _export = $export; - - // 7.1.4 ToInteger var ceil = Math.ceil; var floor = Math.floor; var _toInteger = function (it) { return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it); }; - - // 7.2.1 RequireObjectCoercible(argument) var _defined = function (it) { if (it == undefined) { throw TypeError("Can't call method on " + it); } return it; }; - - // true -> String#at - // false -> String#codePointAt var _stringAt = function (TO_STRING) { return function (that, pos) { var s = String(_defined(that)); @@ -3656,7 +1745,6 @@ module.exports = { }; var $at = _stringAt(false); _export(_export.P, 'String', { - // 21.1.3.3 String.prototype.codePointAt(pos) codePointAt: function codePointAt(pos) { return $at(this, pos); } @@ -3670,13 +1758,9 @@ module.exports = { }; var fromCharCode = String.fromCharCode; var $fromCodePoint = String.fromCodePoint; - - // length should be 1, old FF problem _export(_export.S + _export.F * (!!$fromCodePoint && $fromCodePoint.length != 1), 'String', { - // 21.1.2.2 String.fromCodePoint(...codePoints) fromCodePoint: function fromCodePoint(x) { var arguments$1 = arguments; - // eslint-disable-line no-unused-vars var res = []; var aLen = arguments.length; var i = 0; @@ -3692,8 +1776,6 @@ module.exports = { } }); var fromCodePoint = _core.String.fromCodePoint; - - // This is a generated file. Do not edit. var Space_Separator = /[\u1680\u2000-\u200A\u202F\u205F\u3000]/; var ID_Start = /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE83\uDE86-\uDE89\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]/; var ID_Continue = /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u09FC\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9-\u0AFF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D00-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF9\u1D00-\u1DF9\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDE00-\uDE3E\uDE47\uDE50-\uDE83\uDE86-\uDE99\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/; @@ -3740,12 +1822,6 @@ module.exports = { root = undefined; do { token = lex(); - - // This code is unreachable. - // if (!parseStates[parseState]) { - // throw invalidParseState() - // } - parseStates[parseState](); } while (token.type !== 'eof'); if (typeof reviver === 'function') { @@ -3803,12 +1879,6 @@ module.exports = { sign = 1; for (;;) { c = peek(); - - // This code is unreachable. - // if (!lexStates[lexState]) { - // throw invalidLexState(lexState) - // } - var token = lexStates[lexState](); if (token) { return token; @@ -3862,12 +1932,6 @@ module.exports = { read(); return; } - - // This code is unreachable. - // if (!lexStates[parseState]) { - // throw invalidLexState(parseState) - // } - return lexStates[parseState](); }, comment: function comment() { @@ -4233,10 +2297,6 @@ module.exports = { case '{': case '[': return newToken('punctuator', read()); - - // This code is unreachable since the default lexState handles eof. - // case undefined: - // return newToken('eof') } lexState = 'value'; }, @@ -4298,12 +2358,6 @@ module.exports = { throw invalidChar(read()); }, end: function end() { - // This code is unreachable since it's handled by the default lexState. - // if (c === undefined) { - // read() - // return newToken('eof') - // } - throw invalidChar(read()); } }; @@ -4425,26 +2479,13 @@ module.exports = { parseState = 'afterPropertyName'; return; case 'punctuator': - // This code is unreachable since it's handled by the lexState. - // if (token.value !== '}') { - // throw invalidToken() - // } - pop(); return; case 'eof': throw invalidEOF(); } - - // This code is unreachable since it's handled by the lexState. - // throw invalidToken() }, afterPropertyName: function afterPropertyName() { - // This code is unreachable since it's handled by the lexState. - // if (token.type !== 'punctuator' || token.value !== ':') { - // throw invalidToken() - // } - if (token.type === 'eof') { throw invalidEOF(); } @@ -4467,11 +2508,6 @@ module.exports = { push(); }, afterPropertyValue: function afterPropertyValue() { - // This code is unreachable since it's handled by the lexState. - // if (token.type !== 'punctuator') { - // throw invalidToken() - // } - if (token.type === 'eof') { throw invalidEOF(); } @@ -4482,16 +2518,8 @@ module.exports = { case '}': pop(); } - - // This code is unreachable since it's handled by the lexState. - // throw invalidToken() }, afterArrayValue: function afterArrayValue() { - // This code is unreachable since it's handled by the lexState. - // if (token.type !== 'punctuator') { - // throw invalidToken() - // } - if (token.type === 'eof') { throw invalidEOF(); } @@ -4502,16 +2530,8 @@ module.exports = { case ']': pop(); } - - // This code is unreachable since it's handled by the lexState. - // throw invalidToken() }, - end: function end() { - // This code is unreachable since it's handled by the lexState. - // if (token.type !== 'eof') { - // throw invalidToken() - // } - } + end: function end() {} }; function push() { var value; @@ -4532,10 +2552,6 @@ module.exports = { case 'string': value = token.value; break; - - // This code is unreachable. - // default: - // throw invalidToken() } if (root === undefined) { root = value; @@ -4581,17 +2597,6 @@ module.exports = { parseState = 'afterPropertyValue'; } } - - // This code is unreachable. - // function invalidParseState () { - // return new Error(`JSON5: invalid parse state '${parseState}'`) - // } - - // This code is unreachable. - // function invalidLexState (state) { - // return new Error(`JSON5: invalid lex state '${state}'`) - // } - function invalidChar(c) { if (c === undefined) { return syntaxError("JSON5: invalid end of input at " + line + ":" + column); @@ -4601,17 +2606,6 @@ module.exports = { function invalidEOF() { return syntaxError("JSON5: invalid end of input at " + line + ":" + column); } - - // This code is unreachable. - // function invalidToken () { - // if (token.type === 'eof') { - // return syntaxError(`JSON5: invalid end of input at ${line}:${column}`) - // } - - // const c = String.fromCodePoint(token.value.codePointAt(0)) - // return syntaxError(`JSON5: invalid character '${formatChar(c)}' at ${line}:${column}`) - // } - function invalidIdentifier() { column -= 5; return syntaxError("JSON5: invalid identifier character at " + line + ":" + column); @@ -4883,7 +2877,6 @@ module.exports = { -// A linked list to keep track of recently-used-ness const Yallist = __webpack_require__(986); const MAX = Symbol('max'); const LENGTH = Symbol('length'); @@ -4896,15 +2889,6 @@ const LRU_LIST = Symbol('lruList'); const CACHE = Symbol('cache'); const UPDATE_AGE_ON_GET = Symbol('updateAgeOnGet'); const naiveLength = () => 1; - -// lruList is a yallist where the head is the youngest -// item, and the tail is the oldest. the list contains the Hit -// objects as the entries. -// Each Hit object has a reference to its Yallist.Node. This -// never changes. -// -// cache is a Map (or PseudoMap) that matches the keys to -// the Yallist.Node object. class LRUCache { constructor(options) { if (typeof options === 'number') options = { @@ -4912,7 +2896,6 @@ class LRUCache { }; if (!options) options = {}; if (options.max && (typeof options.max !== 'number' || options.max < 0)) throw new TypeError('max must be a non-negative number'); - // Kind of weird to have a default max of Infinity, but oh well. const max = this[MAX] = options.max || Infinity; const lc = options.length || naiveLength; this[LENGTH_CALCULATOR] = typeof lc !== 'function' ? naiveLength : lc; @@ -4924,8 +2907,6 @@ class LRUCache { this[UPDATE_AGE_ON_GET] = options.updateAgeOnGet || false; this.reset(); } - - // resize the cache when the max changes. set max(mL) { if (typeof mL !== 'number' || mL < 0) throw new TypeError('max must be a non-negative number'); this[MAX] = mL || Infinity; @@ -4948,8 +2929,6 @@ class LRUCache { get maxAge() { return this[MAX_AGE]; } - - // resize the cache when the lengthCalculator changes. set lengthCalculator(lC) { if (typeof lC !== 'function') lC = naiveLength; if (lC !== this[LENGTH_CALCULATOR]) { @@ -4997,9 +2976,9 @@ class LRUCache { if (this[DISPOSE] && this[LRU_LIST] && this[LRU_LIST].length) { this[LRU_LIST].forEach(hit => this[DISPOSE](hit.key, hit.value)); } - this[CACHE] = new Map(); // hash of items by key - this[LRU_LIST] = new Yallist(); // list of items in order of use recency - this[LENGTH] = 0; // length of items in the list + this[CACHE] = new Map(); + this[LRU_LIST] = new Yallist(); + this[LENGTH] = 0; } dump() { return this[LRU_LIST].map(hit => isStale(this, hit) ? false : { @@ -5023,9 +3002,6 @@ class LRUCache { } const node = this[CACHE].get(key); const item = node.value; - - // dispose of the old one before overwriting - // split out into 2 ifs for better coverage tracking if (this[DISPOSE]) { if (!this[NO_DISPOSE_ON_SET]) this[DISPOSE](key, item.value); } @@ -5039,8 +3015,6 @@ class LRUCache { return true; } const hit = new Entry(key, value, len, now, maxAge); - - // oversized objects fall out of cache automatically. if (hit.length > this[MAX]) { if (this[DISPOSE]) this[DISPOSE](key, value); return false; @@ -5072,18 +3046,13 @@ class LRUCache { del(this, this[CACHE].get(key)); } load(arr) { - // reset the cache this.reset(); const now = Date.now(); - // A previous serialized cache has the most recent items first for (let l = arr.length - 1; l >= 0; l--) { const hit = arr[l]; const expiresAt = hit.e || 0; - if (expiresAt === 0) - // the item was created without expiration in a non aged cache - this.set(hit.k, hit.v);else { + if (expiresAt === 0) this.set(hit.k, hit.v);else { const maxAge = expiresAt - now; - // dont add already expired items if (maxAge > 0) { this.set(hit.k, hit.v, maxAge); } @@ -5118,9 +3087,6 @@ const isStale = (self, hit) => { const trim = self => { if (self[LENGTH] > self[MAX]) { for (let walker = self[LRU_LIST].tail; self[LENGTH] > self[MAX] && walker !== null;) { - // We know that we're about to delete this one, and also - // what the next least recently used key will be, so just - // go ahead and set it now. const prev = walker.prev; del(self, walker); walker = prev; @@ -5157,152 +3123,14 @@ module.exports = LRUCache; /***/ }), -/***/ 69: +/***/ 397: /***/ ((module) => { - - -function nullthrows(x, message) { - if (x != null) { - return x; - } - var error = new Error(message !== undefined ? message : 'Got unexpected ' + x); - error.framesToPop = 1; // Skip nullthrows's own stack frame. - throw error; -} -module.exports = nullthrows; -module.exports["default"] = nullthrows; -Object.defineProperty(module.exports, "__esModule", ({ - value: true -})); - -/***/ }), - -/***/ 417: -/***/ ((module) => { - - - -module.exports = milliseconds => { - if (typeof milliseconds !== 'number') { - throw new TypeError('Expected a number'); - } - const roundTowardsZero = milliseconds > 0 ? Math.floor : Math.ceil; - return { - days: roundTowardsZero(milliseconds / 86400000), - hours: roundTowardsZero(milliseconds / 3600000) % 24, - minutes: roundTowardsZero(milliseconds / 60000) % 60, - seconds: roundTowardsZero(milliseconds / 1000) % 60, - milliseconds: roundTowardsZero(milliseconds) % 1000, - microseconds: roundTowardsZero(milliseconds * 1000) % 1000, - nanoseconds: roundTowardsZero(milliseconds * 1e6) % 1000 - }; -}; - -/***/ }), - -/***/ 894: -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - - - -const parseMilliseconds = __webpack_require__(417); -const pluralize = (word, count) => count === 1 ? word : `${word}s`; -const SECOND_ROUNDING_EPSILON = 0.0000001; -module.exports = (milliseconds, options = {}) => { - if (!Number.isFinite(milliseconds)) { - throw new TypeError('Expected a finite number'); - } - if (options.colonNotation) { - options.compact = false; - options.formatSubMilliseconds = false; - options.separateMilliseconds = false; - options.verbose = false; - } - if (options.compact) { - options.secondsDecimalDigits = 0; - options.millisecondsDecimalDigits = 0; - } - const result = []; - const floorDecimals = (value, decimalDigits) => { - const flooredInterimValue = Math.floor(value * 10 ** decimalDigits + SECOND_ROUNDING_EPSILON); - const flooredValue = Math.round(flooredInterimValue) / 10 ** decimalDigits; - return flooredValue.toFixed(decimalDigits); - }; - const add = (value, long, short, valueString) => { - if ((result.length === 0 || !options.colonNotation) && value === 0 && !(options.colonNotation && short === 'm')) { - return; - } - valueString = (valueString || value || '0').toString(); - let prefix; - let suffix; - if (options.colonNotation) { - prefix = result.length > 0 ? ':' : ''; - suffix = ''; - const wholeDigits = valueString.includes('.') ? valueString.split('.')[0].length : valueString.length; - const minLength = result.length > 0 ? 2 : 1; - valueString = '0'.repeat(Math.max(0, minLength - wholeDigits)) + valueString; - } else { - prefix = ''; - suffix = options.verbose ? ' ' + pluralize(long, value) : short; - } - result.push(prefix + valueString + suffix); - }; - const parsed = parseMilliseconds(milliseconds); - add(Math.trunc(parsed.days / 365), 'year', 'y'); - add(parsed.days % 365, 'day', 'd'); - add(parsed.hours, 'hour', 'h'); - add(parsed.minutes, 'minute', 'm'); - if (options.separateMilliseconds || options.formatSubMilliseconds || milliseconds < 1000) { - add(parsed.seconds, 'second', 's'); - if (options.formatSubMilliseconds) { - add(parsed.milliseconds, 'millisecond', 'ms'); - add(parsed.microseconds, 'microsecond', 'µs'); - add(parsed.nanoseconds, 'nanosecond', 'ns'); - } else { - const millisecondsAndBelow = parsed.milliseconds + parsed.microseconds / 1000 + parsed.nanoseconds / 1e6; - const millisecondsDecimalDigits = typeof options.millisecondsDecimalDigits === 'number' ? options.millisecondsDecimalDigits : 0; - const roundedMiliseconds = millisecondsAndBelow >= 1 ? Math.round(millisecondsAndBelow) : Math.ceil(millisecondsAndBelow); - const millisecondsString = millisecondsDecimalDigits ? millisecondsAndBelow.toFixed(millisecondsDecimalDigits) : roundedMiliseconds; - add(Number.parseFloat(millisecondsString, 10), 'millisecond', 'ms', millisecondsString); - } - } else { - const seconds = milliseconds / 1000 % 60; - const secondsDecimalDigits = typeof options.secondsDecimalDigits === 'number' ? options.secondsDecimalDigits : 1; - const secondsFixed = floorDecimals(seconds, secondsDecimalDigits); - const secondsString = options.keepDecimalsOnWholeSeconds ? secondsFixed : secondsFixed.replace(/\.0+$/, ''); - add(Number.parseFloat(secondsString, 10), 'second', 's', secondsString); - } - if (result.length === 0) { - return '0' + (options.verbose ? ' milliseconds' : 'ms'); - } - if (options.compact) { - return result[0]; - } - if (typeof options.unitCount === 'number') { - const separator = options.colonNotation ? '' : ' '; - return result.slice(0, Math.max(options.unitCount, 1)).join(separator); - } - return options.colonNotation ? result.join('') : result.join(' '); -}; - -/***/ }), - -/***/ 397: -/***/ ((module) => { - -// shim for using process in browser -var process = module.exports = {}; - -// cached from whatever global is present so that test runners that stub it -// don't break things. But we need to wrap it in a try catch in case it is -// wrapped in strict mode code which doesn't define any globals. It's inside a -// function because try/catches deoptimize in certain engines. - -var cachedSetTimeout; -var cachedClearTimeout; -function defaultSetTimout() { - throw new Error('setTimeout has not been defined'); +var process = module.exports = {}; +var cachedSetTimeout; +var cachedClearTimeout; +function defaultSetTimout() { + throw new Error('setTimeout has not been defined'); } function defaultClearTimeout() { throw new Error('clearTimeout has not been defined'); @@ -5329,47 +3157,36 @@ function defaultClearTimeout() { })(); function runTimeout(fun) { if (cachedSetTimeout === setTimeout) { - //normal enviroments in sane situations return setTimeout(fun, 0); } - // if setTimeout wasn't available but was latter defined if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) { cachedSetTimeout = setTimeout; return setTimeout(fun, 0); } try { - // when when somebody has screwed with setTimeout but no I.E. maddness return cachedSetTimeout(fun, 0); } catch (e) { try { - // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally return cachedSetTimeout.call(null, fun, 0); } catch (e) { - // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error return cachedSetTimeout.call(this, fun, 0); } } } function runClearTimeout(marker) { if (cachedClearTimeout === clearTimeout) { - //normal enviroments in sane situations return clearTimeout(marker); } - // if clearTimeout wasn't available but was latter defined if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) { cachedClearTimeout = clearTimeout; return clearTimeout(marker); } try { - // when when somebody has screwed with setTimeout but no I.E. maddness return cachedClearTimeout(marker); } catch (e) { try { - // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally return cachedClearTimeout.call(null, marker); } catch (e) { - // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error. - // Some versions of I.E. have different rules for clearTimeout vs setTimeout return cachedClearTimeout.call(this, marker); } } @@ -5426,8 +3243,6 @@ process.nextTick = function (fun) { runTimeout(drainQueue); } }; - -// v8 likes predictible objects function Item(fun, array) { this.fun = fun; this.array = array; @@ -5439,7 +3254,7 @@ process.title = 'browser'; process.browser = true; process.env = {}; process.argv = []; -process.version = ''; // empty string to avoid regexp issues +process.version = ''; process.versions = {}; function noop() {} process.on = noop; @@ -5472,13 +3287,6 @@ process.umask = function () { /***/ 793: /***/ ((module, __unused_webpack_exports, __webpack_require__) => { -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - var ReactPropTypesSecret = __webpack_require__(327); @@ -5488,7 +3296,6 @@ emptyFunctionWithReset.resetWarningCache = emptyFunction; module.exports = function () { function shim(props, propName, componentName, location, propFullName, secret) { if (secret === ReactPropTypesSecret) { - // It is still safe when called from React. return; } var err = new Error('Calling PropTypes validators directly is not supported by the `prop-types` package. ' + 'Use PropTypes.checkPropTypes() to call them. ' + 'Read more at http://fb.me/use-check-prop-types'); @@ -5501,8 +3308,6 @@ module.exports = function () { return shim; } ; - // Important! - // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`. var ReactPropTypes = { array: shim, bool: shim, @@ -5534,16 +3339,7 @@ module.exports = function () { /***/ 352: /***/ ((module, __unused_webpack_exports, __webpack_require__) => { -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - if (false) { var throwOnDirectAccess, ReactIs; } else { - // By explicitly using `prop-types` you are opting into new production behavior. - // http://fb.me/prop-types-in-prod module.exports = __webpack_require__(793)(); } @@ -5552,13 +3348,6 @@ if (false) { var throwOnDirectAccess, ReactIs; } else { /***/ 327: /***/ ((module) => { -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED'; @@ -5566,139 +3355,6 @@ module.exports = ReactPropTypesSecret; /***/ }), -/***/ 356: -/***/ (function(module, exports) { - -var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;(function (root, factory) { - 'use strict'; - - // Universal Module Definition (UMD) to support AMD, CommonJS/Node.js, Rhino, and browsers. - - /* istanbul ignore next */ - if (true) { - !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), - __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? - (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), - __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); - } else {} -})(this, function () { - 'use strict'; - - function _isNumber(n) { - return !isNaN(parseFloat(n)) && isFinite(n); - } - function _capitalize(str) { - return str.charAt(0).toUpperCase() + str.substring(1); - } - function _getter(p) { - return function () { - return this[p]; - }; - } - var booleanProps = ['isConstructor', 'isEval', 'isNative', 'isToplevel']; - var numericProps = ['columnNumber', 'lineNumber']; - var stringProps = ['fileName', 'functionName', 'source']; - var arrayProps = ['args']; - var props = booleanProps.concat(numericProps, stringProps, arrayProps); - function StackFrame(obj) { - if (!obj) return; - for (var i = 0; i < props.length; i++) { - if (obj[props[i]] !== undefined) { - this['set' + _capitalize(props[i])](obj[props[i]]); - } - } - } - StackFrame.prototype = { - getArgs: function () { - return this.args; - }, - setArgs: function (v) { - if (Object.prototype.toString.call(v) !== '[object Array]') { - throw new TypeError('Args must be an Array'); - } - this.args = v; - }, - getEvalOrigin: function () { - return this.evalOrigin; - }, - setEvalOrigin: function (v) { - if (v instanceof StackFrame) { - this.evalOrigin = v; - } else if (v instanceof Object) { - this.evalOrigin = new StackFrame(v); - } else { - throw new TypeError('Eval Origin must be an Object or StackFrame'); - } - }, - toString: function () { - var fileName = this.getFileName() || ''; - var lineNumber = this.getLineNumber() || ''; - var columnNumber = this.getColumnNumber() || ''; - var functionName = this.getFunctionName() || ''; - if (this.getIsEval()) { - if (fileName) { - return '[eval] (' + fileName + ':' + lineNumber + ':' + columnNumber + ')'; - } - return '[eval]:' + lineNumber + ':' + columnNumber; - } - if (functionName) { - return functionName + ' (' + fileName + ':' + lineNumber + ':' + columnNumber + ')'; - } - return fileName + ':' + lineNumber + ':' + columnNumber; - } - }; - StackFrame.fromString = function StackFrame$$fromString(str) { - var argsStartIndex = str.indexOf('('); - var argsEndIndex = str.lastIndexOf(')'); - var functionName = str.substring(0, argsStartIndex); - var args = str.substring(argsStartIndex + 1, argsEndIndex).split(','); - var locationString = str.substring(argsEndIndex + 1); - if (locationString.indexOf('@') === 0) { - var parts = /@(.+?)(?::(\d+))?(?::(\d+))?$/.exec(locationString, ''); - var fileName = parts[1]; - var lineNumber = parts[2]; - var columnNumber = parts[3]; - } - return new StackFrame({ - functionName: functionName, - args: args || undefined, - fileName: fileName, - lineNumber: lineNumber || undefined, - columnNumber: columnNumber || undefined - }); - }; - for (var i = 0; i < booleanProps.length; i++) { - StackFrame.prototype['get' + _capitalize(booleanProps[i])] = _getter(booleanProps[i]); - StackFrame.prototype['set' + _capitalize(booleanProps[i])] = function (p) { - return function (v) { - this[p] = Boolean(v); - }; - }(booleanProps[i]); - } - for (var j = 0; j < numericProps.length; j++) { - StackFrame.prototype['get' + _capitalize(numericProps[j])] = _getter(numericProps[j]); - StackFrame.prototype['set' + _capitalize(numericProps[j])] = function (p) { - return function (v) { - if (!_isNumber(v)) { - throw new TypeError(p + ' must be a Number'); - } - this[p] = Number(v); - }; - }(numericProps[j]); - } - for (var k = 0; k < stringProps.length; k++) { - StackFrame.prototype['get' + _capitalize(stringProps[k])] = _getter(stringProps[k]); - StackFrame.prototype['set' + _capitalize(stringProps[k])] = function (p) { - return function (v) { - this[p] = String(v); - }; - }(stringProps[k]); - } - return StackFrame; -}); - -/***/ }), - /***/ 29: /***/ ((module) => { @@ -5764,8 +3420,6 @@ function isFocusable(node) { function getTabindex(node) { var tabindexAttr = parseInt(node.getAttribute('tabindex'), 10); if (!isNaN(tabindexAttr)) return tabindexAttr; - // Browsers do not return `tabIndex` correctly for contentEditable nodes; - // so if they don't have a tabindex attribute specifically set, assume it's 0. if (isContentEditable(node)) return 0; return node.tabIndex; } @@ -5796,15 +3450,11 @@ function getCheckedRadio(nodes) { } function isTabbableRadio(node) { if (!node.name) return true; - // This won't account for the edge case where you have radio groups with the same - // in separate forms on the same page. var radioSet = node.ownerDocument.querySelectorAll('input[type="radio"][name="' + node.name + '"]'); var checked = getCheckedRadio(radioSet); return !checked || checked === node; } function isHidden(node) { - // offsetParent being null will allow detecting cases where an element is invisible or inside an invisible element, - // as long as the element does not use position: fixed. For them, their visibility has to be checked directly as well. return node.offsetParent === null || getComputedStyle(node).visibility === 'hidden'; } module.exports = tabbable; @@ -5815,7 +3465,6 @@ module.exports = tabbable; /***/ ((module) => { if (typeof Object.create === 'function') { - // implementation from standard node.js 'util' module module.exports = function inherits(ctor, superCtor) { ctor.super_ = superCtor; ctor.prototype = Object.create(superCtor.prototype, { @@ -5828,7 +3477,6 @@ if (typeof Object.create === 'function') { }); }; } else { - // old school shim for old browsers module.exports = function inherits(ctor, superCtor) { ctor.super_ = superCtor; var TempCtor = function () {}; @@ -5853,27 +3501,6 @@ module.exports = function isBuffer(arg) { /***/ ((__unused_webpack_module, exports, __webpack_require__) => { /* provided dependency */ var process = __webpack_require__(397); -// Copyright Joyent, Inc. and other Node contributors. -// -// Permission is hereby granted, free of charge, to any person obtaining a -// copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to permit -// persons to whom the Software is furnished to do so, subject to the -// following conditions: -// -// The above copyright notice and this permission notice shall be included -// in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN -// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE -// USE OR OTHER DEALINGS IN THE SOFTWARE. - var formatRegExp = /%[sdj%]/g; exports.format = function (f) { if (!isString(f)) { @@ -5913,12 +3540,7 @@ exports.format = function (f) { } return str; }; - -// Mark that a method should not be used. -// Returns a modified function which warns once by default. -// If --no-deprecation is set, then it is a no-op. exports.deprecate = function (fn, msg) { - // Allow for deprecating things in the process of starting up. if (isUndefined(global.process)) { return function () { return exports.deprecate(fn, msg).apply(this, arguments); @@ -5961,32 +3583,18 @@ exports.debuglog = function (set) { } return debugs[set]; }; - -/** - * Echos the value of a value. Trys to print the value out - * in the best way possible given the different types. - * - * @param {Object} obj The object to print out. - * @param {Object} opts Optional options object that alters the output. - */ -/* legacy: obj, showHidden, depth, colors*/ function inspect(obj, opts) { - // default options var ctx = { seen: [], stylize: stylizeNoColor }; - // legacy... if (arguments.length >= 3) ctx.depth = arguments[2]; if (arguments.length >= 4) ctx.colors = arguments[3]; if (isBoolean(opts)) { - // legacy... ctx.showHidden = opts; } else if (opts) { - // got an "options" object exports._extend(ctx, opts); } - // set default options if (isUndefined(ctx.showHidden)) ctx.showHidden = false; if (isUndefined(ctx.depth)) ctx.depth = 2; if (isUndefined(ctx.colors)) ctx.colors = false; @@ -5995,8 +3603,6 @@ function inspect(obj, opts) { return formatValue(ctx, obj, ctx.depth); } exports.inspect = inspect; - -// http://en.wikipedia.org/wiki/ANSI_escape_code#graphics inspect.colors = { 'bold': [1, 22], 'italic': [3, 23], @@ -6012,8 +3618,6 @@ inspect.colors = { 'red': [31, 39], 'yellow': [33, 39] }; - -// Don't use 'blue' not visible on cmd.exe inspect.styles = { 'special': 'cyan', 'number': 'yellow', @@ -6022,7 +3626,6 @@ inspect.styles = { 'null': 'bold', 'string': 'green', 'date': 'magenta', - // "name": intentionally not styling 'regexp': 'red' }; function stylizeWithColor(str, styleType) { @@ -6044,40 +3647,25 @@ function arrayToHash(array) { return hash; } function formatValue(ctx, value, recurseTimes) { - // Provide a hook for user-specified inspect functions. - // Check that value is an object with an inspect function on it - if (ctx.customInspect && value && isFunction(value.inspect) && - // Filter out the util module, it's inspect function is special - value.inspect !== exports.inspect && - // Also filter out any prototype objects using the circular check. - !(value.constructor && value.constructor.prototype === value)) { + if (ctx.customInspect && value && isFunction(value.inspect) && value.inspect !== exports.inspect && !(value.constructor && value.constructor.prototype === value)) { var ret = value.inspect(recurseTimes, ctx); if (!isString(ret)) { ret = formatValue(ctx, ret, recurseTimes); } return ret; } - - // Primitive types cannot have properties var primitive = formatPrimitive(ctx, value); if (primitive) { return primitive; } - - // Look up the keys of the object. var keys = Object.keys(value); var visibleKeys = arrayToHash(keys); if (ctx.showHidden) { keys = Object.getOwnPropertyNames(value); } - - // IE doesn't make error fields non-enumerable - // http://msdn.microsoft.com/en-us/library/ie/dww52sbt(v=vs.94).aspx if (isError(value) && (keys.indexOf('message') >= 0 || keys.indexOf('description') >= 0)) { return formatError(value); } - - // Some type of object without properties can be shortcutted. if (keys.length === 0) { if (isFunction(value)) { var name = value.name ? ': ' + value.name : ''; @@ -6096,30 +3684,20 @@ function formatValue(ctx, value, recurseTimes) { var base = '', array = false, braces = ['{', '}']; - - // Make Array say that they are Array if (isArray(value)) { array = true; braces = ['[', ']']; } - - // Make functions say that they are functions if (isFunction(value)) { var n = value.name ? ': ' + value.name : ''; base = ' [Function' + n + ']'; } - - // Make RegExps say that they are RegExps if (isRegExp(value)) { base = ' ' + RegExp.prototype.toString.call(value); } - - // Make dates with properties first say the date if (isDate(value)) { base = ' ' + Date.prototype.toUTCString.call(value); } - - // Make error with message first say the error if (isError(value)) { base = ' ' + formatError(value); } @@ -6153,7 +3731,6 @@ function formatPrimitive(ctx, value) { } if (isNumber(value)) return ctx.stylize('' + value, 'number'); if (isBoolean(value)) return ctx.stylize('' + value, 'boolean'); - // For some reason typeof null is "object", so special case here. if (isNull(value)) return ctx.stylize('null', 'null'); } function formatError(value) { @@ -6243,9 +3820,6 @@ function reduceToSingleString(output, base, braces) { } return braces[0] + base + ' ' + output.join(', ') + ' ' + braces[1]; } - -// NOTE: These type checking functions intentionally don't use `instanceof` -// because it is fragile and can be easily faked with `Object.create()`. function isArray(ar) { return Array.isArray(ar); } @@ -6299,9 +3873,7 @@ function isFunction(arg) { } exports.isFunction = isFunction; function isPrimitive(arg) { - return arg === null || typeof arg === 'boolean' || typeof arg === 'number' || typeof arg === 'string' || typeof arg === 'symbol' || - // ES6 symbol - typeof arg === 'undefined'; + return arg === null || typeof arg === 'boolean' || typeof arg === 'number' || typeof arg === 'string' || typeof arg === 'symbol' || typeof arg === 'undefined'; } exports.isPrimitive = isPrimitive; exports.isBuffer = __webpack_require__(772); @@ -6312,35 +3884,16 @@ function pad(n) { return n < 10 ? '0' + n.toString(10) : n.toString(10); } var months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']; - -// 26 Feb 16:19:34 function timestamp() { var d = new Date(); var time = [pad(d.getHours()), pad(d.getMinutes()), pad(d.getSeconds())].join(':'); return [d.getDate(), months[d.getMonth()], time].join(' '); } - -// log is just a thin wrapper to console.log that prepends a timestamp exports.log = function () { console.log('%s - %s', timestamp(), exports.format.apply(exports, arguments)); }; - -/** - * Inherit the prototype methods from one constructor into another. - * - * The Function.prototype.inherits from lang.js rewritten as a standalone - * function (not on Function.prototype). NOTE: If this file is to be loaded - * during bootstrapping this function needs to be rewritten using some native - * functions as prototype setup using normal JavaScript does not work as - * expected during bootstrapping (see mirror.js in r114903). - * - * @param {function} ctor Constructor function which needs to inherit the - * prototype. - * @param {function} superCtor Constructor function to inherit prototype from. - */ exports.inherits = __webpack_require__(510); exports._extend = function (origin, add) { - // Don't do anything if add isn't an object if (!add || !isObject(add)) return origin; var keys = Object.keys(add); var i = keys.length; @@ -6355,52 +3908,6 @@ function hasOwnProperty(obj, prop) { /***/ }), -/***/ 803: -/***/ ((module) => { - -function addMethods(worker, methods) { - var c = 0; - var callbacks = {}; - worker.addEventListener('message', function (e) { - var d = e.data; - if (d.type !== 'RPC') return; - if (d.id) { - var f = callbacks[d.id]; - if (f) { - delete callbacks[d.id]; - if (d.error) { - f[1](Object.assign(Error(d.error.message), d.error)); - } else { - f[0](d.result); - } - } - } else { - var evt = document.createEvent('Event'); - evt.initEvent(d.method, false, false); - evt.data = d.params; - worker.dispatchEvent(evt); - } - }); - methods.forEach(function (method) { - worker[method] = function () { - var _arguments = arguments; - return new Promise(function (a, b) { - var id = ++c; - callbacks[id] = [a, b]; - worker.postMessage({ - type: 'RPC', - id: id, - method: method, - params: [].slice.call(_arguments) - }); - }); - }; - }); -} -module.exports = addMethods; - -/***/ }), - /***/ 533: /***/ ((module) => { @@ -6561,7 +4068,6 @@ Yallist.prototype.forEachReverse = function (fn, thisp) { }; Yallist.prototype.get = function (n) { for (var i = 0, walker = this.head; walker !== null && i < n; i++) { - // abort out of the list early if we hit a cycle walker = walker.next; } if (i === n && walker !== null) { @@ -6570,7 +4076,6 @@ Yallist.prototype.get = function (n) { }; Yallist.prototype.getReverse = function (n) { for (var i = 0, walker = this.tail; walker !== null && i < n; i++) { - // abort out of the list early if we hit a cycle walker = walker.prev; } if (i === n && walker !== null) { @@ -6699,7 +4204,7 @@ Yallist.prototype.sliceReverse = function (from, to) { } return ret; }; -Yallist.prototype.splice = function (start, deleteCount /*, ...nodes */) { +Yallist.prototype.splice = function (start, deleteCount) { if (start > this.length) { start = this.length - 1; } @@ -6782,815 +4287,153 @@ function Node(value, prev, next, list) { } } try { - // add if support for Symbol.iterator is present __webpack_require__(533)(Yallist); } catch (er) {} -/***/ }), +/***/ }) -/***/ 853: -/***/ ((module) => { +/******/ }); +/************************************************************************/ +/******/ // The module cache +/******/ var __webpack_module_cache__ = {}; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ // Check if module is in cache +/******/ var cachedModule = __webpack_module_cache__[moduleId]; +/******/ if (cachedModule !== undefined) { +/******/ return cachedModule.exports; +/******/ } +/******/ // Create a new module (and put it into the cache) +/******/ var module = __webpack_module_cache__[moduleId] = { +/******/ // no module.id needed +/******/ // no module.loaded needed +/******/ exports: {} +/******/ }; +/******/ +/******/ // Execute the module function +/******/ __webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__); +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/************************************************************************/ +/******/ /* webpack/runtime/compat get default export */ +/******/ (() => { +/******/ // getDefaultExport function for compatibility with non-harmony modules +/******/ __webpack_require__.n = (module) => { +/******/ var getter = module && module.__esModule ? +/******/ () => (module['default']) : +/******/ () => (module); +/******/ __webpack_require__.d(getter, { a: getter }); +/******/ return getter; +/******/ }; +/******/ })(); +/******/ +/******/ /* webpack/runtime/create fake namespace object */ +/******/ (() => { +/******/ var getProto = Object.getPrototypeOf ? (obj) => (Object.getPrototypeOf(obj)) : (obj) => (obj.__proto__); +/******/ var leafPrototypes; +/******/ // create a fake namespace object +/******/ // mode & 1: value is a module id, require it +/******/ // mode & 2: merge all properties of value into the ns +/******/ // mode & 4: return value when already ns object +/******/ // mode & 16: return value when it's Promise-like +/******/ // mode & 8|1: behave like require +/******/ __webpack_require__.t = function(value, mode) { +/******/ if(mode & 1) value = this(value); +/******/ if(mode & 8) return value; +/******/ if(typeof value === 'object' && value) { +/******/ if((mode & 4) && value.__esModule) return value; +/******/ if((mode & 16) && typeof value.then === 'function') return value; +/******/ } +/******/ var ns = Object.create(null); +/******/ __webpack_require__.r(ns); +/******/ var def = {}; +/******/ leafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)]; +/******/ for(var current = mode & 2 && value; typeof current == 'object' && !~leafPrototypes.indexOf(current); current = getProto(current)) { +/******/ Object.getOwnPropertyNames(current).forEach((key) => (def[key] = () => (value[key]))); +/******/ } +/******/ def['default'] = () => (value); +/******/ __webpack_require__.d(ns, def); +/******/ return ns; +/******/ }; +/******/ })(); +/******/ +/******/ /* webpack/runtime/define property getters */ +/******/ (() => { +/******/ // define getter functions for harmony exports +/******/ __webpack_require__.d = (exports, definition) => { +/******/ for(var key in definition) { +/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { +/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); +/******/ } +/******/ } +/******/ }; +/******/ })(); +/******/ +/******/ /* webpack/runtime/hasOwnProperty shorthand */ +/******/ (() => { +/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop)) +/******/ })(); +/******/ +/******/ /* webpack/runtime/make namespace object */ +/******/ (() => { +/******/ // define __esModule on exports +/******/ __webpack_require__.r = (exports) => { +/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { +/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); +/******/ } +/******/ Object.defineProperty(exports, '__esModule', { value: true }); +/******/ }; +/******/ })(); +/******/ +/************************************************************************/ +var __webpack_exports__ = {}; +// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk. +(() => { -/** - * Copyright (c) 2014-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -var runtime = function (exports) { - "use strict"; - - var Op = Object.prototype; - var hasOwn = Op.hasOwnProperty; - var undefined; // More compressible than void 0. - var $Symbol = typeof Symbol === "function" ? Symbol : {}; - var iteratorSymbol = $Symbol.iterator || "@@iterator"; - var asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator"; - var toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; - function define(obj, key, value) { - Object.defineProperty(obj, key, { - value: value, - enumerable: true, - configurable: true, - writable: true +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + "EH": () => (/* binding */ createBridge), + "MT": () => (/* binding */ createStore), + "B7": () => (/* binding */ initializeComponents), + "kC": () => (/* binding */ initializeProfiler), + "wU": () => (/* binding */ initializeSuspense) +}); + +// EXTERNAL MODULE: ../../build/oss-experimental/react/index.js +var react = __webpack_require__(147); +var react_namespaceObject = /*#__PURE__*/__webpack_require__.t(react, 2); +// EXTERNAL MODULE: ../../build/oss-experimental/react-dom/client.js +var client = __webpack_require__(852); +;// CONCATENATED MODULE: ../shared/reportGlobalError.js +/* provided dependency */ var process = __webpack_require__(397); +const reportGlobalError = typeof reportError === 'function' ? reportError : error => { + if (typeof window === 'object' && typeof window.ErrorEvent === 'function') { + const message = typeof error === 'object' && error !== null && typeof error.message === 'string' ? String(error.message) : String(error); + const event = new window.ErrorEvent('error', { + bubbles: true, + cancelable: true, + message: message, + error: error }); - return obj[key]; - } - try { - // IE 8 has a broken Object.defineProperty that only works on DOM objects. - define({}, ""); - } catch (err) { - define = function (obj, key, value) { - return obj[key] = value; - }; - } - function wrap(innerFn, outerFn, self, tryLocsList) { - // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator. - var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator; - var generator = Object.create(protoGenerator.prototype); - var context = new Context(tryLocsList || []); - - // The ._invoke method unifies the implementations of the .next, - // .throw, and .return methods. - generator._invoke = makeInvokeMethod(innerFn, self, context); - return generator; - } - exports.wrap = wrap; - - // Try/catch helper to minimize deoptimizations. Returns a completion - // record like context.tryEntries[i].completion. This interface could - // have been (and was previously) designed to take a closure to be - // invoked without arguments, but in all the cases we care about we - // already have an existing method we want to call, so there's no need - // to create a new function object. We can even get away with assuming - // the method takes exactly one argument, since that happens to be true - // in every case, so we don't have to touch the arguments object. The - // only additional allocation required is the completion record, which - // has a stable shape and so hopefully should be cheap to allocate. - function tryCatch(fn, obj, arg) { - try { - return { - type: "normal", - arg: fn.call(obj, arg) - }; - } catch (err) { - return { - type: "throw", - arg: err - }; + const shouldLog = window.dispatchEvent(event); + if (!shouldLog) { + return; } + } else if (typeof process === 'object' && typeof process.emit === 'function') { + process.emit('uncaughtException', error); + return; } - var GenStateSuspendedStart = "suspendedStart"; - var GenStateSuspendedYield = "suspendedYield"; - var GenStateExecuting = "executing"; - var GenStateCompleted = "completed"; - - // Returning this object from the innerFn has the same effect as - // breaking out of the dispatch switch statement. - var ContinueSentinel = {}; - - // Dummy constructor functions that we use as the .constructor and - // .constructor.prototype properties for functions that return Generator - // objects. For full spec compliance, you may wish to configure your - // minifier not to mangle the names of these two functions. - function Generator() {} - function GeneratorFunction() {} - function GeneratorFunctionPrototype() {} - - // This is a polyfill for %IteratorPrototype% for environments that - // don't natively support it. - var IteratorPrototype = {}; - IteratorPrototype[iteratorSymbol] = function () { - return this; - }; - var getProto = Object.getPrototypeOf; - var NativeIteratorPrototype = getProto && getProto(getProto(values([]))); - if (NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) { - // This environment has a native %IteratorPrototype%; use it instead - // of the polyfill. - IteratorPrototype = NativeIteratorPrototype; - } - var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); - GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype; - GeneratorFunctionPrototype.constructor = GeneratorFunction; - GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"); - - // Helper for defining the .next, .throw, and .return methods of the - // Iterator interface in terms of a single ._invoke method. - function defineIteratorMethods(prototype) { - ["next", "throw", "return"].forEach(function (method) { - define(prototype, method, function (arg) { - return this._invoke(method, arg); - }); - }); - } - exports.isGeneratorFunction = function (genFun) { - var ctor = typeof genFun === "function" && genFun.constructor; - return ctor ? ctor === GeneratorFunction || - // For the native GeneratorFunction constructor, the best we can - // do is to check its .name property. - (ctor.displayName || ctor.name) === "GeneratorFunction" : false; - }; - exports.mark = function (genFun) { - if (Object.setPrototypeOf) { - Object.setPrototypeOf(genFun, GeneratorFunctionPrototype); - } else { - genFun.__proto__ = GeneratorFunctionPrototype; - define(genFun, toStringTagSymbol, "GeneratorFunction"); - } - genFun.prototype = Object.create(Gp); - return genFun; - }; - - // Within the body of any async function, `await x` is transformed to - // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test - // `hasOwn.call(value, "__await")` to determine if the yielded value is - // meant to be awaited. - exports.awrap = function (arg) { - return { - __await: arg - }; - }; - function AsyncIterator(generator, PromiseImpl) { - function invoke(method, arg, resolve, reject) { - var record = tryCatch(generator[method], generator, arg); - if (record.type === "throw") { - reject(record.arg); - } else { - var result = record.arg; - var value = result.value; - if (value && typeof value === "object" && hasOwn.call(value, "__await")) { - return PromiseImpl.resolve(value.__await).then(function (value) { - invoke("next", value, resolve, reject); - }, function (err) { - invoke("throw", err, resolve, reject); - }); - } - return PromiseImpl.resolve(value).then(function (unwrapped) { - // When a yielded Promise is resolved, its final value becomes - // the .value of the Promise<{value,done}> result for the - // current iteration. - result.value = unwrapped; - resolve(result); - }, function (error) { - // If a rejected Promise was yielded, throw the rejection back - // into the async generator function so it can be handled there. - return invoke("throw", error, resolve, reject); - }); - } - } - var previousPromise; - function enqueue(method, arg) { - function callInvokeWithMethodAndArg() { - return new PromiseImpl(function (resolve, reject) { - invoke(method, arg, resolve, reject); - }); - } - return previousPromise = - // If enqueue has been called before, then we want to wait until - // all previous Promises have been resolved before calling invoke, - // so that results are always delivered in the correct order. If - // enqueue has not been called before, then it is important to - // call invoke immediately, without waiting on a callback to fire, - // so that the async generator function has the opportunity to do - // any necessary setup in a predictable way. This predictability - // is why the Promise constructor synchronously invokes its - // executor callback, and why async functions synchronously - // execute code before the first await. Since we implement simple - // async functions in terms of async generators, it is especially - // important to get this right, even though it requires care. - previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, - // Avoid propagating failures to Promises returned by later - // invocations of the iterator. - callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); - } - - // Define the unified helper method that is used to implement .next, - // .throw, and .return (see defineIteratorMethods). - this._invoke = enqueue; - } - defineIteratorMethods(AsyncIterator.prototype); - AsyncIterator.prototype[asyncIteratorSymbol] = function () { - return this; - }; - exports.AsyncIterator = AsyncIterator; - - // Note that simple async functions are implemented on top of - // AsyncIterator objects; they just return a Promise for the value of - // the final result produced by the iterator. - exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { - if (PromiseImpl === void 0) PromiseImpl = Promise; - var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); - return exports.isGeneratorFunction(outerFn) ? iter // If outerFn is a generator, return the full iterator. - : iter.next().then(function (result) { - return result.done ? result.value : iter.next(); - }); - }; - function makeInvokeMethod(innerFn, self, context) { - var state = GenStateSuspendedStart; - return function invoke(method, arg) { - if (state === GenStateExecuting) { - throw new Error("Generator is already running"); - } - if (state === GenStateCompleted) { - if (method === "throw") { - throw arg; - } - - // Be forgiving, per 25.3.3.3.3 of the spec: - // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume - return doneResult(); - } - context.method = method; - context.arg = arg; - while (true) { - var delegate = context.delegate; - if (delegate) { - var delegateResult = maybeInvokeDelegate(delegate, context); - if (delegateResult) { - if (delegateResult === ContinueSentinel) continue; - return delegateResult; - } - } - if (context.method === "next") { - // Setting context._sent for legacy support of Babel's - // function.sent implementation. - context.sent = context._sent = context.arg; - } else if (context.method === "throw") { - if (state === GenStateSuspendedStart) { - state = GenStateCompleted; - throw context.arg; - } - context.dispatchException(context.arg); - } else if (context.method === "return") { - context.abrupt("return", context.arg); - } - state = GenStateExecuting; - var record = tryCatch(innerFn, self, context); - if (record.type === "normal") { - // If an exception is thrown from innerFn, we leave state === - // GenStateExecuting and loop back for another invocation. - state = context.done ? GenStateCompleted : GenStateSuspendedYield; - if (record.arg === ContinueSentinel) { - continue; - } - return { - value: record.arg, - done: context.done - }; - } else if (record.type === "throw") { - state = GenStateCompleted; - // Dispatch the exception by looping back around to the - // context.dispatchException(context.arg) call above. - context.method = "throw"; - context.arg = record.arg; - } - } - }; - } - - // Call delegate.iterator[context.method](context.arg) and handle the - // result, either by returning a { value, done } result from the - // delegate iterator, or by modifying context.method and context.arg, - // setting context.delegate to null, and returning the ContinueSentinel. - function maybeInvokeDelegate(delegate, context) { - var method = delegate.iterator[context.method]; - if (method === undefined) { - // A .throw or .return when the delegate iterator has no .throw - // method always terminates the yield* loop. - context.delegate = null; - if (context.method === "throw") { - // Note: ["return"] must be used for ES3 parsing compatibility. - if (delegate.iterator["return"]) { - // If the delegate iterator has a return method, give it a - // chance to clean up. - context.method = "return"; - context.arg = undefined; - maybeInvokeDelegate(delegate, context); - if (context.method === "throw") { - // If maybeInvokeDelegate(context) changed context.method from - // "return" to "throw", let that override the TypeError below. - return ContinueSentinel; - } - } - context.method = "throw"; - context.arg = new TypeError("The iterator does not provide a 'throw' method"); - } - return ContinueSentinel; - } - var record = tryCatch(method, delegate.iterator, context.arg); - if (record.type === "throw") { - context.method = "throw"; - context.arg = record.arg; - context.delegate = null; - return ContinueSentinel; - } - var info = record.arg; - if (!info) { - context.method = "throw"; - context.arg = new TypeError("iterator result is not an object"); - context.delegate = null; - return ContinueSentinel; - } - if (info.done) { - // Assign the result of the finished delegate to the temporary - // variable specified by delegate.resultName (see delegateYield). - context[delegate.resultName] = info.value; - - // Resume execution at the desired location (see delegateYield). - context.next = delegate.nextLoc; - - // If context.method was "throw" but the delegate handled the - // exception, let the outer generator proceed normally. If - // context.method was "next", forget context.arg since it has been - // "consumed" by the delegate iterator. If context.method was - // "return", allow the original .return call to continue in the - // outer generator. - if (context.method !== "return") { - context.method = "next"; - context.arg = undefined; - } - } else { - // Re-yield the result returned by the delegate method. - return info; - } - - // The delegate iterator is finished, so forget it and continue with - // the outer generator. - context.delegate = null; - return ContinueSentinel; - } - - // Define Generator.prototype.{next,throw,return} in terms of the - // unified ._invoke helper method. - defineIteratorMethods(Gp); - define(Gp, toStringTagSymbol, "Generator"); - - // A Generator should always return itself as the iterator object when the - // @@iterator function is called on it. Some browsers' implementations of the - // iterator prototype chain incorrectly implement this, causing the Generator - // object to not be returned from this call. This ensures that doesn't happen. - // See https://github.com/facebook/regenerator/issues/274 for more details. - Gp[iteratorSymbol] = function () { - return this; - }; - Gp.toString = function () { - return "[object Generator]"; - }; - function pushTryEntry(locs) { - var entry = { - tryLoc: locs[0] - }; - if (1 in locs) { - entry.catchLoc = locs[1]; - } - if (2 in locs) { - entry.finallyLoc = locs[2]; - entry.afterLoc = locs[3]; - } - this.tryEntries.push(entry); - } - function resetTryEntry(entry) { - var record = entry.completion || {}; - record.type = "normal"; - delete record.arg; - entry.completion = record; - } - function Context(tryLocsList) { - // The root entry object (effectively a try statement without a catch - // or a finally block) gives us a place to store values thrown from - // locations where there is no enclosing try statement. - this.tryEntries = [{ - tryLoc: "root" - }]; - tryLocsList.forEach(pushTryEntry, this); - this.reset(true); - } - exports.keys = function (object) { - var keys = []; - for (var key in object) { - keys.push(key); - } - keys.reverse(); - - // Rather than returning an object with a next method, we keep - // things simple and return the next function itself. - return function next() { - while (keys.length) { - var key = keys.pop(); - if (key in object) { - next.value = key; - next.done = false; - return next; - } - } - - // To avoid creating an additional object, we just hang the .value - // and .done properties off the next function object itself. This - // also ensures that the minifier will not anonymize the function. - next.done = true; - return next; - }; - }; - function values(iterable) { - if (iterable) { - var iteratorMethod = iterable[iteratorSymbol]; - if (iteratorMethod) { - return iteratorMethod.call(iterable); - } - if (typeof iterable.next === "function") { - return iterable; - } - if (!isNaN(iterable.length)) { - var i = -1, - next = function next() { - while (++i < iterable.length) { - if (hasOwn.call(iterable, i)) { - next.value = iterable[i]; - next.done = false; - return next; - } - } - next.value = undefined; - next.done = true; - return next; - }; - return next.next = next; - } - } - - // Return an iterator with no values. - return { - next: doneResult - }; - } - exports.values = values; - function doneResult() { - return { - value: undefined, - done: true - }; - } - Context.prototype = { - constructor: Context, - reset: function (skipTempReset) { - this.prev = 0; - this.next = 0; - // Resetting context._sent for legacy support of Babel's - // function.sent implementation. - this.sent = this._sent = undefined; - this.done = false; - this.delegate = null; - this.method = "next"; - this.arg = undefined; - this.tryEntries.forEach(resetTryEntry); - if (!skipTempReset) { - for (var name in this) { - // Not sure about the optimal order of these conditions: - if (name.charAt(0) === "t" && hasOwn.call(this, name) && !isNaN(+name.slice(1))) { - this[name] = undefined; - } - } - } - }, - stop: function () { - this.done = true; - var rootEntry = this.tryEntries[0]; - var rootRecord = rootEntry.completion; - if (rootRecord.type === "throw") { - throw rootRecord.arg; - } - return this.rval; - }, - dispatchException: function (exception) { - if (this.done) { - throw exception; - } - var context = this; - function handle(loc, caught) { - record.type = "throw"; - record.arg = exception; - context.next = loc; - if (caught) { - // If the dispatched exception was caught by a catch block, - // then let that catch block handle the exception normally. - context.method = "next"; - context.arg = undefined; - } - return !!caught; - } - for (var i = this.tryEntries.length - 1; i >= 0; --i) { - var entry = this.tryEntries[i]; - var record = entry.completion; - if (entry.tryLoc === "root") { - // Exception thrown outside of any try block that could handle - // it, so set the completion value of the entire function to - // throw the exception. - return handle("end"); - } - if (entry.tryLoc <= this.prev) { - var hasCatch = hasOwn.call(entry, "catchLoc"); - var hasFinally = hasOwn.call(entry, "finallyLoc"); - if (hasCatch && hasFinally) { - if (this.prev < entry.catchLoc) { - return handle(entry.catchLoc, true); - } else if (this.prev < entry.finallyLoc) { - return handle(entry.finallyLoc); - } - } else if (hasCatch) { - if (this.prev < entry.catchLoc) { - return handle(entry.catchLoc, true); - } - } else if (hasFinally) { - if (this.prev < entry.finallyLoc) { - return handle(entry.finallyLoc); - } - } else { - throw new Error("try statement without catch or finally"); - } - } - } - }, - abrupt: function (type, arg) { - for (var i = this.tryEntries.length - 1; i >= 0; --i) { - var entry = this.tryEntries[i]; - if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { - var finallyEntry = entry; - break; - } - } - if (finallyEntry && (type === "break" || type === "continue") && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc) { - // Ignore the finally entry if control is not jumping to a - // location outside the try/catch block. - finallyEntry = null; - } - var record = finallyEntry ? finallyEntry.completion : {}; - record.type = type; - record.arg = arg; - if (finallyEntry) { - this.method = "next"; - this.next = finallyEntry.finallyLoc; - return ContinueSentinel; - } - return this.complete(record); - }, - complete: function (record, afterLoc) { - if (record.type === "throw") { - throw record.arg; - } - if (record.type === "break" || record.type === "continue") { - this.next = record.arg; - } else if (record.type === "return") { - this.rval = this.arg = record.arg; - this.method = "return"; - this.next = "end"; - } else if (record.type === "normal" && afterLoc) { - this.next = afterLoc; - } - return ContinueSentinel; - }, - finish: function (finallyLoc) { - for (var i = this.tryEntries.length - 1; i >= 0; --i) { - var entry = this.tryEntries[i]; - if (entry.finallyLoc === finallyLoc) { - this.complete(entry.completion, entry.afterLoc); - resetTryEntry(entry); - return ContinueSentinel; - } - } - }, - "catch": function (tryLoc) { - for (var i = this.tryEntries.length - 1; i >= 0; --i) { - var entry = this.tryEntries[i]; - if (entry.tryLoc === tryLoc) { - var record = entry.completion; - if (record.type === "throw") { - var thrown = record.arg; - resetTryEntry(entry); - } - return thrown; - } - } - - // The context.catch method must only be called with a location - // argument that corresponds to a known catch block. - throw new Error("illegal catch attempt"); - }, - delegateYield: function (iterable, resultName, nextLoc) { - this.delegate = { - iterator: values(iterable), - resultName: resultName, - nextLoc: nextLoc - }; - if (this.method === "next") { - // Deliberately forget the last sent value so that we don't - // accidentally pass it on to the delegate. - this.arg = undefined; - } - return ContinueSentinel; - } - }; - - // Regardless of whether this script is executing as a CommonJS module - // or not, return the runtime object so that we can declare the variable - // regeneratorRuntime in the outer scope, which allows this module to be - // injected easily by `bin/regenerator --include-runtime script.js`. - return exports; -}( -// If this script is executing as a CommonJS module, use module.exports -// as the regeneratorRuntime namespace. Otherwise create a new empty -// object. Either way, the resulting object will be used to initialize -// the regeneratorRuntime variable at the top of this file. - true ? module.exports : 0); -try { - regeneratorRuntime = runtime; -} catch (accidentalStrictMode) { - // This module should not be running in strict mode, so the above - // assignment should always work unless something is misconfigured. Just - // in case runtime.js accidentally runs in strict mode, we can escape - // strict mode using a global Function call. This could conceivably fail - // if a Content Security Policy forbids using Function, but in that case - // the proper solution is to fix the accidental strict mode problem. If - // you've misconfigured your bundler to force strict mode and applied a - // CSP to forbid Function, and you're not willing to fix either of those - // problems, please detail your unique predicament in a GitHub issue. - Function("r", "regeneratorRuntime = r")(runtime); -} - -/***/ }), - -/***/ 282: -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - - - var addMethods = __webpack_require__(803) - var methods = ["importFile"] - module.exports = function() { - var w = new Worker(URL.createObjectURL(new Blob(["/******/ var __webpack_modules__ = ({\n\n/***/ 496:\n/***/ ((__unused_webpack_module, exports, __webpack_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.importFromOldV8CPUProfile = exports.importFromChromeCPUProfile = exports.importFromChromeTimeline = exports.isChromeTimeline = void 0;\nconst profile_1 = __webpack_require__(211);\nconst utils_1 = __webpack_require__(844);\nconst value_formatters_1 = __webpack_require__(218);\nconst v8cpuFormatter_1 = __webpack_require__(320);\nfunction isChromeTimeline(rawProfile) {\n if (!Array.isArray(rawProfile)) return false;\n if (rawProfile.length < 1) return false;\n const first = rawProfile[0];\n if (!('pid' in first && 'tid' in first && 'ph' in first && 'cat' in first)) return false;\n if (!rawProfile.find(e => e.name === 'CpuProfile' || e.name === 'Profile' || e.name === 'ProfileChunk')) return false;\n return true;\n}\nexports.isChromeTimeline = isChromeTimeline;\nfunction importFromChromeTimeline(events, fileName) {\n // It seems like sometimes Chrome timeline files contain multiple CpuProfiles?\n // For now, choose the first one in the list.\n const cpuProfileByID = new Map();\n // Maps profile IDs (like \"0x3\") to pid/tid pairs formatted as `${pid}:${tid}`\n const pidTidById = new Map();\n // Maps pid/tid pairs to thread names\n const threadNameByPidTid = new Map();\n // The events aren't necessarily recorded in chronological order. Sort them so\n // that they are.\n utils_1.sortBy(events, e => e.ts);\n for (let event of events) {\n if (event.name === 'CpuProfile') {\n const pidTid = `${event.pid}:${event.tid}`;\n const id = event.id || pidTid;\n cpuProfileByID.set(id, event.args.data.cpuProfile);\n pidTidById.set(id, pidTid);\n }\n if (event.name === 'Profile') {\n const pidTid = `${event.pid}:${event.tid}`;\n cpuProfileByID.set(event.id || pidTid, Object.assign({\n startTime: 0,\n endTime: 0,\n nodes: [],\n samples: [],\n timeDeltas: []\n }, event.args.data));\n if (event.id) {\n pidTidById.set(event.id, `${event.pid}:${event.tid}`);\n }\n }\n if (event.name === 'thread_name') {\n threadNameByPidTid.set(`${event.pid}:${event.tid}`, event.args.name);\n }\n if (event.name === 'ProfileChunk') {\n const pidTid = `${event.pid}:${event.tid}`;\n const cpuProfile = cpuProfileByID.get(event.id || pidTid);\n if (cpuProfile) {\n const chunk = event.args.data;\n if (chunk.cpuProfile) {\n if (chunk.cpuProfile.nodes) {\n cpuProfile.nodes = cpuProfile.nodes.concat(chunk.cpuProfile.nodes);\n }\n if (chunk.cpuProfile.samples) {\n cpuProfile.samples = cpuProfile.samples.concat(chunk.cpuProfile.samples);\n }\n }\n if (chunk.timeDeltas) {\n cpuProfile.timeDeltas = cpuProfile.timeDeltas.concat(chunk.timeDeltas);\n }\n if (chunk.startTime != null) {\n cpuProfile.startTime = chunk.startTime;\n }\n if (chunk.endTime != null) {\n cpuProfile.endTime = chunk.endTime;\n }\n } else {\n console.warn(`Ignoring ProfileChunk for undeclared Profile with id ${event.id || pidTid}`);\n }\n }\n }\n if (cpuProfileByID.size > 0) {\n const profiles = [];\n let indexToView = 0;\n utils_1.itForEach(cpuProfileByID.keys(), profileId => {\n let threadName = null;\n let pidTid = pidTidById.get(profileId);\n if (pidTid) {\n threadName = threadNameByPidTid.get(pidTid) || null;\n if (threadName) {}\n }\n const profile = importFromChromeCPUProfile(cpuProfileByID.get(profileId));\n if (threadName && cpuProfileByID.size > 1) {\n profile.setName(`${fileName} - ${threadName}`);\n if (threadName === 'CrRendererMain') {\n indexToView = profiles.length;\n }\n } else {\n profile.setName(`${fileName}`);\n }\n profiles.push(profile);\n });\n return {\n name: fileName,\n indexToView,\n profiles\n };\n } else {\n throw new Error('Could not find CPU profile in Timeline');\n }\n}\nexports.importFromChromeTimeline = importFromChromeTimeline;\nconst callFrameToFrameInfo = new Map();\nfunction frameInfoForCallFrame(callFrame) {\n return utils_1.getOrInsert(callFrameToFrameInfo, callFrame, callFrame => {\n const name = callFrame.functionName || '(anonymous)';\n const file = callFrame.url;\n const line = callFrame.lineNumber;\n const col = callFrame.columnNumber;\n return {\n key: `${name}:${file}:${line}:${col}`,\n name,\n file,\n line,\n col\n };\n });\n}\nfunction shouldIgnoreFunction(callFrame) {\n const {\n functionName,\n url\n } = callFrame;\n if (url === 'native dummy.js') {\n // I'm not really sure what this is about, but this seems to be used\n // as a way of avoiding edge cases in V8's implementation.\n // See: https://github.com/v8/v8/blob/b8626ca4/tools/js2c.py#L419-L424\n return true;\n }\n return functionName === '(root)' || functionName === '(idle)';\n}\nfunction shouldPlaceOnTopOfPreviousStack(functionName) {\n return functionName === '(garbage collector)' || functionName === '(program)';\n}\nfunction importFromChromeCPUProfile(chromeProfile) {\n const profile = new profile_1.CallTreeProfileBuilder(chromeProfile.endTime - chromeProfile.startTime);\n const nodeById = new Map();\n for (let node of chromeProfile.nodes) {\n nodeById.set(node.id, node);\n }\n for (let node of chromeProfile.nodes) {\n if (typeof node.parent === 'number') {\n node.parent = nodeById.get(node.parent);\n }\n if (!node.children) continue;\n for (let childId of node.children) {\n const child = nodeById.get(childId);\n if (!child) continue;\n child.parent = node;\n }\n }\n const samples = [];\n const sampleTimes = [];\n // The first delta is relative to the profile startTime.\n // Ref: https://github.com/v8/v8/blob/44bd8fd7/src/inspector/js_protocol.json#L1485\n let elapsed = chromeProfile.timeDeltas[0];\n // Prevents negative time deltas from causing bad data. See\n // https://github.com/jlfwong/speedscope/pull/305 for details.\n let lastValidElapsed = elapsed;\n let lastNodeId = NaN;\n // The chrome CPU profile format doesn't collapse identical samples. We'll do that\n // here to save a ton of work later doing mergers.\n for (let i = 0; i < chromeProfile.samples.length; i++) {\n const nodeId = chromeProfile.samples[i];\n if (nodeId != lastNodeId) {\n samples.push(nodeId);\n if (elapsed < lastValidElapsed) {\n sampleTimes.push(lastValidElapsed);\n } else {\n sampleTimes.push(elapsed);\n lastValidElapsed = elapsed;\n }\n }\n if (i === chromeProfile.samples.length - 1) {\n if (!isNaN(lastNodeId)) {\n samples.push(lastNodeId);\n if (elapsed < lastValidElapsed) {\n sampleTimes.push(lastValidElapsed);\n } else {\n sampleTimes.push(elapsed);\n lastValidElapsed = elapsed;\n }\n }\n } else {\n const timeDelta = chromeProfile.timeDeltas[i + 1];\n elapsed += timeDelta;\n lastNodeId = nodeId;\n }\n }\n let prevStack = [];\n for (let i = 0; i < samples.length; i++) {\n const value = sampleTimes[i];\n const nodeId = samples[i];\n let stackTop = nodeById.get(nodeId);\n if (!stackTop) continue;\n // Find lowest common ancestor of the current stack and the previous one\n let lca = null;\n // This is O(n^2), but n should be relatively small here (stack height),\n // so hopefully this isn't much of a problem\n for (lca = stackTop; lca && prevStack.indexOf(lca) === -1; lca = shouldPlaceOnTopOfPreviousStack(lca.callFrame.functionName) ? utils_1.lastOf(prevStack) : lca.parent || null) {}\n // Close frames that are no longer open\n while (prevStack.length > 0 && utils_1.lastOf(prevStack) != lca) {\n const closingNode = prevStack.pop();\n const frame = frameInfoForCallFrame(closingNode.callFrame);\n profile.leaveFrame(frame, value);\n }\n // Open frames that are now becoming open\n const toOpen = [];\n for (let node = stackTop; node && node != lca && !shouldIgnoreFunction(node.callFrame);\n // Place Chrome internal functions on top of the previous call stack\n node = shouldPlaceOnTopOfPreviousStack(node.callFrame.functionName) ? utils_1.lastOf(prevStack) : node.parent || null) {\n toOpen.push(node);\n }\n toOpen.reverse();\n for (let node of toOpen) {\n profile.enterFrame(frameInfoForCallFrame(node.callFrame), value);\n }\n prevStack = prevStack.concat(toOpen);\n }\n // Close frames that are open at the end of the trace\n for (let i = prevStack.length - 1; i >= 0; i--) {\n profile.leaveFrame(frameInfoForCallFrame(prevStack[i].callFrame), utils_1.lastOf(sampleTimes));\n }\n profile.setValueFormatter(new value_formatters_1.TimeFormatter('microseconds'));\n return profile.build();\n}\nexports.importFromChromeCPUProfile = importFromChromeCPUProfile;\nfunction importFromOldV8CPUProfile(content) {\n return importFromChromeCPUProfile(v8cpuFormatter_1.chromeTreeToNodes(content));\n}\nexports.importFromOldV8CPUProfile = importFromOldV8CPUProfile;\n\n/***/ }),\n\n/***/ 320:\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.chromeTreeToNodes = void 0;\nfunction treeToArray(root) {\n const nodes = [];\n function visit(node) {\n nodes.push({\n id: node.id,\n callFrame: {\n columnNumber: 0,\n functionName: node.functionName,\n lineNumber: node.lineNumber,\n scriptId: node.scriptId,\n url: node.url\n },\n hitCount: node.hitCount,\n children: node.children.map(child => child.id)\n });\n node.children.forEach(visit);\n }\n visit(root);\n return nodes;\n}\nfunction timestampsToDeltas(timestamps, startTime) {\n return timestamps.map((timestamp, index) => {\n const lastTimestamp = index === 0 ? startTime * 1000000 : timestamps[index - 1];\n return timestamp - lastTimestamp;\n });\n}\n/**\n * Convert the old tree-based format to the new flat-array based format\n */\nfunction chromeTreeToNodes(content) {\n // Note that both startTime and endTime are now in microseconds\n return {\n samples: content.samples,\n startTime: content.startTime * 1000000,\n endTime: content.endTime * 1000000,\n nodes: treeToArray(content.head),\n timeDeltas: timestampsToDeltas(content.timestamps, content.startTime)\n };\n}\nexports.chromeTreeToNodes = chromeTreeToNodes;\n\n/***/ }),\n\n/***/ 765:\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.demangleCpp = void 0;\nlet cppfilt;\nconst cache = new Map();\n// This function converts a mangled C++ name such as \"__ZNK7Support6ColorFeqERKS0_\"\n// into a human-readable symbol (in this case \"Support::ColorF::==(Support::ColorF&)\")\nfunction demangleCpp(name) {\n if (name.startsWith('__Z')) {\n let result = cache.get(name);\n if (result !== undefined) {\n name = result;\n } else {\n if (!cppfilt) {\n cppfilt = new Function('exports', code)();\n }\n result = cppfilt(name.slice(1));\n result = result === '(null)' ? name : result;\n cache.set(name, result);\n name = result;\n }\n }\n return name;\n}\nexports.demangleCpp = demangleCpp;\n// This was taken from https://d.fuqu.jp/c++filtjs/\nconst code = `\nreturn function(){function r(r){eval.call(null,r)}function a(r){throw print(r+\":\\\\n\"+(new Error).stack),ke=!0,\"Assertion: \"+r}function e(r,e){r||a(\"Assertion failed: \"+e)}function i(r,a,i,v){function t(r,a){if(\"string\"==a){var e=Oe;return le.stackAlloc(r.length+1),A(r,e),e}return r}function f(r,a){return\"string\"==a?s(r):r}try{func=ce.Module[\"_\"+r]}catch(r){}e(func,\"Cannot call unknown function \"+r+\" (perhaps LLVM optimizations or closure removed it?)\");var _=0,n=v?v.map(function(r){return t(r,i[_++])}):[];return f(func.apply(null,n),a)}function v(r,a,e){return function(){return i(r,a,e,Array.prototype.slice.call(arguments))}}function t(r,e,i,v){switch(i=i||\"i8\",\"*\"===i[i.length-1]&&(i=\"i32\"),i){case\"i1\":Ae[r]=e;break;case\"i8\":Ae[r]=e;break;case\"i16\":ye[r>>1]=e;break;case\"i32\":Se[r>>2]=e;break;case\"i64\":Se[r>>2]=e;break;case\"float\":Ce[r>>2]=e;break;case\"double\":ze[0]=e,Se[r>>2]=xe[0],Se[r+4>>2]=xe[1];break;default:a(\"invalid type for setValue: \"+i)}}function f(r,e,i){switch(e=e||\"i8\",\"*\"===e[e.length-1]&&(e=\"i32\"),e){case\"i1\":return Ae[r];case\"i8\":return Ae[r];case\"i16\":return ye[r>>1];case\"i32\":return Se[r>>2];case\"i64\":return Se[r>>2];case\"float\":return Ce[r>>2];case\"double\":return xe[0]=Se[r>>2],xe[1]=Se[r+4>>2],ze[0];default:a(\"invalid type for setValue: \"+e)}return null}function _(r,a,e){var i,v;\"number\"==typeof r?(i=!0,v=r):(i=!1,v=r.length);var f=\"string\"==typeof a?a:null,_=[Jr,le.stackAlloc,le.staticAlloc][void 0===e?we:e](Math.max(v,f?1:a.length));if(i)return Fa(_,0,v),_;for(var s,n=0;n>12<<12}function l(){for(;Le<=Ie;)Le=o(2*Le);var r=Ae,a=new ArrayBuffer(Le);Ae=new Int8Array(a),ye=new Int16Array(a),Se=new Int32Array(a),ge=new Uint8Array(a),me=new Uint16Array(a),Me=new Uint32Array(a),Ce=new Float32Array(a),Re=new Float64Array(a),Ae.set(r)}function b(r){for(;r.length>0;){var a=r.shift(),e=a.func;\"number\"==typeof e&&(e=pe[e]),e(void 0===a.arg?null:a.arg)}}function k(){b(Ve)}function u(){b(Be),be.print()}function c(r,a){return Array.prototype.slice.call(Ae.subarray(r,r+a))}function h(r,a){for(var e=new Uint8Array(a),i=0;i255&&(v&=255),e.push(v),i+=1}return a||e.push(0),e}function E(r){for(var a=[],e=0;e255&&(i&=255),a.push(String.fromCharCode(i))}return a.join(\"\")}function A(r,a,e){for(var i=0;i255&&(v&=255),Ae[a+i]=v,i+=1}e||(Ae[a+i]=0)}function g(r,a,e,i){return r>=0?r:a<=32?2*Math.abs(1<=v&&(a<=32||r>v)&&(r=-2*v+r),r}function m(r,a,e){if(0==(0|r)|0==(0|a)|0==(0|e))var i=0;else{Se[r>>2]=0,Se[r+4>>2]=a,Se[r+8>>2]=e;var i=1}var i;return i}function S(r,a,e){if(0==(0|r)|(0|a)<0|0==(0|e))var i=0;else{Se[r>>2]=41,Se[r+4>>2]=a,Se[r+8>>2]=e;var i=1}var i;return i}function M(r,a,e){if(0==(0|r)|0==(0|e))var i=0;else{Se[r>>2]=6,Se[r+4>>2]=a,Se[r+8>>2]=e;var i=1}var i;return i}function C(r,a,e){if(0==(0|r)|0==(0|e))var i=0;else{Se[r>>2]=7,Se[r+4>>2]=a,Se[r+8>>2]=e;var i=1}var i;return i}function R(r,a){var e,i=0==(0|a);do if(i)var v=0;else{var e=(r+32|0)>>2,t=Se[e];if((0|t)>=(0|Se[r+36>>2])){var v=0;break}var f=(t<<2)+Se[r+28>>2]|0;Se[f>>2]=a;var _=Se[e]+1|0;Se[e]=_;var v=1}while(0);var v;return v}function T(r,a){var e,e=(r+12|0)>>2,i=Se[e],v=i+1|0;Se[e]=v;var t=Ae[i]<<24>>24==95;do if(t){var f=i+2|0;if(Se[e]=f,Ae[v]<<24>>24!=90){var _=0;break}var s=O(r,a),_=s}else var _=0;while(0);var _;return _}function O(r,a){var e=r+12|0,i=Ae[Se[e>>2]];r:do if(i<<24>>24==71||i<<24>>24==84)var v=Tr(r),t=v;else{var f=Ar(r),_=0==(0|f)|0==(0|a);do if(!_){if(0!=(1&Se[r+8>>2]|0))break;var s=Me[f>>2],n=(s-25|0)>>>0<3;a:do if(n)for(var o=f;;){var o,l=Me[o+4>>2],b=Me[l>>2];if((b-25|0)>>>0>=3){var k=l,u=b;break a}var o=l}else var k=f,u=s;while(0);var u,k;if(2!=(0|u)){var t=k;break r}var c=k+8|0,h=Me[c>>2],d=(Se[h>>2]-25|0)>>>0<3;a:do if(d)for(var w=h;;){var w,p=Me[w+4>>2];if((Se[p>>2]-25|0)>>>0>=3){var E=p;break a}var w=p}else var E=h;while(0);var E;Se[c>>2]=E;var t=k;break r}while(0);var A=Ae[Se[e>>2]];if(A<<24>>24==0||A<<24>>24==69){var t=f;break}var g=Or(f),y=Sr(r,g),m=D(r,3,f,y),t=m}while(0);var t;return t}function N(r){var a,e,i=Oe;Oe+=4;var v=i,e=v>>2,a=(r+12|0)>>2,t=Me[a],f=Ae[t],_=f<<24>>24;r:do if(f<<24>>24==114||f<<24>>24==86||f<<24>>24==75){var s=I(r,v,0);if(0==(0|s)){var n=0;break}var o=N(r);Se[s>>2]=o;var l=Se[e],b=R(r,l);if(0==(0|b)){var n=0;break}var n=Se[e]}else{do{if(97==(0|_)||98==(0|_)||99==(0|_)||100==(0|_)||101==(0|_)||102==(0|_)||103==(0|_)||104==(0|_)||105==(0|_)||106==(0|_)||108==(0|_)||109==(0|_)||110==(0|_)||111==(0|_)||115==(0|_)||116==(0|_)||118==(0|_)||119==(0|_)||120==(0|_)||121==(0|_)||122==(0|_)){var k=ai+20*(_-97)|0,u=P(r,k);Se[e]=u;var c=r+48|0,h=Se[c>>2]+Se[Se[u+4>>2]+4>>2]|0;Se[c>>2]=h;var d=Se[a]+1|0;Se[a]=d;var n=u;break r}if(117==(0|_)){Se[a]=t+1|0;var w=L(r),p=D(r,34,w,0);Se[e]=p;var E=p}else if(70==(0|_)){var A=F(r);Se[e]=A;var E=A}else if(48==(0|_)||49==(0|_)||50==(0|_)||51==(0|_)||52==(0|_)||53==(0|_)||54==(0|_)||55==(0|_)||56==(0|_)||57==(0|_)||78==(0|_)||90==(0|_)){var g=X(r);Se[e]=g;var E=g}else if(65==(0|_)){var y=j(r);Se[e]=y;var E=y}else if(77==(0|_)){var m=U(r);Se[e]=m;var E=m}else if(84==(0|_)){var S=x(r);if(Se[e]=S,Ae[Se[a]]<<24>>24!=73){var E=S;break}var M=R(r,S);if(0==(0|M)){var n=0;break r}var C=Se[e],T=z(r),O=D(r,4,C,T);Se[e]=O;var E=O}else if(83==(0|_)){var B=ge[t+1|0];if((B-48&255&255)<10|B<<24>>24==95|(B-65&255&255)<26){var H=V(r,0);if(Se[e]=H,Ae[Se[a]]<<24>>24!=73){var n=H;break r}var K=z(r),Y=D(r,4,H,K);Se[e]=Y;var E=Y}else{var G=X(r);if(Se[e]=G,0==(0|G)){var E=0;break}if(21==(0|Se[G>>2])){var n=G;break r}var E=G}}else if(80==(0|_)){Se[a]=t+1|0;var W=N(r),Z=D(r,29,W,0);Se[e]=Z;var E=Z}else if(82==(0|_)){Se[a]=t+1|0;var Q=N(r),q=D(r,30,Q,0);Se[e]=q;var E=q}else if(67==(0|_)){Se[a]=t+1|0;var $=N(r),J=D(r,31,$,0);Se[e]=J;var E=J}else if(71==(0|_)){Se[a]=t+1|0;var rr=N(r),ar=D(r,32,rr,0);Se[e]=ar;var E=ar}else{if(85!=(0|_)){var n=0;break r}Se[a]=t+1|0;var er=L(r);Se[e]=er;var ir=N(r),vr=Se[e],tr=D(r,28,ir,vr);Se[e]=tr;var E=tr}}while(0);var E,fr=R(r,E);if(0==(0|fr)){var n=0;break}var n=Se[e]}while(0);var n;return Oe=i,n}function I(r,a,e){for(var i,v=r+12|0,t=0!=(0|e),f=t?25:22,i=(r+48|0)>>2,_=t?26:23,s=t?27:24,n=a;;){var n,o=Se[v>>2],l=Ae[o];if(l<<24>>24!=114&&l<<24>>24!=86&&l<<24>>24!=75){var b=n;break}var k=o+1|0;if(Se[v>>2]=k,l<<24>>24==114){var u=Se[i]+9|0;Se[i]=u;var c=f}else if(l<<24>>24==86){var h=Se[i]+9|0;Se[i]=h;var c=_}else{var d=Se[i]+6|0;Se[i]=d;var c=s}var c,w=D(r,c,0,0);if(Se[n>>2]=w,0==(0|w)){var b=0;break}var n=w+4|0}var b;return b}function P(r,a){var e=0==(0|a);do if(e)var i=0;else{var v=J(r);if(0==(0|v)){var i=0;break}Se[v>>2]=33,Se[v+4>>2]=a;var i=v}while(0);var i;return i}function D(r,a,e,i){var v,t;do{if(1==(0|a)||2==(0|a)||3==(0|a)||4==(0|a)||10==(0|a)||28==(0|a)||37==(0|a)||43==(0|a)||44==(0|a)||45==(0|a)||46==(0|a)||47==(0|a)||48==(0|a)||49==(0|a)||50==(0|a)){if(0==(0|e)|0==(0|i)){var f=0;t=7;break}t=5;break}if(8==(0|a)||9==(0|a)||11==(0|a)||12==(0|a)||13==(0|a)||14==(0|a)||15==(0|a)||16==(0|a)||17==(0|a)||18==(0|a)||19==(0|a)||20==(0|a)||29==(0|a)||30==(0|a)||31==(0|a)||32==(0|a)||34==(0|a)||38==(0|a)||39==(0|a)||42==(0|a)){if(0==(0|e)){var f=0;t=7;break}t=5;break}if(36==(0|a)){if(0==(0|i)){var f=0;t=7;break}t=5;break}if(35==(0|a)||22==(0|a)||23==(0|a)||24==(0|a)||25==(0|a)||26==(0|a)||27==(0|a))t=5;else{var f=0;t=7}}while(0);do if(5==t){var _=J(r),v=_>>2;if(0==(0|_)){var f=0;break}Se[v]=a,Se[v+1]=e,Se[v+2]=i;var f=_}while(0);var f;return f}function L(r){var a=sr(r);if((0|a)<1)var e=0;else{var i=Rr(r,a);Se[r+44>>2]=i;var e=i}var e;return e}function F(r){var a,a=(r+12|0)>>2,e=Se[a],i=e+1|0;if(Se[a]=i,Ae[e]<<24>>24==70){if(Ae[i]<<24>>24==89){var v=e+2|0;Se[a]=v}var t=Sr(r,1),f=Se[a],_=f+1|0;Se[a]=_;var s=Ae[f]<<24>>24==69?t:0,n=s}else var n=0;var n;return n}function X(r){var a=Ar(r);return a}function j(r){var a,a=(r+12|0)>>2,e=Se[a],i=e+1|0;Se[a]=i;var v=Ae[e]<<24>>24==65;do if(v){var t=Ae[i];if(t<<24>>24==95)var f=0;else if((t-48&255&255)<10){for(var _=i;;){var _,s=_+1|0;if(Se[a]=s,(Ae[s]-48&255&255)>=10)break;var _=s}var n=s-i|0,o=lr(r,i,n);if(0==(0|o)){var l=0;break}var f=o}else{var b=nr(r);if(0==(0|b)){var l=0;break}var f=b}var f,k=Se[a],u=k+1|0;if(Se[a]=u,Ae[k]<<24>>24!=95){var l=0;break}var c=N(r),h=D(r,36,f,c),l=h}else var l=0;while(0);var l;return l}function U(r){var a=Oe;Oe+=4;var e=a,i=r+12|0,v=Se[i>>2],t=v+1|0;Se[i>>2]=t;var f=Ae[v]<<24>>24==77;r:do if(f){var _=N(r),s=I(r,e,1);if(0==(0|s)){var n=0;break}var o=N(r);Se[s>>2]=o;var l=(0|s)==(0|e);do if(!l){if(35==(0|Se[o>>2]))break;var b=Se[e>>2],k=R(r,b);if(0==(0|k)){var n=0;break r}}while(0);var u=Se[e>>2],c=D(r,37,_,u),n=c}else var n=0;while(0);var n;return Oe=a,n}function x(r){var a,a=(r+12|0)>>2,e=Se[a],i=e+1|0;Se[a]=i;var v=Ae[e]<<24>>24==84;do if(v){if(Ae[i]<<24>>24==95)var t=0,f=i;else{var _=sr(r);if((0|_)<0){var s=0;break}var t=_+1|0,f=Se[a]}var f,t;if(Se[a]=f+1|0,Ae[f]<<24>>24!=95){var s=0;break}var n=r+40|0,o=Se[n>>2]+1|0;Se[n>>2]=o;var l=Er(r,t),s=l}else var s=0;while(0);var s;return s}function z(r){var a,e=Oe;Oe+=4;var i=e,v=r+44|0,t=Se[v>>2],a=(r+12|0)>>2,f=Se[a],_=f+1|0;Se[a]=_;var s=Ae[f]<<24>>24==73;r:do if(s){Se[i>>2]=0;for(var n=i;;){var n,o=_r(r);if(0==(0|o)){var l=0;break r}var b=D(r,39,o,0);if(Se[n>>2]=b,0==(0|b)){var l=0;break r}var k=Se[a];if(Ae[k]<<24>>24==69)break;var n=b+8|0}var u=k+1|0;Se[a]=u,Se[v>>2]=t;var l=Se[i>>2]}else var l=0;while(0);var l;return Oe=e,l}function V(r,a){var e,e=(r+12|0)>>2,i=Se[e],v=i+1|0;Se[e]=v;var t=Ae[i]<<24>>24==83;r:do if(t){var f=i+2|0;Se[e]=f;var _=ge[v];if(_<<24>>24==95)var s=0;else{if(!((_-48&255&255)<10|(_-65&255&255)<26)){var n=8&Se[r+8>>2],o=n>>>3,l=0!=(0|n)|0==(0|a);do if(l)var b=o;else{if((Ae[f]-67&255&255)>=2){var b=o;break}var b=1}while(0);for(var b,k=0|ei;;){var k;if(k>>>0>=(ei+196|0)>>>0){var u=0;break r}if(_<<24>>24==Ae[0|k]<<24>>24)break;var k=k+28|0}var c=Se[k+20>>2];if(0!=(0|c)){var h=Se[k+24>>2],d=fr(r,c,h);Se[r+44>>2]=d}if(0==(0|b))var w=k+8|0,p=k+4|0;else var w=k+16|0,p=k+12|0;var p,w,E=Se[w>>2],A=Se[p>>2],g=r+48|0,y=Se[g>>2]+E|0;Se[g>>2]=y;var m=fr(r,A,E),u=m;break}for(var S=_,M=0,C=f;;){var C,M,S;if((S-48&255&255)<10)var R=36*M-48|0;else{if((S-65&255&255)>=26){var u=0;break r}var R=36*M-55|0}var R,T=(S<<24>>24)+R|0;if((0|T)<0){var u=0;break r}var O=C+1|0;Se[e]=O;var N=ge[C];if(N<<24>>24==95)break;var S=N,M=T,C=O}var s=T+1|0}var s;if((0|s)>=(0|Se[r+32>>2])){var u=0;break}var I=r+40|0,P=Se[I>>2]+1|0;Se[I>>2]=P;var u=Se[Se[r+28>>2]+(s<<2)>>2]}else var u=0;while(0);var u;return u}function B(r,a,e,i){var v,t,f,_,s=Oe;Oe+=28;var n,o=s,_=o>>2;Se[_]=r;var l=e+1|0,f=(o+12|0)>>2;Se[f]=l;var b=Jr(l),t=(o+4|0)>>2;if(Se[t]=b,0==(0|b))var k=0,u=1;else{var v=(o+8|0)>>2;Se[v]=0,Se[_+4]=0,Se[_+5]=0;var c=o+24|0;Se[c>>2]=0,H(o,a);var h=Me[t],d=0==(0|h);do{if(!d){var w=Me[v];if(w>>>0>=Me[f]>>>0){n=5;break}Se[v]=w+1|0,Ae[h+w|0]=0,n=6;break}n=5}while(0);5==n&&Y(o,0);var p=Se[t],E=0==(0|p)?Se[c>>2]:Se[f],k=p,u=E}var u,k;return Se[i>>2]=u,Oe=s,k}function H(r,a){var e,i,v,t,f,_,s,n,o,l,b,k,u,c,h,d,w,p,E,A,g,y,m,S,M,C,R,T,O,N,I,P,D,L,F,X,j,U,x,z,V,B,K,G,W,J,vr,tr,fr,_r,sr,nr,or,lr,br,kr,ur,cr,hr,dr,wr,pr=a>>2,Er=r>>2,Ar=Oe;Oe+=184;var gr,yr=Ar,wr=yr>>2,mr=Ar+64,dr=mr>>2,Sr=Ar+72,Mr=Ar+88,Cr=Ar+104,hr=Cr>>2,Rr=Ar+168,Tr=0==(0|a);r:do if(Tr)Z(r);else{var cr=(r+4|0)>>2,Or=Me[cr];if(0==(0|Or))break;var Nr=0|a,Ir=Me[Nr>>2];a:do{if(0==(0|Ir)){if(0!=(4&Se[Er]|0)){var Pr=Se[pr+1],Dr=Se[pr+2];q(r,Pr,Dr);break r}var ur=(r+8|0)>>2,Lr=Me[ur],Fr=a+8|0,Xr=Me[Fr>>2];if((Xr+Lr|0)>>>0>Me[Er+3]>>>0){var jr=Se[pr+1];Q(r,jr,Xr);break r}var Ur=Or+Lr|0,xr=Se[pr+1];Pa(Ur,xr,Xr,1);var zr=Se[ur]+Se[Fr>>2]|0;Se[ur]=zr;break r}if(1==(0|Ir)||2==(0|Ir)){var Vr=Se[pr+1];H(r,Vr);var Br=0==(4&Se[Er]|0),Hr=Me[cr],Kr=0!=(0|Hr);e:do if(Br){do if(Kr){var kr=(r+8|0)>>2,Yr=Me[kr];if((Yr+2|0)>>>0>Me[Er+3]>>>0)break;var Gr=Hr+Yr|0;oe=14906,Ae[Gr]=255&oe,oe>>=8,Ae[Gr+1]=255&oe;var Wr=Se[kr]+2|0;Se[kr]=Wr;break e}while(0);Q(r,0|He.__str120,2)}else{do if(Kr){var Zr=r+8|0,Qr=Me[Zr>>2];if(Qr>>>0>=Me[Er+3]>>>0)break;Se[Zr>>2]=Qr+1|0,Ae[Hr+Qr|0]=46;break e}while(0);Y(r,46)}while(0);var qr=Se[pr+2];H(r,qr);break r}if(3==(0|Ir)){for(var br=(r+20|0)>>2,$r=Me[br],lr=(r+16|0)>>2,Jr=a,ra=0,aa=$r;;){var aa,ra,Jr,ea=Me[Jr+4>>2];if(0==(0|ea)){var ia=ra,va=0;gr=33;break}if(ra>>>0>3){Z(r);break r}var ta=(ra<<4)+yr|0;Se[ta>>2]=aa,Se[br]=ta,Se[((ra<<4)+4>>2)+wr]=ea,Se[((ra<<4)+8>>2)+wr]=0;var fa=Me[lr];Se[((ra<<4)+12>>2)+wr]=fa;var _a=ra+1|0,sa=0|ea,na=Me[sa>>2];if((na-25|0)>>>0>=3){gr=25;break}var Jr=ea,ra=_a,aa=ta}e:do if(25==gr){if(4==(0|na)){Se[dr]=fa,Se[lr]=mr,Se[dr+1]=ea;var oa=Se[sa>>2],la=mr}else var oa=na,la=fa;var la,oa;if(2!=(0|oa)){var ia=_a,va=sa;break}for(var ba=_a,ka=ea+8|0;;){var ka,ba,ua=Me[ka>>2];if((Se[ua>>2]-25|0)>>>0>=3){var ia=ba,va=sa;break e}if(ba>>>0>3)break;var ca=(ba<<4)+yr|0,ha=ba-1|0,da=(ha<<4)+yr|0,or=ca>>2,nr=da>>2;Se[or]=Se[nr],Se[or+1]=Se[nr+1],Se[or+2]=Se[nr+2],Se[or+3]=Se[nr+3],Se[ca>>2]=da,Se[br]=ca,Se[((ha<<4)+4>>2)+wr]=ua,Se[((ha<<4)+8>>2)+wr]=0,Se[((ha<<4)+12>>2)+wr]=la;var ba=ba+1|0,ka=ua+4|0}Z(r);break r}while(0);var va,ia,wa=Se[pr+2];if(H(r,wa),4==(0|Se[va>>2])){var pa=Se[dr];Se[lr]=pa}var Ea=0==(0|ia);e:do if(!Ea)for(var Aa=r+8|0,ga=r+12|0,ya=ia;;){var ya,ma=ya-1|0;if(0==(0|Se[((ma<<4)+8>>2)+wr])){var Sa=Me[cr],Ma=0==(0|Sa);do{if(!Ma){var Ca=Me[Aa>>2];if(Ca>>>0>=Me[ga>>2]>>>0){gr=41;break}Se[Aa>>2]=Ca+1|0,Ae[Sa+Ca|0]=32,gr=42;break}gr=41}while(0);41==gr&&Y(r,32);var Ra=Se[((ma<<4)+4>>2)+wr];$(r,Ra)}if(0==(0|ma))break e;var ya=ma}while(0);Se[br]=$r;break r}if(4==(0|Ir)){var sr=(r+20|0)>>2,Ta=Se[sr];Se[sr]=0;var Oa=Se[pr+1];H(r,Oa);var Na=Me[cr],Ia=0==(0|Na);do{if(!Ia){var _r=(r+8|0)>>2,Da=Me[_r],La=0==(0|Da);do if(!La){if(Ae[Na+(Da-1)|0]<<24>>24!=60)break;Da>>>0>>0?(Se[_r]=Da+1|0,Ae[Na+Da|0]=32):Y(r,32)}while(0);var Fa=Me[cr];if(0==(0|Fa)){gr=54;break}var Xa=Me[_r];if(Xa>>>0>=Me[Er+3]>>>0){gr=54;break}Se[_r]=Xa+1|0,Ae[Fa+Xa|0]=60,gr=55;break}gr=54}while(0);54==gr&&Y(r,60);var ja=Se[pr+2];H(r,ja);var Ua=Me[cr],xa=0==(0|Ua);do{if(!xa){var fr=(r+8|0)>>2,za=Me[fr],Va=0==(0|za);do if(!Va){if(Ae[Ua+(za-1)|0]<<24>>24!=62)break;za>>>0>>0?(Se[fr]=za+1|0,Ae[Ua+za|0]=32):Y(r,32)}while(0);var Ba=Me[cr];if(0==(0|Ba)){gr=64;break}var Ha=Me[fr];if(Ha>>>0>=Me[Er+3]>>>0){gr=64;break}Se[fr]=Ha+1|0,Ae[Ba+Ha|0]=62,gr=65;break}gr=64}while(0);64==gr&&Y(r,62),Se[sr]=Ta;break r}if(5==(0|Ir)){var tr=(r+16|0)>>2,Ka=Me[tr];if(0==(0|Ka)){Z(r);break r}for(var Ya=Se[pr+1],Ga=Se[Ka+4>>2];;){var Ga,Ya,Wa=Se[Ga+8>>2];if(0==(0|Wa))break;if(39!=(0|Se[Wa>>2])){Z(r);break r}if((0|Ya)<1){if(0!=(0|Ya))break;var Za=Se[Ka>>2];Se[tr]=Za;var Qa=Se[Wa+4>>2];H(r,Qa),Se[tr]=Ka;break r}var Ya=Ya-1|0,Ga=Wa}Z(r);break r}if(6==(0|Ir)){var qa=Se[pr+2];H(r,qa);break r}if(7==(0|Ir)){var $a=r+8|0,Ja=Me[$a>>2];Ja>>>0>>0?(Se[$a>>2]=Ja+1|0,Ae[Or+Ja|0]=126):Y(r,126);var re=Se[pr+2];H(r,re);break r}if(8==(0|Ir)){var vr=(r+8|0)>>2,ae=Me[vr];if((ae+11|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str121,11);else{for(var ee=Or+ae|0,ie=0|He.__str121,ve=ee,te=ie+11;ie>2,se=Me[J];if((se+8|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str122,8);else{var ne=Or+se|0,le=0|ne;oe=542397526,Ae[le]=255&oe,oe>>=8,Ae[le+1]=255&oe,oe>>=8,Ae[le+2]=255&oe,oe>>=8,Ae[le+3]=255&oe;var be=ne+4|0;oe=544370534,Ae[be]=255&oe,oe>>=8,Ae[be+1]=255&oe,oe>>=8,Ae[be+2]=255&oe,oe>>=8,Ae[be+3]=255&oe;var ke=Se[J]+8|0;Se[J]=ke}var ue=Se[pr+1];H(r,ue);break r}if(10==(0|Ir)){var W=(r+8|0)>>2,ce=Me[W],he=r+12|0;if((ce+24|0)>>>0>Me[he>>2]>>>0)Q(r,0|He.__str123,24);else{var de=Or+ce|0;Pa(de,0|He.__str123,24,1);var we=Se[W]+24|0;Se[W]=we}var pe=Se[pr+1];H(r,pe);var Ee=Me[cr],ge=0==(0|Ee);do{if(!ge){var ye=Me[W];if((ye+4|0)>>>0>Me[he>>2]>>>0){gr=96;break}var me=Ee+ye|0;oe=762210605,Ae[me]=255&oe,oe>>=8,Ae[me+1]=255&oe,oe>>=8,Ae[me+2]=255&oe,oe>>=8,Ae[me+3]=255&oe;var Ce=Se[W]+4|0;Se[W]=Ce,gr=97;break}gr=96}while(0);96==gr&&Q(r,0|He.__str124,4);var Re=Se[pr+2];H(r,Re);break r}if(11==(0|Ir)){var G=(r+8|0)>>2,Te=Me[G];if((Te+13|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str125,13);else{for(var Ne=Or+Te|0,ie=0|He.__str125,ve=Ne,te=ie+13;ie>2,De=Me[K];if((De+18|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str126,18);else{for(var Le=Or+De|0,ie=0|He.__str126,ve=Le,te=ie+18;ie>2,je=Me[B];if((je+16|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str127,16);else{for(var Ue=Or+je|0,ie=0|He.__str127,ve=Ue,te=ie+16;ie>2,Ve=Me[V];if((Ve+21|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str128,21);else{var Be=Or+Ve|0;Pa(Be,0|He.__str128,21,1);var Ke=Se[V]+21|0;Se[V]=Ke}var Ye=Se[pr+1];H(r,Ye);break r}if(15==(0|Ir)){var z=(r+8|0)>>2,Ge=Me[z];if((Ge+17|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str129,17);else{for(var We=Or+Ge|0,ie=0|He.__str129,ve=We,te=ie+17;ie>2,qe=Me[x];if((qe+26|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str130,26);else{var $e=Or+qe|0;Pa($e,0|He.__str130,26,1);var Je=Se[x]+26|0;Se[x]=Je}var ri=Se[pr+1];H(r,ri);break r}if(17==(0|Ir)){var U=(r+8|0)>>2,ai=Me[U];if((ai+15|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str131,15);else{for(var ei=Or+ai|0,ie=0|He.__str131,ve=ei,te=ie+15;ie>2,ti=Me[j];if((ti+19|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str132,19);else{for(var fi=Or+ti|0,ie=0|He.__str132,ve=fi,te=ie+19;ie>2,ni=Me[X];if((ni+24|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str133,24);else{var oi=Or+ni|0;Pa(oi,0|He.__str133,24,1);var li=Se[X]+24|0;Se[X]=li}var bi=Se[pr+1];H(r,bi);break r}if(20==(0|Ir)){var F=(r+8|0)>>2,ki=Me[F];if((ki+17|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str134,17);else{for(var ui=Or+ki|0,ie=0|He.__str134,ve=ui,te=ie+17;ie>2,di=Me[L],wi=a+8|0,pi=Me[wi>>2];if((pi+di|0)>>>0>Me[Er+3]>>>0){var Ei=Se[pr+1];Q(r,Ei,pi);break r}var Ai=Or+di|0,gi=Se[pr+1];Pa(Ai,gi,pi,1);var yi=Se[L]+Se[wi>>2]|0;Se[L]=yi;break r}if(22==(0|Ir)||23==(0|Ir)||24==(0|Ir)){for(var mi=r+20|0;;){var mi,Si=Me[mi>>2];if(0==(0|Si))break a;if(0==(0|Se[Si+8>>2])){var Mi=Me[Se[Si+4>>2]>>2];if((Mi-22|0)>>>0>=3)break a;if((0|Mi)==(0|Ir))break}var mi=0|Si}var Ci=Se[pr+1];H(r,Ci);break r}if(25!=(0|Ir)&&26!=(0|Ir)&&27!=(0|Ir)&&28!=(0|Ir)&&29!=(0|Ir)&&30!=(0|Ir)&&31!=(0|Ir)&&32!=(0|Ir)){if(33==(0|Ir)){var D=(r+8|0)>>2,Ri=Me[D],P=(a+4|0)>>2,I=Me[P]>>2;if(0==(4&Se[Er]|0)){var Ti=Me[I+1];if((Ti+Ri|0)>>>0>Me[Er+3]>>>0){var Oi=Se[I];Q(r,Oi,Ti);break r}var Ni=Or+Ri|0,Ii=Se[I];Pa(Ni,Ii,Ti,1);var Pi=Se[D]+Se[Se[P]+4>>2]|0;Se[D]=Pi;break r}var Di=Me[I+3];if((Di+Ri|0)>>>0>Me[Er+3]>>>0){var Li=Se[I+2];Q(r,Li,Di);break r}var Fi=Or+Ri|0,Xi=Se[I+2];Pa(Fi,Xi,Di,1);var ji=Se[D]+Se[Se[P]+12>>2]|0;Se[D]=ji;break r}if(34==(0|Ir)){var Ui=Se[pr+1];H(r,Ui);break r}if(35==(0|Ir)){var N=(0|r)>>2;if(0!=(32&Se[N]|0)){var xi=Se[Er+5];rr(r,a,xi)}var zi=a+4|0,Vi=0==(0|Se[zi>>2]);e:do if(!Vi){var O=(r+20|0)>>2,Bi=Se[O],Hi=0|Mr;Se[Hi>>2]=Bi,Se[O]=Mr,Se[Mr+4>>2]=a;var Ki=Mr+8|0;Se[Ki>>2]=0;var Yi=Se[Er+4];Se[Mr+12>>2]=Yi;var Gi=Se[zi>>2];H(r,Gi);var Wi=Se[Hi>>2];if(Se[O]=Wi,0!=(0|Se[Ki>>2]))break r;if(0!=(32&Se[N]|0))break;var Zi=Me[cr],Qi=0==(0|Zi);do if(!Qi){var qi=r+8|0,$i=Me[qi>>2];if($i>>>0>=Me[Er+3]>>>0)break;Se[qi>>2]=$i+1|0,Ae[Zi+$i|0]=32;break e}while(0);Y(r,32)}while(0);if(0!=(32&Se[N]|0))break r;var Ji=Se[Er+5];rr(r,a,Ji);break r}if(36==(0|Ir)){var T=(r+20|0)>>2,rv=Me[T],av=0|Cr;Se[hr]=rv,Se[T]=av,Se[hr+1]=a;var ev=Cr+8|0;Se[ev>>2]=0;var iv=Se[Er+4];Se[hr+3]=iv;for(var vv=rv,tv=1;;){var tv,vv;if(0==(0|vv))break;if((Se[Se[vv+4>>2]>>2]-22|0)>>>0>=3)break;var fv=vv+8|0;if(0==(0|Se[fv>>2])){if(tv>>>0>3){Z(r);break r}var _v=(tv<<4)+Cr|0,R=_v>>2,C=vv>>2;Se[R]=Se[C],Se[R+1]=Se[C+1],Se[R+2]=Se[C+2],Se[R+3]=Se[C+3];var sv=Se[T];Se[_v>>2]=sv,Se[T]=_v,Se[fv>>2]=1;var nv=tv+1|0}else var nv=tv;var nv,vv=Se[vv>>2],tv=nv}var ov=Se[pr+2];if(H(r,ov),Se[T]=rv,0!=(0|Se[ev>>2]))break r;if(tv>>>0>1){for(var lv=tv;;){var lv,bv=lv-1|0,kv=Se[((bv<<4)+4>>2)+hr];if($(r,kv),bv>>>0<=1)break;var lv=bv}var uv=Se[T]}else var uv=rv;var uv;ar(r,a,uv);break r}if(37==(0|Ir)){var M=(r+20|0)>>2,cv=Se[M],hv=0|Rr;Se[hv>>2]=cv,Se[M]=Rr,Se[Rr+4>>2]=a;var dv=Rr+8|0;Se[dv>>2]=0;var wv=Se[Er+4];Se[Rr+12>>2]=wv;var pv=a+4|0,Ev=Se[pr+2];H(r,Ev);var Av=0==(0|Se[dv>>2]);e:do if(Av){var gv=Me[cr],yv=0==(0|gv);do{if(!yv){var mv=r+8|0,Sv=Me[mv>>2];if(Sv>>>0>=Me[Er+3]>>>0){gr=187;break}Se[mv>>2]=Sv+1|0,Ae[gv+Sv|0]=32,gr=188;break}gr=187}while(0);187==gr&&Y(r,32);var Mv=Se[pv>>2];H(r,Mv);var Cv=Me[cr],Rv=0==(0|Cv);do if(!Rv){var S=(r+8|0)>>2,Tv=Me[S];if((Tv+3|0)>>>0>Me[Er+3]>>>0)break;var Ov=Cv+Tv|0;Ae[Ov]=Ae[0|He.__str135],Ae[Ov+1]=Ae[(0|He.__str135)+1],Ae[Ov+2]=Ae[(0|He.__str135)+2];var Nv=Se[S]+3|0;Se[S]=Nv;break e}while(0);Q(r,0|He.__str135,3)}while(0);var Iv=Se[hv>>2];Se[M]=Iv;break r}if(38==(0|Ir)||39==(0|Ir)){var Pv=Se[pr+1];H(r,Pv);var Dv=a+8|0;if(0==(0|Se[Dv>>2]))break r;var Lv=Me[cr],Fv=0==(0|Lv);do{if(!Fv){var m=(r+8|0)>>2,Xv=Me[m];if((Xv+2|0)>>>0>Me[Er+3]>>>0){gr=197;break}var jv=Lv+Xv|0;oe=8236,Ae[jv]=255&oe,oe>>=8,Ae[jv+1]=255&oe;var Uv=Se[m]+2|0;Se[m]=Uv,gr=198;break}gr=197}while(0);197==gr&&Q(r,0|He.__str136,2);var xv=Se[Dv>>2];H(r,xv);break r}if(40==(0|Ir)){var y=(r+8|0)>>2,zv=Me[y],g=(r+12|0)>>2;if((zv+8|0)>>>0>Me[g]>>>0)Q(r,0|He.__str137,8);else{var Vv=Or+zv|0,le=0|Vv;oe=1919250543,Ae[le]=255&oe,oe>>=8,Ae[le+1]=255&oe,oe>>=8,Ae[le+2]=255&oe,oe>>=8,Ae[le+3]=255&oe;var be=Vv+4|0;oe=1919906913,Ae[be]=255&oe,oe>>=8,Ae[be+1]=255&oe,oe>>=8,Ae[be+2]=255&oe,oe>>=8,Ae[be+3]=255&oe;var Bv=Se[y]+8|0;Se[y]=Bv}var A=(a+4|0)>>2,Hv=(Ae[Se[Se[A]+4>>2]]-97&255&255)<26;e:do if(Hv){var Kv=Me[cr],Yv=0==(0|Kv);do if(!Yv){var Gv=Me[y];if(Gv>>>0>=Me[g]>>>0)break;Se[y]=Gv+1|0,Ae[Kv+Gv|0]=32;break e}while(0);Y(r,32)}while(0);var Wv=Me[cr],Zv=0==(0|Wv);do{if(!Zv){var Qv=Me[y],qv=Me[A],$v=Me[qv+8>>2];if(($v+Qv|0)>>>0>Me[g]>>>0){var Jv=qv,rt=$v;break}var at=Wv+Qv|0,et=Se[qv+4>>2];Pa(at,et,$v,1);var it=Se[y]+Se[Se[A]+8>>2]|0;Se[y]=it;break r}var vt=Me[A],Jv=vt,rt=Se[vt+8>>2]}while(0);var rt,Jv,tt=Se[Jv+4>>2];Q(r,tt,rt);break r}if(41==(0|Ir)){var E=(r+8|0)>>2,ft=Me[E];if((ft+9|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str10180,9);else{for(var _t=Or+ft|0,ie=0|He.__str10180,ve=_t,te=ie+9;ie>2,ot=Me[p];if((ot+9|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str10180,9);else{for(var lt=Or+ot|0,ie=0|He.__str10180,ve=lt,te=ie+9;ie>2],ct=42==(0|Se[ut>>2]);e:do if(ct){var w=(r+8|0)>>2,ht=Me[w],dt=r+12|0;ht>>>0>2]>>>0?(Se[w]=ht+1|0,Ae[Or+ht|0]=40):Y(r,40);var wt=Se[kt>>2];er(r,wt);var pt=Me[cr],Et=0==(0|pt);do if(!Et){var At=Me[w];if(At>>>0>=Me[dt>>2]>>>0)break;Se[w]=At+1|0,Ae[pt+At|0]=41;break e}while(0);Y(r,41)}else ir(r,ut);while(0);var gt=Me[cr],yt=0==(0|gt);do{if(!yt){var mt=r+8|0,St=Me[mt>>2];if(St>>>0>=Me[Er+3]>>>0){gr=232;break}Se[mt>>2]=St+1|0,Ae[gt+St|0]=40,gr=233;break}gr=232}while(0);232==gr&&Y(r,40);var Mt=Se[pr+2];H(r,Mt);var Ct=Me[cr],Rt=0==(0|Ct);do if(!Rt){var Tt=r+8|0,Ot=Me[Tt>>2];if(Ot>>>0>=Me[Er+3]>>>0)break;Se[Tt>>2]=Ot+1|0,Ae[Ct+Ot|0]=41;break r}while(0);Y(r,41);break r}if(44==(0|Ir)){var d=(a+8|0)>>2;if(45==(0|Se[Se[d]>>2])){var h=(a+4|0)>>2,Nt=Se[h],It=40==(0|Se[Nt>>2]);do if(It){var Pt=Se[Nt+4>>2];if(1!=(0|Se[Pt+8>>2]))break;if(Ae[Se[Pt+4>>2]]<<24>>24!=62)break;var Dt=r+8|0,Lt=Me[Dt>>2];Lt>>>0>>0?(Se[Dt>>2]=Lt+1|0,Ae[Or+Lt|0]=40):Y(r,40)}while(0);var Ft=Me[cr],Xt=0==(0|Ft);do{if(!Xt){var jt=r+8|0,Ut=Me[jt>>2];if(Ut>>>0>=Me[Er+3]>>>0){gr=248;break}Se[jt>>2]=Ut+1|0,Ae[Ft+Ut|0]=40,gr=249;break}gr=248}while(0);248==gr&&Y(r,40);var xt=Se[Se[d]+4>>2];H(r,xt);var zt=Me[cr],Vt=0==(0|zt);do{if(!Vt){var c=(r+8|0)>>2,Bt=Me[c];if((Bt+2|0)>>>0>Me[Er+3]>>>0){gr=252;break}var Ht=zt+Bt|0;oe=8233,Ae[Ht]=255&oe,oe>>=8,Ae[Ht+1]=255&oe;var Kt=Se[c]+2|0;Se[c]=Kt,gr=253;break}gr=252}while(0);252==gr&&Q(r,0|He.__str139,2);var Yt=Se[h];ir(r,Yt);var Gt=Me[cr],Wt=0==(0|Gt);do{if(!Wt){var u=(r+8|0)>>2,Zt=Me[u];if((Zt+2|0)>>>0>Me[Er+3]>>>0){gr=256;break}var Qt=Gt+Zt|0;oe=10272,Ae[Qt]=255&oe,oe>>=8,Ae[Qt+1]=255&oe;var qt=Se[u]+2|0;Se[u]=qt,gr=257;break}gr=256}while(0);256==gr&&Q(r,0|He.__str140,2);var $t=Se[Se[d]+8>>2];H(r,$t);var Jt=Me[cr],rf=0==(0|Jt);do{if(!rf){var af=r+8|0,ef=Me[af>>2];if(ef>>>0>=Me[Er+3]>>>0){gr=260;break}Se[af>>2]=ef+1|0,Ae[Jt+ef|0]=41,gr=261;break}gr=260}while(0);260==gr&&Y(r,41);var vf=Se[h];if(40!=(0|Se[vf>>2]))break r;var tf=Se[vf+4>>2];if(1!=(0|Se[tf+8>>2]))break r;if(Ae[Se[tf+4>>2]]<<24>>24!=62)break r;var ff=Me[cr],_f=0==(0|ff);do if(!_f){var sf=r+8|0,nf=Me[sf>>2];if(nf>>>0>=Me[Er+3]>>>0)break;Se[sf>>2]=nf+1|0,Ae[ff+nf|0]=41;break r}while(0);Y(r,41);break r}Z(r);break r}if(45==(0|Ir)){Z(r);break r}if(46==(0|Ir)){var of=a+4|0,k=(a+8|0)>>2,lf=Se[k],bf=47==(0|Se[lf>>2]);do if(bf){if(48!=(0|Se[Se[lf+8>>2]>>2]))break;var b=(r+8|0)>>2,kf=Me[b],l=(r+12|0)>>2;kf>>>0>>0?(Se[b]=kf+1|0,Ae[Or+kf|0]=40):Y(r,40);var uf=Se[Se[k]+4>>2];H(r,uf);var cf=Me[cr],hf=0==(0|cf);do{if(!hf){var df=Me[b];if((df+2|0)>>>0>Me[l]>>>0){gr=278;break}var wf=cf+df|0;oe=8233,Ae[wf]=255&oe,oe>>=8,Ae[wf+1]=255&oe;var pf=Se[b]+2|0;Se[b]=pf,gr=279;break}gr=278}while(0);278==gr&&Q(r,0|He.__str139,2);var Ef=Se[of>>2];ir(r,Ef);var Af=Me[cr],gf=0==(0|Af);do{if(!gf){var yf=Me[b];if((yf+2|0)>>>0>Me[l]>>>0){gr=282;break}var mf=Af+yf|0;oe=10272,Ae[mf]=255&oe,oe>>=8,Ae[mf+1]=255&oe;var Sf=Se[b]+2|0;Se[b]=Sf,gr=283;break}gr=282}while(0);282==gr&&Q(r,0|He.__str140,2);var Mf=Se[Se[Se[k]+8>>2]+4>>2];H(r,Mf);var Cf=Me[cr],Rf=0==(0|Cf);do{if(!Rf){var Tf=Me[b];if((Tf+5|0)>>>0>Me[l]>>>0){gr=286;break}var Of=Cf+Tf|0;Ae[Of]=Ae[0|He.__str141],Ae[Of+1]=Ae[(0|He.__str141)+1],Ae[Of+2]=Ae[(0|He.__str141)+2],Ae[Of+3]=Ae[(0|He.__str141)+3],Ae[Of+4]=Ae[(0|He.__str141)+4];var Nf=Se[b]+5|0;Se[b]=Nf,gr=287;break}gr=286}while(0);286==gr&&Q(r,0|He.__str141,5);var If=Se[Se[Se[k]+8>>2]+8>>2];H(r,If);var Pf=Me[cr],Df=0==(0|Pf);do if(!Df){var Lf=Me[b];if(Lf>>>0>=Me[l]>>>0)break;Se[b]=Lf+1|0,Ae[Pf+Lf|0]=41;break r}while(0);Y(r,41);break r}while(0);Z(r);break r}if(47==(0|Ir)||48==(0|Ir)){Z(r);break r}if(49==(0|Ir)||50==(0|Ir)){var Ff=a+4|0,Xf=Se[Ff>>2],jf=33==(0|Se[Xf>>2]);do{if(jf){var Uf=Me[Se[Xf+4>>2]+16>>2];if(1==(0|Uf)||2==(0|Uf)||3==(0|Uf)||4==(0|Uf)||5==(0|Uf)||6==(0|Uf)){var xf=a+8|0;if(0!=(0|Se[Se[xf>>2]>>2])){var zf=Uf;break}if(50==(0|Ir)){var Vf=r+8|0,Bf=Me[Vf>>2];Bf>>>0>>0?(Se[Vf>>2]=Bf+1|0,Ae[Or+Bf|0]=45):Y(r,45)}var Hf=Se[xf>>2];if(H(r,Hf),2==(0|Uf)){var Kf=Me[cr],Yf=0==(0|Kf);do if(!Yf){var Gf=r+8|0,Wf=Me[Gf>>2];if(Wf>>>0>=Me[Er+3]>>>0)break;Se[Gf>>2]=Wf+1|0,Ae[Kf+Wf|0]=117;break r}while(0);Y(r,117);break r}if(3==(0|Uf)){var Zf=Me[cr],Qf=0==(0|Zf);do if(!Qf){var qf=r+8|0,$f=Me[qf>>2];if($f>>>0>=Me[Er+3]>>>0)break;Se[qf>>2]=$f+1|0,Ae[Zf+$f|0]=108;break r}while(0);Y(r,108);break r}if(4==(0|Uf)){var Jf=Me[cr],r_=0==(0|Jf);do if(!r_){var o=(r+8|0)>>2,a_=Me[o];if((a_+2|0)>>>0>Me[Er+3]>>>0)break;var e_=Jf+a_|0;oe=27765,Ae[e_]=255&oe,oe>>=8,Ae[e_+1]=255&oe;var i_=Se[o]+2|0;Se[o]=i_;break r}while(0);Q(r,0|He.__str142,2);break r}if(5==(0|Uf)){var v_=Me[cr],t_=0==(0|v_);do if(!t_){var n=(r+8|0)>>2,f_=Me[n];if((f_+2|0)>>>0>Me[Er+3]>>>0)break;var __=v_+f_|0;oe=27756,Ae[__]=255&oe,oe>>=8,Ae[__+1]=255&oe;var s_=Se[n]+2|0;Se[n]=s_;break r}while(0);Q(r,0|He.__str143,2);break r}if(6==(0|Uf)){var n_=Me[cr],o_=0==(0|n_);do if(!o_){var s=(r+8|0)>>2,l_=Me[s];if((l_+3|0)>>>0>Me[Er+3]>>>0)break;var b_=n_+l_|0;Ae[b_]=Ae[0|He.__str144],Ae[b_+1]=Ae[(0|He.__str144)+1],Ae[b_+2]=Ae[(0|He.__str144)+2];var k_=Se[s]+3|0;Se[s]=k_;break r}while(0);Q(r,0|He.__str144,3);break r}break r}if(7==(0|Uf)){var _=Se[pr+2]>>2;if(0!=(0|Se[_])){var zf=7;break}if(!(1==(0|Se[_+2])&49==(0|Ir))){var zf=Uf;break}var u_=Ae[Se[_+1]]<<24>>24;if(48==(0|u_)){var f=(r+8|0)>>2,c_=Me[f];if((c_+5|0)>>>0>Me[Er+3]>>>0){Q(r,0|He.__str145,5);break r}var h_=Or+c_|0;Ae[h_]=Ae[0|He.__str145],Ae[h_+1]=Ae[(0|He.__str145)+1],Ae[h_+2]=Ae[(0|He.__str145)+2],Ae[h_+3]=Ae[(0|He.__str145)+3],Ae[h_+4]=Ae[(0|He.__str145)+4];var d_=Se[f]+5|0;Se[f]=d_;break r}if(49==(0|u_)){var t=(r+8|0)>>2,w_=Me[t];if((w_+4|0)>>>0>Me[Er+3]>>>0){Q(r,0|He.__str146,4);break r}var p_=Or+w_|0;oe=1702195828,Ae[p_]=255&oe,oe>>=8,Ae[p_+1]=255&oe,oe>>=8,Ae[p_+2]=255&oe,oe>>=8,Ae[p_+3]=255&oe;var E_=Se[t]+4|0;Se[t]=E_;break r}var zf=Uf;break}var zf=Uf;break}var zf=0}while(0);var zf,v=(r+8|0)>>2,A_=Me[v],i=(r+12|0)>>2;A_>>>0>>0?(Se[v]=A_+1|0,Ae[Or+A_|0]=40):Y(r,40);var g_=Se[Ff>>2];H(r,g_);var y_=Me[cr],m_=0==(0|y_);do{if(!m_){var S_=Me[v];if(S_>>>0>=Me[i]>>>0){gr=335;break}Se[v]=S_+1|0,Ae[y_+S_|0]=41,gr=336;break}gr=335}while(0);335==gr&&Y(r,41);var M_=50==(0|Se[Nr>>2]);e:do if(M_){var C_=Me[cr],R_=0==(0|C_);do if(!R_){var T_=Me[v];if(T_>>>0>=Me[i]>>>0)break;Se[v]=T_+1|0,Ae[C_+T_|0]=45;break e}while(0);Y(r,45)}while(0);if(8==(0|zf)){var O_=Me[cr],N_=0==(0|O_);do{if(!N_){var I_=Me[v];if(I_>>>0>=Me[i]>>>0){gr=345;break}Se[v]=I_+1|0,Ae[O_+I_|0]=91,gr=346;break}gr=345}while(0);345==gr&&Y(r,91);var P_=Se[pr+2];H(r,P_);var D_=Me[cr],L_=0==(0|D_);do if(!L_){var F_=Me[v];if(F_>>>0>=Me[i]>>>0)break;Se[v]=F_+1|0,Ae[D_+F_|0]=93;break r}while(0);Y(r,93);break r}var X_=Se[pr+2];H(r,X_);break r}Z(r);break r}}while(0);var e=(r+20|0)>>2,j_=Se[e],U_=0|Sr;Se[U_>>2]=j_,Se[e]=Sr,Se[Sr+4>>2]=a;var x_=Sr+8|0;Se[x_>>2]=0;var z_=Se[Er+4];Se[Sr+12>>2]=z_;var V_=Se[pr+1];H(r,V_),0==(0|Se[x_>>2])&&$(r,a);var B_=Se[U_>>2];Se[e]=B_}while(0);Oe=Ar}function K(r,a,e,i){var v=i>>2;Se[v]=r,Se[v+1]=r+e|0,Se[v+2]=a,Se[v+3]=r,Se[v+6]=e<<1,Se[v+5]=0,Se[v+9]=e,Se[v+8]=0,Se[v+10]=0,Se[v+11]=0,Se[v+12]=0}function Y(r,a){var e,i=r+4|0,v=Me[i>>2],t=0==(0|v);do if(!t){var e=(r+8|0)>>2,f=Me[e];if(f>>>0>2]>>>0)var _=v,s=f;else{tr(r,1);var n=Me[i>>2];if(0==(0|n))break;var _=n,s=Se[e]}var s,_;Ae[_+s|0]=255&a;var o=Se[e]+1|0;Se[e]=o}while(0)}function G(r,a,e,i){var v,t=i>>2,f=Oe;Oe+=4;var _=f,v=_>>2,s=0==(0|r);do if(s){if(0==(0|i)){var n=0;break}Se[t]=-3;var n=0}else{var o=0==(0|e);if(0!=(0|a)&o){if(0==(0|i)){var n=0;break}Se[t]=-3;var n=0}else{var l=W(r,_);if(0==(0|l)){if(0==(0|i)){var n=0;break}if(1==(0|Se[v])){Se[t]=-1;var n=0}else{Se[t]=-2;var n=0}}else{var b=0==(0|a);do if(b){if(o){var k=l;break}var u=Se[v];Se[e>>2]=u;var k=l}else{var c=Ca(l);if(c>>>0>2]>>>0){Ra(a,l);va(l);var k=a}else{va(a);var h=Se[v];Se[e>>2]=h;var k=l}}while(0);var k;if(0==(0|i)){var n=k;break}Se[t]=0;var n=k}}}while(0);var n;return Oe=f,n}function W(r,a){var e,i=Oe;Oe+=52;var v,t=i,e=t>>2;Se[a>>2]=0;var f=Ca(r),_=Ae[r]<<24>>24==95;do{if(_){if(Ae[r+1|0]<<24>>24==90){var s=0;v=13;break}v=3;break}v=3}while(0);do if(3==v){var n=Na(r,0|He.__str117,8);if(0!=(0|n)){var s=1;v=13;break}var o=Ae[r+8|0];if(o<<24>>24!=46&&o<<24>>24!=95&&o<<24>>24!=36){var s=1;v=13;break}var l=r+9|0,b=Ae[l];if(b<<24>>24!=68&&b<<24>>24!=73){\nvar s=1;v=13;break}if(Ae[r+10|0]<<24>>24!=95){var s=1;v=13;break}var k=f+29|0,u=Jr(k);if(0==(0|u)){Se[a>>2]=1;var c=0;v=19;break}Ae[l]<<24>>24==73?Pa(u,0|He.__str118,30,1):Pa(u,0|He.__str119,29,1);var h=r+11|0,c=(Ia(u,h),u);v=19;break}while(0);if(13==v){var s;K(r,17,f,t);var d=Se[e+6],w=Ta(),p=Oe;Oe+=12*d,Oe=Oe+3>>2<<2;var E=Oe;if(Oe+=4*Se[e+9],Oe=Oe+3>>2<<2,Se[e+4]=p,Se[e+7]=E,s)var A=N(t),g=A;else var y=T(t,1),g=y;var g,m=Ae[Se[e+3]]<<24>>24==0?g:0,S=Se[e+12]+f+10*Se[e+10]|0;if(0==(0|m))var M=0;else var C=S/8+S|0,R=B(17,m,C,a),M=R;var M;Oa(w);var c=M}var c;return Oe=i,c}function Z(r){var a=r+4|0,e=Se[a>>2];va(e),Se[a>>2]=0}function Q(r,a,e){var i,v=r+4|0,t=Me[v>>2],f=0==(0|t);do if(!f){var i=(r+8|0)>>2,_=Me[i];if((_+e|0)>>>0>Me[r+12>>2]>>>0){tr(r,e);var s=Me[v>>2];if(0==(0|s))break;var n=s,o=Se[i]}else var n=t,o=_;var o,n;Pa(n+o|0,a,e,1);var l=Se[i]+e|0;Se[i]=l}while(0)}function q(r,a,e){var i,v,t=a+e|0,f=(0|e)>0;r:do if(f)for(var _=t,s=r+4|0,i=(r+8|0)>>2,n=r+12|0,o=a;;){var o,l=(_-o|0)>3;a:do{if(l){if(Ae[o]<<24>>24!=95){v=21;break}if(Ae[o+1|0]<<24>>24!=95){v=21;break}if(Ae[o+2|0]<<24>>24!=85){v=21;break}for(var b=o+3|0,k=0;;){var k,b;if(b>>>0>=t>>>0){v=21;break a}var u=ge[b],c=u<<24>>24;if((u-48&255&255)<10)var h=c-48|0;else if((u-65&255&255)<6)var h=c-55|0;else{if((u-97&255&255)>=6)break;var h=c-87|0}var h,b=b+1|0,k=(k<<4)+h|0}if(!(u<<24>>24==95&k>>>0<256)){v=21;break}var d=Me[s>>2],w=0==(0|d);do if(!w){var p=Me[i];if(p>>>0>=Me[n>>2]>>>0)break;Se[i]=p+1|0,Ae[d+p|0]=255&k;var E=b;v=25;break a}while(0);Y(r,k);var E=b;v=25;break}v=21}while(0);a:do if(21==v){var A=Me[s>>2],g=0==(0|A);do if(!g){var y=Me[i];if(y>>>0>=Me[n>>2]>>>0)break;var m=Ae[o];Se[i]=y+1|0,Ae[A+y|0]=m;var E=o;break a}while(0);var S=Ae[o]<<24>>24;Y(r,S);var E=o}while(0);var E,M=E+1|0;if(M>>>0>=t>>>0)break r;var o=M}while(0)}function $(r,a){var e,i,v,t,f,_,s,n=r>>2,o=Se[a>>2];r:do if(22==(0|o)||25==(0|o)){var l=Me[n+1],b=0==(0|l);do if(!b){var _=(r+8|0)>>2,k=Me[_];if((k+9|0)>>>0>Me[n+3]>>>0)break;for(var u=l+k|0,c=0|He.__str147,h=u,d=c+9;c>2,A=Me[f];if((A+9|0)>>>0>Me[n+3]>>>0)break;for(var g=p+A|0,c=0|He.__str148,h=g,d=c+9;c>2,M=Me[t];if((M+6|0)>>>0>Me[n+3]>>>0)break;var C=m+M|0;Ae[C]=Ae[0|He.__str149],Ae[C+1]=Ae[(0|He.__str149)+1],Ae[C+2]=Ae[(0|He.__str149)+2],Ae[C+3]=Ae[(0|He.__str149)+3],Ae[C+4]=Ae[(0|He.__str149)+4],Ae[C+5]=Ae[(0|He.__str149)+5];var R=Se[t]+6|0;Se[t]=R;break r}while(0);Q(r,0|He.__str149,6)}else if(28==(0|o)){var T=Me[n+1],O=0==(0|T);do{if(!O){var N=r+8|0,I=Me[N>>2];if(I>>>0>=Me[n+3]>>>0){s=17;break}Se[N>>2]=I+1|0,Ae[T+I|0]=32,s=18;break}s=17}while(0);17==s&&Y(r,32);var P=Se[a+8>>2];H(r,P)}else if(29==(0|o)){if(0!=(4&Se[n]|0))break;var D=Me[n+1],L=0==(0|D);do if(!L){var F=r+8|0,X=Me[F>>2];if(X>>>0>=Me[n+3]>>>0)break;Se[F>>2]=X+1|0,Ae[D+X|0]=42;break r}while(0);Y(r,42)}else if(30==(0|o)){var j=Me[n+1],U=0==(0|j);do if(!U){var x=r+8|0,z=Me[x>>2];if(z>>>0>=Me[n+3]>>>0)break;Se[x>>2]=z+1|0,Ae[j+z|0]=38;break r}while(0);Y(r,38)}else if(31==(0|o)){var V=Me[n+1],B=0==(0|V);do if(!B){var v=(r+8|0)>>2,K=Me[v];if((K+8|0)>>>0>Me[n+3]>>>0)break;var G=V+K|0,W=0|G;oe=1886220131,Ae[W]=255&oe,oe>>=8,Ae[W+1]=255&oe,oe>>=8,Ae[W+2]=255&oe,oe>>=8,Ae[W+3]=255&oe;var Z=G+4|0;oe=544761196,Ae[Z]=255&oe,oe>>=8,Ae[Z+1]=255&oe,oe>>=8,Ae[Z+2]=255&oe,oe>>=8,Ae[Z+3]=255&oe;var q=Se[v]+8|0;Se[v]=q;break r}while(0);Q(r,0|He.__str150,8)}else if(32==(0|o)){var $=Me[n+1],J=0==(0|$);do if(!J){var i=(r+8|0)>>2,rr=Me[i];if((rr+10|0)>>>0>Me[n+3]>>>0)break;for(var ar=$+rr|0,c=0|He.__str151,h=ar,d=c+10;c>2],tr=0==(0|vr);do{if(!tr){var fr=r+8|0,_r=Me[fr>>2];if(0!=(0|_r)&&Ae[vr+(_r-1)|0]<<24>>24==40){s=42;break}if(_r>>>0>=Me[n+3]>>>0){s=41;break}Se[fr>>2]=_r+1|0,Ae[vr+_r|0]=32,s=42;break}s=41}while(0);41==s&&Y(r,32);var sr=Se[a+4>>2];H(r,sr);var nr=Me[ir>>2],or=0==(0|nr);do if(!or){var e=(r+8|0)>>2,lr=Me[e];if((lr+3|0)>>>0>Me[n+3]>>>0)break;var br=nr+lr|0;Ae[br]=Ae[0|He.__str135],Ae[br+1]=Ae[(0|He.__str135)+1],Ae[br+2]=Ae[(0|He.__str135)+2];var kr=Se[e]+3|0;Se[e]=kr;break r}while(0);Q(r,0|He.__str135,3)}else if(3==(0|o)){var ur=Se[a+4>>2];H(r,ur)}else H(r,a);while(0)}function J(r){var a=r+20|0,e=Se[a>>2];if((0|e)<(0|Se[r+24>>2])){var i=Se[r+16>>2]+12*e|0,v=e+1|0;Se[a>>2]=v;var t=i}else var t=0;var t;return t}function rr(r,a,e){var i,v,t,f,_=r>>2,s=e,t=s>>2,n=0;r:for(;;){var n,s,o=0==(0|s);do if(!o){if(0!=(0|Se[t+2]))break;var l=Se[Se[t+1]>>2];if(29==(0|l)||30==(0|l)){f=9;break r}if(22==(0|l)||23==(0|l)||24==(0|l)||28==(0|l)||31==(0|l)||32==(0|l)||37==(0|l)){var b=Se[_+1];f=12;break r}var s=Se[t],t=s>>2,n=1;continue r}while(0);if(0!=(0|Se[a+4>>2])&0==(0|n)){f=9;break}var k=0,u=r+4|0,v=u>>2;f=22;break}do if(9==f){var c=Se[_+1];if(0==(0|c)){f=17;break}var h=Se[_+2];if(0==(0|h)){var d=c;f=13;break}var w=Ae[c+(h-1)|0];if(w<<24>>24==40||w<<24>>24==42){f=18;break}var b=c;f=12;break}while(0);do if(12==f){var b;if(0==(0|b)){f=17;break}var d=b;f=13;break}while(0);do if(13==f){var d,p=r+8|0,E=Me[p>>2];if(0!=(0|E)&&Ae[d+(E-1)|0]<<24>>24==32){f=18;break}if(E>>>0>=Me[_+3]>>>0){f=17;break}Se[p>>2]=E+1|0,Ae[d+E|0]=32,f=18;break}while(0);do if(17==f){Y(r,32),f=18;break}while(0);r:do if(18==f){var A=r+4|0,g=Me[A>>2],y=0==(0|g);do if(!y){var m=r+8|0,S=Me[m>>2];if(S>>>0>=Me[_+3]>>>0)break;Se[m>>2]=S+1|0,Ae[g+S|0]=40;var k=1,u=A,v=u>>2;break r}while(0);Y(r,40);var k=1,u=A,v=u>>2}while(0);var u,k,i=(r+20|0)>>2,M=Se[i];Se[i]=0,vr(r,e,0);r:do if(k){var C=Me[v],R=0==(0|C);do if(!R){var T=r+8|0,O=Me[T>>2];if(O>>>0>=Me[_+3]>>>0)break;Se[T>>2]=O+1|0,Ae[C+O|0]=41;break r}while(0);Y(r,41)}while(0);var N=Me[v],I=0==(0|N);do{if(!I){var P=r+8|0,D=Me[P>>2];if(D>>>0>=Me[_+3]>>>0){f=30;break}Se[P>>2]=D+1|0,Ae[N+D|0]=40,f=31;break}f=30}while(0);30==f&&Y(r,40);var L=Se[a+8>>2];0!=(0|L)&&H(r,L);var F=Me[v],X=0==(0|F);do{if(!X){var j=r+8|0,U=Me[j>>2];if(U>>>0>=Me[_+3]>>>0){f=36;break}Se[j>>2]=U+1|0,Ae[F+U|0]=41,f=37;break}f=36}while(0);36==f&&Y(r,41),vr(r,e,1),Se[i]=M}function ar(r,a,e){var i,v,t,f=r>>2,_=0==(0|e);do{if(!_){var s=e,v=s>>2;r:for(;;){var s;if(0==(0|s)){var n=1;t=14;break}if(0==(0|Se[v+2])){var o=36==(0|Se[Se[v+1]>>2]),l=1&o^1;if(o){var n=l;t=14;break}var b=r+4|0,k=Me[b>>2],u=0==(0|k);do{if(!u){var i=(r+8|0)>>2,c=Me[i];if((c+2|0)>>>0>Me[f+3]>>>0){t=9;break}var h=k+c|0;oe=10272,Ae[h]=255&oe,oe>>=8,Ae[h+1]=255&oe;var d=Se[i]+2|0;Se[i]=d,vr(r,e,0),t=10;break}t=9}while(0);9==t&&(Q(r,0|He.__str140,2),vr(r,e,0));var w=Me[b>>2],p=0==(0|w);do if(!p){var E=r+8|0,A=Me[E>>2];if(A>>>0>=Me[f+3]>>>0)break;Se[E>>2]=A+1|0,Ae[w+A|0]=41;var g=l;t=15;break r}while(0);Y(r,41);var g=l;t=15;break}var s=Se[v],v=s>>2}if(14==t){var n;vr(r,e,0);var g=n}var g;if(0!=(0|g)){t=17;break}var y=r+4|0;t=21;break}t=17}while(0);r:do if(17==t){var m=r+4|0,S=Me[m>>2],M=0==(0|S);do if(!M){var C=r+8|0,R=Me[C>>2];if(R>>>0>=Me[f+3]>>>0)break;Se[C>>2]=R+1|0,Ae[S+R|0]=32;var y=m;break r}while(0);Y(r,32);var y=m}while(0);var y,T=Me[y>>2],O=0==(0|T);do{if(!O){var N=r+8|0,I=Me[N>>2];if(I>>>0>=Me[f+3]>>>0){t=24;break}Se[N>>2]=I+1|0,Ae[T+I|0]=91,t=25;break}t=24}while(0);24==t&&Y(r,91);var P=Se[a+4>>2];0!=(0|P)&&H(r,P);var D=Me[y>>2],L=0==(0|D);do{if(!L){var F=r+8|0,X=Me[F>>2];if(X>>>0>=Me[f+3]>>>0){t=30;break}Se[F>>2]=X+1|0,Ae[D+X|0]=93,t=31;break}t=30}while(0);30==t&&Y(r,93)}function er(r,a){var e,i,v,t,f,_,s=Oe;Oe+=8;var n,o=s,_=(a+4|0)>>2,l=Se[_];if(4==(0|Se[l>>2])){var f=(r+20|0)>>2,b=Se[f];Se[f]=0;var t=(r+16|0)>>2,k=Se[t],u=0|o;Se[u>>2]=k,Se[t]=o;var c=Se[_];Se[o+4>>2]=c;var h=Se[c+4>>2];H(r,h);var d=Se[u>>2];Se[t]=d;var v=(r+4|0)>>2,w=Me[v],p=0==(0|w);do{if(!p){var i=(r+8|0)>>2,E=Me[i],A=0==(0|E);do if(!A){if(Ae[w+(E-1)|0]<<24>>24!=60)break;E>>>0>2]>>>0?(Se[i]=E+1|0,Ae[w+E|0]=32):Y(r,32)}while(0);var g=Me[v];if(0==(0|g)){n=12;break}var y=Me[i];if(y>>>0>=Me[r+12>>2]>>>0){n=12;break}Se[i]=y+1|0,Ae[g+y|0]=60,n=13;break}n=12}while(0);12==n&&Y(r,60);var m=Se[Se[_]+8>>2];H(r,m);var S=Me[v],M=0==(0|S);do{if(!M){var e=(r+8|0)>>2,C=Me[e],R=0==(0|C);do if(!R){if(Ae[S+(C-1)|0]<<24>>24!=62)break;C>>>0>2]>>>0?(Se[e]=C+1|0,Ae[S+C|0]=32):Y(r,32)}while(0);var T=Me[v];if(0==(0|T)){n=22;break}var O=Me[e];if(O>>>0>=Me[r+12>>2]>>>0){n=22;break}Se[e]=O+1|0,Ae[T+O|0]=62,n=23;break}n=22}while(0);22==n&&Y(r,62),Se[f]=b}else H(r,l);Oe=s}function ir(r,a){var e,i=40==(0|Se[a>>2]);r:do if(i){var v=Me[r+4>>2],t=0==(0|v);do{if(!t){var e=(r+8|0)>>2,f=Me[e],_=a+4|0,s=Me[_>>2],n=Me[s+8>>2];if((n+f|0)>>>0>Me[r+12>>2]>>>0){var o=s,l=n;break}var b=v+f|0,k=Se[s+4>>2];Pa(b,k,n,1);var u=Se[e]+Se[Se[_>>2]+8>>2]|0;Se[e]=u;break r}var c=Me[a+4>>2],o=c,l=Se[c+8>>2]}while(0);var l,o,h=Se[o+4>>2];Q(r,h,l)}else H(r,a);while(0)}function vr(r,a,e){var i,v,t,f,_,f=(r+4|0)>>2,s=0==(0|e),t=(r+16|0)>>2;r:do if(s)for(var n=a;;){var n;if(0==(0|n)){_=29;break r}if(0==(0|Se[f])){_=29;break r}var o=n+8|0,l=0==(0|Se[o>>2]);do if(l){var b=n+4|0;if((Se[Se[b>>2]>>2]-25|0)>>>0<3)break;Se[o>>2]=1;var k=Me[t],u=Se[n+12>>2];Se[t]=u;var c=Me[b>>2],h=Se[c>>2];if(35==(0|h)){var d=n,w=k,p=c;_=14;break r}if(36==(0|h)){var E=n,A=k,g=c;_=15;break r}if(2==(0|h)){var y=k,m=b;_=16;break r}$(r,c),Se[t]=k}while(0);var n=Se[n>>2]}else for(var S=a;;){var S;if(0==(0|S)){_=29;break r}if(0==(0|Se[f])){_=29;break r}var M=S+8|0;if(0==(0|Se[M>>2])){Se[M>>2]=1;var C=Me[t],R=Se[S+12>>2];Se[t]=R;var T=S+4|0,O=Me[T>>2],N=Se[O>>2];if(35==(0|N)){var d=S,w=C,p=O;_=14;break r}if(36==(0|N)){var E=S,A=C,g=O;_=15;break r}if(2==(0|N)){var y=C,m=T;_=16;break r}$(r,O),Se[t]=C}var S=Se[S>>2]}while(0);if(14==_){var p,w,d,I=Se[d>>2];rr(r,p,I),Se[t]=w}else if(15==_){var g,A,E,P=Se[E>>2];ar(r,g,P),Se[t]=A}else if(16==_){var m,y,v=(r+20|0)>>2,D=Se[v];Se[v]=0;var L=Se[Se[m>>2]+4>>2];H(r,L),Se[v]=D;var F=0==(4&Se[r>>2]|0),X=Me[f],j=0!=(0|X);r:do if(F){do if(j){var i=(r+8|0)>>2,U=Me[i];if((U+2|0)>>>0>Me[r+12>>2]>>>0)break;var x=X+U|0;oe=14906,Ae[x]=255&oe,oe>>=8,Ae[x+1]=255&oe;var z=Se[i]+2|0;Se[i]=z;break r}while(0);Q(r,0|He.__str120,2)}else{do if(j){var V=r+8|0,B=Me[V>>2];if(B>>>0>=Me[r+12>>2]>>>0)break;Se[V>>2]=B+1|0,Ae[X+B|0]=46;break r}while(0);Y(r,46)}while(0);var K=Me[Se[m>>2]+8>>2],G=(Se[K>>2]-25|0)>>>0<3;r:do if(G)for(var W=K;;){var W,Z=Me[W+4>>2];if((Se[Z>>2]-25|0)>>>0>=3){var q=Z;break r}var W=Z}else var q=K;while(0);var q;H(r,q),Se[t]=y}}function tr(r,a){var e,e=(r+4|0)>>2,i=Se[e],v=0==(0|i);r:do if(!v){for(var t=Se[r+8>>2]+a|0,f=r+12|0,_=Se[f>>2],s=i;;){var s,_;if(t>>>0<=_>>>0)break r;var n=_<<1,o=fa(s,n);if(0==(0|o))break;Se[e]=o,Se[f>>2]=n;var _=n,s=o}var l=Se[e];va(l),Se[e]=0,Se[r+24>>2]=1}while(0)}function fr(r,a,e){var i,v=J(r),i=v>>2;return 0!=(0|v)&&(Se[i]=21,Se[i+1]=a,Se[i+2]=e),v}function _r(r){var a,a=(r+12|0)>>2,e=Se[a],i=Ae[e]<<24>>24;if(88==(0|i)){var v=e+1|0;Se[a]=v;var t=nr(r),f=Se[a],_=f+1|0;Se[a]=_;var s=Ae[f]<<24>>24==69?t:0,n=s}else if(76==(0|i))var o=or(r),n=o;else var l=N(r),n=l;var n;return n}function sr(r){var a,a=(r+12|0)>>2,e=Se[a],i=Ae[e];if(i<<24>>24==110){var v=e+1|0;Se[a]=v;var t=1,f=Ae[v],_=v}else var t=0,f=i,_=e;var _,f,t,s=(f-48&255&255)<10;r:do if(s)for(var n=f,o=0,l=_;;){var l,o,n,b=(n<<24>>24)-48+10*o|0,k=l+1|0;Se[a]=k;var u=ge[k];if((u-48&255&255)>=10){var c=b;break r}var n=u,o=b,l=k}else var c=0;while(0);var c,h=0==(0|t)?c:0|-c;return h}function nr(r){var a,e,a=(r+12|0)>>2,i=Se[a],v=Ae[i];do{if(v<<24>>24==76){var t=or(r),f=t;e=21;break}if(v<<24>>24==84){var _=x(r),f=_;e=21;break}if(v<<24>>24==115){if(Ae[i+1|0]<<24>>24!=114){e=8;break}var s=i+2|0;Se[a]=s;var n=N(r),o=br(r);if(Ae[Se[a]]<<24>>24==73){var l=z(r),b=D(r,4,o,l),k=D(r,1,n,b),f=k;e=21;break}var u=D(r,1,n,o),f=u;e=21;break}e=8}while(0);r:do if(8==e){var c=kr(r);if(0==(0|c)){var f=0;break}var h=0|c,d=Se[h>>2],w=40==(0|d);do{if(w){var p=c+4|0,E=r+48|0,A=Se[Se[p>>2]+8>>2]-2+Se[E>>2]|0;Se[E>>2]=A;var g=Se[h>>2];if(40!=(0|g)){var y=g;e=13;break}var m=Se[p>>2],S=Se[m>>2],M=Da(S,0|He.__str90);if(0!=(0|M)){var C=m;e=15;break}var R=N(r),T=D(r,43,c,R),f=T;break r}var y=d;e=13}while(0);do if(13==e){var y;if(40==(0|y)){var C=Se[c+4>>2];e=15;break}if(41==(0|y)){var O=c+4|0;e=17;break}if(42==(0|y)){e=18;break}var f=0;break r}while(0);do if(15==e){var C,O=C+12|0;e=17;break}while(0);do if(17==e){var O,I=Se[O>>2];if(1==(0|I))break;if(2==(0|I)){var P=nr(r),L=nr(r),F=D(r,45,P,L),X=D(r,44,c,F);return X}if(3==(0|I)){var j=nr(r),U=nr(r),V=nr(r),B=D(r,48,U,V),H=D(r,47,j,B),K=D(r,46,c,H);return K}var f=0;break r}while(0);var Y=nr(r),G=D(r,43,c,Y);return G}while(0);var f;return f}function or(r){var a,a=(r+12|0)>>2,e=Se[a],i=e+1|0;Se[a]=i;var v=Ae[e]<<24>>24==76;r:do if(v){if(Ae[i]<<24>>24==95)var t=T(r,0),f=t;else{var _=N(r);if(0==(0|_)){var s=0;break}var n=33==(0|Se[_>>2]);do if(n){var o=Se[_+4>>2];if(0==(0|Se[o+16>>2]))break;var l=r+48|0,b=Se[l>>2]-Se[o+4>>2]|0;Se[l>>2]=b}while(0);var k=Se[a];if(Ae[k]<<24>>24==110){var u=k+1|0;Se[a]=u;var c=50,h=u}else var c=49,h=k;for(var h,c,d=h;;){var d,w=Ae[d];if(w<<24>>24==69)break;if(w<<24>>24==0){var s=0;break r}var p=d+1|0;Se[a]=p;var d=p}var E=lr(r,h,d-h|0),A=D(r,c,_,E),f=A}var f,g=Se[a],y=g+1|0;Se[a]=y;var m=Ae[g]<<24>>24==69?f:0,s=m}else var s=0;while(0);var s;return s}function lr(r,a,e){var i=J(r),v=m(i,a,e),t=0==(0|v)?0:i;return t}function br(r){var a=r+12|0,e=Me[a>>2],i=ge[e],v=(i-48&255&255)<10;do if(v)var t=L(r),f=t;else if((i-97&255&255)<26){var _=kr(r);if(0==(0|_)){var f=0;break}if(40!=(0|Se[_>>2])){var f=_;break}var s=r+48|0,n=Se[Se[_+4>>2]+8>>2]+Se[s>>2]+7|0;Se[s>>2]=n;var f=_}else if(i<<24>>24==67||i<<24>>24==68)var o=hr(r),f=o;else{if(i<<24>>24!=76){var f=0;break}Se[a>>2]=e+1|0;var l=L(r);if(0==(0|l)){var f=0;break}var b=dr(r),k=0==(0|b)?0:l,f=k}while(0);var f;return f}function kr(r){var a,e,a=(r+12|0)>>2,i=Se[a],v=i+1|0;Se[a]=v;var t=ge[i],f=i+2|0;Se[a]=f;var _=ge[v];do{if(t<<24>>24==118){if((_-48&255&255)>=10){var s=49,n=0;e=6;break}var o=(_<<24>>24)-48|0,l=L(r),b=ur(r,o,l),k=b;e=14;break}if(t<<24>>24==99){if(_<<24>>24!=118){var s=49,n=0;e=6;break}var u=N(r),c=D(r,42,u,0),k=c;e=14;break}var s=49,n=0;e=6}while(0);r:do if(6==e){for(;;){var n,s,h=(s-n)/2+n|0,d=(h<<4)+ri|0,w=Se[d>>2],p=Ae[w],E=t<<24>>24==p<<24>>24;if(E&&_<<24>>24==Ae[w+1|0]<<24>>24)break;var A=t<<24>>24>24;do if(A)var g=h,y=n;else{if(E&&_<<24>>24>24){var g=h,y=n;break}var g=s,y=h+1|0}while(0);var y,g;if((0|y)==(0|g)){var k=0;break r}var s=g,n=y}var m=cr(r,d),k=m}while(0);var k;return k}function ur(r,a,e){var i=J(r),v=S(i,a,e),t=0==(0|v)?0:i;return t}function cr(r,a){var e=J(r);return 0!=(0|e)&&(Se[e>>2]=40,Se[e+4>>2]=a),e}function hr(r){var a,e,i=Se[r+44>>2],e=i>>2,v=0==(0|i);do if(!v){var t=Se[e];if(0==(0|t)){var f=r+48|0,_=Se[f>>2]+Se[e+2]|0;Se[f>>2]=_}else{if(21!=(0|t))break;var s=r+48|0,n=Se[s>>2]+Se[e+2]|0;Se[s>>2]=n}}while(0);var a=(r+12|0)>>2,o=Se[a],l=o+1|0;Se[a]=l;var b=Ae[o]<<24>>24;do if(67==(0|b)){var k=o+2|0;Se[a]=k;var u=Ae[l]<<24>>24;if(49==(0|u))var c=1;else if(50==(0|u))var c=2;else{if(51!=(0|u)){var h=0;break}var c=3}var c,d=wr(r,c,i),h=d}else if(68==(0|b)){var w=o+2|0;Se[a]=w;var p=Ae[l]<<24>>24;if(48==(0|p))var E=1;else if(49==(0|p))var E=2;else{if(50!=(0|p)){var h=0;break}var E=3}var E,A=pr(r,E,i),h=A}else var h=0;while(0);var h;return h}function dr(r){var a=r+12|0,e=Se[a>>2];if(Ae[e]<<24>>24==95){var i=e+1|0;Se[a>>2]=i;var v=sr(r),t=v>>>31^1}else var t=1;var t;return t}function wr(r,a,e){var i=J(r),v=M(i,a,e),t=0==(0|v)?0:i;return t}function pr(r,a,e){var i=J(r),v=C(i,a,e),t=0==(0|v)?0:i;return t}function Er(r,a){var e=J(r);return 0!=(0|e)&&(Se[e>>2]=5,Se[e+4>>2]=a),e}function Ar(r){var a,a=(r+12|0)>>2,e=Se[a],i=Ae[e]<<24>>24;do if(78==(0|i))var v=gr(r),t=v;else if(90==(0|i))var f=yr(r),t=f;else if(76==(0|i))var _=br(r),t=_;else if(83==(0|i)){if(Ae[e+1|0]<<24>>24==116){var s=e+2|0;Se[a]=s;var n=lr(r,0|He.__str152,3),o=br(r),l=D(r,1,n,o),b=r+48|0,k=Se[b>>2]+3|0;Se[b>>2]=k;var u=0,c=l}else var h=V(r,0),u=1,c=h;var c,u;if(Ae[Se[a]]<<24>>24!=73){var t=c;break}if(0==(0|u)){var d=R(r,c);if(0==(0|d)){var t=0;break}}var w=z(r),p=D(r,4,c,w),t=p}else{var E=br(r);if(Ae[Se[a]]<<24>>24!=73){var t=E;break}var A=R(r,E);if(0==(0|A)){var t=0;break}var g=z(r),y=D(r,4,E,g),t=y}while(0);var t;return t}function gr(r){var a,e=Oe;Oe+=4;var i=e,a=(r+12|0)>>2,v=Se[a],t=v+1|0;Se[a]=t;var f=Ae[v]<<24>>24==78;do if(f){var _=I(r,i,1);if(0==(0|_)){var s=0;break}var n=mr(r);if(Se[_>>2]=n,0==(0|n)){var s=0;break}var o=Se[a],l=o+1|0;if(Se[a]=l,Ae[o]<<24>>24!=69){var s=0;break}var s=Se[i>>2]}else var s=0;while(0);var s;return Oe=e,s}function yr(r){var a,a=(r+12|0)>>2,e=Se[a],i=e+1|0;Se[a]=i;var v=Ae[e]<<24>>24==90;do if(v){var t=O(r,0),f=Se[a],_=f+1|0;if(Se[a]=_,Ae[f]<<24>>24!=69){var s=0;break}if(Ae[_]<<24>>24==115){var n=f+2|0;Se[a]=n;var o=dr(r);if(0==(0|o)){var s=0;break}var l=lr(r,0|He.__str168,14),b=D(r,2,t,l),s=b}else{var k=Ar(r),u=dr(r);if(0==(0|u)){var s=0;break}var c=D(r,2,t,k),s=c}}else var s=0;while(0);var s;return s}function mr(r){var a,e=r+12|0,i=0;r:for(;;){var i,v=ge[Se[e>>2]];if(v<<24>>24==0){var t=0;break}var f=(v-48&255&255)<10|(v-97&255&255)<26;do{if(!f){if(v<<24>>24==76||v<<24>>24==68||v<<24>>24==67){a=5;break}if(v<<24>>24==83){var _=V(r,1),s=_;a=10;break}if(v<<24>>24==73){if(0==(0|i)){var t=0;break r}var n=z(r),o=4,l=n;a=11;break}if(v<<24>>24==84){var b=x(r),s=b;a=10;break}if(v<<24>>24==69){var t=i;break r}var t=0;break r}a=5}while(0);do if(5==a){var k=br(r),s=k;a=10;break}while(0);do if(10==a){var s;if(0==(0|i)){var u=s;a=12;break}var o=1,l=s;a=11;break}while(0);if(11==a)var l,o,c=D(r,o,i,l),u=c;var u;if(v<<24>>24!=83)if(Ae[Se[e>>2]]<<24>>24!=69){var h=R(r,u);if(0==(0|h)){var t=0;break}var i=u}else var i=u;else var i=u}var t;return t}function Sr(r,a){var e,i,v=Oe;Oe+=4;var t=v,i=t>>2,e=(r+12|0)>>2,f=Se[e];if(Ae[f]<<24>>24==74){var _=f+1|0;Se[e]=_;var s=1}else var s=a;var s;Se[i]=0;var n=s,o=0,l=t;r:for(;;)for(var l,o,n,b=n,k=o;;){var k,b,u=Ae[Se[e]];if(u<<24>>24==0||u<<24>>24==69){var c=Se[i];if(0==(0|c)){var h=0;break r}var d=0==(0|Se[c+8>>2]);do if(d){var w=Se[c+4>>2];if(33!=(0|Se[w>>2])){var p=c;break}var E=Se[w+4>>2];if(9!=(0|Se[E+16>>2])){var p=c;break}var A=r+48|0,g=Se[A>>2]-Se[E+4>>2]|0;Se[A>>2]=g,Se[i]=0;var p=0}else var p=c;while(0);var p,y=D(r,35,k,p),h=y;break r}var m=N(r);if(0==(0|m)){var h=0;break r}if(0==(0|b)){var S=D(r,38,m,0);if(Se[l>>2]=S,0==(0|S)){var h=0;break r}var n=0,o=k,l=S+8|0;continue r}var b=0,k=m}var h;return Oe=v,h}function Mr(r){for(var a=r;;){var a;if(0==(0|a)){var e=0;break}var i=Se[a>>2];if(1!=(0|i)&&2!=(0|i)){if(6==(0|i)||7==(0|i)||42==(0|i)){var e=1;break}var e=0;break}var a=Se[a+8>>2]}var e;return e}function Cr(r){var a=r>>2;Se[a+3]=0,Se[a+2]=0,Se[a+1]=0,Se[a]=0,Se[a+4]=0}function Rr(r,a){var e,e=(r+12|0)>>2,i=Se[e],v=(Se[r+4>>2]-i|0)<(0|a);r:do if(v)var t=0;else{var f=i+a|0;Se[e]=f;var _=0==(4&Se[r+8>>2]|0);do if(!_){if(Ae[f]<<24>>24!=36)break;var s=a+(i+1)|0;Se[e]=s}while(0);var n=(0|a)>9;do if(n){var o=La(i,0|He.__str117,8);if(0!=(0|o))break;var l=Ae[i+8|0];if(l<<24>>24!=46&&l<<24>>24!=95&&l<<24>>24!=36)break;if(Ae[i+9|0]<<24>>24!=78)break;var b=r+48|0,k=22-a+Se[b>>2]|0;Se[b>>2]=k;var u=lr(r,0|He.__str169,21),t=u;break r}while(0);var c=lr(r,i,a),t=c}while(0);var t;return t}function Tr(r){var a,e,e=(r+48|0)>>2,i=Se[e],v=i+20|0;Se[e]=v;var a=(r+12|0)>>2,t=Se[a],f=t+1|0;Se[a]=f;var _=Ae[t];do if(_<<24>>24==84){var s=t+2|0;Se[a]=s;var n=Ae[f]<<24>>24;if(86==(0|n)){var o=i+15|0;Se[e]=o;var l=N(r),b=D(r,8,l,0),k=b}else if(84==(0|n)){var u=i+10|0;Se[e]=u;var c=N(r),h=D(r,9,c,0),k=h}else if(73==(0|n))var d=N(r),w=D(r,11,d,0),k=w;else if(83==(0|n))var p=N(r),E=D(r,12,p,0),k=E;else if(104==(0|n)){var A=Nr(r,104);if(0==(0|A)){var k=0;break}var g=O(r,0),y=D(r,14,g,0),k=y}else if(118==(0|n)){var m=Nr(r,118);if(0==(0|m)){var k=0;break}var S=O(r,0),M=D(r,15,S,0),k=M}else if(99==(0|n)){var C=Nr(r,0);if(0==(0|C)){var k=0;break}var R=Nr(r,0);if(0==(0|R)){var k=0;break}var T=O(r,0),I=D(r,16,T,0),k=I}else if(67==(0|n)){var P=N(r),L=sr(r);if((0|L)<0){var k=0;break}var F=Se[a],X=F+1|0;if(Se[a]=X,Ae[F]<<24>>24!=95){var k=0;break}var j=N(r),U=Se[e]+5|0;Se[e]=U;var x=D(r,10,j,P),k=x}else if(70==(0|n))var z=N(r),V=D(r,13,z,0),k=V;else{if(74!=(0|n)){var k=0;break}var B=N(r),H=D(r,17,B,0),k=H}}else if(_<<24>>24==71){var K=t+2|0;Se[a]=K;var Y=Ae[f]<<24>>24;if(86==(0|Y))var G=Ar(r),W=D(r,18,G,0),k=W;else if(82==(0|Y))var Z=Ar(r),Q=D(r,19,Z,0),k=Q;else{if(65!=(0|Y)){var k=0;break}var q=O(r,0),$=D(r,20,q,0),k=$}}else var k=0;while(0);var k;return k}function Or(r){for(var a,e=r,a=e>>2;;){var e;if(0==(0|e)){var i=0;break}var v=Se[a];if(4==(0|v)){var t=Se[a+1],f=Mr(t),i=0==(0|f)&1;break}if(25!=(0|v)&&26!=(0|v)&&27!=(0|v)){var i=0;break}var e=Se[a+1],a=e>>2}var i;return i}function Nr(r,a){var e;if(0==(0|a)){var i=r+12|0,v=Se[i>>2],t=v+1|0;Se[i>>2]=t;var f=Ae[v]<<24>>24}else var f=a;var f;do{if(104==(0|f)){var _=(sr(r),r+12|0);e=7;break}if(118==(0|f)){var s=(sr(r),r+12|0),n=Se[s>>2],o=n+1|0;if(Se[s>>2]=o,Ae[n]<<24>>24!=95){var l=0;e=8;break}var _=(sr(r),s);e=7;break}var l=0;e=8}while(0);if(7==e){var _,b=Se[_>>2],k=b+1|0;Se[_>>2]=k;var l=Ae[b]<<24>>24==95&1}var l;return l}function Ir(r){var a,e,i=r>>2,v=Oe;Oe+=56;var t,f=v,_=v+8,s=v+16,n=v+36,e=(0|r)>>2,o=Se[e],l=0==(8192&o|0);r:do{if(l){var a=(r+12|0)>>2,b=Se[a];if(Ae[b]<<24>>24!=63){var k=0;t=111;break}var u=b+1|0;Se[a]=u;var c=Ae[u];do if(c<<24>>24==63){if(Ae[b+2|0]<<24>>24==36){var h=b+3|0;if(Ae[h]<<24>>24!=63){var d=5;t=90;break}Se[a]=h;var w=6,p=h}else var w=0,p=u;var p,w,E=p+1|0;Se[a]=E;var A=Ae[E]<<24>>24;do if(48==(0|A)){var g=1;t=81}else{if(49==(0|A)){var g=2;t=81;break}if(50!=(0|A)){if(51==(0|A)){var y=0|He.__str2172,m=E;t=82;break}if(52==(0|A)){var y=0|He.__str3173,m=E;t=82;break}if(53==(0|A)){var y=0|He.__str4174,m=E;t=82;break}if(54==(0|A)){var y=0|He.__str5175,m=E;t=82;break}if(55==(0|A)){var y=0|He.__str6176,m=E;t=82;break}if(56==(0|A)){var y=0|He.__str7177,m=E;t=82;break}if(57==(0|A)){var y=0|He.__str8178,m=E;t=82;break}if(65==(0|A)){var y=0|He.__str9179,m=E;t=82;break}if(66==(0|A)){Se[a]=p+2|0;var S=0|He.__str10180,M=3;t=88;break}if(67==(0|A)){var y=0|He.__str11181,m=E;t=82;break}if(68==(0|A)){var y=0|He.__str12182,m=E;t=82;break}if(69==(0|A)){var y=0|He.__str13183,m=E;t=82;break}if(70==(0|A)){var y=0|He.__str14184,m=E;t=82;break}if(71==(0|A)){var y=0|He.__str15185,m=E;t=82;break}if(72==(0|A)){var y=0|He.__str16186,m=E;t=82;break}if(73==(0|A)){var y=0|He.__str17187,m=E;t=82;break}if(74==(0|A)){var y=0|He.__str18188,m=E;t=82;break}if(75==(0|A)){var y=0|He.__str19189,m=E;t=82;break}if(76==(0|A)){var y=0|He.__str20190,m=E;t=82;break}if(77==(0|A)){var y=0|He.__str21191,m=E;t=82;break}if(78==(0|A)){var y=0|He.__str22192,m=E;t=82;break}if(79==(0|A)){var y=0|He.__str23193,m=E;t=82;break}if(80==(0|A)){var y=0|He.__str24194,m=E;t=82;break}if(81==(0|A)){var y=0|He.__str25195,m=E;t=82;break}if(82==(0|A)){var y=0|He.__str26196,m=E;t=82;break}if(83==(0|A)){var y=0|He.__str27197,m=E;t=82;break}if(84==(0|A)){var y=0|He.__str28198,m=E;t=82;break}if(85==(0|A)){var y=0|He.__str29199,m=E;t=82;break}if(86==(0|A)){var y=0|He.__str30200,m=E;t=82;break}if(87==(0|A)){var y=0|He.__str31201,m=E;t=82;break}if(88==(0|A)){var y=0|He.__str32202,m=E;t=82;break}if(89==(0|A)){var y=0|He.__str33203,m=E;t=82;break}if(90==(0|A)){var y=0|He.__str34204,m=E;t=82;break}if(95==(0|A)){var C=p+2|0;Se[a]=C;var R=Ae[C]<<24>>24;if(48==(0|R)){var y=0|He.__str35205,m=C;t=82;break}if(49==(0|R)){var y=0|He.__str36206,m=C;t=82;break}if(50==(0|R)){var y=0|He.__str37207,m=C;t=82;break}if(51==(0|R)){var y=0|He.__str38208,m=C;t=82;break}if(52==(0|R)){var y=0|He.__str39209,m=C;t=82;break}if(53==(0|R)){var y=0|He.__str40210,m=C;t=82;break}if(54==(0|R)){var y=0|He.__str41211,m=C;t=82;break}if(55==(0|R)){var y=0|He.__str42212,m=C;t=82;break}if(56==(0|R)){var y=0|He.__str43213,m=C;t=82;break}if(57==(0|R)){var y=0|He.__str44214,m=C;t=82;break}if(65==(0|R)){var y=0|He.__str45215,m=C;t=82;break}if(66==(0|R)){var y=0|He.__str46216,m=C;t=82;break}if(67==(0|R)){Se[a]=p+3|0;var T=0|He.__str47217;t=84;break}if(68==(0|R)){var y=0|He.__str48218,m=C;t=82;break}if(69==(0|R)){var y=0|He.__str49219,m=C;t=82;break}if(70==(0|R)){var y=0|He.__str50220,m=C;t=82;break}if(71==(0|R)){var y=0|He.__str51221,m=C;t=82;break}if(72==(0|R)){var y=0|He.__str52222,m=C;t=82;break}if(73==(0|R)){var y=0|He.__str53223,m=C;t=82;break}if(74==(0|R)){var y=0|He.__str54224,m=C;t=82;break}if(75==(0|R)){var y=0|He.__str55225,m=C;t=82;break}if(76==(0|R)){var y=0|He.__str56226,m=C;t=82;break}if(77==(0|R)){var y=0|He.__str57227,m=C;t=82;break}if(78==(0|R)){var y=0|He.__str58228,m=C;t=82;break}if(79==(0|R)){var y=0|He.__str59229,m=C;t=82;break}if(82==(0|R)){var O=4|o;Se[e]=O;var N=p+3|0;Se[a]=N;var I=Ae[N]<<24>>24;if(48==(0|I)){Se[a]=p+4|0,Cr(s);var P=(Pr(r,_,s,0),Se[_>>2]),D=Se[_+4>>2],L=Dr(r,0|He.__str60230,(ne=Oe,Oe+=8,Se[ne>>2]=P,Se[ne+4>>2]=D,ne)),F=Se[a]-1|0;Se[a]=F;var y=L,m=F;t=82;break}if(49==(0|I)){Se[a]=p+4|0;var X=Lr(r),j=Lr(r),U=Lr(r),x=Lr(r),z=Se[a]-1|0;Se[a]=z;var V=Dr(r,0|He.__str61231,(ne=Oe,Oe+=16,Se[ne>>2]=X,Se[ne+4>>2]=j,Se[ne+8>>2]=U,Se[ne+12>>2]=x,ne)),y=V,m=Se[a];t=82;break}if(50==(0|I)){var y=0|He.__str62232,m=N;t=82;break}if(51==(0|I)){var y=0|He.__str63233,m=N;t=82;break}if(52==(0|I)){var y=0|He.__str64234,m=N;t=82;break}var y=0,m=N;t=82;break}if(83==(0|R)){var y=0|He.__str65235,m=C;t=82;break}if(84==(0|R)){var y=0|He.__str66236,m=C;t=82;break}if(85==(0|R)){var y=0|He.__str67237,m=C;t=82;break}if(86==(0|R)){var y=0|He.__str68238,m=C;t=82;break}if(88==(0|R)){var y=0|He.__str69239,m=C;t=82;break}if(89==(0|R)){var y=0|He.__str70240,m=C;t=82;break}var k=0;t=111;break r}var k=0;t=111;break r}var y=0|He.__str1171,m=E;t=82}while(0);do{if(81==t){var g;Se[a]=p+2|0;var B=g;t=83;break}if(82==t){var m,y;if(Se[a]=m+1|0,1==(0|w)||2==(0|w)){var B=w;t=83;break}if(4==(0|w)){var T=y;t=84;break}if(6!=(0|w)){var S=y,M=w;t=88;break}Cr(n);var H=Xr(r,n,0,60,62);if(0==(0|H))var K=y;else var Y=Dr(r,0|He.__str170,(ne=Oe,Oe+=8,Se[ne>>2]=y,Se[ne+4>>2]=H,ne)),K=Y;var K;Se[i+6]=0;var S=K,M=w;t=88;break}}while(0);if(83==t){var B,G=r+40|0,W=Fr(r,0|He._symbol_demangle_dashed_null,-1,G);if(0==(0|W)){var k=0;t=111;break r}var d=B;t=90;break}if(84==t){var T;Se[i+4]=T;var Z=1,Q=T;t=109;break r}if(88==t){var M,S,q=r+40|0,$=Fr(r,S,-1,q);if(0==(0|$)){var k=0;t=111;break r}var d=M;t=90;break}}else{if(c<<24>>24==36){var J=b+2|0;Se[a]=J;var rr=jr(r);Se[i+4]=rr;var ar=0!=(0|rr)&1;t=107;break}var d=0;t=90}while(0);if(90==t){var d,er=Me[a],ir=Ae[er]<<24>>24;if(64==(0|ir))Se[a]=er+1|0;else if(36==(0|ir))t=93;else{var vr=zr(r);if(0==(0|vr)){var k=-1;t=111;break}}if(5==(0|d)){var tr=r+20|0,fr=Se[tr>>2]+1|0;Se[tr>>2]=fr}else if(1==(0|d)||2==(0|d)){if(Me[i+11]>>>0<2){var k=-1;t=111;break}var _r=r+56|0,sr=Me[_r>>2],nr=Se[sr+4>>2];if(1==(0|d))Se[sr>>2]=nr;else{var or=Dr(r,0|He.__str71241,(ne=Oe,Oe+=4,Se[ne>>2]=nr,ne)),lr=Se[_r>>2];Se[lr>>2]=or}var br=4|Se[e];Se[e]=br}else if(3==(0|d)){var kr=Se[e]&-5;Se[e]=kr}var ur=ge[Se[a]];if((ur-48&255&255)<10)var cr=Vr(r),ar=cr;else if((ur-65&255&255)<26)var hr=Br(r,3==(0|d)&1),ar=hr;else{if(ur<<24>>24!=36){var k=-1;t=111;break}var dr=Hr(r),ar=dr}}var ar;if(0==(0|ar)){var k=-1;t=111;break}var Z=ar,Q=Se[i+4];t=109;break}var wr=Pr(r,f,0,0);if(0==(0|wr)){var k=-1;t=111;break}var pr=Se[f>>2],Er=Se[f+4>>2],Ar=Dr(r,0|He.__str170,(ne=Oe,Oe+=8,Se[ne>>2]=pr,Se[ne+4>>2]=Er,ne));Se[i+4]=Ar;var Z=1,Q=Ar;t=109;break}while(0);do if(109==t){var Q,Z;if(0!=(0|Q)){var k=Z;break}Xa(0|He.__str72242,1499,0|He.___func___symbol_demangle,0|He.__str73243);var k=Z}while(0);var k;return Oe=v,k}function Pr(r,a,e,i){var v,t,f,_=Oe;Oe+=24;var s=_,n=_+4,o=_+8,l=_+16,b=_+20;0==(0|a)&&Xa(0|He.__str72242,829,0|He.___func___demangle_datatype,0|He.__str121291);var f=(a+4|0)>>2;Se[f]=0;var t=(0|a)>>2;Se[t]=0;var v=(r+12|0)>>2,k=Me[v],u=k+1|0;Se[v]=u;var c=Ae[k],h=c<<24>>24;do if(95==(0|h)){Se[v]=k+2|0;var d=Ae[u],w=Zr(d);Se[t]=w}else if(67==(0|h)||68==(0|h)||69==(0|h)||70==(0|h)||71==(0|h)||72==(0|h)||73==(0|h)||74==(0|h)||75==(0|h)||77==(0|h)||78==(0|h)||79==(0|h)||88==(0|h)||90==(0|h)){var p=Qr(c);Se[t]=p}else if(84==(0|h)||85==(0|h)||86==(0|h)||89==(0|h)){var E=qr(r);if(0==(0|E))break;var A=0==(32768&Se[r>>2]|0);do if(A)if(84==(0|h))var g=0|He.__str122292;else if(85==(0|h))var g=0|He.__str123293;else if(86==(0|h))var g=0|He.__str124294;else{if(89!=(0|h)){var g=0;break}var g=0|He.__str125295}else var g=0;while(0);var g,y=Dr(r,0|He.__str170,(ne=Oe,Oe+=8,Se[ne>>2]=g,Se[ne+4>>2]=E,ne));Se[t]=y}else if(63==(0|h))if(0==(0|i))$r(a,r,e,63,0);else{var m=Lr(r);if(0==(0|m))break;var S=Dr(r,0|He.__str126296,(ne=Oe,Oe+=4,Se[ne>>2]=m,ne));Se[t]=S}else if(65==(0|h)||66==(0|h))$r(a,r,e,c,i);else if(81==(0|h)||82==(0|h)||83==(0|h)){var M=0==(0|i)?80:c;$r(a,r,e,M,i)}else if(80==(0|h))if(((Ae[u]<<24>>24)-48|0)>>>0<10){var C=k+2|0;if(Se[v]=C,Ae[u]<<24>>24!=54)break;var R=r+44|0,T=Se[R>>2];Se[v]=k+3|0;var O=Ae[C],N=Se[r>>2]&-17,I=Ur(O,s,n,N);if(0==(0|I))break;var P=Pr(r,o,e,0);if(0==(0|P))break;var D=Xr(r,e,1,40,41);if(0==(0|D))break;Se[R>>2]=T;var L=Se[o>>2],F=Se[o+4>>2],X=Se[s>>2],j=Dr(r,0|He.__str127297,(ne=Oe,Oe+=12,Se[ne>>2]=L,Se[ne+4>>2]=F,Se[ne+8>>2]=X,ne));Se[t]=j;var U=Dr(r,0|He.__str128298,(ne=Oe,Oe+=4,Se[ne>>2]=D,ne));Se[f]=U}else $r(a,r,e,80,i);else if(87==(0|h)){if(Ae[u]<<24>>24!=52)break;Se[v]=k+2|0;var x=qr(r);if(0==(0|x))break;if(0==(32768&Se[r>>2]|0)){var z=Dr(r,0|He.__str129299,(ne=Oe,Oe+=4,Se[ne>>2]=x,ne));Se[t]=z}else Se[t]=x}else if(48==(0|h)||49==(0|h)||50==(0|h)||51==(0|h)||52==(0|h)||53==(0|h)||54==(0|h)||55==(0|h)||56==(0|h)||57==(0|h)){var V=h<<1,B=V-96|0,H=Yr(e,B);Se[t]=H;var K=V-95|0,Y=Yr(e,K);Se[f]=Y}else if(36==(0|h)){var G=k+2|0;Se[v]=G;var W=Ae[u]<<24>>24;if(48==(0|W)){var Z=Lr(r);Se[t]=Z}else if(68==(0|W)){var Q=Lr(r);if(0==(0|Q))break;var q=Dr(r,0|He.__str130300,(ne=Oe,Oe+=4,Se[ne>>2]=Q,ne));Se[t]=q}else if(70==(0|W)){var $=Lr(r);if(0==(0|$))break;var J=Lr(r);if(0==(0|J))break;var rr=Dr(r,0|He.__str131301,(ne=Oe,Oe+=8,Se[ne>>2]=$,Se[ne+4>>2]=J,ne));Se[t]=rr}else if(71==(0|W)){var ar=Lr(r);if(0==(0|ar))break;var er=Lr(r);if(0==(0|er))break;var ir=Lr(r);if(0==(0|ir))break;var vr=Dr(r,0|He.__str132302,(ne=Oe,Oe+=12,Se[ne>>2]=ar,Se[ne+4>>2]=er,Se[ne+8>>2]=ir,ne));Se[t]=vr}else if(81==(0|W)){var tr=Lr(r);if(0==(0|tr))break;var fr=Dr(r,0|He.__str133303,(ne=Oe,Oe+=4,Se[ne>>2]=tr,ne));Se[t]=fr}else{if(36!=(0|W))break;if(Ae[G]<<24>>24!=67)break;Se[v]=k+3|0;var _r=xr(r,l,b);if(0==(0|_r))break;var sr=Pr(r,a,e,i);if(0==(0|sr))break;var nr=Se[t],or=Se[l>>2],lr=Dr(r,0|He.__str83253,(ne=Oe,Oe+=8,Se[ne>>2]=nr,Se[ne+4>>2]=or,ne));Se[t]=lr}}while(0);var br=0!=(0|Se[t])&1;return Oe=_,br}function Dr(r,a){var e,i=Oe;Oe+=4;var v=i,e=v>>2,t=v;Se[t>>2]=arguments[Dr.length];var f=1,_=0;r:for(;;){var _,f,s=Ae[a+_|0];do{if(s<<24>>24==0)break r;if(s<<24>>24==37){var n=_+1|0,o=Ae[a+n|0]<<24>>24;if(115==(0|o)){var l=Se[e],b=l,k=l+4|0;Se[e]=k;var u=Se[b>>2];if(0==(0|u)){var c=f,h=n;break}var d=Ca(u),c=d+f|0,h=n;break}if(99==(0|o)){var w=Se[e]+4|0;Se[e]=w;var c=f+1|0,h=n;break}if(37==(0|o))var p=n;else var p=_;var p,c=f+1|0,h=p}else var c=f+1|0,h=_}while(0);var h,c,f=c,_=h+1|0}var E=Wr(r,f);if(0==(0|E))var A=0;else{Se[t>>2]=arguments[Dr.length];var g=E,y=0;r:for(;;){var y,g,m=Ae[a+y|0];do{if(m<<24>>24==0)break r;if(m<<24>>24==37){var S=y+1|0,M=Ae[a+S|0]<<24>>24;if(115==(0|M)){var C=Se[e],R=C,T=C+4|0;Se[e]=T;var O=Se[R>>2];if(0==(0|O)){var N=g,I=S;break}var P=Ca(O);Pa(g,O,P,1);var N=g+P|0,I=S;break}if(99==(0|M)){var D=Se[e],L=D,F=D+4|0;Se[e]=F,Ae[g]=255&Se[L>>2];var N=g+1|0,I=S;break}if(37==(0|M))var X=S;else var X=y;var X;Ae[g]=37;var N=g+1|0,I=X}else{Ae[g]=m;var N=g+1|0,I=y}}while(0);var I,N,g=N,y=I+1|0}Ae[g]=0;var A=E}var A;return Oe=i,A}function Lr(r){var a,a=(r+12|0)>>2,e=Se[a],i=Ae[e];if(i<<24>>24==63){var v=e+1|0;Se[a]=v;var t=1,f=v,_=Ae[v]}else var t=0,f=e,_=i;var _,f,t,s=(_-48&255&255)<9;do if(s){var n=Wr(r,3),o=0!=(0|t);o&&(Ae[n]=45);var l=Ae[Se[a]]+1&255;Ae[n+t|0]=l;var b=o?2:1;\nAe[n+b|0]=0;var k=Se[a]+1|0;Se[a]=k;var u=n}else if(_<<24>>24==57){var c=Wr(r,4),h=0!=(0|t);h&&(Ae[c]=45),Ae[c+t|0]=49;var d=h?2:1;Ae[c+d|0]=48;var w=h?3:2;Ae[c+w|0]=0;var p=Se[a]+1|0;Se[a]=p;var u=c}else{if((_-65&255&255)>=16){var u=0;break}for(var E=0,A=f;;){var A,E,g=A+1|0;Se[a]=g;var y=(Ae[A]<<24>>24)+((E<<4)-65)|0,m=ge[g];if((m-65&255&255)>=16)break;var E=y,A=g}if(m<<24>>24!=64){var u=0;break}var S=Wr(r,17),M=0!=(0|t)?0|He.__str119289:0|ii,C=(za(S,0|He.__str118288,(ne=Oe,Oe+=8,Se[ne>>2]=M,Se[ne+4>>2]=y,ne)),Se[a]+1|0);Se[a]=C;var u=S}while(0);var u;return u}function Fr(r,a,e,i){var v,t,f,_;0==(0|a)&&Xa(0|He.__str72242,212,0|He.___func___str_array_push,0|He.__str115285),0==(0|i)&&Xa(0|He.__str72242,213,0|He.___func___str_array_push,0|He.__str116286);var f=(i+12|0)>>2,s=Me[f],n=0==(0|s);do{if(n){Se[f]=32;var o=Wr(r,128);if(0==(0|o)){var l=0;_=17;break}Se[i+16>>2]=o,_=11;break}if(Me[i+8>>2]>>>0>>0){_=11;break}var b=s<<3,k=Wr(r,b);if(0==(0|k)){var l=0;_=17;break}var u=k,c=i+16|0,h=Se[c>>2],d=Se[f]<<2;Pa(k,h,d,1);var w=Se[f]<<1;Se[f]=w,Se[c>>2]=u,_=11;break}while(0);do if(11==_){if((0|e)==-1)var p=Ca(a),E=p;else var E=e;var E,A=ja(a),g=E+1|0,y=Wr(r,g),t=(i+4|0)>>2,v=(i+16|0)>>2,m=(Se[t]<<2)+Se[v]|0;Se[m>>2]=y;var S=Se[Se[v]+(Se[t]<<2)>>2];if(0==(0|S)){Xa(0|He.__str72242,233,0|He.___func___str_array_push,0|He.__str117287);var M=Se[Se[v]+(Se[t]<<2)>>2]}else var M=S;var M;Pa(M,A,E,1),va(A),Ae[Se[Se[v]+(Se[t]<<2)>>2]+g|0]=0;var C=Se[t]+1|0;Se[t]=C;var R=i+8|0;if(C>>>0>2]>>>0){var l=1;break}Se[R>>2]=C;var l=1}while(0);var l;return l}function Xr(r,a,e,i,v){var t,f,_=Oe;Oe+=28;var s,n=_,o=_+8;Cr(o);var f=(r+12|0)>>2,l=0==(0|e),t=(0|n)>>2,b=n+4|0;r:do if(l)for(;;){var k=Se[f],u=Ae[k];if(u<<24>>24==0){s=12;break r}if(u<<24>>24==64){var c=k;s=7;break r}var h=Pr(r,n,a,1);if(0==(0|h)){var d=0;s=25;break r}var w=Se[t],p=Se[b>>2],E=Dr(r,0|He.__str170,(ne=Oe,Oe+=8,Se[ne>>2]=w,Se[ne+4>>2]=p,ne)),A=Fr(r,E,-1,o);if(0==(0|A)){var d=0;s=25;break r}var g=Se[t],y=Da(g,0|He.__str110280);if(0==(0|y)){s=12;break r}}else for(;;){var m=Se[f],S=Ae[m];if(S<<24>>24==0){s=12;break r}if(S<<24>>24==64){var c=m;s=7;break r}var M=Pr(r,n,a,1);if(0==(0|M)){var d=0;s=25;break r}var C=Se[t],R=Da(C,0|He.__str84254);if(0==(0|R)){s=13;break r}var T=Se[b>>2],O=Dr(r,0|He.__str170,(ne=Oe,Oe+=8,Se[ne>>2]=C,Se[ne+4>>2]=T,ne)),N=Fr(r,O,-1,o);if(0==(0|N)){var d=0;s=25;break r}var I=Se[t],P=Da(I,0|He.__str110280);if(0==(0|P)){s=12;break r}}while(0);do if(7==s){var c;Se[f]=c+1|0,s=12;break}while(0);do if(12==s){if(l){s=14;break}s=13;break}while(0);do if(13==s){var D=Se[f],L=D+1|0;if(Se[f]=L,Ae[D]<<24>>24==90){s=14;break}var d=0;s=25;break}while(0);r:do if(14==s){var F=o+4|0,X=Me[F>>2];do{if(0!=(0|X)){if(1==(0|X)){var j=o+16|0,U=Se[Se[j>>2]>>2],x=Da(U,0|He.__str84254);if(0==(0|x)){s=17;break}var z=j;s=20;break}var V=o+16|0;if(X>>>0<=1){var z=V;s=20;break}for(var B=0,H=1;;){var H,B,K=Se[Se[V>>2]+(H<<2)>>2],Y=Dr(r,0|He.__str112282,(ne=Oe,Oe+=8,Se[ne>>2]=B,Se[ne+4>>2]=K,ne)),G=H+1|0;if(G>>>0>=Me[F>>2]>>>0)break;var B=Y,H=G}if(0==(0|Y)){var z=V;s=20;break}var W=Y,Z=Y;s=21;break}s=17}while(0);if(17==s){var Q=i<<24>>24,q=v<<24>>24,$=Dr(r,0|He.__str111281,(ne=Oe,Oe+=8,Se[ne>>2]=Q,Se[ne+4>>2]=q,ne)),d=$;break}if(20==s)var z,W=Se[Se[z>>2]>>2],Z=0;var Z,W,J=v<<24>>24,rr=v<<24>>24==62;do if(rr){var ar=Ca(W);if(Ae[W+(ar-1)|0]<<24>>24!=62)break;var er=i<<24>>24,ir=Se[Se[o+16>>2]>>2],vr=Dr(r,0|He.__str113283,(ne=Oe,Oe+=16,Se[ne>>2]=er,Se[ne+4>>2]=ir,Se[ne+8>>2]=Z,Se[ne+12>>2]=J,ne)),d=vr;break r}while(0);var tr=i<<24>>24,fr=Se[Se[o+16>>2]>>2],_r=Dr(r,0|He.__str114284,(ne=Oe,Oe+=16,Se[ne>>2]=tr,Se[ne+4>>2]=fr,Se[ne+8>>2]=Z,Se[ne+12>>2]=J,ne)),d=_r}while(0);var d;return Oe=_,d}function jr(r){var a,e=Oe;Oe+=20;var i=e,v=r+24|0,t=Se[v>>2],a=(r+20|0)>>2,f=Se[a],_=r+44|0,s=Se[_>>2];Se[a]=t;var n=Kr(r);if(0==(0|n))var o=0;else{Cr(i);var l=Xr(r,i,0,60,62);if(0==(0|l))var b=n;else var k=Dr(r,0|He.__str170,(ne=Oe,Oe+=8,Se[ne>>2]=n,Se[ne+4>>2]=l,ne)),b=k;var b;Se[v>>2]=t,Se[a]=f,Se[_>>2]=s;var o=b}var o;return Oe=e,o}function Ur(r,a,e,i){var v,t=a>>2;Se[e>>2]=0,Se[t]=0;var f=0==(18&i|0);do{if(f){var _=r<<24>>24,s=1==((_-65)%2|0);if(0==(1&i|0)){if(s?Se[e>>2]=0|He.__str95265:v=14,65==(0|_)||66==(0|_)){Se[t]=0|He.__str96266,v=21;break}if(67==(0|_)||68==(0|_)){Se[t]=0|He.__str97267,v=21;break}if(69==(0|_)||70==(0|_)){Se[t]=0|He.__str98268,v=21;break}if(71==(0|_)||72==(0|_)){Se[t]=0|He.__str99269,v=21;break}if(73==(0|_)||74==(0|_)){Se[t]=0|He.__str100270,v=21;break}if(75==(0|_)||76==(0|_)){v=21;break}if(77==(0|_)){Se[t]=0|He.__str101271,v=21;break}var n=0;v=22;break}if(s?Se[e>>2]=0|He.__str88258:v=5,65==(0|_)||66==(0|_)){Se[t]=0|He.__str89259,v=21;break}if(67==(0|_)||68==(0|_)){Se[t]=0|He.__str90260,v=21;break}if(69==(0|_)||70==(0|_)){Se[t]=0|He.__str91261,v=21;break}if(71==(0|_)||72==(0|_)){Se[t]=0|He.__str92262,v=21;break}if(73==(0|_)||74==(0|_)){Se[t]=0|He.__str93263,v=21;break}if(75==(0|_)||76==(0|_)){v=21;break}if(77==(0|_)){Se[t]=0|He.__str94264,v=21;break}var n=0;v=22;break}v=21}while(0);if(21==v)var n=1;var n;return n}function xr(r,a,e){var i;Se[e>>2]=0;var i=(r+12|0)>>2,v=Se[i];if(Ae[v]<<24>>24==69){Se[e>>2]=0|He.__str102272;var t=Se[i]+1|0;Se[i]=t;var f=t}else var f=v;var f;Se[i]=f+1|0;var _=Ae[f]<<24>>24;if(65==(0|_)){Se[a>>2]=0;var s=1}else if(66==(0|_)){Se[a>>2]=0|He.__str103273;var s=1}else if(67==(0|_)){Se[a>>2]=0|He.__str104274;var s=1}else if(68==(0|_)){Se[a>>2]=0|He.__str105275;var s=1}else var s=0;var s;return s}function zr(r){var a,e,a=(r+12|0)>>2,i=r+40|0,v=r+20|0,t=0|i,f=r+44|0,_=r+48|0,s=r+52|0,n=r+56|0,o=r+20|0,l=r+24|0,b=r+16|0,k=0;r:for(;;){var k,u=Se[a],c=Ae[u];if(c<<24>>24==64){var h=u+1|0;Se[a]=h;var d=1;break}var w=c<<24>>24;do{if(0==(0|w)){var d=0;break r}if(48==(0|w)||49==(0|w)||50==(0|w)||51==(0|w)||52==(0|w)||53==(0|w)||54==(0|w)||55==(0|w)||56==(0|w)||57==(0|w)){var p=u+1|0;Se[a]=p;var E=(Ae[u]<<24>>24)-48|0,A=Yr(v,E),g=A;e=14;break}if(63==(0|w)){var y=u+1|0;Se[a]=y;var m=Ae[y]<<24>>24;if(36==(0|m)){var S=u+2|0;Se[a]=S;var M=jr(r);if(0==(0|M)){var d=0;break r}var C=Fr(r,M,-1,v);if(0==(0|C)){var d=0;break r}var R=M;e=15;break}if(63==(0|m)){var T=Se[t>>2],O=Se[f>>2],N=Se[_>>2],I=Se[s>>2],P=Se[n>>2],D=Se[o>>2],L=Se[l>>2];Cr(i);var F=Ir(r);if(0==(0|F))var X=k;else var j=Se[b>>2],U=Dr(r,0|He.__str109279,(ne=Oe,Oe+=4,Se[ne>>2]=j,ne)),X=U;var X;Se[o>>2]=D,Se[l>>2]=L,Se[t>>2]=T,Se[f>>2]=O,Se[_>>2]=N,Se[s>>2]=I,Se[n>>2]=P;var g=X;e=14;break}var x=Lr(r);if(0==(0|x)){var d=0;break r}var z=Dr(r,0|He.__str109279,(ne=Oe,Oe+=4,Se[ne>>2]=x,ne)),g=z;e=14;break}var V=Kr(r),g=V;e=14;break}while(0);if(14==e){var g;if(0==(0|g)){var d=0;break}var R=g}var R,B=Fr(r,R,-1,i);if(0==(0|B)){var d=0;break}var k=R}var d;return d}function Vr(r){var a,e,i,v=Oe;Oe+=36;var t,f=v,i=f>>2,_=v+4,s=v+8,e=s>>2,n=v+16;Se[i]=0;var o=0|r,l=Se[o>>2],b=0==(128&l|0),k=r+12|0;do if(b){var u=Ae[Se[k>>2]]<<24>>24;if(48==(0|u))var c=0|He.__str76246,h=k,a=h>>2;else if(49==(0|u))var c=0|He.__str77247,h=k,a=h>>2;else{if(50!=(0|u)){var c=0,h=k,a=h>>2;break}var c=0|He.__str78248,h=k,a=h>>2}}else var c=0,h=k,a=h>>2;while(0);var h,c,d=0==(512&l|0);do if(d){if((Ae[Se[a]]-48&255&255)>=3){var w=0;break}var w=0|He.__str79249}else var w=0;while(0);var w,p=Gr(r,0),E=Se[a],A=E+1|0;Se[a]=A;var g=Ae[E]<<24>>24;do{if(48==(0|g)||49==(0|g)||50==(0|g)||51==(0|g)||52==(0|g)||53==(0|g)){var y=r+44|0,m=Se[y>>2];Cr(n);var S=Pr(r,s,n,0);if(0==(0|S)){var M=0;t=28;break}var C=xr(r,f,_);if(0==(0|C)){var M=0;t=28;break}var R=Se[i],T=0==(0|R),O=Se[_>>2];do if(T)Se[i]=O;else{if(0==(0|O))break;var N=Dr(r,0|He.__str83253,(ne=Oe,Oe+=8,Se[ne>>2]=R,Se[ne+4>>2]=O,ne));Se[i]=N}while(0);Se[y>>2]=m,t=22;break}if(54==(0|g)||55==(0|g)){var I=s+4|0;Se[I>>2]=0,Se[e]=0;var P=xr(r,f,_);if(0==(0|P)){var M=0;t=28;break}if(Ae[Se[a]]<<24>>24==64){t=22;break}var D=qr(r);if(0==(0|D)){var M=0;t=28;break}var L=Dr(r,0|He.__str107277,(ne=Oe,Oe+=4,Se[ne>>2]=D,ne));Se[I>>2]=L,t=22;break}if(56==(0|g)||57==(0|g)){Se[e+1]=0,Se[e]=0,Se[i]=0,t=22;break}var M=0;t=28}while(0);if(22==t){var F=0==(4096&Se[o>>2]|0);do{if(F){var X=Se[e],j=Se[i];if(0==(0|j)){var U=X;t=26;break}var x=0!=(0|X)?0|He.__str87257:0,z=0|He.__str87257,V=j,B=x,H=X;t=27;break}Se[i]=0,Se[e+1]=0,Se[e]=0;var U=0;t=26;break}while(0);if(26==t)var U,K=0!=(0|U)?0|He.__str87257:0,z=K,V=0,B=0,H=U;var H,B,V,z,Y=Se[e+1],G=Dr(r,0|He.__str108278,(ne=Oe,Oe+=32,Se[ne>>2]=c,Se[ne+4>>2]=w,Se[ne+8>>2]=H,Se[ne+12>>2]=B,Se[ne+16>>2]=V,Se[ne+20>>2]=z,Se[ne+24>>2]=p,Se[ne+28>>2]=Y,ne));Se[r+16>>2]=G;var M=1}var M;return Oe=v,M}function Br(r,a){var e,i,v,t,f=Oe;Oe+=44;var _,s=f,t=s>>2,n=f+8,o=f+12,v=o>>2,l=f+16,b=f+20,k=f+40;Se[v]=0;var i=(r+12|0)>>2,u=Se[i],c=u+1|0;Se[i]=c;var h=ge[u],d=h<<24>>24,w=(h-65&255&255)>25;r:do if(w)var p=0;else{var e=(0|r)>>2,E=Me[e],A=0==(128&E|0),g=d-65|0;do if(A){var y=g/8|0;if(0==(0|y))var m=0|He.__str76246,S=g;else if(1==(0|y))var m=0|He.__str77247,S=g;else{if(2!=(0|y)){var m=0,S=g;break}var m=0|He.__str78248,S=g}}else var m=0,S=g;while(0);var S,m,M=0==(512&E|0)&h<<24>>24<89,C=(0|S)%8;do if(M)if(2==(0|C)||3==(0|C))var R=m,T=0|He.__str79249;else if(4==(0|C)||5==(0|C))var R=m,T=0|He.__str80250;else{if(6!=(0|C)&&7!=(0|C)){var R=m,T=0;break}var O=Dr(r,0|He.__str81251,(ne=Oe,Oe+=4,Se[ne>>2]=m,ne)),R=O,T=0|He.__str80250}else var R=m,T=0;while(0);var T,R,N=Gr(r,0),I=6==(0|C);do{if(!I){if(7==((d-56)%8|0)){_=14;break}var P=N;_=15;break}_=14}while(0);if(14==_)var D=Lr(r),L=Dr(r,0|He.__str82252,(ne=Oe,Oe+=8,Se[ne>>2]=N,Se[ne+4>>2]=D,ne)),P=L;var P,F=h<<24>>24>88;do if(F)var X=0;else{if((C-2|0)>>>0<2){var X=0;break}var j=xr(r,o,k);if(0==(0|j)){var p=0;break r}var U=Me[v],x=Se[k>>2];if(0==(0|U)&0==(0|x)){var X=0;break}var z=Dr(r,0|He.__str83253,(ne=Oe,Oe+=8,Se[ne>>2]=U,Se[ne+4>>2]=x,ne));Se[v]=z;var X=z}while(0);var X,V=Se[i],B=V+1|0;Se[i]=B;var H=Ae[V],K=Se[e],Y=Ur(H,n,l,K);if(0==(0|Y)){var p=0;break}Cr(b);var G=Se[i];if(Ae[G]<<24>>24==64){Se[t]=0|He.__str84254,Se[t+1]=0;var W=G+1|0;Se[i]=W}else{var Z=Pr(r,s,b,0);if(0==(0|Z)){var p=0;break}}if(0!=(4&Se[e]|0)&&(Se[t+1]=0,Se[t]=0),0==(0|a))var Q=P;else{var q=0|s,$=Se[q>>2],J=s+4|0,rr=Se[J>>2],ar=Dr(r,0|He.__str85255,(ne=Oe,Oe+=12,Se[ne>>2]=P,Se[ne+4>>2]=$,Se[ne+8>>2]=rr,ne));Se[J>>2]=0,Se[q>>2]=0;var Q=ar}var Q,er=r+44|0,ir=Se[er>>2],vr=Xr(r,b,1,40,41);if(0==(0|vr)){var p=0;break}if(0==(4096&Se[e]|0))var tr=vr,fr=X;else{Se[v]=0;var tr=0,fr=0}var fr,tr;Se[er>>2]=ir;var _r=Se[t],sr=Se[t+1];if(0==(0|_r))var nr=0;else var or=0!=(0|sr)?0:0|He.__str87257,nr=or;var nr,lr=Se[n>>2],br=0!=(0|lr)?0|He.__str87257:0,kr=Se[l>>2],ur=Dr(r,0|He.__str86256,(ne=Oe,Oe+=44,Se[ne>>2]=R,Se[ne+4>>2]=T,Se[ne+8>>2]=_r,Se[ne+12>>2]=nr,Se[ne+16>>2]=lr,Se[ne+20>>2]=br,Se[ne+24>>2]=kr,Se[ne+28>>2]=Q,Se[ne+32>>2]=tr,Se[ne+36>>2]=fr,Se[ne+40>>2]=sr,ne));Se[r+16>>2]=ur;var p=1}while(0);var p;return Oe=f,p}function Hr(r){var a,a=(r+12|0)>>2,e=Se[a];if(Ae[e]<<24>>24==36)var i=e;else{Xa(0|He.__str72242,1252,0|He.___func___handle_template,0|He.__str74244);var i=Se[a]}var i;Se[a]=i+1|0;var v=Kr(r),t=0==(0|v);do if(t)var f=0;else{var _=Xr(r,0,0,60,62);if(0==(0|_)){var f=0;break}var s=Dr(r,0|He.__str170,(ne=Oe,Oe+=8,Se[ne>>2]=v,Se[ne+4>>2]=_,ne));Se[r+16>>2]=s;var f=1}while(0);var f;return f}function Kr(r){for(var a,a=(r+12|0)>>2,e=Me[a],i=e,v=Ae[e];;){var v,i;if(!((v-65&255&255)<26|(v-97&255&255)<26|(v-48&255&255)<10)&&v<<24>>24!=95&&v<<24>>24!=36){var t=0;break}var f=i+1|0;Se[a]=f;var _=ge[f];if(_<<24>>24==64){Se[a]=i+2|0;var s=f-e|0,n=r+20|0,o=Fr(r,e,s,n);if(0==(0|o)){var t=0;break}var l=Se[r+24>>2]-1-Se[n>>2]|0,b=Yr(n,l),t=b;break}var i=f,v=_}var t;return t}function Yr(r,a){0==(0|r)&&Xa(0|He.__str72242,263,0|He.___func___str_array_get_ref,0|He.__str75245);var e=Se[r>>2]+a|0;if(e>>>0>2]>>>0)var i=Se[Se[r+16>>2]+(e<<2)>>2];else var i=0;var i;return i}function Gr(r,a){var e,e=(r+44|0)>>2,i=Me[e];if(i>>>0>a>>>0){for(var v=r+56|0,t=a,f=0,_=Se[v>>2],s=i;;){var s,_,f,t,n=Me[_+(t<<2)>>2];if(0==(0|n)){Xa(0|He.__str72242,680,0|He.___func___get_class_string,0|He.__str106276);var o=Se[v>>2],l=o,b=Se[o+(t<<2)>>2],k=Se[e]}else var l=_,b=n,k=s;var k,b,l,u=Ca(b),c=u+(f+2)|0,h=t+1|0;if(h>>>0>=k>>>0)break;var t=h,f=c,_=l,s=k}var d=c-1|0}else var d=-1;var d,w=Wr(r,d);if(0==(0|w))var p=0;else{var E=Se[e]-1|0,A=(0|E)<(0|a);r:do if(A)var g=0;else for(var y=r+56|0,m=0,S=E;;){var S,m,M=Se[Se[y>>2]+(S<<2)>>2],C=Ca(M),R=w+m|0;Pa(R,M,C,1);var T=C+m|0;if((0|S)>(0|a)){var O=T+1|0;Ae[w+T|0]=58;var N=T+2|0;Ae[w+O|0]=58;var I=N}else var I=T;var I,P=S-1|0;if((0|P)<(0|a)){var g=I;break r}var m=I,S=P}while(0);var g;Ae[w+g|0]=0;var p=w}var p;return p}function Wr(r,a){var e,i=a>>>0>1020;do if(i){var v=Se[r+4>>2],t=a+4|0,f=pe[v](t);if(0==(0|f)){var _=0;break}var s=r+60|0,n=Se[s>>2],o=f;Se[o>>2]=n,Se[s>>2]=f,Se[r+64>>2]=0;var _=f+4|0}else{var e=(r+64|0)>>2,l=Me[e];if(l>>>0>>0){var b=Se[r+4>>2],k=pe[b](1024);if(0==(0|k)){var _=0;break}var u=r+60|0,c=Se[u>>2],h=k;Se[h>>2]=c,Se[u>>2]=k,Se[e]=1020;var d=1020,w=k}else var d=l,w=Se[r+60>>2];var w,d;Se[e]=d-a|0;var _=w+(1024-d)|0}while(0);var _;return _}function Zr(r){var a=r<<24>>24;if(68==(0|a))var e=0|He.__str157327;else if(69==(0|a))var e=0|He.__str158328;else if(70==(0|a))var e=0|He.__str159329;else if(71==(0|a))var e=0|He.__str160330;else if(72==(0|a))var e=0|He.__str161331;else if(73==(0|a))var e=0|He.__str162332;else if(74==(0|a))var e=0|He.__str163333;else if(75==(0|a))var e=0|He.__str164334;else if(76==(0|a))var e=0|He.__str165335;else if(77==(0|a))var e=0|He.__str166336;else if(78==(0|a))var e=0|He.__str167337;else if(87==(0|a))var e=0|He.__str168338;else var e=0;var e;return e}function Qr(r){var a=r<<24>>24;if(67==(0|a))var e=0|He.__str145315;else if(68==(0|a))var e=0|He.__str146316;else if(69==(0|a))var e=0|He.__str147317;else if(70==(0|a))var e=0|He.__str148318;else if(71==(0|a))var e=0|He.__str149319;else if(72==(0|a))var e=0|He.__str150320;else if(73==(0|a))var e=0|He.__str151321;else if(74==(0|a))var e=0|He.__str152322;else if(75==(0|a))var e=0|He.__str153323;else if(77==(0|a))var e=0|He.__str154324;else if(78==(0|a))var e=0|He.__str155325;else if(79==(0|a))var e=0|He.__str156326;else if(88==(0|a))var e=0|He.__str84254;else if(90==(0|a))var e=0|He.__str110280;else var e=0;var e;return e}function qr(r){var a=r+44|0,e=Se[a>>2],i=zr(r);if(0==(0|i))var v=0;else var t=Gr(r,e),v=t;var v;return Se[a>>2]=e,v}function $r(r,a,e,i,v){var t,f,_,s=Oe;Oe+=16;var n,o=s,_=o>>2,l=s+4,b=s+8,f=b>>2;Se[l>>2]=0|ii;var t=(a+12|0)>>2,k=Se[t];if(Ae[k]<<24>>24==69){Se[l>>2]=0|He.__str134304;var u=k+1|0;Se[t]=u;var c=0|He.__str134304}else var c=0|ii;var c,h=i<<24>>24;do{if(65==(0|h)){var d=Dr(a,0|He.__str135305,(ne=Oe,Oe+=4,Se[ne>>2]=c,ne)),w=d;n=10;break}if(66==(0|h)){var p=Dr(a,0|He.__str136306,(ne=Oe,Oe+=4,Se[ne>>2]=c,ne)),w=p;n=10;break}if(80==(0|h)){var E=Dr(a,0|He.__str137307,(ne=Oe,Oe+=4,Se[ne>>2]=c,ne)),w=E;n=10;break}if(81==(0|h)){var A=Dr(a,0|He.__str138308,(ne=Oe,Oe+=4,Se[ne>>2]=c,ne)),w=A;n=10;break}if(82==(0|h)){var g=Dr(a,0|He.__str139309,(ne=Oe,Oe+=4,Se[ne>>2]=c,ne)),w=g;n=10;break}if(83==(0|h)){var y=Dr(a,0|He.__str140310,(ne=Oe,Oe+=4,Se[ne>>2]=c,ne)),w=y;n=10;break}if(63==(0|h)){var w=0|ii;n=10}else n=31}while(0);r:do if(10==n){var w,m=xr(a,o,l);if(0==(0|m))break;var S=a+44|0,M=Se[S>>2],C=Se[t],R=Ae[C]<<24>>24==89;a:do if(R){var T=C+1|0;Se[t]=T;var O=Lr(a);if(0==(0|O))break r;var N=Ha(O),I=Ae[w]<<24>>24==32,P=Se[_],D=0==(0|P);do{if(I){if(!D){n=17;break}var L=w+1|0;n=18;break}if(D){var L=w;n=18;break}n=17;break}while(0);if(17==n){var F=Dr(a,0|He.__str141311,(ne=Oe,Oe+=8,Se[ne>>2]=P,Se[ne+4>>2]=w,ne));Se[_]=0;var X=F}else if(18==n)var L,j=Dr(a,0|He.__str142312,(ne=Oe,Oe+=4,Se[ne>>2]=L,ne)),X=j;var X;if(0==(0|N)){var U=X;break}for(var x=X,z=N;;){var z,x,V=z-1|0,B=Lr(a),H=Dr(a,0|He.__str143313,(ne=Oe,Oe+=8,Se[ne>>2]=x,Se[ne+4>>2]=B,ne));if(0==(0|V)){var U=H;break a}var x=H,z=V}}else var U=w;while(0);var U,K=Pr(a,b,e,0);if(0==(0|K))break;var Y=Se[_];if(0==(0|Y)){var G=0==(0|v);do if(G){if(Ae[U]<<24>>24==0){var W=U;break}var Z=U+1|0;if(Ae[Z]<<24>>24!=42){var W=U;break}var Q=Se[f],q=Ca(Q);if(Ae[Q+(q-1)|0]<<24>>24!=42){var W=U;break}var W=Z}else var W=U;while(0);var W,$=Se[f],J=Dr(a,0|He.__str170,(ne=Oe,Oe+=8,Se[ne>>2]=$,Se[ne+4>>2]=W,ne));Se[r>>2]=J}else{var rr=Se[f],ar=Dr(a,0|He.__str144314,(ne=Oe,Oe+=12,Se[ne>>2]=rr,Se[ne+4>>2]=Y,Se[ne+8>>2]=U,ne));Se[r>>2]=ar}var er=Se[f+1];Se[r+4>>2]=er,Se[S>>2]=M}while(0);Oe=s}function Jr(r){var a,e=r>>>0<245;do{if(e){if(r>>>0<11)var i=16;else var i=r+11&-8;var i,v=i>>>3,t=Me[vi>>2],f=t>>>(v>>>0);if(0!=(3&f|0)){var _=(1&f^1)+v|0,s=_<<1,n=(s<<2)+vi+40|0,o=(s+2<<2)+vi+40|0,l=Me[o>>2],b=l+8|0,k=Me[b>>2];if((0|n)==(0|k))Se[vi>>2]=t&(1<<_^-1);else{if(k>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[o>>2]=k,Se[k+12>>2]=n}var u=_<<3;Se[l+4>>2]=3|u;var c=l+(4|u)|0,h=1|Se[c>>2];Se[c>>2]=h;var d=b;a=38;break}if(i>>>0<=Me[vi+8>>2]>>>0){var w=i;a=30;break}if(0!=(0|f)){var p=2<>>12&16,y=A>>>(g>>>0),m=y>>>5&8,S=y>>>(m>>>0),M=S>>>2&4,C=S>>>(M>>>0),R=C>>>1&2,T=C>>>(R>>>0),O=T>>>1&1,N=(m|g|M|R|O)+(T>>>(O>>>0))|0,I=N<<1,P=(I<<2)+vi+40|0,D=(I+2<<2)+vi+40|0,L=Me[D>>2],F=L+8|0,X=Me[F>>2];if((0|P)==(0|X))Se[vi>>2]=t&(1<>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[D>>2]=X,Se[X+12>>2]=P}var j=N<<3,U=j-i|0;Se[L+4>>2]=3|i;var x=L,z=x+i|0;Se[x+(4|i)>>2]=1|U,Se[x+j>>2]=U;var V=Me[vi+8>>2];if(0!=(0|V)){var B=Se[vi+20>>2],H=V>>>2&1073741822,K=(H<<2)+vi+40|0,Y=Me[vi>>2],G=1<<(V>>>3),W=0==(Y&G|0);do{if(!W){var Z=(H+2<<2)+vi+40|0,Q=Me[Z>>2];if(Q>>>0>=Me[vi+16>>2]>>>0){var q=Q,$=Z;break}throw Ka(),\"Reached an unreachable!\"}Se[vi>>2]=Y|G;var q=K,$=(H+2<<2)+vi+40|0}while(0);var $,q;Se[$>>2]=B,Se[q+12>>2]=B;var J=B+8|0;Se[J>>2]=q;var rr=B+12|0;Se[rr>>2]=K}Se[vi+8>>2]=U,Se[vi+20>>2]=z;var d=F;a=38;break}if(0==(0|Se[vi+4>>2])){var w=i;a=30;break}var ar=ra(i);if(0==(0|ar)){var w=i;a=30;break}var d=ar;a=38;break}if(r>>>0>4294967231){var w=-1;a=30;break}var er=r+11&-8;if(0==(0|Se[vi+4>>2])){var w=er;a=30;break}var ir=ea(er);if(0==(0|ir)){var w=er;a=30;break}var d=ir;a=38;break}while(0);if(30==a){var w,vr=Me[vi+8>>2];if(w>>>0>vr>>>0){var tr=Me[vi+12>>2];if(w>>>0>>0){var fr=tr-w|0;Se[vi+12>>2]=fr;var _r=Me[vi+24>>2],sr=_r;Se[vi+24>>2]=sr+w|0,Se[w+(sr+4)>>2]=1|fr,Se[_r+4>>2]=3|w;var d=_r+8|0}else var nr=aa(w),d=nr}else{var or=vr-w|0,lr=Me[vi+20>>2];if(or>>>0>15){var br=lr;Se[vi+20>>2]=br+w|0,Se[vi+8>>2]=or,Se[w+(br+4)>>2]=1|or,Se[br+vr>>2]=or,Se[lr+4>>2]=3|w}else{Se[vi+8>>2]=0,Se[vi+20>>2]=0,Se[lr+4>>2]=3|vr;var kr=vr+(lr+4)|0,ur=1|Se[kr>>2];Se[kr>>2]=ur}var d=lr+8|0}}var d;return d}function ra(r){var a,e,i,v=Se[vi+4>>2],t=(v&-v)-1|0,f=t>>>12&16,_=t>>>(f>>>0),s=_>>>5&8,n=_>>>(s>>>0),o=n>>>2&4,l=n>>>(o>>>0),b=l>>>1&2,k=l>>>(b>>>0),u=k>>>1&1,c=Me[vi+((s|f|o|b|u)+(k>>>(u>>>0))<<2)+304>>2],h=c,e=h>>2,d=(Se[c+4>>2]&-8)-r|0;r:for(;;)for(var d,h,w=h;;){var w,p=Se[w+16>>2];if(0==(0|p)){var E=Se[w+20>>2];if(0==(0|E))break r;var A=E}else var A=p;var A,g=(Se[A+4>>2]&-8)-r|0;if(g>>>0>>0){var h=A,e=h>>2,d=g;continue r}var w=A}var y=h,m=Me[vi+16>>2],S=y>>>0>>0;do if(!S){var M=y+r|0,C=M;if(y>>>0>=M>>>0)break;var R=Me[e+6],T=Me[e+3],O=(0|T)==(0|h);do if(O){var N=h+20|0,I=Se[N>>2];if(0==(0|I)){var P=h+16|0,D=Se[P>>2];if(0==(0|D)){var L=0,a=L>>2;break}var F=P,X=D}else{var F=N,X=I;i=14}for(;;){var X,F,j=X+20|0,U=Se[j>>2];if(0==(0|U)){var x=X+16|0,z=Me[x>>2];if(0==(0|z))break;var F=x,X=z}else var F=j,X=U}if(F>>>0>>0)throw Ka(),\"Reached an unreachable!\";Se[F>>2]=0;var L=X,a=L>>2}else{var V=Me[e+2];if(V>>>0>>0)throw Ka(),\"Reached an unreachable!\";Se[V+12>>2]=T,Se[T+8>>2]=V;var L=T,a=L>>2}while(0);var L,B=0==(0|R);r:do if(!B){var H=h+28|0,K=(Se[H>>2]<<2)+vi+304|0,Y=(0|h)==(0|Se[K>>2]);do{if(Y){if(Se[K>>2]=L,0!=(0|L))break;var G=Se[vi+4>>2]&(1<>2]^-1);Se[vi+4>>2]=G;break r}if(R>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";var W=R+16|0;if((0|Se[W>>2])==(0|h)?Se[W>>2]=L:Se[R+20>>2]=L,0==(0|L))break r}while(0);if(L>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[a+6]=R;var Z=Me[e+4];if(0!=(0|Z)){if(Z>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[a+4]=Z,Se[Z+24>>2]=L}var Q=Me[e+5];if(0==(0|Q))break;if(Q>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[a+5]=Q,Se[Q+24>>2]=L}while(0);if(d>>>0<16){var q=d+r|0;Se[e+1]=3|q;var $=q+(y+4)|0,J=1|Se[$>>2];Se[$>>2]=J}else{Se[e+1]=3|r,Se[r+(y+4)>>2]=1|d,Se[y+d+r>>2]=d;var rr=Me[vi+8>>2];if(0!=(0|rr)){var ar=Me[vi+20>>2],er=rr>>>2&1073741822,ir=(er<<2)+vi+40|0,vr=Me[vi>>2],tr=1<<(rr>>>3),fr=0==(vr&tr|0);do{if(!fr){var _r=(er+2<<2)+vi+40|0,sr=Me[_r>>2];if(sr>>>0>=Me[vi+16>>2]>>>0){var nr=sr,or=_r;break}throw Ka(),\"Reached an unreachable!\"}Se[vi>>2]=vr|tr;var nr=ir,or=(er+2<<2)+vi+40|0}while(0);var or,nr;Se[or>>2]=ar,Se[nr+12>>2]=ar,Se[ar+8>>2]=nr,Se[ar+12>>2]=ir}Se[vi+8>>2]=d,Se[vi+20>>2]=C}return h+8|0}while(0);throw Ka(),\"Reached an unreachable!\"}function aa(r){var a,e;0==(0|Se[ti>>2])&&ba();var i=0==(4&Se[vi+440>>2]|0);do{if(i){var v=Se[vi+24>>2],t=0==(0|v);do{if(!t){var f=v,_=ua(f);if(0==(0|_)){e=6;break}var s=Se[ti+8>>2],n=r+47-Se[vi+12>>2]+s&-s;if(n>>>0>=2147483647){e=14;break}var o=re(n);if((0|o)==(Se[_>>2]+Se[_+4>>2]|0)){var l=o,b=n,k=o;e=13;break}var u=o,c=n;e=15;break}e=6}while(0);do if(6==e){var h=re(0);if((0|h)==-1){e=14;break}var d=Se[ti+8>>2],w=d+(r+47)&-d,p=h,E=Se[ti+4>>2],A=E-1|0;if(0==(A&p|0))var g=w;else var g=w-p+(A+p&-E)|0;var g;if(g>>>0>=2147483647){e=14;break}var y=re(g);if((0|y)==(0|h)){var l=h,b=g,k=y;e=13;break}var u=y,c=g;e=15;break}while(0);if(13==e){var k,b,l;if((0|l)!=-1){var m=b,S=l;e=26;break}var u=k,c=b}else if(14==e){var M=4|Se[vi+440>>2];Se[vi+440>>2]=M,e=23;break}var c,u,C=0|-c,R=(0|u)!=-1&c>>>0<2147483647;do{if(R){if(c>>>0>=(r+48|0)>>>0){var T=c;e=21;break}var O=Se[ti+8>>2],N=r+47-c+O&-O;if(N>>>0>=2147483647){var T=c;e=21;break}var I=re(N);if((0|I)==-1){re(C);e=22;break}var T=N+c|0;e=21;break}var T=c;e=21}while(0);if(21==e){var T;if((0|u)!=-1){var m=T,S=u;e=26;break}}var P=4|Se[vi+440>>2];Se[vi+440>>2]=P,e=23;break}e=23}while(0);do if(23==e){var D=Se[ti+8>>2],L=D+(r+47)&-D;if(L>>>0>=2147483647){e=49;break}var F=re(L),X=re(0);if(!((0|X)!=-1&(0|F)!=-1&F>>>0>>0)){e=49;break}var j=X-F|0;if(j>>>0<=(r+40|0)>>>0|(0|F)==-1){e=49;break}var m=j,S=F;e=26;break}while(0);r:do if(26==e){var S,m,U=Se[vi+432>>2]+m|0;Se[vi+432>>2]=U,U>>>0>Me[vi+436>>2]>>>0&&(Se[vi+436>>2]=U);var x=Me[vi+24>>2],z=0==(0|x);a:do if(z){var V=Me[vi+16>>2];0==(0|V)|S>>>0>>0&&(Se[vi+16>>2]=S),Se[vi+444>>2]=S,Se[vi+448>>2]=m,Se[vi+456>>2]=0;var B=Se[ti>>2];Se[vi+36>>2]=B,Se[vi+32>>2]=-1,ha(),ca(S,m-40|0)}else{for(var H=vi+444|0,a=H>>2;;){var H;if(0==(0|H))break;var K=Me[a],Y=H+4|0,G=Me[Y>>2],W=K+G|0;if((0|S)==(0|W)){if(0!=(8&Se[a+3]|0))break;var Z=x;if(!(Z>>>0>=K>>>0&Z>>>0>>0))break;Se[Y>>2]=G+m|0;var Q=Se[vi+24>>2],q=Se[vi+12>>2]+m|0;ca(Q,q);break a}var H=Se[a+2],a=H>>2}S>>>0>2]>>>0&&(Se[vi+16>>2]=S);for(var $=S+m|0,J=vi+444|0;;){var J;if(0==(0|J))break;var rr=0|J,ar=Me[rr>>2];if((0|ar)==(0|$)){if(0!=(8&Se[J+12>>2]|0))break;Se[rr>>2]=S;var er=J+4|0,ir=Se[er>>2]+m|0;Se[er>>2]=ir;var vr=da(S,ar,r),tr=vr;e=50;break r}var J=Se[J+8>>2]}Ma(S,m)}while(0);var fr=Me[vi+12>>2];if(fr>>>0<=r>>>0){e=49;break}var _r=fr-r|0;Se[vi+12>>2]=_r;var sr=Me[vi+24>>2],nr=sr;Se[vi+24>>2]=nr+r|0,Se[r+(nr+4)>>2]=1|_r,Se[sr+4>>2]=3|r;var tr=sr+8|0;e=50;break}while(0);if(49==e){var or=Je();Se[or>>2]=12;var tr=0}var tr;return tr}function ea(r){var a,e,i,v,t,f,_=r>>2,s=0|-r,n=r>>>8,o=0==(0|n);do if(o)var l=0;else{if(r>>>0>16777215){var l=31;break}var b=(n+1048320|0)>>>16&8,k=n<>>16&4,c=k<>>16&2,d=14-(u|b|h)+(c<>>15)|0,l=r>>>((d+7|0)>>>0)&1|d<<1}while(0);var l,w=Me[vi+(l<<2)+304>>2],p=0==(0|w);r:do if(p)var E=0,A=s,g=0;else{if(31==(0|l))var y=0;else var y=25-(l>>>1)|0;for(var y,m=0,S=s,M=w,t=M>>2,C=r<>>0>>0){if((0|T)==(0|r)){var E=M,A=O,g=M;break r}var N=M,I=O}else var N=m,I=S;var I,N,P=Me[t+5],D=Me[((C>>>31<<2)+16>>2)+t],L=0==(0|P)|(0|P)==(0|D)?R:P;if(0==(0|D)){var E=N,A=I,g=L;break r}var m=N,S=I,M=D,t=M>>2,C=C<<1,R=L}}while(0);var g,A,E,F=0==(0|g)&0==(0|E);do if(F){var X=2<>2]&(X|-X);if(0==(0|j)){var U=g;break}var x=(j&-j)-1|0,z=x>>>12&16,V=x>>>(z>>>0),B=V>>>5&8,H=V>>>(B>>>0),K=H>>>2&4,Y=H>>>(K>>>0),G=Y>>>1&2,W=Y>>>(G>>>0),Z=W>>>1&1,U=Se[vi+((B|z|K|G|Z)+(W>>>(Z>>>0))<<2)+304>>2]}else var U=g;while(0);var U,Q=0==(0|U);r:do if(Q)var q=A,$=E,v=$>>2;else for(var J=U,i=J>>2,rr=A,ar=E;;){var ar,rr,J,er=(Se[i+1]&-8)-r|0,ir=er>>>0>>0,vr=ir?er:rr,tr=ir?J:ar,fr=Me[i+4];if(0==(0|fr)){var _r=Me[i+5];if(0==(0|_r)){var q=vr,$=tr,v=$>>2;break r}var J=_r,i=J>>2,rr=vr,ar=tr}else var J=fr,i=J>>2,rr=vr,ar=tr}while(0);var $,q,sr=0==(0|$);r:do{if(!sr){if(q>>>0>=(Se[vi+8>>2]-r|0)>>>0){var nr=0;break}var or=$,e=or>>2,lr=Me[vi+16>>2],br=or>>>0>>0;do if(!br){var kr=or+r|0,ur=kr;if(or>>>0>=kr>>>0)break;var cr=Me[v+6],hr=Me[v+3],dr=(0|hr)==(0|$);do if(dr){var wr=$+20|0,pr=Se[wr>>2];if(0==(0|pr)){var Er=$+16|0,Ar=Se[Er>>2];if(0==(0|Ar)){var gr=0,a=gr>>2;break}var yr=Er,mr=Ar}else{var yr=wr,mr=pr;f=28}for(;;){var mr,yr,Sr=mr+20|0,Mr=Se[Sr>>2];if(0==(0|Mr)){var Cr=mr+16|0,Rr=Me[Cr>>2];if(0==(0|Rr))break;var yr=Cr,mr=Rr}else var yr=Sr,mr=Mr}if(yr>>>0>>0)throw Ka(),\"Reached an unreachable!\";Se[yr>>2]=0;var gr=mr,a=gr>>2}else{var Tr=Me[v+2];if(Tr>>>0>>0)throw Ka(),\"Reached an unreachable!\";Se[Tr+12>>2]=hr,Se[hr+8>>2]=Tr;var gr=hr,a=gr>>2}while(0);var gr,Or=0==(0|cr);a:do if(!Or){var Nr=$+28|0,Ir=(Se[Nr>>2]<<2)+vi+304|0,Pr=(0|$)==(0|Se[Ir>>2]);do{if(Pr){if(Se[Ir>>2]=gr,0!=(0|gr))break;var Dr=Se[vi+4>>2]&(1<>2]^-1);Se[vi+4>>2]=Dr;break a}if(cr>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";var Lr=cr+16|0;if((0|Se[Lr>>2])==(0|$)?Se[Lr>>2]=gr:Se[cr+20>>2]=gr,0==(0|gr))break a}while(0);if(gr>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[a+6]=cr;var Fr=Me[v+4];if(0!=(0|Fr)){if(Fr>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[a+4]=Fr,Se[Fr+24>>2]=gr}var Xr=Me[v+5];if(0==(0|Xr))break;if(Xr>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[a+5]=Xr,Se[Xr+24>>2]=gr}while(0);var jr=q>>>0<16;a:do if(jr){var Ur=q+r|0;Se[v+1]=3|Ur;var xr=Ur+(or+4)|0,zr=1|Se[xr>>2];Se[xr>>2]=zr}else if(Se[v+1]=3|r,Se[_+(e+1)]=1|q,Se[(q>>2)+e+_]=q,q>>>0<256){var Vr=q>>>2&1073741822,Br=(Vr<<2)+vi+40|0,Hr=Me[vi>>2],Kr=1<<(q>>>3),Yr=0==(Hr&Kr|0);do{if(!Yr){var Gr=(Vr+2<<2)+vi+40|0,Wr=Me[Gr>>2];if(Wr>>>0>=Me[vi+16>>2]>>>0){var Zr=Wr,Qr=Gr;break}throw Ka(),\"Reached an unreachable!\"}Se[vi>>2]=Hr|Kr;var Zr=Br,Qr=(Vr+2<<2)+vi+40|0}while(0);var Qr,Zr;Se[Qr>>2]=ur,Se[Zr+12>>2]=ur,Se[_+(e+2)]=Zr,Se[_+(e+3)]=Br}else{var qr=kr,$r=q>>>8,Jr=0==(0|$r);do if(Jr)var ra=0;else{if(q>>>0>16777215){var ra=31;break}var aa=($r+1048320|0)>>>16&8,ea=$r<>>16&4,va=ea<>>16&2,fa=14-(ia|aa|ta)+(va<>>15)|0,ra=q>>>((fa+7|0)>>>0)&1|fa<<1}while(0);var ra,_a=(ra<<2)+vi+304|0;Se[_+(e+7)]=ra;var sa=r+(or+16)|0;Se[_+(e+5)]=0,Se[sa>>2]=0;var na=Se[vi+4>>2],oa=1<>2]=la,Se[_a>>2]=qr,Se[_+(e+6)]=_a,Se[_+(e+3)]=qr,Se[_+(e+2)]=qr}else{if(31==(0|ra))var ba=0;else var ba=25-(ra>>>1)|0;for(var ba,ka=q<>2];;){var ua,ka;if((Se[ua+4>>2]&-8|0)==(0|q)){var ca=ua+8|0,ha=Me[ca>>2],da=Me[vi+16>>2],wa=ua>>>0>>0;do if(!wa){if(ha>>>0>>0)break;Se[ha+12>>2]=qr,Se[ca>>2]=qr,Se[_+(e+2)]=ha,Se[_+(e+3)]=ua,Se[_+(e+6)]=0;break a}while(0);throw Ka(),\"Reached an unreachable!\"}var pa=(ka>>>31<<2)+ua+16|0,Ea=Me[pa>>2];if(0==(0|Ea)){if(pa>>>0>=Me[vi+16>>2]>>>0){Se[pa>>2]=qr,Se[_+(e+6)]=ua,Se[_+(e+3)]=qr,Se[_+(e+2)]=qr;break a}throw Ka(),\"Reached an unreachable!\"}var ka=ka<<1,ua=Ea}}}while(0);var nr=$+8|0;break r}while(0);throw Ka(),\"Reached an unreachable!\"}var nr=0}while(0);var nr;return nr}function ia(r){var a;0==(0|Se[ti>>2])&&ba();var e=r>>>0<4294967232;r:do if(e){var i=Me[vi+24>>2];if(0==(0|i)){var v=0;break}var t=Me[vi+12>>2],f=t>>>0>(r+40|0)>>>0;do if(f){var _=Me[ti+8>>2],s=-40-r-1+t+_|0,n=Math.floor((s>>>0)/(_>>>0)),o=(n-1)*_|0,l=i,b=ua(l);if(0!=(8&Se[b+12>>2]|0))break;var k=re(0),a=(b+4|0)>>2;if((0|k)!=(Se[b>>2]+Se[a]|0))break;var u=o>>>0>2147483646?-2147483648-_|0:o,c=0|-u,h=re(c),d=re(0);if(!((0|h)!=-1&d>>>0>>0))break;var w=k-d|0;if((0|k)==(0|d))break;var p=Se[a]-w|0;Se[a]=p;var E=Se[vi+432>>2]-w|0;Se[vi+432>>2]=E;var A=Se[vi+24>>2],g=Se[vi+12>>2]-w|0;ca(A,g);var v=(0|k)!=(0|d);break r}while(0);if(Me[vi+12>>2]>>>0<=Me[vi+28>>2]>>>0){var v=0;break}Se[vi+28>>2]=-1;var v=0}else var v=0;while(0);var v;return 1&v}function va(r){var a,e,i,v,t,f,_,s=r>>2,n=0==(0|r);r:do if(!n){var o=r-8|0,l=o,b=Me[vi+16>>2],k=o>>>0>>0;a:do if(!k){var u=Me[r-4>>2],c=3&u;if(1==(0|c))break;var h=u&-8,f=h>>2,d=r+(h-8)|0,w=d,p=0==(1&u|0);e:do if(p){var E=Me[o>>2];if(0==(0|c))break r;var A=-8-E|0,t=A>>2,g=r+A|0,y=g,m=E+h|0;if(g>>>0>>0)break a;if((0|y)==(0|Se[vi+20>>2])){var v=(r+(h-4)|0)>>2;if(3!=(3&Se[v]|0)){var S=y,i=S>>2,M=m;break}Se[vi+8>>2]=m;var C=Se[v]&-2;Se[v]=C,Se[t+(s+1)]=1|m,Se[d>>2]=m;break r}if(E>>>0<256){var R=Me[t+(s+2)],T=Me[t+(s+3)];if((0|R)!=(0|T)){var O=((E>>>2&1073741822)<<2)+vi+40|0,N=(0|R)!=(0|O)&R>>>0>>0;do if(!N){if(!((0|T)==(0|O)|T>>>0>=b>>>0))break;Se[R+12>>2]=T,Se[T+8>>2]=R;var S=y,i=S>>2,M=m;break e}while(0);throw Ka(),\"Reached an unreachable!\"}var I=Se[vi>>2]&(1<<(E>>>3)^-1);Se[vi>>2]=I;var S=y,i=S>>2,M=m}else{var P=g,D=Me[t+(s+6)],L=Me[t+(s+3)],F=(0|L)==(0|P);do if(F){var X=A+(r+20)|0,j=Se[X>>2];if(0==(0|j)){var U=A+(r+16)|0,x=Se[U>>2];if(0==(0|x)){var z=0,e=z>>2;break}var V=U,B=x}else{var V=X,B=j;_=21}for(;;){var B,V,H=B+20|0,K=Se[H>>2];if(0==(0|K)){var Y=B+16|0,G=Me[Y>>2];if(0==(0|G))break;var V=Y,B=G}else var V=H,B=K}if(V>>>0>>0)throw Ka(),\"Reached an unreachable!\";Se[V>>2]=0;var z=B,e=z>>2}else{var W=Me[t+(s+2)];if(W>>>0>>0)throw Ka(),\"Reached an unreachable!\";Se[W+12>>2]=L,Se[L+8>>2]=W;var z=L,e=z>>2}while(0);var z;if(0==(0|D)){var S=y,i=S>>2,M=m;break}var Z=A+(r+28)|0,Q=(Se[Z>>2]<<2)+vi+304|0,q=(0|P)==(0|Se[Q>>2]);do{if(q){if(Se[Q>>2]=z,0!=(0|z))break;var $=Se[vi+4>>2]&(1<>2]^-1);Se[vi+4>>2]=$;var S=y,i=S>>2,M=m;break e}if(D>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";var J=D+16|0;if((0|Se[J>>2])==(0|P)?Se[J>>2]=z:Se[D+20>>2]=z,0==(0|z)){var S=y,i=S>>2,M=m;break e}}while(0);if(z>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[e+6]=D;var rr=Me[t+(s+4)];if(0!=(0|rr)){if(rr>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[e+4]=rr,Se[rr+24>>2]=z}var ar=Me[t+(s+5)];if(0==(0|ar)){var S=y,i=S>>2,M=m;break}if(ar>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[e+5]=ar,Se[ar+24>>2]=z;var S=y,i=S>>2,M=m}}else var S=l,i=S>>2,M=h;while(0);var M,S,er=S;if(er>>>0>=d>>>0)break;var ir=r+(h-4)|0,vr=Me[ir>>2];if(0==(1&vr|0))break;var tr=0==(2&vr|0);do{if(tr){if((0|w)==(0|Se[vi+24>>2])){var fr=Se[vi+12>>2]+M|0;Se[vi+12>>2]=fr,Se[vi+24>>2]=S;var _r=1|fr;if(Se[i+1]=_r,(0|S)==(0|Se[vi+20>>2])&&(Se[vi+20>>2]=0,Se[vi+8>>2]=0),fr>>>0<=Me[vi+28>>2]>>>0)break r;ia(0);break r}if((0|w)==(0|Se[vi+20>>2])){var sr=Se[vi+8>>2]+M|0;Se[vi+8>>2]=sr,Se[vi+20>>2]=S;var nr=1|sr;Se[i+1]=nr;var or=er+sr|0;Se[or>>2]=sr;break r}var lr=(vr&-8)+M|0,br=vr>>>3,kr=vr>>>0<256;e:do if(kr){var ur=Me[s+f],cr=Me[((4|h)>>2)+s];if((0|ur)!=(0|cr)){var hr=((vr>>>2&1073741822)<<2)+vi+40|0,dr=(0|ur)==(0|hr);do{if(!dr){if(ur>>>0>2]>>>0){_=66;break}_=63;break}_=63}while(0);do if(63==_){if((0|cr)!=(0|hr)&&cr>>>0>2]>>>0)break;Se[ur+12>>2]=cr,Se[cr+8>>2]=ur;break e}while(0);throw Ka(),\"Reached an unreachable!\"}var wr=Se[vi>>2]&(1<>2]=wr}else{var pr=d,Er=Me[f+(s+4)],Ar=Me[((4|h)>>2)+s],gr=(0|Ar)==(0|pr);do if(gr){var yr=h+(r+12)|0,mr=Se[yr>>2];if(0==(0|mr)){var Sr=h+(r+8)|0,Mr=Se[Sr>>2];if(0==(0|Mr)){var Cr=0,a=Cr>>2;break}var Rr=Sr,Tr=Mr}else{var Rr=yr,Tr=mr;_=73}for(;;){var Tr,Rr,Or=Tr+20|0,Nr=Se[Or>>2];if(0==(0|Nr)){var Ir=Tr+16|0,Pr=Me[Ir>>2];if(0==(0|Pr))break;var Rr=Ir,Tr=Pr}else var Rr=Or,Tr=Nr}if(Rr>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[Rr>>2]=0;var Cr=Tr,a=Cr>>2}else{var Dr=Me[s+f];if(Dr>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[Dr+12>>2]=Ar,\nSe[Ar+8>>2]=Dr;var Cr=Ar,a=Cr>>2}while(0);var Cr;if(0==(0|Er))break;var Lr=h+(r+20)|0,Fr=(Se[Lr>>2]<<2)+vi+304|0,Xr=(0|pr)==(0|Se[Fr>>2]);do{if(Xr){if(Se[Fr>>2]=Cr,0!=(0|Cr))break;var jr=Se[vi+4>>2]&(1<>2]^-1);Se[vi+4>>2]=jr;break e}if(Er>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";var Ur=Er+16|0;if((0|Se[Ur>>2])==(0|pr)?Se[Ur>>2]=Cr:Se[Er+20>>2]=Cr,0==(0|Cr))break e}while(0);if(Cr>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[a+6]=Er;var xr=Me[f+(s+2)];if(0!=(0|xr)){if(xr>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[a+4]=xr,Se[xr+24>>2]=Cr}var zr=Me[f+(s+3)];if(0==(0|zr))break;if(zr>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[a+5]=zr,Se[zr+24>>2]=Cr}while(0);if(Se[i+1]=1|lr,Se[er+lr>>2]=lr,(0|S)!=(0|Se[vi+20>>2])){var Vr=lr;break}Se[vi+8>>2]=lr;break r}Se[ir>>2]=vr&-2,Se[i+1]=1|M,Se[er+M>>2]=M;var Vr=M}while(0);var Vr;if(Vr>>>0<256){var Br=Vr>>>2&1073741822,Hr=(Br<<2)+vi+40|0,Kr=Me[vi>>2],Yr=1<<(Vr>>>3),Gr=0==(Kr&Yr|0);do{if(!Gr){var Wr=(Br+2<<2)+vi+40|0,Zr=Me[Wr>>2];if(Zr>>>0>=Me[vi+16>>2]>>>0){var Qr=Zr,qr=Wr;break}throw Ka(),\"Reached an unreachable!\"}Se[vi>>2]=Kr|Yr;var Qr=Hr,qr=(Br+2<<2)+vi+40|0}while(0);var qr,Qr;Se[qr>>2]=S,Se[Qr+12>>2]=S,Se[i+2]=Qr,Se[i+3]=Hr;break r}var $r=S,Jr=Vr>>>8,ra=0==(0|Jr);do if(ra)var aa=0;else{if(Vr>>>0>16777215){var aa=31;break}var ea=(Jr+1048320|0)>>>16&8,va=Jr<>>16&4,_a=va<>>16&2,na=14-(fa|ea|sa)+(_a<>>15)|0,aa=Vr>>>((na+7|0)>>>0)&1|na<<1}while(0);var aa,oa=(aa<<2)+vi+304|0;Se[i+7]=aa,Se[i+5]=0,Se[i+4]=0;var la=Se[vi+4>>2],ba=1<>2]=ua,Se[oa>>2]=$r,Se[i+6]=oa,Se[i+3]=S,Se[i+2]=S}else{if(31==(0|aa))var ca=0;else var ca=25-(aa>>>1)|0;for(var ca,ha=Vr<>2];;){var da,ha;if((Se[da+4>>2]&-8|0)==(0|Vr)){var wa=da+8|0,pa=Me[wa>>2],Ea=Me[vi+16>>2],Aa=da>>>0>>0;do if(!Aa){if(pa>>>0>>0)break;Se[pa+12>>2]=$r,Se[wa>>2]=$r,Se[i+2]=pa,Se[i+3]=da,Se[i+6]=0;break e}while(0);throw Ka(),\"Reached an unreachable!\"}var ga=(ha>>>31<<2)+da+16|0,ya=Me[ga>>2];if(0==(0|ya)){if(ga>>>0>=Me[vi+16>>2]>>>0){Se[ga>>2]=$r,Se[i+6]=da,Se[i+3]=S,Se[i+2]=S;break e}throw Ka(),\"Reached an unreachable!\"}var ha=ha<<1,da=ya}}while(0);var ma=Se[vi+32>>2]-1|0;if(Se[vi+32>>2]=ma,0!=(0|ma))break r;ta();break r}while(0);throw Ka(),\"Reached an unreachable!\"}while(0)}function ta(){var r=Se[vi+452>>2],a=0==(0|r);r:do if(!a)for(var e=r;;){var e,i=Se[e+8>>2];if(0==(0|i))break r;var e=i}while(0);Se[vi+32>>2]=-1}function fa(r,a){if(0==(0|r))var e=Jr(a),i=e;else var v=la(r,a),i=v;var i;return i}function _a(r,a){var e,i=r>>>0<9;do if(i)var v=Jr(a),t=v;else{var f=r>>>0<16?16:r,_=0==(f-1&f|0);r:do if(_)var s=f;else{if(f>>>0<=16){var s=16;break}for(var n=16;;){var n,o=n<<1;if(o>>>0>=f>>>0){var s=o;break r}var n=o}}while(0);var s;if((-64-s|0)>>>0>a>>>0){if(a>>>0<11)var l=16;else var l=a+11&-8;var l,b=Jr(l+(s+12)|0);if(0==(0|b)){var t=0;break}var k=b-8|0;if(0==((b>>>0)%(s>>>0)|0))var u=k,c=0;else{var h=b+(s-1)&-s,d=h-8|0,w=k;if((d-w|0)>>>0>15)var p=d;else var p=h+(s-8)|0;var p,E=p-w|0,e=(b-4|0)>>2,A=Se[e],g=(A&-8)-E|0;if(0==(3&A|0)){var y=Se[k>>2]+E|0;Se[p>>2]=y,Se[p+4>>2]=g;var u=p,c=0}else{var m=p+4|0,S=g|1&Se[m>>2]|2;Se[m>>2]=S;var M=g+(p+4)|0,C=1|Se[M>>2];Se[M>>2]=C;var R=E|1&Se[e]|2;Se[e]=R;var T=b+(E-4)|0,O=1|Se[T>>2];Se[T>>2]=O;var u=p,c=b}}var c,u,N=u+4|0,I=Me[N>>2],P=0==(3&I|0);do if(P)var D=0;else{var L=I&-8;if(L>>>0<=(l+16|0)>>>0){var D=0;break}var F=L-l|0;Se[N>>2]=l|1&I|2,Se[u+(4|l)>>2]=3|F;var X=u+(4|L)|0,j=1|Se[X>>2];Se[X>>2]=j;var D=l+(u+8)|0}while(0);var D;0!=(0|c)&&va(c),0!=(0|D)&&va(D);var t=u+8|0}else{var U=Je();Se[U>>2]=12;var t=0}}while(0);var t;return t}function sa(r,a,e,i){var v,t;0==(0|Se[ti>>2])&&ba();var f=0==(0|i),_=0==(0|r);do{if(f){if(_){var s=Jr(0),n=s;t=30;break}var o=r<<2;if(o>>>0<11){var l=0,b=16;t=9;break}var l=0,b=o+11&-8;t=9;break}if(_){var n=i;t=30;break}var l=i,b=0;t=9;break}while(0);do if(9==t){var b,l,k=0==(1&e|0);r:do if(k){if(_){var u=0,c=0;break}for(var h=0,d=0;;){var d,h,w=Me[a+(d<<2)>>2];if(w>>>0<11)var p=16;else var p=w+11&-8;var p,E=p+h|0,A=d+1|0;if((0|A)==(0|r)){var u=0,c=E;break r}var h=E,d=A}}else{var g=Me[a>>2];if(g>>>0<11)var y=16;else var y=g+11&-8;var y,u=y,c=y*r|0}while(0);var c,u,m=Jr(b-4+c|0);if(0==(0|m)){var n=0;break}var S=m-8|0,M=Se[m-4>>2]&-8;if(0!=(2&e|0)){var C=-4-b+M|0;Fa(m,0,C,1)}if(0==(0|l)){var R=m+c|0,T=M-c|3;Se[m+(c-4)>>2]=T;var O=R,v=O>>2,N=c}else var O=l,v=O>>2,N=M;var N,O;Se[v]=m;var I=r-1|0,P=0==(0|I);r:do if(P)var D=S,L=N;else if(0==(0|u))for(var F=S,X=N,j=0;;){var j,X,F,U=Me[a+(j<<2)>>2];if(U>>>0<11)var x=16;else var x=U+11&-8;var x,z=X-x|0;Se[F+4>>2]=3|x;var V=F+x|0,B=j+1|0;if(Se[(B<<2>>2)+v]=x+(F+8)|0,(0|B)==(0|I)){var D=V,L=z;break r}var F=V,X=z,j=B}else for(var H=3|u,K=u+8|0,Y=S,G=N,W=0;;){var W,G,Y,Z=G-u|0;Se[Y+4>>2]=H;var Q=Y+u|0,q=W+1|0;if(Se[(q<<2>>2)+v]=Y+K|0,(0|q)==(0|I)){var D=Q,L=Z;break r}var Y=Q,G=Z,W=q}while(0);var L,D;Se[D+4>>2]=3|L;var n=O}while(0);var n;return n}function na(r){var a=r>>2;0==(0|Se[ti>>2])&&ba();var e=Me[vi+24>>2];if(0==(0|e))var i=0,v=0,t=0,f=0,_=0,s=0,n=0;else{for(var o=Me[vi+12>>2],l=o+40|0,b=vi+444|0,k=l,u=l,c=1;;){var c,u,k,b,h=Me[b>>2],d=h+8|0;if(0==(7&d|0))var w=0;else var w=7&-d;for(var w,p=b+4|0,E=h+w|0,A=c,g=u,y=k;;){var y,g,A,E;if(E>>>0>>0)break;if(E>>>0>=(h+Se[p>>2]|0)>>>0|(0|E)==(0|e))break;var m=Se[E+4>>2];if(7==(0|m))break;var S=m&-8,M=S+y|0;if(1==(3&m|0))var C=A+1|0,R=S+g|0;else var C=A,R=g;var R,C,E=E+S|0,A=C,g=R,y=M}var T=Me[b+8>>2];if(0==(0|T))break;var b=T,k=y,u=g,c=A}var O=Se[vi+432>>2],i=y,v=A,t=o,f=g,_=O-y|0,s=Se[vi+436>>2],n=O-g|0}var n,s,_,f,t,v,i;Se[a]=i,Se[a+1]=v,Se[a+2]=0,Se[a+3]=0,Se[a+4]=_,Se[a+5]=s,Se[a+6]=0,Se[a+7]=n,Se[a+8]=f,Se[a+9]=t}function oa(){0==(0|Se[ti>>2])&&ba();var r=Me[vi+24>>2],a=0==(0|r);r:do if(a)var e=0,i=0,v=0;else for(var t=Se[vi+436>>2],f=Me[vi+432>>2],_=vi+444|0,s=f-40-Se[vi+12>>2]|0;;){var s,_,n=Me[_>>2],o=n+8|0;if(0==(7&o|0))var l=0;else var l=7&-o;for(var l,b=_+4|0,k=n+l|0,u=s;;){var u,k;if(k>>>0>>0)break;if(k>>>0>=(n+Se[b>>2]|0)>>>0|(0|k)==(0|r))break;var c=Se[k+4>>2];if(7==(0|c))break;var h=c&-8,d=1==(3&c|0)?h:0,w=u-d|0,k=k+h|0,u=w}var p=Me[_+8>>2];if(0==(0|p)){var e=t,i=f,v=u;break r}var _=p,s=u}while(0);var v,i,e,E=Se[Se[qe>>2]+12>>2],A=(Qa(E,0|He.__str339,(ne=Oe,Oe+=4,Se[ne>>2]=e,ne)),Se[Se[qe>>2]+12>>2]),g=(Qa(A,0|He.__str1340,(ne=Oe,Oe+=4,Se[ne>>2]=i,ne)),Se[Se[qe>>2]+12>>2]);Qa(g,0|He.__str2341,(ne=Oe,Oe+=4,Se[ne>>2]=v,ne))}function la(r,a){var e,i,v,t=a>>>0>4294967231;r:do{if(!t){var f=r-8|0,_=f,i=(r-4|0)>>2,s=Me[i],n=s&-8,o=n-8|0,l=r+o|0,b=f>>>0>2]>>>0;do if(!b){var k=3&s;if(!(1!=(0|k)&(0|o)>-8))break;var e=(r+(n-4)|0)>>2;if(0==(1&Se[e]|0))break;if(a>>>0<11)var u=16;else var u=a+11&-8;var u,c=0==(0|k);do{if(c){var h=ka(_,u),d=0,w=h;v=17;break}if(n>>>0>>0){if((0|l)!=(0|Se[vi+24>>2])){v=21;break}var p=Se[vi+12>>2]+n|0;if(p>>>0<=u>>>0){v=21;break}var E=p-u|0,A=r+(u-8)|0;Se[i]=u|1&s|2;var g=1|E;Se[r+(u-4)>>2]=g,Se[vi+24>>2]=A,Se[vi+12>>2]=E;var d=0,w=_;v=17;break}var y=n-u|0;if(y>>>0<=15){var d=0,w=_;v=17;break}Se[i]=u|1&s|2,Se[r+(u-4)>>2]=3|y;var m=1|Se[e];Se[e]=m;var d=r+u|0,w=_;v=17;break}while(0);do if(17==v){var w,d;if(0==(0|w))break;0!=(0|d)&&va(d);var S=w+8|0;break r}while(0);var M=Jr(a);if(0==(0|M)){var S=0;break r}var C=0==(3&Se[i]|0)?8:4,R=n-C|0,T=R>>>0>>0?R:a;Pa(M,r,T,1),va(r);var S=M;break r}while(0);throw Ka(),\"Reached an unreachable!\"}var O=Je();Se[O>>2]=12;var S=0}while(0);var S;return S}function ba(){if(0==(0|Se[ti>>2])){var r=qa(8);if(0!=(r-1&r|0))throw Ka(),\"Reached an unreachable!\";Se[ti+8>>2]=r,Se[ti+4>>2]=r,Se[ti+12>>2]=-1,Se[ti+16>>2]=2097152,Se[ti+20>>2]=0,Se[vi+440>>2]=0;var a=$a(0);Se[ti>>2]=a&-16^1431655768}}function ka(r,a){var e=Se[r+4>>2]&-8,i=a>>>0<256;do if(i)var v=0;else{if(e>>>0>=(a+4|0)>>>0&&(e-a|0)>>>0<=Se[ti+8>>2]<<1>>>0){var v=r;break}var v=0}while(0);var v;return v}function ua(r){for(var a,e=vi+444|0,a=e>>2;;){var e,i=Me[a];if(i>>>0<=r>>>0&&(i+Se[a+1]|0)>>>0>r>>>0){var v=e;break}var t=Me[a+2];if(0==(0|t)){var v=0;break}var e=t,a=e>>2}var v;return v}function ca(r,a){var e=r,i=r+8|0;if(0==(7&i|0))var v=0;else var v=7&-i;var v,t=a-v|0;Se[vi+24>>2]=e+v|0,Se[vi+12>>2]=t,Se[v+(e+4)>>2]=1|t,Se[a+(e+4)>>2]=40;var f=Se[ti+16>>2];Se[vi+28>>2]=f}function ha(){for(var r=0;;){var r,a=r<<1,e=(a<<2)+vi+40|0;Se[vi+(a+3<<2)+40>>2]=e,Se[vi+(a+2<<2)+40>>2]=e;var i=r+1|0;if(32==(0|i))break;var r=i}}function da(r,a,e){var i,v,t,f,_=a>>2,s=r>>2,n=r+8|0;if(0==(7&n|0))var o=0;else var o=7&-n;var o,l=a+8|0;if(0==(7&l|0))var b=0,t=b>>2;else var b=7&-l,t=b>>2;var b,k=a+b|0,u=k,c=o+e|0,v=c>>2,h=r+c|0,d=h,w=k-(r+o)-e|0;Se[(o+4>>2)+s]=3|e;var p=(0|u)==(0|Se[vi+24>>2]);r:do if(p){var E=Se[vi+12>>2]+w|0;Se[vi+12>>2]=E,Se[vi+24>>2]=d;var A=1|E;Se[v+(s+1)]=A}else if((0|u)==(0|Se[vi+20>>2])){var g=Se[vi+8>>2]+w|0;Se[vi+8>>2]=g,Se[vi+20>>2]=d;var y=1|g;Se[v+(s+1)]=y;var m=r+g+c|0;Se[m>>2]=g}else{var S=Me[t+(_+1)];if(1==(3&S|0)){var M=S&-8,C=S>>>3,R=S>>>0<256;a:do if(R){var T=Me[((8|b)>>2)+_],O=Me[t+(_+3)];if((0|T)!=(0|O)){var N=((S>>>2&1073741822)<<2)+vi+40|0,I=(0|T)==(0|N);do{if(!I){if(T>>>0>2]>>>0){f=18;break}f=15;break}f=15}while(0);do if(15==f){if((0|O)!=(0|N)&&O>>>0>2]>>>0)break;Se[T+12>>2]=O,Se[O+8>>2]=T;break a}while(0);throw Ka(),\"Reached an unreachable!\"}var P=Se[vi>>2]&(1<>2]=P}else{var D=k,L=Me[((24|b)>>2)+_],F=Me[t+(_+3)],X=(0|F)==(0|D);do if(X){var j=16|b,U=j+(a+4)|0,x=Se[U>>2];if(0==(0|x)){var z=a+j|0,V=Se[z>>2];if(0==(0|V)){var B=0,i=B>>2;break}var H=z,K=V}else{var H=U,K=x;f=25}for(;;){var K,H,Y=K+20|0,G=Se[Y>>2];if(0==(0|G)){var W=K+16|0,Z=Me[W>>2];if(0==(0|Z))break;var H=W,K=Z}else var H=Y,K=G}if(H>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[H>>2]=0;var B=K,i=B>>2}else{var Q=Me[((8|b)>>2)+_];if(Q>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[Q+12>>2]=F,Se[F+8>>2]=Q;var B=F,i=B>>2}while(0);var B;if(0==(0|L))break;var q=b+(a+28)|0,$=(Se[q>>2]<<2)+vi+304|0,J=(0|D)==(0|Se[$>>2]);do{if(J){if(Se[$>>2]=B,0!=(0|B))break;var rr=Se[vi+4>>2]&(1<>2]^-1);Se[vi+4>>2]=rr;break a}if(L>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";var ar=L+16|0;if((0|Se[ar>>2])==(0|D)?Se[ar>>2]=B:Se[L+20>>2]=B,0==(0|B))break a}while(0);if(B>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[i+6]=L;var er=16|b,ir=Me[(er>>2)+_];if(0!=(0|ir)){if(ir>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[i+4]=ir,Se[ir+24>>2]=B}var vr=Me[(er+4>>2)+_];if(0==(0|vr))break;if(vr>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[i+5]=vr,Se[vr+24>>2]=B}while(0);var tr=a+(M|b)|0,fr=M+w|0}else var tr=u,fr=w;var fr,tr,_r=tr+4|0,sr=Se[_r>>2]&-2;if(Se[_r>>2]=sr,Se[v+(s+1)]=1|fr,Se[(fr>>2)+s+v]=fr,fr>>>0<256){var nr=fr>>>2&1073741822,or=(nr<<2)+vi+40|0,lr=Me[vi>>2],br=1<<(fr>>>3),kr=0==(lr&br|0);do{if(!kr){var ur=(nr+2<<2)+vi+40|0,cr=Me[ur>>2];if(cr>>>0>=Me[vi+16>>2]>>>0){var hr=cr,dr=ur;break}throw Ka(),\"Reached an unreachable!\"}Se[vi>>2]=lr|br;var hr=or,dr=(nr+2<<2)+vi+40|0}while(0);var dr,hr;Se[dr>>2]=d,Se[hr+12>>2]=d,Se[v+(s+2)]=hr,Se[v+(s+3)]=or}else{var wr=h,pr=fr>>>8,Er=0==(0|pr);do if(Er)var Ar=0;else{if(fr>>>0>16777215){var Ar=31;break}var gr=(pr+1048320|0)>>>16&8,yr=pr<>>16&4,Sr=yr<>>16&2,Cr=14-(mr|gr|Mr)+(Sr<>>15)|0,Ar=fr>>>((Cr+7|0)>>>0)&1|Cr<<1}while(0);var Ar,Rr=(Ar<<2)+vi+304|0;Se[v+(s+7)]=Ar;var Tr=c+(r+16)|0;Se[v+(s+5)]=0,Se[Tr>>2]=0;var Or=Se[vi+4>>2],Nr=1<>2]=Ir,Se[Rr>>2]=wr,Se[v+(s+6)]=Rr,Se[v+(s+3)]=wr,Se[v+(s+2)]=wr}else{if(31==(0|Ar))var Pr=0;else var Pr=25-(Ar>>>1)|0;for(var Pr,Dr=fr<>2];;){var Lr,Dr;if((Se[Lr+4>>2]&-8|0)==(0|fr)){var Fr=Lr+8|0,Xr=Me[Fr>>2],jr=Me[vi+16>>2],Ur=Lr>>>0>>0;do if(!Ur){if(Xr>>>0>>0)break;Se[Xr+12>>2]=wr,Se[Fr>>2]=wr,Se[v+(s+2)]=Xr,Se[v+(s+3)]=Lr,Se[v+(s+6)]=0;break r}while(0);throw Ka(),\"Reached an unreachable!\"}var xr=(Dr>>>31<<2)+Lr+16|0,zr=Me[xr>>2];if(0==(0|zr)){if(xr>>>0>=Me[vi+16>>2]>>>0){Se[xr>>2]=wr,Se[v+(s+6)]=Lr,Se[v+(s+3)]=wr,Se[v+(s+2)]=wr;break r}throw Ka(),\"Reached an unreachable!\"}var Dr=Dr<<1,Lr=zr}}}}while(0);return r+(8|o)|0}function wa(r){return 0|He.__str3342}function pa(r){return 0|He.__str14343}function Ea(r){Se[r>>2]=si+8|0}function Aa(r){0!=(0|r)&&va(r)}function ga(r){ya(r);var a=r;Aa(a)}function ya(r){var a=0|r;Ye(a)}function ma(r){var a=0|r;Ea(a),Se[r>>2]=ni+8|0}function Sa(r){var a=0|r;ya(a);var e=r;Aa(e)}function Ma(r,a){var e,i,v=Me[vi+24>>2],i=v>>2,t=v,f=ua(t),_=Se[f>>2],s=Se[f+4>>2],n=_+s|0,o=_+(s-39)|0;if(0==(7&o|0))var l=0;else var l=7&-o;var l,b=_+(s-47)+l|0,k=b>>>0<(v+16|0)>>>0?t:b,u=k+8|0,e=u>>2,c=u,h=r,d=a-40|0;ca(h,d);var w=k+4|0;Se[w>>2]=27,Se[e]=Se[vi+444>>2],Se[e+1]=Se[vi+448>>2],Se[e+2]=Se[vi+452>>2],Se[e+3]=Se[vi+456>>2],Se[vi+444>>2]=r,Se[vi+448>>2]=a,Se[vi+456>>2]=0,Se[vi+452>>2]=c;var p=k+28|0;Se[p>>2]=7;var E=(k+32|0)>>>0>>0;r:do if(E)for(var A=p;;){var A,g=A+4|0;if(Se[g>>2]=7,(A+8|0)>>>0>=n>>>0)break r;var A=g}while(0);var y=(0|k)==(0|t);r:do if(!y){var m=k-v|0,S=t+m|0,M=m+(t+4)|0,C=Se[M>>2]&-2;Se[M>>2]=C;var R=1|m;Se[i+1]=R;var T=S;if(Se[T>>2]=m,m>>>0<256){var O=m>>>2&1073741822,N=(O<<2)+vi+40|0,I=Me[vi>>2],P=1<<(m>>>3),D=0==(I&P|0);do{if(!D){var L=(O+2<<2)+vi+40|0,F=Me[L>>2];if(F>>>0>=Me[vi+16>>2]>>>0){var X=F,j=L;break}throw Ka(),\"Reached an unreachable!\"}var U=I|P;Se[vi>>2]=U;var X=N,j=(O+2<<2)+vi+40|0}while(0);var j,X;Se[j>>2]=v,Se[X+12>>2]=v,Se[i+2]=X,Se[i+3]=N}else{var x=v,z=m>>>8,V=0==(0|z);do if(V)var B=0;else{if(m>>>0>16777215){var B=31;break}var H=(z+1048320|0)>>>16&8,K=z<>>16&4,G=K<>>16&2,Z=14-(Y|H|W)+(G<>>15)|0,B=m>>>((Z+7|0)>>>0)&1|Z<<1}while(0);var B,Q=(B<<2)+vi+304|0;Se[i+7]=B,Se[i+5]=0,Se[i+4]=0;var q=Se[vi+4>>2],$=1<>2]=J,Se[Q>>2]=x,Se[i+6]=Q,Se[i+3]=v,Se[i+2]=v}else{if(31==(0|B))var rr=0;else var rr=25-(B>>>1)|0;for(var rr,ar=m<>2];;){var er,ar;if((Se[er+4>>2]&-8|0)==(0|m)){var ir=er+8|0,vr=Me[ir>>2],tr=Me[vi+16>>2],fr=er>>>0>>0;do if(!fr){if(vr>>>0>>0)break;Se[vr+12>>2]=x,Se[ir>>2]=x,Se[i+2]=vr,Se[i+3]=er,Se[i+6]=0;break r}while(0);throw Ka(),\"Reached an unreachable!\"}var _r=(ar>>>31<<2)+er+16|0,sr=Me[_r>>2];if(0==(0|sr)){if(_r>>>0>=Me[vi+16>>2]>>>0){Se[_r>>2]=x,Se[i+6]=er,Se[i+3]=v,Se[i+2]=v;break r}throw Ka(),\"Reached an unreachable!\"}var ar=ar<<1,er=sr}}}}while(0)}function Ca(r){return d(r)}function Ra(r,a){var e=0;do Ae[r+e]=Ae[a+e],e++;while(0!=Ae[a+e-1]);return r}function Ta(){var r=Ta;return r.LLVM_SAVEDSTACKS||(r.LLVM_SAVEDSTACKS=[]),r.LLVM_SAVEDSTACKS.push(le.stackSave()),r.LLVM_SAVEDSTACKS.length-1}function Oa(r){var a=Ta,e=a.LLVM_SAVEDSTACKS[r];a.LLVM_SAVEDSTACKS.splice(r,1),le.stackRestore(e)}function Na(r,a,e){for(var i=0;it?1:-1;i++}return 0}function Ia(r,a){var e=Ca(r),i=0;do Ae[r+e+i]=Ae[a+i],i++;while(0!=Ae[a+i-1]);return r}function Pa(r,a,e,i){if(e>=20&&a%2==r%2)if(a%4==r%4){for(var v=a+e;a%4;)Ae[r++]=Ae[a++];for(var t=a>>2,f=r>>2,_=v>>2;t<_;)Se[f++]=Se[t++];for(a=t<<2,r=f<<2;a>1,n=r>>1,o=v>>1;st?1:-1}return 0}function Fa(r,a,e,i){if(e>=20){for(var v=r+e;r%4;)Ae[r++]=a;a<0&&(a+=256);for(var t=r>>2,f=v>>2,_=a|a<<8|a<<16|a<<24;t>2],xe[1]=Se[a+_+4>>2],e=ze[0]):\"i64\"==r?e=[Se[a+_>>2],Se[a+_+4>>2]]:(r=\"i32\",e=Se[a+_>>2]),_+=le.getNativeFieldSize(r),e}for(var i,v,t,f=r,_=0,s=[];;){var n=f;if(i=Ae[f],0===i)break;if(v=Ae[f+1],i==\"%\".charCodeAt(0)){var o=!1,l=!1,b=!1,k=!1;r:for(;;){switch(v){case\"+\".charCodeAt(0):o=!0;break;case\"-\".charCodeAt(0):l=!0;break;case\"#\".charCodeAt(0):b=!0;break;case\"0\".charCodeAt(0):if(k)break r;k=!0;break;default:break r}f++,v=Ae[f+1]}var u=0;if(v==\"*\".charCodeAt(0))u=e(\"i32\"),f++,v=Ae[f+1];else for(;v>=\"0\".charCodeAt(0)&&v<=\"9\".charCodeAt(0);)u=10*u+(v-\"0\".charCodeAt(0)),f++,v=Ae[f+1];var c=!1;if(v==\".\".charCodeAt(0)){var h=0;if(c=!0,f++,v=Ae[f+1],v==\"*\".charCodeAt(0))h=e(\"i32\"),f++;else for(;;){var d=Ae[f+1];if(d<\"0\".charCodeAt(0)||d>\"9\".charCodeAt(0))break;h=10*h+(d-\"0\".charCodeAt(0)),f++}v=Ae[f+1]}else var h=6;var E;switch(String.fromCharCode(v)){case\"h\":var A=Ae[f+2];A==\"h\".charCodeAt(0)?(f++,E=1):E=2;break;case\"l\":var A=Ae[f+2];A==\"l\".charCodeAt(0)?(f++,E=8):E=4;break;case\"L\":case\"q\":case\"j\":E=8;break;case\"z\":case\"t\":case\"I\":E=4;break;default:E=null}if(E&&f++,v=Ae[f+1],[\"d\",\"i\",\"u\",\"o\",\"x\",\"X\",\"p\"].indexOf(String.fromCharCode(v))!=-1){var m=v==\"d\".charCodeAt(0)||v==\"i\".charCodeAt(0);E=E||4;var t=e(\"i\"+8*E);if(8==E&&(t=le.makeBigInt(t[0],t[1],v==\"u\".charCodeAt(0))),E<=4){var S=Math.pow(256,E)-1;t=(m?y:g)(t&S,8*E)}var M,C=Math.abs(t),R=\"\";if(v==\"d\".charCodeAt(0)||v==\"i\".charCodeAt(0))M=y(t,8*E,1).toString(10);else if(v==\"u\".charCodeAt(0))M=g(t,8*E,1).toString(10),t=Math.abs(t);else if(v==\"o\".charCodeAt(0))M=(b?\"0\":\"\")+C.toString(8);else if(v==\"x\".charCodeAt(0)||v==\"X\".charCodeAt(0)){if(R=b?\"0x\":\"\",t<0){t=-t,M=(C-1).toString(16);for(var T=[],O=0;OP&&P>=-4?(v=(v==\"g\".charCodeAt(0)?\"f\":\"F\").charCodeAt(0),h-=P+1):(v=(v==\"g\".charCodeAt(0)?\"e\":\"E\").charCodeAt(0),h--),I=Math.min(h,20)}v==\"e\".charCodeAt(0)||v==\"E\".charCodeAt(0)?(M=t.toExponential(I),/[eE][-+]\\\\d$/.test(M)&&(M=M.slice(0,-1)+\"0\"+M.slice(-1))):v!=\"f\".charCodeAt(0)&&v!=\"F\".charCodeAt(0)||(M=t.toFixed(I));var D=M.split(\"e\");if(N&&!b)for(;D[0].length>1&&D[0].indexOf(\".\")!=-1&&(\"0\"==D[0].slice(-1)||\".\"==D[0].slice(-1));)D[0]=D[0].slice(0,-1);else for(b&&M.indexOf(\".\")==-1&&(D[0]+=\".\");h>I++;)D[0]+=\"0\";M=D[0]+(D.length>1?\"e\"+D[1]:\"\"),v==\"E\".charCodeAt(0)&&(M=M.toUpperCase()),o&&t>=0&&(M=\"+\"+M)}else M=(t<0?\"-\":\"\")+\"inf\",k=!1;for(;M.lengthh&&(L=L.slice(0,h))):L=p(\"(null)\",!0),!l)for(;L.length0;)s.push(\" \".charCodeAt(0));l||s.push(e(\"i8\"))}else if(v==\"n\".charCodeAt(0)){var X=e(\"i32*\");Se[X>>2]=s.length}else if(v==\"%\".charCodeAt(0))s.push(i);else for(var O=n;O=\"0\".charCodeAt(0)&&r<=\"9\".charCodeAt(0)}function Ha(r){for(var a;(a=Ae[r])&&Va(a);)r++;if(!a||!Ba(a))return 0;for(var e=r;(a=Ae[e])&&Ba(a);)e++;return Math.floor(Number(s(r).substr(0,e-r)))}function Ka(r){throw ke=!0,\"ABORT: \"+r+\", at \"+(new Error).stack}function Ya(r){return Ya.ret||(Ya.ret=_([0],\"i32\",we)),Se[Ya.ret>>2]=r,r}function Ga(r,a,e,i){var v=$e.streams[r];if(!v||v.object.isDevice)return Ya(Ge.EBADF),-1;if(v.isWrite){if(v.object.isFolder)return Ya(Ge.EISDIR),-1;if(e<0||i<0)return Ya(Ge.EINVAL),-1;for(var t=v.object.contents;t.length>2]=a),a}function Ja(){return Ya.ret}function re(r){var a=re;a.called||(Ie=o(Ie),a.called=!0);var e=Ie;return 0!=r&&le.staticAlloc(r),e}function ae(){return Se[ae.buf>>2]}function ee(r){r=r||Module.arguments,k();var a=null;return Module._main&&(a=Module.callMain(r),Module.noExitRuntime||u()),a}var ie=[],ve=false,te=\"object\"==typeof window,fe=\"function\"==typeof importScripts,_e=!te&&!ve&&!fe;if(ve){print=function(r){process.stdout.write(r+\"\\\\n\")},printErr=function(r){process.stderr.write(r+\"\\\\n\")};var se=require(\"fs\");read=function(r){var a=se.readFileSync(r).toString();return a||\"/\"==r[0]||(r=__dirname.split(\"/\").slice(0,-1).join(\"/\")+\"/src/\"+r,a=se.readFileSync(r).toString()),a},load=function(a){r(read(a))},ie=process.argv.slice(2)}else if(_e)this.read||(this.read=function(r){snarf(r)}),\"undefined\"!=typeof scriptArgs?ie=scriptArgs:\"undefined\"!=typeof arguments&&(ie=arguments);else if(te)this.print=printErr=function(r){console.log(r)},this.read=function(r){var a=new XMLHttpRequest;return a.open(\"GET\",r,!1),a.send(null),a.responseText},this.arguments&&(ie=arguments);else{if(!fe)throw\"Unknown runtime environment. Where are we?\";this.load=importScripts}\"undefined\"==typeof load&&\"undefined\"!=typeof read&&(this.load=function(a){r(read(a))}),\"undefined\"==typeof printErr&&(this.printErr=function(){}),\"undefined\"==typeof print&&(this.print=printErr);try{this.Module=Module}catch(r){this.Module=Module={}}Module.arguments||(Module.arguments=ie),Module.print&&(print=Module.print);var ne,oe,le={stackSave:function(){return Oe},stackRestore:function(r){Oe=r},forceAlign:function(r,a){if(a=a||4,1==a)return r;if(isNumber(r)&&isNumber(a))return Math.ceil(r/a)*a;if(isNumber(a)&&isPowerOfTwo(a)){var e=log2(a);return\"((((\"+r+\")+\"+(a-1)+\")>>\"+e+\")<<\"+e+\")\"}return\"Math.ceil((\"+r+\")/\"+a+\")*\"+a},isNumberType:function(r){return r in le.INT_TYPES||r in le.FLOAT_TYPES},isPointerType:function(r){return\"*\"==r[r.length-1]},isStructType:function(r){return!isPointerType(r)&&(!!/^\\\\[\\\\d+\\\\ x\\\\ (.*)\\\\]/.test(r)||(!!/?/.test(r)||\"%\"==r[0]))},INT_TYPES:{i1:0,i8:0,i16:0,i32:0,i64:0},FLOAT_TYPES:{float:0,double:0},bitshift64:function(r,e,i,v){var t=Math.pow(2,v)-1;if(v<32)switch(i){case\"shl\":return[r<>>32-v];case\"ashr\":return[(r>>>v|(e&t)<<32-v)>>0>>>0,e>>v>>>0];case\"lshr\":return[(r>>>v|(e&t)<<32-v)>>>0,e>>>v]}else if(32==v)switch(i){case\"shl\":return[0,r];case\"ashr\":return[e,(0|e)<0?t:0];case\"lshr\":return[e,0]}else switch(i){case\"shl\":return[0,r<>v-32>>>0,(0|e)<0?t:0];case\"lshr\":return[e>>>v-32,0]}a(\"unknown bitshift64 op: \"+[value,i,v])},or64:function(r,a){var e=0|r|(0|a),i=4294967296*(Math.round(r/4294967296)|Math.round(a/4294967296));return e+i},and64:function(r,a){var e=(0|r)&(0|a),i=4294967296*(Math.round(r/4294967296)&Math.round(a/4294967296));return e+i},xor64:function(r,a){var e=(0|r)^(0|a),i=4294967296*(Math.round(r/4294967296)^Math.round(a/4294967296));return e+i},getNativeTypeSize:function(r,a){if(1==le.QUANTUM_SIZE)return 1;var i={\"%i1\":1,\"%i8\":1,\"%i16\":2,\"%i32\":4,\"%i64\":8,\"%float\":4,\"%double\":8}[\"%\"+r];if(!i)if(\"*\"==r[r.length-1])i=le.QUANTUM_SIZE;else if(\"i\"==r[0]){var v=parseInt(r.substr(1));e(v%8==0),i=v/8}return i},getNativeFieldSize:function(r){return Math.max(le.getNativeTypeSize(r),le.QUANTUM_SIZE)},dedup:function(r,a){var e={};return a?r.filter(function(r){return!e[r[a]]&&(e[r[a]]=!0,!0)}):r.filter(function(r){return!e[r]&&(e[r]=!0,!0)})},set:function(){for(var r=\"object\"==typeof arguments[0]?arguments[0]:arguments,a={},e=0;e=0&&a.push(f-e),e=f,f}),r.flatSize=le.alignMemory(r.flatSize,r.alignSize),0==a.length?r.flatFactor=r.flatSize:1==le.dedup(a).length&&(r.flatFactor=a[0]),r.needsFlattening=1!=r.flatFactor,r.flatIndexes},generateStructInfo:function(r,a,i){var v,t;if(a){if(i=i||0,v=(\"undefined\"==typeof Types?le.typeInfo:Types.types)[a],!v)return null;e(v.fields.length===r.length,\"Number of named fields must match the type for \"+a),t=v.flatIndexes}else{var v={fields:r.map(function(r){return r[0]})};t=le.calculateStructAlignment(v)}var f={__size__:v.flatSize};return a?r.forEach(function(r,a){if(\"string\"==typeof r)f[r]=t[a]+i;else{var e;for(var _ in r)e=_;f[e]=le.generateStructInfo(r[e],v.fields[a],t[a])}}):r.forEach(function(r,a){f[r[1]]=t[a]}),f},stackAlloc:function(r){var a=Oe;return Oe+=r,Oe=Oe+3>>2<<2,a},staticAlloc:function(r){var a=Ie;return Ie+=r,Ie=Ie+3>>2<<2,Ie>=Le&&l(),a},alignMemory:function(r,a){var e=r=Math.ceil(r/(a?a:4))*(a?a:4);return e},makeBigInt:function(r,a,e){var i=e?(r>>>0)+4294967296*(a>>>0):(r>>>0)+4294967296*(0|a);return i},QUANTUM_SIZE:4,__dummy__:0},be={MAX_ALLOWED:0,corrections:0,sigs:{},note:function(r,e,i){e||(this.corrections++,this.corrections>=this.MAX_ALLOWED&&a(\"\\\\n\\\\nToo many corrections!\"))},print:function(){}},ke=!1,ue=0,ce=this;Module.ccall=i,Module.setValue=t,Module.getValue=f;var he=0,de=1,we=2;Module.ALLOC_NORMAL=he,Module.ALLOC_STACK=de,Module.ALLOC_STATIC=we,Module.allocate=_,Module.Pointer_stringify=s,Module.Array_stringify=n;var pe,Ee,Ae,ge,ye,me,Se,Me,Ce,Re,Te,Oe,Ne,Ie,Pe=4096,De=Module.TOTAL_STACK||5242880,Le=Module.TOTAL_MEMORY||10485760;Module.FAST_MEMORY||2097152;e(!!(Int32Array&&Float64Array&&new Int32Array(1).subarray&&new Int32Array(1).set),\"Cannot fallback to non-typed array case: Code is too specialized\");var Fe=new ArrayBuffer(Le);Ae=new Int8Array(Fe),ye=new Int16Array(Fe),Se=new Int32Array(Fe),ge=new Uint8Array(Fe),me=new Uint16Array(Fe),Me=new Uint32Array(Fe),Ce=new Float32Array(Fe),Re=new Float64Array(Fe),Se[0]=255,e(255===ge[0]&&0===ge[3],\"Typed arrays 2 must be run on a little-endian system\");var Xe=p(\"(null)\");Ie=Xe.length;for(var je=0;je>2)),ze=(Ce.subarray(Ue>>2),Re.subarray(Ue>>3));Ne=Ue+8,Ie=o(Ne);var Ve=[],Be=[];Module.Array_copy=c,Module.TypedArray_copy=h,Module.String_len=d,Module.String_copy=w,Module.intArrayFromString=p,Module.intArrayToString=E,Module.writeStringToMemory=A;var He=[],Ke=0;O.X=1,N.X=1,V.X=1,H.X=1,G.X=1,W.X=1,q.X=1,$.X=1,rr.X=1,ar.X=1,er.X=1,vr.X=1,nr.X=1,or.X=1,kr.X=1,hr.X=1,Ar.X=1,Sr.X=1,Tr.X=1,Ir.X=1,Pr.X=1,Dr.X=1,Lr.X=1,Fr.X=1,Xr.X=1,zr.X=1,Vr.X=1,Br.X=1,Gr.X=1,$r.X=1,Module._malloc=Jr,Jr.X=1,ra.X=1,aa.X=1,ea.X=1,ia.X=1,Module._free=va,va.X=1,_a.X=1,sa.X=1,na.X=1,oa.X=1,la.X=1,da.X=1,Ma.X=1;var Ye,Ge={E2BIG:7,EACCES:13,EADDRINUSE:98,EADDRNOTAVAIL:99,EAFNOSUPPORT:97,EAGAIN:11,EALREADY:114,EBADF:9,EBADMSG:74,EBUSY:16,ECANCELED:125,ECHILD:10,ECONNABORTED:103,ECONNREFUSED:111,ECONNRESET:104,EDEADLK:35,EDESTADDRREQ:89,EDOM:33,EDQUOT:122,EEXIST:17,EFAULT:14,EFBIG:27,EHOSTUNREACH:113,EIDRM:43,EILSEQ:84,EINPROGRESS:115,EINTR:4,EINVAL:22,EIO:5,EISCONN:106,EISDIR:21,ELOOP:40,EMFILE:24,EMLINK:31,EMSGSIZE:90,EMULTIHOP:72,ENAMETOOLONG:36,ENETDOWN:100,ENETRESET:102,ENETUNREACH:101,ENFILE:23,ENOBUFS:105,ENODATA:61,ENODEV:19,ENOENT:2,ENOEXEC:8,ENOLCK:37,ENOLINK:67,ENOMEM:12,ENOMSG:42,ENOPROTOOPT:92,ENOSPC:28,ENOSR:63,ENOSTR:60,ENOSYS:38,ENOTCONN:107,ENOTDIR:20,ENOTEMPTY:39,ENOTRECOVERABLE:131,ENOTSOCK:88,ENOTSUP:95,ENOTTY:25,ENXIO:6,EOVERFLOW:75,EOWNERDEAD:130,EPERM:1,EPIPE:32,EPROTO:71,EPROTONOSUPPORT:93,EPROTOTYPE:91,ERANGE:34,EROFS:30,ESPIPE:29,ESRCH:3,ESTALE:116,ETIME:62,ETIMEDOUT:110,ETXTBSY:26,EWOULDBLOCK:11,EXDEV:18},We=0,Ze=0,Qe=0,qe=0,$e={currentPath:\"/\",nextInode:2,streams:[null],ignorePermissions:!0,absolutePath:function(r,a){if(\"string\"!=typeof r)return null;void 0===a&&(a=$e.currentPath),r&&\"/\"==r[0]&&(a=\"\");for(var e=a+\"/\"+r,i=e.split(\"/\").reverse(),v=[\"\"];i.length;){var t=i.pop();\"\"==t||\".\"==t||(\"..\"==t?v.length>1&&v.pop():v.push(t))}return 1==v.length?\"/\":v.join(\"/\")},analyzePath:function(r,a,e){var i={isRoot:!1,exists:!1,error:0,name:null,path:null,object:null,parentExists:!1,parentPath:null,parentObject:null};if(r=$e.absolutePath(r),\"/\"==r)i.isRoot=!0,i.exists=i.parentExists=!0,i.name=\"/\",i.path=i.parentPath=\"/\",i.object=i.parentObject=$e.root;else if(null!==r){e=e||0,r=r.slice(1).split(\"/\");for(var v=$e.root,t=[\"\"];r.length;){1==r.length&&v.isFolder&&(i.parentExists=!0,i.parentPath=1==t.length?\"/\":t.join(\"/\"),i.parentObject=v,i.name=r[0]);var f=r.shift();if(!v.isFolder){i.error=Ge.ENOTDIR;break}if(!v.read){i.error=Ge.EACCES;break}if(!v.contents.hasOwnProperty(f)){i.error=Ge.ENOENT;break}if(v=v.contents[f],v.link&&(!a||0!=r.length)){if(e>40){i.error=Ge.ELOOP;break}var _=$e.absolutePath(v.link,t.join(\"/\"));return $e.analyzePath([_].concat(r).join(\"/\"),a,e+1)}t.push(f),0==r.length&&(i.exists=!0,i.path=t.join(\"/\"),i.object=v)}return i}return i},findObject:function(r,a){$e.ensureRoot();var e=$e.analyzePath(r,a);return e.exists?e.object:(Ya(e.error),null)},createObject:function(r,a,e,i,v){if(r||(r=\"/\"),\"string\"==typeof r&&(r=$e.findObject(r)),!r)throw Ya(Ge.EACCES),new Error(\"Parent path must exist.\");if(!r.isFolder)throw Ya(Ge.ENOTDIR),\nnew Error(\"Parent must be a folder.\");if(!r.write&&!$e.ignorePermissions)throw Ya(Ge.EACCES),new Error(\"Parent folder must be writeable.\");if(!a||\".\"==a||\"..\"==a)throw Ya(Ge.ENOENT),new Error(\"Name must not be empty.\");if(r.contents.hasOwnProperty(a))throw Ya(Ge.EEXIST),new Error(\"Can't overwrite object.\");r.contents[a]={read:void 0===i||i,write:void 0!==v&&v,timestamp:Date.now(),inodeNumber:$e.nextInode++};for(var t in e)e.hasOwnProperty(t)&&(r.contents[a][t]=e[t]);return r.contents[a]},createFolder:function(r,a,e,i){var v={isFolder:!0,isDevice:!1,contents:{}};return $e.createObject(r,a,v,e,i)},createPath:function(r,a,e,i){var v=$e.findObject(r);if(null===v)throw new Error(\"Invalid parent.\");for(a=a.split(\"/\").reverse();a.length;){var t=a.pop();t&&(v.contents.hasOwnProperty(t)||$e.createFolder(v,t,e,i),v=v.contents[t])}return v},createFile:function(r,a,e,i,v){return e.isFolder=!1,$e.createObject(r,a,e,i,v)},createDataFile:function(r,a,e,i,v){if(\"string\"==typeof e){for(var t=new Array(e.length),f=0,_=e.length;f<_;++f)t[f]=e.charCodeAt(f);e=t}var s={isDevice:!1,contents:e};return $e.createFile(r,a,s,i,v)},createLazyFile:function(r,a,e,i,v){var t={isDevice:!1,url:e};return $e.createFile(r,a,t,i,v)},createLink:function(r,a,e,i,v){var t={isDevice:!1,link:e};return $e.createFile(r,a,t,i,v)},createDevice:function(r,a,e,i){if(!e&&!i)throw new Error(\"A device must have at least one callback defined.\");var v={isDevice:!0,input:e,output:i};return $e.createFile(r,a,v,Boolean(e),Boolean(i))},forceLoadFile:function(r){if(r.isDevice||r.isFolder||r.link||r.contents)return!0;var a=!0;if(\"undefined\"!=typeof XMLHttpRequest)e(\"Cannot do synchronous binary XHRs in modern browsers. Use --embed-file or --preload-file in emcc\");else{if(\"undefined\"==typeof read)throw new Error(\"Cannot load without read() or XMLHttpRequest.\");try{r.contents=p(read(r.url),!0)}catch(r){a=!1}}return a||Ya(Ge.EIO),a},ensureRoot:function(){$e.root||($e.root={read:!0,write:!0,isFolder:!0,isDevice:!1,timestamp:Date.now(),inodeNumber:1,contents:{}})},init:function(r,a,i){function v(r){null===r||r===\"\\\\n\".charCodeAt(0)?(a.printer(a.buffer.join(\"\")),a.buffer=[]):a.buffer.push(String.fromCharCode(r))}e(!$e.init.initialized,\"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)\"),$e.init.initialized=!0,$e.ensureRoot(),r=r||Module.stdin,a=a||Module.stdout,i=i||Module.stderr;var t=!0,f=!0,s=!0;r||(t=!1,r=function(){if(!r.cache||!r.cache.length){var a;\"undefined\"!=typeof window&&\"function\"==typeof window.prompt?a=window.prompt(\"Input: \"):\"function\"==typeof readline&&(a=readline()),a||(a=\"\"),r.cache=p(a+\"\\\\n\",!0)}return r.cache.shift()}),a||(f=!1,a=v),a.printer||(a.printer=print),a.buffer||(a.buffer=[]),i||(s=!1,i=v),i.printer||(i.printer=print),i.buffer||(i.buffer=[]),$e.createFolder(\"/\",\"tmp\",!0,!0);var n=$e.createFolder(\"/\",\"dev\",!0,!0),o=$e.createDevice(n,\"stdin\",r),l=$e.createDevice(n,\"stdout\",null,a),b=$e.createDevice(n,\"stderr\",null,i);$e.createDevice(n,\"tty\",r,a),$e.streams[1]={path:\"/dev/stdin\",object:o,position:0,isRead:!0,isWrite:!1,isAppend:!1,isTerminal:!t,error:!1,eof:!1,ungotten:[]},$e.streams[2]={path:\"/dev/stdout\",object:l,position:0,isRead:!1,isWrite:!0,isAppend:!1,isTerminal:!f,error:!1,eof:!1,ungotten:[]},$e.streams[3]={path:\"/dev/stderr\",object:b,position:0,isRead:!1,isWrite:!0,isAppend:!1,isTerminal:!s,error:!1,eof:!1,ungotten:[]},We=_([1],\"void*\",we),Ze=_([2],\"void*\",we),Qe=_([3],\"void*\",we),$e.createPath(\"/\",\"dev/shm/tmp\",!0,!0),$e.streams[We]=$e.streams[1],$e.streams[Ze]=$e.streams[2],$e.streams[Qe]=$e.streams[3],qe=_([_([0,0,0,0,We,0,0,0,Ze,0,0,0,Qe,0,0,0],\"void*\",we)],\"void*\",we)},quit:function(){$e.init.initialized&&($e.streams[2]&&$e.streams[2].object.output.buffer.length>0&&$e.streams[2].object.output(\"\\\\n\".charCodeAt(0)),$e.streams[3]&&$e.streams[3].object.output.buffer.length>0&&$e.streams[3].object.output(\"\\\\n\".charCodeAt(0)))}},Je=Ja;Ve.unshift({func:function(){$e.ignorePermissions=!1,$e.init.initialized||$e.init()}}),Be.push({func:function(){$e.quit()}}),Ya(0),ae.buf=_(12,\"void*\",we),Module.callMain=function(r){function a(){for(var r=0;r<3;r++)i.push(0)}var e=r.length+1,i=[_(p(\"/bin/this.program\"),\"i8\",we)];a();for(var v=0;v>2]=0|He.__str,Se[ri+4>>2]=0|He.__str1,Se[ri+16>>2]=0|He.__str2,Se[ri+20>>2]=0|He.__str3,Se[ri+32>>2]=0|He.__str4,Se[ri+36>>2]=0|He.__str5,Se[ri+48>>2]=0|He.__str6,Se[ri+52>>2]=0|He.__str7,Se[ri+64>>2]=0|He.__str8,Se[ri+68>>2]=0|He.__str7,Se[ri+80>>2]=0|He.__str9,Se[ri+84>>2]=0|He.__str10,Se[ri+96>>2]=0|He.__str11,Se[ri+100>>2]=0|He.__str12,Se[ri+112>>2]=0|He.__str13,Se[ri+116>>2]=0|He.__str14,Se[ri+128>>2]=0|He.__str15,Se[ri+132>>2]=0|He.__str16,Se[ri+144>>2]=0|He.__str17,Se[ri+148>>2]=0|He.__str18,Se[ri+160>>2]=0|He.__str19,Se[ri+164>>2]=0|He.__str20,Se[ri+176>>2]=0|He.__str21,Se[ri+180>>2]=0|He.__str22,Se[ri+192>>2]=0|He.__str23,Se[ri+196>>2]=0|He.__str24,Se[ri+208>>2]=0|He.__str25,Se[ri+212>>2]=0|He.__str26,Se[ri+224>>2]=0|He.__str27,Se[ri+228>>2]=0|He.__str28,Se[ri+240>>2]=0|He.__str29,Se[ri+244>>2]=0|He.__str30,Se[ri+256>>2]=0|He.__str31,Se[ri+260>>2]=0|He.__str32,Se[ri+272>>2]=0|He.__str33,Se[ri+276>>2]=0|He.__str34,Se[ri+288>>2]=0|He.__str35,Se[ri+292>>2]=0|He.__str36,Se[ri+304>>2]=0|He.__str37,Se[ri+308>>2]=0|He.__str38,Se[ri+320>>2]=0|He.__str39,Se[ri+324>>2]=0|He.__str40,Se[ri+336>>2]=0|He.__str41,Se[ri+340>>2]=0|He.__str42,Se[ri+352>>2]=0|He.__str43,Se[ri+356>>2]=0|He.__str44,Se[ri+368>>2]=0|He.__str45,Se[ri+372>>2]=0|He.__str46,Se[ri+384>>2]=0|He.__str47,Se[ri+388>>2]=0|He.__str48,Se[ri+400>>2]=0|He.__str49,Se[ri+404>>2]=0|He.__str119289,Se[ri+416>>2]=0|He.__str51,Se[ri+420>>2]=0|He.__str20,Se[ri+432>>2]=0|He.__str52,Se[ri+436>>2]=0|He.__str53,Se[ri+448>>2]=0|He.__str54,Se[ri+452>>2]=0|He.__str55,Se[ri+464>>2]=0|He.__str56,Se[ri+468>>2]=0|He.__str57,Se[ri+480>>2]=0|He.__str58,Se[ri+484>>2]=0|He.__str119289,Se[ri+496>>2]=0|He.__str59,Se[ri+500>>2]=0|He.__str60,Se[ri+512>>2]=0|He.__str61,Se[ri+516>>2]=0|He.__str62,Se[ri+528>>2]=0|He.__str63,Se[ri+532>>2]=0|He.__str64,Se[ri+544>>2]=0|He.__str65,Se[ri+548>>2]=0|He.__str66,Se[ri+560>>2]=0|He.__str67,Se[ri+564>>2]=0|He.__str68,Se[ri+576>>2]=0|He.__str69,Se[ri+580>>2]=0|He.__str70,Se[ri+592>>2]=0|He.__str71,Se[ri+596>>2]=0|He.__str72,Se[ri+608>>2]=0|He.__str73,Se[ri+612>>2]=0|He.__str74,Se[ri+624>>2]=0|He.__str75,Se[ri+628>>2]=0|He.__str76,Se[ri+640>>2]=0|He.__str77,Se[ri+644>>2]=0|He.__str72,Se[ri+656>>2]=0|He.__str78,Se[ri+660>>2]=0|He.__str79,Se[ri+672>>2]=0|He.__str80,Se[ri+676>>2]=0|He.__str81,Se[ri+688>>2]=0|He.__str82,Se[ri+692>>2]=0|He.__str83,Se[ri+704>>2]=0|He.__str84,Se[ri+708>>2]=0|He.__str85,Se[ri+720>>2]=0|He.__str86,Se[ri+724>>2]=0|He.__str87,Se[ri+736>>2]=0|He.__str88,Se[ri+740>>2]=0|He.__str89,Se[ri+752>>2]=0|He.__str90,Se[ri+756>>2]=0|He.__str91,Se[ri+768>>2]=0|He.__str92,Se[ri+772>>2]=0|He.__str91,Se[ai>>2]=0|He.__str145315,Se[ai+8>>2]=0|He.__str145315,Se[ai+20>>2]=0|He.__str167337,Se[ai+28>>2]=0|He.__str95,Se[ai+40>>2]=0|He.__str146316,Se[ai+48>>2]=0|He.__str97,Se[ai+60>>2]=0|He.__str155325,Se[ai+68>>2]=0|He.__str155325,Se[ai+80>>2]=0|He.__str156326,Se[ai+88>>2]=0|He.__str156326,Se[ai+100>>2]=0|He.__str154324,Se[ai+108>>2]=0|He.__str154324,Se[ai+120>>2]=0|He.__str101,Se[ai+128>>2]=0|He.__str101,Se[ai+140>>2]=0|He.__str147317,Se[ai+148>>2]=0|He.__str147317,Se[ai+160>>2]=0|He.__str150320,Se[ai+168>>2]=0|He.__str150320,Se[ai+180>>2]=0|He.__str151321,Se[ai+188>>2]=0|He.__str105,Se[ai+220>>2]=0|He.__str152322,Se[ai+228>>2]=0|He.__str152322,Se[ai+240>>2]=0|He.__str153323,Se[ai+248>>2]=0|He.__str153323,Se[ai+260>>2]=0|He.__str165335,Se[ai+268>>2]=0|He.__str165335,Se[ai+280>>2]=0|He.__str166336,Se[ai+288>>2]=0|He.__str166336,Se[ai+360>>2]=0|He.__str148318,Se[ai+368>>2]=0|He.__str148318,Se[ai+380>>2]=0|He.__str149319,Se[ai+388>>2]=0|He.__str149319,Se[ai+420>>2]=0|He.__str84254,Se[ai+428>>2]=0|He.__str84254,Se[ai+440>>2]=0|He.__str168338,Se[ai+448>>2]=0|He.__str146316,Se[ai+460>>2]=0|He.__str114,Se[ai+468>>2]=0|He.__str152322,Se[ai+480>>2]=0|He.__str115,Se[ai+488>>2]=0|He.__str115,Se[ai+500>>2]=0|He.__str110280,Se[ai+508>>2]=0|He.__str110280,Se[ei+4>>2]=0|He.__str152,Se[ei+12>>2]=0|He.__str152,Se[ei+32>>2]=0|He.__str153,Se[ei+40>>2]=0|He.__str153,Se[ei+48>>2]=0|He.__str154,Se[ei+60>>2]=0|He.__str155,Se[ei+68>>2]=0|He.__str155,Se[ei+76>>2]=0|He.__str156,Se[ei+88>>2]=0|He.__str157,Se[ei+96>>2]=0|He.__str158,Se[ei+104>>2]=0|He.__str156,Se[ei+116>>2]=0|He.__str159,Se[ei+124>>2]=0|He.__str160,Se[ei+132>>2]=0|He.__str161,Se[ei+144>>2]=0|He.__str162,Se[ei+152>>2]=0|He.__str163,Se[ei+160>>2]=0|He.__str164,Se[ei+172>>2]=0|He.__str165,Se[ei+180>>2]=0|He.__str166,Se[ei+188>>2]=0|He.__str167,Se[si+4>>2]=bi,Se[ni+4>>2]=ki,oi=_([2,0,0,0,0],[\"i8*\",0,0,0,0],we),Se[bi>>2]=oi+8|0,Se[bi+4>>2]=0|He.__ZTSSt9bad_alloc,Se[bi+8>>2]=li,Se[ki>>2]=oi+8|0,Se[ki+4>>2]=0|He.__ZTSSt20bad_array_new_length,Se[ki+8>>2]=bi,ui=16,ci=6,hi=18,di=6,wi=6,pe=[0,0,Jr,0,va,0,ya,0,ga,0,wa,0,Sa,0,pa,0,Ea,0,ma,0],Module.FUNCTION_TABLE=pe,Module.run=ee,Module.preRun&&Module.preRun(),0==Ke){ee()}Module.postRun&&Module.postRun(),Module.___cxa_demangle=G;var pi=v(\"__cxa_demangle\",\"string\",[\"string\",\"string\",\"number\",\"number\"]);return function(r){return pi(r,\"\",1,0)}}();\n`;\n\n/***/ }),\n\n/***/ 121:\n/***/ ((__unused_webpack_module, exports, __webpack_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.Flamechart = void 0;\nconst utils_1 = __webpack_require__(844);\nconst math_1 = __webpack_require__(293);\nclass Flamechart {\n constructor(source) {\n this.source = source;\n // Bottom to top\n this.layers = [];\n this.totalWeight = 0;\n this.minFrameWidth = 1;\n const stack = [];\n const openFrame = (node, value) => {\n const parent = utils_1.lastOf(stack);\n const frame = {\n node,\n parent,\n children: [],\n start: value,\n end: value\n };\n if (parent) {\n parent.children.push(frame);\n }\n stack.push(frame);\n };\n this.minFrameWidth = Infinity;\n const closeFrame = (node, value) => {\n console.assert(stack.length > 0);\n const stackTop = stack.pop();\n stackTop.end = value;\n if (stackTop.end - stackTop.start === 0) return;\n const layerIndex = stack.length;\n while (this.layers.length <= layerIndex) this.layers.push([]);\n this.layers[layerIndex].push(stackTop);\n this.minFrameWidth = Math.min(this.minFrameWidth, stackTop.end - stackTop.start);\n };\n this.totalWeight = source.getTotalWeight();\n source.forEachCall(openFrame, closeFrame);\n if (!isFinite(this.minFrameWidth)) this.minFrameWidth = 1;\n }\n getTotalWeight() {\n return this.totalWeight;\n }\n getLayers() {\n return this.layers;\n }\n getColorBucketForFrame(frame) {\n return this.source.getColorBucketForFrame(frame);\n }\n getMinFrameWidth() {\n return this.minFrameWidth;\n }\n formatValue(v) {\n return this.source.formatValue(v);\n }\n getClampedViewportWidth(viewportWidth) {\n const maxWidth = this.getTotalWeight();\n // In order to avoid floating point error, we cap the maximum zoom. In\n // particular, it's important that at the maximum zoom level, the total\n // trace size + a viewport width is not equal to the trace size due to\n // floating point rounding.\n //\n // For instance, if the profile's total weight is 2^60, and the viewport\n // size is 1, trying to move one viewport width right will result in no\n // change because 2^60 + 1 = 2^60 in floating point arithmetic. JavaScript\n // numbers are 64 bit floats, and therefore have 53 mantissa bits. You can\n // see this for yourself in the console. Try:\n //\n // > Math.pow(2, 60) + 1 === Math.pow(2, 60)\n // true\n // > Math.pow(2, 53) + 1 === Math.pow(2, 53)\n // true\n // > Math.pow(2, 52) + 1 === Math.pow(2, 52)\n // false\n //\n // We use 2^40 as a cap instead, since we want to be able to make small\n // adjustments within a viewport width.\n //\n // For reference, this will still allow you to zoom until 1 nanosecond fills\n // the screen in a profile with a duration of over 18 minutes.\n //\n // > Math.pow(2, 40) / (60 * Math.pow(10, 9))\n // 18.325193796266667\n //\n const maxZoom = Math.pow(2, 40);\n // In addition to capping zoom to avoid floating point error, we further cap\n // zoom to avoid letting you zoom in so that the smallest element more than\n // fills the screen, since that probably isn't useful. The final zoom cap is\n // determined by the minimum zoom of either 2^40x zoom or the necessary zoom\n // for the smallest frame to fill the screen three times.\n const minWidth = math_1.clamp(3 * this.getMinFrameWidth(), maxWidth / maxZoom, maxWidth);\n return math_1.clamp(viewportWidth, minWidth, maxWidth);\n }\n // Given a desired config-space viewport rectangle, clamp the rectangle so\n // that it fits within the given flamechart. This prevents the viewport from\n // extending past the bounds of the flamechart or zooming in too far.\n getClampedConfigSpaceViewportRect({\n configSpaceViewportRect,\n renderInverted\n }) {\n const configSpaceSize = new math_1.Vec2(this.getTotalWeight(), this.getLayers().length);\n const width = this.getClampedViewportWidth(configSpaceViewportRect.size.x);\n const size = configSpaceViewportRect.size.withX(width);\n const origin = math_1.Vec2.clamp(configSpaceViewportRect.origin, new math_1.Vec2(0, renderInverted ? 0 : -1), math_1.Vec2.max(math_1.Vec2.zero, configSpaceSize.minus(size).plus(new math_1.Vec2(0, 1))));\n return new math_1.Rect(origin, configSpaceViewportRect.size.withX(width));\n }\n}\nexports.Flamechart = Flamechart;\n\n/***/ }),\n\n/***/ 293:\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.Rect = exports.AffineTransform = exports.Vec2 = exports.clamp = void 0;\nfunction clamp(x, minVal, maxVal) {\n if (x < minVal) return minVal;\n if (x > maxVal) return maxVal;\n return x;\n}\nexports.clamp = clamp;\nlet Vec2 = /** @class */(() => {\n class Vec2 {\n constructor(x, y) {\n this.x = x;\n this.y = y;\n }\n withX(x) {\n return new Vec2(x, this.y);\n }\n withY(y) {\n return new Vec2(this.x, y);\n }\n plus(other) {\n return new Vec2(this.x + other.x, this.y + other.y);\n }\n minus(other) {\n return new Vec2(this.x - other.x, this.y - other.y);\n }\n times(scalar) {\n return new Vec2(this.x * scalar, this.y * scalar);\n }\n timesPointwise(other) {\n return new Vec2(this.x * other.x, this.y * other.y);\n }\n dividedByPointwise(other) {\n return new Vec2(this.x / other.x, this.y / other.y);\n }\n dot(other) {\n return this.x * other.x + this.y * other.y;\n }\n equals(other) {\n return this.x === other.x && this.y === other.y;\n }\n approxEquals(other, epsilon = 1e-9) {\n return Math.abs(this.x - other.x) < epsilon && Math.abs(this.y - other.y) < epsilon;\n }\n length2() {\n return this.dot(this);\n }\n length() {\n return Math.sqrt(this.length2());\n }\n abs() {\n return new Vec2(Math.abs(this.x), Math.abs(this.y));\n }\n static min(a, b) {\n return new Vec2(Math.min(a.x, b.x), Math.min(a.y, b.y));\n }\n static max(a, b) {\n return new Vec2(Math.max(a.x, b.x), Math.max(a.y, b.y));\n }\n static clamp(v, min, max) {\n return new Vec2(clamp(v.x, min.x, max.x), clamp(v.y, min.y, max.y));\n }\n flatten() {\n return [this.x, this.y];\n }\n }\n Vec2.zero = new Vec2(0, 0);\n Vec2.unit = new Vec2(1, 1);\n return Vec2;\n})();\nexports.Vec2 = Vec2;\nclass AffineTransform {\n constructor(m00 = 1, m01 = 0, m02 = 0, m10 = 0, m11 = 1, m12 = 0) {\n this.m00 = m00;\n this.m01 = m01;\n this.m02 = m02;\n this.m10 = m10;\n this.m11 = m11;\n this.m12 = m12;\n }\n withScale(s) {\n let {\n m00,\n m01,\n m02,\n m10,\n m11,\n m12\n } = this;\n m00 = s.x;\n m11 = s.y;\n return new AffineTransform(m00, m01, m02, m10, m11, m12);\n }\n static withScale(s) {\n return new AffineTransform().withScale(s);\n }\n scaledBy(s) {\n return AffineTransform.withScale(s).times(this);\n }\n getScale() {\n return new Vec2(this.m00, this.m11);\n }\n withTranslation(t) {\n let {\n m00,\n m01,\n m02,\n m10,\n m11,\n m12\n } = this;\n m02 = t.x;\n m12 = t.y;\n return new AffineTransform(m00, m01, m02, m10, m11, m12);\n }\n static withTranslation(t) {\n return new AffineTransform().withTranslation(t);\n }\n getTranslation() {\n return new Vec2(this.m02, this.m12);\n }\n translatedBy(t) {\n return AffineTransform.withTranslation(t).times(this);\n }\n static betweenRects(from, to) {\n return AffineTransform.withTranslation(from.origin.times(-1)).scaledBy(new Vec2(to.size.x / from.size.x, to.size.y / from.size.y)).translatedBy(to.origin);\n }\n times(other) {\n const m00 = this.m00 * other.m00 + this.m01 * other.m10;\n const m01 = this.m00 * other.m01 + this.m01 * other.m11;\n const m02 = this.m00 * other.m02 + this.m01 * other.m12 + this.m02;\n const m10 = this.m10 * other.m00 + this.m11 * other.m10;\n const m11 = this.m10 * other.m01 + this.m11 * other.m11;\n const m12 = this.m10 * other.m02 + this.m11 * other.m12 + this.m12;\n return new AffineTransform(m00, m01, m02, m10, m11, m12);\n }\n equals(other) {\n return this.m00 == other.m00 && this.m01 == other.m01 && this.m02 == other.m02 && this.m10 == other.m10 && this.m11 == other.m11 && this.m12 == other.m12;\n }\n approxEquals(other, epsilon = 1e-9) {\n return Math.abs(this.m00 - other.m00) < epsilon && Math.abs(this.m01 - other.m01) < epsilon && Math.abs(this.m02 - other.m02) < epsilon && Math.abs(this.m10 - other.m10) < epsilon && Math.abs(this.m11 - other.m11) < epsilon && Math.abs(this.m12 - other.m12) < epsilon;\n }\n timesScalar(s) {\n const {\n m00,\n m01,\n m02,\n m10,\n m11,\n m12\n } = this;\n return new AffineTransform(s * m00, s * m01, s * m02, s * m10, s * m11, s * m12);\n }\n det() {\n const {\n m00,\n m01,\n m02,\n m10,\n m11,\n m12\n } = this;\n const m20 = 0;\n const m21 = 0;\n const m22 = 1;\n return m00 * (m11 * m22 - m12 * m21) - m01 * (m10 * m22 - m12 * m20) + m02 * (m10 * m21 - m11 * m20);\n }\n adj() {\n const {\n m00,\n m01,\n m02,\n m10,\n m11,\n m12\n } = this;\n const m20 = 0;\n const m21 = 0;\n const m22 = 1;\n // Adjugate matrix (a) is the transpose of the\n // cofactor matrix (c).\n //\n // 00 01 02\n // 10 11 12\n // 20 21 22\n const a00 = /* c00 = */+(m11 * m22 - m12 * m21);\n const a01 = /* c10 = */-(m01 * m22 - m02 * m21);\n const a02 = /* c20 = */+(m01 * m12 - m02 * m11);\n const a10 = /* c01 = */-(m10 * m22 - m12 * m20);\n const a11 = /* c11 = */+(m00 * m22 - m02 * m20);\n const a12 = /* c21 = */-(m00 * m12 - m02 * m10);\n return new AffineTransform(a00, a01, a02, a10, a11, a12);\n }\n inverted() {\n const det = this.det();\n if (det === 0) return null;\n const adj = this.adj();\n return adj.timesScalar(1 / det);\n }\n transformVector(v) {\n return new Vec2(v.x * this.m00 + v.y * this.m01, v.x * this.m10 + v.y * this.m11);\n }\n inverseTransformVector(v) {\n const inv = this.inverted();\n if (!inv) return null;\n return inv.transformVector(v);\n }\n transformPosition(v) {\n return new Vec2(v.x * this.m00 + v.y * this.m01 + this.m02, v.x * this.m10 + v.y * this.m11 + this.m12);\n }\n inverseTransformPosition(v) {\n const inv = this.inverted();\n if (!inv) return null;\n return inv.transformPosition(v);\n }\n transformRect(r) {\n const size = this.transformVector(r.size);\n const origin = this.transformPosition(r.origin);\n if (size.x < 0 && size.y < 0) {\n return new Rect(origin.plus(size), size.abs());\n } else if (size.x < 0) {\n return new Rect(origin.withX(origin.x + size.x), size.abs());\n } else if (size.y < 0) {\n return new Rect(origin.withY(origin.y + size.y), size.abs());\n }\n return new Rect(origin, size);\n }\n inverseTransformRect(r) {\n const inv = this.inverted();\n if (!inv) return null;\n return inv.transformRect(r);\n }\n flatten() {\n // Flatten into GLSL format\n // prettier-ignore\n return [this.m00, this.m10, 0, this.m01, this.m11, 0, this.m02, this.m12, 1];\n }\n}\nexports.AffineTransform = AffineTransform;\nlet Rect = /** @class */(() => {\n class Rect {\n constructor(origin, size) {\n this.origin = origin;\n this.size = size;\n }\n isEmpty() {\n return this.width() == 0 || this.height() == 0;\n }\n width() {\n return this.size.x;\n }\n height() {\n return this.size.y;\n }\n left() {\n return this.origin.x;\n }\n right() {\n return this.left() + this.width();\n }\n top() {\n return this.origin.y;\n }\n bottom() {\n return this.top() + this.height();\n }\n topLeft() {\n return this.origin;\n }\n topRight() {\n return this.origin.plus(new Vec2(this.width(), 0));\n }\n bottomRight() {\n return this.origin.plus(this.size);\n }\n bottomLeft() {\n return this.origin.plus(new Vec2(0, this.height()));\n }\n withOrigin(origin) {\n return new Rect(origin, this.size);\n }\n withSize(size) {\n return new Rect(this.origin, size);\n }\n closestPointTo(p) {\n return new Vec2(clamp(p.x, this.left(), this.right()), clamp(p.y, this.top(), this.bottom()));\n }\n distanceFrom(p) {\n return p.minus(this.closestPointTo(p)).length();\n }\n contains(p) {\n return this.distanceFrom(p) === 0;\n }\n hasIntersectionWith(other) {\n const top = Math.max(this.top(), other.top());\n const bottom = Math.max(top, Math.min(this.bottom(), other.bottom()));\n if (bottom - top === 0) return false;\n const left = Math.max(this.left(), other.left());\n const right = Math.max(left, Math.min(this.right(), other.right()));\n if (right - left === 0) return false;\n return true;\n }\n intersectWith(other) {\n const topLeft = Vec2.max(this.topLeft(), other.topLeft());\n const bottomRight = Vec2.max(topLeft, Vec2.min(this.bottomRight(), other.bottomRight()));\n return new Rect(topLeft, bottomRight.minus(topLeft));\n }\n equals(other) {\n return this.origin.equals(other.origin) && this.size.equals(other.size);\n }\n approxEquals(other) {\n return this.origin.approxEquals(other.origin) && this.size.approxEquals(other.size);\n }\n area() {\n return this.size.x * this.size.y;\n }\n }\n Rect.empty = new Rect(Vec2.zero, Vec2.zero);\n Rect.unit = new Rect(Vec2.zero, Vec2.unit);\n Rect.NDC = new Rect(new Vec2(-1, -1), new Vec2(2, 2));\n return Rect;\n})();\nexports.Rect = Rect;\n\n/***/ }),\n\n/***/ 211:\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n\n\nvar __createBinding = this && this.__createBinding || (Object.create ? function (o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, {\n enumerable: true,\n get: function () {\n return m[k];\n }\n });\n} : function (o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\nvar __setModuleDefault = this && this.__setModuleDefault || (Object.create ? function (o, v) {\n Object.defineProperty(o, \"default\", {\n enumerable: true,\n value: v\n });\n} : function (o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = this && this.__importStar || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __awaiter = this && this.__awaiter || function (thisArg, _arguments, P, generator) {\n function adopt(value) {\n return value instanceof P ? value : new P(function (resolve) {\n resolve(value);\n });\n }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) {\n try {\n step(generator.next(value));\n } catch (e) {\n reject(e);\n }\n }\n function rejected(value) {\n try {\n step(generator[\"throw\"](value));\n } catch (e) {\n reject(e);\n }\n }\n function step(result) {\n result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);\n }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.CallTreeProfileBuilder = exports.StackListProfileBuilder = exports.Profile = exports.CallTreeNode = exports.Frame = exports.HasWeights = void 0;\nconst utils_1 = __webpack_require__(844);\nconst value_formatters_1 = __webpack_require__(218);\nconst demangleCppModule = Promise.resolve().then(() => __importStar(__webpack_require__(765)));\n// Force eager loading of the module\ndemangleCppModule.then(() => {});\nclass HasWeights {\n constructor() {\n this.selfWeight = 0;\n this.totalWeight = 0;\n }\n getSelfWeight() {\n return this.selfWeight;\n }\n getTotalWeight() {\n return this.totalWeight;\n }\n addToTotalWeight(delta) {\n this.totalWeight += delta;\n }\n addToSelfWeight(delta) {\n this.selfWeight += delta;\n }\n overwriteWeightWith(other) {\n this.selfWeight = other.selfWeight;\n this.totalWeight = other.totalWeight;\n }\n}\nexports.HasWeights = HasWeights;\nlet Frame = /** @class */(() => {\n class Frame extends HasWeights {\n constructor(info) {\n super();\n this.key = info.key;\n this.name = info.name;\n this.file = info.file;\n this.line = info.line;\n this.col = info.col;\n }\n static getOrInsert(set, info) {\n return set.getOrInsert(new Frame(info));\n }\n }\n Frame.root = new Frame({\n key: '(speedscope root)',\n name: '(speedscope root)'\n });\n return Frame;\n})();\nexports.Frame = Frame;\nclass CallTreeNode extends HasWeights {\n constructor(frame, parent) {\n super();\n this.frame = frame;\n this.parent = parent;\n this.children = [];\n // If a node is \"frozen\", it means it should no longer be mutated.\n this.frozen = false;\n }\n isRoot() {\n return this.frame === Frame.root;\n }\n isFrozen() {\n return this.frozen;\n }\n freeze() {\n this.frozen = true;\n }\n}\nexports.CallTreeNode = CallTreeNode;\nclass Profile {\n constructor(totalWeight = 0) {\n this.name = '';\n this.frames = new utils_1.KeyedSet();\n // Profiles store two call-trees.\n //\n // The \"append order\" call tree is the one in which nodes are ordered in\n // whatever order they were appended to their parent.\n //\n // The \"grouped\" call tree is one in which each node has at most one child per\n // frame. Nodes are ordered in decreasing order of weight\n this.appendOrderCalltreeRoot = new CallTreeNode(Frame.root, null);\n this.groupedCalltreeRoot = new CallTreeNode(Frame.root, null);\n // List of references to CallTreeNodes at the top of the\n // stack at the time of the sample.\n this.samples = [];\n this.weights = [];\n this.valueFormatter = new value_formatters_1.RawValueFormatter();\n this.totalNonIdleWeight = null;\n this.totalWeight = totalWeight;\n }\n getAppendOrderCalltreeRoot() {\n return this.appendOrderCalltreeRoot;\n }\n getGroupedCalltreeRoot() {\n return this.groupedCalltreeRoot;\n }\n formatValue(v) {\n return this.valueFormatter.format(v);\n }\n setValueFormatter(f) {\n this.valueFormatter = f;\n }\n getWeightUnit() {\n return this.valueFormatter.unit;\n }\n getName() {\n return this.name;\n }\n setName(name) {\n this.name = name;\n }\n getTotalWeight() {\n return this.totalWeight;\n }\n getTotalNonIdleWeight() {\n if (this.totalNonIdleWeight === null) {\n this.totalNonIdleWeight = this.groupedCalltreeRoot.children.reduce((n, c) => n + c.getTotalWeight(), 0);\n }\n return this.totalNonIdleWeight;\n }\n // This is private because it should only be called in the ProfileBuilder\n // classes. Once a Profile instance has been constructed, it should be treated\n // as immutable.\n sortGroupedCallTree() {\n function visit(node) {\n node.children.sort((a, b) => -(a.getTotalWeight() - b.getTotalWeight()));\n node.children.forEach(visit);\n }\n visit(this.groupedCalltreeRoot);\n }\n forEachCallGrouped(openFrame, closeFrame) {\n function visit(node, start) {\n if (node.frame !== Frame.root) {\n openFrame(node, start);\n }\n let childTime = 0;\n node.children.forEach(function (child) {\n visit(child, start + childTime);\n childTime += child.getTotalWeight();\n });\n if (node.frame !== Frame.root) {\n closeFrame(node, start + node.getTotalWeight());\n }\n }\n visit(this.groupedCalltreeRoot, 0);\n }\n forEachCall(openFrame, closeFrame) {\n let prevStack = [];\n let value = 0;\n let sampleIndex = 0;\n for (let stackTop of this.samples) {\n // Find lowest common ancestor of the current stack and the previous one\n let lca = null;\n // This is O(n^2), but n should be relatively small here (stack height),\n // so hopefully this isn't much of a problem\n for (lca = stackTop; lca && lca.frame != Frame.root && prevStack.indexOf(lca) === -1; lca = lca.parent) {}\n // Close frames that are no longer open\n while (prevStack.length > 0 && utils_1.lastOf(prevStack) != lca) {\n const node = prevStack.pop();\n closeFrame(node, value);\n }\n // Open frames that are now becoming open\n const toOpen = [];\n for (let node = stackTop; node && node.frame != Frame.root && node != lca; node = node.parent) {\n toOpen.push(node);\n }\n toOpen.reverse();\n for (let node of toOpen) {\n openFrame(node, value);\n }\n prevStack = prevStack.concat(toOpen);\n value += this.weights[sampleIndex++];\n }\n // Close frames that are open at the end of the trace\n for (let i = prevStack.length - 1; i >= 0; i--) {\n closeFrame(prevStack[i], value);\n }\n }\n forEachFrame(fn) {\n this.frames.forEach(fn);\n }\n getProfileWithRecursionFlattened() {\n const builder = new CallTreeProfileBuilder();\n const stack = [];\n const framesInStack = new Set();\n function openFrame(node, value) {\n if (framesInStack.has(node.frame)) {\n stack.push(null);\n } else {\n framesInStack.add(node.frame);\n stack.push(node);\n builder.enterFrame(node.frame, value);\n }\n }\n function closeFrame(node, value) {\n const stackTop = stack.pop();\n if (stackTop) {\n framesInStack.delete(stackTop.frame);\n builder.leaveFrame(stackTop.frame, value);\n }\n }\n this.forEachCall(openFrame, closeFrame);\n const flattenedProfile = builder.build();\n flattenedProfile.name = this.name;\n flattenedProfile.valueFormatter = this.valueFormatter;\n // When constructing a profile with recursion flattened,\n // counter-intuitive things can happen to \"self time\" measurements\n // for functions.\n // For example, given the following list of stacks w/ weights:\n //\n // a 1\n // a;b;a 1\n // a;b;a;b;a 1\n // a;b;a 1\n //\n // The resulting profile with recursion flattened out will look like this:\n //\n // a 1\n // a;b 3\n //\n // Which is useful to view, but it's counter-intuitive to move self-time\n // for frames around, since analyzing the self-time of functions is an important\n // thing to be able to do accurately, and we don't want this to change when recursion\n // is flattened. To work around that, we'll just copy the weights directly from the\n // un-flattened profile.\n this.forEachFrame(f => {\n flattenedProfile.frames.getOrInsert(f).overwriteWeightWith(f);\n });\n return flattenedProfile;\n }\n getInvertedProfileForCallersOf(focalFrameInfo) {\n const focalFrame = Frame.getOrInsert(this.frames, focalFrameInfo);\n const builder = new StackListProfileBuilder();\n // TODO(jlfwong): Could construct this at profile\n // construction time rather than on demand.\n const nodes = [];\n function visit(node) {\n if (node.frame === focalFrame) {\n nodes.push(node);\n } else {\n for (let child of node.children) {\n visit(child);\n }\n }\n }\n visit(this.appendOrderCalltreeRoot);\n for (let node of nodes) {\n const stack = [];\n for (let n = node; n != null && n.frame !== Frame.root; n = n.parent) {\n stack.push(n.frame);\n }\n builder.appendSampleWithWeight(stack, node.getTotalWeight());\n }\n const ret = builder.build();\n ret.name = this.name;\n ret.valueFormatter = this.valueFormatter;\n return ret;\n }\n getProfileForCalleesOf(focalFrameInfo) {\n const focalFrame = Frame.getOrInsert(this.frames, focalFrameInfo);\n const builder = new StackListProfileBuilder();\n function recordSubtree(focalFrameNode) {\n const stack = [];\n function visit(node) {\n stack.push(node.frame);\n builder.appendSampleWithWeight(stack, node.getSelfWeight());\n for (let child of node.children) {\n visit(child);\n }\n stack.pop();\n }\n visit(focalFrameNode);\n }\n function findCalls(node) {\n if (node.frame === focalFrame) {\n recordSubtree(node);\n } else {\n for (let child of node.children) {\n findCalls(child);\n }\n }\n }\n findCalls(this.appendOrderCalltreeRoot);\n const ret = builder.build();\n ret.name = this.name;\n ret.valueFormatter = this.valueFormatter;\n return ret;\n }\n // Demangle symbols for readability\n demangle() {\n return __awaiter(this, void 0, void 0, function* () {\n let demangleCpp = null;\n for (let frame of this.frames) {\n // This function converts a mangled C++ name such as \"__ZNK7Support6ColorFeqERKS0_\"\n // into a human-readable symbol (in this case \"Support::ColorF::==(Support::ColorF&)\")\n if (frame.name.startsWith('__Z')) {\n if (!demangleCpp) {\n demangleCpp = (yield demangleCppModule).demangleCpp;\n }\n frame.name = demangleCpp(frame.name);\n }\n }\n });\n }\n remapNames(callback) {\n for (let frame of this.frames) {\n frame.name = callback(frame.name);\n }\n }\n}\nexports.Profile = Profile;\nclass StackListProfileBuilder extends Profile {\n constructor() {\n super(...arguments);\n this.pendingSample = null;\n }\n _appendSample(stack, weight, useAppendOrder) {\n if (isNaN(weight)) throw new Error('invalid weight');\n let node = useAppendOrder ? this.appendOrderCalltreeRoot : this.groupedCalltreeRoot;\n let framesInStack = new Set();\n for (let frameInfo of stack) {\n const frame = Frame.getOrInsert(this.frames, frameInfo);\n const last = useAppendOrder ? utils_1.lastOf(node.children) : node.children.find(c => c.frame === frame);\n if (last && !last.isFrozen() && last.frame == frame) {\n node = last;\n } else {\n const parent = node;\n node = new CallTreeNode(frame, node);\n parent.children.push(node);\n }\n node.addToTotalWeight(weight);\n // It's possible for the same frame to occur multiple\n // times in the same call stack due to either direct\n // or indirect recursion. We want to avoid counting that\n // frame multiple times for a single sample, we so just\n // track all of the unique frames that participated in\n // this call stack, then add to their weight at the end.\n framesInStack.add(node.frame);\n }\n node.addToSelfWeight(weight);\n if (useAppendOrder) {\n for (let child of node.children) {\n child.freeze();\n }\n }\n if (useAppendOrder) {\n node.frame.addToSelfWeight(weight);\n for (let frame of framesInStack) {\n frame.addToTotalWeight(weight);\n }\n if (node === utils_1.lastOf(this.samples)) {\n this.weights[this.weights.length - 1] += weight;\n } else {\n this.samples.push(node);\n this.weights.push(weight);\n }\n }\n }\n appendSampleWithWeight(stack, weight) {\n if (weight === 0) {\n // Samples with zero weight have no effect, so let's ignore them\n return;\n }\n if (weight < 0) {\n throw new Error('Samples must have positive weights');\n }\n this._appendSample(stack, weight, true);\n this._appendSample(stack, weight, false);\n }\n appendSampleWithTimestamp(stack, timestamp) {\n if (this.pendingSample) {\n if (timestamp < this.pendingSample.centralTimestamp) {\n throw new Error('Timestamps received out of order');\n }\n const endTimestamp = (timestamp + this.pendingSample.centralTimestamp) / 2;\n this.appendSampleWithWeight(this.pendingSample.stack, endTimestamp - this.pendingSample.startTimestamp);\n this.pendingSample = {\n stack,\n startTimestamp: endTimestamp,\n centralTimestamp: timestamp\n };\n } else {\n this.pendingSample = {\n stack,\n startTimestamp: timestamp,\n centralTimestamp: timestamp\n };\n }\n }\n build() {\n if (this.pendingSample) {\n if (this.samples.length > 0) {\n this.appendSampleWithWeight(this.pendingSample.stack, this.pendingSample.centralTimestamp - this.pendingSample.startTimestamp);\n } else {\n // There is only a single sample. In this case, units will be meaningless,\n // so we'll append with a weight of 1 and also clear any value formatter\n this.appendSampleWithWeight(this.pendingSample.stack, 1);\n this.setValueFormatter(new value_formatters_1.RawValueFormatter());\n }\n }\n this.totalWeight = Math.max(this.totalWeight, this.weights.reduce((a, b) => a + b, 0));\n this.sortGroupedCallTree();\n return this;\n }\n}\nexports.StackListProfileBuilder = StackListProfileBuilder;\n// As an alternative API for importing profiles more efficiently, provide a\n// way to open & close frames directly without needing to construct tons of\n// arrays as intermediaries.\nclass CallTreeProfileBuilder extends Profile {\n constructor() {\n super(...arguments);\n this.appendOrderStack = [this.appendOrderCalltreeRoot];\n this.groupedOrderStack = [this.groupedCalltreeRoot];\n this.framesInStack = new Map();\n this.stack = [];\n this.lastValue = 0;\n }\n addWeightsToFrames(value) {\n const delta = value - this.lastValue;\n for (let frame of this.framesInStack.keys()) {\n frame.addToTotalWeight(delta);\n }\n const stackTop = utils_1.lastOf(this.stack);\n if (stackTop) {\n stackTop.addToSelfWeight(delta);\n }\n }\n addWeightsToNodes(value, stack) {\n const delta = value - this.lastValue;\n for (let node of stack) {\n node.addToTotalWeight(delta);\n }\n const stackTop = utils_1.lastOf(stack);\n if (stackTop) {\n stackTop.addToSelfWeight(delta);\n }\n }\n _enterFrame(frame, value, useAppendOrder) {\n let stack = useAppendOrder ? this.appendOrderStack : this.groupedOrderStack;\n this.addWeightsToNodes(value, stack);\n let prevTop = utils_1.lastOf(stack);\n if (prevTop) {\n if (useAppendOrder) {\n const delta = value - this.lastValue;\n if (delta > 0) {\n this.samples.push(prevTop);\n this.weights.push(value - this.lastValue);\n } else if (delta < 0) {\n throw new Error(`Samples must be provided in increasing order of cumulative value. Last sample was ${this.lastValue}, this sample was ${value}`);\n }\n }\n const last = useAppendOrder ? utils_1.lastOf(prevTop.children) : prevTop.children.find(c => c.frame === frame);\n let node;\n if (last && !last.isFrozen() && last.frame == frame) {\n node = last;\n } else {\n node = new CallTreeNode(frame, prevTop);\n prevTop.children.push(node);\n }\n stack.push(node);\n }\n }\n enterFrame(frameInfo, value) {\n const frame = Frame.getOrInsert(this.frames, frameInfo);\n this.addWeightsToFrames(value);\n this._enterFrame(frame, value, true);\n this._enterFrame(frame, value, false);\n this.stack.push(frame);\n const frameCount = this.framesInStack.get(frame) || 0;\n this.framesInStack.set(frame, frameCount + 1);\n this.lastValue = value;\n }\n _leaveFrame(frame, value, useAppendOrder) {\n let stack = useAppendOrder ? this.appendOrderStack : this.groupedOrderStack;\n this.addWeightsToNodes(value, stack);\n if (useAppendOrder) {\n const leavingStackTop = this.appendOrderStack.pop();\n if (leavingStackTop == null) {\n throw new Error(`Trying to leave ${frame.key} when stack is empty`);\n }\n if (this.lastValue == null) {\n throw new Error(`Trying to leave a ${frame.key} before any have been entered`);\n }\n leavingStackTop.freeze();\n if (leavingStackTop.frame.key !== frame.key) {\n throw new Error(`Tried to leave frame \"${frame.name}\" while frame \"${leavingStackTop.frame.name}\" was at the top at ${value}`);\n }\n const delta = value - this.lastValue;\n if (delta > 0) {\n this.samples.push(leavingStackTop);\n this.weights.push(value - this.lastValue);\n } else if (delta < 0) {\n throw new Error(`Samples must be provided in increasing order of cumulative value. Last sample was ${this.lastValue}, this sample was ${value}`);\n }\n } else {\n this.groupedOrderStack.pop();\n }\n }\n leaveFrame(frameInfo, value) {\n const frame = Frame.getOrInsert(this.frames, frameInfo);\n this.addWeightsToFrames(value);\n this._leaveFrame(frame, value, true);\n this._leaveFrame(frame, value, false);\n this.stack.pop();\n const frameCount = this.framesInStack.get(frame);\n if (frameCount == null) return;\n if (frameCount === 1) {\n this.framesInStack.delete(frame);\n } else {\n this.framesInStack.set(frame, frameCount - 1);\n }\n this.lastValue = value;\n this.totalWeight = Math.max(this.totalWeight, this.lastValue);\n }\n build() {\n // Each stack is expected to contain a single node which we initialize to be\n // the root node.\n if (this.appendOrderStack.length > 1 || this.groupedOrderStack.length > 1) {\n throw new Error('Tried to complete profile construction with a non-empty stack');\n }\n this.sortGroupedCallTree();\n return this;\n }\n}\nexports.CallTreeProfileBuilder = CallTreeProfileBuilder;\n\n/***/ }),\n\n/***/ 844:\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.decodeBase64 = exports.lazyStatic = exports.memoizeByReference = exports.memoizeByShallowEquality = exports.objectsHaveShallowEquality = exports.noop = exports.binarySearch = exports.triangle = exports.fract = exports.formatPercent = exports.zeroPad = exports.itReduce = exports.itForEach = exports.itMap = exports.KeyedSet = exports.getOrThrow = exports.getOrElse = exports.getOrInsert = exports.sortBy = exports.lastOf = void 0;\nfunction lastOf(ts) {\n return ts[ts.length - 1] || null;\n}\nexports.lastOf = lastOf;\nfunction sortBy(ts, key) {\n function comparator(a, b) {\n const keyA = key(a);\n const keyB = key(b);\n return keyA < keyB ? -1 : keyA > keyB ? 1 : 0;\n }\n ts.sort(comparator);\n}\nexports.sortBy = sortBy;\nfunction getOrInsert(map, k, fallback) {\n if (!map.has(k)) map.set(k, fallback(k));\n return map.get(k);\n}\nexports.getOrInsert = getOrInsert;\nfunction getOrElse(map, k, fallback) {\n if (!map.has(k)) return fallback(k);\n return map.get(k);\n}\nexports.getOrElse = getOrElse;\nfunction getOrThrow(map, k) {\n if (!map.has(k)) {\n throw new Error(`Expected key ${k}`);\n }\n return map.get(k);\n}\nexports.getOrThrow = getOrThrow;\nclass KeyedSet {\n constructor() {\n this.map = new Map();\n }\n getOrInsert(t) {\n const key = t.key;\n const existing = this.map.get(key);\n if (existing) return existing;\n this.map.set(key, t);\n return t;\n }\n forEach(fn) {\n this.map.forEach(fn);\n }\n [Symbol.iterator]() {\n return this.map.values();\n }\n}\nexports.KeyedSet = KeyedSet;\nfunction* itMap(it, f) {\n for (let t of it) {\n yield f(t);\n }\n}\nexports.itMap = itMap;\nfunction itForEach(it, f) {\n for (let t of it) {\n f(t);\n }\n}\nexports.itForEach = itForEach;\nfunction itReduce(it, f, init) {\n let accum = init;\n for (let t of it) {\n accum = f(accum, t);\n }\n return accum;\n}\nexports.itReduce = itReduce;\nfunction zeroPad(s, width) {\n return new Array(Math.max(width - s.length, 0) + 1).join('0') + s;\n}\nexports.zeroPad = zeroPad;\nfunction formatPercent(percent) {\n let formattedPercent = `${percent.toFixed(0)}%`;\n if (percent === 100) formattedPercent = '100%';else if (percent > 99) formattedPercent = '>99%';else if (percent < 0.01) formattedPercent = '<0.01%';else if (percent < 1) formattedPercent = `${percent.toFixed(2)}%`;else if (percent < 10) formattedPercent = `${percent.toFixed(1)}%`;\n return formattedPercent;\n}\nexports.formatPercent = formatPercent;\nfunction fract(x) {\n return x - Math.floor(x);\n}\nexports.fract = fract;\nfunction triangle(x) {\n return 2.0 * Math.abs(fract(x) - 0.5) - 1.0;\n}\nexports.triangle = triangle;\nfunction binarySearch(lo, hi, f, target, targetRangeSize = 1) {\n console.assert(!isNaN(targetRangeSize) && !isNaN(target));\n while (true) {\n if (hi - lo <= targetRangeSize) return [lo, hi];\n const mid = (hi + lo) / 2;\n const val = f(mid);\n if (val < target) lo = mid;else hi = mid;\n }\n}\nexports.binarySearch = binarySearch;\nfunction noop(...args) {}\nexports.noop = noop;\nfunction objectsHaveShallowEquality(a, b) {\n for (let key in a) {\n if (a[key] !== b[key]) return false;\n }\n for (let key in b) {\n if (a[key] !== b[key]) return false;\n }\n return true;\n}\nexports.objectsHaveShallowEquality = objectsHaveShallowEquality;\nfunction memoizeByShallowEquality(cb) {\n let last = null;\n return args => {\n let result;\n if (last == null) {\n result = cb(args);\n last = {\n args,\n result\n };\n return result;\n } else if (objectsHaveShallowEquality(last.args, args)) {\n return last.result;\n } else {\n last.args = args;\n last.result = cb(args);\n return last.result;\n }\n };\n}\nexports.memoizeByShallowEquality = memoizeByShallowEquality;\nfunction memoizeByReference(cb) {\n let last = null;\n return args => {\n let result;\n if (last == null) {\n result = cb(args);\n last = {\n args,\n result\n };\n return result;\n } else if (last.args === args) {\n return last.result;\n } else {\n last.args = args;\n last.result = cb(args);\n return last.result;\n }\n };\n}\nexports.memoizeByReference = memoizeByReference;\nfunction lazyStatic(cb) {\n let last = null;\n return () => {\n if (last == null) {\n last = {\n result: cb()\n };\n }\n return last.result;\n };\n}\nexports.lazyStatic = lazyStatic;\nconst base64lookupTable = lazyStatic(() => {\n const alphabet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n const ret = new Map();\n for (let i = 0; i < alphabet.length; i++) {\n ret.set(alphabet.charAt(i), i);\n }\n ret.set('=', -1);\n return ret;\n});\n// NOTE: There are probably simpler solutions to this problem, but I have this written already, so\n// until we run into problems with this, let's just use this.\n//\n// See: https://developer.mozilla.org/en-US/docs/Web/API/WindowBase64/Base64_encoding_and_decoding#The_Unicode_Problem#The_Unicode_Problem\nfunction decodeBase64(encoded) {\n // Reference: https://www.rfc-editor.org/rfc/rfc4648.txt\n const lookupTable = base64lookupTable();\n // 3 byte groups are represented as sequneces of 4 characters.\n //\n // \"The encoding process represents 24-bit groups of input bits as output\n // strings of 4 encoded characters.\"\n //\n // \"Special processing is performed if fewer than 24 bits are available\n // at the end of the data being encoded. A full encoding quantum is\n // always completed at the end of a quantity. When fewer than 24 input\n // bits are available in an input group bits with value zero are added\n // (on the right) to form an integral number of 6-bit groups.\"\n if (encoded.length % 4 !== 0) {\n throw new Error(`Invalid length for base64 encoded string. Expected length % 4 = 0, got length = ${encoded.length}`);\n }\n const quartetCount = encoded.length / 4;\n let byteCount;\n // Special processing is performed if fewer than 24 bits are available\n // at the end of the data being encoded. A full encoding quantum is\n // always completed at the end of a quantity. When fewer than 24 input\n // bits are available in an input group, bits with value zero are added\n // (on the right) to form an integral number of 6-bit groups. Padding\n // at the end of the data is performed using the '=' character. Since\n // all base 64 input is an integral number of octets, only the following\n // cases can arise:\n //\n // (1) The final quantum of encoding input is an integral multiple of 24\n // bits; here, the final unit of encoded output will be an integral\n // multiple of 4 characters with no \"=\" padding.\n //\n // (2) The final quantum of encoding input is exactly 8 bits; here, the\n // final unit of encoded output will be two characters followed by\n // two \"=\" padding characters.\n //\n // (3) The final quantum of encoding input is exactly 16 bits; here, the\n // final unit of encoded output will be three characters followed by\n // one \"=\" padding character.\n if (encoded.length >= 4) {\n if (encoded.charAt(encoded.length - 1) === '=') {\n if (encoded.charAt(encoded.length - 2) === '=') {\n // Case (2)\n byteCount = quartetCount * 3 - 2;\n } else {\n // Case (3)\n byteCount = quartetCount * 3 - 1;\n }\n } else {\n // Case (1)\n byteCount = quartetCount * 3;\n }\n } else {\n // Case (1)\n byteCount = quartetCount * 3;\n }\n const bytes = new Uint8Array(byteCount);\n let offset = 0;\n for (let i = 0; i < quartetCount; i++) {\n const enc1 = encoded.charAt(i * 4 + 0);\n const enc2 = encoded.charAt(i * 4 + 1);\n const enc3 = encoded.charAt(i * 4 + 2);\n const enc4 = encoded.charAt(i * 4 + 3);\n const sextet1 = lookupTable.get(enc1);\n const sextet2 = lookupTable.get(enc2);\n const sextet3 = lookupTable.get(enc3);\n const sextet4 = lookupTable.get(enc4);\n if (sextet1 == null || sextet2 == null || sextet3 == null || sextet4 == null) {\n throw new Error(`Invalid quartet at indices ${i * 4} .. ${i * 4 + 3}: ${encoded.substring(i * 4, i * 4 + 3)}`);\n }\n bytes[offset++] = sextet1 << 2 | sextet2 >> 4;\n if (enc3 !== '=') {\n bytes[offset++] = (sextet2 & 15) << 4 | sextet3 >> 2;\n }\n if (enc4 !== '=') {\n bytes[offset++] = (sextet3 & 7) << 6 | sextet4;\n }\n }\n if (offset !== byteCount) {\n throw new Error(`Expected to decode ${byteCount} bytes, but only decoded ${offset})`);\n }\n return bytes;\n}\nexports.decodeBase64 = decodeBase64;\n\n/***/ }),\n\n/***/ 218:\n/***/ ((__unused_webpack_module, exports, __webpack_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.ByteFormatter = exports.TimeFormatter = exports.RawValueFormatter = void 0;\nconst utils_1 = __webpack_require__(844);\nclass RawValueFormatter {\n constructor() {\n this.unit = 'none';\n }\n format(v) {\n return v.toLocaleString();\n }\n}\nexports.RawValueFormatter = RawValueFormatter;\nclass TimeFormatter {\n constructor(unit) {\n this.unit = unit;\n if (unit === 'nanoseconds') this.multiplier = 1e-9;else if (unit === 'microseconds') this.multiplier = 1e-6;else if (unit === 'milliseconds') this.multiplier = 1e-3;else this.multiplier = 1;\n }\n formatUnsigned(v) {\n const s = v * this.multiplier;\n if (s / 60 >= 1) {\n const minutes = Math.floor(s / 60);\n const seconds = Math.floor(s - minutes * 60).toString();\n return `${minutes}:${utils_1.zeroPad(seconds, 2)}`;\n }\n if (s / 1 >= 1) return `${s.toFixed(2)}s`;\n if (s / 1e-3 >= 1) return `${(s / 1e-3).toFixed(2)}ms`;\n if (s / 1e-6 >= 1) return `${(s / 1e-6).toFixed(2)}µs`;else return `${(s / 1e-9).toFixed(2)}ns`;\n }\n format(v) {\n return `${v < 0 ? '-' : ''}${this.formatUnsigned(Math.abs(v))}`;\n }\n}\nexports.TimeFormatter = TimeFormatter;\nclass ByteFormatter {\n constructor() {\n this.unit = 'bytes';\n }\n format(v) {\n if (v < 1024) return `${v.toFixed(0)} B`;\n v /= 1024;\n if (v < 1024) return `${v.toFixed(2)} KB`;\n v /= 1024;\n if (v < 1024) return `${v.toFixed(2)} MB`;\n v /= 1024;\n return `${v.toFixed(2)} GB`;\n }\n}\nexports.ByteFormatter = ByteFormatter;\n\n/***/ }),\n\n/***/ 41:\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n\n\nvar __createBinding = this && this.__createBinding || (Object.create ? function (o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, {\n enumerable: true,\n get: function () {\n return m[k];\n }\n });\n} : function (o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\nvar __exportStar = this && this.__exportStar || function (m, exports) {\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\n__exportStar(__webpack_require__(496), exports);\n__exportStar(__webpack_require__(121), exports);\n\n/***/ }),\n\n/***/ 715:\n/***/ (function(module, exports, __webpack_require__) {\n\nvar __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;(function (root, factory) {\n 'use strict';\n\n // Universal Module Definition (UMD) to support AMD, CommonJS/Node.js, Rhino, and browsers.\n\n /* istanbul ignore next */\n if (true) {\n !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(356)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?\n\t\t(__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n } else {}\n})(this, function ErrorStackParser(StackFrame) {\n 'use strict';\n\n var FIREFOX_SAFARI_STACK_REGEXP = /(^|@)\\S+:\\d+/;\n var CHROME_IE_STACK_REGEXP = /^\\s*at .*(\\S+:\\d+|\\(native\\))/m;\n var SAFARI_NATIVE_CODE_REGEXP = /^(eval@)?(\\[native code])?$/;\n return {\n /**\n * Given an Error object, extract the most information from it.\n *\n * @param {Error} error object\n * @return {Array} of StackFrames\n */\n parse: function ErrorStackParser$$parse(error) {\n if (typeof error.stacktrace !== 'undefined' || typeof error['opera#sourceloc'] !== 'undefined') {\n return this.parseOpera(error);\n } else if (error.stack && error.stack.match(CHROME_IE_STACK_REGEXP)) {\n return this.parseV8OrIE(error);\n } else if (error.stack) {\n return this.parseFFOrSafari(error);\n } else {\n throw new Error('Cannot parse given Error object');\n }\n },\n // Separate line and column numbers from a string of the form: (URI:Line:Column)\n extractLocation: function ErrorStackParser$$extractLocation(urlLike) {\n // Fail-fast but return locations like \"(native)\"\n if (urlLike.indexOf(':') === -1) {\n return [urlLike];\n }\n var regExp = /(.+?)(?::(\\d+))?(?::(\\d+))?$/;\n var parts = regExp.exec(urlLike.replace(/[()]/g, ''));\n return [parts[1], parts[2] || undefined, parts[3] || undefined];\n },\n parseV8OrIE: function ErrorStackParser$$parseV8OrIE(error) {\n var filtered = error.stack.split('\\n').filter(function (line) {\n return !!line.match(CHROME_IE_STACK_REGEXP);\n }, this);\n return filtered.map(function (line) {\n if (line.indexOf('(eval ') > -1) {\n // Throw away eval information until we implement stacktrace.js/stackframe#8\n line = line.replace(/eval code/g, 'eval').replace(/(\\(eval at [^()]*)|(\\),.*$)/g, '');\n }\n var sanitizedLine = line.replace(/^\\s+/, '').replace(/\\(eval code/g, '(');\n\n // capture and preseve the parenthesized location \"(/foo/my bar.js:12:87)\" in\n // case it has spaces in it, as the string is split on \\s+ later on\n var location = sanitizedLine.match(/ (\\((.+):(\\d+):(\\d+)\\)$)/);\n\n // remove the parenthesized location from the line, if it was matched\n sanitizedLine = location ? sanitizedLine.replace(location[0], '') : sanitizedLine;\n var tokens = sanitizedLine.split(/\\s+/).slice(1);\n // if a location was matched, pass it to extractLocation() otherwise pop the last token\n var locationParts = this.extractLocation(location ? location[1] : tokens.pop());\n var functionName = tokens.join(' ') || undefined;\n var fileName = ['eval', ''].indexOf(locationParts[0]) > -1 ? undefined : locationParts[0];\n return new StackFrame({\n functionName: functionName,\n fileName: fileName,\n lineNumber: locationParts[1],\n columnNumber: locationParts[2],\n source: line\n });\n }, this);\n },\n parseFFOrSafari: function ErrorStackParser$$parseFFOrSafari(error) {\n var filtered = error.stack.split('\\n').filter(function (line) {\n return !line.match(SAFARI_NATIVE_CODE_REGEXP);\n }, this);\n return filtered.map(function (line) {\n // Throw away eval information until we implement stacktrace.js/stackframe#8\n if (line.indexOf(' > eval') > -1) {\n line = line.replace(/ line (\\d+)(?: > eval line \\d+)* > eval:\\d+:\\d+/g, ':$1');\n }\n if (line.indexOf('@') === -1 && line.indexOf(':') === -1) {\n // Safari eval frames only have function names and nothing else\n return new StackFrame({\n functionName: line\n });\n } else {\n var functionNameRegex = /((.*\".+\"[^@]*)?[^@]*)(?:@)/;\n var matches = line.match(functionNameRegex);\n var functionName = matches && matches[1] ? matches[1] : undefined;\n var locationParts = this.extractLocation(line.replace(functionNameRegex, ''));\n return new StackFrame({\n functionName: functionName,\n fileName: locationParts[0],\n lineNumber: locationParts[1],\n columnNumber: locationParts[2],\n source: line\n });\n }\n }, this);\n },\n parseOpera: function ErrorStackParser$$parseOpera(e) {\n if (!e.stacktrace || e.message.indexOf('\\n') > -1 && e.message.split('\\n').length > e.stacktrace.split('\\n').length) {\n return this.parseOpera9(e);\n } else if (!e.stack) {\n return this.parseOpera10(e);\n } else {\n return this.parseOpera11(e);\n }\n },\n parseOpera9: function ErrorStackParser$$parseOpera9(e) {\n var lineRE = /Line (\\d+).*script (?:in )?(\\S+)/i;\n var lines = e.message.split('\\n');\n var result = [];\n for (var i = 2, len = lines.length; i < len; i += 2) {\n var match = lineRE.exec(lines[i]);\n if (match) {\n result.push(new StackFrame({\n fileName: match[2],\n lineNumber: match[1],\n source: lines[i]\n }));\n }\n }\n return result;\n },\n parseOpera10: function ErrorStackParser$$parseOpera10(e) {\n var lineRE = /Line (\\d+).*script (?:in )?(\\S+)(?:: In function (\\S+))?$/i;\n var lines = e.stacktrace.split('\\n');\n var result = [];\n for (var i = 0, len = lines.length; i < len; i += 2) {\n var match = lineRE.exec(lines[i]);\n if (match) {\n result.push(new StackFrame({\n functionName: match[3] || undefined,\n fileName: match[2],\n lineNumber: match[1],\n source: lines[i]\n }));\n }\n }\n return result;\n },\n // Opera 10.65+ Error.stack very similar to FF/Safari\n parseOpera11: function ErrorStackParser$$parseOpera11(error) {\n var filtered = error.stack.split('\\n').filter(function (line) {\n return !!line.match(FIREFOX_SAFARI_STACK_REGEXP) && !line.match(/^Error created at/);\n }, this);\n return filtered.map(function (line) {\n var tokens = line.split('@');\n var locationParts = this.extractLocation(tokens.pop());\n var functionCall = tokens.shift() || '';\n var functionName = functionCall.replace(//, '$2').replace(/\\([^)]*\\)/g, '') || undefined;\n var argsRaw;\n if (functionCall.match(/\\(([^)]*)\\)/)) {\n argsRaw = functionCall.replace(/^[^(]+\\(([^)]*)\\)$/, '$1');\n }\n var args = argsRaw === undefined || argsRaw === '[arguments not available]' ? undefined : argsRaw.split(',');\n return new StackFrame({\n functionName: functionName,\n args: args,\n fileName: locationParts[0],\n lineNumber: locationParts[1],\n columnNumber: locationParts[2],\n source: line\n });\n }, this);\n }\n };\n});\n\n/***/ }),\n\n/***/ 69:\n/***/ ((module) => {\n\n\n\nfunction nullthrows(x, message) {\n if (x != null) {\n return x;\n }\n var error = new Error(message !== undefined ? message : 'Got unexpected ' + x);\n error.framesToPop = 1; // Skip nullthrows's own stack frame.\n throw error;\n}\nmodule.exports = nullthrows;\nmodule.exports[\"default\"] = nullthrows;\nObject.defineProperty(module.exports, \"__esModule\", ({\n value: true\n}));\n\n/***/ }),\n\n/***/ 356:\n/***/ (function(module, exports) {\n\nvar __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;(function (root, factory) {\n 'use strict';\n\n // Universal Module Definition (UMD) to support AMD, CommonJS/Node.js, Rhino, and browsers.\n\n /* istanbul ignore next */\n if (true) {\n !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?\n\t\t(__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n } else {}\n})(this, function () {\n 'use strict';\n\n function _isNumber(n) {\n return !isNaN(parseFloat(n)) && isFinite(n);\n }\n function _capitalize(str) {\n return str.charAt(0).toUpperCase() + str.substring(1);\n }\n function _getter(p) {\n return function () {\n return this[p];\n };\n }\n var booleanProps = ['isConstructor', 'isEval', 'isNative', 'isToplevel'];\n var numericProps = ['columnNumber', 'lineNumber'];\n var stringProps = ['fileName', 'functionName', 'source'];\n var arrayProps = ['args'];\n var props = booleanProps.concat(numericProps, stringProps, arrayProps);\n function StackFrame(obj) {\n if (!obj) return;\n for (var i = 0; i < props.length; i++) {\n if (obj[props[i]] !== undefined) {\n this['set' + _capitalize(props[i])](obj[props[i]]);\n }\n }\n }\n StackFrame.prototype = {\n getArgs: function () {\n return this.args;\n },\n setArgs: function (v) {\n if (Object.prototype.toString.call(v) !== '[object Array]') {\n throw new TypeError('Args must be an Array');\n }\n this.args = v;\n },\n getEvalOrigin: function () {\n return this.evalOrigin;\n },\n setEvalOrigin: function (v) {\n if (v instanceof StackFrame) {\n this.evalOrigin = v;\n } else if (v instanceof Object) {\n this.evalOrigin = new StackFrame(v);\n } else {\n throw new TypeError('Eval Origin must be an Object or StackFrame');\n }\n },\n toString: function () {\n var fileName = this.getFileName() || '';\n var lineNumber = this.getLineNumber() || '';\n var columnNumber = this.getColumnNumber() || '';\n var functionName = this.getFunctionName() || '';\n if (this.getIsEval()) {\n if (fileName) {\n return '[eval] (' + fileName + ':' + lineNumber + ':' + columnNumber + ')';\n }\n return '[eval]:' + lineNumber + ':' + columnNumber;\n }\n if (functionName) {\n return functionName + ' (' + fileName + ':' + lineNumber + ':' + columnNumber + ')';\n }\n return fileName + ':' + lineNumber + ':' + columnNumber;\n }\n };\n StackFrame.fromString = function StackFrame$$fromString(str) {\n var argsStartIndex = str.indexOf('(');\n var argsEndIndex = str.lastIndexOf(')');\n var functionName = str.substring(0, argsStartIndex);\n var args = str.substring(argsStartIndex + 1, argsEndIndex).split(',');\n var locationString = str.substring(argsEndIndex + 1);\n if (locationString.indexOf('@') === 0) {\n var parts = /@(.+?)(?::(\\d+))?(?::(\\d+))?$/.exec(locationString, '');\n var fileName = parts[1];\n var lineNumber = parts[2];\n var columnNumber = parts[3];\n }\n return new StackFrame({\n functionName: functionName,\n args: args || undefined,\n fileName: fileName,\n lineNumber: lineNumber || undefined,\n columnNumber: columnNumber || undefined\n });\n };\n for (var i = 0; i < booleanProps.length; i++) {\n StackFrame.prototype['get' + _capitalize(booleanProps[i])] = _getter(booleanProps[i]);\n StackFrame.prototype['set' + _capitalize(booleanProps[i])] = function (p) {\n return function (v) {\n this[p] = Boolean(v);\n };\n }(booleanProps[i]);\n }\n for (var j = 0; j < numericProps.length; j++) {\n StackFrame.prototype['get' + _capitalize(numericProps[j])] = _getter(numericProps[j]);\n StackFrame.prototype['set' + _capitalize(numericProps[j])] = function (p) {\n return function (v) {\n if (!_isNumber(v)) {\n throw new TypeError(p + ' must be a Number');\n }\n this[p] = Number(v);\n };\n }(numericProps[j]);\n }\n for (var k = 0; k < stringProps.length; k++) {\n StackFrame.prototype['get' + _capitalize(stringProps[k])] = _getter(stringProps[k]);\n StackFrame.prototype['set' + _capitalize(stringProps[k])] = function (p) {\n return function (v) {\n this[p] = String(v);\n };\n }(stringProps[k]);\n }\n return StackFrame;\n});\n\n/***/ }),\n\n/***/ 853:\n/***/ ((module) => {\n\n/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nvar runtime = function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n function define(obj, key, value) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n return obj[key];\n }\n try {\n // IE 8 has a broken Object.defineProperty that only works on DOM objects.\n define({}, \"\");\n } catch (err) {\n define = function (obj, key, value) {\n return obj[key] = value;\n };\n }\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n return generator;\n }\n exports.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return {\n type: \"normal\",\n arg: fn.call(obj, arg)\n };\n } catch (err) {\n return {\n type: \"throw\",\n arg: err\n };\n }\n }\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n IteratorPrototype[iteratorSymbol] = function () {\n return this;\n };\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;\n GeneratorFunctionPrototype.constructor = GeneratorFunction;\n GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, \"GeneratorFunction\");\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function (method) {\n define(prototype, method, function (arg) {\n return this._invoke(method, arg);\n });\n });\n }\n exports.isGeneratorFunction = function (genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\" : false;\n };\n exports.mark = function (genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n define(genFun, toStringTagSymbol, \"GeneratorFunction\");\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n exports.awrap = function (arg) {\n return {\n __await: arg\n };\n };\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value && typeof value === \"object\" && hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function (value) {\n invoke(\"next\", value, resolve, reject);\n }, function (err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n return PromiseImpl.resolve(value).then(function (unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function (error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n var previousPromise;\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function (resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n defineIteratorMethods(AsyncIterator.prototype);\n AsyncIterator.prototype[asyncIteratorSymbol] = function () {\n return this;\n };\n exports.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl);\n return exports.isGeneratorFunction(outerFn) ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function (result) {\n return result.done ? result.value : iter.next();\n });\n };\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n context.method = method;\n context.arg = arg;\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n context.dispatchException(context.arg);\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n state = GenStateExecuting;\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done ? GenStateCompleted : GenStateSuspendedYield;\n if (record.arg === ContinueSentinel) {\n continue;\n }\n return {\n value: record.arg,\n done: context.done\n };\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n if (context.method === \"throw\") {\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n context.method = \"throw\";\n context.arg = new TypeError(\"The iterator does not provide a 'throw' method\");\n }\n return ContinueSentinel;\n }\n var record = tryCatch(method, delegate.iterator, context.arg);\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n var info = record.arg;\n if (!info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n define(Gp, toStringTagSymbol, \"Generator\");\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n Gp[iteratorSymbol] = function () {\n return this;\n };\n Gp.toString = function () {\n return \"[object Generator]\";\n };\n function pushTryEntry(locs) {\n var entry = {\n tryLoc: locs[0]\n };\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n this.tryEntries.push(entry);\n }\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{\n tryLoc: \"root\"\n }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n exports.keys = function (object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n if (!isNaN(iterable.length)) {\n var i = -1,\n next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n next.value = undefined;\n next.done = true;\n return next;\n };\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return {\n next: doneResult\n };\n }\n exports.values = values;\n function doneResult() {\n return {\n value: undefined,\n done: true\n };\n }\n Context.prototype = {\n constructor: Context,\n reset: function (skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n this.method = \"next\";\n this.arg = undefined;\n this.tryEntries.forEach(resetTryEntry);\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" && hasOwn.call(this, name) && !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n stop: function () {\n this.done = true;\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n return this.rval;\n },\n dispatchException: function (exception) {\n if (this.done) {\n throw exception;\n }\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n return !!caught;\n }\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n abrupt: function (type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n if (finallyEntry && (type === \"break\" || type === \"continue\") && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n return this.complete(record);\n },\n complete: function (record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n if (record.type === \"break\" || record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n return ContinueSentinel;\n },\n finish: function (finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n \"catch\": function (tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n delegateYield: function (iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n return ContinueSentinel;\n }\n };\n\n // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n return exports;\n}(\n// If this script is executing as a CommonJS module, use module.exports\n// as the regeneratorRuntime namespace. Otherwise create a new empty\n// object. Either way, the resulting object will be used to initialize\n// the regeneratorRuntime variable at the top of this file.\n true ? module.exports : 0);\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n}\n\n/***/ })\n\n/******/ });\n/************************************************************************/\n/******/ // The module cache\n/******/ var __webpack_module_cache__ = {};\n/******/ \n/******/ // The require function\n/******/ function __webpack_require__(moduleId) {\n/******/ \t// Check if module is in cache\n/******/ \tvar cachedModule = __webpack_module_cache__[moduleId];\n/******/ \tif (cachedModule !== undefined) {\n/******/ \t\treturn cachedModule.exports;\n/******/ \t}\n/******/ \t// Create a new module (and put it into the cache)\n/******/ \tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t// no module.id needed\n/******/ \t\t// no module.loaded needed\n/******/ \t\texports: {}\n/******/ \t};\n/******/ \n/******/ \t// Execute the module function\n/******/ \t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/ \n/******/ \t// Return the exports of the module\n/******/ \treturn module.exports;\n/******/ }\n/******/ \n/************************************************************************/\n/******/ /* webpack/runtime/compat get default export */\n/******/ (() => {\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = (module) => {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\t() => (module['default']) :\n/******/ \t\t\t() => (module);\n/******/ \t\t__webpack_require__.d(getter, { a: getter });\n/******/ \t\treturn getter;\n/******/ \t};\n/******/ })();\n/******/ \n/******/ /* webpack/runtime/define property getters */\n/******/ (() => {\n/******/ \t// define getter functions for harmony exports\n/******/ \t__webpack_require__.d = (exports, definition) => {\n/******/ \t\tfor(var key in definition) {\n/******/ \t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t}\n/******/ \t\t}\n/******/ \t};\n/******/ })();\n/******/ \n/******/ /* webpack/runtime/hasOwnProperty shorthand */\n/******/ (() => {\n/******/ \t__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))\n/******/ })();\n/******/ \n/************************************************************************/\nvar __webpack_exports__ = {};\n// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n(() => {\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, {\n \"importFile\": () => (/* binding */ importFile_worker_importFile)\n});\n\n// EXTERNAL MODULE: ../react-devtools-timeline/node_modules/regenerator-runtime/runtime.js\nvar runtime = __webpack_require__(853);\n// EXTERNAL MODULE: ../../node_modules/@elg/speedscope/dist/library/library.js\nvar library = __webpack_require__(41);\n;// CONCATENATED MODULE: ../react-devtools-shared/src/devtools/constants.js\nconst CHANGE_LOG_URL = 'https://github.com/facebook/react/blob/main/packages/react-devtools/CHANGELOG.md';\nconst UNSUPPORTED_VERSION_URL = 'https://reactjs.org/blog/2019/08/15/new-react-devtools.html#how-do-i-get-the-old-version-back';\nconst REACT_DEVTOOLS_WORKPLACE_URL = 'https://fburl.com/react-devtools-workplace-group';\nconst THEME_STYLES = {\n light: {\n '--color-attribute-name': '#ef6632',\n '--color-attribute-name-not-editable': '#23272f',\n '--color-attribute-name-inverted': 'rgba(255, 255, 255, 0.7)',\n '--color-attribute-value': '#1a1aa6',\n '--color-attribute-value-inverted': '#ffffff',\n '--color-attribute-editable-value': '#1a1aa6',\n '--color-background': '#ffffff',\n '--color-background-hover': 'rgba(0, 136, 250, 0.1)',\n '--color-background-inactive': '#e5e5e5',\n '--color-background-invalid': '#fff0f0',\n '--color-background-selected': '#0088fa',\n '--color-button-background': '#ffffff',\n '--color-button-background-focus': '#ededed',\n '--color-button-background-hover': 'rgba(0, 0, 0, 0.2)',\n '--color-button': '#5f6673',\n '--color-button-disabled': '#cfd1d5',\n '--color-button-active': '#0088fa',\n '--color-button-focus': '#23272f',\n '--color-button-hover': '#23272f',\n '--color-border': '#eeeeee',\n '--color-commit-did-not-render-fill': '#cfd1d5',\n '--color-commit-did-not-render-fill-text': '#000000',\n '--color-commit-did-not-render-pattern': '#cfd1d5',\n '--color-commit-did-not-render-pattern-text': '#333333',\n '--color-commit-gradient-0': '#37afa9',\n '--color-commit-gradient-1': '#63b19e',\n '--color-commit-gradient-2': '#80b393',\n '--color-commit-gradient-3': '#97b488',\n '--color-commit-gradient-4': '#abb67d',\n '--color-commit-gradient-5': '#beb771',\n '--color-commit-gradient-6': '#cfb965',\n '--color-commit-gradient-7': '#dfba57',\n '--color-commit-gradient-8': '#efbb49',\n '--color-commit-gradient-9': '#febc38',\n '--color-commit-gradient-text': '#000000',\n '--color-component-name': '#6a51b2',\n '--color-component-name-inverted': '#ffffff',\n '--color-component-badge-background': '#e6e6e6',\n '--color-component-badge-background-inverted': 'rgba(255, 255, 255, 0.25)',\n '--color-component-badge-count': '#777d88',\n '--color-component-badge-count-inverted': 'rgba(255, 255, 255, 0.7)',\n '--color-console-error-badge-text': '#ffffff',\n '--color-console-error-background': '#fff0f0',\n '--color-console-error-border': '#ffd6d6',\n '--color-console-error-icon': '#eb3941',\n '--color-console-error-text': '#fe2e31',\n '--color-console-warning-badge-text': '#000000',\n '--color-console-warning-background': '#fffbe5',\n '--color-console-warning-border': '#fff5c1',\n '--color-console-warning-icon': '#f4bd00',\n '--color-console-warning-text': '#64460c',\n '--color-context-background': 'rgba(0,0,0,.9)',\n '--color-context-background-hover': 'rgba(255, 255, 255, 0.1)',\n '--color-context-background-selected': '#178fb9',\n '--color-context-border': '#3d424a',\n '--color-context-text': '#ffffff',\n '--color-context-text-selected': '#ffffff',\n '--color-dim': '#777d88',\n '--color-dimmer': '#cfd1d5',\n '--color-dimmest': '#eff0f1',\n '--color-error-background': 'hsl(0, 100%, 97%)',\n '--color-error-border': 'hsl(0, 100%, 92%)',\n '--color-error-text': '#ff0000',\n '--color-expand-collapse-toggle': '#777d88',\n '--color-forget-badge-background': '#2683e2',\n '--color-forget-badge-background-inverted': '#1a6bbc',\n '--color-forget-text': '#fff',\n '--color-link': '#0000ff',\n '--color-modal-background': 'rgba(255, 255, 255, 0.75)',\n '--color-bridge-version-npm-background': '#eff0f1',\n '--color-bridge-version-npm-text': '#000000',\n '--color-bridge-version-number': '#0088fa',\n '--color-primitive-hook-badge-background': '#e5e5e5',\n '--color-primitive-hook-badge-text': '#5f6673',\n '--color-record-active': '#fc3a4b',\n '--color-record-hover': '#3578e5',\n '--color-record-inactive': '#0088fa',\n '--color-resize-bar': '#eeeeee',\n '--color-resize-bar-active': '#dcdcdc',\n '--color-resize-bar-border': '#d1d1d1',\n '--color-resize-bar-dot': '#333333',\n '--color-timeline-internal-module': '#d1d1d1',\n '--color-timeline-internal-module-hover': '#c9c9c9',\n '--color-timeline-internal-module-text': '#444',\n '--color-timeline-native-event': '#ccc',\n '--color-timeline-native-event-hover': '#aaa',\n '--color-timeline-network-primary': '#fcf3dc',\n '--color-timeline-network-primary-hover': '#f0e7d1',\n '--color-timeline-network-secondary': '#efc457',\n '--color-timeline-network-secondary-hover': '#e3ba52',\n '--color-timeline-priority-background': '#f6f6f6',\n '--color-timeline-priority-border': '#eeeeee',\n '--color-timeline-user-timing': '#c9cacd',\n '--color-timeline-user-timing-hover': '#93959a',\n '--color-timeline-react-idle': '#d3e5f6',\n '--color-timeline-react-idle-hover': '#c3d9ef',\n '--color-timeline-react-render': '#9fc3f3',\n '--color-timeline-react-render-hover': '#83afe9',\n '--color-timeline-react-render-text': '#11365e',\n '--color-timeline-react-commit': '#c88ff0',\n '--color-timeline-react-commit-hover': '#b281d6',\n '--color-timeline-react-commit-text': '#3e2c4a',\n '--color-timeline-react-layout-effects': '#b281d6',\n '--color-timeline-react-layout-effects-hover': '#9d71bd',\n '--color-timeline-react-layout-effects-text': '#3e2c4a',\n '--color-timeline-react-passive-effects': '#b281d6',\n '--color-timeline-react-passive-effects-hover': '#9d71bd',\n '--color-timeline-react-passive-effects-text': '#3e2c4a',\n '--color-timeline-react-schedule': '#9fc3f3',\n '--color-timeline-react-schedule-hover': '#2683E2',\n '--color-timeline-react-suspense-rejected': '#f1cc14',\n '--color-timeline-react-suspense-rejected-hover': '#ffdf37',\n '--color-timeline-react-suspense-resolved': '#a6e59f',\n '--color-timeline-react-suspense-resolved-hover': '#89d281',\n '--color-timeline-react-suspense-unresolved': '#c9cacd',\n '--color-timeline-react-suspense-unresolved-hover': '#93959a',\n '--color-timeline-thrown-error': '#ee1638',\n '--color-timeline-thrown-error-hover': '#da1030',\n '--color-timeline-text-color': '#000000',\n '--color-timeline-text-dim-color': '#ccc',\n '--color-timeline-react-work-border': '#eeeeee',\n '--color-search-match': 'yellow',\n '--color-search-match-current': '#f7923b',\n '--color-selected-tree-highlight-active': 'rgba(0, 136, 250, 0.1)',\n '--color-selected-tree-highlight-inactive': 'rgba(0, 0, 0, 0.05)',\n '--color-scroll-caret': 'rgba(150, 150, 150, 0.5)',\n '--color-tab-selected-border': '#0088fa',\n '--color-text': '#000000',\n '--color-text-invalid': '#ff0000',\n '--color-text-selected': '#ffffff',\n '--color-toggle-background-invalid': '#fc3a4b',\n '--color-toggle-background-on': '#0088fa',\n '--color-toggle-background-off': '#cfd1d5',\n '--color-toggle-text': '#ffffff',\n '--color-warning-background': '#fb3655',\n '--color-warning-background-hover': '#f82042',\n '--color-warning-text-color': '#ffffff',\n '--color-warning-text-color-inverted': '#fd4d69',\n // The styles below should be kept in sync with 'root.css'\n // They are repeated there because they're used by e.g. tooltips or context menus\n // which get rendered outside of the DOM subtree (where normal theme/styles are written).\n '--color-scroll-thumb': '#c2c2c2',\n '--color-scroll-track': '#fafafa',\n '--color-tooltip-background': 'rgba(0, 0, 0, 0.9)',\n '--color-tooltip-text': '#ffffff'\n },\n dark: {\n '--color-attribute-name': '#9d87d2',\n '--color-attribute-name-not-editable': '#ededed',\n '--color-attribute-name-inverted': '#282828',\n '--color-attribute-value': '#cedae0',\n '--color-attribute-value-inverted': '#ffffff',\n '--color-attribute-editable-value': 'yellow',\n '--color-background': '#282c34',\n '--color-background-hover': 'rgba(255, 255, 255, 0.1)',\n '--color-background-inactive': '#3d424a',\n '--color-background-invalid': '#5c0000',\n '--color-background-selected': '#178fb9',\n '--color-button-background': '#282c34',\n '--color-button-background-focus': '#3d424a',\n '--color-button-background-hover': 'rgba(255, 255, 255, 0.2)',\n '--color-button': '#afb3b9',\n '--color-button-active': '#61dafb',\n '--color-button-disabled': '#4f5766',\n '--color-button-focus': '#a2e9fc',\n '--color-button-hover': '#ededed',\n '--color-border': '#3d424a',\n '--color-commit-did-not-render-fill': '#777d88',\n '--color-commit-did-not-render-fill-text': '#000000',\n '--color-commit-did-not-render-pattern': '#666c77',\n '--color-commit-did-not-render-pattern-text': '#ffffff',\n '--color-commit-gradient-0': '#37afa9',\n '--color-commit-gradient-1': '#63b19e',\n '--color-commit-gradient-2': '#80b393',\n '--color-commit-gradient-3': '#97b488',\n '--color-commit-gradient-4': '#abb67d',\n '--color-commit-gradient-5': '#beb771',\n '--color-commit-gradient-6': '#cfb965',\n '--color-commit-gradient-7': '#dfba57',\n '--color-commit-gradient-8': '#efbb49',\n '--color-commit-gradient-9': '#febc38',\n '--color-commit-gradient-text': '#000000',\n '--color-component-name': '#61dafb',\n '--color-component-name-inverted': '#282828',\n '--color-component-badge-background': '#5e6167',\n '--color-component-badge-background-inverted': '#46494e',\n '--color-component-badge-count': '#8f949d',\n '--color-component-badge-count-inverted': 'rgba(255, 255, 255, 0.85)',\n '--color-console-error-badge-text': '#000000',\n '--color-console-error-background': '#290000',\n '--color-console-error-border': '#5c0000',\n '--color-console-error-icon': '#eb3941',\n '--color-console-error-text': '#fc7f7f',\n '--color-console-warning-badge-text': '#000000',\n '--color-console-warning-background': '#332b00',\n '--color-console-warning-border': '#665500',\n '--color-console-warning-icon': '#f4bd00',\n '--color-console-warning-text': '#f5f2ed',\n '--color-context-background': 'rgba(255,255,255,.95)',\n '--color-context-background-hover': 'rgba(0, 136, 250, 0.1)',\n '--color-context-background-selected': '#0088fa',\n '--color-context-border': '#eeeeee',\n '--color-context-text': '#000000',\n '--color-context-text-selected': '#ffffff',\n '--color-dim': '#8f949d',\n '--color-dimmer': '#777d88',\n '--color-dimmest': '#4f5766',\n '--color-error-background': '#200',\n '--color-error-border': '#900',\n '--color-error-text': '#f55',\n '--color-expand-collapse-toggle': '#8f949d',\n '--color-forget-badge-background': '#2683e2',\n '--color-forget-badge-background-inverted': '#1a6bbc',\n '--color-forget-text': '#fff',\n '--color-link': '#61dafb',\n '--color-modal-background': 'rgba(0, 0, 0, 0.75)',\n '--color-bridge-version-npm-background': 'rgba(0, 0, 0, 0.25)',\n '--color-bridge-version-npm-text': '#ffffff',\n '--color-bridge-version-number': 'yellow',\n '--color-primitive-hook-badge-background': 'rgba(0, 0, 0, 0.25)',\n '--color-primitive-hook-badge-text': 'rgba(255, 255, 255, 0.7)',\n '--color-record-active': '#fc3a4b',\n '--color-record-hover': '#a2e9fc',\n '--color-record-inactive': '#61dafb',\n '--color-resize-bar': '#282c34',\n '--color-resize-bar-active': '#31363f',\n '--color-resize-bar-border': '#3d424a',\n '--color-resize-bar-dot': '#cfd1d5',\n '--color-timeline-internal-module': '#303542',\n '--color-timeline-internal-module-hover': '#363b4a',\n '--color-timeline-internal-module-text': '#7f8899',\n '--color-timeline-native-event': '#b2b2b2',\n '--color-timeline-native-event-hover': '#949494',\n '--color-timeline-network-primary': '#fcf3dc',\n '--color-timeline-network-primary-hover': '#e3dbc5',\n '--color-timeline-network-secondary': '#efc457',\n '--color-timeline-network-secondary-hover': '#d6af4d',\n '--color-timeline-priority-background': '#1d2129',\n '--color-timeline-priority-border': '#282c34',\n '--color-timeline-user-timing': '#c9cacd',\n '--color-timeline-user-timing-hover': '#93959a',\n '--color-timeline-react-idle': '#3d485b',\n '--color-timeline-react-idle-hover': '#465269',\n '--color-timeline-react-render': '#2683E2',\n '--color-timeline-react-render-hover': '#1a76d4',\n '--color-timeline-react-render-text': '#11365e',\n '--color-timeline-react-commit': '#731fad',\n '--color-timeline-react-commit-hover': '#611b94',\n '--color-timeline-react-commit-text': '#e5c1ff',\n '--color-timeline-react-layout-effects': '#611b94',\n '--color-timeline-react-layout-effects-hover': '#51167a',\n '--color-timeline-react-layout-effects-text': '#e5c1ff',\n '--color-timeline-react-passive-effects': '#611b94',\n '--color-timeline-react-passive-effects-hover': '#51167a',\n '--color-timeline-react-passive-effects-text': '#e5c1ff',\n '--color-timeline-react-schedule': '#2683E2',\n '--color-timeline-react-schedule-hover': '#1a76d4',\n '--color-timeline-react-suspense-rejected': '#f1cc14',\n '--color-timeline-react-suspense-rejected-hover': '#e4c00f',\n '--color-timeline-react-suspense-resolved': '#a6e59f',\n '--color-timeline-react-suspense-resolved-hover': '#89d281',\n '--color-timeline-react-suspense-unresolved': '#c9cacd',\n '--color-timeline-react-suspense-unresolved-hover': '#93959a',\n '--color-timeline-thrown-error': '#fb3655',\n '--color-timeline-thrown-error-hover': '#f82042',\n '--color-timeline-text-color': '#282c34',\n '--color-timeline-text-dim-color': '#555b66',\n '--color-timeline-react-work-border': '#3d424a',\n '--color-search-match': 'yellow',\n '--color-search-match-current': '#f7923b',\n '--color-selected-tree-highlight-active': 'rgba(23, 143, 185, 0.15)',\n '--color-selected-tree-highlight-inactive': 'rgba(255, 255, 255, 0.05)',\n '--color-scroll-caret': '#4f5766',\n '--color-shadow': 'rgba(0, 0, 0, 0.5)',\n '--color-tab-selected-border': '#178fb9',\n '--color-text': '#ffffff',\n '--color-text-invalid': '#ff8080',\n '--color-text-selected': '#ffffff',\n '--color-toggle-background-invalid': '#fc3a4b',\n '--color-toggle-background-on': '#178fb9',\n '--color-toggle-background-off': '#777d88',\n '--color-toggle-text': '#ffffff',\n '--color-warning-background': '#ee1638',\n '--color-warning-background-hover': '#da1030',\n '--color-warning-text-color': '#ffffff',\n '--color-warning-text-color-inverted': '#ee1638',\n // The styles below should be kept in sync with 'root.css'\n // They are repeated there because they're used by e.g. tooltips or context menus\n // which get rendered outside of the DOM subtree (where normal theme/styles are written).\n '--color-scroll-thumb': '#afb3b9',\n '--color-scroll-track': '#313640',\n '--color-tooltip-background': 'rgba(255, 255, 255, 0.95)',\n '--color-tooltip-text': '#000000'\n },\n compact: {\n '--font-size-monospace-small': '9px',\n '--font-size-monospace-normal': '11px',\n '--font-size-monospace-large': '15px',\n '--font-size-sans-small': '10px',\n '--font-size-sans-normal': '12px',\n '--font-size-sans-large': '14px',\n '--line-height-data': '18px'\n },\n comfortable: {\n '--font-size-monospace-small': '10px',\n '--font-size-monospace-normal': '13px',\n '--font-size-monospace-large': '17px',\n '--font-size-sans-small': '12px',\n '--font-size-sans-normal': '14px',\n '--font-size-sans-large': '16px',\n '--line-height-data': '22px'\n }\n};\n\n// HACK\n//\n// Sometimes the inline target is rendered before root styles are applied,\n// which would result in e.g. NaN itemSize being passed to react-window list.\nconst COMFORTABLE_LINE_HEIGHT = parseInt(THEME_STYLES.comfortable['--line-height-data'], 10);\nconst COMPACT_LINE_HEIGHT = parseInt(THEME_STYLES.compact['--line-height-data'], 10);\n\n;// CONCATENATED MODULE: ../react-devtools-timeline/src/constants.js\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\n\nconst REACT_TOTAL_NUM_LANES = 31;\n\n// Increment this number any time a backwards breaking change is made to the profiler metadata.\nconst SCHEDULING_PROFILER_VERSION = 1;\nconst SNAPSHOT_MAX_HEIGHT = 60;\n;// CONCATENATED MODULE: ../react-devtools-timeline/src/import-worker/InvalidProfileError.js\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\n/**\n * An error thrown when an invalid profile could not be processed.\n */\nclass InvalidProfileError extends Error {}\n;// CONCATENATED MODULE: ../../node_modules/memoize-one/dist/memoize-one.esm.js\nfunction areInputsEqual(newInputs, lastInputs) {\n if (newInputs.length !== lastInputs.length) {\n return false;\n }\n for (var i = 0; i < newInputs.length; i++) {\n if (newInputs[i] !== lastInputs[i]) {\n return false;\n }\n }\n return true;\n}\nfunction memoizeOne(resultFn, isEqual) {\n if (isEqual === void 0) {\n isEqual = areInputsEqual;\n }\n var lastThis;\n var lastArgs = [];\n var lastResult;\n var calledOnce = false;\n function memoized() {\n var newArgs = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n newArgs[_i] = arguments[_i];\n }\n if (calledOnce && lastThis === this && isEqual(newArgs, lastArgs)) {\n return lastResult;\n }\n lastResult = resultFn.apply(this, newArgs);\n calledOnce = true;\n lastThis = this;\n lastArgs = newArgs;\n return lastResult;\n }\n return memoized;\n}\n/* harmony default export */ const memoize_one_esm = (memoizeOne);\n;// CONCATENATED MODULE: ../react-devtools-timeline/src/utils/getBatchRange.js\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\n\nfunction unmemoizedGetBatchRange(batchUID, data, minStartTime = 0) {\n const measures = data.batchUIDToMeasuresMap.get(batchUID);\n if (measures == null || measures.length === 0) {\n throw Error(`Could not find measures with batch UID \"${batchUID}\"`);\n }\n const lastMeasure = measures[measures.length - 1];\n const stopTime = lastMeasure.timestamp + lastMeasure.duration;\n if (stopTime < minStartTime) {\n return [0, 0];\n }\n let startTime = minStartTime;\n for (let index = 0; index < measures.length; index++) {\n const measure = measures[index];\n if (measure.timestamp >= minStartTime) {\n startTime = measure.timestamp;\n break;\n }\n }\n return [startTime, stopTime];\n}\nconst getBatchRange = memoize_one_esm(unmemoizedGetBatchRange);\n// EXTERNAL MODULE: ../../node_modules/error-stack-parser/error-stack-parser.js\nvar error_stack_parser = __webpack_require__(715);\nvar error_stack_parser_default = /*#__PURE__*/__webpack_require__.n(error_stack_parser);\n;// CONCATENATED MODULE: ../react-devtools-timeline/src/import-worker/preprocessData.js\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\n\n\n\n\n\nconst NATIVE_EVENT_DURATION_THRESHOLD = 20;\nconst NESTED_UPDATE_DURATION_THRESHOLD = 20;\nconst WARNING_STRINGS = {\n LONG_EVENT_HANDLER: 'An event handler scheduled a big update with React. Consider using the Transition API to defer some of this work.',\n NESTED_UPDATE: 'A big nested update was scheduled during layout. ' + 'Nested updates require React to re-render synchronously before the browser can paint. ' + 'Consider delaying this update by moving it to a passive effect (useEffect).',\n SUSPEND_DURING_UPDATE: 'A component suspended during an update which caused a fallback to be shown. ' + \"Consider using the Transition API to avoid hiding components after they've been mounted.\"\n};\n\n// Exported for tests\nfunction getLanesFromTransportDecimalBitmask(laneBitmaskString) {\n const laneBitmask = parseInt(laneBitmaskString, 10);\n\n // As negative numbers are stored in two's complement format, our bitmask\n // checks will be thrown off by them.\n if (laneBitmask < 0) {\n return [];\n }\n const lanes = [];\n let powersOfTwo = 0;\n while (powersOfTwo <= REACT_TOTAL_NUM_LANES) {\n if (1 << powersOfTwo & laneBitmask) {\n lanes.push(powersOfTwo);\n }\n powersOfTwo++;\n }\n return lanes;\n}\nfunction updateLaneToLabelMap(profilerData, laneLabelTuplesString) {\n // These marks appear multiple times in the data;\n // We only need to extact them once.\n if (profilerData.laneToLabelMap.size === 0) {\n const laneLabelTuples = laneLabelTuplesString.split(',');\n for (let laneIndex = 0; laneIndex < laneLabelTuples.length; laneIndex++) {\n // The numeric lane value (e.g. 64) isn't important.\n // The profiler parses and stores the lane's position within the bitmap,\n // (e.g. lane 1 is index 0, lane 16 is index 4).\n profilerData.laneToLabelMap.set(laneIndex, laneLabelTuples[laneIndex]);\n }\n }\n}\nlet profilerVersion = null;\nfunction getLastType(stack) {\n if (stack.length > 0) {\n const {\n type\n } = stack[stack.length - 1];\n return type;\n }\n return null;\n}\nfunction getDepth(stack) {\n if (stack.length > 0) {\n const {\n depth,\n type\n } = stack[stack.length - 1];\n return type === 'render-idle' ? depth : depth + 1;\n }\n return 0;\n}\nfunction markWorkStarted(type, startTime, lanes, currentProfilerData, state) {\n const {\n batchUID,\n measureStack\n } = state;\n const depth = getDepth(measureStack);\n const measure = {\n type,\n batchUID,\n depth,\n lanes,\n timestamp: startTime,\n duration: 0\n };\n state.measureStack.push({\n depth,\n measure,\n startTime,\n type\n });\n\n // This array is pre-initialized when the batchUID is generated.\n const measures = currentProfilerData.batchUIDToMeasuresMap.get(batchUID);\n if (measures != null) {\n measures.push(measure);\n } else {\n currentProfilerData.batchUIDToMeasuresMap.set(state.batchUID, [measure]);\n }\n\n // This array is pre-initialized before processing starts.\n lanes.forEach(lane => {\n currentProfilerData.laneToReactMeasureMap.get(lane).push(measure);\n });\n}\nfunction markWorkCompleted(type, stopTime, currentProfilerData, stack) {\n if (stack.length === 0) {\n console.error('Unexpected type \"%s\" completed at %sms while stack is empty.', type, stopTime);\n // Ignore work \"completion\" user timing mark that doesn't complete anything\n return;\n }\n const last = stack[stack.length - 1];\n if (last.type !== type) {\n console.error('Unexpected type \"%s\" completed at %sms before \"%s\" completed.', type, stopTime, last.type);\n }\n\n // $FlowFixMe[incompatible-use]\n const {\n measure,\n startTime\n } = stack.pop();\n if (!measure) {\n console.error('Could not find matching measure for type \"%s\".', type);\n }\n\n // $FlowFixMe[cannot-write] This property should not be writable outside of this function.\n measure.duration = stopTime - startTime;\n}\nfunction throwIfIncomplete(type, stack) {\n const lastIndex = stack.length - 1;\n if (lastIndex >= 0) {\n const last = stack[lastIndex];\n if (last.stopTime === undefined && last.type === type) {\n throw new InvalidProfileError(`Unexpected type \"${type}\" started before \"${last.type}\" completed.`);\n }\n }\n}\nfunction processEventDispatch(event, timestamp, profilerData, state) {\n const data = event.args.data;\n const type = data.type;\n if (type.startsWith('react-')) {\n const stackTrace = data.stackTrace;\n if (stackTrace) {\n const topFrame = stackTrace[stackTrace.length - 1];\n if (topFrame.url.includes('/react-dom.')) {\n // Filter out fake React events dispatched by invokeGuardedCallbackDev.\n return;\n }\n }\n }\n\n // Reduce noise from events like DOMActivate, load/unload, etc. which are usually not relevant\n if (type === 'blur' || type === 'click' || type === 'input' || type.startsWith('focus') || type.startsWith('key') || type.startsWith('mouse') || type.startsWith('pointer')) {\n const duration = event.dur / 1000;\n let depth = 0;\n while (state.nativeEventStack.length > 0) {\n const prevNativeEvent = state.nativeEventStack[state.nativeEventStack.length - 1];\n const prevStopTime = prevNativeEvent.timestamp + prevNativeEvent.duration;\n if (timestamp < prevStopTime) {\n depth = prevNativeEvent.depth + 1;\n break;\n } else {\n state.nativeEventStack.pop();\n }\n }\n const nativeEvent = {\n depth,\n duration,\n timestamp,\n type,\n warning: null\n };\n profilerData.nativeEvents.push(nativeEvent);\n\n // Keep track of curent event in case future ones overlap.\n // We separate them into different vertical lanes in this case.\n state.nativeEventStack.push(nativeEvent);\n }\n}\nfunction processResourceFinish(event, timestamp, profilerData, state) {\n const requestId = event.args.data.requestId;\n const networkMeasure = state.requestIdToNetworkMeasureMap.get(requestId);\n if (networkMeasure != null) {\n networkMeasure.finishTimestamp = timestamp;\n if (networkMeasure.firstReceivedDataTimestamp === 0) {\n networkMeasure.firstReceivedDataTimestamp = timestamp;\n }\n if (networkMeasure.lastReceivedDataTimestamp === 0) {\n networkMeasure.lastReceivedDataTimestamp = timestamp;\n }\n\n // Clean up now that the resource is done.\n state.requestIdToNetworkMeasureMap.delete(event.args.data.requestId);\n }\n}\nfunction processResourceReceivedData(event, timestamp, profilerData, state) {\n const requestId = event.args.data.requestId;\n const networkMeasure = state.requestIdToNetworkMeasureMap.get(requestId);\n if (networkMeasure != null) {\n if (networkMeasure.firstReceivedDataTimestamp === 0) {\n networkMeasure.firstReceivedDataTimestamp = timestamp;\n }\n networkMeasure.lastReceivedDataTimestamp = timestamp;\n networkMeasure.finishTimestamp = timestamp;\n }\n}\nfunction processResourceReceiveResponse(event, timestamp, profilerData, state) {\n const requestId = event.args.data.requestId;\n const networkMeasure = state.requestIdToNetworkMeasureMap.get(requestId);\n if (networkMeasure != null) {\n networkMeasure.receiveResponseTimestamp = timestamp;\n }\n}\nfunction processScreenshot(event, timestamp, profilerData, state) {\n const encodedSnapshot = event.args.snapshot; // Base 64 encoded\n\n const snapshot = {\n height: 0,\n image: null,\n imageSource: `data:image/png;base64,${encodedSnapshot}`,\n timestamp,\n width: 0\n };\n\n // Delay processing until we've extracted snapshot dimensions.\n let resolveFn = null;\n state.asyncProcessingPromises.push(new Promise(resolve => {\n resolveFn = resolve;\n }));\n\n // Parse the Base64 image data to determine native size.\n // This will be used later to scale for display within the thumbnail strip.\n fetch(snapshot.imageSource).then(response => response.blob()).then(blob => {\n // $FlowFixMe[cannot-resolve-name] createImageBitmap\n createImageBitmap(blob).then(bitmap => {\n snapshot.height = bitmap.height;\n snapshot.width = bitmap.width;\n resolveFn();\n });\n });\n profilerData.snapshots.push(snapshot);\n}\nfunction processResourceSendRequest(event, timestamp, profilerData, state) {\n const data = event.args.data;\n const requestId = data.requestId;\n const availableDepths = new Array(state.requestIdToNetworkMeasureMap.size + 1).fill(true);\n state.requestIdToNetworkMeasureMap.forEach(({\n depth\n }) => {\n availableDepths[depth] = false;\n });\n let depth = 0;\n for (let i = 0; i < availableDepths.length; i++) {\n if (availableDepths[i]) {\n depth = i;\n break;\n }\n }\n const networkMeasure = {\n depth,\n finishTimestamp: 0,\n firstReceivedDataTimestamp: 0,\n lastReceivedDataTimestamp: 0,\n requestId,\n requestMethod: data.requestMethod,\n priority: data.priority,\n sendRequestTimestamp: timestamp,\n receiveResponseTimestamp: 0,\n url: data.url\n };\n state.requestIdToNetworkMeasureMap.set(requestId, networkMeasure);\n profilerData.networkMeasures.push(networkMeasure);\n networkMeasure.sendRequestTimestamp = timestamp;\n}\nfunction processTimelineEvent(event, /** Finalized profiler data up to `event`. May be mutated. */\ncurrentProfilerData, /** Intermediate processor state. May be mutated. */\nstate) {\n const {\n cat,\n name,\n ts,\n ph\n } = event;\n const startTime = (ts - currentProfilerData.startTime) / 1000;\n switch (cat) {\n case 'disabled-by-default-devtools.screenshot':\n processScreenshot(event, startTime, currentProfilerData, state);\n break;\n case 'devtools.timeline':\n switch (name) {\n case 'EventDispatch':\n processEventDispatch(event, startTime, currentProfilerData, state);\n break;\n case 'ResourceFinish':\n processResourceFinish(event, startTime, currentProfilerData, state);\n break;\n case 'ResourceReceivedData':\n processResourceReceivedData(event, startTime, currentProfilerData, state);\n break;\n case 'ResourceReceiveResponse':\n processResourceReceiveResponse(event, startTime, currentProfilerData, state);\n break;\n case 'ResourceSendRequest':\n processResourceSendRequest(event, startTime, currentProfilerData, state);\n break;\n }\n break;\n case 'blink.user_timing':\n if (name.startsWith('--react-version-')) {\n const [reactVersion] = name.slice(16).split('-');\n currentProfilerData.reactVersion = reactVersion;\n } else if (name.startsWith('--profiler-version-')) {\n const [versionString] = name.slice(19).split('-');\n profilerVersion = parseInt(versionString, 10);\n if (profilerVersion !== SCHEDULING_PROFILER_VERSION) {\n throw new InvalidProfileError(`This version of profiling data (${versionString}) is not supported by the current profiler.`);\n }\n } else if (name.startsWith('--react-lane-labels-')) {\n const [laneLabelTuplesString] = name.slice(20).split('-');\n updateLaneToLabelMap(currentProfilerData, laneLabelTuplesString);\n } else if (name.startsWith('--component-')) {\n processReactComponentMeasure(name, startTime, currentProfilerData, state);\n } else if (name.startsWith('--schedule-render-')) {\n const [laneBitmaskString] = name.slice(18).split('-');\n currentProfilerData.schedulingEvents.push({\n type: 'schedule-render',\n lanes: getLanesFromTransportDecimalBitmask(laneBitmaskString),\n timestamp: startTime,\n warning: null\n });\n } else if (name.startsWith('--schedule-forced-update-')) {\n const [laneBitmaskString, componentName] = name.slice(25).split('-');\n const forceUpdateEvent = {\n type: 'schedule-force-update',\n lanes: getLanesFromTransportDecimalBitmask(laneBitmaskString),\n componentName,\n timestamp: startTime,\n warning: null\n };\n\n // If this is a nested update, make a note of it.\n // Once we're done processing events, we'll check to see if it was a long update and warn about it.\n if (state.measureStack.find(({\n type\n }) => type === 'commit')) {\n state.potentialLongNestedUpdate = forceUpdateEvent;\n }\n currentProfilerData.schedulingEvents.push(forceUpdateEvent);\n } else if (name.startsWith('--schedule-state-update-')) {\n const [laneBitmaskString, componentName] = name.slice(24).split('-');\n const stateUpdateEvent = {\n type: 'schedule-state-update',\n lanes: getLanesFromTransportDecimalBitmask(laneBitmaskString),\n componentName,\n timestamp: startTime,\n warning: null\n };\n\n // If this is a nested update, make a note of it.\n // Once we're done processing events, we'll check to see if it was a long update and warn about it.\n if (state.measureStack.find(({\n type\n }) => type === 'commit')) {\n state.potentialLongNestedUpdate = stateUpdateEvent;\n }\n currentProfilerData.schedulingEvents.push(stateUpdateEvent);\n } else if (name.startsWith('--error-')) {\n const [componentName, phase, message] = name.slice(8).split('-');\n currentProfilerData.thrownErrors.push({\n componentName,\n message,\n phase: phase,\n timestamp: startTime,\n type: 'thrown-error'\n });\n } else if (name.startsWith('--suspense-suspend-')) {\n const [id, componentName, phase, laneBitmaskString, promiseName] = name.slice(19).split('-');\n const lanes = getLanesFromTransportDecimalBitmask(laneBitmaskString);\n const availableDepths = new Array(state.unresolvedSuspenseEvents.size + 1).fill(true);\n state.unresolvedSuspenseEvents.forEach(({\n depth\n }) => {\n availableDepths[depth] = false;\n });\n let depth = 0;\n for (let i = 0; i < availableDepths.length; i++) {\n if (availableDepths[i]) {\n depth = i;\n break;\n }\n }\n\n // TODO (timeline) Maybe we should calculate depth in post,\n // so unresolved Suspense requests don't take up space.\n // We can't know if they'll be resolved or not at this point.\n // We'll just give them a default (fake) duration width.\n\n const suspenseEvent = {\n componentName,\n depth,\n duration: null,\n id,\n phase: phase,\n promiseName: promiseName || null,\n resolution: 'unresolved',\n timestamp: startTime,\n type: 'suspense',\n warning: null\n };\n if (phase === 'update') {\n // If a component suspended during an update, we should verify that it was during a transition.\n // We need the lane metadata to verify this though.\n // Since that data is only logged during commit, we may not have it yet.\n // Store these events for post-processing then.\n state.potentialSuspenseEventsOutsideOfTransition.push([suspenseEvent, lanes]);\n }\n currentProfilerData.suspenseEvents.push(suspenseEvent);\n state.unresolvedSuspenseEvents.set(id, suspenseEvent);\n } else if (name.startsWith('--suspense-resolved-')) {\n const [id] = name.slice(20).split('-');\n const suspenseEvent = state.unresolvedSuspenseEvents.get(id);\n if (suspenseEvent != null) {\n state.unresolvedSuspenseEvents.delete(id);\n suspenseEvent.duration = startTime - suspenseEvent.timestamp;\n suspenseEvent.resolution = 'resolved';\n }\n } else if (name.startsWith('--suspense-rejected-')) {\n const [id] = name.slice(20).split('-');\n const suspenseEvent = state.unresolvedSuspenseEvents.get(id);\n if (suspenseEvent != null) {\n state.unresolvedSuspenseEvents.delete(id);\n suspenseEvent.duration = startTime - suspenseEvent.timestamp;\n suspenseEvent.resolution = 'rejected';\n }\n } else if (name.startsWith('--render-start-')) {\n if (state.nextRenderShouldGenerateNewBatchID) {\n state.nextRenderShouldGenerateNewBatchID = false;\n state.batchUID = state.uidCounter++;\n }\n\n // If this render is the result of a nested update, make a note of it.\n // Once we're done processing events, we'll check to see if it was a long update and warn about it.\n if (state.potentialLongNestedUpdate !== null) {\n state.potentialLongNestedUpdates.push([state.potentialLongNestedUpdate, state.batchUID]);\n state.potentialLongNestedUpdate = null;\n }\n const [laneBitmaskString] = name.slice(15).split('-');\n throwIfIncomplete('render', state.measureStack);\n if (getLastType(state.measureStack) !== 'render-idle') {\n markWorkStarted('render-idle', startTime, getLanesFromTransportDecimalBitmask(laneBitmaskString), currentProfilerData, state);\n }\n markWorkStarted('render', startTime, getLanesFromTransportDecimalBitmask(laneBitmaskString), currentProfilerData, state);\n for (let i = 0; i < state.nativeEventStack.length; i++) {\n const nativeEvent = state.nativeEventStack[i];\n const stopTime = nativeEvent.timestamp + nativeEvent.duration;\n\n // If React work was scheduled during an event handler, and the event had a long duration,\n // it might be because the React render was long and stretched the event.\n // It might also be that the React work was short and that something else stretched the event.\n // Make a note of this event for now and we'll examine the batch of React render work later.\n // (We can't know until we're done processing the React update anyway.)\n if (stopTime > startTime) {\n state.potentialLongEvents.push([nativeEvent, state.batchUID]);\n }\n }\n } else if (name.startsWith('--render-stop') || name.startsWith('--render-yield')) {\n markWorkCompleted('render', startTime, currentProfilerData, state.measureStack);\n } else if (name.startsWith('--commit-start-')) {\n state.nextRenderShouldGenerateNewBatchID = true;\n const [laneBitmaskString] = name.slice(15).split('-');\n markWorkStarted('commit', startTime, getLanesFromTransportDecimalBitmask(laneBitmaskString), currentProfilerData, state);\n } else if (name.startsWith('--commit-stop')) {\n markWorkCompleted('commit', startTime, currentProfilerData, state.measureStack);\n markWorkCompleted('render-idle', startTime, currentProfilerData, state.measureStack);\n } else if (name.startsWith('--layout-effects-start-')) {\n const [laneBitmaskString] = name.slice(23).split('-');\n markWorkStarted('layout-effects', startTime, getLanesFromTransportDecimalBitmask(laneBitmaskString), currentProfilerData, state);\n } else if (name.startsWith('--layout-effects-stop')) {\n markWorkCompleted('layout-effects', startTime, currentProfilerData, state.measureStack);\n } else if (name.startsWith('--passive-effects-start-')) {\n const [laneBitmaskString] = name.slice(24).split('-');\n markWorkStarted('passive-effects', startTime, getLanesFromTransportDecimalBitmask(laneBitmaskString), currentProfilerData, state);\n } else if (name.startsWith('--passive-effects-stop')) {\n markWorkCompleted('passive-effects', startTime, currentProfilerData, state.measureStack);\n } else if (name.startsWith('--react-internal-module-start-')) {\n const stackFrameStart = name.slice(30);\n if (!state.internalModuleStackStringSet.has(stackFrameStart)) {\n state.internalModuleStackStringSet.add(stackFrameStart);\n const parsedStackFrameStart = parseStackFrame(stackFrameStart);\n state.internalModuleCurrentStackFrame = parsedStackFrameStart;\n }\n } else if (name.startsWith('--react-internal-module-stop-')) {\n const stackFrameStop = name.slice(29);\n if (!state.internalModuleStackStringSet.has(stackFrameStop)) {\n state.internalModuleStackStringSet.add(stackFrameStop);\n const parsedStackFrameStop = parseStackFrame(stackFrameStop);\n if (parsedStackFrameStop !== null && state.internalModuleCurrentStackFrame !== null) {\n const parsedStackFrameStart = state.internalModuleCurrentStackFrame;\n state.internalModuleCurrentStackFrame = null;\n const range = [parsedStackFrameStart, parsedStackFrameStop];\n const ranges = currentProfilerData.internalModuleSourceToRanges.get(parsedStackFrameStart.fileName);\n if (ranges == null) {\n currentProfilerData.internalModuleSourceToRanges.set(parsedStackFrameStart.fileName, [range]);\n } else {\n ranges.push(range);\n }\n }\n }\n } else if (ph === 'R' || ph === 'n') {\n // User Timing mark\n currentProfilerData.otherUserTimingMarks.push({\n name,\n timestamp: startTime\n });\n } else if (ph === 'b') {\n // TODO: Begin user timing measure\n } else if (ph === 'e') {\n // TODO: End user timing measure\n } else if (ph === 'i' || ph === 'I') {\n // Instant events.\n // Note that the capital \"I\" is a deprecated value that exists in Chrome Canary traces.\n } else {\n throw new InvalidProfileError(`Unrecognized event ${JSON.stringify(event)}! This is likely a bug in this profiler tool.`);\n }\n break;\n }\n}\nfunction assertNoOverlappingComponentMeasure(state) {\n if (state.currentReactComponentMeasure !== null) {\n console.error('Component measure started while another measure in progress:', state.currentReactComponentMeasure);\n }\n}\nfunction assertCurrentComponentMeasureType(state, type) {\n if (state.currentReactComponentMeasure === null) {\n console.error(`Component measure type \"${type}\" stopped while no measure was in progress`);\n } else if (state.currentReactComponentMeasure.type !== type) {\n console.error(`Component measure type \"${type}\" stopped while type ${state.currentReactComponentMeasure.type} in progress`);\n }\n}\nfunction processReactComponentMeasure(name, startTime, currentProfilerData, state) {\n if (name.startsWith('--component-render-start-')) {\n const [componentName] = name.slice(25).split('-');\n assertNoOverlappingComponentMeasure(state);\n state.currentReactComponentMeasure = {\n componentName,\n timestamp: startTime,\n duration: 0,\n type: 'render',\n warning: null\n };\n } else if (name === '--component-render-stop') {\n assertCurrentComponentMeasureType(state, 'render');\n if (state.currentReactComponentMeasure !== null) {\n const componentMeasure = state.currentReactComponentMeasure;\n componentMeasure.duration = startTime - componentMeasure.timestamp;\n state.currentReactComponentMeasure = null;\n currentProfilerData.componentMeasures.push(componentMeasure);\n }\n } else if (name.startsWith('--component-layout-effect-mount-start-')) {\n const [componentName] = name.slice(38).split('-');\n assertNoOverlappingComponentMeasure(state);\n state.currentReactComponentMeasure = {\n componentName,\n timestamp: startTime,\n duration: 0,\n type: 'layout-effect-mount',\n warning: null\n };\n } else if (name === '--component-layout-effect-mount-stop') {\n assertCurrentComponentMeasureType(state, 'layout-effect-mount');\n if (state.currentReactComponentMeasure !== null) {\n const componentMeasure = state.currentReactComponentMeasure;\n componentMeasure.duration = startTime - componentMeasure.timestamp;\n state.currentReactComponentMeasure = null;\n currentProfilerData.componentMeasures.push(componentMeasure);\n }\n } else if (name.startsWith('--component-layout-effect-unmount-start-')) {\n const [componentName] = name.slice(40).split('-');\n assertNoOverlappingComponentMeasure(state);\n state.currentReactComponentMeasure = {\n componentName,\n timestamp: startTime,\n duration: 0,\n type: 'layout-effect-unmount',\n warning: null\n };\n } else if (name === '--component-layout-effect-unmount-stop') {\n assertCurrentComponentMeasureType(state, 'layout-effect-unmount');\n if (state.currentReactComponentMeasure !== null) {\n const componentMeasure = state.currentReactComponentMeasure;\n componentMeasure.duration = startTime - componentMeasure.timestamp;\n state.currentReactComponentMeasure = null;\n currentProfilerData.componentMeasures.push(componentMeasure);\n }\n } else if (name.startsWith('--component-passive-effect-mount-start-')) {\n const [componentName] = name.slice(39).split('-');\n assertNoOverlappingComponentMeasure(state);\n state.currentReactComponentMeasure = {\n componentName,\n timestamp: startTime,\n duration: 0,\n type: 'passive-effect-mount',\n warning: null\n };\n } else if (name === '--component-passive-effect-mount-stop') {\n assertCurrentComponentMeasureType(state, 'passive-effect-mount');\n if (state.currentReactComponentMeasure !== null) {\n const componentMeasure = state.currentReactComponentMeasure;\n componentMeasure.duration = startTime - componentMeasure.timestamp;\n state.currentReactComponentMeasure = null;\n currentProfilerData.componentMeasures.push(componentMeasure);\n }\n } else if (name.startsWith('--component-passive-effect-unmount-start-')) {\n const [componentName] = name.slice(41).split('-');\n assertNoOverlappingComponentMeasure(state);\n state.currentReactComponentMeasure = {\n componentName,\n timestamp: startTime,\n duration: 0,\n type: 'passive-effect-unmount',\n warning: null\n };\n } else if (name === '--component-passive-effect-unmount-stop') {\n assertCurrentComponentMeasureType(state, 'passive-effect-unmount');\n if (state.currentReactComponentMeasure !== null) {\n const componentMeasure = state.currentReactComponentMeasure;\n componentMeasure.duration = startTime - componentMeasure.timestamp;\n state.currentReactComponentMeasure = null;\n currentProfilerData.componentMeasures.push(componentMeasure);\n }\n }\n}\nfunction preprocessFlamechart(rawData) {\n let parsedData;\n try {\n parsedData = (0,library.importFromChromeTimeline)(rawData, 'react-devtools');\n } catch (error) {\n // Assume any Speedscope errors are caused by bad profiles\n const errorToRethrow = new InvalidProfileError(error.message);\n errorToRethrow.stack = error.stack;\n throw errorToRethrow;\n }\n const profile = parsedData.profiles[0]; // TODO: Choose the main CPU thread only\n\n const speedscopeFlamechart = new library.Flamechart({\n // $FlowFixMe[method-unbinding]\n getTotalWeight: profile.getTotalWeight.bind(profile),\n // $FlowFixMe[method-unbinding]\n forEachCall: profile.forEachCall.bind(profile),\n // $FlowFixMe[method-unbinding]\n formatValue: profile.formatValue.bind(profile),\n getColorBucketForFrame: () => 0\n });\n const flamechart = speedscopeFlamechart.getLayers().map(layer => layer.map(({\n start,\n end,\n node: {\n frame: {\n name,\n file,\n line,\n col\n }\n }\n }) => ({\n name,\n timestamp: start / 1000,\n duration: (end - start) / 1000,\n scriptUrl: file,\n locationLine: line,\n locationColumn: col\n })));\n return flamechart;\n}\nfunction parseStackFrame(stackFrame) {\n const error = new Error();\n error.stack = stackFrame;\n const frames = error_stack_parser_default().parse(error);\n return frames.length === 1 ? frames[0] : null;\n}\nasync function preprocessData(timeline) {\n const flamechart = preprocessFlamechart(timeline);\n const laneToReactMeasureMap = new Map();\n for (let lane = 0; lane < REACT_TOTAL_NUM_LANES; lane++) {\n laneToReactMeasureMap.set(lane, []);\n }\n const profilerData = {\n batchUIDToMeasuresMap: new Map(),\n componentMeasures: [],\n duration: 0,\n flamechart,\n internalModuleSourceToRanges: new Map(),\n laneToLabelMap: new Map(),\n laneToReactMeasureMap,\n nativeEvents: [],\n networkMeasures: [],\n otherUserTimingMarks: [],\n reactVersion: null,\n schedulingEvents: [],\n snapshots: [],\n snapshotHeight: 0,\n startTime: 0,\n suspenseEvents: [],\n thrownErrors: []\n };\n\n // Sort `timeline`. JSON Array Format trace events need not be ordered. See:\n // https://docs.google.com/document/d/1CvAClvFfyA5R-PhYUmn5OOQtYMH4h6I0nSsKchNAySU/preview#heading=h.f2f0yd51wi15\n timeline = timeline.filter(Boolean).sort((a, b) => a.ts > b.ts ? 1 : -1);\n\n // Events displayed in flamechart have timestamps relative to the profile\n // event's startTime. Source: https://github.com/v8/v8/blob/44bd8fd7/src/inspector/js_protocol.json#L1486\n //\n // We'll thus expect there to be a 'Profile' event; if there is not one, we\n // can deduce that there are no flame chart events. As we expect React\n // scheduling profiling user timing marks to be recorded together with browser\n // flame chart events, we can futher deduce that the data is invalid and we\n // don't bother finding React events.\n const indexOfProfileEvent = timeline.findIndex(event => event.name === 'Profile');\n if (indexOfProfileEvent === -1) {\n return profilerData;\n }\n\n // Use Profile event's `startTime` as the start time to align with flame chart.\n // TODO: Remove assumption that there'll only be 1 'Profile' event. If this\n // assumption does not hold, the chart may start at the wrong time.\n profilerData.startTime = timeline[indexOfProfileEvent].args.data.startTime;\n profilerData.duration = (timeline[timeline.length - 1].ts - profilerData.startTime) / 1000;\n const state = {\n asyncProcessingPromises: [],\n batchUID: 0,\n currentReactComponentMeasure: null,\n internalModuleCurrentStackFrame: null,\n internalModuleStackStringSet: new Set(),\n measureStack: [],\n nativeEventStack: [],\n nextRenderShouldGenerateNewBatchID: true,\n potentialLongEvents: [],\n potentialLongNestedUpdate: null,\n potentialLongNestedUpdates: [],\n potentialSuspenseEventsOutsideOfTransition: [],\n requestIdToNetworkMeasureMap: new Map(),\n uidCounter: 0,\n unresolvedSuspenseEvents: new Map()\n };\n timeline.forEach(event => processTimelineEvent(event, profilerData, state));\n if (profilerVersion === null) {\n if (profilerData.schedulingEvents.length === 0 && profilerData.batchUIDToMeasuresMap.size === 0) {\n // No profiler version could indicate data was logged using an older build of React,\n // before an explicitly profiler version was included in the logging data.\n // But it could also indicate that the website was either not using React, or using a production build.\n // The easiest way to check for this case is to see if the data contains any scheduled updates or render work.\n throw new InvalidProfileError('No React marks were found in the provided profile.' + ' Please provide profiling data from an React application running in development or profiling mode.');\n }\n throw new InvalidProfileError(`This version of profiling data is not supported by the current profiler.`);\n }\n\n // Validate that all events and measures are complete\n const {\n measureStack\n } = state;\n if (measureStack.length > 0) {\n console.error('Incomplete events or measures', measureStack);\n }\n\n // Check for warnings.\n state.potentialLongEvents.forEach(([nativeEvent, batchUID]) => {\n // See how long the subsequent batch of React work was.\n // Ignore any work that was already started.\n const [startTime, stopTime] = getBatchRange(batchUID, profilerData, nativeEvent.timestamp);\n if (stopTime - startTime > NATIVE_EVENT_DURATION_THRESHOLD) {\n nativeEvent.warning = WARNING_STRINGS.LONG_EVENT_HANDLER;\n }\n });\n state.potentialLongNestedUpdates.forEach(([schedulingEvent, batchUID]) => {\n // See how long the subsequent batch of React work was.\n const [startTime, stopTime] = getBatchRange(batchUID, profilerData);\n if (stopTime - startTime > NESTED_UPDATE_DURATION_THRESHOLD) {\n // Don't warn about transition updates scheduled during the commit phase.\n // e.g. useTransition, useDeferredValue\n // These are allowed to be long-running.\n if (!schedulingEvent.lanes.some(lane => profilerData.laneToLabelMap.get(lane) === 'Transition')) {\n // FIXME: This warning doesn't account for \"nested updates\" that are\n // spawned by useDeferredValue. Disabling temporarily until we figure\n // out the right way to handle this.\n // schedulingEvent.warning = WARNING_STRINGS.NESTED_UPDATE;\n }\n }\n });\n state.potentialSuspenseEventsOutsideOfTransition.forEach(([suspenseEvent, lanes]) => {\n // HACK This is a bit gross but the numeric lane value might change between render versions.\n if (!lanes.some(lane => profilerData.laneToLabelMap.get(lane) === 'Transition')) {\n suspenseEvent.warning = WARNING_STRINGS.SUSPEND_DURING_UPDATE;\n }\n });\n\n // Wait for any async processing to complete before returning.\n // Since processing is done in a worker, async work must complete before data is serialized and returned.\n await Promise.all(state.asyncProcessingPromises);\n\n // Now that all images have been loaded, let's figure out the display size we're going to use for our thumbnails:\n // both the ones rendered to the canvas and the ones shown on hover.\n if (profilerData.snapshots.length > 0) {\n // NOTE We assume a static window size here, which is not necessarily true but should be for most cases.\n // Regardless, Chrome also sets a single size/ratio and stick with it- so we'll do the same.\n const snapshot = profilerData.snapshots[0];\n profilerData.snapshotHeight = Math.min(snapshot.height, SNAPSHOT_MAX_HEIGHT);\n }\n return profilerData;\n}\n// EXTERNAL MODULE: ../../node_modules/nullthrows/nullthrows.js\nvar nullthrows = __webpack_require__(69);\nvar nullthrows_default = /*#__PURE__*/__webpack_require__.n(nullthrows);\n;// CONCATENATED MODULE: ../react-devtools-timeline/src/import-worker/readInputData.js\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\n\n\nconst readInputData = file => {\n if (!file.name.endsWith('.json')) {\n throw new InvalidProfileError('Invalid file type. Only JSON performance profiles are supported');\n }\n const fileReader = new FileReader();\n return new Promise((resolve, reject) => {\n fileReader.onload = () => {\n const result = nullthrows_default()(fileReader.result);\n if (typeof result === 'string') {\n resolve(result);\n }\n reject(new InvalidProfileError('Input file was not read as a string'));\n };\n fileReader.onerror = () => reject(fileReader.error);\n fileReader.readAsText(file);\n });\n};\n;// CONCATENATED MODULE: ../react-devtools-timeline/src/import-worker/importFile.js\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\n\n\n\n\nasync function importFile(file) {\n try {\n const readFile = await readInputData(file);\n const events = JSON.parse(readFile);\n if (events.length === 0) {\n throw new InvalidProfileError('No profiling data found in file.');\n }\n const processedData = await preprocessData(events);\n return {\n status: 'SUCCESS',\n processedData\n };\n } catch (error) {\n if (error instanceof InvalidProfileError) {\n return {\n status: 'INVALID_PROFILE_ERROR',\n error\n };\n } else {\n return {\n status: 'UNEXPECTED_ERROR',\n error\n };\n }\n }\n}\n;// CONCATENATED MODULE: ../../node_modules/workerize-loader/dist/rpc-worker-loader.js!../../node_modules/babel-loader/lib/index.js??ruleSet[1].rules[0].use[1]!../../node_modules/babel-loader/lib/index.js??ruleSet[1].rules[1]!../react-devtools-timeline/src/import-worker/importFile.worker.js\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\nconst importFile_worker_importFile = importFile;\naddEventListener('message', function (e) {var _e$data = e.data,type = _e$data.type,method = _e$data.method,id = _e$data.id,params = _e$data.params,f,p;if (type === 'RPC' && method) {if (f = __webpack_exports__[method]) {p = Promise.resolve().then(function () {return f.apply(__webpack_exports__, params);});} else {p = Promise.reject('No such method');}p.then(function (result) {postMessage({type: 'RPC',id: id,result: result});}).catch(function (e) {var error = {message: e};if (e.stack) {error.message = e.message;error.stack = e.stack;error.name = e.name;}postMessage({type: 'RPC',id: id,error: error});});}});postMessage({type: 'RPC',method: 'ready'});\n})();\n\n"])), { name: "[name].worker.js" }) - URL.revokeObjectURL(URL.createObjectURL(new Blob(["/******/ var __webpack_modules__ = ({\n\n/***/ 496:\n/***/ ((__unused_webpack_module, exports, __webpack_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.importFromOldV8CPUProfile = exports.importFromChromeCPUProfile = exports.importFromChromeTimeline = exports.isChromeTimeline = void 0;\nconst profile_1 = __webpack_require__(211);\nconst utils_1 = __webpack_require__(844);\nconst value_formatters_1 = __webpack_require__(218);\nconst v8cpuFormatter_1 = __webpack_require__(320);\nfunction isChromeTimeline(rawProfile) {\n if (!Array.isArray(rawProfile)) return false;\n if (rawProfile.length < 1) return false;\n const first = rawProfile[0];\n if (!('pid' in first && 'tid' in first && 'ph' in first && 'cat' in first)) return false;\n if (!rawProfile.find(e => e.name === 'CpuProfile' || e.name === 'Profile' || e.name === 'ProfileChunk')) return false;\n return true;\n}\nexports.isChromeTimeline = isChromeTimeline;\nfunction importFromChromeTimeline(events, fileName) {\n // It seems like sometimes Chrome timeline files contain multiple CpuProfiles?\n // For now, choose the first one in the list.\n const cpuProfileByID = new Map();\n // Maps profile IDs (like \"0x3\") to pid/tid pairs formatted as `${pid}:${tid}`\n const pidTidById = new Map();\n // Maps pid/tid pairs to thread names\n const threadNameByPidTid = new Map();\n // The events aren't necessarily recorded in chronological order. Sort them so\n // that they are.\n utils_1.sortBy(events, e => e.ts);\n for (let event of events) {\n if (event.name === 'CpuProfile') {\n const pidTid = `${event.pid}:${event.tid}`;\n const id = event.id || pidTid;\n cpuProfileByID.set(id, event.args.data.cpuProfile);\n pidTidById.set(id, pidTid);\n }\n if (event.name === 'Profile') {\n const pidTid = `${event.pid}:${event.tid}`;\n cpuProfileByID.set(event.id || pidTid, Object.assign({\n startTime: 0,\n endTime: 0,\n nodes: [],\n samples: [],\n timeDeltas: []\n }, event.args.data));\n if (event.id) {\n pidTidById.set(event.id, `${event.pid}:${event.tid}`);\n }\n }\n if (event.name === 'thread_name') {\n threadNameByPidTid.set(`${event.pid}:${event.tid}`, event.args.name);\n }\n if (event.name === 'ProfileChunk') {\n const pidTid = `${event.pid}:${event.tid}`;\n const cpuProfile = cpuProfileByID.get(event.id || pidTid);\n if (cpuProfile) {\n const chunk = event.args.data;\n if (chunk.cpuProfile) {\n if (chunk.cpuProfile.nodes) {\n cpuProfile.nodes = cpuProfile.nodes.concat(chunk.cpuProfile.nodes);\n }\n if (chunk.cpuProfile.samples) {\n cpuProfile.samples = cpuProfile.samples.concat(chunk.cpuProfile.samples);\n }\n }\n if (chunk.timeDeltas) {\n cpuProfile.timeDeltas = cpuProfile.timeDeltas.concat(chunk.timeDeltas);\n }\n if (chunk.startTime != null) {\n cpuProfile.startTime = chunk.startTime;\n }\n if (chunk.endTime != null) {\n cpuProfile.endTime = chunk.endTime;\n }\n } else {\n console.warn(`Ignoring ProfileChunk for undeclared Profile with id ${event.id || pidTid}`);\n }\n }\n }\n if (cpuProfileByID.size > 0) {\n const profiles = [];\n let indexToView = 0;\n utils_1.itForEach(cpuProfileByID.keys(), profileId => {\n let threadName = null;\n let pidTid = pidTidById.get(profileId);\n if (pidTid) {\n threadName = threadNameByPidTid.get(pidTid) || null;\n if (threadName) {}\n }\n const profile = importFromChromeCPUProfile(cpuProfileByID.get(profileId));\n if (threadName && cpuProfileByID.size > 1) {\n profile.setName(`${fileName} - ${threadName}`);\n if (threadName === 'CrRendererMain') {\n indexToView = profiles.length;\n }\n } else {\n profile.setName(`${fileName}`);\n }\n profiles.push(profile);\n });\n return {\n name: fileName,\n indexToView,\n profiles\n };\n } else {\n throw new Error('Could not find CPU profile in Timeline');\n }\n}\nexports.importFromChromeTimeline = importFromChromeTimeline;\nconst callFrameToFrameInfo = new Map();\nfunction frameInfoForCallFrame(callFrame) {\n return utils_1.getOrInsert(callFrameToFrameInfo, callFrame, callFrame => {\n const name = callFrame.functionName || '(anonymous)';\n const file = callFrame.url;\n const line = callFrame.lineNumber;\n const col = callFrame.columnNumber;\n return {\n key: `${name}:${file}:${line}:${col}`,\n name,\n file,\n line,\n col\n };\n });\n}\nfunction shouldIgnoreFunction(callFrame) {\n const {\n functionName,\n url\n } = callFrame;\n if (url === 'native dummy.js') {\n // I'm not really sure what this is about, but this seems to be used\n // as a way of avoiding edge cases in V8's implementation.\n // See: https://github.com/v8/v8/blob/b8626ca4/tools/js2c.py#L419-L424\n return true;\n }\n return functionName === '(root)' || functionName === '(idle)';\n}\nfunction shouldPlaceOnTopOfPreviousStack(functionName) {\n return functionName === '(garbage collector)' || functionName === '(program)';\n}\nfunction importFromChromeCPUProfile(chromeProfile) {\n const profile = new profile_1.CallTreeProfileBuilder(chromeProfile.endTime - chromeProfile.startTime);\n const nodeById = new Map();\n for (let node of chromeProfile.nodes) {\n nodeById.set(node.id, node);\n }\n for (let node of chromeProfile.nodes) {\n if (typeof node.parent === 'number') {\n node.parent = nodeById.get(node.parent);\n }\n if (!node.children) continue;\n for (let childId of node.children) {\n const child = nodeById.get(childId);\n if (!child) continue;\n child.parent = node;\n }\n }\n const samples = [];\n const sampleTimes = [];\n // The first delta is relative to the profile startTime.\n // Ref: https://github.com/v8/v8/blob/44bd8fd7/src/inspector/js_protocol.json#L1485\n let elapsed = chromeProfile.timeDeltas[0];\n // Prevents negative time deltas from causing bad data. See\n // https://github.com/jlfwong/speedscope/pull/305 for details.\n let lastValidElapsed = elapsed;\n let lastNodeId = NaN;\n // The chrome CPU profile format doesn't collapse identical samples. We'll do that\n // here to save a ton of work later doing mergers.\n for (let i = 0; i < chromeProfile.samples.length; i++) {\n const nodeId = chromeProfile.samples[i];\n if (nodeId != lastNodeId) {\n samples.push(nodeId);\n if (elapsed < lastValidElapsed) {\n sampleTimes.push(lastValidElapsed);\n } else {\n sampleTimes.push(elapsed);\n lastValidElapsed = elapsed;\n }\n }\n if (i === chromeProfile.samples.length - 1) {\n if (!isNaN(lastNodeId)) {\n samples.push(lastNodeId);\n if (elapsed < lastValidElapsed) {\n sampleTimes.push(lastValidElapsed);\n } else {\n sampleTimes.push(elapsed);\n lastValidElapsed = elapsed;\n }\n }\n } else {\n const timeDelta = chromeProfile.timeDeltas[i + 1];\n elapsed += timeDelta;\n lastNodeId = nodeId;\n }\n }\n let prevStack = [];\n for (let i = 0; i < samples.length; i++) {\n const value = sampleTimes[i];\n const nodeId = samples[i];\n let stackTop = nodeById.get(nodeId);\n if (!stackTop) continue;\n // Find lowest common ancestor of the current stack and the previous one\n let lca = null;\n // This is O(n^2), but n should be relatively small here (stack height),\n // so hopefully this isn't much of a problem\n for (lca = stackTop; lca && prevStack.indexOf(lca) === -1; lca = shouldPlaceOnTopOfPreviousStack(lca.callFrame.functionName) ? utils_1.lastOf(prevStack) : lca.parent || null) {}\n // Close frames that are no longer open\n while (prevStack.length > 0 && utils_1.lastOf(prevStack) != lca) {\n const closingNode = prevStack.pop();\n const frame = frameInfoForCallFrame(closingNode.callFrame);\n profile.leaveFrame(frame, value);\n }\n // Open frames that are now becoming open\n const toOpen = [];\n for (let node = stackTop; node && node != lca && !shouldIgnoreFunction(node.callFrame);\n // Place Chrome internal functions on top of the previous call stack\n node = shouldPlaceOnTopOfPreviousStack(node.callFrame.functionName) ? utils_1.lastOf(prevStack) : node.parent || null) {\n toOpen.push(node);\n }\n toOpen.reverse();\n for (let node of toOpen) {\n profile.enterFrame(frameInfoForCallFrame(node.callFrame), value);\n }\n prevStack = prevStack.concat(toOpen);\n }\n // Close frames that are open at the end of the trace\n for (let i = prevStack.length - 1; i >= 0; i--) {\n profile.leaveFrame(frameInfoForCallFrame(prevStack[i].callFrame), utils_1.lastOf(sampleTimes));\n }\n profile.setValueFormatter(new value_formatters_1.TimeFormatter('microseconds'));\n return profile.build();\n}\nexports.importFromChromeCPUProfile = importFromChromeCPUProfile;\nfunction importFromOldV8CPUProfile(content) {\n return importFromChromeCPUProfile(v8cpuFormatter_1.chromeTreeToNodes(content));\n}\nexports.importFromOldV8CPUProfile = importFromOldV8CPUProfile;\n\n/***/ }),\n\n/***/ 320:\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.chromeTreeToNodes = void 0;\nfunction treeToArray(root) {\n const nodes = [];\n function visit(node) {\n nodes.push({\n id: node.id,\n callFrame: {\n columnNumber: 0,\n functionName: node.functionName,\n lineNumber: node.lineNumber,\n scriptId: node.scriptId,\n url: node.url\n },\n hitCount: node.hitCount,\n children: node.children.map(child => child.id)\n });\n node.children.forEach(visit);\n }\n visit(root);\n return nodes;\n}\nfunction timestampsToDeltas(timestamps, startTime) {\n return timestamps.map((timestamp, index) => {\n const lastTimestamp = index === 0 ? startTime * 1000000 : timestamps[index - 1];\n return timestamp - lastTimestamp;\n });\n}\n/**\n * Convert the old tree-based format to the new flat-array based format\n */\nfunction chromeTreeToNodes(content) {\n // Note that both startTime and endTime are now in microseconds\n return {\n samples: content.samples,\n startTime: content.startTime * 1000000,\n endTime: content.endTime * 1000000,\n nodes: treeToArray(content.head),\n timeDeltas: timestampsToDeltas(content.timestamps, content.startTime)\n };\n}\nexports.chromeTreeToNodes = chromeTreeToNodes;\n\n/***/ }),\n\n/***/ 765:\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.demangleCpp = void 0;\nlet cppfilt;\nconst cache = new Map();\n// This function converts a mangled C++ name such as \"__ZNK7Support6ColorFeqERKS0_\"\n// into a human-readable symbol (in this case \"Support::ColorF::==(Support::ColorF&)\")\nfunction demangleCpp(name) {\n if (name.startsWith('__Z')) {\n let result = cache.get(name);\n if (result !== undefined) {\n name = result;\n } else {\n if (!cppfilt) {\n cppfilt = new Function('exports', code)();\n }\n result = cppfilt(name.slice(1));\n result = result === '(null)' ? name : result;\n cache.set(name, result);\n name = result;\n }\n }\n return name;\n}\nexports.demangleCpp = demangleCpp;\n// This was taken from https://d.fuqu.jp/c++filtjs/\nconst code = `\nreturn function(){function r(r){eval.call(null,r)}function a(r){throw print(r+\":\\\\n\"+(new Error).stack),ke=!0,\"Assertion: \"+r}function e(r,e){r||a(\"Assertion failed: \"+e)}function i(r,a,i,v){function t(r,a){if(\"string\"==a){var e=Oe;return le.stackAlloc(r.length+1),A(r,e),e}return r}function f(r,a){return\"string\"==a?s(r):r}try{func=ce.Module[\"_\"+r]}catch(r){}e(func,\"Cannot call unknown function \"+r+\" (perhaps LLVM optimizations or closure removed it?)\");var _=0,n=v?v.map(function(r){return t(r,i[_++])}):[];return f(func.apply(null,n),a)}function v(r,a,e){return function(){return i(r,a,e,Array.prototype.slice.call(arguments))}}function t(r,e,i,v){switch(i=i||\"i8\",\"*\"===i[i.length-1]&&(i=\"i32\"),i){case\"i1\":Ae[r]=e;break;case\"i8\":Ae[r]=e;break;case\"i16\":ye[r>>1]=e;break;case\"i32\":Se[r>>2]=e;break;case\"i64\":Se[r>>2]=e;break;case\"float\":Ce[r>>2]=e;break;case\"double\":ze[0]=e,Se[r>>2]=xe[0],Se[r+4>>2]=xe[1];break;default:a(\"invalid type for setValue: \"+i)}}function f(r,e,i){switch(e=e||\"i8\",\"*\"===e[e.length-1]&&(e=\"i32\"),e){case\"i1\":return Ae[r];case\"i8\":return Ae[r];case\"i16\":return ye[r>>1];case\"i32\":return Se[r>>2];case\"i64\":return Se[r>>2];case\"float\":return Ce[r>>2];case\"double\":return xe[0]=Se[r>>2],xe[1]=Se[r+4>>2],ze[0];default:a(\"invalid type for setValue: \"+e)}return null}function _(r,a,e){var i,v;\"number\"==typeof r?(i=!0,v=r):(i=!1,v=r.length);var f=\"string\"==typeof a?a:null,_=[Jr,le.stackAlloc,le.staticAlloc][void 0===e?we:e](Math.max(v,f?1:a.length));if(i)return Fa(_,0,v),_;for(var s,n=0;n>12<<12}function l(){for(;Le<=Ie;)Le=o(2*Le);var r=Ae,a=new ArrayBuffer(Le);Ae=new Int8Array(a),ye=new Int16Array(a),Se=new Int32Array(a),ge=new Uint8Array(a),me=new Uint16Array(a),Me=new Uint32Array(a),Ce=new Float32Array(a),Re=new Float64Array(a),Ae.set(r)}function b(r){for(;r.length>0;){var a=r.shift(),e=a.func;\"number\"==typeof e&&(e=pe[e]),e(void 0===a.arg?null:a.arg)}}function k(){b(Ve)}function u(){b(Be),be.print()}function c(r,a){return Array.prototype.slice.call(Ae.subarray(r,r+a))}function h(r,a){for(var e=new Uint8Array(a),i=0;i255&&(v&=255),e.push(v),i+=1}return a||e.push(0),e}function E(r){for(var a=[],e=0;e255&&(i&=255),a.push(String.fromCharCode(i))}return a.join(\"\")}function A(r,a,e){for(var i=0;i255&&(v&=255),Ae[a+i]=v,i+=1}e||(Ae[a+i]=0)}function g(r,a,e,i){return r>=0?r:a<=32?2*Math.abs(1<=v&&(a<=32||r>v)&&(r=-2*v+r),r}function m(r,a,e){if(0==(0|r)|0==(0|a)|0==(0|e))var i=0;else{Se[r>>2]=0,Se[r+4>>2]=a,Se[r+8>>2]=e;var i=1}var i;return i}function S(r,a,e){if(0==(0|r)|(0|a)<0|0==(0|e))var i=0;else{Se[r>>2]=41,Se[r+4>>2]=a,Se[r+8>>2]=e;var i=1}var i;return i}function M(r,a,e){if(0==(0|r)|0==(0|e))var i=0;else{Se[r>>2]=6,Se[r+4>>2]=a,Se[r+8>>2]=e;var i=1}var i;return i}function C(r,a,e){if(0==(0|r)|0==(0|e))var i=0;else{Se[r>>2]=7,Se[r+4>>2]=a,Se[r+8>>2]=e;var i=1}var i;return i}function R(r,a){var e,i=0==(0|a);do if(i)var v=0;else{var e=(r+32|0)>>2,t=Se[e];if((0|t)>=(0|Se[r+36>>2])){var v=0;break}var f=(t<<2)+Se[r+28>>2]|0;Se[f>>2]=a;var _=Se[e]+1|0;Se[e]=_;var v=1}while(0);var v;return v}function T(r,a){var e,e=(r+12|0)>>2,i=Se[e],v=i+1|0;Se[e]=v;var t=Ae[i]<<24>>24==95;do if(t){var f=i+2|0;if(Se[e]=f,Ae[v]<<24>>24!=90){var _=0;break}var s=O(r,a),_=s}else var _=0;while(0);var _;return _}function O(r,a){var e=r+12|0,i=Ae[Se[e>>2]];r:do if(i<<24>>24==71||i<<24>>24==84)var v=Tr(r),t=v;else{var f=Ar(r),_=0==(0|f)|0==(0|a);do if(!_){if(0!=(1&Se[r+8>>2]|0))break;var s=Me[f>>2],n=(s-25|0)>>>0<3;a:do if(n)for(var o=f;;){var o,l=Me[o+4>>2],b=Me[l>>2];if((b-25|0)>>>0>=3){var k=l,u=b;break a}var o=l}else var k=f,u=s;while(0);var u,k;if(2!=(0|u)){var t=k;break r}var c=k+8|0,h=Me[c>>2],d=(Se[h>>2]-25|0)>>>0<3;a:do if(d)for(var w=h;;){var w,p=Me[w+4>>2];if((Se[p>>2]-25|0)>>>0>=3){var E=p;break a}var w=p}else var E=h;while(0);var E;Se[c>>2]=E;var t=k;break r}while(0);var A=Ae[Se[e>>2]];if(A<<24>>24==0||A<<24>>24==69){var t=f;break}var g=Or(f),y=Sr(r,g),m=D(r,3,f,y),t=m}while(0);var t;return t}function N(r){var a,e,i=Oe;Oe+=4;var v=i,e=v>>2,a=(r+12|0)>>2,t=Me[a],f=Ae[t],_=f<<24>>24;r:do if(f<<24>>24==114||f<<24>>24==86||f<<24>>24==75){var s=I(r,v,0);if(0==(0|s)){var n=0;break}var o=N(r);Se[s>>2]=o;var l=Se[e],b=R(r,l);if(0==(0|b)){var n=0;break}var n=Se[e]}else{do{if(97==(0|_)||98==(0|_)||99==(0|_)||100==(0|_)||101==(0|_)||102==(0|_)||103==(0|_)||104==(0|_)||105==(0|_)||106==(0|_)||108==(0|_)||109==(0|_)||110==(0|_)||111==(0|_)||115==(0|_)||116==(0|_)||118==(0|_)||119==(0|_)||120==(0|_)||121==(0|_)||122==(0|_)){var k=ai+20*(_-97)|0,u=P(r,k);Se[e]=u;var c=r+48|0,h=Se[c>>2]+Se[Se[u+4>>2]+4>>2]|0;Se[c>>2]=h;var d=Se[a]+1|0;Se[a]=d;var n=u;break r}if(117==(0|_)){Se[a]=t+1|0;var w=L(r),p=D(r,34,w,0);Se[e]=p;var E=p}else if(70==(0|_)){var A=F(r);Se[e]=A;var E=A}else if(48==(0|_)||49==(0|_)||50==(0|_)||51==(0|_)||52==(0|_)||53==(0|_)||54==(0|_)||55==(0|_)||56==(0|_)||57==(0|_)||78==(0|_)||90==(0|_)){var g=X(r);Se[e]=g;var E=g}else if(65==(0|_)){var y=j(r);Se[e]=y;var E=y}else if(77==(0|_)){var m=U(r);Se[e]=m;var E=m}else if(84==(0|_)){var S=x(r);if(Se[e]=S,Ae[Se[a]]<<24>>24!=73){var E=S;break}var M=R(r,S);if(0==(0|M)){var n=0;break r}var C=Se[e],T=z(r),O=D(r,4,C,T);Se[e]=O;var E=O}else if(83==(0|_)){var B=ge[t+1|0];if((B-48&255&255)<10|B<<24>>24==95|(B-65&255&255)<26){var H=V(r,0);if(Se[e]=H,Ae[Se[a]]<<24>>24!=73){var n=H;break r}var K=z(r),Y=D(r,4,H,K);Se[e]=Y;var E=Y}else{var G=X(r);if(Se[e]=G,0==(0|G)){var E=0;break}if(21==(0|Se[G>>2])){var n=G;break r}var E=G}}else if(80==(0|_)){Se[a]=t+1|0;var W=N(r),Z=D(r,29,W,0);Se[e]=Z;var E=Z}else if(82==(0|_)){Se[a]=t+1|0;var Q=N(r),q=D(r,30,Q,0);Se[e]=q;var E=q}else if(67==(0|_)){Se[a]=t+1|0;var $=N(r),J=D(r,31,$,0);Se[e]=J;var E=J}else if(71==(0|_)){Se[a]=t+1|0;var rr=N(r),ar=D(r,32,rr,0);Se[e]=ar;var E=ar}else{if(85!=(0|_)){var n=0;break r}Se[a]=t+1|0;var er=L(r);Se[e]=er;var ir=N(r),vr=Se[e],tr=D(r,28,ir,vr);Se[e]=tr;var E=tr}}while(0);var E,fr=R(r,E);if(0==(0|fr)){var n=0;break}var n=Se[e]}while(0);var n;return Oe=i,n}function I(r,a,e){for(var i,v=r+12|0,t=0!=(0|e),f=t?25:22,i=(r+48|0)>>2,_=t?26:23,s=t?27:24,n=a;;){var n,o=Se[v>>2],l=Ae[o];if(l<<24>>24!=114&&l<<24>>24!=86&&l<<24>>24!=75){var b=n;break}var k=o+1|0;if(Se[v>>2]=k,l<<24>>24==114){var u=Se[i]+9|0;Se[i]=u;var c=f}else if(l<<24>>24==86){var h=Se[i]+9|0;Se[i]=h;var c=_}else{var d=Se[i]+6|0;Se[i]=d;var c=s}var c,w=D(r,c,0,0);if(Se[n>>2]=w,0==(0|w)){var b=0;break}var n=w+4|0}var b;return b}function P(r,a){var e=0==(0|a);do if(e)var i=0;else{var v=J(r);if(0==(0|v)){var i=0;break}Se[v>>2]=33,Se[v+4>>2]=a;var i=v}while(0);var i;return i}function D(r,a,e,i){var v,t;do{if(1==(0|a)||2==(0|a)||3==(0|a)||4==(0|a)||10==(0|a)||28==(0|a)||37==(0|a)||43==(0|a)||44==(0|a)||45==(0|a)||46==(0|a)||47==(0|a)||48==(0|a)||49==(0|a)||50==(0|a)){if(0==(0|e)|0==(0|i)){var f=0;t=7;break}t=5;break}if(8==(0|a)||9==(0|a)||11==(0|a)||12==(0|a)||13==(0|a)||14==(0|a)||15==(0|a)||16==(0|a)||17==(0|a)||18==(0|a)||19==(0|a)||20==(0|a)||29==(0|a)||30==(0|a)||31==(0|a)||32==(0|a)||34==(0|a)||38==(0|a)||39==(0|a)||42==(0|a)){if(0==(0|e)){var f=0;t=7;break}t=5;break}if(36==(0|a)){if(0==(0|i)){var f=0;t=7;break}t=5;break}if(35==(0|a)||22==(0|a)||23==(0|a)||24==(0|a)||25==(0|a)||26==(0|a)||27==(0|a))t=5;else{var f=0;t=7}}while(0);do if(5==t){var _=J(r),v=_>>2;if(0==(0|_)){var f=0;break}Se[v]=a,Se[v+1]=e,Se[v+2]=i;var f=_}while(0);var f;return f}function L(r){var a=sr(r);if((0|a)<1)var e=0;else{var i=Rr(r,a);Se[r+44>>2]=i;var e=i}var e;return e}function F(r){var a,a=(r+12|0)>>2,e=Se[a],i=e+1|0;if(Se[a]=i,Ae[e]<<24>>24==70){if(Ae[i]<<24>>24==89){var v=e+2|0;Se[a]=v}var t=Sr(r,1),f=Se[a],_=f+1|0;Se[a]=_;var s=Ae[f]<<24>>24==69?t:0,n=s}else var n=0;var n;return n}function X(r){var a=Ar(r);return a}function j(r){var a,a=(r+12|0)>>2,e=Se[a],i=e+1|0;Se[a]=i;var v=Ae[e]<<24>>24==65;do if(v){var t=Ae[i];if(t<<24>>24==95)var f=0;else if((t-48&255&255)<10){for(var _=i;;){var _,s=_+1|0;if(Se[a]=s,(Ae[s]-48&255&255)>=10)break;var _=s}var n=s-i|0,o=lr(r,i,n);if(0==(0|o)){var l=0;break}var f=o}else{var b=nr(r);if(0==(0|b)){var l=0;break}var f=b}var f,k=Se[a],u=k+1|0;if(Se[a]=u,Ae[k]<<24>>24!=95){var l=0;break}var c=N(r),h=D(r,36,f,c),l=h}else var l=0;while(0);var l;return l}function U(r){var a=Oe;Oe+=4;var e=a,i=r+12|0,v=Se[i>>2],t=v+1|0;Se[i>>2]=t;var f=Ae[v]<<24>>24==77;r:do if(f){var _=N(r),s=I(r,e,1);if(0==(0|s)){var n=0;break}var o=N(r);Se[s>>2]=o;var l=(0|s)==(0|e);do if(!l){if(35==(0|Se[o>>2]))break;var b=Se[e>>2],k=R(r,b);if(0==(0|k)){var n=0;break r}}while(0);var u=Se[e>>2],c=D(r,37,_,u),n=c}else var n=0;while(0);var n;return Oe=a,n}function x(r){var a,a=(r+12|0)>>2,e=Se[a],i=e+1|0;Se[a]=i;var v=Ae[e]<<24>>24==84;do if(v){if(Ae[i]<<24>>24==95)var t=0,f=i;else{var _=sr(r);if((0|_)<0){var s=0;break}var t=_+1|0,f=Se[a]}var f,t;if(Se[a]=f+1|0,Ae[f]<<24>>24!=95){var s=0;break}var n=r+40|0,o=Se[n>>2]+1|0;Se[n>>2]=o;var l=Er(r,t),s=l}else var s=0;while(0);var s;return s}function z(r){var a,e=Oe;Oe+=4;var i=e,v=r+44|0,t=Se[v>>2],a=(r+12|0)>>2,f=Se[a],_=f+1|0;Se[a]=_;var s=Ae[f]<<24>>24==73;r:do if(s){Se[i>>2]=0;for(var n=i;;){var n,o=_r(r);if(0==(0|o)){var l=0;break r}var b=D(r,39,o,0);if(Se[n>>2]=b,0==(0|b)){var l=0;break r}var k=Se[a];if(Ae[k]<<24>>24==69)break;var n=b+8|0}var u=k+1|0;Se[a]=u,Se[v>>2]=t;var l=Se[i>>2]}else var l=0;while(0);var l;return Oe=e,l}function V(r,a){var e,e=(r+12|0)>>2,i=Se[e],v=i+1|0;Se[e]=v;var t=Ae[i]<<24>>24==83;r:do if(t){var f=i+2|0;Se[e]=f;var _=ge[v];if(_<<24>>24==95)var s=0;else{if(!((_-48&255&255)<10|(_-65&255&255)<26)){var n=8&Se[r+8>>2],o=n>>>3,l=0!=(0|n)|0==(0|a);do if(l)var b=o;else{if((Ae[f]-67&255&255)>=2){var b=o;break}var b=1}while(0);for(var b,k=0|ei;;){var k;if(k>>>0>=(ei+196|0)>>>0){var u=0;break r}if(_<<24>>24==Ae[0|k]<<24>>24)break;var k=k+28|0}var c=Se[k+20>>2];if(0!=(0|c)){var h=Se[k+24>>2],d=fr(r,c,h);Se[r+44>>2]=d}if(0==(0|b))var w=k+8|0,p=k+4|0;else var w=k+16|0,p=k+12|0;var p,w,E=Se[w>>2],A=Se[p>>2],g=r+48|0,y=Se[g>>2]+E|0;Se[g>>2]=y;var m=fr(r,A,E),u=m;break}for(var S=_,M=0,C=f;;){var C,M,S;if((S-48&255&255)<10)var R=36*M-48|0;else{if((S-65&255&255)>=26){var u=0;break r}var R=36*M-55|0}var R,T=(S<<24>>24)+R|0;if((0|T)<0){var u=0;break r}var O=C+1|0;Se[e]=O;var N=ge[C];if(N<<24>>24==95)break;var S=N,M=T,C=O}var s=T+1|0}var s;if((0|s)>=(0|Se[r+32>>2])){var u=0;break}var I=r+40|0,P=Se[I>>2]+1|0;Se[I>>2]=P;var u=Se[Se[r+28>>2]+(s<<2)>>2]}else var u=0;while(0);var u;return u}function B(r,a,e,i){var v,t,f,_,s=Oe;Oe+=28;var n,o=s,_=o>>2;Se[_]=r;var l=e+1|0,f=(o+12|0)>>2;Se[f]=l;var b=Jr(l),t=(o+4|0)>>2;if(Se[t]=b,0==(0|b))var k=0,u=1;else{var v=(o+8|0)>>2;Se[v]=0,Se[_+4]=0,Se[_+5]=0;var c=o+24|0;Se[c>>2]=0,H(o,a);var h=Me[t],d=0==(0|h);do{if(!d){var w=Me[v];if(w>>>0>=Me[f]>>>0){n=5;break}Se[v]=w+1|0,Ae[h+w|0]=0,n=6;break}n=5}while(0);5==n&&Y(o,0);var p=Se[t],E=0==(0|p)?Se[c>>2]:Se[f],k=p,u=E}var u,k;return Se[i>>2]=u,Oe=s,k}function H(r,a){var e,i,v,t,f,_,s,n,o,l,b,k,u,c,h,d,w,p,E,A,g,y,m,S,M,C,R,T,O,N,I,P,D,L,F,X,j,U,x,z,V,B,K,G,W,J,vr,tr,fr,_r,sr,nr,or,lr,br,kr,ur,cr,hr,dr,wr,pr=a>>2,Er=r>>2,Ar=Oe;Oe+=184;var gr,yr=Ar,wr=yr>>2,mr=Ar+64,dr=mr>>2,Sr=Ar+72,Mr=Ar+88,Cr=Ar+104,hr=Cr>>2,Rr=Ar+168,Tr=0==(0|a);r:do if(Tr)Z(r);else{var cr=(r+4|0)>>2,Or=Me[cr];if(0==(0|Or))break;var Nr=0|a,Ir=Me[Nr>>2];a:do{if(0==(0|Ir)){if(0!=(4&Se[Er]|0)){var Pr=Se[pr+1],Dr=Se[pr+2];q(r,Pr,Dr);break r}var ur=(r+8|0)>>2,Lr=Me[ur],Fr=a+8|0,Xr=Me[Fr>>2];if((Xr+Lr|0)>>>0>Me[Er+3]>>>0){var jr=Se[pr+1];Q(r,jr,Xr);break r}var Ur=Or+Lr|0,xr=Se[pr+1];Pa(Ur,xr,Xr,1);var zr=Se[ur]+Se[Fr>>2]|0;Se[ur]=zr;break r}if(1==(0|Ir)||2==(0|Ir)){var Vr=Se[pr+1];H(r,Vr);var Br=0==(4&Se[Er]|0),Hr=Me[cr],Kr=0!=(0|Hr);e:do if(Br){do if(Kr){var kr=(r+8|0)>>2,Yr=Me[kr];if((Yr+2|0)>>>0>Me[Er+3]>>>0)break;var Gr=Hr+Yr|0;oe=14906,Ae[Gr]=255&oe,oe>>=8,Ae[Gr+1]=255&oe;var Wr=Se[kr]+2|0;Se[kr]=Wr;break e}while(0);Q(r,0|He.__str120,2)}else{do if(Kr){var Zr=r+8|0,Qr=Me[Zr>>2];if(Qr>>>0>=Me[Er+3]>>>0)break;Se[Zr>>2]=Qr+1|0,Ae[Hr+Qr|0]=46;break e}while(0);Y(r,46)}while(0);var qr=Se[pr+2];H(r,qr);break r}if(3==(0|Ir)){for(var br=(r+20|0)>>2,$r=Me[br],lr=(r+16|0)>>2,Jr=a,ra=0,aa=$r;;){var aa,ra,Jr,ea=Me[Jr+4>>2];if(0==(0|ea)){var ia=ra,va=0;gr=33;break}if(ra>>>0>3){Z(r);break r}var ta=(ra<<4)+yr|0;Se[ta>>2]=aa,Se[br]=ta,Se[((ra<<4)+4>>2)+wr]=ea,Se[((ra<<4)+8>>2)+wr]=0;var fa=Me[lr];Se[((ra<<4)+12>>2)+wr]=fa;var _a=ra+1|0,sa=0|ea,na=Me[sa>>2];if((na-25|0)>>>0>=3){gr=25;break}var Jr=ea,ra=_a,aa=ta}e:do if(25==gr){if(4==(0|na)){Se[dr]=fa,Se[lr]=mr,Se[dr+1]=ea;var oa=Se[sa>>2],la=mr}else var oa=na,la=fa;var la,oa;if(2!=(0|oa)){var ia=_a,va=sa;break}for(var ba=_a,ka=ea+8|0;;){var ka,ba,ua=Me[ka>>2];if((Se[ua>>2]-25|0)>>>0>=3){var ia=ba,va=sa;break e}if(ba>>>0>3)break;var ca=(ba<<4)+yr|0,ha=ba-1|0,da=(ha<<4)+yr|0,or=ca>>2,nr=da>>2;Se[or]=Se[nr],Se[or+1]=Se[nr+1],Se[or+2]=Se[nr+2],Se[or+3]=Se[nr+3],Se[ca>>2]=da,Se[br]=ca,Se[((ha<<4)+4>>2)+wr]=ua,Se[((ha<<4)+8>>2)+wr]=0,Se[((ha<<4)+12>>2)+wr]=la;var ba=ba+1|0,ka=ua+4|0}Z(r);break r}while(0);var va,ia,wa=Se[pr+2];if(H(r,wa),4==(0|Se[va>>2])){var pa=Se[dr];Se[lr]=pa}var Ea=0==(0|ia);e:do if(!Ea)for(var Aa=r+8|0,ga=r+12|0,ya=ia;;){var ya,ma=ya-1|0;if(0==(0|Se[((ma<<4)+8>>2)+wr])){var Sa=Me[cr],Ma=0==(0|Sa);do{if(!Ma){var Ca=Me[Aa>>2];if(Ca>>>0>=Me[ga>>2]>>>0){gr=41;break}Se[Aa>>2]=Ca+1|0,Ae[Sa+Ca|0]=32,gr=42;break}gr=41}while(0);41==gr&&Y(r,32);var Ra=Se[((ma<<4)+4>>2)+wr];$(r,Ra)}if(0==(0|ma))break e;var ya=ma}while(0);Se[br]=$r;break r}if(4==(0|Ir)){var sr=(r+20|0)>>2,Ta=Se[sr];Se[sr]=0;var Oa=Se[pr+1];H(r,Oa);var Na=Me[cr],Ia=0==(0|Na);do{if(!Ia){var _r=(r+8|0)>>2,Da=Me[_r],La=0==(0|Da);do if(!La){if(Ae[Na+(Da-1)|0]<<24>>24!=60)break;Da>>>0>>0?(Se[_r]=Da+1|0,Ae[Na+Da|0]=32):Y(r,32)}while(0);var Fa=Me[cr];if(0==(0|Fa)){gr=54;break}var Xa=Me[_r];if(Xa>>>0>=Me[Er+3]>>>0){gr=54;break}Se[_r]=Xa+1|0,Ae[Fa+Xa|0]=60,gr=55;break}gr=54}while(0);54==gr&&Y(r,60);var ja=Se[pr+2];H(r,ja);var Ua=Me[cr],xa=0==(0|Ua);do{if(!xa){var fr=(r+8|0)>>2,za=Me[fr],Va=0==(0|za);do if(!Va){if(Ae[Ua+(za-1)|0]<<24>>24!=62)break;za>>>0>>0?(Se[fr]=za+1|0,Ae[Ua+za|0]=32):Y(r,32)}while(0);var Ba=Me[cr];if(0==(0|Ba)){gr=64;break}var Ha=Me[fr];if(Ha>>>0>=Me[Er+3]>>>0){gr=64;break}Se[fr]=Ha+1|0,Ae[Ba+Ha|0]=62,gr=65;break}gr=64}while(0);64==gr&&Y(r,62),Se[sr]=Ta;break r}if(5==(0|Ir)){var tr=(r+16|0)>>2,Ka=Me[tr];if(0==(0|Ka)){Z(r);break r}for(var Ya=Se[pr+1],Ga=Se[Ka+4>>2];;){var Ga,Ya,Wa=Se[Ga+8>>2];if(0==(0|Wa))break;if(39!=(0|Se[Wa>>2])){Z(r);break r}if((0|Ya)<1){if(0!=(0|Ya))break;var Za=Se[Ka>>2];Se[tr]=Za;var Qa=Se[Wa+4>>2];H(r,Qa),Se[tr]=Ka;break r}var Ya=Ya-1|0,Ga=Wa}Z(r);break r}if(6==(0|Ir)){var qa=Se[pr+2];H(r,qa);break r}if(7==(0|Ir)){var $a=r+8|0,Ja=Me[$a>>2];Ja>>>0>>0?(Se[$a>>2]=Ja+1|0,Ae[Or+Ja|0]=126):Y(r,126);var re=Se[pr+2];H(r,re);break r}if(8==(0|Ir)){var vr=(r+8|0)>>2,ae=Me[vr];if((ae+11|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str121,11);else{for(var ee=Or+ae|0,ie=0|He.__str121,ve=ee,te=ie+11;ie>2,se=Me[J];if((se+8|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str122,8);else{var ne=Or+se|0,le=0|ne;oe=542397526,Ae[le]=255&oe,oe>>=8,Ae[le+1]=255&oe,oe>>=8,Ae[le+2]=255&oe,oe>>=8,Ae[le+3]=255&oe;var be=ne+4|0;oe=544370534,Ae[be]=255&oe,oe>>=8,Ae[be+1]=255&oe,oe>>=8,Ae[be+2]=255&oe,oe>>=8,Ae[be+3]=255&oe;var ke=Se[J]+8|0;Se[J]=ke}var ue=Se[pr+1];H(r,ue);break r}if(10==(0|Ir)){var W=(r+8|0)>>2,ce=Me[W],he=r+12|0;if((ce+24|0)>>>0>Me[he>>2]>>>0)Q(r,0|He.__str123,24);else{var de=Or+ce|0;Pa(de,0|He.__str123,24,1);var we=Se[W]+24|0;Se[W]=we}var pe=Se[pr+1];H(r,pe);var Ee=Me[cr],ge=0==(0|Ee);do{if(!ge){var ye=Me[W];if((ye+4|0)>>>0>Me[he>>2]>>>0){gr=96;break}var me=Ee+ye|0;oe=762210605,Ae[me]=255&oe,oe>>=8,Ae[me+1]=255&oe,oe>>=8,Ae[me+2]=255&oe,oe>>=8,Ae[me+3]=255&oe;var Ce=Se[W]+4|0;Se[W]=Ce,gr=97;break}gr=96}while(0);96==gr&&Q(r,0|He.__str124,4);var Re=Se[pr+2];H(r,Re);break r}if(11==(0|Ir)){var G=(r+8|0)>>2,Te=Me[G];if((Te+13|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str125,13);else{for(var Ne=Or+Te|0,ie=0|He.__str125,ve=Ne,te=ie+13;ie>2,De=Me[K];if((De+18|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str126,18);else{for(var Le=Or+De|0,ie=0|He.__str126,ve=Le,te=ie+18;ie>2,je=Me[B];if((je+16|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str127,16);else{for(var Ue=Or+je|0,ie=0|He.__str127,ve=Ue,te=ie+16;ie>2,Ve=Me[V];if((Ve+21|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str128,21);else{var Be=Or+Ve|0;Pa(Be,0|He.__str128,21,1);var Ke=Se[V]+21|0;Se[V]=Ke}var Ye=Se[pr+1];H(r,Ye);break r}if(15==(0|Ir)){var z=(r+8|0)>>2,Ge=Me[z];if((Ge+17|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str129,17);else{for(var We=Or+Ge|0,ie=0|He.__str129,ve=We,te=ie+17;ie>2,qe=Me[x];if((qe+26|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str130,26);else{var $e=Or+qe|0;Pa($e,0|He.__str130,26,1);var Je=Se[x]+26|0;Se[x]=Je}var ri=Se[pr+1];H(r,ri);break r}if(17==(0|Ir)){var U=(r+8|0)>>2,ai=Me[U];if((ai+15|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str131,15);else{for(var ei=Or+ai|0,ie=0|He.__str131,ve=ei,te=ie+15;ie>2,ti=Me[j];if((ti+19|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str132,19);else{for(var fi=Or+ti|0,ie=0|He.__str132,ve=fi,te=ie+19;ie>2,ni=Me[X];if((ni+24|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str133,24);else{var oi=Or+ni|0;Pa(oi,0|He.__str133,24,1);var li=Se[X]+24|0;Se[X]=li}var bi=Se[pr+1];H(r,bi);break r}if(20==(0|Ir)){var F=(r+8|0)>>2,ki=Me[F];if((ki+17|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str134,17);else{for(var ui=Or+ki|0,ie=0|He.__str134,ve=ui,te=ie+17;ie>2,di=Me[L],wi=a+8|0,pi=Me[wi>>2];if((pi+di|0)>>>0>Me[Er+3]>>>0){var Ei=Se[pr+1];Q(r,Ei,pi);break r}var Ai=Or+di|0,gi=Se[pr+1];Pa(Ai,gi,pi,1);var yi=Se[L]+Se[wi>>2]|0;Se[L]=yi;break r}if(22==(0|Ir)||23==(0|Ir)||24==(0|Ir)){for(var mi=r+20|0;;){var mi,Si=Me[mi>>2];if(0==(0|Si))break a;if(0==(0|Se[Si+8>>2])){var Mi=Me[Se[Si+4>>2]>>2];if((Mi-22|0)>>>0>=3)break a;if((0|Mi)==(0|Ir))break}var mi=0|Si}var Ci=Se[pr+1];H(r,Ci);break r}if(25!=(0|Ir)&&26!=(0|Ir)&&27!=(0|Ir)&&28!=(0|Ir)&&29!=(0|Ir)&&30!=(0|Ir)&&31!=(0|Ir)&&32!=(0|Ir)){if(33==(0|Ir)){var D=(r+8|0)>>2,Ri=Me[D],P=(a+4|0)>>2,I=Me[P]>>2;if(0==(4&Se[Er]|0)){var Ti=Me[I+1];if((Ti+Ri|0)>>>0>Me[Er+3]>>>0){var Oi=Se[I];Q(r,Oi,Ti);break r}var Ni=Or+Ri|0,Ii=Se[I];Pa(Ni,Ii,Ti,1);var Pi=Se[D]+Se[Se[P]+4>>2]|0;Se[D]=Pi;break r}var Di=Me[I+3];if((Di+Ri|0)>>>0>Me[Er+3]>>>0){var Li=Se[I+2];Q(r,Li,Di);break r}var Fi=Or+Ri|0,Xi=Se[I+2];Pa(Fi,Xi,Di,1);var ji=Se[D]+Se[Se[P]+12>>2]|0;Se[D]=ji;break r}if(34==(0|Ir)){var Ui=Se[pr+1];H(r,Ui);break r}if(35==(0|Ir)){var N=(0|r)>>2;if(0!=(32&Se[N]|0)){var xi=Se[Er+5];rr(r,a,xi)}var zi=a+4|0,Vi=0==(0|Se[zi>>2]);e:do if(!Vi){var O=(r+20|0)>>2,Bi=Se[O],Hi=0|Mr;Se[Hi>>2]=Bi,Se[O]=Mr,Se[Mr+4>>2]=a;var Ki=Mr+8|0;Se[Ki>>2]=0;var Yi=Se[Er+4];Se[Mr+12>>2]=Yi;var Gi=Se[zi>>2];H(r,Gi);var Wi=Se[Hi>>2];if(Se[O]=Wi,0!=(0|Se[Ki>>2]))break r;if(0!=(32&Se[N]|0))break;var Zi=Me[cr],Qi=0==(0|Zi);do if(!Qi){var qi=r+8|0,$i=Me[qi>>2];if($i>>>0>=Me[Er+3]>>>0)break;Se[qi>>2]=$i+1|0,Ae[Zi+$i|0]=32;break e}while(0);Y(r,32)}while(0);if(0!=(32&Se[N]|0))break r;var Ji=Se[Er+5];rr(r,a,Ji);break r}if(36==(0|Ir)){var T=(r+20|0)>>2,rv=Me[T],av=0|Cr;Se[hr]=rv,Se[T]=av,Se[hr+1]=a;var ev=Cr+8|0;Se[ev>>2]=0;var iv=Se[Er+4];Se[hr+3]=iv;for(var vv=rv,tv=1;;){var tv,vv;if(0==(0|vv))break;if((Se[Se[vv+4>>2]>>2]-22|0)>>>0>=3)break;var fv=vv+8|0;if(0==(0|Se[fv>>2])){if(tv>>>0>3){Z(r);break r}var _v=(tv<<4)+Cr|0,R=_v>>2,C=vv>>2;Se[R]=Se[C],Se[R+1]=Se[C+1],Se[R+2]=Se[C+2],Se[R+3]=Se[C+3];var sv=Se[T];Se[_v>>2]=sv,Se[T]=_v,Se[fv>>2]=1;var nv=tv+1|0}else var nv=tv;var nv,vv=Se[vv>>2],tv=nv}var ov=Se[pr+2];if(H(r,ov),Se[T]=rv,0!=(0|Se[ev>>2]))break r;if(tv>>>0>1){for(var lv=tv;;){var lv,bv=lv-1|0,kv=Se[((bv<<4)+4>>2)+hr];if($(r,kv),bv>>>0<=1)break;var lv=bv}var uv=Se[T]}else var uv=rv;var uv;ar(r,a,uv);break r}if(37==(0|Ir)){var M=(r+20|0)>>2,cv=Se[M],hv=0|Rr;Se[hv>>2]=cv,Se[M]=Rr,Se[Rr+4>>2]=a;var dv=Rr+8|0;Se[dv>>2]=0;var wv=Se[Er+4];Se[Rr+12>>2]=wv;var pv=a+4|0,Ev=Se[pr+2];H(r,Ev);var Av=0==(0|Se[dv>>2]);e:do if(Av){var gv=Me[cr],yv=0==(0|gv);do{if(!yv){var mv=r+8|0,Sv=Me[mv>>2];if(Sv>>>0>=Me[Er+3]>>>0){gr=187;break}Se[mv>>2]=Sv+1|0,Ae[gv+Sv|0]=32,gr=188;break}gr=187}while(0);187==gr&&Y(r,32);var Mv=Se[pv>>2];H(r,Mv);var Cv=Me[cr],Rv=0==(0|Cv);do if(!Rv){var S=(r+8|0)>>2,Tv=Me[S];if((Tv+3|0)>>>0>Me[Er+3]>>>0)break;var Ov=Cv+Tv|0;Ae[Ov]=Ae[0|He.__str135],Ae[Ov+1]=Ae[(0|He.__str135)+1],Ae[Ov+2]=Ae[(0|He.__str135)+2];var Nv=Se[S]+3|0;Se[S]=Nv;break e}while(0);Q(r,0|He.__str135,3)}while(0);var Iv=Se[hv>>2];Se[M]=Iv;break r}if(38==(0|Ir)||39==(0|Ir)){var Pv=Se[pr+1];H(r,Pv);var Dv=a+8|0;if(0==(0|Se[Dv>>2]))break r;var Lv=Me[cr],Fv=0==(0|Lv);do{if(!Fv){var m=(r+8|0)>>2,Xv=Me[m];if((Xv+2|0)>>>0>Me[Er+3]>>>0){gr=197;break}var jv=Lv+Xv|0;oe=8236,Ae[jv]=255&oe,oe>>=8,Ae[jv+1]=255&oe;var Uv=Se[m]+2|0;Se[m]=Uv,gr=198;break}gr=197}while(0);197==gr&&Q(r,0|He.__str136,2);var xv=Se[Dv>>2];H(r,xv);break r}if(40==(0|Ir)){var y=(r+8|0)>>2,zv=Me[y],g=(r+12|0)>>2;if((zv+8|0)>>>0>Me[g]>>>0)Q(r,0|He.__str137,8);else{var Vv=Or+zv|0,le=0|Vv;oe=1919250543,Ae[le]=255&oe,oe>>=8,Ae[le+1]=255&oe,oe>>=8,Ae[le+2]=255&oe,oe>>=8,Ae[le+3]=255&oe;var be=Vv+4|0;oe=1919906913,Ae[be]=255&oe,oe>>=8,Ae[be+1]=255&oe,oe>>=8,Ae[be+2]=255&oe,oe>>=8,Ae[be+3]=255&oe;var Bv=Se[y]+8|0;Se[y]=Bv}var A=(a+4|0)>>2,Hv=(Ae[Se[Se[A]+4>>2]]-97&255&255)<26;e:do if(Hv){var Kv=Me[cr],Yv=0==(0|Kv);do if(!Yv){var Gv=Me[y];if(Gv>>>0>=Me[g]>>>0)break;Se[y]=Gv+1|0,Ae[Kv+Gv|0]=32;break e}while(0);Y(r,32)}while(0);var Wv=Me[cr],Zv=0==(0|Wv);do{if(!Zv){var Qv=Me[y],qv=Me[A],$v=Me[qv+8>>2];if(($v+Qv|0)>>>0>Me[g]>>>0){var Jv=qv,rt=$v;break}var at=Wv+Qv|0,et=Se[qv+4>>2];Pa(at,et,$v,1);var it=Se[y]+Se[Se[A]+8>>2]|0;Se[y]=it;break r}var vt=Me[A],Jv=vt,rt=Se[vt+8>>2]}while(0);var rt,Jv,tt=Se[Jv+4>>2];Q(r,tt,rt);break r}if(41==(0|Ir)){var E=(r+8|0)>>2,ft=Me[E];if((ft+9|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str10180,9);else{for(var _t=Or+ft|0,ie=0|He.__str10180,ve=_t,te=ie+9;ie>2,ot=Me[p];if((ot+9|0)>>>0>Me[Er+3]>>>0)Q(r,0|He.__str10180,9);else{for(var lt=Or+ot|0,ie=0|He.__str10180,ve=lt,te=ie+9;ie>2],ct=42==(0|Se[ut>>2]);e:do if(ct){var w=(r+8|0)>>2,ht=Me[w],dt=r+12|0;ht>>>0>2]>>>0?(Se[w]=ht+1|0,Ae[Or+ht|0]=40):Y(r,40);var wt=Se[kt>>2];er(r,wt);var pt=Me[cr],Et=0==(0|pt);do if(!Et){var At=Me[w];if(At>>>0>=Me[dt>>2]>>>0)break;Se[w]=At+1|0,Ae[pt+At|0]=41;break e}while(0);Y(r,41)}else ir(r,ut);while(0);var gt=Me[cr],yt=0==(0|gt);do{if(!yt){var mt=r+8|0,St=Me[mt>>2];if(St>>>0>=Me[Er+3]>>>0){gr=232;break}Se[mt>>2]=St+1|0,Ae[gt+St|0]=40,gr=233;break}gr=232}while(0);232==gr&&Y(r,40);var Mt=Se[pr+2];H(r,Mt);var Ct=Me[cr],Rt=0==(0|Ct);do if(!Rt){var Tt=r+8|0,Ot=Me[Tt>>2];if(Ot>>>0>=Me[Er+3]>>>0)break;Se[Tt>>2]=Ot+1|0,Ae[Ct+Ot|0]=41;break r}while(0);Y(r,41);break r}if(44==(0|Ir)){var d=(a+8|0)>>2;if(45==(0|Se[Se[d]>>2])){var h=(a+4|0)>>2,Nt=Se[h],It=40==(0|Se[Nt>>2]);do if(It){var Pt=Se[Nt+4>>2];if(1!=(0|Se[Pt+8>>2]))break;if(Ae[Se[Pt+4>>2]]<<24>>24!=62)break;var Dt=r+8|0,Lt=Me[Dt>>2];Lt>>>0>>0?(Se[Dt>>2]=Lt+1|0,Ae[Or+Lt|0]=40):Y(r,40)}while(0);var Ft=Me[cr],Xt=0==(0|Ft);do{if(!Xt){var jt=r+8|0,Ut=Me[jt>>2];if(Ut>>>0>=Me[Er+3]>>>0){gr=248;break}Se[jt>>2]=Ut+1|0,Ae[Ft+Ut|0]=40,gr=249;break}gr=248}while(0);248==gr&&Y(r,40);var xt=Se[Se[d]+4>>2];H(r,xt);var zt=Me[cr],Vt=0==(0|zt);do{if(!Vt){var c=(r+8|0)>>2,Bt=Me[c];if((Bt+2|0)>>>0>Me[Er+3]>>>0){gr=252;break}var Ht=zt+Bt|0;oe=8233,Ae[Ht]=255&oe,oe>>=8,Ae[Ht+1]=255&oe;var Kt=Se[c]+2|0;Se[c]=Kt,gr=253;break}gr=252}while(0);252==gr&&Q(r,0|He.__str139,2);var Yt=Se[h];ir(r,Yt);var Gt=Me[cr],Wt=0==(0|Gt);do{if(!Wt){var u=(r+8|0)>>2,Zt=Me[u];if((Zt+2|0)>>>0>Me[Er+3]>>>0){gr=256;break}var Qt=Gt+Zt|0;oe=10272,Ae[Qt]=255&oe,oe>>=8,Ae[Qt+1]=255&oe;var qt=Se[u]+2|0;Se[u]=qt,gr=257;break}gr=256}while(0);256==gr&&Q(r,0|He.__str140,2);var $t=Se[Se[d]+8>>2];H(r,$t);var Jt=Me[cr],rf=0==(0|Jt);do{if(!rf){var af=r+8|0,ef=Me[af>>2];if(ef>>>0>=Me[Er+3]>>>0){gr=260;break}Se[af>>2]=ef+1|0,Ae[Jt+ef|0]=41,gr=261;break}gr=260}while(0);260==gr&&Y(r,41);var vf=Se[h];if(40!=(0|Se[vf>>2]))break r;var tf=Se[vf+4>>2];if(1!=(0|Se[tf+8>>2]))break r;if(Ae[Se[tf+4>>2]]<<24>>24!=62)break r;var ff=Me[cr],_f=0==(0|ff);do if(!_f){var sf=r+8|0,nf=Me[sf>>2];if(nf>>>0>=Me[Er+3]>>>0)break;Se[sf>>2]=nf+1|0,Ae[ff+nf|0]=41;break r}while(0);Y(r,41);break r}Z(r);break r}if(45==(0|Ir)){Z(r);break r}if(46==(0|Ir)){var of=a+4|0,k=(a+8|0)>>2,lf=Se[k],bf=47==(0|Se[lf>>2]);do if(bf){if(48!=(0|Se[Se[lf+8>>2]>>2]))break;var b=(r+8|0)>>2,kf=Me[b],l=(r+12|0)>>2;kf>>>0>>0?(Se[b]=kf+1|0,Ae[Or+kf|0]=40):Y(r,40);var uf=Se[Se[k]+4>>2];H(r,uf);var cf=Me[cr],hf=0==(0|cf);do{if(!hf){var df=Me[b];if((df+2|0)>>>0>Me[l]>>>0){gr=278;break}var wf=cf+df|0;oe=8233,Ae[wf]=255&oe,oe>>=8,Ae[wf+1]=255&oe;var pf=Se[b]+2|0;Se[b]=pf,gr=279;break}gr=278}while(0);278==gr&&Q(r,0|He.__str139,2);var Ef=Se[of>>2];ir(r,Ef);var Af=Me[cr],gf=0==(0|Af);do{if(!gf){var yf=Me[b];if((yf+2|0)>>>0>Me[l]>>>0){gr=282;break}var mf=Af+yf|0;oe=10272,Ae[mf]=255&oe,oe>>=8,Ae[mf+1]=255&oe;var Sf=Se[b]+2|0;Se[b]=Sf,gr=283;break}gr=282}while(0);282==gr&&Q(r,0|He.__str140,2);var Mf=Se[Se[Se[k]+8>>2]+4>>2];H(r,Mf);var Cf=Me[cr],Rf=0==(0|Cf);do{if(!Rf){var Tf=Me[b];if((Tf+5|0)>>>0>Me[l]>>>0){gr=286;break}var Of=Cf+Tf|0;Ae[Of]=Ae[0|He.__str141],Ae[Of+1]=Ae[(0|He.__str141)+1],Ae[Of+2]=Ae[(0|He.__str141)+2],Ae[Of+3]=Ae[(0|He.__str141)+3],Ae[Of+4]=Ae[(0|He.__str141)+4];var Nf=Se[b]+5|0;Se[b]=Nf,gr=287;break}gr=286}while(0);286==gr&&Q(r,0|He.__str141,5);var If=Se[Se[Se[k]+8>>2]+8>>2];H(r,If);var Pf=Me[cr],Df=0==(0|Pf);do if(!Df){var Lf=Me[b];if(Lf>>>0>=Me[l]>>>0)break;Se[b]=Lf+1|0,Ae[Pf+Lf|0]=41;break r}while(0);Y(r,41);break r}while(0);Z(r);break r}if(47==(0|Ir)||48==(0|Ir)){Z(r);break r}if(49==(0|Ir)||50==(0|Ir)){var Ff=a+4|0,Xf=Se[Ff>>2],jf=33==(0|Se[Xf>>2]);do{if(jf){var Uf=Me[Se[Xf+4>>2]+16>>2];if(1==(0|Uf)||2==(0|Uf)||3==(0|Uf)||4==(0|Uf)||5==(0|Uf)||6==(0|Uf)){var xf=a+8|0;if(0!=(0|Se[Se[xf>>2]>>2])){var zf=Uf;break}if(50==(0|Ir)){var Vf=r+8|0,Bf=Me[Vf>>2];Bf>>>0>>0?(Se[Vf>>2]=Bf+1|0,Ae[Or+Bf|0]=45):Y(r,45)}var Hf=Se[xf>>2];if(H(r,Hf),2==(0|Uf)){var Kf=Me[cr],Yf=0==(0|Kf);do if(!Yf){var Gf=r+8|0,Wf=Me[Gf>>2];if(Wf>>>0>=Me[Er+3]>>>0)break;Se[Gf>>2]=Wf+1|0,Ae[Kf+Wf|0]=117;break r}while(0);Y(r,117);break r}if(3==(0|Uf)){var Zf=Me[cr],Qf=0==(0|Zf);do if(!Qf){var qf=r+8|0,$f=Me[qf>>2];if($f>>>0>=Me[Er+3]>>>0)break;Se[qf>>2]=$f+1|0,Ae[Zf+$f|0]=108;break r}while(0);Y(r,108);break r}if(4==(0|Uf)){var Jf=Me[cr],r_=0==(0|Jf);do if(!r_){var o=(r+8|0)>>2,a_=Me[o];if((a_+2|0)>>>0>Me[Er+3]>>>0)break;var e_=Jf+a_|0;oe=27765,Ae[e_]=255&oe,oe>>=8,Ae[e_+1]=255&oe;var i_=Se[o]+2|0;Se[o]=i_;break r}while(0);Q(r,0|He.__str142,2);break r}if(5==(0|Uf)){var v_=Me[cr],t_=0==(0|v_);do if(!t_){var n=(r+8|0)>>2,f_=Me[n];if((f_+2|0)>>>0>Me[Er+3]>>>0)break;var __=v_+f_|0;oe=27756,Ae[__]=255&oe,oe>>=8,Ae[__+1]=255&oe;var s_=Se[n]+2|0;Se[n]=s_;break r}while(0);Q(r,0|He.__str143,2);break r}if(6==(0|Uf)){var n_=Me[cr],o_=0==(0|n_);do if(!o_){var s=(r+8|0)>>2,l_=Me[s];if((l_+3|0)>>>0>Me[Er+3]>>>0)break;var b_=n_+l_|0;Ae[b_]=Ae[0|He.__str144],Ae[b_+1]=Ae[(0|He.__str144)+1],Ae[b_+2]=Ae[(0|He.__str144)+2];var k_=Se[s]+3|0;Se[s]=k_;break r}while(0);Q(r,0|He.__str144,3);break r}break r}if(7==(0|Uf)){var _=Se[pr+2]>>2;if(0!=(0|Se[_])){var zf=7;break}if(!(1==(0|Se[_+2])&49==(0|Ir))){var zf=Uf;break}var u_=Ae[Se[_+1]]<<24>>24;if(48==(0|u_)){var f=(r+8|0)>>2,c_=Me[f];if((c_+5|0)>>>0>Me[Er+3]>>>0){Q(r,0|He.__str145,5);break r}var h_=Or+c_|0;Ae[h_]=Ae[0|He.__str145],Ae[h_+1]=Ae[(0|He.__str145)+1],Ae[h_+2]=Ae[(0|He.__str145)+2],Ae[h_+3]=Ae[(0|He.__str145)+3],Ae[h_+4]=Ae[(0|He.__str145)+4];var d_=Se[f]+5|0;Se[f]=d_;break r}if(49==(0|u_)){var t=(r+8|0)>>2,w_=Me[t];if((w_+4|0)>>>0>Me[Er+3]>>>0){Q(r,0|He.__str146,4);break r}var p_=Or+w_|0;oe=1702195828,Ae[p_]=255&oe,oe>>=8,Ae[p_+1]=255&oe,oe>>=8,Ae[p_+2]=255&oe,oe>>=8,Ae[p_+3]=255&oe;var E_=Se[t]+4|0;Se[t]=E_;break r}var zf=Uf;break}var zf=Uf;break}var zf=0}while(0);var zf,v=(r+8|0)>>2,A_=Me[v],i=(r+12|0)>>2;A_>>>0>>0?(Se[v]=A_+1|0,Ae[Or+A_|0]=40):Y(r,40);var g_=Se[Ff>>2];H(r,g_);var y_=Me[cr],m_=0==(0|y_);do{if(!m_){var S_=Me[v];if(S_>>>0>=Me[i]>>>0){gr=335;break}Se[v]=S_+1|0,Ae[y_+S_|0]=41,gr=336;break}gr=335}while(0);335==gr&&Y(r,41);var M_=50==(0|Se[Nr>>2]);e:do if(M_){var C_=Me[cr],R_=0==(0|C_);do if(!R_){var T_=Me[v];if(T_>>>0>=Me[i]>>>0)break;Se[v]=T_+1|0,Ae[C_+T_|0]=45;break e}while(0);Y(r,45)}while(0);if(8==(0|zf)){var O_=Me[cr],N_=0==(0|O_);do{if(!N_){var I_=Me[v];if(I_>>>0>=Me[i]>>>0){gr=345;break}Se[v]=I_+1|0,Ae[O_+I_|0]=91,gr=346;break}gr=345}while(0);345==gr&&Y(r,91);var P_=Se[pr+2];H(r,P_);var D_=Me[cr],L_=0==(0|D_);do if(!L_){var F_=Me[v];if(F_>>>0>=Me[i]>>>0)break;Se[v]=F_+1|0,Ae[D_+F_|0]=93;break r}while(0);Y(r,93);break r}var X_=Se[pr+2];H(r,X_);break r}Z(r);break r}}while(0);var e=(r+20|0)>>2,j_=Se[e],U_=0|Sr;Se[U_>>2]=j_,Se[e]=Sr,Se[Sr+4>>2]=a;var x_=Sr+8|0;Se[x_>>2]=0;var z_=Se[Er+4];Se[Sr+12>>2]=z_;var V_=Se[pr+1];H(r,V_),0==(0|Se[x_>>2])&&$(r,a);var B_=Se[U_>>2];Se[e]=B_}while(0);Oe=Ar}function K(r,a,e,i){var v=i>>2;Se[v]=r,Se[v+1]=r+e|0,Se[v+2]=a,Se[v+3]=r,Se[v+6]=e<<1,Se[v+5]=0,Se[v+9]=e,Se[v+8]=0,Se[v+10]=0,Se[v+11]=0,Se[v+12]=0}function Y(r,a){var e,i=r+4|0,v=Me[i>>2],t=0==(0|v);do if(!t){var e=(r+8|0)>>2,f=Me[e];if(f>>>0>2]>>>0)var _=v,s=f;else{tr(r,1);var n=Me[i>>2];if(0==(0|n))break;var _=n,s=Se[e]}var s,_;Ae[_+s|0]=255&a;var o=Se[e]+1|0;Se[e]=o}while(0)}function G(r,a,e,i){var v,t=i>>2,f=Oe;Oe+=4;var _=f,v=_>>2,s=0==(0|r);do if(s){if(0==(0|i)){var n=0;break}Se[t]=-3;var n=0}else{var o=0==(0|e);if(0!=(0|a)&o){if(0==(0|i)){var n=0;break}Se[t]=-3;var n=0}else{var l=W(r,_);if(0==(0|l)){if(0==(0|i)){var n=0;break}if(1==(0|Se[v])){Se[t]=-1;var n=0}else{Se[t]=-2;var n=0}}else{var b=0==(0|a);do if(b){if(o){var k=l;break}var u=Se[v];Se[e>>2]=u;var k=l}else{var c=Ca(l);if(c>>>0>2]>>>0){Ra(a,l);va(l);var k=a}else{va(a);var h=Se[v];Se[e>>2]=h;var k=l}}while(0);var k;if(0==(0|i)){var n=k;break}Se[t]=0;var n=k}}}while(0);var n;return Oe=f,n}function W(r,a){var e,i=Oe;Oe+=52;var v,t=i,e=t>>2;Se[a>>2]=0;var f=Ca(r),_=Ae[r]<<24>>24==95;do{if(_){if(Ae[r+1|0]<<24>>24==90){var s=0;v=13;break}v=3;break}v=3}while(0);do if(3==v){var n=Na(r,0|He.__str117,8);if(0!=(0|n)){var s=1;v=13;break}var o=Ae[r+8|0];if(o<<24>>24!=46&&o<<24>>24!=95&&o<<24>>24!=36){var s=1;v=13;break}var l=r+9|0,b=Ae[l];if(b<<24>>24!=68&&b<<24>>24!=73){\nvar s=1;v=13;break}if(Ae[r+10|0]<<24>>24!=95){var s=1;v=13;break}var k=f+29|0,u=Jr(k);if(0==(0|u)){Se[a>>2]=1;var c=0;v=19;break}Ae[l]<<24>>24==73?Pa(u,0|He.__str118,30,1):Pa(u,0|He.__str119,29,1);var h=r+11|0,c=(Ia(u,h),u);v=19;break}while(0);if(13==v){var s;K(r,17,f,t);var d=Se[e+6],w=Ta(),p=Oe;Oe+=12*d,Oe=Oe+3>>2<<2;var E=Oe;if(Oe+=4*Se[e+9],Oe=Oe+3>>2<<2,Se[e+4]=p,Se[e+7]=E,s)var A=N(t),g=A;else var y=T(t,1),g=y;var g,m=Ae[Se[e+3]]<<24>>24==0?g:0,S=Se[e+12]+f+10*Se[e+10]|0;if(0==(0|m))var M=0;else var C=S/8+S|0,R=B(17,m,C,a),M=R;var M;Oa(w);var c=M}var c;return Oe=i,c}function Z(r){var a=r+4|0,e=Se[a>>2];va(e),Se[a>>2]=0}function Q(r,a,e){var i,v=r+4|0,t=Me[v>>2],f=0==(0|t);do if(!f){var i=(r+8|0)>>2,_=Me[i];if((_+e|0)>>>0>Me[r+12>>2]>>>0){tr(r,e);var s=Me[v>>2];if(0==(0|s))break;var n=s,o=Se[i]}else var n=t,o=_;var o,n;Pa(n+o|0,a,e,1);var l=Se[i]+e|0;Se[i]=l}while(0)}function q(r,a,e){var i,v,t=a+e|0,f=(0|e)>0;r:do if(f)for(var _=t,s=r+4|0,i=(r+8|0)>>2,n=r+12|0,o=a;;){var o,l=(_-o|0)>3;a:do{if(l){if(Ae[o]<<24>>24!=95){v=21;break}if(Ae[o+1|0]<<24>>24!=95){v=21;break}if(Ae[o+2|0]<<24>>24!=85){v=21;break}for(var b=o+3|0,k=0;;){var k,b;if(b>>>0>=t>>>0){v=21;break a}var u=ge[b],c=u<<24>>24;if((u-48&255&255)<10)var h=c-48|0;else if((u-65&255&255)<6)var h=c-55|0;else{if((u-97&255&255)>=6)break;var h=c-87|0}var h,b=b+1|0,k=(k<<4)+h|0}if(!(u<<24>>24==95&k>>>0<256)){v=21;break}var d=Me[s>>2],w=0==(0|d);do if(!w){var p=Me[i];if(p>>>0>=Me[n>>2]>>>0)break;Se[i]=p+1|0,Ae[d+p|0]=255&k;var E=b;v=25;break a}while(0);Y(r,k);var E=b;v=25;break}v=21}while(0);a:do if(21==v){var A=Me[s>>2],g=0==(0|A);do if(!g){var y=Me[i];if(y>>>0>=Me[n>>2]>>>0)break;var m=Ae[o];Se[i]=y+1|0,Ae[A+y|0]=m;var E=o;break a}while(0);var S=Ae[o]<<24>>24;Y(r,S);var E=o}while(0);var E,M=E+1|0;if(M>>>0>=t>>>0)break r;var o=M}while(0)}function $(r,a){var e,i,v,t,f,_,s,n=r>>2,o=Se[a>>2];r:do if(22==(0|o)||25==(0|o)){var l=Me[n+1],b=0==(0|l);do if(!b){var _=(r+8|0)>>2,k=Me[_];if((k+9|0)>>>0>Me[n+3]>>>0)break;for(var u=l+k|0,c=0|He.__str147,h=u,d=c+9;c>2,A=Me[f];if((A+9|0)>>>0>Me[n+3]>>>0)break;for(var g=p+A|0,c=0|He.__str148,h=g,d=c+9;c>2,M=Me[t];if((M+6|0)>>>0>Me[n+3]>>>0)break;var C=m+M|0;Ae[C]=Ae[0|He.__str149],Ae[C+1]=Ae[(0|He.__str149)+1],Ae[C+2]=Ae[(0|He.__str149)+2],Ae[C+3]=Ae[(0|He.__str149)+3],Ae[C+4]=Ae[(0|He.__str149)+4],Ae[C+5]=Ae[(0|He.__str149)+5];var R=Se[t]+6|0;Se[t]=R;break r}while(0);Q(r,0|He.__str149,6)}else if(28==(0|o)){var T=Me[n+1],O=0==(0|T);do{if(!O){var N=r+8|0,I=Me[N>>2];if(I>>>0>=Me[n+3]>>>0){s=17;break}Se[N>>2]=I+1|0,Ae[T+I|0]=32,s=18;break}s=17}while(0);17==s&&Y(r,32);var P=Se[a+8>>2];H(r,P)}else if(29==(0|o)){if(0!=(4&Se[n]|0))break;var D=Me[n+1],L=0==(0|D);do if(!L){var F=r+8|0,X=Me[F>>2];if(X>>>0>=Me[n+3]>>>0)break;Se[F>>2]=X+1|0,Ae[D+X|0]=42;break r}while(0);Y(r,42)}else if(30==(0|o)){var j=Me[n+1],U=0==(0|j);do if(!U){var x=r+8|0,z=Me[x>>2];if(z>>>0>=Me[n+3]>>>0)break;Se[x>>2]=z+1|0,Ae[j+z|0]=38;break r}while(0);Y(r,38)}else if(31==(0|o)){var V=Me[n+1],B=0==(0|V);do if(!B){var v=(r+8|0)>>2,K=Me[v];if((K+8|0)>>>0>Me[n+3]>>>0)break;var G=V+K|0,W=0|G;oe=1886220131,Ae[W]=255&oe,oe>>=8,Ae[W+1]=255&oe,oe>>=8,Ae[W+2]=255&oe,oe>>=8,Ae[W+3]=255&oe;var Z=G+4|0;oe=544761196,Ae[Z]=255&oe,oe>>=8,Ae[Z+1]=255&oe,oe>>=8,Ae[Z+2]=255&oe,oe>>=8,Ae[Z+3]=255&oe;var q=Se[v]+8|0;Se[v]=q;break r}while(0);Q(r,0|He.__str150,8)}else if(32==(0|o)){var $=Me[n+1],J=0==(0|$);do if(!J){var i=(r+8|0)>>2,rr=Me[i];if((rr+10|0)>>>0>Me[n+3]>>>0)break;for(var ar=$+rr|0,c=0|He.__str151,h=ar,d=c+10;c>2],tr=0==(0|vr);do{if(!tr){var fr=r+8|0,_r=Me[fr>>2];if(0!=(0|_r)&&Ae[vr+(_r-1)|0]<<24>>24==40){s=42;break}if(_r>>>0>=Me[n+3]>>>0){s=41;break}Se[fr>>2]=_r+1|0,Ae[vr+_r|0]=32,s=42;break}s=41}while(0);41==s&&Y(r,32);var sr=Se[a+4>>2];H(r,sr);var nr=Me[ir>>2],or=0==(0|nr);do if(!or){var e=(r+8|0)>>2,lr=Me[e];if((lr+3|0)>>>0>Me[n+3]>>>0)break;var br=nr+lr|0;Ae[br]=Ae[0|He.__str135],Ae[br+1]=Ae[(0|He.__str135)+1],Ae[br+2]=Ae[(0|He.__str135)+2];var kr=Se[e]+3|0;Se[e]=kr;break r}while(0);Q(r,0|He.__str135,3)}else if(3==(0|o)){var ur=Se[a+4>>2];H(r,ur)}else H(r,a);while(0)}function J(r){var a=r+20|0,e=Se[a>>2];if((0|e)<(0|Se[r+24>>2])){var i=Se[r+16>>2]+12*e|0,v=e+1|0;Se[a>>2]=v;var t=i}else var t=0;var t;return t}function rr(r,a,e){var i,v,t,f,_=r>>2,s=e,t=s>>2,n=0;r:for(;;){var n,s,o=0==(0|s);do if(!o){if(0!=(0|Se[t+2]))break;var l=Se[Se[t+1]>>2];if(29==(0|l)||30==(0|l)){f=9;break r}if(22==(0|l)||23==(0|l)||24==(0|l)||28==(0|l)||31==(0|l)||32==(0|l)||37==(0|l)){var b=Se[_+1];f=12;break r}var s=Se[t],t=s>>2,n=1;continue r}while(0);if(0!=(0|Se[a+4>>2])&0==(0|n)){f=9;break}var k=0,u=r+4|0,v=u>>2;f=22;break}do if(9==f){var c=Se[_+1];if(0==(0|c)){f=17;break}var h=Se[_+2];if(0==(0|h)){var d=c;f=13;break}var w=Ae[c+(h-1)|0];if(w<<24>>24==40||w<<24>>24==42){f=18;break}var b=c;f=12;break}while(0);do if(12==f){var b;if(0==(0|b)){f=17;break}var d=b;f=13;break}while(0);do if(13==f){var d,p=r+8|0,E=Me[p>>2];if(0!=(0|E)&&Ae[d+(E-1)|0]<<24>>24==32){f=18;break}if(E>>>0>=Me[_+3]>>>0){f=17;break}Se[p>>2]=E+1|0,Ae[d+E|0]=32,f=18;break}while(0);do if(17==f){Y(r,32),f=18;break}while(0);r:do if(18==f){var A=r+4|0,g=Me[A>>2],y=0==(0|g);do if(!y){var m=r+8|0,S=Me[m>>2];if(S>>>0>=Me[_+3]>>>0)break;Se[m>>2]=S+1|0,Ae[g+S|0]=40;var k=1,u=A,v=u>>2;break r}while(0);Y(r,40);var k=1,u=A,v=u>>2}while(0);var u,k,i=(r+20|0)>>2,M=Se[i];Se[i]=0,vr(r,e,0);r:do if(k){var C=Me[v],R=0==(0|C);do if(!R){var T=r+8|0,O=Me[T>>2];if(O>>>0>=Me[_+3]>>>0)break;Se[T>>2]=O+1|0,Ae[C+O|0]=41;break r}while(0);Y(r,41)}while(0);var N=Me[v],I=0==(0|N);do{if(!I){var P=r+8|0,D=Me[P>>2];if(D>>>0>=Me[_+3]>>>0){f=30;break}Se[P>>2]=D+1|0,Ae[N+D|0]=40,f=31;break}f=30}while(0);30==f&&Y(r,40);var L=Se[a+8>>2];0!=(0|L)&&H(r,L);var F=Me[v],X=0==(0|F);do{if(!X){var j=r+8|0,U=Me[j>>2];if(U>>>0>=Me[_+3]>>>0){f=36;break}Se[j>>2]=U+1|0,Ae[F+U|0]=41,f=37;break}f=36}while(0);36==f&&Y(r,41),vr(r,e,1),Se[i]=M}function ar(r,a,e){var i,v,t,f=r>>2,_=0==(0|e);do{if(!_){var s=e,v=s>>2;r:for(;;){var s;if(0==(0|s)){var n=1;t=14;break}if(0==(0|Se[v+2])){var o=36==(0|Se[Se[v+1]>>2]),l=1&o^1;if(o){var n=l;t=14;break}var b=r+4|0,k=Me[b>>2],u=0==(0|k);do{if(!u){var i=(r+8|0)>>2,c=Me[i];if((c+2|0)>>>0>Me[f+3]>>>0){t=9;break}var h=k+c|0;oe=10272,Ae[h]=255&oe,oe>>=8,Ae[h+1]=255&oe;var d=Se[i]+2|0;Se[i]=d,vr(r,e,0),t=10;break}t=9}while(0);9==t&&(Q(r,0|He.__str140,2),vr(r,e,0));var w=Me[b>>2],p=0==(0|w);do if(!p){var E=r+8|0,A=Me[E>>2];if(A>>>0>=Me[f+3]>>>0)break;Se[E>>2]=A+1|0,Ae[w+A|0]=41;var g=l;t=15;break r}while(0);Y(r,41);var g=l;t=15;break}var s=Se[v],v=s>>2}if(14==t){var n;vr(r,e,0);var g=n}var g;if(0!=(0|g)){t=17;break}var y=r+4|0;t=21;break}t=17}while(0);r:do if(17==t){var m=r+4|0,S=Me[m>>2],M=0==(0|S);do if(!M){var C=r+8|0,R=Me[C>>2];if(R>>>0>=Me[f+3]>>>0)break;Se[C>>2]=R+1|0,Ae[S+R|0]=32;var y=m;break r}while(0);Y(r,32);var y=m}while(0);var y,T=Me[y>>2],O=0==(0|T);do{if(!O){var N=r+8|0,I=Me[N>>2];if(I>>>0>=Me[f+3]>>>0){t=24;break}Se[N>>2]=I+1|0,Ae[T+I|0]=91,t=25;break}t=24}while(0);24==t&&Y(r,91);var P=Se[a+4>>2];0!=(0|P)&&H(r,P);var D=Me[y>>2],L=0==(0|D);do{if(!L){var F=r+8|0,X=Me[F>>2];if(X>>>0>=Me[f+3]>>>0){t=30;break}Se[F>>2]=X+1|0,Ae[D+X|0]=93,t=31;break}t=30}while(0);30==t&&Y(r,93)}function er(r,a){var e,i,v,t,f,_,s=Oe;Oe+=8;var n,o=s,_=(a+4|0)>>2,l=Se[_];if(4==(0|Se[l>>2])){var f=(r+20|0)>>2,b=Se[f];Se[f]=0;var t=(r+16|0)>>2,k=Se[t],u=0|o;Se[u>>2]=k,Se[t]=o;var c=Se[_];Se[o+4>>2]=c;var h=Se[c+4>>2];H(r,h);var d=Se[u>>2];Se[t]=d;var v=(r+4|0)>>2,w=Me[v],p=0==(0|w);do{if(!p){var i=(r+8|0)>>2,E=Me[i],A=0==(0|E);do if(!A){if(Ae[w+(E-1)|0]<<24>>24!=60)break;E>>>0>2]>>>0?(Se[i]=E+1|0,Ae[w+E|0]=32):Y(r,32)}while(0);var g=Me[v];if(0==(0|g)){n=12;break}var y=Me[i];if(y>>>0>=Me[r+12>>2]>>>0){n=12;break}Se[i]=y+1|0,Ae[g+y|0]=60,n=13;break}n=12}while(0);12==n&&Y(r,60);var m=Se[Se[_]+8>>2];H(r,m);var S=Me[v],M=0==(0|S);do{if(!M){var e=(r+8|0)>>2,C=Me[e],R=0==(0|C);do if(!R){if(Ae[S+(C-1)|0]<<24>>24!=62)break;C>>>0>2]>>>0?(Se[e]=C+1|0,Ae[S+C|0]=32):Y(r,32)}while(0);var T=Me[v];if(0==(0|T)){n=22;break}var O=Me[e];if(O>>>0>=Me[r+12>>2]>>>0){n=22;break}Se[e]=O+1|0,Ae[T+O|0]=62,n=23;break}n=22}while(0);22==n&&Y(r,62),Se[f]=b}else H(r,l);Oe=s}function ir(r,a){var e,i=40==(0|Se[a>>2]);r:do if(i){var v=Me[r+4>>2],t=0==(0|v);do{if(!t){var e=(r+8|0)>>2,f=Me[e],_=a+4|0,s=Me[_>>2],n=Me[s+8>>2];if((n+f|0)>>>0>Me[r+12>>2]>>>0){var o=s,l=n;break}var b=v+f|0,k=Se[s+4>>2];Pa(b,k,n,1);var u=Se[e]+Se[Se[_>>2]+8>>2]|0;Se[e]=u;break r}var c=Me[a+4>>2],o=c,l=Se[c+8>>2]}while(0);var l,o,h=Se[o+4>>2];Q(r,h,l)}else H(r,a);while(0)}function vr(r,a,e){var i,v,t,f,_,f=(r+4|0)>>2,s=0==(0|e),t=(r+16|0)>>2;r:do if(s)for(var n=a;;){var n;if(0==(0|n)){_=29;break r}if(0==(0|Se[f])){_=29;break r}var o=n+8|0,l=0==(0|Se[o>>2]);do if(l){var b=n+4|0;if((Se[Se[b>>2]>>2]-25|0)>>>0<3)break;Se[o>>2]=1;var k=Me[t],u=Se[n+12>>2];Se[t]=u;var c=Me[b>>2],h=Se[c>>2];if(35==(0|h)){var d=n,w=k,p=c;_=14;break r}if(36==(0|h)){var E=n,A=k,g=c;_=15;break r}if(2==(0|h)){var y=k,m=b;_=16;break r}$(r,c),Se[t]=k}while(0);var n=Se[n>>2]}else for(var S=a;;){var S;if(0==(0|S)){_=29;break r}if(0==(0|Se[f])){_=29;break r}var M=S+8|0;if(0==(0|Se[M>>2])){Se[M>>2]=1;var C=Me[t],R=Se[S+12>>2];Se[t]=R;var T=S+4|0,O=Me[T>>2],N=Se[O>>2];if(35==(0|N)){var d=S,w=C,p=O;_=14;break r}if(36==(0|N)){var E=S,A=C,g=O;_=15;break r}if(2==(0|N)){var y=C,m=T;_=16;break r}$(r,O),Se[t]=C}var S=Se[S>>2]}while(0);if(14==_){var p,w,d,I=Se[d>>2];rr(r,p,I),Se[t]=w}else if(15==_){var g,A,E,P=Se[E>>2];ar(r,g,P),Se[t]=A}else if(16==_){var m,y,v=(r+20|0)>>2,D=Se[v];Se[v]=0;var L=Se[Se[m>>2]+4>>2];H(r,L),Se[v]=D;var F=0==(4&Se[r>>2]|0),X=Me[f],j=0!=(0|X);r:do if(F){do if(j){var i=(r+8|0)>>2,U=Me[i];if((U+2|0)>>>0>Me[r+12>>2]>>>0)break;var x=X+U|0;oe=14906,Ae[x]=255&oe,oe>>=8,Ae[x+1]=255&oe;var z=Se[i]+2|0;Se[i]=z;break r}while(0);Q(r,0|He.__str120,2)}else{do if(j){var V=r+8|0,B=Me[V>>2];if(B>>>0>=Me[r+12>>2]>>>0)break;Se[V>>2]=B+1|0,Ae[X+B|0]=46;break r}while(0);Y(r,46)}while(0);var K=Me[Se[m>>2]+8>>2],G=(Se[K>>2]-25|0)>>>0<3;r:do if(G)for(var W=K;;){var W,Z=Me[W+4>>2];if((Se[Z>>2]-25|0)>>>0>=3){var q=Z;break r}var W=Z}else var q=K;while(0);var q;H(r,q),Se[t]=y}}function tr(r,a){var e,e=(r+4|0)>>2,i=Se[e],v=0==(0|i);r:do if(!v){for(var t=Se[r+8>>2]+a|0,f=r+12|0,_=Se[f>>2],s=i;;){var s,_;if(t>>>0<=_>>>0)break r;var n=_<<1,o=fa(s,n);if(0==(0|o))break;Se[e]=o,Se[f>>2]=n;var _=n,s=o}var l=Se[e];va(l),Se[e]=0,Se[r+24>>2]=1}while(0)}function fr(r,a,e){var i,v=J(r),i=v>>2;return 0!=(0|v)&&(Se[i]=21,Se[i+1]=a,Se[i+2]=e),v}function _r(r){var a,a=(r+12|0)>>2,e=Se[a],i=Ae[e]<<24>>24;if(88==(0|i)){var v=e+1|0;Se[a]=v;var t=nr(r),f=Se[a],_=f+1|0;Se[a]=_;var s=Ae[f]<<24>>24==69?t:0,n=s}else if(76==(0|i))var o=or(r),n=o;else var l=N(r),n=l;var n;return n}function sr(r){var a,a=(r+12|0)>>2,e=Se[a],i=Ae[e];if(i<<24>>24==110){var v=e+1|0;Se[a]=v;var t=1,f=Ae[v],_=v}else var t=0,f=i,_=e;var _,f,t,s=(f-48&255&255)<10;r:do if(s)for(var n=f,o=0,l=_;;){var l,o,n,b=(n<<24>>24)-48+10*o|0,k=l+1|0;Se[a]=k;var u=ge[k];if((u-48&255&255)>=10){var c=b;break r}var n=u,o=b,l=k}else var c=0;while(0);var c,h=0==(0|t)?c:0|-c;return h}function nr(r){var a,e,a=(r+12|0)>>2,i=Se[a],v=Ae[i];do{if(v<<24>>24==76){var t=or(r),f=t;e=21;break}if(v<<24>>24==84){var _=x(r),f=_;e=21;break}if(v<<24>>24==115){if(Ae[i+1|0]<<24>>24!=114){e=8;break}var s=i+2|0;Se[a]=s;var n=N(r),o=br(r);if(Ae[Se[a]]<<24>>24==73){var l=z(r),b=D(r,4,o,l),k=D(r,1,n,b),f=k;e=21;break}var u=D(r,1,n,o),f=u;e=21;break}e=8}while(0);r:do if(8==e){var c=kr(r);if(0==(0|c)){var f=0;break}var h=0|c,d=Se[h>>2],w=40==(0|d);do{if(w){var p=c+4|0,E=r+48|0,A=Se[Se[p>>2]+8>>2]-2+Se[E>>2]|0;Se[E>>2]=A;var g=Se[h>>2];if(40!=(0|g)){var y=g;e=13;break}var m=Se[p>>2],S=Se[m>>2],M=Da(S,0|He.__str90);if(0!=(0|M)){var C=m;e=15;break}var R=N(r),T=D(r,43,c,R),f=T;break r}var y=d;e=13}while(0);do if(13==e){var y;if(40==(0|y)){var C=Se[c+4>>2];e=15;break}if(41==(0|y)){var O=c+4|0;e=17;break}if(42==(0|y)){e=18;break}var f=0;break r}while(0);do if(15==e){var C,O=C+12|0;e=17;break}while(0);do if(17==e){var O,I=Se[O>>2];if(1==(0|I))break;if(2==(0|I)){var P=nr(r),L=nr(r),F=D(r,45,P,L),X=D(r,44,c,F);return X}if(3==(0|I)){var j=nr(r),U=nr(r),V=nr(r),B=D(r,48,U,V),H=D(r,47,j,B),K=D(r,46,c,H);return K}var f=0;break r}while(0);var Y=nr(r),G=D(r,43,c,Y);return G}while(0);var f;return f}function or(r){var a,a=(r+12|0)>>2,e=Se[a],i=e+1|0;Se[a]=i;var v=Ae[e]<<24>>24==76;r:do if(v){if(Ae[i]<<24>>24==95)var t=T(r,0),f=t;else{var _=N(r);if(0==(0|_)){var s=0;break}var n=33==(0|Se[_>>2]);do if(n){var o=Se[_+4>>2];if(0==(0|Se[o+16>>2]))break;var l=r+48|0,b=Se[l>>2]-Se[o+4>>2]|0;Se[l>>2]=b}while(0);var k=Se[a];if(Ae[k]<<24>>24==110){var u=k+1|0;Se[a]=u;var c=50,h=u}else var c=49,h=k;for(var h,c,d=h;;){var d,w=Ae[d];if(w<<24>>24==69)break;if(w<<24>>24==0){var s=0;break r}var p=d+1|0;Se[a]=p;var d=p}var E=lr(r,h,d-h|0),A=D(r,c,_,E),f=A}var f,g=Se[a],y=g+1|0;Se[a]=y;var m=Ae[g]<<24>>24==69?f:0,s=m}else var s=0;while(0);var s;return s}function lr(r,a,e){var i=J(r),v=m(i,a,e),t=0==(0|v)?0:i;return t}function br(r){var a=r+12|0,e=Me[a>>2],i=ge[e],v=(i-48&255&255)<10;do if(v)var t=L(r),f=t;else if((i-97&255&255)<26){var _=kr(r);if(0==(0|_)){var f=0;break}if(40!=(0|Se[_>>2])){var f=_;break}var s=r+48|0,n=Se[Se[_+4>>2]+8>>2]+Se[s>>2]+7|0;Se[s>>2]=n;var f=_}else if(i<<24>>24==67||i<<24>>24==68)var o=hr(r),f=o;else{if(i<<24>>24!=76){var f=0;break}Se[a>>2]=e+1|0;var l=L(r);if(0==(0|l)){var f=0;break}var b=dr(r),k=0==(0|b)?0:l,f=k}while(0);var f;return f}function kr(r){var a,e,a=(r+12|0)>>2,i=Se[a],v=i+1|0;Se[a]=v;var t=ge[i],f=i+2|0;Se[a]=f;var _=ge[v];do{if(t<<24>>24==118){if((_-48&255&255)>=10){var s=49,n=0;e=6;break}var o=(_<<24>>24)-48|0,l=L(r),b=ur(r,o,l),k=b;e=14;break}if(t<<24>>24==99){if(_<<24>>24!=118){var s=49,n=0;e=6;break}var u=N(r),c=D(r,42,u,0),k=c;e=14;break}var s=49,n=0;e=6}while(0);r:do if(6==e){for(;;){var n,s,h=(s-n)/2+n|0,d=(h<<4)+ri|0,w=Se[d>>2],p=Ae[w],E=t<<24>>24==p<<24>>24;if(E&&_<<24>>24==Ae[w+1|0]<<24>>24)break;var A=t<<24>>24>24;do if(A)var g=h,y=n;else{if(E&&_<<24>>24>24){var g=h,y=n;break}var g=s,y=h+1|0}while(0);var y,g;if((0|y)==(0|g)){var k=0;break r}var s=g,n=y}var m=cr(r,d),k=m}while(0);var k;return k}function ur(r,a,e){var i=J(r),v=S(i,a,e),t=0==(0|v)?0:i;return t}function cr(r,a){var e=J(r);return 0!=(0|e)&&(Se[e>>2]=40,Se[e+4>>2]=a),e}function hr(r){var a,e,i=Se[r+44>>2],e=i>>2,v=0==(0|i);do if(!v){var t=Se[e];if(0==(0|t)){var f=r+48|0,_=Se[f>>2]+Se[e+2]|0;Se[f>>2]=_}else{if(21!=(0|t))break;var s=r+48|0,n=Se[s>>2]+Se[e+2]|0;Se[s>>2]=n}}while(0);var a=(r+12|0)>>2,o=Se[a],l=o+1|0;Se[a]=l;var b=Ae[o]<<24>>24;do if(67==(0|b)){var k=o+2|0;Se[a]=k;var u=Ae[l]<<24>>24;if(49==(0|u))var c=1;else if(50==(0|u))var c=2;else{if(51!=(0|u)){var h=0;break}var c=3}var c,d=wr(r,c,i),h=d}else if(68==(0|b)){var w=o+2|0;Se[a]=w;var p=Ae[l]<<24>>24;if(48==(0|p))var E=1;else if(49==(0|p))var E=2;else{if(50!=(0|p)){var h=0;break}var E=3}var E,A=pr(r,E,i),h=A}else var h=0;while(0);var h;return h}function dr(r){var a=r+12|0,e=Se[a>>2];if(Ae[e]<<24>>24==95){var i=e+1|0;Se[a>>2]=i;var v=sr(r),t=v>>>31^1}else var t=1;var t;return t}function wr(r,a,e){var i=J(r),v=M(i,a,e),t=0==(0|v)?0:i;return t}function pr(r,a,e){var i=J(r),v=C(i,a,e),t=0==(0|v)?0:i;return t}function Er(r,a){var e=J(r);return 0!=(0|e)&&(Se[e>>2]=5,Se[e+4>>2]=a),e}function Ar(r){var a,a=(r+12|0)>>2,e=Se[a],i=Ae[e]<<24>>24;do if(78==(0|i))var v=gr(r),t=v;else if(90==(0|i))var f=yr(r),t=f;else if(76==(0|i))var _=br(r),t=_;else if(83==(0|i)){if(Ae[e+1|0]<<24>>24==116){var s=e+2|0;Se[a]=s;var n=lr(r,0|He.__str152,3),o=br(r),l=D(r,1,n,o),b=r+48|0,k=Se[b>>2]+3|0;Se[b>>2]=k;var u=0,c=l}else var h=V(r,0),u=1,c=h;var c,u;if(Ae[Se[a]]<<24>>24!=73){var t=c;break}if(0==(0|u)){var d=R(r,c);if(0==(0|d)){var t=0;break}}var w=z(r),p=D(r,4,c,w),t=p}else{var E=br(r);if(Ae[Se[a]]<<24>>24!=73){var t=E;break}var A=R(r,E);if(0==(0|A)){var t=0;break}var g=z(r),y=D(r,4,E,g),t=y}while(0);var t;return t}function gr(r){var a,e=Oe;Oe+=4;var i=e,a=(r+12|0)>>2,v=Se[a],t=v+1|0;Se[a]=t;var f=Ae[v]<<24>>24==78;do if(f){var _=I(r,i,1);if(0==(0|_)){var s=0;break}var n=mr(r);if(Se[_>>2]=n,0==(0|n)){var s=0;break}var o=Se[a],l=o+1|0;if(Se[a]=l,Ae[o]<<24>>24!=69){var s=0;break}var s=Se[i>>2]}else var s=0;while(0);var s;return Oe=e,s}function yr(r){var a,a=(r+12|0)>>2,e=Se[a],i=e+1|0;Se[a]=i;var v=Ae[e]<<24>>24==90;do if(v){var t=O(r,0),f=Se[a],_=f+1|0;if(Se[a]=_,Ae[f]<<24>>24!=69){var s=0;break}if(Ae[_]<<24>>24==115){var n=f+2|0;Se[a]=n;var o=dr(r);if(0==(0|o)){var s=0;break}var l=lr(r,0|He.__str168,14),b=D(r,2,t,l),s=b}else{var k=Ar(r),u=dr(r);if(0==(0|u)){var s=0;break}var c=D(r,2,t,k),s=c}}else var s=0;while(0);var s;return s}function mr(r){var a,e=r+12|0,i=0;r:for(;;){var i,v=ge[Se[e>>2]];if(v<<24>>24==0){var t=0;break}var f=(v-48&255&255)<10|(v-97&255&255)<26;do{if(!f){if(v<<24>>24==76||v<<24>>24==68||v<<24>>24==67){a=5;break}if(v<<24>>24==83){var _=V(r,1),s=_;a=10;break}if(v<<24>>24==73){if(0==(0|i)){var t=0;break r}var n=z(r),o=4,l=n;a=11;break}if(v<<24>>24==84){var b=x(r),s=b;a=10;break}if(v<<24>>24==69){var t=i;break r}var t=0;break r}a=5}while(0);do if(5==a){var k=br(r),s=k;a=10;break}while(0);do if(10==a){var s;if(0==(0|i)){var u=s;a=12;break}var o=1,l=s;a=11;break}while(0);if(11==a)var l,o,c=D(r,o,i,l),u=c;var u;if(v<<24>>24!=83)if(Ae[Se[e>>2]]<<24>>24!=69){var h=R(r,u);if(0==(0|h)){var t=0;break}var i=u}else var i=u;else var i=u}var t;return t}function Sr(r,a){var e,i,v=Oe;Oe+=4;var t=v,i=t>>2,e=(r+12|0)>>2,f=Se[e];if(Ae[f]<<24>>24==74){var _=f+1|0;Se[e]=_;var s=1}else var s=a;var s;Se[i]=0;var n=s,o=0,l=t;r:for(;;)for(var l,o,n,b=n,k=o;;){var k,b,u=Ae[Se[e]];if(u<<24>>24==0||u<<24>>24==69){var c=Se[i];if(0==(0|c)){var h=0;break r}var d=0==(0|Se[c+8>>2]);do if(d){var w=Se[c+4>>2];if(33!=(0|Se[w>>2])){var p=c;break}var E=Se[w+4>>2];if(9!=(0|Se[E+16>>2])){var p=c;break}var A=r+48|0,g=Se[A>>2]-Se[E+4>>2]|0;Se[A>>2]=g,Se[i]=0;var p=0}else var p=c;while(0);var p,y=D(r,35,k,p),h=y;break r}var m=N(r);if(0==(0|m)){var h=0;break r}if(0==(0|b)){var S=D(r,38,m,0);if(Se[l>>2]=S,0==(0|S)){var h=0;break r}var n=0,o=k,l=S+8|0;continue r}var b=0,k=m}var h;return Oe=v,h}function Mr(r){for(var a=r;;){var a;if(0==(0|a)){var e=0;break}var i=Se[a>>2];if(1!=(0|i)&&2!=(0|i)){if(6==(0|i)||7==(0|i)||42==(0|i)){var e=1;break}var e=0;break}var a=Se[a+8>>2]}var e;return e}function Cr(r){var a=r>>2;Se[a+3]=0,Se[a+2]=0,Se[a+1]=0,Se[a]=0,Se[a+4]=0}function Rr(r,a){var e,e=(r+12|0)>>2,i=Se[e],v=(Se[r+4>>2]-i|0)<(0|a);r:do if(v)var t=0;else{var f=i+a|0;Se[e]=f;var _=0==(4&Se[r+8>>2]|0);do if(!_){if(Ae[f]<<24>>24!=36)break;var s=a+(i+1)|0;Se[e]=s}while(0);var n=(0|a)>9;do if(n){var o=La(i,0|He.__str117,8);if(0!=(0|o))break;var l=Ae[i+8|0];if(l<<24>>24!=46&&l<<24>>24!=95&&l<<24>>24!=36)break;if(Ae[i+9|0]<<24>>24!=78)break;var b=r+48|0,k=22-a+Se[b>>2]|0;Se[b>>2]=k;var u=lr(r,0|He.__str169,21),t=u;break r}while(0);var c=lr(r,i,a),t=c}while(0);var t;return t}function Tr(r){var a,e,e=(r+48|0)>>2,i=Se[e],v=i+20|0;Se[e]=v;var a=(r+12|0)>>2,t=Se[a],f=t+1|0;Se[a]=f;var _=Ae[t];do if(_<<24>>24==84){var s=t+2|0;Se[a]=s;var n=Ae[f]<<24>>24;if(86==(0|n)){var o=i+15|0;Se[e]=o;var l=N(r),b=D(r,8,l,0),k=b}else if(84==(0|n)){var u=i+10|0;Se[e]=u;var c=N(r),h=D(r,9,c,0),k=h}else if(73==(0|n))var d=N(r),w=D(r,11,d,0),k=w;else if(83==(0|n))var p=N(r),E=D(r,12,p,0),k=E;else if(104==(0|n)){var A=Nr(r,104);if(0==(0|A)){var k=0;break}var g=O(r,0),y=D(r,14,g,0),k=y}else if(118==(0|n)){var m=Nr(r,118);if(0==(0|m)){var k=0;break}var S=O(r,0),M=D(r,15,S,0),k=M}else if(99==(0|n)){var C=Nr(r,0);if(0==(0|C)){var k=0;break}var R=Nr(r,0);if(0==(0|R)){var k=0;break}var T=O(r,0),I=D(r,16,T,0),k=I}else if(67==(0|n)){var P=N(r),L=sr(r);if((0|L)<0){var k=0;break}var F=Se[a],X=F+1|0;if(Se[a]=X,Ae[F]<<24>>24!=95){var k=0;break}var j=N(r),U=Se[e]+5|0;Se[e]=U;var x=D(r,10,j,P),k=x}else if(70==(0|n))var z=N(r),V=D(r,13,z,0),k=V;else{if(74!=(0|n)){var k=0;break}var B=N(r),H=D(r,17,B,0),k=H}}else if(_<<24>>24==71){var K=t+2|0;Se[a]=K;var Y=Ae[f]<<24>>24;if(86==(0|Y))var G=Ar(r),W=D(r,18,G,0),k=W;else if(82==(0|Y))var Z=Ar(r),Q=D(r,19,Z,0),k=Q;else{if(65!=(0|Y)){var k=0;break}var q=O(r,0),$=D(r,20,q,0),k=$}}else var k=0;while(0);var k;return k}function Or(r){for(var a,e=r,a=e>>2;;){var e;if(0==(0|e)){var i=0;break}var v=Se[a];if(4==(0|v)){var t=Se[a+1],f=Mr(t),i=0==(0|f)&1;break}if(25!=(0|v)&&26!=(0|v)&&27!=(0|v)){var i=0;break}var e=Se[a+1],a=e>>2}var i;return i}function Nr(r,a){var e;if(0==(0|a)){var i=r+12|0,v=Se[i>>2],t=v+1|0;Se[i>>2]=t;var f=Ae[v]<<24>>24}else var f=a;var f;do{if(104==(0|f)){var _=(sr(r),r+12|0);e=7;break}if(118==(0|f)){var s=(sr(r),r+12|0),n=Se[s>>2],o=n+1|0;if(Se[s>>2]=o,Ae[n]<<24>>24!=95){var l=0;e=8;break}var _=(sr(r),s);e=7;break}var l=0;e=8}while(0);if(7==e){var _,b=Se[_>>2],k=b+1|0;Se[_>>2]=k;var l=Ae[b]<<24>>24==95&1}var l;return l}function Ir(r){var a,e,i=r>>2,v=Oe;Oe+=56;var t,f=v,_=v+8,s=v+16,n=v+36,e=(0|r)>>2,o=Se[e],l=0==(8192&o|0);r:do{if(l){var a=(r+12|0)>>2,b=Se[a];if(Ae[b]<<24>>24!=63){var k=0;t=111;break}var u=b+1|0;Se[a]=u;var c=Ae[u];do if(c<<24>>24==63){if(Ae[b+2|0]<<24>>24==36){var h=b+3|0;if(Ae[h]<<24>>24!=63){var d=5;t=90;break}Se[a]=h;var w=6,p=h}else var w=0,p=u;var p,w,E=p+1|0;Se[a]=E;var A=Ae[E]<<24>>24;do if(48==(0|A)){var g=1;t=81}else{if(49==(0|A)){var g=2;t=81;break}if(50!=(0|A)){if(51==(0|A)){var y=0|He.__str2172,m=E;t=82;break}if(52==(0|A)){var y=0|He.__str3173,m=E;t=82;break}if(53==(0|A)){var y=0|He.__str4174,m=E;t=82;break}if(54==(0|A)){var y=0|He.__str5175,m=E;t=82;break}if(55==(0|A)){var y=0|He.__str6176,m=E;t=82;break}if(56==(0|A)){var y=0|He.__str7177,m=E;t=82;break}if(57==(0|A)){var y=0|He.__str8178,m=E;t=82;break}if(65==(0|A)){var y=0|He.__str9179,m=E;t=82;break}if(66==(0|A)){Se[a]=p+2|0;var S=0|He.__str10180,M=3;t=88;break}if(67==(0|A)){var y=0|He.__str11181,m=E;t=82;break}if(68==(0|A)){var y=0|He.__str12182,m=E;t=82;break}if(69==(0|A)){var y=0|He.__str13183,m=E;t=82;break}if(70==(0|A)){var y=0|He.__str14184,m=E;t=82;break}if(71==(0|A)){var y=0|He.__str15185,m=E;t=82;break}if(72==(0|A)){var y=0|He.__str16186,m=E;t=82;break}if(73==(0|A)){var y=0|He.__str17187,m=E;t=82;break}if(74==(0|A)){var y=0|He.__str18188,m=E;t=82;break}if(75==(0|A)){var y=0|He.__str19189,m=E;t=82;break}if(76==(0|A)){var y=0|He.__str20190,m=E;t=82;break}if(77==(0|A)){var y=0|He.__str21191,m=E;t=82;break}if(78==(0|A)){var y=0|He.__str22192,m=E;t=82;break}if(79==(0|A)){var y=0|He.__str23193,m=E;t=82;break}if(80==(0|A)){var y=0|He.__str24194,m=E;t=82;break}if(81==(0|A)){var y=0|He.__str25195,m=E;t=82;break}if(82==(0|A)){var y=0|He.__str26196,m=E;t=82;break}if(83==(0|A)){var y=0|He.__str27197,m=E;t=82;break}if(84==(0|A)){var y=0|He.__str28198,m=E;t=82;break}if(85==(0|A)){var y=0|He.__str29199,m=E;t=82;break}if(86==(0|A)){var y=0|He.__str30200,m=E;t=82;break}if(87==(0|A)){var y=0|He.__str31201,m=E;t=82;break}if(88==(0|A)){var y=0|He.__str32202,m=E;t=82;break}if(89==(0|A)){var y=0|He.__str33203,m=E;t=82;break}if(90==(0|A)){var y=0|He.__str34204,m=E;t=82;break}if(95==(0|A)){var C=p+2|0;Se[a]=C;var R=Ae[C]<<24>>24;if(48==(0|R)){var y=0|He.__str35205,m=C;t=82;break}if(49==(0|R)){var y=0|He.__str36206,m=C;t=82;break}if(50==(0|R)){var y=0|He.__str37207,m=C;t=82;break}if(51==(0|R)){var y=0|He.__str38208,m=C;t=82;break}if(52==(0|R)){var y=0|He.__str39209,m=C;t=82;break}if(53==(0|R)){var y=0|He.__str40210,m=C;t=82;break}if(54==(0|R)){var y=0|He.__str41211,m=C;t=82;break}if(55==(0|R)){var y=0|He.__str42212,m=C;t=82;break}if(56==(0|R)){var y=0|He.__str43213,m=C;t=82;break}if(57==(0|R)){var y=0|He.__str44214,m=C;t=82;break}if(65==(0|R)){var y=0|He.__str45215,m=C;t=82;break}if(66==(0|R)){var y=0|He.__str46216,m=C;t=82;break}if(67==(0|R)){Se[a]=p+3|0;var T=0|He.__str47217;t=84;break}if(68==(0|R)){var y=0|He.__str48218,m=C;t=82;break}if(69==(0|R)){var y=0|He.__str49219,m=C;t=82;break}if(70==(0|R)){var y=0|He.__str50220,m=C;t=82;break}if(71==(0|R)){var y=0|He.__str51221,m=C;t=82;break}if(72==(0|R)){var y=0|He.__str52222,m=C;t=82;break}if(73==(0|R)){var y=0|He.__str53223,m=C;t=82;break}if(74==(0|R)){var y=0|He.__str54224,m=C;t=82;break}if(75==(0|R)){var y=0|He.__str55225,m=C;t=82;break}if(76==(0|R)){var y=0|He.__str56226,m=C;t=82;break}if(77==(0|R)){var y=0|He.__str57227,m=C;t=82;break}if(78==(0|R)){var y=0|He.__str58228,m=C;t=82;break}if(79==(0|R)){var y=0|He.__str59229,m=C;t=82;break}if(82==(0|R)){var O=4|o;Se[e]=O;var N=p+3|0;Se[a]=N;var I=Ae[N]<<24>>24;if(48==(0|I)){Se[a]=p+4|0,Cr(s);var P=(Pr(r,_,s,0),Se[_>>2]),D=Se[_+4>>2],L=Dr(r,0|He.__str60230,(ne=Oe,Oe+=8,Se[ne>>2]=P,Se[ne+4>>2]=D,ne)),F=Se[a]-1|0;Se[a]=F;var y=L,m=F;t=82;break}if(49==(0|I)){Se[a]=p+4|0;var X=Lr(r),j=Lr(r),U=Lr(r),x=Lr(r),z=Se[a]-1|0;Se[a]=z;var V=Dr(r,0|He.__str61231,(ne=Oe,Oe+=16,Se[ne>>2]=X,Se[ne+4>>2]=j,Se[ne+8>>2]=U,Se[ne+12>>2]=x,ne)),y=V,m=Se[a];t=82;break}if(50==(0|I)){var y=0|He.__str62232,m=N;t=82;break}if(51==(0|I)){var y=0|He.__str63233,m=N;t=82;break}if(52==(0|I)){var y=0|He.__str64234,m=N;t=82;break}var y=0,m=N;t=82;break}if(83==(0|R)){var y=0|He.__str65235,m=C;t=82;break}if(84==(0|R)){var y=0|He.__str66236,m=C;t=82;break}if(85==(0|R)){var y=0|He.__str67237,m=C;t=82;break}if(86==(0|R)){var y=0|He.__str68238,m=C;t=82;break}if(88==(0|R)){var y=0|He.__str69239,m=C;t=82;break}if(89==(0|R)){var y=0|He.__str70240,m=C;t=82;break}var k=0;t=111;break r}var k=0;t=111;break r}var y=0|He.__str1171,m=E;t=82}while(0);do{if(81==t){var g;Se[a]=p+2|0;var B=g;t=83;break}if(82==t){var m,y;if(Se[a]=m+1|0,1==(0|w)||2==(0|w)){var B=w;t=83;break}if(4==(0|w)){var T=y;t=84;break}if(6!=(0|w)){var S=y,M=w;t=88;break}Cr(n);var H=Xr(r,n,0,60,62);if(0==(0|H))var K=y;else var Y=Dr(r,0|He.__str170,(ne=Oe,Oe+=8,Se[ne>>2]=y,Se[ne+4>>2]=H,ne)),K=Y;var K;Se[i+6]=0;var S=K,M=w;t=88;break}}while(0);if(83==t){var B,G=r+40|0,W=Fr(r,0|He._symbol_demangle_dashed_null,-1,G);if(0==(0|W)){var k=0;t=111;break r}var d=B;t=90;break}if(84==t){var T;Se[i+4]=T;var Z=1,Q=T;t=109;break r}if(88==t){var M,S,q=r+40|0,$=Fr(r,S,-1,q);if(0==(0|$)){var k=0;t=111;break r}var d=M;t=90;break}}else{if(c<<24>>24==36){var J=b+2|0;Se[a]=J;var rr=jr(r);Se[i+4]=rr;var ar=0!=(0|rr)&1;t=107;break}var d=0;t=90}while(0);if(90==t){var d,er=Me[a],ir=Ae[er]<<24>>24;if(64==(0|ir))Se[a]=er+1|0;else if(36==(0|ir))t=93;else{var vr=zr(r);if(0==(0|vr)){var k=-1;t=111;break}}if(5==(0|d)){var tr=r+20|0,fr=Se[tr>>2]+1|0;Se[tr>>2]=fr}else if(1==(0|d)||2==(0|d)){if(Me[i+11]>>>0<2){var k=-1;t=111;break}var _r=r+56|0,sr=Me[_r>>2],nr=Se[sr+4>>2];if(1==(0|d))Se[sr>>2]=nr;else{var or=Dr(r,0|He.__str71241,(ne=Oe,Oe+=4,Se[ne>>2]=nr,ne)),lr=Se[_r>>2];Se[lr>>2]=or}var br=4|Se[e];Se[e]=br}else if(3==(0|d)){var kr=Se[e]&-5;Se[e]=kr}var ur=ge[Se[a]];if((ur-48&255&255)<10)var cr=Vr(r),ar=cr;else if((ur-65&255&255)<26)var hr=Br(r,3==(0|d)&1),ar=hr;else{if(ur<<24>>24!=36){var k=-1;t=111;break}var dr=Hr(r),ar=dr}}var ar;if(0==(0|ar)){var k=-1;t=111;break}var Z=ar,Q=Se[i+4];t=109;break}var wr=Pr(r,f,0,0);if(0==(0|wr)){var k=-1;t=111;break}var pr=Se[f>>2],Er=Se[f+4>>2],Ar=Dr(r,0|He.__str170,(ne=Oe,Oe+=8,Se[ne>>2]=pr,Se[ne+4>>2]=Er,ne));Se[i+4]=Ar;var Z=1,Q=Ar;t=109;break}while(0);do if(109==t){var Q,Z;if(0!=(0|Q)){var k=Z;break}Xa(0|He.__str72242,1499,0|He.___func___symbol_demangle,0|He.__str73243);var k=Z}while(0);var k;return Oe=v,k}function Pr(r,a,e,i){var v,t,f,_=Oe;Oe+=24;var s=_,n=_+4,o=_+8,l=_+16,b=_+20;0==(0|a)&&Xa(0|He.__str72242,829,0|He.___func___demangle_datatype,0|He.__str121291);var f=(a+4|0)>>2;Se[f]=0;var t=(0|a)>>2;Se[t]=0;var v=(r+12|0)>>2,k=Me[v],u=k+1|0;Se[v]=u;var c=Ae[k],h=c<<24>>24;do if(95==(0|h)){Se[v]=k+2|0;var d=Ae[u],w=Zr(d);Se[t]=w}else if(67==(0|h)||68==(0|h)||69==(0|h)||70==(0|h)||71==(0|h)||72==(0|h)||73==(0|h)||74==(0|h)||75==(0|h)||77==(0|h)||78==(0|h)||79==(0|h)||88==(0|h)||90==(0|h)){var p=Qr(c);Se[t]=p}else if(84==(0|h)||85==(0|h)||86==(0|h)||89==(0|h)){var E=qr(r);if(0==(0|E))break;var A=0==(32768&Se[r>>2]|0);do if(A)if(84==(0|h))var g=0|He.__str122292;else if(85==(0|h))var g=0|He.__str123293;else if(86==(0|h))var g=0|He.__str124294;else{if(89!=(0|h)){var g=0;break}var g=0|He.__str125295}else var g=0;while(0);var g,y=Dr(r,0|He.__str170,(ne=Oe,Oe+=8,Se[ne>>2]=g,Se[ne+4>>2]=E,ne));Se[t]=y}else if(63==(0|h))if(0==(0|i))$r(a,r,e,63,0);else{var m=Lr(r);if(0==(0|m))break;var S=Dr(r,0|He.__str126296,(ne=Oe,Oe+=4,Se[ne>>2]=m,ne));Se[t]=S}else if(65==(0|h)||66==(0|h))$r(a,r,e,c,i);else if(81==(0|h)||82==(0|h)||83==(0|h)){var M=0==(0|i)?80:c;$r(a,r,e,M,i)}else if(80==(0|h))if(((Ae[u]<<24>>24)-48|0)>>>0<10){var C=k+2|0;if(Se[v]=C,Ae[u]<<24>>24!=54)break;var R=r+44|0,T=Se[R>>2];Se[v]=k+3|0;var O=Ae[C],N=Se[r>>2]&-17,I=Ur(O,s,n,N);if(0==(0|I))break;var P=Pr(r,o,e,0);if(0==(0|P))break;var D=Xr(r,e,1,40,41);if(0==(0|D))break;Se[R>>2]=T;var L=Se[o>>2],F=Se[o+4>>2],X=Se[s>>2],j=Dr(r,0|He.__str127297,(ne=Oe,Oe+=12,Se[ne>>2]=L,Se[ne+4>>2]=F,Se[ne+8>>2]=X,ne));Se[t]=j;var U=Dr(r,0|He.__str128298,(ne=Oe,Oe+=4,Se[ne>>2]=D,ne));Se[f]=U}else $r(a,r,e,80,i);else if(87==(0|h)){if(Ae[u]<<24>>24!=52)break;Se[v]=k+2|0;var x=qr(r);if(0==(0|x))break;if(0==(32768&Se[r>>2]|0)){var z=Dr(r,0|He.__str129299,(ne=Oe,Oe+=4,Se[ne>>2]=x,ne));Se[t]=z}else Se[t]=x}else if(48==(0|h)||49==(0|h)||50==(0|h)||51==(0|h)||52==(0|h)||53==(0|h)||54==(0|h)||55==(0|h)||56==(0|h)||57==(0|h)){var V=h<<1,B=V-96|0,H=Yr(e,B);Se[t]=H;var K=V-95|0,Y=Yr(e,K);Se[f]=Y}else if(36==(0|h)){var G=k+2|0;Se[v]=G;var W=Ae[u]<<24>>24;if(48==(0|W)){var Z=Lr(r);Se[t]=Z}else if(68==(0|W)){var Q=Lr(r);if(0==(0|Q))break;var q=Dr(r,0|He.__str130300,(ne=Oe,Oe+=4,Se[ne>>2]=Q,ne));Se[t]=q}else if(70==(0|W)){var $=Lr(r);if(0==(0|$))break;var J=Lr(r);if(0==(0|J))break;var rr=Dr(r,0|He.__str131301,(ne=Oe,Oe+=8,Se[ne>>2]=$,Se[ne+4>>2]=J,ne));Se[t]=rr}else if(71==(0|W)){var ar=Lr(r);if(0==(0|ar))break;var er=Lr(r);if(0==(0|er))break;var ir=Lr(r);if(0==(0|ir))break;var vr=Dr(r,0|He.__str132302,(ne=Oe,Oe+=12,Se[ne>>2]=ar,Se[ne+4>>2]=er,Se[ne+8>>2]=ir,ne));Se[t]=vr}else if(81==(0|W)){var tr=Lr(r);if(0==(0|tr))break;var fr=Dr(r,0|He.__str133303,(ne=Oe,Oe+=4,Se[ne>>2]=tr,ne));Se[t]=fr}else{if(36!=(0|W))break;if(Ae[G]<<24>>24!=67)break;Se[v]=k+3|0;var _r=xr(r,l,b);if(0==(0|_r))break;var sr=Pr(r,a,e,i);if(0==(0|sr))break;var nr=Se[t],or=Se[l>>2],lr=Dr(r,0|He.__str83253,(ne=Oe,Oe+=8,Se[ne>>2]=nr,Se[ne+4>>2]=or,ne));Se[t]=lr}}while(0);var br=0!=(0|Se[t])&1;return Oe=_,br}function Dr(r,a){var e,i=Oe;Oe+=4;var v=i,e=v>>2,t=v;Se[t>>2]=arguments[Dr.length];var f=1,_=0;r:for(;;){var _,f,s=Ae[a+_|0];do{if(s<<24>>24==0)break r;if(s<<24>>24==37){var n=_+1|0,o=Ae[a+n|0]<<24>>24;if(115==(0|o)){var l=Se[e],b=l,k=l+4|0;Se[e]=k;var u=Se[b>>2];if(0==(0|u)){var c=f,h=n;break}var d=Ca(u),c=d+f|0,h=n;break}if(99==(0|o)){var w=Se[e]+4|0;Se[e]=w;var c=f+1|0,h=n;break}if(37==(0|o))var p=n;else var p=_;var p,c=f+1|0,h=p}else var c=f+1|0,h=_}while(0);var h,c,f=c,_=h+1|0}var E=Wr(r,f);if(0==(0|E))var A=0;else{Se[t>>2]=arguments[Dr.length];var g=E,y=0;r:for(;;){var y,g,m=Ae[a+y|0];do{if(m<<24>>24==0)break r;if(m<<24>>24==37){var S=y+1|0,M=Ae[a+S|0]<<24>>24;if(115==(0|M)){var C=Se[e],R=C,T=C+4|0;Se[e]=T;var O=Se[R>>2];if(0==(0|O)){var N=g,I=S;break}var P=Ca(O);Pa(g,O,P,1);var N=g+P|0,I=S;break}if(99==(0|M)){var D=Se[e],L=D,F=D+4|0;Se[e]=F,Ae[g]=255&Se[L>>2];var N=g+1|0,I=S;break}if(37==(0|M))var X=S;else var X=y;var X;Ae[g]=37;var N=g+1|0,I=X}else{Ae[g]=m;var N=g+1|0,I=y}}while(0);var I,N,g=N,y=I+1|0}Ae[g]=0;var A=E}var A;return Oe=i,A}function Lr(r){var a,a=(r+12|0)>>2,e=Se[a],i=Ae[e];if(i<<24>>24==63){var v=e+1|0;Se[a]=v;var t=1,f=v,_=Ae[v]}else var t=0,f=e,_=i;var _,f,t,s=(_-48&255&255)<9;do if(s){var n=Wr(r,3),o=0!=(0|t);o&&(Ae[n]=45);var l=Ae[Se[a]]+1&255;Ae[n+t|0]=l;var b=o?2:1;\nAe[n+b|0]=0;var k=Se[a]+1|0;Se[a]=k;var u=n}else if(_<<24>>24==57){var c=Wr(r,4),h=0!=(0|t);h&&(Ae[c]=45),Ae[c+t|0]=49;var d=h?2:1;Ae[c+d|0]=48;var w=h?3:2;Ae[c+w|0]=0;var p=Se[a]+1|0;Se[a]=p;var u=c}else{if((_-65&255&255)>=16){var u=0;break}for(var E=0,A=f;;){var A,E,g=A+1|0;Se[a]=g;var y=(Ae[A]<<24>>24)+((E<<4)-65)|0,m=ge[g];if((m-65&255&255)>=16)break;var E=y,A=g}if(m<<24>>24!=64){var u=0;break}var S=Wr(r,17),M=0!=(0|t)?0|He.__str119289:0|ii,C=(za(S,0|He.__str118288,(ne=Oe,Oe+=8,Se[ne>>2]=M,Se[ne+4>>2]=y,ne)),Se[a]+1|0);Se[a]=C;var u=S}while(0);var u;return u}function Fr(r,a,e,i){var v,t,f,_;0==(0|a)&&Xa(0|He.__str72242,212,0|He.___func___str_array_push,0|He.__str115285),0==(0|i)&&Xa(0|He.__str72242,213,0|He.___func___str_array_push,0|He.__str116286);var f=(i+12|0)>>2,s=Me[f],n=0==(0|s);do{if(n){Se[f]=32;var o=Wr(r,128);if(0==(0|o)){var l=0;_=17;break}Se[i+16>>2]=o,_=11;break}if(Me[i+8>>2]>>>0>>0){_=11;break}var b=s<<3,k=Wr(r,b);if(0==(0|k)){var l=0;_=17;break}var u=k,c=i+16|0,h=Se[c>>2],d=Se[f]<<2;Pa(k,h,d,1);var w=Se[f]<<1;Se[f]=w,Se[c>>2]=u,_=11;break}while(0);do if(11==_){if((0|e)==-1)var p=Ca(a),E=p;else var E=e;var E,A=ja(a),g=E+1|0,y=Wr(r,g),t=(i+4|0)>>2,v=(i+16|0)>>2,m=(Se[t]<<2)+Se[v]|0;Se[m>>2]=y;var S=Se[Se[v]+(Se[t]<<2)>>2];if(0==(0|S)){Xa(0|He.__str72242,233,0|He.___func___str_array_push,0|He.__str117287);var M=Se[Se[v]+(Se[t]<<2)>>2]}else var M=S;var M;Pa(M,A,E,1),va(A),Ae[Se[Se[v]+(Se[t]<<2)>>2]+g|0]=0;var C=Se[t]+1|0;Se[t]=C;var R=i+8|0;if(C>>>0>2]>>>0){var l=1;break}Se[R>>2]=C;var l=1}while(0);var l;return l}function Xr(r,a,e,i,v){var t,f,_=Oe;Oe+=28;var s,n=_,o=_+8;Cr(o);var f=(r+12|0)>>2,l=0==(0|e),t=(0|n)>>2,b=n+4|0;r:do if(l)for(;;){var k=Se[f],u=Ae[k];if(u<<24>>24==0){s=12;break r}if(u<<24>>24==64){var c=k;s=7;break r}var h=Pr(r,n,a,1);if(0==(0|h)){var d=0;s=25;break r}var w=Se[t],p=Se[b>>2],E=Dr(r,0|He.__str170,(ne=Oe,Oe+=8,Se[ne>>2]=w,Se[ne+4>>2]=p,ne)),A=Fr(r,E,-1,o);if(0==(0|A)){var d=0;s=25;break r}var g=Se[t],y=Da(g,0|He.__str110280);if(0==(0|y)){s=12;break r}}else for(;;){var m=Se[f],S=Ae[m];if(S<<24>>24==0){s=12;break r}if(S<<24>>24==64){var c=m;s=7;break r}var M=Pr(r,n,a,1);if(0==(0|M)){var d=0;s=25;break r}var C=Se[t],R=Da(C,0|He.__str84254);if(0==(0|R)){s=13;break r}var T=Se[b>>2],O=Dr(r,0|He.__str170,(ne=Oe,Oe+=8,Se[ne>>2]=C,Se[ne+4>>2]=T,ne)),N=Fr(r,O,-1,o);if(0==(0|N)){var d=0;s=25;break r}var I=Se[t],P=Da(I,0|He.__str110280);if(0==(0|P)){s=12;break r}}while(0);do if(7==s){var c;Se[f]=c+1|0,s=12;break}while(0);do if(12==s){if(l){s=14;break}s=13;break}while(0);do if(13==s){var D=Se[f],L=D+1|0;if(Se[f]=L,Ae[D]<<24>>24==90){s=14;break}var d=0;s=25;break}while(0);r:do if(14==s){var F=o+4|0,X=Me[F>>2];do{if(0!=(0|X)){if(1==(0|X)){var j=o+16|0,U=Se[Se[j>>2]>>2],x=Da(U,0|He.__str84254);if(0==(0|x)){s=17;break}var z=j;s=20;break}var V=o+16|0;if(X>>>0<=1){var z=V;s=20;break}for(var B=0,H=1;;){var H,B,K=Se[Se[V>>2]+(H<<2)>>2],Y=Dr(r,0|He.__str112282,(ne=Oe,Oe+=8,Se[ne>>2]=B,Se[ne+4>>2]=K,ne)),G=H+1|0;if(G>>>0>=Me[F>>2]>>>0)break;var B=Y,H=G}if(0==(0|Y)){var z=V;s=20;break}var W=Y,Z=Y;s=21;break}s=17}while(0);if(17==s){var Q=i<<24>>24,q=v<<24>>24,$=Dr(r,0|He.__str111281,(ne=Oe,Oe+=8,Se[ne>>2]=Q,Se[ne+4>>2]=q,ne)),d=$;break}if(20==s)var z,W=Se[Se[z>>2]>>2],Z=0;var Z,W,J=v<<24>>24,rr=v<<24>>24==62;do if(rr){var ar=Ca(W);if(Ae[W+(ar-1)|0]<<24>>24!=62)break;var er=i<<24>>24,ir=Se[Se[o+16>>2]>>2],vr=Dr(r,0|He.__str113283,(ne=Oe,Oe+=16,Se[ne>>2]=er,Se[ne+4>>2]=ir,Se[ne+8>>2]=Z,Se[ne+12>>2]=J,ne)),d=vr;break r}while(0);var tr=i<<24>>24,fr=Se[Se[o+16>>2]>>2],_r=Dr(r,0|He.__str114284,(ne=Oe,Oe+=16,Se[ne>>2]=tr,Se[ne+4>>2]=fr,Se[ne+8>>2]=Z,Se[ne+12>>2]=J,ne)),d=_r}while(0);var d;return Oe=_,d}function jr(r){var a,e=Oe;Oe+=20;var i=e,v=r+24|0,t=Se[v>>2],a=(r+20|0)>>2,f=Se[a],_=r+44|0,s=Se[_>>2];Se[a]=t;var n=Kr(r);if(0==(0|n))var o=0;else{Cr(i);var l=Xr(r,i,0,60,62);if(0==(0|l))var b=n;else var k=Dr(r,0|He.__str170,(ne=Oe,Oe+=8,Se[ne>>2]=n,Se[ne+4>>2]=l,ne)),b=k;var b;Se[v>>2]=t,Se[a]=f,Se[_>>2]=s;var o=b}var o;return Oe=e,o}function Ur(r,a,e,i){var v,t=a>>2;Se[e>>2]=0,Se[t]=0;var f=0==(18&i|0);do{if(f){var _=r<<24>>24,s=1==((_-65)%2|0);if(0==(1&i|0)){if(s?Se[e>>2]=0|He.__str95265:v=14,65==(0|_)||66==(0|_)){Se[t]=0|He.__str96266,v=21;break}if(67==(0|_)||68==(0|_)){Se[t]=0|He.__str97267,v=21;break}if(69==(0|_)||70==(0|_)){Se[t]=0|He.__str98268,v=21;break}if(71==(0|_)||72==(0|_)){Se[t]=0|He.__str99269,v=21;break}if(73==(0|_)||74==(0|_)){Se[t]=0|He.__str100270,v=21;break}if(75==(0|_)||76==(0|_)){v=21;break}if(77==(0|_)){Se[t]=0|He.__str101271,v=21;break}var n=0;v=22;break}if(s?Se[e>>2]=0|He.__str88258:v=5,65==(0|_)||66==(0|_)){Se[t]=0|He.__str89259,v=21;break}if(67==(0|_)||68==(0|_)){Se[t]=0|He.__str90260,v=21;break}if(69==(0|_)||70==(0|_)){Se[t]=0|He.__str91261,v=21;break}if(71==(0|_)||72==(0|_)){Se[t]=0|He.__str92262,v=21;break}if(73==(0|_)||74==(0|_)){Se[t]=0|He.__str93263,v=21;break}if(75==(0|_)||76==(0|_)){v=21;break}if(77==(0|_)){Se[t]=0|He.__str94264,v=21;break}var n=0;v=22;break}v=21}while(0);if(21==v)var n=1;var n;return n}function xr(r,a,e){var i;Se[e>>2]=0;var i=(r+12|0)>>2,v=Se[i];if(Ae[v]<<24>>24==69){Se[e>>2]=0|He.__str102272;var t=Se[i]+1|0;Se[i]=t;var f=t}else var f=v;var f;Se[i]=f+1|0;var _=Ae[f]<<24>>24;if(65==(0|_)){Se[a>>2]=0;var s=1}else if(66==(0|_)){Se[a>>2]=0|He.__str103273;var s=1}else if(67==(0|_)){Se[a>>2]=0|He.__str104274;var s=1}else if(68==(0|_)){Se[a>>2]=0|He.__str105275;var s=1}else var s=0;var s;return s}function zr(r){var a,e,a=(r+12|0)>>2,i=r+40|0,v=r+20|0,t=0|i,f=r+44|0,_=r+48|0,s=r+52|0,n=r+56|0,o=r+20|0,l=r+24|0,b=r+16|0,k=0;r:for(;;){var k,u=Se[a],c=Ae[u];if(c<<24>>24==64){var h=u+1|0;Se[a]=h;var d=1;break}var w=c<<24>>24;do{if(0==(0|w)){var d=0;break r}if(48==(0|w)||49==(0|w)||50==(0|w)||51==(0|w)||52==(0|w)||53==(0|w)||54==(0|w)||55==(0|w)||56==(0|w)||57==(0|w)){var p=u+1|0;Se[a]=p;var E=(Ae[u]<<24>>24)-48|0,A=Yr(v,E),g=A;e=14;break}if(63==(0|w)){var y=u+1|0;Se[a]=y;var m=Ae[y]<<24>>24;if(36==(0|m)){var S=u+2|0;Se[a]=S;var M=jr(r);if(0==(0|M)){var d=0;break r}var C=Fr(r,M,-1,v);if(0==(0|C)){var d=0;break r}var R=M;e=15;break}if(63==(0|m)){var T=Se[t>>2],O=Se[f>>2],N=Se[_>>2],I=Se[s>>2],P=Se[n>>2],D=Se[o>>2],L=Se[l>>2];Cr(i);var F=Ir(r);if(0==(0|F))var X=k;else var j=Se[b>>2],U=Dr(r,0|He.__str109279,(ne=Oe,Oe+=4,Se[ne>>2]=j,ne)),X=U;var X;Se[o>>2]=D,Se[l>>2]=L,Se[t>>2]=T,Se[f>>2]=O,Se[_>>2]=N,Se[s>>2]=I,Se[n>>2]=P;var g=X;e=14;break}var x=Lr(r);if(0==(0|x)){var d=0;break r}var z=Dr(r,0|He.__str109279,(ne=Oe,Oe+=4,Se[ne>>2]=x,ne)),g=z;e=14;break}var V=Kr(r),g=V;e=14;break}while(0);if(14==e){var g;if(0==(0|g)){var d=0;break}var R=g}var R,B=Fr(r,R,-1,i);if(0==(0|B)){var d=0;break}var k=R}var d;return d}function Vr(r){var a,e,i,v=Oe;Oe+=36;var t,f=v,i=f>>2,_=v+4,s=v+8,e=s>>2,n=v+16;Se[i]=0;var o=0|r,l=Se[o>>2],b=0==(128&l|0),k=r+12|0;do if(b){var u=Ae[Se[k>>2]]<<24>>24;if(48==(0|u))var c=0|He.__str76246,h=k,a=h>>2;else if(49==(0|u))var c=0|He.__str77247,h=k,a=h>>2;else{if(50!=(0|u)){var c=0,h=k,a=h>>2;break}var c=0|He.__str78248,h=k,a=h>>2}}else var c=0,h=k,a=h>>2;while(0);var h,c,d=0==(512&l|0);do if(d){if((Ae[Se[a]]-48&255&255)>=3){var w=0;break}var w=0|He.__str79249}else var w=0;while(0);var w,p=Gr(r,0),E=Se[a],A=E+1|0;Se[a]=A;var g=Ae[E]<<24>>24;do{if(48==(0|g)||49==(0|g)||50==(0|g)||51==(0|g)||52==(0|g)||53==(0|g)){var y=r+44|0,m=Se[y>>2];Cr(n);var S=Pr(r,s,n,0);if(0==(0|S)){var M=0;t=28;break}var C=xr(r,f,_);if(0==(0|C)){var M=0;t=28;break}var R=Se[i],T=0==(0|R),O=Se[_>>2];do if(T)Se[i]=O;else{if(0==(0|O))break;var N=Dr(r,0|He.__str83253,(ne=Oe,Oe+=8,Se[ne>>2]=R,Se[ne+4>>2]=O,ne));Se[i]=N}while(0);Se[y>>2]=m,t=22;break}if(54==(0|g)||55==(0|g)){var I=s+4|0;Se[I>>2]=0,Se[e]=0;var P=xr(r,f,_);if(0==(0|P)){var M=0;t=28;break}if(Ae[Se[a]]<<24>>24==64){t=22;break}var D=qr(r);if(0==(0|D)){var M=0;t=28;break}var L=Dr(r,0|He.__str107277,(ne=Oe,Oe+=4,Se[ne>>2]=D,ne));Se[I>>2]=L,t=22;break}if(56==(0|g)||57==(0|g)){Se[e+1]=0,Se[e]=0,Se[i]=0,t=22;break}var M=0;t=28}while(0);if(22==t){var F=0==(4096&Se[o>>2]|0);do{if(F){var X=Se[e],j=Se[i];if(0==(0|j)){var U=X;t=26;break}var x=0!=(0|X)?0|He.__str87257:0,z=0|He.__str87257,V=j,B=x,H=X;t=27;break}Se[i]=0,Se[e+1]=0,Se[e]=0;var U=0;t=26;break}while(0);if(26==t)var U,K=0!=(0|U)?0|He.__str87257:0,z=K,V=0,B=0,H=U;var H,B,V,z,Y=Se[e+1],G=Dr(r,0|He.__str108278,(ne=Oe,Oe+=32,Se[ne>>2]=c,Se[ne+4>>2]=w,Se[ne+8>>2]=H,Se[ne+12>>2]=B,Se[ne+16>>2]=V,Se[ne+20>>2]=z,Se[ne+24>>2]=p,Se[ne+28>>2]=Y,ne));Se[r+16>>2]=G;var M=1}var M;return Oe=v,M}function Br(r,a){var e,i,v,t,f=Oe;Oe+=44;var _,s=f,t=s>>2,n=f+8,o=f+12,v=o>>2,l=f+16,b=f+20,k=f+40;Se[v]=0;var i=(r+12|0)>>2,u=Se[i],c=u+1|0;Se[i]=c;var h=ge[u],d=h<<24>>24,w=(h-65&255&255)>25;r:do if(w)var p=0;else{var e=(0|r)>>2,E=Me[e],A=0==(128&E|0),g=d-65|0;do if(A){var y=g/8|0;if(0==(0|y))var m=0|He.__str76246,S=g;else if(1==(0|y))var m=0|He.__str77247,S=g;else{if(2!=(0|y)){var m=0,S=g;break}var m=0|He.__str78248,S=g}}else var m=0,S=g;while(0);var S,m,M=0==(512&E|0)&h<<24>>24<89,C=(0|S)%8;do if(M)if(2==(0|C)||3==(0|C))var R=m,T=0|He.__str79249;else if(4==(0|C)||5==(0|C))var R=m,T=0|He.__str80250;else{if(6!=(0|C)&&7!=(0|C)){var R=m,T=0;break}var O=Dr(r,0|He.__str81251,(ne=Oe,Oe+=4,Se[ne>>2]=m,ne)),R=O,T=0|He.__str80250}else var R=m,T=0;while(0);var T,R,N=Gr(r,0),I=6==(0|C);do{if(!I){if(7==((d-56)%8|0)){_=14;break}var P=N;_=15;break}_=14}while(0);if(14==_)var D=Lr(r),L=Dr(r,0|He.__str82252,(ne=Oe,Oe+=8,Se[ne>>2]=N,Se[ne+4>>2]=D,ne)),P=L;var P,F=h<<24>>24>88;do if(F)var X=0;else{if((C-2|0)>>>0<2){var X=0;break}var j=xr(r,o,k);if(0==(0|j)){var p=0;break r}var U=Me[v],x=Se[k>>2];if(0==(0|U)&0==(0|x)){var X=0;break}var z=Dr(r,0|He.__str83253,(ne=Oe,Oe+=8,Se[ne>>2]=U,Se[ne+4>>2]=x,ne));Se[v]=z;var X=z}while(0);var X,V=Se[i],B=V+1|0;Se[i]=B;var H=Ae[V],K=Se[e],Y=Ur(H,n,l,K);if(0==(0|Y)){var p=0;break}Cr(b);var G=Se[i];if(Ae[G]<<24>>24==64){Se[t]=0|He.__str84254,Se[t+1]=0;var W=G+1|0;Se[i]=W}else{var Z=Pr(r,s,b,0);if(0==(0|Z)){var p=0;break}}if(0!=(4&Se[e]|0)&&(Se[t+1]=0,Se[t]=0),0==(0|a))var Q=P;else{var q=0|s,$=Se[q>>2],J=s+4|0,rr=Se[J>>2],ar=Dr(r,0|He.__str85255,(ne=Oe,Oe+=12,Se[ne>>2]=P,Se[ne+4>>2]=$,Se[ne+8>>2]=rr,ne));Se[J>>2]=0,Se[q>>2]=0;var Q=ar}var Q,er=r+44|0,ir=Se[er>>2],vr=Xr(r,b,1,40,41);if(0==(0|vr)){var p=0;break}if(0==(4096&Se[e]|0))var tr=vr,fr=X;else{Se[v]=0;var tr=0,fr=0}var fr,tr;Se[er>>2]=ir;var _r=Se[t],sr=Se[t+1];if(0==(0|_r))var nr=0;else var or=0!=(0|sr)?0:0|He.__str87257,nr=or;var nr,lr=Se[n>>2],br=0!=(0|lr)?0|He.__str87257:0,kr=Se[l>>2],ur=Dr(r,0|He.__str86256,(ne=Oe,Oe+=44,Se[ne>>2]=R,Se[ne+4>>2]=T,Se[ne+8>>2]=_r,Se[ne+12>>2]=nr,Se[ne+16>>2]=lr,Se[ne+20>>2]=br,Se[ne+24>>2]=kr,Se[ne+28>>2]=Q,Se[ne+32>>2]=tr,Se[ne+36>>2]=fr,Se[ne+40>>2]=sr,ne));Se[r+16>>2]=ur;var p=1}while(0);var p;return Oe=f,p}function Hr(r){var a,a=(r+12|0)>>2,e=Se[a];if(Ae[e]<<24>>24==36)var i=e;else{Xa(0|He.__str72242,1252,0|He.___func___handle_template,0|He.__str74244);var i=Se[a]}var i;Se[a]=i+1|0;var v=Kr(r),t=0==(0|v);do if(t)var f=0;else{var _=Xr(r,0,0,60,62);if(0==(0|_)){var f=0;break}var s=Dr(r,0|He.__str170,(ne=Oe,Oe+=8,Se[ne>>2]=v,Se[ne+4>>2]=_,ne));Se[r+16>>2]=s;var f=1}while(0);var f;return f}function Kr(r){for(var a,a=(r+12|0)>>2,e=Me[a],i=e,v=Ae[e];;){var v,i;if(!((v-65&255&255)<26|(v-97&255&255)<26|(v-48&255&255)<10)&&v<<24>>24!=95&&v<<24>>24!=36){var t=0;break}var f=i+1|0;Se[a]=f;var _=ge[f];if(_<<24>>24==64){Se[a]=i+2|0;var s=f-e|0,n=r+20|0,o=Fr(r,e,s,n);if(0==(0|o)){var t=0;break}var l=Se[r+24>>2]-1-Se[n>>2]|0,b=Yr(n,l),t=b;break}var i=f,v=_}var t;return t}function Yr(r,a){0==(0|r)&&Xa(0|He.__str72242,263,0|He.___func___str_array_get_ref,0|He.__str75245);var e=Se[r>>2]+a|0;if(e>>>0>2]>>>0)var i=Se[Se[r+16>>2]+(e<<2)>>2];else var i=0;var i;return i}function Gr(r,a){var e,e=(r+44|0)>>2,i=Me[e];if(i>>>0>a>>>0){for(var v=r+56|0,t=a,f=0,_=Se[v>>2],s=i;;){var s,_,f,t,n=Me[_+(t<<2)>>2];if(0==(0|n)){Xa(0|He.__str72242,680,0|He.___func___get_class_string,0|He.__str106276);var o=Se[v>>2],l=o,b=Se[o+(t<<2)>>2],k=Se[e]}else var l=_,b=n,k=s;var k,b,l,u=Ca(b),c=u+(f+2)|0,h=t+1|0;if(h>>>0>=k>>>0)break;var t=h,f=c,_=l,s=k}var d=c-1|0}else var d=-1;var d,w=Wr(r,d);if(0==(0|w))var p=0;else{var E=Se[e]-1|0,A=(0|E)<(0|a);r:do if(A)var g=0;else for(var y=r+56|0,m=0,S=E;;){var S,m,M=Se[Se[y>>2]+(S<<2)>>2],C=Ca(M),R=w+m|0;Pa(R,M,C,1);var T=C+m|0;if((0|S)>(0|a)){var O=T+1|0;Ae[w+T|0]=58;var N=T+2|0;Ae[w+O|0]=58;var I=N}else var I=T;var I,P=S-1|0;if((0|P)<(0|a)){var g=I;break r}var m=I,S=P}while(0);var g;Ae[w+g|0]=0;var p=w}var p;return p}function Wr(r,a){var e,i=a>>>0>1020;do if(i){var v=Se[r+4>>2],t=a+4|0,f=pe[v](t);if(0==(0|f)){var _=0;break}var s=r+60|0,n=Se[s>>2],o=f;Se[o>>2]=n,Se[s>>2]=f,Se[r+64>>2]=0;var _=f+4|0}else{var e=(r+64|0)>>2,l=Me[e];if(l>>>0>>0){var b=Se[r+4>>2],k=pe[b](1024);if(0==(0|k)){var _=0;break}var u=r+60|0,c=Se[u>>2],h=k;Se[h>>2]=c,Se[u>>2]=k,Se[e]=1020;var d=1020,w=k}else var d=l,w=Se[r+60>>2];var w,d;Se[e]=d-a|0;var _=w+(1024-d)|0}while(0);var _;return _}function Zr(r){var a=r<<24>>24;if(68==(0|a))var e=0|He.__str157327;else if(69==(0|a))var e=0|He.__str158328;else if(70==(0|a))var e=0|He.__str159329;else if(71==(0|a))var e=0|He.__str160330;else if(72==(0|a))var e=0|He.__str161331;else if(73==(0|a))var e=0|He.__str162332;else if(74==(0|a))var e=0|He.__str163333;else if(75==(0|a))var e=0|He.__str164334;else if(76==(0|a))var e=0|He.__str165335;else if(77==(0|a))var e=0|He.__str166336;else if(78==(0|a))var e=0|He.__str167337;else if(87==(0|a))var e=0|He.__str168338;else var e=0;var e;return e}function Qr(r){var a=r<<24>>24;if(67==(0|a))var e=0|He.__str145315;else if(68==(0|a))var e=0|He.__str146316;else if(69==(0|a))var e=0|He.__str147317;else if(70==(0|a))var e=0|He.__str148318;else if(71==(0|a))var e=0|He.__str149319;else if(72==(0|a))var e=0|He.__str150320;else if(73==(0|a))var e=0|He.__str151321;else if(74==(0|a))var e=0|He.__str152322;else if(75==(0|a))var e=0|He.__str153323;else if(77==(0|a))var e=0|He.__str154324;else if(78==(0|a))var e=0|He.__str155325;else if(79==(0|a))var e=0|He.__str156326;else if(88==(0|a))var e=0|He.__str84254;else if(90==(0|a))var e=0|He.__str110280;else var e=0;var e;return e}function qr(r){var a=r+44|0,e=Se[a>>2],i=zr(r);if(0==(0|i))var v=0;else var t=Gr(r,e),v=t;var v;return Se[a>>2]=e,v}function $r(r,a,e,i,v){var t,f,_,s=Oe;Oe+=16;var n,o=s,_=o>>2,l=s+4,b=s+8,f=b>>2;Se[l>>2]=0|ii;var t=(a+12|0)>>2,k=Se[t];if(Ae[k]<<24>>24==69){Se[l>>2]=0|He.__str134304;var u=k+1|0;Se[t]=u;var c=0|He.__str134304}else var c=0|ii;var c,h=i<<24>>24;do{if(65==(0|h)){var d=Dr(a,0|He.__str135305,(ne=Oe,Oe+=4,Se[ne>>2]=c,ne)),w=d;n=10;break}if(66==(0|h)){var p=Dr(a,0|He.__str136306,(ne=Oe,Oe+=4,Se[ne>>2]=c,ne)),w=p;n=10;break}if(80==(0|h)){var E=Dr(a,0|He.__str137307,(ne=Oe,Oe+=4,Se[ne>>2]=c,ne)),w=E;n=10;break}if(81==(0|h)){var A=Dr(a,0|He.__str138308,(ne=Oe,Oe+=4,Se[ne>>2]=c,ne)),w=A;n=10;break}if(82==(0|h)){var g=Dr(a,0|He.__str139309,(ne=Oe,Oe+=4,Se[ne>>2]=c,ne)),w=g;n=10;break}if(83==(0|h)){var y=Dr(a,0|He.__str140310,(ne=Oe,Oe+=4,Se[ne>>2]=c,ne)),w=y;n=10;break}if(63==(0|h)){var w=0|ii;n=10}else n=31}while(0);r:do if(10==n){var w,m=xr(a,o,l);if(0==(0|m))break;var S=a+44|0,M=Se[S>>2],C=Se[t],R=Ae[C]<<24>>24==89;a:do if(R){var T=C+1|0;Se[t]=T;var O=Lr(a);if(0==(0|O))break r;var N=Ha(O),I=Ae[w]<<24>>24==32,P=Se[_],D=0==(0|P);do{if(I){if(!D){n=17;break}var L=w+1|0;n=18;break}if(D){var L=w;n=18;break}n=17;break}while(0);if(17==n){var F=Dr(a,0|He.__str141311,(ne=Oe,Oe+=8,Se[ne>>2]=P,Se[ne+4>>2]=w,ne));Se[_]=0;var X=F}else if(18==n)var L,j=Dr(a,0|He.__str142312,(ne=Oe,Oe+=4,Se[ne>>2]=L,ne)),X=j;var X;if(0==(0|N)){var U=X;break}for(var x=X,z=N;;){var z,x,V=z-1|0,B=Lr(a),H=Dr(a,0|He.__str143313,(ne=Oe,Oe+=8,Se[ne>>2]=x,Se[ne+4>>2]=B,ne));if(0==(0|V)){var U=H;break a}var x=H,z=V}}else var U=w;while(0);var U,K=Pr(a,b,e,0);if(0==(0|K))break;var Y=Se[_];if(0==(0|Y)){var G=0==(0|v);do if(G){if(Ae[U]<<24>>24==0){var W=U;break}var Z=U+1|0;if(Ae[Z]<<24>>24!=42){var W=U;break}var Q=Se[f],q=Ca(Q);if(Ae[Q+(q-1)|0]<<24>>24!=42){var W=U;break}var W=Z}else var W=U;while(0);var W,$=Se[f],J=Dr(a,0|He.__str170,(ne=Oe,Oe+=8,Se[ne>>2]=$,Se[ne+4>>2]=W,ne));Se[r>>2]=J}else{var rr=Se[f],ar=Dr(a,0|He.__str144314,(ne=Oe,Oe+=12,Se[ne>>2]=rr,Se[ne+4>>2]=Y,Se[ne+8>>2]=U,ne));Se[r>>2]=ar}var er=Se[f+1];Se[r+4>>2]=er,Se[S>>2]=M}while(0);Oe=s}function Jr(r){var a,e=r>>>0<245;do{if(e){if(r>>>0<11)var i=16;else var i=r+11&-8;var i,v=i>>>3,t=Me[vi>>2],f=t>>>(v>>>0);if(0!=(3&f|0)){var _=(1&f^1)+v|0,s=_<<1,n=(s<<2)+vi+40|0,o=(s+2<<2)+vi+40|0,l=Me[o>>2],b=l+8|0,k=Me[b>>2];if((0|n)==(0|k))Se[vi>>2]=t&(1<<_^-1);else{if(k>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[o>>2]=k,Se[k+12>>2]=n}var u=_<<3;Se[l+4>>2]=3|u;var c=l+(4|u)|0,h=1|Se[c>>2];Se[c>>2]=h;var d=b;a=38;break}if(i>>>0<=Me[vi+8>>2]>>>0){var w=i;a=30;break}if(0!=(0|f)){var p=2<>>12&16,y=A>>>(g>>>0),m=y>>>5&8,S=y>>>(m>>>0),M=S>>>2&4,C=S>>>(M>>>0),R=C>>>1&2,T=C>>>(R>>>0),O=T>>>1&1,N=(m|g|M|R|O)+(T>>>(O>>>0))|0,I=N<<1,P=(I<<2)+vi+40|0,D=(I+2<<2)+vi+40|0,L=Me[D>>2],F=L+8|0,X=Me[F>>2];if((0|P)==(0|X))Se[vi>>2]=t&(1<>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[D>>2]=X,Se[X+12>>2]=P}var j=N<<3,U=j-i|0;Se[L+4>>2]=3|i;var x=L,z=x+i|0;Se[x+(4|i)>>2]=1|U,Se[x+j>>2]=U;var V=Me[vi+8>>2];if(0!=(0|V)){var B=Se[vi+20>>2],H=V>>>2&1073741822,K=(H<<2)+vi+40|0,Y=Me[vi>>2],G=1<<(V>>>3),W=0==(Y&G|0);do{if(!W){var Z=(H+2<<2)+vi+40|0,Q=Me[Z>>2];if(Q>>>0>=Me[vi+16>>2]>>>0){var q=Q,$=Z;break}throw Ka(),\"Reached an unreachable!\"}Se[vi>>2]=Y|G;var q=K,$=(H+2<<2)+vi+40|0}while(0);var $,q;Se[$>>2]=B,Se[q+12>>2]=B;var J=B+8|0;Se[J>>2]=q;var rr=B+12|0;Se[rr>>2]=K}Se[vi+8>>2]=U,Se[vi+20>>2]=z;var d=F;a=38;break}if(0==(0|Se[vi+4>>2])){var w=i;a=30;break}var ar=ra(i);if(0==(0|ar)){var w=i;a=30;break}var d=ar;a=38;break}if(r>>>0>4294967231){var w=-1;a=30;break}var er=r+11&-8;if(0==(0|Se[vi+4>>2])){var w=er;a=30;break}var ir=ea(er);if(0==(0|ir)){var w=er;a=30;break}var d=ir;a=38;break}while(0);if(30==a){var w,vr=Me[vi+8>>2];if(w>>>0>vr>>>0){var tr=Me[vi+12>>2];if(w>>>0>>0){var fr=tr-w|0;Se[vi+12>>2]=fr;var _r=Me[vi+24>>2],sr=_r;Se[vi+24>>2]=sr+w|0,Se[w+(sr+4)>>2]=1|fr,Se[_r+4>>2]=3|w;var d=_r+8|0}else var nr=aa(w),d=nr}else{var or=vr-w|0,lr=Me[vi+20>>2];if(or>>>0>15){var br=lr;Se[vi+20>>2]=br+w|0,Se[vi+8>>2]=or,Se[w+(br+4)>>2]=1|or,Se[br+vr>>2]=or,Se[lr+4>>2]=3|w}else{Se[vi+8>>2]=0,Se[vi+20>>2]=0,Se[lr+4>>2]=3|vr;var kr=vr+(lr+4)|0,ur=1|Se[kr>>2];Se[kr>>2]=ur}var d=lr+8|0}}var d;return d}function ra(r){var a,e,i,v=Se[vi+4>>2],t=(v&-v)-1|0,f=t>>>12&16,_=t>>>(f>>>0),s=_>>>5&8,n=_>>>(s>>>0),o=n>>>2&4,l=n>>>(o>>>0),b=l>>>1&2,k=l>>>(b>>>0),u=k>>>1&1,c=Me[vi+((s|f|o|b|u)+(k>>>(u>>>0))<<2)+304>>2],h=c,e=h>>2,d=(Se[c+4>>2]&-8)-r|0;r:for(;;)for(var d,h,w=h;;){var w,p=Se[w+16>>2];if(0==(0|p)){var E=Se[w+20>>2];if(0==(0|E))break r;var A=E}else var A=p;var A,g=(Se[A+4>>2]&-8)-r|0;if(g>>>0>>0){var h=A,e=h>>2,d=g;continue r}var w=A}var y=h,m=Me[vi+16>>2],S=y>>>0>>0;do if(!S){var M=y+r|0,C=M;if(y>>>0>=M>>>0)break;var R=Me[e+6],T=Me[e+3],O=(0|T)==(0|h);do if(O){var N=h+20|0,I=Se[N>>2];if(0==(0|I)){var P=h+16|0,D=Se[P>>2];if(0==(0|D)){var L=0,a=L>>2;break}var F=P,X=D}else{var F=N,X=I;i=14}for(;;){var X,F,j=X+20|0,U=Se[j>>2];if(0==(0|U)){var x=X+16|0,z=Me[x>>2];if(0==(0|z))break;var F=x,X=z}else var F=j,X=U}if(F>>>0>>0)throw Ka(),\"Reached an unreachable!\";Se[F>>2]=0;var L=X,a=L>>2}else{var V=Me[e+2];if(V>>>0>>0)throw Ka(),\"Reached an unreachable!\";Se[V+12>>2]=T,Se[T+8>>2]=V;var L=T,a=L>>2}while(0);var L,B=0==(0|R);r:do if(!B){var H=h+28|0,K=(Se[H>>2]<<2)+vi+304|0,Y=(0|h)==(0|Se[K>>2]);do{if(Y){if(Se[K>>2]=L,0!=(0|L))break;var G=Se[vi+4>>2]&(1<>2]^-1);Se[vi+4>>2]=G;break r}if(R>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";var W=R+16|0;if((0|Se[W>>2])==(0|h)?Se[W>>2]=L:Se[R+20>>2]=L,0==(0|L))break r}while(0);if(L>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[a+6]=R;var Z=Me[e+4];if(0!=(0|Z)){if(Z>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[a+4]=Z,Se[Z+24>>2]=L}var Q=Me[e+5];if(0==(0|Q))break;if(Q>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[a+5]=Q,Se[Q+24>>2]=L}while(0);if(d>>>0<16){var q=d+r|0;Se[e+1]=3|q;var $=q+(y+4)|0,J=1|Se[$>>2];Se[$>>2]=J}else{Se[e+1]=3|r,Se[r+(y+4)>>2]=1|d,Se[y+d+r>>2]=d;var rr=Me[vi+8>>2];if(0!=(0|rr)){var ar=Me[vi+20>>2],er=rr>>>2&1073741822,ir=(er<<2)+vi+40|0,vr=Me[vi>>2],tr=1<<(rr>>>3),fr=0==(vr&tr|0);do{if(!fr){var _r=(er+2<<2)+vi+40|0,sr=Me[_r>>2];if(sr>>>0>=Me[vi+16>>2]>>>0){var nr=sr,or=_r;break}throw Ka(),\"Reached an unreachable!\"}Se[vi>>2]=vr|tr;var nr=ir,or=(er+2<<2)+vi+40|0}while(0);var or,nr;Se[or>>2]=ar,Se[nr+12>>2]=ar,Se[ar+8>>2]=nr,Se[ar+12>>2]=ir}Se[vi+8>>2]=d,Se[vi+20>>2]=C}return h+8|0}while(0);throw Ka(),\"Reached an unreachable!\"}function aa(r){var a,e;0==(0|Se[ti>>2])&&ba();var i=0==(4&Se[vi+440>>2]|0);do{if(i){var v=Se[vi+24>>2],t=0==(0|v);do{if(!t){var f=v,_=ua(f);if(0==(0|_)){e=6;break}var s=Se[ti+8>>2],n=r+47-Se[vi+12>>2]+s&-s;if(n>>>0>=2147483647){e=14;break}var o=re(n);if((0|o)==(Se[_>>2]+Se[_+4>>2]|0)){var l=o,b=n,k=o;e=13;break}var u=o,c=n;e=15;break}e=6}while(0);do if(6==e){var h=re(0);if((0|h)==-1){e=14;break}var d=Se[ti+8>>2],w=d+(r+47)&-d,p=h,E=Se[ti+4>>2],A=E-1|0;if(0==(A&p|0))var g=w;else var g=w-p+(A+p&-E)|0;var g;if(g>>>0>=2147483647){e=14;break}var y=re(g);if((0|y)==(0|h)){var l=h,b=g,k=y;e=13;break}var u=y,c=g;e=15;break}while(0);if(13==e){var k,b,l;if((0|l)!=-1){var m=b,S=l;e=26;break}var u=k,c=b}else if(14==e){var M=4|Se[vi+440>>2];Se[vi+440>>2]=M,e=23;break}var c,u,C=0|-c,R=(0|u)!=-1&c>>>0<2147483647;do{if(R){if(c>>>0>=(r+48|0)>>>0){var T=c;e=21;break}var O=Se[ti+8>>2],N=r+47-c+O&-O;if(N>>>0>=2147483647){var T=c;e=21;break}var I=re(N);if((0|I)==-1){re(C);e=22;break}var T=N+c|0;e=21;break}var T=c;e=21}while(0);if(21==e){var T;if((0|u)!=-1){var m=T,S=u;e=26;break}}var P=4|Se[vi+440>>2];Se[vi+440>>2]=P,e=23;break}e=23}while(0);do if(23==e){var D=Se[ti+8>>2],L=D+(r+47)&-D;if(L>>>0>=2147483647){e=49;break}var F=re(L),X=re(0);if(!((0|X)!=-1&(0|F)!=-1&F>>>0>>0)){e=49;break}var j=X-F|0;if(j>>>0<=(r+40|0)>>>0|(0|F)==-1){e=49;break}var m=j,S=F;e=26;break}while(0);r:do if(26==e){var S,m,U=Se[vi+432>>2]+m|0;Se[vi+432>>2]=U,U>>>0>Me[vi+436>>2]>>>0&&(Se[vi+436>>2]=U);var x=Me[vi+24>>2],z=0==(0|x);a:do if(z){var V=Me[vi+16>>2];0==(0|V)|S>>>0>>0&&(Se[vi+16>>2]=S),Se[vi+444>>2]=S,Se[vi+448>>2]=m,Se[vi+456>>2]=0;var B=Se[ti>>2];Se[vi+36>>2]=B,Se[vi+32>>2]=-1,ha(),ca(S,m-40|0)}else{for(var H=vi+444|0,a=H>>2;;){var H;if(0==(0|H))break;var K=Me[a],Y=H+4|0,G=Me[Y>>2],W=K+G|0;if((0|S)==(0|W)){if(0!=(8&Se[a+3]|0))break;var Z=x;if(!(Z>>>0>=K>>>0&Z>>>0>>0))break;Se[Y>>2]=G+m|0;var Q=Se[vi+24>>2],q=Se[vi+12>>2]+m|0;ca(Q,q);break a}var H=Se[a+2],a=H>>2}S>>>0>2]>>>0&&(Se[vi+16>>2]=S);for(var $=S+m|0,J=vi+444|0;;){var J;if(0==(0|J))break;var rr=0|J,ar=Me[rr>>2];if((0|ar)==(0|$)){if(0!=(8&Se[J+12>>2]|0))break;Se[rr>>2]=S;var er=J+4|0,ir=Se[er>>2]+m|0;Se[er>>2]=ir;var vr=da(S,ar,r),tr=vr;e=50;break r}var J=Se[J+8>>2]}Ma(S,m)}while(0);var fr=Me[vi+12>>2];if(fr>>>0<=r>>>0){e=49;break}var _r=fr-r|0;Se[vi+12>>2]=_r;var sr=Me[vi+24>>2],nr=sr;Se[vi+24>>2]=nr+r|0,Se[r+(nr+4)>>2]=1|_r,Se[sr+4>>2]=3|r;var tr=sr+8|0;e=50;break}while(0);if(49==e){var or=Je();Se[or>>2]=12;var tr=0}var tr;return tr}function ea(r){var a,e,i,v,t,f,_=r>>2,s=0|-r,n=r>>>8,o=0==(0|n);do if(o)var l=0;else{if(r>>>0>16777215){var l=31;break}var b=(n+1048320|0)>>>16&8,k=n<>>16&4,c=k<>>16&2,d=14-(u|b|h)+(c<>>15)|0,l=r>>>((d+7|0)>>>0)&1|d<<1}while(0);var l,w=Me[vi+(l<<2)+304>>2],p=0==(0|w);r:do if(p)var E=0,A=s,g=0;else{if(31==(0|l))var y=0;else var y=25-(l>>>1)|0;for(var y,m=0,S=s,M=w,t=M>>2,C=r<>>0>>0){if((0|T)==(0|r)){var E=M,A=O,g=M;break r}var N=M,I=O}else var N=m,I=S;var I,N,P=Me[t+5],D=Me[((C>>>31<<2)+16>>2)+t],L=0==(0|P)|(0|P)==(0|D)?R:P;if(0==(0|D)){var E=N,A=I,g=L;break r}var m=N,S=I,M=D,t=M>>2,C=C<<1,R=L}}while(0);var g,A,E,F=0==(0|g)&0==(0|E);do if(F){var X=2<>2]&(X|-X);if(0==(0|j)){var U=g;break}var x=(j&-j)-1|0,z=x>>>12&16,V=x>>>(z>>>0),B=V>>>5&8,H=V>>>(B>>>0),K=H>>>2&4,Y=H>>>(K>>>0),G=Y>>>1&2,W=Y>>>(G>>>0),Z=W>>>1&1,U=Se[vi+((B|z|K|G|Z)+(W>>>(Z>>>0))<<2)+304>>2]}else var U=g;while(0);var U,Q=0==(0|U);r:do if(Q)var q=A,$=E,v=$>>2;else for(var J=U,i=J>>2,rr=A,ar=E;;){var ar,rr,J,er=(Se[i+1]&-8)-r|0,ir=er>>>0>>0,vr=ir?er:rr,tr=ir?J:ar,fr=Me[i+4];if(0==(0|fr)){var _r=Me[i+5];if(0==(0|_r)){var q=vr,$=tr,v=$>>2;break r}var J=_r,i=J>>2,rr=vr,ar=tr}else var J=fr,i=J>>2,rr=vr,ar=tr}while(0);var $,q,sr=0==(0|$);r:do{if(!sr){if(q>>>0>=(Se[vi+8>>2]-r|0)>>>0){var nr=0;break}var or=$,e=or>>2,lr=Me[vi+16>>2],br=or>>>0>>0;do if(!br){var kr=or+r|0,ur=kr;if(or>>>0>=kr>>>0)break;var cr=Me[v+6],hr=Me[v+3],dr=(0|hr)==(0|$);do if(dr){var wr=$+20|0,pr=Se[wr>>2];if(0==(0|pr)){var Er=$+16|0,Ar=Se[Er>>2];if(0==(0|Ar)){var gr=0,a=gr>>2;break}var yr=Er,mr=Ar}else{var yr=wr,mr=pr;f=28}for(;;){var mr,yr,Sr=mr+20|0,Mr=Se[Sr>>2];if(0==(0|Mr)){var Cr=mr+16|0,Rr=Me[Cr>>2];if(0==(0|Rr))break;var yr=Cr,mr=Rr}else var yr=Sr,mr=Mr}if(yr>>>0>>0)throw Ka(),\"Reached an unreachable!\";Se[yr>>2]=0;var gr=mr,a=gr>>2}else{var Tr=Me[v+2];if(Tr>>>0>>0)throw Ka(),\"Reached an unreachable!\";Se[Tr+12>>2]=hr,Se[hr+8>>2]=Tr;var gr=hr,a=gr>>2}while(0);var gr,Or=0==(0|cr);a:do if(!Or){var Nr=$+28|0,Ir=(Se[Nr>>2]<<2)+vi+304|0,Pr=(0|$)==(0|Se[Ir>>2]);do{if(Pr){if(Se[Ir>>2]=gr,0!=(0|gr))break;var Dr=Se[vi+4>>2]&(1<>2]^-1);Se[vi+4>>2]=Dr;break a}if(cr>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";var Lr=cr+16|0;if((0|Se[Lr>>2])==(0|$)?Se[Lr>>2]=gr:Se[cr+20>>2]=gr,0==(0|gr))break a}while(0);if(gr>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[a+6]=cr;var Fr=Me[v+4];if(0!=(0|Fr)){if(Fr>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[a+4]=Fr,Se[Fr+24>>2]=gr}var Xr=Me[v+5];if(0==(0|Xr))break;if(Xr>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[a+5]=Xr,Se[Xr+24>>2]=gr}while(0);var jr=q>>>0<16;a:do if(jr){var Ur=q+r|0;Se[v+1]=3|Ur;var xr=Ur+(or+4)|0,zr=1|Se[xr>>2];Se[xr>>2]=zr}else if(Se[v+1]=3|r,Se[_+(e+1)]=1|q,Se[(q>>2)+e+_]=q,q>>>0<256){var Vr=q>>>2&1073741822,Br=(Vr<<2)+vi+40|0,Hr=Me[vi>>2],Kr=1<<(q>>>3),Yr=0==(Hr&Kr|0);do{if(!Yr){var Gr=(Vr+2<<2)+vi+40|0,Wr=Me[Gr>>2];if(Wr>>>0>=Me[vi+16>>2]>>>0){var Zr=Wr,Qr=Gr;break}throw Ka(),\"Reached an unreachable!\"}Se[vi>>2]=Hr|Kr;var Zr=Br,Qr=(Vr+2<<2)+vi+40|0}while(0);var Qr,Zr;Se[Qr>>2]=ur,Se[Zr+12>>2]=ur,Se[_+(e+2)]=Zr,Se[_+(e+3)]=Br}else{var qr=kr,$r=q>>>8,Jr=0==(0|$r);do if(Jr)var ra=0;else{if(q>>>0>16777215){var ra=31;break}var aa=($r+1048320|0)>>>16&8,ea=$r<>>16&4,va=ea<>>16&2,fa=14-(ia|aa|ta)+(va<>>15)|0,ra=q>>>((fa+7|0)>>>0)&1|fa<<1}while(0);var ra,_a=(ra<<2)+vi+304|0;Se[_+(e+7)]=ra;var sa=r+(or+16)|0;Se[_+(e+5)]=0,Se[sa>>2]=0;var na=Se[vi+4>>2],oa=1<>2]=la,Se[_a>>2]=qr,Se[_+(e+6)]=_a,Se[_+(e+3)]=qr,Se[_+(e+2)]=qr}else{if(31==(0|ra))var ba=0;else var ba=25-(ra>>>1)|0;for(var ba,ka=q<>2];;){var ua,ka;if((Se[ua+4>>2]&-8|0)==(0|q)){var ca=ua+8|0,ha=Me[ca>>2],da=Me[vi+16>>2],wa=ua>>>0>>0;do if(!wa){if(ha>>>0>>0)break;Se[ha+12>>2]=qr,Se[ca>>2]=qr,Se[_+(e+2)]=ha,Se[_+(e+3)]=ua,Se[_+(e+6)]=0;break a}while(0);throw Ka(),\"Reached an unreachable!\"}var pa=(ka>>>31<<2)+ua+16|0,Ea=Me[pa>>2];if(0==(0|Ea)){if(pa>>>0>=Me[vi+16>>2]>>>0){Se[pa>>2]=qr,Se[_+(e+6)]=ua,Se[_+(e+3)]=qr,Se[_+(e+2)]=qr;break a}throw Ka(),\"Reached an unreachable!\"}var ka=ka<<1,ua=Ea}}}while(0);var nr=$+8|0;break r}while(0);throw Ka(),\"Reached an unreachable!\"}var nr=0}while(0);var nr;return nr}function ia(r){var a;0==(0|Se[ti>>2])&&ba();var e=r>>>0<4294967232;r:do if(e){var i=Me[vi+24>>2];if(0==(0|i)){var v=0;break}var t=Me[vi+12>>2],f=t>>>0>(r+40|0)>>>0;do if(f){var _=Me[ti+8>>2],s=-40-r-1+t+_|0,n=Math.floor((s>>>0)/(_>>>0)),o=(n-1)*_|0,l=i,b=ua(l);if(0!=(8&Se[b+12>>2]|0))break;var k=re(0),a=(b+4|0)>>2;if((0|k)!=(Se[b>>2]+Se[a]|0))break;var u=o>>>0>2147483646?-2147483648-_|0:o,c=0|-u,h=re(c),d=re(0);if(!((0|h)!=-1&d>>>0>>0))break;var w=k-d|0;if((0|k)==(0|d))break;var p=Se[a]-w|0;Se[a]=p;var E=Se[vi+432>>2]-w|0;Se[vi+432>>2]=E;var A=Se[vi+24>>2],g=Se[vi+12>>2]-w|0;ca(A,g);var v=(0|k)!=(0|d);break r}while(0);if(Me[vi+12>>2]>>>0<=Me[vi+28>>2]>>>0){var v=0;break}Se[vi+28>>2]=-1;var v=0}else var v=0;while(0);var v;return 1&v}function va(r){var a,e,i,v,t,f,_,s=r>>2,n=0==(0|r);r:do if(!n){var o=r-8|0,l=o,b=Me[vi+16>>2],k=o>>>0>>0;a:do if(!k){var u=Me[r-4>>2],c=3&u;if(1==(0|c))break;var h=u&-8,f=h>>2,d=r+(h-8)|0,w=d,p=0==(1&u|0);e:do if(p){var E=Me[o>>2];if(0==(0|c))break r;var A=-8-E|0,t=A>>2,g=r+A|0,y=g,m=E+h|0;if(g>>>0>>0)break a;if((0|y)==(0|Se[vi+20>>2])){var v=(r+(h-4)|0)>>2;if(3!=(3&Se[v]|0)){var S=y,i=S>>2,M=m;break}Se[vi+8>>2]=m;var C=Se[v]&-2;Se[v]=C,Se[t+(s+1)]=1|m,Se[d>>2]=m;break r}if(E>>>0<256){var R=Me[t+(s+2)],T=Me[t+(s+3)];if((0|R)!=(0|T)){var O=((E>>>2&1073741822)<<2)+vi+40|0,N=(0|R)!=(0|O)&R>>>0>>0;do if(!N){if(!((0|T)==(0|O)|T>>>0>=b>>>0))break;Se[R+12>>2]=T,Se[T+8>>2]=R;var S=y,i=S>>2,M=m;break e}while(0);throw Ka(),\"Reached an unreachable!\"}var I=Se[vi>>2]&(1<<(E>>>3)^-1);Se[vi>>2]=I;var S=y,i=S>>2,M=m}else{var P=g,D=Me[t+(s+6)],L=Me[t+(s+3)],F=(0|L)==(0|P);do if(F){var X=A+(r+20)|0,j=Se[X>>2];if(0==(0|j)){var U=A+(r+16)|0,x=Se[U>>2];if(0==(0|x)){var z=0,e=z>>2;break}var V=U,B=x}else{var V=X,B=j;_=21}for(;;){var B,V,H=B+20|0,K=Se[H>>2];if(0==(0|K)){var Y=B+16|0,G=Me[Y>>2];if(0==(0|G))break;var V=Y,B=G}else var V=H,B=K}if(V>>>0>>0)throw Ka(),\"Reached an unreachable!\";Se[V>>2]=0;var z=B,e=z>>2}else{var W=Me[t+(s+2)];if(W>>>0>>0)throw Ka(),\"Reached an unreachable!\";Se[W+12>>2]=L,Se[L+8>>2]=W;var z=L,e=z>>2}while(0);var z;if(0==(0|D)){var S=y,i=S>>2,M=m;break}var Z=A+(r+28)|0,Q=(Se[Z>>2]<<2)+vi+304|0,q=(0|P)==(0|Se[Q>>2]);do{if(q){if(Se[Q>>2]=z,0!=(0|z))break;var $=Se[vi+4>>2]&(1<>2]^-1);Se[vi+4>>2]=$;var S=y,i=S>>2,M=m;break e}if(D>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";var J=D+16|0;if((0|Se[J>>2])==(0|P)?Se[J>>2]=z:Se[D+20>>2]=z,0==(0|z)){var S=y,i=S>>2,M=m;break e}}while(0);if(z>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[e+6]=D;var rr=Me[t+(s+4)];if(0!=(0|rr)){if(rr>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[e+4]=rr,Se[rr+24>>2]=z}var ar=Me[t+(s+5)];if(0==(0|ar)){var S=y,i=S>>2,M=m;break}if(ar>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[e+5]=ar,Se[ar+24>>2]=z;var S=y,i=S>>2,M=m}}else var S=l,i=S>>2,M=h;while(0);var M,S,er=S;if(er>>>0>=d>>>0)break;var ir=r+(h-4)|0,vr=Me[ir>>2];if(0==(1&vr|0))break;var tr=0==(2&vr|0);do{if(tr){if((0|w)==(0|Se[vi+24>>2])){var fr=Se[vi+12>>2]+M|0;Se[vi+12>>2]=fr,Se[vi+24>>2]=S;var _r=1|fr;if(Se[i+1]=_r,(0|S)==(0|Se[vi+20>>2])&&(Se[vi+20>>2]=0,Se[vi+8>>2]=0),fr>>>0<=Me[vi+28>>2]>>>0)break r;ia(0);break r}if((0|w)==(0|Se[vi+20>>2])){var sr=Se[vi+8>>2]+M|0;Se[vi+8>>2]=sr,Se[vi+20>>2]=S;var nr=1|sr;Se[i+1]=nr;var or=er+sr|0;Se[or>>2]=sr;break r}var lr=(vr&-8)+M|0,br=vr>>>3,kr=vr>>>0<256;e:do if(kr){var ur=Me[s+f],cr=Me[((4|h)>>2)+s];if((0|ur)!=(0|cr)){var hr=((vr>>>2&1073741822)<<2)+vi+40|0,dr=(0|ur)==(0|hr);do{if(!dr){if(ur>>>0>2]>>>0){_=66;break}_=63;break}_=63}while(0);do if(63==_){if((0|cr)!=(0|hr)&&cr>>>0>2]>>>0)break;Se[ur+12>>2]=cr,Se[cr+8>>2]=ur;break e}while(0);throw Ka(),\"Reached an unreachable!\"}var wr=Se[vi>>2]&(1<>2]=wr}else{var pr=d,Er=Me[f+(s+4)],Ar=Me[((4|h)>>2)+s],gr=(0|Ar)==(0|pr);do if(gr){var yr=h+(r+12)|0,mr=Se[yr>>2];if(0==(0|mr)){var Sr=h+(r+8)|0,Mr=Se[Sr>>2];if(0==(0|Mr)){var Cr=0,a=Cr>>2;break}var Rr=Sr,Tr=Mr}else{var Rr=yr,Tr=mr;_=73}for(;;){var Tr,Rr,Or=Tr+20|0,Nr=Se[Or>>2];if(0==(0|Nr)){var Ir=Tr+16|0,Pr=Me[Ir>>2];if(0==(0|Pr))break;var Rr=Ir,Tr=Pr}else var Rr=Or,Tr=Nr}if(Rr>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[Rr>>2]=0;var Cr=Tr,a=Cr>>2}else{var Dr=Me[s+f];if(Dr>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[Dr+12>>2]=Ar,\nSe[Ar+8>>2]=Dr;var Cr=Ar,a=Cr>>2}while(0);var Cr;if(0==(0|Er))break;var Lr=h+(r+20)|0,Fr=(Se[Lr>>2]<<2)+vi+304|0,Xr=(0|pr)==(0|Se[Fr>>2]);do{if(Xr){if(Se[Fr>>2]=Cr,0!=(0|Cr))break;var jr=Se[vi+4>>2]&(1<>2]^-1);Se[vi+4>>2]=jr;break e}if(Er>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";var Ur=Er+16|0;if((0|Se[Ur>>2])==(0|pr)?Se[Ur>>2]=Cr:Se[Er+20>>2]=Cr,0==(0|Cr))break e}while(0);if(Cr>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[a+6]=Er;var xr=Me[f+(s+2)];if(0!=(0|xr)){if(xr>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[a+4]=xr,Se[xr+24>>2]=Cr}var zr=Me[f+(s+3)];if(0==(0|zr))break;if(zr>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[a+5]=zr,Se[zr+24>>2]=Cr}while(0);if(Se[i+1]=1|lr,Se[er+lr>>2]=lr,(0|S)!=(0|Se[vi+20>>2])){var Vr=lr;break}Se[vi+8>>2]=lr;break r}Se[ir>>2]=vr&-2,Se[i+1]=1|M,Se[er+M>>2]=M;var Vr=M}while(0);var Vr;if(Vr>>>0<256){var Br=Vr>>>2&1073741822,Hr=(Br<<2)+vi+40|0,Kr=Me[vi>>2],Yr=1<<(Vr>>>3),Gr=0==(Kr&Yr|0);do{if(!Gr){var Wr=(Br+2<<2)+vi+40|0,Zr=Me[Wr>>2];if(Zr>>>0>=Me[vi+16>>2]>>>0){var Qr=Zr,qr=Wr;break}throw Ka(),\"Reached an unreachable!\"}Se[vi>>2]=Kr|Yr;var Qr=Hr,qr=(Br+2<<2)+vi+40|0}while(0);var qr,Qr;Se[qr>>2]=S,Se[Qr+12>>2]=S,Se[i+2]=Qr,Se[i+3]=Hr;break r}var $r=S,Jr=Vr>>>8,ra=0==(0|Jr);do if(ra)var aa=0;else{if(Vr>>>0>16777215){var aa=31;break}var ea=(Jr+1048320|0)>>>16&8,va=Jr<>>16&4,_a=va<>>16&2,na=14-(fa|ea|sa)+(_a<>>15)|0,aa=Vr>>>((na+7|0)>>>0)&1|na<<1}while(0);var aa,oa=(aa<<2)+vi+304|0;Se[i+7]=aa,Se[i+5]=0,Se[i+4]=0;var la=Se[vi+4>>2],ba=1<>2]=ua,Se[oa>>2]=$r,Se[i+6]=oa,Se[i+3]=S,Se[i+2]=S}else{if(31==(0|aa))var ca=0;else var ca=25-(aa>>>1)|0;for(var ca,ha=Vr<>2];;){var da,ha;if((Se[da+4>>2]&-8|0)==(0|Vr)){var wa=da+8|0,pa=Me[wa>>2],Ea=Me[vi+16>>2],Aa=da>>>0>>0;do if(!Aa){if(pa>>>0>>0)break;Se[pa+12>>2]=$r,Se[wa>>2]=$r,Se[i+2]=pa,Se[i+3]=da,Se[i+6]=0;break e}while(0);throw Ka(),\"Reached an unreachable!\"}var ga=(ha>>>31<<2)+da+16|0,ya=Me[ga>>2];if(0==(0|ya)){if(ga>>>0>=Me[vi+16>>2]>>>0){Se[ga>>2]=$r,Se[i+6]=da,Se[i+3]=S,Se[i+2]=S;break e}throw Ka(),\"Reached an unreachable!\"}var ha=ha<<1,da=ya}}while(0);var ma=Se[vi+32>>2]-1|0;if(Se[vi+32>>2]=ma,0!=(0|ma))break r;ta();break r}while(0);throw Ka(),\"Reached an unreachable!\"}while(0)}function ta(){var r=Se[vi+452>>2],a=0==(0|r);r:do if(!a)for(var e=r;;){var e,i=Se[e+8>>2];if(0==(0|i))break r;var e=i}while(0);Se[vi+32>>2]=-1}function fa(r,a){if(0==(0|r))var e=Jr(a),i=e;else var v=la(r,a),i=v;var i;return i}function _a(r,a){var e,i=r>>>0<9;do if(i)var v=Jr(a),t=v;else{var f=r>>>0<16?16:r,_=0==(f-1&f|0);r:do if(_)var s=f;else{if(f>>>0<=16){var s=16;break}for(var n=16;;){var n,o=n<<1;if(o>>>0>=f>>>0){var s=o;break r}var n=o}}while(0);var s;if((-64-s|0)>>>0>a>>>0){if(a>>>0<11)var l=16;else var l=a+11&-8;var l,b=Jr(l+(s+12)|0);if(0==(0|b)){var t=0;break}var k=b-8|0;if(0==((b>>>0)%(s>>>0)|0))var u=k,c=0;else{var h=b+(s-1)&-s,d=h-8|0,w=k;if((d-w|0)>>>0>15)var p=d;else var p=h+(s-8)|0;var p,E=p-w|0,e=(b-4|0)>>2,A=Se[e],g=(A&-8)-E|0;if(0==(3&A|0)){var y=Se[k>>2]+E|0;Se[p>>2]=y,Se[p+4>>2]=g;var u=p,c=0}else{var m=p+4|0,S=g|1&Se[m>>2]|2;Se[m>>2]=S;var M=g+(p+4)|0,C=1|Se[M>>2];Se[M>>2]=C;var R=E|1&Se[e]|2;Se[e]=R;var T=b+(E-4)|0,O=1|Se[T>>2];Se[T>>2]=O;var u=p,c=b}}var c,u,N=u+4|0,I=Me[N>>2],P=0==(3&I|0);do if(P)var D=0;else{var L=I&-8;if(L>>>0<=(l+16|0)>>>0){var D=0;break}var F=L-l|0;Se[N>>2]=l|1&I|2,Se[u+(4|l)>>2]=3|F;var X=u+(4|L)|0,j=1|Se[X>>2];Se[X>>2]=j;var D=l+(u+8)|0}while(0);var D;0!=(0|c)&&va(c),0!=(0|D)&&va(D);var t=u+8|0}else{var U=Je();Se[U>>2]=12;var t=0}}while(0);var t;return t}function sa(r,a,e,i){var v,t;0==(0|Se[ti>>2])&&ba();var f=0==(0|i),_=0==(0|r);do{if(f){if(_){var s=Jr(0),n=s;t=30;break}var o=r<<2;if(o>>>0<11){var l=0,b=16;t=9;break}var l=0,b=o+11&-8;t=9;break}if(_){var n=i;t=30;break}var l=i,b=0;t=9;break}while(0);do if(9==t){var b,l,k=0==(1&e|0);r:do if(k){if(_){var u=0,c=0;break}for(var h=0,d=0;;){var d,h,w=Me[a+(d<<2)>>2];if(w>>>0<11)var p=16;else var p=w+11&-8;var p,E=p+h|0,A=d+1|0;if((0|A)==(0|r)){var u=0,c=E;break r}var h=E,d=A}}else{var g=Me[a>>2];if(g>>>0<11)var y=16;else var y=g+11&-8;var y,u=y,c=y*r|0}while(0);var c,u,m=Jr(b-4+c|0);if(0==(0|m)){var n=0;break}var S=m-8|0,M=Se[m-4>>2]&-8;if(0!=(2&e|0)){var C=-4-b+M|0;Fa(m,0,C,1)}if(0==(0|l)){var R=m+c|0,T=M-c|3;Se[m+(c-4)>>2]=T;var O=R,v=O>>2,N=c}else var O=l,v=O>>2,N=M;var N,O;Se[v]=m;var I=r-1|0,P=0==(0|I);r:do if(P)var D=S,L=N;else if(0==(0|u))for(var F=S,X=N,j=0;;){var j,X,F,U=Me[a+(j<<2)>>2];if(U>>>0<11)var x=16;else var x=U+11&-8;var x,z=X-x|0;Se[F+4>>2]=3|x;var V=F+x|0,B=j+1|0;if(Se[(B<<2>>2)+v]=x+(F+8)|0,(0|B)==(0|I)){var D=V,L=z;break r}var F=V,X=z,j=B}else for(var H=3|u,K=u+8|0,Y=S,G=N,W=0;;){var W,G,Y,Z=G-u|0;Se[Y+4>>2]=H;var Q=Y+u|0,q=W+1|0;if(Se[(q<<2>>2)+v]=Y+K|0,(0|q)==(0|I)){var D=Q,L=Z;break r}var Y=Q,G=Z,W=q}while(0);var L,D;Se[D+4>>2]=3|L;var n=O}while(0);var n;return n}function na(r){var a=r>>2;0==(0|Se[ti>>2])&&ba();var e=Me[vi+24>>2];if(0==(0|e))var i=0,v=0,t=0,f=0,_=0,s=0,n=0;else{for(var o=Me[vi+12>>2],l=o+40|0,b=vi+444|0,k=l,u=l,c=1;;){var c,u,k,b,h=Me[b>>2],d=h+8|0;if(0==(7&d|0))var w=0;else var w=7&-d;for(var w,p=b+4|0,E=h+w|0,A=c,g=u,y=k;;){var y,g,A,E;if(E>>>0>>0)break;if(E>>>0>=(h+Se[p>>2]|0)>>>0|(0|E)==(0|e))break;var m=Se[E+4>>2];if(7==(0|m))break;var S=m&-8,M=S+y|0;if(1==(3&m|0))var C=A+1|0,R=S+g|0;else var C=A,R=g;var R,C,E=E+S|0,A=C,g=R,y=M}var T=Me[b+8>>2];if(0==(0|T))break;var b=T,k=y,u=g,c=A}var O=Se[vi+432>>2],i=y,v=A,t=o,f=g,_=O-y|0,s=Se[vi+436>>2],n=O-g|0}var n,s,_,f,t,v,i;Se[a]=i,Se[a+1]=v,Se[a+2]=0,Se[a+3]=0,Se[a+4]=_,Se[a+5]=s,Se[a+6]=0,Se[a+7]=n,Se[a+8]=f,Se[a+9]=t}function oa(){0==(0|Se[ti>>2])&&ba();var r=Me[vi+24>>2],a=0==(0|r);r:do if(a)var e=0,i=0,v=0;else for(var t=Se[vi+436>>2],f=Me[vi+432>>2],_=vi+444|0,s=f-40-Se[vi+12>>2]|0;;){var s,_,n=Me[_>>2],o=n+8|0;if(0==(7&o|0))var l=0;else var l=7&-o;for(var l,b=_+4|0,k=n+l|0,u=s;;){var u,k;if(k>>>0>>0)break;if(k>>>0>=(n+Se[b>>2]|0)>>>0|(0|k)==(0|r))break;var c=Se[k+4>>2];if(7==(0|c))break;var h=c&-8,d=1==(3&c|0)?h:0,w=u-d|0,k=k+h|0,u=w}var p=Me[_+8>>2];if(0==(0|p)){var e=t,i=f,v=u;break r}var _=p,s=u}while(0);var v,i,e,E=Se[Se[qe>>2]+12>>2],A=(Qa(E,0|He.__str339,(ne=Oe,Oe+=4,Se[ne>>2]=e,ne)),Se[Se[qe>>2]+12>>2]),g=(Qa(A,0|He.__str1340,(ne=Oe,Oe+=4,Se[ne>>2]=i,ne)),Se[Se[qe>>2]+12>>2]);Qa(g,0|He.__str2341,(ne=Oe,Oe+=4,Se[ne>>2]=v,ne))}function la(r,a){var e,i,v,t=a>>>0>4294967231;r:do{if(!t){var f=r-8|0,_=f,i=(r-4|0)>>2,s=Me[i],n=s&-8,o=n-8|0,l=r+o|0,b=f>>>0>2]>>>0;do if(!b){var k=3&s;if(!(1!=(0|k)&(0|o)>-8))break;var e=(r+(n-4)|0)>>2;if(0==(1&Se[e]|0))break;if(a>>>0<11)var u=16;else var u=a+11&-8;var u,c=0==(0|k);do{if(c){var h=ka(_,u),d=0,w=h;v=17;break}if(n>>>0>>0){if((0|l)!=(0|Se[vi+24>>2])){v=21;break}var p=Se[vi+12>>2]+n|0;if(p>>>0<=u>>>0){v=21;break}var E=p-u|0,A=r+(u-8)|0;Se[i]=u|1&s|2;var g=1|E;Se[r+(u-4)>>2]=g,Se[vi+24>>2]=A,Se[vi+12>>2]=E;var d=0,w=_;v=17;break}var y=n-u|0;if(y>>>0<=15){var d=0,w=_;v=17;break}Se[i]=u|1&s|2,Se[r+(u-4)>>2]=3|y;var m=1|Se[e];Se[e]=m;var d=r+u|0,w=_;v=17;break}while(0);do if(17==v){var w,d;if(0==(0|w))break;0!=(0|d)&&va(d);var S=w+8|0;break r}while(0);var M=Jr(a);if(0==(0|M)){var S=0;break r}var C=0==(3&Se[i]|0)?8:4,R=n-C|0,T=R>>>0>>0?R:a;Pa(M,r,T,1),va(r);var S=M;break r}while(0);throw Ka(),\"Reached an unreachable!\"}var O=Je();Se[O>>2]=12;var S=0}while(0);var S;return S}function ba(){if(0==(0|Se[ti>>2])){var r=qa(8);if(0!=(r-1&r|0))throw Ka(),\"Reached an unreachable!\";Se[ti+8>>2]=r,Se[ti+4>>2]=r,Se[ti+12>>2]=-1,Se[ti+16>>2]=2097152,Se[ti+20>>2]=0,Se[vi+440>>2]=0;var a=$a(0);Se[ti>>2]=a&-16^1431655768}}function ka(r,a){var e=Se[r+4>>2]&-8,i=a>>>0<256;do if(i)var v=0;else{if(e>>>0>=(a+4|0)>>>0&&(e-a|0)>>>0<=Se[ti+8>>2]<<1>>>0){var v=r;break}var v=0}while(0);var v;return v}function ua(r){for(var a,e=vi+444|0,a=e>>2;;){var e,i=Me[a];if(i>>>0<=r>>>0&&(i+Se[a+1]|0)>>>0>r>>>0){var v=e;break}var t=Me[a+2];if(0==(0|t)){var v=0;break}var e=t,a=e>>2}var v;return v}function ca(r,a){var e=r,i=r+8|0;if(0==(7&i|0))var v=0;else var v=7&-i;var v,t=a-v|0;Se[vi+24>>2]=e+v|0,Se[vi+12>>2]=t,Se[v+(e+4)>>2]=1|t,Se[a+(e+4)>>2]=40;var f=Se[ti+16>>2];Se[vi+28>>2]=f}function ha(){for(var r=0;;){var r,a=r<<1,e=(a<<2)+vi+40|0;Se[vi+(a+3<<2)+40>>2]=e,Se[vi+(a+2<<2)+40>>2]=e;var i=r+1|0;if(32==(0|i))break;var r=i}}function da(r,a,e){var i,v,t,f,_=a>>2,s=r>>2,n=r+8|0;if(0==(7&n|0))var o=0;else var o=7&-n;var o,l=a+8|0;if(0==(7&l|0))var b=0,t=b>>2;else var b=7&-l,t=b>>2;var b,k=a+b|0,u=k,c=o+e|0,v=c>>2,h=r+c|0,d=h,w=k-(r+o)-e|0;Se[(o+4>>2)+s]=3|e;var p=(0|u)==(0|Se[vi+24>>2]);r:do if(p){var E=Se[vi+12>>2]+w|0;Se[vi+12>>2]=E,Se[vi+24>>2]=d;var A=1|E;Se[v+(s+1)]=A}else if((0|u)==(0|Se[vi+20>>2])){var g=Se[vi+8>>2]+w|0;Se[vi+8>>2]=g,Se[vi+20>>2]=d;var y=1|g;Se[v+(s+1)]=y;var m=r+g+c|0;Se[m>>2]=g}else{var S=Me[t+(_+1)];if(1==(3&S|0)){var M=S&-8,C=S>>>3,R=S>>>0<256;a:do if(R){var T=Me[((8|b)>>2)+_],O=Me[t+(_+3)];if((0|T)!=(0|O)){var N=((S>>>2&1073741822)<<2)+vi+40|0,I=(0|T)==(0|N);do{if(!I){if(T>>>0>2]>>>0){f=18;break}f=15;break}f=15}while(0);do if(15==f){if((0|O)!=(0|N)&&O>>>0>2]>>>0)break;Se[T+12>>2]=O,Se[O+8>>2]=T;break a}while(0);throw Ka(),\"Reached an unreachable!\"}var P=Se[vi>>2]&(1<>2]=P}else{var D=k,L=Me[((24|b)>>2)+_],F=Me[t+(_+3)],X=(0|F)==(0|D);do if(X){var j=16|b,U=j+(a+4)|0,x=Se[U>>2];if(0==(0|x)){var z=a+j|0,V=Se[z>>2];if(0==(0|V)){var B=0,i=B>>2;break}var H=z,K=V}else{var H=U,K=x;f=25}for(;;){var K,H,Y=K+20|0,G=Se[Y>>2];if(0==(0|G)){var W=K+16|0,Z=Me[W>>2];if(0==(0|Z))break;var H=W,K=Z}else var H=Y,K=G}if(H>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[H>>2]=0;var B=K,i=B>>2}else{var Q=Me[((8|b)>>2)+_];if(Q>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[Q+12>>2]=F,Se[F+8>>2]=Q;var B=F,i=B>>2}while(0);var B;if(0==(0|L))break;var q=b+(a+28)|0,$=(Se[q>>2]<<2)+vi+304|0,J=(0|D)==(0|Se[$>>2]);do{if(J){if(Se[$>>2]=B,0!=(0|B))break;var rr=Se[vi+4>>2]&(1<>2]^-1);Se[vi+4>>2]=rr;break a}if(L>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";var ar=L+16|0;if((0|Se[ar>>2])==(0|D)?Se[ar>>2]=B:Se[L+20>>2]=B,0==(0|B))break a}while(0);if(B>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[i+6]=L;var er=16|b,ir=Me[(er>>2)+_];if(0!=(0|ir)){if(ir>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[i+4]=ir,Se[ir+24>>2]=B}var vr=Me[(er+4>>2)+_];if(0==(0|vr))break;if(vr>>>0>2]>>>0)throw Ka(),\"Reached an unreachable!\";Se[i+5]=vr,Se[vr+24>>2]=B}while(0);var tr=a+(M|b)|0,fr=M+w|0}else var tr=u,fr=w;var fr,tr,_r=tr+4|0,sr=Se[_r>>2]&-2;if(Se[_r>>2]=sr,Se[v+(s+1)]=1|fr,Se[(fr>>2)+s+v]=fr,fr>>>0<256){var nr=fr>>>2&1073741822,or=(nr<<2)+vi+40|0,lr=Me[vi>>2],br=1<<(fr>>>3),kr=0==(lr&br|0);do{if(!kr){var ur=(nr+2<<2)+vi+40|0,cr=Me[ur>>2];if(cr>>>0>=Me[vi+16>>2]>>>0){var hr=cr,dr=ur;break}throw Ka(),\"Reached an unreachable!\"}Se[vi>>2]=lr|br;var hr=or,dr=(nr+2<<2)+vi+40|0}while(0);var dr,hr;Se[dr>>2]=d,Se[hr+12>>2]=d,Se[v+(s+2)]=hr,Se[v+(s+3)]=or}else{var wr=h,pr=fr>>>8,Er=0==(0|pr);do if(Er)var Ar=0;else{if(fr>>>0>16777215){var Ar=31;break}var gr=(pr+1048320|0)>>>16&8,yr=pr<>>16&4,Sr=yr<>>16&2,Cr=14-(mr|gr|Mr)+(Sr<>>15)|0,Ar=fr>>>((Cr+7|0)>>>0)&1|Cr<<1}while(0);var Ar,Rr=(Ar<<2)+vi+304|0;Se[v+(s+7)]=Ar;var Tr=c+(r+16)|0;Se[v+(s+5)]=0,Se[Tr>>2]=0;var Or=Se[vi+4>>2],Nr=1<>2]=Ir,Se[Rr>>2]=wr,Se[v+(s+6)]=Rr,Se[v+(s+3)]=wr,Se[v+(s+2)]=wr}else{if(31==(0|Ar))var Pr=0;else var Pr=25-(Ar>>>1)|0;for(var Pr,Dr=fr<>2];;){var Lr,Dr;if((Se[Lr+4>>2]&-8|0)==(0|fr)){var Fr=Lr+8|0,Xr=Me[Fr>>2],jr=Me[vi+16>>2],Ur=Lr>>>0>>0;do if(!Ur){if(Xr>>>0>>0)break;Se[Xr+12>>2]=wr,Se[Fr>>2]=wr,Se[v+(s+2)]=Xr,Se[v+(s+3)]=Lr,Se[v+(s+6)]=0;break r}while(0);throw Ka(),\"Reached an unreachable!\"}var xr=(Dr>>>31<<2)+Lr+16|0,zr=Me[xr>>2];if(0==(0|zr)){if(xr>>>0>=Me[vi+16>>2]>>>0){Se[xr>>2]=wr,Se[v+(s+6)]=Lr,Se[v+(s+3)]=wr,Se[v+(s+2)]=wr;break r}throw Ka(),\"Reached an unreachable!\"}var Dr=Dr<<1,Lr=zr}}}}while(0);return r+(8|o)|0}function wa(r){return 0|He.__str3342}function pa(r){return 0|He.__str14343}function Ea(r){Se[r>>2]=si+8|0}function Aa(r){0!=(0|r)&&va(r)}function ga(r){ya(r);var a=r;Aa(a)}function ya(r){var a=0|r;Ye(a)}function ma(r){var a=0|r;Ea(a),Se[r>>2]=ni+8|0}function Sa(r){var a=0|r;ya(a);var e=r;Aa(e)}function Ma(r,a){var e,i,v=Me[vi+24>>2],i=v>>2,t=v,f=ua(t),_=Se[f>>2],s=Se[f+4>>2],n=_+s|0,o=_+(s-39)|0;if(0==(7&o|0))var l=0;else var l=7&-o;var l,b=_+(s-47)+l|0,k=b>>>0<(v+16|0)>>>0?t:b,u=k+8|0,e=u>>2,c=u,h=r,d=a-40|0;ca(h,d);var w=k+4|0;Se[w>>2]=27,Se[e]=Se[vi+444>>2],Se[e+1]=Se[vi+448>>2],Se[e+2]=Se[vi+452>>2],Se[e+3]=Se[vi+456>>2],Se[vi+444>>2]=r,Se[vi+448>>2]=a,Se[vi+456>>2]=0,Se[vi+452>>2]=c;var p=k+28|0;Se[p>>2]=7;var E=(k+32|0)>>>0>>0;r:do if(E)for(var A=p;;){var A,g=A+4|0;if(Se[g>>2]=7,(A+8|0)>>>0>=n>>>0)break r;var A=g}while(0);var y=(0|k)==(0|t);r:do if(!y){var m=k-v|0,S=t+m|0,M=m+(t+4)|0,C=Se[M>>2]&-2;Se[M>>2]=C;var R=1|m;Se[i+1]=R;var T=S;if(Se[T>>2]=m,m>>>0<256){var O=m>>>2&1073741822,N=(O<<2)+vi+40|0,I=Me[vi>>2],P=1<<(m>>>3),D=0==(I&P|0);do{if(!D){var L=(O+2<<2)+vi+40|0,F=Me[L>>2];if(F>>>0>=Me[vi+16>>2]>>>0){var X=F,j=L;break}throw Ka(),\"Reached an unreachable!\"}var U=I|P;Se[vi>>2]=U;var X=N,j=(O+2<<2)+vi+40|0}while(0);var j,X;Se[j>>2]=v,Se[X+12>>2]=v,Se[i+2]=X,Se[i+3]=N}else{var x=v,z=m>>>8,V=0==(0|z);do if(V)var B=0;else{if(m>>>0>16777215){var B=31;break}var H=(z+1048320|0)>>>16&8,K=z<>>16&4,G=K<>>16&2,Z=14-(Y|H|W)+(G<>>15)|0,B=m>>>((Z+7|0)>>>0)&1|Z<<1}while(0);var B,Q=(B<<2)+vi+304|0;Se[i+7]=B,Se[i+5]=0,Se[i+4]=0;var q=Se[vi+4>>2],$=1<>2]=J,Se[Q>>2]=x,Se[i+6]=Q,Se[i+3]=v,Se[i+2]=v}else{if(31==(0|B))var rr=0;else var rr=25-(B>>>1)|0;for(var rr,ar=m<>2];;){var er,ar;if((Se[er+4>>2]&-8|0)==(0|m)){var ir=er+8|0,vr=Me[ir>>2],tr=Me[vi+16>>2],fr=er>>>0>>0;do if(!fr){if(vr>>>0>>0)break;Se[vr+12>>2]=x,Se[ir>>2]=x,Se[i+2]=vr,Se[i+3]=er,Se[i+6]=0;break r}while(0);throw Ka(),\"Reached an unreachable!\"}var _r=(ar>>>31<<2)+er+16|0,sr=Me[_r>>2];if(0==(0|sr)){if(_r>>>0>=Me[vi+16>>2]>>>0){Se[_r>>2]=x,Se[i+6]=er,Se[i+3]=v,Se[i+2]=v;break r}throw Ka(),\"Reached an unreachable!\"}var ar=ar<<1,er=sr}}}}while(0)}function Ca(r){return d(r)}function Ra(r,a){var e=0;do Ae[r+e]=Ae[a+e],e++;while(0!=Ae[a+e-1]);return r}function Ta(){var r=Ta;return r.LLVM_SAVEDSTACKS||(r.LLVM_SAVEDSTACKS=[]),r.LLVM_SAVEDSTACKS.push(le.stackSave()),r.LLVM_SAVEDSTACKS.length-1}function Oa(r){var a=Ta,e=a.LLVM_SAVEDSTACKS[r];a.LLVM_SAVEDSTACKS.splice(r,1),le.stackRestore(e)}function Na(r,a,e){for(var i=0;it?1:-1;i++}return 0}function Ia(r,a){var e=Ca(r),i=0;do Ae[r+e+i]=Ae[a+i],i++;while(0!=Ae[a+i-1]);return r}function Pa(r,a,e,i){if(e>=20&&a%2==r%2)if(a%4==r%4){for(var v=a+e;a%4;)Ae[r++]=Ae[a++];for(var t=a>>2,f=r>>2,_=v>>2;t<_;)Se[f++]=Se[t++];for(a=t<<2,r=f<<2;a>1,n=r>>1,o=v>>1;st?1:-1}return 0}function Fa(r,a,e,i){if(e>=20){for(var v=r+e;r%4;)Ae[r++]=a;a<0&&(a+=256);for(var t=r>>2,f=v>>2,_=a|a<<8|a<<16|a<<24;t>2],xe[1]=Se[a+_+4>>2],e=ze[0]):\"i64\"==r?e=[Se[a+_>>2],Se[a+_+4>>2]]:(r=\"i32\",e=Se[a+_>>2]),_+=le.getNativeFieldSize(r),e}for(var i,v,t,f=r,_=0,s=[];;){var n=f;if(i=Ae[f],0===i)break;if(v=Ae[f+1],i==\"%\".charCodeAt(0)){var o=!1,l=!1,b=!1,k=!1;r:for(;;){switch(v){case\"+\".charCodeAt(0):o=!0;break;case\"-\".charCodeAt(0):l=!0;break;case\"#\".charCodeAt(0):b=!0;break;case\"0\".charCodeAt(0):if(k)break r;k=!0;break;default:break r}f++,v=Ae[f+1]}var u=0;if(v==\"*\".charCodeAt(0))u=e(\"i32\"),f++,v=Ae[f+1];else for(;v>=\"0\".charCodeAt(0)&&v<=\"9\".charCodeAt(0);)u=10*u+(v-\"0\".charCodeAt(0)),f++,v=Ae[f+1];var c=!1;if(v==\".\".charCodeAt(0)){var h=0;if(c=!0,f++,v=Ae[f+1],v==\"*\".charCodeAt(0))h=e(\"i32\"),f++;else for(;;){var d=Ae[f+1];if(d<\"0\".charCodeAt(0)||d>\"9\".charCodeAt(0))break;h=10*h+(d-\"0\".charCodeAt(0)),f++}v=Ae[f+1]}else var h=6;var E;switch(String.fromCharCode(v)){case\"h\":var A=Ae[f+2];A==\"h\".charCodeAt(0)?(f++,E=1):E=2;break;case\"l\":var A=Ae[f+2];A==\"l\".charCodeAt(0)?(f++,E=8):E=4;break;case\"L\":case\"q\":case\"j\":E=8;break;case\"z\":case\"t\":case\"I\":E=4;break;default:E=null}if(E&&f++,v=Ae[f+1],[\"d\",\"i\",\"u\",\"o\",\"x\",\"X\",\"p\"].indexOf(String.fromCharCode(v))!=-1){var m=v==\"d\".charCodeAt(0)||v==\"i\".charCodeAt(0);E=E||4;var t=e(\"i\"+8*E);if(8==E&&(t=le.makeBigInt(t[0],t[1],v==\"u\".charCodeAt(0))),E<=4){var S=Math.pow(256,E)-1;t=(m?y:g)(t&S,8*E)}var M,C=Math.abs(t),R=\"\";if(v==\"d\".charCodeAt(0)||v==\"i\".charCodeAt(0))M=y(t,8*E,1).toString(10);else if(v==\"u\".charCodeAt(0))M=g(t,8*E,1).toString(10),t=Math.abs(t);else if(v==\"o\".charCodeAt(0))M=(b?\"0\":\"\")+C.toString(8);else if(v==\"x\".charCodeAt(0)||v==\"X\".charCodeAt(0)){if(R=b?\"0x\":\"\",t<0){t=-t,M=(C-1).toString(16);for(var T=[],O=0;OP&&P>=-4?(v=(v==\"g\".charCodeAt(0)?\"f\":\"F\").charCodeAt(0),h-=P+1):(v=(v==\"g\".charCodeAt(0)?\"e\":\"E\").charCodeAt(0),h--),I=Math.min(h,20)}v==\"e\".charCodeAt(0)||v==\"E\".charCodeAt(0)?(M=t.toExponential(I),/[eE][-+]\\\\d$/.test(M)&&(M=M.slice(0,-1)+\"0\"+M.slice(-1))):v!=\"f\".charCodeAt(0)&&v!=\"F\".charCodeAt(0)||(M=t.toFixed(I));var D=M.split(\"e\");if(N&&!b)for(;D[0].length>1&&D[0].indexOf(\".\")!=-1&&(\"0\"==D[0].slice(-1)||\".\"==D[0].slice(-1));)D[0]=D[0].slice(0,-1);else for(b&&M.indexOf(\".\")==-1&&(D[0]+=\".\");h>I++;)D[0]+=\"0\";M=D[0]+(D.length>1?\"e\"+D[1]:\"\"),v==\"E\".charCodeAt(0)&&(M=M.toUpperCase()),o&&t>=0&&(M=\"+\"+M)}else M=(t<0?\"-\":\"\")+\"inf\",k=!1;for(;M.lengthh&&(L=L.slice(0,h))):L=p(\"(null)\",!0),!l)for(;L.length0;)s.push(\" \".charCodeAt(0));l||s.push(e(\"i8\"))}else if(v==\"n\".charCodeAt(0)){var X=e(\"i32*\");Se[X>>2]=s.length}else if(v==\"%\".charCodeAt(0))s.push(i);else for(var O=n;O=\"0\".charCodeAt(0)&&r<=\"9\".charCodeAt(0)}function Ha(r){for(var a;(a=Ae[r])&&Va(a);)r++;if(!a||!Ba(a))return 0;for(var e=r;(a=Ae[e])&&Ba(a);)e++;return Math.floor(Number(s(r).substr(0,e-r)))}function Ka(r){throw ke=!0,\"ABORT: \"+r+\", at \"+(new Error).stack}function Ya(r){return Ya.ret||(Ya.ret=_([0],\"i32\",we)),Se[Ya.ret>>2]=r,r}function Ga(r,a,e,i){var v=$e.streams[r];if(!v||v.object.isDevice)return Ya(Ge.EBADF),-1;if(v.isWrite){if(v.object.isFolder)return Ya(Ge.EISDIR),-1;if(e<0||i<0)return Ya(Ge.EINVAL),-1;for(var t=v.object.contents;t.length>2]=a),a}function Ja(){return Ya.ret}function re(r){var a=re;a.called||(Ie=o(Ie),a.called=!0);var e=Ie;return 0!=r&&le.staticAlloc(r),e}function ae(){return Se[ae.buf>>2]}function ee(r){r=r||Module.arguments,k();var a=null;return Module._main&&(a=Module.callMain(r),Module.noExitRuntime||u()),a}var ie=[],ve=false,te=\"object\"==typeof window,fe=\"function\"==typeof importScripts,_e=!te&&!ve&&!fe;if(ve){print=function(r){process.stdout.write(r+\"\\\\n\")},printErr=function(r){process.stderr.write(r+\"\\\\n\")};var se=require(\"fs\");read=function(r){var a=se.readFileSync(r).toString();return a||\"/\"==r[0]||(r=__dirname.split(\"/\").slice(0,-1).join(\"/\")+\"/src/\"+r,a=se.readFileSync(r).toString()),a},load=function(a){r(read(a))},ie=process.argv.slice(2)}else if(_e)this.read||(this.read=function(r){snarf(r)}),\"undefined\"!=typeof scriptArgs?ie=scriptArgs:\"undefined\"!=typeof arguments&&(ie=arguments);else if(te)this.print=printErr=function(r){console.log(r)},this.read=function(r){var a=new XMLHttpRequest;return a.open(\"GET\",r,!1),a.send(null),a.responseText},this.arguments&&(ie=arguments);else{if(!fe)throw\"Unknown runtime environment. Where are we?\";this.load=importScripts}\"undefined\"==typeof load&&\"undefined\"!=typeof read&&(this.load=function(a){r(read(a))}),\"undefined\"==typeof printErr&&(this.printErr=function(){}),\"undefined\"==typeof print&&(this.print=printErr);try{this.Module=Module}catch(r){this.Module=Module={}}Module.arguments||(Module.arguments=ie),Module.print&&(print=Module.print);var ne,oe,le={stackSave:function(){return Oe},stackRestore:function(r){Oe=r},forceAlign:function(r,a){if(a=a||4,1==a)return r;if(isNumber(r)&&isNumber(a))return Math.ceil(r/a)*a;if(isNumber(a)&&isPowerOfTwo(a)){var e=log2(a);return\"((((\"+r+\")+\"+(a-1)+\")>>\"+e+\")<<\"+e+\")\"}return\"Math.ceil((\"+r+\")/\"+a+\")*\"+a},isNumberType:function(r){return r in le.INT_TYPES||r in le.FLOAT_TYPES},isPointerType:function(r){return\"*\"==r[r.length-1]},isStructType:function(r){return!isPointerType(r)&&(!!/^\\\\[\\\\d+\\\\ x\\\\ (.*)\\\\]/.test(r)||(!!/?/.test(r)||\"%\"==r[0]))},INT_TYPES:{i1:0,i8:0,i16:0,i32:0,i64:0},FLOAT_TYPES:{float:0,double:0},bitshift64:function(r,e,i,v){var t=Math.pow(2,v)-1;if(v<32)switch(i){case\"shl\":return[r<>>32-v];case\"ashr\":return[(r>>>v|(e&t)<<32-v)>>0>>>0,e>>v>>>0];case\"lshr\":return[(r>>>v|(e&t)<<32-v)>>>0,e>>>v]}else if(32==v)switch(i){case\"shl\":return[0,r];case\"ashr\":return[e,(0|e)<0?t:0];case\"lshr\":return[e,0]}else switch(i){case\"shl\":return[0,r<>v-32>>>0,(0|e)<0?t:0];case\"lshr\":return[e>>>v-32,0]}a(\"unknown bitshift64 op: \"+[value,i,v])},or64:function(r,a){var e=0|r|(0|a),i=4294967296*(Math.round(r/4294967296)|Math.round(a/4294967296));return e+i},and64:function(r,a){var e=(0|r)&(0|a),i=4294967296*(Math.round(r/4294967296)&Math.round(a/4294967296));return e+i},xor64:function(r,a){var e=(0|r)^(0|a),i=4294967296*(Math.round(r/4294967296)^Math.round(a/4294967296));return e+i},getNativeTypeSize:function(r,a){if(1==le.QUANTUM_SIZE)return 1;var i={\"%i1\":1,\"%i8\":1,\"%i16\":2,\"%i32\":4,\"%i64\":8,\"%float\":4,\"%double\":8}[\"%\"+r];if(!i)if(\"*\"==r[r.length-1])i=le.QUANTUM_SIZE;else if(\"i\"==r[0]){var v=parseInt(r.substr(1));e(v%8==0),i=v/8}return i},getNativeFieldSize:function(r){return Math.max(le.getNativeTypeSize(r),le.QUANTUM_SIZE)},dedup:function(r,a){var e={};return a?r.filter(function(r){return!e[r[a]]&&(e[r[a]]=!0,!0)}):r.filter(function(r){return!e[r]&&(e[r]=!0,!0)})},set:function(){for(var r=\"object\"==typeof arguments[0]?arguments[0]:arguments,a={},e=0;e=0&&a.push(f-e),e=f,f}),r.flatSize=le.alignMemory(r.flatSize,r.alignSize),0==a.length?r.flatFactor=r.flatSize:1==le.dedup(a).length&&(r.flatFactor=a[0]),r.needsFlattening=1!=r.flatFactor,r.flatIndexes},generateStructInfo:function(r,a,i){var v,t;if(a){if(i=i||0,v=(\"undefined\"==typeof Types?le.typeInfo:Types.types)[a],!v)return null;e(v.fields.length===r.length,\"Number of named fields must match the type for \"+a),t=v.flatIndexes}else{var v={fields:r.map(function(r){return r[0]})};t=le.calculateStructAlignment(v)}var f={__size__:v.flatSize};return a?r.forEach(function(r,a){if(\"string\"==typeof r)f[r]=t[a]+i;else{var e;for(var _ in r)e=_;f[e]=le.generateStructInfo(r[e],v.fields[a],t[a])}}):r.forEach(function(r,a){f[r[1]]=t[a]}),f},stackAlloc:function(r){var a=Oe;return Oe+=r,Oe=Oe+3>>2<<2,a},staticAlloc:function(r){var a=Ie;return Ie+=r,Ie=Ie+3>>2<<2,Ie>=Le&&l(),a},alignMemory:function(r,a){var e=r=Math.ceil(r/(a?a:4))*(a?a:4);return e},makeBigInt:function(r,a,e){var i=e?(r>>>0)+4294967296*(a>>>0):(r>>>0)+4294967296*(0|a);return i},QUANTUM_SIZE:4,__dummy__:0},be={MAX_ALLOWED:0,corrections:0,sigs:{},note:function(r,e,i){e||(this.corrections++,this.corrections>=this.MAX_ALLOWED&&a(\"\\\\n\\\\nToo many corrections!\"))},print:function(){}},ke=!1,ue=0,ce=this;Module.ccall=i,Module.setValue=t,Module.getValue=f;var he=0,de=1,we=2;Module.ALLOC_NORMAL=he,Module.ALLOC_STACK=de,Module.ALLOC_STATIC=we,Module.allocate=_,Module.Pointer_stringify=s,Module.Array_stringify=n;var pe,Ee,Ae,ge,ye,me,Se,Me,Ce,Re,Te,Oe,Ne,Ie,Pe=4096,De=Module.TOTAL_STACK||5242880,Le=Module.TOTAL_MEMORY||10485760;Module.FAST_MEMORY||2097152;e(!!(Int32Array&&Float64Array&&new Int32Array(1).subarray&&new Int32Array(1).set),\"Cannot fallback to non-typed array case: Code is too specialized\");var Fe=new ArrayBuffer(Le);Ae=new Int8Array(Fe),ye=new Int16Array(Fe),Se=new Int32Array(Fe),ge=new Uint8Array(Fe),me=new Uint16Array(Fe),Me=new Uint32Array(Fe),Ce=new Float32Array(Fe),Re=new Float64Array(Fe),Se[0]=255,e(255===ge[0]&&0===ge[3],\"Typed arrays 2 must be run on a little-endian system\");var Xe=p(\"(null)\");Ie=Xe.length;for(var je=0;je>2)),ze=(Ce.subarray(Ue>>2),Re.subarray(Ue>>3));Ne=Ue+8,Ie=o(Ne);var Ve=[],Be=[];Module.Array_copy=c,Module.TypedArray_copy=h,Module.String_len=d,Module.String_copy=w,Module.intArrayFromString=p,Module.intArrayToString=E,Module.writeStringToMemory=A;var He=[],Ke=0;O.X=1,N.X=1,V.X=1,H.X=1,G.X=1,W.X=1,q.X=1,$.X=1,rr.X=1,ar.X=1,er.X=1,vr.X=1,nr.X=1,or.X=1,kr.X=1,hr.X=1,Ar.X=1,Sr.X=1,Tr.X=1,Ir.X=1,Pr.X=1,Dr.X=1,Lr.X=1,Fr.X=1,Xr.X=1,zr.X=1,Vr.X=1,Br.X=1,Gr.X=1,$r.X=1,Module._malloc=Jr,Jr.X=1,ra.X=1,aa.X=1,ea.X=1,ia.X=1,Module._free=va,va.X=1,_a.X=1,sa.X=1,na.X=1,oa.X=1,la.X=1,da.X=1,Ma.X=1;var Ye,Ge={E2BIG:7,EACCES:13,EADDRINUSE:98,EADDRNOTAVAIL:99,EAFNOSUPPORT:97,EAGAIN:11,EALREADY:114,EBADF:9,EBADMSG:74,EBUSY:16,ECANCELED:125,ECHILD:10,ECONNABORTED:103,ECONNREFUSED:111,ECONNRESET:104,EDEADLK:35,EDESTADDRREQ:89,EDOM:33,EDQUOT:122,EEXIST:17,EFAULT:14,EFBIG:27,EHOSTUNREACH:113,EIDRM:43,EILSEQ:84,EINPROGRESS:115,EINTR:4,EINVAL:22,EIO:5,EISCONN:106,EISDIR:21,ELOOP:40,EMFILE:24,EMLINK:31,EMSGSIZE:90,EMULTIHOP:72,ENAMETOOLONG:36,ENETDOWN:100,ENETRESET:102,ENETUNREACH:101,ENFILE:23,ENOBUFS:105,ENODATA:61,ENODEV:19,ENOENT:2,ENOEXEC:8,ENOLCK:37,ENOLINK:67,ENOMEM:12,ENOMSG:42,ENOPROTOOPT:92,ENOSPC:28,ENOSR:63,ENOSTR:60,ENOSYS:38,ENOTCONN:107,ENOTDIR:20,ENOTEMPTY:39,ENOTRECOVERABLE:131,ENOTSOCK:88,ENOTSUP:95,ENOTTY:25,ENXIO:6,EOVERFLOW:75,EOWNERDEAD:130,EPERM:1,EPIPE:32,EPROTO:71,EPROTONOSUPPORT:93,EPROTOTYPE:91,ERANGE:34,EROFS:30,ESPIPE:29,ESRCH:3,ESTALE:116,ETIME:62,ETIMEDOUT:110,ETXTBSY:26,EWOULDBLOCK:11,EXDEV:18},We=0,Ze=0,Qe=0,qe=0,$e={currentPath:\"/\",nextInode:2,streams:[null],ignorePermissions:!0,absolutePath:function(r,a){if(\"string\"!=typeof r)return null;void 0===a&&(a=$e.currentPath),r&&\"/\"==r[0]&&(a=\"\");for(var e=a+\"/\"+r,i=e.split(\"/\").reverse(),v=[\"\"];i.length;){var t=i.pop();\"\"==t||\".\"==t||(\"..\"==t?v.length>1&&v.pop():v.push(t))}return 1==v.length?\"/\":v.join(\"/\")},analyzePath:function(r,a,e){var i={isRoot:!1,exists:!1,error:0,name:null,path:null,object:null,parentExists:!1,parentPath:null,parentObject:null};if(r=$e.absolutePath(r),\"/\"==r)i.isRoot=!0,i.exists=i.parentExists=!0,i.name=\"/\",i.path=i.parentPath=\"/\",i.object=i.parentObject=$e.root;else if(null!==r){e=e||0,r=r.slice(1).split(\"/\");for(var v=$e.root,t=[\"\"];r.length;){1==r.length&&v.isFolder&&(i.parentExists=!0,i.parentPath=1==t.length?\"/\":t.join(\"/\"),i.parentObject=v,i.name=r[0]);var f=r.shift();if(!v.isFolder){i.error=Ge.ENOTDIR;break}if(!v.read){i.error=Ge.EACCES;break}if(!v.contents.hasOwnProperty(f)){i.error=Ge.ENOENT;break}if(v=v.contents[f],v.link&&(!a||0!=r.length)){if(e>40){i.error=Ge.ELOOP;break}var _=$e.absolutePath(v.link,t.join(\"/\"));return $e.analyzePath([_].concat(r).join(\"/\"),a,e+1)}t.push(f),0==r.length&&(i.exists=!0,i.path=t.join(\"/\"),i.object=v)}return i}return i},findObject:function(r,a){$e.ensureRoot();var e=$e.analyzePath(r,a);return e.exists?e.object:(Ya(e.error),null)},createObject:function(r,a,e,i,v){if(r||(r=\"/\"),\"string\"==typeof r&&(r=$e.findObject(r)),!r)throw Ya(Ge.EACCES),new Error(\"Parent path must exist.\");if(!r.isFolder)throw Ya(Ge.ENOTDIR),\nnew Error(\"Parent must be a folder.\");if(!r.write&&!$e.ignorePermissions)throw Ya(Ge.EACCES),new Error(\"Parent folder must be writeable.\");if(!a||\".\"==a||\"..\"==a)throw Ya(Ge.ENOENT),new Error(\"Name must not be empty.\");if(r.contents.hasOwnProperty(a))throw Ya(Ge.EEXIST),new Error(\"Can't overwrite object.\");r.contents[a]={read:void 0===i||i,write:void 0!==v&&v,timestamp:Date.now(),inodeNumber:$e.nextInode++};for(var t in e)e.hasOwnProperty(t)&&(r.contents[a][t]=e[t]);return r.contents[a]},createFolder:function(r,a,e,i){var v={isFolder:!0,isDevice:!1,contents:{}};return $e.createObject(r,a,v,e,i)},createPath:function(r,a,e,i){var v=$e.findObject(r);if(null===v)throw new Error(\"Invalid parent.\");for(a=a.split(\"/\").reverse();a.length;){var t=a.pop();t&&(v.contents.hasOwnProperty(t)||$e.createFolder(v,t,e,i),v=v.contents[t])}return v},createFile:function(r,a,e,i,v){return e.isFolder=!1,$e.createObject(r,a,e,i,v)},createDataFile:function(r,a,e,i,v){if(\"string\"==typeof e){for(var t=new Array(e.length),f=0,_=e.length;f<_;++f)t[f]=e.charCodeAt(f);e=t}var s={isDevice:!1,contents:e};return $e.createFile(r,a,s,i,v)},createLazyFile:function(r,a,e,i,v){var t={isDevice:!1,url:e};return $e.createFile(r,a,t,i,v)},createLink:function(r,a,e,i,v){var t={isDevice:!1,link:e};return $e.createFile(r,a,t,i,v)},createDevice:function(r,a,e,i){if(!e&&!i)throw new Error(\"A device must have at least one callback defined.\");var v={isDevice:!0,input:e,output:i};return $e.createFile(r,a,v,Boolean(e),Boolean(i))},forceLoadFile:function(r){if(r.isDevice||r.isFolder||r.link||r.contents)return!0;var a=!0;if(\"undefined\"!=typeof XMLHttpRequest)e(\"Cannot do synchronous binary XHRs in modern browsers. Use --embed-file or --preload-file in emcc\");else{if(\"undefined\"==typeof read)throw new Error(\"Cannot load without read() or XMLHttpRequest.\");try{r.contents=p(read(r.url),!0)}catch(r){a=!1}}return a||Ya(Ge.EIO),a},ensureRoot:function(){$e.root||($e.root={read:!0,write:!0,isFolder:!0,isDevice:!1,timestamp:Date.now(),inodeNumber:1,contents:{}})},init:function(r,a,i){function v(r){null===r||r===\"\\\\n\".charCodeAt(0)?(a.printer(a.buffer.join(\"\")),a.buffer=[]):a.buffer.push(String.fromCharCode(r))}e(!$e.init.initialized,\"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)\"),$e.init.initialized=!0,$e.ensureRoot(),r=r||Module.stdin,a=a||Module.stdout,i=i||Module.stderr;var t=!0,f=!0,s=!0;r||(t=!1,r=function(){if(!r.cache||!r.cache.length){var a;\"undefined\"!=typeof window&&\"function\"==typeof window.prompt?a=window.prompt(\"Input: \"):\"function\"==typeof readline&&(a=readline()),a||(a=\"\"),r.cache=p(a+\"\\\\n\",!0)}return r.cache.shift()}),a||(f=!1,a=v),a.printer||(a.printer=print),a.buffer||(a.buffer=[]),i||(s=!1,i=v),i.printer||(i.printer=print),i.buffer||(i.buffer=[]),$e.createFolder(\"/\",\"tmp\",!0,!0);var n=$e.createFolder(\"/\",\"dev\",!0,!0),o=$e.createDevice(n,\"stdin\",r),l=$e.createDevice(n,\"stdout\",null,a),b=$e.createDevice(n,\"stderr\",null,i);$e.createDevice(n,\"tty\",r,a),$e.streams[1]={path:\"/dev/stdin\",object:o,position:0,isRead:!0,isWrite:!1,isAppend:!1,isTerminal:!t,error:!1,eof:!1,ungotten:[]},$e.streams[2]={path:\"/dev/stdout\",object:l,position:0,isRead:!1,isWrite:!0,isAppend:!1,isTerminal:!f,error:!1,eof:!1,ungotten:[]},$e.streams[3]={path:\"/dev/stderr\",object:b,position:0,isRead:!1,isWrite:!0,isAppend:!1,isTerminal:!s,error:!1,eof:!1,ungotten:[]},We=_([1],\"void*\",we),Ze=_([2],\"void*\",we),Qe=_([3],\"void*\",we),$e.createPath(\"/\",\"dev/shm/tmp\",!0,!0),$e.streams[We]=$e.streams[1],$e.streams[Ze]=$e.streams[2],$e.streams[Qe]=$e.streams[3],qe=_([_([0,0,0,0,We,0,0,0,Ze,0,0,0,Qe,0,0,0],\"void*\",we)],\"void*\",we)},quit:function(){$e.init.initialized&&($e.streams[2]&&$e.streams[2].object.output.buffer.length>0&&$e.streams[2].object.output(\"\\\\n\".charCodeAt(0)),$e.streams[3]&&$e.streams[3].object.output.buffer.length>0&&$e.streams[3].object.output(\"\\\\n\".charCodeAt(0)))}},Je=Ja;Ve.unshift({func:function(){$e.ignorePermissions=!1,$e.init.initialized||$e.init()}}),Be.push({func:function(){$e.quit()}}),Ya(0),ae.buf=_(12,\"void*\",we),Module.callMain=function(r){function a(){for(var r=0;r<3;r++)i.push(0)}var e=r.length+1,i=[_(p(\"/bin/this.program\"),\"i8\",we)];a();for(var v=0;v>2]=0|He.__str,Se[ri+4>>2]=0|He.__str1,Se[ri+16>>2]=0|He.__str2,Se[ri+20>>2]=0|He.__str3,Se[ri+32>>2]=0|He.__str4,Se[ri+36>>2]=0|He.__str5,Se[ri+48>>2]=0|He.__str6,Se[ri+52>>2]=0|He.__str7,Se[ri+64>>2]=0|He.__str8,Se[ri+68>>2]=0|He.__str7,Se[ri+80>>2]=0|He.__str9,Se[ri+84>>2]=0|He.__str10,Se[ri+96>>2]=0|He.__str11,Se[ri+100>>2]=0|He.__str12,Se[ri+112>>2]=0|He.__str13,Se[ri+116>>2]=0|He.__str14,Se[ri+128>>2]=0|He.__str15,Se[ri+132>>2]=0|He.__str16,Se[ri+144>>2]=0|He.__str17,Se[ri+148>>2]=0|He.__str18,Se[ri+160>>2]=0|He.__str19,Se[ri+164>>2]=0|He.__str20,Se[ri+176>>2]=0|He.__str21,Se[ri+180>>2]=0|He.__str22,Se[ri+192>>2]=0|He.__str23,Se[ri+196>>2]=0|He.__str24,Se[ri+208>>2]=0|He.__str25,Se[ri+212>>2]=0|He.__str26,Se[ri+224>>2]=0|He.__str27,Se[ri+228>>2]=0|He.__str28,Se[ri+240>>2]=0|He.__str29,Se[ri+244>>2]=0|He.__str30,Se[ri+256>>2]=0|He.__str31,Se[ri+260>>2]=0|He.__str32,Se[ri+272>>2]=0|He.__str33,Se[ri+276>>2]=0|He.__str34,Se[ri+288>>2]=0|He.__str35,Se[ri+292>>2]=0|He.__str36,Se[ri+304>>2]=0|He.__str37,Se[ri+308>>2]=0|He.__str38,Se[ri+320>>2]=0|He.__str39,Se[ri+324>>2]=0|He.__str40,Se[ri+336>>2]=0|He.__str41,Se[ri+340>>2]=0|He.__str42,Se[ri+352>>2]=0|He.__str43,Se[ri+356>>2]=0|He.__str44,Se[ri+368>>2]=0|He.__str45,Se[ri+372>>2]=0|He.__str46,Se[ri+384>>2]=0|He.__str47,Se[ri+388>>2]=0|He.__str48,Se[ri+400>>2]=0|He.__str49,Se[ri+404>>2]=0|He.__str119289,Se[ri+416>>2]=0|He.__str51,Se[ri+420>>2]=0|He.__str20,Se[ri+432>>2]=0|He.__str52,Se[ri+436>>2]=0|He.__str53,Se[ri+448>>2]=0|He.__str54,Se[ri+452>>2]=0|He.__str55,Se[ri+464>>2]=0|He.__str56,Se[ri+468>>2]=0|He.__str57,Se[ri+480>>2]=0|He.__str58,Se[ri+484>>2]=0|He.__str119289,Se[ri+496>>2]=0|He.__str59,Se[ri+500>>2]=0|He.__str60,Se[ri+512>>2]=0|He.__str61,Se[ri+516>>2]=0|He.__str62,Se[ri+528>>2]=0|He.__str63,Se[ri+532>>2]=0|He.__str64,Se[ri+544>>2]=0|He.__str65,Se[ri+548>>2]=0|He.__str66,Se[ri+560>>2]=0|He.__str67,Se[ri+564>>2]=0|He.__str68,Se[ri+576>>2]=0|He.__str69,Se[ri+580>>2]=0|He.__str70,Se[ri+592>>2]=0|He.__str71,Se[ri+596>>2]=0|He.__str72,Se[ri+608>>2]=0|He.__str73,Se[ri+612>>2]=0|He.__str74,Se[ri+624>>2]=0|He.__str75,Se[ri+628>>2]=0|He.__str76,Se[ri+640>>2]=0|He.__str77,Se[ri+644>>2]=0|He.__str72,Se[ri+656>>2]=0|He.__str78,Se[ri+660>>2]=0|He.__str79,Se[ri+672>>2]=0|He.__str80,Se[ri+676>>2]=0|He.__str81,Se[ri+688>>2]=0|He.__str82,Se[ri+692>>2]=0|He.__str83,Se[ri+704>>2]=0|He.__str84,Se[ri+708>>2]=0|He.__str85,Se[ri+720>>2]=0|He.__str86,Se[ri+724>>2]=0|He.__str87,Se[ri+736>>2]=0|He.__str88,Se[ri+740>>2]=0|He.__str89,Se[ri+752>>2]=0|He.__str90,Se[ri+756>>2]=0|He.__str91,Se[ri+768>>2]=0|He.__str92,Se[ri+772>>2]=0|He.__str91,Se[ai>>2]=0|He.__str145315,Se[ai+8>>2]=0|He.__str145315,Se[ai+20>>2]=0|He.__str167337,Se[ai+28>>2]=0|He.__str95,Se[ai+40>>2]=0|He.__str146316,Se[ai+48>>2]=0|He.__str97,Se[ai+60>>2]=0|He.__str155325,Se[ai+68>>2]=0|He.__str155325,Se[ai+80>>2]=0|He.__str156326,Se[ai+88>>2]=0|He.__str156326,Se[ai+100>>2]=0|He.__str154324,Se[ai+108>>2]=0|He.__str154324,Se[ai+120>>2]=0|He.__str101,Se[ai+128>>2]=0|He.__str101,Se[ai+140>>2]=0|He.__str147317,Se[ai+148>>2]=0|He.__str147317,Se[ai+160>>2]=0|He.__str150320,Se[ai+168>>2]=0|He.__str150320,Se[ai+180>>2]=0|He.__str151321,Se[ai+188>>2]=0|He.__str105,Se[ai+220>>2]=0|He.__str152322,Se[ai+228>>2]=0|He.__str152322,Se[ai+240>>2]=0|He.__str153323,Se[ai+248>>2]=0|He.__str153323,Se[ai+260>>2]=0|He.__str165335,Se[ai+268>>2]=0|He.__str165335,Se[ai+280>>2]=0|He.__str166336,Se[ai+288>>2]=0|He.__str166336,Se[ai+360>>2]=0|He.__str148318,Se[ai+368>>2]=0|He.__str148318,Se[ai+380>>2]=0|He.__str149319,Se[ai+388>>2]=0|He.__str149319,Se[ai+420>>2]=0|He.__str84254,Se[ai+428>>2]=0|He.__str84254,Se[ai+440>>2]=0|He.__str168338,Se[ai+448>>2]=0|He.__str146316,Se[ai+460>>2]=0|He.__str114,Se[ai+468>>2]=0|He.__str152322,Se[ai+480>>2]=0|He.__str115,Se[ai+488>>2]=0|He.__str115,Se[ai+500>>2]=0|He.__str110280,Se[ai+508>>2]=0|He.__str110280,Se[ei+4>>2]=0|He.__str152,Se[ei+12>>2]=0|He.__str152,Se[ei+32>>2]=0|He.__str153,Se[ei+40>>2]=0|He.__str153,Se[ei+48>>2]=0|He.__str154,Se[ei+60>>2]=0|He.__str155,Se[ei+68>>2]=0|He.__str155,Se[ei+76>>2]=0|He.__str156,Se[ei+88>>2]=0|He.__str157,Se[ei+96>>2]=0|He.__str158,Se[ei+104>>2]=0|He.__str156,Se[ei+116>>2]=0|He.__str159,Se[ei+124>>2]=0|He.__str160,Se[ei+132>>2]=0|He.__str161,Se[ei+144>>2]=0|He.__str162,Se[ei+152>>2]=0|He.__str163,Se[ei+160>>2]=0|He.__str164,Se[ei+172>>2]=0|He.__str165,Se[ei+180>>2]=0|He.__str166,Se[ei+188>>2]=0|He.__str167,Se[si+4>>2]=bi,Se[ni+4>>2]=ki,oi=_([2,0,0,0,0],[\"i8*\",0,0,0,0],we),Se[bi>>2]=oi+8|0,Se[bi+4>>2]=0|He.__ZTSSt9bad_alloc,Se[bi+8>>2]=li,Se[ki>>2]=oi+8|0,Se[ki+4>>2]=0|He.__ZTSSt20bad_array_new_length,Se[ki+8>>2]=bi,ui=16,ci=6,hi=18,di=6,wi=6,pe=[0,0,Jr,0,va,0,ya,0,ga,0,wa,0,Sa,0,pa,0,Ea,0,ma,0],Module.FUNCTION_TABLE=pe,Module.run=ee,Module.preRun&&Module.preRun(),0==Ke){ee()}Module.postRun&&Module.postRun(),Module.___cxa_demangle=G;var pi=v(\"__cxa_demangle\",\"string\",[\"string\",\"string\",\"number\",\"number\"]);return function(r){return pi(r,\"\",1,0)}}();\n`;\n\n/***/ }),\n\n/***/ 121:\n/***/ ((__unused_webpack_module, exports, __webpack_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.Flamechart = void 0;\nconst utils_1 = __webpack_require__(844);\nconst math_1 = __webpack_require__(293);\nclass Flamechart {\n constructor(source) {\n this.source = source;\n // Bottom to top\n this.layers = [];\n this.totalWeight = 0;\n this.minFrameWidth = 1;\n const stack = [];\n const openFrame = (node, value) => {\n const parent = utils_1.lastOf(stack);\n const frame = {\n node,\n parent,\n children: [],\n start: value,\n end: value\n };\n if (parent) {\n parent.children.push(frame);\n }\n stack.push(frame);\n };\n this.minFrameWidth = Infinity;\n const closeFrame = (node, value) => {\n console.assert(stack.length > 0);\n const stackTop = stack.pop();\n stackTop.end = value;\n if (stackTop.end - stackTop.start === 0) return;\n const layerIndex = stack.length;\n while (this.layers.length <= layerIndex) this.layers.push([]);\n this.layers[layerIndex].push(stackTop);\n this.minFrameWidth = Math.min(this.minFrameWidth, stackTop.end - stackTop.start);\n };\n this.totalWeight = source.getTotalWeight();\n source.forEachCall(openFrame, closeFrame);\n if (!isFinite(this.minFrameWidth)) this.minFrameWidth = 1;\n }\n getTotalWeight() {\n return this.totalWeight;\n }\n getLayers() {\n return this.layers;\n }\n getColorBucketForFrame(frame) {\n return this.source.getColorBucketForFrame(frame);\n }\n getMinFrameWidth() {\n return this.minFrameWidth;\n }\n formatValue(v) {\n return this.source.formatValue(v);\n }\n getClampedViewportWidth(viewportWidth) {\n const maxWidth = this.getTotalWeight();\n // In order to avoid floating point error, we cap the maximum zoom. In\n // particular, it's important that at the maximum zoom level, the total\n // trace size + a viewport width is not equal to the trace size due to\n // floating point rounding.\n //\n // For instance, if the profile's total weight is 2^60, and the viewport\n // size is 1, trying to move one viewport width right will result in no\n // change because 2^60 + 1 = 2^60 in floating point arithmetic. JavaScript\n // numbers are 64 bit floats, and therefore have 53 mantissa bits. You can\n // see this for yourself in the console. Try:\n //\n // > Math.pow(2, 60) + 1 === Math.pow(2, 60)\n // true\n // > Math.pow(2, 53) + 1 === Math.pow(2, 53)\n // true\n // > Math.pow(2, 52) + 1 === Math.pow(2, 52)\n // false\n //\n // We use 2^40 as a cap instead, since we want to be able to make small\n // adjustments within a viewport width.\n //\n // For reference, this will still allow you to zoom until 1 nanosecond fills\n // the screen in a profile with a duration of over 18 minutes.\n //\n // > Math.pow(2, 40) / (60 * Math.pow(10, 9))\n // 18.325193796266667\n //\n const maxZoom = Math.pow(2, 40);\n // In addition to capping zoom to avoid floating point error, we further cap\n // zoom to avoid letting you zoom in so that the smallest element more than\n // fills the screen, since that probably isn't useful. The final zoom cap is\n // determined by the minimum zoom of either 2^40x zoom or the necessary zoom\n // for the smallest frame to fill the screen three times.\n const minWidth = math_1.clamp(3 * this.getMinFrameWidth(), maxWidth / maxZoom, maxWidth);\n return math_1.clamp(viewportWidth, minWidth, maxWidth);\n }\n // Given a desired config-space viewport rectangle, clamp the rectangle so\n // that it fits within the given flamechart. This prevents the viewport from\n // extending past the bounds of the flamechart or zooming in too far.\n getClampedConfigSpaceViewportRect({\n configSpaceViewportRect,\n renderInverted\n }) {\n const configSpaceSize = new math_1.Vec2(this.getTotalWeight(), this.getLayers().length);\n const width = this.getClampedViewportWidth(configSpaceViewportRect.size.x);\n const size = configSpaceViewportRect.size.withX(width);\n const origin = math_1.Vec2.clamp(configSpaceViewportRect.origin, new math_1.Vec2(0, renderInverted ? 0 : -1), math_1.Vec2.max(math_1.Vec2.zero, configSpaceSize.minus(size).plus(new math_1.Vec2(0, 1))));\n return new math_1.Rect(origin, configSpaceViewportRect.size.withX(width));\n }\n}\nexports.Flamechart = Flamechart;\n\n/***/ }),\n\n/***/ 293:\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.Rect = exports.AffineTransform = exports.Vec2 = exports.clamp = void 0;\nfunction clamp(x, minVal, maxVal) {\n if (x < minVal) return minVal;\n if (x > maxVal) return maxVal;\n return x;\n}\nexports.clamp = clamp;\nlet Vec2 = /** @class */(() => {\n class Vec2 {\n constructor(x, y) {\n this.x = x;\n this.y = y;\n }\n withX(x) {\n return new Vec2(x, this.y);\n }\n withY(y) {\n return new Vec2(this.x, y);\n }\n plus(other) {\n return new Vec2(this.x + other.x, this.y + other.y);\n }\n minus(other) {\n return new Vec2(this.x - other.x, this.y - other.y);\n }\n times(scalar) {\n return new Vec2(this.x * scalar, this.y * scalar);\n }\n timesPointwise(other) {\n return new Vec2(this.x * other.x, this.y * other.y);\n }\n dividedByPointwise(other) {\n return new Vec2(this.x / other.x, this.y / other.y);\n }\n dot(other) {\n return this.x * other.x + this.y * other.y;\n }\n equals(other) {\n return this.x === other.x && this.y === other.y;\n }\n approxEquals(other, epsilon = 1e-9) {\n return Math.abs(this.x - other.x) < epsilon && Math.abs(this.y - other.y) < epsilon;\n }\n length2() {\n return this.dot(this);\n }\n length() {\n return Math.sqrt(this.length2());\n }\n abs() {\n return new Vec2(Math.abs(this.x), Math.abs(this.y));\n }\n static min(a, b) {\n return new Vec2(Math.min(a.x, b.x), Math.min(a.y, b.y));\n }\n static max(a, b) {\n return new Vec2(Math.max(a.x, b.x), Math.max(a.y, b.y));\n }\n static clamp(v, min, max) {\n return new Vec2(clamp(v.x, min.x, max.x), clamp(v.y, min.y, max.y));\n }\n flatten() {\n return [this.x, this.y];\n }\n }\n Vec2.zero = new Vec2(0, 0);\n Vec2.unit = new Vec2(1, 1);\n return Vec2;\n})();\nexports.Vec2 = Vec2;\nclass AffineTransform {\n constructor(m00 = 1, m01 = 0, m02 = 0, m10 = 0, m11 = 1, m12 = 0) {\n this.m00 = m00;\n this.m01 = m01;\n this.m02 = m02;\n this.m10 = m10;\n this.m11 = m11;\n this.m12 = m12;\n }\n withScale(s) {\n let {\n m00,\n m01,\n m02,\n m10,\n m11,\n m12\n } = this;\n m00 = s.x;\n m11 = s.y;\n return new AffineTransform(m00, m01, m02, m10, m11, m12);\n }\n static withScale(s) {\n return new AffineTransform().withScale(s);\n }\n scaledBy(s) {\n return AffineTransform.withScale(s).times(this);\n }\n getScale() {\n return new Vec2(this.m00, this.m11);\n }\n withTranslation(t) {\n let {\n m00,\n m01,\n m02,\n m10,\n m11,\n m12\n } = this;\n m02 = t.x;\n m12 = t.y;\n return new AffineTransform(m00, m01, m02, m10, m11, m12);\n }\n static withTranslation(t) {\n return new AffineTransform().withTranslation(t);\n }\n getTranslation() {\n return new Vec2(this.m02, this.m12);\n }\n translatedBy(t) {\n return AffineTransform.withTranslation(t).times(this);\n }\n static betweenRects(from, to) {\n return AffineTransform.withTranslation(from.origin.times(-1)).scaledBy(new Vec2(to.size.x / from.size.x, to.size.y / from.size.y)).translatedBy(to.origin);\n }\n times(other) {\n const m00 = this.m00 * other.m00 + this.m01 * other.m10;\n const m01 = this.m00 * other.m01 + this.m01 * other.m11;\n const m02 = this.m00 * other.m02 + this.m01 * other.m12 + this.m02;\n const m10 = this.m10 * other.m00 + this.m11 * other.m10;\n const m11 = this.m10 * other.m01 + this.m11 * other.m11;\n const m12 = this.m10 * other.m02 + this.m11 * other.m12 + this.m12;\n return new AffineTransform(m00, m01, m02, m10, m11, m12);\n }\n equals(other) {\n return this.m00 == other.m00 && this.m01 == other.m01 && this.m02 == other.m02 && this.m10 == other.m10 && this.m11 == other.m11 && this.m12 == other.m12;\n }\n approxEquals(other, epsilon = 1e-9) {\n return Math.abs(this.m00 - other.m00) < epsilon && Math.abs(this.m01 - other.m01) < epsilon && Math.abs(this.m02 - other.m02) < epsilon && Math.abs(this.m10 - other.m10) < epsilon && Math.abs(this.m11 - other.m11) < epsilon && Math.abs(this.m12 - other.m12) < epsilon;\n }\n timesScalar(s) {\n const {\n m00,\n m01,\n m02,\n m10,\n m11,\n m12\n } = this;\n return new AffineTransform(s * m00, s * m01, s * m02, s * m10, s * m11, s * m12);\n }\n det() {\n const {\n m00,\n m01,\n m02,\n m10,\n m11,\n m12\n } = this;\n const m20 = 0;\n const m21 = 0;\n const m22 = 1;\n return m00 * (m11 * m22 - m12 * m21) - m01 * (m10 * m22 - m12 * m20) + m02 * (m10 * m21 - m11 * m20);\n }\n adj() {\n const {\n m00,\n m01,\n m02,\n m10,\n m11,\n m12\n } = this;\n const m20 = 0;\n const m21 = 0;\n const m22 = 1;\n // Adjugate matrix (a) is the transpose of the\n // cofactor matrix (c).\n //\n // 00 01 02\n // 10 11 12\n // 20 21 22\n const a00 = /* c00 = */+(m11 * m22 - m12 * m21);\n const a01 = /* c10 = */-(m01 * m22 - m02 * m21);\n const a02 = /* c20 = */+(m01 * m12 - m02 * m11);\n const a10 = /* c01 = */-(m10 * m22 - m12 * m20);\n const a11 = /* c11 = */+(m00 * m22 - m02 * m20);\n const a12 = /* c21 = */-(m00 * m12 - m02 * m10);\n return new AffineTransform(a00, a01, a02, a10, a11, a12);\n }\n inverted() {\n const det = this.det();\n if (det === 0) return null;\n const adj = this.adj();\n return adj.timesScalar(1 / det);\n }\n transformVector(v) {\n return new Vec2(v.x * this.m00 + v.y * this.m01, v.x * this.m10 + v.y * this.m11);\n }\n inverseTransformVector(v) {\n const inv = this.inverted();\n if (!inv) return null;\n return inv.transformVector(v);\n }\n transformPosition(v) {\n return new Vec2(v.x * this.m00 + v.y * this.m01 + this.m02, v.x * this.m10 + v.y * this.m11 + this.m12);\n }\n inverseTransformPosition(v) {\n const inv = this.inverted();\n if (!inv) return null;\n return inv.transformPosition(v);\n }\n transformRect(r) {\n const size = this.transformVector(r.size);\n const origin = this.transformPosition(r.origin);\n if (size.x < 0 && size.y < 0) {\n return new Rect(origin.plus(size), size.abs());\n } else if (size.x < 0) {\n return new Rect(origin.withX(origin.x + size.x), size.abs());\n } else if (size.y < 0) {\n return new Rect(origin.withY(origin.y + size.y), size.abs());\n }\n return new Rect(origin, size);\n }\n inverseTransformRect(r) {\n const inv = this.inverted();\n if (!inv) return null;\n return inv.transformRect(r);\n }\n flatten() {\n // Flatten into GLSL format\n // prettier-ignore\n return [this.m00, this.m10, 0, this.m01, this.m11, 0, this.m02, this.m12, 1];\n }\n}\nexports.AffineTransform = AffineTransform;\nlet Rect = /** @class */(() => {\n class Rect {\n constructor(origin, size) {\n this.origin = origin;\n this.size = size;\n }\n isEmpty() {\n return this.width() == 0 || this.height() == 0;\n }\n width() {\n return this.size.x;\n }\n height() {\n return this.size.y;\n }\n left() {\n return this.origin.x;\n }\n right() {\n return this.left() + this.width();\n }\n top() {\n return this.origin.y;\n }\n bottom() {\n return this.top() + this.height();\n }\n topLeft() {\n return this.origin;\n }\n topRight() {\n return this.origin.plus(new Vec2(this.width(), 0));\n }\n bottomRight() {\n return this.origin.plus(this.size);\n }\n bottomLeft() {\n return this.origin.plus(new Vec2(0, this.height()));\n }\n withOrigin(origin) {\n return new Rect(origin, this.size);\n }\n withSize(size) {\n return new Rect(this.origin, size);\n }\n closestPointTo(p) {\n return new Vec2(clamp(p.x, this.left(), this.right()), clamp(p.y, this.top(), this.bottom()));\n }\n distanceFrom(p) {\n return p.minus(this.closestPointTo(p)).length();\n }\n contains(p) {\n return this.distanceFrom(p) === 0;\n }\n hasIntersectionWith(other) {\n const top = Math.max(this.top(), other.top());\n const bottom = Math.max(top, Math.min(this.bottom(), other.bottom()));\n if (bottom - top === 0) return false;\n const left = Math.max(this.left(), other.left());\n const right = Math.max(left, Math.min(this.right(), other.right()));\n if (right - left === 0) return false;\n return true;\n }\n intersectWith(other) {\n const topLeft = Vec2.max(this.topLeft(), other.topLeft());\n const bottomRight = Vec2.max(topLeft, Vec2.min(this.bottomRight(), other.bottomRight()));\n return new Rect(topLeft, bottomRight.minus(topLeft));\n }\n equals(other) {\n return this.origin.equals(other.origin) && this.size.equals(other.size);\n }\n approxEquals(other) {\n return this.origin.approxEquals(other.origin) && this.size.approxEquals(other.size);\n }\n area() {\n return this.size.x * this.size.y;\n }\n }\n Rect.empty = new Rect(Vec2.zero, Vec2.zero);\n Rect.unit = new Rect(Vec2.zero, Vec2.unit);\n Rect.NDC = new Rect(new Vec2(-1, -1), new Vec2(2, 2));\n return Rect;\n})();\nexports.Rect = Rect;\n\n/***/ }),\n\n/***/ 211:\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n\n\nvar __createBinding = this && this.__createBinding || (Object.create ? function (o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, {\n enumerable: true,\n get: function () {\n return m[k];\n }\n });\n} : function (o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\nvar __setModuleDefault = this && this.__setModuleDefault || (Object.create ? function (o, v) {\n Object.defineProperty(o, \"default\", {\n enumerable: true,\n value: v\n });\n} : function (o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = this && this.__importStar || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __awaiter = this && this.__awaiter || function (thisArg, _arguments, P, generator) {\n function adopt(value) {\n return value instanceof P ? value : new P(function (resolve) {\n resolve(value);\n });\n }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) {\n try {\n step(generator.next(value));\n } catch (e) {\n reject(e);\n }\n }\n function rejected(value) {\n try {\n step(generator[\"throw\"](value));\n } catch (e) {\n reject(e);\n }\n }\n function step(result) {\n result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);\n }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.CallTreeProfileBuilder = exports.StackListProfileBuilder = exports.Profile = exports.CallTreeNode = exports.Frame = exports.HasWeights = void 0;\nconst utils_1 = __webpack_require__(844);\nconst value_formatters_1 = __webpack_require__(218);\nconst demangleCppModule = Promise.resolve().then(() => __importStar(__webpack_require__(765)));\n// Force eager loading of the module\ndemangleCppModule.then(() => {});\nclass HasWeights {\n constructor() {\n this.selfWeight = 0;\n this.totalWeight = 0;\n }\n getSelfWeight() {\n return this.selfWeight;\n }\n getTotalWeight() {\n return this.totalWeight;\n }\n addToTotalWeight(delta) {\n this.totalWeight += delta;\n }\n addToSelfWeight(delta) {\n this.selfWeight += delta;\n }\n overwriteWeightWith(other) {\n this.selfWeight = other.selfWeight;\n this.totalWeight = other.totalWeight;\n }\n}\nexports.HasWeights = HasWeights;\nlet Frame = /** @class */(() => {\n class Frame extends HasWeights {\n constructor(info) {\n super();\n this.key = info.key;\n this.name = info.name;\n this.file = info.file;\n this.line = info.line;\n this.col = info.col;\n }\n static getOrInsert(set, info) {\n return set.getOrInsert(new Frame(info));\n }\n }\n Frame.root = new Frame({\n key: '(speedscope root)',\n name: '(speedscope root)'\n });\n return Frame;\n})();\nexports.Frame = Frame;\nclass CallTreeNode extends HasWeights {\n constructor(frame, parent) {\n super();\n this.frame = frame;\n this.parent = parent;\n this.children = [];\n // If a node is \"frozen\", it means it should no longer be mutated.\n this.frozen = false;\n }\n isRoot() {\n return this.frame === Frame.root;\n }\n isFrozen() {\n return this.frozen;\n }\n freeze() {\n this.frozen = true;\n }\n}\nexports.CallTreeNode = CallTreeNode;\nclass Profile {\n constructor(totalWeight = 0) {\n this.name = '';\n this.frames = new utils_1.KeyedSet();\n // Profiles store two call-trees.\n //\n // The \"append order\" call tree is the one in which nodes are ordered in\n // whatever order they were appended to their parent.\n //\n // The \"grouped\" call tree is one in which each node has at most one child per\n // frame. Nodes are ordered in decreasing order of weight\n this.appendOrderCalltreeRoot = new CallTreeNode(Frame.root, null);\n this.groupedCalltreeRoot = new CallTreeNode(Frame.root, null);\n // List of references to CallTreeNodes at the top of the\n // stack at the time of the sample.\n this.samples = [];\n this.weights = [];\n this.valueFormatter = new value_formatters_1.RawValueFormatter();\n this.totalNonIdleWeight = null;\n this.totalWeight = totalWeight;\n }\n getAppendOrderCalltreeRoot() {\n return this.appendOrderCalltreeRoot;\n }\n getGroupedCalltreeRoot() {\n return this.groupedCalltreeRoot;\n }\n formatValue(v) {\n return this.valueFormatter.format(v);\n }\n setValueFormatter(f) {\n this.valueFormatter = f;\n }\n getWeightUnit() {\n return this.valueFormatter.unit;\n }\n getName() {\n return this.name;\n }\n setName(name) {\n this.name = name;\n }\n getTotalWeight() {\n return this.totalWeight;\n }\n getTotalNonIdleWeight() {\n if (this.totalNonIdleWeight === null) {\n this.totalNonIdleWeight = this.groupedCalltreeRoot.children.reduce((n, c) => n + c.getTotalWeight(), 0);\n }\n return this.totalNonIdleWeight;\n }\n // This is private because it should only be called in the ProfileBuilder\n // classes. Once a Profile instance has been constructed, it should be treated\n // as immutable.\n sortGroupedCallTree() {\n function visit(node) {\n node.children.sort((a, b) => -(a.getTotalWeight() - b.getTotalWeight()));\n node.children.forEach(visit);\n }\n visit(this.groupedCalltreeRoot);\n }\n forEachCallGrouped(openFrame, closeFrame) {\n function visit(node, start) {\n if (node.frame !== Frame.root) {\n openFrame(node, start);\n }\n let childTime = 0;\n node.children.forEach(function (child) {\n visit(child, start + childTime);\n childTime += child.getTotalWeight();\n });\n if (node.frame !== Frame.root) {\n closeFrame(node, start + node.getTotalWeight());\n }\n }\n visit(this.groupedCalltreeRoot, 0);\n }\n forEachCall(openFrame, closeFrame) {\n let prevStack = [];\n let value = 0;\n let sampleIndex = 0;\n for (let stackTop of this.samples) {\n // Find lowest common ancestor of the current stack and the previous one\n let lca = null;\n // This is O(n^2), but n should be relatively small here (stack height),\n // so hopefully this isn't much of a problem\n for (lca = stackTop; lca && lca.frame != Frame.root && prevStack.indexOf(lca) === -1; lca = lca.parent) {}\n // Close frames that are no longer open\n while (prevStack.length > 0 && utils_1.lastOf(prevStack) != lca) {\n const node = prevStack.pop();\n closeFrame(node, value);\n }\n // Open frames that are now becoming open\n const toOpen = [];\n for (let node = stackTop; node && node.frame != Frame.root && node != lca; node = node.parent) {\n toOpen.push(node);\n }\n toOpen.reverse();\n for (let node of toOpen) {\n openFrame(node, value);\n }\n prevStack = prevStack.concat(toOpen);\n value += this.weights[sampleIndex++];\n }\n // Close frames that are open at the end of the trace\n for (let i = prevStack.length - 1; i >= 0; i--) {\n closeFrame(prevStack[i], value);\n }\n }\n forEachFrame(fn) {\n this.frames.forEach(fn);\n }\n getProfileWithRecursionFlattened() {\n const builder = new CallTreeProfileBuilder();\n const stack = [];\n const framesInStack = new Set();\n function openFrame(node, value) {\n if (framesInStack.has(node.frame)) {\n stack.push(null);\n } else {\n framesInStack.add(node.frame);\n stack.push(node);\n builder.enterFrame(node.frame, value);\n }\n }\n function closeFrame(node, value) {\n const stackTop = stack.pop();\n if (stackTop) {\n framesInStack.delete(stackTop.frame);\n builder.leaveFrame(stackTop.frame, value);\n }\n }\n this.forEachCall(openFrame, closeFrame);\n const flattenedProfile = builder.build();\n flattenedProfile.name = this.name;\n flattenedProfile.valueFormatter = this.valueFormatter;\n // When constructing a profile with recursion flattened,\n // counter-intuitive things can happen to \"self time\" measurements\n // for functions.\n // For example, given the following list of stacks w/ weights:\n //\n // a 1\n // a;b;a 1\n // a;b;a;b;a 1\n // a;b;a 1\n //\n // The resulting profile with recursion flattened out will look like this:\n //\n // a 1\n // a;b 3\n //\n // Which is useful to view, but it's counter-intuitive to move self-time\n // for frames around, since analyzing the self-time of functions is an important\n // thing to be able to do accurately, and we don't want this to change when recursion\n // is flattened. To work around that, we'll just copy the weights directly from the\n // un-flattened profile.\n this.forEachFrame(f => {\n flattenedProfile.frames.getOrInsert(f).overwriteWeightWith(f);\n });\n return flattenedProfile;\n }\n getInvertedProfileForCallersOf(focalFrameInfo) {\n const focalFrame = Frame.getOrInsert(this.frames, focalFrameInfo);\n const builder = new StackListProfileBuilder();\n // TODO(jlfwong): Could construct this at profile\n // construction time rather than on demand.\n const nodes = [];\n function visit(node) {\n if (node.frame === focalFrame) {\n nodes.push(node);\n } else {\n for (let child of node.children) {\n visit(child);\n }\n }\n }\n visit(this.appendOrderCalltreeRoot);\n for (let node of nodes) {\n const stack = [];\n for (let n = node; n != null && n.frame !== Frame.root; n = n.parent) {\n stack.push(n.frame);\n }\n builder.appendSampleWithWeight(stack, node.getTotalWeight());\n }\n const ret = builder.build();\n ret.name = this.name;\n ret.valueFormatter = this.valueFormatter;\n return ret;\n }\n getProfileForCalleesOf(focalFrameInfo) {\n const focalFrame = Frame.getOrInsert(this.frames, focalFrameInfo);\n const builder = new StackListProfileBuilder();\n function recordSubtree(focalFrameNode) {\n const stack = [];\n function visit(node) {\n stack.push(node.frame);\n builder.appendSampleWithWeight(stack, node.getSelfWeight());\n for (let child of node.children) {\n visit(child);\n }\n stack.pop();\n }\n visit(focalFrameNode);\n }\n function findCalls(node) {\n if (node.frame === focalFrame) {\n recordSubtree(node);\n } else {\n for (let child of node.children) {\n findCalls(child);\n }\n }\n }\n findCalls(this.appendOrderCalltreeRoot);\n const ret = builder.build();\n ret.name = this.name;\n ret.valueFormatter = this.valueFormatter;\n return ret;\n }\n // Demangle symbols for readability\n demangle() {\n return __awaiter(this, void 0, void 0, function* () {\n let demangleCpp = null;\n for (let frame of this.frames) {\n // This function converts a mangled C++ name such as \"__ZNK7Support6ColorFeqERKS0_\"\n // into a human-readable symbol (in this case \"Support::ColorF::==(Support::ColorF&)\")\n if (frame.name.startsWith('__Z')) {\n if (!demangleCpp) {\n demangleCpp = (yield demangleCppModule).demangleCpp;\n }\n frame.name = demangleCpp(frame.name);\n }\n }\n });\n }\n remapNames(callback) {\n for (let frame of this.frames) {\n frame.name = callback(frame.name);\n }\n }\n}\nexports.Profile = Profile;\nclass StackListProfileBuilder extends Profile {\n constructor() {\n super(...arguments);\n this.pendingSample = null;\n }\n _appendSample(stack, weight, useAppendOrder) {\n if (isNaN(weight)) throw new Error('invalid weight');\n let node = useAppendOrder ? this.appendOrderCalltreeRoot : this.groupedCalltreeRoot;\n let framesInStack = new Set();\n for (let frameInfo of stack) {\n const frame = Frame.getOrInsert(this.frames, frameInfo);\n const last = useAppendOrder ? utils_1.lastOf(node.children) : node.children.find(c => c.frame === frame);\n if (last && !last.isFrozen() && last.frame == frame) {\n node = last;\n } else {\n const parent = node;\n node = new CallTreeNode(frame, node);\n parent.children.push(node);\n }\n node.addToTotalWeight(weight);\n // It's possible for the same frame to occur multiple\n // times in the same call stack due to either direct\n // or indirect recursion. We want to avoid counting that\n // frame multiple times for a single sample, we so just\n // track all of the unique frames that participated in\n // this call stack, then add to their weight at the end.\n framesInStack.add(node.frame);\n }\n node.addToSelfWeight(weight);\n if (useAppendOrder) {\n for (let child of node.children) {\n child.freeze();\n }\n }\n if (useAppendOrder) {\n node.frame.addToSelfWeight(weight);\n for (let frame of framesInStack) {\n frame.addToTotalWeight(weight);\n }\n if (node === utils_1.lastOf(this.samples)) {\n this.weights[this.weights.length - 1] += weight;\n } else {\n this.samples.push(node);\n this.weights.push(weight);\n }\n }\n }\n appendSampleWithWeight(stack, weight) {\n if (weight === 0) {\n // Samples with zero weight have no effect, so let's ignore them\n return;\n }\n if (weight < 0) {\n throw new Error('Samples must have positive weights');\n }\n this._appendSample(stack, weight, true);\n this._appendSample(stack, weight, false);\n }\n appendSampleWithTimestamp(stack, timestamp) {\n if (this.pendingSample) {\n if (timestamp < this.pendingSample.centralTimestamp) {\n throw new Error('Timestamps received out of order');\n }\n const endTimestamp = (timestamp + this.pendingSample.centralTimestamp) / 2;\n this.appendSampleWithWeight(this.pendingSample.stack, endTimestamp - this.pendingSample.startTimestamp);\n this.pendingSample = {\n stack,\n startTimestamp: endTimestamp,\n centralTimestamp: timestamp\n };\n } else {\n this.pendingSample = {\n stack,\n startTimestamp: timestamp,\n centralTimestamp: timestamp\n };\n }\n }\n build() {\n if (this.pendingSample) {\n if (this.samples.length > 0) {\n this.appendSampleWithWeight(this.pendingSample.stack, this.pendingSample.centralTimestamp - this.pendingSample.startTimestamp);\n } else {\n // There is only a single sample. In this case, units will be meaningless,\n // so we'll append with a weight of 1 and also clear any value formatter\n this.appendSampleWithWeight(this.pendingSample.stack, 1);\n this.setValueFormatter(new value_formatters_1.RawValueFormatter());\n }\n }\n this.totalWeight = Math.max(this.totalWeight, this.weights.reduce((a, b) => a + b, 0));\n this.sortGroupedCallTree();\n return this;\n }\n}\nexports.StackListProfileBuilder = StackListProfileBuilder;\n// As an alternative API for importing profiles more efficiently, provide a\n// way to open & close frames directly without needing to construct tons of\n// arrays as intermediaries.\nclass CallTreeProfileBuilder extends Profile {\n constructor() {\n super(...arguments);\n this.appendOrderStack = [this.appendOrderCalltreeRoot];\n this.groupedOrderStack = [this.groupedCalltreeRoot];\n this.framesInStack = new Map();\n this.stack = [];\n this.lastValue = 0;\n }\n addWeightsToFrames(value) {\n const delta = value - this.lastValue;\n for (let frame of this.framesInStack.keys()) {\n frame.addToTotalWeight(delta);\n }\n const stackTop = utils_1.lastOf(this.stack);\n if (stackTop) {\n stackTop.addToSelfWeight(delta);\n }\n }\n addWeightsToNodes(value, stack) {\n const delta = value - this.lastValue;\n for (let node of stack) {\n node.addToTotalWeight(delta);\n }\n const stackTop = utils_1.lastOf(stack);\n if (stackTop) {\n stackTop.addToSelfWeight(delta);\n }\n }\n _enterFrame(frame, value, useAppendOrder) {\n let stack = useAppendOrder ? this.appendOrderStack : this.groupedOrderStack;\n this.addWeightsToNodes(value, stack);\n let prevTop = utils_1.lastOf(stack);\n if (prevTop) {\n if (useAppendOrder) {\n const delta = value - this.lastValue;\n if (delta > 0) {\n this.samples.push(prevTop);\n this.weights.push(value - this.lastValue);\n } else if (delta < 0) {\n throw new Error(`Samples must be provided in increasing order of cumulative value. Last sample was ${this.lastValue}, this sample was ${value}`);\n }\n }\n const last = useAppendOrder ? utils_1.lastOf(prevTop.children) : prevTop.children.find(c => c.frame === frame);\n let node;\n if (last && !last.isFrozen() && last.frame == frame) {\n node = last;\n } else {\n node = new CallTreeNode(frame, prevTop);\n prevTop.children.push(node);\n }\n stack.push(node);\n }\n }\n enterFrame(frameInfo, value) {\n const frame = Frame.getOrInsert(this.frames, frameInfo);\n this.addWeightsToFrames(value);\n this._enterFrame(frame, value, true);\n this._enterFrame(frame, value, false);\n this.stack.push(frame);\n const frameCount = this.framesInStack.get(frame) || 0;\n this.framesInStack.set(frame, frameCount + 1);\n this.lastValue = value;\n }\n _leaveFrame(frame, value, useAppendOrder) {\n let stack = useAppendOrder ? this.appendOrderStack : this.groupedOrderStack;\n this.addWeightsToNodes(value, stack);\n if (useAppendOrder) {\n const leavingStackTop = this.appendOrderStack.pop();\n if (leavingStackTop == null) {\n throw new Error(`Trying to leave ${frame.key} when stack is empty`);\n }\n if (this.lastValue == null) {\n throw new Error(`Trying to leave a ${frame.key} before any have been entered`);\n }\n leavingStackTop.freeze();\n if (leavingStackTop.frame.key !== frame.key) {\n throw new Error(`Tried to leave frame \"${frame.name}\" while frame \"${leavingStackTop.frame.name}\" was at the top at ${value}`);\n }\n const delta = value - this.lastValue;\n if (delta > 0) {\n this.samples.push(leavingStackTop);\n this.weights.push(value - this.lastValue);\n } else if (delta < 0) {\n throw new Error(`Samples must be provided in increasing order of cumulative value. Last sample was ${this.lastValue}, this sample was ${value}`);\n }\n } else {\n this.groupedOrderStack.pop();\n }\n }\n leaveFrame(frameInfo, value) {\n const frame = Frame.getOrInsert(this.frames, frameInfo);\n this.addWeightsToFrames(value);\n this._leaveFrame(frame, value, true);\n this._leaveFrame(frame, value, false);\n this.stack.pop();\n const frameCount = this.framesInStack.get(frame);\n if (frameCount == null) return;\n if (frameCount === 1) {\n this.framesInStack.delete(frame);\n } else {\n this.framesInStack.set(frame, frameCount - 1);\n }\n this.lastValue = value;\n this.totalWeight = Math.max(this.totalWeight, this.lastValue);\n }\n build() {\n // Each stack is expected to contain a single node which we initialize to be\n // the root node.\n if (this.appendOrderStack.length > 1 || this.groupedOrderStack.length > 1) {\n throw new Error('Tried to complete profile construction with a non-empty stack');\n }\n this.sortGroupedCallTree();\n return this;\n }\n}\nexports.CallTreeProfileBuilder = CallTreeProfileBuilder;\n\n/***/ }),\n\n/***/ 844:\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.decodeBase64 = exports.lazyStatic = exports.memoizeByReference = exports.memoizeByShallowEquality = exports.objectsHaveShallowEquality = exports.noop = exports.binarySearch = exports.triangle = exports.fract = exports.formatPercent = exports.zeroPad = exports.itReduce = exports.itForEach = exports.itMap = exports.KeyedSet = exports.getOrThrow = exports.getOrElse = exports.getOrInsert = exports.sortBy = exports.lastOf = void 0;\nfunction lastOf(ts) {\n return ts[ts.length - 1] || null;\n}\nexports.lastOf = lastOf;\nfunction sortBy(ts, key) {\n function comparator(a, b) {\n const keyA = key(a);\n const keyB = key(b);\n return keyA < keyB ? -1 : keyA > keyB ? 1 : 0;\n }\n ts.sort(comparator);\n}\nexports.sortBy = sortBy;\nfunction getOrInsert(map, k, fallback) {\n if (!map.has(k)) map.set(k, fallback(k));\n return map.get(k);\n}\nexports.getOrInsert = getOrInsert;\nfunction getOrElse(map, k, fallback) {\n if (!map.has(k)) return fallback(k);\n return map.get(k);\n}\nexports.getOrElse = getOrElse;\nfunction getOrThrow(map, k) {\n if (!map.has(k)) {\n throw new Error(`Expected key ${k}`);\n }\n return map.get(k);\n}\nexports.getOrThrow = getOrThrow;\nclass KeyedSet {\n constructor() {\n this.map = new Map();\n }\n getOrInsert(t) {\n const key = t.key;\n const existing = this.map.get(key);\n if (existing) return existing;\n this.map.set(key, t);\n return t;\n }\n forEach(fn) {\n this.map.forEach(fn);\n }\n [Symbol.iterator]() {\n return this.map.values();\n }\n}\nexports.KeyedSet = KeyedSet;\nfunction* itMap(it, f) {\n for (let t of it) {\n yield f(t);\n }\n}\nexports.itMap = itMap;\nfunction itForEach(it, f) {\n for (let t of it) {\n f(t);\n }\n}\nexports.itForEach = itForEach;\nfunction itReduce(it, f, init) {\n let accum = init;\n for (let t of it) {\n accum = f(accum, t);\n }\n return accum;\n}\nexports.itReduce = itReduce;\nfunction zeroPad(s, width) {\n return new Array(Math.max(width - s.length, 0) + 1).join('0') + s;\n}\nexports.zeroPad = zeroPad;\nfunction formatPercent(percent) {\n let formattedPercent = `${percent.toFixed(0)}%`;\n if (percent === 100) formattedPercent = '100%';else if (percent > 99) formattedPercent = '>99%';else if (percent < 0.01) formattedPercent = '<0.01%';else if (percent < 1) formattedPercent = `${percent.toFixed(2)}%`;else if (percent < 10) formattedPercent = `${percent.toFixed(1)}%`;\n return formattedPercent;\n}\nexports.formatPercent = formatPercent;\nfunction fract(x) {\n return x - Math.floor(x);\n}\nexports.fract = fract;\nfunction triangle(x) {\n return 2.0 * Math.abs(fract(x) - 0.5) - 1.0;\n}\nexports.triangle = triangle;\nfunction binarySearch(lo, hi, f, target, targetRangeSize = 1) {\n console.assert(!isNaN(targetRangeSize) && !isNaN(target));\n while (true) {\n if (hi - lo <= targetRangeSize) return [lo, hi];\n const mid = (hi + lo) / 2;\n const val = f(mid);\n if (val < target) lo = mid;else hi = mid;\n }\n}\nexports.binarySearch = binarySearch;\nfunction noop(...args) {}\nexports.noop = noop;\nfunction objectsHaveShallowEquality(a, b) {\n for (let key in a) {\n if (a[key] !== b[key]) return false;\n }\n for (let key in b) {\n if (a[key] !== b[key]) return false;\n }\n return true;\n}\nexports.objectsHaveShallowEquality = objectsHaveShallowEquality;\nfunction memoizeByShallowEquality(cb) {\n let last = null;\n return args => {\n let result;\n if (last == null) {\n result = cb(args);\n last = {\n args,\n result\n };\n return result;\n } else if (objectsHaveShallowEquality(last.args, args)) {\n return last.result;\n } else {\n last.args = args;\n last.result = cb(args);\n return last.result;\n }\n };\n}\nexports.memoizeByShallowEquality = memoizeByShallowEquality;\nfunction memoizeByReference(cb) {\n let last = null;\n return args => {\n let result;\n if (last == null) {\n result = cb(args);\n last = {\n args,\n result\n };\n return result;\n } else if (last.args === args) {\n return last.result;\n } else {\n last.args = args;\n last.result = cb(args);\n return last.result;\n }\n };\n}\nexports.memoizeByReference = memoizeByReference;\nfunction lazyStatic(cb) {\n let last = null;\n return () => {\n if (last == null) {\n last = {\n result: cb()\n };\n }\n return last.result;\n };\n}\nexports.lazyStatic = lazyStatic;\nconst base64lookupTable = lazyStatic(() => {\n const alphabet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n const ret = new Map();\n for (let i = 0; i < alphabet.length; i++) {\n ret.set(alphabet.charAt(i), i);\n }\n ret.set('=', -1);\n return ret;\n});\n// NOTE: There are probably simpler solutions to this problem, but I have this written already, so\n// until we run into problems with this, let's just use this.\n//\n// See: https://developer.mozilla.org/en-US/docs/Web/API/WindowBase64/Base64_encoding_and_decoding#The_Unicode_Problem#The_Unicode_Problem\nfunction decodeBase64(encoded) {\n // Reference: https://www.rfc-editor.org/rfc/rfc4648.txt\n const lookupTable = base64lookupTable();\n // 3 byte groups are represented as sequneces of 4 characters.\n //\n // \"The encoding process represents 24-bit groups of input bits as output\n // strings of 4 encoded characters.\"\n //\n // \"Special processing is performed if fewer than 24 bits are available\n // at the end of the data being encoded. A full encoding quantum is\n // always completed at the end of a quantity. When fewer than 24 input\n // bits are available in an input group bits with value zero are added\n // (on the right) to form an integral number of 6-bit groups.\"\n if (encoded.length % 4 !== 0) {\n throw new Error(`Invalid length for base64 encoded string. Expected length % 4 = 0, got length = ${encoded.length}`);\n }\n const quartetCount = encoded.length / 4;\n let byteCount;\n // Special processing is performed if fewer than 24 bits are available\n // at the end of the data being encoded. A full encoding quantum is\n // always completed at the end of a quantity. When fewer than 24 input\n // bits are available in an input group, bits with value zero are added\n // (on the right) to form an integral number of 6-bit groups. Padding\n // at the end of the data is performed using the '=' character. Since\n // all base 64 input is an integral number of octets, only the following\n // cases can arise:\n //\n // (1) The final quantum of encoding input is an integral multiple of 24\n // bits; here, the final unit of encoded output will be an integral\n // multiple of 4 characters with no \"=\" padding.\n //\n // (2) The final quantum of encoding input is exactly 8 bits; here, the\n // final unit of encoded output will be two characters followed by\n // two \"=\" padding characters.\n //\n // (3) The final quantum of encoding input is exactly 16 bits; here, the\n // final unit of encoded output will be three characters followed by\n // one \"=\" padding character.\n if (encoded.length >= 4) {\n if (encoded.charAt(encoded.length - 1) === '=') {\n if (encoded.charAt(encoded.length - 2) === '=') {\n // Case (2)\n byteCount = quartetCount * 3 - 2;\n } else {\n // Case (3)\n byteCount = quartetCount * 3 - 1;\n }\n } else {\n // Case (1)\n byteCount = quartetCount * 3;\n }\n } else {\n // Case (1)\n byteCount = quartetCount * 3;\n }\n const bytes = new Uint8Array(byteCount);\n let offset = 0;\n for (let i = 0; i < quartetCount; i++) {\n const enc1 = encoded.charAt(i * 4 + 0);\n const enc2 = encoded.charAt(i * 4 + 1);\n const enc3 = encoded.charAt(i * 4 + 2);\n const enc4 = encoded.charAt(i * 4 + 3);\n const sextet1 = lookupTable.get(enc1);\n const sextet2 = lookupTable.get(enc2);\n const sextet3 = lookupTable.get(enc3);\n const sextet4 = lookupTable.get(enc4);\n if (sextet1 == null || sextet2 == null || sextet3 == null || sextet4 == null) {\n throw new Error(`Invalid quartet at indices ${i * 4} .. ${i * 4 + 3}: ${encoded.substring(i * 4, i * 4 + 3)}`);\n }\n bytes[offset++] = sextet1 << 2 | sextet2 >> 4;\n if (enc3 !== '=') {\n bytes[offset++] = (sextet2 & 15) << 4 | sextet3 >> 2;\n }\n if (enc4 !== '=') {\n bytes[offset++] = (sextet3 & 7) << 6 | sextet4;\n }\n }\n if (offset !== byteCount) {\n throw new Error(`Expected to decode ${byteCount} bytes, but only decoded ${offset})`);\n }\n return bytes;\n}\nexports.decodeBase64 = decodeBase64;\n\n/***/ }),\n\n/***/ 218:\n/***/ ((__unused_webpack_module, exports, __webpack_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.ByteFormatter = exports.TimeFormatter = exports.RawValueFormatter = void 0;\nconst utils_1 = __webpack_require__(844);\nclass RawValueFormatter {\n constructor() {\n this.unit = 'none';\n }\n format(v) {\n return v.toLocaleString();\n }\n}\nexports.RawValueFormatter = RawValueFormatter;\nclass TimeFormatter {\n constructor(unit) {\n this.unit = unit;\n if (unit === 'nanoseconds') this.multiplier = 1e-9;else if (unit === 'microseconds') this.multiplier = 1e-6;else if (unit === 'milliseconds') this.multiplier = 1e-3;else this.multiplier = 1;\n }\n formatUnsigned(v) {\n const s = v * this.multiplier;\n if (s / 60 >= 1) {\n const minutes = Math.floor(s / 60);\n const seconds = Math.floor(s - minutes * 60).toString();\n return `${minutes}:${utils_1.zeroPad(seconds, 2)}`;\n }\n if (s / 1 >= 1) return `${s.toFixed(2)}s`;\n if (s / 1e-3 >= 1) return `${(s / 1e-3).toFixed(2)}ms`;\n if (s / 1e-6 >= 1) return `${(s / 1e-6).toFixed(2)}µs`;else return `${(s / 1e-9).toFixed(2)}ns`;\n }\n format(v) {\n return `${v < 0 ? '-' : ''}${this.formatUnsigned(Math.abs(v))}`;\n }\n}\nexports.TimeFormatter = TimeFormatter;\nclass ByteFormatter {\n constructor() {\n this.unit = 'bytes';\n }\n format(v) {\n if (v < 1024) return `${v.toFixed(0)} B`;\n v /= 1024;\n if (v < 1024) return `${v.toFixed(2)} KB`;\n v /= 1024;\n if (v < 1024) return `${v.toFixed(2)} MB`;\n v /= 1024;\n return `${v.toFixed(2)} GB`;\n }\n}\nexports.ByteFormatter = ByteFormatter;\n\n/***/ }),\n\n/***/ 41:\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n\n\nvar __createBinding = this && this.__createBinding || (Object.create ? function (o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, {\n enumerable: true,\n get: function () {\n return m[k];\n }\n });\n} : function (o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\nvar __exportStar = this && this.__exportStar || function (m, exports) {\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\n__exportStar(__webpack_require__(496), exports);\n__exportStar(__webpack_require__(121), exports);\n\n/***/ }),\n\n/***/ 715:\n/***/ (function(module, exports, __webpack_require__) {\n\nvar __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;(function (root, factory) {\n 'use strict';\n\n // Universal Module Definition (UMD) to support AMD, CommonJS/Node.js, Rhino, and browsers.\n\n /* istanbul ignore next */\n if (true) {\n !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(356)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?\n\t\t(__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n } else {}\n})(this, function ErrorStackParser(StackFrame) {\n 'use strict';\n\n var FIREFOX_SAFARI_STACK_REGEXP = /(^|@)\\S+:\\d+/;\n var CHROME_IE_STACK_REGEXP = /^\\s*at .*(\\S+:\\d+|\\(native\\))/m;\n var SAFARI_NATIVE_CODE_REGEXP = /^(eval@)?(\\[native code])?$/;\n return {\n /**\n * Given an Error object, extract the most information from it.\n *\n * @param {Error} error object\n * @return {Array} of StackFrames\n */\n parse: function ErrorStackParser$$parse(error) {\n if (typeof error.stacktrace !== 'undefined' || typeof error['opera#sourceloc'] !== 'undefined') {\n return this.parseOpera(error);\n } else if (error.stack && error.stack.match(CHROME_IE_STACK_REGEXP)) {\n return this.parseV8OrIE(error);\n } else if (error.stack) {\n return this.parseFFOrSafari(error);\n } else {\n throw new Error('Cannot parse given Error object');\n }\n },\n // Separate line and column numbers from a string of the form: (URI:Line:Column)\n extractLocation: function ErrorStackParser$$extractLocation(urlLike) {\n // Fail-fast but return locations like \"(native)\"\n if (urlLike.indexOf(':') === -1) {\n return [urlLike];\n }\n var regExp = /(.+?)(?::(\\d+))?(?::(\\d+))?$/;\n var parts = regExp.exec(urlLike.replace(/[()]/g, ''));\n return [parts[1], parts[2] || undefined, parts[3] || undefined];\n },\n parseV8OrIE: function ErrorStackParser$$parseV8OrIE(error) {\n var filtered = error.stack.split('\\n').filter(function (line) {\n return !!line.match(CHROME_IE_STACK_REGEXP);\n }, this);\n return filtered.map(function (line) {\n if (line.indexOf('(eval ') > -1) {\n // Throw away eval information until we implement stacktrace.js/stackframe#8\n line = line.replace(/eval code/g, 'eval').replace(/(\\(eval at [^()]*)|(\\),.*$)/g, '');\n }\n var sanitizedLine = line.replace(/^\\s+/, '').replace(/\\(eval code/g, '(');\n\n // capture and preseve the parenthesized location \"(/foo/my bar.js:12:87)\" in\n // case it has spaces in it, as the string is split on \\s+ later on\n var location = sanitizedLine.match(/ (\\((.+):(\\d+):(\\d+)\\)$)/);\n\n // remove the parenthesized location from the line, if it was matched\n sanitizedLine = location ? sanitizedLine.replace(location[0], '') : sanitizedLine;\n var tokens = sanitizedLine.split(/\\s+/).slice(1);\n // if a location was matched, pass it to extractLocation() otherwise pop the last token\n var locationParts = this.extractLocation(location ? location[1] : tokens.pop());\n var functionName = tokens.join(' ') || undefined;\n var fileName = ['eval', ''].indexOf(locationParts[0]) > -1 ? undefined : locationParts[0];\n return new StackFrame({\n functionName: functionName,\n fileName: fileName,\n lineNumber: locationParts[1],\n columnNumber: locationParts[2],\n source: line\n });\n }, this);\n },\n parseFFOrSafari: function ErrorStackParser$$parseFFOrSafari(error) {\n var filtered = error.stack.split('\\n').filter(function (line) {\n return !line.match(SAFARI_NATIVE_CODE_REGEXP);\n }, this);\n return filtered.map(function (line) {\n // Throw away eval information until we implement stacktrace.js/stackframe#8\n if (line.indexOf(' > eval') > -1) {\n line = line.replace(/ line (\\d+)(?: > eval line \\d+)* > eval:\\d+:\\d+/g, ':$1');\n }\n if (line.indexOf('@') === -1 && line.indexOf(':') === -1) {\n // Safari eval frames only have function names and nothing else\n return new StackFrame({\n functionName: line\n });\n } else {\n var functionNameRegex = /((.*\".+\"[^@]*)?[^@]*)(?:@)/;\n var matches = line.match(functionNameRegex);\n var functionName = matches && matches[1] ? matches[1] : undefined;\n var locationParts = this.extractLocation(line.replace(functionNameRegex, ''));\n return new StackFrame({\n functionName: functionName,\n fileName: locationParts[0],\n lineNumber: locationParts[1],\n columnNumber: locationParts[2],\n source: line\n });\n }\n }, this);\n },\n parseOpera: function ErrorStackParser$$parseOpera(e) {\n if (!e.stacktrace || e.message.indexOf('\\n') > -1 && e.message.split('\\n').length > e.stacktrace.split('\\n').length) {\n return this.parseOpera9(e);\n } else if (!e.stack) {\n return this.parseOpera10(e);\n } else {\n return this.parseOpera11(e);\n }\n },\n parseOpera9: function ErrorStackParser$$parseOpera9(e) {\n var lineRE = /Line (\\d+).*script (?:in )?(\\S+)/i;\n var lines = e.message.split('\\n');\n var result = [];\n for (var i = 2, len = lines.length; i < len; i += 2) {\n var match = lineRE.exec(lines[i]);\n if (match) {\n result.push(new StackFrame({\n fileName: match[2],\n lineNumber: match[1],\n source: lines[i]\n }));\n }\n }\n return result;\n },\n parseOpera10: function ErrorStackParser$$parseOpera10(e) {\n var lineRE = /Line (\\d+).*script (?:in )?(\\S+)(?:: In function (\\S+))?$/i;\n var lines = e.stacktrace.split('\\n');\n var result = [];\n for (var i = 0, len = lines.length; i < len; i += 2) {\n var match = lineRE.exec(lines[i]);\n if (match) {\n result.push(new StackFrame({\n functionName: match[3] || undefined,\n fileName: match[2],\n lineNumber: match[1],\n source: lines[i]\n }));\n }\n }\n return result;\n },\n // Opera 10.65+ Error.stack very similar to FF/Safari\n parseOpera11: function ErrorStackParser$$parseOpera11(error) {\n var filtered = error.stack.split('\\n').filter(function (line) {\n return !!line.match(FIREFOX_SAFARI_STACK_REGEXP) && !line.match(/^Error created at/);\n }, this);\n return filtered.map(function (line) {\n var tokens = line.split('@');\n var locationParts = this.extractLocation(tokens.pop());\n var functionCall = tokens.shift() || '';\n var functionName = functionCall.replace(//, '$2').replace(/\\([^)]*\\)/g, '') || undefined;\n var argsRaw;\n if (functionCall.match(/\\(([^)]*)\\)/)) {\n argsRaw = functionCall.replace(/^[^(]+\\(([^)]*)\\)$/, '$1');\n }\n var args = argsRaw === undefined || argsRaw === '[arguments not available]' ? undefined : argsRaw.split(',');\n return new StackFrame({\n functionName: functionName,\n args: args,\n fileName: locationParts[0],\n lineNumber: locationParts[1],\n columnNumber: locationParts[2],\n source: line\n });\n }, this);\n }\n };\n});\n\n/***/ }),\n\n/***/ 69:\n/***/ ((module) => {\n\n\n\nfunction nullthrows(x, message) {\n if (x != null) {\n return x;\n }\n var error = new Error(message !== undefined ? message : 'Got unexpected ' + x);\n error.framesToPop = 1; // Skip nullthrows's own stack frame.\n throw error;\n}\nmodule.exports = nullthrows;\nmodule.exports[\"default\"] = nullthrows;\nObject.defineProperty(module.exports, \"__esModule\", ({\n value: true\n}));\n\n/***/ }),\n\n/***/ 356:\n/***/ (function(module, exports) {\n\nvar __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;(function (root, factory) {\n 'use strict';\n\n // Universal Module Definition (UMD) to support AMD, CommonJS/Node.js, Rhino, and browsers.\n\n /* istanbul ignore next */\n if (true) {\n !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?\n\t\t(__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n } else {}\n})(this, function () {\n 'use strict';\n\n function _isNumber(n) {\n return !isNaN(parseFloat(n)) && isFinite(n);\n }\n function _capitalize(str) {\n return str.charAt(0).toUpperCase() + str.substring(1);\n }\n function _getter(p) {\n return function () {\n return this[p];\n };\n }\n var booleanProps = ['isConstructor', 'isEval', 'isNative', 'isToplevel'];\n var numericProps = ['columnNumber', 'lineNumber'];\n var stringProps = ['fileName', 'functionName', 'source'];\n var arrayProps = ['args'];\n var props = booleanProps.concat(numericProps, stringProps, arrayProps);\n function StackFrame(obj) {\n if (!obj) return;\n for (var i = 0; i < props.length; i++) {\n if (obj[props[i]] !== undefined) {\n this['set' + _capitalize(props[i])](obj[props[i]]);\n }\n }\n }\n StackFrame.prototype = {\n getArgs: function () {\n return this.args;\n },\n setArgs: function (v) {\n if (Object.prototype.toString.call(v) !== '[object Array]') {\n throw new TypeError('Args must be an Array');\n }\n this.args = v;\n },\n getEvalOrigin: function () {\n return this.evalOrigin;\n },\n setEvalOrigin: function (v) {\n if (v instanceof StackFrame) {\n this.evalOrigin = v;\n } else if (v instanceof Object) {\n this.evalOrigin = new StackFrame(v);\n } else {\n throw new TypeError('Eval Origin must be an Object or StackFrame');\n }\n },\n toString: function () {\n var fileName = this.getFileName() || '';\n var lineNumber = this.getLineNumber() || '';\n var columnNumber = this.getColumnNumber() || '';\n var functionName = this.getFunctionName() || '';\n if (this.getIsEval()) {\n if (fileName) {\n return '[eval] (' + fileName + ':' + lineNumber + ':' + columnNumber + ')';\n }\n return '[eval]:' + lineNumber + ':' + columnNumber;\n }\n if (functionName) {\n return functionName + ' (' + fileName + ':' + lineNumber + ':' + columnNumber + ')';\n }\n return fileName + ':' + lineNumber + ':' + columnNumber;\n }\n };\n StackFrame.fromString = function StackFrame$$fromString(str) {\n var argsStartIndex = str.indexOf('(');\n var argsEndIndex = str.lastIndexOf(')');\n var functionName = str.substring(0, argsStartIndex);\n var args = str.substring(argsStartIndex + 1, argsEndIndex).split(',');\n var locationString = str.substring(argsEndIndex + 1);\n if (locationString.indexOf('@') === 0) {\n var parts = /@(.+?)(?::(\\d+))?(?::(\\d+))?$/.exec(locationString, '');\n var fileName = parts[1];\n var lineNumber = parts[2];\n var columnNumber = parts[3];\n }\n return new StackFrame({\n functionName: functionName,\n args: args || undefined,\n fileName: fileName,\n lineNumber: lineNumber || undefined,\n columnNumber: columnNumber || undefined\n });\n };\n for (var i = 0; i < booleanProps.length; i++) {\n StackFrame.prototype['get' + _capitalize(booleanProps[i])] = _getter(booleanProps[i]);\n StackFrame.prototype['set' + _capitalize(booleanProps[i])] = function (p) {\n return function (v) {\n this[p] = Boolean(v);\n };\n }(booleanProps[i]);\n }\n for (var j = 0; j < numericProps.length; j++) {\n StackFrame.prototype['get' + _capitalize(numericProps[j])] = _getter(numericProps[j]);\n StackFrame.prototype['set' + _capitalize(numericProps[j])] = function (p) {\n return function (v) {\n if (!_isNumber(v)) {\n throw new TypeError(p + ' must be a Number');\n }\n this[p] = Number(v);\n };\n }(numericProps[j]);\n }\n for (var k = 0; k < stringProps.length; k++) {\n StackFrame.prototype['get' + _capitalize(stringProps[k])] = _getter(stringProps[k]);\n StackFrame.prototype['set' + _capitalize(stringProps[k])] = function (p) {\n return function (v) {\n this[p] = String(v);\n };\n }(stringProps[k]);\n }\n return StackFrame;\n});\n\n/***/ }),\n\n/***/ 853:\n/***/ ((module) => {\n\n/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nvar runtime = function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n function define(obj, key, value) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n return obj[key];\n }\n try {\n // IE 8 has a broken Object.defineProperty that only works on DOM objects.\n define({}, \"\");\n } catch (err) {\n define = function (obj, key, value) {\n return obj[key] = value;\n };\n }\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n return generator;\n }\n exports.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return {\n type: \"normal\",\n arg: fn.call(obj, arg)\n };\n } catch (err) {\n return {\n type: \"throw\",\n arg: err\n };\n }\n }\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n IteratorPrototype[iteratorSymbol] = function () {\n return this;\n };\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;\n GeneratorFunctionPrototype.constructor = GeneratorFunction;\n GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, \"GeneratorFunction\");\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function (method) {\n define(prototype, method, function (arg) {\n return this._invoke(method, arg);\n });\n });\n }\n exports.isGeneratorFunction = function (genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\" : false;\n };\n exports.mark = function (genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n define(genFun, toStringTagSymbol, \"GeneratorFunction\");\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n exports.awrap = function (arg) {\n return {\n __await: arg\n };\n };\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value && typeof value === \"object\" && hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function (value) {\n invoke(\"next\", value, resolve, reject);\n }, function (err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n return PromiseImpl.resolve(value).then(function (unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function (error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n var previousPromise;\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function (resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n defineIteratorMethods(AsyncIterator.prototype);\n AsyncIterator.prototype[asyncIteratorSymbol] = function () {\n return this;\n };\n exports.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl);\n return exports.isGeneratorFunction(outerFn) ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function (result) {\n return result.done ? result.value : iter.next();\n });\n };\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n context.method = method;\n context.arg = arg;\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n context.dispatchException(context.arg);\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n state = GenStateExecuting;\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done ? GenStateCompleted : GenStateSuspendedYield;\n if (record.arg === ContinueSentinel) {\n continue;\n }\n return {\n value: record.arg,\n done: context.done\n };\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n if (context.method === \"throw\") {\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n context.method = \"throw\";\n context.arg = new TypeError(\"The iterator does not provide a 'throw' method\");\n }\n return ContinueSentinel;\n }\n var record = tryCatch(method, delegate.iterator, context.arg);\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n var info = record.arg;\n if (!info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n define(Gp, toStringTagSymbol, \"Generator\");\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n Gp[iteratorSymbol] = function () {\n return this;\n };\n Gp.toString = function () {\n return \"[object Generator]\";\n };\n function pushTryEntry(locs) {\n var entry = {\n tryLoc: locs[0]\n };\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n this.tryEntries.push(entry);\n }\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{\n tryLoc: \"root\"\n }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n exports.keys = function (object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n if (!isNaN(iterable.length)) {\n var i = -1,\n next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n next.value = undefined;\n next.done = true;\n return next;\n };\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return {\n next: doneResult\n };\n }\n exports.values = values;\n function doneResult() {\n return {\n value: undefined,\n done: true\n };\n }\n Context.prototype = {\n constructor: Context,\n reset: function (skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n this.method = \"next\";\n this.arg = undefined;\n this.tryEntries.forEach(resetTryEntry);\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" && hasOwn.call(this, name) && !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n stop: function () {\n this.done = true;\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n return this.rval;\n },\n dispatchException: function (exception) {\n if (this.done) {\n throw exception;\n }\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n return !!caught;\n }\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n abrupt: function (type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n if (finallyEntry && (type === \"break\" || type === \"continue\") && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n return this.complete(record);\n },\n complete: function (record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n if (record.type === \"break\" || record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n return ContinueSentinel;\n },\n finish: function (finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n \"catch\": function (tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n delegateYield: function (iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n return ContinueSentinel;\n }\n };\n\n // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n return exports;\n}(\n// If this script is executing as a CommonJS module, use module.exports\n// as the regeneratorRuntime namespace. Otherwise create a new empty\n// object. Either way, the resulting object will be used to initialize\n// the regeneratorRuntime variable at the top of this file.\n true ? module.exports : 0);\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n}\n\n/***/ })\n\n/******/ });\n/************************************************************************/\n/******/ // The module cache\n/******/ var __webpack_module_cache__ = {};\n/******/ \n/******/ // The require function\n/******/ function __webpack_require__(moduleId) {\n/******/ \t// Check if module is in cache\n/******/ \tvar cachedModule = __webpack_module_cache__[moduleId];\n/******/ \tif (cachedModule !== undefined) {\n/******/ \t\treturn cachedModule.exports;\n/******/ \t}\n/******/ \t// Create a new module (and put it into the cache)\n/******/ \tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t// no module.id needed\n/******/ \t\t// no module.loaded needed\n/******/ \t\texports: {}\n/******/ \t};\n/******/ \n/******/ \t// Execute the module function\n/******/ \t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/ \n/******/ \t// Return the exports of the module\n/******/ \treturn module.exports;\n/******/ }\n/******/ \n/************************************************************************/\n/******/ /* webpack/runtime/compat get default export */\n/******/ (() => {\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = (module) => {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\t() => (module['default']) :\n/******/ \t\t\t() => (module);\n/******/ \t\t__webpack_require__.d(getter, { a: getter });\n/******/ \t\treturn getter;\n/******/ \t};\n/******/ })();\n/******/ \n/******/ /* webpack/runtime/define property getters */\n/******/ (() => {\n/******/ \t// define getter functions for harmony exports\n/******/ \t__webpack_require__.d = (exports, definition) => {\n/******/ \t\tfor(var key in definition) {\n/******/ \t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t}\n/******/ \t\t}\n/******/ \t};\n/******/ })();\n/******/ \n/******/ /* webpack/runtime/hasOwnProperty shorthand */\n/******/ (() => {\n/******/ \t__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))\n/******/ })();\n/******/ \n/************************************************************************/\nvar __webpack_exports__ = {};\n// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n(() => {\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, {\n \"importFile\": () => (/* binding */ importFile_worker_importFile)\n});\n\n// EXTERNAL MODULE: ../react-devtools-timeline/node_modules/regenerator-runtime/runtime.js\nvar runtime = __webpack_require__(853);\n// EXTERNAL MODULE: ../../node_modules/@elg/speedscope/dist/library/library.js\nvar library = __webpack_require__(41);\n;// CONCATENATED MODULE: ../react-devtools-shared/src/devtools/constants.js\nconst CHANGE_LOG_URL = 'https://github.com/facebook/react/blob/main/packages/react-devtools/CHANGELOG.md';\nconst UNSUPPORTED_VERSION_URL = 'https://reactjs.org/blog/2019/08/15/new-react-devtools.html#how-do-i-get-the-old-version-back';\nconst REACT_DEVTOOLS_WORKPLACE_URL = 'https://fburl.com/react-devtools-workplace-group';\nconst THEME_STYLES = {\n light: {\n '--color-attribute-name': '#ef6632',\n '--color-attribute-name-not-editable': '#23272f',\n '--color-attribute-name-inverted': 'rgba(255, 255, 255, 0.7)',\n '--color-attribute-value': '#1a1aa6',\n '--color-attribute-value-inverted': '#ffffff',\n '--color-attribute-editable-value': '#1a1aa6',\n '--color-background': '#ffffff',\n '--color-background-hover': 'rgba(0, 136, 250, 0.1)',\n '--color-background-inactive': '#e5e5e5',\n '--color-background-invalid': '#fff0f0',\n '--color-background-selected': '#0088fa',\n '--color-button-background': '#ffffff',\n '--color-button-background-focus': '#ededed',\n '--color-button-background-hover': 'rgba(0, 0, 0, 0.2)',\n '--color-button': '#5f6673',\n '--color-button-disabled': '#cfd1d5',\n '--color-button-active': '#0088fa',\n '--color-button-focus': '#23272f',\n '--color-button-hover': '#23272f',\n '--color-border': '#eeeeee',\n '--color-commit-did-not-render-fill': '#cfd1d5',\n '--color-commit-did-not-render-fill-text': '#000000',\n '--color-commit-did-not-render-pattern': '#cfd1d5',\n '--color-commit-did-not-render-pattern-text': '#333333',\n '--color-commit-gradient-0': '#37afa9',\n '--color-commit-gradient-1': '#63b19e',\n '--color-commit-gradient-2': '#80b393',\n '--color-commit-gradient-3': '#97b488',\n '--color-commit-gradient-4': '#abb67d',\n '--color-commit-gradient-5': '#beb771',\n '--color-commit-gradient-6': '#cfb965',\n '--color-commit-gradient-7': '#dfba57',\n '--color-commit-gradient-8': '#efbb49',\n '--color-commit-gradient-9': '#febc38',\n '--color-commit-gradient-text': '#000000',\n '--color-component-name': '#6a51b2',\n '--color-component-name-inverted': '#ffffff',\n '--color-component-badge-background': '#e6e6e6',\n '--color-component-badge-background-inverted': 'rgba(255, 255, 255, 0.25)',\n '--color-component-badge-count': '#777d88',\n '--color-component-badge-count-inverted': 'rgba(255, 255, 255, 0.7)',\n '--color-console-error-badge-text': '#ffffff',\n '--color-console-error-background': '#fff0f0',\n '--color-console-error-border': '#ffd6d6',\n '--color-console-error-icon': '#eb3941',\n '--color-console-error-text': '#fe2e31',\n '--color-console-warning-badge-text': '#000000',\n '--color-console-warning-background': '#fffbe5',\n '--color-console-warning-border': '#fff5c1',\n '--color-console-warning-icon': '#f4bd00',\n '--color-console-warning-text': '#64460c',\n '--color-context-background': 'rgba(0,0,0,.9)',\n '--color-context-background-hover': 'rgba(255, 255, 255, 0.1)',\n '--color-context-background-selected': '#178fb9',\n '--color-context-border': '#3d424a',\n '--color-context-text': '#ffffff',\n '--color-context-text-selected': '#ffffff',\n '--color-dim': '#777d88',\n '--color-dimmer': '#cfd1d5',\n '--color-dimmest': '#eff0f1',\n '--color-error-background': 'hsl(0, 100%, 97%)',\n '--color-error-border': 'hsl(0, 100%, 92%)',\n '--color-error-text': '#ff0000',\n '--color-expand-collapse-toggle': '#777d88',\n '--color-forget-badge-background': '#2683e2',\n '--color-forget-badge-background-inverted': '#1a6bbc',\n '--color-forget-text': '#fff',\n '--color-link': '#0000ff',\n '--color-modal-background': 'rgba(255, 255, 255, 0.75)',\n '--color-bridge-version-npm-background': '#eff0f1',\n '--color-bridge-version-npm-text': '#000000',\n '--color-bridge-version-number': '#0088fa',\n '--color-primitive-hook-badge-background': '#e5e5e5',\n '--color-primitive-hook-badge-text': '#5f6673',\n '--color-record-active': '#fc3a4b',\n '--color-record-hover': '#3578e5',\n '--color-record-inactive': '#0088fa',\n '--color-resize-bar': '#eeeeee',\n '--color-resize-bar-active': '#dcdcdc',\n '--color-resize-bar-border': '#d1d1d1',\n '--color-resize-bar-dot': '#333333',\n '--color-timeline-internal-module': '#d1d1d1',\n '--color-timeline-internal-module-hover': '#c9c9c9',\n '--color-timeline-internal-module-text': '#444',\n '--color-timeline-native-event': '#ccc',\n '--color-timeline-native-event-hover': '#aaa',\n '--color-timeline-network-primary': '#fcf3dc',\n '--color-timeline-network-primary-hover': '#f0e7d1',\n '--color-timeline-network-secondary': '#efc457',\n '--color-timeline-network-secondary-hover': '#e3ba52',\n '--color-timeline-priority-background': '#f6f6f6',\n '--color-timeline-priority-border': '#eeeeee',\n '--color-timeline-user-timing': '#c9cacd',\n '--color-timeline-user-timing-hover': '#93959a',\n '--color-timeline-react-idle': '#d3e5f6',\n '--color-timeline-react-idle-hover': '#c3d9ef',\n '--color-timeline-react-render': '#9fc3f3',\n '--color-timeline-react-render-hover': '#83afe9',\n '--color-timeline-react-render-text': '#11365e',\n '--color-timeline-react-commit': '#c88ff0',\n '--color-timeline-react-commit-hover': '#b281d6',\n '--color-timeline-react-commit-text': '#3e2c4a',\n '--color-timeline-react-layout-effects': '#b281d6',\n '--color-timeline-react-layout-effects-hover': '#9d71bd',\n '--color-timeline-react-layout-effects-text': '#3e2c4a',\n '--color-timeline-react-passive-effects': '#b281d6',\n '--color-timeline-react-passive-effects-hover': '#9d71bd',\n '--color-timeline-react-passive-effects-text': '#3e2c4a',\n '--color-timeline-react-schedule': '#9fc3f3',\n '--color-timeline-react-schedule-hover': '#2683E2',\n '--color-timeline-react-suspense-rejected': '#f1cc14',\n '--color-timeline-react-suspense-rejected-hover': '#ffdf37',\n '--color-timeline-react-suspense-resolved': '#a6e59f',\n '--color-timeline-react-suspense-resolved-hover': '#89d281',\n '--color-timeline-react-suspense-unresolved': '#c9cacd',\n '--color-timeline-react-suspense-unresolved-hover': '#93959a',\n '--color-timeline-thrown-error': '#ee1638',\n '--color-timeline-thrown-error-hover': '#da1030',\n '--color-timeline-text-color': '#000000',\n '--color-timeline-text-dim-color': '#ccc',\n '--color-timeline-react-work-border': '#eeeeee',\n '--color-search-match': 'yellow',\n '--color-search-match-current': '#f7923b',\n '--color-selected-tree-highlight-active': 'rgba(0, 136, 250, 0.1)',\n '--color-selected-tree-highlight-inactive': 'rgba(0, 0, 0, 0.05)',\n '--color-scroll-caret': 'rgba(150, 150, 150, 0.5)',\n '--color-tab-selected-border': '#0088fa',\n '--color-text': '#000000',\n '--color-text-invalid': '#ff0000',\n '--color-text-selected': '#ffffff',\n '--color-toggle-background-invalid': '#fc3a4b',\n '--color-toggle-background-on': '#0088fa',\n '--color-toggle-background-off': '#cfd1d5',\n '--color-toggle-text': '#ffffff',\n '--color-warning-background': '#fb3655',\n '--color-warning-background-hover': '#f82042',\n '--color-warning-text-color': '#ffffff',\n '--color-warning-text-color-inverted': '#fd4d69',\n // The styles below should be kept in sync with 'root.css'\n // They are repeated there because they're used by e.g. tooltips or context menus\n // which get rendered outside of the DOM subtree (where normal theme/styles are written).\n '--color-scroll-thumb': '#c2c2c2',\n '--color-scroll-track': '#fafafa',\n '--color-tooltip-background': 'rgba(0, 0, 0, 0.9)',\n '--color-tooltip-text': '#ffffff'\n },\n dark: {\n '--color-attribute-name': '#9d87d2',\n '--color-attribute-name-not-editable': '#ededed',\n '--color-attribute-name-inverted': '#282828',\n '--color-attribute-value': '#cedae0',\n '--color-attribute-value-inverted': '#ffffff',\n '--color-attribute-editable-value': 'yellow',\n '--color-background': '#282c34',\n '--color-background-hover': 'rgba(255, 255, 255, 0.1)',\n '--color-background-inactive': '#3d424a',\n '--color-background-invalid': '#5c0000',\n '--color-background-selected': '#178fb9',\n '--color-button-background': '#282c34',\n '--color-button-background-focus': '#3d424a',\n '--color-button-background-hover': 'rgba(255, 255, 255, 0.2)',\n '--color-button': '#afb3b9',\n '--color-button-active': '#61dafb',\n '--color-button-disabled': '#4f5766',\n '--color-button-focus': '#a2e9fc',\n '--color-button-hover': '#ededed',\n '--color-border': '#3d424a',\n '--color-commit-did-not-render-fill': '#777d88',\n '--color-commit-did-not-render-fill-text': '#000000',\n '--color-commit-did-not-render-pattern': '#666c77',\n '--color-commit-did-not-render-pattern-text': '#ffffff',\n '--color-commit-gradient-0': '#37afa9',\n '--color-commit-gradient-1': '#63b19e',\n '--color-commit-gradient-2': '#80b393',\n '--color-commit-gradient-3': '#97b488',\n '--color-commit-gradient-4': '#abb67d',\n '--color-commit-gradient-5': '#beb771',\n '--color-commit-gradient-6': '#cfb965',\n '--color-commit-gradient-7': '#dfba57',\n '--color-commit-gradient-8': '#efbb49',\n '--color-commit-gradient-9': '#febc38',\n '--color-commit-gradient-text': '#000000',\n '--color-component-name': '#61dafb',\n '--color-component-name-inverted': '#282828',\n '--color-component-badge-background': '#5e6167',\n '--color-component-badge-background-inverted': '#46494e',\n '--color-component-badge-count': '#8f949d',\n '--color-component-badge-count-inverted': 'rgba(255, 255, 255, 0.85)',\n '--color-console-error-badge-text': '#000000',\n '--color-console-error-background': '#290000',\n '--color-console-error-border': '#5c0000',\n '--color-console-error-icon': '#eb3941',\n '--color-console-error-text': '#fc7f7f',\n '--color-console-warning-badge-text': '#000000',\n '--color-console-warning-background': '#332b00',\n '--color-console-warning-border': '#665500',\n '--color-console-warning-icon': '#f4bd00',\n '--color-console-warning-text': '#f5f2ed',\n '--color-context-background': 'rgba(255,255,255,.95)',\n '--color-context-background-hover': 'rgba(0, 136, 250, 0.1)',\n '--color-context-background-selected': '#0088fa',\n '--color-context-border': '#eeeeee',\n '--color-context-text': '#000000',\n '--color-context-text-selected': '#ffffff',\n '--color-dim': '#8f949d',\n '--color-dimmer': '#777d88',\n '--color-dimmest': '#4f5766',\n '--color-error-background': '#200',\n '--color-error-border': '#900',\n '--color-error-text': '#f55',\n '--color-expand-collapse-toggle': '#8f949d',\n '--color-forget-badge-background': '#2683e2',\n '--color-forget-badge-background-inverted': '#1a6bbc',\n '--color-forget-text': '#fff',\n '--color-link': '#61dafb',\n '--color-modal-background': 'rgba(0, 0, 0, 0.75)',\n '--color-bridge-version-npm-background': 'rgba(0, 0, 0, 0.25)',\n '--color-bridge-version-npm-text': '#ffffff',\n '--color-bridge-version-number': 'yellow',\n '--color-primitive-hook-badge-background': 'rgba(0, 0, 0, 0.25)',\n '--color-primitive-hook-badge-text': 'rgba(255, 255, 255, 0.7)',\n '--color-record-active': '#fc3a4b',\n '--color-record-hover': '#a2e9fc',\n '--color-record-inactive': '#61dafb',\n '--color-resize-bar': '#282c34',\n '--color-resize-bar-active': '#31363f',\n '--color-resize-bar-border': '#3d424a',\n '--color-resize-bar-dot': '#cfd1d5',\n '--color-timeline-internal-module': '#303542',\n '--color-timeline-internal-module-hover': '#363b4a',\n '--color-timeline-internal-module-text': '#7f8899',\n '--color-timeline-native-event': '#b2b2b2',\n '--color-timeline-native-event-hover': '#949494',\n '--color-timeline-network-primary': '#fcf3dc',\n '--color-timeline-network-primary-hover': '#e3dbc5',\n '--color-timeline-network-secondary': '#efc457',\n '--color-timeline-network-secondary-hover': '#d6af4d',\n '--color-timeline-priority-background': '#1d2129',\n '--color-timeline-priority-border': '#282c34',\n '--color-timeline-user-timing': '#c9cacd',\n '--color-timeline-user-timing-hover': '#93959a',\n '--color-timeline-react-idle': '#3d485b',\n '--color-timeline-react-idle-hover': '#465269',\n '--color-timeline-react-render': '#2683E2',\n '--color-timeline-react-render-hover': '#1a76d4',\n '--color-timeline-react-render-text': '#11365e',\n '--color-timeline-react-commit': '#731fad',\n '--color-timeline-react-commit-hover': '#611b94',\n '--color-timeline-react-commit-text': '#e5c1ff',\n '--color-timeline-react-layout-effects': '#611b94',\n '--color-timeline-react-layout-effects-hover': '#51167a',\n '--color-timeline-react-layout-effects-text': '#e5c1ff',\n '--color-timeline-react-passive-effects': '#611b94',\n '--color-timeline-react-passive-effects-hover': '#51167a',\n '--color-timeline-react-passive-effects-text': '#e5c1ff',\n '--color-timeline-react-schedule': '#2683E2',\n '--color-timeline-react-schedule-hover': '#1a76d4',\n '--color-timeline-react-suspense-rejected': '#f1cc14',\n '--color-timeline-react-suspense-rejected-hover': '#e4c00f',\n '--color-timeline-react-suspense-resolved': '#a6e59f',\n '--color-timeline-react-suspense-resolved-hover': '#89d281',\n '--color-timeline-react-suspense-unresolved': '#c9cacd',\n '--color-timeline-react-suspense-unresolved-hover': '#93959a',\n '--color-timeline-thrown-error': '#fb3655',\n '--color-timeline-thrown-error-hover': '#f82042',\n '--color-timeline-text-color': '#282c34',\n '--color-timeline-text-dim-color': '#555b66',\n '--color-timeline-react-work-border': '#3d424a',\n '--color-search-match': 'yellow',\n '--color-search-match-current': '#f7923b',\n '--color-selected-tree-highlight-active': 'rgba(23, 143, 185, 0.15)',\n '--color-selected-tree-highlight-inactive': 'rgba(255, 255, 255, 0.05)',\n '--color-scroll-caret': '#4f5766',\n '--color-shadow': 'rgba(0, 0, 0, 0.5)',\n '--color-tab-selected-border': '#178fb9',\n '--color-text': '#ffffff',\n '--color-text-invalid': '#ff8080',\n '--color-text-selected': '#ffffff',\n '--color-toggle-background-invalid': '#fc3a4b',\n '--color-toggle-background-on': '#178fb9',\n '--color-toggle-background-off': '#777d88',\n '--color-toggle-text': '#ffffff',\n '--color-warning-background': '#ee1638',\n '--color-warning-background-hover': '#da1030',\n '--color-warning-text-color': '#ffffff',\n '--color-warning-text-color-inverted': '#ee1638',\n // The styles below should be kept in sync with 'root.css'\n // They are repeated there because they're used by e.g. tooltips or context menus\n // which get rendered outside of the DOM subtree (where normal theme/styles are written).\n '--color-scroll-thumb': '#afb3b9',\n '--color-scroll-track': '#313640',\n '--color-tooltip-background': 'rgba(255, 255, 255, 0.95)',\n '--color-tooltip-text': '#000000'\n },\n compact: {\n '--font-size-monospace-small': '9px',\n '--font-size-monospace-normal': '11px',\n '--font-size-monospace-large': '15px',\n '--font-size-sans-small': '10px',\n '--font-size-sans-normal': '12px',\n '--font-size-sans-large': '14px',\n '--line-height-data': '18px'\n },\n comfortable: {\n '--font-size-monospace-small': '10px',\n '--font-size-monospace-normal': '13px',\n '--font-size-monospace-large': '17px',\n '--font-size-sans-small': '12px',\n '--font-size-sans-normal': '14px',\n '--font-size-sans-large': '16px',\n '--line-height-data': '22px'\n }\n};\n\n// HACK\n//\n// Sometimes the inline target is rendered before root styles are applied,\n// which would result in e.g. NaN itemSize being passed to react-window list.\nconst COMFORTABLE_LINE_HEIGHT = parseInt(THEME_STYLES.comfortable['--line-height-data'], 10);\nconst COMPACT_LINE_HEIGHT = parseInt(THEME_STYLES.compact['--line-height-data'], 10);\n\n;// CONCATENATED MODULE: ../react-devtools-timeline/src/constants.js\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\n\nconst REACT_TOTAL_NUM_LANES = 31;\n\n// Increment this number any time a backwards breaking change is made to the profiler metadata.\nconst SCHEDULING_PROFILER_VERSION = 1;\nconst SNAPSHOT_MAX_HEIGHT = 60;\n;// CONCATENATED MODULE: ../react-devtools-timeline/src/import-worker/InvalidProfileError.js\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\n/**\n * An error thrown when an invalid profile could not be processed.\n */\nclass InvalidProfileError extends Error {}\n;// CONCATENATED MODULE: ../../node_modules/memoize-one/dist/memoize-one.esm.js\nfunction areInputsEqual(newInputs, lastInputs) {\n if (newInputs.length !== lastInputs.length) {\n return false;\n }\n for (var i = 0; i < newInputs.length; i++) {\n if (newInputs[i] !== lastInputs[i]) {\n return false;\n }\n }\n return true;\n}\nfunction memoizeOne(resultFn, isEqual) {\n if (isEqual === void 0) {\n isEqual = areInputsEqual;\n }\n var lastThis;\n var lastArgs = [];\n var lastResult;\n var calledOnce = false;\n function memoized() {\n var newArgs = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n newArgs[_i] = arguments[_i];\n }\n if (calledOnce && lastThis === this && isEqual(newArgs, lastArgs)) {\n return lastResult;\n }\n lastResult = resultFn.apply(this, newArgs);\n calledOnce = true;\n lastThis = this;\n lastArgs = newArgs;\n return lastResult;\n }\n return memoized;\n}\n/* harmony default export */ const memoize_one_esm = (memoizeOne);\n;// CONCATENATED MODULE: ../react-devtools-timeline/src/utils/getBatchRange.js\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\n\nfunction unmemoizedGetBatchRange(batchUID, data, minStartTime = 0) {\n const measures = data.batchUIDToMeasuresMap.get(batchUID);\n if (measures == null || measures.length === 0) {\n throw Error(`Could not find measures with batch UID \"${batchUID}\"`);\n }\n const lastMeasure = measures[measures.length - 1];\n const stopTime = lastMeasure.timestamp + lastMeasure.duration;\n if (stopTime < minStartTime) {\n return [0, 0];\n }\n let startTime = minStartTime;\n for (let index = 0; index < measures.length; index++) {\n const measure = measures[index];\n if (measure.timestamp >= minStartTime) {\n startTime = measure.timestamp;\n break;\n }\n }\n return [startTime, stopTime];\n}\nconst getBatchRange = memoize_one_esm(unmemoizedGetBatchRange);\n// EXTERNAL MODULE: ../../node_modules/error-stack-parser/error-stack-parser.js\nvar error_stack_parser = __webpack_require__(715);\nvar error_stack_parser_default = /*#__PURE__*/__webpack_require__.n(error_stack_parser);\n;// CONCATENATED MODULE: ../react-devtools-timeline/src/import-worker/preprocessData.js\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\n\n\n\n\n\nconst NATIVE_EVENT_DURATION_THRESHOLD = 20;\nconst NESTED_UPDATE_DURATION_THRESHOLD = 20;\nconst WARNING_STRINGS = {\n LONG_EVENT_HANDLER: 'An event handler scheduled a big update with React. Consider using the Transition API to defer some of this work.',\n NESTED_UPDATE: 'A big nested update was scheduled during layout. ' + 'Nested updates require React to re-render synchronously before the browser can paint. ' + 'Consider delaying this update by moving it to a passive effect (useEffect).',\n SUSPEND_DURING_UPDATE: 'A component suspended during an update which caused a fallback to be shown. ' + \"Consider using the Transition API to avoid hiding components after they've been mounted.\"\n};\n\n// Exported for tests\nfunction getLanesFromTransportDecimalBitmask(laneBitmaskString) {\n const laneBitmask = parseInt(laneBitmaskString, 10);\n\n // As negative numbers are stored in two's complement format, our bitmask\n // checks will be thrown off by them.\n if (laneBitmask < 0) {\n return [];\n }\n const lanes = [];\n let powersOfTwo = 0;\n while (powersOfTwo <= REACT_TOTAL_NUM_LANES) {\n if (1 << powersOfTwo & laneBitmask) {\n lanes.push(powersOfTwo);\n }\n powersOfTwo++;\n }\n return lanes;\n}\nfunction updateLaneToLabelMap(profilerData, laneLabelTuplesString) {\n // These marks appear multiple times in the data;\n // We only need to extact them once.\n if (profilerData.laneToLabelMap.size === 0) {\n const laneLabelTuples = laneLabelTuplesString.split(',');\n for (let laneIndex = 0; laneIndex < laneLabelTuples.length; laneIndex++) {\n // The numeric lane value (e.g. 64) isn't important.\n // The profiler parses and stores the lane's position within the bitmap,\n // (e.g. lane 1 is index 0, lane 16 is index 4).\n profilerData.laneToLabelMap.set(laneIndex, laneLabelTuples[laneIndex]);\n }\n }\n}\nlet profilerVersion = null;\nfunction getLastType(stack) {\n if (stack.length > 0) {\n const {\n type\n } = stack[stack.length - 1];\n return type;\n }\n return null;\n}\nfunction getDepth(stack) {\n if (stack.length > 0) {\n const {\n depth,\n type\n } = stack[stack.length - 1];\n return type === 'render-idle' ? depth : depth + 1;\n }\n return 0;\n}\nfunction markWorkStarted(type, startTime, lanes, currentProfilerData, state) {\n const {\n batchUID,\n measureStack\n } = state;\n const depth = getDepth(measureStack);\n const measure = {\n type,\n batchUID,\n depth,\n lanes,\n timestamp: startTime,\n duration: 0\n };\n state.measureStack.push({\n depth,\n measure,\n startTime,\n type\n });\n\n // This array is pre-initialized when the batchUID is generated.\n const measures = currentProfilerData.batchUIDToMeasuresMap.get(batchUID);\n if (measures != null) {\n measures.push(measure);\n } else {\n currentProfilerData.batchUIDToMeasuresMap.set(state.batchUID, [measure]);\n }\n\n // This array is pre-initialized before processing starts.\n lanes.forEach(lane => {\n currentProfilerData.laneToReactMeasureMap.get(lane).push(measure);\n });\n}\nfunction markWorkCompleted(type, stopTime, currentProfilerData, stack) {\n if (stack.length === 0) {\n console.error('Unexpected type \"%s\" completed at %sms while stack is empty.', type, stopTime);\n // Ignore work \"completion\" user timing mark that doesn't complete anything\n return;\n }\n const last = stack[stack.length - 1];\n if (last.type !== type) {\n console.error('Unexpected type \"%s\" completed at %sms before \"%s\" completed.', type, stopTime, last.type);\n }\n\n // $FlowFixMe[incompatible-use]\n const {\n measure,\n startTime\n } = stack.pop();\n if (!measure) {\n console.error('Could not find matching measure for type \"%s\".', type);\n }\n\n // $FlowFixMe[cannot-write] This property should not be writable outside of this function.\n measure.duration = stopTime - startTime;\n}\nfunction throwIfIncomplete(type, stack) {\n const lastIndex = stack.length - 1;\n if (lastIndex >= 0) {\n const last = stack[lastIndex];\n if (last.stopTime === undefined && last.type === type) {\n throw new InvalidProfileError(`Unexpected type \"${type}\" started before \"${last.type}\" completed.`);\n }\n }\n}\nfunction processEventDispatch(event, timestamp, profilerData, state) {\n const data = event.args.data;\n const type = data.type;\n if (type.startsWith('react-')) {\n const stackTrace = data.stackTrace;\n if (stackTrace) {\n const topFrame = stackTrace[stackTrace.length - 1];\n if (topFrame.url.includes('/react-dom.')) {\n // Filter out fake React events dispatched by invokeGuardedCallbackDev.\n return;\n }\n }\n }\n\n // Reduce noise from events like DOMActivate, load/unload, etc. which are usually not relevant\n if (type === 'blur' || type === 'click' || type === 'input' || type.startsWith('focus') || type.startsWith('key') || type.startsWith('mouse') || type.startsWith('pointer')) {\n const duration = event.dur / 1000;\n let depth = 0;\n while (state.nativeEventStack.length > 0) {\n const prevNativeEvent = state.nativeEventStack[state.nativeEventStack.length - 1];\n const prevStopTime = prevNativeEvent.timestamp + prevNativeEvent.duration;\n if (timestamp < prevStopTime) {\n depth = prevNativeEvent.depth + 1;\n break;\n } else {\n state.nativeEventStack.pop();\n }\n }\n const nativeEvent = {\n depth,\n duration,\n timestamp,\n type,\n warning: null\n };\n profilerData.nativeEvents.push(nativeEvent);\n\n // Keep track of curent event in case future ones overlap.\n // We separate them into different vertical lanes in this case.\n state.nativeEventStack.push(nativeEvent);\n }\n}\nfunction processResourceFinish(event, timestamp, profilerData, state) {\n const requestId = event.args.data.requestId;\n const networkMeasure = state.requestIdToNetworkMeasureMap.get(requestId);\n if (networkMeasure != null) {\n networkMeasure.finishTimestamp = timestamp;\n if (networkMeasure.firstReceivedDataTimestamp === 0) {\n networkMeasure.firstReceivedDataTimestamp = timestamp;\n }\n if (networkMeasure.lastReceivedDataTimestamp === 0) {\n networkMeasure.lastReceivedDataTimestamp = timestamp;\n }\n\n // Clean up now that the resource is done.\n state.requestIdToNetworkMeasureMap.delete(event.args.data.requestId);\n }\n}\nfunction processResourceReceivedData(event, timestamp, profilerData, state) {\n const requestId = event.args.data.requestId;\n const networkMeasure = state.requestIdToNetworkMeasureMap.get(requestId);\n if (networkMeasure != null) {\n if (networkMeasure.firstReceivedDataTimestamp === 0) {\n networkMeasure.firstReceivedDataTimestamp = timestamp;\n }\n networkMeasure.lastReceivedDataTimestamp = timestamp;\n networkMeasure.finishTimestamp = timestamp;\n }\n}\nfunction processResourceReceiveResponse(event, timestamp, profilerData, state) {\n const requestId = event.args.data.requestId;\n const networkMeasure = state.requestIdToNetworkMeasureMap.get(requestId);\n if (networkMeasure != null) {\n networkMeasure.receiveResponseTimestamp = timestamp;\n }\n}\nfunction processScreenshot(event, timestamp, profilerData, state) {\n const encodedSnapshot = event.args.snapshot; // Base 64 encoded\n\n const snapshot = {\n height: 0,\n image: null,\n imageSource: `data:image/png;base64,${encodedSnapshot}`,\n timestamp,\n width: 0\n };\n\n // Delay processing until we've extracted snapshot dimensions.\n let resolveFn = null;\n state.asyncProcessingPromises.push(new Promise(resolve => {\n resolveFn = resolve;\n }));\n\n // Parse the Base64 image data to determine native size.\n // This will be used later to scale for display within the thumbnail strip.\n fetch(snapshot.imageSource).then(response => response.blob()).then(blob => {\n // $FlowFixMe[cannot-resolve-name] createImageBitmap\n createImageBitmap(blob).then(bitmap => {\n snapshot.height = bitmap.height;\n snapshot.width = bitmap.width;\n resolveFn();\n });\n });\n profilerData.snapshots.push(snapshot);\n}\nfunction processResourceSendRequest(event, timestamp, profilerData, state) {\n const data = event.args.data;\n const requestId = data.requestId;\n const availableDepths = new Array(state.requestIdToNetworkMeasureMap.size + 1).fill(true);\n state.requestIdToNetworkMeasureMap.forEach(({\n depth\n }) => {\n availableDepths[depth] = false;\n });\n let depth = 0;\n for (let i = 0; i < availableDepths.length; i++) {\n if (availableDepths[i]) {\n depth = i;\n break;\n }\n }\n const networkMeasure = {\n depth,\n finishTimestamp: 0,\n firstReceivedDataTimestamp: 0,\n lastReceivedDataTimestamp: 0,\n requestId,\n requestMethod: data.requestMethod,\n priority: data.priority,\n sendRequestTimestamp: timestamp,\n receiveResponseTimestamp: 0,\n url: data.url\n };\n state.requestIdToNetworkMeasureMap.set(requestId, networkMeasure);\n profilerData.networkMeasures.push(networkMeasure);\n networkMeasure.sendRequestTimestamp = timestamp;\n}\nfunction processTimelineEvent(event, /** Finalized profiler data up to `event`. May be mutated. */\ncurrentProfilerData, /** Intermediate processor state. May be mutated. */\nstate) {\n const {\n cat,\n name,\n ts,\n ph\n } = event;\n const startTime = (ts - currentProfilerData.startTime) / 1000;\n switch (cat) {\n case 'disabled-by-default-devtools.screenshot':\n processScreenshot(event, startTime, currentProfilerData, state);\n break;\n case 'devtools.timeline':\n switch (name) {\n case 'EventDispatch':\n processEventDispatch(event, startTime, currentProfilerData, state);\n break;\n case 'ResourceFinish':\n processResourceFinish(event, startTime, currentProfilerData, state);\n break;\n case 'ResourceReceivedData':\n processResourceReceivedData(event, startTime, currentProfilerData, state);\n break;\n case 'ResourceReceiveResponse':\n processResourceReceiveResponse(event, startTime, currentProfilerData, state);\n break;\n case 'ResourceSendRequest':\n processResourceSendRequest(event, startTime, currentProfilerData, state);\n break;\n }\n break;\n case 'blink.user_timing':\n if (name.startsWith('--react-version-')) {\n const [reactVersion] = name.slice(16).split('-');\n currentProfilerData.reactVersion = reactVersion;\n } else if (name.startsWith('--profiler-version-')) {\n const [versionString] = name.slice(19).split('-');\n profilerVersion = parseInt(versionString, 10);\n if (profilerVersion !== SCHEDULING_PROFILER_VERSION) {\n throw new InvalidProfileError(`This version of profiling data (${versionString}) is not supported by the current profiler.`);\n }\n } else if (name.startsWith('--react-lane-labels-')) {\n const [laneLabelTuplesString] = name.slice(20).split('-');\n updateLaneToLabelMap(currentProfilerData, laneLabelTuplesString);\n } else if (name.startsWith('--component-')) {\n processReactComponentMeasure(name, startTime, currentProfilerData, state);\n } else if (name.startsWith('--schedule-render-')) {\n const [laneBitmaskString] = name.slice(18).split('-');\n currentProfilerData.schedulingEvents.push({\n type: 'schedule-render',\n lanes: getLanesFromTransportDecimalBitmask(laneBitmaskString),\n timestamp: startTime,\n warning: null\n });\n } else if (name.startsWith('--schedule-forced-update-')) {\n const [laneBitmaskString, componentName] = name.slice(25).split('-');\n const forceUpdateEvent = {\n type: 'schedule-force-update',\n lanes: getLanesFromTransportDecimalBitmask(laneBitmaskString),\n componentName,\n timestamp: startTime,\n warning: null\n };\n\n // If this is a nested update, make a note of it.\n // Once we're done processing events, we'll check to see if it was a long update and warn about it.\n if (state.measureStack.find(({\n type\n }) => type === 'commit')) {\n state.potentialLongNestedUpdate = forceUpdateEvent;\n }\n currentProfilerData.schedulingEvents.push(forceUpdateEvent);\n } else if (name.startsWith('--schedule-state-update-')) {\n const [laneBitmaskString, componentName] = name.slice(24).split('-');\n const stateUpdateEvent = {\n type: 'schedule-state-update',\n lanes: getLanesFromTransportDecimalBitmask(laneBitmaskString),\n componentName,\n timestamp: startTime,\n warning: null\n };\n\n // If this is a nested update, make a note of it.\n // Once we're done processing events, we'll check to see if it was a long update and warn about it.\n if (state.measureStack.find(({\n type\n }) => type === 'commit')) {\n state.potentialLongNestedUpdate = stateUpdateEvent;\n }\n currentProfilerData.schedulingEvents.push(stateUpdateEvent);\n } else if (name.startsWith('--error-')) {\n const [componentName, phase, message] = name.slice(8).split('-');\n currentProfilerData.thrownErrors.push({\n componentName,\n message,\n phase: phase,\n timestamp: startTime,\n type: 'thrown-error'\n });\n } else if (name.startsWith('--suspense-suspend-')) {\n const [id, componentName, phase, laneBitmaskString, promiseName] = name.slice(19).split('-');\n const lanes = getLanesFromTransportDecimalBitmask(laneBitmaskString);\n const availableDepths = new Array(state.unresolvedSuspenseEvents.size + 1).fill(true);\n state.unresolvedSuspenseEvents.forEach(({\n depth\n }) => {\n availableDepths[depth] = false;\n });\n let depth = 0;\n for (let i = 0; i < availableDepths.length; i++) {\n if (availableDepths[i]) {\n depth = i;\n break;\n }\n }\n\n // TODO (timeline) Maybe we should calculate depth in post,\n // so unresolved Suspense requests don't take up space.\n // We can't know if they'll be resolved or not at this point.\n // We'll just give them a default (fake) duration width.\n\n const suspenseEvent = {\n componentName,\n depth,\n duration: null,\n id,\n phase: phase,\n promiseName: promiseName || null,\n resolution: 'unresolved',\n timestamp: startTime,\n type: 'suspense',\n warning: null\n };\n if (phase === 'update') {\n // If a component suspended during an update, we should verify that it was during a transition.\n // We need the lane metadata to verify this though.\n // Since that data is only logged during commit, we may not have it yet.\n // Store these events for post-processing then.\n state.potentialSuspenseEventsOutsideOfTransition.push([suspenseEvent, lanes]);\n }\n currentProfilerData.suspenseEvents.push(suspenseEvent);\n state.unresolvedSuspenseEvents.set(id, suspenseEvent);\n } else if (name.startsWith('--suspense-resolved-')) {\n const [id] = name.slice(20).split('-');\n const suspenseEvent = state.unresolvedSuspenseEvents.get(id);\n if (suspenseEvent != null) {\n state.unresolvedSuspenseEvents.delete(id);\n suspenseEvent.duration = startTime - suspenseEvent.timestamp;\n suspenseEvent.resolution = 'resolved';\n }\n } else if (name.startsWith('--suspense-rejected-')) {\n const [id] = name.slice(20).split('-');\n const suspenseEvent = state.unresolvedSuspenseEvents.get(id);\n if (suspenseEvent != null) {\n state.unresolvedSuspenseEvents.delete(id);\n suspenseEvent.duration = startTime - suspenseEvent.timestamp;\n suspenseEvent.resolution = 'rejected';\n }\n } else if (name.startsWith('--render-start-')) {\n if (state.nextRenderShouldGenerateNewBatchID) {\n state.nextRenderShouldGenerateNewBatchID = false;\n state.batchUID = state.uidCounter++;\n }\n\n // If this render is the result of a nested update, make a note of it.\n // Once we're done processing events, we'll check to see if it was a long update and warn about it.\n if (state.potentialLongNestedUpdate !== null) {\n state.potentialLongNestedUpdates.push([state.potentialLongNestedUpdate, state.batchUID]);\n state.potentialLongNestedUpdate = null;\n }\n const [laneBitmaskString] = name.slice(15).split('-');\n throwIfIncomplete('render', state.measureStack);\n if (getLastType(state.measureStack) !== 'render-idle') {\n markWorkStarted('render-idle', startTime, getLanesFromTransportDecimalBitmask(laneBitmaskString), currentProfilerData, state);\n }\n markWorkStarted('render', startTime, getLanesFromTransportDecimalBitmask(laneBitmaskString), currentProfilerData, state);\n for (let i = 0; i < state.nativeEventStack.length; i++) {\n const nativeEvent = state.nativeEventStack[i];\n const stopTime = nativeEvent.timestamp + nativeEvent.duration;\n\n // If React work was scheduled during an event handler, and the event had a long duration,\n // it might be because the React render was long and stretched the event.\n // It might also be that the React work was short and that something else stretched the event.\n // Make a note of this event for now and we'll examine the batch of React render work later.\n // (We can't know until we're done processing the React update anyway.)\n if (stopTime > startTime) {\n state.potentialLongEvents.push([nativeEvent, state.batchUID]);\n }\n }\n } else if (name.startsWith('--render-stop') || name.startsWith('--render-yield')) {\n markWorkCompleted('render', startTime, currentProfilerData, state.measureStack);\n } else if (name.startsWith('--commit-start-')) {\n state.nextRenderShouldGenerateNewBatchID = true;\n const [laneBitmaskString] = name.slice(15).split('-');\n markWorkStarted('commit', startTime, getLanesFromTransportDecimalBitmask(laneBitmaskString), currentProfilerData, state);\n } else if (name.startsWith('--commit-stop')) {\n markWorkCompleted('commit', startTime, currentProfilerData, state.measureStack);\n markWorkCompleted('render-idle', startTime, currentProfilerData, state.measureStack);\n } else if (name.startsWith('--layout-effects-start-')) {\n const [laneBitmaskString] = name.slice(23).split('-');\n markWorkStarted('layout-effects', startTime, getLanesFromTransportDecimalBitmask(laneBitmaskString), currentProfilerData, state);\n } else if (name.startsWith('--layout-effects-stop')) {\n markWorkCompleted('layout-effects', startTime, currentProfilerData, state.measureStack);\n } else if (name.startsWith('--passive-effects-start-')) {\n const [laneBitmaskString] = name.slice(24).split('-');\n markWorkStarted('passive-effects', startTime, getLanesFromTransportDecimalBitmask(laneBitmaskString), currentProfilerData, state);\n } else if (name.startsWith('--passive-effects-stop')) {\n markWorkCompleted('passive-effects', startTime, currentProfilerData, state.measureStack);\n } else if (name.startsWith('--react-internal-module-start-')) {\n const stackFrameStart = name.slice(30);\n if (!state.internalModuleStackStringSet.has(stackFrameStart)) {\n state.internalModuleStackStringSet.add(stackFrameStart);\n const parsedStackFrameStart = parseStackFrame(stackFrameStart);\n state.internalModuleCurrentStackFrame = parsedStackFrameStart;\n }\n } else if (name.startsWith('--react-internal-module-stop-')) {\n const stackFrameStop = name.slice(29);\n if (!state.internalModuleStackStringSet.has(stackFrameStop)) {\n state.internalModuleStackStringSet.add(stackFrameStop);\n const parsedStackFrameStop = parseStackFrame(stackFrameStop);\n if (parsedStackFrameStop !== null && state.internalModuleCurrentStackFrame !== null) {\n const parsedStackFrameStart = state.internalModuleCurrentStackFrame;\n state.internalModuleCurrentStackFrame = null;\n const range = [parsedStackFrameStart, parsedStackFrameStop];\n const ranges = currentProfilerData.internalModuleSourceToRanges.get(parsedStackFrameStart.fileName);\n if (ranges == null) {\n currentProfilerData.internalModuleSourceToRanges.set(parsedStackFrameStart.fileName, [range]);\n } else {\n ranges.push(range);\n }\n }\n }\n } else if (ph === 'R' || ph === 'n') {\n // User Timing mark\n currentProfilerData.otherUserTimingMarks.push({\n name,\n timestamp: startTime\n });\n } else if (ph === 'b') {\n // TODO: Begin user timing measure\n } else if (ph === 'e') {\n // TODO: End user timing measure\n } else if (ph === 'i' || ph === 'I') {\n // Instant events.\n // Note that the capital \"I\" is a deprecated value that exists in Chrome Canary traces.\n } else {\n throw new InvalidProfileError(`Unrecognized event ${JSON.stringify(event)}! This is likely a bug in this profiler tool.`);\n }\n break;\n }\n}\nfunction assertNoOverlappingComponentMeasure(state) {\n if (state.currentReactComponentMeasure !== null) {\n console.error('Component measure started while another measure in progress:', state.currentReactComponentMeasure);\n }\n}\nfunction assertCurrentComponentMeasureType(state, type) {\n if (state.currentReactComponentMeasure === null) {\n console.error(`Component measure type \"${type}\" stopped while no measure was in progress`);\n } else if (state.currentReactComponentMeasure.type !== type) {\n console.error(`Component measure type \"${type}\" stopped while type ${state.currentReactComponentMeasure.type} in progress`);\n }\n}\nfunction processReactComponentMeasure(name, startTime, currentProfilerData, state) {\n if (name.startsWith('--component-render-start-')) {\n const [componentName] = name.slice(25).split('-');\n assertNoOverlappingComponentMeasure(state);\n state.currentReactComponentMeasure = {\n componentName,\n timestamp: startTime,\n duration: 0,\n type: 'render',\n warning: null\n };\n } else if (name === '--component-render-stop') {\n assertCurrentComponentMeasureType(state, 'render');\n if (state.currentReactComponentMeasure !== null) {\n const componentMeasure = state.currentReactComponentMeasure;\n componentMeasure.duration = startTime - componentMeasure.timestamp;\n state.currentReactComponentMeasure = null;\n currentProfilerData.componentMeasures.push(componentMeasure);\n }\n } else if (name.startsWith('--component-layout-effect-mount-start-')) {\n const [componentName] = name.slice(38).split('-');\n assertNoOverlappingComponentMeasure(state);\n state.currentReactComponentMeasure = {\n componentName,\n timestamp: startTime,\n duration: 0,\n type: 'layout-effect-mount',\n warning: null\n };\n } else if (name === '--component-layout-effect-mount-stop') {\n assertCurrentComponentMeasureType(state, 'layout-effect-mount');\n if (state.currentReactComponentMeasure !== null) {\n const componentMeasure = state.currentReactComponentMeasure;\n componentMeasure.duration = startTime - componentMeasure.timestamp;\n state.currentReactComponentMeasure = null;\n currentProfilerData.componentMeasures.push(componentMeasure);\n }\n } else if (name.startsWith('--component-layout-effect-unmount-start-')) {\n const [componentName] = name.slice(40).split('-');\n assertNoOverlappingComponentMeasure(state);\n state.currentReactComponentMeasure = {\n componentName,\n timestamp: startTime,\n duration: 0,\n type: 'layout-effect-unmount',\n warning: null\n };\n } else if (name === '--component-layout-effect-unmount-stop') {\n assertCurrentComponentMeasureType(state, 'layout-effect-unmount');\n if (state.currentReactComponentMeasure !== null) {\n const componentMeasure = state.currentReactComponentMeasure;\n componentMeasure.duration = startTime - componentMeasure.timestamp;\n state.currentReactComponentMeasure = null;\n currentProfilerData.componentMeasures.push(componentMeasure);\n }\n } else if (name.startsWith('--component-passive-effect-mount-start-')) {\n const [componentName] = name.slice(39).split('-');\n assertNoOverlappingComponentMeasure(state);\n state.currentReactComponentMeasure = {\n componentName,\n timestamp: startTime,\n duration: 0,\n type: 'passive-effect-mount',\n warning: null\n };\n } else if (name === '--component-passive-effect-mount-stop') {\n assertCurrentComponentMeasureType(state, 'passive-effect-mount');\n if (state.currentReactComponentMeasure !== null) {\n const componentMeasure = state.currentReactComponentMeasure;\n componentMeasure.duration = startTime - componentMeasure.timestamp;\n state.currentReactComponentMeasure = null;\n currentProfilerData.componentMeasures.push(componentMeasure);\n }\n } else if (name.startsWith('--component-passive-effect-unmount-start-')) {\n const [componentName] = name.slice(41).split('-');\n assertNoOverlappingComponentMeasure(state);\n state.currentReactComponentMeasure = {\n componentName,\n timestamp: startTime,\n duration: 0,\n type: 'passive-effect-unmount',\n warning: null\n };\n } else if (name === '--component-passive-effect-unmount-stop') {\n assertCurrentComponentMeasureType(state, 'passive-effect-unmount');\n if (state.currentReactComponentMeasure !== null) {\n const componentMeasure = state.currentReactComponentMeasure;\n componentMeasure.duration = startTime - componentMeasure.timestamp;\n state.currentReactComponentMeasure = null;\n currentProfilerData.componentMeasures.push(componentMeasure);\n }\n }\n}\nfunction preprocessFlamechart(rawData) {\n let parsedData;\n try {\n parsedData = (0,library.importFromChromeTimeline)(rawData, 'react-devtools');\n } catch (error) {\n // Assume any Speedscope errors are caused by bad profiles\n const errorToRethrow = new InvalidProfileError(error.message);\n errorToRethrow.stack = error.stack;\n throw errorToRethrow;\n }\n const profile = parsedData.profiles[0]; // TODO: Choose the main CPU thread only\n\n const speedscopeFlamechart = new library.Flamechart({\n // $FlowFixMe[method-unbinding]\n getTotalWeight: profile.getTotalWeight.bind(profile),\n // $FlowFixMe[method-unbinding]\n forEachCall: profile.forEachCall.bind(profile),\n // $FlowFixMe[method-unbinding]\n formatValue: profile.formatValue.bind(profile),\n getColorBucketForFrame: () => 0\n });\n const flamechart = speedscopeFlamechart.getLayers().map(layer => layer.map(({\n start,\n end,\n node: {\n frame: {\n name,\n file,\n line,\n col\n }\n }\n }) => ({\n name,\n timestamp: start / 1000,\n duration: (end - start) / 1000,\n scriptUrl: file,\n locationLine: line,\n locationColumn: col\n })));\n return flamechart;\n}\nfunction parseStackFrame(stackFrame) {\n const error = new Error();\n error.stack = stackFrame;\n const frames = error_stack_parser_default().parse(error);\n return frames.length === 1 ? frames[0] : null;\n}\nasync function preprocessData(timeline) {\n const flamechart = preprocessFlamechart(timeline);\n const laneToReactMeasureMap = new Map();\n for (let lane = 0; lane < REACT_TOTAL_NUM_LANES; lane++) {\n laneToReactMeasureMap.set(lane, []);\n }\n const profilerData = {\n batchUIDToMeasuresMap: new Map(),\n componentMeasures: [],\n duration: 0,\n flamechart,\n internalModuleSourceToRanges: new Map(),\n laneToLabelMap: new Map(),\n laneToReactMeasureMap,\n nativeEvents: [],\n networkMeasures: [],\n otherUserTimingMarks: [],\n reactVersion: null,\n schedulingEvents: [],\n snapshots: [],\n snapshotHeight: 0,\n startTime: 0,\n suspenseEvents: [],\n thrownErrors: []\n };\n\n // Sort `timeline`. JSON Array Format trace events need not be ordered. See:\n // https://docs.google.com/document/d/1CvAClvFfyA5R-PhYUmn5OOQtYMH4h6I0nSsKchNAySU/preview#heading=h.f2f0yd51wi15\n timeline = timeline.filter(Boolean).sort((a, b) => a.ts > b.ts ? 1 : -1);\n\n // Events displayed in flamechart have timestamps relative to the profile\n // event's startTime. Source: https://github.com/v8/v8/blob/44bd8fd7/src/inspector/js_protocol.json#L1486\n //\n // We'll thus expect there to be a 'Profile' event; if there is not one, we\n // can deduce that there are no flame chart events. As we expect React\n // scheduling profiling user timing marks to be recorded together with browser\n // flame chart events, we can futher deduce that the data is invalid and we\n // don't bother finding React events.\n const indexOfProfileEvent = timeline.findIndex(event => event.name === 'Profile');\n if (indexOfProfileEvent === -1) {\n return profilerData;\n }\n\n // Use Profile event's `startTime` as the start time to align with flame chart.\n // TODO: Remove assumption that there'll only be 1 'Profile' event. If this\n // assumption does not hold, the chart may start at the wrong time.\n profilerData.startTime = timeline[indexOfProfileEvent].args.data.startTime;\n profilerData.duration = (timeline[timeline.length - 1].ts - profilerData.startTime) / 1000;\n const state = {\n asyncProcessingPromises: [],\n batchUID: 0,\n currentReactComponentMeasure: null,\n internalModuleCurrentStackFrame: null,\n internalModuleStackStringSet: new Set(),\n measureStack: [],\n nativeEventStack: [],\n nextRenderShouldGenerateNewBatchID: true,\n potentialLongEvents: [],\n potentialLongNestedUpdate: null,\n potentialLongNestedUpdates: [],\n potentialSuspenseEventsOutsideOfTransition: [],\n requestIdToNetworkMeasureMap: new Map(),\n uidCounter: 0,\n unresolvedSuspenseEvents: new Map()\n };\n timeline.forEach(event => processTimelineEvent(event, profilerData, state));\n if (profilerVersion === null) {\n if (profilerData.schedulingEvents.length === 0 && profilerData.batchUIDToMeasuresMap.size === 0) {\n // No profiler version could indicate data was logged using an older build of React,\n // before an explicitly profiler version was included in the logging data.\n // But it could also indicate that the website was either not using React, or using a production build.\n // The easiest way to check for this case is to see if the data contains any scheduled updates or render work.\n throw new InvalidProfileError('No React marks were found in the provided profile.' + ' Please provide profiling data from an React application running in development or profiling mode.');\n }\n throw new InvalidProfileError(`This version of profiling data is not supported by the current profiler.`);\n }\n\n // Validate that all events and measures are complete\n const {\n measureStack\n } = state;\n if (measureStack.length > 0) {\n console.error('Incomplete events or measures', measureStack);\n }\n\n // Check for warnings.\n state.potentialLongEvents.forEach(([nativeEvent, batchUID]) => {\n // See how long the subsequent batch of React work was.\n // Ignore any work that was already started.\n const [startTime, stopTime] = getBatchRange(batchUID, profilerData, nativeEvent.timestamp);\n if (stopTime - startTime > NATIVE_EVENT_DURATION_THRESHOLD) {\n nativeEvent.warning = WARNING_STRINGS.LONG_EVENT_HANDLER;\n }\n });\n state.potentialLongNestedUpdates.forEach(([schedulingEvent, batchUID]) => {\n // See how long the subsequent batch of React work was.\n const [startTime, stopTime] = getBatchRange(batchUID, profilerData);\n if (stopTime - startTime > NESTED_UPDATE_DURATION_THRESHOLD) {\n // Don't warn about transition updates scheduled during the commit phase.\n // e.g. useTransition, useDeferredValue\n // These are allowed to be long-running.\n if (!schedulingEvent.lanes.some(lane => profilerData.laneToLabelMap.get(lane) === 'Transition')) {\n // FIXME: This warning doesn't account for \"nested updates\" that are\n // spawned by useDeferredValue. Disabling temporarily until we figure\n // out the right way to handle this.\n // schedulingEvent.warning = WARNING_STRINGS.NESTED_UPDATE;\n }\n }\n });\n state.potentialSuspenseEventsOutsideOfTransition.forEach(([suspenseEvent, lanes]) => {\n // HACK This is a bit gross but the numeric lane value might change between render versions.\n if (!lanes.some(lane => profilerData.laneToLabelMap.get(lane) === 'Transition')) {\n suspenseEvent.warning = WARNING_STRINGS.SUSPEND_DURING_UPDATE;\n }\n });\n\n // Wait for any async processing to complete before returning.\n // Since processing is done in a worker, async work must complete before data is serialized and returned.\n await Promise.all(state.asyncProcessingPromises);\n\n // Now that all images have been loaded, let's figure out the display size we're going to use for our thumbnails:\n // both the ones rendered to the canvas and the ones shown on hover.\n if (profilerData.snapshots.length > 0) {\n // NOTE We assume a static window size here, which is not necessarily true but should be for most cases.\n // Regardless, Chrome also sets a single size/ratio and stick with it- so we'll do the same.\n const snapshot = profilerData.snapshots[0];\n profilerData.snapshotHeight = Math.min(snapshot.height, SNAPSHOT_MAX_HEIGHT);\n }\n return profilerData;\n}\n// EXTERNAL MODULE: ../../node_modules/nullthrows/nullthrows.js\nvar nullthrows = __webpack_require__(69);\nvar nullthrows_default = /*#__PURE__*/__webpack_require__.n(nullthrows);\n;// CONCATENATED MODULE: ../react-devtools-timeline/src/import-worker/readInputData.js\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\n\n\nconst readInputData = file => {\n if (!file.name.endsWith('.json')) {\n throw new InvalidProfileError('Invalid file type. Only JSON performance profiles are supported');\n }\n const fileReader = new FileReader();\n return new Promise((resolve, reject) => {\n fileReader.onload = () => {\n const result = nullthrows_default()(fileReader.result);\n if (typeof result === 'string') {\n resolve(result);\n }\n reject(new InvalidProfileError('Input file was not read as a string'));\n };\n fileReader.onerror = () => reject(fileReader.error);\n fileReader.readAsText(file);\n });\n};\n;// CONCATENATED MODULE: ../react-devtools-timeline/src/import-worker/importFile.js\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\n\n\n\n\nasync function importFile(file) {\n try {\n const readFile = await readInputData(file);\n const events = JSON.parse(readFile);\n if (events.length === 0) {\n throw new InvalidProfileError('No profiling data found in file.');\n }\n const processedData = await preprocessData(events);\n return {\n status: 'SUCCESS',\n processedData\n };\n } catch (error) {\n if (error instanceof InvalidProfileError) {\n return {\n status: 'INVALID_PROFILE_ERROR',\n error\n };\n } else {\n return {\n status: 'UNEXPECTED_ERROR',\n error\n };\n }\n }\n}\n;// CONCATENATED MODULE: ../../node_modules/workerize-loader/dist/rpc-worker-loader.js!../../node_modules/babel-loader/lib/index.js??ruleSet[1].rules[0].use[1]!../../node_modules/babel-loader/lib/index.js??ruleSet[1].rules[1]!../react-devtools-timeline/src/import-worker/importFile.worker.js\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\nconst importFile_worker_importFile = importFile;\naddEventListener('message', function (e) {var _e$data = e.data,type = _e$data.type,method = _e$data.method,id = _e$data.id,params = _e$data.params,f,p;if (type === 'RPC' && method) {if (f = __webpack_exports__[method]) {p = Promise.resolve().then(function () {return f.apply(__webpack_exports__, params);});} else {p = Promise.reject('No such method');}p.then(function (result) {postMessage({type: 'RPC',id: id,result: result});}).catch(function (e) {var error = {message: e};if (e.stack) {error.message = e.message;error.stack = e.stack;error.name = e.name;}postMessage({type: 'RPC',id: id,error: error});});}});postMessage({type: 'RPC',method: 'ready'});\n})();\n\n"]))); - addMethods(w, methods) - - return w - } - - -/***/ }) - -/******/ }); -/************************************************************************/ -/******/ // The module cache -/******/ var __webpack_module_cache__ = {}; -/******/ -/******/ // The require function -/******/ function __webpack_require__(moduleId) { -/******/ // Check if module is in cache -/******/ var cachedModule = __webpack_module_cache__[moduleId]; -/******/ if (cachedModule !== undefined) { -/******/ return cachedModule.exports; -/******/ } -/******/ // Create a new module (and put it into the cache) -/******/ var module = __webpack_module_cache__[moduleId] = { -/******/ // no module.id needed -/******/ // no module.loaded needed -/******/ exports: {} -/******/ }; -/******/ -/******/ // Execute the module function -/******/ __webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__); -/******/ -/******/ // Return the exports of the module -/******/ return module.exports; -/******/ } -/******/ -/************************************************************************/ -/******/ /* webpack/runtime/compat get default export */ -/******/ (() => { -/******/ // getDefaultExport function for compatibility with non-harmony modules -/******/ __webpack_require__.n = (module) => { -/******/ var getter = module && module.__esModule ? -/******/ () => (module['default']) : -/******/ () => (module); -/******/ __webpack_require__.d(getter, { a: getter }); -/******/ return getter; -/******/ }; -/******/ })(); -/******/ -/******/ /* webpack/runtime/create fake namespace object */ -/******/ (() => { -/******/ var getProto = Object.getPrototypeOf ? (obj) => (Object.getPrototypeOf(obj)) : (obj) => (obj.__proto__); -/******/ var leafPrototypes; -/******/ // create a fake namespace object -/******/ // mode & 1: value is a module id, require it -/******/ // mode & 2: merge all properties of value into the ns -/******/ // mode & 4: return value when already ns object -/******/ // mode & 16: return value when it's Promise-like -/******/ // mode & 8|1: behave like require -/******/ __webpack_require__.t = function(value, mode) { -/******/ if(mode & 1) value = this(value); -/******/ if(mode & 8) return value; -/******/ if(typeof value === 'object' && value) { -/******/ if((mode & 4) && value.__esModule) return value; -/******/ if((mode & 16) && typeof value.then === 'function') return value; -/******/ } -/******/ var ns = Object.create(null); -/******/ __webpack_require__.r(ns); -/******/ var def = {}; -/******/ leafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)]; -/******/ for(var current = mode & 2 && value; typeof current == 'object' && !~leafPrototypes.indexOf(current); current = getProto(current)) { -/******/ Object.getOwnPropertyNames(current).forEach((key) => (def[key] = () => (value[key]))); -/******/ } -/******/ def['default'] = () => (value); -/******/ __webpack_require__.d(ns, def); -/******/ return ns; -/******/ }; -/******/ })(); -/******/ -/******/ /* webpack/runtime/define property getters */ -/******/ (() => { -/******/ // define getter functions for harmony exports -/******/ __webpack_require__.d = (exports, definition) => { -/******/ for(var key in definition) { -/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { -/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); -/******/ } -/******/ } -/******/ }; -/******/ })(); -/******/ -/******/ /* webpack/runtime/hasOwnProperty shorthand */ -/******/ (() => { -/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop)) -/******/ })(); -/******/ -/******/ /* webpack/runtime/make namespace object */ -/******/ (() => { -/******/ // define __esModule on exports -/******/ __webpack_require__.r = (exports) => { -/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { -/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); -/******/ } -/******/ Object.defineProperty(exports, '__esModule', { value: true }); -/******/ }; -/******/ })(); -/******/ -/************************************************************************/ -var __webpack_exports__ = {}; -// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk. -(() => { - -// EXPORTS -__webpack_require__.d(__webpack_exports__, { - "EH": () => (/* binding */ createBridge), - "MT": () => (/* binding */ createStore), - "B7": () => (/* binding */ initializeComponents), - "kC": () => (/* binding */ initializeProfiler) -}); - -// NAMESPACE OBJECT: ../react-devtools-timeline/src/import-worker/importFile.js -var importFile_namespaceObject = {}; -__webpack_require__.r(importFile_namespaceObject); -__webpack_require__.d(importFile_namespaceObject, { - "importFile": () => (importFile) -}); - -// EXTERNAL MODULE: ../../build/oss-experimental/react/index.js -var react = __webpack_require__(147); -var react_namespaceObject = /*#__PURE__*/__webpack_require__.t(react, 2); -// EXTERNAL MODULE: ../../build/oss-experimental/react-dom/client.js -var client = __webpack_require__(852); + console['error'](error); +}; +/* harmony default export */ const shared_reportGlobalError = (reportGlobalError); ;// CONCATENATED MODULE: ../react-devtools-shared/src/events.js function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; } function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } -/** - * Copyright (c) Meta Platforms, Inc. and affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * - */ class EventEmitter { constructor() { @@ -7611,7 +4454,6 @@ class EventEmitter { const listeners = this.listenersMap.get(event); if (listeners !== undefined) { if (listeners.length === 1) { - // No need to clone or try/catch const listener = listeners[0]; listener.apply(null, args); } else { @@ -7623,9 +4465,11 @@ class EventEmitter { try { listener.apply(null, args); } catch (error) { - if (caughtError === null) { + if (!didThrow) { didThrow = true; caughtError = error; + } else { + shared_reportGlobalError(error); } } } @@ -7652,51 +4496,16 @@ class EventEmitter { function bridge_defineProperty(obj, key, value) { key = bridge_toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } function bridge_toPropertyKey(t) { var i = bridge_toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; } function bridge_toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } -/** - * Copyright (c) Meta Platforms, Inc. and affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * - */ - - - -// This message specifies the version of the DevTools protocol currently supported by the backend, -// as well as the earliest NPM version (e.g. "4.13.0") that protocol is supported by on the frontend. -// This enables an older frontend to display an upgrade message to users for a newer, unsupported backend. - -// Bump protocol version whenever a backwards breaking change is made -// in the messages sent between BackendBridge and FrontendBridge. -// This mapping is embedded in both frontend and backend builds. -// -// The backend protocol will always be the latest entry in the BRIDGE_PROTOCOL array. -// -// When an older frontend connects to a newer backend, -// the backend can send the minNpmVersion and the frontend can display an NPM upgrade prompt. -// -// When a newer frontend connects with an older protocol version, -// the frontend can use the embedded minNpmVersion/maxNpmVersion values to display a downgrade prompt. -const BRIDGE_PROTOCOL = [ -// This version technically never existed, -// but a backwards breaking change was added in 4.11, -// so the safest guess to downgrade the frontend would be to version 4.10. -{ + +const BRIDGE_PROTOCOL = [{ version: 0, minNpmVersion: '"<4.11.0"', maxNpmVersion: '"<4.11.0"' -}, -// Versions 4.11.x – 4.12.x contained the backwards breaking change, -// but we didn't add the "fix" of checking the protocol version until 4.13, -// so we don't recommend downgrading to 4.11 or 4.12. -{ +}, { version: 1, minNpmVersion: '4.13.0', maxNpmVersion: '4.21.0' -}, -// Version 2 adds a StrictMode-enabled and supports-StrictMode bits to add-root operation. -{ +}, { version: 2, minNpmVersion: '4.22.0', maxNpmVersion: null @@ -7710,22 +4519,32 @@ class Bridge extends EventEmitter { bridge_defineProperty(this, "_scheduledFlush", false); bridge_defineProperty(this, "_wallUnlisten", null); bridge_defineProperty(this, "_flush", () => { - // This method is used after the bridge is marked as destroyed in shutdown sequence, - // so we do not bail out if the bridge marked as destroyed. - // It is a private method that the bridge ensures is only called at the right times. try { if (this._messageQueue.length) { - for (let i = 0; i < this._messageQueue.length; i += 2) { - this._wall.send(this._messageQueue[i], ...this._messageQueue[i + 1]); + for (let i = 0; i < this._messageQueue.length; i++) { + const { + event, + payload + } = this._messageQueue[i]; + this._wall.send(event, payload); } this._messageQueue.length = 0; } } finally { - // We set this at the end in case new messages are added synchronously above. - // They're already handled so they shouldn't queue more flushes. this._scheduledFlush = false; } }); + bridge_defineProperty(this, "_handleMessage", message => { + if (message === null || typeof message !== 'object' || !('event' in message)) { + return; + } + const event = message.event; + if (typeof event !== 'string' || event.length === 0) { + throw new TypeError('Bridge event names must be non-empty strings.'); + } + this._assertNotShutdown('receive a message'); + this.emit(event, message.payload); + }); bridge_defineProperty(this, "overrideValueAtPath", ({ id, path, @@ -7773,91 +4592,65 @@ class Bridge extends EventEmitter { } }); this._wall = wall; - this._wallUnlisten = wall.listen(message => { - if (message && message.event) { - this.emit(message.event, message.payload); - } - }) || null; - - // Temporarily support older standalone front-ends sending commands to newer embedded backends. - // We do this because React Native embeds the React DevTools backend, - // but cannot control which version of the frontend users use. + const wallUnlisten = wall.listen(this._handleMessage); + if (typeof wallUnlisten !== 'function') { + throw new TypeError('Wall.listen() must return an unlisten function.'); + } + this._wallUnlisten = wallUnlisten; this.addListener('overrideValueAtPath', this.overrideValueAtPath); } - - // Listening directly to the wall isn't advised. - // It can be used to listen for legacy (v3) messages (since they use a different format). get wall() { return this._wall; } - send(event, ...payload) { - if (this._isShutdown) { - console.warn(`Cannot send message "${event}" through a Bridge that has been shutdown.`); - return; + addListener(event, listener) { + this._assertNotShutdown('add a listener'); + super.addListener(event, listener); + } + emit(event, ...args) { + this._assertNotShutdown('emit an event'); + super.emit(event, ...args); + } + send(event, payload) { + this._assertNotShutdown('send a message'); + if (typeof event !== 'string' || event.length === 0) { + throw new TypeError('Bridge event names must be non-empty strings.'); } - - // When we receive a message: - // - we add it to our queue of messages to be sent - // - if there hasn't been a message recently, we set a timer for 0 ms in - // the future, allowing all messages created in the same tick to be sent - // together - // - if there *has* been a message flushed in the last BATCH_DURATION ms - // (or we're waiting for our setTimeout-0 to fire), then _timeoutID will - // be set, and we'll simply add to the queue and wait for that - this._messageQueue.push(event, payload); - if (!this._scheduledFlush) { + this._messageQueue.push({ + event, + payload + }); + if (!this._scheduledFlush) { this._scheduledFlush = true; - // $FlowFixMe if (typeof devtoolsJestTestScheduler === 'function') { - // This exists just for our own jest tests. - // They're written in such a way that we can neither mock queueMicrotask - // because then we break React DOM and we can't not mock it because then - // we can't synchronously flush it. So they need to be rewritten. - // $FlowFixMe - devtoolsJestTestScheduler(this._flush); // eslint-disable-line no-undef + devtoolsJestTestScheduler(this._flush); } else { queueMicrotask(this._flush); } } } shutdown() { - if (this._isShutdown) { - console.warn('Bridge was already shutdown.'); - return; - } - - // Queue the shutdown outgoing message for subscribers. + this._assertNotShutdown('shut down'); this.emit('shutdown'); this.send('shutdown'); - - // Mark this bridge as destroyed, i.e. disable its public API. this._isShutdown = true; - - // Disable the API inherited from EventEmitter that can add more listeners and send more messages. - // $FlowFixMe[cannot-write] This property is not writable. - this.addListener = function () {}; - // $FlowFixMe[cannot-write] This property is not writable. - this.emit = function () {}; - // NOTE: There's also EventEmitter API like `on` and `prependListener` that we didn't add to our Flow type of EventEmitter. - - // Unsubscribe this bridge incoming message listeners to be sure, and so they don't have to do that. this.removeAllListeners(); - - // Stop accepting and emitting incoming messages from the wall. const wallUnlisten = this._wallUnlisten; - if (wallUnlisten) { - wallUnlisten(); + this._wallUnlisten = null; + try { + if (wallUnlisten !== null) { + wallUnlisten(); + } + } finally { + do { + this._flush(); + } while (this._messageQueue.length); + } + } + _assertNotShutdown(action) { + if (this._isShutdown) { + throw new Error(`Cannot ${action} through a Bridge that has been shut down.`); } - - // Synchronously flush all queued outgoing messages. - // At this step the subscribers' code may run in this call stack. - do { - this._flush(); - } while (this._messageQueue.length); } - - // Temporarily support older standalone backends by forwarding "overrideValueAtPath" commands - // to the older message types they may be listening to. } /* harmony default export */ const bridge = (Bridge); // EXTERNAL MODULE: ../../node_modules/clipboard-js/clipboard.js @@ -7865,41 +4658,37 @@ var clipboard = __webpack_require__(537); // EXTERNAL MODULE: ../../node_modules/util/util.js var util = __webpack_require__(599); ;// CONCATENATED MODULE: ../react-devtools-shared/src/constants.js -/** - * Copyright (c) Meta Platforms, Inc. and affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * - */ - const CHROME_WEBSTORE_EXTENSION_ID = 'fmkadmapgofadopljbjfkapdkoienihi'; const INTERNAL_EXTENSION_ID = 'dnjnjgbfilfphmojnmhliehogmojhclc'; const LOCAL_EXTENSION_ID = 'ikiahnapldjmdmpkmfhjdjilojjhgcbf'; - -// Flip this flag to true to enable verbose console debug logging. const __DEBUG__ = false; - -// Flip this flag to true to enable performance.mark() and performance.measure() timings. const constants_PERFORMANCE_PROFILE_ = false; const constants_TREE_OPERATION_ADD = 1; const constants_TREE_OPERATION_REMOVE = 2; const constants_TREE_OPERATION_REORDER_CHILDREN = 3; const constants_TREE_OPERATION_UPDATE_TREE_BASE_DURATION = 4; const constants_TREE_OPERATION_UPDATE_ERRORS_OR_WARNINGS = 5; -const constants_TREE_OPERATION_REMOVE_ROOT = 6; const constants_TREE_OPERATION_SET_SUBTREE_MODE = 7; -const PROFILING_FLAG_BASIC_SUPPORT = 0b01; -const PROFILING_FLAG_TIMELINE_SUPPORT = 0b10; +const constants_SUSPENSE_TREE_OPERATION_ADD = 8; +const constants_SUSPENSE_TREE_OPERATION_REMOVE = 9; +const constants_SUSPENSE_TREE_OPERATION_REORDER_CHILDREN = 10; +const constants_SUSPENSE_TREE_OPERATION_RESIZE = 11; +const constants_SUSPENSE_TREE_OPERATION_SUSPENDERS = 12; +const constants_TREE_OPERATION_APPLIED_ACTIVITY_SLICE_CHANGE = 13; +const PROFILING_FLAG_BASIC_SUPPORT = 0b001; +const PROFILING_FLAG_PERFORMANCE_TRACKS_SUPPORT = 0b100; +const UNKNOWN_SUSPENDERS_NONE = 0; +const UNKNOWN_SUSPENDERS_REASON_PRODUCTION = 1; +const UNKNOWN_SUSPENDERS_REASON_OLD_VERSION = 2; +const UNKNOWN_SUSPENDERS_REASON_THROWN_PROMISE = 3; const LOCAL_STORAGE_DEFAULT_TAB_KEY = 'React::DevTools::defaultTab'; const LOCAL_STORAGE_COMPONENT_FILTER_PREFERENCES_KEY = 'React::DevTools::componentFilters'; const SESSION_STORAGE_LAST_SELECTION_KEY = 'React::DevTools::lastSelection'; const LOCAL_STORAGE_OPEN_IN_EDITOR_URL = 'React::DevTools::openInEditorUrl'; const LOCAL_STORAGE_OPEN_IN_EDITOR_URL_PRESET = 'React::DevTools::openInEditorUrlPreset'; +const LOCAL_STORAGE_ALWAYS_OPEN_IN_EDITOR = 'React::DevTools::alwaysOpenInEditor'; const LOCAL_STORAGE_PARSE_HOOK_NAMES_KEY = 'React::DevTools::parseHookNames'; const constants_SESSION_STORAGE_RECORD_CHANGE_DESCRIPTIONS_KEY = 'React::DevTools::recordChangeDescriptions'; -const constants_SESSION_STORAGE_RECORD_TIMELINE_KEY = 'React::DevTools::recordTimeline'; const constants_SESSION_STORAGE_RELOAD_AND_PROFILE_KEY = 'React::DevTools::reloadAndProfile'; const LOCAL_STORAGE_BROWSER_THEME = 'React::DevTools::theme'; const LOCAL_STORAGE_TRACE_UPDATES_ENABLED_KEY = 'React::DevTools::traceUpdatesEnabled'; @@ -7909,30 +4698,6 @@ const FIREFOX_CONSOLE_DIMMING_COLOR = 'color: rgba(124, 124, 124, 0.75)'; const ANSI_STYLE_DIMMING_TEMPLATE = '\x1b[2;38;2;124;124;124m%s\x1b[0m'; const ANSI_STYLE_DIMMING_TEMPLATE_WITH_COMPONENT_STACK = '\x1b[2;38;2;124;124;124m%s %o\x1b[0m'; ;// CONCATENATED MODULE: ../react-devtools-shared/src/frontend/types.js -/** - * Copyright (c) Meta Platforms, Inc. and affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * - */ - -/** - * WARNING: - * This file contains types that are designed for React DevTools UI and how it interacts with the backend. - * They might be used in different versions of DevTools backends. - * Be mindful of backwards compatibility when making changes. - */ - -// WARNING -// The values below are referenced by ComponentFilters (which are saved via localStorage). -// Do not change them or it will break previously saved user customizations. -// If new element types are added, use new numbers rather than re-ordering existing ones. -// -// Changing these types is also a backwards breaking change for the standalone shell, -// since the frontend and backend must share the same values- -// and the backend is embedded in certain environments (like React Native). const ElementTypeClass = 1; const ElementTypeContext = 2; const ElementTypeFunction = 5; @@ -7948,298 +4713,21 @@ const ElementTypeTracingMarker = 14; const ElementTypeVirtual = 15; const ElementTypeViewTransition = 16; const ElementTypeActivity = 17; - -// Different types of elements displayed in the Elements tree. -// These types may be used to visually distinguish types, -// or to enable/disable certain functionality. - -// WARNING -// The values below are referenced by ComponentFilters (which are saved via localStorage). -// Do not change them or it will break previously saved user customizations. -// If new filter types are added, use new numbers rather than re-ordering existing ones. const ComponentFilterElementType = 1; const ComponentFilterDisplayName = 2; const ComponentFilterLocation = 3; const ComponentFilterHOC = 4; const ComponentFilterEnvironmentName = 5; - -// Hide all elements of types in this Set. -// We hide host components only by default. - -// Hide all elements with displayNames or paths matching one or more of the RegExps in this Set. -// Path filters are only used when elements include debug source location. - -// Map of hook source ("::") to name. -// Hook source is used instead of the hook itself because the latter is not stable between element inspections. -// We use a Map rather than an Array because of nested hooks and traversal ordering. - +const ComponentFilterActivitySlice = 6; const StrictMode = 1; - -// Each element on the frontend corresponds to an ElementID (e.g. a Fiber) on the backend. -// Some of its information (e.g. id, type, displayName) come from the backend. -// Other bits (e.g. weight and depth) are computed on the frontend for windowing and display purposes. -// Elements are updated on a push basis– meaning the backend pushes updates to the frontend when needed. - -// TODO: Add profiling type +const ActivityHiddenMode = 2; +const ActivityVisibleMode = 3; // EXTERNAL MODULE: ../../node_modules/lru-cache/index.js var lru_cache = __webpack_require__(18); var lru_cache_default = /*#__PURE__*/__webpack_require__.n(lru_cache); -;// CONCATENATED MODULE: ../shared/ReactFeatureFlags.js -/** - * Copyright (c) Meta Platforms, Inc. and affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * - */ - -// ----------------------------------------------------------------------------- -// Land or remove (zero effort) -// -// Flags that can likely be deleted or landed without consequences -// ----------------------------------------------------------------------------- - -// None - -// ----------------------------------------------------------------------------- -// Killswitch -// -// Flags that exist solely to turn off a change in case it causes a regression -// when it rolls out to prod. We should remove these as soon as possible. -// ----------------------------------------------------------------------------- - -const enableHydrationLaneScheduling = true; - -// ----------------------------------------------------------------------------- -// Land or remove (moderate effort) -// -// Flags that can be probably deleted or landed, but might require extra effort -// like migrating internal callers or performance testing. -// ----------------------------------------------------------------------------- - -// TODO: Finish rolling out in www -const favorSafetyOverHydrationPerf = true; - -// Need to remove didTimeout argument from Scheduler before landing -const disableSchedulerTimeoutInWorkLoop = false; - -// ----------------------------------------------------------------------------- -// Slated for removal in the future (significant effort) -// -// These are experiments that didn't work out, and never shipped, but we can't -// delete from the codebase until we migrate internal callers. -// ----------------------------------------------------------------------------- - -// Add a callback property to suspense to notify which promises are currently -// in the update queue. This allows reporting and tracing of what is causing -// the user to see a loading state. -// -// Also allows hydration callbacks to fire when a dehydrated boundary gets -// hydrated or deleted. -// -// This will eventually be replaced by the Transition Tracing proposal. -const enableSuspenseCallback = false; - -// Experimental Scope support. -const enableScopeAPI = false; - -// Experimental Create Event Handle API. -const enableCreateEventHandleAPI = false; - -// Support legacy Primer support on internal FB www -const enableLegacyFBSupport = false; - -// ----------------------------------------------------------------------------- -// Ongoing experiments -// -// These are features that we're either actively exploring or are reasonably -// likely to include in an upcoming release. -// ----------------------------------------------------------------------------- - -// Yield to the browser event loop and not just the scheduler event loop before passive effects. -// Fix gated tests that fail with this flag enabled before turning it back on. -const enableYieldingBeforePassive = false; - -// Experiment to intentionally yield less to block high framerate animations. -const enableThrottledScheduling = false; -const enableLegacyCache = (/* unused pure expression or super */ null && (true)); -const enableAsyncIterableChildren = (/* unused pure expression or super */ null && (true)); -const enableTaint = (/* unused pure expression or super */ null && (true)); -const enablePostpone = (/* unused pure expression or super */ null && (true)); -const enableHalt = (/* unused pure expression or super */ null && (true)); -const enableViewTransition = (/* unused pure expression or super */ null && (true)); -const enableGestureTransition = (/* unused pure expression or super */ null && (true)); -const enableScrollEndPolyfill = (/* unused pure expression or super */ null && (true)); -const enableSuspenseyImages = false; -const enableFizzBlockingRender = (/* unused pure expression or super */ null && (true)); // rel="expect" - -const enableSrcObject = (/* unused pure expression or super */ null && (true)); -const enableHydrationChangeEvent = (/* unused pure expression or super */ null && (true)); -const enableDefaultTransitionIndicator = (/* unused pure expression or super */ null && (true)); - -/** - * Switches Fiber creation to a simple object instead of a constructor. - */ -const enableObjectFiber = false; -const enableTransitionTracing = false; - -// FB-only usage. The new API has different semantics. -const enableLegacyHidden = false; - -// Enables unstable_avoidThisFallback feature in Fiber -const enableSuspenseAvoidThisFallback = false; -const enableCPUSuspense = (/* unused pure expression or super */ null && (true)); - -// Test this at Meta before enabling. -const enableNoCloningMemoCache = false; -const enableUseEffectEventHook = (/* unused pure expression or super */ null && (true)); - -// Test in www before enabling in open source. -// Enables DOM-server to stream its instruction set as data-attributes -// (handled with an MutationObserver) instead of inline-scripts -const enableFizzExternalRuntime = (/* unused pure expression or super */ null && (true)); -const alwaysThrottleRetries = true; -const passChildrenWhenCloningPersistedNodes = false; - -/** - * Enables a new Fiber flag used in persisted mode to reduce the number - * of cloned host components. - */ -const enablePersistedModeClonedFlag = false; -const enableEagerAlternateStateNodeCleanup = true; - -/** - * Enables an expiration time for retry lanes to avoid starvation. - */ -const enableRetryLaneExpiration = false; -const retryLaneExpirationMs = 5000; -const syncLaneExpirationMs = 250; -const transitionLaneExpirationMs = 5000; - -/** - * Enables a new error detection for infinite render loops from updates caused - * by setState or similar outside of the component owning the state. - */ -const enableInfiniteRenderLoopDetection = false; -const enableLazyPublicInstanceInFabric = false; -const enableFragmentRefs = (/* unused pure expression or super */ null && (true)); - -// ----------------------------------------------------------------------------- -// Ready for next major. -// -// Alias __NEXT_MAJOR__ to __EXPERIMENTAL__ for easier skimming. -// ----------------------------------------------------------------------------- - -// TODO: Anything that's set to `true` in this section should either be cleaned -// up (if it's on everywhere, including Meta and RN builds) or moved to a -// different section of this file. - -// const __NEXT_MAJOR__ = __EXPERIMENTAL__; - -// Renames the internal symbol for elements since they have changed signature/constructor -const renameElementSymbol = true; - -/** - * Enables a fix to run insertion effect cleanup on hidden subtrees. - */ -const enableHiddenSubtreeInsertionEffectCleanup = false; - -/** - * Removes legacy style context defined using static `contextTypes` and consumed with static `childContextTypes`. - */ -const disableLegacyContext = true; -/** - * Removes legacy style context just from function components. - */ -const disableLegacyContextForFunctionComponents = true; - -// Enable the moveBefore() alternative to insertBefore(). This preserves states of moves. -const enableMoveBefore = false; - -// Disabled caching behavior of `react/cache` in client runtimes. -const disableClientCache = true; - -// Warn on any usage of ReactTestRenderer -const enableReactTestRendererWarning = true; - -// Disables legacy mode -// This allows us to land breaking changes to remove legacy mode APIs in experimental builds -// before removing them in stable in the next Major -const disableLegacyMode = true; - -// ----------------------------------------------------------------------------- -// Chopping Block -// -// Planned feature deprecations and breaking changes. Sorted roughly in order of -// when we plan to enable them. -// ----------------------------------------------------------------------------- - -// ----------------------------------------------------------------------------- -// React DOM Chopping Block -// -// Similar to main Chopping Block but only flags related to React DOM. These are -// grouped because we will likely batch all of them into a single major release. -// ----------------------------------------------------------------------------- - -// Disable support for comment nodes as React DOM containers. Already disabled -// in open source, but www codebase still relies on it. Need to remove. -const disableCommentsAsDOMContainers = true; -const enableTrustedTypesIntegration = false; - -// Prevent the value and checked attributes from syncing with their related -// DOM properties -const disableInputAttributeSyncing = false; - -// Disables children for