@marimo-team/frontend 0.25.2-dev7 → 0.25.2-dev89
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/CellStatus-2Psjnl5F.css +1 -0
- package/dist/assets/CellStatus-Bj7PvY_u.js +1 -0
- package/dist/assets/ConnectedDataExplorerComponent-C5UW0p9I.js +1 -0
- package/dist/assets/ErrorBoundary-CG6gtgym.js +2 -0
- package/dist/assets/Inputs-BlygJyl1.js +1 -0
- package/dist/assets/JsonOutput-B0GmlMnR.css +2 -0
- package/dist/assets/JsonOutput-NVH7GWyC.js +11 -0
- package/dist/assets/LazyAnyLanguageCodeMirror-CeTd_wFt.js +2 -0
- package/dist/assets/MarimoErrorOutput-z5iFryzf.js +6 -0
- package/dist/assets/RenderHTML-C7QcdAgB.js +2 -0
- package/dist/assets/RunButton-A__3wcpF.js +1 -0
- package/dist/assets/__vite-browser-external-BgsHWynV.js +1 -0
- package/dist/assets/__vite-browser-external-DMJaCYJh.js +1 -0
- package/dist/assets/_baseSet-Bpdo9AvU.js +1 -0
- package/dist/assets/_hasPath-BmRQipI0.js +1 -0
- package/dist/assets/abnfDiagram-VCTEODGH-BuHNQB7l.js +1 -0
- package/dist/assets/add-cell-with-ai-Wyt6GBhk.js +76 -0
- package/dist/assets/add-connection-dialog-bl8dqCVs.js +166 -0
- package/dist/assets/agent-panel-BcoO8S6Q.js +286 -0
- package/dist/assets/ai-model-dropdown-CvJsRj9y.js +5 -0
- package/dist/assets/alert-MrQXRIin.js +1 -0
- package/dist/assets/alert-dialog-DlL1c-bx.js +1 -0
- package/dist/assets/any-language-editor-DtOWujZJ.js +1 -0
- package/dist/assets/api-DVLtXyp7.js +1 -0
- package/dist/assets/apl-CYIAEF37.js +1 -0
- package/dist/assets/apl-gw27yJ2n.js +1 -0
- package/dist/assets/app-config-button-C7QrZbqr.js +1 -0
- package/dist/assets/arc-Yxk2k_uq.js +1 -0
- package/dist/assets/architecture-7GRP2DOG-BMOPAkUC.js +1 -0
- package/dist/assets/architectureDiagram-5GKGNRK7-DvIXijdN.js +36 -0
- package/dist/assets/array-BifhSqXX.js +1 -0
- package/dist/assets/arrow-left-DzPJ79ZB.js +1 -0
- package/dist/assets/arrow-right-xoNT7eIQ.js +1 -0
- package/dist/assets/asciiarmor-CF6FHpQl.js +1 -0
- package/dist/assets/asciiarmor-Cor5STs8.js +1 -0
- package/dist/assets/asn1-CPEENLyz.js +1 -0
- package/dist/assets/asn1-CmtZ6NID.js +1 -0
- package/dist/assets/azure-Dcn397wY.js +1 -0
- package/dist/assets/ban-3HAzm9Fj.js +1 -0
- package/dist/assets/blob-Bx8A10xl.js +1 -0
- package/dist/assets/blockDiagram-I7D4REHJ-DGAMO17L.js +129 -0
- package/dist/assets/brainfuck-a_fzgFtj.js +1 -0
- package/dist/assets/brainfuck-vE42J6oQ.js +1 -0
- package/dist/assets/bundle.esm-CklCb9AD.js +1 -0
- package/dist/assets/button-M49xxKoi.js +1 -0
- package/dist/assets/c4Diagram-7LVT6UL2-qqO5IOnV.js +38 -0
- package/dist/assets/cache-panel-BNPF4X5e.js +1 -0
- package/dist/assets/capabilities-BScjbYOK.js +1 -0
- package/dist/assets/cell-editor-C-58hQJU.css +2 -0
- package/dist/assets/cell-editor-CevZDS63.js +21 -0
- package/dist/assets/cell-link-DC1UZQr_.js +1 -0
- package/dist/assets/cells-CxY8RSp7.js +220 -0
- package/dist/assets/channel-DXBvxHxq.js +1 -0
- package/dist/assets/chart-no-axes-column-B6FT5Xvu.js +1 -0
- package/dist/assets/chat-display-YETh6yXV.js +1 -0
- package/dist/assets/chat-panel-DyaePe7B.js +4 -0
- package/dist/assets/chat-ui-D_QL46qM.js +4 -0
- package/dist/assets/chunk-2E4U76K2-DqA2CBL0.js +2 -0
- package/dist/assets/chunk-2ZTRR5NV-C2qZJila.js +2 -0
- package/dist/assets/chunk-3Z5EZCMW-DMniOlPd.js +1 -0
- package/dist/assets/chunk-4HAMMTFA-DaFOJTOO.js +62 -0
- package/dist/assets/chunk-5V3GS4D5-i-ZDOEnP.js +1 -0
- package/dist/assets/chunk-6AZGARVD-BB6FqMl-.js +1 -0
- package/dist/assets/chunk-6EIED4P4-DdUJkP0f.js +1 -0
- package/dist/assets/chunk-6K3QC6MW-CqVsVn-y.js +1 -0
- package/dist/assets/chunk-6TQVIW2G-DKlLbNIP.js +1 -0
- package/dist/assets/chunk-747NJXEK-BFkZPlab.js +2 -0
- package/dist/assets/chunk-75Z2AOVW-DEp7Wbaj.js +2 -0
- package/dist/assets/chunk-CLGD4ZFX-BxW11Imt.js +1 -0
- package/dist/assets/chunk-DU6HZSFF-CDmPCRkr.js +126 -0
- package/dist/assets/chunk-F27PBJKO-455JWNM3.js +1 -0
- package/dist/assets/chunk-GMAD6QVW-ahdTJvh0.js +72 -0
- package/dist/assets/chunk-GVQU2GXP-CPkYne1h.js +1 -0
- package/dist/assets/chunk-I5DQTOEV-Hm2LfiYI.js +1 -0
- package/dist/assets/chunk-ICYGCRZG-749o-pGJ.js +1 -0
- package/dist/assets/chunk-IH6LHLGP-CC6I9F3i.js +1 -0
- package/dist/assets/chunk-IMKFNOWR-fARccL86.js +231 -0
- package/dist/assets/chunk-KI3K4JFJ-Rma-0k_M.js +1 -0
- package/dist/assets/chunk-L3NEJ4N5-BOK6HmaY.js +1 -0
- package/dist/assets/chunk-LNGE3PJU-DWpGwHrW.js +34 -0
- package/dist/assets/chunk-OSK3NFVY-CEcyPnHo.js +10 -0
- package/dist/assets/chunk-OUJLGHUK-D0j2JRSg.js +2 -0
- package/dist/assets/chunk-P2QGCYS3-Bw5LRT6S.js +1 -0
- package/dist/assets/chunk-POPQ4Y6H-C--NLIXc.js +1 -0
- package/dist/assets/chunk-PWAF6VOD-B1mxlptQ.js +1 -0
- package/dist/assets/chunk-SHT3W25Y-Diet96b1.js +168 -0
- package/dist/assets/chunk-SVP7TREG-BbcEGfNl.js +88 -0
- package/dist/assets/chunk-TICWLB2K-BypOyFjf.js +206 -0
- package/dist/assets/chunk-TLUHSLCS-DvvqZUl_.js +2 -0
- package/dist/assets/chunk-UY3FDG6J-CnmaAkG5.js +1 -0
- package/dist/assets/chunk-XHIXRSVI-BFQ6B8BE.js +1 -0
- package/dist/assets/chunk-YOKDWASO-84E-_nIR.js +142 -0
- package/dist/assets/circle-Bb1IbBVn.js +1 -0
- package/dist/assets/circle-check-BF80fXZd.js +1 -0
- package/dist/assets/classDiagram-ZZMXUADV--9ShP1h2.js +1 -0
- package/dist/assets/classDiagram-v2-VYDZK3BY--9ShP1h2.js +1 -0
- package/dist/assets/click-outside-container-CHoodRk9.js +1 -0
- package/dist/assets/clike-Bo1_pR8B.js +1 -0
- package/dist/assets/clike-DZROJv43.js +1 -0
- package/dist/assets/clipboard-paste-D0gau9Xw.js +1 -0
- package/dist/assets/clojure-1zb6N0Kd.js +1 -0
- package/dist/assets/clojure-sW2N62b5.js +1 -0
- package/dist/assets/cmake-DA9yMhzJ.js +1 -0
- package/dist/assets/cmake-DSEb40G9.js +1 -0
- package/dist/assets/cobol-BYACvGhO.js +1 -0
- package/dist/assets/cobol-ttQu-eUm.js +1 -0
- package/dist/assets/code-DW4kNwKG.js +1 -0
- package/dist/assets/code-visibility-DNzJgrTz.js +1 -0
- package/dist/assets/code-xml-CW65k2pN.js +1 -0
- package/dist/assets/coerce-CZiN7rQ_.js +1 -0
- package/dist/assets/coffeescript-73GxLNLH.js +1 -0
- package/dist/assets/coffeescript-CcHmp8ZW.js +1 -0
- package/dist/assets/column-preview-sL_Jo0hX.js +1 -0
- package/dist/assets/command-palette-DMQFuWz1.js +1 -0
- package/dist/assets/common-Cy3lJDvJ.js +1 -0
- package/dist/assets/commonlisp-BAY0IMda.js +1 -0
- package/dist/assets/commonlisp-DHrixoxv.js +1 -0
- package/dist/assets/components-D9ZIJGG8.js +1 -0
- package/dist/assets/components-M5WFQ0gs.js +1 -0
- package/dist/assets/components-ufN33X-R.js +1 -0
- package/dist/assets/config-CR2d-XsP.js +1 -0
- package/dist/assets/config-Cyum2gRs.js +1 -0
- package/dist/assets/config-D_c_6ce1.js +1 -0
- package/dist/assets/copy-D03Y7IMR.js +1 -0
- package/dist/assets/copy-icon-wfSGfX8v.js +1 -0
- package/dist/assets/createReducer-W5dowuCe.js +1 -0
- package/dist/assets/crystal-DLlr59il.js +1 -0
- package/dist/assets/crystal-fOwNIMzy.js +1 -0
- package/dist/assets/css-CbZNFbVv.js +1 -0
- package/dist/assets/css-aD3t-znF.js +1 -0
- package/dist/assets/cynefin-OW5HDTMX-7tP7QfM3.js +1 -0
- package/dist/assets/cynefinDiagram-5FMLGOSQ-BW3uXbHa.js +62 -0
- package/dist/assets/cypher-CpQ0ACJl.js +1 -0
- package/dist/assets/cypher-q6-coHOK.js +1 -0
- package/dist/assets/d-BFwRCF-p.js +1 -0
- package/dist/assets/d-Drt6ZXrF.js +1 -0
- package/dist/assets/dagre-BjpQhh5X.js +1 -0
- package/dist/assets/dagre-GXQ25YYZ-DIV0whJf.js +4 -0
- package/dist/assets/data-grid-overlay-editor-DuYKABwo.js +1 -0
- package/dist/assets/data-grid-types-DgHVN_Zz.js +1 -0
- package/dist/assets/datasource-Tst92Pzi.js +3 -0
- package/dist/assets/dates-BgcKUsHb.js +1 -0
- package/dist/assets/dependency-graph-panel-BwMayTyZ.js +5 -0
- package/dist/assets/diagram-S7CK7UJ4-BzoPaaoH.js +30 -0
- package/dist/assets/diagram-UQ7AKVKN-BnOSn29R.js +41 -0
- package/dist/assets/diagram-VSXAHHWV-DAz8vger.js +3 -0
- package/dist/assets/diagram-VX7I27RA-BQOZxgYE.js +24 -0
- package/dist/assets/diagram-Z3DM3KII-B_OF69Ac.js +24 -0
- package/dist/assets/diff-CYBnW6ZU.js +1 -0
- package/dist/assets/diff-Ib_BKd8h.js +1 -0
- package/dist/assets/dist-1tmpVXyz.js +1 -0
- package/dist/assets/dist-4SpsNdg9.js +1 -0
- package/dist/assets/dist-AelfNxj6.js +3 -0
- package/dist/assets/dist-BCteMNTR.js +1 -0
- package/dist/assets/dist-BOfh4hMd.js +2 -0
- package/dist/assets/dist-BXTY2Z6u.js +1 -0
- package/dist/assets/dist-BZAAgYK3.js +1 -0
- package/dist/assets/dist-BeKmSRy3.js +1 -0
- package/dist/assets/dist-BmExfiwX.js +23 -0
- package/dist/assets/dist-Bqtq4wYM.js +1 -0
- package/dist/assets/dist-BxKJ9CUC.js +1 -0
- package/dist/assets/dist-C08rfu50.js +1 -0
- package/dist/assets/dist-C1ZMbzEY.js +1 -0
- package/dist/assets/dist-C43s7KMp.js +1 -0
- package/dist/assets/dist-C9ULdZil.js +1 -0
- package/dist/assets/dist-CJ4Ekjf-.js +1 -0
- package/dist/assets/dist-COseLvbK.js +1 -0
- package/dist/assets/dist-CWcX5iL_.js +1 -0
- package/dist/assets/dist-CcKu0kT5.js +1 -0
- package/dist/assets/dist-CdpiHIsZ.js +1 -0
- package/dist/assets/dist-Ceg_d-nu.js +1 -0
- package/dist/assets/dist-CibNXpH2.js +1 -0
- package/dist/assets/dist-Cllq-3AX.js +1 -0
- package/dist/assets/dist-Cm7MoInu.js +7 -0
- package/dist/assets/dist-Cny7_yZb.js +14 -0
- package/dist/assets/dist-Cw0_qzU5.js +1 -0
- package/dist/assets/dist-D0Fg9FgU.js +1 -0
- package/dist/assets/dist-DBMV4gqt.js +2 -0
- package/dist/assets/dist-DDpltFEG.js +1 -0
- package/dist/assets/dist-DF6q90J2.js +1 -0
- package/dist/assets/dist-DG2TCPkT.js +1 -0
- package/dist/assets/dist-DH7Tm1i8.js +1 -0
- package/dist/assets/dist-DLwSLd_v.js +1 -0
- package/dist/assets/dist-DOsgOC8X.js +11 -0
- package/dist/assets/dist-DcvY27K9.js +1 -0
- package/dist/assets/dist-DewjJKIE.js +1 -0
- package/dist/assets/dist-DfGC5qxC.js +1 -0
- package/dist/assets/dist-DfRK-QAy.js +1 -0
- package/dist/assets/dist-DmUAWIff.js +1 -0
- package/dist/assets/dist-DoYtnejk.js +1 -0
- package/dist/assets/dist-DoyTOIOd.js +1 -0
- package/dist/assets/dist-DtH-7lot.js +1 -0
- package/dist/assets/dist-DusFODSa.js +9 -0
- package/dist/assets/dist-LSsCJjA3.js +6 -0
- package/dist/assets/dist-PsHgCCpB.js +1 -0
- package/dist/assets/dist-mPh3sAH5.js +1 -0
- package/dist/assets/dist-qhAY4L2r.js +1 -0
- package/dist/assets/dist-uBfhY3mF.js +1 -0
- package/dist/assets/documentation-panel-OMUbXgKW.js +1 -0
- package/dist/assets/download-CPMAf7re.js +9 -0
- package/dist/assets/dropdown-menu-B2JUUcK7.js +1 -0
- package/dist/assets/dtd-DgBHwr-e.js +1 -0
- package/dist/assets/dtd-DqGG8R4P.js +1 -0
- package/dist/assets/dylan-BTCYgsmh.js +1 -0
- package/dist/assets/dylan-fdbf6J3T.js +1 -0
- package/dist/assets/ebnfDiagram-PWID7BFC-BbkBTazy.js +1 -0
- package/dist/assets/ecl-BPsxRGqR.js +1 -0
- package/dist/assets/ecl-K_KNI3_u.js +1 -0
- package/dist/assets/edit-page-DD1NFkiu.js +9 -0
- package/dist/assets/eiffel-BCguJEP-.js +1 -0
- package/dist/assets/eiffel-DatcW1fL.js +1 -0
- package/dist/assets/ellipsis-CLMWXUqY.js +1 -0
- package/dist/assets/elm-DbcUgz-o.js +1 -0
- package/dist/assets/elm-DnNeI1M2.js +1 -0
- package/dist/assets/en-US-B4U3zuiu.js +1 -0
- package/dist/assets/erDiagram-RLTQ6QDP-DxDHwsU0.js +99 -0
- package/dist/assets/erlang-BistxQAs.js +1 -0
- package/dist/assets/erlang-DkHPV6ru.js +1 -0
- package/dist/assets/error-banner-D1_bPN9u.js +1 -0
- package/dist/assets/error-entries-DBpwg0GC.js +5 -0
- package/dist/assets/error-panel-ByOEJuZN.js +1 -0
- package/dist/assets/es-KNLgCZL4.js +5 -0
- package/dist/assets/esm-3WkPrffD.js +1 -0
- package/dist/assets/esm-CQuf--zt.js +1 -0
- package/dist/assets/eventmodeling-NTZA5JFV-BR2FzK4R.js +1 -0
- package/dist/assets/events-CbeVJ6OD.js +1 -0
- package/dist/assets/extends-CvVTau-c.js +1 -0
- package/dist/assets/external-link-D2lKwXyB.js +1 -0
- package/dist/assets/eye-off-CfkK-QS3.js +1 -0
- package/dist/assets/factor-DwQNJbiW.js +1 -0
- package/dist/assets/factor-ZZBBZpXK.js +1 -0
- package/dist/assets/feedback-button-7KY7nL-j.js +10 -0
- package/dist/assets/feedback-button-DxjoRfo3.js +1 -0
- package/dist/assets/file-explorer-panel-B92ugwxr.js +1 -0
- package/dist/assets/file-headphone-DKocX1z0.js +1 -0
- package/dist/assets/file-icons-e7tmeyP-.js +1 -0
- package/dist/assets/file-mCR_SMtq.js +1 -0
- package/dist/assets/file-name-input-DZehOHLA.js +3 -0
- package/dist/assets/fileToBase64-aqhlf6Jj.js +1 -0
- package/dist/assets/floating-outline-K7cVdOlC.js +1 -0
- package/dist/assets/flowDiagram-HODETNUW-BGVnBaF-.js +1 -0
- package/dist/assets/formats-DkOlpVdf.js +1 -0
- package/dist/assets/formatting-Civx9FAg.js +1 -0
- package/dist/assets/forth-B-tqi4f_.js +1 -0
- package/dist/assets/forth-DUDizG3o.js +1 -0
- package/dist/assets/fortran-BarbOvgW.js +1 -0
- package/dist/assets/fortran-C9M6nI39.js +1 -0
- package/dist/assets/fullscreen-DEBblJKh.js +41 -0
- package/dist/assets/gallery-page-DoriMrLH.js +1 -0
- package/dist/assets/ganttDiagram-EL5Y4UJY-BzkL5tY7.js +292 -0
- package/dist/assets/gas-DJ-ntEw0.js +1 -0
- package/dist/assets/gas-mybzrfIH.js +1 -0
- package/dist/assets/gherkin-BlnXaZZf.js +1 -0
- package/dist/assets/gherkin-Co7qm0Mt.js +1 -0
- package/dist/assets/gitGraph-4MIJSDKK-DYlXv_yJ.js +1 -0
- package/dist/assets/gitGraphDiagram-WWUBYQGX-DqtmYSBS.js +106 -0
- package/dist/assets/glide-data-editor-DWyeHe3u.js +131 -0
- package/dist/assets/glide-utils-BzwA3q-e.js +2 -0
- package/dist/assets/globe-CmFhHoL1.js +1 -0
- package/dist/assets/graphlib-Blky6igo.js +1 -0
- package/dist/assets/groovy-DkYAhc5g.js +1 -0
- package/dist/assets/groovy-cYuFC_ot.js +1 -0
- package/dist/assets/has-sKqQhP6r.js +1 -0
- package/dist/assets/hasIn-yw4sIeJR.js +1 -0
- package/dist/assets/haskell-CuLp9g3a.js +1 -0
- package/dist/assets/haskell-QbTWCmtk.js +1 -0
- package/dist/assets/haxe-CiIUZbdX.js +1 -0
- package/dist/assets/haxe-CmR2u-6B.js +1 -0
- package/dist/assets/highlighted-body-KPVGNVTW-DxcqwMAu.js +1 -0
- package/dist/assets/home-page-BcJJsD_Q.js +4 -0
- package/dist/assets/hooks-DNPsQf79.js +1 -0
- package/dist/assets/house-CbkYoQ5W.js +1 -0
- package/dist/assets/html-to-image-CFVIG1VZ.js +2 -0
- package/dist/assets/icons-CVdkfEA3.js +1 -0
- package/dist/assets/idl-BHq7WyPV.js +1 -0
- package/dist/assets/idl-DY5VfUGL.js +1 -0
- package/dist/assets/image-CTch9x2I.js +1 -0
- package/dist/assets/index-B7ZZVUcj.css +2 -0
- package/dist/assets/index-CqJKdR1j.js +29 -0
- package/dist/assets/info-A6RAGUB7-BlU-8_xu.js +1 -0
- package/dist/assets/infoDiagram-27XIBGKW-7rLCp1UQ.js +2 -0
- package/dist/assets/input-DPd57MDP.js +7 -0
- package/dist/assets/isValid-BEbe1fFs.js +1 -0
- package/dist/assets/ishikawaDiagram-5VMMS53U-BH7XUtkN.js +70 -0
- package/dist/assets/javascript-BWjar7HY.js +1 -0
- package/dist/assets/javascript-D-FtdkNC.js +1 -0
- package/dist/assets/journeyDiagram-3NMN7TZE-BOj0kV6v.js +139 -0
- package/dist/assets/julia-CBfVM-ng.js +1 -0
- package/dist/assets/julia-CoYYMTcZ.js +1 -0
- package/dist/assets/kanban-definition-UXKFOSKX-CPrudFOv.js +89 -0
- package/dist/assets/katex-CQIbPNPT.js +1 -0
- package/dist/assets/katex-DUp2KybH.js +257 -0
- package/dist/assets/kbd-BnUiViRu.js +1 -0
- package/dist/assets/kiosk-mode-DCHo0R3W.js +1 -0
- package/dist/assets/layout-BaluekG6.js +9 -0
- package/dist/assets/layout-D-WxHzKd.css +1 -0
- package/dist/assets/line-io_go0HI.js +1 -0
- package/dist/assets/link-BF4dGmOQ.js +1 -0
- package/dist/assets/links-BJx6KCyC.js +1 -0
- package/dist/assets/livescript-C1gEZ5Hk.js +1 -0
- package/dist/assets/livescript-CC7i4CEo.js +1 -0
- package/dist/assets/logs-panel-OkoO5mbN.js +1 -0
- package/dist/assets/loro_wasm_bg-PyJsS6iH.wasm +0 -0
- package/dist/assets/loro_wasm_bg-Vo2IoHaL.js +1 -0
- package/dist/assets/loro_wasm_bg-oTW3uoGB.js +1 -0
- package/dist/assets/lua-1tNpM92n.js +1 -0
- package/dist/assets/lua-DXBxhmso.js +1 -0
- package/dist/assets/markdown-export-DzhB1FrN.js +1 -0
- package/dist/assets/markdown-renderer-DjIHoF9Z.css +1 -0
- package/dist/assets/markdown-renderer-mDlWBE1M.js +2 -0
- package/dist/assets/math-Bi_r_ZWc.js +1 -0
- package/dist/assets/mathematica-CwlrU_TQ.js +1 -0
- package/dist/assets/mathematica-DWMBVyLs.js +1 -0
- package/dist/assets/mbox-DvNfx9hX.js +1 -0
- package/dist/assets/mbox-skR0V6cu.js +1 -0
- package/dist/assets/menu-items-DAaNKHJF.js +1 -0
- package/dist/assets/mermaid-CX6aTquk.js +11 -0
- package/dist/assets/mermaid-HWGCJPDP-Bk1fR60Q.js +1 -0
- package/dist/assets/mermaid-parser.core-CodvbdHU.js +4 -0
- package/dist/assets/message-circle-OTHnVlxO.js +1 -0
- package/dist/assets/mhchem-hMh9XtQZ.js +1 -0
- package/dist/assets/mindmap-definition-YA3MSWOX-kWyI8sXl.js +96 -0
- package/dist/assets/mirc-BASUkO3C.js +1 -0
- package/dist/assets/mirc-CTGUd79I.js +1 -0
- package/dist/assets/mllike-BKN6OcTc.js +1 -0
- package/dist/assets/mllike-DHDLWZl9.js +1 -0
- package/dist/assets/modelica-C2NfUrdY.js +1 -0
- package/dist/assets/modelica-DZs5SjV_.js +1 -0
- package/dist/assets/mscgen-Bo5N9WUj.js +1 -0
- package/dist/assets/mscgen-C7woTLsY.js +1 -0
- package/dist/assets/multi-icon-D129IBvu.css +2 -0
- package/dist/assets/multi-icon-DWzZu-9u.js +1 -0
- package/dist/assets/mumps-BNg2Yq-1.js +1 -0
- package/dist/assets/mumps-DwVYUX8b.js +1 -0
- package/dist/assets/name-cell-input-D_Q2IhP9.js +1 -0
- package/dist/assets/name-cell-input-ujOhus_y.css +1 -0
- package/dist/assets/nsis-B6H_Q9YJ.js +1 -0
- package/dist/assets/nsis-DWBX_aOH.js +1 -0
- package/dist/assets/ntriples-CSqEHNgf.js +1 -0
- package/dist/assets/ntriples-Ck5rp6GE.js +1 -0
- package/dist/assets/number-overlay-editor-myrryj7o.js +9 -0
- package/dist/assets/numbers-BEfBaQtu.js +1 -0
- package/dist/assets/objectWithoutPropertiesLoose-Do6ywDBO.js +1 -0
- package/dist/assets/octave-BRpd3hBF.js +1 -0
- package/dist/assets/octave-ImTMIie9.js +1 -0
- package/dist/assets/outline-panel-Dy2cmYDF.js +1 -0
- package/dist/assets/oz-BUEZmvHT.js +1 -0
- package/dist/assets/oz-BuYcBdKy.js +1 -0
- package/dist/assets/package-data-BwaspaKJ.js +1 -0
- package/dist/assets/packages-panel-CIvhx0hb.js +1 -0
- package/dist/assets/packet-AYTQ26CC-BSJEH9Lb.js +1 -0
- package/dist/assets/pair-_FSgYVX4.js +1 -0
- package/dist/assets/panel-accordion-state-BI4SU22L.js +1 -0
- package/dist/assets/panels-CO6Clgel.js +4 -0
- package/dist/assets/panels-DuFuRfRM.css +2 -0
- package/dist/assets/pascal-B50DmceL.js +1 -0
- package/dist/assets/pascal-DBfxUwpj.js +1 -0
- package/dist/assets/path-BCdg30Y0.js +1 -0
- package/dist/assets/pathUtils-BKesuhdv.js +1 -0
- package/dist/assets/pegDiagram-XKGWAZYB-CiBJGPte.js +1 -0
- package/dist/assets/perl-DmFVAwdF.js +1 -0
- package/dist/assets/perl-v9vsztCj.js +1 -0
- package/dist/assets/pick-DKIID_Mo.js +1 -0
- package/dist/assets/pie-WAS4IAKB-qxv01Y8W.js +1 -0
- package/dist/assets/pieDiagram-E7YTZNPT-RpjpKhU6.js +39 -0
- package/dist/assets/pig-BnQuru9N.js +1 -0
- package/dist/assets/pig-CrKTIB-m.js +1 -0
- package/dist/assets/powershell-89xdb5K_.js +1 -0
- package/dist/assets/powershell-B1pJyAAD.js +1 -0
- package/dist/assets/preload-helper-uBIymjUX.js +1 -0
- package/dist/assets/process-output-Crm0vqbi.js +1 -0
- package/dist/assets/prop-types-Djf4O40e.js +1 -0
- package/dist/assets/properties-Ci7guRqV.js +1 -0
- package/dist/assets/properties-DaUFoXFR.js +1 -0
- package/dist/assets/protobuf-Ci5XvpF4.js +1 -0
- package/dist/assets/protobuf-CoqP8wM5.js +1 -0
- package/dist/assets/pug-CJsoo9v0.js +1 -0
- package/dist/assets/pug-DPY-Ajan.js +1 -0
- package/dist/assets/puppet-C9UYpvtZ.js +1 -0
- package/dist/assets/puppet-Da8ZxG7z.js +1 -0
- package/dist/assets/purify.es--06brOip.js +3 -0
- package/dist/assets/python-C4CVWZ7v.js +1 -0
- package/dist/assets/python-xiYauDc4.js +1 -0
- package/dist/assets/q-BjtI5Irp.js +1 -0
- package/dist/assets/q-CKkOe1xA.js +1 -0
- package/dist/assets/quadrantDiagram-AXDQQJYC-Ci_qzCqs.js +7 -0
- package/dist/assets/r-Bwc-y-iL.js +1 -0
- package/dist/assets/r-vSi6pWDr.js +1 -0
- package/dist/assets/radar-RG4KPBEZ-B6h6pWOs.js +1 -0
- package/dist/assets/railroad-74A4TZTK-CGtTWdGc.js +1 -0
- package/dist/assets/railroad-abnf-HS5TGJTU-Cq7y22IA.js +1 -0
- package/dist/assets/railroad-ebnf-LZEXJU2U-V0aQVv9m.js +1 -0
- package/dist/assets/railroad-peg-WCYAUIDC-BQiIsX_p.js +1 -0
- package/dist/assets/railroadDiagram-O6MQD6OU-B2IWK3fJ.js +1 -0
- package/dist/assets/react-icons.esm-C6SMwKZH.js +1 -0
- package/dist/assets/react-resizable-panels.browser.esm-BL2E7f5c.js +1 -0
- package/dist/assets/react-vega-Jq3Jd7eX.js +189 -0
- package/dist/assets/readonly-code-display-CNbw6v1-.js +1 -0
- package/dist/assets/readonly-python-code-DcYhdd1B.js +1 -0
- package/dist/assets/refresh-cw-CEGpOrzd.js +1 -0
- package/dist/assets/renderShortcut-BnRfkbwf.js +1 -0
- package/dist/assets/requests-DFPPfagc.js +1 -0
- package/dist/assets/requirementDiagram-BXWQKSXE-B0_CyV0T.js +84 -0
- package/dist/assets/reveal-component-DeZTBbnn.js +1069 -0
- package/dist/assets/rotate-ccw-se3Oa1US.js +1 -0
- package/dist/assets/rpm-Cv5HmAkX.js +1 -0
- package/dist/assets/rpm-UQSdNQr2.js +1 -0
- package/dist/assets/ruby-CKIsIBWn.js +1 -0
- package/dist/assets/ruby-CrY8zrT8.js +1 -0
- package/dist/assets/run-page-BNEg-Ro9.js +1 -0
- package/dist/assets/runs-DyluVj69.js +1 -0
- package/dist/assets/runtime-details-state-lxXYwJcI.js +1 -0
- package/dist/assets/sankeyDiagram-P5KCCOFB-BekzhMvv.js +40 -0
- package/dist/assets/sas-CssadkTB.js +1 -0
- package/dist/assets/sas-D3-6PWmJ.js +1 -0
- package/dist/assets/save-D4cG4pP2.js +1 -0
- package/dist/assets/save-worker-C880NC3o.js +113 -0
- package/dist/assets/scheme-CkJWoRmu.js +1 -0
- package/dist/assets/scheme-DqTb0ELD.js +1 -0
- package/dist/assets/scratchpad-panel-lDJWcpVs.js +1 -0
- package/dist/assets/scroll-to-bottom-button-Dmrd5bjQ.js +1 -0
- package/dist/assets/secrets-panel-DT1Nansx.js +1 -0
- package/dist/assets/select-BwRFbZty.js +1 -0
- package/dist/assets/semaphore-BjoL5P0h.js +1 -0
- package/dist/assets/sequenceDiagram-WJ2MYXX4-DELi1Kz5.js +162 -0
- package/dist/assets/session-BykGt6S3.js +1 -0
- package/dist/assets/session-panel-BqutyoYd.js +1 -0
- package/dist/assets/share-BZW3tzEX.js +1 -0
- package/dist/assets/shell-DySzVBqR.js +1 -0
- package/dist/assets/shell-FgUEpLdy.js +1 -0
- package/dist/assets/shim-5li_pJY_.js +1 -0
- package/dist/assets/sieve-BLxcNk7A.js +1 -0
- package/dist/assets/sieve-CoBbN2aF.js +1 -0
- package/dist/assets/smalltalk-CJJAzHnb.js +1 -0
- package/dist/assets/smalltalk-d1Dbk6V4.js +1 -0
- package/dist/assets/snippets-panel-YttkYAW9.js +1 -0
- package/dist/assets/sparql-CUZhKeRb.js +1 -0
- package/dist/assets/sparql-CjwbV0fX.js +1 -0
- package/dist/assets/spec-D9d9nT0z.js +1 -0
- package/dist/assets/spinner-CGdRKCnw.js +1 -0
- package/dist/assets/square-DvOKKLHZ.js +1 -0
- package/dist/assets/square-function-DyFIOFp5.js +1 -0
- package/dist/assets/state-B2ZbImvm.js +1 -0
- package/dist/assets/state-B85OOscw.js +1 -0
- package/dist/assets/state-BxLm8vme.js +1 -0
- package/dist/assets/state-YaAkDV8S.js +1 -0
- package/dist/assets/state-ja7GWeCS.js +1 -0
- package/dist/assets/state-sbCCk7ZP.js +3 -0
- package/dist/assets/stateDiagram-D77RDMKH-udui7EYS.js +1 -0
- package/dist/assets/stateDiagram-v2-MP3YSRHH-BhduIvF1.js +1 -0
- package/dist/assets/step-CqgdNM3U.js +1 -0
- package/dist/assets/stex-3SJlFZg3.js +1 -0
- package/dist/assets/stex-Dc5bKD4z.js +1 -0
- package/dist/assets/strings-hlCLC-K1.js +2 -0
- package/dist/assets/stylus-BvudHrj4.js +1 -0
- package/dist/assets/stylus-uh0Gd-Iz.js +1 -0
- package/dist/assets/swift-CUIczYYb.js +1 -0
- package/dist/assets/swift-D5IK5OrP.js +1 -0
- package/dist/assets/swimlanes-42K2YHIH-C-iTrYJs.js +1 -0
- package/dist/assets/swimlanesDiagram-VR7AAH4N-WC2Zewqb.js +8 -0
- package/dist/assets/swiper-component-eXUBvFuA.js +1 -0
- package/dist/assets/switch-C-83e2fG.js +1 -0
- package/dist/assets/table-B7KYyTxw.js +1 -0
- package/dist/assets/table-Dg1KxH-q.js +1 -0
- package/dist/assets/tabs-QRT1DYjj.js +1 -0
- package/dist/assets/tcl-BvqzOD3a.js +1 -0
- package/dist/assets/tcl-SjROh4xB.js +1 -0
- package/dist/assets/terminal-3hxM6K9q.js +20 -0
- package/dist/assets/textile--JQHE1pJ.js +1 -0
- package/dist/assets/textile-DgW6fC9R.js +1 -0
- package/dist/assets/timeline-definition-24CTP7MA-D2u0nOZp.js +120 -0
- package/dist/assets/toast-BRwEbWb6.js +1 -0
- package/dist/assets/toml-BcC_uO4q.js +1 -0
- package/dist/assets/toml-lWmHdWv5.js +1 -0
- package/dist/assets/tooltip-B5pI8o2n.js +1 -0
- package/dist/assets/tooltip-BeP4eX87.js +61 -0
- package/dist/assets/tracing-DZYfCw6p.js +1 -0
- package/dist/assets/tracing-panel-BUPJ77jB.js +2 -0
- package/dist/assets/tree-actions-D5clvgKl.js +1 -0
- package/dist/assets/treeView-Q6P3EWNA-BTTYcvrF.js +1 -0
- package/dist/assets/treemap-WGGIJYW6-Cg7tyfH8.js +1 -0
- package/dist/assets/triangle-alert-BeRqoThc.js +1 -0
- package/dist/assets/troff-BMlKH74u.js +1 -0
- package/dist/assets/troff-r7W702V9.js +1 -0
- package/dist/assets/ttcn-1CwPIugQ.js +1 -0
- package/dist/assets/ttcn-P2iYmK_j.js +1 -0
- package/dist/assets/ttcn-cfg-2bl9aE98.js +1 -0
- package/dist/assets/ttcn-cfg-CHYEAF6D.js +1 -0
- package/dist/assets/turtle-DDf6uD3p.js +1 -0
- package/dist/assets/turtle-D_5eCUwg.js +1 -0
- package/dist/assets/use-restore-focus-GUh2Nd8Z.js +1 -0
- package/dist/assets/useAddCell-Bhv6GT3m.js +1 -0
- package/dist/assets/useBoolean-Co-_MyFz.js +1 -0
- package/dist/assets/useCellActionButton-DwAUf_Cn.js +1 -0
- package/dist/assets/useDateFormatter-CTYCgKB-.js +1 -0
- package/dist/assets/useDeepCompareMemoize-DSlTt6u_.js +1 -0
- package/dist/assets/useDeleteCell-BKN7t4DH.js +1 -0
- package/dist/assets/useDependencyPanelTab-CbcGEmqM.js +1 -0
- package/dist/assets/useEventListener-IRzG-0mH.js +1 -0
- package/dist/assets/useIframeCapabilities-yd8sMuIo.js +1 -0
- package/dist/assets/useInstallPackage-HTUlGg0U.js +1 -0
- package/dist/assets/useInterval-D1QGqQ_I.js +1 -0
- package/dist/assets/useNotebookActions-pXzVjrlk.js +1 -0
- package/dist/assets/useNumberFormatter-BP99Zbyy.js +1 -0
- package/dist/assets/useRunCells-zMO43eNR.js +1 -0
- package/dist/assets/useSplitCell-xEtFLByO.js +1 -0
- package/dist/assets/useTheme-BkPLyRl9.js +1 -0
- package/dist/assets/utils-CaQYvazl.js +1 -0
- package/dist/assets/vb-CrfmF706.js +1 -0
- package/dist/assets/vb-Vd6lTutg.js +1 -0
- package/dist/assets/vbscript-CcW6E3ma.js +1 -0
- package/dist/assets/vbscript-Cpiv2llq.js +1 -0
- package/dist/assets/vega-component-Chbfi__Q.js +1 -0
- package/dist/assets/vega-embed-container-CRZZ4FTx.js +1 -0
- package/dist/assets/velocity-5N54agTA.js +1 -0
- package/dist/assets/velocity-CuSicjhq.js +1 -0
- package/dist/assets/vennDiagram-4TSXK5OY-BKSHsv-w.js +34 -0
- package/dist/assets/verilog-DH7aBYt7.js +1 -0
- package/dist/assets/verilog-DPWRmpYS.js +1 -0
- package/dist/assets/vhdl-BmegRbqn.js +1 -0
- package/dist/assets/vhdl-sLYad3YP.js +1 -0
- package/dist/assets/wardley-WFR3VGLG-C6N1rULY.js +1 -0
- package/dist/assets/wardleyDiagram-VM6X3IG4-CUDQDDoy.js +78 -0
- package/dist/assets/webidl-CNY2gQL0.js +1 -0
- package/dist/assets/webidl-dw5if_Lv.js +1 -0
- package/dist/assets/worker-B5tVfGoh.js +153 -0
- package/dist/assets/workflow-nBi9HGeO.js +1 -0
- package/dist/assets/write-secret-modal-BcosCmZy.js +2 -0
- package/dist/assets/ws-BXWY541V.js +22 -0
- package/dist/assets/xquery-CuDTgW6S.js +1 -0
- package/dist/assets/xquery-d3Qdoigy.js +1 -0
- package/dist/assets/xychartDiagram-S5SC5T6Z-BXDsTxGu.js +7 -0
- package/dist/assets/yacas-BjDXhrkW.js +1 -0
- package/dist/assets/yacas-Dn2coKff.js +1 -0
- package/dist/assets/youtube-2MBs34oQ.js +1 -0
- package/dist/assets/z80-ByJO5ysu.js +1 -0
- package/dist/assets/z80-z4BkVl0y.js +1 -0
- package/dist/index.html +130 -50
- package/package.json +16 -16
- package/src/__tests__/mount.test.ts +6 -6
- package/src/components/chat/tool-call/__tests__/tool-result.test.tsx +56 -0
- package/src/components/chat/tool-call/tool-result.tsx +3 -3
- package/src/components/data-table/TableTopBar.tsx +4 -0
- package/src/components/data-table/__tests__/export-actions.test.tsx +1111 -14
- package/src/components/data-table/__tests__/pagination.test.tsx +85 -1
- package/src/components/data-table/__tests__/schemas.test.ts +57 -0
- package/src/components/data-table/charts/__tests__/schemas.test.ts +25 -0
- package/src/components/data-table/charts/__tests__/spec.test.ts +26 -23
- package/src/components/data-table/charts/constants.ts +11 -10
- package/src/components/data-table/charts/types.ts +1 -0
- package/src/components/data-table/data-table.tsx +3 -0
- package/src/components/data-table/export-actions.tsx +365 -81
- package/src/components/data-table/pagination.tsx +16 -2
- package/src/components/data-table/schemas.ts +90 -14
- package/src/components/editor/actions/__tests__/pair-with-agent-commands.test.ts +32 -46
- package/src/components/editor/actions/__tests__/pair-with-agent-modal.test.tsx +29 -40
- package/src/components/editor/actions/pair-with-agent-commands.ts +3 -4
- package/src/components/editor/actions/pair-with-agent-modal.tsx +4 -7
- package/src/components/editor/actions/useRestartKernel.tsx +2 -2
- package/src/components/editor/alerts/__tests__/connection-notice.test.tsx +224 -17
- package/src/components/editor/alerts/connection-details.tsx +61 -0
- package/src/components/editor/alerts/connection-notice.tsx +46 -53
- package/src/components/editor/alerts/startup-progress.tsx +73 -129
- package/src/components/editor/app-container.tsx +2 -2
- package/src/components/editor/boundary/__tests__/ErrorBoundary.test.tsx +2 -2
- package/src/components/editor/cell/CreateCellButton.tsx +2 -2
- package/src/components/editor/cell/DeleteButton.tsx +2 -2
- package/src/components/editor/cell/RunButton.tsx +3 -3
- package/src/components/editor/cell/StopButton.tsx +2 -2
- package/src/components/editor/chrome/components/__tests__/feedback-button.test.tsx +4 -4
- package/src/components/editor/chrome/components/feedback-button.tsx +3 -3
- package/src/components/editor/chrome/panels/__tests__/packages-panel.test.tsx +8 -8
- package/src/components/editor/chrome/panels/__tests__/runtime-details.test.tsx +430 -0
- package/src/components/editor/chrome/panels/__tests__/sandbox-recovery.test.tsx +4 -4
- package/src/components/editor/chrome/panels/packages-panel.tsx +8 -29
- package/src/components/editor/chrome/panels/runtime-details-state.ts +38 -0
- package/src/components/editor/chrome/panels/runtime-panel.tsx +202 -0
- package/src/components/editor/chrome/panels/runtime-status-toggle.tsx +56 -0
- package/src/components/editor/chrome/panels/sandbox-controller.tsx +2 -2
- package/src/components/editor/chrome/wrapper/app-chrome.tsx +3 -3
- package/src/components/editor/chrome/wrapper/footer-items/machine-stats.tsx +2 -2
- package/src/components/editor/controls/Controls.tsx +3 -3
- package/src/components/editor/controls/__tests__/notebook-menu-dropdown.test.tsx +2 -2
- package/src/components/editor/header/__tests__/status.test.tsx +4 -4
- package/src/components/editor/header/app-header.tsx +2 -2
- package/src/components/editor/header/status.tsx +3 -3
- package/src/components/editor/navigation/__tests__/navigation.test.ts +8 -8
- package/src/components/ui/__tests__/slider.test.tsx +30 -0
- package/src/components/ui/progress-stages.tsx +114 -0
- package/src/core/codemirror/lsp/__tests__/notebook-lsp.test.ts +106 -5
- package/src/core/codemirror/lsp/notebook-lsp.ts +16 -2
- package/src/core/codemirror/readonly/__tests__/extension.test.ts +6 -6
- package/src/core/codemirror/readonly/extension.ts +2 -2
- package/src/core/config/pair.ts +0 -1
- package/src/core/datasets/__tests__/data-source-discovery.test.ts +2 -2
- package/src/core/edit-app.tsx +5 -1
- package/src/core/export/hooks.ts +2 -2
- package/src/core/islands/bootstrap.ts +1 -0
- package/src/core/kernel/session.ts +9 -0
- package/src/core/network/__tests__/connection.test.ts +3 -3
- package/src/core/network/connection-notice.ts +5 -5
- package/src/core/network/connection.ts +9 -9
- package/src/core/network/requests-lazy.ts +2 -2
- package/src/core/packages/__tests__/useSandboxController.test.tsx +2 -2
- package/src/core/packages/useSandboxController.ts +6 -6
- package/src/core/runtime/__tests__/adapter.test.ts +6 -6
- package/src/core/runtime/adapter.ts +7 -7
- package/src/core/runtime/config.ts +2 -2
- package/src/core/saving/filename.ts +2 -2
- package/src/core/saving/save-component.tsx +5 -5
- package/src/core/saving/useAutoSave.ts +2 -2
- package/src/core/wasm/__tests__/bootstrap.test.ts +33 -1
- package/src/core/wasm/worker/bootstrap.ts +22 -3
- package/src/core/websocket/__tests__/useMarimoKernelConnection.hook.test.tsx +30 -25
- package/src/core/websocket/__tests__/useMarimoKernelConnection.test.ts +5 -5
- package/src/core/websocket/connection-utils.ts +21 -21
- package/src/core/websocket/types.ts +8 -9
- package/src/core/websocket/useMarimoKernelConnection.tsx +33 -22
- package/src/css/katex.min.css +145 -144
- package/src/mount.tsx +2 -2
- package/src/plugins/core/__test__/registerReactComponent.test.ts +55 -0
- package/src/plugins/core/registerReactComponent.tsx +3 -1
- package/src/plugins/impl/CheckboxPlugin.tsx +1 -1
- package/src/plugins/impl/DataTablePlugin.tsx +23 -2
- package/src/plugins/impl/DatePickerPlugin.tsx +5 -3
- package/src/plugins/impl/DateRangePlugin.tsx +5 -3
- package/src/plugins/impl/DateTimePickerPlugin.tsx +5 -3
- package/src/plugins/impl/DropdownPlugin.tsx +1 -1
- package/src/plugins/impl/MultiselectPlugin.tsx +1 -1
- package/src/plugins/impl/NumberPlugin.tsx +1 -1
- package/src/plugins/impl/RadioPlugin.tsx +5 -1
- package/src/plugins/impl/RangeSliderPlugin.tsx +1 -1
- package/src/plugins/impl/SearchableSelect.tsx +1 -1
- package/src/plugins/impl/SliderPlugin.tsx +1 -1
- package/src/plugins/impl/SwitchPlugin.tsx +6 -1
- package/src/plugins/impl/TextAreaPlugin.tsx +23 -4
- package/src/plugins/impl/TextInputPlugin.tsx +10 -2
- package/src/plugins/impl/__test__/text-labels.test.tsx +141 -0
- package/src/plugins/impl/__tests__/DataTablePlugin.test.tsx +65 -8
- package/src/plugins/impl/__tests__/widget-labels.test.tsx +122 -0
- package/src/plugins/impl/chat/ChatPlugin.tsx +1 -1
- package/src/plugins/impl/common/labeled.tsx +9 -3
- package/src/plugins/impl/data-frames/DataFramePlugin.tsx +15 -3
- package/src/plugins/impl/data-frames/forms/__tests__/__snapshots__/form.test.tsx.snap +0 -22
- package/src/stories/cell.stories.tsx +2 -2
- package/src/stories/dataframe.stories.tsx +7 -0
- package/src/stories/layout/vertical/one-column.stories.tsx +5 -5
- package/src/stories/progress-stages.stories.tsx +62 -0
- package/src/stories/runtime-existing.stories.tsx +44 -0
- package/src/stories/runtime-maintenance.stories.tsx +40 -0
- package/src/stories/runtime-pixi.stories.tsx +28 -0
- package/src/stories/runtime-story.tsx +527 -0
- package/src/stories/runtime-uv.stories.tsx +56 -0
- package/dist/assets/ConnectedDataExplorerComponent-BFDHLGyp.js +0 -1
- package/dist/assets/ErrorBoundary-CtGZ1MAN.js +0 -2
- package/dist/assets/LazyAnyLanguageCodeMirror-CaEYnB8x.js +0 -2
- package/dist/assets/RunButton-Czeyf3Pi.css +0 -2
- package/dist/assets/RunButton-YN1KKz4a.js +0 -22
- package/dist/assets/__vite-browser-external-Cw9Ccr_O.js +0 -1
- package/dist/assets/__vite-browser-external-DBuuG05M.js +0 -1
- package/dist/assets/abnfDiagram-VCTEODGH-CqPJWAgx.js +0 -1
- package/dist/assets/add-cell-with-ai-Dceg80EG.js +0 -76
- package/dist/assets/agent-panel-CEG8eS3F.js +0 -286
- package/dist/assets/ai-model-dropdown-SOxGsjRY.js +0 -5
- package/dist/assets/alert-dialog-BsB0FYEL.js +0 -7
- package/dist/assets/any-language-editor-b9spizfh.js +0 -1
- package/dist/assets/apl-CFg5GYAr.js +0 -1
- package/dist/assets/app-config-button-CTTg_TIX.js +0 -1
- package/dist/assets/arc-DR2VsF_m.js +0 -1
- package/dist/assets/architecture-7GRP2DOG-D_jUzZ2f.js +0 -1
- package/dist/assets/architectureDiagram-5GKGNRK7-DXjBUUE6.js +0 -36
- package/dist/assets/asciiarmor-DcSiPPgr.js +0 -1
- package/dist/assets/asn1-BPjkVyGQ.js +0 -1
- package/dist/assets/blockDiagram-I7D4REHJ-DS6I1u-N.js +0 -129
- package/dist/assets/brainfuck-DunkcVMy.js +0 -1
- package/dist/assets/button-qFeU84ax.js +0 -1
- package/dist/assets/c4Diagram-7LVT6UL2-CMQEYn6T.js +0 -38
- package/dist/assets/cache-panel-Ct9EFgP7.js +0 -1
- package/dist/assets/capabilities-BqUNf14U.js +0 -1
- package/dist/assets/cells-CU9huD49.js +0 -220
- package/dist/assets/channel-CGdeorQk.js +0 -1
- package/dist/assets/chat-display-DWPnai8M.js +0 -1
- package/dist/assets/chat-panel-DGnu6v96.js +0 -4
- package/dist/assets/chat-ui-BqLN7iW4.js +0 -4
- package/dist/assets/chunk-4HAMMTFA-C6Tl7kEY.js +0 -62
- package/dist/assets/chunk-75Z2AOVW-BzzYECN7.js +0 -2
- package/dist/assets/chunk-DU6HZSFF-BlpgvKzl.js +0 -126
- package/dist/assets/chunk-F27PBJKO-BVIgLGPF.js +0 -1
- package/dist/assets/chunk-GMAD6QVW-hv6IsAru.js +0 -72
- package/dist/assets/chunk-GVQU2GXP-Duv4ZYb-.js +0 -1
- package/dist/assets/chunk-IMKFNOWR-s8kQsL8K.js +0 -231
- package/dist/assets/chunk-L3NEJ4N5-B2hafvRU.js +0 -1
- package/dist/assets/chunk-OSK3NFVY-SNGRdtNA.js +0 -10
- package/dist/assets/chunk-P2QGCYS3-_SeE0QXb.js +0 -1
- package/dist/assets/chunk-POPQ4Y6H-BB5NNJFE.js +0 -1
- package/dist/assets/chunk-PWAF6VOD-BZoBqp8x.js +0 -1
- package/dist/assets/chunk-SHT3W25Y-CM7-8w1-.js +0 -168
- package/dist/assets/chunk-SVP7TREG-BErtDMhh.js +0 -88
- package/dist/assets/chunk-TICWLB2K-CGVR3aYq.js +0 -206
- package/dist/assets/chunk-YOKDWASO-CaoEAGJk.js +0 -142
- package/dist/assets/circle-CzTMKZwz.js +0 -1
- package/dist/assets/classDiagram-ZZMXUADV-isldMhyu.js +0 -1
- package/dist/assets/classDiagram-v2-VYDZK3BY-isldMhyu.js +0 -1
- package/dist/assets/clike-DVzjdKyz.js +0 -1
- package/dist/assets/clojure-B0g4lNAw.js +0 -1
- package/dist/assets/cmake-DPXbK5QP.js +0 -1
- package/dist/assets/cobol-fTfgAx9-.js +0 -1
- package/dist/assets/code-visibility-BGq9NyQN.js +0 -1
- package/dist/assets/coffeescript-Ow8rTsfP.js +0 -1
- package/dist/assets/command-palette-CyBHUvlK.js +0 -1
- package/dist/assets/common-CdJQaC_v.js +0 -1
- package/dist/assets/commonlisp-CRQC3SaM.js +0 -1
- package/dist/assets/components-DsJLlugL.js +0 -1
- package/dist/assets/components-zfCkpDjF.js +0 -1
- package/dist/assets/config-2Nts63h2.js +0 -1
- package/dist/assets/config-BdH5RvM0.js +0 -1
- package/dist/assets/config-D7CP5wR5.js +0 -1
- package/dist/assets/copy-B--GzTEX.js +0 -1
- package/dist/assets/copy-icon-DQuttmjH.js +0 -1
- package/dist/assets/createReducer-CI8rlZE9.js +0 -1
- package/dist/assets/crystal-BrD_FAHX.js +0 -1
- package/dist/assets/css-bBkWhGQX.js +0 -1
- package/dist/assets/cynefin-OW5HDTMX-DIiiykJg.js +0 -1
- package/dist/assets/cynefinDiagram-5FMLGOSQ-B7iZDq2a.js +0 -62
- package/dist/assets/cypher-i9OcNAXL.js +0 -1
- package/dist/assets/d-vXL79Y_P.js +0 -1
- package/dist/assets/dagre-DkKsNZNe.js +0 -1
- package/dist/assets/dagre-GXQ25YYZ-CLT8-BB_.js +0 -4
- package/dist/assets/data-grid-overlay-editor-Bt4aaHfB.js +0 -1
- package/dist/assets/dependency-graph-panel-DPFdz5rd.js +0 -5
- package/dist/assets/diagram-S7CK7UJ4-SuzEYncV.js +0 -30
- package/dist/assets/diagram-UQ7AKVKN-cuBTTzq8.js +0 -41
- package/dist/assets/diagram-VSXAHHWV-CK4GkM-q.js +0 -3
- package/dist/assets/diagram-VX7I27RA-h6SkZKIl.js +0 -24
- package/dist/assets/diagram-Z3DM3KII-C-Vebae0.js +0 -24
- package/dist/assets/diff-Cpbyjb1r.js +0 -1
- package/dist/assets/dist-BH-S-j9V.js +0 -1
- package/dist/assets/dist-BN-7G8qZ.js +0 -2
- package/dist/assets/dist-BTskHGpb.js +0 -2
- package/dist/assets/dist-BWSz9T8E.js +0 -1
- package/dist/assets/dist-BYSOsNiK.js +0 -1
- package/dist/assets/dist-BYab5Kqm.js +0 -1
- package/dist/assets/dist-BczecT6V.js +0 -14
- package/dist/assets/dist-Bviq_Dee.js +0 -1
- package/dist/assets/dist-CCiiXOoB.js +0 -1
- package/dist/assets/dist-CEjBPDxA.js +0 -1
- package/dist/assets/dist-CI-3E0S2.js +0 -1
- package/dist/assets/dist-CQvJDryh.js +0 -7
- package/dist/assets/dist-Ccyblc8N.js +0 -1
- package/dist/assets/dist-CiUBikfn.js +0 -1
- package/dist/assets/dist-Cx42VZlZ.js +0 -1
- package/dist/assets/dist-D5LovWSN.js +0 -1
- package/dist/assets/dist-DBqBVprh.js +0 -6
- package/dist/assets/dist-DFI04FfI.js +0 -1
- package/dist/assets/dist-DuOZdyY2.js +0 -1
- package/dist/assets/dist-DueXZKz9.js +0 -9
- package/dist/assets/dist-DvHtpUI7.js +0 -11
- package/dist/assets/dist-Dz4H5Lpr.js +0 -1
- package/dist/assets/dist-Gcu0m5O1.js +0 -1
- package/dist/assets/dist-MRn68vX1.js +0 -23
- package/dist/assets/dist-vrBHmefa.js +0 -1
- package/dist/assets/dist-yiD-qDpu.js +0 -1
- package/dist/assets/documentation-panel-YTTKKIe_.js +0 -1
- package/dist/assets/dropdown-menu-Crx6knLg.js +0 -1
- package/dist/assets/dtd-BN3Z36N0.js +0 -1
- package/dist/assets/dylan-DtbpL-5i.js +0 -1
- package/dist/assets/ebnfDiagram-PWID7BFC-Bm_qbW1t.js +0 -1
- package/dist/assets/ecl-BWUyrr3C.js +0 -1
- package/dist/assets/edit-page-CWbb1Sdk.js +0 -174
- package/dist/assets/eiffel-CWDL_R9u.js +0 -1
- package/dist/assets/elm-BzsnjhuV.js +0 -1
- package/dist/assets/erDiagram-RLTQ6QDP-Dwwt91bq.js +0 -99
- package/dist/assets/erlang-DXJDmcpF.js +0 -1
- package/dist/assets/error-entries-DvgFKvod.js +0 -5
- package/dist/assets/error-panel-D1XBOiHc.js +0 -1
- package/dist/assets/esm-BErdoAcz.js +0 -1
- package/dist/assets/eventmodeling-NTZA5JFV-DqXXj9CO.js +0 -1
- package/dist/assets/factor-Tpb8PZTx.js +0 -1
- package/dist/assets/feedback-button-CXjDdARJ.js +0 -10
- package/dist/assets/file-explorer-panel-BKJMBA3O.js +0 -1
- package/dist/assets/file-name-input-Bd3Q-WUK.js +0 -3
- package/dist/assets/filename-rhW-R6K2.js +0 -1
- package/dist/assets/flowDiagram-HODETNUW-CqLwY5NX.js +0 -1
- package/dist/assets/forth-Dw2vWL7C.js +0 -1
- package/dist/assets/fortran-DKiYgGt5.js +0 -1
- package/dist/assets/fullscreen-3wS6IaIC.js +0 -41
- package/dist/assets/gallery-page-CrkxyZTA.js +0 -1
- package/dist/assets/ganttDiagram-EL5Y4UJY-Cgy11k0G.js +0 -292
- package/dist/assets/gas-Ei6cTQl-.js +0 -1
- package/dist/assets/gherkin-yFF3mfsd.js +0 -1
- package/dist/assets/gitGraph-4MIJSDKK-BlIdVC2G.js +0 -1
- package/dist/assets/gitGraphDiagram-WWUBYQGX-CVH8fay_.js +0 -106
- package/dist/assets/glide-data-editor-B5WqL5gm.js +0 -131
- package/dist/assets/graphlib-6Yb0YQgW.js +0 -1
- package/dist/assets/groovy-UTCC12KJ.js +0 -1
- package/dist/assets/has-B4C7ywdy.js +0 -1
- package/dist/assets/haskell-BHJQXLHt.js +0 -1
- package/dist/assets/haxe-nTPzqrqE.js +0 -1
- package/dist/assets/highlighted-body-KPVGNVTW-D9V82ncH.js +0 -1
- package/dist/assets/home-page-BNKKAvoF.js +0 -4
- package/dist/assets/idl-CuG-upqW.js +0 -1
- package/dist/assets/index--sT8xf-8.css +0 -2
- package/dist/assets/index-C9FPQNuH.js +0 -62
- package/dist/assets/info-A6RAGUB7-BdPbe-lF.js +0 -1
- package/dist/assets/infoDiagram-27XIBGKW-dRXMROiS.js +0 -2
- package/dist/assets/input-D4bMj5Nb.js +0 -7
- package/dist/assets/ishikawaDiagram-5VMMS53U-CvBCDJJe.js +0 -70
- package/dist/assets/javascript-DeVynBqR.js +0 -1
- package/dist/assets/journeyDiagram-3NMN7TZE-DRc8ACzh.js +0 -139
- package/dist/assets/julia-pvaK4Pax.js +0 -1
- package/dist/assets/kanban-definition-UXKFOSKX-fIKpyolW.js +0 -89
- package/dist/assets/katex-DkE0ukCy.js +0 -257
- package/dist/assets/livescript-DT1P5eZp.js +0 -1
- package/dist/assets/logs-panel-adAvx6o3.js +0 -1
- package/dist/assets/loro_wasm_bg-BwsqTTze.wasm +0 -0
- package/dist/assets/lua-BveDyMVp.js +0 -1
- package/dist/assets/mathematica-BRcOIGly.js +0 -1
- package/dist/assets/mbox-DZvbm2hT.js +0 -1
- package/dist/assets/menu-items-D-vbZmqL.js +0 -1
- package/dist/assets/mermaid-DpSqZGNM.js +0 -44
- package/dist/assets/mermaid-HWGCJPDP-UrYE0_I-.js +0 -1
- package/dist/assets/mermaid-parser.core-3RKOfUXB.js +0 -7
- package/dist/assets/mhchem-CmzEtQj8.js +0 -1
- package/dist/assets/mindmap-definition-YA3MSWOX-B95LGKLt.js +0 -96
- package/dist/assets/mirc-Bjfymsl0.js +0 -1
- package/dist/assets/mllike-DKHdPBJ4.js +0 -1
- package/dist/assets/modelica-DSjP6M5g.js +0 -1
- package/dist/assets/mscgen-BLnPHriT.js +0 -1
- package/dist/assets/mumps-C8StcE5K.js +0 -1
- package/dist/assets/nsis-T1iBtB9C.js +0 -1
- package/dist/assets/ntriples-ChQ5ETDi.js +0 -1
- package/dist/assets/number-overlay-editor-Bs5xzKX-.js +0 -9
- package/dist/assets/numbers-DyJNv6Vk.js +0 -1
- package/dist/assets/octave-B1-zg_Ax.js +0 -1
- package/dist/assets/outline-panel-B9u6Wgol.js +0 -1
- package/dist/assets/oz-Bl-j8Qgc.js +0 -1
- package/dist/assets/packages-panel-D-g71io7.js +0 -1
- package/dist/assets/packet-AYTQ26CC-st4ZYus8.js +0 -1
- package/dist/assets/panels-C5xQNcZv.js +0 -33
- package/dist/assets/panels-CsyUBsel.css +0 -1
- package/dist/assets/pascal-BOvYlg0k.js +0 -1
- package/dist/assets/pegDiagram-XKGWAZYB-CMaSc5Ln.js +0 -1
- package/dist/assets/perl-Bg-67FLb.js +0 -1
- package/dist/assets/pie-WAS4IAKB-GwT5MHDl.js +0 -1
- package/dist/assets/pieDiagram-E7YTZNPT-CZY0tLgh.js +0 -39
- package/dist/assets/pig-Dm1oyrLX.js +0 -1
- package/dist/assets/powershell-DohryO0B.js +0 -1
- package/dist/assets/preload-helper-HclGiUj8.js +0 -1
- package/dist/assets/process-output-CpF79y4D.js +0 -1
- package/dist/assets/properties-C9Sx0CY6.js +0 -1
- package/dist/assets/protobuf-CkyW36SJ.js +0 -1
- package/dist/assets/pug-Db3Zt5v4.js +0 -1
- package/dist/assets/puppet-B65Z6MIR.js +0 -1
- package/dist/assets/purify.es-CYRiAeUx.js +0 -3
- package/dist/assets/python-D2ExL5QM.js +0 -1
- package/dist/assets/q-uBS-kSZE.js +0 -1
- package/dist/assets/quadrantDiagram-AXDQQJYC-D_wrOwLk.js +0 -7
- package/dist/assets/r-BieRum_u.js +0 -1
- package/dist/assets/radar-RG4KPBEZ-h1Tdn-Oz.js +0 -1
- package/dist/assets/railroad-74A4TZTK-r4Uf-msd.js +0 -1
- package/dist/assets/railroad-abnf-HS5TGJTU-BOoktJ2s.js +0 -1
- package/dist/assets/railroad-ebnf-LZEXJU2U-BzJtHsBe.js +0 -1
- package/dist/assets/railroad-peg-WCYAUIDC-C3wGFTzw.js +0 -1
- package/dist/assets/railroadDiagram-O6MQD6OU-BSMijs6s.js +0 -1
- package/dist/assets/react-vega-DNkV_C37.js +0 -189
- package/dist/assets/requirementDiagram-BXWQKSXE-DjzkUUZk.js +0 -84
- package/dist/assets/reveal-component-ZyDayfDQ.js +0 -1069
- package/dist/assets/rpm-CmRXh_9v.js +0 -1
- package/dist/assets/ruby-B4BmRxk8.js +0 -1
- package/dist/assets/run-page-Ba_64fL5.js +0 -1
- package/dist/assets/sankeyDiagram-P5KCCOFB-CvvUY6tS.js +0 -40
- package/dist/assets/sas-DL2uE5J1.js +0 -1
- package/dist/assets/save-worker-Dw8ybFWq.js +0 -113
- package/dist/assets/scheme-CPTXU9en.js +0 -1
- package/dist/assets/scratchpad-panel-7bxRkpPb.js +0 -1
- package/dist/assets/scroll-to-bottom-button-BLNi0TGS.js +0 -1
- package/dist/assets/secrets-panel-DmKgIV5x.js +0 -1
- package/dist/assets/select-CWHHoM53.js +0 -1
- package/dist/assets/sequenceDiagram-WJ2MYXX4-Dp7JdkJ6.js +0 -162
- package/dist/assets/session-panel-D9qVJogC.js +0 -1
- package/dist/assets/session-ztCnZJHI.js +0 -1
- package/dist/assets/shell-B2QETDWa.js +0 -1
- package/dist/assets/sieve-DWZh8qcF.js +0 -1
- package/dist/assets/smalltalk-BZOwo1hk.js +0 -1
- package/dist/assets/snippets-panel-QdZvjlBm.js +0 -1
- package/dist/assets/sparql-Va5qPe7r.js +0 -1
- package/dist/assets/state-0NZOvqJz.js +0 -1
- package/dist/assets/stateDiagram-D77RDMKH-CR5QDK_-.js +0 -1
- package/dist/assets/stateDiagram-v2-MP3YSRHH-BmMYN-vz.js +0 -1
- package/dist/assets/step-CriubqJO.js +0 -1
- package/dist/assets/stex-CJTNBbet.js +0 -1
- package/dist/assets/strings-LjhpYwmx.js +0 -2
- package/dist/assets/stylus-B7NEtOjg.js +0 -1
- package/dist/assets/swift-CyXDuJhH.js +0 -1
- package/dist/assets/swimlanes-42K2YHIH-By_1jYHM.js +0 -1
- package/dist/assets/swimlanesDiagram-VR7AAH4N-DjMyvNFc.js +0 -8
- package/dist/assets/swiper-component-Cbtej5b-.js +0 -1
- package/dist/assets/tcl-DmU4tnXP.js +0 -1
- package/dist/assets/terminal-Ri8br8XX.js +0 -20
- package/dist/assets/textile-DSm0gG7z.js +0 -1
- package/dist/assets/timeline-definition-24CTP7MA-BjNxu6yh.js +0 -120
- package/dist/assets/toast-DXkezxWI.js +0 -1
- package/dist/assets/toml-DtceOx7T.js +0 -1
- package/dist/assets/tooltip-BQ9qHrrN.js +0 -61
- package/dist/assets/tooltip-CamoSiGF.js +0 -1
- package/dist/assets/tracing-BxMH9HGb.js +0 -1
- package/dist/assets/tracing-panel-EeL3md5x.js +0 -2
- package/dist/assets/treeView-Q6P3EWNA-DwYCsGZ1.js +0 -1
- package/dist/assets/treemap-WGGIJYW6-BH3CfKBr.js +0 -1
- package/dist/assets/troff-DXoHE4S9.js +0 -1
- package/dist/assets/ttcn-DYcxXVLi.js +0 -1
- package/dist/assets/ttcn-cfg-BfQlKCwV.js +0 -1
- package/dist/assets/turtle-CljXEmAu.js +0 -1
- package/dist/assets/use-restore-focus-D0UtBPD6.js +0 -5
- package/dist/assets/useCellActionButton-Di4NkDbT.js +0 -1
- package/dist/assets/useEventListener-CUPWI_1X.js +0 -1
- package/dist/assets/useInterval-DluQa5sq.js +0 -1
- package/dist/assets/useNumberFormatter-C4-_TnkF.js +0 -1
- package/dist/assets/useTheme-CnWB5G1X.js +0 -1
- package/dist/assets/vb-CHFvWjRU.js +0 -1
- package/dist/assets/vbscript-BEDR3krh.js +0 -1
- package/dist/assets/vega-component-DGTXJwmx.js +0 -1
- package/dist/assets/vega-embed-container-Din5FYpB.js +0 -1
- package/dist/assets/velocity-BoKDxc_x.js +0 -1
- package/dist/assets/vennDiagram-4TSXK5OY-BR66J2hx.js +0 -34
- package/dist/assets/verilog-48D_RyTw.js +0 -1
- package/dist/assets/vhdl-B_DNZIiR.js +0 -1
- package/dist/assets/wardley-WFR3VGLG-Cr2mp5U6.js +0 -1
- package/dist/assets/wardleyDiagram-VM6X3IG4-Kg0-lASD.js +0 -78
- package/dist/assets/webidl-DXE3DXqw.js +0 -1
- package/dist/assets/worker-ByzyDs4N.js +0 -153
- package/dist/assets/write-secret-modal-wFgr-1dA.js +0 -2
- package/dist/assets/xquery-BriQFVWe.js +0 -1
- package/dist/assets/xychartDiagram-S5SC5T6Z-BSXFWSRW.js +0 -7
- package/dist/assets/yacas-Cyn2f2Yi.js +0 -1
- package/dist/assets/youtube-Ck_NlGi9.js +0 -1
- package/dist/assets/z80-BG8AOCL_.js +0 -1
- package/src/components/editor/chrome/panels/__tests__/sandbox-details.test.tsx +0 -358
- package/src/components/editor/chrome/panels/sandbox-details-state.ts +0 -38
- package/src/components/editor/chrome/panels/sandbox-panel.tsx +0 -230
- package/src/components/editor/chrome/panels/sandbox-toggle.tsx +0 -52
- package/src/stories/sandbox.stories.tsx +0 -488
- /package/dist/assets/{context-BFOBKCJB.js → I18nProvider-BFOBKCJB.js} +0 -0
- /package/dist/assets/{useInterval-CV_Lf9-w.css → Inputs-CV_Lf9-w.css} +0 -0
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
import{a as e,r as t}from"./rolldown-runtime-B0Z9INg1.js";import{t as n}from"./react-CUdNIagt.js";import{t as r}from"./jsx-runtime-B74pBk57.js";import{$ as i,A as a,B as o,C as s,D as c,E as l,F as u,G as d,H as f,I as p,J as m,K as h,L as g,M as _,N as v,O as y,P as b,Q as x,R as S,S as C,T as w,U as T,V as E,W as D,X as O,Y as k,Z as A,_ as ee,a as te,at as ne,b as re,c as ie,ct as ae,d as oe,dt as j,et as M,f as se,ft as ce,g as le,h as ue,i as de,it as fe,j as pe,k as me,l as he,lt as ge,m as _e,mt as ve,n as ye,nt as be,o as xe,ot as Se,p as eee,pt as Ce,q as we,r as tee,rt as Te,s as Ee,st as De,t as nee,tt as N,u as Oe,ut as ke,v as Ae,w as je,x as Me,y as Ne,z as P}from"./vega-loader.browser-CLRkNgm7.js";import{a as Pe,c as Fe,o as Ie,s as Le}from"./precisionRound-Bq_nmf5u.js";import{_ as Re,a as ze,c as Be,d as ree,f as iee,g as Ve,h as He,l as Ue,m as aee,n as We,o as Ge,p as Ke,r as qe,s as Je,t as Ye,u as Xe,v as Ze}from"./linear-0eij_aAG.js";import{n as Qe,r as $e,t as et}from"./ordinal-BdBDtYTt.js";import{a as tt,c as nt,d as rt,f as it,i as oee,l as see,n as cee,o as at,p as ot,r as lee,s as st,t as uee,u as dee}from"./time-MgToa8VM.js";import{t as ct}from"./range-EplFIxc7.js";import{i as fee,t as pee}from"./defaultLocale-CNPGWpMu.js";import{C as lt,E as ut,P as dt,S as mee,T as ft,c as pt,l as mt,o as ht,p as gt,r as _t,s as vt,v as yt,w as bt,x as xt,y as St}from"./defaultLocale-D5bOh7g6.js";import{n as Ct,r as wt,t as Tt}from"./path-BCdg30Y0.js";import{f as Et,p as Dt,u as Ot}from"./math-Bi_r_ZWc.js";import{t as kt}from"./arc-Yxk2k_uq.js";import{t as At}from"./array-BifhSqXX.js";import{_ as jt,a as Mt,c as Nt,d as Pt,f as Ft,g as It,h as Lt,i as Rt,l as zt,m as Bt,n as Vt,o as Ht,p as Ut,r as Wt,s as Gt,t as Kt,u as qt,v as Jt}from"./step-CqgdNM3U.js";import{n as hee,r as gee,t as Yt}from"./line-io_go0HI.js";import{n as Xt,t as Zt}from"./init-ZlXS9mIS.js";import{A as _ee,C as Qt,D as $t,E as en,O as tn,S as nn,T as rn,_ as an,a as on,b as sn,c as cn,d as ln,f as un,g as dn,h as fn,i as pn,k as mn,l as hn,m as gn,n as _n,o as vn,p as yn,r as bn,s as xn,t as Sn,u as Cn,x as wn,y as Tn}from"./cubic-DELhj3Tx.js";import{t as En}from"./colors-Cg5Vh3br.js";import{a as Dn,c as On,d as kn,f as An,i as jn,l as Mn,n as Nn,o as Pn,p as Fn,r as In,s as Ln,t as Rn,u as zn}from"./treemap-BfjIY-m6.js";function Bn(e,t,n){let r=[t,...n];console[e](...r)}function Vn(e,t,n=Bn){let r=e||0;return{level(e){return arguments.length?(r=+e,this):r},error(...e){return r>=1&&n(t||`error`,`ERROR`,e),this},warn(...e){return r>=2&&n(t||`warn`,`WARN`,e),this},info(...e){return r>=3&&n(t||`log`,`INFO`,e),this},debug(...e){return r>=4&&n(t||`log`,`DEBUG`,e),this}}}function Hn(e){return e.length>0}var Un=e=>t=>e*Math.exp(t),Wn=e=>t=>Math.log(e*t),Gn=e=>t=>Math.sign(t)*Math.log1p(Math.abs(t/e)),Kn=e=>t=>Math.sign(t)*Math.expm1(Math.abs(t))*e,qn=e=>t=>t<0?-((-t)**+e):t**+e,Jn=e=>O(e)??0,Yn=e=>e;function Xn(e,t,n,r){Hn(e)||j(`Domain array must not be empty`);let i=n(e[0]),a=n(A(e)),o=(a-i)*t;return[r(i-o),r(a-o)]}function Zn(e,t){return Xn(e,t,Jn,Yn)}function Qn(e,t){let n=Math.sign(e[0]);return Xn(e,t,Wn(n),Un(n))}function $n(e,t,n){return Xn(e,t,qn(n),qn(1/n))}function er(e,t,n){return Xn(e,t,Gn(n),Kn(n))}function tr(e,t,n,r,i){Hn(e)||j(`Domain array must not be empty`);let a=r(e[0]),o=r(A(e)),s=t==null?(a+o)/2:r(t);return[i(s+(a-s)*n),i(s+(o-s)*n)]}function nr(e,t,n){return tr(e,t,n,Jn,Yn)}function rr(e,t,n){let r=Math.sign(e[0]);return tr(e,t,n,Wn(r),Un(r))}function ir(e,t,n,r){return tr(e,t,n,qn(r),qn(1/r))}function ar(e,t,n,r){return tr(e,t,n,Gn(r),Kn(r))}function or(e){return 1+~~(new Date(e).getMonth()/3)}function sr(e){return 1+~~(new Date(e).getUTCMonth()/3)}function cr(e,t,n){let r=e[0],i=e[1],a;return i<r&&(a=i,i=r,r=a),a=i-r,a>=n-t?[t,n]:[r=Math.min(Math.max(r,t),n-a),r+a]}function lr(e,t){let n=null;return r=>{n&&clearTimeout(n),n=setTimeout(()=>(t(r),n=null),e)}}function ur(e,t){let n=0,r,i,a,o;if(e&&(r=e.length)){if(t==null){for(i=e[n];n<r&&(i==null||i!==i);i=e[++n]);for(a=o=i;n<r;++n)i=e[n],i!=null&&(i<a&&(a=i),i>o&&(o=i))}else{for(i=t(e[n]);n<r&&(i==null||i!==i);i=t(e[++n]));for(a=o=i;n<r;++n)i=t(e[n]),i!=null&&(i<a&&(a=i),i>o&&(o=i))}}return[a,o]}function dr(e,t){let n=e.length,r=-1,i,a,o,s,c;if(t==null){for(;++r<n;)if(s=e[r],s!=null&&s>=s){o=c=s;break}if(r===n)return[-1,-1];for(i=a=r;++r<n;)s=e[r],s!=null&&(o>s&&(o=s,i=r),c<s&&(c=s,a=r))}else{for(;++r<n;)if(s=t(e[r],r,e),s!=null&&s>=s){o=c=s;break}if(r===n)return[-1,-1];for(i=a=r;++r<n;)s=t(e[r],r,e),s!=null&&(o>s&&(o=s,i=r),c<s&&(c=s,a=r))}return[i,a]}var fr={};function pr(e){let t={},n;function r(e){return T(t,e)&&t[e]!==fr}let i={size:0,empty:0,object:t,has:r,get(e){return r(e)?t[e]:void 0},set(e,n){return r(e)||(++i.size,t[e]===fr&&--i.empty),t[e]=n,this},delete(e){return r(e)&&(--i.size,++i.empty,t[e]=fr),this},clear(){i.size=i.empty=0,i.object=t={}},test(e){return arguments.length?(n=e,i):n},clean(){let e={},r=0;for(let i in t){let a=t[i];a!==fr&&(!n||!n(a))&&(e[i]=a,++r)}i.size=r,i.empty=0,i.object=t=e}};return e&&Object.keys(e).forEach(t=>{i.set(t,e[t])}),i}function mr(e,t,n,r,i,a){if(!n&&n!==0)return a;let o=+n,s=e[0],c=A(e),l;if(c===void 0)return a;c<s&&(l=s,s=c,c=l),l=Math.abs(t-s);let u=Math.abs(c-t);return l<u&&l<=o?r:u<=o?i:a}function F(e,t,n){let r=e.prototype=Object.create(t.prototype);return Object.defineProperty(r,"constructor",{value:e,writable:!0,enumerable:!0,configurable:!0}),D(r,n)}function hr(e,t,n,r){let i=t[0],a=t[t.length-1],o;return i>a&&(o=i,i=a,a=o),n=n===void 0||n,r=r===void 0||r,(n?i<=e:i<e)&&(r?e<=a:e<a)}function gr(e){return typeof e==`boolean`}function _r(e){return Object.prototype.toString.call(e)===`[object RegExp]`}function vr(e,t){let n=e[0],r=A(e),i=+t;return r===void 0?n:i?i===1?r:n+i*(r-n):n}var vee=1e4;function yr(e){e=+e||vee;let t,n,r,i=()=>{t={},n={},r=0},a=(i,a)=>(++r>e&&(n=t,t={},r=1),t[i]=a);return i(),{clear:i,has:e=>T(t,e)||T(n,e),get:e=>T(t,e)?t[e]:T(n,e)?a(e,n[e]):void 0,set:(e,n)=>T(t,e)?t[e]=n:a(e,n)}}function yee(e){return e===Array||typeof e==`function`&&e.prototype&&ArrayBuffer.isView(e.prototype)}function br(e,t,n,r){let i=t.length,a=n.length;if(!a)return t;if(!i)return n;let o=t.constructor,s=r||(yee(o)?new o(i+a):Array(i+a)),c=0,l=0,u=0;for(;c<i&&l<a;++u)s[u]=e(t[c],n[l])>0?n[l++]:t[c++];for(;c<i;++c,++u)s[u]=t[c];for(;l<a;++l,++u)s[u]=n[l];return s}function xr(e,t){let n=``;for(;--t>=0;)n+=e;return n}function Sr(e,t,n,r){let i=n||` `,a=e+``,o=t-a.length;return o<=0?a:r===`left`?xr(i,o)+a:r===`center`?xr(i,~~(o/2))+a+xr(i,Math.ceil(o/2)):a+xr(i,o)}function Cr(e,t,n,r){let i=r??`…`,a=e+``,o=a.length,s=Math.max(0,t-i.length);return o<=t?a:n===`left`?i+a.slice(o-s):n===`center`?a.slice(0,Math.ceil(s/2))+i+a.slice(o-~~(s/2)):a.slice(0,s)+i}function wr(e,t,n){if(e){if(t){let r=e.length;for(let i=0;i<r;++i){let r=t(e[i]);r&&n(r,i,e)}}else e.forEach(n)}}function Tr(e,t){let n=0,r,i=0,a=0;if(t===void 0)for(let t of e)t!=null&&(t=+t)>=t&&(r=t-i,i+=r/++n,a+=r*(t-i));else{let o=-1;for(let s of e)(s=t(s,++o,e))!=null&&(s=+s)>=s&&(r=s-i,i+=r/++n,a+=r*(s-i))}if(n>1)return a/(n-1)}function Er(e,t){let n=Tr(e,t);return n&&Math.sqrt(n)}var Dr=class{constructor(){this._partials=new Float64Array(32),this._n=0}add(e){let t=this._partials,n=0;for(let r=0;r<this._n&&r<32;r++){let i=t[r],a=e+i,o=Math.abs(e)<Math.abs(i)?e-(a-i):i-(a-e);o&&(t[n++]=o),e=a}return t[n]=e,this._n=n+1,this}valueOf(){let e=this._partials,t=this._n,n,r,i,a=0;if(t>0){for(a=e[--t];t>0&&(n=a,r=e[--t],a=n+r,i=r-(a-n),!i););t>0&&(i<0&&e[t-1]<0||i>0&&e[t-1]>0)&&(r=i*2,n=a+r,r==n-a&&(a=n))}return a}};function Or(e,t){return Array.from(t,t=>e[t])}function kr(e=Fe){if(e===Fe)return Ar;if(typeof e!=`function`)throw TypeError(`compare is not a function`);return(t,n)=>{let r=e(t,n);return r||r===0?r:(e(n,n)===0)-(e(t,t)===0)}}function Ar(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(e<t?-1:+(e>t))}function jr(e,t,n=0,r=1/0,i){if(t=Math.floor(t),n=Math.floor(Math.max(0,n)),r=Math.floor(Math.min(e.length-1,r)),!(n<=t&&t<=r))return e;for(i=i===void 0?Ar:kr(i);r>n;){if(r-n>600){let a=r-n+1,o=t-n+1,s=Math.log(a),c=.5*Math.exp(2*s/3),l=.5*Math.sqrt(s*c*(a-c)/a)*(o-a/2<0?-1:1),u=Math.max(n,Math.floor(t-o*c/a+l)),d=Math.min(r,Math.floor(t+(a-o)*c/a+l));jr(e,t,u,d,i)}let a=e[t],o=n,s=r;for(Mr(e,n,t),i(e[r],a)>0&&Mr(e,n,r);o<s;){for(Mr(e,o,s),++o,--s;i(e[o],a)<0;)++o;for(;i(e[s],a)>0;)--s}i(e[n],a)===0?Mr(e,n,s):(++s,Mr(e,s,r)),s<=t&&(n=s+1),t<=s&&(r=s-1)}return e}function Mr(e,t,n){let r=e[t];e[t]=e[n],e[n]=r}function Nr(e,t,n){if(e=Float64Array.from(Ze(e,n)),!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return it(e);if(t>=1)return ot(e);var r,i=(r-1)*t,a=Math.floor(i),o=ot(jr(e,a).subarray(0,a+1));return o+(it(e.subarray(a+1))-o)*(i-a)}}function Pr(e,t,n=Re){if(!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return+n(e[0],0,e);if(t>=1)return+n(e[r-1],r-1,e);var r,i=(r-1)*t,a=Math.floor(i),o=+n(e[a],a,e);return o+(+n(e[a+1],a+1,e)-o)*(i-a)}}function Fr(e,t){let n=0,r=0;if(t===void 0)for(let t of e)t!=null&&(t=+t)>=t&&(++n,r+=t);else{let i=-1;for(let a of e)(a=t(a,++i,e))!=null&&(a=+a)>=a&&(++n,r+=a)}if(n)return r/n}function Ir(e,t){return Nr(e,.5,t)}function*Lr(e){for(let t of e)yield*t}function Rr(e){return Array.from(Lr(e))}function zr(e,t){let n=0;if(t===void 0)for(let t of e)(t=+t)&&(n+=t);else{let r=-1;for(let i of e)(i=+t(i,++r,e))&&(n+=i)}return n}function Br(e,...t){e=new $e(e),t=t.map(Vr);out:for(let n of e)for(let r of t)if(!r.has(n)){e.delete(n);continue out}return e}function Vr(e){return e instanceof $e?e:new $e(e)}function Hr(...e){let t=new $e;for(let n of e)for(let e of n)t.add(e);return t}var Ur=e(n(),1),bee=r(),xee=/("(?:[^\\"]|\\.)*")|[:,]/g;function Wr(e,t={}){let n=JSON.stringify([1],void 0,t.indent===void 0?2:t.indent).slice(2,-3),r=n===``?1/0:t.maxLength===void 0?80:t.maxLength,{replacer:i}=t;return(function e(t,a,o){t&&typeof t.toJSON==`function`&&(t=t.toJSON());let s=JSON.stringify(t,i);if(s===void 0)return s;let c=r-a.length-o;if(s.length<=c){let e=s.replace(xee,(e,t)=>t||`${e} `);if(e.length<=c)return e}if(i!=null&&(t=JSON.parse(s),i=void 0),typeof t==`object`&&t){let r=a+n,i=[],o=0,s,c;if(Array.isArray(t)){s=`[`,c=`]`;let{length:n}=t;for(;o<n;o++)i.push(e(t[o],r,o===n-1?0:1)||`null`)}else{s=`{`,c=`}`;let n=Object.keys(t),{length:a}=n;for(;o<a;o++){let s=n[o],c=`${JSON.stringify(s)}: `,l=e(t[s],r,c.length+(o===a-1?0:1));l!==void 0&&i.push(c+l)}}if(i.length>0)return[s,n+i.join(`,\n${r}`),c].join(`\n${a}`)}return s})(e,``,0)}function Gr(e){let t=e||ne,n=[],r={};return n.add=e=>{let i=t(e);return r[i]||(r[i]=1,n.push(e)),n},n.remove=e=>{let i=t(e);if(r[i]){r[i]=0;let t=n.indexOf(e);t>=0&&n.splice(t,1)}return n},n}async function Kr(e,t){try{await t(e)}catch(t){e.error(t)}}var qr=Symbol(`vega_id`),Jr=1;function Yr(e){return!!(e&&I(e))}function I(e){return e[qr]}function Xr(e,t){return e[qr]=t,e}function Zr(e){let t=e===Object(e)?e:{data:e};return I(t)?t:Xr(t,Jr++)}function Qr(e){return $r(e,Zr({}))}function $r(e,t){for(let n in e)t[n]=e[n];return t}function ei(e,t){return Xr(t,I(e))}function ti(e,t){return e?t?(n,r)=>e(n,r)||I(t(n))-I(t(r)):(t,n)=>e(t,n)||I(t)-I(n):null}function ni(e){return e&&e.constructor===ri}function ri(){let e=[],t=[],n=[],r=[],i=[],a=null,o=!1;return{constructor:ri,insert(t){let n=k(t),r=n.length;for(let t=0;t<r;++t)e.push(n[t]);return this},remove(e){let n=m(e)?r:t,i=k(e),a=i.length;for(let e=0;e<a;++e)n.push(i[e]);return this},modify(e,t,r){let a={field:t,value:d(r)};return m(e)?(a.filter=e,i.push(a)):(a.tuple=e,n.push(a)),this},encode(e,t){return m(e)?i.push({filter:e,field:t}):n.push({tuple:e,field:t}),this},clean(e){return a=e,this},reflow(){return o=!0,this},pulse(s,c){let l={},u={},d,f,p,m,h,g;for(d=0,f=c.length;d<f;++d)l[I(c[d])]=1;for(d=0,f=t.length;d<f;++d)h=t[d],l[I(h)]=-1;for(d=0,f=r.length;d<f;++d)m=r[d],c.forEach(e=>{m(e)&&(l[I(e)]=-1)});for(d=0,f=e.length;d<f;++d)h=e[d],g=I(h),l[g]?l[g]=1:s.add.push(Zr(e[d]));for(d=0,f=c.length;d<f;++d)h=c[d],l[I(h)]<0&&s.rem.push(h);function _(e,t,n){n?e[t]=n(e):s.encode=t,o||(u[I(e)]=e)}for(d=0,f=n.length;d<f;++d)p=n[d],h=p.tuple,m=p.field,g=l[I(h)],g>0&&(_(h,m,p.value),s.modifies(m));for(d=0,f=i.length;d<f;++d)p=i[d],m=p.filter,c.forEach(e=>{m(e)&&l[I(e)]>0&&_(e,p.field,p.value)}),s.modifies(p.field);if(o)s.mod=t.length||r.length?c.filter(e=>l[I(e)]>0):c.slice();else for(g in u)s.mod.push(u[g]);return(a||a==null&&(t.length||r.length))&&s.clean(!0),s}}}var ii=`_:mod:_`;function ai(){Object.defineProperty(this,ii,{writable:!0,value:{}})}ai.prototype={set(e,t,n,r){let i=this,a=i[e],o=i[ii];return t!=null&&t>=0?(a[t]!==n||r)&&(a[t]=n,o[t+`:`+e]=-1,o[e]=-1):(a!==n||r)&&(i[e]=n,o[e]=N(n)?1+n.length:-1),i},modified(e,t){let n=this[ii];if(!arguments.length){for(let e in n)if(n[e])return!0;return!1}if(N(e)){for(let t=0;t<e.length;++t)if(n[e[t]])return!0;return!1}return t!=null&&t>=0?t+1<n[e]||!!n[t+`:`+e]:!!n[e]},clear(){return this[ii]={},this}};var oi=0,si=`pulse`,ci=new ai,li=1,ui=2;function di(e,t,n,r){this.id=++oi,this.value=e,this.stamp=-1,this.rank=-1,this.qrank=-1,this.flags=0,t&&(this._update=t),n&&this.parameters(n,r)}function fi(e){return function(t){let n=this.flags;return arguments.length===0?!!(n&e):(this.flags=t?n|e:n&~e,this)}}di.prototype={targets(){return this._targets||=Gr(fe)},set(e){return this.value===e?0:(this.value=e,1)},skip:fi(li),modified:fi(ui),parameters(e,t,n){t=t!==!1;let r=this._argval=this._argval||new ai,i=this._argops=this._argops||[],a=[],o,s,c,l,u=(e,n,o)=>{o instanceof di?(o!==this&&(t&&o.targets().add(this),a.push(o)),i.push({op:o,name:e,index:n})):r.set(e,n,o)};for(o in e)if(s=e[o],o===si)k(s).forEach(e=>{e instanceof di?e!==this&&(e.targets().add(this),a.push(e)):j(`Pulse parameters must be operator instances.`)}),this.source=s;else if(N(s))for(r.set(o,-1,Array(c=s.length)),l=0;l<c;++l)u(o,l,s[l]);else u(o,-1,s);return this.marshall().clear(),n&&(i.initonly=!0),a},marshall(e){let t=this._argval||ci,n=this._argops,r,i,a,o;if(n){let s=n.length;for(i=0;i<s;++i)r=n[i],a=r.op,o=a.modified()&&a.stamp===e,t.set(r.name,r.index,a.value,o);if(n.initonly){for(i=0;i<s;++i)r=n[i],r.op.targets().remove(this);this._argops=null,this._update=null}}return t},detach(){let e=this._argops,t,n,r,i;if(e)for(t=0,n=e.length;t<n;++t)r=e[t],i=r.op,i._targets&&i._targets.remove(this);this.pulse=null,this.source=null},evaluate(e){let t=this._update;if(t){let n=this.marshall(e.stamp),r=t.call(this,n,e);if(n.clear(),r!==this.value)this.value=r;else if(!this.modified())return e.StopPropagation}},run(e){if(e.stamp<this.stamp)return e.StopPropagation;let t;return this.skip()?(this.skip(!1),t=0):t=this.evaluate(e),this.pulse=t||e}};function pi(e,t,n,r){let i=1,a;return e instanceof di?a=e:e&&e.prototype instanceof di?a=new e:m(e)?a=new di(null,e):(i=0,a=new di(e,t)),this.rank(a),i&&(r=n,n=t),n&&this.connect(a,a.parameters(n,r)),this.touch(a),a}function mi(e,t){let n=e.rank,r=t.length;for(let i=0;i<r;++i)if(n<t[i].rank){this.rerank(e);return}}var hi=0;function gi(e,t,n){this.id=++hi,this.value=null,n&&(this.receive=n),e&&(this._filter=e),t&&(this._apply=t)}function _i(e,t,n){return new gi(e,t,n)}gi.prototype={_filter:De,_apply:ne,targets(){return this._targets||=Gr(fe)},consume(e){return arguments.length?(this._consume=!!e,this):!!this._consume},receive(e){if(this._filter(e)){let t=this.value=this._apply(e),n=this._targets,r=n?n.length:0;for(let e=0;e<r;++e)n[e].receive(t);this._consume&&(e.preventDefault(),e.stopPropagation())}},filter(e){let t=_i(e);return this.targets().add(t),t},apply(e){let t=_i(null,e);return this.targets().add(t),t},merge(){let e=_i();this.targets().add(e);for(let t=0,n=arguments.length;t<n;++t)arguments[t].targets().add(e);return e},throttle(e){let t=-1;return this.filter(()=>{let n=Date.now();return n-t>e?(t=n,1):0})},debounce(e){let t=_i();return this.targets().add(_i(null,null,lr(e,e=>{let n=e.dataflow;t.receive(e),n&&n.run&&n.run()}))),t},between(e,t){let n=!1;return e.targets().add(_i(null,null,()=>n=!0)),t.targets().add(_i(null,null,()=>n=!1)),this.filter(()=>n)},detach(){this._filter=De,this._targets=null}};function vi(e,t,n,r){let i=this,a=_i(n,r),o=function(e){e.dataflow=i;try{a.receive(e)}catch(e){i.error(e)}finally{i.run()}},s;s=typeof e==`string`&&typeof document<`u`?document.querySelectorAll(e):k(e);let c=s.length;for(let e=0;e<c;++e)s[e].addEventListener(t,o);return a}function yi(e,t){let n=this.locale();return xe(e,t,n.timeParse,n.utcParse)}function bi(e,t,n){return t=this.parse(t,n),this.pulse(e,this.changeset().insert(t))}async function xi(e,t){let n=this,r=0,i;try{i=await n.loader().load(e,{context:`dataflow`,response:Ee(t&&t.type)});try{i=n.parse(i,t)}catch(t){r=-2,n.warn(`Data ingestion failed`,e,t)}}catch(t){r=-1,n.warn(`Loading failed`,e,t)}return{data:i,status:r}}async function Si(e,t,n){let r=this,i=r._pending||Ci(r);i.requests+=1;let a=await r.request(t,n);return r.pulse(e,r.changeset().remove(De).insert(a.data||[])),i.done(),a}function Ci(e){let t,n=new Promise(e=>t=e);return n.requests=0,n.done=()=>{--n.requests===0&&(e._pending=null,t(e))},e._pending=n}var wi={skip:!0};function Ti(e,t,n,r,i){return(e instanceof di?Di:Ei)(this,e,t,n,r,i),this}function Ei(e,t,n,r,i,a){let o=D({},a,wi),s,c;m(n)||(n=d(n)),r===void 0?s=t=>e.touch(n(t)):m(r)?(c=new di(null,r,i,!1),s=t=>{c.evaluate(t);let r=n(t),i=c.value;ni(i)?e.pulse(r,i,a):e.update(r,i,o)}):s=t=>e.update(n(t),r,o),t.apply(s)}function Di(e,t,n,r,i,a){if(r===void 0)t.targets().add(n);else{let o=a||{},s=new di(null,Oi(n,r),i,!1);s.modified(o.force),s.rank=t.rank,t.targets().add(s),n&&(s.skip(!0),s.value=n.value,s.targets().add(n),e.connect(n,[s]))}}function Oi(e,t){return t=m(t)?t:d(t),e?function(n,r){let i=t(n,r);return e.skip()||(e.skip(i!==this.value).value=i),i}:t}function ki(e){e.rank=++this._rank}function Ai(e){let t=[e],n,r,i;for(;t.length;)if(this.rank(n=t.pop()),r=n._targets)for(i=r.length;--i>=0;)t.push(n=r[i]),n===e&&j(`Cycle detected in dataflow graph.`)}var ji={},Mi=1,Ni=2,Pi=4,Fi=3,Ii=5,Li=7,Ri=8,zi=16,Bi=32,Vi=64;function Hi(e,t,n){this.dataflow=e,this.stamp=t??-1,this.add=[],this.rem=[],this.mod=[],this.fields=null,this.encode=n||null}function Ui(e,t){let n=[];return wr(e,t,e=>n.push(e)),n}function Wi(e,t){let n={};return e.visit(t,e=>{n[I(e)]=1}),e=>n[I(e)]?null:e}function Gi(e,t){return e?(n,r)=>e(n,r)&&t(n,r):t}Hi.prototype={StopPropagation:ji,ADD:Mi,REM:Ni,MOD:Pi,ADD_REM:Fi,ADD_MOD:Ii,ALL:Li,REFLOW:Ri,SOURCE:zi,NO_SOURCE:Bi,NO_FIELDS:Vi,fork(e){return new Hi(this.dataflow).init(this,e)},clone(){let e=this.fork(Li);return e.add=e.add.slice(),e.rem=e.rem.slice(),e.mod=e.mod.slice(),e.source&&=e.source.slice(),e.materialize(23)},addAll(){let e=this;return!e.source||e.add===e.rem||!e.rem.length&&e.source.length===e.add.length?e:(e=new Hi(this.dataflow).init(this),e.add=e.source,e.rem=[],e)},init(e,t){let n=this;return n.stamp=e.stamp,n.encode=e.encode,e.fields&&!(t&Vi)&&(n.fields=e.fields),t&Mi?(n.addF=e.addF,n.add=e.add):(n.addF=null,n.add=[]),t&Ni?(n.remF=e.remF,n.rem=e.rem):(n.remF=null,n.rem=[]),t&Pi?(n.modF=e.modF,n.mod=e.mod):(n.modF=null,n.mod=[]),t&Bi?(n.srcF=null,n.source=null):(n.srcF=e.srcF,n.source=e.source,e.cleans&&(n.cleans=e.cleans)),n},runAfter(e){this.dataflow.runAfter(e)},changed(e){let t=e||Li;return t&Mi&&this.add.length||t&Ni&&this.rem.length||t&Pi&&this.mod.length},reflow(e){if(e)return this.fork(Li).reflow();let t=this.add.length,n=this.source&&this.source.length;return n&&n!==t&&(this.mod=this.source,t&&this.filter(Pi,Wi(this,Mi))),this},clean(e){return arguments.length?(this.cleans=!!e,this):this.cleans},modifies(e){let t=this.fields||={};return N(e)?e.forEach(e=>t[e]=!0):t[e]=!0,this},modified(e,t){let n=this.fields;return(t||this.mod.length)&&n?arguments.length?N(e)?e.some(e=>n[e]):n[e]:!!n:!1},filter(e,t){let n=this;return e&Mi&&(n.addF=Gi(n.addF,t)),e&Ni&&(n.remF=Gi(n.remF,t)),e&Pi&&(n.modF=Gi(n.modF,t)),e&zi&&(n.srcF=Gi(n.srcF,t)),n},materialize(e){e||=Li;let t=this;return e&Mi&&t.addF&&(t.add=Ui(t.add,t.addF),t.addF=null),e&Ni&&t.remF&&(t.rem=Ui(t.rem,t.remF),t.remF=null),e&Pi&&t.modF&&(t.mod=Ui(t.mod,t.modF),t.modF=null),e&zi&&t.srcF&&(t.source=t.source.filter(t.srcF),t.srcF=null),t},visit(e,t){let n=this,r=t;if(e&zi)return wr(n.source,n.srcF,r),n;e&Mi&&wr(n.add,n.addF,r),e&Ni&&wr(n.rem,n.remF,r),e&Pi&&wr(n.mod,n.modF,r);let i=n.source;if(e&Ri&&i){let e=n.add.length+n.mod.length;e===i.length||(e?wr(i,Wi(n,Ii),r):wr(i,n.srcF,r))}return n}};function Ki(e,t,n,r){let i=this,a=0;this.dataflow=e,this.stamp=t,this.fields=null,this.encode=r||null,this.pulses=n;for(let e of n)if(e.stamp===t){if(e.fields){let t=i.fields||={};for(let n in e.fields)t[n]=1}e.changed(i.ADD)&&(a|=i.ADD),e.changed(i.REM)&&(a|=i.REM),e.changed(i.MOD)&&(a|=i.MOD)}this.changes=a}F(Ki,Hi,{fork(e){let t=new Hi(this.dataflow).init(this,e&this.NO_FIELDS);return e!==void 0&&(e&t.ADD&&this.visit(t.ADD,e=>t.add.push(e)),e&t.REM&&this.visit(t.REM,e=>t.rem.push(e)),e&t.MOD&&this.visit(t.MOD,e=>t.mod.push(e))),t},changed(e){return this.changes&e},modified(e){let t=this,n=t.fields;return n&&t.changes&t.MOD?N(e)?e.some(e=>n[e]):n[e]:0},filter(){j(`MultiPulse does not support filtering.`)},materialize(){j(`MultiPulse does not support materialization.`)},visit(e,t){let n=this,r=n.pulses,i=r.length,a=0;if(e&n.SOURCE)for(;a<i;++a)r[a].visit(e,t);else for(;a<i;++a)r[a].stamp===n.stamp&&r[a].visit(e,t);return n}});async function See(e,t,n){let r=this,i=[];if(r._pulse)return qi(r);if(r._pending&&await r._pending,t&&await Kr(r,t),!r._touched.length)return r.debug(`Dataflow invoked, but nothing to do.`),r;let a=++r._clock;r._pulse=new Hi(r,a,e),r._touched.forEach(e=>r._enqueue(e,!0)),r._touched=Gr(fe);let o=0,s,c,l;try{for(;r._heap.size()>0;){if(s=r._heap.pop(),s.rank!==s.qrank){r._enqueue(s,!0);continue}c=s.run(r._getPulse(s,e)),c.then?c=await c:c.async&&(i.push(c.async),c=ji),c!==ji&&s._targets&&s._targets.forEach(e=>r._enqueue(e)),++o}}catch(e){r._heap.clear(),l=e}if(r._input={},r._pulse=null,r.debug(`Pulse ${a}: ${o} operators`),l&&(r._postrun=[],r.error(l)),r._postrun.length){let e=r._postrun.sort((e,t)=>t.priority-e.priority);r._postrun=[];for(let t=0;t<e.length;++t)await Kr(r,e[t].callback)}return n&&await Kr(r,n),i.length&&Promise.all(i).then(e=>r.runAsync(null,()=>{e.forEach(e=>{try{e(r)}catch(e){r.error(e)}})})),r}async function Cee(e,t,n){for(;this._running;)await this._running;let r=()=>this._running=null;return(this._running=this.evaluate(e,t,n)).then(r,r),this._running}function wee(e,t,n){return this._pulse?qi(this):(this.evaluate(e,t,n),this)}function Tee(e,t,n){if(this._pulse||t)this._postrun.push({priority:n||0,callback:e});else try{e(this)}catch(e){this.error(e)}}function qi(e){return e.error(`Dataflow already running. Use runAsync() to chain invocations.`),e}function Eee(e,t){let n=e.stamp<this._clock;n&&(e.stamp=this._clock),(n||t)&&(e.qrank=e.rank,this._heap.push(e))}function Dee(e,t){let n=e.source,r=this._clock;return n&&N(n)?new Ki(this,r,n.map(e=>e.pulse),t):this._input[e.id]||Oee(this._pulse,n&&n.pulse)}function Oee(e,t){return t&&t.stamp===e.stamp?t:(e=e.fork(),t&&t!==ji&&(e.source=t.source),e)}var Ji={skip:!1,force:!1};function kee(e,t){let n=t||Ji;return this._pulse?this._enqueue(e):this._touched.add(e),n.skip&&e.skip(!0),this}function Aee(e,t,n){let r=n||Ji;return(e.set(t)||r.force)&&this.touch(e,r),this}function jee(e,t,n){this.touch(e,n||Ji);let r=new Hi(this,this._clock+ +!this._pulse),i=e.pulse&&e.pulse.source||[];return r.target=e,this._input[e.id]=t.pulse(r,i),this}function Mee(e){let t=[];return{clear:()=>t=[],size:()=>t.length,peek:()=>t[0],push:n=>(t.push(n),Yi(t,0,t.length-1,e)),pop:()=>{let n=t.pop(),r;return t.length?(r=t[0],t[0]=n,Nee(t,0,e)):r=n,r}}}function Yi(e,t,n,r){let i,a,o=e[n];for(;n>t;){if(a=n-1>>1,i=e[a],r(o,i)<0){e[n]=i,n=a;continue}break}return e[n]=o}function Nee(e,t,n){let r=t,i=e.length,a=e[t],o=(t<<1)+1,s;for(;o<i;)s=o+1,s<i&&n(e[o],e[s])>=0&&(o=s),e[t]=e[o],t=o,o=(t<<1)+1;return e[t]=a,Yi(e,r,t,n)}function Xi(){this.logger(Vn()),this.logLevel(1),this._clock=0,this._rank=0,this._locale=he();try{this._loader=te()}catch{}this._touched=Gr(fe),this._input={},this._pulse=null,this._heap=Mee((e,t)=>e.qrank-t.qrank),this._postrun=[]}function Zi(e){return function(){return this._log[e].apply(this,arguments)}}Xi.prototype={stamp(){return this._clock},loader(e){return arguments.length?(this._loader=e,this):this._loader},locale(e){return arguments.length?(this._locale=e,this):this._locale},logger(e){return arguments.length?(this._log=e,this):this._log},error:Zi(`error`),warn:Zi(`warn`),info:Zi(`info`),debug:Zi(`debug`),logLevel:Zi(`level`),cleanThreshold:1e4,add:pi,connect:mi,rank:ki,rerank:Ai,pulse:jee,touch:kee,update:Aee,changeset:ri,ingest:bi,parse:yi,preload:Si,request:xi,events:vi,on:Ti,evaluate:See,run:wee,runAsync:Cee,runAfter:Tee,_enqueue:Eee,_getPulse:Dee};function L(e,t){di.call(this,e,null,t)}F(L,di,{run(e){if(e.stamp<this.stamp)return e.StopPropagation;let t;return this.skip()?this.skip(!1):t=this.evaluate(e),t||=e,t.then?t=t.then(e=>this.pulse=e):t!==e.StopPropagation&&(this.pulse=t),t},evaluate(e){let t=this.marshall(e.stamp),n=this.transform(t,e);return t.clear(),n},transform(){}});var Qi={};function $i(e){let t=ea(e);return t&&t.Definition||null}function ea(e){return e&&=e.toLowerCase(),T(Qi,e)?Qi[e]:null}function*ta(e,t){if(t==null)for(let t of e)t!=null&&t!==``&&(t=+t)>=t&&(yield t);else{let n=-1;for(let r of e)r=t(r,++n,e),r!=null&&r!==``&&(r=+r)>=r&&(yield r)}}function na(e,t,n){let r=Float64Array.from(ta(e,n));return r.sort(Fe),t.map(e=>Pr(r,e))}function ra(e,t){return na(e,[.25,.5,.75],t)}function ia(e,t){let n=e.length,r=Er(e,t),i=ra(e,t),a=(i[2]-i[0])/1.34;return 1.06*(Math.min(r,a)||r||Math.abs(i[0])||1)*n**-.2}function aa(e){let t=e.maxbins||20,n=e.base||10,r=Math.log(n),i=e.divide||[5,2],a=e.extent[0],o=e.extent[1],s,c,l,u,d,f,p=e.span||o-a||Math.abs(a)||1;if(e.step)s=e.step;else if(e.steps){for(u=p/t,d=0,f=e.steps.length;d<f&&e.steps[d]<u;++d);s=e.steps[Math.max(0,d-1)]}else{for(c=Math.ceil(Math.log(t)/r),l=e.minstep||0,s=Math.max(l,n**+(Math.round(Math.log(p)/r)-c));Math.ceil(p/s)>t;)s*=n;for(d=0,f=i.length;d<f;++d)u=s/i[d],u>=l&&p/u<=t&&(s=u)}u=Math.log(s);let m=n**(-(u>=0?0:~~(-u/r)+1)-1);return(e.nice||e.nice===void 0)&&(u=Math.floor(a/s+m)*s,a=a<u?u-s:u,o=Math.ceil(o/s)*s),{start:a,stop:o===a?a+s:o,step:s}}var oa=Math.random;function sa(e){oa=e}function ca(e,t,n,r){if(!e.length)return[void 0,void 0];let i=Float64Array.from(ta(e,r)),a=i.length,o=t,s,c,l,u;for(l=0,u=Array(o);l<o;++l){for(s=0,c=0;c<a;++c)s+=i[~~(oa()*a)];u[l]=s/a}return u.sort(Fe),[Nr(u,n/2),Nr(u,1-n/2)]}function la(e,t,n,r){r||=(e=>e);let i=e.length,a=new Float64Array(i),o=0,s=1,c=r(e[0]),l=c,u=c+t,d;for(;s<i;++s){if(d=r(e[s]),d>=u){for(l=(c+l)/2;o<s;++o)a[o]=l;u=d+t,c=d}l=d}for(l=(c+l)/2;o<s;++o)a[o]=l;return n?ua(a,t+t/4):a}function ua(e,t){let n=e.length,r=0,i=1,a,o;for(;e[r]===e[i];)++i;for(;i<n;){for(a=i+1;e[i]===e[a];)++a;if(e[i]-e[i-1]<t){for(o=i+(r+a-i-i>>1);o<i;)e[o++]=e[i];for(;o>i;)e[o--]=e[r]}r=i,i=a}return e}function da(e){return function(){return e=(1103515245*e+12345)%2147483647,e/2147483647}}function fa(e,t){t??(t=e,e=0);let n,r,i,a={min(e){return arguments.length?(n=e||0,i=r-n,a):n},max(e){return arguments.length?(r=e||0,i=r-n,a):r},sample(){return n+Math.floor(i*oa())},pdf(e){return e===Math.floor(e)&&e>=n&&e<r?1/i:0},cdf(e){let t=Math.floor(e);return t<n?0:t>=r?1:(t-n+1)/i},icdf(e){return e>=0&&e<=1?n-1+Math.floor(e*i):NaN}};return a.min(e).max(t)}var pa=Math.sqrt(2*Math.PI),ma=Math.SQRT2,ha=NaN;function ga(e,t){e||=0,t??=1;let n=0,r=0,i,a;if(ha===ha)n=ha,ha=NaN;else{do n=oa()*2-1,r=oa()*2-1,i=n*n+r*r;while(i===0||i>1);a=Math.sqrt(-2*Math.log(i)/i),n*=a,ha=r*a}return e+n*t}function _a(e,t,n){n??=1;let r=(e-(t||0))/n;return Math.exp(-.5*r*r)/(n*pa)}function va(e,t,n){t||=0,n??=1;let r=(e-t)/n,i=Math.abs(r),a;if(i>37)a=0;else{let e=Math.exp(-i*i/2),t;i<7.07106781186547?(t=.0352624965998911*i+.700383064443688,t=t*i+6.37396220353165,t=t*i+33.912866078383,t=t*i+112.079291497871,t=t*i+221.213596169931,t=t*i+220.206867912376,a=e*t,t=.0883883476483184*i+1.75566716318264,t=t*i+16.064177579207,t=t*i+86.7807322029461,t=t*i+296.564248779674,t=t*i+637.333633378831,t=t*i+793.826512519948,t=t*i+440.413735824752,a/=t):(t=i+.65,t=i+4/t,t=i+3/t,t=i+2/t,t=i+1/t,a=e/t/2.506628274631)}return r>0?1-a:a}function ya(e,t,n){return e<0||e>1?NaN:(t||0)+(n??1)*ma*ba(2*e-1)}function ba(e){let t=-Math.log((1-e)*(1+e)),n;return t<6.25?(t-=3.125,n=-364441206401782e-35,n=-16850591381820166e-35+n*t,n=128584807152564e-32+n*t,n=11157877678025181e-33+n*t,n=-1333171662854621e-31+n*t,n=20972767875968562e-33+n*t,n=6637638134358324e-30+n*t,n=-4054566272975207e-29+n*t,n=-8151934197605472e-29+n*t,n=26335093153082323e-28+n*t,n=-12975133253453532e-27+n*t,n=-5415412054294628e-26+n*t,n=1.0512122733215323e-9+n*t,n=-4.112633980346984e-9+n*t,n=-2.9070369957882005e-8+n*t,n=4.2347877827932404e-7+n*t,n=-13654692000834679e-22+n*t,n=-13882523362786469e-21+n*t,n=.00018673420803405714+n*t,n=-.000740702534166267+n*t,n=-.006033670871430149+n*t,n=.24015818242558962+n*t,n=1.6536545626831027+n*t):t<16?(t=Math.sqrt(t)-3.25,n=2.2137376921775787e-9,n=9.075656193888539e-8+n*t,n=-2.7517406297064545e-7+n*t,n=1.8239629214389228e-8+n*t,n=15027403968909828e-22+n*t,n=-4013867526981546e-21+n*t,n=29234449089955446e-22+n*t,n=12475304481671779e-21+n*t,n=-47318229009055734e-21+n*t,n=6828485145957318e-20+n*t,n=24031110387097894e-21+n*t,n=-.0003550375203628475+n*t,n=.0009532893797373805+n*t,n=-.0016882755560235047+n*t,n=.002491442096107851+n*t,n=-.003751208507569241+n*t,n=.005370914553590064+n*t,n=1.0052589676941592+n*t,n=3.0838856104922208+n*t):Number.isFinite(t)?(t=Math.sqrt(t)-5,n=-27109920616438573e-27,n=-2555641816996525e-25+n*t,n=1.5076572693500548e-9+n*t,n=-3.789465440126737e-9+n*t,n=7.61570120807834e-9+n*t,n=-1.496002662714924e-8+n*t,n=2.914795345090108e-8+n*t,n=-6.771199775845234e-8+n*t,n=2.2900482228026655e-7+n*t,n=-9.9298272942317e-7+n*t,n=4526062597223154e-21+n*t,n=-1968177810553167e-20+n*t,n=7599527703001776e-20+n*t,n=-.00021503011930044477+n*t,n=-.00013871931833623122+n*t,n=1.0103004648645344+n*t,n=4.849906401408584+n*t):n=1/0,n*e}function xa(e,t){let n,r,i={mean(e){return arguments.length?(n=e||0,i):n},stdev(e){return arguments.length?(r=e??1,i):r},sample:()=>ga(n,r),pdf:e=>_a(e,n,r),cdf:e=>va(e,n,r),icdf:e=>ya(e,n,r)};return i.mean(e).stdev(t)}function Sa(e,t){let n=xa(),r=0,i={data(n){return arguments.length?(e=n,r=n?n.length:0,i.bandwidth(t)):e},bandwidth(n){return arguments.length?(t=n,!t&&e&&(t=ia(e)),i):t},sample(){return e[~~(oa()*r)]+t*n.sample()},pdf(i){let a=0,o=0;for(;o<r;++o)a+=n.pdf((i-e[o])/t);return a/t/r},cdf(i){let a=0,o=0;for(;o<r;++o)a+=n.cdf((i-e[o])/t);return a/r},icdf(){throw Error(`KDE icdf not supported.`)}};return i.data(e)}function Ca(e,t){return e||=0,t??=1,Math.exp(e+ga()*t)}function wa(e,t,n){if(e<=0)return 0;t||=0,n??=1;let r=(Math.log(e)-t)/n;return Math.exp(-.5*r*r)/(n*pa*e)}function Ta(e,t,n){return va(Math.log(e),t,n)}function Ea(e,t,n){return Math.exp(ya(e,t,n))}function Da(e,t){let n,r,i={mean(e){return arguments.length?(n=e||0,i):n},stdev(e){return arguments.length?(r=e??1,i):r},sample:()=>Ca(n,r),pdf:e=>wa(e,n,r),cdf:e=>Ta(e,n,r),icdf:e=>Ea(e,n,r)};return i.mean(e).stdev(t)}function Oa(e,t){let n=0,r;function i(e){let t=[],r=0,i;for(i=0;i<n;++i)r+=t[i]=e[i]==null?1:+e[i];for(i=0;i<n;++i)t[i]/=r;return t}let a={weights(e){return arguments.length?(r=i(t=e||[]),a):t},distributions(r){return arguments.length?(r?(n=r.length,e=r):(n=0,e=[]),a.weights(t)):e},sample(){let t=oa(),i=e[n-1],a=r[0],o=0;for(;o<n-1;a+=r[++o])if(t<a){i=e[o];break}return i.sample()},pdf(t){let i=0,a=0;for(;a<n;++a)i+=r[a]*e[a].pdf(t);return i},cdf(t){let i=0,a=0;for(;a<n;++a)i+=r[a]*e[a].cdf(t);return i},icdf(){throw Error(`Mixture icdf not supported.`)}};return a.distributions(e).weights(t)}function ka(e,t){return t??(t=e??1,e=0),e+(t-e)*oa()}function Aa(e,t,n){return n??(n=t??1,t=0),e>=t&&e<=n?1/(n-t):0}function ja(e,t,n){return n??(n=t??1,t=0),e<t?0:e>n?1:(e-t)/(n-t)}function Ma(e,t,n){return n??(n=t??1,t=0),e>=0&&e<=1?t+e*(n-t):NaN}function Na(e,t){let n,r,i={min(e){return arguments.length?(n=e||0,i):n},max(e){return arguments.length?(r=e??1,i):r},sample:()=>ka(n,r),pdf:e=>Aa(e,n,r),cdf:e=>ja(e,n,r),icdf:e=>Ma(e,n,r)};return t??(t=e??1,e=0),i.min(e).max(t)}function Pa(e,t,n){let r=0,i=0;for(let a of e){let e=n(a);t(a)==null||e==null||isNaN(e)||(r+=(e-r)/++i)}return{coef:[r],predict:()=>r,rSquared:0}}function Fa(e,t,n,r){let i=r-e*e,a=Math.abs(i)<1e-24?0:(n-e*t)/i;return[t-a*e,a]}function Ia(e,t,n,r){e=e.filter(e=>{let r=t(e),i=n(e);return r!=null&&(r=+r)>=r&&i!=null&&(i=+i)>=i}),r&&e.sort((e,n)=>t(e)-t(n));let i=e.length,a=new Float64Array(i),o=new Float64Array(i),s=0,c=0,l=0,u,d,f;for(f of e)a[s]=u=+t(f),o[s]=d=+n(f),++s,c+=(u-c)/s,l+=(d-l)/s;for(s=0;s<i;++s)a[s]-=c,o[s]-=l;return[a,o,c,l]}function La(e,t,n,r){let i=-1,a,o;for(let s of e)a=t(s),o=n(s),a!=null&&(a=+a)>=a&&o!=null&&(o=+o)>=o&&r(a,o,++i)}function Ra(e,t,n,r,i){let a=0,o=0;return La(e,t,n,(e,t)=>{let n=t-i(e),s=t-r;a+=n*n,o+=s*s}),1-a/o}function za(e,t,n){let r=0,i=0,a=0,o=0,s=0;La(e,t,n,(e,t)=>{++s,r+=(e-r)/s,i+=(t-i)/s,a+=(e*t-a)/s,o+=(e*e-o)/s});let c=Fa(r,i,a,o),l=e=>c[0]+c[1]*e;return{coef:c,predict:l,rSquared:Ra(e,t,n,i,l)}}function Ba(e,t,n){let r=0,i=0,a=0,o=0,s=0;La(e,t,n,(e,t)=>{++s,e=Math.log(e),r+=(e-r)/s,i+=(t-i)/s,a+=(e*t-a)/s,o+=(e*e-o)/s});let c=Fa(r,i,a,o),l=e=>c[0]+c[1]*Math.log(e);return{coef:c,predict:l,rSquared:Ra(e,t,n,i,l)}}function Va(e,t,n){let[r,i,a,o]=Ia(e,t,n),s=0,c=0,l=0,u=0,d=0,f,p,m;La(e,t,n,(e,t)=>{f=r[d++],p=Math.log(t),m=f*t,s+=(t*p-s)/d,c+=(m-c)/d,l+=(m*p-l)/d,u+=(f*m-u)/d});let[h,g]=Fa(c/o,s/o,l/o,u/o),_=e=>Math.exp(h+g*(e-a));return{coef:[Math.exp(h-g*a),g],predict:_,rSquared:Ra(e,t,n,o,_)}}function Ha(e,t,n){let r=0,i=0,a=0,o=0,s=0,c=0;La(e,t,n,(e,t)=>{let n=Math.log(e),l=Math.log(t);++c,r+=(n-r)/c,i+=(l-i)/c,a+=(n*l-a)/c,o+=(n*n-o)/c,s+=(t-s)/c});let l=Fa(r,i,a,o),u=e=>l[0]*e**+l[1];return l[0]=Math.exp(l[0]),{coef:l,predict:u,rSquared:Ra(e,t,n,s,u)}}function Ua(e,t,n){let[r,i,a,o]=Ia(e,t,n),s=r.length,c=0,l=0,u=0,d=0,f=0,p,m,h,g;for(p=0;p<s;)m=r[p],h=i[p++],g=m*m,c+=(g-c)/p,l+=(g*m-l)/p,u+=(g*g-u)/p,d+=(m*h-d)/p,f+=(g*h-f)/p;let _=u-c*c,v=c*_-l*l,y=(f*c-d*l)/v,b=(d*_-f*l)/v,x=-y*c,S=e=>(e-=a,y*e*e+b*e+x+o);return{coef:[x-b*a+y*a*a+o,b-2*y*a,y],predict:S,rSquared:Ra(e,t,n,o,S)}}function Wa(e,t,n,r){if(r===0)return Pa(e,t,n);if(r===1)return za(e,t,n);if(r===2)return Ua(e,t,n);let[i,a,o,s]=Ia(e,t,n),c=i.length,l=[],u=[],d=r+1,f,p,m,h,g;for(f=0;f<d;++f){for(m=0,h=0;m<c;++m)h+=i[m]**+f*a[m];for(l.push(h),g=new Float64Array(d),p=0;p<d;++p){for(m=0,h=0;m<c;++m)h+=i[m]**+(f+p);g[p]=h}u.push(g)}u.push(l);let _=Ka(u),v=e=>{e-=o;let t=s+_[0]+_[1]*e+_[2]*e*e;for(f=3;f<d;++f)t+=_[f]*e**+f;return t};return{coef:Ga(d,_,-o,s),predict:v,rSquared:Ra(e,t,n,s,v)}}function Ga(e,t,n,r){let i=Array(e),a,o,s,c;for(a=0;a<e;++a)i[a]=0;for(a=e-1;a>=0;--a)for(s=t[a],c=1,i[a]+=s,o=1;o<=a;++o)c*=(a+1-o)/o,i[a-o]+=s*n**+o*c;return i[0]+=r,i}function Ka(e){let t=e.length-1,n=[],r,i,a,o,s;for(r=0;r<t;++r){for(o=r,i=r+1;i<t;++i)Math.abs(e[r][i])>Math.abs(e[r][o])&&(o=i);for(a=r;a<t+1;++a)s=e[a][r],e[a][r]=e[a][o],e[a][o]=s;for(i=r+1;i<t;++i)for(a=t;a>=r;a--)e[a][i]-=e[a][r]*e[r][i]/e[r][r]}for(i=t-1;i>=0;--i){for(s=0,a=i+1;a<t;++a)s+=e[a][i]*n[a];n[i]=(e[t][i]-s)/e[i][i]}return n}var qa=2,Ja=1e-12;function Ya(e,t,n,r){let[i,a,o,s]=Ia(e,t,n,!0),c=i.length,l=Math.max(2,~~(r*c)),u=new Float64Array(c),d=new Float64Array(c),f=new Float64Array(c).fill(1);for(let e=-1;++e<=qa;){let t=[0,l-1];for(let e=0;e<c;++e){let n=i[e],r=t[0],o=t[1],s=n-i[r]>i[o]-n?r:o,c=0,l=0,p=0,m=0,h=0,g=1/Math.abs(i[s]-n||1);for(let e=r;e<=o;++e){let t=i[e],r=a[e],o=Xa(Math.abs(n-t)*g)*f[e],s=t*o;c+=o,l+=s,p+=r*o,m+=r*s,h+=t*s}let[_,v]=Fa(l/c,p/c,m/c,h/c);u[e]=_+v*n,d[e]=Math.abs(a[e]-u[e]),Za(i,e+1,t)}if(e===qa)break;let n=Ir(d);if(Math.abs(n)<Ja)break;for(let e=0,t,r;e<c;++e)t=d[e]/(6*n),f[e]=t>=1?Ja:(r=1-t*t)*r}return Qa(i,u,o,s)}function Xa(e){return(e=1-e*e*e)*e*e}function Za(e,t,n){let r=e[t],i=n[0],a=n[1]+1;if(!(a>=e.length))for(;t>i&&e[a]-r<=r-e[i];)n[0]=++i,n[1]=a,++a}function Qa(e,t,n,r){let i=e.length,a=[],o=0,s=0,c=[],l;for(;o<i;++o)l=e[o]+n,c[0]===l?c[1]+=(t[o]-c[1])/++s:(s=0,c[1]+=r,c=[l,t[o]],a.push(c));return c[1]+=r,a}var $a=.5*Math.PI/180;function eo(e,t,n,r){n||=25,r=Math.max(n,r||200);let i=t=>[t,e(t)],a=t[0],o=t[1],s=o-a,c=s/r,l=[i(a)],u=[];if(n===r){for(let e=1;e<r;++e)l.push(i(a+e/n*s));return l.push(i(o)),l}u.push(i(o));for(let e=n;--e>0;)u.push(i(a+e/n*s));let d=l[0],f=u[u.length-1],p=1/s,m=to(d[1],u);for(;f;){let e=i((d[0]+f[0])/2);e[0]-d[0]>=c&&no(d,e,f,p,m)>$a?u.push(e):(d=f,l.push(f),u.pop()),f=u[u.length-1]}return l}function to(e,t){let n=e,r=e,i=t.length;for(let e=0;e<i;++e){let i=t[e][1];i<n&&(n=i),i>r&&(r=i)}return 1/(r-n)}function no(e,t,n,r,i){let a=Math.atan2(i*(n[1]-e[1]),r*(n[0]-e[0])),o=Math.atan2(i*(t[1]-e[1]),r*(t[0]-e[0]));return Math.abs(a-o)}var ro=t({aggregate:()=>Co,bin:()=>To,collect:()=>Do,compare:()=>Oo,countpattern:()=>Ao,cross:()=>Mo,density:()=>zo,dotbin:()=>Ko,expression:()=>Jo,extent:()=>Xo,facet:()=>Qo,field:()=>$o,filter:()=>ts,flatten:()=>ns,fold:()=>rs,formula:()=>is,generate:()=>as,impute:()=>cs,joinaggregate:()=>fs,kde:()=>ps,key:()=>ms,load:()=>gs,lookup:()=>ys,multiextent:()=>bs,multivalues:()=>Ss,params:()=>ws,pivot:()=>Ts,prefacet:()=>ks,project:()=>As,proxy:()=>Ms,quantile:()=>Ns,relay:()=>Ps,sample:()=>Fs,sequence:()=>Is,sieve:()=>Ls,subflow:()=>Zo,timeunit:()=>Rs,tupleindex:()=>Bs,values:()=>Vs,window:()=>Gs});function io(e){return t=>{let n=e.length,r=1,i=String(e[0](t));for(;r<n;++r)i+=`|`+e[r](t);return i}}function ao(e){return!e||!e.length?function(){return``}:e.length===1?e[0]:io(e)}function oo(e,t,n){return n||e+(t?`_`+t:``)}var so=()=>{},co={init:so,add:so,rem:so,idx:0},lo={values:{init:e=>e.cell.store=!0,value:e=>e.cell.data.values(),idx:-1},count:{value:e=>e.cell.num},__count__:{value:e=>e.missing+e.valid},missing:{value:e=>e.missing},valid:{value:e=>e.valid},sum:{init:e=>e.sum=0,value:e=>e.valid?e.sum:void 0,add:(e,t)=>e.sum+=+t,rem:(e,t)=>e.sum-=t},product:{init:e=>e.product=1,value:e=>e.valid?e.product:void 0,add:(e,t)=>e.product*=t,rem:(e,t)=>e.product/=t},mean:{init:e=>e.mean=0,value:e=>e.valid?e.mean:void 0,add:(e,t)=>(e.mean_d=t-e.mean,e.mean+=e.mean_d/e.valid),rem:(e,t)=>(e.mean_d=t-e.mean,e.mean-=e.valid?e.mean_d/e.valid:e.mean)},average:{value:e=>e.valid?e.mean:void 0,req:[`mean`],idx:1},variance:{init:e=>e.dev=0,value:e=>e.valid>1?e.dev/(e.valid-1):void 0,add:(e,t)=>e.dev+=e.mean_d*(t-e.mean),rem:(e,t)=>e.dev-=e.mean_d*(t-e.mean),req:[`mean`],idx:1},variancep:{value:e=>e.valid>1?e.dev/e.valid:void 0,req:[`variance`],idx:2},stdev:{value:e=>e.valid>1?Math.sqrt(e.dev/(e.valid-1)):void 0,req:[`variance`],idx:2},stdevp:{value:e=>e.valid>1?Math.sqrt(e.dev/e.valid):void 0,req:[`variance`],idx:2},stderr:{value:e=>e.valid>1?Math.sqrt(e.dev/(e.valid*(e.valid-1))):void 0,req:[`variance`],idx:2},distinct:{value:e=>e.cell.data.distinct(e.get),req:[`values`],idx:3},ci0:{value:e=>e.cell.data.ci0(e.get),req:[`values`],idx:3},ci1:{value:e=>e.cell.data.ci1(e.get),req:[`values`],idx:3},median:{value:e=>e.cell.data.q2(e.get),req:[`values`],idx:3},q1:{value:e=>e.cell.data.q1(e.get),req:[`values`],idx:3},q3:{value:e=>e.cell.data.q3(e.get),req:[`values`],idx:3},min:{init:e=>e.min=void 0,value:e=>e.min=Number.isNaN(e.min)?e.cell.data.min(e.get):e.min,add:(e,t)=>{(t<e.min||e.min===void 0)&&(e.min=t)},rem:(e,t)=>{t<=e.min&&(e.min=NaN)},req:[`values`],idx:4},max:{init:e=>e.max=void 0,value:e=>e.max=Number.isNaN(e.max)?e.cell.data.max(e.get):e.max,add:(e,t)=>{(t>e.max||e.max===void 0)&&(e.max=t)},rem:(e,t)=>{t>=e.max&&(e.max=NaN)},req:[`values`],idx:4},argmin:{init:e=>e.argmin=void 0,value:e=>e.argmin||e.cell.data.argmin(e.get),add:(e,t,n)=>{t<e.min&&(e.argmin=n)},rem:(e,t)=>{t<=e.min&&(e.argmin=void 0)},req:[`min`,`values`],idx:3},argmax:{init:e=>e.argmax=void 0,value:e=>e.argmax||e.cell.data.argmax(e.get),add:(e,t,n)=>{t>e.max&&(e.argmax=n)},rem:(e,t)=>{t>=e.max&&(e.argmax=void 0)},req:[`max`,`values`],idx:3},exponential:{init:(e,t)=>{e.exp=0,e.exp_r=t},value:e=>e.valid?e.exp*(1-e.exp_r)/(1-e.exp_r**e.valid):void 0,add:(e,t)=>e.exp=e.exp_r*e.exp+t,rem:(e,t)=>e.exp=(e.exp-t/e.exp_r**(e.valid-1))/e.exp_r},exponentialb:{value:e=>e.valid?e.exp*(1-e.exp_r):void 0,req:[`exponential`],idx:1}},uo=Object.keys(lo).filter(e=>e!==`__count__`);function fo(e,t){return(n,r)=>D({name:e,aggregate_param:r,out:n||e},co,t)}[...uo,`__count__`].forEach(e=>{lo[e]=fo(e,lo[e])});function po(e,t,n){return lo[e](n,t)}function mo(e,t){return e.idx-t.idx}function ho(e){let t={};e.forEach(e=>t[e.name]=e);let n=e=>{e.req&&e.req.forEach(e=>{t[e]||n(t[e]=lo[e]())})};return e.forEach(n),Object.values(t).sort(mo)}function go(){this.valid=0,this.missing=0,this._ops.forEach(e=>e.aggregate_param==null?e.init(this):e.init(this,e.aggregate_param))}function _o(e,t){if(e==null||e===``){++this.missing;return}e===e&&(++this.valid,this._ops.forEach(n=>n.add(this,e,t)))}function vo(e,t){if(e==null||e===``){--this.missing;return}e===e&&(--this.valid,this._ops.forEach(n=>n.rem(this,e,t)))}function yo(e){return this._out.forEach(t=>e[t.out]=t.value(this)),e}function bo(e,t){let n=t||ne,r=ho(e),i=e.slice().sort(mo);function a(e){this._ops=r,this._out=i,this.cell=e,this.init()}return a.prototype.init=go,a.prototype.add=_o,a.prototype.rem=vo,a.prototype.set=yo,a.prototype.get=n,a.fields=e.map(e=>e.out),a}function xo(e){this._key=e?ge(e):I,this.reset()}var So=xo.prototype;So.reset=function(){this._add=[],this._rem=[],this._ext=null,this._get=null,this._q=null},So.add=function(e){this._add.push(e)},So.rem=function(e){this._rem.push(e)},So.values=function(){if(this._get=null,this._rem.length===0)return this._add;let e=this._add,t=this._rem,n=this._key,r=e.length,i=t.length,a=Array(r-i),o={},s,c,l;for(s=0;s<i;++s)o[n(t[s])]=1;for(s=0,c=0;s<r;++s)o[n(l=e[s])]?o[n(l)]=0:a[c++]=l;return this._rem=[],this._add=a},So.distinct=function(e){let t=this.values(),n={},r=t.length,i=0,a;for(;--r>=0;)a=e(t[r])+``,T(n,a)||(n[a]=1,++i);return i},So.extent=function(e){if(this._get!==e||!this._ext){let t=this.values(),n=dr(t,e);this._ext=[t[n[0]],t[n[1]]],this._get=e}return this._ext},So.argmin=function(e){return this.extent(e)[0]||{}},So.argmax=function(e){return this.extent(e)[1]||{}},So.min=function(e){let t=this.extent(e)[0];return t==null?void 0:e(t)},So.max=function(e){let t=this.extent(e)[1];return t==null?void 0:e(t)},So.quartile=function(e){return(this._get!==e||!this._q)&&(this._q=ra(this.values(),e),this._get=e),this._q},So.q1=function(e){return this.quartile(e)[0]},So.q2=function(e){return this.quartile(e)[1]},So.q3=function(e){return this.quartile(e)[2]},So.ci=function(e){return(this._get!==e||!this._ci)&&(this._ci=ca(this.values(),1e3,.05,e),this._get=e),this._ci},So.ci0=function(e){return this.ci(e)[0]},So.ci1=function(e){return this.ci(e)[1]};function Co(e){L.call(this,null,e),this._adds=[],this._mods=[],this._alen=0,this._mlen=0,this._drop=!0,this._cross=!1,this._dims=[],this._dnames=[],this._measures=[],this._countOnly=!1,this._counts=null,this._prev=null,this._inputs=null,this._outputs=null}Co.Definition={type:`Aggregate`,metadata:{generates:!0,changes:!0},params:[{name:`groupby`,type:`field`,array:!0},{name:`ops`,type:`enum`,array:!0,values:uo},{name:`aggregate_params`,type:`number`,null:!0,array:!0},{name:`fields`,type:`field`,null:!0,array:!0},{name:`as`,type:`string`,null:!0,array:!0},{name:`drop`,type:`boolean`,default:!0},{name:`cross`,type:`boolean`,default:!1},{name:`key`,type:`field`}]},F(Co,L,{transform(e,t){let n=this,r=t.fork(t.NO_SOURCE|t.NO_FIELDS),i=e.modified();return n.stamp=r.stamp,n.value&&(i||t.modified(n._inputs,!0))?(n._prev=n.value,n.value=i?n.init(e):Object.create(null),t.visit(t.SOURCE,e=>n.add(e))):(n.value=n.value||n.init(e),t.visit(t.REM,e=>n.rem(e)),t.visit(t.ADD,e=>n.add(e))),r.modifies(n._outputs),n._drop=e.drop!==!1,e.cross&&n._dims.length>1&&(n._drop=!1,n.cross()),t.clean()&&n._drop&&r.clean(!0).runAfter(()=>this.clean()),n.changes(r)},cross(){let e=this,t=e.value,n=e._dnames,r=n.map(()=>({})),i=n.length;function a(e){let t,a,o,s;for(t in e)for(o=e[t].tuple,a=0;a<i;++a)r[a][s=o[n[a]]]=s}a(e._prev),a(t);function o(a,s,c){let l=n[c],u=r[c++];for(let n in u){let r=a?a+`|`+n:n;s[l]=u[n],c<i?o(r,s,c):t[r]||e.cell(r,s)}}o(``,{},0)},init(e){let t=this._inputs=[],n=this._outputs=[],r={};function i(e){let n=k(Ce(e)),i=n.length,a=0,o;for(;a<i;++a)r[o=n[a]]||(r[o]=1,t.push(o))}this._dims=k(e.groupby),this._dnames=this._dims.map(e=>{let t=ve(e);return i(e),n.push(t),t}),this.cellkey=e.key?e.key:ao(this._dims),this._countOnly=!0,this._counts=[],this._measures=[];let a=e.fields||[null],o=e.ops||[`count`],s=e.aggregate_params||[null],c=e.as||[],l=a.length,u={},d,f,p,m,h,g,_;for(l!==o.length&&j(`Unmatched number of fields and aggregate ops.`),_=0;_<l;++_){if(d=a[_],f=o[_],p=s[_]||null,d==null&&f!==`count`&&j(`Null aggregate field specified.`),h=ve(d),g=oo(f,h,c[_]),n.push(g),f===`count`){this._counts.push(g);continue}m=u[h],m||(i(d),m=u[h]=[],m.field=d,this._measures.push(m)),f!==`count`&&(this._countOnly=!1),m.push(po(f,p,g))}return this._measures=this._measures.map(e=>bo(e,e.field)),Object.create(null)},cellkey:ao(),cell(e,t){let n=this.value[e];return n?n.num===0&&this._drop&&n.stamp<this.stamp?(n.stamp=this.stamp,this._adds[this._alen++]=n):n.stamp<this.stamp&&(n.stamp=this.stamp,this._mods[this._mlen++]=n):(n=this.value[e]=this.newcell(e,t),this._adds[this._alen++]=n),n},newcell(e,t){let n={key:e,num:0,agg:null,tuple:this.newtuple(t,this._prev&&this._prev[e]),stamp:this.stamp,store:!1};if(!this._countOnly){let e=this._measures,t=e.length;n.agg=Array(t);for(let r=0;r<t;++r)n.agg[r]=new e[r](n)}return n.store&&(n.data=new xo),n},newtuple(e,t){let n=this._dnames,r=this._dims,i=r.length,a={};for(let t=0;t<i;++t)a[n[t]]=r[t](e);return t?ei(t.tuple,a):Zr(a)},clean(){let e=this.value;for(let t in e)e[t].num===0&&delete e[t]},add(e){let t=this.cellkey(e),n=this.cell(t,e);if(n.num+=1,this._countOnly)return;n.store&&n.data.add(e);let r=n.agg;for(let t=0,n=r.length;t<n;++t)r[t].add(r[t].get(e),e)},rem(e){let t=this.cellkey(e),n=this.cell(t,e);if(--n.num,this._countOnly)return;n.store&&n.data.rem(e);let r=n.agg;for(let t=0,n=r.length;t<n;++t)r[t].rem(r[t].get(e),e)},celltuple(e){let t=e.tuple,n=this._counts;e.store&&e.data.values();for(let r=0,i=n.length;r<i;++r)t[n[r]]=e.num;if(!this._countOnly){let n=e.agg;for(let e=0,r=n.length;e<r;++e)n[e].set(t)}return t},changes(e){let t=this._adds,n=this._mods,r=this._prev,i=this._drop,a=e.add,o=e.rem,s=e.mod,c,l,u,d;if(r)for(l in r)c=r[l],(!i||c.num)&&o.push(c.tuple);for(u=0,d=this._alen;u<d;++u)a.push(this.celltuple(t[u])),t[u]=null;for(u=0,d=this._mlen;u<d;++u)c=n[u],(c.num===0&&i?o:s).push(this.celltuple(c)),n[u]=null;return this._alen=this._mlen=0,this._prev=null,e}});var wo=1e-14;function To(e){L.call(this,null,e)}To.Definition={type:`Bin`,metadata:{modifies:!0},params:[{name:`field`,type:`field`,required:!0},{name:`interval`,type:`boolean`,default:!0},{name:`anchor`,type:`number`},{name:`maxbins`,type:`number`,default:20},{name:`base`,type:`number`,default:10},{name:`divide`,type:`number`,array:!0,default:[5,2]},{name:`extent`,type:`number`,array:!0,length:2,required:!0},{name:`span`,type:`number`},{name:`step`,type:`number`},{name:`steps`,type:`number`,array:!0},{name:`minstep`,type:`number`,default:0},{name:`nice`,type:`boolean`,default:!0},{name:`name`,type:`string`},{name:`as`,type:`string`,array:!0,length:2,default:[`bin0`,`bin1`]}]},F(To,L,{transform(e,t){let n=e.interval!==!1,r=this._bins(e),i=r.start,a=r.step,o=e.as||[`bin0`,`bin1`],s=o[0],c=o[1],l;return e.modified()?(t=t.reflow(!0),l=t.SOURCE):l=t.modified(Ce(e.field))?t.ADD_MOD:t.ADD,t.visit(l,n?e=>{let t=r(e);e[s]=t,e[c]=t==null?null:i+a*(1+(t-i)/a)}:e=>e[s]=r(e)),t.modifies(n?o:s)},_bins(e){if(this.value&&!e.modified())return this.value;let t=e.field,n=aa(e),r=n.step,i=n.start,a=i+Math.ceil((n.stop-i)/r)*r,o,s;(o=e.anchor)!=null&&(s=o-(i+r*Math.floor((o-i)/r)),i+=s,a+=s);let c=function(e){let n=O(t(e));return n==null?null:n<i?-1/0:n>a?1/0:(n=Math.max(i,Math.min(n,a-r)),i+r*Math.floor(wo+(n-i)/r))};return c.start=i,c.stop=n.stop,c.step=r,this.value=ce(c,Ce(t),e.name||`bin_`+ve(t))}});function Eo(e,t,n){let r=e,i=t||[],a=n||[],o={},s=0;return{add:e=>a.push(e),remove:e=>o[r(e)]=++s,size:()=>i.length,data:(e,t)=>(s&&=(i=i.filter(e=>!o[r(e)]),o={},0),t&&e&&i.sort(e),a.length&&(i=e?br(e,i,a.sort(e)):i.concat(a),a=[]),i)}}function Do(e){L.call(this,[],e)}Do.Definition={type:`Collect`,metadata:{source:!0},params:[{name:`sort`,type:`compare`}]},F(Do,L,{transform(e,t){let n=t.fork(t.ALL),r=Eo(I,this.value,n.materialize(n.ADD).add),i=e.sort,a=t.changed()||i&&(e.modified(`sort`)||t.modified(i.fields));return n.visit(n.REM,r.remove),this.modified(a),this.value=n.source=r.data(ti(i),a),t.source&&t.source.root&&(this.value.root=t.source.root),n}});function Oo(e){di.call(this,null,ko,e)}F(Oo,di);function ko(e){return this.value&&!e.modified()?this.value:we(e.fields,e.orders)}function Ao(e){L.call(this,null,e)}Ao.Definition={type:`CountPattern`,metadata:{generates:!0,changes:!0},params:[{name:`field`,type:`field`,required:!0},{name:`case`,type:`enum`,values:[`upper`,`lower`,`mixed`],default:`mixed`},{name:`pattern`,type:`string`,default:`[\\w"]+`},{name:`stopwords`,type:`string`,default:``},{name:`as`,type:`string`,array:!0,length:2,default:[`text`,`count`]}]};function jo(e,t,n){switch(t){case`upper`:e=e.toUpperCase();break;case`lower`:e=e.toLowerCase()}return e.match(n)}F(Ao,L,{transform(e,t){let n=t=>n=>{for(var r=jo(s(n),e.case,a)||[],i,c=0,l=r.length;c<l;++c)o.test(i=r[c])||t(i)},r=this._parameterCheck(e,t),i=this._counts,a=this._match,o=this._stop,s=e.field,c=e.as||[`text`,`count`],l=n(e=>i[e]=1+(i[e]||0)),u=n(e=>--i[e]);return r?t.visit(t.SOURCE,l):(t.visit(t.ADD,l),t.visit(t.REM,u)),this._finish(t,c)},_parameterCheck(e,t){let n=!1;return(e.modified(`stopwords`)||!this._stop)&&(this._stop=RegExp(`^`+(e.stopwords||``)+`$`,`i`),n=!0),(e.modified(`pattern`)||!this._match)&&(this._match=new RegExp(e.pattern||`[\\w']+`,`g`),n=!0),(e.modified(`field`)||t.modified(e.field.fields))&&(n=!0),n&&(this._counts={}),n},_finish(e,t){let n=this._counts,r=this._tuples||={},i=t[0],a=t[1],o=e.fork(e.NO_SOURCE|e.NO_FIELDS),s,c,l;for(s in n)c=r[s],l=n[s]||0,!c&&l?(r[s]=c=Zr({}),c[i]=s,c[a]=l,o.add.push(c)):l===0?(c&&o.rem.push(c),n[s]=null,r[s]=null):c[a]!==l&&(c[a]=l,o.mod.push(c));return o.modifies(t)}});function Mo(e){L.call(this,null,e)}Mo.Definition={type:`Cross`,metadata:{generates:!0},params:[{name:`filter`,type:`expr`},{name:`as`,type:`string`,array:!0,length:2,default:[`a`,`b`]}]},F(Mo,L,{transform(e,t){let n=t.fork(t.NO_SOURCE),r=e.as||[`a`,`b`],i=r[0],a=r[1],o=!this.value||t.changed(t.ADD_REM)||e.modified(`as`)||e.modified(`filter`),s=this.value;return o?(s&&(n.rem=s),s=t.materialize(t.SOURCE).source,n.add=this.value=No(s,i,a,e.filter||De)):n.mod=s,n.source=this.value,n.modifies(r)}});function No(e,t,n,r){for(var i=[],a={},o=e.length,s=0,c,l;s<o;++s)for(a[t]=l=e[s],c=0;c<o;++c)a[n]=e[c],r(a)&&(i.push(Zr(a)),a={},a[t]=l);return i}var Po={kde:Sa,mixture:Oa,normal:xa,lognormal:Da,uniform:Na},Fo=`distributions`,Io=`function`,Lo=`field`;function Ro(e,t){let n=e[Io];T(Po,n)||j(`Unknown distribution function: `+n);let r=Po[n]();for(let n in e)n===Lo?r.data((e.from||t()).map(e[n])):n===Fo?r[n](e[n].map(e=>Ro(e,t))):typeof r[n]===Io&&r[n](e[n]);return r}function zo(e){L.call(this,null,e)}var Bo=[{key:{function:`normal`},params:[{name:`mean`,type:`number`,default:0},{name:`stdev`,type:`number`,default:1}]},{key:{function:`lognormal`},params:[{name:`mean`,type:`number`,default:0},{name:`stdev`,type:`number`,default:1}]},{key:{function:`uniform`},params:[{name:`min`,type:`number`,default:0},{name:`max`,type:`number`,default:1}]},{key:{function:`kde`},params:[{name:`field`,type:`field`,required:!0},{name:`from`,type:`data`},{name:`bandwidth`,type:`number`,default:0}]}],Vo={key:{function:`mixture`},params:[{name:`distributions`,type:`param`,array:!0,params:Bo},{name:`weights`,type:`number`,array:!0}]};zo.Definition={type:`Density`,metadata:{generates:!0},params:[{name:`extent`,type:`number`,array:!0,length:2},{name:`steps`,type:`number`},{name:`minsteps`,type:`number`,default:25},{name:`maxsteps`,type:`number`,default:200},{name:`method`,type:`string`,default:`pdf`,values:[`pdf`,`cdf`]},{name:`distribution`,type:`param`,params:Bo.concat(Vo)},{name:`as`,type:`string`,array:!0,default:[`value`,`density`]}]},F(zo,L,{transform(e,t){let n=t.fork(t.NO_SOURCE|t.NO_FIELDS);if(!this.value||t.changed()||e.modified()){let r=Ro(e.distribution,Ho(t)),i=e.steps||e.minsteps||25,a=e.steps||e.maxsteps||200,o=e.method||`pdf`;o!==`pdf`&&o!==`cdf`&&j(`Invalid density method: `+o),!e.extent&&!r.data&&j(`Missing density extent parameter.`),o=r[o];let s=e.as||[`value`,`density`],c=e.extent||ur(r.data()),l=eo(o,c,i,a).map(e=>{let t={};return t[s[0]]=e[0],t[s[1]]=e[1],Zr(t)});this.value&&(n.rem=this.value),this.value=n.add=n.source=l}return n}});function Ho(e){return()=>e.materialize(e.SOURCE).source}function Uo(e,t){return e?e.map((e,n)=>t[n]||ve(e)):null}function Wo(e,t,n){let r=[],i=e=>e(c),a,o,s,c,l,u;if(t==null)r.push(e.map(n));else for(a={},o=0,s=e.length;o<s;++o)c=e[o],l=t.map(i),u=a[l],u||(a[l]=u=[],u.dims=l,r.push(u)),u.push(n(c));return r}var Go=`bin`;function Ko(e){L.call(this,null,e)}Ko.Definition={type:`DotBin`,metadata:{modifies:!0},params:[{name:`field`,type:`field`,required:!0},{name:`groupby`,type:`field`,array:!0},{name:`step`,type:`number`},{name:`smooth`,type:`boolean`,default:!1},{name:`as`,type:`string`,default:Go}]};var qo=(e,t)=>g(ur(e,t))/30;F(Ko,L,{transform(e,t){if(this.value&&!(e.modified()||t.changed()))return t;let n=t.materialize(t.SOURCE).source,r=Wo(t.source,e.groupby,ne),i=e.smooth||!1,a=e.field,o=e.step||qo(n,a),s=ti((e,t)=>a(e)-a(t)),c=e.as||Go,l=r.length,u=1/0,d=-1/0,f=0,p;for(;f<l;++f){let e=r[f].sort(s);p=-1;for(let t of la(e,o,i,a))t<u&&(u=t),t>d&&(d=t),e[++p][c]=t}return this.value={start:u,stop:d,step:o},t.reflow(!0).modifies(c)}});function Jo(e){di.call(this,null,Yo,e),this.modified(!0)}F(Jo,di);function Yo(e){let t=e.expr;return this.value&&!e.modified(`expr`)?this.value:ce(n=>t(n,e),Ce(t),ve(t))}function Xo(e){L.call(this,[void 0,void 0],e)}Xo.Definition={type:`Extent`,metadata:{},params:[{name:`field`,type:`field`,required:!0}]},F(Xo,L,{transform(e,t){let n=this.value,r=e.field,i=t.changed()||t.modified(r.fields)||e.modified(`field`),a=n[0],o=n[1];if((i||a==null)&&(a=1/0,o=-1/0),t.visit(i?t.SOURCE:t.ADD,e=>{let t=O(r(e));t!=null&&(t<a&&(a=t),t>o&&(o=t))}),!Number.isFinite(a)||!Number.isFinite(o)){let e=ve(r);e&&=` for field "${e}"`,t.dataflow.warn(`Infinite extent${e}: [${a}, ${o}]`),a=o=void 0}this.value=[a,o]}});function Zo(e,t){di.call(this,e),this.parent=t,this.count=0}F(Zo,di,{connect(e){return this.detachSubflow=e.detachSubflow,this.targets().add(e),e.source=this},add(e){this.count+=1,this.value.add.push(e)},rem(e){--this.count,this.value.rem.push(e)},mod(e){this.value.mod.push(e)},init(e){this.value.init(e,e.NO_SOURCE)},evaluate(){return this.value}});function Qo(e){L.call(this,{},e),this._keys=pr();let t=this._targets=[];t.active=0,t.forEach=e=>{for(let n=0,r=t.active;n<r;++n)e(t[n],n,t)}}F(Qo,L,{activate(e){this._targets[this._targets.active++]=e},subflow(e,t,n,r){let i=this.value,a=T(i,e)&&i[e],o,s;return a?a.value.stamp<n.stamp&&(a.init(n),this.activate(a)):(s=r||(s=this._group[e])&&s.tuple,o=n.dataflow,a=new Zo(n.fork(n.NO_SOURCE),this),o.add(a).connect(t(o,e,s)),i[e]=a,this.activate(a)),a},clean(){let e=this.value,t=0;for(let n in e)if(e[n].count===0){let r=e[n].detachSubflow;r&&r(),delete e[n],++t}if(t){let e=this._targets.filter(e=>e&&e.count>0);this.initTargets(e)}},initTargets(e){let t=this._targets,n=t.length,r=e?e.length:0,i=0;for(;i<r;++i)t[i]=e[i];for(;i<n&&t[i]!=null;++i)t[i]=null;t.active=r},transform(e,t){let n=t.dataflow,r=e.key,i=e.subflow,a=this._keys,o=e.modified(`key`),s=e=>this.subflow(e,i,t);return this._group=e.group||{},this.initTargets(),t.visit(t.REM,e=>{let t=I(e),n=a.get(t);n!==void 0&&(a.delete(t),s(n).rem(e))}),t.visit(t.ADD,e=>{let t=r(e);a.set(I(e),t),s(t).add(e)}),o||t.modified(r.fields)?t.visit(t.MOD,e=>{let t=I(e),n=a.get(t),i=r(e);n===i?s(i).mod(e):(a.set(t,i),s(n).rem(e),s(i).add(e))}):t.changed(t.MOD)&&t.visit(t.MOD,e=>{s(a.get(I(e))).mod(e)}),o&&t.visit(t.REFLOW,e=>{let t=I(e),n=a.get(t),i=r(e);n!==i&&(a.set(t,i),s(n).rem(e),s(i).add(e))}),t.clean()?n.runAfter(()=>{this.clean(),a.clean()}):a.empty>n.cleanThreshold&&n.runAfter(a.clean),t}});function $o(e){di.call(this,null,es,e)}F($o,di);function es(e){return this.value&&!e.modified()?this.value:N(e.name)?k(e.name).map(e=>ge(e)):ge(e.name,e.as)}function ts(e){L.call(this,pr(),e)}ts.Definition={type:`Filter`,metadata:{changes:!0},params:[{name:`expr`,type:`expr`,required:!0}]},F(ts,L,{transform(e,t){let n=t.dataflow,r=this.value,i=t.fork(),a=i.add,o=i.rem,s=i.mod,c=e.expr,l=!0;t.visit(t.REM,e=>{let t=I(e);r.has(t)?r.delete(t):o.push(e)}),t.visit(t.ADD,t=>{c(t,e)?a.push(t):r.set(I(t),1)});function u(t){let n=I(t),i=c(t,e),u=r.get(n);i&&u?(r.delete(n),a.push(t)):!i&&!u?(r.set(n,1),o.push(t)):l&&i&&!u&&s.push(t)}return t.visit(t.MOD,u),e.modified()&&(l=!1,t.visit(t.REFLOW,u)),r.empty>n.cleanThreshold&&n.runAfter(r.clean),i}});function ns(e){L.call(this,[],e)}ns.Definition={type:`Flatten`,metadata:{generates:!0},params:[{name:`fields`,type:`field`,array:!0,required:!0},{name:`index`,type:`string`},{name:`as`,type:`string`,array:!0}]},F(ns,L,{transform(e,t){let n=t.fork(t.NO_SOURCE),r=e.fields,i=Uo(r,e.as||[]),a=e.index||null,o=i.length;return n.rem=this.value,t.visit(t.SOURCE,e=>{let t=r.map(t=>t(e)),s=t.reduce((e,t)=>Math.max(e,t.length),0),c=0,l,u;for(;c<s;++c){for(u=Qr(e),l=0;l<o;++l)u[i[l]]=t[l][c]??null;a&&(u[a]=c),n.add.push(u)}}),this.value=n.source=n.add,a&&n.modifies(a),n.modifies(i)}});function rs(e){L.call(this,[],e)}rs.Definition={type:`Fold`,metadata:{generates:!0},params:[{name:`fields`,type:`field`,array:!0,required:!0},{name:`as`,type:`string`,array:!0,length:2,default:[`key`,`value`]}]},F(rs,L,{transform(e,t){let n=t.fork(t.NO_SOURCE),r=e.fields,i=r.map(ve),a=e.as||[`key`,`value`],o=a[0],s=a[1],c=r.length;return n.rem=this.value,t.visit(t.SOURCE,e=>{for(let t=0,a;t<c;++t)a=Qr(e),a[o]=i[t],a[s]=r[t](e),n.add.push(a)}),this.value=n.source=n.add,n.modifies(a)}});function is(e){L.call(this,null,e)}is.Definition={type:`Formula`,metadata:{modifies:!0},params:[{name:`expr`,type:`expr`,required:!0},{name:`as`,type:`string`,required:!0},{name:`initonly`,type:`boolean`}]},F(is,L,{transform(e,t){let n=e.expr,r=e.as,i=e.modified(),a=e.initonly?t.ADD:i?t.SOURCE:t.modified(n.fields)||t.modified(r)?t.ADD_MOD:t.ADD;return i&&(t=t.materialize().reflow(!0)),e.initonly||t.modifies(r),t.visit(a,t=>t[r]=n(t,e))}});function as(e){L.call(this,[],e)}F(as,L,{transform(e,t){let n=t.fork(t.ALL),r=e.generator,i=this.value,a=e.size-i.length,o,s,c;if(a>0){for(o=[];--a>=0;)o.push(c=Zr(r(e))),i.push(c);n.add=n.add.length?n.materialize(n.ADD).add.concat(o):o}else s=i.slice(0,-a),n.rem=n.rem.length?n.materialize(n.REM).rem.concat(s):s,i=i.slice(-a);return n.source=this.value=i,n}});var os={value:`value`,median:Ir,mean:Fr,min:it,max:ot},ss=[];function cs(e){L.call(this,[],e)}cs.Definition={type:`Impute`,metadata:{changes:!0},params:[{name:`field`,type:`field`,required:!0},{name:`key`,type:`field`,required:!0},{name:`keyvals`,array:!0},{name:`groupby`,type:`field`,array:!0},{name:`method`,type:`enum`,default:`value`,values:[`value`,`mean`,`median`,`max`,`min`]},{name:`value`,default:0}]};function ls(e){var t=e.method||os.value,n;if(os[t]==null)j(`Unrecognized imputation method: `+t);else if(t===os.value)return n=e.value===void 0?0:e.value,()=>n;else return os[t]}function us(e){let t=e.field;return e=>e?t(e):NaN}F(cs,L,{transform(e,t){var n=t.fork(t.ALL),r=ls(e),i=us(e),a=ve(e.field),o=ve(e.key),s=(e.groupby||[]).map(ve),c=ds(t.source,e.groupby,e.key,e.keyvals),l=[],u=this.value,d=c.domain.length,f,p,m,h,g,_,v,y,b,x;for(g=0,y=c.length;g<y;++g)for(f=c[g],m=f.values,p=NaN,v=0;v<d;++v)if(f[v]==null){for(h=c.domain[v],x={_impute:!0},_=0,b=m.length;_<b;++_)x[s[_]]=m[_];x[o]=h,x[a]=Number.isNaN(p)?p=r(f,i):p,l.push(Zr(x))}return l.length&&(n.add=n.materialize(n.ADD).add.concat(l)),u.length&&(n.rem=n.materialize(n.REM).rem.concat(u)),this.value=l,n}});function ds(e,t,n,r){var i=e=>e(g),a=[],o=r?r.slice():[],s={},c={},l,u,d,f,p,m,h,g;for(o.forEach((e,t)=>s[e]=t+1),f=0,h=e.length;f<h;++f)g=e[f],m=n(g),p=s[m]||(s[m]=o.push(m)),u=(l=t?t.map(i):ss)+``,(d=c[u])||(d=c[u]=[],a.push(d),d.values=l),d[p-1]=g;return a.domain=o,a}function fs(e){Co.call(this,e)}fs.Definition={type:`JoinAggregate`,metadata:{modifies:!0},params:[{name:`groupby`,type:`field`,array:!0},{name:`fields`,type:`field`,null:!0,array:!0},{name:`ops`,type:`enum`,array:!0,values:uo},{name:`as`,type:`string`,null:!0,array:!0},{name:`key`,type:`field`}]},F(fs,Co,{transform(e,t){let n=this,r=e.modified(),i;return n.value&&(r||t.modified(n._inputs,!0))?(i=n.value=r?n.init(e):{},t.visit(t.SOURCE,e=>n.add(e))):(i=n.value=n.value||this.init(e),t.visit(t.REM,e=>n.rem(e)),t.visit(t.ADD,e=>n.add(e))),n.changes(),t.visit(t.SOURCE,e=>{D(e,i[n.cellkey(e)].tuple)}),t.reflow(r).modifies(this._outputs)},changes(){let e=this._adds,t=this._mods,n,r;for(n=0,r=this._alen;n<r;++n)this.celltuple(e[n]),e[n]=null;for(n=0,r=this._mlen;n<r;++n)this.celltuple(t[n]),t[n]=null;this._alen=this._mlen=0}});function ps(e){L.call(this,null,e)}ps.Definition={type:`KDE`,metadata:{generates:!0},params:[{name:`groupby`,type:`field`,array:!0},{name:`field`,type:`field`,required:!0},{name:`cumulative`,type:`boolean`,default:!1},{name:`counts`,type:`boolean`,default:!1},{name:`bandwidth`,type:`number`,default:0},{name:`extent`,type:`number`,array:!0,length:2},{name:`resolve`,type:`enum`,values:[`shared`,`independent`],default:`independent`},{name:`steps`,type:`number`},{name:`minsteps`,type:`number`,default:25},{name:`maxsteps`,type:`number`,default:200},{name:`as`,type:`string`,array:!0,default:[`value`,`density`]}]},F(ps,L,{transform(e,t){let n=t.fork(t.NO_SOURCE|t.NO_FIELDS);if(!this.value||t.changed()||e.modified()){let r=t.materialize(t.SOURCE).source,i=Wo(r,e.groupby,e.field),a=(e.groupby||[]).map(ve),o=e.bandwidth,s=e.cumulative?`cdf`:`pdf`,c=e.as||[`value`,`density`],l=[],u=e.extent,d=e.steps||e.minsteps||25,f=e.steps||e.maxsteps||200;s!==`pdf`&&s!==`cdf`&&j(`Invalid density method: `+s),e.resolve===`shared`&&(u||=ur(r,e.field),d=f=e.steps||f),i.forEach(t=>{let n=Sa(t,o)[s],r=e.counts?t.length:1;eo(n,u||ur(t),d,f).forEach(e=>{let n={};for(let e=0;e<a.length;++e)n[a[e]]=t.dims[e];n[c[0]]=e[0],n[c[1]]=e[1]*r,l.push(Zr(n))})}),this.value&&(n.rem=this.value),this.value=n.add=n.source=l}return n}});function ms(e){di.call(this,null,hs,e)}F(ms,di);function hs(e){return this.value&&!e.modified()?this.value:S(e.fields,e.flat)}function gs(e){L.call(this,[],e),this._pending=null}F(gs,L,{transform(e,t){let n=t.dataflow;return this._pending?vs(this,t,this._pending):_s(e)?t.StopPropagation:e.values?vs(this,t,n.parse(e.values,e.format)):e.async?{async:n.request(e.url,e.format).then(e=>(this._pending=k(e.data),e=>e.touch(this)))}:n.request(e.url,e.format).then(e=>vs(this,t,k(e.data)))}});function _s(e){return e.modified(`async`)&&!(e.modified(`values`)||e.modified(`url`)||e.modified(`format`))}function vs(e,t,n){n.forEach(Zr);let r=t.fork(t.NO_FIELDS&t.NO_SOURCE);return r.rem=e.value,e.value=r.source=r.add=n,e._pending=null,r.rem.length&&r.clean(!0),r}function ys(e){L.call(this,{},e)}ys.Definition={type:`Lookup`,metadata:{modifies:!0},params:[{name:`index`,type:`index`,params:[{name:`from`,type:`data`,required:!0},{name:`key`,type:`field`,required:!0}]},{name:`values`,type:`field`,array:!0},{name:`fields`,type:`field`,array:!0,required:!0},{name:`as`,type:`string`,array:!0},{name:`default`,default:null}]},F(ys,L,{transform(e,t){let n=e.fields,r=e.index,i=e.values,a=e.default==null?null:e.default,o=e.modified(),s=n.length,c=o?t.SOURCE:t.ADD,l=t,u=e.as,d,f,p;return i?(f=i.length,s>1&&!u&&j(`Multi-field lookup requires explicit "as" parameter.`),u&&u.length!==s*f&&j(`The "as" parameter has too few output field names.`),u||=i.map(ve),d=function(e){for(var t=0,o=0,c,l;t<s;++t)if(l=r.get(n[t](e)),l==null)for(c=0;c<f;++c,++o)e[u[o]]=a;else for(c=0;c<f;++c,++o)e[u[o]]=i[c](l)}):(u||j(`Missing output field names.`),d=function(e){for(var t=0,i;t<s;++t)i=r.get(n[t](e)),e[u[t]]=i??a}),o?l=t.reflow(!0):(p=n.some(e=>t.modified(e.fields)),c|=p?t.MOD:0),t.visit(c,d),l.modifies(u)}});function bs(e){di.call(this,null,xs,e)}F(bs,di);function xs(e){if(this.value&&!e.modified())return this.value;let t=e.extents,n=t.length,r=1/0,i=-1/0,a,o;for(a=0;a<n;++a)o=t[a],o[0]<r&&(r=o[0]),o[1]>i&&(i=o[1]);return[r,i]}function Ss(e){di.call(this,null,Cs,e)}F(Ss,di);function Cs(e){return this.value&&!e.modified()?this.value:e.values.reduce((e,t)=>e.concat(t),[])}function ws(e){L.call(this,null,e)}F(ws,L,{transform(e,t){return this.modified(e.modified()),this.value=e,t.fork(t.NO_SOURCE|t.NO_FIELDS)}});function Ts(e){Co.call(this,e)}Ts.Definition={type:`Pivot`,metadata:{generates:!0,changes:!0},params:[{name:`groupby`,type:`field`,array:!0},{name:`field`,type:`field`,required:!0},{name:`value`,type:`field`,required:!0},{name:`op`,type:`enum`,values:uo,default:`sum`},{name:`limit`,type:`number`,default:0},{name:`key`,type:`field`}]},F(Ts,Co,{_transform:Co.prototype.transform,transform(e,t){return this._transform(Es(e,t),t)}});function Es(e,t){let n=e.field,r=e.value,i=(e.op===`count`?`__count__`:e.op)||`sum`,a=Ce(n).concat(Ce(r)),o=Os(n,e.limit||0,t);return t.changed()&&e.set(`__pivot__`,null,null,!0),{key:e.key,groupby:e.groupby,ops:o.map(()=>i),fields:o.map(e=>Ds(e,n,r,a)),as:o.map(e=>e+``),modified:e.modified.bind(e)}}function Ds(e,t,n,r){return ce(r=>t(r)===e?n(r):NaN,r,e+``)}function Os(e,t,n){let r={},i=[];return n.visit(n.SOURCE,t=>{let n=e(t);r[n]||(r[n]=1,i.push(n))}),i.sort(h),t?i.slice(0,t):i}function ks(e){Qo.call(this,e)}F(ks,Qo,{transform(e,t){let n=e.subflow,r=e.field,i=e=>this.subflow(I(e),n,t,e);return(e.modified(`field`)||r&&t.modified(Ce(r)))&&j(`PreFacet does not support field modification.`),this.initTargets(),r?(t.visit(t.MOD,e=>{let t=i(e);r(e).forEach(e=>t.mod(e))}),t.visit(t.ADD,e=>{let t=i(e);r(e).forEach(e=>t.add(Zr(e)))}),t.visit(t.REM,e=>{let t=i(e);r(e).forEach(e=>t.rem(e))})):(t.visit(t.MOD,e=>i(e).mod(e)),t.visit(t.ADD,e=>i(e).add(e)),t.visit(t.REM,e=>i(e).rem(e))),t.clean()&&t.runAfter(()=>this.clean()),t}});function As(e){L.call(this,null,e)}As.Definition={type:`Project`,metadata:{generates:!0,changes:!0},params:[{name:`fields`,type:`field`,array:!0},{name:`as`,type:`string`,null:!0,array:!0}]},F(As,L,{transform(e,t){let n=t.fork(t.NO_SOURCE),r=e.fields,i=Uo(e.fields,e.as||[]),a=r?(e,t)=>js(e,t,r,i):$r,o;return this.value?o=this.value:(t=t.addAll(),o=this.value={}),t.visit(t.REM,e=>{let t=I(e);n.rem.push(o[t]),o[t]=null}),t.visit(t.ADD,e=>{let t=a(e,Zr({}));o[I(e)]=t,n.add.push(t)}),t.visit(t.MOD,e=>{n.mod.push(a(e,o[I(e)]))}),n}});function js(e,t,n,r){for(let i=0,a=n.length;i<a;++i)t[r[i]]=n[i](e);return t}function Ms(e){L.call(this,null,e)}F(Ms,L,{transform(e,t){return this.value=e.value,e.modified(`value`)?t.fork(t.NO_SOURCE|t.NO_FIELDS):t.StopPropagation}});function Ns(e){L.call(this,null,e)}Ns.Definition={type:`Quantile`,metadata:{generates:!0,changes:!0},params:[{name:`groupby`,type:`field`,array:!0},{name:`field`,type:`field`,required:!0},{name:`probs`,type:`number`,array:!0},{name:`step`,type:`number`,default:.01},{name:`as`,type:`string`,array:!0,default:[`prob`,`value`]}]},F(Ns,L,{transform(e,t){let n=t.fork(t.NO_SOURCE|t.NO_FIELDS),r=e.as||[`prob`,`value`];if(this.value&&!e.modified()&&!t.changed())return n.source=this.value,n;let i=t.materialize(t.SOURCE).source,a=Wo(i,e.groupby,e.field),o=(e.groupby||[]).map(ve),s=[],c=e.step||.01,l=e.probs||ct(c/2,.99999999999999,c),u=l.length;return a.forEach(e=>{let t=na(e,l);for(let n=0;n<u;++n){let i={};for(let t=0;t<o.length;++t)i[o[t]]=e.dims[t];i[r[0]]=l[n],i[r[1]]=t[n],s.push(Zr(i))}}),this.value&&(n.rem=this.value),this.value=n.add=n.source=s,n}});function Ps(e){L.call(this,null,e)}F(Ps,L,{transform(e,t){let n,r;return this.value?r=this.value:(n=t=t.addAll(),r=this.value={}),e.derive&&(n=t.fork(t.NO_SOURCE),t.visit(t.REM,e=>{let t=I(e);n.rem.push(r[t]),r[t]=null}),t.visit(t.ADD,e=>{let t=Qr(e);r[I(e)]=t,n.add.push(t)}),t.visit(t.MOD,e=>{let t=r[I(e)];for(let r in e)t[r]=e[r],n.modifies(r);n.mod.push(t)})),n}});function Fs(e){L.call(this,[],e),this.count=0}Fs.Definition={type:`Sample`,metadata:{},params:[{name:`size`,type:`number`,default:1e3}]},F(Fs,L,{transform(e,t){let n=t.fork(t.NO_SOURCE),r=e.modified(`size`),i=e.size,a=this.value.reduce((e,t)=>(e[I(t)]=1,e),{}),o=this.value,s=this.count,c=0;function l(e){let t,r;o.length<i?o.push(e):(r=~~((s+1)*oa()),r<o.length&&r>=c&&(t=o[r],a[I(t)]&&n.rem.push(t),o[r]=e)),++s}if(t.rem.length&&(t.visit(t.REM,e=>{let t=I(e);a[t]&&(a[t]=-1,n.rem.push(e)),--s}),o=o.filter(e=>a[I(e)]!==-1)),(t.rem.length||r)&&o.length<i&&t.source&&(c=s=o.length,t.visit(t.SOURCE,e=>{a[I(e)]||l(e)}),c=-1),r&&o.length>i){let e=o.length-i;for(let t=0;t<e;++t)a[I(o[t])]=-1,n.rem.push(o[t]);o=o.slice(e)}return t.mod.length&&t.visit(t.MOD,e=>{a[I(e)]&&n.mod.push(e)}),t.add.length&&t.visit(t.ADD,l),(t.add.length||c<0)&&(n.add=o.filter(e=>!a[I(e)])),this.count=s,this.value=n.source=o,n}});function Is(e){L.call(this,null,e)}Is.Definition={type:`Sequence`,metadata:{generates:!0,changes:!0},params:[{name:`start`,type:`number`,required:!0},{name:`stop`,type:`number`,required:!0},{name:`step`,type:`number`,default:1},{name:`as`,type:`string`,default:`data`}]},F(Is,L,{transform(e,t){if(this.value&&!e.modified())return;let n=t.materialize().fork(t.MOD),r=e.as||`data`;return n.rem=this.value?t.rem.concat(this.value):t.rem,this.value=ct(e.start,e.stop,e.step||1).map(e=>{let t={};return t[r]=e,Zr(t)}),n.add=t.add.concat(this.value),n}});function Ls(e){L.call(this,null,e),this.modified(!0)}F(Ls,L,{transform(e,t){return this.value=t.source,t.changed()?t.fork(t.NO_SOURCE|t.NO_FIELDS):t.StopPropagation}});function Rs(e){L.call(this,null,e)}var zs=[`unit0`,`unit1`];Rs.Definition={type:`TimeUnit`,metadata:{modifies:!0},params:[{name:`field`,type:`field`,required:!0},{name:`interval`,type:`boolean`,default:!0},{name:`units`,type:`enum`,values:_e,array:!0},{name:`step`,type:`number`,default:1},{name:`maxbins`,type:`number`,default:40},{name:`extent`,type:`date`,array:!0},{name:`timezone`,type:`enum`,default:`local`,values:[`local`,`utc`]},{name:`as`,type:`string`,array:!0,length:2,default:zs}]},F(Rs,L,{transform(e,t){let n=e.field,r=e.interval!==!1,i=e.timezone===`utc`,a=this._floor(e,t),o=(i?w:Ne)(a.unit).offset,s=e.as||zs,c=s[0],l=s[1],u=a.step,d=a.start||1/0,f=a.stop||-1/0,p=t.ADD;return(e.modified()||t.changed(t.REM)||t.modified(Ce(n)))&&(t=t.reflow(!0),p=t.SOURCE,d=1/0,f=-1/0),t.visit(p,e=>{let t=n(e),i,s;t==null?(e[c]=null,r&&(e[l]=null)):(e[c]=i=s=a(t),r&&(e[l]=s=o(i,u)),i<d&&(d=i),s>f&&(f=s))}),a.start=d,a.stop=f,t.modifies(r?s:c)},_floor(e,t){let n=e.timezone===`utc`,{units:r,step:i}=e.units?{units:e.units,step:e.step||1}:ue({extent:e.extent||ur(t.materialize(t.SOURCE).source,e.field),maxbins:e.maxbins}),a=s(r),o=this.value||{},c=(n?je:Ae)(a,i);return c.unit=A(a),c.units=a,c.step=i,c.start=o.start,c.stop=o.stop,this.value=c}});function Bs(e){L.call(this,pr(),e)}F(Bs,L,{transform(e,t){let n=t.dataflow,r=e.field,i=this.value,a=e=>i.set(r(e),e),o=!0;return e.modified(`field`)||t.modified(r.fields)?(i.clear(),t.visit(t.SOURCE,a)):t.changed()?(t.visit(t.REM,e=>i.delete(r(e))),t.visit(t.ADD,a)):o=!1,this.modified(o),i.empty>n.cleanThreshold&&n.runAfter(i.clean),t.fork()}});function Vs(e){L.call(this,null,e)}F(Vs,L,{transform(e,t){(!this.value||e.modified(`field`)||e.modified(`sort`)||t.changed()||e.sort&&t.modified(e.sort.fields))&&(this.value=(e.sort?t.source.slice().sort(ti(e.sort)):t.source).map(e.field))}});function Pee(e,t,n,r){let i=Hs[e](t,n);return{init:i.init||ae,update:function(e,t){t[r]=i.next(e)}}}var Hs={row_number:function(){return{next:e=>e.index+1}},rank:function(){let e;return{init:()=>e=1,next:t=>{let n=t.index,r=t.data;return n&&t.compare(r[n-1],r[n])?e=n+1:e}}},dense_rank:function(){let e;return{init:()=>e=1,next:t=>{let n=t.index,r=t.data;return n&&t.compare(r[n-1],r[n])?++e:e}}},percent_rank:function(){let e=Hs.rank(),t=e.next;return{init:e.init,next:e=>(t(e)-1)/(e.data.length-1)}},cume_dist:function(){let e;return{init:()=>e=0,next:t=>{let n=t.data,r=t.compare,i=t.index;if(e<i){for(;i+1<n.length&&!r(n[i],n[i+1]);)++i;e=i}return(1+e)/n.length}}},ntile:function(e,t){t=+t,t>0||j(`ntile num must be greater than zero.`);let n=Hs.cume_dist(),r=n.next;return{init:n.init,next:e=>Math.ceil(t*r(e))}},lag:function(e,t){return t=+t||1,{next:n=>{let r=n.index-t;return r>=0?e(n.data[r]):null}}},lead:function(e,t){return t=+t||1,{next:n=>{let r=n.index+t,i=n.data;return r<i.length?e(i[r]):null}}},first_value:function(e){return{next:t=>e(t.data[t.i0])}},last_value:function(e){return{next:t=>e(t.data[t.i1-1])}},nth_value:function(e,t){return t=+t,t>0||j(`nth_value nth must be greater than zero.`),{next:n=>{let r=n.i0+(t-1);return r<n.i1?e(n.data[r]):null}}},prev_value:function(e){let t;return{init:()=>t=null,next:n=>{let r=e(n.data[n.index]);return r==null?t:t=r}}},next_value:function(e){let t,n;return{init:()=>(t=null,n=-1),next:r=>{let i=r.data;return r.index<=n?t:(n=Fee(e,i,r.index))<0?(n=i.length,t=null):t=e(i[n])}}}};function Fee(e,t,n){for(let r=t.length;n<r;++n)if(e(t[n])!=null)return n;return-1}var Iee=Object.keys(Hs);function Us(e){let t=k(e.ops),n=k(e.fields),r=k(e.params),i=k(e.aggregate_params),a=k(e.as),o=this.outputs=[],s=this.windows=[],c={},l={},u=[],d=[],f=!0;function p(e){k(Ce(e)).forEach(e=>c[e]=1)}p(e.sort),t.forEach((e,t)=>{let c=n[t],m=r[t],h=i[t]||null,g=ve(c),_=oo(e,g,a[t]);if(p(c),o.push(_),T(Hs,e))s.push(Pee(e,c,m,_));else{if(c==null&&e!==`count`&&j(`Null aggregate field specified.`),e===`count`){u.push(_);return}f=!1;let t=l[g];t||(t=l[g]=[],t.field=c,d.push(t)),t.push(po(e,h,_))}}),(u.length||d.length)&&(this.cell=Lee(d,u,f)),this.inputs=Object.keys(c)}var Ws=Us.prototype;Ws.init=function(){this.windows.forEach(e=>e.init()),this.cell&&this.cell.init()},Ws.update=function(e,t){let n=this.cell,r=this.windows,i=e.data,a=r&&r.length,o;if(n){for(o=e.p0;o<e.i0;++o)n.rem(i[o]);for(o=e.p1;o<e.i1;++o)n.add(i[o]);n.set(t)}for(o=0;o<a;++o)r[o].update(e,t)};function Lee(e,t,n){e=e.map(e=>bo(e,e.field));let r={num:0,agg:null,store:!1,count:t};if(!n)for(var i=e.length,a=r.agg=Array(i),o=0;o<i;++o)a[o]=new e[o](r);if(r.store)var s=r.data=new xo;return r.add=function(e){if(r.num+=1,!n){s&&s.add(e);for(let t=0;t<i;++t)a[t].add(a[t].get(e),e)}},r.rem=function(e){if(--r.num,!n){s&&s.rem(e);for(let t=0;t<i;++t)a[t].rem(a[t].get(e),e)}},r.set=function(e){let i,o;for(s&&s.values(),i=0,o=t.length;i<o;++i)e[t[i]]=r.num;if(!n)for(i=0,o=a.length;i<o;++i)a[i].set(e)},r.init=function(){r.num=0,s&&s.reset();for(let e=0;e<i;++e)a[e].init()},r}function Gs(e){L.call(this,{},e),this._mlen=0,this._mods=[]}Gs.Definition={type:`Window`,metadata:{modifies:!0},params:[{name:`sort`,type:`compare`},{name:`groupby`,type:`field`,array:!0},{name:`ops`,type:`enum`,array:!0,values:Iee.concat(uo)},{name:`params`,type:`number`,null:!0,array:!0},{name:`aggregate_params`,type:`number`,null:!0,array:!0},{name:`fields`,type:`field`,null:!0,array:!0},{name:`as`,type:`string`,null:!0,array:!0},{name:`frame`,type:`number`,null:!0,array:!0,length:2,default:[null,0]},{name:`ignorePeers`,type:`boolean`,default:!1}]},F(Gs,L,{transform(e,t){this.stamp=t.stamp;let n=e.modified(),r=ti(e.sort),i=ao(e.groupby),a=e=>this.group(i(e)),o=this.state;(!o||n)&&(o=this.state=new Us(e)),n||t.modified(o.inputs)?(this.value={},t.visit(t.SOURCE,e=>a(e).add(e))):(t.visit(t.REM,e=>a(e).remove(e)),t.visit(t.ADD,e=>a(e).add(e)));for(let t=0,n=this._mlen;t<n;++t)Ree(this._mods[t],o,r,e);return this._mlen=0,this._mods=[],t.reflow(n).modifies(o.outputs)},group(e){let t=this.value[e];return t||(t=this.value[e]=Eo(I),t.stamp=-1),t.stamp<this.stamp&&(t.stamp=this.stamp,this._mods[this._mlen++]=t),t}});function Ree(e,t,n,r){let i=r.sort,a=i&&!r.ignorePeers,o=r.frame||[null,0],s=e.data(n),c=s.length,l=a?Le(i):null,u={i0:0,i1:0,p0:0,p1:0,index:0,data:s,compare:i||d(-1)};t.init();for(let e=0;e<c;++e)zee(u,o,e,c),a&&Bee(u,l),t.update(u,s[e])}function zee(e,t,n,r){e.p0=e.i0,e.p1=e.i1,e.i0=t[0]==null?0:Math.max(0,n-Math.abs(t[0])),e.i1=t[1]==null?r:Math.min(r,n+Math.abs(t[1])+1),e.index=n}function Bee(e,t){let n=e.i0,r=e.i1-1,i=e.compare,a=e.data,o=a.length-1;n>0&&!i(a[n],a[n-1])&&(e.i0=t.left(a,a[n])),r<o&&!i(a[r],a[r+1])&&(e.i1=t.right(a,a[r]))}function Ks(e,t,n){var r=null,i=wt(!0),a=null,o=Jt,s=null,c=Tt(l);e=typeof e==`function`?e:e===void 0?hee:wt(+e),t=typeof t==`function`?t:wt(t===void 0?0:+t),n=typeof n==`function`?n:n===void 0?gee:wt(+n);function l(l){var u,d,f,p=(l=At(l)).length,m,h=!1,g,_=Array(p),v=Array(p);for(a??(s=o(g=c())),u=0;u<=p;++u){if(!(u<p&&i(m=l[u],u,l))===h){if(h=!h)d=u,s.areaStart(),s.lineStart();else{for(s.lineEnd(),s.lineStart(),f=u-1;f>=d;--f)s.point(_[f],v[f]);s.lineEnd(),s.areaEnd()}}h&&(_[u]=+e(m,u,l),v[u]=+t(m,u,l),s.point(r?+r(m,u,l):_[u],n?+n(m,u,l):v[u]))}if(g)return s=null,g+``||null}function u(){return Yt().defined(i).curve(o).context(a)}return l.x=function(t){return arguments.length?(e=typeof t==`function`?t:wt(+t),r=null,l):e},l.x0=function(t){return arguments.length?(e=typeof t==`function`?t:wt(+t),l):e},l.x1=function(e){return arguments.length?(r=e==null?null:typeof e==`function`?e:wt(+e),l):r},l.y=function(e){return arguments.length?(t=typeof e==`function`?e:wt(+e),n=null,l):t},l.y0=function(e){return arguments.length?(t=typeof e==`function`?e:wt(+e),l):t},l.y1=function(e){return arguments.length?(n=e==null?null:typeof e==`function`?e:wt(+e),l):n},l.lineX0=l.lineY0=function(){return u().x(e).y(t)},l.lineY1=function(){return u().x(e).y(n)},l.lineX1=function(){return u().x(r).y(t)},l.defined=function(e){return arguments.length?(i=typeof e==`function`?e:wt(!!e),l):i},l.curve=function(e){return arguments.length?(o=e,a!=null&&(s=o(a)),l):o},l.context=function(e){return arguments.length?(e==null?a=s=null:s=o(a=e),l):a},l}var Vee={draw(e,t){let n=Et(t/Ot);e.moveTo(n,0),e.arc(0,0,n,0,Dt)}};function qs(e,t){let n=null,r=Tt(i);e=typeof e==`function`?e:wt(e||Vee),t=typeof t==`function`?t:wt(t===void 0?64:+t);function i(){let i;if(n||=i=r(),e.apply(this,arguments).draw(n,+t.apply(this,arguments)),i)return n=null,i+``||null}return i.type=function(t){return arguments.length?(e=typeof t==`function`?t:wt(t),i):e},i.size=function(e){return arguments.length?(t=typeof e==`function`?e:wt(+e),i):t},i.context=function(e){return arguments.length?(n=e??null,i):n},i}function Js(e,t){if(typeof document<`u`&&document.createElement){let n=document.createElement(`canvas`);if(n&&n.getContext)return n.width=e,n.height=t,n}return null}var Ys=()=>typeof Image<`u`?Image:null,Xs=-.14861,Zs=1.78277,Qs=-.29227,$s=-.90649,ec=1.97294,tc=ec*$s,nc=ec*Zs,rc=Zs*Qs-$s*Xs;function Hee(e){if(e instanceof ac)return new ac(e.h,e.s,e.l,e.opacity);e instanceof nn||(e=tn(e));var t=e.r/255,n=e.g/255,r=e.b/255,i=(rc*r+tc*t-nc*n)/(rc+tc-nc),a=r-i,o=(ec*(n-i)-Qs*a)/$s,s=Math.sqrt(o*o+a*a)/(ec*i*(1-i)),c=s?Math.atan2(o,a)*nt-120:NaN;return new ac(c<0?c+360:c,s,i,e.opacity)}function ic(e,t,n,r){return arguments.length===1?Hee(e):new ac(e,t,n,r??1)}function ac(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}mn(ac,ic,_ee(wn,{brighter(e){return e=e==null?Qt:Qt**+e,new ac(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?rn:rn**+e,new ac(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=isNaN(this.h)?0:(this.h+120)*see,t=+this.l,n=isNaN(this.s)?0:this.s*t*(1-t),r=Math.cos(e),i=Math.sin(e);return new nn(255*(t+n*(Xs*r+Zs*i)),255*(t+n*(Qs*r+$s*i)),255*(t+ec*r*n),this.opacity)}}));function Uee(e){var t=e.length;return function(n){return e[Math.max(0,Math.min(t-1,Math.floor(n*t)))]}}function Wee(e,t){var n=dn(+e,+t);return function(e){var t=n(e);return t-360*Math.floor(t/360)}}function oc(e){return function(t,n){var r=e((t=en(t)).h,(n=en(n)).h),i=an(t.s,n.s),a=an(t.l,n.l),o=an(t.opacity,n.opacity);return function(e){return t.h=r(e),t.s=i(e),t.l=a(e),t.opacity=o(e),t+``}}}var Gee=oc(dn),Kee=oc(an);function qee(e,t){var n=an((e=st(e)).l,(t=st(t)).l),r=an(e.a,t.a),i=an(e.b,t.b),a=an(e.opacity,t.opacity);return function(t){return e.l=n(t),e.a=r(t),e.b=i(t),e.opacity=a(t),e+``}}function sc(e){return(function t(n){n=+n;function r(t,r){var i=e((t=ic(t)).h,(r=ic(r)).h),a=an(t.s,r.s),o=an(t.l,r.l),s=an(t.opacity,r.opacity);return function(e){return t.h=i(e),t.s=a(e),t.l=o(e**+n),t.opacity=s(e),t+``}}return r.gamma=t,r})(1)}var Jee=sc(dn),Yee=sc(an);function cc(e,t){t===void 0&&(t=e,e=Xe);for(var n=0,r=t.length-1,i=t[0],a=Array(r<0?0:r);n<r;)a[n]=e(i,i=t[++n]);return function(e){var t=Math.max(0,Math.min(r-1,Math.floor(e*=r)));return a[t](e-t)}}function Xee(e,t){for(var n=Array(t),r=0;r<t;++r)n[r]=e(r/(t-1));return n}var Zee=t({interpolate:()=>Xe,interpolateArray:()=>Ke,interpolateBasis:()=>sn,interpolateBasisClosed:()=>Tn,interpolateCubehelix:()=>Jee,interpolateCubehelixLong:()=>Yee,interpolateDate:()=>iee,interpolateDiscrete:()=>Uee,interpolateHcl:()=>tt,interpolateHclLong:()=>oee,interpolateHsl:()=>Gee,interpolateHslLong:()=>Kee,interpolateHue:()=>Wee,interpolateLab:()=>qee,interpolateNumber:()=>un,interpolateNumberArray:()=>aee,interpolateObject:()=>ree,interpolateRgb:()=>fn,interpolateRgbBasis:()=>yn,interpolateRgbBasisClosed:()=>gn,interpolateRound:()=>Ue,interpolateString:()=>ln,interpolateTransformCss:()=>hn,interpolateTransformSvg:()=>Cn,interpolateZoom:()=>cn,piecewise:()=>cc,quantize:()=>Xee});function lc(e){var t;function n(e){return e==null||isNaN(e=+e)?t:e}return n.invert=n,n.domain=n.range=function(t){return arguments.length?(e=Array.from(t,Be),n):e.slice()},n.unknown=function(e){return arguments.length?(t=e,n):t},n.copy=function(){return lc(e).unknown(t)},e=arguments.length?Array.from(e,Be):[0,1],We(n)}function uc(e){return Math.log(e)}function dc(e){return Math.exp(e)}function Qee(e){return-Math.log(-e)}function $ee(e){return-Math.exp(-e)}function ete(e){return isFinite(e)?+(`1e`+e):e<0?0:e}function tte(e){return e===10?ete:e===Math.E?Math.exp:t=>e**+t}function nte(e){return e===Math.E?Math.log:e===10&&Math.log10||e===2&&Math.log2||(e=Math.log(e),t=>Math.log(t)/e)}function fc(e){return(t,n)=>-e(-t,n)}function pc(e){let t=e(uc,dc),n=t.domain,r=10,i,a;function o(){return i=nte(r),a=tte(r),n()[0]<0?(i=fc(i),a=fc(a),e(Qee,$ee)):e(uc,dc),t}return t.base=function(e){return arguments.length?(r=+e,o()):r},t.domain=function(e){return arguments.length?(n(e),o()):n()},t.ticks=e=>{let t=n(),o=t[0],s=t[t.length-1],c=s<o;c&&([o,s]=[s,o]);let l=i(o),u=i(s),d,f,p=e==null?10:+e,m=[];if(!(r%1)&&u-l<p){if(l=Math.floor(l),u=Math.ceil(u),o>0){for(;l<=u;++l)for(d=1;d<r;++d)if(f=l<0?d/a(-l):d*a(l),!(f<o)){if(f>s)break;m.push(f)}}else for(;l<=u;++l)for(d=r-1;d>=1;--d)if(f=l>0?d/a(-l):d*a(l),!(f<o)){if(f>s)break;m.push(f)}m.length*2<p&&(m=Ie(o,s,p))}else m=Ie(l,u,Math.min(u-l,p)).map(a);return c?m.reverse():m},t.tickFormat=(e,n)=>{if(e??=10,n??=r===10?`s`:`,`,typeof n!=`function`&&(!(r%1)&&(n=fee(n)).precision==null&&(n.trim=!0),n=pee(n)),e===1/0)return n;let o=Math.max(1,r*e/t.ticks().length);return e=>{let t=e/a(Math.round(i(e)));return t*r<r-.5&&(t*=r),t<=o?n(e):``}},t.nice=()=>n(lee(n(),{floor:e=>a(Math.floor(i(e))),ceil:e=>a(Math.ceil(i(e)))})),t}function mc(){let e=pc(Je()).domain([1,10]);return e.copy=()=>ze(e,mc()).base(e.base()),Xt.apply(e,arguments),e}function hc(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function gc(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function _c(e){var t=1,n=e(hc(t),gc(t));return n.constant=function(n){return arguments.length?e(hc(t=+n),gc(t)):t},We(n)}function vc(){var e=_c(Je());return e.copy=function(){return ze(e,vc()).constant(e.constant())},Xt.apply(e,arguments)}function yc(e){return function(t){return t<0?-((-t)**+e):t**+e}}function rte(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function ite(e){return e<0?-e*e:e*e}function bc(e){var t=e(Ge,Ge),n=1;function r(){return n===1?e(Ge,Ge):n===.5?e(rte,ite):e(yc(n),yc(1/n))}return t.exponent=function(e){return arguments.length?(n=+e,r()):n},We(t)}function xc(){var e=bc(Je());return e.copy=function(){return ze(e,xc()).exponent(e.exponent())},Xt.apply(e,arguments),e}function ate(){return xc.apply(null,arguments).exponent(.5)}function Sc(){var e=[],t=[],n=[],r;function i(){var r=0,i=Math.max(1,t.length);for(n=Array(i-1);++r<i;)n[r-1]=Pr(e,r/i);return a}function a(e){return e==null||isNaN(e=+e)?r:t[Ve(n,e)]}return a.invertExtent=function(r){var i=t.indexOf(r);return i<0?[NaN,NaN]:[i>0?n[i-1]:e[0],i<n.length?n[i]:e[e.length-1]]},a.domain=function(t){if(!arguments.length)return e.slice();e=[];for(let n of t)n!=null&&!isNaN(n=+n)&&e.push(n);return e.sort(Fe),i()},a.range=function(e){return arguments.length?(t=Array.from(e),i()):t.slice()},a.unknown=function(e){return arguments.length?(r=e,a):r},a.quantiles=function(){return n.slice()},a.copy=function(){return Sc().domain(e).range(t).unknown(r)},Xt.apply(a,arguments)}function Cc(){var e=0,t=1,n=1,r=[.5],i=[0,1],a;function o(e){return e!=null&&e<=e?i[Ve(r,e,0,n)]:a}function s(){var i=-1;for(r=Array(n);++i<n;)r[i]=((i+1)*t-(i-n)*e)/(n+1);return o}return o.domain=function(n){return arguments.length?([e,t]=n,e=+e,t=+t,s()):[e,t]},o.range=function(e){return arguments.length?(n=(i=Array.from(e)).length-1,s()):i.slice()},o.invertExtent=function(a){var o=i.indexOf(a);return o<0?[NaN,NaN]:o<1?[e,r[0]]:o>=n?[r[n-1],t]:[r[o-1],r[o]]},o.unknown=function(e){return arguments.length&&(a=e),o},o.thresholds=function(){return r.slice()},o.copy=function(){return Cc().domain([e,t]).range(i).unknown(a)},Xt.apply(We(o),arguments)}function wc(){var e=[.5],t=[0,1],n,r=1;function i(i){return i!=null&&i<=i?t[Ve(e,i,0,r)]:n}return i.domain=function(n){return arguments.length?(e=Array.from(n),r=Math.min(e.length,t.length-1),i):e.slice()},i.range=function(n){return arguments.length?(t=Array.from(n),r=Math.min(e.length,t.length-1),i):t.slice()},i.invertExtent=function(n){var r=t.indexOf(n);return[e[r-1],e[r]]},i.unknown=function(e){return arguments.length?(n=e,i):n},i.copy=function(){return wc().domain(e).range(t).unknown(n)},Xt.apply(i,arguments)}function ote(){return Xt.apply(uee(rt,dee,vt,mt,yt,xt,lt,ft,ut,_t).domain([Date.UTC(2e3,0,1),Date.UTC(2e3,0,2)]),arguments)}function Tc(){var e=0,t=1,n,r,i,a,o=Ge,s=!1,c;function l(e){return e==null||isNaN(e=+e)?c:o(i===0?.5:(e=(a(e)-n)*i,s?Math.max(0,Math.min(1,e)):e))}l.domain=function(o){return arguments.length?([e,t]=o,n=a(e=+e),r=a(t=+t),i=n===r?0:1/(r-n),l):[e,t]},l.clamp=function(e){return arguments.length?(s=!!e,l):s},l.interpolator=function(e){return arguments.length?(o=e,l):o};function u(e){return function(t){var n,r;return arguments.length?([n,r]=t,o=e(n,r),l):[o(0),o(1)]}}return l.range=u(Xe),l.rangeRound=u(Ue),l.unknown=function(e){return arguments.length?(c=e,l):c},function(o){return a=o,n=o(e),r=o(t),i=n===r?0:1/(r-n),l}}function Ec(e,t){return t.domain(e.domain()).interpolator(e.interpolator()).clamp(e.clamp()).unknown(e.unknown())}function Dc(){var e=We(Tc()(Ge));return e.copy=function(){return Ec(e,Dc())},Zt.apply(e,arguments)}function Oc(){var e=pc(Tc()).domain([1,10]);return e.copy=function(){return Ec(e,Oc()).base(e.base())},Zt.apply(e,arguments)}function kc(){var e=_c(Tc());return e.copy=function(){return Ec(e,kc()).constant(e.constant())},Zt.apply(e,arguments)}function Ac(){var e=bc(Tc());return e.copy=function(){return Ec(e,Ac()).exponent(e.exponent())},Zt.apply(e,arguments)}function ste(){return Ac.apply(null,arguments).exponent(.5)}function jc(){var e=0,t=.5,n=1,r=1,i,a,o,s,c,l=Ge,u,d=!1,f;function p(e){return isNaN(e=+e)?f:(e=.5+((e=+u(e))-a)*(r*e<r*a?s:c),l(d?Math.max(0,Math.min(1,e)):e))}p.domain=function(l){return arguments.length?([e,t,n]=l,i=u(e=+e),a=u(t=+t),o=u(n=+n),s=i===a?0:.5/(a-i),c=a===o?0:.5/(o-a),r=a<i?-1:1,p):[e,t,n]},p.clamp=function(e){return arguments.length?(d=!!e,p):d},p.interpolator=function(e){return arguments.length?(l=e,p):l};function m(e){return function(t){var n,r,i;return arguments.length?([n,r,i]=t,l=cc(e,[n,r,i]),p):[l(0),l(.5),l(1)]}}return p.range=m(Xe),p.rangeRound=m(Ue),p.unknown=function(e){return arguments.length?(f=e,p):f},function(l){return u=l,i=l(e),a=l(t),o=l(n),s=i===a?0:.5/(a-i),c=a===o?0:.5/(o-a),r=a<i?-1:1,p}}function Mc(){var e=We(jc()(Ge));return e.copy=function(){return Ec(e,Mc())},Zt.apply(e,arguments)}function Nc(){var e=pc(jc()).domain([.1,1,10]);return e.copy=function(){return Ec(e,Nc()).base(e.base())},Zt.apply(e,arguments)}function Pc(){var e=_c(jc());return e.copy=function(){return Ec(e,Pc()).constant(e.constant())},Zt.apply(e,arguments)}function Fc(){var e=bc(jc());return e.copy=function(){return Ec(e,Fc()).exponent(e.exponent())},Zt.apply(e,arguments)}function cte(){return Fc.apply(null,arguments).exponent(.5)}var Ic=En(`1f77b4ff7f0e2ca02cd627289467bd8c564be377c27f7f7fbcbd2217becf`),Lc=En(`7fc97fbeaed4fdc086ffff99386cb0f0027fbf5b17666666`),Rc=En(`1b9e77d95f027570b3e7298a66a61ee6ab02a6761d666666`),zc=En(`4269d0efb118ff725c6cc5b03ca951ff8ab7a463f297bbf59c6b4e9498a0`),Bc=En(`a6cee31f78b4b2df8a33a02cfb9a99e31a1cfdbf6fff7f00cab2d66a3d9affff99b15928`),Vc=En(`fbb4aeb3cde3ccebc5decbe4fed9a6ffffcce5d8bdfddaecf2f2f2`),lte=En(`b3e2cdfdcdaccbd5e8f4cae4e6f5c9fff2aef1e2cccccccc`),ute=En(`e41a1c377eb84daf4a984ea3ff7f00ffff33a65628f781bf999999`),dte=En(`66c2a5fc8d628da0cbe78ac3a6d854ffd92fe5c494b3b3b3`),Hc=En(`8dd3c7ffffb3bebadafb807280b1d3fdb462b3de69fccde5d9d9d9bc80bdccebc5ffed6f`);function Uc(e,t,n){let r=e-t+n*2;return e?r>0?r:1:0}var Wc=`identity`,Gc=`linear`,Kc=`sqrt`,qc=`symlog`,Jc=`time`,Yc=`sequential`,Xc=`diverging`,Zc=`quantile`,Qc=`quantize`,$c=`threshold`,el=`ordinal`,tl=`point`,nl=`band`,rl=`bin-ordinal`,il=`continuous`,al=`discrete`,ol=`discretizing`,sl=`interpolating`,cl=`temporal`;function ll(e){return function(t){let n=t[0],r=t[1],i;return r<n&&(i=n,n=r,r=i),[e.invert(n),e.invert(r)]}}function ul(e){return function(t){let n=e.range(),r=t[0],i=t[1],a=-1,o,s,c,l;for(i<r&&(s=r,r=i,i=s),c=0,l=n.length;c<l;++c)n[c]>=r&&n[c]<=i&&(a<0&&(a=c),o=c);if(!(a<0))return r=e.invertExtent(n[a]),i=e.invertExtent(n[o]),[r[0]===void 0?r[1]:r[0],i[1]===void 0?i[0]:i[1]]}}function dl(){let e=Qe().unknown(void 0),t=e.domain,n=e.range,r=[0,1],i,a,o=!1,s=0,c=0,l=.5;delete e.unknown;function u(){let e=t().length,u=r[1]<r[0],d=r[1-u],f=Uc(e,s,c),p=r[u-0];i=(d-p)/(f||1),o&&(i=Math.floor(i)),p+=(d-p-i*(e-s))*l,a=i*(1-s),o&&(p=Math.round(p),a=Math.round(a));let m=ct(e).map(e=>p+i*e);return n(u?m.reverse():m)}return e.domain=function(e){return arguments.length?(t(e),u()):t()},e.range=function(e){return arguments.length?(r=[+e[0],+e[1]],u()):r.slice()},e.rangeRound=function(e){return r=[+e[0],+e[1]],o=!0,u()},e.bandwidth=function(){return a},e.step=function(){return i},e.round=function(e){return arguments.length?(o=!!e,u()):o},e.padding=function(e){return arguments.length?(c=Math.max(0,Math.min(1,e)),s=c,u()):s},e.paddingInner=function(e){return arguments.length?(s=Math.max(0,Math.min(1,e)),u()):s},e.paddingOuter=function(e){return arguments.length?(c=Math.max(0,Math.min(1,e)),u()):c},e.align=function(e){return arguments.length?(l=Math.max(0,Math.min(1,e)),u()):l},e.invertRange=function(e){if(e[0]==null||e[1]==null)return;let i=r[1]<r[0],o=i?n().reverse():n(),s=o.length-1,c=+e[0],l=+e[1],u,d,f;if(c===c&&l===l&&(l<c&&(f=c,c=l,l=f),!(l<o[0]||c>r[1-i])))return u=Math.max(0,Ve(o,c)-1),d=c===l?u:Ve(o,l)-1,c-o[u]>a+1e-10&&++u,i&&(f=u,u=s-d,d=s-f),u>d?void 0:t().slice(u,d+1)},e.invert=function(t){let n=e.invertRange([t,t]);return n&&n[0]},e.copy=function(){return dl().domain(t()).range(r).round(o).paddingInner(s).paddingOuter(c).align(l)},u()}function fl(e){let t=e.copy;return e.padding=e.paddingOuter,delete e.paddingInner,e.copy=function(){return fl(t())},e}function pl(){return fl(dl().paddingInner(1))}var ml=Array.prototype.map;function hl(e){return ml.call(e,O)}var gl=Array.prototype.slice;function _l(){let e=[],t=[];function n(n){return n==null||n!==n?void 0:t[(Ve(e,n)-1)%t.length]}return n.domain=function(t){return arguments.length?(e=hl(t),n):e.slice()},n.range=function(e){return arguments.length?(t=gl.call(e),n):t.slice()},n.tickFormat=function(t,n){return qe(e[0],A(e),t??10,n)},n.copy=function(){return _l().domain(n.domain()).range(n.range())},n}var vl=new Map,yl=Symbol(`vega_scale`);function bl(e){return e[yl]=!0,e}function xl(e){return e&&e[yl]===!0}function Sl(e,t,n){let r=function(){let n=t();return n.invertRange||=n.invert?ll(n):n.invertExtent?ul(n):void 0,n.type=e,bl(n)};return r.metadata=_(k(n)),r}function Cl(e,t,n){return arguments.length>1?(vl.set(e,Sl(e,t,n)),this):wl(e)?vl.get(e):void 0}Cl(Wc,lc),Cl(Gc,Ye,il),Cl(`log`,mc,[il,`log`]),Cl(`pow`,xc,il),Cl(Kc,ate,il),Cl(qc,vc,il),Cl(Jc,cee,[il,cl]),Cl(`utc`,ote,[il,cl]),Cl(Yc,Dc,[il,sl]),Cl(`${Yc}-${Gc}`,Dc,[il,sl]),Cl(`${Yc}-log`,Oc,[il,sl,`log`]),Cl(`${Yc}-pow`,Ac,[il,sl]),Cl(`${Yc}-${Kc}`,ste,[il,sl]),Cl(`${Yc}-${qc}`,kc,[il,sl]),Cl(`${Xc}-${Gc}`,Mc,[il,sl]),Cl(`${Xc}-log`,Nc,[il,sl,`log`]),Cl(`${Xc}-pow`,Fc,[il,sl]),Cl(`${Xc}-${Kc}`,cte,[il,sl]),Cl(`${Xc}-${qc}`,Pc,[il,sl]),Cl(Zc,Sc,[ol,Zc]),Cl(Qc,Cc,ol),Cl($c,wc,ol),Cl(rl,_l,[al,ol]),Cl(el,Qe,al),Cl(nl,dl,al),Cl(tl,pl,al);function wl(e){return vl.has(e)}function Tl(e,t){let n=vl.get(e);return n&&n.metadata[t]}function El(e){return Tl(e,il)}function Dl(e){return Tl(e,al)}function Ol(e){return Tl(e,ol)}function kl(e){return Tl(e,`log`)}function Al(e){return Tl(e,cl)}function jl(e){return Tl(e,sl)}function Ml(e){return Tl(e,Zc)}var Nl=[`clamp`,`base`,`constant`,`exponent`];function Pl(e,t){let n=t[0],r=A(t)-n;return function(t){return e(n+t*r)}}function Fl(e,t,n){return cc(Rl(t||`rgb`,n),e)}function Il(e,t){let n=Array(t),r=t+1;for(let i=0;i<t;)n[i]=e(++i/r);return n}function Ll(e,t,n){let r=n-t,i,a,o;return!r||!Number.isFinite(r)?d(.5):(i=(a=e.type).indexOf(`-`),a=i<0?a:a.slice(i+1),o=Cl(a)().domain([t,n]).range([0,1]),Nl.forEach(t=>e[t]?o[t](e[t]()):0),o)}function Rl(e,t){let n=Zee[fte(e)];return t!=null&&n&&n.gamma?n.gamma(t):n}function fte(e){return`interpolate`+e.toLowerCase().split(`-`).map(e=>e[0].toUpperCase()+e.slice(1)).join(``)}var pte={blues:`cfe1f2bed8eca8cee58fc1de74b2d75ba3cf4592c63181bd206fb2125ca40a4a90`,greens:`d3eecdc0e6baabdda594d3917bc77d60ba6c46ab5e329a512089430e7735036429`,greys:`e2e2e2d4d4d4c4c4c4b1b1b19d9d9d8888887575756262624d4d4d3535351e1e1e`,oranges:`fdd8b3fdc998fdb87bfda55efc9244f87f2cf06b18e4580bd14904b93d029f3303`,purples:`e2e1efd4d4e8c4c5e0b4b3d6a3a0cc928ec3827cb97566ae684ea25c3696501f8c`,reds:`fdc9b4fcb49afc9e80fc8767fa7051f6573fec3f2fdc2a25c81b1db21218970b13`,blueGreen:`d5efedc1e8e0a7ddd18bd2be70c6a958ba9144ad77319c5d2089460e7736036429`,bluePurple:`ccddecbad0e4a8c2dd9ab0d4919cc98d85be8b6db28a55a6873c99822287730f71`,greenBlue:`d3eecec5e8c3b1e1bb9bd8bb82cec269c2ca51b2cd3c9fc7288abd1675b10b60a1`,orangeRed:`fddcaffdcf9bfdc18afdad77fb9562f67d53ee6545e24932d32d1ebf130da70403`,purpleBlue:`dbdaebc8cee4b1c3de97b7d87bacd15b9fc93a90c01e7fb70b70ab056199045281`,purpleBlueGreen:`dbd8eac8cee4b0c3de93b7d872acd1549fc83892bb1c88a3097f8702736b016353`,purpleRed:`dcc9e2d3b3d7ce9eccd186c0da6bb2e14da0e23189d91e6fc61159ab07498f023a`,redPurple:`fccfccfcbec0faa9b8f98faff571a5ec539ddb3695c41b8aa908808d0179700174`,yellowGreen:`e4f4acd1eca0b9e2949ed68880c97c62bb6e47aa5e3297502083440e723b036034`,yellowOrangeBrown:`feeaa1fedd84fecc63feb746fca031f68921eb7215db5e0bc54c05ab3d038f3204`,yellowOrangeRed:`fee087fed16ffebd59fea849fd903efc7335f9522bee3423de1b20ca0b22af0225`,blueOrange:`134b852f78b35da2cb9dcae1d2e5eff2f0ebfce0bafbbf74e8932fc5690d994a07`,brownBlueGreen:`704108a0651ac79548e3c78af3e6c6eef1eac9e9e48ed1c74da79e187a72025147`,purpleGreen:`5b1667834792a67fb6c9aed3e6d6e8eff0efd9efd5aedda971bb75368e490e5e29`,purpleOrange:`4114696647968f83b7b9b4d6dadbebf3eeeafce0bafbbf74e8932fc5690d994a07`,redBlue:`8c0d25bf363adf745ef4ae91fbdbc9f2efeed2e5ef9dcae15da2cb2f78b3134b85`,redGrey:`8c0d25bf363adf745ef4ae91fcdccbfaf4f1e2e2e2c0c0c0969696646464343434`,yellowGreenBlue:`eff9bddbf1b4bde5b594d5b969c5be45b4c22c9ec02182b82163aa23479c1c3185`,redYellowBlue:`a50026d4322cf16e43fcac64fedd90faf8c1dcf1ecabd6e875abd04a74b4313695`,redYellowGreen:`a50026d4322cf16e43fcac63fedd8df9f7aed7ee8ea4d86e64bc6122964f006837`,pinkYellowGreen:`8e0152c0267edd72adf0b3d6faddedf5f3efe1f2cab6de8780bb474f9125276419`,spectral:`9e0142d13c4bf0704afcac63fedd8dfbf8b0e0f3a1a9dda269bda94288b55e4fa2`,viridis:`440154470e61481a6c482575472f7d443a834144873d4e8a39568c35608d31688e2d708e2a788e27818e23888e21918d1f988b1fa08822a8842ab07f35b77943bf7154c56866cc5d7ad1518fd744a5db36bcdf27d2e21be9e51afde725`,magma:`0000040404130b0924150e3720114b2c11603b0f704a107957157e651a80721f817f24828c29819a2e80a8327db6377ac43c75d1426fde4968e95462f1605df76f5cfa7f5efc8f65fe9f6dfeaf78febf84fece91fddea0fcedaffcfdbf`,inferno:`0000040403130c0826170c3b240c4f330a5f420a68500d6c5d126e6b176e781c6d86216b932667a12b62ae305cbb3755c73e4cd24644dd513ae65c30ed6925f3771af8850ffb9506fca50afcb519fac62df6d645f2e661f3f484fcffa4`,plasma:`0d088723069033059742039d5002a25d01a66a00a87801a88405a7900da49c179ea72198b12a90ba3488c33d80cb4779d35171da5a69e16462e76e5bed7953f2834cf68f44fa9a3dfca636fdb32ffec029fcce25f9dc24f5ea27f0f921`,cividis:`00205100235800265d002961012b65042e670831690d346b11366c16396d1c3c6e213f6e26426e2c456e31476e374a6e3c4d6e42506e47536d4c566d51586e555b6e5a5e6e5e616e62646f66676f6a6a706e6d717270717573727976737c79747f7c75827f758682768985778c8877908b78938e789691789a94789e9778a19b78a59e77a9a177aea575b2a874b6ab73bbaf71c0b26fc5b66dc9b96acebd68d3c065d8c462ddc85fe2cb5ce7cf58ebd355f0d652f3da4ff7de4cfae249fce647`,rainbow:`6e40aa883eb1a43db3bf3cafd83fa4ee4395fe4b83ff576eff6659ff7847ff8c38f3a130e2b72fcfcc36bee044aff05b8ff4576ff65b52f6673af27828ea8d1ddfa319d0b81cbecb23abd82f96e03d82e14c6edb5a5dd0664dbf6e40aa`,sinebow:`ff4040fc582af47218e78d0bd5a703bfbf00a7d5038de70b72f41858fc2a40ff402afc5818f4720be78d03d5a700bfbf03a7d50b8de71872f42a58fc4040ff582afc7218f48d0be7a703d5bf00bfd503a7e70b8df41872fc2a58ff4040`,turbo:`23171b32204a3e2a71453493493eae4b49c54a53d7485ee44569ee4074f53c7ff8378af93295f72e9ff42ba9ef28b3e926bce125c5d925cdcf27d5c629dcbc2de3b232e9a738ee9d3ff39347f68950f9805afc7765fd6e70fe667cfd5e88fc5795fb51a1f84badf545b9f140c5ec3cd0e637dae034e4d931ecd12ef4c92bfac029ffb626ffad24ffa223ff9821ff8d1fff821dff771cfd6c1af76118f05616e84b14df4111d5380fcb2f0dc0260ab61f07ac1805a313029b0f00950c00910b00`,browns:`eedbbdecca96e9b97ae4a865dc9856d18954c7784cc0673fb85536ad44339f3632`,tealBlues:`bce4d89dd3d181c3cb65b3c245a2b9368fae347da0306a932c5985`,teals:`bbdfdfa2d4d58ac9c975bcbb61b0af4da5a43799982b8b8c1e7f7f127273006667`,warmGreys:`dcd4d0cec5c1c0b8b4b3aaa7a59c9998908c8b827f7e7673726866665c5a59504e`,goldGreen:`f4d166d5ca60b6c35c98bb597cb25760a6564b9c533f8f4f33834a257740146c36`,goldOrange:`f4d166f8be5cf8aa4cf5983bf3852aef701be2621fd65322c54923b142239e3a26`,goldRed:`f4d166f6be59f9aa51fc964ef6834bee734ae56249db5247cf4244c43141b71d3e`,lightGreyRed:`efe9e6e1dad7d5cbc8c8bdb9bbaea9cd967ddc7b43e15f19df4011dc000b`,lightGreyTeal:`e4eaead6dcddc8ced2b7c2c7a6b4bc64b0bf22a6c32295c11f85be1876bc`,lightMulti:`e0f1f2c4e9d0b0de9fd0e181f6e072f6c053f3993ef77440ef4a3c`,lightOrange:`f2e7daf7d5baf9c499fab184fa9c73f68967ef7860e8645bde515bd43d5b`,lightTealBlue:`e3e9e0c0dccf9aceca7abfc859afc0389fb9328dad2f7ca0276b95255988`,darkBlue:`3232322d46681a5c930074af008cbf05a7ce25c0dd38daed50f3faffffff`,darkGold:`3c3c3c584b37725e348c7631ae8b2bcfa424ecc31ef9de30fff184ffffff`,darkGreen:`3a3a3a215748006f4d048942489e4276b340a6c63dd2d836ffeb2cffffaa`,darkMulti:`3737371f5287197d8c29a86995ce3fffe800ffffff`,darkRed:`3434347036339e3c38cc4037e75d1eec8620eeab29f0ce32ffeb2c`},mte={accent:Lc,category10:Ic,category20:`1f77b4aec7e8ff7f0effbb782ca02c98df8ad62728ff98969467bdc5b0d58c564bc49c94e377c2f7b6d27f7f7fc7c7c7bcbd22dbdb8d17becf9edae5`,category20b:`393b795254a36b6ecf9c9ede6379398ca252b5cf6bcedb9c8c6d31bd9e39e7ba52e7cb94843c39ad494ad6616be7969c7b4173a55194ce6dbdde9ed6`,category20c:`3182bd6baed69ecae1c6dbefe6550dfd8d3cfdae6bfdd0a231a35474c476a1d99bc7e9c0756bb19e9ac8bcbddcdadaeb636363969696bdbdbdd9d9d9`,dark2:Rc,observable10:zc,paired:Bc,pastel1:Vc,pastel2:lte,set1:ute,set2:dte,set3:Hc,tableau10:`4c78a8f58518e4575672b7b254a24beeca3bb279a2ff9da69d755dbab0ac`,tableau20:`4c78a89ecae9f58518ffbf7954a24b88d27ab79a20f2cf5b43989483bcb6e45756ff9d9879706ebab0acd67195fcbfd2b279a2d6a5c99e765fd8b5a5`};function zl(e){if(N(e))return e;let t=e.length/6|0,n=Array(t);for(let r=0;r<t;)n[r]=`#`+e.slice(r*6,++r*6);return n}function Bl(e,t){for(let n in e)Hl(n,t(e[n]))}var Vl={};Bl(mte,zl),Bl(pte,e=>Fl(zl(e)));function Hl(e,t){return e&&=e.toLowerCase(),arguments.length>1?(Vl[e]=t,this):Vl[e]}var hte=e=>N(e)?e.map(e=>String(e)):String(e),gte=(e,t)=>e[1]-t[1],_te=(e,t)=>t[1]-e[1];function Ul(e,t,n){let r;if(o(t)&&(e.bins&&(t=Math.max(t,e.bins.length)),n!=null)){let r=e.domain(),i=Math.min(r[0],A(r)),a=Math.max(r[0],A(r));if(t=Math.min(t,Math.floor((a-i)/n||1)+1),!e.bins&&!kl(e.type)&&!Al(e.type)&&i<a)for(;t>1&&Pe(i,a,t)<n;)--t}return M(t)&&(r=t.step,t=t.interval),P(t)&&(t=e.type===`time`?Ne(t):e.type==`utc`?w(t):j(`Only time and utc scales accept interval strings.`),r&&(t=t.every(r))),t}function Wl(e,t,n){let r=e.range(),i=r[0],a=A(r),o=gte;if(i>a&&(r=a,a=i,i=r,o=_te),i=Math.floor(i),a=Math.ceil(a),t=t.map(t=>[t,e(t)]).filter(e=>i<=e[1]&&e[1]<=a).sort(o).map(e=>e[0]),n>0&&t.length>1){let e=[t[0],A(t)];for(;t.length>n&&t.length>=3;)t=t.filter((e,t)=>!(t%2));t.length<3&&(t=e)}return t}function Gl(e,t){return e.bins?Wl(e,e.bins,t):e.ticks?e.ticks(t):e.domain()}function Kl(e,t,n,r,i,a){let o=t.type,s=hte;if(o===`time`||i===`time`)s=e.timeFormat(r);else if(o===`utc`||i===`utc`)s=e.utcFormat(r);else if(kl(o)){let i=e.formatFloat(r);if(a||t.bins)s=i;else{let e=ql(t,n,!1);s=t=>e(t)?i(t):``}}else if(t.tickFormat){let i=t.domain();s=e.formatSpan(i[0],i[i.length-1],n,r)}else r&&(s=e.format(r));return s}function ql(e,t,n){let r=Gl(e,t),i=e.base(),a=Math.log(i),o=Math.max(1,i*t/r.length),s=e=>{let t=e/i**+Math.round(Math.log(e)/a);return t*i<i-.5&&(t*=i),t<=o};return n?r.filter(s):s}var Jl={[Zc]:`quantiles`,[Qc]:`thresholds`,[$c]:`domain`},Yl={[Zc]:`quantiles`,[Qc]:`domain`};function Xl(e,t){return e.bins?bte(e.bins):e.type===`log`?ql(e,t,!0):Jl[e.type]?yte(e[Jl[e.type]]()):Gl(e,t)}function vte(e,t,n){let r=t[Yl[t.type]](),i=r.length,a=i>1?r[1]-r[0]:r[0],o;for(o=1;o<i;++o)a=Math.min(a,r[o]-r[o-1]);return e.formatSpan(0,a,30,n)}function yte(e){let t=[-1/0].concat(e);return t.max=1/0,t}function bte(e){let t=e.slice(0,-1);return t.max=A(e),t}var xte=e=>Jl[e.type]||e.bins;function Zl(e,t,n,r,i,a,o){let s=Yl[t.type]&&a!==`time`&&a!==`utc`?vte(e,t,i):Kl(e,t,n,i,a,o);return r===`symbol`&&xte(t)?Ste(s):r===`discrete`?Cte(s):$l(s)}var Ste=e=>(t,n,r)=>{let i=Ql(r[n+1],Ql(r.max,1/0)),a=eu(t,e),o=eu(i,e);return a&&o?a+` – `+o:o?`< `+o:`≥ `+a},Ql=(e,t)=>e??t,Cte=e=>(t,n)=>n?e(t):null,$l=e=>t=>e(t),eu=(e,t)=>Number.isFinite(e)?t(e):null;function tu(e){let t=e.domain(),n=t.length-1,r=+t[0],i=+A(t),a=i-r;if(e.type===`threshold`){let e=n?a/n:.1;r-=e,i+=e,a=i-r}return e=>(e-r)/a}function nu(e,t,n,r){let i=r||t.type;return P(n)&&Al(i)&&(n=n.replace(/%a/g,`%A`).replace(/%b/g,`%B`)),!n&&i===`time`?e.timeFormat(`%A, %d %B %Y, %X`):!n&&i===`utc`?e.utcFormat(`%A, %d %B %Y, %X UTC`):Zl(e,t,5,null,n,r,!0)}function ru(e,t,n){n||={};let r=Math.max(3,n.maxlen||7),i=nu(e,t,n.format,n.formatType);if(Ol(t.type)){let e=Xl(t).slice(1).map(i),n=e.length;return`${n} boundar${n===1?`y`:`ies`}: ${e.join(`, `)}`}if(Dl(t.type)){let e=t.domain(),n=e.length,a=n>r?e.slice(0,r-2).map(i).join(`, `)+`, ending with `+e.slice(-1).map(i):e.map(i).join(`, `);return`${n} value${n===1?``:`s`}: ${a}`}{let e=t.domain();return`values from ${i(e[0])} to ${i(A(e))}`}}var iu=0,au=`p_`;function ou(e){return e&&e.gradient}function su(e,t,n){let r=e.gradient,i=e.id,a=r===`radial`?au:``;return i||(i=e.id=`gradient_`+iu++,r===`radial`?(e.x1=cu(e.x1,.5),e.y1=cu(e.y1,.5),e.r1=cu(e.r1,0),e.x2=cu(e.x2,.5),e.y2=cu(e.y2,.5),e.r2=cu(e.r2,.5),a=au):(e.x1=cu(e.x1,0),e.y1=cu(e.y1,0),e.x2=cu(e.x2,1),e.y2=cu(e.y2,0))),t[i]=e,`url(`+(n||``)+`#`+a+i+`)`}function cu(e,t){return e??t}function lu(e,t){var n=[],r;return r={gradient:`linear`,x1:e?e[0]:0,y1:e?e[1]:0,x2:t?t[0]:1,y2:t?t[1]:0,stops:n,stop:function(e,t){return n.push({offset:e,color:t}),r}}}var uu={basis:{curve:jt},"basis-closed":{curve:It},"basis-open":{curve:Lt},bundle:{curve:Bt,tension:`beta`,value:.85},cardinal:{curve:Ut,tension:`tension`,value:0},"cardinal-open":{curve:Pt,tension:`tension`,value:0},"cardinal-closed":{curve:Ft,tension:`tension`,value:0},"catmull-rom":{curve:qt,tension:`alpha`,value:.5},"catmull-rom-closed":{curve:zt,tension:`alpha`,value:.5},"catmull-rom-open":{curve:Nt,tension:`alpha`,value:.5},linear:{curve:Jt},"linear-closed":{curve:Gt},monotone:{horizontal:Ht,vertical:Mt},natural:{curve:Rt},step:{curve:Wt},"step-after":{curve:Kt},"step-before":{curve:Vt}};function du(e,t,n){var r=T(uu,e)&&uu[e],i=null;return r&&(i=r.curve||r[t||`vertical`],r.tension&&n!=null&&(i=i[r.tension](n))),i}var fu={m:2,l:2,h:1,v:1,z:0,c:6,s:4,q:4,t:2,a:7},pu=/[mlhvzcsqta]([^mlhvzcsqta]*)/gi,mu=/^[+-]?(([0-9]*\.[0-9]+)|([0-9]+\.)|([0-9]+))([eE][+-]?[0-9]+)?/,hu=/^((\s+,?\s*)|(,\s*))/,gu=/^[01]/;function _u(e){let t=[];return(e.match(pu)||[]).forEach(e=>{let n=e[0],r=n.toLowerCase(),i=fu[r],a=vu(r,i,e.slice(1).trim()),o=a.length;if(o<i||o&&o%i!==0)throw Error(`Invalid SVG path, incorrect parameter count`);if(t.push([n,...a.slice(0,i)]),o!==i){r===`m`&&(n=n===`M`?`L`:`l`);for(let e=i;e<o;e+=i)t.push([n,...a.slice(e,e+i)])}}),t}function vu(e,t,n){let r=[];for(let i=0;t&&i<n.length;)for(let a=0;a<t;++a){let t=e===`a`&&(a===3||a===4)?gu:mu,o=n.slice(i).match(t);if(o===null)throw Error(`Invalid SVG path, incorrect parameter type`);i+=o[0].length,r.push(+o[0]);let s=n.slice(i).match(hu);s!==null&&(i+=s[0].length)}return r}var yu=Math.PI/180,bu=1e-14,xu=Math.PI/2,Su=Math.PI*2,Cu=Math.sqrt(3)/2,wu={},Tu={},Eu=[].join;function Du(e,t,n,r,i,a,o,s,c){let l=Eu.call(arguments);if(wu[l])return wu[l];let u=o*yu,d=Math.sin(u),f=Math.cos(u);n=Math.abs(n),r=Math.abs(r);let p=f*(s-e)*.5+d*(c-t)*.5,m=f*(c-t)*.5-d*(s-e)*.5,h=p*p/(n*n)+m*m/(r*r);h>1&&(h=Math.sqrt(h),n*=h,r*=h);let g=f/n,_=d/n,v=-d/r,y=f/r,b=g*s+_*c,x=v*s+y*c,S=g*e+_*t,C=v*e+y*t,w=1/((S-b)*(S-b)+(C-x)*(C-x))-.25;w<0&&(w=0);let T=Math.sqrt(w);a==i&&(T=-T);let E=.5*(b+S)-T*(C-x),D=.5*(x+C)+T*(S-b),O=Math.atan2(x-D,b-E),k=Math.atan2(C-D,S-E)-O;k<0&&a===1?k+=Su:k>0&&a===0&&(k-=Su);let A=Math.ceil(Math.abs(k/(xu+.001))),ee=[];for(let e=0;e<A;++e){let t=O+e*k/A,i=O+(e+1)*k/A;ee[e]=[E,D,t,i,n,r,d,f]}return wu[l]=ee}function Ou(e){let t=Eu.call(e);if(Tu[t])return Tu[t];var n=e[0],r=e[1],i=e[2],a=e[3],o=e[4],s=e[5],c=e[6],l=e[7];let u=l*o,d=-c*s,f=c*o,p=l*s,m=Math.cos(i),h=Math.sin(i),g=Math.cos(a),_=Math.sin(a),v=.5*(a-i),y=Math.sin(v*.5),b=8/3*y*y/Math.sin(v),x=n+m-b*h,S=r+h+b*m,C=n+g,w=r+_,T=C+b*_,E=w-b*g;return Tu[t]=[u*x+d*S,f*x+p*S,u*T+d*E,f*T+p*E,u*C+d*w,f*C+p*w]}var ku=[`l`,0,0,0,0,0,0,0];function Au(e,t,n){let r=ku[0]=e[0];if(r===`a`||r===`A`)ku[1]=t*e[1],ku[2]=n*e[2],ku[3]=e[3],ku[4]=e[4],ku[5]=e[5],ku[6]=t*e[6],ku[7]=n*e[7];else if(r===`h`||r===`H`)ku[1]=t*e[1];else if(r===`v`||r===`V`)ku[1]=n*e[1];else for(var i=1,a=e.length;i<a;++i)ku[i]=(i%2==1?t:n)*e[i];return ku}function ju(e,t,n,r,i,a){var o,s=null,c=0,l=0,u=0,d=0,f,p,m,h,g=0,_=0;n??=0,r??=0,i??=1,a??=i,e.beginPath&&e.beginPath();for(var v=0,y=t.length;v<y;++v){switch(o=t[v],(i!==1||a!==1)&&(o=Au(o,i,a)),o[0]){case`l`:c+=o[1],l+=o[2],e.lineTo(c+n,l+r);break;case`L`:c=o[1],l=o[2],e.lineTo(c+n,l+r);break;case`h`:c+=o[1],e.lineTo(c+n,l+r);break;case`H`:c=o[1],e.lineTo(c+n,l+r);break;case`v`:l+=o[1],e.lineTo(c+n,l+r);break;case`V`:l=o[1],e.lineTo(c+n,l+r);break;case`m`:c+=o[1],l+=o[2],g=c,_=l,e.moveTo(c+n,l+r);break;case`M`:c=o[1],l=o[2],g=c,_=l,e.moveTo(c+n,l+r);break;case`c`:f=c+o[5],p=l+o[6],u=c+o[3],d=l+o[4],e.bezierCurveTo(c+o[1]+n,l+o[2]+r,u+n,d+r,f+n,p+r),c=f,l=p;break;case`C`:c=o[5],l=o[6],u=o[3],d=o[4],e.bezierCurveTo(o[1]+n,o[2]+r,u+n,d+r,c+n,l+r);break;case`s`:f=c+o[3],p=l+o[4],u=2*c-u,d=2*l-d,e.bezierCurveTo(u+n,d+r,c+o[1]+n,l+o[2]+r,f+n,p+r),u=c+o[1],d=l+o[2],c=f,l=p;break;case`S`:f=o[3],p=o[4],u=2*c-u,d=2*l-d,e.bezierCurveTo(u+n,d+r,o[1]+n,o[2]+r,f+n,p+r),c=f,l=p,u=o[1],d=o[2];break;case`q`:f=c+o[3],p=l+o[4],u=c+o[1],d=l+o[2],e.quadraticCurveTo(u+n,d+r,f+n,p+r),c=f,l=p;break;case`Q`:f=o[3],p=o[4],e.quadraticCurveTo(o[1]+n,o[2]+r,f+n,p+r),c=f,l=p,u=o[1],d=o[2];break;case`t`:f=c+o[1],p=l+o[2],s[0].match(/[QqTt]/)===null?(u=c,d=l):s[0]===`t`?(u=2*c-m,d=2*l-h):s[0]===`q`&&(u=2*c-u,d=2*l-d),m=u,h=d,e.quadraticCurveTo(u+n,d+r,f+n,p+r),c=f,l=p,u=c+o[1],d=l+o[2];break;case`T`:f=o[1],p=o[2],u=2*c-u,d=2*l-d,e.quadraticCurveTo(u+n,d+r,f+n,p+r),c=f,l=p;break;case`a`:Mu(e,c+n,l+r,[o[1],o[2],o[3],o[4],o[5],o[6]+c+n,o[7]+l+r]),c+=o[6],l+=o[7];break;case`A`:Mu(e,c+n,l+r,[o[1],o[2],o[3],o[4],o[5],o[6]+n,o[7]+r]),c=o[6],l=o[7];break;case`z`:case`Z`:c=g,l=_,e.closePath()}s=o}}function Mu(e,t,n,r){let i=Du(r[5],r[6],r[0],r[1],r[3],r[4],r[2],t,n);for(let t=0;t<i.length;++t){let n=Ou(i[t]);e.bezierCurveTo(n[0],n[1],n[2],n[3],n[4],n[5])}}var Nu=.5773502691896257,Pu={circle:{draw:function(e,t){let n=Math.sqrt(t)/2;e.moveTo(n,0),e.arc(0,0,n,0,Su)}},cross:{draw:function(e,t){var n=Math.sqrt(t)/2,r=n/2.5;e.moveTo(-n,-r),e.lineTo(-n,r),e.lineTo(-r,r),e.lineTo(-r,n),e.lineTo(r,n),e.lineTo(r,r),e.lineTo(n,r),e.lineTo(n,-r),e.lineTo(r,-r),e.lineTo(r,-n),e.lineTo(-r,-n),e.lineTo(-r,-r),e.closePath()}},diamond:{draw:function(e,t){let n=Math.sqrt(t)/2;e.moveTo(-n,0),e.lineTo(0,-n),e.lineTo(n,0),e.lineTo(0,n),e.closePath()}},square:{draw:function(e,t){var n=Math.sqrt(t),r=-n/2;e.rect(r,r,n,n)}},arrow:{draw:function(e,t){var n=Math.sqrt(t)/2,r=n/7,i=n/2.5,a=n/8;e.moveTo(-r,n),e.lineTo(r,n),e.lineTo(r,-a),e.lineTo(i,-a),e.lineTo(0,-n),e.lineTo(-i,-a),e.lineTo(-r,-a),e.closePath()}},wedge:{draw:function(e,t){var n=Math.sqrt(t)/2,r=Cu*n,i=r-n*Nu,a=n/4;e.moveTo(0,-r-i),e.lineTo(-a,r-i),e.lineTo(a,r-i),e.closePath()}},triangle:{draw:function(e,t){var n=Math.sqrt(t)/2,r=Cu*n,i=r-n*Nu;e.moveTo(0,-r-i),e.lineTo(-n,r-i),e.lineTo(n,r-i),e.closePath()}},"triangle-up":{draw:function(e,t){var n=Math.sqrt(t)/2,r=Cu*n;e.moveTo(0,-r),e.lineTo(-n,r),e.lineTo(n,r),e.closePath()}},"triangle-down":{draw:function(e,t){var n=Math.sqrt(t)/2,r=Cu*n;e.moveTo(0,r),e.lineTo(-n,-r),e.lineTo(n,-r),e.closePath()}},"triangle-right":{draw:function(e,t){var n=Math.sqrt(t)/2,r=Cu*n;e.moveTo(r,0),e.lineTo(-r,-n),e.lineTo(-r,n),e.closePath()}},"triangle-left":{draw:function(e,t){var n=Math.sqrt(t)/2,r=Cu*n;e.moveTo(-r,0),e.lineTo(r,-n),e.lineTo(r,n),e.closePath()}},stroke:{draw:function(e,t){let n=Math.sqrt(t)/2;e.moveTo(-n,0),e.lineTo(n,0)}}};function Fu(e){return T(Pu,e)?Pu[e]:Lu(e)}var Iu={};function Lu(e){if(!T(Iu,e)){let t=_u(e);Iu[e]={draw:function(e,n){ju(e,t,0,0,Math.sqrt(n)/2)}}}return Iu[e]}var Ru=.448084975506;function zu(e){return e.x}function Bu(e){return e.y}function Vu(e){return e.width}function Hu(e){return e.height}function Uu(e){return typeof e==`function`?e:()=>+e}function Wu(e,t,n){return Math.max(t,Math.min(e,n))}function Gu(){var e=zu,t=Bu,n=Vu,r=Hu,i=Uu(0),a=i,o=i,s=i,c=null;function l(l,u,d){var f,p=u??+e.call(this,l),m=d??+t.call(this,l),h=+n.call(this,l),g=+r.call(this,l),_=Math.min(h,g)/2,v=Wu(+i.call(this,l),0,_),y=Wu(+a.call(this,l),0,_),b=Wu(+o.call(this,l),0,_),x=Wu(+s.call(this,l),0,_);if(c||=f=Ct(),v<=0&&y<=0&&b<=0&&x<=0)c.rect(p,m,h,g);else{var S=p+h,C=m+g;c.moveTo(p+v,m),c.lineTo(S-y,m),c.bezierCurveTo(S-Ru*y,m,S,m+Ru*y,S,m+y),c.lineTo(S,C-x),c.bezierCurveTo(S,C-Ru*x,S-Ru*x,C,S-x,C),c.lineTo(p+b,C),c.bezierCurveTo(p+Ru*b,C,p,C-Ru*b,p,C-b),c.lineTo(p,m+v),c.bezierCurveTo(p,m+Ru*v,p+Ru*v,m,p+v,m),c.closePath()}if(f)return c=null,f+``||null}return l.x=function(t){return arguments.length?(e=Uu(t),l):e},l.y=function(e){return arguments.length?(t=Uu(e),l):t},l.width=function(e){return arguments.length?(n=Uu(e),l):n},l.height=function(e){return arguments.length?(r=Uu(e),l):r},l.cornerRadius=function(e,t,n,r){return arguments.length?(i=Uu(e),a=t==null?i:Uu(t),s=n==null?i:Uu(n),o=r==null?a:Uu(r),l):i},l.context=function(e){return arguments.length?(c=e??null,l):c},l}function Ku(){var e,t,n,r,i=null,a,o,s,c;function l(e,t,n){let r=n/2;if(a){var l=s-t,u=e-o;if(l||u){var d=Math.hypot(l,u),f=(l/=d)*c,p=(u/=d)*c,m=Math.atan2(u,l);i.moveTo(o-f,s-p),i.lineTo(e-l*r,t-u*r),i.arc(e,t,r,m-Math.PI,m),i.lineTo(o+f,s+p),i.arc(o,s,c,m,m+Math.PI)}else i.arc(e,t,r,0,Su);i.closePath()}else a=1;o=e,s=t,c=r}function u(o){var s,c=o.length,u,d=!1,f;for(i??=f=Ct(),s=0;s<=c;++s)!(s<c&&r(u=o[s],s,o))===d&&(d=!d)&&(a=0),d&&l(+e(u,s,o),+t(u,s,o),+n(u,s,o));if(f)return i=null,f+``||null}return u.x=function(t){return arguments.length?(e=t,u):e},u.y=function(e){return arguments.length?(t=e,u):t},u.size=function(e){return arguments.length?(n=e,u):n},u.defined=function(e){return arguments.length?(r=e,u):r},u.context=function(e){return arguments.length?(i=e??null,u):i},u}function qu(e,t){return e??t}var Ju=e=>e.x||0,Yu=e=>e.y||0,Xu=e=>e.width||0,Zu=e=>e.height||0,Qu=e=>(e.x||0)+(e.width||0),$u=e=>(e.y||0)+(e.height||0),ed=e=>e.startAngle||0,td=e=>e.endAngle||0,nd=e=>e.padAngle||0,rd=e=>e.innerRadius||0,id=e=>e.outerRadius||0,ad=e=>e.cornerRadius||0,od=e=>qu(e.cornerRadiusTopLeft,e.cornerRadius)||0,sd=e=>qu(e.cornerRadiusTopRight,e.cornerRadius)||0,cd=e=>qu(e.cornerRadiusBottomRight,e.cornerRadius)||0,ld=e=>qu(e.cornerRadiusBottomLeft,e.cornerRadius)||0,ud=e=>qu(e.size,64),dd=e=>e.size||1,fd=e=>e.defined!==!1,pd=e=>Fu(e.shape||`circle`),md=kt().startAngle(ed).endAngle(td).padAngle(nd).innerRadius(rd).outerRadius(id).cornerRadius(ad),hd=Ks().x(Ju).y1(Yu).y0($u).defined(fd),gd=Ks().y(Yu).x1(Ju).x0(Qu).defined(fd),_d=Yt().x(Ju).y(Yu).defined(fd),vd=Gu().x(Ju).y(Yu).width(Xu).height(Zu).cornerRadius(od,sd,cd,ld),yd=qs().type(pd).size(ud),bd=Ku().x(Ju).y(Yu).defined(fd).size(dd);function xd(e){return e.cornerRadius||e.cornerRadiusTopLeft||e.cornerRadiusTopRight||e.cornerRadiusBottomRight||e.cornerRadiusBottomLeft}function Sd(e,t){return md.context(e)(t)}function Cd(e,t){let n=t[0],r=n.interpolate||`linear`;return(n.orient===`horizontal`?gd:hd).curve(du(r,n.orient,n.tension)).context(e)(t)}function wd(e,t){let n=t[0],r=n.interpolate||`linear`;return _d.curve(du(r,n.orient,n.tension)).context(e)(t)}function Td(e,t,n,r){return vd.context(e)(t,n,r)}function Ed(e,t){return(t.mark.shape||t.shape).context(e)(t)}function Dd(e,t){return yd.context(e)(t)}function Od(e,t){return bd.context(e)(t)}var kd=1;function Ad(e,t,n){var r=t.clip,i=e._defs,a=t.clip_id||=`clip`+kd++,o=i.clipping[a]||(i.clipping[a]={id:a});return m(r)?o.path=r(null):xd(n)?o.path=Td(null,n,0,0):(o.width=n.width||0,o.height=n.height||0),`url(#`+a+`)`}function jd(e){this.clear(),e&&this.union(e)}jd.prototype={clone(){return new jd(this)},clear(){return this.x1=+Number.MAX_VALUE,this.y1=+Number.MAX_VALUE,this.x2=-Number.MAX_VALUE,this.y2=-Number.MAX_VALUE,this},empty(){return this.x1===+Number.MAX_VALUE&&this.y1===+Number.MAX_VALUE&&this.x2===-Number.MAX_VALUE&&this.y2===-Number.MAX_VALUE},equals(e){return this.x1===e.x1&&this.y1===e.y1&&this.x2===e.x2&&this.y2===e.y2},set(e,t,n,r){return n<e?(this.x2=e,this.x1=n):(this.x1=e,this.x2=n),r<t?(this.y2=t,this.y1=r):(this.y1=t,this.y2=r),this},add(e,t){return e<this.x1&&(this.x1=e),t<this.y1&&(this.y1=t),e>this.x2&&(this.x2=e),t>this.y2&&(this.y2=t),this},expand(e){return this.x1-=e,this.y1-=e,this.x2+=e,this.y2+=e,this},round(){return this.x1=Math.floor(this.x1),this.y1=Math.floor(this.y1),this.x2=Math.ceil(this.x2),this.y2=Math.ceil(this.y2),this},scale(e){return this.x1*=e,this.y1*=e,this.x2*=e,this.y2*=e,this},translate(e,t){return this.x1+=e,this.x2+=e,this.y1+=t,this.y2+=t,this},rotate(e,t,n){let r=this.rotatedPoints(e,t,n);return this.clear().add(r[0],r[1]).add(r[2],r[3]).add(r[4],r[5]).add(r[6],r[7])},rotatedPoints(e,t,n){var{x1:r,y1:i,x2:a,y2:o}=this,s=Math.cos(e),c=Math.sin(e),l=t-t*s+n*c,u=n-t*c-n*s;return[s*r-c*i+l,c*r+s*i+u,s*r-c*o+l,c*r+s*o+u,s*a-c*i+l,c*a+s*i+u,s*a-c*o+l,c*a+s*o+u]},union(e){return e.x1<this.x1&&(this.x1=e.x1),e.y1<this.y1&&(this.y1=e.y1),e.x2>this.x2&&(this.x2=e.x2),e.y2>this.y2&&(this.y2=e.y2),this},intersect(e){return e.x1>this.x1&&(this.x1=e.x1),e.y1>this.y1&&(this.y1=e.y1),e.x2<this.x2&&(this.x2=e.x2),e.y2<this.y2&&(this.y2=e.y2),this},encloses(e){return e&&this.x1<=e.x1&&this.x2>=e.x2&&this.y1<=e.y1&&this.y2>=e.y2},alignsWith(e){return e&&(this.x1==e.x1||this.x2==e.x2||this.y1==e.y1||this.y2==e.y2)},intersects(e){return e&&!(this.x2<e.x1||this.x1>e.x2||this.y2<e.y1||this.y1>e.y2)},contains(e,t){return!(e<this.x1||e>this.x2||t<this.y1||t>this.y2)},width(){return this.x2-this.x1},height(){return this.y2-this.y1}};function Md(e){this.mark=e,this.bounds=this.bounds||new jd}function Nd(e){Md.call(this,e),this.items=this.items||[]}F(Nd,Md);var Pd=class{constructor(e){this._pending=0,this._loader=e||te()}pending(){return this._pending}sanitizeURL(e){let t=this;return Fd(t),t._loader.sanitize(e,{context:`href`}).then(e=>(Id(t),e)).catch(()=>(Id(t),null))}loadImage(e){let t=this,n=Ys();return Fd(t),t._loader.sanitize(e,{context:`image`}).then(e=>{let r=e.href;if(!r||!n)throw{url:r};let i=new n,a=T(e,`crossOrigin`)?e.crossOrigin:`anonymous`;return a!=null&&(i.crossOrigin=a),i.onload=()=>Id(t),i.onerror=()=>Id(t),i.src=r,i}).catch(e=>(Id(t),{complete:!1,width:0,height:0,src:e&&e.url||``}))}ready(){let e=this;return new Promise(t=>{function n(r){e.pending()?setTimeout(()=>{n(!0)},10):t(r)}n(!1)})}};function Fd(e){e._pending+=1}function Id(e){--e._pending}function Ld(e,t,n){if(t.stroke&&t.opacity!==0&&t.strokeOpacity!==0){let r=t.strokeWidth==null?1:+t.strokeWidth,i=(t.strokeCap===`square`?Math.SQRT2:1)*r/2;n&&(!t.strokeJoin||t.strokeJoin===`miter`)&&(i=Math.max(i,(t.strokeMiterLimit==null?4:+t.strokeMiterLimit)*r/2)),e.expand(i)}return e}var Rd=Su-1e-8,zd,Bd,Vd,Hd,Ud,Wd,Gd,Kd,qd=(e,t)=>zd.add(e,t),Jd=(e,t)=>qd(Bd=e,Vd=t),Yd=e=>qd(e,zd.y1),Xd=e=>qd(zd.x1,e),Zd=(e,t)=>Ud*e+Gd*t,Qd=(e,t)=>Wd*e+Kd*t,$d=(e,t)=>qd(Zd(e,t),Qd(e,t)),ef=(e,t)=>Jd(Zd(e,t),Qd(e,t));function tf(e,t){return zd=e,t?(Hd=t*yu,Ud=Kd=Math.cos(Hd),Wd=Math.sin(Hd),Gd=-Wd):(Ud=Kd=1,Hd=Wd=Gd=0),nf}var nf={beginPath(){},closePath(){},moveTo:ef,lineTo:ef,rect(e,t,n,r){Hd?($d(e+n,t),$d(e+n,t+r),$d(e,t+r),ef(e,t)):(qd(e+n,t+r),Jd(e,t))},quadraticCurveTo(e,t,n,r){let i=Zd(e,t),a=Qd(e,t),o=Zd(n,r),s=Qd(n,r);rf(Bd,i,o,Yd),rf(Vd,a,s,Xd),Jd(o,s)},bezierCurveTo(e,t,n,r,i,a){let o=Zd(e,t),s=Qd(e,t),c=Zd(n,r),l=Qd(n,r),u=Zd(i,a),d=Qd(i,a);af(Bd,o,c,u,Yd),af(Vd,s,l,d,Xd),Jd(u,d)},arc(e,t,n,r,i,a){if(r+=Hd,i+=Hd,Bd=n*Math.cos(i)+e,Vd=n*Math.sin(i)+t,Math.abs(i-r)>Rd)qd(e-n,t-n),qd(e+n,t+n);else{let o=r=>qd(n*Math.cos(r)+e,n*Math.sin(r)+t),s,c;if(o(r),o(i),i!==r){if(r%=Su,r<0&&(r+=Su),i%=Su,i<0&&(i+=Su),i<r&&(a=!a,s=r,r=i,i=s),a)for(i-=Su,s=r-r%xu,c=0;c<4&&s>i;++c,s-=xu)o(s);else for(s=r-r%xu+xu,c=0;c<4&&s<i;++c,s+=xu)o(s)}}}};function rf(e,t,n,r){let i=(e-t)/(e+n-2*t);0<i&&i<1&&r(e+(t-e)*i)}function af(e,t,n,r,i){let a=r-e+3*t-3*n,o=e+n-2*t,s=e-t,c=0,l=0,u;Math.abs(a)>bu?(u=o*o+s*a,u>=0&&(u=Math.sqrt(u),c=(-o+u)/a,l=(-o-u)/a)):c=.5*s/o,0<c&&c<1&&i(of(c,e,t,n,r)),0<l&&l<1&&i(of(l,e,t,n,r))}function of(e,t,n,r,i){let a=1-e,o=a*a,s=e*e;return o*a*t+3*o*e*n+3*a*s*r+s*e*i}var sf=(sf=Js(1,1))?sf.getContext(`2d`):null,cf=new jd;function lf(e){return function(t,n){if(!sf)return!0;e(sf,t),cf.clear().union(t.bounds).intersect(n).round();let{x1:r,y1:i,x2:a,y2:o}=cf;for(let e=i;e<=o;++e)for(let t=r;t<=a;++t)if(sf.isPointInPath(t,e))return!0;return!1}}function uf(e,t){return t.contains(e.x||0,e.y||0)}function df(e,t){let n=e.x||0,r=e.y||0,i=e.width||0,a=e.height||0;return t.intersects(cf.set(n,r,n+i,r+a))}function ff(e,t){let n=e.x||0,r=e.y||0;return pf(t,n,r,e.x2==null?n:e.x2,e.y2==null?r:e.y2)}function pf(e,t,n,r,i){let{x1:a,y1:o,x2:s,y2:c}=e,l=r-t,u=i-n,d=0,f=1,p,m,h,g;for(g=0;g<4;++g){if(g===0&&(p=-l,m=-(a-t)),g===1&&(p=l,m=s-t),g===2&&(p=-u,m=-(o-n)),g===3&&(p=u,m=c-n),Math.abs(p)<1e-10&&m<0)return!1;if(h=m/p,p<0){if(h>f)return!1;h>d&&(d=h)}else if(p>0){if(h<d)return!1;h<f&&(f=h)}}return!0}function mf(e,t){e.globalCompositeOperation=t.blend||`source-over`}function hf(e,t){return e??t}function gf(e,t){let n=t.length;for(let r=0;r<n;++r)e.addColorStop(t[r].offset,t[r].color);return e}function _f(e,t,n){let r=n.width(),i=n.height(),a;if(t.gradient===`radial`)a=e.createRadialGradient(n.x1+hf(t.x1,.5)*r,n.y1+hf(t.y1,.5)*i,Math.max(r,i)*hf(t.r1,0),n.x1+hf(t.x2,.5)*r,n.y1+hf(t.y2,.5)*i,Math.max(r,i)*hf(t.r2,.5));else{let o=hf(t.x1,0),s=hf(t.y1,0),c=hf(t.x2,1),l=hf(t.y2,0);if(o===c||s===l||r===i)a=e.createLinearGradient(n.x1+o*r,n.y1+s*i,n.x1+c*r,n.y1+l*i);else{let n=Js(Math.ceil(r),Math.ceil(i)),a=n.getContext(`2d`);return a.scale(r,i),a.fillStyle=gf(a.createLinearGradient(o,s,c,l),t.stops),a.fillRect(0,0,r,i),e.createPattern(n,`no-repeat`)}}return gf(a,t.stops)}function vf(e,t,n){return ou(n)?_f(e,n,t.bounds):n}function yf(e,t,n){return n*=t.fillOpacity==null?1:t.fillOpacity,n>0&&(e.globalAlpha=n,e.fillStyle=vf(e,t,t.fill),!0)}var bf=[];function xf(e,t,n){var r=(r=t.strokeWidth)??1;return r<=0?!1:(n*=t.strokeOpacity==null?1:t.strokeOpacity,n>0&&(e.globalAlpha=n,e.strokeStyle=vf(e,t,t.stroke),e.lineWidth=r,e.lineCap=t.strokeCap||`butt`,e.lineJoin=t.strokeJoin||`miter`,e.miterLimit=t.strokeMiterLimit==null?4:t.strokeMiterLimit,e.setLineDash&&(e.setLineDash(t.strokeDash||bf),e.lineDashOffset=t.strokeDashOffset||0),!0))}function Sf(e,t){return e.zindex-t.zindex||e.index-t.index}function Cf(e){if(!e.zdirty)return e.zitems;var t=e.items,n=[],r,i,a;for(i=0,a=t.length;i<a;++i)r=t[i],r.index=i,r.zindex&&n.push(r);return e.zdirty=!1,e.zitems=n.sort(Sf)}function wf(e,t){var n=e.items,r,i;if(!n||!n.length)return;let a=Cf(e);if(a&&a.length){for(r=0,i=n.length;r<i;++r)n[r].zindex||t(n[r]);n=a}for(r=0,i=n.length;r<i;++r)t(n[r])}function Tf(e,t){var n=e.items,r,i;if(!n||!n.length)return null;let a=Cf(e);for(a&&a.length&&(n=a),i=n.length;--i>=0;)if(r=t(n[i]))return r;if(n===a){for(n=e.items,i=n.length;--i>=0;)if(!n[i].zindex&&(r=t(n[i])))return r}return null}function Ef(e){return function(t,n,r){wf(n,n=>{(!r||r.intersects(n.bounds))&&Of(e,t,n,n)})}}function Df(e){return function(t,n,r){n.items.length&&(!r||r.intersects(n.bounds))&&Of(e,t,n.items[0],n.items)}}function Of(e,t,n,r){var i=n.opacity==null?1:n.opacity;i!==0&&(e(t,r)||(mf(t,n),n.fill&&yf(t,n,i)&&t.fill(),n.stroke&&xf(t,n,i)&&t.stroke()))}function kf(e){return e||=De,function(t,n,r,i,a,o){return r*=t.pixelRatio,i*=t.pixelRatio,Tf(n,n=>{let s=n.bounds;if(!(s&&!s.contains(a,o)||!s)&&e(t,n,r,i,a,o))return n})}}function Af(e,t){return function(n,r,i,a){var o=Array.isArray(r)?r[0]:r,s=t??o.fill,c=o.stroke&&n.isPointInStroke,l,u;return c&&(l=o.strokeWidth,u=o.strokeCap,n.lineWidth=l??1,n.lineCap=u??`butt`),e(n,r)?!1:s&&n.isPointInPath(i,a)||c&&n.isPointInStroke(i,a)}}function jf(e){return kf(Af(e))}function Mf(e,t){return`translate(`+e+`,`+t+`)`}function Nf(e){return`rotate(`+e+`)`}function wte(e,t){return`scale(`+e+`,`+t+`)`}function Pf(e){return Mf(e.x||0,e.y||0)}function Tte(e){return Mf(e.x||0,e.y||0)+(e.angle?` `+Nf(e.angle):``)}function Ete(e){return Mf(e.x||0,e.y||0)+(e.angle?` `+Nf(e.angle):``)+(e.scaleX||e.scaleY?` `+wte(e.scaleX||1,e.scaleY||1):``)}function Ff(e,t,n){function r(e,n){e(`transform`,Tte(n)),e(`d`,t(null,n))}function i(e,n){return t(tf(e,n.angle),n),Ld(e,n,!0).translate(n.x||0,n.y||0)}function a(e,n){var r=n.x||0,i=n.y||0,a=n.angle||0;e.translate(r,i),a&&e.rotate(a*=yu),e.beginPath(),t(e,n),a&&e.rotate(-a),e.translate(-r,-i)}return{type:e,tag:`path`,nested:!1,attr:r,bound:i,draw:Ef(a),pick:jf(a),isect:n||lf(a)}}var Dte=Ff(`arc`,Sd);function Ote(e,t){for(var n=e[0].orient===`horizontal`?t[1]:t[0],r=e[0].orient===`horizontal`?`y`:`x`,i=e.length,a=1/0,o,s;--i>=0;)e[i].defined!==!1&&(s=Math.abs(e[i][r]-n),s<a&&(a=s,o=e[i]));return o}function kte(e,t){for(var n=(e[0].strokeWidth||1)**2,r=e.length,i,a,o;--r>=0;)if(e[r].defined!==!1&&(i=e[r].x-t[0],a=e[r].y-t[1],o=i*i+a*a,o<n))return e[r];return null}function Ate(e,t){for(var n=e.length,r,i,a;--n>=0;)if(e[n].defined!==!1&&(r=e[n].x-t[0],i=e[n].y-t[1],a=r*r+i*i,r=e[n].size||1,a<r*r))return e[n];return null}function If(e,t,n){function r(e,n){var r=n.mark.items;r.length&&e(`d`,t(null,r))}function i(e,n){var r=n.items;return r.length===0?e:(t(tf(e),r),Ld(e,r[0],!0))}function a(e,n){e.beginPath(),t(e,n)}let o=Af(a);function s(e,t,n,r,i,a){var s=t.items,c=t.bounds;return!s||!s.length||c&&!c.contains(i,a)?null:(n*=e.pixelRatio,r*=e.pixelRatio,o(e,s,n,r)?s[0]:null)}return{type:e,tag:`path`,nested:!0,attr:r,bound:i,draw:Df(a),pick:s,isect:uf,tip:n}}var jte=If(`area`,Cd,Ote);function Mte(e,t){var n=t.clip;e.save(),m(n)?(e.beginPath(),n(e),e.clip()):Lf(e,t.group)}function Lf(e,t){e.beginPath(),xd(t)?Td(e,t,0,0):e.rect(0,0,t.width||0,t.height||0),e.clip()}function Rf(e){let t=hf(e.strokeWidth,1);return e.strokeOffset==null?e.stroke&&t>.5&&t<1.5?.5-Math.abs(t-1):0:e.strokeOffset}function Nte(e,t){e(`transform`,Pf(t))}function zf(e,t){let n=Rf(t);e(`d`,Td(null,t,n,n))}function Pte(e,t){e(`class`,`background`),e(`aria-hidden`,!0),zf(e,t)}function Fte(e,t){e(`class`,`foreground`),e(`aria-hidden`,!0),t.strokeForeground?zf(e,t):e(`d`,``)}function Ite(e,t,n){e(`clip-path`,t.clip?Ad(n,t,t):null)}function Lte(e,t){if(!t.clip&&t.items){let n=t.items,r=n.length;for(let t=0;t<r;++t)e.union(n[t].bounds)}return(t.clip||t.width||t.height)&&!t.noBound&&e.add(0,0).add(t.width||0,t.height||0),Ld(e,t),e.translate(t.x||0,t.y||0)}function Bf(e,t,n,r){let i=Rf(t);e.beginPath(),Td(e,t,(n||0)+i,(r||0)+i)}var Rte=Af(Bf),zte=Af(Bf,!1),Bte=Af(Bf,!0);function Vte(e,t,n,r){wf(t,t=>{let i=t.x||0,a=t.y||0,o=t.strokeForeground,s=t.opacity==null?1:t.opacity;(t.stroke||t.fill)&&s&&(Bf(e,t,i,a),mf(e,t),t.fill&&yf(e,t,s)&&e.fill(),t.stroke&&!o&&xf(e,t,s)&&e.stroke()),e.save(),e.translate(i,a),t.clip&&Lf(e,t),n&&n.translate(-i,-a),wf(t,t=>{(t.marktype===`group`||r==null||r.includes(t.marktype))&&this.draw(e,t,n,r)}),n&&n.translate(i,a),e.restore(),o&&t.stroke&&s&&(Bf(e,t,i,a),mf(e,t),xf(e,t,s)&&e.stroke())})}function Hte(e,t,n,r,i,a){if(t.bounds&&!t.bounds.contains(i,a)||!t.items)return null;let o=n*e.pixelRatio,s=r*e.pixelRatio;return Tf(t,c=>{let l,u,d,f=c.bounds;if(f&&!f.contains(i,a))return;u=c.x||0,d=c.y||0;let p=u+(c.width||0),m=d+(c.height||0),h=c.clip;if(h&&(i<u||i>p||a<d||a>m))return;if(e.save(),e.translate(u,d),u=i-u,d=a-d,h&&xd(c)&&!Bte(e,c,o,s))return e.restore(),null;let g=c.strokeForeground,_=t.interactive!==!1;return _&&g&&c.stroke&&zte(e,c,o,s)?(e.restore(),c):(l=Tf(c,e=>Ute(e,u,d)?this.pick(e,n,r,u,d):null),!l&&_&&(c.fill||!g&&c.stroke)&&Rte(e,c,o,s)&&(l=c),e.restore(),l||null)})}function Ute(e,t,n){return(e.interactive!==!1||e.marktype===`group`)&&e.bounds&&e.bounds.contains(t,n)}var Wte={type:`group`,tag:`g`,nested:!1,attr:Nte,bound:Lte,draw:Vte,pick:Hte,isect:df,content:Ite,background:Pte,foreground:Fte},Vf={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,version:`1.1`};function Hf(e,t){var n=e.image;return(!n||e.url&&e.url!==n.url)&&(n={complete:!1,width:0,height:0},t.loadImage(e.url).then(t=>{e.image=t,e.image.url=e.url})),n}function Uf(e,t){return e.width==null?!t||!t.width?0:e.aspect!==!1&&e.height?e.height*t.width/t.height:t.width:e.width}function Wf(e,t){return e.height==null?!t||!t.height?0:e.aspect!==!1&&e.width?e.width*t.height/t.width:t.height:e.height}function Gf(e,t){return e===`center`?t/2:e===`right`?t:0}function Kf(e,t){return e===`middle`?t/2:e===`bottom`?t:0}function Gte(e,t,n){let r=Hf(t,n),i=Uf(t,r),a=Wf(t,r),o=(t.x||0)-Gf(t.align,i),s=(t.y||0)-Kf(t.baseline,a);e(`href`,!r.src&&r.toDataURL?r.toDataURL():r.src||``,Vf[`xmlns:xlink`],`xlink:href`),e(`transform`,Mf(o,s)),e(`width`,i),e(`height`,a),e(`preserveAspectRatio`,t.aspect===!1?`none`:`xMidYMid`)}function Kte(e,t){let n=t.image,r=Uf(t,n),i=Wf(t,n),a=(t.x||0)-Gf(t.align,r),o=(t.y||0)-Kf(t.baseline,i);return e.set(a,o,a+r,o+i)}function qte(e,t,n){wf(t,t=>{if(n&&!n.intersects(t.bounds))return;let r=Hf(t,this),i=Uf(t,r),a=Wf(t,r);if(i===0||a===0)return;let o=(t.x||0)-Gf(t.align,i),s=(t.y||0)-Kf(t.baseline,a),c,l,u;t.aspect!==!1&&(c=r.width/r.height,l=t.width/t.height,c===c&&l===l&&c!==l&&(l<c?(u=i/c,s+=(a-u)/2,a=u):(u=a*c,o+=(i-u)/2,i=u))),(r.complete||r.toDataURL)&&(mf(e,t),e.globalAlpha=t.opacity??1,e.imageSmoothingEnabled=t.smooth!==!1,e.drawImage(r,o,s,i,a))})}var Jte={type:`image`,tag:`image`,nested:!1,attr:Gte,bound:Kte,draw:qte,pick:kf(),isect:De,get:Hf,xOffset:Gf,yOffset:Kf},Yte=If(`line`,wd,kte);function Xte(e,t){var n=t.scaleX||1,r=t.scaleY||1;(n!==1||r!==1)&&e(`vector-effect`,`non-scaling-stroke`),e(`transform`,Ete(t)),e(`d`,t.path)}function qf(e,t){var n=t.path;if(n==null)return!0;var r=t.x||0,i=t.y||0,a=t.scaleX||1,o=t.scaleY||1,s=(t.angle||0)*yu,c=t.pathCache;(!c||c.path!==n)&&((t.pathCache=c=_u(n)).path=n),s&&e.rotate&&e.translate?(e.translate(r,i),e.rotate(s),ju(e,c,0,0,a,o),e.rotate(-s),e.translate(-r,-i)):ju(e,c,r,i,a,o)}function Zte(e,t){return qf(tf(e,t.angle),t)?e.set(0,0,0,0):Ld(e,t,!0)}var Qte={type:`path`,tag:`path`,nested:!1,attr:Xte,bound:Zte,draw:Ef(qf),pick:jf(qf),isect:lf(qf)};function $te(e,t){e(`d`,Td(null,t))}function ene(e,t){var n,r;return Ld(e.set(n=t.x||0,r=t.y||0,n+t.width||0,r+t.height||0),t)}function Jf(e,t){e.beginPath(),Td(e,t)}var tne={type:`rect`,tag:`path`,nested:!1,attr:$te,bound:ene,draw:Ef(Jf),pick:jf(Jf),isect:df};function nne(e,t){e(`transform`,Pf(t)),e(`x2`,t.x2==null?0:t.x2-(t.x||0)),e(`y2`,t.y2==null?0:t.y2-(t.y||0))}function rne(e,t){var n,r;return Ld(e.set(n=t.x||0,r=t.y||0,t.x2==null?n:t.x2,t.y2==null?r:t.y2),t)}function Yf(e,t,n){var r,i,a,o;return t.stroke&&xf(e,t,n)?(r=t.x||0,i=t.y||0,a=t.x2==null?r:t.x2,o=t.y2==null?i:t.y2,e.beginPath(),e.moveTo(r,i),e.lineTo(a,o),!0):!1}function ine(e,t,n){wf(t,t=>{if(!(n&&!n.intersects(t.bounds))){var r=t.opacity==null?1:t.opacity;r&&Yf(e,t,r)&&(mf(e,t),e.stroke())}})}function ane(e,t,n,r){return e.isPointInStroke?Yf(e,t,1)&&e.isPointInStroke(n,r):!1}var one={type:`rule`,tag:`line`,nested:!1,attr:nne,bound:rne,draw:ine,pick:kf(ane),isect:ff},sne=Ff(`shape`,Ed),cne=Ff(`symbol`,Dd,uf),Xf=yr(),Zf={height:rp,measureWidth:tp,estimateWidth:$f,width:$f,canvas:Qf};Qf(!0);function Qf(e){Zf.width=e&&sf?tp:$f}function $f(e,t){return ep(sp(e,t),rp(e))}function ep(e,t){return~~(.8*e.length*t)}function tp(e,t){return rp(e)<=0||!(t=sp(e,t))?0:np(t,lp(e))}function np(e,t){let n=`(${t}) ${e}`,r=Xf.get(n);return r===void 0&&(sf.font=t,r=sf.measureText(e).width,Xf.set(n,r)),r}function rp(e){return e.fontSize==null?11:+e.fontSize||0}function ip(e){return e.lineHeight==null?rp(e)+2:e.lineHeight}function lne(e){return N(e)?e.length>1?e:e[0]:e}function ap(e){return lne(e.lineBreak&&e.text&&!N(e.text)?e.text.split(e.lineBreak):e.text)}function op(e){let t=ap(e);return(N(t)?t.length-1:0)*ip(e)}function sp(e,t){let n=t==null?``:(t+``).trim();return e.limit>0&&n.length?dne(e,n):n}function une(e){if(Zf.width===tp){let t=lp(e);return e=>np(e,t)}if(Zf.width===$f){let t=rp(e);return e=>ep(e,t)}return t=>Zf.width(e,t)}function dne(e,t){var n=+e.limit,r=une(e);if(r(t)<n)return t;var i=e.ellipsis||`…`,a=e.dir===`rtl`,o=0,s=t.length,c;if(n-=r(i),a){for(;o<s;)c=o+s>>>1,r(t.slice(c))>n?o=c+1:s=c;return i+t.slice(o)}for(;o<s;)c=1+(o+s>>>1),r(t.slice(0,c))<n?o=c:s=c-1;return t.slice(0,o)+i}function cp(e,t){var n=e.font;return(t&&n?String(n).replace(/"/g,`'`):n)||`sans-serif`}function lp(e,t){return(e.fontStyle?e.fontStyle+` `:``)+(e.fontVariant?e.fontVariant+` `:``)+(e.fontWeight?e.fontWeight+` `:``)+rp(e)+`px `+cp(e,t)}function up(e){var t=e.baseline,n=rp(e);return Math.round(t===`top`?.79*n:t===`middle`?.3*n:t===`bottom`?-.21*n:t===`line-top`?.29*n+.5*ip(e):t===`line-bottom`?.29*n-.5*ip(e):0)}var fne={left:`start`,center:`middle`,right:`end`},dp=new jd;function fp(e){var t=e.x||0,n=e.y||0,r=e.radius||0,i;return r&&(i=(e.theta||0)-xu,t+=r*Math.cos(i),n+=r*Math.sin(i)),dp.x1=t,dp.y1=n,dp}function pp(e,t){var n=t.dx||0,r=(t.dy||0)+up(t),i=fp(t),a=i.x1,o=i.y1,s=t.angle||0,c;e(`text-anchor`,fne[t.align]||`start`),s?(c=Mf(a,o)+` `+Nf(s),(n||r)&&(c+=` `+Mf(n,r))):c=Mf(a+n,o+r),e(`transform`,c)}function mp(e,t,n){var r=Zf.height(t),i=t.align,a=fp(t),o=a.x1,s=a.y1,c=t.dx||0,l=(t.dy||0)+up(t)-Math.round(.8*r),u=ap(t),d;if(N(u)?(r+=ip(t)*(u.length-1),d=u.reduce((e,n)=>Math.max(e,Zf.width(t,n)),0)):d=Zf.width(t,u),i===`center`?c-=d/2:i===`right`&&(c-=d),e.set(c+=o,l+=s,c+d,l+r),t.angle&&!n)e.rotate(t.angle*yu,o,s);else if(n===2)return e.rotatedPoints(t.angle*yu,o,s);return e}function hp(e,t,n){wf(t,t=>{var r=t.opacity==null?1:t.opacity,i,a,o,s,c,l,u;if(!(n&&!n.intersects(t.bounds)||r===0||t.fontSize<=0||t.text==null||t.text.length===0)){if(e.font=lp(t),e.textAlign=t.align||`left`,i=fp(t),a=i.x1,o=i.y1,t.angle&&(e.save(),e.translate(a,o),e.rotate(t.angle*yu),a=o=0),a+=t.dx||0,o+=(t.dy||0)+up(t),l=ap(t),mf(e,t),N(l))for(c=ip(t),s=0;s<l.length;++s)u=sp(t,l[s]),t.fill&&yf(e,t,r)&&e.fillText(u,a,o),t.stroke&&xf(e,t,r)&&e.strokeText(u,a,o),o+=c;else u=sp(t,l),t.fill&&yf(e,t,r)&&e.fillText(u,a,o),t.stroke&&xf(e,t,r)&&e.strokeText(u,a,o);t.angle&&e.restore()}})}function gp(e,t,n,r,i,a){if(t.fontSize<=0)return!1;if(!t.angle)return!0;var o=fp(t),s=o.x1,c=o.y1,l=mp(dp,t,1),u=-t.angle*yu,d=Math.cos(u),f=Math.sin(u),p=d*i-f*a+(s-d*s+f*c),m=f*i+d*a+(c-f*s-d*c);return l.contains(p,m)}function _p(e,t){let n=mp(dp,e,2);return pf(t,n[0],n[1],n[2],n[3])||pf(t,n[0],n[1],n[4],n[5])||pf(t,n[4],n[5],n[6],n[7])||pf(t,n[2],n[3],n[6],n[7])}var vp={arc:Dte,area:jte,group:Wte,image:Jte,line:Yte,path:Qte,rect:tne,rule:one,shape:sne,symbol:cne,text:{type:`text`,tag:`text`,nested:!1,attr:pp,bound:mp,draw:hp,pick:kf(gp),isect:_p},trail:If(`trail`,Od,Ate)};function yp(e,t,n){var r=vp[e.mark.marktype],i=t||r.bound;return r.nested&&(e=e.mark),i(e.bounds||(e.bounds=new jd),e,n)}var bp={mark:null};function xp(e,t,n){var r=vp[e.marktype],i=r.bound,a=e.items,o=a&&a.length,s,c,l,u;if(r.nested)return o?l=a[0]:(bp.mark=e,l=bp),u=yp(l,i,n),t=t&&t.union(u)||u,t;if(t=t||e.bounds&&e.bounds.clear()||new jd,o)for(s=0,c=a.length;s<c;++s)t.union(yp(a[s],i,n));return e.bounds=t}var Sp=`marktype.name.role.interactive.clip.items.zindex.x.y.width.height.align.baseline.fill.fillOpacity.opacity.blend.stroke.strokeOpacity.strokeWidth.strokeCap.strokeDash.strokeDashOffset.strokeForeground.strokeOffset.startAngle.endAngle.innerRadius.outerRadius.cornerRadius.padAngle.cornerRadiusTopLeft.cornerRadiusTopRight.cornerRadiusBottomLeft.cornerRadiusBottomRight.interpolate.tension.orient.defined.url.aspect.smooth.path.scaleX.scaleY.x2.y2.size.shape.text.angle.theta.radius.dir.dx.dy.ellipsis.limit.lineBreak.lineHeight.font.fontSize.fontWeight.fontStyle.fontVariant.description.aria.ariaRole.ariaRoleDescription`.split(`.`);function Cp(e,t){return JSON.stringify(e,Sp,t)}function wp(e){return Tp(typeof e==`string`?JSON.parse(e):e)}function Tp(e){var t=e.marktype,n=e.items,r,i,a;if(n)for(i=0,a=n.length;i<a;++i)r=t?`mark`:`group`,n[i][r]=e,n[i].zindex&&(n[i][r].zdirty=!0),(t||r)===`group`&&Tp(n[i]);return t&&xp(e),e}var Ep=class{constructor(e){arguments.length?this.root=wp(e):(this.root=Dp({marktype:`group`,name:`root`,role:`frame`}),this.root.items=[new Nd(this.root)])}toJSON(e){return Cp(this.root,e||0)}mark(e,t,n){t||=this.root.items[0];let r=Dp(e,t);return t.items[n]=r,r.zindex&&(r.group.zdirty=!0),r}};function Dp(e,t){let n={bounds:new jd,clip:!!e.clip,group:t,interactive:e.interactive!==!1,items:[],marktype:e.marktype,name:e.name||void 0,role:e.role||void 0,zindex:e.zindex||0};return e.aria!=null&&(n.aria=e.aria),e.description&&(n.description=e.description),n}function Op(e,t,n){return!e&&typeof document<`u`&&document.createElement&&(e=document),e?n?e.createElementNS(n,t):e.createElement(t):null}function kp(e,t){t=t.toLowerCase();for(var n=e.childNodes,r=0,i=n.length;r<i;++r)if(n[r].tagName.toLowerCase()===t)return n[r]}function Ap(e,t,n,r){var i=e.childNodes[t],a;return(!i||i.tagName.toLowerCase()!==n.toLowerCase())&&(a=i||null,i=Op(e.ownerDocument,n,r),e.insertBefore(i,a)),i}function jp(e,t){for(var n=e.childNodes,r=n.length;r>t;)e.removeChild(n[--r]);return e}function Mp(e){return`mark-`+e.marktype+(e.role?` role-`+e.role:``)+(e.name?` `+e.name:``)}function Np(e,t){if(t.getScreenCTM){let n=Pp(e,t.getScreenCTM());if(n)return n}return Fp(e,t,t.getBoundingClientRect())}function Pp(e,t){if(!t)return null;let n=t.a*t.d-t.b*t.c;if(!n)return null;let r=e.clientX-t.e,i=e.clientY-t.f;return[(t.d*r-t.c*i)/n,(t.a*i-t.b*r)/n]}function Fp(e,t,n){let r=t.offsetWidth?n.width/t.offsetWidth:1,i=t.offsetHeight?n.height/t.offsetHeight:1;return[(e.clientX-n.left)/r-(t.clientLeft||0),(e.clientY-n.top)/i-(t.clientTop||0)]}function Ip(e,t,n,r){var i=e&&e.mark,a,o;if(i&&(a=vp[i.marktype]).tip){for(o=Np(t,n),o[0]-=r[0],o[1]-=r[1];e=e.mark.group;)o[0]-=e.x||0,o[1]-=e.y||0;e=a.tip(i.items,o)}return e}var Lp=class{constructor(e,t){this._active=null,this._handlers={},this._loader=e||te(),this._tooltip=t||Rp}initialize(e,t,n){return this._el=e,this._obj=n||null,this.origin(t)}element(){return this._el}canvas(){return this._el&&this._el.firstChild}origin(e){return arguments.length?(this._origin=e||[0,0],this):this._origin.slice()}scene(e){return arguments.length?(this._scene=e,this):this._scene}on(){}off(){}_handlerIndex(e,t,n){for(let r=e?e.length:0;--r>=0;)if(e[r].type===t&&(!n||e[r].handler===n))return r;return-1}handlers(e){let t=this._handlers,n=[];if(e)n.push(...t[this.eventName(e)]);else for(let e in t)n.push(...t[e]);return n}eventName(e){let t=e.indexOf(`.`);return t<0?e:e.slice(0,t)}handleHref(e,t,n){this._loader.sanitize(n,{context:`href`}).then(t=>{let n=new MouseEvent(e.type,e),r=Op(null,`a`);for(let e in t)r.setAttribute(e,t[e]);r.dispatchEvent(n)}).catch(()=>{})}handleTooltip(e,t,n){if(t&&t.tooltip!=null){t=Ip(t,e,this.canvas(),this._origin);let r=n&&t&&t.tooltip||null;this._tooltip.call(this._obj,this,e,t,r)}}getItemBoundingClientRect(e){let t=this.canvas();if(!t)return;let n=t.getBoundingClientRect(),r=this._origin,i=e.bounds,a=i.width(),o=i.height(),s=i.x1+r[0]+n.left,c=i.y1+r[1]+n.top;for(;e.mark&&(e=e.mark.group);)s+=e.x||0,c+=e.y||0;return{x:s,y:c,width:a,height:o,left:s,top:c,right:s+a,bottom:c+o}}};function Rp(e,t,n,r){e.element().setAttribute(`title`,r||``)}var zp=class{constructor(e){this._el=null,this._bgcolor=null,this._loader=new Pd(e)}initialize(e,t,n,r,i){return this._el=e,this.resize(t,n,r,i)}element(){return this._el}canvas(){return this._el&&this._el.firstChild}background(e){return arguments.length===0?this._bgcolor:(this._bgcolor=e,this)}resize(e,t,n,r){return this._width=e,this._height=t,this._origin=n||[0,0],this._scale=r||1,this}dirty(){}render(e,t){let n=this;return n._call=function(){n._render(e,t)},n._call(),n._call=null,n}_render(){}renderAsync(e,t){let n=this.render(e,t);return this._ready?this._ready.then(()=>n):Promise.resolve(n)}_load(e,t){var n=this,r=n._loader[e](t);if(!n._ready){let e=n._call;n._ready=n._loader.ready().then(t=>{t&&e(),n._ready=null})}return r}sanitizeURL(e){return this._load(`sanitizeURL`,e)}loadImage(e){return this._load(`loadImage`,e)}},Bp=`keydown`,Vp=`keypress`,Hp=`keyup`,Up=`dragenter`,Wp=`dragleave`,Gp=`dragover`,Kp=`pointerdown`,qp=`pointerup`,Jp=`pointermove`,Yp=`pointerout`,Xp=`pointerover`,Zp=`mousedown`,Qp=`mouseup`,$p=`mousemove`,em=`mouseout`,tm=`mouseover`,nm=`click`,rm=`dblclick`,im=`wheel`,am=`mousewheel`,om=`touchstart`,sm=`touchmove`,cm=`touchend`,lm=[Bp,Vp,Hp,Up,Wp,Gp,Kp,qp,Jp,Yp,Xp,Zp,Qp,$p,em,tm,nm,rm,im,am,om,sm,cm],um=Jp,dm=em,fm=nm,pm=class extends Lp{constructor(e,t){super(e,t),this._down=null,this._touch=null,this._first=!0,this._events={},this.events=lm,this.pointermove=vm([Jp,$p],[Xp,tm],[Yp,em]),this.dragover=vm([Gp],[Up],[Wp]),this.pointerout=ym([Yp,em]),this.dragleave=ym([Wp])}initialize(e,t,n){return this._canvas=e&&kp(e,`canvas`),[nm,Zp,Kp,Jp,Yp,Wp].forEach(e=>hm(this,e)),super.initialize(e,t,n)}canvas(){return this._canvas}context(){return this._canvas.getContext(`2d`)}DOMMouseScroll(e){this.fire(am,e)}pointerdown(e){this._down=this._active,this.fire(Kp,e)}mousedown(e){this._down=this._active,this.fire(Zp,e)}click(e){this._down===this._active&&(this.fire(nm,e),this._down=null)}touchstart(e){this._touch=this.pickEvent(e.changedTouches[0]),this._first&&=(this._active=this._touch,!1),this.fire(om,e,!0)}touchmove(e){this.fire(sm,e,!0)}touchend(e){this.fire(cm,e,!0),this._touch=null}fire(e,t,n){let r=n?this._touch:this._active,i=this._handlers[e];if(t.vegaType=e,e===fm&&r&&r.href?this.handleHref(t,r,r.href):(e===um||e===dm)&&this.handleTooltip(t,r,e!==dm),i)for(let e=0,n=i.length;e<n;++e)i[e].handler.call(this._obj,t,r)}on(e,t){let n=this.eventName(e),r=this._handlers;return this._handlerIndex(r[n],e,t)<0&&(hm(this,e),(r[n]||(r[n]=[])).push({type:e,handler:t})),this}off(e,t){let n=this.eventName(e),r=this._handlers[n],i=this._handlerIndex(r,e,t);return i>=0&&r.splice(i,1),this}pickEvent(e){let t=Np(e,this._canvas),n=this._origin;return this.pick(this._scene,t[0],t[1],t[0]-n[0],t[1]-n[1])}pick(e,t,n,r,i){let a=this.context();return vp[e.marktype].pick.call(this,a,e,t,n,r,i)}},mm=e=>e===om||e===sm||e===cm?[om,sm,cm]:[e];function hm(e,t){mm(t).forEach(t=>gm(e,t))}function gm(e,t){let n=e.canvas();n&&!e._events[t]&&(e._events[t]=1,n.addEventListener(t,e[t]?n=>e[t](n):n=>e.fire(t,n)))}function _m(e,t,n){t.forEach(t=>e.fire(t,n))}function vm(e,t,n){return function(r){let i=this._active,a=this.pickEvent(r);a===i?_m(this,e,r):((!i||!i.exit)&&_m(this,n,r),this._active=a,_m(this,t,r),_m(this,e,r))}}function ym(e){return function(t){_m(this,e,t),this._active=null}}function bm(){return typeof window<`u`&&window.devicePixelRatio||1}function xm(e,t,n,r,i,a){let o=typeof HTMLElement<`u`&&e instanceof HTMLElement&&e.parentNode!=null,s=e.getContext(`2d`),c=o?bm():i;e.width=t*c,e.height=n*c;for(let e in a)s[e]=a[e];return o&&(e.style.width=t+`px`,e.style.height=n+`px`),s.pixelRatio=c,s.setTransform(c,0,0,c,c*r[0],c*r[1]),e}var Sm=class extends zp{constructor(e){super(e),this._options={},this._redraw=!1,this._dirty=new jd,this._tempb=new jd}initialize(e,t,n,r,i,a){return this._options=a||{},this._canvas=this._options.externalContext?null:Js(1,1,this._options.type),e&&this._canvas&&(jp(e,0).appendChild(this._canvas),this._canvas.setAttribute(`class`,`marks`),this._canvas.style.setProperty(`vertical-align`,`bottom`)),super.initialize(e,t,n,r,i)}resize(e,t,n,r){if(super.resize(e,t,n,r),this._canvas)xm(this._canvas,this._width,this._height,this._origin,this._scale,this._options.context);else{let e=this._options.externalContext;e||j(`CanvasRenderer is missing a valid canvas or context`),e.scale(this._scale,this._scale),e.translate(this._origin[0],this._origin[1])}return this._redraw=!0,this}canvas(){return this._canvas}context(){return this._options.externalContext||(this._canvas?this._canvas.getContext(`2d`):null)}dirty(e){let t=this._tempb.clear().union(e.bounds),n=e.mark.group;for(;n;)t.translate(n.x||0,n.y||0),n=n.mark.group;this._dirty.union(t)}_render(e,t){let n=this.context(),r=this._origin,i=this._width,a=this._height,o=this._dirty,s=Cm(r,i,a);n.save();let c=this._redraw||o.empty()?(this._redraw=!1,s.expand(1)):wm(n,s.intersect(o),r);return this.clear(-r[0],-r[1],i,a),this.draw(n,e,c,t),n.restore(),o.clear(),this}draw(e,t,n,r){if(t.marktype!==`group`&&r!=null&&!r.includes(t.marktype))return;let i=vp[t.marktype];t.clip&&Mte(e,t),i.draw.call(this,e,t,n,r),t.clip&&e.restore()}clear(e,t,n,r){let i=this._options,a=this.context();i.type!==`pdf`&&!i.externalContext&&a.clearRect(e,t,n,r),this._bgcolor!=null&&(a.fillStyle=this._bgcolor,a.fillRect(e,t,n,r))}},Cm=(e,t,n)=>new jd().set(0,0,t,n).translate(-e[0],-e[1]);function wm(e,t,n){return t.expand(1).round(),e.pixelRatio%1&&t.scale(e.pixelRatio).round().scale(1/e.pixelRatio),t.translate(-(n[0]%1),-(n[1]%1)),e.beginPath(),e.rect(t.x1,t.y1,t.width(),t.height()),e.clip(),t}var Tm=class extends Lp{constructor(e,t){super(e,t);let n=this;n._hrefHandler=Em(n,(e,t)=>{t&&t.href&&n.handleHref(e,t,t.href)}),n._tooltipHandler=Em(n,(e,t)=>{n.handleTooltip(e,t,e.type!==dm)})}initialize(e,t,n){let r=this._svg;return r&&(r.removeEventListener(fm,this._hrefHandler),r.removeEventListener(um,this._tooltipHandler),r.removeEventListener(dm,this._tooltipHandler)),this._svg=r=e&&kp(e,`svg`),r&&(r.addEventListener(fm,this._hrefHandler),r.addEventListener(um,this._tooltipHandler),r.addEventListener(dm,this._tooltipHandler)),super.initialize(e,t,n)}canvas(){return this._svg}on(e,t){let n=this.eventName(e),r=this._handlers;if(this._handlerIndex(r[n],e,t)<0){let i={type:e,handler:t,listener:Em(this,t)};(r[n]||(r[n]=[])).push(i),this._svg&&this._svg.addEventListener(n,i.listener)}return this}off(e,t){let n=this.eventName(e),r=this._handlers[n],i=this._handlerIndex(r,e,t);return i>=0&&(this._svg&&this._svg.removeEventListener(n,r[i].listener),r.splice(i,1)),this}},Em=(e,t)=>n=>{let r=n.target.__data__;r=Array.isArray(r)?r[0]:r,n.vegaType=n.type,t.call(e._obj,n,r)},Dm=`aria-hidden`,Om=`aria-label`,km=`role`,Am=`aria-roledescription`,jm=`graphics-object`,Mm=`graphics-symbol`,Nm=(e,t,n)=>({[km]:e,[Am]:t,[Om]:n||void 0}),Pm=_([`axis-domain`,`axis-grid`,`axis-label`,`axis-tick`,`axis-title`,`legend-band`,`legend-entry`,`legend-gradient`,`legend-label`,`legend-title`,`legend-symbol`,`title`]),Fm={axis:{desc:`axis`,caption:Hm},legend:{desc:`legend`,caption:Um},"title-text":{desc:`title`,caption:e=>`Title text '${Vm(e)}'`},"title-subtitle":{desc:`subtitle`,caption:e=>`Subtitle text '${Vm(e)}'`}},Im={ariaRole:km,ariaRoleDescription:Am,description:Om};function Lm(e,t){let n=t.aria===!1;if(e(Dm,n||void 0),n||t.description==null)for(let t in Im)e(Im[t],void 0);else{let n=t.mark.marktype;e(Om,t.description),e(km,t.ariaRole||(n===`group`?jm:Mm)),e(Am,t.ariaRoleDescription||`${n} mark`)}}function Rm(e){return e.aria===!1?{[Dm]:!0}:Pm[e.role]?null:Fm[e.role]?Bm(e,Fm[e.role]):zm(e)}function zm(e){let t=e.marktype;return Nm(t===`group`||t===`text`||e.items.some(e=>e.description!=null&&e.aria!==!1)?jm:Mm,`${t} mark container`,e.description)}function Bm(e,t){try{let n=e.items[0],r=t.caption||(()=>``);return Nm(t.role||Mm,t.desc,e.description||n.description||r(n))}catch{return null}}function Vm(e){return k(e.text).join(` `)}function Hm(e){let t=e.datum,n=e.orient,r=t.title?Wm(e):null,i=e.context,a=i.scales[t.scale].value,o=i.dataflow.locale(),s=a.type;return`${n===`left`||n===`right`?`Y`:`X`}-axis`+(r?` titled '${r}'`:``)+` for a ${Dl(s)?`discrete`:s} scale with ${ru(o,a,e)}`}function Um(e){let t=e.datum,n=t.title?Wm(e):null,r=`${t.type||``} legend`.trim(),i=t.scales,a=Object.keys(i),o=e.context,s=o.scales[i[a[0]]].value,c=o.dataflow.locale();return Km(r)+(n?` titled '${n}'`:``)+` for ${Gm(a)} with ${ru(c,s,e)}`}function Wm(e){try{return k(A(e.items).items[0].text).join(` `)}catch{return null}}function Gm(e){return e=e.map(e=>e+(e===`fill`||e===`stroke`?` color`:``)),e.length<2?e[0]:e.slice(0,-1).join(`, `)+` and `+A(e)}function Km(e){return e.length?e[0].toUpperCase()+e.slice(1):e}var qm=e=>(e+``).replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`),Jm=e=>qm(e).replace(/"/g,`"`).replace(/\t/g,`	`).replace(/\n/g,`
`).replace(/\r/g,`
`);function Ym(){let e=``,t=``,n=``,r=[],i=()=>t=n=``,a=a=>{t&&(e+=`${t}>${n}`,i()),r.push(a)},o=(e,n)=>(n!=null&&(t+=` ${e}="${Jm(n)}"`),s),s={open(e,...n){a(e),t=`<`+e;for(let e of n)for(let t in e)o(t,e[t]);return s},close(){let a=r.pop();return e+=t?t+(n?`>${n}</${a}>`:`/>`):`</${a}>`,i(),s},attr:o,text:e=>(n+=qm(e),s),toString:()=>e};return s}var Xm=e=>Zm(Ym(),e)+``;function Zm(e,t){if(e.open(t.tagName),t.hasAttributes()){let n=t.attributes,r=n.length;for(let t=0;t<r;++t)e.attr(n[t].name,n[t].value)}if(t.hasChildNodes()){let n=t.childNodes;for(let t of n)t.nodeType===3?e.text(t.nodeValue):Zm(e,t)}return e.close()}var Qm={fill:`fill`,fillOpacity:`fill-opacity`,stroke:`stroke`,strokeOpacity:`stroke-opacity`,strokeWidth:`stroke-width`,strokeCap:`stroke-linecap`,strokeJoin:`stroke-linejoin`,strokeDash:`stroke-dasharray`,strokeDashOffset:`stroke-dashoffset`,strokeMiterLimit:`stroke-miterlimit`,opacity:`opacity`},$m={blend:`mix-blend-mode`},eh={fill:`none`,"stroke-miterlimit":4},th=0,nh=`http://www.w3.org/2000/xmlns/`,rh=Vf.xmlns,ih=class extends zp{constructor(e){super(e),this._dirtyID=0,this._dirty=[],this._svg=null,this._root=null,this._defs=null}initialize(e,t,n,r,i){return this._defs={},this._clearDefs(),e&&(this._svg=Ap(e,0,`svg`,rh),this._svg.setAttributeNS(nh,`xmlns`,rh),this._svg.setAttributeNS(nh,`xmlns:xlink`,Vf[`xmlns:xlink`]),this._svg.setAttribute(`version`,Vf.version),this._svg.setAttribute(`class`,`marks`),this._svg.style.setProperty(`vertical-align`,`bottom`),jp(e,1),this._root=Ap(this._svg,th,`g`,rh),gh(this._root,eh),jp(this._svg,1)),this.background(this._bgcolor),super.initialize(e,t,n,r,i)}background(e){return arguments.length&&this._svg&&this._svg.style.setProperty(`background-color`,e),super.background(...arguments)}resize(e,t,n,r){return super.resize(e,t,n,r),this._svg&&(gh(this._svg,{width:this._width*this._scale,height:this._height*this._scale,viewBox:`0 0 ${this._width} ${this._height}`}),this._root.setAttribute(`transform`,`translate(${this._origin})`)),this._dirty=[],this}canvas(){return this._svg}svg(){let e=this._svg,t=this._bgcolor;if(!e)return null;let n=e.getAttribute(`style`);e.removeAttribute(`style`);let r;t&&(r=Ap(e,th,`rect`,rh),gh(r,{width:this._width,height:this._height,fill:t}));let i=Xm(e);return t&&e.removeChild(r),n&&e.setAttribute(`style`,n),i}_render(e,t){return this._dirtyCheck()&&(this._dirtyAll&&this._clearDefs(),this.mark(this._root,e,void 0,t),jp(this._root,1)),this.defs(),this._dirty=[],++this._dirtyID,this}dirty(e){e.dirty!==this._dirtyID&&(e.dirty=this._dirtyID,this._dirty.push(e))}isDirty(e){return this._dirtyAll||!e._svg||!e._svg.ownerSVGElement||e.dirty===this._dirtyID}_dirtyCheck(){this._dirtyAll=!0;let e=this._dirty;if(!e.length||!this._dirtyID)return!0;let t=++this._dirtyID,n,r,i,a,o,s,c;for(o=0,s=e.length;o<s;++o)if(n=e[o],r=n.mark,r.marktype!==i&&(i=r.marktype,a=vp[i]),r.zdirty&&r.dirty!==t&&(this._dirtyAll=!1,ah(n,t),r.items.forEach(e=>{e.dirty=t})),!r.zdirty){if(n.exit){a.nested&&r.items.length?(c=r.items[0],c._svg&&this._update(a,c._svg,c)):n._svg&&(c=n._svg.parentNode,c&&c.removeChild(n._svg)),n._svg=null;continue}n=a.nested?r.items[0]:n,n._update!==t&&(!n._svg||!n._svg.ownerSVGElement?(this._dirtyAll=!1,ah(n,t)):this._update(a,n._svg,n),n._update=t)}return!this._dirtyAll}mark(e,t,n,r){if(!this.isDirty(t))return t._svg;let i=this._svg,a=t.marktype,o=vp[a],s=t.interactive===!1?`none`:null,c=o.tag===`g`,l=lh(t,e,n,`g`,i);if(a!==`group`&&r!=null&&!r.includes(a))return jp(l,0),t._svg;l.setAttribute(`class`,Mp(t));let u=Rm(t);for(let e in u)_h(l,e,u[e]);c||_h(l,`pointer-events`,s),_h(l,`clip-path`,t.clip?Ad(this,t,t.group):null);let d=null,f=0,p=e=>{let t=this.isDirty(e),n=lh(e,l,d,o.tag,i);t&&(this._update(o,n,e),c&&ch(this,n,e,r)),d=n,++f};return o.nested?t.items.length&&p(t.items[0]):wf(t,p),jp(l,f),l}_update(e,t,n){dh=t,fh=t.__values__,Lm(mh,n),e.attr(mh,n,this);let r=ph[e.type];r&&r.call(this,e,t,n),dh&&this.style(dh,n)}style(e,t){if(t!=null){for(let n in Qm){let r=n===`font`?cp(t):t[n];if(r===fh[n])continue;let i=Qm[n];r==null?e.removeAttribute(i):(ou(r)&&(r=su(r,this._defs.gradient,yh())),e.setAttribute(i,r+``)),fh[n]=r}for(let n in $m)hh(e,$m[n],t[n])}}defs(){let e=this._svg,t=this._defs,n=t.el,r=0;for(let i in t.gradient)n||(t.el=n=Ap(e,1,`defs`,rh)),r=oh(n,t.gradient[i],r);for(let i in t.clipping)n||(t.el=n=Ap(e,1,`defs`,rh)),r=sh(n,t.clipping[i],r);n&&(r===0?(e.removeChild(n),t.el=null):jp(n,r))}_clearDefs(){let e=this._defs;e.gradient={},e.clipping={}}};function ah(e,t){for(;e&&e.dirty!==t;e=e.mark.group)if(e.dirty=t,e.mark&&e.mark.dirty!==t)e.mark.dirty=t;else return}function oh(e,t,n){let r,i,a;if(t.gradient===`radial`){let r=Ap(e,n++,`pattern`,rh);gh(r,{id:au+t.id,viewBox:`0,0,1,1`,width:`100%`,height:`100%`,preserveAspectRatio:`xMidYMid slice`}),r=Ap(r,0,`rect`,rh),gh(r,{width:1,height:1,fill:`url(${yh()}#${t.id})`}),e=Ap(e,n++,`radialGradient`,rh),gh(e,{id:t.id,fx:t.x1,fy:t.y1,fr:t.r1,cx:t.x2,cy:t.y2,r:t.r2})}else e=Ap(e,n++,`linearGradient`,rh),gh(e,{id:t.id,x1:t.x1,x2:t.x2,y1:t.y1,y2:t.y2});for(r=0,i=t.stops.length;r<i;++r)a=Ap(e,r,`stop`,rh),a.setAttribute(`offset`,t.stops[r].offset),a.setAttribute(`stop-color`,t.stops[r].color);return jp(e,r),n}function sh(e,t,n){let r;return e=Ap(e,n,`clipPath`,rh),e.setAttribute(`id`,t.id),t.path?(r=Ap(e,0,`path`,rh),r.setAttribute(`d`,t.path)):(r=Ap(e,0,`rect`,rh),gh(r,{x:0,y:0,width:t.width,height:t.height})),jp(e,1),n+1}function ch(e,t,n,r){t=t.lastChild.previousSibling;let i,a=0;wf(n,n=>{i=e.mark(t,n,i,r),++a}),jp(t,1+a)}function lh(e,t,n,r,i){let a=e._svg,o;if(!a&&(o=t.ownerDocument,a=Op(o,r,rh),e._svg=a,e.mark&&(a.__data__=e,a.__values__={fill:`default`},r===`g`))){let t=Op(o,`path`,rh);a.appendChild(t),t.__data__=e;let n=Op(o,`g`,rh);a.appendChild(n),n.__data__=e;let r=Op(o,`path`,rh);a.appendChild(r),r.__data__=e,r.__values__={fill:`default`}}return(a.ownerSVGElement!==i||uh(a,n))&&t.insertBefore(a,n?n.nextSibling:t.firstChild),a}function uh(e,t){return e.parentNode&&e.parentNode.childNodes.length>1&&e.previousSibling!=t}var dh=null,fh=null,ph={group(e,t,n){let r=dh=t.childNodes[2];fh=r.__values__,e.foreground(mh,n,this),fh=t.__values__,dh=t.childNodes[1],e.content(mh,n,this);let i=dh=t.childNodes[0];e.background(mh,n,this);let a=n.mark.interactive===!1?`none`:null;if(a!==fh.events&&(_h(r,`pointer-events`,a),_h(i,`pointer-events`,a),fh.events=a),n.strokeForeground&&n.stroke){let e=n.fill;_h(r,`display`,null),this.style(i,n),_h(i,`stroke`,null),e&&(n.fill=null),fh=r.__values__,this.style(r,n),e&&(n.fill=e),dh=null}else _h(r,`display`,`none`)},image(e,t,n){n.smooth===!1?(hh(t,`image-rendering`,`optimizeSpeed`),hh(t,`image-rendering`,`pixelated`)):hh(t,`image-rendering`,null)},text(e,t,n){let r=ap(n),i,a,o,s;N(r)?(a=r.map(e=>sp(n,e)),i=a.join(`
|
|
2
|
+
`),i!==fh.text&&(jp(t,0),o=t.ownerDocument,s=ip(n),a.forEach((e,r)=>{let i=Op(o,`tspan`,rh);i.__data__=n,i.textContent=e,r&&(i.setAttribute(`x`,0),i.setAttribute(`dy`,s)),t.appendChild(i)}),fh.text=i)):(a=sp(n,r),a!==fh.text&&(t.textContent=a,fh.text=a)),_h(t,`font-family`,cp(n)),_h(t,`font-size`,rp(n)+`px`),_h(t,`font-style`,n.fontStyle),_h(t,`font-variant`,n.fontVariant),_h(t,`font-weight`,n.fontWeight)}};function mh(e,t,n){t!==fh[e]&&(n?vh(dh,e,t,n):_h(dh,e,t),fh[e]=t)}function hh(e,t,n){n!==fh[t]&&(n==null?e.style.removeProperty(t):e.style.setProperty(t,n+``),fh[t]=n)}function gh(e,t){for(let n in t)_h(e,n,t[n])}function _h(e,t,n){n==null?e.removeAttribute(t):e.setAttribute(t,n)}function vh(e,t,n,r){n==null?e.removeAttributeNS(r,t):e.setAttributeNS(r,t,n)}function yh(){let e;return typeof window>`u`?``:(e=window.location).hash?e.href.slice(0,-e.hash.length):e.href}var bh=class extends zp{constructor(e){super(e),this._text=null,this._defs={gradient:{},clipping:{}}}svg(){return this._text}_render(e){let t=Ym();t.open(`svg`,D({},Vf,{class:`marks`,width:this._width*this._scale,height:this._height*this._scale,viewBox:`0 0 ${this._width} ${this._height}`}));let n=this._bgcolor;return n&&n!==`transparent`&&n!==`none`&&t.open(`rect`,{width:this._width,height:this._height,fill:n}).close(),t.open(`g`,eh,{transform:`translate(`+this._origin+`)`}),this.mark(t,e),t.close(),this.defs(t),this._text=t.close()+``,this}mark(e,t){let n=vp[t.marktype],r=n.tag,i=[Lm,n.attr];e.open(`g`,{class:Mp(t),"clip-path":t.clip?Ad(this,t,t.group):null},Rm(t),{"pointer-events":r!==`g`&&t.interactive===!1?`none`:null});let a=a=>{let o=this.href(a);if(o&&e.open(`a`,o),e.open(r,this.attr(t,a,i,r===`g`?null:r)),r===`text`){let t=ap(a);if(N(t)){let n={x:0,dy:ip(a)};for(let r=0;r<t.length;++r)e.open(`tspan`,r?n:null).text(sp(a,t[r])).close()}else e.text(sp(a,t))}else if(r===`g`){let r=a.strokeForeground,i=a.fill,o=a.stroke;r&&o&&(a.stroke=null),e.open(`path`,this.attr(t,a,n.background,`bgrect`)).close(),e.open(`g`,this.attr(t,a,n.content)),wf(a,t=>this.mark(e,t)),e.close(),r&&o?(i&&(a.fill=null),a.stroke=o,e.open(`path`,this.attr(t,a,n.foreground,`bgrect`)).close(),i&&(a.fill=i)):e.open(`path`,this.attr(t,a,n.foreground,`bgfore`)).close()}e.close(),o&&e.close()};return n.nested?t.items&&t.items.length&&a(t.items[0]):wf(t,a),e.close()}href(e){let t=e.href,n;if(t){if(n=this._hrefs&&this._hrefs[t])return n;this.sanitizeURL(t).then(e=>{e[`xlink:href`]=e.href,e.href=null,(this._hrefs||={})[t]=e})}return null}attr(e,t,n,r){let i={},a=(e,t,n,r)=>{i[r||e]=t};return Array.isArray(n)?n.forEach(e=>e(a,t,this)):n(a,t,this),r&&xh(i,t,e,r,this._defs),i}defs(e){let t=this._defs.gradient,n=this._defs.clipping;if(Object.keys(t).length+Object.keys(n).length!==0){e.open(`defs`);for(let n in t){let r=t[n],i=r.stops;r.gradient===`radial`?(e.open(`pattern`,{id:au+n,viewBox:`0,0,1,1`,width:`100%`,height:`100%`,preserveAspectRatio:`xMidYMid slice`}),e.open(`rect`,{width:`1`,height:`1`,fill:`url(#`+n+`)`}).close(),e.close(),e.open(`radialGradient`,{id:n,fx:r.x1,fy:r.y1,fr:r.r1,cx:r.x2,cy:r.y2,r:r.r2})):e.open(`linearGradient`,{id:n,x1:r.x1,x2:r.x2,y1:r.y1,y2:r.y2});for(let t=0;t<i.length;++t)e.open(`stop`,{offset:i[t].offset,"stop-color":i[t].color}).close();e.close()}for(let t in n){let r=n[t];e.open(`clipPath`,{id:t}),r.path?e.open(`path`,{d:r.path}).close():e.open(`rect`,{x:0,y:0,width:r.width,height:r.height}).close(),e.close()}e.close()}}};function xh(e,t,n,r,i){let a;if(t==null||(r===`bgrect`&&n.interactive===!1&&(e[`pointer-events`]=`none`),r===`bgfore`&&(n.interactive===!1&&(e[`pointer-events`]=`none`),e.display=`none`,t.fill!==null)))return e;r===`image`&&t.smooth===!1&&(a=[`image-rendering: optimizeSpeed;`,`image-rendering: pixelated;`]),r===`text`&&(e[`font-family`]=cp(t),e[`font-size`]=rp(t)+`px`,e[`font-style`]=t.fontStyle,e[`font-variant`]=t.fontVariant,e[`font-weight`]=t.fontWeight);for(let n in Qm){let r=t[n],a=Qm[n];r===`transparent`&&(a===`fill`||a===`stroke`)||r!=null&&(ou(r)&&(r=su(r,i.gradient,``)),e[a]=r)}for(let e in $m){let n=t[e];n!=null&&(a||=[],a.push(`${$m[e]}: ${n};`))}return a&&(e.style=a.join(` `)),e}var Sh={svgMarkTypes:[`text`],svgOnTop:!0,debug:!1},Ch=class extends zp{constructor(e){super(e),this._svgRenderer=new ih(e),this._canvasRenderer=new Sm(e)}initialize(e,t,n,r,i){this._root_el=Ap(e,0,`div`);let a=Ap(this._root_el,0,`div`),o=Ap(this._root_el,1,`div`);return this._root_el.style.position=`relative`,Sh.debug||(a.style.height=`100%`,o.style.position=`absolute`,o.style.top=`0`,o.style.left=`0`,o.style.height=`100%`,o.style.width=`100%`),this._svgEl=Sh.svgOnTop?o:a,this._canvasEl=Sh.svgOnTop?a:o,this._svgEl.style.pointerEvents=`none`,this._canvasRenderer.initialize(this._canvasEl,t,n,r,i),this._svgRenderer.initialize(this._svgEl,t,n,r,i),super.initialize(e,t,n,r,i)}dirty(e){return Sh.svgMarkTypes.includes(e.mark.marktype)?this._svgRenderer.dirty(e):this._canvasRenderer.dirty(e),this}_render(e,t){let n=(t??[`arc`,`area`,`image`,`line`,`path`,`rect`,`rule`,`shape`,`symbol`,`text`,`trail`]).filter(e=>!Sh.svgMarkTypes.includes(e));this._svgRenderer.render(e,Sh.svgMarkTypes),this._canvasRenderer.render(e,n)}resize(e,t,n,r){return super.resize(e,t,n,r),this._svgRenderer.resize(e,t,n,r),this._canvasRenderer.resize(e,t,n,r),this}background(e){return Sh.svgOnTop?this._canvasRenderer.background(e):this._svgRenderer.background(e),this}},wh=class extends pm{constructor(e,t){super(e,t)}initialize(e,t,n){let r=Ap(Ap(e,0,`div`),+!Sh.svgOnTop,`div`);return super.initialize(r,t,n)}},Th=`canvas`,Eh=`hybrid`,Dh=`png`,Oh=`svg`,kh=`none`,Ah={Canvas:Th,PNG:Dh,SVG:Oh,Hybrid:Eh,None:kh},jh={};jh[Th]=jh[Dh]={renderer:Sm,headless:Sm,handler:pm},jh[Oh]={renderer:ih,headless:bh,handler:Tm},jh[Eh]={renderer:Ch,headless:Ch,handler:wh},jh[kh]={};function Mh(e,t){return e=String(e||``).toLowerCase(),arguments.length>1?(jh[e]=t,this):jh[e]}function Nh(e,t,n){let r=[],i=new jd().union(t),a=e.marktype;return a?Ph(e,i,n,r):a===`group`?Ih(e,i,n,r):j(`Intersect scene must be mark node or group item.`)}function Ph(e,t,n,r){if(Fh(e,t,n)){let i=e.items,a=e.marktype,o=i.length,s=0;if(a===`group`)for(;s<o;++s)Ih(i[s],t,n,r);else for(let e=vp[a].isect;s<o;++s){let n=i[s];Lh(n,t,e)&&r.push(n)}}return r}function Fh(e,t,n){return e.bounds&&t.intersects(e.bounds)&&(e.marktype===`group`||e.interactive!==!1&&(!n||n(e)))}function Ih(e,t,n,r){n&&n(e.mark)&&Lh(e,t,vp.group.isect)&&r.push(e);let i=e.items,a=i&&i.length;if(a){let o=e.x||0,s=e.y||0;t.translate(-o,-s);for(let e=0;e<a;++e)Ph(i[e],t,n,r);t.translate(o,s)}return r}function Lh(e,t,n){let r=e.bounds;return t.encloses(r)||t.intersects(r)&&n(e,t)}var Rh=new jd;function zh(e){let t=e.clip;if(m(t))t(tf(Rh.clear()));else if(t)Rh.set(0,0,e.group.width,e.group.height);else return;e.bounds.intersect(Rh)}var Bh=t({bound:()=>wg,identifier:()=>Dg,mark:()=>kg,overlap:()=>jg,render:()=>zg,viewlayout:()=>h_}),Vh=`top`,Hh=`left`,Uh=`right`,Wh=`bottom`,Gh=`top-left`,Kh=`top-right`,qh=`bottom-left`,Jh=`bottom-right`,Yh=`start`,Xh=`middle`,Zh=`end`,Qh=`x`,$h=`y`,eg=`group`,tg=`axis`,ng=`title`,rg=`frame`,ig=`scope`,ag=`legend`,og=`row-header`,sg=`row-footer`,cg=`row-title`,lg=`column-header`,ug=`column-footer`,dg=`column-title`,fg=`padding`,pg=`symbol`,mg=`fit`,hg=`fit-x`,gg=`fit-y`,_g=`pad`,vg=`none`,yg=`all`,bg=`each`,xg=`flush`,Sg=`column`,Cg=`row`;function wg(e){L.call(this,null,e)}F(wg,L,{transform(e,t){let n=t.dataflow,r=e.mark,i=r.marktype,a=vp[i],o=a.bound,s=r.bounds,c;if(a.nested)r.items.length&&n.dirty(r.items[0]),s=Tg(r,o),r.items.forEach(e=>{e.bounds.clear().union(s)});else if(i===eg||e.modified())switch(t.visit(t.MOD,e=>n.dirty(e)),s.clear(),r.items.forEach(e=>s.union(Tg(e,o))),r.role){case tg:case ag:case ng:t.reflow()}else c=t.changed(t.REM),t.visit(t.ADD,e=>{s.union(Tg(e,o))}),t.visit(t.MOD,e=>{c||=s.alignsWith(e.bounds),n.dirty(e),s.union(Tg(e,o))}),c&&(s.clear(),r.items.forEach(e=>s.union(e.bounds)));return zh(r),t.modifies(`bounds`)}});function Tg(e,t,n){return t(e.bounds.clear(),e,n)}var Eg=`:vega_identifier:`;function Dg(e){L.call(this,0,e)}Dg.Definition={type:`Identifier`,metadata:{modifies:!0},params:[{name:`as`,type:`string`,required:!0}]},F(Dg,L,{transform(e,t){let n=Og(t.dataflow),r=e.as,i=n.value;return t.visit(t.ADD,e=>e[r]=e[r]||++i),n.set(this.value=i),t}});function Og(e){return e._signals[Eg]||(e._signals[Eg]=e.add(0))}function kg(e){L.call(this,null,e)}F(kg,L,{transform(e,t){let n=this.value;n||(n=t.dataflow.scenegraph().mark(e.markdef,Ag(e),e.index),n.group.context=e.context,e.context.group||(e.context.group=n.group),n.source=this.source,n.clip=e.clip,n.interactive=e.interactive,this.value=n);let r=n.marktype===eg?Nd:Md;return t.visit(t.ADD,e=>r.call(e,n)),(e.modified(`clip`)||e.modified(`interactive`))&&(n.clip=e.clip,n.interactive=!!e.interactive,n.zdirty=!0,t.reflow()),n.items=t.source,t}});function Ag(e){let t=e.groups,n=e.parent;return t&&t.size===1?t.get(Object.keys(t.object)[0]):t&&n?t.lookup(n):null}function jg(e){L.call(this,null,e)}var Mg={parity:e=>e.filter((e,t)=>t%2?e.opacity=0:1),greedy:(e,t)=>{let n;return e.filter((e,r)=>!r||!Ng(n.bounds,e.bounds,t)?(n=e,1):e.opacity=0)}},Ng=(e,t,n)=>n>Math.max(t.x1-e.x2,e.x1-t.x2,t.y1-e.y2,e.y1-t.y2),Pg=(e,t)=>{for(var n=1,r=e.length,i=e[0].bounds,a;n<r;i=a,++n)if(Ng(i,a=e[n].bounds,t))return!0},Fg=e=>{let t=e.bounds;return t.width()>1&&t.height()>1},Ig=(e,t,n)=>{var r=e.range(),i=new jd;return t===Vh||t===Wh?i.set(r[0],-1/0,r[1],1/0):i.set(-1/0,r[0],1/0,r[1]),i.expand(n||1),e=>i.encloses(e.bounds)},Lg=e=>(e.forEach(e=>e.opacity=1),e),Rg=(e,t)=>e.reflow(t.modified()).modifies(`opacity`);F(jg,L,{transform(e,t){let n=Mg[e.method]||Mg.parity,r=e.separation||0,i=t.materialize(t.SOURCE).source,a,o;if(!i||!i.length)return;if(!e.method)return e.modified(`method`)&&(Lg(i),t=Rg(t,e)),t;if(i=i.filter(Fg),!i.length)return;if(e.sort&&(i=i.slice().sort(e.sort)),a=Lg(i),t=Rg(t,e),a.length>=3&&Pg(a,r)){do a=n(a,r);while(a.length>=3&&Pg(a,r));a.length<3&&!A(i).opacity&&(a.length>1&&(A(a).opacity=0),A(i).opacity=1)}e.boundScale&&e.boundTolerance>=0&&(o=Ig(e.boundScale,e.boundOrient,+e.boundTolerance),i.forEach(e=>{o(e)||(e.opacity=0)}));let s=a[0].mark.bounds.clear();return i.forEach(e=>{e.opacity&&s.union(e.bounds)}),t}});function zg(e){L.call(this,null,e)}F(zg,L,{transform(e,t){let n=t.dataflow;if(t.visit(t.ALL,e=>n.dirty(e)),t.fields&&t.fields.zindex){let e=t.source&&t.source[0];e&&(e.mark.zdirty=!0)}}});var Bg=new jd;function Vg(e,t,n){return e[t]===n?0:(e[t]=n,1)}function Hg(e){var t=e.items[0].orient;return t===Hh||t===Uh}function Ug(e){let t=+e.grid;return[e.ticks?t++:-1,e.labels?t++:-1,t+ +e.domain]}function Wg(e,t,n,r){var i=t.items[0],a=i.datum,o=i.translate==null?.5:i.translate,s=i.orient,c=Ug(a),l=i.range,u=i.offset,d=i.position,f=i.minExtent,p=i.maxExtent,m=a.title&&i.items[c[2]].items[0],h=i.titlePadding,g=i.bounds,_=m&&op(m),v=0,y=0,b,x;switch(Bg.clear().union(g),g.clear(),(b=c[0])>-1&&g.union(i.items[b].bounds),(b=c[1])>-1&&g.union(i.items[b].bounds),s){case Vh:v=d||0,y=-u,x=Math.max(f,Math.min(p,-g.y1)),g.add(0,-x).add(l,0),m&&Gg(e,m,x,h,_,0,-1,g);break;case Hh:v=-u,y=d||0,x=Math.max(f,Math.min(p,-g.x1)),g.add(-x,0).add(0,l),m&&Gg(e,m,x,h,_,1,-1,g);break;case Uh:v=n+u,y=d||0,x=Math.max(f,Math.min(p,g.x2)),g.add(0,0).add(x,l),m&&Gg(e,m,x,h,_,1,1,g);break;case Wh:v=d||0,y=r+u,x=Math.max(f,Math.min(p,g.y2)),g.add(0,0).add(l,x),m&&Gg(e,m,x,h,0,0,1,g);break;default:v=i.x,y=i.y}return Ld(g.translate(v,y),i),Vg(i,`x`,v+o)|Vg(i,`y`,y+o)&&(i.bounds=Bg,e.dirty(i),i.bounds=g,e.dirty(i)),i.mark.bounds.clear().union(g)}function Gg(e,t,n,r,i,a,o,s){let c=t.bounds;if(t.auto){let s=o*(n+i+r),l=0,u=0;e.dirty(t),a?l=(t.x||0)-(t.x=s):u=(t.y||0)-(t.y=s),t.mark.bounds.clear().union(c.translate(-l,-u)),e.dirty(t)}s.union(c)}var Kg=(e,t)=>Math.floor(Math.min(e,t)),qg=(e,t)=>Math.ceil(Math.max(e,t));function Jg(e){var t=e.items,n=t.length,r=0,i,a;let o={marks:[],rowheaders:[],rowfooters:[],colheaders:[],colfooters:[],rowtitle:null,coltitle:null};for(;r<n;++r)if(i=t[r],a=i.items,i.marktype===eg)switch(i.role){case tg:case ag:case ng:break;case og:o.rowheaders.push(...a);break;case sg:o.rowfooters.push(...a);break;case lg:o.colheaders.push(...a);break;case ug:o.colfooters.push(...a);break;case cg:o.rowtitle=a[0];break;case dg:o.coltitle=a[0];break;default:o.marks.push(...a)}return o}function Yg(e){return new jd().set(0,0,e.width||0,e.height||0)}function Xg(e){let t=e.bounds.clone();return t.empty()?t.set(0,0,0,0):t.translate(-(e.x||0),-(e.y||0))}function Zg(e,t,n){return(M(e)?e[t]:e)??(n===void 0?0:n)}function Qg(e){return e<0?Math.ceil(-e):0}function $g(e,t,n){var r=!n.nodirty,i=n.bounds===xg?Yg:Xg,a=Bg.set(0,0,0,0),o=Zg(n.align,Sg),s=Zg(n.align,Cg),c=Zg(n.padding,Sg),l=Zg(n.padding,Cg),u=n.columns||t.length,d=u<=0?1:Math.ceil(t.length/u),f=t.length,p=Array(f),m=Array(u),h=0,g=Array(f),_=Array(d),v=0,y=Array(f),b=Array(f),x=Array(f),S,C,w,T,E,D,O,k,A,ee,te;for(C=0;C<u;++C)m[C]=0;for(C=0;C<d;++C)_[C]=0;for(C=0;C<f;++C)D=t[C],E=x[C]=i(D),D.x=D.x||0,y[C]=0,D.y=D.y||0,b[C]=0,w=C%u,T=~~(C/u),h=Math.max(h,O=Math.ceil(E.x2)),v=Math.max(v,k=Math.ceil(E.y2)),m[w]=Math.max(m[w],O),_[T]=Math.max(_[T],k),p[C]=c+Qg(E.x1),g[C]=l+Qg(E.y1),r&&e.dirty(t[C]);for(C=0;C<f;++C)C%u===0&&(p[C]=0),C<u&&(g[C]=0);if(o===bg)for(w=1;w<u;++w){for(te=0,C=w;C<f;C+=u)te<p[C]&&(te=p[C]);for(C=w;C<f;C+=u)p[C]=te+m[w-1]}else if(o===yg){for(te=0,C=0;C<f;++C)C%u&&te<p[C]&&(te=p[C]);for(C=0;C<f;++C)C%u&&(p[C]=te+h)}else for(o=!1,w=1;w<u;++w)for(C=w;C<f;C+=u)p[C]+=m[w-1];if(s===bg)for(T=1;T<d;++T){for(te=0,C=T*u,S=C+u;C<S;++C)te<g[C]&&(te=g[C]);for(C=T*u;C<S;++C)g[C]=te+_[T-1]}else if(s===yg){for(te=0,C=u;C<f;++C)te<g[C]&&(te=g[C]);for(C=u;C<f;++C)g[C]=te+v}else for(s=!1,T=1;T<d;++T)for(C=T*u,S=C+u;C<S;++C)g[C]+=_[T-1];for(A=0,C=0;C<f;++C)A=p[C]+(C%u?A:0),y[C]+=A-t[C].x;for(w=0;w<u;++w)for(ee=0,C=w;C<f;C+=u)ee+=g[C],b[C]+=ee-t[C].y;if(o&&Zg(n.center,Sg)&&d>1)for(C=0;C<f;++C)E=o===yg?h:m[C%u],A=E-x[C].x2-t[C].x-y[C],A>0&&(y[C]+=A/2);if(s&&Zg(n.center,Cg)&&u!==1)for(C=0;C<f;++C)E=s===yg?v:_[~~(C/u)],ee=E-x[C].y2-t[C].y-b[C],ee>0&&(b[C]+=ee/2);for(C=0;C<f;++C)a.union(x[C].translate(y[C],b[C]));switch(A=Zg(n.anchor,Qh),ee=Zg(n.anchor,$h),Zg(n.anchor,Sg)){case Zh:A-=a.width();break;case Xh:A-=a.width()/2}switch(Zg(n.anchor,Cg)){case Zh:ee-=a.height();break;case Xh:ee-=a.height()/2}for(A=Math.round(A),ee=Math.round(ee),a.clear(),C=0;C<f;++C)t[C].mark.bounds.clear();for(C=0;C<f;++C)D=t[C],D.x+=y[C]+=A,D.y+=b[C]+=ee,a.union(D.mark.bounds.union(D.bounds.translate(y[C],b[C]))),r&&e.dirty(D);return a}function e_(e,t,n){var r=Jg(t),i=r.marks,a=n.bounds===xg?t_:n_,o=n.offset,s=n.columns||i.length,c=s<=0?1:Math.ceil(i.length/s),l=c*s,u,d,f,p,m,h,g;let _=$g(e,i,n);_.empty()&&_.set(0,0,0,0),r.rowheaders&&(h=Zg(n.headerBand,Cg,null),u=r_(e,r.rowheaders,i,s,c,-Zg(o,`rowHeader`),Kg,0,a,`x1`,0,s,1,h)),r.colheaders&&(h=Zg(n.headerBand,Sg,null),d=r_(e,r.colheaders,i,s,s,-Zg(o,`columnHeader`),Kg,1,a,`y1`,0,1,s,h)),r.rowfooters&&(h=Zg(n.footerBand,Cg,null),f=r_(e,r.rowfooters,i,s,c,Zg(o,`rowFooter`),qg,0,a,`x2`,s-1,s,1,h)),r.colfooters&&(h=Zg(n.footerBand,Sg,null),p=r_(e,r.colfooters,i,s,s,Zg(o,`columnFooter`),qg,1,a,`y2`,l-s,1,s,h)),r.rowtitle&&(m=Zg(n.titleAnchor,Cg),g=Zg(o,`rowTitle`),g=m===Zh?f+g:u-g,h=Zg(n.titleBand,Cg,.5),i_(e,r.rowtitle,g,0,_,h)),r.coltitle&&(m=Zg(n.titleAnchor,Sg),g=Zg(o,`columnTitle`),g=m===Zh?p+g:d-g,h=Zg(n.titleBand,Sg,.5),i_(e,r.coltitle,g,1,_,h))}function t_(e,t){return t===`x1`?e.x||0:t===`y1`?e.y||0:t===`x2`?(e.x||0)+(e.width||0):t===`y2`?(e.y||0)+(e.height||0):void 0}function n_(e,t){return e.bounds[t]}function r_(e,t,n,r,i,a,o,s,c,l,u,d,f,p){var m=n.length,h=0,g=0,_,v,y,b,x,S,C,w,T;if(!m)return h;for(_=u;_<m;_+=d)n[_]&&(h=o(h,c(n[_],l)));if(!t.length)return h;for(t.length>i&&(e.warn(`Grid headers exceed limit: `+i),t=t.slice(0,i)),h+=a,v=0,b=t.length;v<b;++v)e.dirty(t[v]),t[v].mark.bounds.clear();for(_=u,v=0,b=t.length;v<b;++v,_+=d){for(S=t[v],x=S.mark.bounds,y=_;y>=0&&(C=n[y])==null;y-=f);s?(w=p==null?C.x:Math.round(C.bounds.x1+p*C.bounds.width()),T=h):(w=h,T=p==null?C.y:Math.round(C.bounds.y1+p*C.bounds.height())),x.union(S.bounds.translate(w-(S.x||0),T-(S.y||0))),S.x=w,S.y=T,e.dirty(S),g=o(g,x[l])}return g}function i_(e,t,n,r,i,a){if(t){e.dirty(t);var o=n,s=n;r?o=Math.round(i.x1+a*i.width()):s=Math.round(i.y1+a*i.height()),t.bounds.translate(o-(t.x||0),s-(t.y||0)),t.mark.bounds.clear().union(t.bounds),t.x=o,t.y=s,e.dirty(t)}}function a_(e,t){let n=e[t]||{};return(t,r)=>n[t]==null?e[t]==null?r:e[t]:n[t]}function o_(e,t){let n=-1/0;return e.forEach(e=>{e.offset!=null&&(n=Math.max(n,e.offset))}),n>-1/0?n:t}function s_(e,t,n,r,i,a,o){let s=a_(n,t),c=o_(e,s(`offset`,0)),l=s(`anchor`,Yh),u=l===Zh?1:l===Xh?.5:0,d={align:bg,bounds:s(`bounds`,xg),columns:s(`direction`)===`vertical`?1:e.length,padding:s(`margin`,8),center:s(`center`),nodirty:!0};switch(t){case Hh:d.anchor={x:Math.floor(r.x1)-c,column:Zh,y:u*(o||r.height()+2*r.y1),row:l};break;case Uh:d.anchor={x:Math.ceil(r.x2)+c,y:u*(o||r.height()+2*r.y1),row:l};break;case Vh:d.anchor={y:Math.floor(i.y1)-c,row:Zh,x:u*(a||i.width()+2*i.x1),column:l};break;case Wh:d.anchor={y:Math.ceil(i.y2)+c,x:u*(a||i.width()+2*i.x1),column:l};break;case Gh:d.anchor={x:c,y:c};break;case Kh:d.anchor={x:a-c,y:c,column:Zh};break;case qh:d.anchor={x:c,y:o-c,row:Zh};break;case Jh:d.anchor={x:a-c,y:o-c,column:Zh,row:Zh}}return d}function c_(e,t){var n=t.items[0],r=n.datum,i=n.orient,a=n.bounds,o=n.x,s=n.y,c,l;return n._bounds?n._bounds.clear().union(a):n._bounds=a.clone(),a.clear(),u_(e,n,n.items[0].items[0]),a=l_(n,a),c=2*n.padding,l=2*n.padding,a.empty()||(c=Math.ceil(a.width()+c),l=Math.ceil(a.height()+l)),r.type===pg&&p_(n.items[0].items[0].items[0].items),i!==vg&&(n.x=o=0,n.y=s=0),n.width=c,n.height=l,Ld(a.set(o,s,o+c,s+l),n),n.mark.bounds.clear().union(a),n}function l_(e,t){return e.items.forEach(e=>t.union(e.bounds)),t.x1=e.padding,t.y1=e.padding,t}function u_(e,t,n){var r=t.padding,i=r-n.x,a=r-n.y;if(!t.datum.title)(i||a)&&f_(e,n,i,a);else{var o=t.items[1].items[0],s=o.anchor,c=t.titlePadding||0,l=r-o.x,u=r-o.y;switch(o.orient){case Hh:i+=Math.ceil(o.bounds.width())+c;break;case Uh:case Wh:break;default:a+=o.bounds.height()+c}switch((i||a)&&f_(e,n,i,a),o.orient){case Hh:u+=d_(t,n,o,s,1,1);break;case Uh:l+=d_(t,n,o,Zh,0,0)+c,u+=d_(t,n,o,s,1,1);break;case Wh:l+=d_(t,n,o,s,0,0),u+=d_(t,n,o,Zh,-1,0,1)+c;break;default:l+=d_(t,n,o,s,0,0)}(l||u)&&f_(e,o,l,u),(l=Math.round(o.bounds.x1-r))<0&&(f_(e,n,-l,0),f_(e,o,-l,0))}}function d_(e,t,n,r,i,a,o){let s=e.datum.type!==`symbol`,c=n.datum.vgrad,l=(s&&(a||!c)&&!o?t.items[0]:t).bounds[i?`y2`:`x2`]-e.padding,u=c&&a?l:0,d=c&&a?0:l,f=i<=0?0:op(n);return Math.round(r===Yh?u:r===Zh?d-f:.5*(l-f))}function f_(e,t,n,r){t.x+=n,t.y+=r,t.bounds.translate(n,r),t.mark.bounds.translate(n,r),e.dirty(t)}function p_(e){let t=e.reduce((e,t)=>(e[t.column]=Math.max(t.bounds.x2-t.x,e[t.column]||0),e),{});e.forEach(e=>{e.width=t[e.column],e.height=e.bounds.y2-e.y})}function m_(e,t,n,r,i){var a=t.items[0],o=a.frame,s=a.orient,c=a.anchor,l=a.offset,u=a.padding,d=a.items[0].items[0],f=a.items[1]&&a.items[1].items[0],p=s===Hh||s===Uh?r:n,m=0,h=0,g=0,_=0,v=0,y;if(o===eg?s===Hh&&(m=r,p=0):s===Hh?(m=i.y2,p=i.y1):s===Uh?(m=i.y1,p=i.y2):(m=i.x1,p=i.x2),y=c===Yh?m:c===Zh?p:(m+p)/2,f&&f.text){switch(s){case Vh:case Wh:v=d.bounds.height()+u;break;case Hh:_=d.bounds.width()+u;break;case Uh:_=-d.bounds.width()-u}Bg.clear().union(f.bounds),Bg.translate(_-(f.x||0),v-(f.y||0)),Vg(f,`x`,_)|Vg(f,`y`,v)&&(e.dirty(f),f.bounds.clear().union(Bg),f.mark.bounds.clear().union(Bg),e.dirty(f)),Bg.clear().union(f.bounds)}else Bg.clear();switch(Bg.union(d.bounds),s){case Vh:h=y,g=i.y1-Bg.height()-l;break;case Hh:h=i.x1-Bg.width()-l,g=y;break;case Uh:h=i.x2+Bg.width()+l,g=y;break;case Wh:h=y,g=i.y2+l;break;default:h=a.x,g=a.y}return Vg(a,`x`,h)|Vg(a,`y`,g)&&(Bg.translate(h,g),e.dirty(a),a.bounds.clear().union(Bg),t.bounds.clear().union(Bg),e.dirty(a)),a.bounds}function h_(e){L.call(this,null,e)}F(h_,L,{transform(e,t){let n=t.dataflow;return e.mark.items.forEach(t=>{e.layout&&e_(n,t,e.layout),__(n,t,e)}),g_(e.mark.group)?t.reflow():t}});function g_(e){return e&&e.mark.role!==`legend-entry`}function __(e,t,n){var r=t.items,i=Math.max(0,t.width||0),a=Math.max(0,t.height||0),o=new jd().set(0,0,i,a),s=o.clone(),c=o.clone(),l=[],u,d,f,p,m,h;for(m=0,h=r.length;m<h;++m)switch(d=r[m],d.role){case tg:p=Hg(d)?s:c,p.union(Wg(e,d,i,a));break;case ng:u=d;break;case ag:l.push(c_(e,d));break;case rg:case ig:case og:case sg:case cg:case lg:case ug:case dg:s.union(d.bounds),c.union(d.bounds);break;default:o.union(d.bounds)}if(l.length){let t={};l.forEach(e=>{f=e.orient||Uh,f!==vg&&(t[f]||(t[f]=[])).push(e)});for(let r in t){let o=t[r];$g(e,o,s_(o,r,n.legends,s,c,i,a))}l.forEach(t=>{let r=t.bounds;if(r.equals(t._bounds)||(t.bounds=t._bounds,e.dirty(t),t.bounds=r,e.dirty(t)),n.autosize&&(n.autosize.type===mg||n.autosize.type===hg||n.autosize.type===gg))switch(t.orient){case Hh:case Uh:o.add(r.x1,0).add(r.x2,0);break;case Vh:case Wh:o.add(0,r.y1).add(0,r.y2)}else o.union(r)})}o.union(s).union(c),u&&o.union(m_(e,u,i,a,o)),t.clip&&o.set(0,0,t.width||0,t.height||0),v_(e,t,o,n)}function v_(e,t,n,r){let i=r.autosize||{},a=i.type;if(e._autosize<1||!a)return;let o=e._width,s=e._height,c=Math.max(0,t.width||0),l=Math.max(0,Math.ceil(-n.x1)),u=Math.max(0,t.height||0),d=Math.max(0,Math.ceil(-n.y1)),f=Math.max(0,Math.ceil(n.x2-c)),p=Math.max(0,Math.ceil(n.y2-u));if(i.contains===fg){let t=e.padding();o-=t.left+t.right,s-=t.top+t.bottom}a===vg?(l=0,d=0,c=o,u=s):a===mg?(c=Math.max(0,o-l-f),u=Math.max(0,s-d-p)):a===hg?(c=Math.max(0,o-l-f),s=u+d+p):a===gg?(o=c+l+f,u=Math.max(0,s-d-p)):a===_g&&(o=c+l+f,s=u+d+p),e._resizeView(o,s,c,u,[l,d],i.resize)}var y_=t({axisticks:()=>b_,datajoin:()=>x_,encode:()=>w_,legendentries:()=>T_,linkpath:()=>A_,pie:()=>L_,scale:()=>H_,sortitems:()=>tv,stack:()=>ov});function b_(e){L.call(this,null,e)}F(b_,L,{transform(e,t){if(this.value&&!e.modified())return t.StopPropagation;var n=t.dataflow.locale(),r=t.fork(t.NO_SOURCE|t.NO_FIELDS),i=this.value,a=e.scale,o=Ul(a,e.count==null?e.values?e.values.length:10:e.count,e.minstep),s=e.format||Kl(n,a,o,e.formatSpecifier,e.formatType,!!e.values),c=e.values?Wl(a,e.values,o):Gl(a,o);return i&&(r.rem=i),i=c.map((e,t)=>Zr({index:t/(c.length-1||1),value:e,label:s(e)})),e.extra&&i.length&&i.push(Zr({index:-1,extra:{value:i[0].value},label:``})),r.source=i,r.add=i,this.value=i,r}});function x_(e){L.call(this,null,e)}function S_(){return Zr({})}function C_(e){let t=pr().test(e=>e.exit);return t.lookup=n=>t.get(e(n)),t}F(x_,L,{transform(e,t){var n=t.dataflow,r=t.fork(t.NO_SOURCE|t.NO_FIELDS),i=e.item||S_,a=e.key||I,o=this.value;return N(r.encode)&&(r.encode=null),o&&(e.modified(`key`)||t.modified(a))&&j(`DataJoin does not support modified key function or fields.`),o||(t=t.addAll(),this.value=o=C_(a)),t.visit(t.ADD,e=>{let t=a(e),n=o.get(t);n?n.exit?(o.empty--,r.add.push(n)):r.mod.push(n):(n=i(e),o.set(t,n),r.add.push(n)),n.datum=e,n.exit=!1}),t.visit(t.MOD,e=>{let t=a(e),n=o.get(t);n&&(n.datum=e,r.mod.push(n))}),t.visit(t.REM,e=>{let t=a(e),n=o.get(t);e===n.datum&&!n.exit&&(r.rem.push(n),n.exit=!0,++o.empty)}),t.changed(t.ADD_MOD)&&r.modifies(`datum`),(t.clean()||e.clean&&o.empty>n.cleanThreshold)&&n.runAfter(o.clean),r}});function w_(e){L.call(this,null,e)}F(w_,L,{transform(e,t){var n=t.fork(t.ADD_REM),r=e.mod||!1,i=e.encoders,a=t.encode;if(N(a)){if(n.changed()||a.every(e=>i[e]))a=a[0],n.encode=null;else return t.StopPropagation}var o=a===`enter`,s=i.update||Te,c=i.enter||Te,l=i.exit||Te,u=(a&&!o?i[a]:s)||Te;if(t.changed(t.ADD)&&(t.visit(t.ADD,t=>{c(t,e),s(t,e)}),n.modifies(c.output),n.modifies(s.output),u!==Te&&u!==s&&(t.visit(t.ADD,t=>{u(t,e)}),n.modifies(u.output))),t.changed(t.REM)&&l!==Te&&(t.visit(t.REM,t=>{l(t,e)}),n.modifies(l.output)),o||u!==Te){let i=t.MOD|(e.modified()?t.REFLOW:0);o?(t.visit(i,t=>{let i=c(t,e)||r;(u(t,e)||i)&&n.mod.push(t)}),n.mod.length&&n.modifies(c.output)):t.visit(i,t=>{(u(t,e)||r)&&n.mod.push(t)}),n.mod.length&&n.modifies(u.output)}return n.changed()?n:t.StopPropagation}});function T_(e){L.call(this,[],e)}F(T_,L,{transform(e,t){if(this.value!=null&&!e.modified())return t.StopPropagation;var n=t.dataflow.locale(),r=t.fork(t.NO_SOURCE|t.NO_FIELDS),i=this.value,a=e.type||`symbol`,o=e.scale,s=+e.limit,c=Ul(o,e.count==null?5:e.count,e.minstep),l=!!e.values||a===`symbol`,u=e.format||Zl(n,o,c,a,e.formatSpecifier,e.formatType,l),f=e.values||Xl(o,c),p,h,g,_,v;return i&&(r.rem=i),a===`symbol`?(s&&f.length>s?(t.dataflow.warn(`Symbol legend count exceeds limit, filtering items.`),i=f.slice(0,s-1),v=!0):i=f,m(g=e.size)?(!e.values&&o(i[0])===0&&(i=i.slice(1)),_=i.reduce((t,n)=>Math.max(t,g(n,e)),0)):g=d(_=g||8),i=i.map((t,n)=>Zr({index:n,label:u(t,n,i),value:t,offset:_,size:g(t,e)})),v&&(v=f[i.length],i.push(Zr({index:i.length,label:`\u2026${f.length-i.length} entries`,value:v,offset:_,size:g(v,e)})))):a===`gradient`?(p=o.domain(),h=Ll(o,p[0],A(p)),f.length<3&&!e.values&&p[0]!==A(p)&&(f=[p[0],A(p)]),i=f.map((e,t)=>Zr({index:t,label:u(e,t,f),value:e,perc:h(e)}))):(g=f.length-1,h=tu(o),i=f.map((e,t)=>Zr({index:t,label:u(e,t,f),value:e,perc:t?h(e):0,perc2:t===g?1:h(f[t+1])}))),r.source=i,r.add=i,this.value=i,r}});var E_=e=>e.source.x,D_=e=>e.source.y,O_=e=>e.target.x,k_=e=>e.target.y;function A_(e){L.call(this,{},e)}A_.Definition={type:`LinkPath`,metadata:{modifies:!0},params:[{name:`sourceX`,type:`field`,default:`source.x`},{name:`sourceY`,type:`field`,default:`source.y`},{name:`targetX`,type:`field`,default:`target.x`},{name:`targetY`,type:`field`,default:`target.y`},{name:`orient`,type:`enum`,default:`vertical`,values:[`horizontal`,`vertical`,`radial`]},{name:`shape`,type:`enum`,default:`line`,values:[`line`,`arc`,`curve`,`diagonal`,`orthogonal`]},{name:`require`,type:`signal`},{name:`as`,type:`string`,default:`path`}]},F(A_,L,{transform(e,t){var n=e.sourceX||E_,r=e.sourceY||D_,i=e.targetX||O_,a=e.targetY||k_,o=e.as||`path`,s=e.orient||`vertical`,c=e.shape||`line`,l=I_.get(c+`-`+s)||I_.get(c);return l||j(`LinkPath unsupported type: `+e.shape+(e.orient?`-`+e.orient:``)),t.visit(t.SOURCE,e=>{e[o]=l(n(e),r(e),i(e),a(e))}),t.reflow(e.modified()).modifies(o)}});var j_=(e,t,n,r)=>`M`+e+`,`+t+`L`+n+`,`+r,M_=(e,t,n,r)=>j_(t*Math.cos(e),t*Math.sin(e),r*Math.cos(n),r*Math.sin(n)),N_=(e,t,n,r)=>{var i=n-e,a=r-t,o=Math.hypot(i,a)/2,s=180*Math.atan2(a,i)/Math.PI;return`M`+e+`,`+t+`A`+o+`,`+o+` `+s+` 0 1 `+n+`,`+r},P_=(e,t,n,r)=>N_(t*Math.cos(e),t*Math.sin(e),r*Math.cos(n),r*Math.sin(n)),F_=(e,t,n,r)=>{let i=n-e,a=r-t,o=.2*(i+a),s=.2*(a-i);return`M`+e+`,`+t+`C`+(e+o)+`,`+(t+s)+` `+(n+s)+`,`+(r-o)+` `+n+`,`+r},I_=pr({line:j_,"line-radial":M_,arc:N_,"arc-radial":P_,curve:F_,"curve-radial":(e,t,n,r)=>F_(t*Math.cos(e),t*Math.sin(e),r*Math.cos(n),r*Math.sin(n)),"orthogonal-horizontal":(e,t,n,r)=>`M`+e+`,`+t+`V`+r+`H`+n,"orthogonal-vertical":(e,t,n,r)=>`M`+e+`,`+t+`H`+n+`V`+r,"orthogonal-radial":(e,t,n,r)=>{let i=Math.cos(e),a=Math.sin(e),o=Math.cos(n),s=Math.sin(n),c=Math.abs(n-e)>Math.PI?n<=e:n>e;return`M`+t*i+`,`+t*a+`A`+t+`,`+t+` 0 0,`+ +!!c+` `+t*o+`,`+t*s+`L`+r*o+`,`+r*s},"diagonal-horizontal":(e,t,n,r)=>{let i=(e+n)/2;return`M`+e+`,`+t+`C`+i+`,`+t+` `+i+`,`+r+` `+n+`,`+r},"diagonal-vertical":(e,t,n,r)=>{let i=(t+r)/2;return`M`+e+`,`+t+`C`+e+`,`+i+` `+n+`,`+i+` `+n+`,`+r},"diagonal-radial":(e,t,n,r)=>{let i=Math.cos(e),a=Math.sin(e),o=Math.cos(n),s=Math.sin(n),c=(t+r)/2;return`M`+t*i+`,`+t*a+`C`+c*i+`,`+c*a+` `+c*o+`,`+c*s+` `+r*o+`,`+r*s}});function L_(e){L.call(this,null,e)}L_.Definition={type:`Pie`,metadata:{modifies:!0},params:[{name:`field`,type:`field`},{name:`startAngle`,type:`number`,default:0},{name:`endAngle`,type:`number`,default:6.283185307179586},{name:`sort`,type:`boolean`,default:!1},{name:`as`,type:`string`,array:!0,length:2,default:[`startAngle`,`endAngle`]}]},F(L_,L,{transform(e,t){var n=e.as||[`startAngle`,`endAngle`],r=n[0],i=n[1],a=e.field||Se,o=e.startAngle||0,s=e.endAngle==null?2*Math.PI:e.endAngle,c=t.source,l=c.map(a),u=l.length,d=o,f=(s-o)/zr(l),p=ct(u),m,h,g;for(e.sort&&p.sort((e,t)=>l[e]-l[t]),m=0;m<u;++m)g=l[p[m]],h=c[p[m]],h[r]=d,h[i]=d+=g*f;return this.value=l,t.reflow(e.modified()).modifies(n)}});var R_=5;function z_(e){let t=e.type;return!e.bins&&(t===`linear`||t===`pow`||t===`sqrt`)}function B_(e){return El(e)&&e!==`sequential`}var V_=_([`set`,`modified`,`clear`,`type`,`scheme`,`schemeExtent`,`schemeCount`,`domain`,`domainMin`,`domainMid`,`domainMax`,`domainRaw`,`domainImplicit`,`nice`,`zero`,`bins`,`range`,`rangeStep`,`round`,`reverse`,`interpolate`,`interpolateGamma`]);function H_(e){L.call(this,null,e),this.modified(!0)}F(H_,L,{transform(e,t){var n=t.dataflow,r=this.value,i=U_(e);for(i in(!r||i!==r.type)&&(this.value=r=Cl(i)()),e)if(!V_[i]){if(i===`padding`&&B_(r.type))continue;m(r[i])?r[i](e[i]):n.warn(`Unsupported scale property: `+i)}return X_(r,e,Y_(r,e,G_(r,e,n))),t.fork(t.NO_SOURCE|t.NO_FIELDS)}});function U_(e){var t=e.type,n=``,r;return t===`sequential`?Yc+`-`+Gc:(W_(e)&&(r=e.rawDomain?e.rawDomain.length:e.domain?e.domain.length+ +(e.domainMid!=null):0,n=r===2?Yc+`-`:r===3?Xc+`-`:``),(n+t||`linear`).toLowerCase())}function W_(e){let t=e.type;return El(t)&&t!==`time`&&t!==`utc`&&(e.scheme||e.range&&e.range.length&&e.range.every(P))}function G_(e,t,n){let r=K_(e,t.domainRaw,n);if(r>-1)return r;var i=t.domain,a=e.type,o=t.zero||t.zero===void 0&&z_(e),s,c;if(!i)return 0;if((o||t.domainMin!=null||t.domainMax!=null||t.domainMid!=null)&&(s=(i=i.slice()).length-1||1,o&&(i[0]>0&&(i[0]=0),i[s]<0&&(i[s]=0)),t.domainMin!=null&&(i[0]=t.domainMin),t.domainMax!=null&&(i[s]=t.domainMax),t.domainMid!=null)){c=t.domainMid;let e=c>i[s]?s+1:c<i[0]?0:s;e!==s&&n.warn(`Scale domainMid exceeds domain min or max.`,c),i.splice(e,0,c)}return B_(a)&&t.padding&&i[0]!==A(i)&&(i=q_(a,i,t.range,t.padding,t.exponent,t.constant)),e.domain(J_(a,i,n)),a===`ordinal`&&e.unknown(t.domainImplicit?et:void 0),t.nice&&e.nice&&e.nice(t.nice!==!0&&Ul(e,t.nice)||null),i.length}function K_(e,t,n){return t?(e.domain(J_(e.type,t,n)),t.length):-1}function q_(e,t,n,r,i,a){var o=Math.abs(A(n)-n[0]),s=o/(o-2*r),c=e===`log`?rr(t,null,s):e===`sqrt`?ir(t,null,s,.5):e===`pow`?ir(t,null,s,i||1):e===`symlog`?ar(t,null,s,a||1):nr(t,null,s);return t=t.slice(),t[0]=c[0],t[t.length-1]=c[1],t}function J_(e,t,n){return kl(e)&&Math.abs(t.reduce((e,t)=>e+(t<0?-1:+(t>0)),0))!==t.length&&n.warn(`Log scale domain includes zero: `+p(t)),t}function Y_(e,t,n){let r=t.bins;if(r&&!N(r)){let t=e.domain(),n=t[0],i=A(t),a=r.step,o=r.start==null?n:r.start,s=r.stop==null?i:r.stop;a||j(`Scale bins parameter missing step property.`),o<n&&(o=a*Math.ceil(n/a)),s>i&&(s=a*Math.floor(i/a)),r=ct(o,s+a/2,a)}return r?e.bins=r:e.bins&&delete e.bins,e.type===`bin-ordinal`&&(r?!t.domain&&!t.domainRaw&&(e.domain(r),n=r.length):e.bins=e.domain()),n}function X_(e,t,n){var r=e.type,i=t.round||!1,a=t.range;if(t.rangeStep!=null)a=Z_(r,t,n);else if(t.scheme&&(a=Q_(r,t,n),m(a))){if(e.interpolator)return e.interpolator(a);j(`Scale type ${r} does not support interpolating color schemes.`)}if(a&&jl(r))return e.interpolator(Fl(ev(a,t.reverse),t.interpolate,t.interpolateGamma));a&&t.interpolate&&e.interpolate?e.interpolate(Rl(t.interpolate,t.interpolateGamma)):m(e.round)?e.round(i):m(e.rangeRound)&&e.interpolate(i?Ue:Xe),a&&e.range(ev(a,t.reverse))}function Z_(e,t,n){e!==`band`&&e!==`point`&&j(`Only band and point scales support rangeStep.`);var r=(t.paddingOuter==null?t.padding:t.paddingOuter)||0,i=e===`point`?1:(t.paddingInner==null?t.padding:t.paddingInner)||0;return[0,t.rangeStep*Uc(n,i,r)]}function Q_(e,t,n){var r=t.schemeExtent,i,a;return N(t.scheme)?a=Fl(t.scheme,t.interpolate,t.interpolateGamma):(i=t.scheme.toLowerCase(),a=Hl(i),a||j(`Unrecognized scheme name: ${t.scheme}`)),n=e===`threshold`?n+1:e===`bin-ordinal`?n-1:e===`quantile`||e===`quantize`?+t.schemeCount||R_:n,jl(e)?$_(a,r,t.reverse):m(a)?Il($_(a,r),n):e===`ordinal`?a:a.slice(0,n)}function $_(e,t,n){return m(e)&&(t||n)?Pl(e,ev(t||[0,1],n)):e}function ev(e,t){return t?e.slice().reverse():e}function tv(e){L.call(this,null,e)}F(tv,L,{transform(e,t){let n=e.modified(`sort`)||t.changed(t.ADD)||t.modified(e.sort.fields)||t.modified(`datum`);return n&&t.source.sort(ti(e.sort)),this.modified(n),t}});var nv=`zero`,rv=`center`,iv=`normalize`,av=[`y0`,`y1`];function ov(e){L.call(this,null,e)}ov.Definition={type:`Stack`,metadata:{modifies:!0},params:[{name:`field`,type:`field`},{name:`groupby`,type:`field`,array:!0},{name:`sort`,type:`compare`},{name:`offset`,type:`enum`,default:nv,values:[nv,rv,iv]},{name:`as`,type:`string`,array:!0,length:2,default:av}]},F(ov,L,{transform(e,t){var n=e.as||av,r=n[0],i=n[1],a=ti(e.sort),o=e.field||Se,s=e.offset===rv?sv:e.offset===iv?cv:lv,c=uv(t.source,e.groupby,a,o),l,u,d;for(l=0,u=c.length,d=c.max;l<u;++l)s(c[l],d,o,r,i);return t.reflow(e.modified()).modifies(n)}});function sv(e,t,n,r,i){for(var a=(t-e.sum)/2,o=e.length,s=0,c;s<o;++s)c=e[s],c[r]=a,c[i]=a+=Math.abs(n(c))}function cv(e,t,n,r,i){for(var a=1/e.sum,o=0,s=e.length,c=0,l=0,u;c<s;++c)u=e[c],u[r]=o,u[i]=o=a*(l+=Math.abs(n(u)))}function lv(e,t,n,r,i){for(var a=0,o=0,s=e.length,c=0,l,u;c<s;++c)u=e[c],l=+n(u),l<0?(u[r]=o,u[i]=o+=l):(u[r]=a,u[i]=a+=l)}function uv(e,t,n,r){var i=[],a=e=>e(u),o,s,c,l,u,d,f,p,m;if(t==null)i.push(e.slice());else for(o={},s=0,c=e.length;s<c;++s)u=e[s],d=t.map(a),f=o[d],f||(o[d]=f=[],i.push(f)),f.push(u);for(d=0,m=0,l=i.length;d<l;++d){for(f=i[d],s=0,p=0,c=f.length;s<c;++s)p+=Math.abs(r(f[s]));f.sum=p,p>m&&(m=p),n&&f.sort(n)}return i.max=m,i}var dv=1e-6,fv=Math.PI,pv=fv/2,mv=fv/4,hv=fv*2,gv=180/fv,_v=fv/180,vv=Math.abs,yv=Math.atan,bv=Math.atan2,R=Math.cos,xv=Math.ceil,Sv=Math.exp,Cv=Math.hypot,wv=Math.log,Tv=Math.pow,z=Math.sin,Ev=Math.sign||function(e){return e>0?1:e<0?-1:0},Dv=Math.sqrt,Ov=Math.tan;function kv(e){return e>1?0:e<-1?fv:Math.acos(e)}function Av(e){return e>1?pv:e<-1?-pv:Math.asin(e)}function jv(){}function Mv(e,t){e&&Pv.hasOwnProperty(e.type)&&Pv[e.type](e,t)}var Nv={Feature:function(e,t){Mv(e.geometry,t)},FeatureCollection:function(e,t){for(var n=e.features,r=-1,i=n.length;++r<i;)Mv(n[r].geometry,t)}},Pv={Sphere:function(e,t){t.sphere()},Point:function(e,t){e=e.coordinates,t.point(e[0],e[1],e[2])},MultiPoint:function(e,t){for(var n=e.coordinates,r=-1,i=n.length;++r<i;)e=n[r],t.point(e[0],e[1],e[2])},LineString:function(e,t){Fv(e.coordinates,t,0)},MultiLineString:function(e,t){for(var n=e.coordinates,r=-1,i=n.length;++r<i;)Fv(n[r],t,0)},Polygon:function(e,t){Iv(e.coordinates,t)},MultiPolygon:function(e,t){for(var n=e.coordinates,r=-1,i=n.length;++r<i;)Iv(n[r],t)},GeometryCollection:function(e,t){for(var n=e.geometries,r=-1,i=n.length;++r<i;)Mv(n[r],t)}};function Fv(e,t,n){var r=-1,i=e.length-n,a;for(t.lineStart();++r<i;)a=e[r],t.point(a[0],a[1],a[2]);t.lineEnd()}function Iv(e,t){var n=-1,r=e.length;for(t.polygonStart();++n<r;)Fv(e[n],t,1);t.polygonEnd()}function Lv(e,t){e&&Nv.hasOwnProperty(e.type)?Nv[e.type](e,t):Mv(e,t)}var Rv=new Dr,zv=new Dr,Bv,Vv,Hv,Uv,Wv,Gv={point:jv,lineStart:jv,lineEnd:jv,polygonStart:function(){Rv=new Dr,Gv.lineStart=Kv,Gv.lineEnd=qv},polygonEnd:function(){var e=+Rv;zv.add(e<0?hv+e:e),this.lineStart=this.lineEnd=this.point=jv},sphere:function(){zv.add(hv)}};function Kv(){Gv.point=Jv}function qv(){Yv(Bv,Vv)}function Jv(e,t){Gv.point=Yv,Bv=e,Vv=t,e*=_v,t*=_v,Hv=e,Uv=R(t=t/2+mv),Wv=z(t)}function Yv(e,t){e*=_v,t*=_v,t=t/2+mv;var n=e-Hv,r=n>=0?1:-1,i=r*n,a=R(t),o=z(t),s=Wv*o,c=Uv*a+s*R(i),l=s*r*z(i);Rv.add(bv(l,c)),Hv=e,Uv=a,Wv=o}function Xv(e){return zv=new Dr,Lv(e,Gv),zv*2}function Zv(e){return[bv(e[1],e[0]),Av(e[2])]}function Qv(e){var t=e[0],n=e[1],r=R(n);return[r*R(t),r*z(t),z(n)]}function $v(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function ey(e,t){return[e[1]*t[2]-e[2]*t[1],e[2]*t[0]-e[0]*t[2],e[0]*t[1]-e[1]*t[0]]}function ty(e,t){e[0]+=t[0],e[1]+=t[1],e[2]+=t[2]}function ny(e,t){return[e[0]*t,e[1]*t,e[2]*t]}function ry(e){var t=Dv(e[0]*e[0]+e[1]*e[1]+e[2]*e[2]);e[0]/=t,e[1]/=t,e[2]/=t}var iy,ay,oy,sy,cy,ly,uy,dy,fy,py,my,hy={point:gy,lineStart:vy,lineEnd:yy,polygonStart:function(){hy.point=by,hy.lineStart=xy,hy.lineEnd=Sy,fy=new Dr,Gv.polygonStart()},polygonEnd:function(){Gv.polygonEnd(),hy.point=gy,hy.lineStart=vy,hy.lineEnd=yy,Rv<0?(iy=-(oy=180),ay=-(sy=90)):fy>1e-6?sy=90:fy<-1e-6&&(ay=-90),my[0]=iy,my[1]=oy},sphere:function(){iy=-(oy=180),ay=-(sy=90)}};function gy(e,t){py.push(my=[iy=e,oy=e]),t<ay&&(ay=t),t>sy&&(sy=t)}function _y(e,t){var n=Qv([e*_v,t*_v]);if(dy){var r=ey(dy,n),i=ey([r[1],-r[0],0],r);ry(i),i=Zv(i);var a=e-cy,o=a>0?1:-1,s=i[0]*gv*o,c,l=vv(a)>180;l^(o*cy<s&&s<o*e)?(c=i[1]*gv,c>sy&&(sy=c)):(s=(s+360)%360-180,l^(o*cy<s&&s<o*e)?(c=-i[1]*gv,c<ay&&(ay=c)):(t<ay&&(ay=t),t>sy&&(sy=t))),l?e<cy?Cy(iy,e)>Cy(iy,oy)&&(oy=e):Cy(e,oy)>Cy(iy,oy)&&(iy=e):oy>=iy?(e<iy&&(iy=e),e>oy&&(oy=e)):e>cy?Cy(iy,e)>Cy(iy,oy)&&(oy=e):Cy(e,oy)>Cy(iy,oy)&&(iy=e)}else py.push(my=[iy=e,oy=e]);t<ay&&(ay=t),t>sy&&(sy=t),dy=n,cy=e}function vy(){hy.point=_y}function yy(){my[0]=iy,my[1]=oy,hy.point=gy,dy=null}function by(e,t){if(dy){var n=e-cy;fy.add(vv(n)>180?n+(n>0?360:-360):n)}else ly=e,uy=t;Gv.point(e,t),_y(e,t)}function xy(){Gv.lineStart()}function Sy(){by(ly,uy),Gv.lineEnd(),vv(fy)>1e-6&&(iy=-(oy=180)),my[0]=iy,my[1]=oy,dy=null}function Cy(e,t){return(t-=e)<0?t+360:t}function wy(e,t){return e[0]-t[0]}function Ty(e,t){return e[0]<=e[1]?e[0]<=t&&t<=e[1]:t<e[0]||e[1]<t}function Ey(e){var t,n,r,i,a,o,s;if(sy=oy=-(iy=ay=1/0),py=[],Lv(e,hy),n=py.length){for(py.sort(wy),t=1,r=py[0],a=[r];t<n;++t)i=py[t],Ty(r,i[0])||Ty(r,i[1])?(Cy(r[0],i[1])>Cy(r[0],r[1])&&(r[1]=i[1]),Cy(i[0],r[1])>Cy(r[0],r[1])&&(r[0]=i[0])):a.push(r=i);for(o=-1/0,n=a.length-1,t=0,r=a[n];t<=n;r=i,++t)i=a[t],(s=Cy(r[1],i[0]))>o&&(o=s,iy=i[0],oy=r[1])}return py=my=null,iy===1/0||ay===1/0?[[NaN,NaN],[NaN,NaN]]:[[iy,ay],[oy,sy]]}var Dy,Oy,ky,Ay,jy,My,Ny,Py,Fy,Iy,Ly,Ry,zy,By,Vy,Hy,Uy={sphere:jv,point:Wy,lineStart:Ky,lineEnd:qy,polygonStart:function(){Uy.lineStart=hne,Uy.lineEnd=gne},polygonEnd:function(){Uy.lineStart=Ky,Uy.lineEnd=qy}};function Wy(e,t){e*=_v,t*=_v;var n=R(t);Gy(n*R(e),n*z(e),z(t))}function Gy(e,t,n){++Dy,ky+=(e-ky)/Dy,Ay+=(t-Ay)/Dy,jy+=(n-jy)/Dy}function Ky(){Uy.point=pne}function pne(e,t){e*=_v,t*=_v;var n=R(t);By=n*R(e),Vy=n*z(e),Hy=z(t),Uy.point=mne,Gy(By,Vy,Hy)}function mne(e,t){e*=_v,t*=_v;var n=R(t),r=n*R(e),i=n*z(e),a=z(t),o=bv(Dv((o=Vy*a-Hy*i)*o+(o=Hy*r-By*a)*o+(o=By*i-Vy*r)*o),By*r+Vy*i+Hy*a);Oy+=o,My+=o*(By+(By=r)),Ny+=o*(Vy+(Vy=i)),Py+=o*(Hy+(Hy=a)),Gy(By,Vy,Hy)}function qy(){Uy.point=Wy}function hne(){Uy.point=_ne}function gne(){Jy(Ry,zy),Uy.point=Wy}function _ne(e,t){Ry=e,zy=t,e*=_v,t*=_v,Uy.point=Jy;var n=R(t);By=n*R(e),Vy=n*z(e),Hy=z(t),Gy(By,Vy,Hy)}function Jy(e,t){e*=_v,t*=_v;var n=R(t),r=n*R(e),i=n*z(e),a=z(t),o=Vy*a-Hy*i,s=Hy*r-By*a,c=By*i-Vy*r,l=Cv(o,s,c),u=Av(l),d=l&&-u/l;Fy.add(d*o),Iy.add(d*s),Ly.add(d*c),Oy+=u,My+=u*(By+(By=r)),Ny+=u*(Vy+(Vy=i)),Py+=u*(Hy+(Hy=a)),Gy(By,Vy,Hy)}function Yy(e){Dy=Oy=ky=Ay=jy=My=Ny=Py=0,Fy=new Dr,Iy=new Dr,Ly=new Dr,Lv(e,Uy);var t=+Fy,n=+Iy,r=+Ly,i=Cv(t,n,r);return i<1e-12&&(t=My,n=Ny,r=Py,Oy<1e-6&&(t=ky,n=Ay,r=jy),i=Cv(t,n,r),i<1e-12)?[NaN,NaN]:[bv(n,t)*gv,Av(r/i)*gv]}function Xy(e,t){function n(n,r){return n=e(n,r),t(n[0],n[1])}return e.invert&&t.invert&&(n.invert=function(n,r){return n=t.invert(n,r),n&&e.invert(n[0],n[1])}),n}function Zy(e,t){return vv(e)>fv&&(e-=Math.round(e/hv)*hv),[e,t]}Zy.invert=Zy;function Qy(e,t,n){return(e%=hv)?t||n?Xy(eb(e),tb(t,n)):eb(e):t||n?tb(t,n):Zy}function $y(e){return function(t,n){return t+=e,vv(t)>fv&&(t-=Math.round(t/hv)*hv),[t,n]}}function eb(e){var t=$y(e);return t.invert=$y(-e),t}function tb(e,t){var n=R(e),r=z(e),i=R(t),a=z(t);function o(e,t){var o=R(t),s=R(e)*o,c=z(e)*o,l=z(t),u=l*n+s*r;return[bv(c*i-u*a,s*n-l*r),Av(u*i+c*a)]}return o.invert=function(e,t){var o=R(t),s=R(e)*o,c=z(e)*o,l=z(t),u=l*i-c*a;return[bv(c*i+l*a,s*n+u*r),Av(u*n-s*r)]},o}function vne(e){e=Qy(e[0]*_v,e[1]*_v,e.length>2?e[2]*_v:0);function t(t){return t=e(t[0]*_v,t[1]*_v),t[0]*=gv,t[1]*=gv,t}return t.invert=function(t){return t=e.invert(t[0]*_v,t[1]*_v),t[0]*=gv,t[1]*=gv,t},t}function yne(e,t,n,r,i,a){if(n){var o=R(t),s=z(t),c=r*n;i==null?(i=t+r*hv,a=t-c/2):(i=nb(o,i),a=nb(o,a),(r>0?i<a:i>a)&&(i+=r*hv));for(var l,u=i;r>0?u>a:u<a;u-=c)l=Zv([o,-s*R(u),-s*z(u)]),e.point(l[0],l[1])}}function nb(e,t){t=Qv(t),t[0]-=e,ry(t);var n=kv(-t[1]);return((-t[2]<0?-n:n)+hv-dv)%hv}function rb(){var e=[],t;return{point:function(e,n,r){t.push([e,n,r])},lineStart:function(){e.push(t=[])},lineEnd:jv,rejoin:function(){e.length>1&&e.push(e.pop().concat(e.shift()))},result:function(){var n=e;return e=[],t=null,n}}}function ib(e,t){return vv(e[0]-t[0])<1e-6&&vv(e[1]-t[1])<1e-6}function ab(e,t,n,r){this.x=e,this.z=t,this.o=n,this.e=r,this.v=!1,this.n=this.p=null}function ob(e,t,n,r,i){var a=[],o=[],s,c;if(e.forEach(function(e){if(!((t=e.length-1)<=0)){var t,n=e[0],r=e[t],c;if(ib(n,r)){if(!n[2]&&!r[2]){for(i.lineStart(),s=0;s<t;++s)i.point((n=e[s])[0],n[1]);i.lineEnd();return}r[0]+=2*dv}a.push(c=new ab(n,e,null,!0)),o.push(c.o=new ab(n,null,c,!1)),a.push(c=new ab(r,e,null,!1)),o.push(c.o=new ab(r,null,c,!0))}}),a.length){for(o.sort(t),sb(a),sb(o),s=0,c=o.length;s<c;++s)o[s].e=n=!n;for(var l=a[0],u,d;;){for(var f=l,p=!0;f.v;)if((f=f.n)===l)return;u=f.z,i.lineStart();do{if(f.v=f.o.v=!0,f.e){if(p)for(s=0,c=u.length;s<c;++s)i.point((d=u[s])[0],d[1]);else r(f.x,f.n.x,1,i);f=f.n}else{if(p)for(u=f.p.z,s=u.length-1;s>=0;--s)i.point((d=u[s])[0],d[1]);else r(f.x,f.p.x,-1,i);f=f.p}f=f.o,u=f.z,p=!p}while(!f.v);i.lineEnd()}}}function sb(e){if(t=e.length){for(var t,n=0,r=e[0],i;++n<t;)r.n=i=e[n],i.p=r,r=i;r.n=i=e[0],i.p=r}}function cb(e){return vv(e[0])<=fv?e[0]:Ev(e[0])*((vv(e[0])+fv)%hv-fv)}function bne(e,t){var n=cb(t),r=t[1],i=z(r),a=[z(n),-R(n),0],o=0,s=0,c=new Dr;i===1?r=pv+dv:i===-1&&(r=-pv-dv);for(var l=0,u=e.length;l<u;++l)if(f=(d=e[l]).length)for(var d,f,p=d[f-1],m=cb(p),h=p[1]/2+mv,g=z(h),_=R(h),v=0;v<f;++v,m=b,g=S,_=C,p=y){var y=d[v],b=cb(y),x=y[1]/2+mv,S=z(x),C=R(x),w=b-m,T=w>=0?1:-1,E=T*w,D=E>fv,O=g*S;if(c.add(bv(O*T*z(E),_*C+O*R(E))),o+=D?w+T*hv:w,D^m>=n^b>=n){var k=ey(Qv(p),Qv(y));ry(k);var A=ey(a,k);ry(A);var ee=(D^w>=0?-1:1)*Av(A[2]);(r>ee||r===ee&&(k[0]||k[1]))&&(s+=D^w>=0?1:-1)}}return(o<-1e-6||o<1e-6&&c<-1e-12)^s&1}function lb(e,t,n,r){return function(i){var a=t(i),o=rb(),s=t(o),c=!1,l,u,d,f={point:p,lineStart:h,lineEnd:g,polygonStart:function(){f.point=_,f.lineStart=v,f.lineEnd=y,u=[],l=[]},polygonEnd:function(){f.point=p,f.lineStart=h,f.lineEnd=g,u=Rr(u);var e=bne(l,r);u.length?(c||=(i.polygonStart(),!0),ob(u,Sne,e,n,i)):e&&(c||=(i.polygonStart(),!0),i.lineStart(),n(null,null,1,i),i.lineEnd()),c&&=(i.polygonEnd(),!1),u=l=null},sphere:function(){i.polygonStart(),i.lineStart(),n(null,null,1,i),i.lineEnd(),i.polygonEnd()}};function p(t,n){e(t,n)&&i.point(t,n)}function m(e,t){a.point(e,t)}function h(){f.point=m,a.lineStart()}function g(){f.point=p,a.lineEnd()}function _(e,t){d.push([e,t]),s.point(e,t)}function v(){s.lineStart(),d=[]}function y(){_(d[0][0],d[0][1]),s.lineEnd();var e=s.clean(),t=o.result(),n,r=t.length,a,f,p;if(d.pop(),l.push(d),d=null,r){if(e&1){if(f=t[0],(a=f.length-1)>0){for(c||=(i.polygonStart(),!0),i.lineStart(),n=0;n<a;++n)i.point((p=f[n])[0],p[1]);i.lineEnd()}return}r>1&&e&2&&t.push(t.pop().concat(t.shift())),u.push(t.filter(xne))}}return f}}function xne(e){return e.length>1}function Sne(e,t){return((e=e.x)[0]<0?e[1]-pv-dv:pv-e[1])-((t=t.x)[0]<0?t[1]-pv-dv:pv-t[1])}var ub=lb(function(){return!0},Cne,Tne,[-fv,-pv]);function Cne(e){var t=NaN,n=NaN,r=NaN,i;return{lineStart:function(){e.lineStart(),i=1},point:function(a,o){var s=a>0?fv:-fv,c=vv(a-t);vv(c-fv)<1e-6?(e.point(t,n=(n+o)/2>0?pv:-pv),e.point(r,n),e.lineEnd(),e.lineStart(),e.point(s,n),e.point(a,n),i=0):r!==s&&c>=fv&&(vv(t-r)<1e-6&&(t-=r*dv),vv(a-s)<1e-6&&(a-=s*dv),n=wne(t,n,a,o),e.point(r,n),e.lineEnd(),e.lineStart(),e.point(s,n),i=0),e.point(t=a,n=o),r=s},lineEnd:function(){e.lineEnd(),t=n=NaN},clean:function(){return 2-i}}}function wne(e,t,n,r){var i,a,o=z(e-n);return vv(o)>1e-6?yv((z(t)*(a=R(r))*z(n)-z(r)*(i=R(t))*z(e))/(i*a*o)):(t+r)/2}function Tne(e,t,n,r){var i;if(e==null)i=n*pv,r.point(-fv,i),r.point(0,i),r.point(fv,i),r.point(fv,0),r.point(fv,-i),r.point(0,-i),r.point(-fv,-i),r.point(-fv,0),r.point(-fv,i);else if(vv(e[0]-t[0])>1e-6){var a=e[0]<t[0]?fv:-fv;i=n*a/2,r.point(-a,i),r.point(0,i),r.point(a,i)}else r.point(t[0],t[1])}function Ene(e){var t=R(e),n=2*_v,r=t>0,i=vv(t)>dv;function a(t,r,i,a){yne(a,e,n,i,t,r)}function o(e,n){return R(e)*R(n)>t}function s(e){var t,n,a,s,u;return{lineStart:function(){s=a=!1,u=1},point:function(d,f){var p=[d,f],m,h=o(d,f),g=r?h?0:l(d,f):h?l(d+(d<0?fv:-fv),f):0;if(!t&&(s=a=h)&&e.lineStart(),h!==a&&(m=c(t,p),(!m||ib(t,m)||ib(p,m))&&(p[2]=1)),h!==a)u=0,h?(e.lineStart(),m=c(p,t),e.point(m[0],m[1])):(m=c(t,p),e.point(m[0],m[1],2),e.lineEnd()),t=m;else if(i&&t&&r^h){var _;!(g&n)&&(_=c(p,t,!0))&&(u=0,r?(e.lineStart(),e.point(_[0][0],_[0][1]),e.point(_[1][0],_[1][1]),e.lineEnd()):(e.point(_[1][0],_[1][1]),e.lineEnd(),e.lineStart(),e.point(_[0][0],_[0][1],3)))}h&&(!t||!ib(t,p))&&e.point(p[0],p[1]),t=p,a=h,n=g},lineEnd:function(){a&&e.lineEnd(),t=null},clean:function(){return u|(s&&a)<<1}}}function c(e,n,r){var i=Qv(e),a=Qv(n),o=[1,0,0],s=ey(i,a),c=$v(s,s),l=s[0],u=c-l*l;if(!u)return!r&&e;var d=t*c/u,f=-t*l/u,p=ey(o,s),m=ny(o,d);ty(m,ny(s,f));var h=p,g=$v(m,h),_=$v(h,h),v=g*g-_*($v(m,m)-1);if(!(v<0)){var y=Dv(v),b=ny(h,(-g-y)/_);if(ty(b,m),b=Zv(b),!r)return b;var x=e[0],S=n[0],C=e[1],w=n[1],T;S<x&&(T=x,x=S,S=T);var E=S-x,D=vv(E-fv)<dv,O=D||E<1e-6;if(!D&&w<C&&(T=C,C=w,w=T),O?D?C+w>0^b[1]<(vv(b[0]-x)<1e-6?C:w):C<=b[1]&&b[1]<=w:E>fv^(x<=b[0]&&b[0]<=S)){var k=ny(h,(-g+y)/_);return ty(k,m),[b,Zv(k)]}}}function l(t,n){var i=r?e:fv-e,a=0;return t<-i?a|=1:t>i&&(a|=2),n<-i?a|=4:n>i&&(a|=8),a}return lb(o,s,a,r?[0,-e]:[-fv,e-fv])}function Dne(e,t,n,r,i,a){var o=e[0],s=e[1],c=t[0],l=t[1],u=0,d=1,f=c-o,p=l-s,m=n-o;if(!(!f&&m>0)){if(m/=f,f<0){if(m<u)return;m<d&&(d=m)}else if(f>0){if(m>d)return;m>u&&(u=m)}if(m=i-o,!(!f&&m<0)){if(m/=f,f<0){if(m>d)return;m>u&&(u=m)}else if(f>0){if(m<u)return;m<d&&(d=m)}if(m=r-s,!(!p&&m>0)){if(m/=p,p<0){if(m<u)return;m<d&&(d=m)}else if(p>0){if(m>d)return;m>u&&(u=m)}if(m=a-s,!(!p&&m<0)){if(m/=p,p<0){if(m>d)return;m>u&&(u=m)}else if(p>0){if(m<u)return;m<d&&(d=m)}return u>0&&(e[0]=o+u*f,e[1]=s+u*p),d<1&&(t[0]=o+d*f,t[1]=s+d*p),!0}}}}}var db=1e9,fb=-db;function pb(e,t,n,r){function i(i,a){return e<=i&&i<=n&&t<=a&&a<=r}function a(i,a,s,l){var u=0,d=0;if(i==null||(u=o(i,s))!==(d=o(a,s))||c(i,a)<0^s>0)do l.point(u===0||u===3?e:n,u>1?r:t);while((u=(u+s+4)%4)!==d);else l.point(a[0],a[1])}function o(r,i){return vv(r[0]-e)<1e-6?i>0?0:3:vv(r[0]-n)<1e-6?i>0?2:1:vv(r[1]-t)<1e-6?+(i>0):i>0?3:2}function s(e,t){return c(e.x,t.x)}function c(e,t){var n=o(e,1),r=o(t,1);return n===r?n===0?t[1]-e[1]:n===1?e[0]-t[0]:n===2?e[1]-t[1]:t[0]-e[0]:n-r}return function(o){var c=o,l=rb(),u,d,f,p,m,h,g,_,v,y,b,x={point:S,lineStart:E,lineEnd:D,polygonStart:w,polygonEnd:T};function S(e,t){i(e,t)&&c.point(e,t)}function C(){for(var t=0,n=0,i=d.length;n<i;++n)for(var a=d[n],o=1,s=a.length,c=a[0],l,u,f=c[0],p=c[1];o<s;++o)l=f,u=p,c=a[o],f=c[0],p=c[1],u<=r?p>r&&(f-l)*(r-u)>(p-u)*(e-l)&&++t:p<=r&&(f-l)*(r-u)<(p-u)*(e-l)&&--t;return t}function w(){c=l,u=[],d=[],b=!0}function T(){var e=C(),t=b&&e,n=(u=Rr(u)).length;(t||n)&&(o.polygonStart(),t&&(o.lineStart(),a(null,null,1,o),o.lineEnd()),n&&ob(u,s,e,a,o),o.polygonEnd()),c=o,u=d=f=null}function E(){x.point=O,d&&d.push(f=[]),y=!0,v=!1,g=_=NaN}function D(){u&&(O(p,m),h&&v&&l.rejoin(),u.push(l.result())),x.point=S,v&&c.lineEnd()}function O(a,o){var s=i(a,o);if(d&&f.push([a,o]),y)p=a,m=o,h=s,y=!1,s&&(c.lineStart(),c.point(a,o));else if(s&&v)c.point(a,o);else{var l=[g=Math.max(fb,Math.min(db,g)),_=Math.max(fb,Math.min(db,_))],u=[a=Math.max(fb,Math.min(db,a)),o=Math.max(fb,Math.min(db,o))];Dne(l,u,e,t,n,r)?(v||(c.lineStart(),c.point(l[0],l[1])),c.point(u[0],u[1]),s||c.lineEnd(),b=!1):s&&(c.lineStart(),c.point(a,o),b=!1)}g=a,_=o,v=s}return x}}function mb(e,t,n){var r=ct(e,t-dv,n).concat(t);return function(e){return r.map(function(t){return[e,t]})}}function hb(e,t,n){var r=ct(e,t-dv,n).concat(t);return function(e){return r.map(function(t){return[t,e]})}}function One(){var e,t,n,r,i,a,o,s,c=10,l=c,u=90,d=360,f,p,m,h,g=2.5;function _(){return{type:`MultiLineString`,coordinates:v()}}function v(){return ct(xv(r/u)*u,n,u).map(m).concat(ct(xv(s/d)*d,o,d).map(h)).concat(ct(xv(t/c)*c,e,c).filter(function(e){return vv(e%u)>dv}).map(f)).concat(ct(xv(a/l)*l,i,l).filter(function(e){return vv(e%d)>dv}).map(p))}return _.lines=function(){return v().map(function(e){return{type:`LineString`,coordinates:e}})},_.outline=function(){return{type:`Polygon`,coordinates:[m(r).concat(h(o).slice(1),m(n).reverse().slice(1),h(s).reverse().slice(1))]}},_.extent=function(e){return arguments.length?_.extentMajor(e).extentMinor(e):_.extentMinor()},_.extentMajor=function(e){return arguments.length?(r=+e[0][0],n=+e[1][0],s=+e[0][1],o=+e[1][1],r>n&&(e=r,r=n,n=e),s>o&&(e=s,s=o,o=e),_.precision(g)):[[r,s],[n,o]]},_.extentMinor=function(n){return arguments.length?(t=+n[0][0],e=+n[1][0],a=+n[0][1],i=+n[1][1],t>e&&(n=t,t=e,e=n),a>i&&(n=a,a=i,i=n),_.precision(g)):[[t,a],[e,i]]},_.step=function(e){return arguments.length?_.stepMajor(e).stepMinor(e):_.stepMinor()},_.stepMajor=function(e){return arguments.length?(u=+e[0],d=+e[1],_):[u,d]},_.stepMinor=function(e){return arguments.length?(c=+e[0],l=+e[1],_):[c,l]},_.precision=function(c){return arguments.length?(g=+c,f=mb(a,i,90),p=hb(t,e,g),m=mb(s,o,90),h=hb(r,n,g),_):g},_.extentMajor([[-180,-90+dv],[180,90-dv]]).extentMinor([[-180,-80-dv],[180,80+dv]])}var gb=e=>e,_b=new Dr,vb=new Dr,yb,bb,xb,Sb,Cb={point:jv,lineStart:jv,lineEnd:jv,polygonStart:function(){Cb.lineStart=kne,Cb.lineEnd=jne},polygonEnd:function(){Cb.lineStart=Cb.lineEnd=Cb.point=jv,_b.add(vv(vb)),vb=new Dr},result:function(){var e=_b/2;return _b=new Dr,e}};function kne(){Cb.point=Ane}function Ane(e,t){Cb.point=wb,yb=xb=e,bb=Sb=t}function wb(e,t){vb.add(Sb*e-xb*t),xb=e,Sb=t}function jne(){wb(yb,bb)}var Tb=1/0,Eb=Tb,Db=-Tb,Ob=Db,kb={point:Mne,lineStart:jv,lineEnd:jv,polygonStart:jv,polygonEnd:jv,result:function(){var e=[[Tb,Eb],[Db,Ob]];return Db=Ob=-(Eb=Tb=1/0),e}};function Mne(e,t){e<Tb&&(Tb=e),e>Db&&(Db=e),t<Eb&&(Eb=t),t>Ob&&(Ob=t)}var Ab=0,jb=0,Mb=0,Nb=0,Pb=0,Fb=0,Ib=0,Lb=0,Rb=0,zb,Bb,Vb,Hb,Ub={point:Wb,lineStart:Gb,lineEnd:Kb,polygonStart:function(){Ub.lineStart=Fne,Ub.lineEnd=Ine},polygonEnd:function(){Ub.point=Wb,Ub.lineStart=Gb,Ub.lineEnd=Kb},result:function(){var e=Rb?[Ib/Rb,Lb/Rb]:Fb?[Nb/Fb,Pb/Fb]:Mb?[Ab/Mb,jb/Mb]:[NaN,NaN];return Ab=jb=Mb=Nb=Pb=Fb=Ib=Lb=Rb=0,e}};function Wb(e,t){Ab+=e,jb+=t,++Mb}function Gb(){Ub.point=Nne}function Nne(e,t){Ub.point=Pne,Wb(Vb=e,Hb=t)}function Pne(e,t){var n=e-Vb,r=t-Hb,i=Dv(n*n+r*r);Nb+=i*(Vb+e)/2,Pb+=i*(Hb+t)/2,Fb+=i,Wb(Vb=e,Hb=t)}function Kb(){Ub.point=Wb}function Fne(){Ub.point=Lne}function Ine(){qb(zb,Bb)}function Lne(e,t){Ub.point=qb,Wb(zb=Vb=e,Bb=Hb=t)}function qb(e,t){var n=e-Vb,r=t-Hb,i=Dv(n*n+r*r);Nb+=i*(Vb+e)/2,Pb+=i*(Hb+t)/2,Fb+=i,i=Hb*e-Vb*t,Ib+=i*(Vb+e),Lb+=i*(Hb+t),Rb+=i*3,Wb(Vb=e,Hb=t)}function Jb(e){this._context=e}Jb.prototype={_radius:4.5,pointRadius:function(e){return this._radius=e,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._context.closePath(),this._point=NaN},point:function(e,t){switch(this._point){case 0:this._context.moveTo(e,t),this._point=1;break;case 1:this._context.lineTo(e,t);break;default:this._context.moveTo(e+this._radius,t),this._context.arc(e,t,this._radius,0,hv)}},result:jv};var Yb=new Dr,Xb,Zb,Qb,$b,ex,tx={point:jv,lineStart:function(){tx.point=Rne},lineEnd:function(){Xb&&nx(Zb,Qb),tx.point=jv},polygonStart:function(){Xb=!0},polygonEnd:function(){Xb=null},result:function(){var e=+Yb;return Yb=new Dr,e}};function Rne(e,t){tx.point=nx,Zb=$b=e,Qb=ex=t}function nx(e,t){$b-=e,ex-=t,Yb.add(Dv($b*$b+ex*ex)),$b=e,ex=t}var rx,ix,ax,ox,sx=class{constructor(e){this._append=e==null?cx:zne(e),this._radius=4.5,this._=``}pointRadius(e){return this._radius=+e,this}polygonStart(){this._line=0}polygonEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){this._line===0&&(this._+=`Z`),this._point=NaN}point(e,t){switch(this._point){case 0:this._append`M${e},${t}`,this._point=1;break;case 1:this._append`L${e},${t}`;break;default:if(this._append`M${e},${t}`,this._radius!==ax||this._append!==ix){let e=this._radius,t=this._;this._=``,this._append`m0,${e}a${e},${e} 0 1,1 0,${-2*e}a${e},${e} 0 1,1 0,${2*e}z`,ax=e,ix=this._append,ox=this._,this._=t}this._+=ox}}result(){let e=this._;return this._=``,e.length?e:null}};function cx(e){let t=1;this._+=e[0];for(let n=e.length;t<n;++t)this._+=arguments[t]+e[t]}function zne(e){let t=Math.floor(e);if(!(t>=0))throw RangeError(`invalid digits: ${e}`);if(t>15)return cx;if(t!==rx){let e=10**t;rx=t,ix=function(t){let n=1;this._+=t[0];for(let r=t.length;n<r;++n)this._+=Math.round(arguments[n]*e)/e+t[n]}}return ix}function lx(e,t){let n=3,r=4.5,i,a;function o(e){return e&&(typeof r==`function`&&a.pointRadius(+r.apply(this,arguments)),Lv(e,i(a))),a.result()}return o.area=function(e){return Lv(e,i(Cb)),Cb.result()},o.measure=function(e){return Lv(e,i(tx)),tx.result()},o.bounds=function(e){return Lv(e,i(kb)),kb.result()},o.centroid=function(e){return Lv(e,i(Ub)),Ub.result()},o.projection=function(t){return arguments.length?(i=t==null?(e=null,gb):(e=t).stream,o):e},o.context=function(e){return arguments.length?(a=e==null?(t=null,new sx(n)):new Jb(t=e),typeof r!=`function`&&a.pointRadius(r),o):t},o.pointRadius=function(e){return arguments.length?(r=typeof e==`function`?e:(a.pointRadius(+e),+e),o):r},o.digits=function(e){if(!arguments.length)return n;if(e==null)n=null;else{let t=Math.floor(e);if(!(t>=0))throw RangeError(`invalid digits: ${e}`);n=t}return t===null&&(a=new sx(n)),o},o.projection(e).digits(n).context(t)}function ux(e){return function(t){var n=new dx;for(var r in e)n[r]=e[r];return n.stream=t,n}}function dx(){}dx.prototype={constructor:dx,point:function(e,t){this.stream.point(e,t)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};function fx(e,t,n){var r=e.clipExtent&&e.clipExtent();return e.scale(150).translate([0,0]),r!=null&&e.clipExtent(null),Lv(n,e.stream(kb)),t(kb.result()),r!=null&&e.clipExtent(r),e}function px(e,t,n){return fx(e,function(n){var r=t[1][0]-t[0][0],i=t[1][1]-t[0][1],a=Math.min(r/(n[1][0]-n[0][0]),i/(n[1][1]-n[0][1])),o=+t[0][0]+(r-a*(n[1][0]+n[0][0]))/2,s=+t[0][1]+(i-a*(n[1][1]+n[0][1]))/2;e.scale(150*a).translate([o,s])},n)}function mx(e,t,n){return px(e,[[0,0],t],n)}function hx(e,t,n){return fx(e,function(n){var r=+t,i=r/(n[1][0]-n[0][0]),a=(r-i*(n[1][0]+n[0][0]))/2,o=-i*n[0][1];e.scale(150*i).translate([a,o])},n)}function gx(e,t,n){return fx(e,function(n){var r=+t,i=r/(n[1][1]-n[0][1]),a=-i*n[0][0],o=(r-i*(n[1][1]+n[0][1]))/2;e.scale(150*i).translate([a,o])},n)}var _x=16,Bne=R(30*_v);function vx(e,t){return+t?Hne(e,t):Vne(e)}function Vne(e){return ux({point:function(t,n){t=e(t,n),this.stream.point(t[0],t[1])}})}function Hne(e,t){function n(r,i,a,o,s,c,l,u,d,f,p,m,h,g){var _=l-r,v=u-i,y=_*_+v*v;if(y>4*t&&h--){var b=o+f,x=s+p,S=c+m,C=Dv(b*b+x*x+S*S),w=Av(S/=C),T=vv(vv(S)-1)<1e-6||vv(a-d)<1e-6?(a+d)/2:bv(x,b),E=e(T,w),D=E[0],O=E[1],k=D-r,A=O-i,ee=v*k-_*A;(ee*ee/y>t||vv((_*k+v*A)/y-.5)>.3||o*f+s*p+c*m<Bne)&&(n(r,i,a,o,s,c,D,O,T,b/=C,x/=C,S,h,g),g.point(D,O),n(D,O,T,b,x,S,l,u,d,f,p,m,h,g))}}return function(t){var r,i,a,o,s,c,l,u,d,f,p,m,h={point:g,lineStart:_,lineEnd:y,polygonStart:function(){t.polygonStart(),h.lineStart=b},polygonEnd:function(){t.polygonEnd(),h.lineStart=_}};function g(n,r){n=e(n,r),t.point(n[0],n[1])}function _(){u=NaN,h.point=v,t.lineStart()}function v(r,i){var a=Qv([r,i]),o=e(r,i);n(u,d,l,f,p,m,u=o[0],d=o[1],l=r,f=a[0],p=a[1],m=a[2],_x,t),t.point(u,d)}function y(){h.point=g,t.lineEnd()}function b(){_(),h.point=x,h.lineEnd=S}function x(e,t){v(r=e,t),i=u,a=d,o=f,s=p,c=m,h.point=v}function S(){n(u,d,l,f,p,m,i,a,r,o,s,c,_x,t),h.lineEnd=y,y()}return h}}var Une=ux({point:function(e,t){this.stream.point(e*_v,t*_v)}});function Wne(e){return ux({point:function(t,n){var r=e(t,n);return this.stream.point(r[0],r[1])}})}function Gne(e,t,n,r,i){function a(a,o){return a*=r,o*=i,[t+e*a,n-e*o]}return a.invert=function(a,o){return[(a-t)/e*r,(n-o)/e*i]},a}function yx(e,t,n,r,i,a){if(!a)return Gne(e,t,n,r,i);var o=R(a),s=z(a),c=o*e,l=s*e,u=o/e,d=s/e,f=(s*n-o*t)/e,p=(s*t+o*n)/e;function m(e,a){return e*=r,a*=i,[c*e-l*a+t,n-l*e-c*a]}return m.invert=function(e,t){return[r*(u*e-d*t+f),i*(p-d*e-u*t)]},m}function bx(e){return xx(function(){return e})()}function xx(e){var t,n=150,r=480,i=250,a=0,o=0,s=0,c=0,l=0,u,d=0,f=1,p=1,m=null,h=ub,g=null,_,v,y,b=gb,x=.5,S,C,w,T,E;function D(e){return w(e[0]*_v,e[1]*_v)}function O(e){return e=w.invert(e[0],e[1]),e&&[e[0]*gv,e[1]*gv]}D.stream=function(e){return T&&E===e?T:T=Une(Wne(u)(h(S(b(E=e)))))},D.preclip=function(e){return arguments.length?(h=e,m=void 0,A()):h},D.postclip=function(e){return arguments.length?(b=e,g=_=v=y=null,A()):b},D.clipAngle=function(e){return arguments.length?(h=+e?Ene(m=e*_v):(m=null,ub),A()):m*gv},D.clipExtent=function(e){return arguments.length?(b=e==null?(g=_=v=y=null,gb):pb(g=+e[0][0],_=+e[0][1],v=+e[1][0],y=+e[1][1]),A()):g==null?null:[[g,_],[v,y]]},D.scale=function(e){return arguments.length?(n=+e,k()):n},D.translate=function(e){return arguments.length?(r=+e[0],i=+e[1],k()):[r,i]},D.center=function(e){return arguments.length?(a=e[0]%360*_v,o=e[1]%360*_v,k()):[a*gv,o*gv]},D.rotate=function(e){return arguments.length?(s=e[0]%360*_v,c=e[1]%360*_v,l=e.length>2?e[2]%360*_v:0,k()):[s*gv,c*gv,l*gv]},D.angle=function(e){return arguments.length?(d=e%360*_v,k()):d*gv},D.reflectX=function(e){return arguments.length?(f=e?-1:1,k()):f<0},D.reflectY=function(e){return arguments.length?(p=e?-1:1,k()):p<0},D.precision=function(e){return arguments.length?(S=vx(C,x=e*e),A()):Dv(x)},D.fitExtent=function(e,t){return px(D,e,t)},D.fitSize=function(e,t){return mx(D,e,t)},D.fitWidth=function(e,t){return hx(D,e,t)},D.fitHeight=function(e,t){return gx(D,e,t)};function k(){var e=yx(n,0,0,f,p,d).apply(null,t(a,o)),m=yx(n,r-e[0],i-e[1],f,p,d);return u=Qy(s,c,l),C=Xy(t,m),w=Xy(u,C),S=vx(C,x),A()}function A(){return T=E=null,D}return function(){return t=e.apply(this,arguments),D.invert=t.invert&&O,k()}}function Sx(e){var t=0,n=fv/3,r=xx(e),i=r(t,n);return i.parallels=function(e){return arguments.length?r(t=e[0]*_v,n=e[1]*_v):[t*gv,n*gv]},i}function Kne(e){var t=R(e);function n(e,n){return[e*t,z(n)/t]}return n.invert=function(e,n){return[e/t,Av(n*t)]},n}function qne(e,t){var n=z(e),r=(n+z(t))/2;if(vv(r)<1e-6)return Kne(e);var i=1+n*(2*r-n),a=Dv(i)/r;function o(e,t){var n=Dv(i-2*r*z(t))/r;return[n*z(e*=r),a-n*R(e)]}return o.invert=function(e,t){var n=a-t,o=bv(e,vv(n))*Ev(n);return n*r<0&&(o-=fv*Ev(e)*Ev(n)),[o/r,Av((i-(e*e+n*n)*r*r)/(2*r))]},o}function Cx(){return Sx(qne).scale(155.424).center([0,33.6442])}function wx(){return Cx().parallels([29.5,45.5]).scale(1070).translate([480,250]).rotate([96,0]).center([-.6,38.7])}function Jne(e){var t=e.length;return{point:function(n,r){for(var i=-1;++i<t;)e[i].point(n,r)},sphere:function(){for(var n=-1;++n<t;)e[n].sphere()},lineStart:function(){for(var n=-1;++n<t;)e[n].lineStart()},lineEnd:function(){for(var n=-1;++n<t;)e[n].lineEnd()},polygonStart:function(){for(var n=-1;++n<t;)e[n].polygonStart()},polygonEnd:function(){for(var n=-1;++n<t;)e[n].polygonEnd()}}}function Yne(){var e,t,n=wx(),r,i=Cx().rotate([154,0]).center([-2,58.5]).parallels([55,65]),a,o=Cx().rotate([157,0]).center([-3,19.9]).parallels([8,18]),s,c,l={point:function(e,t){c=[e,t]}};function u(e){var t=e[0],n=e[1];return c=null,r.point(t,n),c||(a.point(t,n),c)||(s.point(t,n),c)}u.invert=function(e){var t=n.scale(),r=n.translate(),a=(e[0]-r[0])/t,s=(e[1]-r[1])/t;return(s>=.12&&s<.234&&a>=-.425&&a<-.214?i:s>=.166&&s<.234&&a>=-.214&&a<-.115?o:n).invert(e)},u.stream=function(r){return e&&t===r?e:e=Jne([n.stream(t=r),i.stream(r),o.stream(r)])},u.precision=function(e){return arguments.length?(n.precision(e),i.precision(e),o.precision(e),d()):n.precision()},u.scale=function(e){return arguments.length?(n.scale(e),i.scale(e*.35),o.scale(e),u.translate(n.translate())):n.scale()},u.translate=function(e){if(!arguments.length)return n.translate();var t=n.scale(),c=+e[0],u=+e[1];return r=n.translate(e).clipExtent([[c-.455*t,u-.238*t],[c+.455*t,u+.238*t]]).stream(l),a=i.translate([c-.307*t,u+.201*t]).clipExtent([[c-.425*t+dv,u+.12*t+dv],[c-.214*t-dv,u+.234*t-dv]]).stream(l),s=o.translate([c-.205*t,u+.212*t]).clipExtent([[c-.214*t+dv,u+.166*t+dv],[c-.115*t-dv,u+.234*t-dv]]).stream(l),d()},u.fitExtent=function(e,t){return px(u,e,t)},u.fitSize=function(e,t){return mx(u,e,t)},u.fitWidth=function(e,t){return hx(u,e,t)},u.fitHeight=function(e,t){return gx(u,e,t)};function d(){return e=t=null,u}return u.scale(1070)}function Tx(e){return function(t,n){var r=R(t),i=R(n),a=e(r*i);return a===1/0?[2,0]:[a*i*z(t),a*z(n)]}}function Ex(e){return function(t,n){var r=Dv(t*t+n*n),i=e(r),a=z(i),o=R(i);return[bv(t*a,r*o),Av(r&&n*a/r)]}}var Dx=Tx(function(e){return Dv(2/(1+e))});Dx.invert=Ex(function(e){return 2*Av(e/2)});function Xne(){return bx(Dx).scale(124.75).clipAngle(179.999)}var Ox=Tx(function(e){return(e=kv(e))&&e/z(e)});Ox.invert=Ex(function(e){return e});function Zne(){return bx(Ox).scale(79.4188).clipAngle(179.999)}function kx(e,t){return[e,wv(Ov((pv+t)/2))]}kx.invert=function(e,t){return[e,2*yv(Sv(t))-pv]};function Qne(){return Ax(kx).scale(961/hv)}function Ax(e){var t=bx(e),n=t.center,r=t.scale,i=t.translate,a=t.clipExtent,o=null,s,c,l;t.scale=function(e){return arguments.length?(r(e),u()):r()},t.translate=function(e){return arguments.length?(i(e),u()):i()},t.center=function(e){return arguments.length?(n(e),u()):n()},t.clipExtent=function(e){return arguments.length?(e==null?o=s=c=l=null:(o=+e[0][0],s=+e[0][1],c=+e[1][0],l=+e[1][1]),u()):o==null?null:[[o,s],[c,l]]};function u(){var n=fv*r(),i=t(vne(t.rotate()).invert([0,0]));return a(o==null?[[i[0]-n,i[1]-n],[i[0]+n,i[1]+n]]:e===kx?[[Math.max(i[0]-n,o),s],[Math.min(i[0]+n,c),l]]:[[o,Math.max(i[1]-n,s)],[c,Math.min(i[1]+n,l)]])}return u()}function jx(e){return Ov((pv+e)/2)}function $ne(e,t){var n=R(e),r=e===t?z(e):wv(n/R(t))/wv(jx(t)/jx(e)),i=n*Tv(jx(e),r)/r;if(!r)return kx;function a(e,t){i>0?t<-pv+1e-6&&(t=-pv+dv):t>pv-1e-6&&(t=pv-dv);var n=i/Tv(jx(t),r);return[n*z(r*e),i-n*R(r*e)]}return a.invert=function(e,t){var n=i-t,a=Ev(r)*Dv(e*e+n*n),o=bv(e,vv(n))*Ev(n);return n*r<0&&(o-=fv*Ev(e)*Ev(n)),[o/r,2*yv(Tv(i/a,1/r))-pv]},a}function ere(){return Sx($ne).scale(109.5).parallels([30,30])}function Mx(e,t){return[e,t]}Mx.invert=Mx;function tre(){return bx(Mx).scale(152.63)}function nre(e,t){var n=R(e),r=e===t?z(e):(n-R(t))/(t-e),i=n/r+e;if(vv(r)<1e-6)return Mx;function a(e,t){var n=i-t,a=r*e;return[n*z(a),i-n*R(a)]}return a.invert=function(e,t){var n=i-t,a=bv(e,vv(n))*Ev(n);return n*r<0&&(a-=fv*Ev(e)*Ev(n)),[a/r,i-Ev(r)*Dv(e*e+n*n)]},a}function rre(){return Sx(nre).scale(131.154).center([0,13.9389])}var Nx=1.340264,Px=-.081106,Fx=893e-6,Ix=.003796,Lx=Dv(3)/2,ire=12;function Rx(e,t){var n=Av(Lx*z(t)),r=n*n,i=r*r*r;return[e*R(n)/(Lx*(Nx+3*Px*r+i*(7*Fx+9*Ix*r))),n*(Nx+Px*r+i*(Fx+Ix*r))]}Rx.invert=function(e,t){for(var n=t,r=n*n,i=r*r*r,a=0,o,s,c;a<ire&&(s=n*(Nx+Px*r+i*(Fx+Ix*r))-t,c=Nx+3*Px*r+i*(7*Fx+9*Ix*r),n-=o=s/c,r=n*n,i=r*r*r,!(vv(o)<1e-12));++a);return[Lx*e*(Nx+3*Px*r+i*(7*Fx+9*Ix*r))/R(n),Av(z(n)/Lx)]};function are(){return bx(Rx).scale(177.158)}function zx(e,t){var n=R(t),r=R(e)*n;return[n*z(e)/r,z(t)/r]}zx.invert=Ex(yv);function ore(){return bx(zx).scale(144.049).clipAngle(60)}function sre(){var e=1,t=0,n=0,r=1,i=1,a=0,o,s,c=null,l,u,d,f=1,p=1,m=ux({point:function(e,t){var n=y([e,t]);this.stream.point(n[0],n[1])}}),h=gb,g,_;function v(){return f=e*r,p=e*i,g=_=null,y}function y(e){var r=e[0]*f,i=e[1]*p;if(a){var c=i*o-r*s;r=r*o+i*s,i=c}return[r+t,i+n]}return y.invert=function(e){var r=e[0]-t,i=e[1]-n;if(a){var c=i*o+r*s;r=r*o-i*s,i=c}return[r/f,i/p]},y.stream=function(e){return g&&_===e?g:g=m(h(_=e))},y.postclip=function(e){return arguments.length?(h=e,c=l=u=d=null,v()):h},y.clipExtent=function(e){return arguments.length?(h=e==null?(c=l=u=d=null,gb):pb(c=+e[0][0],l=+e[0][1],u=+e[1][0],d=+e[1][1]),v()):c==null?null:[[c,l],[u,d]]},y.scale=function(t){return arguments.length?(e=+t,v()):e},y.translate=function(e){return arguments.length?(t=+e[0],n=+e[1],v()):[t,n]},y.angle=function(e){return arguments.length?(a=e%360*_v,s=z(a),o=R(a),v()):a*gv},y.reflectX=function(e){return arguments.length?(r=e?-1:1,v()):r<0},y.reflectY=function(e){return arguments.length?(i=e?-1:1,v()):i<0},y.fitExtent=function(e,t){return px(y,e,t)},y.fitSize=function(e,t){return mx(y,e,t)},y.fitWidth=function(e,t){return hx(y,e,t)},y.fitHeight=function(e,t){return gx(y,e,t)},y}function Bx(e,t){var n=t*t,r=n*n;return[e*(.8707-.131979*n+r*(-.013791+r*(.003971*n-.001529*r))),t*(1.007226+n*(.015085+r*(-.044475+.028874*n-.005916*r)))]}Bx.invert=function(e,t){var n=t,r=25,i;do{var a=n*n,o=a*a;n-=i=(n*(1.007226+a*(.015085+o*(-.044475+.028874*a-.005916*o)))-t)/(1.007226+a*(.045255+o*(-.311325+.259866*a-.005916*11*o)))}while(vv(i)>1e-6&&--r>0);return[e/(.8707+(a=n*n)*(-.131979+a*(-.013791+a*a*a*(.003971-.001529*a)))),n]};function cre(){return bx(Bx).scale(175.295)}function Vx(e,t){return[R(t)*z(e),z(t)]}Vx.invert=Ex(Av);function lre(){return bx(Vx).scale(249.5).clipAngle(90+dv)}function Hx(e,t){var n=R(t),r=1+R(e)*n;return[n*z(e)/r,z(t)/r]}Hx.invert=Ex(function(e){return 2*yv(e)});function ure(){return bx(Hx).scale(250).clipAngle(142)}function Ux(e,t){return[wv(Ov((pv+t)/2)),-e]}Ux.invert=function(e,t){return[-t,2*yv(Sv(e))-pv]};function dre(){var e=Ax(Ux),t=e.center,n=e.rotate;return e.center=function(e){return arguments.length?t([-e[1],e[0]]):(e=t(),[e[1],-e[0]])},e.rotate=function(e){return arguments.length?n([e[0],e[1],e.length>2?e[2]+90:90]):(e=n(),[e[0],e[1],e[2]-90])},n([0,0,90]).scale(159.155)}var fre=Math.abs,Wx=Math.cos,Gx=Math.sin,Kx=Math.PI,qx=Kx/2;Kx/4;var Jx=pre(2);Kx*2,180/Kx,Kx/180;function Yx(e){return e>1?qx:e<-1?-qx:Math.asin(e)}function pre(e){return e>0?Math.sqrt(e):0}function mre(e,t){var n=e*Gx(t),r=30,i;do t-=i=(t+Gx(t)-n)/(1+Wx(t));while(fre(i)>1e-6&&--r>0);return t/2}function hre(e,t,n){function r(r,i){return[e*r*Wx(i=mre(n,i)),t*Gx(i)]}return r.invert=function(r,i){return i=Yx(i/t),[r/(e*Wx(i)),Yx((2*i+Gx(2*i))/n)]},r}var gre=hre(Jx/qx,Jx,Kx);function _re(){return bx(gre).scale(169.529)}var vre=lx(),Xx=[`clipAngle`,`clipExtent`,`scale`,`translate`,`center`,`rotate`,`parallels`,`precision`,`reflectX`,`reflectY`,`coefficient`,`distance`,`fraction`,`lobes`,`parallel`,`radius`,`ratio`,`spacing`,`tilt`];function yre(e,t){return function n(){let r=t();return r.type=e,r.path=lx().projection(r),r.copy=r.copy||function(){let e=n();return Xx.forEach(t=>{r[t]&&e[t](r[t]())}),e.path.pointRadius(r.path.pointRadius()),e},bl(r)}}function Zx(e,t){if(!e||typeof e!=`string`)throw Error(`Projection type must be a name string.`);return e=e.toLowerCase(),arguments.length>1?($x[e]=yre(e,t),this):$x[e]||null}function Qx(e){return e&&e.path||vre}var $x={albers:wx,albersusa:Yne,azimuthalequalarea:Xne,azimuthalequidistant:Zne,conicconformal:ere,conicequalarea:Cx,conicequidistant:rre,equalEarth:are,equirectangular:tre,gnomonic:ore,identity:sre,mercator:Qne,mollweide:_re,naturalEarth1:cre,orthographic:lre,stereographic:ure,transversemercator:dre};for(let e in $x)Zx(e,$x[e]);var bre=t({contour:()=>fS,geojson:()=>hS,geopath:()=>gS,geopoint:()=>_S,geoshape:()=>vS,graticule:()=>yS,heatmap:()=>bS,isocontour:()=>rS,kde2d:()=>uS,projection:()=>SS});function xre(){}var eS=[[],[[[1,1.5],[.5,1]]],[[[1.5,1],[1,1.5]]],[[[1.5,1],[.5,1]]],[[[1,.5],[1.5,1]]],[[[1,1.5],[.5,1]],[[1,.5],[1.5,1]]],[[[1,.5],[1,1.5]]],[[[1,.5],[.5,1]]],[[[.5,1],[1,.5]]],[[[1,1.5],[1,.5]]],[[[.5,1],[1,.5]],[[1.5,1],[1,1.5]]],[[[1.5,1],[1,.5]]],[[[.5,1],[1.5,1]]],[[[1,1.5],[1.5,1]]],[[[.5,1],[1,1.5]]],[]];function tS(){var e=1,t=1,n=s;function r(e,t){return t.map(t=>i(e,t))}function i(e,t){var r=[],i=[];return a(e,t,a=>{n(a,e,t),Sre(a)>0?r.push([a]):i.push(a)}),i.forEach(e=>{for(var t=0,n=r.length,i;t<n;++t)if(Cre((i=r[t])[0],e)!==-1){i.push(e);return}}),{type:`MultiPolygon`,value:t,coordinates:r}}function a(n,r,i){var a=[],s=[],c=l=-1,l,u,d=n[0]>=r,f,p;for(eS[d<<1].forEach(m);++c<e-1;)u=d,d=n[c+1]>=r,eS[u|d<<1].forEach(m);for(eS[d<<0].forEach(m);++l<t-1;){for(c=-1,d=n[l*e+e]>=r,f=n[l*e]>=r,eS[d<<1|f<<2].forEach(m);++c<e-1;)u=d,d=n[l*e+e+c+1]>=r,p=f,f=n[l*e+c+1]>=r,eS[u|d<<1|f<<2|p<<3].forEach(m);eS[d|f<<3].forEach(m)}for(c=-1,f=n[l*e]>=r,eS[f<<2].forEach(m);++c<e-1;)p=f,f=n[l*e+c+1]>=r,eS[f<<2|p<<3].forEach(m);eS[f<<3].forEach(m);function m(e){var t=[e[0][0]+c,e[0][1]+l],n=[e[1][0]+c,e[1][1]+l],r=o(t),u=o(n),d,f;(d=s[r])?(f=a[u])?(delete s[d.end],delete a[f.start],d===f?(d.ring.push(n),i(d.ring)):a[d.start]=s[f.end]={start:d.start,end:f.end,ring:d.ring.concat(f.ring)}):(delete s[d.end],d.ring.push(n),s[d.end=u]=d):(d=a[u])?(f=s[r])?(delete a[d.start],delete s[f.end],d===f?(d.ring.push(n),i(d.ring)):a[f.start]=s[d.end]={start:f.start,end:d.end,ring:f.ring.concat(d.ring)}):(delete a[d.start],d.ring.unshift(t),a[d.start=r]=d):a[r]=s[u]={start:r,end:u,ring:[t,n]}}}function o(t){return t[0]*2+t[1]*(e+1)*4}function s(n,r,i){n.forEach(n=>{var a=n[0],o=n[1],s=a|0,c=o|0,l,u=r[c*e+s];a>0&&a<e&&s===a&&(l=r[c*e+s-1],n[0]=a+(i-l)/(u-l)-.5),o>0&&o<t&&c===o&&(l=r[(c-1)*e+s],n[1]=o+(i-l)/(u-l)-.5)})}return r.contour=i,r.size=function(n){if(!arguments.length)return[e,t];var i=Math.floor(n[0]),a=Math.floor(n[1]);return i>=0&&a>=0||j(`invalid size`),e=i,t=a,r},r.smooth=function(e){return arguments.length?(n=e?s:xre,r):n===s},r}function Sre(e){for(var t=0,n=e.length,r=e[n-1][1]*e[0][0]-e[n-1][0]*e[0][1];++t<n;)r+=e[t-1][1]*e[t][0]-e[t-1][0]*e[t][1];return r}function Cre(e,t){for(var n=-1,r=t.length,i;++n<r;)if(i=wre(e,t[n]))return i;return 0}function wre(e,t){for(var n=t[0],r=t[1],i=-1,a=0,o=e.length,s=o-1;a<o;s=a++){var c=e[a],l=c[0],u=c[1],d=e[s],f=d[0],p=d[1];if(Tre(c,d,t))return 0;u>r!=p>r&&n<(f-l)*(r-u)/(p-u)+l&&(i=-i)}return i}function Tre(e,t,n){var r;return Ere(e,t,n)&&Dre(e[r=+(e[0]===t[0])],n[r],t[r])}function Ere(e,t,n){return(t[0]-e[0])*(n[1]-e[1])===(n[0]-e[0])*(t[1]-e[1])}function Dre(e,t,n){return e<=t&&t<=n||n<=t&&t<=e}function nS(e,t,n){return function(r){var i=ur(r),a=n?Math.min(i[0],0):i[0],o=i[1],s=o-a,c=t?Pe(a,o,e):s/(e+1);return ct(a+c,o,c)}}function rS(e){L.call(this,null,e)}rS.Definition={type:`Isocontour`,metadata:{generates:!0},params:[{name:`field`,type:`field`},{name:`thresholds`,type:`number`,array:!0},{name:`levels`,type:`number`},{name:`nice`,type:`boolean`,default:!1},{name:`resolve`,type:`enum`,values:[`shared`,`independent`],default:`independent`},{name:`zero`,type:`boolean`,default:!0},{name:`smooth`,type:`boolean`,default:!0},{name:`scale`,type:`number`,expr:!0},{name:`translate`,type:`number`,array:!0,expr:!0},{name:`as`,type:`string`,null:!0,default:`contour`}]},F(rS,L,{transform(e,t){if(this.value&&!t.changed()&&!e.modified())return t.StopPropagation;var n=t.fork(t.NO_SOURCE|t.NO_FIELDS),r=t.materialize(t.SOURCE).source,i=e.field||ne,a=tS().smooth(e.smooth!==!1),o=e.thresholds||Ore(r,i,e),s=e.as===null?null:e.as||`contour`,c=[];return r.forEach(t=>{let n=i(t),r=a.size([n.width,n.height])(n.values,N(o)?o:o(n.values));kre(r,n,t,e),r.forEach(e=>{c.push($r(t,Zr(s==null?e:{[s]:e})))})}),this.value&&(n.rem=this.value),this.value=n.source=n.add=c,n}});function Ore(e,t,n){let r=nS(n.levels||10,n.nice,n.zero!==!1);return n.resolve===`shared`?r(e.map(e=>ot(t(e).values))):r}function kre(e,t,n,r){let i=r.scale||t.scale,a=r.translate||t.translate;if(m(i)&&(i=i(n,r)),m(a)&&(a=a(n,r)),(i===1||i==null)&&!a)return;let s=(o(i)?i:i[0])||1,c=(o(i)?i:i[1])||1,l=a&&a[0]||0,u=a&&a[1]||0;e.forEach(iS(t,s,c,l,u))}function iS(e,t,n,r,i){let a=e.x1||0,o=e.y1||0,s=t*n<0;function c(e){e.forEach(l)}function l(e){s&&e.reverse(),e.forEach(u)}function u(e){e[0]=(e[0]-a)*t+r,e[1]=(e[1]-o)*n+i}return function(e){return e.coordinates.forEach(c),e}}function aS(e,t,n){let r=e>=0?e:ia(t,n);return Math.round((Math.sqrt(4*r*r+1)-1)/2)}function oS(e){return m(e)?e:d(+e)}function sS(){var e=e=>e[0],t=e=>e[1],n=Se,r=[-1,-1],i=960,a=500,o=2;function s(s,c){let l=aS(r[0],s,e)>>o,u=aS(r[1],s,t)>>o,d=l?l+2:0,f=u?u+2:0,p=2*d+(i>>o),m=2*f+(a>>o),h=new Float32Array(p*m),g=new Float32Array(p*m),_=h;s.forEach(r=>{let i=d+(+e(r)>>o),a=f+(+t(r)>>o);i>=0&&i<p&&a>=0&&a<m&&(h[i+a*p]+=+n(r))}),l>0&&u>0?(cS(p,m,h,g,l),lS(p,m,g,h,u),cS(p,m,h,g,l),lS(p,m,g,h,u),cS(p,m,h,g,l),lS(p,m,g,h,u)):l>0?(cS(p,m,h,g,l),cS(p,m,g,h,l),cS(p,m,h,g,l),_=g):u>0&&(lS(p,m,h,g,u),lS(p,m,g,h,u),lS(p,m,h,g,u),_=g);let v=c?2**(-2*o):1/zr(_);for(let e=0,t=p*m;e<t;++e)_[e]*=v;return{values:_,scale:1<<o,width:p,height:m,x1:d,y1:f,x2:d+(i>>o),y2:f+(a>>o)}}return s.x=function(t){return arguments.length?(e=oS(t),s):e},s.y=function(e){return arguments.length?(t=oS(e),s):t},s.weight=function(e){return arguments.length?(n=oS(e),s):n},s.size=function(e){if(!arguments.length)return[i,a];var t=+e[0],n=+e[1];return t>=0&&n>=0||j(`invalid size`),i=t,a=n,s},s.cellSize=function(e){return arguments.length?((e=+e)>=1||j(`invalid cell size`),o=Math.floor(Math.log(e)/Math.LN2),s):1<<o},s.bandwidth=function(e){return arguments.length?(e=k(e),e.length===1&&(e=[+e[0],+e[0]]),e.length!==2&&j(`invalid bandwidth`),r=e,s):r},s}function cS(e,t,n,r,i){let a=(i<<1)+1;for(let o=0;o<t;++o)for(let t=0,s=0;t<e+i;++t)t<e&&(s+=n[t+o*e]),t>=i&&(t>=a&&(s-=n[t-a+o*e]),r[t-i+o*e]=s/Math.min(t+1,e-1+a-t,a))}function lS(e,t,n,r,i){let a=(i<<1)+1;for(let o=0;o<e;++o)for(let s=0,c=0;s<t+i;++s)s<t&&(c+=n[o+s*e]),s>=i&&(s>=a&&(c-=n[o+(s-a)*e]),r[o+(s-i)*e]=c/Math.min(s+1,t-1+a-s,a))}function uS(e){L.call(this,null,e)}uS.Definition={type:`KDE2D`,metadata:{generates:!0},params:[{name:`size`,type:`number`,array:!0,length:2,required:!0},{name:`x`,type:`field`,required:!0},{name:`y`,type:`field`,required:!0},{name:`weight`,type:`field`},{name:`groupby`,type:`field`,array:!0},{name:`cellSize`,type:`number`},{name:`bandwidth`,type:`number`,array:!0,length:2},{name:`counts`,type:`boolean`,default:!1},{name:`as`,type:`string`,default:`grid`}]};var Are=[`x`,`y`,`weight`,`size`,`cellSize`,`bandwidth`];function dS(e,t){return Are.forEach(n=>t[n]==null?0:e[n](t[n])),e}F(uS,L,{transform(e,t){if(this.value&&!t.changed()&&!e.modified())return t.StopPropagation;var n=t.fork(t.NO_SOURCE|t.NO_FIELDS),r=t.materialize(t.SOURCE).source,i=jre(r,e.groupby),a=(e.groupby||[]).map(ve),o=dS(sS(),e),s=e.as||`grid`,c=[];function l(e,t){for(let n=0;n<a.length;++n)e[a[n]]=t[n];return e}return c=i.map(t=>Zr(l({[s]:o(t,e.counts)},t.dims))),this.value&&(n.rem=this.value),this.value=n.source=n.add=c,n}});function jre(e,t){var n=[],r=e=>e(s),i,a,o,s,c,l;if(t==null)n.push(e);else for(i={},a=0,o=e.length;a<o;++a)s=e[a],c=t.map(r),l=i[c],l||(i[c]=l=[],l.dims=c,n.push(l)),l.push(s);return n}function fS(e){L.call(this,null,e)}fS.Definition={type:`Contour`,metadata:{generates:!0},params:[{name:`size`,type:`number`,array:!0,length:2,required:!0},{name:`values`,type:`number`,array:!0},{name:`x`,type:`field`},{name:`y`,type:`field`},{name:`weight`,type:`field`},{name:`cellSize`,type:`number`},{name:`bandwidth`,type:`number`},{name:`count`,type:`number`},{name:`nice`,type:`boolean`,default:!1},{name:`thresholds`,type:`number`,array:!0},{name:`smooth`,type:`boolean`,default:!0}]},F(fS,L,{transform(e,t){if(this.value&&!t.changed()&&!e.modified())return t.StopPropagation;var n=t.fork(t.NO_SOURCE|t.NO_FIELDS),r=tS().smooth(e.smooth!==!1),i=e.values,a=e.thresholds||nS(e.count||10,e.nice,!!i),o=e.size,s,c;return i||=(i=t.materialize(t.SOURCE).source,s=dS(sS(),e)(i,!0),c=iS(s,s.scale||1,s.scale||1,0,0),o=[s.width,s.height],s.values),a=N(a)?a:a(i),i=r.size(o)(i,a),c&&i.forEach(c),this.value&&(n.rem=this.value),this.value=n.source=n.add=(i||[]).map(Zr),n}});var pS=`Feature`,mS=`FeatureCollection`,Mre=`MultiPoint`;function hS(e){L.call(this,null,e)}hS.Definition={type:`GeoJSON`,metadata:{},params:[{name:`fields`,type:`field`,array:!0,length:2},{name:`geojson`,type:`field`}]},F(hS,L,{transform(e,t){var n=this._features,r=this._points,i=e.fields,a=i&&i[0],o=i&&i[1],s=e.geojson||!i&&ne,c=t.ADD,l=e.modified()||t.changed(t.REM)||t.modified(Ce(s))||a&&t.modified(Ce(a))||o&&t.modified(Ce(o));(!this.value||l)&&(c=t.SOURCE,this._features=n=[],this._points=r=[]),s&&t.visit(c,e=>n.push(s(e))),a&&o&&(t.visit(c,e=>{var t=a(e),n=o(e);t!=null&&n!=null&&(t=+t)===t&&(n=+n)===n&&r.push([t,n])}),n=n.concat({type:pS,geometry:{type:Mre,coordinates:r}})),this.value={type:mS,features:n}}});function gS(e){L.call(this,null,e)}gS.Definition={type:`GeoPath`,metadata:{modifies:!0},params:[{name:`projection`,type:`projection`},{name:`field`,type:`field`},{name:`pointRadius`,type:`number`,expr:!0},{name:`as`,type:`string`,default:`path`}]},F(gS,L,{transform(e,t){var n=t.fork(t.ALL),r=this.value,i=e.field||ne,a=e.as||`path`,o=n.SOURCE;!r||e.modified()?(this.value=r=Qx(e.projection),n.materialize().reflow()):o=i===ne||t.modified(i.fields)?n.ADD_MOD:n.ADD;let s=Nre(r,e.pointRadius);return n.visit(o,e=>e[a]=r(i(e))),r.pointRadius(s),n.modifies(a)}});function Nre(e,t){let n=e.pointRadius();return e.context(null),t!=null&&e.pointRadius(t),n}function _S(e){L.call(this,null,e)}_S.Definition={type:`GeoPoint`,metadata:{modifies:!0},params:[{name:`projection`,type:`projection`,required:!0},{name:`fields`,type:`field`,array:!0,required:!0,length:2},{name:`as`,type:`string`,array:!0,length:2,default:[`x`,`y`]}]},F(_S,L,{transform(e,t){var n=e.projection,r=e.fields[0],i=e.fields[1],a=e.as||[`x`,`y`],o=a[0],s=a[1],c;function l(e){let t=n([r(e),i(e)]);t?(e[o]=t[0],e[s]=t[1]):(e[o]=void 0,e[s]=void 0)}return e.modified()?t=t.materialize().reflow(!0).visit(t.SOURCE,l):(c=t.modified(r.fields)||t.modified(i.fields),t.visit(c?t.ADD_MOD:t.ADD,l)),t.modifies(a)}});function vS(e){L.call(this,null,e)}vS.Definition={type:`GeoShape`,metadata:{modifies:!0,nomod:!0},params:[{name:`projection`,type:`projection`},{name:`field`,type:`field`,default:`datum`},{name:`pointRadius`,type:`number`,expr:!0},{name:`as`,type:`string`,default:`shape`}]},F(vS,L,{transform(e,t){var n=t.fork(t.ALL),r=this.value,i=e.as||`shape`,a=n.ADD;return(!r||e.modified())&&(this.value=r=Pre(Qx(e.projection),e.field||ge(`datum`),e.pointRadius),n.materialize().reflow(),a=n.SOURCE),n.visit(a,e=>e[i]=r),n.modifies(i)}});function Pre(e,t,n){let r=n==null?n=>e(t(n)):r=>{var i=e.pointRadius(),a=e.pointRadius(n)(t(r));return e.pointRadius(i),a};return r.context=t=>(e.context(t),r),r}function yS(e){L.call(this,[],e),this.generator=One()}yS.Definition={type:`Graticule`,metadata:{changes:!0,generates:!0},params:[{name:`extent`,type:`array`,array:!0,length:2,content:{type:`number`,array:!0,length:2}},{name:`extentMajor`,type:`array`,array:!0,length:2,content:{type:`number`,array:!0,length:2}},{name:`extentMinor`,type:`array`,array:!0,length:2,content:{type:`number`,array:!0,length:2}},{name:`step`,type:`number`,array:!0,length:2},{name:`stepMajor`,type:`number`,array:!0,length:2,default:[90,360]},{name:`stepMinor`,type:`number`,array:!0,length:2,default:[10,10]},{name:`precision`,type:`number`,default:2.5}]},F(yS,L,{transform(e,t){var n=this.value,r=this.generator,i;if(!n.length||e.modified())for(let t in e)m(r[t])&&r[t](e[t]);return i=r(),n.length?t.mod.push(ei(n[0],i)):t.add.push(Zr(i)),n[0]=i,t}});function bS(e){L.call(this,null,e)}bS.Definition={type:`heatmap`,metadata:{modifies:!0},params:[{name:`field`,type:`field`},{name:`color`,type:`string`,expr:!0},{name:`opacity`,type:`number`,expr:!0},{name:`resolve`,type:`enum`,values:[`shared`,`independent`],default:`independent`},{name:`as`,type:`string`,default:`image`}]},F(bS,L,{transform(e,t){if(!t.changed()&&!e.modified())return t.StopPropagation;var n=t.materialize(t.SOURCE).source,r=e.resolve===`shared`,i=e.field||ne,a=Ire(e.opacity,e),o=Fre(e.color,e),s=e.as||`image`,c={$x:0,$y:0,$value:0,$max:r?ot(n.map(e=>ot(i(e).values))):0};return n.forEach(e=>{let t=i(e),n=D({},e,c);r||(n.$max=ot(t.values||[])),e[s]=Lre(t,n,o.dep?o:d(o(n)),a.dep?a:d(a(n)))}),t.reflow(!0).modifies(s)}});function Fre(e,t){let n;return m(e)?(n=n=>$t(e(n,t)),n.dep=xS(e)):n=d($t(e||`#888`)),n}function Ire(e,t){let n;return m(e)?(n=n=>e(n,t),n.dep=xS(e)):e?n=d(e):(n=e=>e.$value/e.$max||0,n.dep=!0),n}function xS(e){if(!m(e))return!1;let t=_(Ce(e));return t.$x||t.$y||t.$value||t.$max}function Lre(e,t,n,r){let i=e.width,a=e.height,o=e.x1||0,s=e.y1||0,c=e.x2||i,l=e.y2||a,u=e.values,d=u?e=>u[e]:ae,f=Js(c-o,l-s),p=f.getContext(`2d`),m=p.getImageData(0,0,c-o,l-s),h=m.data;for(let e=s,a=0;e<l;++e){t.$y=e-s;for(let s=o,l=e*i;s<c;++s,a+=4){t.$x=s-o,t.$value=d(s+l);let e=n(t);h[a+0]=e.r,h[a+1]=e.g,h[a+2]=e.b,h[a+3]=~~(255*r(t))}}return p.putImageData(m,0,0),f}function SS(e){L.call(this,null,e),this.modified(!0)}F(SS,L,{transform(e,t){let n=this.value;return!n||e.modified(`type`)?(this.value=n=zre(e.type),Xx.forEach(t=>{e[t]!=null&&CS(n,t,e[t])})):Xx.forEach(t=>{e.modified(t)&&CS(n,t,e[t])}),e.pointRadius!=null&&n.path.pointRadius(e.pointRadius),e.fit&&Rre(n,e),t.fork(t.NO_SOURCE|t.NO_FIELDS)}});function Rre(e,t){let n=Bre(t.fit);t.extent?e.fitExtent(t.extent,n):t.size&&e.fitSize(t.size,n)}function zre(e){let t=Zx((e||`mercator`).toLowerCase());return t||j(`Unrecognized projection type: `+e),t()}function CS(e,t,n){m(e[t])&&e[t](n)}function Bre(e){return e=k(e),e.length===1?e[0]:{type:mS,features:e.reduce((e,t)=>e.concat(Vre(t)),[])}}function Vre(e){return e.type===mS?e.features:k(e).filter(e=>e!=null).map(e=>e.type===pS?e:{type:pS,geometry:e})}function Hre(e,t){var n,r=1;e??=0,t??=0;function i(){var i,a=n.length,o,s=0,c=0;for(i=0;i<a;++i)o=n[i],s+=o.x,c+=o.y;for(s=(s/a-e)*r,c=(c/a-t)*r,i=0;i<a;++i)o=n[i],o.x-=s,o.y-=c}return i.initialize=function(e){n=e},i.x=function(t){return arguments.length?(e=+t,i):e},i.y=function(e){return arguments.length?(t=+e,i):t},i.strength=function(e){return arguments.length?(r=+e,i):r},i}function Ure(e){let t=+this._x.call(null,e),n=+this._y.call(null,e);return wS(this.cover(t,n),t,n,e)}function wS(e,t,n,r){if(isNaN(t)||isNaN(n))return e;var i,a=e._root,o={data:r},s=e._x0,c=e._y0,l=e._x1,u=e._y1,d,f,p,m,h,g,_,v;if(!a)return e._root=o,e;for(;a.length;)if((h=t>=(d=(s+l)/2))?s=d:l=d,(g=n>=(f=(c+u)/2))?c=f:u=f,i=a,!(a=a[_=g<<1|h]))return i[_]=o,e;if(p=+e._x.call(null,a.data),m=+e._y.call(null,a.data),t===p&&n===m)return o.next=a,i?i[_]=o:e._root=o,e;do i=i?i[_]=[,,,,]:e._root=[,,,,],(h=t>=(d=(s+l)/2))?s=d:l=d,(g=n>=(f=(c+u)/2))?c=f:u=f;while((_=g<<1|h)==(v=(m>=f)<<1|p>=d));return i[v]=a,i[_]=o,e}function Wre(e){var t,n,r=e.length,i,a,o=Array(r),s=Array(r),c=1/0,l=1/0,u=-1/0,d=-1/0;for(n=0;n<r;++n)isNaN(i=+this._x.call(null,t=e[n]))||isNaN(a=+this._y.call(null,t))||(o[n]=i,s[n]=a,i<c&&(c=i),i>u&&(u=i),a<l&&(l=a),a>d&&(d=a));if(c>u||l>d)return this;for(this.cover(c,l).cover(u,d),n=0;n<r;++n)wS(this,o[n],s[n],e[n]);return this}function Gre(e,t){if(isNaN(e=+e)||isNaN(t=+t))return this;var n=this._x0,r=this._y0,i=this._x1,a=this._y1;if(isNaN(n))i=(n=Math.floor(e))+1,a=(r=Math.floor(t))+1;else{for(var o=i-n||1,s=this._root,c,l;n>e||e>=i||r>t||t>=a;)switch(l=(t<r)<<1|e<n,c=[,,,,],c[l]=s,s=c,o*=2,l){case 0:i=n+o,a=r+o;break;case 1:n=i-o,a=r+o;break;case 2:i=n+o,r=a-o;break;case 3:n=i-o,r=a-o}this._root&&this._root.length&&(this._root=s)}return this._x0=n,this._y0=r,this._x1=i,this._y1=a,this}function Kre(){var e=[];return this.visit(function(t){if(!t.length)do e.push(t.data);while(t=t.next)}),e}function qre(e){return arguments.length?this.cover(+e[0][0],+e[0][1]).cover(+e[1][0],+e[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]}function TS(e,t,n,r,i){this.node=e,this.x0=t,this.y0=n,this.x1=r,this.y1=i}function ES(e,t,n){var r,i=this._x0,a=this._y0,o,s,c,l,u=this._x1,d=this._y1,f=[],p=this._root,m,h;for(p&&f.push(new TS(p,i,a,u,d)),n==null?n=1/0:(i=e-n,a=t-n,u=e+n,d=t+n,n*=n);m=f.pop();)if(!(!(p=m.node)||(o=m.x0)>u||(s=m.y0)>d||(c=m.x1)<i||(l=m.y1)<a)){if(p.length){var g=(o+c)/2,_=(s+l)/2;f.push(new TS(p[3],g,_,c,l),new TS(p[2],o,_,g,l),new TS(p[1],g,s,c,_),new TS(p[0],o,s,g,_)),(h=(t>=_)<<1|e>=g)&&(m=f[f.length-1],f[f.length-1]=f[f.length-1-h],f[f.length-1-h]=m)}else{var v=e-+this._x.call(null,p.data),y=t-+this._y.call(null,p.data),b=v*v+y*y;if(b<n){var x=Math.sqrt(n=b);i=e-x,a=t-x,u=e+x,d=t+x,r=p.data}}}return r}function DS(e){if(isNaN(u=+this._x.call(null,e))||isNaN(d=+this._y.call(null,e)))return this;var t,n=this._root,r,i,a,o=this._x0,s=this._y0,c=this._x1,l=this._y1,u,d,f,p,m,h,g,_;if(!n)return this;if(n.length)for(;;){if((m=u>=(f=(o+c)/2))?o=f:c=f,(h=d>=(p=(s+l)/2))?s=p:l=p,t=n,!(n=n[g=h<<1|m]))return this;if(!n.length)break;(t[g+1&3]||t[g+2&3]||t[g+3&3])&&(r=t,_=g)}for(;n.data!==e;)if(i=n,!(n=n.next))return this;return(a=n.next)&&delete n.next,i?(a?i.next=a:delete i.next,this):t?(a?t[g]=a:delete t[g],(n=t[0]||t[1]||t[2]||t[3])&&n===(t[3]||t[2]||t[1]||t[0])&&!n.length&&(r?r[_]=n:this._root=n),this):(this._root=a,this)}function Jre(e){for(var t=0,n=e.length;t<n;++t)this.remove(e[t]);return this}function OS(){return this._root}function kS(){var e=0;return this.visit(function(t){if(!t.length)do++e;while(t=t.next)}),e}function AS(e){var t=[],n,r=this._root,i,a,o,s,c;for(r&&t.push(new TS(r,this._x0,this._y0,this._x1,this._y1));n=t.pop();)if(!e(r=n.node,a=n.x0,o=n.y0,s=n.x1,c=n.y1)&&r.length){var l=(a+s)/2,u=(o+c)/2;(i=r[3])&&t.push(new TS(i,l,u,s,c)),(i=r[2])&&t.push(new TS(i,a,u,l,c)),(i=r[1])&&t.push(new TS(i,l,o,s,u)),(i=r[0])&&t.push(new TS(i,a,o,l,u))}return this}function jS(e){var t=[],n=[],r;for(this._root&&t.push(new TS(this._root,this._x0,this._y0,this._x1,this._y1));r=t.pop();){var i=r.node;if(i.length){var a,o=r.x0,s=r.y0,c=r.x1,l=r.y1,u=(o+c)/2,d=(s+l)/2;(a=i[0])&&t.push(new TS(a,o,s,u,d)),(a=i[1])&&t.push(new TS(a,u,s,c,d)),(a=i[2])&&t.push(new TS(a,o,d,u,l)),(a=i[3])&&t.push(new TS(a,u,d,c,l))}n.push(r)}for(;r=n.pop();)e(r.node,r.x0,r.y0,r.x1,r.y1);return this}function MS(e){return e[0]}function NS(e){return arguments.length?(this._x=e,this):this._x}function Yre(e){return e[1]}function Xre(e){return arguments.length?(this._y=e,this):this._y}function PS(e,t,n){var r=new FS(t??MS,n??Yre,NaN,NaN,NaN,NaN);return e==null?r:r.addAll(e)}function FS(e,t,n,r,i,a){this._x=e,this._y=t,this._x0=n,this._y0=r,this._x1=i,this._y1=a,this._root=void 0}function IS(e){for(var t={data:e.data},n=t;e=e.next;)n=n.next={data:e.data};return t}var LS=PS.prototype=FS.prototype;LS.copy=function(){var e=new FS(this._x,this._y,this._x0,this._y0,this._x1,this._y1),t=this._root,n,r;if(!t)return e;if(!t.length)return e._root=IS(t),e;for(n=[{source:t,target:e._root=[,,,,]}];t=n.pop();)for(var i=0;i<4;++i)(r=t.source[i])&&(r.length?n.push({source:r,target:t.target[i]=[,,,,]}):t.target[i]=IS(r));return e},LS.add=Ure,LS.addAll=Wre,LS.cover=Gre,LS.data=Kre,LS.extent=qre,LS.find=ES,LS.remove=DS,LS.removeAll=Jre,LS.root=OS,LS.size=kS,LS.visit=AS,LS.visitAfter=jS,LS.x=NS,LS.y=Xre;function RS(e){return function(){return e}}function zS(e){return(e()-.5)*1e-6}function BS(e){return e.x+e.vx}function VS(e){return e.y+e.vy}function HS(e){var t,n,r,i=1,a=1;typeof e!=`function`&&(e=RS(e==null?1:+e));function o(){for(var e,o=t.length,c,l,u,d,f,p,m=0;m<a;++m)for(c=PS(t,BS,VS).visitAfter(s),e=0;e<o;++e)l=t[e],f=n[l.index],p=f*f,u=l.x+l.vx,d=l.y+l.vy,c.visit(h);function h(e,t,n,a,o){var s=e.data,c=e.r,m=f+c;if(s){if(s.index>l.index){var h=u-s.x-s.vx,g=d-s.y-s.vy,_=h*h+g*g;_<m*m&&(h===0&&(h=zS(r),_+=h*h),g===0&&(g=zS(r),_+=g*g),_=(m-(_=Math.sqrt(_)))/_*i,l.vx+=(h*=_)*(m=(c*=c)/(p+c)),l.vy+=(g*=_)*m,s.vx-=h*(m=1-m),s.vy-=g*m)}return}return t>u+m||a<u-m||n>d+m||o<d-m}}function s(e){if(e.data)return e.r=n[e.data.index];for(var t=e.r=0;t<4;++t)e[t]&&e[t].r>e.r&&(e.r=e[t].r)}function c(){if(t){var r,i=t.length,a;for(n=Array(i),r=0;r<i;++r)a=t[r],n[a.index]=+e(a,r,t)}}return o.initialize=function(e,n){t=e,r=n,c()},o.iterations=function(e){return arguments.length?(a=+e,o):a},o.strength=function(e){return arguments.length?(i=+e,o):i},o.radius=function(t){return arguments.length?(e=typeof t==`function`?t:RS(+t),c(),o):e},o}function US(e){return e.index}function WS(e,t){var n=e.get(t);if(!n)throw Error(`node not found: `+t);return n}function GS(e){var t=US,n=d,r,i=RS(30),a,o,s,c,l,u=1;e??=[];function d(e){return 1/Math.min(s[e.source.index],s[e.target.index])}function f(t){for(var n=0,i=e.length;n<u;++n)for(var o=0,s,d,f,p,m,h,g;o<i;++o)s=e[o],d=s.source,f=s.target,p=f.x+f.vx-d.x-d.vx||zS(l),m=f.y+f.vy-d.y-d.vy||zS(l),h=Math.sqrt(p*p+m*m),h=(h-a[o])/h*t*r[o],p*=h,m*=h,f.vx-=p*(g=c[o]),f.vy-=m*g,d.vx+=p*(g=1-g),d.vy+=m*g}function p(){if(o){var n,i=o.length,l=e.length,u=new Map(o.map((e,n)=>[t(e,n,o),e])),d;for(n=0,s=Array(i);n<l;++n)d=e[n],d.index=n,typeof d.source!=`object`&&(d.source=WS(u,d.source)),typeof d.target!=`object`&&(d.target=WS(u,d.target)),s[d.source.index]=(s[d.source.index]||0)+1,s[d.target.index]=(s[d.target.index]||0)+1;for(n=0,c=Array(l);n<l;++n)d=e[n],c[n]=s[d.source.index]/(s[d.source.index]+s[d.target.index]);r=Array(l),m(),a=Array(l),h()}}function m(){if(o)for(var t=0,i=e.length;t<i;++t)r[t]=+n(e[t],t,e)}function h(){if(o)for(var t=0,n=e.length;t<n;++t)a[t]=+i(e[t],t,e)}return f.initialize=function(e,t){o=e,l=t,p()},f.links=function(t){return arguments.length?(e=t,p(),f):e},f.id=function(e){return arguments.length?(t=e,f):t},f.iterations=function(e){return arguments.length?(u=+e,f):u},f.strength=function(e){return arguments.length?(n=typeof e==`function`?e:RS(+e),m(),f):n},f.distance=function(e){return arguments.length?(i=typeof e==`function`?e:RS(+e),h(),f):i},f}function KS(e,t,n){var r=new pn,i=t;return t==null?(r.restart(e,t,n),r):(r._restart=r.restart,r.restart=function(e,t,n){t=+t,n=n==null?on():+n,r._restart(function a(o){o+=i,r._restart(a,i+=t,n),e(o)},t,n)},r.restart(e,t,n),r)}var qS=1664525,JS=1013904223,YS=4294967296;function XS(){let e=1;return()=>(e=(qS*e+JS)%YS)/YS}function ZS(e){return e.x}function QS(e){return e.y}var $S=10,eC=Math.PI*(3-Math.sqrt(5));function tC(e){var t,n=1,r=.001,i=1-r**(1/300),a=0,o=.6,s=new Map,c=vn(d),l=xn(`tick`,`end`),u=XS();e??=[];function d(){f(),l.call(`tick`,t),n<r&&(c.stop(),l.call(`end`,t))}function f(r){var c,l=e.length,u;r===void 0&&(r=1);for(var d=0;d<r;++d)for(n+=(a-n)*i,s.forEach(function(e){e(n)}),c=0;c<l;++c)u=e[c],u.fx==null?u.x+=u.vx*=o:(u.x=u.fx,u.vx=0),u.fy==null?u.y+=u.vy*=o:(u.y=u.fy,u.vy=0);return t}function p(){for(var t=0,n=e.length,r;t<n;++t){if(r=e[t],r.index=t,r.fx!=null&&(r.x=r.fx),r.fy!=null&&(r.y=r.fy),isNaN(r.x)||isNaN(r.y)){var i=$S*Math.sqrt(.5+t),a=t*eC;r.x=i*Math.cos(a),r.y=i*Math.sin(a)}(isNaN(r.vx)||isNaN(r.vy))&&(r.vx=r.vy=0)}}function m(t){return t.initialize&&t.initialize(e,u),t}return p(),t={tick:f,restart:function(){return c.restart(d),t},stop:function(){return c.stop(),t},nodes:function(n){return arguments.length?(e=n,p(),s.forEach(m),t):e},alpha:function(e){return arguments.length?(n=+e,t):n},alphaMin:function(e){return arguments.length?(r=+e,t):r},alphaDecay:function(e){return arguments.length?(i=+e,t):+i},alphaTarget:function(e){return arguments.length?(a=+e,t):a},velocityDecay:function(e){return arguments.length?(o=1-e,t):1-o},randomSource:function(e){return arguments.length?(u=e,s.forEach(m),t):u},force:function(e,n){return arguments.length>1?(n==null?s.delete(e):s.set(e,m(n)),t):s.get(e)},find:function(t,n,r){var i=0,a=e.length,o,s,c,l,u;for(r==null?r=1/0:r*=r,i=0;i<a;++i)l=e[i],o=t-l.x,s=n-l.y,c=o*o+s*s,c<r&&(u=l,r=c);return u},on:function(e,n){return arguments.length>1?(l.on(e,n),t):l.on(e)}}}function nC(){var e,t,n,r,i=RS(-30),a,o=1,s=1/0,c=.81;function l(n){var i,a=e.length,o=PS(e,ZS,QS).visitAfter(d);for(r=n,i=0;i<a;++i)t=e[i],o.visit(f)}function u(){if(e){var t,n=e.length,r;for(a=Array(n),t=0;t<n;++t)r=e[t],a[r.index]=+i(r,t,e)}}function d(e){var t=0,n,r,i=0,o,s,c;if(e.length){for(o=s=c=0;c<4;++c)(n=e[c])&&(r=Math.abs(n.value))&&(t+=n.value,i+=r,o+=r*n.x,s+=r*n.y);e.x=o/i,e.y=s/i}else{n=e,n.x=n.data.x,n.y=n.data.y;do t+=a[n.data.index];while(n=n.next)}e.value=t}function f(e,i,l,u){if(!e.value)return!0;var d=e.x-t.x,f=e.y-t.y,p=u-i,m=d*d+f*f;if(p*p/c<m)return m<s&&(d===0&&(d=zS(n),m+=d*d),f===0&&(f=zS(n),m+=f*f),m<o&&(m=Math.sqrt(o*m)),t.vx+=d*e.value*r/m,t.vy+=f*e.value*r/m),!0;if(!(e.length||m>=s)){(e.data!==t||e.next)&&(d===0&&(d=zS(n),m+=d*d),f===0&&(f=zS(n),m+=f*f),m<o&&(m=Math.sqrt(o*m)));do e.data!==t&&(p=a[e.data.index]*r/m,t.vx+=d*p,t.vy+=f*p);while(e=e.next)}}return l.initialize=function(t,r){e=t,n=r,u()},l.strength=function(e){return arguments.length?(i=typeof e==`function`?e:RS(+e),u(),l):i},l.distanceMin=function(e){return arguments.length?(o=e*e,l):Math.sqrt(o)},l.distanceMax=function(e){return arguments.length?(s=e*e,l):Math.sqrt(s)},l.theta=function(e){return arguments.length?(c=e*e,l):Math.sqrt(c)},l}function rC(e){var t=RS(.1),n,r,i;typeof e!=`function`&&(e=RS(e==null?0:+e));function a(e){for(var t=0,a=n.length,o;t<a;++t)o=n[t],o.vx+=(i[t]-o.x)*r[t]*e}function o(){if(n){var a,o=n.length;for(r=Array(o),i=Array(o),a=0;a<o;++a)r[a]=isNaN(i[a]=+e(n[a],a,n))?0:+t(n[a],a,n)}}return a.initialize=function(e){n=e,o()},a.strength=function(e){return arguments.length?(t=typeof e==`function`?e:RS(+e),o(),a):t},a.x=function(t){return arguments.length?(e=typeof t==`function`?t:RS(+t),o(),a):e},a}function iC(e){var t=RS(.1),n,r,i;typeof e!=`function`&&(e=RS(e==null?0:+e));function a(e){for(var t=0,a=n.length,o;t<a;++t)o=n[t],o.vy+=(i[t]-o.y)*r[t]*e}function o(){if(n){var a,o=n.length;for(r=Array(o),i=Array(o),a=0;a<o;++a)r[a]=isNaN(i[a]=+e(n[a],a,n))?0:+t(n[a],a,n)}}return a.initialize=function(e){n=e,o()},a.strength=function(e){return arguments.length?(t=typeof e==`function`?e:RS(+e),o(),a):t},a.y=function(t){return arguments.length?(e=typeof t==`function`?t:RS(+t),o(),a):e},a}var aC=t({force:()=>dC}),oC={center:Hre,collide:HS,nbody:nC,link:GS,x:rC,y:iC},sC=`forces`,cC=[`alpha`,`alphaMin`,`alphaTarget`,`velocityDecay`,`forces`],lC=[`static`,`iterations`],uC=[`x`,`y`,`vx`,`vy`];function dC(e){L.call(this,null,e)}dC.Definition={type:`Force`,metadata:{modifies:!0},params:[{name:`static`,type:`boolean`,default:!1},{name:`restart`,type:`boolean`,default:!1},{name:`iterations`,type:`number`,default:300},{name:`alpha`,type:`number`,default:1},{name:`alphaMin`,type:`number`,default:.001},{name:`alphaTarget`,type:`number`,default:0},{name:`velocityDecay`,type:`number`,default:.4},{name:`forces`,type:`param`,array:!0,params:[{key:{force:`center`},params:[{name:`x`,type:`number`,default:0},{name:`y`,type:`number`,default:0}]},{key:{force:`collide`},params:[{name:`radius`,type:`number`,expr:!0},{name:`strength`,type:`number`,default:.7},{name:`iterations`,type:`number`,default:1}]},{key:{force:`nbody`},params:[{name:`strength`,type:`number`,default:-30,expr:!0},{name:`theta`,type:`number`,default:.9},{name:`distanceMin`,type:`number`,default:1},{name:`distanceMax`,type:`number`}]},{key:{force:`link`},params:[{name:`links`,type:`data`},{name:`id`,type:`field`},{name:`distance`,type:`number`,default:30,expr:!0},{name:`strength`,type:`number`,expr:!0},{name:`iterations`,type:`number`,default:1}]},{key:{force:`x`},params:[{name:`strength`,type:`number`,default:.1},{name:`x`,type:`field`}]},{key:{force:`y`},params:[{name:`strength`,type:`number`,default:.1},{name:`y`,type:`field`}]}]},{name:`as`,type:`string`,array:!0,modify:!1,default:uC}]},F(dC,L,{transform(e,t){var n=this.value,r=t.changed(t.ADD_REM),i=e.modified(cC),a=e.iterations||300;if(n?(r&&(t.modifies(`index`),n.nodes(t.source)),(i||t.changed(t.MOD))&&mC(n,e,0,t)):(this.value=n=pC(t.source,e),n.on(`tick`,fC(t.dataflow,this)),e.static||(r=!0,n.tick()),t.modifies(`index`)),i||r||e.modified(lC)||t.changed()&&e.restart){if(n.alpha(Math.max(n.alpha(),e.alpha||1)).alphaDecay(1-n.alphaMin()**(1/a)),e.static)for(n.stop();--a>=0;)n.tick();else if(n.stopped()&&n.restart(),!r)return t.StopPropagation}return this.finish(e,t)},finish(e,t){let n=t.dataflow;for(let e=this._argops,t=0,s=e.length,c;t<s;++t)if(c=e[t],c.name===sC&&c.op._argval.force===`link`){for(var r=c.op._argops,i=0,a=r.length,o;i<a;++i)if(r[i].name===`links`&&(o=r[i].op.source)){n.pulse(o,n.changeset().reflow());break}}return t.reflow(e.modified()).modifies(uC)}});function fC(e,t){return()=>e.touch(t).run()}function pC(e,t){let n=tC(e),r=n.stop,i=n.restart,a=!1;return n.stopped=()=>a,n.restart=()=>(a=!1,i()),n.stop=()=>(a=!0,r()),mC(n,t,!0).on(`end`,()=>a=!0)}function mC(e,t,n,r){var i=k(t.forces),a,o,s,c;for(a=0,o=cC.length;a<o;++a)s=cC[a],s!==sC&&t.modified(s)&&e[s](t[s]);for(a=0,o=i.length;a<o;++a)c=sC+a,s=n||t.modified(sC,a)?gC(i[a]):r&&hC(i[a],r)?e.force(c):null,s&&e.force(c,s);for(o=e.numForces||0;a<o;++a)e.force(sC+a,null);return e.numForces=i.length,e}function hC(e,t){var n,r;for(n in e)if(m(r=e[n])&&t.modified(Ce(r)))return 1;return 0}function gC(e){var t,n;for(n in T(oC,e.force)||j(`Unrecognized force: `+e.force),t=oC[e.force](),e)m(t[n])&&_C(t[n],e[n],e);return t}function _C(e,t,n){e(m(t)?e=>t(e,n):t)}function Zre(e,t){return e.parent===t.parent?1:2}function Qre(e){return e.reduce($re,0)/e.length}function $re(e,t){return e+t.x}function eie(e){return 1+e.reduce(tie,0)}function tie(e,t){return Math.max(e,t.y)}function nie(e){for(var t;t=e.children;)e=t[0];return e}function rie(e){for(var t;t=e.children;)e=t[t.length-1];return e}function iie(){var e=Zre,t=1,n=1,r=!1;function i(i){var a,o=0;i.eachAfter(function(t){var n=t.children;n?(t.x=Qre(n),t.y=eie(n)):(t.x=a?o+=e(t,a):0,t.y=0,a=t)});var s=nie(i),c=rie(i),l=s.x-e(s,c)/2,u=c.x+e(c,s)/2;return i.eachAfter(r?function(e){e.x=(e.x-i.x)*t,e.y=(i.y-e.y)*n}:function(e){e.x=(e.x-l)/(u-l)*t,e.y=(1-(i.y?e.y/i.y:1))*n})}return i.separation=function(t){return arguments.length?(e=t,i):e},i.size=function(e){return arguments.length?(r=!1,t=+e[0],n=+e[1],i):r?null:[t,n]},i.nodeSize=function(e){return arguments.length?(r=!0,t=+e[0],n=+e[1],i):r?[t,n]:null},i}var aie=1664525,oie=1013904223,vC=4294967296;function sie(){let e=1;return()=>(e=(aie*e+oie)%vC)/vC}function cie(e){return typeof e==`object`&&`length`in e?e:Array.from(e)}function lie(e,t){let n=e.length,r,i;for(;n;)i=t()*n--|0,r=e[n],e[n]=e[i],e[i]=r;return e}function uie(e,t){for(var n=0,r=(e=lie(Array.from(e),t)).length,i=[],a,o;n<r;)a=e[n],o&&bC(o,a)?++n:(o=fie(i=die(i,a)),n=0);return o}function die(e,t){var n,r;if(xC(t,e))return[t];for(n=0;n<e.length;++n)if(yC(t,e[n])&&xC(SC(e[n],t),e))return[e[n],t];for(n=0;n<e.length-1;++n)for(r=n+1;r<e.length;++r)if(yC(SC(e[n],e[r]),t)&&yC(SC(e[n],t),e[r])&&yC(SC(e[r],t),e[n])&&xC(CC(e[n],e[r],t),e))return[e[n],e[r],t];throw Error()}function yC(e,t){var n=e.r-t.r,r=t.x-e.x,i=t.y-e.y;return n<0||n*n<r*r+i*i}function bC(e,t){var n=e.r-t.r+Math.max(e.r,t.r,1)*1e-9,r=t.x-e.x,i=t.y-e.y;return n>0&&n*n>r*r+i*i}function xC(e,t){for(var n=0;n<t.length;++n)if(!bC(e,t[n]))return!1;return!0}function fie(e){switch(e.length){case 1:return pie(e[0]);case 2:return SC(e[0],e[1]);case 3:return CC(e[0],e[1],e[2])}}function pie(e){return{x:e.x,y:e.y,r:e.r}}function SC(e,t){var n=e.x,r=e.y,i=e.r,a=t.x,o=t.y,s=t.r,c=a-n,l=o-r,u=s-i,d=Math.sqrt(c*c+l*l);return{x:(n+a+c/d*u)/2,y:(r+o+l/d*u)/2,r:(d+i+s)/2}}function CC(e,t,n){var r=e.x,i=e.y,a=e.r,o=t.x,s=t.y,c=t.r,l=n.x,u=n.y,d=n.r,f=r-o,p=r-l,m=i-s,h=i-u,g=c-a,_=d-a,v=r*r+i*i-a*a,y=v-o*o-s*s+c*c,b=v-l*l-u*u+d*d,x=p*m-f*h,S=(m*b-h*y)/(x*2)-r,C=(h*g-m*_)/x,w=(p*y-f*b)/(x*2)-i,T=(f*_-p*g)/x,E=C*C+T*T-1,D=2*(a+S*C+w*T),O=S*S+w*w-a*a,k=-(Math.abs(E)>1e-6?(D+Math.sqrt(D*D-4*E*O))/(2*E):O/D);return{x:r+S+C*k,y:i+w+T*k,r:k}}function wC(e,t,n){var r=e.x-t.x,i,a,o=e.y-t.y,s,c,l=r*r+o*o;l?(a=t.r+n.r,a*=a,c=e.r+n.r,c*=c,a>c?(i=(l+c-a)/(2*l),s=Math.sqrt(Math.max(0,c/l-i*i)),n.x=e.x-i*r-s*o,n.y=e.y-i*o+s*r):(i=(l+a-c)/(2*l),s=Math.sqrt(Math.max(0,a/l-i*i)),n.x=t.x+i*r-s*o,n.y=t.y+i*o+s*r)):(n.x=t.x+n.r,n.y=t.y)}function TC(e,t){var n=e.r+t.r-1e-6,r=t.x-e.x,i=t.y-e.y;return n>0&&n*n>r*r+i*i}function EC(e){var t=e._,n=e.next._,r=t.r+n.r,i=(t.x*n.r+n.x*t.r)/r,a=(t.y*n.r+n.y*t.r)/r;return i*i+a*a}function DC(e){this._=e,this.next=null,this.previous=null}function OC(e,t){if(!(a=(e=cie(e)).length))return 0;var n=e[0],r,i,a,o,s,c,l,u,d,f;if(n.x=0,n.y=0,!(a>1))return n.r;if(r=e[1],n.x=-r.r,r.x=n.r,r.y=0,!(a>2))return n.r+r.r;wC(r,n,i=e[2]),n=new DC(n),r=new DC(r),i=new DC(i),n.next=i.previous=r,r.next=n.previous=i,i.next=r.previous=n;pack:for(c=3;c<a;++c){wC(n._,r._,i=e[c]),i=new DC(i),l=r.next,u=n.previous,d=r._.r,f=n._.r;do if(d<=f){if(TC(l._,i._)){r=l,n.next=r,r.previous=n,--c;continue pack}d+=l._.r,l=l.next}else{if(TC(u._,i._)){n=u,n.next=r,r.previous=n,--c;continue pack}f+=u._.r,u=u.previous}while(l!==u.next);for(i.previous=n,i.next=r,n.next=r.previous=r=i,o=EC(n);(i=i.next)!==r;)(s=EC(i))<o&&(n=i,o=s);r=n.next}for(n=[r._],i=r;(i=i.next)!==r;)n.push(i._);for(i=uie(n,t),c=0;c<a;++c)n=e[c],n.x-=i.x,n.y-=i.y;return i.r}function kC(e){return Math.sqrt(e.value)}function AC(){var e=null,t=1,n=1,r=On;function i(i){let a=sie();return i.x=t/2,i.y=n/2,e?i.eachBefore(jC(e)).eachAfter(MC(r,.5,a)).eachBefore(NC(1)):i.eachBefore(jC(kC)).eachAfter(MC(On,1,a)).eachAfter(MC(r,i.r/Math.min(t,n),a)).eachBefore(NC(Math.min(t,n)/(2*i.r))),i}return i.radius=function(t){return arguments.length?(e=zn(t),i):e},i.size=function(e){return arguments.length?(t=+e[0],n=+e[1],i):[t,n]},i.padding=function(e){return arguments.length?(r=typeof e==`function`?e:Mn(+e),i):r},i}function jC(e){return function(t){t.children||(t.r=Math.max(0,+e(t)||0))}}function MC(e,t,n){return function(r){if(i=r.children){var i,a,o=i.length,s=e(r)*t||0,c;if(s)for(a=0;a<o;++a)i[a].r+=s;if(c=OC(i,n),s)for(a=0;a<o;++a)i[a].r-=s;r.r=c+s}}}function NC(e){return function(t){var n=t.parent;t.r*=e,n&&(t.x=n.x+e*t.x,t.y=n.y+e*t.y)}}function PC(){var e=1,t=1,n=0,r=!1;function i(i){var o=i.height+1;return i.x0=i.y0=n,i.x1=e,i.y1=t/o,i.eachBefore(a(t,o)),r&&i.eachBefore(Ln),i}function a(e,t){return function(r){r.children&&Pn(r,r.x0,e*(r.depth+1)/t,r.x1,e*(r.depth+2)/t);var i=r.x0,a=r.y0,o=r.x1-n,s=r.y1-n;o<i&&(i=o=(i+o)/2),s<a&&(a=s=(a+s)/2),r.x0=i,r.y0=a,r.x1=o,r.y1=s}}return i.round=function(e){return arguments.length?(r=!!e,i):r},i.size=function(n){return arguments.length?(e=+n[0],t=+n[1],i):[e,t]},i.padding=function(e){return arguments.length?(n=+e,i):n},i}var FC={depth:-1},IC={},LC={};function RC(e){return e.id}function zC(e){return e.parentId}function BC(){var e=RC,t=zC,n;function r(r){var i=Array.from(r),a=e,o=t,s,c,l,u,d,f,p,m,h=new Map;if(n!=null){let e=i.map((e,t)=>VC(n(e,t,r))),t=e.map(HC),s=new Set(e).add(``);for(let n of t)s.has(n)||(s.add(n),e.push(n),t.push(HC(n)),i.push(LC));a=(t,n)=>e[n],o=(e,n)=>t[n]}for(l=0,s=i.length;l<s;++l)c=i[l],f=i[l]=new kn(c),(p=a(c,l,r))!=null&&(p+=``)&&(m=f.id=p,h.set(m,h.has(m)?IC:f)),(p=o(c,l,r))!=null&&(p+=``)&&(f.parent=p);for(l=0;l<s;++l)if(f=i[l],p=f.parent){if(d=h.get(p),!d)throw Error(`missing: `+p);if(d===IC)throw Error(`ambiguous: `+p);d.children?d.children.push(f):d.children=[f],f.parent=d}else{if(u)throw Error(`multiple roots`);u=f}if(!u)throw Error(`no root`);if(n!=null){for(;u.data===LC&&u.children.length===1;)u=u.children[0],--s;for(let e=i.length-1;e>=0&&(f=i[e],f.data===LC);--e)f.data=null}if(u.parent=FC,u.eachBefore(function(e){e.depth=e.parent.depth+1,--s}).eachBefore(An),u.parent=null,s>0)throw Error(`cycle`);return u}return r.id=function(t){return arguments.length?(e=zn(t),r):e},r.parentId=function(e){return arguments.length?(t=zn(e),r):t},r.path=function(e){return arguments.length?(n=zn(e),r):n},r}function VC(e){e=`${e}`;let t=e.length;return UC(e,t-1)&&!UC(e,t-2)&&(e=e.slice(0,-1)),e[0]===`/`?e:`/${e}`}function HC(e){let t=e.length;if(t<2)return``;for(;--t>1&&!UC(e,t););return e.slice(0,t)}function UC(e,t){if(e[t]===`/`){let n=0;for(;t>0&&e[--t]===`\\`;)++n;if(!(n&1))return!0}return!1}function WC(e,t){return e.parent===t.parent?1:2}function GC(e){var t=e.children;return t?t[0]:e.t}function KC(e){var t=e.children;return t?t[t.length-1]:e.t}function qC(e,t,n){var r=n/(t.i-e.i);t.c-=r,t.s+=n,e.c+=r,t.z+=n,t.m+=n}function JC(e){for(var t=0,n=0,r=e.children,i=r.length,a;--i>=0;)a=r[i],a.z+=t,a.m+=t,t+=a.s+(n+=a.c)}function YC(e,t,n){return e.a.parent===t.parent?e.a:n}function XC(e,t){this._=e,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=t}XC.prototype=Object.create(kn.prototype);function ZC(e){for(var t=new XC(e,0),n,r=[t],i,a,o,s;n=r.pop();)if(a=n._.children)for(n.children=Array(s=a.length),o=s-1;o>=0;--o)r.push(i=n.children[o]=new XC(a[o],o)),i.parent=n;return(t.parent=new XC(null,0)).children=[t],t}function QC(){var e=WC,t=1,n=1,r=null;function i(i){var s=ZC(i);if(s.eachAfter(a),s.parent.m=-s.z,s.eachBefore(o),r)i.eachBefore(c);else{var l=i,u=i,d=i;i.eachBefore(function(e){e.x<l.x&&(l=e),e.x>u.x&&(u=e),e.depth>d.depth&&(d=e)});var f=l===u?1:e(l,u)/2,p=f-l.x,m=t/(u.x+f+p),h=n/(d.depth||1);i.eachBefore(function(e){e.x=(e.x+p)*m,e.y=e.depth*h})}return i}function a(t){var n=t.children,r=t.parent.children,i=t.i?r[t.i-1]:null;if(n){JC(t);var a=(n[0].z+n[n.length-1].z)/2;i?(t.z=i.z+e(t._,i._),t.m=t.z-a):t.z=a}else i&&(t.z=i.z+e(t._,i._));t.parent.A=s(t,i,t.parent.A||r[0])}function o(e){e._.x=e.z+e.parent.m,e.m+=e.parent.m}function s(t,n,r){if(n){for(var i=t,a=t,o=n,s=i.parent.children[0],c=i.m,l=a.m,u=o.m,d=s.m,f;o=KC(o),i=GC(i),o&&i;)s=GC(s),a=KC(a),a.a=t,f=o.z+u-i.z-c+e(o._,i._),f>0&&(qC(YC(o,t,r),t,f),c+=f,l+=f),u+=o.m,c+=i.m,d+=s.m,l+=a.m;o&&!KC(a)&&(a.t=o,a.m+=u-l),i&&!GC(s)&&(s.t=i,s.m+=c-d,r=t)}return r}function c(e){e.x*=t,e.y=e.depth*n}return i.separation=function(t){return arguments.length?(e=t,i):e},i.size=function(e){return arguments.length?(r=!1,t=+e[0],n=+e[1],i):r?null:[t,n]},i.nodeSize=function(e){return arguments.length?(r=!0,t=+e[0],n=+e[1],i):r?[t,n]:null},i}function $C(e,t,n,r,i){var a=e.children,o,s=a.length,c,l=Array(s+1);for(l[0]=c=o=0;o<s;++o)l[o+1]=c+=a[o].value;u(0,s,e.value,t,n,r,i);function u(e,t,n,r,i,o,s){if(e>=t-1){var c=a[e];c.x0=r,c.y0=i,c.x1=o,c.y1=s;return}for(var d=l[e],f=n/2+d,p=e+1,m=t-1;p<m;){var h=p+m>>>1;l[h]<f?p=h+1:m=h}f-l[p-1]<l[p]-f&&e+1<p&&--p;var g=l[p]-d,_=n-g;if(o-r>s-i){var v=n?(r*_+o*g)/n:o;u(e,p,g,r,i,v,s),u(p,t,_,v,i,o,s)}else{var y=n?(i*_+s*g)/n:s;u(e,p,g,r,i,o,y),u(p,t,_,r,y,o,s)}}}function ew(e,t,n,r,i){(e.depth&1?Dn:Pn)(e,t,n,r,i)}var tw=(function e(t){function n(e,n,r,i,a){if((o=e._squarify)&&o.ratio===t)for(var o,s,c,l,u=-1,d,f=o.length,p=e.value;++u<f;){for(s=o[u],c=s.children,l=s.value=0,d=c.length;l<d;++l)s.value+=c[l].value;s.dice?Pn(s,n,r,i,p?r+=(a-r)*s.value/p:a):Dn(s,n,r,p?n+=(i-n)*s.value/p:i,a),p-=s.value}else e._squarify=o=In(t,e,n,r,i,a),o.ratio=t}return n.ratio=function(t){return e((t=+t)>1?t:1)},n})(Nn),nw=t({nest:()=>iw,pack:()=>fw,partition:()=>mw,stratify:()=>hw,tree:()=>vw,treelinks:()=>yw,treemap:()=>Sw});function rw(e,t,n){let r={};return e.each(e=>{let i=e.data;n(i)&&(r[t(i)]=e)}),e.lookup=r,e}function iw(e){L.call(this,null,e)}iw.Definition={type:`Nest`,metadata:{treesource:!0,changes:!0},params:[{name:`keys`,type:`field`,array:!0},{name:`generate`,type:`boolean`}]};var aw=e=>e.values;F(iw,L,{transform(e,t){t.source||j(`Nest transform requires an upstream data source.`);var n=e.generate,r=e.modified(),i=t.clone(),a=this.value;return(!a||r||t.changed())&&(a&&a.each(e=>{e.children&&Yr(e.data)&&i.rem.push(e.data)}),this.value=a=Fn({values:k(e.keys).reduce((e,t)=>(e.key(t),e),ow()).entries(i.source)},aw),n&&a.each(e=>{e.children&&(e=Zr(e.data),i.add.push(e),i.source.push(e))}),rw(a,I,I)),i.source.root=a,i}});function ow(){let e=[],t={entries:e=>r(n(e,0),0),key:n=>(e.push(n),t)};function n(t,r){if(r>=e.length)return t;let i=t.length,a=e[r++],o={},s={},c=-1,l,u,d;for(;++c<i;)l=a(u=t[c])+``,(d=o[l])?d.push(u):o[l]=[u];for(l in o)s[l]=n(o[l],r);return s}function r(t,n){if(++n>e.length)return t;let i=[];for(let e in t)i.push({key:e,values:r(t[e],n)});return i}return t}function sw(e){L.call(this,null,e)}var cw=(e,t)=>e.parent===t.parent?1:2;F(sw,L,{transform(e,t){(!t.source||!t.source.root)&&j(this.constructor.name+` transform requires a backing tree data source.`);let n=this.layout(e.method),r=this.fields,i=t.source.root,a=e.as||r;e.field?i.sum(e.field):i.count(),e.sort&&i.sort(ti(e.sort,e=>e.data)),lw(n,this.params,e),n.separation&&n.separation(e.separation===!1?Se:cw);try{this.value=n(i)}catch(e){j(e)}return i.each(e=>uw(e,r,a)),t.reflow(e.modified()).modifies(a).modifies(`leaf`)}});function lw(e,t,n){for(let r,i=0,a=t.length;i<a;++i)r=t[i],r in n&&e[r](n[r])}function uw(e,t,n){let r=e.data,i=t.length-1;for(let a=0;a<i;++a)r[n[a]]=e[t[a]];r[n[i]]=e.children?e.children.length:0}var dw=[`x`,`y`,`r`,`depth`,`children`];function fw(e){sw.call(this,e)}fw.Definition={type:`Pack`,metadata:{tree:!0,modifies:!0},params:[{name:`field`,type:`field`},{name:`sort`,type:`compare`},{name:`padding`,type:`number`,default:0},{name:`radius`,type:`field`,default:null},{name:`size`,type:`number`,array:!0,length:2},{name:`as`,type:`string`,array:!0,length:dw.length,default:dw}]},F(fw,sw,{layout:AC,params:[`radius`,`size`,`padding`],fields:dw});var pw=[`x0`,`y0`,`x1`,`y1`,`depth`,`children`];function mw(e){sw.call(this,e)}mw.Definition={type:`Partition`,metadata:{tree:!0,modifies:!0},params:[{name:`field`,type:`field`},{name:`sort`,type:`compare`},{name:`padding`,type:`number`,default:0},{name:`round`,type:`boolean`,default:!1},{name:`size`,type:`number`,array:!0,length:2},{name:`as`,type:`string`,array:!0,length:pw.length,default:pw}]},F(mw,sw,{layout:PC,params:[`size`,`round`,`padding`],fields:pw});function hw(e){L.call(this,null,e)}hw.Definition={type:`Stratify`,metadata:{treesource:!0},params:[{name:`key`,type:`field`,required:!0},{name:`parentKey`,type:`field`,required:!0}]},F(hw,L,{transform(e,t){t.source||j(`Stratify transform requires an upstream data source.`);let n=this.value,r=e.modified(),i=t.fork(t.ALL).materialize(t.SOURCE),a=!n||r||t.changed(t.ADD_REM)||t.modified(e.key.fields)||t.modified(e.parentKey.fields);return i.source=i.source.slice(),a&&(n=i.source.length?rw(BC().id(e.key).parentId(e.parentKey)(i.source),e.key,De):rw(BC()([{}]),e.key,e.key)),i.source.root=this.value=n,i}});var gw={tidy:QC,cluster:iie},_w=[`x`,`y`,`depth`,`children`];function vw(e){sw.call(this,e)}vw.Definition={type:`Tree`,metadata:{tree:!0,modifies:!0},params:[{name:`field`,type:`field`},{name:`sort`,type:`compare`},{name:`method`,type:`enum`,default:`tidy`,values:[`tidy`,`cluster`]},{name:`size`,type:`number`,array:!0,length:2},{name:`nodeSize`,type:`number`,array:!0,length:2},{name:`separation`,type:`boolean`,default:!0},{name:`as`,type:`string`,array:!0,length:_w.length,default:_w}]},F(vw,sw,{layout(e){let t=e||`tidy`;if(T(gw,t))return gw[t]();j(`Unrecognized Tree layout method: `+t)},params:[`size`,`nodeSize`],fields:_w});function yw(e){L.call(this,[],e)}yw.Definition={type:`TreeLinks`,metadata:{tree:!0,generates:!0,changes:!0},params:[]},F(yw,L,{transform(e,t){let n=this.value,r=t.source&&t.source.root,i=t.fork(t.NO_SOURCE),a={};return r||j(`TreeLinks transform requires a tree data source.`),t.changed(t.ADD_REM)?(i.rem=n,t.visit(t.SOURCE,e=>a[I(e)]=1),r.each(e=>{let t=e.data,n=e.parent&&e.parent.data;n&&a[I(t)]&&a[I(n)]&&i.add.push(Zr({source:n,target:t}))}),this.value=i.add):t.changed(t.MOD)&&(t.visit(t.MOD,e=>a[I(e)]=1),n.forEach(e=>{(a[I(e.source)]||a[I(e.target)])&&i.mod.push(e)})),i}});var bw={binary:$C,dice:Pn,slice:Dn,slicedice:ew,squarify:jn,resquarify:tw},xw=[`x0`,`y0`,`x1`,`y1`,`depth`,`children`];function Sw(e){sw.call(this,e)}Sw.Definition={type:`Treemap`,metadata:{tree:!0,modifies:!0},params:[{name:`field`,type:`field`},{name:`sort`,type:`compare`},{name:`method`,type:`enum`,default:`squarify`,values:[`squarify`,`resquarify`,`binary`,`dice`,`slice`,`slicedice`]},{name:`padding`,type:`number`,default:0},{name:`paddingInner`,type:`number`,default:0},{name:`paddingOuter`,type:`number`,default:0},{name:`paddingTop`,type:`number`,default:0},{name:`paddingRight`,type:`number`,default:0},{name:`paddingBottom`,type:`number`,default:0},{name:`paddingLeft`,type:`number`,default:0},{name:`ratio`,type:`number`,default:1.618033988749895},{name:`round`,type:`boolean`,default:!1},{name:`size`,type:`number`,array:!0,length:2},{name:`as`,type:`string`,array:!0,length:xw.length,default:xw}]},F(Sw,sw,{layout(){let e=Rn();return e.ratio=t=>{let n=e.tile();n.ratio&&e.tile(n.ratio(t))},e.method=t=>{T(bw,t)?e.tile(bw[t]):j(`Unrecognized Treemap layout method: `+t)},e},params:[`method`,`ratio`,`size`,`round`,`padding`,`paddingInner`,`paddingOuter`,`paddingTop`,`paddingRight`,`paddingBottom`,`paddingLeft`],fields:xw});var Cw=t({label:()=>rT}),ww=4278190080;function Tw(e,t){let n=e.bitmap();return(t||[]).forEach(t=>n.set(e(t.boundary[0]),e(t.boundary[3]))),[n,void 0]}function Ew(e,t,n,r,i){let a=e.width,o=e.height,s=r||i,c=Js(a,o).getContext(`2d`),l=Js(a,o).getContext(`2d`),u=s&&Js(a,o).getContext(`2d`);n.forEach(e=>Ow(c,e,!1)),Ow(l,t,!1),s&&Ow(u,t,!0);let d=Dw(c,a,o),f=Dw(l,a,o),p=s&&Dw(u,a,o),m=e.bitmap(),h=s&&e.bitmap(),g,_,v,y,b,x,S,C;for(_=0;_<o;++_)for(g=0;g<a;++g)b=_*a+g,x=d[b]&ww,C=f[b]&ww,S=s&&p[b]&ww,(x||S||C)&&(v=e(g),y=e(_),!i&&(x||C)&&m.set(v,y),s&&(x||S)&&h.set(v,y));return[m,h]}function Dw(e,t,n){return new Uint32Array(e.getImageData(0,0,t,n).data.buffer)}function Ow(e,t,n){if(!t.length)return;let r=t[0].mark.marktype;r===`group`?t.forEach(t=>{t.items.forEach(t=>Ow(e,t.items,n))}):vp[r].draw(e,{items:n?t.map(kw):t})}function kw(e){let t=$r(e,{});return t.stroke&&t.strokeOpacity!==0||t.fill&&t.fillOpacity!==0?{...t,strokeOpacity:1,stroke:`#000`,fillOpacity:0}:t}var Aw=5,jw=31,Mw=32,Nw=new Uint32Array(33),Pw=new Uint32Array(33);Pw[0]=0,Nw[0]=~Pw[0];for(let e=1;e<=Mw;++e)Pw[e]=Pw[e-1]<<1|1,Nw[e]=~Pw[e];function Fw(e,t){let n=new Uint32Array(~~((e*t+Mw)/Mw));function r(e,t){n[e]|=t}function i(e,t){n[e]&=t}return{array:n,get:(t,r)=>{let i=r*e+t;return n[i>>>Aw]&1<<(i&jw)},set:(t,n)=>{let i=n*e+t;r(i>>>Aw,1<<(i&jw))},clear:(t,n)=>{let r=n*e+t;i(r>>>Aw,~(1<<(r&jw)))},getRange:(t,r,i,a)=>{let o=a,s,c,l,u;for(;o>=r;--o)if(s=o*e+t,c=o*e+i,l=s>>>Aw,u=c>>>Aw,l===u){if(n[l]&Nw[s&jw]&Pw[(c&jw)+1])return!0}else{if(n[l]&Nw[s&jw]||n[u]&Pw[(c&jw)+1])return!0;for(let e=l+1;e<u;++e)if(n[e])return!0}return!1},setRange:(t,n,i,a)=>{let o,s,c,l,u;for(;n<=a;++n)if(o=n*e+t,s=n*e+i,c=o>>>Aw,l=s>>>Aw,c===l)r(c,Nw[o&jw]&Pw[(s&jw)+1]);else for(r(c,Nw[o&jw]),r(l,Pw[(s&jw)+1]),u=c+1;u<l;++u)r(u,4294967295)},clearRange:(t,n,r,a)=>{let o,s,c,l,u;for(;n<=a;++n)if(o=n*e+t,s=n*e+r,c=o>>>Aw,l=s>>>Aw,c===l)i(c,Pw[o&jw]|Nw[(s&jw)+1]);else for(i(c,Pw[o&jw]),i(l,Nw[(s&jw)+1]),u=c+1;u<l;++u)i(u,0)},outOfBounds:(n,r,i,a)=>n<0||r<0||a>=t||i>=e}}function Iw(e,t,n){let r=Math.max(1,Math.sqrt(e*t/1e6)),i=~~((e+2*n+r)/r),a=~~((t+2*n+r)/r),o=e=>~~((e+n)/r);return o.invert=e=>e*r-n,o.bitmap=()=>Fw(i,a),o.ratio=r,o.padding=n,o.width=e,o.height=t,o}function Lw(e,t,n,r){let i=e.width,a=e.height;return function(e){let t=e.datum.datum.items[r].items,n=t.length,o=e.datum.fontSize,s=Zf.width(e.datum,e.datum.text),c=0,l,u,d,f,p,m,h;for(let r=0;r<n;++r)l=t[r].x,d=t[r].y,u=t[r].x2===void 0?l:t[r].x2,f=t[r].y2===void 0?d:t[r].y2,p=(l+u)/2,m=(d+f)/2,h=Math.abs(u-l+f-d),h>=c&&(c=h,e.x=p,e.y=m);return p=s/2,m=o/2,l=e.x-p,u=e.x+p,d=e.y-m,f=e.y+m,e.align=`center`,l<0&&u<=i?e.align=`left`:0<=l&&i<u&&(e.align=`right`),e.baseline=`middle`,d<0&&f<=a?e.baseline=`top`:0<=d&&a<f&&(e.baseline=`bottom`),!0}}function Rw(e,t,n,r,i,a){let o=n/2;return e-o<0||e+o>i||t-(o=r/2)<0||t+o>a}function zw(e,t,n,r,i,a,o,s){let c=i*a/(r*2),l=e(t-c),u=e(t+c),d=e(n-(a/=2)),f=e(n+a);return o.outOfBounds(l,d,u,f)||o.getRange(l,d,u,f)||s&&s.getRange(l,d,u,f)}function Bw(e,t,n,r){let i=e.width,a=e.height,o=t[0],s=t[1];function c(t,n,r,c,l){let u=e.invert(t),d=e.invert(n),f=r,p=a,m;if(!Rw(u,d,c,l,i,a)&&!zw(e,u,d,l,c,f,o,s)&&!zw(e,u,d,l,c,l,o,null)){for(;p-f>=1;)m=(f+p)/2,zw(e,u,d,l,c,m,o,s)?p=m:f=m;if(f>r)return[u,d,f,!0]}}return function(t){let s=t.datum.datum.items[r].items,l=s.length,u=t.datum.fontSize,d=Zf.width(t.datum,t.datum.text),f=n?u:0,p=!1,m=!1,h=0,g,_,v,y,b,x,S,C,w,T,E,D,O,k,A,ee,te;for(let r=0;r<l;++r){for(g=s[r].x,v=s[r].y,_=s[r].x2===void 0?g:s[r].x2,y=s[r].y2===void 0?v:s[r].y2,g>_&&(te=g,g=_,_=te),v>y&&(te=v,v=y,y=te),w=e(g),E=e(_),T=~~((w+E)/2),D=e(v),k=e(y),O=~~((D+k)/2),S=T;S>=w;--S)for(C=O;C>=D;--C)ee=c(S,C,f,d,u),ee&&([t.x,t.y,f,p]=ee);for(S=T;S<=E;++S)for(C=O;C<=k;++C)ee=c(S,C,f,d,u),ee&&([t.x,t.y,f,p]=ee);!p&&!n&&(A=Math.abs(_-g+y-v),b=(g+_)/2,x=(v+y)/2,A>=h&&!Rw(b,x,d,u,i,a)&&!zw(e,b,x,u,d,u,o,null)&&(h=A,t.x=b,t.y=x,m=!0))}return p||m?(b=d/2,x=u/2,o.setRange(e(t.x-b),e(t.y-x),e(t.x+b),e(t.y+x)),t.align=`center`,t.baseline=`middle`,!0):!1}}var Vw=[-1,-1,1,1],Hw=[-1,1,-1,1];function Uw(e,t,n,r){let i=e.width,a=e.height,o=t[0],s=t[1],c=e.bitmap();return function(t){let l=t.datum.datum.items[r].items,u=l.length,d=t.datum.fontSize,f=Zf.width(t.datum,t.datum.text),p=[],m=n?d:0,h=!1,g=!1,_=0,v,y,b,x,S,C,w,T,E,D,O,k;for(let r=0;r<u;++r){for(v=l[r].x,b=l[r].y,y=l[r].x2===void 0?v:l[r].x2,x=l[r].y2===void 0?b:l[r].y2,p.push([e((v+y)/2),e((b+x)/2)]);p.length;)if([w,T]=p.pop(),!(o.get(w,T)||s.get(w,T)||c.get(w,T))){c.set(w,T);for(let e=0;e<4;++e)S=w+Vw[e],C=T+Hw[e],c.outOfBounds(S,C,S,C)||p.push([S,C]);if(S=e.invert(w),C=e.invert(T),E=m,D=a,!Rw(S,C,f,d,i,a)&&!zw(e,S,C,d,f,E,o,s)&&!zw(e,S,C,d,f,d,o,null)){for(;D-E>=1;)O=(E+D)/2,zw(e,S,C,d,f,O,o,s)?D=O:E=O;E>m&&(t.x=S,t.y=C,m=E,h=!0)}}!h&&!n&&(k=Math.abs(y-v+x-b),S=(v+y)/2,C=(b+x)/2,k>=_&&!Rw(S,C,f,d,i,a)&&!zw(e,S,C,d,f,d,o,null)&&(_=k,t.x=S,t.y=C,g=!0))}return h||g?(S=f/2,C=d/2,o.setRange(e(t.x-S),e(t.y-C),e(t.x+S),e(t.y+C)),t.align=`center`,t.baseline=`middle`,!0):!1}}var Ww=[`right`,`center`,`left`],Gw=[`bottom`,`middle`,`top`];function Kw(e,t,n,r){let i=e.width,a=e.height,o=t[0],s=t[1],c=r.length;return function(t){let l=t.boundary,u=t.datum.fontSize;if(l[2]<0||l[5]<0||l[0]>i||l[3]>a)return!1;let d=t.textWidth??0,f,p,m,h,g,_,v,y,b,x,S,C,w,T,E;for(let i=0;i<c;++i){if(f=(n[i]&3)-1,p=(n[i]>>>2&3)-1,m=f===0&&p===0||r[i]<0,h=f&&p?Math.SQRT1_2:1,g=r[i]<0?-1:1,_=l[1+f]+r[i]*f*h,S=l[4+p]+g*u*p/2+r[i]*p*h,y=S-u/2,b=S+u/2,C=e(_),T=e(y),E=e(b),!d){if(qw(C,C,T,E,o,s,_,_,y,b,l,m))d=Zf.width(t.datum,t.datum.text);else continue}if(x=_+g*d*f/2,_=x-d/2,v=x+d/2,C=e(_),w=e(v),qw(C,w,T,E,o,s,_,v,y,b,l,m))return t.x=f?f*g<0?v:_:x,t.y=p?p*g<0?b:y:S,t.align=Ww[f*g+1],t.baseline=Gw[p*g+1],o.setRange(C,T,w,E),!0}return!1}}function qw(e,t,n,r,i,a,o,s,c,l,u,d){return!(i.outOfBounds(e,n,t,r)||(d&&a||i).getRange(e,n,t,r))}var Jw={"top-left":0,top:1,"top-right":2,left:4,middle:5,right:6,"bottom-left":8,bottom:9,"bottom-right":10},Yw={naive:Lw,"reduced-search":Bw,floodfill:Uw};function Xw(e,t,n,r,i,a,o,s,c,l,u){if(!e.length)return e;let d=Math.max(r.length,i.length),f=Zw(r,d),p=Qw(i,d),m=$w(e[0].datum),h=m===`group`&&e[0].datum.items[c].marktype,g=h===`area`,_=eT(m,h,s,c),v=l===null||l===1/0,y=g&&u===`naive`,b=-1,x=-1,S=e.map(e=>{let t=v?Zf.width(e,e.text):void 0;return b=Math.max(b,t),x=Math.max(x,e.fontSize),{datum:e,opacity:0,x:void 0,y:void 0,align:void 0,baseline:void 0,boundary:_(e),textWidth:t}});l=l===null||l===1/0?Math.max(b,x)+Math.max(...r):l;let C=Iw(t[0],t[1],l),w;if(!y){n&&S.sort((e,t)=>n(e.datum,t.datum));let t=!1;for(let e=0;e<p.length&&!t;++e)t=p[e]===5||f[e]<0;let r=(m&&o||g)&&e.map(e=>e.datum);w=a.length||r?Ew(C,r||[],a,t,g):Tw(C,o&&S)}let T=g?Yw[u](C,w,o,c):Kw(C,w,p,f);return S.forEach(e=>e.opacity=+T(e)),S}function Zw(e,t){let n=new Float64Array(t),r=e.length;for(let t=0;t<r;++t)n[t]=e[t]||0;for(let e=r;e<t;++e)n[e]=n[r-1];return n}function Qw(e,t){let n=new Int8Array(t),r=e.length;for(let t=0;t<r;++t)n[t]|=Jw[e[t]];for(let e=r;e<t;++e)n[e]=n[r-1];return n}function $w(e){return e&&e.mark&&e.mark.marktype}function eT(e,t,n,r){let i=e=>[e.x,e.x,e.x,e.y,e.y,e.y];return e?e===`line`||e===`area`?e=>i(e.datum):t===`line`?e=>{let t=e.datum.items[r].items;return i(t.length?t[n===`start`?0:t.length-1]:{x:NaN,y:NaN})}:e=>{let t=e.datum.bounds;return[t.x1,(t.x1+t.x2)/2,t.x2,t.y1,(t.y1+t.y2)/2,t.y2]}:i}var tT=[`x`,`y`,`opacity`,`align`,`baseline`],nT=[`top-left`,`left`,`bottom-left`,`top`,`bottom`,`top-right`,`right`,`bottom-right`];function rT(e){L.call(this,null,e)}rT.Definition={type:`Label`,metadata:{modifies:!0},params:[{name:`size`,type:`number`,array:!0,length:2,required:!0},{name:`sort`,type:`compare`},{name:`anchor`,type:`string`,array:!0,default:nT},{name:`offset`,type:`number`,array:!0,default:[1]},{name:`padding`,type:`number`,default:0,null:!0},{name:`lineAnchor`,type:`string`,values:[`start`,`end`],default:`end`},{name:`markIndex`,type:`number`,default:0},{name:`avoidBaseMark`,type:`boolean`,default:!0},{name:`avoidMarks`,type:`data`,array:!0},{name:`method`,type:`string`,default:`naive`},{name:`as`,type:`string`,array:!0,length:tT.length,default:tT}]},F(rT,L,{transform(e,t){function n(n){let r=e[n];return m(r)&&t.modified(r.fields)}let r=e.modified();if(!(r||t.changed(t.ADD_REM)||n(`sort`)))return;(!e.size||e.size.length!==2)&&j(`Size parameter should be specified as a [width, height] array.`);let i=e.as||tT;return Xw(t.materialize(t.SOURCE).source||[],e.size,e.sort,k(e.offset==null?1:e.offset),k(e.anchor||nT),e.avoidMarks||[],e.avoidBaseMark!==!1,e.lineAnchor||`end`,e.markIndex||0,e.padding===void 0?0:e.padding,e.method||`naive`).forEach(e=>{let t=e.datum;t[i[0]]=e.x,t[i[1]]=e.y,t[i[2]]=e.opacity,t[i[3]]=e.align,t[i[4]]=e.baseline}),t.reflow(r).modifies(i)}});var iT=t({loess:()=>oT,regression:()=>lT});function aT(e,t){var n=[],r=function(e){return e(s)},i,a,o,s,c,l;if(t==null)n.push(e);else for(i={},a=0,o=e.length;a<o;++a)s=e[a],c=t.map(r),l=i[c],l||(i[c]=l=[],l.dims=c,n.push(l)),l.push(s);return n}function oT(e){L.call(this,null,e)}oT.Definition={type:`Loess`,metadata:{generates:!0},params:[{name:`x`,type:`field`,required:!0},{name:`y`,type:`field`,required:!0},{name:`groupby`,type:`field`,array:!0},{name:`bandwidth`,type:`number`,default:.3},{name:`as`,type:`string`,array:!0}]},F(oT,L,{transform(e,t){let n=t.fork(t.NO_SOURCE|t.NO_FIELDS);if(!this.value||t.changed()||e.modified()){let r=t.materialize(t.SOURCE).source,i=aT(r,e.groupby),a=(e.groupby||[]).map(ve),o=a.length,s=e.as||[ve(e.x),ve(e.y)],c=[];i.forEach(t=>{Ya(t,e.x,e.y,e.bandwidth||.3).forEach(e=>{let n={};for(let e=0;e<o;++e)n[a[e]]=t.dims[e];n[s[0]]=e[0],n[s[1]]=e[1],c.push(Zr(n))})}),this.value&&(n.rem=this.value),this.value=n.add=n.source=c}return n}});var sT={constant:Pa,linear:za,log:Ba,exp:Va,pow:Ha,quad:Ua,poly:Wa},cT=(e,t)=>e===`poly`?t:e===`quad`?2:1;function lT(e){L.call(this,null,e)}lT.Definition={type:`Regression`,metadata:{generates:!0},params:[{name:`x`,type:`field`,required:!0},{name:`y`,type:`field`,required:!0},{name:`groupby`,type:`field`,array:!0},{name:`method`,type:`string`,default:`linear`,values:Object.keys(sT)},{name:`order`,type:`number`,default:3},{name:`extent`,type:`number`,array:!0,length:2},{name:`params`,type:`boolean`,default:!1},{name:`as`,type:`string`,array:!0}]},F(lT,L,{transform(e,t){let n=t.fork(t.NO_SOURCE|t.NO_FIELDS);if(!this.value||t.changed()||e.modified()){let r=t.materialize(t.SOURCE).source,i=aT(r,e.groupby),a=(e.groupby||[]).map(ve),o=e.method||`linear`,s=e.order==null?3:e.order,c=cT(o,s),l=e.as||[ve(e.x),ve(e.y)],u=sT[o],d=[],f=e.extent;T(sT,o)||j(`Invalid regression method: `+o),f!=null&&o===`log`&&f[0]<=0&&(t.dataflow.warn(`Ignoring extent with values <= 0 for log regression.`),f=null),i.forEach(n=>{if(n.length<=c){t.dataflow.warn(`Skipping regression with more parameters than data points.`);return}let r=u(n,e.x,e.y,s);if(e.params){d.push(Zr({keys:n.dims,coef:r.coef,rSquared:r.rSquared}));return}let i=f||ur(n,e.x),p=e=>{let t={};for(let e=0;e<a.length;++e)t[a[e]]=n.dims[e];t[l[0]]=e[0],t[l[1]]=e[1],d.push(Zr(t))};o===`linear`||o===`constant`?i.forEach(e=>p([e,r.predict(e)])):eo(r.predict,i,25,200).forEach(p)}),this.value&&(n.rem=this.value),this.value=n.add=n.source=d}return n}});var uT=11102230246251565e-32,dT=134217729,fT=3.000000000000001*uT;function pT(e,t,n,r,i){let a,o,s,c,l=t[0],u=r[0],d=0,f=0;u>l==u>-l?(a=l,l=t[++d]):(a=u,u=r[++f]);let p=0;if(d<e&&f<n)for(u>l==u>-l?(o=l+a,s=a-(o-l),l=t[++d]):(o=u+a,s=a-(o-u),u=r[++f]),a=o,s!==0&&(i[p++]=s);d<e&&f<n;)u>l==u>-l?(o=a+l,c=o-a,s=a-(o-c)+(l-c),l=t[++d]):(o=a+u,c=o-a,s=a-(o-c)+(u-c),u=r[++f]),a=o,s!==0&&(i[p++]=s);for(;d<e;)o=a+l,c=o-a,s=a-(o-c)+(l-c),l=t[++d],a=o,s!==0&&(i[p++]=s);for(;f<n;)o=a+u,c=o-a,s=a-(o-c)+(u-c),u=r[++f],a=o,s!==0&&(i[p++]=s);return(a!==0||p===0)&&(i[p++]=a),p}function mT(e,t){let n=t[0];for(let r=1;r<e;r++)n+=t[r];return n}function B(e){return new Float64Array(e)}var hT=(3+16*uT)*uT,gT=(2+12*uT)*uT,_T=(9+64*uT)*uT*uT,vT=B(4),yT=B(8),bT=B(12),xT=B(16),ST=B(4);function CT(e,t,n,r,i,a,o){let s,c,l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T=e-i,E=n-i,D=t-a,O=r-a;b=T*O,f=dT*T,p=f-(f-T),m=T-p,f=dT*O,h=f-(f-O),g=O-h,x=m*g-(b-p*h-m*h-p*g),S=D*E,f=dT*D,p=f-(f-D),m=D-p,f=dT*E,h=f-(f-E),g=E-h,C=m*g-(S-p*h-m*h-p*g),_=x-C,d=x-_,vT[0]=x-(_+d)+(d-C),v=b+_,d=v-b,y=b-(v-d)+(_-d),_=y-S,d=y-_,vT[1]=y-(_+d)+(d-S),w=v+_,d=w-v,vT[2]=v-(w-d)+(_-d),vT[3]=w;let k=mT(4,vT),A=gT*o;if(k>=A||-k>=A||(d=e-T,s=e-(T+d)+(d-i),d=n-E,l=n-(E+d)+(d-i),d=t-D,c=t-(D+d)+(d-a),d=r-O,u=r-(O+d)+(d-a),s===0&&c===0&&l===0&&u===0)||(A=_T*o+fT*Math.abs(k),k+=T*u+O*s-(D*l+E*c),k>=A||-k>=A))return k;b=s*O,f=dT*s,p=f-(f-s),m=s-p,f=dT*O,h=f-(f-O),g=O-h,x=m*g-(b-p*h-m*h-p*g),S=c*E,f=dT*c,p=f-(f-c),m=c-p,f=dT*E,h=f-(f-E),g=E-h,C=m*g-(S-p*h-m*h-p*g),_=x-C,d=x-_,ST[0]=x-(_+d)+(d-C),v=b+_,d=v-b,y=b-(v-d)+(_-d),_=y-S,d=y-_,ST[1]=y-(_+d)+(d-S),w=v+_,d=w-v,ST[2]=v-(w-d)+(_-d),ST[3]=w;let ee=pT(4,vT,4,ST,yT);b=T*u,f=dT*T,p=f-(f-T),m=T-p,f=dT*u,h=f-(f-u),g=u-h,x=m*g-(b-p*h-m*h-p*g),S=D*l,f=dT*D,p=f-(f-D),m=D-p,f=dT*l,h=f-(f-l),g=l-h,C=m*g-(S-p*h-m*h-p*g),_=x-C,d=x-_,ST[0]=x-(_+d)+(d-C),v=b+_,d=v-b,y=b-(v-d)+(_-d),_=y-S,d=y-_,ST[1]=y-(_+d)+(d-S),w=v+_,d=w-v,ST[2]=v-(w-d)+(_-d),ST[3]=w;let te=pT(ee,yT,4,ST,bT);return b=s*u,f=dT*s,p=f-(f-s),m=s-p,f=dT*u,h=f-(f-u),g=u-h,x=m*g-(b-p*h-m*h-p*g),S=c*l,f=dT*c,p=f-(f-c),m=c-p,f=dT*l,h=f-(f-l),g=l-h,C=m*g-(S-p*h-m*h-p*g),_=x-C,d=x-_,ST[0]=x-(_+d)+(d-C),v=b+_,d=v-b,y=b-(v-d)+(_-d),_=y-S,d=y-_,ST[1]=y-(_+d)+(d-S),w=v+_,d=w-v,ST[2]=v-(w-d)+(_-d),ST[3]=w,xT[pT(te,bT,4,ST,xT)-1]}function wT(e,t,n,r,i,a){let o=(t-a)*(n-i),s=(e-i)*(r-a),c=o-s,l=Math.abs(o+s);return Math.abs(c)>=hT*l?c:-CT(e,t,n,r,i,a,l)}(7+56*uT)*uT,(3+28*uT)*uT,(26+288*uT)*uT*uT,B(4),B(4),B(4),B(4),B(4),B(4),B(4),B(4),B(4),B(8),B(8),B(8),B(4),B(8),B(8),B(16),B(12),B(192),B(192),(10+96*uT)*uT,(4+48*uT)*uT,(44+576*uT)*uT*uT,B(4),B(4),B(4),B(4),B(4),B(4),B(4),B(4),B(8),B(8),B(8),B(8),B(8),B(8),B(8),B(8),B(8),B(4),B(4),B(4),B(8),B(16),B(16),B(16),B(32),B(32),B(48),B(64),B(1152),B(1152),(16+224*uT)*uT,(5+72*uT)*uT,(71+1408*uT)*uT*uT,B(4),B(4),B(4),B(4),B(4),B(4),B(4),B(4),B(4),B(4),B(24),B(24),B(24),B(24),B(24),B(24),B(24),B(24),B(24),B(24),B(1152),B(1152),B(1152),B(1152),B(1152),B(2304),B(2304),B(3456),B(5760),B(8),B(8),B(8),B(16),B(24),B(48),B(48),B(96),B(192),B(384),B(384),B(384),B(768),B(96),B(96),B(96),B(1152);var TT=2**-52,ET=new Uint32Array(512),DT=class e{static from(t,n=FT,r=IT){let i=t.length,a=new Float64Array(i*2);for(let e=0;e<i;e++){let i=t[e];a[2*e]=n(i),a[2*e+1]=r(i)}return new e(a)}constructor(e){let t=e.length>>1;if(t>0&&typeof e[0]!=`number`)throw Error(`Expected coords to contain numbers.`);this.coords=e;let n=Math.max(2*t-5,0);this._triangles=new Uint32Array(n*3),this._halfedges=new Int32Array(n*3),this._hashSize=Math.ceil(Math.sqrt(t)),this._hullPrev=new Uint32Array(t),this._hullNext=new Uint32Array(t),this._hullTri=new Uint32Array(t),this._hullHash=new Int32Array(this._hashSize),this._ids=new Uint32Array(t),this._dists=new Float64Array(t),this.trianglesLen=0,this._cx=0,this._cy=0,this._hullStart=0,this.hull=this._triangles,this.triangles=this._triangles,this.halfedges=this._halfedges,this.update()}update(){let{coords:e,_hullPrev:t,_hullNext:n,_hullTri:r,_hullHash:i}=this,a=e.length>>1,o=1/0,s=1/0,c=-1/0,l=-1/0;for(let t=0;t<a;t++){let n=e[2*t],r=e[2*t+1];n<o&&(o=n),r<s&&(s=r),n>c&&(c=n),r>l&&(l=r),this._ids[t]=t}let u=(o+c)/2,d=(s+l)/2,f=0,p=0,m=0;for(let t=0,n=1/0;t<a;t++){let r=kT(u,d,e[2*t],e[2*t+1]);r<n&&(f=t,n=r)}let h=e[2*f],g=e[2*f+1];for(let t=0,n=1/0;t<a;t++){if(t===f)continue;let r=kT(h,g,e[2*t],e[2*t+1]);r<n&&r>0&&(p=t,n=r)}let _=e[2*p],v=e[2*p+1],y=1/0;for(let t=0;t<a;t++){if(t===f||t===p)continue;let n=jT(h,g,_,v,e[2*t],e[2*t+1]);n<y&&(m=t,y=n)}let b=e[2*m],x=e[2*m+1];if(y===1/0){for(let t=0;t<a;t++)this._dists[t]=e[2*t]-e[0]||e[2*t+1]-e[1];NT(this._ids,this._dists,0,a-1);let t=new Uint32Array(a),n=0;for(let e=0,r=-1/0;e<a;e++){let i=this._ids[e],a=this._dists[i];a>r&&(t[n++]=i,r=a)}this.hull=t.subarray(0,n),this.triangles=new Uint32Array,this.halfedges=new Int32Array;return}if(wT(h,g,_,v,b,x)<0){let e=p,t=_,n=v;p=m,_=b,v=x,m=e,b=t,x=n}let S=MT(h,g,_,v,b,x);this._cx=S.x,this._cy=S.y;for(let t=0;t<a;t++)this._dists[t]=kT(e[2*t],e[2*t+1],S.x,S.y);NT(this._ids,this._dists,0,a-1),this._hullStart=f;let C=3;n[f]=t[m]=p,n[p]=t[f]=m,n[m]=t[p]=f,r[f]=0,r[p]=1,r[m]=2,i.fill(-1),i[this._hashKey(h,g)]=f,i[this._hashKey(_,v)]=p,i[this._hashKey(b,x)]=m,this.trianglesLen=0,this._addTriangle(f,p,m,-1,-1,-1);for(let a=0,o=0,s=0;a<this._ids.length;a++){let c=this._ids[a],l=e[2*c],u=e[2*c+1];if(a>0&&Math.abs(l-o)<=TT&&Math.abs(u-s)<=TT||(o=l,s=u,c===f||c===p||c===m))continue;let d=0;for(let e=0,t=this._hashKey(l,u);e<this._hashSize&&(d=i[(t+e)%this._hashSize],d===-1||d===n[d]);e++);d=t[d];let h=d,g;for(;g=n[h],wT(l,u,e[2*h],e[2*h+1],e[2*g],e[2*g+1])>=0;)if(h=g,h===d){h=-1;break}if(h===-1)continue;let _=this._addTriangle(h,c,n[h],-1,-1,r[h]);r[c]=this._legalize(_+2),r[h]=_,C++;let v=n[h];for(;g=n[v],wT(l,u,e[2*v],e[2*v+1],e[2*g],e[2*g+1])<0;)_=this._addTriangle(v,c,g,r[c],-1,r[v]),r[c]=this._legalize(_+2),n[v]=v,C--,v=g;if(h===d)for(;g=t[h],wT(l,u,e[2*g],e[2*g+1],e[2*h],e[2*h+1])<0;)_=this._addTriangle(g,c,h,-1,r[h],r[g]),this._legalize(_+2),r[g]=_,n[h]=h,C--,h=g;this._hullStart=t[c]=h,n[h]=t[v]=c,n[c]=v,i[this._hashKey(l,u)]=c,i[this._hashKey(e[2*h],e[2*h+1])]=h}this.hull=new Uint32Array(C);for(let e=0,t=this._hullStart;e<C;e++)this.hull[e]=t,t=n[t];this.triangles=this._triangles.subarray(0,this.trianglesLen),this.halfedges=this._halfedges.subarray(0,this.trianglesLen)}_hashKey(e,t){return Math.floor(OT(e-this._cx,t-this._cy)*this._hashSize)%this._hashSize}_legalize(e){let{_triangles:t,_halfedges:n,coords:r}=this,i=0,a=0;for(;;){let o=n[e],s=e-e%3;if(a=s+(e+2)%3,o===-1){if(i===0)break;e=ET[--i];continue}let c=o-o%3,l=s+(e+1)%3,u=c+(o+2)%3,d=t[a],f=t[e],p=t[l],m=t[u];if(AT(r[2*d],r[2*d+1],r[2*f],r[2*f+1],r[2*p],r[2*p+1],r[2*m],r[2*m+1])){t[e]=m,t[o]=d;let r=n[u];if(r===-1){let t=this._hullStart;do{if(this._hullTri[t]===u){this._hullTri[t]=e;break}t=this._hullPrev[t]}while(t!==this._hullStart)}this._link(e,r),this._link(o,n[a]),this._link(a,u);let s=c+(o+1)%3;i<ET.length&&(ET[i++]=s)}else{if(i===0)break;e=ET[--i]}}return a}_link(e,t){this._halfedges[e]=t,t!==-1&&(this._halfedges[t]=e)}_addTriangle(e,t,n,r,i,a){let o=this.trianglesLen;return this._triangles[o]=e,this._triangles[o+1]=t,this._triangles[o+2]=n,this._link(o,r),this._link(o+1,i),this._link(o+2,a),this.trianglesLen+=3,o}};function OT(e,t){let n=e/(Math.abs(e)+Math.abs(t));return(t>0?3-n:1+n)/4}function kT(e,t,n,r){let i=e-n,a=t-r;return i*i+a*a}function AT(e,t,n,r,i,a,o,s){let c=e-o,l=t-s,u=n-o,d=r-s,f=i-o,p=a-s,m=c*c+l*l,h=u*u+d*d,g=f*f+p*p;return c*(d*g-h*p)-l*(u*g-h*f)+m*(u*p-d*f)<0}function jT(e,t,n,r,i,a){let o=n-e,s=r-t,c=i-e,l=a-t,u=o*o+s*s,d=c*c+l*l,f=.5/(o*l-s*c),p=(l*u-s*d)*f,m=(o*d-c*u)*f;return p*p+m*m}function MT(e,t,n,r,i,a){let o=n-e,s=r-t,c=i-e,l=a-t,u=o*o+s*s,d=c*c+l*l,f=.5/(o*l-s*c);return{x:e+(l*u-s*d)*f,y:t+(o*d-c*u)*f}}function NT(e,t,n,r){if(r-n<=20)for(let i=n+1;i<=r;i++){let r=e[i],a=t[r],o=i-1;for(;o>=n&&t[e[o]]>a;)e[o+1]=e[o--];e[o+1]=r}else{let i=n+r>>1,a=n+1,o=r;PT(e,i,a),t[e[n]]>t[e[r]]&&PT(e,n,r),t[e[a]]>t[e[r]]&&PT(e,a,r),t[e[n]]>t[e[a]]&&PT(e,n,a);let s=e[a],c=t[s];for(;;){do a++;while(t[e[a]]<c);do o--;while(t[e[o]]>c);if(o<a)break;PT(e,a,o)}e[n+1]=e[o],e[o]=s,r-a+1>=o-n?(NT(e,t,a,r),NT(e,t,n,o-1)):(NT(e,t,n,o-1),NT(e,t,a,r))}}function PT(e,t,n){let r=e[t];e[t]=e[n],e[n]=r}function FT(e){return e[0]}function IT(e){return e[1]}var LT=1e-6,RT=class{constructor(){this._x0=this._y0=this._x1=this._y1=null,this._=``}moveTo(e,t){this._+=`M${this._x0=this._x1=+e},${this._y0=this._y1=+t}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+=`Z`)}lineTo(e,t){this._+=`L${this._x1=+e},${this._y1=+t}`}arc(e,t,n){e=+e,t=+t,n=+n;let r=e+n,i=t;if(n<0)throw Error(`negative radius`);this._x1===null?this._+=`M${r},${i}`:(Math.abs(this._x1-r)>LT||Math.abs(this._y1-i)>LT)&&(this._+=`L`+r+`,`+i),n&&(this._+=`A${n},${n},0,1,1,${e-n},${t}A${n},${n},0,1,1,${this._x1=r},${this._y1=i}`)}rect(e,t,n,r){this._+=`M${this._x0=this._x1=+e},${this._y0=this._y1=+t}h${+n}v${+r}h${-n}Z`}value(){return this._||null}},zT=class{constructor(){this._=[]}moveTo(e,t){this._.push([e,t])}closePath(){this._.push(this._[0].slice())}lineTo(e,t){this._.push([e,t])}value(){return this._.length?this._:null}},mie=class{constructor(e,[t,n,r,i]=[0,0,960,500]){if(!((r=+r)>=(t=+t))||!((i=+i)>=(n=+n)))throw Error(`invalid bounds`);this.delaunay=e,this._circumcenters=new Float64Array(e.points.length*2),this.vectors=new Float64Array(e.points.length*2),this.xmax=r,this.xmin=t,this.ymax=i,this.ymin=n,this._init()}update(){return this.delaunay.update(),this._init(),this}_init(){let{delaunay:{points:e,hull:t,triangles:n},vectors:r}=this,i,a,o=this.circumcenters=this._circumcenters.subarray(0,n.length/3*2);for(let r=0,s=0,c=n.length,l,u;r<c;r+=3,s+=2){let c=n[r]*2,d=n[r+1]*2,f=n[r+2]*2,p=e[c],m=e[c+1],h=e[d],g=e[d+1],_=e[f],v=e[f+1],y=h-p,b=g-m,x=_-p,S=v-m,C=(y*S-b*x)*2;if(Math.abs(C)<1e-9){if(i===void 0){i=a=0;for(let n of t)i+=e[n*2],a+=e[n*2+1];i/=t.length,a/=t.length}let n=1e9*Math.sign((i-p)*S-(a-m)*x);l=(p+_)/2-n*S,u=(m+v)/2+n*x}else{let e=1/C,t=y*y+b*b,n=x*x+S*S;l=p+(S*t-b*n)*e,u=m+(y*n-x*t)*e}o[s]=l,o[s+1]=u}let s=t[t.length-1],c,l=s*4,u,d=e[2*s],f,p=e[2*s+1];r.fill(0);for(let n=0;n<t.length;++n)s=t[n],c=l,u=d,f=p,l=s*4,d=e[2*s],p=e[2*s+1],r[c+2]=r[l]=f-p,r[c+3]=r[l+1]=d-u}render(e){let t=e==null?e=new RT:void 0,{delaunay:{halfedges:n,inedges:r,hull:i},circumcenters:a,vectors:o}=this;if(i.length<=1)return null;for(let t=0,r=n.length;t<r;++t){let r=n[t];if(r<t)continue;let i=Math.floor(t/3)*2,o=Math.floor(r/3)*2,s=a[i],c=a[i+1],l=a[o],u=a[o+1];this._renderSegment(s,c,l,u,e)}let s,c=i[i.length-1];for(let t=0;t<i.length;++t){s=c,c=i[t];let n=Math.floor(r[c]/3)*2,l=a[n],u=a[n+1],d=s*4,f=this._project(l,u,o[d+2],o[d+3]);f&&this._renderSegment(l,u,f[0],f[1],e)}return t&&t.value()}renderBounds(e){let t=e==null?e=new RT:void 0;return e.rect(this.xmin,this.ymin,this.xmax-this.xmin,this.ymax-this.ymin),t&&t.value()}renderCell(e,t){let n=t==null?t=new RT:void 0,r=this._clip(e);if(r===null||!r.length)return;t.moveTo(r[0],r[1]);let i=r.length;for(;r[0]===r[i-2]&&r[1]===r[i-1]&&i>1;)i-=2;for(let e=2;e<i;e+=2)(r[e]!==r[e-2]||r[e+1]!==r[e-1])&&t.lineTo(r[e],r[e+1]);return t.closePath(),n&&n.value()}*cellPolygons(){let{delaunay:{points:e}}=this;for(let t=0,n=e.length/2;t<n;++t){let e=this.cellPolygon(t);e&&(e.index=t,yield e)}}cellPolygon(e){let t=new zT;return this.renderCell(e,t),t.value()}_renderSegment(e,t,n,r,i){let a,o=this._regioncode(e,t),s=this._regioncode(n,r);o===0&&s===0?(i.moveTo(e,t),i.lineTo(n,r)):(a=this._clipSegment(e,t,n,r,o,s))&&(i.moveTo(a[0],a[1]),i.lineTo(a[2],a[3]))}contains(e,t,n){return t=+t,t!==t||(n=+n,n!==n)?!1:this.delaunay._step(e,t,n)===e}*neighbors(e){let t=this._clip(e);if(t)for(let n of this.delaunay.neighbors(e)){let e=this._clip(n);if(e){loop:for(let r=0,i=t.length;r<i;r+=2)for(let a=0,o=e.length;a<o;a+=2)if(t[r]===e[a]&&t[r+1]===e[a+1]&&t[(r+2)%i]===e[(a+o-2)%o]&&t[(r+3)%i]===e[(a+o-1)%o]){yield n;break loop}}}}_cell(e){let{circumcenters:t,delaunay:{inedges:n,halfedges:r,triangles:i}}=this,a=n[e];if(a===-1)return null;let o=[],s=a;do{let n=Math.floor(s/3);if(o.push(t[n*2],t[n*2+1]),s=s%3==2?s-2:s+1,i[s]!==e)break;s=r[s]}while(s!==a&&s!==-1);return o}_clip(e){if(e===0&&this.delaunay.hull.length===1)return[this.xmax,this.ymin,this.xmax,this.ymax,this.xmin,this.ymax,this.xmin,this.ymin];let t=this._cell(e);if(t===null)return null;let{vectors:n}=this,r=e*4;return this._simplify(n[r]||n[r+1]?this._clipInfinite(e,t,n[r],n[r+1],n[r+2],n[r+3]):this._clipFinite(e,t))}_clipFinite(e,t){let n=t.length,r=null,i,a,o=t[n-2],s=t[n-1],c,l=this._regioncode(o,s),u,d=0;for(let f=0;f<n;f+=2)if(i=o,a=s,o=t[f],s=t[f+1],c=l,l=this._regioncode(o,s),c===0&&l===0)u=d,d=0,r?r.push(o,s):r=[o,s];else{let t,n,f,p,m;if(c===0){if((t=this._clipSegment(i,a,o,s,c,l))===null)continue;[n,f,p,m]=t}else{if((t=this._clipSegment(o,s,i,a,l,c))===null)continue;[p,m,n,f]=t,u=d,d=this._edgecode(n,f),u&&d&&this._edge(e,u,d,r,r.length),r?r.push(n,f):r=[n,f]}u=d,d=this._edgecode(p,m),u&&d&&this._edge(e,u,d,r,r.length),r?r.push(p,m):r=[p,m]}if(r)u=d,d=this._edgecode(r[0],r[1]),u&&d&&this._edge(e,u,d,r,r.length);else if(this.contains(e,(this.xmin+this.xmax)/2,(this.ymin+this.ymax)/2))return[this.xmax,this.ymin,this.xmax,this.ymax,this.xmin,this.ymax,this.xmin,this.ymin];return r}_clipSegment(e,t,n,r,i,a){let o=i<a;for(o&&([e,t,n,r,i,a]=[n,r,e,t,a,i]);;){if(i===0&&a===0)return o?[n,r,e,t]:[e,t,n,r];if(i&a)return null;let s,c,l=i||a;l&8?(s=e+(n-e)*(this.ymax-t)/(r-t),c=this.ymax):l&4?(s=e+(n-e)*(this.ymin-t)/(r-t),c=this.ymin):l&2?(c=t+(r-t)*(this.xmax-e)/(n-e),s=this.xmax):(c=t+(r-t)*(this.xmin-e)/(n-e),s=this.xmin),i?(e=s,t=c,i=this._regioncode(e,t)):(n=s,r=c,a=this._regioncode(n,r))}}_clipInfinite(e,t,n,r,i,a){let o=Array.from(t),s;if((s=this._project(o[0],o[1],n,r))&&o.unshift(s[0],s[1]),(s=this._project(o[o.length-2],o[o.length-1],i,a))&&o.push(s[0],s[1]),o=this._clipFinite(e,o))for(let t=0,n=o.length,r,i=this._edgecode(o[n-2],o[n-1]);t<n;t+=2)r=i,i=this._edgecode(o[t],o[t+1]),r&&i&&(t=this._edge(e,r,i,o,t),n=o.length);else this.contains(e,(this.xmin+this.xmax)/2,(this.ymin+this.ymax)/2)&&(o=[this.xmin,this.ymin,this.xmax,this.ymin,this.xmax,this.ymax,this.xmin,this.ymax]);return o}_edge(e,t,n,r,i){for(;t!==n;){let n,a;switch(t){case 5:t=4;continue;case 4:t=6,n=this.xmax,a=this.ymin;break;case 6:t=2;continue;case 2:t=10,n=this.xmax,a=this.ymax;break;case 10:t=8;continue;case 8:t=9,n=this.xmin,a=this.ymax;break;case 9:t=1;continue;case 1:t=5,n=this.xmin,a=this.ymin}(r[i]!==n||r[i+1]!==a)&&this.contains(e,n,a)&&(r.splice(i,0,n,a),i+=2)}return i}_project(e,t,n,r){let i=1/0,a,o,s;if(r<0){if(t<=this.ymin)return null;(a=(this.ymin-t)/r)<i&&(s=this.ymin,o=e+(i=a)*n)}else if(r>0){if(t>=this.ymax)return null;(a=(this.ymax-t)/r)<i&&(s=this.ymax,o=e+(i=a)*n)}if(n>0){if(e>=this.xmax)return null;(a=(this.xmax-e)/n)<i&&(o=this.xmax,s=t+(i=a)*r)}else if(n<0){if(e<=this.xmin)return null;(a=(this.xmin-e)/n)<i&&(o=this.xmin,s=t+(i=a)*r)}return[o,s]}_edgecode(e,t){return(e===this.xmin?1:e===this.xmax?2:0)|(t===this.ymin?4:t===this.ymax?8:0)}_regioncode(e,t){return(e<this.xmin?1:e>this.xmax?2:0)|(t<this.ymin?4:t>this.ymax?8:0)}_simplify(e){if(e&&e.length>4){for(let t=0;t<e.length;t+=2){let n=(t+2)%e.length,r=(t+4)%e.length;(e[t]===e[n]&&e[n]===e[r]||e[t+1]===e[n+1]&&e[n+1]===e[r+1])&&(e.splice(n,2),t-=2)}e.length||(e=null)}return e}},hie=2*Math.PI,BT=Math.pow;function gie(e){return e[0]}function _ie(e){return e[1]}function vie(e){let{triangles:t,coords:n}=e;for(let e=0;e<t.length;e+=3){let r=2*t[e],i=2*t[e+1],a=2*t[e+2];if((n[a]-n[r])*(n[i+1]-n[r+1])-(n[i]-n[r])*(n[a+1]-n[r+1])>1e-10)return!1}return!0}function yie(e,t,n){return[e+Math.sin(e+t)*n,t+Math.cos(e-t)*n]}var bie=class e{static from(t,n=gie,r=_ie,i){return new e(`length`in t?xie(t,n,r,i):Float64Array.from(Sie(t,n,r,i)))}constructor(e){this._delaunator=new DT(e),this.inedges=new Int32Array(e.length/2),this._hullIndex=new Int32Array(e.length/2),this.points=this._delaunator.coords,this._init()}update(){return this._delaunator.update(),this._init(),this}_init(){let e=this._delaunator,t=this.points;if(e.hull&&e.hull.length>2&&vie(e)){this.collinear=Int32Array.from({length:t.length/2},(e,t)=>t).sort((e,n)=>t[2*e]-t[2*n]||t[2*e+1]-t[2*n+1]);let e=this.collinear[0],n=this.collinear[this.collinear.length-1],r=[t[2*e],t[2*e+1],t[2*n],t[2*n+1]],i=1e-8*Math.hypot(r[3]-r[1],r[2]-r[0]);for(let e=0,n=t.length/2;e<n;++e){let n=yie(t[2*e],t[2*e+1],i);t[2*e]=n[0],t[2*e+1]=n[1]}this._delaunator=new DT(t)}else delete this.collinear;let n=this.halfedges=this._delaunator.halfedges,r=this.hull=this._delaunator.hull,i=this.triangles=this._delaunator.triangles,a=this.inedges.fill(-1),o=this._hullIndex.fill(-1);for(let e=0,t=n.length;e<t;++e){let t=i[e%3==2?e-2:e+1];(n[e]===-1||a[t]===-1)&&(a[t]=e)}for(let e=0,t=r.length;e<t;++e)o[r[e]]=e;r.length<=2&&r.length>0&&(this.triangles=new Int32Array(3).fill(-1),this.halfedges=new Int32Array(3).fill(-1),this.triangles[0]=r[0],a[r[0]]=1,r.length===2&&(a[r[1]]=0,this.triangles[1]=r[1],this.triangles[2]=r[1]))}voronoi(e){return new mie(this,e)}*neighbors(e){let{inedges:t,hull:n,_hullIndex:r,halfedges:i,triangles:a,collinear:o}=this;if(o){let t=o.indexOf(e);t>0&&(yield o[t-1]),t<o.length-1&&(yield o[t+1]);return}let s=t[e];if(s===-1)return;let c=s,l=-1;do{if(yield l=a[c],c=c%3==2?c-2:c+1,a[c]!==e)return;if(c=i[c],c===-1){let t=n[(r[e]+1)%n.length];t!==l&&(yield t);return}}while(c!==s)}find(e,t,n=0){if(e=+e,e!==e||(t=+t,t!==t))return-1;let r=n,i;for(;(i=this._step(n,e,t))>=0&&i!==n&&i!==r;)n=i;return i}_step(e,t,n){let{inedges:r,hull:i,_hullIndex:a,halfedges:o,triangles:s,points:c}=this;if(r[e]===-1||!c.length)return(e+1)%(c.length>>1);let l=e,u=BT(t-c[e*2],2)+BT(n-c[e*2+1],2),d=r[e],f=d;do{let r=s[f],d=BT(t-c[r*2],2)+BT(n-c[r*2+1],2);if(d<u&&(u=d,l=r),f=f%3==2?f-2:f+1,s[f]!==e)break;if(f=o[f],f===-1){if(f=i[(a[e]+1)%i.length],f!==r&&BT(t-c[f*2],2)+BT(n-c[f*2+1],2)<u)return f;break}}while(f!==d);return l}render(e){let t=e==null?e=new RT:void 0,{points:n,halfedges:r,triangles:i}=this;for(let t=0,a=r.length;t<a;++t){let a=r[t];if(a<t)continue;let o=i[t]*2,s=i[a]*2;e.moveTo(n[o],n[o+1]),e.lineTo(n[s],n[s+1])}return this.renderHull(e),t&&t.value()}renderPoints(e,t){t===void 0&&(!e||typeof e.moveTo!=`function`)&&(t=e,e=null),t=t==null?2:+t;let n=e==null?e=new RT:void 0,{points:r}=this;for(let n=0,i=r.length;n<i;n+=2){let i=r[n],a=r[n+1];e.moveTo(i+t,a),e.arc(i,a,t,0,hie)}return n&&n.value()}renderHull(e){let t=e==null?e=new RT:void 0,{hull:n,points:r}=this,i=n[0]*2,a=n.length;e.moveTo(r[i],r[i+1]);for(let t=1;t<a;++t){let i=2*n[t];e.lineTo(r[i],r[i+1])}return e.closePath(),t&&t.value()}hullPolygon(){let e=new zT;return this.renderHull(e),e.value()}renderTriangle(e,t){let n=t==null?t=new RT:void 0,{points:r,triangles:i}=this,a=i[e*=3]*2,o=i[e+1]*2,s=i[e+2]*2;return t.moveTo(r[a],r[a+1]),t.lineTo(r[o],r[o+1]),t.lineTo(r[s],r[s+1]),t.closePath(),n&&n.value()}*trianglePolygons(){let{triangles:e}=this;for(let t=0,n=e.length/3;t<n;++t)yield this.trianglePolygon(t)}trianglePolygon(e){let t=new zT;return this.renderTriangle(e,t),t.value()}};function xie(e,t,n,r){let i=e.length,a=new Float64Array(i*2);for(let o=0;o<i;++o){let i=e[o];a[o*2]=t.call(r,i,o,e),a[o*2+1]=n.call(r,i,o,e)}return a}function*Sie(e,t,n,r){let i=0;for(let a of e)yield t.call(r,a,i,e),yield n.call(r,a,i,e),++i}var Cie=t({voronoi:()=>VT});function VT(e){L.call(this,null,e)}VT.Definition={type:`Voronoi`,metadata:{modifies:!0},params:[{name:`x`,type:`field`,required:!0},{name:`y`,type:`field`,required:!0},{name:`size`,type:`number`,array:!0,length:2},{name:`extent`,type:`array`,array:!0,length:2,default:[[-1e5,-1e5],[1e5,1e5]],content:{type:`number`,array:!0,length:2}},{name:`as`,type:`string`,default:`path`}]};var wie=[-1e5,-1e5,1e5,1e5];F(VT,L,{transform(e,t){let n=e.as||`path`,r=t.source;if(!r||!r.length)return t;let i=e.size;i=i?[0,0,i[0],i[1]]:(i=e.extent)?[i[0][0],i[0][1],i[1][0],i[1][1]]:wie;let a=this.value=bie.from(r,e.x,e.y).voronoi(i);for(let e=0,t=r.length;e<t;++e){let t=a.cellPolygon(e);r[e][n]=t&&!Eie(t)?Tie(t):null}return t.reflow(e.modified()).modifies(n)}});function Tie(e){let t=e[0][0],n=e[0][1],r=e.length-1;for(;e[r][0]===t&&e[r][1]===n;--r);return`M`+e.slice(0,r+1).join(`L`)+`Z`}function Eie(e){return e.length===2&&e[0][0]===e[1][0]&&e[0][1]===e[1][1]}var Die=t({wordcloud:()=>JT}),HT=Math.PI/180,UT=64,WT=2048;function Oie(){var e=[256,256],t,n,r,i,a,o,s,c=GT,l=[],u=Math.random,d={};d.layout=function(){for(var c=f(Js()),d=Pie((e[0]>>5)*e[1]),m=null,h=l.length,g=-1,_=[],v=l.map(e=>({text:t(e),font:n(e),style:i(e),weight:a(e),rotate:o(e),size:~~(r(e)+1e-14),padding:s(e),xoff:0,yoff:0,x1:0,y1:0,x0:0,y0:0,hasText:!1,sprite:null,datum:e})).sort((e,t)=>t.size-e.size);++g<h;){var y=v[g];y.x=e[0]*(u()+.5)>>1,y.y=e[1]*(u()+.5)>>1,kie(c,y,v,g),y.hasText&&p(d,y,m)&&(_.push(y),m?jie(m,y):m=[{x:y.x+y.x0,y:y.y+y.y0},{x:y.x+y.x1,y:y.y+y.y1}],y.x-=e[0]>>1,y.y-=e[1]>>1)}return _};function f(e){e.width=e.height=1;var t=Math.sqrt(e.getContext(`2d`).getImageData(0,0,1,1).data.length>>2);e.width=(UT<<5)/t,e.height=WT/t;var n=e.getContext(`2d`);return n.fillStyle=n.strokeStyle=`red`,n.textAlign=`center`,{context:n,ratio:t}}function p(t,n,r){for(var i=n.x,a=n.y,o=Math.hypot(e[0],e[1]),s=c(e),l=u()<.5?1:-1,d=-l,f,p,m;(f=s(d+=l))&&(p=~~f[0],m=~~f[1],!(Math.min(Math.abs(p),Math.abs(m))>=o));)if(n.x=i+p,n.y=a+m,!(n.x+n.x0<0||n.y+n.y0<0||n.x+n.x1>e[0]||n.y+n.y1>e[1])&&(!r||!Aie(n,t,e[0]))&&(!r||Mie(n,r))){for(var h=n.sprite,g=n.width>>5,_=e[0]>>5,v=n.x-(g<<4),y=v&127,b=32-y,x=n.y1-n.y0,S=(n.y+n.y0)*_+(v>>5),C,w=0;w<x;w++){C=0;for(var T=0;T<=g;T++)t[S+T]|=C<<b|(T<g?(C=h[w*g+T])>>>y:0);S+=_}return n.sprite=null,!0}return!1}return d.words=function(e){return arguments.length?(l=e,d):l},d.size=function(t){return arguments.length?(e=[+t[0],+t[1]],d):e},d.font=function(e){return arguments.length?(n=KT(e),d):n},d.fontStyle=function(e){return arguments.length?(i=KT(e),d):i},d.fontWeight=function(e){return arguments.length?(a=KT(e),d):a},d.rotate=function(e){return arguments.length?(o=KT(e),d):o},d.text=function(e){return arguments.length?(t=KT(e),d):t},d.spiral=function(e){return arguments.length?(c=Fie[e]||e,d):c},d.fontSize=function(e){return arguments.length?(r=KT(e),d):r},d.padding=function(e){return arguments.length?(s=KT(e),d):s},d.random=function(e){return arguments.length?(u=e,d):u},d}function kie(e,t,n,r){if(!t.sprite){var i=e.context,a=e.ratio;i.clearRect(0,0,(UT<<5)/a,WT/a);var o=0,s=0,c=0,l=n.length,u,d,f,p,m;for(--r;++r<l;){if(t=n[r],i.save(),i.font=t.style+` `+t.weight+` `+~~((t.size+1)/a)+`px `+t.font,u=i.measureText(t.text+`m`).width*a,f=t.size<<1,t.rotate){var h=Math.sin(t.rotate*HT),g=Math.cos(t.rotate*HT),_=u*g,v=u*h,y=f*g,b=f*h;u=Math.max(Math.abs(_+b),Math.abs(_-b))+31>>5<<5,f=~~Math.max(Math.abs(v+y),Math.abs(v-y))}else u=u+31>>5<<5;if(f>c&&(c=f),o+u>=UT<<5&&(o=0,s+=c,c=0),s+f>=WT)break;i.translate((o+(u>>1))/a,(s+(f>>1))/a),t.rotate&&i.rotate(t.rotate*HT),i.fillText(t.text,0,0),t.padding&&(i.lineWidth=2*t.padding,i.strokeText(t.text,0,0)),i.restore(),t.width=u,t.height=f,t.xoff=o,t.yoff=s,t.x1=u>>1,t.y1=f>>1,t.x0=-t.x1,t.y0=-t.y1,t.hasText=!0,o+=u}for(var x=i.getImageData(0,0,(UT<<5)/a,WT/a).data,S=[];--r>=0;)if(t=n[r],t.hasText){for(u=t.width,d=u>>5,f=t.y1-t.y0,p=0;p<f*d;p++)S[p]=0;if(o=t.xoff,o==null)return;s=t.yoff;var C=0,w=-1;for(m=0;m<f;m++){for(p=0;p<u;p++){var T=d*m+(p>>5),E=x[(s+m)*(UT<<5)+(o+p)<<2]?1<<31-p%32:0;S[T]|=E,C|=E}C?w=m:(t.y0++,f--,m--,s++)}t.y1=t.y0+w,t.sprite=S.slice(0,(t.y1-t.y0)*d)}}}function Aie(e,t,n){n>>=5;for(var r=e.sprite,i=e.width>>5,a=e.x-(i<<4),o=a&127,s=32-o,c=e.y1-e.y0,l=(e.y+e.y0)*n+(a>>5),u,d=0;d<c;d++){u=0;for(var f=0;f<=i;f++)if((u<<s|(f<i?(u=r[d*i+f])>>>o:0))&t[l+f])return!0;l+=n}return!1}function jie(e,t){var n=e[0],r=e[1];t.x+t.x0<n.x&&(n.x=t.x+t.x0),t.y+t.y0<n.y&&(n.y=t.y+t.y0),t.x+t.x1>r.x&&(r.x=t.x+t.x1),t.y+t.y1>r.y&&(r.y=t.y+t.y1)}function Mie(e,t){return e.x+e.x1>t[0].x&&e.x+e.x0<t[1].x&&e.y+e.y1>t[0].y&&e.y+e.y0<t[1].y}function GT(e){var t=e[0]/e[1];return function(e){return[t*(e*=.1)*Math.cos(e),e*Math.sin(e)]}}function Nie(e){var t=4,n=t*e[0]/e[1],r=0,i=0;return function(e){var a=e<0?-1:1;switch(Math.sqrt(1+4*a*e)-a&3){case 0:r+=n;break;case 1:i+=t;break;case 2:r-=n;break;default:i-=t}return[r,i]}}function Pie(e){for(var t=[],n=-1;++n<e;)t[n]=0;return t}function KT(e){return typeof e==`function`?e:function(){return e}}var Fie={archimedean:GT,rectangular:Nie},qT=[`x`,`y`,`font`,`fontSize`,`fontStyle`,`fontWeight`,`angle`],Iie=[`text`,`font`,`rotate`,`fontSize`,`fontStyle`,`fontWeight`];function JT(e){L.call(this,Oie(),e)}JT.Definition={type:`Wordcloud`,metadata:{modifies:!0},params:[{name:`size`,type:`number`,array:!0,length:2},{name:`font`,type:`string`,expr:!0,default:`sans-serif`},{name:`fontStyle`,type:`string`,expr:!0,default:`normal`},{name:`fontWeight`,type:`string`,expr:!0,default:`normal`},{name:`fontSize`,type:`number`,expr:!0,default:14},{name:`fontSizeRange`,type:`number`,array:`nullable`,default:[10,50]},{name:`rotate`,type:`number`,expr:!0,default:0},{name:`text`,type:`field`},{name:`spiral`,type:`string`,values:[`archimedean`,`rectangular`]},{name:`padding`,type:`number`,expr:!0},{name:`as`,type:`string`,array:!0,length:7,default:qT}]},F(JT,L,{transform(e,t){e.size&&!(e.size[0]&&e.size[1])&&j(`Wordcloud size dimensions must be non-zero.`);function n(n){let r=e[n];return m(r)&&t.modified(r.fields)}let r=e.modified();if(!(r||t.changed(t.ADD_REM)||Iie.some(n)))return;let i=t.materialize(t.SOURCE).source,a=this.value,o=e.as||qT,s=e.fontSize||14,c;if(m(s)?c=e.fontSizeRange:s=d(s),c){let e=s,t=Cl(`sqrt`)().domain(ur(i,e)).range(c);s=n=>t(e(n))}i.forEach(e=>{e[o[0]]=NaN,e[o[1]]=NaN,e[o[3]]=0});let l=a.words(i).text(e.text).size(e.size||[500,500]).padding(e.padding||1).spiral(e.spiral||`archimedean`).rotate(e.rotate||0).font(e.font||`sans-serif`).fontStyle(e.fontStyle||`normal`).fontWeight(e.fontWeight||`normal`).fontSize(s).random(oa).layout(),u=a.size(),f=u[0]>>1,p=u[1]>>1,h=l.length;for(let e=0,t,n;e<h;++e)t=l[e],n=t.datum,n[o[0]]=t.x+f,n[o[1]]=t.y+p,n[o[2]]=t.font,n[o[3]]=t.size,n[o[4]]=t.style,n[o[5]]=t.weight,n[o[6]]=t.rotate;return t.reflow(r).modifies(o)}});var Lie=t({crossfilter:()=>$T,resolvefilter:()=>eE}),Rie=e=>new Uint8Array(e),zie=e=>new Uint16Array(e),YT=e=>new Uint32Array(e);function Bie(){let e=8,t=[],n=YT(0),r=XT(0,e),i=XT(0,e);return{data:()=>t,seen:()=>n=Vie(n,t.length),add(e){for(let n=0,r=t.length,i=e.length,a;n<i;++n)a=e[n],a._index=r++,t.push(a)},remove(e,n){let a=t.length,o=Array(a-e),s=t,c,l,u;for(l=0;!n[l]&&l<a;++l)o[l]=t[l],s[l]=l;for(u=l;l<a;++l)c=t[l],n[l]?s[l]=-1:(s[l]=u,r[u]=r[l],i[u]=i[l],o[u]=c,c._index=u++),r[l]=0;return t=o,s},size:()=>t.length,curr:()=>r,prev:()=>i,reset:e=>i[e]=r[e],all:()=>e<257?255:e<65537?65535:4294967295,set(e,t){r[e]|=t},clear(e,t){r[e]&=~t},resize(t,n){(t>r.length||n>e)&&(e=Math.max(n,e),r=XT(t,e,r),i=XT(t,e))}}}function Vie(e,t,n){return e.length>=t?e:(n||=new e.constructor(t),n.set(e),n)}function XT(e,t,n){let r=(t<257?Rie:t<65537?zie:YT)(e);return n&&r.set(n),r}function ZT(e,t,n){let r=1<<t;return{one:r,zero:~r,range:n.slice(),bisect:e.bisect,index:e.index,size:e.size,onAdd(e,t){let n=this,i=n.bisect(n.range,e.value),a=e.index,o=i[0],s=i[1],c=a.length,l;for(l=0;l<o;++l)t[a[l]]|=r;for(l=s;l<c;++l)t[a[l]]|=r;return n}}}function QT(){let e=YT(0),t=[],n=0;function r(r,i,a){if(!i.length)return[];let o=n,s=i.length,c=YT(s),l=Array(s),u,d,f;for(f=0;f<s;++f)l[f]=r(i[f]),c[f]=f;if(l=Hie(l,c),o)u=t,d=e,t=Array(o+s),e=YT(o+s),Uie(a,u,d,o,l,c,s,t,e);else{if(a>0)for(f=0;f<s;++f)c[f]+=a;t=l,e=c}return n=o+s,{index:c,value:l}}function i(r,i){let a=n,o,s,c;for(s=0;!i[e[s]]&&s<a;++s);for(c=s;s<a;++s)i[o=e[s]]||(e[c]=o,t[c]=t[s],++c);n=a-r}function a(t){for(let r=0,i=n;r<i;++r)e[r]=t[e[r]]}function o(e,r){let i;return r?i=r.length:(r=t,i=n),[He(r,e[0],0,i),He(r,e[1],0,i)]}return{insert:r,remove:i,bisect:o,reindex:a,index:()=>e,size:()=>n}}function Hie(e,t){return e.sort.call(t,(t,n)=>{let r=e[t],i=e[n];return r<i?-1:+(r>i)}),Or(e,t)}function Uie(e,t,n,r,i,a,o,s,c){let l=0,u=0,d;for(d=0;l<r&&u<o;++d)t[l]<i[u]?(s[d]=t[l],c[d]=n[l++]):(s[d]=i[u],c[d]=a[u++]+e);for(;l<r;++l,++d)s[d]=t[l],c[d]=n[l];for(;u<o;++u,++d)s[d]=i[u],c[d]=a[u]+e}function $T(e){L.call(this,Bie(),e),this._indices=null,this._dims=null}$T.Definition={type:`CrossFilter`,metadata:{},params:[{name:`fields`,type:`field`,array:!0,required:!0},{name:`query`,type:`array`,array:!0,required:!0,content:{type:`number`,array:!0,length:2}}]},F($T,L,{transform(e,t){return this._dims?e.modified(`fields`)||e.fields.some(e=>t.modified(e.fields))?this.reinit(e,t):this.eval(e,t):this.init(e,t)},init(e,t){let n=e.fields,r=e.query,i=this._indices={},a=this._dims=[],o=r.length,s=0,c,l;for(;s<o;++s)c=n[s].fname,l=i[c]||(i[c]=QT()),a.push(ZT(l,s,r[s]));return this.eval(e,t)},reinit(e,t){let n=t.materialize().fork(),r=e.fields,i=e.query,a=this._indices,o=this._dims,s=this.value,c=s.curr(),l=s.prev(),u=s.all(),d=n.rem=n.add,f=n.mod,p=i.length,m={},h,g,_,v,y,b,x,S,C;if(l.set(c),t.rem.length&&(y=this.remove(e,t,n)),t.add.length&&s.add(t.add),t.mod.length)for(b={},v=t.mod,x=0,S=v.length;x<S;++x)b[v[x]._index]=1;for(x=0;x<p;++x)C=r[x],(!o[x]||e.modified(`fields`,x)||t.modified(C.fields))&&(_=C.fname,(h=m[_])||(a[_]=g=QT(),m[_]=h=g.insert(C,t.source,0)),o[x]=ZT(g,x,i[x]).onAdd(h,c));for(x=0,S=s.data().length;x<S;++x)if(y[x])continue;else l[x]===c[x]?b[x]&&c[x]!==u&&f.push(x):d.push(x);return s.mask=(1<<p)-1,n},eval(e,t){let n=t.materialize().fork(),r=this._dims.length,i=0;return t.rem.length&&(this.remove(e,t,n),i|=(1<<r)-1),e.modified(`query`)&&!e.modified(`fields`)&&(i|=this.update(e,t,n)),t.add.length&&(this.insert(e,t,n),i|=(1<<r)-1),t.mod.length&&(this.modify(t,n),i|=(1<<r)-1),this.value.mask=i,n},insert(e,t,n){let r=t.add,i=this.value,a=this._dims,o=this._indices,s=e.fields,c={},l=n.add,u=i.size()+r.length,d=a.length,f=i.size(),p,m,h;i.resize(u,d),i.add(r);let g=i.curr(),_=i.prev(),v=i.all();for(p=0;p<d;++p)m=s[p].fname,h=c[m]||(c[m]=o[m].insert(s[p],r,f)),a[p].onAdd(h,g);for(;f<u;++f)_[f]=v,g[f]!==v&&l.push(f)},modify(e,t){let n=t.mod,r=this.value,i=r.curr(),a=r.all(),o=e.mod,s,c,l;for(s=0,c=o.length;s<c;++s)l=o[s]._index,i[l]!==a&&n.push(l)},remove(e,t,n){let r=this._indices,i=this.value,a=i.curr(),o=i.prev(),s=i.all(),c={},l=n.rem,u=t.rem,d,f,p,m;for(d=0,f=u.length;d<f;++d)p=u[d]._index,c[p]=1,o[p]=m=a[p],a[p]=s,m!==s&&l.push(p);for(p in r)r[p].remove(f,c);return this.reindex(t,f,c),c},reindex(e,t,n){let r=this._indices,i=this.value;e.runAfter(()=>{let e=i.remove(t,n);for(let t in r)r[t].reindex(e)})},update(e,t,n){let r=this._dims,i=e.query,a=t.stamp,o=r.length,s=0,c,l;for(n.filters=0,l=0;l<o;++l)e.modified(`query`,l)&&(c=l,++s);if(s===1)s=r[c].one,this.incrementOne(r[c],i[c],n.add,n.rem);else for(l=0,s=0;l<o;++l)e.modified(`query`,l)&&(s|=r[l].one,this.incrementAll(r[l],i[l],a,n.add),n.rem=n.add);return s},incrementAll(e,t,n,r){let i=this.value,a=i.seen(),o=i.curr(),s=i.prev(),c=e.index(),l=e.bisect(e.range),u=e.bisect(t),d=u[0],f=u[1],p=l[0],m=l[1],h=e.one,g,_,v;if(d<p)for(g=d,_=Math.min(p,f);g<_;++g)v=c[g],a[v]!==n&&(s[v]=o[v],a[v]=n,r.push(v)),o[v]^=h;else if(d>p)for(g=p,_=Math.min(d,m);g<_;++g)v=c[g],a[v]!==n&&(s[v]=o[v],a[v]=n,r.push(v)),o[v]^=h;if(f>m)for(g=Math.max(d,m),_=f;g<_;++g)v=c[g],a[v]!==n&&(s[v]=o[v],a[v]=n,r.push(v)),o[v]^=h;else if(f<m)for(g=Math.max(p,f),_=m;g<_;++g)v=c[g],a[v]!==n&&(s[v]=o[v],a[v]=n,r.push(v)),o[v]^=h;e.range=t.slice()},incrementOne(e,t,n,r){let i=this.value.curr(),a=e.index(),o=e.bisect(e.range),s=e.bisect(t),c=s[0],l=s[1],u=o[0],d=o[1],f=e.one,p,m,h;if(c<u)for(p=c,m=Math.min(u,l);p<m;++p)h=a[p],i[h]^=f,n.push(h);else if(c>u)for(p=u,m=Math.min(c,d);p<m;++p)h=a[p],i[h]^=f,r.push(h);if(l>d)for(p=Math.max(c,d),m=l;p<m;++p)h=a[p],i[h]^=f,n.push(h);else if(l<d)for(p=Math.max(u,l),m=d;p<m;++p)h=a[p],i[h]^=f,r.push(h);e.range=t.slice()}});function eE(e){L.call(this,null,e)}eE.Definition={type:`ResolveFilter`,metadata:{},params:[{name:`ignore`,type:`number`,required:!0,description:`A bit mask indicating which filters to ignore.`},{name:`filter`,type:`object`,required:!0,description:`Per-tuple filter bitmaps from a CrossFilter transform.`}]},F(eE,L,{transform(e,t){let n=~(e.ignore||0),r=e.filter,i=r.mask;if((i&n)===0)return t.StopPropagation;let a=t.fork(t.ALL),o=r.data(),s=r.curr(),c=r.prev(),l=e=>s[e]&n?null:o[e];return a.filter(a.MOD,l),i&i-1?(a.filter(a.ADD,e=>{let t=s[e]&n;return!t&&t^c[e]&n?o[e]:null}),a.filter(a.REM,e=>{let t=s[e]&n;return t&&!(t^(t^c[e]&n))?o[e]:null})):(a.filter(a.ADD,l),a.filter(a.REM,e=>(s[e]&n)===i?o[e]:null)),a.filter(a.SOURCE,e=>l(e._index))}});var tE=`year`,nE=`quarter`,rE=`month`,iE=`week`,aE=`date`,oE=`dayofyear`,sE=`hours`,cE=`minutes`,lE=`seconds`,uE=`milliseconds`,dE=[tE,nE,rE,iE,aE,`day`,oE,sE,cE,lE,uE],fE=dE.reduce((e,t,n)=>(e[t]=1+n,e),{});function pE(e){let t=k(e).slice(),n={};return t.length||j(`Missing time unit.`),t.forEach(e=>{T(fE,e)?n[e]=1:j(`Invalid time unit: ${e}.`)}),(n.week||n.day?1:0)+(n.quarter||n.month||n.date?1:0)+ +!!n.dayofyear>1&&j(`Incompatible time units: ${e}`),t.sort((e,t)=>fE[e]-fE[t]),t}var Wie={[tE]:`%Y `,[nE]:`Q%q `,[rE]:`%b `,[aE]:`%d `,[iE]:`W%U `,day:`%a `,[oE]:`%j `,[sE]:`%H:00`,[cE]:`00:%M`,[lE]:`:%S`,[uE]:`.%L`,[`${tE}-${rE}`]:`%Y-%m `,[`${tE}-${rE}-${aE}`]:`%Y-%m-%d `,[`${sE}-${cE}`]:`%H:%M`};function Gie(e,t){let n=D({},Wie,t),r=pE(e),i=r.length,a=``,o=0,s,c;for(o=0;o<i;)for(s=r.length;s>o;--s)if(c=r.slice(o,s).join(`-`),n[c]!=null){a+=n[c],o=s;break}return a.trim()}var mE=new Date;function hE(e){return mE.setFullYear(e),mE.setMonth(0),mE.setDate(1),mE.setHours(0,0,0,0),mE}function Kie(e){return gE(new Date(e))}function qie(e){return _E(new Date(e))}function gE(e){return St.count(hE(e.getFullYear())-1,e)}function _E(e){return gt.count(hE(e.getFullYear())-1,e)}function vE(e){return hE(e).getDay()}function Jie(e,t,n,r,i,a,o){if(0<=e&&e<100){let s=new Date(-1,t,n,r,i,a,o);return s.setFullYear(e),s}return new Date(e,t,n,r,i,a,o)}function Yie(e){return yE(new Date(e))}function Xie(e){return bE(new Date(e))}function yE(e){let t=Date.UTC(e.getUTCFullYear(),0,1);return xt.count(t-1,e)}function bE(e){let t=Date.UTC(e.getUTCFullYear(),0,1);return yt.count(t-1,e)}function xE(e){return mE.setTime(Date.UTC(e,0,1)),mE.getUTCDay()}function Zie(e,t,n,r,i,a,o){if(0<=e&&e<100){let e=new Date(Date.UTC(-1,t,n,r,i,a,o));return e.setUTCFullYear(n.y),e}return new Date(Date.UTC(e,t,n,r,i,a,o))}function SE(e,t,n,r,i){let a=t||1,o=A(e),s=(e,t,i)=>(i||=e,Qie(n[i],r[i],e===o&&a,t)),c=new Date,l=_(e),u=l.year?s(tE):d(2012),f=l.month?s(rE):l.quarter?s(nE):ae,p=l.week&&l.day?s(`day`,1,iE+`day`):l.week?s(iE,1):l.day?s(`day`,1):l.date?s(aE,1):l.dayofyear?s(oE,1):Se,m=l.hours?s(sE):ae,h=l.minutes?s(cE):ae,g=l.seconds?s(lE):ae,v=l.milliseconds?s(uE):ae;return function(e){c.setTime(+e);let t=u(c);return i(t,f(c),p(c,t),m(c),h(c),g(c),v(c))}}function Qie(e,t,n,r){let i=n<=1?e:r?(t,i)=>r+n*Math.floor((e(t,i)-r)/n):(t,r)=>n*Math.floor(e(t,r)/n);return t?(e,n)=>t(i(e,n),n):i}function CE(e,t,n){return t+e*7-(n+6)%7}var $ie={[tE]:e=>e.getFullYear(),[nE]:e=>Math.floor(e.getMonth()/3),[rE]:e=>e.getMonth(),[aE]:e=>e.getDate(),[sE]:e=>e.getHours(),[cE]:e=>e.getMinutes(),[lE]:e=>e.getSeconds(),[uE]:e=>e.getMilliseconds(),[oE]:e=>gE(e),[iE]:e=>_E(e),[iE+`day`]:(e,t)=>CE(_E(e),e.getDay(),vE(t)),day:(e,t)=>CE(1,e.getDay(),vE(t))},wE={[nE]:e=>3*e,[iE]:(e,t)=>CE(e,0,vE(t))};function TE(e,t){return SE(e,t||1,$ie,wE,Jie)}var EE={[tE]:e=>e.getUTCFullYear(),[nE]:e=>Math.floor(e.getUTCMonth()/3),[rE]:e=>e.getUTCMonth(),[aE]:e=>e.getUTCDate(),[sE]:e=>e.getUTCHours(),[cE]:e=>e.getUTCMinutes(),[lE]:e=>e.getUTCSeconds(),[uE]:e=>e.getUTCMilliseconds(),[oE]:e=>yE(e),[iE]:e=>bE(e),day:(e,t)=>CE(1,e.getUTCDay(),xE(t)),[iE+`day`]:(e,t)=>CE(bE(e),e.getUTCDay(),xE(t))},DE={[nE]:e=>3*e,[iE]:(e,t)=>CE(e,0,xE(t))};function OE(e,t){return SE(e,t||1,EE,DE,Zie)}var kE={[tE]:ht,[nE]:pt.every(3),[rE]:pt,[iE]:gt,[aE]:St,day:St,[oE]:St,[sE]:mee,[cE]:bt,[lE]:ut,[uE]:dt},AE={[tE]:vt,[nE]:mt.every(3),[rE]:mt,[iE]:yt,[aE]:xt,day:xt,[oE]:xt,[sE]:lt,[cE]:ft,[lE]:ut,[uE]:dt};function jE(e){return kE[e]}function ME(e){return AE[e]}function NE(e,t,n){return e?e.offset(t,n):void 0}function PE(e,t,n){return NE(jE(e),t,n)}function FE(e,t,n){return NE(ME(e),t,n)}function IE(e,t,n,r){return e?e.range(t,n,r):void 0}function LE(e,t,n,r){return IE(jE(e),t,n,r)}function RE(e,t,n,r){return IE(ME(e),t,n,r)}var zE=1e3,BE=zE*60,VE=BE*60,HE=VE*24,UE=HE*7,WE=HE*30,GE=HE*365,KE=[tE,rE,aE,sE,cE,lE,uE],qE=KE.slice(0,-1),JE=qE.slice(0,-1),YE=JE.slice(0,-1),XE=YE.slice(0,-1),ZE=[tE,iE],QE=[tE,rE],$E=[tE],eD=[[qE,1,zE],[qE,5,5*zE],[qE,15,15*zE],[qE,30,30*zE],[JE,1,BE],[JE,5,5*BE],[JE,15,15*BE],[JE,30,30*BE],[YE,1,VE],[YE,3,3*VE],[YE,6,6*VE],[YE,12,12*VE],[XE,1,HE],[ZE,1,UE],[QE,1,WE],[QE,3,3*WE],[$E,1,GE]];function tD(e){let t=e.extent,n=e.maxbins||40,r=Math.abs(g(t))/n,i=Le(e=>e[2]).right(eD,r),a,o;return i===eD.length?(a=$E,o=Pe(t[0]/GE,t[1]/GE,n)):i?(i=eD[r/eD[i-1][2]<eD[i][2]/r?i-1:i],a=i[0],o=i[1]):(a=KE,o=Math.max(Pe(t[0],t[1],n),1)),{units:a,step:o}}var nD=0;function rD(){nD=0}var iD=`p_`;function aD(e){return e&&e.gradient}function oD(e,t,n){let r=e.gradient,i=e.id,a=r===`radial`?iD:``;return i||(i=e.id=`gradient_`+nD++,r===`radial`?(e.x1=sD(e.x1,.5),e.y1=sD(e.y1,.5),e.r1=sD(e.r1,0),e.x2=sD(e.x2,.5),e.y2=sD(e.y2,.5),e.r2=sD(e.r2,.5),a=iD):(e.x1=sD(e.x1,0),e.y1=sD(e.y1,0),e.x2=sD(e.x2,1),e.y2=sD(e.y2,0))),t[i]=e,`url(`+(n||``)+`#`+a+i+`)`}function sD(e,t){return e??t}function cD(e,t){var n=[],r;return r={gradient:`linear`,x1:e?e[0]:0,y1:e?e[1]:0,x2:t?t[0]:1,y2:t?t[1]:0,stops:n,stop:function(e,t){return n.push({offset:e,color:t}),r}}}var lD={basis:{curve:jt},"basis-closed":{curve:It},"basis-open":{curve:Lt},bundle:{curve:Bt,tension:`beta`,value:.85},cardinal:{curve:Ut,tension:`tension`,value:0},"cardinal-open":{curve:Pt,tension:`tension`,value:0},"cardinal-closed":{curve:Ft,tension:`tension`,value:0},"catmull-rom":{curve:qt,tension:`alpha`,value:.5},"catmull-rom-closed":{curve:zt,tension:`alpha`,value:.5},"catmull-rom-open":{curve:Nt,tension:`alpha`,value:.5},linear:{curve:Jt},"linear-closed":{curve:Gt},monotone:{horizontal:Ht,vertical:Mt},natural:{curve:Rt},step:{curve:Wt},"step-after":{curve:Kt},"step-before":{curve:Vt}};function uD(e,t,n){var r=T(lD,e)&&lD[e],i=null;return r&&(i=r.curve||r[t||`vertical`],r.tension&&n!=null&&(i=i[r.tension](n))),i}var dD={m:2,l:2,h:1,v:1,z:0,c:6,s:4,q:4,t:2,a:7},fD=/[mlhvzcsqta]([^mlhvzcsqta]+|$)/gi,pD=/^[+-]?(([0-9]*\.[0-9]+)|([0-9]+\.)|([0-9]+))([eE][+-]?[0-9]+)?/,mD=/^((\s+,?\s*)|(,\s*))/,hD=/^[01]/;function gD(e){let t=[];return(e.match(fD)||[]).forEach(e=>{let n=e[0],r=n.toLowerCase(),i=dD[r],a=_D(r,i,e.slice(1).trim()),o=a.length;if(o<i||o&&o%i!==0)throw Error(`Invalid SVG path, incorrect parameter count`);if(t.push([n,...a.slice(0,i)]),o!==i){r===`m`&&(n=n===`M`?`L`:`l`);for(let e=i;e<o;e+=i)t.push([n,...a.slice(e,e+i)])}}),t}function _D(e,t,n){let r=[];for(let i=0;t&&i<n.length;)for(let a=0;a<t;++a){let t=e===`a`&&(a===3||a===4)?hD:pD,o=n.slice(i).match(t);if(o===null)throw Error(`Invalid SVG path, incorrect parameter type`);i+=o[0].length,r.push(+o[0]);let s=n.slice(i).match(mD);s!==null&&(i+=s[0].length)}return r}var vD=Math.PI/180,yD=1e-14,bD=Math.PI/2,xD=Math.PI*2,SD=Math.sqrt(3)/2,CD={},wD={},TD=[].join;function ED(e,t,n,r,i,a,o,s,c){let l=TD.call(arguments);if(CD[l])return CD[l];let u=o*vD,d=Math.sin(u),f=Math.cos(u);n=Math.abs(n),r=Math.abs(r);let p=f*(s-e)*.5+d*(c-t)*.5,m=f*(c-t)*.5-d*(s-e)*.5,h=p*p/(n*n)+m*m/(r*r);h>1&&(h=Math.sqrt(h),n*=h,r*=h);let g=f/n,_=d/n,v=-d/r,y=f/r,b=g*s+_*c,x=v*s+y*c,S=g*e+_*t,C=v*e+y*t,w=1/((S-b)*(S-b)+(C-x)*(C-x))-.25;w<0&&(w=0);let T=Math.sqrt(w);a==i&&(T=-T);let E=.5*(b+S)-T*(C-x),D=.5*(x+C)+T*(S-b),O=Math.atan2(x-D,b-E),k=Math.atan2(C-D,S-E)-O;k<0&&a===1?k+=xD:k>0&&a===0&&(k-=xD);let A=Math.ceil(Math.abs(k/(bD+.001))),ee=[];for(let e=0;e<A;++e){let t=O+e*k/A,i=O+(e+1)*k/A;ee[e]=[E,D,t,i,n,r,d,f]}return CD[l]=ee}function DD(e){let t=TD.call(e);if(wD[t])return wD[t];var n=e[0],r=e[1],i=e[2],a=e[3],o=e[4],s=e[5],c=e[6],l=e[7];let u=l*o,d=-c*s,f=c*o,p=l*s,m=Math.cos(i),h=Math.sin(i),g=Math.cos(a),_=Math.sin(a),v=.5*(a-i),y=Math.sin(v*.5),b=8/3*y*y/Math.sin(v),x=n+m-b*h,S=r+h+b*m,C=n+g,w=r+_,T=C+b*_,E=w-b*g;return wD[t]=[u*x+d*S,f*x+p*S,u*T+d*E,f*T+p*E,u*C+d*w,f*C+p*w]}var OD=[`l`,0,0,0,0,0,0,0];function kD(e,t,n){let r=OD[0]=e[0];if(r===`a`||r===`A`)OD[1]=t*e[1],OD[2]=n*e[2],OD[3]=e[3],OD[4]=e[4],OD[5]=e[5],OD[6]=t*e[6],OD[7]=n*e[7];else if(r===`h`||r===`H`)OD[1]=t*e[1];else if(r===`v`||r===`V`)OD[1]=n*e[1];else for(var i=1,a=e.length;i<a;++i)OD[i]=(i%2==1?t:n)*e[i];return OD}function AD(e,t,n,r,i,a){var o,s=null,c=0,l=0,u=0,d=0,f,p,m,h,g=0,_=0;n??=0,r??=0,i??=1,a??=i,e.beginPath&&e.beginPath();for(var v=0,y=t.length;v<y;++v){switch(o=t[v],(i!==1||a!==1)&&(o=kD(o,i,a)),o[0]){case`l`:c+=o[1],l+=o[2],e.lineTo(c+n,l+r);break;case`L`:c=o[1],l=o[2],e.lineTo(c+n,l+r);break;case`h`:c+=o[1],e.lineTo(c+n,l+r);break;case`H`:c=o[1],e.lineTo(c+n,l+r);break;case`v`:l+=o[1],e.lineTo(c+n,l+r);break;case`V`:l=o[1],e.lineTo(c+n,l+r);break;case`m`:c+=o[1],l+=o[2],g=c,_=l,e.moveTo(c+n,l+r);break;case`M`:c=o[1],l=o[2],g=c,_=l,e.moveTo(c+n,l+r);break;case`c`:f=c+o[5],p=l+o[6],u=c+o[3],d=l+o[4],e.bezierCurveTo(c+o[1]+n,l+o[2]+r,u+n,d+r,f+n,p+r),c=f,l=p;break;case`C`:c=o[5],l=o[6],u=o[3],d=o[4],e.bezierCurveTo(o[1]+n,o[2]+r,u+n,d+r,c+n,l+r);break;case`s`:f=c+o[3],p=l+o[4],u=2*c-u,d=2*l-d,e.bezierCurveTo(u+n,d+r,c+o[1]+n,l+o[2]+r,f+n,p+r),u=c+o[1],d=l+o[2],c=f,l=p;break;case`S`:f=o[3],p=o[4],u=2*c-u,d=2*l-d,e.bezierCurveTo(u+n,d+r,o[1]+n,o[2]+r,f+n,p+r),c=f,l=p,u=o[1],d=o[2];break;case`q`:f=c+o[3],p=l+o[4],u=c+o[1],d=l+o[2],e.quadraticCurveTo(u+n,d+r,f+n,p+r),c=f,l=p;break;case`Q`:f=o[3],p=o[4],e.quadraticCurveTo(o[1]+n,o[2]+r,f+n,p+r),c=f,l=p,u=o[1],d=o[2];break;case`t`:f=c+o[1],p=l+o[2],s[0].match(/[QqTt]/)===null?(u=c,d=l):s[0]===`t`?(u=2*c-m,d=2*l-h):s[0]===`q`&&(u=2*c-u,d=2*l-d),m=u,h=d,e.quadraticCurveTo(u+n,d+r,f+n,p+r),c=f,l=p,u=c+o[1],d=l+o[2];break;case`T`:f=o[1],p=o[2],u=2*c-u,d=2*l-d,e.quadraticCurveTo(u+n,d+r,f+n,p+r),c=f,l=p;break;case`a`:jD(e,c+n,l+r,[o[1],o[2],o[3],o[4],o[5],o[6]+c+n,o[7]+l+r]),c+=o[6],l+=o[7];break;case`A`:jD(e,c+n,l+r,[o[1],o[2],o[3],o[4],o[5],o[6]+n,o[7]+r]),c=o[6],l=o[7];break;case`z`:case`Z`:c=g,l=_,e.closePath()}s=o}}function jD(e,t,n,r){let i=ED(r[5],r[6],r[0],r[1],r[3],r[4],r[2],t,n);for(let t=0;t<i.length;++t){let n=DD(i[t]);e.bezierCurveTo(n[0],n[1],n[2],n[3],n[4],n[5])}}var MD=.5773502691896257,ND={circle:{draw:function(e,t){let n=Math.sqrt(t)/2;e.moveTo(n,0),e.arc(0,0,n,0,xD)}},cross:{draw:function(e,t){var n=Math.sqrt(t)/2,r=n/2.5;e.moveTo(-n,-r),e.lineTo(-n,r),e.lineTo(-r,r),e.lineTo(-r,n),e.lineTo(r,n),e.lineTo(r,r),e.lineTo(n,r),e.lineTo(n,-r),e.lineTo(r,-r),e.lineTo(r,-n),e.lineTo(-r,-n),e.lineTo(-r,-r),e.closePath()}},diamond:{draw:function(e,t){let n=Math.sqrt(t)/2;e.moveTo(-n,0),e.lineTo(0,-n),e.lineTo(n,0),e.lineTo(0,n),e.closePath()}},square:{draw:function(e,t){var n=Math.sqrt(t),r=-n/2;e.rect(r,r,n,n)}},arrow:{draw:function(e,t){var n=Math.sqrt(t)/2,r=n/7,i=n/2.5,a=n/8;e.moveTo(-r,n),e.lineTo(r,n),e.lineTo(r,-a),e.lineTo(i,-a),e.lineTo(0,-n),e.lineTo(-i,-a),e.lineTo(-r,-a),e.closePath()}},wedge:{draw:function(e,t){var n=Math.sqrt(t)/2,r=SD*n,i=r-n*MD,a=n/4;e.moveTo(0,-r-i),e.lineTo(-a,r-i),e.lineTo(a,r-i),e.closePath()}},triangle:{draw:function(e,t){var n=Math.sqrt(t)/2,r=SD*n,i=r-n*MD;e.moveTo(0,-r-i),e.lineTo(-n,r-i),e.lineTo(n,r-i),e.closePath()}},"triangle-up":{draw:function(e,t){var n=Math.sqrt(t)/2,r=SD*n;e.moveTo(0,-r),e.lineTo(-n,r),e.lineTo(n,r),e.closePath()}},"triangle-down":{draw:function(e,t){var n=Math.sqrt(t)/2,r=SD*n;e.moveTo(0,r),e.lineTo(-n,-r),e.lineTo(n,-r),e.closePath()}},"triangle-right":{draw:function(e,t){var n=Math.sqrt(t)/2,r=SD*n;e.moveTo(r,0),e.lineTo(-r,-n),e.lineTo(-r,n),e.closePath()}},"triangle-left":{draw:function(e,t){var n=Math.sqrt(t)/2,r=SD*n;e.moveTo(-r,0),e.lineTo(r,-n),e.lineTo(r,n),e.closePath()}},stroke:{draw:function(e,t){let n=Math.sqrt(t)/2;e.moveTo(-n,0),e.lineTo(n,0)}}};function PD(e){return T(ND,e)?ND[e]:ID(e)}var FD={};function ID(e){if(!T(FD,e)){let t=gD(e);FD[e]={draw:function(e,n){AD(e,t,0,0,Math.sqrt(n)/2)}}}return FD[e]}var LD=.448084975506;function RD(e){return e.x}function zD(e){return e.y}function BD(e){return e.width}function VD(e){return e.height}function HD(e){return typeof e==`function`?e:()=>+e}function UD(e,t,n){return Math.max(t,Math.min(e,n))}function WD(){var e=RD,t=zD,n=BD,r=VD,i=HD(0),a=i,o=i,s=i,c=null;function l(l,u,d){var f,p=u??+e.call(this,l),m=d??+t.call(this,l),h=+n.call(this,l),g=+r.call(this,l),_=Math.min(h,g)/2,v=UD(+i.call(this,l),0,_),y=UD(+a.call(this,l),0,_),b=UD(+o.call(this,l),0,_),x=UD(+s.call(this,l),0,_);if(c||=f=Ct(),v<=0&&y<=0&&b<=0&&x<=0)c.rect(p,m,h,g);else{var S=p+h,C=m+g;c.moveTo(p+v,m),c.lineTo(S-y,m),c.bezierCurveTo(S-LD*y,m,S,m+LD*y,S,m+y),c.lineTo(S,C-x),c.bezierCurveTo(S,C-LD*x,S-LD*x,C,S-x,C),c.lineTo(p+b,C),c.bezierCurveTo(p+LD*b,C,p,C-LD*b,p,C-b),c.lineTo(p,m+v),c.bezierCurveTo(p,m+LD*v,p+LD*v,m,p+v,m),c.closePath()}if(f)return c=null,f+``||null}return l.x=function(t){return arguments.length?(e=HD(t),l):e},l.y=function(e){return arguments.length?(t=HD(e),l):t},l.width=function(e){return arguments.length?(n=HD(e),l):n},l.height=function(e){return arguments.length?(r=HD(e),l):r},l.cornerRadius=function(e,t,n,r){return arguments.length?(i=HD(e),a=t==null?i:HD(t),s=n==null?i:HD(n),o=r==null?a:HD(r),l):i},l.context=function(e){return arguments.length?(c=e??null,l):c},l}function GD(){var e,t,n,r,i=null,a,o,s,c;function l(e,t,n){let r=n/2;if(a){var l=s-t,u=e-o;if(l||u){var d=Math.hypot(l,u),f=(l/=d)*c,p=(u/=d)*c,m=Math.atan2(u,l);i.moveTo(o-f,s-p),i.lineTo(e-l*r,t-u*r),i.arc(e,t,r,m-Math.PI,m),i.lineTo(o+f,s+p),i.arc(o,s,c,m,m+Math.PI)}else i.arc(e,t,r,0,xD);i.closePath()}else a=1;o=e,s=t,c=r}function u(o){var s,c=o.length,u,d=!1,f;for(i??=f=Ct(),s=0;s<=c;++s)!(s<c&&r(u=o[s],s,o))===d&&(d=!d)&&(a=0),d&&l(+e(u,s,o),+t(u,s,o),+n(u,s,o));if(f)return i=null,f+``||null}return u.x=function(t){return arguments.length?(e=t,u):e},u.y=function(e){return arguments.length?(t=e,u):t},u.size=function(e){return arguments.length?(n=e,u):n},u.defined=function(e){return arguments.length?(r=e,u):r},u.context=function(e){return arguments.length?(i=e??null,u):i},u}function KD(e,t){return e??t}var qD=e=>e.x||0,JD=e=>e.y||0,YD=e=>e.width||0,XD=e=>e.height||0,ZD=e=>(e.x||0)+(e.width||0),QD=e=>(e.y||0)+(e.height||0),$D=e=>e.startAngle||0,eO=e=>e.endAngle||0,tO=e=>e.padAngle||0,nO=e=>e.innerRadius||0,rO=e=>e.outerRadius||0,iO=e=>e.cornerRadius||0,aO=e=>KD(e.cornerRadiusTopLeft,e.cornerRadius)||0,oO=e=>KD(e.cornerRadiusTopRight,e.cornerRadius)||0,sO=e=>KD(e.cornerRadiusBottomRight,e.cornerRadius)||0,cO=e=>KD(e.cornerRadiusBottomLeft,e.cornerRadius)||0,lO=e=>KD(e.size,64),uO=e=>e.size||1,dO=e=>e.defined!==!1,fO=e=>PD(e.shape||`circle`),pO=kt().startAngle($D).endAngle(eO).padAngle(tO).innerRadius(nO).outerRadius(rO).cornerRadius(iO),mO=Ks().x(qD).y1(JD).y0(QD).defined(dO),hO=Ks().y(JD).x1(qD).x0(ZD).defined(dO),gO=Yt().x(qD).y(JD).defined(dO),_O=WD().x(qD).y(JD).width(YD).height(XD).cornerRadius(aO,oO,sO,cO),vO=qs().type(fO).size(lO),yO=GD().x(qD).y(JD).defined(dO).size(uO);function bO(e){return e.cornerRadius||e.cornerRadiusTopLeft||e.cornerRadiusTopRight||e.cornerRadiusBottomRight||e.cornerRadiusBottomLeft}function xO(e,t){return pO.context(e)(t)}function SO(e,t){let n=t[0],r=n.interpolate||`linear`;return(n.orient===`horizontal`?hO:mO).curve(uD(r,n.orient,n.tension)).context(e)(t)}function CO(e,t){let n=t[0],r=n.interpolate||`linear`;return gO.curve(uD(r,n.orient,n.tension)).context(e)(t)}function wO(e,t,n,r){return _O.context(e)(t,n,r)}function TO(e,t){return(t.mark.shape||t.shape).context(e)(t)}function EO(e,t){return vO.context(e)(t)}function DO(e,t){return yO.context(e)(t)}var OO=1;function kO(){OO=1}function AO(e,t,n){var r=t.clip,i=e._defs,a=t.clip_id||=`clip`+OO++,o=i.clipping[a]||(i.clipping[a]={id:a});return m(r)?o.path=r(null):bO(n)?o.path=wO(null,n,0,0):(o.width=n.width||0,o.height=n.height||0),`url(#`+a+`)`}function jO(e){this.clear(),e&&this.union(e)}jO.prototype={clone(){return new jO(this)},clear(){return this.x1=+Number.MAX_VALUE,this.y1=+Number.MAX_VALUE,this.x2=-Number.MAX_VALUE,this.y2=-Number.MAX_VALUE,this},empty(){return this.x1===+Number.MAX_VALUE&&this.y1===+Number.MAX_VALUE&&this.x2===-Number.MAX_VALUE&&this.y2===-Number.MAX_VALUE},equals(e){return this.x1===e.x1&&this.y1===e.y1&&this.x2===e.x2&&this.y2===e.y2},set(e,t,n,r){return n<e?(this.x2=e,this.x1=n):(this.x1=e,this.x2=n),r<t?(this.y2=t,this.y1=r):(this.y1=t,this.y2=r),this},add(e,t){return e<this.x1&&(this.x1=e),t<this.y1&&(this.y1=t),e>this.x2&&(this.x2=e),t>this.y2&&(this.y2=t),this},expand(e){return this.x1-=e,this.y1-=e,this.x2+=e,this.y2+=e,this},round(){return this.x1=Math.floor(this.x1),this.y1=Math.floor(this.y1),this.x2=Math.ceil(this.x2),this.y2=Math.ceil(this.y2),this},scale(e){return this.x1*=e,this.y1*=e,this.x2*=e,this.y2*=e,this},translate(e,t){return this.x1+=e,this.x2+=e,this.y1+=t,this.y2+=t,this},rotate(e,t,n){let r=this.rotatedPoints(e,t,n);return this.clear().add(r[0],r[1]).add(r[2],r[3]).add(r[4],r[5]).add(r[6],r[7])},rotatedPoints(e,t,n){var{x1:r,y1:i,x2:a,y2:o}=this,s=Math.cos(e),c=Math.sin(e),l=t-t*s+n*c,u=n-t*c-n*s;return[s*r-c*i+l,c*r+s*i+u,s*r-c*o+l,c*r+s*o+u,s*a-c*i+l,c*a+s*i+u,s*a-c*o+l,c*a+s*o+u]},union(e){return e.x1<this.x1&&(this.x1=e.x1),e.y1<this.y1&&(this.y1=e.y1),e.x2>this.x2&&(this.x2=e.x2),e.y2>this.y2&&(this.y2=e.y2),this},intersect(e){return e.x1>this.x1&&(this.x1=e.x1),e.y1>this.y1&&(this.y1=e.y1),e.x2<this.x2&&(this.x2=e.x2),e.y2<this.y2&&(this.y2=e.y2),this},encloses(e){return e&&this.x1<=e.x1&&this.x2>=e.x2&&this.y1<=e.y1&&this.y2>=e.y2},alignsWith(e){return e&&(this.x1==e.x1||this.x2==e.x2||this.y1==e.y1||this.y2==e.y2)},intersects(e){return e&&!(this.x2<e.x1||this.x1>e.x2||this.y2<e.y1||this.y1>e.y2)},contains(e,t){return!(e<this.x1||e>this.x2||t<this.y1||t>this.y2)},width(){return this.x2-this.x1},height(){return this.y2-this.y1}};function MO(e){this.mark=e,this.bounds=this.bounds||new jO}function NO(e){MO.call(this,e),this.items=this.items||[]}F(NO,MO);var PO=class{constructor(e){this._pending=0,this._loader=e||te()}pending(){return this._pending}sanitizeURL(e){let t=this;return FO(t),t._loader.sanitize(e,{context:`href`}).then(e=>(IO(t),e)).catch(()=>(IO(t),null))}loadImage(e){let t=this,n=Ys();return FO(t),t._loader.sanitize(e,{context:`image`}).then(e=>{let r=e.href;if(!r||!n)throw{url:r};let i=new n,a=T(e,`crossOrigin`)?e.crossOrigin:`anonymous`;return a!=null&&(i.crossOrigin=a),i.onload=()=>IO(t),i.onerror=()=>IO(t),i.src=r,i}).catch(e=>(IO(t),{complete:!1,width:0,height:0,src:e&&e.url||``}))}ready(){let e=this;return new Promise(t=>{function n(r){e.pending()?setTimeout(()=>{n(!0)},10):t(r)}n(!1)})}};function FO(e){e._pending+=1}function IO(e){--e._pending}function LO(e,t,n){if(t.stroke&&t.opacity!==0&&t.strokeOpacity!==0){let r=t.strokeWidth==null?1:+t.strokeWidth;e.expand(r+(n?RO(t,r):0))}return e}function RO(e,t){return e.strokeJoin&&e.strokeJoin!==`miter`?0:t}var zO=xD-1e-8,BO,VO,HO,UO,WO,GO,KO,qO,JO=(e,t)=>BO.add(e,t),YO=(e,t)=>JO(VO=e,HO=t),XO=e=>JO(e,BO.y1),ZO=e=>JO(BO.x1,e),QO=(e,t)=>WO*e+KO*t,$O=(e,t)=>GO*e+qO*t,ek=(e,t)=>JO(QO(e,t),$O(e,t)),tk=(e,t)=>YO(QO(e,t),$O(e,t));function nk(e,t){return BO=e,t?(UO=t*vD,WO=qO=Math.cos(UO),GO=Math.sin(UO),KO=-GO):(WO=qO=1,UO=GO=KO=0),rk}var rk={beginPath(){},closePath(){},moveTo:tk,lineTo:tk,rect(e,t,n,r){UO?(ek(e+n,t),ek(e+n,t+r),ek(e,t+r),tk(e,t)):(JO(e+n,t+r),YO(e,t))},quadraticCurveTo(e,t,n,r){let i=QO(e,t),a=$O(e,t),o=QO(n,r),s=$O(n,r);ik(VO,i,o,XO),ik(HO,a,s,ZO),YO(o,s)},bezierCurveTo(e,t,n,r,i,a){let o=QO(e,t),s=$O(e,t),c=QO(n,r),l=$O(n,r),u=QO(i,a),d=$O(i,a);ak(VO,o,c,u,XO),ak(HO,s,l,d,ZO),YO(u,d)},arc(e,t,n,r,i,a){if(r+=UO,i+=UO,VO=n*Math.cos(i)+e,HO=n*Math.sin(i)+t,Math.abs(i-r)>zO)JO(e-n,t-n),JO(e+n,t+n);else{let o=r=>JO(n*Math.cos(r)+e,n*Math.sin(r)+t),s,c;if(o(r),o(i),i!==r){if(r%=xD,r<0&&(r+=xD),i%=xD,i<0&&(i+=xD),i<r&&(a=!a,s=r,r=i,i=s),a)for(i-=xD,s=r-r%bD,c=0;c<4&&s>i;++c,s-=bD)o(s);else for(s=r-r%bD+bD,c=0;c<4&&s<i;++c,s+=bD)o(s)}}}};function ik(e,t,n,r){let i=(e-t)/(e+n-2*t);0<i&&i<1&&r(e+(t-e)*i)}function ak(e,t,n,r,i){let a=r-e+3*t-3*n,o=e+n-2*t,s=e-t,c=0,l=0,u;Math.abs(a)>yD?(u=o*o+s*a,u>=0&&(u=Math.sqrt(u),c=(-o+u)/a,l=(-o-u)/a)):c=.5*s/o,0<c&&c<1&&i(ok(c,e,t,n,r)),0<l&&l<1&&i(ok(l,e,t,n,r))}function ok(e,t,n,r,i){let a=1-e,o=a*a,s=e*e;return o*a*t+3*o*e*n+3*a*s*r+s*e*i}var sk=(sk=Js(1,1))?sk.getContext(`2d`):null,ck=new jO;function lk(e){return function(t,n){if(!sk)return!0;e(sk,t),ck.clear().union(t.bounds).intersect(n).round();let{x1:r,y1:i,x2:a,y2:o}=ck;for(let e=i;e<=o;++e)for(let t=r;t<=a;++t)if(sk.isPointInPath(t,e))return!0;return!1}}function uk(e,t){return t.contains(e.x||0,e.y||0)}function dk(e,t){let n=e.x||0,r=e.y||0,i=e.width||0,a=e.height||0;return t.intersects(ck.set(n,r,n+i,r+a))}function fk(e,t){let n=e.x||0,r=e.y||0;return pk(t,n,r,e.x2==null?n:e.x2,e.y2==null?r:e.y2)}function pk(e,t,n,r,i){let{x1:a,y1:o,x2:s,y2:c}=e,l=r-t,u=i-n,d=0,f=1,p,m,h,g;for(g=0;g<4;++g){if(g===0&&(p=-l,m=-(a-t)),g===1&&(p=l,m=s-t),g===2&&(p=-u,m=-(o-n)),g===3&&(p=u,m=c-n),Math.abs(p)<1e-10&&m<0)return!1;if(h=m/p,p<0){if(h>f)return!1;h>d&&(d=h)}else if(p>0){if(h<d)return!1;h<f&&(f=h)}}return!0}function mk(e,t){e.globalCompositeOperation=t.blend||`source-over`}function hk(e,t){return e??t}function gk(e,t){let n=t.length;for(let r=0;r<n;++r)e.addColorStop(t[r].offset,t[r].color);return e}function _k(e,t,n){let r=n.width(),i=n.height(),a;if(t.gradient===`radial`)a=e.createRadialGradient(n.x1+hk(t.x1,.5)*r,n.y1+hk(t.y1,.5)*i,Math.max(r,i)*hk(t.r1,0),n.x1+hk(t.x2,.5)*r,n.y1+hk(t.y2,.5)*i,Math.max(r,i)*hk(t.r2,.5));else{let o=hk(t.x1,0),s=hk(t.y1,0),c=hk(t.x2,1),l=hk(t.y2,0);if(o===c||s===l||r===i)a=e.createLinearGradient(n.x1+o*r,n.y1+s*i,n.x1+c*r,n.y1+l*i);else{let n=Js(Math.ceil(r),Math.ceil(i)),a=n.getContext(`2d`);return a.scale(r,i),a.fillStyle=gk(a.createLinearGradient(o,s,c,l),t.stops),a.fillRect(0,0,r,i),e.createPattern(n,`no-repeat`)}}return gk(a,t.stops)}function vk(e,t,n){return aD(n)?_k(e,n,t.bounds):n}function yk(e,t,n){return n*=t.fillOpacity==null?1:t.fillOpacity,n>0&&(e.globalAlpha=n,e.fillStyle=vk(e,t,t.fill),!0)}var bk=[];function xk(e,t,n){var r=(r=t.strokeWidth)??1;return r<=0?!1:(n*=t.strokeOpacity==null?1:t.strokeOpacity,n>0&&(e.globalAlpha=n,e.strokeStyle=vk(e,t,t.stroke),e.lineWidth=r,e.lineCap=t.strokeCap||`butt`,e.lineJoin=t.strokeJoin||`miter`,e.miterLimit=t.strokeMiterLimit||10,e.setLineDash&&(e.setLineDash(t.strokeDash||bk),e.lineDashOffset=t.strokeDashOffset||0),!0))}function Sk(e,t){return e.zindex-t.zindex||e.index-t.index}function Ck(e){if(!e.zdirty)return e.zitems;var t=e.items,n=[],r,i,a;for(i=0,a=t.length;i<a;++i)r=t[i],r.index=i,r.zindex&&n.push(r);return e.zdirty=!1,e.zitems=n.sort(Sk)}function wk(e,t){var n=e.items,r,i;if(!n||!n.length)return;let a=Ck(e);if(a&&a.length){for(r=0,i=n.length;r<i;++r)n[r].zindex||t(n[r]);n=a}for(r=0,i=n.length;r<i;++r)t(n[r])}function Tk(e,t){var n=e.items,r,i;if(!n||!n.length)return null;let a=Ck(e);for(a&&a.length&&(n=a),i=n.length;--i>=0;)if(r=t(n[i]))return r;if(n===a){for(n=e.items,i=n.length;--i>=0;)if(!n[i].zindex&&(r=t(n[i])))return r}return null}function Ek(e){return function(t,n,r){wk(n,n=>{(!r||r.intersects(n.bounds))&&Ok(e,t,n,n)})}}function Dk(e){return function(t,n,r){n.items.length&&(!r||r.intersects(n.bounds))&&Ok(e,t,n.items[0],n.items)}}function Ok(e,t,n,r){var i=n.opacity==null?1:n.opacity;i!==0&&(e(t,r)||(mk(t,n),n.fill&&yk(t,n,i)&&t.fill(),n.stroke&&xk(t,n,i)&&t.stroke()))}function kk(e){return e||=De,function(t,n,r,i,a,o){return r*=t.pixelRatio,i*=t.pixelRatio,Tk(n,n=>{let s=n.bounds;if(!(s&&!s.contains(a,o)||!s)&&e(t,n,r,i,a,o))return n})}}function Ak(e,t){return function(n,r,i,a){var o=Array.isArray(r)?r[0]:r,s=t??o.fill,c=o.stroke&&n.isPointInStroke,l,u;return c&&(l=o.strokeWidth,u=o.strokeCap,n.lineWidth=l??1,n.lineCap=u??`butt`),e(n,r)?!1:s&&n.isPointInPath(i,a)||c&&n.isPointInStroke(i,a)}}function jk(e){return kk(Ak(e))}function Mk(e,t){return`translate(`+e+`,`+t+`)`}function Nk(e){return`rotate(`+e+`)`}function Pk(e,t){return`scale(`+e+`,`+t+`)`}function Fk(e){return Mk(e.x||0,e.y||0)}function Ik(e){return Mk(e.x||0,e.y||0)+(e.angle?` `+Nk(e.angle):``)}function Lk(e){return Mk(e.x||0,e.y||0)+(e.angle?` `+Nk(e.angle):``)+(e.scaleX||e.scaleY?` `+Pk(e.scaleX||1,e.scaleY||1):``)}function Rk(e,t,n){function r(e,n){e(`transform`,Ik(n)),e(`d`,t(null,n))}function i(e,n){return t(nk(e,n.angle),n),LO(e,n).translate(n.x||0,n.y||0)}function a(e,n){var r=n.x||0,i=n.y||0,a=n.angle||0;e.translate(r,i),a&&e.rotate(a*=vD),e.beginPath(),t(e,n),a&&e.rotate(-a),e.translate(-r,-i)}return{type:e,tag:`path`,nested:!1,attr:r,bound:i,draw:Ek(a),pick:jk(a),isect:n||lk(a)}}var zk=Rk(`arc`,xO);function Bk(e,t){for(var n=e[0].orient===`horizontal`?t[1]:t[0],r=e[0].orient===`horizontal`?`y`:`x`,i=e.length,a=1/0,o,s;--i>=0;)e[i].defined!==!1&&(s=Math.abs(e[i][r]-n),s<a&&(a=s,o=e[i]));return o}function Vk(e,t){for(var n=(e[0].strokeWidth||1)**2,r=e.length,i,a,o;--r>=0;)if(e[r].defined!==!1&&(i=e[r].x-t[0],a=e[r].y-t[1],o=i*i+a*a,o<n))return e[r];return null}function Hk(e,t){for(var n=e.length,r,i,a;--n>=0;)if(e[n].defined!==!1&&(r=e[n].x-t[0],i=e[n].y-t[1],a=r*r+i*i,r=e[n].size||1,a<r*r))return e[n];return null}function Uk(e,t,n){function r(e,n){var r=n.mark.items;r.length&&e(`d`,t(null,r))}function i(e,n){var r=n.items;return r.length===0?e:(t(nk(e),r),LO(e,r[0]))}function a(e,n){e.beginPath(),t(e,n)}let o=Ak(a);function s(e,t,n,r,i,a){var s=t.items,c=t.bounds;return!s||!s.length||c&&!c.contains(i,a)?null:(n*=e.pixelRatio,r*=e.pixelRatio,o(e,s,n,r)?s[0]:null)}return{type:e,tag:`path`,nested:!0,attr:r,bound:i,draw:Dk(a),pick:s,isect:uk,tip:n}}var Wk=Uk(`area`,SO,Bk);function Gk(e,t){var n=t.clip;e.save(),m(n)?(e.beginPath(),n(e),e.clip()):Kk(e,t.group)}function Kk(e,t){e.beginPath(),bO(t)?wO(e,t,0,0):e.rect(0,0,t.width||0,t.height||0),e.clip()}function qk(e){let t=hk(e.strokeWidth,1);return e.strokeOffset==null?e.stroke&&t>.5&&t<1.5?.5-Math.abs(t-1):0:e.strokeOffset}function Jk(e,t){e(`transform`,Fk(t))}function Yk(e,t){let n=qk(t);e(`d`,wO(null,t,n,n))}function Xk(e,t){e(`class`,`background`),e(`aria-hidden`,!0),Yk(e,t)}function Zk(e,t){e(`class`,`foreground`),e(`aria-hidden`,!0),t.strokeForeground?Yk(e,t):e(`d`,``)}function Qk(e,t,n){e(`clip-path`,t.clip?AO(n,t,t):null)}function $k(e,t){if(!t.clip&&t.items){let n=t.items,r=n.length;for(let t=0;t<r;++t)e.union(n[t].bounds)}return(t.clip||t.width||t.height)&&!t.noBound&&e.add(0,0).add(t.width||0,t.height||0),LO(e,t),e.translate(t.x||0,t.y||0)}function eA(e,t,n,r){let i=qk(t);e.beginPath(),wO(e,t,(n||0)+i,(r||0)+i)}var tA=Ak(eA),nA=Ak(eA,!1),rA=Ak(eA,!0);function iA(e,t,n,r){wk(t,t=>{let i=t.x||0,a=t.y||0,o=t.strokeForeground,s=t.opacity==null?1:t.opacity;(t.stroke||t.fill)&&s&&(eA(e,t,i,a),mk(e,t),t.fill&&yk(e,t,s)&&e.fill(),t.stroke&&!o&&xk(e,t,s)&&e.stroke()),e.save(),e.translate(i,a),t.clip&&Kk(e,t),n&&n.translate(-i,-a),wk(t,t=>{(t.marktype===`group`||r==null||r.includes(t.marktype))&&this.draw(e,t,n,r)}),n&&n.translate(i,a),e.restore(),o&&t.stroke&&s&&(eA(e,t,i,a),mk(e,t),xk(e,t,s)&&e.stroke())})}function aA(e,t,n,r,i,a){if(t.bounds&&!t.bounds.contains(i,a)||!t.items)return null;let o=n*e.pixelRatio,s=r*e.pixelRatio;return Tk(t,c=>{let l,u,d,f=c.bounds;if(f&&!f.contains(i,a))return;u=c.x||0,d=c.y||0;let p=u+(c.width||0),m=d+(c.height||0),h=c.clip;if(h&&(i<u||i>p||a<d||a>m))return;if(e.save(),e.translate(u,d),u=i-u,d=a-d,h&&bO(c)&&!rA(e,c,o,s))return e.restore(),null;let g=c.strokeForeground,_=t.interactive!==!1;return _&&g&&c.stroke&&nA(e,c,o,s)?(e.restore(),c):(l=Tk(c,e=>oA(e,u,d)?this.pick(e,n,r,u,d):null),!l&&_&&(c.fill||!g&&c.stroke)&&tA(e,c,o,s)&&(l=c),e.restore(),l||null)})}function oA(e,t,n){return(e.interactive!==!1||e.marktype===`group`)&&e.bounds&&e.bounds.contains(t,n)}var sA={type:`group`,tag:`g`,nested:!1,attr:Jk,bound:$k,draw:iA,pick:aA,isect:dk,content:Qk,background:Xk,foreground:Zk},cA={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,version:`1.1`};function lA(e,t){var n=e.image;return(!n||e.url&&e.url!==n.url)&&(n={complete:!1,width:0,height:0},t.loadImage(e.url).then(t=>{e.image=t,e.image.url=e.url})),n}function uA(e,t){return e.width==null?!t||!t.width?0:e.aspect!==!1&&e.height?e.height*t.width/t.height:t.width:e.width}function dA(e,t){return e.height==null?!t||!t.height?0:e.aspect!==!1&&e.width?e.width*t.height/t.width:t.height:e.height}function fA(e,t){return e===`center`?t/2:e===`right`?t:0}function pA(e,t){return e===`middle`?t/2:e===`bottom`?t:0}function mA(e,t,n){let r=lA(t,n),i=uA(t,r),a=dA(t,r),o=(t.x||0)-fA(t.align,i),s=(t.y||0)-pA(t.baseline,a);e(`href`,!r.src&&r.toDataURL?r.toDataURL():r.src||``,cA[`xmlns:xlink`],`xlink:href`),e(`transform`,Mk(o,s)),e(`width`,i),e(`height`,a),e(`preserveAspectRatio`,t.aspect===!1?`none`:`xMidYMid`)}function hA(e,t){let n=t.image,r=uA(t,n),i=dA(t,n),a=(t.x||0)-fA(t.align,r),o=(t.y||0)-pA(t.baseline,i);return e.set(a,o,a+r,o+i)}function gA(e,t,n){wk(t,t=>{if(n&&!n.intersects(t.bounds))return;let r=lA(t,this),i=uA(t,r),a=dA(t,r);if(i===0||a===0)return;let o=(t.x||0)-fA(t.align,i),s=(t.y||0)-pA(t.baseline,a),c,l,u;t.aspect!==!1&&(c=r.width/r.height,l=t.width/t.height,c===c&&l===l&&c!==l&&(l<c?(u=i/c,s+=(a-u)/2,a=u):(u=a*c,o+=(i-u)/2,i=u))),(r.complete||r.toDataURL)&&(mk(e,t),e.globalAlpha=t.opacity??1,e.imageSmoothingEnabled=t.smooth!==!1,e.drawImage(r,o,s,i,a))})}var _A={type:`image`,tag:`image`,nested:!1,attr:mA,bound:hA,draw:gA,pick:kk(),isect:De,get:lA,xOffset:fA,yOffset:pA},vA=Uk(`line`,CO,Vk);function yA(e,t){var n=t.scaleX||1,r=t.scaleY||1;(n!==1||r!==1)&&e(`vector-effect`,`non-scaling-stroke`),e(`transform`,Lk(t)),e(`d`,t.path)}function bA(e,t){var n=t.path;if(n==null)return!0;var r=t.x||0,i=t.y||0,a=t.scaleX||1,o=t.scaleY||1,s=(t.angle||0)*vD,c=t.pathCache;(!c||c.path!==n)&&((t.pathCache=c=gD(n)).path=n),s&&e.rotate&&e.translate?(e.translate(r,i),e.rotate(s),AD(e,c,0,0,a,o),e.rotate(-s),e.translate(-r,-i)):AD(e,c,r,i,a,o)}function xA(e,t){return bA(nk(e,t.angle),t)?e.set(0,0,0,0):LO(e,t,!0)}var SA={type:`path`,tag:`path`,nested:!1,attr:yA,bound:xA,draw:Ek(bA),pick:jk(bA),isect:lk(bA)};function CA(e,t){e(`d`,wO(null,t))}function wA(e,t){var n,r;return LO(e.set(n=t.x||0,r=t.y||0,n+t.width||0,r+t.height||0),t)}function TA(e,t){e.beginPath(),wO(e,t)}var EA={type:`rect`,tag:`path`,nested:!1,attr:CA,bound:wA,draw:Ek(TA),pick:jk(TA),isect:dk};function DA(e,t){e(`transform`,Fk(t)),e(`x2`,t.x2==null?0:t.x2-(t.x||0)),e(`y2`,t.y2==null?0:t.y2-(t.y||0))}function OA(e,t){var n,r;return LO(e.set(n=t.x||0,r=t.y||0,t.x2==null?n:t.x2,t.y2==null?r:t.y2),t)}function kA(e,t,n){var r,i,a,o;return t.stroke&&xk(e,t,n)?(r=t.x||0,i=t.y||0,a=t.x2==null?r:t.x2,o=t.y2==null?i:t.y2,e.beginPath(),e.moveTo(r,i),e.lineTo(a,o),!0):!1}function AA(e,t,n){wk(t,t=>{if(!(n&&!n.intersects(t.bounds))){var r=t.opacity==null?1:t.opacity;r&&kA(e,t,r)&&(mk(e,t),e.stroke())}})}function jA(e,t,n,r){return e.isPointInStroke?kA(e,t,1)&&e.isPointInStroke(n,r):!1}var MA={type:`rule`,tag:`line`,nested:!1,attr:DA,bound:OA,draw:AA,pick:kk(jA),isect:fk},NA=Rk(`shape`,TO),PA=Rk(`symbol`,EO,uk),FA=yr(),IA={height:HA,measureWidth:BA,estimateWidth:RA,width:RA,canvas:LA};LA(!0);function LA(e){IA.width=e&&sk?BA:RA}function RA(e,t){return zA(qA(e,t),HA(e))}function zA(e,t){return~~(.8*e.length*t)}function BA(e,t){return HA(e)<=0||!(t=qA(e,t))?0:VA(t,ZA(e))}function VA(e,t){let n=`(${t}) ${e}`,r=FA.get(n);return r===void 0&&(sk.font=t,r=sk.measureText(e).width,FA.set(n,r)),r}function HA(e){return e.fontSize==null?11:+e.fontSize||0}function UA(e){return e.lineHeight==null?HA(e)+2:e.lineHeight}function WA(e){return N(e)?e.length>1?e:e[0]:e}function GA(e){return WA(e.lineBreak&&e.text&&!N(e.text)?e.text.split(e.lineBreak):e.text)}function KA(e){let t=GA(e);return(N(t)?t.length-1:0)*UA(e)}function qA(e,t){let n=t==null?``:(t+``).trim();return e.limit>0&&n.length?YA(e,n):n}function JA(e){if(IA.width===BA){let t=ZA(e);return e=>VA(e,t)}if(IA.width===RA){let t=HA(e);return e=>zA(e,t)}return t=>IA.width(e,t)}function YA(e,t){var n=+e.limit,r=JA(e);if(r(t)<n)return t;var i=e.ellipsis||`…`,a=e.dir===`rtl`,o=0,s=t.length,c;if(n-=r(i),a){for(;o<s;)c=o+s>>>1,r(t.slice(c))>n?o=c+1:s=c;return i+t.slice(o)}for(;o<s;)c=1+(o+s>>>1),r(t.slice(0,c))<n?o=c:s=c-1;return t.slice(0,o)+i}function XA(e,t){var n=e.font;return(t&&n?String(n).replace(/"/g,`'`):n)||`sans-serif`}function ZA(e,t){return(e.fontStyle?e.fontStyle+` `:``)+(e.fontVariant?e.fontVariant+` `:``)+(e.fontWeight?e.fontWeight+` `:``)+HA(e)+`px `+XA(e,t)}function QA(e){var t=e.baseline,n=HA(e);return Math.round(t===`top`?.79*n:t===`middle`?.3*n:t===`bottom`?-.21*n:t===`line-top`?.29*n+.5*UA(e):t===`line-bottom`?.29*n-.5*UA(e):0)}var $A={left:`start`,center:`middle`,right:`end`},ej=new jO;function tj(e){var t=e.x||0,n=e.y||0,r=e.radius||0,i;return r&&(i=(e.theta||0)-bD,t+=r*Math.cos(i),n+=r*Math.sin(i)),ej.x1=t,ej.y1=n,ej}function nj(e,t){var n=t.dx||0,r=(t.dy||0)+QA(t),i=tj(t),a=i.x1,o=i.y1,s=t.angle||0,c;e(`text-anchor`,$A[t.align]||`start`),s?(c=Mk(a,o)+` `+Nk(s),(n||r)&&(c+=` `+Mk(n,r))):c=Mk(a+n,o+r),e(`transform`,c)}function rj(e,t,n){var r=IA.height(t),i=t.align,a=tj(t),o=a.x1,s=a.y1,c=t.dx||0,l=(t.dy||0)+QA(t)-Math.round(.8*r),u=GA(t),d;if(N(u)?(r+=UA(t)*(u.length-1),d=u.reduce((e,n)=>Math.max(e,IA.width(t,n)),0)):d=IA.width(t,u),i===`center`?c-=d/2:i===`right`&&(c-=d),e.set(c+=o,l+=s,c+d,l+r),t.angle&&!n)e.rotate(t.angle*vD,o,s);else if(n===2)return e.rotatedPoints(t.angle*vD,o,s);return e}function ij(e,t,n){wk(t,t=>{var r=t.opacity==null?1:t.opacity,i,a,o,s,c,l,u;if(!(n&&!n.intersects(t.bounds)||r===0||t.fontSize<=0||t.text==null||t.text.length===0)){if(e.font=ZA(t),e.textAlign=t.align||`left`,i=tj(t),a=i.x1,o=i.y1,t.angle&&(e.save(),e.translate(a,o),e.rotate(t.angle*vD),a=o=0),a+=t.dx||0,o+=(t.dy||0)+QA(t),l=GA(t),mk(e,t),N(l))for(c=UA(t),s=0;s<l.length;++s)u=qA(t,l[s]),t.fill&&yk(e,t,r)&&e.fillText(u,a,o),t.stroke&&xk(e,t,r)&&e.strokeText(u,a,o),o+=c;else u=qA(t,l),t.fill&&yk(e,t,r)&&e.fillText(u,a,o),t.stroke&&xk(e,t,r)&&e.strokeText(u,a,o);t.angle&&e.restore()}})}function aj(e,t,n,r,i,a){if(t.fontSize<=0)return!1;if(!t.angle)return!0;var o=tj(t),s=o.x1,c=o.y1,l=rj(ej,t,1),u=-t.angle*vD,d=Math.cos(u),f=Math.sin(u),p=d*i-f*a+(s-d*s+f*c),m=f*i+d*a+(c-f*s-d*c);return l.contains(p,m)}function oj(e,t){let n=rj(ej,e,2);return pk(t,n[0],n[1],n[2],n[3])||pk(t,n[0],n[1],n[4],n[5])||pk(t,n[4],n[5],n[6],n[7])||pk(t,n[2],n[3],n[6],n[7])}var sj={arc:zk,area:Wk,group:sA,image:_A,line:vA,path:SA,rect:EA,rule:MA,shape:NA,symbol:PA,text:{type:`text`,tag:`text`,nested:!1,attr:nj,bound:rj,draw:ij,pick:kk(aj),isect:oj},trail:Uk(`trail`,DO,Hk)};function cj(e,t,n){var r=sj[e.mark.marktype],i=t||r.bound;return r.nested&&(e=e.mark),i(e.bounds||(e.bounds=new jO),e,n)}var lj={mark:null};function uj(e,t,n){var r=sj[e.marktype],i=r.bound,a=e.items,o=a&&a.length,s,c,l,u;if(r.nested)return o?l=a[0]:(lj.mark=e,l=lj),u=cj(l,i,n),t=t&&t.union(u)||u,t;if(t=t||e.bounds&&e.bounds.clear()||new jO,o)for(s=0,c=a.length;s<c;++s)t.union(cj(a[s],i,n));return e.bounds=t}var dj=`marktype.name.role.interactive.clip.items.zindex.x.y.width.height.align.baseline.fill.fillOpacity.opacity.blend.stroke.strokeOpacity.strokeWidth.strokeCap.strokeDash.strokeDashOffset.strokeForeground.strokeOffset.startAngle.endAngle.innerRadius.outerRadius.cornerRadius.padAngle.cornerRadiusTopLeft.cornerRadiusTopRight.cornerRadiusBottomLeft.cornerRadiusBottomRight.interpolate.tension.orient.defined.url.aspect.smooth.path.scaleX.scaleY.x2.y2.size.shape.text.angle.theta.radius.dir.dx.dy.ellipsis.limit.lineBreak.lineHeight.font.fontSize.fontWeight.fontStyle.fontVariant.description.aria.ariaRole.ariaRoleDescription`.split(`.`);function fj(e,t){return JSON.stringify(e,dj,t)}function pj(e){return mj(typeof e==`string`?JSON.parse(e):e)}function mj(e){var t=e.marktype,n=e.items,r,i,a;if(n)for(i=0,a=n.length;i<a;++i)r=t?`mark`:`group`,n[i][r]=e,n[i].zindex&&(n[i][r].zdirty=!0),(t||r)===`group`&&mj(n[i]);return t&&uj(e),e}var hj=class{constructor(e){arguments.length?this.root=pj(e):(this.root=gj({marktype:`group`,name:`root`,role:`frame`}),this.root.items=[new NO(this.root)])}toJSON(e){return fj(this.root,e||0)}mark(e,t,n){t||=this.root.items[0];let r=gj(e,t);return t.items[n]=r,r.zindex&&(r.group.zdirty=!0),r}};function gj(e,t){let n={bounds:new jO,clip:!!e.clip,group:t,interactive:e.interactive!==!1,items:[],marktype:e.marktype,name:e.name||void 0,role:e.role||void 0,zindex:e.zindex||0};return e.aria!=null&&(n.aria=e.aria),e.description&&(n.description=e.description),n}function _j(e,t,n){return!e&&typeof document<`u`&&document.createElement&&(e=document),e?n?e.createElementNS(n,t):e.createElement(t):null}function vj(e,t){t=t.toLowerCase();for(var n=e.childNodes,r=0,i=n.length;r<i;++r)if(n[r].tagName.toLowerCase()===t)return n[r]}function yj(e,t,n,r){var i=e.childNodes[t],a;return(!i||i.tagName.toLowerCase()!==n.toLowerCase())&&(a=i||null,i=_j(e.ownerDocument,n,r),e.insertBefore(i,a)),i}function bj(e,t){for(var n=e.childNodes,r=n.length;r>t;)e.removeChild(n[--r]);return e}function xj(e){return`mark-`+e.marktype+(e.role?` role-`+e.role:``)+(e.name?` `+e.name:``)}function Sj(e,t){let n=t.getBoundingClientRect();return[e.clientX-n.left-(t.clientLeft||0),e.clientY-n.top-(t.clientTop||0)]}function Cj(e,t,n,r){var i=e&&e.mark,a,o;if(i&&(a=sj[i.marktype]).tip){for(o=Sj(t,n),o[0]-=r[0],o[1]-=r[1];e=e.mark.group;)o[0]-=e.x||0,o[1]-=e.y||0;e=a.tip(i.items,o)}return e}var wj=class{constructor(e,t){this._active=null,this._handlers={},this._loader=e||te(),this._tooltip=t||Tj}initialize(e,t,n){return this._el=e,this._obj=n||null,this.origin(t)}element(){return this._el}canvas(){return this._el&&this._el.firstChild}origin(e){return arguments.length?(this._origin=e||[0,0],this):this._origin.slice()}scene(e){return arguments.length?(this._scene=e,this):this._scene}on(){}off(){}_handlerIndex(e,t,n){for(let r=e?e.length:0;--r>=0;)if(e[r].type===t&&(!n||e[r].handler===n))return r;return-1}handlers(e){let t=this._handlers,n=[];if(e)n.push(...t[this.eventName(e)]);else for(let e in t)n.push(...t[e]);return n}eventName(e){let t=e.indexOf(`.`);return t<0?e:e.slice(0,t)}handleHref(e,t,n){this._loader.sanitize(n,{context:`href`}).then(t=>{let n=new MouseEvent(e.type,e),r=_j(null,`a`);for(let e in t)r.setAttribute(e,t[e]);r.dispatchEvent(n)}).catch(()=>{})}handleTooltip(e,t,n){if(t&&t.tooltip!=null){t=Cj(t,e,this.canvas(),this._origin);let r=n&&t&&t.tooltip||null;this._tooltip.call(this._obj,this,e,t,r)}}getItemBoundingClientRect(e){let t=this.canvas();if(!t)return;let n=t.getBoundingClientRect(),r=this._origin,i=e.bounds,a=i.width(),o=i.height(),s=i.x1+r[0]+n.left,c=i.y1+r[1]+n.top;for(;e.mark&&(e=e.mark.group);)s+=e.x||0,c+=e.y||0;return{x:s,y:c,width:a,height:o,left:s,top:c,right:s+a,bottom:c+o}}};function Tj(e,t,n,r){e.element().setAttribute(`title`,r||``)}var Ej=class{constructor(e){this._el=null,this._bgcolor=null,this._loader=new PO(e)}initialize(e,t,n,r,i){return this._el=e,this.resize(t,n,r,i)}element(){return this._el}canvas(){return this._el&&this._el.firstChild}background(e){return arguments.length===0?this._bgcolor:(this._bgcolor=e,this)}resize(e,t,n,r){return this._width=e,this._height=t,this._origin=n||[0,0],this._scale=r||1,this}dirty(){}render(e,t){let n=this;return n._call=function(){n._render(e,t)},n._call(),n._call=null,n}_render(){}renderAsync(e,t){let n=this.render(e,t);return this._ready?this._ready.then(()=>n):Promise.resolve(n)}_load(e,t){var n=this,r=n._loader[e](t);if(!n._ready){let e=n._call;n._ready=n._loader.ready().then(t=>{t&&e(),n._ready=null})}return r}sanitizeURL(e){return this._load(`sanitizeURL`,e)}loadImage(e){return this._load(`loadImage`,e)}},Dj=`keydown`,Oj=`keypress`,kj=`keyup`,Aj=`dragenter`,jj=`dragleave`,Mj=`dragover`,Nj=`pointerdown`,Pj=`pointerup`,Fj=`pointermove`,Ij=`pointerout`,Lj=`pointerover`,Rj=`mousedown`,zj=`mouseup`,Bj=`mousemove`,Vj=`mouseout`,Hj=`mouseover`,Uj=`click`,Wj=`dblclick`,Gj=`wheel`,Kj=`mousewheel`,qj=`touchstart`,Jj=`touchmove`,Yj=`touchend`,Xj=[Dj,Oj,kj,Aj,jj,Mj,Nj,Pj,Fj,Ij,Lj,Rj,zj,Bj,Vj,Hj,Uj,Wj,Gj,Kj,qj,Jj,Yj],Zj=Fj,Qj=Vj,$j=Uj,eM=class extends wj{constructor(e,t){super(e,t),this._down=null,this._touch=null,this._first=!0,this._events={},this.events=Xj,this.pointermove=aM([Fj,Bj],[Lj,Hj],[Ij,Vj]),this.dragover=aM([Mj],[Aj],[jj]),this.pointerout=oM([Ij,Vj]),this.dragleave=oM([jj])}initialize(e,t,n){return this._canvas=e&&vj(e,`canvas`),[Uj,Rj,Nj,Fj,Ij,jj].forEach(e=>nM(this,e)),super.initialize(e,t,n)}canvas(){return this._canvas}context(){return this._canvas.getContext(`2d`)}DOMMouseScroll(e){this.fire(Kj,e)}pointerdown(e){this._down=this._active,this.fire(Nj,e)}mousedown(e){this._down=this._active,this.fire(Rj,e)}click(e){this._down===this._active&&(this.fire(Uj,e),this._down=null)}touchstart(e){this._touch=this.pickEvent(e.changedTouches[0]),this._first&&=(this._active=this._touch,!1),this.fire(qj,e,!0)}touchmove(e){this.fire(Jj,e,!0)}touchend(e){this.fire(Yj,e,!0),this._touch=null}fire(e,t,n){let r=n?this._touch:this._active,i=this._handlers[e];if(t.vegaType=e,e===$j&&r&&r.href?this.handleHref(t,r,r.href):(e===Zj||e===Qj)&&this.handleTooltip(t,r,e!==Qj),i)for(let e=0,n=i.length;e<n;++e)i[e].handler.call(this._obj,t,r)}on(e,t){let n=this.eventName(e),r=this._handlers;return this._handlerIndex(r[n],e,t)<0&&(nM(this,e),(r[n]||(r[n]=[])).push({type:e,handler:t})),this}off(e,t){let n=this.eventName(e),r=this._handlers[n],i=this._handlerIndex(r,e,t);return i>=0&&r.splice(i,1),this}pickEvent(e){let t=Sj(e,this._canvas),n=this._origin;return this.pick(this._scene,t[0],t[1],t[0]-n[0],t[1]-n[1])}pick(e,t,n,r,i){let a=this.context();return sj[e.marktype].pick.call(this,a,e,t,n,r,i)}},tM=e=>e===qj||e===Jj||e===Yj?[qj,Jj,Yj]:[e];function nM(e,t){tM(t).forEach(t=>rM(e,t))}function rM(e,t){let n=e.canvas();n&&!e._events[t]&&(e._events[t]=1,n.addEventListener(t,e[t]?n=>e[t](n):n=>e.fire(t,n)))}function iM(e,t,n){t.forEach(t=>e.fire(t,n))}function aM(e,t,n){return function(r){let i=this._active,a=this.pickEvent(r);a===i?iM(this,e,r):((!i||!i.exit)&&iM(this,n,r),this._active=a,iM(this,t,r),iM(this,e,r))}}function oM(e){return function(t){iM(this,e,t),this._active=null}}function sM(){return typeof window<`u`&&window.devicePixelRatio||1}function cM(e,t,n,r,i,a){let o=typeof HTMLElement<`u`&&e instanceof HTMLElement&&e.parentNode!=null,s=e.getContext(`2d`),c=o?sM():i;e.width=t*c,e.height=n*c;for(let e in a)s[e]=a[e];return o&&c!==1&&(e.style.width=t+`px`,e.style.height=n+`px`),s.pixelRatio=c,s.setTransform(c,0,0,c,c*r[0],c*r[1]),e}var lM=class extends Ej{constructor(e){super(e),this._options={},this._redraw=!1,this._dirty=new jO,this._tempb=new jO}initialize(e,t,n,r,i,a){return this._options=a||{},this._canvas=this._options.externalContext?null:Js(1,1,this._options.type),e&&this._canvas&&(bj(e,0).appendChild(this._canvas),this._canvas.setAttribute(`class`,`marks`)),super.initialize(e,t,n,r,i)}resize(e,t,n,r){if(super.resize(e,t,n,r),this._canvas)cM(this._canvas,this._width,this._height,this._origin,this._scale,this._options.context);else{let e=this._options.externalContext;e||j(`CanvasRenderer is missing a valid canvas or context`),e.scale(this._scale,this._scale),e.translate(this._origin[0],this._origin[1])}return this._redraw=!0,this}canvas(){return this._canvas}context(){return this._options.externalContext||(this._canvas?this._canvas.getContext(`2d`):null)}dirty(e){let t=this._tempb.clear().union(e.bounds),n=e.mark.group;for(;n;)t.translate(n.x||0,n.y||0),n=n.mark.group;this._dirty.union(t)}_render(e,t){let n=this.context(),r=this._origin,i=this._width,a=this._height,o=this._dirty,s=uM(r,i,a);n.save();let c=this._redraw||o.empty()?(this._redraw=!1,s.expand(1)):dM(n,s.intersect(o),r);return this.clear(-r[0],-r[1],i,a),this.draw(n,e,c,t),n.restore(),o.clear(),this}draw(e,t,n,r){if(t.marktype!==`group`&&r!=null&&!r.includes(t.marktype))return;let i=sj[t.marktype];t.clip&&Gk(e,t),i.draw.call(this,e,t,n,r),t.clip&&e.restore()}clear(e,t,n,r){let i=this._options,a=this.context();i.type!==`pdf`&&!i.externalContext&&a.clearRect(e,t,n,r),this._bgcolor!=null&&(a.fillStyle=this._bgcolor,a.fillRect(e,t,n,r))}},uM=(e,t,n)=>new jO().set(0,0,t,n).translate(-e[0],-e[1]);function dM(e,t,n){return t.expand(1).round(),e.pixelRatio%1&&t.scale(e.pixelRatio).round().scale(1/e.pixelRatio),t.translate(-(n[0]%1),-(n[1]%1)),e.beginPath(),e.rect(t.x1,t.y1,t.width(),t.height()),e.clip(),t}var fM=class extends wj{constructor(e,t){super(e,t);let n=this;n._hrefHandler=pM(n,(e,t)=>{t&&t.href&&n.handleHref(e,t,t.href)}),n._tooltipHandler=pM(n,(e,t)=>{n.handleTooltip(e,t,e.type!==Qj)})}initialize(e,t,n){let r=this._svg;return r&&(r.removeEventListener($j,this._hrefHandler),r.removeEventListener(Zj,this._tooltipHandler),r.removeEventListener(Qj,this._tooltipHandler)),this._svg=r=e&&vj(e,`svg`),r&&(r.addEventListener($j,this._hrefHandler),r.addEventListener(Zj,this._tooltipHandler),r.addEventListener(Qj,this._tooltipHandler)),super.initialize(e,t,n)}canvas(){return this._svg}on(e,t){let n=this.eventName(e),r=this._handlers;if(this._handlerIndex(r[n],e,t)<0){let i={type:e,handler:t,listener:pM(this,t)};(r[n]||(r[n]=[])).push(i),this._svg&&this._svg.addEventListener(n,i.listener)}return this}off(e,t){let n=this.eventName(e),r=this._handlers[n],i=this._handlerIndex(r,e,t);return i>=0&&(this._svg&&this._svg.removeEventListener(n,r[i].listener),r.splice(i,1)),this}},pM=(e,t)=>n=>{let r=n.target.__data__;r=Array.isArray(r)?r[0]:r,n.vegaType=n.type,t.call(e._obj,n,r)},mM=`aria-hidden`,hM=`aria-label`,gM=`role`,_M=`aria-roledescription`,vM=`graphics-object`,yM=`graphics-symbol`,bM=(e,t,n)=>({[gM]:e,[_M]:t,[hM]:n||void 0}),xM=_([`axis-domain`,`axis-grid`,`axis-label`,`axis-tick`,`axis-title`,`legend-band`,`legend-entry`,`legend-gradient`,`legend-label`,`legend-title`,`legend-symbol`,`title`]),SM={axis:{desc:`axis`,caption:kM},legend:{desc:`legend`,caption:AM},"title-text":{desc:`title`,caption:e=>`Title text '${OM(e)}'`},"title-subtitle":{desc:`subtitle`,caption:e=>`Subtitle text '${OM(e)}'`}},CM={ariaRole:gM,ariaRoleDescription:_M,description:hM};function wM(e,t){let n=t.aria===!1;if(e(mM,n||void 0),n||t.description==null)for(let t in CM)e(CM[t],void 0);else{let n=t.mark.marktype;e(hM,t.description),e(gM,t.ariaRole||(n===`group`?vM:yM)),e(_M,t.ariaRoleDescription||`${n} mark`)}}function TM(e){return e.aria===!1?{[mM]:!0}:xM[e.role]?null:SM[e.role]?DM(e,SM[e.role]):EM(e)}function EM(e){let t=e.marktype;return bM(t===`group`||t===`text`||e.items.some(e=>e.description!=null&&e.aria!==!1)?vM:yM,`${t} mark container`,e.description)}function DM(e,t){try{let n=e.items[0],r=t.caption||(()=>``);return bM(t.role||yM,t.desc,n.description||r(n))}catch{return null}}function OM(e){return k(e.text).join(` `)}function kM(e){let t=e.datum,n=e.orient,r=t.title?jM(e):null,i=e.context,a=i.scales[t.scale].value,o=i.dataflow.locale(),s=a.type;return`${n===`left`||n===`right`?`Y`:`X`}-axis`+(r?` titled '${r}'`:``)+` for a ${Dl(s)?`discrete`:s} scale with ${ru(o,a,e)}`}function AM(e){let t=e.datum,n=t.title?jM(e):null,r=`${t.type||``} legend`.trim(),i=t.scales,a=Object.keys(i),o=e.context,s=o.scales[i[a[0]]].value,c=o.dataflow.locale();return NM(r)+(n?` titled '${n}'`:``)+` for ${MM(a)} with ${ru(c,s,e)}`}function jM(e){try{return k(A(e.items).items[0].text).join(` `)}catch{return null}}function MM(e){return e=e.map(e=>e+(e===`fill`||e===`stroke`?` color`:``)),e.length<2?e[0]:e.slice(0,-1).join(`, `)+` and `+A(e)}function NM(e){return e.length?e[0].toUpperCase()+e.slice(1):e}var PM=e=>(e+``).replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`),FM=e=>PM(e).replace(/"/g,`"`).replace(/\t/g,`	`).replace(/\n/g,`
`).replace(/\r/g,`
`);function IM(){let e=``,t=``,n=``,r=[],i=()=>t=n=``,a=a=>{t&&(e+=`${t}>${n}`,i()),r.push(a)},o=(e,n)=>(n!=null&&(t+=` ${e}="${FM(n)}"`),s),s={open(e,...n){a(e),t=`<`+e;for(let e of n)for(let t in e)o(t,e[t]);return s},close(){let a=r.pop();return e+=t?t+(n?`>${n}</${a}>`:`/>`):`</${a}>`,i(),s},attr:o,text:e=>(n+=PM(e),s),toString:()=>e};return s}var LM=e=>RM(IM(),e)+``;function RM(e,t){if(e.open(t.tagName),t.hasAttributes()){let n=t.attributes,r=n.length;for(let t=0;t<r;++t)e.attr(n[t].name,n[t].value)}if(t.hasChildNodes()){let n=t.childNodes;for(let t of n)t.nodeType===3?e.text(t.nodeValue):RM(e,t)}return e.close()}var zM={fill:`fill`,fillOpacity:`fill-opacity`,stroke:`stroke`,strokeOpacity:`stroke-opacity`,strokeWidth:`stroke-width`,strokeCap:`stroke-linecap`,strokeJoin:`stroke-linejoin`,strokeDash:`stroke-dasharray`,strokeDashOffset:`stroke-dashoffset`,strokeMiterLimit:`stroke-miterlimit`,opacity:`opacity`},BM={blend:`mix-blend-mode`},VM={fill:`none`,"stroke-miterlimit":10},HM=0,UM=`http://www.w3.org/2000/xmlns/`,WM=cA.xmlns,GM=class extends Ej{constructor(e){super(e),this._dirtyID=0,this._dirty=[],this._svg=null,this._root=null,this._defs=null}initialize(e,t,n,r,i){return this._defs={},this._clearDefs(),e&&(this._svg=yj(e,0,`svg`,WM),this._svg.setAttributeNS(UM,`xmlns`,WM),this._svg.setAttributeNS(UM,`xmlns:xlink`,cA[`xmlns:xlink`]),this._svg.setAttribute(`version`,cA.version),this._svg.setAttribute(`class`,`marks`),bj(e,1),this._root=yj(this._svg,HM,`g`,WM),rN(this._root,VM),bj(this._svg,1)),this.background(this._bgcolor),super.initialize(e,t,n,r,i)}background(e){return arguments.length&&this._svg&&this._svg.style.setProperty(`background-color`,e),super.background(...arguments)}resize(e,t,n,r){return super.resize(e,t,n,r),this._svg&&(rN(this._svg,{width:this._width*this._scale,height:this._height*this._scale,viewBox:`0 0 ${this._width} ${this._height}`}),this._root.setAttribute(`transform`,`translate(${this._origin})`)),this._dirty=[],this}canvas(){return this._svg}svg(){let e=this._svg,t=this._bgcolor;if(!e)return null;let n;t&&(e.removeAttribute(`style`),n=yj(e,HM,`rect`,WM),rN(n,{width:this._width,height:this._height,fill:t}));let r=LM(e);return t&&(e.removeChild(n),this._svg.style.setProperty(`background-color`,t)),r}_render(e,t){return this._dirtyCheck()&&(this._dirtyAll&&this._clearDefs(),this.mark(this._root,e,void 0,t),bj(this._root,1)),this.defs(),this._dirty=[],++this._dirtyID,this}dirty(e){e.dirty!==this._dirtyID&&(e.dirty=this._dirtyID,this._dirty.push(e))}isDirty(e){return this._dirtyAll||!e._svg||!e._svg.ownerSVGElement||e.dirty===this._dirtyID}_dirtyCheck(){this._dirtyAll=!0;let e=this._dirty;if(!e.length||!this._dirtyID)return!0;let t=++this._dirtyID,n,r,i,a,o,s,c;for(o=0,s=e.length;o<s;++o)if(n=e[o],r=n.mark,r.marktype!==i&&(i=r.marktype,a=sj[i]),r.zdirty&&r.dirty!==t&&(this._dirtyAll=!1,KM(n,t),r.items.forEach(e=>{e.dirty=t})),!r.zdirty){if(n.exit){a.nested&&r.items.length?(c=r.items[0],c._svg&&this._update(a,c._svg,c)):n._svg&&(c=n._svg.parentNode,c&&c.removeChild(n._svg)),n._svg=null;continue}n=a.nested?r.items[0]:n,n._update!==t&&(!n._svg||!n._svg.ownerSVGElement?(this._dirtyAll=!1,KM(n,t)):this._update(a,n._svg,n),n._update=t)}return!this._dirtyAll}mark(e,t,n,r){if(!this.isDirty(t))return t._svg;let i=this._svg,a=t.marktype,o=sj[a],s=t.interactive===!1?`none`:null,c=o.tag===`g`,l=XM(t,e,n,`g`,i);if(a!==`group`&&r!=null&&!r.includes(a))return bj(l,0),t._svg;l.setAttribute(`class`,xj(t));let u=TM(t);for(let e in u)iN(l,e,u[e]);c||iN(l,`pointer-events`,s),iN(l,`clip-path`,t.clip?AO(this,t,t.group):null);let d=null,f=0,p=e=>{let t=this.isDirty(e),n=XM(e,l,d,o.tag,i);t&&(this._update(o,n,e),c&&YM(this,n,e,r)),d=n,++f};return o.nested?t.items.length&&p(t.items[0]):wk(t,p),bj(l,f),l}_update(e,t,n){QM=t,$M=t.__values__,wM(tN,n),e.attr(tN,n,this);let r=eN[e.type];r&&r.call(this,e,t,n),QM&&this.style(QM,n)}style(e,t){if(t!=null){for(let n in zM){let r=n===`font`?XA(t):t[n];if(r===$M[n])continue;let i=zM[n];r==null?e.removeAttribute(i):(aD(r)&&(r=oD(r,this._defs.gradient,aN())),e.setAttribute(i,r+``)),$M[n]=r}for(let n in BM)nN(e,BM[n],t[n])}}defs(){let e=this._svg,t=this._defs,n=t.el,r=0;for(let i in t.gradient)n||(t.el=n=yj(e,1,`defs`,WM)),r=qM(n,t.gradient[i],r);for(let i in t.clipping)n||(t.el=n=yj(e,1,`defs`,WM)),r=JM(n,t.clipping[i],r);n&&(r===0?(e.removeChild(n),t.el=null):bj(n,r))}_clearDefs(){let e=this._defs;e.gradient={},e.clipping={}}};function KM(e,t){for(;e&&e.dirty!==t;e=e.mark.group)if(e.dirty=t,e.mark&&e.mark.dirty!==t)e.mark.dirty=t;else return}function qM(e,t,n){let r,i,a;if(t.gradient===`radial`){let r=yj(e,n++,`pattern`,WM);rN(r,{id:iD+t.id,viewBox:`0,0,1,1`,width:`100%`,height:`100%`,preserveAspectRatio:`xMidYMid slice`}),r=yj(r,0,`rect`,WM),rN(r,{width:1,height:1,fill:`url(${aN()}#${t.id})`}),e=yj(e,n++,`radialGradient`,WM),rN(e,{id:t.id,fx:t.x1,fy:t.y1,fr:t.r1,cx:t.x2,cy:t.y2,r:t.r2})}else e=yj(e,n++,`linearGradient`,WM),rN(e,{id:t.id,x1:t.x1,x2:t.x2,y1:t.y1,y2:t.y2});for(r=0,i=t.stops.length;r<i;++r)a=yj(e,r,`stop`,WM),a.setAttribute(`offset`,t.stops[r].offset),a.setAttribute(`stop-color`,t.stops[r].color);return bj(e,r),n}function JM(e,t,n){let r;return e=yj(e,n,`clipPath`,WM),e.setAttribute(`id`,t.id),t.path?(r=yj(e,0,`path`,WM),r.setAttribute(`d`,t.path)):(r=yj(e,0,`rect`,WM),rN(r,{x:0,y:0,width:t.width,height:t.height})),bj(e,1),n+1}function YM(e,t,n,r){t=t.lastChild.previousSibling;let i,a=0;wk(n,n=>{i=e.mark(t,n,i,r),++a}),bj(t,1+a)}function XM(e,t,n,r,i){let a=e._svg,o;if(!a&&(o=t.ownerDocument,a=_j(o,r,WM),e._svg=a,e.mark&&(a.__data__=e,a.__values__={fill:`default`},r===`g`))){let t=_j(o,`path`,WM);a.appendChild(t),t.__data__=e;let n=_j(o,`g`,WM);a.appendChild(n),n.__data__=e;let r=_j(o,`path`,WM);a.appendChild(r),r.__data__=e,r.__values__={fill:`default`}}return(a.ownerSVGElement!==i||ZM(a,n))&&t.insertBefore(a,n?n.nextSibling:t.firstChild),a}function ZM(e,t){return e.parentNode&&e.parentNode.childNodes.length>1&&e.previousSibling!=t}var QM=null,$M=null,eN={group(e,t,n){let r=QM=t.childNodes[2];$M=r.__values__,e.foreground(tN,n,this),$M=t.__values__,QM=t.childNodes[1],e.content(tN,n,this);let i=QM=t.childNodes[0];e.background(tN,n,this);let a=n.mark.interactive===!1?`none`:null;if(a!==$M.events&&(iN(r,`pointer-events`,a),iN(i,`pointer-events`,a),$M.events=a),n.strokeForeground&&n.stroke){let e=n.fill;iN(r,`display`,null),this.style(i,n),iN(i,`stroke`,null),e&&(n.fill=null),$M=r.__values__,this.style(r,n),e&&(n.fill=e),QM=null}else iN(r,`display`,`none`)},image(e,t,n){n.smooth===!1?(nN(t,`image-rendering`,`optimizeSpeed`),nN(t,`image-rendering`,`pixelated`)):nN(t,`image-rendering`,null)},text(e,t,n){let r=GA(n),i,a,o,s;N(r)?(a=r.map(e=>qA(n,e)),i=a.join(`
|
|
3
|
+
`),i!==$M.text&&(bj(t,0),o=t.ownerDocument,s=UA(n),a.forEach((e,r)=>{let i=_j(o,`tspan`,WM);i.__data__=n,i.textContent=e,r&&(i.setAttribute(`x`,0),i.setAttribute(`dy`,s)),t.appendChild(i)}),$M.text=i)):(a=qA(n,r),a!==$M.text&&(t.textContent=a,$M.text=a)),iN(t,`font-family`,XA(n)),iN(t,`font-size`,HA(n)+`px`),iN(t,`font-style`,n.fontStyle),iN(t,`font-variant`,n.fontVariant),iN(t,`font-weight`,n.fontWeight)}};function tN(e,t,n){t!==$M[e]&&(n?eae(QM,e,t,n):iN(QM,e,t),$M[e]=t)}function nN(e,t,n){n!==$M[t]&&(n==null?e.style.removeProperty(t):e.style.setProperty(t,n+``),$M[t]=n)}function rN(e,t){for(let n in t)iN(e,n,t[n])}function iN(e,t,n){n==null?e.removeAttribute(t):e.setAttribute(t,n)}function eae(e,t,n,r){n==null?e.removeAttributeNS(r,t):e.setAttributeNS(r,t,n)}function aN(){let e;return typeof window>`u`?``:(e=window.location).hash?e.href.slice(0,-e.hash.length):e.href}var oN=class extends Ej{constructor(e){super(e),this._text=null,this._defs={gradient:{},clipping:{}}}svg(){return this._text}_render(e){let t=IM();t.open(`svg`,D({},cA,{class:`marks`,width:this._width*this._scale,height:this._height*this._scale,viewBox:`0 0 ${this._width} ${this._height}`}));let n=this._bgcolor;return n&&n!==`transparent`&&n!==`none`&&t.open(`rect`,{width:this._width,height:this._height,fill:n}).close(),t.open(`g`,VM,{transform:`translate(`+this._origin+`)`}),this.mark(t,e),t.close(),this.defs(t),this._text=t.close()+``,this}mark(e,t){let n=sj[t.marktype],r=n.tag,i=[wM,n.attr];e.open(`g`,{class:xj(t),"clip-path":t.clip?AO(this,t,t.group):null},TM(t),{"pointer-events":r!==`g`&&t.interactive===!1?`none`:null});let a=a=>{let o=this.href(a);if(o&&e.open(`a`,o),e.open(r,this.attr(t,a,i,r===`g`?null:r)),r===`text`){let t=GA(a);if(N(t)){let n={x:0,dy:UA(a)};for(let r=0;r<t.length;++r)e.open(`tspan`,r?n:null).text(qA(a,t[r])).close()}else e.text(qA(a,t))}else if(r===`g`){let r=a.strokeForeground,i=a.fill,o=a.stroke;r&&o&&(a.stroke=null),e.open(`path`,this.attr(t,a,n.background,`bgrect`)).close(),e.open(`g`,this.attr(t,a,n.content)),wk(a,t=>this.mark(e,t)),e.close(),r&&o?(i&&(a.fill=null),a.stroke=o,e.open(`path`,this.attr(t,a,n.foreground,`bgrect`)).close(),i&&(a.fill=i)):e.open(`path`,this.attr(t,a,n.foreground,`bgfore`)).close()}e.close(),o&&e.close()};return n.nested?t.items&&t.items.length&&a(t.items[0]):wk(t,a),e.close()}href(e){let t=e.href,n;if(t){if(n=this._hrefs&&this._hrefs[t])return n;this.sanitizeURL(t).then(e=>{e[`xlink:href`]=e.href,e.href=null,(this._hrefs||={})[t]=e})}return null}attr(e,t,n,r){let i={},a=(e,t,n,r)=>{i[r||e]=t};return Array.isArray(n)?n.forEach(e=>e(a,t,this)):n(a,t,this),r&&tae(i,t,e,r,this._defs),i}defs(e){let t=this._defs.gradient,n=this._defs.clipping;if(Object.keys(t).length+Object.keys(n).length!==0){e.open(`defs`);for(let n in t){let r=t[n],i=r.stops;r.gradient===`radial`?(e.open(`pattern`,{id:iD+n,viewBox:`0,0,1,1`,width:`100%`,height:`100%`,preserveAspectRatio:`xMidYMid slice`}),e.open(`rect`,{width:`1`,height:`1`,fill:`url(#`+n+`)`}).close(),e.close(),e.open(`radialGradient`,{id:n,fx:r.x1,fy:r.y1,fr:r.r1,cx:r.x2,cy:r.y2,r:r.r2})):e.open(`linearGradient`,{id:n,x1:r.x1,x2:r.x2,y1:r.y1,y2:r.y2});for(let t=0;t<i.length;++t)e.open(`stop`,{offset:i[t].offset,"stop-color":i[t].color}).close();e.close()}for(let t in n){let r=n[t];e.open(`clipPath`,{id:t}),r.path?e.open(`path`,{d:r.path}).close():e.open(`rect`,{x:0,y:0,width:r.width,height:r.height}).close(),e.close()}e.close()}}};function tae(e,t,n,r,i){let a;if(t==null||(r===`bgrect`&&n.interactive===!1&&(e[`pointer-events`]=`none`),r===`bgfore`&&(n.interactive===!1&&(e[`pointer-events`]=`none`),e.display=`none`,t.fill!==null)))return e;r===`image`&&t.smooth===!1&&(a=[`image-rendering: optimizeSpeed;`,`image-rendering: pixelated;`]),r===`text`&&(e[`font-family`]=XA(t),e[`font-size`]=HA(t)+`px`,e[`font-style`]=t.fontStyle,e[`font-variant`]=t.fontVariant,e[`font-weight`]=t.fontWeight);for(let n in zM){let r=t[n],a=zM[n];r===`transparent`&&(a===`fill`||a===`stroke`)||r!=null&&(aD(r)&&(r=oD(r,i.gradient,``)),e[a]=r)}for(let e in BM){let n=t[e];n!=null&&(a||=[],a.push(`${BM[e]}: ${n};`))}return a&&(e.style=a.join(` `)),e}var sN={svgMarkTypes:[`text`],svgOnTop:!0,debug:!1};function nae(e){sN.svgMarkTypes=e.svgMarkTypes??[`text`],sN.svgOnTop=e.svgOnTop??!0,sN.debug=e.debug??!1}var cN=class extends Ej{constructor(e){super(e),this._svgRenderer=new GM(e),this._canvasRenderer=new lM(e)}initialize(e,t,n,r,i){this._root_el=yj(e,0,`div`);let a=yj(this._root_el,0,`div`),o=yj(this._root_el,1,`div`);return this._root_el.style.position=`relative`,sN.debug||(a.style.height=`100%`,o.style.position=`absolute`,o.style.top=`0`,o.style.left=`0`,o.style.height=`100%`,o.style.width=`100%`),this._svgEl=sN.svgOnTop?o:a,this._canvasEl=sN.svgOnTop?a:o,this._svgEl.style.pointerEvents=`none`,this._canvasRenderer.initialize(this._canvasEl,t,n,r,i),this._svgRenderer.initialize(this._svgEl,t,n,r,i),super.initialize(e,t,n,r,i)}dirty(e){return sN.svgMarkTypes.includes(e.mark.marktype)?this._svgRenderer.dirty(e):this._canvasRenderer.dirty(e),this}_render(e,t){let n=(t??[`arc`,`area`,`image`,`line`,`path`,`rect`,`rule`,`shape`,`symbol`,`text`,`trail`]).filter(e=>!sN.svgMarkTypes.includes(e));this._svgRenderer.render(e,sN.svgMarkTypes),this._canvasRenderer.render(e,n)}resize(e,t,n,r){return super.resize(e,t,n,r),this._svgRenderer.resize(e,t,n,r),this._canvasRenderer.resize(e,t,n,r),this}background(e){return sN.svgOnTop?this._canvasRenderer.background(e):this._svgRenderer.background(e),this}},lN=class extends eM{constructor(e,t){super(e,t)}initialize(e,t,n){let r=yj(yj(e,0,`div`),+!sN.svgOnTop,`div`);return super.initialize(r,t,n)}},uN=`canvas`,dN=`hybrid`,fN=`png`,pN=`svg`,mN=`none`,rae={Canvas:uN,PNG:fN,SVG:pN,Hybrid:dN,None:mN},hN={};hN[uN]=hN[fN]={renderer:lM,headless:lM,handler:eM},hN[pN]={renderer:GM,headless:oN,handler:fM},hN[dN]={renderer:cN,headless:cN,handler:lN},hN[mN]={};function iae(e,t){return e=String(e||``).toLowerCase(),arguments.length>1?(hN[e]=t,this):hN[e]}function aae(e,t,n){let r=[],i=new jO().union(t),a=e.marktype;return a?gN(e,i,n,r):a===`group`?_N(e,i,n,r):j(`Intersect scene must be mark node or group item.`)}function gN(e,t,n,r){if(oae(e,t,n)){let i=e.items,a=e.marktype,o=i.length,s=0;if(a===`group`)for(;s<o;++s)_N(i[s],t,n,r);else for(let e=sj[a].isect;s<o;++s){let n=i[s];vN(n,t,e)&&r.push(n)}}return r}function oae(e,t,n){return e.bounds&&t.intersects(e.bounds)&&(e.marktype===`group`||e.interactive!==!1&&(!n||n(e)))}function _N(e,t,n,r){n&&n(e.mark)&&vN(e,t,sj.group.isect)&&r.push(e);let i=e.items,a=i&&i.length;if(a){let o=e.x||0,s=e.y||0;t.translate(-o,-s);for(let e=0;e<a;++e)gN(i[e],t,n,r);t.translate(o,s)}return r}function vN(e,t,n){let r=e.bounds;return t.encloses(r)||t.intersects(r)&&n(e,t)}var yN=new jO;function sae(e){let t=e.clip;if(m(t))t(nk(yN.clear()));else if(t)yN.set(0,0,e.group.width,e.group.height);else return;e.bounds.intersect(yN)}var cae=1e-9;function bN(e,t,n){return e===t?!0:n===`path`?xN(e,t):e instanceof Date&&t instanceof Date?+e==+t:o(e)&&o(t)?Math.abs(e-t)<=cae:!e||!t||!M(e)&&!M(t)?e==t:lae(e,t)}function xN(e,t){return bN(gD(e),gD(t))}function lae(e,t){var n=Object.keys(e),r=Object.keys(t),i,a;if(n.length!==r.length)return!1;for(n.sort(),r.sort(),a=n.length-1;a>=0;a--)if(n[a]!=r[a])return!1;for(a=n.length-1;a>=0;a--)if(i=n[a],!bN(e[i],t[i],i))return!1;return typeof e==typeof t}function uae(){kO(),rD()}var dae=e=>+e;function fae(e){return e*e}function pae(e){return e*(2-e)}function SN(e){return((e*=2)<=1?e*e:--e*(2-e)+1)/2}var CN=3,mae=(function e(t){t=+t;function n(e){return e**+t}return n.exponent=e,n})(CN),hae=(function e(t){t=+t;function n(e){return 1-(1-e)**t}return n.exponent=e,n})(CN),wN=(function e(t){t=+t;function n(e){return((e*=2)<=1?e**+t:2-(2-e)**t)/2}return n.exponent=e,n})(CN),TN=Math.PI,EN=TN/2;function gae(e){return+e==1?1:1-Math.cos(e*EN)}function _ae(e){return Math.sin(e*EN)}function DN(e){return(1-Math.cos(TN*e))/2}function ON(e){return(2**(-10*e)-.0009765625)*1.0009775171065494}function vae(e){return ON(1-e)}function yae(e){return 1-ON(e)}function kN(e){return((e*=2)<=1?ON(1-e):2-ON(e-1))/2}function bae(e){return 1-Math.sqrt(1-e*e)}function xae(e){return Math.sqrt(1- --e*e)}function AN(e){return((e*=2)<=1?1-Math.sqrt(1-e*e):Math.sqrt(1-(e-=2)*e)+1)/2}var jN=4/11,Sae=6/11,Cae=8/11,wae=3/4,Tae=9/11,Eae=10/11,Dae=15/16,Oae=21/22,kae=63/64,MN=1/jN/jN;function Aae(e){return 1-NN(1-e)}function NN(e){return(e=+e)<jN?MN*e*e:e<Cae?MN*(e-=Sae)*e+wae:e<Eae?MN*(e-=Tae)*e+Dae:MN*(e-=Oae)*e+kae}function jae(e){return((e*=2)<=1?1-NN(1-e):NN(e-1)+1)/2}var PN=1.70158,Mae=(function e(t){t=+t;function n(e){return(e=+e)*e*(t*(e-1)+e)}return n.overshoot=e,n})(PN),Nae=(function e(t){t=+t;function n(e){return--e*e*((e+1)*t+e)+1}return n.overshoot=e,n})(PN),FN=(function e(t){t=+t;function n(e){return((e*=2)<1?e*e*((t+1)*e-t):(e-=2)*e*((t+1)*e+t)+2)/2}return n.overshoot=e,n})(PN),IN=2*Math.PI,LN=1,RN=.3,Pae=(function e(t,n){var r=Math.asin(1/(t=Math.max(1,t)))*(n/=IN);function i(e){return t*ON(- --e)*Math.sin((r-e)/n)}return i.amplitude=function(t){return e(t,n*IN)},i.period=function(n){return e(t,n)},i})(LN,RN),zN=(function e(t,n){var r=Math.asin(1/(t=Math.max(1,t)))*(n/=IN);function i(e){return 1-t*ON(e=+e)*Math.sin((e+r)/n)}return i.amplitude=function(t){return e(t,n*IN)},i.period=function(n){return e(t,n)},i})(LN,RN),Fae=(function e(t,n){var r=Math.asin(1/(t=Math.max(1,t)))*(n/=IN);function i(e){return((e=e*2-1)<0?t*ON(-e)*Math.sin((r-e)/n):2-t*ON(e)*Math.sin((r+e)/n))/2}return i.amplitude=function(t){return e(t,n*IN)},i.period=function(n){return e(t,n)},i})(LN,RN),Iae=`RawCode`,Lae=`Literal`,Rae=`Property`,zae=`Identifier`,Bae=`ArrayExpression`,Vae=`BinaryExpression`,Hae=`CallExpression`,Uae=`ConditionalExpression`,Wae=`LogicalExpression`,Gae=`MemberExpression`,Kae=`ObjectExpression`,qae=`UnaryExpression`;function BN(e){this.type=e}BN.prototype.visit=function(e){let t,n,r;if(e(this))return 1;for(t=Jae(this),n=0,r=t.length;n<r;++n)if(t[n].visit(e))return 1};function Jae(e){switch(e.type){case Bae:return e.elements;case Vae:case Wae:return[e.left,e.right];case Hae:return[e.callee].concat(e.arguments);case Uae:return[e.test,e.consequent,e.alternate];case Gae:return[e.object,e.property];case Kae:return e.properties;case Rae:return[e.key,e.value];case qae:return[e.argument];case zae:case Lae:case Iae:default:return[]}}var VN,V,H,HN,UN,WN=1,GN=2,KN=3,qN=4,JN=5,YN=6,XN=7,ZN=8,Yae=9;VN={},VN[WN]=`Boolean`,VN[GN]=`<end>`,VN[KN]=`Identifier`,VN[qN]=`Keyword`,VN[JN]=`Null`,VN[YN]=`Numeric`,VN[XN]=`Punctuator`,VN[ZN]=`String`,VN[Yae]=`RegularExpression`;var Xae=`ArrayExpression`,Zae=`BinaryExpression`,Qae=`CallExpression`,$ae=`ConditionalExpression`,QN=`Identifier`,eoe=`Literal`,toe=`LogicalExpression`,noe=`MemberExpression`,roe=`ObjectExpression`,ioe=`Property`,aoe=`UnaryExpression`,$N=`Unexpected token %0`,ooe=`Unexpected number`,soe=`Unexpected string`,coe=`Unexpected identifier`,loe=`Unexpected reserved word`,uoe=`Unexpected end of input`,eP=`Invalid regular expression`,tP=`Invalid regular expression: missing /`,nP=`Octal literals are not allowed in strict mode.`,doe=`Duplicate data property in object literal not allowed in strict mode`,rP=`ILLEGAL`,iP=`Disabled.`,foe=RegExp(`[\\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\\u08A0-\\u08B2\\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\\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\\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\\u0C59\\u0C60\\u0C61\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDE\\u0CE0\\u0CE1\\u0CF1\\u0CF2\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D60\\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-\\u13F4\\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-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19C1-\\u19C7\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4B\\u1B83-\\u1BA0\\u1BAE\\u1BAF\\u1BBA-\\u1BE5\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\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-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FCC\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6EF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA78E\\uA790-\\uA7AD\\uA7B0\\uA7B1\\uA7F7-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA8F2-\\uA8F7\\uA8FB\\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-\\uAB5F\\uAB64\\uAB65\\uABC0-\\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]`),poe=RegExp(`[\\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\\u08A0-\\u08B2\\u08E4-\\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\\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\\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\\u0C59\\u0C60-\\u0C63\\u0C66-\\u0C6F\\u0C81-\\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\\u0D01-\\u0D03\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D-\\u0D44\\u0D46-\\u0D48\\u0D4A-\\u0D4E\\u0D57\\u0D60-\\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-\\u13F4\\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\\u1CD0-\\u1CD2\\u1CD4-\\u1CF6\\u1CF8\\u1CF9\\u1D00-\\u1DF5\\u1DFC-\\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\\u200C\\u200D\\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-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FCC\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA62B\\uA640-\\uA66F\\uA674-\\uA67D\\uA67F-\\uA69D\\uA69F-\\uA6F1\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA78E\\uA790-\\uA7AD\\uA7B0\\uA7B1\\uA7F7-\\uA827\\uA840-\\uA873\\uA880-\\uA8C4\\uA8D0-\\uA8D9\\uA8E0-\\uA8F7\\uA8FB\\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-\\uAB5F\\uAB64\\uAB65\\uABC0-\\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-\\uFE2D\\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]`);function aP(e,t){if(!e)throw Error(`ASSERT: `+t)}function oP(e){return e>=48&&e<=57}function sP(e){return`0123456789abcdefABCDEF`.includes(e)}function cP(e){return`01234567`.includes(e)}function moe(e){return e===32||e===9||e===11||e===12||e===160||e>=5760&&[5760,6158,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279].includes(e)}function lP(e){return e===10||e===13||e===8232||e===8233}function uP(e){return e===36||e===95||e>=65&&e<=90||e>=97&&e<=122||e===92||e>=128&&foe.test(String.fromCharCode(e))}function dP(e){return e===36||e===95||e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||e===92||e>=128&&poe.test(String.fromCharCode(e))}var hoe={if:1,in:1,do:1,var:1,for:1,new:1,try:1,let:1,this:1,else:1,case:1,void:1,with:1,enum:1,while:1,break:1,catch:1,throw:1,const:1,yield:1,class:1,super:1,return:1,typeof:1,delete:1,switch:1,export:1,import:1,public:1,static:1,default:1,finally:1,extends:1,package:1,private:1,function:1,continue:1,debugger:1,interface:1,protected:1,instanceof:1,implements:1};function fP(){for(;H<HN;){let e=V.charCodeAt(H);if(moe(e)||lP(e))++H;else break}}function pP(e){var t,n,r,i=0;for(n=e===`u`?4:2,t=0;t<n;++t)H<HN&&sP(V[H])?(r=V[H++],i=i*16+`0123456789abcdef`.indexOf(r.toLowerCase())):TP({},$N,rP);return String.fromCharCode(i)}function goe(){var e=V[H],t=0,n,r;for(e===`}`&&TP({},$N,rP);H<HN&&(e=V[H++],sP(e));)t=t*16+`0123456789abcdef`.indexOf(e.toLowerCase());return(t>1114111||e!==`}`)&&TP({},$N,rP),t<=65535?String.fromCharCode(t):(n=(t-65536>>10)+55296,r=(t-65536&1023)+56320,String.fromCharCode(n,r))}function mP(){var e=V.charCodeAt(H++),t=String.fromCharCode(e);for(e===92&&(V.charCodeAt(H)!==117&&TP({},$N,rP),++H,e=pP(`u`),(!e||e===`\\`||!uP(e.charCodeAt(0)))&&TP({},$N,rP),t=e);H<HN&&(e=V.charCodeAt(H),dP(e));)++H,t+=String.fromCharCode(e),e===92&&(t=t.substr(0,t.length-1),V.charCodeAt(H)!==117&&TP({},$N,rP),++H,e=pP(`u`),(!e||e===`\\`||!dP(e.charCodeAt(0)))&&TP({},$N,rP),t+=e);return t}function _oe(){for(var e=H++,t;H<HN;){if(t=V.charCodeAt(H),t===92)return H=e,mP();if(dP(t))++H;else break}return V.slice(e,H)}function voe(){var e=H,t=V.charCodeAt(H)===92?mP():_oe();return{type:t.length===1?KN:hoe.hasOwnProperty(t)?qN:t===`null`?JN:t===`true`||t===`false`?WN:KN,value:t,start:e,end:H}}function hP(){var e=H,t=V.charCodeAt(H),n,r=V[H],i,a,o;switch(t){case 46:case 40:case 41:case 59:case 44:case 123:case 125:case 91:case 93:case 58:case 63:case 126:return++H,{type:XN,value:String.fromCharCode(t),start:e,end:H};default:if(n=V.charCodeAt(H+1),n===61)switch(t){case 43:case 45:case 47:case 60:case 62:case 94:case 124:case 37:case 38:case 42:return H+=2,{type:XN,value:String.fromCharCode(t)+String.fromCharCode(n),start:e,end:H};case 33:case 61:return H+=2,V.charCodeAt(H)===61&&++H,{type:XN,value:V.slice(e,H),start:e,end:H}}}if(o=V.substr(H,4),o===`>>>=`)return H+=4,{type:XN,value:o,start:e,end:H};if(a=o.substr(0,3),a===`>>>`||a===`<<=`||a===`>>=`)return H+=3,{type:XN,value:a,start:e,end:H};if(i=a.substr(0,2),r===i[1]&&`+-<>&|`.includes(r)||i===`=>`)return H+=2,{type:XN,value:i,start:e,end:H};if(i===`//`&&TP({},$N,rP),`<>=!+-*%&|^/`.includes(r))return++H,{type:XN,value:r,start:e,end:H};TP({},$N,rP)}function yoe(e){let t=``;for(;H<HN&&sP(V[H]);)t+=V[H++];return t.length===0&&TP({},$N,rP),uP(V.charCodeAt(H))&&TP({},$N,rP),{type:YN,value:parseInt(`0x`+t,16),start:e,end:H}}function boe(e){let t=`0`+V[H++];for(;H<HN&&cP(V[H]);)t+=V[H++];return(uP(V.charCodeAt(H))||oP(V.charCodeAt(H)))&&TP({},$N,rP),{type:YN,value:parseInt(t,8),octal:!0,start:e,end:H}}function gP(){var e,t,n=V[H];if(aP(oP(n.charCodeAt(0))||n===`.`,`Numeric literal must start with a decimal digit or a decimal point`),t=H,e=``,n!==`.`){if(e=V[H++],n=V[H],e===`0`){if(n===`x`||n===`X`)return++H,yoe(t);if(cP(n))return boe(t);n&&oP(n.charCodeAt(0))&&TP({},$N,rP)}for(;oP(V.charCodeAt(H));)e+=V[H++];n=V[H]}if(n===`.`){for(e+=V[H++];oP(V.charCodeAt(H));)e+=V[H++];n=V[H]}if(n===`e`||n===`E`){if(e+=V[H++],n=V[H],(n===`+`||n===`-`)&&(e+=V[H++]),oP(V.charCodeAt(H)))for(;oP(V.charCodeAt(H));)e+=V[H++];else TP({},$N,rP)}return uP(V.charCodeAt(H))&&TP({},$N,rP),{type:YN,value:parseFloat(e),start:t,end:H}}function xoe(){var e=``,t,n,r,i,a=!1;for(t=V[H],aP(t===`'`||t===`"`,`String literal must starts with a quote`),n=H,++H;H<HN;){if(r=V[H++],r===t){t=``;break}if(r===`\\`){if(r=V[H++],!r||!lP(r.charCodeAt(0)))switch(r){case`u`:case`x`:V[H]===`{`?(++H,e+=goe()):e+=pP(r);break;case`n`:e+=`
|
|
4
|
+
`;break;case`r`:e+=`\r`;break;case`t`:e+=` `;break;case`b`:e+=`\b`;break;case`f`:e+=`\f`;break;case`v`:e+=`\v`;break;default:cP(r)?(i=`01234567`.indexOf(r),i!==0&&(a=!0),H<HN&&cP(V[H])&&(a=!0,i=i*8+`01234567`.indexOf(V[H++]),`0123`.includes(r)&&H<HN&&cP(V[H])&&(i=i*8+`01234567`.indexOf(V[H++]))),e+=String.fromCharCode(i)):e+=r}else r===`\r`&&V[H]===`
|
|
5
|
+
`&&++H}else if(lP(r.charCodeAt(0)))break;else e+=r}return t!==``&&TP({},$N,rP),{type:ZN,value:e,octal:a,start:n,end:H}}function Soe(e,t){let n=e;t.includes(`u`)&&(n=n.replace(/\\u\{([0-9a-fA-F]+)\}/g,(e,t)=>{if(parseInt(t,16)<=1114111)return`x`;TP({},eP)}).replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,`x`));try{new RegExp(n)}catch{TP({},eP)}try{return new RegExp(e,t)}catch{return null}}function Coe(){var e=V[H],t,n,r,i;for(aP(e===`/`,`Regular expression literal must start with a slash`),t=V[H++],n=!1,r=!1;H<HN;)if(e=V[H++],t+=e,e===`\\`)e=V[H++],lP(e.charCodeAt(0))&&TP({},tP),t+=e;else if(lP(e.charCodeAt(0)))TP({},tP);else if(n)e===`]`&&(n=!1);else if(e===`/`){r=!0;break}else e===`[`&&(n=!0);return r||TP({},tP),i=t.substr(1,t.length-2),{value:i,literal:t}}function woe(){for(var e,t=``,n=``;H<HN&&(e=V[H],dP(e.charCodeAt(0)));)++H,e===`\\`&&H<HN?TP({},$N,rP):(n+=e,t+=e);return n.search(/[^gimuy]/g)>=0&&TP({},eP,n),{value:n,literal:t}}function Toe(){var e,t,n,r;return UN=null,fP(),e=H,t=Coe(),n=woe(),r=Soe(t.value,n.value),{literal:t.literal+n.literal,value:r,regex:{pattern:t.value,flags:n.value},start:e,end:H}}function Eoe(e){return e.type===KN||e.type===qN||e.type===WN||e.type===JN}function _P(){if(fP(),H>=HN)return{type:GN,start:H,end:H};let e=V.charCodeAt(H);return uP(e)?voe():e===40||e===41||e===59?hP():e===39||e===34?xoe():e===46?oP(V.charCodeAt(H+1))?gP():hP():oP(e)?gP():hP()}function vP(){let e=UN;return H=e.end,UN=_P(),H=e.end,e}function yP(){let e=H;UN=_P(),H=e}function Doe(e){let t=new BN(Xae);return t.elements=e,t}function bP(e,t,n){let r=new BN(e===`||`||e===`&&`?toe:Zae);return r.operator=e,r.left=t,r.right=n,r}function Ooe(e,t){let n=new BN(Qae);return n.callee=e,n.arguments=t,n}function koe(e,t,n){let r=new BN($ae);return r.test=e,r.consequent=t,r.alternate=n,r}function xP(e){let t=new BN(QN);return t.name=e,t}function SP(e){let t=new BN(eoe);return t.value=e.value,t.raw=V.slice(e.start,e.end),e.regex&&(t.raw===`//`&&(t.raw=`/(?:)/`),t.regex=e.regex),t}function CP(e,t,n){let r=new BN(noe);return r.computed=e===`[`,r.object=t,r.property=n,r.computed||(n.member=!0),r}function Aoe(e){let t=new BN(roe);return t.properties=e,t}function wP(e,t,n){let r=new BN(ioe);return r.key=t,r.value=n,r.kind=e,r}function joe(e,t){let n=new BN(aoe);return n.operator=e,n.argument=t,n.prefix=!0,n}function TP(e,t){var n,r=Array.prototype.slice.call(arguments,2),i=t.replace(/%(\d)/g,(e,t)=>(aP(t<r.length,`Message reference must be in range`),r[t]));throw n=Error(i),n.index=H,n.description=i,n}function EP(e){e.type===GN&&TP(e,uoe),e.type===YN&&TP(e,ooe),e.type===ZN&&TP(e,soe),e.type===KN&&TP(e,coe),e.type===qN&&TP(e,loe),TP(e,$N,e.value)}function DP(e){let t=vP();(t.type!==XN||t.value!==e)&&EP(t)}function OP(e){return UN.type===XN&&UN.value===e}function kP(e){return UN.type===qN&&UN.value===e}function Moe(){let e=[];for(H=UN.start,DP(`[`);!OP(`]`);)OP(`,`)?(vP(),e.push(null)):(e.push(PP()),OP(`]`)||DP(`,`));return vP(),Doe(e)}function AP(){H=UN.start;let e=vP();return e.type===ZN||e.type===YN?(e.octal&&TP(e,nP),SP(e)):xP(e.value)}function Noe(){var e,t,n,r;if(H=UN.start,e=UN,e.type===KN)return n=AP(),DP(`:`),r=PP(),wP(`init`,n,r);if(e.type===GN||e.type===XN)EP(e);else return t=AP(),DP(`:`),r=PP(),wP(`init`,t,r)}function Poe(){var e=[],t,n,r,i={},a=String;for(H=UN.start,DP(`{`);!OP(`}`);)t=Noe(),n=t.key.type===QN?t.key.name:a(t.key.value),r=`$`+n,Object.prototype.hasOwnProperty.call(i,r)?TP({},doe):i[r]=!0,e.push(t),OP(`}`)||DP(`,`);return DP(`}`),Aoe(e)}function Foe(){DP(`(`);let e=FP();return DP(`)`),e}var Ioe={if:1};function Loe(){var e,t,n;if(OP(`(`))return Foe();if(OP(`[`))return Moe();if(OP(`{`))return Poe();if(e=UN.type,H=UN.start,e===KN||Ioe[UN.value])n=xP(vP().value);else if(e===ZN||e===YN)UN.octal&&TP(UN,nP),n=SP(vP());else if(e===qN)throw Error(iP);else e===WN?(t=vP(),t.value=t.value===`true`,n=SP(t)):e===JN?(t=vP(),t.value=null,n=SP(t)):OP(`/`)||OP(`/=`)?(n=SP(Toe()),yP()):EP(vP());return n}function Roe(){let e=[];if(DP(`(`),!OP(`)`))for(;H<HN&&(e.push(PP()),!OP(`)`));)DP(`,`);return DP(`)`),e}function zoe(){H=UN.start;let e=vP();return Eoe(e)||EP(e),xP(e.value)}function Boe(){return DP(`.`),zoe()}function Voe(){DP(`[`);let e=FP();return DP(`]`),e}function Hoe(){for(var e=Loe(),t,n;;)if(OP(`.`))n=Boe(),e=CP(`.`,e,n);else if(OP(`(`))t=Roe(),e=Ooe(e,t);else if(OP(`[`))n=Voe(),e=CP(`[`,e,n);else break;return e}function jP(){let e=Hoe();if(UN.type===XN&&(OP(`++`)||OP(`--`)))throw Error(iP);return e}function MP(){var e,t;if(UN.type!==XN&&UN.type!==qN)t=jP();else if(OP(`++`)||OP(`--`))throw Error(iP);else if(OP(`+`)||OP(`-`)||OP(`~`)||OP(`!`))e=vP(),t=MP(),t=joe(e.value,t);else if(kP(`delete`)||kP(`void`)||kP(`typeof`))throw Error(iP);else t=jP();return t}function NP(e){let t=0;if(e.type!==XN&&e.type!==qN)return 0;switch(e.value){case`||`:t=1;break;case`&&`:t=2;break;case`|`:t=3;break;case`^`:t=4;break;case`&`:t=5;break;case`==`:case`!=`:case`===`:case`!==`:t=6;break;case`<`:case`>`:case`<=`:case`>=`:case`instanceof`:case`in`:t=7;break;case`<<`:case`>>`:case`>>>`:t=8;break;case`+`:case`-`:t=9;break;case`*`:case`/`:case`%`:t=11}return t}function Uoe(){var e=UN,t,n,r,i,a,o,s,c=MP(),l;if(r=UN,i=NP(r),i===0)return c;for(r.prec=i,vP(),t=[e,UN],o=MP(),a=[c,r,o];(i=NP(UN))>0;){for(;a.length>2&&i<=a[a.length-2].prec;)o=a.pop(),s=a.pop().value,c=a.pop(),t.pop(),n=bP(s,c,o),a.push(n);r=vP(),r.prec=i,a.push(r),t.push(UN),n=MP(),a.push(n)}for(l=a.length-1,n=a[l],t.pop();l>1;)t.pop(),n=bP(a[l-1].value,a[l-2],n),l-=2;return n}function PP(){var e=Uoe(),t,n;return OP(`?`)&&(vP(),t=PP(),DP(`:`),n=PP(),e=koe(e,t,n)),e}function FP(){let e=PP();if(OP(`,`))throw Error(iP);return e}function Woe(e){V=e,H=0,HN=V.length,UN=null,yP();let t=FP();if(UN.type!==GN)throw Error(`Unexpect token after expression.`);return t}var IP={NaN:`NaN`,E:`Math.E`,LN2:`Math.LN2`,LN10:`Math.LN10`,LOG2E:`Math.LOG2E`,LOG10E:`Math.LOG10E`,PI:`Math.PI`,SQRT1_2:`Math.SQRT1_2`,SQRT2:`Math.SQRT2`,MIN_VALUE:`Number.MIN_VALUE`,MAX_VALUE:`Number.MAX_VALUE`};function LP(e){function t(t,n,r,i){let a=e(n[0]);return r&&(a=r+`(`+a+`)`,r.lastIndexOf(`new `,0)===0&&(a=`(`+a+`)`)),a+`.`+t+(i<0?``:i===0?`()`:`(`+n.slice(1).map(e).join(`,`)+`)`)}function n(e,n,r){return i=>t(e,i,n,r)}let r=`new Date`,i=`String`,a=`RegExp`;return{isNaN:`Number.isNaN`,isFinite:`Number.isFinite`,abs:`Math.abs`,acos:`Math.acos`,asin:`Math.asin`,atan:`Math.atan`,atan2:`Math.atan2`,ceil:`Math.ceil`,cos:`Math.cos`,exp:`Math.exp`,floor:`Math.floor`,hypot:`Math.hypot`,log:`Math.log`,max:`Math.max`,min:`Math.min`,pow:`Math.pow`,random:`Math.random`,round:`Math.round`,sin:`Math.sin`,sqrt:`Math.sqrt`,tan:`Math.tan`,clamp:function(t){t.length<3&&j(`Missing arguments to clamp function.`),t.length>3&&j(`Too many arguments to clamp function.`);let n=t.map(e);return`Math.max(`+n[1]+`, Math.min(`+n[2]+`,`+n[0]+`))`},now:`Date.now`,utc:`Date.UTC`,datetime:r,date:n(`getDate`,r,0),day:n(`getDay`,r,0),year:n(`getFullYear`,r,0),month:n(`getMonth`,r,0),hours:n(`getHours`,r,0),minutes:n(`getMinutes`,r,0),seconds:n(`getSeconds`,r,0),milliseconds:n(`getMilliseconds`,r,0),time:n(`getTime`,r,0),timezoneoffset:n(`getTimezoneOffset`,r,0),utcdate:n(`getUTCDate`,r,0),utcday:n(`getUTCDay`,r,0),utcyear:n(`getUTCFullYear`,r,0),utcmonth:n(`getUTCMonth`,r,0),utchours:n(`getUTCHours`,r,0),utcminutes:n(`getUTCMinutes`,r,0),utcseconds:n(`getUTCSeconds`,r,0),utcmilliseconds:n(`getUTCMilliseconds`,r,0),length:n(`length`,null,-1),parseFloat:`parseFloat`,parseInt:`parseInt`,upper:n(`toUpperCase`,i,0),lower:n(`toLowerCase`,i,0),substring:n(`substring`,i),split:n(`split`,i),trim:n(`trim`,i,0),btoa:`btoa`,atob:`atob`,encodeURIComponent:`encodeURIComponent`,regexp:a,test:n(`test`,a),if:function(t){t.length<3&&j(`Missing arguments to if function.`),t.length>3&&j(`Too many arguments to if function.`);let n=t.map(e);return`(`+n[0]+`?`+n[1]+`:`+n[2]+`)`}}}function Goe(e){let t=e&&e.length-1;return t&&(e[0]===`"`&&e[t]===`"`||e[0]===`'`&&e[t]===`'`)?e.slice(1,-1):e}function RP(e){e||={};let t=e.allowed?_(e.allowed):{},n=e.forbidden?_(e.forbidden):{},r=e.constants||IP,i=(e.functions||LP)(d),a=e.globalvar,o=e.fieldvar,s=m(a)?a:e=>`${a}["${e}"]`,c={},l={},u=0;function d(e){if(P(e))return e;let t=f[e.type];return t??j(`Unsupported type: `+e.type),t(e)}let f={Literal:e=>e.raw,Identifier:e=>{let i=e.name;return u>0?i:T(n,i)?j(`Illegal identifier: `+i):T(r,i)?r[i]:T(t,i)?i:(c[i]=1,s(i))},MemberExpression:e=>{let t=!e.computed,n=d(e.object);t&&(u+=1);let r=d(e.property);return n===o&&(l[Goe(r)]=1),t&&--u,n+(t?`.`+r:`[`+r+`]`)},CallExpression:e=>{e.callee.type!==`Identifier`&&j(`Illegal callee type: `+e.callee.type);let t=e.callee.name,n=e.arguments,r=T(i,t)&&i[t];return r||j(`Unrecognized function: `+t),m(r)?r(n):r+`(`+n.map(d).join(`,`)+`)`},ArrayExpression:e=>`[`+e.elements.map(d).join(`,`)+`]`,BinaryExpression:e=>`(`+d(e.left)+` `+e.operator+` `+d(e.right)+`)`,UnaryExpression:e=>`(`+e.operator+d(e.argument)+`)`,ConditionalExpression:e=>`(`+d(e.test)+`?`+d(e.consequent)+`:`+d(e.alternate)+`)`,LogicalExpression:e=>`(`+d(e.left)+e.operator+d(e.right)+`)`,ObjectExpression:e=>{for(let t of e.properties){let e=t.key.type===`Literal`?String(t.key.value):t.key.name;be.has(e)&&j(`Illegal property: `+e)}return`{`+e.properties.map(d).join(`,`)+`}`},Property:e=>{u+=1;let t=d(e.key);return--u,t+`:`+d(e.value)}};function p(e){let t={code:d(e),globals:Object.keys(c),fields:Object.keys(l)};return c={},l={},t}return p.functions=i,p.constants=r,p}var zP=Symbol(`vega_selection_getter`);function BP(e){return(!e.getter||!e.getter[zP])&&(e.getter=ge(e.field),e.getter[zP]=!0),e.getter}var VP=`intersect`,HP=`union`,Koe=`vlMulti`,qoe=`vlPoint`,UP=`or`,Joe=`and`,WP=`_vgsid_`,GP=ge(WP),Yoe=`E`,Xoe=`R`,Zoe=`R-E`,Qoe=`R-LE`,$oe=`R-RE`,ese=`E-LT`,tse=`E-LTE`,nse=`E-GT`,rse=`E-GTE`,ise=`E-VALID`,ase=`E-ONE`,KP=`index:unit`;function qP(e,t){for(var n=t.fields,r=t.values,i=n.length,a=0,o,s;a<i;++a)if(s=n[a],o=BP(s)(e),f(o)&&(o=O(o)),f(r[a])&&(r[a]=O(r[a])),N(r[a])&&f(r[a][0])&&(r[a]=r[a].map(O)),s.type===Yoe){if(N(r[a])?!r[a].includes(o):o!==r[a])return!1}else if(s.type===Xoe){if(!hr(o,r[a]))return!1}else if(s.type===$oe){if(!hr(o,r[a],!0,!1))return!1}else if(s.type===Zoe){if(!hr(o,r[a],!1,!1))return!1}else if(s.type===Qoe){if(!hr(o,r[a],!1,!0))return!1}else if(s.type===ese){if(o>=r[a])return!1}else if(s.type===tse){if(o>r[a])return!1}else if(s.type===nse){if(o<=r[a])return!1}else if(s.type===rse){if(o<r[a])return!1}else if(s.type===ise){if(o===null||isNaN(o))return!1}else if(s.type===ase&&r[a].indexOf(o)===-1)return!1;return!0}function JP(e,t,n){for(var r=this.context.data[e],i=r?r.values.value:[],a=r?r[KP]&&r[KP].value:void 0,o=n===VP,s=i.length,c=0,l,u,d,f,p;c<s;++c)if(l=i[c],a&&o){if(u||={},d=u[f=l.unit]||0,d===-1)continue;if(p=qP(t,l),u[f]=p?-1:++d,p&&a.size===1)return!0;if(!p&&d===a.get(f).count)return!1}else if(p=qP(t,l),o^p)return p;return s&&o}var YP=Le(GP),ose=YP.left,sse=YP.right;function XP(e,t,n){let r=this.context.data[e],i=r?r.values.value:[],a=r?r[KP]&&r[KP].value:void 0,o=n===VP,s=GP(t),c=ose(i,s);if(c===i.length||GP(i[c])!==s)return!1;if(a&&o){if(a.size===1)return!0;if(sse(i,s)-c<a.size)return!1}return!0}function ZP(e,t){return N(e)||j(`First argument to selectionTuples must be an array.`),M(t)||j(`Second argument to selectionTuples must be an object.`),e.map(e=>D(t.fields?{values:t.fields.map(t=>BP(t)(e.datum))}:{[WP]:GP(e.datum)},t))}function QP(e,t,n,r){for(var i=this.context.data[e],a=i?i.values.value:[],o={},s={},c={},l,u,d,f,p,m,h,g,_,v,y=a.length,b=0,x,S;b<y;++b)if(l=a[b],f=l.unit,u=l.fields,d=l.values,u&&d){for(x=0,S=u.length;x<S;++x)p=u[x],h=o[p.field]||(o[p.field]={}),g=h[f]||(h[f]=[]),c[p.field]=_=p.type.charAt(0),v=$P[`${_}_union`],h[f]=v(g,k(d[x]));n&&(g=s[f]||(s[f]=[]),g.push(k(d).reduce((e,t,n)=>(e[u[n].field]=t,e),{})))}else p=WP,m=GP(l),h=o[p]||(o[p]={}),g=h[f]||(h[f]=[]),g.push(m),n&&(g=s[f]||(s[f]=[]),g.push({[WP]:m}));if(t||=HP,o[WP]?o[WP]=$P[`${WP}_${t}`](...Object.values(o[WP])):Object.keys(o).forEach(e=>{o[e]=Object.keys(o[e]).map(t=>o[e][t]).reduce((n,r)=>n===void 0?r:$P[`${c[e]}_${t}`](n,r))}),a=Object.keys(s),n&&a.length){let e=r?qoe:Koe;o[e]=t===HP?{[UP]:a.reduce((e,t)=>(e.push(...s[t]),e),[])}:{[Joe]:a.map(e=>({[UP]:s[e]}))}}return o}var $P={[`${WP}_union`]:Hr,[`${WP}_intersect`]:Br,E_union:function(e,t){if(!e.length)return t;for(var n=0,r=t.length;n<r;++n)e.includes(t[n])||e.push(t[n]);return e},E_intersect:function(e,t){return e.length?e.filter(e=>t.includes(e)):t},R_union:function(e,t){var n=O(t[0]),r=O(t[1]);return n>r&&(n=t[1],r=t[0]),e.length?(e[0]>n&&(e[0]=n),e[1]<r&&(e[1]=r),e):[n,r]},R_intersect:function(e,t){var n=O(t[0]),r=O(t[1]);return n>r&&(n=t[1],r=t[0]),e.length?r<e[0]||e[1]<n?[]:(e[0]<n&&(e[0]=n),e[1]>r&&(e[1]=r),e):[n,r]}},cse=`:`;function eF(e,t,n,r){t[0].type!==`Literal`&&j(`First argument to selection functions must be a string literal.`);let i=t[0].value,a=t.length>=2&&A(t).value,o=`@unit`,s=cse+i;a===VP&&!T(r,o)&&(r[o]=n.getData(i).indataRef(n,`unit`)),T(r,s)||(r[s]=n.getData(i).tuplesRef())}function tF(e){let t=this.context.data[e];return t?t.values.value:[]}function lse(e,t,n){let r=this.context.data[e][`index:`+t],i=r?r.value.get(n):void 0;return i&&i.count}function use(e,t){let n=this.context.dataflow,r=this.context.data[e].input;return n.pulse(r,n.changeset().remove(De).insert(t)),1}var dse={easeLinear:dae,easeQuad:SN,easeQuadIn:fae,easeQuadOut:pae,easeQuadInOut:SN,easeCubic:_n,easeCubicIn:Sn,easeCubicOut:bn,easeCubicInOut:_n,easePoly:wN,easePolyIn:mae,easePolyOut:hae,easePolyInOut:wN,easeSin:DN,easeSinIn:gae,easeSinOut:_ae,easeSinInOut:DN,easeExp:kN,easeExpIn:vae,easeExpOut:yae,easeExpInOut:kN,easeCircle:AN,easeCircleIn:bae,easeCircleOut:xae,easeCircleInOut:AN,easeBounce:NN,easeBounceIn:Aae,easeBounceOut:NN,easeBounceInOut:jae,easeBack:FN,easeBackIn:Mae,easeBackOut:Nae,easeBackInOut:FN,easeElastic:zN,easeElasticIn:Pae,easeElasticOut:zN,easeElasticInOut:Fae};function fse(e,t,n){if(e){let n=this.context.dataflow,r=e.mark.source;n.pulse(r,n.changeset().encode(e,t))}return n===void 0?e:n}function pse(e,t){if(!N(e)||!e.length)return;let n=e.length,r=e[0],i=+t;if(n===1||!(i>0))return r;if(i>=1)return A(e);let a=i*(n-1),o=Math.floor(a),s=a-o;return s?e[o]+s*(e[o+1]-e[o]):e[o]}var nF=e=>function(t,n){let r=this.context.dataflow.locale();return t===null?`null`:r[e](n)(t)},mse=nF(`format`),rF=nF(`timeFormat`),hse=nF(`utcFormat`),gse=nF(`timeParse`),_se=nF(`utcParse`),iF=new Date(2e3,0,1);function aF(e,t,n){return!Number.isInteger(e)||!Number.isInteger(t)?``:(iF.setYear(2e3),iF.setMonth(e),iF.setDate(t),rF.call(this,iF,n))}function vse(e){return aF.call(this,e,1,`%B`)}function yse(e){return aF.call(this,e,1,`%b`)}function bse(e){return aF.call(this,0,2+e,`%A`)}function xse(e){return aF.call(this,0,2+e,`%a`)}function oF(e,t,n,r){t[0].type!==`Literal`&&j(`First argument to data functions must be a string literal.`);let i=t[0].value,a=`:`+i;if(!T(a,r))try{r[a]=n.getData(i).tuplesRef()}catch{}}function Sse(e,t,n,r){t[0].type!==`Literal`&&j(`First argument to indata must be a string literal.`),t[1].type!==`Literal`&&j(`Second argument to indata must be a string literal.`);let i=t[0].value,a=t[1].value,o=`@`+a;T(o,r)||(r[o]=n.getData(i).indataRef(n,a))}function sF(e,t,n,r){if(t[0].type===`Literal`)cF(n,r,t[0].value);else for(e in n.scales)cF(n,r,e)}function cF(e,t,n){let r=`%`+n;if(!T(t,r))try{t[r]=e.scaleRef(n)}catch{}}function lF(e,t){if(P(e)){let n=t.scales[e];return n&&xl(n.value)?n.value:void 0}if(m(e))return xl(e)?e:void 0}function Cse(e,t,n){t.__bandwidth=e=>e&&e.bandwidth?e.bandwidth():0,n._bandwidth=sF,n._range=sF,n._scale=sF;let r=t=>`_[`+(t.type===`Literal`?p(`%`+t.value):p(`%`)+`+`+e(t))+`]`;return{_bandwidth:e=>`this.__bandwidth(${r(e[0])})`,_range:e=>`${r(e[0])}.range()`,_scale:t=>`${r(t[0])}(${e(t[1])})`}}function uF(e,t){return function(n,r,i){if(n){let t=lF(n,(i||this).context);return t&&t.path[e](r)}return t(r)}}var wse=uF(`area`,Xv),Tse=uF(`bounds`,Ey),Ese=uF(`centroid`,Yy);function Dse(e,t){let n=lF(e,(t||this).context);return n&&n.scale()}function Ose(e,t){let n=lF(e,(t||this).context);return n&&n.translate()}function kse(e){let t=this.context.group,n=!1;if(t)for(;e;){if(e===t){n=!0;break}e=e.mark.group}return n}function dF(e,t,n){try{e[t].apply(e,[`EXPRESSION`].concat([].slice.call(n)))}catch(t){e.warn(t)}return n[n.length-1]}function Ase(){return dF(this.context.dataflow,`warn`,arguments)}function jse(){return dF(this.context.dataflow,`info`,arguments)}function Mse(){return dF(this.context.dataflow,`debug`,arguments)}function fF(e){let t=e/255;return t<=.03928?t/12.92:((t+.055)/1.055)**2.4}function pF(e){let t=$t(e),n=fF(t.r),r=fF(t.g),i=fF(t.b);return .2126*n+.7152*r+.0722*i}function Nse(e,t){let n=pF(e),r=pF(t),i=Math.max(n,r),a=Math.min(n,r);return(i+.05)/(a+.05)}function Pse(){let e=[].slice.call(arguments);return e.unshift({}),D(...e)}function mF(e,t){return e===t||e!==e&&t!==t?!0:N(e)?N(t)&&e.length===t.length?Fse(e,t):!1:M(e)&&M(t)?hF(e,t):!1}function Fse(e,t){for(let n=0,r=e.length;n<r;++n)if(!mF(e[n],t[n]))return!1;return!0}function hF(e,t){for(let n in e)if(!mF(e[n],t[n]))return!1;return!0}function gF(e){return t=>hF(e,t)}function Ise(e,t,n,r,i,a){let o=this.context.dataflow,s=this.context.data[e],c=s.input,l=o.stamp(),u=s.changes,d,f;if(o._trigger===!1||!(c.value.length||t||r))return 0;if((!u||u.stamp<l)&&(s.changes=u=o.changeset(),u.stamp=l,o.runAfter(()=>{s.modified=!0,o.pulse(c,u).run()},!0,1)),n&&(d=n===!0?De:N(n)||Yr(n)?n:gF(n),u.remove(d)),t&&u.insert(t),r&&(d=gF(r),c.value.some(d)?u.remove(d):u.insert(r)),i){if(m(i))throw Error(`modify parameter must be a data tuple, not a function`);for(f in a)u.modify(i,f,a[f])}return 1}function Lse(e){let t=e.touches,n=t[0].clientX-t[1].clientX,r=t[0].clientY-t[1].clientY;return Math.hypot(n,r)}function Rse(e){let t=e.touches;return Math.atan2(t[0].clientY-t[1].clientY,t[0].clientX-t[1].clientX)}var _F={};function zse(e,t){let n=_F[t]||(_F[t]=ge(t));return N(e)?e.map(n):n(e)}function vF(e){return N(e)||ArrayBuffer.isView(e)?e:null}function yF(e){return vF(e)||(P(e)?e:null)}function Bse(e,...t){return vF(e).join(...t)}function Vse(e,...t){return yF(e).indexOf(...t)}function Hse(e,...t){return yF(e).lastIndexOf(...t)}function Use(e,...t){return yF(e).slice(...t)}function Wse(e,t,n){return m(n)&&j(`Function argument passed to replace.`),!P(t)&&!_r(t)&&j(`Please pass a string or RegExp argument to replace.`),String(e).replace(t,n)}function Gse(e){return vF(e).slice().reverse()}function Kse(e){return vF(e).slice().sort(h)}function qse(e,t,n){return Uc(e||0,t||0,n||0)}function Jse(e,t){let n=lF(e,(t||this).context);return n&&n.bandwidth?n.bandwidth():0}function Yse(e,t){let n=lF(e,(t||this).context);return n?n.copy():void 0}function Xse(e,t){let n=lF(e,(t||this).context);return n?n.domain():[]}function Zse(e,t,n){let r=lF(e,(n||this).context);return r?N(t)?(r.invertRange||r.invert)(t):(r.invert||r.invertExtent)(t):void 0}function Qse(e,t){let n=lF(e,(t||this).context);return n&&n.range?n.range():[]}function $se(e,t,n){let r=lF(e,(n||this).context);return r?r(t):void 0}function ece(e,t,n,r,i){e=lF(e,(i||this).context);let a=lu(t,n),o=e.domain(),s=o[0],c=A(o),l=ne;return c-s?l=Ll(e,s,c):e=(e.interpolator?Cl(`sequential`)().interpolator(e.interpolator()):Cl(`linear`)().interpolate(e.interpolate()).range(e.range())).domain([s=0,c=1]),e.ticks&&(o=e.ticks(+r||15),s!==o[0]&&o.unshift(s),c!==A(o)&&o.push(c)),o.forEach(t=>a.stop(l(t),e(t))),a}function tce(e,t,n){let r=lF(e,(n||this).context);return function(e){return r?r.path.context(e)(t):``}}function nce(e){let t=null;return function(n){return n?ju(n,t||=_u(e)):e}}var bF=e=>e.data;function xF(e,t){let n=tF.call(t,e);return n.root&&n.root.lookup||{}}function rce(e,t,n){let r=xF(e,this),i=r[t],a=r[n];return i&&a?i.path(a).map(bF):void 0}function ice(e,t){let n=xF(e,this)[t];return n?n.ancestors().map(bF):void 0}var SF=()=>typeof window<`u`&&window||null;function ace(){let e=SF();return e?e.screen:{}}function oce(){let e=SF();return e?[e.innerWidth,e.innerHeight]:[void 0,void 0]}function sce(){let e=this.context.dataflow,t=e.container&&e.container();return t?[t.clientWidth,t.clientHeight]:[void 0,void 0]}function CF(e,t,n){if(!e)return[];let[r,i]=e,a=new jd().set(r[0],r[1],i[0],i[1]);return Nh(n||this.context.dataflow.scenegraph().root,a,cce(t))}function cce(e){let t=null;if(e){let n=k(e.marktype),r=k(e.markname);t=e=>(!n.length||n.some(t=>e.marktype===t))&&(!r.length||r.some(t=>e.name===t))}return t}function lce(e,t,n,r=5){e=k(e);let i=e[e.length-1];return i===void 0||Math.hypot(i[0]-t,i[1]-n)>r?[...e,[t,n]]:e}function uce(e){return k(e).reduce((t,[n,r],i)=>t+=i==0?`M ${n},${r} `:i===e.length-1?` Z`:`L ${n},${r} `,``)}function dce(e,t,n){let{x:r,y:i,mark:a}=n,o=new jd().set(2**53-1,2**53-1,-(2**53-1),-(2**53-1));for(let[e,n]of t)e<o.x1&&(o.x1=e),e>o.x2&&(o.x2=e),n<o.y1&&(o.y1=n),n>o.y2&&(o.y2=n);return o.translate(r,i),CF([[o.x1,o.y1],[o.x2,o.y2]],e,a).filter(e=>fce(e.x,e.y,t))}function fce(e,t,n){let r=0;for(let i=0,a=n.length-1;i<n.length;a=i++){let[o,s]=n[a],[c,l]=n[i];l>t!=s>t&&e<(o-c)*(t-l)/(s-l)+c&&r++}return r&1}var wF={random(){return oa()},cumulativeNormal:va,cumulativeLogNormal:Ta,cumulativeUniform:ja,densityNormal:_a,densityLogNormal:wa,densityUniform:Aa,quantileNormal:ya,quantileLogNormal:Ea,quantileUniform:Ma,sampleNormal:ga,sampleLogNormal:Ca,sampleUniform:ka,isArray:N,isBoolean:gr,isDate:f,isDefined(e){return e!==void 0},isNumber:o,isObject:M,isRegExp:_r,isString:P,isTuple:Yr,isValid(e){return e!=null&&e===e},toBoolean:u,toDate(e){return b(e)},toNumber:O,toString:v,indexof:Vse,join:Bse,lastindexof:Hse,replace:Wse,reverse:Gse,sort:Kse,slice:Use,flush:mr,lerp:vr,interpolateLinear:pse,merge:Pse,pad:Sr,peek:A,pluck:zse,span:g,inrange:hr,truncate:Cr,rgb:$t,lab:st,hcl:at,hsl:en,luminance:pF,contrast:Nse,sequence:ct,format:mse,utcFormat:hse,utcParse:_se,utcOffset:l,utcSequence:c,timeFormat:rF,timeParse:gse,timeOffset:re,timeSequence:Me,timeUnitSpecifier:C,monthFormat:vse,monthAbbrevFormat:yse,dayFormat:bse,dayAbbrevFormat:xse,quarter:or,utcquarter:sr,week:pe,utcweek:a,isoweek:ee,utcisoweek:me,dayofyear:le,utcdayofyear:y,warn:Ase,info:jse,debug:Mse,extent(e){return ur(e)},inScope:kse,intersect:CF,clampRange:cr,pinchDistance:Lse,pinchAngle:Rse,screen:ace,containerSize:sce,windowSize:oce,bandspace:qse,setdata:use,pathShape:nce,panLinear:Zn,panLog:Qn,panPow:$n,panSymlog:er,zoomLinear:nr,zoomLog:rr,zoomPow:ir,zoomSymlog:ar,encode:fse,modify:Ise,lassoAppend:lce,lassoPath:uce,intersectLasso:dce,...dse},pce=[`view`,`item`,`group`,`xy`,`x`,`y`],mce=`event.vega.`,TF=`this.`,EF={},DF={forbidden:[`_`],allowed:[`datum`,`event`,`item`],fieldvar:`datum`,globalvar:e=>`_[${p(`$`+e)}]`,functions:hce,constants:IP,visitors:EF},OF=RP(DF);function hce(e){let t=LP(e);pce.forEach(e=>t[e]=mce+e);for(let e in wF)t[e]=TF+e;return D(t,Cse(e,wF,EF)),t}function kF(e,t,n){return arguments.length===1?wF[e]:(wF[e]=t,n&&(EF[e]=n),OF&&(OF.functions[e]=TF+e),this)}kF(`bandwidth`,Jse,sF),kF(`copy`,Yse,sF),kF(`domain`,Xse,sF),kF(`range`,Qse,sF),kF(`invert`,Zse,sF),kF(`scale`,$se,sF),kF(`gradient`,ece,sF),kF(`geoArea`,wse,sF),kF(`geoBounds`,Tse,sF),kF(`geoCentroid`,Ese,sF),kF(`geoShape`,tce,sF),kF(`geoScale`,Dse,sF),kF(`geoTranslate`,Ose,sF),kF(`indata`,lse,Sse),kF(`data`,tF,oF),kF(`treePath`,rce,oF),kF(`treeAncestors`,ice,oF),kF(`vlSelectionTest`,JP,eF),kF(`vlSelectionIdTest`,XP,eF),kF(`vlSelectionResolve`,QP,eF),kF(`vlSelectionTuples`,ZP);function AF(e,t){let n={},r;try{e=P(e)?e:p(e)+``,r=Woe(e)}catch{j(`Expression parse error: `+e)}r.visit(e=>{if(e.type!==`CallExpression`)return;let r=e.callee.name,i=DF.visitors[r];i&&i(r,e.arguments,t,n)});let i=OF(r);return i.globals.forEach(e=>{let r=`$`+e;!T(n,r)&&t.getSignal(e)&&(n[r]=t.signalRef(e))}),{$expr:D({code:i.code},t.options.ast?{ast:r}:null),$fields:i.fields,$params:n}}function gce(e){let t=this,n=e.operators||[];return e.background&&(t.background=e.background),e.eventConfig&&(t.eventConfig=e.eventConfig),e.locale&&(t.locale=e.locale),n.forEach(e=>t.parseOperator(e)),n.forEach(e=>t.parseOperatorParameters(e)),(e.streams||[]).forEach(e=>t.parseStream(e)),(e.updates||[]).forEach(e=>t.parseUpdate(e)),t.resolve()}var _ce=_([`rule`]),jF=_([`group`,`image`,`rect`]);function vce(e,t){let n=``;return _ce[t]?n:(e.x2&&(e.x?(jF[t]&&(n+=`if(o.x>o.x2)$=o.x,o.x=o.x2,o.x2=$;`),n+=`o.width=o.x2-o.x;`):n+=`o.x=o.x2-(o.width||0);`),e.xc&&(n+=`o.x=o.xc-(o.width||0)/2;`),e.y2&&(e.y?(jF[t]&&(n+=`if(o.y>o.y2)$=o.y,o.y=o.y2,o.y2=$;`),n+=`o.height=o.y2-o.y;`):n+=`o.y=o.y2-(o.height||0);`),e.yc&&(n+=`o.y=o.yc-(o.height||0)/2;`),n)}function MF(e){return(e+``).toLowerCase()}function yce(e){return MF(e)===`operator`}function bce(e){return MF(e)===`collect`}function NF(e,t,n){n.endsWith(`;`)||(n=`return(`+n+`);`);let r=Function(...t.concat(n));return e&&e.functions?r.bind(e.functions):r}function xce(e,t,n,r){return`((u = ${e}) < (v = ${t}) || u == null) && v != null ? ${n}
|
|
6
|
+
: (u > v || v == null) && u != null ? ${r}
|
|
7
|
+
: ((v = v instanceof Date ? +v : v), (u = u instanceof Date ? +u : u)) !== u && v === v ? ${n}
|
|
8
|
+
: v !== v && u === u ? ${r} : `}var Sce={operator:(e,t)=>NF(e,[`_`],t.code),parameter:(e,t)=>NF(e,[`datum`,`_`],t.code),event:(e,t)=>NF(e,[`event`],t.code),handler:(e,t)=>NF(e,[`_`,`event`],`var datum=event.item&&event.item.datum;return ${t.code};`),encode:(e,t)=>{let{marktype:n,channels:r}=t,i=`var o=item,datum=o.datum,m=0,$;`;for(let e in r){let t=`o[`+p(e)+`]`;i+=`$=${r[e].code};if(${t}!==$)${t}=$,m=1;`}return i+=vce(r,n),i+=`return m;`,NF(e,[`item`,`_`],i)},codegen:{get(e){let t=`[${e.map(p).join(`][`)}]`,n=Function(`_`,`return _${t};`);return n.path=t,n},comparator(e,t){let n,r=Function(`a`,`b`,`var u, v; return `+e.map((e,r)=>{let i=t[r],a,o;return e.path?(a=`a${e.path}`,o=`b${e.path}`):((n||={})[`f`+r]=e,a=`this.f${r}(a)`,o=`this.f${r}(b)`),xce(a,o,-i,i)}).join(``)+`0;`);return n?r.bind(n):r}}};function Cce(e){let t=this;yce(e.type)||!e.type?t.operator(e,e.update?t.operatorExpression(e.update):null):t.transform(e,e.type)}function wce(e){let t=this;if(e.params){let n=t.get(e.id);n||j(`Invalid operator id: `+e.id),t.dataflow.connect(n,n.parameters(t.parseParameters(e.params),e.react,e.initonly))}}function Tce(e,t){t||={};let n=this;for(let r in e){let i=e[r];t[r]=N(i)?i.map(e=>PF(e,n,t)):PF(i,n,t)}return t}function PF(e,t,n){if(!e||!M(e))return e;for(let r=0,i=FF.length,a;r<i;++r)if(a=FF[r],T(e,a.key))return a.parse(e,t,n);return e}var FF=[{key:`$ref`,parse:Ece},{key:`$key`,parse:Oce},{key:`$expr`,parse:Dce},{key:`$field`,parse:kce},{key:`$encode`,parse:LF},{key:`$compare`,parse:IF},{key:`$context`,parse:RF},{key:`$subflow`,parse:zF},{key:`$tupleid`,parse:BF}];function Ece(e,t){return t.get(e.$ref)||j(`Operator not defined: `+e.$ref)}function Dce(e,t,n){e.$params&&t.parseParameters(e.$params,n);let r=`e:`+e.$expr.code;return t.fn[r]||(t.fn[r]=ce(t.parameterExpression(e.$expr),e.$fields))}function Oce(e,t){let n=`k:`+e.$key+`_`+!!e.$flat;return t.fn[n]||(t.fn[n]=S(e.$key,e.$flat,t.expr.codegen))}function kce(e,t){if(!e.$field)return null;let n=`f:`+e.$field+`_`+e.$name;return t.fn[n]||(t.fn[n]=ge(e.$field,e.$name,t.expr.codegen))}function IF(e,t){let n=`c:`+e.$compare+`_`+e.$order,r=k(e.$compare).map(e=>e&&e.$tupleid?I:e);return t.fn[n]||(t.fn[n]=we(r,e.$order,t.expr.codegen))}function LF(e,t){let n=e.$encode,r={};for(let e in n){let i=n[e];r[e]=ce(t.encodeExpression(i.$expr),i.$fields),r[e].output=i.$output}return r}function RF(e,t){return t}function zF(e,t){let n=e.$subflow;return function(e,r,i){let a=t.fork().parse(n),o=a.get(n.operators[0].id),s=a.signals.parent;return s&&s.set(i),o.detachSubflow=()=>t.detach(a),o}}function BF(){return I}function VF(e){var t=this,n=e.filter==null?void 0:t.eventExpression(e.filter),r=e.stream==null?void 0:t.get(e.stream),i;e.source?r=t.events(e.source,e.type,n):e.merge&&(i=e.merge.map(e=>t.get(e)),r=i[0].merge.apply(i[0],i.slice(1))),e.between&&(i=e.between.map(e=>t.get(e)),r=r.between(i[0],i[1])),e.filter&&(r=r.filter(n)),e.throttle!=null&&(r=r.throttle(+e.throttle)),e.debounce!=null&&(r=r.debounce(+e.debounce)),r??j(`Invalid stream definition: `+JSON.stringify(e)),e.consume&&r.consume(!0),t.stream(e,r)}function HF(e){var t=this,n=M(n=e.source)?n.$ref:n,r=t.get(n),i=null,a=e.update,o=void 0;r||j(`Source not defined: `+e.source),i=e.target&&e.target.$expr?t.eventExpression(e.target.$expr):t.get(e.target),a&&a.$expr&&(a.$params&&(o=t.parseParameters(a.$params)),a=t.handlerExpression(a.$expr)),t.update(e,r,i,a,o)}var UF={skip:!0};function WF(e){var t=this,n={};if(e.signals){var r=n.signals={};Object.keys(t.signals).forEach(n=>{let i=t.signals[n];e.signals(n,i)&&(r[n]=i.value)})}if(e.data){var i=n.data={};Object.keys(t.data).forEach(n=>{let r=t.data[n];e.data(n,r)&&(i[n]=r.input.value)})}return t.subcontext&&e.recurse!==!1&&(n.subcontext=t.subcontext.map(t=>t.getState(e))),n}function GF(e){var t=this,n=t.dataflow,r=e.data,i=e.signals;Object.keys(i||{}).forEach(e=>{n.update(t.signals[e],i[e],UF)}),Object.keys(r||{}).forEach(e=>{n.pulse(t.data[e].input,n.changeset().remove(De).insert(r[e]))}),(e.subcontext||[]).forEach((e,n)=>{let r=t.subcontext[n];r&&r.setState(e)})}function KF(e,t,n,r){return new qF(e,t,n,r)}function qF(e,t,n,r){this.dataflow=e,this.transforms=t,this.events=e.events.bind(e),this.expr=r||Sce,this.signals={},this.scales={},this.nodes={},this.data={},this.fn={},n&&(this.functions=Object.create(n),this.functions.context=this)}function JF(e){this.dataflow=e.dataflow,this.transforms=e.transforms,this.events=e.events,this.expr=e.expr,this.signals=Object.create(e.signals),this.scales=Object.create(e.scales),this.nodes=Object.create(e.nodes),this.data=Object.create(e.data),this.fn=Object.create(e.fn),e.functions&&(this.functions=Object.create(e.functions),this.functions.context=this)}qF.prototype=JF.prototype={fork(){let e=new JF(this);return(this.subcontext||=[]).push(e),e},detach(e){this.subcontext=this.subcontext.filter(t=>t!==e);let t=Object.keys(e.nodes);for(let n of t)e.nodes[n]._targets=null;for(let n of t)e.nodes[n].detach();e.nodes=null},get(e){return this.nodes[e]},set(e,t){return this.nodes[e]=t},add(e,t){let n=this,r=n.dataflow,i=e.value;if(n.set(e.id,t),bce(e.type)&&i&&(i.$ingest?r.ingest(t,i.$ingest,i.$format):i.$request?r.preload(t,i.$request,i.$format):r.pulse(t,r.changeset().insert(i))),e.root&&(n.root=t),e.parent){let i=n.get(e.parent.$ref);i?(r.connect(i,[t]),t.targets().add(i)):(n.unresolved=n.unresolved||[]).push(()=>{i=n.get(e.parent.$ref),r.connect(i,[t]),t.targets().add(i)})}if(e.signal&&(n.signals[e.signal]=t),e.scale&&(n.scales[e.scale]=t),e.data)for(let r in e.data){let i=n.data[r]||(n.data[r]={});e.data[r].forEach(e=>i[e]=t)}},resolve(){return(this.unresolved||[]).forEach(e=>e()),delete this.unresolved,this},operator(e,t){this.add(e,this.dataflow.add(e.value,t))},transform(e,t){this.add(e,this.dataflow.add(this.transforms[MF(t)]))},stream(e,t){this.set(e.id,t)},update(e,t,n,r,i){this.dataflow.on(t,n,r,i,e.options)},operatorExpression(e){return this.expr.operator(this,e)},parameterExpression(e){return this.expr.parameter(this,e)},eventExpression(e){return this.expr.event(this,e)},handlerExpression(e){return this.expr.handler(this,e)},encodeExpression(e){return this.expr.encode(this,e)},parse:gce,parseOperator:Cce,parseOperatorParameters:wce,parseParameters:Tce,parseStream:VF,parseUpdate:HF,getState:WF,setState:GF};function YF(e){let t=e.container();t&&(t.setAttribute(`role`,`graphics-document`),t.setAttribute(`aria-roleDescription`,`visualization`),XF(t,e.description()))}function XF(e,t){e&&(t==null?e.removeAttribute(`aria-label`):e.setAttribute(`aria-label`,t))}function ZF(e){e.add(null,t=>(e._background=t.bg,e._resize=1,t.bg),{bg:e._signals.background})}var QF=`default`;function $F(e){let t=e._signals.cursor||(e._signals.cursor=e.add({user:QF,item:null}));e.on(e.events(`view`,`pointermove`),t,(e,n)=>{let r=t.value,i=r?P(r)?r:r.user:QF,a=n.item&&n.item.cursor||null;return r&&i===r.user&&a==r.item?r:{user:i,item:a}}),e.add(null,function(t){let n=t.cursor,r=this.value;return P(n)||(r=n.item,n=n.user),eI(e,n&&n!==QF?n:r||n),r},{cursor:t})}function eI(e,t){let n=e.globalCursor()?typeof document<`u`&&document.body:e.container();if(n)return t==null?n.style.removeProperty(`cursor`):n.style.cursor=t}function tI(e,t){var n=e._runtime.data;return T(n,t)||j(`Unrecognized data set: `+t),n[t]}function nI(e,t){return arguments.length<2?tI(this,e).values.value:rI.call(this,e,ri().remove(De).insert(t))}function rI(e,t){ni(t)||j(`Second argument to changes must be a changeset.`);let n=tI(this,e);return n.modified=!0,this.pulse(n.input,t)}function iI(e,t){return rI.call(this,e,ri().insert(t))}function aI(e,t){return rI.call(this,e,ri().remove(t))}function oI(e){var t=e.padding();return Math.max(0,e._viewWidth+t.left+t.right)}function sI(e){var t=e.padding();return Math.max(0,e._viewHeight+t.top+t.bottom)}function cI(e){var t=e.padding(),n=e._origin;return[t.left+n[0],t.top+n[1]]}function lI(e){var t=cI(e),n=oI(e),r=sI(e);e._renderer.background(e.background()),e._renderer.resize(n,r,t),e._handler.origin(t),e._resizeListeners.forEach(t=>{try{t(n,r)}catch(t){e.error(t)}})}function uI(e,t,n){var r=e._renderer,i=r&&r.canvas(),a,o,s;return i&&(s=cI(e),o=t.changedTouches?t.changedTouches[0]:t,a=Np(o,i),a[0]-=s[0],a[1]-=s[1]),t.dataflow=e,t.item=n,t.vega=dI(e,n,a),t}function dI(e,t,n){let r=t?t.mark.marktype===`group`?t:t.mark.group:null;function i(e){var n=r,i;if(e){for(i=t;i;i=i.mark.group)if(i.mark.name===e){n=i;break}}return n&&n.mark&&n.mark.interactive?n:{}}function a(e){if(!e)return n;P(e)&&(e=i(e));let t=n.slice();for(;e;)t[0]-=e.x||0,t[1]-=e.y||0,e=e.mark&&e.mark.group;return t}return{view:d(e),item:d(t||{}),group:i,xy:a,x:e=>a(e)[0],y:e=>a(e)[1]}}var fI=`view`,pI=`timer`,mI=`window`,hI={trap:!1};function gI(e){let t=D({defaults:{}},e),n=(e,t)=>{t.forEach(t=>{N(e[t])&&(e[t]=_(e[t]))})};return n(t.defaults,[`prevent`,`allow`]),n(t,[`view`,`window`,`selector`]),t}function _I(e,t,n,r){e._eventListeners.push({type:n,sources:k(t),handler:r})}function vI(e,t){var n=e._eventConfig.defaults,r=n.prevent,i=n.allow;return r===!1||i===!0?!1:r===!0||i===!1?!0:r?r[t]:i?!i[t]:e.preventDefault()}function yI(e,t,n){let r=e._eventConfig&&e._eventConfig[t];return r===!1||M(r)&&!r[n]?(e.warn(`Blocked ${t} ${n} event listener.`),!1):!0}function bI(e,t,n){var r=this,i=new gi(n),a=function(n,a){r.runAsync(null,()=>{e===fI&&vI(r,t)&&n.preventDefault(),i.receive(uI(r,n,a))})},o;if(e===pI)yI(r,`timer`,t)&&r.timer(a,t);else if(e===fI)yI(r,`view`,t)&&r.addEventListener(t,a,hI);else if(e===mI?yI(r,`window`,t)&&typeof window<`u`&&(o=[window]):typeof document<`u`&&yI(r,`selector`,t)&&(o=Array.from(document.querySelectorAll(e))),!o)r.warn(`Can not resolve event source: `+e);else{for(var s=0,c=o.length;s<c;++s)o[s].addEventListener(t,a);_I(r,o,t,a)}return i}function xI(e){return e.item}function SI(e){return e.item.mark.source}function CI(e){return function(t,n){return n.vega.view().changeset().encode(n.item,e)}}function wI(e,t){return e=[e||`hover`],t=[t||`update`,e[0]],this.on(this.events(`view`,`pointerover`,xI),SI,CI(e)),this.on(this.events(`view`,`pointerout`,xI),SI,CI(t)),this}function TI(){for(var e=this._tooltip,t=this._timers,n=this._handler.handlers(),r=this._eventListeners,i=t.length,a,o,s,c;--i>=0;)t[i].stop();for(i=r.length;--i>=0;)for(o=r[i],a=o.sources.length;--a>=0;)o.sources[a].removeEventListener(o.type,o.handler);for(e&&e.call(this,this._handler,null,null,null),i=n.length;--i>=0;)c=n[i].type,s=n[i].handler,this._handler.off(c,s);return this}function EI(e,t,n){let r=document.createElement(e);for(let e in t)r.setAttribute(e,t[e]);return n!=null&&(r.textContent=n),r}var DI=`vega-bind`,OI=`vega-bind-name`,kI=`vega-bind-radio`;function AI(e,t,n){if(!t)return;let r=n.param,i=n.state;return i||(i=n.state={elements:null,active:!1,set:null,update:t=>{t!=e.signal(r.signal)&&e.runAsync(null,()=>{i.source=!0,e.signal(r.signal,t)})}},r.debounce&&(i.update=lr(r.debounce,i.update))),(r.input==null&&r.element?jI:NI)(i,t,r,e),i.active||(e.on(e._signals[r.signal],null,()=>{i.source?i.source=!1:i.set(e.signal(r.signal))}),i.active=!0),i}function jI(e,t,n,r){let i=n.event||`input`,a=()=>e.update(t.value);r.signal(n.signal,t.value),t.addEventListener(i,a),_I(r,t,i,a),e.set=e=>{t.value=e,t.dispatchEvent(MI(i))}}function MI(e){return typeof Event<`u`?new Event(e):{type:e}}function NI(e,t,n,r){let i=r.signal(n.signal),a=EI(`div`,{class:DI}),o=n.input===`radio`?a:a.appendChild(EI(`label`));o.appendChild(EI(`span`,{class:OI},n.name||n.signal)),t.appendChild(a);let s=PI;switch(n.input){case`checkbox`:s=FI;break;case`select`:s=II;break;case`radio`:s=LI;break;case`range`:s=RI}s(e,o,n,i)}function PI(e,t,n,r){let i=EI(`input`);for(let e in n)e!==`signal`&&e!==`element`&&i.setAttribute(e===`input`?`type`:e,n[e]);i.setAttribute(`name`,n.signal),i.value=r,t.appendChild(i),i.addEventListener(`input`,()=>e.update(i.value)),e.elements=[i],e.set=e=>i.value=e}function FI(e,t,n,r){let i={type:`checkbox`,name:n.signal};r&&(i.checked=!0);let a=EI(`input`,i);t.appendChild(a),a.addEventListener(`change`,()=>e.update(a.checked)),e.elements=[a],e.set=e=>a.checked=!!e||null}function II(e,t,n,r){let i=EI(`select`,{name:n.signal}),a=n.labels||[];n.options.forEach((e,t)=>{let n={value:e};zI(e,r)&&(n.selected=!0),i.appendChild(EI(`option`,n,(a[t]||e)+``))}),t.appendChild(i),i.addEventListener(`change`,()=>{e.update(n.options[i.selectedIndex])}),e.elements=[i],e.set=e=>{for(let t=0,r=n.options.length;t<r;++t)if(zI(n.options[t],e)){i.selectedIndex=t;return}}}function LI(e,t,n,r){let i=EI(`span`,{class:kI}),a=n.labels||[];t.appendChild(i),e.elements=n.options.map((t,o)=>{let s={type:`radio`,name:n.signal,value:t};zI(t,r)&&(s.checked=!0);let c=EI(`input`,s);c.addEventListener(`change`,()=>e.update(t));let l=EI(`label`,{},(a[o]||t)+``);return l.prepend(c),i.appendChild(l),c}),e.set=t=>{let n=e.elements,r=n.length;for(let e=0;e<r;++e)zI(n[e].value,t)&&(n[e].checked=!0)}}function RI(e,t,n,r){r=r===void 0?(+n.max+ +n.min)/2:r;let i=n.max==null?Math.max(100,+r)||100:n.max,a=n.min||Math.min(0,i,+r)||0,o=n.step||Pe(a,i,100),s=EI(`input`,{type:`range`,name:n.signal,min:a,max:i,step:o});s.value=r;let c=EI(`span`,{},+r);t.appendChild(s),t.appendChild(c);let l=()=>{c.textContent=s.value,e.update(+s.value)};s.addEventListener(`input`,l),s.addEventListener(`change`,l),e.elements=[s],e.set=e=>{s.value=e,c.textContent=e}}function zI(e,t){return e===t||e+``==t+``}function BI(e,t,n,r,i,a){return t||=new r(e.loader()),t.initialize(n,oI(e),sI(e),cI(e),i,a).background(e.background())}function VI(e,t){return t?function(){try{t.apply(this,arguments)}catch(t){e.error(t)}}:null}function HI(e,t,n,r){let i=new r(e.loader(),VI(e,e.tooltip())).scene(e.scenegraph().root).initialize(n,cI(e),e);return t&&t.handlers().forEach(e=>{i.on(e.type,e.handler)}),i}function UI(e,t){let n=this,r=n._renderType,i=n._eventConfig.bind,a=Mh(r);e=n._el=e?WI(n,e,!0):null,YF(n),a||n.error(`Unrecognized renderer type: `+r);let o=a.handler||pm,s=e?a.renderer:a.headless;return n._renderer=s?BI(n,n._renderer,e,s):null,n._handler=HI(n,n._handler,e,o),n._redraw=!0,e&&i!==`none`&&(t=t?n._elBind=WI(n,t,!0):e.appendChild(EI(`form`,{class:`vega-bindings`})),n._bind.forEach(e=>{e.param.element&&i!==`container`&&(e.element=WI(n,e.param.element,!!e.param.input))}),n._bind.forEach(e=>{AI(n,e.element||t,e)})),n}function WI(e,t,n){if(typeof t==`string`){if(typeof document<`u`){if(t=document.querySelector(t),!t)return e.error(`Signal bind element not found: `+t),null}else return e.error(`DOM document instance not found.`),null}if(t&&n)try{t.textContent=``}catch(n){t=null,e.error(n)}return t}var GI=e=>+e||0,KI=e=>({top:e,bottom:e,left:e,right:e});function qI(e){return M(e)?{top:GI(e.top),bottom:GI(e.bottom),left:GI(e.left),right:GI(e.right)}:KI(GI(e))}async function JI(e,t,n,r){let i=Mh(t),a=i&&i.headless;return a||j(`Unrecognized renderer type: `+t),await e.runAsync(),BI(e,null,null,a,n,r).renderAsync(e._scenegraph.root)}async function YI(e,t){e!==Ah.Canvas&&e!==Ah.SVG&&e!==Ah.PNG&&j(`Unrecognized image type: `+e);let n=await JI(this,e,t);return e===Ah.SVG?XI(n.svg(),`image/svg+xml`):n.canvas().toDataURL(`image/png`)}function XI(e,t){let n=new Blob([e],{type:t});return window.URL.createObjectURL(n)}async function ZI(e,t){return(await JI(this,Ah.Canvas,e,t)).canvas()}async function QI(e){return(await JI(this,Ah.SVG,e)).svg()}function $I(e,t,n){return KF(e,Qi,wF,n).parse(t)}function eL(e){var t=this._runtime.scales;return T(t,e)||j(`Unrecognized scale or projection: `+e),t[e].value}var tL=`width`,nL=`height`,rL=`padding`,iL={skip:!0};function aL(e,t){var n=e.autosize(),r=e.padding();return t-(n&&n.contains===rL?r.left+r.right:0)}function oL(e,t){var n=e.autosize(),r=e.padding();return t-(n&&n.contains===rL?r.top+r.bottom:0)}function sL(e){var t=e._signals,n=t[tL],r=t[nL],i=t[rL];function a(){e._autosize=e._resize=1}e._resizeWidth=e.add(null,t=>{e._width=t.size,e._viewWidth=aL(e,t.size),a()},{size:n}),e._resizeHeight=e.add(null,t=>{e._height=t.size,e._viewHeight=oL(e,t.size),a()},{size:r});let o=e.add(null,a,{pad:i});e._resizeWidth.rank=n.rank+1,e._resizeHeight.rank=r.rank+1,o.rank=i.rank+1}function cL(e,t,n,r,i,a){this.runAfter(o=>{let s=0;o._autosize=0,o.width()!==n&&(s=1,o.signal(tL,n,iL),o._resizeWidth.skip(!0)),o.height()!==r&&(s=1,o.signal(nL,r,iL),o._resizeHeight.skip(!0)),o._viewWidth!==e&&(o._resize=1,o._viewWidth=e),o._viewHeight!==t&&(o._resize=1,o._viewHeight=t),(o._origin[0]!==i[0]||o._origin[1]!==i[1])&&(o._resize=1,o._origin=i),s&&o.run(`enter`),a&&o.runAfter(e=>e.resize())},!1,1)}function lL(e){return this._runtime.getState(e||{data:uL,signals:dL,recurse:!0})}function uL(e,t){return t.modified&&N(t.input.value)&&!e.startsWith(`_:vega:_`)}function dL(e,t){return!(e===`parent`||t instanceof Qi.proxy)}function fL(e){return this.runAsync(null,t=>{t._trigger=!1,t._runtime.setState(e)},e=>{e._trigger=!0}),this}function pL(e,t){function n(t){e({timestamp:Date.now(),elapsed:t})}this._timers.push(KS(n,t))}function mL(e,t,n,r){let i=e.element();i&&i.setAttribute(`title`,hL(r))}function hL(e){return e==null?``:N(e)?_L(e):M(e)&&!f(e)?gL(e):e+``}function gL(e){return Object.keys(e).map(t=>{let n=e[t];return t+`: `+(N(n)?_L(n):vL(n))}).join(`
|
|
9
|
+
`)}function _L(e){return`[`+e.map(vL).join(`, `)+`]`}function vL(e){return N(e)?`[…]`:M(e)&&!f(e)?`{…}`:e}function yL(){if(this.renderer()===`canvas`&&this._renderer._canvas){let e=null,t=()=>{e?.();let n=matchMedia(`(resolution: ${window.devicePixelRatio}dppx)`);n.addEventListener(`change`,t),e=()=>{n.removeEventListener(`change`,t)},this._renderer._canvas.getContext(`2d`).pixelRatio=window.devicePixelRatio||1,this._redraw=!0,this._resize=1,this.resize().runAsync()};t()}}function bL(e,t){let n=this;if(t||={},Xi.call(n),t.loader&&n.loader(t.loader),t.logger&&n.logger(t.logger),t.logLevel!=null&&n.logLevel(t.logLevel),t.locale||e.locale){let r=D({},e.locale,t.locale);n.locale(Oe(r.number,r.time))}n._el=null,n._elBind=null,n._renderType=t.renderer||Ah.Canvas,n._scenegraph=new Ep;let r=n._scenegraph.root;n._renderer=null,n._tooltip=t.tooltip||mL,n._redraw=!0,n._handler=new pm().scene(r),n._globalCursor=!1,n._preventDefault=!1,n._timers=[],n._eventListeners=[],n._resizeListeners=[],n._eventConfig=gI(e.eventConfig),n.globalCursor(n._eventConfig.globalCursor);let i=$I(n,e,t.expr);n._runtime=i,n._signals=i.signals,n._bind=(e.bindings||[]).map(e=>({state:null,param:D({},e)})),i.root&&i.root.set(r),r.source=i.data.root.input,n.pulse(i.data.root.input,n.changeset().insert(r.items)),n._width=n.width(),n._height=n.height(),n._viewWidth=aL(n,n._width),n._viewHeight=oL(n,n._height),n._origin=[0,0],n._resize=0,n._autosize=1,sL(n),ZF(n),$F(n),n.description(e.description),t.hover&&n.hover(),t.container&&n.initialize(t.container,t.bind),t.watchPixelRatio&&n._watchPixelRatio()}function xL(e,t){return T(e._signals,t)?e._signals[t]:j(`Unrecognized signal name: `+p(t))}function SL(e,t){let n=(e._targets||[]).filter(e=>e._update&&e._update.handler===t);return n.length?n[0]:null}function CL(e,t,n,r){let i=SL(n,r);return i||(i=VI(e,()=>r(t,n.value)),i.handler=r,e.on(n,null,i)),e}function wL(e,t,n){let r=SL(t,n);return r&&t._targets.remove(r),e}F(bL,Xi,{async evaluate(e,t,n){if(await Xi.prototype.evaluate.call(this,e,t),this._redraw||this._resize)try{this._renderer&&(this._resize&&(this._resize=0,lI(this)),await this._renderer.renderAsync(this._scenegraph.root)),this._redraw=!1}catch(e){this.error(e)}return n&&Kr(this,n),this},dirty(e){this._redraw=!0,this._renderer&&this._renderer.dirty(e)},description(e){if(arguments.length){let t=e==null?null:e+``;return t!==this._desc&&XF(this._el,this._desc=t),this}return this._desc},container(){return this._el},scenegraph(){return this._scenegraph},origin(){return this._origin.slice()},signal(e,t,n){let r=xL(this,e);return arguments.length===1?r.value:this.update(r,t,n)},width(e){return arguments.length?this.signal(`width`,e):this.signal(`width`)},height(e){return arguments.length?this.signal(`height`,e):this.signal(`height`)},padding(e){return arguments.length?this.signal(`padding`,qI(e)):qI(this.signal(`padding`))},autosize(e){return arguments.length?this.signal(`autosize`,e):this.signal(`autosize`)},background(e){return arguments.length?this.signal(`background`,e):this.signal(`background`)},renderer(e){return arguments.length?(Mh(e)||j(`Unrecognized renderer type: `+e),e!==this._renderType&&(this._renderType=e,this._resetRenderer()),this):this._renderType},tooltip(e){return arguments.length?(e!==this._tooltip&&(this._tooltip=e,this._resetRenderer()),this):this._tooltip},loader(e){return arguments.length?(e!==this._loader&&(Xi.prototype.loader.call(this,e),this._resetRenderer()),this):this._loader},resize(){return this._autosize=1,this.touch(xL(this,`autosize`))},_resetRenderer(){this._renderer&&(this._renderer=null,this.initialize(this._el,this._elBind))},_resizeView:cL,addEventListener(e,t,n){let r=t;return n&&n.trap===!1||(r=VI(this,t),r.raw=t),this._handler.on(e,r),this},removeEventListener(e,t){for(var n=this._handler.handlers(e),r=n.length,i,a;--r>=0;)if(a=n[r].type,i=n[r].handler,e===a&&(t===i||t===i.raw)){this._handler.off(a,i);break}return this},addResizeListener(e){let t=this._resizeListeners;return t.includes(e)||t.push(e),this},removeResizeListener(e){var t=this._resizeListeners,n=t.indexOf(e);return n>=0&&t.splice(n,1),this},addSignalListener(e,t){return CL(this,e,xL(this,e),t)},removeSignalListener(e,t){return wL(this,xL(this,e),t)},addDataListener(e,t){return CL(this,e,tI(this,e).values,t)},removeDataListener(e,t){return wL(this,tI(this,e).values,t)},globalCursor(e){if(arguments.length){if(this._globalCursor!==!!e){let t=eI(this,null);this._globalCursor=!!e,t&&eI(this,t)}return this}return this._globalCursor},preventDefault(e){return arguments.length?(this._preventDefault=e,this):this._preventDefault},timer:pL,events:bI,finalize:TI,hover:wI,data:nI,change:rI,insert:iI,remove:aI,scale:eL,initialize:UI,toImageURL:YI,toCanvas:ZI,toSVG:QI,getState:lL,setState:fL,_watchPixelRatio:yL});function TL(e){let t=this.context.data[e];return t?t.values.value:[]}function EL(e,t,n){let r=this.context.data[e][`index:`+t],i=r?r.value.get(n):void 0;return i&&i.count}function DL(e,t){let n=this.context.dataflow,r=this.context.data[e].input;return n.pulse(r,n.changeset().remove(De).insert(t)),1}function OL(e,t,n){if(e){let n=this.context.dataflow,r=e.mark.source;n.pulse(r,n.changeset().encode(e,t))}return n===void 0?e:n}var kL=e=>function(t,n){let r=this.context.dataflow.locale();return t===null?`null`:r[e](n)(t)},AL=kL(`format`),jL=kL(`timeFormat`),ML=kL(`utcFormat`),NL=kL(`timeParse`),PL=kL(`utcParse`),FL=new Date(2e3,0,1);function IL(e,t,n){return!Number.isInteger(e)||!Number.isInteger(t)?``:(FL.setYear(2e3),FL.setMonth(e),FL.setDate(t),jL.call(this,FL,n))}function LL(e){return IL.call(this,e,1,`%B`)}function RL(e){return IL.call(this,e,1,`%b`)}function zL(e){return IL.call(this,0,2+e,`%A`)}function BL(e){return IL.call(this,0,2+e,`%a`)}function VL(e,t,n,r){t[0].type!==`Literal`&&j(`First argument to data functions must be a string literal.`);let i=t[0].value,a=`:`+i;if(!T(a,r))try{r[a]=n.getData(i).tuplesRef()}catch{}}function HL(e,t,n,r){t[0].type!==`Literal`&&j(`First argument to indata must be a string literal.`),t[1].type!==`Literal`&&j(`Second argument to indata must be a string literal.`);let i=t[0].value,a=t[1].value,o=`@`+a;T(o,r)||(r[o]=n.getData(i).indataRef(n,a))}function UL(e,t,n,r){if(t[0].type===`Literal`)WL(n,r,t[0].value);else for(e in n.scales)WL(n,r,e)}function WL(e,t,n){let r=`%`+n;if(!T(t,r))try{t[r]=e.scaleRef(n)}catch{}}function GL(e,t){if(P(e)){let n=t.scales[e];return n&&xl(n.value)?n.value:void 0}if(m(e))return xl(e)?e:void 0}function KL(e,t,n){t.__bandwidth=e=>e&&e.bandwidth?e.bandwidth():0,n._bandwidth=UL,n._range=UL,n._scale=UL;let r=t=>`_[`+(t.type===`Literal`?p(`%`+t.value):p(`%`)+`+`+e(t))+`]`;return{_bandwidth:e=>`this.__bandwidth(${r(e[0])})`,_range:e=>`${r(e[0])}.range()`,_scale:t=>`${r(t[0])}(${e(t[1])})`}}function qL(e,t){return function(n,r,i){if(n){let t=GL(n,(i||this).context);return t&&t.path[e](r)}return t(r)}}var JL=qL(`area`,Xv),YL=qL(`bounds`,Ey),XL=qL(`centroid`,Yy);function ZL(e,t){let n=GL(e,(t||this).context);return n&&n.scale()}function QL(e){let t=this.context.group,n=!1;if(t)for(;e;){if(e===t){n=!0;break}e=e.mark.group}return n}function $L(e,t,n){try{e[t].apply(e,[`EXPRESSION`].concat([].slice.call(n)))}catch(t){e.warn(t)}return n[n.length-1]}function eR(){return $L(this.context.dataflow,`warn`,arguments)}function tR(){return $L(this.context.dataflow,`info`,arguments)}function nR(){return $L(this.context.dataflow,`debug`,arguments)}function rR(e){let t=e/255;return t<=.03928?t/12.92:((t+.055)/1.055)**2.4}function iR(e){let t=$t(e),n=rR(t.r),r=rR(t.g),i=rR(t.b);return .2126*n+.7152*r+.0722*i}function aR(e,t){let n=iR(e),r=iR(t),i=Math.max(n,r),a=Math.min(n,r);return(i+.05)/(a+.05)}function oR(){let e=[].slice.call(arguments);return e.unshift({}),D(...e)}function sR(e,t){return e===t||e!==e&&t!==t?!0:N(e)?N(t)&&e.length===t.length?cR(e,t):!1:M(e)&&M(t)?lR(e,t):!1}function cR(e,t){for(let n=0,r=e.length;n<r;++n)if(!sR(e[n],t[n]))return!1;return!0}function lR(e,t){for(let n in e)if(!sR(e[n],t[n]))return!1;return!0}function uR(e){return t=>lR(e,t)}function dR(e,t,n,r,i,a){let o=this.context.dataflow,s=this.context.data[e],c=s.input,l=o.stamp(),u=s.changes,d,f;if(o._trigger===!1||!(c.value.length||t||r))return 0;if((!u||u.stamp<l)&&(s.changes=u=o.changeset(),u.stamp=l,o.runAfter(()=>{s.modified=!0,o.pulse(c,u).run()},!0,1)),n&&(d=n===!0?De:N(n)||Yr(n)?n:uR(n),u.remove(d)),t&&u.insert(t),r&&(d=uR(r),c.value.some(d)?u.remove(d):u.insert(r)),i){if(m(i))throw Error(`modify parameter must be a data tuple, not a function`);for(f in a)u.modify(i,f,a[f])}return 1}function fR(e){let t=e.touches,n=t[0].clientX-t[1].clientX,r=t[0].clientY-t[1].clientY;return Math.hypot(n,r)}function pR(e){let t=e.touches;return Math.atan2(t[0].clientY-t[1].clientY,t[0].clientX-t[1].clientX)}var mR={};function hR(e,t){let n=mR[t]||(mR[t]=ge(t));return N(e)?e.map(n):n(e)}function gR(e){return N(e)||ArrayBuffer.isView(e)?e:null}function _R(e){return gR(e)||(P(e)?e:null)}function vR(e,...t){return gR(e).join(...t)}function yR(e,...t){return _R(e).indexOf(...t)}function bR(e,...t){return _R(e).lastIndexOf(...t)}function xR(e,...t){return _R(e).slice(...t)}function SR(e,t,n){return m(n)&&j(`Function argument passed to replace.`),!P(t)&&!_r(t)&&j(`Please pass a string or RegExp argument to replace.`),String(e).replace(t,n)}function CR(e){return gR(e).slice().reverse()}function wR(e){return gR(e).slice().sort(h)}function TR(e,t,n){return Uc(e||0,t||0,n||0)}function ER(e,t){let n=GL(e,(t||this).context);return n&&n.bandwidth?n.bandwidth():0}function DR(e,t){let n=GL(e,(t||this).context);return n?n.copy():void 0}function OR(e,t){let n=GL(e,(t||this).context);return n?n.domain():[]}function kR(e,t,n){let r=GL(e,(n||this).context);return r?N(t)?(r.invertRange||r.invert)(t):(r.invert||r.invertExtent)(t):void 0}function AR(e,t){let n=GL(e,(t||this).context);return n&&n.range?n.range():[]}function jR(e,t,n){let r=GL(e,(n||this).context);return r?r(t):void 0}function MR(e,t,n,r,i){e=GL(e,(i||this).context);let a=lu(t,n),o=e.domain(),s=o[0],c=A(o),l=ne;return c-s?l=Ll(e,s,c):e=(e.interpolator?Cl(`sequential`)().interpolator(e.interpolator()):Cl(`linear`)().interpolate(e.interpolate()).range(e.range())).domain([s=0,c=1]),e.ticks&&(o=e.ticks(+r||15),s!==o[0]&&o.unshift(s),c!==A(o)&&o.push(c)),o.forEach(t=>a.stop(l(t),e(t))),a}function NR(e,t,n){let r=GL(e,(n||this).context);return function(e){return r?r.path.context(e)(t):``}}function PR(e){let t=null;return function(n){return n?ju(n,t||=_u(e)):e}}var FR=e=>e.data;function IR(e,t){let n=TL.call(t,e);return n.root&&n.root.lookup||{}}function LR(e,t,n){let r=IR(e,this),i=r[t],a=r[n];return i&&a?i.path(a).map(FR):void 0}function RR(e,t){let n=IR(e,this)[t];return n?n.ancestors().map(FR):void 0}var zR=()=>typeof window<`u`&&window||null;function BR(){let e=zR();return e?e.screen:{}}function VR(){let e=zR();return e?[e.innerWidth,e.innerHeight]:[void 0,void 0]}function HR(){let e=this.context.dataflow,t=e.container&&e.container();return t?[t.clientWidth,t.clientHeight]:[void 0,void 0]}function UR(e,t,n){if(!e)return[];let[r,i]=e,a=new jd().set(r[0],r[1],i[0],i[1]);return Nh(n||this.context.dataflow.scenegraph().root,a,WR(t))}function WR(e){let t=null;if(e){let n=k(e.marktype),r=k(e.markname);t=e=>(!n.length||n.some(t=>e.marktype===t))&&(!r.length||r.some(t=>e.name===t))}return t}function GR(e,t,n,r=5){e=k(e);let i=e[e.length-1];return i===void 0||Math.hypot(i[0]-t,i[1]-n)>r?[...e,[t,n]]:e}function KR(e){return k(e).reduce((t,[n,r],i)=>t+=i==0?`M ${n},${r} `:i===e.length-1?` Z`:`L ${n},${r} `,``)}function qR(e,t,n){let{x:r,y:i,mark:a}=n,o=new jd().set(2**53-1,2**53-1,-(2**53-1),-(2**53-1));for(let[e,n]of t)e<o.x1&&(o.x1=e),e>o.x2&&(o.x2=e),n<o.y1&&(o.y1=n),n>o.y2&&(o.y2=n);return o.translate(r,i),UR([[o.x1,o.y1],[o.x2,o.y2]],e,a).filter(e=>JR(e.x,e.y,t))}function JR(e,t,n){let r=0;for(let i=0,a=n.length-1;i<n.length;a=i++){let[o,s]=n[a],[c,l]=n[i];l>t!=s>t&&e<(o-c)*(t-l)/(s-l)+c&&r++}return r&1}var YR={random(){return oa()},cumulativeNormal:va,cumulativeLogNormal:Ta,cumulativeUniform:ja,densityNormal:_a,densityLogNormal:wa,densityUniform:Aa,quantileNormal:ya,quantileLogNormal:Ea,quantileUniform:Ma,sampleNormal:ga,sampleLogNormal:Ca,sampleUniform:ka,isArray:N,isBoolean:gr,isDate:f,isDefined(e){return e!==void 0},isNumber:o,isObject:M,isRegExp:_r,isString:P,isTuple:Yr,isValid(e){return e!=null&&e===e},toBoolean:u,toDate(e){return b(e)},toNumber:O,toString:v,indexof:yR,join:vR,lastindexof:bR,replace:SR,reverse:CR,sort:wR,slice:xR,flush:mr,lerp:vr,merge:oR,pad:Sr,peek:A,pluck:hR,span:g,inrange:hr,truncate:Cr,rgb:$t,lab:st,hcl:at,hsl:en,luminance:iR,contrast:aR,sequence:ct,format:AL,utcFormat:ML,utcParse:PL,utcOffset:l,utcSequence:c,timeFormat:jL,timeParse:NL,timeOffset:re,timeSequence:Me,timeUnitSpecifier:C,monthFormat:LL,monthAbbrevFormat:RL,dayFormat:zL,dayAbbrevFormat:BL,quarter:or,utcquarter:sr,week:pe,utcweek:a,dayofyear:le,utcdayofyear:y,warn:eR,info:tR,debug:nR,extent(e){return ur(e)},inScope:QL,intersect:UR,clampRange:cr,pinchDistance:fR,pinchAngle:pR,screen:BR,containerSize:HR,windowSize:VR,bandspace:TR,setdata:DL,pathShape:PR,panLinear:Zn,panLog:Qn,panPow:$n,panSymlog:er,zoomLinear:nr,zoomLog:rr,zoomPow:ir,zoomSymlog:ar,encode:OL,modify:dR,lassoAppend:GR,lassoPath:KR,intersectLasso:qR},XR=[`view`,`item`,`group`,`xy`,`x`,`y`],ZR=`event.vega.`,QR=`this.`,$R={},ez=RP({forbidden:[`_`],allowed:[`datum`,`event`,`item`],fieldvar:`datum`,globalvar:e=>`_[${p(`$`+e)}]`,functions:tz,constants:IP,visitors:$R});function tz(e){let t=LP(e);XR.forEach(e=>t[e]=ZR+e);for(let e in YR)t[e]=QR+e;return D(t,KL(e,YR,$R)),t}function nz(e,t,n){return arguments.length===1?YR[e]:(YR[e]=t,n&&($R[e]=n),ez&&(ez.functions[e]=QR+e),this)}nz(`bandwidth`,ER,UL),nz(`copy`,DR,UL),nz(`domain`,OR,UL),nz(`range`,AR,UL),nz(`invert`,kR,UL),nz(`scale`,jR,UL),nz(`gradient`,MR,UL),nz(`geoArea`,JL,UL),nz(`geoBounds`,YL,UL),nz(`geoCentroid`,XL,UL),nz(`geoShape`,NR,UL),nz(`geoScale`,ZL,UL),nz(`indata`,EL,HL),nz(`data`,TL,VL),nz(`treePath`,LR,VL),nz(`treeAncestors`,RR,VL),nz(`vlSelectionTest`,JP,eF),nz(`vlSelectionIdTest`,XP,eF),nz(`vlSelectionResolve`,QP,eF),nz(`vlSelectionTuples`,ZP);var rz=`view`,iz=`[`,az=`]`,oz=`{`,sz=`}`,cz=`:`,lz=`,`,uz=`@`,dz=`>`,fz=/[[\]{}]/,pz={"*":1,arc:1,area:1,group:1,image:1,line:1,path:1,rect:1,rule:1,shape:1,symbol:1,text:1,trail:1},mz,hz;function gz(e,t,n){return mz=t||rz,hz=n||pz,yz(e.trim()).map(bz)}function _z(e){return hz[e]}function vz(e,t,n,r,i){let a=e.length,o=0,s;for(;t<a;++t){if(s=e[t],!o&&s===n)return t;i&&i.includes(s)?--o:r&&r.includes(s)&&++o}return t}function yz(e){let t=[],n=e.length,r=0,i=0;for(;i<n;)i=vz(e,i,lz,`[{`,`]}`),t.push(e.substring(r,i).trim()),r=++i;if(t.length===0)throw`Empty event selector: `+e;return t}function bz(e){return e[0]===`[`?xz(e):Sz(e)}function xz(e){let t=e.length,n=1,r;if(n=vz(e,n,az,iz,az),n===t)throw`Empty between selector: `+e;if(r=yz(e.substring(1,n)),r.length!==2)throw`Between selector must have two elements: `+e;if(e=e.slice(n+1).trim(),e[0]!==dz)throw`Expected '>' after between selector: `+e;r=r.map(bz);let i=bz(e.slice(1).trim());return i.between?{between:r,stream:i}:(i.between=r,i)}function Sz(e){let t={source:mz},n=[],r=[0,0],i=0,a=0,o=e.length,s=0,c,l;if(e[o-1]===sz){if(s=e.lastIndexOf(oz),s>=0){try{r=Cz(e.substring(s+1,o-1))}catch{throw`Invalid throttle specification: `+e}e=e.slice(0,s).trim(),o=e.length}else throw`Unmatched right brace: `+e;s=0}if(!o)throw e;if(e[0]===uz&&(i=++s),c=vz(e,s,cz),c<o&&(n.push(e.substring(a,c).trim()),a=s=++c),s=vz(e,s,iz),s===o)n.push(e.substring(a,o).trim());else if(n.push(e.substring(a,s).trim()),l=[],a=++s,a===o)throw`Unmatched left bracket: `+e;for(;s<o;){if(s=vz(e,s,az),s===o)throw`Unmatched left bracket: `+e;if(l.push(e.substring(a,s).trim()),s<o-1&&e[++s]!==iz)throw`Expected left bracket: `+e;a=++s}if(!(o=n.length)||fz.test(n[o-1]))throw`Invalid event selector: `+e;return o>1?(t.type=n[1],i?t.markname=n[0].slice(1):_z(n[0])?t.marktype=n[0]:t.source=n[0]):t.type=n[0],t.type.slice(-1)===`!`&&(t.consume=!0,t.type=t.type.slice(0,-1)),l!=null&&(t.filter=l),r[0]&&(t.throttle=r[0]),r[1]&&(t.debounce=r[1]),t}function Cz(e){let t=e.split(lz);if(!e.length||t.length>2)throw e;return t.map(t=>{let n=+t;if(n!==n)throw e;return n})}function wz(e){return M(e)?e:{type:e||`pad`}}var Tz=e=>+e||0,Ez=e=>({top:e,bottom:e,left:e,right:e});function Dz(e){return M(e)?e.signal?e:{top:Tz(e.top),bottom:Tz(e.bottom),left:Tz(e.left),right:Tz(e.right)}:Ez(Tz(e))}var Oz=e=>M(e)&&!N(e)?D({},e):{value:e};function kz(e,t,n,r){return n==null?0:(M(n)&&!N(n)||N(n)&&n.length&&M(n[0])?e.update[t]=n:e[r||`enter`][t]={value:n},1)}function Az(e,t,n){for(let n in t)kz(e,n,t[n]);for(let t in n)kz(e,t,n[t],`update`)}function jz(e,t,n){for(let r in t)n&&T(n,r)||(e[r]=D(e[r]||{},t[r]));return e}function Mz(e,t){return t&&(t.enter&&t.enter[e]||t.update&&t.update[e])}var Nz=`frame`,Pz=`scope`,Fz=`axis`,Iz=`axis-domain`,Lz=`axis-grid`,Rz=`axis-label`,zz=`axis-tick`,Bz=`axis-title`,Vz=`legend`,Hz=`legend-band`,Uz=`legend-entry`,Wz=`legend-gradient`,Gz=`legend-label`,Kz=`legend-symbol`,qz=`legend-title`,Jz=`title`,Yz=`title-text`,Xz=`title-subtitle`;function Zz(e,t,n,r,i){let a={},o={},s,c,l,u;for(c in c=`lineBreak`,t===`text`&&i[c]!=null&&!Mz(c,e)&&Qz(a,c,i[c]),(n==`legend`||String(n).startsWith(`axis`))&&(n=null),u=n===`frame`?i.group:n===`mark`?D({},i.mark,i[t]):null,u)l=Mz(c,e)||(c===`fill`||c===`stroke`)&&(Mz(`fill`,e)||Mz(`stroke`,e)),l||Qz(a,c,u[c]);for(c in k(r).forEach(t=>{let n=i.style&&i.style[t];for(let t in n)Mz(t,e)||Qz(a,t,n[t])}),e=D({},e),a)u=a[c],u.signal?(s||={})[c]=u:o[c]=u;return e.enter=D(o,e.enter),s&&(e.update=D(s,e.update)),e}function Qz(e,t,n){e[t]=n&&n.signal?{signal:n.signal}:{value:n}}var $z=e=>P(e)?p(e):e.signal?`(${e.signal})`:aB(e);function eB(e){if(e.gradient!=null)return rB(e);let t=e.signal?`(${e.signal})`:e.color?nB(e.color):e.field==null?e.value===void 0?void 0:p(e.value):aB(e.field);return e.scale!=null&&(t=sB(e,t)),t===void 0&&(t=null),e.exponent!=null&&(t=`pow(${t},${iB(e.exponent)})`),e.mult!=null&&(t+=`*${iB(e.mult)}`),e.offset!=null&&(t+=`+${iB(e.offset)}`),e.round&&(t=`round(${t})`),t}var tB=(e,t,n,r)=>`(${e}(${[t,n,r].map(eB).join(`,`)})+'')`;function nB(e){return e.c?tB(`hcl`,e.h,e.c,e.l):e.h||e.s?tB(`hsl`,e.h,e.s,e.l):e.l||e.a?tB(`lab`,e.l,e.a,e.b):e.r||e.g||e.b?tB(`rgb`,e.r,e.g,e.b):null}function rB(e){let t=[e.start,e.stop,e.count].map(e=>e==null?null:p(e));for(;t.length&&A(t)==null;)t.pop();return t.unshift($z(e.gradient)),`gradient(${t.join(`,`)})`}function iB(e){return M(e)?`(`+eB(e)+`)`:e}function aB(e){return oB(M(e)?e:{datum:e})}function oB(e){let t,n,r;if(e.signal)t=`datum`,r=e.signal;else if(e.group||e.parent){for(n=Math.max(1,e.level||1),t=`item`;n-->0;)t+=`.mark.group`;e.parent?(r=e.parent,t+=`.datum`):r=e.group}else e.datum?(t=`datum`,r=e.datum):j(`Invalid field reference: `+p(e));return e.signal||(r=P(r)?ke(r).map(p).join(`][`):oB(r)),t+`[`+r+`]`}function sB(e,t){let n=$z(e.scale);return e.range==null?(t!==void 0&&(t=`_scale(${n}, ${t})`),e.band&&(t=(t?t+`+`:``)+`_bandwidth(${n})`+(+e.band==1?``:`*`+iB(e.band)),e.extra&&(t=`(datum.extra ? _scale(${n}, datum.extra.value) : ${t})`)),t??=`0`):t=`lerp(_range(${n}), ${+e.range})`,t}function cB(e){let t=``;return e.forEach(e=>{let n=eB(e);t+=e.test?`(${e.test})?${n}:`:n}),A(t)===`:`&&(t+=`null`),t}function lB(e,t,n,r,i,a){let o={};a||={},a.encoders={$encode:o},e=Zz(e,t,n,r,i.config);for(let n in e)o[n]=uB(e[n],t,a,i);return a}function uB(e,t,n,r){let i={},a={};for(let t in e)e[t]!=null&&(i[t]=fB(dB(e[t]),r,n,a));return{$expr:{marktype:t,channels:i},$fields:Object.keys(a),$output:Object.keys(e)}}function dB(e){return N(e)?cB(e):eB(e)}function fB(e,t,n,r){let i=AF(e,t);return i.$fields.forEach(e=>r[e]=1),D(n,i.$params),i.$expr}var pB=`outer`,mB=[`value`,`update`,`init`,`react`,`bind`];function hB(e,t){j(e+` for "outer" push: `+p(t))}function gB(e,t){let n=e.name;if(e.push===pB)t.signals[n]||hB(`No prior signal definition`,n),mB.forEach(t=>{e[t]!==void 0&&hB(`Invalid property `,t)});else{let r=t.addSignal(n,e.value);e.react===!1&&(r.react=!1),e.bind&&t.addBinding(n,e.bind)}}function _B(e,t,n,r){this.id=-1,this.type=e,this.value=t,this.params=n,r&&(this.parent=r)}function vB(e,t,n,r){return new _B(e,t,n,r)}function yB(e,t){return vB(`operator`,e,t)}function U(e){let t={$ref:e.id};return e.id<0&&(e.refs=e.refs||[]).push(t),t}function bB(e,t){return t?{$field:e,$name:t}:{$field:e}}var xB=bB(`key`);function SB(e,t){return{$compare:e,$order:t}}function CB(e,t){let n={$key:e};return t&&(n.$flat=!0),n}var wB=`ascending`,TB=`descending`;function EB(e){return M(e)?(e.order===TB?`-`:`+`)+DB(e.op,e.field):``}function DB(e,t){return(e&&e.signal?`$`+e.signal:e||``)+(e&&t?`_`:``)+(t&&t.signal?`$`+t.signal:t?.replace(/\W+/g,`_`).replace(/^_+|_+$/g,``)||``)}var OB=`scope`,kB=`view`;function AB(e){return e&&e.signal}function jB(e){return e&&e.expr}function MB(e){if(AB(e))return!0;if(M(e)){for(let t in e)if(MB(e[t]))return!0}return!1}function NB(e,t){return e??t}function PB(e){return e&&e.signal||e}var FB=`timer`;function IB(e,t){return(e.merge?RB:e.stream?zB:e.type?BB:j(`Invalid stream specification: `+p(e)))(e,t)}function LB(e){return e===OB?kB:e||kB}function RB(e,t){let n=VB({merge:e.merge.map(e=>IB(e,t))},e,t);return t.addStream(n).id}function zB(e,t){let n=VB({stream:IB(e.stream,t)},e,t);return t.addStream(n).id}function BB(e,t){let n;e.type===FB?(n=t.event(FB,e.throttle),e={between:e.between,filter:e.filter}):n=t.event(LB(e.source),e.type);let r=VB({stream:n},e,t);return Object.keys(r).length===1?n:t.addStream(r).id}function VB(e,t,n){let r=t.between;return r&&(r.length!==2&&j(`Stream "between" parameter must have 2 entries: `+p(t)),e.between=[IB(r[0],n),IB(r[1],n)]),r=t.filter?[].concat(t.filter):[],(t.marktype||t.markname||t.markrole)&&r.push(HB(t.marktype,t.markname,t.markrole)),t.source===OB&&r.push(`inScope(event.item)`),r.length&&(e.filter=AF(`(`+r.join(`)&&(`)+`)`,n).$expr),(r=t.throttle)!=null&&(e.throttle=+r),(r=t.debounce)!=null&&(e.debounce=+r),t.consume&&(e.consume=!0),e}function HB(e,t,n){let r=`event.item`;return r+(e&&e!==`*`?`&&`+r+`.mark.marktype==='`+e+`'`:``)+(n?`&&`+r+`.mark.role==='`+n+`'`:``)+(t?`&&`+r+`.mark.name==='`+t+`'`:``)}var UB={code:`_.$value`,ast:{type:`Identifier`,value:`value`}};function WB(e,t,n){let r=e.encode,i={target:n},a=e.events,o=e.update,s=[];a||j(`Signal update missing events specification.`),P(a)&&(a=gz(a,t.isSubscope()?OB:kB)),a=k(a).filter(e=>e.signal||e.scale?(s.push(e),0):1),s.length>1&&(s=[KB(s)]),a.length&&s.push(a.length>1?{merge:a}:a[0]),r!=null&&(o&&j(`Signal encode and update are mutually exclusive.`),o=`encode(item(),`+p(r)+`)`),i.update=P(o)?AF(o,t):o.expr==null?o.value==null?o.signal==null?j(`Invalid signal update specification.`):{$expr:UB,$params:{$value:t.signalRef(o.signal)}}:o.value:AF(o.expr,t),e.force&&(i.options={force:!0}),s.forEach(e=>t.addUpdate(D(GB(e,t),i)))}function GB(e,t){return{source:e.signal?t.signalRef(e.signal):e.scale?t.scaleRef(e.scale):IB(e,t)}}function KB(e){return{signal:`[`+e.map(e=>e.scale?`scale("`+e.scale+`")`:e.signal)+`]`}}function qB(e,t){let n=t.getSignal(e.name),r=e.update;e.init&&(r?j(`Signals can not include both init and update expressions.`):(r=e.init,n.initonly=!0)),r&&(r=AF(r,t),n.update=r.$expr,n.params=r.$params),e.on&&e.on.forEach(e=>WB(e,t,n.id))}var JB=e=>(t,n,r)=>vB(e,n,t||void 0,r),YB=JB(`aggregate`),XB=JB(`axisticks`),ZB=JB(`bound`),QB=JB(`collect`),$B=JB(`compare`),eV=JB(`datajoin`),tV=JB(`encode`),nV=JB(`expression`),rV=JB(`facet`),iV=JB(`field`),aV=JB(`key`),oV=JB(`legendentries`),sV=JB(`load`),cV=JB(`mark`),lV=JB(`multiextent`),uV=JB(`multivalues`),dV=JB(`overlap`),fV=JB(`params`),pV=JB(`prefacet`),mV=JB(`projection`),hV=JB(`proxy`),gV=JB(`relay`),_V=JB(`render`),vV=JB(`scale`),yV=JB(`sieve`),bV=JB(`sortitems`),xV=JB(`viewlayout`),SV=JB(`values`),CV=0,wV={min:`min`,max:`max`,count:`sum`};function TV(e,t){let n=e.type||`linear`;wl(n)||j(`Unrecognized scale type: `+p(n)),t.addScale(e.name,{type:n,domain:void 0})}function EV(e,t){let n=t.getScale(e.name).params,r;for(r in n.domain=AV(e.domain,e,t),e.range!=null&&(n.range=HV(e,t,n)),e.interpolate!=null&&VV(e.interpolate,n),e.nice!=null&&(n.nice=BV(e.nice,t)),e.bins!=null&&(n.bins=zV(e.bins,t)),e)T(n,r)||r===`name`||(n[r]=DV(e[r],t))}function DV(e,t){return M(e)?e.signal?t.signalRef(e.signal):j(`Unsupported object: `+p(e)):e}function OV(e,t){return e.signal?t.signalRef(e.signal):e.map(e=>DV(e,t))}function kV(e){j(`Can not find data set: `+p(e))}function AV(e,t,n){if(!e){(t.domainMin!=null||t.domainMax!=null)&&j(`No scale domain defined for domainMin/domainMax to override.`);return}return e.signal?n.signalRef(e.signal):(N(e)?jV:e.fields?NV:MV)(e,t,n)}function jV(e,t,n){return e.map(e=>DV(e,n))}function MV(e,t,n){let r=n.getData(e.data);return r||kV(e.data),Dl(t.type)?r.valuesRef(n,e.field,IV(e.sort,!1)):Ml(t.type)?r.domainRef(n,e.field):r.extentRef(n,e.field)}function NV(e,t,n){let r=e.data,i=e.fields.reduce((e,t)=>(t=P(t)?{data:r,field:t}:N(t)||t.signal?PV(t,n):t,e.push(t),e),[]);return(Dl(t.type)?FV:Ml(t.type)?LV:RV)(e,n,i)}function PV(e,t){let n=`_:vega:_`+CV++,r=QB({});if(N(e)&&!e.some(AB))r.value={$ingest:e};else{let i=N(e)?`[`+e.map(e=>AB(e)?e.signal:p(e)).join(`,`)+`]`:e.signal,a=`setdata(`+p(n)+`,`+i+`)`;r.params.input=t.signalRef(a)}return t.addDataPipeline(n,[r,yV({})]),{data:n,field:`data`}}function FV(e,t,n){let r=IV(e.sort,!0),i,a,o={groupby:xB,pulse:n.map(e=>{let n=t.getData(e.data);return n||kV(e.data),n.countsRef(t,e.field,r)})};r&&(i=r.op||`count`,a=r.field?DB(i,r.field):`count`,o.ops=[wV[i]],o.fields=[t.fieldRef(a)],o.as=[a]),i=t.add(YB(o));let s=t.add(QB({pulse:U(i)}));return a=t.add(SV({field:xB,sort:t.sortRef(r),pulse:U(s)})),U(a)}function IV(e,t){return e&&(!e.field&&!e.op?M(e)?e.field=`key`:e={field:`key`}:!e.field&&e.op!==`count`?j(`No field provided for sort aggregate op: `+e.op):t&&e.field&&e.op&&!wV[e.op]&&j(`Multiple domain scales can not be sorted using `+e.op)),e}function LV(e,t,n){let r=n.map(e=>{let n=t.getData(e.data);return n||kV(e.data),n.domainRef(t,e.field)});return U(t.add(uV({values:r})))}function RV(e,t,n){let r=n.map(e=>{let n=t.getData(e.data);return n||kV(e.data),n.extentRef(t,e.field)});return U(t.add(lV({extents:r})))}function zV(e,t){return e.signal||N(e)?OV(e,t):t.objectProperty(e)}function BV(e,t){return e.signal?t.signalRef(e.signal):M(e)?{interval:DV(e.interval),step:DV(e.step)}:DV(e)}function VV(e,t){t.interpolate=DV(e.type||e),e.gamma!=null&&(t.interpolateGamma=DV(e.gamma))}function HV(e,t,n){let r=t.config.range,i=e.range;if(i.signal)return t.signalRef(i.signal);if(P(i)){if(r&&T(r,i))return e=D({},e,{range:r[i]}),HV(e,t,n);i===`width`?i=[0,{signal:`width`}]:i===`height`?i=Dl(e.type)?[0,{signal:`height`}]:[{signal:`height`},0]:j(`Unrecognized scale range value: `+p(i))}else if(i.scheme){n.scheme=N(i.scheme)?OV(i.scheme,t):DV(i.scheme,t),i.extent&&(n.schemeExtent=OV(i.extent,t)),i.count&&(n.schemeCount=DV(i.count,t));return}else if(i.step){n.rangeStep=DV(i.step,t);return}else if(Dl(e.type)&&!N(i))return AV(i,e,t);else N(i)||j(`Unsupported range type: `+p(i));return i.map(e=>(N(e)?OV:DV)(e,t))}function UV(e,t){let n=t.config.projection||{},r={};for(let n in e)n!==`name`&&(r[n]=WV(e[n],n,t));for(let e in n)r[e]??(r[e]=WV(n[e],e,t));t.addProjection(e.name,r)}function WV(e,t,n){return N(e)?e.map(e=>WV(e,t,n)):M(e)?e.signal?n.signalRef(e.signal):t===`fit`?e:j(`Unsupported parameter object: `+p(e)):e}var GV=`top`,KV=`left`,qV=`right`,JV=`bottom`,YV=`center`,XV=`vertical`,ZV=`start`,QV=`middle`,$V=`end`,eH=`index`,tH=`label`,nH=`offset`,rH=`perc`,iH=`value`,aH=`guide-label`,oH=`guide-title`,sH=`group-title`,cH=`group-subtitle`,lH=`symbol`,uH=`gradient`,dH=`discrete`,fH=`size`,pH=[fH,`shape`,`fill`,`stroke`,`strokeWidth`,`strokeDash`,`opacity`],mH={name:1,style:1,interactive:1},hH={value:0},gH={value:1},_H=`group`,vH=`rect`,yH=`rule`,bH=`symbol`,xH=`text`;function SH(e){return e.type=_H,e.interactive=e.interactive||!1,e}function CH(e,t){let n=(n,r)=>NB(e[n],NB(t[n],r));return n.isVertical=n=>XV===NB(e.direction,t.direction||(n?t.symbolDirection:t.gradientDirection)),n.gradientLength=()=>NB(e.gradientLength,t.gradientLength||t.gradientWidth),n.gradientThickness=()=>NB(e.gradientThickness,t.gradientThickness||t.gradientHeight),n.entryColumns=()=>NB(e.columns,NB(t.columns,+n.isVertical(!0))),n}function wH(e,t){let n=t&&(t.update&&t.update[e]||t.enter&&t.enter[e]);return n&&n.signal?n:n?n.value:null}function TH(e,t,n){let r=t.config.style[n];return r&&r[e]}function EH(e,t,n){return`item.anchor === '${ZV}' ? ${e} : item.anchor === '${$V}' ? ${t} : ${n}`}var DH=EH(p(KV),p(qV),p(YV));function OH(e){let t=e(`tickBand`),n=e(`tickOffset`),r,i;return t?t.signal?(r={signal:`(${t.signal}) === 'extent' ? 1 : 0.5`},i={signal:`(${t.signal}) === 'extent'`},M(n)||(n={signal:`(${t.signal}) === 'extent' ? 0 : ${n}`})):t===`extent`?(r=1,i=!0,n=0):(r=.5,i=!1):(r=e(`bandPosition`),i=e(`tickExtra`)),{extra:i,band:r,offset:n}}function kH(e,t){return t?e?M(e)?Object.assign({},e,{offset:kH(e.offset,t)}):{value:e,offset:t}:t:e}function AH(e,t){return t?(e.name=t.name,e.style=t.style||e.style,e.interactive=!!t.interactive,e.encode=jz(e.encode,t,mH)):e.interactive=!1,e}function jH(e,t,n,r){let i=CH(e,n),a=i.isVertical(),o=i.gradientThickness(),s=i.gradientLength(),c,l,u,d,f;a?(l=[0,1],u=[0,0],d=o,f=s):(l=[0,0],u=[1,0],d=s,f=o);let p={enter:c={opacity:hH,x:hH,y:hH,width:Oz(d),height:Oz(f)},update:D({},c,{opacity:gH,fill:{gradient:t,start:l,stop:u}}),exit:{opacity:hH}};return Az(p,{stroke:i(`gradientStrokeColor`),strokeWidth:i(`gradientStrokeWidth`)},{opacity:i(`gradientOpacity`)}),AH({type:vH,role:Wz,encode:p},r)}function MH(e,t,n,r,i){let a=CH(e,n),o=a.isVertical(),s=a.gradientThickness(),c=a.gradientLength(),l,u,d,f,p=``;o?(l=`y`,d=`y2`,u=`x`,f=`width`,p=`1-`):(l=`x`,d=`x2`,u=`y`,f=`height`);let m={opacity:hH,fill:{scale:t,field:iH}};m[l]={signal:p+`datum.perc`,mult:c},m[u]=hH,m[d]={signal:p+`datum.perc2`,mult:c},m[f]=Oz(s);let h={enter:m,update:D({},m,{opacity:gH}),exit:{opacity:hH}};return Az(h,{stroke:a(`gradientStrokeColor`),strokeWidth:a(`gradientStrokeWidth`)},{opacity:a(`gradientOpacity`)}),AH({type:vH,role:Hz,key:iH,from:i,encode:h},r)}var NH=`datum.${rH}<=0?"${KV}":datum.${rH}>=1?"${qV}":"${YV}"`,PH=`datum.${rH}<=0?"${JV}":datum.${rH}>=1?"${GV}":"${QV}"`;function FH(e,t,n,r){let i=CH(e,t),a=i.isVertical(),o=Oz(i.gradientThickness()),s=i.gradientLength(),c=i(`labelOverlap`),l,u,d,f,p=``,m={enter:l={opacity:hH},update:u={opacity:gH,text:{field:tH}},exit:{opacity:hH}};return Az(m,{fill:i(`labelColor`),fillOpacity:i(`labelOpacity`),font:i(`labelFont`),fontSize:i(`labelFontSize`),fontStyle:i(`labelFontStyle`),fontWeight:i(`labelFontWeight`),limit:NB(e.labelLimit,t.gradientLabelLimit)}),a?(l.align={value:`left`},l.baseline=u.baseline={signal:PH},d=`y`,f=`x`,p=`1-`):(l.align=u.align={signal:NH},l.baseline={value:`top`},d=`x`,f=`y`),l[d]=u[d]={signal:p+`datum.perc`,mult:s},l[f]=u[f]=o,o.offset=NB(e.labelOffset,t.gradientLabelOffset)||0,c=c?{separation:i(`labelSeparation`),method:c,order:`datum.index`}:void 0,AH({type:xH,role:Gz,style:aH,key:iH,from:r,encode:m,overlap:c},n)}function IH(e,t,n,r,i){let a=CH(e,t),o=n.entries,s=!!(o&&o.interactive),c=o?o.name:void 0,l=a(`clipHeight`),u=a(`symbolOffset`),d={data:`value`},f=`(${i}) ? datum.${nH} : datum.${fH}`,p=l?Oz(l):{field:fH},m=`datum.${eH}`,h=`max(1, ${i})`,g,_,v,y,b;p.mult=.5,g={enter:_={opacity:hH,x:{signal:f,mult:.5,offset:u},y:p},update:v={opacity:gH,x:_.x,y:_.y},exit:{opacity:hH}};let x=null,S=null;e.fill||(x=t.symbolBaseFillColor,S=t.symbolBaseStrokeColor),Az(g,{fill:a(`symbolFillColor`,x),shape:a(`symbolType`),size:a(`symbolSize`),stroke:a(`symbolStrokeColor`,S),strokeDash:a(`symbolDash`),strokeDashOffset:a(`symbolDashOffset`),strokeWidth:a(`symbolStrokeWidth`)},{opacity:a(`symbolOpacity`)}),pH.forEach(t=>{e[t]&&(v[t]=_[t]={scale:e[t],field:iH})});let C=AH({type:bH,role:Kz,key:iH,from:d,clip:l?!0:void 0,encode:g},n.symbols),w=Oz(u);w.offset=a(`labelOffset`),g={enter:_={opacity:hH,x:{signal:f,offset:w},y:p},update:v={opacity:gH,text:{field:tH},x:_.x,y:_.y},exit:{opacity:hH}},Az(g,{align:a(`labelAlign`),baseline:a(`labelBaseline`),fill:a(`labelColor`),fillOpacity:a(`labelOpacity`),font:a(`labelFont`),fontSize:a(`labelFontSize`),fontStyle:a(`labelFontStyle`),fontWeight:a(`labelFontWeight`),limit:a(`labelLimit`)});let T=AH({type:xH,role:Gz,style:aH,key:iH,from:d,encode:g},n.labels);return g={enter:{noBound:{value:!l},width:hH,height:l?Oz(l):hH,opacity:hH},exit:{opacity:hH},update:v={opacity:gH,row:{signal:null},column:{signal:null}}},a.isVertical(!0)?(y=`ceil(item.mark.items.length / ${h})`,v.row.signal=`${m}%${y}`,v.column.signal=`floor(${m} / ${y})`,b={field:[`row`,m]}):(v.row.signal=`floor(${m} / ${h})`,v.column.signal=`${m} % ${h}`,b={field:m}),v.column.signal=`(${i})?${v.column.signal}:${m}`,r={facet:{data:r,name:`value`,groupby:eH}},SH({role:Pz,from:r,encode:jz(g,o,mH),marks:[C,T],name:c,interactive:s,sort:b})}function LH(e,t){let n=CH(e,t);return{align:n(`gridAlign`),columns:n.entryColumns(),center:{row:!0,column:!1},padding:{row:n(`rowPadding`),column:n(`columnPadding`)}}}var RH=`item.orient === "left"`,zH=`item.orient === "right"`,BH=`(${RH} || ${zH})`,VH=`datum.vgrad && ${BH}`,HH=EH(`"top"`,`"bottom"`,`"middle"`),UH=`datum.vgrad && ${zH} ? (${EH(`"right"`,`"left"`,`"center"`)}) : (${BH} && !(datum.vgrad && ${RH})) ? "left" : ${DH}`,WH=`item._anchor || (${BH} ? "middle" : "start")`,GH=`${VH} ? (${RH} ? -90 : 90) : 0`,KH=`${BH} ? (datum.vgrad ? (${zH} ? "bottom" : "top") : ${HH}) : "top"`;function qH(e,t,n,r){let i=CH(e,t),a={enter:{opacity:hH},update:{opacity:gH,x:{field:{group:`padding`}},y:{field:{group:`padding`}}},exit:{opacity:hH}};return Az(a,{orient:i(`titleOrient`),_anchor:i(`titleAnchor`),anchor:{signal:WH},angle:{signal:GH},align:{signal:UH},baseline:{signal:KH},text:e.title,fill:i(`titleColor`),fillOpacity:i(`titleOpacity`),font:i(`titleFont`),fontSize:i(`titleFontSize`),fontStyle:i(`titleFontStyle`),fontWeight:i(`titleFontWeight`),limit:i(`titleLimit`),lineHeight:i(`titleLineHeight`)},{align:i(`titleAlign`),baseline:i(`titleBaseline`)}),AH({type:xH,role:qz,style:oH,from:r,encode:a},n)}function JH(e,t){let n;return M(e)&&(e.signal?n=e.signal:e.path?n=`pathShape(`+YH(e.path)+`)`:e.sphere&&(n=`geoShape(`+YH(e.sphere)+`, {type: "Sphere"})`)),n?t.signalRef(n):!!e}function YH(e){return M(e)&&e.signal?e.signal:p(e)}function XH(e){let t=e.role||``;return t.startsWith(`axis`)||t.startsWith(`legend`)||t.startsWith(`title`)?t:e.type===_H?Pz:t||`mark`}function ZH(e){return{marktype:e.type,name:e.name||void 0,role:e.role||XH(e),zindex:+e.zindex||void 0,aria:e.aria,description:e.description}}function QH(e,t){return e&&e.signal?t.signalRef(e.signal):e!==!1}function $H(e,t){let n=$i(e.type);n||j(`Unrecognized transform type: `+p(e.type));let r=vB(n.type.toLowerCase(),null,eU(n,e,t));return e.signal&&t.addSignal(e.signal,t.proxy(r)),r.metadata=n.metadata||{},r}function eU(e,t,n){let r={},i=e.params.length;for(let a=0;a<i;++a){let i=e.params[a];r[i.name]=tU(i,t,n)}return r}function tU(e,t,n){let r=e.type,i=t[e.name];if(r===`index`)return rU(e,t,n);if(i===void 0){e.required&&j(`Missing required `+p(t.type)+` parameter: `+p(e.name));return}return r===`param`?iU(e,t,n):r===`projection`?n.projectionRef(t[e.name]):e.array&&!AB(i)?i.map(t=>nU(e,t,n)):nU(e,i,n)}function nU(e,t,n){let r=e.type;if(AB(t))return lU(r)?j(`Expression references can not be signals.`):uU(r)?n.fieldRef(t):dU(r)?n.compareRef(t):n.signalRef(t.signal);{let i=e.expr||uU(r);return i&&oU(t)?n.exprRef(t.expr,t.as):i&&sU(t)?bB(t.field,t.as):lU(r)?AF(t,n):cU(r)?U(n.getData(t).values):uU(r)?bB(t):dU(r)?n.compareRef(t):t}}function rU(e,t,n){return P(t.from)||j(`Lookup "from" parameter must be a string literal.`),n.getData(t.from).lookupRef(n,t.key)}function iU(e,t,n){let r=t[e.name];return e.array?(N(r)||j(`Expected an array of sub-parameters. Instead: `+p(r)),r.map(t=>aU(e,t,n))):aU(e,r,n)}function aU(e,t,n){let r=e.params.length,i;for(let n=0;n<r;++n){i=e.params[n];for(let e in i.key)if(i.key[e]!==t[e]){i=null;break}if(i)break}i||j(`Unsupported parameter: `+p(t));let a=D(eU(i,t,n),i.key);return U(n.add(fV(a)))}var oU=e=>e&&e.expr,sU=e=>e&&e.field,cU=e=>e===`data`,lU=e=>e===`expr`,uU=e=>e===`field`,dU=e=>e===`compare`;function fU(e,t,n){let r,i,a,o,s;return e?(r=e.facet)&&(t||j(`Only group marks can be faceted.`),r.field==null?(e.data?s=U(n.getData(e.data).aggregate):(a=$H(D({type:`aggregate`,groupby:k(r.groupby)},r.aggregate),n),a.params.key=n.keyRef(r.groupby),a.params.pulse=pU(r,n),o=s=U(n.add(a))),i=n.keyRef(r.groupby,!0)):o=s=pU(r,n)):o=U(n.add(QB(null,[{}]))),o||=pU(e,n),{key:i,pulse:o,parent:s}}function pU(e,t){return e.$ref?e:e.data&&e.data.$ref?e.data:U(t.getData(e.data).output)}function mU(e,t,n,r,i){this.scope=e,this.input=t,this.output=n,this.values=r,this.aggregate=i,this.index={}}mU.fromEntries=function(e,t){let n=t.length,r=t[n-1],i=t[n-2],a=t[0],o=null,s=1;for(a&&a.type===`load`&&(a=t[1]),e.add(t[0]);s<n;++s)t[s].params.pulse=U(t[s-1]),e.add(t[s]),t[s].type===`aggregate`&&(o=t[s]);return new mU(e,a,i,r,o)};function hU(e){return P(e)?e:null}function gU(e,t,n){let r=DB(n.op,n.field),i;if(t.ops){for(let e=0,n=t.as.length;e<n;++e)if(t.as[e]===r)return}else t.ops=[`count`],t.fields=[null],t.as=[`count`];n.op&&(t.ops.push((i=n.op.signal)?e.signalRef(i):n.op),t.fields.push(e.fieldRef(n.field)),t.as.push(r))}function _U(e,t,n,r,i,a,o){let s=t[n]||(t[n]={}),c=EB(a),l=hU(i),u,d;if(l!=null&&(e=t.scope,l+=c?`|`+c:``,u=s[l]),!u){let n=a?{field:xB,pulse:t.countsRef(e,i,a)}:{field:e.fieldRef(i),pulse:U(t.output)};c&&(n.sort=e.sortRef(a)),d=e.add(vB(r,void 0,n)),o&&(t.index[i]=d),u=U(d),l!=null&&(s[l]=u)}return u}mU.prototype={countsRef(e,t,n){let r=this,i=r.counts||={},a=hU(t),o,s,c;return a!=null&&(e=r.scope,o=i[a]),o?n&&n.field&&gU(e,o.agg.params,n):(c={groupby:e.fieldRef(t,`key`),pulse:U(r.output)},n&&n.field&&gU(e,c,n),s=e.add(YB(c)),o=e.add(QB({pulse:U(s)})),o={agg:s,ref:U(o)},a!=null&&(i[a]=o)),o.ref},tuplesRef(){return U(this.values)},extentRef(e,t){return _U(e,this,`extent`,`extent`,t,!1)},domainRef(e,t){return _U(e,this,`domain`,`values`,t,!1)},valuesRef(e,t,n){return _U(e,this,`vals`,`values`,t,n||!0)},lookupRef(e,t){return _U(e,this,`lookup`,`tupleindex`,t,!1)},indataRef(e,t){return _U(e,this,`indata`,`tupleindex`,t,!0,!0)}};function vU(e,t,n){let r=e.from.facet,i=r.name,a=pU(r,t),o;r.name||j(`Facet must have a name: `+p(r)),r.data||j(`Facet must reference a data set: `+p(r)),r.field?o=t.add(pV({field:t.fieldRef(r.field),pulse:a})):r.groupby?o=t.add(rV({key:t.keyRef(r.groupby),group:U(t.proxy(n.parent)),pulse:a})):j(`Facet must specify groupby or field: `+p(r));let s=t.fork(),c=s.add(QB()),l=s.add(yV({pulse:U(c)}));s.addData(i,new mU(s,c,c,l)),s.addSignal(`parent`,null),o.params.subflow={$subflow:s.parse(e).toRuntime()}}function yU(e,t,n){let r=t.add(pV({pulse:n.pulse})),i=t.fork();i.add(yV()),i.addSignal(`parent`,null),r.params.subflow={$subflow:i.parse(e).toRuntime()}}function bU(e,t,n){let r=e.remove,i=e.insert,a=e.toggle,o=e.modify,s=e.values,c=t.add(yB()),l=AF(`if(`+e.trigger+`,modify("`+n+`",`+[i,r,a,o,s].map(e=>e??`null`).join(`,`)+`),0)`,t);c.update=l.$expr,c.params=l.$params}function xU(e,t){let n=XH(e),r=e.type===_H,i=e.from&&e.from.facet,a=e.overlap,o=e.layout||n===`scope`||n===`frame`,s,c,l,u,d,f,p,m=n===`mark`||o||i,h=fU(e.from,r,t);c=t.add(eV({key:h.key||(e.key?bB(e.key):void 0),pulse:h.pulse,clean:!r}));let g=U(c);c=l=t.add(QB({pulse:g})),c=t.add(cV({markdef:ZH(e),interactive:QH(e.interactive,t),clip:JH(e.clip,t),context:{$context:!0},groups:t.lookup(),parent:t.signals.parent?t.signalRef(`parent`):null,index:t.markpath(),pulse:U(c)}));let _=U(c);c=u=t.add(tV(lB(e.encode,e.type,n,e.style,t,{mod:!1,pulse:_}))),c.params.parent=t.encode(),e.transform&&e.transform.forEach(e=>{let n=$H(e,t),r=n.metadata;(r.generates||r.changes)&&j(`Mark transforms should not generate new data.`),r.nomod||(u.params.mod=!0),n.params.pulse=U(c),t.add(c=n)}),e.sort&&(c=t.add(bV({sort:t.compareRef(e.sort),pulse:U(c)})));let v=U(c);(i||o)&&(o=t.add(xV({layout:t.objectProperty(e.layout),legends:t.legends,mark:_,pulse:v})),f=U(o));let y=t.add(ZB({mark:_,pulse:f||v}));p=U(y),r&&(m&&(s=t.operators,s.pop(),o&&s.pop()),t.pushState(v,f||p,g),i?vU(e,t,h):m?yU(e,t,h):t.parse(e),t.popState(),m&&(o&&s.push(o),s.push(y))),a&&(p=SU(a,p,t));let b=t.add(_V({pulse:p})),x=t.add(yV({pulse:U(b)},void 0,t.parent()));e.name!=null&&(d=e.name,t.addData(d,new mU(t,l,b,x)),e.on&&e.on.forEach(e=>{(e.insert||e.remove||e.toggle)&&j(`Marks only support modify triggers.`),bU(e,t,d)}))}function SU(e,t,n){let r=e.method,i=e.bound,a=e.separation,o={separation:AB(a)?n.signalRef(a.signal):a,method:AB(r)?n.signalRef(r.signal):r,pulse:t};if(e.order&&(o.sort=n.compareRef({field:e.order})),i){let e=i.tolerance;o.boundTolerance=AB(e)?n.signalRef(e.signal):+e,o.boundScale=n.scaleRef(i.scale),o.boundOrient=i.orient}return U(n.add(dV(o)))}function CU(e,t){let n=t.config.legend,r=e.encode||{},i=CH(e,n),a=r.legend||{},o=a.name||void 0,s=a.interactive,c=a.style,l={},u=0,d,f,p;pH.forEach(t=>e[t]?(l[t]=e[t],u||=e[t]):0),u||j(`Missing valid scale for legend.`);let m=wU(e,t.scaleType(u)),h={title:e.title!=null,scales:l,type:m,vgrad:m!==`symbol`&&i.isVertical()},g=U(t.add(QB(null,[h]))),_={enter:{x:{value:0},y:{value:0}}},v=U(t.add(oV(f={type:m,scale:t.scaleRef(u),count:t.objectProperty(i(`tickCount`)),limit:t.property(i(`symbolLimit`)),values:t.objectProperty(e.values),minstep:t.property(e.tickMinStep),formatType:t.property(e.formatType),formatSpecifier:t.property(e.format)})));return m===uH?(p=[jH(e,u,n,r.gradient),FH(e,n,r.labels,v)],f.count=f.count||t.signalRef(`max(2,2*floor((${PB(i.gradientLength())})/100))`)):m===dH?p=[MH(e,u,n,r.gradient,v),FH(e,n,r.labels,v)]:(d=LH(e,n),p=[IH(e,n,r,v,PB(d.columns))],f.size=DU(e,t,p[0].marks)),p=[SH({role:Uz,from:g,encode:_,marks:p,layout:d,interactive:s})],h.title&&p.push(qH(e,n,r.title,g)),xU(SH({role:Vz,from:g,encode:jz(EU(i,e,n),a,mH),marks:p,aria:i(`aria`),description:i(`description`),zindex:i(`zindex`),name:o,interactive:s,style:c}),t)}function wU(e,t){let n=e.type||lH;return!e.type&&TU(e)===1&&(e.fill||e.stroke)&&(n=El(t)?uH:Ol(t)?dH:lH),n===uH?Ol(t)?dH:uH:n}function TU(e){return pH.reduce((t,n)=>t+ +!!e[n],0)}function EU(e,t,n){let r={enter:{},update:{}};return Az(r,{orient:e(`orient`),offset:e(`offset`),padding:e(`padding`),titlePadding:e(`titlePadding`),cornerRadius:e(`cornerRadius`),fill:e(`fillColor`),stroke:e(`strokeColor`),strokeWidth:n.strokeWidth,strokeDash:n.strokeDash,x:e(`legendX`),y:e(`legendY`),format:t.format,formatType:t.formatType}),r}function DU(e,t,n){return AF(`max(ceil(sqrt(${PB(OU(`size`,e,n))})+${PB(OU(`strokeWidth`,e,n))}),${PB(kU(n[1].encode,t,aH))})`,t)}function OU(e,t,n){return t[e]?`scale("${t[e]}",datum)`:wH(e,n[0].encode)}function kU(e,t,n){return wH(`fontSize`,e)||TH(`fontSize`,t,n)}var AU=`item.orient==="${KV}"?-90:item.orient==="${qV}"?90:0`;function jU(e,t){e=P(e)?{text:e}:e;let n=CH(e,t.config.title),r=e.encode||{},i=r.group||{},a=i.name||void 0,o=i.interactive,s=i.style,c=[],l=U(t.add(QB(null,[{}])));return c.push(PU(e,n,MU(e),l)),e.subtitle&&c.push(FU(e,n,r.subtitle,l)),xU(SH({role:Jz,from:l,encode:NU(n,i),marks:c,aria:n(`aria`),description:n(`description`),zindex:n(`zindex`),name:a,interactive:o,style:s}),t)}function MU(e){let t=e.encode;return t&&t.title||D({name:e.name,interactive:e.interactive,style:e.style},t)}function NU(e,t){let n={enter:{},update:{}};return Az(n,{orient:e(`orient`),anchor:e(`anchor`),align:{signal:DH},angle:{signal:AU},limit:e(`limit`),frame:e(`frame`),offset:e(`offset`)||0,padding:e(`subtitlePadding`)}),jz(n,t,mH)}function PU(e,t,n,r){let i={value:0},a=e.text,o={enter:{opacity:i},update:{opacity:{value:1}},exit:{opacity:i}};return Az(o,{text:a,align:{signal:`item.mark.group.align`},angle:{signal:`item.mark.group.angle`},limit:{signal:`item.mark.group.limit`},baseline:`top`,dx:t(`dx`),dy:t(`dy`),fill:t(`color`),font:t(`font`),fontSize:t(`fontSize`),fontStyle:t(`fontStyle`),fontWeight:t(`fontWeight`),lineHeight:t(`lineHeight`)},{align:t(`align`),angle:t(`angle`),baseline:t(`baseline`)}),AH({type:xH,role:Yz,style:sH,from:r,encode:o},n)}function FU(e,t,n,r){let i={value:0},a=e.subtitle,o={enter:{opacity:i},update:{opacity:{value:1}},exit:{opacity:i}};return Az(o,{text:a,align:{signal:`item.mark.group.align`},angle:{signal:`item.mark.group.angle`},limit:{signal:`item.mark.group.limit`},baseline:`top`,dx:t(`dx`),dy:t(`dy`),fill:t(`subtitleColor`),font:t(`subtitleFont`),fontSize:t(`subtitleFontSize`),fontStyle:t(`subtitleFontStyle`),fontWeight:t(`subtitleFontWeight`),lineHeight:t(`subtitleLineHeight`)},{align:t(`align`),angle:t(`angle`),baseline:t(`baseline`)}),AH({type:xH,role:Xz,style:cH,from:r,encode:o},n)}function IU(e,t){let n=[];e.transform&&e.transform.forEach(e=>{n.push($H(e,t))}),e.on&&e.on.forEach(n=>{bU(n,t,e.name)}),t.addDataPipeline(e.name,LU(e,t,n))}function LU(e,t,n){let r=[],i=null,a=!1,o=!1,s,c,l,u,d;for(e.values?AB(e.values)||MB(e.format)?(r.push(zU(t,e)),r.push(i=RU())):r.push(i=RU({$ingest:e.values,$format:e.format})):e.url?MB(e.url)||MB(e.format)?(r.push(zU(t,e)),r.push(i=RU())):r.push(i=RU({$request:e.url,$format:e.format})):e.source&&(i=s=k(e.source).map(e=>U(t.getData(e).output)),r.push(null)),c=0,l=n.length;c<l;++c)u=n[c],d=u.metadata,!i&&!d.source&&r.push(i=RU()),r.push(u),d.generates&&(o=!0),d.modifies&&!o&&(a=!0),d.source?i=u:d.changes&&(i=null);return s&&(l=s.length-1,r[0]=gV({derive:a,pulse:l?s:s[0]}),(a||l)&&r.splice(1,0,RU())),i||r.push(RU()),r.push(yV({})),r}function RU(e){let t=QB({},e);return t.metadata={source:!0},t}function zU(e,t){return sV({url:t.url?e.property(t.url):void 0,async:t.async?e.property(t.async):void 0,values:t.values?e.property(t.values):void 0,format:e.objectProperty(t.format)})}var BU=e=>e===JV||e===GV,VU=(e,t,n)=>AB(e)?JU(e.signal,t,n):e===KV||e===GV?t:n,HU=(e,t,n)=>AB(e)?KU(e.signal,t,n):BU(e)?t:n,UU=(e,t,n)=>AB(e)?qU(e.signal,t,n):BU(e)?n:t,WU=(e,t,n)=>AB(e)?YU(e.signal,t,n):e===GV?{value:t}:{value:n},GU=(e,t,n)=>AB(e)?XU(e.signal,t,n):e===qV?{value:t}:{value:n},KU=(e,t,n)=>ZU(`${e} === '${GV}' || ${e} === '${JV}'`,t,n),qU=(e,t,n)=>ZU(`${e} !== '${GV}' && ${e} !== '${JV}'`,t,n),JU=(e,t,n)=>$U(`${e} === '${KV}' || ${e} === '${GV}'`,t,n),YU=(e,t,n)=>$U(`${e} === '${GV}'`,t,n),XU=(e,t,n)=>$U(`${e} === '${qV}'`,t,n),ZU=(e,t,n)=>(t=t==null?t:Oz(t),n=n==null?n:Oz(n),QU(t)&&QU(n)?(t=t?t.signal||p(t.value):null,n=n?n.signal||p(n.value):null,{signal:`${e} ? (${t}) : (${n})`}):[D({test:e},t)].concat(n||[])),QU=e=>e==null||Object.keys(e).length===1,$U=(e,t,n)=>({signal:`${e} ? (${tW(t)}) : (${tW(n)})`}),eW=(e,t,n,r,i)=>({signal:(r==null?``:`${e} === '${KV}' ? (${tW(r)}) : `)+(n==null?``:`${e} === '${JV}' ? (${tW(n)}) : `)+(i==null?``:`${e} === '${qV}' ? (${tW(i)}) : `)+(t==null?``:`${e} === '${GV}' ? (${tW(t)}) : `)+`(null)`}),tW=e=>AB(e)?e.signal:e==null?null:p(e),nW=(e,t)=>t===0?0:AB(e)?{signal:`(${e.signal}) * ${t}`}:{value:e*t},rW=(e,t)=>{let n=e.signal;return n&&n.endsWith(`(null)`)?{signal:n.slice(0,-6)+t.signal}:e};function iW(e,t,n,r){let i;if(t&&T(t,e))return t[e];if(T(n,e))return n[e];if(e.startsWith(`title`)){switch(e){case`titleColor`:i=`fill`;break;case`titleFont`:case`titleFontSize`:case`titleFontWeight`:i=e[5].toLowerCase()+e.slice(6)}return r[oH][i]}if(e.startsWith(`label`)){switch(e){case`labelColor`:i=`fill`;break;case`labelFont`:case`labelFontSize`:i=e[5].toLowerCase()+e.slice(6)}return r[aH][i]}return null}function aW(e){let t={};for(let n of e)if(n)for(let e in n)t[e]=1;return Object.keys(t)}function oW(e,t){var n=t.config,r=n.style,i=n.axis,a=t.scaleType(e.scale)===`band`&&n.axisBand,o=e.orient,s,c,l;if(AB(o)){let e=aW([n.axisX,n.axisY]),t=aW([n.axisTop,n.axisBottom,n.axisLeft,n.axisRight]);s={};for(l of e)s[l]=HU(o,iW(l,n.axisX,i,r),iW(l,n.axisY,i,r));c={};for(l of t)c[l]=eW(o.signal,iW(l,n.axisTop,i,r),iW(l,n.axisBottom,i,r),iW(l,n.axisLeft,i,r),iW(l,n.axisRight,i,r))}else s=o===GV||o===JV?n.axisX:n.axisY,c=n[`axis`+o[0].toUpperCase()+o.slice(1)];return s||c||a?D({},i,s,c,a):i}function sW(e,t,n,r){let i=CH(e,t),a=e.orient,o,s,c={enter:o={opacity:hH},update:s={opacity:gH},exit:{opacity:hH}};Az(c,{stroke:i(`domainColor`),strokeCap:i(`domainCap`),strokeDash:i(`domainDash`),strokeDashOffset:i(`domainDashOffset`),strokeWidth:i(`domainWidth`),strokeOpacity:i(`domainOpacity`)});let l=cW(e,0),u=cW(e,1);return o.x=s.x=HU(a,l,hH),o.x2=s.x2=HU(a,u),o.y=s.y=UU(a,l,hH),o.y2=s.y2=UU(a,u),AH({type:yH,role:Iz,from:r,encode:c},n)}function cW(e,t){return{scale:e.scale,range:t}}function lW(e,t,n,r,i){let a=CH(e,t),o=e.orient,s=e.gridScale,c=VU(o,1,-1),l=uW(e.offset,c),u,d,f,p={enter:u={opacity:hH},update:f={opacity:gH},exit:d={opacity:hH}};Az(p,{stroke:a(`gridColor`),strokeCap:a(`gridCap`),strokeDash:a(`gridDash`),strokeDashOffset:a(`gridDashOffset`),strokeOpacity:a(`gridOpacity`),strokeWidth:a(`gridWidth`)});let m={scale:e.scale,field:iH,band:i.band,extra:i.extra,offset:i.offset,round:a(`tickRound`)},h=HU(o,{signal:`height`},{signal:`width`}),g=s?{scale:s,range:0,mult:c,offset:l}:{value:0,offset:l},_=s?{scale:s,range:1,mult:c,offset:l}:D(h,{mult:c,offset:l});return u.x=f.x=HU(o,m,g),u.y=f.y=UU(o,m,g),u.x2=f.x2=UU(o,_),u.y2=f.y2=HU(o,_),d.x=HU(o,m),d.y=UU(o,m),AH({type:yH,role:Lz,key:iH,from:r,encode:p},n)}function uW(e,t){if(t!==1){if(!M(e))e=AB(t)?{signal:`(${t.signal}) * (${e||0})`}:t*(e||0);else{let n=e=D({},e);for(;n.mult!=null;)if(M(n.mult))n=n.mult=D({},n.mult);else return n.mult=AB(t)?{signal:`(${n.mult}) * (${t.signal})`}:n.mult*t,e;n.mult=t}}return e}function dW(e,t,n,r,i,a){let o=CH(e,t),s=e.orient,c=VU(s,-1,1),l,u,d,f={enter:l={opacity:hH},update:d={opacity:gH},exit:u={opacity:hH}};Az(f,{stroke:o(`tickColor`),strokeCap:o(`tickCap`),strokeDash:o(`tickDash`),strokeDashOffset:o(`tickDashOffset`),strokeOpacity:o(`tickOpacity`),strokeWidth:o(`tickWidth`)});let p=Oz(i);p.mult=c;let m={scale:e.scale,field:iH,band:a.band,extra:a.extra,offset:a.offset,round:o(`tickRound`)};return d.y=l.y=HU(s,hH,m),d.y2=l.y2=HU(s,p),u.x=HU(s,m),d.x=l.x=UU(s,hH,m),d.x2=l.x2=UU(s,p),u.y=UU(s,m),AH({type:yH,role:zz,key:iH,from:r,encode:f},n)}function fW(e,t,n,r,i){return{signal:`flush(range("`+e+`"), scale("`+e+`", datum.value), `+t+`,`+n+`,`+r+`,`+i+`)`}}function pW(e,t,n,r,i,a){let o=CH(e,t),s=e.orient,c=e.scale,l=VU(s,-1,1),u=PB(o(`labelFlush`)),d=PB(o(`labelFlushOffset`)),f=o(`labelAlign`),p=o(`labelBaseline`),m=u===0||!!u,h,g=Oz(i);g.mult=l,g.offset=Oz(o(`labelPadding`)||0),g.offset.mult=l;let _={scale:c,field:iH,band:.5,offset:kH(a.offset,o(`labelOffset`))},v=HU(s,m?fW(c,u,`"left"`,`"right"`,`"center"`):{value:`center`},GU(s,`left`,`right`)),y=HU(s,WU(s,`bottom`,`top`),m?fW(c,u,`"top"`,`"bottom"`,`"middle"`):{value:`middle`}),b=fW(c,u,`-(${d})`,d,0);m&&=d;let x={opacity:hH,x:HU(s,_,g),y:UU(s,_,g)},S={enter:x,update:h={opacity:gH,text:{field:tH},x:x.x,y:x.y,align:v,baseline:y},exit:{opacity:hH,x:x.x,y:x.y}};Az(S,{dx:!f&&m?HU(s,b):null,dy:!p&&m?UU(s,b):null}),Az(S,{angle:o(`labelAngle`),fill:o(`labelColor`),fillOpacity:o(`labelOpacity`),font:o(`labelFont`),fontSize:o(`labelFontSize`),fontWeight:o(`labelFontWeight`),fontStyle:o(`labelFontStyle`),limit:o(`labelLimit`),lineHeight:o(`labelLineHeight`)},{align:f,baseline:p});let C=o(`labelBound`),w=o(`labelOverlap`);return w=w||C?{separation:o(`labelSeparation`),method:w,order:`datum.index`,bound:C?{scale:c,orient:s,tolerance:C}:null}:void 0,h.align!==v&&(h.align=rW(h.align,v)),h.baseline!==y&&(h.baseline=rW(h.baseline,y)),AH({type:xH,role:Rz,style:aH,key:iH,from:r,encode:S,overlap:w},n)}function mW(e,t,n,r){let i=CH(e,t),a=e.orient,o=VU(a,-1,1),s,c,l={enter:s={opacity:hH,anchor:Oz(i(`titleAnchor`,null)),align:{signal:DH}},update:c=D({},s,{opacity:gH,text:Oz(e.title)}),exit:{opacity:hH}},u={signal:`lerp(range("${e.scale}"), ${EH(0,1,.5)})`};return c.x=HU(a,u),c.y=UU(a,u),s.angle=HU(a,hH,nW(o,90)),s.baseline=HU(a,WU(a,JV,GV),{value:JV}),c.angle=s.angle,c.baseline=s.baseline,Az(l,{fill:i(`titleColor`),fillOpacity:i(`titleOpacity`),font:i(`titleFont`),fontSize:i(`titleFontSize`),fontStyle:i(`titleFontStyle`),fontWeight:i(`titleFontWeight`),limit:i(`titleLimit`),lineHeight:i(`titleLineHeight`)},{align:i(`titleAlign`),angle:i(`titleAngle`),baseline:i(`titleBaseline`)}),hW(i,a,l,n),l.update.align=rW(l.update.align,s.align),l.update.angle=rW(l.update.angle,s.angle),l.update.baseline=rW(l.update.baseline,s.baseline),AH({type:xH,role:Bz,style:oH,from:r,encode:l},n)}function hW(e,t,n,r){let i=(e,t)=>e==null?!Mz(t,r):(n.update[t]=rW(Oz(e),n.update[t]),!1),a=i(e(`titleX`),`x`),o=i(e(`titleY`),`y`);n.enter.auto=o===a?Oz(o):HU(t,Oz(o),Oz(a))}function gW(e,t){let n=oW(e,t),r=e.encode||{},i=r.axis||{},a=i.name||void 0,o=i.interactive,s=i.style,c=CH(e,n),l=OH(c),u={scale:e.scale,ticks:!!c(`ticks`),labels:!!c(`labels`),grid:!!c(`grid`),domain:!!c(`domain`),title:e.title!=null},d=U(t.add(QB({},[u]))),f=U(t.add(XB({scale:t.scaleRef(e.scale),extra:t.property(l.extra),count:t.objectProperty(e.tickCount),values:t.objectProperty(e.values),minstep:t.property(e.tickMinStep),formatType:t.property(e.formatType),formatSpecifier:t.property(e.format)}))),p=[],m;return u.grid&&p.push(lW(e,n,r.grid,f,l)),u.ticks&&(m=c(`tickSize`),p.push(dW(e,n,r.ticks,f,m,l))),u.labels&&(m=u.ticks?m:0,p.push(pW(e,n,r.labels,f,m,l))),u.domain&&p.push(sW(e,n,r.domain,d)),u.title&&p.push(mW(e,n,r.title,d)),xU(SH({role:Fz,from:d,encode:jz(_W(c,e),i,mH),marks:p,aria:c(`aria`),description:c(`description`),zindex:c(`zindex`),name:a,interactive:o,style:s}),t)}function _W(e,t){let n={enter:{},update:{}};return Az(n,{orient:e(`orient`),offset:e(`offset`)||0,position:NB(t.position,0),titlePadding:e(`titlePadding`),minExtent:e(`minExtent`),maxExtent:e(`maxExtent`),range:{signal:`abs(span(range("${t.scale}")))`},translate:e(`translate`),format:t.format,formatType:t.formatType}),n}function vW(e,t,n){let r=k(e.signals),i=k(e.scales);return n||r.forEach(e=>gB(e,t)),k(e.projections).forEach(e=>UV(e,t)),i.forEach(e=>TV(e,t)),k(e.data).forEach(e=>IU(e,t)),i.forEach(e=>EV(e,t)),(n||r).forEach(e=>qB(e,t)),k(e.axes).forEach(e=>gW(e,t)),k(e.marks).forEach(e=>xU(e,t)),k(e.legends).forEach(e=>CU(e,t)),e.title&&jU(e.title,t),t.parseLambdas(),t}var yW=e=>jz({enter:{x:{value:0},y:{value:0}},update:{width:{signal:`width`},height:{signal:`height`}}},e);function bW(e,t){let n=t.config,r=U(t.root=t.add(yB())),i=SW(e,n);i.forEach(e=>gB(e,t)),t.description=e.description||n.description,t.eventConfig=n.events,t.legends=t.objectProperty(n.legend&&n.legend.layout),t.locale=n.locale;let a=t.add(QB()),o=t.add(tV(lB(yW(e.encode),_H,Nz,e.style,t,{pulse:U(a)}))),s=t.add(xV({layout:t.objectProperty(e.layout),legends:t.legends,autosize:t.signalRef(`autosize`),mark:r,pulse:U(o)}));t.operators.pop(),t.pushState(U(o),U(s),null),vW(e,t,i),t.operators.push(s);let c=t.add(ZB({mark:r,pulse:U(s)}));return c=t.add(_V({pulse:U(c)})),c=t.add(yV({pulse:U(c)})),t.addData(`root`,new mU(t,a,a,c)),t}function xW(e,t){return t&&t.signal?{name:e,update:t.signal}:{name:e,value:t}}function SW(e,t){let n=n=>NB(e[n],t[n]),r=[xW(`background`,n(`background`)),xW(`autosize`,wz(n(`autosize`))),xW(`padding`,Dz(n(`padding`))),xW(`width`,n(`width`)||0),xW(`height`,n(`height`)||0)],i=r.reduce((e,t)=>(e[t.name]=t,e),{}),a={};return k(e.signals).forEach(e=>{T(i,e.name)?e=D(i[e.name],e):r.push(e),a[e.name]=e}),k(t.signals).forEach(e=>{!T(a,e.name)&&!T(i,e.name)&&r.push(e)}),r}function CW(e,t){this.config=e||{},this.options=t||{},this.bindings=[],this.field={},this.signals={},this.lambdas={},this.scales={},this.events={},this.data={},this.streams=[],this.updates=[],this.operators=[],this.eventConfig=null,this.locale=null,this._id=0,this._subid=0,this._nextsub=[0],this._parent=[],this._encode=[],this._lookup=[],this._markpath=[]}function wW(e){this.config=e.config,this.options=e.options,this.legends=e.legends,this.field=Object.create(e.field),this.signals=Object.create(e.signals),this.lambdas=Object.create(e.lambdas),this.scales=Object.create(e.scales),this.events=Object.create(e.events),this.data=Object.create(e.data),this.streams=[],this.updates=[],this.operators=[],this._id=0,this._subid=++e._nextsub[0],this._nextsub=e._nextsub,this._parent=e._parent.slice(),this._encode=e._encode.slice(),this._lookup=e._lookup.slice(),this._markpath=e._markpath}CW.prototype=wW.prototype={parse(e){return vW(e,this)},fork(){return new wW(this)},isSubscope(){return this._subid>0},toRuntime(){return this.finish(),{description:this.description,operators:this.operators,streams:this.streams,updates:this.updates,bindings:this.bindings,eventConfig:this.eventConfig,locale:this.locale}},id(){return(this._subid?this._subid+`:`:0)+this._id++},add(e){return this.operators.push(e),e.id=this.id(),e.refs&&=(e.refs.forEach(t=>{t.$ref=e.id}),null),e},proxy(e){let t=e instanceof _B?U(e):e;return this.add(hV({value:t}))},addStream(e){return this.streams.push(e),e.id=this.id(),e},addUpdate(e){return this.updates.push(e),e},finish(){let e,t;for(e in this.root&&(this.root.root=!0),this.signals)this.signals[e].signal=e;for(e in this.scales)this.scales[e].scale=e;function n(e,t,n){let r,i;e&&(r=e.data||={},i=r[t]||(r[t]=[]),i.push(n))}for(e in this.data){t=this.data[e],n(t.input,e,`input`),n(t.output,e,`output`),n(t.values,e,`values`);for(let r in t.index)n(t.index[r],e,`index:`+r)}return this},pushState(e,t,n){this._encode.push(U(this.add(yV({pulse:e})))),this._parent.push(t),this._lookup.push(n?U(this.proxy(n)):null),this._markpath.push(-1)},popState(){this._encode.pop(),this._parent.pop(),this._lookup.pop(),this._markpath.pop()},parent(){return A(this._parent)},encode(){return A(this._encode)},lookup(){return A(this._lookup)},markpath(){let e=this._markpath;return++e[e.length-1]},fieldRef(e,t){if(P(e))return bB(e,t);e.signal||j(`Unsupported field reference: `+p(e));let n=e.signal,r=this.field[n];if(!r){let e={name:this.signalRef(n)};t&&(e.as=t),this.field[n]=r=U(this.add(iV(e)))}return r},compareRef(e){let t=!1,n=e=>AB(e)?(t=!0,this.signalRef(e.signal)):jB(e)?(t=!0,this.exprRef(e.expr)):e,r=k(e.field).map(n),i=k(e.order).map(n);return t?U(this.add($B({fields:r,orders:i}))):SB(r,i)},keyRef(e,t){let n=!1,r=e=>AB(e)?(n=!0,U(i[e.signal])):e,i=this.signals;return e=k(e).map(r),n?U(this.add(aV({fields:e,flat:t}))):CB(e,t)},sortRef(e){if(!e)return e;let t=DB(e.op,e.field),n=e.order||wB;return n.signal?U(this.add($B({fields:t,orders:this.signalRef(n.signal)}))):SB(t,n)},event(e,t){let n=e+`:`+t;if(!this.events[n]){let r=this.id();this.streams.push({id:r,source:e,type:t}),this.events[n]=r}return this.events[n]},hasOwnSignal(e){return T(this.signals,e)},addSignal(e,t){this.hasOwnSignal(e)&&j(`Duplicate signal name: `+p(e));let n=t instanceof _B?t:this.add(yB(t));return this.signals[e]=n},getSignal(e){return this.signals[e]||j(`Unrecognized signal name: `+p(e)),this.signals[e]},signalRef(e){return this.signals[e]?U(this.signals[e]):(T(this.lambdas,e)||(this.lambdas[e]=this.add(yB(null))),U(this.lambdas[e]))},parseLambdas(){let e=Object.keys(this.lambdas);for(let t=0,n=e.length;t<n;++t){let n=e[t],r=AF(n,this),i=this.lambdas[n];i.params=r.$params,i.update=r.$expr}},property(e){return e&&e.signal?this.signalRef(e.signal):e},objectProperty(e){return!e||!M(e)?e:this.signalRef(e.signal||TW(e))},exprRef(e,t){let n={expr:AF(e,this)};return t&&(n.expr.$name=t),U(this.add(nV(n)))},addBinding(e,t){this.bindings||j(`Nested signals do not support binding: `+p(e)),this.bindings.push(D({signal:e},t))},addScaleProj(e,t){T(this.scales,e)&&j(`Duplicate scale or projection name: `+p(e)),this.scales[e]=this.add(t)},addScale(e,t){this.addScaleProj(e,vV(t))},addProjection(e,t){this.addScaleProj(e,mV(t))},getScale(e){return this.scales[e]||j(`Unrecognized scale name: `+p(e)),this.scales[e]},scaleRef(e){return U(this.getScale(e))},scaleType(e){return this.getScale(e).params.type},projectionRef(e){return this.scaleRef(e)},projectionType(e){return this.scaleType(e)},addData(e,t){return T(this.data,e)&&j(`Duplicate data set name: `+p(e)),this.data[e]=t},getData(e){return this.data[e]||j(`Undefined data set name: `+p(e)),this.data[e]},addDataPipeline(e,t){return T(this.data,e)&&j(`Duplicate data set name: `+p(e)),this.addData(e,mU.fromEntries(this,t))}};function TW(e){return(N(e)?EW:DW)(e)}function EW(e){let t=e.length,n=`[`;for(let r=0;r<t;++r){let t=e[r];n+=(r>0?`,`:``)+(M(t)?t.signal||TW(t):p(t))}return n+`]`}function DW(e){let t=`{`,n=0,r,i;for(r in e)i=e[r],t+=(++n>1?`,`:``)+p(r)+`:`+(M(i)?i.signal||TW(i):p(i));return t+`}`}function OW(){let e=`sans-serif`,t=`#4c78a8`,n=`#000`,r=`#888`,i=`#ddd`;return{description:`Vega visualization`,padding:0,autosize:`pad`,background:null,events:{defaults:{allow:[`wheel`]}},group:null,mark:null,arc:{fill:t},area:{fill:t},image:null,line:{stroke:t,strokeWidth:2},path:{stroke:t},rect:{fill:t},rule:{stroke:n},shape:{stroke:t},symbol:{fill:t,size:64},text:{fill:n,font:e,fontSize:11},trail:{fill:t,size:2},style:{"guide-label":{fill:n,font:e,fontSize:10},"guide-title":{fill:n,font:e,fontSize:11,fontWeight:`bold`},"group-title":{fill:n,font:e,fontSize:13,fontWeight:`bold`},"group-subtitle":{fill:n,font:e,fontSize:12},point:{size:30,strokeWidth:2,shape:`circle`},circle:{size:30,strokeWidth:2},square:{size:30,strokeWidth:2,shape:`square`},cell:{fill:`transparent`,stroke:i},view:{fill:`transparent`}},title:{orient:`top`,anchor:`middle`,offset:4,subtitlePadding:3},axis:{minExtent:0,maxExtent:200,bandPosition:.5,domain:!0,domainWidth:1,domainColor:r,grid:!1,gridWidth:1,gridColor:i,labels:!0,labelAngle:0,labelLimit:180,labelOffset:0,labelPadding:2,ticks:!0,tickColor:r,tickOffset:0,tickRound:!0,tickSize:5,tickWidth:1,titlePadding:4},axisBand:{tickOffset:-.5},projection:{type:`mercator`},legend:{orient:`right`,padding:0,gridAlign:`each`,columnPadding:10,rowPadding:2,symbolDirection:`vertical`,gradientDirection:`vertical`,gradientLength:200,gradientThickness:16,gradientStrokeColor:i,gradientStrokeWidth:0,gradientLabelOffset:2,labelAlign:`left`,labelBaseline:`middle`,labelLimit:160,labelOffset:4,labelOverlap:!0,symbolLimit:30,symbolType:`circle`,symbolSize:100,symbolOffset:0,symbolStrokeWidth:1.5,symbolBaseFillColor:`transparent`,symbolBaseStrokeColor:r,titleLimit:180,titleOrient:`top`,titlePadding:5,layout:{offset:18,direction:`horizontal`,left:{direction:`vertical`},right:{direction:`vertical`}}},range:{category:{scheme:`tableau10`},ordinal:{scheme:`blues`},heatmap:{scheme:`yellowgreenblue`},ramp:{scheme:`blues`},diverging:{scheme:`blueorange`,extent:[1,0]},symbol:[`circle`,`square`,`triangle-up`,`cross`,`diamond`,`triangle-right`,`triangle-down`,`triangle-left`]}}}function kW(e,t,n){return M(e)||j(`Input Vega specification must be an object.`),t=x(OW(),t,e.config),bW(e,new CW(t,n)).toRuntime()}var AW=`RawCode`,jW=`Literal`,MW=`Property`,NW=`Identifier`,PW=`ArrayExpression`,FW=`BinaryExpression`,IW=`CallExpression`,LW=`ConditionalExpression`,RW=`LogicalExpression`,zW=`MemberExpression`,BW=`ObjectExpression`,VW=`UnaryExpression`;function HW(e){this.type=e}HW.prototype.visit=function(e){let t,n,r;if(e(this))return 1;for(t=UW(this),n=0,r=t.length;n<r;++n)if(t[n].visit(e))return 1};function UW(e){switch(e.type){case PW:return e.elements;case FW:case RW:return[e.left,e.right];case IW:return[e.callee].concat(e.arguments);case LW:return[e.test,e.consequent,e.alternate];case zW:return[e.object,e.property];case BW:return e.properties;case MW:return[e.key,e.value];case VW:return[e.argument];case NW:case jW:case AW:default:return[]}}var WW,W,G,GW,KW,qW=1,JW=2,YW=3,XW=4,ZW=5,QW=6,$W=7,eG=8,tG=9;WW={},WW[qW]=`Boolean`,WW[JW]=`<end>`,WW[YW]=`Identifier`,WW[XW]=`Keyword`,WW[ZW]=`Null`,WW[QW]=`Numeric`,WW[$W]=`Punctuator`,WW[eG]=`String`,WW[tG]=`RegularExpression`;var nG=`ArrayExpression`,rG=`BinaryExpression`,iG=`CallExpression`,aG=`ConditionalExpression`,oG=`Identifier`,sG=`Literal`,cG=`LogicalExpression`,lG=`MemberExpression`,uG=`ObjectExpression`,dG=`Property`,fG=`UnaryExpression`,pG=`Unexpected token %0`,mG=`Unexpected number`,hG=`Unexpected string`,gG=`Unexpected identifier`,_G=`Unexpected reserved word`,vG=`Unexpected end of input`,yG=`Invalid regular expression`,bG=`Invalid regular expression: missing /`,xG=`Octal literals are not allowed in strict mode.`,SG=`Duplicate data property in object literal not allowed in strict mode`,CG=`ILLEGAL`,wG=`Disabled.`,TG=RegExp(`[\\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\\u08A0-\\u08B2\\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\\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\\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\\u0C59\\u0C60\\u0C61\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDE\\u0CE0\\u0CE1\\u0CF1\\u0CF2\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D60\\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-\\u13F4\\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-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19C1-\\u19C7\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4B\\u1B83-\\u1BA0\\u1BAE\\u1BAF\\u1BBA-\\u1BE5\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\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-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FCC\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6EF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA78E\\uA790-\\uA7AD\\uA7B0\\uA7B1\\uA7F7-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA8F2-\\uA8F7\\uA8FB\\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-\\uAB5F\\uAB64\\uAB65\\uABC0-\\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]`),EG=RegExp(`[\\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\\u08A0-\\u08B2\\u08E4-\\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\\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\\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\\u0C59\\u0C60-\\u0C63\\u0C66-\\u0C6F\\u0C81-\\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\\u0D01-\\u0D03\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D-\\u0D44\\u0D46-\\u0D48\\u0D4A-\\u0D4E\\u0D57\\u0D60-\\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-\\u13F4\\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\\u1CD0-\\u1CD2\\u1CD4-\\u1CF6\\u1CF8\\u1CF9\\u1D00-\\u1DF5\\u1DFC-\\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\\u200C\\u200D\\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-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FCC\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA62B\\uA640-\\uA66F\\uA674-\\uA67D\\uA67F-\\uA69D\\uA69F-\\uA6F1\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA78E\\uA790-\\uA7AD\\uA7B0\\uA7B1\\uA7F7-\\uA827\\uA840-\\uA873\\uA880-\\uA8C4\\uA8D0-\\uA8D9\\uA8E0-\\uA8F7\\uA8FB\\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-\\uAB5F\\uAB64\\uAB65\\uABC0-\\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-\\uFE2D\\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]`);function DG(e,t){if(!e)throw Error(`ASSERT: `+t)}function OG(e){return e>=48&&e<=57}function kG(e){return`0123456789abcdefABCDEF`.includes(e)}function AG(e){return`01234567`.includes(e)}function jG(e){return e===32||e===9||e===11||e===12||e===160||e>=5760&&[5760,6158,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279].includes(e)}function MG(e){return e===10||e===13||e===8232||e===8233}function NG(e){return e===36||e===95||e>=65&&e<=90||e>=97&&e<=122||e===92||e>=128&&TG.test(String.fromCharCode(e))}function PG(e){return e===36||e===95||e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||e===92||e>=128&&EG.test(String.fromCharCode(e))}var FG={if:1,in:1,do:1,var:1,for:1,new:1,try:1,let:1,this:1,else:1,case:1,void:1,with:1,enum:1,while:1,break:1,catch:1,throw:1,const:1,yield:1,class:1,super:1,return:1,typeof:1,delete:1,switch:1,export:1,import:1,public:1,static:1,default:1,finally:1,extends:1,package:1,private:1,function:1,continue:1,debugger:1,interface:1,protected:1,instanceof:1,implements:1};function IG(){for(;G<GW;){let e=W.charCodeAt(G);if(jG(e)||MG(e))++G;else break}}function LG(e){var t,n,r,i=0;for(n=e===`u`?4:2,t=0;t<n;++t)G<GW&&kG(W[G])?(r=W[G++],i=i*16+`0123456789abcdef`.indexOf(r.toLowerCase())):dK({},pG,CG);return String.fromCharCode(i)}function RG(){var e=W[G],t=0,n,r;for(e===`}`&&dK({},pG,CG);G<GW&&(e=W[G++],kG(e));)t=t*16+`0123456789abcdef`.indexOf(e.toLowerCase());return(t>1114111||e!==`}`)&&dK({},pG,CG),t<=65535?String.fromCharCode(t):(n=(t-65536>>10)+55296,r=(t-65536&1023)+56320,String.fromCharCode(n,r))}function zG(){var e=W.charCodeAt(G++),t=String.fromCharCode(e);for(e===92&&(W.charCodeAt(G)!==117&&dK({},pG,CG),++G,e=LG(`u`),(!e||e===`\\`||!NG(e.charCodeAt(0)))&&dK({},pG,CG),t=e);G<GW&&(e=W.charCodeAt(G),PG(e));)++G,t+=String.fromCharCode(e),e===92&&(t=t.substr(0,t.length-1),W.charCodeAt(G)!==117&&dK({},pG,CG),++G,e=LG(`u`),(!e||e===`\\`||!PG(e.charCodeAt(0)))&&dK({},pG,CG),t+=e);return t}function BG(){for(var e=G++,t;G<GW;){if(t=W.charCodeAt(G),t===92)return G=e,zG();if(PG(t))++G;else break}return W.slice(e,G)}function VG(){var e=G,t=W.charCodeAt(G)===92?zG():BG();return{type:t.length===1?YW:FG.hasOwnProperty(t)?XW:t===`null`?ZW:t===`true`||t===`false`?qW:YW,value:t,start:e,end:G}}function HG(){var e=G,t=W.charCodeAt(G),n,r=W[G],i,a,o;switch(t){case 46:case 40:case 41:case 59:case 44:case 123:case 125:case 91:case 93:case 58:case 63:case 126:return++G,{type:$W,value:String.fromCharCode(t),start:e,end:G};default:if(n=W.charCodeAt(G+1),n===61)switch(t){case 43:case 45:case 47:case 60:case 62:case 94:case 124:case 37:case 38:case 42:return G+=2,{type:$W,value:String.fromCharCode(t)+String.fromCharCode(n),start:e,end:G};case 33:case 61:return G+=2,W.charCodeAt(G)===61&&++G,{type:$W,value:W.slice(e,G),start:e,end:G}}}if(o=W.substr(G,4),o===`>>>=`)return G+=4,{type:$W,value:o,start:e,end:G};if(a=o.substr(0,3),a===`>>>`||a===`<<=`||a===`>>=`)return G+=3,{type:$W,value:a,start:e,end:G};if(i=a.substr(0,2),r===i[1]&&`+-<>&|`.includes(r)||i===`=>`)return G+=2,{type:$W,value:i,start:e,end:G};if(i===`//`&&dK({},pG,CG),`<>=!+-*%&|^/`.includes(r))return++G,{type:$W,value:r,start:e,end:G};dK({},pG,CG)}function UG(e){let t=``;for(;G<GW&&kG(W[G]);)t+=W[G++];return t.length===0&&dK({},pG,CG),NG(W.charCodeAt(G))&&dK({},pG,CG),{type:QW,value:parseInt(`0x`+t,16),start:e,end:G}}function WG(e){let t=`0`+W[G++];for(;G<GW&&AG(W[G]);)t+=W[G++];return(NG(W.charCodeAt(G))||OG(W.charCodeAt(G)))&&dK({},pG,CG),{type:QW,value:parseInt(t,8),octal:!0,start:e,end:G}}function GG(){var e,t,n=W[G];if(DG(OG(n.charCodeAt(0))||n===`.`,`Numeric literal must start with a decimal digit or a decimal point`),t=G,e=``,n!==`.`){if(e=W[G++],n=W[G],e===`0`){if(n===`x`||n===`X`)return++G,UG(t);if(AG(n))return WG(t);n&&OG(n.charCodeAt(0))&&dK({},pG,CG)}for(;OG(W.charCodeAt(G));)e+=W[G++];n=W[G]}if(n===`.`){for(e+=W[G++];OG(W.charCodeAt(G));)e+=W[G++];n=W[G]}if(n===`e`||n===`E`){if(e+=W[G++],n=W[G],(n===`+`||n===`-`)&&(e+=W[G++]),OG(W.charCodeAt(G)))for(;OG(W.charCodeAt(G));)e+=W[G++];else dK({},pG,CG)}return NG(W.charCodeAt(G))&&dK({},pG,CG),{type:QW,value:parseFloat(e),start:t,end:G}}function KG(){var e=``,t,n,r,i,a=!1;for(t=W[G],DG(t===`'`||t===`"`,`String literal must starts with a quote`),n=G,++G;G<GW;){if(r=W[G++],r===t){t=``;break}if(r===`\\`){if(r=W[G++],!r||!MG(r.charCodeAt(0)))switch(r){case`u`:case`x`:W[G]===`{`?(++G,e+=RG()):e+=LG(r);break;case`n`:e+=`
|
|
10
|
+
`;break;case`r`:e+=`\r`;break;case`t`:e+=` `;break;case`b`:e+=`\b`;break;case`f`:e+=`\f`;break;case`v`:e+=`\v`;break;default:AG(r)?(i=`01234567`.indexOf(r),i!==0&&(a=!0),G<GW&&AG(W[G])&&(a=!0,i=i*8+`01234567`.indexOf(W[G++]),`0123`.includes(r)&&G<GW&&AG(W[G])&&(i=i*8+`01234567`.indexOf(W[G++]))),e+=String.fromCharCode(i)):e+=r}else r===`\r`&&W[G]===`
|
|
11
|
+
`&&++G}else if(MG(r.charCodeAt(0)))break;else e+=r}return t!==``&&dK({},pG,CG),{type:eG,value:e,octal:a,start:n,end:G}}function qG(e,t){let n=e;t.includes(`u`)&&(n=n.replace(/\\u\{([0-9a-fA-F]+)\}/g,(e,t)=>{if(parseInt(t,16)<=1114111)return`x`;dK({},yG)}).replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,`x`));try{new RegExp(n)}catch{dK({},yG)}try{return new RegExp(e,t)}catch{return null}}function JG(){var e=W[G],t,n,r,i;for(DG(e===`/`,`Regular expression literal must start with a slash`),t=W[G++],n=!1,r=!1;G<GW;)if(e=W[G++],t+=e,e===`\\`)e=W[G++],MG(e.charCodeAt(0))&&dK({},bG),t+=e;else if(MG(e.charCodeAt(0)))dK({},bG);else if(n)e===`]`&&(n=!1);else if(e===`/`){r=!0;break}else e===`[`&&(n=!0);return r||dK({},bG),i=t.substr(1,t.length-2),{value:i,literal:t}}function YG(){for(var e,t=``,n=``;G<GW&&(e=W[G],PG(e.charCodeAt(0)));)++G,e===`\\`&&G<GW?dK({},pG,CG):(n+=e,t+=e);return n.search(/[^gimuy]/g)>=0&&dK({},yG,n),{value:n,literal:t}}function XG(){var e,t,n,r;return KW=null,IG(),e=G,t=JG(),n=YG(),r=qG(t.value,n.value),{literal:t.literal+n.literal,value:r,regex:{pattern:t.value,flags:n.value},start:e,end:G}}function ZG(e){return e.type===YW||e.type===XW||e.type===qW||e.type===ZW}function QG(){if(IG(),G>=GW)return{type:JW,start:G,end:G};let e=W.charCodeAt(G);return NG(e)?VG():e===40||e===41||e===59?HG():e===39||e===34?KG():e===46?OG(W.charCodeAt(G+1))?GG():HG():OG(e)?GG():HG()}function $G(){let e=KW;return G=e.end,KW=QG(),G=e.end,e}function eK(){let e=G;KW=QG(),G=e}function tK(e){let t=new HW(nG);return t.elements=e,t}function nK(e,t,n){let r=new HW(e===`||`||e===`&&`?cG:rG);return r.operator=e,r.left=t,r.right=n,r}function rK(e,t){let n=new HW(iG);return n.callee=e,n.arguments=t,n}function iK(e,t,n){let r=new HW(aG);return r.test=e,r.consequent=t,r.alternate=n,r}function aK(e){let t=new HW(oG);return t.name=e,t}function oK(e){let t=new HW(sG);return t.value=e.value,t.raw=W.slice(e.start,e.end),e.regex&&(t.raw===`//`&&(t.raw=`/(?:)/`),t.regex=e.regex),t}function sK(e,t,n){let r=new HW(lG);return r.computed=e===`[`,r.object=t,r.property=n,r.computed||(n.member=!0),r}function cK(e){let t=new HW(uG);return t.properties=e,t}function lK(e,t,n){let r=new HW(dG);return r.key=t,r.value=n,r.kind=e,r}function uK(e,t){let n=new HW(fG);return n.operator=e,n.argument=t,n.prefix=!0,n}function dK(e,t){var n,r=Array.prototype.slice.call(arguments,2),i=t.replace(/%(\d)/g,(e,t)=>(DG(t<r.length,`Message reference must be in range`),r[t]));throw n=Error(i),n.index=G,n.description=i,n}function fK(e){e.type===JW&&dK(e,vG),e.type===QW&&dK(e,mG),e.type===eG&&dK(e,hG),e.type===YW&&dK(e,gG),e.type===XW&&dK(e,_G),dK(e,pG,e.value)}function pK(e){let t=$G();(t.type!==$W||t.value!==e)&&fK(t)}function mK(e){return KW.type===$W&&KW.value===e}function hK(e){return KW.type===XW&&KW.value===e}function gK(){let e=[];for(G=KW.start,pK(`[`);!mK(`]`);)mK(`,`)?($G(),e.push(null)):(e.push(MK()),mK(`]`)||pK(`,`));return $G(),tK(e)}function _K(){G=KW.start;let e=$G();return e.type===eG||e.type===QW?(e.octal&&dK(e,xG),oK(e)):aK(e.value)}function vK(){var e,t,n,r;if(G=KW.start,e=KW,e.type===YW)return n=_K(),pK(`:`),r=MK(),lK(`init`,n,r);if(e.type===JW||e.type===$W)fK(e);else return t=_K(),pK(`:`),r=MK(),lK(`init`,t,r)}function yK(){var e=[],t,n,r,i={},a=String;for(G=KW.start,pK(`{`);!mK(`}`);)t=vK(),n=t.key.type===oG?t.key.name:a(t.key.value),r=`$`+n,Object.prototype.hasOwnProperty.call(i,r)?dK({},SG):i[r]=!0,e.push(t),mK(`}`)||pK(`,`);return pK(`}`),cK(e)}function bK(){pK(`(`);let e=NK();return pK(`)`),e}var xK={if:1};function SK(){var e,t,n;if(mK(`(`))return bK();if(mK(`[`))return gK();if(mK(`{`))return yK();if(e=KW.type,G=KW.start,e===YW||xK[KW.value])n=aK($G().value);else if(e===eG||e===QW)KW.octal&&dK(KW,xG),n=oK($G());else if(e===XW)throw Error(wG);else e===qW?(t=$G(),t.value=t.value===`true`,n=oK(t)):e===ZW?(t=$G(),t.value=null,n=oK(t)):mK(`/`)||mK(`/=`)?(n=oK(XG()),eK()):fK($G());return n}function CK(){let e=[];if(pK(`(`),!mK(`)`))for(;G<GW&&(e.push(MK()),!mK(`)`));)pK(`,`);return pK(`)`),e}function wK(){G=KW.start;let e=$G();return ZG(e)||fK(e),aK(e.value)}function TK(){return pK(`.`),wK()}function EK(){pK(`[`);let e=NK();return pK(`]`),e}function DK(){for(var e=SK(),t,n;;)if(mK(`.`))n=TK(),e=sK(`.`,e,n);else if(mK(`(`))t=CK(),e=rK(e,t);else if(mK(`[`))n=EK(),e=sK(`[`,e,n);else break;return e}function OK(){let e=DK();if(KW.type===$W&&(mK(`++`)||mK(`--`)))throw Error(wG);return e}function kK(){var e,t;if(KW.type!==$W&&KW.type!==XW)t=OK();else if(mK(`++`)||mK(`--`))throw Error(wG);else if(mK(`+`)||mK(`-`)||mK(`~`)||mK(`!`))e=$G(),t=kK(),t=uK(e.value,t);else if(hK(`delete`)||hK(`void`)||hK(`typeof`))throw Error(wG);else t=OK();return t}function AK(e){let t=0;if(e.type!==$W&&e.type!==XW)return 0;switch(e.value){case`||`:t=1;break;case`&&`:t=2;break;case`|`:t=3;break;case`^`:t=4;break;case`&`:t=5;break;case`==`:case`!=`:case`===`:case`!==`:t=6;break;case`<`:case`>`:case`<=`:case`>=`:case`instanceof`:case`in`:t=7;break;case`<<`:case`>>`:case`>>>`:t=8;break;case`+`:case`-`:t=9;break;case`*`:case`/`:case`%`:t=11}return t}function jK(){var e=KW,t,n,r,i,a,o,s,c=kK(),l;if(r=KW,i=AK(r),i===0)return c;for(r.prec=i,$G(),t=[e,KW],o=kK(),a=[c,r,o];(i=AK(KW))>0;){for(;a.length>2&&i<=a[a.length-2].prec;)o=a.pop(),s=a.pop().value,c=a.pop(),t.pop(),n=nK(s,c,o),a.push(n);r=$G(),r.prec=i,a.push(r),t.push(KW),n=kK(),a.push(n)}for(l=a.length-1,n=a[l],t.pop();l>1;)t.pop(),n=nK(a[l-1].value,a[l-2],n),l-=2;return n}function MK(){var e=jK(),t,n;return mK(`?`)&&($G(),t=MK(),pK(`:`),n=MK(),e=iK(e,t,n)),e}function NK(){let e=MK();if(mK(`,`))throw Error(wG);return e}function PK(e){W=e,G=0,GW=W.length,KW=null,eK();let t=NK();if(KW.type!==JW)throw Error(`Unexpect token after expression.`);return t}var FK={NaN:`NaN`,E:`Math.E`,LN2:`Math.LN2`,LN10:`Math.LN10`,LOG2E:`Math.LOG2E`,LOG10E:`Math.LOG10E`,PI:`Math.PI`,SQRT1_2:`Math.SQRT1_2`,SQRT2:`Math.SQRT2`,MIN_VALUE:`Number.MIN_VALUE`,MAX_VALUE:`Number.MAX_VALUE`};function IK(e){function t(t,n,r,i){let a=e(n[0]);return r&&(a=r+`(`+a+`)`,r.lastIndexOf(`new `,0)===0&&(a=`(`+a+`)`)),a+`.`+t+(i<0?``:i===0?`()`:`(`+n.slice(1).map(e).join(`,`)+`)`)}function n(e,n,r){return i=>t(e,i,n,r)}let r=`new Date`,i=`String`,a=`RegExp`;return{isNaN:`Number.isNaN`,isFinite:`Number.isFinite`,abs:`Math.abs`,acos:`Math.acos`,asin:`Math.asin`,atan:`Math.atan`,atan2:`Math.atan2`,ceil:`Math.ceil`,cos:`Math.cos`,exp:`Math.exp`,floor:`Math.floor`,hypot:`Math.hypot`,log:`Math.log`,max:`Math.max`,min:`Math.min`,pow:`Math.pow`,random:`Math.random`,round:`Math.round`,sin:`Math.sin`,sqrt:`Math.sqrt`,tan:`Math.tan`,clamp:function(t){t.length<3&&j(`Missing arguments to clamp function.`),t.length>3&&j(`Too many arguments to clamp function.`);let n=t.map(e);return`Math.max(`+n[1]+`, Math.min(`+n[2]+`,`+n[0]+`))`},now:`Date.now`,utc:`Date.UTC`,datetime:r,date:n(`getDate`,r,0),day:n(`getDay`,r,0),year:n(`getFullYear`,r,0),month:n(`getMonth`,r,0),hours:n(`getHours`,r,0),minutes:n(`getMinutes`,r,0),seconds:n(`getSeconds`,r,0),milliseconds:n(`getMilliseconds`,r,0),time:n(`getTime`,r,0),timezoneoffset:n(`getTimezoneOffset`,r,0),utcdate:n(`getUTCDate`,r,0),utcday:n(`getUTCDay`,r,0),utcyear:n(`getUTCFullYear`,r,0),utcmonth:n(`getUTCMonth`,r,0),utchours:n(`getUTCHours`,r,0),utcminutes:n(`getUTCMinutes`,r,0),utcseconds:n(`getUTCSeconds`,r,0),utcmilliseconds:n(`getUTCMilliseconds`,r,0),length:n(`length`,null,-1),parseFloat:`parseFloat`,parseInt:`parseInt`,upper:n(`toUpperCase`,i,0),lower:n(`toLowerCase`,i,0),substring:n(`substring`,i),split:n(`split`,i),trim:n(`trim`,i,0),btoa:`btoa`,atob:`atob`,regexp:a,test:n(`test`,a),if:function(t){t.length<3&&j(`Missing arguments to if function.`),t.length>3&&j(`Too many arguments to if function.`);let n=t.map(e);return`(`+n[0]+`?`+n[1]+`:`+n[2]+`)`}}}function LK(e){let t=e&&e.length-1;return t&&(e[0]===`"`&&e[t]===`"`||e[0]===`'`&&e[t]===`'`)?e.slice(1,-1):e}function RK(e){e||={};let t=e.allowed?_(e.allowed):{},n=e.forbidden?_(e.forbidden):{},r=e.constants||FK,i=(e.functions||IK)(d),a=e.globalvar,o=e.fieldvar,s=m(a)?a:e=>`${a}["${e}"]`;[...Object.getOwnPropertyNames(Object.prototype).filter(e=>typeof Object.prototype[e]==`function`)];let c={},l={},u=0;function d(e){if(P(e))return e;let t=f[e.type];return t??j(`Unsupported type: `+e.type),t(e)}let f={Literal:e=>e.raw,Identifier:e=>{let i=e.name;return u>0?i:T(n,i)?j(`Illegal identifier: `+i):T(r,i)?r[i]:T(t,i)?i:(c[i]=1,s(i))},MemberExpression:e=>{let t=!e.computed,n=d(e.object);t&&(u+=1);let r=d(e.property);return n===o&&(l[LK(r)]=1),t&&--u,n+(t?`.`+r:`[`+r+`]`)},CallExpression:e=>{e.callee.type!==`Identifier`&&j(`Illegal callee type: `+e.callee.type);let t=e.callee.name,n=e.arguments,r=T(i,t)&&i[t];return r||j(`Unrecognized function: `+t),m(r)?r(n):r+`(`+n.map(d).join(`,`)+`)`},ArrayExpression:e=>`[`+e.elements.map(d).join(`,`)+`]`,BinaryExpression:e=>`(`+d(e.left)+` `+e.operator+` `+d(e.right)+`)`,UnaryExpression:e=>`(`+e.operator+d(e.argument)+`)`,ConditionalExpression:e=>`(`+d(e.test)+`?`+d(e.consequent)+`:`+d(e.alternate)+`)`,LogicalExpression:e=>`(`+d(e.left)+e.operator+d(e.right)+`)`,ObjectExpression:e=>{for(let t of e.properties){let e=t.key.name;be.has(e)&&j(`Illegal property: `+e)}return`{`+e.properties.map(d).join(`,`)+`}`},Property:e=>{u+=1;let t=d(e.key);return--u,t+`:`+d(e.value)}};function p(e){let t={code:d(e),globals:Object.keys(c),fields:Object.keys(l)};return c={},l={},t}return p.functions=i,p.constants=r,p}var zK=t({Bounds:()=>jO,CanvasHandler:()=>eM,CanvasRenderer:()=>lM,DATE:()=>aE,DAY:()=>`day`,DAYOFYEAR:()=>oE,Dataflow:()=>Xi,Debug:()=>4,DisallowedObjectProperties:()=>be,Error:()=>1,EventStream:()=>gi,Gradient:()=>cD,GroupItem:()=>NO,HOURS:()=>sE,Handler:()=>wj,HybridHandler:()=>lN,HybridRenderer:()=>cN,Info:()=>3,Item:()=>MO,MILLISECONDS:()=>uE,MINUTES:()=>cE,MONTH:()=>rE,Marks:()=>sj,MultiPulse:()=>Ki,None:()=>0,Operator:()=>di,Parameters:()=>ai,Pulse:()=>Hi,QUARTER:()=>nE,RenderType:()=>rae,Renderer:()=>Ej,ResourceLoader:()=>PO,SECONDS:()=>lE,SVGHandler:()=>fM,SVGRenderer:()=>GM,SVGStringRenderer:()=>oN,Scenegraph:()=>hj,TIME_UNITS:()=>dE,Transform:()=>L,View:()=>bL,WEEK:()=>iE,Warn:()=>2,YEAR:()=>tE,accessor:()=>ce,accessorFields:()=>Ce,accessorName:()=>ve,array:()=>k,ascending:()=>h,bandwidthNRD:()=>ia,bin:()=>aa,bootstrapCI:()=>ca,boundClip:()=>sae,boundContext:()=>nk,boundItem:()=>cj,boundMark:()=>uj,boundStroke:()=>LO,changeset:()=>ri,clampRange:()=>cr,codegenExpression:()=>RK,compare:()=>we,constant:()=>d,cumulativeLogNormal:()=>Ta,cumulativeNormal:()=>va,cumulativeUniform:()=>ja,dayofyear:()=>Kie,debounce:()=>lr,defaultLocale:()=>he,definition:()=>$i,densityLogNormal:()=>wa,densityNormal:()=>_a,densityUniform:()=>Aa,domChild:()=>yj,domClear:()=>bj,domCreate:()=>_j,domFind:()=>vj,dotbin:()=>la,error:()=>j,expressionFunction:()=>nz,extend:()=>D,extent:()=>ur,extentIndex:()=>dr,falsy:()=>Te,fastmap:()=>pr,field:()=>ge,flush:()=>mr,font:()=>ZA,fontFamily:()=>XA,fontSize:()=>HA,format:()=>nee,formatLocale:()=>oe,formats:()=>ye,hasOwnProperty:()=>T,id:()=>fe,identity:()=>ne,inferType:()=>tee,inferTypes:()=>de,ingest:()=>Zr,inherits:()=>F,inrange:()=>hr,interpolate:()=>Rl,interpolateColors:()=>Fl,interpolateRange:()=>Pl,intersect:()=>aae,intersectBoxLine:()=>pk,intersectPath:()=>lk,intersectPoint:()=>uk,intersectRule:()=>fk,isArray:()=>N,isBoolean:()=>gr,isDate:()=>f,isFunction:()=>m,isIterable:()=>E,isNumber:()=>o,isObject:()=>M,isRegExp:()=>_r,isString:()=>P,isTuple:()=>Yr,key:()=>S,lerp:()=>vr,lineHeight:()=>UA,loader:()=>te,locale:()=>Oe,logger:()=>Vn,lruCache:()=>yr,markup:()=>IM,merge:()=>br,mergeConfig:()=>x,multiLineOffset:()=>KA,one:()=>Se,pad:()=>Sr,panLinear:()=>Zn,panLog:()=>Qn,panPow:()=>$n,panSymlog:()=>er,parse:()=>kW,parseExpression:()=>PK,parseSelector:()=>gz,path:()=>Ct,pathCurves:()=>uD,pathEqual:()=>xN,pathParse:()=>gD,pathRectangle:()=>WD,pathRender:()=>AD,pathSymbols:()=>PD,pathTrail:()=>GD,peek:()=>A,point:()=>Sj,projection:()=>Zx,quantileLogNormal:()=>Ea,quantileNormal:()=>ya,quantileUniform:()=>Ma,quantiles:()=>na,quantizeInterpolator:()=>Il,quarter:()=>or,quartiles:()=>ra,random:()=>oa,randomInteger:()=>fa,randomKDE:()=>Sa,randomLCG:()=>da,randomLogNormal:()=>Da,randomMixture:()=>Oa,randomNormal:()=>xa,randomUniform:()=>Na,read:()=>xe,regressionConstant:()=>Pa,regressionExp:()=>Va,regressionLinear:()=>za,regressionLoess:()=>Ya,regressionLog:()=>Ba,regressionPoly:()=>Wa,regressionPow:()=>Ha,regressionQuad:()=>Ua,renderModule:()=>iae,repeat:()=>xr,resetDefaultLocale:()=>se,resetSVGDefIds:()=>uae,responseType:()=>Ee,runtimeContext:()=>KF,sampleCurve:()=>eo,sampleLogNormal:()=>Ca,sampleNormal:()=>ga,sampleUniform:()=>ka,scale:()=>Cl,sceneEqual:()=>bN,sceneFromJSON:()=>pj,scenePickVisit:()=>Tk,sceneToJSON:()=>fj,sceneVisit:()=>wk,sceneZOrder:()=>Ck,scheme:()=>Hl,serializeXML:()=>LM,setHybridRendererOptions:()=>nae,setRandom:()=>sa,span:()=>g,splitAccessPath:()=>ke,stringValue:()=>p,textMetrics:()=>IA,timeBin:()=>tD,timeFloor:()=>TE,timeFormatLocale:()=>eee,timeInterval:()=>jE,timeOffset:()=>PE,timeSequence:()=>LE,timeUnitSpecifier:()=>Gie,timeUnits:()=>pE,toBoolean:()=>u,toDate:()=>b,toNumber:()=>O,toSet:()=>_,toString:()=>v,transform:()=>ea,transforms:()=>Qi,truncate:()=>Cr,truthy:()=>De,tupleid:()=>I,typeParsers:()=>ie,utcFloor:()=>OE,utcInterval:()=>ME,utcOffset:()=>FE,utcSequence:()=>RE,utcdayofyear:()=>Yie,utcquarter:()=>sr,utcweek:()=>Xie,version:()=>VK,visitArray:()=>wr,week:()=>qie,writeConfig:()=>i,zero:()=>ae,zoomLinear:()=>nr,zoomLog:()=>rr,zoomPow:()=>ir,zoomSymlog:()=>ar}),BK=`6.2.0`;D(Qi,ro,Bh,y_,bre,aC,Cw,nw,iT,Cie,Die,Lie);var VK=BK;function HK(e,t,n){let r;t.x2&&(t.x?(n&&e.x>e.x2&&(r=e.x,e.x=e.x2,e.x2=r),e.width=e.x2-e.x):e.x=e.x2-(e.width||0)),t.xc&&(e.x=e.xc-(e.width||0)/2),t.y2&&(t.y?(n&&e.y>e.y2&&(r=e.y,e.y=e.y2,e.y2=r),e.height=e.y2-e.y):e.y=e.y2-(e.height||0)),t.yc&&(e.y=e.yc-(e.height||0)/2)}var UK={NaN:NaN,E:Math.E,LN2:Math.LN2,LN10:Math.LN10,LOG2E:Math.LOG2E,LOG10E:Math.LOG10E,PI:Math.PI,SQRT1_2:Math.SQRT1_2,SQRT2:Math.SQRT2,MIN_VALUE:Number.MIN_VALUE,MAX_VALUE:Number.MAX_VALUE},WK={"*":(e,t)=>e*t,"+":(e,t)=>e+t,"-":(e,t)=>e-t,"/":(e,t)=>e/t,"%":(e,t)=>e%t,">":(e,t)=>e>t,"<":(e,t)=>e<t,"<=":(e,t)=>e<=t,">=":(e,t)=>e>=t,"==":(e,t)=>e==t,"!=":(e,t)=>e!=t,"===":(e,t)=>e===t,"!==":(e,t)=>e!==t,"&":(e,t)=>e&t,"|":(e,t)=>e|t,"^":(e,t)=>e^t,"<<":(e,t)=>e<<t,">>":(e,t)=>e>>t,">>>":(e,t)=>e>>>t},GK={"+":e=>+e,"-":e=>-e,"~":e=>~e,"!":e=>!e},KK=Array.prototype.slice,qK=(e,t,n)=>{let r=n?n(t[0]):t[0];return r[e].apply(r,KK.call(t,1))},JK={isNaN:Number.isNaN,isFinite:Number.isFinite,abs:Math.abs,acos:Math.acos,asin:Math.asin,atan:Math.atan,atan2:Math.atan2,ceil:Math.ceil,cos:Math.cos,exp:Math.exp,floor:Math.floor,log:Math.log,max:Math.max,min:Math.min,pow:Math.pow,random:Math.random,round:Math.round,sin:Math.sin,sqrt:Math.sqrt,tan:Math.tan,clamp:(e,t,n)=>Math.max(t,Math.min(n,e)),now:Date.now,utc:Date.UTC,datetime:(e,t=0,n=1,r=0,i=0,a=0,o=0)=>P(e)?new Date(e):new Date(e,t,n,r,i,a,o),date:e=>new Date(e).getDate(),day:e=>new Date(e).getDay(),year:e=>new Date(e).getFullYear(),month:e=>new Date(e).getMonth(),hours:e=>new Date(e).getHours(),minutes:e=>new Date(e).getMinutes(),seconds:e=>new Date(e).getSeconds(),milliseconds:e=>new Date(e).getMilliseconds(),time:e=>new Date(e).getTime(),timezoneoffset:e=>new Date(e).getTimezoneOffset(),utcdate:e=>new Date(e).getUTCDate(),utcday:e=>new Date(e).getUTCDay(),utcyear:e=>new Date(e).getUTCFullYear(),utcmonth:e=>new Date(e).getUTCMonth(),utchours:e=>new Date(e).getUTCHours(),utcminutes:e=>new Date(e).getUTCMinutes(),utcseconds:e=>new Date(e).getUTCSeconds(),utcmilliseconds:e=>new Date(e).getUTCMilliseconds(),length:e=>e.length,join:function(){return qK(`join`,arguments)},indexof:function(){return qK(`indexOf`,arguments)},lastindexof:function(){return qK(`lastIndexOf`,arguments)},slice:function(){return qK(`slice`,arguments)},reverse:e=>e.slice().reverse(),sort:e=>e.slice().sort(h),parseFloat,parseInt,upper:e=>String(e).toUpperCase(),lower:e=>String(e).toLowerCase(),substring:function(){return qK(`substring`,arguments,String)},split:function(){return qK(`split`,arguments,String)},replace:function(){return qK(`replace`,arguments,String)},trim:e=>String(e).trim(),btoa:e=>btoa(e),atob:e=>atob(e),encodeURIComponent:e=>encodeURIComponent(e),regexp:RegExp,test:(e,t)=>RegExp(e).test(t)},YK=[`view`,`item`,`group`,`xy`,`x`,`y`],XK=new Set([Function,eval,setTimeout,setInterval]);typeof setImmediate==`function`&&XK.add(setImmediate);var ZK={Literal:(e,t)=>t.value,Identifier:(e,t)=>{let n=t.name;return e.memberDepth>0?n:n===`datum`?e.datum:n===`event`?e.event:n===`item`?e.item:UK[n]||e.params[`$`+n]},MemberExpression:(e,t)=>{let n=!t.computed,r=e(t.object);n&&(e.memberDepth+=1);let i=e(t.property);if(n&&--e.memberDepth,XK.has(r[i])){console.error(`Prevented interpretation of member "${i}" which could lead to insecure code execution`);return}return r[i]},CallExpression:(e,t)=>{let n=t.arguments,r=t.callee.name;return r.startsWith(`_`)&&(r=r.slice(1)),r===`if`?e(n[0])?e(n[1]):e(n[2]):(e.fn[r]||JK[r]).apply(e.fn,n.map(e))},ArrayExpression:(e,t)=>t.elements.map(e),BinaryExpression:(e,t)=>WK[t.operator](e(t.left),e(t.right)),UnaryExpression:(e,t)=>GK[t.operator](e(t.argument)),ConditionalExpression:(e,t)=>e(t.test)?e(t.consequent):e(t.alternate),LogicalExpression:(e,t)=>t.operator===`&&`?e(t.left)&&e(t.right):e(t.left)||e(t.right),ObjectExpression:(e,t)=>t.properties.reduce((t,n)=>{e.memberDepth+=1;let r=e(n.key);--e.memberDepth;let i=e(n.value);return be.has(r)?console.error(`Prevented interpretation of property "${r}" which could lead to insecure code execution`):XK.has(i)?console.error(`Prevented interpretation of method "${r}" which could lead to insecure code execution`):t[r]=i,t},{})};function QK(e,t,n,r,i,a){let o=e=>ZK[e.type](o,e);return o.memberDepth=0,o.fn=Object.create(t),o.params=n,o.datum=r,o.event=i,o.item=a,YK.forEach(e=>o.fn[e]=(...t)=>i.vega[e](...t)),o(e)}var $K={operator(e,t){let n=t.ast,r=e.functions;return e=>QK(n,r,e)},parameter(e,t){let n=t.ast,r=e.functions;return(e,t)=>QK(n,r,t,e)},event(e,t){let n=t.ast,r=e.functions;return e=>QK(n,r,void 0,void 0,e)},handler(e,t){let n=t.ast,r=e.functions;return(e,t)=>{let i=t.item&&t.item.datum;return QK(n,r,e,i,t)}},encode(e,t){let{marktype:n,channels:r}=t,i=e.functions,a=n===`group`||n===`image`||n===`rect`;return(e,t)=>{let o=e.datum,s=0,c;for(let n in r)c=QK(r[n].ast,i,t,o,void 0,e),e[n]!==c&&(e[n]=c,s=1);return n!==`rule`&&HK(e,r,a),s}}},eq=t({accessPathDepth:()=>Bq,accessPathWithDatum:()=>Mq,accessWithDatumToUnescapedPath:()=>Pq,compile:()=>P5,contains:()=>fq,deepEqual:()=>Xq,deleteNestedProperty:()=>Aq,duplicate:()=>K,entries:()=>Tq,every:()=>mq,fieldIntersection:()=>Sq,flatAccessWithDatum:()=>Nq,getFirstDefined:()=>Vq,hasIntersection:()=>bq,hasProperty:()=>J,hash:()=>uq,internalField:()=>Gq,isBoolean:()=>Eq,isEmpty:()=>Cq,isEqual:()=>vq,isInternalField:()=>Kq,isNullOrFalse:()=>dq,isNumeric:()=>Jq,isPrimitive:()=>Dq,keys:()=>q,logicalExpr:()=>kq,mergeDeep:()=>hq,never:()=>sq,normalize:()=>g4,normalizeAngle:()=>qq,omit:()=>lq,pick:()=>cq,prefixGenerator:()=>xq,removePathFromField:()=>zq,replaceAll:()=>Rq,replacePathInField:()=>Lq,resetIdCounter:()=>Wq,setEqual:()=>yq,some:()=>pq,stringify:()=>Zq,titleCase:()=>jq,unescapeSingleQuoteAndPathDot:()=>Fq,unique:()=>_q,uniqueId:()=>Uq,vals:()=>wq,varName:()=>Oq,version:()=>Lme}),tq={version:`6.4.3`};function nq(e){return J(e,`or`)}function rq(e){return J(e,`and`)}function iq(e){return J(e,`not`)}function aq(e,t){if(iq(e))aq(e.not,t);else if(rq(e))for(let n of e.and)aq(n,t);else if(nq(e))for(let n of e.or)aq(n,t);else t(e)}function oq(e,t){return iq(e)?{not:oq(e.not,t)}:rq(e)?{and:e.and.map(e=>oq(e,t))}:nq(e)?{or:e.or.map(e=>oq(e,t))}:t(e)}var K=structuredClone;function sq(e){throw Error(e)}function cq(e,t){let n={};for(let r of t)T(e,r)&&(n[r]=e[r]);return n}function lq(e,t){let n={...e};for(let e of t)delete n[e];return n}Set.prototype.toJSON=function(){return`Set(${[...this].map(e=>Zq(e)).join(`,`)})`};function uq(e){if(o(e))return e;let t=P(e)?e:Zq(e);if(t.length<250)return t;let n=0;for(let e=0;e<t.length;e++){let r=t.charCodeAt(e);n=(n<<5)-n+r,n&=n}return n}function dq(e){return e===!1||e===null}function fq(e,t){return e.includes(t)}function pq(e,t){let n=0;for(let[r,i]of e.entries())if(t(i,r,n++))return!0;return!1}function mq(e,t){let n=0;for(let[r,i]of e.entries())if(!t(i,r,n++))return!1;return!0}function hq(e,...t){for(let n of t)gq(e,n??{});return e}function gq(e,t){for(let n of q(t))i(e,n,t[n],!0)}function _q(e,t){let n=[],r={},i;for(let a of e)i=t(a),!(i in r)&&(r[i]=1,n.push(a));return n}function vq(e,t){let n=q(e),r=q(t);if(n.length!==r.length)return!1;for(let r of n)if(e[r]!==t[r])return!1;return!0}function yq(e,t){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}function bq(e,t){for(let n of e)if(t.has(n))return!0;return!1}function xq(e){let t=new Set;for(let n of e){let e=ke(n).map((e,t)=>t===0?e:`[${e}]`),r=e.map((t,n)=>e.slice(0,n+1).join(``));for(let e of r)t.add(e)}return t}function Sq(e,t){return e===void 0||t===void 0||bq(xq(e),xq(t))}function Cq(e){return q(e).length===0}var q=Object.keys,wq=Object.values,Tq=Object.entries;function Eq(e){return e===!0||e===!1}function Dq(e){return P(e)||o(e)||Eq(e)}function Oq(e){let t=e.replace(/\W/g,`_`);return(e.match(/^\d+/)?`_`:``)+t}function kq(e,t){return iq(e)?`!(${kq(e.not,t)})`:rq(e)?`(${e.and.map(e=>kq(e,t)).join(`) && (`)})`:nq(e)?`(${e.or.map(e=>kq(e,t)).join(`) || (`)})`:t(e)}function Aq(e,t){if(t.length===0)return!0;let n=t.shift();return n in e&&Aq(e[n],t)&&delete e[n],Cq(e)}function jq(e){return e.charAt(0).toUpperCase()+e.substr(1)}function Mq(e,t=`datum`){let n=ke(e),r=[];for(let e=1;e<=n.length;e++){let i=`[${n.slice(0,e).map(p).join(`][`)}]`;r.push(`${t}${i}`)}return r.join(` && `)}function Nq(e,t=`datum`){return`${t}[${p(ke(e).join(`.`))}]`}function Pq(e){return`datum['${e.replaceAll(`'`,`\\'`)}']`}function Fq(e){return e.replaceAll(`\\'`,`'`).replaceAll(`\\.`,`.`)}function Iq(e){return e.replace(/(\[|\]|\.|'|")/g,`\\$1`)}function Lq(e){return`${ke(e).map(Iq).join(`\\.`)}`}function Rq(e,t,n){return e.replace(new RegExp(t.replace(/[-/\\^$*+?.()|[\]{}]/g,`\\$&`),`g`),n)}function zq(e){return`${ke(e).join(`.`)}`}function Bq(e){return e?ke(e).length:0}function Vq(...e){return e.find(e=>e!==void 0)}var Hq=42;function Uq(e){let t=++Hq;return e?String(e)+t:t}function Wq(){Hq=42}function Gq(e){return Kq(e)?e:`__${e}`}function Kq(e){return e.startsWith(`__`)}function qq(e){if(e!==void 0)return(e%360+360)%360}function Jq(e){return o(e)?!0:!isNaN(e)&&!isNaN(parseFloat(e))}var Yq=Object.getPrototypeOf(structuredClone({}));function Xq(e,t){if(e===t)return!0;if(e&&t&&typeof e==`object`&&typeof t==`object`){if(e.constructor.name!==t.constructor.name)return!1;let n,r;if(Array.isArray(e)){if(n=e.length,n!=t.length)return!1;for(r=n;r--!==0;)if(!Xq(e[r],t[r]))return!1;return!0}if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(let n of e.entries())if(!t.has(n[0]))return!1;for(let n of e.entries())if(!Xq(n[1],t.get(n[0])))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(let n of e.entries())if(!t.has(n[0]))return!1;return!0}if(ArrayBuffer.isView(e)&&ArrayBuffer.isView(t)){if(n=e.length,n!=t.length)return!1;for(r=n;r--!==0;)if(e[r]!==t[r])return!1;return!0}if(e.constructor===RegExp)return e.source===t.source&&e.flags===t.flags;if(e.valueOf!==Object.prototype.valueOf&&e.valueOf!==Yq.valueOf)return e.valueOf()===t.valueOf();if(e.toString!==Object.prototype.toString&&e.toString!==Yq.toString)return e.toString()===t.toString();let i=Object.keys(e);if(n=i.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!Object.prototype.hasOwnProperty.call(t,i[r]))return!1;for(r=n;r--!==0;){let n=i[r];if(!Xq(e[n],t[n]))return!1}return!0}return e!==e&&t!==t}function Zq(e){let t=[];return(function e(n){if(n?.toJSON&&typeof n.toJSON==`function`&&(n=n.toJSON()),n===void 0)return;if(typeof n==`number`)return isFinite(n)?`${n}`:`null`;if(typeof n!=`object`)return JSON.stringify(n);let r,i;if(Array.isArray(n)){for(i=`[`,r=0;r<n.length;r++)r&&(i+=`,`),i+=e(n[r])||`null`;return`${i}]`}if(n===null)return`null`;if(t.includes(n))throw TypeError(`Converting circular structure to JSON`);let a=t.push(n)-1,o=Object.keys(n).sort();for(i=``,r=0;r<o.length;r++){let t=o[r],a=e(n[t]);a&&(i&&(i+=`,`),i+=`${JSON.stringify(t)}:${a}`)}return t.splice(a,1),`{${i}}`})(e)}function J(e,t){return M(e)&&T(e,t)&&e[t]!==void 0}var Qq=`row`,$q=`column`,eJ=`facet`,tJ=`x`,nJ=`y`,rJ=`x2`,iJ=`y2`,aJ=`xOffset`,oJ=`yOffset`,sJ=`radius`,cJ=`radius2`,lJ=`theta`,uJ=`theta2`,dJ=`latitude`,fJ=`longitude`,pJ=`latitude2`,mJ=`longitude2`,hJ=`time`,gJ=`color`,_J=`fill`,vJ=`stroke`,yJ=`shape`,bJ=`size`,xJ=`angle`,SJ=`opacity`,CJ=`fillOpacity`,wJ=`strokeOpacity`,TJ=`strokeWidth`,EJ=`strokeDash`,DJ=`text`,OJ=`order`,kJ=`detail`,AJ=`key`,jJ=`tooltip`,MJ=`href`,NJ=`url`,PJ=`description`,FJ={x:1,y:1,x2:1,y2:1},IJ={theta:1,theta2:1,radius:1,radius2:1};function LJ(e){return T(IJ,e)}var RJ={longitude:1,longitude2:1,latitude:1,latitude2:1};function zJ(e){switch(e){case dJ:return`y`;case pJ:return`y2`;case fJ:return`x`;case mJ:return`x2`}}function BJ(e){return T(RJ,e)}var VJ=q(RJ),HJ={...FJ,...IJ,...RJ,xOffset:1,yOffset:1,color:1,fill:1,stroke:1,time:1,opacity:1,fillOpacity:1,strokeOpacity:1,strokeWidth:1,strokeDash:1,size:1,angle:1,shape:1,order:1,text:1,detail:1,key:1,tooltip:1,href:1,url:1,description:1};function UJ(e){return e===gJ||e===_J||e===vJ}var WJ={row:1,column:1,facet:1},GJ=q(WJ),KJ={...HJ,...WJ},qJ=q(KJ),{order:Ace,detail:jce,tooltip:Mce,...JJ}=KJ,{row:Nce,column:Pce,facet:Fce,...YJ}=JJ;function XJ(e){return T(YJ,e)}function ZJ(e){return T(KJ,e)}var QJ=[rJ,iJ,pJ,mJ,uJ,cJ];function $J(e){return eY(e)!==e}function eY(e){switch(e){case rJ:return tJ;case iJ:return nJ;case pJ:return dJ;case mJ:return fJ;case uJ:return lJ;case cJ:return sJ}return e}function tY(e){if(LJ(e))switch(e){case lJ:return`startAngle`;case uJ:return`endAngle`;case sJ:return`outerRadius`;case cJ:return`innerRadius`}return e}function nY(e){switch(e){case tJ:return rJ;case nJ:return iJ;case dJ:return pJ;case fJ:return mJ;case lJ:return uJ;case sJ:return cJ}}function rY(e){switch(e){case tJ:case rJ:return`width`;case nJ:case iJ:return`height`}}function iY(e){switch(e){case tJ:return`xOffset`;case nJ:return`yOffset`;case rJ:return`x2Offset`;case iJ:return`y2Offset`;case lJ:return`thetaOffset`;case sJ:return`radiusOffset`;case uJ:return`theta2Offset`;case cJ:return`radius2Offset`}}function aY(e){switch(e){case tJ:return`xOffset`;case nJ:return`yOffset`}}function oY(e){switch(e){case`xOffset`:return`x`;case`yOffset`:return`y`}}var sY=q(HJ),{x:Ice,y:Lce,x2:Rce,y2:zce,xOffset:Bce,yOffset:Vce,latitude:Hce,longitude:Uce,latitude2:Wce,longitude2:Gce,theta:Kce,theta2:qce,radius:Jce,radius2:Yce,...cY}=HJ,lY=q(cY),uY={x:1,y:1},dY=q(uY);function fY(e){return T(uY,e)}var pY={theta:1,radius:1},mY=q(pY);function hY(e){return e===`width`?tJ:nJ}var gY={xOffset:1,yOffset:1};function _Y(e){return T(gY,e)}var vY={time:1};function yY(e){return e in vY}var{text:Xce,tooltip:Zce,href:Qce,url:$ce,description:ele,detail:tle,key:nle,order:rle,...bY}=cY,xY=q(bY);function SY(e){return T(cY,e)}function CY(e){switch(e){case gJ:case _J:case vJ:case bJ:case yJ:case SJ:case TJ:case EJ:return!0;case CJ:case wJ:case xJ:case hJ:return!1}}var wY={...uY,...pY,...gY,...bY},TY=q(wY);function EY(e){return T(wY,e)}function DY(e,t){return AY(e)[t]}var OY={arc:`always`,area:`always`,bar:`always`,circle:`always`,geoshape:`always`,image:`always`,line:`always`,rule:`always`,point:`always`,rect:`always`,square:`always`,trail:`always`,text:`always`,tick:`always`},{geoshape:ile,...kY}=OY;function AY(e){switch(e){case gJ:case _J:case vJ:case PJ:case kJ:case AJ:case jJ:case MJ:case OJ:case SJ:case CJ:case wJ:case TJ:case eJ:case Qq:case $q:return OY;case tJ:case nJ:case aJ:case oJ:case dJ:case fJ:case hJ:return kY;case rJ:case iJ:case pJ:case mJ:return{area:`always`,bar:`always`,image:`always`,rect:`always`,rule:`always`,circle:`binned`,point:`binned`,square:`binned`,tick:`binned`,line:`binned`,trail:`binned`};case bJ:return{point:`always`,tick:`always`,rule:`always`,circle:`always`,square:`always`,bar:`always`,text:`always`,line:`always`,trail:`always`};case EJ:return{line:`always`,point:`always`,tick:`always`,rule:`always`,circle:`always`,square:`always`,bar:`always`,geoshape:`always`};case yJ:return{point:`always`,geoshape:`always`};case DJ:return{text:`always`};case xJ:return{point:`always`,square:`always`,text:`always`};case NJ:return{image:`always`};case lJ:return{text:`always`,arc:`always`};case sJ:return{text:`always`,arc:`always`};case uJ:case cJ:return{arc:`always`}}}function jY(e){switch(e){case tJ:case nJ:case lJ:case sJ:case aJ:case oJ:case bJ:case xJ:case TJ:case SJ:case CJ:case wJ:case hJ:case rJ:case iJ:case uJ:case cJ:return;case eJ:case Qq:case $q:case yJ:case EJ:case DJ:case jJ:case MJ:case NJ:case PJ:return`discrete`;case gJ:case _J:case vJ:return`flexible`;case dJ:case fJ:case pJ:case mJ:case kJ:case AJ:case OJ:return}}var MY={argmax:1,argmin:1,average:1,count:1,distinct:1,exponential:1,exponentialb:1,product:1,max:1,mean:1,median:1,min:1,missing:1,q1:1,q3:1,ci0:1,ci1:1,stderr:1,stdev:1,stdevp:1,sum:1,valid:1,values:1,variance:1,variancep:1},NY={count:1,min:1,max:1};function PY(e){return J(e,`argmin`)}function FY(e){return J(e,`argmax`)}function IY(e){return P(e)&&T(MY,e)}var LY=new Set([`count`,`valid`,`missing`,`distinct`]);function RY(e){return P(e)&&LY.has(e)}function zY(e){return P(e)&&fq([`min`,`max`],e)}var BY=new Set([`count`,`sum`,`distinct`,`valid`,`missing`]),VY=new Set([`mean`,`average`,`median`,`q1`,`q3`,`min`,`max`]);function HY(e){return gr(e)&&(e=N0(e,void 0)),`bin${q(e).map(t=>KY(e[t])?Oq(`_${t}_${Tq(e[t])}`):Oq(`_${t}_${e[t]}`)).join(``)}`}function UY(e){return e===!0||GY(e)&&!e.binned}function WY(e){return e===`binned`||GY(e)&&e.binned===!0}function GY(e){return M(e)}function KY(e){return J(e,`param`)}function qY(e){switch(e){case Qq:case $q:case bJ:case gJ:case _J:case vJ:case TJ:case SJ:case CJ:case wJ:case yJ:return 6;case EJ:return 4;default:return 10}}function JY(e){return J(e,`expr`)}function YY(e,{level:t}={level:0}){let n=q(e||{}),r={};for(let i of n)r[i]=t===0?sX(e[i]):YY(e[i],{level:t-1});return r}function XY(e){let{anchor:t,frame:n,offset:r,orient:i,angle:a,limit:o,color:s,subtitleColor:c,subtitleFont:l,subtitleFontSize:u,subtitleFontStyle:d,subtitleFontWeight:f,subtitleLineHeight:p,subtitlePadding:m,...h}=e,g={...h,...s?{fill:s}:{}},_={...t?{anchor:t}:{},...n?{frame:n}:{},...r?{offset:r}:{},...i?{orient:i}:{},...a===void 0?{}:{angle:a},...o===void 0?{}:{limit:o}},v={...c?{subtitleColor:c}:{},...l?{subtitleFont:l}:{},...u?{subtitleFontSize:u}:{},...d?{subtitleFontStyle:d}:{},...f?{subtitleFontWeight:f}:{},...p?{subtitleLineHeight:p}:{},...m?{subtitlePadding:m}:{}};return{titleMarkConfig:g,subtitleMarkConfig:cq(e,[`align`,`baseline`,`dx`,`dy`,`limit`]),nonMarkTitleProperties:_,subtitle:v}}function ZY(e){return P(e)||N(e)&&P(e[0])}function Y(e){return J(e,`signal`)}function QY(e){return J(e,`step`)}function $Y(e){return!N(e)&&J(e,`fields`)&&!J(e,`data`)}function eX(e){return!N(e)&&J(e,`fields`)&&J(e,`data`)}function tX(e){return!N(e)&&J(e,`field`)&&J(e,`data`)}var nX=q({aria:1,description:1,ariaRole:1,ariaRoleDescription:1,blend:1,opacity:1,fill:1,fillOpacity:1,stroke:1,strokeCap:1,strokeWidth:1,strokeOpacity:1,strokeDash:1,strokeDashOffset:1,strokeJoin:1,strokeOffset:1,strokeMiterLimit:1,startAngle:1,endAngle:1,padAngle:1,innerRadius:1,outerRadius:1,size:1,shape:1,interpolate:1,tension:1,orient:1,align:1,baseline:1,text:1,dir:1,dx:1,dy:1,ellipsis:1,limit:1,radius:1,theta:1,angle:1,font:1,fontSize:1,fontWeight:1,fontStyle:1,lineBreak:1,lineHeight:1,cursor:1,href:1,tooltip:1,cornerRadius:1,cornerRadiusTopLeft:1,cornerRadiusTopRight:1,cornerRadiusBottomLeft:1,cornerRadiusBottomRight:1,aspect:1,width:1,height:1,url:1,smooth:1}),rX={arc:1,area:1,group:1,image:1,line:1,path:1,rect:1,rule:1,shape:1,symbol:1,text:1,trail:1},iX=[`cornerRadius`,`cornerRadiusTopLeft`,`cornerRadiusTopRight`,`cornerRadiusBottomLeft`,`cornerRadiusBottomRight`],aX=` – `;function oX(e){let t=N(e.condition)?e.condition.map(cX):cX(e.condition);return{...sX(e),condition:t}}function sX(e){if(JY(e)){let{expr:t,...n}=e;return{signal:t,...n}}return e}function cX(e){if(JY(e)){let{expr:t,...n}=e;return{signal:t,...n}}return e}function lX(e){if(JY(e)){let{expr:t,...n}=e;return{signal:t,...n}}return Y(e)?e:e===void 0?void 0:{value:e}}function uX(e){return Y(e)?e.signal:p(e)}function dX(e){return Y(e)?e.signal:p(e.value)}function fX(e){return Y(e)?e.signal:e==null?null:p(e)}function pX(e,t,n){for(let r of n){let n=gX(r,t.markDef,t.config);n!==void 0&&(e[r]=lX(n))}return e}function mX(e){return[].concat(e.type,e.style??[])}function hX(e,t,n,r={}){let{vgChannel:i,ignoreVgConfig:a}=r;return i&&J(t,i)?t[i]:t[e]===void 0?a&&(!i||i===e)?void 0:gX(e,t,n,r):t[e]}function gX(e,t,n,{vgChannel:r}={}){let i=_X(e,t,n.style);return Vq(r?i:void 0,i,r?n[t.type][r]:void 0,n[t.type][e],r?n.mark[r]:n.mark[e])}function _X(e,t,n){return vX(e,mX(t),n)}function vX(e,t,n){t=k(t);let r;for(let i of t){let t=n[i];J(t,e)&&(r=t[e])}return r}function yX(e,t){return k(e).reduce((e,n)=>(e.field.push($(n,t)),e.order.push(n.sort??`ascending`),e),{field:[],order:[]})}function bX(e,t){let n=[...e];return t.forEach(e=>{for(let t of n)if(Xq(t,e))return;n.push(e)}),n}function xX(e,t){return Xq(e,t)||!t?e:e?[...k(e),...k(t)].join(`, `):t}function SX(e,t){let n=e.value,r=t.value;if(n==null||r===null)return{explicit:e.explicit,value:null};if((ZY(n)||Y(n))&&(ZY(r)||Y(r)))return{explicit:e.explicit,value:xX(n,r)};if(ZY(n)||Y(n))return{explicit:e.explicit,value:n};if(ZY(r)||Y(r))return{explicit:e.explicit,value:r};if(!ZY(n)&&!Y(n)&&!ZY(r)&&!Y(r))return{explicit:e.explicit,value:bX(n,r)};throw Error(`It should never reach here`)}function CX(e){return`Invalid specification ${Zq(e)}. Make sure the specification includes at least one of the following properties: "mark", "layer", "facet", "hconcat", "vconcat", "concat", or "repeat".`}var wX=`Autosize "fit" only works for single views and layered views.`;function TX(e){return`${e==`width`?`Width`:`Height`} "container" only works for single views and layered views.`}function EX(e){return`${e==`width`?`Width`:`Height`} "container" only works well with autosize "fit" or "fit-${e==`width`?`x`:`y`}".`}function DX(e){return e?`Dropping "fit-${e}" because spec has discrete ${rY(e)}.`:`Dropping "fit" because spec has discrete size.`}function OX(e){return`Unknown field for ${e}. Cannot calculate view size.`}function kX(e){return`Cannot project a selection on encoding channel "${e}", which has no field.`}function AX(e,t){return`Cannot project a selection on encoding channel "${e}" as it uses an aggregate function ("${t}").`}function jX(e){return`The "nearest" transform is not supported for ${e} marks.`}function MX(e){return`Selection not supported for ${e} yet.`}function NX(e){return`Cannot find a selection named "${e}".`}var PX=`Scale bindings are currently only supported for scales with unbinned, continuous domains.`,FX=`Sequntial scales are deprecated. The available quantitative scale type values are linear, log, pow, sqrt, symlog, time and utc`,IX=`Legend bindings are only supported for selections over an individual field or encoding channel.`;function LX(e){return`Lookups can only be performed on selection parameters. "${e}" is a variable parameter.`}function RX(e){return`Cannot define and lookup the "${e}" selection in the same view. Try moving the lookup into a second, layered view?`}var zX=`The same selection must be used to override scale domains in a layered view.`,BX=`Interval selections should be initialized using "x", "y", "longitude", or "latitude" keys.`;function VX(e){return`Unknown repeated value "${e}".`}function HX(e){return`The "columns" property cannot be used when "${e}" has nested row/column.`}var UX=`Multiple timer selections in one unit spec are not supported. Ignoring all but the first.`,WX=`Animation involving facet, layer, or concat is currently unsupported.`;function GX(e){return`A "field" or "encoding" must be specified when using a selection as a scale domain. Using "field": ${p(e)}.`}function KX(e,t,n,r){return`${e.length?`Multiple `:`No `}matching ${p(t)} encoding found for selection ${p(n.param)}. Using "field": ${p(r)}.`}var qX=`Axes cannot be shared in concatenated or repeated views yet (https://github.com/vega/vega-lite/issues/2415).`;function JX(e){return`Unrecognized parse "${e}".`}function YX(e,t,n){return`An ancestor parsed field "${e}" as ${n} but a child wants to parse the field as ${t}.`}var XX=`Attempt to add the same child twice.`;function ZX(e){return`Ignoring an invalid transform: ${Zq(e)}.`}var QX=`If "from.fields" is not specified, "as" has to be a string that specifies the key to be used for the data from the secondary source.`;function $X(e){return`Config.customFormatTypes is not true, thus custom format type and format for channel ${e} are dropped.`}function eZ(e){let{parentProjection:t,projection:n}=e;return`Layer's shared projection ${Zq(t)} is overridden by a child projection ${Zq(n)}.`}var tZ=`Arc marks uses theta channel rather than angle, replacing angle with theta.`;function nZ(e){return`${e}Offset dropped because ${e} is continuous`}function rZ(e,t,n){return`Channel ${e} is a ${t}. Converted to {value: ${Zq(n)}}.`}function iZ(e){return`Invalid field type "${e}".`}function aZ(e,t){return`Invalid field type "${e}" for aggregate: "${t}", using "quantitative" instead.`}function oZ(e){return`Invalid aggregation operator "${e}".`}function sZ(e,t){let{fill:n,stroke:r}=t;return`Dropping color ${e} as the plot also has ${n&&r?`fill and stroke`:n?`fill`:`stroke`}.`}function cZ(e){return`Position range does not support relative band size for ${e}.`}function lZ(e,t){return`Dropping ${Zq(e)} from channel "${t}" since it does not contain any data field, datum, value, or signal.`}var uZ=`Line marks cannot encode size with a non-groupby field. You may want to use trail marks instead.`;function dZ(e,t,n){return`${e} dropped as it is incompatible with "${t}".`}function fZ(e){return`${e}-encoding is dropped as ${e} is not a valid encoding channel.`}function pZ(e){return`${e} encoding should be discrete (ordinal / nominal / binned).`}function mZ(e){return`${e} encoding should be discrete (ordinal / nominal / binned) or use a discretizing scale (e.g. threshold).`}function hZ(e){return`Facet encoding dropped as ${e.join(` and `)} ${e.length>1?`are`:`is`} also specified.`}function gZ(e,t){return`Using discrete channel "${e}" to encode "${t}" field can be misleading as it does not encode ${t===`ordinal`?`order`:`magnitude`}.`}function _Z(e){return`The ${e} for range marks cannot be an expression`}function vZ(e,t){return`Line mark is for continuous lines and thus cannot be used with ${e&&t?`x2 and y2`:e?`x2`:`y2`}. We will use the rule mark (line segments) instead.`}function yZ(e,t){return`Specified orient "${e}" overridden with "${t}".`}function bZ(e){return`Cannot use the scale property "${e}" with non-color channel.`}function xZ(e){return`Cannot use the relative band size with ${e} scale.`}function SZ(e){return`Using unaggregated domain with raw field has no effect (${Zq(e)}).`}function CZ(e){return`Unaggregated domain not applicable for "${e}" since it produces values outside the origin domain of the source data.`}function wZ(e){return`Unaggregated domain is currently unsupported for log scale (${Zq(e)}).`}function TZ(e){return`Cannot apply size to non-oriented mark "${e}".`}function EZ(e,t,n){return`Channel "${e}" does not work with "${t}" scale. We are using "${n}" scale instead.`}function DZ(e,t){return`FieldDef does not work with "${e}" scale. We are using "${t}" scale instead.`}function OZ(e,t,n){return`${n}-scale's "${t}" is dropped as it does not work with ${e} scale.`}function kZ(e){return`The step for "${e}" is dropped because the ${e===`width`?`x`:`y`} is continuous.`}function AZ(e,t,n,r){return`Conflicting ${t.toString()} property "${e.toString()}" (${Zq(n)} and ${Zq(r)}). Using ${Zq(n)}.`}function jZ(e,t,n,r){return`Conflicting ${t.toString()} property "${e.toString()}" (${Zq(n)} and ${Zq(r)}). Using the union of the two domains.`}function MZ(e){return`Setting the scale to be independent for "${e}" means we also have to set the guide (axis or legend) to be independent.`}function NZ(e){return`Dropping sort property ${Zq(e)} as unioned domains only support boolean or op "count", "min", and "max".`}var PZ=`Domains that should be unioned has conflicting sort properties. Sort will be set to true.`,FZ=`Detected faceted independent scales that union domain of multiple fields from different data sources. We will use the first field. The result view size may be incorrect.`,IZ=`Detected faceted independent scales that union domain of the same fields from different source. We will assume that this is the same field from a different fork of the same data source. However, if this is not the case, the result view size may be incorrect.`,LZ=`Detected faceted independent scales that union domain of multiple fields from the same data source. We will use the first field. The result view size may be incorrect.`;function RZ(e,t){return`Unioning discrete legend values from ${e} and ${t}.`}function zZ(e){return`Cannot stack "${e}" if there is already "${e}2".`}function BZ(e){return`Stack is applied to a non-linear scale (${e}).`}function VZ(e){return`Stacking is applied even though the aggregate function is non-summative ("${e}").`}function HZ(e,t){return`Invalid ${e}: ${Zq(t)}.`}function UZ(e){return`Dropping day from datetime ${Zq(e)} as day cannot be combined with other units.`}function WZ(e,t){return`${t?`extent `:``}${t&&e?`and `:``}${e?`center `:``}${t&&e?`are `:`is `}not needed when data are aggregated.`}function GZ(e,t,n){return`${e} is not usually used with ${t} for ${n}.`}function KZ(e,t){return`Continuous axis should not have customized aggregation function ${e}; ${t} already agregates the axis.`}function qZ(e){return`1D error band does not support ${e}.`}function JZ(e){return`Channel ${e} is required for "binned" bin.`}function YZ(e){return`Channel ${e} should not be used with "binned" bin.`}function XZ(e){return`Domain for ${e} is required for threshold scale.`}var ZZ=Vn(2),QZ=ZZ;function $Z(e){return QZ=e,QZ}function eQ(){return QZ=ZZ,QZ}function tQ(...e){QZ.error(...e)}function X(...e){QZ.warn(...e)}function nQ(...e){QZ.debug(...e)}function rQ(e){if(e&&M(e)){for(let t of gQ)if(J(e,t))return!0}return!1}var iQ=[`january`,`february`,`march`,`april`,`may`,`june`,`july`,`august`,`september`,`october`,`november`,`december`],aQ=iQ.map(e=>e.substr(0,3)),oQ=[`sunday`,`monday`,`tuesday`,`wednesday`,`thursday`,`friday`,`saturday`],sQ=oQ.map(e=>e.substr(0,3));function cQ(e){if(Jq(e)&&(e=+e),o(e))return e>4&&X(HZ(`quarter`,e)),e-1;throw Error(HZ(`quarter`,e))}function lQ(e){if(Jq(e)&&(e=+e),o(e))return e-1;{let t=e.toLowerCase(),n=iQ.indexOf(t);if(n!==-1)return n;let r=t.substr(0,3),i=aQ.indexOf(r);if(i!==-1)return i;throw Error(HZ(`month`,e))}}function uQ(e){if(Jq(e)&&(e=+e),o(e))return e%7;{let t=e.toLowerCase(),n=oQ.indexOf(t);if(n!==-1)return n;let r=t.substr(0,3),i=sQ.indexOf(r);if(i!==-1)return i;throw Error(HZ(`day`,e))}}function dQ(e,t){let n=[];if(t&&e.day!==void 0&&q(e).length>1&&(X(UZ(e)),e=K(e),delete e.day),e.year===void 0?n.push(2012):n.push(e.year),e.month!==void 0){let r=t?lQ(e.month):e.month;n.push(r)}else if(e.quarter!==void 0){let r=t?cQ(e.quarter):e.quarter;n.push(o(r)?r*3:`${r}*3`)}else n.push(0);if(e.date!==void 0)n.push(e.date);else if(e.day!==void 0){let r=t?uQ(e.day):e.day;n.push(o(r)?r+1:`${r}+1`)}else n.push(1);for(let t of[`hours`,`minutes`,`seconds`,`milliseconds`]){let r=e[t];n.push(r===void 0?0:r)}return n}function fQ(e){let t=dQ(e,!0).join(`, `);return e.utc?`utc(${t})`:`datetime(${t})`}function pQ(e){let t=dQ(e,!1).join(`, `);return e.utc?`utc(${t})`:`datetime(${t})`}function mQ(e){let t=dQ(e,!0);return e.utc?+new Date(Date.UTC(...t)):+new Date(...t)}var hQ={year:1,quarter:1,month:1,week:1,day:1,dayofyear:1,date:1,hours:1,minutes:1,seconds:1,milliseconds:1},gQ=q(hQ);function _Q(e){return T(hQ,e)}function vQ(e){return M(e)?e.binned:yQ(e)}function yQ(e){return e?.startsWith(`binned`)}function bQ(e){return e.startsWith(`utc`)}function xQ(e){return e.substring(3)}var SQ={"year-month":`%b %Y `,"year-month-date":`%b %d, %Y `};function CQ(e){return gQ.filter(t=>TQ(e,t))}function wQ(e){let t=CQ(e);return t[t.length-1]}function TQ(e,t){let n=e.indexOf(t);return!(n<0||n>0&&t===`seconds`&&e.charAt(n-1)===`i`||e.length>n+3&&t===`day`&&e.charAt(n+3)===`o`||n>0&&t===`year`&&e.charAt(n-1)===`f`)}function EQ(e,t,{end:n}={end:!1}){let r=Mq(t),i=bQ(e)?`utc`:``;function a(e){return e===`quarter`?`(${i}quarter(${r})-1)`:`${i}${e}(${r})`}let o,s={};for(let t of gQ)TQ(e,t)&&(s[t]=a(t),o=t);return n&&(s[o]+=`+1`),pQ(s)}function DQ(e){if(e)return`timeUnitSpecifier(${Zq(CQ(e))}, ${Zq(SQ)})`}function OQ(e,t,n){if(!e)return;let r=DQ(e);return`${n||bQ(e)?`utc`:`time`}Format(${t}, ${r})`}function kQ(e){if(!e)return;let t;return P(e)?t=yQ(e)?{unit:e.substring(6),binned:!0}:{unit:e}:M(e)&&(t={...e,...e.unit?{unit:e.unit}:{}}),bQ(t.unit)&&(t.utc=!0,t.unit=xQ(t.unit)),t}function AQ(e){let{utc:t,...n}=kQ(e);return n.unit?(t?`utc`:``)+q(n).map(e=>Oq(`${e===`unit`?``:`_${e}_`}${n[e]}`)).join(``):`${t?`utc`:``}timeunit${q(n).map(e=>Oq(`_${e}_${n[e]}`)).join(``)}`}function jQ(e,t=e=>e){let n=kQ(e),r=wQ(n.unit);if(r&&r!==`day`){let e={year:2001,month:1,date:1,hours:0,minutes:0,seconds:0,milliseconds:0},{step:i,part:a}=PQ(r,n.step);return`${t(fQ({...e,[a]:+e[a]+i}))} - ${t(fQ(e))}`}}var MQ={year:1,month:1,date:1,hours:1,minutes:1,seconds:1,milliseconds:1};function NQ(e){return T(MQ,e)}function PQ(e,t=1){if(NQ(e))return{part:e,step:t};switch(e){case`day`:case`dayofyear`:return{part:`date`,step:t};case`quarter`:return{part:`month`,step:t*3};case`week`:return{part:`date`,step:t*7}}}function FQ(e){return J(e,`param`)}function IQ(e){return!!e?.field&&e.equal!==void 0}function LQ(e){return!!e?.field&&e.lt!==void 0}function RQ(e){return!!e?.field&&e.lte!==void 0}function zQ(e){return!!e?.field&&e.gt!==void 0}function BQ(e){return!!e?.field&&e.gte!==void 0}function VQ(e){return!!(e?.field&&(N(e.range)&&e.range.length===2||Y(e.range)))}function HQ(e){return!!e?.field&&(N(e.oneOf)||N(e.in))}function UQ(e){return!!e?.field&&e.valid!==void 0}function WQ(e){return HQ(e)||IQ(e)||VQ(e)||LQ(e)||zQ(e)||RQ(e)||BQ(e)}function GQ(e,t){return I0(e,{timeUnit:t,wrapTime:!0})}function KQ(e,t){return e.map(e=>GQ(e,t))}function qQ(e,t=!0){let{field:n}=e,{unit:r,binned:i}=kQ(e.timeUnit)||{},a=$(e,{expr:`datum`}),o=r?`time(${i?a:EQ(r,n)})`:a;if(IQ(e))return`${o}===${GQ(e.equal,r)}`;if(LQ(e)){let t=e.lt;return`${o}<${GQ(t,r)}`}if(zQ(e)){let t=e.gt;return`${o}>${GQ(t,r)}`}if(RQ(e)){let t=e.lte;return`${o}<=${GQ(t,r)}`}if(BQ(e)){let t=e.gte;return`${o}>=${GQ(t,r)}`}if(HQ(e))return`indexof([${KQ(e.oneOf,r).join(`,`)}], ${o}) !== -1`;if(UQ(e))return JQ(o,e.valid);if(VQ(e)){let{range:n}=YY(e),i=Y(n)?{signal:`${n.signal}[0]`}:n[0],a=Y(n)?{signal:`${n.signal}[1]`}:n[1];if(i!==null&&a!==null&&t)return`inrange(${o}, [${GQ(i,r)}, ${GQ(a,r)}])`;let s=[];return i!==null&&s.push(`${o} >= ${GQ(i,r)}`),a!==null&&s.push(`${o} <= ${GQ(a,r)}`),s.length>0?s.join(` && `):`true`}throw Error(`Invalid field predicate: ${Zq(e)}`)}function JQ(e,t=!0){return t?`isValid(${e}) && isFinite(+${e})`:`!isValid(${e}) || !isFinite(+${e})`}function YQ(e){return WQ(e)&&e.timeUnit?{...e,timeUnit:kQ(e.timeUnit)}:e}var XQ={quantitative:`quantitative`,ordinal:`ordinal`,temporal:`temporal`,nominal:`nominal`,geojson:`geojson`};function ZQ(e){return e===`quantitative`||e===`temporal`}function QQ(e){return e===`ordinal`||e===`nominal`}var $Q=XQ.quantitative,e$=XQ.ordinal,t$=XQ.temporal,n$=XQ.nominal,r$=XQ.geojson;function i$(e){if(e)switch(e=e.toLowerCase(),e){case`q`:case $Q:return`quantitative`;case`t`:case t$:return`temporal`;case`o`:case e$:return`ordinal`;case`n`:case n$:return`nominal`;case r$:return`geojson`}}var a$={LINEAR:`linear`,LOG:`log`,POW:`pow`,SQRT:`sqrt`,TIME:`time`,UTC:`utc`,POINT:`point`,BAND:`band`},o$={linear:`numeric`,log:`numeric`,pow:`numeric`,sqrt:`numeric`,symlog:`numeric`,identity:`numeric`,sequential:`numeric`,time:`time`,utc:`time`,ordinal:`ordinal`,"bin-ordinal":`bin-ordinal`,point:`ordinal-position`,band:`ordinal-position`,quantile:`discretizing`,quantize:`discretizing`,threshold:`discretizing`};function s$(e,t){let n=o$[e],r=o$[t];return n===r||n===`ordinal-position`&&r===`time`||r===`ordinal-position`&&n===`time`}var c$={linear:0,log:1,pow:1,sqrt:1,symlog:1,identity:1,sequential:1,time:0,utc:0,point:10,band:11,ordinal:0,"bin-ordinal":0,quantile:0,quantize:0,threshold:0};function l$(e){return c$[e]}var u$=new Set([`linear`,`log`,`pow`,`sqrt`,`symlog`]),d$=new Set([...u$,`time`,`utc`]);function f$(e){return u$.has(e)}var p$=new Set([`quantile`,`quantize`,`threshold`]),m$=new Set([...d$,...p$,`sequential`,`identity`]),h$=new Set([`ordinal`,`bin-ordinal`,`point`,`band`]);function g$(e){return h$.has(e)}function _$(e){return m$.has(e)}function v$(e){return d$.has(e)}function y$(e){return p$.has(e)}var b$={pointPadding:.5,barBandPaddingInner:.1,rectBandPaddingInner:0,tickBandPaddingInner:.25,bandWithNestedOffsetPaddingInner:.2,bandWithNestedOffsetPaddingOuter:.2,minBandSize:2,minFontSize:8,maxFontSize:40,minOpacity:.3,maxOpacity:.8,minSize:4,minStrokeWidth:1,maxStrokeWidth:4,quantileCount:4,quantizeCount:4,zero:!0,framesPerSecond:2,animationDuration:5};function x$(e){return!P(e)&&J(e,`name`)}function S$(e){return J(e,`param`)}function C$(e){return J(e,`unionWith`)}function w$(e){return M(e)&&`field`in e}var{type:ale,domain:ole,range:sle,rangeMax:cle,rangeMin:lle,scheme:ule,...T$}={type:1,domain:1,domainMax:1,domainMin:1,domainMid:1,domainRaw:1,align:1,range:1,rangeMax:1,rangeMin:1,scheme:1,bins:1,reverse:1,round:1,clamp:1,nice:1,base:1,exponent:1,constant:1,interpolate:1,zero:1,padding:1,paddingInner:1,paddingOuter:1},E$=q(T$);function D$(e,t){switch(t){case`type`:case`domain`:case`reverse`:case`range`:return!0;case`scheme`:case`interpolate`:return![`point`,`band`,`identity`].includes(e);case`bins`:return![`point`,`band`,`identity`,`ordinal`].includes(e);case`round`:return v$(e)||e===`band`||e===`point`;case`padding`:case`rangeMin`:case`rangeMax`:return v$(e)||[`point`,`band`].includes(e);case`paddingOuter`:case`align`:return[`point`,`band`].includes(e);case`paddingInner`:return e===`band`;case`domainMax`:case`domainMid`:case`domainMin`:case`domainRaw`:case`clamp`:return v$(e);case`nice`:return v$(e)||e===`quantize`||e===`threshold`;case`exponent`:return e===`pow`;case`base`:return e===`log`;case`constant`:return e===`symlog`;case`zero`:return _$(e)&&!fq([`log`,`time`,`utc`,`threshold`,`quantile`],e)}}function O$(e,t){switch(t){case`interpolate`:case`scheme`:case`domainMid`:return UJ(e)?void 0:bZ(t);case`align`:case`type`:case`bins`:case`domain`:case`domainMax`:case`domainMin`:case`domainRaw`:case`range`:case`base`:case`exponent`:case`constant`:case`nice`:case`padding`:case`paddingInner`:case`paddingOuter`:case`rangeMax`:case`rangeMin`:case`reverse`:case`round`:case`clamp`:case`zero`:return}}function k$(e,t){return fq([e$,n$],t)?e===void 0||g$(e):t===t$?fq([a$.TIME,a$.UTC,void 0],e):t!==$Q||f$(e)||y$(e)||e===void 0}function A$(e,t,n=!1){if(!EY(e))return!1;switch(e){case tJ:case nJ:case aJ:case oJ:case lJ:case sJ:return v$(t)?!0:t===`band`||t===`point`&&!n;case hJ:return fq([`linear`,`band`],t);case bJ:case TJ:case SJ:case CJ:case wJ:case xJ:return v$(t)||y$(t)||fq([`band`,`point`,`ordinal`],t);case gJ:case _J:case vJ:return t!==`band`;case EJ:case yJ:return t===`ordinal`||y$(t)}}function j$(e){return M(e)&&`value`in e}var M$={arc:`arc`,area:`area`,bar:`bar`,image:`image`,line:`line`,point:`point`,rect:`rect`,rule:`rule`,text:`text`,tick:`tick`,trail:`trail`,circle:`circle`,square:`square`,geoshape:`geoshape`},N$=M$.arc,P$=M$.area,F$=M$.bar,I$=M$.image,L$=M$.line,R$=M$.point,z$=M$.rect,B$=M$.rule,V$=M$.text,H$=M$.tick,U$=M$.trail,W$=M$.circle,G$=M$.square,K$=M$.geoshape;function q$(e){return[`line`,`area`,`trail`].includes(e)}function J$(e){return[`rect`,`bar`,`image`,`arc`,`tick`].includes(e)}var Y$=new Set(q(M$));function X$(e){return J(e,`type`)}var Z$=[`stroke`,`strokeWidth`,`strokeDash`,`strokeDashOffset`,`strokeOpacity`,`strokeJoin`,`strokeMiterLimit`],Q$=[`fill`,`fillOpacity`],$$=[...Z$,...Q$],e1=q({color:1,filled:1,invalid:1,order:1,radius2:1,theta2:1,timeUnitBandSize:1,timeUnitBandPosition:1}),t1=[`binSpacing`,`continuousBandSize`,`discreteBandSize`,`minBandSize`],n1={area:[`line`,`point`],bar:t1,rect:t1,line:[`point`],tick:[`bandSize`,`thickness`,...t1]},r1={color:`#4c78a8`,invalid:`break-paths-show-path-domains`,timeUnitBandSize:1},i1=q({mark:1,arc:1,area:1,bar:1,circle:1,image:1,line:1,point:1,rect:1,rule:1,square:1,text:1,tick:1,trail:1,geoshape:1});function a1(e){return J(e,`band`)}var o1={horizontal:[`cornerRadiusTopRight`,`cornerRadiusBottomRight`],vertical:[`cornerRadiusTopLeft`,`cornerRadiusTopRight`]},s1={binSpacing:0,continuousBandSize:5,minBandSize:.25,timeUnitBandPosition:.5},c1={...s1,binSpacing:1},l1={...s1,thickness:1};function u1(e){return X$(e)?e.type:e}function d1(e,{isPath:t}){return e===void 0||e===`break-paths-show-path-domains`?t?`break-paths-show-domains`:`filter`:e===null?`show`:e}function f1({markDef:e,config:t,scaleChannel:n,scaleType:r,isCountAggregate:i}){if(!r||!_$(r)||i)return`always-valid`;let a=d1(hX(`invalid`,e,t),{isPath:q$(e.type)});return t.scale?.invalid?.[n]===void 0?a:`show`}function p1(e){return e===`break-paths-filter-domains`||e===`break-paths-show-domains`}function m1({scaleName:e,scale:t,mode:n}){let r=`domain('${e}')`;if(!t||!e)return;let i=`${r}[0]`,a=`peek(${r})`,o=t.domainHasZero();return o===`definitely`?{scale:e,value:0}:o===`maybe`?{signal:`scale('${e}', inrange(0, ${r}) ? 0 : ${n===`zeroOrMin`?i:a})`}:{signal:`scale('${e}', ${n===`zeroOrMin`?i:a})`}}function h1({scaleChannel:e,channelDef:t,scale:n,scaleName:r,markDef:i,config:a}){let o=n?.get(`type`),s=O0(t),c=f1({scaleChannel:e,markDef:i,config:a,scaleType:o,isCountAggregate:RY(s?.aggregate)});if(s&&c===`show`){let t=a.scale.invalid?.[e]??`zero-or-min`;return{test:JQ($(s,{expr:`datum`}),!1),...g1(t,n,r)}}}function g1(e,t,n){if(j$(e)){let{value:t}=e;return Y(t)?{signal:t.signal}:{value:t}}return m1({scale:t,scaleName:n,mode:`zeroOrMin`})}function _1(e){let{channel:t,channelDef:n,markDef:r,scale:i,scaleName:a,config:o}=e,s=eY(t),c=S1(e),l=h1({scaleChannel:s,channelDef:n,scale:i,scaleName:a,markDef:r,config:o});return l===void 0?c:[l,c]}function v1(e){let{datum:t}=e;return rQ(t)?fQ(t):`${Zq(t)}`}function y1(e,t,n,r){let i={};if(t&&(i.scale=t),a0(e)){let{datum:t}=e;rQ(t)?i.signal=fQ(t):Y(t)?i.signal=t.signal:JY(t)?i.signal=t.expr:i.value=t}else i.field=$(e,n);if(r){let{offset:e,band:t}=r;e&&(i.offset=e),t&&(i.band=t)}return i}function b1({scaleName:e,fieldOrDatumDef:t,fieldOrDatumDef2:n,offset:r,startSuffix:i,endSuffix:a=`end`,bandPosition:o=.5}){let s=!Y(o)&&0<o&&o<1?`datum`:void 0,c=$(t,{expr:s,suffix:i}),l=n===void 0?$(t,{suffix:a,expr:s}):$(n,{expr:s}),u={};return o===0||o===1?(u.scale=e,u.field=o===0?c:l):u.signal=`scale("${e}", ${Y(o)?`(1-${o.signal}) * ${c} + ${o.signal} * ${l}`:`${1-o} * ${c} + ${o} * ${l}`})`,r&&(u.offset=r),u}function x1({scaleName:e,fieldDef:t}){let n=$(t,{expr:`datum`});return`abs(scale("${e}", ${$(t,{expr:`datum`,suffix:`end`})}) - scale("${e}", ${n}))`}function S1({channel:e,channelDef:t,channel2Def:n,markDef:r,config:i,scaleName:a,scale:o,stack:s,offset:c,defaultRef:l,bandPosition:u}){if(t){if(Q(t)){let l=o?.get(`type`);if(l0(t)){u??=X1({fieldDef:t,fieldDef2:n,markDef:r,config:i});let{bin:o,timeUnit:d,type:f}=t;if(UY(o)||u&&d&&f===t$)return s?.impute?y1(t,a,{binSuffix:`mid`},{offset:c}):u&&!g$(l)?b1({scaleName:a,fieldOrDatumDef:t,bandPosition:u,offset:c}):y1(t,a,R0(t,e)?{binSuffix:`range`}:{},{offset:c});if(WY(o)){if(Z(n))return b1({scaleName:a,fieldOrDatumDef:t,fieldOrDatumDef2:n,bandPosition:u,offset:c});X(JZ(e===tJ?rJ:iJ))}}return y1(t,a,g$(l)?{binSuffix:`range`}:{},{offset:c,band:l===`band`?u??t.bandPosition??.5:void 0})}if(u0(t)){let n=t.value,r=c?{offset:c}:{};return{...C1(e,n),...r}}}return m(l)&&(l=l()),l&&{...l,...c?{offset:c}:{}}}function C1(e,t){return fq([`x`,`x2`],e)&&t===`width`?{field:{group:`width`}}:fq([`y`,`y2`],e)&&t===`height`?{field:{group:`height`}}:lX(t)}function w1(e){return e&&e!==`number`&&e!==`time`}function T1(e,t,n){return`${e}(${t}${n?`, ${Zq(n)}`:``})`}function E1({fieldOrDatumDef:e,format:t,formatType:n,expr:r,normalizeStack:i,config:a}){if(w1(n))return O1({fieldOrDatumDef:e,format:t,formatType:n,expr:r,config:a});let o=D1(e,r,i),s=i0(e);if(t===void 0&&n===void 0&&a.customFormatTypes){if(s===`quantitative`){if(i&&a.normalizedNumberFormatType)return O1({fieldOrDatumDef:e,format:a.normalizedNumberFormat,formatType:a.normalizedNumberFormatType,expr:r,config:a});if(a.numberFormatType)return O1({fieldOrDatumDef:e,format:a.numberFormat,formatType:a.numberFormatType,expr:r,config:a})}if(s===`temporal`&&a.timeFormatType&&Z(e)&&e.timeUnit===void 0)return O1({fieldOrDatumDef:e,format:a.timeFormat,formatType:a.timeFormatType,expr:r,config:a})}function c(e){return Z(e)?kQ(e.timeUnit)||{}:{unit:void 0,utc:void 0}}if(F0(e)){let{unit:n,utc:r}=c(e),i=I1({field:o,timeUnit:n,format:t,formatType:a.timeFormatType,rawTimeFormat:a.timeFormat,isUTCScale:r||d0(e)&&e.scale?.type===a$.UTC});return i?{signal:i}:void 0}return t=j1({type:s,specifiedFormat:t,config:a,normalizeStack:i}),Z(e)&&UY(e.bin)?{signal:F1(o,$(e,{expr:r,binSuffix:`end`}),t,n,a)}:t||i0(e)===`quantitative`?{signal:`${N1(o,t)}`}:{signal:`isValid(${o}) ? ${o} : ""+${o}`}}function D1(e,t,n){return Z(e)?n?`${$(e,{expr:t,suffix:`end`})}-${$(e,{expr:t,suffix:`start`})}`:$(e,{expr:t}):v1(e)}function O1({fieldOrDatumDef:e,format:t,formatType:n,expr:r,normalizeStack:i,config:a,field:o}){if(o??=D1(e,r,i),o!==`datum.value`&&Z(e)&&UY(e.bin)){let i=$(e,{expr:r,binSuffix:`end`});return{signal:F1(o,i,t,n,a)}}return{signal:T1(n,o,t)}}function k1(e,t,n,r,i,a){if(!(P(r)&&w1(r))&&!(n===void 0&&r===void 0&&i.customFormatTypes&&i0(e)===`quantitative`&&(i.normalizedNumberFormatType&&f0(e)&&e.stack===`normalize`||i.numberFormatType))){if(f0(e)&&e.stack===`normalize`&&i.normalizedNumberFormat)return j1({type:`quantitative`,config:i,normalizeStack:!0});if(F0(e)){let t=Z(e)?kQ(e.timeUnit)?.unit:void 0;return t===void 0&&i.customFormatTypes&&i.timeFormatType?void 0:M1({specifiedFormat:n,timeUnit:t,config:i,omitTimeFormatConfig:a})}return j1({type:t,specifiedFormat:n,config:i})}}function A1(e,t,n){if(e&&(Y(e)||e===`number`||e===`time`))return e;if(F0(t)&&n!==`time`&&n!==`utc`)return Z(t)&&kQ(t?.timeUnit)?.utc?`utc`:`time`}function j1({type:e,specifiedFormat:t,config:n,normalizeStack:r}){if(P(t))return t;if(e===$Q)return r?n.normalizedNumberFormat:n.numberFormat}function M1({specifiedFormat:e,timeUnit:t,config:n,omitTimeFormatConfig:r}){return e||(t?{signal:DQ(t)}:r?void 0:n.timeFormat)}function N1(e,t){return`format(${e}, "${t||``}")`}function P1(e,t,n,r){return w1(n)?T1(n,e,t):N1(e,(P(t)?t:void 0)??r.numberFormat)}function F1(e,t,n,r,i){if(n===void 0&&r===void 0&&i.customFormatTypes&&i.numberFormatType)return F1(e,t,i.numberFormat,i.numberFormatType,i);let a=P1(e,n,r,i),o=P1(t,n,r,i);return`${JQ(e,!1)} ? "null" : ${a} + "${aX}" + ${o}`}function I1({field:e,timeUnit:t,format:n,formatType:r,rawTimeFormat:i,isUTCScale:a}){return!t||n?!t&&r?`${r}(${e}, ${Zq(n)})`:(n=P(n)?n:i,`${a?`utc`:`time`}Format(${e}, ${Zq(n)})`):OQ(t,e,a)}var L1=`min`,R1={x:1,y:1,color:1,fill:1,stroke:1,strokeWidth:1,size:1,shape:1,fillOpacity:1,strokeOpacity:1,opacity:1,text:1};function z1(e){return T(R1,e)}function B1(e){return J(e,`encoding`)}function V1(e){return e&&(e.op===`count`||J(e,`field`))}function H1(e){return e&&N(e)}function U1(e){return J(e,`row`)||J(e,`column`)}function W1(e){return J(e,`header`)}function G1(e){return J(e,`facet`)}function K1(e){return J(e,`param`)}function q1(e){return!P(e)&&J(e,`repeat`)}function J1(e){let{field:t,timeUnit:n,bin:r,aggregate:i}=e;return{...n?{timeUnit:n}:{},...r?{bin:r}:{},...i?{aggregate:i}:{},field:t}}function Y1(e){return J(e,`sort`)}function X1({fieldDef:e,fieldDef2:t,markDef:n,config:r}){if(Q(e)&&e.bandPosition!==void 0)return e.bandPosition;if(Z(e)){let{timeUnit:i,bin:a}=e;if(i&&!t)return gX(`timeUnitBandPosition`,n,r);if(UY(a))return .5}}function Z1({channel:e,fieldDef:t,fieldDef2:n,markDef:r,config:i,scaleType:a,useVlSizeChannel:o}){let s=rY(e),c=hX(o?`size`:s,r,i,{vgChannel:s});if(c!==void 0)return c;if(Z(t)){let{timeUnit:e,bin:o}=t;if(e&&!n)return{band:gX(`timeUnitBandSize`,r,i)};if(UY(o)&&!g$(a))return{band:1}}if(J$(r.type))return a?g$(a)?i[r.type]?.discreteBandSize||{band:1}:i[r.type]?.continuousBandSize:i[r.type]?.discreteBandSize}function Q1(e,t,n,r){return UY(e.bin)||e.timeUnit&&l0(e)&&e.type===`temporal`?X1({fieldDef:e,fieldDef2:t,markDef:n,config:r})!==void 0:!1}function $1(e){return J(e,`sort`)&&!J(e,`field`)}function e0(e){return J(e,`condition`)}function t0(e){let t=e?.condition;return!!t&&!N(t)&&Z(t)}function n0(e){let t=e?.condition;return!!t&&!N(t)&&Q(t)}function r0(e){let t=e?.condition;return!!t&&(N(t)||u0(t))}function Z(e){return J(e,`field`)||e?.aggregate===`count`}function i0(e){return e?.type}function a0(e){return J(e,`datum`)}function o0(e){return l0(e)&&!_0(e)||c0(e)}function s0(e){return l0(e)&&e.type===`quantitative`&&!e.bin||c0(e)}function c0(e){return a0(e)&&o(e.datum)}function Q(e){return Z(e)||a0(e)}function l0(e){return e&&(J(e,`field`)||e.aggregate===`count`)&&J(e,`type`)}function u0(e){return J(e,`value`)}function d0(e){return J(e,`scale`)||J(e,`sort`)}function f0(e){return J(e,`axis`)||J(e,`stack`)||J(e,`impute`)}function p0(e){return J(e,`legend`)}function m0(e){return J(e,`format`)||J(e,`formatType`)}function h0(e){return lq(e,[`legend`,`axis`,`header`,`scale`])}function g0(e){return J(e,`op`)}function $(e,t={}){let n=e.field,r=t.prefix,i=t.suffix,a=``;if(y0(e))n=Gq(`count`);else{let r;if(!t.nofn){if(g0(e))r=e.op;else{let{bin:o,aggregate:s,timeUnit:c}=e;UY(o)?(r=HY(o),i=(t.binSuffix??``)+(t.suffix??``)):s?FY(s)?(a=`["${n}"]`,n=`argmax_${s.argmax}`):PY(s)?(a=`["${n}"]`,n=`argmin_${s.argmin}`):r=String(s):c&&!vQ(c)&&(r=AQ(c),i=(![`range`,`mid`].includes(t.binSuffix)&&t.binSuffix||``)+(t.suffix??``))}}r&&(n=n?`${r}_${n}`:r)}return i&&(n=`${n}_${i}`),r&&(n=`${r}_${n}`),t.forAs?zq(n):t.expr?Nq(n,t.expr)+a:Lq(n)+a}function _0(e){switch(e.type){case`nominal`:case`ordinal`:case`geojson`:return!0;case`quantitative`:return Z(e)&&!!e.bin;case`temporal`:return!1}throw Error(iZ(e.type))}function v0(e){return d0(e)&&y$(e.scale?.type)}function y0(e){return e.aggregate===`count`}function b0(e,t){let{field:n,bin:r,timeUnit:i,aggregate:a}=e;if(a===`count`)return t.countTitle;if(UY(r))return`${n} (binned)`;if(i&&!vQ(i)){let e=kQ(i)?.unit;if(e)return`${n} (${CQ(e).join(`-`)})`}else if(a)return FY(a)?`${n} for max ${a.argmax}`:PY(a)?`${n} for min ${a.argmin}`:`${jq(a)} of ${n}`;return n}function dle(e){let{aggregate:t,bin:n,timeUnit:r,field:i}=e;if(FY(t))return`${i} for argmax(${t.argmax})`;if(PY(t))return`${i} for argmin(${t.argmin})`;let a=r&&!vQ(r)?kQ(r):void 0,o=t||a?.unit||a?.maxbins&&`timeunit`||UY(n)&&`bin`;return o?`${o.toUpperCase()}(${i})`:i}var x0=(e,t)=>{switch(t.fieldTitle){case`plain`:return e.field;case`functional`:return dle(e);default:return b0(e,t)}},S0=x0;function C0(e){S0=e}function fle(){C0(x0)}function w0(e,t,{allowDisabling:n,includeDefault:r=!0}){let i=T0(e)?.title;if(!Z(e))return i??e.title;let a=e,o=r?E0(a,t):void 0;return n?Vq(i,a.title,o):i??a.title??o}function T0(e){if(f0(e)&&e.axis)return e.axis;if(p0(e)&&e.legend)return e.legend;if(W1(e)&&e.header)return e.header}function E0(e,t){return S0(e,t)}function D0(e){if(m0(e)){let{format:t,formatType:n}=e;return{format:t,formatType:n}}{let{format:t,formatType:n}=T0(e)??{};return{format:t,formatType:n}}}function ple(e,t){switch(t){case`latitude`:case`longitude`:return`quantitative`;case`row`:case`column`:case`facet`:case`shape`:case`strokeDash`:return`nominal`;case`order`:return`ordinal`}if(Y1(e)&&N(e.sort))return`ordinal`;let{aggregate:n,bin:r,timeUnit:i}=e;if(i)return`temporal`;if(r||n&&!FY(n)&&!PY(n))return`quantitative`;if(d0(e)&&e.scale?.type)switch(o$[e.scale.type]){case`numeric`:case`discretizing`:return`quantitative`;case`time`:return`temporal`}return`nominal`}function O0(e){if(Z(e))return e;if(t0(e))return e.condition}function k0(e){if(Q(e))return e;if(n0(e))return e.condition}function A0(e,t,n,r={}){return Dq(e)?(X(rZ(t,P(e)?`string`:o(e)?`number`:`boolean`,e)),{value:e}):Q(e)?j0(e,t,n,r):n0(e)?{...e,condition:j0(e.condition,t,n,r)}:e}function j0(e,t,n,r){if(m0(e)){let{format:i,formatType:a,...o}=e;if(w1(a)&&!n.customFormatTypes)return X($X(t)),j0(o,t,n,r)}else{let i=f0(e)?`axis`:p0(e)?`legend`:W1(e)?`header`:null;if(i&&e[i]){let{format:a,formatType:o,...s}=e[i];if(w1(o)&&!n.customFormatTypes)return X($X(t)),j0({...e,[i]:s},t,n,r)}}return Z(e)?M0(e,t,r):mle(e)}function mle(e){let t=e.type;if(t)return e;let{datum:n}=e;return t=o(n)?`quantitative`:P(n)?`nominal`:rQ(n)?`temporal`:void 0,{...e,type:t}}function M0(e,t,{compositeMark:n=!1}={}){let{aggregate:r,timeUnit:i,bin:a,field:o}=e,s={...e};if(!n&&r&&!IY(r)&&!FY(r)&&!PY(r)&&(X(oZ(r)),delete s.aggregate),i&&(s.timeUnit=kQ(i)),o&&(s.field=`${o}`),UY(a)&&(s.bin=N0(a,t)),WY(a)&&!fY(t)&&X(YZ(t)),l0(s)){let{type:e}=s,t=i$(e);e!==t&&(s.type=t),e!==`quantitative`&&RY(r)&&(X(aZ(e,r)),s.type=`quantitative`)}else $J(t)||(s.type=ple(s,t));if(l0(s)){let{compatible:e,warning:n}=hle(s,t)||{};e===!1&&X(n)}if(Y1(s)&&P(s.sort)){let{sort:e}=s;if(z1(e))return{...s,sort:{encoding:e}};let t=e.substring(1);if(e.charAt(0)===`-`&&z1(t))return{...s,sort:{encoding:t,order:`descending`}}}if(W1(s)){let{header:e}=s;if(e){let{orient:t,...n}=e;if(t)return{...s,header:{...n,labelOrient:e.labelOrient||t,titleOrient:e.titleOrient||t}}}}return s}function N0(e,t){return gr(e)?{maxbins:qY(t)}:e===`binned`?{binned:!0}:!e.maxbins&&!e.step?{...e,maxbins:qY(t)}:e}var P0={compatible:!0};function hle(e,t){let n=e.type;if(n===`geojson`&&t!==`shape`)return{compatible:!1,warning:`Channel ${t} should not be used with a geojson data.`};switch(t){case Qq:case $q:case eJ:return _0(e)?P0:{compatible:!1,warning:pZ(t)};case tJ:case nJ:case aJ:case oJ:case gJ:case _J:case vJ:case DJ:case kJ:case AJ:case jJ:case MJ:case NJ:case xJ:case lJ:case sJ:case PJ:return P0;case fJ:case mJ:case dJ:case pJ:return n===$Q?P0:{compatible:!1,warning:`Channel ${t} should be used with a quantitative field only, not ${e.type} field.`};case SJ:case CJ:case wJ:case TJ:case bJ:case uJ:case cJ:case rJ:case iJ:case hJ:return n===`nominal`&&!e.sort?{compatible:!1,warning:`Channel ${t} should not be used with an unsorted discrete field.`}:P0;case yJ:case EJ:return!_0(e)&&!v0(e)?{compatible:!1,warning:mZ(t)}:P0;case OJ:return e.type===`nominal`&&!(`sort`in e)?{compatible:!1,warning:`Channel order is inappropriate for nominal field, which has no inherent order.`}:P0}}function F0(e){let{formatType:t}=D0(e);return t===`time`||!t&&gle(e)}function gle(e){return e&&(e.type===`temporal`||Z(e)&&!!e.timeUnit)}function I0(e,{timeUnit:t,type:n,wrapTime:r,undefinedIfExprNotRequired:i}){let a=t&&kQ(t)?.unit,s=a||n===`temporal`,c;return JY(e)?c=e.expr:Y(e)?c=e.signal:rQ(e)?(s=!0,c=fQ(e)):(P(e)||o(e))&&s&&(c=`datetime(${Zq(e)})`,_Q(a)&&(o(e)&&e<1e4||P(e)&&isNaN(Date.parse(e)))&&(c=fQ({[a]:e}))),c?r&&s?`time(${c})`:c:i?void 0:Zq(e)}function L0(e,t){let{type:n}=e;return t.map(t=>{let r=I0(t,{timeUnit:Z(e)&&!vQ(e.timeUnit)?e.timeUnit:void 0,type:n,undefinedIfExprNotRequired:!0});return r===void 0?t:{signal:r}})}function R0(e,t){return UY(e.bin)?EY(t)&&[`ordinal`,`nominal`].includes(e.type):(console.warn(`Only call this method for binned field defs.`),!1)}var z0={labelAlign:{part:`labels`,vgProp:`align`},labelBaseline:{part:`labels`,vgProp:`baseline`},labelColor:{part:`labels`,vgProp:`fill`},labelFont:{part:`labels`,vgProp:`font`},labelFontSize:{part:`labels`,vgProp:`fontSize`},labelFontStyle:{part:`labels`,vgProp:`fontStyle`},labelFontWeight:{part:`labels`,vgProp:`fontWeight`},labelOpacity:{part:`labels`,vgProp:`opacity`},labelOffset:null,labelPadding:null,gridColor:{part:`grid`,vgProp:`stroke`},gridDash:{part:`grid`,vgProp:`strokeDash`},gridDashOffset:{part:`grid`,vgProp:`strokeDashOffset`},gridOpacity:{part:`grid`,vgProp:`opacity`},gridWidth:{part:`grid`,vgProp:`strokeWidth`},tickColor:{part:`ticks`,vgProp:`stroke`},tickDash:{part:`ticks`,vgProp:`strokeDash`},tickDashOffset:{part:`ticks`,vgProp:`strokeDashOffset`},tickOpacity:{part:`ticks`,vgProp:`opacity`},tickSize:null,tickWidth:{part:`ticks`,vgProp:`strokeWidth`}};function B0(e){return e?.condition}var V0=[`domain`,`grid`,`labels`,`ticks`,`title`],_le={grid:`grid`,gridCap:`grid`,gridColor:`grid`,gridDash:`grid`,gridDashOffset:`grid`,gridOpacity:`grid`,gridScale:`grid`,gridWidth:`grid`,orient:`main`,bandPosition:`both`,aria:`main`,description:`main`,domain:`main`,domainCap:`main`,domainColor:`main`,domainDash:`main`,domainDashOffset:`main`,domainOpacity:`main`,domainWidth:`main`,format:`main`,formatType:`main`,labelAlign:`main`,labelAngle:`main`,labelBaseline:`main`,labelBound:`main`,labelColor:`main`,labelFlush:`main`,labelFlushOffset:`main`,labelFont:`main`,labelFontSize:`main`,labelFontStyle:`main`,labelFontWeight:`main`,labelLimit:`main`,labelLineHeight:`main`,labelOffset:`main`,labelOpacity:`main`,labelOverlap:`main`,labelPadding:`main`,labels:`main`,labelSeparation:`main`,maxExtent:`main`,minExtent:`main`,offset:`both`,position:`main`,tickCap:`main`,tickColor:`main`,tickDash:`main`,tickDashOffset:`main`,tickMinStep:`both`,tickOffset:`both`,tickOpacity:`main`,tickRound:`both`,ticks:`main`,tickSize:`main`,tickWidth:`both`,title:`main`,titleAlign:`main`,titleAnchor:`main`,titleAngle:`main`,titleBaseline:`main`,titleColor:`main`,titleFont:`main`,titleFontSize:`main`,titleFontStyle:`main`,titleFontWeight:`main`,titleLimit:`main`,titleLineHeight:`main`,titleOpacity:`main`,titlePadding:`main`,titleX:`main`,titleY:`main`,encode:`both`,scale:`both`,tickBand:`both`,tickCount:`both`,tickExtra:`both`,translate:`both`,values:`both`,zindex:`both`},H0={orient:1,aria:1,bandPosition:1,description:1,domain:1,domainCap:1,domainColor:1,domainDash:1,domainDashOffset:1,domainOpacity:1,domainWidth:1,format:1,formatType:1,grid:1,gridCap:1,gridColor:1,gridDash:1,gridDashOffset:1,gridOpacity:1,gridWidth:1,labelAlign:1,labelAngle:1,labelBaseline:1,labelBound:1,labelColor:1,labelFlush:1,labelFlushOffset:1,labelFont:1,labelFontSize:1,labelFontStyle:1,labelFontWeight:1,labelLimit:1,labelLineHeight:1,labelOffset:1,labelOpacity:1,labelOverlap:1,labelPadding:1,labels:1,labelSeparation:1,maxExtent:1,minExtent:1,offset:1,position:1,tickBand:1,tickCap:1,tickColor:1,tickCount:1,tickDash:1,tickDashOffset:1,tickExtra:1,tickMinStep:1,tickOffset:1,tickOpacity:1,tickRound:1,ticks:1,tickSize:1,tickWidth:1,title:1,titleAlign:1,titleAnchor:1,titleAngle:1,titleBaseline:1,titleColor:1,titleFont:1,titleFontSize:1,titleFontStyle:1,titleFontWeight:1,titleLimit:1,titleLineHeight:1,titleOpacity:1,titlePadding:1,titleX:1,titleY:1,translate:1,values:1,zindex:1},vle={...H0,style:1,labelExpr:1,encoding:1};function U0(e){return T(vle,e)}var W0=q({axis:1,axisBand:1,axisBottom:1,axisDiscrete:1,axisLeft:1,axisPoint:1,axisQuantitative:1,axisRight:1,axisTemporal:1,axisTop:1,axisX:1,axisXBand:1,axisXDiscrete:1,axisXPoint:1,axisXQuantitative:1,axisXTemporal:1,axisY:1,axisYBand:1,axisYDiscrete:1,axisYPoint:1,axisYQuantitative:1,axisYTemporal:1});function G0(e){return J(e,`mark`)}var K0=class{name;run;constructor(e,t){this.name=e,this.run=t}hasMatchingType(e){return G0(e)?u1(e.mark)===this.name:!1}};function q0(e,t){let n=e?.[t];return n?N(n)?pq(n,e=>!!e.field):Z(n)||t0(n):!1}function J0(e,t){let n=e?.[t];return n?N(n)?pq(n,e=>!!e.field):Z(n)||a0(n)||n0(n):!1}function Y0(e,t){if(fY(t)){let n=e[t];if((Z(n)||a0(n))&&(QQ(n.type)||Z(n)&&n.timeUnit))return J0(e,aY(t))}return!1}function X0(e){return pq(qJ,t=>{if(q0(e,t)){let n=e[t];if(N(n))return pq(n,e=>!!e.aggregate);{let e=O0(n);return e&&!!e.aggregate}}return!1})}function Z0(e,t){let n=[],r=[],i=[],a=[],o={};return $0(e,(s,c)=>{if(Z(s)){let{field:l,aggregate:u,bin:d,timeUnit:f,...p}=s;if(u||f||d){let e=T0(s)?.title,m=$(s,{forAs:!0}),h={...e?[]:{title:w0(s,t,{allowDisabling:!0})},...p,field:m};if(u){let e;if(FY(u)?(e=`argmax`,m=$({op:`argmax`,field:u.argmax},{forAs:!0}),h.field=`${m}.${l}`):PY(u)?(e=`argmin`,m=$({op:`argmin`,field:u.argmin},{forAs:!0}),h.field=`${m}.${l}`):u!==`boxplot`&&u!==`errorbar`&&u!==`errorband`&&(e=u),e){let t={op:e,as:m};l&&(t.field=l),a.push(t)}}else if(n.push(m),l0(s)&&UY(d)){if(r.push({bin:d,field:l,as:m}),n.push($(s,{binSuffix:`end`})),R0(s,c)&&n.push($(s,{binSuffix:`range`})),fY(c)){let e={field:`${m}_end`};o[`${c}2`]=e}h.bin=`binned`,$J(c)||(h.type=$Q)}else if(f&&!vQ(f)){i.push({timeUnit:f,field:l,as:m});let e=l0(s)&&s.type!==t$&&`time`;e&&(c===DJ||c===jJ?h.formatType=e:SY(c)?h.legend={formatType:e,...h.legend}:fY(c)&&(h.axis={formatType:e,...h.axis}))}o[c]=h}else n.push(l),o[c]=e[c]}else o[c]=e[c]}),{bins:r,timeUnits:i,aggregate:a,groupby:n,encoding:o}}function yle(e,t,n){let r=DY(t,n);if(!r)return!1;if(r===`binned`){let n=e[t===rJ?tJ:nJ];return!!(Z(n)&&Z(e[t])&&WY(n.bin))}return!0}function ble(e,t,n,r){let i={};for(let t of q(e))ZJ(t)||X(fZ(t));for(let a of sY){if(!e[a])continue;let o=e[a];if(_Y(a)){let e=oY(a),t=i[e];if(Z(t)&&ZQ(t.type)&&Z(o)&&!t.timeUnit){X(nZ(e));continue}}if(a===`angle`&&t===`arc`&&!e.theta&&(X(tZ),a=lJ),!yle(e,a,t)){X(dZ(a,t));continue}if(a===bJ&&t===`line`&&O0(e[a])?.aggregate){X(uZ);continue}if(a===gJ&&(n?`fill`in e:`stroke`in e)){X(sZ(`encoding`,{fill:`fill`in e,stroke:`stroke`in e}));continue}if(a===kJ||a===OJ&&!N(o)&&!u0(o)||a===jJ&&N(o)){if(o){if(a===OJ){let t=e[a];if($1(t)){i[a]=t;continue}}i[a]=k(o).reduce((e,t)=>(Z(t)?e.push(M0(t,a)):X(lZ(t,a)),e),[])}}else{if(a===jJ&&o===null)i[a]=null;else if(!Z(o)&&!a0(o)&&!u0(o)&&!e0(o)&&!Y(o)){X(lZ(o,a));continue}i[a]=A0(o,a,r)}}return i}function Q0(e,t){let n={};for(let r of q(e))n[r]=A0(e[r],r,t,{compositeMark:!0});return n}function xle(e){let t=[];for(let n of q(e))if(q0(e,n)){let r=e[n],i=k(r);for(let e of i)Z(e)?t.push(e):t0(e)&&t.push(e.condition)}return t}function $0(e,t,n){if(e)for(let r of q(e)){let i=e[r];if(N(i))for(let e of i)t.call(n,e,r);else t.call(n,i,r)}}function Sle(e,t,n,r){return e?q(e).reduce((n,i)=>{let a=e[i];return N(a)?a.reduce((e,n)=>t.call(r,e,n,i),n):t.call(r,n,a,i)},n):n}function e2(e,t){return q(t).reduce((n,r)=>{switch(r){case tJ:case nJ:case MJ:case PJ:case NJ:case rJ:case iJ:return n;case aJ:case oJ:if(e===`line`||e===`area`||e===`trail`){let e=t[r];if(Z(e)){let i=t[r===aJ?tJ:nJ];if(Z(i)&&!i.aggregate&&!e.aggregate){let t=$(i,{}),r=$(e,{});t&&r&&t!==r&&n.push(t)}}}return n;case lJ:case uJ:case sJ:case cJ:case hJ:case dJ:case fJ:case pJ:case mJ:case DJ:case yJ:case xJ:case jJ:return n;case OJ:if(e===`line`||e===`trail`)return n;case kJ:case AJ:{let e=t[r];if(N(e)||Z(e))for(let t of k(e))t.aggregate||n.push($(t,{}));return n}case bJ:if(e===`trail`)return n;case gJ:case _J:case vJ:case SJ:case CJ:case wJ:case EJ:case TJ:{let e=O0(t[r]);return e&&!e.aggregate&&n.push($(e,{})),n}}},[])}function Cle(e){let{tooltip:t,...n}=e;if(!t)return{filteredEncoding:n};let r,i;if(N(t)){for(let e of t)e.aggregate?(r||=[],r.push(e)):(i||=[],i.push(e));r&&(n.tooltip=r)}else t.aggregate?n.tooltip=t:i=t;return N(i)&&i.length===1&&(i=i[0]),{customTooltipWithoutAggregatedField:i,filteredEncoding:n}}function t2(e,t,n,r=!0){if(`tooltip`in n)return{tooltip:n.tooltip};let i=e.map(({fieldPrefix:e,titlePrefix:n})=>{let i=r?` of ${n2(t)}`:``;return{field:e+t.field,type:t.type,title:Y(n)?{signal:`${n}"${escape(i)}"`}:n+i}}),a=xle(n).map(h0);return{tooltip:[...i,..._q(a,uq)]}}function n2(e){let{title:t,field:n}=e;return Vq(t,n)}function r2(e,t,n,r,i){let{scale:a,axis:o}=n;return({partName:s,mark:c,positionPrefix:l,endPositionPrefix:u=void 0,extraEncoding:d={}})=>{let f=n2(n);return i2(e,s,i,{mark:c,encoding:{[t]:{field:`${l}_${n.field}`,type:n.type,...f===void 0?{}:{title:f},...a===void 0?{}:{scale:a},...o===void 0?{}:{axis:o}},...P(u)?{[`${t}2`]:{field:`${u}_${n.field}`}}:{},...r,...d}})}}function i2(e,t,n,r){let{clip:i,color:a,opacity:o}=e,s=e.type;return e[t]||e[t]===void 0&&n[t]?[{...r,mark:{...n[t],...i?{clip:i}:{},...a?{color:a}:{},...o?{opacity:o}:{},...X$(r.mark)?r.mark:{type:r.mark},style:`${s}-${String(t)}`,...gr(e[t])?{}:e[t]}}]:[]}function a2(e,t,n){let{encoding:r}=e,i=t===`vertical`?`y`:`x`,a=r[i],o=r[`${i}2`],s=r[`${i}Error`],c=r[`${i}Error2`];return{continuousAxisChannelDef:o2(a,n),continuousAxisChannelDef2:o2(o,n),continuousAxisChannelDefError:o2(s,n),continuousAxisChannelDefError2:o2(c,n),continuousAxis:i}}function o2(e,t){if(e?.aggregate){let{aggregate:n,...r}=e;return n!==t&&X(KZ(n,t)),r}return e}function s2(e,t){let{mark:n,encoding:r}=e,{x:i,y:a}=r;if(X$(n)&&n.orient)return n.orient;if(o0(i)){if(o0(a)){let e=Z(i)&&i.aggregate,n=Z(a)&&a.aggregate;if(!e&&n===t)return`vertical`;if(!n&&e===t)return`horizontal`;if(e===t&&n===t)throw Error(`Both x and y cannot have aggregate`);return F0(a)&&!F0(i)?`horizontal`:`vertical`}return`horizontal`}if(o0(a))return`vertical`;throw Error(`Need a valid continuous axis for ${t}s`)}var c2=`boxplot`,wle=[`box`,`median`,`outliers`,`rule`,`ticks`],Tle=new K0(c2,u2);function l2(e){return o(e)?`tukey`:e}function u2(e,{config:t}){e={...e,encoding:Q0(e.encoding,t)};let{mark:n,encoding:r,params:i,projection:a,...o}=e,s=X$(n)?n:{type:n};i&&X(MX(`boxplot`));let c=s.extent??t.boxplot.extent,l=hX(`size`,s,t),u=s.invalid,d=l2(c),{bins:f,timeUnits:p,transform:m,continuousAxisChannelDef:h,continuousAxis:g,groupby:_,aggregate:v,encodingWithoutContinuousAxis:y,ticksOrient:b,boxOrient:x,customTooltipWithoutAggregatedField:S}=Ele(e,c,t),C=zq(h.field),{color:w,size:T,...E}=y,D=e=>r2(s,g,h,e,t.boxplot),O=D(E),k=D(y),A=(M(t.boxplot.box)?t.boxplot.box.color:t.mark.color)||`#4c78a8`,ee=D({...E,...T?{size:T}:{},color:{condition:{test:`${Pq(`lower_box_${h.field}`)} >= ${Pq(`upper_box_${h.field}`)}`,...w||{value:A}}}}),te=t2([{fieldPrefix:d===`min-max`?`upper_whisker_`:`max_`,titlePrefix:`Max`},{fieldPrefix:`upper_box_`,titlePrefix:`Q3`},{fieldPrefix:`mid_box_`,titlePrefix:`Median`},{fieldPrefix:`lower_box_`,titlePrefix:`Q1`},{fieldPrefix:d===`min-max`?`lower_whisker_`:`min_`,titlePrefix:`Min`}],h,y),ne={type:`tick`,color:`black`,opacity:1,orient:b,invalid:u,aria:!1},re=d===`min-max`?te:t2([{fieldPrefix:`upper_whisker_`,titlePrefix:`Upper Whisker`},{fieldPrefix:`lower_whisker_`,titlePrefix:`Lower Whisker`}],h,y),ie=[...O({partName:`rule`,mark:{type:`rule`,invalid:u,aria:!1},positionPrefix:`lower_whisker`,endPositionPrefix:`lower_box`,extraEncoding:re}),...O({partName:`rule`,mark:{type:`rule`,invalid:u,aria:!1},positionPrefix:`upper_box`,endPositionPrefix:`upper_whisker`,extraEncoding:re}),...O({partName:`ticks`,mark:ne,positionPrefix:`lower_whisker`,extraEncoding:re}),...O({partName:`ticks`,mark:ne,positionPrefix:`upper_whisker`,extraEncoding:re})],ae=[...d===`tukey`?[]:ie,...k({partName:`box`,mark:{type:`bar`,...l?{size:l}:{},orient:x,invalid:u,ariaRoleDescription:`box`},positionPrefix:`lower_box`,endPositionPrefix:`upper_box`,extraEncoding:te}),...ee({partName:`median`,mark:{type:`tick`,invalid:u,...M(t.boxplot.median)&&t.boxplot.median.color?{color:t.boxplot.median.color}:{},...l?{size:l}:{},orient:b,aria:!1},positionPrefix:`mid_box`,extraEncoding:te})];if(d===`min-max`)return{...o,transform:(o.transform??[]).concat(m),layer:ae};let oe=Pq(`lower_box_${h.field}`),j=Pq(`upper_box_${h.field}`),se=`(${j} - ${oe})`,ce=`${oe} - ${c} * ${se}`,le=`${j} + ${c} * ${se}`,ue=Pq(h.field),de={joinaggregate:d2(h.field),groupby:_},fe={transform:[{filter:`(${ce} <= ${ue}) && (${ue} <= ${le})`},{aggregate:[{op:`min`,field:h.field,as:`lower_whisker_${C}`},{op:`max`,field:h.field,as:`upper_whisker_${C}`},{op:`min`,field:`lower_box_${h.field}`,as:`lower_box_${C}`},{op:`max`,field:`upper_box_${h.field}`,as:`upper_box_${C}`},...v],groupby:_}],layer:ie},{tooltip:pe,...me}=E,{scale:he,axis:ge}=h,_e=n2(h),ve=i2(s,`outliers`,t.boxplot,{transform:[{filter:`(${ue} < ${ce}) || (${ue} > ${le})`}],mark:`point`,encoding:{[g]:{field:h.field,type:h.type,..._e===void 0?{}:{title:_e},...he===void 0?{}:{scale:he},...ge===void 0?{}:{axis:ge}},...me,...w?{color:w}:{},...S?{tooltip:S}:{}}})[0],ye,be=[...f,...p,de];return ve?ye={transform:be,layer:[ve,fe]}:(ye=fe,ye.transform.unshift(...be)),{...o,layer:[ye,{transform:m,layer:ae}]}}function d2(e){let t=zq(e);return[{op:`q1`,field:e,as:`lower_box_${t}`},{op:`q3`,field:e,as:`upper_box_${t}`}]}function Ele(e,t,n){let r=s2(e,c2),{continuousAxisChannelDef:i,continuousAxis:a}=a2(e,r,c2),o=i.field,s=zq(o),c=l2(t),l=[...d2(o),{op:`median`,field:o,as:`mid_box_${s}`},{op:`min`,field:o,as:(c===`min-max`?`lower_whisker_`:`min_`)+s},{op:`max`,field:o,as:(c===`min-max`?`upper_whisker_`:`max_`)+s}],u=c===`min-max`||c===`tukey`?[]:[{calculate:`${Pq(`upper_box_${s}`)} - ${Pq(`lower_box_${s}`)}`,as:`iqr_${s}`},{calculate:`min(${Pq(`upper_box_${s}`)} + ${Pq(`iqr_${s}`)} * ${t}, ${Pq(`max_${s}`)})`,as:`upper_whisker_${s}`},{calculate:`max(${Pq(`lower_box_${s}`)} - ${Pq(`iqr_${s}`)} * ${t}, ${Pq(`min_${s}`)})`,as:`lower_whisker_${s}`}],{[a]:d,...f}=e.encoding,{customTooltipWithoutAggregatedField:p,filteredEncoding:m}=Cle(f),{bins:h,timeUnits:g,aggregate:_,groupby:v,encoding:y}=Z0(m,n),b=r===`vertical`?`horizontal`:`vertical`,x=r;return{bins:h,timeUnits:g,transform:[...h,...g,{aggregate:[..._,...l],groupby:v},...u],groupby:v,aggregate:_,continuousAxisChannelDef:i,continuousAxis:a,encodingWithoutContinuousAxis:y,ticksOrient:b,boxOrient:x,customTooltipWithoutAggregatedField:p}}var f2=`errorbar`,Dle=[`ticks`,`rule`],Ole=new K0(f2,p2);function p2(e,{config:t}){e={...e,encoding:Q0(e.encoding,t)};let{transform:n,continuousAxisChannelDef:r,continuousAxis:i,encodingWithoutContinuousAxis:a,ticksOrient:o,markDef:s,outerSpec:c,tooltipEncoding:l}=m2(e,f2,t);delete a.size;let u=r2(s,i,r,a,t.errorbar),d=s.thickness,f=s.size,p={type:`tick`,orient:o,aria:!1,...d===void 0?{}:{thickness:d},...f===void 0?{}:{size:f}},m=[...u({partName:`ticks`,mark:p,positionPrefix:`lower`,extraEncoding:l}),...u({partName:`ticks`,mark:p,positionPrefix:`upper`,extraEncoding:l}),...u({partName:`rule`,mark:{type:`rule`,ariaRoleDescription:`errorbar`,...d===void 0?{}:{size:d}},positionPrefix:`lower`,endPositionPrefix:`upper`,extraEncoding:l})];return{...c,transform:n,...m.length>1?{layer:m}:{...m[0]}}}function kle(e,t){let{encoding:n}=e;if(Ale(n))return{orient:s2(e,t),inputType:`raw`};let r=jle(n),i=Mle(n),a=n.x,o=n.y;if(r){if(i)throw Error(`${t} cannot be both type aggregated-upper-lower and aggregated-error`);let e=n.x2,r=n.y2;if(Q(e)&&Q(r))throw Error(`${t} cannot have both x2 and y2`);if(Q(e)){if(o0(a))return{orient:`horizontal`,inputType:`aggregated-upper-lower`};throw Error(`Both x and x2 have to be quantitative in ${t}`)}if(Q(r)){if(o0(o))return{orient:`vertical`,inputType:`aggregated-upper-lower`};throw Error(`Both y and y2 have to be quantitative in ${t}`)}throw Error(`No ranged axis`)}{let e=n.xError,r=n.xError2,i=n.yError,s=n.yError2;if(Q(r)&&!Q(e))throw Error(`${t} cannot have xError2 without xError`);if(Q(s)&&!Q(i))throw Error(`${t} cannot have yError2 without yError`);if(Q(e)&&Q(i))throw Error(`${t} cannot have both xError and yError with both are quantiative`);if(Q(e)){if(o0(a))return{orient:`horizontal`,inputType:`aggregated-error`};throw Error(`All x, xError, and xError2 (if exist) have to be quantitative`)}if(Q(i)){if(o0(o))return{orient:`vertical`,inputType:`aggregated-error`};throw Error(`All y, yError, and yError2 (if exist) have to be quantitative`)}throw Error(`No ranged axis`)}}function Ale(e){return(Q(e.x)||Q(e.y))&&!Q(e.x2)&&!Q(e.y2)&&!Q(e.xError)&&!Q(e.xError2)&&!Q(e.yError)&&!Q(e.yError2)}function jle(e){return Q(e.x2)||Q(e.y2)}function Mle(e){return Q(e.xError)||Q(e.xError2)||Q(e.yError)||Q(e.yError2)}function m2(e,t,n){let{mark:r,encoding:i,params:a,projection:o,...s}=e,c=X$(r)?r:{type:r};a&&X(MX(t));let{orient:l,inputType:u}=kle(e,t),{continuousAxisChannelDef:d,continuousAxisChannelDef2:f,continuousAxisChannelDefError:p,continuousAxisChannelDefError2:m,continuousAxis:h}=a2(e,l,t),{errorBarSpecificAggregate:g,postAggregateCalculates:_,tooltipSummary:v,tooltipTitleWithFieldName:y}=Nle(c,d,f,p,m,u,t,n),{[h]:b,[h===`x`?`x2`:`y2`]:x,[h===`x`?`xError`:`yError`]:S,[h===`x`?`xError2`:`yError2`]:C,...w}=i,{bins:T,timeUnits:E,aggregate:D,groupby:O,encoding:k}=Z0(w,n),A=[...D,...g],ee=u===`raw`?O:[],te=t2(v,d,k,y);return{transform:[...s.transform??[],...T,...E,...A.length===0?[]:[{aggregate:A,groupby:ee}],..._],groupby:ee,continuousAxisChannelDef:d,continuousAxis:h,encodingWithoutContinuousAxis:k,ticksOrient:l===`vertical`?`horizontal`:`vertical`,markDef:c,outerSpec:s,tooltipEncoding:te}}function Nle(e,t,n,r,i,a,o,s){let c=[],l=[],u=t.field,d,f=!1;if(a===`raw`){let t=e.center?e.center:e.extent?e.extent===`iqr`?`median`:`mean`:s.errorbar.center,n=e.extent?e.extent:t===`mean`?`stderr`:`iqr`;if(t===`median`!=(n===`iqr`)&&X(GZ(t,n,o)),n===`stderr`||n===`stdev`)c=[{op:n,field:u,as:`extent_${u}`},{op:t,field:u,as:`center_${u}`}],l=[{calculate:`${Pq(`center_${u}`)} + ${Pq(`extent_${u}`)}`,as:`upper_${u}`},{calculate:`${Pq(`center_${u}`)} - ${Pq(`extent_${u}`)}`,as:`lower_${u}`}],d=[{fieldPrefix:`center_`,titlePrefix:jq(t)},{fieldPrefix:`upper_`,titlePrefix:h2(t,n,`+`)},{fieldPrefix:`lower_`,titlePrefix:h2(t,n,`-`)}],f=!0;else{let e,t,r;n===`ci`?(e=`mean`,t=`ci0`,r=`ci1`):(e=`median`,t=`q1`,r=`q3`),c=[{op:t,field:u,as:`lower_${u}`},{op:r,field:u,as:`upper_${u}`},{op:e,field:u,as:`center_${u}`}],d=[{fieldPrefix:`upper_`,titlePrefix:w0({field:u,aggregate:r,type:`quantitative`},s,{allowDisabling:!1})},{fieldPrefix:`lower_`,titlePrefix:w0({field:u,aggregate:t,type:`quantitative`},s,{allowDisabling:!1})},{fieldPrefix:`center_`,titlePrefix:w0({field:u,aggregate:e,type:`quantitative`},s,{allowDisabling:!1})}]}}else{(e.center||e.extent)&&X(WZ(e.center,e.extent)),a===`aggregated-upper-lower`?(d=[],l=[{calculate:Pq(n.field),as:`upper_${u}`},{calculate:Pq(u),as:`lower_${u}`}]):a===`aggregated-error`&&(d=[{fieldPrefix:``,titlePrefix:u}],l=[{calculate:`${Pq(u)} + ${Pq(r.field)}`,as:`upper_${u}`}],i?l.push({calculate:`${Pq(u)} + ${Pq(i.field)}`,as:`lower_${u}`}):l.push({calculate:`${Pq(u)} - ${Pq(r.field)}`,as:`lower_${u}`}));for(let e of l)d.push({fieldPrefix:e.as.substring(0,6),titlePrefix:Rq(Rq(e.calculate,`datum['`,``),`']`,``)})}return{postAggregateCalculates:l,errorBarSpecificAggregate:c,tooltipSummary:d,tooltipTitleWithFieldName:f}}function h2(e,t,n){return`${jq(e)} ${n} ${t}`}var g2=`errorband`,Ple=[`band`,`borders`],Fle=new K0(g2,_2);function _2(e,{config:t}){e={...e,encoding:Q0(e.encoding,t)};let{transform:n,continuousAxisChannelDef:r,continuousAxis:i,encodingWithoutContinuousAxis:a,markDef:o,outerSpec:s,tooltipEncoding:c}=m2(e,g2,t),l=o,u=r2(l,i,r,a,t.errorband),d=e.encoding.x!==void 0&&e.encoding.y!==void 0,f={type:d?`area`:`rect`},p={type:d?`line`:`rule`},m={...l.interpolate?{interpolate:l.interpolate}:{},...l.tension&&l.interpolate?{tension:l.tension}:{}};return d?(f={...f,...m,ariaRoleDescription:`errorband`},p={...p,...m,aria:!1}):l.interpolate?X(qZ(`interpolate`)):l.tension&&X(qZ(`tension`)),{...s,transform:n,layer:[...u({partName:`band`,mark:f,positionPrefix:`lower`,endPositionPrefix:`upper`,extraEncoding:c}),...u({partName:`borders`,mark:p,positionPrefix:`lower`,extraEncoding:c}),...u({partName:`borders`,mark:p,positionPrefix:`upper`,extraEncoding:c})]}}var v2={};function y2(e,t,n){v2[e]={normalizer:new K0(e,t),parts:n}}function Ile(){return q(v2)}y2(c2,u2,wle),y2(f2,p2,Dle),y2(g2,_2,Ple);var Lle=[`gradientHorizontalMaxLength`,`gradientHorizontalMinLength`,`gradientVerticalMaxLength`,`gradientVerticalMinLength`,`unselectedOpacity`],b2={titleAlign:`align`,titleAnchor:`anchor`,titleAngle:`angle`,titleBaseline:`baseline`,titleColor:`color`,titleFont:`font`,titleFontSize:`fontSize`,titleFontStyle:`fontStyle`,titleFontWeight:`fontWeight`,titleLimit:`limit`,titleLineHeight:`lineHeight`,titleOrient:`orient`,titlePadding:`offset`},x2={labelAlign:`align`,labelAnchor:`anchor`,labelAngle:`angle`,labelBaseline:`baseline`,labelColor:`color`,labelFont:`font`,labelFontSize:`fontSize`,labelFontStyle:`fontStyle`,labelFontWeight:`fontWeight`,labelLimit:`limit`,labelLineHeight:`lineHeight`,labelOrient:`orient`,labelPadding:`offset`},Rle=q(b2),zle=q(x2),S2=q({header:1,headerRow:1,headerColumn:1,headerFacet:1}),C2=[`size`,`shape`,`fill`,`stroke`,`strokeDash`,`strokeWidth`,`opacity`],Ble={gradientHorizontalMaxLength:200,gradientHorizontalMinLength:100,gradientVerticalMaxLength:200,gradientVerticalMinLength:64,unselectedOpacity:.35},Vle={aria:1,clipHeight:1,columnPadding:1,columns:1,cornerRadius:1,description:1,direction:1,fillColor:1,format:1,formatType:1,gradientLength:1,gradientOpacity:1,gradientStrokeColor:1,gradientStrokeWidth:1,gradientThickness:1,gridAlign:1,labelAlign:1,labelBaseline:1,labelColor:1,labelFont:1,labelFontSize:1,labelFontStyle:1,labelFontWeight:1,labelLimit:1,labelOffset:1,labelOpacity:1,labelOverlap:1,labelPadding:1,labelSeparation:1,legendX:1,legendY:1,offset:1,orient:1,padding:1,rowPadding:1,strokeColor:1,symbolDash:1,symbolDashOffset:1,symbolFillColor:1,symbolLimit:1,symbolOffset:1,symbolOpacity:1,symbolSize:1,symbolStrokeColor:1,symbolStrokeWidth:1,symbolType:1,tickCount:1,tickMinStep:1,title:1,titleAlign:1,titleAnchor:1,titleBaseline:1,titleColor:1,titleFont:1,titleFontSize:1,titleFontStyle:1,titleFontWeight:1,titleLimit:1,titleLineHeight:1,titleOpacity:1,titleOrient:1,titlePadding:1,type:1,values:1,zindex:1},w2=`_vgsid_`,Hle={point:{on:`click`,fields:[w2],toggle:`event.shiftKey`,resolve:`global`,clear:`dblclick`},interval:{on:`[pointerdown, window:pointerup] > window:pointermove!`,encodings:[`x`,`y`],translate:`[pointerdown, window:pointerup] > window:pointermove!`,zoom:`wheel!`,mark:{fill:`#333`,fillOpacity:.125,stroke:`white`},resolve:`global`,clear:`dblclick`}};function T2(e){return e===`legend`||!!e?.legend}function E2(e){return T2(e)&&M(e)}function D2(e){return!!e?.select}function O2(e){let t=[];for(let n of e||[]){if(D2(n))continue;let{expr:e,bind:r,...i}=n;if(r&&e){let n={...i,bind:r,init:e};t.push(n)}else{let n={...i,...e?{update:e}:{},...r?{bind:r}:{}};t.push(n)}}return t}function Ule(e){return A2(e)||j2(e)||k2(e)}function k2(e){return J(e,`concat`)}function A2(e){return J(e,`vconcat`)}function j2(e){return J(e,`hconcat`)}function M2({step:e,offsetIsDiscrete:t}){return t?e.for??`offset`:`position`}function N2(e){return J(e,`step`)}function P2(e){return J(e,`view`)||J(e,`width`)||J(e,`height`)}var F2=20,Wle=q({align:1,bounds:1,center:1,columns:1,spacing:1});function Gle(e,t,n){let r=n[t],i={},{spacing:a,columns:s}=r;a!==void 0&&(i.spacing=a),s!==void 0&&(G1(e)&&!U1(e.facet)||k2(e))&&(i.columns=s),A2(e)&&(i.columns=1);for(let t of Wle)if(e[t]!==void 0){if(t===`spacing`){let n=e[t];i[t]=o(n)?n:{row:n.row??a,column:n.column??a}}else i[t]=e[t]}return i}function I2(e,t){return e[t]??e[t===`width`?`continuousWidth`:`continuousHeight`]}function L2(e,t){let n=R2(e,t);return N2(n)?n.step:z2}function R2(e,t){return Vq(e[t]??e[t===`width`?`discreteWidth`:`discreteHeight`],{step:e.step})}var z2=20,Kle={background:`white`,padding:5,timeFormat:`%b %d, %Y`,countTitle:`Count of Records`,view:{continuousWidth:300,continuousHeight:300,step:z2},mark:r1,arc:{},area:{},bar:c1,circle:{},geoshape:{},image:{},line:{},point:{},rect:s1,rule:{color:`black`},square:{},text:{color:`black`},tick:l1,trail:{},boxplot:{size:14,extent:1.5,box:{},median:{color:`white`},outliers:{},rule:{},ticks:null},errorbar:{center:`mean`,rule:!0,ticks:!1},errorband:{band:{opacity:.3},borders:!1},scale:b$,projection:{},legend:Ble,header:{titlePadding:10,labelPadding:10},headerColumn:{},headerRow:{},headerFacet:{},selection:Hle,style:{},title:{},facet:{spacing:F2},concat:{spacing:F2},normalizedNumberFormat:`.0%`},B2=[`#4c78a8`,`#f58518`,`#e45756`,`#72b7b2`,`#54a24b`,`#eeca3b`,`#b279a2`,`#ff9da6`,`#9d755d`,`#bab0ac`],V2={text:11,guideLabel:10,guideTitle:11,groupTitle:13,groupSubtitle:12},H2={blue:B2[0],orange:B2[1],red:B2[2],teal:B2[3],green:B2[4],yellow:B2[5],purple:B2[6],pink:B2[7],brown:B2[8],gray0:`#000`,gray1:`#111`,gray2:`#222`,gray3:`#333`,gray4:`#444`,gray5:`#555`,gray6:`#666`,gray7:`#777`,gray8:`#888`,gray9:`#999`,gray10:`#aaa`,gray11:`#bbb`,gray12:`#ccc`,gray13:`#ddd`,gray14:`#eee`,gray15:`#fff`};function qle(e={}){return{signals:[{name:`color`,value:M(e)?{...H2,...e}:H2}],mark:{color:{signal:`color.blue`}},rule:{color:{signal:`color.gray0`}},text:{color:{signal:`color.gray0`}},style:{"guide-label":{fill:{signal:`color.gray0`}},"guide-title":{fill:{signal:`color.gray0`}},"group-title":{fill:{signal:`color.gray0`}},"group-subtitle":{fill:{signal:`color.gray0`}},cell:{stroke:{signal:`color.gray8`}}},axis:{domainColor:{signal:`color.gray13`},gridColor:{signal:`color.gray8`},tickColor:{signal:`color.gray13`}},range:{category:[{signal:`color.blue`},{signal:`color.orange`},{signal:`color.red`},{signal:`color.teal`},{signal:`color.green`},{signal:`color.yellow`},{signal:`color.purple`},{signal:`color.pink`},{signal:`color.brown`},{signal:`color.grey8`}]}}}function Jle(e){return{signals:[{name:`fontSize`,value:M(e)?{...V2,...e}:V2}],text:{fontSize:{signal:`fontSize.text`}},style:{"guide-label":{fontSize:{signal:`fontSize.guideLabel`}},"guide-title":{fontSize:{signal:`fontSize.guideTitle`}},"group-title":{fontSize:{signal:`fontSize.groupTitle`}},"group-subtitle":{fontSize:{signal:`fontSize.groupSubtitle`}}}}}function Yle(e){return{text:{font:e},style:{"guide-label":{font:e},"guide-title":{font:e},"group-title":{font:e},"group-subtitle":{font:e}}}}function U2(e){let t=q(e||{}),n={};for(let r of t){let t=e[r];n[r]=B0(t)?oX(t):sX(t)}return n}function Xle(e){let t=q(e),n={};for(let r of t)n[r]=U2(e[r]);return n}var Zle=[...i1,...W0,...S2,`background`,`padding`,`legend`,`lineBreak`,`scale`,`style`,`title`,`view`];function W2(e={}){let{color:t,font:n,fontSize:r,selection:a,...o}=e,s=x({},K(Kle),n?Yle(n):{},t?qle(t):{},r?Jle(r):{},o||{});a&&i(s,`selection`,a,!0);let c=lq(s,Zle);for(let e of[`background`,`lineBreak`,`padding`])s[e]&&(c[e]=sX(s[e]));for(let e of i1)s[e]&&(c[e]=YY(s[e]));for(let e of W0)s[e]&&(c[e]=U2(s[e]));for(let e of S2)s[e]&&(c[e]=YY(s[e]));if(s.legend&&(c.legend=YY(s.legend)),s.scale){let{invalid:e,...t}=s.scale,n=YY(e,{level:1});c.scale={...YY(t),...q(n).length>0?{invalid:n}:{}}}return s.style&&(c.style=Xle(s.style)),s.title&&(c.title=YY(s.title)),s.view&&(c.view=YY(s.view)),c}var Qle=new Set([`view`,...Y$]),$le=`color.fontSize.background.padding.facet.concat.numberFormat.numberFormatType.normalizedNumberFormat.normalizedNumberFormatType.timeFormat.countTitle.header.axisQuantitative.axisTemporal.axisDiscrete.axisPoint.axisXBand.axisXPoint.axisXDiscrete.axisXQuantitative.axisXTemporal.axisYBand.axisYPoint.axisYDiscrete.axisYQuantitative.axisYTemporal.scale.selection.overlay`.split(`.`),eue={view:[`continuousWidth`,`continuousHeight`,`discreteWidth`,`discreteHeight`,`step`],...n1};function tue(e){e=K(e);for(let t of $le)delete e[t];if(e.axis)for(let t in e.axis)B0(e.axis[t])&&delete e.axis[t];if(e.legend)for(let t of Lle)delete e.legend[t];if(e.mark){for(let t of e1)delete e.mark[t];e.mark.tooltip&&M(e.mark.tooltip)&&delete e.mark.tooltip}e.params&&(e.signals=(e.signals||[]).concat(O2(e.params)),delete e.params);for(let t of Qle){for(let n of e1)delete e[t][n];let n=eue[t];if(n)for(let r of n)delete e[t][r];rue(e,t)}for(let t of Ile())delete e[t];nue(e);for(let t in e)M(e[t])&&Cq(e[t])&&delete e[t];return Cq(e)?void 0:e}function nue(e){let{titleMarkConfig:t,subtitleMarkConfig:n,subtitle:r}=XY(e.title);Cq(t)||(e.style[`group-title`]={...e.style[`group-title`],...t}),Cq(n)||(e.style[`group-subtitle`]={...e.style[`group-subtitle`],...n}),Cq(r)?delete e.title:e.title=r}function rue(e,t,n,r){let i=e[t];t===`view`&&(n=`cell`);let a={...i,...e.style[n??t]};Cq(a)||(e.style[n??t]=a),delete e[t]}function G2(e){return J(e,`layer`)}function iue(e){return J(e,`repeat`)}function aue(e){return!N(e.repeat)&&J(e.repeat,`layer`)}var K2=class{map(e,t){return G1(e)?this.mapFacet(e,t):iue(e)?this.mapRepeat(e,t):j2(e)?this.mapHConcat(e,t):A2(e)?this.mapVConcat(e,t):k2(e)?this.mapConcat(e,t):this.mapLayerOrUnit(e,t)}mapLayerOrUnit(e,t){if(G2(e))return this.mapLayer(e,t);if(G0(e))return this.mapUnit(e,t);throw Error(CX(e))}mapLayer(e,t){return{...e,layer:e.layer.map(e=>this.mapLayerOrUnit(e,t))}}mapHConcat(e,t){return{...e,hconcat:e.hconcat.map(e=>this.map(e,t))}}mapVConcat(e,t){return{...e,vconcat:e.vconcat.map(e=>this.map(e,t))}}mapConcat(e,t){let{concat:n,...r}=e;return{...r,concat:n.map(e=>this.map(e,t))}}mapFacet(e,t){return{...e,spec:this.map(e.spec,t)}}mapRepeat(e,t){return{...e,spec:this.map(e.spec,t)}}},oue={zero:1,center:1,normalize:1};function sue(e){return T(oue,e)}var cue=new Set([N$,F$,P$,B$,R$,W$,G$,L$,V$,H$]),lue=new Set([F$,P$,N$]);function q2(e){return Z(e)&&i0(e)===`quantitative`&&!e.bin}function J2(e,t,{orient:n,type:r}){let i=t===`x`?`y`:`radius`,a=t===`x`&&[`bar`,`area`].includes(r),o=e[t],s=e[i];if(Z(o)&&Z(s)){if(q2(o)&&q2(s)){if(o.stack)return t;if(s.stack)return i;let e=Z(o)&&!!o.aggregate;if(e!==(Z(s)&&!!s.aggregate))return e?t:i;if(a){if(n===`vertical`)return i;if(n===`horizontal`)return t}}else if(q2(o))return t;else if(q2(s))return i}else if(q2(o))return a&&n===`vertical`?void 0:t;else if(q2(s))return a&&n===`horizontal`?void 0:i}function uue(e){switch(e){case`x`:return`y`;case`y`:return`x`;case`theta`:return`radius`;case`radius`:return`theta`}}function Y2(e,t){let n=X$(e)?e:{type:e},r=n.type;if(!cue.has(r))return null;let i=J2(t,`x`,n)||J2(t,`theta`,n);if(!i)return null;let a=t[i],o=Z(a)?$(a,{}):void 0,s=uue(i),c=[],l=new Set;if(t[s]){let e=t[s],n=Z(e)?$(e,{}):void 0;n&&n!==o&&(c.push(s),l.add(n))}let u=s===`x`?`xOffset`:`yOffset`,d=t[u],f=Z(d)?$(d,{}):void 0;f&&f!==o&&(c.push(u),l.add(f));let p=lY.reduce((e,n)=>{if(n!==`tooltip`&&q0(t,n)){let r=t[n];for(let t of k(r)){let r=O0(t);if(r.aggregate)continue;let i=$(r,{});(!i||!l.has(i))&&e.push({channel:n,fieldDef:r})}}return e},[]),m;return a.stack===void 0?lue.has(r)&&(m=`zero`):m=gr(a.stack)?a.stack?`zero`:null:a.stack,!m||!sue(m)||X0(t)&&p.length===0?null:(a?.scale?.type&&a?.scale?.type!==a$.LINEAR&&a?.stack&&X(BZ(a.scale.type)),Q(t[nY(i)])?(a.stack!==void 0&&X(zZ(i)),null):(Z(a)&&a.aggregate&&!BY.has(a.aggregate)&&X(VZ(a.aggregate)),{groupbyChannels:c,groupbyFields:l,fieldChannel:i,impute:a.impute!==null&&q$(r),stackBy:p,offset:m}))}function X2(e,t,n){let r=YY(e),i=hX(`orient`,r,n);if(r.orient=mue(r.type,t,i),i!==void 0&&i!==r.orient&&X(yZ(r.orient,i)),r.type===`bar`&&r.orient){let e=hX(`cornerRadiusEnd`,r,n);if(e!==void 0){let n=r.orient===`horizontal`&&t.x2||r.orient===`vertical`&&t.y2?[`cornerRadius`]:o1[r.orient];for(let t of n)r[t]=e;r.cornerRadiusEnd!==void 0&&delete r.cornerRadiusEnd}}let a=hX(`opacity`,r,n),o=hX(`fillOpacity`,r,n);return a===void 0&&o===void 0&&(r.opacity=fue(r.type,t)),hX(`cursor`,r,n)===void 0&&(r.cursor=due(r,t,n)),r}function due(e,t,n){return t.href||e.href||hX(`href`,e,n)?`pointer`:e.cursor}var Z2=.7;function fue(e,t){if(fq([R$,H$,W$,G$],e)&&!X0(t))return Z2}function pue(e,t,{graticule:n}){if(n)return!1;let r=gX(`filled`,e,t),i=e.type;return Vq(r,i!==R$&&i!==L$&&i!==B$)}function mue(e,t,n){switch(e){case R$:case W$:case G$:case z$:case I$:return}let{x:r,y:i,x2:a,y2:o}=t;switch(e){case V$:case F$:if(Z(r)&&(WY(r.bin)||Z(i)&&i.aggregate&&!r.aggregate))return`vertical`;if(Z(i)&&(WY(i.bin)||Z(r)&&r.aggregate&&!i.aggregate))return`horizontal`;if(o||a){if(n)return n;if(!a)return(Z(r)&&r.type===$Q&&!UY(r.bin)||c0(r))&&Z(i)&&WY(i.bin)?`horizontal`:`vertical`;if(!o)return(Z(i)&&i.type===$Q&&!UY(i.bin)||c0(i))&&Z(r)&&WY(r.bin)?`vertical`:`horizontal`}case B$:if(a&&!(Z(r)&&WY(r.bin))&&o&&!(Z(i)&&WY(i.bin)))return;case P$:if(o)return Z(i)&&WY(i.bin)?`horizontal`:`vertical`;if(a)return Z(r)&&WY(r.bin)?`vertical`:`horizontal`;if(e===B$){if(r&&!i)return`vertical`;if(i&&!r)return`horizontal`}case L$:case H$:{let t=s0(r),a=s0(i);if(n)return n;if(t&&!a)return e===`tick`?`vertical`:`horizontal`;if(!t&&a)return e===`tick`?`horizontal`:`vertical`;if(t&&a)return`vertical`;{let e=l0(r)&&r.type===t$,t=l0(i)&&i.type===t$;if(e&&!t)return`vertical`;if(!e&&t)return`horizontal`}return}}return`vertical`}function hue(e){let{point:t,line:n,...r}=e;return q(r).length>1?r:r.type}function gue(e){for(let t of[`line`,`area`,`rule`,`trail`])e[t]&&(e={...e,[t]:lq(e[t],[`point`,`line`])});return e}function Q2(e,t={},n){return e.point===`transparent`?{opacity:0}:e.point?M(e.point)?e.point:{}:e.point===void 0?t.point||n.shape?M(t.point)?t.point:{}:void 0:null}function $2(e,t={}){return e.line?e.line===!0?{}:e.line:e.line===void 0?t.line?t.line===!0?{}:t.line:void 0:null}var _ue=class{name=`path-overlay`;hasMatchingType(e,t){if(G0(e)){let{mark:n,encoding:r}=e,i=X$(n)?n:{type:n};switch(i.type){case`line`:case`rule`:case`trail`:return!!Q2(i,t[i.type],r);case`area`:return!!Q2(i,t[i.type],r)||!!$2(i,t[i.type])}}return!1}run(e,t,n){let{config:r}=t,{params:i,projection:a,mark:o,name:s,encoding:c,...l}=e,u=Q0(c,r),d=X$(o)?o:{type:o},f=Q2(d,r[d.type],u),p=d.type===`area`&&$2(d,r[d.type]),m=[{name:s,...i?{params:i}:{},mark:hue({...d.type===`area`&&hX(`opacity`,d,r)==null&&hX(`fillOpacity`,d,r)==null?{opacity:Z2}:{},...d}),encoding:lq(u,[`shape`])}],h=Y2(X2(d,u,r),u),g=u;if(h){let{fieldChannel:e,offset:t}=h;g={...u,[e]:{...u[e],...t?{stack:t}:{}}}}return g=lq(g,[`y2`,`x2`]),p&&m.push({...a?{projection:a}:{},mark:{type:`line`,...cq(d,[`clip`,`interpolate`,`tension`,`tooltip`]),...p},encoding:g}),f&&m.push({...a?{projection:a}:{},mark:{type:`point`,opacity:1,filled:!0,...cq(d,[`clip`,`tooltip`]),...f},encoding:g}),n({...l,layer:m},{...t,config:gue(r)})}};function vue(e,t){return t?U1(e)?a4(e,t):n4(e,t):e}function e4(e,t){return t?a4(e,t):e}function t4(e,t,n){let r=t[e];if(q1(r)){if(r.repeat in n)return{...t,[e]:n[r.repeat]};X(VX(r.repeat));return}return t}function n4(e,t){if(e=t4(`field`,e,t),e!==void 0){if(e===null)return null;if(Y1(e)&&V1(e.sort)){let n=t4(`field`,e.sort,t);e={...e,...n?{sort:n}:{}}}return e}}function r4(e,t){if(Z(e))return n4(e,t);{let n=t4(`datum`,e,t);return n!==e&&!n.type&&(n.type=`nominal`),n}}function i4(e,t){if(Q(e)){let n=r4(e,t);if(n)return n;if(e0(e))return{condition:e.condition}}else{if(n0(e)){let n=r4(e.condition,t);if(n)return{...e,condition:n};{let{condition:t,...n}=e;return n}}return e}}function a4(e,t){let n={};for(let r in e)if(J(e,r)){let i=e[r];if(N(i))n[r]=i.map(e=>i4(e,t)).filter(e=>e);else{let e=i4(i,t);e!==void 0&&(n[r]=e)}}return n}var yue=class{name=`RuleForRangedLine`;hasMatchingType(e){if(G0(e)){let{encoding:t,mark:n}=e;if(n===`line`||X$(n)&&n.type===`line`)for(let e of QJ){let n=t[eY(e)];if(t[e]&&(Z(n)&&!WY(n.bin)||a0(n)))return!0}}return!1}run(e,t,n){let{encoding:r,mark:i}=e;return X(vZ(!!r.x2,!!r.y2)),n({...e,mark:M(i)?{...i,type:`rule`}:`rule`},t)}},bue=class extends K2{nonFacetUnitNormalizers=[Tle,Ole,Fle,new _ue,new yue];map(e,t){if(G0(e)){let n=q0(e.encoding,Qq),r=q0(e.encoding,$q),i=q0(e.encoding,eJ);if(n||r||i)return this.mapFacetedUnit(e,t)}return super.map(e,t)}mapUnit(e,t){let{parentEncoding:n,parentProjection:r}=t,i=e4(e.encoding,t.repeater),a={...e,...e.name?{name:[t.repeaterPrefix,e.name].filter(e=>e).join(`_`)}:{},...i?{encoding:i}:{}};if(n||r)return this.mapUnitWithParentEncodingOrProjection(a,t);let o=this.mapLayerOrUnit.bind(this);for(let e of this.nonFacetUnitNormalizers)if(e.hasMatchingType(a,t.config))return e.run(a,t,o);return a}mapRepeat(e,t){return aue(e)?this.mapLayerRepeat(e,t):this.mapNonLayerRepeat(e,t)}mapLayerRepeat(e,t){let{repeat:n,spec:r,...i}=e,{row:a,column:o,layer:s}=n,{repeater:c={},repeaterPrefix:l=``}=t;return a||o?this.mapRepeat({...e,repeat:{...a?{row:a}:{},...o?{column:o}:{}},spec:{repeat:{layer:s},spec:r}},t):{...i,layer:s.map(e=>{let n={...c,layer:e},i=`${(r.name?`${r.name}_`:``)+l}child__layer_${Oq(e)}`,a=this.mapLayerOrUnit(r,{...t,repeater:n,repeaterPrefix:i});return a.name=i,a})}}mapNonLayerRepeat(e,t){let{repeat:n,spec:r,data:i,...a}=e;!N(n)&&e.columns&&(e=lq(e,[`columns`]),X(HX(`repeat`)));let o=[],{repeater:s={},repeaterPrefix:c=``}=t,l=!N(n)&&n.row||[s?s.row:null],u=!N(n)&&n.column||[s?s.column:null],d=N(n)&&n||[s?s.repeat:null];for(let e of d)for(let i of l)for(let a of u){let l={repeat:e,row:i,column:a,layer:s.layer},u=`${(r.name?`${r.name}_`:``)+c}child__${N(n)?`${Oq(e)}`:(n.row?`row_${Oq(i)}`:``)+(n.column?`column_${Oq(a)}`:``)}`,d=this.map(r,{...t,repeater:l,repeaterPrefix:u});d.name=u,o.push(lq(d,[`data`]))}let f=N(n)?e.columns:n.column?n.column.length:1;return{data:r.data??i,align:`all`,...a,columns:f,concat:o}}mapFacet(e,t){let{facet:n}=e;return U1(n)&&e.columns&&(e=lq(e,[`columns`]),X(HX(`facet`))),super.mapFacet(e,t)}mapUnitWithParentEncodingOrProjection(e,t){let{encoding:n,projection:r}=e,{parentEncoding:i,parentProjection:a,config:o}=t,s=s4({parentProjection:a,projection:r}),c=o4({parentEncoding:i,encoding:e4(n,t.repeater)});return this.mapUnit({...e,...s?{projection:s}:{},...c?{encoding:c}:{}},{config:o})}mapFacetedUnit(e,t){let{row:n,column:r,facet:i,...a}=e.encoding,{mark:o,width:s,projection:c,height:l,view:u,params:d,encoding:f,...p}=e,{facetMapping:m,layout:h}=this.getFacetMappingAndLayout({row:n,column:r,facet:i},t),g=e4(a,t.repeater);return this.mapFacet({...p,...h,facet:m,spec:{...s?{width:s}:{},...l?{height:l}:{},...u?{view:u}:{},...c?{projection:c}:{},mark:o,encoding:g,...d?{params:d}:{}}},t)}getFacetMappingAndLayout(e,t){let{row:n,column:r,facet:i}=e;if(n||r){i&&X(hZ([...n?[Qq]:[],...r?[$q]:[]]));let t={},a={};for(let n of[Qq,$q]){let r=e[n];if(r){let{align:e,center:i,spacing:o,columns:s,...c}=r;t[n]=c;for(let e of[`align`,`center`,`spacing`])r[e]!==void 0&&(a[e]??={},a[e][n]=r[e])}}return{facetMapping:t,layout:a}}{let{align:e,center:n,spacing:r,columns:a,...o}=i;return{facetMapping:vue(o,t.repeater),layout:{...e?{align:e}:{},...n?{center:n}:{},...r?{spacing:r}:{},...a?{columns:a}:{}}}}}mapLayer(e,{parentEncoding:t,parentProjection:n,...r}){let{encoding:i,projection:a,...o}=e,s={...r,parentEncoding:o4({parentEncoding:t,encoding:i,layer:!0}),parentProjection:s4({parentProjection:n,projection:a})};return super.mapLayer({...o,...e.name?{name:[s.repeaterPrefix,e.name].filter(e=>e).join(`_`)}:{}},s)}};function o4({parentEncoding:e,encoding:t={},layer:n}){let r={};if(e){let i=new Set([...q(e),...q(t)]);for(let a of i){let i=t[a],o=e[a];if(Q(i)){let e={...o,...i};r[a]=e}else n0(i)?r[a]={...i,condition:{...o,...i.condition}}:i||i===null?r[a]=i:(n||u0(o)||Y(o)||Q(o)||N(o))&&(r[a]=o)}}else r=t;return!r||Cq(r)?void 0:r}function s4(e){let{parentProjection:t,projection:n}=e;return t&&n&&X(eZ({parentProjection:t,projection:n})),n??t}function c4(e){return J(e,`filter`)}function xue(e){return J(e,`stop`)}function l4(e){return J(e,`lookup`)}function Sue(e){return J(e,`data`)}function Cue(e){return J(e,`param`)}function wue(e){return J(e,`pivot`)}function Tue(e){return J(e,`density`)}function Eue(e){return J(e,`quantile`)}function Due(e){return J(e,`regression`)}function Oue(e){return J(e,`loess`)}function kue(e){return J(e,`sample`)}function Aue(e){return J(e,`window`)}function jue(e){return J(e,`joinaggregate`)}function Mue(e){return J(e,`flatten`)}function Nue(e){return J(e,`calculate`)}function u4(e){return J(e,`bin`)}function Pue(e){return J(e,`impute`)}function Fue(e){return J(e,`timeUnit`)}function Iue(e){return J(e,`aggregate`)}function Lue(e){return J(e,`stack`)}function Rue(e){return J(e,`fold`)}function zue(e){return J(e,`extent`)&&!J(e,`density`)&&!J(e,`regression`)}function Bue(e){return e.map(e=>c4(e)?{filter:oq(e.filter,YQ)}:e)}var Vue=class extends K2{map(e,t){return t.emptySelections??={},t.selectionPredicates??={},e=d4(e,t),super.map(e,t)}mapLayerOrUnit(e,t){if(e=d4(e,t),e.encoding){let n={};for(let[r,i]of Tq(e.encoding))n[r]=f4(i,t);e={...e,encoding:n}}return super.mapLayerOrUnit(e,t)}mapUnit(e,t){let{selection:n,...r}=e;return n?{...r,params:Tq(n).map(([e,n])=>{let{init:r,bind:i,empty:a,...o}=n;o.type===`single`?(o.type=`point`,o.toggle=!1):o.type===`multi`&&(o.type=`point`),t.emptySelections[e]=a!==`none`;for(let n of wq(t.selectionPredicates[e]??{}))n.empty=a!==`none`;return{name:e,value:r,select:o,bind:i}})}:e}};function d4(e,t){let{transform:n,...r}=e;if(n){let e=n.map(e=>{if(c4(e))return{filter:m4(e,t)};if(u4(e)&&GY(e.bin))return{...e,bin:p4(e.bin)};if(l4(e)){let{selection:t,...n}=e.from;return t?{...e,from:{param:t,...n}}:e}return e});return{...r,transform:e}}return e}function f4(e,t){let n=K(e);if(Z(n)&&GY(n.bin)&&(n.bin=p4(n.bin)),d0(n)&&n.scale?.domain?.selection){let{selection:e,...t}=n.scale.domain;n.scale.domain={...t,...e?{param:e}:{}}}if(e0(n)){if(N(n.condition))n.condition=n.condition.map(e=>{let{selection:n,param:r,test:i,...a}=e;return r?e:{...a,test:m4(e,t)}});else{let{selection:e,param:r,test:i,...a}=f4(n.condition,t);n.condition=r?n.condition:{...a,test:m4(n.condition,t)}}}return n}function p4(e){let t=e.extent;if(t?.selection){let{selection:n,...r}=t;return{...e,extent:{...r,param:n}}}return e}function m4(e,t){let n=e=>oq(e,e=>{let n={param:e,empty:t.emptySelections[e]??!0};return t.selectionPredicates[e]??=[],t.selectionPredicates[e].push(n),n});return e.selection?n(e.selection):oq(e.test||e.filter,e=>e.selection?n(e.selection):e)}var h4=class extends K2{map(e,t){let n=t.selections??[];if(e.params&&!G0(e)){let t=[];for(let r of e.params)D2(r)?n.push(r):t.push(r);e.params=t}return t.selections=n,super.map(e,t)}mapUnit(e,t){let n=t.selections;if(!n||!n.length)return e;let r=(t.path??[]).concat(e.name),i=[];for(let t of n)if(!t.views||!t.views.length)i.push(t);else for(let n of t.views)(P(n)&&(n===e.name||r.includes(n))||N(n)&&n.map(e=>r.indexOf(e)).every((e,t,n)=>e!==-1&&(t===0||e>n[t-1])))&&i.push(t);return i.length&&(e.params=i),e}};for(let e of[`mapFacet`,`mapRepeat`,`mapHConcat`,`mapVConcat`,`mapLayer`]){let t=h4.prototype[e];h4.prototype[e]=function(e,n){return t.call(this,e,Hue(e,n))}}function Hue(e,t){return e.name?{...t,path:(t.path??[]).concat(e.name)}:t}function g4(e,t){t===void 0&&(t=W2(e.config));let n=Kue(e,t),{width:r,height:i}=e,a=que(n,{width:r,height:i,autosize:e.autosize},t);return{...n,...a?{autosize:a}:{}}}var Uue=new bue,Wue=new Vue,Gue=new h4;function Kue(e,t={}){let n={config:t};return Gue.map(Uue.map(Wue.map(e,n),n),n)}function _4(e){return P(e)?{type:e}:e??{}}function que(e,t,n){let{width:r,height:i}=t,a=G0(e)||G2(e),o={};a?r==`container`&&i==`container`?(o.type=`fit`,o.contains=`padding`):r==`container`?(o.type=`fit-x`,o.contains=`padding`):i==`container`&&(o.type=`fit-y`,o.contains=`padding`):(r==`container`&&(X(TX(`width`)),r=void 0),i==`container`&&(X(TX(`height`)),i=void 0));let s={type:`pad`,...o,...n?_4(n.autosize):{},..._4(e.autosize)};if(s.type===`fit`&&!a&&(X(wX),s.type=`pad`),r==`container`&&s.type!=`fit`&&s.type!=`fit-x`&&X(EX(`width`)),i==`container`&&s.type!=`fit`&&s.type!=`fit-y`&&X(EX(`height`)),!Xq(s,{type:`pad`}))return s}function Jue(e){return[`fit`,`fit-x`,`fit-y`].includes(e)}function Yue(e){return e?`fit-${hY(e)}`:`fit`}var Xue=[`background`,`padding`];function v4(e,t){let n={};for(let t of Xue)e&&e[t]!==void 0&&(n[t]=sX(e[t]));return t&&(n.params=e.params),n}var y4=class e{explicit;implicit;constructor(e={},t={}){this.explicit=e,this.implicit=t}clone(){return new e(K(this.explicit),K(this.implicit))}combine(){return{...this.explicit,...this.implicit}}get(e){return Vq(this.explicit[e],this.implicit[e])}getWithExplicit(e){return this.explicit[e]===void 0?this.implicit[e]===void 0?{explicit:!1,value:void 0}:{explicit:!1,value:this.implicit[e]}:{explicit:!0,value:this.explicit[e]}}setWithExplicit(e,{value:t,explicit:n}){t!==void 0&&this.set(e,t,n)}set(e,t,n){return delete this[n?`implicit`:`explicit`][e],this[n?`explicit`:`implicit`][e]=t,this}copyKeyFromSplit(e,{explicit:t,implicit:n}){t[e]===void 0?n[e]!==void 0&&this.set(e,n[e],!1):this.set(e,t[e],!0)}copyKeyFromObject(e,t){t[e]!==void 0&&this.set(e,t[e],!0)}copyAll(e){for(let t of q(e.combine())){let n=e.getWithExplicit(t);this.setWithExplicit(t,n)}}};function b4(e){return{explicit:!0,value:e}}function x4(e){return{explicit:!1,value:e}}function S4(e){return(t,n,r,i)=>{let a=e(t.value,n.value);return a>0?t:a<0?n:C4(t,n,r,i)}}function C4(e,t,n,r){return e.explicit&&t.explicit&&X(AZ(n,r,e.value,t.value)),e}function w4(e,t,n,r,i=C4){return e===void 0||e.value===void 0?t:e.explicit&&!t.explicit?e:t.explicit&&!e.explicit?t:Xq(e.value,t.value)?e:i(e,t,n,r)}var Zue=class extends y4{explicit;implicit;parseNothing;constructor(e={},t={},n=!1){super(e,t),this.explicit=e,this.implicit=t,this.parseNothing=n}clone(){let e=super.clone();return e.parseNothing=this.parseNothing,e}};function T4(e){return J(e,`url`)}function E4(e){return J(e,`values`)}function D4(e){return J(e,`name`)&&!T4(e)&&!E4(e)&&!O4(e)}function O4(e){return e&&(k4(e)||A4(e)||j4(e))}function k4(e){return J(e,`sequence`)}function A4(e){return J(e,`sphere`)}function j4(e){return J(e,`graticule`)}var M4;(function(e){e[e.Raw=0]=`Raw`,e[e.Main=1]=`Main`,e[e.Row=2]=`Row`,e[e.Column=3]=`Column`,e[e.Lookup=4]=`Lookup`,e[e.PreFilterInvalid=5]=`PreFilterInvalid`,e[e.PostFilterInvalid=6]=`PostFilterInvalid`})(M4||={});function N4({invalid:e,isPath:t}){switch(d1(e,{isPath:t})){case`filter`:return{marks:`exclude-invalid-values`,scales:`exclude-invalid-values`};case`break-paths-show-domains`:return{marks:t?`include-invalid-values`:`exclude-invalid-values`,scales:`include-invalid-values`};case`break-paths-filter-domains`:return{marks:t?`include-invalid-values`:`exclude-invalid-values`,scales:`exclude-invalid-values`};case`show`:return{marks:`include-invalid-values`,scales:`include-invalid-values`}}}function Que(e){let{marks:t,scales:n}=N4(e);return t===n?M4.Main:n===`include-invalid-values`?M4.PreFilterInvalid:M4.PostFilterInvalid}var P4=class{debugName;_children=[];_parent=null;_hash;constructor(e,t){this.debugName=t,e&&(this.parent=e)}clone(){throw Error(`Cannot clone node`)}get parent(){return this._parent}set parent(e){this._parent=e,e&&e.addChild(this)}get children(){return this._children}numChildren(){return this._children.length}addChild(e,t){if(this._children.includes(e)){X(XX);return}t===void 0?this._children.push(e):this._children.splice(t,0,e)}removeChild(e){let t=this._children.indexOf(e);return this._children.splice(t,1),t}remove(){let e=this._parent.removeChild(this);for(let t of this._children)t._parent=this._parent,this._parent.addChild(t,e++)}insertAsParentOf(e){let t=e.parent;t.removeChild(this),this.parent=t,e.parent=this}swapWithParent(){let e=this._parent,t=e.parent;for(let t of this._children)t.parent=e;this._children=[],e.removeChild(this);let n=e.parent.removeChild(e);this._parent=t,t.addChild(this,n),e.parent=this}},F4=class extends P4{type;refCounts;_source;_name;clone(){let e=new this.constructor;return e.debugName=`clone_${this.debugName}`,e._source=this._source,e._name=`clone_${this._name}`,e.type=this.type,e.refCounts=this.refCounts,e.refCounts[e._name]=0,e}constructor(e,t,n,r){super(e,t),this.type=n,this.refCounts=r,this._source=this._name=t,this.refCounts&&!(this._name in this.refCounts)&&(this.refCounts[this._name]=0)}dependentFields(){return new Set}producedFields(){return new Set}hash(){return this._hash===void 0&&(this._hash=`Output ${Uq()}`),this._hash}getSource(){return this.refCounts[this._name]++,this._source}isRequired(){return!!this.refCounts[this._name]}setSource(e){this._source=e}};function I4(e){return e.as!==void 0}function L4(e){return`${e}_end`}var R4=class e extends P4{timeUnits;clone(){return new e(null,K(this.timeUnits))}constructor(e,t){super(e),this.timeUnits=t}static makeFromEncoding(t,n){let r=n.reduceFieldDef((e,t,r)=>{let{field:i,timeUnit:a}=t;if(a){let o;if(vQ(a)){if(Q8(n)){let{mark:e,markDef:r,config:s}=n,c=X1({fieldDef:t,markDef:r,config:s});(J$(e)||c)&&(o={timeUnit:kQ(a),field:i})}}else o={as:$(t,{forAs:!0}),field:i,timeUnit:a};if(Q8(n)){let{mark:e,markDef:i,config:a}=n,s=X1({fieldDef:t,markDef:i,config:a});J$(e)&&fY(r)&&s!==.5&&(o.rectBandPosition=s)}o&&(e[uq(o)]=o)}return e},{});return Cq(r)?null:new e(t,r)}static makeFromTransform(t,n){let{timeUnit:r,...i}={...n},a=kQ(r),o={...i,timeUnit:a};return new e(t,{[uq(o)]:o})}merge(e){this.timeUnits={...this.timeUnits};for(let t in e.timeUnits)this.timeUnits[t]||(this.timeUnits[t]=e.timeUnits[t]);for(let t of e.children)e.removeChild(t),t.parent=this;e.remove()}removeFormulas(e){let t={};for(let[n,r]of Tq(this.timeUnits)){let i=I4(r)?r.as:`${r.field}_end`;e.has(i)||(t[n]=r)}this.timeUnits=t}producedFields(){return new Set(wq(this.timeUnits).map(e=>I4(e)?e.as:L4(e.field)))}dependentFields(){return new Set(wq(this.timeUnits).map(e=>e.field))}hash(){return`TimeUnit ${uq(this.timeUnits)}`}assemble(){let e=[];for(let t of wq(this.timeUnits)){let{rectBandPosition:n}=t,r=kQ(t.timeUnit);if(I4(t)){let{field:i,as:a}=t,{unit:o,utc:s,...c}=r,l=[a,`${a}_end`];e.push({field:Lq(i),type:`timeunit`,...o?{units:CQ(o)}:{},...s?{timezone:`utc`}:{},...c,as:l}),e.push(...H4(l,n,r))}else if(t){let{field:i}=t,a=Fq(i),o=V4({timeUnit:r,field:a}),s=L4(a);e.push({type:`formula`,expr:o,as:s}),e.push(...H4([a,s],n,r))}}return e}},z4=`offsetted_rect_start`,B4=`offsetted_rect_end`;function V4({timeUnit:e,field:t,reverse:n}){let{unit:r,utc:i}=e,{part:a,step:o}=PQ(wQ(r),e.step);return`${i?`utcOffset`:`timeOffset`}('${a}', ${Pq(t)}, ${n?-o:o})`}function H4([e,t],n,r){if(n!==void 0&&n!==.5){let i=Pq(e),a=Pq(t);return[{type:`formula`,expr:U4([V4({timeUnit:r,field:e,reverse:!0}),i],n+.5),as:`${e}_${z4}`},{type:`formula`,expr:U4([i,a],n+.5),as:`${e}_${B4}`}]}return[]}function U4([e,t],n){return`${1-n} * ${e} + ${n} * ${t}`}var W4=`_tuple_fields`,$ue=class{hasChannel;hasField;hasSelectionId;timeUnit;items;constructor(...e){this.items=e,this.hasChannel={},this.hasField={},this.hasSelectionId=!1}},ede={defined:()=>!0,parse:(e,t,n)=>{let r=t.name,i=t.project??=new $ue,a={},o={},s=new Set,c=(e,t)=>{let n=t===`visual`?e.channel:e.field,i=Oq(`${r}_${n}`);for(let e=1;s.has(i);e++)i=Oq(`${r}_${n}_${e}`);return s.add(i),{[t]:i}},l=t.type,u=e.config.selection[l],d=n.value===void 0?null:k(n.value),{fields:f,encodings:p}=M(n.select)?n.select:{};if(!f&&!p&&d){for(let e of d)if(M(e))for(let t of q(e))XJ(t)?(p||=[]).push(t):l===`interval`?(X(BX),p=u.encodings):(f??=[]).push(t)}!f&&!p&&(p=u.encodings,`fields`in u&&(f=u.fields));for(let t of p??[]){let n=e.fieldDef(t);if(n){let r=n.field;if(n.aggregate){X(AX(t,n.aggregate));continue}if(!r){X(kX(t));continue}if(n.timeUnit&&!vQ(n.timeUnit)){r=e.vgField(t);let i={timeUnit:n.timeUnit,as:r,field:n.field};o[uq(i)]=i}if(!a[r]){let o=l===`interval`&&EY(t)&&_$(e.getScaleComponent(t).get(`type`))?`R`:n.bin?`R-RE`:`E`,s={field:r,channel:t,type:o,index:i.items.length};s.signals={...c(s,`data`),...c(s,`visual`)},i.items.push(a[r]=s),i.hasField[r]=a[r],i.hasSelectionId=i.hasSelectionId||r===w2,BJ(t)?(s.geoChannel=t,s.channel=zJ(t),i.hasChannel[s.channel]=a[r]):i.hasChannel[t]=a[r]}}else X(kX(t))}for(let e of f??[]){if(i.hasField[e])continue;let t={type:`E`,field:e,index:i.items.length};t.signals={...c(t,`data`)},i.items.push(t),i.hasField[e]=t,i.hasSelectionId=i.hasSelectionId||e===w2}d&&(t.init=d.map(e=>i.items.map(t=>M(e)?e[t.geoChannel||t.channel]===void 0?e[t.field]:e[t.geoChannel||t.channel]:e))),Cq(o)||(i.timeUnit=new R4(null,o))},signals:(e,t,n)=>{let r=t.name+W4;return n.filter(e=>e.name===r).length>0||t.project.hasSelectionId?n:n.concat({name:r,value:t.project.items.map($4)})}},G4=`_curr`,K4=`anim_value`,q4=`anim_clock`,J4=`eased_anim_clock`,Y4=`min_extent`,X4=`max_range_extent`,Z4=`last_tick_at`,Q4=`is_playing`,tde=1/60*1e3,nde=(e,t)=>[{name:J4,update:q4},{name:`${e}_domain`,init:`domain('${t}')`},{name:Y4,init:`extent(${e}_domain)[0]`},{name:X4,init:`extent(range('${t}'))[1]`},{name:K4,update:`invert('${t}', ${J4})`}],rde={defined:e=>e.type===`point`,topLevelSignals:(e,t,n)=>($3(t)&&(n=n.concat([{name:q4,init:`0`,on:[{events:{type:`timer`,throttle:tde},update:`${Q4} ? (${q4} + (now() - ${Z4}) > ${X4} ? 0 : ${q4} + (now() - ${Z4})) : ${q4}`}]},{name:Z4,init:`now()`,on:[{events:[{signal:q4},{signal:Q4}],update:`now()`}]},{name:Q4,init:`true`}])),n),signals:(e,t,n)=>{let r=t.name,i=r+W4,a=t.project,o=`(item().isVoronoi ? datum.datum : datum)`,s=wq(e.component.selection??{}).reduce((e,t)=>t.type===`interval`?e.concat(t.name+o3):e,[]).map(e=>`indexof(item().mark.name, '${e}') < 0`).join(` && `),c=`datum && item().mark.marktype !== 'group' && indexof(item().mark.role, 'legend') < 0${s?` && ${s}`:``}`,l=`unit: ${X3(e)}, `;if(t.project.hasSelectionId)l+=`${w2}: ${o}[${p(w2)}]`;else if($3(t))l+=`fields: ${i}, values: [${K4} ? ${K4} : ${Y4}]`;else{let t=a.items.map(t=>e.fieldDef(t.channel)?.bin?`[${o}[${p(e.vgField(t.channel,{}))}], ${o}[${p(e.vgField(t.channel,{binSuffix:`end`}))}]]`:`${o}[${p(t.field)}]`).join(`, `);l+=`fields: ${i}, values: [${t}]`}if($3(t))return n.concat(nde(t.name,e.scaleName(hJ)),[{name:r+q3,on:[{events:[{signal:J4},{signal:K4}],update:`{${l}}`,force:!0}]}]);{let e=t.events;return n.concat([{name:r+q3,on:e?[{events:e,update:`${c} ? {${l}} : null`,force:!0}]:[]}])}}};function $4(e){let{signals:t,hasLegend:n,index:r,...i}=e;return i.field=Lq(i.field),i}function e3(e,t=!0,n=ne){if(N(e)){let r=e.map(e=>e3(e,t,n));return t?`[${r.join(`, `)}]`:r}return rQ(e)?n(t?fQ(e):mQ(e)):t?n(Zq(e)):e}function ide(e,t){for(let n of wq(e.component.selection??{})){let r=n.name,i=`${r}${q3}, ${n.resolve===`global`?`true`:`{unit: ${X3(e)}}`}`;for(let r of Y3)r.defined(n)&&(r.signals&&(t=r.signals(e,n,t)),r.modifyExpr&&(i=r.modifyExpr(e,n,i)));t.push({name:r+jde,on:[{events:{signal:n.name+q3},update:`modify(${p(n.name+K3)}, ${i})`}]})}return n3(t)}function ade(e,t){if(e.component.selection&&q(e.component.selection).length){let n=p(e.getName(`cell`));t.unshift({name:`facet`,value:{},on:[{events:gz(`pointermove`,`scope`),update:`isTuple(facet) ? facet : group(${n}).datum`}]})}return n3(t)}function ode(e,t){let n=!1;for(let r of wq(e.component.selection??{})){let i=r.name,a=p(i+K3);if(t.filter(e=>e.name===i).length===0){let e=r.resolve===`global`?`union`:r.resolve,n=r.type===`point`?`, true, true)`:`)`;t.push({name:r.name,update:`${J3}(${a}, ${p(e)}${n}`})}n=!0;for(let n of Y3)n.defined(r)&&n.topLevelSignals&&(t=n.topLevelSignals(e,r,t))}return n&&t.filter(e=>e.name===`unit`).length===0&&t.unshift({name:`unit`,value:{},on:[{events:`pointermove`,update:`isTuple(group()) ? group() : unit`}]}),n3(t)}function sde(e,t){let n=[],r=[],i=X3(e,{escape:!1});for(let a of wq(e.component.selection??{})){let o={name:a.name+K3};if(a.project.hasSelectionId&&(o.transform=[{type:`collect`,sort:{field:w2}}]),a.init){let e=a.project.items.map($4);o.values=a.project.hasSelectionId?a.init.map(e=>({unit:i,[w2]:e3(e,!1)[0]})):a.init.map(t=>({unit:i,fields:e,values:e3(t,!1)}))}if([...n,...t].filter(e=>e.name===a.name+K3).length||n.push(o),$3(a)&&t.length){let n=e.lookupDataSource(e.getDataName(M4.Main)),i=t.find(e=>e.name===n),a=i.transform.find(e=>e.type===`filter`&&e.expr.includes(`vlSelectionTest`));if(a){i.transform=i.transform.filter(e=>e!==a);let e={name:i.name+G4,source:i.name,transform:[a]};r.push(e)}}}return n.concat(t,r)}function t3(e,t){for(let n of wq(e.component.selection??{}))for(let r of Y3)r.defined(n)&&r.marks&&(t=r.marks(e,n,t));return t}function cde(e,t){for(let n of e.children)Q8(n)&&(t=t3(n,t));return t}function lde(e,t,n,r){let i=a6(e,t.param,t);return{signal:_$(n.get(`type`))&&N(r)&&r[0]>r[1]?`isValid(${i}) && reverse(${i})`:i}}function n3(e){return e.map(e=>(e.on&&!e.on.length&&delete e.on,e))}var r3={defined:e=>e.type===`interval`&&e.resolve===`global`&&e.bind&&e.bind===`scales`,parse:(e,t)=>{let n=t.scales=[];for(let r of t.project.items){let i=r.channel;if(!EY(i))continue;let a=e.getScaleComponent(i),o=a?a.get(`type`):void 0;if(o==`sequential`&&X(FX),!a||!_$(o)){X(PX);continue}a.set(`selectionExtent`,{param:t.name,field:r.field},!0),n.push(r)}},topLevelSignals:(e,t,n)=>{let r=t.scales.filter(e=>n.filter(t=>t.name===e.signals.data).length===0);if(!e.parent||a3(e)||r.length===0)return n;let i=n.find(e=>e.name===t.name),a=i.update;if(a.includes(J3))i.update=`{${r.map(e=>`${p(Lq(e.field))}: ${e.signals.data}`).join(`, `)}}`;else{for(let e of r){let t=`${p(Lq(e.field))}: ${e.signals.data}`;a.includes(t)||(a=`${a.substring(0,a.length-1)}, ${t}}`)}i.update=a}return n.concat(r.map(e=>({name:e.signals.data})))},signals:(e,t,n)=>{if(e.parent&&!a3(e))for(let e of t.scales){let t=n.find(t=>t.name===e.signals.data);t.push=`outer`,delete t.value,delete t.update}return n}};function i3(e,t){return`domain(${p(e.scaleName(t))})`}function a3(e){return e.parent&&t5(e.parent)&&(!e.parent.parent||a3(e.parent.parent))}var o3=`_brush`,s3=`_scale_trigger`,c3=`geo_interval_init_tick`,l3=`_init`,ude=`_center`,dde={defined:e=>e.type===`interval`,parse:(e,t,n)=>{if(e.hasProjection){let e={...M(n.select)?n.select:{}};e.fields=[w2],e.encodings||=n.value?q(n.value):[fJ,dJ],n.select={type:`interval`,...e}}if(t.translate&&!r3.defined(t)){let e=`!event.item || event.item.mark.name !== ${p(t.name+o3)}`;for(let n of t.events){if(!n.between){X(`${n} is not an ordered event stream for interval selections.`);continue}let t=k(n.between[0].filter??=[]);t.includes(e)||t.push(e)}}},signals:(e,t,n)=>{let r=t.name,i=r+q3,a=wq(t.project.hasChannel).filter(e=>e.channel===tJ||e.channel===nJ),o=t.init?t.init[0]:null;if(n.push(...a.reduce((n,r)=>n.concat(fde(e,t,r,o?.[r.index])),[])),e.hasProjection){let s=p(e.projectionName()),c=e.projectionName()+ude,{x:l,y:u}=t.project.hasChannel,d=l?.signals.visual,f=u?.signals.visual,m=l?o?.[l.index]:`${c}[0]`,h=u?o?.[u.index]:`${c}[1]`,g=t=>e.getSizeSignalRef(t).signal,_=`[[${d?`${d}[0]`:`0`}, ${f?`${f}[0]`:`0`}],[${d?`${d}[1]`:g(`width`)}, ${f?`${f}[1]`:g(`height`)}]]`;o&&(n.unshift({name:r+l3,init:`[scale(${s}, [${l?m[0]:m}, ${u?h[0]:h}]), scale(${s}, [${l?m[1]:m}, ${u?h[1]:h}])]`}),(!l||!u)&&(n.find(e=>e.name===c)||n.unshift({name:c,update:`invert(${s}, [${g(`width`)}/2, ${g(`height`)}/2])`})));let v=`vlSelectionTuples(${`intersect(${_}, {markname: ${p(e.getName(`marks`))}}, unit.mark)`}, ${`{unit: ${X3(e)}}`})`,y=a.map(e=>e.signals.visual);return n.concat({name:i,on:[{events:[...y.length?[{signal:y.join(` || `)}]:[],...o?[{signal:c3}]:[]],update:v}]})}{if(!r3.defined(t)){let t=r+s3,i=a.map(t=>{let n=t.channel,{data:r,visual:i}=t.signals,a=p(e.scaleName(n)),o=_$(e.getScaleComponent(n).get(`type`))?`+`:``;return`(!isArray(${r}) || (${o}invert(${a}, ${i})[0] === ${o}${r}[0] && ${o}invert(${a}, ${i})[1] === ${o}${r}[1]))`});i.length&&n.push({name:t,value:{},on:[{events:a.map(t=>({scale:e.scaleName(t.channel)})),update:`${i.join(` && `)} ? ${t} : {}`}]})}let s=a.map(e=>e.signals.data),c=`unit: ${X3(e)}, fields: ${r+W4}, values`;return n.concat({name:i,...o?{init:`{${c}: ${e3(o)}}`}:{},...s.length?{on:[{events:[{signal:s.join(` || `)}],update:`${s.join(` && `)} ? {${c}: [${s}]} : null`}]}:{}})}},topLevelSignals:(e,t,n)=>(Q8(e)&&e.hasProjection&&t.init&&(n.filter(e=>e.name===c3).length||n.unshift({name:c3,value:null,on:[{events:`timer{1}`,update:`${c3} === null ? {} : ${c3}`}]})),n),marks:(e,t,n)=>{let r=t.name,{x:i,y:a}=t.project.hasChannel,o=i?.signals.visual,s=a?.signals.visual,c=`data(${p(t.name+K3)})`;if(r3.defined(t)||!i&&!a)return n;let l={x:i===void 0?{value:0}:{signal:`${o}[0]`},y:a===void 0?{value:0}:{signal:`${s}[0]`},x2:i===void 0?{field:{group:`width`}}:{signal:`${o}[1]`},y2:a===void 0?{field:{group:`height`}}:{signal:`${s}[1]`}};if(t.resolve===`global`)for(let t of q(l))l[t]=[{test:`${c}.length && ${c}[0].unit === ${X3(e)}`,...l[t]},{value:0}];let{fill:u,fillOpacity:d,cursor:f,...m}=t.mark,h=q(m).reduce((e,t)=>(e[t]=[{test:[i!==void 0&&`${o}[0] !== ${o}[1]`,a!==void 0&&`${s}[0] !== ${s}[1]`].filter(e=>e).join(` && `),value:m[t]},{value:null}],e),{}),g=f??(t.translate?`move`:null);return[{name:`${r+o3}_bg`,type:`rect`,clip:!0,encode:{enter:{fill:{value:u},fillOpacity:{value:d}},update:l}},...n,{name:r+o3,type:`rect`,clip:!0,encode:{enter:{...g?{cursor:{value:g}}:{},fill:{value:`transparent`}},update:{...l,...h}}}]}};function fde(e,t,n,r){let i=!e.hasProjection,a=n.channel,o=n.signals.visual,s=p(i?e.scaleName(a):e.projectionName()),c=e=>`scale(${s}, ${e})`,l=e.getSizeSignalRef(a===tJ?`width`:`height`).signal,u=`${a}(unit)`,d=t.events.reduce((e,t)=>[...e,{events:t.between[0],update:`[${u}, ${u}]`},{events:t,update:`[${o}[0], clamp(${u}, 0, ${l})]`}],[]);if(i){let i=n.signals.data,l=r3.defined(t),u=e.getScaleComponent(a),f=u?u.get(`type`):void 0,p=r?{init:e3(r,!0,c)}:{value:[]};return d.push({events:{signal:t.name+s3},update:_$(f)?`[${c(`${i}[0]`)}, ${c(`${i}[1]`)}]`:`[0, 0]`}),l?[{name:i,on:[]}]:[{name:o,...p,on:d},{name:i,...r?{init:e3(r)}:{},on:[{events:{signal:o},update:`${o}[0] === ${o}[1] ? null : invert(${s}, ${o})`}]}]}{let e=a===tJ?0:1,n=t.name+l3;return[{name:o,...r?{init:`[${n}[0][${e}], ${n}[1][${e}]]`}:{value:[]},on:d}]}}function u3({model:e,channelDef:t,vgChannel:n,invalidValueRef:r,mainRefFn:i}){let a=e0(t)&&t.condition,o=[];a&&(o=k(a).map(t=>{let n=i(t);if(K1(t)){let{param:r,empty:i}=t;return{test:i6(e,{param:r,empty:i}),...n}}return{test:o6(e,t.test),...n}})),r!==void 0&&o.push(r);let s=i(t);return s!==void 0&&o.push(s),o.length>1||o.length===1&&o[0].test?{[n]:o}:o.length===1?{[n]:o[0]}:{}}function d3(e,t=`text`){let n=e.encoding[t];return u3({model:e,channelDef:n,vgChannel:t,mainRefFn:t=>f3(t,e.config),invalidValueRef:void 0})}function f3(e,t,n=`datum`){if(e){if(u0(e))return lX(e.value);if(Q(e)){let{format:r,formatType:i}=D0(e);return E1({fieldOrDatumDef:e,format:r,formatType:i,expr:n,config:t})}}}function p3(e,t={}){let{encoding:n,markDef:r,config:i,stack:a}=e,o=n.tooltip;if(N(o))return{tooltip:h3({tooltip:o},a,i,t)};{let s=t.reactiveGeom?`datum.datum`:`datum`;return u3({model:e,channelDef:o,vgChannel:`tooltip`,mainRefFn:e=>{let o=g3(e,i,s);if(o)return o;if(e===null)return;let c=hX(`tooltip`,r,i);if(c===!0&&(c={content:`encoding`}),P(c))return{value:c};if(M(c))return Y(c)?c:c.content===`encoding`?h3(n,a,i,t):{signal:s}},invalidValueRef:void 0})}}function m3(e,t,n,{reactiveGeom:r}={}){let i={...n,...n.tooltipFormat},a=new Set,o=r?`datum.datum`:`datum`,s=[];function c(n,r){let c=eY(r),l=l0(n)?n:{...n,type:e[c].type},u=l.title||E0(l,i),d=k(u).join(`, `).replaceAll(/"/g,`\\"`),f;if(fY(r)){let t=r===`x`?`x2`:`y2`,n=O0(e[t]);if(WY(l.bin)&&n){let e=$(l,{expr:o}),r=$(n,{expr:o}),{format:s,formatType:c}=D0(l);f=F1(e,r,s,c,i),a.add(t)}}if((fY(r)||r===lJ||r===sJ)&&t&&t.fieldChannel===r&&t.offset===`normalize`){let{format:e,formatType:t}=D0(l);f=E1({fieldOrDatumDef:l,format:e,formatType:t,expr:o,config:i,normalizeStack:!0}).signal}f??=g3(l,i,o).signal,s.push({channel:r,key:d,value:f})}$0(e,(e,t)=>{Z(e)?c(e,t):t0(e)&&c(e.condition,t)});let l={};for(let{channel:e,key:t,value:n}of s)!a.has(e)&&!l[t]&&(l[t]=n);return l}function h3(e,t,n,{reactiveGeom:r}={}){let i=Tq(m3(e,t,n,{reactiveGeom:r})).map(([e,t])=>`"${e}": ${t}`);return i.length>0?{signal:`{${i.join(`, `)}}`}:void 0}function g3(e,t,n=`datum`){if(Z(e)&&QQ(e.type)&&!e.timeUnit&&!D0(e).format&&!D0(e).formatType){let t=`${n}["${e.field}"]`;return{signal:`isValid(${t}) ? isArray(${t}) ? join(${t}, '\\n') : ${t} : ""+${t}`}}return f3(e,t,n)}function pde(e){let{markDef:t,config:n}=e,r=hX(`aria`,t,n);return r===!1?{}:{...r?{aria:r}:{},...mde(e),...hde(e)}}function mde(e){let{mark:t,markDef:n,config:r}=e;if(r.aria===!1)return{};let i=hX(`ariaRoleDescription`,n,r);return i==null?T(rX,t)?{}:{ariaRoleDescription:{value:t}}:{ariaRoleDescription:{value:i}}}function hde(e){let{encoding:t,markDef:n,config:r,stack:i}=e,a=t.description;if(a)return u3({model:e,channelDef:a,vgChannel:`description`,mainRefFn:t=>f3(t,e.config),invalidValueRef:void 0});let o=hX(`description`,n,r);if(o!=null)return{description:lX(o)};if(r.aria===!1)return{};let s=m3(t,i,r);if(!Cq(s))return{description:{signal:Tq(s).filter(([e])=>!e.startsWith(`_`)).map(([e,t])=>[e,t.replaceAll(`\\n`,` `)]).map(([e,t],n)=>`"${n>0?`; `:``}${e}: " + (${t})`).join(` + `)}}}function _3(e,t,n={}){let{markDef:r,encoding:i,config:a}=t,{vgChannel:o}=n,{defaultRef:s,defaultValue:c}=n,l=i[e];s===void 0&&(c??=hX(e,r,a,{vgChannel:o,ignoreVgConfig:!e0(l)}),c!==void 0&&(s=lX(c)));let u={markDef:r,config:a,scaleName:t.scaleName(e),scale:t.getScaleComponent(e)},d=h1({...u,scaleChannel:e,channelDef:l});return u3({model:t,channelDef:l,vgChannel:o??e,invalidValueRef:d,mainRefFn:t=>S1({...u,channel:e,channelDef:t,stack:null,defaultRef:s})})}function v3(e,t={filled:void 0}){let{markDef:n,encoding:r,config:i}=e,{type:a}=n,o=t.filled??hX(`filled`,n,i),s=fq([`bar`,`point`,`circle`,`square`,`geoshape`],a)?`transparent`:void 0,c=hX(o===!0?`color`:void 0,n,i,{vgChannel:`fill`})??i.mark[o===!0&&`color`]??s,l=hX(o===!1?`color`:void 0,n,i,{vgChannel:`stroke`})??i.mark[o===!1&&`color`],u=o?`fill`:`stroke`,d={...c?{fill:lX(c)}:{},...l?{stroke:lX(l)}:{}};return n.color&&(o?n.fill:n.stroke)&&X(sZ(`property`,{fill:`fill`in n,stroke:`stroke`in n})),{...d,..._3(`color`,e,{vgChannel:u,defaultValue:o?c:l}),..._3(`fill`,e,{defaultValue:r.fill?c:void 0}),..._3(`stroke`,e,{defaultValue:r.stroke?l:void 0})}}function gde(e){let{encoding:t,mark:n}=e,r=t.order;return!q$(n)&&u0(r)?u3({model:e,channelDef:r,vgChannel:`zindex`,mainRefFn:e=>lX(e.value),invalidValueRef:void 0}):{}}function y3({channel:e,markDef:t,encoding:n={},model:r,bandPosition:i}){let a=`${e}Offset`,o=t[a],s=n[a];if((a===`xOffset`||a===`yOffset`)&&s)return{offsetType:`encoding`,offset:S1({channel:a,channelDef:s,markDef:t,config:r?.config,scaleName:r.scaleName(a),scale:r.getScaleComponent(a),stack:null,defaultRef:lX(o),bandPosition:i})};let c=t[a];return c?{offsetType:`visual`,offset:c}:{}}function b3(e,t,{defaultPos:n,vgChannel:r}){let{encoding:i,markDef:a,config:o,stack:s}=t,c=i[e],l=i[nY(e)],u=t.scaleName(e),d=t.getScaleComponent(e),{offset:f,offsetType:p}=y3({channel:e,markDef:a,encoding:i,model:t,bandPosition:.5}),m=x3({model:t,defaultPos:n,channel:e,scaleName:u,scale:d}),h=!c&&fY(e)&&(i.latitude||i.longitude)?{field:t.getName(e)}:_de({channel:e,channelDef:c,channel2Def:l,markDef:a,config:o,scaleName:u,scale:d,stack:s,offset:f,defaultRef:m,bandPosition:p===`encoding`?0:void 0});return h?{[r||e]:h}:void 0}function _de(e){let{channel:t,channelDef:n,scaleName:r,stack:i,offset:a,markDef:o}=e;if(Q(n)&&i&&t===i.fieldChannel){if(Z(n)){let e=n.bandPosition;if(e===void 0&&o.type===`text`&&(t===`radius`||t===`theta`)&&(e=.5),e!==void 0)return b1({scaleName:r,fieldOrDatumDef:n,startSuffix:`start`,bandPosition:e,offset:a})}return y1(n,r,{suffix:`end`},{offset:a})}return _1(e)}function x3({model:e,defaultPos:t,channel:n,scaleName:r,scale:i}){let{markDef:a,config:o}=e;return()=>{let s=eY(n),c=tY(n),l=hX(n,a,o,{vgChannel:c});if(l!==void 0)return C1(n,l);switch(t){case`zeroOrMin`:return S3({scaleName:r,scale:i,mode:`zeroOrMin`,mainChannel:s,config:o});case`zeroOrMax`:return S3({scaleName:r,scale:i,mode:{zeroOrMax:{widthSignal:e.width.signal,heightSignal:e.height.signal}},mainChannel:s,config:o});case`mid`:return{...e[rY(n)],mult:.5}}}}function S3({mainChannel:e,config:t,...n}){let r=m1(n),{mode:i}=n;if(r)return r;switch(e){case`radius`:{if(i===`zeroOrMin`)return{value:0};let{widthSignal:e,heightSignal:t}=i.zeroOrMax;return{signal:`min(${e},${t})/2`}}case`theta`:return i===`zeroOrMin`?{value:0}:{signal:`2*PI`};case`x`:return i===`zeroOrMin`?{value:0}:{field:{group:`width`}};case`y`:return i===`zeroOrMin`?{field:{group:`height`}}:{value:0}}}var vde={left:`x`,center:`xc`,right:`x2`},yde={top:`y`,middle:`yc`,bottom:`y2`};function C3(e,t,n,r=`middle`){if(e===`radius`||e===`theta`)return tY(e);let i=e===`x`?`align`:`baseline`,a=hX(i,t,n),o;return Y(a)?(X(_Z(i)),o=void 0):o=a,e===`x`?vde[o||(r===`top`?`left`:`center`)]:yde[o||r]}function w3(e,t,{defaultPos:n,defaultPos2:r,range:i}){return i?T3(e,t,{defaultPos:n,defaultPos2:r}):b3(e,t,{defaultPos:n})}function T3(e,t,{defaultPos:n,defaultPos2:r}){let{markDef:i,config:a}=t,o=nY(e),s=rY(e),c=bde(t,r,o);return{...b3(e,t,{defaultPos:n,vgChannel:c[s]?C3(e,i,a):tY(e)}),...c}}function bde(e,t,n){let{encoding:r,mark:i,markDef:a,stack:o,config:s}=e,c=eY(n),l=rY(n),u=tY(n),d=r[c],f=e.scaleName(c),p=e.getScaleComponent(c),{offset:m}=n in r||n in a?y3({channel:n,markDef:a,encoding:r,model:e}):y3({channel:c,markDef:a,encoding:r,model:e});if(!d&&(n===`x2`||n===`y2`)&&(r.latitude||r.longitude)){let t=rY(n),r=e.markDef[t];return r==null?{[u]:{field:e.getName(n)}}:{[t]:{value:r}}}let h=xde({channel:n,channelDef:d,channel2Def:r[n],markDef:a,config:s,scaleName:f,scale:p,stack:o,offset:m,defaultRef:void 0});return h===void 0?E3(n,a)||E3(n,{[n]:_X(n,a,s.style),[l]:_X(l,a,s.style)})||E3(n,s[i])||E3(n,s.mark)||{[u]:x3({model:e,defaultPos:t,channel:n,scaleName:f,scale:p})()}:{[u]:h}}function xde({channel:e,channelDef:t,channel2Def:n,markDef:r,config:i,scaleName:a,scale:o,stack:s,offset:c,defaultRef:l}){return Q(t)&&s&&e.charAt(0)===s.fieldChannel.charAt(0)?y1(t,a,{suffix:`start`},{offset:c}):_1({channel:e,channelDef:n,scaleName:a,scale:o,stack:s,markDef:r,config:i,offset:c,defaultRef:l})}function E3(e,t){let n=rY(e),r=tY(e);if(t[r]!==void 0)return{[r]:C1(e,t[r])};if(t[e]!==void 0)return{[r]:C1(e,t[e])};if(t[n]){let r=t[n];if(a1(r))X(cZ(n));else return{[n]:C1(e,r)}}}function D3(e,t){let{config:n,encoding:r,markDef:i}=e,a=i.type,o=nY(t),s=rY(t),c=r[t],l=r[o],u=e.getScaleComponent(t),d=u?u.get(`type`):void 0,f=i.orient,p=r[s]??r.size??hX(`size`,i,n,{vgChannel:s}),m=iY(t),h=a===`bar`&&(t===`x`?f===`vertical`:f===`horizontal`)||a===`tick`&&(t===`y`?f===`vertical`:f===`horizontal`);return Z(c)&&(UY(c.bin)||WY(c.bin)||c.timeUnit&&!l)&&!(p&&!a1(p))&&!r[m]&&!g$(d)?wde({fieldDef:c,fieldDef2:l,channel:t,model:e}):(Q(c)&&g$(d)||h)&&!l?Cde(c,t,e):T3(t,e,{defaultPos:`zeroOrMax`,defaultPos2:`zeroOrMin`})}function Sde(e,t,n,r,i,a,s){if(a1(i)){if(n){let e=n.get(`type`);if(e===`band`){let e=`bandwidth('${t}')`;i.band!==1&&(e=`${i.band} * ${e}`);let n=gX(`minBandSize`,{type:s},r);return{signal:n?`max(${fX(n)}, ${e})`:e}}i.band!==1&&X(xZ(e))}else return{mult:i.band,field:{group:e}}}else if(Y(i))return i;else if(i)return{value:i};if(n){let e=n.get(`range`);if(QY(e)&&o(e.step))return{value:e.step-2}}if(!a){let{bandPaddingInner:t,barBandPaddingInner:n,rectBandPaddingInner:i,tickBandPaddingInner:a}=r.scale,c=Vq(t,s===`tick`?a:s===`bar`?n:i);if(Y(c))return{signal:`(1 - (${c.signal})) * ${e}`};if(o(c))return{signal:`${1-c} * ${e}`}}return{value:L2(r.view,e)-2}}function Cde(e,t,n){let{markDef:r,encoding:i,config:a,stack:o}=n,s=r.orient,c=n.scaleName(t),l=n.getScaleComponent(t),u=rY(t),d=nY(t),f=iY(t),p=n.scaleName(f),m=n.getScaleComponent(aY(t)),h=r.type===`tick`||s===`horizontal`&&t===`y`||s===`vertical`&&t===`x`,g;(i.size||r.size)&&(h?g=_3(`size`,n,{vgChannel:u,defaultRef:lX(r.size)}):X(TZ(r.type)));let _=!!g,v=Z1({channel:t,fieldDef:e,markDef:r,config:a,scaleType:(l||m)?.get(`type`),useVlSizeChannel:h});g||={[u]:Sde(u,p||c,m||l,a,v,!!e,r.type)};let y=C3(t,r,a,(l||m)?.get(`type`)===`band`&&a1(v)&&!_?`top`:`middle`),b=y===`xc`||y===`yc`,{offset:x,offsetType:S}=y3({channel:t,markDef:r,encoding:i,model:n,bandPosition:b?.5:0}),C=(b&&S!==`encoding`&&Z(e)&&e.timeUnit&&!i[d]?X1({fieldDef:e,markDef:r,config:a}):void 0)??(b?S===`encoding`?0:.5:Y(v)?{signal:`(1-${v})/2`}:a1(v)?(1-v.band)/2:0),w=_1({channel:t,channelDef:e,markDef:r,config:a,scaleName:c,scale:l,stack:o,offset:x,defaultRef:x3({model:n,defaultPos:`mid`,channel:t,scaleName:c,scale:l}),bandPosition:C});if(u)return{[y]:w,...g};{let e=tY(d),t=g[u],n=x?{...t,offset:x}:t;return{[y]:w,[e]:N(w)?[w[0],{...w[1],offset:n}]:{...w,offset:n}}}}function O3(e,t,n,r,i,a,o){if(LJ(e))return 0;let s=e===`x`||e===`y2`,c=s?-t/2:t/2;if(Y(n)||Y(i)||Y(r)||a){let e=fX(n),t=fX(i),l=fX(r),u=fX(a),d=a?`(${o} < ${u} ? ${s?``:`-`}0.5 * (${u} - (${o})) : ${c})`:c,f=l?`${l} + `:``,p=e?`(${e} ? -1 : 1) * `:``,m=t?`(${t} + ${d})`:d;return{signal:f+p+m}}return i||=0,r+(n?-i-c:+i+c)}function wde({fieldDef:e,fieldDef2:t,channel:n,model:r}){let{config:i,markDef:a,encoding:o}=r,s=r.getScaleComponent(n),c=r.scaleName(n),l=s?s.get(`type`):void 0,u=s.get(`reverse`),d=Z1({channel:n,fieldDef:e,markDef:a,config:i,scaleType:l}),f=(r.component.axes[n]?.[0])?.get(`translate`)??.5,p=fY(n)?hX(`binSpacing`,a,i)??0:0,m=nY(n),h=tY(n),g=tY(m),_=gX(`minBandSize`,a,i),{offset:v}=y3({channel:n,markDef:a,encoding:o,model:r,bandPosition:0}),{offset:y}=y3({channel:m,markDef:a,encoding:o,model:r,bandPosition:0}),b=x1({fieldDef:e,scaleName:c}),x=O3(n,p,u,f,v,_,b),S=O3(m,p,u,f,y??v,_,b),C=Y(d)?{signal:`(1-${d.signal})/2`}:a1(d)?(1-d.band)/2:.5,w=X1({fieldDef:e,fieldDef2:t,markDef:a,config:i});if(UY(e.bin)||e.timeUnit){let t=e.timeUnit&&w!==.5;return{[g]:k3({fieldDef:e,scaleName:c,bandPosition:C,offset:S,useRectOffsetField:t}),[h]:k3({fieldDef:e,scaleName:c,bandPosition:Y(C)?{signal:`1-${C.signal}`}:1-C,offset:x,useRectOffsetField:t})}}if(WY(e.bin)){let n=y1(e,c,{},{offset:S});if(Z(t))return{[g]:n,[h]:y1(t,c,{},{offset:x})};if(GY(e.bin)&&e.bin.step)return{[g]:n,[h]:{signal:`scale("${c}", ${$(e,{expr:`datum`})} + ${e.bin.step})`,offset:x}}}X(JZ(m))}function k3({fieldDef:e,scaleName:t,bandPosition:n,offset:r,useRectOffsetField:i}){return b1({scaleName:t,fieldOrDatumDef:e,bandPosition:n,offset:r,...i?{startSuffix:z4,endSuffix:B4}:{}})}var Tde=new Set([`aria`,`width`,`height`]);function A3(e,t){let{fill:n=void 0,stroke:r=void 0}=t.color===`include`?v3(e):{};return{...Ede(e.markDef,t),...j3(`fill`,n),...j3(`stroke`,r),..._3(`opacity`,e),..._3(`fillOpacity`,e),..._3(`strokeOpacity`,e),..._3(`strokeWidth`,e),..._3(`strokeDash`,e),...gde(e),...p3(e),...d3(e,`href`),...pde(e)}}function j3(e,t){return t?{[e]:t}:{}}function Ede(e,t){return nX.reduce((n,r)=>(!Tde.has(r)&&J(e,r)&&t[r]!==`ignore`&&(n[r]=lX(e[r])),n),{})}function M3(e){let{config:t,markDef:n}=e,r=new Set;if(e.forEachFieldDef((i,a)=>{let o;if(!EY(a)||!(o=e.getScaleType(a)))return;let s=RY(i.aggregate);if(p1(f1({scaleChannel:a,markDef:n,config:t,scaleType:o,isCountAggregate:s}))){let t=e.vgField(a,{expr:`datum`,binSuffix:e.stack?.impute?`mid`:void 0});t&&r.add(t)}}),r.size>0)return{defined:{signal:[...r].map(e=>JQ(e,!0)).join(` && `)}}}function N3(e,t){if(t!==void 0)return{[e]:lX(t)}}var P3=`voronoi`,F3={defined:e=>e.type===`point`&&e.nearest,parse:(e,t)=>{if(t.events)for(let n of t.events)n.markname=e.getName(P3)},marks:(e,t,n)=>{let{x:r,y:i}=t.project.hasChannel,a=e.mark;if(q$(a))return X(jX(a)),n;let o={name:e.getName(P3),type:`path`,interactive:!0,aria:!1,from:{data:e.getName(`marks`)},encode:{update:{fill:{value:`transparent`},strokeWidth:{value:.35},stroke:{value:`transparent`},isVoronoi:{value:!0},...p3(e,{reactiveGeom:!0})}},transform:[{type:`voronoi`,x:{expr:r||!i?`datum.datum.x || 0`:`0`},y:{expr:i||!r?`datum.datum.y || 0`:`0`},size:[e.getSizeSignalRef(`width`),e.getSizeSignalRef(`height`)]}]},s=0,c=!1;return n.forEach((t,n)=>{let r=t.name??``;r===e.component.mark[0].name?s=n:r.includes(P3)&&(c=!0)}),c||n.splice(s+1,0,o),n}},I3={defined:e=>e.type===`point`&&e.resolve===`global`&&e.bind&&e.bind!==`scales`&&!T2(e.bind),parse:(e,t,n)=>Q3(t,n),topLevelSignals:(e,t,n)=>{let r=t.name,i=t.project,a=t.bind,o=t.init?.[0],s=F3.defined(t)?`(item().isVoronoi ? datum.datum : datum)`:`datum`;return i.items.forEach((e,i)=>{let c=Oq(`${r}_${e.field}`);n.filter(e=>e.name===c).length||n.unshift({name:c,...o?{init:e3(o[i])}:{value:null},on:t.events?[{events:t.events,update:`datum && item().mark.marktype !== 'group' ? ${s}[${p(e.field)}] : null`}]:[],bind:a[e.field]??a[e.channel]??a})}),n},signals:(e,t,n)=>{let r=t.name,i=t.project,a=n.find(e=>e.name===r+q3),o=r+W4,s=i.items.map(e=>Oq(`${r}_${e.field}`)),c=s.map(e=>`${e} !== null`).join(` && `);return s.length&&(a.update=`${c} ? {fields: ${o}, values: [${s.join(`, `)}]} : null`),delete a.value,delete a.on,n}},L3=`_toggle`,R3={defined:e=>e.type===`point`&&!$3(e)&&!!e.toggle,signals:(e,t,n)=>n.concat({name:t.name+L3,value:!1,on:[{events:t.events,update:t.toggle}]}),modifyExpr:(e,t)=>{let n=t.name+q3,r=t.name+L3;return`${r} ? null : ${n}, ${t.resolve===`global`?`${r} ? null : true, `:`${r} ? null : {unit: ${X3(e)}}, `}${r} ? ${n} : null`}},Dde={defined:e=>e.clear!==void 0&&e.clear!==!1&&!$3(e),parse:(e,t)=>{t.clear&&=P(t.clear)?gz(t.clear,`view`):t.clear},topLevelSignals:(e,t,n)=>{if(I3.defined(t))for(let e of t.project.items){let r=n.findIndex(n=>n.name===Oq(`${t.name}_${e.field}`));r!==-1&&n[r].on.push({events:t.clear,update:`null`})}return n},signals:(e,t,n)=>{function r(e,r){e!==-1&&n[e].on&&n[e].on.push({events:t.clear,update:r})}if(t.type===`interval`)for(let e of t.project.items){let t=n.findIndex(t=>t.name===e.signals.visual);r(t,`[0, 0]`),t===-1&&r(n.findIndex(t=>t.name===e.signals.data),`null`)}else{let e=n.findIndex(e=>e.name===t.name+q3);r(e,`null`),R3.defined(t)&&(e=n.findIndex(e=>e.name===t.name+L3),r(e,`false`))}return n}},z3={defined:e=>{let t=e.resolve===`global`&&e.bind&&T2(e.bind),n=e.project.items.length===1&&e.project.items[0].field!==w2;return t&&!n&&X(IX),t&&n},parse:(e,t,n)=>{let r=K(n);if(r.select=P(r.select)?{type:r.select,toggle:t.toggle}:{...r.select,toggle:t.toggle},Q3(t,r),M(n.select)&&(n.select.on||n.select.clear)){let e=`event.item && indexof(event.item.mark.role, "legend") < 0`;for(let n of t.events)n.filter=k(n.filter??[]),n.filter.includes(e)||n.filter.push(e)}let i=E2(t.bind)?t.bind.legend:`click`;t.bind={legend:{merge:P(i)?gz(i,`view`):k(i)}}},topLevelSignals:(e,t,n)=>{let r=t.name,i=E2(t.bind)&&t.bind.legend,a=e=>t=>{let n=K(t);return n.markname=e,n};for(let e of t.project.items){if(!e.hasLegend)continue;let o=`${Oq(e.field)}_legend`,s=`${r}_${o}`;if(n.filter(e=>e.name===s).length===0){let e=i.merge.map(a(`${o}_symbols`)).concat(i.merge.map(a(`${o}_labels`))).concat(i.merge.map(a(`${o}_entries`)));n.unshift({name:s,...t.init?{}:{value:null},on:[{events:e,update:`isDefined(datum.value) ? datum.value : item().items[0].items[0].datum.value`,force:!0},{events:i.merge,update:`!event.item || !datum ? null : ${s}`,force:!0}]})}}return n},signals:(e,t,n)=>{let r=t.name,i=t.project,a=n.find(e=>e.name===r+q3),o=r+W4,s=i.items.filter(e=>e.hasLegend).map(e=>Oq(`${r}_${Oq(e.field)}_legend`)),c=`${s.map(e=>`${e} !== null`).join(` && `)} ? {fields: ${o}, values: [${s.join(`, `)}]} : null`;t.events&&s.length>0?a.on.push({events:s.map(e=>({signal:e})),update:c}):s.length>0&&(a.update=c,delete a.value,delete a.on);let l=n.find(e=>e.name===r+L3),u=E2(t.bind)&&t.bind.legend;return l&&(t.events?l.on.push({...l.on[0],events:u}):l.on[0].events=u),n}};function Ode(e,t,n){let r=e.fieldDef(t)?.field;for(let i of wq(e.component.selection??{})){let e=i.project.hasField[r]??i.project.hasChannel[t];if(e&&z3.defined(i)){let t=n.get(`selections`)??[];t.push(i.name),n.set(`selections`,t,!1),e.hasLegend=!0}}}var B3=`_translate_anchor`,V3=`_translate_delta`,kde={defined:e=>e.type===`interval`&&e.translate,signals:(e,t,n)=>{let r=t.name,i=r3.defined(t),a=r+B3,{x:o,y:s}=t.project.hasChannel,c=gz(t.translate,`scope`);return i||(c=c.map(e=>(e.between[0].markname=r+o3,e))),n.push({name:a,value:{},on:[{events:c.map(e=>e.between[0]),update:`{x: x(unit), y: y(unit)${o===void 0?``:`, extent_x: ${i?i3(e,tJ):`slice(${o.signals.visual})`}`}${s===void 0?``:`, extent_y: ${i?i3(e,nJ):`slice(${s.signals.visual})`}`}}`}]},{name:r+V3,value:{},on:[{events:c,update:`{x: ${a}.x - x(unit), y: ${a}.y - y(unit)}`}]}),o!==void 0&&H3(e,t,o,`width`,n),s!==void 0&&H3(e,t,s,`height`,n),n}};function H3(e,t,n,r,i){let a=t.name,o=a+B3,s=a+V3,c=n.channel,l=r3.defined(t),u=i.find(e=>e.name===n.signals[l?`data`:`visual`]),d=e.getSizeSignalRef(r).signal,f=e.getScaleComponent(c),p=f?.get(`type`),m=f?.get(`reverse`),h=l?c===tJ?m?``:`-`:m?`-`:``:``,g=`${o}.extent_${c}`,_=`${h}${s}.${c} / ${l?`${d}`:`span(${g})`}`,v=`${!l||!f?`panLinear`:p===`log`?`panLog`:p===`symlog`?`panSymlog`:p===`pow`?`panPow`:`panLinear`}(${g}, ${_}${l?p===`pow`?`, ${f.get(`exponent`)??1}`:p===`symlog`?`, ${f.get(`constant`)??1}`:``:``})`;u.on.push({events:{signal:s},update:l?v:`clampRange(${v}, 0, ${d})`})}var U3=`_zoom_anchor`,W3=`_zoom_delta`,Ade={defined:e=>e.type===`interval`&&e.zoom,signals:(e,t,n)=>{let r=t.name,i=r3.defined(t),a=r+W3,{x:o,y:s}=t.project.hasChannel,c=p(e.scaleName(tJ)),l=p(e.scaleName(nJ)),u=gz(t.zoom,`scope`);return i||(u=u.map(e=>(e.markname=r+o3,e))),n.push({name:r+U3,on:[{events:u,update:i?`{${[c?`x: invert(${c}, x(unit))`:``,l?`y: invert(${l}, y(unit))`:``].filter(e=>e).join(`, `)}}`:`{x: x(unit), y: y(unit)}`}]},{name:a,on:[{events:u,force:!0,update:`pow(1.001, event.deltaY * pow(16, event.deltaMode))`}]}),o!==void 0&&G3(e,t,o,`width`,n),s!==void 0&&G3(e,t,s,`height`,n),n}};function G3(e,t,n,r,i){let a=t.name,o=n.channel,s=r3.defined(t),c=i.find(e=>e.name===n.signals[s?`data`:`visual`]),l=e.getSizeSignalRef(r).signal,u=e.getScaleComponent(o),d=u?.get(`type`),f=s?i3(e,o):c.name,p=a+W3,m=`${a}${U3}.${o}`,h=`${!s||!u?`zoomLinear`:d===`log`?`zoomLog`:d===`symlog`?`zoomSymlog`:d===`pow`?`zoomPow`:`zoomLinear`}(${f}, ${m}, ${p}${s?d===`pow`?`, ${u.get(`exponent`)??1}`:d===`symlog`?`, ${u.get(`constant`)??1}`:``:``})`;c.on.push({events:{signal:p},update:s?h:`clampRange(${h}, 0, ${l})`})}var K3=`_store`,q3=`_tuple`,jde=`_modify`,J3=`vlSelectionResolve`,Y3=[rde,dde,ede,R3,I3,r3,z3,Dde,kde,Ade,F3];function Mde(e){let t=e.parent;for(;t&&!$8(t);)t=t.parent;return t}function X3(e,{escape:t}={escape:!0}){let n=t?p(e.name):e.name,r=Mde(e);if(r){let{facet:e}=r;for(let t of GJ)e[t]&&(n+=` + '__facet_${t}_' + (facet[${p(r.vgField(t))}])`)}return n}function Z3(e){return wq(e.component.selection??{}).reduce((e,t)=>e||t.project.hasSelectionId,!1)}function Q3(e,t){(P(t.select)||!t.select.on)&&delete e.events,(P(t.select)||!t.select.clear)&&delete e.clear,(P(t.select)||!t.select.toggle)&&delete e.toggle}function $3(e){return e.events?.find(e=>`type`in e&&e.type===`timer`)}function e6(e){let t=[];return e.type===`Identifier`?[e.name]:e.type===`Literal`?[e.value]:(e.type===`MemberExpression`&&(t.push(...e6(e.object)),t.push(...e6(e.property))),t)}function t6(e){return e.object.type===`MemberExpression`?t6(e.object):e.object.name===`datum`}function n6(e){let t=PK(e),n=new Set;return t.visit(e=>{e.type===`MemberExpression`&&t6(e)&&n.add(e6(e).slice(1).join(`.`))}),n}var r6=class e extends P4{model;filter;expr;_dependentFields;clone(){return new e(null,this.model,K(this.filter))}constructor(e,t,n){super(e),this.model=t,this.filter=n,this.expr=o6(this.model,this.filter,this),this._dependentFields=n6(this.expr)}dependentFields(){return this._dependentFields}producedFields(){return new Set}assemble(){return{type:`filter`,expr:this.expr}}hash(){return`Filter ${this.expr}`}};function Nde(e,t){let n={},r=e.config.selection;if(!t||!t.length)return n;let i=0;for(let a of t){let t=Oq(a.name),o=a.select,s=P(o)?o:o.type,c=M(o)?K(o):{type:s},l=r[s];for(let e in l)e!==`fields`&&e!==`encodings`&&(e===`mark`&&(c.mark={...l.mark,...c.mark}),(c[e]===void 0||c[e]===!0)&&(c[e]=K(l[e]??c[e])));let u=n[t]={...c,name:t,type:s,init:a.value,bind:a.bind,events:P(c.on)?gz(c.on,`scope`):k(K(c.on))};if($3(u)&&(i++,i>1)){delete n[t];continue}let d=K(a);for(let t of Y3)t.defined(u)&&t.parse&&t.parse(e,u,d)}return i>1&&X(UX),n}function i6(e,t,n,r=`datum`){let i=P(t)?t:t.param,a=Oq(i),o=p(a+K3),s;try{s=e.getSelectionComponent(a,i)}catch{return`!!${a}`}if(s.project.timeUnit){let t=n??e.component.data.raw,r=s.project.timeUnit.clone();t.parent?r.insertAsParentOf(t):t.parent=r}let c=`${s.project.hasSelectionId?`vlSelectionIdTest(`:`vlSelectionTest(`}${o}, ${r}${s.resolve===`global`?`)`:`, ${p(s.resolve)})`}`,l=`length(data(${o}))`;return t.empty===!1?`${l} && ${c}`:`!${l} || ${c}`}function a6(e,t,n){let r=Oq(t),i=n.encoding,a=n.field,o;try{o=e.getSelectionComponent(r,t)}catch{return r}if(!i&&!a)a=o.project.items[0].field,o.project.items.length>1&&X(GX(a));else if(i&&!a){let e=o.project.items.filter(e=>e.channel===i);!e.length||e.length>1?(a=o.project.items[0].field,X(KX(e,i,n,a))):a=e[0].field}return`${o.name}[${p(Lq(a))}]`}function Pde(e,t){for(let[n,r]of Tq(e.component.selection??{})){let i=e.getName(`lookup_${n}`);e.component.data.outputNodes[i]=r.materialized=new F4(new r6(t,e,{param:n}),i,M4.Lookup,e.component.data.outputNodeRefCounts)}}function o6(e,t,n){return kq(t,t=>P(t)?t:FQ(t)?i6(e,t,n):qQ(t))}function Fde(e,t){if(e)return N(e)&&!ZY(e)?e.map(e=>E0(e,t)).join(`, `):e}function s6(e,t,n,r){e.encode??={},e.encode[t]??={},e.encode[t].update??={},e.encode[t].update[n]=r}function c6(e,t,n,r={header:!1}){let{disable:i,orient:a,scale:o,labelExpr:s,title:c,zindex:l,...u}=e.combine();if(!i){for(let e in u){let n=e,r=_le[n],i=u[n];if(r&&r!==t&&r!==`both`)delete u[n];else if(B0(i)){let{condition:e,...t}=i,r=k(e),a=z0[n];if(a){let{vgProp:e,part:i}=a;s6(u,i,e,[...r.map(e=>{let{test:t,...n}=e;return{test:o6(null,t),...n}}),t]),delete u[n]}else a===null&&(u[n]={signal:r.map(e=>{let{test:t,...n}=e;return`${o6(null,t)} ? ${dX(n)} : `}).join(``)+dX(t)})}else if(Y(i)){let e=z0[n];if(e){let{vgProp:t,part:r}=e;s6(u,r,t,i),delete u[n]}}fq([`labelAlign`,`labelBaseline`],n)&&u[n]===null&&delete u[n]}if(t===`grid`){if(!u.grid)return;if(u.encode){let{grid:e}=u.encode;u.encode={...e?{grid:e}:{}},Cq(u.encode)&&delete u.encode}return{scale:o,orient:a,...u,domain:!1,labels:!1,aria:!1,maxExtent:0,minExtent:0,ticks:!1,zindex:Vq(l,0)}}{if(!r.header&&e.mainExtracted)return;if(s!==void 0){let e=s;u.encode?.labels?.update&&Y(u.encode.labels.update.text)&&(e=Rq(s,`datum.label`,u.encode.labels.update.text.signal)),s6(u,`labels`,`text`,{signal:e})}if(u.labelAlign===null&&delete u.labelAlign,u.encode){for(let t of V0)e.hasAxisPart(t)||delete u.encode[t];Cq(u.encode)&&delete u.encode}let t=Fde(c,n);return{scale:o,orient:a,grid:!1,...t?{title:t}:{},...u,...n.aria===!1?{aria:!1}:{},zindex:Vq(l,0)}}}}function l6(e){let{axes:t}=e.component,n=[];for(let r of dY)if(t[r]){for(let i of t[r])if(!i.get(`disable`)&&!i.get(`gridScale`)){let t=r===`x`?`height`:`width`,i=e.getSizeSignalRef(t).signal;t!==i&&n.push({name:t,update:i})}}return n}function Ide(e,t){let{x:n=[],y:r=[]}=e;return[...n.map(e=>c6(e,`grid`,t)),...r.map(e=>c6(e,`grid`,t)),...n.map(e=>c6(e,`main`,t)),...r.map(e=>c6(e,`main`,t))].filter(e=>e)}function u6(e,t,n,r){return Object.assign.apply(null,[{},...e.map(e=>{if(e===`axisOrient`){let e=n===`x`?`bottom`:`left`,i=t[n===`x`?`axisBottom`:`axisLeft`]||{},a=t[n===`x`?`axisTop`:`axisRight`]||{},o=new Set([...q(i),...q(a)]),s={};for(let t of o.values())s[t]={signal:`${r.signal} === "${e}" ? ${fX(i[t])} : ${fX(a[t])}`};return s}return t[e]})])}function Lde(e,t,n,r){let i=t===`band`?[`axisDiscrete`,`axisBand`]:t===`point`?[`axisDiscrete`,`axisPoint`]:f$(t)?[`axisQuantitative`]:t===`time`||t===`utc`?[`axisTemporal`]:[],a=e===`x`?`axisX`:`axisY`,o=Y(n)?`axisOrient`:`axis${jq(n)}`,s=[...i,...i.map(e=>a+e.substr(4))],c=[`axis`,o,a];return{vlOnlyAxisConfig:u6(s,r,e,n),vgAxisConfig:u6(c,r,e,n),axisConfigStyle:Rde([...c,...s],r)}}function Rde(e,t){let n=[{}];for(let r of e){let e=t[r]?.style;if(e){e=k(e);for(let r of e)n.push(t.style[r])}}return Object.assign.apply(null,n)}function d6(e,t,n,r={}){let i=vX(e,n,t);if(i!==void 0)return{configFrom:`style`,configValue:i};for(let t of[`vlOnlyAxisConfig`,`vgAxisConfig`,`axisConfigStyle`])if(r[t]?.[e]!==void 0)return{configFrom:t,configValue:r[t][e]};return{}}var f6={scale:({model:e,channel:t})=>e.scaleName(t),format:({format:e})=>e,formatType:({formatType:e})=>e,grid:({fieldOrDatumDef:e,axis:t,scaleType:n})=>t.grid??zde(n,e),gridScale:({model:e,channel:t})=>Bde(e,t),labelAlign:({axis:e,labelAngle:t,orient:n,channel:r})=>e.labelAlign||h6(t,n,r),labelAngle:({labelAngle:e})=>e,labelBaseline:({axis:e,labelAngle:t,orient:n,channel:r})=>e.labelBaseline||m6(t,n,r),labelFlush:({axis:e,fieldOrDatumDef:t,channel:n})=>e.labelFlush??Hde(t.type,n),labelOverlap:({axis:e,fieldOrDatumDef:t,scaleType:n})=>e.labelOverlap??Ude(t.type,n,Z(t)&&!!t.timeUnit,Z(t)?t.sort:void 0),orient:({orient:e})=>e,tickCount:({channel:e,model:t,axis:n,fieldOrDatumDef:r,scaleType:i})=>{let a=e===`x`?`width`:e===`y`?`height`:void 0,o=a?t.getSizeSignalRef(a):void 0;return n.tickCount??Gde({fieldOrDatumDef:r,scaleType:i,size:o,values:n.values})},tickMinStep:({axis:e,format:t,fieldOrDatumDef:n})=>e.tickMinStep??Kde({format:t,fieldOrDatumDef:n}),title:({axis:e,model:t,channel:n})=>{if(e.title!==void 0)return e.title;let r=g6(t,n);if(r!==void 0)return r;let i=t.typedFieldDef(n),a=n===`x`?`x2`:`y2`,o=t.fieldDef(a);return bX(i?[J1(i)]:[],Z(o)?[J1(o)]:[])},values:({axis:e,fieldOrDatumDef:t})=>qde(e,t),zindex:({axis:e,fieldOrDatumDef:t,mark:n})=>e.zindex??Jde(n,t)};function zde(e,t){return!g$(e)&&Z(t)&&!UY(t?.bin)&&!WY(t?.bin)}function Bde(e,t){let n=t===`x`?`y`:`x`;if(e.getScaleComponent(n))return e.scaleName(n)}function Vde(e,t,n,r,i){let a=t?.labelAngle;if(a!==void 0)return Y(a)?a:qq(a);{let{configValue:a}=d6(`labelAngle`,r,t?.style,i);return a===void 0?n===tJ&&fq([n$,e$],e.type)&&!(Z(e)&&e.timeUnit)?270:void 0:qq(a)}}function p6(e){return`(((${e.signal} % 360) + 360) % 360)`}function m6(e,t,n,r){if(e!==void 0){if(n===`x`){if(Y(e)){let n=p6(e);return{signal:`(45 < ${n} && ${n} < 135) || (225 < ${n} && ${n} < 315) ? "middle" :(${n} <= 45 || 315 <= ${n}) === ${Y(t)?`(${t.signal} === "top")`:t===`top`} ? "bottom" : "top"`}}if(45<e&&e<135||225<e&&e<315)return`middle`;if(Y(t)){let n=e<=45||315<=e?`===`:`!==`;return{signal:`${t.signal} ${n} "top" ? "bottom" : "top"`}}return(e<=45||315<=e)==(t===`top`)?`bottom`:`top`}if(Y(e)){let n=p6(e),i=Y(t)?`(${t.signal} === "left")`:t===`left`;return{signal:`${n} <= 45 || 315 <= ${n} || (135 <= ${n} && ${n} <= 225) ? ${r?`"middle"`:`null`} : (45 <= ${n} && ${n} <= 135) === ${i} ? "top" : "bottom"`}}if(e<=45||315<=e||135<=e&&e<=225)return r?`middle`:null;if(Y(t)){let n=45<=e&&e<=135?`===`:`!==`;return{signal:`${t.signal} ${n} "left" ? "top" : "bottom"`}}return(45<=e&&e<=135)==(t===`left`)?`top`:`bottom`}}function h6(e,t,n){if(e===void 0)return;let r=n===`x`,i=r?0:90,a=r?`bottom`:`left`;if(Y(e)){let n=p6(e),o=Y(t)?`(${t.signal} === "${a}")`:t===a;return{signal:`(${i?`(${n} + 90)`:n} % 180 === 0) ? ${r?null:`"center"`} :(${i} < ${n} && ${n} < ${180+i}) === ${o} ? "left" : "right"`}}if((e+i)%180==0)return r?null:`center`;if(Y(t)){let n=i<e&&e<180+i?`===`:`!==`;return{signal:`${`${t.signal} ${n} "${a}"`} ? "left" : "right"`}}return(i<e&&e<180+i)==(t===a)?`left`:`right`}function Hde(e,t){if(t===`x`&&fq([`quantitative`,`temporal`],e))return!0}function Ude(e,t,n,r){if(n&&!M(r)||e!==`nominal`&&e!==`ordinal`)return t===`log`||t===`symlog`?`greedy`:!0}function Wde(e){return e===`x`?`bottom`:`left`}function Gde({fieldOrDatumDef:e,scaleType:t,size:n,values:r}){if(!r&&!g$(t)&&t!==`log`){if(Z(e)){if(UY(e.bin))return{signal:`ceil(${n.signal}/10)`};if(e.timeUnit&&fq([`month`,`hours`,`day`,`quarter`],kQ(e.timeUnit)?.unit))return}return{signal:`ceil(${n.signal}/40)`}}}function Kde({format:e,fieldOrDatumDef:t}){if(e===`d`)return 1;if(Z(t)){let{timeUnit:e}=t;if(e){let t=jQ(e);if(t)return{signal:t}}}}function g6(e,t){let n=t===`x`?`x2`:`y2`,r=e.fieldDef(t),i=e.fieldDef(n),a=r?r.title:void 0,o=i?i.title:void 0;if(a&&o)return xX(a,o);if(a)return a;if(o)return o;if(a!==void 0)return a;if(o!==void 0)return o}function qde(e,t){let n=e.values;if(N(n))return L0(t,n);if(Y(n))return n}function Jde(e,t){return e===`rect`&&_0(t)?1:0}var _6=class e extends P4{transform;_dependentFields;clone(){return new e(null,K(this.transform))}constructor(e,t){super(e),this.transform=t,this._dependentFields=n6(this.transform.calculate)}static parseAllForSortIndex(t,n){return n.forEachFieldDef((n,r)=>{if(d0(n)&&H1(n.sort)){let{field:i,timeUnit:a}=n,o=n.sort,s=o.map((e,t)=>`${qQ({field:i,timeUnit:a,equal:e})} ? ${t} : `).join(``)+o.length;t=new e(t,{calculate:s,as:v6(n,r,{forAs:!0})})}}),t}producedFields(){return new Set([this.transform.as])}dependentFields(){return this._dependentFields}assemble(){return{type:`formula`,expr:this.transform.calculate,as:this.transform.as}}hash(){return`Calculate ${uq(this.transform)}`}};function v6(e,t,n){return $(e,{prefix:t,suffix:`sort_index`,...n})}function y6(e,t){return fq([`top`,`bottom`],t)?`column`:fq([`left`,`right`],t)||e===`row`?`row`:`column`}function b6(e,t,n,r){let i=r===`row`?n.headerRow:r===`column`?n.headerColumn:n.headerFacet;return Vq((t||{})[e],i[e],n.header[e])}function x6(e,t,n,r){let i={};for(let a of e){let e=b6(a,t||{},n,r);e!==void 0&&(i[a]=e)}return i}var S6=[`row`,`column`],C6=[`header`,`footer`];function Yde(e,t){let n=e.component.layoutHeaders[t].title,r=e.config?e.config:void 0,i=e.component.layoutHeaders[t].facetFieldDef?e.component.layoutHeaders[t].facetFieldDef:void 0,{titleAnchor:a,titleAngle:o,titleOrient:s}=x6([`titleAnchor`,`titleAngle`,`titleOrient`],i.header,r,t),c=y6(t,s),l=qq(o);return{name:`${t}-title`,type:`group`,role:`${c}-title`,title:{text:n,...t===`row`?{orient:`left`}:{},style:`guide-title`,...T6(l,c),...w6(c,l,a),...D6(r,i,t,Rle,b2)}}}function w6(e,t,n=`middle`){switch(n){case`start`:return{align:`left`};case`end`:return{align:`right`}}let r=h6(t,e===`row`?`left`:`top`,e===`row`?`y`:`x`);return r?{align:r}:{}}function T6(e,t){let n=m6(e,t===`row`?`left`:`top`,t===`row`?`y`:`x`,!0);return n?{baseline:n}:{}}function Xde(e,t){let n=e.component.layoutHeaders[t],r=[];for(let i of C6)if(n[i])for(let a of n[i]){let o=Qde(e,t,i,n,a);o!=null&&r.push(o)}return r}function Zde(e,t){let{sort:n}=e;return V1(n)?{field:$(n,{expr:`datum`}),order:n.order??`ascending`}:N(n)?{field:v6(e,t,{expr:`datum`}),order:`ascending`}:{field:$(e,{expr:`datum`}),order:n??`ascending`}}function E6(e,t,n){let{format:r,formatType:i,labelAngle:a,labelAnchor:o,labelOrient:s,labelExpr:c}=x6([`format`,`formatType`,`labelAngle`,`labelAnchor`,`labelOrient`,`labelExpr`],e.header,n,t),l=E1({fieldOrDatumDef:e,format:r,formatType:i,expr:`parent`,config:n}).signal,u=y6(t,s);return{text:{signal:c?Rq(Rq(c,`datum.label`,l),`datum.value`,$(e,{expr:`parent`})):l},...t===`row`?{orient:`left`}:{},style:`guide-label`,frame:`group`,...T6(a,u),...w6(u,a,o),...D6(n,e,t,zle,x2)}}function Qde(e,t,n,r,i){if(i){let a=null,{facetFieldDef:o}=r,s=e.config?e.config:void 0;if(o&&i.labels){let{labelOrient:e}=x6([`labelOrient`],o.header,s,t);(t===`row`&&!fq([`top`,`bottom`],e)||t===`column`&&!fq([`left`,`right`],e))&&(a=E6(o,t,s))}let c=$8(e)&&!U1(e.facet),l=i.axes,u=l?.length>0;if(a||u){let s=t===`row`?`height`:`width`;return{name:e.getName(`${t}_${n}`),type:`group`,role:`${t}-${n}`,...r.facetFieldDef?{from:{data:e.getName(`${t}_domain`)},sort:Zde(o,t)}:{},...u&&c?{from:{data:e.getName(`facet_domain_${t}`)}}:{},...a?{title:a}:{},...i.sizeSignal?{encode:{update:{[s]:i.sizeSignal}}}:{},...u?{axes:l}:{}}}}return null}var $de={column:{start:0,end:1},row:{start:1,end:0}};function efe(e,t){return $de[t][e]}function tfe(e,t){let n={};for(let r of GJ){let i=e[r];if(i?.facetFieldDef){let{titleAnchor:e,titleOrient:a}=x6([`titleAnchor`,`titleOrient`],i.facetFieldDef.header,t,r),o=y6(r,a),s=efe(e,o);s!==void 0&&(n[o]=s)}}return Cq(n)?void 0:n}function D6(e,t,n,r,i){let a={};for(let o of r){if(!i[o])continue;let r=b6(o,t?.header,e,n);r!==void 0&&(a[i[o]]=r)}return a}function O6(e){return[...k6(e,`width`),...k6(e,`height`),...k6(e,`childWidth`),...k6(e,`childHeight`)]}function k6(e,t){let n=t===`width`?`x`:`y`,r=e.component.layoutSize.get(t);if(r==null||r===`merged`)return[];let i=e.getSizeSignalRef(t).signal;if(r===`step`){let t=e.getScaleComponent(n);if(t){let r=t.get(`type`),a=t.get(`range`);if(g$(r)&&QY(a)){let r=e.scaleName(n);return $8(e.parent)&&e.parent.component.resolve.scale[n]===`independent`?[A6(r,a)]:[A6(r,a),{name:i,update:j6(r,t,`domain('${r}').length`)}]}}throw Error(`layout size is step although width/height is not step.`)}if(r==`container`){let t=i.endsWith(`width`),n=t?`containerSize()[0]`:`containerSize()[1]`,r=`isFinite(${n}) ? ${n} : ${I2(e.config.view,t?`width`:`height`)}`;return[{name:i,init:r,on:[{update:r,events:`window:resize`}]}]}return[{name:i,value:r}]}function A6(e,t){let n=`${e}_step`;return Y(t.step)?{name:n,update:t.step.signal}:{name:n,value:t.step}}function j6(e,t,n){let r=t.get(`type`),i=t.get(`padding`),a=Vq(t.get(`paddingOuter`),i),o=t.get(`paddingInner`);return o=r===`band`?o===void 0?i:o:1,`bandspace(${n}, ${fX(o)}, ${fX(a)}) * ${e}_step`}function M6(e){return e===`childWidth`?`width`:e===`childHeight`?`height`:e}function N6(e,t){return q(e).reduce((n,r)=>({...n,...u3({model:t,channelDef:e[r],vgChannel:r,mainRefFn:e=>lX(e.value),invalidValueRef:void 0})}),{})}function P6(e,t){if($8(t))return e===`theta`?`independent`:`shared`;if(t5(t))return`shared`;if(e5(t))return fY(e)||e===`theta`||e===`radius`?`independent`:`shared`;throw Error(`invalid model type for resolve`)}function F6(e,t){let n=e.scale[t],r=fY(t)?`axis`:`legend`;return n===`independent`?(e[r][t]===`shared`&&X(MZ(t)),`independent`):e[r][t]||`shared`}var I6=q({...Vle,disable:1,labelExpr:1,selections:1,opacity:1,shape:1,stroke:1,fill:1,size:1,strokeWidth:1,strokeDash:1,encode:1}),nfe=class extends y4{},L6={symbols:rfe,gradient:ife,labels:afe,entries:ofe};function rfe(e,{fieldOrDatumDef:t,model:n,channel:r,legendCmpt:i,legendType:a}){if(a!==`symbol`)return;let{markDef:o,encoding:s,config:c,mark:l}=n,u=o.filled&&l!==`trail`,d={...pX({},n,$$),...v3(n,{filled:u})},f=i.get(`symbolOpacity`)??c.legend.symbolOpacity,p=i.get(`symbolFillColor`)??c.legend.symbolFillColor,m=i.get(`symbolStrokeColor`)??c.legend.symbolStrokeColor,h=f===void 0?R6(s.opacity)??o.opacity:void 0;if(d.fill){if(r===`fill`||u&&r===gJ)delete d.fill;else if(J(d.fill,`field`))p?delete d.fill:(d.fill=lX(c.legend.symbolBaseFillColor??`black`),d.fillOpacity=lX(h??1));else if(N(d.fill)){let e=z6(s.fill??s.color)??o.fill??(u&&o.color);e&&(d.fill=lX(e))}}if(d.stroke){if(r===`stroke`||!u&&r===gJ)delete d.stroke;else if(J(d.stroke,`field`)||m)delete d.stroke;else if(N(d.stroke)){let e=Vq(z6(s.stroke||s.color),o.stroke,u?o.color:void 0);e&&(d.stroke={value:e})}}if(r!==SJ){let e=Z(t)&&V6(n,i,t);e?d.opacity=[{test:e,...lX(h??1)},lX(c.legend.unselectedOpacity)]:h&&(d.opacity=lX(h))}return d={...d,...e},Cq(d)?void 0:d}function ife(e,{model:t,legendType:n,legendCmpt:r}){if(n!==`gradient`)return;let{config:i,markDef:a,encoding:o}=t,s={},c=(r.get(`gradientOpacity`)??i.legend.gradientOpacity)===void 0?R6(o.opacity)||a.opacity:void 0;return c&&(s.opacity=lX(c)),s={...s,...e},Cq(s)?void 0:s}function afe(e,{fieldOrDatumDef:t,model:n,channel:r,legendCmpt:i}){let a=n.legend(r)||{},o=n.config,s=Z(t)?V6(n,i,t):void 0,c=s?[{test:s,value:1},{value:o.legend.unselectedOpacity}]:void 0,{format:l,formatType:u}=a,d;w1(u)?d=O1({fieldOrDatumDef:t,field:`datum.value`,format:l,formatType:u,config:o}):l===void 0&&u===void 0&&o.customFormatTypes&&(t.type===`quantitative`&&o.numberFormatType?d=O1({fieldOrDatumDef:t,field:`datum.value`,format:o.numberFormat,formatType:o.numberFormatType,config:o}):t.type===`temporal`&&o.timeFormatType&&Z(t)&&t.timeUnit===void 0&&(d=O1({fieldOrDatumDef:t,field:`datum.value`,format:o.timeFormat,formatType:o.timeFormatType,config:o})));let f={...c?{opacity:c}:{},...d?{text:d}:{},...e};return Cq(f)?void 0:f}function ofe(e,{legendCmpt:t}){return t.get(`selections`)?.length?{...e,fill:{value:`transparent`}}:e}function R6(e){return B6(e,(e,t)=>Math.max(e,t.value))}function z6(e){return B6(e,(e,t)=>Vq(e,t.value))}function B6(e,t){if(r0(e))return k(e.condition).reduce(t,e.value);if(u0(e))return e.value}function V6(e,t,n){let r=t.get(`selections`);if(!r?.length)return;let i=p(n.field);return r.map(e=>`(!length(data(${p(Oq(e)+K3)})) || (${e}[${i}] && indexof(${e}[${i}], datum.value) >= 0))`).join(` || `)}var H6={direction:({direction:e})=>e,format:({fieldOrDatumDef:e,legend:t,config:n})=>{let{format:r,formatType:i}=t;return k1(e,e.type,r,i,n,!1)},formatType:({legend:e,fieldOrDatumDef:t,scaleType:n})=>{let{formatType:r}=e;return A1(r,t,n)},gradientLength:e=>{let{legend:t,legendConfig:n}=e;return t.gradientLength??n.gradientLength??pfe(e)},labelOverlap:({legend:e,legendConfig:t,scaleType:n})=>e.labelOverlap??t.labelOverlap??mfe(n),symbolType:({legend:e,markDef:t,channel:n,encoding:r})=>e.symbolType??cfe(t.type,n,r.shape,t.shape),title:({fieldOrDatumDef:e,config:t})=>w0(e,t,{allowDisabling:!0}),type:({legendType:e,scaleType:t,channel:n})=>{if(UJ(n)&&v$(t)){if(e===`gradient`)return}else if(e===`symbol`)return;return e},values:({fieldOrDatumDef:e,legend:t})=>sfe(t,e)};function sfe(e,t){let n=e.values;if(N(n))return L0(t,n);if(Y(n))return n}function cfe(e,t,n,r){if(t!==`shape`){let e=z6(n)??r;if(e)return e}switch(e){case`bar`:case`rect`:case`image`:case`square`:return`square`;case`line`:case`trail`:case`rule`:return`stroke`;case`arc`:case`point`:case`circle`:case`tick`:case`geoshape`:case`area`:case`text`:return`circle`}}function lfe(e){let{legend:t}=e;return Vq(t.type,ufe(e))}function ufe({channel:e,timeUnit:t,scaleType:n}){if(UJ(e)){if(fq([`quarter`,`month`,`day`],t))return`symbol`;if(v$(n))return`gradient`}return`symbol`}function dfe({legendConfig:e,legendType:t,orient:n,legend:r}){return r.direction??e[t?`gradientDirection`:`symbolDirection`]??ffe(n,t)}function ffe(e,t){switch(e){case`top`:case`bottom`:return`horizontal`;case`left`:case`right`:case`none`:case void 0:return;default:return t===`gradient`?`horizontal`:void 0}}function pfe({legendConfig:e,model:t,direction:n,orient:r,scaleType:i}){let{gradientHorizontalMaxLength:a,gradientHorizontalMinLength:o,gradientVerticalMaxLength:s,gradientVerticalMinLength:c}=e;if(v$(i))return n===`horizontal`?r===`top`||r===`bottom`?U6(t,`width`,o,a):o:U6(t,`height`,c,s)}function U6(e,t,n,r){return{signal:`clamp(${e.getSizeSignalRef(t).signal}, ${n}, ${r})`}}function mfe(e){if(fq([`quantile`,`threshold`,`log`,`symlog`],e))return`greedy`}function W6(e){let t=Q8(e)?hfe(e):yfe(e);return e.component.legends=t,t}function hfe(e){let{encoding:t}=e,n={};for(let r of[gJ,...C2]){let i=k0(t[r]);!i||!e.getScaleComponent(r)||r===yJ&&Z(i)&&i.type===r$||(n[r]=vfe(e,r))}return n}function gfe(e,t){let n=e.scaleName(t);if(e.mark===`trail`){if(t===`color`)return{stroke:n};if(t===`size`)return{strokeWidth:n}}return t===`color`?e.markDef.filled?{fill:n}:{stroke:n}:{[t]:n}}function _fe(e,t,n,r){switch(t){case`disable`:return n!==void 0;case`values`:return!!n?.values;case`title`:if(t===`title`&&e===r?.title)return!0}return e===(n||{})[t]}function vfe(e,t){let n=e.legend(t),{markDef:r,encoding:i,config:a}=e,o=a.legend,s=new nfe({},gfe(e,t));Ode(e,t,s);let c=n===void 0?o.disable:!n;if(s.set(`disable`,c,n!==void 0),c)return s;n||={};let l=e.getScaleComponent(t).get(`type`),u=k0(i[t]),d=Z(u)?kQ(u.timeUnit)?.unit:void 0,f=n.orient||a.legend.orient||`right`,p=lfe({legend:n,channel:t,timeUnit:d,scaleType:l}),m=dfe({legend:n,legendType:p,orient:f,legendConfig:o}),h={legend:n,channel:t,model:e,markDef:r,encoding:i,fieldOrDatumDef:u,legendConfig:o,config:a,scaleType:l,orient:f,legendType:p,direction:m};for(let r of I6){if(p===`gradient`&&r.startsWith(`symbol`)||p===`symbol`&&r.startsWith(`gradient`))continue;let i=r in H6?H6[r](h):n[r];if(i!==void 0){let o=_fe(i,r,n,e.fieldDef(t));(o||a.legend[r]===void 0)&&s.set(r,i,o)}}let g=n?.encoding??{},_=s.get(`selections`),v={},y={fieldOrDatumDef:u,model:e,channel:t,legendCmpt:s,legendType:p};for(let t of[`labels`,`legend`,`title`,`symbols`,`gradient`,`entries`]){let n=N6(g[t]??{},e),r=t in L6?L6[t](n,y):n;r!==void 0&&!Cq(r)&&(v[t]={..._?.length&&Z(u)?{name:`${Oq(u.field)}_legend_${t}`}:{},..._?.length?{interactive:!0}:{},update:_?.length?{...r,cursor:{value:`pointer`}}:r})}return Cq(v)||s.set(`encode`,v,!!n?.encoding),s}function yfe(e){let{legends:t,resolve:n}=e.component;for(let r of e.children){W6(r);for(let i of q(r.component.legends))n.legend[i]=F6(e.component.resolve,i),n.legend[i]===`shared`&&(t[i]=G6(t[i],r.component.legends[i]),t[i]||(n.legend[i]=`independent`,delete t[i]))}for(let r of q(t))for(let t of e.children)t.component.legends[r]&&n.legend[r]===`shared`&&delete t.component.legends[r];return t}function G6(e,t){if(!e)return t.clone();let n=e.getWithExplicit(`orient`),r=t.getWithExplicit(`orient`);if(n.explicit&&r.explicit&&n.value!==r.value)return;let i=!1;for(let n of I6){let r=w4(e.getWithExplicit(n),t.getWithExplicit(n),n,`legend`,(e,t)=>{switch(n){case`symbolType`:return bfe(e,t);case`title`:return SX(e,t);case`type`:return i=!0,x4(`symbol`)}return C4(e,t,n,`legend`)});e.setWithExplicit(n,r)}return i&&(e.implicit?.encode?.gradient&&Aq(e.implicit,[`encode`,`gradient`]),e.explicit?.encode?.gradient&&Aq(e.explicit,[`encode`,`gradient`])),e}function bfe(e,t){return t.value===`circle`?t:e}function xfe(e,t,n,r){if(R0(t,n)){let i=Q8(e)?e.axis(n)??e.legend(n)??{}:{},a=$(t,{expr:`datum`}),o=$(t,{expr:`datum`,binSuffix:`end`});return{formulaAs:$(t,{binSuffix:`range`,forAs:!0}),formula:F1(a,o,i.format,i.formatType,r)}}return{}}function K6(e,t){return`${HY(e)}_${t}`}function Sfe(e,t){return{signal:e.getName(`${t}_bins`),extentSignal:e.getName(`${t}_extent`)}}function q6(e,t,n){let r=K6(N0(n,void 0)??{},t);return e.getName(`${r}_bins`)}function Cfe(e){return`as`in e}function J6(e,t,n){let r,i;r=Cfe(e)?P(e.as)?[e.as,`${e.as}_end`]:[e.as[0],e.as[1]]:[$(e,{forAs:!0}),$(e,{binSuffix:`end`,forAs:!0})];let a={...N0(t,void 0)},o=K6(a,e.field),{signal:s,extentSignal:c}=Sfe(n,o);if(KY(a.extent)){let e=a.extent;i=a6(n,e.param,e),delete a.extent}return{key:o,binComponent:{bin:a,field:e.field,as:[r],...s?{signal:s}:{},...c?{extentSignal:c}:{},...i?{span:i}:{}}}}var Y6=class e extends P4{bins;clone(){return new e(null,K(this.bins))}constructor(e,t){super(e),this.bins=t}static makeFromEncoding(t,n){let r=n.reduceFieldDef((e,t,r)=>{if(l0(t)&&UY(t.bin)){let{key:i,binComponent:a}=J6(t,t.bin,n);e[i]={...a,...e[i],...xfe(n,t,r,n.config)}}return e},{});return Cq(r)?null:new e(t,r)}static makeFromTransform(t,n,r){let{key:i,binComponent:a}=J6(n,n.bin,r);return new e(t,{[i]:a})}merge(e,t){for(let n of q(e.bins))n in this.bins?(t(e.bins[n].signal,this.bins[n].signal),this.bins[n].as=_q([...this.bins[n].as,...e.bins[n].as],uq)):this.bins[n]=e.bins[n];for(let t of e.children)e.removeChild(t),t.parent=this;e.remove()}producedFields(){return new Set(wq(this.bins).map(e=>e.as).flat(2))}dependentFields(){return new Set(wq(this.bins).map(e=>e.field))}hash(){return`Bin ${uq(this.bins)}`}assemble(){return wq(this.bins).flatMap(e=>{let t=[],[n,...r]=e.as,{extent:i,...a}=e.bin,o={type:`bin`,field:Lq(e.field),as:n,signal:e.signal,...KY(i)?{extent:null}:{extent:i},...e.span?{span:{signal:`span(${e.span})`}}:{},...a};!i&&e.extentSignal&&(t.push({type:`extent`,field:Lq(e.field),signal:e.extentSignal}),o.extent={signal:e.extentSignal}),t.push(o);for(let e of r)for(let r=0;r<2;r++)t.push({type:`formula`,expr:$({field:n[r]},{expr:`datum`}),as:e[r]});return e.formula&&t.push({type:`formula`,expr:e.formula,as:e.formulaAs}),t})}};function wfe(e,t,n,r){let i=Q8(r)?r.encoding[nY(t)]:void 0;if(l0(n)&&Q8(r)&&Q1(n,i,r.markDef,r.config)){e.add($(n,{})),e.add($(n,{suffix:`end`}));let{mark:i,markDef:a,config:o}=r,s=X1({fieldDef:n,markDef:a,config:o});J$(i)&&s!==.5&&fY(t)&&(e.add($(n,{suffix:z4})),e.add($(n,{suffix:B4}))),n.bin&&R0(n,t)&&e.add($(n,{binSuffix:`range`}))}else if(BJ(t)){let n=zJ(t);e.add(r.getName(n))}else e.add($(n));return d0(n)&&w$(n.scale?.range)&&e.add(n.scale.range.field),e}function Tfe(e,t){for(let n of q(t)){let r=t[n];for(let t of q(r))n in e?e[n][t]=new Set([...e[n][t]??[],...r[t]]):e[n]={[t]:r[t]}}}var X6=class e extends P4{dimensions;measures;clone(){return new e(null,new Set(this.dimensions),K(this.measures))}constructor(e,t,n){super(e),this.dimensions=t,this.measures=n}get groupBy(){return this.dimensions}static makeFromEncoding(t,n){let r=!1;n.forEachFieldDef(e=>{e.aggregate&&(r=!0)});let i={},a=new Set;return!r||(n.forEachFieldDef((e,t)=>{let{aggregate:r,field:o}=e;if(r){if(r===`count`)i[`*`]??={},i[`*`].count=new Set([$(e,{forAs:!0})]);else{if(PY(r)||FY(r)){let e=PY(r)?`argmin`:`argmax`,t=r[e];i[t]??={},i[t][e]=new Set([$({op:e,field:t},{forAs:!0})])}else i[o]??={},i[o][r]=new Set([$(e,{forAs:!0})]);EY(t)&&n.scaleDomain(t)===`unaggregated`&&(i[o]??={},i[o].min=new Set([$({field:o,aggregate:`min`},{forAs:!0})]),i[o].max=new Set([$({field:o,aggregate:`max`},{forAs:!0})]))}}else wfe(a,t,e,n)}),a.size+q(i).length===0)?null:new e(t,a,i)}static makeFromTransform(t,n){let r=new Set,i={};for(let e of n.aggregate){let{op:t,field:n,as:r}=e;t&&(t===`count`?(i[`*`]??={},i[`*`].count=new Set([r||$(e,{forAs:!0})])):(i[n]??={},i[n][t]??=new Set,i[n][t].add(r||$(e,{forAs:!0}))))}for(let e of n.groupby??[])r.add(e);return r.size+q(i).length===0?null:new e(t,r,i)}merge(e){return yq(this.dimensions,e.dimensions)?(Tfe(this.measures,e.measures),!0):(nQ(`different dimensions, cannot merge`),!1)}addDimensions(e){e.forEach(this.dimensions.add,this.dimensions)}dependentFields(){return new Set([...this.dimensions,...q(this.measures)])}producedFields(){let e=new Set;for(let t of q(this.measures))for(let n of q(this.measures[t])){let r=this.measures[t][n];r.size===0?e.add(`${n}_${t}`):r.forEach(e.add,e)}return e}hash(){return`Aggregate ${uq({dimensions:this.dimensions,measures:this.measures})}`}assemble(){let e=[],t=[],n=[];for(let r of q(this.measures))for(let i of q(this.measures[r]))for(let a of this.measures[r][i])n.push(a),e.push(i),t.push(r===`*`?null:Lq(r));return{type:`aggregate`,groupby:[...this.dimensions].map(Lq),ops:e,fields:t,as:n}}},Z6=class extends P4{model;name;data;column;row;facet;childModel;constructor(e,t,n,r){super(e),this.model=t,this.name=n,this.data=r;for(let e of GJ){let n=t.facet[e];if(n){let{bin:r,sort:i}=n;this[e]={name:t.getName(`${e}_domain`),fields:[$(n),...UY(r)?[$(n,{binSuffix:`end`})]:[]],...V1(i)?{sortField:i}:N(i)?{sortIndexField:v6(n,e)}:{}}}}this.childModel=t.child}hash(){let e=`Facet`;for(let t of GJ)this[t]&&(e+=` ${t.charAt(0)}:${uq(this[t])}`);return e}get fields(){let e=[];for(let t of GJ)this[t]?.fields&&e.push(...this[t].fields);return e}dependentFields(){let e=new Set(this.fields);for(let t of GJ)this[t]&&(this[t].sortField&&e.add(this[t].sortField.field),this[t].sortIndexField&&e.add(this[t].sortIndexField));return e}producedFields(){return new Set}getSource(){return this.name}getChildIndependentFieldsWithStep(){let e={};for(let t of dY){let n=this.childModel.component.scales[t];if(n&&!n.merged){let r=n.get(`type`),i=n.get(`range`);if(g$(r)&&QY(i)){let n=D8(O8(this.childModel,t));n?e[t]=n:X(OX(t))}}}return e}assembleRowColumnHeaderData(e,t,n){let r={row:`y`,column:`x`,facet:void 0}[e],i=[],a=[],o=[];r&&n&&n[r]&&(t?(i.push(`distinct_${n[r]}`),a.push(`max`)):(i.push(n[r]),a.push(`distinct`)),o.push(`distinct_${n[r]}`));let{sortField:s,sortIndexField:c}=this[e];if(s){let{op:e=L1,field:t}=s;i.push(t),a.push(e),o.push($(s,{forAs:!0}))}else c&&(i.push(c),a.push(`max`),o.push(c));return{name:this[e].name,source:t??this.data,transform:[{type:`aggregate`,groupby:this[e].fields,...i.length?{fields:i,ops:a,as:o}:{}}]}}assembleFacetHeaderData(e){let{columns:t}=this.model.layout,{layoutHeaders:n}=this.model.component,r=[],i={};for(let e of S6){for(let t of C6){let r=n[e]?.[t]??[];for(let t of r)if(t.axes?.length>0){i[e]=!0;break}}if(i[e]){let n=`length(data("${this.facet.name}"))`,i=e===`row`?t?{signal:`ceil(${n} / ${t})`}:1:t?{signal:`min(${n}, ${t})`}:{signal:n};r.push({name:`${this.facet.name}_${e}`,transform:[{type:`sequence`,start:0,stop:i}]})}}let{row:a,column:o}=i;return(a||o)&&r.unshift(this.assembleRowColumnHeaderData(`facet`,null,e)),r}assemble(){let e=[],t=null,n=this.getChildIndependentFieldsWithStep(),{column:r,row:i,facet:a}=this;if(r&&i&&(n.x||n.y)){t=`cross_${this.column.name}_${this.row.name}`;let r=[].concat(n.x??[],n.y??[]),i=r.map(()=>`distinct`);e.push({name:t,source:this.data,transform:[{type:`aggregate`,groupby:this.fields,fields:r,ops:i}]})}for(let r of[$q,Qq])this[r]&&e.push(this.assembleRowColumnHeaderData(r,t,n));if(a){let t=this.assembleFacetHeaderData(n);t&&e.push(...t)}return e}};function Q6(e){return e.startsWith(`'`)&&e.endsWith(`'`)||e.startsWith(`"`)&&e.endsWith(`"`)?e.slice(1,-1):e}function Efe(e,t){let n=Mq(e);return t===`number`?`toNumber(${n})`:t===`boolean`?`toBoolean(${n})`:t===`string`?`toString(${n})`:t===`date`?`toDate(${n})`:t===`flatten`?n:t.startsWith(`date:`)?`timeParse(${n},'${Q6(t.slice(5,t.length))}')`:t.startsWith(`utc:`)?`utcParse(${n},'${Q6(t.slice(4,t.length))}')`:(X(JX(t)),null)}function Dfe(e){let t={};return aq(e.filter,e=>{if(WQ(e)){let n=null;IQ(e)?n=sX(e.equal):RQ(e)?n=sX(e.lte):LQ(e)?n=sX(e.lt):zQ(e)?n=sX(e.gt):BQ(e)?n=sX(e.gte):VQ(e)?n=e.range[0]:HQ(e)&&(n=(e.oneOf??e.in)[0]),n&&(rQ(n)?t[e.field]=`date`:o(n)?t[e.field]=`number`:P(n)&&(t[e.field]=`string`)),e.timeUnit&&(t[e.field]=`date`)}}),t}function Ofe(e){let t={};function n(e){F0(e)?t[e.field]=`date`:e.type===`quantitative`&&zY(e.aggregate)?t[e.field]=`number`:Bq(e.field)>1?e.field in t||(t[e.field]=`flatten`):d0(e)&&V1(e.sort)&&Bq(e.sort.field)>1&&(e.sort.field in t||(t[e.sort.field]=`flatten`))}if((Q8(e)||$8(e))&&e.forEachFieldDef((t,r)=>{if(l0(t))n(t);else{let i=eY(r),a=e.fieldDef(i);n({...t,type:a.type})}}),Q8(e)){let{mark:n,markDef:r,encoding:i}=e;if(q$(n)&&!e.encoding.order){let e=i[r.orient===`horizontal`?`y`:`x`];Z(e)&&e.type===`quantitative`&&!(e.field in t)&&(t[e.field]=`number`)}}return t}function kfe(e){let t={};if(Q8(e)&&e.component.selection)for(let n of q(e.component.selection)){let r=e.component.selection[n];for(let e of r.project.items)!e.channel&&Bq(e.field)>1&&(t[e.field]=`flatten`)}return t}var $6=class e extends P4{_parse;clone(){return new e(null,K(this._parse))}constructor(e,t){super(e),this._parse=t}hash(){return`Parse ${uq(this._parse)}`}static makeExplicit(e,t,n){let r={},i=t.data;return!O4(i)&&i?.format?.parse&&(r=i.format.parse),this.makeWithAncestors(e,r,{},n)}static makeWithAncestors(t,n,r,i){for(let e of q(r)){let t=i.getWithExplicit(e);t.value!==void 0&&(t.explicit||t.value===r[e]||t.value===`derived`||r[e]===`flatten`?delete r[e]:X(YX(e,r[e],t.value)))}for(let e of q(n)){let t=i.get(e);t!==void 0&&(t===n[e]?delete n[e]:X(YX(e,n[e],t)))}let a=new y4(n,r);i.copyAll(a);let o={};for(let e of q(a.combine())){let t=a.get(e);t!==null&&(o[e]=t)}return q(o).length===0||i.parseNothing?null:new e(t,o)}get parse(){return this._parse}merge(e){this._parse={...this._parse,...e.parse},e.remove()}assembleFormatParse(){let e={};for(let t of q(this._parse)){let n=this._parse[t];Bq(t)===1&&(e[t]=n)}return e}producedFields(){return new Set(q(this._parse))}dependentFields(){return new Set(q(this._parse))}assembleTransforms(e=!1){return q(this._parse).filter(t=>!e||Bq(t)>1).map(e=>{let t=Efe(e,this._parse[e]);return t?{type:`formula`,expr:t,as:zq(e)}:null}).filter(e=>e!==null)}},e8=class e extends P4{clone(){return new e(null)}constructor(e){super(e)}dependentFields(){return new Set}producedFields(){return new Set([w2])}hash(){return`Identifier`}assemble(){return{type:`identifier`,as:w2}}},t8=class e extends P4{params;clone(){return new e(null,this.params)}constructor(e,t){super(e),this.params=t}dependentFields(){return new Set}producedFields(){}hash(){return`Graticule ${uq(this.params)}`}assemble(){return{type:`graticule`,...this.params===!0?{}:this.params}}},n8=class e extends P4{params;clone(){return new e(null,this.params)}constructor(e,t){super(e),this.params=t}dependentFields(){return new Set}producedFields(){return new Set([this.params.as??`data`])}hash(){return`Hash ${uq(this.params)}`}assemble(){return{type:`sequence`,...this.params}}},r8=class extends P4{_data;_name;_generator;constructor(e){super(null),e??={name:`source`};let t;if(O4(e)||(t=e.format?{...lq(e.format,[`parse`])}:{}),E4(e))this._data={values:e.values};else if(T4(e)){if(this._data={url:e.url},!t.type){let n=/(?:\.([^.]+))?$/.exec(e.url)[1];fq([`json`,`csv`,`tsv`,`dsv`,`topojson`],n)||(n=`json`),t.type=n}}else A4(e)?this._data={values:[{type:`Sphere`}]}:(D4(e)||O4(e))&&(this._data={});this._generator=O4(e),e.name&&(this._name=e.name),t&&!Cq(t)&&(this._data.format=t)}dependentFields(){return new Set}producedFields(){}get data(){return this._data}hasName(){return!!this._name}get isGenerator(){return this._generator}get dataName(){return this._name}set dataName(e){this._name=e}set parent(e){throw Error(`Source nodes have to be roots.`)}remove(){throw Error(`Source nodes are roots and cannot be removed.`)}hash(){throw Error(`Cannot hash sources`)}assemble(){return{name:this._name,...this._data,transform:[]}}};function i8(e){return e instanceof r8||e instanceof t8||e instanceof n8}var a8=class{#e;constructor(){this.#e=!1}setModified(){this.#e=!0}get modifiedFlag(){return this.#e}},o8=class extends a8{getNodeDepths(e,t,n){n.set(e,t);for(let r of e.children)this.getNodeDepths(r,t+1,n);return n}optimize(e){let t=[...this.getNodeDepths(e,0,new Map).entries()].sort((e,t)=>t[1]-e[1]);for(let e of t)this.run(e[0]);return this.modifiedFlag}},s8=class extends a8{optimize(e){this.run(e);for(let t of e.children)this.optimize(t);return this.modifiedFlag}},Afe=class extends s8{mergeNodes(e,t){let n=t.shift();for(let r of t)e.removeChild(r),r.parent=n,r.remove()}run(e){let t=e.children.map(e=>e.hash()),n={};for(let r=0;r<t.length;r++)n[t[r]]===void 0?n[t[r]]=[e.children[r]]:n[t[r]].push(e.children[r]);for(let t of q(n))n[t].length>1&&(this.setModified(),this.mergeNodes(e,n[t]))}},jfe=class extends s8{requiresSelectionId;constructor(e){super(),this.requiresSelectionId=e&&Z3(e)}run(e){e instanceof e8&&(this.requiresSelectionId&&(i8(e.parent)||e.parent instanceof X6||e.parent instanceof $6)||(this.setModified(),e.remove()))}},Mfe=class extends a8{optimize(e){return this.run(e,new Set),this.modifiedFlag}run(e,t){let n=new Set;e instanceof R4&&(n=e.producedFields(),bq(n,t)&&(this.setModified(),e.removeFormulas(t),e.producedFields.length===0&&e.remove()));for(let r of e.children)this.run(r,new Set([...t,...n]))}},Nfe=class extends s8{constructor(){super()}run(e){e instanceof F4&&!e.isRequired()&&(this.setModified(),e.remove())}},Pfe=class extends o8{run(e){if(!i8(e)&&!(e.numChildren()>1)){for(let t of e.children)if(t instanceof $6){if(e instanceof $6)this.setModified(),e.merge(t);else{if(Sq(e.producedFields(),t.dependentFields()))continue;this.setModified(),t.swapWithParent()}}}}},Ffe=class extends o8{run(e){let t=[...e.children],n=e.children.filter(e=>e instanceof $6);if(e.numChildren()>1&&n.length>=1){let r={},i=new Set;for(let e of n){let t=e.parse;for(let e of q(t))e in r?r[e]!==t[e]&&i.add(e):r[e]=t[e]}for(let e of i)delete r[e];if(!Cq(r)){this.setModified();let n=new $6(e,r);for(let i of t){if(i instanceof $6)for(let e of q(r))delete i.parse[e];e.removeChild(i),i.parent=n,i instanceof $6&&q(i.parse).length===0&&i.remove()}}}}},Ife=class extends o8{run(e){e instanceof F4||e.numChildren()>0||e instanceof Z6||e instanceof r8||(this.setModified(),e.remove())}},Lfe=class extends o8{run(e){let t=e.children.filter(e=>e instanceof R4),n=t.pop();for(let e of t)this.setModified(),n.merge(e)}},Rfe=class extends o8{run(e){let t=e.children.filter(e=>e instanceof X6),n={};for(let e of t){let t=uq(e.groupBy);t in n||(n[t]=[]),n[t].push(e)}for(let t of q(n)){let r=n[t];if(r.length>1){let t=r.pop();for(let n of r)t.merge(n)&&(e.removeChild(n),n.parent=t,n.remove(),this.setModified())}}}},zfe=class extends o8{model;constructor(e){super(),this.model=e}run(e){let t=!(i8(e)||e instanceof r6||e instanceof $6||e instanceof e8),n=[],r=[];for(let i of e.children)i instanceof Y6&&(t&&!Sq(e.producedFields(),i.dependentFields())?n.push(i):r.push(i));if(n.length>0){let t=n.pop();for(let e of n)t.merge(e,this.model.renameSignal.bind(this.model));this.setModified(),e instanceof Y6?e.merge(t,this.model.renameSignal.bind(this.model)):t.swapWithParent()}if(r.length>1){let e=r.pop();for(let t of r)e.merge(t,this.model.renameSignal.bind(this.model));this.setModified()}}},Bfe=class extends o8{run(e){let t=[...e.children];if(!pq(t,e=>e instanceof F4)||e.numChildren()<=1)return;let n=[],r;for(let i of t)if(i instanceof F4){let t=i;for(;t.numChildren()===1;){let[e]=t.children;if(e instanceof F4)t=e;else break}n.push(...t.children),r?(e.removeChild(i),i.parent=r.parent,r.parent.removeChild(r),r.parent=t,this.setModified()):r=t}else n.push(i);if(n.length){this.setModified();for(let e of n)e.parent.removeChild(e),e.parent=r}}},c8=class e extends P4{transform;clone(){return new e(null,K(this.transform))}constructor(e,t){super(e),this.transform=t}addDimensions(e){this.transform.groupby=_q(this.transform.groupby.concat(e),e=>e)}dependentFields(){let e=new Set;return this.transform.groupby&&this.transform.groupby.forEach(e.add,e),this.transform.joinaggregate.map(e=>e.field).filter(e=>e!==void 0).forEach(e.add,e),e}producedFields(){return new Set(this.transform.joinaggregate.map(this.getDefaultName))}getDefaultName(e){return e.as??$(e)}hash(){return`JoinAggregateTransform ${uq(this.transform)}`}assemble(){let e=[],t=[],n=[];for(let r of this.transform.joinaggregate)t.push(r.op),n.push(this.getDefaultName(r)),e.push(r.field===void 0?null:r.field);let r=this.transform.groupby;return{type:`joinaggregate`,as:n,ops:t,fields:e,...r===void 0?{}:{groupby:r}}}},l8=class e extends P4{filter;clone(){return new e(null,{...this.filter})}constructor(e,t){super(e),this.filter=t}static make(t,n,r){let{config:i,markDef:a}=n,{marks:o,scales:s}=r;if(o===`include-invalid-values`&&s===`include-invalid-values`)return null;let c=n.reduceFieldDef((e,t,r)=>{let o=EY(r)&&n.getScaleComponent(r);if(o){let n=o.get(`type`),{aggregate:s}=t,c=f1({scaleChannel:r,markDef:a,config:i,scaleType:n,isCountAggregate:RY(s)});c!==`show`&&c!==`always-valid`&&(e[t.field]=t)}return e},{});return q(c).length?new e(t,c):null}dependentFields(){return new Set(q(this.filter))}producedFields(){return new Set}hash(){return`FilterInvalid ${uq(this.filter)}`}assemble(){let e=q(this.filter).reduce((e,t)=>{let n=this.filter[t],r=$(n,{expr:`datum`});return n!==null&&(n.type===`temporal`?e.push(`(isDate(${r}) || (${u8(r)}))`):n.type===`quantitative`&&e.push(u8(r))),e},[]);return e.length>0?{type:`filter`,expr:e.join(` && `)}:null}};function u8(e){return`isValid(${e}) && isFinite(+${e})`}function Vfe(e){return e.stack.stackBy.reduce((e,t)=>{let n=t.fieldDef,r=$(n);return r&&e.push(r),e},[])}function Hfe(e){return N(e)&&e.every(e=>P(e))&&e.length>1}var d8=class e extends P4{_stack;clone(){return new e(null,K(this._stack))}constructor(e,t){super(e),this._stack=t}static makeFromTransform(t,n){let{stack:r,groupby:i,as:a,offset:o=`zero`}=n,s=[],c=[];if(n.sort!==void 0)for(let e of n.sort)s.push(e.field),c.push(Vq(e.order,`ascending`));let l={field:s,order:c},u;return u=Hfe(a)?a:P(a)?[a,`${a}_end`]:[`${n.stack}_start`,`${n.stack}_end`],new e(t,{dimensionFieldDefs:[],stackField:r,groupby:i,offset:o,sort:l,facetby:[],as:u})}static makeFromEncoding(t,n){let r=n.stack,{encoding:i}=n;if(!r)return null;let{groupbyChannels:a,fieldChannel:o,offset:s,impute:c}=r,l=a.map(e=>{let t=i[e];return O0(t)}).filter(e=>!!e),u=Vfe(n),d=n.encoding.order,f;if(N(d)||Z(d))f=yX(d);else{let e=$1(d)?d.sort:o===`y`?`descending`:`ascending`;f=u.reduce((t,n)=>(t.field.includes(n)||(t.field.push(n),t.order.push(e)),t),{field:[],order:[]})}return new e(t,{dimensionFieldDefs:l,stackField:n.vgField(o),facetby:[],stackby:u,sort:f,offset:s,impute:c,as:[n.vgField(o,{suffix:`start`,forAs:!0}),n.vgField(o,{suffix:`end`,forAs:!0})]})}get stack(){return this._stack}addDimensions(e){this._stack.facetby.push(...e)}dependentFields(){let e=new Set;return e.add(this._stack.stackField),this.getGroupbyFields().forEach(e.add,e),this._stack.facetby.forEach(e.add,e),this._stack.sort.field.forEach(e.add,e),e}producedFields(){return new Set(this._stack.as)}hash(){return`Stack ${uq(this._stack)}`}getGroupbyFields(){let{dimensionFieldDefs:e,impute:t,groupby:n}=this._stack;return e.length>0?e.map(e=>e.bin?t?[$(e,{binSuffix:`mid`})]:[$(e,{}),$(e,{binSuffix:`end`})]:[$(e)]).flat():n??[]}assemble(){let e=[],{facetby:t,dimensionFieldDefs:n,stackField:r,stackby:i,sort:a,offset:o,impute:s,as:c}=this._stack;if(s)for(let a of n){let{bandPosition:n=.5,bin:o}=a;if(o){let t=$(a,{expr:`datum`}),r=$(a,{expr:`datum`,binSuffix:`end`});e.push({type:`formula`,expr:`${u8(t)} ? ${n}*${t}+${1-n}*${r} : ${t}`,as:$(a,{binSuffix:`mid`,forAs:!0})})}e.push({type:`impute`,field:r,groupby:[...i,...t],key:$(a,{binSuffix:`mid`}),method:`value`,value:0})}return e.push({type:`stack`,groupby:[...this.getGroupbyFields(),...t],field:r,sort:a,as:c,offset:o}),e}},f8=class e extends P4{transform;clone(){return new e(null,K(this.transform))}constructor(e,t){super(e),this.transform=t}addDimensions(e){this.transform.groupby=_q(this.transform.groupby.concat(e),e=>e)}dependentFields(){let e=new Set;return(this.transform.groupby??[]).forEach(e.add,e),(this.transform.sort??[]).forEach(t=>e.add(t.field)),this.transform.window.map(e=>e.field).filter(e=>e!==void 0).forEach(e.add,e),e}producedFields(){return new Set(this.transform.window.map(this.getDefaultName))}getDefaultName(e){return e.as??$(e)}hash(){return`WindowTransform ${uq(this.transform)}`}assemble(){let e=[],t=[],n=[],r=[];for(let i of this.transform.window)t.push(i.op),n.push(this.getDefaultName(i)),r.push(i.param===void 0?null:i.param),e.push(i.field===void 0?null:i.field);let i=this.transform.frame,a=this.transform.groupby;if(i&&i[0]===null&&i[1]===null&&t.every(e=>IY(e)))return{type:`joinaggregate`,as:n,ops:t,fields:e,...a===void 0?{}:{groupby:a}};let o=[],s=[];if(this.transform.sort!==void 0)for(let e of this.transform.sort)o.push(e.field),s.push(e.order??`ascending`);let c={field:o,order:s},l=this.transform.ignorePeers;return{type:`window`,params:r,as:n,ops:t,fields:e,sort:c,...l===void 0?{}:{ignorePeers:l},...a===void 0?{}:{groupby:a},...i===void 0?{}:{frame:i}}}};function Ufe(e){function t(n){if(!(n instanceof Z6)){let r=n.clone();if(r instanceof F4){let t=h8+r.getSource();r.setSource(t),e.model.component.data.outputNodes[t]=r}else(r instanceof X6||r instanceof d8||r instanceof f8||r instanceof c8)&&r.addDimensions(e.fields);for(let e of n.children.flatMap(t))e.parent=r;return[r]}return n.children.flatMap(t)}return t}function p8(e){if(e instanceof Z6){if(e.numChildren()===1&&!(e.children[0]instanceof F4)){let t=e.children[0];(t instanceof X6||t instanceof d8||t instanceof f8||t instanceof c8)&&t.addDimensions(e.fields),t.swapWithParent(),p8(e)}else{let t=e.model.component.data.main;m8(t);let n=Ufe(e),r=e.children.map(n).flat();for(let e of r)e.parent=t}}else e.children.map(p8)}function m8(e){if(e instanceof F4&&e.type===M4.Main&&e.numChildren()===1){let t=e.children[0];t instanceof Z6||(t.swapWithParent(),m8(e))}}var h8=`scale_`,g8=5;function _8(e){for(let t of e){for(let e of t.children)if(e.parent!==t)return!1;if(!_8(t.children))return!1}return!0}function v8(e,t){let n=!1;for(let r of t)n=e.optimize(r)||n;return n}function y8(e,t,n){let r=e.sources,i=!1;return i=v8(new Nfe,r)||i,i=v8(new jfe(t),r)||i,r=r.filter(e=>e.numChildren()>0),i=v8(new Ife,r)||i,r=r.filter(e=>e.numChildren()>0),n||(i=v8(new Pfe,r)||i,i=v8(new zfe(t),r)||i,i=v8(new Mfe,r)||i,i=v8(new Ffe,r)||i,i=v8(new Rfe,r)||i,i=v8(new Lfe,r)||i,i=v8(new Afe,r)||i,i=v8(new Bfe,r)||i),e.sources=r,i}function Wfe(e,t){_8(e.sources);let n=0,r=0;for(let r=0;r<g8&&y8(e,t,!0);r++)n++;e.sources.map(p8);for(let n=0;n<g8&&y8(e,t,!1);n++)r++;_8(e.sources),Math.max(n,r)===g8&&X(`Maximum optimization runs(${g8}) reached.`)}var b8=class e{constructor(e){Object.defineProperty(this,"signal",{enumerable:!0,get:e})}signal;static fromName(t,n){return new e(()=>t(n))}};function x8(e){Q8(e)?Gfe(e):Kfe(e)}function Gfe(e){let t=e.component.scales;for(let n of q(t)){let r=Jfe(e,n);if(t[n].setWithExplicit(`domains`,r),Xfe(e,n),e.component.data.isFaceted){let t=e;for(;!$8(t)&&t.parent;)t=t.parent;if(t.component.resolve.scale[n]===`shared`)for(let e of r.value)tX(e)&&(e.data=h8+e.data.replace(h8,``))}}}function Kfe(e){for(let t of e.children)x8(t);let t=e.component.scales;for(let n of q(t)){let r,i=null;for(let t of e.children){let e=t.component.scales[n];if(e){r=r===void 0?e.getWithExplicit(`domains`):w4(r,e.getWithExplicit(`domains`),`domains`,`scale`,E8);let t=e.get(`selectionExtent`);i&&t&&i.param!==t.param&&X(zX),i=t}}t[n].setWithExplicit(`domains`,r),i&&t[n].set(`selectionExtent`,i,!0)}}function qfe(e,t,n,r){if(e===`unaggregated`){let{valid:e,reason:r}=T8(t,n);if(!e){X(r);return}}else if(e===void 0&&r.useUnaggregatedDomain){let{valid:e}=T8(t,n);if(e)return`unaggregated`}return e}function Jfe(e,t){let n=e.getScaleComponent(t).get(`type`),{encoding:r}=e,i=qfe(e.scaleDomain(t),e.typedFieldDef(t),n,e.config.scale);return i!==e.scaleDomain(t)&&(e.specifiedScales[t]={...e.specifiedScales[t],domain:i}),t===`x`&&k0(r.x2)?k0(r.x)?w4(C8(n,i,e,`x`),C8(n,i,e,`x2`),`domain`,`scale`,E8):C8(n,i,e,`x2`):t===`y`&&k0(r.y2)?k0(r.y)?w4(C8(n,i,e,`y`),C8(n,i,e,`y2`),`domain`,`scale`,E8):C8(n,i,e,`y2`):C8(n,i,e,t)}function Yfe(e,t,n){return e.map(e=>({signal:`{data: ${I0(e,{timeUnit:n,type:t})}}`}))}function S8(e,t,n){let r=kQ(n)?.unit;return t===`temporal`||r?Yfe(e,t,r):[e]}function C8(e,t,n,r){let{encoding:i,markDef:a,mark:o,config:s,stack:c}=n,l=k0(i[r]),{type:u}=l,d=l.timeUnit,f=Que({invalid:gX(`invalid`,a,s),isPath:q$(o)});if(C$(t)){let i=C8(e,void 0,n,r);return b4([...S8(t.unionWith,u,d),...i.value])}if(Y(t))return b4([t]);if(t&&t!==`unaggregated`&&!S$(t))return b4(S8(t,u,d));if(c&&r===c.fieldChannel){if(c.offset===`normalize`)return x4([[0,1]]);let e=n.requestDataName(f);return x4([{data:e,field:n.vgField(r,{suffix:`start`})},{data:e,field:n.vgField(r,{suffix:`end`})}])}let p=EY(r)&&Z(l)?Zfe(n,r,e):void 0;if(a0(l))return x4(S8([l.datum],u,d));let m=l;if(t===`unaggregated`){let{field:e}=l;return x4([{data:n.requestDataName(f),field:$({field:e,aggregate:`min`})},{data:n.requestDataName(f),field:$({field:e,aggregate:`max`})}])}if(UY(m.bin)){if(g$(e))return x4(e===`bin-ordinal`?[]:[{data:Eq(p)?n.requestDataName(f):n.requestDataName(M4.Raw),field:n.vgField(r,R0(m,r)?{binSuffix:`range`}:{}),sort:p===!0||!M(p)?{field:n.vgField(r,{}),op:`min`}:p}]);{let{bin:e}=m;if(UY(e)){let t=q6(n,m.field,e);return x4([new b8(()=>{let e=n.getSignalName(t);return`[${e}.start, ${e}.stop]`})])}return x4([{data:n.requestDataName(f),field:n.vgField(r,{})}])}}if(m.timeUnit&&fq([`time`,`utc`],e)){let e=i[nY(r)];if(Q1(m,e,a,s)){let t=n.requestDataName(f),i=X1({fieldDef:m,fieldDef2:e,markDef:a,config:s}),c=J$(o)&&i!==.5&&fY(r);return x4([{data:t,field:n.vgField(r,c?{suffix:z4}:{})},{data:t,field:n.vgField(r,{suffix:c?B4:`end`})}])}}return x4(p?[{data:Eq(p)?n.requestDataName(f):n.requestDataName(M4.Raw),field:n.vgField(r),sort:p}]:[{data:n.requestDataName(f),field:n.vgField(r)}])}function w8(e,t){let{op:n,field:r,order:i}=e;return{op:n??(t?`sum`:L1),...r?{field:Lq(r)}:{},...i?{order:i}:{}}}function Xfe(e,t){let n=e.component.scales[t],r=e.specifiedScales[t].domain,i=e.fieldDef(t)?.bin,a=S$(r)?r:void 0,o=GY(i)&&KY(i.extent)?i.extent:void 0;(a||o)&&n.set(`selectionExtent`,a??o,!0)}function Zfe(e,t,n){if(!g$(n))return;let r=e.fieldDef(t),i=r.sort;if(H1(i))return{op:`min`,field:v6(r,t),order:`ascending`};let{stack:a}=e,o=a?new Set([...a.groupbyFields,...a.stackBy.map(e=>e.fieldDef.field)]):void 0;if(V1(i))return w8(i,a&&!o.has(i.field));if(B1(i)){let{encoding:t,order:n}=i,r=e.fieldDef(t),{aggregate:s,field:c}=r,l=a&&!o.has(c);if(PY(s)||FY(s))return w8({field:$(r),order:n},l);if(IY(s)||!s)return w8({op:s,field:c,order:n},l)}else if(i===`descending`)return{op:`min`,field:e.vgField(t),order:`descending`};else if(fq([`ascending`,void 0],i))return!0}function T8(e,t){let{aggregate:n,type:r}=e;return n?P(n)&&!VY.has(n)?{valid:!1,reason:CZ(n)}:r===`quantitative`&&t===`log`?{valid:!1,reason:wZ(e)}:{valid:!0}:{valid:!1,reason:SZ(e)}}function E8(e,t,n,r){return e.explicit&&t.explicit&&X(jZ(n,r,e.value,t.value)),{explicit:e.explicit,value:[...e.value,...t.value]}}function Qfe(e){let t=_q(e.map(e=>{if(tX(e)){let{sort:t,...n}=e;return n}return e}),uq),n=_q(e.map(e=>{if(tX(e)){let t=e.sort;return t!==void 0&&!Eq(t)&&(`op`in t&&t.op===`count`&&delete t.field,t.order===`ascending`&&delete t.order),t}}).filter(e=>e!==void 0),uq);if(t.length===0)return;if(t.length===1){let t=e[0];if(tX(t)&&n.length>0){let e=n[0];if(n.length>1){X(PZ);let t=n.filter(e=>M(e)&&`op`in e&&e.op!==`min`);e=n.every(e=>M(e)&&`op`in e)&&t.length===1?t[0]:!0}else if(M(e)&&`field`in e){let n=e.field;t.field===n&&(e=!e.order||{order:e.order})}return{...t,sort:e}}return t}let r=_q(n.map(e=>Eq(e)||!(`op`in e)||P(e.op)&&T(NY,e.op)?e:(X(NZ(e)),!0)),uq),i;r.length===1?i=r[0]:r.length>1&&(X(PZ),i=!0);let a=_q(e.map(e=>tX(e)?e.data:null),e=>e);return a.length===1&&a[0]!==null?{data:a[0],fields:t.map(e=>e.field),...i?{sort:i}:{}}:{fields:t,...i?{sort:i}:{}}}function D8(e){if(tX(e)&&P(e.field))return e.field;if($Y(e)){let t;for(let n of e.fields)if(tX(n)&&P(n.field)){if(!t)t=n.field;else if(t!==n.field)return X(FZ),t}return X(IZ),t}if(eX(e)){X(LZ);let t=e.fields[0];return P(t)?t:void 0}}function O8(e,t){return Qfe(e.component.scales[t].get(`domains`).map(t=>(tX(t)&&(t.data=e.lookupDataSource(t.data)),t)))}function $fe(e,t,n,r){e.encode??={},e.encode[t]??={},e.encode[t].update??={},e.encode[t].update[n]=r}function k8(e,t){if(Q8(e)){let n=e.fieldDef(t);if(n?.field)return n.field}let n=(e.children??[]).map(e=>k8(e,t)).filter(e=>!!e);if(n.length>0){let e=_q(n,uq);return e.length===1?e[0]:void 0}}function epe(e,t,n){if(t===n)return!0;let r=e.getScaleType(t),i=e.getScaleType(n);return!r||!i?!1:g$(r)===g$(i)}function tpe(e,t){return e?`field:${e}`:`channel:${String(t)}`}function npe(e){if(N(e)){let t=e.filter(Dq);return t.length>0?t:null}if($Y(e)){let t=[];if(t.push(...e.fields.flatMap(e=>N(e)?e.filter(Dq):[])),t.length>0)return _q(t,uq)}return null}function A8(e,t){try{return npe(O8(e,t))}catch{return null}}function rpe(e,t,n){let r=A8(e,t),i=A8(e,n);return r&&i?_q([...r,...i],uq):null}function j8(e,t,n){t&&t.length>0&&(e.getWithExplicit(`values`)?.explicit||(n&&X(n),e.set(`values`,t,!1)))}function ipe(e,t,n){let r=e.getScaleComponent(t),i=e.getScaleComponent(n);if(!r||!i)return!1;let a=r.getWithExplicit(`domains`),o=i.getWithExplicit(`domains`);if(!(a?.explicit&&o?.explicit))return!1;let s=O8(e,t),c=O8(e,n);return uq(s)===uq(c)}function M8(e){let t=e.component.legends,n={};for(let r of q(t)){let i=tpe(k8(e,r),r);if(!n[i]){n[i]=[{channel:r,cmpt:t[r].clone()}];continue}let a=!1;for(let o of n[i])if(epe(e,o.channel,r)&&G6(o.cmpt,t[r])){let t=e.getScaleType(o.channel),n=e.getScaleType(r);t&&n&&g$(t)&&g$(n)&&(ipe(e,o.channel,r)?j8(o.cmpt,A8(e,o.channel)):j8(o.cmpt,rpe(e,o.channel,r),RZ(o.channel,r))),a=!0;break}a||n[i].push({channel:r,cmpt:t[r].clone()})}return wq(n).flat().map(t=>ape(t.cmpt,e.config)).filter(e=>e!==void 0)}function ape(e,t){let{disable:n,labelExpr:r,selections:i,...a}=e.combine();if(!n){if(t.aria===!1&&a.aria==null&&(a.aria=!1),a.encode?.symbols){let e=a.encode.symbols.update;e.fill&&e.fill.value!==`transparent`&&!e.stroke&&!a.stroke&&(e.stroke={value:`transparent`});for(let t of C2)a[t]&&delete e[t]}if(a.title||delete a.title,r!==void 0){let e=r;a.encode?.labels?.update&&Y(a.encode.labels.update.text)&&(e=Rq(r,`datum.label`,a.encode.labels.update.text.signal)),$fe(a,`labels`,`text`,{signal:e})}return a}}function ope(e){return t5(e)||e5(e)?spe(e):N8(e)}function spe(e){return e.children.reduce((e,t)=>e.concat(t.assembleProjections()),N8(e))}function N8(e){let t=e.component.projection;if(!t||t.merged)return[];let n=t.combine(),{name:r}=n;if(t.data){let i={signal:`[${t.size.map(e=>e.signal).join(`, `)}]`},a=t.data.reduce((t,n)=>{let r=Y(n)?n.signal:`data('${e.lookupDataSource(n)}')`;return fq(t,r)||t.push(r),t},[]);if(a.length<=0)throw Error(`Projection's fit didn't find any data sources`);return[{name:r,size:i,fit:{signal:a.length>1?`[${a.join(`, `)}]`:a[0]},...n}]}return[{name:r,translate:{signal:`[width / 2, height / 2]`},...n}]}var cpe=[`type`,`clipAngle`,`clipExtent`,`center`,`rotate`,`precision`,`reflectX`,`reflectY`,`coefficient`,`distance`,`fraction`,`lobes`,`parallel`,`radius`,`ratio`,`spacing`,`tilt`],P8=class extends y4{specifiedProjection;size;data;merged=!1;constructor(e,t,n,r){super({...t},{name:e}),this.specifiedProjection=t,this.size=n,this.data=r}get isFit(){return!!this.data}};function F8(e){e.component.projection=Q8(e)?lpe(e):fpe(e)}function lpe(e){if(e.hasProjection){let t=YY(e.specifiedProjection),n=!(t&&(t.scale!=null||t.translate!=null)),r=n?[e.getSizeSignalRef(`width`),e.getSizeSignalRef(`height`)]:void 0,i=n?upe(e):void 0,a=new P8(e.projectionName(!0),{...YY(e.config.projection),...t},r,i);return a.get(`type`)||a.set(`type`,`equalEarth`,!1),a}}function upe(e){let t=[],{encoding:n}=e;for(let r of[[fJ,dJ],[mJ,pJ]])(k0(n[r[0]])||k0(n[r[1]]))&&t.push({signal:e.getName(`geojson_${t.length}`)});return e.channelHasField(yJ)&&e.typedFieldDef(yJ).type===r$&&t.push({signal:e.getName(`geojson_${t.length}`)}),t.length===0&&t.push(e.requestDataName(M4.Main)),t}function dpe(e,t){let n=mq(cpe,n=>!!(!T(e.explicit,n)&&!T(t.explicit,n)||T(e.explicit,n)&&T(t.explicit,n)&&Xq(e.get(n),t.get(n))));if(Xq(e.size,t.size)){if(n)return e;if(Xq(e.explicit,{}))return t;if(Xq(t.explicit,{}))return e}return null}function fpe(e){if(e.children.length===0)return;let t;for(let t of e.children)F8(t);let n=mq(e.children,e=>{let n=e.component.projection;if(!n)return!0;if(t){let e=dpe(t,n);return e&&(t=e),!!e}return t=n,!0});if(t&&n){let n=e.projectionName(!0),r=new P8(n,t.specifiedProjection,t.size,K(t.data));for(let t of e.children){let e=t.component.projection;e&&(e.isFit&&r.data.push(...t.component.projection.data),t.renameProjection(e.get(`name`),n),e.merged=!0)}return r}}function I8(e){return t5(e)||e5(e)?e.children.reduce((e,t)=>e.concat(I8(t)),L8(e)):L8(e)}function L8(e){return q(e.component.scales).reduce((t,n)=>{let r=e.component.scales[n];if(r.merged)return t;let i=r.combine(),{name:a,type:o,selectionExtent:s,domains:c,range:l,reverse:u,...d}=i,f=ppe(i.range,a,n,e),p=O8(e,n),m=s?lde(e,s,r,p):null;return t.push({name:a,type:o,...p?{domain:p}:{},...m?{domainRaw:m}:{},range:f,...u===void 0?{}:{reverse:u},...d}),t},[])}function ppe(e,t,n,r){if(fY(n)){if(QY(e))return{step:{signal:`${t}_step`}}}else if(M(e)&&tX(e))return{...e,data:r.lookupDataSource(e.data)};return e}var R8=class extends y4{merged=!1;constructor(e,t){super({},{name:e}),this.setWithExplicit(`type`,t)}domainHasZero(){let e=this.get(`type`);if(fq([a$.LOG,a$.TIME,a$.UTC],e))return`definitely-not`;let t=this.get(`zero`);if(t===!0||t===void 0&&fq([a$.LINEAR,a$.SQRT,a$.POW],e))return`definitely`;let n=this.get(`domains`);if(n.length>0){let e=!1,t=!1,r=!1;for(let i of n){if(N(i)){let n=i[0],r=i[i.length-1];if(o(n)&&o(r)){if(n<=0&&r>=0){e=!0;continue}t=!0;continue}}r=!0}if(e)return`definitely`;if(t&&!r)return`definitely-not`}return`maybe`}},mpe=[`range`,`scheme`];function hpe(e){let t=e.component.scales;for(let n of TY){let r=t[n];if(!r)continue;let i=gpe(n,e);r.setWithExplicit(`range`,i)}}function z8(e,t){let n=e.fieldDef(t);if(n?.bin){let{bin:r,field:i}=n,a=rY(t),o=e.getName(a);if(M(r)&&r.binned&&r.step!==void 0)return new b8(()=>{let n=e.scaleName(t),i=`(domain("${n}")[1] - domain("${n}")[0]) / ${r.step}`;return`${e.getSignalName(o)} / (${i})`});if(UY(r)){let t=q6(e,i,r);return new b8(()=>{let n=e.getSignalName(t),r=`(${n}.stop - ${n}.start) / ${n}.step`;return`${e.getSignalName(o)} / (${r})`})}}}function gpe(e,t){let n=t.specifiedScales[e],{size:r}=t,i=t.getScaleComponent(e).get(`type`);for(let r of mpe)if(n[r]!==void 0){let a=D$(i,r),o=O$(e,r);if(!a)X(OZ(i,r,e));else if(o)X(o);else switch(r){case`range`:{let r=n.range;if(N(r)){if(fY(e))return b4(r.map(e=>{if(e===`width`||e===`height`){let n=t.getName(e),r=t.getSignalName.bind(t);return b8.fromName(r,n)}return e}))}else if(M(r))return b4({data:t.requestDataName(M4.Main),field:r.field,sort:{op:`min`,field:t.vgField(e)}});return b4(r)}case`scheme`:return b4(_pe(n[r]))}}let a=e===tJ||e===`xOffset`?`width`:`height`,o=r[a];if(N2(o)){if(fY(e)){if(g$(i)){let n=V8(o,t,e);if(n)return b4({step:n})}else X(kZ(a))}else if(_Y(e)){let n=e===aJ?`x`:`y`;if(t.getScaleComponent(n).get(`type`)===`band`){let e=H8(o,i);if(e)return b4(e)}}}let{rangeMin:s,rangeMax:c}=n,l=vpe(e,t);return(s!==void 0||c!==void 0)&&D$(i,`rangeMin`)&&N(l)&&l.length===2?b4([s??l[0],c??l[1]]):x4(l)}function _pe(e){return x$(e)?{scheme:e.name,...lq(e,[`name`])}:{scheme:e}}function B8(e,t,n,{center:r}={}){let i=rY(e),a=t.getName(i),o=t.getSignalName.bind(t);return e===nJ&&_$(n)?r?[b8.fromName(e=>`${o(e)}/2`,a),b8.fromName(e=>`-${o(e)}/2`,a)]:[b8.fromName(o,a),0]:r?[b8.fromName(e=>`-${o(e)}/2`,a),b8.fromName(e=>`${o(e)}/2`,a)]:[0,b8.fromName(o,a)]}function vpe(e,t){let{size:n,config:r,mark:i,encoding:a}=t,{type:o}=k0(a[e]),s=t.getScaleComponent(e).get(`type`),{domain:c,domainMid:l}=t.specifiedScales[e];switch(e){case tJ:case nJ:if(fq([`point`,`band`],s)){let i=U8(e,n,r.view);if(N2(i))return{step:V8(i,t,e)}}return B8(e,t,s);case aJ:case oJ:return ype(e,t,s);case bJ:{let a=Spe(i,r),o=Cpe(i,n,t,r);return y$(s)?xpe(a,o,bpe(s,r,c,e)):[a,o]}case lJ:return[0,Math.PI*2];case xJ:return[0,360];case sJ:return[0,new b8(()=>`min(${t.getSignalName($8(t.parent)?`child_width`:`width`)},${t.getSignalName($8(t.parent)?`child_height`:`height`)})/2`)];case hJ:return{step:1e3/r.scale.framesPerSecond};case TJ:return[r.scale.minStrokeWidth,r.scale.maxStrokeWidth];case EJ:return[[1,0],[4,2],[2,1],[1,1],[1,2,4,2]];case yJ:return`symbol`;case gJ:case _J:case vJ:return s===`ordinal`?o===`nominal`?`category`:`ordinal`:l===void 0?i===`rect`||i===`geoshape`?`heatmap`:`ramp`:`diverging`;case SJ:case CJ:case wJ:return[r.scale.minOpacity,r.scale.maxOpacity]}}function V8(e,t,n){let{encoding:r}=t,i=t.getScaleComponent(n),a=aY(n),o=r[a];if(M2({step:e,offsetIsDiscrete:Q(o)&&QQ(o.type)})===`offset`&&J0(r,a)){let n=t.getScaleComponent(a),r=`domain('${t.scaleName(a)}').length`;if(n.get(`type`)===`band`){let e=n.get(`paddingInner`)??n.get(`padding`)??0,t=n.get(`paddingOuter`)??n.get(`padding`)??0;r=`bandspace(${r}, ${e}, ${t})`}let o=i.get(`paddingInner`)??i.get(`padding`);return{signal:`${e.step} * ${r} / (1-${uX(o)})`}}return e.step}function H8(e,t){if(M2({step:e,offsetIsDiscrete:g$(t)})===`offset`)return{step:e.step}}function ype(e,t,n){let r=e===aJ?`x`:`y`,i=t.getScaleComponent(r);if(!i)return B8(r,t,n,{center:!0});let a=i.get(`type`),o=t.scaleName(r),{markDef:s,config:c}=t;if(a===`band`){let e=U8(r,t.size,t.config.view);if(N2(e)){let t=H8(e,n);if(t)return t}return[0,{signal:`bandwidth('${o}')`}]}{let n=t.encoding[r];if(Z(n)&&n.timeUnit){let e=jQ(n.timeUnit,e=>`scale('${o}', ${e})`),r=t.config.scale.bandWithNestedOffsetPaddingInner,i=X1({fieldDef:n,markDef:s,config:c})-.5,a=i===0?``:` + ${i}`;if(r){let t=Y(r)?`${r.signal}/2${a}`:`${r/2+i}`,n=Y(r)?`(1 - ${r.signal}/2)${a}`:`${1-r/2+i}`;return[{signal:`${t} * (${e})`},{signal:`${n} * (${e})`}]}return[0,{signal:e}]}return sq(`Cannot use ${e} scale if ${r} scale is not discrete.`)}}function U8(e,t,n){let r=e===tJ?`width`:`height`,i=t[r];return i===void 0?R2(n,r):i}function bpe(e,t,n,r){switch(e){case`quantile`:return t.scale.quantileCount;case`quantize`:return t.scale.quantizeCount;case`threshold`:return n!==void 0&&N(n)?n.length+1:(X(XZ(r)),3)}}function xpe(e,t,n){let r=()=>{let r=fX(t),i=fX(e),a=`(${r} - ${i}) / (${n} - 1)`;return`sequence(${i}, ${r} + ${a}, ${a})`};return Y(t)?new b8(r):{signal:r()}}function Spe(e,t){switch(e){case`bar`:case`tick`:return t.scale.minBandSize;case`line`:case`trail`:case`rule`:return t.scale.minStrokeWidth;case`text`:return t.scale.minFontSize;case`point`:case`square`:case`circle`:return t.scale.minSize}throw Error(dZ(`size`,e))}var W8=.95;function Cpe(e,t,n,r){let i={x:z8(n,`x`),y:z8(n,`y`)};switch(e){case`bar`:case`tick`:{if(r.scale.maxBandSize!==void 0)return r.scale.maxBandSize;let e=G8(t,i,r.view);return o(e)?e-1:new b8(()=>`${e.signal} - 1`)}case`line`:case`trail`:case`rule`:return r.scale.maxStrokeWidth;case`text`:return r.scale.maxFontSize;case`point`:case`square`:case`circle`:{if(r.scale.maxSize)return r.scale.maxSize;let e=G8(t,i,r.view);return o(e)?(W8*e)**2:new b8(()=>`pow(${W8} * ${e.signal}, 2)`)}}throw Error(dZ(`size`,e))}function G8(e,t,n){let r=N2(e.width)?e.width.step:L2(n,`width`),i=N2(e.height)?e.height.step:L2(n,`height`);return t.x||t.y?new b8(()=>`min(${[t.x?t.x.signal:r,t.y?t.y.signal:i].join(`, `)})`):Math.min(r,i)}function K8(e,t){Q8(e)?wpe(e,t):Y8(e,t)}function wpe(e,t){let n=e.component.scales,{config:r,encoding:i,markDef:a,specifiedScales:o}=e;for(let s of q(n)){let c=o[s],l=n[s],u=e.getScaleComponent(s),d=k0(i[s]),f=c[t],p=u.get(`type`),m=u.get(`padding`),h=u.get(`paddingInner`),g=D$(p,t),_=O$(s,t);if(f!==void 0&&(g?_&&X(_):X(OZ(p,t,s))),g&&_===void 0){if(f!==void 0){let e=d.timeUnit,n=d.type;switch(t){case`domainMax`:case`domainMin`:rQ(c[t])||n===`temporal`||e?l.set(t,{signal:I0(c[t],{type:n,timeUnit:e})},!0):l.set(t,c[t],!0);break;default:l.copyKeyFromObject(t,c)}}else{let n=J(q8,t)?q8[t]({model:e,channel:s,fieldOrDatumDef:d,scaleType:p,scalePadding:m,scalePaddingInner:h,domain:c.domain,domainMin:c.domainMin,domainMax:c.domainMax,markDef:a,config:r,hasNestedOffsetScale:Y0(i,s),hasSecondaryRangeChannel:!!i[nY(s)]}):r.scale[t];n!==void 0&&l.set(t,n,!1)}}}}var q8={bins:({model:e,fieldOrDatumDef:t})=>Z(t)?Tpe(e,t):void 0,interpolate:({channel:e,fieldOrDatumDef:t})=>Epe(e,t.type),nice:({scaleType:e,channel:t,domain:n,domainMin:r,domainMax:i,fieldOrDatumDef:a})=>Dpe(e,t,n,r,i,a),padding:({channel:e,scaleType:t,fieldOrDatumDef:n,markDef:r,config:i})=>Ope(e,t,i.scale,n,r,i.bar),paddingInner:({scalePadding:e,channel:t,markDef:n,scaleType:r,config:i,hasNestedOffsetScale:a})=>kpe(e,t,n.type,r,i.scale,a),paddingOuter:({scalePadding:e,channel:t,scaleType:n,scalePaddingInner:r,config:i,hasNestedOffsetScale:a})=>Ape(e,t,n,r,i.scale,a),reverse:({fieldOrDatumDef:e,scaleType:t,channel:n,config:r})=>jpe(t,Z(e)?e.sort:void 0,n,r.scale),zero:({channel:e,fieldOrDatumDef:t,domain:n,markDef:r,scaleType:i,config:a,hasSecondaryRangeChannel:o})=>Mpe(e,t,n,r,i,a.scale,o)};function J8(e){Q8(e)?hpe(e):Y8(e,`range`)}function Y8(e,t){let n=e.component.scales;for(let n of e.children)t===`range`?J8(n):K8(n,t);for(let r of q(n)){let i;for(let n of e.children){let e=n.component.scales[r];if(e){let n=e.getWithExplicit(t);i=w4(i,n,t,`scale`,S4((e,n)=>t===`range`&&e.step&&n.step?e.step-n.step:0))}}n[r].setWithExplicit(t,i)}}function Tpe(e,t){let n=t.bin;if(UY(n)){let r=q6(e,t.field,n);return new b8(()=>e.getSignalName(r))}if(WY(n)&&GY(n)&&n.step!==void 0)return{step:n.step}}function Epe(e,t){if(fq([gJ,_J,vJ],e)&&t!==`nominal`)return`hcl`}function Dpe(e,t,n,r,i,a){if(!(O0(a)?.bin||N(n)||i!=null||r!=null||fq([a$.TIME,a$.UTC],e)))return fY(t)?!0:void 0}function Ope(e,t,n,r,i,a){if(fY(e)){if(v$(t)){if(n.continuousPadding!==void 0)return n.continuousPadding;let{type:t,orient:o}=i;if(t===`bar`&&!(Z(r)&&(r.bin||r.timeUnit))&&(o===`vertical`&&e===`x`||o===`horizontal`&&e===`y`))return a.continuousBandSize}if(t===a$.POINT)return n.pointPadding}}function kpe(e,t,n,r,i,a=!1){if(e===void 0){if(fY(t)){let{bandPaddingInner:e,barBandPaddingInner:t,rectBandPaddingInner:r,tickBandPaddingInner:o,bandWithNestedOffsetPaddingInner:s}=i;return a?s:Vq(e,n===`bar`?t:n===`tick`?o:r)}if(_Y(t)&&r===a$.BAND)return i.offsetBandPaddingInner}}function Ape(e,t,n,r,i,a=!1){if(e===void 0){if(fY(t)){let{bandPaddingOuter:e,bandWithNestedOffsetPaddingOuter:t}=i;if(a)return t;if(n===a$.BAND)return Vq(e,Y(r)?{signal:`${r.signal}/2`}:r/2)}else if(_Y(t)){if(n===a$.POINT)return .5;if(n===a$.BAND)return i.offsetBandPaddingOuter}}}function jpe(e,t,n,r){if(n===`x`&&r.xReverse!==void 0)return _$(e)&&t===`descending`?Y(r.xReverse)?{signal:`!${r.xReverse.signal}`}:!r.xReverse:r.xReverse;if(_$(e)&&t===`descending`)return!0}function Mpe(e,t,n,r,i,a,s){if(n&&n!==`unaggregated`&&_$(i)){if(N(n)){let e=n[0],t=n[n.length-1];if(o(e)&&e<=0&&o(t)&&t>=0)return!0}return!1}if(e===`size`&&t.type===`quantitative`&&!y$(i))return!0;if(!(Z(t)&&t.bin)&&fq([...dY,...mY],e)){let{orient:t,type:n}=r;return fq([`bar`,`area`,`line`,`trail`],n)&&(t===`horizontal`&&e===`y`||t===`vertical`&&e===`x`)?!1:fq([`bar`,`area`],n)&&!s?!0:a?.zero}return!1}function Npe(e,t,n,r,i=!1){let a=Ppe(t,n,r,i),{type:o}=e;return EY(t)?o===void 0?a:A$(t,o)?Z(n)&&!k$(o,n.type)?(X(DZ(o,a)),a):o:(X(EZ(t,o,a)),a):null}function Ppe(e,t,n,r){switch(t.type){case`nominal`:case`ordinal`:{if(UJ(e)||jY(e)===`discrete`)return e===`shape`&&t.type===`ordinal`&&X(gZ(e,`ordinal`)),`ordinal`;if(yY(e))return`band`;if(fY(e)||_Y(e)){if(fq([`rect`,`bar`,`image`,`rule`,`tick`],n.type)||r)return`band`}else if(n.type===`arc`&&e in pY)return`band`;let i=n[rY(e)];return a1(i)||f0(t)&&t.axis?.tickBand?`band`:`point`}case`temporal`:return UJ(e)?`time`:jY(e)===`discrete`?(X(gZ(e,`temporal`)),`ordinal`):Z(t)&&t.timeUnit&&kQ(t.timeUnit).utc?`utc`:yY(e)?`band`:`time`;case`quantitative`:return UJ(e)?Z(t)&&UY(t.bin)?`bin-ordinal`:`linear`:jY(e)===`discrete`?(X(gZ(e,`quantitative`)),`ordinal`):yY(e)?`band`:`linear`;case`geojson`:return}throw Error(iZ(t.type))}function Fpe(e,{ignoreRange:t}={}){X8(e),x8(e);for(let t of E$)K8(e,t);t||J8(e)}function X8(e){Q8(e)?e.component.scales=Ipe(e):e.component.scales=Rpe(e)}function Ipe(e){let{encoding:t,mark:n,markDef:r}=e,i={};for(let a of TY){let o=k0(t[a]);if(o&&n===K$&&a===yJ&&o.type===r$)continue;let s=o&&o.scale;if(o&&s!==null&&s!==!1){s??={};let n=Y0(t,a),c=Npe(s,a,o,r,n);i[a]=new R8(e.scaleName(`${a}`,!0),{value:c,explicit:s.type===c})}}return i}var Lpe=S4((e,t)=>l$(e)-l$(t));function Rpe(e){let t=e.component.scales={},n={},r=e.component.resolve;for(let t of e.children){X8(t);for(let i of q(t.component.scales))if(r.scale[i]??=P6(i,e),r.scale[i]===`shared`){let e=n[i],a=t.component.scales[i].getWithExplicit(`type`);e?s$(e.value,a.value)?n[i]=w4(e,a,`type`,`scale`,Lpe):(r.scale[i]=`independent`,delete n[i]):n[i]=a}}for(let r of q(n)){let i=e.scaleName(r,!0),a=n[r];t[r]=new R8(i,a);for(let t of e.children){let e=t.component.scales[r];e&&(t.renameScale(e.get(`name`),i),e.merged=!0)}}return t}var Z8=class{nameMap;constructor(){this.nameMap={}}rename(e,t){this.nameMap[e]=t}has(e){return this.nameMap[e]!==void 0}get(e){for(;this.nameMap[e]&&e!==this.nameMap[e];)e=this.nameMap[e];return e}};function Q8(e){return e?.type===`unit`}function $8(e){return e?.type===`facet`}function e5(e){return e?.type===`concat`}function t5(e){return e?.type===`layer`}var n5=class{type;parent;config;name;size;title;description;data;transforms;layout;scaleNameMap;projectionNameMap;signalNameMap;component;view;constructor(e,t,n,r,i,a,o){this.type=t,this.parent=n,this.config=i,this.parent=n,this.config=i,this.view=YY(o),this.name=e.name??r,this.title=ZY(e.title)?{text:e.title}:e.title?YY(e.title):void 0,this.scaleNameMap=n?n.scaleNameMap:new Z8,this.projectionNameMap=n?n.projectionNameMap:new Z8,this.signalNameMap=n?n.signalNameMap:new Z8,this.data=e.data,this.description=e.description,this.transforms=Bue(e.transform??[]),this.layout=t===`layer`||t===`unit`?{}:Gle(e,t,i),this.component={data:{sources:n?n.component.data.sources:[],outputNodes:n?n.component.data.outputNodes:{},outputNodeRefCounts:n?n.component.data.outputNodeRefCounts:{},isFaceted:G1(e)||n?.component.data.isFaceted&&e.data===void 0},layoutSize:new y4,layoutHeaders:{row:{},column:{},facet:{}},mark:null,resolve:{scale:{},axis:{},legend:{},...a?K(a):{}},selection:null,scales:null,projection:null,axes:{},legends:{}}}get width(){return this.getSizeSignalRef(`width`)}get height(){return this.getSizeSignalRef(`height`)}parse(){this.parseScale(),this.parseLayoutSize(),this.renameTopLevelLayoutSizeSignal(),this.parseSelections(),this.parseProjection(),this.parseData(),this.parseAxesAndHeaders(),this.parseLegends(),this.parseMarkGroup()}parseScale(){Fpe(this)}parseProjection(){F8(this)}renameTopLevelLayoutSizeSignal(){this.getName(`width`)!==`width`&&this.renameSignal(this.getName(`width`),`width`),this.getName(`height`)!==`height`&&this.renameSignal(this.getName(`height`),`height`)}parseLegends(){W6(this)}assembleEncodeFromView(e){let{style:t,...n}=e,r={};for(let e of q(n)){let t=n[e];t!==void 0&&(r[e]=lX(t))}return r}assembleGroupEncodeEntry(e){let t={};return this.view&&(t=this.assembleEncodeFromView(this.view)),!e&&(this.description&&(t.description=lX(this.description)),this.type===`unit`||this.type===`layer`)?{width:this.getSizeSignalRef(`width`),height:this.getSizeSignalRef(`height`),...t}:Cq(t)?void 0:t}assembleLayout(){if(!this.layout)return;let{spacing:e,...t}=this.layout,{component:n,config:r}=this,i=tfe(n.layoutHeaders,r);return{padding:e,...this.assembleDefaultLayout(),...t,...i?{titleBand:i}:{}}}assembleDefaultLayout(){return{}}assembleHeaderMarks(){let{layoutHeaders:e}=this.component,t=[];for(let n of GJ)e[n].title&&t.push(Yde(this,n));for(let e of S6)t=t.concat(Xde(this,e));return t}assembleAxes(){return Ide(this.component.axes,this.config)}assembleLegends(){return M8(this)}assembleProjections(){return ope(this)}assembleTitle(){let{encoding:e,...t}=this.title??{},n={...XY(this.config.title).nonMarkTitleProperties,...t,...e?{encode:{update:e}}:{}};if(n.text)return fq([`unit`,`layer`],this.type)?fq([`middle`,void 0],n.anchor)&&(n.frame??=`group`):n.anchor??=`start`,Cq(n)?void 0:n}assembleGroup(e=[]){let t={};e=e.concat(this.assembleSignals()),e.length>0&&(t.signals=e);let n=this.assembleLayout();n&&(t.layout=n),t.marks=[].concat(this.assembleHeaderMarks(),this.assembleMarks());let r=!this.parent||$8(this.parent)?I8(this):[];r.length>0&&(t.scales=r);let i=this.assembleAxes();i.length>0&&(t.axes=i);let a=this.assembleLegends();return a.length>0&&(t.legends=a),t}getName(e){return Oq((this.name?`${this.name}_`:``)+e)}getDataName(e){return this.getName(M4[e].toLowerCase())}requestDataName(e){let t=this.getDataName(e),n=this.component.data.outputNodeRefCounts;return n[t]=(n[t]||0)+1,t}getSizeSignalRef(e){if($8(this.parent)){let t=hY(M6(e)),n=this.component.scales[t];if(n&&!n.merged){let e=n.get(`type`),r=n.get(`range`);if(g$(e)&&QY(r)){let e=n.get(`name`),r=D8(O8(this,t));return r?{signal:j6(e,n,$({aggregate:`distinct`,field:r},{expr:`datum`}))}:(X(OX(t)),null)}}}return{signal:this.signalNameMap.get(this.getName(e))}}lookupDataSource(e){let t=this.component.data.outputNodes[e];return t?t.getSource():e}getSignalName(e){return this.signalNameMap.get(e)}renameSignal(e,t){this.signalNameMap.rename(e,t)}renameScale(e,t){this.scaleNameMap.rename(e,t)}renameProjection(e,t){this.projectionNameMap.rename(e,t)}scaleName(e,t){if(t)return this.getName(e);if(ZJ(e)&&EY(e)&&this.component.scales[e]||this.scaleNameMap.has(this.getName(e)))return this.scaleNameMap.get(this.getName(e))}projectionName(e){if(e)return this.getName(`projection`);if(this.component.projection&&!this.component.projection.merged||this.projectionNameMap.has(this.getName(`projection`)))return this.projectionNameMap.get(this.getName(`projection`))}getScaleComponent(e){if(!this.component.scales)throw Error(`getScaleComponent cannot be called before parseScale(). Make sure you have called parseScale or use parseUnitModelWithScale().`);let t=this.component.scales[e];return t&&!t.merged?t:this.parent?this.parent.getScaleComponent(e):void 0}getScaleType(e){let t=this.getScaleComponent(e);return t?t.get(`type`):void 0}getSelectionComponent(e,t){let n=this.component.selection[e];if(!n&&this.parent&&(n=this.parent.getSelectionComponent(e,t)),!n)throw Error(NX(t));return n}hasAxisOrientSignalRef(){return this.component.axes.x?.some(e=>e.hasOrientSignalRef())||this.component.axes.y?.some(e=>e.hasOrientSignalRef())}},r5=class extends n5{vgField(e,t={}){let n=this.fieldDef(e);if(n)return $(n,t)}reduceFieldDef(e,t){return Sle(this.getMapping(),(t,n,r)=>{let i=O0(n);return i?e(t,i,r):t},t)}forEachFieldDef(e,t){$0(this.getMapping(),(t,n)=>{let r=O0(t);r&&e(r,n)},t)}},i5=class e extends P4{transform;clone(){return new e(null,K(this.transform))}constructor(e,t){super(e),this.transform=t,this.transform=K(t);let n=this.transform.as??[void 0,void 0];this.transform.as=[n[0]??`value`,n[1]??`density`];let r=this.transform.resolve??`shared`;this.transform.resolve=r}dependentFields(){return new Set([this.transform.density,...this.transform.groupby??[]])}producedFields(){return new Set(this.transform.as)}hash(){return`DensityTransform ${uq(this.transform)}`}assemble(){let{density:e,...t}=this.transform,n={type:`kde`,field:e,...t};return n.resolve=this.transform.resolve,n}},a5=class e extends P4{transform;clone(){return new e(null,K(this.transform))}constructor(e,t){super(e),this.transform=t,this.transform=K(t)}dependentFields(){return new Set([this.transform.extent])}producedFields(){return new Set([])}hash(){return`ExtentTransform ${uq(this.transform)}`}assemble(){let{extent:e,param:t}=this.transform;return{type:`extent`,field:e,signal:t}}},o5=class e extends P4{transform;clone(){return new e(this.parent,K(this.transform))}constructor(e,t){super(e),this.transform=t,this.transform=K(t);let{flatten:n,as:r=[]}=this.transform;this.transform.as=n.map((e,t)=>r[t]??e)}dependentFields(){return new Set(this.transform.flatten)}producedFields(){return new Set(this.transform.as)}hash(){return`FlattenTransform ${uq(this.transform)}`}assemble(){let{flatten:e,as:t}=this.transform;return{type:`flatten`,fields:e,as:t}}},s5=class e extends P4{transform;clone(){return new e(null,K(this.transform))}constructor(e,t){super(e),this.transform=t,this.transform=K(t);let n=this.transform.as??[void 0,void 0];this.transform.as=[n[0]??`key`,n[1]??`value`]}dependentFields(){return new Set(this.transform.fold)}producedFields(){return new Set(this.transform.as)}hash(){return`FoldTransform ${uq(this.transform)}`}assemble(){let{fold:e,as:t}=this.transform;return{type:`fold`,fields:e,as:t}}},c5=class e extends P4{fields;geojson;signal;clone(){return new e(null,K(this.fields),this.geojson,this.signal)}static parseAll(t,n){if(n.component.projection&&!n.component.projection.isFit)return t;let r=0;for(let i of[[fJ,dJ],[mJ,pJ]]){let a=i.map(e=>{let t=k0(n.encoding[e]);return Z(t)?t.field:a0(t)?{expr:`${t.datum}`}:u0(t)?{expr:`${t.value}`}:void 0});(a[0]||a[1])&&(t=new e(t,a,null,n.getName(`geojson_${r++}`)))}if(n.channelHasField(yJ)){let i=n.typedFieldDef(yJ);i.type===r$&&(t=new e(t,null,i.field,n.getName(`geojson_${r}`)))}return t}constructor(e,t,n,r){super(e),this.fields=t,this.geojson=n,this.signal=r}dependentFields(){let e=(this.fields??[]).filter(P);return new Set([...this.geojson?[this.geojson]:[],...e])}producedFields(){return new Set}hash(){return`GeoJSON ${this.geojson} ${this.signal} ${uq(this.fields)}`}assemble(){return[...this.geojson?[{type:`filter`,expr:`isValid(datum["${this.geojson}"])`}]:[],{type:`geojson`,...this.fields?{fields:this.fields}:{},...this.geojson?{geojson:this.geojson}:{},signal:this.signal}]}},l5=class e extends P4{projection;fields;as;clone(){return new e(null,this.projection,K(this.fields),K(this.as))}constructor(e,t,n,r){super(e),this.projection=t,this.fields=n,this.as=r}static parseAll(t,n){if(!n.projectionName())return t;for(let r of[[fJ,dJ],[mJ,pJ]]){let i=r.map(e=>{let t=k0(n.encoding[e]);return Z(t)?t.field:a0(t)?{expr:`${t.datum}`}:u0(t)?{expr:`${t.value}`}:void 0}),a=r[0]===mJ?`2`:``;(i[0]||i[1])&&(t=new e(t,n.projectionName(),i,[n.getName(`x${a}`),n.getName(`y${a}`)]))}return t}dependentFields(){return new Set(this.fields.filter(P))}producedFields(){return new Set(this.as)}hash(){return`Geopoint ${this.projection} ${uq(this.fields)} ${uq(this.as)}`}assemble(){return{type:`geopoint`,projection:this.projection,fields:this.fields,as:this.as}}},u5=class e extends P4{transform;clone(){return new e(null,K(this.transform))}constructor(e,t){super(e),this.transform=t}dependentFields(){return new Set([this.transform.impute,this.transform.key,...this.transform.groupby??[]])}producedFields(){return new Set([this.transform.impute])}processSequence(e){let{start:t=0,stop:n,step:r}=e;return{signal:`sequence(${[t,n,...r?[r]:[]].join(`,`)})`}}static makeFromTransform(t,n){return new e(t,n)}static makeFromEncoding(t,n){let r=n.encoding,i=r.x,a=r.y;if(Z(i)&&Z(a)){let o=i.impute?i:a.impute?a:void 0;if(o===void 0)return;let s=i.impute?a:a.impute?i:void 0,{method:c,value:l,frame:u,keyvals:d}=o.impute,f=e2(n.mark,r);return new e(t,{impute:o.field,key:s.field,...c?{method:c}:{},...l===void 0?{}:{value:l},...u?{frame:u}:{},...d===void 0?{}:{keyvals:d},...f.length?{groupby:f}:{}})}return null}hash(){return`Impute ${uq(this.transform)}`}assemble(){let{impute:e,key:t,keyvals:n,method:r,groupby:i,value:a,frame:o=[null,null]}=this.transform,s={type:`impute`,field:e,key:t,...n?{keyvals:xue(n)?this.processSequence(n):n}:{},method:`value`,...i?{groupby:i}:{},value:!r||r===`value`?a:null};return r&&r!==`value`?[s,{type:`window`,as:[`imputed_${e}_value`],ops:[r],fields:[e],frame:o,ignorePeers:!1,...i?{groupby:i}:{}},{type:`formula`,expr:`datum.${e} === null ? datum.imputed_${e}_value : datum.${e}`,as:e}]:[s]}},d5=class e extends P4{transform;clone(){return new e(null,K(this.transform))}constructor(e,t){super(e),this.transform=t,this.transform=K(t);let n=this.transform.as??[void 0,void 0];this.transform.as=[n[0]??t.on,n[1]??t.loess]}dependentFields(){return new Set([this.transform.loess,this.transform.on,...this.transform.groupby??[]])}producedFields(){return new Set(this.transform.as)}hash(){return`LoessTransform ${uq(this.transform)}`}assemble(){let{loess:e,on:t,...n}=this.transform;return{type:`loess`,x:t,y:e,...n}}},f5=class e extends P4{transform;secondary;clone(){return new e(null,K(this.transform),this.secondary)}constructor(e,t,n){super(e),this.transform=t,this.secondary=n}static make(t,n,r,i){let a=n.component.data.sources,{from:o}=r,s=null;if(Sue(o)){let e=C5(o.data,a);e||(e=new r8(o.data),a.push(e));let t=n.getName(`lookup_${i}`);s=new F4(e,t,M4.Lookup,n.component.data.outputNodeRefCounts),n.component.data.outputNodes[t]=s}else if(Cue(o)){let e=o.param;r={as:e,...r};let t;try{t=n.getSelectionComponent(Oq(e),e)}catch{throw Error(LX(e))}if(s=t.materialized,!s)throw Error(RX(e))}return new e(t,r,s.getSource())}dependentFields(){return new Set([this.transform.lookup])}producedFields(){return new Set(this.transform.as?k(this.transform.as):this.transform.from.fields)}hash(){return`Lookup ${uq({transform:this.transform,secondary:this.secondary})}`}assemble(){let e;if(this.transform.from.fields)e={values:this.transform.from.fields,...this.transform.as?{as:k(this.transform.as)}:{}};else{let t=this.transform.as;P(t)||(X(QX),t=`_lookup`),e={as:[t]}}return{type:`lookup`,from:this.secondary,key:this.transform.from.key,fields:[this.transform.lookup],...e,...this.transform.default?{default:this.transform.default}:{}}}},p5=class e extends P4{transform;clone(){return new e(null,K(this.transform))}constructor(e,t){super(e),this.transform=t,this.transform=K(t);let n=this.transform.as??[void 0,void 0];this.transform.as=[n[0]??`prob`,n[1]??`value`]}dependentFields(){return new Set([this.transform.quantile,...this.transform.groupby??[]])}producedFields(){return new Set(this.transform.as)}hash(){return`QuantileTransform ${uq(this.transform)}`}assemble(){let{quantile:e,...t}=this.transform;return{type:`quantile`,field:e,...t}}},m5=class e extends P4{transform;clone(){return new e(null,K(this.transform))}constructor(e,t){super(e),this.transform=t,this.transform=K(t);let n=this.transform.as??[void 0,void 0];this.transform.as=[n[0]??t.on,n[1]??t.regression]}dependentFields(){return new Set([this.transform.regression,this.transform.on,...this.transform.groupby??[]])}producedFields(){return new Set(this.transform.as)}hash(){return`RegressionTransform ${uq(this.transform)}`}assemble(){let{regression:e,on:t,...n}=this.transform;return{type:`regression`,x:t,y:e,...n}}},h5=class e extends P4{transform;clone(){return new e(null,K(this.transform))}constructor(e,t){super(e),this.transform=t}addDimensions(e){this.transform.groupby=_q((this.transform.groupby??[]).concat(e),e=>e)}producedFields(){}dependentFields(){return new Set([this.transform.pivot,this.transform.value,...this.transform.groupby??[]])}hash(){return`PivotTransform ${uq(this.transform)}`}assemble(){let{pivot:e,value:t,groupby:n,limit:r,op:i}=this.transform;return{type:`pivot`,field:e,value:t,...r===void 0?{}:{limit:r},...i===void 0?{}:{op:i},...n===void 0?{}:{groupby:n}}}},g5=class e extends P4{transform;clone(){return new e(null,K(this.transform))}constructor(e,t){super(e),this.transform=t}dependentFields(){return new Set}producedFields(){return new Set}hash(){return`SampleTransform ${uq(this.transform)}`}assemble(){return{type:`sample`,size:this.transform.sample}}};function _5(e){let t=0;function n(r,i){if(r instanceof r8&&!r.isGenerator&&!T4(r.data)&&(e.push(i),i={name:null,source:i.name,transform:[]}),r instanceof $6&&(r.parent instanceof r8&&!i.source?(i.format={...i.format,parse:r.assembleFormatParse()},i.transform.push(...r.assembleTransforms(!0))):i.transform.push(...r.assembleTransforms())),r instanceof Z6){i.name||(i.name=`data_${t++}`),!i.source||i.transform.length>0?(e.push(i),r.data=i.name):r.data=i.source,e.push(...r.assemble());return}switch((r instanceof t8||r instanceof n8||r instanceof l8||r instanceof r6||r instanceof _6||r instanceof l5||r instanceof X6||r instanceof f5||r instanceof f8||r instanceof c8||r instanceof s5||r instanceof o5||r instanceof i5||r instanceof d5||r instanceof p5||r instanceof m5||r instanceof e8||r instanceof g5||r instanceof h5||r instanceof a5)&&i.transform.push(r.assemble()),(r instanceof Y6||r instanceof R4||r instanceof u5||r instanceof d8||r instanceof c5)&&i.transform.push(...r.assemble()),r instanceof F4&&(i.source&&i.transform.length===0?r.setSource(i.source):r.parent instanceof F4?r.setSource(i.name):(i.name||(i.name=`data_${t++}`),r.setSource(i.name),r.numChildren()===1&&(e.push(i),i={name:null,source:i.name,transform:[]}))),r.numChildren()){case 0:r instanceof F4&&(!i.source||i.transform.length>0)&&e.push(i);break;case 1:n(r.children[0],i);break;default:{i.name||(i.name=`data_${t++}`);let a=i.name;!i.source||i.transform.length>0?e.push(i):a=i.source;for(let e of r.children)n(e,{name:null,source:a,transform:[]});break}}}return n}function zpe(e){let t=[],n=_5(t);for(let t of e.children)n(t,{source:e.name,name:null,transform:[]});return t}function Bpe(e,t){let n=[],r=_5(n),i=0;for(let t of e.sources)t.hasName()||(t.dataName=`source_${i++}`),r(t,t.assemble());for(let e of n)e.transform.length===0&&delete e.transform;let a=0;for(let[e,t]of n.entries())(t.transform??[]).length===0&&!t.source&&n.splice(a++,0,n.splice(e,1)[0]);for(let t of n)for(let n of t.transform??[])n.type===`lookup`&&(n.from=e.outputNodes[n.from].getSource());for(let e of n)e.name in t&&(e.values=t[e.name]);return n}function Vpe(e){return e===`top`||e===`left`||Y(e)?`header`:`footer`}function Hpe(e){for(let t of GJ)Upe(e,t);y5(e,`x`),y5(e,`y`)}function Upe(e,t){let{facet:n,config:r,child:i,component:a}=e;if(e.channelHasField(t)){let o=n[t],s=b6(`title`,null,r,t),c=w0(o,r,{allowDisabling:!0,includeDefault:s===void 0||!!s});i.component.layoutHeaders[t].title&&(c=N(c)?c.join(`, `):c,c+=` / ${i.component.layoutHeaders[t].title}`,i.component.layoutHeaders[t].title=null);let l=b6(`labelOrient`,o.header,r,t),u=o.header!==null&&Vq(o.header?.labels,r.header.labels,!0),d=fq([`bottom`,`right`],l)?`footer`:`header`;a.layoutHeaders[t]={title:o.header===null?null:c,facetFieldDef:o,[d]:t===`facet`?[]:[v5(e,t,u)]}}}function v5(e,t,n){let r=t===`row`?`height`:`width`;return{labels:n,sizeSignal:e.child.component.layoutSize.get(r)?e.child.getSizeSignalRef(r):void 0,axes:[]}}function y5(e,t){let{child:n}=e;if(n.component.axes[t]){let{layoutHeaders:r,resolve:i}=e.component;if(i.axis[t]=F6(i,t),i.axis[t]===`shared`){let i=t===`x`?`column`:`row`,a=r[i];for(let r of n.component.axes[t]){let t=Vpe(r.get(`orient`));a[t]??=[v5(e,i,!1)];let n=c6(r,`main`,e.config,{header:!0});n&&a[t][0].axes.push(n),r.mainExtracted=!0}}}}function Wpe(e){b5(e),x5(e,`width`),x5(e,`height`)}function Gpe(e){b5(e);let t=e.layout.columns===1?`width`:`childWidth`,n=e.layout.columns===void 0?`height`:`childHeight`;x5(e,t),x5(e,n)}function b5(e){for(let t of e.children)t.parseLayoutSize()}function x5(e,t){let n=M6(t),r=hY(n),i=e.component.resolve,a=e.component.layoutSize,o;for(let t of e.children){let a=t.component.layoutSize.getWithExplicit(n),s=i.scale[r]??P6(r,e);if(s===`independent`&&a.value===`step`){o=void 0;break}if(o){if(s===`independent`&&o.value!==a.value){o=void 0;break}o=w4(o,a,n,``)}else o=a}if(o){for(let r of e.children)e.renameSignal(r.getName(n),e.getName(t)),r.component.layoutSize.set(n,`merged`,!1);a.setWithExplicit(t,o)}else a.setWithExplicit(t,{explicit:!1,value:void 0})}function Kpe(e){let{size:t,component:n}=e;for(let r of dY){let i=rY(r);if(t[i]!=null&&t[i]!=null){let e=t[i];n.layoutSize.set(i,N2(e)?`step`:e,!0)}else{let t=qpe(e,i);n.layoutSize.set(i,t,!1)}}}function qpe(e,t){let n=t===`width`?`x`:`y`,r=e.config,i=e.getScaleComponent(n);if(i){let e=i.get(`type`),n=i.get(`range`);if(g$(e)){let e=R2(r.view,t);return QY(n)||N2(e)?`step`:e}return I2(r.view,t)}if(e.hasProjection||e.mark===`arc`)return I2(r.view,t);{let e=R2(r.view,t);return N2(e)?e.step:e}}function S5(e,t,n){return $(t,{suffix:`by_${$(e)}`,...n})}var Jpe=class e extends r5{facet;child;children;constructor(e,t,n,r){super(e,`facet`,t,n,r,e.resolve),this.child=N5(e.spec,this,this.getName(`child`),void 0,r),this.children=[this.child],this.facet=this.initFacet(e.facet)}initFacet(e){if(!U1(e))return{facet:this.initFacetFieldDef(e,`facet`)};let t=q(e),n={};for(let r of t){if(![Qq,$q].includes(r)){X(dZ(r,`facet`));break}let t=e[r];if(t.field===void 0){X(lZ(t,r));break}n[r]=this.initFacetFieldDef(t,r)}return n}initFacetFieldDef(e,t){let n=M0(e,t);return n.header?n.header=YY(n.header):n.header===null&&(n.header=null),n}channelHasField(e){return J(this.facet,e)}fieldDef(e){return this.facet[e]}parseData(){this.component.data=w5(this),this.child.parseData()}parseLayoutSize(){b5(this)}parseSelections(){this.child.parseSelections(),this.component.selection=this.child.component.selection,wq(this.component.selection).some(e=>$3(e))&&tQ(WX)}parseMarkGroup(){this.child.parseMarkGroup()}parseAxesAndHeaders(){this.child.parseAxesAndHeaders(),Hpe(this)}assembleSelectionTopLevelSignals(e){return this.child.assembleSelectionTopLevelSignals(e)}assembleSignals(){return this.child.assembleSignals(),[]}assembleSelectionData(e){return this.child.assembleSelectionData(e)}getHeaderLayoutMixins(){let e={};for(let t of GJ)for(let n of C6){let r=this.component.layoutHeaders[t],i=r[n],{facetFieldDef:a}=r;if(a){let n=b6(`titleOrient`,a.header,this.config,t);if([`right`,`bottom`].includes(n)){let r=y6(t,n);e.titleAnchor??={},e.titleAnchor[r]=`end`}}if(i?.[0]){let i=t===`row`?`height`:`width`,a=n===`header`?`headerBand`:`footerBand`;t!==`facet`&&!this.child.component.layoutSize.get(i)&&(e[a]??={},e[a][t]=.5),r.title&&(e.offset??={},e.offset[t===`row`?`rowTitle`:`columnTitle`]=10)}}return e}assembleDefaultLayout(){let{column:e,row:t}=this.facet,n=e?this.columnDistinctSignal():t?1:void 0,r=`all`;return(!t&&this.component.resolve.scale.x===`independent`||!e&&this.component.resolve.scale.y===`independent`)&&(r=`none`),{...this.getHeaderLayoutMixins(),...n?{columns:n}:{},bounds:`full`,align:r}}assembleLayoutSignals(){return this.child.assembleLayoutSignals()}columnDistinctSignal(){if(!(this.parent&&this.parent instanceof e))return{signal:`length(data('${this.getName(`column_domain`)}'))`}}assembleGroupStyle(){}assembleGroup(t){return this.parent&&this.parent instanceof e?{...this.channelHasField(`column`)?{encode:{update:{columns:{field:$(this.facet.column,{prefix:`distinct`})}}}}:{},...super.assembleGroup(t)}:super.assembleGroup(t)}getCardinalityAggregateForChild(){let t=[],n=[],r=[];if(this.child instanceof e){if(this.child.channelHasField(`column`)){let e=$(this.child.facet.column);t.push(e),n.push(`distinct`),r.push(`distinct_${e}`)}}else for(let e of dY){let i=this.child.component.scales[e];if(i&&!i.merged){let a=i.get(`type`),o=i.get(`range`);if(g$(a)&&QY(o)){let i=D8(O8(this.child,e));i?(t.push(i),n.push(`distinct`),r.push(`distinct_${i}`)):X(OX(e))}}}return{fields:t,ops:n,as:r}}assembleFacet(){let{name:e,data:t}=this.component.data.facetRoot,{row:n,column:r}=this.facet,{fields:i,ops:a,as:o}=this.getCardinalityAggregateForChild(),s=[];for(let e of GJ){let t=this.facet[e];if(t){s.push($(t));let{bin:c,sort:l}=t;if(UY(c)&&s.push($(t,{binSuffix:`end`})),V1(l)){let{field:e,op:s=L1}=l,c=S5(t,l);n&&r?(i.push(c),a.push(`max`),o.push(c)):(i.push(e),a.push(s),o.push(c))}else if(N(l)){let n=v6(t,e);i.push(n),a.push(`max`),o.push(n)}}}let c=!!n&&!!r;return{name:e,data:t,groupby:s,...c||i.length>0?{aggregate:{...c?{cross:c}:{},...i.length?{fields:i,ops:a,as:o}:{}}}:{}}}facetSortFields(e){let{facet:t}=this,n=t[e];return n?V1(n.sort)?[S5(n,n.sort,{expr:`datum`})]:N(n.sort)?[v6(n,e,{expr:`datum`})]:[$(n,{expr:`datum`})]:[]}facetSortOrder(e){let{facet:t}=this,n=t[e];if(n){let{sort:e}=n;return[(V1(e)?e.order:!N(e)&&e)||`ascending`]}return[]}assembleLabelTitle(){let{facet:e,config:t}=this;if(e.facet)return E6(e.facet,`facet`,t);let n={row:[`top`,`bottom`],column:[`left`,`right`]};for(let r of S6)if(e[r]){let i=b6(`labelOrient`,e[r]?.header,t,r);if(n[r].includes(i))return E6(e[r],r,t)}}assembleMarks(){let{child:e}=this,t=this.component.data.facetRoot,n=zpe(t),r=e.assembleGroupEncodeEntry(!1),i=this.assembleLabelTitle()||e.assembleTitle(),a=e.assembleGroupStyle();return[{name:this.getName(`cell`),type:`group`,...i?{title:i}:{},...a?{style:a}:{},from:{facet:this.assembleFacet()},sort:{field:GJ.map(e=>this.facetSortFields(e)).flat(),order:GJ.map(e=>this.facetSortOrder(e)).flat()},...n.length>0?{data:n}:{},...r?{encode:{update:r}}:{},...e.assembleGroup(ade(this,[]))}]}getMapping(){return this.facet}};function Ype(e,t){let{row:n,column:r}=t;if(n&&r){let t=null;for(let i of[n,r])if(V1(i.sort)){let{field:n,op:r=L1}=i.sort;e=t=new c8(e,{joinaggregate:[{op:r,field:n,as:S5(i,i.sort,{forAs:!0})}],groupby:[$(i)]})}return t}return null}function C5(e,t){for(let n of t){let t=n.data;if(e.name&&n.hasName()&&e.name!==n.dataName)continue;let r=e.format?.mesh,i=t.format?.feature;if(r&&i)continue;let a=e.format?.feature;if((a||i)&&a!==i)continue;let o=t.format?.mesh;if(!((r||o)&&r!==o)){if(E4(e)&&E4(t)){if(Xq(e.values,t.values))return n}else if(T4(e)&&T4(t)){if(e.url===t.url)return n}else if(D4(e)&&e.name===n.dataName)return n}}return null}function Xpe(e,t){if(e.data||!e.parent){if(e.data===null){let e=new r8({values:[]});return t.push(e),e}let n=C5(e.data,t);if(n)return O4(e.data)||(n.data.format=hq({},e.data.format,n.data.format)),!n.hasName()&&e.data.name&&(n.dataName=e.data.name),n;{let n=new r8(e.data);return t.push(n),n}}return e.parent.component.data.facetRoot?e.parent.component.data.facetRoot:e.parent.component.data.main}function Zpe(e,t,n){let r=0;for(let i of t.transforms){let a,o;if(Nue(i))o=e=new _6(e,i),a=`derived`;else if(c4(i)){let r=Dfe(i);o=e=$6.makeWithAncestors(e,{},r,n)??e,e=new r6(e,t,i.filter)}else if(u4(i))o=e=Y6.makeFromTransform(e,i,t),a=`number`;else if(Fue(i))a=`date`,n.getWithExplicit(i.field).value===void 0&&(e=new $6(e,{[i.field]:a}),n.set(i.field,a,!1)),o=e=R4.makeFromTransform(e,i);else if(Iue(i))o=e=X6.makeFromTransform(e,i),a=`number`,Z3(t)&&(e=new e8(e));else if(l4(i))o=e=f5.make(e,t,i,r++),a=`derived`;else if(Aue(i))o=e=new f8(e,i),a=`number`;else if(jue(i))o=e=new c8(e,i),a=`number`;else if(Lue(i))o=e=d8.makeFromTransform(e,i),a=`derived`;else if(Rue(i))o=e=new s5(e,i),a=`derived`;else if(zue(i))o=e=new a5(e,i),a=`derived`;else if(Mue(i))o=e=new o5(e,i),a=`derived`;else if(wue(i))o=e=new h5(e,i),a=`derived`;else if(kue(i))e=new g5(e,i);else if(Pue(i))o=e=u5.makeFromTransform(e,i),a=`derived`;else if(Tue(i))o=e=new i5(e,i),a=`derived`;else if(Eue(i))o=e=new p5(e,i),a=`derived`;else if(Due(i))o=e=new m5(e,i),a=`derived`;else if(Oue(i))o=e=new d5(e,i),a=`derived`;else{X(ZX(i));continue}if(o&&a!==void 0)for(let e of o.producedFields()??[])n.set(e,a,!1)}return e}function w5(e){let t=Xpe(e,e.component.data.sources),{outputNodes:n,outputNodeRefCounts:r}=e.component.data,i=e.data,a=!(i&&(O4(i)||T4(i)||E4(i)))&&e.parent?e.parent.component.data.ancestorParse.clone():new Zue;O4(i)?(k4(i)?t=new n8(t,i.sequence):j4(i)&&(t=new t8(t,i.graticule)),a.parseNothing=!0):i?.format?.parse===null&&(a.parseNothing=!0),t=$6.makeExplicit(t,e,a)??t,t=new e8(t);let o=e.parent&&t5(e.parent);(Q8(e)||$8(e))&&o&&(t=Y6.makeFromEncoding(t,e)??t),e.transforms.length>0&&(t=Zpe(t,e,a));let s=kfe(e),c=Ofe(e);t=$6.makeWithAncestors(t,{},{...s,...c},a)??t,Q8(e)&&(t=c5.parseAll(t,e),t=l5.parseAll(t,e)),(Q8(e)||$8(e))&&(o||(t=Y6.makeFromEncoding(t,e)??t),t=R4.makeFromEncoding(t,e)??t,t=_6.parseAllForSortIndex(t,e));let l=t=T5(M4.Raw,e,t);if(Q8(e)){let n=X6.makeFromEncoding(t,e);n&&(t=n,Z3(e)&&(t=new e8(t))),t=u5.makeFromEncoding(t,e)??t,t=d8.makeFromEncoding(t,e)??t}let u,d;if(Q8(e)){let{markDef:n,mark:r,config:i}=e,{marks:a,scales:o}=d=N4({invalid:hX(`invalid`,n,i),isPath:q$(r)});a!==o&&o===`include-invalid-values`&&(u=t=T5(M4.PreFilterInvalid,e,t)),a===`exclude-invalid-values`&&(t=l8.make(t,e,d)??t)}let f=t=T5(M4.Main,e,t),p;if(Q8(e)&&d){let{marks:n,scales:r}=d;n===`include-invalid-values`&&r===`exclude-invalid-values`&&(t=l8.make(t,e,d)??t,p=t=T5(M4.PostFilterInvalid,e,t))}Q8(e)&&Pde(e,f);let m=null;if($8(e)){let r=e.getName(`facet`);t=Ype(t,e.facet)??t,m=new Z6(t,e,r,f.getSource()),n[r]=m}return{...e.component.data,outputNodes:n,outputNodeRefCounts:r,raw:l,main:f,facetRoot:m,ancestorParse:a,preFilterInvalid:u,postFilterInvalid:p}}function T5(e,t,n){let{outputNodes:r,outputNodeRefCounts:i}=t.component.data,a=t.getDataName(e),o=new F4(n,a,e,i);return r[a]=o,o}var Qpe=class extends n5{children;constructor(e,t,n,r){super(e,`concat`,t,n,r,e.resolve),(e.resolve?.axis?.x===`shared`||e.resolve?.axis?.y===`shared`)&&X(qX),this.children=this.getChildren(e).map((e,t)=>N5(e,this,this.getName(`concat_${t}`),void 0,r))}parseData(){this.component.data=w5(this);for(let e of this.children)e.parseData()}parseSelections(){this.component.selection={};for(let e of this.children){e.parseSelections();for(let t of q(e.component.selection))this.component.selection[t]=e.component.selection[t]}wq(this.component.selection).some(e=>$3(e))&&tQ(WX)}parseMarkGroup(){for(let e of this.children)e.parseMarkGroup()}parseAxesAndHeaders(){for(let e of this.children)e.parseAxesAndHeaders()}getChildren(e){return A2(e)?e.vconcat:j2(e)?e.hconcat:e.concat}parseLayoutSize(){Gpe(this)}parseAxisGroup(){return null}assembleSelectionTopLevelSignals(e){return this.children.reduce((e,t)=>t.assembleSelectionTopLevelSignals(e),e)}assembleSignals(){return this.children.forEach(e=>e.assembleSignals()),[]}assembleLayoutSignals(){let e=O6(this);for(let t of this.children)e.push(...t.assembleLayoutSignals());return e}assembleSelectionData(e){return this.children.reduce((e,t)=>t.assembleSelectionData(e),e)}assembleMarks(){return this.children.map(e=>{let t=e.assembleTitle(),n=e.assembleGroupStyle(),r=e.assembleGroupEncodeEntry(!1);return{type:`group`,name:e.getName(`group`),...t?{title:t}:{},...n?{style:n}:{},...r?{encode:{update:r}}:{},...e.assembleGroup()}})}assembleGroupStyle(){}assembleDefaultLayout(){let e=this.layout.columns;return{...e==null?{}:{columns:e},bounds:`full`,align:`each`}}};function $pe(e){return e===!1||e===null}var E5=q({disable:1,gridScale:1,scale:1,...H0,labelExpr:1,encode:1}),eme=class e extends y4{explicit;implicit;mainExtracted;constructor(e={},t={},n=!1){super(),this.explicit=e,this.implicit=t,this.mainExtracted=n}clone(){return new e(K(this.explicit),K(this.implicit),this.mainExtracted)}hasAxisPart(e){return e===`axis`?!0:e===`grid`||e===`title`?!!this.get(e):!$pe(this.get(e))}hasOrientSignalRef(){return Y(this.explicit.orient)}};function tme(e,t,n){let{encoding:r,config:i}=e,a=k0(r[t])??k0(r[nY(t)]),{format:o,formatType:s}=e.axis(t)||{};if(w1(s))return{text:O1({fieldOrDatumDef:a,field:`datum.value`,format:o,formatType:s,config:i}),...n};if(o===void 0&&s===void 0&&i.customFormatTypes){if(i0(a)===`quantitative`){if(f0(a)&&a.stack===`normalize`&&i.normalizedNumberFormatType)return{text:O1({fieldOrDatumDef:a,field:`datum.value`,format:i.normalizedNumberFormat,formatType:i.normalizedNumberFormatType,config:i}),...n};if(i.numberFormatType)return{text:O1({fieldOrDatumDef:a,field:`datum.value`,format:i.numberFormat,formatType:i.numberFormatType,config:i}),...n}}if(i0(a)===`temporal`&&i.timeFormatType&&Z(a)&&!a.timeUnit)return{text:O1({fieldOrDatumDef:a,field:`datum.value`,format:i.timeFormat,formatType:i.timeFormatType,config:i}),...n}}return n}function nme(e){return dY.reduce((t,n)=>(e.component.scales[n]&&(t[n]=[lme(n,e)]),t),{})}var rme={bottom:`top`,top:`bottom`,left:`right`,right:`left`};function ime(e){let{axes:t,resolve:n}=e.component,r={top:0,bottom:0,right:0,left:0};for(let r of e.children){r.parseAxesAndHeaders();for(let i of q(r.component.axes))n.axis[i]=F6(e.component.resolve,i),n.axis[i]===`shared`&&(t[i]=ame(t[i],r.component.axes[i]),t[i]||(n.axis[i]=`independent`,delete t[i]))}for(let i of dY){for(let a of e.children)if(a.component.axes[i]){if(n.axis[i]===`independent`){t[i]=(t[i]??[]).concat(a.component.axes[i]);for(let e of a.component.axes[i]){let{value:t,explicit:n}=e.getWithExplicit(`orient`);if(!Y(t)){if(r[t]>0&&!n){let n=rme[t];r[t]>r[n]&&e.set(`orient`,n,!1)}r[t]++}}}delete a.component.axes[i]}if(n.axis[i]===`independent`&&t[i]&&t[i].length>1)for(let[e,n]of(t[i]||[]).entries())e>0&&n.get(`grid`)&&!n.explicit.grid&&(n.implicit.grid=!1)}}function ame(e,t){if(e){if(e.length!==t.length)return;let n=e.length;for(let r=0;r<n;r++){let n=e[r],i=t[r];if(!!n!=!!i)return;if(n&&i){let t=n.getWithExplicit(`orient`),a=i.getWithExplicit(`orient`);if(t.explicit&&a.explicit&&t.value!==a.value)return;e[r]=ome(n,i)}}}else return t.map(e=>e.clone());return e}function ome(e,t){for(let n of E5){let r=w4(e.getWithExplicit(n),t.getWithExplicit(n),n,`axis`,(e,t)=>{switch(n){case`title`:return SX(e,t);case`gridScale`:return{explicit:e.explicit,value:Vq(e.value,t.value)}}return C4(e,t,n,`axis`)});e.setWithExplicit(n,r)}return e}function sme(e,t,n,r,i){if(t===`disable`)return n!==void 0;switch(n||={},t){case`titleAngle`:case`labelAngle`:return e===(Y(n.labelAngle)?n.labelAngle:qq(n.labelAngle));case`values`:return!!n.values;case`encode`:return!!n.encoding||!!n.labelAngle;case`title`:if(e===g6(r,i))return!0}return e===n[t]}var cme=new Set([`grid`,`translate`,`format`,`formatType`,`orient`,`labelExpr`,`tickCount`,`position`,`tickMinStep`]);function lme(e,t){let n=t.axis(e),r=new eme,i=k0(t.encoding[e]),{mark:a,config:o}=t,s=n?.orient||o[e===`x`?`axisX`:`axisY`]?.orient||o.axis?.orient||Wde(e),c=t.getScaleComponent(e).get(`type`),l=Lde(e,c,s,t.config),u=n===void 0?d6(`disable`,o.style,n?.style,l).configValue:!n;if(r.set(`disable`,u,n!==void 0),u)return r;n||={};let d=Vde(i,n,e,o.style,l),f=A1(n.formatType,i,c),p=k1(i,i.type,n.format,n.formatType,o,!0),m={fieldOrDatumDef:i,axis:n,channel:e,model:t,scaleType:c,orient:s,labelAngle:d,format:p,formatType:f,mark:a,config:o};for(let i of E5){let a=i in f6?f6[i](m):U0(i)?n[i]:void 0,s=a!==void 0,c=sme(a,i,n,t,e);if(s&&c)r.set(i,a,c);else{let{configValue:e=void 0,configFrom:t=void 0}=U0(i)&&i!==`values`?d6(i,o.style,n.style,l):{},u=e!==void 0;s&&!u?r.set(i,a,c):(t!==`vgAxisConfig`||cme.has(i)&&u||B0(e)||Y(e))&&r.set(i,e,!1)}}let h=n.encoding??{},g=V0.reduce((n,i)=>{if(!r.hasAxisPart(i))return n;let a=N6(h[i]??{},t),o=i===`labels`?tme(t,e,a):a;return o!==void 0&&!Cq(o)&&(n[i]={update:o}),n},{});return Cq(g)||r.set(`encode`,g,!!n.encoding||n.labelAngle!==void 0),r}function ume({encoding:e,size:t}){for(let n of dY){let r=rY(n);N2(t[r])&&o0(e[n])&&(delete t[r],X(kZ(r)))}return t}var dme={vgMark:`arc`,encodeEntry:e=>({...A3(e,{align:`ignore`,baseline:`ignore`,color:`include`,size:`ignore`,orient:`ignore`,theta:`ignore`}),...b3(`x`,e,{defaultPos:`mid`}),...b3(`y`,e,{defaultPos:`mid`}),...D3(e,`radius`),...D3(e,`theta`)})},fme={vgMark:`area`,encodeEntry:e=>({...A3(e,{align:`ignore`,baseline:`ignore`,color:`include`,orient:`include`,size:`ignore`,theta:`ignore`}),...w3(`x`,e,{defaultPos:`zeroOrMin`,defaultPos2:`zeroOrMin`,range:e.markDef.orient===`horizontal`}),...w3(`y`,e,{defaultPos:`zeroOrMin`,defaultPos2:`zeroOrMin`,range:e.markDef.orient===`vertical`}),...M3(e)})},pme={vgMark:`rect`,encodeEntry:e=>({...A3(e,{align:`ignore`,baseline:`ignore`,color:`include`,orient:`ignore`,size:`ignore`,theta:`ignore`}),...D3(e,`x`),...D3(e,`y`)})},mme={vgMark:`shape`,encodeEntry:e=>({...A3(e,{align:`ignore`,baseline:`ignore`,color:`include`,size:`ignore`,orient:`ignore`,theta:`ignore`})}),postEncodingTransform:e=>{let{encoding:t}=e,n=t.shape;return[{type:`geoshape`,projection:e.projectionName(),...n&&Z(n)&&n.type===r$?{field:$(n,{expr:`datum`})}:{}}]}},hme={vgMark:`image`,encodeEntry:e=>({...A3(e,{align:`ignore`,baseline:`ignore`,color:`ignore`,orient:`ignore`,size:`ignore`,theta:`ignore`}),...D3(e,`x`),...D3(e,`y`),...d3(e,`url`)})},gme={vgMark:`line`,encodeEntry:e=>({...A3(e,{align:`ignore`,baseline:`ignore`,color:`include`,size:`ignore`,orient:`ignore`,theta:`ignore`}),...b3(`x`,e,{defaultPos:`mid`}),...b3(`y`,e,{defaultPos:`mid`}),..._3(`size`,e,{vgChannel:`strokeWidth`}),...M3(e)})},_me={vgMark:`trail`,encodeEntry:e=>({...A3(e,{align:`ignore`,baseline:`ignore`,color:`include`,size:`include`,orient:`ignore`,theta:`ignore`}),...b3(`x`,e,{defaultPos:`mid`}),...b3(`y`,e,{defaultPos:`mid`}),..._3(`size`,e),...M3(e)})};function D5(e,t){let{config:n}=e;return{...A3(e,{align:`ignore`,baseline:`ignore`,color:`include`,size:`include`,orient:`ignore`,theta:`ignore`}),...b3(`x`,e,{defaultPos:`mid`}),...b3(`y`,e,{defaultPos:`mid`}),..._3(`size`,e),..._3(`angle`,e),...vme(e,n,t)}}function vme(e,t,n){return n?{shape:{value:n}}:_3(`shape`,e)}var yme={vgMark:`symbol`,encodeEntry:e=>D5(e)},bme={vgMark:`symbol`,encodeEntry:e=>D5(e,`circle`)},xme={vgMark:`symbol`,encodeEntry:e=>D5(e,`square`)},Sme={vgMark:`rect`,encodeEntry:e=>({...A3(e,{align:`ignore`,baseline:`ignore`,color:`include`,orient:`ignore`,size:`ignore`,theta:`ignore`}),...D3(e,`x`),...D3(e,`y`)})},Cme={vgMark:`rule`,encodeEntry:e=>{let{markDef:t}=e,n=t.orient;return!e.encoding.x&&!e.encoding.y&&!e.encoding.latitude&&!e.encoding.longitude?{}:{...A3(e,{align:`ignore`,baseline:`ignore`,color:`include`,orient:`ignore`,size:`ignore`,theta:`ignore`}),...w3(`x`,e,{defaultPos:n===`horizontal`?`zeroOrMax`:`mid`,defaultPos2:`zeroOrMin`,range:n!==`vertical`}),...w3(`y`,e,{defaultPos:n===`vertical`?`zeroOrMax`:`mid`,defaultPos2:`zeroOrMin`,range:n!==`horizontal`}),..._3(`size`,e,{vgChannel:`strokeWidth`})}}},wme={vgMark:`text`,encodeEntry:e=>{let{config:t,encoding:n}=e;return{...A3(e,{align:`include`,baseline:`include`,color:`include`,size:`ignore`,orient:`ignore`,theta:`include`}),...b3(`x`,e,{defaultPos:`mid`}),...b3(`y`,e,{defaultPos:`mid`}),...d3(e),..._3(`size`,e,{vgChannel:`fontSize`}),..._3(`angle`,e),...N3(`align`,Tme(e.markDef,n,t)),...N3(`baseline`,Eme(e.markDef,n,t)),...b3(`radius`,e,{defaultPos:null}),...b3(`theta`,e,{defaultPos:null})}}};function Tme(e,t,n){if(hX(`align`,e,n)===void 0)return`center`}function Eme(e,t,n){if(hX(`baseline`,e,n)===void 0)return`middle`}var O5={arc:dme,area:fme,bar:pme,circle:bme,geoshape:mme,image:hme,line:gme,point:yme,rect:Sme,rule:Cme,square:xme,text:wme,tick:{vgMark:`rect`,encodeEntry:e=>{let{config:t,markDef:n}=e,r=n.orient,i=r===`horizontal`?`x`:`y`,a=r===`horizontal`?`y`:`x`,o=r===`horizontal`?`height`:`width`;return{...A3(e,{align:`ignore`,baseline:`ignore`,color:`include`,orient:`ignore`,size:`ignore`,theta:`ignore`}),...D3(e,i),...b3(a,e,{defaultPos:`mid`,vgChannel:a===`y`?`yc`:`xc`}),[o]:lX(hX(`thickness`,n,t))}}},trail:_me};function Dme(e){if(fq([L$,P$,U$],e.mark)){let t=e2(e.mark,e.encoding);if(t.length>0)return Ome(e,t)}else if(e.mark===F$){let t=iX.some(t=>hX(t,e.markDef,e.config));if(e.stack&&!e.fieldDef(`size`)&&t)return kme(e)}return j5(e)}var k5=`faceted_path_`;function Ome(e,t){return[{name:e.getName(`pathgroup`),type:`group`,from:{facet:{name:k5+e.requestDataName(M4.Main),data:e.requestDataName(M4.Main),groupby:t}},encode:{update:{width:{field:{group:`width`}},height:{field:{group:`height`}}}},marks:j5(e,{fromPrefix:k5})}]}var A5=`stack_group_`;function kme(e){let[t]=j5(e,{fromPrefix:A5}),n=e.scaleName(e.stack.fieldChannel),r=(t={})=>e.vgField(e.stack.fieldChannel,t),i=(e,t)=>`${e}(${[r({prefix:`min`,suffix:`start`,expr:t}),r({prefix:`max`,suffix:`start`,expr:t}),r({prefix:`min`,suffix:`end`,expr:t}),r({prefix:`max`,suffix:`end`,expr:t})].map(e=>`scale('${n}',${e})`).join(`,`)})`,a,o;e.stack.fieldChannel===`x`?(a={...cq(t.encode.update,[`y`,`yc`,`y2`,`height`,...iX]),x:{signal:i(`min`,`datum`)},x2:{signal:i(`max`,`datum`)},clip:{value:!0}},o={x:{field:{group:`x`},mult:-1},height:{field:{group:`height`}}},t.encode.update={...lq(t.encode.update,[`y`,`yc`,`y2`]),height:{field:{group:`height`}}}):(a={...cq(t.encode.update,[`x`,`xc`,`x2`,`width`]),y:{signal:i(`min`,`datum`)},y2:{signal:i(`max`,`datum`)},clip:{value:!0}},o={y:{field:{group:`y`},mult:-1},width:{field:{group:`width`}}},t.encode.update={...lq(t.encode.update,[`x`,`xc`,`x2`]),width:{field:{group:`width`}}});for(let n of iX){let r=gX(n,e.markDef,e.config);t.encode.update[n]?(a[n]=t.encode.update[n],delete t.encode.update[n]):r&&(a[n]=lX(r)),r&&(t.encode.update[n]={value:0})}let s=[];if(e.stack.groupbyChannels?.length>0)for(let t of e.stack.groupbyChannels){let n=e.fieldDef(t),r=$(n);r&&s.push(r),(n?.bin||n?.timeUnit)&&s.push($(n,{binSuffix:`end`}))}return a=[`stroke`,`strokeWidth`,`strokeJoin`,`strokeCap`,`strokeDash`,`strokeDashOffset`,`strokeMiterLimit`,`strokeOpacity`].reduce((n,r)=>{if(t.encode.update[r])return{...n,[r]:t.encode.update[r]};{let t=gX(r,e.markDef,e.config);return t===void 0?n:{...n,[r]:lX(t)}}},a),a.stroke&&(a.strokeForeground={value:!0},a.strokeOffset={value:0}),[{type:`group`,from:{facet:{data:e.requestDataName(M4.Main),name:A5+e.requestDataName(M4.Main),groupby:s,aggregate:{fields:[r({suffix:`start`}),r({suffix:`start`}),r({suffix:`end`}),r({suffix:`end`})],ops:[`min`,`max`,`min`,`max`]}}},encode:{update:a},marks:[{type:`group`,encode:{update:o},marks:[t]}]}]}function Ame(e){let{encoding:t,stack:n,mark:r,markDef:i,config:a}=e,o=t.order;if(!(!N(o)&&u0(o)&&dq(o.value)||!o&&dq(hX(`order`,i,a)))){if((N(o)||Z(o))&&!n)return yX(o,{expr:`datum`});if(q$(r)){let e=i.orient===`horizontal`?`y`:`x`,n=t[e];if(Z(n))return{field:e}}}}function j5(e,t={fromPrefix:``}){let{mark:n,markDef:r,encoding:i,config:a}=e,o=Vq(r.clip,jme(e),Mme(e)),s=mX(r),c=i.key,l=Ame(e),u=Nme(e);u&&Object.values(e.component.selection).some(e=>e.type===`point`&&!e.bind&&e.on!==`pointerover`)&&(e.markDef.cursor??=`pointer`);let d=hX(`aria`,r,a),f=O5[n].postEncodingTransform?O5[n].postEncodingTransform(e):null;return[{name:e.getName(`marks`),type:O5[n].vgMark,...o?{clip:o}:{},...s?{style:s}:{},...c?{key:c.field}:{},...l?{sort:l}:{},...u||{},...d===!1?{aria:d}:{},from:{data:t.fromPrefix+e.requestDataName(M4.Main)},encode:{update:O5[n].encodeEntry(e)},...f?{transform:f}:{}}]}function jme(e){let t=e.getScaleComponent(`x`),n=e.getScaleComponent(`y`);return t?.get(`selectionExtent`)||n?.get(`selectionExtent`)?!0:void 0}function Mme(e){let t=e.component.projection;return t&&!t.isFit?!0:void 0}function Nme(e){if(!e.component.selection)return null;let t=q(e.component.selection).length,n=t,r=e.parent;for(;r&&n===0;)n=q(r.component.selection).length,r=r.parent;return n?{interactive:t>0||e.mark===`geoshape`||!!e.encoding.tooltip||!!e.markDef.tooltip}:null}var M5=class extends r5{markDef;encoding;specifiedScales={};stack;specifiedAxes={};specifiedLegends={};specifiedProjection={};selection=[];children=[];constructor(e,t,n,r={},i){super(e,`unit`,t,n,i,void 0,P2(e)?e.view:void 0);let a=X$(e.mark)?{...e.mark}:{type:e.mark},o=a.type;a.filled===void 0&&(a.filled=pue(a,i,{graticule:e.data&&j4(e.data)}));let s=this.encoding=ble(e.encoding||{},o,a.filled,i);this.markDef=X2(a,s,i),this.size=ume({encoding:s,size:P2(e)?{...r,...e.width===void 0?{}:{width:e.width},...e.height===void 0?{}:{height:e.height}}:r}),this.stack=Y2(this.markDef,s),this.specifiedScales=this.initScales(o,s),this.specifiedAxes=this.initAxes(s),this.specifiedLegends=this.initLegends(s),this.specifiedProjection=e.projection,this.selection=(e.params??[]).filter(e=>D2(e)),this.alignStackOrderWithColorDomain()}get hasProjection(){let{encoding:e}=this,t=this.mark===K$,n=e&&VJ.some(t=>Q(e[t]));return t||n}scaleDomain(e){let t=this.specifiedScales[e];return t?t.domain:void 0}axis(e){return this.specifiedAxes[e]}legend(e){return this.specifiedLegends[e]}initScales(e,t){return TY.reduce((e,n)=>{let r=k0(t[n]);return r&&(e[n]=this.initScale(r.scale??{})),e},{})}initScale(e){let{domain:t,range:n}=e,r=YY(e);return N(t)&&(r.domain=t.map(sX)),N(n)&&(r.range=n.map(sX)),r}initAxes(e){return dY.reduce((t,n)=>{let r=e[n];if(Q(r)||n===tJ&&Q(e.x2)||n===nJ&&Q(e.y2)){let e=Q(r)?r.axis:void 0;t[n]=e&&this.initAxis({...e})}return t},{})}initAxis(e){let t=q(e),n={};for(let r of t){let t=e[r];n[r]=B0(t)?oX(t):sX(t)}return n}initLegends(e){return xY.reduce((t,n)=>{let r=k0(e[n]);if(r&&CY(n)){let e=r.legend;t[n]=e&&YY(e)}return t},{})}alignStackOrderWithColorDomain(){let{color:e,fill:t,order:n,xOffset:r,yOffset:i}=this.encoding,a=t||e,o=Z(a)?a:void 0,s=o?.field,c=o?.scale,l=o?.type,u=c?.domain,d=r||i,f=Z(d)?d:void 0,m=`_${s}_sort_index`;if(!n&&Array.isArray(u)&&typeof s==`string`&&l===`nominal`){if(f&&!f.sort)f.sort=u;else{if(!this.stack)return;let e=`indexof(${p(u)}, datum['${s}'])`,t=this.markDef?.orient===`horizontal`?`ascending`:`descending`;this.transforms.push({calculate:e,as:m}),this.encoding.order={field:m,type:`quantitative`,sort:t}}}}parseData(){this.component.data=w5(this)}parseLayoutSize(){Kpe(this)}parseSelections(){this.component.selection=Nde(this,this.selection)}parseMarkGroup(){this.component.mark=Dme(this)}parseAxesAndHeaders(){this.component.axes=nme(this)}assembleSelectionTopLevelSignals(e){return ode(this,e)}assembleSignals(){return[...l6(this),...ide(this,[])]}assembleSelectionData(e){return sde(this,e)}assembleLayout(){return null}assembleLayoutSignals(){return O6(this)}correctDataNames=e=>(e.from?.data&&(e.from.data=this.lookupDataSource(e.from.data),`time`in this.encoding&&(e.from.data=e.from.data+G4)),e.from?.facet?.data&&(e.from.facet.data=this.lookupDataSource(e.from.facet.data)),e);assembleMarks(){let e=this.component.mark??[];return(!this.parent||!t5(this.parent))&&(e=t3(this,e)),e.map(this.correctDataNames)}assembleGroupStyle(){let{style:e}=this.view||{};return e===void 0?this.encoding.x||this.encoding.y?`cell`:`view`:e}getMapping(){return this.encoding}get mark(){return this.markDef.type}channelHasField(e){return q0(this.encoding,e)}fieldDef(e){let t=this.encoding[e];return O0(t)}typedFieldDef(e){let t=this.fieldDef(e);return l0(t)?t:null}},Pme=class e extends n5{children;constructor(t,n,r,i,a){super(t,`layer`,n,r,a,t.resolve,t.view);let o={...i,...t.width?{width:t.width}:{},...t.height?{height:t.height}:{}};this.children=t.layer.map((t,n)=>{if(G2(t))return new e(t,this,this.getName(`layer_${n}`),o,a);if(G0(t))return new M5(t,this,this.getName(`layer_${n}`),o,a);throw Error(CX(t))})}parseData(){this.component.data=w5(this);for(let e of this.children)e.parseData()}parseLayoutSize(){Wpe(this)}parseSelections(){this.component.selection={};for(let e of this.children){e.parseSelections();for(let t of q(e.component.selection))this.component.selection[t]=e.component.selection[t]}wq(this.component.selection).some(e=>$3(e))&&tQ(WX)}parseMarkGroup(){for(let e of this.children)e.parseMarkGroup()}parseAxesAndHeaders(){ime(this)}assembleSelectionTopLevelSignals(e){return this.children.reduce((e,t)=>t.assembleSelectionTopLevelSignals(e),e)}assembleSignals(){return this.children.reduce((e,t)=>e.concat(t.assembleSignals()),l6(this))}assembleLayoutSignals(){return this.children.reduce((e,t)=>e.concat(t.assembleLayoutSignals()),O6(this))}assembleSelectionData(e){return this.children.reduce((e,t)=>t.assembleSelectionData(e),e)}assembleGroupStyle(){let e=new Set;for(let t of this.children)for(let n of k(t.assembleGroupStyle()))e.add(n);let t=Array.from(e);return t.length>1?t:t.length===1?t[0]:void 0}assembleTitle(){let e=super.assembleTitle();if(e)return e;for(let t of this.children)if(e=t.assembleTitle(),e)return e}assembleLayout(){return null}assembleMarks(){return cde(this,this.children.flatMap(e=>e.assembleMarks()))}assembleLegends(){return this.children.reduce((e,t)=>e.concat(t.assembleLegends()),M8(this))}};function N5(e,t,n,r,i){if(G1(e))return new Jpe(e,t,n,i);if(G2(e))return new Pme(e,t,n,r,i);if(G0(e))return new M5(e,t,n,r,i);if(Ule(e))return new Qpe(e,t,n,i);throw Error(CX(e))}function P5(e,t={}){t.logger&&$Z(t.logger),t.fieldTitle&&C0(t.fieldTitle);try{let n=W2(x(t.config,e.config)),r=g4(e,n),i=N5(r,null,``,void 0,n);return i.parse(),Wfe(i.component.data,i),{spec:Ime(i,Fme(e,r.autosize,n,i),e.datasets,e.usermeta),normalized:r}}finally{t.logger&&eQ(),t.fieldTitle&&fle()}}function Fme(e,t,n,r){let i=r.component.layoutSize.get(`width`),a=r.component.layoutSize.get(`height`);if(t===void 0?(t={type:`pad`},r.hasAxisOrientSignalRef()&&(t.resize=!0)):P(t)&&(t={type:t}),i&&a&&Jue(t.type)){if(i===`step`&&a===`step`)X(DX()),t.type=`pad`;else if(i===`step`||a===`step`){let e=i===`step`?`width`:`height`;X(DX(hY(e))),t.type=Yue(e===`width`?`height`:`width`)}}return{...q(t).length===1&&t.type?t.type===`pad`?{}:{autosize:t.type}:{autosize:t},...v4(n,!1),...v4(e,!0)}}function Ime(e,t,n={},r){let i=e.config?tue(e.config):void 0,a=Bpe(e.component.data,n),o=e.assembleSelectionData(a),s=e.assembleProjections(),c=e.assembleTitle(),l=e.assembleGroupStyle(),u=e.assembleGroupEncodeEntry(!0),d=e.assembleLayoutSignals();d=d.filter(e=>(e.name===`width`||e.name===`height`)&&e.value!==void 0?(t[e.name]=+e.value,!1):!0);let{params:f,...p}=t;return{$schema:`https://vega.github.io/schema/vega/v6.json`,...e.description?{description:e.description}:{},...p,...c?{title:c}:{},...l?{style:l}:{},...u?{encode:{update:u}}:{},data:o,...s.length>0?{projections:s}:{},...e.assembleGroup([...d,...e.assembleSelectionTopLevelSignals([]),...O2(f)]),...i?{config:i}:{},...r?{usermeta:r}:{}}}var Lme=tq.version;function F5(e){let[t,n]=/schema\/([\w-]+)\/([\w\.\-]+)\.json$/g.exec(e).slice(1,3);return{library:t,version:n}}var Rme=t({carbong10:()=>_he,carbong100:()=>yhe,carbong90:()=>vhe,carbonwhite:()=>ghe,dark:()=>Bme,excel:()=>Vme,fivethirtyeight:()=>Wme,ggplot2:()=>Gme,googlecharts:()=>rhe,latimes:()=>Yme,powerbi:()=>fhe,quartz:()=>Xme,urbaninstitute:()=>nhe,version:()=>bhe,vox:()=>Zme}),zme={version:`3.0.0`},I5=`#fff`,L5=`#888`,Bme={background:`#333`,view:{stroke:L5},title:{color:I5,subtitleColor:I5},style:{"guide-label":{fill:I5},"guide-title":{fill:I5}},axis:{domainColor:I5,gridColor:L5,tickColor:I5}},R5=`#4572a7`,Vme={background:`#fff`,arc:{fill:R5},area:{fill:R5},line:{stroke:R5,strokeWidth:2},path:{stroke:R5},rect:{fill:R5},shape:{stroke:R5},symbol:{fill:R5,strokeWidth:1.5,size:50},axis:{bandPosition:.5,grid:!0,gridColor:`#000000`,gridOpacity:1,gridWidth:.5,labelPadding:10,tickSize:5,tickWidth:.5},axisBand:{grid:!1,tickExtra:!0},legend:{labelBaseline:`middle`,labelFontSize:11,symbolSize:50,symbolType:`square`},range:{category:[`#4572a7`,`#aa4643`,`#8aa453`,`#71598e`,`#4598ae`,`#d98445`,`#94aace`,`#d09393`,`#b9cc98`,`#a99cbc`]}},z5=`#30a2da`,B5=`#cbcbcb`,Hme=`#999`,Ume=`#333`,V5=`#f0f0f0`,H5=`#333`,Wme={arc:{fill:z5},area:{fill:z5},axis:{domainColor:B5,grid:!0,gridColor:B5,gridWidth:1,labelColor:Hme,labelFontSize:10,titleColor:Ume,tickColor:B5,tickSize:10,titleFontSize:14,titlePadding:10,labelPadding:4},axisBand:{grid:!1},background:V5,group:{fill:V5},legend:{labelColor:H5,labelFontSize:11,padding:1,symbolSize:30,symbolType:`square`,titleColor:H5,titleFontSize:14,titlePadding:10},line:{stroke:z5,strokeWidth:2},path:{stroke:z5,strokeWidth:.5},rect:{fill:z5},range:{category:[`#30a2da`,`#fc4f30`,`#e5ae38`,`#6d904f`,`#8b8b8b`,`#b96db8`,`#ff9e27`,`#56cc60`,`#52d2ca`,`#52689e`,`#545454`,`#9fe4f8`],diverging:[`#cc0020`,`#e77866`,`#f6e7e1`,`#d6e8ed`,`#91bfd9`,`#1d78b5`],heatmap:[`#d6e8ed`,`#cee0e5`,`#91bfd9`,`#549cc6`,`#1d78b5`]},point:{filled:!0,shape:`circle`},shape:{stroke:z5},bar:{binSpacing:2,fill:z5,stroke:null},title:{anchor:`start`,fontSize:24,fontWeight:600,offset:20}},U5=`#000`,Gme={group:{fill:`#e5e5e5`},arc:{fill:U5},area:{fill:U5},line:{stroke:U5},path:{stroke:U5},rect:{fill:U5},shape:{stroke:U5},symbol:{fill:U5,size:40},axis:{domain:!1,grid:!0,gridColor:`#FFFFFF`,gridOpacity:1,labelColor:`#7F7F7F`,labelPadding:4,tickColor:`#7F7F7F`,tickSize:5.67,titleFontSize:16,titleFontWeight:`normal`},legend:{labelBaseline:`middle`,labelFontSize:11,symbolSize:40},range:{category:[`#000000`,`#7F7F7F`,`#1A1A1A`,`#999999`,`#333333`,`#B0B0B0`,`#4D4D4D`,`#C9C9C9`,`#666666`,`#DCDCDC`]}},Kme=22,qme=`normal`,W5=`Benton Gothic, sans-serif`,G5=11.5,Jme=`normal`,K5=`#82c6df`,q5=`Benton Gothic Bold, sans-serif`,J5=`normal`,Y5=13,X5={"category-6":[`#ec8431`,`#829eb1`,`#c89d29`,`#3580b1`,`#adc839`,`#ab7fb4`],"fire-7":[`#fbf2c7`,`#f9e39c`,`#f8d36e`,`#f4bb6a`,`#e68a4f`,`#d15a40`,`#ab4232`],"fireandice-6":[`#e68a4f`,`#f4bb6a`,`#f9e39c`,`#dadfe2`,`#a6b7c6`,`#849eae`]},Yme={background:`#ffffff`,title:{anchor:`start`,color:`#000000`,font:q5,fontSize:Kme,fontWeight:qme},arc:{fill:K5},area:{fill:K5},line:{stroke:K5,strokeWidth:2},path:{stroke:K5},rect:{fill:K5},shape:{stroke:K5},symbol:{fill:K5,size:30},axis:{labelFont:W5,labelFontSize:G5,labelFontWeight:Jme,titleFont:q5,titleFontSize:Y5,titleFontWeight:J5},axisX:{labelAngle:0,labelPadding:4,tickSize:3},axisY:{labelBaseline:`middle`,maxExtent:45,minExtent:45,tickSize:2,titleAlign:`left`,titleAngle:0,titleX:-45,titleY:-11},legend:{labelFont:W5,labelFontSize:G5,symbolType:`square`,titleFont:q5,titleFontSize:Y5,titleFontWeight:J5},range:{category:X5[`category-6`],diverging:X5[`fireandice-6`],heatmap:X5[`fire-7`],ordinal:X5[`fire-7`],ramp:X5[`fire-7`]}},Z5=`#ab5787`,Q5=`#979797`,Xme={background:`#f9f9f9`,arc:{fill:Z5},area:{fill:Z5},line:{stroke:Z5},path:{stroke:Z5},rect:{fill:Z5},shape:{stroke:Z5},symbol:{fill:Z5,size:30},axis:{domainColor:Q5,domainWidth:.5,gridWidth:.2,labelColor:Q5,tickColor:Q5,tickWidth:.2,titleColor:Q5},axisBand:{grid:!1},axisX:{grid:!0,tickSize:10},axisY:{domain:!1,grid:!0,tickSize:0},legend:{labelFontSize:11,padding:1,symbolSize:30,symbolType:`square`},range:{category:[`#ab5787`,`#51b2e5`,`#703c5c`,`#168dd9`,`#d190b6`,`#00609f`,`#d365ba`,`#154866`,`#666666`,`#c4c4c4`]}},$5=`#3e5c69`,Zme={background:`#fff`,arc:{fill:$5},area:{fill:$5},line:{stroke:$5},path:{stroke:$5},rect:{fill:$5},shape:{stroke:$5},symbol:{fill:$5},axis:{domainWidth:.5,grid:!0,labelPadding:2,tickSize:5,tickWidth:.5,titleFontWeight:`normal`},axisBand:{grid:!1},axisX:{gridWidth:.2},axisY:{gridDash:[3],gridWidth:.4},legend:{labelFontSize:11,padding:1,symbolType:`square`},range:{category:[`#3e5c69`,`#6793a6`,`#182429`,`#0570b0`,`#3690c0`,`#74a9cf`,`#a6bddb`,`#e2ddf2`]}},e7=`#1696d2`,t7=`#000000`,Qme=`#FFFFFF`,n7=`Lato`,r7=`Lato`,$me=`Lato`,ehe=`#DEDDDD`,the=18,i7={"shades-blue":[`#CFE8F3`,`#A2D4EC`,`#73BFE2`,`#46ABDB`,`#1696D2`,`#12719E`,`#0A4C6A`,`#062635`],"six-groups-cat-1":[`#1696d2`,`#ec008b`,`#fdbf11`,`#000000`,`#d2d2d2`,`#55b748`],"six-groups-seq":[`#cfe8f3`,`#a2d4ec`,`#73bfe2`,`#46abdb`,`#1696d2`,`#12719e`],"diverging-colors":[`#ca5800`,`#fdbf11`,`#fdd870`,`#fff2cf`,`#cfe8f3`,`#73bfe2`,`#1696d2`,`#0a4c6a`]},nhe={background:Qme,title:{anchor:`start`,fontSize:the,font:n7},axisX:{domain:!0,domainColor:t7,domainWidth:1,grid:!1,labelFontSize:12,labelFont:r7,labelAngle:0,tickColor:t7,tickSize:5,titleFontSize:12,titlePadding:10,titleFont:n7},axisY:{domain:!1,domainWidth:1,grid:!0,gridColor:ehe,gridWidth:1,labelFontSize:12,labelFont:r7,labelPadding:8,ticks:!1,titleFontSize:12,titlePadding:10,titleFont:n7,titleAngle:0,titleY:-10,titleX:18},legend:{labelFontSize:12,labelFont:r7,symbolSize:100,titleFontSize:12,titlePadding:10,titleFont:n7,orient:`right`,offset:10},view:{stroke:`transparent`},range:{category:i7[`six-groups-cat-1`],diverging:i7[`diverging-colors`],heatmap:i7[`diverging-colors`],ordinal:i7[`six-groups-seq`],ramp:i7[`shades-blue`]},area:{fill:e7},rect:{fill:e7},line:{color:e7,stroke:e7,strokeWidth:5},trail:{color:e7,stroke:e7,strokeWidth:0,size:1},path:{stroke:e7,strokeWidth:.5},point:{filled:!0},text:{font:$me,color:e7,fontSize:11,align:`center`,fontWeight:400,size:11},style:{bar:{fill:e7,stroke:null}},arc:{fill:e7},shape:{stroke:e7},symbol:{fill:e7,size:30}},a7=`#3366CC`,o7=`#ccc`,s7=`Arial, sans-serif`,rhe={arc:{fill:a7},area:{fill:a7},path:{stroke:a7},rect:{fill:a7},shape:{stroke:a7},symbol:{stroke:a7},circle:{fill:a7},background:`#fff`,padding:{top:10,right:10,bottom:10,left:10},style:{"guide-label":{font:s7,fontSize:12},"guide-title":{font:s7,fontSize:12},"group-title":{font:s7,fontSize:12}},title:{font:s7,fontSize:14,fontWeight:`bold`,dy:-3,anchor:`start`},axis:{gridColor:o7,tickColor:o7,domain:!1,grid:!0},range:{category:[`#4285F4`,`#DB4437`,`#F4B400`,`#0F9D58`,`#AB47BC`,`#00ACC1`,`#FF7043`,`#9E9D24`,`#5C6BC0`,`#F06292`,`#00796B`,`#C2185B`],heatmap:[`#c6dafc`,`#5e97f6`,`#2a56c6`]}},c7=e=>e*(1/3+1),l7=c7(9),u7=c7(10),d7=c7(12),f7=`Segoe UI`,p7=`wf_standard-font, helvetica, arial, sans-serif`,m7=`#252423`,h7=`#605E5C`,g7=`transparent`,ihe=`#C8C6C4`,_7=`#118DFF`,ahe=`#12239E`,ohe=`#E66C37`,she=`#6B007B`,che=`#E044A7`,lhe=`#744EC2`,uhe=`#D9B300`,dhe=`#D64550`,v7=_7,y7=`#DEEFFF`,b7=[y7,v7],fhe={view:{stroke:g7},background:g7,font:f7,header:{titleFont:p7,titleFontSize:d7,titleColor:m7,labelFont:f7,labelFontSize:u7,labelColor:h7},axis:{ticks:!1,grid:!1,domain:!1,labelColor:h7,labelFontSize:l7,titleFont:p7,titleColor:m7,titleFontSize:d7,titleFontWeight:`normal`},axisQuantitative:{tickCount:3,grid:!0,gridColor:ihe,gridDash:[1,5],labelFlush:!1},axisBand:{tickExtra:!0},axisX:{labelPadding:5},axisY:{labelPadding:10},bar:{fill:_7},line:{stroke:_7,strokeWidth:3,strokeCap:`round`,strokeJoin:`round`},text:{font:f7,fontSize:l7,fill:h7},arc:{fill:_7},area:{fill:_7,line:!0,opacity:.6},path:{stroke:_7},rect:{fill:_7},point:{fill:_7,filled:!0,size:75},shape:{stroke:_7},symbol:{fill:_7,strokeWidth:1.5,size:50},legend:{titleFont:f7,titleFontWeight:`bold`,titleColor:h7,labelFont:f7,labelFontSize:u7,labelColor:h7,symbolType:`circle`,symbolSize:75},range:{category:[_7,ahe,ohe,she,che,lhe,uhe,dhe],diverging:b7,heatmap:b7,ordinal:[y7,`#c7e4ff`,`#b0d9ff`,`#9aceff`,`#83c3ff`,`#6cb9ff`,`#55aeff`,`#3fa3ff`,`#2898ff`,v7]}},x7=`IBM Plex Sans,system-ui,-apple-system,BlinkMacSystemFont,".sfnstext-regular",sans-serif`,phe=`IBM Plex Sans Condensed, system-ui, -apple-system, BlinkMacSystemFont, ".SFNSText-Regular", sans-serif`,S7=400,C7={textPrimary:{g90:`#f4f4f4`,g100:`#f4f4f4`,white:`#161616`,g10:`#161616`},textSecondary:{g90:`#c6c6c6`,g100:`#c6c6c6`,white:`#525252`,g10:`#525252`},layerAccent01:{white:`#e0e0e0`,g10:`#e0e0e0`,g90:`#525252`,g100:`#393939`},gridBg:{white:`#ffffff`,g10:`#ffffff`,g90:`#161616`,g100:`#161616`}},mhe=[`#8a3ffc`,`#33b1ff`,`#007d79`,`#ff7eb6`,`#fa4d56`,`#fff1f1`,`#6fdc8c`,`#4589ff`,`#d12771`,`#d2a106`,`#08bdba`,`#bae6ff`,`#ba4e00`,`#d4bbff`],hhe=[`#6929c4`,`#1192e8`,`#005d5d`,`#9f1853`,`#fa4d56`,`#570408`,`#198038`,`#002d9c`,`#ee538b`,`#b28600`,`#009d9a`,`#012749`,`#8a3800`,`#a56eff`];function w7({theme:e,background:t}){let n=[`white`,`g10`].includes(e)?`light`:`dark`,r=C7.gridBg[e],i=C7.textPrimary[e],a=C7.textSecondary[e],o=n===`dark`?mhe:hhe,s=n===`dark`?`#d4bbff`:`#6929c4`;return{background:t,arc:{fill:s},area:{fill:s},path:{stroke:s},rect:{fill:s},shape:{stroke:s},symbol:{stroke:s},circle:{fill:s},view:{fill:r,stroke:r},group:{fill:r},title:{color:i,anchor:`start`,dy:-15,fontSize:16,font:x7,fontWeight:600},axis:{labelColor:a,labelFontSize:12,labelFont:phe,labelFontWeight:S7,titleColor:i,titleFontWeight:600,titleFontSize:12,grid:!0,gridColor:C7.layerAccent01[e],labelAngle:0},axisX:{titlePadding:10},axisY:{titlePadding:2.5},style:{"guide-label":{font:x7,fill:a,fontWeight:S7},"guide-title":{font:x7,fill:a,fontWeight:S7}},range:{category:o,diverging:[`#750e13`,`#a2191f`,`#da1e28`,`#fa4d56`,`#ff8389`,`#ffb3b8`,`#ffd7d9`,`#fff1f1`,`#e5f6ff`,`#bae6ff`,`#82cfff`,`#33b1ff`,`#1192e8`,`#0072c3`,`#00539a`,`#003a6d`],heatmap:[`#f6f2ff`,`#e8daff`,`#d4bbff`,`#be95ff`,`#a56eff`,`#8a3ffc`,`#6929c4`,`#491d8b`,`#31135e`,`#1c0f30`]}}}var ghe=w7({theme:`white`,background:`#ffffff`}),_he=w7({theme:`g10`,background:`#f4f4f4`}),vhe=w7({theme:`g90`,background:`#262626`}),yhe=w7({theme:`g100`,background:`#161616`}),bhe=zme.version,xhe={version:`1.0.0`};function She(e,t,n,r){if(N(e))return`[${e.map(e=>t(P(e)?e:T7(e,n))).join(`, `)}]`;if(M(e)){let i=``,{title:a,image:o,...s}=e;a&&(i+=`<h2>${t(a)}</h2>`),o&&(i+=`<img src="${new URL(t(o),r||location.href).href}">`);let c=Object.keys(s);if(c.length>0){i+=`<table>`;for(let e of c){let r=s[e];r!==void 0&&(M(r)&&(r=T7(r,n)),i+=`<tr><td class="key">${t(e)}</td><td class="value">${t(r)}</td></tr>`)}i+=`</table>`}return i||`{}`}return t(e)}function Che(e){let t=[];return function(n,r){if(typeof r!=`object`||!r)return r;let i=t.indexOf(this)+1;return t.length=i,t.length>e?`[Object]`:t.indexOf(r)>=0?`[Circular]`:(t.push(r),r)}}function T7(e,t){return JSON.stringify(e,Che(t))}var whe=`#vg-tooltip-element {
|
|
12
|
+
visibility: hidden;
|
|
13
|
+
padding: 8px;
|
|
14
|
+
position: fixed;
|
|
15
|
+
z-index: 1000;
|
|
16
|
+
font-family: sans-serif;
|
|
17
|
+
font-size: 11px;
|
|
18
|
+
border-radius: 3px;
|
|
19
|
+
box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1);
|
|
20
|
+
/* The default theme is the light theme. */
|
|
21
|
+
background-color: rgba(255, 255, 255, 0.95);
|
|
22
|
+
border: 1px solid #d9d9d9;
|
|
23
|
+
color: black;
|
|
24
|
+
}
|
|
25
|
+
#vg-tooltip-element.visible {
|
|
26
|
+
visibility: visible;
|
|
27
|
+
}
|
|
28
|
+
#vg-tooltip-element h2 {
|
|
29
|
+
margin-top: 0;
|
|
30
|
+
margin-bottom: 10px;
|
|
31
|
+
font-size: 13px;
|
|
32
|
+
}
|
|
33
|
+
#vg-tooltip-element table {
|
|
34
|
+
border-spacing: 0;
|
|
35
|
+
}
|
|
36
|
+
#vg-tooltip-element table tr {
|
|
37
|
+
border: none;
|
|
38
|
+
}
|
|
39
|
+
#vg-tooltip-element table tr td {
|
|
40
|
+
overflow: hidden;
|
|
41
|
+
text-overflow: ellipsis;
|
|
42
|
+
padding-top: 2px;
|
|
43
|
+
padding-bottom: 2px;
|
|
44
|
+
}
|
|
45
|
+
#vg-tooltip-element table tr td.key {
|
|
46
|
+
color: #808080;
|
|
47
|
+
max-width: 150px;
|
|
48
|
+
text-align: right;
|
|
49
|
+
padding-right: 4px;
|
|
50
|
+
}
|
|
51
|
+
#vg-tooltip-element table tr td.value {
|
|
52
|
+
display: block;
|
|
53
|
+
max-width: 300px;
|
|
54
|
+
max-height: 7em;
|
|
55
|
+
text-align: left;
|
|
56
|
+
}
|
|
57
|
+
#vg-tooltip-element.dark-theme {
|
|
58
|
+
background-color: rgba(32, 32, 32, 0.9);
|
|
59
|
+
border: 1px solid #f5f5f5;
|
|
60
|
+
color: white;
|
|
61
|
+
}
|
|
62
|
+
#vg-tooltip-element.dark-theme td.key {
|
|
63
|
+
color: #bfbfbf;
|
|
64
|
+
}
|
|
65
|
+
`,E7=`vg-tooltip-element`,The={offsetX:10,offsetY:10,id:E7,styleId:`vega-tooltip-style`,theme:`light`,disableDefaultStyle:!1,sanitize:Ehe,maxDepth:2,formatTooltip:She,baseURL:``,anchor:`cursor`,position:[`top`,`bottom`,`left`,`right`,`top-left`,`top-right`,`bottom-left`,`bottom-right`]};function Ehe(e){return String(e).replace(/&/g,`&`).replace(/</g,`<`)}function Dhe(e){if(!/^[A-Za-z]+[-:.\w]*$/.test(e))throw Error(`Invalid HTML ID`);return whe.toString().replaceAll(E7,e)}function D7(e,t,{offsetX:n,offsetY:r}){let i=O7({x1:e.clientX,x2:e.clientX,y1:e.clientY,y2:e.clientY},t,n,r);for(let e of[`bottom-right`,`bottom-left`,`top-right`,`top-left`])if(k7(i[e],t))return i[e];return i[`top-left`]}function Ohe(e,t,n,r,i){let{position:a,offsetX:o,offsetY:s}=i,c=e._el.getBoundingClientRect(),l=e._origin,u=O7(khe(c,l,n),r,o,s),d=Array.isArray(a)?a:[a];for(let e of d)if(k7(u[e],r)&&!Ahe(t,u[e],r))return u[e];return D7(t,r,i)}function khe(e,t,n){let r=n.isVoronoi?n.datum.bounds:n.bounds,i=e.left+t[0]+r.x1,a=e.top+t[1]+r.y1,o=n;for(;o.mark.group;)o=o.mark.group,i+=o.x??0,a+=o.y??0;let s=r.x2-r.x1,c=r.y2-r.y1;return{x1:i,x2:i+s,y1:a,y2:a+c}}function O7(e,t,n,r){let i=(e.x1+e.x2)/2,a=(e.y1+e.y2)/2,o=e.x1-t.width-n,s=i-t.width/2,c=e.x2+n,l=e.y1-t.height-r,u=a-t.height/2,d=e.y2+r;return{top:{x:s,y:l},bottom:{x:s,y:d},left:{x:o,y:u},right:{x:c,y:u},"top-left":{x:o,y:l},"top-right":{x:c,y:l},"bottom-left":{x:o,y:d},"bottom-right":{x:c,y:d}}}function k7(e,t){return e.x>=0&&e.y>=0&&e.x+t.width<=window.innerWidth&&e.y+t.height<=window.innerHeight}function Ahe(e,t,n){return e.clientX>=t.x&&e.clientX<=t.x+n.width&&e.clientY>=t.y&&e.clientY<=t.y+n.height}var jhe=class{call;options;el;constructor(e){this.options={...The,...e};let t=this.options.id;if(this.el=null,this.call=this.tooltipHandler.bind(this),!this.options.disableDefaultStyle&&!document.getElementById(this.options.styleId)){let e=document.createElement(`style`);e.setAttribute(`id`,this.options.styleId),e.innerHTML=Dhe(t);let n=document.head;n.childNodes.length>0?n.insertBefore(e,n.childNodes[0]):n.appendChild(e)}}tooltipHandler(e,t,n,r){if(this.el=document.getElementById(this.options.id),this.el||(this.el=document.createElement(`div`),this.el.setAttribute(`id`,this.options.id),this.el.classList.add(`vg-tooltip`),(document.fullscreenElement??document.body).appendChild(this.el)),r==null||r===``){this.el.classList.remove(`visible`,`${this.options.theme}-theme`);return}this.el.innerHTML=this.options.formatTooltip(r,this.options.sanitize,this.options.maxDepth,this.options.baseURL),this.el.classList.add(`visible`,`${this.options.theme}-theme`);let{x:i,y:a}=this.options.anchor===`mark`?Ohe(e,t,n,this.el.getBoundingClientRect(),this.options):D7(t,this.el.getBoundingClientRect(),this.options);this.el.style.top=`${a}px`,this.el.style.left=`${i}px`}};xhe.version;var Mhe=(function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])},e(t,n)};return function(t,n){e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}})(),Nhe=Object.prototype.hasOwnProperty;function A7(e,t){return Nhe.call(e,t)}function j7(e){if(Array.isArray(e)){for(var t=Array(e.length),n=0;n<t.length;n++)t[n]=``+n;return t}if(Object.keys)return Object.keys(e);var r=[];for(var i in e)A7(e,i)&&r.push(i);return r}function M7(e){switch(typeof e){case`object`:return JSON.parse(JSON.stringify(e));case`undefined`:return null;default:return e}}function N7(e){for(var t=0,n=e.length,r;t<n;){if(r=e.charCodeAt(t),r>=48&&r<=57){t++;continue}return!1}return!0}function P7(e){return e.indexOf(`/`)===-1&&e.indexOf(`~`)===-1?e:e.replace(/~/g,`~0`).replace(/\//g,`~1`)}function F7(e){return e.replace(/~1/g,`/`).replace(/~0/g,`~`)}function I7(e){if(e===void 0)return!0;if(e){if(Array.isArray(e)){for(var t=0,n=e.length;t<n;t++)if(I7(e[t]))return!0}else if(typeof e==`object`){for(var r=j7(e),i=r.length,a=0;a<i;a++)if(I7(e[r[a]]))return!0}}return!1}function L7(e,t){var n=[e];for(var r in t){var i=typeof t[r]==`object`?JSON.stringify(t[r],null,2):t[r];i!==void 0&&n.push(r+`: `+i)}return n.join(`
|
|
66
|
+
`)}var R7=function(e){Mhe(t,e);function t(t,n,r,i,a){var o=this.constructor,s=e.call(this,L7(t,{name:n,index:r,operation:i,tree:a}))||this;return s.name=n,s.index=r,s.operation=i,s.tree=a,Object.setPrototypeOf(s,o.prototype),s.message=L7(t,{name:n,index:r,operation:i,tree:a}),s}return t}(Error),z7=R7,Phe=M7,B7={add:function(e,t,n){return e[t]=this.value,{newDocument:n}},remove:function(e,t,n){var r=e[t];return delete e[t],{newDocument:n,removed:r}},replace:function(e,t,n){var r=e[t];return e[t]=this.value,{newDocument:n,removed:r}},move:function(e,t,n){var r=V7(n,this.path);r&&=M7(r);var i=H7(n,{op:`remove`,path:this.from}).removed;return H7(n,{op:`add`,path:this.path,value:i}),{newDocument:n,removed:r}},copy:function(e,t,n){var r=V7(n,this.from);return H7(n,{op:`add`,path:this.path,value:M7(r)}),{newDocument:n}},test:function(e,t,n){return{newDocument:n,test:K7(e[t],this.value)}},_get:function(e,t,n){return this.value=e[t],{newDocument:n}}},Fhe={add:function(e,t,n){return N7(t)?e.splice(t,0,this.value):e[t]=this.value,{newDocument:n,index:t}},remove:function(e,t,n){return{newDocument:n,removed:e.splice(t,1)[0]}},replace:function(e,t,n){var r=e[t];return e[t]=this.value,{newDocument:n,removed:r}},move:B7.move,copy:B7.copy,test:B7.test,_get:B7._get};function V7(e,t){if(t==``)return e;var n={op:`_get`,path:t};return H7(e,n),n.value}function H7(e,t,n,r,i,a){if(n===void 0&&(n=!1),r===void 0&&(r=!0),i===void 0&&(i=!0),a===void 0&&(a=0),n&&(typeof n==`function`?n(t,0,e,t.path):W7(t,0)),t.path===``){var o={newDocument:e};if(t.op===`add`)return o.newDocument=t.value,o;if(t.op===`replace`)return o.newDocument=t.value,o.removed=e,o;if(t.op===`move`||t.op===`copy`)return o.newDocument=V7(e,t.from),t.op===`move`&&(o.removed=e),o;if(t.op===`test`){if(o.test=K7(e,t.value),o.test===!1)throw new z7(`Test operation failed`,`TEST_OPERATION_FAILED`,a,t,e);return o.newDocument=e,o}if(t.op===`remove`)return o.removed=e,o.newDocument=null,o;if(t.op===`_get`)return t.value=e,o;if(n)throw new z7("Operation `op` property is not one of operations defined in RFC-6902",`OPERATION_OP_INVALID`,a,t,e);return o}r||(e=M7(e));var s=(t.path||``).split(`/`),c=e,l=1,u=s.length,d=void 0,f=void 0,p=void 0;for(p=typeof n==`function`?n:W7;;){if(f=s[l],f&&f.indexOf(`~`)!=-1&&(f=F7(f)),i&&(f==`__proto__`||f==`prototype`&&l>0&&s[l-1]==`constructor`))throw TypeError("JSON-Patch: modifying `__proto__` or `constructor/prototype` prop is banned for security reasons, if this was on purpose, please set `banPrototypeModifications` flag false and pass it to this function. More info in fast-json-patch README");if(n&&d===void 0&&(c[f]===void 0?d=s.slice(0,l).join(`/`):l==u-1&&(d=t.path),d!==void 0&&p(t,0,e,d)),l++,Array.isArray(c)){if(f===`-`)f=c.length;else if(n&&!N7(f))throw new z7(`Expected an unsigned base-10 integer value, making the new referenced value the array element with the zero-based index`,`OPERATION_PATH_ILLEGAL_ARRAY_INDEX`,a,t,e);else N7(f)&&(f=~~f);if(l>=u){if(n&&t.op===`add`&&f>c.length)throw new z7(`The specified index MUST NOT be greater than the number of elements in the array`,`OPERATION_VALUE_OUT_OF_BOUNDS`,a,t,e);var o=Fhe[t.op].call(t,c,f,e);if(o.test===!1)throw new z7(`Test operation failed`,`TEST_OPERATION_FAILED`,a,t,e);return o}}else if(l>=u){var o=B7[t.op].call(t,c,f,e);if(o.test===!1)throw new z7(`Test operation failed`,`TEST_OPERATION_FAILED`,a,t,e);return o}if(c=c[f],n&&l<u&&(!c||typeof c!=`object`))throw new z7(`Cannot perform operation at the desired path`,`OPERATION_PATH_UNRESOLVABLE`,a,t,e)}}function U7(e,t,n,r,i){if(r===void 0&&(r=!0),i===void 0&&(i=!0),n&&!Array.isArray(t))throw new z7(`Patch sequence must be an array`,`SEQUENCE_NOT_AN_ARRAY`);r||(e=M7(e));for(var a=Array(t.length),o=0,s=t.length;o<s;o++)a[o]=H7(e,t[o],n,!0,i,o),e=a[o].newDocument;return a.newDocument=e,a}function Ihe(e,t,n){var r=H7(e,t);if(r.test===!1)throw new z7(`Test operation failed`,`TEST_OPERATION_FAILED`,n,t,e);return r.newDocument}function W7(e,t,n,r){if(typeof e!=`object`||!e||Array.isArray(e))throw new z7(`Operation is not an object`,`OPERATION_NOT_AN_OBJECT`,t,e,n);if(!B7[e.op])throw new z7("Operation `op` property is not one of operations defined in RFC-6902",`OPERATION_OP_INVALID`,t,e,n);if(typeof e.path!=`string`)throw new z7("Operation `path` property is not a string",`OPERATION_PATH_INVALID`,t,e,n);if(e.path.indexOf(`/`)!==0&&e.path.length>0)throw new z7('Operation `path` property must start with "/"',`OPERATION_PATH_INVALID`,t,e,n);if((e.op===`move`||e.op===`copy`)&&typeof e.from!=`string`)throw new z7("Operation `from` property is not present (applicable in `move` and `copy` operations)",`OPERATION_FROM_REQUIRED`,t,e,n);if((e.op===`add`||e.op===`replace`||e.op===`test`)&&e.value===void 0)throw new z7("Operation `value` property is not present (applicable in `add`, `replace` and `test` operations)",`OPERATION_VALUE_REQUIRED`,t,e,n);if((e.op===`add`||e.op===`replace`||e.op===`test`)&&I7(e.value))throw new z7("Operation `value` property is not present (applicable in `add`, `replace` and `test` operations)",`OPERATION_VALUE_CANNOT_CONTAIN_UNDEFINED`,t,e,n);if(n){if(e.op==`add`){var i=e.path.split(`/`).length,a=r.split(`/`).length;if(i!==a+1&&i!==a)throw new z7("Cannot perform an `add` operation at the desired path",`OPERATION_PATH_CANNOT_ADD`,t,e,n)}else if(e.op===`replace`||e.op===`remove`||e.op===`_get`){if(e.path!==r)throw new z7(`Cannot perform the operation at a path that does not exist`,`OPERATION_PATH_UNRESOLVABLE`,t,e,n)}else if(e.op===`move`||e.op===`copy`){var o=G7([{op:`_get`,path:e.from,value:void 0}],n);if(o&&o.name===`OPERATION_PATH_UNRESOLVABLE`)throw new z7(`Cannot perform the operation from a path that does not exist`,`OPERATION_FROM_UNRESOLVABLE`,t,e,n)}}}function G7(e,t,n){try{if(!Array.isArray(e))throw new z7(`Patch sequence must be an array`,`SEQUENCE_NOT_AN_ARRAY`);if(t)U7(M7(t),M7(e),n||!0);else{n||=W7;for(var r=0;r<e.length;r++)n(e[r],r,t,void 0)}}catch(e){if(e instanceof z7)return e;throw e}}function K7(e,t){if(e===t)return!0;if(e&&t&&typeof e==`object`&&typeof t==`object`){var n=Array.isArray(e),r=Array.isArray(t),i,a,o;if(n&&r){if(a=e.length,a!=t.length)return!1;for(i=a;i--!==0;)if(!K7(e[i],t[i]))return!1;return!0}if(n!=r)return!1;var s=Object.keys(e);if(a=s.length,a!==Object.keys(t).length)return!1;for(i=a;i--!==0;)if(!t.hasOwnProperty(s[i]))return!1;for(i=a;i--!==0;)if(o=s[i],!K7(e[o],t[o]))return!1;return!0}return e!==e&&t!==t}var Lhe=Object.freeze({__proto__:null,JsonPatchError:z7,_areEquals:K7,applyOperation:H7,applyPatch:U7,applyReducer:Ihe,deepClone:Phe,getValueByPointer:V7,validate:G7,validator:W7}),q7=new WeakMap,Rhe=function(){function e(e){this.observers=new Map,this.obj=e}return e}(),zhe=function(){function e(e,t){this.callback=e,this.observer=t}return e}();function Bhe(e){return q7.get(e)}function Vhe(e,t){return e.observers.get(t)}function Hhe(e,t){e.observers.delete(t.callback)}function Uhe(e,t){t.unobserve()}function Whe(e,t){var n=[],r,i=Bhe(e);if(!i)i=new Rhe(e),q7.set(e,i);else{var a=Vhe(i,t);r=a&&a.observer}if(r)return r;if(r={},i.value=M7(e),t){r.callback=t,r.next=null;var o=function(){J7(r)},s=function(){clearTimeout(r.next),r.next=setTimeout(o)};typeof window<`u`&&(window.addEventListener(`mouseup`,s),window.addEventListener(`keyup`,s),window.addEventListener(`mousedown`,s),window.addEventListener(`keydown`,s),window.addEventListener(`change`,s))}return r.patches=n,r.object=e,r.unobserve=function(){J7(r),clearTimeout(r.next),Hhe(i,r),typeof window<`u`&&(window.removeEventListener(`mouseup`,s),window.removeEventListener(`keyup`,s),window.removeEventListener(`mousedown`,s),window.removeEventListener(`keydown`,s),window.removeEventListener(`change`,s))},i.observers.set(t,new zhe(t,r)),r}function J7(e,t){t===void 0&&(t=!1);var n=q7.get(e.object);Y7(n.value,e.object,e.patches,``,t),e.patches.length&&U7(n.value,e.patches);var r=e.patches;return r.length>0&&(e.patches=[],e.callback&&e.callback(r)),r}function Y7(e,t,n,r,i){if(t!==e){typeof t.toJSON==`function`&&(t=t.toJSON());for(var a=j7(t),o=j7(e),s=!1,c=o.length-1;c>=0;c--){var l=o[c],u=e[l];if(A7(t,l)&&(t[l]!==void 0||u===void 0||Array.isArray(t)!==!1)){var d=t[l];typeof u==`object`&&u&&typeof d==`object`&&d&&Array.isArray(u)===Array.isArray(d)?Y7(u,d,n,r+`/`+P7(l),i):u!==d&&(i&&n.push({op:`test`,path:r+`/`+P7(l),value:M7(u)}),n.push({op:`replace`,path:r+`/`+P7(l),value:M7(d)}))}else Array.isArray(e)===Array.isArray(t)?(i&&n.push({op:`test`,path:r+`/`+P7(l),value:M7(u)}),n.push({op:`remove`,path:r+`/`+P7(l)}),s=!0):(i&&n.push({op:`test`,path:r,value:e}),n.push({op:`replace`,path:r,value:t}))}if(!(!s&&a.length==o.length))for(var c=0;c<a.length;c++){var l=a[c];!A7(e,l)&&t[l]!==void 0&&n.push({op:`add`,path:r+`/`+P7(l),value:M7(t[l])})}}}function Ghe(e,t,n){n===void 0&&(n=!1);var r=[];return Y7(e,t,r,``,n),r}Object.assign({},Lhe,Object.freeze({__proto__:null,compare:Ghe,generate:J7,observe:Whe,unobserve:Uhe}),{JsonPatchError:R7,deepClone:M7,escapePathComponent:P7,unescapePathComponent:F7});function Khe(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,`default`)?e.default:e}var X7,Z7;function qhe(){if(Z7)return X7;Z7=1;class e{constructor(){this.max=1e3,this.map=new Map}get(e){let t=this.map.get(e);if(t!==void 0)return this.map.delete(e),this.map.set(e,t),t}delete(e){return this.map.delete(e)}set(e,t){if(!this.delete(e)&&t!==void 0){if(this.map.size>=this.max){let e=this.map.keys().next().value;this.delete(e)}this.map.set(e,t)}return this}}return X7=e,X7}var Q7,$7;function e9(){if($7)return Q7;$7=1;let e=Object.freeze({loose:!0}),t=Object.freeze({});return Q7=n=>n?typeof n==`object`?n:e:t,Q7}var t9={exports:{}},n9,r9;function i9(){return r9?n9:(r9=1,n9={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:2**53-1||9007199254740991,RELEASE_TYPES:[`major`,`premajor`,`minor`,`preminor`,`patch`,`prepatch`,`prerelease`],SEMVER_SPEC_VERSION:`2.0.0`,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2},n9)}var a9,o9;function s9(){return o9?a9:(o9=1,a9=typeof process==`object`&&{}.NODE_DEBUG&&/\bsemver\b/i.test({}.NODE_DEBUG)?(...e)=>console.error(`SEMVER`,...e):()=>{},a9)}var c9;function l9(){return c9?t9.exports:(c9=1,(function(e,t){let{MAX_SAFE_COMPONENT_LENGTH:n,MAX_SAFE_BUILD_LENGTH:r,MAX_LENGTH:i}=i9(),a=s9();t=e.exports={};let o=t.re=[],s=t.safeRe=[],c=t.src=[],l=t.safeSrc=[],u=t.t={},d=0,f=`[a-zA-Z0-9-]`,p=[[`\\s`,1],[`\\d`,i],[f,r]],m=e=>{for(let[t,n]of p)e=e.split(`${t}*`).join(`${t}{0,${n}}`).split(`${t}+`).join(`${t}{1,${n}}`);return e},h=(e,t,n)=>{let r=m(t),i=d++;a(e,i,t),u[e]=i,c[i]=t,l[i]=r,o[i]=new RegExp(t,n?`g`:void 0),s[i]=new RegExp(r,n?`g`:void 0)};h(`NUMERICIDENTIFIER`,`0|[1-9]\\d*`),h(`NUMERICIDENTIFIERLOOSE`,`\\d+`),h(`NONNUMERICIDENTIFIER`,`\\d*[a-zA-Z-]${f}*`),h(`MAINVERSION`,`(${c[u.NUMERICIDENTIFIER]})\\.(${c[u.NUMERICIDENTIFIER]})\\.(${c[u.NUMERICIDENTIFIER]})`),h(`MAINVERSIONLOOSE`,`(${c[u.NUMERICIDENTIFIERLOOSE]})\\.(${c[u.NUMERICIDENTIFIERLOOSE]})\\.(${c[u.NUMERICIDENTIFIERLOOSE]})`),h(`PRERELEASEIDENTIFIER`,`(?:${c[u.NONNUMERICIDENTIFIER]}|${c[u.NUMERICIDENTIFIER]})`),h(`PRERELEASEIDENTIFIERLOOSE`,`(?:${c[u.NONNUMERICIDENTIFIER]}|${c[u.NUMERICIDENTIFIERLOOSE]})`),h(`PRERELEASE`,`(?:-(${c[u.PRERELEASEIDENTIFIER]}(?:\\.${c[u.PRERELEASEIDENTIFIER]})*))`),h(`PRERELEASELOOSE`,`(?:-?(${c[u.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${c[u.PRERELEASEIDENTIFIERLOOSE]})*))`),h(`BUILDIDENTIFIER`,`${f}+`),h(`BUILD`,`(?:\\+(${c[u.BUILDIDENTIFIER]}(?:\\.${c[u.BUILDIDENTIFIER]})*))`),h(`FULLPLAIN`,`v?${c[u.MAINVERSION]}${c[u.PRERELEASE]}?${c[u.BUILD]}?`),h(`FULL`,`^${c[u.FULLPLAIN]}$`),h(`LOOSEPLAIN`,`[v=\\s]*${c[u.MAINVERSIONLOOSE]}${c[u.PRERELEASELOOSE]}?${c[u.BUILD]}?`),h(`LOOSE`,`^${c[u.LOOSEPLAIN]}$`),h(`GTLT`,`((?:<|>)?=?)`),h(`XRANGEIDENTIFIERLOOSE`,`${c[u.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),h(`XRANGEIDENTIFIER`,`${c[u.NUMERICIDENTIFIER]}|x|X|\\*`),h(`XRANGEPLAIN`,`[v=\\s]*(${c[u.XRANGEIDENTIFIER]})(?:\\.(${c[u.XRANGEIDENTIFIER]})(?:\\.(${c[u.XRANGEIDENTIFIER]})(?:${c[u.PRERELEASE]})?${c[u.BUILD]}?)?)?`),h(`XRANGEPLAINLOOSE`,`[v=\\s]*(${c[u.XRANGEIDENTIFIERLOOSE]})(?:\\.(${c[u.XRANGEIDENTIFIERLOOSE]})(?:\\.(${c[u.XRANGEIDENTIFIERLOOSE]})(?:${c[u.PRERELEASELOOSE]})?${c[u.BUILD]}?)?)?`),h(`XRANGE`,`^${c[u.GTLT]}\\s*${c[u.XRANGEPLAIN]}$`),h(`XRANGELOOSE`,`^${c[u.GTLT]}\\s*${c[u.XRANGEPLAINLOOSE]}$`),h(`COERCEPLAIN`,`(^|[^\\d])(\\d{1,${n}})(?:\\.(\\d{1,${n}}))?(?:\\.(\\d{1,${n}}))?`),h(`COERCE`,`${c[u.COERCEPLAIN]}(?:$|[^\\d])`),h(`COERCEFULL`,c[u.COERCEPLAIN]+`(?:${c[u.PRERELEASE]})?(?:${c[u.BUILD]})?(?:$|[^\\d])`),h(`COERCERTL`,c[u.COERCE],!0),h(`COERCERTLFULL`,c[u.COERCEFULL],!0),h(`LONETILDE`,`(?:~>?)`),h(`TILDETRIM`,`(\\s*)${c[u.LONETILDE]}\\s+`,!0),t.tildeTrimReplace=`$1~`,h(`TILDE`,`^${c[u.LONETILDE]}${c[u.XRANGEPLAIN]}$`),h(`TILDELOOSE`,`^${c[u.LONETILDE]}${c[u.XRANGEPLAINLOOSE]}$`),h(`LONECARET`,`(?:\\^)`),h(`CARETTRIM`,`(\\s*)${c[u.LONECARET]}\\s+`,!0),t.caretTrimReplace=`$1^`,h(`CARET`,`^${c[u.LONECARET]}${c[u.XRANGEPLAIN]}$`),h(`CARETLOOSE`,`^${c[u.LONECARET]}${c[u.XRANGEPLAINLOOSE]}$`),h(`COMPARATORLOOSE`,`^${c[u.GTLT]}\\s*(${c[u.LOOSEPLAIN]})$|^$`),h(`COMPARATOR`,`^${c[u.GTLT]}\\s*(${c[u.FULLPLAIN]})$|^$`),h(`COMPARATORTRIM`,`(\\s*)${c[u.GTLT]}\\s*(${c[u.LOOSEPLAIN]}|${c[u.XRANGEPLAIN]})`,!0),t.comparatorTrimReplace=`$1$2$3`,h(`HYPHENRANGE`,`^\\s*(${c[u.XRANGEPLAIN]})\\s+-\\s+(${c[u.XRANGEPLAIN]})\\s*$`),h(`HYPHENRANGELOOSE`,`^\\s*(${c[u.XRANGEPLAINLOOSE]})\\s+-\\s+(${c[u.XRANGEPLAINLOOSE]})\\s*$`),h(`STAR`,`(<|>)?=?\\s*\\*`),h(`GTE0`,`^\\s*>=\\s*0\\.0\\.0\\s*$`),h(`GTE0PRE`,`^\\s*>=\\s*0\\.0\\.0-0\\s*$`)})(t9,t9.exports),t9.exports)}var u9,d9;function Jhe(){if(d9)return u9;d9=1;let e=/^[0-9]+$/,t=(t,n)=>{let r=e.test(t),i=e.test(n);return r&&i&&(t=+t,n=+n),t===n?0:r&&!i?-1:i&&!r?1:t<n?-1:1};return u9={compareIdentifiers:t,rcompareIdentifiers:(e,n)=>t(n,e)},u9}var f9,p9;function m9(){if(p9)return f9;p9=1;let e=s9(),{MAX_LENGTH:t,MAX_SAFE_INTEGER:n}=i9(),{safeRe:r,t:i}=l9(),a=e9(),{compareIdentifiers:o}=Jhe();class s{constructor(o,c){if(c=a(c),o instanceof s){if(o.loose===!!c.loose&&o.includePrerelease===!!c.includePrerelease)return o;o=o.version}else if(typeof o!=`string`)throw TypeError(`Invalid version. Must be a string. Got type "${typeof o}".`);if(o.length>t)throw TypeError(`version is longer than ${t} characters`);e(`SemVer`,o,c),this.options=c,this.loose=!!c.loose,this.includePrerelease=!!c.includePrerelease;let l=o.trim().match(c.loose?r[i.LOOSE]:r[i.FULL]);if(!l)throw TypeError(`Invalid Version: ${o}`);if(this.raw=o,this.major=+l[1],this.minor=+l[2],this.patch=+l[3],this.major>n||this.major<0)throw TypeError(`Invalid major version`);if(this.minor>n||this.minor<0)throw TypeError(`Invalid minor version`);if(this.patch>n||this.patch<0)throw TypeError(`Invalid patch version`);this.prerelease=l[4]?l[4].split(`.`).map(e=>{if(/^[0-9]+$/.test(e)){let t=+e;if(t>=0&&t<n)return t}return e}):[],this.build=l[5]?l[5].split(`.`):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(`.`)}`),this.version}toString(){return this.version}compare(t){if(e(`SemVer.compare`,this.version,this.options,t),!(t instanceof s)){if(typeof t==`string`&&t===this.version)return 0;t=new s(t,this.options)}return t.version===this.version?0:this.compareMain(t)||this.comparePre(t)}compareMain(e){return e instanceof s||(e=new s(e,this.options)),o(this.major,e.major)||o(this.minor,e.minor)||o(this.patch,e.patch)}comparePre(t){if(t instanceof s||(t=new s(t,this.options)),this.prerelease.length&&!t.prerelease.length)return-1;if(!this.prerelease.length&&t.prerelease.length)return 1;if(!this.prerelease.length&&!t.prerelease.length)return 0;let n=0;do{let r=this.prerelease[n],i=t.prerelease[n];if(e(`prerelease compare`,n,r,i),r===void 0&&i===void 0)return 0;if(i===void 0)return 1;if(r===void 0)return-1;if(r!==i)return o(r,i)}while(++n)}compareBuild(t){t instanceof s||(t=new s(t,this.options));let n=0;do{let r=this.build[n],i=t.build[n];if(e(`build compare`,n,r,i),r===void 0&&i===void 0)return 0;if(i===void 0)return 1;if(r===void 0)return-1;if(r!==i)return o(r,i)}while(++n)}inc(e,t,n){if(e.startsWith(`pre`)){if(!t&&n===!1)throw Error(`invalid increment argument: identifier is empty`);if(t){let e=`-${t}`.match(this.options.loose?r[i.PRERELEASELOOSE]:r[i.PRERELEASE]);if(!e||e[1]!==t)throw Error(`invalid identifier: ${t}`)}}switch(e){case`premajor`:this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc(`pre`,t,n);break;case`preminor`:this.prerelease.length=0,this.patch=0,this.minor++,this.inc(`pre`,t,n);break;case`prepatch`:this.prerelease.length=0,this.inc(`patch`,t,n),this.inc(`pre`,t,n);break;case`prerelease`:this.prerelease.length===0&&this.inc(`patch`,t,n),this.inc(`pre`,t,n);break;case`release`:if(this.prerelease.length===0)throw Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case`major`:(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case`minor`:(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case`patch`:this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case`pre`:{let e=+!!Number(n);if(this.prerelease.length===0)this.prerelease=[e];else{let r=this.prerelease.length;for(;--r>=0;)typeof this.prerelease[r]==`number`&&(this.prerelease[r]++,r=-2);if(r===-1){if(t===this.prerelease.join(`.`)&&n===!1)throw Error(`invalid increment argument: identifier already exists`);this.prerelease.push(e)}}if(t){let r=[t,e];n===!1&&(r=[t]),o(this.prerelease[0],t)===0?isNaN(this.prerelease[1])&&(this.prerelease=r):this.prerelease=r}break}default:throw Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(`.`)}`),this}}return f9=s,f9}var h9,g9;function _9(){if(g9)return h9;g9=1;let e=m9();return h9=(t,n,r)=>new e(t,r).compare(new e(n,r)),h9}var v9,y9;function Yhe(){if(y9)return v9;y9=1;let e=_9();return v9=(t,n,r)=>e(t,n,r)===0,v9}var b9,x9;function Xhe(){if(x9)return b9;x9=1;let e=_9();return b9=(t,n,r)=>e(t,n,r)!==0,b9}var S9,C9;function Zhe(){if(C9)return S9;C9=1;let e=_9();return S9=(t,n,r)=>e(t,n,r)>0,S9}var w9,T9;function Qhe(){if(T9)return w9;T9=1;let e=_9();return w9=(t,n,r)=>e(t,n,r)>=0,w9}var E9,D9;function $he(){if(D9)return E9;D9=1;let e=_9();return E9=(t,n,r)=>e(t,n,r)<0,E9}var O9,k9;function ege(){if(k9)return O9;k9=1;let e=_9();return O9=(t,n,r)=>e(t,n,r)<=0,O9}var A9,j9;function tge(){if(j9)return A9;j9=1;let e=Yhe(),t=Xhe(),n=Zhe(),r=Qhe(),i=$he(),a=ege();return A9=(o,s,c,l)=>{switch(s){case`===`:return typeof o==`object`&&(o=o.version),typeof c==`object`&&(c=c.version),o===c;case`!==`:return typeof o==`object`&&(o=o.version),typeof c==`object`&&(c=c.version),o!==c;case``:case`=`:case`==`:return e(o,c,l);case`!=`:return t(o,c,l);case`>`:return n(o,c,l);case`>=`:return r(o,c,l);case`<`:return i(o,c,l);case`<=`:return a(o,c,l);default:throw TypeError(`Invalid operator: ${s}`)}},A9}var M9,N9;function nge(){if(N9)return M9;N9=1;let e=Symbol(`SemVer ANY`);class t{static get ANY(){return e}constructor(r,i){if(i=n(i),r instanceof t){if(r.loose===!!i.loose)return r;r=r.value}r=r.trim().split(/\s+/).join(` `),o(`comparator`,r,i),this.options=i,this.loose=!!i.loose,this.parse(r),this.value=this.semver===e?``:this.operator+this.semver.version,o(`comp`,this)}parse(t){let n=this.options.loose?r[i.COMPARATORLOOSE]:r[i.COMPARATOR],a=t.match(n);if(!a)throw TypeError(`Invalid comparator: ${t}`);this.operator=a[1]===void 0?``:a[1],this.operator===`=`&&(this.operator=``),this.semver=a[2]?new s(a[2],this.options.loose):e}toString(){return this.value}test(t){if(o(`Comparator.test`,t,this.options.loose),this.semver===e||t===e)return!0;if(typeof t==`string`)try{t=new s(t,this.options)}catch{return!1}return a(t,this.operator,this.semver,this.options)}intersects(e,r){if(!(e instanceof t))throw TypeError(`a Comparator is required`);return this.operator===``?this.value===``||new c(e.value,r).test(this.value):e.operator===``?e.value===``||new c(this.value,r).test(e.semver):(r=n(r),r.includePrerelease&&(this.value===`<0.0.0-0`||e.value===`<0.0.0-0`)||!r.includePrerelease&&(this.value.startsWith(`<0.0.0`)||e.value.startsWith(`<0.0.0`))?!1:!!(this.operator.startsWith(`>`)&&e.operator.startsWith(`>`)||this.operator.startsWith(`<`)&&e.operator.startsWith(`<`)||this.semver.version===e.semver.version&&this.operator.includes(`=`)&&e.operator.includes(`=`)||a(this.semver,`<`,e.semver,r)&&this.operator.startsWith(`>`)&&e.operator.startsWith(`<`)||a(this.semver,`>`,e.semver,r)&&this.operator.startsWith(`<`)&&e.operator.startsWith(`>`)))}}M9=t;let n=e9(),{safeRe:r,t:i}=l9(),a=tge(),o=s9(),s=m9(),c=I9();return M9}var P9,F9;function I9(){if(F9)return P9;F9=1;let e=/\s+/g;class t{constructor(n,a){if(a=r(a),n instanceof t)return n.loose===!!a.loose&&n.includePrerelease===!!a.includePrerelease?n:new t(n.raw,a);if(n instanceof i)return this.raw=n.value,this.set=[[n]],this.formatted=void 0,this;if(this.options=a,this.loose=!!a.loose,this.includePrerelease=!!a.includePrerelease,this.raw=n.trim().replace(e,` `),this.set=this.raw.split(`||`).map(e=>this.parseRange(e.trim())).filter(e=>e.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let e=this.set[0];if(this.set=this.set.filter(e=>!m(e[0])),this.set.length===0)this.set=[e];else if(this.set.length>1){for(let e of this.set)if(e.length===1&&h(e[0])){this.set=[e];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted=``;for(let e=0;e<this.set.length;e++){e>0&&(this.formatted+=`||`);let t=this.set[e];for(let e=0;e<t.length;e++)e>0&&(this.formatted+=` `),this.formatted+=t[e].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(e){let t=((this.options.includePrerelease&&f)|(this.options.loose&&p))+`:`+e,r=n.get(t);if(r)return r;let o=this.options.loose,h=o?s[c.HYPHENRANGELOOSE]:s[c.HYPHENRANGE];e=e.replace(h,D(this.options.includePrerelease)),a(`hyphen replace`,e),e=e.replace(s[c.COMPARATORTRIM],l),a(`comparator trim`,e),e=e.replace(s[c.TILDETRIM],u),a(`tilde trim`,e),e=e.replace(s[c.CARETTRIM],d),a(`caret trim`,e);let g=e.split(` `).map(e=>_(e,this.options)).join(` `).split(/\s+/).map(e=>E(e,this.options));o&&(g=g.filter(e=>(a(`loose invalid filter`,e,this.options),!!e.match(s[c.COMPARATORLOOSE])))),a(`range list`,g);let v=new Map,y=g.map(e=>new i(e,this.options));for(let e of y){if(m(e))return[e];v.set(e.value,e)}v.size>1&&v.has(``)&&v.delete(``);let b=[...v.values()];return n.set(t,b),b}intersects(e,n){if(!(e instanceof t))throw TypeError(`a Range is required`);return this.set.some(t=>g(t,n)&&e.set.some(e=>g(e,n)&&t.every(t=>e.every(e=>t.intersects(e,n)))))}test(e){if(!e)return!1;if(typeof e==`string`)try{e=new o(e,this.options)}catch{return!1}for(let t=0;t<this.set.length;t++)if(O(this.set[t],e,this.options))return!0;return!1}}P9=t;let n=new(qhe()),r=e9(),i=nge(),a=s9(),o=m9(),{safeRe:s,t:c,comparatorTrimReplace:l,tildeTrimReplace:u,caretTrimReplace:d}=l9(),{FLAG_INCLUDE_PRERELEASE:f,FLAG_LOOSE:p}=i9(),m=e=>e.value===`<0.0.0-0`,h=e=>e.value===``,g=(e,t)=>{let n=!0,r=e.slice(),i=r.pop();for(;n&&r.length;)n=r.every(e=>i.intersects(e,t)),i=r.pop();return n},_=(e,t)=>(a(`comp`,e,t),e=x(e,t),a(`caret`,e),e=y(e,t),a(`tildes`,e),e=C(e,t),a(`xrange`,e),e=T(e,t),a(`stars`,e),e),v=e=>!e||e.toLowerCase()===`x`||e===`*`,y=(e,t)=>e.trim().split(/\s+/).map(e=>b(e,t)).join(` `),b=(e,t)=>{let n=t.loose?s[c.TILDELOOSE]:s[c.TILDE];return e.replace(n,(t,n,r,i,o)=>{a(`tilde`,e,t,n,r,i,o);let s;return v(n)?s=``:v(r)?s=`>=${n}.0.0 <${+n+1}.0.0-0`:v(i)?s=`>=${n}.${r}.0 <${n}.${+r+1}.0-0`:o?(a(`replaceTilde pr`,o),s=`>=${n}.${r}.${i}-${o} <${n}.${+r+1}.0-0`):s=`>=${n}.${r}.${i} <${n}.${+r+1}.0-0`,a(`tilde return`,s),s})},x=(e,t)=>e.trim().split(/\s+/).map(e=>S(e,t)).join(` `),S=(e,t)=>{a(`caret`,e,t);let n=t.loose?s[c.CARETLOOSE]:s[c.CARET],r=t.includePrerelease?`-0`:``;return e.replace(n,(t,n,i,o,s)=>{a(`caret`,e,t,n,i,o,s);let c;return v(n)?c=``:v(i)?c=`>=${n}.0.0${r} <${+n+1}.0.0-0`:v(o)?c=n===`0`?`>=${n}.${i}.0${r} <${n}.${+i+1}.0-0`:`>=${n}.${i}.0${r} <${+n+1}.0.0-0`:s?(a(`replaceCaret pr`,s),c=n===`0`?i===`0`?`>=${n}.${i}.${o}-${s} <${n}.${i}.${+o+1}-0`:`>=${n}.${i}.${o}-${s} <${n}.${+i+1}.0-0`:`>=${n}.${i}.${o}-${s} <${+n+1}.0.0-0`):(a(`no pr`),c=n===`0`?i===`0`?`>=${n}.${i}.${o}${r} <${n}.${i}.${+o+1}-0`:`>=${n}.${i}.${o}${r} <${n}.${+i+1}.0-0`:`>=${n}.${i}.${o} <${+n+1}.0.0-0`),a(`caret return`,c),c})},C=(e,t)=>(a(`replaceXRanges`,e,t),e.split(/\s+/).map(e=>w(e,t)).join(` `)),w=(e,t)=>{e=e.trim();let n=t.loose?s[c.XRANGELOOSE]:s[c.XRANGE];return e.replace(n,(n,r,i,o,s,c)=>{a(`xRange`,e,n,r,i,o,s,c);let l=v(i),u=l||v(o),d=u||v(s),f=d;return r===`=`&&f&&(r=``),c=t.includePrerelease?`-0`:``,l?n=r===`>`||r===`<`?`<0.0.0-0`:`*`:r&&f?(u&&(o=0),s=0,r===`>`?(r=`>=`,u?(i=+i+1,o=0,s=0):(o=+o+1,s=0)):r===`<=`&&(r=`<`,u?i=+i+1:o=+o+1),r===`<`&&(c=`-0`),n=`${r+i}.${o}.${s}${c}`):u?n=`>=${i}.0.0${c} <${+i+1}.0.0-0`:d&&(n=`>=${i}.${o}.0${c} <${i}.${+o+1}.0-0`),a(`xRange return`,n),n})},T=(e,t)=>(a(`replaceStars`,e,t),e.trim().replace(s[c.STAR],``)),E=(e,t)=>(a(`replaceGTE0`,e,t),e.trim().replace(s[t.includePrerelease?c.GTE0PRE:c.GTE0],``)),D=e=>(t,n,r,i,a,o,s,c,l,u,d,f)=>(n=v(r)?``:v(i)?`>=${r}.0.0${e?`-0`:``}`:v(a)?`>=${r}.${i}.0${e?`-0`:``}`:o?`>=${n}`:`>=${n}${e?`-0`:``}`,c=v(l)?``:v(u)?`<${+l+1}.0.0-0`:v(d)?`<${l}.${+u+1}.0-0`:f?`<=${l}.${u}.${d}-${f}`:e?`<${l}.${u}.${+d+1}-0`:`<=${c}`,`${n} ${c}`.trim()),O=(e,t,n)=>{for(let n=0;n<e.length;n++)if(!e[n].test(t))return!1;if(t.prerelease.length&&!n.includePrerelease){for(let n=0;n<e.length;n++)if(a(e[n].semver),e[n].semver!==i.ANY&&e[n].semver.prerelease.length>0){let r=e[n].semver;if(r.major===t.major&&r.minor===t.minor&&r.patch===t.patch)return!0}return!1}return!0};return P9}var L9,R9;function rge(){if(R9)return L9;R9=1;let e=I9();return L9=(t,n,r)=>{try{n=new e(n,r)}catch{return!1}return n.test(t)},L9}var z9=Khe(rge());function ige(e,t,n){let r=e.open(t),{origin:i}=new URL(t),a=40;function o(t){t.source===r&&(a=0,e.removeEventListener(`message`,o,!1))}e.addEventListener(`message`,o,!1);function s(){a<=0||(r.postMessage(n,i),setTimeout(s,250),--a)}setTimeout(s,250)}var age=`.vega-embed {
|
|
67
|
+
position: relative;
|
|
68
|
+
display: inline-block;
|
|
69
|
+
box-sizing: border-box;
|
|
70
|
+
}
|
|
71
|
+
.vega-embed.has-actions {
|
|
72
|
+
padding-right: 38px;
|
|
73
|
+
}
|
|
74
|
+
.vega-embed details:not([open]) > :not(summary) {
|
|
75
|
+
display: none !important;
|
|
76
|
+
}
|
|
77
|
+
.vega-embed summary {
|
|
78
|
+
list-style: none;
|
|
79
|
+
position: absolute;
|
|
80
|
+
top: 0;
|
|
81
|
+
right: 0;
|
|
82
|
+
padding: 6px;
|
|
83
|
+
z-index: 1000;
|
|
84
|
+
background: white;
|
|
85
|
+
box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.1);
|
|
86
|
+
color: #1b1e23;
|
|
87
|
+
border: 1px solid #aaa;
|
|
88
|
+
border-radius: 999px;
|
|
89
|
+
opacity: 0.2;
|
|
90
|
+
transition: opacity 0.4s ease-in;
|
|
91
|
+
cursor: pointer;
|
|
92
|
+
line-height: 0px;
|
|
93
|
+
}
|
|
94
|
+
.vega-embed summary::-webkit-details-marker {
|
|
95
|
+
display: none;
|
|
96
|
+
}
|
|
97
|
+
.vega-embed summary:active {
|
|
98
|
+
box-shadow: #aaa 0px 0px 0px 1px inset;
|
|
99
|
+
}
|
|
100
|
+
.vega-embed summary svg {
|
|
101
|
+
width: 14px;
|
|
102
|
+
height: 14px;
|
|
103
|
+
}
|
|
104
|
+
.vega-embed details[open] summary {
|
|
105
|
+
opacity: 0.7;
|
|
106
|
+
}
|
|
107
|
+
.vega-embed:hover summary, .vega-embed:focus-within summary {
|
|
108
|
+
opacity: 1 !important;
|
|
109
|
+
transition: opacity 0.2s ease;
|
|
110
|
+
}
|
|
111
|
+
.vega-embed .vega-actions {
|
|
112
|
+
position: absolute;
|
|
113
|
+
z-index: 1001;
|
|
114
|
+
top: 35px;
|
|
115
|
+
right: -9px;
|
|
116
|
+
display: flex;
|
|
117
|
+
flex-direction: column;
|
|
118
|
+
padding-bottom: 8px;
|
|
119
|
+
padding-top: 8px;
|
|
120
|
+
border-radius: 4px;
|
|
121
|
+
box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.2);
|
|
122
|
+
border: 1px solid #d9d9d9;
|
|
123
|
+
background: white;
|
|
124
|
+
animation-duration: 0.15s;
|
|
125
|
+
animation-name: scale-in;
|
|
126
|
+
animation-timing-function: cubic-bezier(0.2, 0, 0.13, 1.5);
|
|
127
|
+
text-align: left;
|
|
128
|
+
}
|
|
129
|
+
.vega-embed .vega-actions a {
|
|
130
|
+
padding: 8px 16px;
|
|
131
|
+
font-family: sans-serif;
|
|
132
|
+
font-size: 14px;
|
|
133
|
+
font-weight: 600;
|
|
134
|
+
white-space: nowrap;
|
|
135
|
+
color: #434a56;
|
|
136
|
+
text-decoration: none;
|
|
137
|
+
}
|
|
138
|
+
.vega-embed .vega-actions a:hover, .vega-embed .vega-actions a:focus {
|
|
139
|
+
background-color: #f7f7f9;
|
|
140
|
+
color: black;
|
|
141
|
+
}
|
|
142
|
+
.vega-embed .vega-actions::before, .vega-embed .vega-actions::after {
|
|
143
|
+
content: "";
|
|
144
|
+
display: inline-block;
|
|
145
|
+
position: absolute;
|
|
146
|
+
}
|
|
147
|
+
.vega-embed .vega-actions::before {
|
|
148
|
+
left: auto;
|
|
149
|
+
right: 14px;
|
|
150
|
+
top: -16px;
|
|
151
|
+
border: 8px solid rgba(0, 0, 0, 0);
|
|
152
|
+
border-bottom-color: #d9d9d9;
|
|
153
|
+
}
|
|
154
|
+
.vega-embed .vega-actions::after {
|
|
155
|
+
left: auto;
|
|
156
|
+
right: 15px;
|
|
157
|
+
top: -14px;
|
|
158
|
+
border: 7px solid rgba(0, 0, 0, 0);
|
|
159
|
+
border-bottom-color: #fff;
|
|
160
|
+
}
|
|
161
|
+
.vega-embed .chart-wrapper.fit-x {
|
|
162
|
+
width: 100%;
|
|
163
|
+
}
|
|
164
|
+
.vega-embed .chart-wrapper.fit-y {
|
|
165
|
+
height: 100%;
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
.vega-embed-wrapper {
|
|
169
|
+
max-width: 100%;
|
|
170
|
+
overflow: auto;
|
|
171
|
+
padding-right: 14px;
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
@keyframes scale-in {
|
|
175
|
+
from {
|
|
176
|
+
opacity: 0;
|
|
177
|
+
transform: scale(0.6);
|
|
178
|
+
}
|
|
179
|
+
to {
|
|
180
|
+
opacity: 1;
|
|
181
|
+
transform: scale(1);
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
`;function B9(e,...t){for(let n of t)oge(e,n);return e}function oge(e,t){for(let n of Object.keys(t))i(e,n,t[n],!0)}({version:`7.1.0`}).version;var V9=zK,H9=eq,U9=typeof window<`u`?window:void 0;H9===void 0&&U9?.vl?.compile&&(H9=U9.vl);var sge={export:{svg:!0,png:!0},source:!0,compiled:!0,editor:!0},cge={CLICK_TO_VIEW_ACTIONS:`Click to view actions`,COMPILED_ACTION:`View Compiled Vega`,EDITOR_ACTION:`Open in Vega Editor`,PNG_ACTION:`Save as PNG`,SOURCE_ACTION:`View Source`,SVG_ACTION:`Save as SVG`},W9={vega:`Vega`,"vega-lite":`Vega-Lite`},G9={vega:V9.version,"vega-lite":H9?H9.version:`not available`},lge={vega:e=>e,"vega-lite":(e,t,n)=>H9.compile(e,{config:n,logger:t}).spec},uge=`
|
|
185
|
+
<svg viewBox="0 0 16 16" fill="currentColor" stroke="none" stroke-width="1" stroke-linecap="round" stroke-linejoin="round">
|
|
186
|
+
<circle r="2" cy="8" cx="2"></circle>
|
|
187
|
+
<circle r="2" cy="8" cx="8"></circle>
|
|
188
|
+
<circle r="2" cy="8" cx="14"></circle>
|
|
189
|
+
</svg>`,dge=`chart-wrapper`;function fge(e){return typeof e==`function`}function K9(e,t,n,r){let i=`<html><head>${t}</head><body><pre><code class="json">`,a=`</code></pre>${n}</body></html>`,o=window.open(``);o.document.write(i+e+a),o.document.title=`${W9[r]} JSON Source`}function pge(e,t,n){if(e.$schema){let r=F5(e.$schema);n&&n!==r.library&&t.warn(`The given visualization spec is written in ${W9[r.library]}, but mode argument sets ${W9[n]??n}.`);let i=r.library;return z9(G9[i],`^${r.version.slice(1)}`)||t.warn(`The input spec uses ${W9[i]} ${r.version}, but the current version of ${W9[i]} is v${G9[i]}.`),i}return`mark`in e||`encoding`in e||`layer`in e||`hconcat`in e||`vconcat`in e||`facet`in e||`repeat`in e?`vega-lite`:`marks`in e||`signals`in e||`scales`in e||`axes`in e?`vega`:n??`vega`}function q9(e){return!!(e&&`load`in e)}function J9(e){return q9(e)?e:V9.loader(e)}function mge(e){let t=e.usermeta?.embedOptions??{};return P(t.defaultStyle)&&(t.defaultStyle=!1),t}async function hge(e,t,n={}){let r,i;P(t)?(i=J9(n.loader),r=JSON.parse(await i.load(t))):r=t;let a=mge(r),o=a.loader;(!i||o)&&(i=J9(n.loader??o));let s=await Y9(a,i),c=await Y9(n,i),l={...B9(c,s),config:x(c.config??{},s.config??{})};return await _ge(e,r,l,i)}async function Y9(e,t){let n=P(e.config)?JSON.parse(await t.load(e.config)):e.config??{},r=P(e.patch)?JSON.parse(await t.load(e.patch)):e.patch;return{...e,...r?{patch:r}:{},...n?{config:n}:{}}}function gge(e){let t=e.getRootNode?e.getRootNode():document;return t instanceof ShadowRoot?{root:t,rootContainer:t}:{root:document,rootContainer:document.head??document.body}}async function _ge(e,t,n={},r){let i=n.theme?x(Rme[n.theme],n.config??{}):n.config,a=gr(n.actions)?n.actions:B9({},sge,n.actions??{}),o={...cge,...n.i18n},s=n.renderer??`svg`,c=n.logger??Vn(V9.Warn);n.logLevel!==void 0&&c.level(n.logLevel);let l=n.downloadFileName??`visualization`,u=typeof e==`string`?document.querySelector(e):e;if(!u)throw Error(`${e} does not exist`);if(n.defaultStyle!==!1){let e=`vega-embed-style`,{root:t,rootContainer:r}=gge(u);if(!t.getElementById(e)){let t=document.createElement(`style`);t.id=e,t.innerHTML=n.defaultStyle===void 0||n.defaultStyle===!0?age.toString():n.defaultStyle,r.appendChild(t)}}let d=pge(t,c,n.mode),f=lge[d](t,c,i);if(d===`vega-lite`&&f.$schema){let e=F5(f.$schema);z9(G9.vega,`^${e.version.slice(1)}`)||c.warn(`The compiled spec uses Vega ${e.version}, but current version is v${G9.vega}.`)}u.classList.add(`vega-embed`),a&&u.classList.add(`has-actions`),u.innerHTML=``;let p=u;if(a){let e=document.createElement(`div`);e.classList.add(dge),u.appendChild(e),p=e}let m=n.patch;if(m&&(f=m instanceof Function?m(f):U7(f,m,!0,!1).newDocument),n.formatLocale&&V9.formatLocale(n.formatLocale),n.timeFormatLocale&&V9.timeFormatLocale(n.timeFormatLocale),n.expressionFunctions)for(let e in n.expressionFunctions){let t=n.expressionFunctions[e];`fn`in t?V9.expressionFunction(e,t.fn,t.visitor):t instanceof Function&&V9.expressionFunction(e,t)}let{ast:h}=n,g=V9.parse(f,d===`vega-lite`?{}:i,{ast:h}),_=new(n.viewClass||V9.View)(g,{loader:r,logger:c,renderer:s,...h?{expr:V9.expressionInterpreter??n.expr??$K}:{}});if(_.addSignalListener(`autosize`,(e,t)=>{let{type:n}=t;n==`fit-x`?(p.classList.add(`fit-x`),p.classList.remove(`fit-y`)):n==`fit-y`?(p.classList.remove(`fit-x`),p.classList.add(`fit-y`)):n==`fit`?p.classList.add(`fit-x`,`fit-y`):p.classList.remove(`fit-x`,`fit-y`)}),n.tooltip!==!1){let{loader:e,tooltip:t}=n,r=e&&!q9(e)?e?.baseURL:void 0,i=fge(t)?t:new jhe({baseURL:r,...t===!0?{}:t}).call;_.tooltip(i)}let{hover:v}=n;if(v===void 0&&(v=d===`vega`),v){let{hoverSet:e,updateSet:t}=typeof v==`boolean`?{}:v;_.hover(e,t)}n&&(n.width!=null&&_.width(n.width),n.height!=null&&_.height(n.height),n.padding!=null&&_.padding(n.padding)),await _.initialize(p,n.bind).runAsync();let y;if(a!==!1){let e=u;if(n.defaultStyle!==!1||n.forceActionsMenu){let t=document.createElement(`details`);t.title=o.CLICK_TO_VIEW_ACTIONS,u.append(t),e=t;let n=document.createElement(`summary`);n.innerHTML=uge,t.append(n),y=e=>{t.contains(e.target)||t.removeAttribute(`open`)},document.addEventListener(`click`,y)}let r=document.createElement(`div`);if(e.append(r),r.classList.add(`vega-actions`),a===!0||a.export!==!1){for(let e of[`svg`,`png`])if(a===!0||a.export===!0||a.export[e]){let t=o[`${e.toUpperCase()}_ACTION`],i=document.createElement(`a`),a=M(n.scaleFactor)?n.scaleFactor[e]:n.scaleFactor;i.text=t,i.href=`#`,i.target=`_blank`,i.download=`${l}.${e}`,i.addEventListener(`mousedown`,async function(t){t.preventDefault();let n=await _.toImageURL(e,a);this.href=n}),r.append(i)}}if(a===!0||a.source!==!1){let e=document.createElement(`a`);e.text=o.SOURCE_ACTION,e.href=`#`,e.addEventListener(`click`,function(e){K9(Wr(t),n.sourceHeader??``,n.sourceFooter??``,d),e.preventDefault()}),r.append(e)}if(d===`vega-lite`&&(a===!0||a.compiled!==!1)){let e=document.createElement(`a`);e.text=o.COMPILED_ACTION,e.href=`#`,e.addEventListener(`click`,function(e){K9(Wr(f),n.sourceHeader??``,n.sourceFooter??``,`vega`),e.preventDefault()}),r.append(e)}if(a===!0||a.editor!==!1){let e=n.editorUrl??`https://vega.github.io/editor/`,a=document.createElement(`a`);a.text=o.EDITOR_ACTION,a.href=`#`,a.addEventListener(`click`,function(n){ige(window,e,{config:i,mode:m?`vega`:d,renderer:s,spec:Wr(m?f:t)}),n.preventDefault()}),r.append(a)}}function b(){y&&document.removeEventListener(`click`,y),_.finalize()}return{view:_,spec:t,vgSpec:f,finalize:b,embedOptions:n}}function vge(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,`default`)?e.default:e}var X9,Z9;function yge(){return Z9||(Z9=1,X9=function e(t,n){if(t===n)return!0;if(t&&n&&typeof t==`object`&&typeof n==`object`){if(t.constructor!==n.constructor)return!1;var r,i,a;if(Array.isArray(t)){if(r=t.length,r!=n.length)return!1;for(i=r;i--!==0;)if(!e(t[i],n[i]))return!1;return!0}if(t.constructor===RegExp)return t.source===n.source&&t.flags===n.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===n.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===n.toString();if(a=Object.keys(t),r=a.length,r!==Object.keys(n).length)return!1;for(i=r;i--!==0;)if(!Object.prototype.hasOwnProperty.call(n,a[i]))return!1;for(i=r;i--!==0;){var o=a[i];if(!e(t[o],n[o]))return!1}return!0}return t!==t&&n!==n}),X9}var bge=vge(yge());function Q9(e){let[t,n]=Ur.useState(null),{ref:r,spec:i,onEmbed:a,onError:o,options:s={}}=e;return xge(()=>{let e=!1,t=null;return(async()=>{if(!(!r.current||e))try{if(t=await hge(r.current,i,s),e){t.finalize();return}n(t),a?.(t)}catch(e){console.error(`[react-vega] Error creating view: ${e}`),o?.(e)}})(),()=>{e=!0,t?.finalize()}},[i,s]),t}function xge(e,t){let n=Ur.useRef(null),r=Ur.useRef(0);(!n.current||!bge(t,n.current))&&(r.current+=1),n.current=t,Ur.useEffect(e,[r.current])}var $9=Ur.forwardRef((e,t)=>{let{spec:n,options:r,onEmbed:i,onError:a,...o}=e,s=Ur.useRef(null);return Ur.useImperativeHandle(t,()=>{if(!s.current)throw Error(`VegaEmbed: ref is not attached to a div element`);return s.current},[]),Q9({ref:s,spec:n,onEmbed:i,onError:a,options:r}),(0,bee.jsx)(`div`,{ref:s,...o})});$9.displayName=`VegaEmbed`;export{fq as i,$9 as n,P5 as r,Q9 as t};
|