h2o-wave 1.6.5__py3-none-win_amd64.whl → 1.7.1__py3-none-win_amd64.whl
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.
Potentially problematic release.
This version of h2o-wave might be problematic. Click here for more details.
- h2o_wave/version.py +1 -1
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/waved.exe +0 -0
- h2o_wave-1.7.1.data/data/www/index.html +43 -0
- h2o_wave-1.6.5.data/data/www/wave-static/LocalizationProvider-6658772a.js → h2o_wave-1.7.1.data/data/www/wave-static/LocalizationProvider-1cb77f52.js +1 -1
- h2o_wave-1.6.5.data/data/www/wave-static/Paper-79a98a93.js → h2o_wave-1.7.1.data/data/www/wave-static/Paper-10516b76.js +1 -1
- h2o_wave-1.6.5.data/data/www/wave-static/index-6040664d.js → h2o_wave-1.7.1.data/data/www/wave-static/index-05807ac3.js +1 -1
- h2o_wave-1.6.5.data/data/www/wave-static/index-d71a4c1f.js → h2o_wave-1.7.1.data/data/www/wave-static/index-44559820.js +1 -1
- h2o_wave-1.6.5.data/data/www/wave-static/index-884970b8.js → h2o_wave-1.7.1.data/data/www/wave-static/index-573b3961.js +1 -1
- h2o_wave-1.7.1.data/data/www/wave-static/index-658bc908.js +127 -0
- h2o_wave-1.6.5.data/data/www/wave-static/index-a49166c2.js → h2o_wave-1.7.1.data/data/www/wave-static/index-6859a01e.js +1 -1
- h2o_wave-1.7.1.data/data/www/wave-static/index-f186e01e.js +1 -0
- h2o_wave-1.6.5.data/data/www/wave-static/useThemeProps-5e299c5b.js → h2o_wave-1.7.1.data/data/www/wave-static/useThemeProps-6c68864c.js +1 -1
- h2o_wave-1.7.1.data/data/www/wave-static/vega-embed.module-6bc21848.js +191 -0
- h2o_wave-1.7.1.data/data/www/wave-static/vega.module-1aca8e51.js +15 -0
- {h2o_wave-1.6.5.dist-info → h2o_wave-1.7.1.dist-info}/METADATA +1 -1
- h2o_wave-1.7.1.dist-info/RECORD +453 -0
- h2o_wave-1.6.5.data/data/www/index.html +0 -34
- h2o_wave-1.6.5.data/data/www/wave-static/index-2ddce427.js +0 -121
- h2o_wave-1.6.5.data/data/www/wave-static/index-3ad376fa.js +0 -1
- h2o_wave-1.6.5.data/data/www/wave-static/vega-embed.module-1c715cb7.js +0 -189
- h2o_wave-1.6.5.data/data/www/wave-static/vega.module-bd253997.js +0 -13
- h2o_wave-1.6.5.dist-info/RECORD +0 -453
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/project_templates/README.md +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/project_templates/chat.py +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/project_templates/header.py +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/project_templates/header_nav.py +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/project_templates/header_sidebar_nav.py +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/project_templates/hello_world.py +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/project_templates/sidebar_nav.py +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/favicon.ico +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/logo192.png +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/logo512.png +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/manifest.json +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/robots.txt +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/1c-3f7bb63f.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/1c.js-880a5fb5.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/Inter-Black-8b21d5be.woff +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/Inter-Black-fc10113c.woff2 +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/Inter-Bold-3e242080.woff +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/Inter-Bold-c63158ba.woff2 +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/Inter-ExtraBold-307d9809.woff2 +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/Inter-ExtraBold-f053602c.woff +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/Inter-ExtraLight-015dad27.woff +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/Inter-ExtraLight-b6cd094a.woff2 +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/Inter-Light-36b86832.woff2 +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/Inter-Light-4871aed0.woff +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/Inter-Medium-1b498b95.woff2 +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/Inter-Medium-53deda46.woff +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/Inter-Regular-d612f121.woff2 +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/Inter-Regular-ef1f23c0.woff +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/Inter-SemiBold-15226129.woff2 +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/Inter-SemiBold-653fed7a.woff +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/Inter-Thin-77d96c1c.woff2 +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/Inter-Thin-e6bced8e.woff +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/abnf-13e3d3e9.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/abnf.js-4710a9b6.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/accesslog-0333fe45.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/accesslog.js-c69c4014.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/actionscript-970abe00.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/actionscript.js-a23662e0.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/ada-29abd822.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/ada.js-596147e5.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/angelscript-c4bcdcf1.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/angelscript.js-b9004b30.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/apache-69229b81.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/apache.js-53f92aaa.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/applescript-18053a85.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/applescript.js-167660b4.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/arcade-6075ac5c.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/arcade.js-d02d2998.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/arduino-d57cf405.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/arduino.js-37a85c8f.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/armasm-1f1daec6.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/armasm.js-7de2e829.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/asciidoc-c2ce0198.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/asciidoc.js-955e0d47.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/aspectj-65addc65.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/aspectj.js-de303d21.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/autohotkey-083cf3c0.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/autohotkey.js-902453c5.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/autoit-01458b60.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/autoit.js-e3487153.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/avrasm-9c20c591.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/avrasm.js-9296929c.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/awk-3a9cdcff.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/awk.js-d895eb86.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/axapta-1e6dd9a4.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/axapta.js-7a94aded.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/bash-cc88d916.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/bash.js-aeac230f.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/basic-ae19ba84.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/basic.js-5285fc1c.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/bnf-6d48c389.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/bnf.js-49945ebf.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/brainfuck-450234e6.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/brainfuck.js-3ce3a6cd.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/c-f46565f0.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/c.js-e57dbb84.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/cal-68febb00.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/cal.js-0c9d24c1.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/capnproto-42c0b6ff.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/capnproto.js-f123775c.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/ceylon-7044c346.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/ceylon.js-feb867e3.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/clean-21378384.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/clean.js-56633a25.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/clojure-202ef751.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/clojure-repl-d5a2be34.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/clojure-repl.js-0679d9f5.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/clojure.js-242a2f04.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/cmake-b4ce297d.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/cmake.js-7cccedf6.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/coffeescript-9a445365.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/coffeescript.js-db28b498.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/coq-67e06e00.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/coq.js-bc1dedb0.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/cos-52897118.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/cos.js-9f2c4957.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/cpp-aa04b0db.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/cpp.js-e637b2f4.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/crmsh-f2834950.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/crmsh.js-f8602207.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/crystal-164453c2.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/crystal.js-74828bd0.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/csharp-dda82316.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/csharp.js-56c58434.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/csp-b9668226.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/csp.js-eb7d3a88.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/css-5d2c9b40.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/css.js-62b267ee.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/d-5d21e788.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/d.js-04aa8683.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/dart-12586384.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/dart.js-c61fbb04.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/delphi-20c87528.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/delphi.js-e5cd150c.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/diff-e6456a67.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/diff.js-5568e9f4.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/django-49d52be8.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/django.js-e38658c2.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/dns-5a205646.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/dns.js-63bf7d1f.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/dockerfile-33bf66d7.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/dockerfile.js-cccb49a0.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/dos-6d5191f9.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/dos.js-15b97873.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/dsconfig-e810963a.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/dsconfig.js-7c0a57b6.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/dts-8c60a07f.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/dts.js-80c29b59.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/dust-82a2434b.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/dust.js-c265de6d.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/ebnf-c82500bd.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/ebnf.js-7696d4d1.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/elixir-a3c89d2d.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/elixir.js-679b8865.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/elm-b0baa83b.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/elm.js-065d04eb.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/erb-5b2c18cb.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/erb.js-5bf017f1.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/erlang-92e0ed4f.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/erlang-repl-4327c962.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/erlang-repl.js-1e32a7a4.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/erlang.js-22ea5237.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/excel-b748334a.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/excel.js-eacd8da9.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/fix-2076861f.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/fix.js-ea8e2c05.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/flix-d6821016.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/flix.js-039dc4da.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/fortran-93288908.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/fortran.js-e77c10a9.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/fsharp-004140a7.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/fsharp.js-5eebd197.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/gams-2364286e.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/gams.js-74a57ad8.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/gauss-526e2980.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/gauss.js-8fef6743.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/gcode-fcf823ff.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/gcode.js-cbfb4164.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/gherkin-7933969a.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/gherkin.js-794fab5c.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/glsl-1880d3bf.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/glsl.js-a2ed8800.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/gml-375bdc8f.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/gml.js-cda64410.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/go-6477af85.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/go.js-bc860eea.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/golo-a8b30a3b.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/golo.js-2e22bcec.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/gradle-d007f0f8.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/gradle.js-c114b7cd.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/graphql-0429227f.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/graphql.js-efb48106.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/groovy-83606e93.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/groovy.js-f30f8566.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/haml-81c61df4.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/haml.js-3c12d6c6.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/handlebars-dffd1fe9.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/handlebars.js-b804f107.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/haskell-63691c0e.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/haskell.js-f0611637.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/haxe-f014280d.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/haxe.js-efbaab17.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/hsp-052b1a9a.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/hsp.js-1904ee6c.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/http-7fc81321.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/http.js-3552549b.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/hy-3c07056d.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/hy.js-2a8401d6.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/index-17424b44.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/index-be05b8a6.css +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/inform7-45a494ad.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/inform7.js-1bb293dc.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/ini-565c1ab6.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/ini.js-4c40a00d.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/irpf90-eea6e6cc.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/irpf90.js-dcf62e5f.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/isbl-7e0cec9a.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/isbl.js-b30a56d1.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/java-95ec2edb.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/java.js-83f5f276.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/javascript-e0819b20.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/javascript.js-71712620.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/jboss-cli-a89c5614.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/jboss-cli.js-fc4be0ce.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/json-c6c94b43.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/json.js-32d1540a.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/julia-8a3768e7.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/julia-repl-1542a535.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/julia-repl.js-07ea0c88.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/julia.js-7321b26f.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/kotlin-2060981f.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/kotlin.js-a422cee0.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/lasso-f278ccbb.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/lasso.js-a81c4a10.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/latex-480bc614.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/latex.js-7781fa8e.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/ldif-39e7018a.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/ldif.js-ff0be511.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/leaf-1983c9fd.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/leaf.js-6051fa44.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/less-15af99b5.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/less.js-c864d14d.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/lisp-47e106f3.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/lisp.js-5729457c.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/livecodeserver-a9710535.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/livecodeserver.js-621c3b9a.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/livescript-5888934c.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/livescript.js-911f9c89.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/llvm-a51ea25c.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/llvm.js-aec4e151.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/lsl-babb313c.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/lsl.js-372a9d2e.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/lua-33e3bed2.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/lua.js-a549c4fb.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/makefile-036c85bd.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/makefile.js-d981f866.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/markdown-83c491be.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/markdown.js-7e400889.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/markdownCodeSyntaxHighlighting-3b867111.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/mathematica-212cedeb.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/mathematica.js-a9cc13e1.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/matlab-91514d42.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/matlab.js-272d0a4b.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/maxima-ec780f01.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/maxima.js-8f83fc9b.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/mel-443f3074.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/mel.js-35aaad36.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/mercury-6fa710c7.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/mercury.js-e4a4d463.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/mipsasm-1d35360e.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/mipsasm.js-2b25ec79.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/mizar-bf5d69f1.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/mizar.js-a056f354.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/mojolicious-c56b1162.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/mojolicious.js-265d3ad9.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/monkey-bf0d5fb4.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/monkey.js-0189f1d4.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/moonscript-b6fa3ab7.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/moonscript.js-6d6e7d92.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/n1ql-c980c0d8.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/n1ql.js-a6e1cdbd.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/nestedtext-a75f487f.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/nestedtext.js-58eeb2fd.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/nginx-500d7783.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/nginx.js-6e1ff365.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/nim-8c52ae95.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/nim.js-8c2ba4ce.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/nix-8e17d7df.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/nix.js-1c9e5f0f.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/node-repl-c351033a.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/node-repl.js-0c21023a.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/nsis-9566a130.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/nsis.js-5bef79d6.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/objectivec-70d1e37c.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/objectivec.js-ea458201.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/ocaml-05a8032e.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/ocaml.js-34933407.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/openscad-724bb5e2.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/openscad.js-bc588586.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/oxygene-d0768591.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/oxygene.js-bddfaf72.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/parser3-3b7df84a.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/parser3.js-03917f62.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/perl-274a0c8e.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/perl.js-798899d1.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/pf-647ee253.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/pf.js-c7f35663.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/pgsql-67be9c80.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/pgsql.js-1e15a30d.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/php-baf23133.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/php-template-059af3df.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/php-template.js-25c82e05.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/php.js-f9c986ec.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/plaintext-7945c0c0.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/plaintext.js-89fd8faa.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/pony-37a85088.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/pony.js-af4b8cc4.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/powershell-99ec96b1.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/powershell.js-3aa375d4.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/processing-6b513c0b.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/processing.js-8f9c7b7e.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/profile-a11e18ed.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/profile.js-c43affa1.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/prolog-35f6eaf0.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/prolog.js-ea1f9010.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/properties-c15cbd34.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/properties.js-aab8f4b2.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/protobuf-96c705d8.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/protobuf.js-256fb21d.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/puppet-eaa21a84.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/puppet.js-526f0f6c.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/purebasic-b2255610.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/purebasic.js-88a0aeb0.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/python-d59bf68c.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/python-repl-a098ea60.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/python-repl.js-da97070f.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/python.js-17816629.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/q-edbaf565.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/q.js-64716461.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/qml-e4a66052.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/qml.js-256c40c8.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/r-a77be0e5.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/r.js-df8e6a0d.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/reasonml-98659b0a.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/reasonml.js-d61d5332.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/rib-e50e8c11.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/rib.js-771507ef.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/roboconf-b646a8cd.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/roboconf.js-e47e2f37.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/routeros-daea5f39.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/routeros.js-7028f69c.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/rsl-02a6a6f6.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/rsl.js-3b3c4666.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/ruby-e373545c.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/ruby.js-117b6d69.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/ruleslanguage-932a539f.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/ruleslanguage.js-52f1d5da.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/rust-e4f5d8be.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/rust.js-6937e5f3.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/sas-d4be0f22.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/sas.js-e9f7f74a.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/scala-ed6253c7.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/scala.js-0622a5e6.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/scheme-090728b4.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/scheme.js-df719b01.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/scilab-6742e34e.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/scilab.js-8c19ac41.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/scss-17621482.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/scss.js-effc59ae.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/shell-c79fdff2.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/shell.js-31f5a65f.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/smali-b3932e39.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/smali.js-6e70e629.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/smalltalk-a5aaf1af.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/smalltalk.js-16b69abf.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/sml-3d2ff45b.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/sml.js-dca0f19d.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/sqf-895a1a12.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/sqf.js-7d395293.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/sql-6b946051.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/sql.js-a38b17e7.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/stan-44ba0bd8.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/stan.js-5923d3a1.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/stata-6862641d.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/stata.js-a8c64684.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/step21-d469eb04.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/step21.js-91507b84.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/stylus-7fe3d2aa.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/stylus.js-5c46b7d2.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/subunit-f5d1c72e.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/subunit.js-6b90d5d9.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/swift-37aa337f.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/swift.js-35cc9631.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/taggerscript-9644bd70.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/taggerscript.js-3b33b52a.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/tap-9aff5b1c.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/tap.js-6c086fe2.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/tcl-e06ad942.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/tcl.js-8b627a42.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/thrift-172e9c7e.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/thrift.js-d6341b21.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/timer-4c6100d9.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/tp-57841279.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/tp.js-cedf36a8.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/twig-f96e75c9.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/twig.js-cf8e8520.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/typescript-def66f35.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/typescript.js-32ae264b.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/vala-1a982c40.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/vala.js-db590567.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/vbnet-58370a58.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/vbnet.js-cdd968f7.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/vbscript-cf59c0ae.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/vbscript-html-6fb1969c.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/vbscript-html.js-ee15979a.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/vbscript.js-14980cef.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/verilog-708e7faf.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/verilog.js-c895778f.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/vhdl-6fc4a449.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/vhdl.js-04291f57.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/vim-3059209f.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/vim.js-a486e2f4.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/wasm-d475c0e5.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/wasm.js-e4c1cfdb.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/wren-f93687dd.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/wren.js-2485cae5.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/x86asm-774652e0.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/x86asm.js-b939195a.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/xl-c097ac75.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/xl.js-7efd80af.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/xml-7b0fd495.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/xml.js-200b702e.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/xquery-322b0611.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/xquery.js-83bd2c62.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/yaml-6a874c12.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/yaml.js-3a05ad15.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/zephir-cf2a8bcb.js +0 -0
- {h2o_wave-1.6.5.data → h2o_wave-1.7.1.data}/data/www/wave-static/zephir.js-fa8df6f1.js +0 -0
- {h2o_wave-1.6.5.dist-info → h2o_wave-1.7.1.dist-info}/WHEEL +0 -0
- {h2o_wave-1.6.5.dist-info → h2o_wave-1.7.1.dist-info}/entry_points.txt +0 -0
- {h2o_wave-1.6.5.dist-info → h2o_wave-1.7.1.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import{h as $u,n as qC,i as jC,I as $s,k as Il,l as rv,m as P0,o as I0,C as U0,p as Dp,q as Fp,s as Ul,t as Zr,u as sh,v as Je,w as Ju,x as WC,y as YC,z as HC,A as GC,B as VC,D as XC,E as KC,F as ZC,G as QC,H as ql,J as JC,K as It,L as kp,M as ya,N as q0,O as jl,P as jr,Q as Mp,S as lh,T as iv,U as Er,V as Wl,W as Yl,X as fi,Y as eD,Z as Wr,$ as tD,a0 as nD,a1 as rD,a2 as iD,a3 as Ro,a4 as av,a5 as aD,a6 as uD,a7 as oD,a8 as sD,a9 as lD,aa as fD,ab as uv,ac as fh,ad as cD,ae as hD,af as ov,ag as dD,ah as gD,ai as pD,aj as mD,ak as yD,al as vD,am as xD,an as bD,ao as AD,ap as ED,aq as wD,ar as CD,as as DD,at as FD,au as kD,av as MD,aw as SD,ax as $D,ay as j0,az as BD,aA as Bs,aB as _D}from"./index-658bc908.js";import{t as RD}from"./timer-4c6100d9.js";function TD(e,t){let n=0,r,i=0,a=0;if(t===void 0)for(let u of e)u!=null&&(u=+u)>=u&&(r=u-i,i+=r/++n,a+=r*(u-i));else{let u=-1;for(let o of e)(o=t(o,++u,e))!=null&&(o=+o)>=o&&(r=o-i,i+=r/++n,a+=r*(o-i))}if(n>1)return a/(n-1)}function OD(e,t){const n=TD(e,t);return n&&Math.sqrt(n)}class vt{constructor(){this._partials=new Float64Array(32),this._n=0}add(t){const n=this._partials;let r=0;for(let i=0;i<this._n&&i<32;i++){const a=n[i],u=t+a,o=Math.abs(t)<Math.abs(a)?t-(u-a):a-(u-t);o&&(n[r++]=o),t=u}return n[r]=t,this._n=r+1,this}valueOf(){const t=this._partials;let n=this._n,r,i,a,u=0;if(n>0){for(u=t[--n];n>0&&(r=u,i=t[--n],u=r+i,a=i-(u-r),!a););n>0&&(a<0&&t[n-1]<0||a>0&&t[n-1]>0)&&(i=a*2,r=u+i,i==r-u&&(u=r))}return u}}function zD(e,t){return Array.from(t,n=>e[n])}function LD(e=$u){if(e===$u)return sv;if(typeof e!="function")throw new TypeError("compare is not a function");return(t,n)=>{const r=e(t,n);return r||r===0?r:(e(n,n)===0)-(e(t,t)===0)}}function sv(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(e<t?-1:e>t?1:0)}function ui(e,t){let n;if(t===void 0)for(const r of e)r!=null&&(n<r||n===void 0&&r>=r)&&(n=r);else{let r=-1;for(let i of e)(i=t(i,++r,e))!=null&&(n<i||n===void 0&&i>=i)&&(n=i)}return n}function ch(e,t){let n;if(t===void 0)for(const r of e)r!=null&&(n>r||n===void 0&&r>=r)&&(n=r);else{let r=-1;for(let i of e)(i=t(i,++r,e))!=null&&(n>i||n===void 0&&i>=i)&&(n=i)}return n}function lv(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?sv:LD(i);r>n;){if(r-n>600){const s=r-n+1,l=t-n+1,f=Math.log(s),c=.5*Math.exp(2*f/3),h=.5*Math.sqrt(f*c*(s-c)/s)*(l-s/2<0?-1:1),d=Math.max(n,Math.floor(t-l*c/s+h)),g=Math.min(r,Math.floor(t+(s-l)*c/s+h));lv(e,t,d,g,i)}const a=e[t];let u=n,o=r;for(Ba(e,n,t),i(e[r],a)>0&&Ba(e,n,r);u<o;){for(Ba(e,u,o),++u,--o;i(e[u],a)<0;)++u;for(;i(e[o],a)>0;)--o}i(e[n],a)===0?Ba(e,n,o):(++o,Ba(e,o,r)),o<=t&&(n=o+1),t<=o&&(r=o-1)}return e}function Ba(e,t,n){const r=e[t];e[t]=e[n],e[n]=r}function hh(e,t,n){if(e=Float64Array.from(qC(e,n)),!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return ch(e);if(t>=1)return ui(e);var r,i=(r-1)*t,a=Math.floor(i),u=ui(lv(e,a).subarray(0,a+1)),o=ch(e.subarray(a+1));return u+(o-u)*(i-a)}}function fv(e,t,n=jC){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),u=+n(e[a],a,e),o=+n(e[a+1],a+1,e);return u+(o-u)*(i-a)}}function ND(e,t){let n=0,r=0;if(t===void 0)for(let i of e)i!=null&&(i=+i)>=i&&(++n,r+=i);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 cv(e,t){return hh(e,.5,t)}function*PD(e){for(const t of e)yield*t}function hv(e){return Array.from(PD(e))}function dv(e,t){let n=0;if(t===void 0)for(let r of e)(r=+r)&&(n+=r);else{let r=-1;for(let i of e)(i=+t(i,++r,e))&&(n+=i)}return n}function ID(e,...t){e=new $s(e),t=t.map(UD);e:for(const n of e)for(const r of t)if(!r.has(n)){e.delete(n);continue e}return e}function UD(e){return e instanceof $s?e:new $s(e)}function qD(...e){const t=new $s;for(const n of e)for(const r of n)t.add(r);return t}var jD={value:()=>{}};function gv(){for(var e=0,t=arguments.length,n={},r;e<t;++e){if(!(r=arguments[e]+"")||r in n||/[\s.]/.test(r))throw new Error("illegal type: "+r);n[r]=[]}return new as(n)}function as(e){this._=e}function WD(e,t){return e.trim().split(/^|\s+/).map(function(n){var r="",i=n.indexOf(".");if(i>=0&&(r=n.slice(i+1),n=n.slice(0,i)),n&&!t.hasOwnProperty(n))throw new Error("unknown type: "+n);return{type:n,name:r}})}as.prototype=gv.prototype={constructor:as,on:function(e,t){var n=this._,r=WD(e+"",n),i,a=-1,u=r.length;if(arguments.length<2){for(;++a<u;)if((i=(e=r[a]).type)&&(i=YD(n[i],e.name)))return i;return}if(t!=null&&typeof t!="function")throw new Error("invalid callback: "+t);for(;++a<u;)if(i=(e=r[a]).type)n[i]=Sp(n[i],e.name,t);else if(t==null)for(i in n)n[i]=Sp(n[i],e.name,null);return this},copy:function(){var e={},t=this._;for(var n in t)e[n]=t[n].slice();return new as(e)},call:function(e,t){if((i=arguments.length-2)>0)for(var n=new Array(i),r=0,i,a;r<i;++r)n[r]=arguments[r+2];if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(a=this._[e],r=0,i=a.length;r<i;++r)a[r].value.apply(t,n)},apply:function(e,t,n){if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(var r=this._[e],i=0,a=r.length;i<a;++i)r[i].value.apply(t,n)}};function YD(e,t){for(var n=0,r=e.length,i;n<r;++n)if((i=e[n]).name===t)return i.value}function Sp(e,t,n){for(var r=0,i=e.length;r<i;++r)if(e[r].name===t){e[r]=jD,e=e.slice(0,r).concat(e.slice(r+1));break}return n!=null&&e.push({name:t,value:n}),e}const pv=Math.PI/180,mv=180/Math.PI,_s=18,yv=.96422,vv=1,xv=.82521,bv=4/29,Xi=6/29,Av=3*Xi*Xi,HD=Xi*Xi*Xi;function Ev(e){if(e instanceof Bn)return new Bn(e.l,e.a,e.b,e.opacity);if(e instanceof er)return wv(e);e instanceof Il||(e=rv(e));var t=oc(e.r),n=oc(e.g),r=oc(e.b),i=ic((.2225045*t+.7168786*n+.0606169*r)/vv),a,u;return t===n&&n===r?a=u=i:(a=ic((.4360747*t+.3850649*n+.1430804*r)/yv),u=ic((.0139322*t+.0971045*n+.7141733*r)/xv)),new Bn(116*i-16,500*(a-i),200*(i-u),e.opacity)}function Rs(e,t,n,r){return arguments.length===1?Ev(e):new Bn(e,t,n,r??1)}function Bn(e,t,n,r){this.l=+e,this.a=+t,this.b=+n,this.opacity=+r}P0(Bn,Rs,I0(U0,{brighter(e){return new Bn(this.l+_s*(e??1),this.a,this.b,this.opacity)},darker(e){return new Bn(this.l-_s*(e??1),this.a,this.b,this.opacity)},rgb(){var e=(this.l+16)/116,t=isNaN(this.a)?e:e+this.a/500,n=isNaN(this.b)?e:e-this.b/200;return t=yv*ac(t),e=vv*ac(e),n=xv*ac(n),new Il(uc(3.1338561*t-1.6168667*e-.4906146*n),uc(-.9787684*t+1.9161415*e+.033454*n),uc(.0719453*t-.2289914*e+1.4052427*n),this.opacity)}}));function ic(e){return e>HD?Math.pow(e,1/3):e/Av+bv}function ac(e){return e>Xi?e*e*e:Av*(e-bv)}function uc(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function oc(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function GD(e){if(e instanceof er)return new er(e.h,e.c,e.l,e.opacity);if(e instanceof Bn||(e=Ev(e)),e.a===0&&e.b===0)return new er(NaN,0<e.l&&e.l<100?0:NaN,e.l,e.opacity);var t=Math.atan2(e.b,e.a)*mv;return new er(t<0?t+360:t,Math.sqrt(e.a*e.a+e.b*e.b),e.l,e.opacity)}function Ts(e,t,n,r){return arguments.length===1?GD(e):new er(e,t,n,r??1)}function er(e,t,n,r){this.h=+e,this.c=+t,this.l=+n,this.opacity=+r}function wv(e){if(isNaN(e.h))return new Bn(e.l,0,0,e.opacity);var t=e.h*pv;return new Bn(e.l,Math.cos(t)*e.c,Math.sin(t)*e.c,e.opacity)}P0(er,Ts,I0(U0,{brighter(e){return new er(this.h,this.c,this.l+_s*(e??1),this.opacity)},darker(e){return new er(this.h,this.c,this.l-_s*(e??1),this.opacity)},rgb(){return wv(this).rgb()}}));var Cv=-.14861,W0=1.78277,Y0=-.29227,Hl=-.90649,Bu=1.97294,$p=Bu*Hl,Bp=Bu*W0,_p=W0*Y0-Hl*Cv;function VD(e){if(e instanceof oi)return new oi(e.h,e.s,e.l,e.opacity);e instanceof Il||(e=rv(e));var t=e.r/255,n=e.g/255,r=e.b/255,i=(_p*r+$p*t-Bp*n)/(_p+$p-Bp),a=r-i,u=(Bu*(n-i)-Y0*a)/Hl,o=Math.sqrt(u*u+a*a)/(Bu*i*(1-i)),s=o?Math.atan2(u,a)*mv-120:NaN;return new oi(s<0?s+360:s,o,i,e.opacity)}function dh(e,t,n,r){return arguments.length===1?VD(e):new oi(e,t,n,r??1)}function oi(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}P0(oi,dh,I0(U0,{brighter(e){return e=e==null?Dp:Math.pow(Dp,e),new oi(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Fp:Math.pow(Fp,e),new oi(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=isNaN(this.h)?0:(this.h+120)*pv,t=+this.l,n=isNaN(this.s)?0:this.s*t*(1-t),r=Math.cos(e),i=Math.sin(e);return new Il(255*(t+n*(Cv*r+W0*i)),255*(t+n*(Y0*r+Hl*i)),255*(t+n*(Bu*r)),this.opacity)}}));function XD(e){var t=e.length;return function(n){return e[Math.max(0,Math.min(t-1,Math.floor(n*t)))]}}function KD(e,t){var n=Ul(+e,+t);return function(r){var i=n(r);return i-360*Math.floor(i/360)}}var Rp=180/Math.PI,gh={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Dv(e,t,n,r,i,a){var u,o,s;return(u=Math.sqrt(e*e+t*t))&&(e/=u,t/=u),(s=e*n+t*r)&&(n-=e*s,r-=t*s),(o=Math.sqrt(n*n+r*r))&&(n/=o,r/=o,s/=o),e*r<t*n&&(e=-e,t=-t,s=-s,u=-u),{translateX:i,translateY:a,rotate:Math.atan2(t,e)*Rp,skewX:Math.atan(s)*Rp,scaleX:u,scaleY:o}}var To;function ZD(e){const t=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return t.isIdentity?gh:Dv(t.a,t.b,t.c,t.d,t.e,t.f)}function QD(e){return e==null||(To||(To=document.createElementNS("http://www.w3.org/2000/svg","g")),To.setAttribute("transform",e),!(e=To.transform.baseVal.consolidate()))?gh:(e=e.matrix,Dv(e.a,e.b,e.c,e.d,e.e,e.f))}function Fv(e,t,n,r){function i(l){return l.length?l.pop()+" ":""}function a(l,f,c,h,d,g){if(l!==c||f!==h){var p=d.push("translate(",null,t,null,n);g.push({i:p-4,x:Zr(l,c)},{i:p-2,x:Zr(f,h)})}else(c||h)&&d.push("translate("+c+t+h+n)}function u(l,f,c,h){l!==f?(l-f>180?f+=360:f-l>180&&(l+=360),h.push({i:c.push(i(c)+"rotate(",null,r)-2,x:Zr(l,f)})):f&&c.push(i(c)+"rotate("+f+r)}function o(l,f,c,h){l!==f?h.push({i:c.push(i(c)+"skewX(",null,r)-2,x:Zr(l,f)}):f&&c.push(i(c)+"skewX("+f+r)}function s(l,f,c,h,d,g){if(l!==c||f!==h){var p=d.push(i(d)+"scale(",null,",",null,")");g.push({i:p-4,x:Zr(l,c)},{i:p-2,x:Zr(f,h)})}else(c!==1||h!==1)&&d.push(i(d)+"scale("+c+","+h+")")}return function(l,f){var c=[],h=[];return l=e(l),f=e(f),a(l.translateX,l.translateY,f.translateX,f.translateY,c,h),u(l.rotate,f.rotate,c,h),o(l.skewX,f.skewX,c,h),s(l.scaleX,l.scaleY,f.scaleX,f.scaleY,c,h),l=f=null,function(d){for(var g=-1,p=h.length,m;++g<p;)c[(m=h[g]).i]=m.x(d);return c.join("")}}}var JD=Fv(ZD,"px, ","px)","deg)"),eF=Fv(QD,", ",")",")"),tF=1e-12;function Tp(e){return((e=Math.exp(e))+1/e)/2}function nF(e){return((e=Math.exp(e))-1/e)/2}function rF(e){return((e=Math.exp(2*e))-1)/(e+1)}const iF=function e(t,n,r){function i(a,u){var o=a[0],s=a[1],l=a[2],f=u[0],c=u[1],h=u[2],d=f-o,g=c-s,p=d*d+g*g,m,y;if(p<tF)y=Math.log(h/l)/t,m=function(A){return[o+A*d,s+A*g,l*Math.exp(t*A*y)]};else{var v=Math.sqrt(p),x=(h*h-l*l+r*p)/(2*l*n*v),b=(h*h-l*l-r*p)/(2*h*n*v),E=Math.log(Math.sqrt(x*x+1)-x),w=Math.log(Math.sqrt(b*b+1)-b);y=(w-E)/t,m=function(A){var C=A*y,F=Tp(E),D=l/(n*v)*(F*rF(t*C+E)-nF(E));return[o+D*d,s+D*g,l*F/Tp(t*C+E)]}}return m.duration=y*1e3*t/Math.SQRT2,m}return i.rho=function(a){var u=Math.max(.001,+a),o=u*u,s=o*o;return e(u,o,s)},i}(Math.SQRT2,2,4);function kv(e){return function(t,n){var r=e((t=sh(t)).h,(n=sh(n)).h),i=Je(t.s,n.s),a=Je(t.l,n.l),u=Je(t.opacity,n.opacity);return function(o){return t.h=r(o),t.s=i(o),t.l=a(o),t.opacity=u(o),t+""}}}const aF=kv(Ul);var uF=kv(Je);function oF(e,t){var n=Je((e=Rs(e)).l,(t=Rs(t)).l),r=Je(e.a,t.a),i=Je(e.b,t.b),a=Je(e.opacity,t.opacity);return function(u){return e.l=n(u),e.a=r(u),e.b=i(u),e.opacity=a(u),e+""}}function Mv(e){return function(t,n){var r=e((t=Ts(t)).h,(n=Ts(n)).h),i=Je(t.c,n.c),a=Je(t.l,n.l),u=Je(t.opacity,n.opacity);return function(o){return t.h=r(o),t.c=i(o),t.l=a(o),t.opacity=u(o),t+""}}}const sF=Mv(Ul);var lF=Mv(Je);function Sv(e){return function t(n){n=+n;function r(i,a){var u=e((i=dh(i)).h,(a=dh(a)).h),o=Je(i.s,a.s),s=Je(i.l,a.l),l=Je(i.opacity,a.opacity);return function(f){return i.h=u(f),i.s=o(f),i.l=s(Math.pow(f,n)),i.opacity=l(f),i+""}}return r.gamma=t,r}(1)}const fF=Sv(Ul);var cF=Sv(Je);function H0(e,t){t===void 0&&(t=e,e=Ju);for(var n=0,r=t.length-1,i=t[0],a=new Array(r<0?0:r);n<r;)a[n]=e(i,i=t[++n]);return function(u){var o=Math.max(0,Math.min(r-1,Math.floor(u*=r)));return a[o](u-o)}}function hF(e,t){for(var n=new Array(t),r=0;r<t;++r)n[r]=e(r/(t-1));return n}const dF=Object.freeze(Object.defineProperty({__proto__:null,interpolate:Ju,interpolateArray:WC,interpolateBasis:YC,interpolateBasisClosed:HC,interpolateCubehelix:fF,interpolateCubehelixLong:cF,interpolateDate:GC,interpolateDiscrete:XD,interpolateHcl:sF,interpolateHclLong:lF,interpolateHsl:aF,interpolateHslLong:uF,interpolateHue:KD,interpolateLab:oF,interpolateNumber:Zr,interpolateNumberArray:VC,interpolateObject:XC,interpolateRgb:KC,interpolateRgbBasis:ZC,interpolateRgbBasisClosed:QC,interpolateRound:ql,interpolateString:JC,interpolateTransformCss:JD,interpolateTransformSvg:eF,interpolateZoom:iF,piecewise:H0,quantize:hF},Symbol.toStringTag,{value:"Module"})),ar=11102230246251565e-32,Xe=134217729,gF=(3+8*ar)*ar;function sc(e,t,n,r,i){let a,u,o,s,l=t[0],f=r[0],c=0,h=0;f>l==f>-l?(a=l,l=t[++c]):(a=f,f=r[++h]);let d=0;if(c<e&&h<n)for(f>l==f>-l?(u=l+a,o=a-(u-l),l=t[++c]):(u=f+a,o=a-(u-f),f=r[++h]),a=u,o!==0&&(i[d++]=o);c<e&&h<n;)f>l==f>-l?(u=a+l,s=u-a,o=a-(u-s)+(l-s),l=t[++c]):(u=a+f,s=u-a,o=a-(u-s)+(f-s),f=r[++h]),a=u,o!==0&&(i[d++]=o);for(;c<e;)u=a+l,s=u-a,o=a-(u-s)+(l-s),l=t[++c],a=u,o!==0&&(i[d++]=o);for(;h<n;)u=a+f,s=u-a,o=a-(u-s)+(f-s),f=r[++h],a=u,o!==0&&(i[d++]=o);return(a!==0||d===0)&&(i[d++]=a),d}function pF(e,t){let n=t[0];for(let r=1;r<e;r++)n+=t[r];return n}function eo(e){return new Float64Array(e)}const mF=(3+16*ar)*ar,yF=(2+12*ar)*ar,vF=(9+64*ar)*ar*ar,_i=eo(4),Op=eo(8),zp=eo(12),Lp=eo(16),lt=eo(4);function xF(e,t,n,r,i,a,u){let o,s,l,f,c,h,d,g,p,m,y,v,x,b,E,w,A,C;const F=e-i,D=n-i,k=t-a,R=r-a;b=F*R,h=Xe*F,d=h-(h-F),g=F-d,h=Xe*R,p=h-(h-R),m=R-p,E=g*m-(b-d*p-g*p-d*m),w=k*D,h=Xe*k,d=h-(h-k),g=k-d,h=Xe*D,p=h-(h-D),m=D-p,A=g*m-(w-d*p-g*p-d*m),y=E-A,c=E-y,_i[0]=E-(y+c)+(c-A),v=b+y,c=v-b,x=b-(v-c)+(y-c),y=x-w,c=x-y,_i[1]=x-(y+c)+(c-w),C=v+y,c=C-v,_i[2]=v-(C-c)+(y-c),_i[3]=C;let T=pF(4,_i),N=yF*u;if(T>=N||-T>=N||(c=e-F,o=e-(F+c)+(c-i),c=n-D,l=n-(D+c)+(c-i),c=t-k,s=t-(k+c)+(c-a),c=r-R,f=r-(R+c)+(c-a),o===0&&s===0&&l===0&&f===0)||(N=vF*u+gF*Math.abs(T),T+=F*f+R*o-(k*l+D*s),T>=N||-T>=N))return T;b=o*R,h=Xe*o,d=h-(h-o),g=o-d,h=Xe*R,p=h-(h-R),m=R-p,E=g*m-(b-d*p-g*p-d*m),w=s*D,h=Xe*s,d=h-(h-s),g=s-d,h=Xe*D,p=h-(h-D),m=D-p,A=g*m-(w-d*p-g*p-d*m),y=E-A,c=E-y,lt[0]=E-(y+c)+(c-A),v=b+y,c=v-b,x=b-(v-c)+(y-c),y=x-w,c=x-y,lt[1]=x-(y+c)+(c-w),C=v+y,c=C-v,lt[2]=v-(C-c)+(y-c),lt[3]=C;const M=sc(4,_i,4,lt,Op);b=F*f,h=Xe*F,d=h-(h-F),g=F-d,h=Xe*f,p=h-(h-f),m=f-p,E=g*m-(b-d*p-g*p-d*m),w=k*l,h=Xe*k,d=h-(h-k),g=k-d,h=Xe*l,p=h-(h-l),m=l-p,A=g*m-(w-d*p-g*p-d*m),y=E-A,c=E-y,lt[0]=E-(y+c)+(c-A),v=b+y,c=v-b,x=b-(v-c)+(y-c),y=x-w,c=x-y,lt[1]=x-(y+c)+(c-w),C=v+y,c=C-v,lt[2]=v-(C-c)+(y-c),lt[3]=C;const O=sc(M,Op,4,lt,zp);b=o*f,h=Xe*o,d=h-(h-o),g=o-d,h=Xe*f,p=h-(h-f),m=f-p,E=g*m-(b-d*p-g*p-d*m),w=s*l,h=Xe*s,d=h-(h-s),g=s-d,h=Xe*l,p=h-(h-l),m=l-p,A=g*m-(w-d*p-g*p-d*m),y=E-A,c=E-y,lt[0]=E-(y+c)+(c-A),v=b+y,c=v-b,x=b-(v-c)+(y-c),y=x-w,c=x-y,lt[1]=x-(y+c)+(c-w),C=v+y,c=C-v,lt[2]=v-(C-c)+(y-c),lt[3]=C;const P=sc(O,zp,4,lt,Lp);return Lp[P-1]}function Oo(e,t,n,r,i,a){const u=(t-a)*(n-i),o=(e-i)*(r-a),s=u-o,l=Math.abs(u+o);return Math.abs(s)>=mF*l?s:-xF(e,t,n,r,i,a,l)}const Np=Math.pow(2,-52),zo=new Uint32Array(512);class Os{static from(t,n=CF,r=DF){const i=t.length,a=new Float64Array(i*2);for(let u=0;u<i;u++){const o=t[u];a[2*u]=n(o),a[2*u+1]=r(o)}return new Os(a)}constructor(t){const n=t.length>>1;if(n>0&&typeof t[0]!="number")throw new Error("Expected coords to contain numbers.");this.coords=t;const r=Math.max(2*n-5,0);this._triangles=new Uint32Array(r*3),this._halfedges=new Int32Array(r*3),this._hashSize=Math.ceil(Math.sqrt(n)),this._hullPrev=new Uint32Array(n),this._hullNext=new Uint32Array(n),this._hullTri=new Uint32Array(n),this._hullHash=new Int32Array(this._hashSize).fill(-1),this._ids=new Uint32Array(n),this._dists=new Float64Array(n),this.update()}update(){const{coords:t,_hullPrev:n,_hullNext:r,_hullTri:i,_hullHash:a}=this,u=t.length>>1;let o=1/0,s=1/0,l=-1/0,f=-1/0;for(let D=0;D<u;D++){const k=t[2*D],R=t[2*D+1];k<o&&(o=k),R<s&&(s=R),k>l&&(l=k),R>f&&(f=R),this._ids[D]=D}const c=(o+l)/2,h=(s+f)/2;let d=1/0,g,p,m;for(let D=0;D<u;D++){const k=lc(c,h,t[2*D],t[2*D+1]);k<d&&(g=D,d=k)}const y=t[2*g],v=t[2*g+1];d=1/0;for(let D=0;D<u;D++){if(D===g)continue;const k=lc(y,v,t[2*D],t[2*D+1]);k<d&&k>0&&(p=D,d=k)}let x=t[2*p],b=t[2*p+1],E=1/0;for(let D=0;D<u;D++){if(D===g||D===p)continue;const k=EF(y,v,x,b,t[2*D],t[2*D+1]);k<E&&(m=D,E=k)}let w=t[2*m],A=t[2*m+1];if(E===1/0){for(let R=0;R<u;R++)this._dists[R]=t[2*R]-t[0]||t[2*R+1]-t[1];ji(this._ids,this._dists,0,u-1);const D=new Uint32Array(u);let k=0;for(let R=0,T=-1/0;R<u;R++){const N=this._ids[R];this._dists[N]>T&&(D[k++]=N,T=this._dists[N])}this.hull=D.subarray(0,k),this.triangles=new Uint32Array(0),this.halfedges=new Uint32Array(0);return}if(Oo(y,v,x,b,w,A)<0){const D=p,k=x,R=b;p=m,x=w,b=A,m=D,w=k,A=R}const C=wF(y,v,x,b,w,A);this._cx=C.x,this._cy=C.y;for(let D=0;D<u;D++)this._dists[D]=lc(t[2*D],t[2*D+1],C.x,C.y);ji(this._ids,this._dists,0,u-1),this._hullStart=g;let F=3;r[g]=n[m]=p,r[p]=n[g]=m,r[m]=n[p]=g,i[g]=0,i[p]=1,i[m]=2,a.fill(-1),a[this._hashKey(y,v)]=g,a[this._hashKey(x,b)]=p,a[this._hashKey(w,A)]=m,this.trianglesLen=0,this._addTriangle(g,p,m,-1,-1,-1);for(let D=0,k,R;D<this._ids.length;D++){const T=this._ids[D],N=t[2*T],M=t[2*T+1];if(D>0&&Math.abs(N-k)<=Np&&Math.abs(M-R)<=Np||(k=N,R=M,T===g||T===p||T===m))continue;let O=0;for(let st=0,sn=this._hashKey(N,M);st<this._hashSize&&(O=a[(sn+st)%this._hashSize],!(O!==-1&&O!==r[O]));st++);O=n[O];let P=O,X;for(;X=r[P],Oo(N,M,t[2*P],t[2*P+1],t[2*X],t[2*X+1])>=0;)if(P=X,P===O){P=-1;break}if(P===-1)continue;let J=this._addTriangle(P,T,r[P],-1,-1,i[P]);i[T]=this._legalize(J+2),i[P]=J,F++;let pe=r[P];for(;X=r[pe],Oo(N,M,t[2*pe],t[2*pe+1],t[2*X],t[2*X+1])<0;)J=this._addTriangle(pe,T,X,i[T],-1,i[pe]),i[T]=this._legalize(J+2),r[pe]=pe,F--,pe=X;if(P===O)for(;X=n[P],Oo(N,M,t[2*X],t[2*X+1],t[2*P],t[2*P+1])<0;)J=this._addTriangle(X,T,P,-1,i[P],i[X]),this._legalize(J+2),i[X]=J,r[P]=P,F--,P=X;this._hullStart=n[T]=P,r[P]=n[pe]=T,r[T]=pe,a[this._hashKey(N,M)]=T,a[this._hashKey(t[2*P],t[2*P+1])]=P}this.hull=new Uint32Array(F);for(let D=0,k=this._hullStart;D<F;D++)this.hull[D]=k,k=r[k];this.triangles=this._triangles.subarray(0,this.trianglesLen),this.halfedges=this._halfedges.subarray(0,this.trianglesLen)}_hashKey(t,n){return Math.floor(bF(t-this._cx,n-this._cy)*this._hashSize)%this._hashSize}_legalize(t){const{_triangles:n,_halfedges:r,coords:i}=this;let a=0,u=0;for(;;){const o=r[t],s=t-t%3;if(u=s+(t+2)%3,o===-1){if(a===0)break;t=zo[--a];continue}const l=o-o%3,f=s+(t+1)%3,c=l+(o+2)%3,h=n[u],d=n[t],g=n[f],p=n[c];if(AF(i[2*h],i[2*h+1],i[2*d],i[2*d+1],i[2*g],i[2*g+1],i[2*p],i[2*p+1])){n[t]=p,n[o]=h;const y=r[c];if(y===-1){let x=this._hullStart;do{if(this._hullTri[x]===c){this._hullTri[x]=t;break}x=this._hullPrev[x]}while(x!==this._hullStart)}this._link(t,y),this._link(o,r[u]),this._link(u,c);const v=l+(o+1)%3;a<zo.length&&(zo[a++]=v)}else{if(a===0)break;t=zo[--a]}}return u}_link(t,n){this._halfedges[t]=n,n!==-1&&(this._halfedges[n]=t)}_addTriangle(t,n,r,i,a,u){const o=this.trianglesLen;return this._triangles[o]=t,this._triangles[o+1]=n,this._triangles[o+2]=r,this._link(o,i),this._link(o+1,a),this._link(o+2,u),this.trianglesLen+=3,o}}function bF(e,t){const n=e/(Math.abs(e)+Math.abs(t));return(t>0?3-n:1+n)/4}function lc(e,t,n,r){const i=e-n,a=t-r;return i*i+a*a}function AF(e,t,n,r,i,a,u,o){const s=e-u,l=t-o,f=n-u,c=r-o,h=i-u,d=a-o,g=s*s+l*l,p=f*f+c*c,m=h*h+d*d;return s*(c*m-p*d)-l*(f*m-p*h)+g*(f*d-c*h)<0}function EF(e,t,n,r,i,a){const u=n-e,o=r-t,s=i-e,l=a-t,f=u*u+o*o,c=s*s+l*l,h=.5/(u*l-o*s),d=(l*f-o*c)*h,g=(u*c-s*f)*h;return d*d+g*g}function wF(e,t,n,r,i,a){const u=n-e,o=r-t,s=i-e,l=a-t,f=u*u+o*o,c=s*s+l*l,h=.5/(u*l-o*s),d=e+(l*f-o*c)*h,g=t+(u*c-s*f)*h;return{x:d,y:g}}function ji(e,t,n,r){if(r-n<=20)for(let i=n+1;i<=r;i++){const a=e[i],u=t[a];let o=i-1;for(;o>=n&&t[e[o]]>u;)e[o+1]=e[o--];e[o+1]=a}else{const i=n+r>>1;let a=n+1,u=r;_a(e,i,a),t[e[n]]>t[e[r]]&&_a(e,n,r),t[e[a]]>t[e[r]]&&_a(e,a,r),t[e[n]]>t[e[a]]&&_a(e,n,a);const o=e[a],s=t[o];for(;;){do a++;while(t[e[a]]<s);do u--;while(t[e[u]]>s);if(u<a)break;_a(e,a,u)}e[n+1]=e[u],e[u]=o,r-a+1>=u-n?(ji(e,t,a,r),ji(e,t,n,u-1)):(ji(e,t,n,u-1),ji(e,t,a,r))}}function _a(e,t,n){const r=e[t];e[t]=e[n],e[n]=r}function CF(e){return e[0]}function DF(e){return e[1]}const Pp=1e-6;class ii{constructor(){this._x0=this._y0=this._x1=this._y1=null,this._=""}moveTo(t,n){this._+=`M${this._x0=this._x1=+t},${this._y0=this._y1=+n}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")}lineTo(t,n){this._+=`L${this._x1=+t},${this._y1=+n}`}arc(t,n,r){t=+t,n=+n,r=+r;const i=t+r,a=n;if(r<0)throw new Error("negative radius");this._x1===null?this._+=`M${i},${a}`:(Math.abs(this._x1-i)>Pp||Math.abs(this._y1-a)>Pp)&&(this._+="L"+i+","+a),r&&(this._+=`A${r},${r},0,1,1,${t-r},${n}A${r},${r},0,1,1,${this._x1=i},${this._y1=a}`)}rect(t,n,r,i){this._+=`M${this._x0=this._x1=+t},${this._y0=this._y1=+n}h${+r}v${+i}h${-r}Z`}value(){return this._||null}}class ph{constructor(){this._=[]}moveTo(t,n){this._.push([t,n])}closePath(){this._.push(this._[0].slice())}lineTo(t,n){this._.push([t,n])}value(){return this._.length?this._:null}}let FF=class{constructor(t,[n,r,i,a]=[0,0,960,500]){if(!((i=+i)>=(n=+n))||!((a=+a)>=(r=+r)))throw new Error("invalid bounds");this.delaunay=t,this._circumcenters=new Float64Array(t.points.length*2),this.vectors=new Float64Array(t.points.length*2),this.xmax=i,this.xmin=n,this.ymax=a,this.ymin=r,this._init()}update(){return this.delaunay.update(),this._init(),this}_init(){const{delaunay:{points:t,hull:n,triangles:r},vectors:i}=this;let a,u;const o=this.circumcenters=this._circumcenters.subarray(0,r.length/3*2);for(let p=0,m=0,y=r.length,v,x;p<y;p+=3,m+=2){const b=r[p]*2,E=r[p+1]*2,w=r[p+2]*2,A=t[b],C=t[b+1],F=t[E],D=t[E+1],k=t[w],R=t[w+1],T=F-A,N=D-C,M=k-A,O=R-C,P=(T*O-N*M)*2;if(Math.abs(P)<1e-9){if(a===void 0){a=u=0;for(const J of n)a+=t[J*2],u+=t[J*2+1];a/=n.length,u/=n.length}const X=1e9*Math.sign((a-A)*O-(u-C)*M);v=(A+k)/2-X*O,x=(C+R)/2+X*M}else{const X=1/P,J=T*T+N*N,pe=M*M+O*O;v=A+(O*J-N*pe)*X,x=C+(T*pe-M*J)*X}o[m]=v,o[m+1]=x}let s=n[n.length-1],l,f=s*4,c,h=t[2*s],d,g=t[2*s+1];i.fill(0);for(let p=0;p<n.length;++p)s=n[p],l=f,c=h,d=g,f=s*4,h=t[2*s],g=t[2*s+1],i[l+2]=i[f]=d-g,i[l+3]=i[f+1]=h-c}render(t){const n=t==null?t=new ii:void 0,{delaunay:{halfedges:r,inedges:i,hull:a},circumcenters:u,vectors:o}=this;if(a.length<=1)return null;for(let f=0,c=r.length;f<c;++f){const h=r[f];if(h<f)continue;const d=Math.floor(f/3)*2,g=Math.floor(h/3)*2,p=u[d],m=u[d+1],y=u[g],v=u[g+1];this._renderSegment(p,m,y,v,t)}let s,l=a[a.length-1];for(let f=0;f<a.length;++f){s=l,l=a[f];const c=Math.floor(i[l]/3)*2,h=u[c],d=u[c+1],g=s*4,p=this._project(h,d,o[g+2],o[g+3]);p&&this._renderSegment(h,d,p[0],p[1],t)}return n&&n.value()}renderBounds(t){const n=t==null?t=new ii:void 0;return t.rect(this.xmin,this.ymin,this.xmax-this.xmin,this.ymax-this.ymin),n&&n.value()}renderCell(t,n){const r=n==null?n=new ii:void 0,i=this._clip(t);if(i===null||!i.length)return;n.moveTo(i[0],i[1]);let a=i.length;for(;i[0]===i[a-2]&&i[1]===i[a-1]&&a>1;)a-=2;for(let u=2;u<a;u+=2)(i[u]!==i[u-2]||i[u+1]!==i[u-1])&&n.lineTo(i[u],i[u+1]);return n.closePath(),r&&r.value()}*cellPolygons(){const{delaunay:{points:t}}=this;for(let n=0,r=t.length/2;n<r;++n){const i=this.cellPolygon(n);i&&(i.index=n,yield i)}}cellPolygon(t){const n=new ph;return this.renderCell(t,n),n.value()}_renderSegment(t,n,r,i,a){let u;const o=this._regioncode(t,n),s=this._regioncode(r,i);o===0&&s===0?(a.moveTo(t,n),a.lineTo(r,i)):(u=this._clipSegment(t,n,r,i,o,s))&&(a.moveTo(u[0],u[1]),a.lineTo(u[2],u[3]))}contains(t,n,r){return n=+n,n!==n||(r=+r,r!==r)?!1:this.delaunay._step(t,n,r)===t}*neighbors(t){const n=this._clip(t);if(n)for(const r of this.delaunay.neighbors(t)){const i=this._clip(r);if(i){e:for(let a=0,u=n.length;a<u;a+=2)for(let o=0,s=i.length;o<s;o+=2)if(n[a]===i[o]&&n[a+1]===i[o+1]&&n[(a+2)%u]===i[(o+s-2)%s]&&n[(a+3)%u]===i[(o+s-1)%s]){yield r;break e}}}}_cell(t){const{circumcenters:n,delaunay:{inedges:r,halfedges:i,triangles:a}}=this,u=r[t];if(u===-1)return null;const o=[];let s=u;do{const l=Math.floor(s/3);if(o.push(n[l*2],n[l*2+1]),s=s%3===2?s-2:s+1,a[s]!==t)break;s=i[s]}while(s!==u&&s!==-1);return o}_clip(t){if(t===0&&this.delaunay.hull.length===1)return[this.xmax,this.ymin,this.xmax,this.ymax,this.xmin,this.ymax,this.xmin,this.ymin];const n=this._cell(t);if(n===null)return null;const{vectors:r}=this,i=t*4;return this._simplify(r[i]||r[i+1]?this._clipInfinite(t,n,r[i],r[i+1],r[i+2],r[i+3]):this._clipFinite(t,n))}_clipFinite(t,n){const r=n.length;let i=null,a,u,o=n[r-2],s=n[r-1],l,f=this._regioncode(o,s),c,h=0;for(let d=0;d<r;d+=2)if(a=o,u=s,o=n[d],s=n[d+1],l=f,f=this._regioncode(o,s),l===0&&f===0)c=h,h=0,i?i.push(o,s):i=[o,s];else{let g,p,m,y,v;if(l===0){if((g=this._clipSegment(a,u,o,s,l,f))===null)continue;[p,m,y,v]=g}else{if((g=this._clipSegment(o,s,a,u,f,l))===null)continue;[y,v,p,m]=g,c=h,h=this._edgecode(p,m),c&&h&&this._edge(t,c,h,i,i.length),i?i.push(p,m):i=[p,m]}c=h,h=this._edgecode(y,v),c&&h&&this._edge(t,c,h,i,i.length),i?i.push(y,v):i=[y,v]}if(i)c=h,h=this._edgecode(i[0],i[1]),c&&h&&this._edge(t,c,h,i,i.length);else if(this.contains(t,(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 i}_clipSegment(t,n,r,i,a,u){const o=a<u;for(o&&([t,n,r,i,a,u]=[r,i,t,n,u,a]);;){if(a===0&&u===0)return o?[r,i,t,n]:[t,n,r,i];if(a&u)return null;let s,l,f=a||u;f&8?(s=t+(r-t)*(this.ymax-n)/(i-n),l=this.ymax):f&4?(s=t+(r-t)*(this.ymin-n)/(i-n),l=this.ymin):f&2?(l=n+(i-n)*(this.xmax-t)/(r-t),s=this.xmax):(l=n+(i-n)*(this.xmin-t)/(r-t),s=this.xmin),a?(t=s,n=l,a=this._regioncode(t,n)):(r=s,i=l,u=this._regioncode(r,i))}}_clipInfinite(t,n,r,i,a,u){let o=Array.from(n),s;if((s=this._project(o[0],o[1],r,i))&&o.unshift(s[0],s[1]),(s=this._project(o[o.length-2],o[o.length-1],a,u))&&o.push(s[0],s[1]),o=this._clipFinite(t,o))for(let l=0,f=o.length,c,h=this._edgecode(o[f-2],o[f-1]);l<f;l+=2)c=h,h=this._edgecode(o[l],o[l+1]),c&&h&&(l=this._edge(t,c,h,o,l),f=o.length);else this.contains(t,(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(t,n,r,i,a){for(;n!==r;){let u,o;switch(n){case 5:n=4;continue;case 4:n=6,u=this.xmax,o=this.ymin;break;case 6:n=2;continue;case 2:n=10,u=this.xmax,o=this.ymax;break;case 10:n=8;continue;case 8:n=9,u=this.xmin,o=this.ymax;break;case 9:n=1;continue;case 1:n=5,u=this.xmin,o=this.ymin;break}(i[a]!==u||i[a+1]!==o)&&this.contains(t,u,o)&&(i.splice(a,0,u,o),a+=2)}return a}_project(t,n,r,i){let a=1/0,u,o,s;if(i<0){if(n<=this.ymin)return null;(u=(this.ymin-n)/i)<a&&(s=this.ymin,o=t+(a=u)*r)}else if(i>0){if(n>=this.ymax)return null;(u=(this.ymax-n)/i)<a&&(s=this.ymax,o=t+(a=u)*r)}if(r>0){if(t>=this.xmax)return null;(u=(this.xmax-t)/r)<a&&(o=this.xmax,s=n+(a=u)*i)}else if(r<0){if(t<=this.xmin)return null;(u=(this.xmin-t)/r)<a&&(o=this.xmin,s=n+(a=u)*i)}return[o,s]}_edgecode(t,n){return(t===this.xmin?1:t===this.xmax?2:0)|(n===this.ymin?4:n===this.ymax?8:0)}_regioncode(t,n){return(t<this.xmin?1:t>this.xmax?2:0)|(n<this.ymin?4:n>this.ymax?8:0)}_simplify(t){if(t&&t.length>4){for(let n=0;n<t.length;n+=2){const r=(n+2)%t.length,i=(n+4)%t.length;(t[n]===t[r]&&t[r]===t[i]||t[n+1]===t[r+1]&&t[r+1]===t[i+1])&&(t.splice(r,2),n-=2)}t.length||(t=null)}return t}};const kF=2*Math.PI,Ri=Math.pow;function MF(e){return e[0]}function SF(e){return e[1]}function $F(e){const{triangles:t,coords:n}=e;for(let r=0;r<t.length;r+=3){const i=2*t[r],a=2*t[r+1],u=2*t[r+2];if((n[u]-n[i])*(n[a+1]-n[i+1])-(n[a]-n[i])*(n[u+1]-n[i+1])>1e-10)return!1}return!0}function BF(e,t,n){return[e+Math.sin(e+t)*n,t+Math.cos(e-t)*n]}class G0{static from(t,n=MF,r=SF,i){return new G0("length"in t?_F(t,n,r,i):Float64Array.from(RF(t,n,r,i)))}constructor(t){this._delaunator=new Os(t),this.inedges=new Int32Array(t.length/2),this._hullIndex=new Int32Array(t.length/2),this.points=this._delaunator.coords,this._init()}update(){return this._delaunator.update(),this._init(),this}_init(){const t=this._delaunator,n=this.points;if(t.hull&&t.hull.length>2&&$F(t)){this.collinear=Int32Array.from({length:n.length/2},(h,d)=>d).sort((h,d)=>n[2*h]-n[2*d]||n[2*h+1]-n[2*d+1]);const s=this.collinear[0],l=this.collinear[this.collinear.length-1],f=[n[2*s],n[2*s+1],n[2*l],n[2*l+1]],c=1e-8*Math.hypot(f[3]-f[1],f[2]-f[0]);for(let h=0,d=n.length/2;h<d;++h){const g=BF(n[2*h],n[2*h+1],c);n[2*h]=g[0],n[2*h+1]=g[1]}this._delaunator=new Os(n)}else delete this.collinear;const r=this.halfedges=this._delaunator.halfedges,i=this.hull=this._delaunator.hull,a=this.triangles=this._delaunator.triangles,u=this.inedges.fill(-1),o=this._hullIndex.fill(-1);for(let s=0,l=r.length;s<l;++s){const f=a[s%3===2?s-2:s+1];(r[s]===-1||u[f]===-1)&&(u[f]=s)}for(let s=0,l=i.length;s<l;++s)o[i[s]]=s;i.length<=2&&i.length>0&&(this.triangles=new Int32Array(3).fill(-1),this.halfedges=new Int32Array(3).fill(-1),this.triangles[0]=i[0],u[i[0]]=1,i.length===2&&(u[i[1]]=0,this.triangles[1]=i[1],this.triangles[2]=i[1]))}voronoi(t){return new FF(this,t)}*neighbors(t){const{inedges:n,hull:r,_hullIndex:i,halfedges:a,triangles:u,collinear:o}=this;if(o){const c=o.indexOf(t);c>0&&(yield o[c-1]),c<o.length-1&&(yield o[c+1]);return}const s=n[t];if(s===-1)return;let l=s,f=-1;do{if(yield f=u[l],l=l%3===2?l-2:l+1,u[l]!==t)return;if(l=a[l],l===-1){const c=r[(i[t]+1)%r.length];c!==f&&(yield c);return}}while(l!==s)}find(t,n,r=0){if(t=+t,t!==t||(n=+n,n!==n))return-1;const i=r;let a;for(;(a=this._step(r,t,n))>=0&&a!==r&&a!==i;)r=a;return a}_step(t,n,r){const{inedges:i,hull:a,_hullIndex:u,halfedges:o,triangles:s,points:l}=this;if(i[t]===-1||!l.length)return(t+1)%(l.length>>1);let f=t,c=Ri(n-l[t*2],2)+Ri(r-l[t*2+1],2);const h=i[t];let d=h;do{let g=s[d];const p=Ri(n-l[g*2],2)+Ri(r-l[g*2+1],2);if(p<c&&(c=p,f=g),d=d%3===2?d-2:d+1,s[d]!==t)break;if(d=o[d],d===-1){if(d=a[(u[t]+1)%a.length],d!==g&&Ri(n-l[d*2],2)+Ri(r-l[d*2+1],2)<c)return d;break}}while(d!==h);return f}render(t){const n=t==null?t=new ii:void 0,{points:r,halfedges:i,triangles:a}=this;for(let u=0,o=i.length;u<o;++u){const s=i[u];if(s<u)continue;const l=a[u]*2,f=a[s]*2;t.moveTo(r[l],r[l+1]),t.lineTo(r[f],r[f+1])}return this.renderHull(t),n&&n.value()}renderPoints(t,n){n===void 0&&(!t||typeof t.moveTo!="function")&&(n=t,t=null),n=n==null?2:+n;const r=t==null?t=new ii:void 0,{points:i}=this;for(let a=0,u=i.length;a<u;a+=2){const o=i[a],s=i[a+1];t.moveTo(o+n,s),t.arc(o,s,n,0,kF)}return r&&r.value()}renderHull(t){const n=t==null?t=new ii:void 0,{hull:r,points:i}=this,a=r[0]*2,u=r.length;t.moveTo(i[a],i[a+1]);for(let o=1;o<u;++o){const s=2*r[o];t.lineTo(i[s],i[s+1])}return t.closePath(),n&&n.value()}hullPolygon(){const t=new ph;return this.renderHull(t),t.value()}renderTriangle(t,n){const r=n==null?n=new ii:void 0,{points:i,triangles:a}=this,u=a[t*=3]*2,o=a[t+1]*2,s=a[t+2]*2;return n.moveTo(i[u],i[u+1]),n.lineTo(i[o],i[o+1]),n.lineTo(i[s],i[s+1]),n.closePath(),r&&r.value()}*trianglePolygons(){const{triangles:t}=this;for(let n=0,r=t.length/3;n<r;++n)yield this.trianglePolygon(n)}trianglePolygon(t){const n=new ph;return this.renderTriangle(t,n),n.value()}}function _F(e,t,n,r){const i=e.length,a=new Float64Array(i*2);for(let u=0;u<i;++u){const o=e[u];a[u*2]=t.call(r,o,u,e),a[u*2+1]=n.call(r,o,u,e)}return a}function*RF(e,t,n,r){let i=0;for(const a of e)yield t.call(r,a,i,e),yield n.call(r,a,i,e),++i}var Ip={},fc={},cc=34,Ra=10,hc=13;function $v(e){return new Function("d","return {"+e.map(function(t,n){return JSON.stringify(t)+": d["+n+'] || ""'}).join(",")+"}")}function TF(e,t){var n=$v(e);return function(r,i){return t(n(r),i,e)}}function Up(e){var t=Object.create(null),n=[];return e.forEach(function(r){for(var i in r)i in t||n.push(t[i]=i)}),n}function Dt(e,t){var n=e+"",r=n.length;return r<t?new Array(t-r+1).join(0)+n:n}function OF(e){return e<0?"-"+Dt(-e,6):e>9999?"+"+Dt(e,6):Dt(e,4)}function zF(e){var t=e.getUTCHours(),n=e.getUTCMinutes(),r=e.getUTCSeconds(),i=e.getUTCMilliseconds();return isNaN(e)?"Invalid Date":OF(e.getUTCFullYear())+"-"+Dt(e.getUTCMonth()+1,2)+"-"+Dt(e.getUTCDate(),2)+(i?"T"+Dt(t,2)+":"+Dt(n,2)+":"+Dt(r,2)+"."+Dt(i,3)+"Z":r?"T"+Dt(t,2)+":"+Dt(n,2)+":"+Dt(r,2)+"Z":n||t?"T"+Dt(t,2)+":"+Dt(n,2)+"Z":"")}function LF(e){var t=new RegExp('["'+e+`
|
|
2
|
+
\r]`),n=e.charCodeAt(0);function r(c,h){var d,g,p=i(c,function(m,y){if(d)return d(m,y-1);g=m,d=h?TF(m,h):$v(m)});return p.columns=g||[],p}function i(c,h){var d=[],g=c.length,p=0,m=0,y,v=g<=0,x=!1;c.charCodeAt(g-1)===Ra&&--g,c.charCodeAt(g-1)===hc&&--g;function b(){if(v)return fc;if(x)return x=!1,Ip;var w,A=p,C;if(c.charCodeAt(A)===cc){for(;p++<g&&c.charCodeAt(p)!==cc||c.charCodeAt(++p)===cc;);return(w=p)>=g?v=!0:(C=c.charCodeAt(p++))===Ra?x=!0:C===hc&&(x=!0,c.charCodeAt(p)===Ra&&++p),c.slice(A+1,w-1).replace(/""/g,'"')}for(;p<g;){if((C=c.charCodeAt(w=p++))===Ra)x=!0;else if(C===hc)x=!0,c.charCodeAt(p)===Ra&&++p;else if(C!==n)continue;return c.slice(A,w)}return v=!0,c.slice(A,g)}for(;(y=b())!==fc;){for(var E=[];y!==Ip&&y!==fc;)E.push(y),y=b();h&&(E=h(E,m++))==null||d.push(E)}return d}function a(c,h){return c.map(function(d){return h.map(function(g){return f(d[g])}).join(e)})}function u(c,h){return h==null&&(h=Up(c)),[h.map(f).join(e)].concat(a(c,h)).join(`
|
|
3
|
+
`)}function o(c,h){return h==null&&(h=Up(c)),a(c,h).join(`
|
|
4
|
+
`)}function s(c){return c.map(l).join(`
|
|
5
|
+
`)}function l(c){return c.map(f).join(e)}function f(c){return c==null?"":c instanceof Date?zF(c):t.test(c+="")?'"'+c.replace(/"/g,'""')+'"':c}return{parse:r,parseRows:i,format:u,formatBody:o,formatRows:s,formatRow:l,formatValue:f}}function NF(e,t){var n,r=1;e==null&&(e=0),t==null&&(t=0);function i(){var a,u=n.length,o,s=0,l=0;for(a=0;a<u;++a)o=n[a],s+=o.x,l+=o.y;for(s=(s/u-e)*r,l=(l/u-t)*r,a=0;a<u;++a)o=n[a],o.x-=s,o.y-=l}return i.initialize=function(a){n=a},i.x=function(a){return arguments.length?(e=+a,i):e},i.y=function(a){return arguments.length?(t=+a,i):t},i.strength=function(a){return arguments.length?(r=+a,i):r},i}function PF(e){const t=+this._x.call(null,e),n=+this._y.call(null,e);return Bv(this.cover(t,n),t,n,e)}function Bv(e,t,n,r){if(isNaN(t)||isNaN(n))return e;var i,a=e._root,u={data:r},o=e._x0,s=e._y0,l=e._x1,f=e._y1,c,h,d,g,p,m,y,v;if(!a)return e._root=u,e;for(;a.length;)if((p=t>=(c=(o+l)/2))?o=c:l=c,(m=n>=(h=(s+f)/2))?s=h:f=h,i=a,!(a=a[y=m<<1|p]))return i[y]=u,e;if(d=+e._x.call(null,a.data),g=+e._y.call(null,a.data),t===d&&n===g)return u.next=a,i?i[y]=u:e._root=u,e;do i=i?i[y]=new Array(4):e._root=new Array(4),(p=t>=(c=(o+l)/2))?o=c:l=c,(m=n>=(h=(s+f)/2))?s=h:f=h;while((y=m<<1|p)===(v=(g>=h)<<1|d>=c));return i[v]=a,i[y]=u,e}function IF(e){var t,n,r=e.length,i,a,u=new Array(r),o=new Array(r),s=1/0,l=1/0,f=-1/0,c=-1/0;for(n=0;n<r;++n)isNaN(i=+this._x.call(null,t=e[n]))||isNaN(a=+this._y.call(null,t))||(u[n]=i,o[n]=a,i<s&&(s=i),i>f&&(f=i),a<l&&(l=a),a>c&&(c=a));if(s>f||l>c)return this;for(this.cover(s,l).cover(f,c),n=0;n<r;++n)Bv(this,u[n],o[n],e[n]);return this}function UF(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 u=i-n||1,o=this._root,s,l;n>e||e>=i||r>t||t>=a;)switch(l=(t<r)<<1|e<n,s=new Array(4),s[l]=o,o=s,u*=2,l){case 0:i=n+u,a=r+u;break;case 1:n=i-u,a=r+u;break;case 2:i=n+u,r=a-u;break;case 3:n=i-u,r=a-u;break}this._root&&this._root.length&&(this._root=o)}return this._x0=n,this._y0=r,this._x1=i,this._y1=a,this}function qF(){var e=[];return this.visit(function(t){if(!t.length)do e.push(t.data);while(t=t.next)}),e}function jF(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 mt(e,t,n,r,i){this.node=e,this.x0=t,this.y0=n,this.x1=r,this.y1=i}function WF(e,t,n){var r,i=this._x0,a=this._y0,u,o,s,l,f=this._x1,c=this._y1,h=[],d=this._root,g,p;for(d&&h.push(new mt(d,i,a,f,c)),n==null?n=1/0:(i=e-n,a=t-n,f=e+n,c=t+n,n*=n);g=h.pop();)if(!(!(d=g.node)||(u=g.x0)>f||(o=g.y0)>c||(s=g.x1)<i||(l=g.y1)<a))if(d.length){var m=(u+s)/2,y=(o+l)/2;h.push(new mt(d[3],m,y,s,l),new mt(d[2],u,y,m,l),new mt(d[1],m,o,s,y),new mt(d[0],u,o,m,y)),(p=(t>=y)<<1|e>=m)&&(g=h[h.length-1],h[h.length-1]=h[h.length-1-p],h[h.length-1-p]=g)}else{var v=e-+this._x.call(null,d.data),x=t-+this._y.call(null,d.data),b=v*v+x*x;if(b<n){var E=Math.sqrt(n=b);i=e-E,a=t-E,f=e+E,c=t+E,r=d.data}}return r}function YF(e){if(isNaN(f=+this._x.call(null,e))||isNaN(c=+this._y.call(null,e)))return this;var t,n=this._root,r,i,a,u=this._x0,o=this._y0,s=this._x1,l=this._y1,f,c,h,d,g,p,m,y;if(!n)return this;if(n.length)for(;;){if((g=f>=(h=(u+s)/2))?u=h:s=h,(p=c>=(d=(o+l)/2))?o=d:l=d,t=n,!(n=n[m=p<<1|g]))return this;if(!n.length)break;(t[m+1&3]||t[m+2&3]||t[m+3&3])&&(r=t,y=m)}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[m]=a:delete t[m],(n=t[0]||t[1]||t[2]||t[3])&&n===(t[3]||t[2]||t[1]||t[0])&&!n.length&&(r?r[y]=n:this._root=n),this):(this._root=a,this)}function HF(e){for(var t=0,n=e.length;t<n;++t)this.remove(e[t]);return this}function GF(){return this._root}function VF(){var e=0;return this.visit(function(t){if(!t.length)do++e;while(t=t.next)}),e}function XF(e){var t=[],n,r=this._root,i,a,u,o,s;for(r&&t.push(new mt(r,this._x0,this._y0,this._x1,this._y1));n=t.pop();)if(!e(r=n.node,a=n.x0,u=n.y0,o=n.x1,s=n.y1)&&r.length){var l=(a+o)/2,f=(u+s)/2;(i=r[3])&&t.push(new mt(i,l,f,o,s)),(i=r[2])&&t.push(new mt(i,a,f,l,s)),(i=r[1])&&t.push(new mt(i,l,u,o,f)),(i=r[0])&&t.push(new mt(i,a,u,l,f))}return this}function KF(e){var t=[],n=[],r;for(this._root&&t.push(new mt(this._root,this._x0,this._y0,this._x1,this._y1));r=t.pop();){var i=r.node;if(i.length){var a,u=r.x0,o=r.y0,s=r.x1,l=r.y1,f=(u+s)/2,c=(o+l)/2;(a=i[0])&&t.push(new mt(a,u,o,f,c)),(a=i[1])&&t.push(new mt(a,f,o,s,c)),(a=i[2])&&t.push(new mt(a,u,c,f,l)),(a=i[3])&&t.push(new mt(a,f,c,s,l))}n.push(r)}for(;r=n.pop();)e(r.node,r.x0,r.y0,r.x1,r.y1);return this}function ZF(e){return e[0]}function QF(e){return arguments.length?(this._x=e,this):this._x}function JF(e){return e[1]}function e5(e){return arguments.length?(this._y=e,this):this._y}function V0(e,t,n){var r=new X0(t??ZF,n??JF,NaN,NaN,NaN,NaN);return e==null?r:r.addAll(e)}function X0(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 qp(e){for(var t={data:e.data},n=t;e=e.next;)n=n.next={data:e.data};return t}var wt=V0.prototype=X0.prototype;wt.copy=function(){var e=new X0(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=qp(t),e;for(n=[{source:t,target:e._root=new Array(4)}];t=n.pop();)for(var i=0;i<4;++i)(r=t.source[i])&&(r.length?n.push({source:r,target:t.target[i]=new Array(4)}):t.target[i]=qp(r));return e};wt.add=PF;wt.addAll=IF;wt.cover=UF;wt.data=qF;wt.extent=jF;wt.find=WF;wt.remove=YF;wt.removeAll=HF;wt.root=GF;wt.size=VF;wt.visit=XF;wt.visitAfter=KF;wt.x=QF;wt.y=e5;function yt(e){return function(){return e}}function wr(e){return(e()-.5)*1e-6}function t5(e){return e.x+e.vx}function n5(e){return e.y+e.vy}function r5(e){var t,n,r,i=1,a=1;typeof e!="function"&&(e=yt(e==null?1:+e));function u(){for(var l,f=t.length,c,h,d,g,p,m,y=0;y<a;++y)for(c=V0(t,t5,n5).visitAfter(o),l=0;l<f;++l)h=t[l],p=n[h.index],m=p*p,d=h.x+h.vx,g=h.y+h.vy,c.visit(v);function v(x,b,E,w,A){var C=x.data,F=x.r,D=p+F;if(C){if(C.index>h.index){var k=d-C.x-C.vx,R=g-C.y-C.vy,T=k*k+R*R;T<D*D&&(k===0&&(k=wr(r),T+=k*k),R===0&&(R=wr(r),T+=R*R),T=(D-(T=Math.sqrt(T)))/T*i,h.vx+=(k*=T)*(D=(F*=F)/(m+F)),h.vy+=(R*=T)*D,C.vx-=k*(D=1-D),C.vy-=R*D)}return}return b>d+D||w<d-D||E>g+D||A<g-D}}function o(l){if(l.data)return l.r=n[l.data.index];for(var f=l.r=0;f<4;++f)l[f]&&l[f].r>l.r&&(l.r=l[f].r)}function s(){if(t){var l,f=t.length,c;for(n=new Array(f),l=0;l<f;++l)c=t[l],n[c.index]=+e(c,l,t)}}return u.initialize=function(l,f){t=l,r=f,s()},u.iterations=function(l){return arguments.length?(a=+l,u):a},u.strength=function(l){return arguments.length?(i=+l,u):i},u.radius=function(l){return arguments.length?(e=typeof l=="function"?l:yt(+l),s(),u):e},u}function i5(e){return e.index}function jp(e,t){var n=e.get(t);if(!n)throw new Error("node not found: "+t);return n}function a5(e){var t=i5,n=c,r,i=yt(30),a,u,o,s,l,f=1;e==null&&(e=[]);function c(m){return 1/Math.min(o[m.source.index],o[m.target.index])}function h(m){for(var y=0,v=e.length;y<f;++y)for(var x=0,b,E,w,A,C,F,D;x<v;++x)b=e[x],E=b.source,w=b.target,A=w.x+w.vx-E.x-E.vx||wr(l),C=w.y+w.vy-E.y-E.vy||wr(l),F=Math.sqrt(A*A+C*C),F=(F-a[x])/F*m*r[x],A*=F,C*=F,w.vx-=A*(D=s[x]),w.vy-=C*D,E.vx+=A*(D=1-D),E.vy+=C*D}function d(){if(u){var m,y=u.length,v=e.length,x=new Map(u.map((E,w)=>[t(E,w,u),E])),b;for(m=0,o=new Array(y);m<v;++m)b=e[m],b.index=m,typeof b.source!="object"&&(b.source=jp(x,b.source)),typeof b.target!="object"&&(b.target=jp(x,b.target)),o[b.source.index]=(o[b.source.index]||0)+1,o[b.target.index]=(o[b.target.index]||0)+1;for(m=0,s=new Array(v);m<v;++m)b=e[m],s[m]=o[b.source.index]/(o[b.source.index]+o[b.target.index]);r=new Array(v),g(),a=new Array(v),p()}}function g(){if(u)for(var m=0,y=e.length;m<y;++m)r[m]=+n(e[m],m,e)}function p(){if(u)for(var m=0,y=e.length;m<y;++m)a[m]=+i(e[m],m,e)}return h.initialize=function(m,y){u=m,l=y,d()},h.links=function(m){return arguments.length?(e=m,d(),h):e},h.id=function(m){return arguments.length?(t=m,h):t},h.iterations=function(m){return arguments.length?(f=+m,h):f},h.strength=function(m){return arguments.length?(n=typeof m=="function"?m:yt(+m),g(),h):n},h.distance=function(m){return arguments.length?(i=typeof m=="function"?m:yt(+m),p(),h):i},h}const u5=1664525,o5=1013904223,Wp=4294967296;function s5(){let e=1;return()=>(e=(u5*e+o5)%Wp)/Wp}function l5(e){return e.x}function f5(e){return e.y}var c5=10,h5=Math.PI*(3-Math.sqrt(5));function d5(e){var t,n=1,r=.001,i=1-Math.pow(r,1/300),a=0,u=.6,o=new Map,s=RD(c),l=gv("tick","end"),f=s5();e==null&&(e=[]);function c(){h(),l.call("tick",t),n<r&&(s.stop(),l.call("end",t))}function h(p){var m,y=e.length,v;p===void 0&&(p=1);for(var x=0;x<p;++x)for(n+=(a-n)*i,o.forEach(function(b){b(n)}),m=0;m<y;++m)v=e[m],v.fx==null?v.x+=v.vx*=u:(v.x=v.fx,v.vx=0),v.fy==null?v.y+=v.vy*=u:(v.y=v.fy,v.vy=0);return t}function d(){for(var p=0,m=e.length,y;p<m;++p){if(y=e[p],y.index=p,y.fx!=null&&(y.x=y.fx),y.fy!=null&&(y.y=y.fy),isNaN(y.x)||isNaN(y.y)){var v=c5*Math.sqrt(.5+p),x=p*h5;y.x=v*Math.cos(x),y.y=v*Math.sin(x)}(isNaN(y.vx)||isNaN(y.vy))&&(y.vx=y.vy=0)}}function g(p){return p.initialize&&p.initialize(e,f),p}return d(),t={tick:h,restart:function(){return s.restart(c),t},stop:function(){return s.stop(),t},nodes:function(p){return arguments.length?(e=p,d(),o.forEach(g),t):e},alpha:function(p){return arguments.length?(n=+p,t):n},alphaMin:function(p){return arguments.length?(r=+p,t):r},alphaDecay:function(p){return arguments.length?(i=+p,t):+i},alphaTarget:function(p){return arguments.length?(a=+p,t):a},velocityDecay:function(p){return arguments.length?(u=1-p,t):1-u},randomSource:function(p){return arguments.length?(f=p,o.forEach(g),t):f},force:function(p,m){return arguments.length>1?(m==null?o.delete(p):o.set(p,g(m)),t):o.get(p)},find:function(p,m,y){var v=0,x=e.length,b,E,w,A,C;for(y==null?y=1/0:y*=y,v=0;v<x;++v)A=e[v],b=p-A.x,E=m-A.y,w=b*b+E*E,w<y&&(C=A,y=w);return C},on:function(p,m){return arguments.length>1?(l.on(p,m),t):l.on(p)}}}function g5(){var e,t,n,r,i=yt(-30),a,u=1,o=1/0,s=.81;function l(d){var g,p=e.length,m=V0(e,l5,f5).visitAfter(c);for(r=d,g=0;g<p;++g)t=e[g],m.visit(h)}function f(){if(e){var d,g=e.length,p;for(a=new Array(g),d=0;d<g;++d)p=e[d],a[p.index]=+i(p,d,e)}}function c(d){var g=0,p,m,y=0,v,x,b;if(d.length){for(v=x=b=0;b<4;++b)(p=d[b])&&(m=Math.abs(p.value))&&(g+=p.value,y+=m,v+=m*p.x,x+=m*p.y);d.x=v/y,d.y=x/y}else{p=d,p.x=p.data.x,p.y=p.data.y;do g+=a[p.data.index];while(p=p.next)}d.value=g}function h(d,g,p,m){if(!d.value)return!0;var y=d.x-t.x,v=d.y-t.y,x=m-g,b=y*y+v*v;if(x*x/s<b)return b<o&&(y===0&&(y=wr(n),b+=y*y),v===0&&(v=wr(n),b+=v*v),b<u&&(b=Math.sqrt(u*b)),t.vx+=y*d.value*r/b,t.vy+=v*d.value*r/b),!0;if(d.length||b>=o)return;(d.data!==t||d.next)&&(y===0&&(y=wr(n),b+=y*y),v===0&&(v=wr(n),b+=v*v),b<u&&(b=Math.sqrt(u*b)));do d.data!==t&&(x=a[d.data.index]*r/b,t.vx+=y*x,t.vy+=v*x);while(d=d.next)}return l.initialize=function(d,g){e=d,n=g,f()},l.strength=function(d){return arguments.length?(i=typeof d=="function"?d:yt(+d),f(),l):i},l.distanceMin=function(d){return arguments.length?(u=d*d,l):Math.sqrt(u)},l.distanceMax=function(d){return arguments.length?(o=d*d,l):Math.sqrt(o)},l.theta=function(d){return arguments.length?(s=d*d,l):Math.sqrt(s)},l}function p5(e){var t=yt(.1),n,r,i;typeof e!="function"&&(e=yt(e==null?0:+e));function a(o){for(var s=0,l=n.length,f;s<l;++s)f=n[s],f.vx+=(i[s]-f.x)*r[s]*o}function u(){if(n){var o,s=n.length;for(r=new Array(s),i=new Array(s),o=0;o<s;++o)r[o]=isNaN(i[o]=+e(n[o],o,n))?0:+t(n[o],o,n)}}return a.initialize=function(o){n=o,u()},a.strength=function(o){return arguments.length?(t=typeof o=="function"?o:yt(+o),u(),a):t},a.x=function(o){return arguments.length?(e=typeof o=="function"?o:yt(+o),u(),a):e},a}function m5(e){var t=yt(.1),n,r,i;typeof e!="function"&&(e=yt(e==null?0:+e));function a(o){for(var s=0,l=n.length,f;s<l;++s)f=n[s],f.vy+=(i[s]-f.y)*r[s]*o}function u(){if(n){var o,s=n.length;for(r=new Array(s),i=new Array(s),o=0;o<s;++o)r[o]=isNaN(i[o]=+e(n[o],o,n))?0:+t(n[o],o,n)}}return a.initialize=function(o){n=o,u()},a.strength=function(o){return arguments.length?(t=typeof o=="function"?o:yt(+o),u(),a):t},a.y=function(o){return arguments.length?(e=typeof o=="function"?o:yt(+o),u(),a):e},a}var K=1e-6,zs=1e-12,ie=Math.PI,ke=ie/2,Ls=ie/4,bt=ie*2,Se=180/ie,re=ie/180,ue=Math.abs,va=Math.atan,tn=Math.atan2,Q=Math.cos,Lo=Math.ceil,_v=Math.exp,mh=Math.hypot,Ns=Math.log,dc=Math.pow,H=Math.sin,Kt=Math.sign||function(e){return e>0?1:e<0?-1:0},At=Math.sqrt,K0=Math.tan;function Rv(e){return e>1?0:e<-1?ie:Math.acos(e)}function Bt(e){return e>1?ke:e<-1?-ke:Math.asin(e)}function je(){}function Ps(e,t){e&&Hp.hasOwnProperty(e.type)&&Hp[e.type](e,t)}var Yp={Feature:function(e,t){Ps(e.geometry,t)},FeatureCollection:function(e,t){for(var n=e.features,r=-1,i=n.length;++r<i;)Ps(n[r].geometry,t)}},Hp={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){yh(e.coordinates,t,0)},MultiLineString:function(e,t){for(var n=e.coordinates,r=-1,i=n.length;++r<i;)yh(n[r],t,0)},Polygon:function(e,t){Gp(e.coordinates,t)},MultiPolygon:function(e,t){for(var n=e.coordinates,r=-1,i=n.length;++r<i;)Gp(n[r],t)},GeometryCollection:function(e,t){for(var n=e.geometries,r=-1,i=n.length;++r<i;)Ps(n[r],t)}};function yh(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 Gp(e,t){var n=-1,r=e.length;for(t.polygonStart();++n<r;)yh(e[n],t,1);t.polygonEnd()}function Jn(e,t){e&&Yp.hasOwnProperty(e.type)?Yp[e.type](e,t):Ps(e,t)}var Is=new vt,Us=new vt,Tv,Ov,vh,xh,bh,Rn={point:je,lineStart:je,lineEnd:je,polygonStart:function(){Is=new vt,Rn.lineStart=y5,Rn.lineEnd=v5},polygonEnd:function(){var e=+Is;Us.add(e<0?bt+e:e),this.lineStart=this.lineEnd=this.point=je},sphere:function(){Us.add(bt)}};function y5(){Rn.point=x5}function v5(){zv(Tv,Ov)}function x5(e,t){Rn.point=zv,Tv=e,Ov=t,e*=re,t*=re,vh=e,xh=Q(t=t/2+Ls),bh=H(t)}function zv(e,t){e*=re,t*=re,t=t/2+Ls;var n=e-vh,r=n>=0?1:-1,i=r*n,a=Q(t),u=H(t),o=bh*u,s=xh*a+o*Q(i),l=o*r*H(i);Is.add(tn(l,s)),vh=e,xh=a,bh=u}function b5(e){return Us=new vt,Jn(e,Rn),Us*2}function qs(e){return[tn(e[1],e[0]),Bt(e[2])]}function ci(e){var t=e[0],n=e[1],r=Q(n);return[r*Q(t),r*H(t),H(n)]}function No(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function Ji(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 gc(e,t){e[0]+=t[0],e[1]+=t[1],e[2]+=t[2]}function Po(e,t){return[e[0]*t,e[1]*t,e[2]*t]}function js(e){var t=At(e[0]*e[0]+e[1]*e[1]+e[2]*e[2]);e[0]/=t,e[1]/=t,e[2]/=t}var De,Mt,Fe,Pt,Qr,Lv,Nv,Ki,vu,mr,or,Kn={point:Ah,lineStart:Vp,lineEnd:Xp,polygonStart:function(){Kn.point=Iv,Kn.lineStart=A5,Kn.lineEnd=E5,vu=new vt,Rn.polygonStart()},polygonEnd:function(){Rn.polygonEnd(),Kn.point=Ah,Kn.lineStart=Vp,Kn.lineEnd=Xp,Is<0?(De=-(Fe=180),Mt=-(Pt=90)):vu>K?Pt=90:vu<-K&&(Mt=-90),or[0]=De,or[1]=Fe},sphere:function(){De=-(Fe=180),Mt=-(Pt=90)}};function Ah(e,t){mr.push(or=[De=e,Fe=e]),t<Mt&&(Mt=t),t>Pt&&(Pt=t)}function Pv(e,t){var n=ci([e*re,t*re]);if(Ki){var r=Ji(Ki,n),i=[r[1],-r[0],0],a=Ji(i,r);js(a),a=qs(a);var u=e-Qr,o=u>0?1:-1,s=a[0]*Se*o,l,f=ue(u)>180;f^(o*Qr<s&&s<o*e)?(l=a[1]*Se,l>Pt&&(Pt=l)):(s=(s+360)%360-180,f^(o*Qr<s&&s<o*e)?(l=-a[1]*Se,l<Mt&&(Mt=l)):(t<Mt&&(Mt=t),t>Pt&&(Pt=t))),f?e<Qr?Nt(De,e)>Nt(De,Fe)&&(Fe=e):Nt(e,Fe)>Nt(De,Fe)&&(De=e):Fe>=De?(e<De&&(De=e),e>Fe&&(Fe=e)):e>Qr?Nt(De,e)>Nt(De,Fe)&&(Fe=e):Nt(e,Fe)>Nt(De,Fe)&&(De=e)}else mr.push(or=[De=e,Fe=e]);t<Mt&&(Mt=t),t>Pt&&(Pt=t),Ki=n,Qr=e}function Vp(){Kn.point=Pv}function Xp(){or[0]=De,or[1]=Fe,Kn.point=Ah,Ki=null}function Iv(e,t){if(Ki){var n=e-Qr;vu.add(ue(n)>180?n+(n>0?360:-360):n)}else Lv=e,Nv=t;Rn.point(e,t),Pv(e,t)}function A5(){Rn.lineStart()}function E5(){Iv(Lv,Nv),Rn.lineEnd(),ue(vu)>K&&(De=-(Fe=180)),or[0]=De,or[1]=Fe,Ki=null}function Nt(e,t){return(t-=e)<0?t+360:t}function w5(e,t){return e[0]-t[0]}function Kp(e,t){return e[0]<=e[1]?e[0]<=t&&t<=e[1]:t<e[0]||e[1]<t}function C5(e){var t,n,r,i,a,u,o;if(Pt=Fe=-(De=Mt=1/0),mr=[],Jn(e,Kn),n=mr.length){for(mr.sort(w5),t=1,r=mr[0],a=[r];t<n;++t)i=mr[t],Kp(r,i[0])||Kp(r,i[1])?(Nt(r[0],i[1])>Nt(r[0],r[1])&&(r[1]=i[1]),Nt(i[0],r[1])>Nt(r[0],r[1])&&(r[0]=i[0])):a.push(r=i);for(u=-1/0,n=a.length-1,t=0,r=a[n];t<=n;r=i,++t)i=a[t],(o=Nt(r[1],i[0]))>u&&(u=o,De=i[0],Fe=r[1])}return mr=or=null,De===1/0||Mt===1/0?[[NaN,NaN],[NaN,NaN]]:[[De,Mt],[Fe,Pt]]}var Ka,Ws,Ys,Hs,Gs,Vs,Xs,Ks,Eh,wh,Ch,Uv,qv,dt,gt,pt,mn={sphere:je,point:Z0,lineStart:Zp,lineEnd:Qp,polygonStart:function(){mn.lineStart=k5,mn.lineEnd=M5},polygonEnd:function(){mn.lineStart=Zp,mn.lineEnd=Qp}};function Z0(e,t){e*=re,t*=re;var n=Q(t);to(n*Q(e),n*H(e),H(t))}function to(e,t,n){++Ka,Ys+=(e-Ys)/Ka,Hs+=(t-Hs)/Ka,Gs+=(n-Gs)/Ka}function Zp(){mn.point=D5}function D5(e,t){e*=re,t*=re;var n=Q(t);dt=n*Q(e),gt=n*H(e),pt=H(t),mn.point=F5,to(dt,gt,pt)}function F5(e,t){e*=re,t*=re;var n=Q(t),r=n*Q(e),i=n*H(e),a=H(t),u=tn(At((u=gt*a-pt*i)*u+(u=pt*r-dt*a)*u+(u=dt*i-gt*r)*u),dt*r+gt*i+pt*a);Ws+=u,Vs+=u*(dt+(dt=r)),Xs+=u*(gt+(gt=i)),Ks+=u*(pt+(pt=a)),to(dt,gt,pt)}function Qp(){mn.point=Z0}function k5(){mn.point=S5}function M5(){jv(Uv,qv),mn.point=Z0}function S5(e,t){Uv=e,qv=t,e*=re,t*=re,mn.point=jv;var n=Q(t);dt=n*Q(e),gt=n*H(e),pt=H(t),to(dt,gt,pt)}function jv(e,t){e*=re,t*=re;var n=Q(t),r=n*Q(e),i=n*H(e),a=H(t),u=gt*a-pt*i,o=pt*r-dt*a,s=dt*i-gt*r,l=mh(u,o,s),f=Bt(l),c=l&&-f/l;Eh.add(c*u),wh.add(c*o),Ch.add(c*s),Ws+=f,Vs+=f*(dt+(dt=r)),Xs+=f*(gt+(gt=i)),Ks+=f*(pt+(pt=a)),to(dt,gt,pt)}function $5(e){Ka=Ws=Ys=Hs=Gs=Vs=Xs=Ks=0,Eh=new vt,wh=new vt,Ch=new vt,Jn(e,mn);var t=+Eh,n=+wh,r=+Ch,i=mh(t,n,r);return i<zs&&(t=Vs,n=Xs,r=Ks,Ws<K&&(t=Ys,n=Hs,r=Gs),i=mh(t,n,r),i<zs)?[NaN,NaN]:[tn(n,t)*Se,Bt(r/i)*Se]}function Dh(e,t){function n(r,i){return r=e(r,i),t(r[0],r[1])}return e.invert&&t.invert&&(n.invert=function(r,i){return r=t.invert(r,i),r&&e.invert(r[0],r[1])}),n}function Fh(e,t){return ue(e)>ie&&(e-=Math.round(e/bt)*bt),[e,t]}Fh.invert=Fh;function Wv(e,t,n){return(e%=bt)?t||n?Dh(em(e),tm(t,n)):em(e):t||n?tm(t,n):Fh}function Jp(e){return function(t,n){return t+=e,ue(t)>ie&&(t-=Math.round(t/bt)*bt),[t,n]}}function em(e){var t=Jp(e);return t.invert=Jp(-e),t}function tm(e,t){var n=Q(e),r=H(e),i=Q(t),a=H(t);function u(o,s){var l=Q(s),f=Q(o)*l,c=H(o)*l,h=H(s),d=h*n+f*r;return[tn(c*i-d*a,f*n-h*r),Bt(d*i+c*a)]}return u.invert=function(o,s){var l=Q(s),f=Q(o)*l,c=H(o)*l,h=H(s),d=h*i-c*a;return[tn(c*i+h*a,f*n+d*r),Bt(d*n-f*r)]},u}function B5(e){e=Wv(e[0]*re,e[1]*re,e.length>2?e[2]*re:0);function t(n){return n=e(n[0]*re,n[1]*re),n[0]*=Se,n[1]*=Se,n}return t.invert=function(n){return n=e.invert(n[0]*re,n[1]*re),n[0]*=Se,n[1]*=Se,n},t}function _5(e,t,n,r,i,a){if(n){var u=Q(t),o=H(t),s=r*n;i==null?(i=t+r*bt,a=t-s/2):(i=nm(u,i),a=nm(u,a),(r>0?i<a:i>a)&&(i+=r*bt));for(var l,f=i;r>0?f>a:f<a;f-=s)l=qs([u,-o*Q(f),-o*H(f)]),e.point(l[0],l[1])}}function nm(e,t){t=ci(t),t[0]-=e,js(t);var n=Rv(-t[1]);return((-t[2]<0?-n:n)+bt-K)%bt}function Yv(){var e=[],t;return{point:function(n,r,i){t.push([n,r,i])},lineStart:function(){e.push(t=[])},lineEnd:je,rejoin:function(){e.length>1&&e.push(e.pop().concat(e.shift()))},result:function(){var n=e;return e=[],t=null,n}}}function us(e,t){return ue(e[0]-t[0])<K&&ue(e[1]-t[1])<K}function Io(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 Hv(e,t,n,r,i){var a=[],u=[],o,s;if(e.forEach(function(g){if(!((p=g.length-1)<=0)){var p,m=g[0],y=g[p],v;if(us(m,y)){if(!m[2]&&!y[2]){for(i.lineStart(),o=0;o<p;++o)i.point((m=g[o])[0],m[1]);i.lineEnd();return}y[0]+=2*K}a.push(v=new Io(m,g,null,!0)),u.push(v.o=new Io(m,null,v,!1)),a.push(v=new Io(y,g,null,!1)),u.push(v.o=new Io(y,null,v,!0))}}),!!a.length){for(u.sort(t),rm(a),rm(u),o=0,s=u.length;o<s;++o)u[o].e=n=!n;for(var l=a[0],f,c;;){for(var h=l,d=!0;h.v;)if((h=h.n)===l)return;f=h.z,i.lineStart();do{if(h.v=h.o.v=!0,h.e){if(d)for(o=0,s=f.length;o<s;++o)i.point((c=f[o])[0],c[1]);else r(h.x,h.n.x,1,i);h=h.n}else{if(d)for(f=h.p.z,o=f.length-1;o>=0;--o)i.point((c=f[o])[0],c[1]);else r(h.x,h.p.x,-1,i);h=h.p}h=h.o,f=h.z,d=!d}while(!h.v);i.lineEnd()}}}function rm(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 pc(e){return ue(e[0])<=ie?e[0]:Kt(e[0])*((ue(e[0])+ie)%bt-ie)}function R5(e,t){var n=pc(t),r=t[1],i=H(r),a=[H(n),-Q(n),0],u=0,o=0,s=new vt;i===1?r=ke+K:i===-1&&(r=-ke-K);for(var l=0,f=e.length;l<f;++l)if(h=(c=e[l]).length)for(var c,h,d=c[h-1],g=pc(d),p=d[1]/2+Ls,m=H(p),y=Q(p),v=0;v<h;++v,g=b,m=w,y=A,d=x){var x=c[v],b=pc(x),E=x[1]/2+Ls,w=H(E),A=Q(E),C=b-g,F=C>=0?1:-1,D=F*C,k=D>ie,R=m*w;if(s.add(tn(R*F*H(D),y*A+R*Q(D))),u+=k?C+F*bt:C,k^g>=n^b>=n){var T=Ji(ci(d),ci(x));js(T);var N=Ji(a,T);js(N);var M=(k^C>=0?-1:1)*Bt(N[2]);(r>M||r===M&&(T[0]||T[1]))&&(o+=k^C>=0?1:-1)}}return(u<-K||u<K&&s<-zs)^o&1}function Gv(e,t,n,r){return function(i){var a=t(i),u=Yv(),o=t(u),s=!1,l,f,c,h={point:d,lineStart:p,lineEnd:m,polygonStart:function(){h.point=y,h.lineStart=v,h.lineEnd=x,f=[],l=[]},polygonEnd:function(){h.point=d,h.lineStart=p,h.lineEnd=m,f=hv(f);var b=R5(l,r);f.length?(s||(i.polygonStart(),s=!0),Hv(f,O5,b,n,i)):b&&(s||(i.polygonStart(),s=!0),i.lineStart(),n(null,null,1,i),i.lineEnd()),s&&(i.polygonEnd(),s=!1),f=l=null},sphere:function(){i.polygonStart(),i.lineStart(),n(null,null,1,i),i.lineEnd(),i.polygonEnd()}};function d(b,E){e(b,E)&&i.point(b,E)}function g(b,E){a.point(b,E)}function p(){h.point=g,a.lineStart()}function m(){h.point=d,a.lineEnd()}function y(b,E){c.push([b,E]),o.point(b,E)}function v(){o.lineStart(),c=[]}function x(){y(c[0][0],c[0][1]),o.lineEnd();var b=o.clean(),E=u.result(),w,A=E.length,C,F,D;if(c.pop(),l.push(c),c=null,!!A){if(b&1){if(F=E[0],(C=F.length-1)>0){for(s||(i.polygonStart(),s=!0),i.lineStart(),w=0;w<C;++w)i.point((D=F[w])[0],D[1]);i.lineEnd()}return}A>1&&b&2&&E.push(E.pop().concat(E.shift())),f.push(E.filter(T5))}}return h}}function T5(e){return e.length>1}function O5(e,t){return((e=e.x)[0]<0?e[1]-ke-K:ke-e[1])-((t=t.x)[0]<0?t[1]-ke-K:ke-t[1])}const im=Gv(function(){return!0},z5,N5,[-ie,-ke]);function z5(e){var t=NaN,n=NaN,r=NaN,i;return{lineStart:function(){e.lineStart(),i=1},point:function(a,u){var o=a>0?ie:-ie,s=ue(a-t);ue(s-ie)<K?(e.point(t,n=(n+u)/2>0?ke:-ke),e.point(r,n),e.lineEnd(),e.lineStart(),e.point(o,n),e.point(a,n),i=0):r!==o&&s>=ie&&(ue(t-r)<K&&(t-=r*K),ue(a-o)<K&&(a-=o*K),n=L5(t,n,a,u),e.point(r,n),e.lineEnd(),e.lineStart(),e.point(o,n),i=0),e.point(t=a,n=u),r=o},lineEnd:function(){e.lineEnd(),t=n=NaN},clean:function(){return 2-i}}}function L5(e,t,n,r){var i,a,u=H(e-n);return ue(u)>K?va((H(t)*(a=Q(r))*H(n)-H(r)*(i=Q(t))*H(e))/(i*a*u)):(t+r)/2}function N5(e,t,n,r){var i;if(e==null)i=n*ke,r.point(-ie,i),r.point(0,i),r.point(ie,i),r.point(ie,0),r.point(ie,-i),r.point(0,-i),r.point(-ie,-i),r.point(-ie,0),r.point(-ie,i);else if(ue(e[0]-t[0])>K){var a=e[0]<t[0]?ie:-ie;i=n*a/2,r.point(-a,i),r.point(0,i),r.point(a,i)}else r.point(t[0],t[1])}function P5(e){var t=Q(e),n=6*re,r=t>0,i=ue(t)>K;function a(f,c,h,d){_5(d,e,n,h,f,c)}function u(f,c){return Q(f)*Q(c)>t}function o(f){var c,h,d,g,p;return{lineStart:function(){g=d=!1,p=1},point:function(m,y){var v=[m,y],x,b=u(m,y),E=r?b?0:l(m,y):b?l(m+(m<0?ie:-ie),y):0;if(!c&&(g=d=b)&&f.lineStart(),b!==d&&(x=s(c,v),(!x||us(c,x)||us(v,x))&&(v[2]=1)),b!==d)p=0,b?(f.lineStart(),x=s(v,c),f.point(x[0],x[1])):(x=s(c,v),f.point(x[0],x[1],2),f.lineEnd()),c=x;else if(i&&c&&r^b){var w;!(E&h)&&(w=s(v,c,!0))&&(p=0,r?(f.lineStart(),f.point(w[0][0],w[0][1]),f.point(w[1][0],w[1][1]),f.lineEnd()):(f.point(w[1][0],w[1][1]),f.lineEnd(),f.lineStart(),f.point(w[0][0],w[0][1],3)))}b&&(!c||!us(c,v))&&f.point(v[0],v[1]),c=v,d=b,h=E},lineEnd:function(){d&&f.lineEnd(),c=null},clean:function(){return p|(g&&d)<<1}}}function s(f,c,h){var d=ci(f),g=ci(c),p=[1,0,0],m=Ji(d,g),y=No(m,m),v=m[0],x=y-v*v;if(!x)return!h&&f;var b=t*y/x,E=-t*v/x,w=Ji(p,m),A=Po(p,b),C=Po(m,E);gc(A,C);var F=w,D=No(A,F),k=No(F,F),R=D*D-k*(No(A,A)-1);if(!(R<0)){var T=At(R),N=Po(F,(-D-T)/k);if(gc(N,A),N=qs(N),!h)return N;var M=f[0],O=c[0],P=f[1],X=c[1],J;O<M&&(J=M,M=O,O=J);var pe=O-M,st=ue(pe-ie)<K,sn=st||pe<K;if(!st&&X<P&&(J=P,P=X,X=J),sn?st?P+X>0^N[1]<(ue(N[0]-M)<K?P:X):P<=N[1]&&N[1]<=X:pe>ie^(M<=N[0]&&N[0]<=O)){var ln=Po(F,(-D+T)/k);return gc(ln,A),[N,qs(ln)]}}}function l(f,c){var h=r?e:ie-e,d=0;return f<-h?d|=1:f>h&&(d|=2),c<-h?d|=4:c>h&&(d|=8),d}return Gv(u,o,a,r?[0,-e]:[-ie,e-ie])}function I5(e,t,n,r,i,a){var u=e[0],o=e[1],s=t[0],l=t[1],f=0,c=1,h=s-u,d=l-o,g;if(g=n-u,!(!h&&g>0)){if(g/=h,h<0){if(g<f)return;g<c&&(c=g)}else if(h>0){if(g>c)return;g>f&&(f=g)}if(g=i-u,!(!h&&g<0)){if(g/=h,h<0){if(g>c)return;g>f&&(f=g)}else if(h>0){if(g<f)return;g<c&&(c=g)}if(g=r-o,!(!d&&g>0)){if(g/=d,d<0){if(g<f)return;g<c&&(c=g)}else if(d>0){if(g>c)return;g>f&&(f=g)}if(g=a-o,!(!d&&g<0)){if(g/=d,d<0){if(g>c)return;g>f&&(f=g)}else if(d>0){if(g<f)return;g<c&&(c=g)}return f>0&&(e[0]=u+f*h,e[1]=o+f*d),c<1&&(t[0]=u+c*h,t[1]=o+c*d),!0}}}}}var Za=1e9,Uo=-Za;function Vv(e,t,n,r){function i(l,f){return e<=l&&l<=n&&t<=f&&f<=r}function a(l,f,c,h){var d=0,g=0;if(l==null||(d=u(l,c))!==(g=u(f,c))||s(l,f)<0^c>0)do h.point(d===0||d===3?e:n,d>1?r:t);while((d=(d+c+4)%4)!==g);else h.point(f[0],f[1])}function u(l,f){return ue(l[0]-e)<K?f>0?0:3:ue(l[0]-n)<K?f>0?2:1:ue(l[1]-t)<K?f>0?1:0:f>0?3:2}function o(l,f){return s(l.x,f.x)}function s(l,f){var c=u(l,1),h=u(f,1);return c!==h?c-h:c===0?f[1]-l[1]:c===1?l[0]-f[0]:c===2?l[1]-f[1]:f[0]-l[0]}return function(l){var f=l,c=Yv(),h,d,g,p,m,y,v,x,b,E,w,A={point:C,lineStart:R,lineEnd:T,polygonStart:D,polygonEnd:k};function C(M,O){i(M,O)&&f.point(M,O)}function F(){for(var M=0,O=0,P=d.length;O<P;++O)for(var X=d[O],J=1,pe=X.length,st=X[0],sn,ln,Bi=st[0],hr=st[1];J<pe;++J)sn=Bi,ln=hr,st=X[J],Bi=st[0],hr=st[1],ln<=r?hr>r&&(Bi-sn)*(r-ln)>(hr-ln)*(e-sn)&&++M:hr<=r&&(Bi-sn)*(r-ln)<(hr-ln)*(e-sn)&&--M;return M}function D(){f=c,h=[],d=[],w=!0}function k(){var M=F(),O=w&&M,P=(h=hv(h)).length;(O||P)&&(l.polygonStart(),O&&(l.lineStart(),a(null,null,1,l),l.lineEnd()),P&&Hv(h,o,M,a,l),l.polygonEnd()),f=l,h=d=g=null}function R(){A.point=N,d&&d.push(g=[]),E=!0,b=!1,v=x=NaN}function T(){h&&(N(p,m),y&&b&&c.rejoin(),h.push(c.result())),A.point=C,b&&f.lineEnd()}function N(M,O){var P=i(M,O);if(d&&g.push([M,O]),E)p=M,m=O,y=P,E=!1,P&&(f.lineStart(),f.point(M,O));else if(P&&b)f.point(M,O);else{var X=[v=Math.max(Uo,Math.min(Za,v)),x=Math.max(Uo,Math.min(Za,x))],J=[M=Math.max(Uo,Math.min(Za,M)),O=Math.max(Uo,Math.min(Za,O))];I5(X,J,e,t,n,r)?(b||(f.lineStart(),f.point(X[0],X[1])),f.point(J[0],J[1]),P||f.lineEnd(),w=!1):P&&(f.lineStart(),f.point(M,O),w=!1)}v=M,x=O,b=P}return A}}function am(e,t,n){var r=It(e,t-K,n).concat(t);return function(i){return r.map(function(a){return[i,a]})}}function um(e,t,n){var r=It(e,t-K,n).concat(t);return function(i){return r.map(function(a){return[a,i]})}}function U5(){var e,t,n,r,i,a,u,o,s=10,l=s,f=90,c=360,h,d,g,p,m=2.5;function y(){return{type:"MultiLineString",coordinates:v()}}function v(){return It(Lo(r/f)*f,n,f).map(g).concat(It(Lo(o/c)*c,u,c).map(p)).concat(It(Lo(t/s)*s,e,s).filter(function(x){return ue(x%f)>K}).map(h)).concat(It(Lo(a/l)*l,i,l).filter(function(x){return ue(x%c)>K}).map(d))}return y.lines=function(){return v().map(function(x){return{type:"LineString",coordinates:x}})},y.outline=function(){return{type:"Polygon",coordinates:[g(r).concat(p(u).slice(1),g(n).reverse().slice(1),p(o).reverse().slice(1))]}},y.extent=function(x){return arguments.length?y.extentMajor(x).extentMinor(x):y.extentMinor()},y.extentMajor=function(x){return arguments.length?(r=+x[0][0],n=+x[1][0],o=+x[0][1],u=+x[1][1],r>n&&(x=r,r=n,n=x),o>u&&(x=o,o=u,u=x),y.precision(m)):[[r,o],[n,u]]},y.extentMinor=function(x){return arguments.length?(t=+x[0][0],e=+x[1][0],a=+x[0][1],i=+x[1][1],t>e&&(x=t,t=e,e=x),a>i&&(x=a,a=i,i=x),y.precision(m)):[[t,a],[e,i]]},y.step=function(x){return arguments.length?y.stepMajor(x).stepMinor(x):y.stepMinor()},y.stepMajor=function(x){return arguments.length?(f=+x[0],c=+x[1],y):[f,c]},y.stepMinor=function(x){return arguments.length?(s=+x[0],l=+x[1],y):[s,l]},y.precision=function(x){return arguments.length?(m=+x,h=am(a,i,90),d=um(t,e,m),g=am(o,u,90),p=um(r,n,m),y):m},y.extentMajor([[-180,-90+K],[180,90-K]]).extentMinor([[-180,-80-K],[180,80+K]])}const _u=e=>e;var mc=new vt,kh=new vt,Xv,Kv,Mh,Sh,br={point:je,lineStart:je,lineEnd:je,polygonStart:function(){br.lineStart=q5,br.lineEnd=W5},polygonEnd:function(){br.lineStart=br.lineEnd=br.point=je,mc.add(ue(kh)),kh=new vt},result:function(){var e=mc/2;return mc=new vt,e}};function q5(){br.point=j5}function j5(e,t){br.point=Zv,Xv=Mh=e,Kv=Sh=t}function Zv(e,t){kh.add(Sh*e-Mh*t),Mh=e,Sh=t}function W5(){Zv(Xv,Kv)}const om=br;var ea=1/0,Zs=ea,Ru=-ea,Qs=Ru,Y5={point:H5,lineStart:je,lineEnd:je,polygonStart:je,polygonEnd:je,result:function(){var e=[[ea,Zs],[Ru,Qs]];return Ru=Qs=-(Zs=ea=1/0),e}};function H5(e,t){e<ea&&(ea=e),e>Ru&&(Ru=e),t<Zs&&(Zs=t),t>Qs&&(Qs=t)}const Js=Y5;var $h=0,Bh=0,Qa=0,el=0,tl=0,Wi=0,_h=0,Rh=0,Ja=0,Qv,Jv,Mn,Sn,gn={point:hi,lineStart:sm,lineEnd:lm,polygonStart:function(){gn.lineStart=X5,gn.lineEnd=K5},polygonEnd:function(){gn.point=hi,gn.lineStart=sm,gn.lineEnd=lm},result:function(){var e=Ja?[_h/Ja,Rh/Ja]:Wi?[el/Wi,tl/Wi]:Qa?[$h/Qa,Bh/Qa]:[NaN,NaN];return $h=Bh=Qa=el=tl=Wi=_h=Rh=Ja=0,e}};function hi(e,t){$h+=e,Bh+=t,++Qa}function sm(){gn.point=G5}function G5(e,t){gn.point=V5,hi(Mn=e,Sn=t)}function V5(e,t){var n=e-Mn,r=t-Sn,i=At(n*n+r*r);el+=i*(Mn+e)/2,tl+=i*(Sn+t)/2,Wi+=i,hi(Mn=e,Sn=t)}function lm(){gn.point=hi}function X5(){gn.point=Z5}function K5(){ex(Qv,Jv)}function Z5(e,t){gn.point=ex,hi(Qv=Mn=e,Jv=Sn=t)}function ex(e,t){var n=e-Mn,r=t-Sn,i=At(n*n+r*r);el+=i*(Mn+e)/2,tl+=i*(Sn+t)/2,Wi+=i,i=Sn*e-Mn*t,_h+=i*(Mn+e),Rh+=i*(Sn+t),Ja+=i*3,hi(Mn=e,Sn=t)}const fm=gn;function tx(e){this._context=e}tx.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,bt);break}}},result:je};var Th=new vt,yc,nx,rx,eu,tu,nl={point:je,lineStart:function(){nl.point=Q5},lineEnd:function(){yc&&ix(nx,rx),nl.point=je},polygonStart:function(){yc=!0},polygonEnd:function(){yc=null},result:function(){var e=+Th;return Th=new vt,e}};function Q5(e,t){nl.point=ix,nx=eu=e,rx=tu=t}function ix(e,t){eu-=e,tu-=t,Th.add(At(eu*eu+tu*tu)),eu=e,tu=t}const cm=nl;let hm,rl,dm,gm;class pm{constructor(t){this._append=t==null?ax:J5(t),this._radius=4.5,this._=""}pointRadius(t){return this._radius=+t,this}polygonStart(){this._line=0}polygonEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){this._line===0&&(this._+="Z"),this._point=NaN}point(t,n){switch(this._point){case 0:{this._append`M${t},${n}`,this._point=1;break}case 1:{this._append`L${t},${n}`;break}default:{if(this._append`M${t},${n}`,this._radius!==dm||this._append!==rl){const r=this._radius,i=this._;this._="",this._append`m0,${r}a${r},${r} 0 1,1 0,${-2*r}a${r},${r} 0 1,1 0,${2*r}z`,dm=r,rl=this._append,gm=this._,this._=i}this._+=gm;break}}}result(){const t=this._;return this._="",t.length?t:null}}function ax(e){let t=1;this._+=e[0];for(const n=e.length;t<n;++t)this._+=arguments[t]+e[t]}function J5(e){const t=Math.floor(e);if(!(t>=0))throw new RangeError(`invalid digits: ${e}`);if(t>15)return ax;if(t!==hm){const n=10**t;hm=t,rl=function(i){let a=1;this._+=i[0];for(const u=i.length;a<u;++a)this._+=Math.round(arguments[a]*n)/n+i[a]}}return rl}function ux(e,t){let n=3,r=4.5,i,a;function u(o){return o&&(typeof r=="function"&&a.pointRadius(+r.apply(this,arguments)),Jn(o,i(a))),a.result()}return u.area=function(o){return Jn(o,i(om)),om.result()},u.measure=function(o){return Jn(o,i(cm)),cm.result()},u.bounds=function(o){return Jn(o,i(Js)),Js.result()},u.centroid=function(o){return Jn(o,i(fm)),fm.result()},u.projection=function(o){return arguments.length?(i=o==null?(e=null,_u):(e=o).stream,u):e},u.context=function(o){return arguments.length?(a=o==null?(t=null,new pm(n)):new tx(t=o),typeof r!="function"&&a.pointRadius(r),u):t},u.pointRadius=function(o){return arguments.length?(r=typeof o=="function"?o:(a.pointRadius(+o),+o),u):r},u.digits=function(o){if(!arguments.length)return n;if(o==null)n=null;else{const s=Math.floor(o);if(!(s>=0))throw new RangeError(`invalid digits: ${o}`);n=s}return t===null&&(a=new pm(n)),u},u.projection(e).digits(n).context(t)}function Gl(e){return function(t){var n=new Oh;for(var r in e)n[r]=e[r];return n.stream=t,n}}function Oh(){}Oh.prototype={constructor:Oh,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 Q0(e,t,n){var r=e.clipExtent&&e.clipExtent();return e.scale(150).translate([0,0]),r!=null&&e.clipExtent(null),Jn(n,e.stream(Js)),t(Js.result()),r!=null&&e.clipExtent(r),e}function Vl(e,t,n){return Q0(e,function(r){var i=t[1][0]-t[0][0],a=t[1][1]-t[0][1],u=Math.min(i/(r[1][0]-r[0][0]),a/(r[1][1]-r[0][1])),o=+t[0][0]+(i-u*(r[1][0]+r[0][0]))/2,s=+t[0][1]+(a-u*(r[1][1]+r[0][1]))/2;e.scale(150*u).translate([o,s])},n)}function J0(e,t,n){return Vl(e,[[0,0],t],n)}function ed(e,t,n){return Q0(e,function(r){var i=+t,a=i/(r[1][0]-r[0][0]),u=(i-a*(r[1][0]+r[0][0]))/2,o=-a*r[0][1];e.scale(150*a).translate([u,o])},n)}function td(e,t,n){return Q0(e,function(r){var i=+t,a=i/(r[1][1]-r[0][1]),u=-a*r[0][0],o=(i-a*(r[1][1]+r[0][1]))/2;e.scale(150*a).translate([u,o])},n)}var mm=16,e6=Q(30*re);function ym(e,t){return+t?n6(e,t):t6(e)}function t6(e){return Gl({point:function(t,n){t=e(t,n),this.stream.point(t[0],t[1])}})}function n6(e,t){function n(r,i,a,u,o,s,l,f,c,h,d,g,p,m){var y=l-r,v=f-i,x=y*y+v*v;if(x>4*t&&p--){var b=u+h,E=o+d,w=s+g,A=At(b*b+E*E+w*w),C=Bt(w/=A),F=ue(ue(w)-1)<K||ue(a-c)<K?(a+c)/2:tn(E,b),D=e(F,C),k=D[0],R=D[1],T=k-r,N=R-i,M=v*T-y*N;(M*M/x>t||ue((y*T+v*N)/x-.5)>.3||u*h+o*d+s*g<e6)&&(n(r,i,a,u,o,s,k,R,F,b/=A,E/=A,w,p,m),m.point(k,R),n(k,R,F,b,E,w,l,f,c,h,d,g,p,m))}}return function(r){var i,a,u,o,s,l,f,c,h,d,g,p,m={point:y,lineStart:v,lineEnd:b,polygonStart:function(){r.polygonStart(),m.lineStart=E},polygonEnd:function(){r.polygonEnd(),m.lineStart=v}};function y(C,F){C=e(C,F),r.point(C[0],C[1])}function v(){c=NaN,m.point=x,r.lineStart()}function x(C,F){var D=ci([C,F]),k=e(C,F);n(c,h,f,d,g,p,c=k[0],h=k[1],f=C,d=D[0],g=D[1],p=D[2],mm,r),r.point(c,h)}function b(){m.point=y,r.lineEnd()}function E(){v(),m.point=w,m.lineEnd=A}function w(C,F){x(i=C,F),a=c,u=h,o=d,s=g,l=p,m.point=x}function A(){n(c,h,f,d,g,p,a,u,i,o,s,l,mm,r),m.lineEnd=b,b()}return m}}var r6=Gl({point:function(e,t){this.stream.point(e*re,t*re)}});function i6(e){return Gl({point:function(t,n){var r=e(t,n);return this.stream.point(r[0],r[1])}})}function a6(e,t,n,r,i){function a(u,o){return u*=r,o*=i,[t+e*u,n-e*o]}return a.invert=function(u,o){return[(u-t)/e*r,(n-o)/e*i]},a}function vm(e,t,n,r,i,a){if(!a)return a6(e,t,n,r,i);var u=Q(a),o=H(a),s=u*e,l=o*e,f=u/e,c=o/e,h=(o*n-u*t)/e,d=(o*t+u*n)/e;function g(p,m){return p*=r,m*=i,[s*p-l*m+t,n-l*p-s*m]}return g.invert=function(p,m){return[r*(f*p-c*m+h),i*(d-c*p-f*m)]},g}function Pn(e){return ox(function(){return e})()}function ox(e){var t,n=150,r=480,i=250,a=0,u=0,o=0,s=0,l=0,f,c=0,h=1,d=1,g=null,p=im,m=null,y,v,x,b=_u,E=.5,w,A,C,F,D;function k(M){return C(M[0]*re,M[1]*re)}function R(M){return M=C.invert(M[0],M[1]),M&&[M[0]*Se,M[1]*Se]}k.stream=function(M){return F&&D===M?F:F=r6(i6(f)(p(w(b(D=M)))))},k.preclip=function(M){return arguments.length?(p=M,g=void 0,N()):p},k.postclip=function(M){return arguments.length?(b=M,m=y=v=x=null,N()):b},k.clipAngle=function(M){return arguments.length?(p=+M?P5(g=M*re):(g=null,im),N()):g*Se},k.clipExtent=function(M){return arguments.length?(b=M==null?(m=y=v=x=null,_u):Vv(m=+M[0][0],y=+M[0][1],v=+M[1][0],x=+M[1][1]),N()):m==null?null:[[m,y],[v,x]]},k.scale=function(M){return arguments.length?(n=+M,T()):n},k.translate=function(M){return arguments.length?(r=+M[0],i=+M[1],T()):[r,i]},k.center=function(M){return arguments.length?(a=M[0]%360*re,u=M[1]%360*re,T()):[a*Se,u*Se]},k.rotate=function(M){return arguments.length?(o=M[0]%360*re,s=M[1]%360*re,l=M.length>2?M[2]%360*re:0,T()):[o*Se,s*Se,l*Se]},k.angle=function(M){return arguments.length?(c=M%360*re,T()):c*Se},k.reflectX=function(M){return arguments.length?(h=M?-1:1,T()):h<0},k.reflectY=function(M){return arguments.length?(d=M?-1:1,T()):d<0},k.precision=function(M){return arguments.length?(w=ym(A,E=M*M),N()):At(E)},k.fitExtent=function(M,O){return Vl(k,M,O)},k.fitSize=function(M,O){return J0(k,M,O)},k.fitWidth=function(M,O){return ed(k,M,O)},k.fitHeight=function(M,O){return td(k,M,O)};function T(){var M=vm(n,0,0,h,d,c).apply(null,t(a,u)),O=vm(n,r-M[0],i-M[1],h,d,c);return f=Wv(o,s,l),A=Dh(t,O),C=Dh(f,A),w=ym(A,E),N()}function N(){return F=D=null,k}return function(){return t=e.apply(this,arguments),k.invert=t.invert&&R,T()}}function nd(e){var t=0,n=ie/3,r=ox(e),i=r(t,n);return i.parallels=function(a){return arguments.length?r(t=a[0]*re,n=a[1]*re):[t*Se,n*Se]},i}function u6(e){var t=Q(e);function n(r,i){return[r*t,H(i)/t]}return n.invert=function(r,i){return[r/t,Bt(i*t)]},n}function o6(e,t){var n=H(e),r=(n+H(t))/2;if(ue(r)<K)return u6(e);var i=1+n*(2*r-n),a=At(i)/r;function u(o,s){var l=At(i-2*r*H(s))/r;return[l*H(o*=r),a-l*Q(o)]}return u.invert=function(o,s){var l=a-s,f=tn(o,ue(l))*Kt(l);return l*r<0&&(f-=ie*Kt(o)*Kt(l)),[f/r,Bt((i-(o*o+l*l)*r*r)/(2*r))]},u}function il(){return nd(o6).scale(155.424).center([0,33.6442])}function sx(){return il().parallels([29.5,45.5]).scale(1070).translate([480,250]).rotate([96,0]).center([-.6,38.7])}function s6(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 l6(){var e,t,n=sx(),r,i=il().rotate([154,0]).center([-2,58.5]).parallels([55,65]),a,u=il().rotate([157,0]).center([-3,19.9]).parallels([8,18]),o,s,l={point:function(h,d){s=[h,d]}};function f(h){var d=h[0],g=h[1];return s=null,r.point(d,g),s||(a.point(d,g),s)||(o.point(d,g),s)}f.invert=function(h){var d=n.scale(),g=n.translate(),p=(h[0]-g[0])/d,m=(h[1]-g[1])/d;return(m>=.12&&m<.234&&p>=-.425&&p<-.214?i:m>=.166&&m<.234&&p>=-.214&&p<-.115?u:n).invert(h)},f.stream=function(h){return e&&t===h?e:e=s6([n.stream(t=h),i.stream(h),u.stream(h)])},f.precision=function(h){return arguments.length?(n.precision(h),i.precision(h),u.precision(h),c()):n.precision()},f.scale=function(h){return arguments.length?(n.scale(h),i.scale(h*.35),u.scale(h),f.translate(n.translate())):n.scale()},f.translate=function(h){if(!arguments.length)return n.translate();var d=n.scale(),g=+h[0],p=+h[1];return r=n.translate(h).clipExtent([[g-.455*d,p-.238*d],[g+.455*d,p+.238*d]]).stream(l),a=i.translate([g-.307*d,p+.201*d]).clipExtent([[g-.425*d+K,p+.12*d+K],[g-.214*d-K,p+.234*d-K]]).stream(l),o=u.translate([g-.205*d,p+.212*d]).clipExtent([[g-.214*d+K,p+.166*d+K],[g-.115*d-K,p+.234*d-K]]).stream(l),c()},f.fitExtent=function(h,d){return Vl(f,h,d)},f.fitSize=function(h,d){return J0(f,h,d)},f.fitWidth=function(h,d){return ed(f,h,d)},f.fitHeight=function(h,d){return td(f,h,d)};function c(){return e=t=null,f}return f.scale(1070)}function lx(e){return function(t,n){var r=Q(t),i=Q(n),a=e(r*i);return a===1/0?[2,0]:[a*i*H(t),a*H(n)]}}function no(e){return function(t,n){var r=At(t*t+n*n),i=e(r),a=H(i),u=Q(i);return[tn(t*a,r*u),Bt(r&&n*a/r)]}}var fx=lx(function(e){return At(2/(1+e))});fx.invert=no(function(e){return 2*Bt(e/2)});function f6(){return Pn(fx).scale(124.75).clipAngle(180-.001)}var cx=lx(function(e){return(e=Rv(e))&&e/H(e)});cx.invert=no(function(e){return e});function c6(){return Pn(cx).scale(79.4188).clipAngle(180-.001)}function Xl(e,t){return[e,Ns(K0((ke+t)/2))]}Xl.invert=function(e,t){return[e,2*va(_v(t))-ke]};function h6(){return hx(Xl).scale(961/bt)}function hx(e){var t=Pn(e),n=t.center,r=t.scale,i=t.translate,a=t.clipExtent,u=null,o,s,l;t.scale=function(c){return arguments.length?(r(c),f()):r()},t.translate=function(c){return arguments.length?(i(c),f()):i()},t.center=function(c){return arguments.length?(n(c),f()):n()},t.clipExtent=function(c){return arguments.length?(c==null?u=o=s=l=null:(u=+c[0][0],o=+c[0][1],s=+c[1][0],l=+c[1][1]),f()):u==null?null:[[u,o],[s,l]]};function f(){var c=ie*r(),h=t(B5(t.rotate()).invert([0,0]));return a(u==null?[[h[0]-c,h[1]-c],[h[0]+c,h[1]+c]]:e===Xl?[[Math.max(h[0]-c,u),o],[Math.min(h[0]+c,s),l]]:[[u,Math.max(h[1]-c,o)],[s,Math.min(h[1]+c,l)]])}return f()}function qo(e){return K0((ke+e)/2)}function d6(e,t){var n=Q(e),r=e===t?H(e):Ns(n/Q(t))/Ns(qo(t)/qo(e)),i=n*dc(qo(e),r)/r;if(!r)return Xl;function a(u,o){i>0?o<-ke+K&&(o=-ke+K):o>ke-K&&(o=ke-K);var s=i/dc(qo(o),r);return[s*H(r*u),i-s*Q(r*u)]}return a.invert=function(u,o){var s=i-o,l=Kt(r)*At(u*u+s*s),f=tn(u,ue(s))*Kt(s);return s*r<0&&(f-=ie*Kt(u)*Kt(s)),[f/r,2*va(dc(i/l,1/r))-ke]},a}function g6(){return nd(d6).scale(109.5).parallels([30,30])}function al(e,t){return[e,t]}al.invert=al;function p6(){return Pn(al).scale(152.63)}function m6(e,t){var n=Q(e),r=e===t?H(e):(n-Q(t))/(t-e),i=n/r+e;if(ue(r)<K)return al;function a(u,o){var s=i-o,l=r*u;return[s*H(l),i-s*Q(l)]}return a.invert=function(u,o){var s=i-o,l=tn(u,ue(s))*Kt(s);return s*r<0&&(l-=ie*Kt(u)*Kt(s)),[l/r,i-Kt(r)*At(u*u+s*s)]},a}function y6(){return nd(m6).scale(131.154).center([0,13.9389])}var xu=1.340264,bu=-.081106,Au=893e-6,Eu=.003796,ul=At(3)/2,v6=12;function dx(e,t){var n=Bt(ul*H(t)),r=n*n,i=r*r*r;return[e*Q(n)/(ul*(xu+3*bu*r+i*(7*Au+9*Eu*r))),n*(xu+bu*r+i*(Au+Eu*r))]}dx.invert=function(e,t){for(var n=t,r=n*n,i=r*r*r,a=0,u,o,s;a<v6&&(o=n*(xu+bu*r+i*(Au+Eu*r))-t,s=xu+3*bu*r+i*(7*Au+9*Eu*r),n-=u=o/s,r=n*n,i=r*r*r,!(ue(u)<zs));++a);return[ul*e*(xu+3*bu*r+i*(7*Au+9*Eu*r))/Q(n),Bt(H(n)/ul)]};function x6(){return Pn(dx).scale(177.158)}function gx(e,t){var n=Q(t),r=Q(e)*n;return[n*H(e)/r,H(t)/r]}gx.invert=no(va);function b6(){return Pn(gx).scale(144.049).clipAngle(60)}function A6(){var e=1,t=0,n=0,r=1,i=1,a=0,u,o,s=null,l,f,c,h=1,d=1,g=Gl({point:function(b,E){var w=x([b,E]);this.stream.point(w[0],w[1])}}),p=_u,m,y;function v(){return h=e*r,d=e*i,m=y=null,x}function x(b){var E=b[0]*h,w=b[1]*d;if(a){var A=w*u-E*o;E=E*u+w*o,w=A}return[E+t,w+n]}return x.invert=function(b){var E=b[0]-t,w=b[1]-n;if(a){var A=w*u+E*o;E=E*u-w*o,w=A}return[E/h,w/d]},x.stream=function(b){return m&&y===b?m:m=g(p(y=b))},x.postclip=function(b){return arguments.length?(p=b,s=l=f=c=null,v()):p},x.clipExtent=function(b){return arguments.length?(p=b==null?(s=l=f=c=null,_u):Vv(s=+b[0][0],l=+b[0][1],f=+b[1][0],c=+b[1][1]),v()):s==null?null:[[s,l],[f,c]]},x.scale=function(b){return arguments.length?(e=+b,v()):e},x.translate=function(b){return arguments.length?(t=+b[0],n=+b[1],v()):[t,n]},x.angle=function(b){return arguments.length?(a=b%360*re,o=H(a),u=Q(a),v()):a*Se},x.reflectX=function(b){return arguments.length?(r=b?-1:1,v()):r<0},x.reflectY=function(b){return arguments.length?(i=b?-1:1,v()):i<0},x.fitExtent=function(b,E){return Vl(x,b,E)},x.fitSize=function(b,E){return J0(x,b,E)},x.fitWidth=function(b,E){return ed(x,b,E)},x.fitHeight=function(b,E){return td(x,b,E)},x}function px(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)))]}px.invert=function(e,t){var n=t,r=25,i;do{var a=n*n,u=a*a;n-=i=(n*(1.007226+a*(.015085+u*(-.044475+.028874*a-.005916*u)))-t)/(1.007226+a*(.015085*3+u*(-.044475*7+.028874*9*a-.005916*11*u)))}while(ue(i)>K&&--r>0);return[e/(.8707+(a=n*n)*(-.131979+a*(-.013791+a*a*a*(.003971-.001529*a)))),n]};function E6(){return Pn(px).scale(175.295)}function mx(e,t){return[Q(t)*H(e),H(t)]}mx.invert=no(Bt);function w6(){return Pn(mx).scale(249.5).clipAngle(90+K)}function yx(e,t){var n=Q(t),r=1+Q(e)*n;return[n*H(e)/r,H(t)/r]}yx.invert=no(function(e){return 2*va(e)});function C6(){return Pn(yx).scale(250).clipAngle(142)}function vx(e,t){return[Ns(K0((ke+t)/2)),-e]}vx.invert=function(e,t){return[-t,2*va(_v(e))-ke]};function D6(){var e=hx(vx),t=e.center,n=e.rotate;return e.center=function(r){return arguments.length?t([-r[1],r[0]]):(r=t(),[r[1],-r[0]])},e.rotate=function(r){return arguments.length?n([r[0],r[1],r.length>2?r[2]+90:90]):(r=n(),[r[0],r[1],r[2]-90])},n([0,0,90]).scale(159.155)}function F6(e,t){return e.parent===t.parent?1:2}function k6(e){return e.reduce(M6,0)/e.length}function M6(e,t){return e+t.x}function S6(e){return 1+e.reduce($6,0)}function $6(e,t){return Math.max(e,t.y)}function B6(e){for(var t;t=e.children;)e=t[0];return e}function _6(e){for(var t;t=e.children;)e=t[t.length-1];return e}function R6(){var e=F6,t=1,n=1,r=!1;function i(a){var u,o=0;a.eachAfter(function(h){var d=h.children;d?(h.x=k6(d),h.y=S6(d)):(h.x=u?o+=e(h,u):0,h.y=0,u=h)});var s=B6(a),l=_6(a),f=s.x-e(s,l)/2,c=l.x+e(l,s)/2;return a.eachAfter(r?function(h){h.x=(h.x-a.x)*t,h.y=(a.y-h.y)*n}:function(h){h.x=(h.x-f)/(c-f)*t,h.y=(1-(a.y?h.y/a.y:1))*n})}return i.separation=function(a){return arguments.length?(e=a,i):e},i.size=function(a){return arguments.length?(r=!1,t=+a[0],n=+a[1],i):r?null:[t,n]},i.nodeSize=function(a){return arguments.length?(r=!0,t=+a[0],n=+a[1],i):r?[t,n]:null},i}function T6(e){var t=0,n=e.children,r=n&&n.length;if(!r)t=1;else for(;--r>=0;)t+=n[r].value;e.value=t}function O6(){return this.eachAfter(T6)}function z6(e,t){let n=-1;for(const r of this)e.call(t,r,++n,this);return this}function L6(e,t){for(var n=this,r=[n],i,a,u=-1;n=r.pop();)if(e.call(t,n,++u,this),i=n.children)for(a=i.length-1;a>=0;--a)r.push(i[a]);return this}function N6(e,t){for(var n=this,r=[n],i=[],a,u,o,s=-1;n=r.pop();)if(i.push(n),a=n.children)for(u=0,o=a.length;u<o;++u)r.push(a[u]);for(;n=i.pop();)e.call(t,n,++s,this);return this}function P6(e,t){let n=-1;for(const r of this)if(e.call(t,r,++n,this))return r}function I6(e){return this.eachAfter(function(t){for(var n=+e(t.data)||0,r=t.children,i=r&&r.length;--i>=0;)n+=r[i].value;t.value=n})}function U6(e){return this.eachBefore(function(t){t.children&&t.children.sort(e)})}function q6(e){for(var t=this,n=j6(t,e),r=[t];t!==n;)t=t.parent,r.push(t);for(var i=r.length;e!==n;)r.splice(i,0,e),e=e.parent;return r}function j6(e,t){if(e===t)return e;var n=e.ancestors(),r=t.ancestors(),i=null;for(e=n.pop(),t=r.pop();e===t;)i=e,e=n.pop(),t=r.pop();return i}function W6(){for(var e=this,t=[e];e=e.parent;)t.push(e);return t}function Y6(){return Array.from(this)}function H6(){var e=[];return this.eachBefore(function(t){t.children||e.push(t)}),e}function G6(){var e=this,t=[];return e.each(function(n){n!==e&&t.push({source:n.parent,target:n})}),t}function*V6(){var e=this,t,n=[e],r,i,a;do for(t=n.reverse(),n=[];e=t.pop();)if(yield e,r=e.children)for(i=0,a=r.length;i<a;++i)n.push(r[i]);while(n.length)}function rd(e,t){e instanceof Map?(e=[void 0,e],t===void 0&&(t=Z6)):t===void 0&&(t=K6);for(var n=new ta(e),r,i=[n],a,u,o,s;r=i.pop();)if((u=t(r.data))&&(s=(u=Array.from(u)).length))for(r.children=u,o=s-1;o>=0;--o)i.push(a=u[o]=new ta(u[o])),a.parent=r,a.depth=r.depth+1;return n.eachBefore(xx)}function X6(){return rd(this).eachBefore(Q6)}function K6(e){return e.children}function Z6(e){return Array.isArray(e)?e[1]:null}function Q6(e){e.data.value!==void 0&&(e.value=e.data.value),e.data=e.data.data}function xx(e){var t=0;do e.height=t;while((e=e.parent)&&e.height<++t)}function ta(e){this.data=e,this.depth=this.height=0,this.parent=null}ta.prototype=rd.prototype={constructor:ta,count:O6,each:z6,eachAfter:N6,eachBefore:L6,find:P6,sum:I6,sort:U6,path:q6,ancestors:W6,descendants:Y6,leaves:H6,links:G6,copy:X6,[Symbol.iterator]:V6};function os(e){return e==null?null:bx(e)}function bx(e){if(typeof e!="function")throw new Error;return e}function Jr(){return 0}function Ui(e){return function(){return e}}const J6=1664525,ek=1013904223,xm=4294967296;function tk(){let e=1;return()=>(e=(J6*e+ek)%xm)/xm}function nk(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function rk(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 ik(e,t){for(var n=0,r=(e=rk(Array.from(e),t)).length,i=[],a,u;n<r;)a=e[n],u&&Ax(u,a)?++n:(u=uk(i=ak(i,a)),n=0);return u}function ak(e,t){var n,r;if(vc(t,e))return[t];for(n=0;n<e.length;++n)if(jo(t,e[n])&&vc(nu(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(jo(nu(e[n],e[r]),t)&&jo(nu(e[n],t),e[r])&&jo(nu(e[r],t),e[n])&&vc(Ex(e[n],e[r],t),e))return[e[n],e[r],t];throw new Error}function jo(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 Ax(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 vc(e,t){for(var n=0;n<t.length;++n)if(!Ax(e,t[n]))return!1;return!0}function uk(e){switch(e.length){case 1:return ok(e[0]);case 2:return nu(e[0],e[1]);case 3:return Ex(e[0],e[1],e[2])}}function ok(e){return{x:e.x,y:e.y,r:e.r}}function nu(e,t){var n=e.x,r=e.y,i=e.r,a=t.x,u=t.y,o=t.r,s=a-n,l=u-r,f=o-i,c=Math.sqrt(s*s+l*l);return{x:(n+a+s/c*f)/2,y:(r+u+l/c*f)/2,r:(c+i+o)/2}}function Ex(e,t,n){var r=e.x,i=e.y,a=e.r,u=t.x,o=t.y,s=t.r,l=n.x,f=n.y,c=n.r,h=r-u,d=r-l,g=i-o,p=i-f,m=s-a,y=c-a,v=r*r+i*i-a*a,x=v-u*u-o*o+s*s,b=v-l*l-f*f+c*c,E=d*g-h*p,w=(g*b-p*x)/(E*2)-r,A=(p*m-g*y)/E,C=(d*x-h*b)/(E*2)-i,F=(h*y-d*m)/E,D=A*A+F*F-1,k=2*(a+w*A+C*F),R=w*w+C*C-a*a,T=-(Math.abs(D)>1e-6?(k+Math.sqrt(k*k-4*D*R))/(2*D):R/k);return{x:r+w+A*T,y:i+C+F*T,r:T}}function bm(e,t,n){var r=e.x-t.x,i,a,u=e.y-t.y,o,s,l=r*r+u*u;l?(a=t.r+n.r,a*=a,s=e.r+n.r,s*=s,a>s?(i=(l+s-a)/(2*l),o=Math.sqrt(Math.max(0,s/l-i*i)),n.x=e.x-i*r-o*u,n.y=e.y-i*u+o*r):(i=(l+a-s)/(2*l),o=Math.sqrt(Math.max(0,a/l-i*i)),n.x=t.x+i*r-o*u,n.y=t.y+i*u+o*r)):(n.x=t.x+n.r,n.y=t.y)}function Am(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 Em(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 Wo(e){this._=e,this.next=null,this.previous=null}function sk(e,t){if(!(a=(e=nk(e)).length))return 0;var n,r,i,a,u,o,s,l,f,c,h;if(n=e[0],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;bm(r,n,i=e[2]),n=new Wo(n),r=new Wo(r),i=new Wo(i),n.next=i.previous=r,r.next=n.previous=i,i.next=r.previous=n;e:for(s=3;s<a;++s){bm(n._,r._,i=e[s]),i=new Wo(i),l=r.next,f=n.previous,c=r._.r,h=n._.r;do if(c<=h){if(Am(l._,i._)){r=l,n.next=r,r.previous=n,--s;continue e}c+=l._.r,l=l.next}else{if(Am(f._,i._)){n=f,n.next=r,r.previous=n,--s;continue e}h+=f._.r,f=f.previous}while(l!==f.next);for(i.previous=n,i.next=r,n.next=r.previous=r=i,u=Em(n);(i=i.next)!==r;)(o=Em(i))<u&&(n=i,u=o);r=n.next}for(n=[r._],i=r;(i=i.next)!==r;)n.push(i._);for(i=ik(n,t),s=0;s<a;++s)n=e[s],n.x-=i.x,n.y-=i.y;return i.r}function lk(e){return Math.sqrt(e.value)}function fk(){var e=null,t=1,n=1,r=Jr;function i(a){const u=tk();return a.x=t/2,a.y=n/2,e?a.eachBefore(wm(e)).eachAfter(xc(r,.5,u)).eachBefore(Cm(1)):a.eachBefore(wm(lk)).eachAfter(xc(Jr,1,u)).eachAfter(xc(r,a.r/Math.min(t,n),u)).eachBefore(Cm(Math.min(t,n)/(2*a.r))),a}return i.radius=function(a){return arguments.length?(e=os(a),i):e},i.size=function(a){return arguments.length?(t=+a[0],n=+a[1],i):[t,n]},i.padding=function(a){return arguments.length?(r=typeof a=="function"?a:Ui(+a),i):r},i}function wm(e){return function(t){t.children||(t.r=Math.max(0,+e(t)||0))}}function xc(e,t,n){return function(r){if(i=r.children){var i,a,u=i.length,o=e(r)*t||0,s;if(o)for(a=0;a<u;++a)i[a].r+=o;if(s=sk(i,n),o)for(a=0;a<u;++a)i[a].r-=o;r.r=s+o}}}function Cm(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 wx(e){e.x0=Math.round(e.x0),e.y0=Math.round(e.y0),e.x1=Math.round(e.x1),e.y1=Math.round(e.y1)}function ro(e,t,n,r,i){for(var a=e.children,u,o=-1,s=a.length,l=e.value&&(r-t)/e.value;++o<s;)u=a[o],u.y0=n,u.y1=i,u.x0=t,u.x1=t+=u.value*l}function ck(){var e=1,t=1,n=0,r=!1;function i(u){var o=u.height+1;return u.x0=u.y0=n,u.x1=e,u.y1=t/o,u.eachBefore(a(t,o)),r&&u.eachBefore(wx),u}function a(u,o){return function(s){s.children&&ro(s,s.x0,u*(s.depth+1)/o,s.x1,u*(s.depth+2)/o);var l=s.x0,f=s.y0,c=s.x1-n,h=s.y1-n;c<l&&(l=c=(l+c)/2),h<f&&(f=h=(f+h)/2),s.x0=l,s.y0=f,s.x1=c,s.y1=h}}return i.round=function(u){return arguments.length?(r=!!u,i):r},i.size=function(u){return arguments.length?(e=+u[0],t=+u[1],i):[e,t]},i.padding=function(u){return arguments.length?(n=+u,i):n},i}var hk={depth:-1},Dm={},bc={};function dk(e){return e.id}function gk(e){return e.parentId}function Fm(){var e=dk,t=gk,n;function r(i){var a=Array.from(i),u=e,o=t,s,l,f,c,h,d,g,p,m=new Map;if(n!=null){const y=a.map((b,E)=>pk(n(b,E,i))),v=y.map(km),x=new Set(y).add("");for(const b of v)x.has(b)||(x.add(b),y.push(b),v.push(km(b)),a.push(bc));u=(b,E)=>y[E],o=(b,E)=>v[E]}for(f=0,s=a.length;f<s;++f)l=a[f],d=a[f]=new ta(l),(g=u(l,f,i))!=null&&(g+="")&&(p=d.id=g,m.set(p,m.has(p)?Dm:d)),(g=o(l,f,i))!=null&&(g+="")&&(d.parent=g);for(f=0;f<s;++f)if(d=a[f],g=d.parent){if(h=m.get(g),!h)throw new Error("missing: "+g);if(h===Dm)throw new Error("ambiguous: "+g);h.children?h.children.push(d):h.children=[d],d.parent=h}else{if(c)throw new Error("multiple roots");c=d}if(!c)throw new Error("no root");if(n!=null){for(;c.data===bc&&c.children.length===1;)c=c.children[0],--s;for(let y=a.length-1;y>=0&&(d=a[y],d.data===bc);--y)d.data=null}if(c.parent=hk,c.eachBefore(function(y){y.depth=y.parent.depth+1,--s}).eachBefore(xx),c.parent=null,s>0)throw new Error("cycle");return c}return r.id=function(i){return arguments.length?(e=os(i),r):e},r.parentId=function(i){return arguments.length?(t=os(i),r):t},r.path=function(i){return arguments.length?(n=os(i),r):n},r}function pk(e){e=`${e}`;let t=e.length;return zh(e,t-1)&&!zh(e,t-2)&&(e=e.slice(0,-1)),e[0]==="/"?e:`/${e}`}function km(e){let t=e.length;if(t<2)return"";for(;--t>1&&!zh(e,t););return e.slice(0,t)}function zh(e,t){if(e[t]==="/"){let n=0;for(;t>0&&e[--t]==="\\";)++n;if(!(n&1))return!0}return!1}function mk(e,t){return e.parent===t.parent?1:2}function Ac(e){var t=e.children;return t?t[0]:e.t}function Ec(e){var t=e.children;return t?t[t.length-1]:e.t}function yk(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 vk(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 xk(e,t,n){return e.a.parent===t.parent?e.a:n}function ss(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}ss.prototype=Object.create(ta.prototype);function bk(e){for(var t=new ss(e,0),n,r=[t],i,a,u,o;n=r.pop();)if(a=n._.children)for(n.children=new Array(o=a.length),u=o-1;u>=0;--u)r.push(i=n.children[u]=new ss(a[u],u)),i.parent=n;return(t.parent=new ss(null,0)).children=[t],t}function Ak(){var e=mk,t=1,n=1,r=null;function i(l){var f=bk(l);if(f.eachAfter(a),f.parent.m=-f.z,f.eachBefore(u),r)l.eachBefore(s);else{var c=l,h=l,d=l;l.eachBefore(function(v){v.x<c.x&&(c=v),v.x>h.x&&(h=v),v.depth>d.depth&&(d=v)});var g=c===h?1:e(c,h)/2,p=g-c.x,m=t/(h.x+g+p),y=n/(d.depth||1);l.eachBefore(function(v){v.x=(v.x+p)*m,v.y=v.depth*y})}return l}function a(l){var f=l.children,c=l.parent.children,h=l.i?c[l.i-1]:null;if(f){vk(l);var d=(f[0].z+f[f.length-1].z)/2;h?(l.z=h.z+e(l._,h._),l.m=l.z-d):l.z=d}else h&&(l.z=h.z+e(l._,h._));l.parent.A=o(l,h,l.parent.A||c[0])}function u(l){l._.x=l.z+l.parent.m,l.m+=l.parent.m}function o(l,f,c){if(f){for(var h=l,d=l,g=f,p=h.parent.children[0],m=h.m,y=d.m,v=g.m,x=p.m,b;g=Ec(g),h=Ac(h),g&&h;)p=Ac(p),d=Ec(d),d.a=l,b=g.z+v-h.z-m+e(g._,h._),b>0&&(yk(xk(g,l,c),l,b),m+=b,y+=b),v+=g.m,m+=h.m,x+=p.m,y+=d.m;g&&!Ec(d)&&(d.t=g,d.m+=v-y),h&&!Ac(p)&&(p.t=h,p.m+=m-x,c=l)}return c}function s(l){l.x*=t,l.y=l.depth*n}return i.separation=function(l){return arguments.length?(e=l,i):e},i.size=function(l){return arguments.length?(r=!1,t=+l[0],n=+l[1],i):r?null:[t,n]},i.nodeSize=function(l){return arguments.length?(r=!0,t=+l[0],n=+l[1],i):r?[t,n]:null},i}function Kl(e,t,n,r,i){for(var a=e.children,u,o=-1,s=a.length,l=e.value&&(i-n)/e.value;++o<s;)u=a[o],u.x0=t,u.x1=r,u.y0=n,u.y1=n+=u.value*l}var Cx=(1+Math.sqrt(5))/2;function Dx(e,t,n,r,i,a){for(var u=[],o=t.children,s,l,f=0,c=0,h=o.length,d,g,p=t.value,m,y,v,x,b,E,w;f<h;){d=i-n,g=a-r;do m=o[c++].value;while(!m&&c<h);for(y=v=m,E=Math.max(g/d,d/g)/(p*e),w=m*m*E,b=Math.max(v/w,w/y);c<h;++c){if(m+=l=o[c].value,l<y&&(y=l),l>v&&(v=l),w=m*m*E,x=Math.max(v/w,w/y),x>b){m-=l;break}b=x}u.push(s={value:m,dice:d<g,children:o.slice(f,c)}),s.dice?ro(s,n,r,i,p?r+=g*m/p:a):Kl(s,n,r,p?n+=d*m/p:i,a),p-=m,f=c}return u}const Fx=function e(t){function n(r,i,a,u,o){Dx(t,r,i,a,u,o)}return n.ratio=function(r){return e((r=+r)>1?r:1)},n}(Cx);function Ek(){var e=Fx,t=!1,n=1,r=1,i=[0],a=Jr,u=Jr,o=Jr,s=Jr,l=Jr;function f(h){return h.x0=h.y0=0,h.x1=n,h.y1=r,h.eachBefore(c),i=[0],t&&h.eachBefore(wx),h}function c(h){var d=i[h.depth],g=h.x0+d,p=h.y0+d,m=h.x1-d,y=h.y1-d;m<g&&(g=m=(g+m)/2),y<p&&(p=y=(p+y)/2),h.x0=g,h.y0=p,h.x1=m,h.y1=y,h.children&&(d=i[h.depth+1]=a(h)/2,g+=l(h)-d,p+=u(h)-d,m-=o(h)-d,y-=s(h)-d,m<g&&(g=m=(g+m)/2),y<p&&(p=y=(p+y)/2),e(h,g,p,m,y))}return f.round=function(h){return arguments.length?(t=!!h,f):t},f.size=function(h){return arguments.length?(n=+h[0],r=+h[1],f):[n,r]},f.tile=function(h){return arguments.length?(e=bx(h),f):e},f.padding=function(h){return arguments.length?f.paddingInner(h).paddingOuter(h):f.paddingInner()},f.paddingInner=function(h){return arguments.length?(a=typeof h=="function"?h:Ui(+h),f):a},f.paddingOuter=function(h){return arguments.length?f.paddingTop(h).paddingRight(h).paddingBottom(h).paddingLeft(h):f.paddingTop()},f.paddingTop=function(h){return arguments.length?(u=typeof h=="function"?h:Ui(+h),f):u},f.paddingRight=function(h){return arguments.length?(o=typeof h=="function"?h:Ui(+h),f):o},f.paddingBottom=function(h){return arguments.length?(s=typeof h=="function"?h:Ui(+h),f):s},f.paddingLeft=function(h){return arguments.length?(l=typeof h=="function"?h:Ui(+h),f):l},f}function wk(e,t,n,r,i){var a=e.children,u,o=a.length,s,l=new Array(o+1);for(l[0]=s=u=0;u<o;++u)l[u+1]=s+=a[u].value;f(0,o,e.value,t,n,r,i);function f(c,h,d,g,p,m,y){if(c>=h-1){var v=a[c];v.x0=g,v.y0=p,v.x1=m,v.y1=y;return}for(var x=l[c],b=d/2+x,E=c+1,w=h-1;E<w;){var A=E+w>>>1;l[A]<b?E=A+1:w=A}b-l[E-1]<l[E]-b&&c+1<E&&--E;var C=l[E]-x,F=d-C;if(m-g>y-p){var D=d?(g*F+m*C)/d:m;f(c,E,C,g,p,D,y),f(E,h,F,D,p,m,y)}else{var k=d?(p*F+y*C)/d:y;f(c,E,C,g,p,m,k),f(E,h,F,g,k,m,y)}}}function Ck(e,t,n,r,i){(e.depth&1?Kl:ro)(e,t,n,r,i)}const Dk=function e(t){function n(r,i,a,u,o){if((s=r._squarify)&&s.ratio===t)for(var s,l,f,c,h=-1,d,g=s.length,p=r.value;++h<g;){for(l=s[h],f=l.children,c=l.value=0,d=f.length;c<d;++c)l.value+=f[c].value;l.dice?ro(l,i,a,u,p?a+=(o-a)*l.value/p:o):Kl(l,i,a,p?i+=(u-i)*l.value/p:u,o),p-=l.value}else r._squarify=s=Dx(t,r,i,a,u,o),s.ratio=t}return n.ratio=function(r){return e((r=+r)>1?r:1)},n}(Cx);function kx(e){var t;function n(r){return r==null||isNaN(r=+r)?t:r}return n.invert=n,n.domain=n.range=function(r){return arguments.length?(e=Array.from(r,kp),n):e.slice()},n.unknown=function(r){return arguments.length?(t=r,n):t},n.copy=function(){return kx(e).unknown(t)},e=arguments.length?Array.from(e,kp):[0,1],ya(n)}function Mx(e,t){e=e.slice();var n=0,r=e.length-1,i=e[n],a=e[r],u;return a<i&&(u=n,n=r,r=u,u=i,i=a,a=u),e[n]=t.floor(i),e[r]=t.ceil(a),e}function Mm(e){return Math.log(e)}function Sm(e){return Math.exp(e)}function Fk(e){return-Math.log(-e)}function kk(e){return-Math.exp(-e)}function Mk(e){return isFinite(e)?+("1e"+e):e<0?0:e}function Sk(e){return e===10?Mk:e===Math.E?Math.exp:t=>Math.pow(e,t)}function $k(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 $m(e){return(t,n)=>-e(-t,n)}function id(e){const t=e(Mm,Sm),n=t.domain;let r=10,i,a;function u(){return i=$k(r),a=Sk(r),n()[0]<0?(i=$m(i),a=$m(a),e(Fk,kk)):e(Mm,Sm),t}return t.base=function(o){return arguments.length?(r=+o,u()):r},t.domain=function(o){return arguments.length?(n(o),u()):n()},t.ticks=o=>{const s=n();let l=s[0],f=s[s.length-1];const c=f<l;c&&([l,f]=[f,l]);let h=i(l),d=i(f),g,p;const m=o==null?10:+o;let y=[];if(!(r%1)&&d-h<m){if(h=Math.floor(h),d=Math.ceil(d),l>0){for(;h<=d;++h)for(g=1;g<r;++g)if(p=h<0?g/a(-h):g*a(h),!(p<l)){if(p>f)break;y.push(p)}}else for(;h<=d;++h)for(g=r-1;g>=1;--g)if(p=h>0?g/a(-h):g*a(h),!(p<l)){if(p>f)break;y.push(p)}y.length*2<m&&(y=Mp(l,f,m))}else y=Mp(h,d,Math.min(d-h,m)).map(a);return c?y.reverse():y},t.tickFormat=(o,s)=>{if(o==null&&(o=10),s==null&&(s=r===10?"s":","),typeof s!="function"&&(!(r%1)&&(s=lh(s)).precision==null&&(s.trim=!0),s=iv(s)),o===1/0)return s;const l=Math.max(1,r*o/t.ticks().length);return f=>{let c=f/a(Math.round(i(f)));return c*r<r-.5&&(c*=r),c<=l?s(f):""}},t.nice=()=>n(Mx(n(),{floor:o=>a(Math.floor(i(o))),ceil:o=>a(Math.ceil(i(o)))})),t}function Sx(){const e=id(q0()).domain([1,10]);return e.copy=()=>jl(e,Sx()).base(e.base()),jr.apply(e,arguments),e}function Bm(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function _m(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function ad(e){var t=1,n=e(Bm(t),_m(t));return n.constant=function(r){return arguments.length?e(Bm(t=+r),_m(t)):t},ya(n)}function $x(){var e=ad(q0());return e.copy=function(){return jl(e,$x()).constant(e.constant())},jr.apply(e,arguments)}function Rm(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function Bk(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function _k(e){return e<0?-e*e:e*e}function ud(e){var t=e(Er,Er),n=1;function r(){return n===1?e(Er,Er):n===.5?e(Bk,_k):e(Rm(n),Rm(1/n))}return t.exponent=function(i){return arguments.length?(n=+i,r()):n},ya(t)}function od(){var e=ud(q0());return e.copy=function(){return jl(e,od()).exponent(e.exponent())},jr.apply(e,arguments),e}function Rk(){return od.apply(null,arguments).exponent(.5)}function Bx(){var e=[],t=[],n=[],r;function i(){var u=0,o=Math.max(1,t.length);for(n=new Array(o-1);++u<o;)n[u-1]=fv(e,u/o);return a}function a(u){return u==null||isNaN(u=+u)?r:t[Wl(n,u)]}return a.invertExtent=function(u){var o=t.indexOf(u);return o<0?[NaN,NaN]:[o>0?n[o-1]:e[0],o<n.length?n[o]:e[e.length-1]]},a.domain=function(u){if(!arguments.length)return e.slice();e=[];for(let o of u)o!=null&&!isNaN(o=+o)&&e.push(o);return e.sort($u),i()},a.range=function(u){return arguments.length?(t=Array.from(u),i()):t.slice()},a.unknown=function(u){return arguments.length?(r=u,a):r},a.quantiles=function(){return n.slice()},a.copy=function(){return Bx().domain(e).range(t).unknown(r)},jr.apply(a,arguments)}function _x(){var e=0,t=1,n=1,r=[.5],i=[0,1],a;function u(s){return s!=null&&s<=s?i[Wl(r,s,0,n)]:a}function o(){var s=-1;for(r=new Array(n);++s<n;)r[s]=((s+1)*t-(s-n)*e)/(n+1);return u}return u.domain=function(s){return arguments.length?([e,t]=s,e=+e,t=+t,o()):[e,t]},u.range=function(s){return arguments.length?(n=(i=Array.from(s)).length-1,o()):i.slice()},u.invertExtent=function(s){var l=i.indexOf(s);return l<0?[NaN,NaN]:l<1?[e,r[0]]:l>=n?[r[n-1],t]:[r[l-1],r[l]]},u.unknown=function(s){return arguments.length&&(a=s),u},u.thresholds=function(){return r.slice()},u.copy=function(){return _x().domain([e,t]).range(i).unknown(a)},jr.apply(ya(u),arguments)}function Rx(){var e=[.5],t=[0,1],n,r=1;function i(a){return a!=null&&a<=a?t[Wl(e,a,0,r)]:n}return i.domain=function(a){return arguments.length?(e=Array.from(a),r=Math.min(e.length,t.length-1),i):e.slice()},i.range=function(a){return arguments.length?(t=Array.from(a),r=Math.min(e.length,t.length-1),i):t.slice()},i.invertExtent=function(a){var u=t.indexOf(a);return[e[u-1],e[u]]},i.unknown=function(a){return arguments.length?(n=a,i):n},i.copy=function(){return Rx().domain(e).range(t).unknown(n)},jr.apply(i,arguments)}const wc=new Date,Cc=new Date;function ze(e,t,n,r){function i(a){return e(a=arguments.length===0?new Date:new Date(+a)),a}return i.floor=a=>(e(a=new Date(+a)),a),i.ceil=a=>(e(a=new Date(a-1)),t(a,1),e(a),a),i.round=a=>{const u=i(a),o=i.ceil(a);return a-u<o-a?u:o},i.offset=(a,u)=>(t(a=new Date(+a),u==null?1:Math.floor(u)),a),i.range=(a,u,o)=>{const s=[];if(a=i.ceil(a),o=o==null?1:Math.floor(o),!(a<u)||!(o>0))return s;let l;do s.push(l=new Date(+a)),t(a,o),e(a);while(l<a&&a<u);return s},i.filter=a=>ze(u=>{if(u>=u)for(;e(u),!a(u);)u.setTime(u-1)},(u,o)=>{if(u>=u)if(o<0)for(;++o<=0;)for(;t(u,-1),!a(u););else for(;--o>=0;)for(;t(u,1),!a(u););}),n&&(i.count=(a,u)=>(wc.setTime(+a),Cc.setTime(+u),e(wc),e(Cc),Math.floor(n(wc,Cc))),i.every=a=>(a=Math.floor(a),!isFinite(a)||!(a>0)?null:a>1?i.filter(r?u=>r(u)%a===0:u=>i.count(0,u)%a===0):i)),i}const na=ze(()=>{},(e,t)=>{e.setTime(+e+t)},(e,t)=>t-e);na.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?ze(t=>{t.setTime(Math.floor(t/e)*e)},(t,n)=>{t.setTime(+t+n*e)},(t,n)=>(n-t)/e):na);na.range;const tr=1e3,Zt=tr*60,nr=Zt*60,sr=nr*24,sd=sr*7,Tm=sr*30,Dc=sr*365,rr=ze(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*tr)},(e,t)=>(t-e)/tr,e=>e.getUTCSeconds());rr.range;const Zl=ze(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*tr)},(e,t)=>{e.setTime(+e+t*Zt)},(e,t)=>(t-e)/Zt,e=>e.getMinutes());Zl.range;const Ql=ze(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*Zt)},(e,t)=>(t-e)/Zt,e=>e.getUTCMinutes());Ql.range;const Jl=ze(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*tr-e.getMinutes()*Zt)},(e,t)=>{e.setTime(+e+t*nr)},(e,t)=>(t-e)/nr,e=>e.getHours());Jl.range;const ef=ze(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*nr)},(e,t)=>(t-e)/nr,e=>e.getUTCHours());ef.range;const ur=ze(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*Zt)/sr,e=>e.getDate()-1);ur.range;const Br=ze(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/sr,e=>e.getUTCDate()-1);Br.range;const Tx=ze(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/sr,e=>Math.floor(e/sr));Tx.range;function Ei(e){return ze(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(t,n)=>{t.setDate(t.getDate()+n*7)},(t,n)=>(n-t-(n.getTimezoneOffset()-t.getTimezoneOffset())*Zt)/sd)}const xa=Ei(0),ol=Ei(1),Tk=Ei(2),Ok=Ei(3),ra=Ei(4),zk=Ei(5),Lk=Ei(6);xa.range;ol.range;Tk.range;Ok.range;ra.range;zk.range;Lk.range;function wi(e){return ze(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCDate(t.getUTCDate()+n*7)},(t,n)=>(n-t)/sd)}const ba=wi(0),sl=wi(1),Nk=wi(2),Pk=wi(3),ia=wi(4),Ik=wi(5),Uk=wi(6);ba.range;sl.range;Nk.range;Pk.range;ia.range;Ik.range;Uk.range;const Tu=ze(e=>{e.setDate(1),e.setHours(0,0,0,0)},(e,t)=>{e.setMonth(e.getMonth()+t)},(e,t)=>t.getMonth()-e.getMonth()+(t.getFullYear()-e.getFullYear())*12,e=>e.getMonth());Tu.range;const Ou=ze(e=>{e.setUTCDate(1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCMonth(e.getUTCMonth()+t)},(e,t)=>t.getUTCMonth()-e.getUTCMonth()+(t.getUTCFullYear()-e.getUTCFullYear())*12,e=>e.getUTCMonth());Ou.range;const Tn=ze(e=>{e.setMonth(0,1),e.setHours(0,0,0,0)},(e,t)=>{e.setFullYear(e.getFullYear()+t)},(e,t)=>t.getFullYear()-e.getFullYear(),e=>e.getFullYear());Tn.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:ze(t=>{t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)},(t,n)=>{t.setFullYear(t.getFullYear()+n*e)});Tn.range;const On=ze(e=>{e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t)},(e,t)=>t.getUTCFullYear()-e.getUTCFullYear(),e=>e.getUTCFullYear());On.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:ze(t=>{t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCFullYear(t.getUTCFullYear()+n*e)});On.range;function Ox(e,t,n,r,i,a){const u=[[rr,1,tr],[rr,5,5*tr],[rr,15,15*tr],[rr,30,30*tr],[a,1,Zt],[a,5,5*Zt],[a,15,15*Zt],[a,30,30*Zt],[i,1,nr],[i,3,3*nr],[i,6,6*nr],[i,12,12*nr],[r,1,sr],[r,2,2*sr],[n,1,sd],[t,1,Tm],[t,3,3*Tm],[e,1,Dc]];function o(l,f,c){const h=f<l;h&&([l,f]=[f,l]);const d=c&&typeof c.range=="function"?c:s(l,f,c),g=d?d.range(l,+f+1):[];return h?g.reverse():g}function s(l,f,c){const h=Math.abs(f-l)/c,d=Yl(([,,m])=>m).right(u,h);if(d===u.length)return e.every(fi(l/Dc,f/Dc,c));if(d===0)return na.every(Math.max(fi(l,f,c),1));const[g,p]=u[h/u[d-1][2]<u[d][2]/h?d-1:d];return g.every(p)}return[o,s]}const[qk,jk]=Ox(On,Ou,ba,Tx,ef,Ql),[Wk,Yk]=Ox(Tn,Tu,xa,ur,Jl,Zl);function Fc(e){if(0<=e.y&&e.y<100){var t=new Date(-1,e.m,e.d,e.H,e.M,e.S,e.L);return t.setFullYear(e.y),t}return new Date(e.y,e.m,e.d,e.H,e.M,e.S,e.L)}function kc(e){if(0<=e.y&&e.y<100){var t=new Date(Date.UTC(-1,e.m,e.d,e.H,e.M,e.S,e.L));return t.setUTCFullYear(e.y),t}return new Date(Date.UTC(e.y,e.m,e.d,e.H,e.M,e.S,e.L))}function Ta(e,t,n){return{y:e,m:t,d:n,H:0,M:0,S:0,L:0}}function zx(e){var t=e.dateTime,n=e.date,r=e.time,i=e.periods,a=e.days,u=e.shortDays,o=e.months,s=e.shortMonths,l=Oa(i),f=za(i),c=Oa(a),h=za(a),d=Oa(u),g=za(u),p=Oa(o),m=za(o),y=Oa(s),v=za(s),x={a:P,A:X,b:J,B:pe,c:null,d:Im,e:Im,f:g8,g:C8,G:F8,H:c8,I:h8,j:d8,L:Lx,m:p8,M:m8,p:st,q:sn,Q:jm,s:Wm,S:y8,u:v8,U:x8,V:b8,w:A8,W:E8,x:null,X:null,y:w8,Y:D8,Z:k8,"%":qm},b={a:ln,A:Bi,b:hr,B:PC,c:null,d:Um,e:Um,f:B8,g:U8,G:j8,H:M8,I:S8,j:$8,L:Px,m:_8,M:R8,p:IC,q:UC,Q:jm,s:Wm,S:T8,u:O8,U:z8,V:L8,w:N8,W:P8,x:null,X:null,y:I8,Y:q8,Z:W8,"%":qm},E={a:D,A:k,b:R,B:T,c:N,d:Nm,e:Nm,f:o8,g:Lm,G:zm,H:Pm,I:Pm,j:r8,L:u8,m:n8,M:i8,p:F,q:t8,Q:l8,s:f8,S:a8,u:Kk,U:Zk,V:Qk,w:Xk,W:Jk,x:M,X:O,y:Lm,Y:zm,Z:e8,"%":s8};x.x=w(n,x),x.X=w(r,x),x.c=w(t,x),b.x=w(n,b),b.X=w(r,b),b.c=w(t,b);function w(I,ae){return function(le){var z=[],Ct=-1,Ae=0,zt=I.length,Lt,Vr,Cp;for(le instanceof Date||(le=new Date(+le));++Ct<zt;)I.charCodeAt(Ct)===37&&(z.push(I.slice(Ae,Ct)),(Vr=Om[Lt=I.charAt(++Ct)])!=null?Lt=I.charAt(++Ct):Vr=Lt==="e"?" ":"0",(Cp=ae[Lt])&&(Lt=Cp(le,Vr)),z.push(Lt),Ae=Ct+1);return z.push(I.slice(Ae,Ct)),z.join("")}}function A(I,ae){return function(le){var z=Ta(1900,void 0,1),Ct=C(z,I,le+="",0),Ae,zt;if(Ct!=le.length)return null;if("Q"in z)return new Date(z.Q);if("s"in z)return new Date(z.s*1e3+("L"in z?z.L:0));if(ae&&!("Z"in z)&&(z.Z=0),"p"in z&&(z.H=z.H%12+z.p*12),z.m===void 0&&(z.m="q"in z?z.q:0),"V"in z){if(z.V<1||z.V>53)return null;"w"in z||(z.w=1),"Z"in z?(Ae=kc(Ta(z.y,0,1)),zt=Ae.getUTCDay(),Ae=zt>4||zt===0?sl.ceil(Ae):sl(Ae),Ae=Br.offset(Ae,(z.V-1)*7),z.y=Ae.getUTCFullYear(),z.m=Ae.getUTCMonth(),z.d=Ae.getUTCDate()+(z.w+6)%7):(Ae=Fc(Ta(z.y,0,1)),zt=Ae.getDay(),Ae=zt>4||zt===0?ol.ceil(Ae):ol(Ae),Ae=ur.offset(Ae,(z.V-1)*7),z.y=Ae.getFullYear(),z.m=Ae.getMonth(),z.d=Ae.getDate()+(z.w+6)%7)}else("W"in z||"U"in z)&&("w"in z||(z.w="u"in z?z.u%7:"W"in z?1:0),zt="Z"in z?kc(Ta(z.y,0,1)).getUTCDay():Fc(Ta(z.y,0,1)).getDay(),z.m=0,z.d="W"in z?(z.w+6)%7+z.W*7-(zt+5)%7:z.w+z.U*7-(zt+6)%7);return"Z"in z?(z.H+=z.Z/100|0,z.M+=z.Z%100,kc(z)):Fc(z)}}function C(I,ae,le,z){for(var Ct=0,Ae=ae.length,zt=le.length,Lt,Vr;Ct<Ae;){if(z>=zt)return-1;if(Lt=ae.charCodeAt(Ct++),Lt===37){if(Lt=ae.charAt(Ct++),Vr=E[Lt in Om?ae.charAt(Ct++):Lt],!Vr||(z=Vr(I,le,z))<0)return-1}else if(Lt!=le.charCodeAt(z++))return-1}return z}function F(I,ae,le){var z=l.exec(ae.slice(le));return z?(I.p=f.get(z[0].toLowerCase()),le+z[0].length):-1}function D(I,ae,le){var z=d.exec(ae.slice(le));return z?(I.w=g.get(z[0].toLowerCase()),le+z[0].length):-1}function k(I,ae,le){var z=c.exec(ae.slice(le));return z?(I.w=h.get(z[0].toLowerCase()),le+z[0].length):-1}function R(I,ae,le){var z=y.exec(ae.slice(le));return z?(I.m=v.get(z[0].toLowerCase()),le+z[0].length):-1}function T(I,ae,le){var z=p.exec(ae.slice(le));return z?(I.m=m.get(z[0].toLowerCase()),le+z[0].length):-1}function N(I,ae,le){return C(I,t,ae,le)}function M(I,ae,le){return C(I,n,ae,le)}function O(I,ae,le){return C(I,r,ae,le)}function P(I){return u[I.getDay()]}function X(I){return a[I.getDay()]}function J(I){return s[I.getMonth()]}function pe(I){return o[I.getMonth()]}function st(I){return i[+(I.getHours()>=12)]}function sn(I){return 1+~~(I.getMonth()/3)}function ln(I){return u[I.getUTCDay()]}function Bi(I){return a[I.getUTCDay()]}function hr(I){return s[I.getUTCMonth()]}function PC(I){return o[I.getUTCMonth()]}function IC(I){return i[+(I.getUTCHours()>=12)]}function UC(I){return 1+~~(I.getUTCMonth()/3)}return{format:function(I){var ae=w(I+="",x);return ae.toString=function(){return I},ae},parse:function(I){var ae=A(I+="",!1);return ae.toString=function(){return I},ae},utcFormat:function(I){var ae=w(I+="",b);return ae.toString=function(){return I},ae},utcParse:function(I){var ae=A(I+="",!0);return ae.toString=function(){return I},ae}}}var Om={"-":"",_:" ",0:"0"},qe=/^\s*\d+/,Hk=/^%/,Gk=/[\\^$*+?|[\]().{}]/g;function he(e,t,n){var r=e<0?"-":"",i=(r?-e:e)+"",a=i.length;return r+(a<n?new Array(n-a+1).join(t)+i:i)}function Vk(e){return e.replace(Gk,"\\$&")}function Oa(e){return new RegExp("^(?:"+e.map(Vk).join("|")+")","i")}function za(e){return new Map(e.map((t,n)=>[t.toLowerCase(),n]))}function Xk(e,t,n){var r=qe.exec(t.slice(n,n+1));return r?(e.w=+r[0],n+r[0].length):-1}function Kk(e,t,n){var r=qe.exec(t.slice(n,n+1));return r?(e.u=+r[0],n+r[0].length):-1}function Zk(e,t,n){var r=qe.exec(t.slice(n,n+2));return r?(e.U=+r[0],n+r[0].length):-1}function Qk(e,t,n){var r=qe.exec(t.slice(n,n+2));return r?(e.V=+r[0],n+r[0].length):-1}function Jk(e,t,n){var r=qe.exec(t.slice(n,n+2));return r?(e.W=+r[0],n+r[0].length):-1}function zm(e,t,n){var r=qe.exec(t.slice(n,n+4));return r?(e.y=+r[0],n+r[0].length):-1}function Lm(e,t,n){var r=qe.exec(t.slice(n,n+2));return r?(e.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function e8(e,t,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(n,n+6));return r?(e.Z=r[1]?0:-(r[2]+(r[3]||"00")),n+r[0].length):-1}function t8(e,t,n){var r=qe.exec(t.slice(n,n+1));return r?(e.q=r[0]*3-3,n+r[0].length):-1}function n8(e,t,n){var r=qe.exec(t.slice(n,n+2));return r?(e.m=r[0]-1,n+r[0].length):-1}function Nm(e,t,n){var r=qe.exec(t.slice(n,n+2));return r?(e.d=+r[0],n+r[0].length):-1}function r8(e,t,n){var r=qe.exec(t.slice(n,n+3));return r?(e.m=0,e.d=+r[0],n+r[0].length):-1}function Pm(e,t,n){var r=qe.exec(t.slice(n,n+2));return r?(e.H=+r[0],n+r[0].length):-1}function i8(e,t,n){var r=qe.exec(t.slice(n,n+2));return r?(e.M=+r[0],n+r[0].length):-1}function a8(e,t,n){var r=qe.exec(t.slice(n,n+2));return r?(e.S=+r[0],n+r[0].length):-1}function u8(e,t,n){var r=qe.exec(t.slice(n,n+3));return r?(e.L=+r[0],n+r[0].length):-1}function o8(e,t,n){var r=qe.exec(t.slice(n,n+6));return r?(e.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function s8(e,t,n){var r=Hk.exec(t.slice(n,n+1));return r?n+r[0].length:-1}function l8(e,t,n){var r=qe.exec(t.slice(n));return r?(e.Q=+r[0],n+r[0].length):-1}function f8(e,t,n){var r=qe.exec(t.slice(n));return r?(e.s=+r[0],n+r[0].length):-1}function Im(e,t){return he(e.getDate(),t,2)}function c8(e,t){return he(e.getHours(),t,2)}function h8(e,t){return he(e.getHours()%12||12,t,2)}function d8(e,t){return he(1+ur.count(Tn(e),e),t,3)}function Lx(e,t){return he(e.getMilliseconds(),t,3)}function g8(e,t){return Lx(e,t)+"000"}function p8(e,t){return he(e.getMonth()+1,t,2)}function m8(e,t){return he(e.getMinutes(),t,2)}function y8(e,t){return he(e.getSeconds(),t,2)}function v8(e){var t=e.getDay();return t===0?7:t}function x8(e,t){return he(xa.count(Tn(e)-1,e),t,2)}function Nx(e){var t=e.getDay();return t>=4||t===0?ra(e):ra.ceil(e)}function b8(e,t){return e=Nx(e),he(ra.count(Tn(e),e)+(Tn(e).getDay()===4),t,2)}function A8(e){return e.getDay()}function E8(e,t){return he(ol.count(Tn(e)-1,e),t,2)}function w8(e,t){return he(e.getFullYear()%100,t,2)}function C8(e,t){return e=Nx(e),he(e.getFullYear()%100,t,2)}function D8(e,t){return he(e.getFullYear()%1e4,t,4)}function F8(e,t){var n=e.getDay();return e=n>=4||n===0?ra(e):ra.ceil(e),he(e.getFullYear()%1e4,t,4)}function k8(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+he(t/60|0,"0",2)+he(t%60,"0",2)}function Um(e,t){return he(e.getUTCDate(),t,2)}function M8(e,t){return he(e.getUTCHours(),t,2)}function S8(e,t){return he(e.getUTCHours()%12||12,t,2)}function $8(e,t){return he(1+Br.count(On(e),e),t,3)}function Px(e,t){return he(e.getUTCMilliseconds(),t,3)}function B8(e,t){return Px(e,t)+"000"}function _8(e,t){return he(e.getUTCMonth()+1,t,2)}function R8(e,t){return he(e.getUTCMinutes(),t,2)}function T8(e,t){return he(e.getUTCSeconds(),t,2)}function O8(e){var t=e.getUTCDay();return t===0?7:t}function z8(e,t){return he(ba.count(On(e)-1,e),t,2)}function Ix(e){var t=e.getUTCDay();return t>=4||t===0?ia(e):ia.ceil(e)}function L8(e,t){return e=Ix(e),he(ia.count(On(e),e)+(On(e).getUTCDay()===4),t,2)}function N8(e){return e.getUTCDay()}function P8(e,t){return he(sl.count(On(e)-1,e),t,2)}function I8(e,t){return he(e.getUTCFullYear()%100,t,2)}function U8(e,t){return e=Ix(e),he(e.getUTCFullYear()%100,t,2)}function q8(e,t){return he(e.getUTCFullYear()%1e4,t,4)}function j8(e,t){var n=e.getUTCDay();return e=n>=4||n===0?ia(e):ia.ceil(e),he(e.getUTCFullYear()%1e4,t,4)}function W8(){return"+0000"}function qm(){return"%"}function jm(e){return+e}function Wm(e){return Math.floor(+e/1e3)}var Ti,ld,Ux,fd,qx;Y8({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function Y8(e){return Ti=zx(e),ld=Ti.format,Ux=Ti.parse,fd=Ti.utcFormat,qx=Ti.utcParse,Ti}function H8(e){return new Date(e)}function G8(e){return e instanceof Date?+e:+new Date(+e)}function cd(e,t,n,r,i,a,u,o,s,l){var f=eD(),c=f.invert,h=f.domain,d=l(".%L"),g=l(":%S"),p=l("%I:%M"),m=l("%I %p"),y=l("%a %d"),v=l("%b %d"),x=l("%B"),b=l("%Y");function E(w){return(s(w)<w?d:o(w)<w?g:u(w)<w?p:a(w)<w?m:r(w)<w?i(w)<w?y:v:n(w)<w?x:b)(w)}return f.invert=function(w){return new Date(c(w))},f.domain=function(w){return arguments.length?h(Array.from(w,G8)):h().map(H8)},f.ticks=function(w){var A=h();return e(A[0],A[A.length-1],w??10)},f.tickFormat=function(w,A){return A==null?E:l(A)},f.nice=function(w){var A=h();return(!w||typeof w.range!="function")&&(w=t(A[0],A[A.length-1],w??10)),w?h(Mx(A,w)):f},f.copy=function(){return jl(f,cd(e,t,n,r,i,a,u,o,s,l))},f}function V8(){return jr.apply(cd(Wk,Yk,Tn,Tu,xa,ur,Jl,Zl,rr,ld).domain([new Date(2e3,0,1),new Date(2e3,0,2)]),arguments)}function X8(){return jr.apply(cd(qk,jk,On,Ou,ba,Br,ef,Ql,rr,fd).domain([Date.UTC(2e3,0,1),Date.UTC(2e3,0,2)]),arguments)}function tf(){var e=0,t=1,n,r,i,a,u=Er,o=!1,s;function l(c){return c==null||isNaN(c=+c)?s:u(i===0?.5:(c=(a(c)-n)*i,o?Math.max(0,Math.min(1,c)):c))}l.domain=function(c){return arguments.length?([e,t]=c,n=a(e=+e),r=a(t=+t),i=n===r?0:1/(r-n),l):[e,t]},l.clamp=function(c){return arguments.length?(o=!!c,l):o},l.interpolator=function(c){return arguments.length?(u=c,l):u};function f(c){return function(h){var d,g;return arguments.length?([d,g]=h,u=c(d,g),l):[u(0),u(1)]}}return l.range=f(Ju),l.rangeRound=f(ql),l.unknown=function(c){return arguments.length?(s=c,l):s},function(c){return a=c,n=c(e),r=c(t),i=n===r?0:1/(r-n),l}}function Yr(e,t){return t.domain(e.domain()).interpolator(e.interpolator()).clamp(e.clamp()).unknown(e.unknown())}function hd(){var e=ya(tf()(Er));return e.copy=function(){return Yr(e,hd())},Wr.apply(e,arguments)}function jx(){var e=id(tf()).domain([1,10]);return e.copy=function(){return Yr(e,jx()).base(e.base())},Wr.apply(e,arguments)}function Wx(){var e=ad(tf());return e.copy=function(){return Yr(e,Wx()).constant(e.constant())},Wr.apply(e,arguments)}function dd(){var e=ud(tf());return e.copy=function(){return Yr(e,dd()).exponent(e.exponent())},Wr.apply(e,arguments)}function K8(){return dd.apply(null,arguments).exponent(.5)}function nf(){var e=0,t=.5,n=1,r=1,i,a,u,o,s,l=Er,f,c=!1,h;function d(p){return isNaN(p=+p)?h:(p=.5+((p=+f(p))-a)*(r*p<r*a?o:s),l(c?Math.max(0,Math.min(1,p)):p))}d.domain=function(p){return arguments.length?([e,t,n]=p,i=f(e=+e),a=f(t=+t),u=f(n=+n),o=i===a?0:.5/(a-i),s=a===u?0:.5/(u-a),r=a<i?-1:1,d):[e,t,n]},d.clamp=function(p){return arguments.length?(c=!!p,d):c},d.interpolator=function(p){return arguments.length?(l=p,d):l};function g(p){return function(m){var y,v,x;return arguments.length?([y,v,x]=m,l=H0(p,[y,v,x]),d):[l(0),l(.5),l(1)]}}return d.range=g(Ju),d.rangeRound=g(ql),d.unknown=function(p){return arguments.length?(h=p,d):h},function(p){return f=p,i=p(e),a=p(t),u=p(n),o=i===a?0:.5/(a-i),s=a===u?0:.5/(u-a),r=a<i?-1:1,d}}function Yx(){var e=ya(nf()(Er));return e.copy=function(){return Yr(e,Yx())},Wr.apply(e,arguments)}function Hx(){var e=id(nf()).domain([.1,1,10]);return e.copy=function(){return Yr(e,Hx()).base(e.base())},Wr.apply(e,arguments)}function Gx(){var e=ad(nf());return e.copy=function(){return Yr(e,Gx()).constant(e.constant())},Wr.apply(e,arguments)}function gd(){var e=ud(nf());return e.copy=function(){return Yr(e,gd()).exponent(e.exponent())},Wr.apply(e,arguments)}function Z8(){return gd.apply(null,arguments).exponent(.5)}function In(e){for(var t=e.length/6|0,n=new Array(t),r=0;r<t;)n[r]="#"+e.slice(r*6,++r*6);return n}const Q8=In("1f77b4ff7f0e2ca02cd627289467bd8c564be377c27f7f7fbcbd2217becf"),J8=In("7fc97fbeaed4fdc086ffff99386cb0f0027fbf5b17666666"),eM=In("1b9e77d95f027570b3e7298a66a61ee6ab02a6761d666666"),tM=In("4269d0efb118ff725c6cc5b03ca951ff8ab7a463f297bbf59c6b4e9498a0"),nM=In("a6cee31f78b4b2df8a33a02cfb9a99e31a1cfdbf6fff7f00cab2d66a3d9affff99b15928"),rM=In("fbb4aeb3cde3ccebc5decbe4fed9a6ffffcce5d8bdfddaecf2f2f2"),iM=In("b3e2cdfdcdaccbd5e8f4cae4e6f5c9fff2aef1e2cccccccc"),aM=In("e41a1c377eb84daf4a984ea3ff7f00ffff33a65628f781bf999999"),uM=In("66c2a5fc8d628da0cbe78ac3a6d854ffd92fe5c494b3b3b3"),oM=In("8dd3c7ffffb3bebadafb807280b1d3fdb462b3de69fccde5d9d9d9bc80bdccebc5ffed6f"),sM={draw(e,t){const n=nD(t/rD);e.moveTo(n,0),e.arc(0,0,n,0,tD)}};function lM(e,t){let n=null,r=iD(i);e=typeof e=="function"?e:Ro(e||sM),t=typeof t=="function"?t:Ro(t===void 0?64:+t);function i(){let a;if(n||(n=a=r()),e.apply(this,arguments).draw(n,+t.apply(this,arguments)),a)return n=null,a+""||null}return i.type=function(a){return arguments.length?(e=typeof a=="function"?a:Ro(a),i):e},i.size=function(a){return arguments.length?(t=typeof a=="function"?a:Ro(+a),i):t},i.context=function(a){return arguments.length?(n=a??null,i):n},i}function Vx(e,t){this._basis=new av(e),this._beta=t}Vx.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var e=this._x,t=this._y,n=e.length-1;if(n>0)for(var r=e[0],i=t[0],a=e[n]-r,u=t[n]-i,o=-1,s;++o<=n;)s=o/n,this._basis.point(this._beta*e[o]+(1-this._beta)*(r+s*a),this._beta*t[o]+(1-this._beta)*(i+s*u));this._x=this._y=null,this._basis.lineEnd()},point:function(e,t){this._x.push(+e),this._y.push(+t)}};const fM=function e(t){function n(r){return t===1?new av(r):new Vx(r,t)}return n.beta=function(r){return e(+r)},n}(.85);function Tt(e,t,n){return e.fields=t||[],e.fname=n,e}function Me(e){return e==null?null:e.fname}function tt(e){return e==null?null:e.fields}function Xx(e){return e.length===1?cM(e[0]):hM(e)}const cM=e=>function(t){return t[e]},hM=e=>{const t=e.length;return function(n){for(let r=0;r<t;++r)n=n[e[r]];return n}};function $(e){throw Error(e)}function rf(e){const t=[],n=e.length;let r=null,i=0,a="",u,o,s;e=e+"";function l(){t.push(a+e.substring(u,o)),a="",u=o+1}for(u=o=0;o<n;++o)if(s=e[o],s==="\\")a+=e.substring(u,o++),u=o;else if(s===r)l(),r=null,i=-1;else{if(r)continue;u===i&&s==='"'||u===i&&s==="'"?(u=o+1,r=s):s==="."&&!i?o>u?l():u=o+1:s==="["?(o>u&&l(),i=u=o+1):s==="]"&&(i||$("Access path missing open bracket: "+e),i>0&&l(),i=0,u=o+1)}return i&&$("Access path missing closing bracket: "+e),r&&$("Access path missing closing quote: "+e),o>u&&(o++,l()),t}function nn(e,t,n){const r=rf(e);return e=r.length===1?r[0]:e,Tt((n&&n.get||Xx)(r),[e],t||e)}const io=nn("id"),Et=Tt(e=>e,[],"identity"),Ar=Tt(()=>0,[],"zero"),Aa=Tt(()=>1,[],"one"),rn=Tt(()=>!0,[],"true"),gr=Tt(()=>!1,[],"false");function dM(e,t,n){const r=[t].concat([].slice.call(n));console[e].apply(console,r)}const Kx=0,pd=1,Zx=2,Qx=3,Jx=4;function eb(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:dM,r=e||Kx;return{level(i){return arguments.length?(r=+i,this):r},error(){return r>=pd&&n(t||"error","ERROR",arguments),this},warn(){return r>=Zx&&n(t||"warn","WARN",arguments),this},info(){return r>=Qx&&n(t||"log","INFO",arguments),this},debug(){return r>=Jx&&n(t||"log","DEBUG",arguments),this}}}var j=Array.isArray;function ne(e){return e===Object(e)}const Ym=e=>e!=="__proto__";function tb(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return t.reduce((r,i)=>{for(const a in i)if(a==="signals")r.signals=gM(r.signals,i.signals);else{const u=a==="legend"?{layout:1}:a==="style"?!0:null;md(r,a,i[a],u)}return r},{})}function md(e,t,n,r){if(!Ym(t))return;let i,a;if(ne(n)&&!j(n)){a=ne(e[t])?e[t]:e[t]={};for(i in n)r&&(r===!0||r[i])?md(a,i,n[i]):Ym(i)&&(a[i]=n[i])}else e[t]=n}function gM(e,t){if(e==null)return t;const n={},r=[];function i(a){n[a.name]||(n[a.name]=1,r.push(a))}return t.forEach(i),e.forEach(i),r}function oe(e){return e[e.length-1]}function et(e){return e==null||e===""?null:+e}const nb=e=>t=>e*Math.exp(t),rb=e=>t=>Math.log(e*t),ib=e=>t=>Math.sign(t)*Math.log1p(Math.abs(t/e)),ab=e=>t=>Math.sign(t)*Math.expm1(Math.abs(t))*e,ll=e=>t=>t<0?-Math.pow(-t,e):Math.pow(t,e);function af(e,t,n,r){const i=n(e[0]),a=n(oe(e)),u=(a-i)*t;return[r(i-u),r(a-u)]}function ub(e,t){return af(e,t,et,Et)}function ob(e,t){var n=Math.sign(e[0]);return af(e,t,rb(n),nb(n))}function sb(e,t,n){return af(e,t,ll(n),ll(1/n))}function lb(e,t,n){return af(e,t,ib(n),ab(n))}function uf(e,t,n,r,i){const a=r(e[0]),u=r(oe(e)),o=t!=null?r(t):(a+u)/2;return[i(o+(a-o)*n),i(o+(u-o)*n)]}function yd(e,t,n){return uf(e,t,n,et,Et)}function vd(e,t,n){const r=Math.sign(e[0]);return uf(e,t,n,rb(r),nb(r))}function fl(e,t,n,r){return uf(e,t,n,ll(r),ll(1/r))}function xd(e,t,n,r){return uf(e,t,n,ib(r),ab(r))}function fb(e){return 1+~~(new Date(e).getMonth()/3)}function cb(e){return 1+~~(new Date(e).getUTCMonth()/3)}function V(e){return e!=null?j(e)?e:[e]:[]}function hb(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 ee(e){return typeof e=="function"}const pM="descending";function bd(e,t,n){n=n||{},t=V(t)||[];const r=[],i=[],a={},u=n.comparator||mM;return V(e).forEach((o,s)=>{o!=null&&(r.push(t[s]===pM?-1:1),i.push(o=ee(o)?o:nn(o,null,n)),(tt(o)||[]).forEach(l=>a[l]=1))}),i.length===0?null:Tt(u(i,r),Object.keys(a))}const ao=(e,t)=>(e<t||e==null)&&t!=null?-1:(e>t||t==null)&&e!=null?1:(t=t instanceof Date?+t:t,(e=e instanceof Date?+e:e)!==e&&t===t?-1:t!==t&&e===e?1:0),mM=(e,t)=>e.length===1?yM(e[0],t[0]):vM(e,t,e.length),yM=(e,t)=>function(n,r){return ao(e(n),e(r))*t},vM=(e,t,n)=>(t.push(0),function(r,i){let a,u=0,o=-1;for(;u===0&&++o<n;)a=e[o],u=ao(a(r),a(i));return u*t[o]});function ot(e){return ee(e)?e:()=>e}function Ad(e,t){let n;return r=>{n&&clearTimeout(n),n=setTimeout(()=>(t(r),n=null),e)}}function te(e){for(let t,n,r=1,i=arguments.length;r<i;++r){t=arguments[r];for(n in t)e[n]=t[n]}return e}function zn(e,t){let n=0,r,i,a,u;if(e&&(r=e.length))if(t==null){for(i=e[n];n<r&&(i==null||i!==i);i=e[++n]);for(a=u=i;n<r;++n)i=e[n],i!=null&&(i<a&&(a=i),i>u&&(u=i))}else{for(i=t(e[n]);n<r&&(i==null||i!==i);i=t(e[++n]));for(a=u=i;n<r;++n)i=t(e[n]),i!=null&&(i<a&&(a=i),i>u&&(u=i))}return[a,u]}function db(e,t){const n=e.length;let r=-1,i,a,u,o,s;if(t==null){for(;++r<n;)if(a=e[r],a!=null&&a>=a){i=u=a;break}if(r===n)return[-1,-1];for(o=s=r;++r<n;)a=e[r],a!=null&&(i>a&&(i=a,o=r),u<a&&(u=a,s=r))}else{for(;++r<n;)if(a=t(e[r],r,e),a!=null&&a>=a){i=u=a;break}if(r===n)return[-1,-1];for(o=s=r;++r<n;)a=t(e[r],r,e),a!=null&&(i>a&&(i=a,o=r),u<a&&(u=a,s=r))}return[o,s]}function Z(e,t){return Object.hasOwn(e,t)}const Yo={};function Ea(e){let t={},n;function r(a){return Z(t,a)&&t[a]!==Yo}const i={size:0,empty:0,object:t,has:r,get(a){return r(a)?t[a]:void 0},set(a,u){return r(a)||(++i.size,t[a]===Yo&&--i.empty),t[a]=u,this},delete(a){return r(a)&&(--i.size,++i.empty,t[a]=Yo),this},clear(){i.size=i.empty=0,i.object=t={}},test(a){return arguments.length?(n=a,i):n},clean(){const a={};let u=0;for(const o in t){const s=t[o];s!==Yo&&(!n||!n(s))&&(a[o]=s,++u)}i.size=u,i.empty=0,i.object=t=a}};return e&&Object.keys(e).forEach(a=>{i.set(a,e[a])}),i}function gb(e,t,n,r,i,a){if(!n&&n!==0)return a;const u=+n;let o=e[0],s=oe(e),l;s<o&&(l=o,o=s,s=l),l=Math.abs(t-o);const f=Math.abs(s-t);return l<f&&l<=u?r:f<=u?i:a}function L(e,t,n){const r=e.prototype=Object.create(t.prototype);return Object.defineProperty(r,"constructor",{value:e,writable:!0,enumerable:!0,configurable:!0}),te(r,n)}function Yi(e,t,n,r){let i=t[0],a=t[t.length-1],u;return i>a&&(u=i,i=a,a=u),n=n===void 0||n,r=r===void 0||r,(n?i<=e:i<e)&&(r?e<=a:e<a)}function pb(e){return typeof e=="boolean"}function _r(e){return Object.prototype.toString.call(e)==="[object Date]"}function mb(e){return e&&ee(e[Symbol.iterator])}function zr(e){return typeof e=="number"}function Ed(e){return Object.prototype.toString.call(e)==="[object RegExp]"}function be(e){return typeof e=="string"}function wd(e,t,n){e&&(e=t?V(e).map(o=>o.replace(/\\(.)/g,"$1")):V(e));const r=e&&e.length,i=n&&n.get||Xx,a=o=>i(t?[o]:rf(o));let u;if(!r)u=function(){return""};else if(r===1){const o=a(e[0]);u=function(s){return""+o(s)}}else{const o=e.map(a);u=function(s){let l=""+o[0](s),f=0;for(;++f<r;)l+="|"+o[f](s);return l}}return Tt(u,e,"key")}function yb(e,t){const n=e[0],r=oe(e),i=+t;return i?i===1?r:n+i*(r-n):n}const xM=1e4;function vb(e){e=+e||xM;let t,n,r;const i=()=>{t={},n={},r=0},a=(u,o)=>(++r>e&&(n=t,t={},r=1),t[u]=o);return i(),{clear:i,has:u=>Z(t,u)||Z(n,u),get:u=>Z(t,u)?t[u]:Z(n,u)?a(u,n[u]):void 0,set:(u,o)=>Z(t,u)?t[u]=o:a(u,o)}}function xb(e,t,n,r){const i=t.length,a=n.length;if(!a)return t;if(!i)return n;const u=r||new t.constructor(i+a);let o=0,s=0,l=0;for(;o<i&&s<a;++l)u[l]=e(t[o],n[s])>0?n[s++]:t[o++];for(;o<i;++o,++l)u[l]=t[o];for(;s<a;++s,++l)u[l]=n[s];return u}function ru(e,t){let n="";for(;--t>=0;)n+=e;return n}function bb(e,t,n,r){const i=n||" ",a=e+"",u=t-a.length;return u<=0?a:r==="left"?ru(i,u)+a:r==="center"?ru(i,~~(u/2))+a+ru(i,Math.ceil(u/2)):a+ru(i,u)}function uo(e){return e&&oe(e)-e[0]||0}function G(e){return j(e)?"["+e.map(G)+"]":ne(e)||be(e)?JSON.stringify(e).replace("\u2028","\\u2028").replace("\u2029","\\u2029"):e}function Cd(e){return e==null||e===""?null:!e||e==="false"||e==="0"?!1:!!e}const bM=e=>zr(e)||_r(e)?e:Date.parse(e);function Dd(e,t){return t=t||bM,e==null||e===""?null:t(e)}function Fd(e){return e==null||e===""?null:e+""}function jt(e){const t={},n=e.length;for(let r=0;r<n;++r)t[e[r]]=!0;return t}function Ab(e,t,n,r){const i=r??"…",a=e+"",u=a.length,o=Math.max(0,t-i.length);return u<=t?a:n==="left"?i+a.slice(u-o):n==="center"?a.slice(0,Math.ceil(o/2))+i+a.slice(u-~~(o/2)):a.slice(0,o)+i}function yr(e,t,n){if(e)if(t){const r=e.length;for(let i=0;i<r;++i){const a=t(e[i]);a&&n(a,i,e)}}else e.forEach(n)}function AM(e){return e}function EM(e){if(e==null)return AM;var t,n,r=e.scale[0],i=e.scale[1],a=e.translate[0],u=e.translate[1];return function(o,s){s||(t=n=0);var l=2,f=o.length,c=new Array(f);for(c[0]=(t+=o[0])*r+a,c[1]=(n+=o[1])*i+u;l<f;)c[l]=o[l],++l;return c}}function wM(e,t){for(var n,r=e.length,i=r-t;i<--r;)n=e[i],e[i++]=e[r],e[r]=n}function CM(e,t){return typeof t=="string"&&(t=e.objects[t]),t.type==="GeometryCollection"?{type:"FeatureCollection",features:t.geometries.map(function(n){return Hm(e,n)})}:Hm(e,t)}function Hm(e,t){var n=t.id,r=t.bbox,i=t.properties==null?{}:t.properties,a=Eb(e,t);return n==null&&r==null?{type:"Feature",properties:i,geometry:a}:r==null?{type:"Feature",id:n,properties:i,geometry:a}:{type:"Feature",id:n,bbox:r,properties:i,geometry:a}}function Eb(e,t){var n=EM(e.transform),r=e.arcs;function i(f,c){c.length&&c.pop();for(var h=r[f<0?~f:f],d=0,g=h.length;d<g;++d)c.push(n(h[d],d));f<0&&wM(c,g)}function a(f){return n(f)}function u(f){for(var c=[],h=0,d=f.length;h<d;++h)i(f[h],c);return c.length<2&&c.push(c[0]),c}function o(f){for(var c=u(f);c.length<4;)c.push(c[0]);return c}function s(f){return f.map(o)}function l(f){var c=f.type,h;switch(c){case"GeometryCollection":return{type:c,geometries:f.geometries.map(l)};case"Point":h=a(f.coordinates);break;case"MultiPoint":h=f.coordinates.map(a);break;case"LineString":h=u(f.arcs);break;case"MultiLineString":h=f.arcs.map(u);break;case"Polygon":h=s(f.arcs);break;case"MultiPolygon":h=f.arcs.map(s);break;default:return null}return{type:c,coordinates:h}}return l(t)}function DM(e,t){var n={},r={},i={},a=[],u=-1;t.forEach(function(l,f){var c=e.arcs[l<0?~l:l],h;c.length<3&&!c[1][0]&&!c[1][1]&&(h=t[++u],t[u]=l,t[f]=h)}),t.forEach(function(l){var f=o(l),c=f[0],h=f[1],d,g;if(d=i[c])if(delete i[d.end],d.push(l),d.end=h,g=r[h]){delete r[g.start];var p=g===d?d:d.concat(g);r[p.start=d.start]=i[p.end=g.end]=p}else r[d.start]=i[d.end]=d;else if(d=r[h])if(delete r[d.start],d.unshift(l),d.start=c,g=i[c]){delete i[g.end];var m=g===d?d:g.concat(d);r[m.start=g.start]=i[m.end=d.end]=m}else r[d.start]=i[d.end]=d;else d=[l],r[d.start=c]=i[d.end=h]=d});function o(l){var f=e.arcs[l<0?~l:l],c=f[0],h;return e.transform?(h=[0,0],f.forEach(function(d){h[0]+=d[0],h[1]+=d[1]})):h=f[f.length-1],l<0?[h,c]:[c,h]}function s(l,f){for(var c in l){var h=l[c];delete f[h.start],delete h.start,delete h.end,h.forEach(function(d){n[d<0?~d:d]=1}),a.push(h)}}return s(i,r),s(r,i),t.forEach(function(l){n[l<0?~l:l]||a.push([l])}),a}function FM(e){return Eb(e,kM.apply(this,arguments))}function kM(e,t,n){var r,i,a;if(arguments.length>1)r=MM(e,t,n);else for(i=0,r=new Array(a=e.arcs.length);i<a;++i)r[i]=i;return{type:"MultiLineString",arcs:DM(e,r)}}function MM(e,t,n){var r=[],i=[],a;function u(c){var h=c<0?~c:c;(i[h]||(i[h]=[])).push({i:c,g:a})}function o(c){c.forEach(u)}function s(c){c.forEach(o)}function l(c){c.forEach(s)}function f(c){switch(a=c,c.type){case"GeometryCollection":c.geometries.forEach(f);break;case"LineString":o(c.arcs);break;case"MultiLineString":case"Polygon":s(c.arcs);break;case"MultiPolygon":l(c.arcs);break}}return f(t),i.forEach(n==null?function(c){r.push(c[0].i)}:function(c){n(c[0].g,c[c.length-1].g)&&r.push(c[0].i)}),r}const He="year",_t="quarter",nt="month",Te="week",Rt="date",Qe="day",Ln="dayofyear",Wt="hours",Yt="minutes",an="seconds",xn="milliseconds",kd=[He,_t,nt,Te,Rt,Qe,Ln,Wt,Yt,an,xn],Mc=kd.reduce((e,t,n)=>(e[t]=1+n,e),{});function Md(e){const t=V(e).slice(),n={};return t.length||$("Missing time unit."),t.forEach(i=>{Z(Mc,i)?n[i]=1:$(`Invalid time unit: ${i}.`)}),(n[Te]||n[Qe]?1:0)+(n[_t]||n[nt]||n[Rt]?1:0)+(n[Ln]?1:0)>1&&$(`Incompatible time units: ${e}`),t.sort((i,a)=>Mc[i]-Mc[a]),t}const SM={[He]:"%Y ",[_t]:"Q%q ",[nt]:"%b ",[Rt]:"%d ",[Te]:"W%U ",[Qe]:"%a ",[Ln]:"%j ",[Wt]:"%H:00",[Yt]:"00:%M",[an]:":%S",[xn]:".%L",[`${He}-${nt}`]:"%Y-%m ",[`${He}-${nt}-${Rt}`]:"%Y-%m-%d ",[`${Wt}-${Yt}`]:"%H:%M"};function wb(e,t){const n=te({},SM,t),r=Md(e),i=r.length;let a="",u=0,o,s;for(u=0;u<i;)for(o=r.length;o>u;--o)if(s=r.slice(u,o).join("-"),n[s]!=null){a+=n[s],u=o;break}return a.trim()}const ei=new Date;function Sd(e){return ei.setFullYear(e),ei.setMonth(0),ei.setDate(1),ei.setHours(0,0,0,0),ei}function Cb(e){return Fb(new Date(e))}function Db(e){return Lh(new Date(e))}function Fb(e){return ur.count(Sd(e.getFullYear())-1,e)}function Lh(e){return xa.count(Sd(e.getFullYear())-1,e)}function Nh(e){return Sd(e).getDay()}function $M(e,t,n,r,i,a,u){if(0<=e&&e<100){const o=new Date(-1,t,n,r,i,a,u);return o.setFullYear(e),o}return new Date(e,t,n,r,i,a,u)}function kb(e){return Sb(new Date(e))}function Mb(e){return Ph(new Date(e))}function Sb(e){const t=Date.UTC(e.getUTCFullYear(),0,1);return Br.count(t-1,e)}function Ph(e){const t=Date.UTC(e.getUTCFullYear(),0,1);return ba.count(t-1,e)}function Ih(e){return ei.setTime(Date.UTC(e,0,1)),ei.getUTCDay()}function BM(e,t,n,r,i,a,u){if(0<=e&&e<100){const o=new Date(Date.UTC(-1,t,n,r,i,a,u));return o.setUTCFullYear(n.y),o}return new Date(Date.UTC(e,t,n,r,i,a,u))}function $b(e,t,n,r,i){const a=t||1,u=oe(e),o=(y,v,x)=>(x=x||y,_M(n[x],r[x],y===u&&a,v)),s=new Date,l=jt(e),f=l[He]?o(He):ot(2012),c=l[nt]?o(nt):l[_t]?o(_t):Ar,h=l[Te]&&l[Qe]?o(Qe,1,Te+Qe):l[Te]?o(Te,1):l[Qe]?o(Qe,1):l[Rt]?o(Rt,1):l[Ln]?o(Ln,1):Aa,d=l[Wt]?o(Wt):Ar,g=l[Yt]?o(Yt):Ar,p=l[an]?o(an):Ar,m=l[xn]?o(xn):Ar;return function(y){s.setTime(+y);const v=f(s);return i(v,c(s),h(s,v),d(s),g(s),p(s),m(s))}}function _M(e,t,n,r){const i=n<=1?e:r?(a,u)=>r+n*Math.floor((e(a,u)-r)/n):(a,u)=>n*Math.floor(e(a,u)/n);return t?(a,u)=>t(i(a,u),u):i}function aa(e,t,n){return t+e*7-(n+6)%7}const RM={[He]:e=>e.getFullYear(),[_t]:e=>Math.floor(e.getMonth()/3),[nt]:e=>e.getMonth(),[Rt]:e=>e.getDate(),[Wt]:e=>e.getHours(),[Yt]:e=>e.getMinutes(),[an]:e=>e.getSeconds(),[xn]:e=>e.getMilliseconds(),[Ln]:e=>Fb(e),[Te]:e=>Lh(e),[Te+Qe]:(e,t)=>aa(Lh(e),e.getDay(),Nh(t)),[Qe]:(e,t)=>aa(1,e.getDay(),Nh(t))},TM={[_t]:e=>3*e,[Te]:(e,t)=>aa(e,0,Nh(t))};function Bb(e,t){return $b(e,t||1,RM,TM,$M)}const OM={[He]:e=>e.getUTCFullYear(),[_t]:e=>Math.floor(e.getUTCMonth()/3),[nt]:e=>e.getUTCMonth(),[Rt]:e=>e.getUTCDate(),[Wt]:e=>e.getUTCHours(),[Yt]:e=>e.getUTCMinutes(),[an]:e=>e.getUTCSeconds(),[xn]:e=>e.getUTCMilliseconds(),[Ln]:e=>Sb(e),[Te]:e=>Ph(e),[Qe]:(e,t)=>aa(1,e.getUTCDay(),Ih(t)),[Te+Qe]:(e,t)=>aa(Ph(e),e.getUTCDay(),Ih(t))},zM={[_t]:e=>3*e,[Te]:(e,t)=>aa(e,0,Ih(t))};function _b(e,t){return $b(e,t||1,OM,zM,BM)}const LM={[He]:Tn,[_t]:Tu.every(3),[nt]:Tu,[Te]:xa,[Rt]:ur,[Qe]:ur,[Ln]:ur,[Wt]:Jl,[Yt]:Zl,[an]:rr,[xn]:na},NM={[He]:On,[_t]:Ou.every(3),[nt]:Ou,[Te]:ba,[Rt]:Br,[Qe]:Br,[Ln]:Br,[Wt]:ef,[Yt]:Ql,[an]:rr,[xn]:na};function wa(e){return LM[e]}function Ca(e){return NM[e]}function Rb(e,t,n){return e?e.offset(t,n):void 0}function Tb(e,t,n){return Rb(wa(e),t,n)}function Ob(e,t,n){return Rb(Ca(e),t,n)}function zb(e,t,n,r){return e?e.range(t,n,r):void 0}function Lb(e,t,n,r){return zb(wa(e),t,n,r)}function Nb(e,t,n,r){return zb(Ca(e),t,n,r)}const iu=1e3,au=iu*60,uu=au*60,of=uu*24,PM=of*7,Gm=of*30,Uh=of*365,Pb=[He,nt,Rt,Wt,Yt,an,xn],ou=Pb.slice(0,-1),su=ou.slice(0,-1),lu=su.slice(0,-1),IM=lu.slice(0,-1),UM=[He,Te],Vm=[He,nt],Ib=[He],La=[[ou,1,iu],[ou,5,5*iu],[ou,15,15*iu],[ou,30,30*iu],[su,1,au],[su,5,5*au],[su,15,15*au],[su,30,30*au],[lu,1,uu],[lu,3,3*uu],[lu,6,6*uu],[lu,12,12*uu],[IM,1,of],[UM,1,PM],[Vm,1,Gm],[Vm,3,3*Gm],[Ib,1,Uh]];function Ub(e){const t=e.extent,n=e.maxbins||40,r=Math.abs(uo(t))/n;let i=Yl(o=>o[2]).right(La,r),a,u;return i===La.length?(a=Ib,u=fi(t[0]/Uh,t[1]/Uh,n)):i?(i=La[r/La[i-1][2]<La[i][2]/r?i-1:i],a=i[0],u=i[1]):(a=Pb,u=Math.max(fi(t[0],t[1],n),1)),{units:a,step:u}}function fu(e){const t={};return n=>t[n]||(t[n]=e(n))}function qM(e,t){return n=>{const r=e(n),i=r.indexOf(t);if(i<0)return r;let a=jM(r,i);const u=a<r.length?r.slice(a):"";for(;--a>i;)if(r[a]!=="0"){++a;break}return r.slice(0,a)+u}}function jM(e,t){let n=e.lastIndexOf("e"),r;if(n>0)return n;for(n=e.length;--n>t;)if(r=e.charCodeAt(n),r>=48&&r<=57)return n+1}function qb(e){const t=fu(e.format),n=e.formatPrefix;return{format:t,formatPrefix:n,formatFloat(r){const i=lh(r||",");if(i.precision==null){switch(i.precision=12,i.type){case"%":i.precision-=2;break;case"e":i.precision-=1;break}return qM(t(i),t(".1f")(1)[1])}else return t(i)},formatSpan(r,i,a,u){u=lh(u??",f");const o=fi(r,i,a),s=Math.max(Math.abs(r),Math.abs(i));let l;if(u.precision==null)switch(u.type){case"s":return isNaN(l=oD(o,s))||(u.precision=l),n(u,s);case"":case"e":case"g":case"p":case"r":{isNaN(l=uD(o,s))||(u.precision=l-(u.type==="e"));break}case"f":case"%":{isNaN(l=aD(o))||(u.precision=l-(u.type==="%")*2);break}}return t(u)}}}let qh;jb();function jb(){return qh=qb({format:iv,formatPrefix:sD})}function Wb(e){return qb(lD(e))}function cl(e){return arguments.length?qh=Wb(e):qh}function Xm(e,t,n){n=n||{},ne(n)||$(`Invalid time multi-format specifier: ${n}`);const r=t(an),i=t(Yt),a=t(Wt),u=t(Rt),o=t(Te),s=t(nt),l=t(_t),f=t(He),c=e(n[xn]||".%L"),h=e(n[an]||":%S"),d=e(n[Yt]||"%I:%M"),g=e(n[Wt]||"%I %p"),p=e(n[Rt]||n[Qe]||"%a %d"),m=e(n[Te]||"%b %d"),y=e(n[nt]||"%B"),v=e(n[_t]||"%B"),x=e(n[He]||"%Y");return b=>(r(b)<b?c:i(b)<b?h:a(b)<b?d:u(b)<b?g:s(b)<b?o(b)<b?p:m:f(b)<b?l(b)<b?y:v:x)(b)}function Yb(e){const t=fu(e.format),n=fu(e.utcFormat);return{timeFormat:r=>be(r)?t(r):Xm(t,wa,r),utcFormat:r=>be(r)?n(r):Xm(n,Ca,r),timeParse:fu(e.parse),utcParse:fu(e.utcParse)}}let jh;Hb();function Hb(){return jh=Yb({format:ld,parse:Ux,utcFormat:fd,utcParse:qx})}function Gb(e){return Yb(zx(e))}function zu(e){return arguments.length?jh=Gb(e):jh}const Wh=(e,t)=>te({},e,t);function Vb(e,t){const n=e?Wb(e):cl(),r=t?Gb(t):zu();return Wh(n,r)}function $d(e,t){const n=arguments.length;return n&&n!==2&&$("defaultLocale expects either zero or two arguments."),n?Wh(cl(e),zu(t)):Wh(cl(),zu())}function WM(){return jb(),Hb(),$d()}const YM=/^(data:|([A-Za-z]+:)?\/\/)/,HM=/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp|file|data):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i,GM=/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205f\u3000]/g,Km="file://";function VM(e,t){return n=>({options:n||{},sanitize:KM,load:XM,fileAccess:!1,file:ZM(t),http:JM(e)})}async function XM(e,t){const n=await this.sanitize(e,t),r=n.href;return n.localFile?this.file(r):this.http(r,t)}async function KM(e,t){t=te({},this.options,t);const n=this.fileAccess,r={href:null};let i,a,u;const o=HM.test(e.replace(GM,""));(e==null||typeof e!="string"||!o)&&$("Sanitize failure, invalid URI: "+G(e));const s=YM.test(e);return(u=t.baseURL)&&!s&&(!e.startsWith("/")&&!u.endsWith("/")&&(e="/"+e),e=u+e),a=(i=e.startsWith(Km))||t.mode==="file"||t.mode!=="http"&&!s&&n,i?e=e.slice(Km.length):e.startsWith("//")&&(t.defaultProtocol==="file"?(e=e.slice(2),a=!0):e=(t.defaultProtocol||"http")+":"+e),Object.defineProperty(r,"localFile",{value:!!a}),r.href=e,t.target&&(r.target=t.target+""),t.rel&&(r.rel=t.rel+""),t.context==="image"&&t.crossOrigin&&(r.crossOrigin=t.crossOrigin+""),r}function ZM(e){return e?t=>new Promise((n,r)=>{e.readFile(t,(i,a)=>{i?r(i):n(a)})}):QM}async function QM(){$("No file system access.")}function JM(e){return e?async function(t,n){const r=te({},this.options.http,n),i=n&&n.response,a=await e(t,r);return a.ok?ee(a[i])?a[i]():a.text():$(a.status+""+a.statusText)}:e9}async function e9(){$("No HTTP fetch method available.")}const t9=e=>e!=null&&e===e,n9=e=>e==="true"||e==="false"||e===!0||e===!1,r9=e=>!Number.isNaN(Date.parse(e)),Xb=e=>!Number.isNaN(+e)&&!(e instanceof Date),i9=e=>Xb(e)&&Number.isInteger(+e),Yh={boolean:Cd,integer:et,number:et,date:Dd,string:Fd,unknown:Et},Ho=[n9,i9,Xb,r9],a9=["boolean","integer","number","date"];function Kb(e,t){if(!e||!e.length)return"unknown";const n=e.length,r=Ho.length,i=Ho.map((a,u)=>u+1);for(let a=0,u=0,o,s;a<n;++a)for(s=t?e[a][t]:e[a],o=0;o<r;++o)if(i[o]&&t9(s)&&!Ho[o](s)&&(i[o]=0,++u,u===Ho.length))return"string";return a9[i.reduce((a,u)=>a===0?u:a,0)-1]}function Zb(e,t){return t.reduce((n,r)=>(n[r]=Kb(e,r),n),{})}function Zm(e){const t=function(n,r){const i={delimiter:e};return Bd(n,r?te(r,i):i)};return t.responseType="text",t}function Bd(e,t){return t.header&&(e=t.header.map(G).join(t.delimiter)+`
|
|
6
|
+
`+e),LF(t.delimiter).parse(e+"")}Bd.responseType="text";function u9(e){return typeof Buffer=="function"&&ee(Buffer.isBuffer)?Buffer.isBuffer(e):!1}function _d(e,t){const n=t&&t.property?nn(t.property):Et;return ne(e)&&!u9(e)?o9(n(e),t):n(JSON.parse(e))}_d.responseType="json";function o9(e,t){return!j(e)&&mb(e)&&(e=[...e]),t&&t.copy?JSON.parse(JSON.stringify(e)):e}const s9={interior:(e,t)=>e!==t,exterior:(e,t)=>e===t};function Qb(e,t){let n,r,i,a;return e=_d(e,t),t&&t.feature?(n=CM,i=t.feature):t&&t.mesh?(n=FM,i=t.mesh,a=s9[t.filter]):$("Missing TopoJSON feature or mesh parameter."),r=(r=e.objects[i])?n(e,r,a):$("Invalid TopoJSON object: "+i),r&&r.features||[r]}Qb.responseType="json";const ls={dsv:Bd,csv:Zm(","),tsv:Zm(" "),json:_d,topojson:Qb};function Rd(e,t){return arguments.length>1?(ls[e]=t,this):Z(ls,e)?ls[e]:null}function Jb(e){const t=Rd(e);return t&&t.responseType||"text"}function eA(e,t,n,r){t=t||{};const i=Rd(t.type||"json");return i||$("Unknown data format type: "+t.type),e=i(e,t),t.parse&&l9(e,t.parse,n,r),Z(e,"columns")&&delete e.columns,e}function l9(e,t,n,r){if(!e.length)return;const i=zu();n=n||i.timeParse,r=r||i.utcParse;let a=e.columns||Object.keys(e[0]),u,o,s,l,f,c;t==="auto"&&(t=Zb(e,a)),a=Object.keys(t);const h=a.map(d=>{const g=t[d];let p,m;if(g&&(g.startsWith("date:")||g.startsWith("utc:")))return p=g.split(/:(.+)?/,2),m=p[1],(m[0]==="'"&&m[m.length-1]==="'"||m[0]==='"'&&m[m.length-1]==='"')&&(m=m.slice(1,-1)),(p[0]==="utc"?r:n)(m);if(!Yh[g])throw Error("Illegal format pattern: "+d+":"+g);return Yh[g]});for(s=0,f=e.length,c=a.length;s<f;++s)for(u=e[s],l=0;l<c;++l)o=a[l],u[o]=h[l](u[o])}const sf=VM(typeof fetch<"u"&&fetch,null);function lf(e){const t=e||Et,n=[],r={};return n.add=i=>{const a=t(i);return r[a]||(r[a]=1,n.push(i)),n},n.remove=i=>{const a=t(i);if(r[a]){r[a]=0;const u=n.indexOf(i);u>=0&&n.splice(u,1)}return n},n}async function fs(e,t){try{await t(e)}catch(n){e.error(n)}}const tA=Symbol("vega_id");let f9=1;function ff(e){return!!(e&&Y(e))}function Y(e){return e[tA]}function nA(e,t){return e[tA]=t,e}function ge(e){const t=e===Object(e)?e:{data:e};return Y(t)?t:nA(t,f9++)}function Td(e){return cf(e,ge({}))}function cf(e,t){for(const n in e)t[n]=e[n];return t}function rA(e,t){return nA(t,Y(e))}function Ci(e,t){return e?t?(n,r)=>e(n,r)||Y(t(n))-Y(t(r)):(n,r)=>e(n,r)||Y(n)-Y(r):null}function iA(e){return e&&e.constructor===Di}function Di(){const e=[],t=[],n=[],r=[],i=[];let a=null,u=!1;return{constructor:Di,insert(o){const s=V(o),l=s.length;for(let f=0;f<l;++f)e.push(s[f]);return this},remove(o){const s=ee(o)?r:t,l=V(o),f=l.length;for(let c=0;c<f;++c)s.push(l[c]);return this},modify(o,s,l){const f={field:s,value:ot(l)};return ee(o)?(f.filter=o,i.push(f)):(f.tuple=o,n.push(f)),this},encode(o,s){return ee(o)?i.push({filter:o,field:s}):n.push({tuple:o,field:s}),this},clean(o){return a=o,this},reflow(){return u=!0,this},pulse(o,s){const l={},f={};let c,h,d,g,p,m;for(c=0,h=s.length;c<h;++c)l[Y(s[c])]=1;for(c=0,h=t.length;c<h;++c)p=t[c],l[Y(p)]=-1;for(c=0,h=r.length;c<h;++c)g=r[c],s.forEach(v=>{g(v)&&(l[Y(v)]=-1)});for(c=0,h=e.length;c<h;++c)p=e[c],m=Y(p),l[m]?l[m]=1:o.add.push(ge(e[c]));for(c=0,h=s.length;c<h;++c)p=s[c],l[Y(p)]<0&&o.rem.push(p);function y(v,x,b){b?v[x]=b(v):o.encode=x,u||(f[Y(v)]=v)}for(c=0,h=n.length;c<h;++c)d=n[c],p=d.tuple,g=d.field,m=l[Y(p)],m>0&&(y(p,g,d.value),o.modifies(g));for(c=0,h=i.length;c<h;++c)d=i[c],g=d.filter,s.forEach(v=>{g(v)&&l[Y(v)]>0&&y(v,d.field,d.value)}),o.modifies(d.field);if(u)o.mod=t.length||r.length?s.filter(v=>l[Y(v)]>0):s.slice();else for(m in f)o.mod.push(f[m]);return(a||a==null&&(t.length||r.length))&&o.clean(!0),o}}}const cs="_:mod:_";function hf(){Object.defineProperty(this,cs,{writable:!0,value:{}})}hf.prototype={set(e,t,n,r){const i=this,a=i[e],u=i[cs];return t!=null&&t>=0?(a[t]!==n||r)&&(a[t]=n,u[t+":"+e]=-1,u[e]=-1):(a!==n||r)&&(i[e]=n,u[e]=j(n)?1+n.length:-1),i},modified(e,t){const n=this[cs];if(arguments.length){if(j(e)){for(let r=0;r<e.length;++r)if(n[e[r]])return!0;return!1}}else{for(const r in n)if(n[r])return!0;return!1}return t!=null&&t>=0?t+1<n[e]||!!n[t+":"+e]:!!n[e]},clear(){return this[cs]={},this}};let c9=0;const h9="pulse",d9=new hf,g9=1,p9=2;function xe(e,t,n,r){this.id=++c9,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 Qm(e){return function(t){const n=this.flags;return arguments.length===0?!!(n&e):(this.flags=t?n|e:n&~e,this)}}xe.prototype={targets(){return this._targets||(this._targets=lf(io))},set(e){return this.value!==e?(this.value=e,1):0},skip:Qm(g9),modified:Qm(p9),parameters(e,t,n){t=t!==!1;const r=this._argval=this._argval||new hf,i=this._argops=this._argops||[],a=[];let u,o,s,l;const f=(c,h,d)=>{d instanceof xe?(d!==this&&(t&&d.targets().add(this),a.push(d)),i.push({op:d,name:c,index:h})):r.set(c,h,d)};for(u in e)if(o=e[u],u===h9)V(o).forEach(c=>{c instanceof xe?c!==this&&(c.targets().add(this),a.push(c)):$("Pulse parameters must be operator instances.")}),this.source=o;else if(j(o))for(r.set(u,-1,Array(s=o.length)),l=0;l<s;++l)f(u,l,o[l]);else f(u,-1,o);return this.marshall().clear(),n&&(i.initonly=!0),a},marshall(e){const t=this._argval||d9,n=this._argops;let r,i,a,u;if(n){const o=n.length;for(i=0;i<o;++i)r=n[i],a=r.op,u=a.modified()&&a.stamp===e,t.set(r.name,r.index,a.value,u);if(n.initonly){for(i=0;i<o;++i)r=n[i],r.op.targets().remove(this);this._argops=null,this._update=null}}return t},detach(){const e=this._argops;let 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){const t=this._update;if(t){const 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 m9(e,t,n,r){let i=1,a;return e instanceof xe?a=e:e&&e.prototype instanceof xe?a=new e:ee(e)?a=new xe(null,e):(i=0,a=new xe(e,t)),this.rank(a),i&&(r=n,n=t),n&&this.connect(a,a.parameters(n,r)),this.touch(a),a}function y9(e,t){const n=e.rank,r=t.length;for(let i=0;i<r;++i)if(n<t[i].rank){this.rerank(e);return}}let v9=0;function df(e,t,n){this.id=++v9,this.value=null,n&&(this.receive=n),e&&(this._filter=e),t&&(this._apply=t)}function pr(e,t,n){return new df(e,t,n)}df.prototype={_filter:rn,_apply:Et,targets(){return this._targets||(this._targets=lf(io))},consume(e){return arguments.length?(this._consume=!!e,this):!!this._consume},receive(e){if(this._filter(e)){const t=this.value=this._apply(e),n=this._targets,r=n?n.length:0;for(let i=0;i<r;++i)n[i].receive(t);this._consume&&(e.preventDefault(),e.stopPropagation())}},filter(e){const t=pr(e);return this.targets().add(t),t},apply(e){const t=pr(null,e);return this.targets().add(t),t},merge(){const e=pr();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(()=>{const n=Date.now();return n-t>e?(t=n,1):0})},debounce(e){const t=pr();return this.targets().add(pr(null,null,Ad(e,n=>{const r=n.dataflow;t.receive(n),r&&r.run&&r.run()}))),t},between(e,t){let n=!1;return e.targets().add(pr(null,null,()=>n=!0)),t.targets().add(pr(null,null,()=>n=!1)),this.filter(()=>n)},detach(){this._filter=rn,this._targets=null}};function x9(e,t,n,r){const i=this,a=pr(n,r),u=function(l){l.dataflow=i;try{a.receive(l)}catch(f){i.error(f)}finally{i.run()}};let o;typeof e=="string"&&typeof document<"u"?o=document.querySelectorAll(e):o=V(e);const s=o.length;for(let l=0;l<s;++l)o[l].addEventListener(t,u);return a}function b9(e,t){const n=this.locale();return eA(e,t,n.timeParse,n.utcParse)}function A9(e,t,n){return t=this.parse(t,n),this.pulse(e,this.changeset().insert(t))}async function E9(e,t){const n=this;let r=0,i;try{i=await n.loader().load(e,{context:"dataflow",response:Jb(t&&t.type)});try{i=n.parse(i,t)}catch(a){r=-2,n.warn("Data ingestion failed",e,a)}}catch(a){r=-1,n.warn("Loading failed",e,a)}return{data:i,status:r}}async function w9(e,t,n){const r=this,i=r._pending||C9(r);i.requests+=1;const a=await r.request(t,n);return r.pulse(e,r.changeset().remove(rn).insert(a.data||[])),i.done(),a}function C9(e){let t;const n=new Promise(r=>t=r);return n.requests=0,n.done=()=>{--n.requests===0&&(e._pending=null,t(e))},e._pending=n}const D9={skip:!0};function F9(e,t,n,r,i){return(e instanceof xe?M9:k9)(this,e,t,n,r,i),this}function k9(e,t,n,r,i,a){const u=te({},a,D9);let o,s;ee(n)||(n=ot(n)),r===void 0?o=l=>e.touch(n(l)):ee(r)?(s=new xe(null,r,i,!1),o=l=>{s.evaluate(l);const f=n(l),c=s.value;iA(c)?e.pulse(f,c,a):e.update(f,c,u)}):o=l=>e.update(n(l),r,u),t.apply(o)}function M9(e,t,n,r,i,a){if(r===void 0)t.targets().add(n);else{const u=a||{},o=new xe(null,S9(n,r),i,!1);o.modified(u.force),o.rank=t.rank,t.targets().add(o),n&&(o.skip(!0),o.value=n.value,o.targets().add(n),e.connect(n,[o]))}}function S9(e,t){return t=ee(t)?t:ot(t),e?function(n,r){const i=t(n,r);return e.skip()||(e.skip(i!==this.value).value=i),i}:t}function $9(e){e.rank=++this._rank}function B9(e){const t=[e];let 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&&$("Cycle detected in dataflow graph.")}const hl={},Fn=1,vr=2,Xn=4,_9=Fn|vr,Jm=Fn|Xn,Oi=Fn|vr|Xn,ey=8,Na=16,ty=32,ny=64;function Rr(e,t,n){this.dataflow=e,this.stamp=t??-1,this.add=[],this.rem=[],this.mod=[],this.fields=null,this.encode=n||null}function Sc(e,t){const n=[];return yr(e,t,r=>n.push(r)),n}function ry(e,t){const n={};return e.visit(t,r=>{n[Y(r)]=1}),r=>n[Y(r)]?null:r}function Go(e,t){return e?(n,r)=>e(n,r)&&t(n,r):t}Rr.prototype={StopPropagation:hl,ADD:Fn,REM:vr,MOD:Xn,ADD_REM:_9,ADD_MOD:Jm,ALL:Oi,REFLOW:ey,SOURCE:Na,NO_SOURCE:ty,NO_FIELDS:ny,fork(e){return new Rr(this.dataflow).init(this,e)},clone(){const e=this.fork(Oi);return e.add=e.add.slice(),e.rem=e.rem.slice(),e.mod=e.mod.slice(),e.source&&(e.source=e.source.slice()),e.materialize(Oi|Na)},addAll(){let e=this;return!e.source||e.add===e.rem||!e.rem.length&&e.source.length===e.add.length||(e=new Rr(this.dataflow).init(this),e.add=e.source,e.rem=[]),e},init(e,t){const n=this;return n.stamp=e.stamp,n.encode=e.encode,e.fields&&!(t&ny)&&(n.fields=e.fields),t&Fn?(n.addF=e.addF,n.add=e.add):(n.addF=null,n.add=[]),t&vr?(n.remF=e.remF,n.rem=e.rem):(n.remF=null,n.rem=[]),t&Xn?(n.modF=e.modF,n.mod=e.mod):(n.modF=null,n.mod=[]),t&ty?(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){const t=e||Oi;return t&Fn&&this.add.length||t&vr&&this.rem.length||t&Xn&&this.mod.length},reflow(e){if(e)return this.fork(Oi).reflow();const t=this.add.length,n=this.source&&this.source.length;return n&&n!==t&&(this.mod=this.source,t&&this.filter(Xn,ry(this,Fn))),this},clean(e){return arguments.length?(this.cleans=!!e,this):this.cleans},modifies(e){const t=this.fields||(this.fields={});return j(e)?e.forEach(n=>t[n]=!0):t[e]=!0,this},modified(e,t){const n=this.fields;return(t||this.mod.length)&&n?arguments.length?j(e)?e.some(r=>n[r]):n[e]:!!n:!1},filter(e,t){const n=this;return e&Fn&&(n.addF=Go(n.addF,t)),e&vr&&(n.remF=Go(n.remF,t)),e&Xn&&(n.modF=Go(n.modF,t)),e&Na&&(n.srcF=Go(n.srcF,t)),n},materialize(e){e=e||Oi;const t=this;return e&Fn&&t.addF&&(t.add=Sc(t.add,t.addF),t.addF=null),e&vr&&t.remF&&(t.rem=Sc(t.rem,t.remF),t.remF=null),e&Xn&&t.modF&&(t.mod=Sc(t.mod,t.modF),t.modF=null),e&Na&&t.srcF&&(t.source=t.source.filter(t.srcF),t.srcF=null),t},visit(e,t){const n=this,r=t;if(e&Na)return yr(n.source,n.srcF,r),n;e&Fn&&yr(n.add,n.addF,r),e&vr&&yr(n.rem,n.remF,r),e&Xn&&yr(n.mod,n.modF,r);const i=n.source;if(e&ey&&i){const a=n.add.length+n.mod.length;a===i.length||(a?yr(i,ry(n,Jm),r):yr(i,n.srcF,r))}return n}};function Od(e,t,n,r){const i=this;let a=0;this.dataflow=e,this.stamp=t,this.fields=null,this.encode=r||null,this.pulses=n;for(const u of n)if(u.stamp===t){if(u.fields){const o=i.fields||(i.fields={});for(const s in u.fields)o[s]=1}u.changed(i.ADD)&&(a|=i.ADD),u.changed(i.REM)&&(a|=i.REM),u.changed(i.MOD)&&(a|=i.MOD)}this.changes=a}L(Od,Rr,{fork(e){const t=new Rr(this.dataflow).init(this,e&this.NO_FIELDS);return e!==void 0&&(e&t.ADD&&this.visit(t.ADD,n=>t.add.push(n)),e&t.REM&&this.visit(t.REM,n=>t.rem.push(n)),e&t.MOD&&this.visit(t.MOD,n=>t.mod.push(n))),t},changed(e){return this.changes&e},modified(e){const t=this,n=t.fields;return n&&t.changes&t.MOD?j(e)?e.some(r=>n[r]):n[e]:0},filter(){$("MultiPulse does not support filtering.")},materialize(){$("MultiPulse does not support materialization.")},visit(e,t){const n=this,r=n.pulses,i=r.length;let 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 R9(e,t,n){const r=this,i=[];if(r._pulse)return aA(r);if(r._pending&&await r._pending,t&&await fs(r,t),!r._touched.length)return r.debug("Dataflow invoked, but nothing to do."),r;const a=++r._clock;r._pulse=new Rr(r,a,e),r._touched.forEach(f=>r._enqueue(f,!0)),r._touched=lf(io);let u=0,o,s,l;try{for(;r._heap.size()>0;){if(o=r._heap.pop(),o.rank!==o.qrank){r._enqueue(o,!0);continue}s=o.run(r._getPulse(o,e)),s.then?s=await s:s.async&&(i.push(s.async),s=hl),s!==hl&&o._targets&&o._targets.forEach(f=>r._enqueue(f)),++u}}catch(f){r._heap.clear(),l=f}if(r._input={},r._pulse=null,r.debug(`Pulse ${a}: ${u} operators`),l&&(r._postrun=[],r.error(l)),r._postrun.length){const f=r._postrun.sort((c,h)=>h.priority-c.priority);r._postrun=[];for(let c=0;c<f.length;++c)await fs(r,f[c].callback)}return n&&await fs(r,n),i.length&&Promise.all(i).then(f=>r.runAsync(null,()=>{f.forEach(c=>{try{c(r)}catch(h){r.error(h)}})})),r}async function T9(e,t,n){for(;this._running;)await this._running;const r=()=>this._running=null;return(this._running=this.evaluate(e,t,n)).then(r,r),this._running}function O9(e,t,n){return this._pulse?aA(this):(this.evaluate(e,t,n),this)}function z9(e,t,n){if(this._pulse||t)this._postrun.push({priority:n||0,callback:e});else try{e(this)}catch(r){this.error(r)}}function aA(e){return e.error("Dataflow already running. Use runAsync() to chain invocations."),e}function L9(e,t){const n=e.stamp<this._clock;n&&(e.stamp=this._clock),(n||t)&&(e.qrank=e.rank,this._heap.push(e))}function N9(e,t){const n=e.source,r=this._clock;return n&&j(n)?new Od(this,r,n.map(i=>i.pulse),t):this._input[e.id]||P9(this._pulse,n&&n.pulse)}function P9(e,t){return t&&t.stamp===e.stamp?t:(e=e.fork(),t&&t!==hl&&(e.source=t.source),e)}const zd={skip:!1,force:!1};function I9(e,t){const n=t||zd;return this._pulse?this._enqueue(e):this._touched.add(e),n.skip&&e.skip(!0),this}function U9(e,t,n){const r=n||zd;return(e.set(t)||r.force)&&this.touch(e,r),this}function q9(e,t,n){this.touch(e,n||zd);const r=new Rr(this,this._clock+(this._pulse?0:1)),i=e.pulse&&e.pulse.source||[];return r.target=e,this._input[e.id]=t.pulse(r,i),this}function j9(e){let t=[];return{clear:()=>t=[],size:()=>t.length,peek:()=>t[0],push:n=>(t.push(n),uA(t,0,t.length-1,e)),pop:()=>{const n=t.pop();let r;return t.length?(r=t[0],t[0]=n,W9(t,0,e)):r=n,r}}}function uA(e,t,n,r){let i,a;const u=e[n];for(;n>t;){if(a=n-1>>1,i=e[a],r(u,i)<0){e[n]=i,n=a;continue}break}return e[n]=u}function W9(e,t,n){const r=t,i=e.length,a=e[t];let u=(t<<1)+1,o;for(;u<i;)o=u+1,o<i&&n(e[u],e[o])>=0&&(u=o),e[t]=e[u],t=u,u=(t<<1)+1;return e[t]=a,uA(e,r,t,n)}function Zi(){this.logger(eb()),this.logLevel(pd),this._clock=0,this._rank=0,this._locale=$d();try{this._loader=sf()}catch{}this._touched=lf(io),this._input={},this._pulse=null,this._heap=j9((e,t)=>e.qrank-t.qrank),this._postrun=[]}function Pa(e){return function(){return this._log[e].apply(this,arguments)}}Zi.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:Pa("error"),warn:Pa("warn"),info:Pa("info"),debug:Pa("debug"),logLevel:Pa("level"),cleanThreshold:1e4,add:m9,connect:y9,rank:$9,rerank:B9,pulse:q9,touch:I9,update:U9,changeset:Di,ingest:A9,parse:b9,preload:w9,request:E9,events:x9,on:F9,evaluate:R9,run:O9,runAsync:T9,runAfter:z9,_enqueue:L9,_getPulse:N9};function S(e,t){xe.call(this,e,null,t)}L(S,xe,{run(e){if(e.stamp<this.stamp)return e.StopPropagation;let t;return this.skip()?this.skip(!1):t=this.evaluate(e),t=t||e,t.then?t=t.then(n=>this.pulse=n):t!==e.StopPropagation&&(this.pulse=t),t},evaluate(e){const t=this.marshall(e.stamp),n=this.transform(t,e);return t.clear(),n},transform(){}});const ua={};function oA(e){const t=sA(e);return t&&t.Definition||null}function sA(e){return e=e&&e.toLowerCase(),Z(ua,e)?ua[e]:null}function*lA(e,t){if(t==null)for(let n of e)n!=null&&n!==""&&(n=+n)>=n&&(yield n);else{let n=-1;for(let r of e)r=t(r,++n,e),r!=null&&r!==""&&(r=+r)>=r&&(yield r)}}function Ld(e,t,n){const r=Float64Array.from(lA(e,n));return r.sort($u),t.map(i=>fv(r,i))}function Nd(e,t){return Ld(e,[.25,.5,.75],t)}function Pd(e,t){const n=e.length,r=OD(e,t),i=Nd(e,t),a=(i[2]-i[0])/1.34;return 1.06*(Math.min(r,a)||r||Math.abs(i[0])||1)*Math.pow(n,-.2)}function fA(e){const t=e.maxbins||20,n=e.base||10,r=Math.log(n),i=e.divide||[5,2];let a=e.extent[0],u=e.extent[1],o,s,l,f,c,h;const d=e.span||u-a||Math.abs(a)||1;if(e.step)o=e.step;else if(e.steps){for(f=d/t,c=0,h=e.steps.length;c<h&&e.steps[c]<f;++c);o=e.steps[Math.max(0,c-1)]}else{for(s=Math.ceil(Math.log(t)/r),l=e.minstep||0,o=Math.max(l,Math.pow(n,Math.round(Math.log(d)/r)-s));Math.ceil(d/o)>t;)o*=n;for(c=0,h=i.length;c<h;++c)f=o/i[c],f>=l&&d/f<=t&&(o=f)}f=Math.log(o);const g=f>=0?0:~~(-f/r)+1,p=Math.pow(n,-g-1);return(e.nice||e.nice===void 0)&&(f=Math.floor(a/o+p)*o,a=a<f?f-o:f,u=Math.ceil(u/o)*o),{start:a,stop:u===a?a+o:u,step:o}}var un=Math.random;function Y9(e){un=e}function cA(e,t,n,r){if(!e.length)return[void 0,void 0];const i=Float64Array.from(lA(e,r)),a=i.length,u=t;let o,s,l,f;for(l=0,f=Array(u);l<u;++l){for(o=0,s=0;s<a;++s)o+=i[~~(un()*a)];f[l]=o/a}return f.sort($u),[hh(f,n/2),hh(f,1-n/2)]}function hA(e,t,n,r){r=r||(h=>h);const i=e.length,a=new Float64Array(i);let u=0,o=1,s=r(e[0]),l=s,f=s+t,c;for(;o<i;++o){if(c=r(e[o]),c>=f){for(l=(s+l)/2;u<o;++u)a[u]=l;f=c+t,s=c}l=c}for(l=(s+l)/2;u<o;++u)a[u]=l;return n?H9(a,t+t/4):a}function H9(e,t){const n=e.length;let r=0,i=1,a,u;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(u=i+(r+a-i-i>>1);u<i;)e[u++]=e[i];for(;u>i;)e[u--]=e[r]}r=i,i=a}return e}function G9(e){return function(){return e=(1103515245*e+12345)%2147483647,e/2147483647}}function V9(e,t){t==null&&(t=e,e=0);let n,r,i;const a={min(u){return arguments.length?(n=u||0,i=r-n,a):n},max(u){return arguments.length?(r=u||0,i=r-n,a):r},sample(){return n+Math.floor(i*un())},pdf(u){return u===Math.floor(u)&&u>=n&&u<r?1/i:0},cdf(u){const o=Math.floor(u);return o<n?0:o>=r?1:(o-n+1)/i},icdf(u){return u>=0&&u<=1?n-1+Math.floor(u*i):NaN}};return a.min(e).max(t)}const dA=Math.sqrt(2*Math.PI),X9=Math.SQRT2;let Ia=NaN;function gf(e,t){e=e||0,t=t??1;let n=0,r=0,i,a;if(Ia===Ia)n=Ia,Ia=NaN;else{do n=un()*2-1,r=un()*2-1,i=n*n+r*r;while(i===0||i>1);a=Math.sqrt(-2*Math.log(i)/i),n*=a,Ia=r*a}return e+n*t}function Id(e,t,n){n=n??1;const r=(e-(t||0))/n;return Math.exp(-.5*r*r)/(n*dA)}function pf(e,t,n){t=t||0,n=n??1;const r=(e-t)/n,i=Math.abs(r);let a;if(i>37)a=0;else{const u=Math.exp(-i*i/2);let o;i<7.07106781186547?(o=.0352624965998911*i+.700383064443688,o=o*i+6.37396220353165,o=o*i+33.912866078383,o=o*i+112.079291497871,o=o*i+221.213596169931,o=o*i+220.206867912376,a=u*o,o=.0883883476483184*i+1.75566716318264,o=o*i+16.064177579207,o=o*i+86.7807322029461,o=o*i+296.564248779674,o=o*i+637.333633378831,o=o*i+793.826512519948,o=o*i+440.413735824752,a=a/o):(o=i+.65,o=i+4/o,o=i+3/o,o=i+2/o,o=i+1/o,a=u/o/2.506628274631)}return r>0?1-a:a}function mf(e,t,n){return e<0||e>1?NaN:(t||0)+(n??1)*X9*K9(2*e-1)}function K9(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=10512122733215323e-25+n*t,n=-4112633980346984e-24+n*t,n=-29070369957882005e-24+n*t,n=42347877827932404e-23+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=22137376921775787e-25,n=9075656193888539e-23+n*t,n=-27517406297064545e-23+n*t,n=18239629214389228e-24+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=15076572693500548e-25+n*t,n=-3789465440126737e-24+n*t,n=761570120807834e-23+n*t,n=-1496002662714924e-23+n*t,n=2914795345090108e-23+n*t,n=-6771199775845234e-23+n*t,n=22900482228026655e-23+n*t,n=-99298272942317e-20+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 Ud(e,t){let n,r;const i={mean(a){return arguments.length?(n=a||0,i):n},stdev(a){return arguments.length?(r=a??1,i):r},sample:()=>gf(n,r),pdf:a=>Id(a,n,r),cdf:a=>pf(a,n,r),icdf:a=>mf(a,n,r)};return i.mean(e).stdev(t)}function qd(e,t){const n=Ud();let r=0;const i={data(a){return arguments.length?(e=a,r=a?a.length:0,i.bandwidth(t)):e},bandwidth(a){return arguments.length?(t=a,!t&&e&&(t=Pd(e)),i):t},sample(){return e[~~(un()*r)]+t*n.sample()},pdf(a){let u=0,o=0;for(;o<r;++o)u+=n.pdf((a-e[o])/t);return u/t/r},cdf(a){let u=0,o=0;for(;o<r;++o)u+=n.cdf((a-e[o])/t);return u/r},icdf(){throw Error("KDE icdf not supported.")}};return i.data(e)}function jd(e,t){return e=e||0,t=t??1,Math.exp(e+gf()*t)}function Wd(e,t,n){if(e<=0)return 0;t=t||0,n=n??1;const r=(Math.log(e)-t)/n;return Math.exp(-.5*r*r)/(n*dA*e)}function Yd(e,t,n){return pf(Math.log(e),t,n)}function Hd(e,t,n){return Math.exp(mf(e,t,n))}function gA(e,t){let n,r;const i={mean(a){return arguments.length?(n=a||0,i):n},stdev(a){return arguments.length?(r=a??1,i):r},sample:()=>jd(n,r),pdf:a=>Wd(a,n,r),cdf:a=>Yd(a,n,r),icdf:a=>Hd(a,n,r)};return i.mean(e).stdev(t)}function pA(e,t){let n=0,r;function i(u){const o=[];let s=0,l;for(l=0;l<n;++l)s+=o[l]=u[l]==null?1:+u[l];for(l=0;l<n;++l)o[l]/=s;return o}const a={weights(u){return arguments.length?(r=i(t=u||[]),a):t},distributions(u){return arguments.length?(u?(n=u.length,e=u):(n=0,e=[]),a.weights(t)):e},sample(){const u=un();let o=e[n-1],s=r[0],l=0;for(;l<n-1;s+=r[++l])if(u<s){o=e[l];break}return o.sample()},pdf(u){let o=0,s=0;for(;s<n;++s)o+=r[s]*e[s].pdf(u);return o},cdf(u){let o=0,s=0;for(;s<n;++s)o+=r[s]*e[s].cdf(u);return o},icdf(){throw Error("Mixture icdf not supported.")}};return a.distributions(e).weights(t)}function Gd(e,t){return t==null&&(t=e??1,e=0),e+(t-e)*un()}function Vd(e,t,n){return n==null&&(n=t??1,t=0),e>=t&&e<=n?1/(n-t):0}function Xd(e,t,n){return n==null&&(n=t??1,t=0),e<t?0:e>n?1:(e-t)/(n-t)}function Kd(e,t,n){return n==null&&(n=t??1,t=0),e>=0&&e<=1?t+e*(n-t):NaN}function mA(e,t){let n,r;const i={min(a){return arguments.length?(n=a||0,i):n},max(a){return arguments.length?(r=a??1,i):r},sample:()=>Gd(n,r),pdf:a=>Vd(a,n,r),cdf:a=>Xd(a,n,r),icdf:a=>Kd(a,n,r)};return t==null&&(t=e??1,e=0),i.min(e).max(t)}function Zd(e,t,n){let r=0,i=0;for(const a of e){const u=n(a);t(a)==null||u==null||isNaN(u)||(r+=(u-r)/++i)}return{coef:[r],predict:()=>r,rSquared:0}}function oo(e,t,n,r){const i=r-e*e,a=Math.abs(i)<1e-24?0:(n-e*t)/i;return[t-a*e,a]}function yf(e,t,n,r){e=e.filter(d=>{let g=t(d),p=n(d);return g!=null&&(g=+g)>=g&&p!=null&&(p=+p)>=p}),r&&e.sort((d,g)=>t(d)-t(g));const i=e.length,a=new Float64Array(i),u=new Float64Array(i);let o=0,s=0,l=0,f,c,h;for(h of e)a[o]=f=+t(h),u[o]=c=+n(h),++o,s+=(f-s)/o,l+=(c-l)/o;for(o=0;o<i;++o)a[o]-=s,u[o]-=l;return[a,u,s,l]}function so(e,t,n,r){let i=-1,a,u;for(const o of e)a=t(o),u=n(o),a!=null&&(a=+a)>=a&&u!=null&&(u=+u)>=u&&r(a,u,++i)}function Da(e,t,n,r,i){let a=0,u=0;return so(e,t,n,(o,s)=>{const l=s-i(o),f=s-r;a+=l*l,u+=f*f}),1-a/u}function Qd(e,t,n){let r=0,i=0,a=0,u=0,o=0;so(e,t,n,(f,c)=>{++o,r+=(f-r)/o,i+=(c-i)/o,a+=(f*c-a)/o,u+=(f*f-u)/o});const s=oo(r,i,a,u),l=f=>s[0]+s[1]*f;return{coef:s,predict:l,rSquared:Da(e,t,n,i,l)}}function yA(e,t,n){let r=0,i=0,a=0,u=0,o=0;so(e,t,n,(f,c)=>{++o,f=Math.log(f),r+=(f-r)/o,i+=(c-i)/o,a+=(f*c-a)/o,u+=(f*f-u)/o});const s=oo(r,i,a,u),l=f=>s[0]+s[1]*Math.log(f);return{coef:s,predict:l,rSquared:Da(e,t,n,i,l)}}function vA(e,t,n){const[r,i,a,u]=yf(e,t,n);let o=0,s=0,l=0,f=0,c=0,h,d,g;so(e,t,n,(v,x)=>{h=r[c++],d=Math.log(x),g=h*x,o+=(x*d-o)/c,s+=(g-s)/c,l+=(g*d-l)/c,f+=(h*g-f)/c});const[p,m]=oo(s/u,o/u,l/u,f/u),y=v=>Math.exp(p+m*(v-a));return{coef:[Math.exp(p-m*a),m],predict:y,rSquared:Da(e,t,n,u,y)}}function xA(e,t,n){let r=0,i=0,a=0,u=0,o=0,s=0;so(e,t,n,(c,h)=>{const d=Math.log(c),g=Math.log(h);++s,r+=(d-r)/s,i+=(g-i)/s,a+=(d*g-a)/s,u+=(d*d-u)/s,o+=(h-o)/s});const l=oo(r,i,a,u),f=c=>l[0]*Math.pow(c,l[1]);return l[0]=Math.exp(l[0]),{coef:l,predict:f,rSquared:Da(e,t,n,o,f)}}function Jd(e,t,n){const[r,i,a,u]=yf(e,t,n),o=r.length;let s=0,l=0,f=0,c=0,h=0,d,g,p,m;for(d=0;d<o;)g=r[d],p=i[d++],m=g*g,s+=(m-s)/d,l+=(m*g-l)/d,f+=(m*m-f)/d,c+=(g*p-c)/d,h+=(m*p-h)/d;const y=f-s*s,v=s*y-l*l,x=(h*s-c*l)/v,b=(c*y-h*l)/v,E=-x*s,w=A=>(A=A-a,x*A*A+b*A+E+u);return{coef:[E-b*a+x*a*a+u,b-2*x*a,x],predict:w,rSquared:Da(e,t,n,u,w)}}function bA(e,t,n,r){if(r===0)return Zd(e,t,n);if(r===1)return Qd(e,t,n);if(r===2)return Jd(e,t,n);const[i,a,u,o]=yf(e,t,n),s=i.length,l=[],f=[],c=r+1;let h,d,g,p,m;for(h=0;h<c;++h){for(g=0,p=0;g<s;++g)p+=Math.pow(i[g],h)*a[g];for(l.push(p),m=new Float64Array(c),d=0;d<c;++d){for(g=0,p=0;g<s;++g)p+=Math.pow(i[g],h+d);m[d]=p}f.push(m)}f.push(l);const y=Q9(f),v=x=>{x-=u;let b=o+y[0]+y[1]*x+y[2]*x*x;for(h=3;h<c;++h)b+=y[h]*Math.pow(x,h);return b};return{coef:Z9(c,y,-u,o),predict:v,rSquared:Da(e,t,n,o,v)}}function Z9(e,t,n,r){const i=Array(e);let a,u,o,s;for(a=0;a<e;++a)i[a]=0;for(a=e-1;a>=0;--a)for(o=t[a],s=1,i[a]+=o,u=1;u<=a;++u)s*=(a+1-u)/u,i[a-u]+=o*Math.pow(n,u)*s;return i[0]+=r,i}function Q9(e){const t=e.length-1,n=[];let r,i,a,u,o;for(r=0;r<t;++r){for(u=r,i=r+1;i<t;++i)Math.abs(e[r][i])>Math.abs(e[r][u])&&(u=i);for(a=r;a<t+1;++a)o=e[a][r],e[a][r]=e[a][u],e[a][u]=o;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(o=0,a=i+1;a<t;++a)o+=e[a][i]*n[a];n[i]=(e[t][i]-o)/e[i][i]}return n}const iy=2,ay=1e-12;function AA(e,t,n,r){const[i,a,u,o]=yf(e,t,n,!0),s=i.length,l=Math.max(2,~~(r*s)),f=new Float64Array(s),c=new Float64Array(s),h=new Float64Array(s).fill(1);for(let d=-1;++d<=iy;){const g=[0,l-1];for(let m=0;m<s;++m){const y=i[m],v=g[0],x=g[1],b=y-i[v]>i[x]-y?v:x;let E=0,w=0,A=0,C=0,F=0;const D=1/Math.abs(i[b]-y||1);for(let T=v;T<=x;++T){const N=i[T],M=a[T],O=J9(Math.abs(y-N)*D)*h[T],P=N*O;E+=O,w+=P,A+=M*O,C+=M*P,F+=N*P}const[k,R]=oo(w/E,A/E,C/E,F/E);f[m]=k+R*y,c[m]=Math.abs(a[m]-f[m]),e7(i,m+1,g)}if(d===iy)break;const p=cv(c);if(Math.abs(p)<ay)break;for(let m=0,y,v;m<s;++m)y=c[m]/(6*p),h[m]=y>=1?ay:(v=1-y*y)*v}return t7(i,f,u,o)}function J9(e){return(e=1-e*e*e)*e*e}function e7(e,t,n){const r=e[t];let 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 t7(e,t,n,r){const i=e.length,a=[];let u=0,o=0,s=[],l;for(;u<i;++u)l=e[u]+n,s[0]===l?s[1]+=(t[u]-s[1])/++o:(o=0,s[1]+=r,s=[l,t[u]],a.push(s));return s[1]+=r,a}const n7=.5*Math.PI/180;function vf(e,t,n,r){n=n||25,r=Math.max(n,r||200);const i=p=>[p,e(p)],a=t[0],u=t[1],o=u-a,s=o/r,l=[i(a)],f=[];if(n===r){for(let p=1;p<r;++p)l.push(i(a+p/n*o));return l.push(i(u)),l}else{f.push(i(u));for(let p=n;--p>0;)f.push(i(a+p/n*o))}let c=l[0],h=f[f.length-1];const d=1/o,g=r7(c[1],f);for(;h;){const p=i((c[0]+h[0])/2);p[0]-c[0]>=s&&i7(c,p,h,d,g)>n7?f.push(p):(c=h,l.push(h),f.pop()),h=f[f.length-1]}return l}function r7(e,t){let n=e,r=e;const i=t.length;for(let a=0;a<i;++a){const u=t[a][1];u<n&&(n=u),u>r&&(r=u)}return 1/(r-n)}function i7(e,t,n,r,i){const a=Math.atan2(i*(n[1]-e[1]),r*(n[0]-e[0])),u=Math.atan2(i*(t[1]-e[1]),r*(t[0]-e[0]));return Math.abs(a-u)}function a7(e){return t=>{const n=e.length;let r=1,i=String(e[0](t));for(;r<n;++r)i+="|"+e[r](t);return i}}function Hh(e){return!e||!e.length?function(){return""}:e.length===1?e[0]:a7(e)}function EA(e,t,n){return n||e+(t?"_"+t:"")}const $c=()=>{},u7={init:$c,add:$c,rem:$c,idx:0},Lu={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}},lo=Object.keys(Lu).filter(e=>e!=="__count__");function o7(e,t){return(n,r)=>te({name:e,aggregate_param:r,out:n||e},u7,t)}[...lo,"__count__"].forEach(e=>{Lu[e]=o7(e,Lu[e])});function wA(e,t,n){return Lu[e](n,t)}function CA(e,t){return e.idx-t.idx}function s7(e){const t={};e.forEach(r=>t[r.name]=r);const n=r=>{r.req&&r.req.forEach(i=>{t[i]||n(t[i]=Lu[i]())})};return e.forEach(n),Object.values(t).sort(CA)}function l7(){this.valid=0,this.missing=0,this._ops.forEach(e=>e.aggregate_param==null?e.init(this):e.init(this,e.aggregate_param))}function f7(e,t){if(e==null||e===""){++this.missing;return}e===e&&(++this.valid,this._ops.forEach(n=>n.add(this,e,t)))}function c7(e,t){if(e==null||e===""){--this.missing;return}e===e&&(--this.valid,this._ops.forEach(n=>n.rem(this,e,t)))}function h7(e){return this._out.forEach(t=>e[t.out]=t.value(this)),e}function DA(e,t){const n=t||Et,r=s7(e),i=e.slice().sort(CA);function a(u){this._ops=r,this._out=i,this.cell=u,this.init()}return a.prototype.init=l7,a.prototype.add=f7,a.prototype.rem=c7,a.prototype.set=h7,a.prototype.get=n,a.fields=e.map(u=>u.out),a}function e1(e){this._key=e?nn(e):Y,this.reset()}const Ve=e1.prototype;Ve.reset=function(){this._add=[],this._rem=[],this._ext=null,this._get=null,this._q=null};Ve.add=function(e){this._add.push(e)};Ve.rem=function(e){this._rem.push(e)};Ve.values=function(){if(this._get=null,this._rem.length===0)return this._add;const e=this._add,t=this._rem,n=this._key,r=e.length,i=t.length,a=Array(r-i),u={};let o,s,l;for(o=0;o<i;++o)u[n(t[o])]=1;for(o=0,s=0;o<r;++o)u[n(l=e[o])]?u[n(l)]=0:a[s++]=l;return this._rem=[],this._add=a};Ve.distinct=function(e){const t=this.values(),n={};let r=t.length,i=0,a;for(;--r>=0;)a=e(t[r])+"",Z(n,a)||(n[a]=1,++i);return i};Ve.extent=function(e){if(this._get!==e||!this._ext){const t=this.values(),n=db(t,e);this._ext=[t[n[0]],t[n[1]]],this._get=e}return this._ext};Ve.argmin=function(e){return this.extent(e)[0]||{}};Ve.argmax=function(e){return this.extent(e)[1]||{}};Ve.min=function(e){const t=this.extent(e)[0];return t!=null?e(t):void 0};Ve.max=function(e){const t=this.extent(e)[1];return t!=null?e(t):void 0};Ve.quartile=function(e){return(this._get!==e||!this._q)&&(this._q=Nd(this.values(),e),this._get=e),this._q};Ve.q1=function(e){return this.quartile(e)[0]};Ve.q2=function(e){return this.quartile(e)[1]};Ve.q3=function(e){return this.quartile(e)[2]};Ve.ci=function(e){return(this._get!==e||!this._ci)&&(this._ci=cA(this.values(),1e3,.05,e),this._get=e),this._ci};Ve.ci0=function(e){return this.ci(e)[0]};Ve.ci1=function(e){return this.ci(e)[1]};function Lr(e){S.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}Lr.Definition={type:"Aggregate",metadata:{generates:!0,changes:!0},params:[{name:"groupby",type:"field",array:!0},{name:"ops",type:"enum",array:!0,values:lo},{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"}]};L(Lr,S,{transform(e,t){const 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,a=>n.add(a))):(n.value=n.value||n.init(e),t.visit(t.REM,a=>n.rem(a)),t.visit(t.ADD,a=>n.add(a))),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(){const e=this,t=e.value,n=e._dnames,r=n.map(()=>({})),i=n.length;function a(o){let s,l,f,c;for(s in o)for(f=o[s].tuple,l=0;l<i;++l)r[l][c=f[n[l]]]=c}a(e._prev),a(t);function u(o,s,l){const f=n[l],c=r[l++];for(const h in c){const d=o?o+"|"+h:h;s[f]=c[h],l<i?u(d,s,l):t[d]||e.cell(d,s)}}u("",{},0)},init(e){const t=this._inputs=[],n=this._outputs=[],r={};function i(v){const x=V(tt(v)),b=x.length;let E=0,w;for(;E<b;++E)r[w=x[E]]||(r[w]=1,t.push(w))}this._dims=V(e.groupby),this._dnames=this._dims.map(v=>{const x=Me(v);return i(v),n.push(x),x}),this.cellkey=e.key?e.key:Hh(this._dims),this._countOnly=!0,this._counts=[],this._measures=[];const a=e.fields||[null],u=e.ops||["count"],o=e.aggregate_params||[null],s=e.as||[],l=a.length,f={};let c,h,d,g,p,m,y;for(l!==u.length&&$("Unmatched number of fields and aggregate ops."),y=0;y<l;++y){if(c=a[y],h=u[y],d=o[y]||null,c==null&&h!=="count"&&$("Null aggregate field specified."),p=Me(c),m=EA(h,p,s[y]),n.push(m),h==="count"){this._counts.push(m);continue}g=f[p],g||(i(c),g=f[p]=[],g.field=c,this._measures.push(g)),h!=="count"&&(this._countOnly=!1),g.push(wA(h,d,m))}return this._measures=this._measures.map(v=>DA(v,v.field)),Object.create(null)},cellkey:Hh(),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){const n={key:e,num:0,agg:null,tuple:this.newtuple(t,this._prev&&this._prev[e]),stamp:this.stamp,store:!1};if(!this._countOnly){const r=this._measures,i=r.length;n.agg=Array(i);for(let a=0;a<i;++a)n.agg[a]=new r[a](n)}return n.store&&(n.data=new e1),n},newtuple(e,t){const n=this._dnames,r=this._dims,i=r.length,a={};for(let u=0;u<i;++u)a[n[u]]=r[u](e);return t?rA(t.tuple,a):ge(a)},clean(){const e=this.value;for(const t in e)e[t].num===0&&delete e[t]},add(e){const t=this.cellkey(e),n=this.cell(t,e);if(n.num+=1,this._countOnly)return;n.store&&n.data.add(e);const r=n.agg;for(let i=0,a=r.length;i<a;++i)r[i].add(r[i].get(e),e)},rem(e){const t=this.cellkey(e),n=this.cell(t,e);if(n.num-=1,this._countOnly)return;n.store&&n.data.rem(e);const r=n.agg;for(let i=0,a=r.length;i<a;++i)r[i].rem(r[i].get(e),e)},celltuple(e){const 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){const r=e.agg;for(let i=0,a=r.length;i<a;++i)r[i].set(t)}return t},changes(e){const t=this._adds,n=this._mods,r=this._prev,i=this._drop,a=e.add,u=e.rem,o=e.mod;let s,l,f,c;if(r)for(l in r)s=r[l],(!i||s.num)&&u.push(s.tuple);for(f=0,c=this._alen;f<c;++f)a.push(this.celltuple(t[f])),t[f]=null;for(f=0,c=this._mlen;f<c;++f)s=n[f],(s.num===0&&i?u:o).push(this.celltuple(s)),n[f]=null;return this._alen=this._mlen=0,this._prev=null,e}});const d7=1e-14;function t1(e){S.call(this,null,e)}t1.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"]}]};L(t1,S,{transform(e,t){const n=e.interval!==!1,r=this._bins(e),i=r.start,a=r.step,u=e.as||["bin0","bin1"],o=u[0],s=u[1];let l;return e.modified()?(t=t.reflow(!0),l=t.SOURCE):l=t.modified(tt(e.field))?t.ADD_MOD:t.ADD,t.visit(l,n?f=>{const c=r(f);f[o]=c,f[s]=c==null?null:i+a*(1+(c-i)/a)}:f=>f[o]=r(f)),t.modifies(n?u:o)},_bins(e){if(this.value&&!e.modified())return this.value;const t=e.field,n=fA(e),r=n.step;let i=n.start,a=i+Math.ceil((n.stop-i)/r)*r,u,o;(u=e.anchor)!=null&&(o=u-(i+r*Math.floor((u-i)/r)),i+=o,a+=o);const s=function(l){let f=et(t(l));return f==null?null:f<i?-1/0:f>a?1/0:(f=Math.max(i,Math.min(f,a-r)),i+r*Math.floor(d7+(f-i)/r))};return s.start=i,s.stop=n.stop,s.step=r,this.value=Tt(s,tt(t),e.name||"bin_"+Me(t))}});function FA(e,t,n){const r=e;let i=t||[],a=n||[],u={},o=0;return{add:s=>a.push(s),remove:s=>u[r(s)]=++o,size:()=>i.length,data:(s,l)=>(o&&(i=i.filter(f=>!u[r(f)]),u={},o=0),l&&s&&i.sort(s),a.length&&(i=s?xb(s,i,a.sort(s)):i.concat(a),a=[]),i)}}function n1(e){S.call(this,[],e)}n1.Definition={type:"Collect",metadata:{source:!0},params:[{name:"sort",type:"compare"}]};L(n1,S,{transform(e,t){const n=t.fork(t.ALL),r=FA(Y,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(Ci(i),a),t.source&&t.source.root&&(this.value.root=t.source.root),n}});function kA(e){xe.call(this,null,g7,e)}L(kA,xe);function g7(e){return this.value&&!e.modified()?this.value:bd(e.fields,e.orders)}function r1(e){S.call(this,null,e)}r1.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 p7(e,t,n){switch(t){case"upper":e=e.toUpperCase();break;case"lower":e=e.toLowerCase();break}return e.match(n)}L(r1,S,{transform(e,t){const n=c=>h=>{for(var d=p7(o(h),e.case,a)||[],g,p=0,m=d.length;p<m;++p)u.test(g=d[p])||c(g)},r=this._parameterCheck(e,t),i=this._counts,a=this._match,u=this._stop,o=e.field,s=e.as||["text","count"],l=n(c=>i[c]=1+(i[c]||0)),f=n(c=>i[c]-=1);return r?t.visit(t.SOURCE,l):(t.visit(t.ADD,l),t.visit(t.REM,f)),this._finish(t,s)},_parameterCheck(e,t){let n=!1;return(e.modified("stopwords")||!this._stop)&&(this._stop=new 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){const n=this._counts,r=this._tuples||(this._tuples={}),i=t[0],a=t[1],u=e.fork(e.NO_SOURCE|e.NO_FIELDS);let o,s,l;for(o in n)s=r[o],l=n[o]||0,!s&&l?(r[o]=s=ge({}),s[i]=o,s[a]=l,u.add.push(s)):l===0?(s&&u.rem.push(s),n[o]=null,r[o]=null):s[a]!==l&&(s[a]=l,u.mod.push(s));return u.modifies(t)}});function i1(e){S.call(this,null,e)}i1.Definition={type:"Cross",metadata:{generates:!0},params:[{name:"filter",type:"expr"},{name:"as",type:"string",array:!0,length:2,default:["a","b"]}]};L(i1,S,{transform(e,t){const n=t.fork(t.NO_SOURCE),r=e.as||["a","b"],i=r[0],a=r[1],u=!this.value||t.changed(t.ADD_REM)||e.modified("as")||e.modified("filter");let o=this.value;return u?(o&&(n.rem=o),o=t.materialize(t.SOURCE).source,n.add=this.value=m7(o,i,a,e.filter||rn)):n.mod=o,n.source=this.value,n.modifies(r)}});function m7(e,t,n,r){for(var i=[],a={},u=e.length,o=0,s,l;o<u;++o)for(a[t]=l=e[o],s=0;s<u;++s)a[n]=e[s],r(a)&&(i.push(ge(a)),a={},a[t]=l);return i}const uy={kde:qd,mixture:pA,normal:Ud,lognormal:gA,uniform:mA},y7="distributions",oy="function",v7="field";function MA(e,t){const n=e[oy];Z(uy,n)||$("Unknown distribution function: "+n);const r=uy[n]();for(const i in e)i===v7?r.data((e.from||t()).map(e[i])):i===y7?r[i](e[i].map(a=>MA(a,t))):typeof r[i]===oy&&r[i](e[i]);return r}function a1(e){S.call(this,null,e)}const SA=[{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}]}],x7={key:{function:"mixture"},params:[{name:"distributions",type:"param",array:!0,params:SA},{name:"weights",type:"number",array:!0}]};a1.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:SA.concat(x7)},{name:"as",type:"string",array:!0,default:["value","density"]}]};L(a1,S,{transform(e,t){const n=t.fork(t.NO_SOURCE|t.NO_FIELDS);if(!this.value||t.changed()||e.modified()){const r=MA(e.distribution,b7(t)),i=e.steps||e.minsteps||25,a=e.steps||e.maxsteps||200;let u=e.method||"pdf";u!=="pdf"&&u!=="cdf"&&$("Invalid density method: "+u),!e.extent&&!r.data&&$("Missing density extent parameter."),u=r[u];const o=e.as||["value","density"],s=e.extent||zn(r.data()),l=vf(u,s,i,a).map(f=>{const c={};return c[o[0]]=f[0],c[o[1]]=f[1],ge(c)});this.value&&(n.rem=this.value),this.value=n.add=n.source=l}return n}});function b7(e){return()=>e.materialize(e.SOURCE).source}function $A(e,t){return e?e.map((n,r)=>t[r]||Me(n)):null}function u1(e,t,n){const r=[],i=c=>c(s);let a,u,o,s,l,f;if(t==null)r.push(e.map(n));else for(a={},u=0,o=e.length;u<o;++u)s=e[u],l=t.map(i),f=a[l],f||(a[l]=f=[],f.dims=l,r.push(f)),f.push(n(s));return r}const BA="bin";function o1(e){S.call(this,null,e)}o1.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:BA}]};const A7=(e,t)=>uo(zn(e,t))/30;L(o1,S,{transform(e,t){if(this.value&&!(e.modified()||t.changed()))return t;const n=t.materialize(t.SOURCE).source,r=u1(t.source,e.groupby,Et),i=e.smooth||!1,a=e.field,u=e.step||A7(n,a),o=Ci((g,p)=>a(g)-a(p)),s=e.as||BA,l=r.length;let f=1/0,c=-1/0,h=0,d;for(;h<l;++h){const g=r[h].sort(o);d=-1;for(const p of hA(g,u,i,a))p<f&&(f=p),p>c&&(c=p),g[++d][s]=p}return this.value={start:f,stop:c,step:u},t.reflow(!0).modifies(s)}});function _A(e){xe.call(this,null,E7,e),this.modified(!0)}L(_A,xe);function E7(e){const t=e.expr;return this.value&&!e.modified("expr")?this.value:Tt(n=>t(n,e),tt(t),Me(t))}function s1(e){S.call(this,[void 0,void 0],e)}s1.Definition={type:"Extent",metadata:{},params:[{name:"field",type:"field",required:!0}]};L(s1,S,{transform(e,t){const n=this.value,r=e.field,i=t.changed()||t.modified(r.fields)||e.modified("field");let a=n[0],u=n[1];if((i||a==null)&&(a=1/0,u=-1/0),t.visit(i?t.SOURCE:t.ADD,o=>{const s=et(r(o));s!=null&&(s<a&&(a=s),s>u&&(u=s))}),!Number.isFinite(a)||!Number.isFinite(u)){let o=Me(r);o&&(o=` for field "${o}"`),t.dataflow.warn(`Infinite extent${o}: [${a}, ${u}]`),a=u=void 0}this.value=[a,u]}});function l1(e,t){xe.call(this,e),this.parent=t,this.count=0}L(l1,xe,{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-=1,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 xf(e){S.call(this,{},e),this._keys=Ea();const t=this._targets=[];t.active=0,t.forEach=n=>{for(let r=0,i=t.active;r<i;++r)n(t[r],r,t)}}L(xf,S,{activate(e){this._targets[this._targets.active++]=e},subflow(e,t,n,r){const i=this.value;let a=Z(i,e)&&i[e],u,o;return a?a.value.stamp<n.stamp&&(a.init(n),this.activate(a)):(o=r||(o=this._group[e])&&o.tuple,u=n.dataflow,a=new l1(n.fork(n.NO_SOURCE),this),u.add(a).connect(t(u,e,o)),i[e]=a,this.activate(a)),a},clean(){const e=this.value;let t=0;for(const n in e)if(e[n].count===0){const r=e[n].detachSubflow;r&&r(),delete e[n],++t}if(t){const n=this._targets.filter(r=>r&&r.count>0);this.initTargets(n)}},initTargets(e){const t=this._targets,n=t.length,r=e?e.length:0;let 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){const n=t.dataflow,r=e.key,i=e.subflow,a=this._keys,u=e.modified("key"),o=s=>this.subflow(s,i,t);return this._group=e.group||{},this.initTargets(),t.visit(t.REM,s=>{const l=Y(s),f=a.get(l);f!==void 0&&(a.delete(l),o(f).rem(s))}),t.visit(t.ADD,s=>{const l=r(s);a.set(Y(s),l),o(l).add(s)}),u||t.modified(r.fields)?t.visit(t.MOD,s=>{const l=Y(s),f=a.get(l),c=r(s);f===c?o(c).mod(s):(a.set(l,c),o(f).rem(s),o(c).add(s))}):t.changed(t.MOD)&&t.visit(t.MOD,s=>{o(a.get(Y(s))).mod(s)}),u&&t.visit(t.REFLOW,s=>{const l=Y(s),f=a.get(l),c=r(s);f!==c&&(a.set(l,c),o(f).rem(s),o(c).add(s))}),t.clean()?n.runAfter(()=>{this.clean(),a.clean()}):a.empty>n.cleanThreshold&&n.runAfter(a.clean),t}});function RA(e){xe.call(this,null,w7,e)}L(RA,xe);function w7(e){return this.value&&!e.modified()?this.value:j(e.name)?V(e.name).map(t=>nn(t)):nn(e.name,e.as)}function f1(e){S.call(this,Ea(),e)}f1.Definition={type:"Filter",metadata:{changes:!0},params:[{name:"expr",type:"expr",required:!0}]};L(f1,S,{transform(e,t){const n=t.dataflow,r=this.value,i=t.fork(),a=i.add,u=i.rem,o=i.mod,s=e.expr;let l=!0;t.visit(t.REM,c=>{const h=Y(c);r.has(h)?r.delete(h):u.push(c)}),t.visit(t.ADD,c=>{s(c,e)?a.push(c):r.set(Y(c),1)});function f(c){const h=Y(c),d=s(c,e),g=r.get(h);d&&g?(r.delete(h),a.push(c)):!d&&!g?(r.set(h,1),u.push(c)):l&&d&&!g&&o.push(c)}return t.visit(t.MOD,f),e.modified()&&(l=!1,t.visit(t.REFLOW,f)),r.empty>n.cleanThreshold&&n.runAfter(r.clean),i}});function c1(e){S.call(this,[],e)}c1.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}]};L(c1,S,{transform(e,t){const n=t.fork(t.NO_SOURCE),r=e.fields,i=$A(r,e.as||[]),a=e.index||null,u=i.length;return n.rem=this.value,t.visit(t.SOURCE,o=>{const s=r.map(g=>g(o)),l=s.reduce((g,p)=>Math.max(g,p.length),0);let f=0,c,h,d;for(;f<l;++f){for(h=Td(o),c=0;c<u;++c)h[i[c]]=(d=s[c][f])==null?null:d;a&&(h[a]=f),n.add.push(h)}}),this.value=n.source=n.add,a&&n.modifies(a),n.modifies(i)}});function h1(e){S.call(this,[],e)}h1.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"]}]};L(h1,S,{transform(e,t){const n=t.fork(t.NO_SOURCE),r=e.fields,i=r.map(Me),a=e.as||["key","value"],u=a[0],o=a[1],s=r.length;return n.rem=this.value,t.visit(t.SOURCE,l=>{for(let f=0,c;f<s;++f)c=Td(l),c[u]=i[f],c[o]=r[f](l),n.add.push(c)}),this.value=n.source=n.add,n.modifies(a)}});function d1(e){S.call(this,null,e)}d1.Definition={type:"Formula",metadata:{modifies:!0},params:[{name:"expr",type:"expr",required:!0},{name:"as",type:"string",required:!0},{name:"initonly",type:"boolean"}]};L(d1,S,{transform(e,t){const 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,u=>u[r]=n(u,e))}});function TA(e){S.call(this,[],e)}L(TA,S,{transform(e,t){const n=t.fork(t.ALL),r=e.generator;let i=this.value,a=e.size-i.length,u,o,s;if(a>0){for(u=[];--a>=0;)u.push(s=ge(r(e))),i.push(s);n.add=n.add.length?n.materialize(n.ADD).add.concat(u):u}else o=i.slice(0,-a),n.rem=n.rem.length?n.materialize(n.REM).rem.concat(o):o,i=i.slice(-a);return n.source=this.value=i,n}});const Vo={value:"value",median:cv,mean:ND,min:ch,max:ui},C7=[];function g1(e){S.call(this,[],e)}g1.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 D7(e){var t=e.method||Vo.value,n;if(Vo[t]==null)$("Unrecognized imputation method: "+t);else return t===Vo.value?(n=e.value!==void 0?e.value:0,()=>n):Vo[t]}function F7(e){const t=e.field;return n=>n?t(n):NaN}L(g1,S,{transform(e,t){var n=t.fork(t.ALL),r=D7(e),i=F7(e),a=Me(e.field),u=Me(e.key),o=(e.groupby||[]).map(Me),s=k7(t.source,e.groupby,e.key,e.keyvals),l=[],f=this.value,c=s.domain.length,h,d,g,p,m,y,v,x,b,E;for(m=0,x=s.length;m<x;++m)for(h=s[m],g=h.values,d=NaN,v=0;v<c;++v)if(h[v]==null){for(p=s.domain[v],E={_impute:!0},y=0,b=g.length;y<b;++y)E[o[y]]=g[y];E[u]=p,E[a]=Number.isNaN(d)?d=r(h,i):d,l.push(ge(E))}return l.length&&(n.add=n.materialize(n.ADD).add.concat(l)),f.length&&(n.rem=n.materialize(n.REM).rem.concat(f)),this.value=l,n}});function k7(e,t,n,r){var i=y=>y(m),a=[],u=r?r.slice():[],o={},s={},l,f,c,h,d,g,p,m;for(u.forEach((y,v)=>o[y]=v+1),h=0,p=e.length;h<p;++h)m=e[h],g=n(m),d=o[g]||(o[g]=u.push(g)),f=(l=t?t.map(i):C7)+"",(c=s[f])||(c=s[f]=[],a.push(c),c.values=l),c[d-1]=m;return a.domain=u,a}function p1(e){Lr.call(this,e)}p1.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:lo},{name:"as",type:"string",null:!0,array:!0},{name:"key",type:"field"}]};L(p1,Lr,{transform(e,t){const n=this,r=e.modified();let i;return n.value&&(r||t.modified(n._inputs,!0))?(i=n.value=r?n.init(e):{},t.visit(t.SOURCE,a=>n.add(a))):(i=n.value=n.value||this.init(e),t.visit(t.REM,a=>n.rem(a)),t.visit(t.ADD,a=>n.add(a))),n.changes(),t.visit(t.SOURCE,a=>{te(a,i[n.cellkey(a)].tuple)}),t.reflow(r).modifies(this._outputs)},changes(){const e=this._adds,t=this._mods;let 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 m1(e){S.call(this,null,e)}m1.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"]}]};L(m1,S,{transform(e,t){const n=t.fork(t.NO_SOURCE|t.NO_FIELDS);if(!this.value||t.changed()||e.modified()){const r=t.materialize(t.SOURCE).source,i=u1(r,e.groupby,e.field),a=(e.groupby||[]).map(Me),u=e.bandwidth,o=e.cumulative?"cdf":"pdf",s=e.as||["value","density"],l=[];let f=e.extent,c=e.steps||e.minsteps||25,h=e.steps||e.maxsteps||200;o!=="pdf"&&o!=="cdf"&&$("Invalid density method: "+o),e.resolve==="shared"&&(f||(f=zn(r,e.field)),c=h=e.steps||h),i.forEach(d=>{const g=qd(d,u)[o],p=e.counts?d.length:1,m=f||zn(d);vf(g,m,c,h).forEach(y=>{const v={};for(let x=0;x<a.length;++x)v[a[x]]=d.dims[x];v[s[0]]=y[0],v[s[1]]=y[1]*p,l.push(ge(v))})}),this.value&&(n.rem=this.value),this.value=n.add=n.source=l}return n}});function OA(e){xe.call(this,null,M7,e)}L(OA,xe);function M7(e){return this.value&&!e.modified()?this.value:wd(e.fields,e.flat)}function zA(e){S.call(this,[],e),this._pending=null}L(zA,S,{transform(e,t){const n=t.dataflow;return this._pending?Bc(this,t,this._pending):S7(e)?t.StopPropagation:e.values?Bc(this,t,n.parse(e.values,e.format)):e.async?{async:n.request(e.url,e.format).then(i=>(this._pending=V(i.data),a=>a.touch(this)))}:n.request(e.url,e.format).then(r=>Bc(this,t,V(r.data)))}});function S7(e){return e.modified("async")&&!(e.modified("values")||e.modified("url")||e.modified("format"))}function Bc(e,t,n){n.forEach(ge);const 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 y1(e){S.call(this,{},e)}y1.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}]};L(y1,S,{transform(e,t){const n=e.fields,r=e.index,i=e.values,a=e.default==null?null:e.default,u=e.modified(),o=n.length;let s=u?t.SOURCE:t.ADD,l=t,f=e.as,c,h,d;return i?(h=i.length,o>1&&!f&&$('Multi-field lookup requires explicit "as" parameter.'),f&&f.length!==o*h&&$('The "as" parameter has too few output field names.'),f=f||i.map(Me),c=function(g){for(var p=0,m=0,y,v;p<o;++p)if(v=r.get(n[p](g)),v==null)for(y=0;y<h;++y,++m)g[f[m]]=a;else for(y=0;y<h;++y,++m)g[f[m]]=i[y](v)}):(f||$("Missing output field names."),c=function(g){for(var p=0,m;p<o;++p)m=r.get(n[p](g)),g[f[p]]=m??a}),u?l=t.reflow(!0):(d=n.some(g=>t.modified(g.fields)),s|=d?t.MOD:0),t.visit(s,c),l.modifies(f)}});function LA(e){xe.call(this,null,$7,e)}L(LA,xe);function $7(e){if(this.value&&!e.modified())return this.value;const t=e.extents,n=t.length;let r=1/0,i=-1/0,a,u;for(a=0;a<n;++a)u=t[a],u[0]<r&&(r=u[0]),u[1]>i&&(i=u[1]);return[r,i]}function NA(e){xe.call(this,null,B7,e)}L(NA,xe);function B7(e){return this.value&&!e.modified()?this.value:e.values.reduce((t,n)=>t.concat(n),[])}function PA(e){S.call(this,null,e)}L(PA,S,{transform(e,t){return this.modified(e.modified()),this.value=e,t.fork(t.NO_SOURCE|t.NO_FIELDS)}});function v1(e){Lr.call(this,e)}v1.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:lo,default:"sum"},{name:"limit",type:"number",default:0},{name:"key",type:"field"}]};L(v1,Lr,{_transform:Lr.prototype.transform,transform(e,t){return this._transform(_7(e,t),t)}});function _7(e,t){const n=e.field,r=e.value,i=(e.op==="count"?"__count__":e.op)||"sum",a=tt(n).concat(tt(r)),u=T7(n,e.limit||0,t);return t.changed()&&e.set("__pivot__",null,null,!0),{key:e.key,groupby:e.groupby,ops:u.map(()=>i),fields:u.map(o=>R7(o,n,r,a)),as:u.map(o=>o+""),modified:e.modified.bind(e)}}function R7(e,t,n,r){return Tt(i=>t(i)===e?n(i):NaN,r,e+"")}function T7(e,t,n){const r={},i=[];return n.visit(n.SOURCE,a=>{const u=e(a);r[u]||(r[u]=1,i.push(u))}),i.sort(ao),t?i.slice(0,t):i}function IA(e){xf.call(this,e)}L(IA,xf,{transform(e,t){const n=e.subflow,r=e.field,i=a=>this.subflow(Y(a),n,t,a);return(e.modified("field")||r&&t.modified(tt(r)))&&$("PreFacet does not support field modification."),this.initTargets(),r?(t.visit(t.MOD,a=>{const u=i(a);r(a).forEach(o=>u.mod(o))}),t.visit(t.ADD,a=>{const u=i(a);r(a).forEach(o=>u.add(ge(o)))}),t.visit(t.REM,a=>{const u=i(a);r(a).forEach(o=>u.rem(o))})):(t.visit(t.MOD,a=>i(a).mod(a)),t.visit(t.ADD,a=>i(a).add(a)),t.visit(t.REM,a=>i(a).rem(a))),t.clean()&&t.runAfter(()=>this.clean()),t}});function x1(e){S.call(this,null,e)}x1.Definition={type:"Project",metadata:{generates:!0,changes:!0},params:[{name:"fields",type:"field",array:!0},{name:"as",type:"string",null:!0,array:!0}]};L(x1,S,{transform(e,t){const n=t.fork(t.NO_SOURCE),r=e.fields,i=$A(e.fields,e.as||[]),a=r?(o,s)=>O7(o,s,r,i):cf;let u;return this.value?u=this.value:(t=t.addAll(),u=this.value={}),t.visit(t.REM,o=>{const s=Y(o);n.rem.push(u[s]),u[s]=null}),t.visit(t.ADD,o=>{const s=a(o,ge({}));u[Y(o)]=s,n.add.push(s)}),t.visit(t.MOD,o=>{n.mod.push(a(o,u[Y(o)]))}),n}});function O7(e,t,n,r){for(let i=0,a=n.length;i<a;++i)t[r[i]]=n[i](e);return t}function UA(e){S.call(this,null,e)}L(UA,S,{transform(e,t){return this.value=e.value,e.modified("value")?t.fork(t.NO_SOURCE|t.NO_FIELDS):t.StopPropagation}});function b1(e){S.call(this,null,e)}b1.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"]}]};const z7=1e-14;L(b1,S,{transform(e,t){const 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;const i=t.materialize(t.SOURCE).source,a=u1(i,e.groupby,e.field),u=(e.groupby||[]).map(Me),o=[],s=e.step||.01,l=e.probs||It(s/2,1-z7,s),f=l.length;return a.forEach(c=>{const h=Ld(c,l);for(let d=0;d<f;++d){const g={};for(let p=0;p<u.length;++p)g[u[p]]=c.dims[p];g[r[0]]=l[d],g[r[1]]=h[d],o.push(ge(g))}}),this.value&&(n.rem=this.value),this.value=n.add=n.source=o,n}});function qA(e){S.call(this,null,e)}L(qA,S,{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,i=>{const a=Y(i);n.rem.push(r[a]),r[a]=null}),t.visit(t.ADD,i=>{const a=Td(i);r[Y(i)]=a,n.add.push(a)}),t.visit(t.MOD,i=>{const a=r[Y(i)];for(const u in i)a[u]=i[u],n.modifies(u);n.mod.push(a)})),n}});function A1(e){S.call(this,[],e),this.count=0}A1.Definition={type:"Sample",metadata:{},params:[{name:"size",type:"number",default:1e3}]};L(A1,S,{transform(e,t){const n=t.fork(t.NO_SOURCE),r=e.modified("size"),i=e.size,a=this.value.reduce((f,c)=>(f[Y(c)]=1,f),{});let u=this.value,o=this.count,s=0;function l(f){let c,h;u.length<i?u.push(f):(h=~~((o+1)*un()),h<u.length&&h>=s&&(c=u[h],a[Y(c)]&&n.rem.push(c),u[h]=f)),++o}if(t.rem.length&&(t.visit(t.REM,f=>{const c=Y(f);a[c]&&(a[c]=-1,n.rem.push(f)),--o}),u=u.filter(f=>a[Y(f)]!==-1)),(t.rem.length||r)&&u.length<i&&t.source&&(s=o=u.length,t.visit(t.SOURCE,f=>{a[Y(f)]||l(f)}),s=-1),r&&u.length>i){const f=u.length-i;for(let c=0;c<f;++c)a[Y(u[c])]=-1,n.rem.push(u[c]);u=u.slice(f)}return t.mod.length&&t.visit(t.MOD,f=>{a[Y(f)]&&n.mod.push(f)}),t.add.length&&t.visit(t.ADD,l),(t.add.length||s<0)&&(n.add=u.filter(f=>!a[Y(f)])),this.count=o,this.value=n.source=u,n}});function E1(e){S.call(this,null,e)}E1.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"}]};L(E1,S,{transform(e,t){if(this.value&&!e.modified())return;const n=t.materialize().fork(t.MOD),r=e.as||"data";return n.rem=this.value?t.rem.concat(this.value):t.rem,this.value=It(e.start,e.stop,e.step||1).map(i=>{const a={};return a[r]=i,ge(a)}),n.add=t.add.concat(this.value),n}});function jA(e){S.call(this,null,e),this.modified(!0)}L(jA,S,{transform(e,t){return this.value=t.source,t.changed()?t.fork(t.NO_SOURCE|t.NO_FIELDS):t.StopPropagation}});function w1(e){S.call(this,null,e)}const WA=["unit0","unit1"];w1.Definition={type:"TimeUnit",metadata:{modifies:!0},params:[{name:"field",type:"field",required:!0},{name:"interval",type:"boolean",default:!0},{name:"units",type:"enum",values:kd,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:WA}]};L(w1,S,{transform(e,t){const n=e.field,r=e.interval!==!1,i=e.timezone==="utc",a=this._floor(e,t),u=(i?Ca:wa)(a.unit).offset,o=e.as||WA,s=o[0],l=o[1],f=a.step;let c=a.start||1/0,h=a.stop||-1/0,d=t.ADD;return(e.modified()||t.changed(t.REM)||t.modified(tt(n)))&&(t=t.reflow(!0),d=t.SOURCE,c=1/0,h=-1/0),t.visit(d,g=>{const p=n(g);let m,y;p==null?(g[s]=null,r&&(g[l]=null)):(g[s]=m=y=a(p),r&&(g[l]=y=u(m,f)),m<c&&(c=m),y>h&&(h=y))}),a.start=c,a.stop=h,t.modifies(r?o:s)},_floor(e,t){const n=e.timezone==="utc",{units:r,step:i}=e.units?{units:e.units,step:e.step||1}:Ub({extent:e.extent||zn(t.materialize(t.SOURCE).source,e.field),maxbins:e.maxbins}),a=Md(r),u=this.value||{},o=(n?_b:Bb)(a,i);return o.unit=oe(a),o.units=a,o.step=i,o.start=u.start,o.stop=u.stop,this.value=o}});function YA(e){S.call(this,Ea(),e)}L(YA,S,{transform(e,t){const n=t.dataflow,r=e.field,i=this.value,a=o=>i.set(r(o),o);let u=!0;return e.modified("field")||t.modified(r.fields)?(i.clear(),t.visit(t.SOURCE,a)):t.changed()?(t.visit(t.REM,o=>i.delete(r(o))),t.visit(t.ADD,a)):u=!1,this.modified(u),i.empty>n.cleanThreshold&&n.runAfter(i.clean),t.fork()}});function HA(e){S.call(this,null,e)}L(HA,S,{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(Ci(e.sort)):t.source).map(e.field))}});function L7(e,t,n,r){const i=Nu[e](t,n);return{init:i.init||Ar,update:function(a,u){u[r]=i.next(a)}}}const Nu={row_number:function(){return{next:e=>e.index+1}},rank:function(){let e;return{init:()=>e=1,next:t=>{const 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=>{const n=t.index,r=t.data;return n&&t.compare(r[n-1],r[n])?++e:e}}},percent_rank:function(){const e=Nu.rank(),t=e.next;return{init:e.init,next:n=>(t(n)-1)/(n.data.length-1)}},cume_dist:function(){let e;return{init:()=>e=0,next:t=>{const n=t.data,r=t.compare;let 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||$("ntile num must be greater than zero.");const n=Nu.cume_dist(),r=n.next;return{init:n.init,next:i=>Math.ceil(t*r(i))}},lag:function(e,t){return t=+t||1,{next:n=>{const r=n.index-t;return r>=0?e(n.data[r]):null}}},lead:function(e,t){return t=+t||1,{next:n=>{const 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||$("nth_value nth must be greater than zero."),{next:n=>{const 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=>{const r=e(n.data[n.index]);return r!=null?t=r:t}}},next_value:function(e){let t,n;return{init:()=>(t=null,n=-1),next:r=>{const i=r.data;return r.index<=n?t:(n=N7(e,i,r.index))<0?(n=i.length,t=null):t=e(i[n])}}}};function N7(e,t,n){for(let r=t.length;n<r;++n)if(e(t[n])!=null)return n;return-1}const P7=Object.keys(Nu);function GA(e){const t=V(e.ops),n=V(e.fields),r=V(e.params),i=V(e.aggregate_params),a=V(e.as),u=this.outputs=[],o=this.windows=[],s={},l={},f=[],c=[];let h=!0;function d(g){V(tt(g)).forEach(p=>s[p]=1)}d(e.sort),t.forEach((g,p)=>{const m=n[p],y=r[p],v=i[p]||null,x=Me(m),b=EA(g,x,a[p]);if(d(m),u.push(b),Z(Nu,g))o.push(L7(g,m,y,b));else{if(m==null&&g!=="count"&&$("Null aggregate field specified."),g==="count"){f.push(b);return}h=!1;let E=l[x];E||(E=l[x]=[],E.field=m,c.push(E)),E.push(wA(g,v,b))}}),(f.length||c.length)&&(this.cell=I7(c,f,h)),this.inputs=Object.keys(s)}const VA=GA.prototype;VA.init=function(){this.windows.forEach(e=>e.init()),this.cell&&this.cell.init()};VA.update=function(e,t){const n=this.cell,r=this.windows,i=e.data,a=r&&r.length;let u;if(n){for(u=e.p0;u<e.i0;++u)n.rem(i[u]);for(u=e.p1;u<e.i1;++u)n.add(i[u]);n.set(t)}for(u=0;u<a;++u)r[u].update(e,t)};function I7(e,t,n){e=e.map(s=>DA(s,s.field));const r={num:0,agg:null,store:!1,count:t};if(!n)for(var i=e.length,a=r.agg=Array(i),u=0;u<i;++u)a[u]=new e[u](r);if(r.store)var o=r.data=new e1;return r.add=function(s){if(r.num+=1,!n){o&&o.add(s);for(let l=0;l<i;++l)a[l].add(a[l].get(s),s)}},r.rem=function(s){if(r.num-=1,!n){o&&o.rem(s);for(let l=0;l<i;++l)a[l].rem(a[l].get(s),s)}},r.set=function(s){let l,f;for(o&&o.values(),l=0,f=t.length;l<f;++l)s[t[l]]=r.num;if(!n)for(l=0,f=a.length;l<f;++l)a[l].set(s)},r.init=function(){r.num=0,o&&o.reset();for(let s=0;s<i;++s)a[s].init()},r}function C1(e){S.call(this,{},e),this._mlen=0,this._mods=[]}C1.Definition={type:"Window",metadata:{modifies:!0},params:[{name:"sort",type:"compare"},{name:"groupby",type:"field",array:!0},{name:"ops",type:"enum",array:!0,values:P7.concat(lo)},{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}]};L(C1,S,{transform(e,t){this.stamp=t.stamp;const n=e.modified(),r=Ci(e.sort),i=Hh(e.groupby),a=o=>this.group(i(o));let u=this.state;(!u||n)&&(u=this.state=new GA(e)),n||t.modified(u.inputs)?(this.value={},t.visit(t.SOURCE,o=>a(o).add(o))):(t.visit(t.REM,o=>a(o).remove(o)),t.visit(t.ADD,o=>a(o).add(o)));for(let o=0,s=this._mlen;o<s;++o)U7(this._mods[o],u,r,e);return this._mlen=0,this._mods=[],t.reflow(n).modifies(u.outputs)},group(e){let t=this.value[e];return t||(t=this.value[e]=FA(Y),t.stamp=-1),t.stamp<this.stamp&&(t.stamp=this.stamp,this._mods[this._mlen++]=t),t}});function U7(e,t,n,r){const i=r.sort,a=i&&!r.ignorePeers,u=r.frame||[null,0],o=e.data(n),s=o.length,l=a?Yl(i):null,f={i0:0,i1:0,p0:0,p1:0,index:0,data:o,compare:i||ot(-1)};t.init();for(let c=0;c<s;++c)q7(f,u,c,s),a&&j7(f,l),t.update(f,o[c])}function q7(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 j7(e,t){const n=e.i0,r=e.i1-1,i=e.compare,a=e.data,u=a.length-1;n>0&&!i(a[n],a[n-1])&&(e.i0=t.left(a,a[n])),r<u&&!i(a[r],a[r+1])&&(e.i1=t.right(a,a[r]))}const W7=Object.freeze(Object.defineProperty({__proto__:null,aggregate:Lr,bin:t1,collect:n1,compare:kA,countpattern:r1,cross:i1,density:a1,dotbin:o1,expression:_A,extent:s1,facet:xf,field:RA,filter:f1,flatten:c1,fold:h1,formula:d1,generate:TA,impute:g1,joinaggregate:p1,kde:m1,key:OA,load:zA,lookup:y1,multiextent:LA,multivalues:NA,params:PA,pivot:v1,prefacet:IA,project:x1,proxy:UA,quantile:b1,relay:qA,sample:A1,sequence:E1,sieve:jA,subflow:l1,timeunit:w1,tupleindex:YA,values:HA,window:C1},Symbol.toStringTag,{value:"Module"}));function Tr(e,t){if(typeof document<"u"&&document.createElement){const n=document.createElement("canvas");if(n&&n.getContext)return n.width=e,n.height=t,n}return null}const Y7=()=>typeof Image<"u"?Image:null;function D1(e,t,n){const r=e-t+n*2;return e?r>0?r:1:0}const H7="identity",oa="linear",lr="log",fo="pow",co="sqrt",bf="symlog",di="time",gi="utc",_n="sequential",Fa="diverging",sa="quantile",Af="quantize",Ef="threshold",F1="ordinal",Gh="point",XA="band",k1="bin-ordinal",Le="continuous",ho="discrete",go="discretizing",on="interpolating",M1="temporal";function G7(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 V7(e){return function(t){const n=e.range();let r=t[0],i=t[1],a=-1,u,o,s,l;for(i<r&&(o=r,r=i,i=o),s=0,l=n.length;s<l;++s)n[s]>=r&&n[s]<=i&&(a<0&&(a=s),u=s);if(!(a<0))return r=e.invertExtent(n[a]),i=e.invertExtent(n[u]),[r[0]===void 0?r[1]:r[0],i[1]===void 0?i[0]:i[1]]}}function S1(){const e=uv().unknown(void 0),t=e.domain,n=e.range;let r=[0,1],i,a,u=!1,o=0,s=0,l=.5;delete e.unknown;function f(){const c=t().length,h=r[1]<r[0],d=r[1-h],g=D1(c,o,s);let p=r[h-0];i=(d-p)/(g||1),u&&(i=Math.floor(i)),p+=(d-p-i*(c-o))*l,a=i*(1-o),u&&(p=Math.round(p),a=Math.round(a));const m=It(c).map(y=>p+i*y);return n(h?m.reverse():m)}return e.domain=function(c){return arguments.length?(t(c),f()):t()},e.range=function(c){return arguments.length?(r=[+c[0],+c[1]],f()):r.slice()},e.rangeRound=function(c){return r=[+c[0],+c[1]],u=!0,f()},e.bandwidth=function(){return a},e.step=function(){return i},e.round=function(c){return arguments.length?(u=!!c,f()):u},e.padding=function(c){return arguments.length?(s=Math.max(0,Math.min(1,c)),o=s,f()):o},e.paddingInner=function(c){return arguments.length?(o=Math.max(0,Math.min(1,c)),f()):o},e.paddingOuter=function(c){return arguments.length?(s=Math.max(0,Math.min(1,c)),f()):s},e.align=function(c){return arguments.length?(l=Math.max(0,Math.min(1,c)),f()):l},e.invertRange=function(c){if(c[0]==null||c[1]==null)return;const h=r[1]<r[0],d=h?n().reverse():n(),g=d.length-1;let p=+c[0],m=+c[1],y,v,x;if(!(p!==p||m!==m)&&(m<p&&(x=p,p=m,m=x),!(m<d[0]||p>r[1-h])))return y=Math.max(0,fh(d,p)-1),v=p===m?y:fh(d,m)-1,p-d[y]>a+1e-10&&++y,h&&(x=y,y=g-v,v=g-x),y>v?void 0:t().slice(y,v+1)},e.invert=function(c){const h=e.invertRange([c,c]);return h&&h[0]},e.copy=function(){return S1().domain(t()).range(r).round(u).paddingInner(o).paddingOuter(s).align(l)},f()}function KA(e){const t=e.copy;return e.padding=e.paddingOuter,delete e.paddingInner,e.copy=function(){return KA(t())},e}function X7(){return KA(S1().paddingInner(1))}var K7=Array.prototype.map;function Z7(e){return K7.call(e,et)}const Q7=Array.prototype.slice;function ZA(){let e=[],t=[];function n(r){return r==null||r!==r?void 0:t[(Wl(e,r)-1)%t.length]}return n.domain=function(r){return arguments.length?(e=Z7(r),n):e.slice()},n.range=function(r){return arguments.length?(t=Q7.call(r),n):t.slice()},n.tickFormat=function(r,i){return cD(e[0],oe(e),r??10,i)},n.copy=function(){return ZA().domain(n.domain()).range(n.range())},n}const dl=new Map,QA=Symbol("vega_scale");function JA(e){return e[QA]=!0,e}function sy(e){return e&&e[QA]===!0}function J7(e,t,n){const r=function(){const a=t();return a.invertRange||(a.invertRange=a.invert?G7(a):a.invertExtent?V7(a):void 0),a.type=e,JA(a)};return r.metadata=jt(V(n)),r}function de(e,t,n){return arguments.length>1?(dl.set(e,J7(e,t,n)),this):eE(e)?dl.get(e):void 0}de(H7,kx);de(oa,fD,Le);de(lr,Sx,[Le,lr]);de(fo,od,Le);de(co,Rk,Le);de(bf,$x,Le);de(di,V8,[Le,M1]);de(gi,X8,[Le,M1]);de(_n,hd,[Le,on]);de(`${_n}-${oa}`,hd,[Le,on]);de(`${_n}-${lr}`,jx,[Le,on,lr]);de(`${_n}-${fo}`,dd,[Le,on]);de(`${_n}-${co}`,K8,[Le,on]);de(`${_n}-${bf}`,Wx,[Le,on]);de(`${Fa}-${oa}`,Yx,[Le,on]);de(`${Fa}-${lr}`,Hx,[Le,on,lr]);de(`${Fa}-${fo}`,gd,[Le,on]);de(`${Fa}-${co}`,Z8,[Le,on]);de(`${Fa}-${bf}`,Gx,[Le,on]);de(sa,Bx,[go,sa]);de(Af,_x,go);de(Ef,Rx,go);de(k1,ZA,[ho,go]);de(F1,uv,ho);de(XA,S1,ho);de(Gh,X7,ho);function eE(e){return dl.has(e)}function Fi(e,t){const n=dl.get(e);return n&&n.metadata[t]}function $1(e){return Fi(e,Le)}function la(e){return Fi(e,ho)}function Vh(e){return Fi(e,go)}function tE(e){return Fi(e,lr)}function e4(e){return Fi(e,M1)}function nE(e){return Fi(e,on)}function rE(e){return Fi(e,sa)}const t4=["clamp","base","constant","exponent"];function iE(e,t){const n=t[0],r=oe(t)-n;return function(i){return e(n+i*r)}}function wf(e,t,n){return H0(B1(t||"rgb",n),e)}function aE(e,t){const n=new Array(t),r=t+1;for(let i=0;i<t;)n[i]=e(++i/r);return n}function uE(e,t,n){const r=n-t;let i,a,u;return!r||!Number.isFinite(r)?ot(.5):(i=(a=e.type).indexOf("-"),a=i<0?a:a.slice(i+1),u=de(a)().domain([t,n]).range([0,1]),t4.forEach(o=>e[o]?u[o](e[o]()):0),u)}function B1(e,t){const n=dF[n4(e)];return t!=null&&n&&n.gamma?n.gamma(t):n}function n4(e){return"interpolate"+e.toLowerCase().split("-").map(t=>t[0].toUpperCase()+t.slice(1)).join("")}const r4={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"},i4={accent:J8,category10:Q8,category20:"1f77b4aec7e8ff7f0effbb782ca02c98df8ad62728ff98969467bdc5b0d58c564bc49c94e377c2f7b6d27f7f7fc7c7c7bcbd22dbdb8d17becf9edae5",category20b:"393b795254a36b6ecf9c9ede6379398ca252b5cf6bcedb9c8c6d31bd9e39e7ba52e7cb94843c39ad494ad6616be7969c7b4173a55194ce6dbdde9ed6",category20c:"3182bd6baed69ecae1c6dbefe6550dfd8d3cfdae6bfdd0a231a35474c476a1d99bc7e9c0756bb19e9ac8bcbddcdadaeb636363969696bdbdbdd9d9d9",dark2:eM,observable10:tM,paired:nM,pastel1:rM,pastel2:iM,set1:aM,set2:uM,set3:oM,tableau10:"4c78a8f58518e4575672b7b254a24beeca3bb279a2ff9da69d755dbab0ac",tableau20:"4c78a89ecae9f58518ffbf7954a24b88d27ab79a20f2cf5b43989483bcb6e45756ff9d9879706ebab0acd67195fcbfd2b279a2d6a5c99e765fd8b5a5"};function oE(e){if(j(e))return e;const t=e.length/6|0,n=new Array(t);for(let r=0;r<t;)n[r]="#"+e.slice(r*6,++r*6);return n}function sE(e,t){for(const n in e)_1(n,t(e[n]))}const ly={};sE(i4,oE);sE(r4,e=>wf(oE(e)));function _1(e,t){return e=e&&e.toLowerCase(),arguments.length>1?(ly[e]=t,this):ly[e]}const hs="symbol",a4="discrete",u4="gradient",o4=e=>j(e)?e.map(t=>String(t)):String(e),s4=(e,t)=>e[1]-t[1],l4=(e,t)=>t[1]-e[1];function R1(e,t,n){let r;return zr(t)&&(e.bins&&(t=Math.max(t,e.bins.length)),n!=null&&(t=Math.min(t,Math.floor(uo(e.domain())/n||1)+1))),ne(t)&&(r=t.step,t=t.interval),be(t)&&(t=e.type===di?wa(t):e.type==gi?Ca(t):$("Only time and utc scales accept interval strings."),r&&(t=t.every(r))),t}function lE(e,t,n){let r=e.range(),i=r[0],a=oe(r),u=s4;if(i>a&&(r=a,a=i,i=r,u=l4),i=Math.floor(i),a=Math.ceil(a),t=t.map(o=>[o,e(o)]).filter(o=>i<=o[1]&&o[1]<=a).sort(u).map(o=>o[0]),n>0&&t.length>1){const o=[t[0],oe(t)];for(;t.length>n&&t.length>=3;)t=t.filter((s,l)=>!(l%2));t.length<3&&(t=o)}return t}function T1(e,t){return e.bins?lE(e,e.bins,t):e.ticks?e.ticks(t):e.domain()}function fE(e,t,n,r,i,a){const u=t.type;let o=o4;if(u===di||i===di)o=e.timeFormat(r);else if(u===gi||i===gi)o=e.utcFormat(r);else if(tE(u)){const s=e.formatFloat(r);if(a||t.bins)o=s;else{const l=cE(t,n,!1);o=f=>l(f)?s(f):""}}else if(t.tickFormat){const s=t.domain();o=e.formatSpan(s[0],s[s.length-1],n,r)}else r&&(o=e.format(r));return o}function cE(e,t,n){const r=T1(e,t),i=e.base(),a=Math.log(i),u=Math.max(1,i*t/r.length),o=s=>{let l=s/Math.pow(i,Math.round(Math.log(s)/a));return l*i<i-.5&&(l*=i),l<=u};return n?r.filter(o):o}const Xh={[sa]:"quantiles",[Af]:"thresholds",[Ef]:"domain"},hE={[sa]:"quantiles",[Af]:"domain"};function dE(e,t){return e.bins?h4(e.bins):e.type===lr?cE(e,t,!0):Xh[e.type]?c4(e[Xh[e.type]]()):T1(e,t)}function f4(e,t,n){const r=t[hE[t.type]](),i=r.length;let a=i>1?r[1]-r[0]:r[0],u;for(u=1;u<i;++u)a=Math.min(a,r[u]-r[u-1]);return e.formatSpan(0,a,3*10,n)}function c4(e){const t=[-1/0].concat(e);return t.max=1/0,t}function h4(e){const t=e.slice(0,-1);return t.max=oe(e),t}const d4=e=>Xh[e.type]||e.bins;function gE(e,t,n,r,i,a,u){const o=hE[t.type]&&a!==di&&a!==gi?f4(e,t,i):fE(e,t,n,i,a,u);return r===hs&&d4(t)?g4(o):r===a4?p4(o):m4(o)}const g4=e=>(t,n,r)=>{const i=fy(r[n+1],fy(r.max,1/0)),a=cy(t,e),u=cy(i,e);return a&&u?a+" – "+u:u?"< "+u:"≥ "+a},fy=(e,t)=>e??t,p4=e=>(t,n)=>n?e(t):null,m4=e=>t=>e(t),cy=(e,t)=>Number.isFinite(e)?t(e):null;function y4(e){const t=e.domain(),n=t.length-1;let r=+t[0],i=+oe(t),a=i-r;if(e.type===Ef){const u=n?a/n:.1;r-=u,i+=u,a=i-r}return u=>(u-r)/a}function v4(e,t,n,r){const i=r||t.type;return be(n)&&e4(i)&&(n=n.replace(/%a/g,"%A").replace(/%b/g,"%B")),!n&&i===di?e.timeFormat("%A, %d %B %Y, %X"):!n&&i===gi?e.utcFormat("%A, %d %B %Y, %X UTC"):gE(e,t,5,null,n,r,!0)}function pE(e,t,n){n=n||{};const r=Math.max(3,n.maxlen||7),i=v4(e,t,n.format,n.formatType);if(Vh(t.type)){const a=dE(t).slice(1).map(i),u=a.length;return`${u} boundar${u===1?"y":"ies"}: ${a.join(", ")}`}else if(la(t.type)){const a=t.domain(),u=a.length,o=u>r?a.slice(0,r-2).map(i).join(", ")+", ending with "+a.slice(-1).map(i):a.map(i).join(", ");return`${u} value${u===1?"":"s"}: ${o}`}else{const a=t.domain();return`values from ${i(a[0])} to ${i(oe(a))}`}}let mE=0;function x4(){mE=0}const gl="p_";function O1(e){return e&&e.gradient}function yE(e,t,n){const r=e.gradient;let i=e.id,a=r==="radial"?gl:"";return i||(i=e.id="gradient_"+mE++,r==="radial"?(e.x1=Dn(e.x1,.5),e.y1=Dn(e.y1,.5),e.r1=Dn(e.r1,0),e.x2=Dn(e.x2,.5),e.y2=Dn(e.y2,.5),e.r2=Dn(e.r2,.5),a=gl):(e.x1=Dn(e.x1,0),e.y1=Dn(e.y1,0),e.x2=Dn(e.x2,1),e.y2=Dn(e.y2,0))),t[i]=e,"url("+(n||"")+"#"+a+i+")"}function Dn(e,t){return e??t}function vE(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(i,a){return n.push({offset:i,color:a}),r}}}const hy={basis:{curve:gD},"basis-closed":{curve:pD},"basis-open":{curve:mD},bundle:{curve:fM,tension:"beta",value:.85},cardinal:{curve:yD,tension:"tension",value:0},"cardinal-open":{curve:vD,tension:"tension",value:0},"cardinal-closed":{curve:xD,tension:"tension",value:0},"catmull-rom":{curve:bD,tension:"alpha",value:.5},"catmull-rom-closed":{curve:AD,tension:"alpha",value:.5},"catmull-rom-open":{curve:ED,tension:"alpha",value:.5},linear:{curve:wD},"linear-closed":{curve:CD},monotone:{horizontal:DD,vertical:FD},natural:{curve:kD},step:{curve:MD},"step-after":{curve:SD},"step-before":{curve:$D}};function z1(e,t,n){var r=Z(hy,e)&&hy[e],i=null;return r&&(i=r.curve||r[t||"vertical"],r.tension&&n!=null&&(i=i[r.tension](n))),i}const b4={m:2,l:2,h:1,v:1,z:0,c:6,s:4,q:4,t:2,a:7},A4=/[mlhvzcsqta]([^mlhvzcsqta]+|$)/gi,E4=/^[+-]?(([0-9]*\.[0-9]+)|([0-9]+\.)|([0-9]+))([eE][+-]?[0-9]+)?/,w4=/^((\s+,?\s*)|(,\s*))/,C4=/^[01]/;function fa(e){const t=[];return(e.match(A4)||[]).forEach(r=>{let i=r[0];const a=i.toLowerCase(),u=b4[a],o=D4(a,u,r.slice(1).trim()),s=o.length;if(s<u||s&&s%u!==0)throw Error("Invalid SVG path, incorrect parameter count");if(t.push([i,...o.slice(0,u)]),s!==u){a==="m"&&(i=i==="M"?"L":"l");for(let l=u;l<s;l+=u)t.push([i,...o.slice(l,l+u)])}}),t}function D4(e,t,n){const r=[];for(let i=0;t&&i<n.length;)for(let a=0;a<t;++a){const u=e==="a"&&(a===3||a===4)?C4:E4,o=n.slice(i).match(u);if(o===null)throw Error("Invalid SVG path, incorrect parameter type");i+=o[0].length,r.push(+o[0]);const s=n.slice(i).match(w4);s!==null&&(i+=s[0].length)}return r}const Nr=Math.PI/180,F4=1e-14,ti=Math.PI/2,$n=Math.PI*2,zi=Math.sqrt(3)/2;var _c={},Rc={},xE=[].join;function k4(e,t,n,r,i,a,u,o,s){const l=xE.call(arguments);if(_c[l])return _c[l];const f=u*Nr,c=Math.sin(f),h=Math.cos(f);n=Math.abs(n),r=Math.abs(r);const d=h*(o-e)*.5+c*(s-t)*.5,g=h*(s-t)*.5-c*(o-e)*.5;let p=d*d/(n*n)+g*g/(r*r);p>1&&(p=Math.sqrt(p),n*=p,r*=p);const m=h/n,y=c/n,v=-c/r,x=h/r,b=m*o+y*s,E=v*o+x*s,w=m*e+y*t,A=v*e+x*t;let F=1/((w-b)*(w-b)+(A-E)*(A-E))-.25;F<0&&(F=0);let D=Math.sqrt(F);a==i&&(D=-D);const k=.5*(b+w)-D*(A-E),R=.5*(E+A)+D*(w-b),T=Math.atan2(E-R,b-k);let M=Math.atan2(A-R,w-k)-T;M<0&&a===1?M+=$n:M>0&&a===0&&(M-=$n);const O=Math.ceil(Math.abs(M/(ti+.001))),P=[];for(let X=0;X<O;++X){const J=T+X*M/O,pe=T+(X+1)*M/O;P[X]=[k,R,J,pe,n,r,c,h]}return _c[l]=P}function M4(e){const t=xE.call(e);if(Rc[t])return Rc[t];var n=e[0],r=e[1],i=e[2],a=e[3],u=e[4],o=e[5],s=e[6],l=e[7];const f=l*u,c=-s*o,h=s*u,d=l*o,g=Math.cos(i),p=Math.sin(i),m=Math.cos(a),y=Math.sin(a),v=.5*(a-i),x=Math.sin(v*.5),b=8/3*x*x/Math.sin(v),E=n+g-b*p,w=r+p+b*g,A=n+m,C=r+y,F=A+b*y,D=C-b*m;return Rc[t]=[f*E+c*w,h*E+d*w,f*F+c*D,h*F+d*D,f*A+c*C,h*A+d*C]}const Vt=["l",0,0,0,0,0,0,0];function S4(e,t,n){const r=Vt[0]=e[0];if(r==="a"||r==="A")Vt[1]=t*e[1],Vt[2]=n*e[2],Vt[3]=e[3],Vt[4]=e[4],Vt[5]=e[5],Vt[6]=t*e[6],Vt[7]=n*e[7];else if(r==="h"||r==="H")Vt[1]=t*e[1];else if(r==="v"||r==="V")Vt[1]=n*e[1];else for(var i=1,a=e.length;i<a;++i)Vt[i]=(i%2==1?t:n)*e[i];return Vt}function Pu(e,t,n,r,i,a){var u,o=null,s=0,l=0,f=0,c=0,h,d,g,p,m=0,y=0;n==null&&(n=0),r==null&&(r=0),i==null&&(i=1),a==null&&(a=i),e.beginPath&&e.beginPath();for(var v=0,x=t.length;v<x;++v){switch(u=t[v],(i!==1||a!==1)&&(u=S4(u,i,a)),u[0]){case"l":s+=u[1],l+=u[2],e.lineTo(s+n,l+r);break;case"L":s=u[1],l=u[2],e.lineTo(s+n,l+r);break;case"h":s+=u[1],e.lineTo(s+n,l+r);break;case"H":s=u[1],e.lineTo(s+n,l+r);break;case"v":l+=u[1],e.lineTo(s+n,l+r);break;case"V":l=u[1],e.lineTo(s+n,l+r);break;case"m":s+=u[1],l+=u[2],m=s,y=l,e.moveTo(s+n,l+r);break;case"M":s=u[1],l=u[2],m=s,y=l,e.moveTo(s+n,l+r);break;case"c":h=s+u[5],d=l+u[6],f=s+u[3],c=l+u[4],e.bezierCurveTo(s+u[1]+n,l+u[2]+r,f+n,c+r,h+n,d+r),s=h,l=d;break;case"C":s=u[5],l=u[6],f=u[3],c=u[4],e.bezierCurveTo(u[1]+n,u[2]+r,f+n,c+r,s+n,l+r);break;case"s":h=s+u[3],d=l+u[4],f=2*s-f,c=2*l-c,e.bezierCurveTo(f+n,c+r,s+u[1]+n,l+u[2]+r,h+n,d+r),f=s+u[1],c=l+u[2],s=h,l=d;break;case"S":h=u[3],d=u[4],f=2*s-f,c=2*l-c,e.bezierCurveTo(f+n,c+r,u[1]+n,u[2]+r,h+n,d+r),s=h,l=d,f=u[1],c=u[2];break;case"q":h=s+u[3],d=l+u[4],f=s+u[1],c=l+u[2],e.quadraticCurveTo(f+n,c+r,h+n,d+r),s=h,l=d;break;case"Q":h=u[3],d=u[4],e.quadraticCurveTo(u[1]+n,u[2]+r,h+n,d+r),s=h,l=d,f=u[1],c=u[2];break;case"t":h=s+u[1],d=l+u[2],o[0].match(/[QqTt]/)===null?(f=s,c=l):o[0]==="t"?(f=2*s-g,c=2*l-p):o[0]==="q"&&(f=2*s-f,c=2*l-c),g=f,p=c,e.quadraticCurveTo(f+n,c+r,h+n,d+r),s=h,l=d,f=s+u[1],c=l+u[2];break;case"T":h=u[1],d=u[2],f=2*s-f,c=2*l-c,e.quadraticCurveTo(f+n,c+r,h+n,d+r),s=h,l=d;break;case"a":dy(e,s+n,l+r,[u[1],u[2],u[3],u[4],u[5],u[6]+s+n,u[7]+l+r]),s+=u[6],l+=u[7];break;case"A":dy(e,s+n,l+r,[u[1],u[2],u[3],u[4],u[5],u[6]+n,u[7]+r]),s=u[6],l=u[7];break;case"z":case"Z":s=m,l=y,e.closePath();break}o=u}}function dy(e,t,n,r){const i=k4(r[5],r[6],r[0],r[1],r[3],r[4],r[2],t,n);for(let a=0;a<i.length;++a){const u=M4(i[a]);e.bezierCurveTo(u[0],u[1],u[2],u[3],u[4],u[5])}}const gy=.5773502691896257,py={circle:{draw:function(e,t){const n=Math.sqrt(t)/2;e.moveTo(n,0),e.arc(0,0,n,0,$n)}},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){const 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=zi*n,i=r-n*gy,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=zi*n,i=r-n*gy;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=zi*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=zi*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=zi*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=zi*n;e.moveTo(-r,0),e.lineTo(r,-n),e.lineTo(r,n),e.closePath()}},stroke:{draw:function(e,t){const n=Math.sqrt(t)/2;e.moveTo(-n,0),e.lineTo(n,0)}}};function bE(e){return Z(py,e)?py[e]:$4(e)}var Tc={};function $4(e){if(!Z(Tc,e)){const t=fa(e);Tc[e]={draw:function(n,r){Pu(n,t,0,0,Math.sqrt(r)/2)}}}return Tc[e]}const dr=.448084975506;function B4(e){return e.x}function _4(e){return e.y}function R4(e){return e.width}function T4(e){return e.height}function Hn(e){return typeof e=="function"?e:()=>+e}function Xo(e,t,n){return Math.max(t,Math.min(e,n))}function AE(){var e=B4,t=_4,n=R4,r=T4,i=Hn(0),a=i,u=i,o=i,s=null;function l(f,c,h){var d,g=c??+e.call(this,f),p=h??+t.call(this,f),m=+n.call(this,f),y=+r.call(this,f),v=Math.min(m,y)/2,x=Xo(+i.call(this,f),0,v),b=Xo(+a.call(this,f),0,v),E=Xo(+u.call(this,f),0,v),w=Xo(+o.call(this,f),0,v);if(s||(s=d=j0()),x<=0&&b<=0&&E<=0&&w<=0)s.rect(g,p,m,y);else{var A=g+m,C=p+y;s.moveTo(g+x,p),s.lineTo(A-b,p),s.bezierCurveTo(A-dr*b,p,A,p+dr*b,A,p+b),s.lineTo(A,C-w),s.bezierCurveTo(A,C-dr*w,A-dr*w,C,A-w,C),s.lineTo(g+E,C),s.bezierCurveTo(g+dr*E,C,g,C-dr*E,g,C-E),s.lineTo(g,p+x),s.bezierCurveTo(g,p+dr*x,g+dr*x,p,g+x,p),s.closePath()}if(d)return s=null,d+""||null}return l.x=function(f){return arguments.length?(e=Hn(f),l):e},l.y=function(f){return arguments.length?(t=Hn(f),l):t},l.width=function(f){return arguments.length?(n=Hn(f),l):n},l.height=function(f){return arguments.length?(r=Hn(f),l):r},l.cornerRadius=function(f,c,h,d){return arguments.length?(i=Hn(f),a=c!=null?Hn(c):i,o=h!=null?Hn(h):i,u=d!=null?Hn(d):a,l):i},l.context=function(f){return arguments.length?(s=f??null,l):s},l}function EE(){var e,t,n,r,i=null,a,u,o,s;function l(c,h,d){const g=d/2;if(a){var p=o-h,m=c-u;if(p||m){var y=Math.hypot(p,m),v=(p/=y)*s,x=(m/=y)*s,b=Math.atan2(m,p);i.moveTo(u-v,o-x),i.lineTo(c-p*g,h-m*g),i.arc(c,h,g,b-Math.PI,b),i.lineTo(u+v,o+x),i.arc(u,o,s,b,b+Math.PI)}else i.arc(c,h,g,0,$n);i.closePath()}else a=1;u=c,o=h,s=g}function f(c){var h,d=c.length,g,p=!1,m;for(i==null&&(i=m=j0()),h=0;h<=d;++h)!(h<d&&r(g=c[h],h,c))===p&&(p=!p)&&(a=0),p&&l(+e(g,h,c),+t(g,h,c),+n(g,h,c));if(m)return i=null,m+""||null}return f.x=function(c){return arguments.length?(e=c,f):e},f.y=function(c){return arguments.length?(t=c,f):t},f.size=function(c){return arguments.length?(n=c,f):n},f.defined=function(c){return arguments.length?(r=c,f):r},f.context=function(c){return arguments.length?(c==null?i=null:i=c,f):i},f}function po(e,t){return e??t}const mo=e=>e.x||0,yo=e=>e.y||0,O4=e=>e.width||0,z4=e=>e.height||0,L4=e=>(e.x||0)+(e.width||0),N4=e=>(e.y||0)+(e.height||0),P4=e=>e.startAngle||0,I4=e=>e.endAngle||0,U4=e=>e.padAngle||0,q4=e=>e.innerRadius||0,j4=e=>e.outerRadius||0,W4=e=>e.cornerRadius||0,Y4=e=>po(e.cornerRadiusTopLeft,e.cornerRadius)||0,H4=e=>po(e.cornerRadiusTopRight,e.cornerRadius)||0,G4=e=>po(e.cornerRadiusBottomRight,e.cornerRadius)||0,V4=e=>po(e.cornerRadiusBottomLeft,e.cornerRadius)||0,X4=e=>po(e.size,64),K4=e=>e.size||1,Cf=e=>e.defined!==!1,Z4=e=>bE(e.shape||"circle"),Q4=hD().startAngle(P4).endAngle(I4).padAngle(U4).innerRadius(q4).outerRadius(j4).cornerRadius(W4),J4=ov().x(mo).y1(yo).y0(N4).defined(Cf),eS=ov().y(yo).x1(mo).x0(L4).defined(Cf),tS=dD().x(mo).y(yo).defined(Cf),nS=AE().x(mo).y(yo).width(O4).height(z4).cornerRadius(Y4,H4,G4,V4),rS=lM().type(Z4).size(X4),iS=EE().x(mo).y(yo).defined(Cf).size(K4);function L1(e){return e.cornerRadius||e.cornerRadiusTopLeft||e.cornerRadiusTopRight||e.cornerRadiusBottomRight||e.cornerRadiusBottomLeft}function aS(e,t){return Q4.context(e)(t)}function uS(e,t){const n=t[0],r=n.interpolate||"linear";return(n.orient==="horizontal"?eS:J4).curve(z1(r,n.orient,n.tension)).context(e)(t)}function oS(e,t){const n=t[0],r=n.interpolate||"linear";return tS.curve(z1(r,n.orient,n.tension)).context(e)(t)}function ka(e,t,n,r){return nS.context(e)(t,n,r)}function sS(e,t){return(t.mark.shape||t.shape).context(e)(t)}function lS(e,t){return rS.context(e)(t)}function fS(e,t){return iS.context(e)(t)}var wE=1;function CE(){wE=1}function N1(e,t,n){var r=t.clip,i=e._defs,a=t.clip_id||(t.clip_id="clip"+wE++),u=i.clipping[a]||(i.clipping[a]={id:a});return ee(r)?u.path=r(null):L1(n)?u.path=ka(null,n,0,0):(u.width=n.width||0,u.height=n.height||0),"url(#"+a+")"}function Be(e){this.clear(),e&&this.union(e)}Be.prototype={clone(){return new Be(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){const 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:u}=this,o=Math.cos(e),s=Math.sin(e),l=t-t*o+n*s,f=n-t*s-n*o;return[o*r-s*i+l,s*r+o*i+f,o*r-s*u+l,s*r+o*u+f,o*a-s*i+l,s*a+o*i+f,o*a-s*u+l,s*a+o*u+f]},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 Df(e){this.mark=e,this.bounds=this.bounds||new Be}function Ff(e){Df.call(this,e),this.items=this.items||[]}L(Ff,Df);class DE{constructor(t){this._pending=0,this._loader=t||sf()}pending(){return this._pending}sanitizeURL(t){const n=this;return my(n),n._loader.sanitize(t,{context:"href"}).then(r=>(Ua(n),r)).catch(()=>(Ua(n),null))}loadImage(t){const n=this,r=Y7();return my(n),n._loader.sanitize(t,{context:"image"}).then(i=>{const a=i.href;if(!a||!r)throw{url:a};const u=new r,o=Z(i,"crossOrigin")?i.crossOrigin:"anonymous";return o!=null&&(u.crossOrigin=o),u.onload=()=>Ua(n),u.onerror=()=>Ua(n),u.src=a,u}).catch(i=>(Ua(n),{complete:!1,width:0,height:0,src:i&&i.url||""}))}ready(){const t=this;return new Promise(n=>{function r(i){t.pending()?setTimeout(()=>{r(!0)},10):n(i)}r(!1)})}}function my(e){e._pending+=1}function Ua(e){e._pending-=1}function fr(e,t,n){if(t.stroke&&t.opacity!==0&&t.strokeOpacity!==0){const r=t.strokeWidth!=null?+t.strokeWidth:1;e.expand(r+(n?cS(t,r):0))}return e}function cS(e,t){return e.strokeJoin&&e.strokeJoin!=="miter"?0:t}const hS=$n-1e-8;let kf,ds,gs,ai,Kh,ps,Zh,Qh;const Cr=(e,t)=>kf.add(e,t),ms=(e,t)=>Cr(ds=e,gs=t),yy=e=>Cr(e,kf.y1),vy=e=>Cr(kf.x1,e),ni=(e,t)=>Kh*e+Zh*t,ri=(e,t)=>ps*e+Qh*t,Oc=(e,t)=>Cr(ni(e,t),ri(e,t)),zc=(e,t)=>ms(ni(e,t),ri(e,t));function vo(e,t){return kf=e,t?(ai=t*Nr,Kh=Qh=Math.cos(ai),ps=Math.sin(ai),Zh=-ps):(Kh=Qh=1,ai=ps=Zh=0),dS}const dS={beginPath(){},closePath(){},moveTo:zc,lineTo:zc,rect(e,t,n,r){ai?(Oc(e+n,t),Oc(e+n,t+r),Oc(e,t+r),zc(e,t)):(Cr(e+n,t+r),ms(e,t))},quadraticCurveTo(e,t,n,r){const i=ni(e,t),a=ri(e,t),u=ni(n,r),o=ri(n,r);xy(ds,i,u,yy),xy(gs,a,o,vy),ms(u,o)},bezierCurveTo(e,t,n,r,i,a){const u=ni(e,t),o=ri(e,t),s=ni(n,r),l=ri(n,r),f=ni(i,a),c=ri(i,a);by(ds,u,s,f,yy),by(gs,o,l,c,vy),ms(f,c)},arc(e,t,n,r,i,a){if(r+=ai,i+=ai,ds=n*Math.cos(i)+e,gs=n*Math.sin(i)+t,Math.abs(i-r)>hS)Cr(e-n,t-n),Cr(e+n,t+n);else{const u=l=>Cr(n*Math.cos(l)+e,n*Math.sin(l)+t);let o,s;if(u(r),u(i),i!==r)if(r=r%$n,r<0&&(r+=$n),i=i%$n,i<0&&(i+=$n),i<r&&(a=!a,o=r,r=i,i=o),a)for(i-=$n,o=r-r%ti,s=0;s<4&&o>i;++s,o-=ti)u(o);else for(o=r-r%ti+ti,s=0;s<4&&o<i;++s,o=o+ti)u(o)}}};function xy(e,t,n,r){const i=(e-t)/(e+n-2*t);0<i&&i<1&&r(e+(t-e)*i)}function by(e,t,n,r,i){const a=r-e+3*t-3*n,u=e+n-2*t,o=e-t;let s=0,l=0,f;Math.abs(a)>F4?(f=u*u+o*a,f>=0&&(f=Math.sqrt(f),s=(-u+f)/a,l=(-u-f)/a)):s=.5*o/u,0<s&&s<1&&i(Ay(s,e,t,n,r)),0<l&&l<1&&i(Ay(l,e,t,n,r))}function Ay(e,t,n,r,i){const a=1-e,u=a*a,o=e*e;return u*a*t+3*u*e*n+3*a*o*r+o*e*i}var Or=(Or=Tr(1,1))?Or.getContext("2d"):null;const Jh=new Be;function P1(e){return function(t,n){if(!Or)return!0;e(Or,t),Jh.clear().union(t.bounds).intersect(n).round();const{x1:r,y1:i,x2:a,y2:u}=Jh;for(let o=i;o<=u;++o)for(let s=r;s<=a;++s)if(Or.isPointInPath(s,o))return!0;return!1}}function I1(e,t){return t.contains(e.x||0,e.y||0)}function FE(e,t){const n=e.x||0,r=e.y||0,i=e.width||0,a=e.height||0;return t.intersects(Jh.set(n,r,n+i,r+a))}function kE(e,t){const n=e.x||0,r=e.y||0,i=e.x2!=null?e.x2:n,a=e.y2!=null?e.y2:r;return Hi(t,n,r,i,a)}function Hi(e,t,n,r,i){const{x1:a,y1:u,x2:o,y2:s}=e,l=r-t,f=i-n;let c=0,h=1,d,g,p,m;for(m=0;m<4;++m){if(m===0&&(d=-l,g=-(a-t)),m===1&&(d=l,g=o-t),m===2&&(d=-f,g=-(u-n)),m===3&&(d=f,g=s-n),Math.abs(d)<1e-10&&g<0)return!1;if(p=g/d,d<0){if(p>h)return!1;p>c&&(c=p)}else if(d>0){if(p<c)return!1;p<h&&(h=p)}}return!0}function ca(e,t){e.globalCompositeOperation=t.blend||"source-over"}function fn(e,t){return e??t}function Ey(e,t){const n=t.length;for(let r=0;r<n;++r)e.addColorStop(t[r].offset,t[r].color);return e}function gS(e,t,n){const r=n.width(),i=n.height();let a;if(t.gradient==="radial")a=e.createRadialGradient(n.x1+fn(t.x1,.5)*r,n.y1+fn(t.y1,.5)*i,Math.max(r,i)*fn(t.r1,0),n.x1+fn(t.x2,.5)*r,n.y1+fn(t.y2,.5)*i,Math.max(r,i)*fn(t.r2,.5));else{const u=fn(t.x1,0),o=fn(t.y1,0),s=fn(t.x2,1),l=fn(t.y2,0);if(u===s||o===l||r===i)a=e.createLinearGradient(n.x1+u*r,n.y1+o*i,n.x1+s*r,n.y1+l*i);else{const f=Tr(Math.ceil(r),Math.ceil(i)),c=f.getContext("2d");return c.scale(r,i),c.fillStyle=Ey(c.createLinearGradient(u,o,s,l),t.stops),c.fillRect(0,0,r,i),e.createPattern(f,"no-repeat")}}return Ey(a,t.stops)}function ME(e,t,n){return O1(n)?gS(e,n,t.bounds):n}function pl(e,t,n){return n*=t.fillOpacity==null?1:t.fillOpacity,n>0?(e.globalAlpha=n,e.fillStyle=ME(e,t,t.fill),!0):!1}var pS=[];function ha(e,t,n){var r=(r=t.strokeWidth)!=null?r:1;return r<=0?!1:(n*=t.strokeOpacity==null?1:t.strokeOpacity,n>0?(e.globalAlpha=n,e.strokeStyle=ME(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||pS),e.lineDashOffset=t.strokeDashOffset||0),!0):!1)}function mS(e,t){return e.zindex-t.zindex||e.index-t.index}function U1(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(mS)}function bn(e,t){var n=e.items,r,i;if(!n||!n.length)return;const a=U1(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 ml(e,t){var n=e.items,r,i;if(!n||!n.length)return null;const a=U1(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 q1(e){return function(t,n,r){bn(n,i=>{(!r||r.intersects(i.bounds))&&SE(e,t,i,i)})}}function yS(e){return function(t,n,r){n.items.length&&(!r||r.intersects(n.bounds))&&SE(e,t,n.items[0],n.items)}}function SE(e,t,n,r){var i=n.opacity==null?1:n.opacity;i!==0&&(e(t,r)||(ca(t,n),n.fill&&pl(t,n,i)&&t.fill(),n.stroke&&ha(t,n,i)&&t.stroke()))}function Mf(e){return e=e||rn,function(t,n,r,i,a,u){return r*=t.pixelRatio,i*=t.pixelRatio,ml(n,o=>{const s=o.bounds;if(!(s&&!s.contains(a,u)||!s)&&e(t,o,r,i,a,u))return o})}}function xo(e,t){return function(n,r,i,a){var u=Array.isArray(r)?r[0]:r,o=t??u.fill,s=u.stroke&&n.isPointInStroke,l,f;return s&&(l=u.strokeWidth,f=u.strokeCap,n.lineWidth=l??1,n.lineCap=f??"butt"),e(n,r)?!1:o&&n.isPointInPath(i,a)||s&&n.isPointInStroke(i,a)}}function j1(e){return Mf(xo(e))}function si(e,t){return"translate("+e+","+t+")"}function W1(e){return"rotate("+e+")"}function vS(e,t){return"scale("+e+","+t+")"}function $E(e){return si(e.x||0,e.y||0)}function xS(e){return si(e.x||0,e.y||0)+(e.angle?" "+W1(e.angle):"")}function bS(e){return si(e.x||0,e.y||0)+(e.angle?" "+W1(e.angle):"")+(e.scaleX||e.scaleY?" "+vS(e.scaleX||1,e.scaleY||1):"")}function Y1(e,t,n){function r(u,o){u("transform",xS(o)),u("d",t(null,o))}function i(u,o){return t(vo(u,o.angle),o),fr(u,o).translate(o.x||0,o.y||0)}function a(u,o){var s=o.x||0,l=o.y||0,f=o.angle||0;u.translate(s,l),f&&u.rotate(f*=Nr),u.beginPath(),t(u,o),f&&u.rotate(-f),u.translate(-s,-l)}return{type:e,tag:"path",nested:!1,attr:r,bound:i,draw:q1(a),pick:j1(a),isect:n||P1(a)}}var AS=Y1("arc",aS);function ES(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,u,o;--i>=0;)e[i].defined!==!1&&(o=Math.abs(e[i][r]-n),o<a&&(a=o,u=e[i]));return u}function wS(e,t){for(var n=Math.pow(e[0].strokeWidth||1,2),r=e.length,i,a,u;--r>=0;)if(e[r].defined!==!1&&(i=e[r].x-t[0],a=e[r].y-t[1],u=i*i+a*a,u<n))return e[r];return null}function CS(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 H1(e,t,n){function r(s,l){var f=l.mark.items;f.length&&s("d",t(null,f))}function i(s,l){var f=l.items;return f.length===0?s:(t(vo(s),f),fr(s,f[0]))}function a(s,l){s.beginPath(),t(s,l)}const u=xo(a);function o(s,l,f,c,h,d){var g=l.items,p=l.bounds;return!g||!g.length||p&&!p.contains(h,d)?null:(f*=s.pixelRatio,c*=s.pixelRatio,u(s,g,f,c)?g[0]:null)}return{type:e,tag:"path",nested:!0,attr:r,bound:i,draw:yS(a),pick:o,isect:I1,tip:n}}var DS=H1("area",uS,ES);function FS(e,t){var n=t.clip;e.save(),ee(n)?(e.beginPath(),n(e),e.clip()):BE(e,t.group)}function BE(e,t){e.beginPath(),L1(t)?ka(e,t,0,0):e.rect(0,0,t.width||0,t.height||0),e.clip()}function _E(e){const t=fn(e.strokeWidth,1);return e.strokeOffset!=null?e.strokeOffset:e.stroke&&t>.5&&t<1.5?.5-Math.abs(t-1):0}function kS(e,t){e("transform",$E(t))}function RE(e,t){const n=_E(t);e("d",ka(null,t,n,n))}function MS(e,t){e("class","background"),e("aria-hidden",!0),RE(e,t)}function SS(e,t){e("class","foreground"),e("aria-hidden",!0),t.strokeForeground?RE(e,t):e("d","")}function $S(e,t,n){const r=t.clip?N1(n,t,t):null;e("clip-path",r)}function BS(e,t){if(!t.clip&&t.items){const n=t.items,r=n.length;for(let i=0;i<r;++i)e.union(n[i].bounds)}return(t.clip||t.width||t.height)&&!t.noBound&&e.add(0,0).add(t.width||0,t.height||0),fr(e,t),e.translate(t.x||0,t.y||0)}function Iu(e,t,n,r){const i=_E(t);e.beginPath(),ka(e,t,(n||0)+i,(r||0)+i)}const _S=xo(Iu),RS=xo(Iu,!1),TS=xo(Iu,!0);function OS(e,t,n,r){bn(t,i=>{const a=i.x||0,u=i.y||0,o=i.strokeForeground,s=i.opacity==null?1:i.opacity;(i.stroke||i.fill)&&s&&(Iu(e,i,a,u),ca(e,i),i.fill&&pl(e,i,s)&&e.fill(),i.stroke&&!o&&ha(e,i,s)&&e.stroke()),e.save(),e.translate(a,u),i.clip&&BE(e,i),n&&n.translate(-a,-u),bn(i,l=>{(l.marktype==="group"||r==null||r.includes(l.marktype))&&this.draw(e,l,n,r)}),n&&n.translate(a,u),e.restore(),o&&i.stroke&&s&&(Iu(e,i,a,u),ca(e,i),ha(e,i,s)&&e.stroke())})}function zS(e,t,n,r,i,a){if(t.bounds&&!t.bounds.contains(i,a)||!t.items)return null;const u=n*e.pixelRatio,o=r*e.pixelRatio;return ml(t,s=>{let l,f,c;const h=s.bounds;if(h&&!h.contains(i,a))return;f=s.x||0,c=s.y||0;const d=f+(s.width||0),g=c+(s.height||0),p=s.clip;if(p&&(i<f||i>d||a<c||a>g))return;if(e.save(),e.translate(f,c),f=i-f,c=a-c,p&&L1(s)&&!TS(e,s,u,o))return e.restore(),null;const m=s.strokeForeground,y=t.interactive!==!1;return y&&m&&s.stroke&&RS(e,s,u,o)?(e.restore(),s):(l=ml(s,v=>LS(v,f,c)?this.pick(v,n,r,f,c):null),!l&&y&&(s.fill||!m&&s.stroke)&&_S(e,s,u,o)&&(l=s),e.restore(),l||null)})}function LS(e,t,n){return(e.interactive!==!1||e.marktype==="group")&&e.bounds&&e.bounds.contains(t,n)}var NS={type:"group",tag:"g",nested:!1,attr:kS,bound:BS,draw:OS,pick:zS,isect:FE,content:$S,background:MS,foreground:SS},Uu={xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",version:"1.1"};function G1(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(r=>{e.image=r,e.image.url=e.url})),n}function V1(e,t){return e.width!=null?e.width:!t||!t.width?0:e.aspect!==!1&&e.height?e.height*t.width/t.height:t.width}function X1(e,t){return e.height!=null?e.height:!t||!t.height?0:e.aspect!==!1&&e.width?e.width*t.height/t.width:t.height}function Sf(e,t){return e==="center"?t/2:e==="right"?t:0}function $f(e,t){return e==="middle"?t/2:e==="bottom"?t:0}function PS(e,t,n){const r=G1(t,n),i=V1(t,r),a=X1(t,r),u=(t.x||0)-Sf(t.align,i),o=(t.y||0)-$f(t.baseline,a),s=!r.src&&r.toDataURL?r.toDataURL():r.src||"";e("href",s,Uu["xmlns:xlink"],"xlink:href"),e("transform",si(u,o)),e("width",i),e("height",a),e("preserveAspectRatio",t.aspect===!1?"none":"xMidYMid")}function IS(e,t){const n=t.image,r=V1(t,n),i=X1(t,n),a=(t.x||0)-Sf(t.align,r),u=(t.y||0)-$f(t.baseline,i);return e.set(a,u,a+r,u+i)}function US(e,t,n){bn(t,r=>{if(n&&!n.intersects(r.bounds))return;const i=G1(r,this);let a=V1(r,i),u=X1(r,i);if(a===0||u===0)return;let o=(r.x||0)-Sf(r.align,a),s=(r.y||0)-$f(r.baseline,u),l,f,c,h;r.aspect!==!1&&(f=i.width/i.height,c=r.width/r.height,f===f&&c===c&&f!==c&&(c<f?(h=a/f,s+=(u-h)/2,u=h):(h=u*f,o+=(a-h)/2,a=h))),(i.complete||i.toDataURL)&&(ca(e,r),e.globalAlpha=(l=r.opacity)!=null?l:1,e.imageSmoothingEnabled=r.smooth!==!1,e.drawImage(i,o,s,a,u))})}var qS={type:"image",tag:"image",nested:!1,attr:PS,bound:IS,draw:US,pick:Mf(),isect:rn,get:G1,xOffset:Sf,yOffset:$f},jS=H1("line",oS,wS);function WS(e,t){var n=t.scaleX||1,r=t.scaleY||1;(n!==1||r!==1)&&e("vector-effect","non-scaling-stroke"),e("transform",bS(t)),e("d",t.path)}function ys(e,t){var n=t.path;if(n==null)return!0;var r=t.x||0,i=t.y||0,a=t.scaleX||1,u=t.scaleY||1,o=(t.angle||0)*Nr,s=t.pathCache;(!s||s.path!==n)&&((t.pathCache=s=fa(n)).path=n),o&&e.rotate&&e.translate?(e.translate(r,i),e.rotate(o),Pu(e,s,0,0,a,u),e.rotate(-o),e.translate(-r,-i)):Pu(e,s,r,i,a,u)}function YS(e,t){return ys(vo(e,t.angle),t)?e.set(0,0,0,0):fr(e,t,!0)}var HS={type:"path",tag:"path",nested:!1,attr:WS,bound:YS,draw:q1(ys),pick:j1(ys),isect:P1(ys)};function GS(e,t){e("d",ka(null,t))}function VS(e,t){var n,r;return fr(e.set(n=t.x||0,r=t.y||0,n+t.width||0,r+t.height||0),t)}function wy(e,t){e.beginPath(),ka(e,t)}var XS={type:"rect",tag:"path",nested:!1,attr:GS,bound:VS,draw:q1(wy),pick:j1(wy),isect:FE};function KS(e,t){e("transform",$E(t)),e("x2",t.x2!=null?t.x2-(t.x||0):0),e("y2",t.y2!=null?t.y2-(t.y||0):0)}function ZS(e,t){var n,r;return fr(e.set(n=t.x||0,r=t.y||0,t.x2!=null?t.x2:n,t.y2!=null?t.y2:r),t)}function TE(e,t,n){var r,i,a,u;return t.stroke&&ha(e,t,n)?(r=t.x||0,i=t.y||0,a=t.x2!=null?t.x2:r,u=t.y2!=null?t.y2:i,e.beginPath(),e.moveTo(r,i),e.lineTo(a,u),!0):!1}function QS(e,t,n){bn(t,r=>{if(!(n&&!n.intersects(r.bounds))){var i=r.opacity==null?1:r.opacity;i&&TE(e,r,i)&&(ca(e,r),e.stroke())}})}function JS(e,t,n,r){return e.isPointInStroke?TE(e,t,1)&&e.isPointInStroke(n,r):!1}var e$={type:"rule",tag:"line",nested:!1,attr:KS,bound:ZS,draw:QS,pick:Mf(JS),isect:kE},t$=Y1("shape",sS),n$=Y1("symbol",lS,I1);const Cy=vb();var Ut={height:Un,measureWidth:K1,estimateWidth:yl,width:yl,canvas:OE};OE(!0);function OE(e){Ut.width=e&&Or?K1:yl}function yl(e,t){return zE(Ir(e,t),Un(e))}function zE(e,t){return~~(.8*e.length*t)}function K1(e,t){return Un(e)<=0||!(t=Ir(e,t))?0:LE(t,Bf(e))}function LE(e,t){const n=`(${t}) ${e}`;let r=Cy.get(n);return r===void 0&&(Or.font=t,r=Or.measureText(e).width,Cy.set(n,r)),r}function Un(e){return e.fontSize!=null?+e.fontSize||0:11}function Pr(e){return e.lineHeight!=null?e.lineHeight:Un(e)+2}function r$(e){return j(e)?e.length>1?e:e[0]:e}function bo(e){return r$(e.lineBreak&&e.text&&!j(e.text)?e.text.split(e.lineBreak):e.text)}function Z1(e){const t=bo(e);return(j(t)?t.length-1:0)*Pr(e)}function Ir(e,t){const n=t==null?"":(t+"").trim();return e.limit>0&&n.length?a$(e,n):n}function i$(e){if(Ut.width===K1){const t=Bf(e);return n=>LE(n,t)}else if(Ut.width===yl){const t=Un(e);return n=>zE(n,t)}else return t=>Ut.width(e,t)}function a$(e,t){var n=+e.limit,r=i$(e);if(r(t)<n)return t;var i=e.ellipsis||"…",a=e.dir==="rtl",u=0,o=t.length,s;if(n-=r(i),a){for(;u<o;)s=u+o>>>1,r(t.slice(s))>n?u=s+1:o=s;return i+t.slice(u)}else{for(;u<o;)s=1+(u+o>>>1),r(t.slice(0,s))<n?u=s:o=s-1;return t.slice(0,u)+i}}function Ao(e,t){var n=e.font;return(t&&n?String(n).replace(/"/g,"'"):n)||"sans-serif"}function Bf(e,t){return(e.fontStyle?e.fontStyle+" ":"")+(e.fontVariant?e.fontVariant+" ":"")+(e.fontWeight?e.fontWeight+" ":"")+Un(e)+"px "+Ao(e,t)}function Q1(e){var t=e.baseline,n=Un(e);return Math.round(t==="top"?.79*n:t==="middle"?.3*n:t==="bottom"?-.21*n:t==="line-top"?.29*n+.5*Pr(e):t==="line-bottom"?.29*n-.5*Pr(e):0)}const u$={left:"start",center:"middle",right:"end"},wu=new Be;function _f(e){var t=e.x||0,n=e.y||0,r=e.radius||0,i;return r&&(i=(e.theta||0)-ti,t+=r*Math.cos(i),n+=r*Math.sin(i)),wu.x1=t,wu.y1=n,wu}function o$(e,t){var n=t.dx||0,r=(t.dy||0)+Q1(t),i=_f(t),a=i.x1,u=i.y1,o=t.angle||0,s;e("text-anchor",u$[t.align]||"start"),o?(s=si(a,u)+" "+W1(o),(n||r)&&(s+=" "+si(n,r))):s=si(a+n,u+r),e("transform",s)}function J1(e,t,n){var r=Ut.height(t),i=t.align,a=_f(t),u=a.x1,o=a.y1,s=t.dx||0,l=(t.dy||0)+Q1(t)-Math.round(.8*r),f=bo(t),c;if(j(f)?(r+=Pr(t)*(f.length-1),c=f.reduce((h,d)=>Math.max(h,Ut.width(t,d)),0)):c=Ut.width(t,f),i==="center"?s-=c/2:i==="right"&&(s-=c),e.set(s+=u,l+=o,s+c,l+r),t.angle&&!n)e.rotate(t.angle*Nr,u,o);else if(n===2)return e.rotatedPoints(t.angle*Nr,u,o);return e}function s$(e,t,n){bn(t,r=>{var i=r.opacity==null?1:r.opacity,a,u,o,s,l,f,c;if(!(n&&!n.intersects(r.bounds)||i===0||r.fontSize<=0||r.text==null||r.text.length===0)){if(e.font=Bf(r),e.textAlign=r.align||"left",a=_f(r),u=a.x1,o=a.y1,r.angle&&(e.save(),e.translate(u,o),e.rotate(r.angle*Nr),u=o=0),u+=r.dx||0,o+=(r.dy||0)+Q1(r),f=bo(r),ca(e,r),j(f))for(l=Pr(r),s=0;s<f.length;++s)c=Ir(r,f[s]),r.fill&&pl(e,r,i)&&e.fillText(c,u,o),r.stroke&&ha(e,r,i)&&e.strokeText(c,u,o),o+=l;else c=Ir(r,f),r.fill&&pl(e,r,i)&&e.fillText(c,u,o),r.stroke&&ha(e,r,i)&&e.strokeText(c,u,o);r.angle&&e.restore()}})}function l$(e,t,n,r,i,a){if(t.fontSize<=0)return!1;if(!t.angle)return!0;var u=_f(t),o=u.x1,s=u.y1,l=J1(wu,t,1),f=-t.angle*Nr,c=Math.cos(f),h=Math.sin(f),d=c*i-h*a+(o-c*o+h*s),g=h*i+c*a+(s-h*o-c*s);return l.contains(d,g)}function f$(e,t){const n=J1(wu,e,2);return Hi(t,n[0],n[1],n[2],n[3])||Hi(t,n[0],n[1],n[4],n[5])||Hi(t,n[4],n[5],n[6],n[7])||Hi(t,n[2],n[3],n[6],n[7])}var c$={type:"text",tag:"text",nested:!1,attr:o$,bound:J1,draw:s$,pick:Mf(l$),isect:f$},h$=H1("trail",fS,CS),Ht={arc:AS,area:DS,group:NS,image:qS,line:jS,path:HS,rect:XS,rule:e$,shape:t$,symbol:n$,text:c$,trail:h$};function e0(e,t,n){var r=Ht[e.mark.marktype],i=t||r.bound;return r.nested&&(e=e.mark),i(e.bounds||(e.bounds=new Be),e,n)}var Dy={mark:null};function NE(e,t,n){var r=Ht[e.marktype],i=r.bound,a=e.items,u=a&&a.length,o,s,l,f;if(r.nested)return u?l=a[0]:(Dy.mark=e,l=Dy),f=e0(l,i,n),t=t&&t.union(f)||f,t;if(t=t||e.bounds&&e.bounds.clear()||new Be,u)for(o=0,s=a.length;o<s;++o)t.union(e0(a[o],i,n));return e.bounds=t}const d$=["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"];function PE(e,t){return JSON.stringify(e,d$,t)}function IE(e){const t=typeof e=="string"?JSON.parse(e):e;return UE(t)}function UE(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"&&UE(n[i]);return t&&NE(e),e}class qE{constructor(t){arguments.length?this.root=IE(t):(this.root=Fy({marktype:"group",name:"root",role:"frame"}),this.root.items=[new Ff(this.root)])}toJSON(t){return PE(this.root,t||0)}mark(t,n,r){n=n||this.root.items[0];const i=Fy(t,n);return n.items[r]=i,i.zindex&&(i.group.zdirty=!0),i}}function Fy(e,t){const n={bounds:new Be,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 Dr(e,t,n){return!e&&typeof document<"u"&&document.createElement&&(e=document),e?n?e.createElementNS(n,t):e.createElement(t):null}function eg(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 Re(e,t,n,r){var i=e.childNodes[t],a;return(!i||i.tagName.toLowerCase()!==n.toLowerCase())&&(a=i||null,i=Dr(e.ownerDocument,n,r),e.insertBefore(i,a)),i}function Xt(e,t){for(var n=e.childNodes,r=n.length;r>t;)e.removeChild(n[--r]);return e}function jE(e){return"mark-"+e.marktype+(e.role?" role-"+e.role:"")+(e.name?" "+e.name:"")}function Rf(e,t){const n=t.getBoundingClientRect();return[e.clientX-n.left-(t.clientLeft||0),e.clientY-n.top-(t.clientTop||0)]}function g$(e,t,n,r){var i=e&&e.mark,a,u;if(i&&(a=Ht[i.marktype]).tip){for(u=Rf(t,n),u[0]-=r[0],u[1]-=r[1];e=e.mark.group;)u[0]-=e.x||0,u[1]-=e.y||0;e=a.tip(i.items,u)}return e}class tg{constructor(t,n){this._active=null,this._handlers={},this._loader=t||sf(),this._tooltip=n||p$}initialize(t,n,r){return this._el=t,this._obj=r||null,this.origin(n)}element(){return this._el}canvas(){return this._el&&this._el.firstChild}origin(t){return arguments.length?(this._origin=t||[0,0],this):this._origin.slice()}scene(t){return arguments.length?(this._scene=t,this):this._scene}on(){}off(){}_handlerIndex(t,n,r){for(let i=t?t.length:0;--i>=0;)if(t[i].type===n&&(!r||t[i].handler===r))return i;return-1}handlers(t){const n=this._handlers,r=[];if(t)r.push(...n[this.eventName(t)]);else for(const i in n)r.push(...n[i]);return r}eventName(t){const n=t.indexOf(".");return n<0?t:t.slice(0,n)}handleHref(t,n,r){this._loader.sanitize(r,{context:"href"}).then(i=>{const a=new MouseEvent(t.type,t),u=Dr(null,"a");for(const o in i)u.setAttribute(o,i[o]);u.dispatchEvent(a)}).catch(()=>{})}handleTooltip(t,n,r){if(n&&n.tooltip!=null){n=g$(n,t,this.canvas(),this._origin);const i=r&&n&&n.tooltip||null;this._tooltip.call(this._obj,this,t,n,i)}}getItemBoundingClientRect(t){const n=this.canvas();if(!n)return;const r=n.getBoundingClientRect(),i=this._origin,a=t.bounds,u=a.width(),o=a.height();let s=a.x1+i[0]+r.left,l=a.y1+i[1]+r.top;for(;t.mark&&(t=t.mark.group);)s+=t.x||0,l+=t.y||0;return{x:s,y:l,width:u,height:o,left:s,top:l,right:s+u,bottom:l+o}}}function p$(e,t,n,r){e.element().setAttribute("title",r||"")}class Eo{constructor(t){this._el=null,this._bgcolor=null,this._loader=new DE(t)}initialize(t,n,r,i,a){return this._el=t,this.resize(n,r,i,a)}element(){return this._el}canvas(){return this._el&&this._el.firstChild}background(t){return arguments.length===0?this._bgcolor:(this._bgcolor=t,this)}resize(t,n,r,i){return this._width=t,this._height=n,this._origin=r||[0,0],this._scale=i||1,this}dirty(){}render(t,n){const r=this;return r._call=function(){r._render(t,n)},r._call(),r._call=null,r}_render(){}renderAsync(t,n){const r=this.render(t,n);return this._ready?this._ready.then(()=>r):Promise.resolve(r)}_load(t,n){var r=this,i=r._loader[t](n);if(!r._ready){const a=r._call;r._ready=r._loader.ready().then(u=>{u&&a(),r._ready=null})}return i}sanitizeURL(t){return this._load("sanitizeURL",t)}loadImage(t){return this._load("loadImage",t)}}const m$="keydown",y$="keypress",v$="keyup",WE="dragenter",vs="dragleave",YE="dragover",t0="pointerdown",x$="pointerup",vl="pointermove",xs="pointerout",HE="pointerover",n0="mousedown",b$="mouseup",GE="mousemove",xl="mouseout",VE="mouseover",bl="click",A$="dblclick",E$="wheel",XE="mousewheel",Al="touchstart",El="touchmove",wl="touchend",w$=[m$,y$,v$,WE,vs,YE,t0,x$,vl,xs,HE,n0,b$,GE,xl,VE,bl,A$,E$,XE,Al,El,wl],r0=vl,Cu=xl,i0=bl;class wo extends tg{constructor(t,n){super(t,n),this._down=null,this._touch=null,this._first=!0,this._events={},this.events=w$,this.pointermove=My([vl,GE],[HE,VE],[xs,xl]),this.dragover=My([YE],[WE],[vs]),this.pointerout=Sy([xs,xl]),this.dragleave=Sy([vs])}initialize(t,n,r){return this._canvas=t&&eg(t,"canvas"),[bl,n0,t0,vl,xs,vs].forEach(i=>ky(this,i)),super.initialize(t,n,r)}canvas(){return this._canvas}context(){return this._canvas.getContext("2d")}DOMMouseScroll(t){this.fire(XE,t)}pointerdown(t){this._down=this._active,this.fire(t0,t)}mousedown(t){this._down=this._active,this.fire(n0,t)}click(t){this._down===this._active&&(this.fire(bl,t),this._down=null)}touchstart(t){this._touch=this.pickEvent(t.changedTouches[0]),this._first&&(this._active=this._touch,this._first=!1),this.fire(Al,t,!0)}touchmove(t){this.fire(El,t,!0)}touchend(t){this.fire(wl,t,!0),this._touch=null}fire(t,n,r){const i=r?this._touch:this._active,a=this._handlers[t];if(n.vegaType=t,t===i0&&i&&i.href?this.handleHref(n,i,i.href):(t===r0||t===Cu)&&this.handleTooltip(n,i,t!==Cu),a)for(let u=0,o=a.length;u<o;++u)a[u].handler.call(this._obj,n,i)}on(t,n){const r=this.eventName(t),i=this._handlers;return this._handlerIndex(i[r],t,n)<0&&(ky(this,t),(i[r]||(i[r]=[])).push({type:t,handler:n})),this}off(t,n){const r=this.eventName(t),i=this._handlers[r],a=this._handlerIndex(i,t,n);return a>=0&&i.splice(a,1),this}pickEvent(t){const n=Rf(t,this._canvas),r=this._origin;return this.pick(this._scene,n[0],n[1],n[0]-r[0],n[1]-r[1])}pick(t,n,r,i,a){const u=this.context();return Ht[t.marktype].pick.call(this,u,t,n,r,i,a)}}const C$=e=>e===Al||e===El||e===wl?[Al,El,wl]:[e];function ky(e,t){C$(t).forEach(n=>D$(e,n))}function D$(e,t){const n=e.canvas();n&&!e._events[t]&&(e._events[t]=1,n.addEventListener(t,e[t]?r=>e[t](r):r=>e.fire(t,r)))}function cu(e,t,n){t.forEach(r=>e.fire(r,n))}function My(e,t,n){return function(r){const i=this._active,a=this.pickEvent(r);a===i?cu(this,e,r):((!i||!i.exit)&&cu(this,n,r),this._active=a,cu(this,t,r),cu(this,e,r))}}function Sy(e){return function(t){cu(this,e,t),this._active=null}}function F$(){return typeof window<"u"&&window.devicePixelRatio||1}function k$(e,t,n,r,i,a){const u=typeof HTMLElement<"u"&&e instanceof HTMLElement&&e.parentNode!=null,o=e.getContext("2d"),s=u?F$():i;e.width=t*s,e.height=n*s;for(const l in a)o[l]=a[l];return u&&s!==1&&(e.style.width=t+"px",e.style.height=n+"px"),o.pixelRatio=s,o.setTransform(s,0,0,s,s*r[0],s*r[1]),e}class Cl extends Eo{constructor(t){super(t),this._options={},this._redraw=!1,this._dirty=new Be,this._tempb=new Be}initialize(t,n,r,i,a,u){return this._options=u||{},this._canvas=this._options.externalContext?null:Tr(1,1,this._options.type),t&&this._canvas&&(Xt(t,0).appendChild(this._canvas),this._canvas.setAttribute("class","marks")),super.initialize(t,n,r,i,a)}resize(t,n,r,i){if(super.resize(t,n,r,i),this._canvas)k$(this._canvas,this._width,this._height,this._origin,this._scale,this._options.context);else{const a=this._options.externalContext;a||$("CanvasRenderer is missing a valid canvas or context"),a.scale(this._scale,this._scale),a.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(t){const n=this._tempb.clear().union(t.bounds);let r=t.mark.group;for(;r;)n.translate(r.x||0,r.y||0),r=r.mark.group;this._dirty.union(n)}_render(t,n){const r=this.context(),i=this._origin,a=this._width,u=this._height,o=this._dirty,s=M$(i,a,u);r.save();const l=this._redraw||o.empty()?(this._redraw=!1,s.expand(1)):S$(r,s.intersect(o),i);return this.clear(-i[0],-i[1],a,u),this.draw(r,t,l,n),r.restore(),o.clear(),this}draw(t,n,r,i){if(n.marktype!=="group"&&i!=null&&!i.includes(n.marktype))return;const a=Ht[n.marktype];n.clip&&FS(t,n),a.draw.call(this,t,n,r,i),n.clip&&t.restore()}clear(t,n,r,i){const a=this._options,u=this.context();a.type!=="pdf"&&!a.externalContext&&u.clearRect(t,n,r,i),this._bgcolor!=null&&(u.fillStyle=this._bgcolor,u.fillRect(t,n,r,i))}}const M$=(e,t,n)=>new Be().set(0,0,t,n).translate(-e[0],-e[1]);function S$(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}class KE extends tg{constructor(t,n){super(t,n);const r=this;r._hrefHandler=Lc(r,(i,a)=>{a&&a.href&&r.handleHref(i,a,a.href)}),r._tooltipHandler=Lc(r,(i,a)=>{r.handleTooltip(i,a,i.type!==Cu)})}initialize(t,n,r){let i=this._svg;return i&&(i.removeEventListener(i0,this._hrefHandler),i.removeEventListener(r0,this._tooltipHandler),i.removeEventListener(Cu,this._tooltipHandler)),this._svg=i=t&&eg(t,"svg"),i&&(i.addEventListener(i0,this._hrefHandler),i.addEventListener(r0,this._tooltipHandler),i.addEventListener(Cu,this._tooltipHandler)),super.initialize(t,n,r)}canvas(){return this._svg}on(t,n){const r=this.eventName(t),i=this._handlers;if(this._handlerIndex(i[r],t,n)<0){const u={type:t,handler:n,listener:Lc(this,n)};(i[r]||(i[r]=[])).push(u),this._svg&&this._svg.addEventListener(r,u.listener)}return this}off(t,n){const r=this.eventName(t),i=this._handlers[r],a=this._handlerIndex(i,t,n);return a>=0&&(this._svg&&this._svg.removeEventListener(r,i[a].listener),i.splice(a,1)),this}}const Lc=(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)},ZE="aria-hidden",ng="aria-label",rg="role",ig="aria-roledescription",QE="graphics-object",ag="graphics-symbol",JE=(e,t,n)=>({[rg]:e,[ig]:t,[ng]:n||void 0}),$$=jt(["axis-domain","axis-grid","axis-label","axis-tick","axis-title","legend-band","legend-entry","legend-gradient","legend-label","legend-title","legend-symbol","title"]),$y={axis:{desc:"axis",caption:R$},legend:{desc:"legend",caption:T$},"title-text":{desc:"title",caption:e=>`Title text '${_y(e)}'`},"title-subtitle":{desc:"subtitle",caption:e=>`Subtitle text '${_y(e)}'`}},By={ariaRole:rg,ariaRoleDescription:ig,description:ng};function e3(e,t){const n=t.aria===!1;if(e(ZE,n||void 0),n||t.description==null)for(const r in By)e(By[r],void 0);else{const r=t.mark.marktype;e(ng,t.description),e(rg,t.ariaRole||(r==="group"?QE:ag)),e(ig,t.ariaRoleDescription||`${r} mark`)}}function t3(e){return e.aria===!1?{[ZE]:!0}:$$[e.role]?null:$y[e.role]?_$(e,$y[e.role]):B$(e)}function B$(e){const t=e.marktype,n=t==="group"||t==="text"||e.items.some(r=>r.description!=null&&r.aria!==!1);return JE(n?QE:ag,`${t} mark container`,e.description)}function _$(e,t){try{const n=e.items[0],r=t.caption||(()=>"");return JE(t.role||ag,t.desc,n.description||r(n))}catch{return null}}function _y(e){return V(e.text).join(" ")}function R$(e){const t=e.datum,n=e.orient,r=t.title?n3(e):null,i=e.context,a=i.scales[t.scale].value,u=i.dataflow.locale(),o=a.type;return`${n==="left"||n==="right"?"Y":"X"}-axis`+(r?` titled '${r}'`:"")+` for a ${la(o)?"discrete":o} scale with ${pE(u,a,e)}`}function T$(e){const t=e.datum,n=t.title?n3(e):null,r=`${t.type||""} legend`.trim(),i=t.scales,a=Object.keys(i),u=e.context,o=u.scales[i[a[0]]].value,s=u.dataflow.locale();return z$(r)+(n?` titled '${n}'`:"")+` for ${O$(a)} with ${pE(s,o,e)}`}function n3(e){try{return V(oe(e.items).items[0].text).join(" ")}catch{return null}}function O$(e){return e=e.map(t=>t+(t==="fill"||t==="stroke"?" color":"")),e.length<2?e[0]:e.slice(0,-1).join(", ")+" and "+oe(e)}function z$(e){return e.length?e[0].toUpperCase()+e.slice(1):e}const r3=e=>(e+"").replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">"),L$=e=>r3(e).replace(/"/g,""").replace(/\t/g,"	").replace(/\n/g,"
").replace(/\r/g,"
");function ug(){let e="",t="",n="";const r=[],i=()=>t=n="",a=s=>{t&&(e+=`${t}>${n}`,i()),r.push(s)},u=(s,l)=>(l!=null&&(t+=` ${s}="${L$(l)}"`),o),o={open(s){a(s),t="<"+s;for(var l=arguments.length,f=new Array(l>1?l-1:0),c=1;c<l;c++)f[c-1]=arguments[c];for(const h of f)for(const d in h)u(d,h[d]);return o},close(){const s=r.pop();return t?e+=t+(n?`>${n}</${s}>`:"/>"):e+=`</${s}>`,i(),o},attr:u,text:s=>(n+=r3(s),o),toString:()=>e};return o}const i3=e=>a3(ug(),e)+"";function a3(e,t){if(e.open(t.tagName),t.hasAttributes()){const n=t.attributes,r=n.length;for(let i=0;i<r;++i)e.attr(n[i].name,n[i].value)}if(t.hasChildNodes()){const n=t.childNodes;for(const r of n)r.nodeType===3?e.text(r.nodeValue):a3(e,r)}return e.close()}const Dl={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"},Fl={blend:"mix-blend-mode"},u3={fill:"none","stroke-miterlimit":10},qa=0,Ry="http://www.w3.org/2000/xmlns/",_e=Uu.xmlns;class og extends Eo{constructor(t){super(t),this._dirtyID=0,this._dirty=[],this._svg=null,this._root=null,this._defs=null}initialize(t,n,r,i,a){return this._defs={},this._clearDefs(),t&&(this._svg=Re(t,0,"svg",_e),this._svg.setAttributeNS(Ry,"xmlns",_e),this._svg.setAttributeNS(Ry,"xmlns:xlink",Uu["xmlns:xlink"]),this._svg.setAttribute("version",Uu.version),this._svg.setAttribute("class","marks"),Xt(t,1),this._root=Re(this._svg,qa,"g",_e),Fr(this._root,u3),Xt(this._svg,qa+1)),this.background(this._bgcolor),super.initialize(t,n,r,i,a)}background(t){return arguments.length&&this._svg&&this._svg.style.setProperty("background-color",t),super.background(...arguments)}resize(t,n,r,i){return super.resize(t,n,r,i),this._svg&&(Fr(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(){const t=this._svg,n=this._bgcolor;if(!t)return null;let r;n&&(t.removeAttribute("style"),r=Re(t,qa,"rect",_e),Fr(r,{width:this._width,height:this._height,fill:n}));const i=i3(t);return n&&(t.removeChild(r),this._svg.style.setProperty("background-color",n)),i}_render(t,n){return this._dirtyCheck()&&(this._dirtyAll&&this._clearDefs(),this.mark(this._root,t,void 0,n),Xt(this._root,1)),this.defs(),this._dirty=[],++this._dirtyID,this}dirty(t){t.dirty!==this._dirtyID&&(t.dirty=this._dirtyID,this._dirty.push(t))}isDirty(t){return this._dirtyAll||!t._svg||!t._svg.ownerSVGElement||t.dirty===this._dirtyID}_dirtyCheck(){this._dirtyAll=!0;const t=this._dirty;if(!t.length||!this._dirtyID)return!0;const n=++this._dirtyID;let r,i,a,u,o,s,l;for(o=0,s=t.length;o<s;++o)if(r=t[o],i=r.mark,i.marktype!==a&&(a=i.marktype,u=Ht[a]),i.zdirty&&i.dirty!==n&&(this._dirtyAll=!1,Ty(r,n),i.items.forEach(f=>{f.dirty=n})),!i.zdirty){if(r.exit){u.nested&&i.items.length?(l=i.items[0],l._svg&&this._update(u,l._svg,l)):r._svg&&(l=r._svg.parentNode,l&&l.removeChild(r._svg)),r._svg=null;continue}r=u.nested?i.items[0]:r,r._update!==n&&(!r._svg||!r._svg.ownerSVGElement?(this._dirtyAll=!1,Ty(r,n)):this._update(u,r._svg,r),r._update=n)}return!this._dirtyAll}mark(t,n,r,i){if(!this.isDirty(n))return n._svg;const a=this._svg,u=n.marktype,o=Ht[u],s=n.interactive===!1?"none":null,l=o.tag==="g",f=Oy(n,t,r,"g",a);if(u!=="group"&&i!=null&&!i.includes(u))return Xt(f,0),n._svg;f.setAttribute("class",jE(n));const c=t3(n);for(const p in c)ct(f,p,c[p]);l||ct(f,"pointer-events",s),ct(f,"clip-path",n.clip?N1(this,n,n.group):null);let h=null,d=0;const g=p=>{const m=this.isDirty(p),y=Oy(p,f,h,o.tag,a);m&&(this._update(o,y,p),l&&I$(this,y,p,i)),h=y,++d};return o.nested?n.items.length&&g(n.items[0]):bn(n,g),Xt(f,d),f}_update(t,n,r){ir=n,Ze=n.__values__,e3(Du,r),t.attr(Du,r,this);const i=q$[t.type];i&&i.call(this,t,n,r),ir&&this.style(ir,r)}style(t,n){if(n!=null){for(const r in Dl){let i=r==="font"?Ao(n):n[r];if(i===Ze[r])continue;const a=Dl[r];i==null?t.removeAttribute(a):(O1(i)&&(i=yE(i,this._defs.gradient,o3())),t.setAttribute(a,i+"")),Ze[r]=i}for(const r in Fl)bs(t,Fl[r],n[r])}}defs(){const t=this._svg,n=this._defs;let r=n.el,i=0;for(const a in n.gradient)r||(n.el=r=Re(t,qa+1,"defs",_e)),i=N$(r,n.gradient[a],i);for(const a in n.clipping)r||(n.el=r=Re(t,qa+1,"defs",_e)),i=P$(r,n.clipping[a],i);r&&(i===0?(t.removeChild(r),n.el=null):Xt(r,i))}_clearDefs(){const t=this._defs;t.gradient={},t.clipping={}}}function Ty(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 N$(e,t,n){let r,i,a;if(t.gradient==="radial"){let u=Re(e,n++,"pattern",_e);Fr(u,{id:gl+t.id,viewBox:"0,0,1,1",width:"100%",height:"100%",preserveAspectRatio:"xMidYMid slice"}),u=Re(u,0,"rect",_e),Fr(u,{width:1,height:1,fill:`url(${o3()}#${t.id})`}),e=Re(e,n++,"radialGradient",_e),Fr(e,{id:t.id,fx:t.x1,fy:t.y1,fr:t.r1,cx:t.x2,cy:t.y2,r:t.r2})}else e=Re(e,n++,"linearGradient",_e),Fr(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=Re(e,r,"stop",_e),a.setAttribute("offset",t.stops[r].offset),a.setAttribute("stop-color",t.stops[r].color);return Xt(e,r),n}function P$(e,t,n){let r;return e=Re(e,n,"clipPath",_e),e.setAttribute("id",t.id),t.path?(r=Re(e,0,"path",_e),r.setAttribute("d",t.path)):(r=Re(e,0,"rect",_e),Fr(r,{x:0,y:0,width:t.width,height:t.height})),Xt(e,1),n+1}function I$(e,t,n,r){t=t.lastChild.previousSibling;let i,a=0;bn(n,u=>{i=e.mark(t,u,i,r),++a}),Xt(t,1+a)}function Oy(e,t,n,r,i){let a=e._svg,u;if(!a&&(u=t.ownerDocument,a=Dr(u,r,_e),e._svg=a,e.mark&&(a.__data__=e,a.__values__={fill:"default"},r==="g"))){const o=Dr(u,"path",_e);a.appendChild(o),o.__data__=e;const s=Dr(u,"g",_e);a.appendChild(s),s.__data__=e;const l=Dr(u,"path",_e);a.appendChild(l),l.__data__=e,l.__values__={fill:"default"}}return(a.ownerSVGElement!==i||U$(a,n))&&t.insertBefore(a,n?n.nextSibling:t.firstChild),a}function U$(e,t){return e.parentNode&&e.parentNode.childNodes.length>1&&e.previousSibling!=t}let ir=null,Ze=null;const q$={group(e,t,n){const r=ir=t.childNodes[2];Ze=r.__values__,e.foreground(Du,n,this),Ze=t.__values__,ir=t.childNodes[1],e.content(Du,n,this);const i=ir=t.childNodes[0];e.background(Du,n,this);const a=n.mark.interactive===!1?"none":null;if(a!==Ze.events&&(ct(r,"pointer-events",a),ct(i,"pointer-events",a),Ze.events=a),n.strokeForeground&&n.stroke){const u=n.fill;ct(r,"display",null),this.style(i,n),ct(i,"stroke",null),u&&(n.fill=null),Ze=r.__values__,this.style(r,n),u&&(n.fill=u),ir=null}else ct(r,"display","none")},image(e,t,n){n.smooth===!1?(bs(t,"image-rendering","optimizeSpeed"),bs(t,"image-rendering","pixelated")):bs(t,"image-rendering",null)},text(e,t,n){const r=bo(n);let i,a,u,o;j(r)?(a=r.map(s=>Ir(n,s)),i=a.join(`
|
|
7
|
+
`),i!==Ze.text&&(Xt(t,0),u=t.ownerDocument,o=Pr(n),a.forEach((s,l)=>{const f=Dr(u,"tspan",_e);f.__data__=n,f.textContent=s,l&&(f.setAttribute("x",0),f.setAttribute("dy",o)),t.appendChild(f)}),Ze.text=i)):(a=Ir(n,r),a!==Ze.text&&(t.textContent=a,Ze.text=a)),ct(t,"font-family",Ao(n)),ct(t,"font-size",Un(n)+"px"),ct(t,"font-style",n.fontStyle),ct(t,"font-variant",n.fontVariant),ct(t,"font-weight",n.fontWeight)}};function Du(e,t,n){t!==Ze[e]&&(n?j$(ir,e,t,n):ct(ir,e,t),Ze[e]=t)}function bs(e,t,n){n!==Ze[t]&&(n==null?e.style.removeProperty(t):e.style.setProperty(t,n+""),Ze[t]=n)}function Fr(e,t){for(const n in t)ct(e,n,t[n])}function ct(e,t,n){n!=null?e.setAttribute(t,n):e.removeAttribute(t)}function j$(e,t,n,r){n!=null?e.setAttributeNS(r,t,n):e.removeAttributeNS(r,t)}function o3(){let e;return typeof window>"u"?"":(e=window.location).hash?e.href.slice(0,-e.hash.length):e.href}class s3 extends Eo{constructor(t){super(t),this._text=null,this._defs={gradient:{},clipping:{}}}svg(){return this._text}_render(t){const n=ug();n.open("svg",te({},Uu,{class:"marks",width:this._width*this._scale,height:this._height*this._scale,viewBox:`0 0 ${this._width} ${this._height}`}));const r=this._bgcolor;return r&&r!=="transparent"&&r!=="none"&&n.open("rect",{width:this._width,height:this._height,fill:r}).close(),n.open("g",u3,{transform:"translate("+this._origin+")"}),this.mark(n,t),n.close(),this.defs(n),this._text=n.close()+"",this}mark(t,n){const r=Ht[n.marktype],i=r.tag,a=[e3,r.attr];t.open("g",{class:jE(n),"clip-path":n.clip?N1(this,n,n.group):null},t3(n),{"pointer-events":i!=="g"&&n.interactive===!1?"none":null});const u=o=>{const s=this.href(o);if(s&&t.open("a",s),t.open(i,this.attr(n,o,a,i!=="g"?i:null)),i==="text"){const l=bo(o);if(j(l)){const f={x:0,dy:Pr(o)};for(let c=0;c<l.length;++c)t.open("tspan",c?f:null).text(Ir(o,l[c])).close()}else t.text(Ir(o,l))}else if(i==="g"){const l=o.strokeForeground,f=o.fill,c=o.stroke;l&&c&&(o.stroke=null),t.open("path",this.attr(n,o,r.background,"bgrect")).close(),t.open("g",this.attr(n,o,r.content)),bn(o,h=>this.mark(t,h)),t.close(),l&&c?(f&&(o.fill=null),o.stroke=c,t.open("path",this.attr(n,o,r.foreground,"bgrect")).close(),f&&(o.fill=f)):t.open("path",this.attr(n,o,r.foreground,"bgfore")).close()}t.close(),s&&t.close()};return r.nested?n.items&&n.items.length&&u(n.items[0]):bn(n,u),t.close()}href(t){const n=t.href;let r;if(n){if(r=this._hrefs&&this._hrefs[n])return r;this.sanitizeURL(n).then(i=>{i["xlink:href"]=i.href,i.href=null,(this._hrefs||(this._hrefs={}))[n]=i})}return null}attr(t,n,r,i){const a={},u=(o,s,l,f)=>{a[f||o]=s};return Array.isArray(r)?r.forEach(o=>o(u,n,this)):r(u,n,this),i&&W$(a,n,t,i,this._defs),a}defs(t){const n=this._defs.gradient,r=this._defs.clipping;if(Object.keys(n).length+Object.keys(r).length!==0){t.open("defs");for(const a in n){const u=n[a],o=u.stops;u.gradient==="radial"?(t.open("pattern",{id:gl+a,viewBox:"0,0,1,1",width:"100%",height:"100%",preserveAspectRatio:"xMidYMid slice"}),t.open("rect",{width:"1",height:"1",fill:"url(#"+a+")"}).close(),t.close(),t.open("radialGradient",{id:a,fx:u.x1,fy:u.y1,fr:u.r1,cx:u.x2,cy:u.y2,r:u.r2})):t.open("linearGradient",{id:a,x1:u.x1,x2:u.x2,y1:u.y1,y2:u.y2});for(let s=0;s<o.length;++s)t.open("stop",{offset:o[s].offset,"stop-color":o[s].color}).close();t.close()}for(const a in r){const u=r[a];t.open("clipPath",{id:a}),u.path?t.open("path",{d:u.path}).close():t.open("rect",{x:0,y:0,width:u.width,height:u.height}).close(),t.close()}t.close()}}}function W$(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"]=Ao(t),e["font-size"]=Un(t)+"px",e["font-style"]=t.fontStyle,e["font-variant"]=t.fontVariant,e["font-weight"]=t.fontWeight);for(const u in Dl){let o=t[u];const s=Dl[u];o==="transparent"&&(s==="fill"||s==="stroke")||o!=null&&(O1(o)&&(o=yE(o,i.gradient,"")),e[s]=o)}for(const u in Fl){const o=t[u];o!=null&&(a=a||[],a.push(`${Fl[u]}: ${o};`))}return a&&(e.style=a.join(" ")),e}const cn={svgMarkTypes:["text"],svgOnTop:!0,debug:!1};function Y$(e){cn.svgMarkTypes=e.svgMarkTypes??["text"],cn.svgOnTop=e.svgOnTop??!0,cn.debug=e.debug??!1}class a0 extends Eo{constructor(t){super(t),this._svgRenderer=new og(t),this._canvasRenderer=new Cl(t)}initialize(t,n,r,i,a){this._root_el=Re(t,0,"div");const u=Re(this._root_el,0,"div"),o=Re(this._root_el,1,"div");return this._root_el.style.position="relative",cn.debug||(u.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=cn.svgOnTop?o:u,this._canvasEl=cn.svgOnTop?u:o,this._svgEl.style.pointerEvents="none",this._canvasRenderer.initialize(this._canvasEl,n,r,i,a),this._svgRenderer.initialize(this._svgEl,n,r,i,a),super.initialize(t,n,r,i,a)}dirty(t){return cn.svgMarkTypes.includes(t.mark.marktype)?this._svgRenderer.dirty(t):this._canvasRenderer.dirty(t),this}_render(t,n){const i=(n??["arc","area","image","line","path","rect","rule","shape","symbol","text","trail"]).filter(a=>!cn.svgMarkTypes.includes(a));this._svgRenderer.render(t,cn.svgMarkTypes),this._canvasRenderer.render(t,i)}resize(t,n,r,i){return super.resize(t,n,r,i),this._svgRenderer.resize(t,n,r,i),this._canvasRenderer.resize(t,n,r,i),this}background(t){return cn.svgOnTop?this._canvasRenderer.background(t):this._svgRenderer.background(t),this}}class l3 extends wo{constructor(t,n){super(t,n)}initialize(t,n,r){const i=Re(Re(t,0,"div"),cn.svgOnTop?0:1,"div");return super.initialize(i,n,r)}}const f3="canvas",c3="hybrid",h3="png",d3="svg",g3="none",kr={Canvas:f3,PNG:h3,SVG:d3,Hybrid:c3,None:g3},pi={};pi[f3]=pi[h3]={renderer:Cl,headless:Cl,handler:wo};pi[d3]={renderer:og,headless:s3,handler:KE};pi[c3]={renderer:a0,headless:a0,handler:l3};pi[g3]={};function Tf(e,t){return e=String(e||"").toLowerCase(),arguments.length>1?(pi[e]=t,this):pi[e]}function p3(e,t,n){const r=[],i=new Be().union(t),a=e.marktype;return a?m3(e,i,n,r):a==="group"?y3(e,i,n,r):$("Intersect scene must be mark node or group item.")}function m3(e,t,n,r){if(H$(e,t,n)){const i=e.items,a=e.marktype,u=i.length;let o=0;if(a==="group")for(;o<u;++o)y3(i[o],t,n,r);else for(const s=Ht[a].isect;o<u;++o){const l=i[o];v3(l,t,s)&&r.push(l)}}return r}function H$(e,t,n){return e.bounds&&t.intersects(e.bounds)&&(e.marktype==="group"||e.interactive!==!1&&(!n||n(e)))}function y3(e,t,n,r){n&&n(e.mark)&&v3(e,t,Ht.group.isect)&&r.push(e);const i=e.items,a=i&&i.length;if(a){const u=e.x||0,o=e.y||0;t.translate(-u,-o);for(let s=0;s<a;++s)m3(i[s],t,n,r);t.translate(u,o)}return r}function v3(e,t,n){const r=e.bounds;return t.encloses(r)||t.intersects(r)&&n(e,t)}const Nc=new Be;function x3(e){const t=e.clip;if(ee(t))t(vo(Nc.clear()));else if(t)Nc.set(0,0,e.group.width,e.group.height);else return;e.bounds.intersect(Nc)}const G$=1e-9;function sg(e,t,n){return e===t?!0:n==="path"?b3(e,t):e instanceof Date&&t instanceof Date?+e==+t:zr(e)&&zr(t)?Math.abs(e-t)<=G$:!e||!t||!ne(e)&&!ne(t)?e==t:V$(e,t)}function b3(e,t){return sg(fa(e),fa(t))}function V$(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],!sg(e[i],t[i],i))return!1;return typeof e==typeof t}function X$(){CE(),x4()}const da="top",pn="left",yn="right",Ur="bottom",K$="top-left",Z$="top-right",Q$="bottom-left",J$="bottom-right",lg="start",u0="middle",ht="end",eB="x",tB="y",Of="group",fg="axis",cg="title",nB="frame",rB="scope",hg="legend",A3="row-header",E3="row-footer",w3="row-title",C3="column-header",D3="column-footer",F3="column-title",iB="padding",aB="symbol",k3="fit",M3="fit-x",S3="fit-y",uB="pad",dg="none",Ko="all",o0="each",gg="flush",Mr="column",Sr="row";function $3(e){S.call(this,null,e)}L($3,S,{transform(e,t){const n=t.dataflow,r=e.mark,i=r.marktype,a=Ht[i],u=a.bound;let o=r.bounds,s;if(a.nested)r.items.length&&n.dirty(r.items[0]),o=Zo(r,u),r.items.forEach(l=>{l.bounds.clear().union(o)});else if(i===Of||e.modified())switch(t.visit(t.MOD,l=>n.dirty(l)),o.clear(),r.items.forEach(l=>o.union(Zo(l,u))),r.role){case fg:case hg:case cg:t.reflow()}else s=t.changed(t.REM),t.visit(t.ADD,l=>{o.union(Zo(l,u))}),t.visit(t.MOD,l=>{s=s||o.alignsWith(l.bounds),n.dirty(l),o.union(Zo(l,u))}),s&&(o.clear(),r.items.forEach(l=>o.union(l.bounds)));return x3(r),t.modifies("bounds")}});function Zo(e,t,n){return t(e.bounds.clear(),e,n)}const zy=":vega_identifier:";function pg(e){S.call(this,0,e)}pg.Definition={type:"Identifier",metadata:{modifies:!0},params:[{name:"as",type:"string",required:!0}]};L(pg,S,{transform(e,t){const n=oB(t.dataflow),r=e.as;let i=n.value;return t.visit(t.ADD,a=>a[r]=a[r]||++i),n.set(this.value=i),t}});function oB(e){return e._signals[zy]||(e._signals[zy]=e.add(0))}function B3(e){S.call(this,null,e)}L(B3,S,{transform(e,t){let n=this.value;n||(n=t.dataflow.scenegraph().mark(e.markdef,sB(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);const r=n.marktype===Of?Ff:Df;return t.visit(t.ADD,i=>r.call(i,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 sB(e){const 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 _3(e){S.call(this,null,e)}const Ly={parity:e=>e.filter((t,n)=>n%2?t.opacity=0:1),greedy:(e,t)=>{let n;return e.filter((r,i)=>!i||!R3(n.bounds,r.bounds,t)?(n=r,1):r.opacity=0)}},R3=(e,t,n)=>n>Math.max(t.x1-e.x2,e.x1-t.x2,t.y1-e.y2,e.y1-t.y2),Ny=(e,t)=>{for(var n=1,r=e.length,i=e[0].bounds,a;n<r;i=a,++n)if(R3(i,a=e[n].bounds,t))return!0},lB=e=>{const t=e.bounds;return t.width()>1&&t.height()>1},fB=(e,t,n)=>{var r=e.range(),i=new Be;return t===da||t===Ur?i.set(r[0],-1/0,r[1],1/0):i.set(-1/0,r[0],1/0,r[1]),i.expand(n||1),a=>i.encloses(a.bounds)},Py=e=>(e.forEach(t=>t.opacity=1),e),Iy=(e,t)=>e.reflow(t.modified()).modifies("opacity");L(_3,S,{transform(e,t){const n=Ly[e.method]||Ly.parity,r=e.separation||0;let i=t.materialize(t.SOURCE).source,a,u;if(!i||!i.length)return;if(!e.method)return e.modified("method")&&(Py(i),t=Iy(t,e)),t;if(i=i.filter(lB),!i.length)return;if(e.sort&&(i=i.slice().sort(e.sort)),a=Py(i),t=Iy(t,e),a.length>=3&&Ny(a,r)){do a=n(a,r);while(a.length>=3&&Ny(a,r));a.length<3&&!oe(i).opacity&&(a.length>1&&(oe(a).opacity=0),oe(i).opacity=1)}e.boundScale&&e.boundTolerance>=0&&(u=fB(e.boundScale,e.boundOrient,+e.boundTolerance),i.forEach(s=>{u(s)||(s.opacity=0)}));const o=a[0].mark.bounds.clear();return i.forEach(s=>{s.opacity&&o.union(s.bounds)}),t}});function T3(e){S.call(this,null,e)}L(T3,S,{transform(e,t){const n=t.dataflow;if(t.visit(t.ALL,r=>n.dirty(r)),t.fields&&t.fields.zindex){const r=t.source&&t.source[0];r&&(r.mark.zdirty=!0)}}});const Ke=new Be;function Gi(e,t,n){return e[t]===n?0:(e[t]=n,1)}function cB(e){var t=e.items[0].orient;return t===pn||t===yn}function hB(e){let t=+e.grid;return[e.ticks?t++:-1,e.labels?t++:-1,t+ +e.domain]}function dB(e,t,n,r){var i=t.items[0],a=i.datum,u=i.translate!=null?i.translate:.5,o=i.orient,s=hB(a),l=i.range,f=i.offset,c=i.position,h=i.minExtent,d=i.maxExtent,g=a.title&&i.items[s[2]].items[0],p=i.titlePadding,m=i.bounds,y=g&&Z1(g),v=0,x=0,b,E;switch(Ke.clear().union(m),m.clear(),(b=s[0])>-1&&m.union(i.items[b].bounds),(b=s[1])>-1&&m.union(i.items[b].bounds),o){case da:v=c||0,x=-f,E=Math.max(h,Math.min(d,-m.y1)),m.add(0,-E).add(l,0),g&&Qo(e,g,E,p,y,0,-1,m);break;case pn:v=-f,x=c||0,E=Math.max(h,Math.min(d,-m.x1)),m.add(-E,0).add(0,l),g&&Qo(e,g,E,p,y,1,-1,m);break;case yn:v=n+f,x=c||0,E=Math.max(h,Math.min(d,m.x2)),m.add(0,0).add(E,l),g&&Qo(e,g,E,p,y,1,1,m);break;case Ur:v=c||0,x=r+f,E=Math.max(h,Math.min(d,m.y2)),m.add(0,0).add(l,E),g&&Qo(e,g,E,p,0,0,1,m);break;default:v=i.x,x=i.y}return fr(m.translate(v,x),i),Gi(i,"x",v+u)|Gi(i,"y",x+u)&&(i.bounds=Ke,e.dirty(i),i.bounds=m,e.dirty(i)),i.mark.bounds.clear().union(m)}function Qo(e,t,n,r,i,a,u,o){const s=t.bounds;if(t.auto){const l=u*(n+i+r);let f=0,c=0;e.dirty(t),a?f=(t.x||0)-(t.x=l):c=(t.y||0)-(t.y=l),t.mark.bounds.clear().union(s.translate(-f,-c)),e.dirty(t)}o.union(s)}const Uy=(e,t)=>Math.floor(Math.min(e,t)),qy=(e,t)=>Math.ceil(Math.max(e,t));function gB(e){var t=e.items,n=t.length,r=0,i,a;const u={marks:[],rowheaders:[],rowfooters:[],colheaders:[],colfooters:[],rowtitle:null,coltitle:null};for(;r<n;++r)if(i=t[r],a=i.items,i.marktype===Of)switch(i.role){case fg:case hg:case cg:break;case A3:u.rowheaders.push(...a);break;case E3:u.rowfooters.push(...a);break;case C3:u.colheaders.push(...a);break;case D3:u.colfooters.push(...a);break;case w3:u.rowtitle=a[0];break;case F3:u.coltitle=a[0];break;default:u.marks.push(...a)}return u}function pB(e){return new Be().set(0,0,e.width||0,e.height||0)}function mB(e){const t=e.bounds.clone();return t.empty()?t.set(0,0,0,0):t.translate(-(e.x||0),-(e.y||0))}function Ce(e,t,n){const r=ne(e)?e[t]:e;return r??(n!==void 0?n:0)}function jy(e){return e<0?Math.ceil(-e):0}function O3(e,t,n){var r=!n.nodirty,i=n.bounds===gg?pB:mB,a=Ke.set(0,0,0,0),u=Ce(n.align,Mr),o=Ce(n.align,Sr),s=Ce(n.padding,Mr),l=Ce(n.padding,Sr),f=n.columns||t.length,c=f<=0?1:Math.ceil(t.length/f),h=t.length,d=Array(h),g=Array(f),p=0,m=Array(h),y=Array(c),v=0,x=Array(h),b=Array(h),E=Array(h),w,A,C,F,D,k,R,T,N,M,O;for(A=0;A<f;++A)g[A]=0;for(A=0;A<c;++A)y[A]=0;for(A=0;A<h;++A)k=t[A],D=E[A]=i(k),k.x=k.x||0,x[A]=0,k.y=k.y||0,b[A]=0,C=A%f,F=~~(A/f),p=Math.max(p,R=Math.ceil(D.x2)),v=Math.max(v,T=Math.ceil(D.y2)),g[C]=Math.max(g[C],R),y[F]=Math.max(y[F],T),d[A]=s+jy(D.x1),m[A]=l+jy(D.y1),r&&e.dirty(t[A]);for(A=0;A<h;++A)A%f===0&&(d[A]=0),A<f&&(m[A]=0);if(u===o0)for(C=1;C<f;++C){for(O=0,A=C;A<h;A+=f)O<d[A]&&(O=d[A]);for(A=C;A<h;A+=f)d[A]=O+g[C-1]}else if(u===Ko){for(O=0,A=0;A<h;++A)A%f&&O<d[A]&&(O=d[A]);for(A=0;A<h;++A)A%f&&(d[A]=O+p)}else for(u=!1,C=1;C<f;++C)for(A=C;A<h;A+=f)d[A]+=g[C-1];if(o===o0)for(F=1;F<c;++F){for(O=0,A=F*f,w=A+f;A<w;++A)O<m[A]&&(O=m[A]);for(A=F*f;A<w;++A)m[A]=O+y[F-1]}else if(o===Ko){for(O=0,A=f;A<h;++A)O<m[A]&&(O=m[A]);for(A=f;A<h;++A)m[A]=O+v}else for(o=!1,F=1;F<c;++F)for(A=F*f,w=A+f;A<w;++A)m[A]+=y[F-1];for(N=0,A=0;A<h;++A)N=d[A]+(A%f?N:0),x[A]+=N-t[A].x;for(C=0;C<f;++C)for(M=0,A=C;A<h;A+=f)M+=m[A],b[A]+=M-t[A].y;if(u&&Ce(n.center,Mr)&&c>1)for(A=0;A<h;++A)D=u===Ko?p:g[A%f],N=D-E[A].x2-t[A].x-x[A],N>0&&(x[A]+=N/2);if(o&&Ce(n.center,Sr)&&f!==1)for(A=0;A<h;++A)D=o===Ko?v:y[~~(A/f)],M=D-E[A].y2-t[A].y-b[A],M>0&&(b[A]+=M/2);for(A=0;A<h;++A)a.union(E[A].translate(x[A],b[A]));switch(N=Ce(n.anchor,eB),M=Ce(n.anchor,tB),Ce(n.anchor,Mr)){case ht:N-=a.width();break;case u0:N-=a.width()/2}switch(Ce(n.anchor,Sr)){case ht:M-=a.height();break;case u0:M-=a.height()/2}for(N=Math.round(N),M=Math.round(M),a.clear(),A=0;A<h;++A)t[A].mark.bounds.clear();for(A=0;A<h;++A)k=t[A],k.x+=x[A]+=N,k.y+=b[A]+=M,a.union(k.mark.bounds.union(k.bounds.translate(x[A],b[A]))),r&&e.dirty(k);return a}function yB(e,t,n){var r=gB(t),i=r.marks,a=n.bounds===gg?vB:xB,u=n.offset,o=n.columns||i.length,s=o<=0?1:Math.ceil(i.length/o),l=s*o,f,c,h,d,g,p,m;const y=O3(e,i,n);y.empty()&&y.set(0,0,0,0),r.rowheaders&&(p=Ce(n.headerBand,Sr,null),f=Jo(e,r.rowheaders,i,o,s,-Ce(u,"rowHeader"),Uy,0,a,"x1",0,o,1,p)),r.colheaders&&(p=Ce(n.headerBand,Mr,null),c=Jo(e,r.colheaders,i,o,o,-Ce(u,"columnHeader"),Uy,1,a,"y1",0,1,o,p)),r.rowfooters&&(p=Ce(n.footerBand,Sr,null),h=Jo(e,r.rowfooters,i,o,s,Ce(u,"rowFooter"),qy,0,a,"x2",o-1,o,1,p)),r.colfooters&&(p=Ce(n.footerBand,Mr,null),d=Jo(e,r.colfooters,i,o,o,Ce(u,"columnFooter"),qy,1,a,"y2",l-o,1,o,p)),r.rowtitle&&(g=Ce(n.titleAnchor,Sr),m=Ce(u,"rowTitle"),m=g===ht?h+m:f-m,p=Ce(n.titleBand,Sr,.5),Wy(e,r.rowtitle,m,0,y,p)),r.coltitle&&(g=Ce(n.titleAnchor,Mr),m=Ce(u,"columnTitle"),m=g===ht?d+m:c-m,p=Ce(n.titleBand,Mr,.5),Wy(e,r.coltitle,m,1,y,p))}function vB(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 xB(e,t){return e.bounds[t]}function Jo(e,t,n,r,i,a,u,o,s,l,f,c,h,d){var g=n.length,p=0,m=0,y,v,x,b,E,w,A,C,F;if(!g)return p;for(y=f;y<g;y+=c)n[y]&&(p=u(p,s(n[y],l)));if(!t.length)return p;for(t.length>i&&(e.warn("Grid headers exceed limit: "+i),t=t.slice(0,i)),p+=a,v=0,b=t.length;v<b;++v)e.dirty(t[v]),t[v].mark.bounds.clear();for(y=f,v=0,b=t.length;v<b;++v,y+=c){for(w=t[v],E=w.mark.bounds,x=y;x>=0&&(A=n[x])==null;x-=h);o?(C=d==null?A.x:Math.round(A.bounds.x1+d*A.bounds.width()),F=p):(C=p,F=d==null?A.y:Math.round(A.bounds.y1+d*A.bounds.height())),E.union(w.bounds.translate(C-(w.x||0),F-(w.y||0))),w.x=C,w.y=F,e.dirty(w),m=u(m,E[l])}return m}function Wy(e,t,n,r,i,a){if(t){e.dirty(t);var u=n,o=n;r?u=Math.round(i.x1+a*i.width()):o=Math.round(i.y1+a*i.height()),t.bounds.translate(u-(t.x||0),o-(t.y||0)),t.mark.bounds.clear().union(t.bounds),t.x=u,t.y=o,e.dirty(t)}}function bB(e,t){const n=e[t]||{};return(r,i)=>n[r]!=null?n[r]:e[r]!=null?e[r]:i}function AB(e,t){let n=-1/0;return e.forEach(r=>{r.offset!=null&&(n=Math.max(n,r.offset))}),n>-1/0?n:t}function EB(e,t,n,r,i,a,u){const o=bB(n,t),s=AB(e,o("offset",0)),l=o("anchor",lg),f=l===ht?1:l===u0?.5:0,c={align:o0,bounds:o("bounds",gg),columns:o("direction")==="vertical"?1:e.length,padding:o("margin",8),center:o("center"),nodirty:!0};switch(t){case pn:c.anchor={x:Math.floor(r.x1)-s,column:ht,y:f*(u||r.height()+2*r.y1),row:l};break;case yn:c.anchor={x:Math.ceil(r.x2)+s,y:f*(u||r.height()+2*r.y1),row:l};break;case da:c.anchor={y:Math.floor(i.y1)-s,row:ht,x:f*(a||i.width()+2*i.x1),column:l};break;case Ur:c.anchor={y:Math.ceil(i.y2)+s,x:f*(a||i.width()+2*i.x1),column:l};break;case K$:c.anchor={x:s,y:s};break;case Z$:c.anchor={x:a-s,y:s,column:ht};break;case Q$:c.anchor={x:s,y:u-s,row:ht};break;case J$:c.anchor={x:a-s,y:u-s,column:ht,row:ht};break}return c}function wB(e,t){var n=t.items[0],r=n.datum,i=n.orient,a=n.bounds,u=n.x,o=n.y,s,l;return n._bounds?n._bounds.clear().union(a):n._bounds=a.clone(),a.clear(),DB(e,n,n.items[0].items[0]),a=CB(n,a),s=2*n.padding,l=2*n.padding,a.empty()||(s=Math.ceil(a.width()+s),l=Math.ceil(a.height()+l)),r.type===aB&&FB(n.items[0].items[0].items[0].items),i!==dg&&(n.x=u=0,n.y=o=0),n.width=s,n.height=l,fr(a.set(u,o,u+s,o+l),n),n.mark.bounds.clear().union(a),n}function CB(e,t){return e.items.forEach(n=>t.union(n.bounds)),t.x1=e.padding,t.y1=e.padding,t}function DB(e,t,n){var r=t.padding,i=r-n.x,a=r-n.y;if(!t.datum.title)(i||a)&&ja(e,n,i,a);else{var u=t.items[1].items[0],o=u.anchor,s=t.titlePadding||0,l=r-u.x,f=r-u.y;switch(u.orient){case pn:i+=Math.ceil(u.bounds.width())+s;break;case yn:case Ur:break;default:a+=u.bounds.height()+s}switch((i||a)&&ja(e,n,i,a),u.orient){case pn:f+=Li(t,n,u,o,1,1);break;case yn:l+=Li(t,n,u,ht,0,0)+s,f+=Li(t,n,u,o,1,1);break;case Ur:l+=Li(t,n,u,o,0,0),f+=Li(t,n,u,ht,-1,0,1)+s;break;default:l+=Li(t,n,u,o,0,0)}(l||f)&&ja(e,u,l,f),(l=Math.round(u.bounds.x1-r))<0&&(ja(e,n,-l,0),ja(e,u,-l,0))}}function Li(e,t,n,r,i,a,u){const o=e.datum.type!=="symbol",s=n.datum.vgrad,l=o&&(a||!s)&&!u?t.items[0]:t,f=l.bounds[i?"y2":"x2"]-e.padding,c=s&&a?f:0,h=s&&a?0:f,d=i<=0?0:Z1(n);return Math.round(r===lg?c:r===ht?h-d:.5*(f-d))}function ja(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 FB(e){const t=e.reduce((n,r)=>(n[r.column]=Math.max(r.bounds.x2-r.x,n[r.column]||0),n),{});e.forEach(n=>{n.width=t[n.column],n.height=n.bounds.y2-n.y})}function kB(e,t,n,r,i){var a=t.items[0],u=a.frame,o=a.orient,s=a.anchor,l=a.offset,f=a.padding,c=a.items[0].items[0],h=a.items[1]&&a.items[1].items[0],d=o===pn||o===yn?r:n,g=0,p=0,m=0,y=0,v=0,x;if(u!==Of?o===pn?(g=i.y2,d=i.y1):o===yn?(g=i.y1,d=i.y2):(g=i.x1,d=i.x2):o===pn&&(g=r,d=0),x=s===lg?g:s===ht?d:(g+d)/2,h&&h.text){switch(o){case da:case Ur:v=c.bounds.height()+f;break;case pn:y=c.bounds.width()+f;break;case yn:y=-c.bounds.width()-f;break}Ke.clear().union(h.bounds),Ke.translate(y-(h.x||0),v-(h.y||0)),Gi(h,"x",y)|Gi(h,"y",v)&&(e.dirty(h),h.bounds.clear().union(Ke),h.mark.bounds.clear().union(Ke),e.dirty(h)),Ke.clear().union(h.bounds)}else Ke.clear();switch(Ke.union(c.bounds),o){case da:p=x,m=i.y1-Ke.height()-l;break;case pn:p=i.x1-Ke.width()-l,m=x;break;case yn:p=i.x2+Ke.width()+l,m=x;break;case Ur:p=x,m=i.y2+l;break;default:p=a.x,m=a.y}return Gi(a,"x",p)|Gi(a,"y",m)&&(Ke.translate(p,m),e.dirty(a),a.bounds.clear().union(Ke),t.bounds.clear().union(Ke),e.dirty(a)),a.bounds}function z3(e){S.call(this,null,e)}L(z3,S,{transform(e,t){const n=t.dataflow;return e.mark.items.forEach(r=>{e.layout&&yB(n,r,e.layout),SB(n,r,e)}),MB(e.mark.group)?t.reflow():t}});function MB(e){return e&&e.mark.role!=="legend-entry"}function SB(e,t,n){var r=t.items,i=Math.max(0,t.width||0),a=Math.max(0,t.height||0),u=new Be().set(0,0,i,a),o=u.clone(),s=u.clone(),l=[],f,c,h,d,g,p;for(g=0,p=r.length;g<p;++g)switch(c=r[g],c.role){case fg:d=cB(c)?o:s,d.union(dB(e,c,i,a));break;case cg:f=c;break;case hg:l.push(wB(e,c));break;case nB:case rB:case A3:case E3:case w3:case C3:case D3:case F3:o.union(c.bounds),s.union(c.bounds);break;default:u.union(c.bounds)}if(l.length){const m={};l.forEach(y=>{h=y.orient||yn,h!==dg&&(m[h]||(m[h]=[])).push(y)});for(const y in m){const v=m[y];O3(e,v,EB(v,y,n.legends,o,s,i,a))}l.forEach(y=>{const v=y.bounds;if(v.equals(y._bounds)||(y.bounds=y._bounds,e.dirty(y),y.bounds=v,e.dirty(y)),n.autosize&&(n.autosize.type===k3||n.autosize.type===M3||n.autosize.type===S3))switch(y.orient){case pn:case yn:u.add(v.x1,0).add(v.x2,0);break;case da:case Ur:u.add(0,v.y1).add(0,v.y2)}else u.union(v)})}u.union(o).union(s),f&&u.union(kB(e,f,i,a,u)),t.clip&&u.set(0,0,t.width||0,t.height||0),$B(e,t,u,n)}function $B(e,t,n,r){const i=r.autosize||{},a=i.type;if(e._autosize<1||!a)return;let u=e._width,o=e._height,s=Math.max(0,t.width||0),l=Math.max(0,Math.ceil(-n.x1)),f=Math.max(0,t.height||0),c=Math.max(0,Math.ceil(-n.y1));const h=Math.max(0,Math.ceil(n.x2-s)),d=Math.max(0,Math.ceil(n.y2-f));if(i.contains===iB){const g=e.padding();u-=g.left+g.right,o-=g.top+g.bottom}a===dg?(l=0,c=0,s=u,f=o):a===k3?(s=Math.max(0,u-l-h),f=Math.max(0,o-c-d)):a===M3?(s=Math.max(0,u-l-h),o=f+c+d):a===S3?(u=s+l+h,f=Math.max(0,o-c-d)):a===uB&&(u=s+l+h,o=f+c+d),e._resizeView(u,o,s,f,[l,c],i.resize)}const BB=Object.freeze(Object.defineProperty({__proto__:null,bound:$3,identifier:pg,mark:B3,overlap:_3,render:T3,viewlayout:z3},Symbol.toStringTag,{value:"Module"}));function L3(e){S.call(this,null,e)}L(L3,S,{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,u=e.count==null?e.values?e.values.length:10:e.count,o=R1(a,u,e.minstep),s=e.format||fE(n,a,o,e.formatSpecifier,e.formatType,!!e.values),l=e.values?lE(a,e.values,o):T1(a,o);return i&&(r.rem=i),i=l.map((f,c)=>ge({index:c/(l.length-1||1),value:f,label:s(f)})),e.extra&&i.length&&i.push(ge({index:-1,extra:{value:i[0].value},label:""})),r.source=i,r.add=i,this.value=i,r}});function N3(e){S.call(this,null,e)}function _B(){return ge({})}function RB(e){const t=Ea().test(n=>n.exit);return t.lookup=n=>t.get(e(n)),t}L(N3,S,{transform(e,t){var n=t.dataflow,r=t.fork(t.NO_SOURCE|t.NO_FIELDS),i=e.item||_B,a=e.key||Y,u=this.value;return j(r.encode)&&(r.encode=null),u&&(e.modified("key")||t.modified(a))&&$("DataJoin does not support modified key function or fields."),u||(t=t.addAll(),this.value=u=RB(a)),t.visit(t.ADD,o=>{const s=a(o);let l=u.get(s);l?l.exit?(u.empty--,r.add.push(l)):r.mod.push(l):(l=i(o),u.set(s,l),r.add.push(l)),l.datum=o,l.exit=!1}),t.visit(t.MOD,o=>{const s=a(o),l=u.get(s);l&&(l.datum=o,r.mod.push(l))}),t.visit(t.REM,o=>{const s=a(o),l=u.get(s);o===l.datum&&!l.exit&&(r.rem.push(l),l.exit=!0,++u.empty)}),t.changed(t.ADD_MOD)&&r.modifies("datum"),(t.clean()||e.clean&&u.empty>n.cleanThreshold)&&n.runAfter(u.clean),r}});function P3(e){S.call(this,null,e)}L(P3,S,{transform(e,t){var n=t.fork(t.ADD_REM),r=e.mod||!1,i=e.encoders,a=t.encode;if(j(a))if(n.changed()||a.every(c=>i[c]))a=a[0],n.encode=null;else return t.StopPropagation;var u=a==="enter",o=i.update||gr,s=i.enter||gr,l=i.exit||gr,f=(a&&!u?i[a]:o)||gr;if(t.changed(t.ADD)&&(t.visit(t.ADD,c=>{s(c,e),o(c,e)}),n.modifies(s.output),n.modifies(o.output),f!==gr&&f!==o&&(t.visit(t.ADD,c=>{f(c,e)}),n.modifies(f.output))),t.changed(t.REM)&&l!==gr&&(t.visit(t.REM,c=>{l(c,e)}),n.modifies(l.output)),u||f!==gr){const c=t.MOD|(e.modified()?t.REFLOW:0);u?(t.visit(c,h=>{const d=s(h,e)||r;(f(h,e)||d)&&n.mod.push(h)}),n.mod.length&&n.modifies(s.output)):t.visit(c,h=>{(f(h,e)||r)&&n.mod.push(h)}),n.mod.length&&n.modifies(f.output)}return n.changed()?n:t.StopPropagation}});function I3(e){S.call(this,[],e)}L(I3,S,{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||hs,u=e.scale,o=+e.limit,s=R1(u,e.count==null?5:e.count,e.minstep),l=!!e.values||a===hs,f=e.format||gE(n,u,s,a,e.formatSpecifier,e.formatType,l),c=e.values||dE(u,s),h,d,g,p,m;return i&&(r.rem=i),a===hs?(o&&c.length>o?(t.dataflow.warn("Symbol legend count exceeds limit, filtering items."),i=c.slice(0,o-1),m=!0):i=c,ee(g=e.size)?(!e.values&&u(i[0])===0&&(i=i.slice(1)),p=i.reduce((y,v)=>Math.max(y,g(v,e)),0)):g=ot(p=g||8),i=i.map((y,v)=>ge({index:v,label:f(y,v,i),value:y,offset:p,size:g(y,e)})),m&&(m=c[i.length],i.push(ge({index:i.length,label:`…${c.length-i.length} entries`,value:m,offset:p,size:g(m,e)})))):a===u4?(h=u.domain(),d=uE(u,h[0],oe(h)),c.length<3&&!e.values&&h[0]!==oe(h)&&(c=[h[0],oe(h)]),i=c.map((y,v)=>ge({index:v,label:f(y,v,c),value:y,perc:d(y)}))):(g=c.length-1,d=y4(u),i=c.map((y,v)=>ge({index:v,label:f(y,v,c),value:y,perc:v?d(y):0,perc2:v===g?1:d(c[v+1])}))),r.source=i,r.add=i,this.value=i,r}});const TB=e=>e.source.x,OB=e=>e.source.y,zB=e=>e.target.x,LB=e=>e.target.y;function mg(e){S.call(this,{},e)}mg.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"}]};L(mg,S,{transform(e,t){var n=e.sourceX||TB,r=e.sourceY||OB,i=e.targetX||zB,a=e.targetY||LB,u=e.as||"path",o=e.orient||"vertical",s=e.shape||"line",l=Yy.get(s+"-"+o)||Yy.get(s);return l||$("LinkPath unsupported type: "+e.shape+(e.orient?"-"+e.orient:"")),t.visit(t.SOURCE,f=>{f[u]=l(n(f),r(f),i(f),a(f))}),t.reflow(e.modified()).modifies(u)}});const U3=(e,t,n,r)=>"M"+e+","+t+"L"+n+","+r,NB=(e,t,n,r)=>U3(t*Math.cos(e),t*Math.sin(e),r*Math.cos(n),r*Math.sin(n)),q3=(e,t,n,r)=>{var i=n-e,a=r-t,u=Math.hypot(i,a)/2,o=180*Math.atan2(a,i)/Math.PI;return"M"+e+","+t+"A"+u+","+u+" "+o+" 0 1 "+n+","+r},PB=(e,t,n,r)=>q3(t*Math.cos(e),t*Math.sin(e),r*Math.cos(n),r*Math.sin(n)),j3=(e,t,n,r)=>{const i=n-e,a=r-t,u=.2*(i+a),o=.2*(a-i);return"M"+e+","+t+"C"+(e+u)+","+(t+o)+" "+(n+o)+","+(r-u)+" "+n+","+r},IB=(e,t,n,r)=>j3(t*Math.cos(e),t*Math.sin(e),r*Math.cos(n),r*Math.sin(n)),UB=(e,t,n,r)=>"M"+e+","+t+"V"+r+"H"+n,qB=(e,t,n,r)=>"M"+e+","+t+"H"+n+"V"+r,jB=(e,t,n,r)=>{const i=Math.cos(e),a=Math.sin(e),u=Math.cos(n),o=Math.sin(n),s=Math.abs(n-e)>Math.PI?n<=e:n>e;return"M"+t*i+","+t*a+"A"+t+","+t+" 0 0,"+(s?1:0)+" "+t*u+","+t*o+"L"+r*u+","+r*o},WB=(e,t,n,r)=>{const i=(e+n)/2;return"M"+e+","+t+"C"+i+","+t+" "+i+","+r+" "+n+","+r},YB=(e,t,n,r)=>{const i=(t+r)/2;return"M"+e+","+t+"C"+e+","+i+" "+n+","+i+" "+n+","+r},HB=(e,t,n,r)=>{const i=Math.cos(e),a=Math.sin(e),u=Math.cos(n),o=Math.sin(n),s=(t+r)/2;return"M"+t*i+","+t*a+"C"+s*i+","+s*a+" "+s*u+","+s*o+" "+r*u+","+r*o},Yy=Ea({line:U3,"line-radial":NB,arc:q3,"arc-radial":PB,curve:j3,"curve-radial":IB,"orthogonal-horizontal":UB,"orthogonal-vertical":qB,"orthogonal-radial":jB,"diagonal-horizontal":WB,"diagonal-vertical":YB,"diagonal-radial":HB});function yg(e){S.call(this,null,e)}yg.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"]}]};L(yg,S,{transform(e,t){var n=e.as||["startAngle","endAngle"],r=n[0],i=n[1],a=e.field||Aa,u=e.startAngle||0,o=e.endAngle!=null?e.endAngle:2*Math.PI,s=t.source,l=s.map(a),f=l.length,c=u,h=(o-u)/dv(l),d=It(f),g,p,m;for(e.sort&&d.sort((y,v)=>l[y]-l[v]),g=0;g<f;++g)m=l[d[g]],p=s[d[g]],p[r]=c,p[i]=c+=m*h;return this.value=l,t.reflow(e.modified()).modifies(n)}});const GB=5;function VB(e){const t=e.type;return!e.bins&&(t===oa||t===fo||t===co)}function W3(e){return $1(e)&&e!==_n}const XB=jt(["set","modified","clear","type","scheme","schemeExtent","schemeCount","domain","domainMin","domainMid","domainMax","domainRaw","domainImplicit","nice","zero","bins","range","rangeStep","round","reverse","interpolate","interpolateGamma"]);function Y3(e){S.call(this,null,e),this.modified(!0)}L(Y3,S,{transform(e,t){var n=t.dataflow,r=this.value,i=KB(e);(!r||i!==r.type)&&(this.value=r=de(i)());for(i in e)if(!XB[i]){if(i==="padding"&&W3(r.type))continue;ee(r[i])?r[i](e[i]):n.warn("Unsupported scale property: "+i)}return n_(r,e,t_(r,e,QB(r,e,n))),t.fork(t.NO_SOURCE|t.NO_FIELDS)}});function KB(e){var t=e.type,n="",r;return t===_n?_n+"-"+oa:(ZB(e)&&(r=e.rawDomain?e.rawDomain.length:e.domain?e.domain.length+ +(e.domainMid!=null):0,n=r===2?_n+"-":r===3?Fa+"-":""),(n+t||oa).toLowerCase())}function ZB(e){const t=e.type;return $1(t)&&t!==di&&t!==gi&&(e.scheme||e.range&&e.range.length&&e.range.every(be))}function QB(e,t,n){const r=JB(e,t.domainRaw,n);if(r>-1)return r;var i=t.domain,a=e.type,u=t.zero||t.zero===void 0&&VB(e),o,s;if(!i)return 0;if((u||t.domainMin!=null||t.domainMax!=null||t.domainMid!=null)&&(o=(i=i.slice()).length-1||1,u&&(i[0]>0&&(i[0]=0),i[o]<0&&(i[o]=0)),t.domainMin!=null&&(i[0]=t.domainMin),t.domainMax!=null&&(i[o]=t.domainMax),t.domainMid!=null)){s=t.domainMid;const l=s>i[o]?o+1:s<i[0]?0:o;l!==o&&n.warn("Scale domainMid exceeds domain min or max.",s),i.splice(l,0,s)}return W3(a)&&t.padding&&i[0]!==oe(i)&&(i=e_(a,i,t.range,t.padding,t.exponent,t.constant)),e.domain(H3(a,i,n)),a===F1&&e.unknown(t.domainImplicit?BD:void 0),t.nice&&e.nice&&e.nice(t.nice!==!0&&R1(e,t.nice)||null),i.length}function JB(e,t,n){return t?(e.domain(H3(e.type,t,n)),t.length):-1}function e_(e,t,n,r,i,a){var u=Math.abs(oe(n)-n[0]),o=u/(u-2*r),s=e===lr?vd(t,null,o):e===co?fl(t,null,o,.5):e===fo?fl(t,null,o,i||1):e===bf?xd(t,null,o,a||1):yd(t,null,o);return t=t.slice(),t[0]=s[0],t[t.length-1]=s[1],t}function H3(e,t,n){if(tE(e)){var r=Math.abs(t.reduce((i,a)=>i+(a<0?-1:a>0?1:0),0));r!==t.length&&n.warn("Log scale domain includes zero: "+G(t))}return t}function t_(e,t,n){let r=t.bins;if(r&&!j(r)){const i=e.domain(),a=i[0],u=oe(i),o=r.step;let s=r.start==null?a:r.start,l=r.stop==null?u:r.stop;o||$("Scale bins parameter missing step property."),s<a&&(s=o*Math.ceil(a/o)),l>u&&(l=o*Math.floor(u/o)),r=It(s,l+o/2,o)}return r?e.bins=r:e.bins&&delete e.bins,e.type===k1&&(r?!t.domain&&!t.domainRaw&&(e.domain(r),n=r.length):e.bins=e.domain()),n}function n_(e,t,n){var r=e.type,i=t.round||!1,a=t.range;if(t.rangeStep!=null)a=r_(r,t,n);else if(t.scheme&&(a=i_(r,t,n),ee(a))){if(e.interpolator)return e.interpolator(a);$(`Scale type ${r} does not support interpolating color schemes.`)}if(a&&nE(r))return e.interpolator(wf(s0(a,t.reverse),t.interpolate,t.interpolateGamma));a&&t.interpolate&&e.interpolate?e.interpolate(B1(t.interpolate,t.interpolateGamma)):ee(e.round)?e.round(i):ee(e.rangeRound)&&e.interpolate(i?ql:Ju),a&&e.range(s0(a,t.reverse))}function r_(e,t,n){e!==XA&&e!==Gh&&$("Only band and point scales support rangeStep.");var r=(t.paddingOuter!=null?t.paddingOuter:t.padding)||0,i=e===Gh?1:(t.paddingInner!=null?t.paddingInner:t.padding)||0;return[0,t.rangeStep*D1(n,i,r)]}function i_(e,t,n){var r=t.schemeExtent,i,a;return j(t.scheme)?a=wf(t.scheme,t.interpolate,t.interpolateGamma):(i=t.scheme.toLowerCase(),a=_1(i),a||$(`Unrecognized scheme name: ${t.scheme}`)),n=e===Ef?n+1:e===k1?n-1:e===sa||e===Af?+t.schemeCount||GB:n,nE(e)?Hy(a,r,t.reverse):ee(a)?aE(Hy(a,r),n):e===F1?a:a.slice(0,n)}function Hy(e,t,n){return ee(e)&&(t||n)?iE(e,s0(t||[0,1],n)):e}function s0(e,t){return t?e.slice().reverse():e}function G3(e){S.call(this,null,e)}L(G3,S,{transform(e,t){const n=e.modified("sort")||t.changed(t.ADD)||t.modified(e.sort.fields)||t.modified("datum");return n&&t.source.sort(Ci(e.sort)),this.modified(n),t}});const Gy="zero",V3="center",X3="normalize",K3=["y0","y1"];function vg(e){S.call(this,null,e)}vg.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:Gy,values:[Gy,V3,X3]},{name:"as",type:"string",array:!0,length:2,default:K3}]};L(vg,S,{transform(e,t){var n=e.as||K3,r=n[0],i=n[1],a=Ci(e.sort),u=e.field||Aa,o=e.offset===V3?a_:e.offset===X3?u_:o_,s,l,f,c;for(s=s_(t.source,e.groupby,a,u),l=0,f=s.length,c=s.max;l<f;++l)o(s[l],c,u,r,i);return t.reflow(e.modified()).modifies(n)}});function a_(e,t,n,r,i){for(var a=(t-e.sum)/2,u=e.length,o=0,s;o<u;++o)s=e[o],s[r]=a,s[i]=a+=Math.abs(n(s))}function u_(e,t,n,r,i){for(var a=1/e.sum,u=0,o=e.length,s=0,l=0,f;s<o;++s)f=e[s],f[r]=u,f[i]=u=a*(l+=Math.abs(n(f)))}function o_(e,t,n,r,i){for(var a=0,u=0,o=e.length,s=0,l,f;s<o;++s)f=e[s],l=+n(f),l<0?(f[r]=u,f[i]=u+=l):(f[r]=a,f[i]=a+=l)}function s_(e,t,n,r){var i=[],a=p=>p(f),u,o,s,l,f,c,h,d,g;if(t==null)i.push(e.slice());else for(u={},o=0,s=e.length;o<s;++o)f=e[o],c=t.map(a),h=u[c],h||(u[c]=h=[],i.push(h)),h.push(f);for(c=0,g=0,l=i.length;c<l;++c){for(h=i[c],o=0,d=0,s=h.length;o<s;++o)d+=Math.abs(r(h[o]));h.sum=d,d>g&&(g=d),n&&h.sort(n)}return i.max=g,i}const l_=Object.freeze(Object.defineProperty({__proto__:null,axisticks:L3,datajoin:N3,encode:P3,legendentries:I3,linkpath:mg,pie:yg,scale:Y3,sortitems:G3,stack:vg},Symbol.toStringTag,{value:"Module"}));var f_=Math.abs,l0=Math.cos,kl=Math.sin,c_=1e-6,Z3=Math.PI,f0=Z3/2,Vy=h_(2);function Xy(e){return e>1?f0:e<-1?-f0:Math.asin(e)}function h_(e){return e>0?Math.sqrt(e):0}function d_(e,t){var n=e*kl(t),r=30,i;do t-=i=(t+kl(t)-n)/(1+l0(t));while(f_(i)>c_&&--r>0);return t/2}function g_(e,t,n){function r(i,a){return[e*i*l0(a=d_(n,a)),t*kl(a)]}return r.invert=function(i,a){return a=Xy(a/t),[i/(e*l0(a)),Xy((2*a+kl(2*a))/n)]},r}var p_=g_(Vy/f0,Vy,Z3);function m_(){return Pn(p_).scale(169.529)}const y_=ux(),c0=["clipAngle","clipExtent","scale","translate","center","rotate","parallels","precision","reflectX","reflectY","coefficient","distance","fraction","lobes","parallel","radius","ratio","spacing","tilt"];function v_(e,t){return function n(){const r=t();return r.type=e,r.path=ux().projection(r),r.copy=r.copy||function(){const i=n();return c0.forEach(a=>{r[a]&&i[a](r[a]())}),i.path.pointRadius(r.path.pointRadius()),i},JA(r)}}function xg(e,t){if(!e||typeof e!="string")throw new Error("Projection type must be a name string.");return e=e.toLowerCase(),arguments.length>1?(Ml[e]=v_(e,t),this):Ml[e]||null}function Q3(e){return e&&e.path||y_}const Ml={albers:sx,albersusa:l6,azimuthalequalarea:f6,azimuthalequidistant:c6,conicconformal:g6,conicequalarea:il,conicequidistant:y6,equalEarth:x6,equirectangular:p6,gnomonic:b6,identity:A6,mercator:h6,mollweide:m_,naturalEarth1:E6,orthographic:w6,stereographic:C6,transversemercator:D6};for(const e in Ml)xg(e,Ml[e]);function x_(){}const Gn=[[],[[[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 J3(){var e=1,t=1,n=o;function r(s,l){return l.map(f=>i(s,f))}function i(s,l){var f=[],c=[];return a(s,l,h=>{n(h,s,l),b_(h)>0?f.push([h]):c.push(h)}),c.forEach(h=>{for(var d=0,g=f.length,p;d<g;++d)if(A_((p=f[d])[0],h)!==-1){p.push(h);return}}),{type:"MultiPolygon",value:l,coordinates:f}}function a(s,l,f){var c=[],h=[],d,g,p,m,y,v;for(d=g=-1,m=s[0]>=l,Gn[m<<1].forEach(x);++d<e-1;)p=m,m=s[d+1]>=l,Gn[p|m<<1].forEach(x);for(Gn[m<<0].forEach(x);++g<t-1;){for(d=-1,m=s[g*e+e]>=l,y=s[g*e]>=l,Gn[m<<1|y<<2].forEach(x);++d<e-1;)p=m,m=s[g*e+e+d+1]>=l,v=y,y=s[g*e+d+1]>=l,Gn[p|m<<1|y<<2|v<<3].forEach(x);Gn[m|y<<3].forEach(x)}for(d=-1,y=s[g*e]>=l,Gn[y<<2].forEach(x);++d<e-1;)v=y,y=s[g*e+d+1]>=l,Gn[y<<2|v<<3].forEach(x);Gn[y<<3].forEach(x);function x(b){var E=[b[0][0]+d,b[0][1]+g],w=[b[1][0]+d,b[1][1]+g],A=u(E),C=u(w),F,D;(F=h[A])?(D=c[C])?(delete h[F.end],delete c[D.start],F===D?(F.ring.push(w),f(F.ring)):c[F.start]=h[D.end]={start:F.start,end:D.end,ring:F.ring.concat(D.ring)}):(delete h[F.end],F.ring.push(w),h[F.end=C]=F):(F=c[C])?(D=h[A])?(delete c[F.start],delete h[D.end],F===D?(F.ring.push(w),f(F.ring)):c[D.start]=h[F.end]={start:D.start,end:F.end,ring:D.ring.concat(F.ring)}):(delete c[F.start],F.ring.unshift(E),c[F.start=A]=F):c[A]=h[C]={start:A,end:C,ring:[E,w]}}}function u(s){return s[0]*2+s[1]*(e+1)*4}function o(s,l,f){s.forEach(c=>{var h=c[0],d=c[1],g=h|0,p=d|0,m,y=l[p*e+g];h>0&&h<e&&g===h&&(m=l[p*e+g-1],c[0]=h+(f-m)/(y-m)-.5),d>0&&d<t&&p===d&&(m=l[(p-1)*e+g],c[1]=d+(f-m)/(y-m)-.5)})}return r.contour=i,r.size=function(s){if(!arguments.length)return[e,t];var l=Math.floor(s[0]),f=Math.floor(s[1]);return l>=0&&f>=0||$("invalid size"),e=l,t=f,r},r.smooth=function(s){return arguments.length?(n=s?o:x_,r):n===o},r}function b_(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 A_(e,t){for(var n=-1,r=t.length,i;++n<r;)if(i=E_(e,t[n]))return i;return 0}function E_(e,t){for(var n=t[0],r=t[1],i=-1,a=0,u=e.length,o=u-1;a<u;o=a++){var s=e[a],l=s[0],f=s[1],c=e[o],h=c[0],d=c[1];if(w_(s,c,t))return 0;f>r!=d>r&&n<(h-l)*(r-f)/(d-f)+l&&(i=-i)}return i}function w_(e,t,n){var r;return C_(e,t,n)&&D_(e[r=+(e[0]===t[0])],n[r],t[r])}function C_(e,t,n){return(t[0]-e[0])*(n[1]-e[1])===(n[0]-e[0])*(t[1]-e[1])}function D_(e,t,n){return e<=t&&t<=n||n<=t&&t<=e}function ew(e,t,n){return function(r){var i=zn(r),a=n?Math.min(i[0],0):i[0],u=i[1],o=u-a,s=t?fi(a,u,e):o/(e+1);return It(a+s,u,s)}}function bg(e){S.call(this,null,e)}bg.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"}]};L(bg,S,{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||Et,a=J3().smooth(e.smooth!==!1),u=e.thresholds||F_(r,i,e),o=e.as===null?null:e.as||"contour",s=[];return r.forEach(l=>{const f=i(l),c=a.size([f.width,f.height])(f.values,j(u)?u:u(f.values));k_(c,f,l,e),c.forEach(h=>{s.push(cf(l,ge(o!=null?{[o]:h}:h)))})}),this.value&&(n.rem=this.value),this.value=n.source=n.add=s,n}});function F_(e,t,n){const r=ew(n.levels||10,n.nice,n.zero!==!1);return n.resolve!=="shared"?r:r(e.map(i=>ui(t(i).values)))}function k_(e,t,n,r){let i=r.scale||t.scale,a=r.translate||t.translate;if(ee(i)&&(i=i(n,r)),ee(a)&&(a=a(n,r)),(i===1||i==null)&&!a)return;const u=(zr(i)?i:i[0])||1,o=(zr(i)?i:i[1])||1,s=a&&a[0]||0,l=a&&a[1]||0;e.forEach(tw(t,u,o,s,l))}function tw(e,t,n,r,i){const a=e.x1||0,u=e.y1||0,o=t*n<0;function s(c){c.forEach(l)}function l(c){o&&c.reverse(),c.forEach(f)}function f(c){c[0]=(c[0]-a)*t+r,c[1]=(c[1]-u)*n+i}return function(c){return c.coordinates.forEach(s),c}}function Ky(e,t,n){const r=e>=0?e:Pd(t,n);return Math.round((Math.sqrt(4*r*r+1)-1)/2)}function Pc(e){return ee(e)?e:ot(+e)}function nw(){var e=s=>s[0],t=s=>s[1],n=Aa,r=[-1,-1],i=960,a=500,u=2;function o(s,l){const f=Ky(r[0],s,e)>>u,c=Ky(r[1],s,t)>>u,h=f?f+2:0,d=c?c+2:0,g=2*h+(i>>u),p=2*d+(a>>u),m=new Float32Array(g*p),y=new Float32Array(g*p);let v=m;s.forEach(b=>{const E=h+(+e(b)>>u),w=d+(+t(b)>>u);E>=0&&E<g&&w>=0&&w<p&&(m[E+w*g]+=+n(b))}),f>0&&c>0?(Ni(g,p,m,y,f),Pi(g,p,y,m,c),Ni(g,p,m,y,f),Pi(g,p,y,m,c),Ni(g,p,m,y,f),Pi(g,p,y,m,c)):f>0?(Ni(g,p,m,y,f),Ni(g,p,y,m,f),Ni(g,p,m,y,f),v=y):c>0&&(Pi(g,p,m,y,c),Pi(g,p,y,m,c),Pi(g,p,m,y,c),v=y);const x=l?Math.pow(2,-2*u):1/dv(v);for(let b=0,E=g*p;b<E;++b)v[b]*=x;return{values:v,scale:1<<u,width:g,height:p,x1:h,y1:d,x2:h+(i>>u),y2:d+(a>>u)}}return o.x=function(s){return arguments.length?(e=Pc(s),o):e},o.y=function(s){return arguments.length?(t=Pc(s),o):t},o.weight=function(s){return arguments.length?(n=Pc(s),o):n},o.size=function(s){if(!arguments.length)return[i,a];var l=+s[0],f=+s[1];return l>=0&&f>=0||$("invalid size"),i=l,a=f,o},o.cellSize=function(s){return arguments.length?((s=+s)>=1||$("invalid cell size"),u=Math.floor(Math.log(s)/Math.LN2),o):1<<u},o.bandwidth=function(s){return arguments.length?(s=V(s),s.length===1&&(s=[+s[0],+s[0]]),s.length!==2&&$("invalid bandwidth"),r=s,o):r},o}function Ni(e,t,n,r,i){const a=(i<<1)+1;for(let u=0;u<t;++u)for(let o=0,s=0;o<e+i;++o)o<e&&(s+=n[o+u*e]),o>=i&&(o>=a&&(s-=n[o-a+u*e]),r[o-i+u*e]=s/Math.min(o+1,e-1+a-o,a))}function Pi(e,t,n,r,i){const a=(i<<1)+1;for(let u=0;u<e;++u)for(let o=0,s=0;o<t+i;++o)o<t&&(s+=n[u+o*e]),o>=i&&(o>=a&&(s-=n[u+(o-a)*e]),r[u+(o-i)*e]=s/Math.min(o+1,t-1+a-o,a))}function Ag(e){S.call(this,null,e)}Ag.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"}]};const M_=["x","y","weight","size","cellSize","bandwidth"];function rw(e,t){return M_.forEach(n=>t[n]!=null?e[n](t[n]):0),e}L(Ag,S,{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=S_(r,e.groupby),a=(e.groupby||[]).map(Me),u=rw(nw(),e),o=e.as||"grid",s=[];function l(f,c){for(let h=0;h<a.length;++h)f[a[h]]=c[h];return f}return s=i.map(f=>ge(l({[o]:u(f,e.counts)},f.dims))),this.value&&(n.rem=this.value),this.value=n.source=n.add=s,n}});function S_(e,t){var n=[],r=f=>f(o),i,a,u,o,s,l;if(t==null)n.push(e);else for(i={},a=0,u=e.length;a<u;++a)o=e[a],s=t.map(r),l=i[s],l||(i[s]=l=[],l.dims=s,n.push(l)),l.push(o);return n}function Eg(e){S.call(this,null,e)}Eg.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}]};L(Eg,S,{transform(e,t){if(this.value&&!t.changed()&&!e.modified())return t.StopPropagation;var n=t.fork(t.NO_SOURCE|t.NO_FIELDS),r=J3().smooth(e.smooth!==!1),i=e.values,a=e.thresholds||ew(e.count||10,e.nice,!!i),u=e.size,o,s;return i||(i=t.materialize(t.SOURCE).source,o=rw(nw(),e)(i,!0),s=tw(o,o.scale||1,o.scale||1,0,0),u=[o.width,o.height],i=o.values),a=j(a)?a:a(i),i=r.size(u)(i,a),s&&i.forEach(s),this.value&&(n.rem=this.value),this.value=n.source=n.add=(i||[]).map(ge),n}});const h0="Feature",wg="FeatureCollection",$_="MultiPoint";function Cg(e){S.call(this,null,e)}Cg.Definition={type:"GeoJSON",metadata:{},params:[{name:"fields",type:"field",array:!0,length:2},{name:"geojson",type:"field"}]};L(Cg,S,{transform(e,t){var n=this._features,r=this._points,i=e.fields,a=i&&i[0],u=i&&i[1],o=e.geojson||!i&&Et,s=t.ADD,l;l=e.modified()||t.changed(t.REM)||t.modified(tt(o))||a&&t.modified(tt(a))||u&&t.modified(tt(u)),(!this.value||l)&&(s=t.SOURCE,this._features=n=[],this._points=r=[]),o&&t.visit(s,f=>n.push(o(f))),a&&u&&(t.visit(s,f=>{var c=a(f),h=u(f);c!=null&&h!=null&&(c=+c)===c&&(h=+h)===h&&r.push([c,h])}),n=n.concat({type:h0,geometry:{type:$_,coordinates:r}})),this.value={type:wg,features:n}}});function Dg(e){S.call(this,null,e)}Dg.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"}]};L(Dg,S,{transform(e,t){var n=t.fork(t.ALL),r=this.value,i=e.field||Et,a=e.as||"path",u=n.SOURCE;!r||e.modified()?(this.value=r=Q3(e.projection),n.materialize().reflow()):u=i===Et||t.modified(i.fields)?n.ADD_MOD:n.ADD;const o=B_(r,e.pointRadius);return n.visit(u,s=>s[a]=r(i(s))),r.pointRadius(o),n.modifies(a)}});function B_(e,t){const n=e.pointRadius();return e.context(null),t!=null&&e.pointRadius(t),n}function Fg(e){S.call(this,null,e)}Fg.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"]}]};L(Fg,S,{transform(e,t){var n=e.projection,r=e.fields[0],i=e.fields[1],a=e.as||["x","y"],u=a[0],o=a[1],s;function l(f){const c=n([r(f),i(f)]);c?(f[u]=c[0],f[o]=c[1]):(f[u]=void 0,f[o]=void 0)}return e.modified()?t=t.materialize().reflow(!0).visit(t.SOURCE,l):(s=t.modified(r.fields)||t.modified(i.fields),t.visit(s?t.ADD_MOD:t.ADD,l)),t.modifies(a)}});function kg(e){S.call(this,null,e)}kg.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"}]};L(kg,S,{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=__(Q3(e.projection),e.field||nn("datum"),e.pointRadius),n.materialize().reflow(),a=n.SOURCE),n.visit(a,u=>u[i]=r),n.modifies(i)}});function __(e,t,n){const r=n==null?i=>e(t(i)):i=>{var a=e.pointRadius(),u=e.pointRadius(n)(t(i));return e.pointRadius(a),u};return r.context=i=>(e.context(i),r),r}function Mg(e){S.call(this,[],e),this.generator=U5()}Mg.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}]};L(Mg,S,{transform(e,t){var n=this.value,r=this.generator,i;if(!n.length||e.modified())for(const a in e)ee(r[a])&&r[a](e[a]);return i=r(),n.length?t.mod.push(rA(n[0],i)):t.add.push(ge(i)),n[0]=i,t}});function Sg(e){S.call(this,null,e)}Sg.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"}]};L(Sg,S,{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||Et,a=T_(e.opacity,e),u=R_(e.color,e),o=e.as||"image",s={$x:0,$y:0,$value:0,$max:r?ui(n.map(l=>ui(i(l).values))):0};return n.forEach(l=>{const f=i(l),c=te({},l,s);r||(c.$max=ui(f.values||[])),l[o]=O_(f,c,u.dep?u:ot(u(c)),a.dep?a:ot(a(c)))}),t.reflow(!0).modifies(o)}});function R_(e,t){let n;return ee(e)?(n=r=>Bs(e(r,t)),n.dep=iw(e)):n=ot(Bs(e||"#888")),n}function T_(e,t){let n;return ee(e)?(n=r=>e(r,t),n.dep=iw(e)):e?n=ot(e):(n=r=>r.$value/r.$max||0,n.dep=!0),n}function iw(e){if(!ee(e))return!1;const t=jt(tt(e));return t.$x||t.$y||t.$value||t.$max}function O_(e,t,n,r){const i=e.width,a=e.height,u=e.x1||0,o=e.y1||0,s=e.x2||i,l=e.y2||a,f=e.values,c=f?m=>f[m]:Ar,h=Tr(s-u,l-o),d=h.getContext("2d"),g=d.getImageData(0,0,s-u,l-o),p=g.data;for(let m=o,y=0;m<l;++m){t.$y=m-o;for(let v=u,x=m*i;v<s;++v,y+=4){t.$x=v-u,t.$value=c(v+x);const b=n(t);p[y+0]=b.r,p[y+1]=b.g,p[y+2]=b.b,p[y+3]=~~(255*r(t))}}return d.putImageData(g,0,0),h}function aw(e){S.call(this,null,e),this.modified(!0)}L(aw,S,{transform(e,t){let n=this.value;return!n||e.modified("type")?(this.value=n=L_(e.type),c0.forEach(r=>{e[r]!=null&&Zy(n,r,e[r])})):c0.forEach(r=>{e.modified(r)&&Zy(n,r,e[r])}),e.pointRadius!=null&&n.path.pointRadius(e.pointRadius),e.fit&&z_(n,e),t.fork(t.NO_SOURCE|t.NO_FIELDS)}});function z_(e,t){const n=N_(t.fit);t.extent?e.fitExtent(t.extent,n):t.size&&e.fitSize(t.size,n)}function L_(e){const t=xg((e||"mercator").toLowerCase());return t||$("Unrecognized projection type: "+e),t()}function Zy(e,t,n){ee(e[t])&&e[t](n)}function N_(e){return e=V(e),e.length===1?e[0]:{type:wg,features:e.reduce((t,n)=>t.concat(P_(n)),[])}}function P_(e){return e.type===wg?e.features:V(e).filter(t=>t!=null).map(t=>t.type===h0?t:{type:h0,geometry:t})}const I_=Object.freeze(Object.defineProperty({__proto__:null,contour:Eg,geojson:Cg,geopath:Dg,geopoint:Fg,geoshape:kg,graticule:Mg,heatmap:Sg,isocontour:bg,kde2d:Ag,projection:aw},Symbol.toStringTag,{value:"Module"})),Qy={center:NF,collide:r5,nbody:g5,link:a5,x:p5,y:m5},hu="forces",d0=["alpha","alphaMin","alphaTarget","velocityDecay","forces"],U_=["static","iterations"],uw=["x","y","vx","vy"];function $g(e){S.call(this,null,e)}$g.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:uw}]};L($g,S,{transform(e,t){var n=this.value,r=t.changed(t.ADD_REM),i=e.modified(d0),a=e.iterations||300;if(n?(r&&(t.modifies("index"),n.nodes(t.source)),(i||t.changed(t.MOD))&&ow(n,e,0,t)):(this.value=n=j_(t.source,e),n.on("tick",q_(t.dataflow,this)),e.static||(r=!0,n.tick()),t.modifies("index")),i||r||e.modified(U_)||t.changed()&&e.restart){if(n.alpha(Math.max(n.alpha(),e.alpha||1)).alphaDecay(1-Math.pow(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){const n=t.dataflow;for(let o=this._argops,s=0,l=o.length,f;s<l;++s)if(f=o[s],!(f.name!==hu||f.op._argval.force!=="link")){for(var r=f.op._argops,i=0,a=r.length,u;i<a;++i)if(r[i].name==="links"&&(u=r[i].op.source)){n.pulse(u,n.changeset().reflow());break}}return t.reflow(e.modified()).modifies(uw)}});function q_(e,t){return()=>e.touch(t).run()}function j_(e,t){const n=d5(e),r=n.stop,i=n.restart;let a=!1;return n.stopped=()=>a,n.restart=()=>(a=!1,i()),n.stop=()=>(a=!0,r()),ow(n,t,!0).on("end",()=>a=!0)}function ow(e,t,n,r){var i=V(t.forces),a,u,o,s;for(a=0,u=d0.length;a<u;++a)o=d0[a],o!==hu&&t.modified(o)&&e[o](t[o]);for(a=0,u=i.length;a<u;++a)s=hu+a,o=n||t.modified(hu,a)?Y_(i[a]):r&&W_(i[a],r)?e.force(s):null,o&&e.force(s,o);for(u=e.numForces||0;a<u;++a)e.force(hu+a,null);return e.numForces=i.length,e}function W_(e,t){var n,r;for(n in e)if(ee(r=e[n])&&t.modified(tt(r)))return 1;return 0}function Y_(e){var t,n;Z(Qy,e.force)||$("Unrecognized force: "+e.force),t=Qy[e.force]();for(n in e)ee(t[n])&&H_(t[n],e[n],e);return t}function H_(e,t,n){e(ee(t)?r=>t(r,n):t)}const G_=Object.freeze(Object.defineProperty({__proto__:null,force:$g},Symbol.toStringTag,{value:"Module"}));function g0(e,t,n){const r={};return e.each(i=>{const a=i.data;n(a)&&(r[t(a)]=i)}),e.lookup=r,e}function Bg(e){S.call(this,null,e)}Bg.Definition={type:"Nest",metadata:{treesource:!0,changes:!0},params:[{name:"keys",type:"field",array:!0},{name:"generate",type:"boolean"}]};const V_=e=>e.values;L(Bg,S,{transform(e,t){t.source||$("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(u=>{u.children&&ff(u.data)&&i.rem.push(u.data)}),this.value=a=rd({values:V(e.keys).reduce((u,o)=>(u.key(o),u),X_()).entries(i.source)},V_),n&&a.each(u=>{u.children&&(u=ge(u.data),i.add.push(u),i.source.push(u))}),g0(a,Y,Y)),i.source.root=a,i}});function X_(){const e=[],t={entries:i=>r(n(i,0),0),key:i=>(e.push(i),t)};function n(i,a){if(a>=e.length)return i;const u=i.length,o=e[a++],s={},l={};let f=-1,c,h,d;for(;++f<u;)c=o(h=i[f])+"",(d=s[c])?d.push(h):s[c]=[h];for(c in s)l[c]=n(s[c],a);return l}function r(i,a){if(++a>e.length)return i;const u=[];for(const o in i)u.push({key:o,values:r(i[o],a)});return u}return t}function cr(e){S.call(this,null,e)}const K_=(e,t)=>e.parent===t.parent?1:2;L(cr,S,{transform(e,t){(!t.source||!t.source.root)&&$(this.constructor.name+" transform requires a backing tree data source.");const 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(Ci(e.sort,u=>u.data)),Z_(n,this.params,e),n.separation&&n.separation(e.separation!==!1?K_:Aa);try{this.value=n(i)}catch(u){$(u)}return i.each(u=>Q_(u,r,a)),t.reflow(e.modified()).modifies(a).modifies("leaf")}});function Z_(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 Q_(e,t,n){const 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}const p0=["x","y","r","depth","children"];function _g(e){cr.call(this,e)}_g.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:p0.length,default:p0}]};L(_g,cr,{layout:fk,params:["radius","size","padding"],fields:p0});const m0=["x0","y0","x1","y1","depth","children"];function Rg(e){cr.call(this,e)}Rg.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:m0.length,default:m0}]};L(Rg,cr,{layout:ck,params:["size","round","padding"],fields:m0});function Tg(e){S.call(this,null,e)}Tg.Definition={type:"Stratify",metadata:{treesource:!0},params:[{name:"key",type:"field",required:!0},{name:"parentKey",type:"field",required:!0}]};L(Tg,S,{transform(e,t){t.source||$("Stratify transform requires an upstream data source.");let n=this.value;const 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?g0(Fm().id(e.key).parentId(e.parentKey)(i.source),e.key,rn):g0(Fm()([{}]),e.key,e.key)),i.source.root=this.value=n,i}});const Jy={tidy:Ak,cluster:R6},y0=["x","y","depth","children"];function Og(e){cr.call(this,e)}Og.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:y0.length,default:y0}]};L(Og,cr,{layout(e){const t=e||"tidy";if(Z(Jy,t))return Jy[t]();$("Unrecognized Tree layout method: "+t)},params:["size","nodeSize"],fields:y0});function zg(e){S.call(this,[],e)}zg.Definition={type:"TreeLinks",metadata:{tree:!0,generates:!0,changes:!0},params:[]};L(zg,S,{transform(e,t){const n=this.value,r=t.source&&t.source.root,i=t.fork(t.NO_SOURCE),a={};return r||$("TreeLinks transform requires a tree data source."),t.changed(t.ADD_REM)?(i.rem=n,t.visit(t.SOURCE,u=>a[Y(u)]=1),r.each(u=>{const o=u.data,s=u.parent&&u.parent.data;s&&a[Y(o)]&&a[Y(s)]&&i.add.push(ge({source:s,target:o}))}),this.value=i.add):t.changed(t.MOD)&&(t.visit(t.MOD,u=>a[Y(u)]=1),n.forEach(u=>{(a[Y(u.source)]||a[Y(u.target)])&&i.mod.push(u)})),i}});const e2={binary:wk,dice:ro,slice:Kl,slicedice:Ck,squarify:Fx,resquarify:Dk},v0=["x0","y0","x1","y1","depth","children"];function Lg(e){cr.call(this,e)}Lg.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:v0.length,default:v0}]};L(Lg,cr,{layout(){const e=Ek();return e.ratio=t=>{const n=e.tile();n.ratio&&e.tile(n.ratio(t))},e.method=t=>{Z(e2,t)?e.tile(e2[t]):$("Unrecognized Treemap layout method: "+t)},e},params:["method","ratio","size","round","padding","paddingInner","paddingOuter","paddingTop","paddingRight","paddingBottom","paddingLeft"],fields:v0});const J_=Object.freeze(Object.defineProperty({__proto__:null,nest:Bg,pack:_g,partition:Rg,stratify:Tg,tree:Og,treelinks:zg,treemap:Lg},Symbol.toStringTag,{value:"Module"})),Ic=4278190080;function eR(e,t){const n=e.bitmap();return(t||[]).forEach(r=>n.set(e(r.boundary[0]),e(r.boundary[3]))),[n,void 0]}function tR(e,t,n,r,i){const a=e.width,u=e.height,o=r||i,s=Tr(a,u).getContext("2d"),l=Tr(a,u).getContext("2d"),f=o&&Tr(a,u).getContext("2d");n.forEach(C=>As(s,C,!1)),As(l,t,!1),o&&As(f,t,!0);const c=Uc(s,a,u),h=Uc(l,a,u),d=o&&Uc(f,a,u),g=e.bitmap(),p=o&&e.bitmap();let m,y,v,x,b,E,w,A;for(y=0;y<u;++y)for(m=0;m<a;++m)b=y*a+m,E=c[b]&Ic,A=h[b]&Ic,w=o&&d[b]&Ic,(E||w||A)&&(v=e(m),x=e(y),!i&&(E||A)&&g.set(v,x),o&&(E||w)&&p.set(v,x));return[g,p]}function Uc(e,t,n){return new Uint32Array(e.getImageData(0,0,t,n).data.buffer)}function As(e,t,n){if(!t.length)return;const r=t[0].mark.marktype;r==="group"?t.forEach(i=>{i.items.forEach(a=>As(e,a.items,n))}):Ht[r].draw(e,{items:n?t.map(nR):t})}function nR(e){const t=cf(e,{});return t.stroke&&t.strokeOpacity!==0||t.fill&&t.fillOpacity!==0?{...t,strokeOpacity:1,stroke:"#000",fillOpacity:0}:t}const Vn=5,ft=31,qu=32,xr=new Uint32Array(qu+1),dn=new Uint32Array(qu+1);dn[0]=0;xr[0]=~dn[0];for(let e=1;e<=qu;++e)dn[e]=dn[e-1]<<1|1,xr[e]=~dn[e];function rR(e,t){const n=new Uint32Array(~~((e*t+qu)/qu));function r(a,u){n[a]|=u}function i(a,u){n[a]&=u}return{array:n,get:(a,u)=>{const o=u*e+a;return n[o>>>Vn]&1<<(o&ft)},set:(a,u)=>{const o=u*e+a;r(o>>>Vn,1<<(o&ft))},clear:(a,u)=>{const o=u*e+a;i(o>>>Vn,~(1<<(o&ft)))},getRange:(a,u,o,s)=>{let l=s,f,c,h,d;for(;l>=u;--l)if(f=l*e+a,c=l*e+o,h=f>>>Vn,d=c>>>Vn,h===d){if(n[h]&xr[f&ft]&dn[(c&ft)+1])return!0}else{if(n[h]&xr[f&ft]||n[d]&dn[(c&ft)+1])return!0;for(let g=h+1;g<d;++g)if(n[g])return!0}return!1},setRange:(a,u,o,s)=>{let l,f,c,h,d;for(;u<=s;++u)if(l=u*e+a,f=u*e+o,c=l>>>Vn,h=f>>>Vn,c===h)r(c,xr[l&ft]&dn[(f&ft)+1]);else for(r(c,xr[l&ft]),r(h,dn[(f&ft)+1]),d=c+1;d<h;++d)r(d,4294967295)},clearRange:(a,u,o,s)=>{let l,f,c,h,d;for(;u<=s;++u)if(l=u*e+a,f=u*e+o,c=l>>>Vn,h=f>>>Vn,c===h)i(c,dn[l&ft]|xr[(f&ft)+1]);else for(i(c,dn[l&ft]),i(h,xr[(f&ft)+1]),d=c+1;d<h;++d)i(d,0)},outOfBounds:(a,u,o,s)=>a<0||u<0||s>=t||o>=e}}function iR(e,t,n){const r=Math.max(1,Math.sqrt(e*t/1e6)),i=~~((e+2*n+r)/r),a=~~((t+2*n+r)/r),u=o=>~~((o+n)/r);return u.invert=o=>o*r-n,u.bitmap=()=>rR(i,a),u.ratio=r,u.padding=n,u.width=e,u.height=t,u}function aR(e,t,n,r){const i=e.width,a=e.height;return function(u){const o=u.datum.datum.items[r].items,s=o.length,l=u.datum.fontSize,f=Ut.width(u.datum,u.datum.text);let c=0,h,d,g,p,m,y,v;for(let x=0;x<s;++x)h=o[x].x,g=o[x].y,d=o[x].x2===void 0?h:o[x].x2,p=o[x].y2===void 0?g:o[x].y2,m=(h+d)/2,y=(g+p)/2,v=Math.abs(d-h+p-g),v>=c&&(c=v,u.x=m,u.y=y);return m=f/2,y=l/2,h=u.x-m,d=u.x+m,g=u.y-y,p=u.y+y,u.align="center",h<0&&d<=i?u.align="left":0<=h&&i<d&&(u.align="right"),u.baseline="middle",g<0&&p<=a?u.baseline="top":0<=g&&a<p&&(u.baseline="bottom"),!0}}function Sl(e,t,n,r,i,a){let u=n/2;return e-u<0||e+u>i||t-(u=r/2)<0||t+u>a}function $r(e,t,n,r,i,a,u,o){const s=i*a/(r*2),l=e(t-s),f=e(t+s),c=e(n-(a=a/2)),h=e(n+a);return u.outOfBounds(l,c,f,h)||u.getRange(l,c,f,h)||o&&o.getRange(l,c,f,h)}function uR(e,t,n,r){const i=e.width,a=e.height,u=t[0],o=t[1];function s(l,f,c,h,d){const g=e.invert(l),p=e.invert(f);let m=c,y=a,v;if(!Sl(g,p,h,d,i,a)&&!$r(e,g,p,d,h,m,u,o)&&!$r(e,g,p,d,h,d,u,null)){for(;y-m>=1;)v=(m+y)/2,$r(e,g,p,d,h,v,u,o)?y=v:m=v;if(m>c)return[g,p,m,!0]}}return function(l){const f=l.datum.datum.items[r].items,c=f.length,h=l.datum.fontSize,d=Ut.width(l.datum,l.datum.text);let g=n?h:0,p=!1,m=!1,y=0,v,x,b,E,w,A,C,F,D,k,R,T,N,M,O,P,X;for(let J=0;J<c;++J){for(v=f[J].x,b=f[J].y,x=f[J].x2===void 0?v:f[J].x2,E=f[J].y2===void 0?b:f[J].y2,v>x&&(X=v,v=x,x=X),b>E&&(X=b,b=E,E=X),D=e(v),R=e(x),k=~~((D+R)/2),T=e(b),M=e(E),N=~~((T+M)/2),C=k;C>=D;--C)for(F=N;F>=T;--F)P=s(C,F,g,d,h),P&&([l.x,l.y,g,p]=P);for(C=k;C<=R;++C)for(F=N;F<=M;++F)P=s(C,F,g,d,h),P&&([l.x,l.y,g,p]=P);!p&&!n&&(O=Math.abs(x-v+E-b),w=(v+x)/2,A=(b+E)/2,O>=y&&!Sl(w,A,d,h,i,a)&&!$r(e,w,A,h,d,h,u,null)&&(y=O,l.x=w,l.y=A,m=!0))}return p||m?(w=d/2,A=h/2,u.setRange(e(l.x-w),e(l.y-A),e(l.x+w),e(l.y+A)),l.align="center",l.baseline="middle",!0):!1}}const oR=[-1,-1,1,1],sR=[-1,1,-1,1];function lR(e,t,n,r){const i=e.width,a=e.height,u=t[0],o=t[1],s=e.bitmap();return function(l){const f=l.datum.datum.items[r].items,c=f.length,h=l.datum.fontSize,d=Ut.width(l.datum,l.datum.text),g=[];let p=n?h:0,m=!1,y=!1,v=0,x,b,E,w,A,C,F,D,k,R,T,N;for(let M=0;M<c;++M){for(x=f[M].x,E=f[M].y,b=f[M].x2===void 0?x:f[M].x2,w=f[M].y2===void 0?E:f[M].y2,g.push([e((x+b)/2),e((E+w)/2)]);g.length;)if([F,D]=g.pop(),!(u.get(F,D)||o.get(F,D)||s.get(F,D))){s.set(F,D);for(let O=0;O<4;++O)A=F+oR[O],C=D+sR[O],s.outOfBounds(A,C,A,C)||g.push([A,C]);if(A=e.invert(F),C=e.invert(D),k=p,R=a,!Sl(A,C,d,h,i,a)&&!$r(e,A,C,h,d,k,u,o)&&!$r(e,A,C,h,d,h,u,null)){for(;R-k>=1;)T=(k+R)/2,$r(e,A,C,h,d,T,u,o)?R=T:k=T;k>p&&(l.x=A,l.y=C,p=k,m=!0)}}!m&&!n&&(N=Math.abs(b-x+w-E),A=(x+b)/2,C=(E+w)/2,N>=v&&!Sl(A,C,d,h,i,a)&&!$r(e,A,C,h,d,h,u,null)&&(v=N,l.x=A,l.y=C,y=!0))}return m||y?(A=d/2,C=h/2,u.setRange(e(l.x-A),e(l.y-C),e(l.x+A),e(l.y+C)),l.align="center",l.baseline="middle",!0):!1}}const fR=["right","center","left"],cR=["bottom","middle","top"];function hR(e,t,n,r){const i=e.width,a=e.height,u=t[0],o=t[1],s=r.length;return function(l){const f=l.boundary,c=l.datum.fontSize;if(f[2]<0||f[5]<0||f[0]>i||f[3]>a)return!1;let h=l.textWidth??0,d,g,p,m,y,v,x,b,E,w,A,C,F,D,k;for(let R=0;R<s;++R){if(d=(n[R]&3)-1,g=(n[R]>>>2&3)-1,p=d===0&&g===0||r[R]<0,m=d&&g?Math.SQRT1_2:1,y=r[R]<0?-1:1,v=f[1+d]+r[R]*d*m,A=f[4+g]+y*c*g/2+r[R]*g*m,b=A-c/2,E=A+c/2,C=e(v),D=e(b),k=e(E),!h)if(t2(C,C,D,k,u,o,v,v,b,E,f,p))h=Ut.width(l.datum,l.datum.text);else continue;if(w=v+y*h*d/2,v=w-h/2,x=w+h/2,C=e(v),F=e(x),t2(C,F,D,k,u,o,v,x,b,E,f,p))return l.x=d?d*y<0?x:v:w,l.y=g?g*y<0?E:b:A,l.align=fR[d*y+1],l.baseline=cR[g*y+1],u.setRange(C,D,F,k),!0}return!1}}function t2(e,t,n,r,i,a,u,o,s,l,f,c){return!(i.outOfBounds(e,n,t,r)||(c&&a||i).getRange(e,n,t,r))}const qc=0,jc=4,Wc=8,Yc=0,Hc=1,Gc=2,dR={"top-left":qc+Yc,top:qc+Hc,"top-right":qc+Gc,left:jc+Yc,middle:jc+Hc,right:jc+Gc,"bottom-left":Wc+Yc,bottom:Wc+Hc,"bottom-right":Wc+Gc},gR={naive:aR,"reduced-search":uR,floodfill:lR};function pR(e,t,n,r,i,a,u,o,s,l,f){if(!e.length)return e;const c=Math.max(r.length,i.length),h=mR(r,c),d=yR(i,c),g=vR(e[0].datum),p=g==="group"&&e[0].datum.items[s].marktype,m=p==="area",y=xR(g,p,o,s),v=l===null||l===1/0,x=m&&f==="naive";let b=-1,E=-1;const w=e.map(D=>{const k=v?Ut.width(D,D.text):void 0;return b=Math.max(b,k),E=Math.max(E,D.fontSize),{datum:D,opacity:0,x:void 0,y:void 0,align:void 0,baseline:void 0,boundary:y(D),textWidth:k}});l=l===null||l===1/0?Math.max(b,E)+Math.max(...r):l;const A=iR(t[0],t[1],l);let C;if(!x){n&&w.sort((R,T)=>n(R.datum,T.datum));let D=!1;for(let R=0;R<d.length&&!D;++R)D=d[R]===5||h[R]<0;const k=(g&&u||m)&&e.map(R=>R.datum);C=a.length||k?tR(A,k||[],a,D,m):eR(A,u&&w)}const F=m?gR[f](A,C,u,s):hR(A,C,d,h);return w.forEach(D=>D.opacity=+F(D)),w}function mR(e,t){const n=new Float64Array(t),r=e.length;for(let i=0;i<r;++i)n[i]=e[i]||0;for(let i=r;i<t;++i)n[i]=n[r-1];return n}function yR(e,t){const n=new Int8Array(t),r=e.length;for(let i=0;i<r;++i)n[i]|=dR[e[i]];for(let i=r;i<t;++i)n[i]=n[r-1];return n}function vR(e){return e&&e.mark&&e.mark.marktype}function xR(e,t,n,r){const i=a=>[a.x,a.x,a.x,a.y,a.y,a.y];return e?e==="line"||e==="area"?a=>i(a.datum):t==="line"?a=>{const u=a.datum.items[r].items;return i(u.length?u[n==="start"?0:u.length-1]:{x:NaN,y:NaN})}:a=>{const u=a.datum.bounds;return[u.x1,(u.x1+u.x2)/2,u.x2,u.y1,(u.y1+u.y2)/2,u.y2]}:i}const x0=["x","y","opacity","align","baseline"],sw=["top-left","left","bottom-left","top","bottom","top-right","right","bottom-right"];function Ng(e){S.call(this,null,e)}Ng.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:sw},{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:x0.length,default:x0}]};L(Ng,S,{transform(e,t){function n(a){const u=e[a];return ee(u)&&t.modified(u.fields)}const r=e.modified();if(!(r||t.changed(t.ADD_REM)||n("sort")))return;(!e.size||e.size.length!==2)&&$("Size parameter should be specified as a [width, height] array.");const i=e.as||x0;return pR(t.materialize(t.SOURCE).source||[],e.size,e.sort,V(e.offset==null?1:e.offset),V(e.anchor||sw),e.avoidMarks||[],e.avoidBaseMark!==!1,e.lineAnchor||"end",e.markIndex||0,e.padding===void 0?0:e.padding,e.method||"naive").forEach(a=>{const u=a.datum;u[i[0]]=a.x,u[i[1]]=a.y,u[i[2]]=a.opacity,u[i[3]]=a.align,u[i[4]]=a.baseline}),t.reflow(r).modifies(i)}});const bR=Object.freeze(Object.defineProperty({__proto__:null,label:Ng},Symbol.toStringTag,{value:"Module"}));function lw(e,t){var n=[],r=function(f){return f(o)},i,a,u,o,s,l;if(t==null)n.push(e);else for(i={},a=0,u=e.length;a<u;++a)o=e[a],s=t.map(r),l=i[s],l||(i[s]=l=[],l.dims=s,n.push(l)),l.push(o);return n}function Pg(e){S.call(this,null,e)}Pg.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}]};L(Pg,S,{transform(e,t){const n=t.fork(t.NO_SOURCE|t.NO_FIELDS);if(!this.value||t.changed()||e.modified()){const r=t.materialize(t.SOURCE).source,i=lw(r,e.groupby),a=(e.groupby||[]).map(Me),u=a.length,o=e.as||[Me(e.x),Me(e.y)],s=[];i.forEach(l=>{AA(l,e.x,e.y,e.bandwidth||.3).forEach(f=>{const c={};for(let h=0;h<u;++h)c[a[h]]=l.dims[h];c[o[0]]=f[0],c[o[1]]=f[1],s.push(ge(c))})}),this.value&&(n.rem=this.value),this.value=n.add=n.source=s}return n}});const b0={constant:Zd,linear:Qd,log:yA,exp:vA,pow:xA,quad:Jd,poly:bA},AR=(e,t)=>e==="poly"?t:e==="quad"?2:1;function Ig(e){S.call(this,null,e)}Ig.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(b0)},{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}]};L(Ig,S,{transform(e,t){const n=t.fork(t.NO_SOURCE|t.NO_FIELDS);if(!this.value||t.changed()||e.modified()){const r=t.materialize(t.SOURCE).source,i=lw(r,e.groupby),a=(e.groupby||[]).map(Me),u=e.method||"linear",o=e.order==null?3:e.order,s=AR(u,o),l=e.as||[Me(e.x),Me(e.y)],f=b0[u],c=[];let h=e.extent;Z(b0,u)||$("Invalid regression method: "+u),h!=null&&u==="log"&&h[0]<=0&&(t.dataflow.warn("Ignoring extent with values <= 0 for log regression."),h=null),i.forEach(d=>{if(d.length<=s){t.dataflow.warn("Skipping regression with more parameters than data points.");return}const p=f(d,e.x,e.y,o);if(e.params){c.push(ge({keys:d.dims,coef:p.coef,rSquared:p.rSquared}));return}const m=h||zn(d,e.x),y=v=>{const x={};for(let b=0;b<a.length;++b)x[a[b]]=d.dims[b];x[l[0]]=v[0],x[l[1]]=v[1],c.push(ge(x))};u==="linear"||u==="constant"?m.forEach(v=>y([v,p.predict(v)])):vf(p.predict,m,25,200).forEach(y)}),this.value&&(n.rem=this.value),this.value=n.add=n.source=c}return n}});const ER=Object.freeze(Object.defineProperty({__proto__:null,loess:Pg,regression:Ig},Symbol.toStringTag,{value:"Module"}));function Ug(e){S.call(this,null,e)}Ug.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"}]};const wR=[-1e5,-1e5,1e5,1e5];L(Ug,S,{transform(e,t){const 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]]:wR;const a=this.value=G0.from(r,e.x,e.y).voronoi(i);for(let u=0,o=r.length;u<o;++u){const s=a.cellPolygon(u);r[u][n]=s&&!DR(s)?CR(s):null}return t.reflow(e.modified()).modifies(n)}});function CR(e){const t=e[0][0],n=e[0][1];let 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 DR(e){return e.length===2&&e[0][0]===e[1][0]&&e[0][1]===e[1][1]}const FR=Object.freeze(Object.defineProperty({__proto__:null,voronoi:Ug},Symbol.toStringTag,{value:"Module"}));var Vc=Math.PI/180,du=64,Es=2048;function kR(){var e=[256,256],t,n,r,i,a,u,o,s=fw,l=[],f=Math.random,c={};c.layout=function(){for(var g=h(Tr()),p=RR((e[0]>>5)*e[1]),m=null,y=l.length,v=-1,x=[],b=l.map(w=>({text:t(w),font:n(w),style:i(w),weight:a(w),rotate:u(w),size:~~(r(w)+1e-14),padding:o(w),xoff:0,yoff:0,x1:0,y1:0,x0:0,y0:0,hasText:!1,sprite:null,datum:w})).sort((w,A)=>A.size-w.size);++v<y;){var E=b[v];E.x=e[0]*(f()+.5)>>1,E.y=e[1]*(f()+.5)>>1,MR(g,E,b,v),E.hasText&&d(p,E,m)&&(x.push(E),m?$R(m,E):m=[{x:E.x+E.x0,y:E.y+E.y0},{x:E.x+E.x1,y:E.y+E.y1}],E.x-=e[0]>>1,E.y-=e[1]>>1)}return x};function h(g){g.width=g.height=1;var p=Math.sqrt(g.getContext("2d").getImageData(0,0,1,1).data.length>>2);g.width=(du<<5)/p,g.height=Es/p;var m=g.getContext("2d");return m.fillStyle=m.strokeStyle="red",m.textAlign="center",{context:m,ratio:p}}function d(g,p,m){for(var y=p.x,v=p.y,x=Math.hypot(e[0],e[1]),b=s(e),E=f()<.5?1:-1,w=-E,A,C,F;(A=b(w+=E))&&(C=~~A[0],F=~~A[1],!(Math.min(Math.abs(C),Math.abs(F))>=x));)if(p.x=y+C,p.y=v+F,!(p.x+p.x0<0||p.y+p.y0<0||p.x+p.x1>e[0]||p.y+p.y1>e[1])&&(!m||!SR(p,g,e[0]))&&(!m||BR(p,m))){for(var D=p.sprite,k=p.width>>5,R=e[0]>>5,T=p.x-(k<<4),N=T&127,M=32-N,O=p.y1-p.y0,P=(p.y+p.y0)*R+(T>>5),X,J=0;J<O;J++){X=0;for(var pe=0;pe<=k;pe++)g[P+pe]|=X<<M|(pe<k?(X=D[J*k+pe])>>>N:0);P+=R}return p.sprite=null,!0}return!1}return c.words=function(g){return arguments.length?(l=g,c):l},c.size=function(g){return arguments.length?(e=[+g[0],+g[1]],c):e},c.font=function(g){return arguments.length?(n=Xr(g),c):n},c.fontStyle=function(g){return arguments.length?(i=Xr(g),c):i},c.fontWeight=function(g){return arguments.length?(a=Xr(g),c):a},c.rotate=function(g){return arguments.length?(u=Xr(g),c):u},c.text=function(g){return arguments.length?(t=Xr(g),c):t},c.spiral=function(g){return arguments.length?(s=TR[g]||g,c):s},c.fontSize=function(g){return arguments.length?(r=Xr(g),c):r},c.padding=function(g){return arguments.length?(o=Xr(g),c):o},c.random=function(g){return arguments.length?(f=g,c):f},c}function MR(e,t,n,r){if(!t.sprite){var i=e.context,a=e.ratio;i.clearRect(0,0,(du<<5)/a,Es/a);var u=0,o=0,s=0,l=n.length,f,c,h,d,g;for(--r;++r<l;){if(t=n[r],i.save(),i.font=t.style+" "+t.weight+" "+~~((t.size+1)/a)+"px "+t.font,f=i.measureText(t.text+"m").width*a,h=t.size<<1,t.rotate){var p=Math.sin(t.rotate*Vc),m=Math.cos(t.rotate*Vc),y=f*m,v=f*p,x=h*m,b=h*p;f=Math.max(Math.abs(y+b),Math.abs(y-b))+31>>5<<5,h=~~Math.max(Math.abs(v+x),Math.abs(v-x))}else f=f+31>>5<<5;if(h>s&&(s=h),u+f>=du<<5&&(u=0,o+=s,s=0),o+h>=Es)break;i.translate((u+(f>>1))/a,(o+(h>>1))/a),t.rotate&&i.rotate(t.rotate*Vc),i.fillText(t.text,0,0),t.padding&&(i.lineWidth=2*t.padding,i.strokeText(t.text,0,0)),i.restore(),t.width=f,t.height=h,t.xoff=u,t.yoff=o,t.x1=f>>1,t.y1=h>>1,t.x0=-t.x1,t.y0=-t.y1,t.hasText=!0,u+=f}for(var E=i.getImageData(0,0,(du<<5)/a,Es/a).data,w=[];--r>=0;)if(t=n[r],!!t.hasText){for(f=t.width,c=f>>5,h=t.y1-t.y0,d=0;d<h*c;d++)w[d]=0;if(u=t.xoff,u==null)return;o=t.yoff;var A=0,C=-1;for(g=0;g<h;g++){for(d=0;d<f;d++){var F=c*g+(d>>5),D=E[(o+g)*(du<<5)+(u+d)<<2]?1<<31-d%32:0;w[F]|=D,A|=D}A?C=g:(t.y0++,h--,g--,o++)}t.y1=t.y0+C,t.sprite=w.slice(0,(t.y1-t.y0)*c)}}}function SR(e,t,n){n>>=5;for(var r=e.sprite,i=e.width>>5,a=e.x-(i<<4),u=a&127,o=32-u,s=e.y1-e.y0,l=(e.y+e.y0)*n+(a>>5),f,c=0;c<s;c++){f=0;for(var h=0;h<=i;h++)if((f<<o|(h<i?(f=r[c*i+h])>>>u:0))&t[l+h])return!0;l+=n}return!1}function $R(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 BR(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 fw(e){var t=e[0]/e[1];return function(n){return[t*(n*=.1)*Math.cos(n),n*Math.sin(n)]}}function _R(e){var t=4,n=t*e[0]/e[1],r=0,i=0;return function(a){var u=a<0?-1:1;switch(Math.sqrt(1+4*u*a)-u&3){case 0:r+=n;break;case 1:i+=t;break;case 2:r-=n;break;default:i-=t;break}return[r,i]}}function RR(e){for(var t=[],n=-1;++n<e;)t[n]=0;return t}function Xr(e){return typeof e=="function"?e:function(){return e}}var TR={archimedean:fw,rectangular:_R};const cw=["x","y","font","fontSize","fontStyle","fontWeight","angle"],OR=["text","font","rotate","fontSize","fontStyle","fontWeight"];function qg(e){S.call(this,kR(),e)}qg.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:cw}]};L(qg,S,{transform(e,t){e.size&&!(e.size[0]&&e.size[1])&&$("Wordcloud size dimensions must be non-zero.");function n(g){const p=e[g];return ee(p)&&t.modified(p.fields)}const r=e.modified();if(!(r||t.changed(t.ADD_REM)||OR.some(n)))return;const i=t.materialize(t.SOURCE).source,a=this.value,u=e.as||cw;let o=e.fontSize||14,s;if(ee(o)?s=e.fontSizeRange:o=ot(o),s){const g=o,p=de("sqrt")().domain(zn(i,g)).range(s);o=m=>p(g(m))}i.forEach(g=>{g[u[0]]=NaN,g[u[1]]=NaN,g[u[3]]=0});const 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(o).random(un).layout(),f=a.size(),c=f[0]>>1,h=f[1]>>1,d=l.length;for(let g=0,p,m;g<d;++g)p=l[g],m=p.datum,m[u[0]]=p.x+c,m[u[1]]=p.y+h,m[u[2]]=p.font,m[u[3]]=p.size,m[u[4]]=p.style,m[u[5]]=p.weight,m[u[6]]=p.rotate;return t.reflow(r).modifies(u)}});const zR=Object.freeze(Object.defineProperty({__proto__:null,wordcloud:qg},Symbol.toStringTag,{value:"Module"})),LR=e=>new Uint8Array(e),NR=e=>new Uint16Array(e),Fu=e=>new Uint32Array(e);function PR(){let e=8,t=[],n=Fu(0),r=es(0,e),i=es(0,e);return{data:()=>t,seen:()=>n=IR(n,t.length),add(a){for(let u=0,o=t.length,s=a.length,l;u<s;++u)l=a[u],l._index=o++,t.push(l)},remove(a,u){const o=t.length,s=Array(o-a),l=t;let f,c,h;for(c=0;!u[c]&&c<o;++c)s[c]=t[c],l[c]=c;for(h=c;c<o;++c)f=t[c],u[c]?l[c]=-1:(l[c]=h,r[h]=r[c],i[h]=i[c],s[h]=f,f._index=h++),r[c]=0;return t=s,l},size:()=>t.length,curr:()=>r,prev:()=>i,reset:a=>i[a]=r[a],all:()=>e<257?255:e<65537?65535:4294967295,set(a,u){r[a]|=u},clear(a,u){r[a]&=~u},resize(a,u){const o=r.length;(a>o||u>e)&&(e=Math.max(u,e),r=es(a,e,r),i=es(a,e))}}}function IR(e,t,n){return e.length>=t?e:(n=n||new e.constructor(t),n.set(e),n)}function es(e,t,n){const r=(t<257?LR:t<65537?NR:Fu)(e);return n&&r.set(n),r}function n2(e,t,n){const r=1<<t;return{one:r,zero:~r,range:n.slice(),bisect:e.bisect,index:e.index,size:e.size,onAdd(i,a){const u=this,o=u.bisect(u.range,i.value),s=i.index,l=o[0],f=o[1],c=s.length;let h;for(h=0;h<l;++h)a[s[h]]|=r;for(h=f;h<c;++h)a[s[h]]|=r;return u}}}function r2(){let e=Fu(0),t=[],n=0;function r(o,s,l){if(!s.length)return[];const f=n,c=s.length,h=Fu(c);let d=Array(c),g,p,m;for(m=0;m<c;++m)d[m]=o(s[m]),h[m]=m;if(d=UR(d,h),f)g=t,p=e,t=Array(f+c),e=Fu(f+c),qR(l,g,p,f,d,h,c,t,e);else{if(l>0)for(m=0;m<c;++m)h[m]+=l;t=d,e=h}return n=f+c,{index:h,value:d}}function i(o,s){const l=n;let f,c,h;for(c=0;!s[e[c]]&&c<l;++c);for(h=c;c<l;++c)s[f=e[c]]||(e[h]=f,t[h]=t[c],++h);n=l-o}function a(o){for(let s=0,l=n;s<l;++s)e[s]=o[e[s]]}function u(o,s){let l;return s?l=s.length:(s=t,l=n),[_D(s,o[0],0,l),fh(s,o[1],0,l)]}return{insert:r,remove:i,bisect:u,reindex:a,index:()=>e,size:()=>n}}function UR(e,t){return e.sort.call(t,(n,r)=>{const i=e[n],a=e[r];return i<a?-1:i>a?1:0}),zD(e,t)}function qR(e,t,n,r,i,a,u,o,s){let l=0,f=0,c;for(c=0;l<r&&f<u;++c)t[l]<i[f]?(o[c]=t[l],s[c]=n[l++]):(o[c]=i[f],s[c]=a[f++]+e);for(;l<r;++l,++c)o[c]=t[l],s[c]=n[l];for(;f<u;++f,++c)o[c]=i[f],s[c]=a[f]+e}function jg(e){S.call(this,PR(),e),this._indices=null,this._dims=null}jg.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}}]};L(jg,S,{transform(e,t){if(this._dims){var n=e.modified("fields")||e.fields.some(r=>t.modified(r.fields));return n?this.reinit(e,t):this.eval(e,t)}else return this.init(e,t)},init(e,t){const n=e.fields,r=e.query,i=this._indices={},a=this._dims=[],u=r.length;let o=0,s,l;for(;o<u;++o)s=n[o].fname,l=i[s]||(i[s]=r2()),a.push(n2(l,o,r[o]));return this.eval(e,t)},reinit(e,t){const n=t.materialize().fork(),r=e.fields,i=e.query,a=this._indices,u=this._dims,o=this.value,s=o.curr(),l=o.prev(),f=o.all(),c=n.rem=n.add,h=n.mod,d=i.length,g={};let p,m,y,v,x,b,E,w,A;if(l.set(s),t.rem.length&&(x=this.remove(e,t,n)),t.add.length&&o.add(t.add),t.mod.length)for(b={},v=t.mod,E=0,w=v.length;E<w;++E)b[v[E]._index]=1;for(E=0;E<d;++E)A=r[E],(!u[E]||e.modified("fields",E)||t.modified(A.fields))&&(y=A.fname,(p=g[y])||(a[y]=m=r2(),g[y]=p=m.insert(A,t.source,0)),u[E]=n2(m,E,i[E]).onAdd(p,s));for(E=0,w=o.data().length;E<w;++E)x[E]||(l[E]!==s[E]?c.push(E):b[E]&&s[E]!==f&&h.push(E));return o.mask=(1<<d)-1,n},eval(e,t){const n=t.materialize().fork(),r=this._dims.length;let 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){const r=t.add,i=this.value,a=this._dims,u=this._indices,o=e.fields,s={},l=n.add,f=i.size()+r.length,c=a.length;let h=i.size(),d,g,p;i.resize(f,c),i.add(r);const m=i.curr(),y=i.prev(),v=i.all();for(d=0;d<c;++d)g=o[d].fname,p=s[g]||(s[g]=u[g].insert(o[d],r,h)),a[d].onAdd(p,m);for(;h<f;++h)y[h]=v,m[h]!==v&&l.push(h)},modify(e,t){const n=t.mod,r=this.value,i=r.curr(),a=r.all(),u=e.mod;let o,s,l;for(o=0,s=u.length;o<s;++o)l=u[o]._index,i[l]!==a&&n.push(l)},remove(e,t,n){const r=this._indices,i=this.value,a=i.curr(),u=i.prev(),o=i.all(),s={},l=n.rem,f=t.rem;let c,h,d,g;for(c=0,h=f.length;c<h;++c)d=f[c]._index,s[d]=1,u[d]=g=a[d],a[d]=o,g!==o&&l.push(d);for(d in r)r[d].remove(h,s);return this.reindex(t,h,s),s},reindex(e,t,n){const r=this._indices,i=this.value;e.runAfter(()=>{const a=i.remove(t,n);for(const u in r)r[u].reindex(a)})},update(e,t,n){const r=this._dims,i=e.query,a=t.stamp,u=r.length;let o=0,s,l;for(n.filters=0,l=0;l<u;++l)e.modified("query",l)&&(s=l,++o);if(o===1)o=r[s].one,this.incrementOne(r[s],i[s],n.add,n.rem);else for(l=0,o=0;l<u;++l)e.modified("query",l)&&(o|=r[l].one,this.incrementAll(r[l],i[l],a,n.add),n.rem=n.add);return o},incrementAll(e,t,n,r){const i=this.value,a=i.seen(),u=i.curr(),o=i.prev(),s=e.index(),l=e.bisect(e.range),f=e.bisect(t),c=f[0],h=f[1],d=l[0],g=l[1],p=e.one;let m,y,v;if(c<d)for(m=c,y=Math.min(d,h);m<y;++m)v=s[m],a[v]!==n&&(o[v]=u[v],a[v]=n,r.push(v)),u[v]^=p;else if(c>d)for(m=d,y=Math.min(c,g);m<y;++m)v=s[m],a[v]!==n&&(o[v]=u[v],a[v]=n,r.push(v)),u[v]^=p;if(h>g)for(m=Math.max(c,g),y=h;m<y;++m)v=s[m],a[v]!==n&&(o[v]=u[v],a[v]=n,r.push(v)),u[v]^=p;else if(h<g)for(m=Math.max(d,h),y=g;m<y;++m)v=s[m],a[v]!==n&&(o[v]=u[v],a[v]=n,r.push(v)),u[v]^=p;e.range=t.slice()},incrementOne(e,t,n,r){const i=this.value,a=i.curr(),u=e.index(),o=e.bisect(e.range),s=e.bisect(t),l=s[0],f=s[1],c=o[0],h=o[1],d=e.one;let g,p,m;if(l<c)for(g=l,p=Math.min(c,f);g<p;++g)m=u[g],a[m]^=d,n.push(m);else if(l>c)for(g=c,p=Math.min(l,h);g<p;++g)m=u[g],a[m]^=d,r.push(m);if(f>h)for(g=Math.max(l,h),p=f;g<p;++g)m=u[g],a[m]^=d,n.push(m);else if(f<h)for(g=Math.max(c,f),p=h;g<p;++g)m=u[g],a[m]^=d,r.push(m);e.range=t.slice()}});function Wg(e){S.call(this,null,e)}Wg.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."}]};L(Wg,S,{transform(e,t){const n=~(e.ignore||0),r=e.filter,i=r.mask;if(!(i&n))return t.StopPropagation;const a=t.fork(t.ALL),u=r.data(),o=r.curr(),s=r.prev(),l=f=>o[f]&n?null:u[f];return a.filter(a.MOD,l),i&i-1?(a.filter(a.ADD,f=>{const c=o[f]&n;return!c&&c^s[f]&n?u[f]:null}),a.filter(a.REM,f=>{const c=o[f]&n;return c&&!(c^(c^s[f]&n))?u[f]:null})):(a.filter(a.ADD,l),a.filter(a.REM,f=>(o[f]&n)===i?u[f]:null)),a.filter(a.SOURCE,f=>l(f._index))}});const jR=Object.freeze(Object.defineProperty({__proto__:null,crossfilter:jg,resolvefilter:Wg},Symbol.toStringTag,{value:"Module"})),WR="RawCode",ga="Literal",YR="Property",HR="Identifier",GR="ArrayExpression",VR="BinaryExpression",hw="CallExpression",XR="ConditionalExpression",KR="LogicalExpression",ZR="MemberExpression",QR="ObjectExpression",JR="UnaryExpression";function An(e){this.type=e}An.prototype.visit=function(e){let t,n,r;if(e(this))return 1;for(t=eT(this),n=0,r=t.length;n<r;++n)if(t[n].visit(e))return 1};function eT(e){switch(e.type){case GR:return e.elements;case VR:case KR:return[e.left,e.right];case hw:return[e.callee].concat(e.arguments);case XR:return[e.test,e.consequent,e.alternate];case ZR:return[e.object,e.property];case QR:return e.properties;case YR:return[e.key,e.value];case JR:return[e.argument];case HR:case ga:case WR:default:return[]}}var qn,U,B,rt,me,zf=1,Co=2,mi=3,Hr=4,Lf=5,ki=6,Ft=7,Do=8,tT=9;qn={};qn[zf]="Boolean";qn[Co]="<end>";qn[mi]="Identifier";qn[Hr]="Keyword";qn[Lf]="Null";qn[ki]="Numeric";qn[Ft]="Punctuator";qn[Do]="String";qn[tT]="RegularExpression";var nT="ArrayExpression",rT="BinaryExpression",iT="CallExpression",aT="ConditionalExpression",dw="Identifier",uT="Literal",oT="LogicalExpression",sT="MemberExpression",lT="ObjectExpression",fT="Property",cT="UnaryExpression",Ne="Unexpected token %0",hT="Unexpected number",dT="Unexpected string",gT="Unexpected identifier",pT="Unexpected reserved word",mT="Unexpected end of input",A0="Invalid regular expression",Xc="Invalid regular expression: missing /",gw="Octal literals are not allowed in strict mode.",yT="Duplicate data property in object literal not allowed in strict mode",We="ILLEGAL",ju="Disabled.",vT=new 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]"),xT=new 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 Nf(e,t){if(!e)throw new Error("ASSERT: "+t)}function Zn(e){return e>=48&&e<=57}function Yg(e){return"0123456789abcdefABCDEF".includes(e)}function ku(e){return"01234567".includes(e)}function bT(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 Wu(e){return e===10||e===13||e===8232||e===8233}function Fo(e){return e===36||e===95||e>=65&&e<=90||e>=97&&e<=122||e===92||e>=128&&vT.test(String.fromCharCode(e))}function $l(e){return e===36||e===95||e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||e===92||e>=128&&xT.test(String.fromCharCode(e))}const AT={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 pw(){for(;B<rt;){const e=U.charCodeAt(B);if(bT(e)||Wu(e))++B;else break}}function E0(e){var t,n,r,i=0;for(n=e==="u"?4:2,t=0;t<n;++t)B<rt&&Yg(U[B])?(r=U[B++],i=i*16+"0123456789abcdef".indexOf(r.toLowerCase())):fe({},Ne,We);return String.fromCharCode(i)}function ET(){var e,t,n,r;for(e=U[B],t=0,e==="}"&&fe({},Ne,We);B<rt&&(e=U[B++],!!Yg(e));)t=t*16+"0123456789abcdef".indexOf(e.toLowerCase());return(t>1114111||e!=="}")&&fe({},Ne,We),t<=65535?String.fromCharCode(t):(n=(t-65536>>10)+55296,r=(t-65536&1023)+56320,String.fromCharCode(n,r))}function mw(){var e,t;for(e=U.charCodeAt(B++),t=String.fromCharCode(e),e===92&&(U.charCodeAt(B)!==117&&fe({},Ne,We),++B,e=E0("u"),(!e||e==="\\"||!Fo(e.charCodeAt(0)))&&fe({},Ne,We),t=e);B<rt&&(e=U.charCodeAt(B),!!$l(e));)++B,t+=String.fromCharCode(e),e===92&&(t=t.substr(0,t.length-1),U.charCodeAt(B)!==117&&fe({},Ne,We),++B,e=E0("u"),(!e||e==="\\"||!$l(e.charCodeAt(0)))&&fe({},Ne,We),t+=e);return t}function wT(){var e,t;for(e=B++;B<rt;){if(t=U.charCodeAt(B),t===92)return B=e,mw();if($l(t))++B;else break}return U.slice(e,B)}function CT(){var e,t,n;return e=B,t=U.charCodeAt(B)===92?mw():wT(),t.length===1?n=mi:AT.hasOwnProperty(t)?n=Hr:t==="null"?n=Lf:t==="true"||t==="false"?n=zf:n=mi,{type:n,value:t,start:e,end:B}}function Kc(){var e=B,t=U.charCodeAt(B),n,r=U[B],i,a,u;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++B,{type:Ft,value:String.fromCharCode(t),start:e,end:B};default:if(n=U.charCodeAt(B+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 B+=2,{type:Ft,value:String.fromCharCode(t)+String.fromCharCode(n),start:e,end:B};case 33:case 61:return B+=2,U.charCodeAt(B)===61&&++B,{type:Ft,value:U.slice(e,B),start:e,end:B}}}if(u=U.substr(B,4),u===">>>=")return B+=4,{type:Ft,value:u,start:e,end:B};if(a=u.substr(0,3),a===">>>"||a==="<<="||a===">>=")return B+=3,{type:Ft,value:a,start:e,end:B};if(i=a.substr(0,2),r===i[1]&&"+-<>&|".includes(r)||i==="=>")return B+=2,{type:Ft,value:i,start:e,end:B};if(i==="//"&&fe({},Ne,We),"<>=!+-*%&|^/".includes(r))return++B,{type:Ft,value:r,start:e,end:B};fe({},Ne,We)}function DT(e){let t="";for(;B<rt&&Yg(U[B]);)t+=U[B++];return t.length===0&&fe({},Ne,We),Fo(U.charCodeAt(B))&&fe({},Ne,We),{type:ki,value:parseInt("0x"+t,16),start:e,end:B}}function FT(e){let t="0"+U[B++];for(;B<rt&&ku(U[B]);)t+=U[B++];return(Fo(U.charCodeAt(B))||Zn(U.charCodeAt(B)))&&fe({},Ne,We),{type:ki,value:parseInt(t,8),octal:!0,start:e,end:B}}function i2(){var e,t,n;if(n=U[B],Nf(Zn(n.charCodeAt(0))||n===".","Numeric literal must start with a decimal digit or a decimal point"),t=B,e="",n!=="."){if(e=U[B++],n=U[B],e==="0"){if(n==="x"||n==="X")return++B,DT(t);if(ku(n))return FT(t);n&&Zn(n.charCodeAt(0))&&fe({},Ne,We)}for(;Zn(U.charCodeAt(B));)e+=U[B++];n=U[B]}if(n==="."){for(e+=U[B++];Zn(U.charCodeAt(B));)e+=U[B++];n=U[B]}if(n==="e"||n==="E")if(e+=U[B++],n=U[B],(n==="+"||n==="-")&&(e+=U[B++]),Zn(U.charCodeAt(B)))for(;Zn(U.charCodeAt(B));)e+=U[B++];else fe({},Ne,We);return Fo(U.charCodeAt(B))&&fe({},Ne,We),{type:ki,value:parseFloat(e),start:t,end:B}}function kT(){var e="",t,n,r,i,a=!1;for(t=U[B],Nf(t==="'"||t==='"',"String literal must starts with a quote"),n=B,++B;B<rt;)if(r=U[B++],r===t){t="";break}else if(r==="\\")if(r=U[B++],!r||!Wu(r.charCodeAt(0)))switch(r){case"u":case"x":U[B]==="{"?(++B,e+=ET()):e+=E0(r);break;case"n":e+=`
|
|
8
|
+
`;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:ku(r)?(i="01234567".indexOf(r),i!==0&&(a=!0),B<rt&&ku(U[B])&&(a=!0,i=i*8+"01234567".indexOf(U[B++]),"0123".includes(r)&&B<rt&&ku(U[B])&&(i=i*8+"01234567".indexOf(U[B++]))),e+=String.fromCharCode(i)):e+=r;break}else r==="\r"&&U[B]===`
|
|
9
|
+
`&&++B;else{if(Wu(r.charCodeAt(0)))break;e+=r}return t!==""&&fe({},Ne,We),{type:Do,value:e,octal:a,start:n,end:B}}function MT(e,t){let n=e;t.includes("u")&&(n=n.replace(/\\u\{([0-9a-fA-F]+)\}/g,(r,i)=>{if(parseInt(i,16)<=1114111)return"x";fe({},A0)}).replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,"x"));try{new RegExp(n)}catch{fe({},A0)}try{return new RegExp(e,t)}catch{return null}}function ST(){var e,t,n,r,i;for(e=U[B],Nf(e==="/","Regular expression literal must start with a slash"),t=U[B++],n=!1,r=!1;B<rt;)if(e=U[B++],t+=e,e==="\\")e=U[B++],Wu(e.charCodeAt(0))&&fe({},Xc),t+=e;else if(Wu(e.charCodeAt(0)))fe({},Xc);else if(n)e==="]"&&(n=!1);else if(e==="/"){r=!0;break}else e==="["&&(n=!0);return r||fe({},Xc),i=t.substr(1,t.length-2),{value:i,literal:t}}function $T(){var e,t,n;for(t="",n="";B<rt&&(e=U[B],!!$l(e.charCodeAt(0)));)++B,e==="\\"&&B<rt?fe({},Ne,We):(n+=e,t+=e);return n.search(/[^gimuy]/g)>=0&&fe({},A0,n),{value:n,literal:t}}function BT(){var e,t,n,r;return me=null,pw(),e=B,t=ST(),n=$T(),r=MT(t.value,n.value),{literal:t.literal+n.literal,value:r,regex:{pattern:t.value,flags:n.value},start:e,end:B}}function _T(e){return e.type===mi||e.type===Hr||e.type===zf||e.type===Lf}function yw(){if(pw(),B>=rt)return{type:Co,start:B,end:B};const e=U.charCodeAt(B);return Fo(e)?CT():e===40||e===41||e===59?Kc():e===39||e===34?kT():e===46?Zn(U.charCodeAt(B+1))?i2():Kc():Zn(e)?i2():Kc()}function St(){const e=me;return B=e.end,me=yw(),B=e.end,e}function vw(){const e=B;me=yw(),B=e}function RT(e){const t=new An(nT);return t.elements=e,t}function a2(e,t,n){const r=new An(e==="||"||e==="&&"?oT:rT);return r.operator=e,r.left=t,r.right=n,r}function TT(e,t){const n=new An(iT);return n.callee=e,n.arguments=t,n}function OT(e,t,n){const r=new An(aT);return r.test=e,r.consequent=t,r.alternate=n,r}function Hg(e){const t=new An(dw);return t.name=e,t}function gu(e){const t=new An(uT);return t.value=e.value,t.raw=U.slice(e.start,e.end),e.regex&&(t.raw==="//"&&(t.raw="/(?:)/"),t.regex=e.regex),t}function u2(e,t,n){const r=new An(sT);return r.computed=e==="[",r.object=t,r.property=n,r.computed||(n.member=!0),r}function zT(e){const t=new An(lT);return t.properties=e,t}function o2(e,t,n){const r=new An(fT);return r.key=t,r.value=n,r.kind=e,r}function LT(e,t){const n=new An(cT);return n.operator=e,n.argument=t,n.prefix=!0,n}function fe(e,t){var n,r=Array.prototype.slice.call(arguments,2),i=t.replace(/%(\d)/g,(a,u)=>(Nf(u<r.length,"Message reference must be in range"),r[u]));throw n=new Error(i),n.index=B,n.description=i,n}function Pf(e){e.type===Co&&fe(e,mT),e.type===ki&&fe(e,hT),e.type===Do&&fe(e,dT),e.type===mi&&fe(e,gT),e.type===Hr&&fe(e,pT),fe(e,Ne,e.value)}function it(e){const t=St();(t.type!==Ft||t.value!==e)&&Pf(t)}function Ee(e){return me.type===Ft&&me.value===e}function Zc(e){return me.type===Hr&&me.value===e}function NT(){const e=[];for(B=me.start,it("[");!Ee("]");)Ee(",")?(St(),e.push(null)):(e.push(yi()),Ee("]")||it(","));return St(),RT(e)}function s2(){B=me.start;const e=St();return e.type===Do||e.type===ki?(e.octal&&fe(e,gw),gu(e)):Hg(e.value)}function PT(){var e,t,n,r;if(B=me.start,e=me,e.type===mi)return n=s2(),it(":"),r=yi(),o2("init",n,r);if(e.type===Co||e.type===Ft)Pf(e);else return t=s2(),it(":"),r=yi(),o2("init",t,r)}function IT(){var e=[],t,n,r,i={},a=String;for(B=me.start,it("{");!Ee("}");)t=PT(),t.key.type===dw?n=t.key.name:n=a(t.key.value),r="$"+n,Object.prototype.hasOwnProperty.call(i,r)?fe({},yT):i[r]=!0,e.push(t),Ee("}")||it(",");return it("}"),zT(e)}function UT(){it("(");const e=Gg();return it(")"),e}const qT={if:1};function jT(){var e,t,n;if(Ee("("))return UT();if(Ee("["))return NT();if(Ee("{"))return IT();if(e=me.type,B=me.start,e===mi||qT[me.value])n=Hg(St().value);else if(e===Do||e===ki)me.octal&&fe(me,gw),n=gu(St());else{if(e===Hr)throw new Error(ju);e===zf?(t=St(),t.value=t.value==="true",n=gu(t)):e===Lf?(t=St(),t.value=null,n=gu(t)):Ee("/")||Ee("/=")?(n=gu(BT()),vw()):Pf(St())}return n}function WT(){const e=[];if(it("("),!Ee(")"))for(;B<rt&&(e.push(yi()),!Ee(")"));)it(",");return it(")"),e}function YT(){B=me.start;const e=St();return _T(e)||Pf(e),Hg(e.value)}function HT(){return it("."),YT()}function GT(){it("[");const e=Gg();return it("]"),e}function VT(){var e,t,n;for(e=jT();;)if(Ee("."))n=HT(),e=u2(".",e,n);else if(Ee("("))t=WT(),e=TT(e,t);else if(Ee("["))n=GT(),e=u2("[",e,n);else break;return e}function l2(){const e=VT();if(me.type===Ft&&(Ee("++")||Ee("--")))throw new Error(ju);return e}function ws(){var e,t;if(me.type!==Ft&&me.type!==Hr)t=l2();else{if(Ee("++")||Ee("--"))throw new Error(ju);if(Ee("+")||Ee("-")||Ee("~")||Ee("!"))e=St(),t=ws(),t=LT(e.value,t);else{if(Zc("delete")||Zc("void")||Zc("typeof"))throw new Error(ju);t=l2()}}return t}function f2(e){let t=0;if(e.type!==Ft&&e.type!==Hr)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;break}return t}function XT(){var e,t,n,r,i,a,u,o,s,l;if(e=me,s=ws(),r=me,i=f2(r),i===0)return s;for(r.prec=i,St(),t=[e,me],u=ws(),a=[s,r,u];(i=f2(me))>0;){for(;a.length>2&&i<=a[a.length-2].prec;)u=a.pop(),o=a.pop().value,s=a.pop(),t.pop(),n=a2(o,s,u),a.push(n);r=St(),r.prec=i,a.push(r),t.push(me),n=ws(),a.push(n)}for(l=a.length-1,n=a[l],t.pop();l>1;)t.pop(),n=a2(a[l-1].value,a[l-2],n),l-=2;return n}function yi(){var e,t,n;return e=XT(),Ee("?")&&(St(),t=yi(),it(":"),n=yi(),e=OT(e,t,n)),e}function Gg(){const e=yi();if(Ee(","))throw new Error(ju);return e}function KT(e){U=e,B=0,rt=U.length,me=null,vw();const t=Gg();if(me.type!==Co)throw new Error("Unexpect token after expression.");return t}var xw={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 bw(e){function t(u,o,s,l){let f=e(o[0]);return s&&(f=s+"("+f+")",s.lastIndexOf("new ",0)===0&&(f="("+f+")")),f+"."+u+(l<0?"":l===0?"()":"("+o.slice(1).map(e).join(",")+")")}function n(u,o,s){return l=>t(u,l,o,s)}const 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(u){u.length<3&&$("Missing arguments to clamp function."),u.length>3&&$("Too many arguments to clamp function.");const o=u.map(e);return"Math.max("+o[1]+", Math.min("+o[2]+","+o[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(u){u.length<3&&$("Missing arguments to if function."),u.length>3&&$("Too many arguments to if function.");const o=u.map(e);return"("+o[0]+"?"+o[1]+":"+o[2]+")"}}}function ZT(e){const t=e&&e.length-1;return t&&(e[0]==='"'&&e[t]==='"'||e[0]==="'"&&e[t]==="'")?e.slice(1,-1):e}function QT(e){e=e||{};const t=e.allowed?jt(e.allowed):{},n=e.forbidden?jt(e.forbidden):{},r=e.constants||xw,i=(e.functions||bw)(c),a=e.globalvar,u=e.fieldvar,o=ee(a)?a:g=>`${a}["${g}"]`;let s={},l={},f=0;function c(g){if(be(g))return g;const p=h[g.type];return p==null&&$("Unsupported type: "+g.type),p(g)}const h={Literal:g=>g.raw,Identifier:g=>{const p=g.name;return f>0?p:Z(n,p)?$("Illegal identifier: "+p):Z(r,p)?r[p]:Z(t,p)?p:(s[p]=1,o(p))},MemberExpression:g=>{const p=!g.computed,m=c(g.object);p&&(f+=1);const y=c(g.property);return m===u&&(l[ZT(y)]=1),p&&(f-=1),m+(p?"."+y:"["+y+"]")},CallExpression:g=>{g.callee.type!=="Identifier"&&$("Illegal callee type: "+g.callee.type);const p=g.callee.name,m=g.arguments,y=Z(i,p)&&i[p];return y||$("Unrecognized function: "+p),ee(y)?y(m):y+"("+m.map(c).join(",")+")"},ArrayExpression:g=>"["+g.elements.map(c).join(",")+"]",BinaryExpression:g=>"("+c(g.left)+" "+g.operator+" "+c(g.right)+")",UnaryExpression:g=>"("+g.operator+c(g.argument)+")",ConditionalExpression:g=>"("+c(g.test)+"?"+c(g.consequent)+":"+c(g.alternate)+")",LogicalExpression:g=>"("+c(g.left)+g.operator+c(g.right)+")",ObjectExpression:g=>"{"+g.properties.map(c).join(",")+"}",Property:g=>{f+=1;const p=c(g.key);return f-=1,p+":"+c(g.value)}};function d(g){const p={code:c(g),globals:Object.keys(s),fields:Object.keys(l)};return s={},l={},p}return d.functions=i,d.constants=r,d}const JT="Literal";var jn,eO=1,tO=2,nO=3,rO=4,iO=5,aO=6,uO=7,oO=8,sO=9;jn={};jn[eO]="Boolean";jn[tO]="<end>";jn[nO]="Identifier";jn[rO]="Keyword";jn[iO]="Null";jn[aO]="Numeric";jn[uO]="Punctuator";jn[oO]="String";jn[sO]="RegularExpression";const c2=Symbol("vega_selection_getter");function Aw(e){return(!e.getter||!e.getter[c2])&&(e.getter=nn(e.field),e.getter[c2]=!0),e.getter}const Vg="intersect",h2="union",lO="vlMulti",fO="vlPoint",d2="or",cO="and",kn="_vgsid_",Yu=nn(kn),hO="E",dO="R",gO="R-E",pO="R-LE",mO="R-RE",yO="E-LT",vO="E-LTE",xO="E-GT",bO="E-GTE",AO="E-VALID",EO="E-ONE",Bl="index:unit";function g2(e,t){for(var n=t.fields,r=t.values,i=n.length,a=0,u,o;a<i;++a)if(o=n[a],u=Aw(o)(e),_r(u)&&(u=et(u)),_r(r[a])&&(r[a]=et(r[a])),j(r[a])&&_r(r[a][0])&&(r[a]=r[a].map(et)),o.type===hO){if(j(r[a])?!r[a].includes(u):u!==r[a])return!1}else if(o.type===dO){if(!Yi(u,r[a]))return!1}else if(o.type===mO){if(!Yi(u,r[a],!0,!1))return!1}else if(o.type===gO){if(!Yi(u,r[a],!1,!1))return!1}else if(o.type===pO){if(!Yi(u,r[a],!1,!0))return!1}else if(o.type===yO){if(u>=r[a])return!1}else if(o.type===vO){if(u>r[a])return!1}else if(o.type===xO){if(u<=r[a])return!1}else if(o.type===bO){if(u<r[a])return!1}else if(o.type===AO){if(u===null||isNaN(u))return!1}else if(o.type===EO&&r[a].indexOf(u)===-1)return!1;return!0}function wO(e,t,n){for(var r=this.context.data[e],i=r?r.values.value:[],a=r?r[Bl]&&r[Bl].value:void 0,u=n===Vg,o=i.length,s=0,l,f,c,h,d;s<o;++s)if(l=i[s],a&&u){if(f=f||{},c=f[h=l.unit]||0,c===-1)continue;if(d=g2(t,l),f[h]=d?-1:++c,d&&a.size===1)return!0;if(!d&&c===a.get(h).count)return!1}else if(d=g2(t,l),u^d)return d;return o&&u}const Ew=Yl(Yu),CO=Ew.left,DO=Ew.right;function FO(e,t,n){const r=this.context.data[e],i=r?r.values.value:[],a=r?r[Bl]&&r[Bl].value:void 0,u=n===Vg,o=Yu(t),s=CO(i,o);if(s===i.length||Yu(i[s])!==o)return!1;if(a&&u){if(a.size===1)return!0;if(DO(i,o)-s<a.size)return!1}return!0}function kO(e,t){return e.map(n=>te(t.fields?{values:t.fields.map(r=>Aw(r)(n.datum))}:{[kn]:Yu(n.datum)},t))}function MO(e,t,n,r){for(var i=this.context.data[e],a=i?i.values.value:[],u={},o={},s={},l,f,c,h,d,g,p,m,y,v,x=a.length,b=0,E,w;b<x;++b)if(l=a[b],h=l.unit,f=l.fields,c=l.values,f&&c){for(E=0,w=f.length;E<w;++E)d=f[E],p=u[d.field]||(u[d.field]={}),m=p[h]||(p[h]=[]),s[d.field]=y=d.type.charAt(0),v=Qc[`${y}_union`],p[h]=v(m,V(c[E]));n&&(m=o[h]||(o[h]=[]),m.push(V(c).reduce((A,C,F)=>(A[f[F].field]=C,A),{})))}else d=kn,g=Yu(l),p=u[d]||(u[d]={}),m=p[h]||(p[h]=[]),m.push(g),n&&(m=o[h]||(o[h]=[]),m.push({[kn]:g}));if(t=t||h2,u[kn]?u[kn]=Qc[`${kn}_${t}`](...Object.values(u[kn])):Object.keys(u).forEach(A=>{u[A]=Object.keys(u[A]).map(C=>u[A][C]).reduce((C,F)=>C===void 0?F:Qc[`${s[A]}_${t}`](C,F))}),a=Object.keys(o),n&&a.length){const A=r?fO:lO;u[A]=t===h2?{[d2]:a.reduce((C,F)=>(C.push(...o[F]),C),[])}:{[cO]:a.map(C=>({[d2]:o[C]}))}}return u}var Qc={[`${kn}_union`]:qD,[`${kn}_intersect`]:ID,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(n=>t.includes(n)):t},R_union:function(e,t){var n=et(t[0]),r=et(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=et(t[0]),r=et(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]}};const SO=":",$O="@";function Xg(e,t,n,r){t[0].type!==JT&&$("First argument to selection functions must be a string literal.");const i=t[0].value,a=t.length>=2&&oe(t).value,u="unit",o=$O+u,s=SO+i;a===Vg&&!Z(r,o)&&(r[o]=n.getData(i).indataRef(n,u)),Z(r,s)||(r[s]=n.getData(i).tuplesRef())}function ww(e){const t=this.context.data[e];return t?t.values.value:[]}function BO(e,t,n){const r=this.context.data[e]["index:"+t],i=r?r.value.get(n):void 0;return i&&i.count}function _O(e,t){const n=this.context.dataflow,r=this.context.data[e],i=r.input;return n.pulse(i,n.changeset().remove(rn).insert(t)),1}function RO(e,t,n){if(e){const r=this.context.dataflow,i=e.mark.source;r.pulse(i,r.changeset().encode(e,t))}return n!==void 0?n:e}const ko=e=>function(t,n){const r=this.context.dataflow.locale();return t===null?"null":r[e](n)(t)},TO=ko("format"),Cw=ko("timeFormat"),OO=ko("utcFormat"),zO=ko("timeParse"),LO=ko("utcParse"),ts=new Date(2e3,0,1);function If(e,t,n){return!Number.isInteger(e)||!Number.isInteger(t)?"":(ts.setYear(2e3),ts.setMonth(e),ts.setDate(t),Cw.call(this,ts,n))}function NO(e){return If.call(this,e,1,"%B")}function PO(e){return If.call(this,e,1,"%b")}function IO(e){return If.call(this,0,2+e,"%A")}function UO(e){return If.call(this,0,2+e,"%a")}const qO=":",jO="@",w0="%",Dw="$";function Kg(e,t,n,r){t[0].type!==ga&&$("First argument to data functions must be a string literal.");const i=t[0].value,a=qO+i;if(!Z(a,r))try{r[a]=n.getData(i).tuplesRef()}catch{}}function WO(e,t,n,r){t[0].type!==ga&&$("First argument to indata must be a string literal."),t[1].type!==ga&&$("Second argument to indata must be a string literal.");const i=t[0].value,a=t[1].value,u=jO+a;Z(u,r)||(r[u]=n.getData(i).indataRef(n,a))}function xt(e,t,n,r){if(t[0].type===ga)p2(n,r,t[0].value);else for(e in n.scales)p2(n,r,e)}function p2(e,t,n){const r=w0+n;if(!Z(t,r))try{t[r]=e.scaleRef(n)}catch{}}function Wn(e,t){if(be(e)){const n=t.scales[e];return n&&sy(n.value)?n.value:void 0}else if(ee(e))return sy(e)?e:void 0}function YO(e,t,n){t.__bandwidth=i=>i&&i.bandwidth?i.bandwidth():0,n._bandwidth=xt,n._range=xt,n._scale=xt;const r=i=>"_["+(i.type===ga?G(w0+i.value):G(w0)+"+"+e(i))+"]";return{_bandwidth:i=>`this.__bandwidth(${r(i[0])})`,_range:i=>`${r(i[0])}.range()`,_scale:i=>`${r(i[0])}(${e(i[1])})`}}function Zg(e,t){return function(n,r,i){if(n){const a=Wn(n,(i||this).context);return a&&a.path[e](r)}else return t(r)}}const HO=Zg("area",b5),GO=Zg("bounds",C5),VO=Zg("centroid",$5);function XO(e,t){const n=Wn(e,(t||this).context);return n&&n.scale()}function KO(e){const t=this.context.group;let n=!1;if(t)for(;e;){if(e===t){n=!0;break}e=e.mark.group}return n}function Qg(e,t,n){try{e[t].apply(e,["EXPRESSION"].concat([].slice.call(n)))}catch(r){e.warn(r)}return n[n.length-1]}function ZO(){return Qg(this.context.dataflow,"warn",arguments)}function QO(){return Qg(this.context.dataflow,"info",arguments)}function JO(){return Qg(this.context.dataflow,"debug",arguments)}function Jc(e){const t=e/255;return t<=.03928?t/12.92:Math.pow((t+.055)/1.055,2.4)}function C0(e){const t=Bs(e),n=Jc(t.r),r=Jc(t.g),i=Jc(t.b);return .2126*n+.7152*r+.0722*i}function ez(e,t){const n=C0(e),r=C0(t),i=Math.max(n,r),a=Math.min(n,r);return(i+.05)/(a+.05)}function tz(){const e=[].slice.call(arguments);return e.unshift({}),te(...e)}function Fw(e,t){return e===t||e!==e&&t!==t?!0:j(e)?j(t)&&e.length===t.length?nz(e,t):!1:ne(e)&&ne(t)?kw(e,t):!1}function nz(e,t){for(let n=0,r=e.length;n<r;++n)if(!Fw(e[n],t[n]))return!1;return!0}function kw(e,t){for(const n in e)if(!Fw(e[n],t[n]))return!1;return!0}function m2(e){return t=>kw(e,t)}function rz(e,t,n,r,i,a){const u=this.context.dataflow,o=this.context.data[e],s=o.input,l=u.stamp();let f=o.changes,c,h;if(u._trigger===!1||!(s.value.length||t||r))return 0;if((!f||f.stamp<l)&&(o.changes=f=u.changeset(),f.stamp=l,u.runAfter(()=>{o.modified=!0,u.pulse(s,f).run()},!0,1)),n&&(c=n===!0?rn:j(n)||ff(n)?n:m2(n),f.remove(c)),t&&f.insert(t),r&&(c=m2(r),s.value.some(c)?f.remove(c):f.insert(r)),i)for(h in a)f.modify(i,h,a[h]);return 1}function iz(e){const t=e.touches,n=t[0].clientX-t[1].clientX,r=t[0].clientY-t[1].clientY;return Math.hypot(n,r)}function az(e){const t=e.touches;return Math.atan2(t[0].clientY-t[1].clientY,t[0].clientX-t[1].clientX)}const y2={};function uz(e,t){const n=y2[t]||(y2[t]=nn(t));return j(e)?e.map(n):n(e)}function Uf(e){return j(e)||ArrayBuffer.isView(e)?e:null}function Jg(e){return Uf(e)||(be(e)?e:null)}function oz(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return Uf(e).join(...n)}function sz(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return Jg(e).indexOf(...n)}function lz(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return Jg(e).lastIndexOf(...n)}function fz(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return Jg(e).slice(...n)}function cz(e,t,n){return ee(n)&&$("Function argument passed to replace."),!be(t)&&!Ed(t)&&$("Please pass a string or RegExp argument to replace."),String(e).replace(t,n)}function hz(e){return Uf(e).slice().reverse()}function dz(e){return Uf(e).slice().sort(ao)}function gz(e,t,n){return D1(e||0,t||0,n||0)}function pz(e,t){const n=Wn(e,(t||this).context);return n&&n.bandwidth?n.bandwidth():0}function mz(e,t){const n=Wn(e,(t||this).context);return n?n.copy():void 0}function yz(e,t){const n=Wn(e,(t||this).context);return n?n.domain():[]}function vz(e,t,n){const r=Wn(e,(n||this).context);return r?j(t)?(r.invertRange||r.invert)(t):(r.invert||r.invertExtent)(t):void 0}function xz(e,t){const n=Wn(e,(t||this).context);return n&&n.range?n.range():[]}function bz(e,t,n){const r=Wn(e,(n||this).context);return r?r(t):void 0}function Az(e,t,n,r,i){e=Wn(e,(i||this).context);const a=vE(t,n);let u=e.domain(),o=u[0],s=oe(u),l=Et;return s-o?l=uE(e,o,s):e=(e.interpolator?de("sequential")().interpolator(e.interpolator()):de("linear")().interpolate(e.interpolate()).range(e.range())).domain([o=0,s=1]),e.ticks&&(u=e.ticks(+r||15),o!==u[0]&&u.unshift(o),s!==oe(u)&&u.push(s)),u.forEach(f=>a.stop(l(f),e(f))),a}function Ez(e,t,n){const r=Wn(e,(n||this).context);return function(i){return r?r.path.context(i)(t):""}}function wz(e){let t=null;return function(n){return n?Pu(n,t=t||fa(e)):e}}const Mw=e=>e.data;function Sw(e,t){const n=ww.call(t,e);return n.root&&n.root.lookup||{}}function Cz(e,t,n){const r=Sw(e,this),i=r[t],a=r[n];return i&&a?i.path(a).map(Mw):void 0}function Dz(e,t){const n=Sw(e,this)[t];return n?n.ancestors().map(Mw):void 0}const $w=()=>typeof window<"u"&&window||null;function Fz(){const e=$w();return e?e.screen:{}}function kz(){const e=$w();return e?[e.innerWidth,e.innerHeight]:[void 0,void 0]}function Mz(){const e=this.context.dataflow,t=e.container&&e.container();return t?[t.clientWidth,t.clientHeight]:[void 0,void 0]}function Bw(e,t,n){if(!e)return[];const[r,i]=e,a=new Be().set(r[0],r[1],i[0],i[1]),u=n||this.context.dataflow.scenegraph().root;return p3(u,a,Sz(t))}function Sz(e){let t=null;if(e){const n=V(e.marktype),r=V(e.markname);t=i=>(!n.length||n.some(a=>i.marktype===a))&&(!r.length||r.some(a=>i.name===a))}return t}function $z(e,t,n){let r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:5;e=V(e);const i=e[e.length-1];return i===void 0||Math.hypot(i[0]-t,i[1]-n)>r?[...e,[t,n]]:e}function Bz(e){return V(e).reduce((t,n,r)=>{let[i,a]=n;return t+=r==0?`M ${i},${a} `:r===e.length-1?" Z":`L ${i},${a} `},"")}function _z(e,t,n){const{x:r,y:i,mark:a}=n,u=new Be().set(Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER,Number.MIN_SAFE_INTEGER,Number.MIN_SAFE_INTEGER);for(const[s,l]of t)s<u.x1&&(u.x1=s),s>u.x2&&(u.x2=s),l<u.y1&&(u.y1=l),l>u.y2&&(u.y2=l);return u.translate(r,i),Bw([[u.x1,u.y1],[u.x2,u.y2]],e,a).filter(s=>Rz(s.x,s.y,t))}function Rz(e,t,n){let r=0;for(let i=0,a=n.length-1;i<n.length;a=i++){const[u,o]=n[a],[s,l]=n[i];l>t!=o>t&&e<(u-s)*(t-l)/(o-l)+s&&r++}return r&1}const Hu={random(){return un()},cumulativeNormal:pf,cumulativeLogNormal:Yd,cumulativeUniform:Xd,densityNormal:Id,densityLogNormal:Wd,densityUniform:Vd,quantileNormal:mf,quantileLogNormal:Hd,quantileUniform:Kd,sampleNormal:gf,sampleLogNormal:jd,sampleUniform:Gd,isArray:j,isBoolean:pb,isDate:_r,isDefined(e){return e!==void 0},isNumber:zr,isObject:ne,isRegExp:Ed,isString:be,isTuple:ff,isValid(e){return e!=null&&e===e},toBoolean:Cd,toDate(e){return Dd(e)},toNumber:et,toString:Fd,indexof:sz,join:oz,lastindexof:lz,replace:cz,reverse:hz,sort:dz,slice:fz,flush:gb,lerp:yb,merge:tz,pad:bb,peek:oe,pluck:uz,span:uo,inrange:Yi,truncate:Ab,rgb:Bs,lab:Rs,hcl:Ts,hsl:sh,luminance:C0,contrast:ez,sequence:It,format:TO,utcFormat:OO,utcParse:LO,utcOffset:Ob,utcSequence:Nb,timeFormat:Cw,timeParse:zO,timeOffset:Tb,timeSequence:Lb,timeUnitSpecifier:wb,monthFormat:NO,monthAbbrevFormat:PO,dayFormat:IO,dayAbbrevFormat:UO,quarter:fb,utcquarter:cb,week:Db,utcweek:Mb,dayofyear:Cb,utcdayofyear:kb,warn:ZO,info:QO,debug:JO,extent(e){return zn(e)},inScope:KO,intersect:Bw,clampRange:hb,pinchDistance:iz,pinchAngle:az,screen:Fz,containerSize:Mz,windowSize:kz,bandspace:gz,setdata:_O,pathShape:wz,panLinear:ub,panLog:ob,panPow:sb,panSymlog:lb,zoomLinear:yd,zoomLog:vd,zoomPow:fl,zoomSymlog:xd,encode:RO,modify:rz,lassoAppend:$z,lassoPath:Bz,intersectLasso:_z},Tz=["view","item","group","xy","x","y"],Oz="event.vega.",_w="this.",ep={},Rw={forbidden:["_"],allowed:["datum","event","item"],fieldvar:"datum",globalvar:e=>`_[${G(Dw+e)}]`,functions:zz,constants:xw,visitors:ep},D0=QT(Rw);function zz(e){const t=bw(e);Tz.forEach(n=>t[n]=Oz+n);for(const n in Hu)t[n]=_w+n;return te(t,YO(e,Hu,ep)),t}function $e(e,t,n){return arguments.length===1?Hu[e]:(Hu[e]=t,n&&(ep[e]=n),D0&&(D0.functions[e]=_w+e),this)}$e("bandwidth",pz,xt);$e("copy",mz,xt);$e("domain",yz,xt);$e("range",xz,xt);$e("invert",vz,xt);$e("scale",bz,xt);$e("gradient",Az,xt);$e("geoArea",HO,xt);$e("geoBounds",GO,xt);$e("geoCentroid",VO,xt);$e("geoShape",Ez,xt);$e("geoScale",XO,xt);$e("indata",BO,WO);$e("data",ww,Kg);$e("treePath",Cz,Kg);$e("treeAncestors",Dz,Kg);$e("vlSelectionTest",wO,Xg);$e("vlSelectionIdTest",FO,Xg);$e("vlSelectionResolve",MO,Xg);$e("vlSelectionTuples",kO);function Nn(e,t){const n={};let r;try{e=be(e)?e:G(e)+"",r=KT(e)}catch{$("Expression parse error: "+e)}r.visit(a=>{if(a.type!==hw)return;const u=a.callee.name,o=Rw.visitors[u];o&&o(u,a.arguments,t,n)});const i=D0(r);return i.globals.forEach(a=>{const u=Dw+a;!Z(n,u)&&t.getSignal(a)&&(n[u]=t.signalRef(a))}),{$expr:te({code:i.code},t.options.ast?{ast:r}:null),$fields:i.fields,$params:n}}function Lz(e){const 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(r=>t.parseOperator(r)),n.forEach(r=>t.parseOperatorParameters(r)),(e.streams||[]).forEach(r=>t.parseStream(r)),(e.updates||[]).forEach(r=>t.parseUpdate(r)),t.resolve()}const Nz=jt(["rule"]),v2=jt(["group","image","rect"]);function Pz(e,t){let n="";return Nz[t]||(e.x2&&(e.x?(v2[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?(v2[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 tp(e){return(e+"").toLowerCase()}function Iz(e){return tp(e)==="operator"}function Uz(e){return tp(e)==="collect"}function Wa(e,t,n){n.endsWith(";")||(n="return("+n+");");const r=Function(...t.concat(n));return e&&e.functions?r.bind(e.functions):r}function qz(e,t,n,r){return`((u = ${e}) < (v = ${t}) || u == null) && v != null ? ${n}
|
|
10
|
+
: (u > v || v == null) && u != null ? ${r}
|
|
11
|
+
: ((v = v instanceof Date ? +v : v), (u = u instanceof Date ? +u : u)) !== u && v === v ? ${n}
|
|
12
|
+
: v !== v && u === u ? ${r} : `}var jz={operator:(e,t)=>Wa(e,["_"],t.code),parameter:(e,t)=>Wa(e,["datum","_"],t.code),event:(e,t)=>Wa(e,["event"],t.code),handler:(e,t)=>{const n=`var datum=event.item&&event.item.datum;return ${t.code};`;return Wa(e,["_","event"],n)},encode:(e,t)=>{const{marktype:n,channels:r}=t;let i="var o=item,datum=o.datum,m=0,$;";for(const a in r){const u="o["+G(a)+"]";i+=`$=${r[a].code};if(${u}!==$)${u}=$,m=1;`}return i+=Pz(r,n),i+="return m;",Wa(e,["item","_"],i)},codegen:{get(e){const t=`[${e.map(G).join("][")}]`,n=Function("_",`return _${t};`);return n.path=t,n},comparator(e,t){let n;const r=(a,u)=>{const o=t[u];let s,l;return a.path?(s=`a${a.path}`,l=`b${a.path}`):((n=n||{})["f"+u]=a,s=`this.f${u}(a)`,l=`this.f${u}(b)`),qz(s,l,-o,o)},i=Function("a","b","var u, v; return "+e.map(r).join("")+"0;");return n?i.bind(n):i}}};function Wz(e){const t=this;Iz(e.type)||!e.type?t.operator(e,e.update?t.operatorExpression(e.update):null):t.transform(e,e.type)}function Yz(e){const t=this;if(e.params){const n=t.get(e.id);n||$("Invalid operator id: "+e.id),t.dataflow.connect(n,n.parameters(t.parseParameters(e.params),e.react,e.initonly))}}function Hz(e,t){t=t||{};const n=this;for(const r in e){const i=e[r];t[r]=j(i)?i.map(a=>x2(a,n,t)):x2(i,n,t)}return t}function x2(e,t,n){if(!e||!ne(e))return e;for(let r=0,i=b2.length,a;r<i;++r)if(a=b2[r],Z(e,a.key))return a.parse(e,t,n);return e}var b2=[{key:"$ref",parse:Gz},{key:"$key",parse:Xz},{key:"$expr",parse:Vz},{key:"$field",parse:Kz},{key:"$encode",parse:Qz},{key:"$compare",parse:Zz},{key:"$context",parse:Jz},{key:"$subflow",parse:eL},{key:"$tupleid",parse:tL}];function Gz(e,t){return t.get(e.$ref)||$("Operator not defined: "+e.$ref)}function Vz(e,t,n){e.$params&&t.parseParameters(e.$params,n);const r="e:"+e.$expr.code;return t.fn[r]||(t.fn[r]=Tt(t.parameterExpression(e.$expr),e.$fields))}function Xz(e,t){const n="k:"+e.$key+"_"+!!e.$flat;return t.fn[n]||(t.fn[n]=wd(e.$key,e.$flat,t.expr.codegen))}function Kz(e,t){if(!e.$field)return null;const n="f:"+e.$field+"_"+e.$name;return t.fn[n]||(t.fn[n]=nn(e.$field,e.$name,t.expr.codegen))}function Zz(e,t){const n="c:"+e.$compare+"_"+e.$order,r=V(e.$compare).map(i=>i&&i.$tupleid?Y:i);return t.fn[n]||(t.fn[n]=bd(r,e.$order,t.expr.codegen))}function Qz(e,t){const n=e.$encode,r={};for(const i in n){const a=n[i];r[i]=Tt(t.encodeExpression(a.$expr),a.$fields),r[i].output=a.$output}return r}function Jz(e,t){return t}function eL(e,t){const n=e.$subflow;return function(r,i,a){const u=t.fork().parse(n),o=u.get(n.operators[0].id),s=u.signals.parent;return s&&s.set(a),o.detachSubflow=()=>t.detach(u),o}}function tL(){return Y}function nL(e){var t=this,n=e.filter!=null?t.eventExpression(e.filter):void 0,r=e.stream!=null?t.get(e.stream):void 0,i;e.source?r=t.events(e.source,e.type,n):e.merge&&(i=e.merge.map(a=>t.get(a)),r=i[0].merge.apply(i[0],i.slice(1))),e.between&&(i=e.between.map(a=>t.get(a)),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==null&&$("Invalid stream definition: "+JSON.stringify(e)),e.consume&&r.consume(!0),t.stream(e,r)}function rL(e){var t=this,n=ne(n=e.source)?n.$ref:n,r=t.get(n),i=null,a=e.update,u=void 0;r||$("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&&(u=t.parseParameters(a.$params)),a=t.handlerExpression(a.$expr)),t.update(e,r,i,a,u)}const iL={skip:!0};function aL(e){var t=this,n={};if(e.signals){var r=n.signals={};Object.keys(t.signals).forEach(a=>{const u=t.signals[a];e.signals(a,u)&&(r[a]=u.value)})}if(e.data){var i=n.data={};Object.keys(t.data).forEach(a=>{const u=t.data[a];e.data(a,u)&&(i[a]=u.input.value)})}return t.subcontext&&e.recurse!==!1&&(n.subcontext=t.subcontext.map(a=>a.getState(e))),n}function uL(e){var t=this,n=t.dataflow,r=e.data,i=e.signals;Object.keys(i||{}).forEach(a=>{n.update(t.signals[a],i[a],iL)}),Object.keys(r||{}).forEach(a=>{n.pulse(t.data[a].input,n.changeset().remove(rn).insert(r[a]))}),(e.subcontext||[]).forEach((a,u)=>{const o=t.subcontext[u];o&&o.setState(a)})}function Tw(e,t,n,r){return new Ow(e,t,n,r)}function Ow(e,t,n,r){this.dataflow=e,this.transforms=t,this.events=e.events.bind(e),this.expr=r||jz,this.signals={},this.scales={},this.nodes={},this.data={},this.fn={},n&&(this.functions=Object.create(n),this.functions.context=this)}function A2(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)}Ow.prototype=A2.prototype={fork(){const e=new A2(this);return(this.subcontext||(this.subcontext=[])).push(e),e},detach(e){this.subcontext=this.subcontext.filter(n=>n!==e);const t=Object.keys(e.nodes);for(const n of t)e.nodes[n]._targets=null;for(const 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){const n=this,r=n.dataflow,i=e.value;if(n.set(e.id,t),Uz(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 a=n.get(e.parent.$ref);a?(r.connect(a,[t]),t.targets().add(a)):(n.unresolved=n.unresolved||[]).push(()=>{a=n.get(e.parent.$ref),r.connect(a,[t]),t.targets().add(a)})}if(e.signal&&(n.signals[e.signal]=t),e.scale&&(n.scales[e.scale]=t),e.data)for(const a in e.data){const u=n.data[a]||(n.data[a]={});e.data[a].forEach(o=>u[o]=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[tp(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:Lz,parseOperator:Wz,parseOperatorParameters:Yz,parseParameters:Hz,parseStream:nL,parseUpdate:rL,getState:aL,setState:uL};var pa=0,pu=0,Ya=0,zw=1e3,_l,mu,Rl=0,vi=0,qf=0,Gu=typeof performance=="object"&&performance.now?performance:Date,Lw=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function np(){return vi||(Lw(oL),vi=Gu.now()+qf)}function oL(){vi=0}function F0(){this._call=this._time=this._next=null}F0.prototype={constructor:F0,restart:function(e,t,n){if(typeof e!="function")throw new TypeError("callback is not a function");n=(n==null?np():+n)+(t==null?0:+t),!this._next&&mu!==this&&(mu?mu._next=this:_l=this,mu=this),this._call=e,this._time=n,k0()},stop:function(){this._call&&(this._call=null,this._time=1/0,k0())}};function sL(){np(),++pa;for(var e=_l,t;e;)(t=vi-e._time)>=0&&e._call.call(void 0,t),e=e._next;--pa}function E2(){vi=(Rl=Gu.now())+qf,pa=pu=0;try{sL()}finally{pa=0,fL(),vi=0}}function lL(){var e=Gu.now(),t=e-Rl;t>zw&&(qf-=t,Rl=e)}function fL(){for(var e,t=_l,n,r=1/0;t;)t._call?(r>t._time&&(r=t._time),e=t,t=t._next):(n=t._next,t._next=null,t=e?e._next=n:_l=n);mu=e,k0(r)}function k0(e){if(!pa){pu&&(pu=clearTimeout(pu));var t=e-vi;t>24?(e<1/0&&(pu=setTimeout(E2,e-Gu.now()-qf)),Ya&&(Ya=clearInterval(Ya))):(Ya||(Rl=Gu.now(),Ya=setInterval(lL,zw)),pa=1,Lw(E2))}}function cL(e,t,n){var r=new F0,i=t;return t==null?(r.restart(e,t,n),r):(r._restart=r.restart,r.restart=function(a,u,o){u=+u,o=o==null?np():+o,r._restart(function s(l){l+=i,r._restart(s,i+=u,o),a(l)},u,o)},r.restart(e,t,n),r)}function hL(e){const t=e.container();t&&(t.setAttribute("role","graphics-document"),t.setAttribute("aria-roleDescription","visualization"),Nw(t,e.description()))}function Nw(e,t){e&&(t==null?e.removeAttribute("aria-label"):e.setAttribute("aria-label",t))}function dL(e){e.add(null,t=>(e._background=t.bg,e._resize=1,t.bg),{bg:e._signals.background})}const eh="default";function gL(e){const t=e._signals.cursor||(e._signals.cursor=e.add({user:eh,item:null}));e.on(e.events("view","pointermove"),t,(n,r)=>{const i=t.value,a=i?be(i)?i:i.user:eh,u=r.item&&r.item.cursor||null;return i&&a===i.user&&u==i.item?i:{user:a,item:u}}),e.add(null,function(n){let r=n.cursor,i=this.value;return be(r)||(i=r.item,r=r.user),M0(e,r&&r!==eh?r:i||r),i},{cursor:t})}function M0(e,t){const n=e.globalCursor()?typeof document<"u"&&document.body:e.container();if(n)return t==null?n.style.removeProperty("cursor"):n.style.cursor=t}function Tl(e,t){var n=e._runtime.data;return Z(n,t)||$("Unrecognized data set: "+t),n[t]}function pL(e,t){return arguments.length<2?Tl(this,e).values.value:jf.call(this,e,Di().remove(rn).insert(t))}function jf(e,t){iA(t)||$("Second argument to changes must be a changeset.");const n=Tl(this,e);return n.modified=!0,this.pulse(n.input,t)}function mL(e,t){return jf.call(this,e,Di().insert(t))}function yL(e,t){return jf.call(this,e,Di().remove(t))}function Pw(e){var t=e.padding();return Math.max(0,e._viewWidth+t.left+t.right)}function Iw(e){var t=e.padding();return Math.max(0,e._viewHeight+t.top+t.bottom)}function Wf(e){var t=e.padding(),n=e._origin;return[t.left+n[0],t.top+n[1]]}function vL(e){var t=Wf(e),n=Pw(e),r=Iw(e);e._renderer.background(e.background()),e._renderer.resize(n,r,t),e._handler.origin(t),e._resizeListeners.forEach(i=>{try{i(n,r)}catch(a){e.error(a)}})}function xL(e,t,n){var r=e._renderer,i=r&&r.canvas(),a,u,o;return i&&(o=Wf(e),u=t.changedTouches?t.changedTouches[0]:t,a=Rf(u,i),a[0]-=o[0],a[1]-=o[1]),t.dataflow=e,t.item=n,t.vega=bL(e,n,a),t}function bL(e,t,n){const r=t?t.mark.marktype==="group"?t:t.mark.group:null;function i(u){var o=r,s;if(u){for(s=t;s;s=s.mark.group)if(s.mark.name===u){o=s;break}}return o&&o.mark&&o.mark.interactive?o:{}}function a(u){if(!u)return n;be(u)&&(u=i(u));const o=n.slice();for(;u;)o[0]-=u.x||0,o[1]-=u.y||0,u=u.mark&&u.mark.group;return o}return{view:ot(e),item:ot(t||{}),group:i,xy:a,x:u=>a(u)[0],y:u=>a(u)[1]}}const w2="view",AL="timer",EL="window",wL={trap:!1};function CL(e){const t=te({defaults:{}},e),n=(r,i)=>{i.forEach(a=>{j(r[a])&&(r[a]=jt(r[a]))})};return n(t.defaults,["prevent","allow"]),n(t,["view","window","selector"]),t}function Uw(e,t,n,r){e._eventListeners.push({type:n,sources:V(t),handler:r})}function DL(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 ns(e,t,n){const r=e._eventConfig&&e._eventConfig[t];return r===!1||ne(r)&&!r[n]?(e.warn(`Blocked ${t} ${n} event listener.`),!1):!0}function FL(e,t,n){var r=this,i=new df(n),a=function(l,f){r.runAsync(null,()=>{e===w2&&DL(r,t)&&l.preventDefault(),i.receive(xL(r,l,f))})},u;if(e===AL)ns(r,"timer",t)&&r.timer(a,t);else if(e===w2)ns(r,"view",t)&&r.addEventListener(t,a,wL);else if(e===EL?ns(r,"window",t)&&typeof window<"u"&&(u=[window]):typeof document<"u"&&ns(r,"selector",t)&&(u=Array.from(document.querySelectorAll(e))),!u)r.warn("Can not resolve event source: "+e);else{for(var o=0,s=u.length;o<s;++o)u[o].addEventListener(t,a);Uw(r,u,t,a)}return i}function C2(e){return e.item}function D2(e){return e.item.mark.source}function F2(e){return function(t,n){return n.vega.view().changeset().encode(n.item,e)}}function kL(e,t){return e=[e||"hover"],t=[t||"update",e[0]],this.on(this.events("view","pointerover",C2),D2,F2(e)),this.on(this.events("view","pointerout",C2),D2,F2(t)),this}function ML(){var e=this._tooltip,t=this._timers,n=this._handler.handlers(),r=this._eventListeners,i,a,u,o,s;for(i=t.length;--i>=0;)t[i].stop();for(i=r.length;--i>=0;)for(u=r[i],a=u.sources.length;--a>=0;)u.sources[a].removeEventListener(u.type,u.handler);for(e&&e.call(this,this._handler,null,null,null),i=n.length;--i>=0;)s=n[i].type,o=n[i].handler,this._handler.off(s,o);return this}function qt(e,t,n){const r=document.createElement(e);for(const i in t)r.setAttribute(i,t[i]);return n!=null&&(r.textContent=n),r}const SL="vega-bind",$L="vega-bind-name",BL="vega-bind-radio";function _L(e,t,n){if(!t)return;const r=n.param;let i=n.state;return i||(i=n.state={elements:null,active:!1,set:null,update:u=>{u!=e.signal(r.signal)&&e.runAsync(null,()=>{i.source=!0,e.signal(r.signal,u)})}},r.debounce&&(i.update=Ad(r.debounce,i.update))),(r.input==null&&r.element?RL:OL)(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 RL(e,t,n,r){const i=n.event||"input",a=()=>e.update(t.value);r.signal(n.signal,t.value),t.addEventListener(i,a),Uw(r,t,i,a),e.set=u=>{t.value=u,t.dispatchEvent(TL(i))}}function TL(e){return typeof Event<"u"?new Event(e):{type:e}}function OL(e,t,n,r){const i=r.signal(n.signal),a=qt("div",{class:SL}),u=n.input==="radio"?a:a.appendChild(qt("label"));u.appendChild(qt("span",{class:$L},n.name||n.signal)),t.appendChild(a);let o=zL;switch(n.input){case"checkbox":o=LL;break;case"select":o=NL;break;case"radio":o=PL;break;case"range":o=IL;break}o(e,u,n,i)}function zL(e,t,n,r){const i=qt("input");for(const a in n)a!=="signal"&&a!=="element"&&i.setAttribute(a==="input"?"type":a,n[a]);i.setAttribute("name",n.signal),i.value=r,t.appendChild(i),i.addEventListener("input",()=>e.update(i.value)),e.elements=[i],e.set=a=>i.value=a}function LL(e,t,n,r){const i={type:"checkbox",name:n.signal};r&&(i.checked=!0);const a=qt("input",i);t.appendChild(a),a.addEventListener("change",()=>e.update(a.checked)),e.elements=[a],e.set=u=>a.checked=!!u||null}function NL(e,t,n,r){const i=qt("select",{name:n.signal}),a=n.labels||[];n.options.forEach((u,o)=>{const s={value:u};Ol(u,r)&&(s.selected=!0),i.appendChild(qt("option",s,(a[o]||u)+""))}),t.appendChild(i),i.addEventListener("change",()=>{e.update(n.options[i.selectedIndex])}),e.elements=[i],e.set=u=>{for(let o=0,s=n.options.length;o<s;++o)if(Ol(n.options[o],u)){i.selectedIndex=o;return}}}function PL(e,t,n,r){const i=qt("span",{class:BL}),a=n.labels||[];t.appendChild(i),e.elements=n.options.map((u,o)=>{const s={type:"radio",name:n.signal,value:u};Ol(u,r)&&(s.checked=!0);const l=qt("input",s);l.addEventListener("change",()=>e.update(u));const f=qt("label",{},(a[o]||u)+"");return f.prepend(l),i.appendChild(f),l}),e.set=u=>{const o=e.elements,s=o.length;for(let l=0;l<s;++l)Ol(o[l].value,u)&&(o[l].checked=!0)}}function IL(e,t,n,r){r=r!==void 0?r:(+n.max+ +n.min)/2;const i=n.max!=null?n.max:Math.max(100,+r)||100,a=n.min||Math.min(0,i,+r)||0,u=n.step||fi(a,i,100),o=qt("input",{type:"range",name:n.signal,min:a,max:i,step:u});o.value=r;const s=qt("span",{},+r);t.appendChild(o),t.appendChild(s);const l=()=>{s.textContent=o.value,e.update(+o.value)};o.addEventListener("input",l),o.addEventListener("change",l),e.elements=[o],e.set=f=>{o.value=f,s.textContent=f}}function Ol(e,t){return e===t||e+""==t+""}function qw(e,t,n,r,i,a){return t=t||new r(e.loader()),t.initialize(n,Pw(e),Iw(e),Wf(e),i,a).background(e.background())}function rp(e,t){return t?function(){try{t.apply(this,arguments)}catch(n){e.error(n)}}:null}function UL(e,t,n,r){const i=new r(e.loader(),rp(e,e.tooltip())).scene(e.scenegraph().root).initialize(n,Wf(e),e);return t&&t.handlers().forEach(a=>{i.on(a.type,a.handler)}),i}function qL(e,t){const n=this,r=n._renderType,i=n._eventConfig.bind,a=Tf(r);e=n._el=e?th(n,e,!0):null,hL(n),a||n.error("Unrecognized renderer type: "+r);const u=a.handler||wo,o=e?a.renderer:a.headless;return n._renderer=o?qw(n,n._renderer,e,o):null,n._handler=UL(n,n._handler,e,u),n._redraw=!0,e&&i!=="none"&&(t=t?n._elBind=th(n,t,!0):e.appendChild(qt("form",{class:"vega-bindings"})),n._bind.forEach(s=>{s.param.element&&i!=="container"&&(s.element=th(n,s.param.element,!!s.param.input))}),n._bind.forEach(s=>{_L(n,s.element||t,s)})),n}function th(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(r){t=null,e.error(r)}return t}const Ha=e=>+e||0,jL=e=>({top:e,bottom:e,left:e,right:e});function k2(e){return ne(e)?{top:Ha(e.top),bottom:Ha(e.bottom),left:Ha(e.left),right:Ha(e.right)}:jL(Ha(e))}async function ip(e,t,n,r){const i=Tf(t),a=i&&i.headless;return a||$("Unrecognized renderer type: "+t),await e.runAsync(),qw(e,null,null,a,n,r).renderAsync(e._scenegraph.root)}async function WL(e,t){e!==kr.Canvas&&e!==kr.SVG&&e!==kr.PNG&&$("Unrecognized image type: "+e);const n=await ip(this,e,t);return e===kr.SVG?YL(n.svg(),"image/svg+xml"):n.canvas().toDataURL("image/png")}function YL(e,t){const n=new Blob([e],{type:t});return window.URL.createObjectURL(n)}async function HL(e,t){return(await ip(this,kr.Canvas,e,t)).canvas()}async function GL(e){return(await ip(this,kr.SVG,e)).svg()}function VL(e,t,n){return Tw(e,ua,Hu,n).parse(t)}function XL(e){var t=this._runtime.scales;return Z(t,e)||$("Unrecognized scale or projection: "+e),t[e].value}var jw="width",Ww="height",ap="padding",M2={skip:!0};function Yw(e,t){var n=e.autosize(),r=e.padding();return t-(n&&n.contains===ap?r.left+r.right:0)}function Hw(e,t){var n=e.autosize(),r=e.padding();return t-(n&&n.contains===ap?r.top+r.bottom:0)}function KL(e){var t=e._signals,n=t[jw],r=t[Ww],i=t[ap];function a(){e._autosize=e._resize=1}e._resizeWidth=e.add(null,o=>{e._width=o.size,e._viewWidth=Yw(e,o.size),a()},{size:n}),e._resizeHeight=e.add(null,o=>{e._height=o.size,e._viewHeight=Hw(e,o.size),a()},{size:r});const u=e.add(null,a,{pad:i});e._resizeWidth.rank=n.rank+1,e._resizeHeight.rank=r.rank+1,u.rank=i.rank+1}function ZL(e,t,n,r,i,a){this.runAfter(u=>{let o=0;u._autosize=0,u.width()!==n&&(o=1,u.signal(jw,n,M2),u._resizeWidth.skip(!0)),u.height()!==r&&(o=1,u.signal(Ww,r,M2),u._resizeHeight.skip(!0)),u._viewWidth!==e&&(u._resize=1,u._viewWidth=e),u._viewHeight!==t&&(u._resize=1,u._viewHeight=t),(u._origin[0]!==i[0]||u._origin[1]!==i[1])&&(u._resize=1,u._origin=i),o&&u.run("enter"),a&&u.runAfter(s=>s.resize())},!1,1)}function QL(e){return this._runtime.getState(e||{data:JL,signals:eN,recurse:!0})}function JL(e,t){return t.modified&&j(t.input.value)&&!e.startsWith("_:vega:_")}function eN(e,t){return!(e==="parent"||t instanceof ua.proxy)}function tN(e){return this.runAsync(null,t=>{t._trigger=!1,t._runtime.setState(e)},t=>{t._trigger=!0}),this}function nN(e,t){function n(r){e({timestamp:Date.now(),elapsed:r})}this._timers.push(cL(n,t))}function rN(e,t,n,r){const i=e.element();i&&i.setAttribute("title",iN(r))}function iN(e){return e==null?"":j(e)?Gw(e):ne(e)&&!_r(e)?aN(e):e+""}function aN(e){return Object.keys(e).map(t=>{const n=e[t];return t+": "+(j(n)?Gw(n):Vw(n))}).join(`
|
|
13
|
+
`)}function Gw(e){return"["+e.map(Vw).join(", ")+"]"}function Vw(e){return j(e)?"[…]":ne(e)&&!_r(e)?"{…}":e}function uN(){if(this.renderer()==="canvas"&&this._renderer._canvas){let e=null;const t=()=>{e!=null&&e();const 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 Xw(e,t){const n=this;if(t=t||{},Zi.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){const a=te({},e.locale,t.locale);n.locale(Vb(a.number,a.time))}n._el=null,n._elBind=null,n._renderType=t.renderer||kr.Canvas,n._scenegraph=new qE;const r=n._scenegraph.root;n._renderer=null,n._tooltip=t.tooltip||rN,n._redraw=!0,n._handler=new wo().scene(r),n._globalCursor=!1,n._preventDefault=!1,n._timers=[],n._eventListeners=[],n._resizeListeners=[],n._eventConfig=CL(e.eventConfig),n.globalCursor(n._eventConfig.globalCursor);const i=VL(n,e,t.expr);n._runtime=i,n._signals=i.signals,n._bind=(e.bindings||[]).map(a=>({state:null,param:te({},a)})),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=Yw(n,n._width),n._viewHeight=Hw(n,n._height),n._origin=[0,0],n._resize=0,n._autosize=1,KL(n),dL(n),gL(n),n.description(e.description),t.hover&&n.hover(),t.container&&n.initialize(t.container,t.bind),t.watchPixelRatio&&n._watchPixelRatio()}function rs(e,t){return Z(e._signals,t)?e._signals[t]:$("Unrecognized signal name: "+G(t))}function Kw(e,t){const n=(e._targets||[]).filter(r=>r._update&&r._update.handler===t);return n.length?n[0]:null}function S2(e,t,n,r){let i=Kw(n,r);return i||(i=rp(e,()=>r(t,n.value)),i.handler=r,e.on(n,null,i)),e}function $2(e,t,n){const r=Kw(t,n);return r&&t._targets.remove(r),e}L(Xw,Zi,{async evaluate(e,t,n){if(await Zi.prototype.evaluate.call(this,e,t),this._redraw||this._resize)try{this._renderer&&(this._resize&&(this._resize=0,vL(this)),await this._renderer.renderAsync(this._scenegraph.root)),this._redraw=!1}catch(r){this.error(r)}return n&&fs(this,n),this},dirty(e){this._redraw=!0,this._renderer&&this._renderer.dirty(e)},description(e){if(arguments.length){const t=e!=null?e+"":null;return t!==this._desc&&Nw(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){const r=rs(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",k2(e)):k2(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?(Tf(e)||$("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&&(Zi.prototype.loader.call(this,e),this._resetRenderer()),this):this._loader},resize(){return this._autosize=1,this.touch(rs(this,"autosize"))},_resetRenderer(){this._renderer&&(this._renderer=null,this.initialize(this._el,this._elBind))},_resizeView:ZL,addEventListener(e,t,n){let r=t;return n&&n.trap===!1||(r=rp(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){const 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 S2(this,e,rs(this,e),t)},removeSignalListener(e,t){return $2(this,rs(this,e),t)},addDataListener(e,t){return S2(this,e,Tl(this,e).values,t)},removeDataListener(e,t){return $2(this,Tl(this,e).values,t)},globalCursor(e){if(arguments.length){if(this._globalCursor!==!!e){const t=M0(this,null);this._globalCursor=!!e,t&&M0(this,t)}return this}else return this._globalCursor},preventDefault(e){return arguments.length?(this._preventDefault=e,this):this._preventDefault},timer:nN,events:FL,finalize:ML,hover:kL,data:pL,change:jf,insert:mL,remove:yL,scale:XL,initialize:qL,toImageURL:WL,toCanvas:HL,toSVG:GL,getState:QL,setState:tN,_watchPixelRatio:uN});const oN="view",zl="[",Ll="]",Zw="{",Qw="}",sN=":",Jw=",",lN="@",fN=">",cN=/[[\]{}]/,hN={"*":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};let eC,tC;function nC(e,t,n){return eC=t||oN,tC=n||hN,rC(e.trim()).map(S0)}function dN(e){return tC[e]}function Mu(e,t,n,r,i){const a=e.length;let u=0,o;for(;t<a;++t){if(o=e[t],!u&&o===n)return t;i&&i.indexOf(o)>=0?--u:r&&r.indexOf(o)>=0&&++u}return t}function rC(e){const t=[],n=e.length;let r=0,i=0;for(;i<n;)i=Mu(e,i,Jw,zl+Zw,Ll+Qw),t.push(e.substring(r,i).trim()),r=++i;if(t.length===0)throw"Empty event selector: "+e;return t}function S0(e){return e[0]==="["?gN(e):pN(e)}function gN(e){const t=e.length;let n=1,r;if(n=Mu(e,n,Ll,zl,Ll),n===t)throw"Empty between selector: "+e;if(r=rC(e.substring(1,n)),r.length!==2)throw"Between selector must have two elements: "+e;if(e=e.slice(n+1).trim(),e[0]!==fN)throw"Expected '>' after between selector: "+e;r=r.map(S0);const i=S0(e.slice(1).trim());return i.between?{between:r,stream:i}:(i.between=r,i)}function pN(e){const t={source:eC},n=[];let r=[0,0],i=0,a=0,u=e.length,o=0,s,l;if(e[u-1]===Qw){if(o=e.lastIndexOf(Zw),o>=0){try{r=mN(e.substring(o+1,u-1))}catch{throw"Invalid throttle specification: "+e}e=e.slice(0,o).trim(),u=e.length}else throw"Unmatched right brace: "+e;o=0}if(!u)throw e;if(e[0]===lN&&(i=++o),s=Mu(e,o,sN),s<u&&(n.push(e.substring(a,s).trim()),a=o=++s),o=Mu(e,o,zl),o===u)n.push(e.substring(a,u).trim());else if(n.push(e.substring(a,o).trim()),l=[],a=++o,a===u)throw"Unmatched left bracket: "+e;for(;o<u;){if(o=Mu(e,o,Ll),o===u)throw"Unmatched left bracket: "+e;if(l.push(e.substring(a,o).trim()),o<u-1&&e[++o]!==zl)throw"Expected left bracket: "+e;a=++o}if(!(u=n.length)||cN.test(n[u-1]))throw"Invalid event selector: "+e;return u>1?(t.type=n[1],i?t.markname=n[0].slice(1):dN(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 mN(e){const t=e.split(Jw);if(!e.length||t.length>2)throw e;return t.map(n=>{const r=+n;if(r!==r)throw e;return r})}function yN(e){return ne(e)?e:{type:e||"pad"}}const Ga=e=>+e||0,vN=e=>({top:e,bottom:e,left:e,right:e});function xN(e){return ne(e)?e.signal?e:{top:Ga(e.top),bottom:Ga(e.bottom),left:Ga(e.left),right:Ga(e.right)}:vN(Ga(e))}const Pe=e=>ne(e)&&!j(e)?te({},e):{value:e};function B2(e,t,n,r){return n!=null?(ne(n)&&!j(n)||j(n)&&n.length&&ne(n[0])?e.update[t]=n:e[r||"enter"][t]={value:n},1):0}function Ge(e,t,n){for(const r in t)B2(e,r,t[r]);for(const r in n)B2(e,r,n[r],"update")}function Ma(e,t,n){for(const r in t)n&&Z(n,r)||(e[r]=te(e[r]||{},t[r]));return e}function qi(e,t){return t&&(t.enter&&t.enter[e]||t.update&&t.update[e])}const up="mark",op="frame",sp="scope",bN="axis",AN="axis-domain",EN="axis-grid",wN="axis-label",CN="axis-tick",DN="axis-title",FN="legend",kN="legend-band",MN="legend-entry",SN="legend-gradient",iC="legend-label",$N="legend-symbol",BN="legend-title",_N="title",RN="title-text",TN="title-subtitle";function ON(e,t,n,r,i){const a={},u={};let o,s,l,f;s="lineBreak",t==="text"&&i[s]!=null&&!qi(s,e)&&nh(a,s,i[s]),(n=="legend"||String(n).startsWith("axis"))&&(n=null),f=n===op?i.group:n===up?te({},i.mark,i[t]):null;for(s in f)l=qi(s,e)||(s==="fill"||s==="stroke")&&(qi("fill",e)||qi("stroke",e)),l||nh(a,s,f[s]);V(r).forEach(c=>{const h=i.style&&i.style[c];for(const d in h)qi(d,e)||nh(a,d,h[d])}),e=te({},e);for(s in a)f=a[s],f.signal?(o=o||{})[s]=f:u[s]=f;return e.enter=te(u,e.enter),o&&(e.update=te(o,e.update)),e}function nh(e,t,n){e[t]=n&&n.signal?{signal:n.signal}:{value:n}}const aC=e=>be(e)?G(e):e.signal?`(${e.signal})`:uC(e);function Yf(e){if(e.gradient!=null)return LN(e);let t=e.signal?`(${e.signal})`:e.color?zN(e.color):e.field!=null?uC(e.field):e.value!==void 0?G(e.value):void 0;return e.scale!=null&&(t=NN(e,t)),t===void 0&&(t=null),e.exponent!=null&&(t=`pow(${t},${Cs(e.exponent)})`),e.mult!=null&&(t+=`*${Cs(e.mult)}`),e.offset!=null&&(t+=`+${Cs(e.offset)}`),e.round&&(t=`round(${t})`),t}const is=(e,t,n,r)=>`(${e}(${[t,n,r].map(Yf).join(",")})+'')`;function zN(e){return e.c?is("hcl",e.h,e.c,e.l):e.h||e.s?is("hsl",e.h,e.s,e.l):e.l||e.a?is("lab",e.l,e.a,e.b):e.r||e.g||e.b?is("rgb",e.r,e.g,e.b):null}function LN(e){const t=[e.start,e.stop,e.count].map(n=>n==null?null:G(n));for(;t.length&&oe(t)==null;)t.pop();return t.unshift(aC(e.gradient)),`gradient(${t.join(",")})`}function Cs(e){return ne(e)?"("+Yf(e)+")":e}function uC(e){return oC(ne(e)?e:{datum:e})}function oC(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):$("Invalid field reference: "+G(e));return e.signal||(r=be(r)?rf(r).map(G).join("]["):oC(r)),t+"["+r+"]"}function NN(e,t){const n=aC(e.scale);return e.range!=null?t=`lerp(_range(${n}), ${+e.range})`:(t!==void 0&&(t=`_scale(${n}, ${t})`),e.band&&(t=(t?t+"+":"")+`_bandwidth(${n})`+(+e.band==1?"":"*"+Cs(e.band)),e.extra&&(t=`(datum.extra ? _scale(${n}, datum.extra.value) : ${t})`)),t==null&&(t="0")),t}function PN(e){let t="";return e.forEach(n=>{const r=Yf(n);t+=n.test?`(${n.test})?${r}:`:r}),oe(t)===":"&&(t+="null"),t}function sC(e,t,n,r,i,a){const u={};a=a||{},a.encoders={$encode:u},e=ON(e,t,n,r,i.config);for(const o in e)u[o]=IN(e[o],t,a,i);return a}function IN(e,t,n,r){const i={},a={};for(const u in e)e[u]!=null&&(i[u]=qN(UN(e[u]),r,n,a));return{$expr:{marktype:t,channels:i},$fields:Object.keys(a),$output:Object.keys(e)}}function UN(e){return j(e)?PN(e):Yf(e)}function qN(e,t,n,r){const i=Nn(e,t);return i.$fields.forEach(a=>r[a]=1),te(n,i.$params),i.$expr}const jN="outer",WN=["value","update","init","react","bind"];function _2(e,t){$(e+' for "outer" push: '+G(t))}function lC(e,t){const n=e.name;if(e.push===jN)t.signals[n]||_2("No prior signal definition",n),WN.forEach(r=>{e[r]!==void 0&&_2("Invalid property ",r)});else{const r=t.addSignal(n,e.value);e.react===!1&&(r.react=!1),e.bind&&t.addBinding(n,e.bind)}}function $0(e,t,n,r){this.id=-1,this.type=e,this.value=t,this.params=n,r&&(this.parent=r)}function Hf(e,t,n,r){return new $0(e,t,n,r)}function Nl(e,t){return Hf("operator",e,t)}function W(e){const t={$ref:e.id};return e.id<0&&(e.refs=e.refs||[]).push(t),t}function Vu(e,t){return t?{$field:e,$name:t}:{$field:e}}const B0=Vu("key");function R2(e,t){return{$compare:e,$order:t}}function YN(e,t){const n={$key:e};return t&&(n.$flat=!0),n}const HN="ascending",GN="descending";function VN(e){return ne(e)?(e.order===GN?"-":"+")+Gf(e.op,e.field):""}function Gf(e,t){return(e&&e.signal?"$"+e.signal:e||"")+(e&&t?"_":"")+(t&&t.signal?"$"+t.signal:t||"")}const lp="scope",_0="view";function Oe(e){return e&&e.signal}function XN(e){return e&&e.expr}function Ds(e){if(Oe(e))return!0;if(ne(e)){for(const t in e)if(Ds(e[t]))return!0}return!1}function hn(e,t){return e??t}function li(e){return e&&e.signal||e}const T2="timer";function Xu(e,t){return(e.merge?ZN:e.stream?QN:e.type?JN:$("Invalid stream specification: "+G(e)))(e,t)}function KN(e){return e===lp?_0:e||_0}function ZN(e,t){const n=e.merge.map(i=>Xu(i,t)),r=fp({merge:n},e,t);return t.addStream(r).id}function QN(e,t){const n=Xu(e.stream,t),r=fp({stream:n},e,t);return t.addStream(r).id}function JN(e,t){let n;e.type===T2?(n=t.event(T2,e.throttle),e={between:e.between,filter:e.filter}):n=t.event(KN(e.source),e.type);const r=fp({stream:n},e,t);return Object.keys(r).length===1?n:t.addStream(r).id}function fp(e,t,n){let r=t.between;return r&&(r.length!==2&&$('Stream "between" parameter must have 2 entries: '+G(t)),e.between=[Xu(r[0],n),Xu(r[1],n)]),r=t.filter?[].concat(t.filter):[],(t.marktype||t.markname||t.markrole)&&r.push(eP(t.marktype,t.markname,t.markrole)),t.source===lp&&r.push("inScope(event.item)"),r.length&&(e.filter=Nn("("+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 eP(e,t,n){const r="event.item";return r+(e&&e!=="*"?"&&"+r+".mark.marktype==='"+e+"'":"")+(n?"&&"+r+".mark.role==='"+n+"'":"")+(t?"&&"+r+".mark.name==='"+t+"'":"")}const tP={code:"_.$value",ast:{type:"Identifier",value:"value"}};function nP(e,t,n){const r=e.encode,i={target:n};let a=e.events,u=e.update,o=[];a||$("Signal update missing events specification."),be(a)&&(a=nC(a,t.isSubscope()?lp:_0)),a=V(a).filter(s=>s.signal||s.scale?(o.push(s),0):1),o.length>1&&(o=[iP(o)]),a.length&&o.push(a.length>1?{merge:a}:a[0]),r!=null&&(u&&$("Signal encode and update are mutually exclusive."),u="encode(item(),"+G(r)+")"),i.update=be(u)?Nn(u,t):u.expr!=null?Nn(u.expr,t):u.value!=null?u.value:u.signal!=null?{$expr:tP,$params:{$value:t.signalRef(u.signal)}}:$("Invalid signal update specification."),e.force&&(i.options={force:!0}),o.forEach(s=>t.addUpdate(te(rP(s,t),i)))}function rP(e,t){return{source:e.signal?t.signalRef(e.signal):e.scale?t.scaleRef(e.scale):Xu(e,t)}}function iP(e){return{signal:"["+e.map(t=>t.scale?'scale("'+t.scale+'")':t.signal)+"]"}}function aP(e,t){const n=t.getSignal(e.name);let r=e.update;e.init&&(r?$("Signals can not include both init and update expressions."):(r=e.init,n.initonly=!0)),r&&(r=Nn(r,t),n.update=r.$expr,n.params=r.$params),e.on&&e.on.forEach(i=>nP(i,t,n.id))}const ve=e=>(t,n,r)=>Hf(e,n,t||void 0,r),fC=ve("aggregate"),uP=ve("axisticks"),cC=ve("bound"),En=ve("collect"),O2=ve("compare"),oP=ve("datajoin"),hC=ve("encode"),sP=ve("expression"),lP=ve("facet"),fP=ve("field"),cP=ve("key"),hP=ve("legendentries"),dP=ve("load"),gP=ve("mark"),pP=ve("multiextent"),mP=ve("multivalues"),yP=ve("overlap"),vP=ve("params"),dC=ve("prefacet"),xP=ve("projection"),bP=ve("proxy"),AP=ve("relay"),gC=ve("render"),EP=ve("scale"),Mi=ve("sieve"),wP=ve("sortitems"),pC=ve("viewlayout"),CP=ve("values");let DP=0;const mC={min:"min",max:"max",count:"sum"};function FP(e,t){const n=e.type||"linear";eE(n)||$("Unrecognized scale type: "+G(n)),t.addScale(e.name,{type:n,domain:void 0})}function kP(e,t){const n=t.getScale(e.name).params;let r;n.domain=yC(e.domain,e,t),e.range!=null&&(n.range=xC(e,t,n)),e.interpolate!=null&&LP(e.interpolate,n),e.nice!=null&&(n.nice=zP(e.nice,t)),e.bins!=null&&(n.bins=OP(e.bins,t));for(r in e)Z(n,r)||r==="name"||(n[r]=Qt(e[r],t))}function Qt(e,t){return ne(e)?e.signal?t.signalRef(e.signal):$("Unsupported object: "+G(e)):e}function Fs(e,t){return e.signal?t.signalRef(e.signal):e.map(n=>Qt(n,t))}function Vf(e){$("Can not find data set: "+G(e))}function yC(e,t,n){if(!e){(t.domainMin!=null||t.domainMax!=null)&&$("No scale domain defined for domainMin/domainMax to override.");return}return e.signal?n.signalRef(e.signal):(j(e)?MP:e.fields?$P:SP)(e,t,n)}function MP(e,t,n){return e.map(r=>Qt(r,n))}function SP(e,t,n){const r=n.getData(e.data);return r||Vf(e.data),la(t.type)?r.valuesRef(n,e.field,vC(e.sort,!1)):rE(t.type)?r.domainRef(n,e.field):r.extentRef(n,e.field)}function $P(e,t,n){const r=e.data,i=e.fields.reduce((a,u)=>(u=be(u)?{data:r,field:u}:j(u)||u.signal?BP(u,n):u,a.push(u),a),[]);return(la(t.type)?_P:rE(t.type)?RP:TP)(e,n,i)}function BP(e,t){const n="_:vega:_"+DP++,r=En({});if(j(e))r.value={$ingest:e};else if(e.signal){const i="setdata("+G(n)+","+e.signal+")";r.params.input=t.signalRef(i)}return t.addDataPipeline(n,[r,Mi({})]),{data:n,field:"data"}}function _P(e,t,n){const r=vC(e.sort,!0);let i,a;const u=n.map(l=>{const f=t.getData(l.data);return f||Vf(l.data),f.countsRef(t,l.field,r)}),o={groupby:B0,pulse:u};r&&(i=r.op||"count",a=r.field?Gf(i,r.field):"count",o.ops=[mC[i]],o.fields=[t.fieldRef(a)],o.as=[a]),i=t.add(fC(o));const s=t.add(En({pulse:W(i)}));return a=t.add(CP({field:B0,sort:t.sortRef(r),pulse:W(s)})),W(a)}function vC(e,t){return e&&(!e.field&&!e.op?ne(e)?e.field="key":e={field:"key"}:!e.field&&e.op!=="count"?$("No field provided for sort aggregate op: "+e.op):t&&e.field&&e.op&&!mC[e.op]&&$("Multiple domain scales can not be sorted using "+e.op)),e}function RP(e,t,n){const r=n.map(i=>{const a=t.getData(i.data);return a||Vf(i.data),a.domainRef(t,i.field)});return W(t.add(mP({values:r})))}function TP(e,t,n){const r=n.map(i=>{const a=t.getData(i.data);return a||Vf(i.data),a.extentRef(t,i.field)});return W(t.add(pP({extents:r})))}function OP(e,t){return e.signal||j(e)?Fs(e,t):t.objectProperty(e)}function zP(e,t){return e.signal?t.signalRef(e.signal):ne(e)?{interval:Qt(e.interval),step:Qt(e.step)}:Qt(e)}function LP(e,t){t.interpolate=Qt(e.type||e),e.gamma!=null&&(t.interpolateGamma=Qt(e.gamma))}function xC(e,t,n){const r=t.config.range;let i=e.range;if(i.signal)return t.signalRef(i.signal);if(be(i)){if(r&&Z(r,i))return e=te({},e,{range:r[i]}),xC(e,t,n);i==="width"?i=[0,{signal:"width"}]:i==="height"?i=la(e.type)?[0,{signal:"height"}]:[{signal:"height"},0]:$("Unrecognized scale range value: "+G(i))}else if(i.scheme){n.scheme=j(i.scheme)?Fs(i.scheme,t):Qt(i.scheme,t),i.extent&&(n.schemeExtent=Fs(i.extent,t)),i.count&&(n.schemeCount=Qt(i.count,t));return}else if(i.step){n.rangeStep=Qt(i.step,t);return}else{if(la(e.type)&&!j(i))return yC(i,e,t);j(i)||$("Unsupported range type: "+G(i))}return i.map(a=>(j(a)?Fs:Qt)(a,t))}function NP(e,t){const n=t.config.projection||{},r={};for(const i in e)i!=="name"&&(r[i]=R0(e[i],i,t));for(const i in n)r[i]==null&&(r[i]=R0(n[i],i,t));t.addProjection(e.name,r)}function R0(e,t,n){return j(e)?e.map(r=>R0(r,t,n)):ne(e)?e.signal?n.signalRef(e.signal):t==="fit"?e:$("Unsupported parameter object: "+G(e)):e}const wn="top",Sa="left",$a="right",qr="bottom",bC="center",PP="vertical",IP="start",UP="middle",qP="end",T0="index",cp="label",jP="offset",ma="perc",WP="perc2",Jt="value",Mo="guide-label",hp="guide-title",YP="group-title",HP="group-subtitle",z2="symbol",ks="gradient",O0="discrete",z0="size",GP="shape",VP="fill",XP="stroke",KP="strokeWidth",ZP="strokeDash",QP="opacity",dp=[z0,GP,VP,XP,KP,ZP,QP],So={name:1,style:1,interactive:1},se={value:0},en={value:1},Xf="group",AC="rect",gp="rule",JP="symbol",Si="text";function Ku(e){return e.type=Xf,e.interactive=e.interactive||!1,e}function Ot(e,t){const n=(r,i)=>hn(e[r],hn(t[r],i));return n.isVertical=r=>PP===hn(e.direction,t.direction||(r?t.symbolDirection:t.gradientDirection)),n.gradientLength=()=>hn(e.gradientLength,t.gradientLength||t.gradientWidth),n.gradientThickness=()=>hn(e.gradientThickness,t.gradientThickness||t.gradientHeight),n.entryColumns=()=>hn(e.columns,hn(t.columns,+n.isVertical(!0))),n}function EC(e,t){const n=t&&(t.update&&t.update[e]||t.enter&&t.enter[e]);return n&&n.signal?n:n?n.value:null}function eI(e,t,n){const r=t.config.style[n];return r&&r[e]}function Kf(e,t,n){return`item.anchor === '${IP}' ? ${e} : item.anchor === '${qP}' ? ${t} : ${n}`}const pp=Kf(G(Sa),G($a),G(bC));function tI(e){const t=e("tickBand");let n=e("tickOffset"),r,i;return t?t.signal?(r={signal:`(${t.signal}) === 'extent' ? 1 : 0.5`},i={signal:`(${t.signal}) === 'extent'`},ne(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 wC(e,t){return t?e?ne(e)?Object.assign({},e,{offset:wC(e.offset,t)}):{value:e,offset:t}:t:e}function Gt(e,t){return t?(e.name=t.name,e.style=t.style||e.style,e.interactive=!!t.interactive,e.encode=Ma(e.encode,t,So)):e.interactive=!1,e}function nI(e,t,n,r){const i=Ot(e,n),a=i.isVertical(),u=i.gradientThickness(),o=i.gradientLength();let s,l,f,c,h;a?(l=[0,1],f=[0,0],c=u,h=o):(l=[0,0],f=[1,0],c=o,h=u);const d={enter:s={opacity:se,x:se,y:se,width:Pe(c),height:Pe(h)},update:te({},s,{opacity:en,fill:{gradient:t,start:l,stop:f}}),exit:{opacity:se}};return Ge(d,{stroke:i("gradientStrokeColor"),strokeWidth:i("gradientStrokeWidth")},{opacity:i("gradientOpacity")}),Gt({type:AC,role:SN,encode:d},r)}function rI(e,t,n,r,i){const a=Ot(e,n),u=a.isVertical(),o=a.gradientThickness(),s=a.gradientLength();let l,f,c,h,d="";u?(l="y",c="y2",f="x",h="width",d="1-"):(l="x",c="x2",f="y",h="height");const g={opacity:se,fill:{scale:t,field:Jt}};g[l]={signal:d+"datum."+ma,mult:s},g[f]=se,g[c]={signal:d+"datum."+WP,mult:s},g[h]=Pe(o);const p={enter:g,update:te({},g,{opacity:en}),exit:{opacity:se}};return Ge(p,{stroke:a("gradientStrokeColor"),strokeWidth:a("gradientStrokeWidth")},{opacity:a("gradientOpacity")}),Gt({type:AC,role:kN,key:Jt,from:i,encode:p},r)}const iI=`datum.${ma}<=0?"${Sa}":datum.${ma}>=1?"${$a}":"${bC}"`,aI=`datum.${ma}<=0?"${qr}":datum.${ma}>=1?"${wn}":"${UP}"`;function L2(e,t,n,r){const i=Ot(e,t),a=i.isVertical(),u=Pe(i.gradientThickness()),o=i.gradientLength();let s=i("labelOverlap"),l,f,c,h,d="";const g={enter:l={opacity:se},update:f={opacity:en,text:{field:cp}},exit:{opacity:se}};return Ge(g,{fill:i("labelColor"),fillOpacity:i("labelOpacity"),font:i("labelFont"),fontSize:i("labelFontSize"),fontStyle:i("labelFontStyle"),fontWeight:i("labelFontWeight"),limit:hn(e.labelLimit,t.gradientLabelLimit)}),a?(l.align={value:"left"},l.baseline=f.baseline={signal:aI},c="y",h="x",d="1-"):(l.align=f.align={signal:iI},l.baseline={value:"top"},c="x",h="y"),l[c]=f[c]={signal:d+"datum."+ma,mult:o},l[h]=f[h]=u,u.offset=hn(e.labelOffset,t.gradientLabelOffset)||0,s=s?{separation:i("labelSeparation"),method:s,order:"datum."+T0}:void 0,Gt({type:Si,role:iC,style:Mo,key:Jt,from:r,encode:g,overlap:s},n)}function uI(e,t,n,r,i){const a=Ot(e,t),u=n.entries,o=!!(u&&u.interactive),s=u?u.name:void 0,l=a("clipHeight"),f=a("symbolOffset"),c={data:"value"},h=`(${i}) ? datum.${jP} : datum.${z0}`,d=l?Pe(l):{field:z0},g=`datum.${T0}`,p=`max(1, ${i})`;let m,y,v,x,b;d.mult=.5,m={enter:y={opacity:se,x:{signal:h,mult:.5,offset:f},y:d},update:v={opacity:en,x:y.x,y:y.y},exit:{opacity:se}};let E=null,w=null;e.fill||(E=t.symbolBaseFillColor,w=t.symbolBaseStrokeColor),Ge(m,{fill:a("symbolFillColor",E),shape:a("symbolType"),size:a("symbolSize"),stroke:a("symbolStrokeColor",w),strokeDash:a("symbolDash"),strokeDashOffset:a("symbolDashOffset"),strokeWidth:a("symbolStrokeWidth")},{opacity:a("symbolOpacity")}),dp.forEach(D=>{e[D]&&(v[D]=y[D]={scale:e[D],field:Jt})});const A=Gt({type:JP,role:$N,key:Jt,from:c,clip:l?!0:void 0,encode:m},n.symbols),C=Pe(f);C.offset=a("labelOffset"),m={enter:y={opacity:se,x:{signal:h,offset:C},y:d},update:v={opacity:en,text:{field:cp},x:y.x,y:y.y},exit:{opacity:se}},Ge(m,{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")});const F=Gt({type:Si,role:iC,style:Mo,key:Jt,from:c,encode:m},n.labels);return m={enter:{noBound:{value:!l},width:se,height:l?Pe(l):se,opacity:se},exit:{opacity:se},update:v={opacity:en,row:{signal:null},column:{signal:null}}},a.isVertical(!0)?(x=`ceil(item.mark.items.length / ${p})`,v.row.signal=`${g}%${x}`,v.column.signal=`floor(${g} / ${x})`,b={field:["row",g]}):(v.row.signal=`floor(${g} / ${p})`,v.column.signal=`${g} % ${p}`,b={field:g}),v.column.signal=`(${i})?${v.column.signal}:${g}`,r={facet:{data:r,name:"value",groupby:T0}},Ku({role:sp,from:r,encode:Ma(m,u,So),marks:[A,F],name:s,interactive:o,sort:b})}function oI(e,t){const n=Ot(e,t);return{align:n("gridAlign"),columns:n.entryColumns(),center:{row:!0,column:!1},padding:{row:n("rowPadding"),column:n("columnPadding")}}}const mp='item.orient === "left"',yp='item.orient === "right"',Zf=`(${mp} || ${yp})`,sI=`datum.vgrad && ${Zf}`,lI=Kf('"top"','"bottom"','"middle"'),fI=Kf('"right"','"left"','"center"'),cI=`datum.vgrad && ${yp} ? (${fI}) : (${Zf} && !(datum.vgrad && ${mp})) ? "left" : ${pp}`,hI=`item._anchor || (${Zf} ? "middle" : "start")`,dI=`${sI} ? (${mp} ? -90 : 90) : 0`,gI=`${Zf} ? (datum.vgrad ? (${yp} ? "bottom" : "top") : ${lI}) : "top"`;function pI(e,t,n,r){const i=Ot(e,t),a={enter:{opacity:se},update:{opacity:en,x:{field:{group:"padding"}},y:{field:{group:"padding"}}},exit:{opacity:se}};return Ge(a,{orient:i("titleOrient"),_anchor:i("titleAnchor"),anchor:{signal:hI},angle:{signal:dI},align:{signal:cI},baseline:{signal:gI},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")}),Gt({type:Si,role:BN,style:hp,from:r,encode:a},n)}function mI(e,t){let n;return ne(e)&&(e.signal?n=e.signal:e.path?n="pathShape("+N2(e.path)+")":e.sphere&&(n="geoShape("+N2(e.sphere)+', {type: "Sphere"})')),n?t.signalRef(n):!!e}function N2(e){return ne(e)&&e.signal?e.signal:G(e)}function CC(e){const t=e.role||"";return t.startsWith("axis")||t.startsWith("legend")||t.startsWith("title")?t:e.type===Xf?sp:t||up}function yI(e){return{marktype:e.type,name:e.name||void 0,role:e.role||CC(e),zindex:+e.zindex||void 0,aria:e.aria,description:e.description}}function vI(e,t){return e&&e.signal?t.signalRef(e.signal):e!==!1}function vp(e,t){const n=oA(e.type);n||$("Unrecognized transform type: "+G(e.type));const r=Hf(n.type.toLowerCase(),null,DC(n,e,t));return e.signal&&t.addSignal(e.signal,t.proxy(r)),r.metadata=n.metadata||{},r}function DC(e,t,n){const r={},i=e.params.length;for(let a=0;a<i;++a){const u=e.params[a];r[u.name]=xI(u,t,n)}return r}function xI(e,t,n){const r=e.type,i=t[e.name];if(r==="index")return bI(e,t,n);if(i===void 0){e.required&&$("Missing required "+G(t.type)+" parameter: "+G(e.name));return}else{if(r==="param")return AI(e,t,n);if(r==="projection")return n.projectionRef(t[e.name])}return e.array&&!Oe(i)?i.map(a=>P2(e,a,n)):P2(e,i,n)}function P2(e,t,n){const r=e.type;if(Oe(t))return U2(r)?$("Expression references can not be signals."):rh(r)?n.fieldRef(t):q2(r)?n.compareRef(t):n.signalRef(t.signal);{const i=e.expr||rh(r);return i&&EI(t)?n.exprRef(t.expr,t.as):i&&wI(t)?Vu(t.field,t.as):U2(r)?Nn(t,n):CI(r)?W(n.getData(t).values):rh(r)?Vu(t):q2(r)?n.compareRef(t):t}}function bI(e,t,n){return be(t.from)||$('Lookup "from" parameter must be a string literal.'),n.getData(t.from).lookupRef(n,t.key)}function AI(e,t,n){const r=t[e.name];return e.array?(j(r)||$("Expected an array of sub-parameters. Instead: "+G(r)),r.map(i=>I2(e,i,n))):I2(e,r,n)}function I2(e,t,n){const r=e.params.length;let i;for(let u=0;u<r;++u){i=e.params[u];for(const o in i.key)if(i.key[o]!==t[o]){i=null;break}if(i)break}i||$("Unsupported parameter: "+G(t));const a=te(DC(i,t,n),i.key);return W(n.add(vP(a)))}const EI=e=>e&&e.expr,wI=e=>e&&e.field,CI=e=>e==="data",U2=e=>e==="expr",rh=e=>e==="field",q2=e=>e==="compare";function DI(e,t,n){let r,i,a,u,o;return e?(r=e.facet)&&(t||$("Only group marks can be faceted."),r.field!=null?u=o=Ms(r,n):(e.data?o=W(n.getData(e.data).aggregate):(a=vp(te({type:"aggregate",groupby:V(r.groupby)},r.aggregate),n),a.params.key=n.keyRef(r.groupby),a.params.pulse=Ms(r,n),u=o=W(n.add(a))),i=n.keyRef(r.groupby,!0))):u=W(n.add(En(null,[{}]))),u||(u=Ms(e,n)),{key:i,pulse:u,parent:o}}function Ms(e,t){return e.$ref?e:e.data&&e.data.$ref?e.data:W(t.getData(e.data).output)}function xi(e,t,n,r,i){this.scope=e,this.input=t,this.output=n,this.values=r,this.aggregate=i,this.index={}}xi.fromEntries=function(e,t){const n=t.length,r=t[n-1],i=t[n-2];let a=t[0],u=null,o=1;for(a&&a.type==="load"&&(a=t[1]),e.add(t[0]);o<n;++o)t[o].params.pulse=W(t[o-1]),e.add(t[o]),t[o].type==="aggregate"&&(u=t[o]);return new xi(e,a,i,r,u)};function FC(e){return be(e)?e:null}function j2(e,t,n){const r=Gf(n.op,n.field);let i;if(t.ops){for(let a=0,u=t.as.length;a<u;++a)if(t.as[a]===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 Va(e,t,n,r,i,a,u){const o=t[n]||(t[n]={}),s=VN(a);let l=FC(i),f,c;if(l!=null&&(e=t.scope,l=l+(s?"|"+s:""),f=o[l]),!f){const h=a?{field:B0,pulse:t.countsRef(e,i,a)}:{field:e.fieldRef(i),pulse:W(t.output)};s&&(h.sort=e.sortRef(a)),c=e.add(Hf(r,void 0,h)),u&&(t.index[i]=c),f=W(c),l!=null&&(o[l]=f)}return f}xi.prototype={countsRef(e,t,n){const r=this,i=r.counts||(r.counts={}),a=FC(t);let u,o,s;return a!=null&&(e=r.scope,u=i[a]),u?n&&n.field&&j2(e,u.agg.params,n):(s={groupby:e.fieldRef(t,"key"),pulse:W(r.output)},n&&n.field&&j2(e,s,n),o=e.add(fC(s)),u=e.add(En({pulse:W(o)})),u={agg:o,ref:W(u)},a!=null&&(i[a]=u)),u.ref},tuplesRef(){return W(this.values)},extentRef(e,t){return Va(e,this,"extent","extent",t,!1)},domainRef(e,t){return Va(e,this,"domain","values",t,!1)},valuesRef(e,t,n){return Va(e,this,"vals","values",t,n||!0)},lookupRef(e,t){return Va(e,this,"lookup","tupleindex",t,!1)},indataRef(e,t){return Va(e,this,"indata","tupleindex",t,!0,!0)}};function FI(e,t,n){const r=e.from.facet,i=r.name,a=Ms(r,t);let u;r.name||$("Facet must have a name: "+G(r)),r.data||$("Facet must reference a data set: "+G(r)),r.field?u=t.add(dC({field:t.fieldRef(r.field),pulse:a})):r.groupby?u=t.add(lP({key:t.keyRef(r.groupby),group:W(t.proxy(n.parent)),pulse:a})):$("Facet must specify groupby or field: "+G(r));const o=t.fork(),s=o.add(En()),l=o.add(Mi({pulse:W(s)}));o.addData(i,new xi(o,s,s,l)),o.addSignal("parent",null),u.params.subflow={$subflow:o.parse(e).toRuntime()}}function kI(e,t,n){const r=t.add(dC({pulse:n.pulse})),i=t.fork();i.add(Mi()),i.addSignal("parent",null),r.params.subflow={$subflow:i.parse(e).toRuntime()}}function kC(e,t,n){const r=e.remove,i=e.insert,a=e.toggle,u=e.modify,o=e.values,s=t.add(Nl()),l="if("+e.trigger+',modify("'+n+'",'+[i,r,a,u,o].map(c=>c??"null").join(",")+"),0)",f=Nn(l,t);s.update=f.$expr,s.params=f.$params}function Qf(e,t){const n=CC(e),r=e.type===Xf,i=e.from&&e.from.facet,a=e.overlap;let u=e.layout||n===sp||n===op,o,s,l,f,c,h,d;const g=n===up||u||i,p=DI(e.from,r,t);s=t.add(oP({key:p.key||(e.key?Vu(e.key):void 0),pulse:p.pulse,clean:!r}));const m=W(s);s=l=t.add(En({pulse:m})),s=t.add(gP({markdef:yI(e),interactive:vI(e.interactive,t),clip:mI(e.clip,t),context:{$context:!0},groups:t.lookup(),parent:t.signals.parent?t.signalRef("parent"):null,index:t.markpath(),pulse:W(s)}));const y=W(s);s=f=t.add(hC(sC(e.encode,e.type,n,e.style,t,{mod:!1,pulse:y}))),s.params.parent=t.encode(),e.transform&&e.transform.forEach(w=>{const A=vp(w,t),C=A.metadata;(C.generates||C.changes)&&$("Mark transforms should not generate new data."),C.nomod||(f.params.mod=!0),A.params.pulse=W(s),t.add(s=A)}),e.sort&&(s=t.add(wP({sort:t.compareRef(e.sort),pulse:W(s)})));const v=W(s);(i||u)&&(u=t.add(pC({layout:t.objectProperty(e.layout),legends:t.legends,mark:y,pulse:v})),h=W(u));const x=t.add(cC({mark:y,pulse:h||v}));d=W(x),r&&(g&&(o=t.operators,o.pop(),u&&o.pop()),t.pushState(v,h||d,m),i?FI(e,t,p):g?kI(e,t,p):t.parse(e),t.popState(),g&&(u&&o.push(u),o.push(x))),a&&(d=MI(a,d,t));const b=t.add(gC({pulse:d})),E=t.add(Mi({pulse:W(b)},void 0,t.parent()));e.name!=null&&(c=e.name,t.addData(c,new xi(t,l,b,E)),e.on&&e.on.forEach(w=>{(w.insert||w.remove||w.toggle)&&$("Marks only support modify triggers."),kC(w,t,c)}))}function MI(e,t,n){const r=e.method,i=e.bound,a=e.separation,u={separation:Oe(a)?n.signalRef(a.signal):a,method:Oe(r)?n.signalRef(r.signal):r,pulse:t};if(e.order&&(u.sort=n.compareRef({field:e.order})),i){const o=i.tolerance;u.boundTolerance=Oe(o)?n.signalRef(o.signal):+o,u.boundScale=n.scaleRef(i.scale),u.boundOrient=i.orient}return W(n.add(yP(u)))}function SI(e,t){const n=t.config.legend,r=e.encode||{},i=Ot(e,n),a=r.legend||{},u=a.name||void 0,o=a.interactive,s=a.style,l={};let f=0,c,h,d;dp.forEach(x=>e[x]?(l[x]=e[x],f=f||e[x]):0),f||$("Missing valid scale for legend.");const g=$I(e,t.scaleType(f)),p={title:e.title!=null,scales:l,type:g,vgrad:g!=="symbol"&&i.isVertical()},m=W(t.add(En(null,[p]))),y={enter:{x:{value:0},y:{value:0}}},v=W(t.add(hP(h={type:g,scale:t.scaleRef(f),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 g===ks?(d=[nI(e,f,n,r.gradient),L2(e,n,r.labels,v)],h.count=h.count||t.signalRef(`max(2,2*floor((${li(i.gradientLength())})/100))`)):g===O0?d=[rI(e,f,n,r.gradient,v),L2(e,n,r.labels,v)]:(c=oI(e,n),d=[uI(e,n,r,v,li(c.columns))],h.size=RI(e,t,d[0].marks)),d=[Ku({role:MN,from:m,encode:y,marks:d,layout:c,interactive:o})],p.title&&d.push(pI(e,n,r.title,m)),Qf(Ku({role:FN,from:m,encode:Ma(_I(i,e,n),a,So),marks:d,aria:i("aria"),description:i("description"),zindex:i("zindex"),name:u,interactive:o,style:s}),t)}function $I(e,t){let n=e.type||z2;return!e.type&&BI(e)===1&&(e.fill||e.stroke)&&(n=$1(t)?ks:Vh(t)?O0:z2),n!==ks?n:Vh(t)?O0:ks}function BI(e){return dp.reduce((t,n)=>t+(e[n]?1:0),0)}function _I(e,t,n){const r={enter:{},update:{}};return Ge(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 RI(e,t,n){const r=li(W2("size",e,n)),i=li(W2("strokeWidth",e,n)),a=li(TI(n[1].encode,t,Mo));return Nn(`max(ceil(sqrt(${r})+${i}),${a})`,t)}function W2(e,t,n){return t[e]?`scale("${t[e]}",datum)`:EC(e,n[0].encode)}function TI(e,t,n){return EC("fontSize",e)||eI("fontSize",t,n)}const OI=`item.orient==="${Sa}"?-90:item.orient==="${$a}"?90:0`;function zI(e,t){e=be(e)?{text:e}:e;const n=Ot(e,t.config.title),r=e.encode||{},i=r.group||{},a=i.name||void 0,u=i.interactive,o=i.style,s=[],l={},f=W(t.add(En(null,[l])));return s.push(PI(e,n,LI(e),f)),e.subtitle&&s.push(II(e,n,r.subtitle,f)),Qf(Ku({role:_N,from:f,encode:NI(n,i),marks:s,aria:n("aria"),description:n("description"),zindex:n("zindex"),name:a,interactive:u,style:o}),t)}function LI(e){const t=e.encode;return t&&t.title||te({name:e.name,interactive:e.interactive,style:e.style},t)}function NI(e,t){const n={enter:{},update:{}};return Ge(n,{orient:e("orient"),anchor:e("anchor"),align:{signal:pp},angle:{signal:OI},limit:e("limit"),frame:e("frame"),offset:e("offset")||0,padding:e("subtitlePadding")}),Ma(n,t,So)}function PI(e,t,n,r){const i={value:0},a=e.text,u={enter:{opacity:i},update:{opacity:{value:1}},exit:{opacity:i}};return Ge(u,{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")}),Gt({type:Si,role:RN,style:YP,from:r,encode:u},n)}function II(e,t,n,r){const i={value:0},a=e.subtitle,u={enter:{opacity:i},update:{opacity:{value:1}},exit:{opacity:i}};return Ge(u,{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")}),Gt({type:Si,role:TN,style:HP,from:r,encode:u},n)}function UI(e,t){const n=[];e.transform&&e.transform.forEach(r=>{n.push(vp(r,t))}),e.on&&e.on.forEach(r=>{kC(r,t,e.name)}),t.addDataPipeline(e.name,qI(e,t,n))}function qI(e,t,n){const r=[];let i=null,a=!1,u=!1,o,s,l,f,c;for(e.values?Oe(e.values)||Ds(e.format)?(r.push(Y2(t,e)),r.push(i=Kr())):r.push(i=Kr({$ingest:e.values,$format:e.format})):e.url?Ds(e.url)||Ds(e.format)?(r.push(Y2(t,e)),r.push(i=Kr())):r.push(i=Kr({$request:e.url,$format:e.format})):e.source&&(i=o=V(e.source).map(h=>W(t.getData(h).output)),r.push(null)),s=0,l=n.length;s<l;++s)f=n[s],c=f.metadata,!i&&!c.source&&r.push(i=Kr()),r.push(f),c.generates&&(u=!0),c.modifies&&!u&&(a=!0),c.source?i=f:c.changes&&(i=null);return o&&(l=o.length-1,r[0]=AP({derive:a,pulse:l?o:o[0]}),(a||l)&&r.splice(1,0,Kr())),i||r.push(Kr()),r.push(Mi({})),r}function Kr(e){const t=En({},e);return t.metadata={source:!0},t}function Y2(e,t){return dP({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)})}const MC=e=>e===qr||e===wn,Jf=(e,t,n)=>Oe(e)?HI(e.signal,t,n):e===Sa||e===wn?t:n,Ie=(e,t,n)=>Oe(e)?WI(e.signal,t,n):MC(e)?t:n,vn=(e,t,n)=>Oe(e)?YI(e.signal,t,n):MC(e)?n:t,SC=(e,t,n)=>Oe(e)?GI(e.signal,t,n):e===wn?{value:t}:{value:n},jI=(e,t,n)=>Oe(e)?VI(e.signal,t,n):e===$a?{value:t}:{value:n},WI=(e,t,n)=>$C(`${e} === '${wn}' || ${e} === '${qr}'`,t,n),YI=(e,t,n)=>$C(`${e} !== '${wn}' && ${e} !== '${qr}'`,t,n),HI=(e,t,n)=>xp(`${e} === '${Sa}' || ${e} === '${wn}'`,t,n),GI=(e,t,n)=>xp(`${e} === '${wn}'`,t,n),VI=(e,t,n)=>xp(`${e} === '${$a}'`,t,n),$C=(e,t,n)=>(t=t!=null?Pe(t):t,n=n!=null?Pe(n):n,H2(t)&&H2(n)?(t=t?t.signal||G(t.value):null,n=n?n.signal||G(n.value):null,{signal:`${e} ? (${t}) : (${n})`}):[te({test:e},t)].concat(n||[])),H2=e=>e==null||Object.keys(e).length===1,xp=(e,t,n)=>({signal:`${e} ? (${Vi(t)}) : (${Vi(n)})`}),XI=(e,t,n,r,i)=>({signal:(r!=null?`${e} === '${Sa}' ? (${Vi(r)}) : `:"")+(n!=null?`${e} === '${qr}' ? (${Vi(n)}) : `:"")+(i!=null?`${e} === '${$a}' ? (${Vi(i)}) : `:"")+(t!=null?`${e} === '${wn}' ? (${Vi(t)}) : `:"")+"(null)"}),Vi=e=>Oe(e)?e.signal:e==null?null:G(e),KI=(e,t)=>t===0?0:Oe(e)?{signal:`(${e.signal}) * ${t}`}:{value:e*t},Qi=(e,t)=>{const n=e.signal;return n&&n.endsWith("(null)")?{signal:n.slice(0,-6)+t.signal}:e};function Ii(e,t,n,r){let i;if(t&&Z(t,e))return t[e];if(Z(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[hp][i]}else if(e.startsWith("label")){switch(e){case"labelColor":i="fill";break;case"labelFont":case"labelFontSize":i=e[5].toLowerCase()+e.slice(6)}return r[Mo][i]}return null}function G2(e){const t={};for(const n of e)if(n)for(const r in n)t[r]=1;return Object.keys(t)}function ZI(e,t){var n=t.config,r=n.style,i=n.axis,a=t.scaleType(e.scale)==="band"&&n.axisBand,u=e.orient,o,s,l;if(Oe(u)){const c=G2([n.axisX,n.axisY]),h=G2([n.axisTop,n.axisBottom,n.axisLeft,n.axisRight]);o={};for(l of c)o[l]=Ie(u,Ii(l,n.axisX,i,r),Ii(l,n.axisY,i,r));s={};for(l of h)s[l]=XI(u.signal,Ii(l,n.axisTop,i,r),Ii(l,n.axisBottom,i,r),Ii(l,n.axisLeft,i,r),Ii(l,n.axisRight,i,r))}else o=u===wn||u===qr?n.axisX:n.axisY,s=n["axis"+u[0].toUpperCase()+u.slice(1)];return o||s||a?te({},i,o,s,a):i}function QI(e,t,n,r){const i=Ot(e,t),a=e.orient;let u,o;const s={enter:u={opacity:se},update:o={opacity:en},exit:{opacity:se}};Ge(s,{stroke:i("domainColor"),strokeCap:i("domainCap"),strokeDash:i("domainDash"),strokeDashOffset:i("domainDashOffset"),strokeWidth:i("domainWidth"),strokeOpacity:i("domainOpacity")});const l=V2(e,0),f=V2(e,1);return u.x=o.x=Ie(a,l,se),u.x2=o.x2=Ie(a,f),u.y=o.y=vn(a,l,se),u.y2=o.y2=vn(a,f),Gt({type:gp,role:AN,from:r,encode:s},n)}function V2(e,t){return{scale:e.scale,range:t}}function JI(e,t,n,r,i){const a=Ot(e,t),u=e.orient,o=e.gridScale,s=Jf(u,1,-1),l=eU(e.offset,s);let f,c,h;const d={enter:f={opacity:se},update:h={opacity:en},exit:c={opacity:se}};Ge(d,{stroke:a("gridColor"),strokeCap:a("gridCap"),strokeDash:a("gridDash"),strokeDashOffset:a("gridDashOffset"),strokeOpacity:a("gridOpacity"),strokeWidth:a("gridWidth")});const g={scale:e.scale,field:Jt,band:i.band,extra:i.extra,offset:i.offset,round:a("tickRound")},p=Ie(u,{signal:"height"},{signal:"width"}),m=o?{scale:o,range:0,mult:s,offset:l}:{value:0,offset:l},y=o?{scale:o,range:1,mult:s,offset:l}:te(p,{mult:s,offset:l});return f.x=h.x=Ie(u,g,m),f.y=h.y=vn(u,g,m),f.x2=h.x2=vn(u,y),f.y2=h.y2=Ie(u,y),c.x=Ie(u,g),c.y=vn(u,g),Gt({type:gp,role:EN,key:Jt,from:r,encode:d},n)}function eU(e,t){if(t!==1)if(!ne(e))e=Oe(t)?{signal:`(${t.signal}) * (${e||0})`}:t*(e||0);else{let n=e=te({},e);for(;n.mult!=null;)if(ne(n.mult))n=n.mult=te({},n.mult);else return n.mult=Oe(t)?{signal:`(${n.mult}) * (${t.signal})`}:n.mult*t,e;n.mult=t}return e}function tU(e,t,n,r,i,a){const u=Ot(e,t),o=e.orient,s=Jf(o,-1,1);let l,f,c;const h={enter:l={opacity:se},update:c={opacity:en},exit:f={opacity:se}};Ge(h,{stroke:u("tickColor"),strokeCap:u("tickCap"),strokeDash:u("tickDash"),strokeDashOffset:u("tickDashOffset"),strokeOpacity:u("tickOpacity"),strokeWidth:u("tickWidth")});const d=Pe(i);d.mult=s;const g={scale:e.scale,field:Jt,band:a.band,extra:a.extra,offset:a.offset,round:u("tickRound")};return c.y=l.y=Ie(o,se,g),c.y2=l.y2=Ie(o,d),f.x=Ie(o,g),c.x=l.x=vn(o,se,g),c.x2=l.x2=vn(o,d),f.y=vn(o,g),Gt({type:gp,role:CN,key:Jt,from:r,encode:h},n)}function ih(e,t,n,r,i){return{signal:'flush(range("'+e+'"), scale("'+e+'", datum.value), '+t+","+n+","+r+","+i+")"}}function nU(e,t,n,r,i,a){const u=Ot(e,t),o=e.orient,s=e.scale,l=Jf(o,-1,1),f=li(u("labelFlush")),c=li(u("labelFlushOffset")),h=u("labelAlign"),d=u("labelBaseline");let g=f===0||!!f,p;const m=Pe(i);m.mult=l,m.offset=Pe(u("labelPadding")||0),m.offset.mult=l;const y={scale:s,field:Jt,band:.5,offset:wC(a.offset,u("labelOffset"))},v=Ie(o,g?ih(s,f,'"left"','"right"','"center"'):{value:"center"},jI(o,"left","right")),x=Ie(o,SC(o,"bottom","top"),g?ih(s,f,'"top"','"bottom"','"middle"'):{value:"middle"}),b=ih(s,f,`-(${c})`,c,0);g=g&&c;const E={opacity:se,x:Ie(o,y,m),y:vn(o,y,m)},w={enter:E,update:p={opacity:en,text:{field:cp},x:E.x,y:E.y,align:v,baseline:x},exit:{opacity:se,x:E.x,y:E.y}};Ge(w,{dx:!h&&g?Ie(o,b):null,dy:!d&&g?vn(o,b):null}),Ge(w,{angle:u("labelAngle"),fill:u("labelColor"),fillOpacity:u("labelOpacity"),font:u("labelFont"),fontSize:u("labelFontSize"),fontWeight:u("labelFontWeight"),fontStyle:u("labelFontStyle"),limit:u("labelLimit"),lineHeight:u("labelLineHeight")},{align:h,baseline:d});const A=u("labelBound");let C=u("labelOverlap");return C=C||A?{separation:u("labelSeparation"),method:C,order:"datum.index",bound:A?{scale:s,orient:o,tolerance:A}:null}:void 0,p.align!==v&&(p.align=Qi(p.align,v)),p.baseline!==x&&(p.baseline=Qi(p.baseline,x)),Gt({type:Si,role:wN,style:Mo,key:Jt,from:r,encode:w,overlap:C},n)}function rU(e,t,n,r){const i=Ot(e,t),a=e.orient,u=Jf(a,-1,1);let o,s;const l={enter:o={opacity:se,anchor:Pe(i("titleAnchor",null)),align:{signal:pp}},update:s=te({},o,{opacity:en,text:Pe(e.title)}),exit:{opacity:se}},f={signal:`lerp(range("${e.scale}"), ${Kf(0,1,.5)})`};return s.x=Ie(a,f),s.y=vn(a,f),o.angle=Ie(a,se,KI(u,90)),o.baseline=Ie(a,SC(a,qr,wn),{value:qr}),s.angle=o.angle,s.baseline=o.baseline,Ge(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")}),iU(i,a,l,n),l.update.align=Qi(l.update.align,o.align),l.update.angle=Qi(l.update.angle,o.angle),l.update.baseline=Qi(l.update.baseline,o.baseline),Gt({type:Si,role:DN,style:hp,from:r,encode:l},n)}function iU(e,t,n,r){const i=(o,s)=>o!=null?(n.update[s]=Qi(Pe(o),n.update[s]),!1):!qi(s,r),a=i(e("titleX"),"x"),u=i(e("titleY"),"y");n.enter.auto=u===a?Pe(u):Ie(t,Pe(u),Pe(a))}function aU(e,t){const n=ZI(e,t),r=e.encode||{},i=r.axis||{},a=i.name||void 0,u=i.interactive,o=i.style,s=Ot(e,n),l=tI(s),f={scale:e.scale,ticks:!!s("ticks"),labels:!!s("labels"),grid:!!s("grid"),domain:!!s("domain"),title:e.title!=null},c=W(t.add(En({},[f]))),h=W(t.add(uP({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)}))),d=[];let g;return f.grid&&d.push(JI(e,n,r.grid,h,l)),f.ticks&&(g=s("tickSize"),d.push(tU(e,n,r.ticks,h,g,l))),f.labels&&(g=f.ticks?g:0,d.push(nU(e,n,r.labels,h,g,l))),f.domain&&d.push(QI(e,n,r.domain,c)),f.title&&d.push(rU(e,n,r.title,c)),Qf(Ku({role:bN,from:c,encode:Ma(uU(s,e),i,So),marks:d,aria:s("aria"),description:s("description"),zindex:s("zindex"),name:a,interactive:u,style:o}),t)}function uU(e,t){const n={enter:{},update:{}};return Ge(n,{orient:e("orient"),offset:e("offset")||0,position:hn(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 BC(e,t,n){const r=V(e.signals),i=V(e.scales);return n||r.forEach(a=>lC(a,t)),V(e.projections).forEach(a=>NP(a,t)),i.forEach(a=>FP(a,t)),V(e.data).forEach(a=>UI(a,t)),i.forEach(a=>kP(a,t)),(n||r).forEach(a=>aP(a,t)),V(e.axes).forEach(a=>aU(a,t)),V(e.marks).forEach(a=>Qf(a,t)),V(e.legends).forEach(a=>SI(a,t)),e.title&&zI(e.title,t),t.parseLambdas(),t}const oU=e=>Ma({enter:{x:{value:0},y:{value:0}},update:{width:{signal:"width"},height:{signal:"height"}}},e);function sU(e,t){const n=t.config,r=W(t.root=t.add(Nl())),i=lU(e,n);i.forEach(l=>lC(l,t)),t.description=e.description||n.description,t.eventConfig=n.events,t.legends=t.objectProperty(n.legend&&n.legend.layout),t.locale=n.locale;const a=t.add(En()),u=t.add(hC(sC(oU(e.encode),Xf,op,e.style,t,{pulse:W(a)}))),o=t.add(pC({layout:t.objectProperty(e.layout),legends:t.legends,autosize:t.signalRef("autosize"),mark:r,pulse:W(u)}));t.operators.pop(),t.pushState(W(u),W(o),null),BC(e,t,i),t.operators.push(o);let s=t.add(cC({mark:r,pulse:W(o)}));return s=t.add(gC({pulse:W(s)})),s=t.add(Mi({pulse:W(s)})),t.addData("root",new xi(t,a,a,s)),t}function Xa(e,t){return t&&t.signal?{name:e,update:t.signal}:{name:e,value:t}}function lU(e,t){const n=u=>hn(e[u],t[u]),r=[Xa("background",n("background")),Xa("autosize",yN(n("autosize"))),Xa("padding",xN(n("padding"))),Xa("width",n("width")||0),Xa("height",n("height")||0)],i=r.reduce((u,o)=>(u[o.name]=o,u),{}),a={};return V(e.signals).forEach(u=>{Z(i,u.name)?u=te(i[u.name],u):r.push(u),a[u.name]=u}),V(t.signals).forEach(u=>{!Z(a,u.name)&&!Z(i,u.name)&&r.push(u)}),r}function _C(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 X2(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}_C.prototype=X2.prototype={parse(e){return BC(e,this)},fork(){return new X2(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}),e.refs=null),e},proxy(e){const t=e instanceof $0?W(e):e;return this.add(bP({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;this.root&&(this.root.root=!0);for(e in this.signals)this.signals[e].signal=e;for(e in this.scales)this.scales[e].scale=e;function n(r,i,a){let u,o;r&&(u=r.data||(r.data={}),o=u[i]||(u[i]=[]),o.push(a))}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(const r in t.index)n(t.index[r],e,"index:"+r)}return this},pushState(e,t,n){this._encode.push(W(this.add(Mi({pulse:e})))),this._parent.push(t),this._lookup.push(n?W(this.proxy(n)):null),this._markpath.push(-1)},popState(){this._encode.pop(),this._parent.pop(),this._lookup.pop(),this._markpath.pop()},parent(){return oe(this._parent)},encode(){return oe(this._encode)},lookup(){return oe(this._lookup)},markpath(){const e=this._markpath;return++e[e.length-1]},fieldRef(e,t){if(be(e))return Vu(e,t);e.signal||$("Unsupported field reference: "+G(e));const n=e.signal;let r=this.field[n];if(!r){const i={name:this.signalRef(n)};t&&(i.as=t),this.field[n]=r=W(this.add(fP(i)))}return r},compareRef(e){let t=!1;const n=a=>Oe(a)?(t=!0,this.signalRef(a.signal)):XN(a)?(t=!0,this.exprRef(a.expr)):a,r=V(e.field).map(n),i=V(e.order).map(n);return t?W(this.add(O2({fields:r,orders:i}))):R2(r,i)},keyRef(e,t){let n=!1;const r=a=>Oe(a)?(n=!0,W(i[a.signal])):a,i=this.signals;return e=V(e).map(r),n?W(this.add(cP({fields:e,flat:t}))):YN(e,t)},sortRef(e){if(!e)return e;const t=Gf(e.op,e.field),n=e.order||HN;return n.signal?W(this.add(O2({fields:t,orders:this.signalRef(n.signal)}))):R2(t,n)},event(e,t){const n=e+":"+t;if(!this.events[n]){const r=this.id();this.streams.push({id:r,source:e,type:t}),this.events[n]=r}return this.events[n]},hasOwnSignal(e){return Z(this.signals,e)},addSignal(e,t){this.hasOwnSignal(e)&&$("Duplicate signal name: "+G(e));const n=t instanceof $0?t:this.add(Nl(t));return this.signals[e]=n},getSignal(e){return this.signals[e]||$("Unrecognized signal name: "+G(e)),this.signals[e]},signalRef(e){return this.signals[e]?W(this.signals[e]):(Z(this.lambdas,e)||(this.lambdas[e]=this.add(Nl(null))),W(this.lambdas[e]))},parseLambdas(){const e=Object.keys(this.lambdas);for(let t=0,n=e.length;t<n;++t){const r=e[t],i=Nn(r,this),a=this.lambdas[r];a.params=i.$params,a.update=i.$expr}},property(e){return e&&e.signal?this.signalRef(e.signal):e},objectProperty(e){return!e||!ne(e)?e:this.signalRef(e.signal||bp(e))},exprRef(e,t){const n={expr:Nn(e,this)};return t&&(n.expr.$name=t),W(this.add(sP(n)))},addBinding(e,t){this.bindings||$("Nested signals do not support binding: "+G(e)),this.bindings.push(te({signal:e},t))},addScaleProj(e,t){Z(this.scales,e)&&$("Duplicate scale or projection name: "+G(e)),this.scales[e]=this.add(t)},addScale(e,t){this.addScaleProj(e,EP(t))},addProjection(e,t){this.addScaleProj(e,xP(t))},getScale(e){return this.scales[e]||$("Unrecognized scale name: "+G(e)),this.scales[e]},scaleRef(e){return W(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 Z(this.data,e)&&$("Duplicate data set name: "+G(e)),this.data[e]=t},getData(e){return this.data[e]||$("Undefined data set name: "+G(e)),this.data[e]},addDataPipeline(e,t){return Z(this.data,e)&&$("Duplicate data set name: "+G(e)),this.addData(e,xi.fromEntries(this,t))}};function bp(e){return(j(e)?fU:cU)(e)}function fU(e){const t=e.length;let n="[";for(let r=0;r<t;++r){const i=e[r];n+=(r>0?",":"")+(ne(i)?i.signal||bp(i):G(i))}return n+"]"}function cU(e){let t="{",n=0,r,i;for(r in e)i=e[r],t+=(++n>1?",":"")+G(r)+":"+(ne(i)?i.signal||bp(i):G(i));return t+"}"}function hU(){const e="sans-serif",r="#4c78a8",i="#000",a="#888",u="#ddd";return{description:"Vega visualization",padding:0,autosize:"pad",background:null,events:{defaults:{allow:["wheel"]}},group:null,mark:null,arc:{fill:r},area:{fill:r},image:null,line:{stroke:r,strokeWidth:2},path:{stroke:r},rect:{fill:r},rule:{stroke:i},shape:{stroke:r},symbol:{fill:r,size:64},text:{fill:i,font:e,fontSize:11},trail:{fill:r,size:2},style:{"guide-label":{fill:i,font:e,fontSize:10},"guide-title":{fill:i,font:e,fontSize:11,fontWeight:"bold"},"group-title":{fill:i,font:e,fontSize:13,fontWeight:"bold"},"group-subtitle":{fill:i,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:u},view:{fill:"transparent"}},title:{orient:"top",anchor:"middle",offset:4,subtitlePadding:3},axis:{minExtent:0,maxExtent:200,bandPosition:.5,domain:!0,domainWidth:1,domainColor:a,grid:!1,gridWidth:1,gridColor:u,labels:!0,labelAngle:0,labelLimit:180,labelOffset:0,labelPadding:2,ticks:!0,tickColor:a,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:u,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:a,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 dU(e,t,n){return ne(e)||$("Input Vega specification must be an object."),t=tb(hU(),t,e.config),sU(e,new _C(t,n)).toRuntime()}const gU="RawCode",pU="Literal",mU="Property",yU="Identifier",vU="ArrayExpression",xU="BinaryExpression",bU="CallExpression",AU="ConditionalExpression",EU="LogicalExpression",wU="MemberExpression",CU="ObjectExpression",DU="UnaryExpression";function Cn(e){this.type=e}Cn.prototype.visit=function(e){let t,n,r;if(e(this))return 1;for(t=FU(this),n=0,r=t.length;n<r;++n)if(t[n].visit(e))return 1};function FU(e){switch(e.type){case vU:return e.elements;case xU:case EU:return[e.left,e.right];case bU:return[e.callee].concat(e.arguments);case AU:return[e.test,e.consequent,e.alternate];case wU:return[e.object,e.property];case CU:return e.properties;case mU:return[e.key,e.value];case DU:return[e.argument];case yU:case pU:case gU:default:return[]}}var Yn,q,_,at,ye,ec=1,$o=2,bi=3,Gr=4,tc=5,$i=6,kt=7,Bo=8,kU=9;Yn={};Yn[ec]="Boolean";Yn[$o]="<end>";Yn[bi]="Identifier";Yn[Gr]="Keyword";Yn[tc]="Null";Yn[$i]="Numeric";Yn[kt]="Punctuator";Yn[Bo]="String";Yn[kU]="RegularExpression";var MU="ArrayExpression",SU="BinaryExpression",$U="CallExpression",BU="ConditionalExpression",RC="Identifier",_U="Literal",RU="LogicalExpression",TU="MemberExpression",OU="ObjectExpression",zU="Property",LU="UnaryExpression",Ue="Unexpected token %0",NU="Unexpected number",PU="Unexpected string",IU="Unexpected identifier",UU="Unexpected reserved word",qU="Unexpected end of input",L0="Invalid regular expression",ah="Invalid regular expression: missing /",TC="Octal literals are not allowed in strict mode.",jU="Duplicate data property in object literal not allowed in strict mode",Ye="ILLEGAL",Zu="Disabled.",WU=new 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]"),YU=new 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 nc(e,t){if(!e)throw new Error("ASSERT: "+t)}function Qn(e){return e>=48&&e<=57}function Ap(e){return"0123456789abcdefABCDEF".includes(e)}function Su(e){return"01234567".includes(e)}function HU(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 Qu(e){return e===10||e===13||e===8232||e===8233}function _o(e){return e===36||e===95||e>=65&&e<=90||e>=97&&e<=122||e===92||e>=128&&WU.test(String.fromCharCode(e))}function Pl(e){return e===36||e===95||e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||e===92||e>=128&&YU.test(String.fromCharCode(e))}const GU={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 OC(){for(;_<at;){const e=q.charCodeAt(_);if(HU(e)||Qu(e))++_;else break}}function N0(e){var t,n,r,i=0;for(n=e==="u"?4:2,t=0;t<n;++t)_<at&&Ap(q[_])?(r=q[_++],i=i*16+"0123456789abcdef".indexOf(r.toLowerCase())):ce({},Ue,Ye);return String.fromCharCode(i)}function VU(){var e,t,n,r;for(e=q[_],t=0,e==="}"&&ce({},Ue,Ye);_<at&&(e=q[_++],!!Ap(e));)t=t*16+"0123456789abcdef".indexOf(e.toLowerCase());return(t>1114111||e!=="}")&&ce({},Ue,Ye),t<=65535?String.fromCharCode(t):(n=(t-65536>>10)+55296,r=(t-65536&1023)+56320,String.fromCharCode(n,r))}function zC(){var e,t;for(e=q.charCodeAt(_++),t=String.fromCharCode(e),e===92&&(q.charCodeAt(_)!==117&&ce({},Ue,Ye),++_,e=N0("u"),(!e||e==="\\"||!_o(e.charCodeAt(0)))&&ce({},Ue,Ye),t=e);_<at&&(e=q.charCodeAt(_),!!Pl(e));)++_,t+=String.fromCharCode(e),e===92&&(t=t.substr(0,t.length-1),q.charCodeAt(_)!==117&&ce({},Ue,Ye),++_,e=N0("u"),(!e||e==="\\"||!Pl(e.charCodeAt(0)))&&ce({},Ue,Ye),t+=e);return t}function XU(){var e,t;for(e=_++;_<at;){if(t=q.charCodeAt(_),t===92)return _=e,zC();if(Pl(t))++_;else break}return q.slice(e,_)}function KU(){var e,t,n;return e=_,t=q.charCodeAt(_)===92?zC():XU(),t.length===1?n=bi:GU.hasOwnProperty(t)?n=Gr:t==="null"?n=tc:t==="true"||t==="false"?n=ec:n=bi,{type:n,value:t,start:e,end:_}}function uh(){var e=_,t=q.charCodeAt(_),n,r=q[_],i,a,u;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++_,{type:kt,value:String.fromCharCode(t),start:e,end:_};default:if(n=q.charCodeAt(_+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 _+=2,{type:kt,value:String.fromCharCode(t)+String.fromCharCode(n),start:e,end:_};case 33:case 61:return _+=2,q.charCodeAt(_)===61&&++_,{type:kt,value:q.slice(e,_),start:e,end:_}}}if(u=q.substr(_,4),u===">>>=")return _+=4,{type:kt,value:u,start:e,end:_};if(a=u.substr(0,3),a===">>>"||a==="<<="||a===">>=")return _+=3,{type:kt,value:a,start:e,end:_};if(i=a.substr(0,2),r===i[1]&&"+-<>&|".includes(r)||i==="=>")return _+=2,{type:kt,value:i,start:e,end:_};if(i==="//"&&ce({},Ue,Ye),"<>=!+-*%&|^/".includes(r))return++_,{type:kt,value:r,start:e,end:_};ce({},Ue,Ye)}function ZU(e){let t="";for(;_<at&&Ap(q[_]);)t+=q[_++];return t.length===0&&ce({},Ue,Ye),_o(q.charCodeAt(_))&&ce({},Ue,Ye),{type:$i,value:parseInt("0x"+t,16),start:e,end:_}}function QU(e){let t="0"+q[_++];for(;_<at&&Su(q[_]);)t+=q[_++];return(_o(q.charCodeAt(_))||Qn(q.charCodeAt(_)))&&ce({},Ue,Ye),{type:$i,value:parseInt(t,8),octal:!0,start:e,end:_}}function K2(){var e,t,n;if(n=q[_],nc(Qn(n.charCodeAt(0))||n===".","Numeric literal must start with a decimal digit or a decimal point"),t=_,e="",n!=="."){if(e=q[_++],n=q[_],e==="0"){if(n==="x"||n==="X")return++_,ZU(t);if(Su(n))return QU(t);n&&Qn(n.charCodeAt(0))&&ce({},Ue,Ye)}for(;Qn(q.charCodeAt(_));)e+=q[_++];n=q[_]}if(n==="."){for(e+=q[_++];Qn(q.charCodeAt(_));)e+=q[_++];n=q[_]}if(n==="e"||n==="E")if(e+=q[_++],n=q[_],(n==="+"||n==="-")&&(e+=q[_++]),Qn(q.charCodeAt(_)))for(;Qn(q.charCodeAt(_));)e+=q[_++];else ce({},Ue,Ye);return _o(q.charCodeAt(_))&&ce({},Ue,Ye),{type:$i,value:parseFloat(e),start:t,end:_}}function JU(){var e="",t,n,r,i,a=!1;for(t=q[_],nc(t==="'"||t==='"',"String literal must starts with a quote"),n=_,++_;_<at;)if(r=q[_++],r===t){t="";break}else if(r==="\\")if(r=q[_++],!r||!Qu(r.charCodeAt(0)))switch(r){case"u":case"x":q[_]==="{"?(++_,e+=VU()):e+=N0(r);break;case"n":e+=`
|
|
14
|
+
`;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:Su(r)?(i="01234567".indexOf(r),i!==0&&(a=!0),_<at&&Su(q[_])&&(a=!0,i=i*8+"01234567".indexOf(q[_++]),"0123".includes(r)&&_<at&&Su(q[_])&&(i=i*8+"01234567".indexOf(q[_++]))),e+=String.fromCharCode(i)):e+=r;break}else r==="\r"&&q[_]===`
|
|
15
|
+
`&&++_;else{if(Qu(r.charCodeAt(0)))break;e+=r}return t!==""&&ce({},Ue,Ye),{type:Bo,value:e,octal:a,start:n,end:_}}function eq(e,t){let n=e;t.includes("u")&&(n=n.replace(/\\u\{([0-9a-fA-F]+)\}/g,(r,i)=>{if(parseInt(i,16)<=1114111)return"x";ce({},L0)}).replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,"x"));try{new RegExp(n)}catch{ce({},L0)}try{return new RegExp(e,t)}catch{return null}}function tq(){var e,t,n,r,i;for(e=q[_],nc(e==="/","Regular expression literal must start with a slash"),t=q[_++],n=!1,r=!1;_<at;)if(e=q[_++],t+=e,e==="\\")e=q[_++],Qu(e.charCodeAt(0))&&ce({},ah),t+=e;else if(Qu(e.charCodeAt(0)))ce({},ah);else if(n)e==="]"&&(n=!1);else if(e==="/"){r=!0;break}else e==="["&&(n=!0);return r||ce({},ah),i=t.substr(1,t.length-2),{value:i,literal:t}}function nq(){var e,t,n;for(t="",n="";_<at&&(e=q[_],!!Pl(e.charCodeAt(0)));)++_,e==="\\"&&_<at?ce({},Ue,Ye):(n+=e,t+=e);return n.search(/[^gimuy]/g)>=0&&ce({},L0,n),{value:n,literal:t}}function rq(){var e,t,n,r;return ye=null,OC(),e=_,t=tq(),n=nq(),r=eq(t.value,n.value),{literal:t.literal+n.literal,value:r,regex:{pattern:t.value,flags:n.value},start:e,end:_}}function iq(e){return e.type===bi||e.type===Gr||e.type===ec||e.type===tc}function LC(){if(OC(),_>=at)return{type:$o,start:_,end:_};const e=q.charCodeAt(_);return _o(e)?KU():e===40||e===41||e===59?uh():e===39||e===34?JU():e===46?Qn(q.charCodeAt(_+1))?K2():uh():Qn(e)?K2():uh()}function $t(){const e=ye;return _=e.end,ye=LC(),_=e.end,e}function NC(){const e=_;ye=LC(),_=e}function aq(e){const t=new Cn(MU);return t.elements=e,t}function Z2(e,t,n){const r=new Cn(e==="||"||e==="&&"?RU:SU);return r.operator=e,r.left=t,r.right=n,r}function uq(e,t){const n=new Cn($U);return n.callee=e,n.arguments=t,n}function oq(e,t,n){const r=new Cn(BU);return r.test=e,r.consequent=t,r.alternate=n,r}function Ep(e){const t=new Cn(RC);return t.name=e,t}function yu(e){const t=new Cn(_U);return t.value=e.value,t.raw=q.slice(e.start,e.end),e.regex&&(t.raw==="//"&&(t.raw="/(?:)/"),t.regex=e.regex),t}function Q2(e,t,n){const r=new Cn(TU);return r.computed=e==="[",r.object=t,r.property=n,r.computed||(n.member=!0),r}function sq(e){const t=new Cn(OU);return t.properties=e,t}function J2(e,t,n){const r=new Cn(zU);return r.key=t,r.value=n,r.kind=e,r}function lq(e,t){const n=new Cn(LU);return n.operator=e,n.argument=t,n.prefix=!0,n}function ce(e,t){var n,r=Array.prototype.slice.call(arguments,2),i=t.replace(/%(\d)/g,(a,u)=>(nc(u<r.length,"Message reference must be in range"),r[u]));throw n=new Error(i),n.index=_,n.description=i,n}function rc(e){e.type===$o&&ce(e,qU),e.type===$i&&ce(e,NU),e.type===Bo&&ce(e,PU),e.type===bi&&ce(e,IU),e.type===Gr&&ce(e,UU),ce(e,Ue,e.value)}function ut(e){const t=$t();(t.type!==kt||t.value!==e)&&rc(t)}function we(e){return ye.type===kt&&ye.value===e}function oh(e){return ye.type===Gr&&ye.value===e}function fq(){const e=[];for(_=ye.start,ut("[");!we("]");)we(",")?($t(),e.push(null)):(e.push(Ai()),we("]")||ut(","));return $t(),aq(e)}function ev(){_=ye.start;const e=$t();return e.type===Bo||e.type===$i?(e.octal&&ce(e,TC),yu(e)):Ep(e.value)}function cq(){var e,t,n,r;if(_=ye.start,e=ye,e.type===bi)return n=ev(),ut(":"),r=Ai(),J2("init",n,r);if(e.type===$o||e.type===kt)rc(e);else return t=ev(),ut(":"),r=Ai(),J2("init",t,r)}function hq(){var e=[],t,n,r,i={},a=String;for(_=ye.start,ut("{");!we("}");)t=cq(),t.key.type===RC?n=t.key.name:n=a(t.key.value),r="$"+n,Object.prototype.hasOwnProperty.call(i,r)?ce({},jU):i[r]=!0,e.push(t),we("}")||ut(",");return ut("}"),sq(e)}function dq(){ut("(");const e=wp();return ut(")"),e}const gq={if:1};function pq(){var e,t,n;if(we("("))return dq();if(we("["))return fq();if(we("{"))return hq();if(e=ye.type,_=ye.start,e===bi||gq[ye.value])n=Ep($t().value);else if(e===Bo||e===$i)ye.octal&&ce(ye,TC),n=yu($t());else{if(e===Gr)throw new Error(Zu);e===ec?(t=$t(),t.value=t.value==="true",n=yu(t)):e===tc?(t=$t(),t.value=null,n=yu(t)):we("/")||we("/=")?(n=yu(rq()),NC()):rc($t())}return n}function mq(){const e=[];if(ut("("),!we(")"))for(;_<at&&(e.push(Ai()),!we(")"));)ut(",");return ut(")"),e}function yq(){_=ye.start;const e=$t();return iq(e)||rc(e),Ep(e.value)}function vq(){return ut("."),yq()}function xq(){ut("[");const e=wp();return ut("]"),e}function bq(){var e,t,n;for(e=pq();;)if(we("."))n=vq(),e=Q2(".",e,n);else if(we("("))t=mq(),e=uq(e,t);else if(we("["))n=xq(),e=Q2("[",e,n);else break;return e}function tv(){const e=bq();if(ye.type===kt&&(we("++")||we("--")))throw new Error(Zu);return e}function Ss(){var e,t;if(ye.type!==kt&&ye.type!==Gr)t=tv();else{if(we("++")||we("--"))throw new Error(Zu);if(we("+")||we("-")||we("~")||we("!"))e=$t(),t=Ss(),t=lq(e.value,t);else{if(oh("delete")||oh("void")||oh("typeof"))throw new Error(Zu);t=tv()}}return t}function nv(e){let t=0;if(e.type!==kt&&e.type!==Gr)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;break}return t}function Aq(){var e,t,n,r,i,a,u,o,s,l;if(e=ye,s=Ss(),r=ye,i=nv(r),i===0)return s;for(r.prec=i,$t(),t=[e,ye],u=Ss(),a=[s,r,u];(i=nv(ye))>0;){for(;a.length>2&&i<=a[a.length-2].prec;)u=a.pop(),o=a.pop().value,s=a.pop(),t.pop(),n=Z2(o,s,u),a.push(n);r=$t(),r.prec=i,a.push(r),t.push(ye),n=Ss(),a.push(n)}for(l=a.length-1,n=a[l],t.pop();l>1;)t.pop(),n=Z2(a[l-1].value,a[l-2],n),l-=2;return n}function Ai(){var e,t,n;return e=Aq(),we("?")&&($t(),t=Ai(),ut(":"),n=Ai(),e=oq(e,t,n)),e}function wp(){const e=Ai();if(we(","))throw new Error(Zu);return e}function Eq(e){q=e,_=0,at=q.length,ye=null,NC();const t=wp();if(ye.type!==$o)throw new Error("Unexpect token after expression.");return t}var wq={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 Cq(e){function t(u,o,s,l){let f=e(o[0]);return s&&(f=s+"("+f+")",s.lastIndexOf("new ",0)===0&&(f="("+f+")")),f+"."+u+(l<0?"":l===0?"()":"("+o.slice(1).map(e).join(",")+")")}function n(u,o,s){return l=>t(u,l,o,s)}const 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(u){u.length<3&&$("Missing arguments to clamp function."),u.length>3&&$("Too many arguments to clamp function.");const o=u.map(e);return"Math.max("+o[1]+", Math.min("+o[2]+","+o[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(u){u.length<3&&$("Missing arguments to if function."),u.length>3&&$("Too many arguments to if function.");const o=u.map(e);return"("+o[0]+"?"+o[1]+":"+o[2]+")"}}}function Dq(e){const t=e&&e.length-1;return t&&(e[0]==='"'&&e[t]==='"'||e[0]==="'"&&e[t]==="'")?e.slice(1,-1):e}function Fq(e){e=e||{};const t=e.allowed?jt(e.allowed):{},n=e.forbidden?jt(e.forbidden):{},r=e.constants||wq,i=(e.functions||Cq)(c),a=e.globalvar,u=e.fieldvar,o=ee(a)?a:g=>`${a}["${g}"]`;let s={},l={},f=0;function c(g){if(be(g))return g;const p=h[g.type];return p==null&&$("Unsupported type: "+g.type),p(g)}const h={Literal:g=>g.raw,Identifier:g=>{const p=g.name;return f>0?p:Z(n,p)?$("Illegal identifier: "+p):Z(r,p)?r[p]:Z(t,p)?p:(s[p]=1,o(p))},MemberExpression:g=>{const p=!g.computed,m=c(g.object);p&&(f+=1);const y=c(g.property);return m===u&&(l[Dq(y)]=1),p&&(f-=1),m+(p?"."+y:"["+y+"]")},CallExpression:g=>{g.callee.type!=="Identifier"&&$("Illegal callee type: "+g.callee.type);const p=g.callee.name,m=g.arguments,y=Z(i,p)&&i[p];return y||$("Unrecognized function: "+p),ee(y)?y(m):y+"("+m.map(c).join(",")+")"},ArrayExpression:g=>"["+g.elements.map(c).join(",")+"]",BinaryExpression:g=>"("+c(g.left)+" "+g.operator+" "+c(g.right)+")",UnaryExpression:g=>"("+g.operator+c(g.argument)+")",ConditionalExpression:g=>"("+c(g.test)+"?"+c(g.consequent)+":"+c(g.alternate)+")",LogicalExpression:g=>"("+c(g.left)+g.operator+c(g.right)+")",ObjectExpression:g=>"{"+g.properties.map(c).join(",")+"}",Property:g=>{f+=1;const p=c(g.key);return f-=1,p+":"+c(g.value)}};function d(g){const p={code:c(g),globals:Object.keys(s),fields:Object.keys(l)};return s={},l={},p}return d.functions=i,d.constants=r,d}var kq="5.33.0";te(ua,W7,BB,l_,I_,G_,bR,J_,ER,FR,zR,jR);const Bq=Object.freeze(Object.defineProperty({__proto__:null,Bounds:Be,CanvasHandler:wo,CanvasRenderer:Cl,DATE:Rt,DAY:Qe,DAYOFYEAR:Ln,Dataflow:Zi,Debug:Jx,Error:pd,EventStream:df,Gradient:vE,GroupItem:Ff,HOURS:Wt,Handler:tg,HybridHandler:l3,HybridRenderer:a0,Info:Qx,Item:Df,MILLISECONDS:xn,MINUTES:Yt,MONTH:nt,Marks:Ht,MultiPulse:Od,None:Kx,Operator:xe,Parameters:hf,Pulse:Rr,QUARTER:_t,RenderType:kr,Renderer:Eo,ResourceLoader:DE,SECONDS:an,SVGHandler:KE,SVGRenderer:og,SVGStringRenderer:s3,Scenegraph:qE,TIME_UNITS:kd,Transform:S,View:Xw,WEEK:Te,Warn:Zx,YEAR:He,accessor:Tt,accessorFields:tt,accessorName:Me,array:V,ascending:ao,bandwidthNRD:Pd,bin:fA,bootstrapCI:cA,boundClip:x3,boundContext:vo,boundItem:e0,boundMark:NE,boundStroke:fr,changeset:Di,clampRange:hb,codegenExpression:Fq,compare:bd,constant:ot,cumulativeLogNormal:Yd,cumulativeNormal:pf,cumulativeUniform:Xd,dayofyear:Cb,debounce:Ad,defaultLocale:$d,definition:oA,densityLogNormal:Wd,densityNormal:Id,densityUniform:Vd,domChild:Re,domClear:Xt,domCreate:Dr,domFind:eg,dotbin:hA,error:$,expressionFunction:$e,extend:te,extent:zn,extentIndex:db,falsy:gr,fastmap:Ea,field:nn,flush:gb,font:Bf,fontFamily:Ao,fontSize:Un,format:ls,formatLocale:cl,formats:Rd,hasOwnProperty:Z,id:io,identity:Et,inferType:Kb,inferTypes:Zb,ingest:ge,inherits:L,inrange:Yi,interpolate:B1,interpolateColors:wf,interpolateRange:iE,intersect:p3,intersectBoxLine:Hi,intersectPath:P1,intersectPoint:I1,intersectRule:kE,isArray:j,isBoolean:pb,isDate:_r,isFunction:ee,isIterable:mb,isNumber:zr,isObject:ne,isRegExp:Ed,isString:be,isTuple:ff,key:wd,lerp:yb,lineHeight:Pr,loader:sf,locale:Vb,logger:eb,lruCache:vb,markup:ug,merge:xb,mergeConfig:tb,multiLineOffset:Z1,one:Aa,pad:bb,panLinear:ub,panLog:ob,panPow:sb,panSymlog:lb,parse:dU,parseExpression:Eq,parseSelector:nC,path:j0,pathCurves:z1,pathEqual:b3,pathParse:fa,pathRectangle:AE,pathRender:Pu,pathSymbols:bE,pathTrail:EE,peek:oe,point:Rf,projection:xg,quantileLogNormal:Hd,quantileNormal:mf,quantileUniform:Kd,quantiles:Ld,quantizeInterpolator:aE,quarter:fb,quartiles:Nd,get random(){return un},randomInteger:V9,randomKDE:qd,randomLCG:G9,randomLogNormal:gA,randomMixture:pA,randomNormal:Ud,randomUniform:mA,read:eA,regressionConstant:Zd,regressionExp:vA,regressionLinear:Qd,regressionLoess:AA,regressionLog:yA,regressionPoly:bA,regressionPow:xA,regressionQuad:Jd,renderModule:Tf,repeat:ru,resetDefaultLocale:WM,resetSVGClipId:CE,resetSVGDefIds:X$,responseType:Jb,runtimeContext:Tw,sampleCurve:vf,sampleLogNormal:jd,sampleNormal:gf,sampleUniform:Gd,scale:de,sceneEqual:sg,sceneFromJSON:IE,scenePickVisit:ml,sceneToJSON:PE,sceneVisit:bn,sceneZOrder:U1,scheme:_1,serializeXML:i3,setHybridRendererOptions:Y$,setRandom:Y9,span:uo,splitAccessPath:rf,stringValue:G,textMetrics:Ut,timeBin:Ub,timeFloor:Bb,timeFormatLocale:zu,timeInterval:wa,timeOffset:Tb,timeSequence:Lb,timeUnitSpecifier:wb,timeUnits:Md,toBoolean:Cd,toDate:Dd,toNumber:et,toSet:jt,toString:Fd,transform:sA,transforms:ua,truncate:Ab,truthy:rn,tupleid:Y,typeParsers:Yh,utcFloor:_b,utcInterval:Ca,utcOffset:Ob,utcSequence:Nb,utcdayofyear:kb,utcquarter:cb,utcweek:Mb,version:kq,visitArray:yr,week:Db,writeConfig:md,zero:Ar,zoomLinear:yd,zoomLog:vd,zoomPow:fl,zoomSymlog:xd},Symbol.toStringTag,{value:"Module"}));export{G as $,Zx as W,be as a,ne as b,pb as c,j as d,V as e,ee as f,nC as g,Z as h,zr as i,Et as j,eb as l,tb as m,rf as s,Bq as v,md as w};
|