packages feed

kitchen-sink (empty) → 0.1.0.0

raw patch · 92 files changed

+19937/−0 lines, 92 filesdep +aesondep +asyncdep +base

Dependencies added: aeson, async, base, base64-bytestring, blaze-html, blaze-markup, bytestring, commonmark, commonmark-extensions, containers, crypton, direct-sqlite, directory, either, feed, file-embed, filepath, fsnotify, http-client, http-client-tls, http-reverse-proxy, http-types, kitchen-sink, lens-family-core, lucid, megaparsec, memory, mtl, mustache, optparse-generic, parsec, process, process-extras, prodapi-core, prodapi-proxy, prodapi-web, prometheus-client, purescript-bridge, scientific, servant, servant-server, skylighting, skylighting-core, stm, text, time, tls, tramaj-hs, wai, wai-extra, warp, warp-tls, xml-conduit

Files

+ CHANGELOG.md view
@@ -0,0 +1,3 @@+# 0.1.0.0++Initial release.
+ LICENSE view
@@ -0,0 +1,30 @@+Copyright (c) 2026, Lucas DiCioccio++All rights reserved.++Redistribution and use in source and binary forms, with or without+modification, are permitted provided that the following conditions are met:++    * Redistributions of source code must retain the above copyright+      notice, this list of conditions and the following disclaimer.++    * Redistributions in binary form must reproduce the above+      copyright notice, this list of conditions and the following+      disclaimer in the documentation and/or other materials provided+      with the distribution.++    * Neither the name of Lucas DiCioccio nor the names of other+      contributors may be used to endorse or promote products derived+      from this software without specific prior written permission.++THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ README.md view
@@ -0,0 +1,48 @@+# kitchen-sink++Kitchen-Sink is a static-site generator and a dev/serve HTTP daemon (with an+API gateway / reverse proxy). Pages are CommonMark documents split into typed+sections (JSON metadata, CSS, datasets, tramaj templates, external generators).+The same pipeline powers a one-shot build, a filesystem-watching dev server+that renders targets on the fly, and a multi-site daemon with per-domain TLS.++Documentation: <https://kitchensink-tech.github.io/>++## Install++```bash+cabal install kitchen-sink+```++## Usage++One-shot build of a source directory into an output directory:++```bash+kitchen-sink produce --srcDir website-src --outDir www+```++Dev server (watches the filesystem, serves targets on the fly):++```bash+kitchen-sink serve --srcDir website-src --outDir www --servMode DEV --httpPort 7655+```++Serve a single site in production mode:++```bash+kitchen-sink serve --srcDir website-src --servMode SERVE --httpPort 7655+```++Many sites behind one daemon, configured in JSON (SNI and per-domain proxying):++```bash+kitchen-sink multisite --configFile sites.json --httpPort 80+```++Run `kitchen-sink --help` for the full list of flags. See the website above for+the source format and a complete walkthrough.++## License++BSD-3-Clause. See `LICENSE`.
+ app/Main.hs view
@@ -0,0 +1,6 @@+module Main where++import KitchenSink.Engine (defaultMain)++main :: IO ()+main = defaultMain
+ bridge/Bridge.hs view
@@ -0,0 +1,24 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeOperators #-}++module Bridge where++import Data.Aeson (FromJSON, ToJSON)+import Data.Text (Text)+import GHC.Generics (Generic)+import KitchenSink.Layout.Blog.Analyses (HashTagInfo, ImageInfo, LinkInfo, Node, SnippetInfo, TopicGraph)+import KitchenSink.Layout.Blog.Analyses.SkyLine (SkyLine, SkyLineItem)++data ArticleInfos = ArticleInfos+    { linkInfos :: [LinkInfo]+    , imageInfos :: [ImageInfo]+    , hashtagInfos :: [HashTagInfo]+    , snippetInfos :: [SnippetInfo]+    , skyline :: SkyLine+    }+    deriving (Show, Generic)+instance ToJSON ArticleInfos+instance FromJSON ArticleInfos
+ bridge/Main.hs view
@@ -0,0 +1,54 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE TypeApplications #-}+{-# LANGUAGE TypeOperators #-}++module Main where++import Data.Aeson (FromJSON, ToJSON)+import Data.Proxy (Proxy (..))+import Language.PureScript.Bridge (SumType, buildBridge, defaultBridge, mkSumType, writePSTypes)+import qualified Language.PureScript.Bridge as Bridge+import Options.Generic (Generic, ParseRecord, getRecord, unHelpful, type (<?>))++import Bridge (ArticleInfos)+import KitchenSink.Layout.Blog.Analyses (HashTagInfo, ImageInfo, LinkInfo, Node, SnippetInfo, TopicGraph)+import KitchenSink.Layout.Blog.Analyses.SkyLine (SkyLine, SkyLineItem)+import KitchenSink.Layout.Blog.Summary (GlossaryItem, GlossarySummary, HashTagItem, HashTagSummary, PathList, PreambleSummary, TargetSummary, TargetType, TopicSummary)++data Bridge+    = PureScript+    { outputDir :: FilePath <?> "output directory"+    }+    deriving (Generic, Show)++instance ParseRecord Bridge++pureScriptTypes :: [SumType 'Bridge.Haskell]+pureScriptTypes =+    [ mkSumType (Proxy @TopicGraph)+    , mkSumType (Proxy @Node)+    , mkSumType (Proxy @SkyLine)+    , mkSumType (Proxy @SkyLineItem)+    , mkSumType (Proxy @LinkInfo)+    , mkSumType (Proxy @HashTagInfo)+    , mkSumType (Proxy @ImageInfo)+    , mkSumType (Proxy @ArticleInfos)+    , mkSumType (Proxy @SnippetInfo)+    , mkSumType (Proxy @TargetSummary)+    , mkSumType (Proxy @GlossaryItem)+    , mkSumType (Proxy @GlossarySummary)+    , mkSumType (Proxy @HashTagItem)+    , mkSumType (Proxy @HashTagSummary)+    , mkSumType (Proxy @TargetType)+    , mkSumType (Proxy @PathList)+    , mkSumType (Proxy @PreambleSummary)+    , mkSumType (Proxy @TopicSummary)+    ]++main :: IO ()+main = do+    cmd <- getRecord "kitchen-sink-bridge"+    case cmd of+        PureScript path -> writePSTypes (unHelpful path) (buildBridge defaultBridge) pureScriptTypes
+ kitchen-sink.cabal view
@@ -0,0 +1,206 @@+cabal-version:      3.4+name:               kitchen-sink+version:            0.1.0.0+synopsis:           Static-site generator, dev server and API gateway+description:+    Kitchen-Sink is a static-site generator and a dev/serve HTTP daemon (with+    an API gateway / reverse proxy). Pages are written as CommonMark documents+    split into typed sections (JSON metadata, CSS, datasets, tramaj templates,+    external generators), and the same production pipeline powers a one-shot+    @produce@ command, a filesystem-watching DEV server that renders targets+    on the fly, and a multi-site SERVE daemon with per-domain TLS.+    .+    The package ships the @kitchen-sink@ executable and the library behind it.+    Documentation: <https://kitchensink-tech.github.io/>.+homepage:           https://kitchensink-tech.github.io/+bug-reports:        https://github.com/kitchensink-tech/kitchensink/issues+license:            BSD-3-Clause+license-file:       LICENSE+copyright:          (c) 2026 Lucas DiCioccio+author:             Lucas DiCioccio+maintainer:         lucas@dicioccio.fr+category:           Web+build-type:         Simple+tested-with:        GHC ==9.10.3+extra-doc-files:    CHANGELOG.md+                   , README.md+extra-source-files: scaffolding/*.json+                   , scaffolding/*.md+                   , scaffolding/*.tmpl+                   , scaffolding/js/*.js+                   , scaffolding/css/*.css++source-repository head+    type:     git+    location: https://github.com/kitchensink-tech/kitchensink+    subdir:   hs++flag purescript-bridge+    description: Build the kitchen-sink-purescript-bridge development executable (not part of the Hackage release).+    default:     False+    manual:      True++flag werror+    description: Turn warnings into errors (development and CI).+    default:     False+    manual:      True++library+    exposed-modules: KitchenSink.Layout.Base+                 , KitchenSink.Layout.Blog+                 , KitchenSink.Layout.Blog.Extensions+                 , KitchenSink.Layout.Blog.Targets+                 , KitchenSink.Layout.Blog.Summary+                 , KitchenSink.Layout.Blog.Analyses+                 , KitchenSink.Layout.Blog.Analyses.ArticleInfos+                 , KitchenSink.Layout.Blog.Analyses.GlossaryGrouping+                 , KitchenSink.Layout.Blog.Analyses.FileCount+                 , KitchenSink.Layout.Blog.Analyses.SkyLine+                 , KitchenSink.Layout.Blog.Analyses.SiteGraph+                 , KitchenSink.Layout.Blog.Analyses.TextRender+                 , KitchenSink.Layout.Blog.Analyses.TopicStats+                 , KitchenSink.Layout.Blog.Analyses.Wordcount+                 , KitchenSink.Layout.Blog.Fragments+                 , KitchenSink.Layout.Blog.Destinations+                 , KitchenSink.Layout.Blog.Metadata+                 , KitchenSink.Layout.Blog.SpecialArticles+                 , KitchenSink.Layout.Blog.ArticleTypes+                 , KitchenSink.Core.Assembler+                 , KitchenSink.Core.Assembler.Base+                 , KitchenSink.Core.Assembler.Sections+                 , KitchenSink.Core.Assembler.Sections.CommonMark+                 , KitchenSink.Core.Assembler.Sections.PreRendered+                 , KitchenSink.Core.Assembler.Sections.Json+                 , KitchenSink.Core.Assembler.Sections.Primitives+                 , KitchenSink.Core.Build.Site+                 , KitchenSink.Core.Build.Target+                 , KitchenSink.Core.Build.Trace+                 , KitchenSink.Core.Generator+                 , KitchenSink.Core.Section+                 , KitchenSink.Core.Section.Base+                 , KitchenSink.Core.Section.Parser+                 , KitchenSink.Core.Section.Payloads+                 , KitchenSink.Commonmark.BlogHTML+                 , KitchenSink.Commonmark.Highlighting+                 , KitchenSink.Commonmark.HashTag+                 , KitchenSink.Commonmark.Free+                 , KitchenSink.Engine+                 , KitchenSink.Engine.Api+                 , KitchenSink.Engine.Diagnostics+                 , KitchenSink.Engine.Config+                 , KitchenSink.Engine.Counters+                 , KitchenSink.Engine.Handlers+                 , KitchenSink.Engine.Init+                 , KitchenSink.Engine.MultiSite+                 , KitchenSink.Engine.MultiSiteConfig+                 , KitchenSink.Engine.NewArticle+                 , KitchenSink.Engine.OnTheFly+                 , KitchenSink.Engine.Produce+                 , KitchenSink.Engine.Runtime+                 , KitchenSink.Engine.Serve+                 , KitchenSink.Engine.SiteConfig+                 , KitchenSink.Engine.SiteLoader+                 , KitchenSink.Engine.SiteBuilder+                 , KitchenSink.Engine.Templating+                 , KitchenSink.Engine.Toolbox+                 , KitchenSink.Engine.Dynamic+                 , KitchenSink.Engine.Auth+                 , KitchenSink.Engine.Track+                 , KitchenSink.Engine.Utils+                 , KitchenSink.Prelude++    -- LANGUAGE extensions used by modules in this package.+    default-extensions: OverloadedStrings+                    , TypeApplications+                    , NoImplicitPrelude+    -- other-extensions:+    build-depends:    base >= 4.20.2 && < 4.21+                    , aeson >= 2.2.5 && < 2.3+                    , async >= 2.2.6 && < 2.3+                    , bytestring >= 0.12.2 && < 0.13+                    , containers >= 0.6.8 && < 0.7+                    , directory >= 1.3.8 && < 1.4+                    , file-embed >= 0.0.16 && < 0.1+                    , either >= 5.0.3 && < 5.1+                    , lens-family-core >= 2.1.3 && < 2.2+                    , feed >= 1.3.2 && < 1.4+                    , filepath >= 1.5.4 && < 1.6+                    , http-reverse-proxy >= 0.6.2 && < 0.7+                    , http-client >= 0.7.19 && < 0.8+                    , http-client-tls >= 0.3.6 && < 0.4+                    , process-extras >= 0.7.4 && < 0.8+                    , text >= 2.1.4 && < 2.2+                    , time >= 1.12.2 && < 1.13+                    , commonmark >= 0.3.1 && < 0.4+                    , commonmark-extensions >= 0.2.7 && < 0.3+                    , lucid >= 2.11.20260427 && < 2.12+                    , megaparsec >= 9.8.3 && < 9.9+                    , mtl >= 2.3.1 && < 2.4+                    , mustache >= 2.4.3 && < 2.5+                    , optparse-generic >= 1.5.3 && < 1.6+                    , parsec >= 3.1.18 && < 3.2+                    , blaze-markup >= 0.8.3 && < 0.9+                    , blaze-html >= 0.9.2 && < 0.10+                    , skylighting-core >= 0.15 && < 0.16+                    , skylighting >= 0.15 && < 0.16+                    , servant >= 0.20.3 && < 0.21+                    , servant-server >= 0.20.3 && < 0.21+                    , prometheus-client >= 1.1.2 && < 1.2+                    , process >= 1.6.26 && < 1.7+                    , scientific >= 0.3.9 && < 0.4+                    , prodapi-core >= 0.1.0 && < 0.2+                    , prodapi-web >= 0.1.0 && < 0.2+                    , prodapi-proxy >= 0.2.0 && < 0.3+                    , stm >= 2.5.3 && < 2.6+                    , tramaj-hs >= 0.3.0 && < 0.4+                    , tls >= 2.0.6 && < 2.1+                    , http-types >= 0.12.6 && < 0.13+                    , wai >= 3.2.5 && < 3.3+                    , warp >= 3.4.12 && < 3.5+                    , warp-tls >= 3.4.9 && < 3.5+                    , wai-extra >= 3.1.18 && < 3.2+                    , xml-conduit >= 1.10.1 && < 1.11+                    , fsnotify >= 0.4.4 && < 0.5+                    , direct-sqlite >= 2.3.29 && < 2.4+                    , base64-bytestring >= 1.2.1 && < 1.3+                    , crypton >= 1.0.6 && < 1.1+                    , memory >= 0.18.0 && < 0.19++    hs-source-dirs:   src+    default-language: GHC2021++    ghc-options: -Wall+    if flag(werror)+        ghc-options: -Werror++executable kitchen-sink+    main-is:          Main.hs+    build-depends:    base >= 4.20.2 && < 4.21+                    , kitchen-sink+    ghc-options: -threaded+    default-language: GHC2021+    hs-source-dirs:   app++executable kitchen-sink-tool+    main-is:          Main.hs+    build-depends:    base >= 4.20.2 && < 4.21+                    , kitchen-sink+    ghc-options: -threaded+    default-language: GHC2021+    hs-source-dirs:   toolbox-app++executable kitchen-sink-purescript-bridge+    main-is:          Main.hs+    other-modules:    Bridge+    if flag(purescript-bridge)+        build-depends:    base >= 4.20.2 && < 4.21+                        , aeson >= 2.2.5 && < 2.3+                        , kitchen-sink+                        , optparse-generic >= 1.5.3 && < 1.6+                        , purescript-bridge >= 0.15.0 && < 0.16+                        , text >= 2.1.4 && < 2.2+    else+        buildable: False+    hs-source-dirs:   bridge+    default-language: GHC2021+
+ scaffolding/README.md view
@@ -0,0 +1,32 @@+# Your new Kitchen-Sink site++This directory was bootstrapped by `kitchen-sink init`.++[Kitchen-Sink](https://kitchensink-tech.github.io/) is a static-site+generator and dev/serve daemon for blogs. A page is a `.cmark`/`.md` file+split into *sections* (content, metadata, CSS, …); Kitchen-Sink assembles+those sections into a full site.++- `src/` — your site's source: `kitchen-sink.json` (site config),+  `index.cmark`, `first-article.cmark`, and the other `.cmark` pages, plus+  the CSS/JS assets they reference.+- `www/` — the output directory skeleton. Kitchen-Sink writes generated+  pages here; you don't need to touch it by hand.++## Next steps++Run the dev server, which rebuilds on file changes:++```+kitchen-sink serve --srcDir src --outDir www --servMode DEV --httpPort 7655+```++Then open http://localhost:7655/ and start editing the `.cmark` files in+`src/`.++## Learn more++- [Features](https://kitchensink-tech.github.io/features.html) — what+  Kitchen-Sink can do.+- [Sections](https://kitchensink-tech.github.io/sections.html) — the+  section format used inside each `.cmark` file.
+ scaffolding/css/article.css view
@@ -0,0 +1,331 @@+body, html {+  margin: 0;+  padding: 0;+  background-color: var(--bg);+  color: var(--ink);+}++.main {+  max-width: 70ch;+  padding: 3em 1em;+  margin: auto;+  line-height: 1.75;+  font-size: 1.15em;+  font-family: var(--font-sans);+}++h1,h2,h3,h4,h5,h6 {+  margin: 1.4em 0 0.5em;+  font-weight: 700;+  letter-spacing: -0.01em;+  color: var(--ink);+}++h1 {+  font-size: 1.9em;+}++a {+  color: var(--accent);+  text-decoration-thickness: 1px;+  text-underline-offset: 2px;+}+a:hover {+  color: var(--code-accent);+}++p,ul,ol {+  margin-bottom: 1.5em;+  font-family: var(--font-sans);+  color: var(--ink-soft);+}++code {+  font-family: var(--font-mono);+}++pre {+  background-color: var(--surface-alt);+  border: 1px solid var(--border);+  border-radius: var(--radius);+  padding: 1em;+  overflow-x: auto;+  box-shadow: var(--shadow-sm);+}++/*~~ header ~~~~~~~~~~~~~~~~~~~~*/++header {+  margin-bottom: 2.5em;+  margin-left: auto;+  width: 100%;+}++header p {+  margin-bottom: 0.2em;+  font-style: italic;+  font-size: 0.85em;+  color: var(--muted);+}++/*~~ footer ~~~~~~~~~~~~~~~~~~~~*/++footer {+  margin-top: 2em;+  padding-top: 1.5em;+  border-top: 1px solid var(--border);+}++/*~~ topiclist ~~~~~~~~~~~~~~~~~~~~*/++div.topiclist {+  display: flex;+  flex-wrap: wrap;+  gap: 0.5em;+}++div.topic {+  display: flex;+  align-items: stretch;+  margin-right: 0;+  background-color: var(--accent-soft);+  border-radius: 999px;+  overflow: hidden;+  transition: transform 0.15s ease, box-shadow 0.15s ease;+}+div.topic:hover {+  transform: translateY(-1px);+  box-shadow: var(--shadow-sm);+}++a.topic-link {+  display: flex;+  align-items: center;+  gap: 0.5em;+  padding: 0.3em 0.7em;+  text-decoration: none;+  font-size: 0.75em;+  font-weight: 700;+  color: var(--accent);+}++a.topic-link:hover {+  text-decoration: none;+}++span.topic-name {+   text-transform: uppercase;+}++span.topic-count {+  margin-left: 0;+  color: var(--muted);+  font-weight: 600;+}++/*~~ topic prev/next pagination arrows ~~~~~~~~~~~~~*/++span.topic-nav {+  display: flex;+  align-items: center;+  justify-content: center;+  width: 1.6em;+  flex-shrink: 0;+}++a.topic-nav-link {+  display: flex;+  align-items: center;+  justify-content: center;+  width: 100%;+  height: 100%;+  padding: 0.3em 0;+  text-decoration: none;+  font-size: 0.95em;+  font-weight: 700;+  color: var(--accent);+  background-color: var(--surface);+  transition: color 0.15s ease, background-color 0.15s ease;+}+a.topic-nav-link:hover {+  color: var(--surface);+  background-color: var(--accent);+}++span.topic-nav-boundary {+  font-size: 0.85em;+  color: var(--border);+}++/*~~ callouts / admonitions ~~~~~~~~~~~~~*/++div.callout {+  margin: 1.5em 0;+  padding: 0.9em 1.15em;+  border-left: 4px solid var(--accent);+  border-radius: 0 var(--radius) var(--radius) 0;+  background-color: var(--surface-alt);+}++p.callout-title {+  margin: 0 0 0.3em;+  font-weight: 700;+  text-transform: uppercase;+  font-size: 0.8em;+  letter-spacing: 0.03em;+  color: var(--accent);+}++p.callout-body {+  margin: 0;+  color: var(--ink-soft);+}++div.callout-tip {+  border-left-color: #2e8b57;+}+div.callout-tip > p.callout-title {+  color: #2e8b57;+}++div.callout-warning {+  border-left-color: #c98a1b;+}+div.callout-warning > p.callout-title {+  color: #c98a1b;+}++div.callout-important, div.callout-danger {+  border-left-color: #c0392b;+}+div.callout-important > p.callout-title, div.callout-danger > p.callout-title {+  color: #c0392b;+}++/*~~ faq / accordion ~~~~~~~~~~~~~*/++div.faq {+  margin: 1.5em 0;+  display: flex;+  flex-direction: column;+  gap: 0.6em;+}++details.faq-item {+  padding: 0.7em 1em;+  background-color: var(--surface);+  border: 1px solid var(--border);+  border-radius: var(--radius);+  box-shadow: var(--shadow-sm);+}++summary.faq-question {+  cursor: pointer;+  font-weight: 700;+  color: var(--ink);+  list-style: none;+}+summary.faq-question::-webkit-details-marker {+  display: none;+}+summary.faq-question::before {+  content: "+";+  display: inline-block;+  width: 1.2em;+  color: var(--accent);+  font-weight: 700;+}+details[open] > summary.faq-question::before {+  content: "\2212";+}++p.faq-answer {+  margin: 0.6em 0 0;+  color: var(--ink-soft);+}++/*~~ pricing / comparison table ~~~~~~~~~~~~~*/++table.pricing-table {+  width: 100%;+  margin: 1.5em 0;+  border-collapse: separate;+  border-spacing: 0;+  background-color: var(--surface);+  border: 1px solid var(--border);+  border-radius: var(--radius);+  overflow: hidden;+  box-shadow: var(--shadow-sm);+}++table.pricing-table th, table.pricing-table td {+  padding: 0.7em 1em;+  text-align: center;+  border-bottom: 1px solid var(--border);+}++table.pricing-table th.pricing-feature-header {+  border-right: 1px solid var(--border);+}++table.pricing-table td.pricing-feature-name {+  text-align: left;+  font-weight: 600;+  color: var(--ink);+  border-right: 1px solid var(--border);+  background-color: var(--surface-alt);+}++th.pricing-plan-header {+  background-color: var(--surface-alt);+}++div.pricing-plan-name {+  font-weight: 700;+  color: var(--ink);+}++div.pricing-plan-price {+  margin-top: 0.2em;+  font-size: 0.85em;+  color: var(--accent);+}++table.pricing-table td.pricing-value {+  color: var(--ink-soft);+}++table.pricing-table tr:last-child th, table.pricing-table tr:last-child td {+  border-bottom: none;+}++/*~~ social links ~~~~~~~~~~~~~~~*/++div.social-links {+  display: flex;+  justify-content: center;+  flex-wrap: wrap;+  gap: 0.75em;+}++div.social-links a {+  margin: 0;+  padding: 0.4em 0.9em;+  border: 1px solid var(--border);+  border-radius: 999px;+  text-decoration: none;+  color: var(--ink-soft);+  transition: border-color 0.15s ease, color 0.15s ease, background-color 0.15s ease;+}+div.social-links a:hover {+  border-color: var(--accent);+  color: var(--accent);+  background-color: var(--accent-soft);+}++/*~~ hash tags ~~~~~~~~~~~~~~~*/++span.hashtag {+  color: var(--accent);+  font-weight: 600;+}
+ scaffolding/css/articles-listing.css view
@@ -0,0 +1,57 @@+div.articles-listing-list {+  display: grid;+  grid-template-columns: 1fr 1fr;+  grid-gap: 1.25em;+  justify-content: space-between;+}++div.articles-listing-item {+  padding: 1.25em;+  border-radius: var(--radius);+  background: var(--surface);+  border: 1px solid var(--border);+  box-shadow: var(--shadow-sm);+  margin-bottom: 0;+  transition: box-shadow 0.15s ease, transform 0.15s ease;+}++div.articles-listing-item:hover {+  box-shadow: var(--shadow-md);+  transform: translateY(-2px);+}++div.articles-listing-item > div > a {+  font-size: 1rem;+  font-weight: 700;+  text-decoration: none;+  text-transform: uppercase;+  letter-spacing: 0.01em;+  font-family: var(--font-sans);+  color: var(--ink);+}+div.articles-listing-item > div > a:hover {+  color: var(--accent);+}++div.article-summary {+  font-size: 0.85em;+  color: var(--ink-soft);+}++div.article-stats p {+  margin-bottom: 0.2em;+  font-size: 0.8em;+  color: var(--muted);+}++div.article-summary > p {+  margin-left: 0;+}++div.article-image > img {+  max-width: 100%;+  min-width: 100%;+  object-fit: contain;+  display: block;+  border-radius: var(--radius);+}
+ scaffolding/css/colors.css view
@@ -0,0 +1,41 @@+:root {+  --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;+  --font-mono: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;++  --bg: #faf9f6;+  --surface: #ffffff;+  --surface-alt: #f3f1ec;+  --ink: #1c1b19;+  --ink-soft: #514d46;+  --muted: #8d867a;+  --border: #e7e3da;+  --accent: #3a5fd9;+  --accent-soft: #e8ecfb;+  --code-accent: #c0562f;+  --radius: 12px;+  --shadow-sm: 0 1px 2px rgba(20,20,20,0.06), 0 1px 1px rgba(20,20,20,0.04);+  --shadow-md: 0 12px 32px rgba(20,20,20,0.08);++  /* kept for backwards compatibility with any content still referencing them */+  --color-primary: var(--surface-alt);+  --color-secondary: var(--accent-soft);+  --color-highlight-background: var(--surface-alt);+  --color-highlight-halo: var(--accent-soft);+}++@media (prefers-color-scheme: dark) {+  :root {+    --bg: #15181b;+    --surface: #1b1f23;+    --surface-alt: #21262b;+    --ink: #e8e6e1;+    --ink-soft: #c7c2b8;+    --muted: #8b8880;+    --border: #2a2e33;+    --accent: #7f9dff;+    --accent-soft: rgba(127,157,255,0.14);+    --code-accent: #e2915f;+    --shadow-sm: 0 1px 2px rgba(0,0,0,0.4);+    --shadow-md: 0 16px 40px rgba(0,0,0,0.45);+  }+}
+ scaffolding/css/corporate.css view
@@ -0,0 +1,211 @@+/* Theme and layout for the `corporate` article layout: a landing/marketing+   page rendered as full-width sections (hero, feature grid, pricing table,+   call to action, testimonial strip) instead of a narrow reading column.+   A small, neutral corporate palette on top of the site's own colors.css+   variables, dark-mode aware via the same `prefers-color-scheme` query. */++:root {+  --corp-bg: #f4f6fb;+  --corp-surface: #ffffff;+  --corp-accent: #2454e0;+  --corp-accent-ink: #ffffff;+  --corp-accent-soft: #e6ecfd;+}++@media (prefers-color-scheme: dark) {+  :root {+    --corp-bg: #11151d;+    --corp-surface: #171c26;+    --corp-accent: #7c9bff;+    --corp-accent-ink: #0c1020;+    --corp-accent-soft: rgba(124, 155, 255, 0.14);+  }+}++.main.corporate-layout {+  max-width: none;+  padding: 0;+  margin: 0;+  font-size: 1.05em;+}++.main.corporate-layout .main-article {+  display: flex;+  flex-direction: column;+}++.main.corporate-layout > article {+  display: block;+}++/* every main-content/callout/pricing section is its own full-bleed band,+   with its content kept to a comfortable reading width */+.main.corporate-layout .main-section {+  padding: 4em 1.5em;+  max-width: 1100px;+  margin: 0 auto;+}++.main.corporate-layout table.pricing-table {+  max-width: 900px;+  margin: 1.5em auto;+}++/* a section whose only content is a hero goes edge-to-edge instead of+   sitting inside the 1100px column (falls back gracefully to the nested+   padding on browsers without :has()) */+.main.corporate-layout .main-section:has(> .hero) {+  padding: 0;+  max-width: none;+}++/* ~~ hero: the first section of a corporate page ~~~~~~~~~~~~~~~~~~~~~~~ */++.hero {+  text-align: center;+  padding: 5em 1.5em;+  background: linear-gradient(180deg, var(--corp-surface), var(--corp-bg));+  border-bottom: 1px solid var(--border);+}++.hero h1 {+  margin-top: 0;+  font-size: 2.6em;+}++.hero .hero-subtitle {+  max-width: 60ch;+  margin: 0 auto 1.75em;+  font-size: 1.2em;+  color: var(--muted);+}++.hero .hero-actions {+  display: flex;+  gap: 1em;+  justify-content: center;+  flex-wrap: wrap;+}++/* ~~ buttons, used by the hero and the call-to-action ~~~~~~~~~~~~~~~~~~ */++a.button {+  display: inline-block;+  padding: 0.75em 1.6em;+  border-radius: var(--radius);+  background-color: var(--corp-accent);+  color: var(--corp-accent-ink);+  font-weight: 700;+  text-decoration: none;+}++a.button:hover {+  opacity: 0.9;+}++a.button.secondary {+  background-color: transparent;+  color: var(--corp-accent);+  border: 1px solid var(--corp-accent);+}++/* ~~ feature grid ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */++.feature-grid {+  display: grid;+  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));+  gap: 2em;+}++.feature-card {+  padding: 1.6em;+  background-color: var(--surface);+  border: 1px solid var(--border);+  border-radius: var(--radius);+  box-shadow: var(--shadow-sm);+}++.feature-card h3 {+  margin-top: 0;+}++.feature-card p {+  margin-bottom: 0;+}++/* ~~ call to action banner ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */++.cta-banner {+  text-align: center;+  padding: 3em 2em;+  background-color: var(--corp-accent-soft);+  border-radius: var(--radius);+}++.cta-banner h2 {+  margin-top: 0;+}++/* ~~ testimonial strip ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */++.testimonial-strip {+  display: grid;+  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));+  gap: 2em;+}++.testimonial {+  padding: 1.6em;+  background-color: var(--surface-alt);+  border-radius: var(--radius);+  font-style: italic;+  color: var(--ink-soft);+}++.testimonial .testimonial-author {+  display: block;+  margin-top: 1em;+  font-style: normal;+  font-weight: 700;+  color: var(--muted);+}++/* ~~ in-page footer columns, from the tramaj `corporate/footer-columns` ~~ */+/* component: link columns inside the page body, distinct from the        */+/* site-wide <footer class="site-footer"> chrome rendered below it.       */++.corp-footer-columns {+  display: flex;+  flex-wrap: wrap;+  gap: 2em;+}++.corp-footer-column h2 {+  font-size: 1em;+  margin-bottom: 0.5em;+}++.corp-footer-column ul {+  list-style: none;+  margin: 0;+  padding: 0;+}++.corp-footer-column li {+  margin-bottom: 0.4em;+}++/* single column, tighter padding on narrow screens */+@media (max-width: 700px) {+  .hero {+    padding: 3em 1em;+  }++  .hero h1 {+    font-size: 1.9em;+  }++  .main.corporate-layout .main-section {+    padding: 2.5em 1em;+  }+}
+ scaffolding/css/dev.css view
@@ -0,0 +1,9 @@+#histogram {+  height: 300px;+}++.todo {+  color: red;+  font-weight: bolder;+}+
+ scaffolding/css/documentation.css view
@@ -0,0 +1,95 @@+/* Layout of the `documentation` article layout: a table of contents next to+   the page, previous/next links below it. */++.main.doc-layout {+  max-width: 105ch;+  display: grid;+  grid-template-columns: 15em minmax(0, 1fr);+  gap: 2.5em;+  align-items: start;+}++.doc-toc {+  position: sticky;+  top: 1em;+  max-height: calc(100vh - 2em);+  overflow-y: auto;+  padding: 0.5em 1em 0.5em 0;+  border-right: 1px solid var(--border);+  font-size: 0.85em;+  line-height: 1.4;+  font-family: var(--font-sans);+}++.doc-toc:empty {+  border-right: none;+}++.doc-toc-title {+  margin: 0 0 0.6em;+  font-weight: 700;+  color: var(--muted);+  text-transform: uppercase;+  letter-spacing: 0.06em;+  font-size: 0.8em;+}++.doc-toc ul {+  list-style: none;+  margin: 0;+  padding: 0;+}++.doc-toc li {+  margin: 0.35em 0;+}++.doc-toc-level-3 {+  padding-left: 1em;+}++.doc-toc a {+  color: var(--ink-soft);+  text-decoration: none;+}++.doc-toc a:hover {+  color: var(--accent);+}++.doc-pager {+  display: flex;+  justify-content: space-between;+  gap: 1em;+  margin-top: 3em;+  padding-top: 1em;+  border-top: 1px solid var(--border);+  font-size: 0.9em;+}++.doc-pager .doc-next {+  margin-left: auto;+  text-align: right;+}++.doc-pager-label {+  display: block;+  color: var(--muted);+  font-size: 0.85em;+}++/* single column on narrow screens, the table of contents comes first */+@media (max-width: 800px) {+  .main.doc-layout {+    display: block;+  }++  .doc-toc {+    position: static;+    max-height: none;+    margin-bottom: 1.5em;+    padding: 0 0 1em;+    border-right: none;+    border-bottom: 1px solid var(--border);+  }+}
+ scaffolding/css/index.css view
@@ -0,0 +1,90 @@+#site-navigation {+  display: none;+}++body, html {+  margin: 0;+  padding: 0;+  background-color: var(--bg);+  color: var(--ink);+}++main {+  max-width: 42rem;+  padding: 2rem;+  margin: auto;+}++html {+  max-width: 70ch;+  padding: 3em 1em;+  margin: auto;+  line-height: 1.75;+  font-size: 1.2em;+  font-family: var(--font-sans);+}++h1,h2,h3,h4,h5,h6 {+  margin: 2em 0 0.6em;+  font-weight: 700;+  letter-spacing: -0.01em;+  color: var(--ink);+}++a {+  color: var(--accent);+}+a:hover {+  color: var(--code-accent);+}++p,ul,ol {+  margin-bottom: 1.5em;+  color: var(--ink-soft);+  font-family: var(--font-sans);+}++/*~~ latest-article listing  ~~~~~~~~~~~~~*/++nav.articles-listing:first-of-type {+  margin: auto;+  width: 70%;+}++nav.articles-listing:first-of-type >.articles-listing-list {+  display: block;+}++/*~~ topics listing  ~~~~~~~~~~~~~*/++.topics-listing {+  margin: 2em 0 0 0;+  padding: 0.5em 1em 3em 1em;+  background-color: var(--surface-alt);+  border-radius: var(--radius) var(--radius) 0 0;+}++.topics-listing > h2 {+  text-align: center;+}++.topics-listing-list {+  display: grid;+  grid-template-columns: 1fr 1fr 1fr;+  grid-gap: 1em;+}++.topics-listing-list-topic > ul {+  list-style: none;+  font-size: 0.8em;+  margin:0;+  padding-left: 0.5em;+  text-transform: lowercase;+}++.topics-listing-list-topic a {+  color: var(--ink-soft);+}+.topics-listing-list-topic a:hover {+  color: var(--accent);+}
+ scaffolding/css/navigation.css view
@@ -0,0 +1,162 @@+#site-navigation {+  position: sticky;+  top: 0;+  padding: 0.85rem 1.25rem;+  display: flex;+  flex-direction: row;+  align-items: center;+  gap: 1em;+  background-color: var(--surface);+  border-bottom: 1px solid var(--border);+  box-shadow: var(--shadow-sm);+  backdrop-filter: saturate(180%) blur(8px);+  z-index: 1000;+}++#site-navigation > * {+  margin-left: 0;+}+#site-navigation > a {+  text-decoration: none;+  text-transform: uppercase;+  letter-spacing: 0.02em;+  font-size: 1.25rem;+  font-weight: 700;+  font-family: var(--font-sans);+  color: var(--ink);+  transition: color 0.15s ease;+}+#site-navigation > a:hover {+  color: var(--accent);+}++#search-box {+  border: 1px solid var(--border);+  border-radius: var(--radius);+  padding: 0.3em 0.6em;+  background-color: var(--surface-alt);+}++#search-box div.routes-list {+  max-height: 500px;+  overflow: scroll;+  position: absolute;+  margin: 10px 0;+  padding: 0rem 1rem;+  border-radius: var(--radius);+  background-color: var(--surface);+  border: 1px solid var(--border);+  box-shadow: var(--shadow-md);+}+#search-box div.hidden {+  visibility: hidden;+  height: 0;+}+#search-box div.visible {+  visibility: visible;+  height: unset;+}+#search-box div.routes-list  > div {+  position: sticky;+  background: var(--surface);+  top: 0;+}+#search-box .collapse-button {+  margin: 1rem 0;+  width: 100%;+  height: 2.5rem;+  border: none;+  border-radius: var(--radius);+  background-color: transparent;+  color: var(--muted);+  cursor: pointer;+  transition: color 0.15s ease;+}+#search-box .collapse-button:hover {+  color: var(--accent);+}+#search-box ul {+  list-style: none;+}+#search-box li {+  margin-top: 1rem;+}+#search-box ul.routes-list-list {+  margin: 0;+  margin-bottom: 1rem;+  padding: 0 0.8rem;+}+#search-box li.routes-list-item {+  padding: 12px;+  border-radius: var(--radius);+  transition: background-color 0.15s ease;+}+#search-box li.routes-list-item:nth-child(even) {+  background-color: var(--surface-alt);+}+#search-box ul.hashtags-list {+  padding:0;+  display: flex;+}+#search-box li.hashtags-list-item {+  padding: 0.3em 0.6em;+  margin-right: 0.4em;+  border: 1px solid var(--border);+  border-radius: 999px;+  color: var(--muted);+}+#search-box a {+  font-size: 0.9rem;+  font-weight: 500;+  color: var(--ink);+}+#search-box a:hover {+  color: var(--accent);+}+#search-box li.link-description {+  min-width: 35vh;+  max-width: 75vh;+}+#search-box li.link-description.hidden {+  cursor: pointer;+}+#search-box p.link-description-header {+  display: grid;+  grid-template-columns: 1fr 2fr;+}+#search-box a.link {+  display: flex;+}+#search-box a.link > img {+  vertical-align: bottom;+}+#search-box a.link > span {+  margin-left: 0.2rem;+  display: inline-block;+  vertical-align: top;+}+#search-box span.link-description-title {+  margin-left: 1.3rem;+  text-align: right;+  text-transform: uppercase;+  color: var(--muted);+}+#search-box div.link-description-body {+  margin: 0.3em;+  padding-left: 0.3em;+  color: var(--ink-soft);+}+#search-box div.link-description-body img {+  object-fit: contain;+  display: block;+  max-width: 100%;+  max-height: 100%;+  border-radius: var(--radius);+}++/* the link back to the site root: see `homeLink` in kitchen-sink.json */+a.home-link img {+  height: 1em;+  vertical-align: middle;+  margin-right: 0.4em;+}
+ scaffolding/css/topics.css view
@@ -0,0 +1,82 @@+body, html {+  margin: 0;+  padding: 0;+  background-color: var(--bg);+  color: var(--ink);+}++.main {+  max-width: 70ch;+  padding: 3em 1em;+  margin: auto;+  line-height: 1.75;+  font-size: 1.15em;+  font-family: var(--font-sans);+}++h1,h2,h3,h4,h5,h6 {+  margin: 1.4em 0 0.5em;+  font-weight: 700;+  letter-spacing: -0.01em;+  color: var(--ink);+}++a {+  color: var(--accent);+}+a:hover {+  color: var(--code-accent);+}++p,ul,ol {+  margin-bottom: 1.5em;+  font-family: var(--font-sans);+  color: var(--ink-soft);+}++/*~~ topiclist ~~~~~~~~~~~~~~~~~~~~*/++div.topiclist {+  display: flex;+  flex-wrap: wrap;+  gap: 0.6em;+}++div.topic {+  width: 12em;+  display: table-cell;+  text-align: center;+  margin-right: 0;+  margin-bottom: 0;+  padding: 0.5em 0.7em;+  background-color: var(--surface);+  border: 1px solid var(--border);+  border-radius: var(--radius);+  box-shadow: var(--shadow-sm);+  transition: box-shadow 0.15s ease, transform 0.15s ease;+}+div.topic:hover {+  box-shadow: var(--shadow-md);+  transform: translateY(-1px);+}++a.topic-link {+  text-decoration: none;+  font-size: 0.8em;+  font-weight: 700;+  color: var(--ink);+}++a.topic-link:hover {+  text-decoration: none;+  color: var(--accent);+}++span.topic-name {+   text-transform: uppercase;+}++span.topic-count {+  margin-left: 0.75em;+  color: var(--muted);+}
+ scaffolding/glossary.cmark.tmpl view
@@ -0,0 +1,10 @@+=base:build-info.json+{"layout":"glossary"+}++=base:main-css.css+@import "/css/dev.css";+@import "/css/colors.css";+@import "/css/articles-listing.css";+@import "/css/navigation.css";+
+ scaffolding/hashtags.cmark.tmpl view
@@ -0,0 +1,12 @@+=base:build-info.json+{"layout":"hashtags"+}++=base:main-css.css+@import "/css/dev.css";+@import "/css/colors.css";+@import "/css/articles-listing.css";+@import "/css/topics.css";+@import "/css/navigation.css";++
+ scaffolding/index.cmark.tmpl view
@@ -0,0 +1,22 @@+=base:build-info.json+{"layout":"index"+,"publicationStatus":"Public"+}++=base:preamble.json+{"author": "Anonymous Author"+,"date": "2084-04-04T01:00:00Z"+,"title": "new page"+}++=base:main-content.cmark++Welcome to your new blog!++<script src="js/topicgraph.js"></script>++=base:main-css.css+@import "/css/colors.css";+@import "/css/navigation.css";+@import "/css/articles-listing.css";+@import "/css/index.css";
+ scaffolding/js/add-dev-route.js view
@@ -0,0 +1,61 @@+(function(){+  const addDialog = (content, f) => {+    let pre = document.createElement('pre');+    pre.style = 'max-height: 35vh; overflow: scroll;';+    pre.appendChild(document.createTextNode(content));++    let btn = document.createElement('button');+    btn.className = "dev-produce-button";+    btn.appendChild(document.createTextNode("close"));++    let div = document.createElement('div');+    div.style = 'position:fixed; inset:20%; background-color:white; padding: 1em; border: 1px solid black';+    div.appendChild(pre);+    div.appendChild(btn);++    var navDom = document.getElementById('site-navigation');+    btn.onclick = () => div.remove();+    navDom.appendChild(div);+  };+  const callRoute = (path) => (ev) => {+    const btn = ev.target;+    btn.disabled = true;+    const url = new URL(document.location.origin + path);+    fetch(url, {'method': 'POST'})+    .then(response => response.json())+    .then(data => {+      addDialog(data);+      btn.disabled = false;+    })+    .catch(error => {+      console.error('Error:', error);+      btn.disabled = false;+      alert("failed");+    })+  };+  const addButton = (name, f) => {+    let btn = document.createElement('button');+    btn.className = "dev-produce-button";+    btn.onclick = f;+    btn.appendChild(document.createTextNode(name));+    var navDom = document.getElementById('site-navigation');+    navDom.appendChild(btn);+  };+  const go = () => {+    addButton("produce", callRoute("/dev/produce"));+    addButton("reload", callRoute("/dev/reload"));++    const url = new URL(document.location.origin + "/dev/commands");+    fetch(url, {'method': 'GET'})+    .then(response => response.json())+    .then(data => {+      data.forEach((cmd) => addButton(cmd.display, callRoute(`/dev/command?handle=${cmd.handle}`)));+      console.log(data);+    })+    .catch(error => {+      console.error('Error:', error);+    })+  };+  +  document.addEventListener("DOMContentLoaded", go);+})();
+ scaffolding/js/autoreload.js view
@@ -0,0 +1,37 @@+(function(){+  const currentURLParams = new URLSearchParams(window.location.search);+  let serverId = currentURLParams.get('server-id');+  const go = (n) => () => {+    const m = n < 5 ? 1+n : 5;+    const retry = () => setTimeout(go(m), n*1000);+    const url = new URL(document.location.origin + '/dev/watch');+    let params = [['pathname', document.location.pathname]];+    if ((serverId ?? '') !== '') {+      params.push(['server-id', serverId]);+    }+    url.search = new URLSearchParams(params).toString();+      console.log(`fetching ${url}`);+    fetch(url)+    .then(response => response.json())+    .then(data => {+      console.log("got response");+      serverId = data[0];+      if (data[1] === "Respawned") {+        const params = new URLSearchParams();+        params.set('server-id', serverId);+        window.location.search = params;+      }+      if (data[1] === "Reloaded") {+        location.reload();+      }+      if (data[1] === "Disappeared") {+        retry();+      }+    })+    .catch(error => {+      console.error('Error:', error);+      retry();+    })+  };+  go(0)();+})();
+ scaffolding/js/echart-histogram.js view
@@ -0,0 +1,83 @@+(function() {+  const go = () => {+    var chartDom = document.getElementById('histogram');+    var myChart = echarts.init(chartDom);+    var option;++    window.addEventListener('resize', () => myChart.resize());+    +    const jsonSrc = document.getElementsByName('ks:article_json')[0].content;+    +    const zeroes = (n) => {+      const ary = new Array(n);+      for (idx=0; idx<n; idx++) {+        ary[idx] = 0;+      }+      return ary;+    }+    +    myChart.showLoading();+    fetch(jsonSrc)+    .then((response) => response.json())+    .then((articlejson) => {+      myChart.hideLoading();+      const slitems = articlejson.skyline.skylineItems;+    +      const nSeries = slitems.filter((item) => item.tag == 'HeaderMark').length + 2; // one for 'previous cumulative series' and one for the 'incipit' section+      const newSeries = (name) => { return { name: name, type: 'bar', stack: 'one', data: zeroes(nSeries) } };+      let series = [newSeries('previous'), newSeries('incipit')];+      const offsetSeries = series[0];+    +      let cumulativeSum = 0;+      let seriesIdx = 1;+      let currentSeries = series[1];+      slitems.forEach((item) => {+        if (item.tag == 'HeaderMark') {+          const title = item.contents[0];+          const heading = item.contents[1].reduce((c,x) => `${x}.${c}`, '');+          const s = newSeries(`${heading} ${title}`);+          series.push(s);+          seriesIdx += 1;+          currentSeries = s;+          offsetSeries.data[seriesIdx] = cumulativeSum;+        }+        if (item.tag == 'TextualMark') {+          const val = item.contents[0];+          cumulativeSum += val;+          currentSeries.data[seriesIdx] += val;+        }+      });+    +      offsetSeries.itemStyle = {'borderColor': 'transparent', color: 'transparent'};+      offsetSeries.emphasis = {'itemStyle':  {'borderColor': 'transparent', color: 'transparent'}};+    +      option = {+        title: {+          text: 'article histogram',+          subtext: 'words per paragraph',+          top: 'bottom',+          left: 'right'+        },+        tooltip: {+          trigger: 'axis',+          axisPointer: {type: 'shadow'},+        },+        xAxis: {+            name: 'cmark heading',+            data: series.map((_,i) => i),+            silent: true,+        },+        yAxis: {+          name: 'total words',+          type: 'value'+        },+        series: series,+      };+      myChart.setOption(option);+    });+    +    option && myChart.setOption(option);+  };+  document.addEventListener("DOMContentLoaded", go);+})();+
+ scaffolding/js/echarts.min.js view
@@ -0,0 +1,45 @@++/*+* Licensed to the Apache Software Foundation (ASF) under one+* or more contributor license agreements.  See the NOTICE file+* distributed with this work for additional information+* regarding copyright ownership.  The ASF licenses this file+* to you under the Apache License, Version 2.0 (the+* "License"); you may not use this file except in compliance+* with the License.  You may obtain a copy of the License at+*+*   http://www.apache.org/licenses/LICENSE-2.0+*+* Unless required by applicable law or agreed to in writing,+* software distributed under the License is distributed on an+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY+* KIND, either express or implied.  See the License for the+* specific language governing permissions and limitations+* under the License.+*/++!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).echarts={})}(this,(function(t){"use strict";+/*! *****************************************************************************+    Copyright (c) Microsoft Corporation.++    Permission to use, copy, modify, and/or distribute this software for any+    purpose with or without fee is hereby granted.++    THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH+    REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY+    AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,+    INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM+    LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR+    OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR+    PERFORMANCE OF THIS SOFTWARE.+    ***************************************************************************** */var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])})(t,n)};function n(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}var i=function(){this.firefox=!1,this.ie=!1,this.edge=!1,this.newEdge=!1,this.weChat=!1},r=new function(){this.browser=new i,this.node=!1,this.wxa=!1,this.worker=!1,this.svgSupported=!1,this.touchEventsSupported=!1,this.pointerEventsSupported=!1,this.domSupported=!1,this.transformSupported=!1,this.transform3dSupported=!1,this.hasGlobalWindow="undefined"!=typeof window};"object"==typeof wx&&"function"==typeof wx.getSystemInfoSync?(r.wxa=!0,r.touchEventsSupported=!0):"undefined"==typeof document&&"undefined"!=typeof self?r.worker=!0:"undefined"==typeof navigator?(r.node=!0,r.svgSupported=!0):function(t,e){var n=e.browser,i=t.match(/Firefox\/([\d.]+)/),r=t.match(/MSIE\s([\d.]+)/)||t.match(/Trident\/.+?rv:(([\d.]+))/),o=t.match(/Edge?\/([\d.]+)/),a=/micromessenger/i.test(t);i&&(n.firefox=!0,n.version=i[1]);r&&(n.ie=!0,n.version=r[1]);o&&(n.edge=!0,n.version=o[1],n.newEdge=+o[1].split(".")[0]>18);a&&(n.weChat=!0);e.svgSupported="undefined"!=typeof SVGRect,e.touchEventsSupported="ontouchstart"in window&&!n.ie&&!n.edge,e.pointerEventsSupported="onpointerdown"in window&&(n.edge||n.ie&&+n.version>=11),e.domSupported="undefined"!=typeof document;var s=document.documentElement.style;e.transform3dSupported=(n.ie&&"transition"in s||n.edge||"WebKitCSSMatrix"in window&&"m11"in new WebKitCSSMatrix||"MozPerspective"in s)&&!("OTransition"in s),e.transformSupported=e.transform3dSupported||n.ie&&+n.version>=9}(navigator.userAgent,r);var o="sans-serif",a="12px sans-serif";var s,l,u=function(t){var e={};if("undefined"==typeof JSON)return e;for(var n=0;n<t.length;n++){var i=String.fromCharCode(n+32),r=(t.charCodeAt(n)-20)/100;e[i]=r}return e}("007LLmW'55;N0500LLLLLLLLLL00NNNLzWW\\\\WQb\\0FWLg\\bWb\\WQ\\WrWWQ000CL5LLFLL0LL**F*gLLLL5F0LF\\FFF5.5N"),h={createCanvas:function(){return"undefined"!=typeof document&&document.createElement("canvas")},measureText:function(t,e){if(!s){var n=h.createCanvas();s=n&&n.getContext("2d")}if(s)return l!==e&&(l=s.font=e||a),s.measureText(t);t=t||"";var i=/^([0-9]*?)px$/.exec(e=e||a),r=+(i&&i[1])||12,o=0;if(e.indexOf("mono")>=0)o=r*t.length;else for(var c=0;c<t.length;c++){var p=u[t[c]];o+=null==p?r:p*r}return{width:o}},loadImage:function(t,e,n){var i=new Image;return i.onload=e,i.onerror=n,i.src=t,i}};function c(t){for(var e in h)t[e]&&(h[e]=t[e])}var p=V(["Function","RegExp","Date","Error","CanvasGradient","CanvasPattern","Image","Canvas"],(function(t,e){return t["[object "+e+"]"]=!0,t}),{}),d=V(["Int8","Uint8","Uint8Clamped","Int16","Uint16","Int32","Uint32","Float32","Float64"],(function(t,e){return t["[object "+e+"Array]"]=!0,t}),{}),f=Object.prototype.toString,g=Array.prototype,y=g.forEach,v=g.filter,m=g.slice,x=g.map,_=function(){}.constructor,b=_?_.prototype:null,w="__proto__",S=2311;function M(){return S++}function I(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];"undefined"!=typeof console&&console.error.apply(console,t)}function T(t){if(null==t||"object"!=typeof t)return t;var e=t,n=f.call(t);if("[object Array]"===n){if(!pt(t)){e=[];for(var i=0,r=t.length;i<r;i++)e[i]=T(t[i])}}else if(d[n]){if(!pt(t)){var o=t.constructor;if(o.from)e=o.from(t);else{e=new o(t.length);for(i=0,r=t.length;i<r;i++)e[i]=t[i]}}}else if(!p[n]&&!pt(t)&&!J(t))for(var a in e={},t)t.hasOwnProperty(a)&&a!==w&&(e[a]=T(t[a]));return e}function C(t,e,n){if(!q(e)||!q(t))return n?T(e):t;for(var i in e)if(e.hasOwnProperty(i)&&i!==w){var r=t[i],o=e[i];!q(o)||!q(r)||Y(o)||Y(r)||J(o)||J(r)||K(o)||K(r)||pt(o)||pt(r)?!n&&i in t||(t[i]=T(e[i])):C(r,o,n)}return t}function D(t,e){for(var n=t[0],i=1,r=t.length;i<r;i++)n=C(n,t[i],e);return n}function A(t,e){if(Object.assign)Object.assign(t,e);else for(var n in e)e.hasOwnProperty(n)&&n!==w&&(t[n]=e[n]);return t}function k(t,e,n){for(var i=G(e),r=0;r<i.length;r++){var o=i[r];(n?null!=e[o]:null==t[o])&&(t[o]=e[o])}return t}var L=h.createCanvas;function P(t,e){if(t){if(t.indexOf)return t.indexOf(e);for(var n=0,i=t.length;n<i;n++)if(t[n]===e)return n}return-1}function O(t,e){var n=t.prototype;function i(){}for(var r in i.prototype=e.prototype,t.prototype=new i,n)n.hasOwnProperty(r)&&(t.prototype[r]=n[r]);t.prototype.constructor=t,t.superClass=e}function R(t,e,n){if(t="prototype"in t?t.prototype:t,e="prototype"in e?e.prototype:e,Object.getOwnPropertyNames)for(var i=Object.getOwnPropertyNames(e),r=0;r<i.length;r++){var o=i[r];"constructor"!==o&&(n?null!=e[o]:null==t[o])&&(t[o]=e[o])}else k(t,e,n)}function N(t){return!!t&&("string"!=typeof t&&"number"==typeof t.length)}function E(t,e,n){if(t&&e)if(t.forEach&&t.forEach===y)t.forEach(e,n);else if(t.length===+t.length)for(var i=0,r=t.length;i<r;i++)e.call(n,t[i],i,t);else for(var o in t)t.hasOwnProperty(o)&&e.call(n,t[o],o,t)}function z(t,e,n){if(!t)return[];if(!e)return at(t);if(t.map&&t.map===x)return t.map(e,n);for(var i=[],r=0,o=t.length;r<o;r++)i.push(e.call(n,t[r],r,t));return i}function V(t,e,n,i){if(t&&e){for(var r=0,o=t.length;r<o;r++)n=e.call(i,n,t[r],r,t);return n}}function B(t,e,n){if(!t)return[];if(!e)return at(t);if(t.filter&&t.filter===v)return t.filter(e,n);for(var i=[],r=0,o=t.length;r<o;r++)e.call(n,t[r],r,t)&&i.push(t[r]);return i}function F(t,e,n){if(t&&e)for(var i=0,r=t.length;i<r;i++)if(e.call(n,t[i],i,t))return t[i]}function G(t){if(!t)return[];if(Object.keys)return Object.keys(t);var e=[];for(var n in t)t.hasOwnProperty(n)&&e.push(n);return e}var W=b&&U(b.bind)?b.call.bind(b.bind):function(t,e){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];return function(){return t.apply(e,n.concat(m.call(arguments)))}};function H(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];return function(){return t.apply(this,e.concat(m.call(arguments)))}}function Y(t){return Array.isArray?Array.isArray(t):"[object Array]"===f.call(t)}function U(t){return"function"==typeof t}function X(t){return"string"==typeof t}function Z(t){return"[object String]"===f.call(t)}function j(t){return"number"==typeof t}function q(t){var e=typeof t;return"function"===e||!!t&&"object"===e}function K(t){return!!p[f.call(t)]}function $(t){return!!d[f.call(t)]}function J(t){return"object"==typeof t&&"number"==typeof t.nodeType&&"object"==typeof t.ownerDocument}function Q(t){return null!=t.colorStops}function tt(t){return null!=t.image}function et(t){return"[object RegExp]"===f.call(t)}function nt(t){return t!=t}function it(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];for(var n=0,i=t.length;n<i;n++)if(null!=t[n])return t[n]}function rt(t,e){return null!=t?t:e}function ot(t,e,n){return null!=t?t:null!=e?e:n}function at(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];return m.apply(t,e)}function st(t){if("number"==typeof t)return[t,t,t,t];var e=t.length;return 2===e?[t[0],t[1],t[0],t[1]]:3===e?[t[0],t[1],t[2],t[1]]:t}function lt(t,e){if(!t)throw new Error(e)}function ut(t){return null==t?null:"function"==typeof t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}var ht="__ec_primitive__";function ct(t){t[ht]=!0}function pt(t){return t[ht]}var dt=function(){function t(e){this.data={};var n=Y(e);this.data={};var i=this;function r(t,e){n?i.set(t,e):i.set(e,t)}e instanceof t?e.each(r):e&&E(e,r)}return t.prototype.get=function(t){return this.data.hasOwnProperty(t)?this.data[t]:null},t.prototype.set=function(t,e){return this.data[t]=e},t.prototype.each=function(t,e){for(var n in this.data)this.data.hasOwnProperty(n)&&t.call(e,this.data[n],n)},t.prototype.keys=function(){return G(this.data)},t.prototype.removeKey=function(t){delete this.data[t]},t}();function ft(t){return new dt(t)}function gt(t,e){for(var n=new t.constructor(t.length+e.length),i=0;i<t.length;i++)n[i]=t[i];var r=t.length;for(i=0;i<e.length;i++)n[i+r]=e[i];return n}function yt(t,e){var n;if(Object.create)n=Object.create(t);else{var i=function(){};i.prototype=t,n=new i}return e&&A(n,e),n}function vt(t){var e=t.style;e.webkitUserSelect="none",e.userSelect="none",e.webkitTapHighlightColor="rgba(0,0,0,0)",e["-webkit-touch-callout"]="none"}function mt(t,e){return t.hasOwnProperty(e)}function xt(){}var _t=180/Math.PI,bt=Object.freeze({__proto__:null,guid:M,logError:I,clone:T,merge:C,mergeAll:D,extend:A,defaults:k,createCanvas:L,indexOf:P,inherits:O,mixin:R,isArrayLike:N,each:E,map:z,reduce:V,filter:B,find:F,keys:G,bind:W,curry:H,isArray:Y,isFunction:U,isString:X,isStringSafe:Z,isNumber:j,isObject:q,isBuiltInObject:K,isTypedArray:$,isDom:J,isGradientObject:Q,isImagePatternObject:tt,isRegExp:et,eqNaN:nt,retrieve:it,retrieve2:rt,retrieve3:ot,slice:at,normalizeCssArray:st,assert:lt,trim:ut,setAsPrimitive:ct,isPrimitive:pt,HashMap:dt,createHashMap:ft,concatArray:gt,createObject:yt,disableUserSelect:vt,hasOwn:mt,noop:xt,RADIAN_TO_DEGREE:_t});function wt(t,e){return null==t&&(t=0),null==e&&(e=0),[t,e]}function St(t,e){return t[0]=e[0],t[1]=e[1],t}function Mt(t){return[t[0],t[1]]}function It(t,e,n){return t[0]=e,t[1]=n,t}function Tt(t,e,n){return t[0]=e[0]+n[0],t[1]=e[1]+n[1],t}function Ct(t,e,n,i){return t[0]=e[0]+n[0]*i,t[1]=e[1]+n[1]*i,t}function Dt(t,e,n){return t[0]=e[0]-n[0],t[1]=e[1]-n[1],t}function At(t){return Math.sqrt(Lt(t))}var kt=At;function Lt(t){return t[0]*t[0]+t[1]*t[1]}var Pt=Lt;function Ot(t,e,n){return t[0]=e[0]*n,t[1]=e[1]*n,t}function Rt(t,e){var n=At(e);return 0===n?(t[0]=0,t[1]=0):(t[0]=e[0]/n,t[1]=e[1]/n),t}function Nt(t,e){return Math.sqrt((t[0]-e[0])*(t[0]-e[0])+(t[1]-e[1])*(t[1]-e[1]))}var Et=Nt;function zt(t,e){return(t[0]-e[0])*(t[0]-e[0])+(t[1]-e[1])*(t[1]-e[1])}var Vt=zt;function Bt(t,e,n,i){return t[0]=e[0]+i*(n[0]-e[0]),t[1]=e[1]+i*(n[1]-e[1]),t}function Ft(t,e,n){var i=e[0],r=e[1];return t[0]=n[0]*i+n[2]*r+n[4],t[1]=n[1]*i+n[3]*r+n[5],t}function Gt(t,e,n){return t[0]=Math.min(e[0],n[0]),t[1]=Math.min(e[1],n[1]),t}function Wt(t,e,n){return t[0]=Math.max(e[0],n[0]),t[1]=Math.max(e[1],n[1]),t}var Ht=Object.freeze({__proto__:null,create:wt,copy:St,clone:Mt,set:It,add:Tt,scaleAndAdd:Ct,sub:Dt,len:At,length:kt,lenSquare:Lt,lengthSquare:Pt,mul:function(t,e,n){return t[0]=e[0]*n[0],t[1]=e[1]*n[1],t},div:function(t,e,n){return t[0]=e[0]/n[0],t[1]=e[1]/n[1],t},dot:function(t,e){return t[0]*e[0]+t[1]*e[1]},scale:Ot,normalize:Rt,distance:Nt,dist:Et,distanceSquare:zt,distSquare:Vt,negate:function(t,e){return t[0]=-e[0],t[1]=-e[1],t},lerp:Bt,applyTransform:Ft,min:Gt,max:Wt}),Yt=function(t,e){this.target=t,this.topTarget=e&&e.topTarget},Ut=function(){function t(t){this.handler=t,t.on("mousedown",this._dragStart,this),t.on("mousemove",this._drag,this),t.on("mouseup",this._dragEnd,this)}return t.prototype._dragStart=function(t){for(var e=t.target;e&&!e.draggable;)e=e.parent||e.__hostTarget;e&&(this._draggingTarget=e,e.dragging=!0,this._x=t.offsetX,this._y=t.offsetY,this.handler.dispatchToElement(new Yt(e,t),"dragstart",t.event))},t.prototype._drag=function(t){var e=this._draggingTarget;if(e){var n=t.offsetX,i=t.offsetY,r=n-this._x,o=i-this._y;this._x=n,this._y=i,e.drift(r,o,t),this.handler.dispatchToElement(new Yt(e,t),"drag",t.event);var a=this.handler.findHover(n,i,e).target,s=this._dropTarget;this._dropTarget=a,e!==a&&(s&&a!==s&&this.handler.dispatchToElement(new Yt(s,t),"dragleave",t.event),a&&a!==s&&this.handler.dispatchToElement(new Yt(a,t),"dragenter",t.event))}},t.prototype._dragEnd=function(t){var e=this._draggingTarget;e&&(e.dragging=!1),this.handler.dispatchToElement(new Yt(e,t),"dragend",t.event),this._dropTarget&&this.handler.dispatchToElement(new Yt(this._dropTarget,t),"drop",t.event),this._draggingTarget=null,this._dropTarget=null},t}(),Xt=function(){function t(t){t&&(this._$eventProcessor=t)}return t.prototype.on=function(t,e,n,i){this._$handlers||(this._$handlers={});var r=this._$handlers;if("function"==typeof e&&(i=n,n=e,e=null),!n||!t)return this;var o=this._$eventProcessor;null!=e&&o&&o.normalizeQuery&&(e=o.normalizeQuery(e)),r[t]||(r[t]=[]);for(var a=0;a<r[t].length;a++)if(r[t][a].h===n)return this;var s={h:n,query:e,ctx:i||this,callAtLast:n.zrEventfulCallAtLast},l=r[t].length-1,u=r[t][l];return u&&u.callAtLast?r[t].splice(l,0,s):r[t].push(s),this},t.prototype.isSilent=function(t){var e=this._$handlers;return!e||!e[t]||!e[t].length},t.prototype.off=function(t,e){var n=this._$handlers;if(!n)return this;if(!t)return this._$handlers={},this;if(e){if(n[t]){for(var i=[],r=0,o=n[t].length;r<o;r++)n[t][r].h!==e&&i.push(n[t][r]);n[t]=i}n[t]&&0===n[t].length&&delete n[t]}else delete n[t];return this},t.prototype.trigger=function(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];if(!this._$handlers)return this;var i=this._$handlers[t],r=this._$eventProcessor;if(i)for(var o=e.length,a=i.length,s=0;s<a;s++){var l=i[s];if(!r||!r.filter||null==l.query||r.filter(t,l.query))switch(o){case 0:l.h.call(l.ctx);break;case 1:l.h.call(l.ctx,e[0]);break;case 2:l.h.call(l.ctx,e[0],e[1]);break;default:l.h.apply(l.ctx,e)}}return r&&r.afterTrigger&&r.afterTrigger(t),this},t.prototype.triggerWithContext=function(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];if(!this._$handlers)return this;var i=this._$handlers[t],r=this._$eventProcessor;if(i)for(var o=e.length,a=e[o-1],s=i.length,l=0;l<s;l++){var u=i[l];if(!r||!r.filter||null==u.query||r.filter(t,u.query))switch(o){case 0:u.h.call(a);break;case 1:u.h.call(a,e[0]);break;case 2:u.h.call(a,e[0],e[1]);break;default:u.h.apply(a,e.slice(1,o-1))}}return r&&r.afterTrigger&&r.afterTrigger(t),this},t}(),Zt=Math.log(2);function jt(t,e,n,i,r,o){var a=i+"-"+r,s=t.length;if(o.hasOwnProperty(a))return o[a];if(1===e){var l=Math.round(Math.log((1<<s)-1&~r)/Zt);return t[n][l]}for(var u=i|1<<n,h=n+1;i&1<<h;)h++;for(var c=0,p=0,d=0;p<s;p++){var f=1<<p;f&r||(c+=(d%2?-1:1)*t[n][p]*jt(t,e-1,h,u,r|f,o),d++)}return o[a]=c,c}function qt(t,e){var n=[[t[0],t[1],1,0,0,0,-e[0]*t[0],-e[0]*t[1]],[0,0,0,t[0],t[1],1,-e[1]*t[0],-e[1]*t[1]],[t[2],t[3],1,0,0,0,-e[2]*t[2],-e[2]*t[3]],[0,0,0,t[2],t[3],1,-e[3]*t[2],-e[3]*t[3]],[t[4],t[5],1,0,0,0,-e[4]*t[4],-e[4]*t[5]],[0,0,0,t[4],t[5],1,-e[5]*t[4],-e[5]*t[5]],[t[6],t[7],1,0,0,0,-e[6]*t[6],-e[6]*t[7]],[0,0,0,t[6],t[7],1,-e[7]*t[6],-e[7]*t[7]]],i={},r=jt(n,8,0,0,0,i);if(0!==r){for(var o=[],a=0;a<8;a++)for(var s=0;s<8;s++)null==o[s]&&(o[s]=0),o[s]+=((a+s)%2?-1:1)*jt(n,7,0===a?1:0,1<<a,1<<s,i)/r*e[a];return function(t,e,n){var i=e*o[6]+n*o[7]+1;t[0]=(e*o[0]+n*o[1]+o[2])/i,t[1]=(e*o[3]+n*o[4]+o[5])/i}}}var Kt=[];function $t(t,e,n,i,o){if(e.getBoundingClientRect&&r.domSupported&&!Jt(e)){var a=e.___zrEVENTSAVED||(e.___zrEVENTSAVED={}),s=function(t,e,n){for(var i=n?"invTrans":"trans",r=e[i],o=e.srcCoords,a=[],s=[],l=!0,u=0;u<4;u++){var h=t[u].getBoundingClientRect(),c=2*u,p=h.left,d=h.top;a.push(p,d),l=l&&o&&p===o[c]&&d===o[c+1],s.push(t[u].offsetLeft,t[u].offsetTop)}return l&&r?r:(e.srcCoords=a,e[i]=n?qt(s,a):qt(a,s))}(function(t,e){var n=e.markers;if(n)return n;n=e.markers=[];for(var i=["left","right"],r=["top","bottom"],o=0;o<4;o++){var a=document.createElement("div"),s=o%2,l=(o>>1)%2;a.style.cssText=["position: absolute","visibility: hidden","padding: 0","margin: 0","border-width: 0","user-select: none","width:0","height:0",i[s]+":0",r[l]+":0",i[1-s]+":auto",r[1-l]+":auto",""].join("!important;"),t.appendChild(a),n.push(a)}return n}(e,a),a,o);if(s)return s(t,n,i),!0}return!1}function Jt(t){return"CANVAS"===t.nodeName.toUpperCase()}var Qt=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,te=[],ee=r.browser.firefox&&+r.browser.version.split(".")[0]<39;function ne(t,e,n,i){return n=n||{},i?ie(t,e,n):ee&&null!=e.layerX&&e.layerX!==e.offsetX?(n.zrX=e.layerX,n.zrY=e.layerY):null!=e.offsetX?(n.zrX=e.offsetX,n.zrY=e.offsetY):ie(t,e,n),n}function ie(t,e,n){if(r.domSupported&&t.getBoundingClientRect){var i=e.clientX,o=e.clientY;if(Jt(t)){var a=t.getBoundingClientRect();return n.zrX=i-a.left,void(n.zrY=o-a.top)}if($t(te,t,i,o))return n.zrX=te[0],void(n.zrY=te[1])}n.zrX=n.zrY=0}function re(t){return t||window.event}function oe(t,e,n){if(null!=(e=re(e)).zrX)return e;var i=e.type;if(i&&i.indexOf("touch")>=0){var r="touchend"!==i?e.targetTouches[0]:e.changedTouches[0];r&&ne(t,r,e,n)}else{ne(t,e,e,n);var o=function(t){var e=t.wheelDelta;if(e)return e;var n=t.deltaX,i=t.deltaY;if(null==n||null==i)return e;return 3*(0!==i?Math.abs(i):Math.abs(n))*(i>0?-1:i<0?1:n>0?-1:1)}(e);e.zrDelta=o?o/120:-(e.detail||0)/3}var a=e.button;return null==e.which&&void 0!==a&&Qt.test(e.type)&&(e.which=1&a?1:2&a?3:4&a?2:0),e}function ae(t,e,n,i){t.addEventListener(e,n,i)}var se=function(t){t.preventDefault(),t.stopPropagation(),t.cancelBubble=!0};function le(t){return 2===t.which||3===t.which}var ue=function(){function t(){this._track=[]}return t.prototype.recognize=function(t,e,n){return this._doTrack(t,e,n),this._recognize(t)},t.prototype.clear=function(){return this._track.length=0,this},t.prototype._doTrack=function(t,e,n){var i=t.touches;if(i){for(var r={points:[],touches:[],target:e,event:t},o=0,a=i.length;o<a;o++){var s=i[o],l=ne(n,s,{});r.points.push([l.zrX,l.zrY]),r.touches.push(s)}this._track.push(r)}},t.prototype._recognize=function(t){for(var e in ce)if(ce.hasOwnProperty(e)){var n=ce[e](this._track,t);if(n)return n}},t}();function he(t){var e=t[1][0]-t[0][0],n=t[1][1]-t[0][1];return Math.sqrt(e*e+n*n)}var ce={pinch:function(t,e){var n=t.length;if(n){var i,r=(t[n-1]||{}).points,o=(t[n-2]||{}).points||r;if(o&&o.length>1&&r&&r.length>1){var a=he(r)/he(o);!isFinite(a)&&(a=1),e.pinchScale=a;var s=[((i=r)[0][0]+i[1][0])/2,(i[0][1]+i[1][1])/2];return e.pinchX=s[0],e.pinchY=s[1],{type:"pinch",target:t[0].target,event:e}}}}},pe="silent";function de(){se(this.event)}var fe=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.handler=null,e}return n(e,t),e.prototype.dispose=function(){},e.prototype.setCursor=function(){},e}(Xt),ge=function(t,e){this.x=t,this.y=e},ye=["click","dblclick","mousewheel","mouseout","mouseup","mousedown","mousemove","contextmenu"],ve=function(t){function e(e,n,i,r){var o=t.call(this)||this;return o._hovered=new ge(0,0),o.storage=e,o.painter=n,o.painterRoot=r,i=i||new fe,o.proxy=null,o.setHandlerProxy(i),o._draggingMgr=new Ut(o),o}return n(e,t),e.prototype.setHandlerProxy=function(t){this.proxy&&this.proxy.dispose(),t&&(E(ye,(function(e){t.on&&t.on(e,this[e],this)}),this),t.handler=this),this.proxy=t},e.prototype.mousemove=function(t){var e=t.zrX,n=t.zrY,i=xe(this,e,n),r=this._hovered,o=r.target;o&&!o.__zr&&(o=(r=this.findHover(r.x,r.y)).target);var a=this._hovered=i?new ge(e,n):this.findHover(e,n),s=a.target,l=this.proxy;l.setCursor&&l.setCursor(s?s.cursor:"default"),o&&s!==o&&this.dispatchToElement(r,"mouseout",t),this.dispatchToElement(a,"mousemove",t),s&&s!==o&&this.dispatchToElement(a,"mouseover",t)},e.prototype.mouseout=function(t){var e=t.zrEventControl;"only_globalout"!==e&&this.dispatchToElement(this._hovered,"mouseout",t),"no_globalout"!==e&&this.trigger("globalout",{type:"globalout",event:t})},e.prototype.resize=function(){this._hovered=new ge(0,0)},e.prototype.dispatch=function(t,e){var n=this[t];n&&n.call(this,e)},e.prototype.dispose=function(){this.proxy.dispose(),this.storage=null,this.proxy=null,this.painter=null},e.prototype.setCursorStyle=function(t){var e=this.proxy;e.setCursor&&e.setCursor(t)},e.prototype.dispatchToElement=function(t,e,n){var i=(t=t||{}).target;if(!i||!i.silent){for(var r="on"+e,o=function(t,e,n){return{type:t,event:n,target:e.target,topTarget:e.topTarget,cancelBubble:!1,offsetX:n.zrX,offsetY:n.zrY,gestureEvent:n.gestureEvent,pinchX:n.pinchX,pinchY:n.pinchY,pinchScale:n.pinchScale,wheelDelta:n.zrDelta,zrByTouch:n.zrByTouch,which:n.which,stop:de}}(e,t,n);i&&(i[r]&&(o.cancelBubble=!!i[r].call(i,o)),i.trigger(e,o),i=i.__hostTarget?i.__hostTarget:i.parent,!o.cancelBubble););o.cancelBubble||(this.trigger(e,o),this.painter&&this.painter.eachOtherLayer&&this.painter.eachOtherLayer((function(t){"function"==typeof t[r]&&t[r].call(t,o),t.trigger&&t.trigger(e,o)})))}},e.prototype.findHover=function(t,e,n){for(var i=this.storage.getDisplayList(),r=new ge(t,e),o=i.length-1;o>=0;o--){var a=void 0;if(i[o]!==n&&!i[o].ignore&&(a=me(i[o],t,e))&&(!r.topTarget&&(r.topTarget=i[o]),a!==pe)){r.target=i[o];break}}return r},e.prototype.processGesture=function(t,e){this._gestureMgr||(this._gestureMgr=new ue);var n=this._gestureMgr;"start"===e&&n.clear();var i=n.recognize(t,this.findHover(t.zrX,t.zrY,null).target,this.proxy.dom);if("end"===e&&n.clear(),i){var r=i.type;t.gestureEvent=r;var o=new ge;o.target=i.target,this.dispatchToElement(o,r,i.event)}},e}(Xt);function me(t,e,n){if(t[t.rectHover?"rectContain":"contain"](e,n)){for(var i=t,r=void 0,o=!1;i;){if(i.ignoreClip&&(o=!0),!o){var a=i.getClipPath();if(a&&!a.contain(e,n))return!1;i.silent&&(r=!0)}var s=i.__hostTarget;i=s||i.parent}return!r||pe}return!1}function xe(t,e,n){var i=t.painter;return e<0||e>i.getWidth()||n<0||n>i.getHeight()}E(["click","mousedown","mouseup","mousewheel","dblclick","contextmenu"],(function(t){ve.prototype[t]=function(e){var n,i,r=e.zrX,o=e.zrY,a=xe(this,r,o);if("mouseup"===t&&a||(i=(n=this.findHover(r,o)).target),"mousedown"===t)this._downEl=i,this._downPoint=[e.zrX,e.zrY],this._upEl=i;else if("mouseup"===t)this._upEl=i;else if("click"===t){if(this._downEl!==this._upEl||!this._downPoint||Et(this._downPoint,[e.zrX,e.zrY])>4)return;this._downPoint=null}this.dispatchToElement(n,t,e)}}));function _e(t,e,n,i){var r=e+1;if(r===n)return 1;if(i(t[r++],t[e])<0){for(;r<n&&i(t[r],t[r-1])<0;)r++;!function(t,e,n){n--;for(;e<n;){var i=t[e];t[e++]=t[n],t[n--]=i}}(t,e,r)}else for(;r<n&&i(t[r],t[r-1])>=0;)r++;return r-e}function be(t,e,n,i,r){for(i===e&&i++;i<n;i++){for(var o,a=t[i],s=e,l=i;s<l;)r(a,t[o=s+l>>>1])<0?l=o:s=o+1;var u=i-s;switch(u){case 3:t[s+3]=t[s+2];case 2:t[s+2]=t[s+1];case 1:t[s+1]=t[s];break;default:for(;u>0;)t[s+u]=t[s+u-1],u--}t[s]=a}}function we(t,e,n,i,r,o){var a=0,s=0,l=1;if(o(t,e[n+r])>0){for(s=i-r;l<s&&o(t,e[n+r+l])>0;)a=l,(l=1+(l<<1))<=0&&(l=s);l>s&&(l=s),a+=r,l+=r}else{for(s=r+1;l<s&&o(t,e[n+r-l])<=0;)a=l,(l=1+(l<<1))<=0&&(l=s);l>s&&(l=s);var u=a;a=r-l,l=r-u}for(a++;a<l;){var h=a+(l-a>>>1);o(t,e[n+h])>0?a=h+1:l=h}return l}function Se(t,e,n,i,r,o){var a=0,s=0,l=1;if(o(t,e[n+r])<0){for(s=r+1;l<s&&o(t,e[n+r-l])<0;)a=l,(l=1+(l<<1))<=0&&(l=s);l>s&&(l=s);var u=a;a=r-l,l=r-u}else{for(s=i-r;l<s&&o(t,e[n+r+l])>=0;)a=l,(l=1+(l<<1))<=0&&(l=s);l>s&&(l=s),a+=r,l+=r}for(a++;a<l;){var h=a+(l-a>>>1);o(t,e[n+h])<0?l=h:a=h+1}return l}function Me(t,e){var n,i,r=7,o=0;t.length;var a=[];function s(s){var l=n[s],u=i[s],h=n[s+1],c=i[s+1];i[s]=u+c,s===o-3&&(n[s+1]=n[s+2],i[s+1]=i[s+2]),o--;var p=Se(t[h],t,l,u,0,e);l+=p,0!==(u-=p)&&0!==(c=we(t[l+u-1],t,h,c,c-1,e))&&(u<=c?function(n,i,o,s){var l=0;for(l=0;l<i;l++)a[l]=t[n+l];var u=0,h=o,c=n;if(t[c++]=t[h++],0==--s){for(l=0;l<i;l++)t[c+l]=a[u+l];return}if(1===i){for(l=0;l<s;l++)t[c+l]=t[h+l];return void(t[c+s]=a[u])}var p,d,f,g=r;for(;;){p=0,d=0,f=!1;do{if(e(t[h],a[u])<0){if(t[c++]=t[h++],d++,p=0,0==--s){f=!0;break}}else if(t[c++]=a[u++],p++,d=0,1==--i){f=!0;break}}while((p|d)<g);if(f)break;do{if(0!==(p=Se(t[h],a,u,i,0,e))){for(l=0;l<p;l++)t[c+l]=a[u+l];if(c+=p,u+=p,(i-=p)<=1){f=!0;break}}if(t[c++]=t[h++],0==--s){f=!0;break}if(0!==(d=we(a[u],t,h,s,0,e))){for(l=0;l<d;l++)t[c+l]=t[h+l];if(c+=d,h+=d,0===(s-=d)){f=!0;break}}if(t[c++]=a[u++],1==--i){f=!0;break}g--}while(p>=7||d>=7);if(f)break;g<0&&(g=0),g+=2}if((r=g)<1&&(r=1),1===i){for(l=0;l<s;l++)t[c+l]=t[h+l];t[c+s]=a[u]}else{if(0===i)throw new Error;for(l=0;l<i;l++)t[c+l]=a[u+l]}}(l,u,h,c):function(n,i,o,s){var l=0;for(l=0;l<s;l++)a[l]=t[o+l];var u=n+i-1,h=s-1,c=o+s-1,p=0,d=0;if(t[c--]=t[u--],0==--i){for(p=c-(s-1),l=0;l<s;l++)t[p+l]=a[l];return}if(1===s){for(d=(c-=i)+1,p=(u-=i)+1,l=i-1;l>=0;l--)t[d+l]=t[p+l];return void(t[c]=a[h])}var f=r;for(;;){var g=0,y=0,v=!1;do{if(e(a[h],t[u])<0){if(t[c--]=t[u--],g++,y=0,0==--i){v=!0;break}}else if(t[c--]=a[h--],y++,g=0,1==--s){v=!0;break}}while((g|y)<f);if(v)break;do{if(0!==(g=i-Se(a[h],t,n,i,i-1,e))){for(i-=g,d=(c-=g)+1,p=(u-=g)+1,l=g-1;l>=0;l--)t[d+l]=t[p+l];if(0===i){v=!0;break}}if(t[c--]=a[h--],1==--s){v=!0;break}if(0!==(y=s-we(t[u],a,0,s,s-1,e))){for(s-=y,d=(c-=y)+1,p=(h-=y)+1,l=0;l<y;l++)t[d+l]=a[p+l];if(s<=1){v=!0;break}}if(t[c--]=t[u--],0==--i){v=!0;break}f--}while(g>=7||y>=7);if(v)break;f<0&&(f=0),f+=2}(r=f)<1&&(r=1);if(1===s){for(d=(c-=i)+1,p=(u-=i)+1,l=i-1;l>=0;l--)t[d+l]=t[p+l];t[c]=a[h]}else{if(0===s)throw new Error;for(p=c-(s-1),l=0;l<s;l++)t[p+l]=a[l]}}(l,u,h,c))}return n=[],i=[],{mergeRuns:function(){for(;o>1;){var t=o-2;if(t>=1&&i[t-1]<=i[t]+i[t+1]||t>=2&&i[t-2]<=i[t]+i[t-1])i[t-1]<i[t+1]&&t--;else if(i[t]>i[t+1])break;s(t)}},forceMergeRuns:function(){for(;o>1;){var t=o-2;t>0&&i[t-1]<i[t+1]&&t--,s(t)}},pushRun:function(t,e){n[o]=t,i[o]=e,o+=1}}}function Ie(t,e,n,i){n||(n=0),i||(i=t.length);var r=i-n;if(!(r<2)){var o=0;if(r<32)be(t,n,i,n+(o=_e(t,n,i,e)),e);else{var a=Me(t,e),s=function(t){for(var e=0;t>=32;)e|=1&t,t>>=1;return t+e}(r);do{if((o=_e(t,n,i,e))<s){var l=r;l>s&&(l=s),be(t,n,n+l,n+o,e),o=l}a.pushRun(n,o),a.mergeRuns(),r-=o,n+=o}while(0!==r);a.forceMergeRuns()}}}var Te=!1;function Ce(){Te||(Te=!0,console.warn("z / z2 / zlevel of displayable is invalid, which may cause unexpected errors"))}function De(t,e){return t.zlevel===e.zlevel?t.z===e.z?t.z2-e.z2:t.z-e.z:t.zlevel-e.zlevel}var Ae=function(){function t(){this._roots=[],this._displayList=[],this._displayListLen=0,this.displayableSortFunc=De}return t.prototype.traverse=function(t,e){for(var n=0;n<this._roots.length;n++)this._roots[n].traverse(t,e)},t.prototype.getDisplayList=function(t,e){e=e||!1;var n=this._displayList;return!t&&n.length||this.updateDisplayList(e),n},t.prototype.updateDisplayList=function(t){this._displayListLen=0;for(var e=this._roots,n=this._displayList,i=0,r=e.length;i<r;i++)this._updateAndAddDisplayable(e[i],null,t);n.length=this._displayListLen,Ie(n,De)},t.prototype._updateAndAddDisplayable=function(t,e,n){if(!t.ignore||n){t.beforeUpdate(),t.update(),t.afterUpdate();var i=t.getClipPath();if(t.ignoreClip)e=null;else if(i){e=e?e.slice():[];for(var r=i,o=t;r;)r.parent=o,r.updateTransform(),e.push(r),o=r,r=r.getClipPath()}if(t.childrenRef){for(var a=t.childrenRef(),s=0;s<a.length;s++){var l=a[s];t.__dirty&&(l.__dirty|=1),this._updateAndAddDisplayable(l,e,n)}t.__dirty=0}else{var u=t;e&&e.length?u.__clipPaths=e:u.__clipPaths&&u.__clipPaths.length>0&&(u.__clipPaths=[]),isNaN(u.z)&&(Ce(),u.z=0),isNaN(u.z2)&&(Ce(),u.z2=0),isNaN(u.zlevel)&&(Ce(),u.zlevel=0),this._displayList[this._displayListLen++]=u}var h=t.getDecalElement&&t.getDecalElement();h&&this._updateAndAddDisplayable(h,e,n);var c=t.getTextGuideLine();c&&this._updateAndAddDisplayable(c,e,n);var p=t.getTextContent();p&&this._updateAndAddDisplayable(p,e,n)}},t.prototype.addRoot=function(t){t.__zr&&t.__zr.storage===this||this._roots.push(t)},t.prototype.delRoot=function(t){if(t instanceof Array)for(var e=0,n=t.length;e<n;e++)this.delRoot(t[e]);else{var i=P(this._roots,t);i>=0&&this._roots.splice(i,1)}},t.prototype.delAllRoots=function(){this._roots=[],this._displayList=[],this._displayListLen=0},t.prototype.getRoots=function(){return this._roots},t.prototype.dispose=function(){this._displayList=null,this._roots=null},t}(),ke=r.hasGlobalWindow&&(window.requestAnimationFrame&&window.requestAnimationFrame.bind(window)||window.msRequestAnimationFrame&&window.msRequestAnimationFrame.bind(window)||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame)||function(t){return setTimeout(t,16)},Le={linear:function(t){return t},quadraticIn:function(t){return t*t},quadraticOut:function(t){return t*(2-t)},quadraticInOut:function(t){return(t*=2)<1?.5*t*t:-.5*(--t*(t-2)-1)},cubicIn:function(t){return t*t*t},cubicOut:function(t){return--t*t*t+1},cubicInOut:function(t){return(t*=2)<1?.5*t*t*t:.5*((t-=2)*t*t+2)},quarticIn:function(t){return t*t*t*t},quarticOut:function(t){return 1- --t*t*t*t},quarticInOut:function(t){return(t*=2)<1?.5*t*t*t*t:-.5*((t-=2)*t*t*t-2)},quinticIn:function(t){return t*t*t*t*t},quinticOut:function(t){return--t*t*t*t*t+1},quinticInOut:function(t){return(t*=2)<1?.5*t*t*t*t*t:.5*((t-=2)*t*t*t*t+2)},sinusoidalIn:function(t){return 1-Math.cos(t*Math.PI/2)},sinusoidalOut:function(t){return Math.sin(t*Math.PI/2)},sinusoidalInOut:function(t){return.5*(1-Math.cos(Math.PI*t))},exponentialIn:function(t){return 0===t?0:Math.pow(1024,t-1)},exponentialOut:function(t){return 1===t?1:1-Math.pow(2,-10*t)},exponentialInOut:function(t){return 0===t?0:1===t?1:(t*=2)<1?.5*Math.pow(1024,t-1):.5*(2-Math.pow(2,-10*(t-1)))},circularIn:function(t){return 1-Math.sqrt(1-t*t)},circularOut:function(t){return Math.sqrt(1- --t*t)},circularInOut:function(t){return(t*=2)<1?-.5*(Math.sqrt(1-t*t)-1):.5*(Math.sqrt(1-(t-=2)*t)+1)},elasticIn:function(t){var e,n=.1;return 0===t?0:1===t?1:(!n||n<1?(n=1,e=.1):e=.4*Math.asin(1/n)/(2*Math.PI),-n*Math.pow(2,10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/.4))},elasticOut:function(t){var e,n=.1;return 0===t?0:1===t?1:(!n||n<1?(n=1,e=.1):e=.4*Math.asin(1/n)/(2*Math.PI),n*Math.pow(2,-10*t)*Math.sin((t-e)*(2*Math.PI)/.4)+1)},elasticInOut:function(t){var e,n=.1,i=.4;return 0===t?0:1===t?1:(!n||n<1?(n=1,e=.1):e=i*Math.asin(1/n)/(2*Math.PI),(t*=2)<1?n*Math.pow(2,10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/i)*-.5:n*Math.pow(2,-10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/i)*.5+1)},backIn:function(t){var e=1.70158;return t*t*((e+1)*t-e)},backOut:function(t){var e=1.70158;return--t*t*((e+1)*t+e)+1},backInOut:function(t){var e=2.5949095;return(t*=2)<1?t*t*((e+1)*t-e)*.5:.5*((t-=2)*t*((e+1)*t+e)+2)},bounceIn:function(t){return 1-Le.bounceOut(1-t)},bounceOut:function(t){return t<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375},bounceInOut:function(t){return t<.5?.5*Le.bounceIn(2*t):.5*Le.bounceOut(2*t-1)+.5}},Pe=Math.pow,Oe=Math.sqrt,Re=1e-8,Ne=1e-4,Ee=Oe(3),ze=1/3,Ve=wt(),Be=wt(),Fe=wt();function Ge(t){return t>-1e-8&&t<Re}function We(t){return t>Re||t<-1e-8}function He(t,e,n,i,r){var o=1-r;return o*o*(o*t+3*r*e)+r*r*(r*i+3*o*n)}function Ye(t,e,n,i,r){var o=1-r;return 3*(((e-t)*o+2*(n-e)*r)*o+(i-n)*r*r)}function Ue(t,e,n,i,r,o){var a=i+3*(e-n)-t,s=3*(n-2*e+t),l=3*(e-t),u=t-r,h=s*s-3*a*l,c=s*l-9*a*u,p=l*l-3*s*u,d=0;if(Ge(h)&&Ge(c)){if(Ge(s))o[0]=0;else(M=-l/s)>=0&&M<=1&&(o[d++]=M)}else{var f=c*c-4*h*p;if(Ge(f)){var g=c/h,y=-g/2;(M=-s/a+g)>=0&&M<=1&&(o[d++]=M),y>=0&&y<=1&&(o[d++]=y)}else if(f>0){var v=Oe(f),m=h*s+1.5*a*(-c+v),x=h*s+1.5*a*(-c-v);(M=(-s-((m=m<0?-Pe(-m,ze):Pe(m,ze))+(x=x<0?-Pe(-x,ze):Pe(x,ze))))/(3*a))>=0&&M<=1&&(o[d++]=M)}else{var _=(2*h*s-3*a*c)/(2*Oe(h*h*h)),b=Math.acos(_)/3,w=Oe(h),S=Math.cos(b),M=(-s-2*w*S)/(3*a),I=(y=(-s+w*(S+Ee*Math.sin(b)))/(3*a),(-s+w*(S-Ee*Math.sin(b)))/(3*a));M>=0&&M<=1&&(o[d++]=M),y>=0&&y<=1&&(o[d++]=y),I>=0&&I<=1&&(o[d++]=I)}}return d}function Xe(t,e,n,i,r){var o=6*n-12*e+6*t,a=9*e+3*i-3*t-9*n,s=3*e-3*t,l=0;if(Ge(a)){if(We(o))(h=-s/o)>=0&&h<=1&&(r[l++]=h)}else{var u=o*o-4*a*s;if(Ge(u))r[0]=-o/(2*a);else if(u>0){var h,c=Oe(u),p=(-o-c)/(2*a);(h=(-o+c)/(2*a))>=0&&h<=1&&(r[l++]=h),p>=0&&p<=1&&(r[l++]=p)}}return l}function Ze(t,e,n,i,r,o){var a=(e-t)*r+t,s=(n-e)*r+e,l=(i-n)*r+n,u=(s-a)*r+a,h=(l-s)*r+s,c=(h-u)*r+u;o[0]=t,o[1]=a,o[2]=u,o[3]=c,o[4]=c,o[5]=h,o[6]=l,o[7]=i}function je(t,e,n,i,r,o,a,s,l,u,h){var c,p,d,f,g,y=.005,v=1/0;Ve[0]=l,Ve[1]=u;for(var m=0;m<1;m+=.05)Be[0]=He(t,n,r,a,m),Be[1]=He(e,i,o,s,m),(f=Vt(Ve,Be))<v&&(c=m,v=f);v=1/0;for(var x=0;x<32&&!(y<Ne);x++)p=c-y,d=c+y,Be[0]=He(t,n,r,a,p),Be[1]=He(e,i,o,s,p),f=Vt(Be,Ve),p>=0&&f<v?(c=p,v=f):(Fe[0]=He(t,n,r,a,d),Fe[1]=He(e,i,o,s,d),g=Vt(Fe,Ve),d<=1&&g<v?(c=d,v=g):y*=.5);return h&&(h[0]=He(t,n,r,a,c),h[1]=He(e,i,o,s,c)),Oe(v)}function qe(t,e,n,i,r,o,a,s,l){for(var u=t,h=e,c=0,p=1/l,d=1;d<=l;d++){var f=d*p,g=He(t,n,r,a,f),y=He(e,i,o,s,f),v=g-u,m=y-h;c+=Math.sqrt(v*v+m*m),u=g,h=y}return c}function Ke(t,e,n,i){var r=1-i;return r*(r*t+2*i*e)+i*i*n}function $e(t,e,n,i){return 2*((1-i)*(e-t)+i*(n-e))}function Je(t,e,n){var i=t+n-2*e;return 0===i?.5:(t-e)/i}function Qe(t,e,n,i,r){var o=(e-t)*i+t,a=(n-e)*i+e,s=(a-o)*i+o;r[0]=t,r[1]=o,r[2]=s,r[3]=s,r[4]=a,r[5]=n}function tn(t,e,n,i,r,o,a,s,l){var u,h=.005,c=1/0;Ve[0]=a,Ve[1]=s;for(var p=0;p<1;p+=.05){Be[0]=Ke(t,n,r,p),Be[1]=Ke(e,i,o,p),(y=Vt(Ve,Be))<c&&(u=p,c=y)}c=1/0;for(var d=0;d<32&&!(h<Ne);d++){var f=u-h,g=u+h;Be[0]=Ke(t,n,r,f),Be[1]=Ke(e,i,o,f);var y=Vt(Be,Ve);if(f>=0&&y<c)u=f,c=y;else{Fe[0]=Ke(t,n,r,g),Fe[1]=Ke(e,i,o,g);var v=Vt(Fe,Ve);g<=1&&v<c?(u=g,c=v):h*=.5}}return l&&(l[0]=Ke(t,n,r,u),l[1]=Ke(e,i,o,u)),Oe(c)}function en(t,e,n,i,r,o,a){for(var s=t,l=e,u=0,h=1/a,c=1;c<=a;c++){var p=c*h,d=Ke(t,n,r,p),f=Ke(e,i,o,p),g=d-s,y=f-l;u+=Math.sqrt(g*g+y*y),s=d,l=f}return u}var nn=/cubic-bezier\(([0-9,\.e ]+)\)/;function rn(t){var e=t&&nn.exec(t);if(e){var n=e[1].split(","),i=+ut(n[0]),r=+ut(n[1]),o=+ut(n[2]),a=+ut(n[3]);if(isNaN(i+r+o+a))return;var s=[];return function(t){return t<=0?0:t>=1?1:Ue(0,i,o,1,t,s)&&He(0,r,a,1,s[0])}}}var on=function(){function t(t){this._inited=!1,this._startTime=0,this._pausedTime=0,this._paused=!1,this._life=t.life||1e3,this._delay=t.delay||0,this.loop=t.loop||!1,this.onframe=t.onframe||xt,this.ondestroy=t.ondestroy||xt,this.onrestart=t.onrestart||xt,t.easing&&this.setEasing(t.easing)}return t.prototype.step=function(t,e){if(this._inited||(this._startTime=t+this._delay,this._inited=!0),!this._paused){var n=this._life,i=t-this._startTime-this._pausedTime,r=i/n;r<0&&(r=0),r=Math.min(r,1);var o=this.easingFunc,a=o?o(r):r;if(this.onframe(a),1===r){if(!this.loop)return!0;var s=i%n;this._startTime=t-s,this._pausedTime=0,this.onrestart()}return!1}this._pausedTime+=e},t.prototype.pause=function(){this._paused=!0},t.prototype.resume=function(){this._paused=!1},t.prototype.setEasing=function(t){this.easing=t,this.easingFunc=U(t)?t:Le[t]||rn(t)},t}(),an=function(t){this.value=t},sn=function(){function t(){this._len=0}return t.prototype.insert=function(t){var e=new an(t);return this.insertEntry(e),e},t.prototype.insertEntry=function(t){this.head?(this.tail.next=t,t.prev=this.tail,t.next=null,this.tail=t):this.head=this.tail=t,this._len++},t.prototype.remove=function(t){var e=t.prev,n=t.next;e?e.next=n:this.head=n,n?n.prev=e:this.tail=e,t.next=t.prev=null,this._len--},t.prototype.len=function(){return this._len},t.prototype.clear=function(){this.head=this.tail=null,this._len=0},t}(),ln=function(){function t(t){this._list=new sn,this._maxSize=10,this._map={},this._maxSize=t}return t.prototype.put=function(t,e){var n=this._list,i=this._map,r=null;if(null==i[t]){var o=n.len(),a=this._lastRemovedEntry;if(o>=this._maxSize&&o>0){var s=n.head;n.remove(s),delete i[s.key],r=s.value,this._lastRemovedEntry=s}a?a.value=e:a=new an(e),a.key=t,n.insertEntry(a),i[t]=a}return r},t.prototype.get=function(t){var e=this._map[t],n=this._list;if(null!=e)return e!==n.tail&&(n.remove(e),n.insertEntry(e)),e.value},t.prototype.clear=function(){this._list.clear(),this._map={}},t.prototype.len=function(){return this._list.len()},t}(),un={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};function hn(t){return(t=Math.round(t))<0?0:t>255?255:t}function cn(t){return t<0?0:t>1?1:t}function pn(t){var e=t;return e.length&&"%"===e.charAt(e.length-1)?hn(parseFloat(e)/100*255):hn(parseInt(e,10))}function dn(t){var e=t;return e.length&&"%"===e.charAt(e.length-1)?cn(parseFloat(e)/100):cn(parseFloat(e))}function fn(t,e,n){return n<0?n+=1:n>1&&(n-=1),6*n<1?t+(e-t)*n*6:2*n<1?e:3*n<2?t+(e-t)*(2/3-n)*6:t}function gn(t,e,n){return t+(e-t)*n}function yn(t,e,n,i,r){return t[0]=e,t[1]=n,t[2]=i,t[3]=r,t}function vn(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t}var mn=new ln(20),xn=null;function _n(t,e){xn&&vn(xn,e),xn=mn.put(t,xn||e.slice())}function bn(t,e){if(t){e=e||[];var n=mn.get(t);if(n)return vn(e,n);var i=(t+="").replace(/ /g,"").toLowerCase();if(i in un)return vn(e,un[i]),_n(t,e),e;var r,o=i.length;if("#"===i.charAt(0))return 4===o||5===o?(r=parseInt(i.slice(1,4),16))>=0&&r<=4095?(yn(e,(3840&r)>>4|(3840&r)>>8,240&r|(240&r)>>4,15&r|(15&r)<<4,5===o?parseInt(i.slice(4),16)/15:1),_n(t,e),e):void yn(e,0,0,0,1):7===o||9===o?(r=parseInt(i.slice(1,7),16))>=0&&r<=16777215?(yn(e,(16711680&r)>>16,(65280&r)>>8,255&r,9===o?parseInt(i.slice(7),16)/255:1),_n(t,e),e):void yn(e,0,0,0,1):void 0;var a=i.indexOf("("),s=i.indexOf(")");if(-1!==a&&s+1===o){var l=i.substr(0,a),u=i.substr(a+1,s-(a+1)).split(","),h=1;switch(l){case"rgba":if(4!==u.length)return 3===u.length?yn(e,+u[0],+u[1],+u[2],1):yn(e,0,0,0,1);h=dn(u.pop());case"rgb":return 3!==u.length?void yn(e,0,0,0,1):(yn(e,pn(u[0]),pn(u[1]),pn(u[2]),h),_n(t,e),e);case"hsla":return 4!==u.length?void yn(e,0,0,0,1):(u[3]=dn(u[3]),wn(u,e),_n(t,e),e);case"hsl":return 3!==u.length?void yn(e,0,0,0,1):(wn(u,e),_n(t,e),e);default:return}}yn(e,0,0,0,1)}}function wn(t,e){var n=(parseFloat(t[0])%360+360)%360/360,i=dn(t[1]),r=dn(t[2]),o=r<=.5?r*(i+1):r+i-r*i,a=2*r-o;return yn(e=e||[],hn(255*fn(a,o,n+1/3)),hn(255*fn(a,o,n)),hn(255*fn(a,o,n-1/3)),1),4===t.length&&(e[3]=t[3]),e}function Sn(t,e){var n=bn(t);if(n){for(var i=0;i<3;i++)n[i]=e<0?n[i]*(1-e)|0:(255-n[i])*e+n[i]|0,n[i]>255?n[i]=255:n[i]<0&&(n[i]=0);return kn(n,4===n.length?"rgba":"rgb")}}function Mn(t,e,n){if(e&&e.length&&t>=0&&t<=1){n=n||[];var i=t*(e.length-1),r=Math.floor(i),o=Math.ceil(i),a=e[r],s=e[o],l=i-r;return n[0]=hn(gn(a[0],s[0],l)),n[1]=hn(gn(a[1],s[1],l)),n[2]=hn(gn(a[2],s[2],l)),n[3]=cn(gn(a[3],s[3],l)),n}}var In=Mn;function Tn(t,e,n){if(e&&e.length&&t>=0&&t<=1){var i=t*(e.length-1),r=Math.floor(i),o=Math.ceil(i),a=bn(e[r]),s=bn(e[o]),l=i-r,u=kn([hn(gn(a[0],s[0],l)),hn(gn(a[1],s[1],l)),hn(gn(a[2],s[2],l)),cn(gn(a[3],s[3],l))],"rgba");return n?{color:u,leftIndex:r,rightIndex:o,value:i}:u}}var Cn=Tn;function Dn(t,e,n,i){var r=bn(t);if(t)return r=function(t){if(t){var e,n,i=t[0]/255,r=t[1]/255,o=t[2]/255,a=Math.min(i,r,o),s=Math.max(i,r,o),l=s-a,u=(s+a)/2;if(0===l)e=0,n=0;else{n=u<.5?l/(s+a):l/(2-s-a);var h=((s-i)/6+l/2)/l,c=((s-r)/6+l/2)/l,p=((s-o)/6+l/2)/l;i===s?e=p-c:r===s?e=1/3+h-p:o===s&&(e=2/3+c-h),e<0&&(e+=1),e>1&&(e-=1)}var d=[360*e,n,u];return null!=t[3]&&d.push(t[3]),d}}(r),null!=e&&(r[0]=function(t){return(t=Math.round(t))<0?0:t>360?360:t}(e)),null!=n&&(r[1]=dn(n)),null!=i&&(r[2]=dn(i)),kn(wn(r),"rgba")}function An(t,e){var n=bn(t);if(n&&null!=e)return n[3]=cn(e),kn(n,"rgba")}function kn(t,e){if(t&&t.length){var n=t[0]+","+t[1]+","+t[2];return"rgba"!==e&&"hsva"!==e&&"hsla"!==e||(n+=","+t[3]),e+"("+n+")"}}function Ln(t,e){var n=bn(t);return n?(.299*n[0]+.587*n[1]+.114*n[2])*n[3]/255+(1-n[3])*e:0}var Pn=Object.freeze({__proto__:null,parse:bn,lift:Sn,toHex:function(t){var e=bn(t);if(e)return((1<<24)+(e[0]<<16)+(e[1]<<8)+ +e[2]).toString(16).slice(1)},fastLerp:Mn,fastMapToColor:In,lerp:Tn,mapToColor:Cn,modifyHSL:Dn,modifyAlpha:An,stringify:kn,lum:Ln,random:function(){return kn([Math.round(255*Math.random()),Math.round(255*Math.random()),Math.round(255*Math.random())],"rgb")}}),On=Math.round;function Rn(t){var e;if(t&&"transparent"!==t){if("string"==typeof t&&t.indexOf("rgba")>-1){var n=bn(t);n&&(t="rgb("+n[0]+","+n[1]+","+n[2]+")",e=n[3])}}else t="none";return{color:t,opacity:null==e?1:e}}var Nn=1e-4;function En(t){return t<Nn&&t>-1e-4}function zn(t){return On(1e3*t)/1e3}function Vn(t){return On(1e4*t)/1e4}var Bn={left:"start",right:"end",center:"middle",middle:"middle"};function Fn(t){return t&&!!t.image}function Gn(t){return"linear"===t.type}function Wn(t){return"radial"===t.type}function Hn(t){return"url(#"+t+")"}function Yn(t){var e=t.getGlobalScale(),n=Math.max(e[0],e[1]);return Math.max(Math.ceil(Math.log(n)/Math.log(10)),1)}function Un(t){var e=t.x||0,n=t.y||0,i=(t.rotation||0)*_t,r=rt(t.scaleX,1),o=rt(t.scaleY,1),a=t.skewX||0,s=t.skewY||0,l=[];return(e||n)&&l.push("translate("+e+"px,"+n+"px)"),i&&l.push("rotate("+i+")"),1===r&&1===o||l.push("scale("+r+","+o+")"),(a||s)&&l.push("skew("+On(a*_t)+"deg, "+On(s*_t)+"deg)"),l.join(" ")}var Xn=r.hasGlobalWindow&&U(window.btoa)?function(t){return window.btoa(unescape(t))}:"undefined"!=typeof Buffer?function(t){return Buffer.from(t).toString("base64")}:function(t){return null},Zn=Array.prototype.slice;function jn(t,e,n){return(e-t)*n+t}function qn(t,e,n,i){for(var r=e.length,o=0;o<r;o++)t[o]=jn(e[o],n[o],i);return t}function Kn(t,e,n,i){for(var r=e.length,o=0;o<r;o++)t[o]=e[o]+n[o]*i;return t}function $n(t,e,n,i){for(var r=e.length,o=r&&e[0].length,a=0;a<r;a++){t[a]||(t[a]=[]);for(var s=0;s<o;s++)t[a][s]=e[a][s]+n[a][s]*i}return t}function Jn(t,e){for(var n=t.length,i=e.length,r=n>i?e:t,o=Math.min(n,i),a=r[o-1]||{color:[0,0,0,0],offset:0},s=o;s<Math.max(n,i);s++)r.push({offset:a.offset,color:a.color.slice()})}function Qn(t,e,n){var i=t,r=e;if(i.push&&r.push){var o=i.length,a=r.length;if(o!==a)if(o>a)i.length=a;else for(var s=o;s<a;s++)i.push(1===n?r[s]:Zn.call(r[s]));var l=i[0]&&i[0].length;for(s=0;s<i.length;s++)if(1===n)isNaN(i[s])&&(i[s]=r[s]);else for(var u=0;u<l;u++)isNaN(i[s][u])&&(i[s][u]=r[s][u])}}function ti(t){if(N(t)){var e=t.length;if(N(t[0])){for(var n=[],i=0;i<e;i++)n.push(Zn.call(t[i]));return n}return Zn.call(t)}return t}function ei(t){return t[0]=Math.floor(t[0])||0,t[1]=Math.floor(t[1])||0,t[2]=Math.floor(t[2])||0,t[3]=null==t[3]?1:t[3],"rgba("+t.join(",")+")"}function ni(t){return 4===t||5===t}function ii(t){return 1===t||2===t}var ri=[0,0,0,0],oi=function(){function t(t){this.keyframes=[],this.discrete=!1,this._invalid=!1,this._needsSort=!1,this._lastFr=0,this._lastFrP=0,this.propName=t}return t.prototype.isFinished=function(){return this._finished},t.prototype.setFinished=function(){this._finished=!0,this._additiveTrack&&this._additiveTrack.setFinished()},t.prototype.needsAnimate=function(){return this.keyframes.length>=1},t.prototype.getAdditiveTrack=function(){return this._additiveTrack},t.prototype.addKeyframe=function(t,e,n){this._needsSort=!0;var i=this.keyframes,r=i.length,o=!1,a=6,s=e;if(N(e)){var l=function(t){return N(t&&t[0])?2:1}(e);a=l,(1===l&&!j(e[0])||2===l&&!j(e[0][0]))&&(o=!0)}else if(j(e)&&!nt(e))a=0;else if(X(e))if(isNaN(+e)){var u=bn(e);u&&(s=u,a=3)}else a=0;else if(Q(e)){var h=A({},s);h.colorStops=z(e.colorStops,(function(t){return{offset:t.offset,color:bn(t.color)}})),Gn(e)?a=4:Wn(e)&&(a=5),s=h}0===r?this.valType=a:a===this.valType&&6!==a||(o=!0),this.discrete=this.discrete||o;var c={time:t,value:s,rawValue:e,percent:0};return n&&(c.easing=n,c.easingFunc=U(n)?n:Le[n]||rn(n)),i.push(c),c},t.prototype.prepare=function(t,e){var n=this.keyframes;this._needsSort&&n.sort((function(t,e){return t.time-e.time}));for(var i=this.valType,r=n.length,o=n[r-1],a=this.discrete,s=ii(i),l=ni(i),u=0;u<r;u++){var h=n[u],c=h.value,p=o.value;h.percent=h.time/t,a||(s&&u!==r-1?Qn(c,p,i):l&&Jn(c.colorStops,p.colorStops))}if(!a&&5!==i&&e&&this.needsAnimate()&&e.needsAnimate()&&i===e.valType&&!e._finished){this._additiveTrack=e;var d=n[0].value;for(u=0;u<r;u++)0===i?n[u].additiveValue=n[u].value-d:3===i?n[u].additiveValue=Kn([],n[u].value,d,-1):ii(i)&&(n[u].additiveValue=1===i?Kn([],n[u].value,d,-1):$n([],n[u].value,d,-1))}},t.prototype.step=function(t,e){if(!this._finished){this._additiveTrack&&this._additiveTrack._finished&&(this._additiveTrack=null);var n,i,r,o=null!=this._additiveTrack,a=o?"additiveValue":"value",s=this.valType,l=this.keyframes,u=l.length,h=this.propName,c=3===s,p=this._lastFr,d=Math.min;if(1===u)i=r=l[0];else{if(e<0)n=0;else if(e<this._lastFrP){for(n=d(p+1,u-1);n>=0&&!(l[n].percent<=e);n--);n=d(n,u-2)}else{for(n=p;n<u&&!(l[n].percent>e);n++);n=d(n-1,u-2)}r=l[n+1],i=l[n]}if(i&&r){this._lastFr=n,this._lastFrP=e;var f=r.percent-i.percent,g=0===f?1:d((e-i.percent)/f,1);r.easingFunc&&(g=r.easingFunc(g));var y=o?this._additiveValue:c?ri:t[h];if(!ii(s)&&!c||y||(y=this._additiveValue=[]),this.discrete)t[h]=g<1?i.rawValue:r.rawValue;else if(ii(s))1===s?qn(y,i[a],r[a],g):function(t,e,n,i){for(var r=e.length,o=r&&e[0].length,a=0;a<r;a++){t[a]||(t[a]=[]);for(var s=0;s<o;s++)t[a][s]=jn(e[a][s],n[a][s],i)}}(y,i[a],r[a],g);else if(ni(s)){var v=i[a],m=r[a],x=4===s;t[h]={type:x?"linear":"radial",x:jn(v.x,m.x,g),y:jn(v.y,m.y,g),colorStops:z(v.colorStops,(function(t,e){var n=m.colorStops[e];return{offset:jn(t.offset,n.offset,g),color:ei(qn([],t.color,n.color,g))}})),global:m.global},x?(t[h].x2=jn(v.x2,m.x2,g),t[h].y2=jn(v.y2,m.y2,g)):t[h].r=jn(v.r,m.r,g)}else if(c)qn(y,i[a],r[a],g),o||(t[h]=ei(y));else{var _=jn(i[a],r[a],g);o?this._additiveValue=_:t[h]=_}o&&this._addToTarget(t)}}},t.prototype._addToTarget=function(t){var e=this.valType,n=this.propName,i=this._additiveValue;0===e?t[n]=t[n]+i:3===e?(bn(t[n],ri),Kn(ri,ri,i,1),t[n]=ei(ri)):1===e?Kn(t[n],t[n],i,1):2===e&&$n(t[n],t[n],i,1)},t}(),ai=function(){function t(t,e,n,i){this._tracks={},this._trackKeys=[],this._maxTime=0,this._started=0,this._clip=null,this._target=t,this._loop=e,e&&i?I("Can' use additive animation on looped animation."):(this._additiveAnimators=i,this._allowDiscrete=n)}return t.prototype.getMaxTime=function(){return this._maxTime},t.prototype.getDelay=function(){return this._delay},t.prototype.getLoop=function(){return this._loop},t.prototype.getTarget=function(){return this._target},t.prototype.changeTarget=function(t){this._target=t},t.prototype.when=function(t,e,n){return this.whenWithKeys(t,e,G(e),n)},t.prototype.whenWithKeys=function(t,e,n,i){for(var r=this._tracks,o=0;o<n.length;o++){var a=n[o],s=r[a];if(!s){s=r[a]=new oi(a);var l=void 0,u=this._getAdditiveTrack(a);if(u){var h=u.keyframes,c=h[h.length-1];l=c&&c.value,3===u.valType&&l&&(l=ei(l))}else l=this._target[a];if(null==l)continue;t>0&&s.addKeyframe(0,ti(l),i),this._trackKeys.push(a)}s.addKeyframe(t,ti(e[a]),i)}return this._maxTime=Math.max(this._maxTime,t),this},t.prototype.pause=function(){this._clip.pause(),this._paused=!0},t.prototype.resume=function(){this._clip.resume(),this._paused=!1},t.prototype.isPaused=function(){return!!this._paused},t.prototype.duration=function(t){return this._maxTime=t,this._force=!0,this},t.prototype._doneCallback=function(){this._setTracksFinished(),this._clip=null;var t=this._doneCbs;if(t)for(var e=t.length,n=0;n<e;n++)t[n].call(this)},t.prototype._abortedCallback=function(){this._setTracksFinished();var t=this.animation,e=this._abortedCbs;if(t&&t.removeClip(this._clip),this._clip=null,e)for(var n=0;n<e.length;n++)e[n].call(this)},t.prototype._setTracksFinished=function(){for(var t=this._tracks,e=this._trackKeys,n=0;n<e.length;n++)t[e[n]].setFinished()},t.prototype._getAdditiveTrack=function(t){var e,n=this._additiveAnimators;if(n)for(var i=0;i<n.length;i++){var r=n[i].getTrack(t);r&&(e=r)}return e},t.prototype.start=function(t){if(!(this._started>0)){this._started=1;for(var e=this,n=[],i=this._maxTime||0,r=0;r<this._trackKeys.length;r++){var o=this._trackKeys[r],a=this._tracks[o],s=this._getAdditiveTrack(o),l=a.keyframes,u=l.length;if(a.prepare(i,s),a.needsAnimate())if(!this._allowDiscrete&&a.discrete){var h=l[u-1];h&&(e._target[a.propName]=h.rawValue),a.setFinished()}else n.push(a)}if(n.length||this._force){var c=new on({life:i,loop:this._loop,delay:this._delay||0,onframe:function(t){e._started=2;var i=e._additiveAnimators;if(i){for(var r=!1,o=0;o<i.length;o++)if(i[o]._clip){r=!0;break}r||(e._additiveAnimators=null)}for(o=0;o<n.length;o++)n[o].step(e._target,t);var a=e._onframeCbs;if(a)for(o=0;o<a.length;o++)a[o](e._target,t)},ondestroy:function(){e._doneCallback()}});this._clip=c,this.animation&&this.animation.addClip(c),t&&c.setEasing(t)}else this._doneCallback();return this}},t.prototype.stop=function(t){if(this._clip){var e=this._clip;t&&e.onframe(1),this._abortedCallback()}},t.prototype.delay=function(t){return this._delay=t,this},t.prototype.during=function(t){return t&&(this._onframeCbs||(this._onframeCbs=[]),this._onframeCbs.push(t)),this},t.prototype.done=function(t){return t&&(this._doneCbs||(this._doneCbs=[]),this._doneCbs.push(t)),this},t.prototype.aborted=function(t){return t&&(this._abortedCbs||(this._abortedCbs=[]),this._abortedCbs.push(t)),this},t.prototype.getClip=function(){return this._clip},t.prototype.getTrack=function(t){return this._tracks[t]},t.prototype.getTracks=function(){var t=this;return z(this._trackKeys,(function(e){return t._tracks[e]}))},t.prototype.stopTracks=function(t,e){if(!t.length||!this._clip)return!0;for(var n=this._tracks,i=this._trackKeys,r=0;r<t.length;r++){var o=n[t[r]];o&&!o.isFinished()&&(e?o.step(this._target,1):1===this._started&&o.step(this._target,0),o.setFinished())}var a=!0;for(r=0;r<i.length;r++)if(!n[i[r]].isFinished()){a=!1;break}return a&&this._abortedCallback(),a},t.prototype.saveTo=function(t,e,n){if(t){e=e||this._trackKeys;for(var i=0;i<e.length;i++){var r=e[i],o=this._tracks[r];if(o&&!o.isFinished()){var a=o.keyframes,s=a[n?0:a.length-1];s&&(t[r]=ti(s.rawValue))}}}},t.prototype.__changeFinalValue=function(t,e){e=e||G(t);for(var n=0;n<e.length;n++){var i=e[n],r=this._tracks[i];if(r){var o=r.keyframes;if(o.length>1){var a=o.pop();r.addKeyframe(a.time,t[i]),r.prepare(this._maxTime,r.getAdditiveTrack())}}}},t}();function si(){return(new Date).getTime()}var li,ui,hi=function(t){function e(e){var n=t.call(this)||this;return n._running=!1,n._time=0,n._pausedTime=0,n._pauseStart=0,n._paused=!1,e=e||{},n.stage=e.stage||{},n}return n(e,t),e.prototype.addClip=function(t){t.animation&&this.removeClip(t),this._head?(this._tail.next=t,t.prev=this._tail,t.next=null,this._tail=t):this._head=this._tail=t,t.animation=this},e.prototype.addAnimator=function(t){t.animation=this;var e=t.getClip();e&&this.addClip(e)},e.prototype.removeClip=function(t){if(t.animation){var e=t.prev,n=t.next;e?e.next=n:this._head=n,n?n.prev=e:this._tail=e,t.next=t.prev=t.animation=null}},e.prototype.removeAnimator=function(t){var e=t.getClip();e&&this.removeClip(e),t.animation=null},e.prototype.update=function(t){for(var e=si()-this._pausedTime,n=e-this._time,i=this._head;i;){var r=i.next;i.step(e,n)?(i.ondestroy(),this.removeClip(i),i=r):i=r}this._time=e,t||(this.trigger("frame",n),this.stage.update&&this.stage.update())},e.prototype._startLoop=function(){var t=this;this._running=!0,ke((function e(){t._running&&(ke(e),!t._paused&&t.update())}))},e.prototype.start=function(){this._running||(this._time=si(),this._pausedTime=0,this._startLoop())},e.prototype.stop=function(){this._running=!1},e.prototype.pause=function(){this._paused||(this._pauseStart=si(),this._paused=!0)},e.prototype.resume=function(){this._paused&&(this._pausedTime+=si()-this._pauseStart,this._paused=!1)},e.prototype.clear=function(){for(var t=this._head;t;){var e=t.next;t.prev=t.next=t.animation=null,t=e}this._head=this._tail=null},e.prototype.isFinished=function(){return null==this._head},e.prototype.animate=function(t,e){e=e||{},this.start();var n=new ai(t,e.loop);return this.addAnimator(n),n},e}(Xt),ci=r.domSupported,pi=(ui={pointerdown:1,pointerup:1,pointermove:1,pointerout:1},{mouse:li=["click","dblclick","mousewheel","wheel","mouseout","mouseup","mousedown","mousemove","contextmenu"],touch:["touchstart","touchend","touchmove"],pointer:z(li,(function(t){var e=t.replace("mouse","pointer");return ui.hasOwnProperty(e)?e:t}))}),di=["mousemove","mouseup"],fi=["pointermove","pointerup"],gi=!1;function yi(t){var e=t.pointerType;return"pen"===e||"touch"===e}function vi(t){t&&(t.zrByTouch=!0)}function mi(t,e){for(var n=e,i=!1;n&&9!==n.nodeType&&!(i=n.domBelongToZr||n!==e&&n===t.painterRoot);)n=n.parentNode;return i}var xi=function(t,e){this.stopPropagation=xt,this.stopImmediatePropagation=xt,this.preventDefault=xt,this.type=e.type,this.target=this.currentTarget=t.dom,this.pointerType=e.pointerType,this.clientX=e.clientX,this.clientY=e.clientY},_i={mousedown:function(t){t=oe(this.dom,t),this.__mayPointerCapture=[t.zrX,t.zrY],this.trigger("mousedown",t)},mousemove:function(t){t=oe(this.dom,t);var e=this.__mayPointerCapture;!e||t.zrX===e[0]&&t.zrY===e[1]||this.__togglePointerCapture(!0),this.trigger("mousemove",t)},mouseup:function(t){t=oe(this.dom,t),this.__togglePointerCapture(!1),this.trigger("mouseup",t)},mouseout:function(t){mi(this,(t=oe(this.dom,t)).toElement||t.relatedTarget)||(this.__pointerCapturing&&(t.zrEventControl="no_globalout"),this.trigger("mouseout",t))},wheel:function(t){gi=!0,t=oe(this.dom,t),this.trigger("mousewheel",t)},mousewheel:function(t){gi||(t=oe(this.dom,t),this.trigger("mousewheel",t))},touchstart:function(t){vi(t=oe(this.dom,t)),this.__lastTouchMoment=new Date,this.handler.processGesture(t,"start"),_i.mousemove.call(this,t),_i.mousedown.call(this,t)},touchmove:function(t){vi(t=oe(this.dom,t)),this.handler.processGesture(t,"change"),_i.mousemove.call(this,t)},touchend:function(t){vi(t=oe(this.dom,t)),this.handler.processGesture(t,"end"),_i.mouseup.call(this,t),+new Date-+this.__lastTouchMoment<300&&_i.click.call(this,t)},pointerdown:function(t){_i.mousedown.call(this,t)},pointermove:function(t){yi(t)||_i.mousemove.call(this,t)},pointerup:function(t){_i.mouseup.call(this,t)},pointerout:function(t){yi(t)||_i.mouseout.call(this,t)}};E(["click","dblclick","contextmenu"],(function(t){_i[t]=function(e){e=oe(this.dom,e),this.trigger(t,e)}}));var bi={pointermove:function(t){yi(t)||bi.mousemove.call(this,t)},pointerup:function(t){bi.mouseup.call(this,t)},mousemove:function(t){this.trigger("mousemove",t)},mouseup:function(t){var e=this.__pointerCapturing;this.__togglePointerCapture(!1),this.trigger("mouseup",t),e&&(t.zrEventControl="only_globalout",this.trigger("mouseout",t))}};function wi(t,e){var n=e.domHandlers;r.pointerEventsSupported?E(pi.pointer,(function(i){Mi(e,i,(function(e){n[i].call(t,e)}))})):(r.touchEventsSupported&&E(pi.touch,(function(i){Mi(e,i,(function(r){n[i].call(t,r),function(t){t.touching=!0,null!=t.touchTimer&&(clearTimeout(t.touchTimer),t.touchTimer=null),t.touchTimer=setTimeout((function(){t.touching=!1,t.touchTimer=null}),700)}(e)}))})),E(pi.mouse,(function(i){Mi(e,i,(function(r){r=re(r),e.touching||n[i].call(t,r)}))})))}function Si(t,e){function n(n){Mi(e,n,(function(i){i=re(i),mi(t,i.target)||(i=function(t,e){return oe(t.dom,new xi(t,e),!0)}(t,i),e.domHandlers[n].call(t,i))}),{capture:!0})}r.pointerEventsSupported?E(fi,n):r.touchEventsSupported||E(di,n)}function Mi(t,e,n,i){t.mounted[e]=n,t.listenerOpts[e]=i,ae(t.domTarget,e,n,i)}function Ii(t){var e,n,i,r,o=t.mounted;for(var a in o)o.hasOwnProperty(a)&&(e=t.domTarget,n=a,i=o[a],r=t.listenerOpts[a],e.removeEventListener(n,i,r));t.mounted={}}var Ti=function(t,e){this.mounted={},this.listenerOpts={},this.touching=!1,this.domTarget=t,this.domHandlers=e},Ci=function(t){function e(e,n){var i=t.call(this)||this;return i.__pointerCapturing=!1,i.dom=e,i.painterRoot=n,i._localHandlerScope=new Ti(e,_i),ci&&(i._globalHandlerScope=new Ti(document,bi)),wi(i,i._localHandlerScope),i}return n(e,t),e.prototype.dispose=function(){Ii(this._localHandlerScope),ci&&Ii(this._globalHandlerScope)},e.prototype.setCursor=function(t){this.dom.style&&(this.dom.style.cursor=t||"default")},e.prototype.__togglePointerCapture=function(t){if(this.__mayPointerCapture=null,ci&&+this.__pointerCapturing^+t){this.__pointerCapturing=t;var e=this._globalHandlerScope;t?Si(this,e):Ii(e)}},e}(Xt),Di=1;r.hasGlobalWindow&&(Di=Math.max(window.devicePixelRatio||window.screen&&window.screen.deviceXDPI/window.screen.logicalXDPI||1,1));var Ai=Di,ki="#333",Li="#ccc";function Pi(){return[1,0,0,1,0,0]}function Oi(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t[4]=0,t[5]=0,t}function Ri(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t}function Ni(t,e,n){var i=e[0]*n[0]+e[2]*n[1],r=e[1]*n[0]+e[3]*n[1],o=e[0]*n[2]+e[2]*n[3],a=e[1]*n[2]+e[3]*n[3],s=e[0]*n[4]+e[2]*n[5]+e[4],l=e[1]*n[4]+e[3]*n[5]+e[5];return t[0]=i,t[1]=r,t[2]=o,t[3]=a,t[4]=s,t[5]=l,t}function Ei(t,e,n){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4]+n[0],t[5]=e[5]+n[1],t}function zi(t,e,n){var i=e[0],r=e[2],o=e[4],a=e[1],s=e[3],l=e[5],u=Math.sin(n),h=Math.cos(n);return t[0]=i*h+a*u,t[1]=-i*u+a*h,t[2]=r*h+s*u,t[3]=-r*u+h*s,t[4]=h*o+u*l,t[5]=h*l-u*o,t}function Vi(t,e,n){var i=n[0],r=n[1];return t[0]=e[0]*i,t[1]=e[1]*r,t[2]=e[2]*i,t[3]=e[3]*r,t[4]=e[4]*i,t[5]=e[5]*r,t}function Bi(t,e){var n=e[0],i=e[2],r=e[4],o=e[1],a=e[3],s=e[5],l=n*a-o*i;return l?(l=1/l,t[0]=a*l,t[1]=-o*l,t[2]=-i*l,t[3]=n*l,t[4]=(i*s-a*r)*l,t[5]=(o*r-n*s)*l,t):null}function Fi(t){var e=[1,0,0,1,0,0];return Ri(e,t),e}var Gi=Object.freeze({__proto__:null,create:Pi,identity:Oi,copy:Ri,mul:Ni,translate:Ei,rotate:zi,scale:Vi,invert:Bi,clone:Fi}),Wi=Oi,Hi=5e-5;function Yi(t){return t>Hi||t<-5e-5}var Ui=[],Xi=[],Zi=[1,0,0,1,0,0],ji=Math.abs,qi=function(){function t(){}return t.prototype.getLocalTransform=function(e){return t.getLocalTransform(this,e)},t.prototype.setPosition=function(t){this.x=t[0],this.y=t[1]},t.prototype.setScale=function(t){this.scaleX=t[0],this.scaleY=t[1]},t.prototype.setSkew=function(t){this.skewX=t[0],this.skewY=t[1]},t.prototype.setOrigin=function(t){this.originX=t[0],this.originY=t[1]},t.prototype.needLocalTransform=function(){return Yi(this.rotation)||Yi(this.x)||Yi(this.y)||Yi(this.scaleX-1)||Yi(this.scaleY-1)||Yi(this.skewX)||Yi(this.skewY)},t.prototype.updateTransform=function(){var t=this.parent&&this.parent.transform,e=this.needLocalTransform(),n=this.transform;e||t?(n=n||[1,0,0,1,0,0],e?this.getLocalTransform(n):Wi(n),t&&(e?Ni(n,t,n):Ri(n,t)),this.transform=n,this._resolveGlobalScaleRatio(n)):n&&Wi(n)},t.prototype._resolveGlobalScaleRatio=function(t){var e=this.globalScaleRatio;if(null!=e&&1!==e){this.getGlobalScale(Ui);var n=Ui[0]<0?-1:1,i=Ui[1]<0?-1:1,r=((Ui[0]-n)*e+n)/Ui[0]||0,o=((Ui[1]-i)*e+i)/Ui[1]||0;t[0]*=r,t[1]*=r,t[2]*=o,t[3]*=o}this.invTransform=this.invTransform||[1,0,0,1,0,0],Bi(this.invTransform,t)},t.prototype.getComputedTransform=function(){for(var t=this,e=[];t;)e.push(t),t=t.parent;for(;t=e.pop();)t.updateTransform();return this.transform},t.prototype.setLocalTransform=function(t){if(t){var e=t[0]*t[0]+t[1]*t[1],n=t[2]*t[2]+t[3]*t[3],i=Math.atan2(t[1],t[0]),r=Math.PI/2+i-Math.atan2(t[3],t[2]);n=Math.sqrt(n)*Math.cos(r),e=Math.sqrt(e),this.skewX=r,this.skewY=0,this.rotation=-i,this.x=+t[4],this.y=+t[5],this.scaleX=e,this.scaleY=n,this.originX=0,this.originY=0}},t.prototype.decomposeTransform=function(){if(this.transform){var t=this.parent,e=this.transform;t&&t.transform&&(Ni(Xi,t.invTransform,e),e=Xi);var n=this.originX,i=this.originY;(n||i)&&(Zi[4]=n,Zi[5]=i,Ni(Xi,e,Zi),Xi[4]-=n,Xi[5]-=i,e=Xi),this.setLocalTransform(e)}},t.prototype.getGlobalScale=function(t){var e=this.transform;return t=t||[],e?(t[0]=Math.sqrt(e[0]*e[0]+e[1]*e[1]),t[1]=Math.sqrt(e[2]*e[2]+e[3]*e[3]),e[0]<0&&(t[0]=-t[0]),e[3]<0&&(t[1]=-t[1]),t):(t[0]=1,t[1]=1,t)},t.prototype.transformCoordToLocal=function(t,e){var n=[t,e],i=this.invTransform;return i&&Ft(n,n,i),n},t.prototype.transformCoordToGlobal=function(t,e){var n=[t,e],i=this.transform;return i&&Ft(n,n,i),n},t.prototype.getLineScale=function(){var t=this.transform;return t&&ji(t[0]-1)>1e-10&&ji(t[3]-1)>1e-10?Math.sqrt(ji(t[0]*t[3]-t[2]*t[1])):1},t.prototype.copyTransform=function(t){$i(this,t)},t.getLocalTransform=function(t,e){e=e||[];var n=t.originX||0,i=t.originY||0,r=t.scaleX,o=t.scaleY,a=t.anchorX,s=t.anchorY,l=t.rotation||0,u=t.x,h=t.y,c=t.skewX?Math.tan(t.skewX):0,p=t.skewY?Math.tan(-t.skewY):0;if(n||i||a||s){var d=n+a,f=i+s;e[4]=-d*r-c*f*o,e[5]=-f*o-p*d*r}else e[4]=e[5]=0;return e[0]=r,e[3]=o,e[1]=p*r,e[2]=c*o,l&&zi(e,e,l),e[4]+=n+u,e[5]+=i+h,e},t.initDefaultProps=function(){var e=t.prototype;e.scaleX=e.scaleY=e.globalScaleRatio=1,e.x=e.y=e.originX=e.originY=e.skewX=e.skewY=e.rotation=e.anchorX=e.anchorY=0}(),t}(),Ki=["x","y","originX","originY","anchorX","anchorY","rotation","scaleX","scaleY","skewX","skewY"];function $i(t,e){for(var n=0;n<Ki.length;n++){var i=Ki[n];t[i]=e[i]}}var Ji=function(){function t(t,e){this.x=t||0,this.y=e||0}return t.prototype.copy=function(t){return this.x=t.x,this.y=t.y,this},t.prototype.clone=function(){return new t(this.x,this.y)},t.prototype.set=function(t,e){return this.x=t,this.y=e,this},t.prototype.equal=function(t){return t.x===this.x&&t.y===this.y},t.prototype.add=function(t){return this.x+=t.x,this.y+=t.y,this},t.prototype.scale=function(t){this.x*=t,this.y*=t},t.prototype.scaleAndAdd=function(t,e){this.x+=t.x*e,this.y+=t.y*e},t.prototype.sub=function(t){return this.x-=t.x,this.y-=t.y,this},t.prototype.dot=function(t){return this.x*t.x+this.y*t.y},t.prototype.len=function(){return Math.sqrt(this.x*this.x+this.y*this.y)},t.prototype.lenSquare=function(){return this.x*this.x+this.y*this.y},t.prototype.normalize=function(){var t=this.len();return this.x/=t,this.y/=t,this},t.prototype.distance=function(t){var e=this.x-t.x,n=this.y-t.y;return Math.sqrt(e*e+n*n)},t.prototype.distanceSquare=function(t){var e=this.x-t.x,n=this.y-t.y;return e*e+n*n},t.prototype.negate=function(){return this.x=-this.x,this.y=-this.y,this},t.prototype.transform=function(t){if(t){var e=this.x,n=this.y;return this.x=t[0]*e+t[2]*n+t[4],this.y=t[1]*e+t[3]*n+t[5],this}},t.prototype.toArray=function(t){return t[0]=this.x,t[1]=this.y,t},t.prototype.fromArray=function(t){this.x=t[0],this.y=t[1]},t.set=function(t,e,n){t.x=e,t.y=n},t.copy=function(t,e){t.x=e.x,t.y=e.y},t.len=function(t){return Math.sqrt(t.x*t.x+t.y*t.y)},t.lenSquare=function(t){return t.x*t.x+t.y*t.y},t.dot=function(t,e){return t.x*e.x+t.y*e.y},t.add=function(t,e,n){t.x=e.x+n.x,t.y=e.y+n.y},t.sub=function(t,e,n){t.x=e.x-n.x,t.y=e.y-n.y},t.scale=function(t,e,n){t.x=e.x*n,t.y=e.y*n},t.scaleAndAdd=function(t,e,n,i){t.x=e.x+n.x*i,t.y=e.y+n.y*i},t.lerp=function(t,e,n,i){var r=1-i;t.x=r*e.x+i*n.x,t.y=r*e.y+i*n.y},t}(),Qi=Math.min,tr=Math.max,er=new Ji,nr=new Ji,ir=new Ji,rr=new Ji,or=new Ji,ar=new Ji,sr=function(){function t(t,e,n,i){n<0&&(t+=n,n=-n),i<0&&(e+=i,i=-i),this.x=t,this.y=e,this.width=n,this.height=i}return t.prototype.union=function(t){var e=Qi(t.x,this.x),n=Qi(t.y,this.y);isFinite(this.x)&&isFinite(this.width)?this.width=tr(t.x+t.width,this.x+this.width)-e:this.width=t.width,isFinite(this.y)&&isFinite(this.height)?this.height=tr(t.y+t.height,this.y+this.height)-n:this.height=t.height,this.x=e,this.y=n},t.prototype.applyTransform=function(e){t.applyTransform(this,this,e)},t.prototype.calculateTransform=function(t){var e=this,n=t.width/e.width,i=t.height/e.height,r=[1,0,0,1,0,0];return Ei(r,r,[-e.x,-e.y]),Vi(r,r,[n,i]),Ei(r,r,[t.x,t.y]),r},t.prototype.intersect=function(e,n){if(!e)return!1;e instanceof t||(e=t.create(e));var i=this,r=i.x,o=i.x+i.width,a=i.y,s=i.y+i.height,l=e.x,u=e.x+e.width,h=e.y,c=e.y+e.height,p=!(o<l||u<r||s<h||c<a);if(n){var d=1/0,f=0,g=Math.abs(o-l),y=Math.abs(u-r),v=Math.abs(s-h),m=Math.abs(c-a),x=Math.min(g,y),_=Math.min(v,m);o<l||u<r?x>f&&(f=x,g<y?Ji.set(ar,-g,0):Ji.set(ar,y,0)):x<d&&(d=x,g<y?Ji.set(or,g,0):Ji.set(or,-y,0)),s<h||c<a?_>f&&(f=_,v<m?Ji.set(ar,0,-v):Ji.set(ar,0,m)):x<d&&(d=x,v<m?Ji.set(or,0,v):Ji.set(or,0,-m))}return n&&Ji.copy(n,p?or:ar),p},t.prototype.contain=function(t,e){var n=this;return t>=n.x&&t<=n.x+n.width&&e>=n.y&&e<=n.y+n.height},t.prototype.clone=function(){return new t(this.x,this.y,this.width,this.height)},t.prototype.copy=function(e){t.copy(this,e)},t.prototype.plain=function(){return{x:this.x,y:this.y,width:this.width,height:this.height}},t.prototype.isFinite=function(){return isFinite(this.x)&&isFinite(this.y)&&isFinite(this.width)&&isFinite(this.height)},t.prototype.isZero=function(){return 0===this.width||0===this.height},t.create=function(e){return new t(e.x,e.y,e.width,e.height)},t.copy=function(t,e){t.x=e.x,t.y=e.y,t.width=e.width,t.height=e.height},t.applyTransform=function(e,n,i){if(i){if(i[1]<1e-5&&i[1]>-1e-5&&i[2]<1e-5&&i[2]>-1e-5){var r=i[0],o=i[3],a=i[4],s=i[5];return e.x=n.x*r+a,e.y=n.y*o+s,e.width=n.width*r,e.height=n.height*o,e.width<0&&(e.x+=e.width,e.width=-e.width),void(e.height<0&&(e.y+=e.height,e.height=-e.height))}er.x=ir.x=n.x,er.y=rr.y=n.y,nr.x=rr.x=n.x+n.width,nr.y=ir.y=n.y+n.height,er.transform(i),rr.transform(i),nr.transform(i),ir.transform(i),e.x=Qi(er.x,nr.x,ir.x,rr.x),e.y=Qi(er.y,nr.y,ir.y,rr.y);var l=tr(er.x,nr.x,ir.x,rr.x),u=tr(er.y,nr.y,ir.y,rr.y);e.width=l-e.x,e.height=u-e.y}else e!==n&&t.copy(e,n)},t}(),lr={};function ur(t,e){var n=lr[e=e||a];n||(n=lr[e]=new ln(500));var i=n.get(t);return null==i&&(i=h.measureText(t,e).width,n.put(t,i)),i}function hr(t,e,n,i){var r=ur(t,e),o=fr(e),a=pr(0,r,n),s=dr(0,o,i);return new sr(a,s,r,o)}function cr(t,e,n,i){var r=((t||"")+"").split("\n");if(1===r.length)return hr(r[0],e,n,i);for(var o=new sr(0,0,0,0),a=0;a<r.length;a++){var s=hr(r[a],e,n,i);0===a?o.copy(s):o.union(s)}return o}function pr(t,e,n){return"right"===n?t-=e:"center"===n&&(t-=e/2),t}function dr(t,e,n){return"middle"===n?t-=e/2:"bottom"===n&&(t-=e),t}function fr(t){return ur("国",t)}function gr(t,e){return"string"==typeof t?t.lastIndexOf("%")>=0?parseFloat(t)/100*e:parseFloat(t):t}function yr(t,e,n){var i=e.position||"inside",r=null!=e.distance?e.distance:5,o=n.height,a=n.width,s=o/2,l=n.x,u=n.y,h="left",c="top";if(i instanceof Array)l+=gr(i[0],n.width),u+=gr(i[1],n.height),h=null,c=null;else switch(i){case"left":l-=r,u+=s,h="right",c="middle";break;case"right":l+=r+a,u+=s,c="middle";break;case"top":l+=a/2,u-=r,h="center",c="bottom";break;case"bottom":l+=a/2,u+=o+r,h="center";break;case"inside":l+=a/2,u+=s,h="center",c="middle";break;case"insideLeft":l+=r,u+=s,c="middle";break;case"insideRight":l+=a-r,u+=s,h="right",c="middle";break;case"insideTop":l+=a/2,u+=r,h="center";break;case"insideBottom":l+=a/2,u+=o-r,h="center",c="bottom";break;case"insideTopLeft":l+=r,u+=r;break;case"insideTopRight":l+=a-r,u+=r,h="right";break;case"insideBottomLeft":l+=r,u+=o-r,c="bottom";break;case"insideBottomRight":l+=a-r,u+=o-r,h="right",c="bottom"}return(t=t||{}).x=l,t.y=u,t.align=h,t.verticalAlign=c,t}var vr="__zr_normal__",mr=Ki.concat(["ignore"]),xr=V(Ki,(function(t,e){return t[e]=!0,t}),{ignore:!1}),_r={},br=new sr(0,0,0,0),wr=function(){function t(t){this.id=M(),this.animators=[],this.currentStates=[],this.states={},this._init(t)}return t.prototype._init=function(t){this.attr(t)},t.prototype.drift=function(t,e,n){switch(this.draggable){case"horizontal":e=0;break;case"vertical":t=0}var i=this.transform;i||(i=this.transform=[1,0,0,1,0,0]),i[4]+=t,i[5]+=e,this.decomposeTransform(),this.markRedraw()},t.prototype.beforeUpdate=function(){},t.prototype.afterUpdate=function(){},t.prototype.update=function(){this.updateTransform(),this.__dirty&&this.updateInnerText()},t.prototype.updateInnerText=function(t){var e=this._textContent;if(e&&(!e.ignore||t)){this.textConfig||(this.textConfig={});var n=this.textConfig,i=n.local,r=e.innerTransformable,o=void 0,a=void 0,s=!1;r.parent=i?this:null;var l=!1;if(r.copyTransform(e),null!=n.position){var u=br;n.layoutRect?u.copy(n.layoutRect):u.copy(this.getBoundingRect()),i||u.applyTransform(this.transform),this.calculateTextPosition?this.calculateTextPosition(_r,n,u):yr(_r,n,u),r.x=_r.x,r.y=_r.y,o=_r.align,a=_r.verticalAlign;var h=n.origin;if(h&&null!=n.rotation){var c=void 0,p=void 0;"center"===h?(c=.5*u.width,p=.5*u.height):(c=gr(h[0],u.width),p=gr(h[1],u.height)),l=!0,r.originX=-r.x+c+(i?0:u.x),r.originY=-r.y+p+(i?0:u.y)}}null!=n.rotation&&(r.rotation=n.rotation);var d=n.offset;d&&(r.x+=d[0],r.y+=d[1],l||(r.originX=-d[0],r.originY=-d[1]));var f=null==n.inside?"string"==typeof n.position&&n.position.indexOf("inside")>=0:n.inside,g=this._innerTextDefaultStyle||(this._innerTextDefaultStyle={}),y=void 0,v=void 0,m=void 0;f&&this.canBeInsideText()?(y=n.insideFill,v=n.insideStroke,null!=y&&"auto"!==y||(y=this.getInsideTextFill()),null!=v&&"auto"!==v||(v=this.getInsideTextStroke(y),m=!0)):(y=n.outsideFill,v=n.outsideStroke,null!=y&&"auto"!==y||(y=this.getOutsideFill()),null!=v&&"auto"!==v||(v=this.getOutsideStroke(y),m=!0)),(y=y||"#000")===g.fill&&v===g.stroke&&m===g.autoStroke&&o===g.align&&a===g.verticalAlign||(s=!0,g.fill=y,g.stroke=v,g.autoStroke=m,g.align=o,g.verticalAlign=a,e.setDefaultTextStyle(g)),e.__dirty|=1,s&&e.dirtyStyle(!0)}},t.prototype.canBeInsideText=function(){return!0},t.prototype.getInsideTextFill=function(){return"#fff"},t.prototype.getInsideTextStroke=function(t){return"#000"},t.prototype.getOutsideFill=function(){return this.__zr&&this.__zr.isDarkMode()?Li:ki},t.prototype.getOutsideStroke=function(t){var e=this.__zr&&this.__zr.getBackgroundColor(),n="string"==typeof e&&bn(e);n||(n=[255,255,255,1]);for(var i=n[3],r=this.__zr.isDarkMode(),o=0;o<3;o++)n[o]=n[o]*i+(r?0:255)*(1-i);return n[3]=1,kn(n,"rgba")},t.prototype.traverse=function(t,e){},t.prototype.attrKV=function(t,e){"textConfig"===t?this.setTextConfig(e):"textContent"===t?this.setTextContent(e):"clipPath"===t?this.setClipPath(e):"extra"===t?(this.extra=this.extra||{},A(this.extra,e)):this[t]=e},t.prototype.hide=function(){this.ignore=!0,this.markRedraw()},t.prototype.show=function(){this.ignore=!1,this.markRedraw()},t.prototype.attr=function(t,e){if("string"==typeof t)this.attrKV(t,e);else if(q(t))for(var n=G(t),i=0;i<n.length;i++){var r=n[i];this.attrKV(r,t[r])}return this.markRedraw(),this},t.prototype.saveCurrentToNormalState=function(t){this._innerSaveToNormal(t);for(var e=this._normalState,n=0;n<this.animators.length;n++){var i=this.animators[n],r=i.__fromStateTransition;if(!(i.getLoop()||r&&r!==vr)){var o=i.targetName,a=o?e[o]:e;i.saveTo(a)}}},t.prototype._innerSaveToNormal=function(t){var e=this._normalState;e||(e=this._normalState={}),t.textConfig&&!e.textConfig&&(e.textConfig=this.textConfig),this._savePrimaryToNormal(t,e,mr)},t.prototype._savePrimaryToNormal=function(t,e,n){for(var i=0;i<n.length;i++){var r=n[i];null==t[r]||r in e||(e[r]=this[r])}},t.prototype.hasState=function(){return this.currentStates.length>0},t.prototype.getState=function(t){return this.states[t]},t.prototype.ensureState=function(t){var e=this.states;return e[t]||(e[t]={}),e[t]},t.prototype.clearStates=function(t){this.useState(vr,!1,t)},t.prototype.useState=function(t,e,n,i){var r=t===vr;if(this.hasState()||!r){var o=this.currentStates,a=this.stateTransition;if(!(P(o,t)>=0)||!e&&1!==o.length){var s;if(this.stateProxy&&!r&&(s=this.stateProxy(t)),s||(s=this.states&&this.states[t]),s||r){r||this.saveCurrentToNormalState(s);var l=!!(s&&s.hoverLayer||i);l&&this._toggleHoverLayerFlag(!0),this._applyStateObj(t,s,this._normalState,e,!n&&!this.__inHover&&a&&a.duration>0,a);var u=this._textContent,h=this._textGuide;return u&&u.useState(t,e,n,l),h&&h.useState(t,e,n,l),r?(this.currentStates=[],this._normalState={}):e?this.currentStates.push(t):this.currentStates=[t],this._updateAnimationTargets(),this.markRedraw(),!l&&this.__inHover&&(this._toggleHoverLayerFlag(!1),this.__dirty&=-2),s}I("State "+t+" not exists.")}}},t.prototype.useStates=function(t,e,n){if(t.length){var i=[],r=this.currentStates,o=t.length,a=o===r.length;if(a)for(var s=0;s<o;s++)if(t[s]!==r[s]){a=!1;break}if(a)return;for(s=0;s<o;s++){var l=t[s],u=void 0;this.stateProxy&&(u=this.stateProxy(l,t)),u||(u=this.states[l]),u&&i.push(u)}var h=i[o-1],c=!!(h&&h.hoverLayer||n);c&&this._toggleHoverLayerFlag(!0);var p=this._mergeStates(i),d=this.stateTransition;this.saveCurrentToNormalState(p),this._applyStateObj(t.join(","),p,this._normalState,!1,!e&&!this.__inHover&&d&&d.duration>0,d);var f=this._textContent,g=this._textGuide;f&&f.useStates(t,e,c),g&&g.useStates(t,e,c),this._updateAnimationTargets(),this.currentStates=t.slice(),this.markRedraw(),!c&&this.__inHover&&(this._toggleHoverLayerFlag(!1),this.__dirty&=-2)}else this.clearStates()},t.prototype._updateAnimationTargets=function(){for(var t=0;t<this.animators.length;t++){var e=this.animators[t];e.targetName&&e.changeTarget(this[e.targetName])}},t.prototype.removeState=function(t){var e=P(this.currentStates,t);if(e>=0){var n=this.currentStates.slice();n.splice(e,1),this.useStates(n)}},t.prototype.replaceState=function(t,e,n){var i=this.currentStates.slice(),r=P(i,t),o=P(i,e)>=0;r>=0?o?i.splice(r,1):i[r]=e:n&&!o&&i.push(e),this.useStates(i)},t.prototype.toggleState=function(t,e){e?this.useState(t,!0):this.removeState(t)},t.prototype._mergeStates=function(t){for(var e,n={},i=0;i<t.length;i++){var r=t[i];A(n,r),r.textConfig&&A(e=e||{},r.textConfig)}return e&&(n.textConfig=e),n},t.prototype._applyStateObj=function(t,e,n,i,r,o){var a=!(e&&i);e&&e.textConfig?(this.textConfig=A({},i?this.textConfig:n.textConfig),A(this.textConfig,e.textConfig)):a&&n.textConfig&&(this.textConfig=n.textConfig);for(var s={},l=!1,u=0;u<mr.length;u++){var h=mr[u],c=r&&xr[h];e&&null!=e[h]?c?(l=!0,s[h]=e[h]):this[h]=e[h]:a&&null!=n[h]&&(c?(l=!0,s[h]=n[h]):this[h]=n[h])}if(!r)for(u=0;u<this.animators.length;u++){var p=this.animators[u],d=p.targetName;p.getLoop()||p.__changeFinalValue(d?(e||n)[d]:e||n)}l&&this._transitionState(t,s,o)},t.prototype._attachComponent=function(t){if((!t.__zr||t.__hostTarget)&&t!==this){var e=this.__zr;e&&t.addSelfToZr(e),t.__zr=e,t.__hostTarget=this}},t.prototype._detachComponent=function(t){t.__zr&&t.removeSelfFromZr(t.__zr),t.__zr=null,t.__hostTarget=null},t.prototype.getClipPath=function(){return this._clipPath},t.prototype.setClipPath=function(t){this._clipPath&&this._clipPath!==t&&this.removeClipPath(),this._attachComponent(t),this._clipPath=t,this.markRedraw()},t.prototype.removeClipPath=function(){var t=this._clipPath;t&&(this._detachComponent(t),this._clipPath=null,this.markRedraw())},t.prototype.getTextContent=function(){return this._textContent},t.prototype.setTextContent=function(t){var e=this._textContent;e!==t&&(e&&e!==t&&this.removeTextContent(),t.innerTransformable=new qi,this._attachComponent(t),this._textContent=t,this.markRedraw())},t.prototype.setTextConfig=function(t){this.textConfig||(this.textConfig={}),A(this.textConfig,t),this.markRedraw()},t.prototype.removeTextConfig=function(){this.textConfig=null,this.markRedraw()},t.prototype.removeTextContent=function(){var t=this._textContent;t&&(t.innerTransformable=null,this._detachComponent(t),this._textContent=null,this._innerTextDefaultStyle=null,this.markRedraw())},t.prototype.getTextGuideLine=function(){return this._textGuide},t.prototype.setTextGuideLine=function(t){this._textGuide&&this._textGuide!==t&&this.removeTextGuideLine(),this._attachComponent(t),this._textGuide=t,this.markRedraw()},t.prototype.removeTextGuideLine=function(){var t=this._textGuide;t&&(this._detachComponent(t),this._textGuide=null,this.markRedraw())},t.prototype.markRedraw=function(){this.__dirty|=1;var t=this.__zr;t&&(this.__inHover?t.refreshHover():t.refresh()),this.__hostTarget&&this.__hostTarget.markRedraw()},t.prototype.dirty=function(){this.markRedraw()},t.prototype._toggleHoverLayerFlag=function(t){this.__inHover=t;var e=this._textContent,n=this._textGuide;e&&(e.__inHover=t),n&&(n.__inHover=t)},t.prototype.addSelfToZr=function(t){if(this.__zr!==t){this.__zr=t;var e=this.animators;if(e)for(var n=0;n<e.length;n++)t.animation.addAnimator(e[n]);this._clipPath&&this._clipPath.addSelfToZr(t),this._textContent&&this._textContent.addSelfToZr(t),this._textGuide&&this._textGuide.addSelfToZr(t)}},t.prototype.removeSelfFromZr=function(t){if(this.__zr){this.__zr=null;var e=this.animators;if(e)for(var n=0;n<e.length;n++)t.animation.removeAnimator(e[n]);this._clipPath&&this._clipPath.removeSelfFromZr(t),this._textContent&&this._textContent.removeSelfFromZr(t),this._textGuide&&this._textGuide.removeSelfFromZr(t)}},t.prototype.animate=function(t,e,n){var i=t?this[t]:this;var r=new ai(i,e,n);return t&&(r.targetName=t),this.addAnimator(r,t),r},t.prototype.addAnimator=function(t,e){var n=this.__zr,i=this;t.during((function(){i.updateDuringAnimation(e)})).done((function(){var e=i.animators,n=P(e,t);n>=0&&e.splice(n,1)})),this.animators.push(t),n&&n.animation.addAnimator(t),n&&n.wakeUp()},t.prototype.updateDuringAnimation=function(t){this.markRedraw()},t.prototype.stopAnimation=function(t,e){for(var n=this.animators,i=n.length,r=[],o=0;o<i;o++){var a=n[o];t&&t!==a.scope?r.push(a):a.stop(e)}return this.animators=r,this},t.prototype.animateTo=function(t,e,n){Sr(this,t,e,n)},t.prototype.animateFrom=function(t,e,n){Sr(this,t,e,n,!0)},t.prototype._transitionState=function(t,e,n,i){for(var r=Sr(this,e,n,i),o=0;o<r.length;o++)r[o].__fromStateTransition=t},t.prototype.getBoundingRect=function(){return null},t.prototype.getPaintRect=function(){return null},t.initDefaultProps=function(){var e=t.prototype;e.type="element",e.name="",e.ignore=e.silent=e.isGroup=e.draggable=e.dragging=e.ignoreClip=e.__inHover=!1,e.__dirty=1;function n(t,n,i,r){function o(t,e){Object.defineProperty(e,0,{get:function(){return t[i]},set:function(e){t[i]=e}}),Object.defineProperty(e,1,{get:function(){return t[r]},set:function(e){t[r]=e}})}Object.defineProperty(e,t,{get:function(){this[n]||o(this,this[n]=[]);return this[n]},set:function(t){this[i]=t[0],this[r]=t[1],this[n]=t,o(this,t)}})}Object.defineProperty&&(n("position","_legacyPos","x","y"),n("scale","_legacyScale","scaleX","scaleY"),n("origin","_legacyOrigin","originX","originY"))}(),t}();function Sr(t,e,n,i,r){var o=[];Tr(t,"",t,e,n=n||{},i,o,r);var a=o.length,s=!1,l=n.done,u=n.aborted,h=function(){s=!0,--a<=0&&(s?l&&l():u&&u())},c=function(){--a<=0&&(s?l&&l():u&&u())};a||l&&l(),o.length>0&&n.during&&o[0].during((function(t,e){n.during(e)}));for(var p=0;p<o.length;p++){var d=o[p];h&&d.done(h),c&&d.aborted(c),n.force&&d.duration(n.duration),d.start(n.easing)}return o}function Mr(t,e,n){for(var i=0;i<n;i++)t[i]=e[i]}function Ir(t,e,n){if(N(e[n]))if(N(t[n])||(t[n]=[]),$(e[n])){var i=e[n].length;t[n].length!==i&&(t[n]=new e[n].constructor(i),Mr(t[n],e[n],i))}else{var r=e[n],o=t[n],a=r.length;if(N(r[0]))for(var s=r[0].length,l=0;l<a;l++)o[l]?Mr(o[l],r[l],s):o[l]=Array.prototype.slice.call(r[l]);else Mr(o,r,a);o.length=r.length}else t[n]=e[n]}function Tr(t,e,n,i,r,o,a,s){for(var l=G(i),u=r.duration,h=r.delay,c=r.additive,p=r.setToFinal,d=!q(o),f=t.animators,g=[],y=0;y<l.length;y++){var v=l[y],m=i[v];if(null!=m&&null!=n[v]&&(d||o[v]))if(!q(m)||N(m)||Q(m))g.push(v);else{if(e){s||(n[v]=m,t.updateDuringAnimation(e));continue}Tr(t,v,n[v],m,r,o&&o[v],a,s)}else s||(n[v]=m,t.updateDuringAnimation(e),g.push(v))}var x=g.length;if(!c&&x)for(var _=0;_<f.length;_++){if((w=f[_]).targetName===e)if(w.stopTracks(g)){var b=P(f,w);f.splice(b,1)}}if(r.force||(x=(g=B(g,(function(t){return e=i[t],r=n[t],!(e===r||N(e)&&N(r)&&function(t,e){var n=t.length;if(n!==e.length)return!1;for(var i=0;i<n;i++)if(t[i]!==e[i])return!1;return!0}(e,r));var e,r}))).length),x>0||r.force&&!a.length){var w,S=void 0,M=void 0,I=void 0;if(s){M={},p&&(S={});for(_=0;_<x;_++){M[v=g[_]]=n[v],p?S[v]=i[v]:n[v]=i[v]}}else if(p){I={};for(_=0;_<x;_++){I[v=g[_]]=ti(n[v]),Ir(n,i,v)}}(w=new ai(n,!1,!1,c?B(f,(function(t){return t.targetName===e})):null)).targetName=e,r.scope&&(w.scope=r.scope),p&&S&&w.whenWithKeys(0,S,g),I&&w.whenWithKeys(0,I,g),w.whenWithKeys(null==u?500:u,s?M:i,g).delay(h||0),t.addAnimator(w,e),a.push(w)}}R(wr,Xt),R(wr,qi);var Cr=function(t){function e(e){var n=t.call(this)||this;return n.isGroup=!0,n._children=[],n.attr(e),n}return n(e,t),e.prototype.childrenRef=function(){return this._children},e.prototype.children=function(){return this._children.slice()},e.prototype.childAt=function(t){return this._children[t]},e.prototype.childOfName=function(t){for(var e=this._children,n=0;n<e.length;n++)if(e[n].name===t)return e[n]},e.prototype.childCount=function(){return this._children.length},e.prototype.add=function(t){return t&&t!==this&&t.parent!==this&&(this._children.push(t),this._doAdd(t)),this},e.prototype.addBefore=function(t,e){if(t&&t!==this&&t.parent!==this&&e&&e.parent===this){var n=this._children,i=n.indexOf(e);i>=0&&(n.splice(i,0,t),this._doAdd(t))}return this},e.prototype.replace=function(t,e){var n=P(this._children,t);return n>=0&&this.replaceAt(e,n),this},e.prototype.replaceAt=function(t,e){var n=this._children,i=n[e];if(t&&t!==this&&t.parent!==this&&t!==i){n[e]=t,i.parent=null;var r=this.__zr;r&&i.removeSelfFromZr(r),this._doAdd(t)}return this},e.prototype._doAdd=function(t){t.parent&&t.parent.remove(t),t.parent=this;var e=this.__zr;e&&e!==t.__zr&&t.addSelfToZr(e),e&&e.refresh()},e.prototype.remove=function(t){var e=this.__zr,n=this._children,i=P(n,t);return i<0||(n.splice(i,1),t.parent=null,e&&t.removeSelfFromZr(e),e&&e.refresh()),this},e.prototype.removeAll=function(){for(var t=this._children,e=this.__zr,n=0;n<t.length;n++){var i=t[n];e&&i.removeSelfFromZr(e),i.parent=null}return t.length=0,this},e.prototype.eachChild=function(t,e){for(var n=this._children,i=0;i<n.length;i++){var r=n[i];t.call(e,r,i)}return this},e.prototype.traverse=function(t,e){for(var n=0;n<this._children.length;n++){var i=this._children[n],r=t.call(e,i);i.isGroup&&!r&&i.traverse(t,e)}return this},e.prototype.addSelfToZr=function(e){t.prototype.addSelfToZr.call(this,e);for(var n=0;n<this._children.length;n++){this._children[n].addSelfToZr(e)}},e.prototype.removeSelfFromZr=function(e){t.prototype.removeSelfFromZr.call(this,e);for(var n=0;n<this._children.length;n++){this._children[n].removeSelfFromZr(e)}},e.prototype.getBoundingRect=function(t){for(var e=new sr(0,0,0,0),n=t||this._children,i=[],r=null,o=0;o<n.length;o++){var a=n[o];if(!a.ignore&&!a.invisible){var s=a.getBoundingRect(),l=a.getLocalTransform(i);l?(sr.applyTransform(e,s,l),(r=r||e.clone()).union(e)):(r=r||s.clone()).union(s)}}return r||e},e}(wr);Cr.prototype.type="group";+/*!+    * ZRender, a high performance 2d drawing library.+    *+    * Copyright (c) 2013, Baidu Inc.+    * All rights reserved.+    *+    * LICENSE+    * https://github.com/ecomfe/zrender/blob/master/LICENSE.txt+    */+var Dr={},Ar={};var kr=function(){function t(t,e,n){var i=this;this._sleepAfterStill=10,this._stillFrameAccum=0,this._needsRefresh=!0,this._needsRefreshHover=!0,this._darkMode=!1,n=n||{},this.dom=e,this.id=t;var o=new Ae,a=n.renderer||"canvas";Dr[a]||(a=G(Dr)[0]),n.useDirtyRect=null!=n.useDirtyRect&&n.useDirtyRect;var s=new Dr[a](e,o,n,t),l=n.ssr||s.ssrOnly;this.storage=o,this.painter=s;var u=r.node||r.worker||l?null:new Ci(s.getViewportRoot(),s.root);this.handler=new ve(o,s,u,s.root),this.animation=new hi({stage:{update:l?null:function(){return i._flush(!0)}}}),l||this.animation.start()}return t.prototype.add=function(t){t&&(this.storage.addRoot(t),t.addSelfToZr(this),this.refresh())},t.prototype.remove=function(t){t&&(this.storage.delRoot(t),t.removeSelfFromZr(this),this.refresh())},t.prototype.configLayer=function(t,e){this.painter.configLayer&&this.painter.configLayer(t,e),this.refresh()},t.prototype.setBackgroundColor=function(t){this.painter.setBackgroundColor&&this.painter.setBackgroundColor(t),this.refresh(),this._backgroundColor=t,this._darkMode=function(t){if(!t)return!1;if("string"==typeof t)return Ln(t,1)<.4;if(t.colorStops){for(var e=t.colorStops,n=0,i=e.length,r=0;r<i;r++)n+=Ln(e[r].color,1);return(n/=i)<.4}return!1}(t)},t.prototype.getBackgroundColor=function(){return this._backgroundColor},t.prototype.setDarkMode=function(t){this._darkMode=t},t.prototype.isDarkMode=function(){return this._darkMode},t.prototype.refreshImmediately=function(t){t||this.animation.update(!0),this._needsRefresh=!1,this.painter.refresh(),this._needsRefresh=!1},t.prototype.refresh=function(){this._needsRefresh=!0,this.animation.start()},t.prototype.flush=function(){this._flush(!1)},t.prototype._flush=function(t){var e,n=si();this._needsRefresh&&(e=!0,this.refreshImmediately(t)),this._needsRefreshHover&&(e=!0,this.refreshHoverImmediately());var i=si();e?(this._stillFrameAccum=0,this.trigger("rendered",{elapsedTime:i-n})):this._sleepAfterStill>0&&(this._stillFrameAccum++,this._stillFrameAccum>this._sleepAfterStill&&this.animation.stop())},t.prototype.setSleepAfterStill=function(t){this._sleepAfterStill=t},t.prototype.wakeUp=function(){this.animation.start(),this._stillFrameAccum=0},t.prototype.refreshHover=function(){this._needsRefreshHover=!0},t.prototype.refreshHoverImmediately=function(){this._needsRefreshHover=!1,this.painter.refreshHover&&"canvas"===this.painter.getType()&&this.painter.refreshHover()},t.prototype.resize=function(t){t=t||{},this.painter.resize(t.width,t.height),this.handler.resize()},t.prototype.clearAnimation=function(){this.animation.clear()},t.prototype.getWidth=function(){return this.painter.getWidth()},t.prototype.getHeight=function(){return this.painter.getHeight()},t.prototype.setCursorStyle=function(t){this.handler.setCursorStyle(t)},t.prototype.findHover=function(t,e){return this.handler.findHover(t,e)},t.prototype.on=function(t,e,n){return this.handler.on(t,e,n),this},t.prototype.off=function(t,e){this.handler.off(t,e)},t.prototype.trigger=function(t,e){this.handler.trigger(t,e)},t.prototype.clear=function(){for(var t=this.storage.getRoots(),e=0;e<t.length;e++)t[e]instanceof Cr&&t[e].removeSelfFromZr(this);this.storage.delAllRoots(),this.painter.clear()},t.prototype.dispose=function(){var t;this.animation.stop(),this.clear(),this.storage.dispose(),this.painter.dispose(),this.handler.dispose(),this.animation=this.storage=this.painter=this.handler=null,t=this.id,delete Ar[t]},t}();function Lr(t,e){var n=new kr(M(),t,e);return Ar[n.id]=n,n}function Pr(t,e){Dr[t]=e}var Or=Object.freeze({__proto__:null,init:Lr,dispose:function(t){t.dispose()},disposeAll:function(){for(var t in Ar)Ar.hasOwnProperty(t)&&Ar[t].dispose();Ar={}},getInstance:function(t){return Ar[t]},registerPainter:Pr,version:"5.3.0"}),Rr=1e-4;function Nr(t,e,n,i){var r=e[0],o=e[1],a=n[0],s=n[1],l=o-r,u=s-a;if(0===l)return 0===u?a:(a+s)/2;if(i)if(l>0){if(t<=r)return a;if(t>=o)return s}else{if(t>=r)return a;if(t<=o)return s}else{if(t===r)return a;if(t===o)return s}return(t-r)/l*u+a}function Er(t,e){switch(t){case"center":case"middle":t="50%";break;case"left":case"top":t="0%";break;case"right":case"bottom":t="100%"}return X(t)?(n=t,n.replace(/^\s+|\s+$/g,"")).match(/%$/)?parseFloat(t)/100*e:parseFloat(t):null==t?NaN:+t;var n}function zr(t,e,n){return null==e&&(e=10),e=Math.min(Math.max(0,e),20),t=(+t).toFixed(e),n?t:+t}function Vr(t){return t.sort((function(t,e){return t-e})),t}function Br(t){if(t=+t,isNaN(t))return 0;if(t>1e-14)for(var e=1,n=0;n<15;n++,e*=10)if(Math.round(t*e)/e===t)return n;return Fr(t)}function Fr(t){var e=t.toString().toLowerCase(),n=e.indexOf("e"),i=n>0?+e.slice(n+1):0,r=n>0?n:e.length,o=e.indexOf("."),a=o<0?0:r-1-o;return Math.max(0,a-i)}function Gr(t,e){var n=Math.log,i=Math.LN10,r=Math.floor(n(t[1]-t[0])/i),o=Math.round(n(Math.abs(e[1]-e[0]))/i),a=Math.min(Math.max(-r+o,0),20);return isFinite(a)?a:20}function Wr(t,e,n){if(!t[e])return 0;var i=V(t,(function(t,e){return t+(isNaN(e)?0:e)}),0);if(0===i)return 0;for(var r=Math.pow(10,n),o=z(t,(function(t){return(isNaN(t)?0:t)/i*r*100})),a=100*r,s=z(o,(function(t){return Math.floor(t)})),l=V(s,(function(t,e){return t+e}),0),u=z(o,(function(t,e){return t-s[e]}));l<a;){for(var h=Number.NEGATIVE_INFINITY,c=null,p=0,d=u.length;p<d;++p)u[p]>h&&(h=u[p],c=p);++s[c],u[c]=0,++l}return s[e]/r}function Hr(t,e){var n=Math.max(Br(t),Br(e)),i=t+e;return n>20?i:zr(i,n)}var Yr=9007199254740991;function Ur(t){var e=2*Math.PI;return(t%e+e)%e}function Xr(t){return t>-1e-4&&t<Rr}var Zr=/^(?:(\d{4})(?:[-\/](\d{1,2})(?:[-\/](\d{1,2})(?:[T ](\d{1,2})(?::(\d{1,2})(?::(\d{1,2})(?:[.,](\d+))?)?)?(Z|[\+\-]\d\d:?\d\d)?)?)?)?)?$/;function jr(t){if(t instanceof Date)return t;if(X(t)){var e=Zr.exec(t);if(!e)return new Date(NaN);if(e[8]){var n=+e[4]||0;return"Z"!==e[8].toUpperCase()&&(n-=+e[8].slice(0,3)),new Date(Date.UTC(+e[1],+(e[2]||1)-1,+e[3]||1,n,+(e[5]||0),+e[6]||0,e[7]?+e[7].substring(0,3):0))}return new Date(+e[1],+(e[2]||1)-1,+e[3]||1,+e[4]||0,+(e[5]||0),+e[6]||0,e[7]?+e[7].substring(0,3):0)}return null==t?new Date(NaN):new Date(Math.round(t))}function qr(t){return Math.pow(10,Kr(t))}function Kr(t){if(0===t)return 0;var e=Math.floor(Math.log(t)/Math.LN10);return t/Math.pow(10,e)>=10&&e++,e}function $r(t,e){var n=Kr(t),i=Math.pow(10,n),r=t/i;return t=(e?r<1.5?1:r<2.5?2:r<4?3:r<7?5:10:r<1?1:r<2?2:r<3?3:r<5?5:10)*i,n>=-20?+t.toFixed(n<0?-n:0):t}function Jr(t,e){var n=(t.length-1)*e+1,i=Math.floor(n),r=+t[i-1],o=n-i;return o?r+o*(t[i]-r):r}function Qr(t){t.sort((function(t,e){return s(t,e,0)?-1:1}));for(var e=-1/0,n=1,i=0;i<t.length;){for(var r=t[i].interval,o=t[i].close,a=0;a<2;a++)r[a]<=e&&(r[a]=e,o[a]=a?1:1-n),e=r[a],n=o[a];r[0]===r[1]&&o[0]*o[1]!=1?t.splice(i,1):i++}return t;function s(t,e,n){return t.interval[n]<e.interval[n]||t.interval[n]===e.interval[n]&&(t.close[n]-e.close[n]==(n?-1:1)||!n&&s(t,e,1))}}function to(t){var e=parseFloat(t);return e==t&&(0!==e||!X(t)||t.indexOf("x")<=0)?e:NaN}function eo(t){return!isNaN(to(t))}function no(){return Math.round(9*Math.random())}function io(t,e){return 0===e?t:io(e,t%e)}function ro(t,e){return null==t?e:null==e?t:t*e/io(t,e)}"undefined"!=typeof console&&console.warn&&console.log;function oo(t){0}function ao(t){throw new Error(t)}function so(t,e,n){return(e-t)*n+t}var lo="series\0",uo="\0_ec_\0";function ho(t){return t instanceof Array?t:null==t?[]:[t]}function co(t,e,n){if(t){t[e]=t[e]||{},t.emphasis=t.emphasis||{},t.emphasis[e]=t.emphasis[e]||{};for(var i=0,r=n.length;i<r;i++){var o=n[i];!t.emphasis[e].hasOwnProperty(o)&&t[e].hasOwnProperty(o)&&(t.emphasis[e][o]=t[e][o])}}}var po=["fontStyle","fontWeight","fontSize","fontFamily","rich","tag","color","textBorderColor","textBorderWidth","width","height","lineHeight","align","verticalAlign","baseline","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY","textShadowColor","textShadowBlur","textShadowOffsetX","textShadowOffsetY","backgroundColor","borderColor","borderWidth","borderRadius","padding"];function fo(t){return!q(t)||Y(t)||t instanceof Date?t:t.value}function go(t){return q(t)&&!(t instanceof Array)}function yo(t,e,n){var i="normalMerge"===n,r="replaceMerge"===n,o="replaceAll"===n;t=t||[],e=(e||[]).slice();var a=ft();E(e,(function(t,n){q(t)||(e[n]=null)}));var s,l,u=function(t,e,n){var i=[];if("replaceAll"===n)return i;for(var r=0;r<t.length;r++){var o=t[r];o&&null!=o.id&&e.set(o.id,r),i.push({existing:"replaceMerge"===n||bo(o)?null:o,newOption:null,keyInfo:null,brandNew:null})}return i}(t,a,n);return(i||r)&&function(t,e,n,i){E(i,(function(r,o){if(r&&null!=r.id){var a=mo(r.id),s=n.get(a);if(null!=s){var l=t[s];lt(!l.newOption,'Duplicated option on id "'+a+'".'),l.newOption=r,l.existing=e[s],i[o]=null}}}))}(u,t,a,e),i&&function(t,e){E(e,(function(n,i){if(n&&null!=n.name)for(var r=0;r<t.length;r++){var o=t[r].existing;if(!t[r].newOption&&o&&(null==o.id||null==n.id)&&!bo(n)&&!bo(o)&&vo("name",o,n))return t[r].newOption=n,void(e[i]=null)}}))}(u,e),i||r?function(t,e,n){E(e,(function(e){if(e){for(var i,r=0;(i=t[r])&&(i.newOption||bo(i.existing)||i.existing&&null!=e.id&&!vo("id",e,i.existing));)r++;i?(i.newOption=e,i.brandNew=n):t.push({newOption:e,brandNew:n,existing:null,keyInfo:null}),r++}}))}(u,e,r):o&&function(t,e){E(e,(function(e){t.push({newOption:e,brandNew:!0,existing:null,keyInfo:null})}))}(u,e),s=u,l=ft(),E(s,(function(t){var e=t.existing;e&&l.set(e.id,t)})),E(s,(function(t){var e=t.newOption;lt(!e||null==e.id||!l.get(e.id)||l.get(e.id)===t,"id duplicates: "+(e&&e.id)),e&&null!=e.id&&l.set(e.id,t),!t.keyInfo&&(t.keyInfo={})})),E(s,(function(t,e){var n=t.existing,i=t.newOption,r=t.keyInfo;if(q(i)){if(r.name=null!=i.name?mo(i.name):n?n.name:lo+e,n)r.id=mo(n.id);else if(null!=i.id)r.id=mo(i.id);else{var o=0;do{r.id="\0"+r.name+"\0"+o++}while(l.get(r.id))}l.set(r.id,t)}})),u}function vo(t,e,n){var i=xo(e[t],null),r=xo(n[t],null);return null!=i&&null!=r&&i===r}function mo(t){return xo(t,"")}function xo(t,e){return null==t?e:X(t)?t:j(t)||Z(t)?t+"":e}function _o(t){var e=t.name;return!(!e||!e.indexOf(lo))}function bo(t){return t&&null!=t.id&&0===mo(t.id).indexOf(uo)}function wo(t,e){return null!=e.dataIndexInside?e.dataIndexInside:null!=e.dataIndex?Y(e.dataIndex)?z(e.dataIndex,(function(e){return t.indexOfRawIndex(e)})):t.indexOfRawIndex(e.dataIndex):null!=e.name?Y(e.name)?z(e.name,(function(e){return t.indexOfName(e)})):t.indexOfName(e.name):void 0}function So(){var t="__ec_inner_"+Mo++;return function(e){return e[t]||(e[t]={})}}var Mo=no();function Io(t,e,n){var i=To(e,n),r=i.mainTypeSpecified,o=i.queryOptionMap,a=i.others,s=n?n.defaultMainType:null;return!r&&s&&o.set(s,{}),o.each((function(e,i){var r=Ao(t,i,e,{useDefault:s===i,enableAll:!n||null==n.enableAll||n.enableAll,enableNone:!n||null==n.enableNone||n.enableNone});a[i+"Models"]=r.models,a[i+"Model"]=r.models[0]})),a}function To(t,e){var n;if(X(t)){var i={};i[t+"Index"]=0,n=i}else n=t;var r=ft(),o={},a=!1;return E(n,(function(t,n){if("dataIndex"!==n&&"dataIndexInside"!==n){var i=n.match(/^(\w+)(Index|Id|Name)$/)||[],s=i[1],l=(i[2]||"").toLowerCase();if(s&&l&&!(e&&e.includeMainTypes&&P(e.includeMainTypes,s)<0))a=a||!!s,(r.get(s)||r.set(s,{}))[l]=t}else o[n]=t})),{mainTypeSpecified:a,queryOptionMap:r,others:o}}var Co={useDefault:!0,enableAll:!1,enableNone:!1},Do={useDefault:!1,enableAll:!0,enableNone:!0};function Ao(t,e,n,i){i=i||Co;var r=n.index,o=n.id,a=n.name,s={models:null,specified:null!=r||null!=o||null!=a};if(!s.specified){var l=void 0;return s.models=i.useDefault&&(l=t.getComponent(e))?[l]:[],s}return"none"===r||!1===r?(lt(i.enableNone,'`"none"` or `false` is not a valid value on index option.'),s.models=[],s):("all"===r&&(lt(i.enableAll,'`"all"` is not a valid value on index option.'),r=o=a=null),s.models=t.queryComponents({mainType:e,index:r,id:o,name:a}),s)}function ko(t,e,n){t.setAttribute?t.setAttribute(e,n):t[e]=n}function Lo(t,e){var n=ft(),i=[];return E(t,(function(t){var r=e(t);(n.get(r)||(i.push(r),n.set(r,[]))).push(t)})),{keys:i,buckets:n}}function Po(t,e,n,i,r){var o=null==e||"auto"===e;if(null==i)return i;if(j(i))return zr(f=so(n||0,i,r),o?Math.max(Br(n||0),Br(i)):e);if(X(i))return r<1?n:i;for(var a=[],s=n,l=i,u=Math.max(s?s.length:0,l.length),h=0;h<u;++h){var c=t.getDimensionInfo(h);if(c&&"ordinal"===c.type)a[h]=(r<1&&s?s:l)[h];else{var p=s&&s[h]?s[h]:0,d=l[h],f=so(p,d,r);a[h]=zr(f,o?Math.max(Br(p),Br(d)):e)}}return a}var Oo="___EC__COMPONENT__CONTAINER___",Ro="___EC__EXTENDED_CLASS___";function No(t){var e={main:"",sub:""};if(t){var n=t.split(".");e.main=n[0]||"",e.sub=n[1]||""}return e}function Eo(t,e){t.$constructor=t,t.extend=function(t){var e,i,r=this;return U(i=r)&&/^class\s/.test(Function.prototype.toString.call(i))?e=function(t){function e(){return t.apply(this,arguments)||this}return n(e,t),e}(r):O(e=function(){(t.$constructor||r).apply(this,arguments)},this),A(e.prototype,t),e[Ro]=!0,e.extend=this.extend,e.superCall=Bo,e.superApply=Fo,e.superClass=r,e}}function zo(t,e){t.extend=e.extend}var Vo=Math.round(10*Math.random());function Bo(t,e){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];return this.superClass.prototype[e].apply(t,n)}function Fo(t,e,n){return this.superClass.prototype[e].apply(t,n)}function Go(t){var e={};t.registerClass=function(t){var n,i=t.type||t.prototype.type;if(i){lt(/^[a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)?$/.test(n=i),'componentType "'+n+'" illegal'),t.prototype.type=i;var r=No(i);if(r.sub){if(r.sub!==Oo){(function(t){var n=e[t.main];n&&n[Oo]||((n=e[t.main]={})[Oo]=!0);return n}(r))[r.sub]=t}}else e[r.main]=t}return t},t.getClass=function(t,n,i){var r=e[t];if(r&&r[Oo]&&(r=n?r[n]:null),i&&!r)throw new Error(n?"Component "+t+"."+(n||"")+" is used but not imported.":t+".type should be specified.");return r},t.getClassesByMainType=function(t){var n=No(t),i=[],r=e[n.main];return r&&r[Oo]?E(r,(function(t,e){e!==Oo&&i.push(t)})):i.push(r),i},t.hasClass=function(t){var n=No(t);return!!e[n.main]},t.getAllClassMainTypes=function(){var t=[];return E(e,(function(e,n){t.push(n)})),t},t.hasSubTypes=function(t){var n=No(t),i=e[n.main];return i&&i[Oo]}}function Wo(t,e){for(var n=0;n<t.length;n++)t[n][1]||(t[n][1]=t[n][0]);return e=e||!1,function(n,i,r){for(var o={},a=0;a<t.length;a++){var s=t[a][1];if(!(i&&P(i,s)>=0||r&&P(r,s)<0)){var l=n.getShallow(s,e);null!=l&&(o[t[a][0]]=l)}}return o}}var Ho=Wo([["fill","color"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["opacity"],["shadowColor"]]),Yo=function(){function t(){}return t.prototype.getAreaStyle=function(t,e){return Ho(this,t,e)},t}(),Uo=new ln(50);function Xo(t){if("string"==typeof t){var e=Uo.get(t);return e&&e.image}return t}function Zo(t,e,n,i,r){if(t){if("string"==typeof t){if(e&&e.__zrImageSrc===t||!n)return e;var o=Uo.get(t),a={hostEl:n,cb:i,cbPayload:r};if(o)!qo(e=o.image)&&o.pending.push(a);else{var s=h.loadImage(t,jo,jo);s.__zrImageSrc=t,Uo.put(t,s.__cachedImgObj={image:s,pending:[a]})}return e}return t}return e}function jo(){var t=this.__cachedImgObj;this.onload=this.onerror=this.__cachedImgObj=null;for(var e=0;e<t.pending.length;e++){var n=t.pending[e],i=n.cb;i&&i(this,n.cbPayload),n.hostEl.dirty()}t.pending.length=0}function qo(t){return t&&t.width&&t.height}var Ko=/\{([a-zA-Z0-9_]+)\|([^}]*)\}/g;function $o(t,e,n,i,r){if(!e)return"";var o=(t+"").split("\n");r=Jo(e,n,i,r);for(var a=0,s=o.length;a<s;a++)o[a]=Qo(o[a],r);return o.join("\n")}function Jo(t,e,n,i){var r=A({},i=i||{});r.font=e,n=rt(n,"..."),r.maxIterations=rt(i.maxIterations,2);var o=r.minChar=rt(i.minChar,0);r.cnCharWidth=ur("国",e);var a=r.ascCharWidth=ur("a",e);r.placeholder=rt(i.placeholder,"");for(var s=t=Math.max(0,t-1),l=0;l<o&&s>=a;l++)s-=a;var u=ur(n,e);return u>s&&(n="",u=0),s=t-u,r.ellipsis=n,r.ellipsisWidth=u,r.contentWidth=s,r.containerWidth=t,r}function Qo(t,e){var n=e.containerWidth,i=e.font,r=e.contentWidth;if(!n)return"";var o=ur(t,i);if(o<=n)return t;for(var a=0;;a++){if(o<=r||a>=e.maxIterations){t+=e.ellipsis;break}var s=0===a?ta(t,r,e.ascCharWidth,e.cnCharWidth):o>0?Math.floor(t.length*r/o):0;o=ur(t=t.substr(0,s),i)}return""===t&&(t=e.placeholder),t}function ta(t,e,n,i){for(var r=0,o=0,a=t.length;o<a&&r<e;o++){var s=t.charCodeAt(o);r+=0<=s&&s<=127?n:i}return o}var ea=function(){},na=function(t){this.tokens=[],t&&(this.tokens=t)},ia=function(){this.width=0,this.height=0,this.contentWidth=0,this.contentHeight=0,this.outerWidth=0,this.outerHeight=0,this.lines=[]};function ra(t,e,n,i,r){var o,a,s=""===e,l=r&&n.rich[r]||{},u=t.lines,h=l.font||n.font,c=!1;if(i){var p=l.padding,d=p?p[1]+p[3]:0;if(null!=l.width&&"auto"!==l.width){var f=gr(l.width,i.width)+d;u.length>0&&f+i.accumWidth>i.width&&(o=e.split("\n"),c=!0),i.accumWidth=f}else{var g=sa(e,h,i.width,i.breakAll,i.accumWidth);i.accumWidth=g.accumWidth+d,a=g.linesWidths,o=g.lines}}else o=e.split("\n");for(var y=0;y<o.length;y++){var v=o[y],m=new ea;if(m.styleName=r,m.text=v,m.isLineHolder=!v&&!s,"number"==typeof l.width?m.width=l.width:m.width=a?a[y]:ur(v,h),y||c)u.push(new na([m]));else{var x=(u[u.length-1]||(u[0]=new na)).tokens,_=x.length;1===_&&x[0].isLineHolder?x[0]=m:(v||!_||s)&&x.push(m)}}}var oa=V(",&?/;] ".split(""),(function(t,e){return t[e]=!0,t}),{});function aa(t){return!function(t){var e=t.charCodeAt(0);return e>=33&&e<=383}(t)||!!oa[t]}function sa(t,e,n,i,r){for(var o=[],a=[],s="",l="",u=0,h=0,c=0;c<t.length;c++){var p=t.charAt(c);if("\n"!==p){var d=ur(p,e),f=!i&&!aa(p);(o.length?h+d>n:r+h+d>n)?h?(s||l)&&(f?(s||(s=l,l="",h=u=0),o.push(s),a.push(h-u),l+=p,s="",h=u+=d):(l&&(s+=l,l="",u=0),o.push(s),a.push(h),s=p,h=d)):f?(o.push(l),a.push(u),l=p,u=d):(o.push(p),a.push(d)):(h+=d,f?(l+=p,u+=d):(l&&(s+=l,l="",u=0),s+=p))}else l&&(s+=l,h+=u),o.push(s),a.push(h),s="",l="",u=0,h=0}return o.length||s||(s=t,l="",u=0),l&&(s+=l),s&&(o.push(s),a.push(h)),1===o.length&&(h+=r),{accumWidth:h,lines:o,linesWidths:a}}var la="__zr_style_"+Math.round(10*Math.random()),ua={shadowBlur:0,shadowOffsetX:0,shadowOffsetY:0,shadowColor:"#000",opacity:1,blend:"source-over"},ha={style:{shadowBlur:!0,shadowOffsetX:!0,shadowOffsetY:!0,shadowColor:!0,opacity:!0}};ua[la]=!0;var ca=["z","z2","invisible"],pa=["invisible"],da=function(t){function e(e){return t.call(this,e)||this}var i;return n(e,t),e.prototype._init=function(e){for(var n=G(e),i=0;i<n.length;i++){var r=n[i];"style"===r?this.useStyle(e[r]):t.prototype.attrKV.call(this,r,e[r])}this.style||this.useStyle({})},e.prototype.beforeBrush=function(){},e.prototype.afterBrush=function(){},e.prototype.innerBeforeBrush=function(){},e.prototype.innerAfterBrush=function(){},e.prototype.shouldBePainted=function(t,e,n,i){var r=this.transform;if(this.ignore||this.invisible||0===this.style.opacity||this.culling&&function(t,e,n){fa.copy(t.getBoundingRect()),t.transform&&fa.applyTransform(t.transform);return ga.width=e,ga.height=n,!fa.intersect(ga)}(this,t,e)||r&&!r[0]&&!r[3])return!1;if(n&&this.__clipPaths)for(var o=0;o<this.__clipPaths.length;++o)if(this.__clipPaths[o].isZeroArea())return!1;if(i&&this.parent)for(var a=this.parent;a;){if(a.ignore)return!1;a=a.parent}return!0},e.prototype.contain=function(t,e){return this.rectContain(t,e)},e.prototype.traverse=function(t,e){t.call(e,this)},e.prototype.rectContain=function(t,e){var n=this.transformCoordToLocal(t,e);return this.getBoundingRect().contain(n[0],n[1])},e.prototype.getPaintRect=function(){var t=this._paintRect;if(!this._paintRect||this.__dirty){var e=this.transform,n=this.getBoundingRect(),i=this.style,r=i.shadowBlur||0,o=i.shadowOffsetX||0,a=i.shadowOffsetY||0;t=this._paintRect||(this._paintRect=new sr(0,0,0,0)),e?sr.applyTransform(t,n,e):t.copy(n),(r||o||a)&&(t.width+=2*r+Math.abs(o),t.height+=2*r+Math.abs(a),t.x=Math.min(t.x,t.x+o-r),t.y=Math.min(t.y,t.y+a-r));var s=this.dirtyRectTolerance;t.isZero()||(t.x=Math.floor(t.x-s),t.y=Math.floor(t.y-s),t.width=Math.ceil(t.width+1+2*s),t.height=Math.ceil(t.height+1+2*s))}return t},e.prototype.setPrevPaintRect=function(t){t?(this._prevPaintRect=this._prevPaintRect||new sr(0,0,0,0),this._prevPaintRect.copy(t)):this._prevPaintRect=null},e.prototype.getPrevPaintRect=function(){return this._prevPaintRect},e.prototype.animateStyle=function(t){return this.animate("style",t)},e.prototype.updateDuringAnimation=function(t){"style"===t?this.dirtyStyle():this.markRedraw()},e.prototype.attrKV=function(e,n){"style"!==e?t.prototype.attrKV.call(this,e,n):this.style?this.setStyle(n):this.useStyle(n)},e.prototype.setStyle=function(t,e){return"string"==typeof t?this.style[t]=e:A(this.style,t),this.dirtyStyle(),this},e.prototype.dirtyStyle=function(t){t||this.markRedraw(),this.__dirty|=2,this._rect&&(this._rect=null)},e.prototype.dirty=function(){this.dirtyStyle()},e.prototype.styleChanged=function(){return!!(2&this.__dirty)},e.prototype.styleUpdated=function(){this.__dirty&=-3},e.prototype.createStyle=function(t){return yt(ua,t)},e.prototype.useStyle=function(t){t[la]||(t=this.createStyle(t)),this.__inHover?this.__hoverStyle=t:this.style=t,this.dirtyStyle()},e.prototype.isStyleObject=function(t){return t[la]},e.prototype._innerSaveToNormal=function(e){t.prototype._innerSaveToNormal.call(this,e);var n=this._normalState;e.style&&!n.style&&(n.style=this._mergeStyle(this.createStyle(),this.style)),this._savePrimaryToNormal(e,n,ca)},e.prototype._applyStateObj=function(e,n,i,r,o,a){t.prototype._applyStateObj.call(this,e,n,i,r,o,a);var s,l=!(n&&r);if(n&&n.style?o?r?s=n.style:(s=this._mergeStyle(this.createStyle(),i.style),this._mergeStyle(s,n.style)):(s=this._mergeStyle(this.createStyle(),r?this.style:i.style),this._mergeStyle(s,n.style)):l&&(s=i.style),s)if(o){var u=this.style;if(this.style=this.createStyle(l?{}:u),l)for(var h=G(u),c=0;c<h.length;c++){(d=h[c])in s&&(s[d]=s[d],this.style[d]=u[d])}var p=G(s);for(c=0;c<p.length;c++){var d=p[c];this.style[d]=this.style[d]}this._transitionState(e,{style:s},a,this.getAnimationStyleProps())}else this.useStyle(s);var f=this.__inHover?pa:ca;for(c=0;c<f.length;c++){d=f[c];n&&null!=n[d]?this[d]=n[d]:l&&null!=i[d]&&(this[d]=i[d])}},e.prototype._mergeStates=function(e){for(var n,i=t.prototype._mergeStates.call(this,e),r=0;r<e.length;r++){var o=e[r];o.style&&(n=n||{},this._mergeStyle(n,o.style))}return n&&(i.style=n),i},e.prototype._mergeStyle=function(t,e){return A(t,e),t},e.prototype.getAnimationStyleProps=function(){return ha},e.initDefaultProps=((i=e.prototype).type="displayable",i.invisible=!1,i.z=0,i.z2=0,i.zlevel=0,i.culling=!1,i.cursor="pointer",i.rectHover=!1,i.incremental=!1,i._rect=null,i.dirtyRectTolerance=0,void(i.__dirty=3)),e}(wr),fa=new sr(0,0,0,0),ga=new sr(0,0,0,0);var ya=Math.min,va=Math.max,ma=Math.sin,xa=Math.cos,_a=2*Math.PI,ba=wt(),wa=wt(),Sa=wt();function Ma(t,e,n){if(0!==t.length){for(var i=t[0],r=i[0],o=i[0],a=i[1],s=i[1],l=1;l<t.length;l++)i=t[l],r=ya(r,i[0]),o=va(o,i[0]),a=ya(a,i[1]),s=va(s,i[1]);e[0]=r,e[1]=a,n[0]=o,n[1]=s}}function Ia(t,e,n,i,r,o){r[0]=ya(t,n),r[1]=ya(e,i),o[0]=va(t,n),o[1]=va(e,i)}var Ta=[],Ca=[];function Da(t,e,n,i,r,o,a,s,l,u){var h=Xe,c=He,p=h(t,n,r,a,Ta);l[0]=1/0,l[1]=1/0,u[0]=-1/0,u[1]=-1/0;for(var d=0;d<p;d++){var f=c(t,n,r,a,Ta[d]);l[0]=ya(f,l[0]),u[0]=va(f,u[0])}p=h(e,i,o,s,Ca);for(d=0;d<p;d++){var g=c(e,i,o,s,Ca[d]);l[1]=ya(g,l[1]),u[1]=va(g,u[1])}l[0]=ya(t,l[0]),u[0]=va(t,u[0]),l[0]=ya(a,l[0]),u[0]=va(a,u[0]),l[1]=ya(e,l[1]),u[1]=va(e,u[1]),l[1]=ya(s,l[1]),u[1]=va(s,u[1])}function Aa(t,e,n,i,r,o,a,s){var l=Je,u=Ke,h=va(ya(l(t,n,r),1),0),c=va(ya(l(e,i,o),1),0),p=u(t,n,r,h),d=u(e,i,o,c);a[0]=ya(t,r,p),a[1]=ya(e,o,d),s[0]=va(t,r,p),s[1]=va(e,o,d)}function ka(t,e,n,i,r,o,a,s,l){var u=Gt,h=Wt,c=Math.abs(r-o);if(c%_a<1e-4&&c>1e-4)return s[0]=t-n,s[1]=e-i,l[0]=t+n,void(l[1]=e+i);if(ba[0]=xa(r)*n+t,ba[1]=ma(r)*i+e,wa[0]=xa(o)*n+t,wa[1]=ma(o)*i+e,u(s,ba,wa),h(l,ba,wa),(r%=_a)<0&&(r+=_a),(o%=_a)<0&&(o+=_a),r>o&&!a?o+=_a:r<o&&a&&(r+=_a),a){var p=o;o=r,r=p}for(var d=0;d<o;d+=Math.PI/2)d>r&&(Sa[0]=xa(d)*n+t,Sa[1]=ma(d)*i+e,u(s,Sa,s),h(l,Sa,l))}var La={M:1,L:2,C:3,Q:4,A:5,Z:6,R:7},Pa=[],Oa=[],Ra=[],Na=[],Ea=[],za=[],Va=Math.min,Ba=Math.max,Fa=Math.cos,Ga=Math.sin,Wa=Math.abs,Ha=Math.PI,Ya=2*Ha,Ua="undefined"!=typeof Float32Array,Xa=[];function Za(t){return Math.round(t/Ha*1e8)/1e8%2*Ha}var ja=function(){function t(t){this.dpr=1,this._xi=0,this._yi=0,this._x0=0,this._y0=0,this._len=0,t&&(this._saveData=!1),this._saveData&&(this.data=[])}return t.prototype.increaseVersion=function(){this._version++},t.prototype.getVersion=function(){return this._version},t.prototype.setScale=function(t,e,n){(n=n||0)>0&&(this._ux=Wa(n/Ai/t)||0,this._uy=Wa(n/Ai/e)||0)},t.prototype.setDPR=function(t){this.dpr=t},t.prototype.setContext=function(t){this._ctx=t},t.prototype.getContext=function(){return this._ctx},t.prototype.beginPath=function(){return this._ctx&&this._ctx.beginPath(),this.reset(),this},t.prototype.reset=function(){this._saveData&&(this._len=0),this._pathSegLen&&(this._pathSegLen=null,this._pathLen=0),this._version++},t.prototype.moveTo=function(t,e){return this._drawPendingPt(),this.addData(La.M,t,e),this._ctx&&this._ctx.moveTo(t,e),this._x0=t,this._y0=e,this._xi=t,this._yi=e,this},t.prototype.lineTo=function(t,e){var n=Wa(t-this._xi),i=Wa(e-this._yi),r=n>this._ux||i>this._uy;if(this.addData(La.L,t,e),this._ctx&&r&&this._ctx.lineTo(t,e),r)this._xi=t,this._yi=e,this._pendingPtDist=0;else{var o=n*n+i*i;o>this._pendingPtDist&&(this._pendingPtX=t,this._pendingPtY=e,this._pendingPtDist=o)}return this},t.prototype.bezierCurveTo=function(t,e,n,i,r,o){return this._drawPendingPt(),this.addData(La.C,t,e,n,i,r,o),this._ctx&&this._ctx.bezierCurveTo(t,e,n,i,r,o),this._xi=r,this._yi=o,this},t.prototype.quadraticCurveTo=function(t,e,n,i){return this._drawPendingPt(),this.addData(La.Q,t,e,n,i),this._ctx&&this._ctx.quadraticCurveTo(t,e,n,i),this._xi=n,this._yi=i,this},t.prototype.arc=function(t,e,n,i,r,o){this._drawPendingPt(),Xa[0]=i,Xa[1]=r,function(t,e){var n=Za(t[0]);n<0&&(n+=Ya);var i=n-t[0],r=t[1];r+=i,!e&&r-n>=Ya?r=n+Ya:e&&n-r>=Ya?r=n-Ya:!e&&n>r?r=n+(Ya-Za(n-r)):e&&n<r&&(r=n-(Ya-Za(r-n))),t[0]=n,t[1]=r}(Xa,o),i=Xa[0];var a=(r=Xa[1])-i;return this.addData(La.A,t,e,n,n,i,a,0,o?0:1),this._ctx&&this._ctx.arc(t,e,n,i,r,o),this._xi=Fa(r)*n+t,this._yi=Ga(r)*n+e,this},t.prototype.arcTo=function(t,e,n,i,r){return this._drawPendingPt(),this._ctx&&this._ctx.arcTo(t,e,n,i,r),this},t.prototype.rect=function(t,e,n,i){return this._drawPendingPt(),this._ctx&&this._ctx.rect(t,e,n,i),this.addData(La.R,t,e,n,i),this},t.prototype.closePath=function(){this._drawPendingPt(),this.addData(La.Z);var t=this._ctx,e=this._x0,n=this._y0;return t&&t.closePath(),this._xi=e,this._yi=n,this},t.prototype.fill=function(t){t&&t.fill(),this.toStatic()},t.prototype.stroke=function(t){t&&t.stroke(),this.toStatic()},t.prototype.len=function(){return this._len},t.prototype.setData=function(t){var e=t.length;this.data&&this.data.length===e||!Ua||(this.data=new Float32Array(e));for(var n=0;n<e;n++)this.data[n]=t[n];this._len=e},t.prototype.appendPath=function(t){t instanceof Array||(t=[t]);for(var e=t.length,n=0,i=this._len,r=0;r<e;r++)n+=t[r].len();Ua&&this.data instanceof Float32Array&&(this.data=new Float32Array(i+n));for(r=0;r<e;r++)for(var o=t[r].data,a=0;a<o.length;a++)this.data[i++]=o[a];this._len=i},t.prototype.addData=function(t,e,n,i,r,o,a,s,l){if(this._saveData){var u=this.data;this._len+arguments.length>u.length&&(this._expandData(),u=this.data);for(var h=0;h<arguments.length;h++)u[this._len++]=arguments[h]}},t.prototype._drawPendingPt=function(){this._pendingPtDist>0&&(this._ctx&&this._ctx.lineTo(this._pendingPtX,this._pendingPtY),this._pendingPtDist=0)},t.prototype._expandData=function(){if(!(this.data instanceof Array)){for(var t=[],e=0;e<this._len;e++)t[e]=this.data[e];this.data=t}},t.prototype.toStatic=function(){if(this._saveData){this._drawPendingPt();var t=this.data;t instanceof Array&&(t.length=this._len,Ua&&this._len>11&&(this.data=new Float32Array(t)))}},t.prototype.getBoundingRect=function(){Ra[0]=Ra[1]=Ea[0]=Ea[1]=Number.MAX_VALUE,Na[0]=Na[1]=za[0]=za[1]=-Number.MAX_VALUE;var t,e=this.data,n=0,i=0,r=0,o=0;for(t=0;t<this._len;){var a=e[t++],s=1===t;switch(s&&(r=n=e[t],o=i=e[t+1]),a){case La.M:n=r=e[t++],i=o=e[t++],Ea[0]=r,Ea[1]=o,za[0]=r,za[1]=o;break;case La.L:Ia(n,i,e[t],e[t+1],Ea,za),n=e[t++],i=e[t++];break;case La.C:Da(n,i,e[t++],e[t++],e[t++],e[t++],e[t],e[t+1],Ea,za),n=e[t++],i=e[t++];break;case La.Q:Aa(n,i,e[t++],e[t++],e[t],e[t+1],Ea,za),n=e[t++],i=e[t++];break;case La.A:var l=e[t++],u=e[t++],h=e[t++],c=e[t++],p=e[t++],d=e[t++]+p;t+=1;var f=!e[t++];s&&(r=Fa(p)*h+l,o=Ga(p)*c+u),ka(l,u,h,c,p,d,f,Ea,za),n=Fa(d)*h+l,i=Ga(d)*c+u;break;case La.R:Ia(r=n=e[t++],o=i=e[t++],r+e[t++],o+e[t++],Ea,za);break;case La.Z:n=r,i=o}Gt(Ra,Ra,Ea),Wt(Na,Na,za)}return 0===t&&(Ra[0]=Ra[1]=Na[0]=Na[1]=0),new sr(Ra[0],Ra[1],Na[0]-Ra[0],Na[1]-Ra[1])},t.prototype._calculateLength=function(){var t=this.data,e=this._len,n=this._ux,i=this._uy,r=0,o=0,a=0,s=0;this._pathSegLen||(this._pathSegLen=[]);for(var l=this._pathSegLen,u=0,h=0,c=0;c<e;){var p=t[c++],d=1===c;d&&(a=r=t[c],s=o=t[c+1]);var f=-1;switch(p){case La.M:r=a=t[c++],o=s=t[c++];break;case La.L:var g=t[c++],y=(x=t[c++])-o;(Wa(A=g-r)>n||Wa(y)>i||c===e-1)&&(f=Math.sqrt(A*A+y*y),r=g,o=x);break;case La.C:var v=t[c++],m=t[c++],x=(g=t[c++],t[c++]),_=t[c++],b=t[c++];f=qe(r,o,v,m,g,x,_,b,10),r=_,o=b;break;case La.Q:f=en(r,o,v=t[c++],m=t[c++],g=t[c++],x=t[c++],10),r=g,o=x;break;case La.A:var w=t[c++],S=t[c++],M=t[c++],I=t[c++],T=t[c++],C=t[c++],D=C+T;c+=1;t[c++];d&&(a=Fa(T)*M+w,s=Ga(T)*I+S),f=Ba(M,I)*Va(Ya,Math.abs(C)),r=Fa(D)*M+w,o=Ga(D)*I+S;break;case La.R:a=r=t[c++],s=o=t[c++],f=2*t[c++]+2*t[c++];break;case La.Z:var A=a-r;y=s-o;f=Math.sqrt(A*A+y*y),r=a,o=s}f>=0&&(l[h++]=f,u+=f)}return this._pathLen=u,u},t.prototype.rebuildPath=function(t,e){var n,i,r,o,a,s,l,u,h,c,p=this.data,d=this._ux,f=this._uy,g=this._len,y=e<1,v=0,m=0,x=0;if(!y||(this._pathSegLen||this._calculateLength(),l=this._pathSegLen,u=e*this._pathLen))t:for(var _=0;_<g;){var b=p[_++],w=1===_;switch(w&&(n=r=p[_],i=o=p[_+1]),b!==La.L&&x>0&&(t.lineTo(h,c),x=0),b){case La.M:n=r=p[_++],i=o=p[_++],t.moveTo(r,o);break;case La.L:a=p[_++],s=p[_++];var S=Wa(a-r),M=Wa(s-o);if(S>d||M>f){if(y){if(v+(j=l[m++])>u){var I=(u-v)/j;t.lineTo(r*(1-I)+a*I,o*(1-I)+s*I);break t}v+=j}t.lineTo(a,s),r=a,o=s,x=0}else{var T=S*S+M*M;T>x&&(h=a,c=s,x=T)}break;case La.C:var C=p[_++],D=p[_++],A=p[_++],k=p[_++],L=p[_++],P=p[_++];if(y){if(v+(j=l[m++])>u){Ze(r,C,A,L,I=(u-v)/j,Pa),Ze(o,D,k,P,I,Oa),t.bezierCurveTo(Pa[1],Oa[1],Pa[2],Oa[2],Pa[3],Oa[3]);break t}v+=j}t.bezierCurveTo(C,D,A,k,L,P),r=L,o=P;break;case La.Q:C=p[_++],D=p[_++],A=p[_++],k=p[_++];if(y){if(v+(j=l[m++])>u){Qe(r,C,A,I=(u-v)/j,Pa),Qe(o,D,k,I,Oa),t.quadraticCurveTo(Pa[1],Oa[1],Pa[2],Oa[2]);break t}v+=j}t.quadraticCurveTo(C,D,A,k),r=A,o=k;break;case La.A:var O=p[_++],R=p[_++],N=p[_++],E=p[_++],z=p[_++],V=p[_++],B=p[_++],F=!p[_++],G=N>E?N:E,W=Wa(N-E)>.001,H=z+V,Y=!1;if(y)v+(j=l[m++])>u&&(H=z+V*(u-v)/j,Y=!0),v+=j;if(W&&t.ellipse?t.ellipse(O,R,N,E,B,z,H,F):t.arc(O,R,G,z,H,F),Y)break t;w&&(n=Fa(z)*N+O,i=Ga(z)*E+R),r=Fa(H)*N+O,o=Ga(H)*E+R;break;case La.R:n=r=p[_],i=o=p[_+1],a=p[_++],s=p[_++];var U=p[_++],X=p[_++];if(y){if(v+(j=l[m++])>u){var Z=u-v;t.moveTo(a,s),t.lineTo(a+Va(Z,U),s),(Z-=U)>0&&t.lineTo(a+U,s+Va(Z,X)),(Z-=X)>0&&t.lineTo(a+Ba(U-Z,0),s+X),(Z-=U)>0&&t.lineTo(a,s+Ba(X-Z,0));break t}v+=j}t.rect(a,s,U,X);break;case La.Z:if(y){var j;if(v+(j=l[m++])>u){I=(u-v)/j;t.lineTo(r*(1-I)+n*I,o*(1-I)+i*I);break t}v+=j}t.closePath(),r=n,o=i}}},t.prototype.clone=function(){var e=new t,n=this.data;return e.data=n.slice?n.slice():Array.prototype.slice.call(n),e._len=this._len,e},t.CMD=La,t.initDefaultProps=function(){var e=t.prototype;e._saveData=!0,e._ux=0,e._uy=0,e._pendingPtDist=0,e._version=0}(),t}();function qa(t,e,n,i,r,o,a){if(0===r)return!1;var s=r,l=0;if(a>e+s&&a>i+s||a<e-s&&a<i-s||o>t+s&&o>n+s||o<t-s&&o<n-s)return!1;if(t===n)return Math.abs(o-t)<=s/2;var u=(l=(e-i)/(t-n))*o-a+(t*i-n*e)/(t-n);return u*u/(l*l+1)<=s/2*s/2}function Ka(t,e,n,i,r,o,a,s,l,u,h){if(0===l)return!1;var c=l;return!(h>e+c&&h>i+c&&h>o+c&&h>s+c||h<e-c&&h<i-c&&h<o-c&&h<s-c||u>t+c&&u>n+c&&u>r+c&&u>a+c||u<t-c&&u<n-c&&u<r-c&&u<a-c)&&je(t,e,n,i,r,o,a,s,u,h,null)<=c/2}function $a(t,e,n,i,r,o,a,s,l){if(0===a)return!1;var u=a;return!(l>e+u&&l>i+u&&l>o+u||l<e-u&&l<i-u&&l<o-u||s>t+u&&s>n+u&&s>r+u||s<t-u&&s<n-u&&s<r-u)&&tn(t,e,n,i,r,o,s,l,null)<=u/2}var Ja=2*Math.PI;function Qa(t){return(t%=Ja)<0&&(t+=Ja),t}var ts=2*Math.PI;function es(t,e,n,i,r,o,a,s,l){if(0===a)return!1;var u=a;s-=t,l-=e;var h=Math.sqrt(s*s+l*l);if(h-u>n||h+u<n)return!1;if(Math.abs(i-r)%ts<1e-4)return!0;if(o){var c=i;i=Qa(r),r=Qa(c)}else i=Qa(i),r=Qa(r);i>r&&(r+=ts);var p=Math.atan2(l,s);return p<0&&(p+=ts),p>=i&&p<=r||p+ts>=i&&p+ts<=r}function ns(t,e,n,i,r,o){if(o>e&&o>i||o<e&&o<i)return 0;if(i===e)return 0;var a=(o-e)/(i-e),s=i<e?1:-1;1!==a&&0!==a||(s=i<e?.5:-.5);var l=a*(n-t)+t;return l===r?1/0:l>r?s:0}var is=ja.CMD,rs=2*Math.PI;var os=[-1,-1,-1],as=[-1,-1];function ss(t,e,n,i,r,o,a,s,l,u){if(u>e&&u>i&&u>o&&u>s||u<e&&u<i&&u<o&&u<s)return 0;var h,c=Ue(e,i,o,s,u,os);if(0===c)return 0;for(var p=0,d=-1,f=void 0,g=void 0,y=0;y<c;y++){var v=os[y],m=0===v||1===v?.5:1;He(t,n,r,a,v)<l||(d<0&&(d=Xe(e,i,o,s,as),as[1]<as[0]&&d>1&&(h=void 0,h=as[0],as[0]=as[1],as[1]=h),f=He(e,i,o,s,as[0]),d>1&&(g=He(e,i,o,s,as[1]))),2===d?v<as[0]?p+=f<e?m:-m:v<as[1]?p+=g<f?m:-m:p+=s<g?m:-m:v<as[0]?p+=f<e?m:-m:p+=s<f?m:-m)}return p}function ls(t,e,n,i,r,o,a,s){if(s>e&&s>i&&s>o||s<e&&s<i&&s<o)return 0;var l=function(t,e,n,i,r){var o=t-2*e+n,a=2*(e-t),s=t-i,l=0;if(Ge(o))We(a)&&(h=-s/a)>=0&&h<=1&&(r[l++]=h);else{var u=a*a-4*o*s;if(Ge(u))(h=-a/(2*o))>=0&&h<=1&&(r[l++]=h);else if(u>0){var h,c=Oe(u),p=(-a-c)/(2*o);(h=(-a+c)/(2*o))>=0&&h<=1&&(r[l++]=h),p>=0&&p<=1&&(r[l++]=p)}}return l}(e,i,o,s,os);if(0===l)return 0;var u=Je(e,i,o);if(u>=0&&u<=1){for(var h=0,c=Ke(e,i,o,u),p=0;p<l;p++){var d=0===os[p]||1===os[p]?.5:1;Ke(t,n,r,os[p])<a||(os[p]<u?h+=c<e?d:-d:h+=o<c?d:-d)}return h}d=0===os[0]||1===os[0]?.5:1;return Ke(t,n,r,os[0])<a?0:o<e?d:-d}function us(t,e,n,i,r,o,a,s){if((s-=e)>n||s<-n)return 0;var l=Math.sqrt(n*n-s*s);os[0]=-l,os[1]=l;var u=Math.abs(i-r);if(u<1e-4)return 0;if(u>=rs-1e-4){i=0,r=rs;var h=o?1:-1;return a>=os[0]+t&&a<=os[1]+t?h:0}if(i>r){var c=i;i=r,r=c}i<0&&(i+=rs,r+=rs);for(var p=0,d=0;d<2;d++){var f=os[d];if(f+t>a){var g=Math.atan2(s,f);h=o?1:-1;g<0&&(g=rs+g),(g>=i&&g<=r||g+rs>=i&&g+rs<=r)&&(g>Math.PI/2&&g<1.5*Math.PI&&(h=-h),p+=h)}}return p}function hs(t,e,n,i,r){for(var o,a,s,l,u=t.data,h=t.len(),c=0,p=0,d=0,f=0,g=0,y=0;y<h;){var v=u[y++],m=1===y;switch(v===is.M&&y>1&&(n||(c+=ns(p,d,f,g,i,r))),m&&(f=p=u[y],g=d=u[y+1]),v){case is.M:p=f=u[y++],d=g=u[y++];break;case is.L:if(n){if(qa(p,d,u[y],u[y+1],e,i,r))return!0}else c+=ns(p,d,u[y],u[y+1],i,r)||0;p=u[y++],d=u[y++];break;case is.C:if(n){if(Ka(p,d,u[y++],u[y++],u[y++],u[y++],u[y],u[y+1],e,i,r))return!0}else c+=ss(p,d,u[y++],u[y++],u[y++],u[y++],u[y],u[y+1],i,r)||0;p=u[y++],d=u[y++];break;case is.Q:if(n){if($a(p,d,u[y++],u[y++],u[y],u[y+1],e,i,r))return!0}else c+=ls(p,d,u[y++],u[y++],u[y],u[y+1],i,r)||0;p=u[y++],d=u[y++];break;case is.A:var x=u[y++],_=u[y++],b=u[y++],w=u[y++],S=u[y++],M=u[y++];y+=1;var I=!!(1-u[y++]);o=Math.cos(S)*b+x,a=Math.sin(S)*w+_,m?(f=o,g=a):c+=ns(p,d,o,a,i,r);var T=(i-x)*w/b+x;if(n){if(es(x,_,w,S,S+M,I,e,T,r))return!0}else c+=us(x,_,w,S,S+M,I,T,r);p=Math.cos(S+M)*b+x,d=Math.sin(S+M)*w+_;break;case is.R:if(f=p=u[y++],g=d=u[y++],o=f+u[y++],a=g+u[y++],n){if(qa(f,g,o,g,e,i,r)||qa(o,g,o,a,e,i,r)||qa(o,a,f,a,e,i,r)||qa(f,a,f,g,e,i,r))return!0}else c+=ns(o,g,o,a,i,r),c+=ns(f,a,f,g,i,r);break;case is.Z:if(n){if(qa(p,d,f,g,e,i,r))return!0}else c+=ns(p,d,f,g,i,r);p=f,d=g}}return n||(s=d,l=g,Math.abs(s-l)<1e-4)||(c+=ns(p,d,f,g,i,r)||0),0!==c}var cs=k({fill:"#000",stroke:null,strokePercent:1,fillOpacity:1,strokeOpacity:1,lineDashOffset:0,lineWidth:1,lineCap:"butt",miterLimit:10,strokeNoScale:!1,strokeFirst:!1},ua),ps={style:k({fill:!0,stroke:!0,strokePercent:!0,fillOpacity:!0,strokeOpacity:!0,lineDashOffset:!0,lineWidth:!0,miterLimit:!0},ha.style)},ds=Ki.concat(["invisible","culling","z","z2","zlevel","parent"]),fs=function(t){function e(e){return t.call(this,e)||this}var i;return n(e,t),e.prototype.update=function(){var n=this;t.prototype.update.call(this);var i=this.style;if(i.decal){var r=this._decalEl=this._decalEl||new e;r.buildPath===e.prototype.buildPath&&(r.buildPath=function(t){n.buildPath(t,n.shape)}),r.silent=!0;var o=r.style;for(var a in i)o[a]!==i[a]&&(o[a]=i[a]);o.fill=i.fill?i.decal:null,o.decal=null,o.shadowColor=null,i.strokeFirst&&(o.stroke=null);for(var s=0;s<ds.length;++s)r[ds[s]]=this[ds[s]];r.__dirty|=1}else this._decalEl&&(this._decalEl=null)},e.prototype.getDecalElement=function(){return this._decalEl},e.prototype._init=function(e){var n=G(e);this.shape=this.getDefaultShape();var i=this.getDefaultStyle();i&&this.useStyle(i);for(var r=0;r<n.length;r++){var o=n[r],a=e[o];"style"===o?this.style?A(this.style,a):this.useStyle(a):"shape"===o?A(this.shape,a):t.prototype.attrKV.call(this,o,a)}this.style||this.useStyle({})},e.prototype.getDefaultStyle=function(){return null},e.prototype.getDefaultShape=function(){return{}},e.prototype.canBeInsideText=function(){return this.hasFill()},e.prototype.getInsideTextFill=function(){var t=this.style.fill;if("none"!==t){if(X(t)){var e=Ln(t,0);return e>.5?ki:e>.2?"#eee":Li}if(t)return Li}return ki},e.prototype.getInsideTextStroke=function(t){var e=this.style.fill;if(X(e)){var n=this.__zr;if(!(!n||!n.isDarkMode())===Ln(t,0)<.4)return e}},e.prototype.buildPath=function(t,e,n){},e.prototype.pathUpdated=function(){this.__dirty&=-5},e.prototype.getUpdatedPathProxy=function(t){return!this.path&&this.createPathProxy(),this.path.beginPath(),this.buildPath(this.path,this.shape,t),this.path},e.prototype.createPathProxy=function(){this.path=new ja(!1)},e.prototype.hasStroke=function(){var t=this.style,e=t.stroke;return!(null==e||"none"===e||!(t.lineWidth>0))},e.prototype.hasFill=function(){var t=this.style.fill;return null!=t&&"none"!==t},e.prototype.getBoundingRect=function(){var t=this._rect,e=this.style,n=!t;if(n){var i=!1;this.path||(i=!0,this.createPathProxy());var r=this.path;(i||4&this.__dirty)&&(r.beginPath(),this.buildPath(r,this.shape,!1),this.pathUpdated()),t=r.getBoundingRect()}if(this._rect=t,this.hasStroke()&&this.path&&this.path.len()>0){var o=this._rectStroke||(this._rectStroke=t.clone());if(this.__dirty||n){o.copy(t);var a=e.strokeNoScale?this.getLineScale():1,s=e.lineWidth;if(!this.hasFill()){var l=this.strokeContainThreshold;s=Math.max(s,null==l?4:l)}a>1e-10&&(o.width+=s/a,o.height+=s/a,o.x-=s/a/2,o.y-=s/a/2)}return o}return t},e.prototype.contain=function(t,e){var n=this.transformCoordToLocal(t,e),i=this.getBoundingRect(),r=this.style;if(t=n[0],e=n[1],i.contain(t,e)){var o=this.path;if(this.hasStroke()){var a=r.lineWidth,s=r.strokeNoScale?this.getLineScale():1;if(s>1e-10&&(this.hasFill()||(a=Math.max(a,this.strokeContainThreshold)),function(t,e,n,i){return hs(t,e,!0,n,i)}(o,a/s,t,e)))return!0}if(this.hasFill())return function(t,e,n){return hs(t,0,!1,e,n)}(o,t,e)}return!1},e.prototype.dirtyShape=function(){this.__dirty|=4,this._rect&&(this._rect=null),this._decalEl&&this._decalEl.dirtyShape(),this.markRedraw()},e.prototype.dirty=function(){this.dirtyStyle(),this.dirtyShape()},e.prototype.animateShape=function(t){return this.animate("shape",t)},e.prototype.updateDuringAnimation=function(t){"style"===t?this.dirtyStyle():"shape"===t?this.dirtyShape():this.markRedraw()},e.prototype.attrKV=function(e,n){"shape"===e?this.setShape(n):t.prototype.attrKV.call(this,e,n)},e.prototype.setShape=function(t,e){var n=this.shape;return n||(n=this.shape={}),"string"==typeof t?n[t]=e:A(n,t),this.dirtyShape(),this},e.prototype.shapeChanged=function(){return!!(4&this.__dirty)},e.prototype.createStyle=function(t){return yt(cs,t)},e.prototype._innerSaveToNormal=function(e){t.prototype._innerSaveToNormal.call(this,e);var n=this._normalState;e.shape&&!n.shape&&(n.shape=A({},this.shape))},e.prototype._applyStateObj=function(e,n,i,r,o,a){t.prototype._applyStateObj.call(this,e,n,i,r,o,a);var s,l=!(n&&r);if(n&&n.shape?o?r?s=n.shape:(s=A({},i.shape),A(s,n.shape)):(s=A({},r?this.shape:i.shape),A(s,n.shape)):l&&(s=i.shape),s)if(o){this.shape=A({},this.shape);for(var u={},h=G(s),c=0;c<h.length;c++){var p=h[c];"object"==typeof s[p]?this.shape[p]=s[p]:u[p]=s[p]}this._transitionState(e,{shape:u},a)}else this.shape=s,this.dirtyShape()},e.prototype._mergeStates=function(e){for(var n,i=t.prototype._mergeStates.call(this,e),r=0;r<e.length;r++){var o=e[r];o.shape&&(n=n||{},this._mergeStyle(n,o.shape))}return n&&(i.shape=n),i},e.prototype.getAnimationStyleProps=function(){return ps},e.prototype.isZeroArea=function(){return!1},e.extend=function(t){var i=function(e){function i(n){var i=e.call(this,n)||this;return t.init&&t.init.call(i,n),i}return n(i,e),i.prototype.getDefaultStyle=function(){return T(t.style)},i.prototype.getDefaultShape=function(){return T(t.shape)},i}(e);for(var r in t)"function"==typeof t[r]&&(i.prototype[r]=t[r]);return i},e.initDefaultProps=((i=e.prototype).type="path",i.strokeContainThreshold=5,i.segmentIgnoreThreshold=0,i.subPixelOptimize=!1,i.autoBatch=!1,void(i.__dirty=7)),e}(da),gs=k({strokeFirst:!0,font:a,x:0,y:0,textAlign:"left",textBaseline:"top",miterLimit:2},cs),ys=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.hasStroke=function(){var t=this.style,e=t.stroke;return null!=e&&"none"!==e&&t.lineWidth>0},e.prototype.hasFill=function(){var t=this.style.fill;return null!=t&&"none"!==t},e.prototype.createStyle=function(t){return yt(gs,t)},e.prototype.setBoundingRect=function(t){this._rect=t},e.prototype.getBoundingRect=function(){var t=this.style;if(!this._rect){var e=t.text;null!=e?e+="":e="";var n=cr(e,t.font,t.textAlign,t.textBaseline);if(n.x+=t.x||0,n.y+=t.y||0,this.hasStroke()){var i=t.lineWidth;n.x-=i/2,n.y-=i/2,n.width+=i,n.height+=i}this._rect=n}return this._rect},e.initDefaultProps=void(e.prototype.dirtyRectTolerance=10),e}(da);ys.prototype.type="tspan";var vs=k({x:0,y:0},ua),ms={style:k({x:!0,y:!0,width:!0,height:!0,sx:!0,sy:!0,sWidth:!0,sHeight:!0},ha.style)};var xs=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.createStyle=function(t){return yt(vs,t)},e.prototype._getSize=function(t){var e=this.style,n=e[t];if(null!=n)return n;var i,r=(i=e.image)&&"string"!=typeof i&&i.width&&i.height?e.image:this.__image;if(!r)return 0;var o="width"===t?"height":"width",a=e[o];return null==a?r[t]:r[t]/r[o]*a},e.prototype.getWidth=function(){return this._getSize("width")},e.prototype.getHeight=function(){return this._getSize("height")},e.prototype.getAnimationStyleProps=function(){return ms},e.prototype.getBoundingRect=function(){var t=this.style;return this._rect||(this._rect=new sr(t.x||0,t.y||0,this.getWidth(),this.getHeight())),this._rect},e}(da);xs.prototype.type="image";var _s=Math.round;function bs(t,e,n){if(e){var i=e.x1,r=e.x2,o=e.y1,a=e.y2;t.x1=i,t.x2=r,t.y1=o,t.y2=a;var s=n&&n.lineWidth;return s?(_s(2*i)===_s(2*r)&&(t.x1=t.x2=Ss(i,s,!0)),_s(2*o)===_s(2*a)&&(t.y1=t.y2=Ss(o,s,!0)),t):t}}function ws(t,e,n){if(e){var i=e.x,r=e.y,o=e.width,a=e.height;t.x=i,t.y=r,t.width=o,t.height=a;var s=n&&n.lineWidth;return s?(t.x=Ss(i,s,!0),t.y=Ss(r,s,!0),t.width=Math.max(Ss(i+o,s,!1)-t.x,0===o?0:1),t.height=Math.max(Ss(r+a,s,!1)-t.y,0===a?0:1),t):t}}function Ss(t,e,n){if(!e)return t;var i=_s(2*t);return(i+_s(e))%2==0?i/2:(i+(n?1:-1))/2}var Ms=function(){this.x=0,this.y=0,this.width=0,this.height=0},Is={},Ts=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultShape=function(){return new Ms},e.prototype.buildPath=function(t,e){var n,i,r,o;if(this.subPixelOptimize){var a=ws(Is,e,this.style);n=a.x,i=a.y,r=a.width,o=a.height,a.r=e.r,e=a}else n=e.x,i=e.y,r=e.width,o=e.height;e.r?function(t,e){var n,i,r,o,a,s=e.x,l=e.y,u=e.width,h=e.height,c=e.r;u<0&&(s+=u,u=-u),h<0&&(l+=h,h=-h),"number"==typeof c?n=i=r=o=c:c instanceof Array?1===c.length?n=i=r=o=c[0]:2===c.length?(n=r=c[0],i=o=c[1]):3===c.length?(n=c[0],i=o=c[1],r=c[2]):(n=c[0],i=c[1],r=c[2],o=c[3]):n=i=r=o=0,n+i>u&&(n*=u/(a=n+i),i*=u/a),r+o>u&&(r*=u/(a=r+o),o*=u/a),i+r>h&&(i*=h/(a=i+r),r*=h/a),n+o>h&&(n*=h/(a=n+o),o*=h/a),t.moveTo(s+n,l),t.lineTo(s+u-i,l),0!==i&&t.arc(s+u-i,l+i,i,-Math.PI/2,0),t.lineTo(s+u,l+h-r),0!==r&&t.arc(s+u-r,l+h-r,r,0,Math.PI/2),t.lineTo(s+o,l+h),0!==o&&t.arc(s+o,l+h-o,o,Math.PI/2,Math.PI),t.lineTo(s,l+n),0!==n&&t.arc(s+n,l+n,n,Math.PI,1.5*Math.PI)}(t,e):t.rect(n,i,r,o)},e.prototype.isZeroArea=function(){return!this.shape.width||!this.shape.height},e}(fs);Ts.prototype.type="rect";var Cs={fill:"#000"},Ds={style:k({fill:!0,stroke:!0,fillOpacity:!0,strokeOpacity:!0,lineWidth:!0,fontSize:!0,lineHeight:!0,width:!0,height:!0,textShadowColor:!0,textShadowBlur:!0,textShadowOffsetX:!0,textShadowOffsetY:!0,backgroundColor:!0,padding:!0,borderColor:!0,borderWidth:!0,borderRadius:!0},ha.style)},As=function(t){function e(e){var n=t.call(this)||this;return n.type="text",n._children=[],n._defaultStyle=Cs,n.attr(e),n}return n(e,t),e.prototype.childrenRef=function(){return this._children},e.prototype.update=function(){t.prototype.update.call(this),this.styleChanged()&&this._updateSubTexts();for(var e=0;e<this._children.length;e++){var n=this._children[e];n.zlevel=this.zlevel,n.z=this.z,n.z2=this.z2,n.culling=this.culling,n.cursor=this.cursor,n.invisible=this.invisible}},e.prototype.updateTransform=function(){var e=this.innerTransformable;e?(e.updateTransform(),e.transform&&(this.transform=e.transform)):t.prototype.updateTransform.call(this)},e.prototype.getLocalTransform=function(e){var n=this.innerTransformable;return n?n.getLocalTransform(e):t.prototype.getLocalTransform.call(this,e)},e.prototype.getComputedTransform=function(){return this.__hostTarget&&(this.__hostTarget.getComputedTransform(),this.__hostTarget.updateInnerText(!0)),t.prototype.getComputedTransform.call(this)},e.prototype._updateSubTexts=function(){var t;this._childCursor=0,Es(t=this.style),E(t.rich,Es),this.style.rich?this._updateRichTexts():this._updatePlainTexts(),this._children.length=this._childCursor,this.styleUpdated()},e.prototype.addSelfToZr=function(e){t.prototype.addSelfToZr.call(this,e);for(var n=0;n<this._children.length;n++)this._children[n].__zr=e},e.prototype.removeSelfFromZr=function(e){t.prototype.removeSelfFromZr.call(this,e);for(var n=0;n<this._children.length;n++)this._children[n].__zr=null},e.prototype.getBoundingRect=function(){if(this.styleChanged()&&this._updateSubTexts(),!this._rect){for(var t=new sr(0,0,0,0),e=this._children,n=[],i=null,r=0;r<e.length;r++){var o=e[r],a=o.getBoundingRect(),s=o.getLocalTransform(n);s?(t.copy(a),t.applyTransform(s),(i=i||t.clone()).union(t)):(i=i||a.clone()).union(a)}this._rect=i||t}return this._rect},e.prototype.setDefaultTextStyle=function(t){this._defaultStyle=t||Cs},e.prototype.setTextContent=function(t){0},e.prototype._mergeStyle=function(t,e){if(!e)return t;var n=e.rich,i=t.rich||n&&{};return A(t,e),n&&i?(this._mergeRich(i,n),t.rich=i):i&&(t.rich=i),t},e.prototype._mergeRich=function(t,e){for(var n=G(e),i=0;i<n.length;i++){var r=n[i];t[r]=t[r]||{},A(t[r],e[r])}},e.prototype.getAnimationStyleProps=function(){return Ds},e.prototype._getOrCreateChild=function(t){var e=this._children[this._childCursor];return e&&e instanceof t||(e=new t),this._children[this._childCursor++]=e,e.__zr=this.__zr,e.parent=this,e},e.prototype._updatePlainTexts=function(){var t=this.style,e=t.font||a,n=t.padding,i=function(t,e){null!=t&&(t+="");var n,i=e.overflow,r=e.padding,o=e.font,a="truncate"===i,s=fr(o),l=rt(e.lineHeight,s),u=!!e.backgroundColor,h="truncate"===e.lineOverflow,c=e.width,p=(n=null==c||"break"!==i&&"breakAll"!==i?t?t.split("\n"):[]:t?sa(t,e.font,c,"breakAll"===i,0).lines:[]).length*l,d=rt(e.height,p);if(p>d&&h){var f=Math.floor(d/l);n=n.slice(0,f)}if(t&&a&&null!=c)for(var g=Jo(c,o,e.ellipsis,{minChar:e.truncateMinChar,placeholder:e.placeholder}),y=0;y<n.length;y++)n[y]=Qo(n[y],g);var v=d,m=0;for(y=0;y<n.length;y++)m=Math.max(ur(n[y],o),m);null==c&&(c=m);var x=m;return r&&(v+=r[0]+r[2],x+=r[1]+r[3],c+=r[1]+r[3]),u&&(x=c),{lines:n,height:d,outerWidth:x,outerHeight:v,lineHeight:l,calculatedLineHeight:s,contentWidth:m,contentHeight:p,width:c}}(Fs(t),t),r=Gs(t),o=!!t.backgroundColor,s=i.outerHeight,l=i.outerWidth,u=i.contentWidth,h=i.lines,c=i.lineHeight,p=this._defaultStyle,d=t.x||0,f=t.y||0,g=t.align||p.align||"left",y=t.verticalAlign||p.verticalAlign||"top",v=d,m=dr(f,i.contentHeight,y);if(r||n){var x=pr(d,l,g),_=dr(f,s,y);r&&this._renderBackground(t,t,x,_,l,s)}m+=c/2,n&&(v=Bs(d,g,n),"top"===y?m+=n[0]:"bottom"===y&&(m-=n[2]));for(var b=0,w=!1,S=(Vs("fill"in t?t.fill:(w=!0,p.fill))),M=(zs("stroke"in t?t.stroke:o||p.autoStroke&&!w?null:(b=2,p.stroke))),I=t.textShadowBlur>0,T=null!=t.width&&("truncate"===t.overflow||"break"===t.overflow||"breakAll"===t.overflow),C=i.calculatedLineHeight,D=0;D<h.length;D++){var A=this._getOrCreateChild(ys),k=A.createStyle();A.useStyle(k),k.text=h[D],k.x=v,k.y=m,g&&(k.textAlign=g),k.textBaseline="middle",k.opacity=t.opacity,k.strokeFirst=!0,I&&(k.shadowBlur=t.textShadowBlur||0,k.shadowColor=t.textShadowColor||"transparent",k.shadowOffsetX=t.textShadowOffsetX||0,k.shadowOffsetY=t.textShadowOffsetY||0),k.stroke=M,k.fill=S,M&&(k.lineWidth=t.lineWidth||b,k.lineDash=t.lineDash,k.lineDashOffset=t.lineDashOffset||0),k.font=e,Rs(k,t),m+=c,T&&A.setBoundingRect(new sr(pr(k.x,t.width,k.textAlign),dr(k.y,C,k.textBaseline),u,C))}},e.prototype._updateRichTexts=function(){var t=this.style,e=function(t,e){var n=new ia;if(null!=t&&(t+=""),!t)return n;for(var i,r=e.width,o=e.height,a=e.overflow,s="break"!==a&&"breakAll"!==a||null==r?null:{width:r,accumWidth:0,breakAll:"breakAll"===a},l=Ko.lastIndex=0;null!=(i=Ko.exec(t));){var u=i.index;u>l&&ra(n,t.substring(l,u),e,s),ra(n,i[2],e,s,i[1]),l=Ko.lastIndex}l<t.length&&ra(n,t.substring(l,t.length),e,s);var h=[],c=0,p=0,d=e.padding,f="truncate"===a,g="truncate"===e.lineOverflow;function y(t,e,n){t.width=e,t.lineHeight=n,c+=n,p=Math.max(p,e)}t:for(var v=0;v<n.lines.length;v++){for(var m=n.lines[v],x=0,_=0,b=0;b<m.tokens.length;b++){var w=(P=m.tokens[b]).styleName&&e.rich[P.styleName]||{},S=P.textPadding=w.padding,M=S?S[1]+S[3]:0,I=P.font=w.font||e.font;P.contentHeight=fr(I);var T=rt(w.height,P.contentHeight);if(P.innerHeight=T,S&&(T+=S[0]+S[2]),P.height=T,P.lineHeight=ot(w.lineHeight,e.lineHeight,T),P.align=w&&w.align||e.align,P.verticalAlign=w&&w.verticalAlign||"middle",g&&null!=o&&c+P.lineHeight>o){b>0?(m.tokens=m.tokens.slice(0,b),y(m,_,x),n.lines=n.lines.slice(0,v+1)):n.lines=n.lines.slice(0,v);break t}var C=w.width,D=null==C||"auto"===C;if("string"==typeof C&&"%"===C.charAt(C.length-1))P.percentWidth=C,h.push(P),P.contentWidth=ur(P.text,I);else{if(D){var A=w.backgroundColor,k=A&&A.image;k&&qo(k=Xo(k))&&(P.width=Math.max(P.width,k.width*T/k.height))}var L=f&&null!=r?r-_:null;null!=L&&L<P.width?!D||L<M?(P.text="",P.width=P.contentWidth=0):(P.text=$o(P.text,L-M,I,e.ellipsis,{minChar:e.truncateMinChar}),P.width=P.contentWidth=ur(P.text,I)):P.contentWidth=ur(P.text,I)}P.width+=M,_+=P.width,w&&(x=Math.max(x,P.lineHeight))}y(m,_,x)}for(n.outerWidth=n.width=rt(r,p),n.outerHeight=n.height=rt(o,c),n.contentHeight=c,n.contentWidth=p,d&&(n.outerWidth+=d[1]+d[3],n.outerHeight+=d[0]+d[2]),v=0;v<h.length;v++){var P,O=(P=h[v]).percentWidth;P.width=parseInt(O,10)/100*n.width}return n}(Fs(t),t),n=e.width,i=e.outerWidth,r=e.outerHeight,o=t.padding,a=t.x||0,s=t.y||0,l=this._defaultStyle,u=t.align||l.align,h=t.verticalAlign||l.verticalAlign,c=pr(a,i,u),p=dr(s,r,h),d=c,f=p;o&&(d+=o[3],f+=o[0]);var g=d+n;Gs(t)&&this._renderBackground(t,t,c,p,i,r);for(var y=!!t.backgroundColor,v=0;v<e.lines.length;v++){for(var m=e.lines[v],x=m.tokens,_=x.length,b=m.lineHeight,w=m.width,S=0,M=d,I=g,T=_-1,C=void 0;S<_&&(!(C=x[S]).align||"left"===C.align);)this._placeToken(C,t,b,f,M,"left",y),w-=C.width,M+=C.width,S++;for(;T>=0&&"right"===(C=x[T]).align;)this._placeToken(C,t,b,f,I,"right",y),w-=C.width,I-=C.width,T--;for(M+=(n-(M-d)-(g-I)-w)/2;S<=T;)C=x[S],this._placeToken(C,t,b,f,M+C.width/2,"center",y),M+=C.width,S++;f+=b}},e.prototype._placeToken=function(t,e,n,i,r,o,s){var l=e.rich[t.styleName]||{};l.text=t.text;var u=t.verticalAlign,h=i+n/2;"top"===u?h=i+t.height/2:"bottom"===u&&(h=i+n-t.height/2),!t.isLineHolder&&Gs(l)&&this._renderBackground(l,e,"right"===o?r-t.width:"center"===o?r-t.width/2:r,h-t.height/2,t.width,t.height);var c=!!l.backgroundColor,p=t.textPadding;p&&(r=Bs(r,o,p),h-=t.height/2-p[0]-t.innerHeight/2);var d=this._getOrCreateChild(ys),f=d.createStyle();d.useStyle(f);var g=this._defaultStyle,y=!1,v=0,m=Vs("fill"in l?l.fill:"fill"in e?e.fill:(y=!0,g.fill)),x=zs("stroke"in l?l.stroke:"stroke"in e?e.stroke:c||s||g.autoStroke&&!y?null:(v=2,g.stroke)),_=l.textShadowBlur>0||e.textShadowBlur>0;f.text=t.text,f.x=r,f.y=h,_&&(f.shadowBlur=l.textShadowBlur||e.textShadowBlur||0,f.shadowColor=l.textShadowColor||e.textShadowColor||"transparent",f.shadowOffsetX=l.textShadowOffsetX||e.textShadowOffsetX||0,f.shadowOffsetY=l.textShadowOffsetY||e.textShadowOffsetY||0),f.textAlign=o,f.textBaseline="middle",f.font=t.font||a,f.opacity=ot(l.opacity,e.opacity,1),Rs(f,l),x&&(f.lineWidth=ot(l.lineWidth,e.lineWidth,v),f.lineDash=rt(l.lineDash,e.lineDash),f.lineDashOffset=e.lineDashOffset||0,f.stroke=x),m&&(f.fill=m);var b=t.contentWidth,w=t.contentHeight;d.setBoundingRect(new sr(pr(f.x,b,f.textAlign),dr(f.y,w,f.textBaseline),b,w))},e.prototype._renderBackground=function(t,e,n,i,r,o){var a,s,l,u=t.backgroundColor,h=t.borderWidth,c=t.borderColor,p=u&&u.image,d=u&&!p,f=t.borderRadius,g=this;if(d||t.lineHeight||h&&c){(a=this._getOrCreateChild(Ts)).useStyle(a.createStyle()),a.style.fill=null;var y=a.shape;y.x=n,y.y=i,y.width=r,y.height=o,y.r=f,a.dirtyShape()}if(d)(l=a.style).fill=u||null,l.fillOpacity=rt(t.fillOpacity,1);else if(p){(s=this._getOrCreateChild(xs)).onload=function(){g.dirtyStyle()};var v=s.style;v.image=u.image,v.x=n,v.y=i,v.width=r,v.height=o}h&&c&&((l=a.style).lineWidth=h,l.stroke=c,l.strokeOpacity=rt(t.strokeOpacity,1),l.lineDash=t.borderDash,l.lineDashOffset=t.borderDashOffset||0,a.strokeContainThreshold=0,a.hasFill()&&a.hasStroke()&&(l.strokeFirst=!0,l.lineWidth*=2));var m=(a||s).style;m.shadowBlur=t.shadowBlur||0,m.shadowColor=t.shadowColor||"transparent",m.shadowOffsetX=t.shadowOffsetX||0,m.shadowOffsetY=t.shadowOffsetY||0,m.opacity=ot(t.opacity,e.opacity,1)},e.makeFont=function(t){var e="";return Ns(t)&&(e=[t.fontStyle,t.fontWeight,Os(t.fontSize),t.fontFamily||"sans-serif"].join(" ")),e&&ut(e)||t.textFont||t.font},e}(da),ks={left:!0,right:1,center:1},Ls={top:1,bottom:1,middle:1},Ps=["fontStyle","fontWeight","fontSize","fontFamily"];function Os(t){return"string"!=typeof t||-1===t.indexOf("px")&&-1===t.indexOf("rem")&&-1===t.indexOf("em")?isNaN(+t)?"12px":t+"px":t}function Rs(t,e){for(var n=0;n<Ps.length;n++){var i=Ps[n],r=e[i];null!=r&&(t[i]=r)}}function Ns(t){return null!=t.fontSize||t.fontFamily||t.fontWeight}function Es(t){if(t){t.font=As.makeFont(t);var e=t.align;"middle"===e&&(e="center"),t.align=null==e||ks[e]?e:"left";var n=t.verticalAlign;"center"===n&&(n="middle"),t.verticalAlign=null==n||Ls[n]?n:"top",t.padding&&(t.padding=st(t.padding))}}function zs(t,e){return null==t||e<=0||"transparent"===t||"none"===t?null:t.image||t.colorStops?"#000":t}function Vs(t){return null==t||"none"===t?null:t.image||t.colorStops?"#000":t}function Bs(t,e,n){return"right"===e?t-n[1]:"center"===e?t+n[3]/2-n[1]/2:t+n[3]}function Fs(t){var e=t.text;return null!=e&&(e+=""),e}function Gs(t){return!!(t.backgroundColor||t.lineHeight||t.borderWidth&&t.borderColor)}var Ws=So(),Hs=function(t,e,n,i){if(i){var r=Ws(i);r.dataIndex=n,r.dataType=e,r.seriesIndex=t,"group"===i.type&&i.traverse((function(i){var r=Ws(i);r.seriesIndex=t,r.dataIndex=n,r.dataType=e}))}},Ys=1,Us={},Xs=So(),Zs=So(),js=["emphasis","blur","select"],qs=["normal","emphasis","blur","select"],Ks=10,$s="highlight",Js="downplay",Qs="select",tl="unselect",el="toggleSelect";function nl(t){return null!=t&&"none"!==t}var il=new ln(100);function rl(t){if(X(t)){var e=il.get(t);return e||(e=Sn(t,-.1),il.put(t,e)),e}if(Q(t)){var n=A({},t);return n.colorStops=z(t.colorStops,(function(t){return{offset:t.offset,color:Sn(t.color,-.1)}})),n}return t}function ol(t,e,n){t.onHoverStateChange&&(t.hoverState||0)!==n&&t.onHoverStateChange(e),t.hoverState=n}function al(t){ol(t,"emphasis",2)}function sl(t){2===t.hoverState&&ol(t,"normal",0)}function ll(t){ol(t,"blur",1)}function ul(t){1===t.hoverState&&ol(t,"normal",0)}function hl(t){t.selected=!0}function cl(t){t.selected=!1}function pl(t,e,n){e(t,n)}function dl(t,e,n){pl(t,e,n),t.isGroup&&t.traverse((function(t){pl(t,e,n)}))}function fl(t,e){switch(e){case"emphasis":t.hoverState=2;break;case"normal":t.hoverState=0;break;case"blur":t.hoverState=1;break;case"select":t.selected=!0}}function gl(t,e){var n=this.states[t];if(this.style){if("emphasis"===t)return function(t,e,n,i){var r=n&&P(n,"select")>=0,o=!1;if(t instanceof fs){var a=Xs(t),s=r&&a.selectFill||a.normalFill,l=r&&a.selectStroke||a.normalStroke;if(nl(s)||nl(l)){var u=(i=i||{}).style||{};"inherit"===u.fill?(o=!0,i=A({},i),(u=A({},u)).fill=s):!nl(u.fill)&&nl(s)?(o=!0,i=A({},i),(u=A({},u)).fill=rl(s)):!nl(u.stroke)&&nl(l)&&(o||(i=A({},i),u=A({},u)),u.stroke=rl(l)),i.style=u}}if(i&&null==i.z2){o||(i=A({},i));var h=t.z2EmphasisLift;i.z2=t.z2+(null!=h?h:Ks)}return i}(this,0,e,n);if("blur"===t)return function(t,e,n){var i=P(t.currentStates,e)>=0,r=t.style.opacity,o=i?null:function(t,e,n,i){for(var r=t.style,o={},a=0;a<e.length;a++){var s=e[a],l=r[s];o[s]=null==l?i&&i[s]:l}for(a=0;a<t.animators.length;a++){var u=t.animators[a];u.__fromStateTransition&&u.__fromStateTransition.indexOf(n)<0&&"style"===u.targetName&&u.saveTo(o,e)}return o}(t,["opacity"],e,{opacity:1}),a=(n=n||{}).style||{};return null==a.opacity&&(n=A({},n),a=A({opacity:i?r:.1*o.opacity},a),n.style=a),n}(this,t,n);if("select"===t)return function(t,e,n){if(n&&null==n.z2){n=A({},n);var i=t.z2SelectLift;n.z2=t.z2+(null!=i?i:9)}return n}(this,0,n)}return n}function yl(t){t.stateProxy=gl;var e=t.getTextContent(),n=t.getTextGuideLine();e&&(e.stateProxy=gl),n&&(n.stateProxy=gl)}function vl(t,e){!Il(t,e)&&!t.__highByOuter&&dl(t,al)}function ml(t,e){!Il(t,e)&&!t.__highByOuter&&dl(t,sl)}function xl(t,e){t.__highByOuter|=1<<(e||0),dl(t,al)}function _l(t,e){!(t.__highByOuter&=~(1<<(e||0)))&&dl(t,sl)}function bl(t){dl(t,ll)}function wl(t){dl(t,ul)}function Sl(t){dl(t,hl)}function Ml(t){dl(t,cl)}function Il(t,e){return t.__highDownSilentOnTouch&&e.zrByTouch}function Tl(t){t.getModel().eachComponent((function(e,n){var i=Zs(n);i.isBlured&&("series"===e?t.getViewOfSeriesModel(n):t.getViewOfComponentModel(n)).group.traverse((function(t){ul(t)}));i.isBlured=!1}))}function Cl(t,e,n,i){var r=i.getModel();function o(t,e){for(var n=0;n<e.length;n++){var i=t.getItemGraphicEl(e[n]);i&&wl(i)}}if(n=n||"coordinateSystem",null!=t&&e&&"none"!==e){var a=r.getSeriesByIndex(t),s=a.coordinateSystem;s&&s.master&&(s=s.master);var l=[];r.eachSeries((function(t){var r=a===t,u=t.coordinateSystem;if(u&&u.master&&(u=u.master),!("series"===n&&!r||"coordinateSystem"===n&&!(u&&s?u===s:r)||"series"===e&&r)){if(i.getViewOfSeriesModel(t).group.traverse((function(t){ll(t)})),N(e))o(t.getData(),e);else if(q(e))for(var h=G(e),c=0;c<h.length;c++)o(t.getData(h[c]),e[h[c]]);l.push(t),Zs(t).isBlured=!0}})),r.eachComponent((function(t,e){if("series"!==t){var n=i.getViewOfComponentModel(e);n&&n.blurSeries&&n.blurSeries(l,r)}}))}}function Dl(t,e,n){if(null!=t&&null!=e){var i=n.getModel().getComponent(t,e);if(i){Zs(i).isBlured=!0;var r=n.getViewOfComponentModel(i);r&&r.focusBlurEnabled&&r.group.traverse((function(t){ll(t)}))}}}function Al(t,e,n,i){var r={focusSelf:!1,dispatchers:null};if(null==t||"series"===t||null==e||null==n)return r;var o=i.getModel().getComponent(t,e);if(!o)return r;var a=i.getViewOfComponentModel(o);if(!a||!a.findHighDownDispatchers)return r;for(var s,l=a.findHighDownDispatchers(n),u=0;u<l.length;u++)if("self"===Ws(l[u]).focus){s=!0;break}return{focusSelf:s,dispatchers:l}}function kl(t){E(t.getAllData(),(function(e){var n=e.data,i=e.type;n.eachItemGraphicEl((function(e,n){t.isSelected(n,i)?Sl(e):Ml(e)}))}))}function Ll(t){var e=[];return t.eachSeries((function(t){E(t.getAllData(),(function(n){n.data;var i=n.type,r=t.getSelectedDataIndices();if(r.length>0){var o={dataIndex:r,seriesIndex:t.seriesIndex};null!=i&&(o.dataType=i),e.push(o)}}))})),e}function Pl(t,e,n){Vl(t,!0),dl(t,yl),Rl(t,e,n)}function Ol(t,e,n,i){i?function(t){Vl(t,!1)}(t):Pl(t,e,n)}function Rl(t,e,n){var i=Ws(t);null!=e?(i.focus=e,i.blurScope=n):i.focus&&(i.focus=null)}var Nl=["emphasis","blur","select"],El={itemStyle:"getItemStyle",lineStyle:"getLineStyle",areaStyle:"getAreaStyle"};function zl(t,e,n,i){n=n||"itemStyle";for(var r=0;r<Nl.length;r++){var o=Nl[r],a=e.getModel([o,n]);t.ensureState(o).style=i?i(a):a[El[n]]()}}function Vl(t,e){var n=!1===e,i=t;t.highDownSilentOnTouch&&(i.__highDownSilentOnTouch=t.highDownSilentOnTouch),n&&!i.__highDownDispatcher||(i.__highByOuter=i.__highByOuter||0,i.__highDownDispatcher=!n)}function Bl(t){return!(!t||!t.__highDownDispatcher)}function Fl(t){var e=t.type;return e===Qs||e===tl||e===el}function Gl(t){var e=t.type;return e===$s||e===Js}var Wl=ja.CMD,Hl=[[],[],[]],Yl=Math.sqrt,Ul=Math.atan2;function Xl(t,e){if(e){var n,i,r,o,a,s,l=t.data,u=t.len(),h=Wl.M,c=Wl.C,p=Wl.L,d=Wl.R,f=Wl.A,g=Wl.Q;for(r=0,o=0;r<u;){switch(n=l[r++],o=r,i=0,n){case h:case p:i=1;break;case c:i=3;break;case g:i=2;break;case f:var y=e[4],v=e[5],m=Yl(e[0]*e[0]+e[1]*e[1]),x=Yl(e[2]*e[2]+e[3]*e[3]),_=Ul(-e[1]/x,e[0]/m);l[r]*=m,l[r++]+=y,l[r]*=x,l[r++]+=v,l[r++]*=m,l[r++]*=x,l[r++]+=_,l[r++]+=_,o=r+=2;break;case d:s[0]=l[r++],s[1]=l[r++],Ft(s,s,e),l[o++]=s[0],l[o++]=s[1],s[0]+=l[r++],s[1]+=l[r++],Ft(s,s,e),l[o++]=s[0],l[o++]=s[1]}for(a=0;a<i;a++){var b=Hl[a];b[0]=l[r++],b[1]=l[r++],Ft(b,b,e),l[o++]=b[0],l[o++]=b[1]}}t.increaseVersion()}}var Zl=Math.sqrt,jl=Math.sin,ql=Math.cos,Kl=Math.PI;function $l(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1])}function Jl(t,e){return(t[0]*e[0]+t[1]*e[1])/($l(t)*$l(e))}function Ql(t,e){return(t[0]*e[1]<t[1]*e[0]?-1:1)*Math.acos(Jl(t,e))}function tu(t,e,n,i,r,o,a,s,l,u,h){var c=l*(Kl/180),p=ql(c)*(t-n)/2+jl(c)*(e-i)/2,d=-1*jl(c)*(t-n)/2+ql(c)*(e-i)/2,f=p*p/(a*a)+d*d/(s*s);f>1&&(a*=Zl(f),s*=Zl(f));var g=(r===o?-1:1)*Zl((a*a*(s*s)-a*a*(d*d)-s*s*(p*p))/(a*a*(d*d)+s*s*(p*p)))||0,y=g*a*d/s,v=g*-s*p/a,m=(t+n)/2+ql(c)*y-jl(c)*v,x=(e+i)/2+jl(c)*y+ql(c)*v,_=Ql([1,0],[(p-y)/a,(d-v)/s]),b=[(p-y)/a,(d-v)/s],w=[(-1*p-y)/a,(-1*d-v)/s],S=Ql(b,w);if(Jl(b,w)<=-1&&(S=Kl),Jl(b,w)>=1&&(S=0),S<0){var M=Math.round(S/Kl*1e6)/1e6;S=2*Kl+M%2*Kl}h.addData(u,m,x,a,s,_,S,c,o)}var eu=/([mlvhzcqtsa])([^mlvhzcqtsa]*)/gi,nu=/-?([0-9]*\.)?[0-9]+([eE]-?[0-9]+)?/g;var iu=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.applyTransform=function(t){},e}(fs);function ru(t){return null!=t.setData}function ou(t,e){var n=function(t){var e=new ja;if(!t)return e;var n,i=0,r=0,o=i,a=r,s=ja.CMD,l=t.match(eu);if(!l)return e;for(var u=0;u<l.length;u++){for(var h=l[u],c=h.charAt(0),p=void 0,d=h.match(nu)||[],f=d.length,g=0;g<f;g++)d[g]=parseFloat(d[g]);for(var y=0;y<f;){var v=void 0,m=void 0,x=void 0,_=void 0,b=void 0,w=void 0,S=void 0,M=i,I=r,T=void 0,C=void 0;switch(c){case"l":i+=d[y++],r+=d[y++],p=s.L,e.addData(p,i,r);break;case"L":i=d[y++],r=d[y++],p=s.L,e.addData(p,i,r);break;case"m":i+=d[y++],r+=d[y++],p=s.M,e.addData(p,i,r),o=i,a=r,c="l";break;case"M":i=d[y++],r=d[y++],p=s.M,e.addData(p,i,r),o=i,a=r,c="L";break;case"h":i+=d[y++],p=s.L,e.addData(p,i,r);break;case"H":i=d[y++],p=s.L,e.addData(p,i,r);break;case"v":r+=d[y++],p=s.L,e.addData(p,i,r);break;case"V":r=d[y++],p=s.L,e.addData(p,i,r);break;case"C":p=s.C,e.addData(p,d[y++],d[y++],d[y++],d[y++],d[y++],d[y++]),i=d[y-2],r=d[y-1];break;case"c":p=s.C,e.addData(p,d[y++]+i,d[y++]+r,d[y++]+i,d[y++]+r,d[y++]+i,d[y++]+r),i+=d[y-2],r+=d[y-1];break;case"S":v=i,m=r,T=e.len(),C=e.data,n===s.C&&(v+=i-C[T-4],m+=r-C[T-3]),p=s.C,M=d[y++],I=d[y++],i=d[y++],r=d[y++],e.addData(p,v,m,M,I,i,r);break;case"s":v=i,m=r,T=e.len(),C=e.data,n===s.C&&(v+=i-C[T-4],m+=r-C[T-3]),p=s.C,M=i+d[y++],I=r+d[y++],i+=d[y++],r+=d[y++],e.addData(p,v,m,M,I,i,r);break;case"Q":M=d[y++],I=d[y++],i=d[y++],r=d[y++],p=s.Q,e.addData(p,M,I,i,r);break;case"q":M=d[y++]+i,I=d[y++]+r,i+=d[y++],r+=d[y++],p=s.Q,e.addData(p,M,I,i,r);break;case"T":v=i,m=r,T=e.len(),C=e.data,n===s.Q&&(v+=i-C[T-4],m+=r-C[T-3]),i=d[y++],r=d[y++],p=s.Q,e.addData(p,v,m,i,r);break;case"t":v=i,m=r,T=e.len(),C=e.data,n===s.Q&&(v+=i-C[T-4],m+=r-C[T-3]),i+=d[y++],r+=d[y++],p=s.Q,e.addData(p,v,m,i,r);break;case"A":x=d[y++],_=d[y++],b=d[y++],w=d[y++],S=d[y++],tu(M=i,I=r,i=d[y++],r=d[y++],w,S,x,_,b,p=s.A,e);break;case"a":x=d[y++],_=d[y++],b=d[y++],w=d[y++],S=d[y++],tu(M=i,I=r,i+=d[y++],r+=d[y++],w,S,x,_,b,p=s.A,e)}}"z"!==c&&"Z"!==c||(p=s.Z,e.addData(p),i=o,r=a),n=p}return e.toStatic(),e}(t),i=A({},e);return i.buildPath=function(t){if(ru(t)){t.setData(n.data),(e=t.getContext())&&t.rebuildPath(e,1)}else{var e=t;n.rebuildPath(e,1)}},i.applyTransform=function(t){Xl(n,t),this.dirtyShape()},i}function au(t,e){return new iu(ou(t,e))}function su(t,e){e=e||{};var n=new fs;return t.shape&&n.setShape(t.shape),n.setStyle(t.style),e.bakeTransform?Xl(n.path,t.getComputedTransform()):e.toLocal?n.setLocalTransform(t.getComputedTransform()):n.copyTransform(t),n.buildPath=t.buildPath,n.applyTransform=n.applyTransform,n.z=t.z,n.z2=t.z2,n.zlevel=t.zlevel,n}var lu=function(){this.cx=0,this.cy=0,this.r=0},uu=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultShape=function(){return new lu},e.prototype.buildPath=function(t,e){t.moveTo(e.cx+e.r,e.cy),t.arc(e.cx,e.cy,e.r,0,2*Math.PI)},e}(fs);uu.prototype.type="circle";var hu=function(){this.cx=0,this.cy=0,this.rx=0,this.ry=0},cu=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultShape=function(){return new hu},e.prototype.buildPath=function(t,e){var n=.5522848,i=e.cx,r=e.cy,o=e.rx,a=e.ry,s=o*n,l=a*n;t.moveTo(i-o,r),t.bezierCurveTo(i-o,r-l,i-s,r-a,i,r-a),t.bezierCurveTo(i+s,r-a,i+o,r-l,i+o,r),t.bezierCurveTo(i+o,r+l,i+s,r+a,i,r+a),t.bezierCurveTo(i-s,r+a,i-o,r+l,i-o,r),t.closePath()},e}(fs);cu.prototype.type="ellipse";var pu=Math.PI,du=2*pu,fu=Math.sin,gu=Math.cos,yu=Math.acos,vu=Math.atan2,mu=Math.abs,xu=Math.sqrt,_u=Math.max,bu=Math.min,wu=1e-4;function Su(t,e,n,i,r,o,a){var s=t-n,l=e-i,u=(a?o:-o)/xu(s*s+l*l),h=u*l,c=-u*s,p=t+h,d=e+c,f=n+h,g=i+c,y=(p+f)/2,v=(d+g)/2,m=f-p,x=g-d,_=m*m+x*x,b=r-o,w=p*g-f*d,S=(x<0?-1:1)*xu(_u(0,b*b*_-w*w)),M=(w*x-m*S)/_,I=(-w*m-x*S)/_,T=(w*x+m*S)/_,C=(-w*m+x*S)/_,D=M-y,A=I-v,k=T-y,L=C-v;return D*D+A*A>k*k+L*L&&(M=T,I=C),{cx:M,cy:I,x0:-h,y0:-c,x1:M*(r/b-1),y1:I*(r/b-1)}}function Mu(t,e){var n,i=_u(e.r,0),r=_u(e.r0||0,0),o=i>0;if(o||r>0){if(o||(i=r,r=0),r>i){var a=i;i=r,r=a}var s=e.startAngle,l=e.endAngle;if(!isNaN(s)&&!isNaN(l)){var u=e.cx,h=e.cy,c=!!e.clockwise,p=mu(l-s),d=p>du&&p%du;if(d>wu&&(p=d),i>wu)if(p>du-wu)t.moveTo(u+i*gu(s),h+i*fu(s)),t.arc(u,h,i,s,l,!c),r>wu&&(t.moveTo(u+r*gu(l),h+r*fu(l)),t.arc(u,h,r,l,s,c));else{var f=void 0,g=void 0,y=void 0,v=void 0,m=void 0,x=void 0,_=void 0,b=void 0,w=void 0,S=void 0,M=void 0,I=void 0,T=void 0,C=void 0,D=void 0,A=void 0,k=i*gu(s),L=i*fu(s),P=r*gu(l),O=r*fu(l),R=p>wu;if(R){var N=e.cornerRadius;N&&(f=(n=function(t){var e;if(Y(t)){var n=t.length;if(!n)return t;e=1===n?[t[0],t[0],0,0]:2===n?[t[0],t[0],t[1],t[1]]:3===n?t.concat(t[2]):t}else e=[t,t,t,t];return e}(N))[0],g=n[1],y=n[2],v=n[3]);var E=mu(i-r)/2;if(m=bu(E,y),x=bu(E,v),_=bu(E,f),b=bu(E,g),M=w=_u(m,x),I=S=_u(_,b),(w>wu||S>wu)&&(T=i*gu(l),C=i*fu(l),D=r*gu(s),A=r*fu(s),p<pu)){var z=function(t,e,n,i,r,o,a,s){var l=n-t,u=i-e,h=a-r,c=s-o,p=c*l-h*u;if(!(p*p<wu))return[t+(p=(h*(e-o)-c*(t-r))/p)*l,e+p*u]}(k,L,D,A,T,C,P,O);if(z){var V=k-z[0],B=L-z[1],F=T-z[0],G=C-z[1],W=1/fu(yu((V*F+B*G)/(xu(V*V+B*B)*xu(F*F+G*G)))/2),H=xu(z[0]*z[0]+z[1]*z[1]);M=bu(w,(i-H)/(W+1)),I=bu(S,(r-H)/(W-1))}}}if(R)if(M>wu){var U=bu(y,M),X=bu(v,M),Z=Su(D,A,k,L,i,U,c),j=Su(T,C,P,O,i,X,c);t.moveTo(u+Z.cx+Z.x0,h+Z.cy+Z.y0),M<w&&U===X?t.arc(u+Z.cx,h+Z.cy,M,vu(Z.y0,Z.x0),vu(j.y0,j.x0),!c):(U>0&&t.arc(u+Z.cx,h+Z.cy,U,vu(Z.y0,Z.x0),vu(Z.y1,Z.x1),!c),t.arc(u,h,i,vu(Z.cy+Z.y1,Z.cx+Z.x1),vu(j.cy+j.y1,j.cx+j.x1),!c),X>0&&t.arc(u+j.cx,h+j.cy,X,vu(j.y1,j.x1),vu(j.y0,j.x0),!c))}else t.moveTo(u+k,h+L),t.arc(u,h,i,s,l,!c);else t.moveTo(u+k,h+L);if(r>wu&&R)if(I>wu){U=bu(f,I),Z=Su(P,O,T,C,r,-(X=bu(g,I)),c),j=Su(k,L,D,A,r,-U,c);t.lineTo(u+Z.cx+Z.x0,h+Z.cy+Z.y0),I<S&&U===X?t.arc(u+Z.cx,h+Z.cy,I,vu(Z.y0,Z.x0),vu(j.y0,j.x0),!c):(X>0&&t.arc(u+Z.cx,h+Z.cy,X,vu(Z.y0,Z.x0),vu(Z.y1,Z.x1),!c),t.arc(u,h,r,vu(Z.cy+Z.y1,Z.cx+Z.x1),vu(j.cy+j.y1,j.cx+j.x1),c),U>0&&t.arc(u+j.cx,h+j.cy,U,vu(j.y1,j.x1),vu(j.y0,j.x0),!c))}else t.lineTo(u+P,h+O),t.arc(u,h,r,l,s,c);else t.lineTo(u+P,h+O)}else t.moveTo(u,h);t.closePath()}}}var Iu=function(){this.cx=0,this.cy=0,this.r0=0,this.r=0,this.startAngle=0,this.endAngle=2*Math.PI,this.clockwise=!0,this.cornerRadius=0},Tu=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultShape=function(){return new Iu},e.prototype.buildPath=function(t,e){Mu(t,e)},e.prototype.isZeroArea=function(){return this.shape.startAngle===this.shape.endAngle||this.shape.r===this.shape.r0},e}(fs);Tu.prototype.type="sector";var Cu=function(){this.cx=0,this.cy=0,this.r=0,this.r0=0},Du=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultShape=function(){return new Cu},e.prototype.buildPath=function(t,e){var n=e.cx,i=e.cy,r=2*Math.PI;t.moveTo(n+e.r,i),t.arc(n,i,e.r,0,r,!1),t.moveTo(n+e.r0,i),t.arc(n,i,e.r0,0,r,!0)},e}(fs);function Au(t,e,n){var i=e.smooth,r=e.points;if(r&&r.length>=2){if(i){var o=function(t,e,n,i){var r,o,a,s,l=[],u=[],h=[],c=[];if(i){a=[1/0,1/0],s=[-1/0,-1/0];for(var p=0,d=t.length;p<d;p++)Gt(a,a,t[p]),Wt(s,s,t[p]);Gt(a,a,i[0]),Wt(s,s,i[1])}for(p=0,d=t.length;p<d;p++){var f=t[p];if(n)r=t[p?p-1:d-1],o=t[(p+1)%d];else{if(0===p||p===d-1){l.push(Mt(t[p]));continue}r=t[p-1],o=t[p+1]}Dt(u,o,r),Ot(u,u,e);var g=Nt(f,r),y=Nt(f,o),v=g+y;0!==v&&(g/=v,y/=v),Ot(h,u,-g),Ot(c,u,y);var m=Tt([],f,h),x=Tt([],f,c);i&&(Wt(m,m,a),Gt(m,m,s),Wt(x,x,a),Gt(x,x,s)),l.push(m),l.push(x)}return n&&l.push(l.shift()),l}(r,i,n,e.smoothConstraint);t.moveTo(r[0][0],r[0][1]);for(var a=r.length,s=0;s<(n?a:a-1);s++){var l=o[2*s],u=o[2*s+1],h=r[(s+1)%a];t.bezierCurveTo(l[0],l[1],u[0],u[1],h[0],h[1])}}else{t.moveTo(r[0][0],r[0][1]);s=1;for(var c=r.length;s<c;s++)t.lineTo(r[s][0],r[s][1])}n&&t.closePath()}}Du.prototype.type="ring";var ku=function(){this.points=null,this.smooth=0,this.smoothConstraint=null},Lu=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultShape=function(){return new ku},e.prototype.buildPath=function(t,e){Au(t,e,!0)},e}(fs);Lu.prototype.type="polygon";var Pu=function(){this.points=null,this.percent=1,this.smooth=0,this.smoothConstraint=null},Ou=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new Pu},e.prototype.buildPath=function(t,e){Au(t,e,!1)},e}(fs);Ou.prototype.type="polyline";var Ru={},Nu=function(){this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.percent=1},Eu=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new Nu},e.prototype.buildPath=function(t,e){var n,i,r,o;if(this.subPixelOptimize){var a=bs(Ru,e,this.style);n=a.x1,i=a.y1,r=a.x2,o=a.y2}else n=e.x1,i=e.y1,r=e.x2,o=e.y2;var s=e.percent;0!==s&&(t.moveTo(n,i),s<1&&(r=n*(1-s)+r*s,o=i*(1-s)+o*s),t.lineTo(r,o))},e.prototype.pointAt=function(t){var e=this.shape;return[e.x1*(1-t)+e.x2*t,e.y1*(1-t)+e.y2*t]},e}(fs);Eu.prototype.type="line";var zu=[],Vu=function(){this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.cpx1=0,this.cpy1=0,this.percent=1};function Bu(t,e,n){var i=t.cpx2,r=t.cpy2;return null!=i||null!=r?[(n?Ye:He)(t.x1,t.cpx1,t.cpx2,t.x2,e),(n?Ye:He)(t.y1,t.cpy1,t.cpy2,t.y2,e)]:[(n?$e:Ke)(t.x1,t.cpx1,t.x2,e),(n?$e:Ke)(t.y1,t.cpy1,t.y2,e)]}var Fu=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new Vu},e.prototype.buildPath=function(t,e){var n=e.x1,i=e.y1,r=e.x2,o=e.y2,a=e.cpx1,s=e.cpy1,l=e.cpx2,u=e.cpy2,h=e.percent;0!==h&&(t.moveTo(n,i),null==l||null==u?(h<1&&(Qe(n,a,r,h,zu),a=zu[1],r=zu[2],Qe(i,s,o,h,zu),s=zu[1],o=zu[2]),t.quadraticCurveTo(a,s,r,o)):(h<1&&(Ze(n,a,l,r,h,zu),a=zu[1],l=zu[2],r=zu[3],Ze(i,s,u,o,h,zu),s=zu[1],u=zu[2],o=zu[3]),t.bezierCurveTo(a,s,l,u,r,o)))},e.prototype.pointAt=function(t){return Bu(this.shape,t,!1)},e.prototype.tangentAt=function(t){var e=Bu(this.shape,t,!0);return Rt(e,e)},e}(fs);Fu.prototype.type="bezier-curve";var Gu=function(){this.cx=0,this.cy=0,this.r=0,this.startAngle=0,this.endAngle=2*Math.PI,this.clockwise=!0},Wu=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new Gu},e.prototype.buildPath=function(t,e){var n=e.cx,i=e.cy,r=Math.max(e.r,0),o=e.startAngle,a=e.endAngle,s=e.clockwise,l=Math.cos(o),u=Math.sin(o);t.moveTo(l*r+n,u*r+i),t.arc(n,i,r,o,a,!s)},e}(fs);Wu.prototype.type="arc";var Hu=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="compound",e}return n(e,t),e.prototype._updatePathDirty=function(){for(var t=this.shape.paths,e=this.shapeChanged(),n=0;n<t.length;n++)e=e||t[n].shapeChanged();e&&this.dirtyShape()},e.prototype.beforeBrush=function(){this._updatePathDirty();for(var t=this.shape.paths||[],e=this.getGlobalScale(),n=0;n<t.length;n++)t[n].path||t[n].createPathProxy(),t[n].path.setScale(e[0],e[1],t[n].segmentIgnoreThreshold)},e.prototype.buildPath=function(t,e){for(var n=e.paths||[],i=0;i<n.length;i++)n[i].buildPath(t,n[i].shape,!0)},e.prototype.afterBrush=function(){for(var t=this.shape.paths||[],e=0;e<t.length;e++)t[e].pathUpdated()},e.prototype.getBoundingRect=function(){return this._updatePathDirty.call(this),fs.prototype.getBoundingRect.call(this)},e}(fs),Yu=function(){function t(t){this.colorStops=t||[]}return t.prototype.addColorStop=function(t,e){this.colorStops.push({offset:t,color:e})},t}(),Uu=function(t){function e(e,n,i,r,o,a){var s=t.call(this,o)||this;return s.x=null==e?0:e,s.y=null==n?0:n,s.x2=null==i?1:i,s.y2=null==r?0:r,s.type="linear",s.global=a||!1,s}return n(e,t),e}(Yu),Xu=function(t){function e(e,n,i,r,o){var a=t.call(this,r)||this;return a.x=null==e?.5:e,a.y=null==n?.5:n,a.r=null==i?.5:i,a.type="radial",a.global=o||!1,a}return n(e,t),e}(Yu),Zu=[0,0],ju=[0,0],qu=new Ji,Ku=new Ji,$u=function(){function t(t,e){this._corners=[],this._axes=[],this._origin=[0,0];for(var n=0;n<4;n++)this._corners[n]=new Ji;for(n=0;n<2;n++)this._axes[n]=new Ji;t&&this.fromBoundingRect(t,e)}return t.prototype.fromBoundingRect=function(t,e){var n=this._corners,i=this._axes,r=t.x,o=t.y,a=r+t.width,s=o+t.height;if(n[0].set(r,o),n[1].set(a,o),n[2].set(a,s),n[3].set(r,s),e)for(var l=0;l<4;l++)n[l].transform(e);Ji.sub(i[0],n[1],n[0]),Ji.sub(i[1],n[3],n[0]),i[0].normalize(),i[1].normalize();for(l=0;l<2;l++)this._origin[l]=i[l].dot(n[0])},t.prototype.intersect=function(t,e){var n=!0,i=!e;return qu.set(1/0,1/0),Ku.set(0,0),!this._intersectCheckOneSide(this,t,qu,Ku,i,1)&&(n=!1,i)||!this._intersectCheckOneSide(t,this,qu,Ku,i,-1)&&(n=!1,i)||i||Ji.copy(e,n?qu:Ku),n},t.prototype._intersectCheckOneSide=function(t,e,n,i,r,o){for(var a=!0,s=0;s<2;s++){var l=this._axes[s];if(this._getProjMinMaxOnAxis(s,t._corners,Zu),this._getProjMinMaxOnAxis(s,e._corners,ju),Zu[1]<ju[0]||Zu[0]>ju[1]){if(a=!1,r)return a;var u=Math.abs(ju[0]-Zu[1]),h=Math.abs(Zu[0]-ju[1]);Math.min(u,h)>i.len()&&(u<h?Ji.scale(i,l,-u*o):Ji.scale(i,l,h*o))}else if(n){u=Math.abs(ju[0]-Zu[1]),h=Math.abs(Zu[0]-ju[1]);Math.min(u,h)<n.len()&&(u<h?Ji.scale(n,l,u*o):Ji.scale(n,l,-h*o))}}return a},t.prototype._getProjMinMaxOnAxis=function(t,e,n){for(var i=this._axes[t],r=this._origin,o=e[0].dot(i)+r[t],a=o,s=o,l=1;l<e.length;l++){var u=e[l].dot(i)+r[t];a=Math.min(u,a),s=Math.max(u,s)}n[0]=a,n[1]=s},t}(),Ju=[],Qu=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.notClear=!0,e.incremental=!0,e._displayables=[],e._temporaryDisplayables=[],e._cursor=0,e}return n(e,t),e.prototype.traverse=function(t,e){t.call(e,this)},e.prototype.useStyle=function(){this.style={}},e.prototype.getCursor=function(){return this._cursor},e.prototype.innerAfterBrush=function(){this._cursor=this._displayables.length},e.prototype.clearDisplaybles=function(){this._displayables=[],this._temporaryDisplayables=[],this._cursor=0,this.markRedraw(),this.notClear=!1},e.prototype.clearTemporalDisplayables=function(){this._temporaryDisplayables=[]},e.prototype.addDisplayable=function(t,e){e?this._temporaryDisplayables.push(t):this._displayables.push(t),this.markRedraw()},e.prototype.addDisplayables=function(t,e){e=e||!1;for(var n=0;n<t.length;n++)this.addDisplayable(t[n],e)},e.prototype.getDisplayables=function(){return this._displayables},e.prototype.getTemporalDisplayables=function(){return this._temporaryDisplayables},e.prototype.eachPendingDisplayable=function(t){for(var e=this._cursor;e<this._displayables.length;e++)t&&t(this._displayables[e]);for(e=0;e<this._temporaryDisplayables.length;e++)t&&t(this._temporaryDisplayables[e])},e.prototype.update=function(){this.updateTransform();for(var t=this._cursor;t<this._displayables.length;t++){(e=this._displayables[t]).parent=this,e.update(),e.parent=null}for(t=0;t<this._temporaryDisplayables.length;t++){var e;(e=this._temporaryDisplayables[t]).parent=this,e.update(),e.parent=null}},e.prototype.getBoundingRect=function(){if(!this._rect){for(var t=new sr(1/0,1/0,-1/0,-1/0),e=0;e<this._displayables.length;e++){var n=this._displayables[e],i=n.getBoundingRect().clone();n.needLocalTransform()&&i.applyTransform(n.getLocalTransform(Ju)),t.union(i)}this._rect=t}return this._rect},e.prototype.contain=function(t,e){var n=this.transformCoordToLocal(t,e);if(this.getBoundingRect().contain(n[0],n[1]))for(var i=0;i<this._displayables.length;i++){if(this._displayables[i].contain(t,e))return!0}return!1},e}(da),th=So();function eh(t,e,n,i,r){var o;if(e&&e.ecModel){var a=e.ecModel.getUpdatePayload();o=a&&a.animation}var s="update"===t;if(e&&e.isAnimationEnabled()){var l=void 0,u=void 0,h=void 0;return i?(l=rt(i.duration,200),u=rt(i.easing,"cubicOut"),h=0):(l=e.getShallow(s?"animationDurationUpdate":"animationDuration"),u=e.getShallow(s?"animationEasingUpdate":"animationEasing"),h=e.getShallow(s?"animationDelayUpdate":"animationDelay")),o&&(null!=o.duration&&(l=o.duration),null!=o.easing&&(u=o.easing),null!=o.delay&&(h=o.delay)),U(h)&&(h=h(n,r)),U(l)&&(l=l(n)),{duration:l||0,delay:h,easing:u}}return null}function nh(t,e,n,i,r,o,a){var s,l=!1;U(r)?(a=o,o=r,r=null):q(r)&&(o=r.cb,a=r.during,l=r.isFrom,s=r.removeOpt,r=r.dataIndex);var u="leave"===t;u||e.stopAnimation("leave");var h=eh(t,i,r,u?s||{}:null,i&&i.getAnimationDelayParams?i.getAnimationDelayParams(e,r):null);if(h&&h.duration>0){var c={duration:h.duration,delay:h.delay||0,easing:h.easing,done:o,force:!!o||!!a,setToFinal:!u,scope:t,during:a};l?e.animateFrom(n,c):e.animateTo(n,c)}else e.stopAnimation(),!l&&e.attr(n),a&&a(1),o&&o()}function ih(t,e,n,i,r,o){nh("update",t,e,n,i,r,o)}function rh(t,e,n,i,r,o){nh("enter",t,e,n,i,r,o)}function oh(t){if(!t.__zr)return!0;for(var e=0;e<t.animators.length;e++){if("leave"===t.animators[e].scope)return!0}return!1}function ah(t,e,n,i,r,o){oh(t)||nh("leave",t,e,n,i,r,o)}function sh(t,e,n,i){t.removeTextContent(),t.removeTextGuideLine(),ah(t,{style:{opacity:0}},e,n,i)}function lh(t,e,n){function i(){t.parent&&t.parent.remove(t)}t.isGroup?t.traverse((function(t){t.isGroup||sh(t,e,n,i)})):sh(t,e,n,i)}function uh(t){th(t).oldStyle=t.style}var hh=Math.max,ch=Math.min,ph={};function dh(t){return fs.extend(t)}var fh=function(t,e){var i=ou(t,e);return function(t){function e(e){var n=t.call(this,e)||this;return n.applyTransform=i.applyTransform,n.buildPath=i.buildPath,n}return n(e,t),e}(iu)};function gh(t,e){return fh(t,e)}function yh(t,e){ph[t]=e}function vh(t){if(ph.hasOwnProperty(t))return ph[t]}function mh(t,e,n,i){var r=au(t,e);return n&&("center"===i&&(n=_h(n,r.getBoundingRect())),wh(r,n)),r}function xh(t,e,n){var i=new xs({style:{image:t,x:e.x,y:e.y,width:e.width,height:e.height},onload:function(t){if("center"===n){var r={width:t.width,height:t.height};i.setStyle(_h(e,r))}}});return i}function _h(t,e){var n,i=e.width/e.height,r=t.height*i;return n=r<=t.width?t.height:(r=t.width)/i,{x:t.x+t.width/2-r/2,y:t.y+t.height/2-n/2,width:r,height:n}}var bh=function(t,e){for(var n=[],i=t.length,r=0;r<i;r++){var o=t[r];n.push(o.getUpdatedPathProxy(!0))}var a=new fs(e);return a.createPathProxy(),a.buildPath=function(t){if(ru(t)){t.appendPath(n);var e=t.getContext();e&&t.rebuildPath(e,1)}},a};function wh(t,e){if(t.applyTransform){var n=t.getBoundingRect().calculateTransform(e);t.applyTransform(n)}}var Sh=Ss;function Mh(t,e){for(var n=Oi([]);t&&t!==e;)Ni(n,t.getLocalTransform(),n),t=t.parent;return n}function Ih(t,e,n){return e&&!N(e)&&(e=qi.getLocalTransform(e)),n&&(e=Bi([],e)),Ft([],t,e)}function Th(t,e,n){var i=0===e[4]||0===e[5]||0===e[0]?1:Math.abs(2*e[4]/e[0]),r=0===e[4]||0===e[5]||0===e[2]?1:Math.abs(2*e[4]/e[2]),o=["left"===t?-i:"right"===t?i:0,"top"===t?-r:"bottom"===t?r:0];return o=Ih(o,e,n),Math.abs(o[0])>Math.abs(o[1])?o[0]>0?"right":"left":o[1]>0?"bottom":"top"}function Ch(t){return!t.isGroup}function Dh(t,e,n){if(t&&e){var i,r=(i={},t.traverse((function(t){Ch(t)&&t.anid&&(i[t.anid]=t)})),i);e.traverse((function(t){if(Ch(t)&&t.anid){var e=r[t.anid];if(e){var i=o(t);t.attr(o(e)),ih(t,i,n,Ws(t).dataIndex)}}}))}function o(t){var e={x:t.x,y:t.y,rotation:t.rotation};return function(t){return null!=t.shape}(t)&&(e.shape=A({},t.shape)),e}}function Ah(t,e){return z(t,(function(t){var n=t[0];n=hh(n,e.x),n=ch(n,e.x+e.width);var i=t[1];return i=hh(i,e.y),[n,i=ch(i,e.y+e.height)]}))}function kh(t,e){var n=hh(t.x,e.x),i=ch(t.x+t.width,e.x+e.width),r=hh(t.y,e.y),o=ch(t.y+t.height,e.y+e.height);if(i>=n&&o>=r)return{x:n,y:r,width:i-n,height:o-r}}function Lh(t,e,n){var i=A({rectHover:!0},e),r=i.style={strokeNoScale:!0};if(n=n||{x:-1,y:-1,width:2,height:2},t)return 0===t.indexOf("image://")?(r.image=t.slice(8),k(r,n),new xs(i)):mh(t.replace("path://",""),i,n,"center")}function Ph(t,e,n,i,r){for(var o=0,a=r[r.length-1];o<r.length;o++){var s=r[o];if(Oh(t,e,n,i,s[0],s[1],a[0],a[1]))return!0;a=s}}function Oh(t,e,n,i,r,o,a,s){var l,u=n-t,h=i-e,c=a-r,p=s-o,d=Rh(c,p,u,h);if((l=d)<=1e-6&&l>=-1e-6)return!1;var f=t-r,g=e-o,y=Rh(f,g,u,h)/d;if(y<0||y>1)return!1;var v=Rh(f,g,c,p)/d;return!(v<0||v>1)}function Rh(t,e,n,i){return t*i-n*e}function Nh(t){var e=t.itemTooltipOption,n=t.componentModel,i=t.itemName,r=X(e)?{formatter:e}:e,o=n.mainType,a=n.componentIndex,s={componentType:o,name:i,$vars:["name"]};s[o+"Index"]=a;var l=t.formatterParamsExtra;l&&E(G(l),(function(t){mt(s,t)||(s[t]=l[t],s.$vars.push(t))}));var u=Ws(t.el);u.componentMainType=o,u.componentIndex=a,u.tooltipConfig={name:i,option:k({content:i,formatterParams:s},r)}}function Eh(t,e){var n;t.isGroup&&(n=e(t)),n||t.traverse(e)}function zh(t,e){if(t)if(Y(t))for(var n=0;n<t.length;n++)Eh(t[n],e);else Eh(t,e)}yh("circle",uu),yh("ellipse",cu),yh("sector",Tu),yh("ring",Du),yh("polygon",Lu),yh("polyline",Ou),yh("rect",Ts),yh("line",Eu),yh("bezierCurve",Fu),yh("arc",Wu);var Vh=Object.freeze({__proto__:null,updateProps:ih,initProps:rh,removeElement:ah,removeElementWithFadeOut:lh,isElementRemoved:oh,extendShape:dh,extendPath:gh,registerShape:yh,getShapeClass:vh,makePath:mh,makeImage:xh,mergePath:bh,resizePath:wh,subPixelOptimizeLine:function(t){return bs(t.shape,t.shape,t.style),t},subPixelOptimizeRect:function(t){return ws(t.shape,t.shape,t.style),t},subPixelOptimize:Sh,getTransform:Mh,applyTransform:Ih,transformDirection:Th,groupTransition:Dh,clipPointsByRect:Ah,clipRectByRect:kh,createIcon:Lh,linePolygonIntersect:Ph,lineLineIntersect:Oh,setTooltipConfig:Nh,traverseElements:zh,Group:Cr,Image:xs,Text:As,Circle:uu,Ellipse:cu,Sector:Tu,Ring:Du,Polygon:Lu,Polyline:Ou,Rect:Ts,Line:Eu,BezierCurve:Fu,Arc:Wu,IncrementalDisplayable:Qu,CompoundPath:Hu,LinearGradient:Uu,RadialGradient:Xu,BoundingRect:sr,OrientedBoundingRect:$u,Point:Ji,Path:fs}),Bh={};function Fh(t,e){for(var n=0;n<js.length;n++){var i=js[n],r=e[i],o=t.ensureState(i);o.style=o.style||{},o.style.text=r}var a=t.currentStates.slice();t.clearStates(!0),t.setStyle({text:e.normal}),t.useStates(a,!0)}function Gh(t,e,n){var i,r=t.labelFetcher,o=t.labelDataIndex,a=t.labelDimIndex,s=e.normal;r&&(i=r.getFormattedLabel(o,"normal",null,a,s&&s.get("formatter"),null!=n?{interpolatedValue:n}:null)),null==i&&(i=U(t.defaultText)?t.defaultText(o,t,n):t.defaultText);for(var l={normal:i},u=0;u<js.length;u++){var h=js[u],c=e[h];l[h]=rt(r?r.getFormattedLabel(o,h,null,a,c&&c.get("formatter")):null,i)}return l}function Wh(t,e,n,i){n=n||Bh;for(var r=t instanceof As,o=!1,a=0;a<qs.length;a++){if((p=e[qs[a]])&&p.getShallow("show")){o=!0;break}}var s=r?t:t.getTextContent();if(o){r||(s||(s=new As,t.setTextContent(s)),t.stateProxy&&(s.stateProxy=t.stateProxy));var l=Gh(n,e),u=e.normal,h=!!u.getShallow("show"),c=Yh(u,i&&i.normal,n,!1,!r);c.text=l.normal,r||t.setTextConfig(Uh(u,n,!1));for(a=0;a<js.length;a++){var p,d=js[a];if(p=e[d]){var f=s.ensureState(d),g=!!rt(p.getShallow("show"),h);if(g!==h&&(f.ignore=!g),f.style=Yh(p,i&&i[d],n,!0,!r),f.style.text=l[d],!r)t.ensureState(d).textConfig=Uh(p,n,!0)}}s.silent=!!u.getShallow("silent"),null!=s.style.x&&(c.x=s.style.x),null!=s.style.y&&(c.y=s.style.y),s.ignore=!h,s.useStyle(c),s.dirty(),n.enableTextSetter&&($h(s).setLabelText=function(t){var i=Gh(n,e,t);Fh(s,i)})}else s&&(s.ignore=!0);t.dirty()}function Hh(t,e){e=e||"label";for(var n={normal:t.getModel(e)},i=0;i<js.length;i++){var r=js[i];n[r]=t.getModel([r,e])}return n}function Yh(t,e,n,i,r){var o={};return function(t,e,n,i,r){n=n||Bh;var o,a=e.ecModel,s=a&&a.option.textStyle,l=function(t){var e;for(;t&&t!==t.ecModel;){var n=(t.option||Bh).rich;if(n){e=e||{};for(var i=G(n),r=0;r<i.length;r++){e[i[r]]=1}}t=t.parentModel}return e}(e);if(l)for(var u in o={},l)if(l.hasOwnProperty(u)){var h=e.getModel(["rich",u]);qh(o[u]={},h,s,n,i,r,!1,!0)}o&&(t.rich=o);var c=e.get("overflow");c&&(t.overflow=c);var p=e.get("minMargin");null!=p&&(t.margin=p);qh(t,e,s,n,i,r,!0,!1)}(o,t,n,i,r),e&&A(o,e),o}function Uh(t,e,n){e=e||{};var i,r={},o=t.getShallow("rotate"),a=rt(t.getShallow("distance"),n?null:5),s=t.getShallow("offset");return"outside"===(i=t.getShallow("position")||(n?null:"inside"))&&(i=e.defaultOutsidePosition||"top"),null!=i&&(r.position=i),null!=s&&(r.offset=s),null!=o&&(o*=Math.PI/180,r.rotation=o),null!=a&&(r.distance=a),r.outsideFill="inherit"===t.get("color")?e.inheritColor||null:"auto",r}var Xh=["fontStyle","fontWeight","fontSize","fontFamily","textShadowColor","textShadowBlur","textShadowOffsetX","textShadowOffsetY"],Zh=["align","lineHeight","width","height","tag","verticalAlign"],jh=["padding","borderWidth","borderRadius","borderDashOffset","backgroundColor","borderColor","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY"];function qh(t,e,n,i,r,o,a,s){n=!r&&n||Bh;var l=i&&i.inheritColor,u=e.getShallow("color"),h=e.getShallow("textBorderColor"),c=rt(e.getShallow("opacity"),n.opacity);"inherit"!==u&&"auto"!==u||(u=l||null),"inherit"!==h&&"auto"!==h||(h=l||null),o||(u=u||n.color,h=h||n.textBorderColor),null!=u&&(t.fill=u),null!=h&&(t.stroke=h);var p=rt(e.getShallow("textBorderWidth"),n.textBorderWidth);null!=p&&(t.lineWidth=p);var d=rt(e.getShallow("textBorderType"),n.textBorderType);null!=d&&(t.lineDash=d);var f=rt(e.getShallow("textBorderDashOffset"),n.textBorderDashOffset);null!=f&&(t.lineDashOffset=f),r||null!=c||s||(c=i&&i.defaultOpacity),null!=c&&(t.opacity=c),r||o||null==t.fill&&i.inheritColor&&(t.fill=i.inheritColor);for(var g=0;g<Xh.length;g++){var y=Xh[g];null!=(m=rt(e.getShallow(y),n[y]))&&(t[y]=m)}for(g=0;g<Zh.length;g++){y=Zh[g];null!=(m=e.getShallow(y))&&(t[y]=m)}if(null==t.verticalAlign){var v=e.getShallow("baseline");null!=v&&(t.verticalAlign=v)}if(!a||!i.disableBox){for(g=0;g<jh.length;g++){var m;y=jh[g];null!=(m=e.getShallow(y))&&(t[y]=m)}var x=e.getShallow("borderType");null!=x&&(t.borderDash=x),"auto"!==t.backgroundColor&&"inherit"!==t.backgroundColor||!l||(t.backgroundColor=l),"auto"!==t.borderColor&&"inherit"!==t.borderColor||!l||(t.borderColor=l)}}function Kh(t,e){var n=e&&e.getModel("textStyle");return ut([t.fontStyle||n&&n.getShallow("fontStyle")||"",t.fontWeight||n&&n.getShallow("fontWeight")||"",(t.fontSize||n&&n.getShallow("fontSize")||12)+"px",t.fontFamily||n&&n.getShallow("fontFamily")||"sans-serif"].join(" "))}var $h=So();function Jh(t,e,n,i){if(t){var r=$h(t);r.prevValue=r.value,r.value=n;var o=e.normal;r.valueAnimation=o.get("valueAnimation"),r.valueAnimation&&(r.precision=o.get("precision"),r.defaultInterpolatedText=i,r.statesModels=e)}}function Qh(t,e,n,i,r){var o=$h(t);if(o.valueAnimation&&o.prevValue!==o.value){var a=o.defaultInterpolatedText,s=rt(o.interpolatedValue,o.prevValue),l=o.value;t.percent=0,(null==o.prevValue?rh:ih)(t,{percent:1},i,e,null,(function(i){var u=Po(n,o.precision,s,l,i);o.interpolatedValue=1===i?null:u;var h=Gh({labelDataIndex:e,labelFetcher:r,defaultText:a?a(u):u+""},o.statesModels,u);Fh(t,h)}))}}var tc,ec,nc=["textStyle","color"],ic=["fontStyle","fontWeight","fontSize","fontFamily","padding","lineHeight","rich","width","height","overflow"],rc=new As,oc=function(){function t(){}return t.prototype.getTextColor=function(t){var e=this.ecModel;return this.getShallow("color")||(!t&&e?e.get(nc):null)},t.prototype.getFont=function(){return Kh({fontStyle:this.getShallow("fontStyle"),fontWeight:this.getShallow("fontWeight"),fontSize:this.getShallow("fontSize"),fontFamily:this.getShallow("fontFamily")},this.ecModel)},t.prototype.getTextRect=function(t){for(var e={text:t,verticalAlign:this.getShallow("verticalAlign")||this.getShallow("baseline")},n=0;n<ic.length;n++)e[ic[n]]=this.getShallow(ic[n]);return rc.useStyle(e),rc.update(),rc.getBoundingRect()},t}(),ac=[["lineWidth","width"],["stroke","color"],["opacity"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["shadowColor"],["lineDash","type"],["lineDashOffset","dashOffset"],["lineCap","cap"],["lineJoin","join"],["miterLimit"]],sc=Wo(ac),lc=function(){function t(){}return t.prototype.getLineStyle=function(t){return sc(this,t)},t}(),uc=[["fill","color"],["stroke","borderColor"],["lineWidth","borderWidth"],["opacity"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["shadowColor"],["lineDash","borderType"],["lineDashOffset","borderDashOffset"],["lineCap","borderCap"],["lineJoin","borderJoin"],["miterLimit","borderMiterLimit"]],hc=Wo(uc),cc=function(){function t(){}return t.prototype.getItemStyle=function(t,e){return hc(this,t,e)},t}(),pc=function(){function t(t,e,n){this.parentModel=e,this.ecModel=n,this.option=t}return t.prototype.init=function(t,e,n){for(var i=[],r=3;r<arguments.length;r++)i[r-3]=arguments[r]},t.prototype.mergeOption=function(t,e){C(this.option,t,!0)},t.prototype.get=function(t,e){return null==t?this.option:this._doGet(this.parsePath(t),!e&&this.parentModel)},t.prototype.getShallow=function(t,e){var n=this.option,i=null==n?n:n[t];if(null==i&&!e){var r=this.parentModel;r&&(i=r.getShallow(t))}return i},t.prototype.getModel=function(e,n){var i=null!=e,r=i?this.parsePath(e):null;return new t(i?this._doGet(r):this.option,n=n||this.parentModel&&this.parentModel.getModel(this.resolveParentPath(r)),this.ecModel)},t.prototype.isEmpty=function(){return null==this.option},t.prototype.restoreData=function(){},t.prototype.clone=function(){return new(0,this.constructor)(T(this.option))},t.prototype.parsePath=function(t){return"string"==typeof t?t.split("."):t},t.prototype.resolveParentPath=function(t){return t},t.prototype.isAnimationEnabled=function(){if(!r.node&&this.option){if(null!=this.option.animation)return!!this.option.animation;if(this.parentModel)return this.parentModel.isAnimationEnabled()}},t.prototype._doGet=function(t,e){var n=this.option;if(!t)return n;for(var i=0;i<t.length&&(!t[i]||null!=(n=n&&"object"==typeof n?n[t[i]]:null));i++);return null==n&&e&&(n=e._doGet(this.resolveParentPath(t),e.parentModel)),n},t}();Eo(pc),tc=pc,ec=["__\0is_clz",Vo++].join("_"),tc.prototype[ec]=!0,tc.isInstance=function(t){return!(!t||!t[ec])},R(pc,lc),R(pc,cc),R(pc,Yo),R(pc,oc);var dc=Math.round(10*Math.random());function fc(t){return[t||"",dc++].join("_")}function gc(t,e){return C(C({},t,!0),e,!0)}var yc="ZH",vc="EN",mc=vc,xc={},_c={},bc=r.domSupported&&(document.documentElement.lang||navigator.language||navigator.browserLanguage).toUpperCase().indexOf(yc)>-1?yc:mc;function wc(t,e){t=t.toUpperCase(),_c[t]=new pc(e),xc[t]=e}function Sc(t){return _c[t]}wc(vc,{time:{month:["January","February","March","April","May","June","July","August","September","October","November","December"],monthAbbr:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayOfWeek:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayOfWeekAbbr:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]},legend:{selector:{all:"All",inverse:"Inv"}},toolbox:{brush:{title:{rect:"Box Select",polygon:"Lasso Select",lineX:"Horizontally Select",lineY:"Vertically Select",keep:"Keep Selections",clear:"Clear Selections"}},dataView:{title:"Data View",lang:["Data View","Close","Refresh"]},dataZoom:{title:{zoom:"Zoom",back:"Zoom Reset"}},magicType:{title:{line:"Switch to Line Chart",bar:"Switch to Bar Chart",stack:"Stack",tiled:"Tile"}},restore:{title:"Restore"},saveAsImage:{title:"Save as Image",lang:["Right Click to Save Image"]}},series:{typeNames:{pie:"Pie chart",bar:"Bar chart",line:"Line chart",scatter:"Scatter plot",effectScatter:"Ripple scatter plot",radar:"Radar chart",tree:"Tree",treemap:"Treemap",boxplot:"Boxplot",candlestick:"Candlestick",k:"K line chart",heatmap:"Heat map",map:"Map",parallel:"Parallel coordinate map",lines:"Line graph",graph:"Relationship graph",sankey:"Sankey diagram",funnel:"Funnel chart",gauge:"Gauge",pictorialBar:"Pictorial bar",themeRiver:"Theme River Map",sunburst:"Sunburst"}},aria:{general:{withTitle:'This is a chart about "{title}"',withoutTitle:"This is a chart"},series:{single:{prefix:"",withName:" with type {seriesType} named {seriesName}.",withoutName:" with type {seriesType}."},multiple:{prefix:". It consists of {seriesCount} series count.",withName:" The {seriesId} series is a {seriesType} representing {seriesName}.",withoutName:" The {seriesId} series is a {seriesType}.",separator:{middle:"",end:""}}},data:{allData:"The data is as follows: ",partialData:"The first {displayCnt} items are: ",withName:"the data for {name} is {value}",withoutName:"{value}",separator:{middle:", ",end:". "}}}}),wc(yc,{time:{month:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],monthAbbr:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],dayOfWeek:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],dayOfWeekAbbr:["日","一","二","三","四","五","六"]},legend:{selector:{all:"全选",inverse:"反选"}},toolbox:{brush:{title:{rect:"矩形选择",polygon:"圈选",lineX:"横向选择",lineY:"纵向选择",keep:"保持选择",clear:"清除选择"}},dataView:{title:"数据视图",lang:["数据视图","关闭","刷新"]},dataZoom:{title:{zoom:"区域缩放",back:"区域缩放还原"}},magicType:{title:{line:"切换为折线图",bar:"切换为柱状图",stack:"切换为堆叠",tiled:"切换为平铺"}},restore:{title:"还原"},saveAsImage:{title:"保存为图片",lang:["右键另存为图片"]}},series:{typeNames:{pie:"饼图",bar:"柱状图",line:"折线图",scatter:"散点图",effectScatter:"涟漪散点图",radar:"雷达图",tree:"树图",treemap:"矩形树图",boxplot:"箱型图",candlestick:"K线图",k:"K线图",heatmap:"热力图",map:"地图",parallel:"平行坐标图",lines:"线图",graph:"关系图",sankey:"桑基图",funnel:"漏斗图",gauge:"仪表盘图",pictorialBar:"象形柱图",themeRiver:"主题河流图",sunburst:"旭日图"}},aria:{general:{withTitle:"这是一个关于“{title}”的图表。",withoutTitle:"这是一个图表,"},series:{single:{prefix:"",withName:"图表类型是{seriesType},表示{seriesName}。",withoutName:"图表类型是{seriesType}。"},multiple:{prefix:"它由{seriesCount}个图表系列组成。",withName:"第{seriesId}个系列是一个表示{seriesName}的{seriesType},",withoutName:"第{seriesId}个系列是一个{seriesType},",separator:{middle:";",end:"。"}}},data:{allData:"其数据是——",partialData:"其中,前{displayCnt}项是——",withName:"{name}的数据是{value}",withoutName:"{value}",separator:{middle:",",end:""}}}});var Mc=1e3,Ic=6e4,Tc=36e5,Cc=864e5,Dc=31536e6,Ac={year:"{yyyy}",month:"{MMM}",day:"{d}",hour:"{HH}:{mm}",minute:"{HH}:{mm}",second:"{HH}:{mm}:{ss}",millisecond:"{HH}:{mm}:{ss} {SSS}",none:"{yyyy}-{MM}-{dd} {HH}:{mm}:{ss} {SSS}"},kc="{yyyy}-{MM}-{dd}",Lc={year:"{yyyy}",month:"{yyyy}-{MM}",day:kc,hour:"{yyyy}-{MM}-{dd} "+Ac.hour,minute:"{yyyy}-{MM}-{dd} "+Ac.minute,second:"{yyyy}-{MM}-{dd} "+Ac.second,millisecond:Ac.none},Pc=["year","month","day","hour","minute","second","millisecond"],Oc=["year","half-year","quarter","month","week","half-week","day","half-day","quarter-day","hour","minute","second","millisecond"];function Rc(t,e){return"0000".substr(0,e-(t+="").length)+t}function Nc(t){switch(t){case"half-year":case"quarter":return"month";case"week":case"half-week":return"day";case"half-day":case"quarter-day":return"hour";default:return t}}function Ec(t){return t===Nc(t)}function zc(t,e,n,i){var r=jr(t),o=r[Fc(n)](),a=r[Gc(n)]()+1,s=Math.floor((a-1)/4)+1,l=r[Wc(n)](),u=r["get"+(n?"UTC":"")+"Day"](),h=r[Hc(n)](),c=(h-1)%12+1,p=r[Yc(n)](),d=r[Uc(n)](),f=r[Xc(n)](),g=(i instanceof pc?i:Sc(i||bc)||_c.EN).getModel("time"),y=g.get("month"),v=g.get("monthAbbr"),m=g.get("dayOfWeek"),x=g.get("dayOfWeekAbbr");return(e||"").replace(/{yyyy}/g,o+"").replace(/{yy}/g,o%100+"").replace(/{Q}/g,s+"").replace(/{MMMM}/g,y[a-1]).replace(/{MMM}/g,v[a-1]).replace(/{MM}/g,Rc(a,2)).replace(/{M}/g,a+"").replace(/{dd}/g,Rc(l,2)).replace(/{d}/g,l+"").replace(/{eeee}/g,m[u]).replace(/{ee}/g,x[u]).replace(/{e}/g,u+"").replace(/{HH}/g,Rc(h,2)).replace(/{H}/g,h+"").replace(/{hh}/g,Rc(c+"",2)).replace(/{h}/g,c+"").replace(/{mm}/g,Rc(p,2)).replace(/{m}/g,p+"").replace(/{ss}/g,Rc(d,2)).replace(/{s}/g,d+"").replace(/{SSS}/g,Rc(f,3)).replace(/{S}/g,f+"")}function Vc(t,e){var n=jr(t),i=n[Gc(e)]()+1,r=n[Wc(e)](),o=n[Hc(e)](),a=n[Yc(e)](),s=n[Uc(e)](),l=0===n[Xc(e)](),u=l&&0===s,h=u&&0===a,c=h&&0===o,p=c&&1===r;return p&&1===i?"year":p?"month":c?"day":h?"hour":u?"minute":l?"second":"millisecond"}function Bc(t,e,n){var i=j(t)?jr(t):t;switch(e=e||Vc(t,n)){case"year":return i[Fc(n)]();case"half-year":return i[Gc(n)]()>=6?1:0;case"quarter":return Math.floor((i[Gc(n)]()+1)/4);case"month":return i[Gc(n)]();case"day":return i[Wc(n)]();case"half-day":return i[Hc(n)]()/24;case"hour":return i[Hc(n)]();case"minute":return i[Yc(n)]();case"second":return i[Uc(n)]();case"millisecond":return i[Xc(n)]()}}function Fc(t){return t?"getUTCFullYear":"getFullYear"}function Gc(t){return t?"getUTCMonth":"getMonth"}function Wc(t){return t?"getUTCDate":"getDate"}function Hc(t){return t?"getUTCHours":"getHours"}function Yc(t){return t?"getUTCMinutes":"getMinutes"}function Uc(t){return t?"getUTCSeconds":"getSeconds"}function Xc(t){return t?"getUTCMilliseconds":"getMilliseconds"}function Zc(t){return t?"setUTCFullYear":"setFullYear"}function jc(t){return t?"setUTCMonth":"setMonth"}function qc(t){return t?"setUTCDate":"setDate"}function Kc(t){return t?"setUTCHours":"setHours"}function $c(t){return t?"setUTCMinutes":"setMinutes"}function Jc(t){return t?"setUTCSeconds":"setSeconds"}function Qc(t){return t?"setUTCMilliseconds":"setMilliseconds"}function tp(t){if(!eo(t))return X(t)?t:"-";var e=(t+"").split(".");return e[0].replace(/(\d{1,3})(?=(?:\d{3})+(?!\d))/g,"$1,")+(e.length>1?"."+e[1]:"")}function ep(t,e){return t=(t||"").toLowerCase().replace(/-(.)/g,(function(t,e){return e.toUpperCase()})),e&&t&&(t=t.charAt(0).toUpperCase()+t.slice(1)),t}var np=st,ip=/([&<>"'])/g,rp={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"};function op(t){return null==t?"":(t+"").replace(ip,(function(t,e){return rp[e]}))}function ap(t,e,n){function i(t){return t&&ut(t)?t:"-"}function r(t){return!(null==t||isNaN(t)||!isFinite(t))}var o="time"===e,a=t instanceof Date;if(o||a){var s=o?jr(t):t;if(!isNaN(+s))return zc(s,"{yyyy}-{MM}-{dd} {hh}:{mm}:{ss}",n);if(a)return"-"}if("ordinal"===e)return Z(t)?i(t):j(t)&&r(t)?t+"":"-";var l=to(t);return r(l)?tp(l):Z(t)?i(t):"boolean"==typeof t?t+"":"-"}var sp=["a","b","c","d","e","f","g"],lp=function(t,e){return"{"+t+(null==e?"":e)+"}"};function up(t,e,n){Y(e)||(e=[e]);var i=e.length;if(!i)return"";for(var r=e[0].$vars||[],o=0;o<r.length;o++){var a=sp[o];t=t.replace(lp(a),lp(a,0))}for(var s=0;s<i;s++)for(var l=0;l<r.length;l++){var u=e[s][r[l]];t=t.replace(lp(sp[l],s),n?op(u):u)}return t}function hp(t,e){var n=X(t)?{color:t,extraCssText:e}:t||{},i=n.color,r=n.type;e=n.extraCssText;var o=n.renderMode||"html";return i?"html"===o?"subItem"===r?'<span style="display:inline-block;vertical-align:middle;margin-right:8px;margin-left:3px;border-radius:4px;width:4px;height:4px;background-color:'+op(i)+";"+(e||"")+'"></span>':'<span style="display:inline-block;margin-right:4px;border-radius:10px;width:10px;height:10px;background-color:'+op(i)+";"+(e||"")+'"></span>':{renderMode:o,content:"{"+(n.markerId||"markerX")+"|}  ",style:"subItem"===r?{width:4,height:4,borderRadius:2,backgroundColor:i}:{width:10,height:10,borderRadius:5,backgroundColor:i}}:""}function cp(t,e){return e=e||"transparent",X(t)?t:q(t)&&t.colorStops&&(t.colorStops[0]||{}).color||e}function pp(t,e){if("_blank"===e||"blank"===e){var n=window.open();n.opener=null,n.location.href=t}else window.open(t,e)}var dp=E,fp=["left","right","top","bottom","width","height"],gp=[["width","left","right"],["height","top","bottom"]];function yp(t,e,n,i,r){var o=0,a=0;null==i&&(i=1/0),null==r&&(r=1/0);var s=0;e.eachChild((function(l,u){var h,c,p=l.getBoundingRect(),d=e.childAt(u+1),f=d&&d.getBoundingRect();if("horizontal"===t){var g=p.width+(f?-f.x+p.x:0);(h=o+g)>i||l.newline?(o=0,h=g,a+=s+n,s=p.height):s=Math.max(s,p.height)}else{var y=p.height+(f?-f.y+p.y:0);(c=a+y)>r||l.newline?(o+=s+n,a=0,c=y,s=p.width):s=Math.max(s,p.width)}l.newline||(l.x=o,l.y=a,l.markRedraw(),"horizontal"===t?o=h+n:a=c+n)}))}var vp=yp;H(yp,"vertical"),H(yp,"horizontal");function mp(t,e,n){n=np(n||0);var i=e.width,r=e.height,o=Er(t.left,i),a=Er(t.top,r),s=Er(t.right,i),l=Er(t.bottom,r),u=Er(t.width,i),h=Er(t.height,r),c=n[2]+n[0],p=n[1]+n[3],d=t.aspect;switch(isNaN(u)&&(u=i-s-p-o),isNaN(h)&&(h=r-l-c-a),null!=d&&(isNaN(u)&&isNaN(h)&&(d>i/r?u=.8*i:h=.8*r),isNaN(u)&&(u=d*h),isNaN(h)&&(h=u/d)),isNaN(o)&&(o=i-s-u-p),isNaN(a)&&(a=r-l-h-c),t.left||t.right){case"center":o=i/2-u/2-n[3];break;case"right":o=i-u-p}switch(t.top||t.bottom){case"middle":case"center":a=r/2-h/2-n[0];break;case"bottom":a=r-h-c}o=o||0,a=a||0,isNaN(u)&&(u=i-p-o-(s||0)),isNaN(h)&&(h=r-c-a-(l||0));var f=new sr(o+n[3],a+n[0],u,h);return f.margin=n,f}function xp(t,e,n,i,r,o){var a,s=!r||!r.hv||r.hv[0],l=!r||!r.hv||r.hv[1],u=r&&r.boundingMode||"all";if((o=o||t).x=t.x,o.y=t.y,!s&&!l)return!1;if("raw"===u)a="group"===t.type?new sr(0,0,+e.width||0,+e.height||0):t.getBoundingRect();else if(a=t.getBoundingRect(),t.needLocalTransform()){var h=t.getLocalTransform();(a=a.clone()).applyTransform(h)}var c=mp(k({width:a.width,height:a.height},e),n,i),p=s?c.x-a.x:0,d=l?c.y-a.y:0;return"raw"===u?(o.x=p,o.y=d):(o.x+=p,o.y+=d),o===t&&t.markRedraw(),!0}function _p(t){var e=t.layoutMode||t.constructor.layoutMode;return q(e)?e:e?{type:e}:null}function bp(t,e,n){var i=n&&n.ignoreSize;!Y(i)&&(i=[i,i]);var r=a(gp[0],0),o=a(gp[1],1);function a(n,r){var o={},a=0,u={},h=0;if(dp(n,(function(e){u[e]=t[e]})),dp(n,(function(t){s(e,t)&&(o[t]=u[t]=e[t]),l(o,t)&&a++,l(u,t)&&h++})),i[r])return l(e,n[1])?u[n[2]]=null:l(e,n[2])&&(u[n[1]]=null),u;if(2!==h&&a){if(a>=2)return o;for(var c=0;c<n.length;c++){var p=n[c];if(!s(o,p)&&s(t,p)){o[p]=t[p];break}}return o}return u}function s(t,e){return t.hasOwnProperty(e)}function l(t,e){return null!=t[e]&&"auto"!==t[e]}function u(t,e,n){dp(t,(function(t){e[t]=n[t]}))}u(gp[0],t,r),u(gp[1],t,o)}function wp(t){return Sp({},t)}function Sp(t,e){return e&&t&&dp(fp,(function(n){e.hasOwnProperty(n)&&(t[n]=e[n])})),t}var Mp=So(),Ip=function(t){function e(e,n,i){var r=t.call(this,e,n,i)||this;return r.uid=fc("ec_cpt_model"),r}return n(e,t),e.prototype.init=function(t,e,n){this.mergeDefaultAndTheme(t,n)},e.prototype.mergeDefaultAndTheme=function(t,e){var n=_p(this),i=n?wp(t):{};C(t,e.getTheme().get(this.mainType)),C(t,this.getDefaultOption()),n&&bp(t,i,n)},e.prototype.mergeOption=function(t,e){C(this.option,t,!0);var n=_p(this);n&&bp(this.option,t,n)},e.prototype.optionUpdated=function(t,e){},e.prototype.getDefaultOption=function(){var t=this.constructor;if(!function(t){return!(!t||!t[Ro])}(t))return t.defaultOption;var e=Mp(this);if(!e.defaultOption){for(var n=[],i=t;i;){var r=i.prototype.defaultOption;r&&n.push(r),i=i.superClass}for(var o={},a=n.length-1;a>=0;a--)o=C(o,n[a],!0);e.defaultOption=o}return e.defaultOption},e.prototype.getReferringComponents=function(t,e){var n=t+"Index",i=t+"Id";return Ao(this.ecModel,t,{index:this.get(n,!0),id:this.get(i,!0)},e)},e.prototype.getBoxLayoutParams=function(){var t=this;return{left:t.get("left"),top:t.get("top"),right:t.get("right"),bottom:t.get("bottom"),width:t.get("width"),height:t.get("height")}},e.prototype.getZLevelKey=function(){return""},e.prototype.setZLevel=function(t){this.option.zlevel=t},e.protoInitialize=function(){var t=e.prototype;t.type="component",t.id="",t.name="",t.mainType="",t.subType="",t.componentIndex=0}(),e}(pc);zo(Ip,pc),Go(Ip),function(t){var e={};t.registerSubTypeDefaulter=function(t,n){var i=No(t);e[i.main]=n},t.determineSubType=function(n,i){var r=i.type;if(!r){var o=No(n).main;t.hasSubTypes(n)&&e[o]&&(r=e[o](i))}return r}}(Ip),function(t,e){function n(t,e){return t[e]||(t[e]={predecessor:[],successor:[]}),t[e]}t.topologicalTravel=function(t,i,r,o){if(t.length){var a=function(t){var i={},r=[];return E(t,(function(o){var a=n(i,o),s=function(t,e){var n=[];return E(t,(function(t){P(e,t)>=0&&n.push(t)})),n}(a.originalDeps=e(o),t);a.entryCount=s.length,0===a.entryCount&&r.push(o),E(s,(function(t){P(a.predecessor,t)<0&&a.predecessor.push(t);var e=n(i,t);P(e.successor,t)<0&&e.successor.push(o)}))})),{graph:i,noEntryList:r}}(i),s=a.graph,l=a.noEntryList,u={};for(E(t,(function(t){u[t]=!0}));l.length;){var h=l.pop(),c=s[h],p=!!u[h];p&&(r.call(o,h,c.originalDeps.slice()),delete u[h]),E(c.successor,p?f:d)}E(u,(function(){var t="";throw new Error(t)}))}function d(t){s[t].entryCount--,0===s[t].entryCount&&l.push(t)}function f(t){u[t]=!0,d(t)}}}(Ip,(function(t){var e=[];E(Ip.getClassesByMainType(t),(function(t){e=e.concat(t.dependencies||t.prototype.dependencies||[])})),e=z(e,(function(t){return No(t).main})),"dataset"!==t&&P(e,"dataset")<=0&&e.unshift("dataset");return e}));var Tp="";"undefined"!=typeof navigator&&(Tp=navigator.platform||"");var Cp="rgba(0, 0, 0, 0.2)",Dp={darkMode:"auto",colorBy:"series",color:["#5470c6","#91cc75","#fac858","#ee6666","#73c0de","#3ba272","#fc8452","#9a60b4","#ea7ccc"],gradientColor:["#f6efa6","#d88273","#bf444c"],aria:{decal:{decals:[{color:Cp,dashArrayX:[1,0],dashArrayY:[2,5],symbolSize:1,rotation:Math.PI/6},{color:Cp,symbol:"circle",dashArrayX:[[8,8],[0,8,8,0]],dashArrayY:[6,0],symbolSize:.8},{color:Cp,dashArrayX:[1,0],dashArrayY:[4,3],rotation:-Math.PI/4},{color:Cp,dashArrayX:[[6,6],[0,6,6,0]],dashArrayY:[6,0]},{color:Cp,dashArrayX:[[1,0],[1,6]],dashArrayY:[1,0,6,0],rotation:Math.PI/4},{color:Cp,symbol:"triangle",dashArrayX:[[9,9],[0,9,9,0]],dashArrayY:[7,2],symbolSize:.75}]}},textStyle:{fontFamily:Tp.match(/^Win/)?"Microsoft YaHei":"sans-serif",fontSize:12,fontStyle:"normal",fontWeight:"normal"},blendMode:null,stateAnimation:{duration:300,easing:"cubicOut"},animation:"auto",animationDuration:1e3,animationDurationUpdate:500,animationEasing:"cubicInOut",animationEasingUpdate:"cubicInOut",animationThreshold:2e3,progressiveThreshold:3e3,progressive:400,hoverLayerThreshold:3e3,useUTC:!1},Ap=ft(["tooltip","label","itemName","itemId","itemGroupId","seriesName"]),kp="original",Lp="arrayRows",Pp="objectRows",Op="keyedColumns",Rp="typedArray",Np="unknown",Ep="column",zp="row",Vp=1,Bp=2,Fp=3,Gp=So();function Wp(t,e,n){var i={},r=Yp(e);if(!r||!t)return i;var o,a,s=[],l=[],u=e.ecModel,h=Gp(u).datasetMap,c=r.uid+"_"+n.seriesLayoutBy;E(t=t.slice(),(function(e,n){var r=q(e)?e:t[n]={name:e};"ordinal"===r.type&&null==o&&(o=n,a=f(r)),i[r.name]=[]}));var p=h.get(c)||h.set(c,{categoryWayDim:a,valueWayDim:0});function d(t,e,n){for(var i=0;i<n;i++)t.push(e+i)}function f(t){var e=t.dimsDef;return e?e.length:1}return E(t,(function(t,e){var n=t.name,r=f(t);if(null==o){var a=p.valueWayDim;d(i[n],a,r),d(l,a,r),p.valueWayDim+=r}else if(o===e)d(i[n],0,r),d(s,0,r);else{a=p.categoryWayDim;d(i[n],a,r),d(l,a,r),p.categoryWayDim+=r}})),s.length&&(i.itemName=s),l.length&&(i.seriesName=l),i}function Hp(t,e,n){var i={};if(!Yp(t))return i;var r,o=e.sourceFormat,a=e.dimensionsDefine;o!==Pp&&o!==Op||E(a,(function(t,e){"name"===(q(t)?t.name:t)&&(r=e)}));var s=function(){for(var t={},i={},s=[],l=0,u=Math.min(5,n);l<u;l++){var h=Xp(e.data,o,e.seriesLayoutBy,a,e.startIndex,l);s.push(h);var c=h===Fp;if(c&&null==t.v&&l!==r&&(t.v=l),(null==t.n||t.n===t.v||!c&&s[t.n]===Fp)&&(t.n=l),p(t)&&s[t.n]!==Fp)return t;c||(h===Bp&&null==i.v&&l!==r&&(i.v=l),null!=i.n&&i.n!==i.v||(i.n=l))}function p(t){return null!=t.v&&null!=t.n}return p(t)?t:p(i)?i:null}();if(s){i.value=[s.v];var l=null!=r?r:s.n;i.itemName=[l],i.seriesName=[l]}return i}function Yp(t){if(!t.get("data",!0))return Ao(t.ecModel,"dataset",{index:t.get("datasetIndex",!0),id:t.get("datasetId",!0)},Co).models[0]}function Up(t,e){return Xp(t.data,t.sourceFormat,t.seriesLayoutBy,t.dimensionsDefine,t.startIndex,e)}function Xp(t,e,n,i,r,o){var a,s,l;if($(t))return Fp;if(i){var u=i[o];q(u)?(s=u.name,l=u.type):X(u)&&(s=u)}if(null!=l)return"ordinal"===l?Vp:Fp;if(e===Lp){var h=t;if(n===zp){for(var c=h[o],p=0;p<(c||[]).length&&p<5;p++)if(null!=(a=m(c[r+p])))return a}else for(p=0;p<h.length&&p<5;p++){var d=h[r+p];if(d&&null!=(a=m(d[o])))return a}}else if(e===Pp){var f=t;if(!s)return Fp;for(p=0;p<f.length&&p<5;p++){if((y=f[p])&&null!=(a=m(y[s])))return a}}else if(e===Op){if(!s)return Fp;if(!(c=t[s])||$(c))return Fp;for(p=0;p<c.length&&p<5;p++)if(null!=(a=m(c[p])))return a}else if(e===kp){var g=t;for(p=0;p<g.length&&p<5;p++){var y,v=fo(y=g[p]);if(!Y(v))return Fp;if(null!=(a=m(v[o])))return a}}function m(t){var e=X(t);return null!=t&&isFinite(t)&&""!==t?e?Bp:Fp:e&&"-"!==t?Vp:void 0}return Fp}var Zp=ft();var jp,qp,Kp,$p=So(),Jp=So(),Qp=function(){function t(){}return t.prototype.getColorFromPalette=function(t,e,n){var i=ho(this.get("color",!0)),r=this.get("colorLayer",!0);return ed(this,$p,i,r,t,e,n)},t.prototype.clearColorPalette=function(){!function(t,e){e(t).paletteIdx=0,e(t).paletteNameMap={}}(this,$p)},t}();function td(t,e,n,i){var r=ho(t.get(["aria","decal","decals"]));return ed(t,Jp,r,null,e,n,i)}function ed(t,e,n,i,r,o,a){var s=e(o=o||t),l=s.paletteIdx||0,u=s.paletteNameMap=s.paletteNameMap||{};if(u.hasOwnProperty(r))return u[r];var h=null!=a&&i?function(t,e){for(var n=t.length,i=0;i<n;i++)if(t[i].length>e)return t[i];return t[n-1]}(i,a):n;if((h=h||n)&&h.length){var c=h[l];return r&&(u[r]=c),s.paletteIdx=(l+1)%h.length,c}}var nd=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.init=function(t,e,n,i,r,o){i=i||{},this.option=null,this._theme=new pc(i),this._locale=new pc(r),this._optionManager=o},e.prototype.setOption=function(t,e,n){var i=od(e);this._optionManager.setOption(t,n,i),this._resetOption(null,i)},e.prototype.resetOption=function(t,e){return this._resetOption(t,od(e))},e.prototype._resetOption=function(t,e){var n=!1,i=this._optionManager;if(!t||"recreate"===t){var r=i.mountOption("recreate"===t);0,this.option&&"recreate"!==t?(this.restoreData(),this._mergeOption(r,e)):Kp(this,r),n=!0}if("timeline"!==t&&"media"!==t||this.restoreData(),!t||"recreate"===t||"timeline"===t){var o=i.getTimelineOption(this);o&&(n=!0,this._mergeOption(o,e))}if(!t||"recreate"===t||"media"===t){var a=i.getMediaOption(this);a.length&&E(a,(function(t){n=!0,this._mergeOption(t,e)}),this)}return n},e.prototype.mergeOption=function(t){this._mergeOption(t,null)},e.prototype._mergeOption=function(t,e){var n=this.option,i=this._componentsMap,r=this._componentsCount,o=[],a=ft(),s=e&&e.replaceMergeMainTypeMap;Gp(this).datasetMap=ft(),E(t,(function(t,e){null!=t&&(Ip.hasClass(e)?e&&(o.push(e),a.set(e,!0)):n[e]=null==n[e]?T(t):C(n[e],t,!0))})),s&&s.each((function(t,e){Ip.hasClass(e)&&!a.get(e)&&(o.push(e),a.set(e,!0))})),Ip.topologicalTravel(o,Ip.getAllClassMainTypes(),(function(e){var o=function(t,e,n){var i=Zp.get(e);if(!i)return n;var r=i(t);return r?n.concat(r):n}(this,e,ho(t[e])),a=i.get(e),l=a?s&&s.get(e)?"replaceMerge":"normalMerge":"replaceAll",u=yo(a,o,l);(function(t,e,n){E(t,(function(t){var i=t.newOption;q(i)&&(t.keyInfo.mainType=e,t.keyInfo.subType=function(t,e,n,i){return e.type?e.type:n?n.subType:i.determineSubType(t,e)}(e,i,t.existing,n))}))})(u,e,Ip),n[e]=null,i.set(e,null),r.set(e,0);var h,c=[],p=[],d=0;E(u,(function(t,n){var i=t.existing,r=t.newOption;if(r){var o="series"===e,a=Ip.getClass(e,t.keyInfo.subType,!o);if(!a)return;if("tooltip"===e){if(h)return void 0;h=!0}if(i&&i.constructor===a)i.name=t.keyInfo.name,i.mergeOption(r,this),i.optionUpdated(r,!1);else{var s=A({componentIndex:n},t.keyInfo);A(i=new a(r,this,this,s),s),t.brandNew&&(i.__requireNewView=!0),i.init(r,this,this),i.optionUpdated(null,!0)}}else i&&(i.mergeOption({},this),i.optionUpdated({},!1));i?(c.push(i.option),p.push(i),d++):(c.push(void 0),p.push(void 0))}),this),n[e]=c,i.set(e,p),r.set(e,d),"series"===e&&jp(this)}),this),this._seriesIndices||jp(this)},e.prototype.getOption=function(){var t=T(this.option);return E(t,(function(e,n){if(Ip.hasClass(n)){for(var i=ho(e),r=i.length,o=!1,a=r-1;a>=0;a--)i[a]&&!bo(i[a])?o=!0:(i[a]=null,!o&&r--);i.length=r,t[n]=i}})),delete t["\0_ec_inner"],t},e.prototype.getTheme=function(){return this._theme},e.prototype.getLocaleModel=function(){return this._locale},e.prototype.setUpdatePayload=function(t){this._payload=t},e.prototype.getUpdatePayload=function(){return this._payload},e.prototype.getComponent=function(t,e){var n=this._componentsMap.get(t);if(n){var i=n[e||0];if(i)return i;if(null==e)for(var r=0;r<n.length;r++)if(n[r])return n[r]}},e.prototype.queryComponents=function(t){var e=t.mainType;if(!e)return[];var n,i=t.index,r=t.id,o=t.name,a=this._componentsMap.get(e);return a&&a.length?(null!=i?(n=[],E(ho(i),(function(t){a[t]&&n.push(a[t])}))):n=null!=r?id("id",r,a):null!=o?id("name",o,a):B(a,(function(t){return!!t})),rd(n,t)):[]},e.prototype.findComponents=function(t){var e,n,i,r,o,a=t.query,s=t.mainType,l=(n=s+"Index",i=s+"Id",r=s+"Name",!(e=a)||null==e[n]&&null==e[i]&&null==e[r]?null:{mainType:s,index:e[n],id:e[i],name:e[r]}),u=l?this.queryComponents(l):B(this._componentsMap.get(s),(function(t){return!!t}));return o=rd(u,t),t.filter?B(o,t.filter):o},e.prototype.eachComponent=function(t,e,n){var i=this._componentsMap;if(U(t)){var r=e,o=t;i.each((function(t,e){for(var n=0;t&&n<t.length;n++){var i=t[n];i&&o.call(r,e,i,i.componentIndex)}}))}else for(var a=X(t)?i.get(t):q(t)?this.findComponents(t):null,s=0;a&&s<a.length;s++){var l=a[s];l&&e.call(n,l,l.componentIndex)}},e.prototype.getSeriesByName=function(t){var e=xo(t,null);return B(this._componentsMap.get("series"),(function(t){return!!t&&null!=e&&t.name===e}))},e.prototype.getSeriesByIndex=function(t){return this._componentsMap.get("series")[t]},e.prototype.getSeriesByType=function(t){return B(this._componentsMap.get("series"),(function(e){return!!e&&e.subType===t}))},e.prototype.getSeries=function(){return B(this._componentsMap.get("series"),(function(t){return!!t}))},e.prototype.getSeriesCount=function(){return this._componentsCount.get("series")},e.prototype.eachSeries=function(t,e){qp(this),E(this._seriesIndices,(function(n){var i=this._componentsMap.get("series")[n];t.call(e,i,n)}),this)},e.prototype.eachRawSeries=function(t,e){E(this._componentsMap.get("series"),(function(n){n&&t.call(e,n,n.componentIndex)}))},e.prototype.eachSeriesByType=function(t,e,n){qp(this),E(this._seriesIndices,(function(i){var r=this._componentsMap.get("series")[i];r.subType===t&&e.call(n,r,i)}),this)},e.prototype.eachRawSeriesByType=function(t,e,n){return E(this.getSeriesByType(t),e,n)},e.prototype.isSeriesFiltered=function(t){return qp(this),null==this._seriesIndicesMap.get(t.componentIndex)},e.prototype.getCurrentSeriesIndices=function(){return(this._seriesIndices||[]).slice()},e.prototype.filterSeries=function(t,e){qp(this);var n=[];E(this._seriesIndices,(function(i){var r=this._componentsMap.get("series")[i];t.call(e,r,i)&&n.push(i)}),this),this._seriesIndices=n,this._seriesIndicesMap=ft(n)},e.prototype.restoreData=function(t){jp(this);var e=this._componentsMap,n=[];e.each((function(t,e){Ip.hasClass(e)&&n.push(e)})),Ip.topologicalTravel(n,Ip.getAllClassMainTypes(),(function(n){E(e.get(n),(function(e){!e||"series"===n&&function(t,e){if(e){var n=e.seriesIndex,i=e.seriesId,r=e.seriesName;return null!=n&&t.componentIndex!==n||null!=i&&t.id!==i||null!=r&&t.name!==r}}(e,t)||e.restoreData()}))}))},e.internalField=(jp=function(t){var e=t._seriesIndices=[];E(t._componentsMap.get("series"),(function(t){t&&e.push(t.componentIndex)})),t._seriesIndicesMap=ft(e)},qp=function(t){},void(Kp=function(t,e){t.option={},t.option["\0_ec_inner"]=1,t._componentsMap=ft({series:[]}),t._componentsCount=ft();var n=e.aria;q(n)&&null==n.enabled&&(n.enabled=!0),function(t,e){var n=t.color&&!t.colorLayer;E(e,(function(e,i){"colorLayer"===i&&n||Ip.hasClass(i)||("object"==typeof e?t[i]=t[i]?C(t[i],e,!1):T(e):null==t[i]&&(t[i]=e))}))}(e,t._theme.option),C(e,Dp,!1),t._mergeOption(e,null)})),e}(pc);function id(t,e,n){if(Y(e)){var i=ft();return E(e,(function(t){null!=t&&(null!=xo(t,null)&&i.set(t,!0))})),B(n,(function(e){return e&&i.get(e[t])}))}var r=xo(e,null);return B(n,(function(e){return e&&null!=r&&e[t]===r}))}function rd(t,e){return e.hasOwnProperty("subType")?B(t,(function(t){return t&&t.subType===e.subType})):t}function od(t){var e=ft();return t&&E(ho(t.replaceMerge),(function(t){e.set(t,!0)})),{replaceMergeMainTypeMap:e}}R(nd,Qp);var ad=["getDom","getZr","getWidth","getHeight","getDevicePixelRatio","dispatchAction","isSSR","isDisposed","on","off","getDataURL","getConnectedDataURL","getOption","getId","updateLabelLayout"],sd=function(t){E(ad,(function(e){this[e]=W(t[e],t)}),this)},ld={},ud=function(){function t(){this._coordinateSystems=[]}return t.prototype.create=function(t,e){var n=[];E(ld,(function(i,r){var o=i.create(t,e);n=n.concat(o||[])})),this._coordinateSystems=n},t.prototype.update=function(t,e){E(this._coordinateSystems,(function(n){n.update&&n.update(t,e)}))},t.prototype.getCoordinateSystems=function(){return this._coordinateSystems.slice()},t.register=function(t,e){ld[t]=e},t.get=function(t){return ld[t]},t}(),hd=/^(min|max)?(.+)$/,cd=function(){function t(t){this._timelineOptions=[],this._mediaList=[],this._currentMediaIndices=[],this._api=t}return t.prototype.setOption=function(t,e,n){t&&(E(ho(t.series),(function(t){t&&t.data&&$(t.data)&&ct(t.data)})),E(ho(t.dataset),(function(t){t&&t.source&&$(t.source)&&ct(t.source)}))),t=T(t);var i=this._optionBackup,r=function(t,e,n){var i,r,o=[],a=t.baseOption,s=t.timeline,l=t.options,u=t.media,h=!!t.media,c=!!(l||s||a&&a.timeline);a?(r=a).timeline||(r.timeline=s):((c||h)&&(t.options=t.media=null),r=t);h&&Y(u)&&E(u,(function(t){t&&t.option&&(t.query?o.push(t):i||(i=t))}));function p(t){E(e,(function(e){e(t,n)}))}return p(r),E(l,(function(t){return p(t)})),E(o,(function(t){return p(t.option)})),{baseOption:r,timelineOptions:l||[],mediaDefault:i,mediaList:o}}(t,e,!i);this._newBaseOption=r.baseOption,i?(r.timelineOptions.length&&(i.timelineOptions=r.timelineOptions),r.mediaList.length&&(i.mediaList=r.mediaList),r.mediaDefault&&(i.mediaDefault=r.mediaDefault)):this._optionBackup=r},t.prototype.mountOption=function(t){var e=this._optionBackup;return this._timelineOptions=e.timelineOptions,this._mediaList=e.mediaList,this._mediaDefault=e.mediaDefault,this._currentMediaIndices=[],T(t?e.baseOption:this._newBaseOption)},t.prototype.getTimelineOption=function(t){var e,n=this._timelineOptions;if(n.length){var i=t.getComponent("timeline");i&&(e=T(n[i.getCurrentIndex()]))}return e},t.prototype.getMediaOption=function(t){var e,n,i=this._api.getWidth(),r=this._api.getHeight(),o=this._mediaList,a=this._mediaDefault,s=[],l=[];if(!o.length&&!a)return l;for(var u=0,h=o.length;u<h;u++)pd(o[u].query,i,r)&&s.push(u);return!s.length&&a&&(s=[-1]),s.length&&(e=s,n=this._currentMediaIndices,e.join(",")!==n.join(","))&&(l=z(s,(function(t){return T(-1===t?a.option:o[t].option)}))),this._currentMediaIndices=s,l},t}();function pd(t,e,n){var i={width:e,height:n,aspectratio:e/n},r=!0;return E(t,(function(t,e){var n=e.match(hd);if(n&&n[1]&&n[2]){var o=n[1],a=n[2].toLowerCase();(function(t,e,n){return"min"===n?t>=e:"max"===n?t<=e:t===e})(i[a],t,o)||(r=!1)}})),r}var dd=E,fd=q,gd=["areaStyle","lineStyle","nodeStyle","linkStyle","chordStyle","label","labelLine"];function yd(t){var e=t&&t.itemStyle;if(e)for(var n=0,i=gd.length;n<i;n++){var r=gd[n],o=e.normal,a=e.emphasis;o&&o[r]&&(t[r]=t[r]||{},t[r].normal?C(t[r].normal,o[r]):t[r].normal=o[r],o[r]=null),a&&a[r]&&(t[r]=t[r]||{},t[r].emphasis?C(t[r].emphasis,a[r]):t[r].emphasis=a[r],a[r]=null)}}function vd(t,e,n){if(t&&t[e]&&(t[e].normal||t[e].emphasis)){var i=t[e].normal,r=t[e].emphasis;i&&(n?(t[e].normal=t[e].emphasis=null,k(t[e],i)):t[e]=i),r&&(t.emphasis=t.emphasis||{},t.emphasis[e]=r,r.focus&&(t.emphasis.focus=r.focus),r.blurScope&&(t.emphasis.blurScope=r.blurScope))}}function md(t){vd(t,"itemStyle"),vd(t,"lineStyle"),vd(t,"areaStyle"),vd(t,"label"),vd(t,"labelLine"),vd(t,"upperLabel"),vd(t,"edgeLabel")}function xd(t,e){var n=fd(t)&&t[e],i=fd(n)&&n.textStyle;if(i){0;for(var r=0,o=po.length;r<o;r++){var a=po[r];i.hasOwnProperty(a)&&(n[a]=i[a])}}}function _d(t){t&&(md(t),xd(t,"label"),t.emphasis&&xd(t.emphasis,"label"))}function bd(t){return Y(t)?t:t?[t]:[]}function wd(t){return(Y(t)?t[0]:t)||{}}function Sd(t,e){dd(bd(t.series),(function(t){fd(t)&&function(t){if(fd(t)){yd(t),md(t),xd(t,"label"),xd(t,"upperLabel"),xd(t,"edgeLabel"),t.emphasis&&(xd(t.emphasis,"label"),xd(t.emphasis,"upperLabel"),xd(t.emphasis,"edgeLabel"));var e=t.markPoint;e&&(yd(e),_d(e));var n=t.markLine;n&&(yd(n),_d(n));var i=t.markArea;i&&_d(i);var r=t.data;if("graph"===t.type){r=r||t.nodes;var o=t.links||t.edges;if(o&&!$(o))for(var a=0;a<o.length;a++)_d(o[a]);E(t.categories,(function(t){md(t)}))}if(r&&!$(r))for(a=0;a<r.length;a++)_d(r[a]);if((e=t.markPoint)&&e.data){var s=e.data;for(a=0;a<s.length;a++)_d(s[a])}if((n=t.markLine)&&n.data){var l=n.data;for(a=0;a<l.length;a++)Y(l[a])?(_d(l[a][0]),_d(l[a][1])):_d(l[a])}"gauge"===t.type?(xd(t,"axisLabel"),xd(t,"title"),xd(t,"detail")):"treemap"===t.type?(vd(t.breadcrumb,"itemStyle"),E(t.levels,(function(t){md(t)}))):"tree"===t.type&&md(t.leaves)}}(t)}));var n=["xAxis","yAxis","radiusAxis","angleAxis","singleAxis","parallelAxis","radar"];e&&n.push("valueAxis","categoryAxis","logAxis","timeAxis"),dd(n,(function(e){dd(bd(t[e]),(function(t){t&&(xd(t,"axisLabel"),xd(t.axisPointer,"label"))}))})),dd(bd(t.parallel),(function(t){var e=t&&t.parallelAxisDefault;xd(e,"axisLabel"),xd(e&&e.axisPointer,"label")})),dd(bd(t.calendar),(function(t){vd(t,"itemStyle"),xd(t,"dayLabel"),xd(t,"monthLabel"),xd(t,"yearLabel")})),dd(bd(t.radar),(function(t){xd(t,"name"),t.name&&null==t.axisName&&(t.axisName=t.name,delete t.name),null!=t.nameGap&&null==t.axisNameGap&&(t.axisNameGap=t.nameGap,delete t.nameGap)})),dd(bd(t.geo),(function(t){fd(t)&&(_d(t),dd(bd(t.regions),(function(t){_d(t)})))})),dd(bd(t.timeline),(function(t){_d(t),vd(t,"label"),vd(t,"itemStyle"),vd(t,"controlStyle",!0);var e=t.data;Y(e)&&E(e,(function(t){q(t)&&(vd(t,"label"),vd(t,"itemStyle"))}))})),dd(bd(t.toolbox),(function(t){vd(t,"iconStyle"),dd(t.feature,(function(t){vd(t,"iconStyle")}))})),xd(wd(t.axisPointer),"label"),xd(wd(t.tooltip).axisPointer,"label")}function Md(t){t&&E(Id,(function(e){e[0]in t&&!(e[1]in t)&&(t[e[1]]=t[e[0]])}))}var Id=[["x","left"],["y","top"],["x2","right"],["y2","bottom"]],Td=["grid","geo","parallel","legend","toolbox","title","visualMap","dataZoom","timeline"],Cd=[["borderRadius","barBorderRadius"],["borderColor","barBorderColor"],["borderWidth","barBorderWidth"]];function Dd(t){var e=t&&t.itemStyle;if(e)for(var n=0;n<Cd.length;n++){var i=Cd[n][1],r=Cd[n][0];null!=e[i]&&(e[r]=e[i])}}function Ad(t){t&&"edge"===t.alignTo&&null!=t.margin&&null==t.edgeDistance&&(t.edgeDistance=t.margin)}function kd(t){t&&t.downplay&&!t.blur&&(t.blur=t.downplay)}function Ld(t,e){if(t)for(var n=0;n<t.length;n++)e(t[n]),t[n]&&Ld(t[n].children,e)}function Pd(t,e){Sd(t,e),t.series=ho(t.series),E(t.series,(function(t){if(q(t)){var e=t.type;if("line"===e)null!=t.clipOverflow&&(t.clip=t.clipOverflow);else if("pie"===e||"gauge"===e){if(null!=t.clockWise&&(t.clockwise=t.clockWise),Ad(t.label),(r=t.data)&&!$(r))for(var n=0;n<r.length;n++)Ad(r[n]);null!=t.hoverOffset&&(t.emphasis=t.emphasis||{},(t.emphasis.scaleSize=null)&&(t.emphasis.scaleSize=t.hoverOffset))}else if("gauge"===e){var i=function(t,e){for(var n=e.split(","),i=t,r=0;r<n.length&&null!=(i=i&&i[n[r]]);r++);return i}(t,"pointer.color");null!=i&&function(t,e,n,i){for(var r,o=e.split(","),a=t,s=0;s<o.length-1;s++)null==a[r=o[s]]&&(a[r]={}),a=a[r];(i||null==a[o[s]])&&(a[o[s]]=n)}(t,"itemStyle.color",i)}else if("bar"===e){var r;if(Dd(t),Dd(t.backgroundStyle),Dd(t.emphasis),(r=t.data)&&!$(r))for(n=0;n<r.length;n++)"object"==typeof r[n]&&(Dd(r[n]),Dd(r[n]&&r[n].emphasis))}else if("sunburst"===e){var o=t.highlightPolicy;o&&(t.emphasis=t.emphasis||{},t.emphasis.focus||(t.emphasis.focus=o)),kd(t),Ld(t.data,kd)}else"graph"===e||"sankey"===e?function(t){t&&null!=t.focusNodeAdjacency&&(t.emphasis=t.emphasis||{},null==t.emphasis.focus&&(t.emphasis.focus="adjacency"))}(t):"map"===e&&(t.mapType&&!t.map&&(t.map=t.mapType),t.mapLocation&&k(t,t.mapLocation));null!=t.hoverAnimation&&(t.emphasis=t.emphasis||{},t.emphasis&&null==t.emphasis.scale&&(t.emphasis.scale=t.hoverAnimation)),Md(t)}})),t.dataRange&&(t.visualMap=t.dataRange),E(Td,(function(e){var n=t[e];n&&(Y(n)||(n=[n]),E(n,(function(t){Md(t)})))}))}function Od(t){E(t,(function(e,n){var i=[],r=[NaN,NaN],o=[e.stackResultDimension,e.stackedOverDimension],a=e.data,s=e.isStackedByIndex;a.modify(o,(function(o,l,u){var h,c,p=a.get(e.stackedDimension,u);if(isNaN(p))return r;s?c=a.getRawIndex(u):h=a.get(e.stackedByDimension,u);for(var d=NaN,f=n-1;f>=0;f--){var g=t[f];if(s||(c=g.data.rawIndexOf(g.stackedByDimension,h)),c>=0){var y=g.data.getByRawIndex(g.stackResultDimension,c);if(p>=0&&y>0||p<=0&&y<0){p=Hr(p,y),d=y;break}}}return i[0]=p,i[1]=d,i}))}))}var Rd,Nd,Ed,zd,Vd,Bd=function(t){this.data=t.data||(t.sourceFormat===Op?{}:[]),this.sourceFormat=t.sourceFormat||Np,this.seriesLayoutBy=t.seriesLayoutBy||Ep,this.startIndex=t.startIndex||0,this.dimensionsDetectedCount=t.dimensionsDetectedCount,this.metaRawOption=t.metaRawOption;var e=this.dimensionsDefine=t.dimensionsDefine;if(e)for(var n=0;n<e.length;n++){var i=e[n];null==i.type&&Up(this,n)===Vp&&(i.type="ordinal")}};function Fd(t){return t instanceof Bd}function Gd(t,e,n){n=n||Hd(t);var i=e.seriesLayoutBy,r=function(t,e,n,i,r){var o,a;if(!t)return{dimensionsDefine:Yd(r),startIndex:a,dimensionsDetectedCount:o};if(e===Lp){var s=t;"auto"===i||null==i?Ud((function(t){null!=t&&"-"!==t&&(X(t)?null==a&&(a=1):a=0)}),n,s,10):a=j(i)?i:i?1:0,r||1!==a||(r=[],Ud((function(t,e){r[e]=null!=t?t+"":""}),n,s,1/0)),o=r?r.length:n===zp?s.length:s[0]?s[0].length:null}else if(e===Pp)r||(r=function(t){var e,n=0;for(;n<t.length&&!(e=t[n++]););if(e){var i=[];return E(e,(function(t,e){i.push(e)})),i}}(t));else if(e===Op)r||(r=[],E(t,(function(t,e){r.push(e)})));else if(e===kp){var l=fo(t[0]);o=Y(l)&&l.length||1}return{startIndex:a,dimensionsDefine:Yd(r),dimensionsDetectedCount:o}}(t,n,i,e.sourceHeader,e.dimensions);return new Bd({data:t,sourceFormat:n,seriesLayoutBy:i,dimensionsDefine:r.dimensionsDefine,startIndex:r.startIndex,dimensionsDetectedCount:r.dimensionsDetectedCount,metaRawOption:T(e)})}function Wd(t){return new Bd({data:t,sourceFormat:$(t)?Rp:kp})}function Hd(t){var e=Np;if($(t))e=Rp;else if(Y(t)){0===t.length&&(e=Lp);for(var n=0,i=t.length;n<i;n++){var r=t[n];if(null!=r){if(Y(r)){e=Lp;break}if(q(r)){e=Pp;break}}}}else if(q(t))for(var o in t)if(mt(t,o)&&N(t[o])){e=Op;break}return e}function Yd(t){if(t){var e=ft();return z(t,(function(t,n){var i={name:(t=q(t)?t:{name:t}).name,displayName:t.displayName,type:t.type};if(null==i.name)return i;i.name+="",null==i.displayName&&(i.displayName=i.name);var r=e.get(i.name);return r?i.name+="-"+r.count++:e.set(i.name,{count:1}),i}))}}function Ud(t,e,n,i){if(e===zp)for(var r=0;r<n.length&&r<i;r++)t(n[r]?n[r][0]:null,r);else{var o=n[0]||[];for(r=0;r<o.length&&r<i;r++)t(o[r],r)}}function Xd(t){var e=t.sourceFormat;return e===Pp||e===Op}var Zd=function(){function t(t,e){var n=Fd(t)?t:Wd(t);this._source=n;var i=this._data=n.data;n.sourceFormat===Rp&&(this._offset=0,this._dimSize=e,this._data=i),Vd(this,i,n)}return t.prototype.getSource=function(){return this._source},t.prototype.count=function(){return 0},t.prototype.getItem=function(t,e){},t.prototype.appendData=function(t){},t.prototype.clean=function(){},t.protoInitialize=function(){var e=t.prototype;e.pure=!1,e.persistent=!0}(),t.internalField=function(){var t;Vd=function(t,r,o){var a=o.sourceFormat,s=o.seriesLayoutBy,l=o.startIndex,u=o.dimensionsDefine,h=zd[rf(a,s)];if(A(t,h),a===Rp)t.getItem=e,t.count=i,t.fillStorage=n;else{var c=Kd(a,s);t.getItem=W(c,null,r,l,u);var p=Qd(a,s);t.count=W(p,null,r,l,u)}};var e=function(t,e){t-=this._offset,e=e||[];for(var n=this._data,i=this._dimSize,r=i*t,o=0;o<i;o++)e[o]=n[r+o];return e},n=function(t,e,n,i){for(var r=this._data,o=this._dimSize,a=0;a<o;a++){for(var s=i[a],l=null==s[0]?1/0:s[0],u=null==s[1]?-1/0:s[1],h=e-t,c=n[a],p=0;p<h;p++){var d=r[p*o+a];c[t+p]=d,d<l&&(l=d),d>u&&(u=d)}s[0]=l,s[1]=u}},i=function(){return this._data?this._data.length/this._dimSize:0};function r(t){for(var e=0;e<t.length;e++)this._data.push(t[e])}(t={}).arrayRows_column={pure:!0,appendData:r},t.arrayRows_row={pure:!0,appendData:function(){throw new Error('Do not support appendData when set seriesLayoutBy: "row".')}},t.objectRows={pure:!0,appendData:r},t.keyedColumns={pure:!0,appendData:function(t){var e=this._data;E(t,(function(t,n){for(var i=e[n]||(e[n]=[]),r=0;r<(t||[]).length;r++)i.push(t[r])}))}},t.original={appendData:r},t.typedArray={persistent:!1,pure:!0,appendData:function(t){this._data=t},clean:function(){this._offset+=this.count(),this._data=null}},zd=t}(),t}(),jd=function(t,e,n,i){return t[i]},qd=((Rd={}).arrayRows_column=function(t,e,n,i){return t[i+e]},Rd.arrayRows_row=function(t,e,n,i,r){i+=e;for(var o=r||[],a=t,s=0;s<a.length;s++){var l=a[s];o[s]=l?l[i]:null}return o},Rd.objectRows=jd,Rd.keyedColumns=function(t,e,n,i,r){for(var o=r||[],a=0;a<n.length;a++){var s=n[a].name;0;var l=t[s];o[a]=l?l[i]:null}return o},Rd.original=jd,Rd);function Kd(t,e){var n=qd[rf(t,e)];return n}var $d=function(t,e,n){return t.length},Jd=((Nd={}).arrayRows_column=function(t,e,n){return Math.max(0,t.length-e)},Nd.arrayRows_row=function(t,e,n){var i=t[0];return i?Math.max(0,i.length-e):0},Nd.objectRows=$d,Nd.keyedColumns=function(t,e,n){var i=n[0].name;var r=t[i];return r?r.length:0},Nd.original=$d,Nd);function Qd(t,e){var n=Jd[rf(t,e)];return n}var tf=function(t,e,n){return t[e]},ef=((Ed={}).arrayRows=tf,Ed.objectRows=function(t,e,n){return t[n]},Ed.keyedColumns=tf,Ed.original=function(t,e,n){var i=fo(t);return i instanceof Array?i[e]:i},Ed.typedArray=tf,Ed);function nf(t){var e=ef[t];return e}function rf(t,e){return t===Lp?t+"_"+e:t}function of(t,e,n){if(t){var i=t.getRawDataItem(e);if(null!=i){var r=t.getStore(),o=r.getSource().sourceFormat;if(null!=n){var a=t.getDimensionIndex(n),s=r.getDimensionProperty(a);return nf(o)(i,a,s)}var l=i;return o===kp&&(l=fo(i)),l}}}var af=/\{@(.+?)\}/g,sf=function(){function t(){}return t.prototype.getDataParams=function(t,e){var n=this.getData(e),i=this.getRawValue(t,e),r=n.getRawIndex(t),o=n.getName(t),a=n.getRawDataItem(t),s=n.getItemVisual(t,"style"),l=s&&s[n.getItemVisual(t,"drawType")||"fill"],u=s&&s.stroke,h=this.mainType,c="series"===h,p=n.userOutput&&n.userOutput.get();return{componentType:h,componentSubType:this.subType,componentIndex:this.componentIndex,seriesType:c?this.subType:null,seriesIndex:this.seriesIndex,seriesId:c?this.id:null,seriesName:c?this.name:null,name:o,dataIndex:r,data:a,dataType:e,value:i,color:l,borderColor:u,dimensionNames:p?p.fullDimensions:null,encode:p?p.encode:null,$vars:["seriesName","name","value"]}},t.prototype.getFormattedLabel=function(t,e,n,i,r,o){e=e||"normal";var a=this.getData(n),s=this.getDataParams(t,n);(o&&(s.value=o.interpolatedValue),null!=i&&Y(s.value)&&(s.value=s.value[i]),r)||(r=a.getItemModel(t).get("normal"===e?["label","formatter"]:[e,"label","formatter"]));return U(r)?(s.status=e,s.dimensionIndex=i,r(s)):X(r)?up(r,s).replace(af,(function(e,n){var i=n.length,r=n;"["===r.charAt(0)&&"]"===r.charAt(i-1)&&(r=+r.slice(1,i-1));var s=of(a,t,r);if(o&&Y(o.interpolatedValue)){var l=a.getDimensionIndex(r);l>=0&&(s=o.interpolatedValue[l])}return null!=s?s+"":""})):void 0},t.prototype.getRawValue=function(t,e){return of(this.getData(e),t)},t.prototype.formatTooltip=function(t,e,n){},t}();function lf(t){var e,n;return q(t)?t.type&&(n=t):e=t,{text:e,frag:n}}function uf(t){return new hf(t)}var hf=function(){function t(t){t=t||{},this._reset=t.reset,this._plan=t.plan,this._count=t.count,this._onDirty=t.onDirty,this._dirty=!0}return t.prototype.perform=function(t){var e,n=this._upstream,i=t&&t.skip;if(this._dirty&&n){var r=this.context;r.data=r.outputData=n.context.outputData}this.__pipeline&&(this.__pipeline.currentTask=this),this._plan&&!i&&(e=this._plan(this.context));var o,a=h(this._modBy),s=this._modDataCount||0,l=h(t&&t.modBy),u=t&&t.modDataCount||0;function h(t){return!(t>=1)&&(t=1),t}a===l&&s===u||(e="reset"),(this._dirty||"reset"===e)&&(this._dirty=!1,o=this._doReset(i)),this._modBy=l,this._modDataCount=u;var c=t&&t.step;if(this._dueEnd=n?n._outputDueEnd:this._count?this._count(this.context):1/0,this._progress){var p=this._dueIndex,d=Math.min(null!=c?this._dueIndex+c:1/0,this._dueEnd);if(!i&&(o||p<d)){var f=this._progress;if(Y(f))for(var g=0;g<f.length;g++)this._doProgress(f[g],p,d,l,u);else this._doProgress(f,p,d,l,u)}this._dueIndex=d;var y=null!=this._settedOutputEnd?this._settedOutputEnd:d;0,this._outputDueEnd=y}else this._dueIndex=this._outputDueEnd=null!=this._settedOutputEnd?this._settedOutputEnd:this._dueEnd;return this.unfinished()},t.prototype.dirty=function(){this._dirty=!0,this._onDirty&&this._onDirty(this.context)},t.prototype._doProgress=function(t,e,n,i,r){cf.reset(e,n,i,r),this._callingProgress=t,this._callingProgress({start:e,end:n,count:n-e,next:cf.next},this.context)},t.prototype._doReset=function(t){var e,n;this._dueIndex=this._outputDueEnd=this._dueEnd=0,this._settedOutputEnd=null,!t&&this._reset&&((e=this._reset(this.context))&&e.progress&&(n=e.forceFirstProgress,e=e.progress),Y(e)&&!e.length&&(e=null)),this._progress=e,this._modBy=this._modDataCount=null;var i=this._downstream;return i&&i.dirty(),n},t.prototype.unfinished=function(){return this._progress&&this._dueIndex<this._dueEnd},t.prototype.pipe=function(t){(this._downstream!==t||this._dirty)&&(this._downstream=t,t._upstream=this,t.dirty())},t.prototype.dispose=function(){this._disposed||(this._upstream&&(this._upstream._downstream=null),this._downstream&&(this._downstream._upstream=null),this._dirty=!1,this._disposed=!0)},t.prototype.getUpstream=function(){return this._upstream},t.prototype.getDownstream=function(){return this._downstream},t.prototype.setOutputEnd=function(t){this._outputDueEnd=this._settedOutputEnd=t},t}(),cf=function(){var t,e,n,i,r,o={reset:function(l,u,h,c){e=l,t=u,n=h,i=c,r=Math.ceil(i/n),o.next=n>1&&i>0?s:a}};return o;function a(){return e<t?e++:null}function s(){var o=e%r*n+Math.ceil(e/r),a=e>=t?null:o<i?o:e;return e++,a}}();function pf(t,e){var n=e&&e.type;return"ordinal"===n?t:("time"!==n||j(t)||null==t||"-"===t||(t=+jr(t)),null==t||""===t?NaN:+t)}var df=ft({number:function(t){return parseFloat(t)},time:function(t){return+jr(t)},trim:function(t){return X(t)?ut(t):t}});function ff(t){return df.get(t)}var gf={lt:function(t,e){return t<e},lte:function(t,e){return t<=e},gt:function(t,e){return t>e},gte:function(t,e){return t>=e}},yf=function(){function t(t,e){if(!j(e)){var n="";0,ao(n)}this._opFn=gf[t],this._rvalFloat=to(e)}return t.prototype.evaluate=function(t){return j(t)?this._opFn(t,this._rvalFloat):this._opFn(to(t),this._rvalFloat)},t}(),vf=function(){function t(t,e){var n="desc"===t;this._resultLT=n?1:-1,null==e&&(e=n?"min":"max"),this._incomparable="min"===e?-1/0:1/0}return t.prototype.evaluate=function(t,e){var n=j(t)?t:to(t),i=j(e)?e:to(e),r=isNaN(n),o=isNaN(i);if(r&&(n=this._incomparable),o&&(i=this._incomparable),r&&o){var a=X(t),s=X(e);a&&(n=s?t:0),s&&(i=a?e:0)}return n<i?this._resultLT:n>i?-this._resultLT:0},t}(),mf=function(){function t(t,e){this._rval=e,this._isEQ=t,this._rvalTypeof=typeof e,this._rvalFloat=to(e)}return t.prototype.evaluate=function(t){var e=t===this._rval;if(!e){var n=typeof t;n===this._rvalTypeof||"number"!==n&&"number"!==this._rvalTypeof||(e=to(t)===this._rvalFloat)}return this._isEQ?e:!e},t}();function xf(t,e){return"eq"===t||"ne"===t?new mf("eq"===t,e):mt(gf,t)?new yf(t,e):null}var _f=function(){function t(){}return t.prototype.getRawData=function(){throw new Error("not supported")},t.prototype.getRawDataItem=function(t){throw new Error("not supported")},t.prototype.cloneRawData=function(){},t.prototype.getDimensionInfo=function(t){},t.prototype.cloneAllDimensionInfo=function(){},t.prototype.count=function(){},t.prototype.retrieveValue=function(t,e){},t.prototype.retrieveValueFromItem=function(t,e){},t.prototype.convertValue=function(t,e){return pf(t,e)},t}();function bf(t){var e=t.sourceFormat;if(!Cf(e)){var n="";0,ao(n)}return t.data}function wf(t){var e=t.sourceFormat,n=t.data;if(!Cf(e)){var i="";0,ao(i)}if(e===Lp){for(var r=[],o=0,a=n.length;o<a;o++)r.push(n[o].slice());return r}if(e===Pp){for(r=[],o=0,a=n.length;o<a;o++)r.push(A({},n[o]));return r}}function Sf(t,e,n){if(null!=n)return j(n)||!isNaN(n)&&!mt(e,n)?t[n]:mt(e,n)?e[n]:void 0}function Mf(t){return T(t)}var If=ft();function Tf(t,e,n,i){var r="";e.length||ao(r),q(t)||ao(r);var o=t.type,a=If.get(o);a||ao(r);var s=z(e,(function(t){return function(t,e){var n=new _f,i=t.data,r=n.sourceFormat=t.sourceFormat,o=t.startIndex,a="";t.seriesLayoutBy!==Ep&&ao(a);var s=[],l={},u=t.dimensionsDefine;if(u)E(u,(function(t,e){var n=t.name,i={index:e,name:n,displayName:t.displayName};if(s.push(i),null!=n){var r="";mt(l,n)&&ao(r),l[n]=i}}));else for(var h=0;h<t.dimensionsDetectedCount;h++)s.push({index:h});var c=Kd(r,Ep);e.__isBuiltIn&&(n.getRawDataItem=function(t){return c(i,o,s,t)},n.getRawData=W(bf,null,t)),n.cloneRawData=W(wf,null,t);var p=Qd(r,Ep);n.count=W(p,null,i,o,s);var d=nf(r);n.retrieveValue=function(t,e){var n=c(i,o,s,t);return f(n,e)};var f=n.retrieveValueFromItem=function(t,e){if(null!=t){var n=s[e];return n?d(t,e,n.name):void 0}};return n.getDimensionInfo=W(Sf,null,s,l),n.cloneAllDimensionInfo=W(Mf,null,s),n}(t,a)})),l=ho(a.transform({upstream:s[0],upstreamList:s,config:T(t.config)}));return z(l,(function(t,n){var i,r="";q(t)||ao(r),t.data||ao(r),Cf(Hd(t.data))||ao(r);var o=e[0];if(o&&0===n&&!t.dimensions){var a=o.startIndex;a&&(t.data=o.data.slice(0,a).concat(t.data)),i={seriesLayoutBy:Ep,sourceHeader:a,dimensions:o.metaRawOption.dimensions}}else i={seriesLayoutBy:Ep,sourceHeader:0,dimensions:t.dimensions};return Gd(t.data,i,null)}))}function Cf(t){return t===Lp||t===Pp}var Df,Af="undefined",kf=typeof Uint32Array===Af?Array:Uint32Array,Lf=typeof Uint16Array===Af?Array:Uint16Array,Pf=typeof Int32Array===Af?Array:Int32Array,Of=typeof Float64Array===Af?Array:Float64Array,Rf={float:Of,int:Pf,ordinal:Array,number:Array,time:Of};function Nf(t){return t>65535?kf:Lf}function Ef(t,e,n,i,r){var o=Rf[n||"float"];if(r){var a=t[e],s=a&&a.length;if(s!==i){for(var l=new o(i),u=0;u<s;u++)l[u]=a[u];t[e]=l}}else t[e]=new o(i)}var zf=function(){function t(){this._chunks=[],this._rawExtent=[],this._extent=[],this._count=0,this._rawCount=0,this._calcDimNameToIdx=ft()}return t.prototype.initData=function(t,e,n){this._provider=t,this._chunks=[],this._indices=null,this.getRawIndex=this._getRawIdxIdentity;var i=t.getSource(),r=this.defaultDimValueGetter=Df[i.sourceFormat];this._dimValueGetter=n||r,this._rawExtent=[];Xd(i);this._dimensions=z(e,(function(t){return{type:t.type,property:t.property}})),this._initDataFromProvider(0,t.count())},t.prototype.getProvider=function(){return this._provider},t.prototype.getSource=function(){return this._provider.getSource()},t.prototype.ensureCalculationDimension=function(t,e){var n=this._calcDimNameToIdx,i=this._dimensions,r=n.get(t);if(null!=r){if(i[r].type===e)return r}else r=i.length;return i[r]={type:e},n.set(t,r),this._chunks[r]=new Rf[e||"float"](this._rawCount),this._rawExtent[r]=[1/0,-1/0],r},t.prototype.collectOrdinalMeta=function(t,e){var n=this._chunks[t],i=this._dimensions[t],r=this._rawExtent,o=i.ordinalOffset||0,a=n.length;0===o&&(r[t]=[1/0,-1/0]);for(var s=r[t],l=o;l<a;l++){var u=n[l]=e.parseAndCollect(n[l]);s[0]=Math.min(u,s[0]),s[1]=Math.max(u,s[1])}i.ordinalMeta=e,i.ordinalOffset=a,i.type="ordinal"},t.prototype.getOrdinalMeta=function(t){return this._dimensions[t].ordinalMeta},t.prototype.getDimensionProperty=function(t){var e=this._dimensions[t];return e&&e.property},t.prototype.appendData=function(t){var e=this._provider,n=this.count();e.appendData(t);var i=e.count();return e.persistent||(i+=n),n<i&&this._initDataFromProvider(n,i,!0),[n,i]},t.prototype.appendValues=function(t,e){for(var n=this._chunks,i=this._dimensions,r=i.length,o=this._rawExtent,a=this.count(),s=a+Math.max(t.length,e||0),l=0;l<r;l++){Ef(n,l,(d=i[l]).type,s,!0)}for(var u=[],h=a;h<s;h++)for(var c=h-a,p=0;p<r;p++){var d=i[p],f=Df.arrayRows.call(this,t[c]||u,d.property,c,p);n[p][h]=f;var g=o[p];f<g[0]&&(g[0]=f),f>g[1]&&(g[1]=f)}return this._rawCount=this._count=s,{start:a,end:s}},t.prototype._initDataFromProvider=function(t,e,n){for(var i=this._provider,r=this._chunks,o=this._dimensions,a=o.length,s=this._rawExtent,l=z(o,(function(t){return t.property})),u=0;u<a;u++){var h=o[u];s[u]||(s[u]=[1/0,-1/0]),Ef(r,u,h.type,e,n)}if(i.fillStorage)i.fillStorage(t,e,r,s);else for(var c=[],p=t;p<e;p++){c=i.getItem(p,c);for(var d=0;d<a;d++){var f=r[d],g=this._dimValueGetter(c,l[d],p,d);f[p]=g;var y=s[d];g<y[0]&&(y[0]=g),g>y[1]&&(y[1]=g)}}!i.persistent&&i.clean&&i.clean(),this._rawCount=this._count=e,this._extent=[]},t.prototype.count=function(){return this._count},t.prototype.get=function(t,e){if(!(e>=0&&e<this._count))return NaN;var n=this._chunks[t];return n?n[this.getRawIndex(e)]:NaN},t.prototype.getValues=function(t,e){var n=[],i=[];if(null==e){e=t,t=[];for(var r=0;r<this._dimensions.length;r++)i.push(r)}else i=t;r=0;for(var o=i.length;r<o;r++)n.push(this.get(i[r],e));return n},t.prototype.getByRawIndex=function(t,e){if(!(e>=0&&e<this._rawCount))return NaN;var n=this._chunks[t];return n?n[e]:NaN},t.prototype.getSum=function(t){var e=0;if(this._chunks[t])for(var n=0,i=this.count();n<i;n++){var r=this.get(t,n);isNaN(r)||(e+=r)}return e},t.prototype.getMedian=function(t){var e=[];this.each([t],(function(t){isNaN(t)||e.push(t)}));var n=e.sort((function(t,e){return t-e})),i=this.count();return 0===i?0:i%2==1?n[(i-1)/2]:(n[i/2]+n[i/2-1])/2},t.prototype.indexOfRawIndex=function(t){if(t>=this._rawCount||t<0)return-1;if(!this._indices)return t;var e=this._indices,n=e[t];if(null!=n&&n<this._count&&n===t)return t;for(var i=0,r=this._count-1;i<=r;){var o=(i+r)/2|0;if(e[o]<t)i=o+1;else{if(!(e[o]>t))return o;r=o-1}}return-1},t.prototype.indicesOfNearest=function(t,e,n){var i=this._chunks[t],r=[];if(!i)return r;null==n&&(n=1/0);for(var o=1/0,a=-1,s=0,l=0,u=this.count();l<u;l++){var h=e-i[this.getRawIndex(l)],c=Math.abs(h);c<=n&&((c<o||c===o&&h>=0&&a<0)&&(o=c,a=h,s=0),h===a&&(r[s++]=l))}return r.length=s,r},t.prototype.getIndices=function(){var t,e=this._indices;if(e){var n=e.constructor,i=this._count;if(n===Array){t=new n(i);for(var r=0;r<i;r++)t[r]=e[r]}else t=new n(e.buffer,0,i)}else{t=new(n=Nf(this._rawCount))(this.count());for(r=0;r<t.length;r++)t[r]=r}return t},t.prototype.filter=function(t,e){if(!this._count)return this;for(var n=this.clone(),i=n.count(),r=new(Nf(n._rawCount))(i),o=[],a=t.length,s=0,l=t[0],u=n._chunks,h=0;h<i;h++){var c=void 0,p=n.getRawIndex(h);if(0===a)c=e(h);else if(1===a){c=e(u[l][p],h)}else{for(var d=0;d<a;d++)o[d]=u[t[d]][p];o[d]=h,c=e.apply(null,o)}c&&(r[s++]=p)}return s<i&&(n._indices=r),n._count=s,n._extent=[],n._updateGetRawIdx(),n},t.prototype.selectRange=function(t){var e=this.clone(),n=e._count;if(!n)return this;var i=G(t),r=i.length;if(!r)return this;var o=e.count(),a=new(Nf(e._rawCount))(o),s=0,l=i[0],u=t[l][0],h=t[l][1],c=e._chunks,p=!1;if(!e._indices){var d=0;if(1===r){for(var f=c[i[0]],g=0;g<n;g++){((x=f[g])>=u&&x<=h||isNaN(x))&&(a[s++]=d),d++}p=!0}else if(2===r){f=c[i[0]];var y=c[i[1]],v=t[i[1]][0],m=t[i[1]][1];for(g=0;g<n;g++){var x=f[g],_=y[g];(x>=u&&x<=h||isNaN(x))&&(_>=v&&_<=m||isNaN(_))&&(a[s++]=d),d++}p=!0}}if(!p)if(1===r)for(g=0;g<o;g++){var b=e.getRawIndex(g);((x=c[i[0]][b])>=u&&x<=h||isNaN(x))&&(a[s++]=b)}else for(g=0;g<o;g++){for(var w=!0,S=(b=e.getRawIndex(g),0);S<r;S++){var M=i[S];((x=c[M][b])<t[M][0]||x>t[M][1])&&(w=!1)}w&&(a[s++]=e.getRawIndex(g))}return s<o&&(e._indices=a),e._count=s,e._extent=[],e._updateGetRawIdx(),e},t.prototype.map=function(t,e){var n=this.clone(t);return this._updateDims(n,t,e),n},t.prototype.modify=function(t,e){this._updateDims(this,t,e)},t.prototype._updateDims=function(t,e,n){for(var i=t._chunks,r=[],o=e.length,a=t.count(),s=[],l=t._rawExtent,u=0;u<e.length;u++)l[e[u]]=[1/0,-1/0];for(var h=0;h<a;h++){for(var c=t.getRawIndex(h),p=0;p<o;p++)s[p]=i[e[p]][c];s[o]=h;var d=n&&n.apply(null,s);if(null!=d){"object"!=typeof d&&(r[0]=d,d=r);for(u=0;u<d.length;u++){var f=e[u],g=d[u],y=l[f],v=i[f];v&&(v[c]=g),g<y[0]&&(y[0]=g),g>y[1]&&(y[1]=g)}}}},t.prototype.lttbDownSample=function(t,e){var n,i,r,o=this.clone([t],!0),a=o._chunks[t],s=this.count(),l=0,u=Math.floor(1/e),h=this.getRawIndex(0),c=new(Nf(this._rawCount))(Math.ceil(s/u)+2);c[l++]=h;for(var p=1;p<s-1;p+=u){for(var d=Math.min(p+u,s-1),f=Math.min(p+2*u,s),g=(f+d)/2,y=0,v=d;v<f;v++){var m=a[S=this.getRawIndex(v)];isNaN(m)||(y+=m)}y/=f-d;var x=p,_=Math.min(p+u,s),b=p-1,w=a[h];n=-1,r=x;for(v=x;v<_;v++){var S;m=a[S=this.getRawIndex(v)];isNaN(m)||(i=Math.abs((b-g)*(m-w)-(b-v)*(y-w)))>n&&(n=i,r=S)}c[l++]=r,h=r}return c[l++]=this.getRawIndex(s-1),o._count=l,o._indices=c,o.getRawIndex=this._getRawIdx,o},t.prototype.downSample=function(t,e,n,i){for(var r=this.clone([t],!0),o=r._chunks,a=[],s=Math.floor(1/e),l=o[t],u=this.count(),h=r._rawExtent[t]=[1/0,-1/0],c=new(Nf(this._rawCount))(Math.ceil(u/s)),p=0,d=0;d<u;d+=s){s>u-d&&(s=u-d,a.length=s);for(var f=0;f<s;f++){var g=this.getRawIndex(d+f);a[f]=l[g]}var y=n(a),v=this.getRawIndex(Math.min(d+i(a,y)||0,u-1));l[v]=y,y<h[0]&&(h[0]=y),y>h[1]&&(h[1]=y),c[p++]=v}return r._count=p,r._indices=c,r._updateGetRawIdx(),r},t.prototype.each=function(t,e){if(this._count)for(var n=t.length,i=this._chunks,r=0,o=this.count();r<o;r++){var a=this.getRawIndex(r);switch(n){case 0:e(r);break;case 1:e(i[t[0]][a],r);break;case 2:e(i[t[0]][a],i[t[1]][a],r);break;default:for(var s=0,l=[];s<n;s++)l[s]=i[t[s]][a];l[s]=r,e.apply(null,l)}}},t.prototype.getDataExtent=function(t){var e=this._chunks[t],n=[1/0,-1/0];if(!e)return n;var i,r=this.count();if(!this._indices)return this._rawExtent[t].slice();if(i=this._extent[t])return i.slice();for(var o=(i=n)[0],a=i[1],s=0;s<r;s++){var l=e[this.getRawIndex(s)];l<o&&(o=l),l>a&&(a=l)}return i=[o,a],this._extent[t]=i,i},t.prototype.getRawDataItem=function(t){var e=this.getRawIndex(t);if(this._provider.persistent)return this._provider.getItem(e);for(var n=[],i=this._chunks,r=0;r<i.length;r++)n.push(i[r][e]);return n},t.prototype.clone=function(e,n){var i,r,o=new t,a=this._chunks,s=e&&V(e,(function(t,e){return t[e]=!0,t}),{});if(s)for(var l=0;l<a.length;l++)o._chunks[l]=s[l]?(i=a[l],r=void 0,(r=i.constructor)===Array?i.slice():new r(i)):a[l];else o._chunks=a;return this._copyCommonProps(o),n||(o._indices=this._cloneIndices()),o._updateGetRawIdx(),o},t.prototype._copyCommonProps=function(t){t._count=this._count,t._rawCount=this._rawCount,t._provider=this._provider,t._dimensions=this._dimensions,t._extent=T(this._extent),t._rawExtent=T(this._rawExtent)},t.prototype._cloneIndices=function(){if(this._indices){var t=this._indices.constructor,e=void 0;if(t===Array){var n=this._indices.length;e=new t(n);for(var i=0;i<n;i++)e[i]=this._indices[i]}else e=new t(this._indices);return e}return null},t.prototype._getRawIdxIdentity=function(t){return t},t.prototype._getRawIdx=function(t){return t<this._count&&t>=0?this._indices[t]:-1},t.prototype._updateGetRawIdx=function(){this.getRawIndex=this._indices?this._getRawIdx:this._getRawIdxIdentity},t.internalField=function(){function t(t,e,n,i){return pf(t[i],this._dimensions[i])}Df={arrayRows:t,objectRows:function(t,e,n,i){return pf(t[e],this._dimensions[i])},keyedColumns:t,original:function(t,e,n,i){var r=t&&(null==t.value?t:t.value);return pf(r instanceof Array?r[i]:r,this._dimensions[i])},typedArray:function(t,e,n,i){return t[i]}}}(),t}(),Vf=function(){function t(t){this._sourceList=[],this._storeList=[],this._upstreamSignList=[],this._versionSignBase=0,this._dirty=!0,this._sourceHost=t}return t.prototype.dirty=function(){this._setLocalSource([],[]),this._storeList=[],this._dirty=!0},t.prototype._setLocalSource=function(t,e){this._sourceList=t,this._upstreamSignList=e,this._versionSignBase++,this._versionSignBase>9e10&&(this._versionSignBase=0)},t.prototype._getVersionSign=function(){return this._sourceHost.uid+"_"+this._versionSignBase},t.prototype.prepareSource=function(){this._isDirty()&&(this._createSource(),this._dirty=!1)},t.prototype._createSource=function(){this._setLocalSource([],[]);var t,e,n=this._sourceHost,i=this._getUpstreamSourceManagers(),r=!!i.length;if(Ff(n)){var o=n,a=void 0,s=void 0,l=void 0;if(r){var u=i[0];u.prepareSource(),a=(l=u.getSource()).data,s=l.sourceFormat,e=[u._getVersionSign()]}else s=$(a=o.get("data",!0))?Rp:kp,e=[];var h=this._getSourceMetaRawOption()||{},c=l&&l.metaRawOption||{},p=rt(h.seriesLayoutBy,c.seriesLayoutBy)||null,d=rt(h.sourceHeader,c.sourceHeader),f=rt(h.dimensions,c.dimensions);t=p!==c.seriesLayoutBy||!!d!=!!c.sourceHeader||f?[Gd(a,{seriesLayoutBy:p,sourceHeader:d,dimensions:f},s)]:[]}else{var g=n;if(r){var y=this._applyTransform(i);t=y.sourceList,e=y.upstreamSignList}else{t=[Gd(g.get("source",!0),this._getSourceMetaRawOption(),null)],e=[]}}this._setLocalSource(t,e)},t.prototype._applyTransform=function(t){var e,n=this._sourceHost,i=n.get("transform",!0),r=n.get("fromTransformResult",!0);if(null!=r){var o="";1!==t.length&&Gf(o)}var a,s=[],l=[];return E(t,(function(t){t.prepareSource();var e=t.getSource(r||0),n="";null==r||e||Gf(n),s.push(e),l.push(t._getVersionSign())})),i?e=function(t,e,n){var i=ho(t),r=i.length,o="";r||ao(o);for(var a=0,s=r;a<s;a++)e=Tf(i[a],e),a!==s-1&&(e.length=Math.max(e.length,1));return e}(i,s,n.componentIndex):null!=r&&(e=[(a=s[0],new Bd({data:a.data,sourceFormat:a.sourceFormat,seriesLayoutBy:a.seriesLayoutBy,dimensionsDefine:T(a.dimensionsDefine),startIndex:a.startIndex,dimensionsDetectedCount:a.dimensionsDetectedCount}))]),{sourceList:e,upstreamSignList:l}},t.prototype._isDirty=function(){if(this._dirty)return!0;for(var t=this._getUpstreamSourceManagers(),e=0;e<t.length;e++){var n=t[e];if(n._isDirty()||this._upstreamSignList[e]!==n._getVersionSign())return!0}},t.prototype.getSource=function(t){t=t||0;var e=this._sourceList[t];if(!e){var n=this._getUpstreamSourceManagers();return n[0]&&n[0].getSource(t)}return e},t.prototype.getSharedDataStore=function(t){var e=t.makeStoreSchema();return this._innerGetDataStore(e.dimensions,t.source,e.hash)},t.prototype._innerGetDataStore=function(t,e,n){var i=this._storeList,r=i[0];r||(r=i[0]={});var o=r[n];if(!o){var a=this._getUpstreamSourceManagers()[0];Ff(this._sourceHost)&&a?o=a._innerGetDataStore(t,e,n):(o=new zf).initData(new Zd(e,t.length),t),r[n]=o}return o},t.prototype._getUpstreamSourceManagers=function(){var t=this._sourceHost;if(Ff(t)){var e=Yp(t);return e?[e.getSourceManager()]:[]}return z(function(t){return t.get("transform",!0)||t.get("fromTransformResult",!0)?Ao(t.ecModel,"dataset",{index:t.get("fromDatasetIndex",!0),id:t.get("fromDatasetId",!0)},Co).models:[]}(t),(function(t){return t.getSourceManager()}))},t.prototype._getSourceMetaRawOption=function(){var t,e,n,i=this._sourceHost;if(Ff(i))t=i.get("seriesLayoutBy",!0),e=i.get("sourceHeader",!0),n=i.get("dimensions",!0);else if(!this._getUpstreamSourceManagers().length){var r=i;t=r.get("seriesLayoutBy",!0),e=r.get("sourceHeader",!0),n=r.get("dimensions",!0)}return{seriesLayoutBy:t,sourceHeader:e,dimensions:n}},t}();function Bf(t){t.option.transform&&ct(t.option.transform)}function Ff(t){return"series"===t.mainType}function Gf(t){throw new Error(t)}function Wf(t,e){var n=t.color||"#6e7079",i=t.fontSize||12,r=t.fontWeight||"400",o=t.color||"#464646",a=t.fontSize||14,s=t.fontWeight||"900";return"html"===e?{nameStyle:"font-size:"+op(i+"")+"px;color:"+op(n)+";font-weight:"+op(r+""),valueStyle:"font-size:"+op(a+"")+"px;color:"+op(o)+";font-weight:"+op(s+"")}:{nameStyle:{fontSize:i,fill:n,fontWeight:r},valueStyle:{fontSize:a,fill:o,fontWeight:s}}}var Hf=[0,10,20,30],Yf=["","\n","\n\n","\n\n\n"];function Uf(t,e){return e.type=t,e}function Xf(t){return"section"===t.type}function Zf(t){return Xf(t)?qf:Kf}function jf(t){if(Xf(t)){var e=0,n=t.blocks.length,i=n>1||n>0&&!t.noHeader;return E(t.blocks,(function(t){var n=jf(t);n>=e&&(e=n+ +(i&&(!n||Xf(t)&&!t.noHeader)))})),e}return 0}function qf(t,e,n,i){var r,o=e.noHeader,a=(r=jf(e),{html:Hf[r],richText:Yf[r]}),s=[],l=e.blocks||[];lt(!l||Y(l)),l=l||[];var u=t.orderMode;if(e.sortBlocks&&u){l=l.slice();var h={valueAsc:"asc",valueDesc:"desc"};if(mt(h,u)){var c=new vf(h[u],null);l.sort((function(t,e){return c.evaluate(t.sortParam,e.sortParam)}))}else"seriesDesc"===u&&l.reverse()}E(l,(function(n,r){var o=e.valueFormatter,l=Zf(n)(o?A(A({},t),{valueFormatter:o}):t,n,r>0?a.html:0,i);null!=l&&s.push(l)}));var p="richText"===t.renderMode?s.join(a.richText):Jf(s.join(""),o?n:a.html);if(o)return p;var d=ap(e.header,"ordinal",t.useUTC),f=Wf(i,t.renderMode).nameStyle;return"richText"===t.renderMode?Qf(t,d,f)+a.richText+p:Jf('<div style="'+f+";"+'line-height:1;">'+op(d)+"</div>"+p,n)}function Kf(t,e,n,i){var r=t.renderMode,o=e.noName,a=e.noValue,s=!e.markerType,l=e.name,u=t.useUTC,h=e.valueFormatter||t.valueFormatter||function(t){return z(t=Y(t)?t:[t],(function(t,e){return ap(t,Y(d)?d[e]:d,u)}))};if(!o||!a){var c=s?"":t.markupStyleCreator.makeTooltipMarker(e.markerType,e.markerColor||"#333",r),p=o?"":ap(l,"ordinal",u),d=e.valueType,f=a?[]:h(e.value),g=!s||!o,y=!s&&o,v=Wf(i,r),m=v.nameStyle,x=v.valueStyle;return"richText"===r?(s?"":c)+(o?"":Qf(t,p,m))+(a?"":function(t,e,n,i,r){var o=[r],a=i?10:20;return n&&o.push({padding:[0,0,0,a],align:"right"}),t.markupStyleCreator.wrapRichTextStyle(Y(e)?e.join("  "):e,o)}(t,f,g,y,x)):Jf((s?"":c)+(o?"":function(t,e,n){return'<span style="'+n+";"+(e?"margin-left:2px":"")+'">'+op(t)+"</span>"}(p,!s,m))+(a?"":function(t,e,n,i){var r=n?"10px":"20px",o=e?"float:right;margin-left:"+r:"";return t=Y(t)?t:[t],'<span style="'+o+";"+i+'">'+z(t,(function(t){return op(t)})).join("&nbsp;&nbsp;")+"</span>"}(f,g,y,x)),n)}}function $f(t,e,n,i,r,o){if(t)return Zf(t)({useUTC:r,renderMode:n,orderMode:i,markupStyleCreator:e,valueFormatter:t.valueFormatter},t,0,o)}function Jf(t,e){return'<div style="'+("margin: "+e+"px 0 0")+";"+'line-height:1;">'+t+'<div style="clear:both"></div></div>'}function Qf(t,e,n){return t.markupStyleCreator.wrapRichTextStyle(e,n)}function tg(t,e){return cp(t.getData().getItemVisual(e,"style")[t.visualDrawType])}function eg(t,e){var n=t.get("padding");return null!=n?n:"richText"===e?[8,10]:10}var ng=function(){function t(){this.richTextStyles={},this._nextStyleNameId=no()}return t.prototype._generateStyleName=function(){return"__EC_aUTo_"+this._nextStyleNameId++},t.prototype.makeTooltipMarker=function(t,e,n){var i="richText"===n?this._generateStyleName():null,r=hp({color:e,type:t,renderMode:n,markerId:i});return X(r)?r:(this.richTextStyles[i]=r.style,r.content)},t.prototype.wrapRichTextStyle=function(t,e){var n={};Y(e)?E(e,(function(t){return A(n,t)})):A(n,e);var i=this._generateStyleName();return this.richTextStyles[i]=n,"{"+i+"|"+t+"}"},t}();function ig(t){var e,n,i,r,o=t.series,a=t.dataIndex,s=t.multipleSeries,l=o.getData(),u=l.mapDimensionsAll("defaultedTooltip"),h=u.length,c=o.getRawValue(a),p=Y(c),d=tg(o,a);if(h>1||p&&!h){var f=function(t,e,n,i,r){var o=e.getData(),a=V(t,(function(t,e,n){var i=o.getDimensionInfo(n);return t||i&&!1!==i.tooltip&&null!=i.displayName}),!1),s=[],l=[],u=[];function h(t,e){var n=o.getDimensionInfo(e);n&&!1!==n.otherDims.tooltip&&(a?u.push(Uf("nameValue",{markerType:"subItem",markerColor:r,name:n.displayName,value:t,valueType:n.type})):(s.push(t),l.push(n.type)))}return i.length?E(i,(function(t){h(of(o,n,t),t)})):E(t,h),{inlineValues:s,inlineValueTypes:l,blocks:u}}(c,o,a,u,d);e=f.inlineValues,n=f.inlineValueTypes,i=f.blocks,r=f.inlineValues[0]}else if(h){var g=l.getDimensionInfo(u[0]);r=e=of(l,a,u[0]),n=g.type}else r=e=p?c[0]:c;var y=_o(o),v=y&&o.name||"",m=l.getName(a),x=s?v:m;return Uf("section",{header:v,noHeader:s||!y,sortParam:r,blocks:[Uf("nameValue",{markerType:"item",markerColor:d,name:x,noName:!ut(x),value:e,valueType:n})].concat(i||[])})}var rg=So();function og(t,e){return t.getName(e)||t.getId(e)}var ag=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._selectedDataIndicesMap={},e}return n(e,t),e.prototype.init=function(t,e,n){this.seriesIndex=this.componentIndex,this.dataTask=uf({count:lg,reset:ug}),this.dataTask.context={model:this},this.mergeDefaultAndTheme(t,n),(rg(this).sourceManager=new Vf(this)).prepareSource();var i=this.getInitialData(t,n);cg(i,this),this.dataTask.context.data=i,rg(this).dataBeforeProcessed=i,sg(this),this._initSelectedMapFromData(i)},e.prototype.mergeDefaultAndTheme=function(t,e){var n=_p(this),i=n?wp(t):{},r=this.subType;Ip.hasClass(r)&&(r+="Series"),C(t,e.getTheme().get(this.subType)),C(t,this.getDefaultOption()),co(t,"label",["show"]),this.fillDataTextStyle(t.data),n&&bp(t,i,n)},e.prototype.mergeOption=function(t,e){t=C(this.option,t,!0),this.fillDataTextStyle(t.data);var n=_p(this);n&&bp(this.option,t,n);var i=rg(this).sourceManager;i.dirty(),i.prepareSource();var r=this.getInitialData(t,e);cg(r,this),this.dataTask.dirty(),this.dataTask.context.data=r,rg(this).dataBeforeProcessed=r,sg(this),this._initSelectedMapFromData(r)},e.prototype.fillDataTextStyle=function(t){if(t&&!$(t))for(var e=["show"],n=0;n<t.length;n++)t[n]&&t[n].label&&co(t[n],"label",e)},e.prototype.getInitialData=function(t,e){},e.prototype.appendData=function(t){this.getRawData().appendData(t.data)},e.prototype.getData=function(t){var e=dg(this);if(e){var n=e.context.data;return null==t?n:n.getLinkedData(t)}return rg(this).data},e.prototype.getAllData=function(){var t=this.getData();return t&&t.getLinkedDataAll?t.getLinkedDataAll():[{data:t}]},e.prototype.setData=function(t){var e=dg(this);if(e){var n=e.context;n.outputData=t,e!==this.dataTask&&(n.data=t)}rg(this).data=t},e.prototype.getEncode=function(){var t=this.get("encode",!0);if(t)return ft(t)},e.prototype.getSourceManager=function(){return rg(this).sourceManager},e.prototype.getSource=function(){return this.getSourceManager().getSource()},e.prototype.getRawData=function(){return rg(this).dataBeforeProcessed},e.prototype.getColorBy=function(){return this.get("colorBy")||"series"},e.prototype.isColorBySeries=function(){return"series"===this.getColorBy()},e.prototype.getBaseAxis=function(){var t=this.coordinateSystem;return t&&t.getBaseAxis&&t.getBaseAxis()},e.prototype.formatTooltip=function(t,e,n){return ig({series:this,dataIndex:t,multipleSeries:e})},e.prototype.isAnimationEnabled=function(){var t=this.ecModel;if(r.node&&(!t||!t.ssr))return!1;var e=this.getShallow("animation");return e&&this.getData().count()>this.getShallow("animationThreshold")&&(e=!1),!!e},e.prototype.restoreData=function(){this.dataTask.dirty()},e.prototype.getColorFromPalette=function(t,e,n){var i=this.ecModel,r=Qp.prototype.getColorFromPalette.call(this,t,e,n);return r||(r=i.getColorFromPalette(t,e,n)),r},e.prototype.coordDimToDataDim=function(t){return this.getRawData().mapDimensionsAll(t)},e.prototype.getProgressive=function(){return this.get("progressive")},e.prototype.getProgressiveThreshold=function(){return this.get("progressiveThreshold")},e.prototype.select=function(t,e){this._innerSelect(this.getData(e),t)},e.prototype.unselect=function(t,e){var n=this.option.selectedMap;if(n){var i=this.option.selectedMode,r=this.getData(e);if("series"===i||"all"===n)return this.option.selectedMap={},void(this._selectedDataIndicesMap={});for(var o=0;o<t.length;o++){var a=og(r,t[o]);n[a]=!1,this._selectedDataIndicesMap[a]=-1}}},e.prototype.toggleSelect=function(t,e){for(var n=[],i=0;i<t.length;i++)n[0]=t[i],this.isSelected(t[i],e)?this.unselect(n,e):this.select(n,e)},e.prototype.getSelectedDataIndices=function(){if("all"===this.option.selectedMap)return[].slice.call(this.getData().getIndices());for(var t=this._selectedDataIndicesMap,e=G(t),n=[],i=0;i<e.length;i++){var r=t[e[i]];r>=0&&n.push(r)}return n},e.prototype.isSelected=function(t,e){var n=this.option.selectedMap;if(!n)return!1;var i=this.getData(e);return("all"===n||n[og(i,t)])&&!i.getItemModel(t).get(["select","disabled"])},e.prototype.isUniversalTransitionEnabled=function(){if(this.__universalTransitionEnabled)return!0;var t=this.option.universalTransition;return!!t&&(!0===t||t&&t.enabled)},e.prototype._innerSelect=function(t,e){var n,i,r=this.option,o=r.selectedMode,a=e.length;if(o&&a)if("series"===o)r.selectedMap="all";else if("multiple"===o){q(r.selectedMap)||(r.selectedMap={});for(var s=r.selectedMap,l=0;l<a;l++){var u=e[l];s[c=og(t,u)]=!0,this._selectedDataIndicesMap[c]=t.getRawIndex(u)}}else if("single"===o||!0===o){var h=e[a-1],c=og(t,h);r.selectedMap=((n={})[c]=!0,n),this._selectedDataIndicesMap=((i={})[c]=t.getRawIndex(h),i)}},e.prototype._initSelectedMapFromData=function(t){if(!this.option.selectedMap){var e=[];t.hasItemOption&&t.each((function(n){var i=t.getRawDataItem(n);i&&i.selected&&e.push(n)})),e.length>0&&this._innerSelect(t,e)}},e.registerClass=function(t){return Ip.registerClass(t)},e.protoInitialize=function(){var t=e.prototype;t.type="series.__base__",t.seriesIndex=0,t.ignoreStyleOnData=!1,t.hasSymbolVisual=!1,t.defaultSymbol="circle",t.visualStyleAccessPath="itemStyle",t.visualDrawType="fill"}(),e}(Ip);function sg(t){var e=t.name;_o(t)||(t.name=function(t){var e=t.getRawData(),n=e.mapDimensionsAll("seriesName"),i=[];return E(n,(function(t){var n=e.getDimensionInfo(t);n.displayName&&i.push(n.displayName)})),i.join(" ")}(t)||e)}function lg(t){return t.model.getRawData().count()}function ug(t){var e=t.model;return e.setData(e.getRawData().cloneShallow()),hg}function hg(t,e){e.outputData&&t.end>e.outputData.count()&&e.model.getRawData().cloneShallow(e.outputData)}function cg(t,e){E(gt(t.CHANGABLE_METHODS,t.DOWNSAMPLE_METHODS),(function(n){t.wrapMethod(n,H(pg,e))}))}function pg(t,e){var n=dg(t);return n&&n.setOutputEnd((e||this).count()),e}function dg(t){var e=(t.ecModel||{}).scheduler,n=e&&e.getPipeline(t.uid);if(n){var i=n.currentTask;if(i){var r=i.agentStubMap;r&&(i=r.get(t.uid))}return i}}R(ag,sf),R(ag,Qp),zo(ag,Ip);var fg=function(){function t(){this.group=new Cr,this.uid=fc("viewComponent")}return t.prototype.init=function(t,e){},t.prototype.render=function(t,e,n,i){},t.prototype.dispose=function(t,e){},t.prototype.updateView=function(t,e,n,i){},t.prototype.updateLayout=function(t,e,n,i){},t.prototype.updateVisual=function(t,e,n,i){},t.prototype.blurSeries=function(t,e){},t.prototype.eachRendered=function(t){var e=this.group;e&&e.traverse(t)},t}();function gg(){var t=So();return function(e){var n=t(e),i=e.pipelineContext,r=!!n.large,o=!!n.progressiveRender,a=n.large=!(!i||!i.large),s=n.progressiveRender=!(!i||!i.progressiveRender);return!(r===a&&o===s)&&"reset"}}Eo(fg),Go(fg);var yg=So(),vg=gg(),mg=function(){function t(){this.group=new Cr,this.uid=fc("viewChart"),this.renderTask=uf({plan:bg,reset:wg}),this.renderTask.context={view:this}}return t.prototype.init=function(t,e){},t.prototype.render=function(t,e,n,i){0},t.prototype.highlight=function(t,e,n,i){var r=t.getData(i&&i.dataType);r&&_g(r,i,"emphasis")},t.prototype.downplay=function(t,e,n,i){var r=t.getData(i&&i.dataType);r&&_g(r,i,"normal")},t.prototype.remove=function(t,e){this.group.removeAll()},t.prototype.dispose=function(t,e){},t.prototype.updateView=function(t,e,n,i){this.render(t,e,n,i)},t.prototype.updateLayout=function(t,e,n,i){this.render(t,e,n,i)},t.prototype.updateVisual=function(t,e,n,i){this.render(t,e,n,i)},t.prototype.eachRendered=function(t){zh(this.group,t)},t.markUpdateMethod=function(t,e){yg(t).updateMethod=e},t.protoInitialize=void(t.prototype.type="chart"),t}();function xg(t,e,n){t&&Bl(t)&&("emphasis"===e?xl:_l)(t,n)}function _g(t,e,n){var i=wo(t,e),r=e&&null!=e.highlightKey?function(t){var e=Us[t];return null==e&&Ys<=32&&(e=Us[t]=Ys++),e}(e.highlightKey):null;null!=i?E(ho(i),(function(e){xg(t.getItemGraphicEl(e),n,r)})):t.eachItemGraphicEl((function(t){xg(t,n,r)}))}function bg(t){return vg(t.model)}function wg(t){var e=t.model,n=t.ecModel,i=t.api,r=t.payload,o=e.pipelineContext.progressiveRender,a=t.view,s=r&&yg(r).updateMethod,l=o?"incrementalPrepareRender":s&&a[s]?s:"render";return"render"!==l&&a[l](e,n,i,r),Sg[l]}Eo(mg),Go(mg);var Sg={incrementalPrepareRender:{progress:function(t,e){e.view.incrementalRender(t,e.model,e.ecModel,e.api,e.payload)}},render:{forceFirstProgress:!0,progress:function(t,e){e.view.render(e.model,e.ecModel,e.api,e.payload)}}},Mg="\0__throttleOriginMethod",Ig="\0__throttleRate",Tg="\0__throttleType";function Cg(t,e,n){var i,r,o,a,s,l=0,u=0,h=null;function c(){u=(new Date).getTime(),h=null,t.apply(o,a||[])}e=e||0;var p=function(){for(var t=[],p=0;p<arguments.length;p++)t[p]=arguments[p];i=(new Date).getTime(),o=this,a=t;var d=s||e,f=s||n;s=null,r=i-(f?l:u)-d,clearTimeout(h),f?h=setTimeout(c,d):r>=0?c():h=setTimeout(c,-r),l=i};return p.clear=function(){h&&(clearTimeout(h),h=null)},p.debounceNextCall=function(t){s=t},p}function Dg(t,e,n,i){var r=t[e];if(r){var o=r[Mg]||r,a=r[Tg];if(r[Ig]!==n||a!==i){if(null==n||!i)return t[e]=o;(r=t[e]=Cg(o,n,"debounce"===i))[Mg]=o,r[Tg]=i,r[Ig]=n}return r}}function Ag(t,e){var n=t[e];n&&n[Mg]&&(n.clear&&n.clear(),t[e]=n[Mg])}var kg=So(),Lg={itemStyle:Wo(uc,!0),lineStyle:Wo(ac,!0)},Pg={lineStyle:"stroke",itemStyle:"fill"};function Og(t,e){var n=t.visualStyleMapper||Lg[e];return n||(console.warn("Unkown style type '"+e+"'."),Lg.itemStyle)}function Rg(t,e){var n=t.visualDrawType||Pg[e];return n||(console.warn("Unkown style type '"+e+"'."),"fill")}var Ng={createOnAllSeries:!0,performRawSeries:!0,reset:function(t,e){var n=t.getData(),i=t.visualStyleAccessPath||"itemStyle",r=t.getModel(i),o=Og(t,i)(r),a=r.getShallow("decal");a&&(n.setVisual("decal",a),a.dirty=!0);var s=Rg(t,i),l=o[s],u=U(l)?l:null,h="auto"===o.fill||"auto"===o.stroke;if(!o[s]||u||h){var c=t.getColorFromPalette(t.name,null,e.getSeriesCount());o[s]||(o[s]=c,n.setVisual("colorFromPalette",!0)),o.fill="auto"===o.fill||U(o.fill)?c:o.fill,o.stroke="auto"===o.stroke||U(o.stroke)?c:o.stroke}if(n.setVisual("style",o),n.setVisual("drawType",s),!e.isSeriesFiltered(t)&&u)return n.setVisual("colorFromPalette",!1),{dataEach:function(e,n){var i=t.getDataParams(n),r=A({},o);r[s]=u(i),e.setItemVisual(n,"style",r)}}}},Eg=new pc,zg={createOnAllSeries:!0,performRawSeries:!0,reset:function(t,e){if(!t.ignoreStyleOnData&&!e.isSeriesFiltered(t)){var n=t.getData(),i=t.visualStyleAccessPath||"itemStyle",r=Og(t,i),o=n.getVisual("drawType");return{dataEach:n.hasItemOption?function(t,e){var n=t.getRawDataItem(e);if(n&&n[i]){Eg.option=n[i];var a=r(Eg);A(t.ensureUniqueItemVisual(e,"style"),a),Eg.option.decal&&(t.setItemVisual(e,"decal",Eg.option.decal),Eg.option.decal.dirty=!0),o in a&&t.setItemVisual(e,"colorFromPalette",!1)}}:null}}}},Vg={performRawSeries:!0,overallReset:function(t){var e=ft();t.eachSeries((function(t){var n=t.getColorBy();if(!t.isColorBySeries()){var i=t.type+"-"+n,r=e.get(i);r||(r={},e.set(i,r)),kg(t).scope=r}})),t.eachSeries((function(e){if(!e.isColorBySeries()&&!t.isSeriesFiltered(e)){var n=e.getRawData(),i={},r=e.getData(),o=kg(e).scope,a=e.visualStyleAccessPath||"itemStyle",s=Rg(e,a);r.each((function(t){var e=r.getRawIndex(t);i[e]=t})),n.each((function(t){var a=i[t];if(r.getItemVisual(a,"colorFromPalette")){var l=r.ensureUniqueItemVisual(a,"style"),u=n.getName(t)||t+"",h=n.count();l[s]=e.getColorFromPalette(u,o,h)}}))}}))}},Bg=Math.PI;var Fg=function(){function t(t,e,n,i){this._stageTaskMap=ft(),this.ecInstance=t,this.api=e,n=this._dataProcessorHandlers=n.slice(),i=this._visualHandlers=i.slice(),this._allHandlers=n.concat(i)}return t.prototype.restoreData=function(t,e){t.restoreData(e),this._stageTaskMap.each((function(t){var e=t.overallTask;e&&e.dirty()}))},t.prototype.getPerformArgs=function(t,e){if(t.__pipeline){var n=this._pipelineMap.get(t.__pipeline.id),i=n.context,r=!e&&n.progressiveEnabled&&(!i||i.progressiveRender)&&t.__idxInPipeline>n.blockIndex?n.step:null,o=i&&i.modDataCount;return{step:r,modBy:null!=o?Math.ceil(o/r):null,modDataCount:o}}},t.prototype.getPipeline=function(t){return this._pipelineMap.get(t)},t.prototype.updateStreamModes=function(t,e){var n=this._pipelineMap.get(t.uid),i=t.getData().count(),r=n.progressiveEnabled&&e.incrementalPrepareRender&&i>=n.threshold,o=t.get("large")&&i>=t.get("largeThreshold"),a="mod"===t.get("progressiveChunkMode")?i:null;t.pipelineContext=n.context={progressiveRender:r,modDataCount:a,large:o}},t.prototype.restorePipelines=function(t){var e=this,n=e._pipelineMap=ft();t.eachSeries((function(t){var i=t.getProgressive(),r=t.uid;n.set(r,{id:r,head:null,tail:null,threshold:t.getProgressiveThreshold(),progressiveEnabled:i&&!(t.preventIncremental&&t.preventIncremental()),blockIndex:-1,step:Math.round(i||700),count:0}),e._pipe(t,t.dataTask)}))},t.prototype.prepareStageTasks=function(){var t=this._stageTaskMap,e=this.api.getModel(),n=this.api;E(this._allHandlers,(function(i){var r=t.get(i.uid)||t.set(i.uid,{}),o="";lt(!(i.reset&&i.overallReset),o),i.reset&&this._createSeriesStageTask(i,r,e,n),i.overallReset&&this._createOverallStageTask(i,r,e,n)}),this)},t.prototype.prepareView=function(t,e,n,i){var r=t.renderTask,o=r.context;o.model=e,o.ecModel=n,o.api=i,r.__block=!t.incrementalPrepareRender,this._pipe(e,r)},t.prototype.performDataProcessorTasks=function(t,e){this._performStageTasks(this._dataProcessorHandlers,t,e,{block:!0})},t.prototype.performVisualTasks=function(t,e,n){this._performStageTasks(this._visualHandlers,t,e,n)},t.prototype._performStageTasks=function(t,e,n,i){i=i||{};var r=!1,o=this;function a(t,e){return t.setDirty&&(!t.dirtyMap||t.dirtyMap.get(e.__pipeline.id))}E(t,(function(t,s){if(!i.visualType||i.visualType===t.visualType){var l=o._stageTaskMap.get(t.uid),u=l.seriesTaskMap,h=l.overallTask;if(h){var c,p=h.agentStubMap;p.each((function(t){a(i,t)&&(t.dirty(),c=!0)})),c&&h.dirty(),o.updatePayload(h,n);var d=o.getPerformArgs(h,i.block);p.each((function(t){t.perform(d)})),h.perform(d)&&(r=!0)}else u&&u.each((function(s,l){a(i,s)&&s.dirty();var u=o.getPerformArgs(s,i.block);u.skip=!t.performRawSeries&&e.isSeriesFiltered(s.context.model),o.updatePayload(s,n),s.perform(u)&&(r=!0)}))}})),this.unfinished=r||this.unfinished},t.prototype.performSeriesTasks=function(t){var e;t.eachSeries((function(t){e=t.dataTask.perform()||e})),this.unfinished=e||this.unfinished},t.prototype.plan=function(){this._pipelineMap.each((function(t){var e=t.tail;do{if(e.__block){t.blockIndex=e.__idxInPipeline;break}e=e.getUpstream()}while(e)}))},t.prototype.updatePayload=function(t,e){"remain"!==e&&(t.context.payload=e)},t.prototype._createSeriesStageTask=function(t,e,n,i){var r=this,o=e.seriesTaskMap,a=e.seriesTaskMap=ft(),s=t.seriesType,l=t.getTargetSeries;function u(e){var s=e.uid,l=a.set(s,o&&o.get(s)||uf({plan:Ug,reset:Xg,count:qg}));l.context={model:e,ecModel:n,api:i,useClearVisual:t.isVisual&&!t.isLayout,plan:t.plan,reset:t.reset,scheduler:r},r._pipe(e,l)}t.createOnAllSeries?n.eachRawSeries(u):s?n.eachRawSeriesByType(s,u):l&&l(n,i).each(u)},t.prototype._createOverallStageTask=function(t,e,n,i){var r=this,o=e.overallTask=e.overallTask||uf({reset:Gg});o.context={ecModel:n,api:i,overallReset:t.overallReset,scheduler:r};var a=o.agentStubMap,s=o.agentStubMap=ft(),l=t.seriesType,u=t.getTargetSeries,h=!0,c=!1,p="";function d(t){var e=t.uid,n=s.set(e,a&&a.get(e)||(c=!0,uf({reset:Wg,onDirty:Yg})));n.context={model:t,overallProgress:h},n.agent=o,n.__block=h,r._pipe(t,n)}lt(!t.createOnAllSeries,p),l?n.eachRawSeriesByType(l,d):u?u(n,i).each(d):(h=!1,E(n.getSeries(),d)),c&&o.dirty()},t.prototype._pipe=function(t,e){var n=t.uid,i=this._pipelineMap.get(n);!i.head&&(i.head=e),i.tail&&i.tail.pipe(e),i.tail=e,e.__idxInPipeline=i.count++,e.__pipeline=i},t.wrapStageHandler=function(t,e){return U(t)&&(t={overallReset:t,seriesType:Kg(t)}),t.uid=fc("stageHandler"),e&&(t.visualType=e),t},t}();function Gg(t){t.overallReset(t.ecModel,t.api,t.payload)}function Wg(t){return t.overallProgress&&Hg}function Hg(){this.agent.dirty(),this.getDownstream().dirty()}function Yg(){this.agent&&this.agent.dirty()}function Ug(t){return t.plan?t.plan(t.model,t.ecModel,t.api,t.payload):null}function Xg(t){t.useClearVisual&&t.data.clearAllVisual();var e=t.resetDefines=ho(t.reset(t.model,t.ecModel,t.api,t.payload));return e.length>1?z(e,(function(t,e){return jg(e)})):Zg}var Zg=jg(0);function jg(t){return function(e,n){var i=n.data,r=n.resetDefines[t];if(r&&r.dataEach)for(var o=e.start;o<e.end;o++)r.dataEach(i,o);else r&&r.progress&&r.progress(e,i)}}function qg(t){return t.data.count()}function Kg(t){$g=null;try{t(Jg,Qg)}catch(t){}return $g}var $g,Jg={},Qg={};function ty(t,e){for(var n in e.prototype)t[n]=xt}ty(Jg,nd),ty(Qg,sd),Jg.eachSeriesByType=Jg.eachRawSeriesByType=function(t){$g=t},Jg.eachComponent=function(t){"series"===t.mainType&&t.subType&&($g=t.subType)};var ey=["#37A2DA","#32C5E9","#67E0E3","#9FE6B8","#FFDB5C","#ff9f7f","#fb7293","#E062AE","#E690D1","#e7bcf3","#9d96f5","#8378EA","#96BFFF"],ny={color:ey,colorLayer:[["#37A2DA","#ffd85c","#fd7b5f"],["#37A2DA","#67E0E3","#FFDB5C","#ff9f7f","#E062AE","#9d96f5"],["#37A2DA","#32C5E9","#9FE6B8","#FFDB5C","#ff9f7f","#fb7293","#e7bcf3","#8378EA","#96BFFF"],ey]},iy="#B9B8CE",ry="#100C2A",oy=function(){return{axisLine:{lineStyle:{color:iy}},splitLine:{lineStyle:{color:"#484753"}},splitArea:{areaStyle:{color:["rgba(255,255,255,0.02)","rgba(255,255,255,0.05)"]}},minorSplitLine:{lineStyle:{color:"#20203B"}}}},ay=["#4992ff","#7cffb2","#fddd60","#ff6e76","#58d9f9","#05c091","#ff8a45","#8d48e3","#dd79ff"],sy={darkMode:!0,color:ay,backgroundColor:ry,axisPointer:{lineStyle:{color:"#817f91"},crossStyle:{color:"#817f91"},label:{color:"#fff"}},legend:{textStyle:{color:iy}},textStyle:{color:iy},title:{textStyle:{color:"#EEF1FA"},subtextStyle:{color:"#B9B8CE"}},toolbox:{iconStyle:{borderColor:iy}},dataZoom:{borderColor:"#71708A",textStyle:{color:iy},brushStyle:{color:"rgba(135,163,206,0.3)"},handleStyle:{color:"#353450",borderColor:"#C5CBE3"},moveHandleStyle:{color:"#B0B6C3",opacity:.3},fillerColor:"rgba(135,163,206,0.2)",emphasis:{handleStyle:{borderColor:"#91B7F2",color:"#4D587D"},moveHandleStyle:{color:"#636D9A",opacity:.7}},dataBackground:{lineStyle:{color:"#71708A",width:1},areaStyle:{color:"#71708A"}},selectedDataBackground:{lineStyle:{color:"#87A3CE"},areaStyle:{color:"#87A3CE"}}},visualMap:{textStyle:{color:iy}},timeline:{lineStyle:{color:iy},label:{color:iy},controlStyle:{color:iy,borderColor:iy}},calendar:{itemStyle:{color:ry},dayLabel:{color:iy},monthLabel:{color:iy},yearLabel:{color:iy}},timeAxis:oy(),logAxis:oy(),valueAxis:oy(),categoryAxis:oy(),line:{symbol:"circle"},graph:{color:ay},gauge:{title:{color:iy},axisLine:{lineStyle:{color:[[1,"rgba(207,212,219,0.2)"]]}},axisLabel:{color:iy},detail:{color:"#EEF1FA"}},candlestick:{itemStyle:{color:"#f64e56",color0:"#54ea92",borderColor:"#f64e56",borderColor0:"#54ea92"}}};sy.categoryAxis.splitLine.show=!1;var ly=function(){function t(){}return t.prototype.normalizeQuery=function(t){var e={},n={},i={};if(X(t)){var r=No(t);e.mainType=r.main||null,e.subType=r.sub||null}else{var o=["Index","Name","Id"],a={name:1,dataIndex:1,dataType:1};E(t,(function(t,r){for(var s=!1,l=0;l<o.length;l++){var u=o[l],h=r.lastIndexOf(u);if(h>0&&h===r.length-u.length){var c=r.slice(0,h);"data"!==c&&(e.mainType=c,e[u.toLowerCase()]=t,s=!0)}}a.hasOwnProperty(r)&&(n[r]=t,s=!0),s||(i[r]=t)}))}return{cptQuery:e,dataQuery:n,otherQuery:i}},t.prototype.filter=function(t,e){var n=this.eventInfo;if(!n)return!0;var i=n.targetEl,r=n.packedEvent,o=n.model,a=n.view;if(!o||!a)return!0;var s=e.cptQuery,l=e.dataQuery;return u(s,o,"mainType")&&u(s,o,"subType")&&u(s,o,"index","componentIndex")&&u(s,o,"name")&&u(s,o,"id")&&u(l,r,"name")&&u(l,r,"dataIndex")&&u(l,r,"dataType")&&(!a.filterForExposedEvent||a.filterForExposedEvent(t,e.otherQuery,i,r));function u(t,e,n,i){return null==t[n]||e[i||n]===t[n]}},t.prototype.afterTrigger=function(){this.eventInfo=null},t}(),uy=["symbol","symbolSize","symbolRotate","symbolOffset"],hy=uy.concat(["symbolKeepAspect"]),cy={createOnAllSeries:!0,performRawSeries:!0,reset:function(t,e){var n=t.getData();if(t.legendIcon&&n.setVisual("legendIcon",t.legendIcon),t.hasSymbolVisual){for(var i={},r={},o=!1,a=0;a<uy.length;a++){var s=uy[a],l=t.get(s);U(l)?(o=!0,r[s]=l):i[s]=l}if(i.symbol=i.symbol||t.defaultSymbol,n.setVisual(A({legendIcon:t.legendIcon||i.symbol,symbolKeepAspect:t.get("symbolKeepAspect")},i)),!e.isSeriesFiltered(t)){var u=G(r);return{dataEach:o?function(e,n){for(var i=t.getRawValue(n),o=t.getDataParams(n),a=0;a<u.length;a++){var s=u[a];e.setItemVisual(n,s,r[s](i,o))}}:null}}}}},py={createOnAllSeries:!0,performRawSeries:!0,reset:function(t,e){if(t.hasSymbolVisual&&!e.isSeriesFiltered(t))return{dataEach:t.getData().hasItemOption?function(t,e){for(var n=t.getItemModel(e),i=0;i<hy.length;i++){var r=hy[i],o=n.getShallow(r,!0);null!=o&&t.setItemVisual(e,r,o)}}:null}}};function dy(t,e,n){switch(n){case"color":return t.getItemVisual(e,"style")[t.getVisual("drawType")];case"opacity":return t.getItemVisual(e,"style").opacity;case"symbol":case"symbolSize":case"liftZ":return t.getItemVisual(e,n);default:0}}function fy(t,e){switch(e){case"color":return t.getVisual("style")[t.getVisual("drawType")];case"opacity":return t.getVisual("style").opacity;case"symbol":case"symbolSize":case"liftZ":return t.getVisual(e);default:0}}function gy(t,e,n,i){switch(n){case"color":t.ensureUniqueItemVisual(e,"style")[t.getVisual("drawType")]=i,t.setItemVisual(e,"colorFromPalette",!1);break;case"opacity":t.ensureUniqueItemVisual(e,"style").opacity=i;break;case"symbol":case"symbolSize":case"liftZ":t.setItemVisual(e,n,i);break;default:0}}function yy(t,e){function n(e,n){var i=[];return e.eachComponent({mainType:"series",subType:t,query:n},(function(t){i.push(t.seriesIndex)})),i}E([[t+"ToggleSelect","toggleSelect"],[t+"Select","select"],[t+"UnSelect","unselect"]],(function(t){e(t[0],(function(e,i,r){e=A({},e),r.dispatchAction(A(e,{type:t[1],seriesIndex:n(i,e)}))}))}))}function vy(t,e,n,i,r){var o=t+e;n.isSilent(o)||i.eachComponent({mainType:"series",subType:"pie"},(function(t){for(var e=t.seriesIndex,i=t.option.selectedMap,a=r.selected,s=0;s<a.length;s++)if(a[s].seriesIndex===e){var l=t.getData(),u=wo(l,r.fromActionPayload);n.trigger(o,{type:o,seriesId:t.id,name:Y(u)?l.getName(u[0]):l.getName(u),selected:X(i)?i:A({},i)})}}))}function my(t,e,n){for(var i;t&&(!e(t)||(i=t,!n));)t=t.__hostTarget||t.parent;return i}var xy=Math.round(9*Math.random()),_y="function"==typeof Object.defineProperty,by=function(){function t(){this._id="__ec_inner_"+xy++}return t.prototype.get=function(t){return this._guard(t)[this._id]},t.prototype.set=function(t,e){var n=this._guard(t);return _y?Object.defineProperty(n,this._id,{value:e,enumerable:!1,configurable:!0}):n[this._id]=e,this},t.prototype.delete=function(t){return!!this.has(t)&&(delete this._guard(t)[this._id],!0)},t.prototype.has=function(t){return!!this._guard(t)[this._id]},t.prototype._guard=function(t){if(t!==Object(t))throw TypeError("Value of WeakMap is not a non-null object.");return t},t}(),wy=fs.extend({type:"triangle",shape:{cx:0,cy:0,width:0,height:0},buildPath:function(t,e){var n=e.cx,i=e.cy,r=e.width/2,o=e.height/2;t.moveTo(n,i-o),t.lineTo(n+r,i+o),t.lineTo(n-r,i+o),t.closePath()}}),Sy=fs.extend({type:"diamond",shape:{cx:0,cy:0,width:0,height:0},buildPath:function(t,e){var n=e.cx,i=e.cy,r=e.width/2,o=e.height/2;t.moveTo(n,i-o),t.lineTo(n+r,i),t.lineTo(n,i+o),t.lineTo(n-r,i),t.closePath()}}),My=fs.extend({type:"pin",shape:{x:0,y:0,width:0,height:0},buildPath:function(t,e){var n=e.x,i=e.y,r=e.width/5*3,o=Math.max(r,e.height),a=r/2,s=a*a/(o-a),l=i-o+a+s,u=Math.asin(s/a),h=Math.cos(u)*a,c=Math.sin(u),p=Math.cos(u),d=.6*a,f=.7*a;t.moveTo(n-h,l+s),t.arc(n,l,a,Math.PI-u,2*Math.PI+u),t.bezierCurveTo(n+h-c*d,l+s+p*d,n,i-f,n,i),t.bezierCurveTo(n,i-f,n-h+c*d,l+s+p*d,n-h,l+s),t.closePath()}}),Iy=fs.extend({type:"arrow",shape:{x:0,y:0,width:0,height:0},buildPath:function(t,e){var n=e.height,i=e.width,r=e.x,o=e.y,a=i/3*2;t.moveTo(r,o),t.lineTo(r+a,o+n),t.lineTo(r,o+n/4*3),t.lineTo(r-a,o+n),t.lineTo(r,o),t.closePath()}}),Ty={line:function(t,e,n,i,r){r.x1=t,r.y1=e+i/2,r.x2=t+n,r.y2=e+i/2},rect:function(t,e,n,i,r){r.x=t,r.y=e,r.width=n,r.height=i},roundRect:function(t,e,n,i,r){r.x=t,r.y=e,r.width=n,r.height=i,r.r=Math.min(n,i)/4},square:function(t,e,n,i,r){var o=Math.min(n,i);r.x=t,r.y=e,r.width=o,r.height=o},circle:function(t,e,n,i,r){r.cx=t+n/2,r.cy=e+i/2,r.r=Math.min(n,i)/2},diamond:function(t,e,n,i,r){r.cx=t+n/2,r.cy=e+i/2,r.width=n,r.height=i},pin:function(t,e,n,i,r){r.x=t+n/2,r.y=e+i/2,r.width=n,r.height=i},arrow:function(t,e,n,i,r){r.x=t+n/2,r.y=e+i/2,r.width=n,r.height=i},triangle:function(t,e,n,i,r){r.cx=t+n/2,r.cy=e+i/2,r.width=n,r.height=i}},Cy={};E({line:Eu,rect:Ts,roundRect:Ts,square:Ts,circle:uu,diamond:Sy,pin:My,arrow:Iy,triangle:wy},(function(t,e){Cy[e]=new t}));var Dy=fs.extend({type:"symbol",shape:{symbolType:"",x:0,y:0,width:0,height:0},calculateTextPosition:function(t,e,n){var i=yr(t,e,n),r=this.shape;return r&&"pin"===r.symbolType&&"inside"===e.position&&(i.y=n.y+.4*n.height),i},buildPath:function(t,e,n){var i=e.symbolType;if("none"!==i){var r=Cy[i];r||(r=Cy[i="rect"]),Ty[i](e.x,e.y,e.width,e.height,r.shape),r.buildPath(t,r.shape,n)}}});function Ay(t,e){if("image"!==this.type){var n=this.style;this.__isEmptyBrush?(n.stroke=t,n.fill=e||"#fff",n.lineWidth=2):"line"===this.shape.symbolType?n.stroke=t:n.fill=t,this.markRedraw()}}function ky(t,e,n,i,r,o,a){var s,l=0===t.indexOf("empty");return l&&(t=t.substr(5,1).toLowerCase()+t.substr(6)),(s=0===t.indexOf("image://")?xh(t.slice(8),new sr(e,n,i,r),a?"center":"cover"):0===t.indexOf("path://")?mh(t.slice(7),{},new sr(e,n,i,r),a?"center":"cover"):new Dy({shape:{symbolType:t,x:e,y:n,width:i,height:r}})).__isEmptyBrush=l,s.setColor=Ay,o&&s.setColor(o),s}function Ly(t){return Y(t)||(t=[+t,+t]),[t[0]||0,t[1]||0]}function Py(t,e){if(null!=t)return Y(t)||(t=[t,t]),[Er(t[0],e[0])||0,Er(rt(t[1],t[0]),e[1])||0]}function Oy(t,e,n){for(var i="radial"===e.type?function(t,e,n){var i=n.width,r=n.height,o=Math.min(i,r),a=null==e.x?.5:e.x,s=null==e.y?.5:e.y,l=null==e.r?.5:e.r;return e.global||(a=a*i+n.x,s=s*r+n.y,l*=o),t.createRadialGradient(a,s,0,a,s,l)}(t,e,n):function(t,e,n){var i=null==e.x?0:e.x,r=null==e.x2?1:e.x2,o=null==e.y?0:e.y,a=null==e.y2?0:e.y2;return e.global||(i=i*n.width+n.x,r=r*n.width+n.x,o=o*n.height+n.y,a=a*n.height+n.y),i=isNaN(i)?0:i,r=isNaN(r)?1:r,o=isNaN(o)?0:o,a=isNaN(a)?0:a,t.createLinearGradient(i,o,r,a)}(t,e,n),r=e.colorStops,o=0;o<r.length;o++)i.addColorStop(r[o].offset,r[o].color);return i}function Ry(t){return parseInt(t,10)}function Ny(t,e,n){var i=["width","height"][e],r=["clientWidth","clientHeight"][e],o=["paddingLeft","paddingTop"][e],a=["paddingRight","paddingBottom"][e];if(null!=n[i]&&"auto"!==n[i])return parseFloat(n[i]);var s=document.defaultView.getComputedStyle(t);return(t[r]||Ry(s[i])||Ry(t.style[i]))-(Ry(s[o])||0)-(Ry(s[a])||0)|0}function Ey(t){var e,n,i=t.style,r=i.lineDash&&i.lineWidth>0&&(e=i.lineDash,n=i.lineWidth,e&&"solid"!==e&&n>0?"dashed"===e?[4*n,2*n]:"dotted"===e?[n]:j(e)?[e]:Y(e)?e:null:null),o=i.lineDashOffset;if(r){var a=i.strokeNoScale&&t.getLineScale?t.getLineScale():1;a&&1!==a&&(r=z(r,(function(t){return t/a})),o/=a)}return[r,o]}var zy=new ja(!0);function Vy(t){var e=t.stroke;return!(null==e||"none"===e||!(t.lineWidth>0))}function By(t){return"string"==typeof t&&"none"!==t}function Fy(t){var e=t.fill;return null!=e&&"none"!==e}function Gy(t,e){if(null!=e.fillOpacity&&1!==e.fillOpacity){var n=t.globalAlpha;t.globalAlpha=e.fillOpacity*e.opacity,t.fill(),t.globalAlpha=n}else t.fill()}function Wy(t,e){if(null!=e.strokeOpacity&&1!==e.strokeOpacity){var n=t.globalAlpha;t.globalAlpha=e.strokeOpacity*e.opacity,t.stroke(),t.globalAlpha=n}else t.stroke()}function Hy(t,e,n){var i=Zo(e.image,e.__image,n);if(qo(i)){var r=t.createPattern(i,e.repeat||"repeat");if("function"==typeof DOMMatrix&&r&&r.setTransform){var o=new DOMMatrix;o.translateSelf(e.x||0,e.y||0),o.rotateSelf(0,0,(e.rotation||0)*_t),o.scaleSelf(e.scaleX||1,e.scaleY||1),r.setTransform(o)}return r}}var Yy=["shadowBlur","shadowOffsetX","shadowOffsetY"],Uy=[["lineCap","butt"],["lineJoin","miter"],["miterLimit",10]];function Xy(t,e,n,i,r){var o=!1;if(!i&&e===(n=n||{}))return!1;if(i||e.opacity!==n.opacity){qy(t,r),o=!0;var a=Math.max(Math.min(e.opacity,1),0);t.globalAlpha=isNaN(a)?ua.opacity:a}(i||e.blend!==n.blend)&&(o||(qy(t,r),o=!0),t.globalCompositeOperation=e.blend||ua.blend);for(var s=0;s<Yy.length;s++){var l=Yy[s];(i||e[l]!==n[l])&&(o||(qy(t,r),o=!0),t[l]=t.dpr*(e[l]||0))}return(i||e.shadowColor!==n.shadowColor)&&(o||(qy(t,r),o=!0),t.shadowColor=e.shadowColor||ua.shadowColor),o}function Zy(t,e,n,i,r){var o=Ky(e,r.inHover),a=i?null:n&&Ky(n,r.inHover)||{};if(o===a)return!1;var s=Xy(t,o,a,i,r);if((i||o.fill!==a.fill)&&(s||(qy(t,r),s=!0),By(o.fill)&&(t.fillStyle=o.fill)),(i||o.stroke!==a.stroke)&&(s||(qy(t,r),s=!0),By(o.stroke)&&(t.strokeStyle=o.stroke)),(i||o.opacity!==a.opacity)&&(s||(qy(t,r),s=!0),t.globalAlpha=null==o.opacity?1:o.opacity),e.hasStroke()){var l=o.lineWidth/(o.strokeNoScale&&e.getLineScale?e.getLineScale():1);t.lineWidth!==l&&(s||(qy(t,r),s=!0),t.lineWidth=l)}for(var u=0;u<Uy.length;u++){var h=Uy[u],c=h[0];(i||o[c]!==a[c])&&(s||(qy(t,r),s=!0),t[c]=o[c]||h[1])}return s}function jy(t,e){var n=e.transform,i=t.dpr||1;n?t.setTransform(i*n[0],i*n[1],i*n[2],i*n[3],i*n[4],i*n[5]):t.setTransform(i,0,0,i,0,0)}function qy(t,e){e.batchFill&&t.fill(),e.batchStroke&&t.stroke(),e.batchFill="",e.batchStroke=""}function Ky(t,e){return e&&t.__hoverStyle||t.style}function $y(t,e){Jy(t,e,{inHover:!1,viewWidth:0,viewHeight:0},!0)}function Jy(t,e,n,i){var r=e.transform;if(!e.shouldBePainted(n.viewWidth,n.viewHeight,!1,!1))return e.__dirty&=-2,void(e.__isRendered=!1);var o=e.__clipPaths,s=n.prevElClipPaths,l=!1,u=!1;if(s&&!function(t,e){if(t===e||!t&&!e)return!1;if(!t||!e||t.length!==e.length)return!0;for(var n=0;n<t.length;n++)if(t[n]!==e[n])return!0;return!1}(o,s)||(s&&s.length&&(qy(t,n),t.restore(),u=l=!0,n.prevElClipPaths=null,n.allClipped=!1,n.prevEl=null),o&&o.length&&(qy(t,n),t.save(),function(t,e,n){for(var i=!1,r=0;r<t.length;r++){var o=t[r];i=i||o.isZeroArea(),jy(e,o),e.beginPath(),o.buildPath(e,o.shape),e.clip()}n.allClipped=i}(o,t,n),l=!0),n.prevElClipPaths=o),n.allClipped)e.__isRendered=!1;else{e.beforeBrush&&e.beforeBrush(),e.innerBeforeBrush();var h=n.prevEl;h||(u=l=!0);var c,p,d=e instanceof fs&&e.autoBatch&&function(t){var e=Fy(t),n=Vy(t);return!(t.lineDash||!(+e^+n)||e&&"string"!=typeof t.fill||n&&"string"!=typeof t.stroke||t.strokePercent<1||t.strokeOpacity<1||t.fillOpacity<1)}(e.style);l||(c=r,p=h.transform,c&&p?c[0]!==p[0]||c[1]!==p[1]||c[2]!==p[2]||c[3]!==p[3]||c[4]!==p[4]||c[5]!==p[5]:c||p)?(qy(t,n),jy(t,e)):d||qy(t,n);var f=Ky(e,n.inHover);e instanceof fs?(1!==n.lastDrawType&&(u=!0,n.lastDrawType=1),Zy(t,e,h,u,n),d&&(n.batchFill||n.batchStroke)||t.beginPath(),function(t,e,n,i){var r,o=Vy(n),a=Fy(n),s=n.strokePercent,l=s<1,u=!e.path;e.silent&&!l||!u||e.createPathProxy();var h=e.path||zy,c=e.__dirty;if(!i){var p=n.fill,d=n.stroke,f=a&&!!p.colorStops,g=o&&!!d.colorStops,y=a&&!!p.image,v=o&&!!d.image,m=void 0,x=void 0,_=void 0,b=void 0,w=void 0;(f||g)&&(w=e.getBoundingRect()),f&&(m=c?Oy(t,p,w):e.__canvasFillGradient,e.__canvasFillGradient=m),g&&(x=c?Oy(t,d,w):e.__canvasStrokeGradient,e.__canvasStrokeGradient=x),y&&(_=c||!e.__canvasFillPattern?Hy(t,p,e):e.__canvasFillPattern,e.__canvasFillPattern=_),v&&(b=c||!e.__canvasStrokePattern?Hy(t,d,e):e.__canvasStrokePattern,e.__canvasStrokePattern=_),f?t.fillStyle=m:y&&(_?t.fillStyle=_:a=!1),g?t.strokeStyle=x:v&&(b?t.strokeStyle=b:o=!1)}var S,M,I=e.getGlobalScale();h.setScale(I[0],I[1],e.segmentIgnoreThreshold),t.setLineDash&&n.lineDash&&(S=(r=Ey(e))[0],M=r[1]);var T=!0;(u||4&c)&&(h.setDPR(t.dpr),l?h.setContext(null):(h.setContext(t),T=!1),h.reset(),e.buildPath(h,e.shape,i),h.toStatic(),e.pathUpdated()),T&&h.rebuildPath(t,l?s:1),S&&(t.setLineDash(S),t.lineDashOffset=M),i||(n.strokeFirst?(o&&Wy(t,n),a&&Gy(t,n)):(a&&Gy(t,n),o&&Wy(t,n))),S&&t.setLineDash([])}(t,e,f,d),d&&(n.batchFill=f.fill||"",n.batchStroke=f.stroke||"")):e instanceof ys?(3!==n.lastDrawType&&(u=!0,n.lastDrawType=3),Zy(t,e,h,u,n),function(t,e,n){var i,r=n.text;if(null!=r&&(r+=""),r){t.font=n.font||a,t.textAlign=n.textAlign,t.textBaseline=n.textBaseline;var o=void 0,s=void 0;t.setLineDash&&n.lineDash&&(o=(i=Ey(e))[0],s=i[1]),o&&(t.setLineDash(o),t.lineDashOffset=s),n.strokeFirst?(Vy(n)&&t.strokeText(r,n.x,n.y),Fy(n)&&t.fillText(r,n.x,n.y)):(Fy(n)&&t.fillText(r,n.x,n.y),Vy(n)&&t.strokeText(r,n.x,n.y)),o&&t.setLineDash([])}}(t,e,f)):e instanceof xs?(2!==n.lastDrawType&&(u=!0,n.lastDrawType=2),function(t,e,n,i,r){Xy(t,Ky(e,r.inHover),n&&Ky(n,r.inHover),i,r)}(t,e,h,u,n),function(t,e,n){var i=e.__image=Zo(n.image,e.__image,e,e.onload);if(i&&qo(i)){var r=n.x||0,o=n.y||0,a=e.getWidth(),s=e.getHeight(),l=i.width/i.height;if(null==a&&null!=s?a=s*l:null==s&&null!=a?s=a/l:null==a&&null==s&&(a=i.width,s=i.height),n.sWidth&&n.sHeight){var u=n.sx||0,h=n.sy||0;t.drawImage(i,u,h,n.sWidth,n.sHeight,r,o,a,s)}else if(n.sx&&n.sy){var c=a-(u=n.sx),p=s-(h=n.sy);t.drawImage(i,u,h,c,p,r,o,a,s)}else t.drawImage(i,r,o,a,s)}}(t,e,f)):e.getTemporalDisplayables&&(4!==n.lastDrawType&&(u=!0,n.lastDrawType=4),function(t,e,n){var i=e.getDisplayables(),r=e.getTemporalDisplayables();t.save();var o,a,s={prevElClipPaths:null,prevEl:null,allClipped:!1,viewWidth:n.viewWidth,viewHeight:n.viewHeight,inHover:n.inHover};for(o=e.getCursor(),a=i.length;o<a;o++){(h=i[o]).beforeBrush&&h.beforeBrush(),h.innerBeforeBrush(),Jy(t,h,s,o===a-1),h.innerAfterBrush(),h.afterBrush&&h.afterBrush(),s.prevEl=h}for(var l=0,u=r.length;l<u;l++){var h;(h=r[l]).beforeBrush&&h.beforeBrush(),h.innerBeforeBrush(),Jy(t,h,s,l===u-1),h.innerAfterBrush(),h.afterBrush&&h.afterBrush(),s.prevEl=h}e.clearTemporalDisplayables(),e.notClear=!0,t.restore()}(t,e,n)),d&&i&&qy(t,n),e.innerAfterBrush(),e.afterBrush&&e.afterBrush(),n.prevEl=e,e.__dirty=0,e.__isRendered=!0}}var Qy=new by,tv=new ln(100),ev=["symbol","symbolSize","symbolKeepAspect","color","backgroundColor","dashArrayX","dashArrayY","maxTileWidth","maxTileHeight"];function nv(t,e){if("none"===t)return null;var n=e.getDevicePixelRatio(),i=e.getZr(),r="svg"===i.painter.type;t.dirty&&Qy.delete(t);var o=Qy.get(t);if(o)return o;var a=k(t,{symbol:"rect",symbolSize:1,symbolKeepAspect:!0,color:"rgba(0, 0, 0, 0.2)",backgroundColor:null,dashArrayX:5,dashArrayY:5,rotation:0,maxTileWidth:512,maxTileHeight:512});"none"===a.backgroundColor&&(a.backgroundColor=null);var s={repeat:"repeat"};return function(t){for(var e,o=[n],s=!0,l=0;l<ev.length;++l){var u=a[ev[l]];if(null!=u&&!Y(u)&&!X(u)&&!j(u)&&"boolean"!=typeof u){s=!1;break}o.push(u)}if(s){e=o.join(",")+(r?"-svg":"");var c=tv.get(e);c&&(r?t.svgElement=c:t.image=c)}var p,d=rv(a.dashArrayX),f=function(t){if(!t||"object"==typeof t&&0===t.length)return[0,0];if(j(t)){var e=Math.ceil(t);return[e,e]}var n=z(t,(function(t){return Math.ceil(t)}));return t.length%2?n.concat(n):n}(a.dashArrayY),g=iv(a.symbol),y=(b=d,z(b,(function(t){return ov(t)}))),v=ov(f),m=!r&&h.createCanvas(),x=r&&{tag:"g",attrs:{},key:"dcl",children:[]},_=function(){for(var t=1,e=0,n=y.length;e<n;++e)t=ro(t,y[e]);var i=1;for(e=0,n=g.length;e<n;++e)i=ro(i,g[e].length);t*=i;var r=v*y.length*g.length;return{width:Math.max(1,Math.min(t,a.maxTileWidth)),height:Math.max(1,Math.min(r,a.maxTileHeight))}}();var b;m&&(m.width=_.width*n,m.height=_.height*n,p=m.getContext("2d"));(function(){p&&(p.clearRect(0,0,m.width,m.height),a.backgroundColor&&(p.fillStyle=a.backgroundColor,p.fillRect(0,0,m.width,m.height)));for(var t=0,e=0;e<f.length;++e)t+=f[e];if(t<=0)return;var o=-v,s=0,l=0,u=0;for(;o<_.height;){if(s%2==0){for(var h=l/2%g.length,c=0,y=0,b=0;c<2*_.width;){var w=0;for(e=0;e<d[u].length;++e)w+=d[u][e];if(w<=0)break;if(y%2==0){var S=.5*(1-a.symbolSize),M=c+d[u][y]*S,I=o+f[s]*S,T=d[u][y]*a.symbolSize,C=f[s]*a.symbolSize,D=b/2%g[h].length;A(M,I,T,C,g[h][D])}c+=d[u][y],++b,++y===d[u].length&&(y=0)}++u===d.length&&(u=0)}o+=f[s],++l,++s===f.length&&(s=0)}function A(t,e,o,s,l){var u=r?1:n,h=ky(l,t*u,e*u,o*u,s*u,a.color,a.symbolKeepAspect);if(r){var c=i.painter.renderOneToVNode(h);c&&x.children.push(c)}else $y(p,h)}})(),s&&tv.put(e,m||x);t.image=m,t.svgElement=x,t.svgWidth=_.width,t.svgHeight=_.height}(s),s.rotation=a.rotation,s.scaleX=s.scaleY=r?1:1/n,Qy.set(t,s),t.dirty=!1,s}function iv(t){if(!t||0===t.length)return[["rect"]];if(X(t))return[[t]];for(var e=!0,n=0;n<t.length;++n)if(!X(t[n])){e=!1;break}if(e)return iv([t]);var i=[];for(n=0;n<t.length;++n)X(t[n])?i.push([t[n]]):i.push(t[n]);return i}function rv(t){if(!t||0===t.length)return[[0,0]];if(j(t))return[[r=Math.ceil(t),r]];for(var e=!0,n=0;n<t.length;++n)if(!j(t[n])){e=!1;break}if(e)return rv([t]);var i=[];for(n=0;n<t.length;++n)if(j(t[n])){var r=Math.ceil(t[n]);i.push([r,r])}else{(r=z(t[n],(function(t){return Math.ceil(t)}))).length%2==1?i.push(r.concat(r)):i.push(r)}return i}function ov(t){for(var e=0,n=0;n<t.length;++n)e+=t[n];return t.length%2==1?2*e:e}var av=new Xt,sv={};function lv(t){return sv[t]}var uv="undefined"!=typeof window,hv=2e3,cv=4500,pv={PROCESSOR:{FILTER:1e3,SERIES_FILTER:800,STATISTIC:5e3},VISUAL:{LAYOUT:1e3,PROGRESSIVE_LAYOUT:1100,GLOBAL:hv,CHART:3e3,POST_CHART_LAYOUT:4600,COMPONENT:4e3,BRUSH:5e3,CHART_ITEM:cv,ARIA:6e3,DECAL:7e3}},dv=/^[a-zA-Z0-9_]+$/,fv="__connectUpdateStatus";function gv(t){return function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];if(!this.isDisposed())return vv(this,t,e);Gv(this.id)}}function yv(t){return function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return vv(this,t,e)}}function vv(t,e,n){return n[0]=n[0]&&n[0].toLowerCase(),Xt.prototype[e].apply(t,n)}var mv,xv,_v,bv,wv,Sv,Mv,Iv,Tv,Cv,Dv,Av,kv,Lv,Pv,Ov,Rv,Nv,Ev=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e}(Xt),zv=Ev.prototype;zv.on=yv("on"),zv.off=yv("off");var Vv=function(t){function e(e,n,i){var r=t.call(this,new ly)||this;r._chartsViews=[],r._chartsMap={},r._componentsViews=[],r._componentsMap={},r._pendingActions=[],i=i||{},X(n)&&(n=Zv[n]),r._dom=e;var o="canvas",a=!1,s=r._zr=Lr(e,{renderer:i.renderer||o,devicePixelRatio:i.devicePixelRatio,width:i.width,height:i.height,ssr:i.ssr,useDirtyRect:null==i.useDirtyRect?a:i.useDirtyRect});r._ssr=i.ssr,r._throttledZrFlush=Cg(W(s.flush,s),17),(n=T(n))&&Pd(n,!0),r._theme=n,r._locale=function(t){if(X(t)){var e=xc[t.toUpperCase()]||{};return t===yc||t===vc?T(e):C(T(e),T(xc.EN),!1)}return C(T(t),T(xc.EN),!1)}(i.locale||bc),r._coordSysMgr=new ud;var l=r._api=Pv(r);function u(t,e){return t.__prio-e.__prio}return Ie(Xv,u),Ie(Yv,u),r._scheduler=new Fg(r,l,Yv,Xv),r._messageCenter=new Ev,r._initEvents(),r.resize=W(r.resize,r),s.animation.on("frame",r._onframe,r),Cv(s,r),Dv(s,r),ct(r),r}return n(e,t),e.prototype._onframe=function(){if(!this._disposed){Nv(this);var t=this._scheduler;if(this.__pendingUpdate){var e=this.__pendingUpdate.silent;this.__flagInMainProcess=!0;try{mv(this),bv.update.call(this,null,this.__pendingUpdate.updateParams)}catch(t){throw this.__flagInMainProcess=!1,this.__pendingUpdate=null,t}this._zr.flush(),this.__flagInMainProcess=!1,this.__pendingUpdate=null,Iv.call(this,e),Tv.call(this,e)}else if(t.unfinished){var n=1,i=this._model,r=this._api;t.unfinished=!1;do{var o=+new Date;t.performSeriesTasks(i),t.performDataProcessorTasks(i),Sv(this,i),t.performVisualTasks(i),Lv(this,this._model,r,"remain",{}),n-=+new Date-o}while(n>0&&t.unfinished);t.unfinished||this._zr.flush()}}},e.prototype.getDom=function(){return this._dom},e.prototype.getId=function(){return this.id},e.prototype.getZr=function(){return this._zr},e.prototype.isSSR=function(){return this._ssr},e.prototype.setOption=function(t,e,n){if(!this.__flagInMainProcess)if(this._disposed)Gv(this.id);else{var i,r,o;if(q(e)&&(n=e.lazyUpdate,i=e.silent,r=e.replaceMerge,o=e.transition,e=e.notMerge),this.__flagInMainProcess=!0,!this._model||e){var a=new cd(this._api),s=this._theme,l=this._model=new nd;l.scheduler=this._scheduler,l.ssr=this._ssr,l.init(null,null,null,s,this._locale,a)}this._model.setOption(t,{replaceMerge:r},Uv);var u={seriesTransition:o,optionChanged:!0};if(n)this.__pendingUpdate={silent:i,updateParams:u},this.__flagInMainProcess=!1,this.getZr().wakeUp();else{try{mv(this),bv.update.call(this,null,u)}catch(t){throw this.__pendingUpdate=null,this.__flagInMainProcess=!1,t}this._ssr||this._zr.flush(),this.__pendingUpdate=null,this.__flagInMainProcess=!1,Iv.call(this,i),Tv.call(this,i)}}},e.prototype.setTheme=function(){oo()},e.prototype.getModel=function(){return this._model},e.prototype.getOption=function(){return this._model&&this._model.getOption()},e.prototype.getWidth=function(){return this._zr.getWidth()},e.prototype.getHeight=function(){return this._zr.getHeight()},e.prototype.getDevicePixelRatio=function(){return this._zr.painter.dpr||uv&&window.devicePixelRatio||1},e.prototype.getRenderedCanvas=function(t){return this.renderToCanvas(t)},e.prototype.renderToCanvas=function(t){t=t||{};var e=this._zr.painter;return e.getRenderedCanvas({backgroundColor:t.backgroundColor||this._model.get("backgroundColor"),pixelRatio:t.pixelRatio||this.getDevicePixelRatio()})},e.prototype.renderToSVGString=function(t){t=t||{};var e=this._zr.painter;return e.renderToString({useViewBox:t.useViewBox})},e.prototype.getSvgDataURL=function(){if(r.svgSupported){var t=this._zr;return E(t.storage.getDisplayList(),(function(t){t.stopAnimation(null,!0)})),t.painter.toDataURL()}},e.prototype.getDataURL=function(t){if(!this._disposed){var e=(t=t||{}).excludeComponents,n=this._model,i=[],r=this;E(e,(function(t){n.eachComponent({mainType:t},(function(t){var e=r._componentsMap[t.__viewId];e.group.ignore||(i.push(e),e.group.ignore=!0)}))}));var o="svg"===this._zr.painter.getType()?this.getSvgDataURL():this.renderToCanvas(t).toDataURL("image/"+(t&&t.type||"png"));return E(i,(function(t){t.group.ignore=!1})),o}Gv(this.id)},e.prototype.getConnectedDataURL=function(t){if(!this._disposed){var e="svg"===t.type,n=this.group,i=Math.min,r=Math.max,o=1/0;if(Kv[n]){var a=o,s=o,l=-1/0,u=-1/0,c=[],p=t&&t.pixelRatio||this.getDevicePixelRatio();E(qv,(function(o,h){if(o.group===n){var p=e?o.getZr().painter.getSvgDom().innerHTML:o.renderToCanvas(T(t)),d=o.getDom().getBoundingClientRect();a=i(d.left,a),s=i(d.top,s),l=r(d.right,l),u=r(d.bottom,u),c.push({dom:p,left:d.left,top:d.top})}}));var d=(l*=p)-(a*=p),f=(u*=p)-(s*=p),g=h.createCanvas(),y=Lr(g,{renderer:e?"svg":"canvas"});if(y.resize({width:d,height:f}),e){var v="";return E(c,(function(t){var e=t.left-a,n=t.top-s;v+='<g transform="translate('+e+","+n+')">'+t.dom+"</g>"})),y.painter.getSvgRoot().innerHTML=v,t.connectedBackgroundColor&&y.painter.setBackgroundColor(t.connectedBackgroundColor),y.refreshImmediately(),y.painter.toDataURL()}return t.connectedBackgroundColor&&y.add(new Ts({shape:{x:0,y:0,width:d,height:f},style:{fill:t.connectedBackgroundColor}})),E(c,(function(t){var e=new xs({style:{x:t.left*p-a,y:t.top*p-s,image:t.dom}});y.add(e)})),y.refreshImmediately(),g.toDataURL("image/"+(t&&t.type||"png"))}return this.getDataURL(t)}Gv(this.id)},e.prototype.convertToPixel=function(t,e){return wv(this,"convertToPixel",t,e)},e.prototype.convertFromPixel=function(t,e){return wv(this,"convertFromPixel",t,e)},e.prototype.containPixel=function(t,e){var n;if(!this._disposed)return E(Io(this._model,t),(function(t,i){i.indexOf("Models")>=0&&E(t,(function(t){var r=t.coordinateSystem;if(r&&r.containPoint)n=n||!!r.containPoint(e);else if("seriesModels"===i){var o=this._chartsMap[t.__viewId];o&&o.containPoint&&(n=n||o.containPoint(e,t))}else 0}),this)}),this),!!n;Gv(this.id)},e.prototype.getVisual=function(t,e){var n=Io(this._model,t,{defaultMainType:"series"}),i=n.seriesModel;var r=i.getData(),o=n.hasOwnProperty("dataIndexInside")?n.dataIndexInside:n.hasOwnProperty("dataIndex")?r.indexOfRawIndex(n.dataIndex):null;return null!=o?dy(r,o,e):fy(r,e)},e.prototype.getViewOfComponentModel=function(t){return this._componentsMap[t.__viewId]},e.prototype.getViewOfSeriesModel=function(t){return this._chartsMap[t.__viewId]},e.prototype._initEvents=function(){var t,e,n,i=this;E(Fv,(function(t){var e=function(e){var n,r=i.getModel(),o=e.target,a="globalout"===t;if(a?n={}:o&&my(o,(function(t){var e=Ws(t);if(e&&null!=e.dataIndex){var i=e.dataModel||r.getSeriesByIndex(e.seriesIndex);return n=i&&i.getDataParams(e.dataIndex,e.dataType)||{},!0}if(e.eventData)return n=A({},e.eventData),!0}),!0),n){var s=n.componentType,l=n.componentIndex;"markLine"!==s&&"markPoint"!==s&&"markArea"!==s||(s="series",l=n.seriesIndex);var u=s&&null!=l&&r.getComponent(s,l),h=u&&i["series"===u.mainType?"_chartsMap":"_componentsMap"][u.__viewId];0,n.event=e,n.type=t,i._$eventProcessor.eventInfo={targetEl:o,packedEvent:n,model:u,view:h},i.trigger(t,n)}};e.zrEventfulCallAtLast=!0,i._zr.on(t,e,i)})),E(Hv,(function(t,e){i._messageCenter.on(e,(function(t){this.trigger(e,t)}),i)})),E(["selectchanged"],(function(t){i._messageCenter.on(t,(function(e){this.trigger(t,e)}),i)})),t=this._messageCenter,e=this,n=this._api,t.on("selectchanged",(function(t){var i=n.getModel();t.isFromClick?(vy("map","selectchanged",e,i,t),vy("pie","selectchanged",e,i,t)):"select"===t.fromAction?(vy("map","selected",e,i,t),vy("pie","selected",e,i,t)):"unselect"===t.fromAction&&(vy("map","unselected",e,i,t),vy("pie","unselected",e,i,t))}))},e.prototype.isDisposed=function(){return this._disposed},e.prototype.clear=function(){this._disposed?Gv(this.id):this.setOption({series:[]},!0)},e.prototype.dispose=function(){if(this._disposed)Gv(this.id);else{this._disposed=!0,this.getDom()&&ko(this.getDom(),Qv,"");var t=this,e=t._api,n=t._model;E(t._componentsViews,(function(t){t.dispose(n,e)})),E(t._chartsViews,(function(t){t.dispose(n,e)})),t._zr.dispose(),t._dom=t._model=t._chartsMap=t._componentsMap=t._chartsViews=t._componentsViews=t._scheduler=t._api=t._zr=t._throttledZrFlush=t._theme=t._coordSysMgr=t._messageCenter=null,delete qv[t.id]}},e.prototype.resize=function(t){if(!this.__flagInMainProcess)if(this._disposed)Gv(this.id);else{this._zr.resize(t);var e=this._model;if(this._loadingFX&&this._loadingFX.resize(),e){var n=e.resetOption("media"),i=t&&t.silent;this.__pendingUpdate&&(null==i&&(i=this.__pendingUpdate.silent),n=!0,this.__pendingUpdate=null),this.__flagInMainProcess=!0;try{n&&mv(this),bv.update.call(this,{type:"resize",animation:A({duration:0},t&&t.animation)})}catch(t){throw this.__flagInMainProcess=!1,t}this.__flagInMainProcess=!1,Iv.call(this,i),Tv.call(this,i)}}},e.prototype.showLoading=function(t,e){if(this._disposed)Gv(this.id);else if(q(t)&&(e=t,t=""),t=t||"default",this.hideLoading(),jv[t]){var n=jv[t](this._api,e),i=this._zr;this._loadingFX=n,i.add(n)}},e.prototype.hideLoading=function(){this._disposed?Gv(this.id):(this._loadingFX&&this._zr.remove(this._loadingFX),this._loadingFX=null)},e.prototype.makeActionFromEvent=function(t){var e=A({},t);return e.type=Hv[t.type],e},e.prototype.dispatchAction=function(t,e){if(this._disposed)Gv(this.id);else if(q(e)||(e={silent:!!e}),Wv[t.type]&&this._model)if(this.__flagInMainProcess)this._pendingActions.push(t);else{var n=e.silent;Mv.call(this,t,n);var i=e.flush;i?this._zr.flush():!1!==i&&r.browser.weChat&&this._throttledZrFlush(),Iv.call(this,n),Tv.call(this,n)}},e.prototype.updateLabelLayout=function(){av.trigger("series:layoutlabels",this._model,this._api,{updatedSeries:[]})},e.prototype.appendData=function(t){if(this._disposed)Gv(this.id);else{var e=t.seriesIndex,n=this.getModel().getSeriesByIndex(e);0,n.appendData(t),this._scheduler.unfinished=!0,this.getZr().wakeUp()}},e.internalField=function(){function t(t){t.clearColorPalette(),t.eachSeries((function(t){t.clearColorPalette()}))}function e(t){for(var e=[],n=t.currentStates,i=0;i<n.length;i++){var r=n[i];"emphasis"!==r&&"blur"!==r&&"select"!==r&&e.push(r)}t.selected&&t.states.select&&e.push("select"),2===t.hoverState&&t.states.emphasis?e.push("emphasis"):1===t.hoverState&&t.states.blur&&e.push("blur"),t.useStates(e)}function i(t,e){if(!t.preventAutoZ){var n=t.get("z")||0,i=t.get("zlevel")||0;e.eachRendered((function(t){return o(t,n,i,-1/0),!0}))}}function o(t,e,n,i){var r=t.getTextContent(),a=t.getTextGuideLine();if(t.isGroup)for(var s=t.childrenRef(),l=0;l<s.length;l++)i=Math.max(o(s[l],e,n,i),i);else t.z=e,t.zlevel=n,i=Math.max(t.z2,i);if(r&&(r.z=e,r.zlevel=n,isFinite(i)&&(r.z2=i+2)),a){var u=t.textGuideLineConfig;a.z=e,a.zlevel=n,isFinite(i)&&(a.z2=i+(u&&u.showAbove?1:-1))}return i}function a(t,e){e.eachRendered((function(t){if(!oh(t)){var e=t.getTextContent(),n=t.getTextGuideLine();t.stateTransition&&(t.stateTransition=null),e&&e.stateTransition&&(e.stateTransition=null),n&&n.stateTransition&&(n.stateTransition=null),t.hasState()?(t.prevStates=t.currentStates,t.clearStates()):t.prevStates&&(t.prevStates=null)}}))}function s(t,n){var i=t.getModel("stateAnimation"),r=t.isAnimationEnabled(),o=i.get("duration"),a=o>0?{duration:o,delay:i.get("delay"),easing:i.get("easing")}:null;n.eachRendered((function(t){if(t.states&&t.states.emphasis){if(oh(t))return;if(t instanceof fs&&function(t){var e=Xs(t);e.normalFill=t.style.fill,e.normalStroke=t.style.stroke;var n=t.states.select||{};e.selectFill=n.style&&n.style.fill||null,e.selectStroke=n.style&&n.style.stroke||null}(t),t.__dirty){var n=t.prevStates;n&&t.useStates(n)}if(r){t.stateTransition=a;var i=t.getTextContent(),o=t.getTextGuideLine();i&&(i.stateTransition=a),o&&(o.stateTransition=a)}t.__dirty&&e(t)}}))}mv=function(t){var e=t._scheduler;e.restorePipelines(t._model),e.prepareStageTasks(),xv(t,!0),xv(t,!1),e.plan()},xv=function(t,e){for(var n=t._model,i=t._scheduler,r=e?t._componentsViews:t._chartsViews,o=e?t._componentsMap:t._chartsMap,a=t._zr,s=t._api,l=0;l<r.length;l++)r[l].__alive=!1;function u(t){var l=t.__requireNewView;t.__requireNewView=!1;var u="_ec_"+t.id+"_"+t.type,h=!l&&o[u];if(!h){var c=No(t.type),p=e?fg.getClass(c.main,c.sub):mg.getClass(c.sub);0,(h=new p).init(n,s),o[u]=h,r.push(h),a.add(h.group)}t.__viewId=h.__id=u,h.__alive=!0,h.__model=t,h.group.__ecComponentInfo={mainType:t.mainType,index:t.componentIndex},!e&&i.prepareView(h,t,n,s)}e?n.eachComponent((function(t,e){"series"!==t&&u(e)})):n.eachSeries(u);for(l=0;l<r.length;){var h=r[l];h.__alive?l++:(!e&&h.renderTask.dispose(),a.remove(h.group),h.dispose(n,s),r.splice(l,1),o[h.__id]===h&&delete o[h.__id],h.__id=h.group.__ecComponentInfo=null)}},_v=function(t,e,n,i,r){var o=t._model;if(o.setUpdatePayload(n),i){var a={};a[i+"Id"]=n[i+"Id"],a[i+"Index"]=n[i+"Index"],a[i+"Name"]=n[i+"Name"];var s={mainType:i,query:a};r&&(s.subType=r);var l,u=n.excludeSeriesId;null!=u&&(l=ft(),E(ho(u),(function(t){var e=xo(t,null);null!=e&&l.set(e,!0)}))),o&&o.eachComponent(s,(function(e){if(!(l&&null!==l.get(e.id)))if(Gl(n))if(e instanceof ag)n.type!==$s||n.notBlur||e.get(["emphasis","disabled"])||function(t,e,n){var i=t.seriesIndex,r=t.getData(e.dataType);if(r){var o=wo(r,e);o=(Y(o)?o[0]:o)||0;var a=r.getItemGraphicEl(o);if(!a)for(var s=r.count(),l=0;!a&&l<s;)a=r.getItemGraphicEl(l++);if(a){var u=Ws(a);Cl(i,u.focus,u.blurScope,n)}else{var h=t.get(["emphasis","focus"]),c=t.get(["emphasis","blurScope"]);null!=h&&Cl(i,h,c,n)}}}(e,n,t._api);else{var i=Al(e.mainType,e.componentIndex,n.name,t._api),r=i.focusSelf,o=i.dispatchers;n.type===$s&&r&&!n.notBlur&&Dl(e.mainType,e.componentIndex,t._api),o&&E(o,(function(t){n.type===$s?xl(t):_l(t)}))}else Fl(n)&&e instanceof ag&&(!function(t,e,n){if(Fl(e)){var i=e.dataType,r=wo(t.getData(i),e);Y(r)||(r=[r]),t[e.type===el?"toggleSelect":e.type===Qs?"select":"unselect"](r,i)}}(e,n,t._api),kl(e),Rv(t))}),t),o&&o.eachComponent(s,(function(e){l&&null!==l.get(e.id)||h(t["series"===i?"_chartsMap":"_componentsMap"][e.__viewId])}),t)}else E([].concat(t._componentsViews).concat(t._chartsViews),h);function h(i){i&&i.__alive&&i[e]&&i[e](i.__model,o,t._api,n)}},bv={prepareAndUpdate:function(t){mv(this),bv.update.call(this,t,{optionChanged:null!=t.newOption})},update:function(e,n){var i=this._model,r=this._api,o=this._zr,a=this._coordSysMgr,s=this._scheduler;if(i){i.setUpdatePayload(e),s.restoreData(i,e),s.performSeriesTasks(i),a.create(i,r),s.performDataProcessorTasks(i,e),Sv(this,i),a.update(i,r),t(i),s.performVisualTasks(i,e),Av(this,i,r,e,n);var l=i.get("backgroundColor")||"transparent",u=i.get("darkMode");o.setBackgroundColor(l),null!=u&&"auto"!==u&&o.setDarkMode(u),av.trigger("afterupdate",i,r)}},updateTransform:function(e){var n=this,i=this._model,r=this._api;if(i){i.setUpdatePayload(e);var o=[];i.eachComponent((function(t,a){if("series"!==t){var s=n.getViewOfComponentModel(a);if(s&&s.__alive)if(s.updateTransform){var l=s.updateTransform(a,i,r,e);l&&l.update&&o.push(s)}else o.push(s)}}));var a=ft();i.eachSeries((function(t){var o=n._chartsMap[t.__viewId];if(o.updateTransform){var s=o.updateTransform(t,i,r,e);s&&s.update&&a.set(t.uid,1)}else a.set(t.uid,1)})),t(i),this._scheduler.performVisualTasks(i,e,{setDirty:!0,dirtyMap:a}),Lv(this,i,r,e,{},a),av.trigger("afterupdate",i,r)}},updateView:function(e){var n=this._model;n&&(n.setUpdatePayload(e),mg.markUpdateMethod(e,"updateView"),t(n),this._scheduler.performVisualTasks(n,e,{setDirty:!0}),Av(this,n,this._api,e,{}),av.trigger("afterupdate",n,this._api))},updateVisual:function(e){var n=this,i=this._model;i&&(i.setUpdatePayload(e),i.eachSeries((function(t){t.getData().clearAllVisual()})),mg.markUpdateMethod(e,"updateVisual"),t(i),this._scheduler.performVisualTasks(i,e,{visualType:"visual",setDirty:!0}),i.eachComponent((function(t,r){if("series"!==t){var o=n.getViewOfComponentModel(r);o&&o.__alive&&o.updateVisual(r,i,n._api,e)}})),i.eachSeries((function(t){n._chartsMap[t.__viewId].updateVisual(t,i,n._api,e)})),av.trigger("afterupdate",i,this._api))},updateLayout:function(t){bv.update.call(this,t)}},wv=function(t,e,n,i){if(t._disposed)Gv(t.id);else{for(var r,o=t._model,a=t._coordSysMgr.getCoordinateSystems(),s=Io(o,n),l=0;l<a.length;l++){var u=a[l];if(u[e]&&null!=(r=u[e](o,s,i)))return r}0}},Sv=function(t,e){var n=t._chartsMap,i=t._scheduler;e.eachSeries((function(t){i.updateStreamModes(t,n[t.__viewId])}))},Mv=function(t,e){var n=this,i=this.getModel(),r=t.type,o=t.escapeConnect,a=Wv[r],s=a.actionInfo,l=(s.update||"update").split(":"),u=l.pop(),h=null!=l[0]&&No(l[0]);this.__flagInMainProcess=!0;var c=[t],p=!1;t.batch&&(p=!0,c=z(t.batch,(function(e){return(e=k(A({},e),t)).batch=null,e})));var d,f=[],g=Fl(t),y=Gl(t);if(y&&Tl(this._api),E(c,(function(e){if((d=(d=a.action(e,n._model,n._api))||A({},e)).type=s.event||d.type,f.push(d),y){var i=To(t),r=i.queryOptionMap,o=i.mainTypeSpecified?r.keys()[0]:"series";_v(n,u,e,o),Rv(n)}else g?(_v(n,u,e,"series"),Rv(n)):h&&_v(n,u,e,h.main,h.sub)})),"none"!==u&&!y&&!g&&!h)try{this.__pendingUpdate?(mv(this),bv.update.call(this,t),this.__pendingUpdate=null):bv[u].call(this,t)}catch(t){throw this.__flagInMainProcess=!1,t}if(d=p?{type:s.event||r,escapeConnect:o,batch:f}:f[0],this.__flagInMainProcess=!1,!e){var v=this._messageCenter;if(v.trigger(d.type,d),g){var m={type:"selectchanged",escapeConnect:o,selected:Ll(i),isFromClick:t.isFromClick||!1,fromAction:t.type,fromActionPayload:t};v.trigger(m.type,m)}}},Iv=function(t){for(var e=this._pendingActions;e.length;){var n=e.shift();Mv.call(this,n,t)}},Tv=function(t){!t&&this.trigger("updated")},Cv=function(t,e){t.on("rendered",(function(n){e.trigger("rendered",n),!t.animation.isFinished()||e.__pendingUpdate||e._scheduler.unfinished||e._pendingActions.length||e.trigger("finished")}))},Dv=function(t,e){t.on("mouseover",(function(t){var n=my(t.target,Bl);n&&(!function(t,e,n){var i=Ws(t),r=Al(i.componentMainType,i.componentIndex,i.componentHighDownName,n),o=r.dispatchers,a=r.focusSelf;o?(a&&Dl(i.componentMainType,i.componentIndex,n),E(o,(function(t){return vl(t,e)}))):(Cl(i.seriesIndex,i.focus,i.blurScope,n),"self"===i.focus&&Dl(i.componentMainType,i.componentIndex,n),vl(t,e))}(n,t,e._api),Rv(e))})).on("mouseout",(function(t){var n=my(t.target,Bl);n&&(!function(t,e,n){Tl(n);var i=Ws(t),r=Al(i.componentMainType,i.componentIndex,i.componentHighDownName,n).dispatchers;r?E(r,(function(t){return ml(t,e)})):ml(t,e)}(n,t,e._api),Rv(e))})).on("click",(function(t){var n=my(t.target,(function(t){return null!=Ws(t).dataIndex}),!0);if(n){var i=n.selected?"unselect":"select",r=Ws(n);e._api.dispatchAction({type:i,dataType:r.dataType,dataIndexInside:r.dataIndex,seriesIndex:r.seriesIndex,isFromClick:!0})}}))},Av=function(t,e,n,i,r){!function(t){var e=[],n=[],i=!1;if(t.eachComponent((function(t,r){var o=r.get("zlevel")||0,a=r.get("z")||0,s=r.getZLevelKey();i=i||!!s,("series"===t?n:e).push({zlevel:o,z:a,idx:r.componentIndex,type:t,key:s})})),i){var r,o,a=e.concat(n);Ie(a,(function(t,e){return t.zlevel===e.zlevel?t.z-e.z:t.zlevel-e.zlevel})),E(a,(function(e){var n=t.getComponent(e.type,e.idx),i=e.zlevel,a=e.key;null!=r&&(i=Math.max(r,i)),a?(i===r&&a!==o&&i++,o=a):o&&(i===r&&i++,o=""),r=i,n.setZLevel(i)}))}}(e),kv(t,e,n,i,r),E(t._chartsViews,(function(t){t.__alive=!1})),Lv(t,e,n,i,r),E(t._chartsViews,(function(t){t.__alive||t.remove(e,n)}))},kv=function(t,e,n,r,o,l){E(l||t._componentsViews,(function(t){var o=t.__model;a(o,t),t.render(o,e,n,r),i(o,t),s(o,t)}))},Lv=function(t,e,n,o,l,u){var h=t._scheduler;l=A(l||{},{updatedSeries:e.getSeries()}),av.trigger("series:beforeupdate",e,n,l);var c=!1;e.eachSeries((function(e){var n=t._chartsMap[e.__viewId];n.__alive=!0;var i=n.renderTask;h.updatePayload(i,o),a(e,n),u&&u.get(e.uid)&&i.dirty(),i.perform(h.getPerformArgs(i))&&(c=!0),n.group.silent=!!e.get("silent"),function(t,e){var n=t.get("blendMode")||null;e.eachRendered((function(t){t.isGroup||(t.style.blend=n)}))}(e,n),kl(e)})),h.unfinished=c||h.unfinished,av.trigger("series:layoutlabels",e,n,l),av.trigger("series:transition",e,n,l),e.eachSeries((function(e){var n=t._chartsMap[e.__viewId];i(e,n),s(e,n)})),function(t,e){var n=t._zr.storage,i=0;n.traverse((function(t){t.isGroup||i++})),i>e.get("hoverLayerThreshold")&&!r.node&&!r.worker&&e.eachSeries((function(e){if(!e.preventUsingHoverLayer){var n=t._chartsMap[e.__viewId];n.__alive&&n.eachRendered((function(t){t.states.emphasis&&(t.states.emphasis.hoverLayer=!0)}))}}))}(t,e),av.trigger("series:afterupdate",e,n,l)},Rv=function(t){t.__needsUpdateStatus=!0,t.getZr().wakeUp()},Nv=function(t){t.__needsUpdateStatus&&(t.getZr().storage.traverse((function(t){oh(t)||e(t)})),t.__needsUpdateStatus=!1)},Pv=function(t){return new(function(e){function i(){return null!==e&&e.apply(this,arguments)||this}return n(i,e),i.prototype.getCoordinateSystems=function(){return t._coordSysMgr.getCoordinateSystems()},i.prototype.getComponentByElement=function(e){for(;e;){var n=e.__ecComponentInfo;if(null!=n)return t._model.getComponent(n.mainType,n.index);e=e.parent}},i.prototype.enterEmphasis=function(e,n){xl(e,n),Rv(t)},i.prototype.leaveEmphasis=function(e,n){_l(e,n),Rv(t)},i.prototype.enterBlur=function(e){bl(e),Rv(t)},i.prototype.leaveBlur=function(e){wl(e),Rv(t)},i.prototype.enterSelect=function(e){Sl(e),Rv(t)},i.prototype.leaveSelect=function(e){Ml(e),Rv(t)},i.prototype.getModel=function(){return t.getModel()},i.prototype.getViewOfComponentModel=function(e){return t.getViewOfComponentModel(e)},i.prototype.getViewOfSeriesModel=function(e){return t.getViewOfSeriesModel(e)},i}(sd))(t)},Ov=function(t){function e(t,e){for(var n=0;n<t.length;n++){t[n][fv]=e}}E(Hv,(function(n,i){t._messageCenter.on(i,(function(n){if(Kv[t.group]&&0!==t[fv]){if(n&&n.escapeConnect)return;var i=t.makeActionFromEvent(n),r=[];E(qv,(function(e){e!==t&&e.group===t.group&&r.push(e)})),e(r,0),E(r,(function(t){1!==t[fv]&&t.dispatchAction(i)})),e(r,2)}}))}))}}(),e}(Xt),Bv=Vv.prototype;Bv.on=gv("on"),Bv.off=gv("off"),Bv.one=function(t,e,n){var i=this;oo(),this.on.call(this,t,(function n(){for(var r=[],o=0;o<arguments.length;o++)r[o]=arguments[o];e&&e.apply&&e.apply(this,r),i.off(t,n)}),n)};var Fv=["click","dblclick","mouseover","mouseout","mousemove","mousedown","mouseup","globalout","contextmenu"];function Gv(t){0}var Wv={},Hv={},Yv=[],Uv=[],Xv=[],Zv={},jv={},qv={},Kv={},$v=+new Date-0,Jv=+new Date-0,Qv="_echarts_instance_";function tm(t){Kv[t]=!1}var em=tm;function nm(t){return qv[function(t,e){return t.getAttribute?t.getAttribute(e):t[e]}(t,Qv)]}function im(t,e){Zv[t]=e}function rm(t){P(Uv,t)<0&&Uv.push(t)}function om(t,e){fm(Yv,t,e,2e3)}function am(t){lm("afterinit",t)}function sm(t){lm("afterupdate",t)}function lm(t,e){av.on(t,e)}function um(t,e,n){U(e)&&(n=e,e="");var i=q(t)?t.type:[t,t={event:e}][0];t.event=(t.event||i).toLowerCase(),e=t.event,Hv[e]||(lt(dv.test(i)&&dv.test(e)),Wv[i]||(Wv[i]={action:n,actionInfo:t}),Hv[e]=i)}function hm(t,e){ud.register(t,e)}function cm(t,e){fm(Xv,t,e,1e3,"layout")}function pm(t,e){fm(Xv,t,e,3e3,"visual")}var dm=[];function fm(t,e,n,i,r){if((U(e)||q(e))&&(n=e,e=i),!(P(dm,n)>=0)){dm.push(n);var o=Fg.wrapStageHandler(n,r);o.__prio=e,o.__raw=n,t.push(o)}}function gm(t,e){jv[t]=e}function ym(t,e,n){var i=lv("registerMap");i&&i(t,e,n)}var vm=function(t){var e=(t=T(t)).type,n="";e||ao(n);var i=e.split(":");2!==i.length&&ao(n);var r=!1;"echarts"===i[0]&&(e=i[1],r=!0),t.__isBuiltIn=r,If.set(e,t)};pm(hv,Ng),pm(cv,zg),pm(cv,Vg),pm(hv,cy),pm(cv,py),pm(7e3,(function(t,e){t.eachRawSeries((function(n){if(!t.isSeriesFiltered(n)){var i=n.getData();i.hasItemVisual()&&i.each((function(t){var n=i.getItemVisual(t,"decal");n&&(i.ensureUniqueItemVisual(t,"style").decal=nv(n,e))}));var r=i.getVisual("decal");if(r)i.getVisual("style").decal=nv(r,e)}}))})),rm(Pd),om(900,(function(t){var e=ft();t.eachSeries((function(t){var n=t.get("stack");if(n){var i=e.get(n)||e.set(n,[]),r=t.getData(),o={stackResultDimension:r.getCalculationInfo("stackResultDimension"),stackedOverDimension:r.getCalculationInfo("stackedOverDimension"),stackedDimension:r.getCalculationInfo("stackedDimension"),stackedByDimension:r.getCalculationInfo("stackedByDimension"),isStackedByIndex:r.getCalculationInfo("isStackedByIndex"),data:r,seriesModel:t};if(!o.stackedDimension||!o.isStackedByIndex&&!o.stackedByDimension)return;i.length&&r.setCalculationInfo("stackedOnSeries",i[i.length-1].seriesModel),i.push(o)}})),e.each(Od)})),gm("default",(function(t,e){k(e=e||{},{text:"loading",textColor:"#000",fontSize:12,fontWeight:"normal",fontStyle:"normal",fontFamily:"sans-serif",maskColor:"rgba(255, 255, 255, 0.8)",showSpinner:!0,color:"#5470c6",spinnerRadius:10,lineWidth:5,zlevel:0});var n=new Cr,i=new Ts({style:{fill:e.maskColor},zlevel:e.zlevel,z:1e4});n.add(i);var r,o=new As({style:{text:e.text,fill:e.textColor,fontSize:e.fontSize,fontWeight:e.fontWeight,fontStyle:e.fontStyle,fontFamily:e.fontFamily},zlevel:e.zlevel,z:10001}),a=new Ts({style:{fill:"none"},textContent:o,textConfig:{position:"right",distance:10},zlevel:e.zlevel,z:10001});return n.add(a),e.showSpinner&&((r=new Wu({shape:{startAngle:-Bg/2,endAngle:-Bg/2+.1,r:e.spinnerRadius},style:{stroke:e.color,lineCap:"round",lineWidth:e.lineWidth},zlevel:e.zlevel,z:10001})).animateShape(!0).when(1e3,{endAngle:3*Bg/2}).start("circularInOut"),r.animateShape(!0).when(1e3,{startAngle:3*Bg/2}).delay(300).start("circularInOut"),n.add(r)),n.resize=function(){var n=o.getBoundingRect().width,s=e.showSpinner?e.spinnerRadius:0,l=(t.getWidth()-2*s-(e.showSpinner&&n?10:0)-n)/2-(e.showSpinner&&n?0:5+n/2)+(e.showSpinner?0:n/2)+(n?0:s),u=t.getHeight()/2;e.showSpinner&&r.setShape({cx:l,cy:u}),a.setShape({x:l-s,y:u-s,width:2*s,height:2*s}),i.setShape({x:0,y:0,width:t.getWidth(),height:t.getHeight()})},n.resize(),n})),um({type:$s,event:$s,update:$s},xt),um({type:Js,event:Js,update:Js},xt),um({type:Qs,event:Qs,update:Qs},xt),um({type:tl,event:tl,update:tl},xt),um({type:el,event:el,update:el},xt),im("light",ny),im("dark",sy);var mm=[],xm={registerPreprocessor:rm,registerProcessor:om,registerPostInit:am,registerPostUpdate:sm,registerUpdateLifecycle:lm,registerAction:um,registerCoordinateSystem:hm,registerLayout:cm,registerVisual:pm,registerTransform:vm,registerLoading:gm,registerMap:ym,registerImpl:function(t,e){sv[t]=e},PRIORITY:pv,ComponentModel:Ip,ComponentView:fg,SeriesModel:ag,ChartView:mg,registerComponentModel:function(t){Ip.registerClass(t)},registerComponentView:function(t){fg.registerClass(t)},registerSeriesModel:function(t){ag.registerClass(t)},registerChartView:function(t){mg.registerClass(t)},registerSubTypeDefaulter:function(t,e){Ip.registerSubTypeDefaulter(t,e)},registerPainter:function(t,e){Pr(t,e)}};function _m(t){Y(t)?E(t,(function(t){_m(t)})):P(mm,t)>=0||(mm.push(t),U(t)&&(t={install:t}),t.install(xm))}function bm(t){return null==t?0:t.length||1}function wm(t){return t}var Sm=function(){function t(t,e,n,i,r,o){this._old=t,this._new=e,this._oldKeyGetter=n||wm,this._newKeyGetter=i||wm,this.context=r,this._diffModeMultiple="multiple"===o}return t.prototype.add=function(t){return this._add=t,this},t.prototype.update=function(t){return this._update=t,this},t.prototype.updateManyToOne=function(t){return this._updateManyToOne=t,this},t.prototype.updateOneToMany=function(t){return this._updateOneToMany=t,this},t.prototype.updateManyToMany=function(t){return this._updateManyToMany=t,this},t.prototype.remove=function(t){return this._remove=t,this},t.prototype.execute=function(){this[this._diffModeMultiple?"_executeMultiple":"_executeOneToOne"]()},t.prototype._executeOneToOne=function(){var t=this._old,e=this._new,n={},i=new Array(t.length),r=new Array(e.length);this._initIndexMap(t,null,i,"_oldKeyGetter"),this._initIndexMap(e,n,r,"_newKeyGetter");for(var o=0;o<t.length;o++){var a=i[o],s=n[a],l=bm(s);if(l>1){var u=s.shift();1===s.length&&(n[a]=s[0]),this._update&&this._update(u,o)}else 1===l?(n[a]=null,this._update&&this._update(s,o)):this._remove&&this._remove(o)}this._performRestAdd(r,n)},t.prototype._executeMultiple=function(){var t=this._old,e=this._new,n={},i={},r=[],o=[];this._initIndexMap(t,n,r,"_oldKeyGetter"),this._initIndexMap(e,i,o,"_newKeyGetter");for(var a=0;a<r.length;a++){var s=r[a],l=n[s],u=i[s],h=bm(l),c=bm(u);if(h>1&&1===c)this._updateManyToOne&&this._updateManyToOne(u,l),i[s]=null;else if(1===h&&c>1)this._updateOneToMany&&this._updateOneToMany(u,l),i[s]=null;else if(1===h&&1===c)this._update&&this._update(u,l),i[s]=null;else if(h>1&&c>1)this._updateManyToMany&&this._updateManyToMany(u,l),i[s]=null;else if(h>1)for(var p=0;p<h;p++)this._remove&&this._remove(l[p]);else this._remove&&this._remove(l)}this._performRestAdd(o,i)},t.prototype._performRestAdd=function(t,e){for(var n=0;n<t.length;n++){var i=t[n],r=e[i],o=bm(r);if(o>1)for(var a=0;a<o;a++)this._add&&this._add(r[a]);else 1===o&&this._add&&this._add(r);e[i]=null}},t.prototype._initIndexMap=function(t,e,n,i){for(var r=this._diffModeMultiple,o=0;o<t.length;o++){var a="_ec_"+this[i](t[o],o);if(r||(n[o]=a),e){var s=e[a],l=bm(s);0===l?(e[a]=o,r&&n.push(a)):1===l?e[a]=[s,o]:s.push(o)}}},t}(),Mm=function(){function t(t,e){this._encode=t,this._schema=e}return t.prototype.get=function(){return{fullDimensions:this._getFullDimensionNames(),encode:this._encode}},t.prototype._getFullDimensionNames=function(){return this._cachedDimNames||(this._cachedDimNames=this._schema?this._schema.makeOutputDimensionNames():[]),this._cachedDimNames},t}();function Im(t,e){return t.hasOwnProperty(e)||(t[e]=[]),t[e]}function Tm(t){return"category"===t?"ordinal":"time"===t?"time":"float"}var Cm=function(t){this.otherDims={},null!=t&&A(this,t)},Dm=So(),Am={float:"f",int:"i",ordinal:"o",number:"n",time:"t"},km=function(){function t(t){this.dimensions=t.dimensions,this._dimOmitted=t.dimensionOmitted,this.source=t.source,this._fullDimCount=t.fullDimensionCount,this._updateDimOmitted(t.dimensionOmitted)}return t.prototype.isDimensionOmitted=function(){return this._dimOmitted},t.prototype._updateDimOmitted=function(t){this._dimOmitted=t,t&&(this._dimNameMap||(this._dimNameMap=Om(this.source)))},t.prototype.getSourceDimensionIndex=function(t){return rt(this._dimNameMap.get(t),-1)},t.prototype.getSourceDimension=function(t){var e=this.source.dimensionsDefine;if(e)return e[t]},t.prototype.makeStoreSchema=function(){for(var t=this._fullDimCount,e=Xd(this.source),n=!Rm(t),i="",r=[],o=0,a=0;o<t;o++){var s=void 0,l=void 0,u=void 0,h=this.dimensions[a];if(h&&h.storeDimIndex===o)s=e?h.name:null,l=h.type,u=h.ordinalMeta,a++;else{var c=this.getSourceDimension(o);c&&(s=e?c.name:null,l=c.type)}r.push({property:s,type:l,ordinalMeta:u}),!e||null==s||h&&h.isCalculationCoord||(i+=n?s.replace(/\`/g,"`1").replace(/\$/g,"`2"):s),i+="$",i+=Am[l]||"f",u&&(i+=u.uid),i+="$"}var p=this.source;return{dimensions:r,hash:[p.seriesLayoutBy,p.startIndex,i].join("$$")}},t.prototype.makeOutputDimensionNames=function(){for(var t=[],e=0,n=0;e<this._fullDimCount;e++){var i=void 0,r=this.dimensions[n];if(r&&r.storeDimIndex===e)r.isCalculationCoord||(i=r.name),n++;else{var o=this.getSourceDimension(e);o&&(i=o.name)}t.push(i)}return t},t.prototype.appendCalculationDimension=function(t){this.dimensions.push(t),t.isCalculationCoord=!0,this._fullDimCount++,this._updateDimOmitted(!0)},t}();function Lm(t){return t instanceof km}function Pm(t){for(var e=ft(),n=0;n<(t||[]).length;n++){var i=t[n],r=q(i)?i.name:i;null!=r&&null==e.get(r)&&e.set(r,n)}return e}function Om(t){var e=Dm(t);return e.dimNameMap||(e.dimNameMap=Pm(t.dimensionsDefine))}function Rm(t){return t>30}var Nm,Em,zm,Vm,Bm,Fm,Gm,Wm=q,Hm=z,Ym="undefined"==typeof Int32Array?Array:Int32Array,Um=["hasItemOption","_nameList","_idList","_invertedIndicesMap","_dimSummary","userOutput","_rawData","_dimValueGetter","_nameDimIdx","_idDimIdx","_nameRepeatCount"],Xm=["_approximateExtent"],Zm=function(){function t(t,e){var n;this.type="list",this._dimOmitted=!1,this._nameList=[],this._idList=[],this._visual={},this._layout={},this._itemVisuals=[],this._itemLayouts=[],this._graphicEls=[],this._approximateExtent={},this._calculationInfo={},this.hasItemOption=!1,this.TRANSFERABLE_METHODS=["cloneShallow","downSample","lttbDownSample","map"],this.CHANGABLE_METHODS=["filterSelf","selectRange"],this.DOWNSAMPLE_METHODS=["downSample","lttbDownSample"];var i=!1;Lm(t)?(n=t.dimensions,this._dimOmitted=t.isDimensionOmitted(),this._schema=t):(i=!0,n=t),n=n||["x","y"];for(var r={},o=[],a={},s=!1,l={},u=0;u<n.length;u++){var h=n[u],c=X(h)?new Cm({name:h}):h instanceof Cm?h:new Cm(h),p=c.name;c.type=c.type||"float",c.coordDim||(c.coordDim=p,c.coordDimIndex=0);var d=c.otherDims=c.otherDims||{};o.push(p),r[p]=c,null!=l[p]&&(s=!0),c.createInvertedIndices&&(a[p]=[]),0===d.itemName&&(this._nameDimIdx=u),0===d.itemId&&(this._idDimIdx=u),i&&(c.storeDimIndex=u)}if(this.dimensions=o,this._dimInfos=r,this._initGetDimensionInfo(s),this.hostModel=e,this._invertedIndicesMap=a,this._dimOmitted){var f=this._dimIdxToName=ft();E(o,(function(t){f.set(r[t].storeDimIndex,t)}))}}return t.prototype.getDimension=function(t){var e=this._recognizeDimIndex(t);if(null==e)return t;if(e=t,!this._dimOmitted)return this.dimensions[e];var n=this._dimIdxToName.get(e);if(null!=n)return n;var i=this._schema.getSourceDimension(e);return i?i.name:void 0},t.prototype.getDimensionIndex=function(t){var e=this._recognizeDimIndex(t);if(null!=e)return e;if(null==t)return-1;var n=this._getDimInfo(t);return n?n.storeDimIndex:this._dimOmitted?this._schema.getSourceDimensionIndex(t):-1},t.prototype._recognizeDimIndex=function(t){if(j(t)||null!=t&&!isNaN(t)&&!this._getDimInfo(t)&&(!this._dimOmitted||this._schema.getSourceDimensionIndex(t)<0))return+t},t.prototype._getStoreDimIndex=function(t){var e=this.getDimensionIndex(t);return e},t.prototype.getDimensionInfo=function(t){return this._getDimInfo(this.getDimension(t))},t.prototype._initGetDimensionInfo=function(t){var e=this._dimInfos;this._getDimInfo=t?function(t){return e.hasOwnProperty(t)?e[t]:void 0}:function(t){return e[t]}},t.prototype.getDimensionsOnCoord=function(){return this._dimSummary.dataDimsOnCoord.slice()},t.prototype.mapDimension=function(t,e){var n=this._dimSummary;if(null==e)return n.encodeFirstDimNotExtra[t];var i=n.encode[t];return i?i[e]:null},t.prototype.mapDimensionsAll=function(t){return(this._dimSummary.encode[t]||[]).slice()},t.prototype.getStore=function(){return this._store},t.prototype.initData=function(t,e,n){var i,r=this;if(t instanceof zf&&(i=t),!i){var o=this.dimensions,a=Fd(t)||N(t)?new Zd(t,o.length):t;i=new zf;var s=Hm(o,(function(t){return{type:r._dimInfos[t].type,property:t}}));i.initData(a,s,n)}this._store=i,this._nameList=(e||[]).slice(),this._idList=[],this._nameRepeatCount={},this._doInit(0,i.count()),this._dimSummary=function(t,e){var n={},i=n.encode={},r=ft(),o=[],a=[],s={};E(t.dimensions,(function(e){var n,l=t.getDimensionInfo(e),u=l.coordDim;if(u){var h=l.coordDimIndex;Im(i,u)[h]=e,l.isExtraCoord||(r.set(u,1),"ordinal"!==(n=l.type)&&"time"!==n&&(o[0]=e),Im(s,u)[h]=t.getDimensionIndex(l.name)),l.defaultTooltip&&a.push(e)}Ap.each((function(t,e){var n=Im(i,e),r=l.otherDims[e];null!=r&&!1!==r&&(n[r]=l.name)}))}));var l=[],u={};r.each((function(t,e){var n=i[e];u[e]=n[0],l=l.concat(n)})),n.dataDimsOnCoord=l,n.dataDimIndicesOnCoord=z(l,(function(e){return t.getDimensionInfo(e).storeDimIndex})),n.encodeFirstDimNotExtra=u;var h=i.label;h&&h.length&&(o=h.slice());var c=i.tooltip;return c&&c.length?a=c.slice():a.length||(a=o.slice()),i.defaultedLabel=o,i.defaultedTooltip=a,n.userOutput=new Mm(s,e),n}(this,this._schema),this.userOutput=this._dimSummary.userOutput},t.prototype.appendData=function(t){var e=this._store.appendData(t);this._doInit(e[0],e[1])},t.prototype.appendValues=function(t,e){var n=this._store.appendValues(t,e.length),i=n.start,r=n.end,o=this._shouldMakeIdFromName();if(this._updateOrdinalMeta(),e)for(var a=i;a<r;a++){var s=a-i;this._nameList[a]=e[s],o&&Gm(this,a)}},t.prototype._updateOrdinalMeta=function(){for(var t=this._store,e=this.dimensions,n=0;n<e.length;n++){var i=this._dimInfos[e[n]];i.ordinalMeta&&t.collectOrdinalMeta(i.storeDimIndex,i.ordinalMeta)}},t.prototype._shouldMakeIdFromName=function(){var t=this._store.getProvider();return null==this._idDimIdx&&t.getSource().sourceFormat!==Rp&&!t.fillStorage},t.prototype._doInit=function(t,e){if(!(t>=e)){var n=this._store.getProvider();this._updateOrdinalMeta();var i=this._nameList,r=this._idList;if(n.getSource().sourceFormat===kp&&!n.pure)for(var o=[],a=t;a<e;a++){var s=n.getItem(a,o);if(!this.hasItemOption&&go(s)&&(this.hasItemOption=!0),s){var l=s.name;null==i[a]&&null!=l&&(i[a]=xo(l,null));var u=s.id;null==r[a]&&null!=u&&(r[a]=xo(u,null))}}if(this._shouldMakeIdFromName())for(a=t;a<e;a++)Gm(this,a);Nm(this)}},t.prototype.getApproximateExtent=function(t){return this._approximateExtent[t]||this._store.getDataExtent(this._getStoreDimIndex(t))},t.prototype.setApproximateExtent=function(t,e){e=this.getDimension(e),this._approximateExtent[e]=t.slice()},t.prototype.getCalculationInfo=function(t){return this._calculationInfo[t]},t.prototype.setCalculationInfo=function(t,e){Wm(t)?A(this._calculationInfo,t):this._calculationInfo[t]=e},t.prototype.getName=function(t){var e=this.getRawIndex(t),n=this._nameList[e];return null==n&&null!=this._nameDimIdx&&(n=zm(this,this._nameDimIdx,e)),null==n&&(n=""),n},t.prototype._getCategory=function(t,e){var n=this._store.get(t,e),i=this._store.getOrdinalMeta(t);return i?i.categories[n]:n},t.prototype.getId=function(t){return Em(this,this.getRawIndex(t))},t.prototype.count=function(){return this._store.count()},t.prototype.get=function(t,e){var n=this._store,i=this._dimInfos[t];if(i)return n.get(i.storeDimIndex,e)},t.prototype.getByRawIndex=function(t,e){var n=this._store,i=this._dimInfos[t];if(i)return n.getByRawIndex(i.storeDimIndex,e)},t.prototype.getIndices=function(){return this._store.getIndices()},t.prototype.getDataExtent=function(t){return this._store.getDataExtent(this._getStoreDimIndex(t))},t.prototype.getSum=function(t){return this._store.getSum(this._getStoreDimIndex(t))},t.prototype.getMedian=function(t){return this._store.getMedian(this._getStoreDimIndex(t))},t.prototype.getValues=function(t,e){var n=this,i=this._store;return Y(t)?i.getValues(Hm(t,(function(t){return n._getStoreDimIndex(t)})),e):i.getValues(t)},t.prototype.hasValue=function(t){for(var e=this._dimSummary.dataDimIndicesOnCoord,n=0,i=e.length;n<i;n++)if(isNaN(this._store.get(e[n],t)))return!1;return!0},t.prototype.indexOfName=function(t){for(var e=0,n=this._store.count();e<n;e++)if(this.getName(e)===t)return e;return-1},t.prototype.getRawIndex=function(t){return this._store.getRawIndex(t)},t.prototype.indexOfRawIndex=function(t){return this._store.indexOfRawIndex(t)},t.prototype.rawIndexOf=function(t,e){var n=t&&this._invertedIndicesMap[t];var i=n[e];return null==i||isNaN(i)?-1:i},t.prototype.indicesOfNearest=function(t,e,n){return this._store.indicesOfNearest(this._getStoreDimIndex(t),e,n)},t.prototype.each=function(t,e,n){U(t)&&(n=e,e=t,t=[]);var i=n||this,r=Hm(Vm(t),this._getStoreDimIndex,this);this._store.each(r,i?W(e,i):e)},t.prototype.filterSelf=function(t,e,n){U(t)&&(n=e,e=t,t=[]);var i=n||this,r=Hm(Vm(t),this._getStoreDimIndex,this);return this._store=this._store.filter(r,i?W(e,i):e),this},t.prototype.selectRange=function(t){var e=this,n={};return E(G(t),(function(i){var r=e._getStoreDimIndex(i);n[r]=t[i]})),this._store=this._store.selectRange(n),this},t.prototype.mapArray=function(t,e,n){U(t)&&(n=e,e=t,t=[]),n=n||this;var i=[];return this.each(t,(function(){i.push(e&&e.apply(this,arguments))}),n),i},t.prototype.map=function(t,e,n,i){var r=n||i||this,o=Hm(Vm(t),this._getStoreDimIndex,this),a=Fm(this);return a._store=this._store.map(o,r?W(e,r):e),a},t.prototype.modify=function(t,e,n,i){var r=n||i||this;var o=Hm(Vm(t),this._getStoreDimIndex,this);this._store.modify(o,r?W(e,r):e)},t.prototype.downSample=function(t,e,n,i){var r=Fm(this);return r._store=this._store.downSample(this._getStoreDimIndex(t),e,n,i),r},t.prototype.lttbDownSample=function(t,e){var n=Fm(this);return n._store=this._store.lttbDownSample(this._getStoreDimIndex(t),e),n},t.prototype.getRawDataItem=function(t){return this._store.getRawDataItem(t)},t.prototype.getItemModel=function(t){var e=this.hostModel,n=this.getRawDataItem(t);return new pc(n,e,e&&e.ecModel)},t.prototype.diff=function(t){var e=this;return new Sm(t?t.getStore().getIndices():[],this.getStore().getIndices(),(function(e){return Em(t,e)}),(function(t){return Em(e,t)}))},t.prototype.getVisual=function(t){var e=this._visual;return e&&e[t]},t.prototype.setVisual=function(t,e){this._visual=this._visual||{},Wm(t)?A(this._visual,t):this._visual[t]=e},t.prototype.getItemVisual=function(t,e){var n=this._itemVisuals[t],i=n&&n[e];return null==i?this.getVisual(e):i},t.prototype.hasItemVisual=function(){return this._itemVisuals.length>0},t.prototype.ensureUniqueItemVisual=function(t,e){var n=this._itemVisuals,i=n[t];i||(i=n[t]={});var r=i[e];return null==r&&(Y(r=this.getVisual(e))?r=r.slice():Wm(r)&&(r=A({},r)),i[e]=r),r},t.prototype.setItemVisual=function(t,e,n){var i=this._itemVisuals[t]||{};this._itemVisuals[t]=i,Wm(e)?A(i,e):i[e]=n},t.prototype.clearAllVisual=function(){this._visual={},this._itemVisuals=[]},t.prototype.setLayout=function(t,e){Wm(t)?A(this._layout,t):this._layout[t]=e},t.prototype.getLayout=function(t){return this._layout[t]},t.prototype.getItemLayout=function(t){return this._itemLayouts[t]},t.prototype.setItemLayout=function(t,e,n){this._itemLayouts[t]=n?A(this._itemLayouts[t]||{},e):e},t.prototype.clearItemLayouts=function(){this._itemLayouts.length=0},t.prototype.setItemGraphicEl=function(t,e){var n=this.hostModel&&this.hostModel.seriesIndex;Hs(n,this.dataType,t,e),this._graphicEls[t]=e},t.prototype.getItemGraphicEl=function(t){return this._graphicEls[t]},t.prototype.eachItemGraphicEl=function(t,e){E(this._graphicEls,(function(n,i){n&&t&&t.call(e,n,i)}))},t.prototype.cloneShallow=function(e){return e||(e=new t(this._schema?this._schema:Hm(this.dimensions,this._getDimInfo,this),this.hostModel)),Bm(e,this),e._store=this._store,e},t.prototype.wrapMethod=function(t,e){var n=this[t];U(n)&&(this.__wrappedMethods=this.__wrappedMethods||[],this.__wrappedMethods.push(t),this[t]=function(){var t=n.apply(this,arguments);return e.apply(this,[t].concat(at(arguments)))})},t.internalField=(Nm=function(t){var e=t._invertedIndicesMap;E(e,(function(n,i){var r=t._dimInfos[i],o=r.ordinalMeta,a=t._store;if(o){n=e[i]=new Ym(o.categories.length);for(var s=0;s<n.length;s++)n[s]=-1;for(s=0;s<a.count();s++)n[a.get(r.storeDimIndex,s)]=s}}))},zm=function(t,e,n){return xo(t._getCategory(e,n),null)},Em=function(t,e){var n=t._idList[e];return null==n&&null!=t._idDimIdx&&(n=zm(t,t._idDimIdx,e)),null==n&&(n="e\0\0"+e),n},Vm=function(t){return Y(t)||(t=null!=t?[t]:[]),t},Fm=function(e){var n=new t(e._schema?e._schema:Hm(e.dimensions,e._getDimInfo,e),e.hostModel);return Bm(n,e),n},Bm=function(t,e){E(Um.concat(e.__wrappedMethods||[]),(function(n){e.hasOwnProperty(n)&&(t[n]=e[n])})),t.__wrappedMethods=e.__wrappedMethods,E(Xm,(function(n){t[n]=T(e[n])})),t._calculationInfo=A({},e._calculationInfo)},void(Gm=function(t,e){var n=t._nameList,i=t._idList,r=t._nameDimIdx,o=t._idDimIdx,a=n[e],s=i[e];if(null==a&&null!=r&&(n[e]=a=zm(t,r,e)),null==s&&null!=o&&(i[e]=s=zm(t,o,e)),null==s&&null!=a){var l=t._nameRepeatCount,u=l[a]=(l[a]||0)+1;s=a,u>1&&(s+="__ec__"+u),i[e]=s}})),t}();function jm(t,e){Fd(t)||(t=Wd(t));var n=(e=e||{}).coordDimensions||[],i=e.dimensionsDefine||t.dimensionsDefine||[],r=ft(),o=[],a=function(t,e,n,i){var r=Math.max(t.dimensionsDetectedCount||1,e.length,n.length,i||0);return E(e,(function(t){var e;q(t)&&(e=t.dimsDef)&&(r=Math.max(r,e.length))})),r}(t,n,i,e.dimensionsCount),s=e.canOmitUnusedDimensions&&Rm(a),l=i===t.dimensionsDefine,u=l?Om(t):Pm(i),h=e.encodeDefine;!h&&e.encodeDefaulter&&(h=e.encodeDefaulter(t,a));for(var c=ft(h),p=new Pf(a),d=0;d<p.length;d++)p[d]=-1;function f(t){var e=p[t];if(e<0){var n=i[t],r=q(n)?n:{name:n},a=new Cm,s=r.name;null!=s&&null!=u.get(s)&&(a.name=a.displayName=s),null!=r.type&&(a.type=r.type),null!=r.displayName&&(a.displayName=r.displayName);var l=o.length;return p[t]=l,a.storeDimIndex=t,o.push(a),a}return o[e]}if(!s)for(d=0;d<a;d++)f(d);c.each((function(t,e){var n=ho(t).slice();if(1===n.length&&!X(n[0])&&n[0]<0)c.set(e,!1);else{var i=c.set(e,[]);E(n,(function(t,n){var r=X(t)?u.get(t):t;null!=r&&r<a&&(i[n]=r,y(f(r),e,n))}))}}));var g=0;function y(t,e,n){null!=Ap.get(e)?t.otherDims[e]=n:(t.coordDim=e,t.coordDimIndex=n,r.set(e,!0))}E(n,(function(t){var e,n,i,r;if(X(t))e=t,r={};else{e=(r=t).name;var o=r.ordinalMeta;r.ordinalMeta=null,(r=A({},r)).ordinalMeta=o,n=r.dimsDef,i=r.otherDims,r.name=r.coordDim=r.coordDimIndex=r.dimsDef=r.otherDims=null}var s=c.get(e);if(!1!==s){if(!(s=ho(s)).length)for(var u=0;u<(n&&n.length||1);u++){for(;g<a&&null!=f(g).coordDim;)g++;g<a&&s.push(g++)}E(s,(function(t,o){var a=f(t);if(l&&null!=r.type&&(a.type=r.type),y(k(a,r),e,o),null==a.name&&n){var s=n[o];!q(s)&&(s={name:s}),a.name=a.displayName=s.name,a.defaultTooltip=s.defaultTooltip}i&&k(a.otherDims,i)}))}}));var v=e.generateCoord,m=e.generateCoordCount,x=null!=m;m=v?m||1:0;var _=v||"value";function b(t){null==t.name&&(t.name=t.coordDim)}if(s)E(o,(function(t){b(t)})),o.sort((function(t,e){return t.storeDimIndex-e.storeDimIndex}));else for(var w=0;w<a;w++){var S=f(w);null==S.coordDim&&(S.coordDim=qm(_,r,x),S.coordDimIndex=0,(!v||m<=0)&&(S.isExtraCoord=!0),m--),b(S),null!=S.type||Up(t,w)!==Vp&&(!S.isExtraCoord||null==S.otherDims.itemName&&null==S.otherDims.seriesName)||(S.type="ordinal")}return function(t){for(var e=ft(),n=0;n<t.length;n++){var i=t[n],r=i.name,o=e.get(r)||0;o>0&&(i.name=r+(o-1)),o++,e.set(r,o)}}(o),new km({source:t,dimensions:o,fullDimensionCount:a,dimensionOmitted:s})}function qm(t,e,n){var i=e.data;if(n||i.hasOwnProperty(t)){for(var r=0;i.hasOwnProperty(t+r);)r++;t+=r}return e.set(t,!0),t}var Km=function(t){this.coordSysDims=[],this.axisMap=ft(),this.categoryAxisMap=ft(),this.coordSysName=t};var $m={cartesian2d:function(t,e,n,i){var r=t.getReferringComponents("xAxis",Co).models[0],o=t.getReferringComponents("yAxis",Co).models[0];e.coordSysDims=["x","y"],n.set("x",r),n.set("y",o),Jm(r)&&(i.set("x",r),e.firstCategoryDimIndex=0),Jm(o)&&(i.set("y",o),null==e.firstCategoryDimIndex&&(e.firstCategoryDimIndex=1))},singleAxis:function(t,e,n,i){var r=t.getReferringComponents("singleAxis",Co).models[0];e.coordSysDims=["single"],n.set("single",r),Jm(r)&&(i.set("single",r),e.firstCategoryDimIndex=0)},polar:function(t,e,n,i){var r=t.getReferringComponents("polar",Co).models[0],o=r.findAxisModel("radiusAxis"),a=r.findAxisModel("angleAxis");e.coordSysDims=["radius","angle"],n.set("radius",o),n.set("angle",a),Jm(o)&&(i.set("radius",o),e.firstCategoryDimIndex=0),Jm(a)&&(i.set("angle",a),null==e.firstCategoryDimIndex&&(e.firstCategoryDimIndex=1))},geo:function(t,e,n,i){e.coordSysDims=["lng","lat"]},parallel:function(t,e,n,i){var r=t.ecModel,o=r.getComponent("parallel",t.get("parallelIndex")),a=e.coordSysDims=o.dimensions.slice();E(o.parallelAxisIndex,(function(t,o){var s=r.getComponent("parallelAxis",t),l=a[o];n.set(l,s),Jm(s)&&(i.set(l,s),null==e.firstCategoryDimIndex&&(e.firstCategoryDimIndex=o))}))}};function Jm(t){return"category"===t.get("type")}function Qm(t,e,n){var i,r,o,a=(n=n||{}).byIndex,s=n.stackedCoordDimension;!function(t){return!Lm(t.schema)}(e)?(r=e.schema,i=r.dimensions,o=e.store):i=e;var l,u,h,c,p=!(!t||!t.get("stack"));if(E(i,(function(t,e){X(t)&&(i[e]=t={name:t}),p&&!t.isExtraCoord&&(a||l||!t.ordinalMeta||(l=t),u||"ordinal"===t.type||"time"===t.type||s&&s!==t.coordDim||(u=t))})),!u||a||l||(a=!0),u){h="__\0ecstackresult_"+t.id,c="__\0ecstackedover_"+t.id,l&&(l.createInvertedIndices=!0);var d=u.coordDim,f=u.type,g=0;E(i,(function(t){t.coordDim===d&&g++}));var y={name:h,coordDim:d,coordDimIndex:g,type:f,isExtraCoord:!0,isCalculationCoord:!0,storeDimIndex:i.length},v={name:c,coordDim:c,coordDimIndex:g+1,type:f,isExtraCoord:!0,isCalculationCoord:!0,storeDimIndex:i.length+1};r?(o&&(y.storeDimIndex=o.ensureCalculationDimension(c,f),v.storeDimIndex=o.ensureCalculationDimension(h,f)),r.appendCalculationDimension(y),r.appendCalculationDimension(v)):(i.push(y),i.push(v))}return{stackedDimension:u&&u.name,stackedByDimension:l&&l.name,isStackedByIndex:a,stackedOverDimension:c,stackResultDimension:h}}function tx(t,e){return!!e&&e===t.getCalculationInfo("stackedDimension")}function ex(t,e){return tx(t,e)?t.getCalculationInfo("stackResultDimension"):e}function nx(t,e,n){n=n||{};var i,r=e.getSourceManager(),o=!1;t?(o=!0,i=Wd(t)):o=(i=r.getSource()).sourceFormat===kp;var a=function(t){var e=t.get("coordinateSystem"),n=new Km(e),i=$m[e];if(i)return i(t,n,n.axisMap,n.categoryAxisMap),n}(e),s=function(t,e){var n,i=t.get("coordinateSystem"),r=ud.get(i);return e&&e.coordSysDims&&(n=z(e.coordSysDims,(function(t){var n={name:t},i=e.axisMap.get(t);if(i){var r=i.get("type");n.type=Tm(r)}return n}))),n||(n=r&&(r.getDimensionsInfo?r.getDimensionsInfo():r.dimensions.slice())||["x","y"]),n}(e,a),l=n.useEncodeDefaulter,u=U(l)?l:l?H(Wp,s,e):null,h=jm(i,{coordDimensions:s,generateCoord:n.generateCoord,encodeDefine:e.getEncode(),encodeDefaulter:u,canOmitUnusedDimensions:!o}),c=function(t,e,n){var i,r;return n&&E(t,(function(t,o){var a=t.coordDim,s=n.categoryAxisMap.get(a);s&&(null==i&&(i=o),t.ordinalMeta=s.getOrdinalMeta(),e&&(t.createInvertedIndices=!0)),null!=t.otherDims.itemName&&(r=!0)})),r||null==i||(t[i].otherDims.itemName=0),i}(h.dimensions,n.createInvertedIndices,a),p=o?null:r.getSharedDataStore(h),d=Qm(e,{schema:h,store:p}),f=new Zm(h,e);f.setCalculationInfo(d);var g=null!=c&&function(t){if(t.sourceFormat===kp){return!Y(fo(function(t){var e=0;for(;e<t.length&&null==t[e];)e++;return t[e]}(t.data||[])))}}(i)?function(t,e,n,i){return i===c?n:this.defaultDimValueGetter(t,e,n,i)}:null;return f.hasItemOption=!1,f.initData(o?i:p,null,g),f}var ix=function(){function t(t){this._setting=t||{},this._extent=[1/0,-1/0]}return t.prototype.getSetting=function(t){return this._setting[t]},t.prototype.unionExtent=function(t){var e=this._extent;t[0]<e[0]&&(e[0]=t[0]),t[1]>e[1]&&(e[1]=t[1])},t.prototype.unionExtentFromData=function(t,e){this.unionExtent(t.getApproximateExtent(e))},t.prototype.getExtent=function(){return this._extent.slice()},t.prototype.setExtent=function(t,e){var n=this._extent;isNaN(t)||(n[0]=t),isNaN(e)||(n[1]=e)},t.prototype.isInExtentRange=function(t){return this._extent[0]<=t&&this._extent[1]>=t},t.prototype.isBlank=function(){return this._isBlank},t.prototype.setBlank=function(t){this._isBlank=t},t}();Go(ix);var rx=0,ox=function(){function t(t){this.categories=t.categories||[],this._needCollect=t.needCollect,this._deduplication=t.deduplication,this.uid=++rx}return t.createByAxisModel=function(e){var n=e.option,i=n.data,r=i&&z(i,ax);return new t({categories:r,needCollect:!r,deduplication:!1!==n.dedplication})},t.prototype.getOrdinal=function(t){return this._getOrCreateMap().get(t)},t.prototype.parseAndCollect=function(t){var e,n=this._needCollect;if(!X(t)&&!n)return t;if(n&&!this._deduplication)return e=this.categories.length,this.categories[e]=t,e;var i=this._getOrCreateMap();return null==(e=i.get(t))&&(n?(e=this.categories.length,this.categories[e]=t,i.set(t,e)):e=NaN),e},t.prototype._getOrCreateMap=function(){return this._map||(this._map=ft(this.categories))},t}();function ax(t){return q(t)&&null!=t.value?t.value:t+""}function sx(t){return"interval"===t.type||"log"===t.type}function lx(t,e,n,i){var r={},o=t[1]-t[0],a=r.interval=$r(o/e,!0);null!=n&&a<n&&(a=r.interval=n),null!=i&&a>i&&(a=r.interval=i);var s=r.intervalPrecision=hx(a);return function(t,e){!isFinite(t[0])&&(t[0]=e[0]),!isFinite(t[1])&&(t[1]=e[1]),cx(t,0,e),cx(t,1,e),t[0]>t[1]&&(t[0]=t[1])}(r.niceTickExtent=[zr(Math.ceil(t[0]/a)*a,s),zr(Math.floor(t[1]/a)*a,s)],t),r}function ux(t){var e=Math.pow(10,Kr(t)),n=t/e;return n?2===n?n=3:3===n?n=5:n*=2:n=1,zr(n*e)}function hx(t){return Br(t)+2}function cx(t,e,n){t[e]=Math.max(Math.min(t[e],n[1]),n[0])}function px(t,e){return t>=e[0]&&t<=e[1]}function dx(t,e){return e[1]===e[0]?.5:(t-e[0])/(e[1]-e[0])}function fx(t,e){return t*(e[1]-e[0])+e[0]}var gx=function(t){function e(e){var n=t.call(this,e)||this;n.type="ordinal";var i=n.getSetting("ordinalMeta");return i||(i=new ox({})),Y(i)&&(i=new ox({categories:z(i,(function(t){return q(t)?t.value:t}))})),n._ordinalMeta=i,n._extent=n.getSetting("extent")||[0,i.categories.length-1],n}return n(e,t),e.prototype.parse=function(t){return X(t)?this._ordinalMeta.getOrdinal(t):Math.round(t)},e.prototype.contain=function(t){return px(t=this.parse(t),this._extent)&&null!=this._ordinalMeta.categories[t]},e.prototype.normalize=function(t){return dx(t=this._getTickNumber(this.parse(t)),this._extent)},e.prototype.scale=function(t){return t=Math.round(fx(t,this._extent)),this.getRawOrdinalNumber(t)},e.prototype.getTicks=function(){for(var t=[],e=this._extent,n=e[0];n<=e[1];)t.push({value:n}),n++;return t},e.prototype.getMinorTicks=function(t){},e.prototype.setSortInfo=function(t){if(null!=t){for(var e=t.ordinalNumbers,n=this._ordinalNumbersByTick=[],i=this._ticksByOrdinalNumber=[],r=0,o=this._ordinalMeta.categories.length,a=Math.min(o,e.length);r<a;++r){var s=e[r];n[r]=s,i[s]=r}for(var l=0;r<o;++r){for(;null!=i[l];)l++;n.push(l),i[l]=r}}else this._ordinalNumbersByTick=this._ticksByOrdinalNumber=null},e.prototype._getTickNumber=function(t){var e=this._ticksByOrdinalNumber;return e&&t>=0&&t<e.length?e[t]:t},e.prototype.getRawOrdinalNumber=function(t){var e=this._ordinalNumbersByTick;return e&&t>=0&&t<e.length?e[t]:t},e.prototype.getLabel=function(t){if(!this.isBlank()){var e=this.getRawOrdinalNumber(t.value),n=this._ordinalMeta.categories[e];return null==n?"":n+""}},e.prototype.count=function(){return this._extent[1]-this._extent[0]+1},e.prototype.unionExtentFromData=function(t,e){this.unionExtent(t.getApproximateExtent(e))},e.prototype.isInExtentRange=function(t){return t=this._getTickNumber(t),this._extent[0]<=t&&this._extent[1]>=t},e.prototype.getOrdinalMeta=function(){return this._ordinalMeta},e.prototype.calcNiceTicks=function(){},e.prototype.calcNiceExtent=function(){},e.type="ordinal",e}(ix);ix.registerClass(gx);var yx=zr,vx=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="interval",e._interval=0,e._intervalPrecision=2,e}return n(e,t),e.prototype.parse=function(t){return t},e.prototype.contain=function(t){return px(t,this._extent)},e.prototype.normalize=function(t){return dx(t,this._extent)},e.prototype.scale=function(t){return fx(t,this._extent)},e.prototype.setExtent=function(t,e){var n=this._extent;isNaN(t)||(n[0]=parseFloat(t)),isNaN(e)||(n[1]=parseFloat(e))},e.prototype.unionExtent=function(t){var e=this._extent;t[0]<e[0]&&(e[0]=t[0]),t[1]>e[1]&&(e[1]=t[1]),this.setExtent(e[0],e[1])},e.prototype.getInterval=function(){return this._interval},e.prototype.setInterval=function(t){this._interval=t,this._niceExtent=this._extent.slice(),this._intervalPrecision=hx(t)},e.prototype.getTicks=function(t){var e=this._interval,n=this._extent,i=this._niceExtent,r=this._intervalPrecision,o=[];if(!e)return o;n[0]<i[0]&&(t?o.push({value:yx(i[0]-e,r)}):o.push({value:n[0]}));for(var a=i[0];a<=i[1]&&(o.push({value:a}),(a=yx(a+e,r))!==o[o.length-1].value);)if(o.length>1e4)return[];var s=o.length?o[o.length-1].value:i[1];return n[1]>s&&(t?o.push({value:yx(s+e,r)}):o.push({value:n[1]})),o},e.prototype.getMinorTicks=function(t){for(var e=this.getTicks(!0),n=[],i=this.getExtent(),r=1;r<e.length;r++){for(var o=e[r],a=e[r-1],s=0,l=[],u=(o.value-a.value)/t;s<t-1;){var h=yx(a.value+(s+1)*u);h>i[0]&&h<i[1]&&l.push(h),s++}n.push(l)}return n},e.prototype.getLabel=function(t,e){if(null==t)return"";var n=e&&e.precision;return null==n?n=Br(t.value)||0:"auto"===n&&(n=this._intervalPrecision),tp(yx(t.value,n,!0))},e.prototype.calcNiceTicks=function(t,e,n){t=t||5;var i=this._extent,r=i[1]-i[0];if(isFinite(r)){r<0&&(r=-r,i.reverse());var o=lx(i,t,e,n);this._intervalPrecision=o.intervalPrecision,this._interval=o.interval,this._niceExtent=o.niceTickExtent}},e.prototype.calcNiceExtent=function(t){var e=this._extent;if(e[0]===e[1])if(0!==e[0]){var n=e[0];t.fixMax||(e[1]+=n/2),e[0]-=n/2}else e[1]=1;var i=e[1]-e[0];isFinite(i)||(e[0]=0,e[1]=1),this.calcNiceTicks(t.splitNumber,t.minInterval,t.maxInterval);var r=this._interval;t.fixMin||(e[0]=yx(Math.floor(e[0]/r)*r)),t.fixMax||(e[1]=yx(Math.ceil(e[1]/r)*r))},e.prototype.setNiceExtent=function(t,e){this._niceExtent=[t,e]},e.type="interval",e}(ix);ix.registerClass(vx);var mx="undefined"!=typeof Float32Array,xx=mx?Float32Array:Array;function _x(t){return Y(t)?mx?new Float32Array(t):t:new xx(t)}var bx="__ec_stack_";function Sx(t){return t.get("stack")||bx+t.seriesIndex}function Mx(t){return t.dim+t.index}function Ix(t,e){var n=[];return e.eachSeriesByType(t,(function(t){kx(t)&&n.push(t)})),n}function Tx(t){var e=function(t){var e={};E(t,(function(t){var n=t.coordinateSystem.getBaseAxis();if("time"===n.type||"value"===n.type)for(var i=t.getData(),r=n.dim+"_"+n.index,o=i.getDimensionIndex(i.mapDimension(n.dim)),a=i.getStore(),s=0,l=a.count();s<l;++s){var u=a.get(o,s);e[r]?e[r].push(u):e[r]=[u]}}));var n={};for(var i in e)if(e.hasOwnProperty(i)){var r=e[i];if(r){r.sort((function(t,e){return t-e}));for(var o=null,a=1;a<r.length;++a){var s=r[a]-r[a-1];s>0&&(o=null===o?s:Math.min(o,s))}n[i]=o}}return n}(t),n=[];return E(t,(function(t){var i,r=t.coordinateSystem.getBaseAxis(),o=r.getExtent();if("category"===r.type)i=r.getBandWidth();else if("value"===r.type||"time"===r.type){var a=r.dim+"_"+r.index,s=e[a],l=Math.abs(o[1]-o[0]),u=r.scale.getExtent(),h=Math.abs(u[1]-u[0]);i=s?l/h*s:l}else{var c=t.getData();i=Math.abs(o[1]-o[0])/c.count()}var p=Er(t.get("barWidth"),i),d=Er(t.get("barMaxWidth"),i),f=Er(t.get("barMinWidth")||(Lx(t)?.5:1),i),g=t.get("barGap"),y=t.get("barCategoryGap");n.push({bandWidth:i,barWidth:p,barMaxWidth:d,barMinWidth:f,barGap:g,barCategoryGap:y,axisKey:Mx(r),stackId:Sx(t)})})),Cx(n)}function Cx(t){var e={};E(t,(function(t,n){var i=t.axisKey,r=t.bandWidth,o=e[i]||{bandWidth:r,remainedWidth:r,autoWidthCount:0,categoryGap:null,gap:"20%",stacks:{}},a=o.stacks;e[i]=o;var s=t.stackId;a[s]||o.autoWidthCount++,a[s]=a[s]||{width:0,maxWidth:0};var l=t.barWidth;l&&!a[s].width&&(a[s].width=l,l=Math.min(o.remainedWidth,l),o.remainedWidth-=l);var u=t.barMaxWidth;u&&(a[s].maxWidth=u);var h=t.barMinWidth;h&&(a[s].minWidth=h);var c=t.barGap;null!=c&&(o.gap=c);var p=t.barCategoryGap;null!=p&&(o.categoryGap=p)}));var n={};return E(e,(function(t,e){n[e]={};var i=t.stacks,r=t.bandWidth,o=t.categoryGap;if(null==o){var a=G(i).length;o=Math.max(35-4*a,15)+"%"}var s=Er(o,r),l=Er(t.gap,1),u=t.remainedWidth,h=t.autoWidthCount,c=(u-s)/(h+(h-1)*l);c=Math.max(c,0),E(i,(function(t){var e=t.maxWidth,n=t.minWidth;if(t.width){i=t.width;e&&(i=Math.min(i,e)),n&&(i=Math.max(i,n)),t.width=i,u-=i+l*i,h--}else{var i=c;e&&e<i&&(i=Math.min(e,u)),n&&n>i&&(i=n),i!==c&&(t.width=i,u-=i+l*i,h--)}})),c=(u-s)/(h+(h-1)*l),c=Math.max(c,0);var p,d=0;E(i,(function(t,e){t.width||(t.width=c),p=t,d+=t.width*(1+l)})),p&&(d-=p.width*l);var f=-d/2;E(i,(function(t,i){n[e][i]=n[e][i]||{bandWidth:r,offset:f,width:t.width},f+=t.width*(1+l)}))})),n}function Dx(t,e){var n=Ix(t,e),i=Tx(n);E(n,(function(t){var e=t.getData(),n=t.coordinateSystem.getBaseAxis(),r=Sx(t),o=i[Mx(n)][r],a=o.offset,s=o.width;e.setLayout({bandWidth:o.bandWidth,offset:a,size:s})}))}function Ax(t){return{seriesType:t,plan:gg(),reset:function(t){if(kx(t)){var e=t.getData(),n=t.coordinateSystem,i=n.getBaseAxis(),r=n.getOtherAxis(i),o=e.getDimensionIndex(e.mapDimension(r.dim)),a=e.getDimensionIndex(e.mapDimension(i.dim)),s=t.get("showBackground",!0),l=e.mapDimension(r.dim),u=e.getCalculationInfo("stackResultDimension"),h=tx(e,l)&&!!e.getCalculationInfo("stackedOnSeries"),c=r.isHorizontal(),p=function(t,e){return e.toGlobalCoord(e.dataToCoord("log"===e.type?1:0))}(0,r),d=Lx(t),f=t.get("barMinHeight")||0,g=u&&e.getDimensionIndex(u),y=e.getLayout("size"),v=e.getLayout("offset");return{progress:function(t,e){for(var i,r=t.count,l=d&&_x(3*r),u=d&&s&&_x(3*r),m=d&&_x(r),x=n.master.getRect(),_=c?x.width:x.height,b=e.getStore(),w=0;null!=(i=t.next());){var S=b.get(h?g:o,i),M=b.get(a,i),I=p,T=void 0;h&&(T=+S-b.get(o,i));var C=void 0,D=void 0,A=void 0,k=void 0;if(c){var L=n.dataToPoint([S,M]);if(h)I=n.dataToPoint([T,M])[0];C=I,D=L[1]+v,A=L[0]-I,k=y,Math.abs(A)<f&&(A=(A<0?-1:1)*f)}else{L=n.dataToPoint([M,S]);if(h)I=n.dataToPoint([M,T])[1];C=L[0]+v,D=I,A=y,k=L[1]-I,Math.abs(k)<f&&(k=(k<=0?-1:1)*f)}d?(l[w]=C,l[w+1]=D,l[w+2]=c?A:k,u&&(u[w]=c?x.x:C,u[w+1]=c?D:x.y,u[w+2]=_),m[i]=i):e.setItemLayout(i,{x:C,y:D,width:A,height:k}),w+=3}d&&e.setLayout({largePoints:l,largeDataIndices:m,largeBackgroundPoints:u,valueAxisHorizontal:c})}}}}}}function kx(t){return t.coordinateSystem&&"cartesian2d"===t.coordinateSystem.type}function Lx(t){return t.pipelineContext&&t.pipelineContext.large}var Px=function(t){function e(e){var n=t.call(this,e)||this;return n.type="time",n}return n(e,t),e.prototype.getLabel=function(t){var e=this.getSetting("useUTC");return zc(t.value,Lc[function(t){switch(t){case"year":case"month":return"day";case"millisecond":return"millisecond";default:return"second"}}(Nc(this._minLevelUnit))]||Lc.second,e,this.getSetting("locale"))},e.prototype.getFormattedLabel=function(t,e,n){var i=this.getSetting("useUTC");return function(t,e,n,i,r){var o=null;if(X(n))o=n;else if(U(n))o=n(t.value,e,{level:t.level});else{var a=A({},Ac);if(t.level>0)for(var s=0;s<Pc.length;++s)a[Pc[s]]="{primary|"+a[Pc[s]]+"}";var l=n?!1===n.inherit?n:k(n,a):a,u=Vc(t.value,r);if(l[u])o=l[u];else if(l.inherit){for(s=Oc.indexOf(u)-1;s>=0;--s)if(l[u]){o=l[u];break}o=o||a.none}if(Y(o)){var h=null==t.level?0:t.level>=0?t.level:o.length+t.level;o=o[h=Math.min(h,o.length-1)]}}return zc(new Date(t.value),o,r,i)}(t,e,n,this.getSetting("locale"),i)},e.prototype.getTicks=function(){var t=this._interval,e=this._extent,n=[];if(!t)return n;n.push({value:e[0],level:0});var i=this.getSetting("useUTC"),r=function(t,e,n,i){var r=1e4,o=Oc,a=0;function s(t,e,n,r,o,a,s){for(var l=new Date(e),u=e,h=l[r]();u<n&&u<=i[1];)s.push({value:u}),h+=t,l[o](h),u=l.getTime();s.push({value:u,notAdd:!0})}function l(t,r,o){var a=[],l=!r.length;if(!function(t,e,n,i){var r=jr(e),o=jr(n),a=function(t){return Bc(r,t,i)===Bc(o,t,i)},s=function(){return a("year")},l=function(){return s()&&a("month")},u=function(){return l()&&a("day")},h=function(){return u()&&a("hour")},c=function(){return h()&&a("minute")},p=function(){return c()&&a("second")},d=function(){return p()&&a("millisecond")};switch(t){case"year":return s();case"month":return l();case"day":return u();case"hour":return h();case"minute":return c();case"second":return p();case"millisecond":return d()}}(Nc(t),i[0],i[1],n)){l&&(r=[{value:Bx(new Date(i[0]),t,n)},{value:i[1]}]);for(var u=0;u<r.length-1;u++){var h=r[u].value,c=r[u+1].value;if(h!==c){var p=void 0,d=void 0,f=void 0,g=!1;switch(t){case"year":p=Math.max(1,Math.round(e/Cc/365)),d=Fc(n),f=Zc(n);break;case"half-year":case"quarter":case"month":p=Nx(e),d=Gc(n),f=jc(n);break;case"week":case"half-week":case"day":p=Rx(e),d=Wc(n),f=qc(n),g=!0;break;case"half-day":case"quarter-day":case"hour":p=Ex(e),d=Hc(n),f=Kc(n);break;case"minute":p=zx(e,!0),d=Yc(n),f=$c(n);break;case"second":p=zx(e,!1),d=Uc(n),f=Jc(n);break;case"millisecond":p=Vx(e),d=Xc(n),f=Qc(n)}s(p,h,c,d,f,g,a),"year"===t&&o.length>1&&0===u&&o.unshift({value:o[0].value-p})}}for(u=0;u<a.length;u++)o.push(a[u]);return a}}for(var u=[],h=[],c=0,p=0,d=0;d<o.length&&a++<r;++d){var f=Nc(o[d]);if(Ec(o[d]))if(l(o[d],u[u.length-1]||[],h),f!==(o[d+1]?Nc(o[d+1]):null)){if(h.length){p=c,h.sort((function(t,e){return t.value-e.value}));for(var g=[],y=0;y<h.length;++y){var v=h[y].value;0!==y&&h[y-1].value===v||(g.push(h[y]),v>=i[0]&&v<=i[1]&&c++)}var m=(i[1]-i[0])/e;if(c>1.5*m&&p>m/1.5)break;if(u.push(g),c>m||t===o[d])break}h=[]}}0;var x=B(z(u,(function(t){return B(t,(function(t){return t.value>=i[0]&&t.value<=i[1]&&!t.notAdd}))})),(function(t){return t.length>0})),_=[],b=x.length-1;for(d=0;d<x.length;++d)for(var w=x[d],S=0;S<w.length;++S)_.push({value:w[S].value,level:b-d});_.sort((function(t,e){return t.value-e.value}));var M=[];for(d=0;d<_.length;++d)0!==d&&_[d].value===_[d-1].value||M.push(_[d]);return M}(this._minLevelUnit,this._approxInterval,i,e);return(n=n.concat(r)).push({value:e[1],level:0}),n},e.prototype.calcNiceExtent=function(t){var e=this._extent;if(e[0]===e[1]&&(e[0]-=Cc,e[1]+=Cc),e[1]===-1/0&&e[0]===1/0){var n=new Date;e[1]=+new Date(n.getFullYear(),n.getMonth(),n.getDate()),e[0]=e[1]-Cc}this.calcNiceTicks(t.splitNumber,t.minInterval,t.maxInterval)},e.prototype.calcNiceTicks=function(t,e,n){t=t||10;var i=this._extent,r=i[1]-i[0];this._approxInterval=r/t,null!=e&&this._approxInterval<e&&(this._approxInterval=e),null!=n&&this._approxInterval>n&&(this._approxInterval=n);var o=Ox.length,a=Math.min(function(t,e,n,i){for(;n<i;){var r=n+i>>>1;t[r][1]<e?n=r+1:i=r}return n}(Ox,this._approxInterval,0,o),o-1);this._interval=Ox[a][1],this._minLevelUnit=Ox[Math.max(a-1,0)][0]},e.prototype.parse=function(t){return j(t)?t:+jr(t)},e.prototype.contain=function(t){return px(this.parse(t),this._extent)},e.prototype.normalize=function(t){return dx(this.parse(t),this._extent)},e.prototype.scale=function(t){return fx(t,this._extent)},e.type="time",e}(vx),Ox=[["second",Mc],["minute",Ic],["hour",Tc],["quarter-day",216e5],["half-day",432e5],["day",10368e4],["half-week",3024e5],["week",6048e5],["month",26784e5],["quarter",8208e6],["half-year",Dc/2],["year",Dc]];function Rx(t,e){return(t/=Cc)>16?16:t>7.5?7:t>3.5?4:t>1.5?2:1}function Nx(t){return(t/=2592e6)>6?6:t>3?3:t>2?2:1}function Ex(t){return(t/=Tc)>12?12:t>6?6:t>3.5?4:t>2?2:1}function zx(t,e){return(t/=e?Ic:Mc)>30?30:t>20?20:t>15?15:t>10?10:t>5?5:t>2?2:1}function Vx(t){return $r(t,!0)}function Bx(t,e,n){var i=new Date(t);switch(Nc(e)){case"year":case"month":i[jc(n)](0);case"day":i[qc(n)](1);case"hour":i[Kc(n)](0);case"minute":i[$c(n)](0);case"second":i[Jc(n)](0),i[Qc(n)](0)}return i.getTime()}ix.registerClass(Px);var Fx=ix.prototype,Gx=vx.prototype,Wx=zr,Hx=Math.floor,Yx=Math.ceil,Ux=Math.pow,Xx=Math.log,Zx=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="log",e.base=10,e._originalScale=new vx,e._interval=0,e}return n(e,t),e.prototype.getTicks=function(t){var e=this._originalScale,n=this._extent,i=e.getExtent();return z(Gx.getTicks.call(this,t),(function(t){var e=t.value,r=zr(Ux(this.base,e));return r=e===n[0]&&this._fixMin?qx(r,i[0]):r,{value:r=e===n[1]&&this._fixMax?qx(r,i[1]):r}}),this)},e.prototype.setExtent=function(t,e){var n=this.base;t=Xx(t)/Xx(n),e=Xx(e)/Xx(n),Gx.setExtent.call(this,t,e)},e.prototype.getExtent=function(){var t=this.base,e=Fx.getExtent.call(this);e[0]=Ux(t,e[0]),e[1]=Ux(t,e[1]);var n=this._originalScale.getExtent();return this._fixMin&&(e[0]=qx(e[0],n[0])),this._fixMax&&(e[1]=qx(e[1],n[1])),e},e.prototype.unionExtent=function(t){this._originalScale.unionExtent(t);var e=this.base;t[0]=Xx(t[0])/Xx(e),t[1]=Xx(t[1])/Xx(e),Fx.unionExtent.call(this,t)},e.prototype.unionExtentFromData=function(t,e){this.unionExtent(t.getApproximateExtent(e))},e.prototype.calcNiceTicks=function(t){t=t||10;var e=this._extent,n=e[1]-e[0];if(!(n===1/0||n<=0)){var i=qr(n);for(t/n*i<=.5&&(i*=10);!isNaN(i)&&Math.abs(i)<1&&Math.abs(i)>0;)i*=10;var r=[zr(Yx(e[0]/i)*i),zr(Hx(e[1]/i)*i)];this._interval=i,this._niceExtent=r}},e.prototype.calcNiceExtent=function(t){Gx.calcNiceExtent.call(this,t),this._fixMin=t.fixMin,this._fixMax=t.fixMax},e.prototype.parse=function(t){return t},e.prototype.contain=function(t){return px(t=Xx(t)/Xx(this.base),this._extent)},e.prototype.normalize=function(t){return dx(t=Xx(t)/Xx(this.base),this._extent)},e.prototype.scale=function(t){return t=fx(t,this._extent),Ux(this.base,t)},e.type="log",e}(ix),jx=Zx.prototype;function qx(t,e){return Wx(t,Br(e))}jx.getMinorTicks=Gx.getMinorTicks,jx.getLabel=Gx.getLabel,ix.registerClass(Zx);var Kx=function(){function t(t,e,n){this._prepareParams(t,e,n)}return t.prototype._prepareParams=function(t,e,n){n[1]<n[0]&&(n=[NaN,NaN]),this._dataMin=n[0],this._dataMax=n[1];var i=this._isOrdinal="ordinal"===t.type;this._needCrossZero="interval"===t.type&&e.getNeedCrossZero&&e.getNeedCrossZero();var r=this._modelMinRaw=e.get("min",!0);U(r)?this._modelMinNum=t_(t,r({min:n[0],max:n[1]})):"dataMin"!==r&&(this._modelMinNum=t_(t,r));var o=this._modelMaxRaw=e.get("max",!0);if(U(o)?this._modelMaxNum=t_(t,o({min:n[0],max:n[1]})):"dataMax"!==o&&(this._modelMaxNum=t_(t,o)),i)this._axisDataLen=e.getCategories().length;else{var a=e.get("boundaryGap"),s=Y(a)?a:[a||0,a||0];"boolean"==typeof s[0]||"boolean"==typeof s[1]?this._boundaryGapInner=[0,0]:this._boundaryGapInner=[gr(s[0],1),gr(s[1],1)]}},t.prototype.calculate=function(){var t=this._isOrdinal,e=this._dataMin,n=this._dataMax,i=this._axisDataLen,r=this._boundaryGapInner,o=t?null:n-e||Math.abs(e),a="dataMin"===this._modelMinRaw?e:this._modelMinNum,s="dataMax"===this._modelMaxRaw?n:this._modelMaxNum,l=null!=a,u=null!=s;null==a&&(a=t?i?0:NaN:e-r[0]*o),null==s&&(s=t?i?i-1:NaN:n+r[1]*o),(null==a||!isFinite(a))&&(a=NaN),(null==s||!isFinite(s))&&(s=NaN);var h=nt(a)||nt(s)||t&&!i;this._needCrossZero&&(a>0&&s>0&&!l&&(a=0),a<0&&s<0&&!u&&(s=0));var c=this._determinedMin,p=this._determinedMax;return null!=c&&(a=c,l=!0),null!=p&&(s=p,u=!0),{min:a,max:s,minFixed:l,maxFixed:u,isBlank:h}},t.prototype.modifyDataMinMax=function(t,e){this[Jx[t]]=e},t.prototype.setDeterminedMinMax=function(t,e){var n=$x[t];this[n]=e},t.prototype.freeze=function(){this.frozen=!0},t}(),$x={min:"_determinedMin",max:"_determinedMax"},Jx={min:"_dataMin",max:"_dataMax"};function Qx(t,e,n){var i=t.rawExtentInfo;return i||(i=new Kx(t,e,n),t.rawExtentInfo=i,i)}function t_(t,e){return null==e?null:nt(e)?NaN:t.parse(e)}function e_(t,e){var n=t.type,i=Qx(t,e,t.getExtent()).calculate();t.setBlank(i.isBlank);var r=i.min,o=i.max,a=e.ecModel;if(a&&"time"===n){var s=Ix("bar",a),l=!1;if(E(s,(function(t){l=l||t.getBaseAxis()===e.axis})),l){var u=Tx(s),h=function(t,e,n,i){var r=n.axis.getExtent(),o=r[1]-r[0],a=function(t,e,n){if(t&&e){var i=t[Mx(e)];return null!=i&&null!=n?i[Sx(n)]:i}}(i,n.axis);if(void 0===a)return{min:t,max:e};var s=1/0;E(a,(function(t){s=Math.min(t.offset,s)}));var l=-1/0;E(a,(function(t){l=Math.max(t.offset+t.width,l)})),s=Math.abs(s),l=Math.abs(l);var u=s+l,h=e-t,c=h/(1-(s+l)/o)-h;return{min:t-=c*(s/u),max:e+=c*(l/u)}}(r,o,e,u);r=h.min,o=h.max}}return{extent:[r,o],fixMin:i.minFixed,fixMax:i.maxFixed}}function n_(t,e){var n=e,i=e_(t,n),r=i.extent,o=n.get("splitNumber");t instanceof Zx&&(t.base=n.get("logBase"));var a=t.type,s=n.get("interval"),l="interval"===a||"time"===a;t.setExtent(r[0],r[1]),t.calcNiceExtent({splitNumber:o,fixMin:i.fixMin,fixMax:i.fixMax,minInterval:l?n.get("minInterval"):null,maxInterval:l?n.get("maxInterval"):null}),null!=s&&t.setInterval&&t.setInterval(s)}function i_(t,e){if(e=e||t.get("type"))switch(e){case"category":return new gx({ordinalMeta:t.getOrdinalMeta?t.getOrdinalMeta():t.getCategories(),extent:[1/0,-1/0]});case"time":return new Px({locale:t.ecModel.getLocaleModel(),useUTC:t.ecModel.get("useUTC")});default:return new(ix.getClass(e)||vx)}}function r_(t){var e,n,i=t.getLabelModel().get("formatter"),r="category"===t.type?t.scale.getExtent()[0]:null;return"time"===t.scale.type?(n=i,function(e,i){return t.scale.getFormattedLabel(e,i,n)}):X(i)?function(e){return function(n){var i=t.scale.getLabel(n);return e.replace("{value}",null!=i?i:"")}}(i):U(i)?(e=i,function(n,i){return null!=r&&(i=n.value-r),e(o_(t,n),i,null!=n.level?{level:n.level}:null)}):function(e){return t.scale.getLabel(e)}}function o_(t,e){return"category"===t.type?t.scale.getLabel(e):e.value}function a_(t,e){var n=e*Math.PI/180,i=t.width,r=t.height,o=i*Math.abs(Math.cos(n))+Math.abs(r*Math.sin(n)),a=i*Math.abs(Math.sin(n))+Math.abs(r*Math.cos(n));return new sr(t.x,t.y,o,a)}function s_(t){var e=t.get("interval");return null==e?"auto":e}function l_(t){return"category"===t.type&&0===s_(t.getLabelModel())}function u_(t,e){var n={};return E(t.mapDimensionsAll(e),(function(e){n[ex(t,e)]=!0})),G(n)}var h_=function(){function t(){}return t.prototype.getNeedCrossZero=function(){return!this.option.scale},t.prototype.getCoordSysModel=function(){},t}();var c_={isDimensionStacked:tx,enableDataStack:Qm,getStackedDimension:ex};var p_=Object.freeze({__proto__:null,createList:function(t){return nx(null,t)},getLayoutRect:mp,dataStack:c_,createScale:function(t,e){var n=e;e instanceof pc||(n=new pc(e));var i=i_(n);return i.setExtent(t[0],t[1]),n_(i,n),i},mixinAxisModelCommonMethods:function(t){R(t,h_)},getECData:Ws,createTextStyle:function(t,e){return Yh(t,null,null,"normal"!==(e=e||{}).state)},createDimensions:function(t,e){return jm(t,e).dimensions},createSymbol:ky,enableHoverEmphasis:Pl});function d_(t,e){return Math.abs(t-e)<1e-8}function f_(t,e,n){var i=0,r=t[0];if(!r)return!1;for(var o=1;o<t.length;o++){var a=t[o];i+=ns(r[0],r[1],a[0],a[1],e,n),r=a}var s=t[0];return d_(r[0],s[0])&&d_(r[1],s[1])||(i+=ns(r[0],r[1],s[0],s[1],e,n)),0!==i}var g_=[];function y_(t,e){for(var n=0;n<t.length;n++)Ft(t[n],t[n],e)}function v_(t,e,n,i){for(var r=0;r<t.length;r++){var o=t[r];i&&(o=i.project(o)),o&&isFinite(o[0])&&isFinite(o[1])&&(Gt(e,e,o),Wt(n,n,o))}}var m_=function(){function t(t){this.name=t}return t.prototype.setCenter=function(t){this._center=t},t.prototype.getCenter=function(){var t=this._center;return t||(t=this._center=this.calcCenter()),t},t}(),x_=function(t,e){this.type="polygon",this.exterior=t,this.interiors=e},__=function(t){this.type="linestring",this.points=t},b_=function(t){function e(e,n,i){var r=t.call(this,e)||this;return r.type="geoJSON",r.geometries=n,r._center=i&&[i[0],i[1]],r}return n(e,t),e.prototype.calcCenter=function(){for(var t,e=this.geometries,n=0,i=0;i<e.length;i++){var r=e[i],o=r.exterior,a=o&&o.length;a>n&&(t=r,n=a)}if(t)return function(t){for(var e=0,n=0,i=0,r=t.length,o=t[r-1][0],a=t[r-1][1],s=0;s<r;s++){var l=t[s][0],u=t[s][1],h=o*u-l*a;e+=h,n+=(o+l)*h,i+=(a+u)*h,o=l,a=u}return e?[n/e/3,i/e/3,e]:[t[0][0]||0,t[0][1]||0]}(t.exterior);var s=this.getBoundingRect();return[s.x+s.width/2,s.y+s.height/2]},e.prototype.getBoundingRect=function(t){var e=this._rect;if(e&&!t)return e;var n=[1/0,1/0],i=[-1/0,-1/0];return E(this.geometries,(function(e){"polygon"===e.type?v_(e.exterior,n,i,t):E(e.points,(function(e){v_(e,n,i,t)}))})),isFinite(n[0])&&isFinite(n[1])&&isFinite(i[0])&&isFinite(i[1])||(n[0]=n[1]=i[0]=i[1]=0),e=new sr(n[0],n[1],i[0]-n[0],i[1]-n[1]),t||(this._rect=e),e},e.prototype.contain=function(t){var e=this.getBoundingRect(),n=this.geometries;if(!e.contain(t[0],t[1]))return!1;t:for(var i=0,r=n.length;i<r;i++){var o=n[i];if("polygon"===o.type){var a=o.exterior,s=o.interiors;if(f_(a,t[0],t[1])){for(var l=0;l<(s?s.length:0);l++)if(f_(s[l],t[0],t[1]))continue t;return!0}}}return!1},e.prototype.transformTo=function(t,e,n,i){var r=this.getBoundingRect(),o=r.width/r.height;n?i||(i=n/o):n=o*i;for(var a=new sr(t,e,n,i),s=r.calculateTransform(a),l=this.geometries,u=0;u<l.length;u++){var h=l[u];"polygon"===h.type?(y_(h.exterior,s),E(h.interiors,(function(t){y_(t,s)}))):E(h.points,(function(t){y_(t,s)}))}(r=this._rect).copy(a),this._center=[r.x+r.width/2,r.y+r.height/2]},e.prototype.cloneShallow=function(t){null==t&&(t=this.name);var n=new e(t,this.geometries,this._center);return n._rect=this._rect,n.transformTo=null,n},e}(m_),w_=function(t){function e(e,n){var i=t.call(this,e)||this;return i.type="geoSVG",i._elOnlyForCalculate=n,i}return n(e,t),e.prototype.calcCenter=function(){for(var t=this._elOnlyForCalculate,e=t.getBoundingRect(),n=[e.x+e.width/2,e.y+e.height/2],i=Oi(g_),r=t;r&&!r.isGeoSVGGraphicRoot;)Ni(i,r.getLocalTransform(),i),r=r.parent;return Bi(i,i),Ft(n,n,i),n},e}(m_);function S_(t,e,n){for(var i=0;i<t.length;i++)t[i]=M_(t[i],e[i],n)}function M_(t,e,n){for(var i=[],r=e[0],o=e[1],a=0;a<t.length;a+=2){var s=t.charCodeAt(a)-64,l=t.charCodeAt(a+1)-64;s=s>>1^-(1&s),l=l>>1^-(1&l),r=s+=r,o=l+=o,i.push([s/n,l/n])}return i}function I_(t,e){return z(B((t=function(t){if(!t.UTF8Encoding)return t;var e=t,n=e.UTF8Scale;return null==n&&(n=1024),E(e.features,(function(t){var e=t.geometry,i=e.encodeOffsets,r=e.coordinates;if(i)switch(e.type){case"LineString":e.coordinates=M_(r,i,n);break;case"Polygon":case"MultiLineString":S_(r,i,n);break;case"MultiPolygon":E(r,(function(t,e){return S_(t,i[e],n)}))}})),e.UTF8Encoding=!1,e}(t)).features,(function(t){return t.geometry&&t.properties&&t.geometry.coordinates.length>0})),(function(t){var n=t.properties,i=t.geometry,r=[];switch(i.type){case"Polygon":var o=i.coordinates;r.push(new x_(o[0],o.slice(1)));break;case"MultiPolygon":E(i.coordinates,(function(t){t[0]&&r.push(new x_(t[0],t.slice(1)))}));break;case"LineString":r.push(new __([i.coordinates]));break;case"MultiLineString":r.push(new __(i.coordinates))}var a=new b_(n[e||"name"],r,n.cp);return a.properties=n,a}))}var T_=Object.freeze({__proto__:null,linearMap:Nr,round:zr,asc:Vr,getPrecision:Br,getPrecisionSafe:Fr,getPixelPrecision:Gr,getPercentWithPrecision:Wr,MAX_SAFE_INTEGER:Yr,remRadian:Ur,isRadianAroundZero:Xr,parseDate:jr,quantity:qr,quantityExponent:Kr,nice:$r,quantile:Jr,reformIntervals:Qr,isNumeric:eo,numericToNumber:to}),C_=Object.freeze({__proto__:null,parse:jr,format:zc}),D_=Object.freeze({__proto__:null,extendShape:dh,extendPath:gh,makePath:mh,makeImage:xh,mergePath:bh,resizePath:wh,createIcon:Lh,updateProps:ih,initProps:rh,getTransform:Mh,clipPointsByRect:Ah,clipRectByRect:kh,registerShape:yh,getShapeClass:vh,Group:Cr,Image:xs,Text:As,Circle:uu,Ellipse:cu,Sector:Tu,Ring:Du,Polygon:Lu,Polyline:Ou,Rect:Ts,Line:Eu,BezierCurve:Fu,Arc:Wu,IncrementalDisplayable:Qu,CompoundPath:Hu,LinearGradient:Uu,RadialGradient:Xu,BoundingRect:sr}),A_=Object.freeze({__proto__:null,addCommas:tp,toCamelCase:ep,normalizeCssArray:np,encodeHTML:op,formatTpl:up,getTooltipMarker:hp,formatTime:function(t,e,n){"week"!==t&&"month"!==t&&"quarter"!==t&&"half-year"!==t&&"year"!==t||(t="MM-dd\nyyyy");var i=jr(e),r=n?"getUTC":"get",o=i[r+"FullYear"](),a=i[r+"Month"]()+1,s=i[r+"Date"](),l=i[r+"Hours"](),u=i[r+"Minutes"](),h=i[r+"Seconds"](),c=i[r+"Milliseconds"]();return t=t.replace("MM",Rc(a,2)).replace("M",a).replace("yyyy",o).replace("yy",o%100+"").replace("dd",Rc(s,2)).replace("d",s).replace("hh",Rc(l,2)).replace("h",l).replace("mm",Rc(u,2)).replace("m",u).replace("ss",Rc(h,2)).replace("s",h).replace("SSS",Rc(c,3))},capitalFirst:function(t){return t?t.charAt(0).toUpperCase()+t.substr(1):t},truncateText:$o,getTextRect:function(t,e,n,i,r,o,a,s){return new As({style:{text:t,font:e,align:n,verticalAlign:i,padding:r,rich:o,overflow:a?"truncate":null,lineHeight:s}}).getBoundingRect()}}),k_=Object.freeze({__proto__:null,map:z,each:E,indexOf:P,inherits:O,reduce:V,filter:B,bind:W,curry:H,isArray:Y,isString:X,isObject:q,isFunction:U,extend:A,defaults:k,clone:T,merge:C}),L_=So();function P_(t){return"category"===t.type?function(t){var e=t.getLabelModel(),n=R_(t,e);return!e.get("show")||t.scale.isBlank()?{labels:[],labelCategoryInterval:n.labelCategoryInterval}:n}(t):function(t){var e=t.scale.getTicks(),n=r_(t);return{labels:z(e,(function(e,i){return{level:e.level,formattedLabel:n(e,i),rawLabel:t.scale.getLabel(e),tickValue:e.value}}))}}(t)}function O_(t,e){return"category"===t.type?function(t,e){var n,i,r=N_(t,"ticks"),o=s_(e),a=E_(r,o);if(a)return a;e.get("show")&&!t.scale.isBlank()||(n=[]);if(U(o))n=B_(t,o,!0);else if("auto"===o){var s=R_(t,t.getLabelModel());i=s.labelCategoryInterval,n=z(s.labels,(function(t){return t.tickValue}))}else n=V_(t,i=o,!0);return z_(r,o,{ticks:n,tickCategoryInterval:i})}(t,e):{ticks:z(t.scale.getTicks(),(function(t){return t.value}))}}function R_(t,e){var n,i,r=N_(t,"labels"),o=s_(e),a=E_(r,o);return a||(U(o)?n=B_(t,o):(i="auto"===o?function(t){var e=L_(t).autoInterval;return null!=e?e:L_(t).autoInterval=t.calculateCategoryInterval()}(t):o,n=V_(t,i)),z_(r,o,{labels:n,labelCategoryInterval:i}))}function N_(t,e){return L_(t)[e]||(L_(t)[e]=[])}function E_(t,e){for(var n=0;n<t.length;n++)if(t[n].key===e)return t[n].value}function z_(t,e,n){return t.push({key:e,value:n}),n}function V_(t,e,n){var i=r_(t),r=t.scale,o=r.getExtent(),a=t.getLabelModel(),s=[],l=Math.max((e||0)+1,1),u=o[0],h=r.count();0!==u&&l>1&&h/l>2&&(u=Math.round(Math.ceil(u/l)*l));var c=l_(t),p=a.get("showMinLabel")||c,d=a.get("showMaxLabel")||c;p&&u!==o[0]&&g(o[0]);for(var f=u;f<=o[1];f+=l)g(f);function g(t){var e={value:t};s.push(n?t:{formattedLabel:i(e),rawLabel:r.getLabel(e),tickValue:t})}return d&&f-l!==o[1]&&g(o[1]),s}function B_(t,e,n){var i=t.scale,r=r_(t),o=[];return E(i.getTicks(),(function(t){var a=i.getLabel(t),s=t.value;e(t.value,a)&&o.push(n?s:{formattedLabel:r(t),rawLabel:a,tickValue:s})})),o}var F_=[0,1],G_=function(){function t(t,e,n){this.onBand=!1,this.inverse=!1,this.dim=t,this.scale=e,this._extent=n||[0,0]}return t.prototype.contain=function(t){var e=this._extent,n=Math.min(e[0],e[1]),i=Math.max(e[0],e[1]);return t>=n&&t<=i},t.prototype.containData=function(t){return this.scale.contain(t)},t.prototype.getExtent=function(){return this._extent.slice()},t.prototype.getPixelPrecision=function(t){return Gr(t||this.scale.getExtent(),this._extent)},t.prototype.setExtent=function(t,e){var n=this._extent;n[0]=t,n[1]=e},t.prototype.dataToCoord=function(t,e){var n=this._extent,i=this.scale;return t=i.normalize(t),this.onBand&&"ordinal"===i.type&&W_(n=n.slice(),i.count()),Nr(t,F_,n,e)},t.prototype.coordToData=function(t,e){var n=this._extent,i=this.scale;this.onBand&&"ordinal"===i.type&&W_(n=n.slice(),i.count());var r=Nr(t,n,F_,e);return this.scale.scale(r)},t.prototype.pointToData=function(t,e){},t.prototype.getTicksCoords=function(t){var e=(t=t||{}).tickModel||this.getTickModel(),n=z(O_(this,e).ticks,(function(t){return{coord:this.dataToCoord("ordinal"===this.scale.type?this.scale.getRawOrdinalNumber(t):t),tickValue:t}}),this);return function(t,e,n,i){var r=e.length;if(!t.onBand||n||!r)return;var o,a,s=t.getExtent();if(1===r)e[0].coord=s[0],o=e[1]={coord:s[0]};else{var l=e[r-1].tickValue-e[0].tickValue,u=(e[r-1].coord-e[0].coord)/l;E(e,(function(t){t.coord-=u/2})),a=1+t.scale.getExtent()[1]-e[r-1].tickValue,o={coord:e[r-1].coord+u*a},e.push(o)}var h=s[0]>s[1];c(e[0].coord,s[0])&&(i?e[0].coord=s[0]:e.shift());i&&c(s[0],e[0].coord)&&e.unshift({coord:s[0]});c(s[1],o.coord)&&(i?o.coord=s[1]:e.pop());i&&c(o.coord,s[1])&&e.push({coord:s[1]});function c(t,e){return t=zr(t),e=zr(e),h?t>e:t<e}}(this,n,e.get("alignWithLabel"),t.clamp),n},t.prototype.getMinorTicksCoords=function(){if("ordinal"===this.scale.type)return[];var t=this.model.getModel("minorTick").get("splitNumber");return t>0&&t<100||(t=5),z(this.scale.getMinorTicks(t),(function(t){return z(t,(function(t){return{coord:this.dataToCoord(t),tickValue:t}}),this)}),this)},t.prototype.getViewLabels=function(){return P_(this).labels},t.prototype.getLabelModel=function(){return this.model.getModel("axisLabel")},t.prototype.getTickModel=function(){return this.model.getModel("axisTick")},t.prototype.getBandWidth=function(){var t=this._extent,e=this.scale.getExtent(),n=e[1]-e[0]+(this.onBand?1:0);0===n&&(n=1);var i=Math.abs(t[1]-t[0]);return Math.abs(i)/n},t.prototype.calculateCategoryInterval=function(){return function(t){var e=function(t){var e=t.getLabelModel();return{axisRotate:t.getRotate?t.getRotate():t.isHorizontal&&!t.isHorizontal()?90:0,labelRotate:e.get("rotate")||0,font:e.getFont()}}(t),n=r_(t),i=(e.axisRotate-e.labelRotate)/180*Math.PI,r=t.scale,o=r.getExtent(),a=r.count();if(o[1]-o[0]<1)return 0;var s=1;a>40&&(s=Math.max(1,Math.floor(a/40)));for(var l=o[0],u=t.dataToCoord(l+1)-t.dataToCoord(l),h=Math.abs(u*Math.cos(i)),c=Math.abs(u*Math.sin(i)),p=0,d=0;l<=o[1];l+=s){var f,g,y=cr(n({value:l}),e.font,"center","top");f=1.3*y.width,g=1.3*y.height,p=Math.max(p,f,7),d=Math.max(d,g,7)}var v=p/h,m=d/c;isNaN(v)&&(v=1/0),isNaN(m)&&(m=1/0);var x=Math.max(0,Math.floor(Math.min(v,m))),_=L_(t.model),b=t.getExtent(),w=_.lastAutoInterval,S=_.lastTickCount;return null!=w&&null!=S&&Math.abs(w-x)<=1&&Math.abs(S-a)<=1&&w>x&&_.axisExtent0===b[0]&&_.axisExtent1===b[1]?x=w:(_.lastTickCount=a,_.lastAutoInterval=x,_.axisExtent0=b[0],_.axisExtent1=b[1]),x}(this)},t}();function W_(t,e){var n=(t[1]-t[0])/e/2;t[0]+=n,t[1]-=n}var H_=2*Math.PI,Y_=ja.CMD,U_=["top","right","bottom","left"];function X_(t,e,n,i,r){var o=n.width,a=n.height;switch(t){case"top":i.set(n.x+o/2,n.y-e),r.set(0,-1);break;case"bottom":i.set(n.x+o/2,n.y+a+e),r.set(0,1);break;case"left":i.set(n.x-e,n.y+a/2),r.set(-1,0);break;case"right":i.set(n.x+o+e,n.y+a/2),r.set(1,0)}}function Z_(t,e,n,i,r,o,a,s,l){a-=t,s-=e;var u=Math.sqrt(a*a+s*s),h=(a/=u)*n+t,c=(s/=u)*n+e;if(Math.abs(i-r)%H_<1e-4)return l[0]=h,l[1]=c,u-n;if(o){var p=i;i=Qa(r),r=Qa(p)}else i=Qa(i),r=Qa(r);i>r&&(r+=H_);var d=Math.atan2(s,a);if(d<0&&(d+=H_),d>=i&&d<=r||d+H_>=i&&d+H_<=r)return l[0]=h,l[1]=c,u-n;var f=n*Math.cos(i)+t,g=n*Math.sin(i)+e,y=n*Math.cos(r)+t,v=n*Math.sin(r)+e,m=(f-a)*(f-a)+(g-s)*(g-s),x=(y-a)*(y-a)+(v-s)*(v-s);return m<x?(l[0]=f,l[1]=g,Math.sqrt(m)):(l[0]=y,l[1]=v,Math.sqrt(x))}function j_(t,e,n,i,r,o,a,s){var l=r-t,u=o-e,h=n-t,c=i-e,p=Math.sqrt(h*h+c*c),d=(l*(h/=p)+u*(c/=p))/p;s&&(d=Math.min(Math.max(d,0),1)),d*=p;var f=a[0]=t+d*h,g=a[1]=e+d*c;return Math.sqrt((f-r)*(f-r)+(g-o)*(g-o))}function q_(t,e,n,i,r,o,a){n<0&&(t+=n,n=-n),i<0&&(e+=i,i=-i);var s=t+n,l=e+i,u=a[0]=Math.min(Math.max(r,t),s),h=a[1]=Math.min(Math.max(o,e),l);return Math.sqrt((u-r)*(u-r)+(h-o)*(h-o))}var K_=[];function $_(t,e,n){var i=q_(e.x,e.y,e.width,e.height,t.x,t.y,K_);return n.set(K_[0],K_[1]),i}function J_(t,e,n){for(var i,r,o=0,a=0,s=0,l=0,u=1/0,h=e.data,c=t.x,p=t.y,d=0;d<h.length;){var f=h[d++];1===d&&(s=o=h[d],l=a=h[d+1]);var g=u;switch(f){case Y_.M:o=s=h[d++],a=l=h[d++];break;case Y_.L:g=j_(o,a,h[d],h[d+1],c,p,K_,!0),o=h[d++],a=h[d++];break;case Y_.C:g=je(o,a,h[d++],h[d++],h[d++],h[d++],h[d],h[d+1],c,p,K_),o=h[d++],a=h[d++];break;case Y_.Q:g=tn(o,a,h[d++],h[d++],h[d],h[d+1],c,p,K_),o=h[d++],a=h[d++];break;case Y_.A:var y=h[d++],v=h[d++],m=h[d++],x=h[d++],_=h[d++],b=h[d++];d+=1;var w=!!(1-h[d++]);i=Math.cos(_)*m+y,r=Math.sin(_)*x+v,d<=1&&(s=i,l=r),g=Z_(y,v,x,_,_+b,w,(c-y)*x/m+y,p,K_),o=Math.cos(_+b)*m+y,a=Math.sin(_+b)*x+v;break;case Y_.R:g=q_(s=o=h[d++],l=a=h[d++],h[d++],h[d++],c,p,K_);break;case Y_.Z:g=j_(o,a,s,l,c,p,K_,!0),o=s,a=l}g<u&&(u=g,n.set(K_[0],K_[1]))}return u}var Q_=new Ji,tb=new Ji,eb=new Ji,nb=new Ji,ib=new Ji;function rb(t,e){if(t){var n=t.getTextGuideLine(),i=t.getTextContent();if(i&&n){var r=t.textGuideLineConfig||{},o=[[0,0],[0,0],[0,0]],a=r.candidates||U_,s=i.getBoundingRect().clone();s.applyTransform(i.getComputedTransform());var l=1/0,u=r.anchor,h=t.getComputedTransform(),c=h&&Bi([],h),p=e.get("length2")||0;u&&eb.copy(u);for(var d=0;d<a.length;d++){X_(a[d],0,s,Q_,nb),Ji.scaleAndAdd(tb,Q_,nb,p),tb.transform(c);var f=t.getBoundingRect(),g=u?u.distance(tb):t instanceof fs?J_(tb,t.path,eb):$_(tb,f,eb);g<l&&(l=g,tb.transform(h),eb.transform(h),eb.toArray(o[0]),tb.toArray(o[1]),Q_.toArray(o[2]))}sb(o,e.get("minTurnAngle")),n.setShape({points:o})}}}var ob=[],ab=new Ji;function sb(t,e){if(e<=180&&e>0){e=e/180*Math.PI,Q_.fromArray(t[0]),tb.fromArray(t[1]),eb.fromArray(t[2]),Ji.sub(nb,Q_,tb),Ji.sub(ib,eb,tb);var n=nb.len(),i=ib.len();if(!(n<.001||i<.001)){nb.scale(1/n),ib.scale(1/i);var r=nb.dot(ib);if(Math.cos(e)<r){var o=j_(tb.x,tb.y,eb.x,eb.y,Q_.x,Q_.y,ob,!1);ab.fromArray(ob),ab.scaleAndAdd(ib,o/Math.tan(Math.PI-e));var a=eb.x!==tb.x?(ab.x-tb.x)/(eb.x-tb.x):(ab.y-tb.y)/(eb.y-tb.y);if(isNaN(a))return;a<0?Ji.copy(ab,tb):a>1&&Ji.copy(ab,eb),ab.toArray(t[1])}}}}function lb(t,e,n){if(n<=180&&n>0){n=n/180*Math.PI,Q_.fromArray(t[0]),tb.fromArray(t[1]),eb.fromArray(t[2]),Ji.sub(nb,tb,Q_),Ji.sub(ib,eb,tb);var i=nb.len(),r=ib.len();if(!(i<.001||r<.001))if(nb.scale(1/i),ib.scale(1/r),nb.dot(e)<Math.cos(n)){var o=j_(tb.x,tb.y,eb.x,eb.y,Q_.x,Q_.y,ob,!1);ab.fromArray(ob);var a=Math.PI/2,s=a+Math.acos(ib.dot(e))-n;if(s>=a)Ji.copy(ab,eb);else{ab.scaleAndAdd(ib,o/Math.tan(Math.PI/2-s));var l=eb.x!==tb.x?(ab.x-tb.x)/(eb.x-tb.x):(ab.y-tb.y)/(eb.y-tb.y);if(isNaN(l))return;l<0?Ji.copy(ab,tb):l>1&&Ji.copy(ab,eb)}ab.toArray(t[1])}}}function ub(t,e,n,i){var r="normal"===n,o=r?t:t.ensureState(n);o.ignore=e;var a=i.get("smooth");a&&!0===a&&(a=.3),o.shape=o.shape||{},a>0&&(o.shape.smooth=a);var s=i.getModel("lineStyle").getLineStyle();r?t.useStyle(s):o.style=s}function hb(t,e){var n=e.smooth,i=e.points;if(i)if(t.moveTo(i[0][0],i[0][1]),n>0&&i.length>=3){var r=Et(i[0],i[1]),o=Et(i[1],i[2]);if(!r||!o)return t.lineTo(i[1][0],i[1][1]),void t.lineTo(i[2][0],i[2][1]);var a=Math.min(r,o)*n,s=Bt([],i[1],i[0],a/r),l=Bt([],i[1],i[2],a/o),u=Bt([],s,l,.5);t.bezierCurveTo(s[0],s[1],s[0],s[1],u[0],u[1]),t.bezierCurveTo(l[0],l[1],l[0],l[1],i[2][0],i[2][1])}else for(var h=1;h<i.length;h++)t.lineTo(i[h][0],i[h][1])}function cb(t,e,n){var i=t.getTextGuideLine(),r=t.getTextContent();if(r){for(var o=e.normal,a=o.get("show"),s=r.ignore,l=0;l<qs.length;l++){var u=qs[l],h=e[u],c="normal"===u;if(h){var p=h.get("show");if((c?s:rt(r.states[u]&&r.states[u].ignore,s))||!rt(p,a)){var d=c?i:i&&i.states.normal;d&&(d.ignore=!0);continue}i||(i=new Ou,t.setTextGuideLine(i),c||!s&&a||ub(i,!0,"normal",e.normal),t.stateProxy&&(i.stateProxy=t.stateProxy)),ub(i,!1,u,h)}}if(i){k(i.style,n),i.style.fill=null;var f=o.get("showAbove");(t.textGuideLineConfig=t.textGuideLineConfig||{}).showAbove=f||!1,i.buildPath=hb}}else i&&t.removeTextGuideLine()}function pb(t,e){e=e||"labelLine";for(var n={normal:t.getModel(e)},i=0;i<js.length;i++){var r=js[i];n[r]=t.getModel([r,e])}return n}function db(t){for(var e=[],n=0;n<t.length;n++){var i=t[n];if(!i.defaultAttr.ignore){var r=i.label,o=r.getComputedTransform(),a=r.getBoundingRect(),s=!o||o[1]<1e-5&&o[2]<1e-5,l=r.style.margin||0,u=a.clone();u.applyTransform(o),u.x-=l/2,u.y-=l/2,u.width+=l,u.height+=l;var h=s?new $u(a,o):null;e.push({label:r,labelLine:i.labelLine,rect:u,localRect:a,obb:h,priority:i.priority,defaultAttr:i.defaultAttr,layoutOption:i.computedLayoutOption,axisAligned:s,transform:o})}}return e}function fb(t,e,n,i,r,o){var a=t.length;if(!(a<2)){t.sort((function(t,n){return t.rect[e]-n.rect[e]}));for(var s,l=0,u=!1,h=0,c=0;c<a;c++){var p=t[c],d=p.rect;(s=d[e]-l)<0&&(d[e]-=s,p.label[e]-=s,u=!0),h+=Math.max(-s,0),l=d[e]+d[n]}h>0&&o&&_(-h/a,0,a);var f,g,y=t[0],v=t[a-1];return m(),f<0&&b(-f,.8),g<0&&b(g,.8),m(),x(f,g,1),x(g,f,-1),m(),f<0&&w(-f),g<0&&w(g),u}function m(){f=y.rect[e]-i,g=r-v.rect[e]-v.rect[n]}function x(t,e,n){if(t<0){var i=Math.min(e,-t);if(i>0){_(i*n,0,a);var r=i+t;r<0&&b(-r*n,1)}else b(-t*n,1)}}function _(n,i,r){0!==n&&(u=!0);for(var o=i;o<r;o++){var a=t[o];a.rect[e]+=n,a.label[e]+=n}}function b(i,r){for(var o=[],s=0,l=1;l<a;l++){var u=t[l-1].rect,h=Math.max(t[l].rect[e]-u[e]-u[n],0);o.push(h),s+=h}if(s){var c=Math.min(Math.abs(i)/s,r);if(i>0)for(l=0;l<a-1;l++){_(o[l]*c,0,l+1)}else for(l=a-1;l>0;l--){_(-(o[l-1]*c),l,a)}}}function w(t){var e=t<0?-1:1;t=Math.abs(t);for(var n=Math.ceil(t/(a-1)),i=0;i<a-1;i++)if(e>0?_(n,0,i+1):_(-n,a-i-1,a),(t-=n)<=0)return}}function gb(t,e,n,i){return fb(t,"y","height",e,n,i)}function yb(t){var e=[];t.sort((function(t,e){return e.priority-t.priority}));var n=new sr(0,0,0,0);function i(t){if(!t.ignore){var e=t.ensureState("emphasis");null==e.ignore&&(e.ignore=!1)}t.ignore=!0}for(var r=0;r<t.length;r++){var o=t[r],a=o.axisAligned,s=o.localRect,l=o.transform,u=o.label,h=o.labelLine;n.copy(o.rect),n.width-=.1,n.height-=.1,n.x+=.05,n.y+=.05;for(var c=o.obb,p=!1,d=0;d<e.length;d++){var f=e[d];if(n.intersect(f.rect)){if(a&&f.axisAligned){p=!0;break}if(f.obb||(f.obb=new $u(f.localRect,f.transform)),c||(c=new $u(s,l)),c.intersect(f.obb)){p=!0;break}}}p?(i(u),h&&i(h)):(u.attr("ignore",o.defaultAttr.ignore),h&&h.attr("ignore",o.defaultAttr.labelGuideIgnore),e.push(o))}}function vb(t){if(t){for(var e=[],n=0;n<t.length;n++)e.push(t[n].slice());return e}}function mb(t,e){var n=t.label,i=e&&e.getTextGuideLine();return{dataIndex:t.dataIndex,dataType:t.dataType,seriesIndex:t.seriesModel.seriesIndex,text:t.label.style.text,rect:t.hostRect,labelRect:t.rect,align:n.style.align,verticalAlign:n.style.verticalAlign,labelLinePoints:vb(i&&i.shape.points)}}var xb=["align","verticalAlign","width","height","fontSize"],_b=new qi,bb=So(),wb=So();function Sb(t,e,n){for(var i=0;i<n.length;i++){var r=n[i];null!=e[r]&&(t[r]=e[r])}}var Mb=["x","y","rotation"],Ib=function(){function t(){this._labelList=[],this._chartViewList=[]}return t.prototype.clearLabels=function(){this._labelList=[],this._chartViewList=[]},t.prototype._addLabel=function(t,e,n,i,r){var o=i.style,a=i.__hostTarget.textConfig||{},s=i.getComputedTransform(),l=i.getBoundingRect().plain();sr.applyTransform(l,l,s),s?_b.setLocalTransform(s):(_b.x=_b.y=_b.rotation=_b.originX=_b.originY=0,_b.scaleX=_b.scaleY=1);var u,h=i.__hostTarget;if(h){u=h.getBoundingRect().plain();var c=h.getComputedTransform();sr.applyTransform(u,u,c)}var p=u&&h.getTextGuideLine();this._labelList.push({label:i,labelLine:p,seriesModel:n,dataIndex:t,dataType:e,layoutOption:r,computedLayoutOption:null,rect:l,hostRect:u,priority:u?u.width*u.height:0,defaultAttr:{ignore:i.ignore,labelGuideIgnore:p&&p.ignore,x:_b.x,y:_b.y,scaleX:_b.scaleX,scaleY:_b.scaleY,rotation:_b.rotation,style:{x:o.x,y:o.y,align:o.align,verticalAlign:o.verticalAlign,width:o.width,height:o.height,fontSize:o.fontSize},cursor:i.cursor,attachedPos:a.position,attachedRot:a.rotation}})},t.prototype.addLabelsOfSeries=function(t){var e=this;this._chartViewList.push(t);var n=t.__model,i=n.get("labelLayout");(U(i)||G(i).length)&&t.group.traverse((function(t){if(t.ignore)return!0;var r=t.getTextContent(),o=Ws(t);r&&!r.disableLabelLayout&&e._addLabel(o.dataIndex,o.dataType,n,r,i)}))},t.prototype.updateLayoutConfig=function(t){var e=t.getWidth(),n=t.getHeight();function i(t,e){return function(){rb(t,e)}}for(var r=0;r<this._labelList.length;r++){var o=this._labelList[r],a=o.label,s=a.__hostTarget,l=o.defaultAttr,u=void 0;u=(u=U(o.layoutOption)?o.layoutOption(mb(o,s)):o.layoutOption)||{},o.computedLayoutOption=u;var h=Math.PI/180;s&&s.setTextConfig({local:!1,position:null!=u.x||null!=u.y?null:l.attachedPos,rotation:null!=u.rotate?u.rotate*h:l.attachedRot,offset:[u.dx||0,u.dy||0]});var c=!1;if(null!=u.x?(a.x=Er(u.x,e),a.setStyle("x",0),c=!0):(a.x=l.x,a.setStyle("x",l.style.x)),null!=u.y?(a.y=Er(u.y,n),a.setStyle("y",0),c=!0):(a.y=l.y,a.setStyle("y",l.style.y)),u.labelLinePoints){var p=s.getTextGuideLine();p&&(p.setShape({points:u.labelLinePoints}),c=!1)}bb(a).needsUpdateLabelLine=c,a.rotation=null!=u.rotate?u.rotate*h:l.rotation,a.scaleX=l.scaleX,a.scaleY=l.scaleY;for(var d=0;d<xb.length;d++){var f=xb[d];a.setStyle(f,null!=u[f]?u[f]:l.style[f])}if(u.draggable){if(a.draggable=!0,a.cursor="move",s){var g=o.seriesModel;if(null!=o.dataIndex)g=o.seriesModel.getData(o.dataType).getItemModel(o.dataIndex);a.on("drag",i(s,g.getModel("labelLine")))}}else a.off("drag"),a.cursor=l.cursor}},t.prototype.layout=function(t){var e,n=t.getWidth(),i=t.getHeight(),r=db(this._labelList),o=B(r,(function(t){return"shiftX"===t.layoutOption.moveOverlap})),a=B(r,(function(t){return"shiftY"===t.layoutOption.moveOverlap}));fb(o,"x","width",0,n,e),gb(a,0,i),yb(B(r,(function(t){return t.layoutOption.hideOverlap})))},t.prototype.processLabelsOverall=function(){var t=this;E(this._chartViewList,(function(e){var n=e.__model,i=e.ignoreLabelLineUpdate,r=n.isAnimationEnabled();e.group.traverse((function(e){if(e.ignore&&!e.forceLabelAnimation)return!0;var o=!i,a=e.getTextContent();!o&&a&&(o=bb(a).needsUpdateLabelLine),o&&t._updateLabelLine(e,n),r&&t._animateLabels(e,n)}))}))},t.prototype._updateLabelLine=function(t,e){var n=t.getTextContent(),i=Ws(t),r=i.dataIndex;if(n&&null!=r){var o=e.getData(i.dataType),a=o.getItemModel(r),s={},l=o.getItemVisual(r,"style"),u=o.getVisual("drawType");s.stroke=l[u];var h=a.getModel("labelLine");cb(t,pb(a),s),rb(t,h)}},t.prototype._animateLabels=function(t,e){var n=t.getTextContent(),i=t.getTextGuideLine();if(n&&(t.forceLabelAnimation||!n.ignore&&!n.invisible&&!t.disableLabelAnimation&&!oh(t))){var r=(d=bb(n)).oldLayout,o=Ws(t),a=o.dataIndex,s={x:n.x,y:n.y,rotation:n.rotation},l=e.getData(o.dataType);if(r){n.attr(r);var u=t.prevStates;u&&(P(u,"select")>=0&&n.attr(d.oldLayoutSelect),P(u,"emphasis")>=0&&n.attr(d.oldLayoutEmphasis)),ih(n,s,e,a)}else if(n.attr(s),!$h(n).valueAnimation){var h=rt(n.style.opacity,1);n.style.opacity=0,rh(n,{style:{opacity:h}},e,a)}if(d.oldLayout=s,n.states.select){var c=d.oldLayoutSelect={};Sb(c,s,Mb),Sb(c,n.states.select,Mb)}if(n.states.emphasis){var p=d.oldLayoutEmphasis={};Sb(p,s,Mb),Sb(p,n.states.emphasis,Mb)}Qh(n,a,l,e,e)}if(i&&!i.ignore&&!i.invisible){r=(d=wb(i)).oldLayout;var d,f={points:i.shape.points};r?(i.attr({shape:r}),ih(i,{shape:f},e)):(i.setShape(f),i.style.strokePercent=0,rh(i,{style:{strokePercent:1}},e)),d.oldLayout=f}},t}(),Tb=So();var Cb=Math.sin,Db=Math.cos,Ab=Math.PI,kb=2*Math.PI,Lb=180/Ab,Pb=function(){function t(){}return t.prototype.reset=function(t){this._start=!0,this._d=[],this._str="",this._p=Math.pow(10,t||4)},t.prototype.moveTo=function(t,e){this._add("M",t,e)},t.prototype.lineTo=function(t,e){this._add("L",t,e)},t.prototype.bezierCurveTo=function(t,e,n,i,r,o){this._add("C",t,e,n,i,r,o)},t.prototype.quadraticCurveTo=function(t,e,n,i){this._add("Q",t,e,n,i)},t.prototype.arc=function(t,e,n,i,r,o){this.ellipse(t,e,n,n,0,i,r,o)},t.prototype.ellipse=function(t,e,n,i,r,o,a,s){var l=a-o,u=!s,h=Math.abs(l),c=En(h-kb)||(u?l>=kb:-l>=kb),p=l>0?l%kb:l%kb+kb,d=!1;d=!!c||!En(h)&&p>=Ab==!!u;var f=t+n*Db(o),g=e+i*Cb(o);this._start&&this._add("M",f,g);var y=Math.round(r*Lb);if(c){var v=1/this._p,m=(u?1:-1)*(kb-v);this._add("A",n,i,y,1,+u,t+n*Db(o+m),e+i*Cb(o+m)),v>.01&&this._add("A",n,i,y,0,+u,f,g)}else{var x=t+n*Db(a),_=e+i*Cb(a);this._add("A",n,i,y,+d,+u,x,_)}},t.prototype.rect=function(t,e,n,i){this._add("M",t,e),this._add("l",n,0),this._add("l",0,i),this._add("l",-n,0),this._add("Z")},t.prototype.closePath=function(){this._d.length>0&&this._add("Z")},t.prototype._add=function(t,e,n,i,r,o,a,s,l){for(var u=[],h=this._p,c=1;c<arguments.length;c++){var p=arguments[c];if(isNaN(p))return void(this._invalid=!0);u.push(Math.round(p*h)/h)}this._d.push(t+u.join(" ")),this._start="Z"===t},t.prototype.generateStr=function(){this._str=this._invalid?"":this._d.join(""),this._d=[]},t.prototype.getStr=function(){return this._str},t}(),Ob="none",Rb=Math.round;var Nb=["lineCap","miterLimit","lineJoin"],Eb=z(Nb,(function(t){return"stroke-"+t.toLowerCase()}));function zb(t,e,n,i){var r=null==e.opacity?1:e.opacity;if(n instanceof xs)t("opacity",r);else{if(function(t){var e=t.fill;return null!=e&&e!==Ob}(e)){var o=Rn(e.fill);t("fill",o.color);var a=null!=e.fillOpacity?e.fillOpacity*o.opacity*r:o.opacity*r;(i||a<1)&&t("fill-opacity",a)}else t("fill",Ob);if(function(t){var e=t.stroke;return null!=e&&e!==Ob}(e)){var s=Rn(e.stroke);t("stroke",s.color);var l=e.strokeNoScale?n.getLineScale():1,u=l?(e.lineWidth||0)/l:0,h=null!=e.strokeOpacity?e.strokeOpacity*s.opacity*r:s.opacity*r,c=e.strokeFirst;if((i||1!==u)&&t("stroke-width",u),(i||c)&&t("paint-order",c?"stroke":"fill"),(i||h<1)&&t("stroke-opacity",h),e.lineDash){var p=Ey(n),d=p[0],f=p[1];d&&(f=Rb(f||0),t("stroke-dasharray",d.join(",")),(f||i)&&t("stroke-dashoffset",f))}else i&&t("stroke-dasharray",Ob);for(var g=0;g<Nb.length;g++){var y=Nb[g];if(i||e[y]!==cs[y]){var v=e[y]||cs[y];v&&t(Eb[g],v)}}}else i&&t("stroke",Ob)}}var Vb="http://www.w3.org/2000/svg",Bb="http://www.w3.org/1999/xlink";function Fb(t){return document.createElementNS(Vb,t)}function Gb(t,e,n,i,r){return{tag:t,attrs:n||{},children:i,text:r,key:e}}function Wb(t,e){var n=(e=e||{}).newline?"\n":"";return function t(e){var i=e.children,r=e.tag;return function(t,e){var n=[];if(e)for(var i in e){var r=e[i],o=i;!1!==r&&(!0!==r&&null!=r&&(o+='="'+r+'"'),n.push(o))}return"<"+t+" "+n.join(" ")+">"}(r,e.attrs)+(e.text||"")+(i?""+n+z(i,(function(e){return t(e)})).join(n)+n:"")+("</"+r+">")}(t)}function Hb(t){return{zrId:t,shadowCache:{},patternCache:{},gradientCache:{},clipPathCache:{},defs:{},cssNodes:{},cssAnims:{},cssClassIdx:0,cssAnimIdx:0,shadowIdx:0,gradientIdx:0,patternIdx:0,clipPathIdx:0}}function Yb(t,e,n,i){return Gb("svg","root",{width:t,height:e,xmlns:Vb,"xmlns:xlink":Bb,version:"1.1",baseProfile:"full",viewBox:!!i&&"0 0 "+t+" "+e},n)}var Ub={cubicIn:"0.32,0,0.67,0",cubicOut:"0.33,1,0.68,1",cubicInOut:"0.65,0,0.35,1",quadraticIn:"0.11,0,0.5,0",quadraticOut:"0.5,1,0.89,1",quadraticInOut:"0.45,0,0.55,1",quarticIn:"0.5,0,0.75,0",quarticOut:"0.25,1,0.5,1",quarticInOut:"0.76,0,0.24,1",quinticIn:"0.64,0,0.78,0",quinticOut:"0.22,1,0.36,1",quinticInOut:"0.83,0,0.17,1",sinusoidalIn:"0.12,0,0.39,0",sinusoidalOut:"0.61,1,0.88,1",sinusoidalInOut:"0.37,0,0.63,1",exponentialIn:"0.7,0,0.84,0",exponentialOut:"0.16,1,0.3,1",exponentialInOut:"0.87,0,0.13,1",circularIn:"0.55,0,1,0.45",circularOut:"0,0.55,0.45,1",circularInOut:"0.85,0,0.15,1"},Xb="transform-origin";function Zb(t,e,n){var i=A({},t.shape);A(i,e),t.buildPath(n,i);var r=new Pb;return r.reset(Yn(t)),n.rebuildPath(r,1),r.generateStr(),r.getStr()}function jb(t,e){var n=e.originX,i=e.originY;(n||i)&&(t[Xb]=n+"px "+i+"px")}var qb={fill:"fill",opacity:"opacity",lineWidth:"stroke-width",lineDashOffset:"stroke-dashoffset"};function Kb(t,e){var n=e.zrId+"-ani-"+e.cssAnimIdx++;return e.cssAnims[n]=t,n}function $b(t){return X(t)?Ub[t]?"cubic-bezier("+Ub[t]+")":rn(t)?t:"":""}function Jb(t,e,n,i){var r=t.animators,o=r.length,a=[];if(t instanceof Hu){if(y=function(t,e,n){var i,r,o=t.shape.paths,a={};if(E(o,(function(t){var e=Hb(n.zrId);e.animation=!0,Jb(t,{},e,!0);var o=e.cssAnims,s=e.cssNodes,l=G(o),u=l.length;if(u){var h=o[r=l[u-1]];for(var c in h){var p=h[c];a[c]=a[c]||{d:""},a[c].d+=p.d||""}for(var d in s){var f=s[d].animation;f.indexOf(r)>=0&&(i=f)}}})),i){e.d=!1;var s=Kb(a,n);return i.replace(r,s)}}(t,e,n))a.push(y);else if(!o)return}else if(!o)return;for(var s={},l=0;l<o;l++){var u=r[l],h=[u.getMaxTime()/1e3+"s"],c=$b(u.getClip().easing),p=u.getDelay();c?h.push(c):h.push("linear"),p&&h.push(p/1e3+"s"),u.getLoop()&&h.push("infinite");var d=h.join(" ");s[d]=s[d]||[d,[]],s[d][1].push(u)}function f(r){var o,a=r[1],s=a.length,l={},u={},h={};function c(t,e,n){for(var i=t.getTracks(),r=t.getMaxTime(),o=0;o<i.length;o++){var a=i[o];if(a.needsAnimate()){var s=a.keyframes,l=a.propName;if(n&&(l=n(l)),l)for(var u=0;u<s.length;u++){var h=s[u],c=Math.round(h.time/r*100)+"%",p=$b(h.easing),d=h.rawValue;(X(d)||j(d))&&(e[c]=e[c]||{},e[c][l]=h.rawValue,p&&(e[c]["animation-timing-function"]=p))}}}}for(var p=0;p<s;p++){(w=(b=a[p]).targetName)?"shape"===w&&c(b,u):!i&&c(b,l)}for(var d in l){var f={};$i(f,t),A(f,l[d]);var g=Un(f),y=l[d]["animation-timing-function"];h[d]=g?{transform:g}:{},jb(h[d],f),y&&(h[d]["animation-timing-function"]=y)}var v=!0;for(var d in u){h[d]=h[d]||{};var m=!o;y=u[d]["animation-timing-function"];m&&(o=new ja);var x=o.len();o.reset(),h[d].d=Zb(t,u[d],o);var _=o.len();if(!m&&x!==_){v=!1;break}y&&(h[d]["animation-timing-function"]=y)}if(!v)for(var d in h)delete h[d].d;if(!i)for(p=0;p<s;p++){var b,w;"style"===(w=(b=a[p]).targetName)&&c(b,h,(function(t){return qb[t]}))}var S,M=G(h),I=!0;for(p=1;p<M.length;p++){var T=M[p-1],C=M[p];if(h[T][Xb]!==h[C][Xb]){I=!1;break}S=h[T][Xb]}if(I&&S){for(var d in h)h[d][Xb]&&delete h[d][Xb];e[Xb]=S}if(B(M,(function(t){return G(h[t]).length>0})).length)return Kb(h,n)+" "+r[0]+" both"}for(var g in s){var y;(y=f(s[g]))&&a.push(y)}if(a.length){var v=n.zrId+"-cls-"+n.cssClassIdx++;n.cssNodes["."+v]={animation:a.join(",")},e.class=v}}var Qb=Math.round;function tw(t){return t&&X(t.src)}function ew(t){return t&&U(t.toDataURL)}function nw(t,e,n,i){zb((function(r,o){var a="fill"===r||"stroke"===r;a&&function(t){return t&&("linear"===t.type||"radial"===t.type)}(o)?function(t,e,n,i){var r,o=t[n],a={gradientUnits:o.global?"userSpaceOnUse":"objectBoundingBox"};if(Gn(o))r="linearGradient",a.x1=o.x,a.y1=o.y,a.x2=o.x2,a.y2=o.y2;else{if(!Wn(o))return void 0;r="radialGradient",a.cx=rt(o.x,.5),a.cy=rt(o.y,.5),a.r=rt(o.r,.5)}for(var s=o.colorStops,l=[],u=0,h=s.length;u<h;++u){var c=100*Vn(s[u].offset)+"%",p=Rn(s[u].color),d=p.color,f=p.opacity,g={offset:c};g["stop-color"]=d,f<1&&(g["stop-opacity"]=f),l.push(Gb("stop",u+"",g))}var y=Wb(Gb(r,"",a,l)),v=i.gradientCache,m=v[y];m||(m=i.zrId+"-g"+i.gradientIdx++,v[y]=m,a.id=m,i.defs[m]=Gb(r,m,a,l));e[n]=Hn(m)}(e,t,r,i):a&&function(t){return Fn(t)||function(t){return t&&!!t.svgElement}(t)}(o)?function(t,e,n,i){var r,o=t.style[n],a={patternUnits:"userSpaceOnUse"};if(Fn(o)){var s=o.imageWidth,l=o.imageHeight,u=void 0,h=o.image;if(X(h)?u=h:tw(h)?u=h.src:ew(h)&&(u=h.toDataURL()),"undefined"==typeof Image){var c="Image width/height must been given explictly in svg-ssr renderer.";lt(s,c),lt(l,c)}else if(null==s||null==l){var p=function(t,e){if(t){var n=t.elm,i=t.attrs.width=s||e.width,r=t.attrs.height=l||e.height;n&&(n.setAttribute("width",i),n.setAttribute("height",r))}},d=Zo(u,null,t,(function(t){p(f,t),p(r,t)}));d&&d.width&&d.height&&(s=s||d.width,l=l||d.height)}r=Gb("image","img",{href:u,width:s,height:l}),a.width=s,a.height=l}else o.svgElement&&(r=o.svgElement,a.width=o.svgWidth,a.height=o.svgHeight);if(!r)return;a.patternTransform=Un(o);var f=Gb("pattern","",a,[r]),g=Wb(f),y=i.patternCache,v=y[g];v||(v=i.zrId+"-p"+i.patternIdx++,y[g]=v,a.id=v,f=i.defs[v]=Gb("pattern",v,a,[r]));e[n]=Hn(v)}(n,t,r,i):t[r]=o}),e,n,!1),function(t,e,n){var i=t.style;if(function(t){return t&&(t.shadowBlur||t.shadowOffsetX||t.shadowOffsetY)}(i)){var r=function(t){var e=t.style,n=t.getGlobalScale();return[e.shadowColor,(e.shadowBlur||0).toFixed(2),(e.shadowOffsetX||0).toFixed(2),(e.shadowOffsetY||0).toFixed(2),n[0],n[1]].join(",")}(t),o=n.shadowCache,a=o[r];if(!a){var s=t.getGlobalScale(),l=s[0],u=s[1];if(!l||!u)return;var h=i.shadowOffsetX||0,c=i.shadowOffsetY||0,p=i.shadowBlur,d=Rn(i.shadowColor),f=d.opacity,g=d.color,y=p/2/l+" "+p/2/u;a=n.zrId+"-s"+n.shadowIdx++,n.defs[a]=Gb("filter",a,{id:a,x:"-100%",y:"-100%",width:"300%",height:"300%"},[Gb("feDropShadow","",{dx:h/l,dy:c/u,stdDeviation:y,"flood-color":g,"flood-opacity":f})]),o[r]=a}e.filter=Hn(a)}}(n,t,i)}function iw(t){return En(t[0]-1)&&En(t[1])&&En(t[2])&&En(t[3]-1)}function rw(t,e,n){if(e&&(!function(t){return En(t[4])&&En(t[5])}(e)||!iw(e))){var i=n?10:1e4;t.transform=iw(e)?"translate("+Qb(e[4]*i)/i+" "+Qb(e[5]*i)/i+")":function(t){return"matrix("+zn(t[0])+","+zn(t[1])+","+zn(t[2])+","+zn(t[3])+","+Vn(t[4])+","+Vn(t[5])+")"}(e)}}function ow(t,e,n){for(var i=t.points,r=[],o=0;o<i.length;o++)r.push(Qb(i[o][0]*n)/n),r.push(Qb(i[o][1]*n)/n);e.points=r.join(" ")}function aw(t){return!t.smooth}var sw,lw,uw={circle:[(sw=["cx","cy","r"],lw=z(sw,(function(t){return"string"==typeof t?[t,t]:t})),function(t,e,n){for(var i=0;i<lw.length;i++){var r=lw[i],o=t[r[0]];null!=o&&(e[r[1]]=Qb(o*n)/n)}})],polyline:[ow,aw],polygon:[ow,aw]};function hw(t,e){var n=t.style,i=t.shape,r=uw[t.type],o={},a=e.animation,s="path",l=t.style.strokePercent,u=e.compress&&Yn(t)||4;if(!r||e.willUpdate||r[1]&&!r[1](i)||a&&function(t){for(var e=t.animators,n=0;n<e.length;n++)if("shape"===e[n].targetName)return!0;return!1}(t)||l<1){t.path||t.createPathProxy();var h=t.path;t.shapeChanged()&&(h.beginPath(),t.buildPath(h,t.shape),t.pathUpdated());var c=h.getVersion(),p=t,d=p.__svgPathBuilder;p.__svgPathVersion===c&&d&&l===p.__svgPathStrokePercent||(d||(d=p.__svgPathBuilder=new Pb),d.reset(u),h.rebuildPath(d,l),d.generateStr(),p.__svgPathVersion=c,p.__svgPathStrokePercent=l),o.d=d.getStr()}else{s=t.type;var f=Math.pow(10,u);r[0](i,o,f)}return rw(o,t.transform),nw(o,n,t,e),e.animation&&Jb(t,o,e),Gb(s,t.id+"",o)}function cw(t,e){return t instanceof fs?hw(t,e):t instanceof xs?function(t,e){var n=t.style,i=n.image;if(i&&!X(i)&&(tw(i)?i=i.src:ew(i)&&(i=i.toDataURL())),i){var r=n.x||0,o=n.y||0,a={href:i,width:n.width,height:n.height};return r&&(a.x=r),o&&(a.y=o),rw(a,t.transform),nw(a,n,t,e),e.animation&&Jb(t,a,e),Gb("image",t.id+"",a)}}(t,e):t instanceof ys?function(t,e){var n=t.style,i=n.text;if(null!=i&&(i+=""),i&&!isNaN(n.x)&&!isNaN(n.y)){var r=n.font||a,s=n.x||0,l=function(t,e,n){return"top"===n?t+=e/2:"bottom"===n&&(t-=e/2),t}(n.y||0,fr(r),n.textBaseline),u={"dominant-baseline":"central","text-anchor":Bn[n.textAlign]||n.textAlign};if(Ns(n)){var h="",c=n.fontStyle,p=Os(n.fontSize);if(!parseFloat(p))return;var d=n.fontFamily||o,f=n.fontWeight;h+="font-size:"+p+";font-family:"+d+";",c&&"normal"!==c&&(h+="font-style:"+c+";"),f&&"normal"!==f&&(h+="font-weight:"+f+";"),u.style=h}else u.style="font: "+r;return i.match(/\s/)&&(u["xml:space"]="preserve"),s&&(u.x=s),l&&(u.y=l),rw(u,t.transform),nw(u,n,t,e),e.animation&&Jb(t,u,e),Gb("text",t.id+"",u,void 0,i)}}(t,e):void 0}function pw(t,e,n){var i=n.clipPathCache,r=n.defs,o=i[t.id];if(!o){var a={id:o=n.zrId+"-c"+n.clipPathIdx++};i[t.id]=o,r[o]=Gb("clipPath",o,a,[hw(t,n)])}e["clip-path"]=Hn(o)}function dw(t){return document.createTextNode(t)}function fw(t,e,n){t.insertBefore(e,n)}function gw(t,e){t.removeChild(e)}function yw(t,e){t.appendChild(e)}function vw(t){return t.parentNode}function mw(t){return t.nextSibling}function xw(t,e){t.textContent=e}var _w=Gb("","");function bw(t){return void 0===t}function ww(t){return void 0!==t}function Sw(t,e,n){for(var i={},r=e;r<=n;++r){var o=t[r].key;void 0!==o&&(i[o]=r)}return i}function Mw(t,e){var n=t.key===e.key;return t.tag===e.tag&&n}function Iw(t){var e,n=t.children,i=t.tag;if(ww(i)){var r=t.elm=Fb(i);if(Dw(_w,t),Y(n))for(e=0;e<n.length;++e){var o=n[e];null!=o&&yw(r,Iw(o))}else ww(t.text)&&!q(t.text)&&yw(r,dw(t.text))}else t.elm=dw(t.text);return t.elm}function Tw(t,e,n,i,r){for(;i<=r;++i){var o=n[i];null!=o&&fw(t,Iw(o),e)}}function Cw(t,e,n,i){for(;n<=i;++n){var r=e[n];if(null!=r)if(ww(r.tag))gw(vw(r.elm),r.elm);else gw(t,r.elm)}}function Dw(t,e){var n,i=e.elm,r=t&&t.attrs||{},o=e.attrs||{};if(r!==o){for(n in o){var a=o[n];r[n]!==a&&(!0===a?i.setAttribute(n,""):!1===a?i.removeAttribute(n):120!==n.charCodeAt(0)?i.setAttribute(n,a):"xmlns:xlink"===n||"xmlns"===n?i.setAttributeNS("http://www.w3.org/2000/xmlns/",n,a):58===n.charCodeAt(3)?i.setAttributeNS("http://www.w3.org/XML/1998/namespace",n,a):58===n.charCodeAt(5)?i.setAttributeNS(Bb,n,a):i.setAttribute(n,a))}for(n in r)n in o||i.removeAttribute(n)}}function Aw(t,e){var n=e.elm=t.elm,i=t.children,r=e.children;t!==e&&(Dw(t,e),bw(e.text)?ww(i)&&ww(r)?i!==r&&function(t,e,n){for(var i,r,o,a=0,s=0,l=e.length-1,u=e[0],h=e[l],c=n.length-1,p=n[0],d=n[c];a<=l&&s<=c;)null==u?u=e[++a]:null==h?h=e[--l]:null==p?p=n[++s]:null==d?d=n[--c]:Mw(u,p)?(Aw(u,p),u=e[++a],p=n[++s]):Mw(h,d)?(Aw(h,d),h=e[--l],d=n[--c]):Mw(u,d)?(Aw(u,d),fw(t,u.elm,mw(h.elm)),u=e[++a],d=n[--c]):Mw(h,p)?(Aw(h,p),fw(t,h.elm,u.elm),h=e[--l],p=n[++s]):(bw(i)&&(i=Sw(e,a,l)),bw(r=i[p.key])||(o=e[r]).tag!==p.tag?fw(t,Iw(p),u.elm):(Aw(o,p),e[r]=void 0,fw(t,o.elm,u.elm)),p=n[++s]);(a<=l||s<=c)&&(a>l?Tw(t,null==n[c+1]?null:n[c+1].elm,n,s,c):Cw(t,e,a,l))}(n,i,r):ww(r)?(ww(t.text)&&xw(n,""),Tw(n,null,r,0,r.length-1)):ww(i)?Cw(n,i,0,i.length-1):ww(t.text)&&xw(n,""):t.text!==e.text&&(ww(i)&&Cw(n,i,0,i.length-1),xw(n,e.text)))}var kw=0,Lw=function(){function t(t,e,n){if(this.type="svg",this.refreshHover=Pw("refreshHover"),this.configLayer=Pw("configLayer"),this.storage=e,this._opts=n=A({},n),this.root=t,this._id="zr"+kw++,this._oldVNode=Yb(n.width,n.height),t&&!n.ssr){var i=this._viewport=document.createElement("div");i.style.cssText="position:relative;overflow:hidden";var r=this._svgDom=this._oldVNode.elm=Fb("svg");Dw(null,this._oldVNode),i.appendChild(r),t.appendChild(i)}this.resize(n.width,n.height)}return t.prototype.getType=function(){return this.type},t.prototype.getViewportRoot=function(){return this._viewport},t.prototype.getViewportRootOffset=function(){var t=this.getViewportRoot();if(t)return{offsetLeft:t.offsetLeft||0,offsetTop:t.offsetTop||0}},t.prototype.getSvgDom=function(){return this._svgDom},t.prototype.refresh=function(){if(this.root){var t=this.renderToVNode({willUpdate:!0});t.attrs.style="position:absolute;left:0;top:0;user-select:none",function(t,e){if(Mw(t,e))Aw(t,e);else{var n=t.elm,i=vw(n);Iw(e),null!==i&&(fw(i,e.elm,mw(n)),Cw(i,[t],0,0))}}(this._oldVNode,t),this._oldVNode=t}},t.prototype.renderOneToVNode=function(t){return cw(t,Hb(this._id))},t.prototype.renderToVNode=function(t){t=t||{};var e=this.storage.getDisplayList(!0),n=this._backgroundColor,i=this._width,r=this._height,o=Hb(this._id);o.animation=t.animation,o.willUpdate=t.willUpdate,o.compress=t.compress;var a=[];if(n&&"none"!==n){var s=Rn(n),l=s.color,u=s.opacity;this._bgVNode=Gb("rect","bg",{width:i,height:r,x:"0",y:"0",id:"0",fill:l,"fill-opacity":u}),a.push(this._bgVNode)}else this._bgVNode=null;var h=t.compress?null:this._mainVNode=Gb("g","main",{},[]);this._paintList(e,o,h?h.children:a),h&&a.push(h);var c=z(G(o.defs),(function(t){return o.defs[t]}));if(c.length&&a.push(Gb("defs","defs",{},c)),t.animation){var p=function(t,e,n){var i=(n=n||{}).newline?"\n":"",r=" {"+i,o=i+"}",a=z(G(t),(function(e){return e+r+z(G(t[e]),(function(n){return n+":"+t[e][n]+";"})).join(i)+o})).join(i),s=z(G(e),(function(t){return"@keyframes "+t+r+z(G(e[t]),(function(n){return n+r+z(G(e[t][n]),(function(i){var r=e[t][n][i];return"d"===i&&(r='path("'+r+'")'),i+":"+r+";"})).join(i)+o})).join(i)+o})).join(i);return a||s?["<![CDATA[",a,s,"]]>"].join(i):""}(o.cssNodes,o.cssAnims,{newline:!0});if(p){var d=Gb("style","stl",{},[],p);a.push(d)}}return Yb(i,r,a,t.useViewBox)},t.prototype.renderToString=function(t){return t=t||{},Wb(this.renderToVNode({animation:rt(t.cssAnimation,!0),willUpdate:!1,compress:!0,useViewBox:rt(t.useViewBox,!0)}),{newline:!0})},t.prototype.setBackgroundColor=function(t){this._backgroundColor=t;var e=this._bgVNode;if(e&&e.elm){var n=Rn(t),i=n.color,r=n.opacity;e.elm.setAttribute("fill",i),r<1&&e.elm.setAttribute("fill-opacity",r)}},t.prototype.getSvgRoot=function(){return this._mainVNode&&this._mainVNode.elm},t.prototype._paintList=function(t,e,n){for(var i,r,o=t.length,a=[],s=0,l=0,u=0;u<o;u++){var h=t[u];if(!h.invisible){var c=h.__clipPaths,p=c&&c.length||0,d=r&&r.length||0,f=void 0;for(f=Math.max(p-1,d-1);f>=0&&(!c||!r||c[f]!==r[f]);f--);for(var g=d-1;g>f;g--)i=a[--s-1];for(var y=f+1;y<p;y++){var v={};pw(c[y],v,e);var m=Gb("g","clip-g-"+l++,v,[]);(i?i.children:n).push(m),a[s++]=m,i=m}r=c;var x=cw(h,e);x&&(i?i.children:n).push(x)}}},t.prototype.resize=function(t,e){var n=this._opts,i=this.root,r=this._viewport;if(null!=t&&(n.width=t),null!=e&&(n.height=e),i&&r&&(r.style.display="none",t=Ny(i,0,n),e=Ny(i,1,n),r.style.display=""),this._width!==t||this._height!==e){if(this._width=t,this._height=e,r){var o=r.style;o.width=t+"px",o.height=e+"px"}var a=this._svgDom;a&&(a.setAttribute("width",t),a.setAttribute("height",e))}},t.prototype.getWidth=function(){return this._width},t.prototype.getHeight=function(){return this._height},t.prototype.dispose=function(){this.root&&(this.root.innerHTML=""),this._svgDom=this._viewport=this.storage=this._oldVNode=this._bgVNode=this._mainVNode=null},t.prototype.clear=function(){this._svgDom&&(this._svgDom.innerHTML=null),this._oldVNode=null},t.prototype.toDataURL=function(t){var e=encodeURIComponent(this.renderToString()),n="data:image/svg+xml;";return t?(e=Xn(e))&&n+"base64,"+e:n+"charset=UTF-8,"+e},t}();function Pw(t){return function(){0}}function Ow(t,e,n){var i=h.createCanvas(),r=e.getWidth(),o=e.getHeight(),a=i.style;return a&&(a.position="absolute",a.left="0",a.top="0",a.width=r+"px",a.height=o+"px",i.setAttribute("data-zr-dom-id",t)),i.width=r*n,i.height=o*n,i}var Rw=function(t){function e(e,n,i){var r,o=t.call(this)||this;o.motionBlur=!1,o.lastFrameAlpha=.7,o.dpr=1,o.virtual=!1,o.config={},o.incremental=!1,o.zlevel=0,o.maxRepaintRectCount=5,o.__dirty=!0,o.__firstTimePaint=!0,o.__used=!1,o.__drawIndex=0,o.__startIndex=0,o.__endIndex=0,o.__prevStartIndex=null,o.__prevEndIndex=null,i=i||Ai,"string"==typeof e?r=Ow(e,n,i):q(e)&&(e=(r=e).id),o.id=e,o.dom=r;var a=r.style;return a&&(vt(r),r.onselectstart=function(){return!1},a.padding="0",a.margin="0",a.borderWidth="0"),o.painter=n,o.dpr=i,o}return n(e,t),e.prototype.getElementCount=function(){return this.__endIndex-this.__startIndex},e.prototype.afterBrush=function(){this.__prevStartIndex=this.__startIndex,this.__prevEndIndex=this.__endIndex},e.prototype.initContext=function(){this.ctx=this.dom.getContext("2d"),this.ctx.dpr=this.dpr},e.prototype.setUnpainted=function(){this.__firstTimePaint=!0},e.prototype.createBackBuffer=function(){var t=this.dpr;this.domBack=Ow("back-"+this.id,this.painter,t),this.ctxBack=this.domBack.getContext("2d"),1!==t&&this.ctxBack.scale(t,t)},e.prototype.createRepaintRects=function(t,e,n,i){if(this.__firstTimePaint)return this.__firstTimePaint=!1,null;var r,o=[],a=this.maxRepaintRectCount,s=!1,l=new sr(0,0,0,0);function u(t){if(t.isFinite()&&!t.isZero())if(0===o.length){(e=new sr(0,0,0,0)).copy(t),o.push(e)}else{for(var e,n=!1,i=1/0,r=0,u=0;u<o.length;++u){var h=o[u];if(h.intersect(t)){var c=new sr(0,0,0,0);c.copy(h),c.union(t),o[u]=c,n=!0;break}if(s){l.copy(t),l.union(h);var p=t.width*t.height,d=h.width*h.height,f=l.width*l.height-p-d;f<i&&(i=f,r=u)}}if(s&&(o[r].union(t),n=!0),!n)(e=new sr(0,0,0,0)).copy(t),o.push(e);s||(s=o.length>=a)}}for(var h=this.__startIndex;h<this.__endIndex;++h){if(d=t[h]){var c=d.shouldBePainted(n,i,!0,!0);(f=d.__isRendered&&(1&d.__dirty||!c)?d.getPrevPaintRect():null)&&u(f);var p=c&&(1&d.__dirty||!d.__isRendered)?d.getPaintRect():null;p&&u(p)}}for(h=this.__prevStartIndex;h<this.__prevEndIndex;++h){var d,f;c=(d=e[h]).shouldBePainted(n,i,!0,!0);if(d&&(!c||!d.__zr)&&d.__isRendered)(f=d.getPrevPaintRect())&&u(f)}do{r=!1;for(h=0;h<o.length;)if(o[h].isZero())o.splice(h,1);else{for(var g=h+1;g<o.length;)o[h].intersect(o[g])?(r=!0,o[h].union(o[g]),o.splice(g,1)):g++;h++}}while(r);return this._paintRects=o,o},e.prototype.debugGetPaintRects=function(){return(this._paintRects||[]).slice()},e.prototype.resize=function(t,e){var n=this.dpr,i=this.dom,r=i.style,o=this.domBack;r&&(r.width=t+"px",r.height=e+"px"),i.width=t*n,i.height=e*n,o&&(o.width=t*n,o.height=e*n,1!==n&&this.ctxBack.scale(n,n))},e.prototype.clear=function(t,e,n){var i=this.dom,r=this.ctx,o=i.width,a=i.height;e=e||this.clearColor;var s=this.motionBlur&&!t,l=this.lastFrameAlpha,u=this.dpr,h=this;s&&(this.domBack||this.createBackBuffer(),this.ctxBack.globalCompositeOperation="copy",this.ctxBack.drawImage(i,0,0,o/u,a/u));var c=this.domBack;function p(t,n,i,o){if(r.clearRect(t,n,i,o),e&&"transparent"!==e){var a=void 0;Q(e)?(a=e.__canvasGradient||Oy(r,e,{x:0,y:0,width:i,height:o}),e.__canvasGradient=a):tt(e)&&(a=Hy(r,e,{dirty:function(){h.setUnpainted(),h.__painter.refresh()}})),r.save(),r.fillStyle=a||e,r.fillRect(t,n,i,o),r.restore()}s&&(r.save(),r.globalAlpha=l,r.drawImage(c,t,n,i,o),r.restore())}!n||s?p(0,0,o,a):n.length&&E(n,(function(t){p(t.x*u,t.y*u,t.width*u,t.height*u)}))},e}(Xt),Nw=1e5,Ew=314159,zw=.01;var Vw=function(){function t(t,e,n,i){this.type="canvas",this._zlevelList=[],this._prevDisplayList=[],this._layers={},this._layerConfig={},this._needsManuallyCompositing=!1,this.type="canvas";var r=!t.nodeName||"CANVAS"===t.nodeName.toUpperCase();this._opts=n=A({},n||{}),this.dpr=n.devicePixelRatio||Ai,this._singleCanvas=r,this.root=t,t.style&&(vt(t),t.innerHTML=""),this.storage=e;var o=this._zlevelList;this._prevDisplayList=[];var a=this._layers;if(r){var s=t,l=s.width,u=s.height;null!=n.width&&(l=n.width),null!=n.height&&(u=n.height),this.dpr=n.devicePixelRatio||1,s.width=l*this.dpr,s.height=u*this.dpr,this._width=l,this._height=u;var h=new Rw(s,this,this.dpr);h.__builtin__=!0,h.initContext(),a[314159]=h,h.zlevel=Ew,o.push(Ew),this._domRoot=t}else{this._width=Ny(t,0,n),this._height=Ny(t,1,n);var c=this._domRoot=function(t,e){var n=document.createElement("div");return n.style.cssText=["position:relative","width:"+t+"px","height:"+e+"px","padding:0","margin:0","border-width:0"].join(";")+";",n}(this._width,this._height);t.appendChild(c)}}return t.prototype.getType=function(){return"canvas"},t.prototype.isSingleCanvas=function(){return this._singleCanvas},t.prototype.getViewportRoot=function(){return this._domRoot},t.prototype.getViewportRootOffset=function(){var t=this.getViewportRoot();if(t)return{offsetLeft:t.offsetLeft||0,offsetTop:t.offsetTop||0}},t.prototype.refresh=function(t){var e=this.storage.getDisplayList(!0),n=this._prevDisplayList,i=this._zlevelList;this._redrawId=Math.random(),this._paintList(e,n,t,this._redrawId);for(var r=0;r<i.length;r++){var o=i[r],a=this._layers[o];if(!a.__builtin__&&a.refresh){var s=0===r?this._backgroundColor:null;a.refresh(s)}}return this._opts.useDirtyRect&&(this._prevDisplayList=e.slice()),this},t.prototype.refreshHover=function(){this._paintHoverList(this.storage.getDisplayList(!1))},t.prototype._paintHoverList=function(t){var e=t.length,n=this._hoverlayer;if(n&&n.clear(),e){for(var i,r={inHover:!0,viewWidth:this._width,viewHeight:this._height},o=0;o<e;o++){var a=t[o];a.__inHover&&(n||(n=this._hoverlayer=this.getLayer(Nw)),i||(i=n.ctx).save(),Jy(i,a,r,o===e-1))}i&&i.restore()}},t.prototype.getHoverLayer=function(){return this.getLayer(Nw)},t.prototype.paintOne=function(t,e){$y(t,e)},t.prototype._paintList=function(t,e,n,i){if(this._redrawId===i){n=n||!1,this._updateLayerStatus(t);var r=this._doPaintList(t,e,n),o=r.finished,a=r.needsRefreshHover;if(this._needsManuallyCompositing&&this._compositeManually(),a&&this._paintHoverList(t),o)this.eachLayer((function(t){t.afterBrush&&t.afterBrush()}));else{var s=this;ke((function(){s._paintList(t,e,n,i)}))}}},t.prototype._compositeManually=function(){var t=this.getLayer(Ew).ctx,e=this._domRoot.width,n=this._domRoot.height;t.clearRect(0,0,e,n),this.eachBuiltinLayer((function(i){i.virtual&&t.drawImage(i.dom,0,0,e,n)}))},t.prototype._doPaintList=function(t,e,n){for(var i=this,o=[],a=this._opts.useDirtyRect,s=0;s<this._zlevelList.length;s++){var l=this._zlevelList[s],u=this._layers[l];u.__builtin__&&u!==this._hoverlayer&&(u.__dirty||n)&&o.push(u)}for(var h=!0,c=!1,p=function(r){var s,l=o[r],u=l.ctx,p=a&&l.createRepaintRects(t,e,d._width,d._height),f=n?l.__startIndex:l.__drawIndex,g=!n&&l.incremental&&Date.now,y=g&&Date.now(),v=l.zlevel===d._zlevelList[0]?d._backgroundColor:null;if(l.__startIndex===l.__endIndex)l.clear(!1,v,p);else if(f===l.__startIndex){var m=t[f];m.incremental&&m.notClear&&!n||l.clear(!1,v,p)}-1===f&&(console.error("For some unknown reason. drawIndex is -1"),f=l.__startIndex);var x=function(e){var n={inHover:!1,allClipped:!1,prevEl:null,viewWidth:i._width,viewHeight:i._height};for(s=f;s<l.__endIndex;s++){var r=t[s];if(r.__inHover&&(c=!0),i._doPaintEl(r,l,a,e,n,s===l.__endIndex-1),g)if(Date.now()-y>15)break}n.prevElClipPaths&&u.restore()};if(p)if(0===p.length)s=l.__endIndex;else for(var _=d.dpr,b=0;b<p.length;++b){var w=p[b];u.save(),u.beginPath(),u.rect(w.x*_,w.y*_,w.width*_,w.height*_),u.clip(),x(w),u.restore()}else u.save(),x(),u.restore();l.__drawIndex=s,l.__drawIndex<l.__endIndex&&(h=!1)},d=this,f=0;f<o.length;f++)p(f);return r.wxa&&E(this._layers,(function(t){t&&t.ctx&&t.ctx.draw&&t.ctx.draw()})),{finished:h,needsRefreshHover:c}},t.prototype._doPaintEl=function(t,e,n,i,r,o){var a=e.ctx;if(n){var s=t.getPaintRect();(!i||s&&s.intersect(i))&&(Jy(a,t,r,o),t.setPrevPaintRect(s))}else Jy(a,t,r,o)},t.prototype.getLayer=function(t,e){this._singleCanvas&&!this._needsManuallyCompositing&&(t=Ew);var n=this._layers[t];return n||((n=new Rw("zr_"+t,this,this.dpr)).zlevel=t,n.__builtin__=!0,this._layerConfig[t]?C(n,this._layerConfig[t],!0):this._layerConfig[t-zw]&&C(n,this._layerConfig[t-zw],!0),e&&(n.virtual=e),this.insertLayer(t,n),n.initContext()),n},t.prototype.insertLayer=function(t,e){var n=this._layers,i=this._zlevelList,r=i.length,o=this._domRoot,a=null,s=-1;if(!n[t]&&function(t){return!!t&&(!!t.__builtin__||"function"==typeof t.resize&&"function"==typeof t.refresh)}(e)){if(r>0&&t>i[0]){for(s=0;s<r-1&&!(i[s]<t&&i[s+1]>t);s++);a=n[i[s]]}if(i.splice(s+1,0,t),n[t]=e,!e.virtual)if(a){var l=a.dom;l.nextSibling?o.insertBefore(e.dom,l.nextSibling):o.appendChild(e.dom)}else o.firstChild?o.insertBefore(e.dom,o.firstChild):o.appendChild(e.dom);e.__painter=this}},t.prototype.eachLayer=function(t,e){for(var n=this._zlevelList,i=0;i<n.length;i++){var r=n[i];t.call(e,this._layers[r],r)}},t.prototype.eachBuiltinLayer=function(t,e){for(var n=this._zlevelList,i=0;i<n.length;i++){var r=n[i],o=this._layers[r];o.__builtin__&&t.call(e,o,r)}},t.prototype.eachOtherLayer=function(t,e){for(var n=this._zlevelList,i=0;i<n.length;i++){var r=n[i],o=this._layers[r];o.__builtin__||t.call(e,o,r)}},t.prototype.getLayers=function(){return this._layers},t.prototype._updateLayerStatus=function(t){function e(t){o&&(o.__endIndex!==t&&(o.__dirty=!0),o.__endIndex=t)}if(this.eachBuiltinLayer((function(t,e){t.__dirty=t.__used=!1})),this._singleCanvas)for(var n=1;n<t.length;n++){if((s=t[n]).zlevel!==t[n-1].zlevel||s.incremental){this._needsManuallyCompositing=!0;break}}var i,r,o=null,a=0;for(r=0;r<t.length;r++){var s,l=(s=t[r]).zlevel,u=void 0;i!==l&&(i=l,a=0),s.incremental?((u=this.getLayer(l+.001,this._needsManuallyCompositing)).incremental=!0,a=1):u=this.getLayer(l+(a>0?zw:0),this._needsManuallyCompositing),u.__builtin__||I("ZLevel "+l+" has been used by unkown layer "+u.id),u!==o&&(u.__used=!0,u.__startIndex!==r&&(u.__dirty=!0),u.__startIndex=r,u.incremental?u.__drawIndex=-1:u.__drawIndex=r,e(r),o=u),1&s.__dirty&&!s.__inHover&&(u.__dirty=!0,u.incremental&&u.__drawIndex<0&&(u.__drawIndex=r))}e(r),this.eachBuiltinLayer((function(t,e){!t.__used&&t.getElementCount()>0&&(t.__dirty=!0,t.__startIndex=t.__endIndex=t.__drawIndex=0),t.__dirty&&t.__drawIndex<0&&(t.__drawIndex=t.__startIndex)}))},t.prototype.clear=function(){return this.eachBuiltinLayer(this._clearLayer),this},t.prototype._clearLayer=function(t){t.clear()},t.prototype.setBackgroundColor=function(t){this._backgroundColor=t,E(this._layers,(function(t){t.setUnpainted()}))},t.prototype.configLayer=function(t,e){if(e){var n=this._layerConfig;n[t]?C(n[t],e,!0):n[t]=e;for(var i=0;i<this._zlevelList.length;i++){var r=this._zlevelList[i];if(r===t||r===t+zw)C(this._layers[r],n[t],!0)}}},t.prototype.delLayer=function(t){var e=this._layers,n=this._zlevelList,i=e[t];i&&(i.dom.parentNode.removeChild(i.dom),delete e[t],n.splice(P(n,t),1))},t.prototype.resize=function(t,e){if(this._domRoot.style){var n=this._domRoot;n.style.display="none";var i=this._opts,r=this.root;if(null!=t&&(i.width=t),null!=e&&(i.height=e),t=Ny(r,0,i),e=Ny(r,1,i),n.style.display="",this._width!==t||e!==this._height){for(var o in n.style.width=t+"px",n.style.height=e+"px",this._layers)this._layers.hasOwnProperty(o)&&this._layers[o].resize(t,e);this.refresh(!0)}this._width=t,this._height=e}else{if(null==t||null==e)return;this._width=t,this._height=e,this.getLayer(Ew).resize(t,e)}return this},t.prototype.clearLayer=function(t){var e=this._layers[t];e&&e.clear()},t.prototype.dispose=function(){this.root.innerHTML="",this.root=this.storage=this._domRoot=this._layers=null},t.prototype.getRenderedCanvas=function(t){if(t=t||{},this._singleCanvas&&!this._compositeManually)return this._layers[314159].dom;var e=new Rw("image",this,t.pixelRatio||this.dpr);e.initContext(),e.clear(!1,t.backgroundColor||this._backgroundColor);var n=e.ctx;if(t.pixelRatio<=this.dpr){this.refresh();var i=e.dom.width,r=e.dom.height;this.eachLayer((function(t){t.__builtin__?n.drawImage(t.dom,0,0,i,r):t.renderToCanvas&&(n.save(),t.renderToCanvas(n),n.restore())}))}else for(var o={inHover:!1,viewWidth:this._width,viewHeight:this._height},a=this.storage.getDisplayList(!0),s=0,l=a.length;s<l;s++){var u=a[s];Jy(n,u,o,s===l-1)}return e.dom},t.prototype.getWidth=function(){return this._width},t.prototype.getHeight=function(){return this._height},t}();var Bw=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.hasSymbolVisual=!0,n}return n(e,t),e.prototype.getInitialData=function(t){return nx(null,this,{useEncodeDefaulter:!0})},e.prototype.getLegendIcon=function(t){var e=new Cr,n=ky("line",0,t.itemHeight/2,t.itemWidth,0,t.lineStyle.stroke,!1);e.add(n),n.setStyle(t.lineStyle);var i=this.getData().getVisual("symbol"),r=this.getData().getVisual("symbolRotate"),o="none"===i?"circle":i,a=.8*t.itemHeight,s=ky(o,(t.itemWidth-a)/2,(t.itemHeight-a)/2,a,a,t.itemStyle.fill);e.add(s),s.setStyle(t.itemStyle);var l="inherit"===t.iconRotate?r:t.iconRotate||0;return s.rotation=l*Math.PI/180,s.setOrigin([t.itemWidth/2,t.itemHeight/2]),o.indexOf("empty")>-1&&(s.style.stroke=s.style.fill,s.style.fill="#fff",s.style.lineWidth=2),e},e.type="series.line",e.dependencies=["grid","polar"],e.defaultOption={z:3,coordinateSystem:"cartesian2d",legendHoverLink:!0,clip:!0,label:{position:"top"},endLabel:{show:!1,valueAnimation:!0,distance:8},lineStyle:{width:2,type:"solid"},emphasis:{scale:!0},step:!1,smooth:!1,smoothMonotone:null,symbol:"emptyCircle",symbolSize:4,symbolRotate:null,showSymbol:!0,showAllSymbol:"auto",connectNulls:!1,sampling:"none",animationEasing:"linear",progressive:0,hoverLayerThreshold:1/0,universalTransition:{divideShape:"clone"},triggerLineEvent:!1},e}(ag);function Fw(t,e){var n=t.mapDimensionsAll("defaultedLabel"),i=n.length;if(1===i){var r=of(t,e,n[0]);return null!=r?r+"":null}if(i){for(var o=[],a=0;a<n.length;a++)o.push(of(t,e,n[a]));return o.join(" ")}}function Gw(t,e){var n=t.mapDimensionsAll("defaultedLabel");if(!Y(e))return e+"";for(var i=[],r=0;r<n.length;r++){var o=t.getDimensionIndex(n[r]);o>=0&&i.push(e[o])}return i.join(" ")}var Ww=function(t){function e(e,n,i,r){var o=t.call(this)||this;return o.updateData(e,n,i,r),o}return n(e,t),e.prototype._createSymbol=function(t,e,n,i,r){this.removeAll();var o=ky(t,-1,-1,2,2,null,r);o.attr({z2:100,culling:!0,scaleX:i[0]/2,scaleY:i[1]/2}),o.drift=Hw,this._symbolType=t,this.add(o)},e.prototype.stopSymbolAnimation=function(t){this.childAt(0).stopAnimation(null,t)},e.prototype.getSymbolType=function(){return this._symbolType},e.prototype.getSymbolPath=function(){return this.childAt(0)},e.prototype.highlight=function(){xl(this.childAt(0))},e.prototype.downplay=function(){_l(this.childAt(0))},e.prototype.setZ=function(t,e){var n=this.childAt(0);n.zlevel=t,n.z=e},e.prototype.setDraggable=function(t){var e=this.childAt(0);e.draggable=t,e.cursor=t?"move":e.cursor},e.prototype.updateData=function(t,n,i,r){this.silent=!1;var o=t.getItemVisual(n,"symbol")||"circle",a=t.hostModel,s=e.getSymbolSize(t,n),l=o!==this._symbolType,u=r&&r.disableAnimation;if(l){var h=t.getItemVisual(n,"symbolKeepAspect");this._createSymbol(o,t,n,s,h)}else{(p=this.childAt(0)).silent=!1;var c={scaleX:s[0]/2,scaleY:s[1]/2};u?p.attr(c):ih(p,c,a,n),uh(p)}if(this._updateCommon(t,n,s,i,r),l){var p=this.childAt(0);if(!u){c={scaleX:this._sizeX,scaleY:this._sizeY,style:{opacity:p.style.opacity}};p.scaleX=p.scaleY=0,p.style.opacity=0,rh(p,c,a,n)}}u&&this.childAt(0).stopAnimation("leave"),this._seriesModel=a},e.prototype._updateCommon=function(t,e,n,i,r){var o,a,s,l,u,h,c,p,d,f=this.childAt(0),g=t.hostModel;if(i&&(o=i.emphasisItemStyle,a=i.blurItemStyle,s=i.selectItemStyle,l=i.focus,u=i.blurScope,c=i.labelStatesModels,p=i.hoverScale,d=i.cursorStyle,h=i.emphasisDisabled),!i||t.hasItemOption){var y=i&&i.itemModel?i.itemModel:t.getItemModel(e),v=y.getModel("emphasis");o=v.getModel("itemStyle").getItemStyle(),s=y.getModel(["select","itemStyle"]).getItemStyle(),a=y.getModel(["blur","itemStyle"]).getItemStyle(),l=v.get("focus"),u=v.get("blurScope"),h=v.get("disabled"),c=Hh(y),p=v.getShallow("scale"),d=y.getShallow("cursor")}var m=t.getItemVisual(e,"symbolRotate");f.attr("rotation",(m||0)*Math.PI/180||0);var x=Py(t.getItemVisual(e,"symbolOffset"),n);x&&(f.x=x[0],f.y=x[1]),d&&f.attr("cursor",d);var _=t.getItemVisual(e,"style"),b=_.fill;if(f instanceof xs){var w=f.style;f.useStyle(A({image:w.image,x:w.x,y:w.y,width:w.width,height:w.height},_))}else f.__isEmptyBrush?f.useStyle(A({},_)):f.useStyle(_),f.style.decal=null,f.setColor(b,r&&r.symbolInnerColor),f.style.strokeNoScale=!0;var S=t.getItemVisual(e,"liftZ"),M=this._z2;null!=S?null==M&&(this._z2=f.z2,f.z2+=S):null!=M&&(f.z2=M,this._z2=null);var I=r&&r.useNameLabel;Wh(f,c,{labelFetcher:g,labelDataIndex:e,defaultText:function(e){return I?t.getName(e):Fw(t,e)},inheritColor:b,defaultOpacity:_.opacity}),this._sizeX=n[0]/2,this._sizeY=n[1]/2;var T=f.ensureState("emphasis");if(T.style=o,f.ensureState("select").style=s,f.ensureState("blur").style=a,p){var C=Math.max(1.1,3/this._sizeY);T.scaleX=this._sizeX*C,T.scaleY=this._sizeY*C}this.setSymbolScale(1),Ol(this,l,u,h)},e.prototype.setSymbolScale=function(t){this.scaleX=this.scaleY=t},e.prototype.fadeOut=function(t,e){var n=this.childAt(0),i=this._seriesModel,r=Ws(this).dataIndex,o=e&&e.animation;if(this.silent=n.silent=!0,e&&e.fadeLabel){var a=n.getTextContent();a&&ah(a,{style:{opacity:0}},i,{dataIndex:r,removeOpt:o,cb:function(){n.removeTextContent()}})}else n.removeTextContent();ah(n,{style:{opacity:0},scaleX:0,scaleY:0},i,{dataIndex:r,cb:t,removeOpt:o})},e.getSymbolSize=function(t,e){return Ly(t.getItemVisual(e,"symbolSize"))},e}(Cr);function Hw(t,e){this.parent.drift(t,e)}function Yw(t,e,n,i){return e&&!isNaN(e[0])&&!isNaN(e[1])&&!(i.isIgnore&&i.isIgnore(n))&&!(i.clipShape&&!i.clipShape.contain(e[0],e[1]))&&"none"!==t.getItemVisual(n,"symbol")}function Uw(t){return null==t||q(t)||(t={isIgnore:t}),t||{}}function Xw(t){var e=t.hostModel,n=e.getModel("emphasis");return{emphasisItemStyle:n.getModel("itemStyle").getItemStyle(),blurItemStyle:e.getModel(["blur","itemStyle"]).getItemStyle(),selectItemStyle:e.getModel(["select","itemStyle"]).getItemStyle(),focus:n.get("focus"),blurScope:n.get("blurScope"),emphasisDisabled:n.get("disabled"),hoverScale:n.get("scale"),labelStatesModels:Hh(e),cursorStyle:e.get("cursor")}}var Zw=function(){function t(t){this.group=new Cr,this._SymbolCtor=t||Ww}return t.prototype.updateData=function(t,e){this._progressiveEls=null,e=Uw(e);var n=this.group,i=t.hostModel,r=this._data,o=this._SymbolCtor,a=e.disableAnimation,s=Xw(t),l={disableAnimation:a},u=e.getSymbolPoint||function(e){return t.getItemLayout(e)};r||n.removeAll(),t.diff(r).add((function(i){var r=u(i);if(Yw(t,r,i,e)){var a=new o(t,i,s,l);a.setPosition(r),t.setItemGraphicEl(i,a),n.add(a)}})).update((function(h,c){var p=r.getItemGraphicEl(c),d=u(h);if(Yw(t,d,h,e)){var f=t.getItemVisual(h,"symbol")||"circle",g=p&&p.getSymbolType&&p.getSymbolType();if(!p||g&&g!==f)n.remove(p),(p=new o(t,h,s,l)).setPosition(d);else{p.updateData(t,h,s,l);var y={x:d[0],y:d[1]};a?p.attr(y):ih(p,y,i)}n.add(p),t.setItemGraphicEl(h,p)}else n.remove(p)})).remove((function(t){var e=r.getItemGraphicEl(t);e&&e.fadeOut((function(){n.remove(e)}))})).execute(),this._getSymbolPoint=u,this._data=t},t.prototype.updateLayout=function(){var t=this,e=this._data;e&&e.eachItemGraphicEl((function(e,n){var i=t._getSymbolPoint(n);e.setPosition(i),e.markRedraw()}))},t.prototype.incrementalPrepareUpdate=function(t){this._seriesScope=Xw(t),this._data=null,this.group.removeAll()},t.prototype.incrementalUpdate=function(t,e,n){function i(t){t.isGroup||(t.incremental=!0,t.ensureState("emphasis").hoverLayer=!0)}this._progressiveEls=[],n=Uw(n);for(var r=t.start;r<t.end;r++){var o=e.getItemLayout(r);if(Yw(e,o,r,n)){var a=new this._SymbolCtor(e,r,this._seriesScope);a.traverse(i),a.setPosition(o),this.group.add(a),e.setItemGraphicEl(r,a),this._progressiveEls.push(a)}}},t.prototype.eachRendered=function(t){zh(this._progressiveEls||this.group,t)},t.prototype.remove=function(t){var e=this.group,n=this._data;n&&t?n.eachItemGraphicEl((function(t){t.fadeOut((function(){e.remove(t)}))})):e.removeAll()},t}();function jw(t,e,n){var i=t.getBaseAxis(),r=t.getOtherAxis(i),o=function(t,e){var n=0,i=t.scale.getExtent();"start"===e?n=i[0]:"end"===e?n=i[1]:i[0]>0?n=i[0]:i[1]<0&&(n=i[1]);return n}(r,n),a=i.dim,s=r.dim,l=e.mapDimension(s),u=e.mapDimension(a),h="x"===s||"radius"===s?1:0,c=z(t.dimensions,(function(t){return e.mapDimension(t)})),p=!1,d=e.getCalculationInfo("stackResultDimension");return tx(e,c[0])&&(p=!0,c[0]=d),tx(e,c[1])&&(p=!0,c[1]=d),{dataDimsForPoint:c,valueStart:o,valueAxisDim:s,baseAxisDim:a,stacked:!!p,valueDim:l,baseDim:u,baseDataOffset:h,stackedOverDimension:e.getCalculationInfo("stackedOverDimension")}}function qw(t,e,n,i){var r=NaN;t.stacked&&(r=n.get(n.getCalculationInfo("stackedOverDimension"),i)),isNaN(r)&&(r=t.valueStart);var o=t.baseDataOffset,a=[];return a[o]=n.get(t.baseDim,i),a[1-o]=r,e.dataToPoint(a)}var Kw=Math.min,$w=Math.max;function Jw(t,e){return isNaN(t)||isNaN(e)}function Qw(t,e,n,i,r,o,a,s,l){for(var u,h,c,p,d,f,g=n,y=0;y<i;y++){var v=e[2*g],m=e[2*g+1];if(g>=r||g<0)break;if(Jw(v,m)){if(l){g+=o;continue}break}if(g===n)t[o>0?"moveTo":"lineTo"](v,m),c=v,p=m;else{var x=v-u,_=m-h;if(x*x+_*_<.5){g+=o;continue}if(a>0){for(var b=g+o,w=e[2*b],S=e[2*b+1];w===v&&S===m&&y<i;)y++,g+=o,w=e[2*(b+=o)],S=e[2*b+1],x=(v=e[2*g])-u,_=(m=e[2*g+1])-h;var M=y+1;if(l)for(;Jw(w,S)&&M<i;)M++,w=e[2*(b+=o)],S=e[2*b+1];var I=.5,T=0,C=0,D=void 0,A=void 0;if(M>=i||Jw(w,S))d=v,f=m;else{T=w-u,C=S-h;var k=v-u,L=w-v,P=m-h,O=S-m,R=void 0,N=void 0;if("x"===s){var E=T>0?1:-1;d=v-E*(R=Math.abs(k))*a,f=m,D=v+E*(N=Math.abs(L))*a,A=m}else if("y"===s){var z=C>0?1:-1;d=v,f=m-z*(R=Math.abs(P))*a,D=v,A=m+z*(N=Math.abs(O))*a}else R=Math.sqrt(k*k+P*P),d=v-T*a*(1-(I=(N=Math.sqrt(L*L+O*O))/(N+R))),f=m-C*a*(1-I),A=m+C*a*I,D=Kw(D=v+T*a*I,$w(w,v)),A=Kw(A,$w(S,m)),D=$w(D,Kw(w,v)),f=m-(C=(A=$w(A,Kw(S,m)))-m)*R/N,d=Kw(d=v-(T=D-v)*R/N,$w(u,v)),f=Kw(f,$w(h,m)),D=v+(T=v-(d=$w(d,Kw(u,v))))*N/R,A=m+(C=m-(f=$w(f,Kw(h,m))))*N/R}t.bezierCurveTo(c,p,d,f,v,m),c=D,p=A}else t.lineTo(v,m)}u=v,h=m,g+=o}return y}var tS=function(){this.smooth=0,this.smoothConstraint=!0},eS=function(t){function e(e){var n=t.call(this,e)||this;return n.type="ec-polyline",n}return n(e,t),e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new tS},e.prototype.buildPath=function(t,e){var n=e.points,i=0,r=n.length/2;if(e.connectNulls){for(;r>0&&Jw(n[2*r-2],n[2*r-1]);r--);for(;i<r&&Jw(n[2*i],n[2*i+1]);i++);}for(;i<r;)i+=Qw(t,n,i,r,r,1,e.smooth,e.smoothMonotone,e.connectNulls)+1},e.prototype.getPointOn=function(t,e){this.path||(this.createPathProxy(),this.buildPath(this.path,this.shape));for(var n,i,r=this.path.data,o=ja.CMD,a="x"===e,s=[],l=0;l<r.length;){var u=void 0,h=void 0,c=void 0,p=void 0,d=void 0,f=void 0,g=void 0;switch(r[l++]){case o.M:n=r[l++],i=r[l++];break;case o.L:if(u=r[l++],h=r[l++],(g=a?(t-n)/(u-n):(t-i)/(h-i))<=1&&g>=0){var y=a?(h-i)*g+i:(u-n)*g+n;return a?[t,y]:[y,t]}n=u,i=h;break;case o.C:u=r[l++],h=r[l++],c=r[l++],p=r[l++],d=r[l++],f=r[l++];var v=a?Ue(n,u,c,d,t,s):Ue(i,h,p,f,t,s);if(v>0)for(var m=0;m<v;m++){var x=s[m];if(x<=1&&x>=0){y=a?He(i,h,p,f,x):He(n,u,c,d,x);return a?[t,y]:[y,t]}}n=d,i=f}}},e}(fs),nS=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e}(tS),iS=function(t){function e(e){var n=t.call(this,e)||this;return n.type="ec-polygon",n}return n(e,t),e.prototype.getDefaultShape=function(){return new nS},e.prototype.buildPath=function(t,e){var n=e.points,i=e.stackedOnPoints,r=0,o=n.length/2,a=e.smoothMonotone;if(e.connectNulls){for(;o>0&&Jw(n[2*o-2],n[2*o-1]);o--);for(;r<o&&Jw(n[2*r],n[2*r+1]);r++);}for(;r<o;){var s=Qw(t,n,r,o,o,1,e.smooth,a,e.connectNulls);Qw(t,i,r+s-1,s,o,-1,e.stackedOnSmooth,a,e.connectNulls),r+=s+1,t.closePath()}},e}(fs);function rS(t,e,n,i,r){var o=t.getArea(),a=o.x,s=o.y,l=o.width,u=o.height,h=n.get(["lineStyle","width"])||2;a-=h/2,s-=h/2,l+=h,u+=h,a=Math.floor(a),l=Math.round(l);var c=new Ts({shape:{x:a,y:s,width:l,height:u}});if(e){var p=t.getBaseAxis(),d=p.isHorizontal(),f=p.inverse;d?(f&&(c.shape.x+=l),c.shape.width=0):(f||(c.shape.y+=u),c.shape.height=0);var g=U(r)?function(t){r(t,c)}:null;rh(c,{shape:{width:l,height:u,x:a,y:s}},n,null,i,g)}return c}function oS(t,e,n){var i=t.getArea(),r=zr(i.r0,1),o=zr(i.r,1),a=new Tu({shape:{cx:zr(t.cx,1),cy:zr(t.cy,1),r0:r,r:o,startAngle:i.startAngle,endAngle:i.endAngle,clockwise:i.clockwise}});e&&("angle"===t.getBaseAxis().dim?a.shape.endAngle=i.startAngle:a.shape.r=r,rh(a,{shape:{endAngle:i.endAngle,r:o}},n));return a}function aS(t,e,n,i,r){return t?"polar"===t.type?oS(t,e,n):"cartesian2d"===t.type?rS(t,e,n,i,r):null:null}function sS(t,e){return t.type===e}function lS(t,e){if(t.length===e.length){for(var n=0;n<t.length;n++)if(t[n]!==e[n])return;return!0}}function uS(t){for(var e=1/0,n=1/0,i=-1/0,r=-1/0,o=0;o<t.length;){var a=t[o++],s=t[o++];isNaN(a)||(e=Math.min(a,e),i=Math.max(a,i)),isNaN(s)||(n=Math.min(s,n),r=Math.max(s,r))}return[[e,n],[i,r]]}function hS(t,e){var n=uS(t),i=n[0],r=n[1],o=uS(e),a=o[0],s=o[1];return Math.max(Math.abs(i[0]-a[0]),Math.abs(i[1]-a[1]),Math.abs(r[0]-s[0]),Math.abs(r[1]-s[1]))}function cS(t){return j(t)?t:t?.5:0}function pS(t,e,n){for(var i=e.getBaseAxis(),r="x"===i.dim||"radius"===i.dim?0:1,o=[],a=0,s=[],l=[],u=[];a<t.length-2;a+=2)switch(u[0]=t[a+2],u[1]=t[a+3],l[0]=t[a],l[1]=t[a+1],o.push(l[0],l[1]),n){case"end":s[r]=u[r],s[1-r]=l[1-r],o.push(s[0],s[1]);break;case"middle":var h=(l[r]+u[r])/2,c=[];s[r]=c[r]=h,s[1-r]=l[1-r],c[1-r]=u[1-r],o.push(s[0],s[1]),o.push(c[0],c[1]);break;default:s[r]=l[r],s[1-r]=u[1-r],o.push(s[0],s[1])}return o.push(t[a++],t[a++]),o}function dS(t,e,n){var i=t.getVisual("visualMeta");if(i&&i.length&&t.count()&&"cartesian2d"===e.type){for(var r,o,a=i.length-1;a>=0;a--){var s=t.getDimensionInfo(i[a].dimension);if("x"===(r=s&&s.coordDim)||"y"===r){o=i[a];break}}if(o){var l=e.getAxis(r),u=z(o.stops,(function(t){return{coord:l.toGlobalCoord(l.dataToCoord(t.value)),color:t.color}})),h=u.length,c=o.outerColors.slice();h&&u[0].coord>u[h-1].coord&&(u.reverse(),c.reverse());var p=function(t,e){var n,i,r=[],o=t.length;function a(t,e,n){var i=t.coord;return{coord:n,color:Tn((n-i)/(e.coord-i),[t.color,e.color])}}for(var s=0;s<o;s++){var l=t[s],u=l.coord;if(u<0)n=l;else{if(u>e){i?r.push(a(i,l,e)):n&&r.push(a(n,l,0),a(n,l,e));break}n&&(r.push(a(n,l,0)),n=null),r.push(l),i=l}}return r}(u,"x"===r?n.getWidth():n.getHeight()),d=p.length;if(!d&&h)return u[0].coord<0?c[1]?c[1]:u[h-1].color:c[0]?c[0]:u[0].color;var f=p[0].coord-10,g=p[d-1].coord+10,y=g-f;if(y<.001)return"transparent";E(p,(function(t){t.offset=(t.coord-f)/y})),p.push({offset:d?p[d-1].offset:.5,color:c[1]||"transparent"}),p.unshift({offset:d?p[0].offset:.5,color:c[0]||"transparent"});var v=new Uu(0,0,0,0,p,!0);return v[r]=f,v[r+"2"]=g,v}}}function fS(t,e,n){var i=t.get("showAllSymbol"),r="auto"===i;if(!i||r){var o=n.getAxesByScale("ordinal")[0];if(o&&(!r||!function(t,e){var n=t.getExtent(),i=Math.abs(n[1]-n[0])/t.scale.count();isNaN(i)&&(i=0);for(var r=e.count(),o=Math.max(1,Math.round(r/5)),a=0;a<r;a+=o)if(1.5*Ww.getSymbolSize(e,a)[t.isHorizontal()?1:0]>i)return!1;return!0}(o,e))){var a=e.mapDimension(o.dim),s={};return E(o.getViewLabels(),(function(t){var e=o.scale.getRawOrdinalNumber(t.tickValue);s[e]=1})),function(t){return!s.hasOwnProperty(e.get(a,t))}}}}function gS(t,e){return[t[2*e],t[2*e+1]]}function yS(t){if(t.get(["endLabel","show"]))return!0;for(var e=0;e<js.length;e++)if(t.get([js[e],"endLabel","show"]))return!0;return!1}function vS(t,e,n,i){if(sS(e,"cartesian2d")){var r=i.getModel("endLabel"),o=r.get("valueAnimation"),a=i.getData(),s={lastFrameIndex:0},l=yS(i)?function(n,i){t._endLabelOnDuring(n,i,a,s,o,r,e)}:null,u=e.getBaseAxis().isHorizontal(),h=rS(e,n,i,(function(){var e=t._endLabel;e&&n&&null!=s.originalX&&e.attr({x:s.originalX,y:s.originalY})}),l);if(!i.get("clip",!0)){var c=h.shape,p=Math.max(c.width,c.height);u?(c.y-=p,c.height+=2*p):(c.x-=p,c.width+=2*p)}return l&&l(1,h),h}return oS(e,n,i)}var mS=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.init=function(){var t=new Cr,e=new Zw;this.group.add(e.group),this._symbolDraw=e,this._lineGroup=t},e.prototype.render=function(t,e,n){var i=this,r=t.coordinateSystem,o=this.group,a=t.getData(),s=t.getModel("lineStyle"),l=t.getModel("areaStyle"),u=a.getLayout("points")||[],h="polar"===r.type,c=this._coordSys,p=this._symbolDraw,d=this._polyline,f=this._polygon,g=this._lineGroup,y=t.get("animation"),v=!l.isEmpty(),m=l.get("origin"),x=jw(r,a,m),_=v&&function(t,e,n){if(!n.valueDim)return[];for(var i=e.count(),r=_x(2*i),o=0;o<i;o++){var a=qw(n,t,e,o);r[2*o]=a[0],r[2*o+1]=a[1]}return r}(r,a,x),b=t.get("showSymbol"),w=b&&!h&&fS(t,a,r),S=this._data;S&&S.eachItemGraphicEl((function(t,e){t.__temp&&(o.remove(t),S.setItemGraphicEl(e,null))})),b||p.remove(),o.add(g);var M,I=!h&&t.get("step");r&&r.getArea&&t.get("clip",!0)&&(null!=(M=r.getArea()).width?(M.x-=.1,M.y-=.1,M.width+=.2,M.height+=.2):M.r0&&(M.r0-=.5,M.r+=.5)),this._clipShapeForSymbol=M;var T=dS(a,r,n)||a.getVisual("style")[a.getVisual("drawType")];if(d&&c.type===r.type&&I===this._step){v&&!f?f=this._newPolygon(u,_):f&&!v&&(g.remove(f),f=this._polygon=null),h||this._initOrUpdateEndLabel(t,r,cp(T));var C=g.getClipPath();if(C)rh(C,{shape:vS(this,r,!1,t).shape},t);else g.setClipPath(vS(this,r,!0,t));b&&p.updateData(a,{isIgnore:w,clipShape:M,disableAnimation:!0,getSymbolPoint:function(t){return[u[2*t],u[2*t+1]]}}),lS(this._stackedOnPoints,_)&&lS(this._points,u)||(y?this._doUpdateAnimation(a,_,r,n,I,m):(I&&(u=pS(u,r,I),_&&(_=pS(_,r,I))),d.setShape({points:u}),f&&f.setShape({points:u,stackedOnPoints:_})))}else b&&p.updateData(a,{isIgnore:w,clipShape:M,disableAnimation:!0,getSymbolPoint:function(t){return[u[2*t],u[2*t+1]]}}),y&&this._initSymbolLabelAnimation(a,r,M),I&&(u=pS(u,r,I),_&&(_=pS(_,r,I))),d=this._newPolyline(u),v&&(f=this._newPolygon(u,_)),h||this._initOrUpdateEndLabel(t,r,cp(T)),g.setClipPath(vS(this,r,!0,t));var D=t.getModel("emphasis"),A=D.get("focus"),L=D.get("blurScope"),P=D.get("disabled");(d.useStyle(k(s.getLineStyle(),{fill:"none",stroke:T,lineJoin:"bevel"})),zl(d,t,"lineStyle"),d.style.lineWidth>0&&"bolder"===t.get(["emphasis","lineStyle","width"]))&&(d.getState("emphasis").style.lineWidth=+d.style.lineWidth+1);Ws(d).seriesIndex=t.seriesIndex,Ol(d,A,L,P);var O=cS(t.get("smooth")),R=t.get("smoothMonotone"),N=t.get("connectNulls");if(d.setShape({smooth:O,smoothMonotone:R,connectNulls:N}),f){var E=a.getCalculationInfo("stackedOnSeries"),z=0;f.useStyle(k(l.getAreaStyle(),{fill:T,opacity:.7,lineJoin:"bevel",decal:a.getVisual("style").decal})),E&&(z=cS(E.get("smooth"))),f.setShape({smooth:O,stackedOnSmooth:z,smoothMonotone:R,connectNulls:N}),zl(f,t,"areaStyle"),Ws(f).seriesIndex=t.seriesIndex,Ol(f,A,L,P)}var V=function(t){i._changePolyState(t)};a.eachItemGraphicEl((function(t){t&&(t.onHoverStateChange=V)})),this._polyline.onHoverStateChange=V,this._data=a,this._coordSys=r,this._stackedOnPoints=_,this._points=u,this._step=I,this._valueOrigin=m,t.get("triggerLineEvent")&&(this.packEventData(t,d),f&&this.packEventData(t,f))},e.prototype.packEventData=function(t,e){Ws(e).eventData={componentType:"series",componentSubType:"line",componentIndex:t.componentIndex,seriesIndex:t.seriesIndex,seriesName:t.name,seriesType:"line"}},e.prototype.highlight=function(t,e,n,i){var r=t.getData(),o=wo(r,i);if(this._changePolyState("emphasis"),!(o instanceof Array)&&null!=o&&o>=0){var a=r.getLayout("points"),s=r.getItemGraphicEl(o);if(!s){var l=a[2*o],u=a[2*o+1];if(isNaN(l)||isNaN(u))return;if(this._clipShapeForSymbol&&!this._clipShapeForSymbol.contain(l,u))return;var h=t.get("zlevel"),c=t.get("z");(s=new Ww(r,o)).x=l,s.y=u,s.setZ(h,c);var p=s.getSymbolPath().getTextContent();p&&(p.zlevel=h,p.z=c,p.z2=this._polyline.z2+1),s.__temp=!0,r.setItemGraphicEl(o,s),s.stopSymbolAnimation(!0),this.group.add(s)}s.highlight()}else mg.prototype.highlight.call(this,t,e,n,i)},e.prototype.downplay=function(t,e,n,i){var r=t.getData(),o=wo(r,i);if(this._changePolyState("normal"),null!=o&&o>=0){var a=r.getItemGraphicEl(o);a&&(a.__temp?(r.setItemGraphicEl(o,null),this.group.remove(a)):a.downplay())}else mg.prototype.downplay.call(this,t,e,n,i)},e.prototype._changePolyState=function(t){var e=this._polygon;fl(this._polyline,t),e&&fl(e,t)},e.prototype._newPolyline=function(t){var e=this._polyline;return e&&this._lineGroup.remove(e),e=new eS({shape:{points:t},segmentIgnoreThreshold:2,z2:10}),this._lineGroup.add(e),this._polyline=e,e},e.prototype._newPolygon=function(t,e){var n=this._polygon;return n&&this._lineGroup.remove(n),n=new iS({shape:{points:t,stackedOnPoints:e},segmentIgnoreThreshold:2}),this._lineGroup.add(n),this._polygon=n,n},e.prototype._initSymbolLabelAnimation=function(t,e,n){var i,r,o=e.getBaseAxis(),a=o.inverse;"cartesian2d"===e.type?(i=o.isHorizontal(),r=!1):"polar"===e.type&&(i="angle"===o.dim,r=!0);var s=t.hostModel,l=s.get("animationDuration");U(l)&&(l=l(null));var u=s.get("animationDelay")||0,h=U(u)?u(null):u;t.eachItemGraphicEl((function(t,o){var s=t;if(s){var c=[t.x,t.y],p=void 0,d=void 0,f=void 0;if(n)if(r){var g=n,y=e.pointToCoord(c);i?(p=g.startAngle,d=g.endAngle,f=-y[1]/180*Math.PI):(p=g.r0,d=g.r,f=y[0])}else{var v=n;i?(p=v.x,d=v.x+v.width,f=t.x):(p=v.y+v.height,d=v.y,f=t.y)}var m=d===p?0:(f-p)/(d-p);a&&(m=1-m);var x=U(u)?u(o):l*m+h,_=s.getSymbolPath(),b=_.getTextContent();s.attr({scaleX:0,scaleY:0}),s.animateTo({scaleX:1,scaleY:1},{duration:200,setToFinal:!0,delay:x}),b&&b.animateFrom({style:{opacity:0}},{duration:300,delay:x}),_.disableLabelAnimation=!0}}))},e.prototype._initOrUpdateEndLabel=function(t,e,n){var i=t.getModel("endLabel");if(yS(t)){var r=t.getData(),o=this._polyline,a=r.getLayout("points");if(!a)return o.removeTextContent(),void(this._endLabel=null);var s=this._endLabel;s||((s=this._endLabel=new As({z2:200})).ignoreClip=!0,o.setTextContent(this._endLabel),o.disableLabelAnimation=!0);var l=function(t){for(var e,n,i=t.length/2;i>0&&(e=t[2*i-2],n=t[2*i-1],isNaN(e)||isNaN(n));i--);return i-1}(a);l>=0&&(Wh(o,Hh(t,"endLabel"),{inheritColor:n,labelFetcher:t,labelDataIndex:l,defaultText:function(t,e,n){return null!=n?Gw(r,n):Fw(r,t)},enableTextSetter:!0},function(t,e){var n=e.getBaseAxis(),i=n.isHorizontal(),r=n.inverse,o=i?r?"right":"left":"center",a=i?"middle":r?"top":"bottom";return{normal:{align:t.get("align")||o,verticalAlign:t.get("verticalAlign")||a}}}(i,e)),o.textConfig.position=null)}else this._endLabel&&(this._polyline.removeTextContent(),this._endLabel=null)},e.prototype._endLabelOnDuring=function(t,e,n,i,r,o,a){var s=this._endLabel,l=this._polyline;if(s){t<1&&null==i.originalX&&(i.originalX=s.x,i.originalY=s.y);var u=n.getLayout("points"),h=n.hostModel,c=h.get("connectNulls"),p=o.get("precision"),d=o.get("distance")||0,f=a.getBaseAxis(),g=f.isHorizontal(),y=f.inverse,v=e.shape,m=y?g?v.x:v.y+v.height:g?v.x+v.width:v.y,x=(g?d:0)*(y?-1:1),_=(g?0:-d)*(y?-1:1),b=g?"x":"y",w=function(t,e,n){for(var i,r,o=t.length/2,a="x"===n?0:1,s=0,l=-1,u=0;u<o;u++)if(r=t[2*u+a],!isNaN(r)&&!isNaN(t[2*u+1-a]))if(0!==u){if(i<=e&&r>=e||i>=e&&r<=e){l=u;break}s=u,i=r}else i=r;return{range:[s,l],t:(e-i)/(r-i)}}(u,m,b),S=w.range,M=S[1]-S[0],I=void 0;if(M>=1){if(M>1&&!c){var T=gS(u,S[0]);s.attr({x:T[0]+x,y:T[1]+_}),r&&(I=h.getRawValue(S[0]))}else{(T=l.getPointOn(m,b))&&s.attr({x:T[0]+x,y:T[1]+_});var C=h.getRawValue(S[0]),D=h.getRawValue(S[1]);r&&(I=Po(n,p,C,D,w.t))}i.lastFrameIndex=S[0]}else{var A=1===t||i.lastFrameIndex>0?S[0]:0;T=gS(u,A);r&&(I=h.getRawValue(A)),s.attr({x:T[0]+x,y:T[1]+_})}r&&$h(s).setLabelText(I)}},e.prototype._doUpdateAnimation=function(t,e,n,i,r,o){var a=this._polyline,s=this._polygon,l=t.hostModel,u=function(t,e,n,i,r,o,a,s){for(var l=function(t,e){var n=[];return e.diff(t).add((function(t){n.push({cmd:"+",idx:t})})).update((function(t,e){n.push({cmd:"=",idx:e,idx1:t})})).remove((function(t){n.push({cmd:"-",idx:t})})).execute(),n}(t,e),u=[],h=[],c=[],p=[],d=[],f=[],g=[],y=jw(r,e,a),v=t.getLayout("points")||[],m=e.getLayout("points")||[],x=0;x<l.length;x++){var _=l[x],b=!0,w=void 0,S=void 0;switch(_.cmd){case"=":w=2*_.idx,S=2*_.idx1;var M=v[w],I=v[w+1],T=m[S],C=m[S+1];(isNaN(M)||isNaN(I))&&(M=T,I=C),u.push(M,I),h.push(T,C),c.push(n[w],n[w+1]),p.push(i[S],i[S+1]),g.push(e.getRawIndex(_.idx1));break;case"+":var D=_.idx,A=y.dataDimsForPoint,k=r.dataToPoint([e.get(A[0],D),e.get(A[1],D)]);S=2*D,u.push(k[0],k[1]),h.push(m[S],m[S+1]);var L=qw(y,r,e,D);c.push(L[0],L[1]),p.push(i[S],i[S+1]),g.push(e.getRawIndex(D));break;case"-":b=!1}b&&(d.push(_),f.push(f.length))}f.sort((function(t,e){return g[t]-g[e]}));var P=u.length,O=_x(P),R=_x(P),N=_x(P),E=_x(P),z=[];for(x=0;x<f.length;x++){var V=f[x],B=2*x,F=2*V;O[B]=u[F],O[B+1]=u[F+1],R[B]=h[F],R[B+1]=h[F+1],N[B]=c[F],N[B+1]=c[F+1],E[B]=p[F],E[B+1]=p[F+1],z[x]=d[V]}return{current:O,next:R,stackedOnCurrent:N,stackedOnNext:E,status:z}}(this._data,t,this._stackedOnPoints,e,this._coordSys,0,this._valueOrigin),h=u.current,c=u.stackedOnCurrent,p=u.next,d=u.stackedOnNext;if(r&&(h=pS(u.current,n,r),c=pS(u.stackedOnCurrent,n,r),p=pS(u.next,n,r),d=pS(u.stackedOnNext,n,r)),hS(h,p)>3e3||s&&hS(c,d)>3e3)return a.stopAnimation(),a.setShape({points:p}),void(s&&(s.stopAnimation(),s.setShape({points:p,stackedOnPoints:d})));a.shape.__points=u.current,a.shape.points=h;var f={shape:{points:p}};u.current!==h&&(f.shape.__points=u.next),a.stopAnimation(),ih(a,f,l),s&&(s.setShape({points:h,stackedOnPoints:c}),s.stopAnimation(),ih(s,{shape:{stackedOnPoints:d}},l),a.shape.points!==s.shape.points&&(s.shape.points=a.shape.points));for(var g=[],y=u.status,v=0;v<y.length;v++){if("="===y[v].cmd){var m=t.getItemGraphicEl(y[v].idx1);m&&g.push({el:m,ptIdx:v})}}a.animators&&a.animators.length&&a.animators[0].during((function(){s&&s.dirtyShape();for(var t=a.shape.__points,e=0;e<g.length;e++){var n=g[e].el,i=2*g[e].ptIdx;n.x=t[i],n.y=t[i+1],n.markRedraw()}}))},e.prototype.remove=function(t){var e=this.group,n=this._data;this._lineGroup.removeAll(),this._symbolDraw.remove(!0),n&&n.eachItemGraphicEl((function(t,i){t.__temp&&(e.remove(t),n.setItemGraphicEl(i,null))})),this._polyline=this._polygon=this._coordSys=this._points=this._stackedOnPoints=this._endLabel=this._data=null},e.type="line",e}(mg);function xS(t,e){return{seriesType:t,plan:gg(),reset:function(t){var n=t.getData(),i=t.coordinateSystem,r=t.pipelineContext,o=e||r.large;if(i){var a=z(i.dimensions,(function(t){return n.mapDimension(t)})).slice(0,2),s=a.length,l=n.getCalculationInfo("stackResultDimension");tx(n,a[0])&&(a[0]=l),tx(n,a[1])&&(a[1]=l);var u=n.getStore(),h=n.getDimensionIndex(a[0]),c=n.getDimensionIndex(a[1]);return s&&{progress:function(t,e){for(var n=t.end-t.start,r=o&&_x(n*s),a=[],l=[],p=t.start,d=0;p<t.end;p++){var f=void 0;if(1===s){var g=u.get(h,p);f=i.dataToPoint(g,null,l)}else a[0]=u.get(h,p),a[1]=u.get(c,p),f=i.dataToPoint(a,null,l);o?(r[d++]=f[0],r[d++]=f[1]):e.setItemLayout(p,f.slice())}o&&e.setLayout("points",r)}}}}}}var _S={average:function(t){for(var e=0,n=0,i=0;i<t.length;i++)isNaN(t[i])||(e+=t[i],n++);return 0===n?NaN:e/n},sum:function(t){for(var e=0,n=0;n<t.length;n++)e+=t[n]||0;return e},max:function(t){for(var e=-1/0,n=0;n<t.length;n++)t[n]>e&&(e=t[n]);return isFinite(e)?e:NaN},min:function(t){for(var e=1/0,n=0;n<t.length;n++)t[n]<e&&(e=t[n]);return isFinite(e)?e:NaN},nearest:function(t){return t[0]}},bS=function(t){return Math.round(t.length/2)};function wS(t){return{seriesType:t,reset:function(t,e,n){var i=t.getData(),r=t.get("sampling"),o=t.coordinateSystem,a=i.count();if(a>10&&"cartesian2d"===o.type&&r){var s=o.getBaseAxis(),l=o.getOtherAxis(s),u=s.getExtent(),h=n.getDevicePixelRatio(),c=Math.abs(u[1]-u[0])*(h||1),p=Math.round(a/c);if(p>1){"lttb"===r&&t.setData(i.lttbDownSample(i.mapDimension(l.dim),1/p));var d=void 0;X(r)?d=_S[r]:U(r)&&(d=r),d&&t.setData(i.downSample(i.mapDimension(l.dim),1/p,d,bS))}}}}}var SS=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.getInitialData=function(t,e){return nx(null,this,{useEncodeDefaulter:!0})},e.prototype.getMarkerPosition=function(t){var e=this.coordinateSystem;if(e&&e.clampData){var n=e.dataToPoint(e.clampData(t)),i=this.getData(),r=i.getLayout("offset"),o=i.getLayout("size");return n[e.getBaseAxis().isHorizontal()?0:1]+=r+o/2,n}return[NaN,NaN]},e.type="series.__base_bar__",e.defaultOption={z:2,coordinateSystem:"cartesian2d",legendHoverLink:!0,barMinHeight:0,barMinAngle:0,large:!1,largeThreshold:400,progressive:3e3,progressiveChunkMode:"mod"},e}(ag);ag.registerClass(SS);var MS=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.getInitialData=function(){return nx(null,this,{useEncodeDefaulter:!0,createInvertedIndices:!!this.get("realtimeSort",!0)||null})},e.prototype.getProgressive=function(){return!!this.get("large")&&this.get("progressive")},e.prototype.getProgressiveThreshold=function(){var t=this.get("progressiveThreshold"),e=this.get("largeThreshold");return e>t&&(t=e),t},e.prototype.brushSelector=function(t,e,n){return n.rect(e.getItemLayout(t))},e.type="series.bar",e.dependencies=["grid","polar"],e.defaultOption=gc(SS.defaultOption,{clip:!0,roundCap:!1,showBackground:!1,backgroundStyle:{color:"rgba(180, 180, 180, 0.2)",borderColor:null,borderWidth:0,borderType:"solid",borderRadius:0,shadowBlur:0,shadowColor:null,shadowOffsetX:0,shadowOffsetY:0,opacity:1},select:{itemStyle:{borderColor:"#212121"}},realtimeSort:!1}),e}(SS),IS=function(){this.cx=0,this.cy=0,this.r0=0,this.r=0,this.startAngle=0,this.endAngle=2*Math.PI,this.clockwise=!0},TS=function(t){function e(e){var n=t.call(this,e)||this;return n.type="sausage",n}return n(e,t),e.prototype.getDefaultShape=function(){return new IS},e.prototype.buildPath=function(t,e){var n=e.cx,i=e.cy,r=Math.max(e.r0||0,0),o=Math.max(e.r,0),a=.5*(o-r),s=r+a,l=e.startAngle,u=e.endAngle,h=e.clockwise,c=2*Math.PI,p=h?u-l<c:l-u<c;p||(l=u-(h?c:-c));var d=Math.cos(l),f=Math.sin(l),g=Math.cos(u),y=Math.sin(u);p?(t.moveTo(d*r+n,f*r+i),t.arc(d*s+n,f*s+i,a,-Math.PI+l,l,!h)):t.moveTo(d*o+n,f*o+i),t.arc(n,i,o,l,u,!h),t.arc(g*s+n,y*s+i,a,u-2*Math.PI,u-Math.PI,!h),0!==r&&t.arc(n,i,r,u,l,h)},e}(fs);function CS(t,e,n){return e*Math.sin(t)*(n?-1:1)}function DS(t,e,n){return e*Math.cos(t)*(n?1:-1)}var AS=Math.max,kS=Math.min;var LS=function(t){function e(){var n=t.call(this)||this;return n.type=e.type,n._isFirstFrame=!0,n}return n(e,t),e.prototype.render=function(t,e,n,i){this._model=t,this._removeOnRenderedListener(n),this._updateDrawMode(t);var r=t.get("coordinateSystem");("cartesian2d"===r||"polar"===r)&&(this._progressiveEls=null,this._isLargeDraw?this._renderLarge(t,e,n):this._renderNormal(t,e,n,i))},e.prototype.incrementalPrepareRender=function(t){this._clear(),this._updateDrawMode(t),this._updateLargeClip(t)},e.prototype.incrementalRender=function(t,e){this._progressiveEls=[],this._incrementalRenderLarge(t,e)},e.prototype.eachRendered=function(t){zh(this._progressiveEls||this.group,t)},e.prototype._updateDrawMode=function(t){var e=t.pipelineContext.large;null!=this._isLargeDraw&&e===this._isLargeDraw||(this._isLargeDraw=e,this._clear())},e.prototype._renderNormal=function(t,e,n,i){var r,o=this.group,a=t.getData(),s=this._data,l=t.coordinateSystem,u=l.getBaseAxis();"cartesian2d"===l.type?r=u.isHorizontal():"polar"===l.type&&(r="angle"===u.dim);var h=t.isAnimationEnabled()?t:null,c=function(t,e){var n=t.get("realtimeSort",!0),i=e.getBaseAxis();0;if(n&&"category"===i.type&&"cartesian2d"===e.type)return{baseAxis:i,otherAxis:e.getOtherAxis(i)}}(t,l);c&&this._enableRealtimeSort(c,a,n);var p=t.get("clip",!0)||c,d=function(t,e){var n=t.getArea&&t.getArea();if(sS(t,"cartesian2d")){var i=t.getBaseAxis();if("category"!==i.type||!i.onBand){var r=e.getLayout("bandWidth");i.isHorizontal()?(n.x-=r,n.width+=2*r):(n.y-=r,n.height+=2*r)}}return n}(l,a);o.removeClipPath();var f=t.get("roundCap",!0),g=t.get("showBackground",!0),y=t.getModel("backgroundStyle"),v=y.get("borderRadius")||0,m=[],x=this._backgroundEls,_=i&&i.isInitSort,b=i&&"changeAxisOrder"===i.type;function w(t){var e=BS[l.type](a,t),n=function(t,e,n){return new("polar"===t.type?Tu:Ts)({shape:XS(e,n,t),silent:!0,z2:0})}(l,r,e);return n.useStyle(y.getItemStyle()),"cartesian2d"===l.type&&n.setShape("r",v),m[t]=n,n}a.diff(s).add((function(e){var n=a.getItemModel(e),i=BS[l.type](a,e,n);if(g&&w(e),a.hasValue(e)&&VS[l.type](i)){var s=!1;p&&(s=PS[l.type](d,i));var y=OS[l.type](t,a,e,i,r,h,u.model,!1,f);c&&(y.forceLabelAnimation=!0),GS(y,a,e,n,i,t,r,"polar"===l.type),_?y.attr({shape:i}):c?RS(c,h,y,i,e,r,!1,!1):rh(y,{shape:i},t,e),a.setItemGraphicEl(e,y),o.add(y),y.ignore=s}})).update((function(e,n){var i=a.getItemModel(e),S=BS[l.type](a,e,i);if(g){var M=void 0;0===x.length?M=w(n):((M=x[n]).useStyle(y.getItemStyle()),"cartesian2d"===l.type&&M.setShape("r",v),m[e]=M);var I=BS[l.type](a,e);ih(M,{shape:XS(r,I,l)},h,e)}var T=s.getItemGraphicEl(n);if(a.hasValue(e)&&VS[l.type](S)){var C=!1;if(p&&(C=PS[l.type](d,S))&&o.remove(T),T?uh(T):T=OS[l.type](t,a,e,S,r,h,u.model,!!T,f),c&&(T.forceLabelAnimation=!0),b){var D=T.getTextContent();if(D){var A=$h(D);null!=A.prevValue&&(A.prevValue=A.value)}}else GS(T,a,e,i,S,t,r,"polar"===l.type);_?T.attr({shape:S}):c?RS(c,h,T,S,e,r,!0,b):ih(T,{shape:S},t,e,null),a.setItemGraphicEl(e,T),T.ignore=C,o.add(T)}else o.remove(T)})).remove((function(e){var n=s.getItemGraphicEl(e);n&&lh(n,t,e)})).execute();var S=this._backgroundGroup||(this._backgroundGroup=new Cr);S.removeAll();for(var M=0;M<m.length;++M)S.add(m[M]);o.add(S),this._backgroundEls=m,this._data=a},e.prototype._renderLarge=function(t,e,n){this._clear(),YS(t,this.group),this._updateLargeClip(t)},e.prototype._incrementalRenderLarge=function(t,e){this._removeBackground(),YS(e,this.group,this._progressiveEls,!0)},e.prototype._updateLargeClip=function(t){var e=t.get("clip",!0)&&aS(t.coordinateSystem,!1,t),n=this.group;e?n.setClipPath(e):n.removeClipPath()},e.prototype._enableRealtimeSort=function(t,e,n){var i=this;if(e.count()){var r=t.baseAxis;if(this._isFirstFrame)this._dispatchInitSort(e,t,n),this._isFirstFrame=!1;else{var o=function(t){var n=e.getItemGraphicEl(t),i=n&&n.shape;return i&&Math.abs(r.isHorizontal()?i.height:i.width)||0};this._onRendered=function(){i._updateSortWithinSameData(e,o,r,n)},n.getZr().on("rendered",this._onRendered)}}},e.prototype._dataSort=function(t,e,n){var i=[];return t.each(t.mapDimension(e.dim),(function(t,e){var r=n(e);r=null==r?NaN:r,i.push({dataIndex:e,mappedValue:r,ordinalNumber:t})})),i.sort((function(t,e){return e.mappedValue-t.mappedValue})),{ordinalNumbers:z(i,(function(t){return t.ordinalNumber}))}},e.prototype._isOrderChangedWithinSameData=function(t,e,n){for(var i=n.scale,r=t.mapDimension(n.dim),o=Number.MAX_VALUE,a=0,s=i.getOrdinalMeta().categories.length;a<s;++a){var l=t.rawIndexOf(r,i.getRawOrdinalNumber(a)),u=l<0?Number.MIN_VALUE:e(t.indexOfRawIndex(l));if(u>o)return!0;o=u}return!1},e.prototype._isOrderDifferentInView=function(t,e){for(var n=e.scale,i=n.getExtent(),r=Math.max(0,i[0]),o=Math.min(i[1],n.getOrdinalMeta().categories.length-1);r<=o;++r)if(t.ordinalNumbers[r]!==n.getRawOrdinalNumber(r))return!0},e.prototype._updateSortWithinSameData=function(t,e,n,i){if(this._isOrderChangedWithinSameData(t,e,n)){var r=this._dataSort(t,n,e);this._isOrderDifferentInView(r,n)&&(this._removeOnRenderedListener(i),i.dispatchAction({type:"changeAxisOrder",componentType:n.dim+"Axis",axisId:n.index,sortInfo:r}))}},e.prototype._dispatchInitSort=function(t,e,n){var i=e.baseAxis,r=this._dataSort(t,i,(function(n){return t.get(t.mapDimension(e.otherAxis.dim),n)}));n.dispatchAction({type:"changeAxisOrder",componentType:i.dim+"Axis",isInitSort:!0,axisId:i.index,sortInfo:r})},e.prototype.remove=function(t,e){this._clear(this._model),this._removeOnRenderedListener(e)},e.prototype.dispose=function(t,e){this._removeOnRenderedListener(e)},e.prototype._removeOnRenderedListener=function(t){this._onRendered&&(t.getZr().off("rendered",this._onRendered),this._onRendered=null)},e.prototype._clear=function(t){var e=this.group,n=this._data;t&&t.isAnimationEnabled()&&n&&!this._isLargeDraw?(this._removeBackground(),this._backgroundEls=[],n.eachItemGraphicEl((function(e){lh(e,t,Ws(e).dataIndex)}))):e.removeAll(),this._data=null,this._isFirstFrame=!0},e.prototype._removeBackground=function(){this.group.remove(this._backgroundGroup),this._backgroundGroup=null},e.type="bar",e}(mg),PS={cartesian2d:function(t,e){var n=e.width<0?-1:1,i=e.height<0?-1:1;n<0&&(e.x+=e.width,e.width=-e.width),i<0&&(e.y+=e.height,e.height=-e.height);var r=t.x+t.width,o=t.y+t.height,a=AS(e.x,t.x),s=kS(e.x+e.width,r),l=AS(e.y,t.y),u=kS(e.y+e.height,o),h=s<a,c=u<l;return e.x=h&&a>r?s:a,e.y=c&&l>o?u:l,e.width=h?0:s-a,e.height=c?0:u-l,n<0&&(e.x+=e.width,e.width=-e.width),i<0&&(e.y+=e.height,e.height=-e.height),h||c},polar:function(t,e){var n=e.r0<=e.r?1:-1;if(n<0){var i=e.r;e.r=e.r0,e.r0=i}var r=kS(e.r,t.r),o=AS(e.r0,t.r0);e.r=r,e.r0=o;var a=r-o<0;if(n<0){i=e.r;e.r=e.r0,e.r0=i}return a}},OS={cartesian2d:function(t,e,n,i,r,o,a,s,l){var u=new Ts({shape:A({},i),z2:1});(u.__dataIndex=n,u.name="item",o)&&(u.shape[r?"height":"width"]=0);return u},polar:function(t,e,n,i,r,o,a,s,l){var u=!r&&l?TS:Tu,h=new u({shape:i,z2:1});h.name="item";var c,p,d=FS(r);if(h.calculateTextPosition=(c=d,p=({isRoundCap:u===TS}||{}).isRoundCap,function(t,e,n){var i=e.position;if(!i||i instanceof Array)return yr(t,e,n);var r=c(i),o=null!=e.distance?e.distance:5,a=this.shape,s=a.cx,l=a.cy,u=a.r,h=a.r0,d=(u+h)/2,f=a.startAngle,g=a.endAngle,y=(f+g)/2,v=p?Math.abs(u-h)/2:0,m=Math.cos,x=Math.sin,_=s+u*m(f),b=l+u*x(f),w="left",S="top";switch(r){case"startArc":_=s+(h-o)*m(y),b=l+(h-o)*x(y),w="center",S="top";break;case"insideStartArc":_=s+(h+o)*m(y),b=l+(h+o)*x(y),w="center",S="bottom";break;case"startAngle":_=s+d*m(f)+CS(f,o+v,!1),b=l+d*x(f)+DS(f,o+v,!1),w="right",S="middle";break;case"insideStartAngle":_=s+d*m(f)+CS(f,-o+v,!1),b=l+d*x(f)+DS(f,-o+v,!1),w="left",S="middle";break;case"middle":_=s+d*m(y),b=l+d*x(y),w="center",S="middle";break;case"endArc":_=s+(u+o)*m(y),b=l+(u+o)*x(y),w="center",S="bottom";break;case"insideEndArc":_=s+(u-o)*m(y),b=l+(u-o)*x(y),w="center",S="top";break;case"endAngle":_=s+d*m(g)+CS(g,o+v,!0),b=l+d*x(g)+DS(g,o+v,!0),w="left",S="middle";break;case"insideEndAngle":_=s+d*m(g)+CS(g,-o+v,!0),b=l+d*x(g)+DS(g,-o+v,!0),w="right",S="middle";break;default:return yr(t,e,n)}return(t=t||{}).x=_,t.y=b,t.align=w,t.verticalAlign=S,t}),o){var f=r?"r":"endAngle",g={};h.shape[f]=r?0:i.startAngle,g[f]=i[f],(s?ih:rh)(h,{shape:g},o)}return h}};function RS(t,e,n,i,r,o,a,s){var l,u;o?(u={x:i.x,width:i.width},l={y:i.y,height:i.height}):(u={y:i.y,height:i.height},l={x:i.x,width:i.width}),s||(a?ih:rh)(n,{shape:l},e,r,null),(a?ih:rh)(n,{shape:u},e?t.baseAxis.model:null,r)}function NS(t,e){for(var n=0;n<e.length;n++)if(!isFinite(t[e[n]]))return!0;return!1}var ES=["x","y","width","height"],zS=["cx","cy","r","startAngle","endAngle"],VS={cartesian2d:function(t){return!NS(t,ES)},polar:function(t){return!NS(t,zS)}},BS={cartesian2d:function(t,e,n){var i=t.getItemLayout(e),r=n?function(t,e){var n=t.get(["itemStyle","borderColor"]);if(!n||"none"===n)return 0;var i=t.get(["itemStyle","borderWidth"])||0,r=isNaN(e.width)?Number.MAX_VALUE:Math.abs(e.width),o=isNaN(e.height)?Number.MAX_VALUE:Math.abs(e.height);return Math.min(i,r,o)}(n,i):0,o=i.width>0?1:-1,a=i.height>0?1:-1;return{x:i.x+o*r/2,y:i.y+a*r/2,width:i.width-o*r,height:i.height-a*r}},polar:function(t,e,n){var i=t.getItemLayout(e);return{cx:i.cx,cy:i.cy,r0:i.r0,r:i.r,startAngle:i.startAngle,endAngle:i.endAngle,clockwise:i.clockwise}}};function FS(t){return function(t){var e=t?"Arc":"Angle";return function(t){switch(t){case"start":case"insideStart":case"end":case"insideEnd":return t+e;default:return t}}}(t)}function GS(t,e,n,i,r,o,a,s){var l=e.getItemVisual(n,"style");s||t.setShape("r",i.get(["itemStyle","borderRadius"])||0),t.useStyle(l);var u=i.getShallow("cursor");u&&t.attr("cursor",u);var h=s?a?r.r>=r.r0?"endArc":"startArc":r.endAngle>=r.startAngle?"endAngle":"startAngle":a?r.height>=0?"bottom":"top":r.width>=0?"right":"left",c=Hh(i);Wh(t,c,{labelFetcher:o,labelDataIndex:n,defaultText:Fw(o.getData(),n),inheritColor:l.fill,defaultOpacity:l.opacity,defaultOutsidePosition:h});var p=t.getTextContent();if(s&&p){var d=i.get(["label","position"]);t.textConfig.inside="middle"===d||null,function(t,e,n,i){if(j(i))t.setTextConfig({rotation:i});else if(Y(e))t.setTextConfig({rotation:0});else{var r,o=t.shape,a=o.clockwise?o.startAngle:o.endAngle,s=o.clockwise?o.endAngle:o.startAngle,l=(a+s)/2,u=n(e);switch(u){case"startArc":case"insideStartArc":case"middle":case"insideEndArc":case"endArc":r=l;break;case"startAngle":case"insideStartAngle":r=a;break;case"endAngle":case"insideEndAngle":r=s;break;default:return void t.setTextConfig({rotation:0})}var h=1.5*Math.PI-r;"middle"===u&&h>Math.PI/2&&h<1.5*Math.PI&&(h-=Math.PI),t.setTextConfig({rotation:h})}}(t,"outside"===d?h:d,FS(a),i.get(["label","rotate"]))}Jh(p,c,o.getRawValue(n),(function(t){return Gw(e,t)}));var f=i.getModel(["emphasis"]);Ol(t,f.get("focus"),f.get("blurScope"),f.get("disabled")),zl(t,i),function(t){return null!=t.startAngle&&null!=t.endAngle&&t.startAngle===t.endAngle}(r)&&(t.style.fill="none",t.style.stroke="none",E(t.states,(function(t){t.style&&(t.style.fill=t.style.stroke="none")})))}var WS=function(){},HS=function(t){function e(e){var n=t.call(this,e)||this;return n.type="largeBar",n}return n(e,t),e.prototype.getDefaultShape=function(){return new WS},e.prototype.buildPath=function(t,e){for(var n=e.points,i=this.baseDimIdx,r=1-this.baseDimIdx,o=[],a=[],s=this.barWidth,l=0;l<n.length;l+=3)a[i]=s,a[r]=n[l+2],o[i]=n[l+i],o[r]=n[l+r],t.rect(o[0],o[1],a[0],a[1])},e}(fs);function YS(t,e,n,i){var r=t.getData(),o=r.getLayout("valueAxisHorizontal")?1:0,a=r.getLayout("largeDataIndices"),s=r.getLayout("size"),l=t.getModel("backgroundStyle"),u=r.getLayout("largeBackgroundPoints");if(u){var h=new HS({shape:{points:u},incremental:!!i,silent:!0,z2:0});h.baseDimIdx=o,h.largeDataIndices=a,h.barWidth=s,h.useStyle(l.getItemStyle()),e.add(h),n&&n.push(h)}var c=new HS({shape:{points:r.getLayout("largePoints")},incremental:!!i,z2:1});c.baseDimIdx=o,c.largeDataIndices=a,c.barWidth=s,e.add(c),c.useStyle(r.getVisual("style")),Ws(c).seriesIndex=t.seriesIndex,t.get("silent")||(c.on("mousedown",US),c.on("mousemove",US)),n&&n.push(c)}var US=Cg((function(t){var e=function(t,e,n){for(var i=t.baseDimIdx,r=1-i,o=t.shape.points,a=t.largeDataIndices,s=[],l=[],u=t.barWidth,h=0,c=o.length/3;h<c;h++){var p=3*h;if(l[i]=u,l[r]=o[p+2],s[i]=o[p+i],s[r]=o[p+r],l[r]<0&&(s[r]+=l[r],l[r]=-l[r]),e>=s[0]&&e<=s[0]+l[0]&&n>=s[1]&&n<=s[1]+l[1])return a[h]}return-1}(this,t.offsetX,t.offsetY);Ws(this).dataIndex=e>=0?e:null}),30,!1);function XS(t,e,n){if(sS(n,"cartesian2d")){var i=e,r=n.getArea();return{x:t?i.x:r.x,y:t?r.y:i.y,width:t?i.width:r.width,height:t?r.height:i.height}}var o=e;return{cx:(r=n.getArea()).cx,cy:r.cy,r0:t?r.r0:o.r0,r:t?r.r:o.r,startAngle:t?o.startAngle:0,endAngle:t?o.endAngle:2*Math.PI}}var ZS=2*Math.PI,jS=Math.PI/180;function qS(t,e){return mp(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()})}function KS(t,e){var n=qS(t,e),i=t.get("center"),r=t.get("radius");Y(r)||(r=[0,r]),Y(i)||(i=[i,i]);var o=Er(n.width,e.getWidth()),a=Er(n.height,e.getHeight()),s=Math.min(o,a);return{cx:Er(i[0],o)+n.x,cy:Er(i[1],a)+n.y,r0:Er(r[0],s/2),r:Er(r[1],s/2)}}function $S(t,e,n){e.eachSeriesByType(t,(function(t){var e=t.getData(),i=e.mapDimension("value"),r=qS(t,n),o=KS(t,n),a=o.cx,s=o.cy,l=o.r,u=o.r0,h=-t.get("startAngle")*jS,c=t.get("minAngle")*jS,p=0;e.each(i,(function(t){!isNaN(t)&&p++}));var d=e.getSum(i),f=Math.PI/(d||p)*2,g=t.get("clockwise"),y=t.get("roseType"),v=t.get("stillShowZeroSum"),m=e.getDataExtent(i);m[0]=0;var x=ZS,_=0,b=h,w=g?1:-1;if(e.setLayout({viewRect:r,r:l}),e.each(i,(function(t,n){var i;if(isNaN(t))e.setItemLayout(n,{angle:NaN,startAngle:NaN,endAngle:NaN,clockwise:g,cx:a,cy:s,r0:u,r:y?NaN:l});else{(i="area"!==y?0===d&&v?f:t*f:ZS/p)<c?(i=c,x-=c):_+=t;var r=b+w*i;e.setItemLayout(n,{angle:i,startAngle:b,endAngle:r,clockwise:g,cx:a,cy:s,r0:u,r:y?Nr(t,m,[u,l]):l}),b=r}})),x<ZS&&p)if(x<=.001){var S=ZS/p;e.each(i,(function(t,n){if(!isNaN(t)){var i=e.getItemLayout(n);i.angle=S,i.startAngle=h+w*n*S,i.endAngle=h+w*(n+1)*S}}))}else f=x/_,b=h,e.each(i,(function(t,n){if(!isNaN(t)){var i=e.getItemLayout(n),r=i.angle===c?c:t*f;i.startAngle=b,i.endAngle=b+w*r,b+=w*r}}))}))}function JS(t){return{seriesType:t,reset:function(t,e){var n=e.findComponents({mainType:"legend"});if(n&&n.length){var i=t.getData();i.filterSelf((function(t){for(var e=i.getName(t),r=0;r<n.length;r++)if(!n[r].isSelected(e))return!1;return!0}))}}}}var QS=Math.PI/180;function tM(t,e,n,i,r,o,a,s,l,u){if(!(t.length<2)){for(var h=t.length,c=0;c<h;c++)if("outer"===t[c].position&&"labelLine"===t[c].labelAlignTo){var p=t[c].label.x-u;t[c].linePoints[1][0]+=p,t[c].label.x=u}gb(t,l,l+a)&&function(t){for(var o={list:[],maxY:0},a={list:[],maxY:0},s=0;s<t.length;s++)if("none"===t[s].labelAlignTo){var l=t[s],u=l.label.y>n?a:o,h=Math.abs(l.label.y-n);if(h>=u.maxY){var c=l.label.x-e-l.len2*r,p=i+l.len,f=Math.abs(c)<p?Math.sqrt(h*h/(1-c*c/p/p)):p;u.rB=f,u.maxY=h}u.list.push(l)}d(o),d(a)}(t)}function d(t){for(var o=t.rB,a=o*o,s=0;s<t.list.length;s++){var l=t.list[s],u=Math.abs(l.label.y-n),h=i+l.len,c=h*h,p=Math.sqrt((1-Math.abs(u*u/a))*c),d=e+(p+l.len2)*r,f=d-l.label.x;eM(l,l.targetTextWidth-f*r,!0),l.label.x=d}}}function eM(t,e,n){if(void 0===n&&(n=!1),null==t.labelStyleWidth){var i=t.label,r=i.style,o=t.rect,a=r.backgroundColor,s=r.padding,l=s?s[1]+s[3]:0,u=r.overflow,h=o.width+(a?0:l);if(e<h||n){var c=o.height;if(u&&u.match("break")){i.setStyle("backgroundColor",null),i.setStyle("width",e-l);var p=i.getBoundingRect();i.setStyle("width",Math.ceil(p.width)),i.setStyle("backgroundColor",a)}else{var d=e-l,f=e<h?d:n?d>t.unconstrainedWidth?null:d:null;i.setStyle("width",f)}var g=i.getBoundingRect();o.width=g.width;var y=(i.style.margin||0)+2.1;o.height=g.height+y,o.y-=(o.height-c)/2}}}function nM(t){return"center"===t.position}function iM(t){var e,n,i=t.getData(),r=[],o=!1,a=(t.get("minShowLabelAngle")||0)*QS,s=i.getLayout("viewRect"),l=i.getLayout("r"),u=s.width,h=s.x,c=s.y,p=s.height;function d(t){t.ignore=!0}i.each((function(t){var s=i.getItemGraphicEl(t),c=s.shape,p=s.getTextContent(),f=s.getTextGuideLine(),g=i.getItemModel(t),y=g.getModel("label"),v=y.get("position")||g.get(["emphasis","label","position"]),m=y.get("distanceToLabelLine"),x=y.get("alignTo"),_=Er(y.get("edgeDistance"),u),b=y.get("bleedMargin"),w=g.getModel("labelLine"),S=w.get("length");S=Er(S,u);var M=w.get("length2");if(M=Er(M,u),Math.abs(c.endAngle-c.startAngle)<a)return E(p.states,d),void(p.ignore=!0);if(function(t){if(!t.ignore)return!0;for(var e in t.states)if(!1===t.states[e].ignore)return!0;return!1}(p)){var I,T,C,D,A=(c.startAngle+c.endAngle)/2,k=Math.cos(A),L=Math.sin(A);e=c.cx,n=c.cy;var P="inside"===v||"inner"===v;if("center"===v)I=c.cx,T=c.cy,D="center";else{var O=(P?(c.r+c.r0)/2*k:c.r*k)+e,R=(P?(c.r+c.r0)/2*L:c.r*L)+n;if(I=O+3*k,T=R+3*L,!P){var N=O+k*(S+l-c.r),z=R+L*(S+l-c.r),V=N+(k<0?-1:1)*M;I="edge"===x?k<0?h+_:h+u-_:V+(k<0?-m:m),T=z,C=[[O,R],[N,z],[V,z]]}D=P?"center":"edge"===x?k>0?"right":"left":k>0?"left":"right"}var B=Math.PI,F=0,G=y.get("rotate");if(j(G))F=G*(B/180);else if("center"===v)F=0;else if("radial"===G||!0===G){F=k<0?-A+B:-A}else if("tangential"===G&&"outside"!==v&&"outer"!==v){var W=Math.atan2(k,L);W<0&&(W=2*B+W),L>0&&(W=B+W),F=W-B}if(o=!!F,p.x=I,p.y=T,p.rotation=F,p.setStyle({verticalAlign:"middle"}),P){p.setStyle({align:D});var H=p.states.select;H&&(H.x+=p.x,H.y+=p.y)}else{var Y=p.getBoundingRect().clone();Y.applyTransform(p.getComputedTransform());var U=(p.style.margin||0)+2.1;Y.y-=U/2,Y.height+=U,r.push({label:p,labelLine:f,position:v,len:S,len2:M,minTurnAngle:w.get("minTurnAngle"),maxSurfaceAngle:w.get("maxSurfaceAngle"),surfaceNormal:new Ji(k,L),linePoints:C,textAlign:D,labelDistance:m,labelAlignTo:x,edgeDistance:_,bleedMargin:b,rect:Y,unconstrainedWidth:Y.width,labelStyleWidth:p.style.width})}s.setTextConfig({inside:P})}})),!o&&t.get("avoidLabelOverlap")&&function(t,e,n,i,r,o,a,s){for(var l=[],u=[],h=Number.MAX_VALUE,c=-Number.MAX_VALUE,p=0;p<t.length;p++){var d=t[p].label;nM(t[p])||(d.x<e?(h=Math.min(h,d.x),l.push(t[p])):(c=Math.max(c,d.x),u.push(t[p])))}for(p=0;p<t.length;p++)if(!nM(y=t[p])&&y.linePoints){if(null!=y.labelStyleWidth)continue;d=y.label;var f=y.linePoints,g=void 0;g="edge"===y.labelAlignTo?d.x<e?f[2][0]-y.labelDistance-a-y.edgeDistance:a+r-y.edgeDistance-f[2][0]-y.labelDistance:"labelLine"===y.labelAlignTo?d.x<e?h-a-y.bleedMargin:a+r-c-y.bleedMargin:d.x<e?d.x-a-y.bleedMargin:a+r-d.x-y.bleedMargin,y.targetTextWidth=g,eM(y,g)}for(tM(u,e,n,i,1,0,o,0,s,c),tM(l,e,n,i,-1,0,o,0,s,h),p=0;p<t.length;p++){var y;if(!nM(y=t[p])&&y.linePoints){d=y.label,f=y.linePoints;var v="edge"===y.labelAlignTo,m=d.style.padding,x=m?m[1]+m[3]:0,_=d.style.backgroundColor?0:x,b=y.rect.width+_,w=f[1][0]-f[2][0];v?d.x<e?f[2][0]=a+y.edgeDistance+b+y.labelDistance:f[2][0]=a+r-y.edgeDistance-b-y.labelDistance:(d.x<e?f[2][0]=d.x+y.labelDistance:f[2][0]=d.x-y.labelDistance,f[1][0]=f[2][0]+w),f[1][1]=f[2][1]=d.y}}}(r,e,n,l,u,p,h,c);for(var f=0;f<r.length;f++){var g=r[f],y=g.label,v=g.labelLine,m=isNaN(y.x)||isNaN(y.y);if(y){y.setStyle({align:g.textAlign}),m&&(E(y.states,d),y.ignore=!0);var x=y.states.select;x&&(x.x+=y.x,x.y+=y.y)}if(v){var _=g.linePoints;m||!_?(E(v.states,d),v.ignore=!0):(sb(_,g.minTurnAngle),lb(_,g.surfaceNormal,g.maxSurfaceAngle),v.setShape({points:_}),y.__hostTarget.textGuideLineConfig={anchor:new Ji(_[0][0],_[0][1])})}}}function rM(t,e,n){var i=t.get("borderRadius");if(null==i)return n?{cornerRadius:0}:null;Y(i)||(i=[i,i,i,i]);var r=Math.abs(e.r||0-e.r0||0);return{cornerRadius:z(i,(function(t){return gr(t,r)}))}}var oM=function(t){function e(e,n,i){var r=t.call(this)||this;r.z2=2;var o=new As;return r.setTextContent(o),r.updateData(e,n,i,!0),r}return n(e,t),e.prototype.updateData=function(t,e,n,i){var r=this,o=t.hostModel,a=t.getItemModel(e),s=a.getModel("emphasis"),l=t.getItemLayout(e),u=A(rM(a.getModel("itemStyle"),l,!0),l);if(isNaN(u.startAngle))r.setShape(u);else{if(i){r.setShape(u);var h=o.getShallow("animationType");o.ecModel.ssr?(rh(r,{scaleX:0,scaleY:0},o,{dataIndex:e,isFrom:!0}),r.originX=u.cx,r.originY=u.cy):"scale"===h?(r.shape.r=l.r0,rh(r,{shape:{r:l.r}},o,e)):null!=n?(r.setShape({startAngle:n,endAngle:n}),rh(r,{shape:{startAngle:l.startAngle,endAngle:l.endAngle}},o,e)):(r.shape.endAngle=l.startAngle,ih(r,{shape:{endAngle:l.endAngle}},o,e))}else uh(r),ih(r,{shape:u},o,e);r.useStyle(t.getItemVisual(e,"style")),zl(r,a);var c=(l.startAngle+l.endAngle)/2,p=o.get("selectedOffset"),d=Math.cos(c)*p,f=Math.sin(c)*p,g=a.getShallow("cursor");g&&r.attr("cursor",g),this._updateLabel(o,t,e),r.ensureState("emphasis").shape=A({r:l.r+(s.get("scale")&&s.get("scaleSize")||0)},rM(s.getModel("itemStyle"),l)),A(r.ensureState("select"),{x:d,y:f,shape:rM(a.getModel(["select","itemStyle"]),l)}),A(r.ensureState("blur"),{shape:rM(a.getModel(["blur","itemStyle"]),l)});var y=r.getTextGuideLine(),v=r.getTextContent();y&&A(y.ensureState("select"),{x:d,y:f}),A(v.ensureState("select"),{x:d,y:f}),Ol(this,s.get("focus"),s.get("blurScope"),s.get("disabled"))}},e.prototype._updateLabel=function(t,e,n){var i=this,r=e.getItemModel(n),o=r.getModel("labelLine"),a=e.getItemVisual(n,"style"),s=a&&a.fill,l=a&&a.opacity;Wh(i,Hh(r),{labelFetcher:e.hostModel,labelDataIndex:n,inheritColor:s,defaultOpacity:l,defaultText:t.getFormattedLabel(n,"normal")||e.getName(n)});var u=i.getTextContent();i.setTextConfig({position:null,rotation:null}),u.attr({z2:10});var h=t.get(["label","position"]);if("outside"!==h&&"outer"!==h)i.removeTextGuideLine();else{var c=this.getTextGuideLine();c||(c=new Ou,this.setTextGuideLine(c)),cb(this,pb(r),{stroke:s,opacity:ot(o.get(["lineStyle","opacity"]),l,1)})}},e}(Tu),aM=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.ignoreLabelLineUpdate=!0,e}return n(e,t),e.prototype.init=function(){var t=new Cr;this._sectorGroup=t},e.prototype.render=function(t,e,n,i){var r,o=t.getData(),a=this._data,s=this.group;if(!a&&o.count()>0){for(var l=o.getItemLayout(0),u=1;isNaN(l&&l.startAngle)&&u<o.count();++u)l=o.getItemLayout(u);l&&(r=l.startAngle)}if(this._emptyCircleSector&&s.remove(this._emptyCircleSector),0===o.count()&&t.get("showEmptyCircle")){var h=new Tu({shape:KS(t,n)});h.useStyle(t.getModel("emptyCircleStyle").getItemStyle()),this._emptyCircleSector=h,s.add(h)}o.diff(a).add((function(t){var e=new oM(o,t,r);o.setItemGraphicEl(t,e),s.add(e)})).update((function(t,e){var n=a.getItemGraphicEl(e);n.updateData(o,t,r),n.off("click"),s.add(n),o.setItemGraphicEl(t,n)})).remove((function(e){lh(a.getItemGraphicEl(e),t,e)})).execute(),iM(t),"expansion"!==t.get("animationTypeUpdate")&&(this._data=o)},e.prototype.dispose=function(){},e.prototype.containPoint=function(t,e){var n=e.getData().getItemLayout(0);if(n){var i=t[0]-n.cx,r=t[1]-n.cy,o=Math.sqrt(i*i+r*r);return o<=n.r&&o>=n.r0}},e.type="pie",e}(mg);function sM(t,e,n){e=Y(e)&&{coordDimensions:e}||A({encodeDefine:t.getEncode()},e);var i=t.getSource(),r=jm(i,e).dimensions,o=new Zm(r,t);return o.initData(i,n),o}var lM=function(){function t(t,e){this._getDataWithEncodedVisual=t,this._getRawData=e}return t.prototype.getAllNames=function(){var t=this._getRawData();return t.mapArray(t.getName)},t.prototype.containName=function(t){return this._getRawData().indexOfName(t)>=0},t.prototype.indexOfName=function(t){return this._getDataWithEncodedVisual().indexOfName(t)},t.prototype.getItemVisual=function(t,e){return this._getDataWithEncodedVisual().getItemVisual(t,e)},t}(),uM=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.init=function(e){t.prototype.init.apply(this,arguments),this.legendVisualProvider=new lM(W(this.getData,this),W(this.getRawData,this)),this._defaultLabelLine(e)},e.prototype.mergeOption=function(){t.prototype.mergeOption.apply(this,arguments)},e.prototype.getInitialData=function(){return sM(this,{coordDimensions:["value"],encodeDefaulter:H(Hp,this)})},e.prototype.getDataParams=function(e){var n=this.getData(),i=t.prototype.getDataParams.call(this,e),r=[];return n.each(n.mapDimension("value"),(function(t){r.push(t)})),i.percent=Wr(r,e,n.hostModel.get("percentPrecision")),i.$vars.push("percent"),i},e.prototype._defaultLabelLine=function(t){co(t,"labelLine",["show"]);var e=t.labelLine,n=t.emphasis.labelLine;e.show=e.show&&t.label.show,n.show=n.show&&t.emphasis.label.show},e.type="series.pie",e.defaultOption={z:2,legendHoverLink:!0,colorBy:"data",center:["50%","50%"],radius:[0,"75%"],clockwise:!0,startAngle:90,minAngle:0,minShowLabelAngle:0,selectedOffset:10,percentPrecision:2,stillShowZeroSum:!0,left:0,top:0,right:0,bottom:0,width:null,height:null,label:{rotate:0,show:!0,overflow:"truncate",position:"outer",alignTo:"none",edgeDistance:"25%",bleedMargin:10,distanceToLabelLine:5},labelLine:{show:!0,length:15,length2:15,smooth:!1,minTurnAngle:90,maxSurfaceAngle:90,lineStyle:{width:1,type:"solid"}},itemStyle:{borderWidth:1,borderJoin:"round"},showEmptyCircle:!0,emptyCircleStyle:{color:"lightgray",opacity:1},labelLayout:{hideOverlap:!0},emphasis:{scale:!0,scaleSize:5},avoidLabelOverlap:!0,animationType:"expansion",animationDuration:1e3,animationTypeUpdate:"transition",animationEasingUpdate:"cubicInOut",animationDurationUpdate:500,animationEasing:"cubicInOut"},e}(ag);var hM=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.hasSymbolVisual=!0,n}return n(e,t),e.prototype.getInitialData=function(t,e){return nx(null,this,{useEncodeDefaulter:!0})},e.prototype.getProgressive=function(){var t=this.option.progressive;return null==t?this.option.large?5e3:this.get("progressive"):t},e.prototype.getProgressiveThreshold=function(){var t=this.option.progressiveThreshold;return null==t?this.option.large?1e4:this.get("progressiveThreshold"):t},e.prototype.brushSelector=function(t,e,n){return n.point(e.getItemLayout(t))},e.prototype.getZLevelKey=function(){return this.getData().count()>this.getProgressiveThreshold()?this.id:""},e.type="series.scatter",e.dependencies=["grid","polar","geo","singleAxis","calendar"],e.defaultOption={coordinateSystem:"cartesian2d",z:2,legendHoverLink:!0,symbolSize:10,large:!1,largeThreshold:2e3,itemStyle:{opacity:.8},emphasis:{scale:!0},clip:!0,select:{itemStyle:{borderColor:"#212121"}},universalTransition:{divideShape:"clone"}},e}(ag),cM=function(){},pM=function(t){function e(e){var n=t.call(this,e)||this;return n._off=0,n.hoverDataIdx=-1,n}return n(e,t),e.prototype.getDefaultShape=function(){return new cM},e.prototype.reset=function(){this.notClear=!1,this._off=0},e.prototype.buildPath=function(t,e){var n,i=e.points,r=e.size,o=this.symbolProxy,a=o.shape,s=t.getContext?t.getContext():t,l=s&&r[0]<4,u=this.softClipShape;if(l)this._ctx=s;else{for(this._ctx=null,n=this._off;n<i.length;){var h=i[n++],c=i[n++];isNaN(h)||isNaN(c)||(u&&!u.contain(h,c)||(a.x=h-r[0]/2,a.y=c-r[1]/2,a.width=r[0],a.height=r[1],o.buildPath(t,a,!0)))}this.incremental&&(this._off=n,this.notClear=!0)}},e.prototype.afterBrush=function(){var t,e=this.shape,n=e.points,i=e.size,r=this._ctx,o=this.softClipShape;if(r){for(t=this._off;t<n.length;){var a=n[t++],s=n[t++];isNaN(a)||isNaN(s)||(o&&!o.contain(a,s)||r.fillRect(a-i[0]/2,s-i[1]/2,i[0],i[1]))}this.incremental&&(this._off=t,this.notClear=!0)}},e.prototype.findDataIndex=function(t,e){for(var n=this.shape,i=n.points,r=n.size,o=Math.max(r[0],4),a=Math.max(r[1],4),s=i.length/2-1;s>=0;s--){var l=2*s,u=i[l]-o/2,h=i[l+1]-a/2;if(t>=u&&e>=h&&t<=u+o&&e<=h+a)return s}return-1},e.prototype.contain=function(t,e){var n=this.transformCoordToLocal(t,e),i=this.getBoundingRect();return t=n[0],e=n[1],i.contain(t,e)?(this.hoverDataIdx=this.findDataIndex(t,e))>=0:(this.hoverDataIdx=-1,!1)},e.prototype.getBoundingRect=function(){var t=this._rect;if(!t){for(var e=this.shape,n=e.points,i=e.size,r=i[0],o=i[1],a=1/0,s=1/0,l=-1/0,u=-1/0,h=0;h<n.length;){var c=n[h++],p=n[h++];a=Math.min(c,a),l=Math.max(c,l),s=Math.min(p,s),u=Math.max(p,u)}t=this._rect=new sr(a-r/2,s-o/2,l-a+r,u-s+o)}return t},e}(fs),dM=function(){function t(){this.group=new Cr}return t.prototype.updateData=function(t,e){this._clear();var n=this._create();n.setShape({points:t.getLayout("points")}),this._setCommon(n,t,e)},t.prototype.updateLayout=function(t){var e=t.getLayout("points");this.group.eachChild((function(t){if(null!=t.startIndex){var n=2*(t.endIndex-t.startIndex),i=4*t.startIndex*2;e=new Float32Array(e.buffer,i,n)}t.setShape("points",e),t.reset()}))},t.prototype.incrementalPrepareUpdate=function(t){this._clear()},t.prototype.incrementalUpdate=function(t,e,n){var i=this._newAdded[0],r=e.getLayout("points"),o=i&&i.shape.points;if(o&&o.length<2e4){var a=o.length,s=new Float32Array(a+r.length);s.set(o),s.set(r,a),i.endIndex=t.end,i.setShape({points:s})}else{this._newAdded=[];var l=this._create();l.startIndex=t.start,l.endIndex=t.end,l.incremental=!0,l.setShape({points:r}),this._setCommon(l,e,n)}},t.prototype.eachRendered=function(t){this._newAdded[0]&&t(this._newAdded[0])},t.prototype._create=function(){var t=new pM({cursor:"default"});return this.group.add(t),this._newAdded.push(t),t},t.prototype._setCommon=function(t,e,n){var i=e.hostModel;n=n||{};var r=e.getVisual("symbolSize");t.setShape("size",r instanceof Array?r:[r,r]),t.softClipShape=n.clipShape||null,t.symbolProxy=ky(e.getVisual("symbol"),0,0,0,0),t.setColor=t.symbolProxy.setColor;var o=t.shape.size[0]<4;t.useStyle(i.getModel("itemStyle").getItemStyle(o?["color","shadowBlur","shadowColor"]:["color"]));var a=e.getVisual("style"),s=a&&a.fill;s&&t.setColor(s);var l=Ws(t);l.seriesIndex=i.seriesIndex,t.on("mousemove",(function(e){l.dataIndex=null;var n=t.hoverDataIdx;n>=0&&(l.dataIndex=n+(t.startIndex||0))}))},t.prototype.remove=function(){this._clear()},t.prototype._clear=function(){this._newAdded=[],this.group.removeAll()},t}(),fM=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i=t.getData();this._updateSymbolDraw(i,t).updateData(i,{clipShape:this._getClipShape(t)}),this._finished=!0},e.prototype.incrementalPrepareRender=function(t,e,n){var i=t.getData();this._updateSymbolDraw(i,t).incrementalPrepareUpdate(i),this._finished=!1},e.prototype.incrementalRender=function(t,e,n){this._symbolDraw.incrementalUpdate(t,e.getData(),{clipShape:this._getClipShape(e)}),this._finished=t.end===e.getData().count()},e.prototype.updateTransform=function(t,e,n){var i=t.getData();if(this.group.dirty(),!this._finished||i.count()>1e4)return{update:!0};var r=xS("").reset(t,e,n);r.progress&&r.progress({start:0,end:i.count(),count:i.count()},i),this._symbolDraw.updateLayout(i)},e.prototype.eachRendered=function(t){this._symbolDraw&&this._symbolDraw.eachRendered(t)},e.prototype._getClipShape=function(t){var e=t.coordinateSystem,n=e&&e.getArea&&e.getArea();return t.get("clip",!0)?n:null},e.prototype._updateSymbolDraw=function(t,e){var n=this._symbolDraw,i=e.pipelineContext.large;return n&&i===this._isLargeDraw||(n&&n.remove(),n=this._symbolDraw=i?new dM:new Zw,this._isLargeDraw=i,this.group.removeAll()),this.group.add(n.group),n},e.prototype.remove=function(t,e){this._symbolDraw&&this._symbolDraw.remove(!0),this._symbolDraw=null},e.prototype.dispose=function(){},e.type="scatter",e}(mg),gM=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.type="grid",e.dependencies=["xAxis","yAxis"],e.layoutMode="box",e.defaultOption={show:!1,z:0,left:"10%",top:60,right:"10%",bottom:70,containLabel:!1,backgroundColor:"rgba(0,0,0,0)",borderWidth:1,borderColor:"#ccc"},e}(Ip),yM=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.getCoordSysModel=function(){return this.getReferringComponents("grid",Co).models[0]},e.type="cartesian2dAxis",e}(Ip);R(yM,h_);var vM={show:!0,z:0,inverse:!1,name:"",nameLocation:"end",nameRotate:null,nameTruncate:{maxWidth:null,ellipsis:"...",placeholder:"."},nameTextStyle:{},nameGap:15,silent:!1,triggerEvent:!1,tooltip:{show:!1},axisPointer:{},axisLine:{show:!0,onZero:!0,onZeroAxisIndex:null,lineStyle:{color:"#6E7079",width:1,type:"solid"},symbol:["none","none"],symbolSize:[10,15]},axisTick:{show:!0,inside:!1,length:5,lineStyle:{width:1}},axisLabel:{show:!0,inside:!1,rotate:0,showMinLabel:null,showMaxLabel:null,margin:8,fontSize:12},splitLine:{show:!0,lineStyle:{color:["#E0E6F1"],width:1,type:"solid"}},splitArea:{show:!1,areaStyle:{color:["rgba(250,250,250,0.2)","rgba(210,219,238,0.2)"]}}},mM=C({boundaryGap:!0,deduplication:null,splitLine:{show:!1},axisTick:{alignWithLabel:!1,interval:"auto"},axisLabel:{interval:"auto"}},vM),xM=C({boundaryGap:[0,0],axisLine:{show:"auto"},axisTick:{show:"auto"},splitNumber:5,minorTick:{show:!1,splitNumber:5,length:3,lineStyle:{}},minorSplitLine:{show:!1,lineStyle:{color:"#F4F7FD",width:1}}},vM),_M={category:mM,value:xM,time:C({splitNumber:6,axisLabel:{showMinLabel:!1,showMaxLabel:!1,rich:{primary:{fontWeight:"bold"}}},splitLine:{show:!1}},xM),log:k({logBase:10},xM)},bM={value:1,category:1,time:1,log:1};function wM(t,e,i,r){E(bM,(function(o,a){var s=C(C({},_M[a],!0),r,!0),l=function(t){function i(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e+"Axis."+a,n}return n(i,t),i.prototype.mergeDefaultAndTheme=function(t,e){var n=_p(this),i=n?wp(t):{};C(t,e.getTheme().get(a+"Axis")),C(t,this.getDefaultOption()),t.type=SM(t),n&&bp(t,i,n)},i.prototype.optionUpdated=function(){"category"===this.option.type&&(this.__ordinalMeta=ox.createByAxisModel(this))},i.prototype.getCategories=function(t){var e=this.option;if("category"===e.type)return t?e.data:this.__ordinalMeta.categories},i.prototype.getOrdinalMeta=function(){return this.__ordinalMeta},i.type=e+"Axis."+a,i.defaultOption=s,i}(i);t.registerComponentModel(l)})),t.registerSubTypeDefaulter(e+"Axis",SM)}function SM(t){return t.type||(t.data?"category":"value")}var MM=function(){function t(t){this.type="cartesian",this._dimList=[],this._axes={},this.name=t||""}return t.prototype.getAxis=function(t){return this._axes[t]},t.prototype.getAxes=function(){return z(this._dimList,(function(t){return this._axes[t]}),this)},t.prototype.getAxesByScale=function(t){return t=t.toLowerCase(),B(this.getAxes(),(function(e){return e.scale.type===t}))},t.prototype.addAxis=function(t){var e=t.dim;this._axes[e]=t,this._dimList.push(e)},t}(),IM=["x","y"];function TM(t){return"interval"===t.type||"time"===t.type}var CM=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="cartesian2d",e.dimensions=IM,e}return n(e,t),e.prototype.calcAffineTransform=function(){this._transform=this._invTransform=null;var t=this.getAxis("x").scale,e=this.getAxis("y").scale;if(TM(t)&&TM(e)){var n=t.getExtent(),i=e.getExtent(),r=this.dataToPoint([n[0],i[0]]),o=this.dataToPoint([n[1],i[1]]),a=n[1]-n[0],s=i[1]-i[0];if(a&&s){var l=(o[0]-r[0])/a,u=(o[1]-r[1])/s,h=r[0]-n[0]*l,c=r[1]-i[0]*u,p=this._transform=[l,0,0,u,h,c];this._invTransform=Bi([],p)}}},e.prototype.getBaseAxis=function(){return this.getAxesByScale("ordinal")[0]||this.getAxesByScale("time")[0]||this.getAxis("x")},e.prototype.containPoint=function(t){var e=this.getAxis("x"),n=this.getAxis("y");return e.contain(e.toLocalCoord(t[0]))&&n.contain(n.toLocalCoord(t[1]))},e.prototype.containData=function(t){return this.getAxis("x").containData(t[0])&&this.getAxis("y").containData(t[1])},e.prototype.dataToPoint=function(t,e,n){n=n||[];var i=t[0],r=t[1];if(this._transform&&null!=i&&isFinite(i)&&null!=r&&isFinite(r))return Ft(n,t,this._transform);var o=this.getAxis("x"),a=this.getAxis("y");return n[0]=o.toGlobalCoord(o.dataToCoord(i,e)),n[1]=a.toGlobalCoord(a.dataToCoord(r,e)),n},e.prototype.clampData=function(t,e){var n=this.getAxis("x").scale,i=this.getAxis("y").scale,r=n.getExtent(),o=i.getExtent(),a=n.parse(t[0]),s=i.parse(t[1]);return(e=e||[])[0]=Math.min(Math.max(Math.min(r[0],r[1]),a),Math.max(r[0],r[1])),e[1]=Math.min(Math.max(Math.min(o[0],o[1]),s),Math.max(o[0],o[1])),e},e.prototype.pointToData=function(t,e){var n=[];if(this._invTransform)return Ft(n,t,this._invTransform);var i=this.getAxis("x"),r=this.getAxis("y");return n[0]=i.coordToData(i.toLocalCoord(t[0]),e),n[1]=r.coordToData(r.toLocalCoord(t[1]),e),n},e.prototype.getOtherAxis=function(t){return this.getAxis("x"===t.dim?"y":"x")},e.prototype.getArea=function(){var t=this.getAxis("x").getGlobalExtent(),e=this.getAxis("y").getGlobalExtent(),n=Math.min(t[0],t[1]),i=Math.min(e[0],e[1]),r=Math.max(t[0],t[1])-n,o=Math.max(e[0],e[1])-i;return new sr(n,i,r,o)},e}(MM),DM=function(t){function e(e,n,i,r,o){var a=t.call(this,e,n,i)||this;return a.index=0,a.type=r||"value",a.position=o||"bottom",a}return n(e,t),e.prototype.isHorizontal=function(){var t=this.position;return"top"===t||"bottom"===t},e.prototype.getGlobalExtent=function(t){var e=this.getExtent();return e[0]=this.toGlobalCoord(e[0]),e[1]=this.toGlobalCoord(e[1]),t&&e[0]>e[1]&&e.reverse(),e},e.prototype.pointToData=function(t,e){return this.coordToData(this.toLocalCoord(t["x"===this.dim?0:1]),e)},e.prototype.setCategorySortInfo=function(t){if("category"!==this.type)return!1;this.model.option.categorySortInfo=t,this.scale.setSortInfo(t)},e}(G_);function AM(t,e,n){n=n||{};var i=t.coordinateSystem,r=e.axis,o={},a=r.getAxesOnZeroOf()[0],s=r.position,l=a?"onZero":s,u=r.dim,h=i.getRect(),c=[h.x,h.x+h.width,h.y,h.y+h.height],p={left:0,right:1,top:0,bottom:1,onZero:2},d=e.get("offset")||0,f="x"===u?[c[2]-d,c[3]+d]:[c[0]-d,c[1]+d];if(a){var g=a.toGlobalCoord(a.dataToCoord(0));f[p.onZero]=Math.max(Math.min(g,f[1]),f[0])}o.position=["y"===u?f[p[l]]:c[0],"x"===u?f[p[l]]:c[3]],o.rotation=Math.PI/2*("x"===u?0:1);o.labelDirection=o.tickDirection=o.nameDirection={top:-1,bottom:1,left:-1,right:1}[s],o.labelOffset=a?f[p[s]]-f[p.onZero]:0,e.get(["axisTick","inside"])&&(o.tickDirection=-o.tickDirection),it(n.labelInside,e.get(["axisLabel","inside"]))&&(o.labelDirection=-o.labelDirection);var y=e.get(["axisLabel","rotate"]);return o.labelRotate="top"===l?-y:y,o.z2=1,o}function kM(t){return"cartesian2d"===t.get("coordinateSystem")}function LM(t){var e={xAxisModel:null,yAxisModel:null};return E(e,(function(n,i){var r=i.replace(/Model$/,""),o=t.getReferringComponents(r,Co).models[0];e[i]=o})),e}var PM=Math.log;function OM(t,e,n){var i=vx.prototype,r=i.getTicks.call(n),o=i.getTicks.call(n,!0),a=r.length-1,s=i.getInterval.call(n),l=e_(t,e),u=l.extent,h=l.fixMin,c=l.fixMax;if("log"===t.type){var p=PM(t.base);u=[PM(u[0])/p,PM(u[1])/p]}t.setExtent(u[0],u[1]),t.calcNiceExtent({splitNumber:a,fixMin:h,fixMax:c});var d=i.getExtent.call(t);h&&(u[0]=d[0]),c&&(u[1]=d[1]);var f=i.getInterval.call(t),g=u[0],y=u[1];if(h&&c)f=(y-g)/a;else if(h)for(y=u[0]+f*a;y<u[1]&&isFinite(y)&&isFinite(u[1]);)f=ux(f),y=u[0]+f*a;else if(c)for(g=u[1]-f*a;g>u[0]&&isFinite(g)&&isFinite(u[0]);)f=ux(f),g=u[1]-f*a;else{t.getTicks().length-1>a&&(f=ux(f));var v=f*a;(g=zr((y=Math.ceil(u[1]/f)*f)-v))<0&&u[0]>=0?(g=0,y=zr(v)):y>0&&u[1]<=0&&(y=0,g=-zr(v))}var m=(r[0].value-o[0].value)/s,x=(r[a].value-o[a].value)/s;i.setExtent.call(t,g+f*m,y+f*x),i.setInterval.call(t,f),(m||x)&&i.setNiceExtent.call(t,g+f,y-f)}var RM=function(){function t(t,e,n){this.type="grid",this._coordsMap={},this._coordsList=[],this._axesMap={},this._axesList=[],this.axisPointerEnabled=!0,this.dimensions=IM,this._initCartesian(t,e,n),this.model=t}return t.prototype.getRect=function(){return this._rect},t.prototype.update=function(t,e){var n=this._axesMap;function i(t){var e,n=G(t),i=n.length;if(i){for(var r=[],o=i-1;o>=0;o--){var a=t[+n[o]],s=a.model,l=a.scale;sx(l)&&s.get("alignTicks")&&null==s.get("interval")?r.push(a):(n_(l,s),sx(l)&&(e=a))}r.length&&(e||n_((e=r.pop()).scale,e.model),E(r,(function(t){OM(t.scale,t.model,e.scale)})))}}this._updateScale(t,this.model),i(n.x),i(n.y);var r={};E(n.x,(function(t){EM(n,"y",t,r)})),E(n.y,(function(t){EM(n,"x",t,r)})),this.resize(this.model,e)},t.prototype.resize=function(t,e,n){var i=t.getBoxLayoutParams(),r=!n&&t.get("containLabel"),o=mp(i,{width:e.getWidth(),height:e.getHeight()});this._rect=o;var a=this._axesList;function s(){E(a,(function(t){var e=t.isHorizontal(),n=e?[0,o.width]:[0,o.height],i=t.inverse?1:0;t.setExtent(n[i],n[1-i]),function(t,e){var n=t.getExtent(),i=n[0]+n[1];t.toGlobalCoord="x"===t.dim?function(t){return t+e}:function(t){return i-t+e},t.toLocalCoord="x"===t.dim?function(t){return t-e}:function(t){return i-t+e}}(t,e?o.x:o.y)}))}s(),r&&(E(a,(function(t){if(!t.model.get(["axisLabel","inside"])){var e=function(t){var e=t.model,n=t.scale;if(e.get(["axisLabel","show"])&&!n.isBlank()){var i,r,o=n.getExtent();r=n instanceof gx?n.count():(i=n.getTicks()).length;var a,s=t.getLabelModel(),l=r_(t),u=1;r>40&&(u=Math.ceil(r/40));for(var h=0;h<r;h+=u){var c=l(i?i[h]:{value:o[0]+h},h),p=a_(s.getTextRect(c),s.get("rotate")||0);a?a.union(p):a=p}return a}}(t);if(e){var n=t.isHorizontal()?"height":"width",i=t.model.get(["axisLabel","margin"]);o[n]-=e[n]+i,"top"===t.position?o.y+=e.height+i:"left"===t.position&&(o.x+=e.width+i)}}})),s()),E(this._coordsList,(function(t){t.calcAffineTransform()}))},t.prototype.getAxis=function(t,e){var n=this._axesMap[t];if(null!=n)return n[e||0]},t.prototype.getAxes=function(){return this._axesList.slice()},t.prototype.getCartesian=function(t,e){if(null!=t&&null!=e){var n="x"+t+"y"+e;return this._coordsMap[n]}q(t)&&(e=t.yAxisIndex,t=t.xAxisIndex);for(var i=0,r=this._coordsList;i<r.length;i++)if(r[i].getAxis("x").index===t||r[i].getAxis("y").index===e)return r[i]},t.prototype.getCartesians=function(){return this._coordsList.slice()},t.prototype.convertToPixel=function(t,e,n){var i=this._findConvertTarget(e);return i.cartesian?i.cartesian.dataToPoint(n):i.axis?i.axis.toGlobalCoord(i.axis.dataToCoord(n)):null},t.prototype.convertFromPixel=function(t,e,n){var i=this._findConvertTarget(e);return i.cartesian?i.cartesian.pointToData(n):i.axis?i.axis.coordToData(i.axis.toLocalCoord(n)):null},t.prototype._findConvertTarget=function(t){var e,n,i=t.seriesModel,r=t.xAxisModel||i&&i.getReferringComponents("xAxis",Co).models[0],o=t.yAxisModel||i&&i.getReferringComponents("yAxis",Co).models[0],a=t.gridModel,s=this._coordsList;if(i)P(s,e=i.coordinateSystem)<0&&(e=null);else if(r&&o)e=this.getCartesian(r.componentIndex,o.componentIndex);else if(r)n=this.getAxis("x",r.componentIndex);else if(o)n=this.getAxis("y",o.componentIndex);else if(a){a.coordinateSystem===this&&(e=this._coordsList[0])}return{cartesian:e,axis:n}},t.prototype.containPoint=function(t){var e=this._coordsList[0];if(e)return e.containPoint(t)},t.prototype._initCartesian=function(t,e,n){var i=this,r=this,o={left:!1,right:!1,top:!1,bottom:!1},a={x:{},y:{}},s={x:0,y:0};if(e.eachComponent("xAxis",l("x"),this),e.eachComponent("yAxis",l("y"),this),!s.x||!s.y)return this._axesMap={},void(this._axesList=[]);function l(e){return function(n,i){if(NM(n,t)){var l=n.get("position");"x"===e?"top"!==l&&"bottom"!==l&&(l=o.bottom?"top":"bottom"):"left"!==l&&"right"!==l&&(l=o.left?"right":"left"),o[l]=!0;var u=new DM(e,i_(n),[0,0],n.get("type"),l),h="category"===u.type;u.onBand=h&&n.get("boundaryGap"),u.inverse=n.get("inverse"),n.axis=u,u.model=n,u.grid=r,u.index=i,r._axesList.push(u),a[e][i]=u,s[e]++}}}this._axesMap=a,E(a.x,(function(e,n){E(a.y,(function(r,o){var a="x"+n+"y"+o,s=new CM(a);s.master=i,s.model=t,i._coordsMap[a]=s,i._coordsList.push(s),s.addAxis(e),s.addAxis(r)}))}))},t.prototype._updateScale=function(t,e){function n(t,e){E(u_(t,e.dim),(function(n){e.scale.unionExtentFromData(t,n)}))}E(this._axesList,(function(t){if(t.scale.setExtent(1/0,-1/0),"category"===t.type){var e=t.model.get("categorySortInfo");t.scale.setSortInfo(e)}})),t.eachSeries((function(t){if(kM(t)){var i=LM(t),r=i.xAxisModel,o=i.yAxisModel;if(!NM(r,e)||!NM(o,e))return;var a=this.getCartesian(r.componentIndex,o.componentIndex),s=t.getData(),l=a.getAxis("x"),u=a.getAxis("y");n(s,l),n(s,u)}}),this)},t.prototype.getTooltipAxes=function(t){var e=[],n=[];return E(this.getCartesians(),(function(i){var r=null!=t&&"auto"!==t?i.getAxis(t):i.getBaseAxis(),o=i.getOtherAxis(r);P(e,r)<0&&e.push(r),P(n,o)<0&&n.push(o)})),{baseAxes:e,otherAxes:n}},t.create=function(e,n){var i=[];return e.eachComponent("grid",(function(r,o){var a=new t(r,e,n);a.name="grid_"+o,a.resize(r,n,!0),r.coordinateSystem=a,i.push(a)})),e.eachSeries((function(t){if(kM(t)){var e=LM(t),n=e.xAxisModel,i=e.yAxisModel,r=n.getCoordSysModel();0;var o=r.coordinateSystem;t.coordinateSystem=o.getCartesian(n.componentIndex,i.componentIndex)}})),i},t.dimensions=IM,t}();function NM(t,e){return t.getCoordSysModel()===e}function EM(t,e,n,i){n.getAxesOnZeroOf=function(){return r?[r]:[]};var r,o=t[e],a=n.model,s=a.get(["axisLine","onZero"]),l=a.get(["axisLine","onZeroAxisIndex"]);if(s){if(null!=l)zM(o[l])&&(r=o[l]);else for(var u in o)if(o.hasOwnProperty(u)&&zM(o[u])&&!i[h(o[u])]){r=o[u];break}r&&(i[h(r)]=!0)}function h(t){return t.dim+"_"+t.index}}function zM(t){return t&&"category"!==t.type&&"time"!==t.type&&function(t){var e=t.scale.getExtent(),n=e[0],i=e[1];return!(n>0&&i>0||n<0&&i<0)}(t)}var VM=Math.PI,BM=function(){function t(t,e){this.group=new Cr,this.opt=e,this.axisModel=t,k(e,{labelOffset:0,nameDirection:1,tickDirection:1,labelDirection:1,silent:!0,handleAutoShown:function(){return!0}});var n=new Cr({x:e.position[0],y:e.position[1],rotation:e.rotation});n.updateTransform(),this._transformGroup=n}return t.prototype.hasBuilder=function(t){return!!FM[t]},t.prototype.add=function(t){FM[t](this.opt,this.axisModel,this.group,this._transformGroup)},t.prototype.getGroup=function(){return this.group},t.innerTextLayout=function(t,e,n){var i,r,o=Ur(e-t);return Xr(o)?(r=n>0?"top":"bottom",i="center"):Xr(o-VM)?(r=n>0?"bottom":"top",i="center"):(r="middle",i=o>0&&o<VM?n>0?"right":"left":n>0?"left":"right"),{rotation:o,textAlign:i,textVerticalAlign:r}},t.makeAxisEventDataBase=function(t){var e={componentType:t.mainType,componentIndex:t.componentIndex};return e[t.mainType+"Index"]=t.componentIndex,e},t.isLabelSilent=function(t){var e=t.get("tooltip");return t.get("silent")||!(t.get("triggerEvent")||e&&e.show)},t}(),FM={axisLine:function(t,e,n,i){var r=e.get(["axisLine","show"]);if("auto"===r&&t.handleAutoShown&&(r=t.handleAutoShown("axisLine")),r){var o=e.axis.getExtent(),a=i.transform,s=[o[0],0],l=[o[1],0];a&&(Ft(s,s,a),Ft(l,l,a));var u=A({lineCap:"round"},e.getModel(["axisLine","lineStyle"]).getLineStyle()),h=new Eu({subPixelOptimize:!0,shape:{x1:s[0],y1:s[1],x2:l[0],y2:l[1]},style:u,strokeContainThreshold:t.strokeContainThreshold||5,silent:!0,z2:1});h.anid="line",n.add(h);var c=e.get(["axisLine","symbol"]);if(null!=c){var p=e.get(["axisLine","symbolSize"]);X(c)&&(c=[c,c]),(X(p)||j(p))&&(p=[p,p]);var d=Py(e.get(["axisLine","symbolOffset"])||0,p),f=p[0],g=p[1];E([{rotate:t.rotation+Math.PI/2,offset:d[0],r:0},{rotate:t.rotation-Math.PI/2,offset:d[1],r:Math.sqrt((s[0]-l[0])*(s[0]-l[0])+(s[1]-l[1])*(s[1]-l[1]))}],(function(e,i){if("none"!==c[i]&&null!=c[i]){var r=ky(c[i],-f/2,-g/2,f,g,u.stroke,!0),o=e.r+e.offset;r.attr({rotation:e.rotate,x:s[0]+o*Math.cos(t.rotation),y:s[1]-o*Math.sin(t.rotation),silent:!0,z2:11}),n.add(r)}}))}}},axisTickLabel:function(t,e,n,i){var r=function(t,e,n,i){var r=n.axis,o=n.getModel("axisTick"),a=o.get("show");"auto"===a&&i.handleAutoShown&&(a=i.handleAutoShown("axisTick"));if(!a||r.scale.isBlank())return;for(var s=o.getModel("lineStyle"),l=i.tickDirection*o.get("length"),u=YM(r.getTicksCoords(),e.transform,l,k(s.getLineStyle(),{stroke:n.get(["axisLine","lineStyle","color"])}),"ticks"),h=0;h<u.length;h++)t.add(u[h]);return u}(n,i,e,t),o=function(t,e,n,i){var r=n.axis;if(!it(i.axisLabelShow,n.get(["axisLabel","show"]))||r.scale.isBlank())return;var o=n.getModel("axisLabel"),a=o.get("margin"),s=r.getViewLabels(),l=(it(i.labelRotate,o.get("rotate"))||0)*VM/180,u=BM.innerTextLayout(i.rotation,l,i.labelDirection),h=n.getCategories&&n.getCategories(!0),c=[],p=BM.isLabelSilent(n),d=n.get("triggerEvent");return E(s,(function(s,l){var f="ordinal"===r.scale.type?r.scale.getRawOrdinalNumber(s.tickValue):s.tickValue,g=s.formattedLabel,y=s.rawLabel,v=o;if(h&&h[f]){var m=h[f];q(m)&&m.textStyle&&(v=new pc(m.textStyle,o,n.ecModel))}var x=v.getTextColor()||n.get(["axisLine","lineStyle","color"]),_=r.dataToCoord(f),b=new As({x:_,y:i.labelOffset+i.labelDirection*a,rotation:u.rotation,silent:p,z2:10+(s.level||0),style:Yh(v,{text:g,align:v.getShallow("align",!0)||u.textAlign,verticalAlign:v.getShallow("verticalAlign",!0)||v.getShallow("baseline",!0)||u.textVerticalAlign,fill:U(x)?x("category"===r.type?y:"value"===r.type?f+"":f,l):x})});if(b.anid="label_"+f,d){var w=BM.makeAxisEventDataBase(n);w.targetType="axisLabel",w.value=y,Ws(b).eventData=w}e.add(b),b.updateTransform(),c.push(b),t.add(b),b.decomposeTransform()})),c}(n,i,e,t);(function(t,e,n){if(l_(t.axis))return;var i=t.get(["axisLabel","showMinLabel"]),r=t.get(["axisLabel","showMaxLabel"]);n=n||[];var o=(e=e||[])[0],a=e[1],s=e[e.length-1],l=e[e.length-2],u=n[0],h=n[1],c=n[n.length-1],p=n[n.length-2];!1===i?(GM(o),GM(u)):WM(o,a)&&(i?(GM(a),GM(h)):(GM(o),GM(u)));!1===r?(GM(s),GM(c)):WM(l,s)&&(r?(GM(l),GM(p)):(GM(s),GM(c)))}(e,o,r),function(t,e,n,i){var r=n.axis,o=n.getModel("minorTick");if(!o.get("show")||r.scale.isBlank())return;var a=r.getMinorTicksCoords();if(!a.length)return;for(var s=o.getModel("lineStyle"),l=i*o.get("length"),u=k(s.getLineStyle(),k(n.getModel("axisTick").getLineStyle(),{stroke:n.get(["axisLine","lineStyle","color"])})),h=0;h<a.length;h++)for(var c=YM(a[h],e.transform,l,u,"minorticks_"+h),p=0;p<c.length;p++)t.add(c[p])}(n,i,e,t.tickDirection),e.get(["axisLabel","hideOverlap"]))&&yb(db(z(o,(function(t){return{label:t,priority:t.z2,defaultAttr:{ignore:t.ignore}}}))))},axisName:function(t,e,n,i){var r=it(t.axisName,e.get("name"));if(r){var o,a,s=e.get("nameLocation"),l=t.nameDirection,u=e.getModel("nameTextStyle"),h=e.get("nameGap")||0,c=e.axis.getExtent(),p=c[0]>c[1]?-1:1,d=["start"===s?c[0]-p*h:"end"===s?c[1]+p*h:(c[0]+c[1])/2,HM(s)?t.labelOffset+l*h:0],f=e.get("nameRotate");null!=f&&(f=f*VM/180),HM(s)?o=BM.innerTextLayout(t.rotation,null!=f?f:t.rotation,l):(o=function(t,e,n,i){var r,o,a=Ur(n-t),s=i[0]>i[1],l="start"===e&&!s||"start"!==e&&s;Xr(a-VM/2)?(o=l?"bottom":"top",r="center"):Xr(a-1.5*VM)?(o=l?"top":"bottom",r="center"):(o="middle",r=a<1.5*VM&&a>VM/2?l?"left":"right":l?"right":"left");return{rotation:a,textAlign:r,textVerticalAlign:o}}(t.rotation,s,f||0,c),null!=(a=t.axisNameAvailableWidth)&&(a=Math.abs(a/Math.sin(o.rotation)),!isFinite(a)&&(a=null)));var g=u.getFont(),y=e.get("nameTruncate",!0)||{},v=y.ellipsis,m=it(t.nameTruncateMaxWidth,y.maxWidth,a),x=new As({x:d[0],y:d[1],rotation:o.rotation,silent:BM.isLabelSilent(e),style:Yh(u,{text:r,font:g,overflow:"truncate",width:m,ellipsis:v,fill:u.getTextColor()||e.get(["axisLine","lineStyle","color"]),align:u.get("align")||o.textAlign,verticalAlign:u.get("verticalAlign")||o.textVerticalAlign}),z2:1});if(Nh({el:x,componentModel:e,itemName:r}),x.__fullText=r,x.anid="name",e.get("triggerEvent")){var _=BM.makeAxisEventDataBase(e);_.targetType="axisName",_.name=r,Ws(x).eventData=_}i.add(x),x.updateTransform(),n.add(x),x.decomposeTransform()}}};function GM(t){t&&(t.ignore=!0)}function WM(t,e){var n=t&&t.getBoundingRect().clone(),i=e&&e.getBoundingRect().clone();if(n&&i){var r=Oi([]);return zi(r,r,-t.rotation),n.applyTransform(Ni([],r,t.getLocalTransform())),i.applyTransform(Ni([],r,e.getLocalTransform())),n.intersect(i)}}function HM(t){return"middle"===t||"center"===t}function YM(t,e,n,i,r){for(var o=[],a=[],s=[],l=0;l<t.length;l++){var u=t[l].coord;a[0]=u,a[1]=0,s[0]=u,s[1]=n,e&&(Ft(a,a,e),Ft(s,s,e));var h=new Eu({subPixelOptimize:!0,shape:{x1:a[0],y1:a[1],x2:s[0],y2:s[1]},style:i,z2:2,autoBatch:!0,silent:!0});h.anid=r+"_"+t[l].tickValue,o.push(h)}return o}function UM(t,e){var n={axesInfo:{},seriesInvolved:!1,coordSysAxesInfo:{},coordSysMap:{}};return function(t,e,n){var i=e.getComponent("tooltip"),r=e.getComponent("axisPointer"),o=r.get("link",!0)||[],a=[];E(n.getCoordinateSystems(),(function(n){if(n.axisPointerEnabled){var s=KM(n.model),l=t.coordSysAxesInfo[s]={};t.coordSysMap[s]=n;var u=n.model.getModel("tooltip",i);if(E(n.getAxes(),H(d,!1,null)),n.getTooltipAxes&&i&&u.get("show")){var h="axis"===u.get("trigger"),c="cross"===u.get(["axisPointer","type"]),p=n.getTooltipAxes(u.get(["axisPointer","axis"]));(h||c)&&E(p.baseAxes,H(d,!c||"cross",h)),c&&E(p.otherAxes,H(d,"cross",!1))}}function d(i,s,h){var c=h.model.getModel("axisPointer",r),p=c.get("show");if(p&&("auto"!==p||i||qM(c))){null==s&&(s=c.get("triggerTooltip"));var d=(c=i?function(t,e,n,i,r,o){var a=e.getModel("axisPointer"),s={};E(["type","snap","lineStyle","shadowStyle","label","animation","animationDurationUpdate","animationEasingUpdate","z"],(function(t){s[t]=T(a.get(t))})),s.snap="category"!==t.type&&!!o,"cross"===a.get("type")&&(s.type="line");var l=s.label||(s.label={});if(null==l.show&&(l.show=!1),"cross"===r){var u=a.get(["label","show"]);if(l.show=null==u||u,!o){var h=s.lineStyle=a.get("crossStyle");h&&k(l,h.textStyle)}}return t.model.getModel("axisPointer",new pc(s,n,i))}(h,u,r,e,i,s):c).get("snap"),f=KM(h.model),g=s||d||"category"===h.type,y=t.axesInfo[f]={key:f,axis:h,coordSys:n,axisPointerModel:c,triggerTooltip:s,involveSeries:g,snap:d,useHandle:qM(c),seriesModels:[],linkGroup:null};l[f]=y,t.seriesInvolved=t.seriesInvolved||g;var v=function(t,e){for(var n=e.model,i=e.dim,r=0;r<t.length;r++){var o=t[r]||{};if(XM(o[i+"AxisId"],n.id)||XM(o[i+"AxisIndex"],n.componentIndex)||XM(o[i+"AxisName"],n.name))return r}}(o,h);if(null!=v){var m=a[v]||(a[v]={axesInfo:{}});m.axesInfo[f]=y,m.mapper=o[v].mapper,y.linkGroup=m}}}}))}(n,t,e),n.seriesInvolved&&function(t,e){e.eachSeries((function(e){var n=e.coordinateSystem,i=e.get(["tooltip","trigger"],!0),r=e.get(["tooltip","show"],!0);n&&"none"!==i&&!1!==i&&"item"!==i&&!1!==r&&!1!==e.get(["axisPointer","show"],!0)&&E(t.coordSysAxesInfo[KM(n.model)],(function(t){var i=t.axis;n.getAxis(i.dim)===i&&(t.seriesModels.push(e),null==t.seriesDataCount&&(t.seriesDataCount=0),t.seriesDataCount+=e.getData().count())}))}))}(n,t),n}function XM(t,e){return"all"===t||Y(t)&&P(t,e)>=0||t===e}function ZM(t){var e=jM(t);if(e){var n=e.axisPointerModel,i=e.axis.scale,r=n.option,o=n.get("status"),a=n.get("value");null!=a&&(a=i.parse(a));var s=qM(n);null==o&&(r.status=s?"show":"hide");var l=i.getExtent().slice();l[0]>l[1]&&l.reverse(),(null==a||a>l[1])&&(a=l[1]),a<l[0]&&(a=l[0]),r.value=a,s&&(r.status=e.axis.scale.isBlank()?"hide":"show")}}function jM(t){var e=(t.ecModel.getComponent("axisPointer")||{}).coordSysAxesInfo;return e&&e.axesInfo[KM(t)]}function qM(t){return!!t.get(["handle","show"])}function KM(t){return t.type+"||"+t.id}var $M={},JM=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(e,n,i,r){this.axisPointerClass&&ZM(e),t.prototype.render.apply(this,arguments),this._doUpdateAxisPointerClass(e,i,!0)},e.prototype.updateAxisPointer=function(t,e,n,i){this._doUpdateAxisPointerClass(t,n,!1)},e.prototype.remove=function(t,e){var n=this._axisPointer;n&&n.remove(e)},e.prototype.dispose=function(e,n){this._disposeAxisPointer(n),t.prototype.dispose.apply(this,arguments)},e.prototype._doUpdateAxisPointerClass=function(t,n,i){var r=e.getAxisPointerClass(this.axisPointerClass);if(r){var o=function(t){var e=jM(t);return e&&e.axisPointerModel}(t);o?(this._axisPointer||(this._axisPointer=new r)).render(t,o,n,i):this._disposeAxisPointer(n)}},e.prototype._disposeAxisPointer=function(t){this._axisPointer&&this._axisPointer.dispose(t),this._axisPointer=null},e.registerAxisPointerClass=function(t,e){$M[t]=e},e.getAxisPointerClass=function(t){return t&&$M[t]},e.type="axis",e}(fg),QM=So();function tI(t,e,n,i){var r=n.axis;if(!r.scale.isBlank()){var o=n.getModel("splitArea"),a=o.getModel("areaStyle"),s=a.get("color"),l=i.coordinateSystem.getRect(),u=r.getTicksCoords({tickModel:o,clamp:!0});if(u.length){var h=s.length,c=QM(t).splitAreaColors,p=ft(),d=0;if(c)for(var f=0;f<u.length;f++){var g=c.get(u[f].tickValue);if(null!=g){d=(g+(h-1)*f)%h;break}}var y=r.toGlobalCoord(u[0].coord),v=a.getAreaStyle();s=Y(s)?s:[s];for(f=1;f<u.length;f++){var m=r.toGlobalCoord(u[f].coord),x=void 0,_=void 0,b=void 0,w=void 0;r.isHorizontal()?(x=y,_=l.y,b=m-x,w=l.height,y=x+b):(x=l.x,_=y,b=l.width,y=_+(w=m-_));var S=u[f-1].tickValue;null!=S&&p.set(S,d),e.add(new Ts({anid:null!=S?"area_"+S:null,shape:{x:x,y:_,width:b,height:w},style:k({fill:s[d]},v),autoBatch:!0,silent:!0})),d=(d+1)%h}QM(t).splitAreaColors=p}}}function eI(t){QM(t).splitAreaColors=null}var nI=["axisLine","axisTickLabel","axisName"],iI=["splitArea","splitLine","minorSplitLine"],rI=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.axisPointerClass="CartesianAxisPointer",n}return n(e,t),e.prototype.render=function(e,n,i,r){this.group.removeAll();var o=this._axisGroup;if(this._axisGroup=new Cr,this.group.add(this._axisGroup),e.get("show")){var a=e.getCoordSysModel(),s=AM(a,e),l=new BM(e,A({handleAutoShown:function(t){for(var n=a.coordinateSystem.getCartesians(),i=0;i<n.length;i++)if(sx(n[i].getOtherAxis(e.axis).scale))return!0;return!1}},s));E(nI,l.add,l),this._axisGroup.add(l.getGroup()),E(iI,(function(t){e.get([t,"show"])&&oI[t](this,this._axisGroup,e,a)}),this),r&&"changeAxisOrder"===r.type&&r.isInitSort||Dh(o,this._axisGroup,e),t.prototype.render.call(this,e,n,i,r)}},e.prototype.remove=function(){eI(this)},e.type="cartesianAxis",e}(JM),oI={splitLine:function(t,e,n,i){var r=n.axis;if(!r.scale.isBlank()){var o=n.getModel("splitLine"),a=o.getModel("lineStyle"),s=a.get("color");s=Y(s)?s:[s];for(var l=i.coordinateSystem.getRect(),u=r.isHorizontal(),h=0,c=r.getTicksCoords({tickModel:o}),p=[],d=[],f=a.getLineStyle(),g=0;g<c.length;g++){var y=r.toGlobalCoord(c[g].coord);u?(p[0]=y,p[1]=l.y,d[0]=y,d[1]=l.y+l.height):(p[0]=l.x,p[1]=y,d[0]=l.x+l.width,d[1]=y);var v=h++%s.length,m=c[g].tickValue;e.add(new Eu({anid:null!=m?"line_"+c[g].tickValue:null,subPixelOptimize:!0,autoBatch:!0,shape:{x1:p[0],y1:p[1],x2:d[0],y2:d[1]},style:k({stroke:s[v]},f),silent:!0}))}}},minorSplitLine:function(t,e,n,i){var r=n.axis,o=n.getModel("minorSplitLine").getModel("lineStyle"),a=i.coordinateSystem.getRect(),s=r.isHorizontal(),l=r.getMinorTicksCoords();if(l.length)for(var u=[],h=[],c=o.getLineStyle(),p=0;p<l.length;p++)for(var d=0;d<l[p].length;d++){var f=r.toGlobalCoord(l[p][d].coord);s?(u[0]=f,u[1]=a.y,h[0]=f,h[1]=a.y+a.height):(u[0]=a.x,u[1]=f,h[0]=a.x+a.width,h[1]=f),e.add(new Eu({anid:"minor_line_"+l[p][d].tickValue,subPixelOptimize:!0,autoBatch:!0,shape:{x1:u[0],y1:u[1],x2:h[0],y2:h[1]},style:c,silent:!0}))}},splitArea:function(t,e,n,i){tI(t,e,n,i)}},aI=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="xAxis",e}(rI),sI=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type=aI.type,e}return n(e,t),e.type="yAxis",e}(rI),lI=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="grid",e}return n(e,t),e.prototype.render=function(t,e){this.group.removeAll(),t.get("show")&&this.group.add(new Ts({shape:t.coordinateSystem.getRect(),style:k({fill:t.get("backgroundColor")},t.getItemStyle()),silent:!0,z2:-1}))},e.type="grid",e}(fg),uI={offset:0};function hI(t){t.registerComponentView(lI),t.registerComponentModel(gM),t.registerCoordinateSystem("cartesian2d",RM),wM(t,"x",yM,uI),wM(t,"y",yM,uI),t.registerComponentView(aI),t.registerComponentView(sI),t.registerPreprocessor((function(t){t.xAxis&&t.yAxis&&!t.grid&&(t.grid={})}))}function cI(t){t.eachSeriesByType("radar",(function(t){var e=t.getData(),n=[],i=t.coordinateSystem;if(i){var r=i.getIndicatorAxes();E(r,(function(t,o){e.each(e.mapDimension(r[o].dim),(function(t,e){n[e]=n[e]||[];var r=i.dataToPoint(t,o);n[e][o]=pI(r)?r:dI(i)}))})),e.each((function(t){var r=F(n[t],(function(t){return pI(t)}))||dI(i);n[t].push(r.slice()),e.setItemLayout(t,n[t])}))}}))}function pI(t){return!isNaN(t[0])&&!isNaN(t[1])}function dI(t){return[t.cx,t.cy]}function fI(t){var e=t.polar;if(e){Y(e)||(e=[e]);var n=[];E(e,(function(e,i){e.indicator?(e.type&&!e.shape&&(e.shape=e.type),t.radar=t.radar||[],Y(t.radar)||(t.radar=[t.radar]),t.radar.push(e)):n.push(e)})),t.polar=n}E(t.series,(function(t){t&&"radar"===t.type&&t.polarIndex&&(t.radarIndex=t.polarIndex)}))}var gI=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i=t.coordinateSystem,r=this.group,o=t.getData(),a=this._data;function s(t,e){var n=t.getItemVisual(e,"symbol")||"circle";if("none"!==n){var i=Ly(t.getItemVisual(e,"symbolSize")),r=ky(n,-1,-1,2,2),o=t.getItemVisual(e,"symbolRotate")||0;return r.attr({style:{strokeNoScale:!0},z2:100,scaleX:i[0]/2,scaleY:i[1]/2,rotation:o*Math.PI/180||0}),r}}function l(e,n,i,r,o,a){i.removeAll();for(var l=0;l<n.length-1;l++){var u=s(r,o);u&&(u.__dimIdx=l,e[l]?(u.setPosition(e[l]),Vh[a?"initProps":"updateProps"](u,{x:n[l][0],y:n[l][1]},t,o)):u.setPosition(n[l]),i.add(u))}}function u(t){return z(t,(function(t){return[i.cx,i.cy]}))}o.diff(a).add((function(e){var n=o.getItemLayout(e);if(n){var i=new Lu,r=new Ou,a={shape:{points:n}};i.shape.points=u(n),r.shape.points=u(n),rh(i,a,t,e),rh(r,a,t,e);var s=new Cr,h=new Cr;s.add(r),s.add(i),s.add(h),l(r.shape.points,n,h,o,e,!0),o.setItemGraphicEl(e,s)}})).update((function(e,n){var i=a.getItemGraphicEl(n),r=i.childAt(0),s=i.childAt(1),u=i.childAt(2),h={shape:{points:o.getItemLayout(e)}};h.shape.points&&(l(r.shape.points,h.shape.points,u,o,e,!1),uh(s),uh(r),ih(r,h,t),ih(s,h,t),o.setItemGraphicEl(e,i))})).remove((function(t){r.remove(a.getItemGraphicEl(t))})).execute(),o.eachItemGraphicEl((function(t,e){var n=o.getItemModel(e),i=t.childAt(0),a=t.childAt(1),s=t.childAt(2),l=o.getItemVisual(e,"style"),u=l.fill;r.add(t),i.useStyle(k(n.getModel("lineStyle").getLineStyle(),{fill:"none",stroke:u})),zl(i,n,"lineStyle"),zl(a,n,"areaStyle");var h=n.getModel("areaStyle"),c=h.isEmpty()&&h.parentModel.isEmpty();a.ignore=c,E(["emphasis","select","blur"],(function(t){var e=n.getModel([t,"areaStyle"]),i=e.isEmpty()&&e.parentModel.isEmpty();a.ensureState(t).ignore=i&&c})),a.useStyle(k(h.getAreaStyle(),{fill:u,opacity:.7,decal:l.decal}));var p=n.getModel("emphasis"),d=p.getModel("itemStyle").getItemStyle();s.eachChild((function(t){if(t instanceof xs){var i=t.style;t.useStyle(A({image:i.image,x:i.x,y:i.y,width:i.width,height:i.height},l))}else t.useStyle(l),t.setColor(u),t.style.strokeNoScale=!0;t.ensureState("emphasis").style=T(d);var r=o.getStore().get(o.getDimensionIndex(t.__dimIdx),e);(null==r||isNaN(r))&&(r=""),Wh(t,Hh(n),{labelFetcher:o.hostModel,labelDataIndex:e,labelDimIndex:t.__dimIdx,defaultText:r,inheritColor:u,defaultOpacity:l.opacity})})),Ol(t,p.get("focus"),p.get("blurScope"),p.get("disabled"))})),this._data=o},e.prototype.remove=function(){this.group.removeAll(),this._data=null},e.type="radar",e}(mg),yI=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.hasSymbolVisual=!0,n}return n(e,t),e.prototype.init=function(e){t.prototype.init.apply(this,arguments),this.legendVisualProvider=new lM(W(this.getData,this),W(this.getRawData,this))},e.prototype.getInitialData=function(t,e){return sM(this,{generateCoord:"indicator_",generateCoordCount:1/0})},e.prototype.formatTooltip=function(t,e,n){var i=this.getData(),r=this.coordinateSystem.getIndicatorAxes(),o=this.getData().getName(t),a=""===o?this.name:o,s=tg(this,t);return Uf("section",{header:a,sortBlocks:!0,blocks:z(r,(function(e){var n=i.get(i.mapDimension(e.dim),t);return Uf("nameValue",{markerType:"subItem",markerColor:s,name:e.name,value:n,sortParam:n})}))})},e.prototype.getTooltipPosition=function(t){if(null!=t)for(var e=this.getData(),n=this.coordinateSystem,i=e.getValues(z(n.dimensions,(function(t){return e.mapDimension(t)})),t),r=0,o=i.length;r<o;r++)if(!isNaN(i[r])){var a=n.getIndicatorAxes();return n.coordToPoint(a[r].dataToCoord(i[r]),r)}},e.type="series.radar",e.dependencies=["radar"],e.defaultOption={z:2,colorBy:"data",coordinateSystem:"radar",legendHoverLink:!0,radarIndex:0,lineStyle:{width:2,type:"solid",join:"round"},label:{position:"top"},symbolSize:8},e}(ag),vI=_M.value;function mI(t,e){return k({show:e},t)}var xI=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.optionUpdated=function(){var t=this.get("boundaryGap"),e=this.get("splitNumber"),n=this.get("scale"),i=this.get("axisLine"),r=this.get("axisTick"),o=this.get("axisLabel"),a=this.get("axisName"),s=this.get(["axisName","show"]),l=this.get(["axisName","formatter"]),u=this.get("axisNameGap"),h=this.get("triggerEvent"),c=z(this.get("indicator")||[],(function(c){null!=c.max&&c.max>0&&!c.min?c.min=0:null!=c.min&&c.min<0&&!c.max&&(c.max=0);var p=a;null!=c.color&&(p=k({color:c.color},a));var d=C(T(c),{boundaryGap:t,splitNumber:e,scale:n,axisLine:i,axisTick:r,axisLabel:o,name:c.text,showName:s,nameLocation:"end",nameGap:u,nameTextStyle:p,triggerEvent:h},!1);if(s||(d.name=""),X(l)){var f=d.name;d.name=l.replace("{value}",null!=f?f:"")}else U(l)&&(d.name=l(d.name,d));var g=new pc(d,null,this.ecModel);return R(g,h_.prototype),g.mainType="radar",g.componentIndex=this.componentIndex,g}),this);this._indicatorModels=c},e.prototype.getIndicatorModels=function(){return this._indicatorModels},e.type="radar",e.defaultOption={z:0,center:["50%","50%"],radius:"75%",startAngle:90,axisName:{show:!0},boundaryGap:[0,0],splitNumber:5,axisNameGap:15,scale:!1,shape:"polygon",axisLine:C({lineStyle:{color:"#bbb"}},vI.axisLine),axisLabel:mI(vI.axisLabel,!1),axisTick:mI(vI.axisTick,!1),splitLine:mI(vI.splitLine,!0),splitArea:mI(vI.splitArea,!0),indicator:[]},e}(Ip),_I=["axisLine","axisTickLabel","axisName"],bI=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){this.group.removeAll(),this._buildAxes(t),this._buildSplitLineAndArea(t)},e.prototype._buildAxes=function(t){var e=t.coordinateSystem;E(z(e.getIndicatorAxes(),(function(t){var n=t.model.get("showName")?t.name:"";return new BM(t.model,{axisName:n,position:[e.cx,e.cy],rotation:t.angle,labelDirection:-1,tickDirection:-1,nameDirection:1})})),(function(t){E(_I,t.add,t),this.group.add(t.getGroup())}),this)},e.prototype._buildSplitLineAndArea=function(t){var e=t.coordinateSystem,n=e.getIndicatorAxes();if(n.length){var i=t.get("shape"),r=t.getModel("splitLine"),o=t.getModel("splitArea"),a=r.getModel("lineStyle"),s=o.getModel("areaStyle"),l=r.get("show"),u=o.get("show"),h=a.get("color"),c=s.get("color"),p=Y(h)?h:[h],d=Y(c)?c:[c],f=[],g=[];if("circle"===i)for(var y=n[0].getTicksCoords(),v=e.cx,m=e.cy,x=0;x<y.length;x++){if(l)f[C(f,p,x)].push(new uu({shape:{cx:v,cy:m,r:y[x].coord}}));if(u&&x<y.length-1)g[C(g,d,x)].push(new Du({shape:{cx:v,cy:m,r0:y[x].coord,r:y[x+1].coord}}))}else{var _,b=z(n,(function(t,n){var i=t.getTicksCoords();return _=null==_?i.length-1:Math.min(i.length-1,_),z(i,(function(t){return e.coordToPoint(t.coord,n)}))})),w=[];for(x=0;x<=_;x++){for(var S=[],M=0;M<n.length;M++)S.push(b[M][x]);if(S[0]&&S.push(S[0].slice()),l)f[C(f,p,x)].push(new Ou({shape:{points:S}}));if(u&&w)g[C(g,d,x-1)].push(new Lu({shape:{points:S.concat(w)}}));w=S.slice().reverse()}}var I=a.getLineStyle(),T=s.getAreaStyle();E(g,(function(t,e){this.group.add(bh(t,{style:k({stroke:"none",fill:d[e%d.length]},T),silent:!0}))}),this),E(f,(function(t,e){this.group.add(bh(t,{style:k({fill:"none",stroke:p[e%p.length]},I),silent:!0}))}),this)}function C(t,e,n){var i=n%e.length;return t[i]=t[i]||[],i}},e.type="radar",e}(fg),wI=function(t){function e(e,n,i){var r=t.call(this,e,n,i)||this;return r.type="value",r.angle=0,r.name="",r}return n(e,t),e}(G_),SI=function(){function t(t,e,n){this.dimensions=[],this._model=t,this._indicatorAxes=z(t.getIndicatorModels(),(function(t,e){var n="indicator_"+e,i=new wI(n,new vx);return i.name=t.get("name"),i.model=t,t.axis=i,this.dimensions.push(n),i}),this),this.resize(t,n)}return t.prototype.getIndicatorAxes=function(){return this._indicatorAxes},t.prototype.dataToPoint=function(t,e){var n=this._indicatorAxes[e];return this.coordToPoint(n.dataToCoord(t),e)},t.prototype.coordToPoint=function(t,e){var n=this._indicatorAxes[e].angle;return[this.cx+t*Math.cos(n),this.cy-t*Math.sin(n)]},t.prototype.pointToData=function(t){var e=t[0]-this.cx,n=t[1]-this.cy,i=Math.sqrt(e*e+n*n);e/=i,n/=i;for(var r,o=Math.atan2(-n,e),a=1/0,s=-1,l=0;l<this._indicatorAxes.length;l++){var u=this._indicatorAxes[l],h=Math.abs(o-u.angle);h<a&&(r=u,s=l,a=h)}return[s,+(r&&r.coordToData(i))]},t.prototype.resize=function(t,e){var n=t.get("center"),i=e.getWidth(),r=e.getHeight(),o=Math.min(i,r)/2;this.cx=Er(n[0],i),this.cy=Er(n[1],r),this.startAngle=t.get("startAngle")*Math.PI/180;var a=t.get("radius");(X(a)||j(a))&&(a=[0,a]),this.r0=Er(a[0],o),this.r=Er(a[1],o),E(this._indicatorAxes,(function(t,e){t.setExtent(this.r0,this.r);var n=this.startAngle+e*Math.PI*2/this._indicatorAxes.length;n=Math.atan2(Math.sin(n),Math.cos(n)),t.angle=n}),this)},t.prototype.update=function(t,e){var n=this._indicatorAxes,i=this._model;E(n,(function(t){t.scale.setExtent(1/0,-1/0)})),t.eachSeriesByType("radar",(function(e,r){if("radar"===e.get("coordinateSystem")&&t.getComponent("radar",e.get("radarIndex"))===i){var o=e.getData();E(n,(function(t){t.scale.unionExtentFromData(o,o.mapDimension(t.dim))}))}}),this);var r=i.get("splitNumber"),o=new vx;o.setExtent(0,r),o.setInterval(1),E(n,(function(t,e){OM(t.scale,t.model,o)}))},t.prototype.convertToPixel=function(t,e,n){return console.warn("Not implemented."),null},t.prototype.convertFromPixel=function(t,e,n){return console.warn("Not implemented."),null},t.prototype.containPoint=function(t){return console.warn("Not implemented."),!1},t.create=function(e,n){var i=[];return e.eachComponent("radar",(function(r){var o=new t(r,e,n);i.push(o),r.coordinateSystem=o})),e.eachSeriesByType("radar",(function(t){"radar"===t.get("coordinateSystem")&&(t.coordinateSystem=i[t.get("radarIndex")||0])})),i},t.dimensions=[],t}();function MI(t){t.registerCoordinateSystem("radar",SI),t.registerComponentModel(xI),t.registerComponentView(bI),t.registerVisual({seriesType:"radar",reset:function(t){var e=t.getData();e.each((function(t){e.setItemVisual(t,"legendIcon","roundRect")})),e.setVisual("legendIcon","roundRect")}})}var II="\0_ec_interaction_mutex";function TI(t,e){return!!CI(t)[e]}function CI(t){return t[II]||(t[II]={})}um({type:"takeGlobalCursor",event:"globalCursorTaken",update:"update"},xt);var DI=function(t){function e(e){var n=t.call(this)||this;n._zr=e;var i=W(n._mousedownHandler,n),r=W(n._mousemoveHandler,n),o=W(n._mouseupHandler,n),a=W(n._mousewheelHandler,n),s=W(n._pinchHandler,n);return n.enable=function(t,n){this.disable(),this._opt=k(T(n)||{},{zoomOnMouseWheel:!0,moveOnMouseMove:!0,moveOnMouseWheel:!1,preventDefaultMouseMove:!0}),null==t&&(t=!0),!0!==t&&"move"!==t&&"pan"!==t||(e.on("mousedown",i),e.on("mousemove",r),e.on("mouseup",o)),!0!==t&&"scale"!==t&&"zoom"!==t||(e.on("mousewheel",a),e.on("pinch",s))},n.disable=function(){e.off("mousedown",i),e.off("mousemove",r),e.off("mouseup",o),e.off("mousewheel",a),e.off("pinch",s)},n}return n(e,t),e.prototype.isDragging=function(){return this._dragging},e.prototype.isPinching=function(){return this._pinching},e.prototype.setPointerChecker=function(t){this.pointerChecker=t},e.prototype.dispose=function(){this.disable()},e.prototype._mousedownHandler=function(t){if(!(le(t)||t.target&&t.target.draggable)){var e=t.offsetX,n=t.offsetY;this.pointerChecker&&this.pointerChecker(t,e,n)&&(this._x=e,this._y=n,this._dragging=!0)}},e.prototype._mousemoveHandler=function(t){if(this._dragging&&LI("moveOnMouseMove",t,this._opt)&&"pinch"!==t.gestureEvent&&!TI(this._zr,"globalPan")){var e=t.offsetX,n=t.offsetY,i=this._x,r=this._y,o=e-i,a=n-r;this._x=e,this._y=n,this._opt.preventDefaultMouseMove&&se(t.event),kI(this,"pan","moveOnMouseMove",t,{dx:o,dy:a,oldX:i,oldY:r,newX:e,newY:n,isAvailableBehavior:null})}},e.prototype._mouseupHandler=function(t){le(t)||(this._dragging=!1)},e.prototype._mousewheelHandler=function(t){var e=LI("zoomOnMouseWheel",t,this._opt),n=LI("moveOnMouseWheel",t,this._opt),i=t.wheelDelta,r=Math.abs(i),o=t.offsetX,a=t.offsetY;if(0!==i&&(e||n)){if(e){var s=r>3?1.4:r>1?1.2:1.1;AI(this,"zoom","zoomOnMouseWheel",t,{scale:i>0?s:1/s,originX:o,originY:a,isAvailableBehavior:null})}if(n){var l=Math.abs(i);AI(this,"scrollMove","moveOnMouseWheel",t,{scrollDelta:(i>0?1:-1)*(l>3?.4:l>1?.15:.05),originX:o,originY:a,isAvailableBehavior:null})}}},e.prototype._pinchHandler=function(t){TI(this._zr,"globalPan")||AI(this,"zoom",null,t,{scale:t.pinchScale>1?1.1:1/1.1,originX:t.pinchX,originY:t.pinchY,isAvailableBehavior:null})},e}(Xt);function AI(t,e,n,i,r){t.pointerChecker&&t.pointerChecker(i,r.originX,r.originY)&&(se(i.event),kI(t,e,n,i,r))}function kI(t,e,n,i,r){r.isAvailableBehavior=W(LI,null,n,i),t.trigger(e,r)}function LI(t,e,n){var i=n[t];return!t||i&&(!X(i)||e.event[i+"Key"])}function PI(t,e,n){var i=t.target;i.x+=e,i.y+=n,i.dirty()}function OI(t,e,n,i){var r=t.target,o=t.zoomLimit,a=t.zoom=t.zoom||1;if(a*=e,o){var s=o.min||0,l=o.max||1/0;a=Math.max(Math.min(l,a),s)}var u=a/t.zoom;t.zoom=a,r.x-=(n-r.x)*(u-1),r.y-=(i-r.y)*(u-1),r.scaleX*=u,r.scaleY*=u,r.dirty()}var RI,NI={axisPointer:1,tooltip:1,brush:1};function EI(t,e,n){var i=e.getComponentByElement(t.topTarget),r=i&&i.coordinateSystem;return i&&i!==n&&!NI.hasOwnProperty(i.mainType)&&r&&r.model!==n}function zI(t){X(t)&&(t=(new DOMParser).parseFromString(t,"text/xml"));var e=t;for(9===e.nodeType&&(e=e.firstChild);"svg"!==e.nodeName.toLowerCase()||1!==e.nodeType;)e=e.nextSibling;return e}var VI={fill:"fill",stroke:"stroke","stroke-width":"lineWidth",opacity:"opacity","fill-opacity":"fillOpacity","stroke-opacity":"strokeOpacity","stroke-dasharray":"lineDash","stroke-dashoffset":"lineDashOffset","stroke-linecap":"lineCap","stroke-linejoin":"lineJoin","stroke-miterlimit":"miterLimit","font-family":"fontFamily","font-size":"fontSize","font-style":"fontStyle","font-weight":"fontWeight","text-anchor":"textAlign",visibility:"visibility",display:"display"},BI=G(VI),FI={"alignment-baseline":"textBaseline","stop-color":"stopColor"},GI=G(FI),WI=function(){function t(){this._defs={},this._root=null}return t.prototype.parse=function(t,e){e=e||{};var n=zI(t);this._defsUsePending=[];var i=new Cr;this._root=i;var r=[],o=n.getAttribute("viewBox")||"",a=parseFloat(n.getAttribute("width")||e.width),s=parseFloat(n.getAttribute("height")||e.height);isNaN(a)&&(a=null),isNaN(s)&&(s=null),jI(n,i,null,!0,!1);for(var l,u,h=n.firstChild;h;)this._parseNode(h,i,r,null,!1,!1),h=h.nextSibling;if(function(t,e){for(var n=0;n<e.length;n++){var i=e[n];i[0].style[i[1]]=t[i[2]]}}(this._defs,this._defsUsePending),this._defsUsePending=[],o){var c=JI(o);c.length>=4&&(l={x:parseFloat(c[0]||0),y:parseFloat(c[1]||0),width:parseFloat(c[2]),height:parseFloat(c[3])})}if(l&&null!=a&&null!=s&&(u=iT(l,{x:0,y:0,width:a,height:s}),!e.ignoreViewBox)){var p=i;(i=new Cr).add(p),p.scaleX=p.scaleY=u.scale,p.x=u.x,p.y=u.y}return e.ignoreRootClip||null==a||null==s||i.setClipPath(new Ts({shape:{x:0,y:0,width:a,height:s}})),{root:i,width:a,height:s,viewBoxRect:l,viewBoxTransform:u,named:r}},t.prototype._parseNode=function(t,e,n,i,r,o){var a,s=t.nodeName.toLowerCase(),l=i;if("defs"===s&&(r=!0),"text"===s&&(o=!0),"defs"===s||"switch"===s)a=e;else{if(!r){var u=RI[s];if(u&&mt(RI,s)){a=u.call(this,t,e);var h=t.getAttribute("name");if(h){var c={name:h,namedFrom:null,svgNodeTagLower:s,el:a};n.push(c),"g"===s&&(l=c)}else i&&n.push({name:i.name,namedFrom:i,svgNodeTagLower:s,el:a});e.add(a)}}var p=HI[s];if(p&&mt(HI,s)){var d=p.call(this,t),f=t.getAttribute("id");f&&(this._defs[f]=d)}}if(a&&a.isGroup)for(var g=t.firstChild;g;)1===g.nodeType?this._parseNode(g,a,n,l,r,o):3===g.nodeType&&o&&this._parseText(g,a),g=g.nextSibling},t.prototype._parseText=function(t,e){var n=new ys({style:{text:t.textContent},silent:!0,x:this._textX||0,y:this._textY||0});XI(e,n),jI(t,n,this._defsUsePending,!1,!1),function(t,e){var n=e.__selfStyle;if(n){var i=n.textBaseline,r=i;i&&"auto"!==i?"baseline"===i?r="alphabetic":"before-edge"===i||"text-before-edge"===i?r="top":"after-edge"===i||"text-after-edge"===i?r="bottom":"central"!==i&&"mathematical"!==i||(r="middle"):r="alphabetic",t.style.textBaseline=r}var o=e.__inheritedStyle;if(o){var a=o.textAlign,s=a;a&&("middle"===a&&(s="center"),t.style.textAlign=s)}}(n,e);var i=n.style,r=i.fontSize;r&&r<9&&(i.fontSize=9,n.scaleX*=r/9,n.scaleY*=r/9);var o=(i.fontSize||i.fontFamily)&&[i.fontStyle,i.fontWeight,(i.fontSize||12)+"px",i.fontFamily||"sans-serif"].join(" ");i.font=o;var a=n.getBoundingRect();return this._textX+=a.width,e.add(n),n},t.internalField=void(RI={g:function(t,e){var n=new Cr;return XI(e,n),jI(t,n,this._defsUsePending,!1,!1),n},rect:function(t,e){var n=new Ts;return XI(e,n),jI(t,n,this._defsUsePending,!1,!1),n.setShape({x:parseFloat(t.getAttribute("x")||"0"),y:parseFloat(t.getAttribute("y")||"0"),width:parseFloat(t.getAttribute("width")||"0"),height:parseFloat(t.getAttribute("height")||"0")}),n.silent=!0,n},circle:function(t,e){var n=new uu;return XI(e,n),jI(t,n,this._defsUsePending,!1,!1),n.setShape({cx:parseFloat(t.getAttribute("cx")||"0"),cy:parseFloat(t.getAttribute("cy")||"0"),r:parseFloat(t.getAttribute("r")||"0")}),n.silent=!0,n},line:function(t,e){var n=new Eu;return XI(e,n),jI(t,n,this._defsUsePending,!1,!1),n.setShape({x1:parseFloat(t.getAttribute("x1")||"0"),y1:parseFloat(t.getAttribute("y1")||"0"),x2:parseFloat(t.getAttribute("x2")||"0"),y2:parseFloat(t.getAttribute("y2")||"0")}),n.silent=!0,n},ellipse:function(t,e){var n=new cu;return XI(e,n),jI(t,n,this._defsUsePending,!1,!1),n.setShape({cx:parseFloat(t.getAttribute("cx")||"0"),cy:parseFloat(t.getAttribute("cy")||"0"),rx:parseFloat(t.getAttribute("rx")||"0"),ry:parseFloat(t.getAttribute("ry")||"0")}),n.silent=!0,n},polygon:function(t,e){var n,i=t.getAttribute("points");i&&(n=ZI(i));var r=new Lu({shape:{points:n||[]},silent:!0});return XI(e,r),jI(t,r,this._defsUsePending,!1,!1),r},polyline:function(t,e){var n,i=t.getAttribute("points");i&&(n=ZI(i));var r=new Ou({shape:{points:n||[]},silent:!0});return XI(e,r),jI(t,r,this._defsUsePending,!1,!1),r},image:function(t,e){var n=new xs;return XI(e,n),jI(t,n,this._defsUsePending,!1,!1),n.setStyle({image:t.getAttribute("xlink:href")||t.getAttribute("href"),x:+t.getAttribute("x"),y:+t.getAttribute("y"),width:+t.getAttribute("width"),height:+t.getAttribute("height")}),n.silent=!0,n},text:function(t,e){var n=t.getAttribute("x")||"0",i=t.getAttribute("y")||"0",r=t.getAttribute("dx")||"0",o=t.getAttribute("dy")||"0";this._textX=parseFloat(n)+parseFloat(r),this._textY=parseFloat(i)+parseFloat(o);var a=new Cr;return XI(e,a),jI(t,a,this._defsUsePending,!1,!0),a},tspan:function(t,e){var n=t.getAttribute("x"),i=t.getAttribute("y");null!=n&&(this._textX=parseFloat(n)),null!=i&&(this._textY=parseFloat(i));var r=t.getAttribute("dx")||"0",o=t.getAttribute("dy")||"0",a=new Cr;return XI(e,a),jI(t,a,this._defsUsePending,!1,!0),this._textX+=parseFloat(r),this._textY+=parseFloat(o),a},path:function(t,e){var n=au(t.getAttribute("d")||"");return XI(e,n),jI(t,n,this._defsUsePending,!1,!1),n.silent=!0,n}}),t}(),HI={lineargradient:function(t){var e=parseInt(t.getAttribute("x1")||"0",10),n=parseInt(t.getAttribute("y1")||"0",10),i=parseInt(t.getAttribute("x2")||"10",10),r=parseInt(t.getAttribute("y2")||"0",10),o=new Uu(e,n,i,r);return YI(t,o),UI(t,o),o},radialgradient:function(t){var e=parseInt(t.getAttribute("cx")||"0",10),n=parseInt(t.getAttribute("cy")||"0",10),i=parseInt(t.getAttribute("r")||"0",10),r=new Xu(e,n,i);return YI(t,r),UI(t,r),r}};function YI(t,e){"userSpaceOnUse"===t.getAttribute("gradientUnits")&&(e.global=!0)}function UI(t,e){for(var n=t.firstChild;n;){if(1===n.nodeType&&"stop"===n.nodeName.toLocaleLowerCase()){var i=n.getAttribute("offset"),r=void 0;r=i&&i.indexOf("%")>0?parseInt(i,10)/100:i?parseFloat(i):0;var o={};nT(n,o,o);var a=o.stopColor||n.getAttribute("stop-color")||"#000000";e.colorStops.push({offset:r,color:a})}n=n.nextSibling}}function XI(t,e){t&&t.__inheritedStyle&&(e.__inheritedStyle||(e.__inheritedStyle={}),k(e.__inheritedStyle,t.__inheritedStyle))}function ZI(t){for(var e=JI(t),n=[],i=0;i<e.length;i+=2){var r=parseFloat(e[i]),o=parseFloat(e[i+1]);n.push([r,o])}return n}function jI(t,e,n,i,r){var o=e,a=o.__inheritedStyle=o.__inheritedStyle||{},s={};1===t.nodeType&&(function(t,e){var n=t.getAttribute("transform");if(n){n=n.replace(/,/g," ");var i=[],r=null;n.replace(QI,(function(t,e,n){return i.push(e,n),""}));for(var o=i.length-1;o>0;o-=2){var a=i[o],s=i[o-1],l=JI(a);switch(r=r||[1,0,0,1,0,0],s){case"translate":Ei(r,r,[parseFloat(l[0]),parseFloat(l[1]||"0")]);break;case"scale":Vi(r,r,[parseFloat(l[0]),parseFloat(l[1]||l[0])]);break;case"rotate":zi(r,r,-parseFloat(l[0])*tT);break;case"skewX":Ni(r,[1,0,Math.tan(parseFloat(l[0])*tT),1,0,0],r);break;case"skewY":Ni(r,[1,Math.tan(parseFloat(l[0])*tT),0,1,0,0],r);break;case"matrix":r[0]=parseFloat(l[0]),r[1]=parseFloat(l[1]),r[2]=parseFloat(l[2]),r[3]=parseFloat(l[3]),r[4]=parseFloat(l[4]),r[5]=parseFloat(l[5])}}e.setLocalTransform(r)}}(t,e),nT(t,a,s),i||function(t,e,n){for(var i=0;i<BI.length;i++){var r=BI[i];null!=(o=t.getAttribute(r))&&(e[VI[r]]=o)}for(i=0;i<GI.length;i++){var o;r=GI[i];null!=(o=t.getAttribute(r))&&(n[FI[r]]=o)}}(t,a,s)),o.style=o.style||{},null!=a.fill&&(o.style.fill=KI(o,"fill",a.fill,n)),null!=a.stroke&&(o.style.stroke=KI(o,"stroke",a.stroke,n)),E(["lineWidth","opacity","fillOpacity","strokeOpacity","miterLimit","fontSize"],(function(t){null!=a[t]&&(o.style[t]=parseFloat(a[t]))})),E(["lineDashOffset","lineCap","lineJoin","fontWeight","fontFamily","fontStyle","textAlign"],(function(t){null!=a[t]&&(o.style[t]=a[t])})),r&&(o.__selfStyle=s),a.lineDash&&(o.style.lineDash=z(JI(a.lineDash),(function(t){return parseFloat(t)}))),"hidden"!==a.visibility&&"collapse"!==a.visibility||(o.invisible=!0),"none"===a.display&&(o.ignore=!0)}var qI=/^url\(\s*#(.*?)\)/;function KI(t,e,n,i){var r=n&&n.match(qI);if(!r)return"none"===n&&(n=null),n;var o=ut(r[1]);i.push([t,e,o])}var $I=/-?([0-9]*\.)?[0-9]+([eE]-?[0-9]+)?/g;function JI(t){return t.match($I)||[]}var QI=/(translate|scale|rotate|skewX|skewY|matrix)\(([\-\s0-9\.eE,]*)\)/g,tT=Math.PI/180;var eT=/([^\s:;]+)\s*:\s*([^:;]+)/g;function nT(t,e,n){var i,r=t.getAttribute("style");if(r)for(eT.lastIndex=0;null!=(i=eT.exec(r));){var o=i[1],a=mt(VI,o)?VI[o]:null;a&&(e[a]=i[2]);var s=mt(FI,o)?FI[o]:null;s&&(n[s]=i[2])}}function iT(t,e){var n=e.width/t.width,i=e.height/t.height,r=Math.min(n,i);return{scale:r,x:-(t.x+t.width/2)*r+(e.x+e.width/2),y:-(t.y+t.height/2)*r+(e.y+e.height/2)}}var rT=ft(["rect","circle","line","ellipse","polygon","polyline","path","text","tspan","g"]),oT=function(){function t(t,e){this.type="geoSVG",this._usedGraphicMap=ft(),this._freedGraphics=[],this._mapName=t,this._parsedXML=zI(e)}return t.prototype.load=function(){var t=this._firstGraphic;if(!t){t=this._firstGraphic=this._buildGraphic(this._parsedXML),this._freedGraphics.push(t),this._boundingRect=this._firstGraphic.boundingRect.clone();var e=function(t){var e=[],n=ft();return E(t,(function(t){if(null==t.namedFrom){var i=new w_(t.name,t.el);e.push(i),n.set(t.name,i)}})),{regions:e,regionsMap:n}}(t.named),n=e.regions,i=e.regionsMap;this._regions=n,this._regionsMap=i}return{boundingRect:this._boundingRect,regions:this._regions,regionsMap:this._regionsMap}},t.prototype._buildGraphic=function(t){var e,n,i,r;try{lt(null!=(n=(e=t&&(i=t,r={ignoreViewBox:!0,ignoreRootClip:!0},(new WI).parse(i,r))||{}).root))}catch(t){throw new Error("Invalid svg format\n"+t.message)}var o=new Cr;o.add(n),o.isGeoSVGGraphicRoot=!0;var a=e.width,s=e.height,l=e.viewBoxRect,u=this._boundingRect;if(!u){var h=void 0,c=void 0,p=void 0,d=void 0;if(null!=a?(h=0,p=a):l&&(h=l.x,p=l.width),null!=s?(c=0,d=s):l&&(c=l.y,d=l.height),null==h||null==c){var f=n.getBoundingRect();null==h&&(h=f.x,p=f.width),null==c&&(c=f.y,d=f.height)}u=this._boundingRect=new sr(h,c,p,d)}if(l){var g=iT(l,u);n.scaleX=n.scaleY=g.scale,n.x=g.x,n.y=g.y}o.setClipPath(new Ts({shape:u.plain()}));var y=[];return E(e.named,(function(t){var e;null!=rT.get(t.svgNodeTagLower)&&(y.push(t),(e=t.el).silent=!1,e.isGroup&&e.traverse((function(t){t.silent=!1})))})),{root:o,boundingRect:u,named:y}},t.prototype.useGraphic=function(t){var e=this._usedGraphicMap,n=e.get(t);return n||(n=this._freedGraphics.pop()||this._buildGraphic(this._parsedXML),e.set(t,n),n)},t.prototype.freeGraphic=function(t){var e=this._usedGraphicMap,n=e.get(t);n&&(e.removeKey(t),this._freedGraphics.push(n))},t}();for(var aT=[126,25],sT="南海诸岛",lT=[[[0,3.5],[7,11.2],[15,11.9],[30,7],[42,.7],[52,.7],[56,7.7],[59,.7],[64,.7],[64,0],[5,0],[0,3.5]],[[13,16.1],[19,14.7],[16,21.7],[11,23.1],[13,16.1]],[[12,32.2],[14,38.5],[15,38.5],[13,32.2],[12,32.2]],[[16,47.6],[12,53.2],[13,53.2],[18,47.6],[16,47.6]],[[6,64.4],[8,70],[9,70],[8,64.4],[6,64.4]],[[23,82.6],[29,79.8],[30,79.8],[25,82.6],[23,82.6]],[[37,70.7],[43,62.3],[44,62.3],[39,70.7],[37,70.7]],[[48,51.1],[51,45.5],[53,45.5],[50,51.1],[48,51.1]],[[51,35],[51,28.7],[53,28.7],[53,35],[51,35]],[[52,22.4],[55,17.5],[56,17.5],[53,22.4],[52,22.4]],[[58,12.6],[62,7],[63,7],[60,12.6],[58,12.6]],[[0,3.5],[0,93.1],[64,93.1],[64,0],[63,0],[63,92.4],[1,92.4],[1,3.5],[0,3.5]]],uT=0;uT<lT.length;uT++)for(var hT=0;hT<lT[uT].length;hT++)lT[uT][hT][0]/=10.5,lT[uT][hT][1]/=-14,lT[uT][hT][0]+=aT[0],lT[uT][hT][1]+=aT[1];var cT={"南海诸岛":[32,80],"广东":[0,-10],"香港":[10,5],"澳门":[-10,10],"天津":[5,5]};var pT=[[[123.45165252685547,25.73527164402261],[123.49731445312499,25.73527164402261],[123.49731445312499,25.750734064600884],[123.45165252685547,25.750734064600884],[123.45165252685547,25.73527164402261]]];var dT=function(){function t(t,e,n){var i;this.type="geoJSON",this._parsedMap=ft(),this._mapName=t,this._specialAreas=n,this._geoJSON=X(i=e)?"undefined"!=typeof JSON&&JSON.parse?JSON.parse(i):new Function("return ("+i+");")():i}return t.prototype.load=function(t,e){e=e||"name";var n=this._parsedMap.get(e);if(!n){var i=this._parseToRegions(e);n=this._parsedMap.set(e,{regions:i,boundingRect:fT(i)})}var r=ft(),o=[];return E(n.regions,(function(e){var n=e.name;t&&mt(t,n)&&(e=e.cloneShallow(n=t[n])),o.push(e),r.set(n,e)})),{regions:o,boundingRect:n.boundingRect||new sr(0,0,0,0),regionsMap:r}},t.prototype._parseToRegions=function(t){var e,n=this._mapName,i=this._geoJSON;try{e=i?I_(i,t):[]}catch(t){throw new Error("Invalid geoJson format\n"+t.message)}return function(t,e){if("china"===t){for(var n=0;n<e.length;n++)if(e[n].name===sT)return;e.push(new b_(sT,z(lT,(function(t){return{type:"polygon",exterior:t}})),aT))}}(n,e),E(e,(function(t){var e=t.name;!function(t,e){if("china"===t){var n=cT[e.name];if(n){var i=e.getCenter();i[0]+=n[0]/10.5,i[1]+=-n[1]/14,e.setCenter(i)}}}(n,t),function(t,e){"china"===t&&"台湾"===e.name&&e.geometries.push({type:"polygon",exterior:pT[0]})}(n,t);var i=this._specialAreas&&this._specialAreas[e];i&&t.transformTo(i.left,i.top,i.width,i.height)}),this),e},t.prototype.getMapForUser=function(){return{geoJson:this._geoJSON,geoJSON:this._geoJSON,specialAreas:this._specialAreas}},t}();function fT(t){for(var e,n=0;n<t.length;n++){var i=t[n].getBoundingRect();(e=e||i.clone()).union(i)}return e}var gT=ft(),yT=function(t,e,n){if(e.svg){var i=new oT(t,e.svg);gT.set(t,i)}else{var r=e.geoJson||e.geoJSON;r&&!e.features?n=e.specialAreas:r=e;i=new dT(t,r,n);gT.set(t,i)}},vT=function(t){return gT.get(t)},mT=function(t){var e=gT.get(t);return e&&"geoJSON"===e.type&&e.getMapForUser()},xT=function(t,e,n){var i=gT.get(t);if(i)return i.load(e,n)},_T=["rect","circle","line","ellipse","polygon","polyline","path"],bT=ft(_T),wT=ft(_T.concat(["g"])),ST=ft(_T.concat(["g"])),MT=So();function IT(t){var e=t.getItemStyle(),n=t.get("areaColor");return null!=n&&(e.fill=n),e}function TT(t){var e=t.style;e&&(e.stroke=e.stroke||e.fill,e.fill=null)}var CT=function(){function t(t){var e=new Cr;this.uid=fc("ec_map_draw"),this._controller=new DI(t.getZr()),this._controllerHost={target:e},this.group=e,e.add(this._regionsGroup=new Cr),e.add(this._svgGroup=new Cr)}return t.prototype.draw=function(t,e,n,i,r){var o="geo"===t.mainType,a=t.getData&&t.getData();o&&e.eachComponent({mainType:"series",subType:"map"},(function(e){a||e.getHostGeoModel()!==t||(a=e.getData())}));var s=t.coordinateSystem,l=this._regionsGroup,u=this.group,h=s.getTransformInfo(),c=h.raw,p=h.roam;!l.childAt(0)||r?(u.x=p.x,u.y=p.y,u.scaleX=p.scaleX,u.scaleY=p.scaleY,u.dirty()):ih(u,p,t);var d=a&&a.getVisual("visualMeta")&&a.getVisual("visualMeta").length>0,f={api:n,geo:s,mapOrGeoModel:t,data:a,isVisualEncodedByVisualMap:d,isGeo:o,transformInfoRaw:c};"geoJSON"===s.resourceType?this._buildGeoJSON(f):"geoSVG"===s.resourceType&&this._buildSVG(f),this._updateController(t,e,n),this._updateMapSelectHandler(t,l,n,i)},t.prototype._buildGeoJSON=function(t){var e=this._regionsGroupByName=ft(),n=ft(),i=this._regionsGroup,r=t.transformInfoRaw,o=t.mapOrGeoModel,a=t.data,s=t.geo.projection,l=s&&s.stream;function u(t,e){return e&&(t=e(t)),t&&[t[0]*r.scaleX+r.x,t[1]*r.scaleY+r.y]}function h(t){for(var e=[],n=!l&&s&&s.project,i=0;i<t.length;++i){var r=u(t[i],n);r&&e.push(r)}return e}function c(t){return{shape:{points:h(t)}}}i.removeAll(),E(t.geo.regions,(function(r){var h=r.name,p=e.get(h),d=n.get(h)||{},f=d.dataIdx,g=d.regionModel;p||(p=e.set(h,new Cr),i.add(p),f=a?a.indexOfName(h):null,g=t.isGeo?o.getRegionModel(h):a?a.getItemModel(f):null,n.set(h,{dataIdx:f,regionModel:g}));var y=[],v=[];E(r.geometries,(function(t){if("polygon"===t.type){var e=[t.exterior].concat(t.interiors||[]);l&&(e=OT(e,l)),E(e,(function(t){y.push(new Lu(c(t)))}))}else{var n=t.points;l&&(n=OT(n,l,!0)),E(n,(function(t){v.push(new Ou(c(t)))}))}}));var m=u(r.getCenter(),s&&s.project);function x(e,n){if(e.length){var i=new Hu({culling:!0,segmentIgnoreThreshold:1,shape:{paths:e}});p.add(i),DT(t,i,f,g),AT(t,i,h,g,o,f,m),n&&(TT(i),E(i.states,TT))}}x(y),x(v,!0)})),e.each((function(e,i){var r=n.get(i),a=r.dataIdx,s=r.regionModel;kT(t,e,i,s,o,a),LT(t,e,i,s,o),PT(t,e,i,s,o)}),this)},t.prototype._buildSVG=function(t){var e=t.geo.map,n=t.transformInfoRaw;this._svgGroup.x=n.x,this._svgGroup.y=n.y,this._svgGroup.scaleX=n.scaleX,this._svgGroup.scaleY=n.scaleY,this._svgResourceChanged(e)&&(this._freeSVG(),this._useSVG(e));var i=this._svgDispatcherMap=ft(),r=!1;E(this._svgGraphicRecord.named,(function(e){var n=e.name,o=t.mapOrGeoModel,a=t.data,s=e.svgNodeTagLower,l=e.el,u=a?a.indexOfName(n):null,h=o.getRegionModel(n);(null!=bT.get(s)&&l instanceof da&&DT(t,l,u,h),l instanceof da&&(l.culling=!0),l.z2EmphasisLift=0,e.namedFrom)||(null!=ST.get(s)&&AT(t,l,n,h,o,u,null),kT(t,l,n,h,o,u),LT(t,l,n,h,o),null!=wT.get(s)&&("self"===PT(t,l,n,h,o)&&(r=!0),(i.get(n)||i.set(n,[])).push(l)))}),this),this._enableBlurEntireSVG(r,t)},t.prototype._enableBlurEntireSVG=function(t,e){if(t&&e.isGeo){var n=e.mapOrGeoModel.getModel(["blur","itemStyle"]).getItemStyle().opacity;this._svgGraphicRecord.root.traverse((function(t){if(!t.isGroup){yl(t);var e=t.ensureState("blur").style||{};null==e.opacity&&null!=n&&(e.opacity=n),t.ensureState("emphasis")}}))}},t.prototype.remove=function(){this._regionsGroup.removeAll(),this._regionsGroupByName=null,this._svgGroup.removeAll(),this._freeSVG(),this._controller.dispose(),this._controllerHost=null},t.prototype.findHighDownDispatchers=function(t,e){if(null==t)return[];var n=e.coordinateSystem;if("geoJSON"===n.resourceType){var i=this._regionsGroupByName;if(i){var r=i.get(t);return r?[r]:[]}}else if("geoSVG"===n.resourceType)return this._svgDispatcherMap&&this._svgDispatcherMap.get(t)||[]},t.prototype._svgResourceChanged=function(t){return this._svgMapName!==t},t.prototype._useSVG=function(t){var e=vT(t);if(e&&"geoSVG"===e.type){var n=e.useGraphic(this.uid);this._svgGroup.add(n.root),this._svgGraphicRecord=n,this._svgMapName=t}},t.prototype._freeSVG=function(){var t=this._svgMapName;if(null!=t){var e=vT(t);e&&"geoSVG"===e.type&&e.freeGraphic(this.uid),this._svgGraphicRecord=null,this._svgDispatcherMap=null,this._svgGroup.removeAll(),this._svgMapName=null}},t.prototype._updateController=function(t,e,n){var i=t.coordinateSystem,r=this._controller,o=this._controllerHost;o.zoomLimit=t.get("scaleLimit"),o.zoom=i.getZoom(),r.enable(t.get("roam")||!1);var a=t.mainType;function s(){var e={type:"geoRoam",componentType:a};return e[a+"Id"]=t.id,e}r.off("pan").on("pan",(function(t){this._mouseDownFlag=!1,PI(o,t.dx,t.dy),n.dispatchAction(A(s(),{dx:t.dx,dy:t.dy,animation:{duration:0}}))}),this),r.off("zoom").on("zoom",(function(t){this._mouseDownFlag=!1,OI(o,t.scale,t.originX,t.originY),n.dispatchAction(A(s(),{zoom:t.scale,originX:t.originX,originY:t.originY,animation:{duration:0}}))}),this),r.setPointerChecker((function(e,r,o){return i.containPoint([r,o])&&!EI(e,n,t)}))},t.prototype.resetForLabelLayout=function(){this.group.traverse((function(t){var e=t.getTextContent();e&&(e.ignore=MT(e).ignore)}))},t.prototype._updateMapSelectHandler=function(t,e,n,i){var r=this;e.off("mousedown"),e.off("click"),t.get("selectedMode")&&(e.on("mousedown",(function(){r._mouseDownFlag=!0})),e.on("click",(function(t){r._mouseDownFlag&&(r._mouseDownFlag=!1)})))},t}();function DT(t,e,n,i){var r=i.getModel("itemStyle"),o=i.getModel(["emphasis","itemStyle"]),a=i.getModel(["blur","itemStyle"]),s=i.getModel(["select","itemStyle"]),l=IT(r),u=IT(o),h=IT(s),c=IT(a),p=t.data;if(p){var d=p.getItemVisual(n,"style"),f=p.getItemVisual(n,"decal");t.isVisualEncodedByVisualMap&&d.fill&&(l.fill=d.fill),f&&(l.decal=nv(f,t.api))}e.setStyle(l),e.style.strokeNoScale=!0,e.ensureState("emphasis").style=u,e.ensureState("select").style=h,e.ensureState("blur").style=c,yl(e)}function AT(t,e,n,i,r,o,a){var s=t.data,l=t.isGeo,u=s&&isNaN(s.get(s.mapDimension("value"),o)),h=s&&s.getItemLayout(o);if(l||u||h&&h.showLabel){var c=l?n:o,p=void 0;(!s||o>=0)&&(p=r);var d=a?{normal:{align:"center",verticalAlign:"middle"}}:null;Wh(e,Hh(i),{labelFetcher:p,labelDataIndex:c,defaultText:n},d);var f=e.getTextContent();if(f&&(MT(f).ignore=f.ignore,e.textConfig&&a)){var g=e.getBoundingRect().clone();e.textConfig.layoutRect=g,e.textConfig.position=[(a[0]-g.x)/g.width*100+"%",(a[1]-g.y)/g.height*100+"%"]}e.disableLabelAnimation=!0}else e.removeTextContent(),e.removeTextConfig(),e.disableLabelAnimation=null}function kT(t,e,n,i,r,o){t.data?t.data.setItemGraphicEl(o,e):Ws(e).eventData={componentType:"geo",componentIndex:r.componentIndex,geoIndex:r.componentIndex,name:n,region:i&&i.option||{}}}function LT(t,e,n,i,r){t.data||Nh({el:e,componentModel:r,itemName:n,itemTooltipOption:i.get("tooltip")})}function PT(t,e,n,i,r){e.highDownSilentOnTouch=!!r.get("selectedMode");var o=i.getModel("emphasis"),a=o.get("focus");return Ol(e,a,o.get("blurScope"),o.get("disabled")),t.isGeo&&function(t,e,n){var i=Ws(t);i.componentMainType=e.mainType,i.componentIndex=e.componentIndex,i.componentHighDownName=n}(e,r,n),a}function OT(t,e,n){var i,r=[];function o(){i=[]}function a(){i.length&&(r.push(i),i=[])}var s=e({polygonStart:o,polygonEnd:a,lineStart:o,lineEnd:a,point:function(t,e){isFinite(t)&&isFinite(e)&&i.push([t,e])},sphere:function(){}});return!n&&s.polygonStart(),E(t,(function(t){s.lineStart();for(var e=0;e<t.length;e++)s.point(t[e][0],t[e][1]);s.lineEnd()})),!n&&s.polygonEnd(),r}var RT=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n,i){if(!i||"mapToggleSelect"!==i.type||i.from!==this.uid){var r=this.group;if(r.removeAll(),!t.getHostGeoModel()){if(this._mapDraw&&i&&"geoRoam"===i.type&&this._mapDraw.resetForLabelLayout(),i&&"geoRoam"===i.type&&"series"===i.componentType&&i.seriesId===t.id)(o=this._mapDraw)&&r.add(o.group);else if(t.needsDrawMap){var o=this._mapDraw||new CT(n);r.add(o.group),o.draw(t,e,n,this,i),this._mapDraw=o}else this._mapDraw&&this._mapDraw.remove(),this._mapDraw=null;t.get("showLegendSymbol")&&e.getComponent("legend")&&this._renderSymbols(t,e,n)}}},e.prototype.remove=function(){this._mapDraw&&this._mapDraw.remove(),this._mapDraw=null,this.group.removeAll()},e.prototype.dispose=function(){this._mapDraw&&this._mapDraw.remove(),this._mapDraw=null},e.prototype._renderSymbols=function(t,e,n){var i=t.originalData,r=this.group;i.each(i.mapDimension("value"),(function(e,n){if(!isNaN(e)){var o=i.getItemLayout(n);if(o&&o.point){var a=o.point,s=o.offset,l=new uu({style:{fill:t.getData().getVisual("style").fill},shape:{cx:a[0]+9*s,cy:a[1],r:3},silent:!0,z2:8+(s?0:11)});if(!s){var u=t.mainSeries.getData(),h=i.getName(n),c=u.indexOfName(h),p=i.getItemModel(n),d=p.getModel("label"),f=u.getItemGraphicEl(c);Wh(l,Hh(p),{labelFetcher:{getFormattedLabel:function(e,n){return t.getFormattedLabel(c,n)}},defaultText:h}),l.disableLabelAnimation=!0,d.get("position")||l.setTextConfig({position:"bottom"}),f.onHoverStateChange=function(t){fl(l,t)}}r.add(l)}}}))},e.type="map",e}(mg),NT=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.needsDrawMap=!1,n.seriesGroup=[],n.getTooltipPosition=function(t){if(null!=t){var e=this.getData().getName(t),n=this.coordinateSystem,i=n.getRegion(e);return i&&n.dataToPoint(i.getCenter())}},n}return n(e,t),e.prototype.getInitialData=function(t){for(var e=sM(this,{coordDimensions:["value"],encodeDefaulter:H(Hp,this)}),n=ft(),i=[],r=0,o=e.count();r<o;r++){var a=e.getName(r);n.set(a,!0)}return E(xT(this.getMapType(),this.option.nameMap,this.option.nameProperty).regions,(function(t){var e=t.name;n.get(e)||i.push(e)})),e.appendValues([],i),e},e.prototype.getHostGeoModel=function(){var t=this.option.geoIndex;return null!=t?this.ecModel.getComponent("geo",t):null},e.prototype.getMapType=function(){return(this.getHostGeoModel()||this).option.map},e.prototype.getRawValue=function(t){var e=this.getData();return e.get(e.mapDimension("value"),t)},e.prototype.getRegionModel=function(t){var e=this.getData();return e.getItemModel(e.indexOfName(t))},e.prototype.formatTooltip=function(t,e,n){for(var i=this.getData(),r=this.getRawValue(t),o=i.getName(t),a=this.seriesGroup,s=[],l=0;l<a.length;l++){var u=a[l].originalData.indexOfName(o),h=i.mapDimension("value");isNaN(a[l].originalData.get(h,u))||s.push(a[l].name)}return Uf("section",{header:s.join(", "),noHeader:!s.length,blocks:[Uf("nameValue",{name:o,value:r})]})},e.prototype.setZoom=function(t){this.option.zoom=t},e.prototype.setCenter=function(t){this.option.center=t},e.prototype.getLegendIcon=function(t){var e=t.icon||"roundRect",n=ky(e,0,0,t.itemWidth,t.itemHeight,t.itemStyle.fill);return n.setStyle(t.itemStyle),n.style.stroke="none",e.indexOf("empty")>-1&&(n.style.stroke=n.style.fill,n.style.fill="#fff",n.style.lineWidth=2),n},e.type="series.map",e.dependencies=["geo"],e.layoutMode="box",e.defaultOption={z:2,coordinateSystem:"geo",map:"",left:"center",top:"center",aspectScale:null,showLegendSymbol:!0,boundingCoords:null,center:null,zoom:1,scaleLimit:null,selectedMode:!0,label:{show:!1,color:"#000"},itemStyle:{borderWidth:.5,borderColor:"#444",areaColor:"#eee"},emphasis:{label:{show:!0,color:"rgb(100,0,0)"},itemStyle:{areaColor:"rgba(255,215,0,0.8)"}},select:{label:{show:!0,color:"rgb(100,0,0)"},itemStyle:{color:"rgba(255,215,0,0.8)"}},nameProperty:"name"},e}(ag);function ET(t){var e={};t.eachSeriesByType("map",(function(t){var n=t.getHostGeoModel(),i=n?"o"+n.id:"i"+t.getMapType();(e[i]=e[i]||[]).push(t)})),E(e,(function(t,e){for(var n,i,r,o=(n=z(t,(function(t){return t.getData()})),i=t[0].get("mapValueCalculation"),r={},E(n,(function(t){t.each(t.mapDimension("value"),(function(e,n){var i="ec-"+t.getName(n);r[i]=r[i]||[],isNaN(e)||r[i].push(e)}))})),n[0].map(n[0].mapDimension("value"),(function(t,e){for(var o="ec-"+n[0].getName(e),a=0,s=1/0,l=-1/0,u=r[o].length,h=0;h<u;h++)s=Math.min(s,r[o][h]),l=Math.max(l,r[o][h]),a+=r[o][h];return 0===u?NaN:"min"===i?s:"max"===i?l:"average"===i?a/u:a}))),a=0;a<t.length;a++)t[a].originalData=t[a].getData();for(a=0;a<t.length;a++)t[a].seriesGroup=t,t[a].needsDrawMap=0===a&&!t[a].getHostGeoModel(),t[a].setData(o.cloneShallow()),t[a].mainSeries=t[0]}))}function zT(t){var e={};t.eachSeriesByType("map",(function(n){var i=n.getMapType();if(!n.getHostGeoModel()&&!e[i]){var r={};E(n.seriesGroup,(function(e){var n=e.coordinateSystem,i=e.originalData;e.get("showLegendSymbol")&&t.getComponent("legend")&&i.each(i.mapDimension("value"),(function(t,e){var o=i.getName(e),a=n.getRegion(o);if(a&&!isNaN(t)){var s=r[o]||0,l=n.dataToPoint(a.getCenter());r[o]=s+1,i.setItemLayout(e,{point:l,offset:s})}}))}));var o=n.getData();o.each((function(t){var e=o.getName(t),n=o.getItemLayout(t)||{};n.showLabel=!r[e],o.setItemLayout(t,n)})),e[i]=!0}}))}var VT=Ft,BT=function(t){function e(e){var n=t.call(this)||this;return n.type="view",n.dimensions=["x","y"],n._roamTransformable=new qi,n._rawTransformable=new qi,n.name=e,n}return n(e,t),e.prototype.setBoundingRect=function(t,e,n,i){return this._rect=new sr(t,e,n,i),this._rect},e.prototype.getBoundingRect=function(){return this._rect},e.prototype.setViewRect=function(t,e,n,i){this._transformTo(t,e,n,i),this._viewRect=new sr(t,e,n,i)},e.prototype._transformTo=function(t,e,n,i){var r=this.getBoundingRect(),o=this._rawTransformable;o.transform=r.calculateTransform(new sr(t,e,n,i));var a=o.parent;o.parent=null,o.decomposeTransform(),o.parent=a,this._updateTransform()},e.prototype.setCenter=function(t){t&&(this._center=t,this._updateCenterAndZoom())},e.prototype.setZoom=function(t){t=t||1;var e=this.zoomLimit;e&&(null!=e.max&&(t=Math.min(e.max,t)),null!=e.min&&(t=Math.max(e.min,t))),this._zoom=t,this._updateCenterAndZoom()},e.prototype.getDefaultCenter=function(){var t=this.getBoundingRect();return[t.x+t.width/2,t.y+t.height/2]},e.prototype.getCenter=function(){return this._center||this.getDefaultCenter()},e.prototype.getZoom=function(){return this._zoom||1},e.prototype.getRoamTransform=function(){return this._roamTransformable.getLocalTransform()},e.prototype._updateCenterAndZoom=function(){var t=this._rawTransformable.getLocalTransform(),e=this._roamTransformable,n=this.getDefaultCenter(),i=this.getCenter(),r=this.getZoom();i=Ft([],i,t),n=Ft([],n,t),e.originX=i[0],e.originY=i[1],e.x=n[0]-i[0],e.y=n[1]-i[1],e.scaleX=e.scaleY=r,this._updateTransform()},e.prototype._updateTransform=function(){var t=this._roamTransformable,e=this._rawTransformable;e.parent=t,t.updateTransform(),e.updateTransform(),Ri(this.transform||(this.transform=[]),e.transform||[1,0,0,1,0,0]),this._rawTransform=e.getLocalTransform(),this.invTransform=this.invTransform||[],Bi(this.invTransform,this.transform),this.decomposeTransform()},e.prototype.getTransformInfo=function(){var t=this._rawTransformable,e=this._roamTransformable,n=new qi;return n.transform=e.transform,n.decomposeTransform(),{roam:{x:n.x,y:n.y,scaleX:n.scaleX,scaleY:n.scaleY},raw:{x:t.x,y:t.y,scaleX:t.scaleX,scaleY:t.scaleY}}},e.prototype.getViewRect=function(){return this._viewRect},e.prototype.getViewRectAfterRoam=function(){var t=this.getBoundingRect().clone();return t.applyTransform(this.transform),t},e.prototype.dataToPoint=function(t,e,n){var i=e?this._rawTransform:this.transform;return n=n||[],i?VT(n,t,i):St(n,t)},e.prototype.pointToData=function(t){var e=this.invTransform;return e?VT([],t,e):[t[0],t[1]]},e.prototype.convertToPixel=function(t,e,n){var i=FT(e);return i===this?i.dataToPoint(n):null},e.prototype.convertFromPixel=function(t,e,n){var i=FT(e);return i===this?i.pointToData(n):null},e.prototype.containPoint=function(t){return this.getViewRectAfterRoam().contain(t[0],t[1])},e.dimensions=["x","y"],e}(qi);function FT(t){var e=t.seriesModel;return e?e.coordinateSystem:null}var GT={geoJSON:{aspectScale:.75,invertLongitute:!0},geoSVG:{aspectScale:1,invertLongitute:!1}},WT=["lng","lat"],HT=function(t){function e(e,n,i){var r=t.call(this,e)||this;r.dimensions=WT,r.type="geo",r._nameCoordMap=ft(),r.map=n;var o,a=i.projection,s=xT(n,i.nameMap,i.nameProperty),l=vT(n),u=(r.resourceType=l?l.type:null,r.regions=s.regions),h=GT[l.type];if(r._regionsMap=s.regionsMap,r.regions=s.regions,r.projection=a,a)for(var c=0;c<u.length;c++){var p=u[c].getBoundingRect(a);(o=o||p.clone()).union(p)}else o=s.boundingRect;return r.setBoundingRect(o.x,o.y,o.width,o.height),r.aspectScale=a?1:rt(i.aspectScale,h.aspectScale),r._invertLongitute=!a&&h.invertLongitute,r}return n(e,t),e.prototype._transformTo=function(t,e,n,i){var r=this.getBoundingRect(),o=this._invertLongitute;r=r.clone(),o&&(r.y=-r.y-r.height);var a=this._rawTransformable;a.transform=r.calculateTransform(new sr(t,e,n,i));var s=a.parent;a.parent=null,a.decomposeTransform(),a.parent=s,o&&(a.scaleY=-a.scaleY),this._updateTransform()},e.prototype.getRegion=function(t){return this._regionsMap.get(t)},e.prototype.getRegionByCoord=function(t){for(var e=this.regions,n=0;n<e.length;n++){var i=e[n];if("geoJSON"===i.type&&i.contain(t))return e[n]}},e.prototype.addGeoCoord=function(t,e){this._nameCoordMap.set(t,e)},e.prototype.getGeoCoord=function(t){var e=this._regionsMap.get(t);return this._nameCoordMap.get(t)||e&&e.getCenter()},e.prototype.dataToPoint=function(t,e,n){if(X(t)&&(t=this.getGeoCoord(t)),t){var i=this.projection;return i&&(t=i.project(t)),t&&this.projectedToPoint(t)}},e.prototype.pointToData=function(t){var e=this.projection;return e&&(t=e.unproject(t)),t&&this.pointToProjected(t)},e.prototype.pointToProjected=function(e){return t.prototype.pointToData.call(this,e)},e.prototype.projectedToPoint=function(e,n,i){return t.prototype.dataToPoint.call(this,e,n,i)},e.prototype.convertToPixel=function(t,e,n){var i=YT(e);return i===this?i.dataToPoint(n):null},e.prototype.convertFromPixel=function(t,e,n){var i=YT(e);return i===this?i.pointToData(n):null},e}(BT);function YT(t){var e=t.geoModel,n=t.seriesModel;return e?e.coordinateSystem:n?n.coordinateSystem||(n.getReferringComponents("geo",Co).models[0]||{}).coordinateSystem:null}function UT(t,e){var n=t.get("boundingCoords");if(null!=n){var i=n[0],r=n[1];if(isFinite(i[0])&&isFinite(i[1])&&isFinite(r[0])&&isFinite(r[1])){var o=this.projection;if(o){var a=i[0],s=i[1],l=r[0],u=r[1];i=[1/0,1/0],r=[-1/0,-1/0];var h=function(t,e,n,a){for(var s=n-t,l=a-e,u=0;u<=100;u++){var h=u/100,c=o.project([t+s*h,e+l*h]);Gt(i,i,c),Wt(r,r,c)}};h(a,s,l,s),h(l,s,l,u),h(l,u,a,u),h(a,u,l,s)}this.setBoundingRect(i[0],i[1],r[0]-i[0],r[1]-i[1])}else 0}var c,p,d,f=this.getBoundingRect(),g=t.get("layoutCenter"),y=t.get("layoutSize"),v=e.getWidth(),m=e.getHeight(),x=f.width/f.height*this.aspectScale,_=!1;if(g&&y&&(c=[Er(g[0],v),Er(g[1],m)],p=Er(y,Math.min(v,m)),isNaN(c[0])||isNaN(c[1])||isNaN(p)||(_=!0)),_)d={},x>1?(d.width=p,d.height=p/x):(d.height=p,d.width=p*x),d.y=c[1]-d.height/2,d.x=c[0]-d.width/2;else{var b=t.getBoxLayoutParams();b.aspect=x,d=mp(b,{width:v,height:m})}this.setViewRect(d.x,d.y,d.width,d.height),this.setCenter(t.get("center")),this.setZoom(t.get("zoom"))}R(HT,BT);var XT=new(function(){function t(){this.dimensions=WT}return t.prototype.create=function(t,e){var n=[];function i(t){return{nameProperty:t.get("nameProperty"),aspectScale:t.get("aspectScale"),projection:t.get("projection")}}t.eachComponent("geo",(function(t,r){var o=t.get("map"),a=new HT(o+r,o,A({nameMap:t.get("nameMap")},i(t)));a.zoomLimit=t.get("scaleLimit"),n.push(a),t.coordinateSystem=a,a.model=t,a.resize=UT,a.resize(t,e)})),t.eachSeries((function(t){if("geo"===t.get("coordinateSystem")){var e=t.get("geoIndex")||0;t.coordinateSystem=n[e]}}));var r={};return t.eachSeriesByType("map",(function(t){if(!t.getHostGeoModel()){var e=t.getMapType();r[e]=r[e]||[],r[e].push(t)}})),E(r,(function(t,r){var o=z(t,(function(t){return t.get("nameMap")})),a=new HT(r,r,A({nameMap:D(o)},i(t[0])));a.zoomLimit=it.apply(null,z(t,(function(t){return t.get("scaleLimit")}))),n.push(a),a.resize=UT,a.resize(t[0],e),E(t,(function(t){t.coordinateSystem=a,function(t,e){E(e.get("geoCoord"),(function(e,n){t.addGeoCoord(n,e)}))}(a,t)}))})),n},t.prototype.getFilledRegions=function(t,e,n,i){for(var r=(t||[]).slice(),o=ft(),a=0;a<r.length;a++)o.set(r[a].name,r[a]);return E(xT(e,n,i).regions,(function(t){var e=t.name;!o.get(e)&&r.push({name:e})})),r},t}()),ZT=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(t,e,n){var i=vT(t.map);if(i&&"geoJSON"===i.type){var r=t.itemStyle=t.itemStyle||{};"color"in r||(r.color="#eee")}this.mergeDefaultAndTheme(t,n),co(t,"label",["show"])},e.prototype.optionUpdated=function(){var t=this,e=this.option;e.regions=XT.getFilledRegions(e.regions,e.map,e.nameMap,e.nameProperty);var n={};this._optionModelMap=V(e.regions||[],(function(e,i){var r=i.name;return r&&(e.set(r,new pc(i,t,t.ecModel)),i.selected&&(n[r]=!0)),e}),ft()),e.selectedMap||(e.selectedMap=n)},e.prototype.getRegionModel=function(t){return this._optionModelMap.get(t)||new pc(null,this,this.ecModel)},e.prototype.getFormattedLabel=function(t,e){var n=this.getRegionModel(t),i="normal"===e?n.get(["label","formatter"]):n.get(["emphasis","label","formatter"]),r={name:t};return U(i)?(r.status=e,i(r)):X(i)?i.replace("{a}",null!=t?t:""):void 0},e.prototype.setZoom=function(t){this.option.zoom=t},e.prototype.setCenter=function(t){this.option.center=t},e.prototype.select=function(t){var e=this.option,n=e.selectedMode;n&&("multiple"!==n&&(e.selectedMap=null),(e.selectedMap||(e.selectedMap={}))[t]=!0)},e.prototype.unSelect=function(t){var e=this.option.selectedMap;e&&(e[t]=!1)},e.prototype.toggleSelected=function(t){this[this.isSelected(t)?"unSelect":"select"](t)},e.prototype.isSelected=function(t){var e=this.option.selectedMap;return!(!e||!e[t])},e.type="geo",e.layoutMode="box",e.defaultOption={z:0,show:!0,left:"center",top:"center",aspectScale:null,silent:!1,map:"",boundingCoords:null,center:null,zoom:1,scaleLimit:null,label:{show:!1,color:"#000"},itemStyle:{borderWidth:.5,borderColor:"#444"},emphasis:{label:{show:!0,color:"rgb(100,0,0)"},itemStyle:{color:"rgba(255,215,0,0.8)"}},select:{label:{show:!0,color:"rgb(100,0,0)"},itemStyle:{color:"rgba(255,215,0,0.8)"}},regions:[]},e}(Ip);function jT(t,e){return t.pointToProjected?t.pointToProjected(e):t.pointToData(e)}function qT(t,e,n){var i=t.getZoom(),r=t.getCenter(),o=e.zoom,a=t.projectedToPoint?t.projectedToPoint(r):t.dataToPoint(r);if(null!=e.dx&&null!=e.dy&&(a[0]-=e.dx,a[1]-=e.dy,t.setCenter(jT(t,a))),null!=o){if(n){var s=n.min||0,l=n.max||1/0;o=Math.max(Math.min(i*o,l),s)/i}t.scaleX*=o,t.scaleY*=o;var u=(e.originX-t.x)*(o-1),h=(e.originY-t.y)*(o-1);t.x-=u,t.y-=h,t.updateTransform(),t.setCenter(jT(t,a)),t.setZoom(o*i)}return{center:t.getCenter(),zoom:t.getZoom()}}var KT=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.focusBlurEnabled=!0,n}return n(e,t),e.prototype.init=function(t,e){this._api=e},e.prototype.render=function(t,e,n,i){if(this._model=t,!t.get("show"))return this._mapDraw&&this._mapDraw.remove(),void(this._mapDraw=null);this._mapDraw||(this._mapDraw=new CT(n));var r=this._mapDraw;r.draw(t,e,n,this,i),r.group.on("click",this._handleRegionClick,this),r.group.silent=t.get("silent"),this.group.add(r.group),this.updateSelectStatus(t,e,n)},e.prototype._handleRegionClick=function(t){var e;my(t.target,(function(t){return null!=(e=Ws(t).eventData)}),!0),e&&this._api.dispatchAction({type:"geoToggleSelect",geoId:this._model.id,name:e.name})},e.prototype.updateSelectStatus=function(t,e,n){var i=this;this._mapDraw.group.traverse((function(t){var e=Ws(t).eventData;if(e)return i._model.isSelected(e.name)?n.enterSelect(t):n.leaveSelect(t),!0}))},e.prototype.findHighDownDispatchers=function(t){return this._mapDraw&&this._mapDraw.findHighDownDispatchers(t,this._model)},e.prototype.dispose=function(){this._mapDraw&&this._mapDraw.remove()},e.type="geo",e}(fg);function $T(t,e,n){yT(t,e,n)}function JT(t){function e(e,n){n.update="geo:updateSelectStatus",t.registerAction(n,(function(t,n){var i={},r=[];return n.eachComponent({mainType:"geo",query:t},(function(n){n[e](t.name),E(n.coordinateSystem.regions,(function(t){i[t.name]=n.isSelected(t.name)||!1}));var o=[];E(i,(function(t,e){i[e]&&o.push(e)})),r.push({geoIndex:n.componentIndex,name:o})})),{selected:i,allSelected:r,name:t.name}}))}t.registerCoordinateSystem("geo",XT),t.registerComponentModel(ZT),t.registerComponentView(KT),t.registerImpl("registerMap",$T),t.registerImpl("getMap",(function(t){return mT(t)})),e("toggleSelected",{type:"geoToggleSelect",event:"geoselectchanged"}),e("select",{type:"geoSelect",event:"geoselected"}),e("unSelect",{type:"geoUnSelect",event:"geounselected"}),t.registerAction({type:"geoRoam",event:"geoRoam",update:"updateTransform"},(function(t,e){var n=t.componentType||"series";e.eachComponent({mainType:n,query:t},(function(e){var i=e.coordinateSystem;if("geo"===i.type){var r=qT(i,t,e.get("scaleLimit"));e.setCenter&&e.setCenter(r.center),e.setZoom&&e.setZoom(r.zoom),"series"===n&&E(e.seriesGroup,(function(t){t.setCenter(r.center),t.setZoom(r.zoom)}))}}))}))}function QT(t,e){var n=t.isExpand?t.children:[],i=t.parentNode.children,r=t.hierNode.i?i[t.hierNode.i-1]:null;if(n.length){!function(t){var e=t.children,n=e.length,i=0,r=0;for(;--n>=0;){var o=e[n];o.hierNode.prelim+=i,o.hierNode.modifier+=i,r+=o.hierNode.change,i+=o.hierNode.shift+r}}(t);var o=(n[0].hierNode.prelim+n[n.length-1].hierNode.prelim)/2;r?(t.hierNode.prelim=r.hierNode.prelim+e(t,r),t.hierNode.modifier=t.hierNode.prelim-o):t.hierNode.prelim=o}else r&&(t.hierNode.prelim=r.hierNode.prelim+e(t,r));t.parentNode.hierNode.defaultAncestor=function(t,e,n,i){if(e){for(var r=t,o=t,a=o.parentNode.children[0],s=e,l=r.hierNode.modifier,u=o.hierNode.modifier,h=a.hierNode.modifier,c=s.hierNode.modifier;s=iC(s),o=rC(o),s&&o;){r=iC(r),a=rC(a),r.hierNode.ancestor=t;var p=s.hierNode.prelim+c-o.hierNode.prelim-u+i(s,o);p>0&&(aC(oC(s,t,n),t,p),u+=p,l+=p),c+=s.hierNode.modifier,u+=o.hierNode.modifier,l+=r.hierNode.modifier,h+=a.hierNode.modifier}s&&!iC(r)&&(r.hierNode.thread=s,r.hierNode.modifier+=c-l),o&&!rC(a)&&(a.hierNode.thread=o,a.hierNode.modifier+=u-h,n=t)}return n}(t,r,t.parentNode.hierNode.defaultAncestor||i[0],e)}function tC(t){var e=t.hierNode.prelim+t.parentNode.hierNode.modifier;t.setLayout({x:e},!0),t.hierNode.modifier+=t.parentNode.hierNode.modifier}function eC(t){return arguments.length?t:sC}function nC(t,e){return t-=Math.PI/2,{x:e*Math.cos(t),y:e*Math.sin(t)}}function iC(t){var e=t.children;return e.length&&t.isExpand?e[e.length-1]:t.hierNode.thread}function rC(t){var e=t.children;return e.length&&t.isExpand?e[0]:t.hierNode.thread}function oC(t,e,n){return t.hierNode.ancestor.parentNode===e.parentNode?t.hierNode.ancestor:n}function aC(t,e,n){var i=n/(e.hierNode.i-t.hierNode.i);e.hierNode.change-=i,e.hierNode.shift+=n,e.hierNode.modifier+=n,e.hierNode.prelim+=n,t.hierNode.change+=i}function sC(t,e){return t.parentNode===e.parentNode?1:2}var lC=function(){this.parentPoint=[],this.childPoints=[]},uC=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new lC},e.prototype.buildPath=function(t,e){var n=e.childPoints,i=n.length,r=e.parentPoint,o=n[0],a=n[i-1];if(1===i)return t.moveTo(r[0],r[1]),void t.lineTo(o[0],o[1]);var s=e.orient,l="TB"===s||"BT"===s?0:1,u=1-l,h=Er(e.forkPosition,1),c=[];c[l]=r[l],c[u]=r[u]+(a[u]-r[u])*h,t.moveTo(r[0],r[1]),t.lineTo(c[0],c[1]),t.moveTo(o[0],o[1]),c[l]=o[l],t.lineTo(c[0],c[1]),c[l]=a[l],t.lineTo(c[0],c[1]),t.lineTo(a[0],a[1]);for(var p=1;p<i-1;p++){var d=n[p];t.moveTo(d[0],d[1]),c[l]=d[l],t.lineTo(c[0],c[1])}},e}(fs),hC=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._mainGroup=new Cr,n}return n(e,t),e.prototype.init=function(t,e){this._controller=new DI(e.getZr()),this._controllerHost={target:this.group},this.group.add(this._mainGroup)},e.prototype.render=function(t,e,n){var i=t.getData(),r=t.layoutInfo,o=this._mainGroup;"radial"===t.get("layout")?(o.x=r.x+r.width/2,o.y=r.y+r.height/2):(o.x=r.x,o.y=r.y),this._updateViewCoordSys(t),this._updateController(t,e,n);var a=this._data;i.diff(a).add((function(e){cC(i,e)&&pC(i,e,null,o,t)})).update((function(e,n){var r=a.getItemGraphicEl(n);cC(i,e)?pC(i,e,r,o,t):r&&gC(a,n,r,o,t)})).remove((function(e){var n=a.getItemGraphicEl(e);n&&gC(a,e,n,o,t)})).execute(),this._nodeScaleRatio=t.get("nodeScaleRatio"),this._updateNodeAndLinkScale(t),!0===t.get("expandAndCollapse")&&i.eachItemGraphicEl((function(e,i){e.off("click").on("click",(function(){n.dispatchAction({type:"treeExpandAndCollapse",seriesId:t.id,dataIndex:i})}))})),this._data=i},e.prototype._updateViewCoordSys=function(t){var e=t.getData(),n=[];e.each((function(t){var i=e.getItemLayout(t);!i||isNaN(i.x)||isNaN(i.y)||n.push([+i.x,+i.y])}));var i=[],r=[];Ma(n,i,r);var o=this._min,a=this._max;r[0]-i[0]==0&&(i[0]=o?o[0]:i[0]-1,r[0]=a?a[0]:r[0]+1),r[1]-i[1]==0&&(i[1]=o?o[1]:i[1]-1,r[1]=a?a[1]:r[1]+1);var s=t.coordinateSystem=new BT;s.zoomLimit=t.get("scaleLimit"),s.setBoundingRect(i[0],i[1],r[0]-i[0],r[1]-i[1]),s.setCenter(t.get("center")),s.setZoom(t.get("zoom")),this.group.attr({x:s.x,y:s.y,scaleX:s.scaleX,scaleY:s.scaleY}),this._min=i,this._max=r},e.prototype._updateController=function(t,e,n){var i=this,r=this._controller,o=this._controllerHost,a=this.group;r.setPointerChecker((function(e,i,r){var o=a.getBoundingRect();return o.applyTransform(a.transform),o.contain(i,r)&&!EI(e,n,t)})),r.enable(t.get("roam")),o.zoomLimit=t.get("scaleLimit"),o.zoom=t.coordinateSystem.getZoom(),r.off("pan").off("zoom").on("pan",(function(e){PI(o,e.dx,e.dy),n.dispatchAction({seriesId:t.id,type:"treeRoam",dx:e.dx,dy:e.dy})})).on("zoom",(function(e){OI(o,e.scale,e.originX,e.originY),n.dispatchAction({seriesId:t.id,type:"treeRoam",zoom:e.scale,originX:e.originX,originY:e.originY}),i._updateNodeAndLinkScale(t),n.updateLabelLayout()}))},e.prototype._updateNodeAndLinkScale=function(t){var e=t.getData(),n=this._getNodeGlobalScale(t);e.eachItemGraphicEl((function(t,e){t.setSymbolScale(n)}))},e.prototype._getNodeGlobalScale=function(t){var e=t.coordinateSystem;if("view"!==e.type)return 1;var n=this._nodeScaleRatio,i=e.scaleX||1;return((e.getZoom()-1)*n+1)/i},e.prototype.dispose=function(){this._controller&&this._controller.dispose(),this._controllerHost=null},e.prototype.remove=function(){this._mainGroup.removeAll(),this._data=null},e.type="tree",e}(mg);function cC(t,e){var n=t.getItemLayout(e);return n&&!isNaN(n.x)&&!isNaN(n.y)}function pC(t,e,n,i,r){var o=!n,a=t.tree.getNodeByDataIndex(e),s=a.getModel(),l=a.getVisual("style").fill,u=!1===a.isExpand&&0!==a.children.length?l:"#fff",h=t.tree.root,c=a.parentNode===h?a:a.parentNode||a,p=t.getItemGraphicEl(c.dataIndex),d=c.getLayout(),f=p?{x:p.__oldX,y:p.__oldY,rawX:p.__radialOldRawX,rawY:p.__radialOldRawY}:d,g=a.getLayout();o?((n=new Ww(t,e,null,{symbolInnerColor:u,useNameLabel:!0})).x=f.x,n.y=f.y):n.updateData(t,e,null,{symbolInnerColor:u,useNameLabel:!0}),n.__radialOldRawX=n.__radialRawX,n.__radialOldRawY=n.__radialRawY,n.__radialRawX=g.rawX,n.__radialRawY=g.rawY,i.add(n),t.setItemGraphicEl(e,n),n.__oldX=n.x,n.__oldY=n.y,ih(n,{x:g.x,y:g.y},r);var y=n.getSymbolPath();if("radial"===r.get("layout")){var v=h.children[0],m=v.getLayout(),x=v.children.length,_=void 0,b=void 0;if(g.x===m.x&&!0===a.isExpand){var w={x:(v.children[0].getLayout().x+v.children[x-1].getLayout().x)/2,y:(v.children[0].getLayout().y+v.children[x-1].getLayout().y)/2};(_=Math.atan2(w.y-m.y,w.x-m.x))<0&&(_=2*Math.PI+_),(b=w.x<m.x)&&(_-=Math.PI)}else(_=Math.atan2(g.y-m.y,g.x-m.x))<0&&(_=2*Math.PI+_),0===a.children.length||0!==a.children.length&&!1===a.isExpand?(b=g.x<m.x)&&(_-=Math.PI):(b=g.x>m.x)||(_-=Math.PI);var S=b?"left":"right",M=s.getModel("label"),I=M.get("rotate"),T=I*(Math.PI/180),C=y.getTextContent();C&&(y.setTextConfig({position:M.get("position")||S,rotation:null==I?-_:T,origin:"center"}),C.setStyle("verticalAlign","middle"))}var D=s.get(["emphasis","focus"]),A="ancestor"===D?a.getAncestorsIndices():"descendant"===D?a.getDescendantIndices():null;A&&(Ws(n).focus=A),function(t,e,n,i,r,o,a,s){var l=e.getModel(),u=t.get("edgeShape"),h=t.get("layout"),c=t.getOrient(),p=t.get(["lineStyle","curveness"]),d=t.get("edgeForkPosition"),f=l.getModel("lineStyle").getLineStyle(),g=i.__edge;if("curve"===u)e.parentNode&&e.parentNode!==n&&(g||(g=i.__edge=new Fu({shape:yC(h,c,p,r,r)})),ih(g,{shape:yC(h,c,p,o,a)},t));else if("polyline"===u)if("orthogonal"===h){if(e!==n&&e.children&&0!==e.children.length&&!0===e.isExpand){for(var y=e.children,v=[],m=0;m<y.length;m++){var x=y[m].getLayout();v.push([x.x,x.y])}g||(g=i.__edge=new uC({shape:{parentPoint:[a.x,a.y],childPoints:[[a.x,a.y]],orient:c,forkPosition:d}})),ih(g,{shape:{parentPoint:[a.x,a.y],childPoints:v}},t)}}else 0;g&&(g.useStyle(k({strokeNoScale:!0,fill:null},f)),zl(g,l,"lineStyle"),yl(g),s.add(g))}(r,a,h,n,f,d,g,i),n.__edge&&(n.onHoverStateChange=function(e){if("blur"!==e){var i=a.parentNode&&t.getItemGraphicEl(a.parentNode.dataIndex);i&&1===i.hoverState||fl(n.__edge,e)}})}function dC(t,e,n,i,r){var o=fC(e.tree.root,t),a=o.source,s=o.sourceLayout,l=e.getItemGraphicEl(t.dataIndex);if(l){var u=e.getItemGraphicEl(a.dataIndex).__edge,h=l.__edge||(!1===a.isExpand||1===a.children.length?u:void 0),c=i.get("edgeShape"),p=i.get("layout"),d=i.get("orient"),f=i.get(["lineStyle","curveness"]);h&&("curve"===c?ah(h,{shape:yC(p,d,f,s,s),style:{opacity:0}},i,{cb:function(){n.remove(h)},removeOpt:r}):"polyline"===c&&"orthogonal"===i.get("layout")&&ah(h,{shape:{parentPoint:[s.x,s.y],childPoints:[[s.x,s.y]]},style:{opacity:0}},i,{cb:function(){n.remove(h)},removeOpt:r}))}}function fC(t,e){for(var n,i=e.parentNode===t?e:e.parentNode||e;null==(n=i.getLayout());)i=i.parentNode===t?i:i.parentNode||i;return{source:i,sourceLayout:n}}function gC(t,e,n,i,r){var o=t.tree.getNodeByDataIndex(e),a=fC(t.tree.root,o).sourceLayout,s={duration:r.get("animationDurationUpdate"),easing:r.get("animationEasingUpdate")};ah(n,{x:a.x+1,y:a.y+1},r,{cb:function(){i.remove(n),t.setItemGraphicEl(e,null)},removeOpt:s}),n.fadeOut(null,{fadeLabel:!0,animation:s}),o.children.forEach((function(e){dC(e,t,i,r,s)})),dC(o,t,i,r,s)}function yC(t,e,n,i,r){var o,a,s,l,u,h,c,p;if("radial"===t){u=i.rawX,c=i.rawY,h=r.rawX,p=r.rawY;var d=nC(u,c),f=nC(u,c+(p-c)*n),g=nC(h,p+(c-p)*n),y=nC(h,p);return{x1:d.x||0,y1:d.y||0,x2:y.x||0,y2:y.y||0,cpx1:f.x||0,cpy1:f.y||0,cpx2:g.x||0,cpy2:g.y||0}}return u=i.x,c=i.y,h=r.x,p=r.y,"LR"!==e&&"RL"!==e||(o=u+(h-u)*n,a=c,s=h+(u-h)*n,l=p),"TB"!==e&&"BT"!==e||(o=u,a=c+(p-c)*n,s=h,l=p+(c-p)*n),{x1:u,y1:c,x2:h,y2:p,cpx1:o,cpy1:a,cpx2:s,cpy2:l}}var vC=So();function mC(t){var e=t.mainData,n=t.datas;n||(n={main:e},t.datasAttr={main:"data"}),t.datas=t.mainData=null,MC(e,n,t),E(n,(function(n){E(e.TRANSFERABLE_METHODS,(function(e){n.wrapMethod(e,H(xC,t))}))})),e.wrapMethod("cloneShallow",H(bC,t)),E(e.CHANGABLE_METHODS,(function(n){e.wrapMethod(n,H(_C,t))})),lt(n[e.dataType]===e)}function xC(t,e){if(vC(i=this).mainData===i){var n=A({},vC(this).datas);n[this.dataType]=e,MC(e,n,t)}else IC(e,this.dataType,vC(this).mainData,t);var i;return e}function _C(t,e){return t.struct&&t.struct.update(),e}function bC(t,e){return E(vC(e).datas,(function(n,i){n!==e&&IC(n.cloneShallow(),i,e,t)})),e}function wC(t){var e=vC(this).mainData;return null==t||null==e?e:vC(e).datas[t]}function SC(){var t=vC(this).mainData;return null==t?[{data:t}]:z(G(vC(t).datas),(function(e){return{type:e,data:vC(t).datas[e]}}))}function MC(t,e,n){vC(t).datas={},E(e,(function(e,i){IC(e,i,t,n)}))}function IC(t,e,n,i){vC(n).datas[e]=t,vC(t).mainData=n,t.dataType=e,i.struct&&(t[i.structAttr]=i.struct,i.struct[i.datasAttr[e]]=t),t.getLinkedData=wC,t.getLinkedDataAll=SC}var TC=function(){function t(t,e){this.depth=0,this.height=0,this.dataIndex=-1,this.children=[],this.viewChildren=[],this.isExpand=!1,this.name=t||"",this.hostTree=e}return t.prototype.isRemoved=function(){return this.dataIndex<0},t.prototype.eachNode=function(t,e,n){U(t)&&(n=e,e=t,t=null),X(t=t||{})&&(t={order:t});var i,r=t.order||"preorder",o=this[t.attr||"children"];"preorder"===r&&(i=e.call(n,this));for(var a=0;!i&&a<o.length;a++)o[a].eachNode(t,e,n);"postorder"===r&&e.call(n,this)},t.prototype.updateDepthAndHeight=function(t){var e=0;this.depth=t;for(var n=0;n<this.children.length;n++){var i=this.children[n];i.updateDepthAndHeight(t+1),i.height>e&&(e=i.height)}this.height=e+1},t.prototype.getNodeById=function(t){if(this.getId()===t)return this;for(var e=0,n=this.children,i=n.length;e<i;e++){var r=n[e].getNodeById(t);if(r)return r}},t.prototype.contains=function(t){if(t===this)return!0;for(var e=0,n=this.children,i=n.length;e<i;e++){var r=n[e].contains(t);if(r)return r}},t.prototype.getAncestors=function(t){for(var e=[],n=t?this:this.parentNode;n;)e.push(n),n=n.parentNode;return e.reverse(),e},t.prototype.getAncestorsIndices=function(){for(var t=[],e=this;e;)t.push(e.dataIndex),e=e.parentNode;return t.reverse(),t},t.prototype.getDescendantIndices=function(){var t=[];return this.eachNode((function(e){t.push(e.dataIndex)})),t},t.prototype.getValue=function(t){var e=this.hostTree.data;return e.getStore().get(e.getDimensionIndex(t||"value"),this.dataIndex)},t.prototype.setLayout=function(t,e){this.dataIndex>=0&&this.hostTree.data.setItemLayout(this.dataIndex,t,e)},t.prototype.getLayout=function(){return this.hostTree.data.getItemLayout(this.dataIndex)},t.prototype.getModel=function(t){if(!(this.dataIndex<0))return this.hostTree.data.getItemModel(this.dataIndex).getModel(t)},t.prototype.getLevelModel=function(){return(this.hostTree.levelModels||[])[this.depth]},t.prototype.setVisual=function(t,e){this.dataIndex>=0&&this.hostTree.data.setItemVisual(this.dataIndex,t,e)},t.prototype.getVisual=function(t){return this.hostTree.data.getItemVisual(this.dataIndex,t)},t.prototype.getRawIndex=function(){return this.hostTree.data.getRawIndex(this.dataIndex)},t.prototype.getId=function(){return this.hostTree.data.getId(this.dataIndex)},t.prototype.getChildIndex=function(){if(this.parentNode){for(var t=this.parentNode.children,e=0;e<t.length;++e)if(t[e]===this)return e;return-1}return-1},t.prototype.isAncestorOf=function(t){for(var e=t.parentNode;e;){if(e===this)return!0;e=e.parentNode}return!1},t.prototype.isDescendantOf=function(t){return t!==this&&t.isAncestorOf(this)},t}(),CC=function(){function t(t){this.type="tree",this._nodes=[],this.hostModel=t}return t.prototype.eachNode=function(t,e,n){this.root.eachNode(t,e,n)},t.prototype.getNodeByDataIndex=function(t){var e=this.data.getRawIndex(t);return this._nodes[e]},t.prototype.getNodeById=function(t){return this.root.getNodeById(t)},t.prototype.update=function(){for(var t=this.data,e=this._nodes,n=0,i=e.length;n<i;n++)e[n].dataIndex=-1;for(n=0,i=t.count();n<i;n++)e[t.getRawIndex(n)].dataIndex=n},t.prototype.clearLayouts=function(){this.data.clearItemLayouts()},t.createTree=function(e,n,i){var r=new t(n),o=[],a=1;!function t(e,n){var i=e.value;a=Math.max(a,Y(i)?i.length:1),o.push(e);var s=new TC(xo(e.name,""),r);n?function(t,e){var n=e.children;if(t.parentNode===e)return;n.push(t),t.parentNode=e}(s,n):r.root=s,r._nodes.push(s);var l=e.children;if(l)for(var u=0;u<l.length;u++)t(l[u],s)}(e),r.root.updateDepthAndHeight(0);var s=jm(o,{coordDimensions:["value"],dimensionsCount:a}).dimensions,l=new Zm(s,n);return l.initData(o),i&&i(l),mC({mainData:l,struct:r,structAttr:"tree"}),r.update(),r},t}();function DC(t,e,n){if(t&&P(e,t.type)>=0){var i=n.getData().tree.root,r=t.targetNode;if(X(r)&&(r=i.getNodeById(r)),r&&i.contains(r))return{node:r};var o=t.targetNodeId;if(null!=o&&(r=i.getNodeById(o)))return{node:r}}}function AC(t){for(var e=[];t;)(t=t.parentNode)&&e.push(t);return e.reverse()}function kC(t,e){return P(AC(t),e)>=0}function LC(t,e){for(var n=[];t;){var i=t.dataIndex;n.push({name:t.name,dataIndex:i,value:e.getRawValue(i)}),t=t.parentNode}return n.reverse(),n}var PC=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.hasSymbolVisual=!0,e.ignoreStyleOnData=!0,e}return n(e,t),e.prototype.getInitialData=function(t){var e={name:t.name,children:t.data},n=t.leaves||{},i=new pc(n,this,this.ecModel),r=CC.createTree(e,this,(function(t){t.wrapMethod("getItemModel",(function(t,e){var n=r.getNodeByDataIndex(e);return n&&n.children.length&&n.isExpand||(t.parentModel=i),t}))}));var o=0;r.eachNode("preorder",(function(t){t.depth>o&&(o=t.depth)}));var a=t.expandAndCollapse&&t.initialTreeDepth>=0?t.initialTreeDepth:o;return r.root.eachNode("preorder",(function(t){var e=t.hostTree.data.getRawDataItem(t.dataIndex);t.isExpand=e&&null!=e.collapsed?!e.collapsed:t.depth<=a})),r.data},e.prototype.getOrient=function(){var t=this.get("orient");return"horizontal"===t?t="LR":"vertical"===t&&(t="TB"),t},e.prototype.setZoom=function(t){this.option.zoom=t},e.prototype.setCenter=function(t){this.option.center=t},e.prototype.formatTooltip=function(t,e,n){for(var i=this.getData().tree,r=i.root.children[0],o=i.getNodeByDataIndex(t),a=o.getValue(),s=o.name;o&&o!==r;)s=o.parentNode.name+"."+s,o=o.parentNode;return Uf("nameValue",{name:s,value:a,noValue:isNaN(a)||null==a})},e.prototype.getDataParams=function(e){var n=t.prototype.getDataParams.apply(this,arguments),i=this.getData().tree.getNodeByDataIndex(e);return n.treeAncestors=LC(i,this),n},e.type="series.tree",e.layoutMode="box",e.defaultOption={z:2,coordinateSystem:"view",left:"12%",top:"12%",right:"12%",bottom:"12%",layout:"orthogonal",edgeShape:"curve",edgeForkPosition:"50%",roam:!1,nodeScaleRatio:.4,center:null,zoom:1,orient:"LR",symbol:"emptyCircle",symbolSize:7,expandAndCollapse:!0,initialTreeDepth:2,lineStyle:{color:"#ccc",width:1.5,curveness:.5},itemStyle:{color:"lightsteelblue",borderWidth:1.5},label:{show:!0},animationEasing:"linear",animationDuration:700,animationDurationUpdate:500},e}(ag);function OC(t,e){for(var n,i=[t];n=i.pop();)if(e(n),n.isExpand){var r=n.children;if(r.length)for(var o=r.length-1;o>=0;o--)i.push(r[o])}}function RC(t,e){t.eachSeriesByType("tree",(function(t){!function(t,e){var n=function(t,e){return mp(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()})}(t,e);t.layoutInfo=n;var i=t.get("layout"),r=0,o=0,a=null;"radial"===i?(r=2*Math.PI,o=Math.min(n.height,n.width)/2,a=eC((function(t,e){return(t.parentNode===e.parentNode?1:2)/t.depth}))):(r=n.width,o=n.height,a=eC());var s=t.getData().tree.root,l=s.children[0];if(l){!function(t){var e=t;e.hierNode={defaultAncestor:null,ancestor:e,prelim:0,modifier:0,change:0,shift:0,i:0,thread:null};for(var n,i,r=[e];n=r.pop();)if(i=n.children,n.isExpand&&i.length)for(var o=i.length-1;o>=0;o--){var a=i[o];a.hierNode={defaultAncestor:null,ancestor:a,prelim:0,modifier:0,change:0,shift:0,i:o,thread:null},r.push(a)}}(s),function(t,e,n){for(var i,r=[t],o=[];i=r.pop();)if(o.push(i),i.isExpand){var a=i.children;if(a.length)for(var s=0;s<a.length;s++)r.push(a[s])}for(;i=o.pop();)e(i,n)}(l,QT,a),s.hierNode.modifier=-l.hierNode.prelim,OC(l,tC);var u=l,h=l,c=l;OC(l,(function(t){var e=t.getLayout().x;e<u.getLayout().x&&(u=t),e>h.getLayout().x&&(h=t),t.depth>c.depth&&(c=t)}));var p=u===h?1:a(u,h)/2,d=p-u.getLayout().x,f=0,g=0,y=0,v=0;if("radial"===i)f=r/(h.getLayout().x+p+d),g=o/(c.depth-1||1),OC(l,(function(t){y=(t.getLayout().x+d)*f,v=(t.depth-1)*g;var e=nC(y,v);t.setLayout({x:e.x,y:e.y,rawX:y,rawY:v},!0)}));else{var m=t.getOrient();"RL"===m||"LR"===m?(g=o/(h.getLayout().x+p+d),f=r/(c.depth-1||1),OC(l,(function(t){v=(t.getLayout().x+d)*g,y="LR"===m?(t.depth-1)*f:r-(t.depth-1)*f,t.setLayout({x:y,y:v},!0)}))):"TB"!==m&&"BT"!==m||(f=r/(h.getLayout().x+p+d),g=o/(c.depth-1||1),OC(l,(function(t){y=(t.getLayout().x+d)*f,v="TB"===m?(t.depth-1)*g:o-(t.depth-1)*g,t.setLayout({x:y,y:v},!0)})))}}}(t,e)}))}function NC(t){t.eachSeriesByType("tree",(function(t){var e=t.getData();e.tree.eachNode((function(t){var n=t.getModel().getModel("itemStyle").getItemStyle();A(e.ensureUniqueItemVisual(t.dataIndex,"style"),n)}))}))}var EC=["treemapZoomToNode","treemapRender","treemapMove"];function zC(t){var e=t.getData().tree,n={};e.eachNode((function(e){for(var i=e;i&&i.depth>1;)i=i.parentNode;var r=td(t.ecModel,i.name||i.dataIndex+"",n);e.setVisual("decal",r)}))}var VC=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.preventUsingHoverLayer=!0,n}return n(e,t),e.prototype.getInitialData=function(t,e){var n={name:t.name,children:t.data};BC(n);var i=t.levels||[],r=this.designatedVisualItemStyle={},o=new pc({itemStyle:r},this,e),a=z((i=t.levels=function(t,e){var n,i,r=ho(e.get("color")),o=ho(e.get(["aria","decal","decals"]));if(!r)return;E(t=t||[],(function(t){var e=new pc(t),r=e.get("color"),o=e.get("decal");(e.get(["itemStyle","color"])||r&&"none"!==r)&&(n=!0),(e.get(["itemStyle","decal"])||o&&"none"!==o)&&(i=!0)}));var a=t[0]||(t[0]={});n||(a.color=r.slice());!i&&o&&(a.decal=o.slice());return t}(i,e))||[],(function(t){return new pc(t,o,e)}),this),s=CC.createTree(n,this,(function(t){t.wrapMethod("getItemModel",(function(t,e){var n=s.getNodeByDataIndex(e),i=n?a[n.depth]:null;return t.parentModel=i||o,t}))}));return s.data},e.prototype.optionUpdated=function(){this.resetViewRoot()},e.prototype.formatTooltip=function(t,e,n){var i=this.getData(),r=this.getRawValue(t);return Uf("nameValue",{name:i.getName(t),value:r})},e.prototype.getDataParams=function(e){var n=t.prototype.getDataParams.apply(this,arguments),i=this.getData().tree.getNodeByDataIndex(e);return n.treeAncestors=LC(i,this),n.treePathInfo=n.treeAncestors,n},e.prototype.setLayoutInfo=function(t){this.layoutInfo=this.layoutInfo||{},A(this.layoutInfo,t)},e.prototype.mapIdToIndex=function(t){var e=this._idIndexMap;e||(e=this._idIndexMap=ft(),this._idIndexMapCount=0);var n=e.get(t);return null==n&&e.set(t,n=this._idIndexMapCount++),n},e.prototype.getViewRoot=function(){return this._viewRoot},e.prototype.resetViewRoot=function(t){t?this._viewRoot=t:t=this._viewRoot;var e=this.getRawData().tree.root;t&&(t===e||e.contains(t))||(this._viewRoot=e)},e.prototype.enableAriaDecal=function(){zC(this)},e.type="series.treemap",e.layoutMode="box",e.defaultOption={progressive:0,left:"center",top:"middle",width:"80%",height:"80%",sort:!0,clipWindow:"origin",squareRatio:.5*(1+Math.sqrt(5)),leafDepth:null,drillDownIcon:"▶",zoomToNodeRatio:.1024,roam:!0,nodeClick:"zoomToNode",animation:!0,animationDurationUpdate:900,animationEasing:"quinticInOut",breadcrumb:{show:!0,height:22,left:"center",top:"bottom",emptyItemWidth:25,itemStyle:{color:"rgba(0,0,0,0.7)",textStyle:{color:"#fff"}}},label:{show:!0,distance:0,padding:5,position:"inside",color:"#fff",overflow:"truncate"},upperLabel:{show:!1,position:[0,"50%"],height:20,overflow:"truncate",verticalAlign:"middle"},itemStyle:{color:null,colorAlpha:null,colorSaturation:null,borderWidth:0,gapWidth:0,borderColor:"#fff",borderColorSaturation:null},emphasis:{upperLabel:{show:!0,position:[0,"50%"],overflow:"truncate",verticalAlign:"middle"}},visualDimension:0,visualMin:null,visualMax:null,color:[],colorAlpha:null,colorSaturation:null,colorMappingBy:"index",visibleMin:10,childrenVisibleMin:null,levels:[]},e}(ag);function BC(t){var e=0;E(t.children,(function(t){BC(t);var n=t.value;Y(n)&&(n=n[0]),e+=n}));var n=t.value;Y(n)&&(n=n[0]),(null==n||isNaN(n))&&(n=e),n<0&&(n=0),Y(t.value)?t.value[0]=n:t.value=n}var FC=function(){function t(t){this.group=new Cr,t.add(this.group)}return t.prototype.render=function(t,e,n,i){var r=t.getModel("breadcrumb"),o=this.group;if(o.removeAll(),r.get("show")&&n){var a=r.getModel("itemStyle"),s=a.getModel("textStyle"),l={pos:{left:r.get("left"),right:r.get("right"),top:r.get("top"),bottom:r.get("bottom")},box:{width:e.getWidth(),height:e.getHeight()},emptyItemWidth:r.get("emptyItemWidth"),totalWidth:0,renderList:[]};this._prepare(n,l,s),this._renderContent(t,l,a,s,i),xp(o,l.pos,l.box)}},t.prototype._prepare=function(t,e,n){for(var i=t;i;i=i.parentNode){var r=xo(i.getModel().get("name"),""),o=n.getTextRect(r),a=Math.max(o.width+16,e.emptyItemWidth);e.totalWidth+=a+8,e.renderList.push({node:i,text:r,width:a})}},t.prototype._renderContent=function(t,e,n,i,r){for(var o,a,s,l,u,h,c,p,d,f=0,g=e.emptyItemWidth,y=t.get(["breadcrumb","height"]),v=(o=e.pos,a=e.box,l=a.width,u=a.height,h=Er(o.left,l),c=Er(o.top,u),p=Er(o.right,l),d=Er(o.bottom,u),(isNaN(h)||isNaN(parseFloat(o.left)))&&(h=0),(isNaN(p)||isNaN(parseFloat(o.right)))&&(p=l),(isNaN(c)||isNaN(parseFloat(o.top)))&&(c=0),(isNaN(d)||isNaN(parseFloat(o.bottom)))&&(d=u),s=np(s||0),{width:Math.max(p-h-s[1]-s[3],0),height:Math.max(d-c-s[0]-s[2],0)}),m=e.totalWidth,x=e.renderList,_=x.length-1;_>=0;_--){var b=x[_],w=b.node,S=b.width,M=b.text;m>v.width&&(m-=S-g,S=g,M=null);var I=new Lu({shape:{points:GC(f,0,S,y,_===x.length-1,0===_)},style:k(n.getItemStyle(),{lineJoin:"bevel"}),textContent:new As({style:{text:M,fill:i.getTextColor(),font:i.getFont()}}),textConfig:{position:"inside"},z2:1e5,onclick:H(r,w)});I.disableLabelAnimation=!0,this.group.add(I),WC(I,t,w),f+=S+8}},t.prototype.remove=function(){this.group.removeAll()},t}();function GC(t,e,n,i,r,o){var a=[[r?t:t-5,e],[t+n,e],[t+n,e+i],[r?t:t-5,e+i]];return!o&&a.splice(2,0,[t+n+5,e+i/2]),!r&&a.push([t,e+i/2]),a}function WC(t,e,n){Ws(t).eventData={componentType:"series",componentSubType:"treemap",componentIndex:e.componentIndex,seriesIndex:e.seriesIndex,seriesName:e.name,seriesType:"treemap",selfType:"breadcrumb",nodeData:{dataIndex:n&&n.dataIndex,name:n&&n.name},treePathInfo:n&&LC(n,e)}}var HC=function(){function t(){this._storage=[],this._elExistsMap={}}return t.prototype.add=function(t,e,n,i,r){return!this._elExistsMap[t.id]&&(this._elExistsMap[t.id]=!0,this._storage.push({el:t,target:e,duration:n,delay:i,easing:r}),!0)},t.prototype.finished=function(t){return this._finishedCallback=t,this},t.prototype.start=function(){for(var t=this,e=this._storage.length,n=function(){--e<=0&&(t._storage.length=0,t._elExistsMap={},t._finishedCallback&&t._finishedCallback())},i=0,r=this._storage.length;i<r;i++){var o=this._storage[i];o.el.animateTo(o.target,{duration:o.duration,delay:o.delay,easing:o.easing,setToFinal:!0,done:n,aborted:n})}return this},t}();var YC=Cr,UC=Ts,XC="label",ZC="upperLabel",jC=Wo([["fill","color"],["stroke","strokeColor"],["lineWidth","strokeWidth"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["shadowColor"]]),qC=function(t){var e=jC(t);return e.stroke=e.fill=e.lineWidth=null,e},KC=So(),$C=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._state="ready",n._storage={nodeGroup:[],background:[],content:[]},n}return n(e,t),e.prototype.render=function(t,e,n,i){if(!(P(e.findComponents({mainType:"series",subType:"treemap",query:i}),t)<0)){this.seriesModel=t,this.api=n,this.ecModel=e;var r=DC(i,["treemapZoomToNode","treemapRootToNode"],t),o=i&&i.type,a=t.layoutInfo,s=!this._oldTree,l=this._storage,u="treemapRootToNode"===o&&r&&l?{rootNodeGroup:l.nodeGroup[r.node.getRawIndex()],direction:i.direction}:null,h=this._giveContainerGroup(a),c=t.get("animation"),p=this._doRender(h,t,u);!c||s||o&&"treemapZoomToNode"!==o&&"treemapRootToNode"!==o?p.renderFinally():this._doAnimation(h,p,t,u),this._resetController(n),this._renderBreadcrumb(t,n,r)}},e.prototype._giveContainerGroup=function(t){var e=this._containerGroup;return e||(e=this._containerGroup=new YC,this._initEvents(e),this.group.add(e)),e.x=t.x,e.y=t.y,e},e.prototype._doRender=function(t,e,n){var i=e.getData().tree,r=this._oldTree,o={nodeGroup:[],background:[],content:[]},a={nodeGroup:[],background:[],content:[]},s=this._storage,l=[];function u(t,i,r,u){return function(t,e,n,i,r,o,a,s,l,u){if(!a)return;var h=a.getLayout(),c=t.getData(),p=a.getModel();if(c.setItemGraphicEl(a.dataIndex,null),!h||!h.isInView)return;var d=h.width,f=h.height,g=h.borderWidth,y=h.invisible,v=a.getRawIndex(),m=s&&s.getRawIndex(),x=a.viewChildren,_=h.upperHeight,b=x&&x.length,w=p.getModel("itemStyle"),S=p.getModel(["emphasis","itemStyle"]),M=p.getModel(["blur","itemStyle"]),I=p.getModel(["select","itemStyle"]),T=w.get("borderRadius")||0,C=G("nodeGroup",YC);if(!C)return;if(l.add(C),C.x=h.x||0,C.y=h.y||0,C.markRedraw(),KC(C).nodeWidth=d,KC(C).nodeHeight=f,h.isAboveViewRoot)return C;var D=G("background",UC,u,20);D&&E(C,D,b&&h.upperLabelHeight);var k=p.getModel("emphasis"),L=k.get("focus"),P=k.get("blurScope"),O=k.get("disabled"),R="ancestor"===L?a.getAncestorsIndices():"descendant"===L?a.getDescendantIndices():L;if(b)Bl(C)&&Vl(C,!1),D&&(Vl(D,!O),c.setItemGraphicEl(a.dataIndex,D),Rl(D,R,P));else{var N=G("content",UC,u,30);N&&z(C,N),D.disableMorphing=!0,D&&Bl(D)&&Vl(D,!1),Vl(C,!O),c.setItemGraphicEl(a.dataIndex,C),Rl(C,R,P)}return C;function E(e,n,i){var r=Ws(n);if(r.dataIndex=a.dataIndex,r.seriesIndex=t.seriesIndex,n.setShape({x:0,y:0,width:d,height:f,r:T}),y)V(n);else{n.invisible=!1;var o=a.getVisual("style"),s=o.stroke,l=qC(w);l.fill=s;var u=jC(S);u.fill=S.get("borderColor");var h=jC(M);h.fill=M.get("borderColor");var c=jC(I);if(c.fill=I.get("borderColor"),i){var p=d-2*g;B(n,s,o.opacity,{x:g,y:0,width:p,height:_})}else n.removeTextContent();n.setStyle(l),n.ensureState("emphasis").style=u,n.ensureState("blur").style=h,n.ensureState("select").style=c,yl(n)}e.add(n)}function z(e,n){var i=Ws(n);i.dataIndex=a.dataIndex,i.seriesIndex=t.seriesIndex;var r=Math.max(d-2*g,0),o=Math.max(f-2*g,0);if(n.culling=!0,n.setShape({x:g,y:g,width:r,height:o,r:T}),y)V(n);else{n.invisible=!1;var s=a.getVisual("style"),l=s.fill,u=qC(w);u.fill=l,u.decal=s.decal;var h=jC(S),c=jC(M),p=jC(I);B(n,l,s.opacity,null),n.setStyle(u),n.ensureState("emphasis").style=h,n.ensureState("blur").style=c,n.ensureState("select").style=p,yl(n)}e.add(n)}function V(t){!t.invisible&&o.push(t)}function B(e,n,i,r){var o=p.getModel(r?ZC:XC),s=xo(p.get("name"),null),l=o.getShallow("show");Wh(e,Hh(p,r?ZC:XC),{defaultText:l?s:null,inheritColor:n,defaultOpacity:i,labelFetcher:t,labelDataIndex:a.dataIndex});var u=e.getTextContent();if(u){var c=u.style,d=st(c.padding||0);r&&(e.setTextConfig({layoutRect:r}),u.disableLabelLayout=!0),u.beforeUpdate=function(){var t=Math.max((r?r.width:e.shape.width)-d[1]-d[3],0),n=Math.max((r?r.height:e.shape.height)-d[0]-d[2],0);c.width===t&&c.height===n||u.setStyle({width:t,height:n})},c.truncateMinChar=2,c.lineOverflow="truncate",F(c,r,h);var f=u.getState("emphasis");F(f?f.style:null,r,h)}}function F(e,n,i){var r=e?e.text:null;if(!n&&i.isLeafRoot&&null!=r){var o=t.get("drillDownIcon",!0);e.text=o?o+" "+r:r}}function G(t,i,o,a){var s=null!=m&&n[t][m],l=r[t];return s?(n[t][m]=null,W(l,s)):y||((s=new i)instanceof da&&(s.z2=function(t,e){return 100*t+e}(o,a)),H(l,s)),e[t][v]=s}function W(t,e){var n=t[v]={};e instanceof YC?(n.oldX=e.x,n.oldY=e.y):n.oldShape=A({},e.shape)}function H(t,e){var n=t[v]={},o=a.parentNode,s=e instanceof Cr;if(o&&(!i||"drillDown"===i.direction)){var l=0,u=0,h=r.background[o.getRawIndex()];!i&&h&&h.oldShape&&(l=h.oldShape.width,u=h.oldShape.height),s?(n.oldX=0,n.oldY=u):n.oldShape={x:l,y:u,width:0,height:0}}n.fadein=!s}}(e,a,s,n,o,l,t,i,r,u)}!function t(e,n,i,r,o){r?(n=e,E(e,(function(t,e){!t.isRemoved()&&s(e,e)}))):new Sm(n,e,a,a).add(s).update(s).remove(H(s,null)).execute();function a(t){return t.getId()}function s(a,s){var l=null!=a?e[a]:null,h=null!=s?n[s]:null,c=u(l,h,i,o);c&&t(l&&l.viewChildren||[],h&&h.viewChildren||[],c,r,o+1)}}(i.root?[i.root]:[],r&&r.root?[r.root]:[],t,i===r||!r,0);var h=function(t){var e={nodeGroup:[],background:[],content:[]};return t&&E(t,(function(t,n){var i=e[n];E(t,(function(t){t&&(i.push(t),KC(t).willDelete=!0)}))})),e}(s);return this._oldTree=i,this._storage=a,{lastsForAnimation:o,willDeleteEls:h,renderFinally:function(){E(h,(function(t){E(t,(function(t){t.parent&&t.parent.remove(t)}))})),E(l,(function(t){t.invisible=!0,t.dirty()}))}}},e.prototype._doAnimation=function(t,e,n,i){var r=n.get("animationDurationUpdate"),o=n.get("animationEasing"),a=(U(r)?0:r)||0,s=(U(o)?null:o)||"cubicOut",l=new HC;E(e.willDeleteEls,(function(t,e){E(t,(function(t,n){if(!t.invisible){var r,o=t.parent,u=KC(o);if(i&&"drillDown"===i.direction)r=o===i.rootNodeGroup?{shape:{x:0,y:0,width:u.nodeWidth,height:u.nodeHeight},style:{opacity:0}}:{style:{opacity:0}};else{var h=0,c=0;u.willDelete||(h=u.nodeWidth/2,c=u.nodeHeight/2),r="nodeGroup"===e?{x:h,y:c,style:{opacity:0}}:{shape:{x:h,y:c,width:0,height:0},style:{opacity:0}}}r&&l.add(t,r,a,0,s)}}))})),E(this._storage,(function(t,n){E(t,(function(t,i){var r=e.lastsForAnimation[n][i],o={};r&&(t instanceof Cr?null!=r.oldX&&(o.x=t.x,o.y=t.y,t.x=r.oldX,t.y=r.oldY):(r.oldShape&&(o.shape=A({},t.shape),t.setShape(r.oldShape)),r.fadein?(t.setStyle("opacity",0),o.style={opacity:1}):1!==t.style.opacity&&(o.style={opacity:1})),l.add(t,o,a,0,s))}))}),this),this._state="animating",l.finished(W((function(){this._state="ready",e.renderFinally()}),this)).start()},e.prototype._resetController=function(t){var e=this._controller;e||((e=this._controller=new DI(t.getZr())).enable(this.seriesModel.get("roam")),e.on("pan",W(this._onPan,this)),e.on("zoom",W(this._onZoom,this)));var n=new sr(0,0,t.getWidth(),t.getHeight());e.setPointerChecker((function(t,e,i){return n.contain(e,i)}))},e.prototype._clearController=function(){var t=this._controller;t&&(t.dispose(),t=null)},e.prototype._onPan=function(t){if("animating"!==this._state&&(Math.abs(t.dx)>3||Math.abs(t.dy)>3)){var e=this.seriesModel.getData().tree.root;if(!e)return;var n=e.getLayout();if(!n)return;this.api.dispatchAction({type:"treemapMove",from:this.uid,seriesId:this.seriesModel.id,rootRect:{x:n.x+t.dx,y:n.y+t.dy,width:n.width,height:n.height}})}},e.prototype._onZoom=function(t){var e=t.originX,n=t.originY;if("animating"!==this._state){var i=this.seriesModel.getData().tree.root;if(!i)return;var r=i.getLayout();if(!r)return;var o=new sr(r.x,r.y,r.width,r.height),a=this.seriesModel.layoutInfo,s=[1,0,0,1,0,0];Ei(s,s,[-(e-=a.x),-(n-=a.y)]),Vi(s,s,[t.scale,t.scale]),Ei(s,s,[e,n]),o.applyTransform(s),this.api.dispatchAction({type:"treemapRender",from:this.uid,seriesId:this.seriesModel.id,rootRect:{x:o.x,y:o.y,width:o.width,height:o.height}})}},e.prototype._initEvents=function(t){var e=this;t.on("click",(function(t){if("ready"===e._state){var n=e.seriesModel.get("nodeClick",!0);if(n){var i=e.findTarget(t.offsetX,t.offsetY);if(i){var r=i.node;if(r.getLayout().isLeafRoot)e._rootToNode(i);else if("zoomToNode"===n)e._zoomToNode(i);else if("link"===n){var o=r.hostTree.data.getItemModel(r.dataIndex),a=o.get("link",!0),s=o.get("target",!0)||"blank";a&&pp(a,s)}}}}}),this)},e.prototype._renderBreadcrumb=function(t,e,n){var i=this;n||(n=null!=t.get("leafDepth",!0)?{node:t.getViewRoot()}:this.findTarget(e.getWidth()/2,e.getHeight()/2))||(n={node:t.getData().tree.root}),(this._breadcrumb||(this._breadcrumb=new FC(this.group))).render(t,e,n.node,(function(e){"animating"!==i._state&&(kC(t.getViewRoot(),e)?i._rootToNode({node:e}):i._zoomToNode({node:e}))}))},e.prototype.remove=function(){this._clearController(),this._containerGroup&&this._containerGroup.removeAll(),this._storage={nodeGroup:[],background:[],content:[]},this._state="ready",this._breadcrumb&&this._breadcrumb.remove()},e.prototype.dispose=function(){this._clearController()},e.prototype._zoomToNode=function(t){this.api.dispatchAction({type:"treemapZoomToNode",from:this.uid,seriesId:this.seriesModel.id,targetNode:t.node})},e.prototype._rootToNode=function(t){this.api.dispatchAction({type:"treemapRootToNode",from:this.uid,seriesId:this.seriesModel.id,targetNode:t.node})},e.prototype.findTarget=function(t,e){var n;return this.seriesModel.getViewRoot().eachNode({attr:"viewChildren",order:"preorder"},(function(i){var r=this._storage.background[i.getRawIndex()];if(r){var o=r.transformCoordToLocal(t,e),a=r.shape;if(!(a.x<=o[0]&&o[0]<=a.x+a.width&&a.y<=o[1]&&o[1]<=a.y+a.height))return!1;n={node:i,offsetX:o[0],offsetY:o[1]}}}),this),n},e.type="treemap",e}(mg);var JC=E,QC=q,tD=-1,eD=function(){function t(e){var n=e.mappingMethod,i=e.type,r=this.option=T(e);this.type=i,this.mappingMethod=n,this._normalizeData=cD[n];var o=t.visualHandlers[i];this.applyVisual=o.applyVisual,this.getColorMapper=o.getColorMapper,this._normalizedToVisual=o._normalizedToVisual[n],"piecewise"===n?(nD(r),function(t){var e=t.pieceList;t.hasSpecialVisual=!1,E(e,(function(e,n){e.originIndex=n,null!=e.visual&&(t.hasSpecialVisual=!0)}))}(r)):"category"===n?r.categories?function(t){var e=t.categories,n=t.categoryMap={},i=t.visual;if(JC(e,(function(t,e){n[t]=e})),!Y(i)){var r=[];q(i)?JC(i,(function(t,e){var i=n[e];r[null!=i?i:tD]=t})):r[-1]=i,i=hD(t,r)}for(var o=e.length-1;o>=0;o--)null==i[o]&&(delete n[e[o]],e.pop())}(r):nD(r,!0):(lt("linear"!==n||r.dataExtent),nD(r))}return t.prototype.mapValueToVisual=function(t){var e=this._normalizeData(t);return this._normalizedToVisual(e,t)},t.prototype.getNormalizer=function(){return W(this._normalizeData,this)},t.listVisualTypes=function(){return G(t.visualHandlers)},t.isValidType=function(e){return t.visualHandlers.hasOwnProperty(e)},t.eachVisual=function(t,e,n){q(t)?E(t,e,n):e.call(n,t)},t.mapVisual=function(e,n,i){var r,o=Y(e)?[]:q(e)?{}:(r=!0,null);return t.eachVisual(e,(function(t,e){var a=n.call(i,t,e);r?o=a:o[e]=a})),o},t.retrieveVisuals=function(e){var n,i={};return e&&JC(t.visualHandlers,(function(t,r){e.hasOwnProperty(r)&&(i[r]=e[r],n=!0)})),n?i:null},t.prepareVisualTypes=function(t){if(Y(t))t=t.slice();else{if(!QC(t))return[];var e=[];JC(t,(function(t,n){e.push(n)})),t=e}return t.sort((function(t,e){return"color"===e&&"color"!==t&&0===t.indexOf("color")?1:-1})),t},t.dependsOn=function(t,e){return"color"===e?!(!t||0!==t.indexOf(e)):t===e},t.findPieceIndex=function(t,e,n){for(var i,r=1/0,o=0,a=e.length;o<a;o++){var s=e[o].value;if(null!=s){if(s===t||X(s)&&s===t+"")return o;n&&c(s,o)}}for(o=0,a=e.length;o<a;o++){var l=e[o],u=l.interval,h=l.close;if(u){if(u[0]===-1/0){if(pD(h[1],t,u[1]))return o}else if(u[1]===1/0){if(pD(h[0],u[0],t))return o}else if(pD(h[0],u[0],t)&&pD(h[1],t,u[1]))return o;n&&c(u[0],o),n&&c(u[1],o)}}if(n)return t===1/0?e.length-1:t===-1/0?0:i;function c(e,n){var o=Math.abs(e-t);o<r&&(r=o,i=n)}},t.visualHandlers={color:{applyVisual:oD("color"),getColorMapper:function(){var t=this.option;return W("category"===t.mappingMethod?function(t,e){return!e&&(t=this._normalizeData(t)),aD.call(this,t)}:function(e,n,i){var r=!!i;return!n&&(e=this._normalizeData(e)),i=Mn(e,t.parsedVisual,i),r?i:kn(i,"rgba")},this)},_normalizedToVisual:{linear:function(t){return kn(Mn(t,this.option.parsedVisual),"rgba")},category:aD,piecewise:function(t,e){var n=uD.call(this,e);return null==n&&(n=kn(Mn(t,this.option.parsedVisual),"rgba")),n},fixed:sD}},colorHue:iD((function(t,e){return Dn(t,e)})),colorSaturation:iD((function(t,e){return Dn(t,null,e)})),colorLightness:iD((function(t,e){return Dn(t,null,null,e)})),colorAlpha:iD((function(t,e){return An(t,e)})),decal:{applyVisual:oD("decal"),_normalizedToVisual:{linear:null,category:aD,piecewise:null,fixed:null}},opacity:{applyVisual:oD("opacity"),_normalizedToVisual:lD([0,1])},liftZ:{applyVisual:oD("liftZ"),_normalizedToVisual:{linear:sD,category:sD,piecewise:sD,fixed:sD}},symbol:{applyVisual:function(t,e,n){n("symbol",this.mapValueToVisual(t))},_normalizedToVisual:{linear:rD,category:aD,piecewise:function(t,e){var n=uD.call(this,e);return null==n&&(n=rD.call(this,t)),n},fixed:sD}},symbolSize:{applyVisual:oD("symbolSize"),_normalizedToVisual:lD([0,1])}},t}();function nD(t,e){var n=t.visual,i=[];q(n)?JC(n,(function(t){i.push(t)})):null!=n&&i.push(n);e||1!==i.length||{color:1,symbol:1}.hasOwnProperty(t.type)||(i[1]=i[0]),hD(t,i)}function iD(t){return{applyVisual:function(e,n,i){var r=this.mapValueToVisual(e);i("color",t(n("color"),r))},_normalizedToVisual:lD([0,1])}}function rD(t){var e=this.option.visual;return e[Math.round(Nr(t,[0,1],[0,e.length-1],!0))]||{}}function oD(t){return function(e,n,i){i(t,this.mapValueToVisual(e))}}function aD(t){var e=this.option.visual;return e[this.option.loop&&t!==tD?t%e.length:t]}function sD(){return this.option.visual[0]}function lD(t){return{linear:function(e){return Nr(e,t,this.option.visual,!0)},category:aD,piecewise:function(e,n){var i=uD.call(this,n);return null==i&&(i=Nr(e,t,this.option.visual,!0)),i},fixed:sD}}function uD(t){var e=this.option,n=e.pieceList;if(e.hasSpecialVisual){var i=n[eD.findPieceIndex(t,n)];if(i&&i.visual)return i.visual[this.type]}}function hD(t,e){return t.visual=e,"color"===t.type&&(t.parsedVisual=z(e,(function(t){return bn(t)}))),e}var cD={linear:function(t){return Nr(t,this.option.dataExtent,[0,1],!0)},piecewise:function(t){var e=this.option.pieceList,n=eD.findPieceIndex(t,e,!0);if(null!=n)return Nr(n,[0,e.length-1],[0,1],!0)},category:function(t){var e=this.option.categories?this.option.categoryMap[t]:t;return null==e?tD:e},fixed:xt};function pD(t,e,n){return t?e<=n:e<n}var dD=So(),fD={seriesType:"treemap",reset:function(t){var e=t.getData().tree.root;e.isRemoved()||gD(e,{},t.getViewRoot().getAncestors(),t)}};function gD(t,e,n,i){var r=t.getModel(),o=t.getLayout(),a=t.hostTree.data;if(o&&!o.invisible&&o.isInView){var s,l=r.getModel("itemStyle"),u=function(t,e,n){var i=A({},e),r=n.designatedVisualItemStyle;return E(["color","colorAlpha","colorSaturation"],(function(n){r[n]=e[n];var o=t.get(n);r[n]=null,null!=o&&(i[n]=o)})),i}(l,e,i),h=a.ensureUniqueItemVisual(t.dataIndex,"style"),c=l.get("borderColor"),p=l.get("borderColorSaturation");null!=p&&(c=function(t,e){return null!=e?Dn(e,null,null,t):null}(p,s=yD(u))),h.stroke=c;var d=t.viewChildren;if(d&&d.length){var f=function(t,e,n,i,r,o){if(!o||!o.length)return;var a=mD(e,"color")||null!=r.color&&"none"!==r.color&&(mD(e,"colorAlpha")||mD(e,"colorSaturation"));if(!a)return;var s=e.get("visualMin"),l=e.get("visualMax"),u=n.dataExtent.slice();null!=s&&s<u[0]&&(u[0]=s),null!=l&&l>u[1]&&(u[1]=l);var h=e.get("colorMappingBy"),c={type:a.name,dataExtent:u,visual:a.range};"color"!==c.type||"index"!==h&&"id"!==h?c.mappingMethod="linear":(c.mappingMethod="category",c.loop=!0);var p=new eD(c);return dD(p).drColorMappingBy=h,p}(0,r,o,0,u,d);E(d,(function(t,e){if(t.depth>=n.length||t===n[t.depth]){var o=function(t,e,n,i,r,o){var a=A({},e);if(r){var s=r.type,l="color"===s&&dD(r).drColorMappingBy,u="index"===l?i:"id"===l?o.mapIdToIndex(n.getId()):n.getValue(t.get("visualDimension"));a[s]=r.mapValueToVisual(u)}return a}(r,u,t,e,f,i);gD(t,o,n,i)}}))}else s=yD(u),h.fill=s}}function yD(t){var e=vD(t,"color");if(e){var n=vD(t,"colorAlpha"),i=vD(t,"colorSaturation");return i&&(e=Dn(e,null,null,i)),n&&(e=An(e,n)),e}}function vD(t,e){var n=t[e];if(null!=n&&"none"!==n)return n}function mD(t,e){var n=t.get(e);return Y(n)&&n.length?{name:e,range:n}:null}var xD=Math.max,_D=Math.min,bD=it,wD=E,SD=["itemStyle","borderWidth"],MD=["itemStyle","gapWidth"],ID=["upperLabel","show"],TD=["upperLabel","height"],CD={seriesType:"treemap",reset:function(t,e,n,i){var r=n.getWidth(),o=n.getHeight(),a=t.option,s=mp(t.getBoxLayoutParams(),{width:n.getWidth(),height:n.getHeight()}),l=a.size||[],u=Er(bD(s.width,l[0]),r),h=Er(bD(s.height,l[1]),o),c=i&&i.type,p=DC(i,["treemapZoomToNode","treemapRootToNode"],t),d="treemapRender"===c||"treemapMove"===c?i.rootRect:null,f=t.getViewRoot(),g=AC(f);if("treemapMove"!==c){var y="treemapZoomToNode"===c?function(t,e,n,i,r){var o,a=(e||{}).node,s=[i,r];if(!a||a===n)return s;var l=i*r,u=l*t.option.zoomToNodeRatio;for(;o=a.parentNode;){for(var h=0,c=o.children,p=0,d=c.length;p<d;p++)h+=c[p].getValue();var f=a.getValue();if(0===f)return s;u*=h/f;var g=o.getModel(),y=g.get(SD);(u+=4*y*y+(3*y+Math.max(y,PD(g)))*Math.pow(u,.5))>Yr&&(u=Yr),a=o}u<l&&(u=l);var v=Math.pow(u/l,.5);return[i*v,r*v]}(t,p,f,u,h):d?[d.width,d.height]:[u,h],v=a.sort;v&&"asc"!==v&&"desc"!==v&&(v="desc");var m={squareRatio:a.squareRatio,sort:v,leafDepth:a.leafDepth};f.hostTree.clearLayouts();var x={x:0,y:0,width:y[0],height:y[1],area:y[0]*y[1]};f.setLayout(x),DD(f,m,!1,0),x=f.getLayout(),wD(g,(function(t,e){var n=(g[e+1]||f).getValue();t.setLayout(A({dataExtent:[n,n],borderWidth:0,upperHeight:0},x))}))}var _=t.getData().tree.root;_.setLayout(function(t,e,n){if(e)return{x:e.x,y:e.y};var i={x:0,y:0};if(!n)return i;var r=n.node,o=r.getLayout();if(!o)return i;var a=[o.width/2,o.height/2],s=r;for(;s;){var l=s.getLayout();a[0]+=l.x,a[1]+=l.y,s=s.parentNode}return{x:t.width/2-a[0],y:t.height/2-a[1]}}(s,d,p),!0),t.setLayoutInfo(s),LD(_,new sr(-s.x,-s.y,r,o),g,f,0)}};function DD(t,e,n,i){var r,o;if(!t.isRemoved()){var a=t.getLayout();r=a.width,o=a.height;var s=t.getModel(),l=s.get(SD),u=s.get(MD)/2,h=PD(s),c=Math.max(l,h),p=l-u,d=c-u;t.setLayout({borderWidth:l,upperHeight:c,upperLabelHeight:h},!0);var f=(r=xD(r-2*p,0))*(o=xD(o-p-d,0)),g=function(t,e,n,i,r,o){var a=t.children||[],s=i.sort;"asc"!==s&&"desc"!==s&&(s=null);var l=null!=i.leafDepth&&i.leafDepth<=o;if(r&&!l)return t.viewChildren=[];!function(t,e){e&&t.sort((function(t,n){var i="asc"===e?t.getValue()-n.getValue():n.getValue()-t.getValue();return 0===i?"asc"===e?t.dataIndex-n.dataIndex:n.dataIndex-t.dataIndex:i}))}(a=B(a,(function(t){return!t.isRemoved()})),s);var u=function(t,e,n){for(var i=0,r=0,o=e.length;r<o;r++)i+=e[r].getValue();var a,s=t.get("visualDimension");e&&e.length?"value"===s&&n?(a=[e[e.length-1].getValue(),e[0].getValue()],"asc"===n&&a.reverse()):(a=[1/0,-1/0],wD(e,(function(t){var e=t.getValue(s);e<a[0]&&(a[0]=e),e>a[1]&&(a[1]=e)}))):a=[NaN,NaN];return{sum:i,dataExtent:a}}(e,a,s);if(0===u.sum)return t.viewChildren=[];if(u.sum=function(t,e,n,i,r){if(!i)return n;for(var o=t.get("visibleMin"),a=r.length,s=a,l=a-1;l>=0;l--){var u=r["asc"===i?a-l-1:l].getValue();u/n*e<o&&(s=l,n-=u)}return"asc"===i?r.splice(0,a-s):r.splice(s,a-s),n}(e,n,u.sum,s,a),0===u.sum)return t.viewChildren=[];for(var h=0,c=a.length;h<c;h++){var p=a[h].getValue()/u.sum*n;a[h].setLayout({area:p})}l&&(a.length&&t.setLayout({isLeafRoot:!0},!0),a.length=0);return t.viewChildren=a,t.setLayout({dataExtent:u.dataExtent},!0),a}(t,s,f,e,n,i);if(g.length){var y={x:p,y:d,width:r,height:o},v=_D(r,o),m=1/0,x=[];x.area=0;for(var _=0,b=g.length;_<b;){var w=g[_];x.push(w),x.area+=w.getLayout().area;var S=AD(x,v,e.squareRatio);S<=m?(_++,m=S):(x.area-=x.pop().getLayout().area,kD(x,v,y,u,!1),v=_D(y.width,y.height),x.length=x.area=0,m=1/0)}if(x.length&&kD(x,v,y,u,!0),!n){var M=s.get("childrenVisibleMin");null!=M&&f<M&&(n=!0)}for(_=0,b=g.length;_<b;_++)DD(g[_],e,n,i+1)}}}function AD(t,e,n){for(var i=0,r=1/0,o=0,a=void 0,s=t.length;o<s;o++)(a=t[o].getLayout().area)&&(a<r&&(r=a),a>i&&(i=a));var l=t.area*t.area,u=e*e*n;return l?xD(u*i/l,l/(u*r)):1/0}function kD(t,e,n,i,r){var o=e===n.width?0:1,a=1-o,s=["x","y"],l=["width","height"],u=n[s[o]],h=e?t.area/e:0;(r||h>n[l[a]])&&(h=n[l[a]]);for(var c=0,p=t.length;c<p;c++){var d=t[c],f={},g=h?d.getLayout().area/h:0,y=f[l[a]]=xD(h-2*i,0),v=n[s[o]]+n[l[o]]-u,m=c===p-1||v<g?v:g,x=f[l[o]]=xD(m-2*i,0);f[s[a]]=n[s[a]]+_D(i,y/2),f[s[o]]=u+_D(i,x/2),u+=m,d.setLayout(f,!0)}n[s[a]]+=h,n[l[a]]-=h}function LD(t,e,n,i,r){var o=t.getLayout(),a=n[r],s=a&&a===t;if(!(a&&!s||r===n.length&&t!==i)){t.setLayout({isInView:!0,invisible:!s&&!e.intersect(o),isAboveViewRoot:s},!0);var l=new sr(e.x-o.x,e.y-o.y,e.width,e.height);wD(t.viewChildren||[],(function(t){LD(t,l,n,i,r+1)}))}}function PD(t){return t.get(ID)?t.get(TD):0}function OD(t){var e=t.findComponents({mainType:"legend"});e&&e.length&&t.eachSeriesByType("graph",(function(t){var n=t.getCategoriesData(),i=t.getGraph().data,r=n.mapArray(n.getName);i.filterSelf((function(t){var n=i.getItemModel(t).getShallow("category");if(null!=n){j(n)&&(n=r[n]);for(var o=0;o<e.length;o++)if(!e[o].isSelected(n))return!1}return!0}))}))}function RD(t){var e={};t.eachSeriesByType("graph",(function(t){var n=t.getCategoriesData(),i=t.getData(),r={};n.each((function(i){var o=n.getName(i);r["ec-"+o]=i;var a=n.getItemModel(i),s=a.getModel("itemStyle").getItemStyle();s.fill||(s.fill=t.getColorFromPalette(o,e)),n.setItemVisual(i,"style",s);for(var l=["symbol","symbolSize","symbolKeepAspect"],u=0;u<l.length;u++){var h=a.getShallow(l[u],!0);null!=h&&n.setItemVisual(i,l[u],h)}})),n.count()&&i.each((function(t){var e=i.getItemModel(t).getShallow("category");if(null!=e){X(e)&&(e=r["ec-"+e]);var o=n.getItemVisual(e,"style");A(i.ensureUniqueItemVisual(t,"style"),o);for(var a=["symbol","symbolSize","symbolKeepAspect"],s=0;s<a.length;s++)i.setItemVisual(t,a[s],n.getItemVisual(e,a[s]))}}))}))}function ND(t){return t instanceof Array||(t=[t,t]),t}function ED(t){t.eachSeriesByType("graph",(function(t){var e=t.getGraph(),n=t.getEdgeData(),i=ND(t.get("edgeSymbol")),r=ND(t.get("edgeSymbolSize"));n.setVisual("fromSymbol",i&&i[0]),n.setVisual("toSymbol",i&&i[1]),n.setVisual("fromSymbolSize",r&&r[0]),n.setVisual("toSymbolSize",r&&r[1]),n.setVisual("style",t.getModel("lineStyle").getLineStyle()),n.each((function(t){var i=n.getItemModel(t),r=e.getEdgeByIndex(t),o=ND(i.getShallow("symbol",!0)),a=ND(i.getShallow("symbolSize",!0)),s=i.getModel("lineStyle").getLineStyle(),l=n.ensureUniqueItemVisual(t,"style");switch(A(l,s),l.stroke){case"source":var u=r.node1.getVisual("style");l.stroke=u&&u.fill;break;case"target":u=r.node2.getVisual("style");l.stroke=u&&u.fill}o[0]&&r.setVisual("fromSymbol",o[0]),o[1]&&r.setVisual("toSymbol",o[1]),a[0]&&r.setVisual("fromSymbolSize",a[0]),a[1]&&r.setVisual("toSymbolSize",a[1])}))}))}var zD="--\x3e",VD=function(t){return t.get("autoCurveness")||null},BD=function(t,e){var n=VD(t),i=20,r=[];if(j(n))i=n;else if(Y(n))return void(t.__curvenessList=n);e>i&&(i=e);var o=i%2?i+2:i+3;r=[];for(var a=0;a<o;a++)r.push((a%2?a+1:a)/10*(a%2?-1:1));t.__curvenessList=r},FD=function(t,e,n){var i=[t.id,t.dataIndex].join("."),r=[e.id,e.dataIndex].join(".");return[n.uid,i,r].join(zD)},GD=function(t){var e=t.split(zD);return[e[0],e[2],e[1]].join(zD)},WD=function(t,e){var n=e.__edgeMap;return n[t]?n[t].length:0};function HD(t,e,n,i){var r=VD(e),o=Y(r);if(!r)return null;var a=function(t,e){var n=FD(t.node1,t.node2,e);return e.__edgeMap[n]}(t,e);if(!a)return null;for(var s=-1,l=0;l<a.length;l++)if(a[l]===n){s=l;break}var u=function(t,e){return WD(FD(t.node1,t.node2,e),e)+WD(FD(t.node2,t.node1,e),e)}(t,e);BD(e,u),t.lineStyle=t.lineStyle||{};var h=FD(t.node1,t.node2,e),c=e.__curvenessList,p=o||u%2?0:1;if(a.isForward)return c[p+s];var d=GD(h),f=WD(d,e),g=c[s+f+p];return i?o?r&&0===r[0]?(f+p)%2?g:-g:((f%2?0:1)+p)%2?g:-g:(f+p)%2?g:-g:c[s+f+p]}function YD(t){var e=t.coordinateSystem;if(!e||"view"===e.type){var n=t.getGraph();n.eachNode((function(t){var e=t.getModel();t.setLayout([+e.get("x"),+e.get("y")])})),UD(n,t)}}function UD(t,e){t.eachEdge((function(t,n){var i=ot(t.getModel().get(["lineStyle","curveness"]),-HD(t,e,n,!0),0),r=Mt(t.node1.getLayout()),o=Mt(t.node2.getLayout()),a=[r,o];+i&&a.push([(r[0]+o[0])/2-(r[1]-o[1])*i,(r[1]+o[1])/2-(o[0]-r[0])*i]),t.setLayout(a)}))}function XD(t,e){t.eachSeriesByType("graph",(function(t){var e=t.get("layout"),n=t.coordinateSystem;if(n&&"view"!==n.type){var i=t.getData(),r=[];E(n.dimensions,(function(t){r=r.concat(i.mapDimensionsAll(t))}));for(var o=0;o<i.count();o++){for(var a=[],s=!1,l=0;l<r.length;l++){var u=i.get(r[l],o);isNaN(u)||(s=!0),a.push(u)}s?i.setItemLayout(o,n.dataToPoint(a)):i.setItemLayout(o,[NaN,NaN])}UD(i.graph,t)}else e&&"none"!==e||YD(t)}))}function ZD(t){var e=t.coordinateSystem;if("view"!==e.type)return 1;var n=t.option.nodeScaleRatio,i=e.scaleX;return((e.getZoom()-1)*n+1)/i}function jD(t){var e=t.getVisual("symbolSize");return e instanceof Array&&(e=(e[0]+e[1])/2),+e}var qD=Math.PI,KD=[];function $D(t,e){var n=t.coordinateSystem;if(!n||"view"===n.type){var i=n.getBoundingRect(),r=t.getData(),o=r.graph,a=i.width/2+i.x,s=i.height/2+i.y,l=Math.min(i.width,i.height)/2,u=r.count();r.setLayout({cx:a,cy:s}),u&&(JD[e](t,o,r,l,a,s,u),o.eachEdge((function(e,n){var i,r=ot(e.getModel().get(["lineStyle","curveness"]),HD(e,t,n),0),o=Mt(e.node1.getLayout()),l=Mt(e.node2.getLayout()),u=(o[0]+l[0])/2,h=(o[1]+l[1])/2;+r&&(i=[a*(r*=3)+u*(1-r),s*r+h*(1-r)]),e.setLayout([o,l,i])})))}}var JD={value:function(t,e,n,i,r,o,a){var s=0,l=n.getSum("value"),u=2*Math.PI/(l||a);e.eachNode((function(t){var e=t.getValue("value"),n=u*(l?e:1)/2;s+=n,t.setLayout([i*Math.cos(s)+r,i*Math.sin(s)+o]),s+=n}))},symbolSize:function(t,e,n,i,r,o,a){var s=0;KD.length=a;var l=ZD(t);e.eachNode((function(t){var e=jD(t);isNaN(e)&&(e=2),e<0&&(e=0),e*=l;var n=Math.asin(e/2/i);isNaN(n)&&(n=qD/2),KD[t.dataIndex]=n,s+=2*n}));var u=(2*qD-s)/a/2,h=0;e.eachNode((function(t){var e=u+KD[t.dataIndex];h+=e,t.setLayout([i*Math.cos(h)+r,i*Math.sin(h)+o]),h+=e}))}};function QD(t){t.eachSeriesByType("graph",(function(t){"circular"===t.get("layout")&&$D(t,"symbolSize")}))}var tA=Ct;function eA(t){t.eachSeriesByType("graph",(function(t){var e=t.coordinateSystem;if(!e||"view"===e.type)if("force"===t.get("layout")){var n=t.preservedPoints||{},i=t.getGraph(),r=i.data,o=i.edgeData,a=t.getModel("force"),s=a.get("initLayout");t.preservedPoints?r.each((function(t){var e=r.getId(t);r.setItemLayout(t,n[e]||[NaN,NaN])})):s&&"none"!==s?"circular"===s&&$D(t,"value"):YD(t);var l=r.getDataExtent("value"),u=o.getDataExtent("value"),h=a.get("repulsion"),c=a.get("edgeLength"),p=Y(h)?h:[h,h],d=Y(c)?c:[c,c];d=[d[1],d[0]];var f=r.mapArray("value",(function(t,e){var n=r.getItemLayout(e),i=Nr(t,l,p);return isNaN(i)&&(i=(p[0]+p[1])/2),{w:i,rep:i,fixed:r.getItemModel(e).get("fixed"),p:!n||isNaN(n[0])||isNaN(n[1])?null:n}})),g=o.mapArray("value",(function(e,n){var r=i.getEdgeByIndex(n),o=Nr(e,u,d);isNaN(o)&&(o=(d[0]+d[1])/2);var a=r.getModel(),s=ot(r.getModel().get(["lineStyle","curveness"]),-HD(r,t,n,!0),0);return{n1:f[r.node1.dataIndex],n2:f[r.node2.dataIndex],d:o,curveness:s,ignoreForceLayout:a.get("ignoreForceLayout")}})),y=e.getBoundingRect(),v=function(t,e,n){for(var i=t,r=e,o=n.rect,a=o.width,s=o.height,l=[o.x+a/2,o.y+s/2],u=null==n.gravity?.1:n.gravity,h=0;h<i.length;h++){var c=i[h];c.p||(c.p=wt(a*(Math.random()-.5)+l[0],s*(Math.random()-.5)+l[1])),c.pp=Mt(c.p),c.edges=null}var p,d,f=null==n.friction?.6:n.friction,g=f;return{warmUp:function(){g=.8*f},setFixed:function(t){i[t].fixed=!0},setUnfixed:function(t){i[t].fixed=!1},beforeStep:function(t){p=t},afterStep:function(t){d=t},step:function(t){p&&p(i,r);for(var e=[],n=i.length,o=0;o<r.length;o++){var a=r[o];if(!a.ignoreForceLayout){var s=a.n1;Dt(e,(y=a.n2).p,s.p);var h=At(e)-a.d,c=y.w/(s.w+y.w);isNaN(c)&&(c=0),Rt(e,e),!s.fixed&&tA(s.p,s.p,e,c*h*g),!y.fixed&&tA(y.p,y.p,e,-(1-c)*h*g)}}for(o=0;o<n;o++)(x=i[o]).fixed||(Dt(e,l,x.p),tA(x.p,x.p,e,u*g));for(o=0;o<n;o++){s=i[o];for(var f=o+1;f<n;f++){var y;Dt(e,(y=i[f]).p,s.p),0===(h=At(e))&&(It(e,Math.random()-.5,Math.random()-.5),h=1);var v=(s.rep+y.rep)/h/h;!s.fixed&&tA(s.pp,s.pp,e,v),!y.fixed&&tA(y.pp,y.pp,e,-v)}}var m=[];for(o=0;o<n;o++){var x;(x=i[o]).fixed||(Dt(m,x.p,x.pp),tA(x.p,x.p,m,g),St(x.pp,x.p))}var _=(g*=.992)<.01;d&&d(i,r,_),t&&t(_)}}}(f,g,{rect:y,gravity:a.get("gravity"),friction:a.get("friction")});v.beforeStep((function(t,e){for(var n=0,r=t.length;n<r;n++)t[n].fixed&&St(t[n].p,i.getNodeByIndex(n).getLayout())})),v.afterStep((function(t,e,o){for(var a=0,s=t.length;a<s;a++)t[a].fixed||i.getNodeByIndex(a).setLayout(t[a].p),n[r.getId(a)]=t[a].p;for(a=0,s=e.length;a<s;a++){var l=e[a],u=i.getEdgeByIndex(a),h=l.n1.p,c=l.n2.p,p=u.getLayout();(p=p?p.slice():[])[0]=p[0]||[],p[1]=p[1]||[],St(p[0],h),St(p[1],c),+l.curveness&&(p[2]=[(h[0]+c[0])/2-(h[1]-c[1])*l.curveness,(h[1]+c[1])/2-(c[0]-h[0])*l.curveness]),u.setLayout(p)}})),t.forceLayout=v,t.preservedPoints=n,v.step()}else t.forceLayout=null}))}function nA(t,e){var n=[];return t.eachSeriesByType("graph",(function(t){var i=t.get("coordinateSystem");if(!i||"view"===i){var r=t.getData(),o=[],a=[];Ma(r.mapArray((function(t){var e=r.getItemModel(t);return[+e.get("x"),+e.get("y")]})),o,a),a[0]-o[0]==0&&(a[0]+=1,o[0]-=1),a[1]-o[1]==0&&(a[1]+=1,o[1]-=1);var s=(a[0]-o[0])/(a[1]-o[1]),l=function(t,e,n){return mp(A(t.getBoxLayoutParams(),{aspect:n}),{width:e.getWidth(),height:e.getHeight()})}(t,e,s);isNaN(s)&&(o=[l.x,l.y],a=[l.x+l.width,l.y+l.height]);var u=a[0]-o[0],h=a[1]-o[1],c=l.width,p=l.height,d=t.coordinateSystem=new BT;d.zoomLimit=t.get("scaleLimit"),d.setBoundingRect(o[0],o[1],u,h),d.setViewRect(l.x,l.y,c,p),d.setCenter(t.get("center")),d.setZoom(t.get("zoom")),n.push(d)}})),n}var iA=Eu.prototype,rA=Fu.prototype,oA=function(){this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.percent=1};!function(t){function e(){return null!==t&&t.apply(this,arguments)||this}n(e,t)}(oA);function aA(t){return isNaN(+t.cpx1)||isNaN(+t.cpy1)}var sA=function(t){function e(e){var n=t.call(this,e)||this;return n.type="ec-line",n}return n(e,t),e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new oA},e.prototype.buildPath=function(t,e){aA(e)?iA.buildPath.call(this,t,e):rA.buildPath.call(this,t,e)},e.prototype.pointAt=function(t){return aA(this.shape)?iA.pointAt.call(this,t):rA.pointAt.call(this,t)},e.prototype.tangentAt=function(t){var e=this.shape,n=aA(e)?[e.x2-e.x1,e.y2-e.y1]:rA.tangentAt.call(this,t);return Rt(n,n)},e}(fs),lA=["fromSymbol","toSymbol"];function uA(t){return"_"+t+"Type"}function hA(t,e,n){var i=e.getItemVisual(n,t);if(i&&"none"!==i){var r=e.getItemVisual(n,t+"Size"),o=e.getItemVisual(n,t+"Rotate"),a=e.getItemVisual(n,t+"Offset"),s=e.getItemVisual(n,t+"KeepAspect"),l=Ly(r),u=Py(a||0,l),h=ky(i,-l[0]/2+u[0],-l[1]/2+u[1],l[0],l[1],null,s);return h.__specifiedRotation=null==o||isNaN(o)?void 0:+o*Math.PI/180||0,h.name=t,h}}function cA(t,e){t.x1=e[0][0],t.y1=e[0][1],t.x2=e[1][0],t.y2=e[1][1],t.percent=1;var n=e[2];n?(t.cpx1=n[0],t.cpy1=n[1]):(t.cpx1=NaN,t.cpy1=NaN)}var pA=function(t){function e(e,n,i){var r=t.call(this)||this;return r._createLine(e,n,i),r}return n(e,t),e.prototype._createLine=function(t,e,n){var i=t.hostModel,r=function(t){var e=new sA({name:"line",subPixelOptimize:!0});return cA(e.shape,t),e}(t.getItemLayout(e));r.shape.percent=0,rh(r,{shape:{percent:1}},i,e),this.add(r),E(lA,(function(n){var i=hA(n,t,e);this.add(i),this[uA(n)]=t.getItemVisual(e,n)}),this),this._updateCommonStl(t,e,n)},e.prototype.updateData=function(t,e,n){var i=t.hostModel,r=this.childOfName("line"),o=t.getItemLayout(e),a={shape:{}};cA(a.shape,o),ih(r,a,i,e),E(lA,(function(n){var i=t.getItemVisual(e,n),r=uA(n);if(this[r]!==i){this.remove(this.childOfName(n));var o=hA(n,t,e);this.add(o)}this[r]=i}),this),this._updateCommonStl(t,e,n)},e.prototype.getLinePath=function(){return this.childAt(0)},e.prototype._updateCommonStl=function(t,e,n){var i=t.hostModel,r=this.childOfName("line"),o=n&&n.emphasisLineStyle,a=n&&n.blurLineStyle,s=n&&n.selectLineStyle,l=n&&n.labelStatesModels,u=n&&n.emphasisDisabled,h=n&&n.focus,c=n&&n.blurScope;if(!n||t.hasItemOption){var p=t.getItemModel(e),d=p.getModel("emphasis");o=d.getModel("lineStyle").getLineStyle(),a=p.getModel(["blur","lineStyle"]).getLineStyle(),s=p.getModel(["select","lineStyle"]).getLineStyle(),u=d.get("disabled"),h=d.get("focus"),c=d.get("blurScope"),l=Hh(p)}var f=t.getItemVisual(e,"style"),g=f.stroke;r.useStyle(f),r.style.fill=null,r.style.strokeNoScale=!0,r.ensureState("emphasis").style=o,r.ensureState("blur").style=a,r.ensureState("select").style=s,E(lA,(function(t){var e=this.childOfName(t);if(e){e.setColor(g),e.style.opacity=f.opacity;for(var n=0;n<js.length;n++){var i=js[n],o=r.getState(i);if(o){var a=o.style||{},s=e.ensureState(i),l=s.style||(s.style={});null!=a.stroke&&(l[e.__isEmptyBrush?"stroke":"fill"]=a.stroke),null!=a.opacity&&(l.opacity=a.opacity)}}e.markRedraw()}}),this);var y=i.getRawValue(e);Wh(this,l,{labelDataIndex:e,labelFetcher:{getFormattedLabel:function(e,n){return i.getFormattedLabel(e,n,t.dataType)}},inheritColor:g||"#000",defaultOpacity:f.opacity,defaultText:(null==y?t.getName(e):isFinite(y)?zr(y):y)+""});var v=this.getTextContent();if(v){var m=l.normal;v.__align=v.style.align,v.__verticalAlign=v.style.verticalAlign,v.__position=m.get("position")||"middle";var x=m.get("distance");Y(x)||(x=[x,x]),v.__labelDistance=x}this.setTextConfig({position:null,local:!0,inside:!1}),Ol(this,h,c,u)},e.prototype.highlight=function(){xl(this)},e.prototype.downplay=function(){_l(this)},e.prototype.updateLayout=function(t,e){this.setLinePoints(t.getItemLayout(e))},e.prototype.setLinePoints=function(t){var e=this.childOfName("line");cA(e.shape,t),e.dirty()},e.prototype.beforeUpdate=function(){var t=this,e=t.childOfName("fromSymbol"),n=t.childOfName("toSymbol"),i=t.getTextContent();if(e||n||i&&!i.ignore){for(var r=1,o=this.parent;o;)o.scaleX&&(r/=o.scaleX),o=o.parent;var a=t.childOfName("line");if(this.__dirty||a.__dirty){var s=a.shape.percent,l=a.pointAt(0),u=a.pointAt(s),h=Dt([],u,l);if(Rt(h,h),e&&(e.setPosition(l),S(e,0),e.scaleX=e.scaleY=r*s,e.markRedraw()),n&&(n.setPosition(u),S(n,1),n.scaleX=n.scaleY=r*s,n.markRedraw()),i&&!i.ignore){i.x=i.y=0,i.originX=i.originY=0;var c=void 0,p=void 0,d=i.__labelDistance,f=d[0]*r,g=d[1]*r,y=s/2,v=a.tangentAt(y),m=[v[1],-v[0]],x=a.pointAt(y);m[1]>0&&(m[0]=-m[0],m[1]=-m[1]);var _=v[0]<0?-1:1;if("start"!==i.__position&&"end"!==i.__position){var b=-Math.atan2(v[1],v[0]);u[0]<l[0]&&(b=Math.PI+b),i.rotation=b}var w=void 0;switch(i.__position){case"insideStartTop":case"insideMiddleTop":case"insideEndTop":case"middle":w=-g,p="bottom";break;case"insideStartBottom":case"insideMiddleBottom":case"insideEndBottom":w=g,p="top";break;default:w=0,p="middle"}switch(i.__position){case"end":i.x=h[0]*f+u[0],i.y=h[1]*g+u[1],c=h[0]>.8?"left":h[0]<-.8?"right":"center",p=h[1]>.8?"top":h[1]<-.8?"bottom":"middle";break;case"start":i.x=-h[0]*f+l[0],i.y=-h[1]*g+l[1],c=h[0]>.8?"right":h[0]<-.8?"left":"center",p=h[1]>.8?"bottom":h[1]<-.8?"top":"middle";break;case"insideStartTop":case"insideStart":case"insideStartBottom":i.x=f*_+l[0],i.y=l[1]+w,c=v[0]<0?"right":"left",i.originX=-f*_,i.originY=-w;break;case"insideMiddleTop":case"insideMiddle":case"insideMiddleBottom":case"middle":i.x=x[0],i.y=x[1]+w,c="center",i.originY=-w;break;case"insideEndTop":case"insideEnd":case"insideEndBottom":i.x=-f*_+u[0],i.y=u[1]+w,c=v[0]>=0?"right":"left",i.originX=f*_,i.originY=-w}i.scaleX=i.scaleY=r,i.setStyle({verticalAlign:i.__verticalAlign||p,align:i.__align||c})}}}function S(t,e){var n=t.__specifiedRotation;if(null==n){var i=a.tangentAt(e);t.attr("rotation",(1===e?-1:1)*Math.PI/2-Math.atan2(i[1],i[0]))}else t.attr("rotation",n)}},e}(Cr),dA=function(){function t(t){this.group=new Cr,this._LineCtor=t||pA}return t.prototype.updateData=function(t){var e=this;this._progressiveEls=null;var n=this,i=n.group,r=n._lineData;n._lineData=t,r||i.removeAll();var o=fA(t);t.diff(r).add((function(n){e._doAdd(t,n,o)})).update((function(n,i){e._doUpdate(r,t,i,n,o)})).remove((function(t){i.remove(r.getItemGraphicEl(t))})).execute()},t.prototype.updateLayout=function(){var t=this._lineData;t&&t.eachItemGraphicEl((function(e,n){e.updateLayout(t,n)}),this)},t.prototype.incrementalPrepareUpdate=function(t){this._seriesScope=fA(t),this._lineData=null,this.group.removeAll()},t.prototype.incrementalUpdate=function(t,e){function n(t){t.isGroup||function(t){return t.animators&&t.animators.length>0}(t)||(t.incremental=!0,t.ensureState("emphasis").hoverLayer=!0)}this._progressiveEls=[];for(var i=t.start;i<t.end;i++){if(yA(e.getItemLayout(i))){var r=new this._LineCtor(e,i,this._seriesScope);r.traverse(n),this.group.add(r),e.setItemGraphicEl(i,r),this._progressiveEls.push(r)}}},t.prototype.remove=function(){this.group.removeAll()},t.prototype.eachRendered=function(t){zh(this._progressiveEls||this.group,t)},t.prototype._doAdd=function(t,e,n){if(yA(t.getItemLayout(e))){var i=new this._LineCtor(t,e,n);t.setItemGraphicEl(e,i),this.group.add(i)}},t.prototype._doUpdate=function(t,e,n,i,r){var o=t.getItemGraphicEl(n);yA(e.getItemLayout(i))?(o?o.updateData(e,i,r):o=new this._LineCtor(e,i,r),e.setItemGraphicEl(i,o),this.group.add(o)):this.group.remove(o)},t}();function fA(t){var e=t.hostModel,n=e.getModel("emphasis");return{lineStyle:e.getModel("lineStyle").getLineStyle(),emphasisLineStyle:n.getModel(["lineStyle"]).getLineStyle(),blurLineStyle:e.getModel(["blur","lineStyle"]).getLineStyle(),selectLineStyle:e.getModel(["select","lineStyle"]).getLineStyle(),emphasisDisabled:n.get("disabled"),blurScope:n.get("blurScope"),focus:n.get("focus"),labelStatesModels:Hh(e)}}function gA(t){return isNaN(t[0])||isNaN(t[1])}function yA(t){return t&&!gA(t[0])&&!gA(t[1])}var vA=[],mA=[],xA=[],_A=Ke,bA=Vt,wA=Math.abs;function SA(t,e,n){for(var i,r=t[0],o=t[1],a=t[2],s=1/0,l=n*n,u=.1,h=.1;h<=.9;h+=.1){vA[0]=_A(r[0],o[0],a[0],h),vA[1]=_A(r[1],o[1],a[1],h),(d=wA(bA(vA,e)-l))<s&&(s=d,i=h)}for(var c=0;c<32;c++){var p=i+u;mA[0]=_A(r[0],o[0],a[0],i),mA[1]=_A(r[1],o[1],a[1],i),xA[0]=_A(r[0],o[0],a[0],p),xA[1]=_A(r[1],o[1],a[1],p);var d=bA(mA,e)-l;if(wA(d)<.01)break;var f=bA(xA,e)-l;u/=2,d<0?f>=0?i+=u:i-=u:f>=0?i-=u:i+=u}return i}function MA(t,e){var n=[],i=Qe,r=[[],[],[]],o=[[],[]],a=[];e/=2,t.eachEdge((function(t,s){var l=t.getLayout(),u=t.getVisual("fromSymbol"),h=t.getVisual("toSymbol");l.__original||(l.__original=[Mt(l[0]),Mt(l[1])],l[2]&&l.__original.push(Mt(l[2])));var c=l.__original;if(null!=l[2]){if(St(r[0],c[0]),St(r[1],c[2]),St(r[2],c[1]),u&&"none"!==u){var p=jD(t.node1),d=SA(r,c[0],p*e);i(r[0][0],r[1][0],r[2][0],d,n),r[0][0]=n[3],r[1][0]=n[4],i(r[0][1],r[1][1],r[2][1],d,n),r[0][1]=n[3],r[1][1]=n[4]}if(h&&"none"!==h){p=jD(t.node2),d=SA(r,c[1],p*e);i(r[0][0],r[1][0],r[2][0],d,n),r[1][0]=n[1],r[2][0]=n[2],i(r[0][1],r[1][1],r[2][1],d,n),r[1][1]=n[1],r[2][1]=n[2]}St(l[0],r[0]),St(l[1],r[2]),St(l[2],r[1])}else{if(St(o[0],c[0]),St(o[1],c[1]),Dt(a,o[1],o[0]),Rt(a,a),u&&"none"!==u){p=jD(t.node1);Ct(o[0],o[0],a,p*e)}if(h&&"none"!==h){p=jD(t.node2);Ct(o[1],o[1],a,-p*e)}St(l[0],o[0]),St(l[1],o[1])}}))}function IA(t){return"view"===t.type}var TA=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(t,e){var n=new Zw,i=new dA,r=this.group;this._controller=new DI(e.getZr()),this._controllerHost={target:r},r.add(n.group),r.add(i.group),this._symbolDraw=n,this._lineDraw=i,this._firstRender=!0},e.prototype.render=function(t,e,n){var i=this,r=t.coordinateSystem;this._model=t;var o=this._symbolDraw,a=this._lineDraw,s=this.group;if(IA(r)){var l={x:r.x,y:r.y,scaleX:r.scaleX,scaleY:r.scaleY};this._firstRender?s.attr(l):ih(s,l,t)}MA(t.getGraph(),ZD(t));var u=t.getData();o.updateData(u);var h=t.getEdgeData();a.updateData(h),this._updateNodeAndLinkScale(),this._updateController(t,e,n),clearTimeout(this._layoutTimeout);var c=t.forceLayout,p=t.get(["force","layoutAnimation"]);c&&this._startForceLayoutIteration(c,p),u.graph.eachNode((function(t){var e=t.dataIndex,n=t.getGraphicEl(),r=t.getModel();if(n){n.off("drag").off("dragend");var o=r.get("draggable");o&&n.on("drag",(function(){c&&(c.warmUp(),!i._layouting&&i._startForceLayoutIteration(c,p),c.setFixed(e),u.setItemLayout(e,[n.x,n.y]))})).on("dragend",(function(){c&&c.setUnfixed(e)})),n.setDraggable(o&&!!c),"adjacency"===r.get(["emphasis","focus"])&&(Ws(n).focus=t.getAdjacentDataIndices())}})),u.graph.eachEdge((function(t){var e=t.getGraphicEl(),n=t.getModel().get(["emphasis","focus"]);e&&"adjacency"===n&&(Ws(e).focus={edge:[t.dataIndex],node:[t.node1.dataIndex,t.node2.dataIndex]})}));var d="circular"===t.get("layout")&&t.get(["circular","rotateLabel"]),f=u.getLayout("cx"),g=u.getLayout("cy");u.eachItemGraphicEl((function(t,e){var n=u.getItemModel(e).get(["label","rotate"])||0,i=t.getSymbolPath();if(d){var r=u.getItemLayout(e),o=Math.atan2(r[1]-g,r[0]-f);o<0&&(o=2*Math.PI+o);var a=r[0]<f;a&&(o-=Math.PI);var s=a?"left":"right";i.setTextConfig({rotation:-o,position:s,origin:"center"});var l=i.ensureState("emphasis");A(l.textConfig||(l.textConfig={}),{position:s})}else i.setTextConfig({rotation:n*=Math.PI/180})})),this._firstRender=!1},e.prototype.dispose=function(){this._controller&&this._controller.dispose(),this._controllerHost=null},e.prototype._startForceLayoutIteration=function(t,e){var n=this;!function i(){t.step((function(t){n.updateLayout(n._model),(n._layouting=!t)&&(e?n._layoutTimeout=setTimeout(i,16):i())}))}()},e.prototype._updateController=function(t,e,n){var i=this,r=this._controller,o=this._controllerHost,a=this.group;r.setPointerChecker((function(e,i,r){var o=a.getBoundingRect();return o.applyTransform(a.transform),o.contain(i,r)&&!EI(e,n,t)})),IA(t.coordinateSystem)?(r.enable(t.get("roam")),o.zoomLimit=t.get("scaleLimit"),o.zoom=t.coordinateSystem.getZoom(),r.off("pan").off("zoom").on("pan",(function(e){PI(o,e.dx,e.dy),n.dispatchAction({seriesId:t.id,type:"graphRoam",dx:e.dx,dy:e.dy})})).on("zoom",(function(e){OI(o,e.scale,e.originX,e.originY),n.dispatchAction({seriesId:t.id,type:"graphRoam",zoom:e.scale,originX:e.originX,originY:e.originY}),i._updateNodeAndLinkScale(),MA(t.getGraph(),ZD(t)),i._lineDraw.updateLayout(),n.updateLabelLayout()}))):r.disable()},e.prototype._updateNodeAndLinkScale=function(){var t=this._model,e=t.getData(),n=ZD(t);e.eachItemGraphicEl((function(t,e){t&&t.setSymbolScale(n)}))},e.prototype.updateLayout=function(t){MA(t.getGraph(),ZD(t)),this._symbolDraw.updateLayout(),this._lineDraw.updateLayout()},e.prototype.remove=function(t,e){this._symbolDraw&&this._symbolDraw.remove(),this._lineDraw&&this._lineDraw.remove()},e.type="graph",e}(mg);function CA(t){return"_EC_"+t}var DA=function(){function t(t){this.type="graph",this.nodes=[],this.edges=[],this._nodesMap={},this._edgesMap={},this._directed=t||!1}return t.prototype.isDirected=function(){return this._directed},t.prototype.addNode=function(t,e){t=null==t?""+e:""+t;var n=this._nodesMap;if(!n[CA(t)]){var i=new AA(t,e);return i.hostGraph=this,this.nodes.push(i),n[CA(t)]=i,i}},t.prototype.getNodeByIndex=function(t){var e=this.data.getRawIndex(t);return this.nodes[e]},t.prototype.getNodeById=function(t){return this._nodesMap[CA(t)]},t.prototype.addEdge=function(t,e,n){var i=this._nodesMap,r=this._edgesMap;if(j(t)&&(t=this.nodes[t]),j(e)&&(e=this.nodes[e]),t instanceof AA||(t=i[CA(t)]),e instanceof AA||(e=i[CA(e)]),t&&e){var o=t.id+"-"+e.id,a=new kA(t,e,n);return a.hostGraph=this,this._directed&&(t.outEdges.push(a),e.inEdges.push(a)),t.edges.push(a),t!==e&&e.edges.push(a),this.edges.push(a),r[o]=a,a}},t.prototype.getEdgeByIndex=function(t){var e=this.edgeData.getRawIndex(t);return this.edges[e]},t.prototype.getEdge=function(t,e){t instanceof AA&&(t=t.id),e instanceof AA&&(e=e.id);var n=this._edgesMap;return this._directed?n[t+"-"+e]:n[t+"-"+e]||n[e+"-"+t]},t.prototype.eachNode=function(t,e){for(var n=this.nodes,i=n.length,r=0;r<i;r++)n[r].dataIndex>=0&&t.call(e,n[r],r)},t.prototype.eachEdge=function(t,e){for(var n=this.edges,i=n.length,r=0;r<i;r++)n[r].dataIndex>=0&&n[r].node1.dataIndex>=0&&n[r].node2.dataIndex>=0&&t.call(e,n[r],r)},t.prototype.breadthFirstTraverse=function(t,e,n,i){if(e instanceof AA||(e=this._nodesMap[CA(e)]),e){for(var r="out"===n?"outEdges":"in"===n?"inEdges":"edges",o=0;o<this.nodes.length;o++)this.nodes[o].__visited=!1;if(!t.call(i,e,null))for(var a=[e];a.length;){var s=a.shift(),l=s[r];for(o=0;o<l.length;o++){var u=l[o],h=u.node1===s?u.node2:u.node1;if(!h.__visited){if(t.call(i,h,s))return;a.push(h),h.__visited=!0}}}}},t.prototype.update=function(){for(var t=this.data,e=this.edgeData,n=this.nodes,i=this.edges,r=0,o=n.length;r<o;r++)n[r].dataIndex=-1;for(r=0,o=t.count();r<o;r++)n[t.getRawIndex(r)].dataIndex=r;e.filterSelf((function(t){var n=i[e.getRawIndex(t)];return n.node1.dataIndex>=0&&n.node2.dataIndex>=0}));for(r=0,o=i.length;r<o;r++)i[r].dataIndex=-1;for(r=0,o=e.count();r<o;r++)i[e.getRawIndex(r)].dataIndex=r},t.prototype.clone=function(){for(var e=new t(this._directed),n=this.nodes,i=this.edges,r=0;r<n.length;r++)e.addNode(n[r].id,n[r].dataIndex);for(r=0;r<i.length;r++){var o=i[r];e.addEdge(o.node1.id,o.node2.id,o.dataIndex)}return e},t}(),AA=function(){function t(t,e){this.inEdges=[],this.outEdges=[],this.edges=[],this.dataIndex=-1,this.id=null==t?"":t,this.dataIndex=null==e?-1:e}return t.prototype.degree=function(){return this.edges.length},t.prototype.inDegree=function(){return this.inEdges.length},t.prototype.outDegree=function(){return this.outEdges.length},t.prototype.getModel=function(t){if(!(this.dataIndex<0))return this.hostGraph.data.getItemModel(this.dataIndex).getModel(t)},t.prototype.getAdjacentDataIndices=function(){for(var t={edge:[],node:[]},e=0;e<this.edges.length;e++){var n=this.edges[e];n.dataIndex<0||(t.edge.push(n.dataIndex),t.node.push(n.node1.dataIndex,n.node2.dataIndex))}return t},t}(),kA=function(){function t(t,e,n){this.dataIndex=-1,this.node1=t,this.node2=e,this.dataIndex=null==n?-1:n}return t.prototype.getModel=function(t){if(!(this.dataIndex<0))return this.hostGraph.edgeData.getItemModel(this.dataIndex).getModel(t)},t.prototype.getAdjacentDataIndices=function(){return{edge:[this.dataIndex],node:[this.node1.dataIndex,this.node2.dataIndex]}},t}();function LA(t,e){return{getValue:function(n){var i=this[t][e];return i.getStore().get(i.getDimensionIndex(n||"value"),this.dataIndex)},setVisual:function(n,i){this.dataIndex>=0&&this[t][e].setItemVisual(this.dataIndex,n,i)},getVisual:function(n){return this[t][e].getItemVisual(this.dataIndex,n)},setLayout:function(n,i){this.dataIndex>=0&&this[t][e].setItemLayout(this.dataIndex,n,i)},getLayout:function(){return this[t][e].getItemLayout(this.dataIndex)},getGraphicEl:function(){return this[t][e].getItemGraphicEl(this.dataIndex)},getRawIndex:function(){return this[t][e].getRawIndex(this.dataIndex)}}}function PA(t,e,n,i,r){for(var o=new DA(i),a=0;a<t.length;a++)o.addNode(it(t[a].id,t[a].name,a),a);var s=[],l=[],u=0;for(a=0;a<e.length;a++){var h=e[a],c=h.source,p=h.target;o.addEdge(c,p,u)&&(l.push(h),s.push(it(xo(h.id,null),c+" > "+p)),u++)}var d,f=n.get("coordinateSystem");if("cartesian2d"===f||"polar"===f)d=nx(t,n);else{var g=ud.get(f),y=g&&g.dimensions||[];P(y,"value")<0&&y.concat(["value"]);var v=jm(t,{coordDimensions:y,encodeDefine:n.getEncode()}).dimensions;(d=new Zm(v,n)).initData(t)}var m=new Zm(["value"],n);return m.initData(l,s),r&&r(d,m),mC({mainData:d,struct:o,structAttr:"graph",datas:{node:d,edge:m},datasAttr:{node:"data",edge:"edgeData"}}),o.update(),o}R(AA,LA("hostGraph","data")),R(kA,LA("hostGraph","edgeData"));var OA=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.hasSymbolVisual=!0,n}return n(e,t),e.prototype.init=function(e){t.prototype.init.apply(this,arguments);var n=this;function i(){return n._categoriesData}this.legendVisualProvider=new lM(i,i),this.fillDataTextStyle(e.edges||e.links),this._updateCategoriesData()},e.prototype.mergeOption=function(e){t.prototype.mergeOption.apply(this,arguments),this.fillDataTextStyle(e.edges||e.links),this._updateCategoriesData()},e.prototype.mergeDefaultAndTheme=function(e){t.prototype.mergeDefaultAndTheme.apply(this,arguments),co(e,"edgeLabel",["show"])},e.prototype.getInitialData=function(t,e){var n,i=t.edges||t.links||[],r=t.data||t.nodes||[],o=this;if(r&&i){VD(n=this)&&(n.__curvenessList=[],n.__edgeMap={},BD(n));var a=PA(r,i,this,!0,(function(t,e){t.wrapMethod("getItemModel",(function(t){var e=o._categoriesModels[t.getShallow("category")];return e&&(e.parentModel=t.parentModel,t.parentModel=e),t}));var n=pc.prototype.getModel;function i(t,e){var i=n.call(this,t,e);return i.resolveParentPath=r,i}function r(t){if(t&&("label"===t[0]||"label"===t[1])){var e=t.slice();return"label"===t[0]?e[0]="edgeLabel":"label"===t[1]&&(e[1]="edgeLabel"),e}return t}e.wrapMethod("getItemModel",(function(t){return t.resolveParentPath=r,t.getModel=i,t}))}));return E(a.edges,(function(t){!function(t,e,n,i){if(VD(n)){var r=FD(t,e,n),o=n.__edgeMap,a=o[GD(r)];o[r]&&!a?o[r].isForward=!0:a&&o[r]&&(a.isForward=!0,o[r].isForward=!1),o[r]=o[r]||[],o[r].push(i)}}(t.node1,t.node2,this,t.dataIndex)}),this),a.data}},e.prototype.getGraph=function(){return this.getData().graph},e.prototype.getEdgeData=function(){return this.getGraph().edgeData},e.prototype.getCategoriesData=function(){return this._categoriesData},e.prototype.formatTooltip=function(t,e,n){if("edge"===n){var i=this.getData(),r=this.getDataParams(t,n),o=i.graph.getEdgeByIndex(t),a=i.getName(o.node1.dataIndex),s=i.getName(o.node2.dataIndex),l=[];return null!=a&&l.push(a),null!=s&&l.push(s),Uf("nameValue",{name:l.join(" > "),value:r.value,noValue:null==r.value})}return ig({series:this,dataIndex:t,multipleSeries:e})},e.prototype._updateCategoriesData=function(){var t=z(this.option.categories||[],(function(t){return null!=t.value?t:A({value:0},t)})),e=new Zm(["value"],this);e.initData(t),this._categoriesData=e,this._categoriesModels=e.mapArray((function(t){return e.getItemModel(t)}))},e.prototype.setZoom=function(t){this.option.zoom=t},e.prototype.setCenter=function(t){this.option.center=t},e.prototype.isAnimationEnabled=function(){return t.prototype.isAnimationEnabled.call(this)&&!("force"===this.get("layout")&&this.get(["force","layoutAnimation"]))},e.type="series.graph",e.dependencies=["grid","polar","geo","singleAxis","calendar"],e.defaultOption={z:2,coordinateSystem:"view",legendHoverLink:!0,layout:null,circular:{rotateLabel:!1},force:{initLayout:null,repulsion:[0,50],gravity:.1,friction:.6,edgeLength:30,layoutAnimation:!0},left:"center",top:"center",symbol:"circle",symbolSize:10,edgeSymbol:["none","none"],edgeSymbolSize:10,edgeLabel:{position:"middle",distance:5},draggable:!1,roam:!1,center:null,zoom:1,nodeScaleRatio:.6,label:{show:!1,formatter:"{b}"},itemStyle:{},lineStyle:{color:"#aaa",width:1,opacity:.5},emphasis:{scale:!0,label:{show:!0}},select:{itemStyle:{borderColor:"#212121"}}},e}(ag),RA={type:"graphRoam",event:"graphRoam",update:"none"};var NA=function(){this.angle=0,this.width=10,this.r=10,this.x=0,this.y=0},EA=function(t){function e(e){var n=t.call(this,e)||this;return n.type="pointer",n}return n(e,t),e.prototype.getDefaultShape=function(){return new NA},e.prototype.buildPath=function(t,e){var n=Math.cos,i=Math.sin,r=e.r,o=e.width,a=e.angle,s=e.x-n(a)*o*(o>=r/3?1:2),l=e.y-i(a)*o*(o>=r/3?1:2);a=e.angle-Math.PI/2,t.moveTo(s,l),t.lineTo(e.x+n(a)*o,e.y+i(a)*o),t.lineTo(e.x+n(e.angle)*r,e.y+i(e.angle)*r),t.lineTo(e.x-n(a)*o,e.y-i(a)*o),t.lineTo(s,l)},e}(fs);function zA(t,e){var n=null==t?"":t+"";return e&&(X(e)?n=e.replace("{value}",n):U(e)&&(n=e(t))),n}var VA=2*Math.PI,BA=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){this.group.removeAll();var i=t.get(["axisLine","lineStyle","color"]),r=function(t,e){var n=t.get("center"),i=e.getWidth(),r=e.getHeight(),o=Math.min(i,r);return{cx:Er(n[0],e.getWidth()),cy:Er(n[1],e.getHeight()),r:Er(t.get("radius"),o/2)}}(t,n);this._renderMain(t,e,n,i,r),this._data=t.getData()},e.prototype.dispose=function(){},e.prototype._renderMain=function(t,e,n,i,r){for(var o=this.group,a=t.get("clockwise"),s=-t.get("startAngle")/180*Math.PI,l=-t.get("endAngle")/180*Math.PI,u=t.getModel("axisLine"),h=u.get("roundCap")?TS:Tu,c=u.get("show"),p=u.getModel("lineStyle"),d=p.get("width"),f=(l-s)%VA||l===s?(l-s)%VA:VA,g=s,y=0;c&&y<i.length;y++){var v=new h({shape:{startAngle:g,endAngle:l=s+f*Math.min(Math.max(i[y][0],0),1),cx:r.cx,cy:r.cy,clockwise:a,r0:r.r-d,r:r.r},silent:!0});v.setStyle({fill:i[y][1]}),v.setStyle(p.getLineStyle(["color","width"])),o.add(v),g=l}var m=function(t){if(t<=0)return i[0][1];var e;for(e=0;e<i.length;e++)if(i[e][0]>=t&&(0===e?0:i[e-1][0])<t)return i[e][1];return i[e-1][1]};if(!a){var x=s;s=l,l=x}this._renderTicks(t,e,n,m,r,s,l,a,d),this._renderTitleAndDetail(t,e,n,m,r),this._renderAnchor(t,r),this._renderPointer(t,e,n,m,r,s,l,a,d)},e.prototype._renderTicks=function(t,e,n,i,r,o,a,s,l){for(var u,h,c=this.group,p=r.cx,d=r.cy,f=r.r,g=+t.get("min"),y=+t.get("max"),v=t.getModel("splitLine"),m=t.getModel("axisTick"),x=t.getModel("axisLabel"),_=t.get("splitNumber"),b=m.get("splitNumber"),w=Er(v.get("length"),f),S=Er(m.get("length"),f),M=o,I=(a-o)/_,T=I/b,C=v.getModel("lineStyle").getLineStyle(),D=m.getModel("lineStyle").getLineStyle(),A=v.get("distance"),k=0;k<=_;k++){if(u=Math.cos(M),h=Math.sin(M),v.get("show")){var L=new Eu({shape:{x1:u*(f-(P=A?A+l:l))+p,y1:h*(f-P)+d,x2:u*(f-w-P)+p,y2:h*(f-w-P)+d},style:C,silent:!0});"auto"===C.stroke&&L.setStyle({stroke:i(k/_)}),c.add(L)}if(x.get("show")){var P=x.get("distance")+A,O=zA(zr(k/_*(y-g)+g),x.get("formatter")),R=i(k/_);c.add(new As({style:Yh(x,{text:O,x:u*(f-w-P)+p,y:h*(f-w-P)+d,verticalAlign:h<-.8?"top":h>.8?"bottom":"middle",align:u<-.4?"left":u>.4?"right":"center"},{inheritColor:R}),silent:!0}))}if(m.get("show")&&k!==_){P=(P=m.get("distance"))?P+l:l;for(var N=0;N<=b;N++){u=Math.cos(M),h=Math.sin(M);var E=new Eu({shape:{x1:u*(f-P)+p,y1:h*(f-P)+d,x2:u*(f-S-P)+p,y2:h*(f-S-P)+d},silent:!0,style:D});"auto"===D.stroke&&E.setStyle({stroke:i((k+N/b)/_)}),c.add(E),M+=T}M-=T}else M+=I}},e.prototype._renderPointer=function(t,e,n,i,r,o,a,s,l){var u=this.group,h=this._data,c=this._progressEls,p=[],d=t.get(["pointer","show"]),f=t.getModel("progress"),g=f.get("show"),y=t.getData(),v=y.mapDimension("value"),m=+t.get("min"),x=+t.get("max"),_=[m,x],b=[o,a];function w(e,n){var i,o=y.getItemModel(e).getModel("pointer"),a=Er(o.get("width"),r.r),s=Er(o.get("length"),r.r),l=t.get(["pointer","icon"]),u=o.get("offsetCenter"),h=Er(u[0],r.r),c=Er(u[1],r.r),p=o.get("keepAspect");return(i=l?ky(l,h-a/2,c-s,a,s,null,p):new EA({shape:{angle:-Math.PI/2,width:a,r:s,x:h,y:c}})).rotation=-(n+Math.PI/2),i.x=r.cx,i.y=r.cy,i}function S(t,e){var n=f.get("roundCap")?TS:Tu,i=f.get("overlap"),a=i?f.get("width"):l/y.count(),u=i?r.r-a:r.r-(t+1)*a,h=i?r.r:r.r-t*a,c=new n({shape:{startAngle:o,endAngle:e,cx:r.cx,cy:r.cy,clockwise:s,r0:u,r:h}});return i&&(c.z2=x-y.get(v,t)%x),c}(g||d)&&(y.diff(h).add((function(e){var n=y.get(v,e);if(d){var i=w(e,o);rh(i,{rotation:-((isNaN(+n)?b[0]:Nr(n,_,b,!0))+Math.PI/2)},t),u.add(i),y.setItemGraphicEl(e,i)}if(g){var r=S(e,o),a=f.get("clip");rh(r,{shape:{endAngle:Nr(n,_,b,a)}},t),u.add(r),Hs(t.seriesIndex,y.dataType,e,r),p[e]=r}})).update((function(e,n){var i=y.get(v,e);if(d){var r=h.getItemGraphicEl(n),a=r?r.rotation:o,s=w(e,a);s.rotation=a,ih(s,{rotation:-((isNaN(+i)?b[0]:Nr(i,_,b,!0))+Math.PI/2)},t),u.add(s),y.setItemGraphicEl(e,s)}if(g){var l=c[n],m=S(e,l?l.shape.endAngle:o),x=f.get("clip");ih(m,{shape:{endAngle:Nr(i,_,b,x)}},t),u.add(m),Hs(t.seriesIndex,y.dataType,e,m),p[e]=m}})).execute(),y.each((function(t){var e=y.getItemModel(t),n=e.getModel("emphasis"),r=n.get("focus"),o=n.get("blurScope"),a=n.get("disabled");if(d){var s=y.getItemGraphicEl(t),l=y.getItemVisual(t,"style"),u=l.fill;if(s instanceof xs){var h=s.style;s.useStyle(A({image:h.image,x:h.x,y:h.y,width:h.width,height:h.height},l))}else s.useStyle(l),"pointer"!==s.type&&s.setColor(u);s.setStyle(e.getModel(["pointer","itemStyle"]).getItemStyle()),"auto"===s.style.fill&&s.setStyle("fill",i(Nr(y.get(v,t),_,[0,1],!0))),s.z2EmphasisLift=0,zl(s,e),Ol(s,r,o,a)}if(g){var c=p[t];c.useStyle(y.getItemVisual(t,"style")),c.setStyle(e.getModel(["progress","itemStyle"]).getItemStyle()),c.z2EmphasisLift=0,zl(c,e),Ol(c,r,o,a)}})),this._progressEls=p)},e.prototype._renderAnchor=function(t,e){var n=t.getModel("anchor");if(n.get("show")){var i=n.get("size"),r=n.get("icon"),o=n.get("offsetCenter"),a=n.get("keepAspect"),s=ky(r,e.cx-i/2+Er(o[0],e.r),e.cy-i/2+Er(o[1],e.r),i,i,null,a);s.z2=n.get("showAbove")?1:0,s.setStyle(n.getModel("itemStyle").getItemStyle()),this.group.add(s)}},e.prototype._renderTitleAndDetail=function(t,e,n,i,r){var o=this,a=t.getData(),s=a.mapDimension("value"),l=+t.get("min"),u=+t.get("max"),h=new Cr,c=[],p=[],d=t.isAnimationEnabled(),f=t.get(["pointer","showAbove"]);a.diff(this._data).add((function(t){c[t]=new As({silent:!0}),p[t]=new As({silent:!0})})).update((function(t,e){c[t]=o._titleEls[e],p[t]=o._detailEls[e]})).execute(),a.each((function(e){var n=a.getItemModel(e),o=a.get(s,e),g=new Cr,y=i(Nr(o,[l,u],[0,1],!0)),v=n.getModel("title");if(v.get("show")){var m=v.get("offsetCenter"),x=r.cx+Er(m[0],r.r),_=r.cy+Er(m[1],r.r);(D=c[e]).attr({z2:f?0:2,style:Yh(v,{x:x,y:_,text:a.getName(e),align:"center",verticalAlign:"middle"},{inheritColor:y})}),g.add(D)}var b=n.getModel("detail");if(b.get("show")){var w=b.get("offsetCenter"),S=r.cx+Er(w[0],r.r),M=r.cy+Er(w[1],r.r),I=Er(b.get("width"),r.r),T=Er(b.get("height"),r.r),C=t.get(["progress","show"])?a.getItemVisual(e,"style").fill:y,D=p[e],A=b.get("formatter");D.attr({z2:f?0:2,style:Yh(b,{x:S,y:M,text:zA(o,A),width:isNaN(I)?null:I,height:isNaN(T)?null:T,align:"center",verticalAlign:"middle"},{inheritColor:C})}),Jh(D,{normal:b},o,(function(t){return zA(t,A)})),d&&Qh(D,e,a,t,{getFormattedLabel:function(t,e,n,i,r,a){return zA(a?a.interpolatedValue:o,A)}}),g.add(D)}h.add(g)})),this.group.add(h),this._titleEls=c,this._detailEls=p},e.type="gauge",e}(mg),FA=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.visualStyleAccessPath="itemStyle",n}return n(e,t),e.prototype.getInitialData=function(t,e){return sM(this,["value"])},e.type="series.gauge",e.defaultOption={z:2,colorBy:"data",center:["50%","50%"],legendHoverLink:!0,radius:"75%",startAngle:225,endAngle:-45,clockwise:!0,min:0,max:100,splitNumber:10,axisLine:{show:!0,roundCap:!1,lineStyle:{color:[[1,"#E6EBF8"]],width:10}},progress:{show:!1,overlap:!0,width:10,roundCap:!1,clip:!0},splitLine:{show:!0,length:10,distance:10,lineStyle:{color:"#63677A",width:3,type:"solid"}},axisTick:{show:!0,splitNumber:5,length:6,distance:10,lineStyle:{color:"#63677A",width:1,type:"solid"}},axisLabel:{show:!0,distance:15,color:"#464646",fontSize:12},pointer:{icon:null,offsetCenter:[0,0],show:!0,showAbove:!0,length:"60%",width:6,keepAspect:!1},anchor:{show:!1,showAbove:!1,size:6,icon:"circle",offsetCenter:[0,0],keepAspect:!1,itemStyle:{color:"#fff",borderWidth:0,borderColor:"#5470c6"}},title:{show:!0,offsetCenter:[0,"20%"],color:"#464646",fontSize:16,valueAnimation:!1},detail:{show:!0,backgroundColor:"rgba(0,0,0,0)",borderWidth:0,borderColor:"#ccc",width:100,height:null,padding:[5,10],offsetCenter:[0,"40%"],color:"#464646",fontSize:30,fontWeight:"bold",lineHeight:30,valueAnimation:!1}},e}(ag);var GA=["itemStyle","opacity"],WA=function(t){function e(e,n){var i=t.call(this)||this,r=i,o=new Ou,a=new As;return r.setTextContent(a),i.setTextGuideLine(o),i.updateData(e,n,!0),i}return n(e,t),e.prototype.updateData=function(t,e,n){var i=this,r=t.hostModel,o=t.getItemModel(e),a=t.getItemLayout(e),s=o.getModel("emphasis"),l=o.get(GA);l=null==l?1:l,n||uh(i),i.useStyle(t.getItemVisual(e,"style")),i.style.lineJoin="round",n?(i.setShape({points:a.points}),i.style.opacity=0,rh(i,{style:{opacity:l}},r,e)):ih(i,{style:{opacity:l},shape:{points:a.points}},r,e),zl(i,o),this._updateLabel(t,e),Ol(this,s.get("focus"),s.get("blurScope"),s.get("disabled"))},e.prototype._updateLabel=function(t,e){var n=this,i=this.getTextGuideLine(),r=n.getTextContent(),o=t.hostModel,a=t.getItemModel(e),s=t.getItemLayout(e).label,l=t.getItemVisual(e,"style"),u=l.fill;Wh(r,Hh(a),{labelFetcher:t.hostModel,labelDataIndex:e,defaultOpacity:l.opacity,defaultText:t.getName(e)},{normal:{align:s.textAlign,verticalAlign:s.verticalAlign}}),n.setTextConfig({local:!0,inside:!!s.inside,insideStroke:u,outsideFill:u});var h=s.linePoints;i.setShape({points:h}),n.textGuideLineConfig={anchor:h?new Ji(h[0][0],h[0][1]):null},ih(r,{style:{x:s.x,y:s.y}},o,e),r.attr({rotation:s.rotation,originX:s.x,originY:s.y,z2:10}),cb(n,pb(a),{stroke:u})},e}(Lu),HA=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.ignoreLabelLineUpdate=!0,n}return n(e,t),e.prototype.render=function(t,e,n){var i=t.getData(),r=this._data,o=this.group;i.diff(r).add((function(t){var e=new WA(i,t);i.setItemGraphicEl(t,e),o.add(e)})).update((function(t,e){var n=r.getItemGraphicEl(e);n.updateData(i,t),o.add(n),i.setItemGraphicEl(t,n)})).remove((function(e){lh(r.getItemGraphicEl(e),t,e)})).execute(),this._data=i},e.prototype.remove=function(){this.group.removeAll(),this._data=null},e.prototype.dispose=function(){},e.type="funnel",e}(mg),YA=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(e){t.prototype.init.apply(this,arguments),this.legendVisualProvider=new lM(W(this.getData,this),W(this.getRawData,this)),this._defaultLabelLine(e)},e.prototype.getInitialData=function(t,e){return sM(this,{coordDimensions:["value"],encodeDefaulter:H(Hp,this)})},e.prototype._defaultLabelLine=function(t){co(t,"labelLine",["show"]);var e=t.labelLine,n=t.emphasis.labelLine;e.show=e.show&&t.label.show,n.show=n.show&&t.emphasis.label.show},e.prototype.getDataParams=function(e){var n=this.getData(),i=t.prototype.getDataParams.call(this,e),r=n.mapDimension("value"),o=n.getSum(r);return i.percent=o?+(n.get(r,e)/o*100).toFixed(2):0,i.$vars.push("percent"),i},e.type="series.funnel",e.defaultOption={z:2,legendHoverLink:!0,colorBy:"data",left:80,top:60,right:80,bottom:60,minSize:"0%",maxSize:"100%",sort:"descending",orient:"vertical",gap:0,funnelAlign:"center",label:{show:!0,position:"outer"},labelLine:{show:!0,length:20,lineStyle:{width:1}},itemStyle:{borderColor:"#fff",borderWidth:1},emphasis:{label:{show:!0}},select:{itemStyle:{borderColor:"#212121"}}},e}(ag);function UA(t,e){t.eachSeriesByType("funnel",(function(t){var n=t.getData(),i=n.mapDimension("value"),r=t.get("sort"),o=function(t,e){return mp(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()})}(t,e),a=t.get("orient"),s=o.width,l=o.height,u=function(t,e){for(var n=t.mapDimension("value"),i=t.mapArray(n,(function(t){return t})),r=[],o="ascending"===e,a=0,s=t.count();a<s;a++)r[a]=a;return U(e)?r.sort(e):"none"!==e&&r.sort((function(t,e){return o?i[t]-i[e]:i[e]-i[t]})),r}(n,r),h=o.x,c=o.y,p="horizontal"===a?[Er(t.get("minSize"),l),Er(t.get("maxSize"),l)]:[Er(t.get("minSize"),s),Er(t.get("maxSize"),s)],d=n.getDataExtent(i),f=t.get("min"),g=t.get("max");null==f&&(f=Math.min(d[0],0)),null==g&&(g=d[1]);var y=t.get("funnelAlign"),v=t.get("gap"),m=(("horizontal"===a?s:l)-v*(n.count()-1))/n.count(),x=function(t,e){if("horizontal"===a){var r=Nr(n.get(i,t)||0,[f,g],p,!0),o=void 0;switch(y){case"top":o=c;break;case"center":o=c+(l-r)/2;break;case"bottom":o=c+(l-r)}return[[e,o],[e,o+r]]}var u,d=Nr(n.get(i,t)||0,[f,g],p,!0);switch(y){case"left":u=h;break;case"center":u=h+(s-d)/2;break;case"right":u=h+s-d}return[[u,e],[u+d,e]]};"ascending"===r&&(m=-m,v=-v,"horizontal"===a?h+=s:c+=l,u=u.reverse());for(var _=0;_<u.length;_++){var b=u[_],w=u[_+1],S=n.getItemModel(b);if("horizontal"===a){var M=S.get(["itemStyle","width"]);null==M?M=m:(M=Er(M,s),"ascending"===r&&(M=-M));var I=x(b,h),T=x(w,h+M);h+=M+v,n.setItemLayout(b,{points:I.concat(T.slice().reverse())})}else{var C=S.get(["itemStyle","height"]);null==C?C=m:(C=Er(C,l),"ascending"===r&&(C=-C));I=x(b,c),T=x(w,c+C);c+=C+v,n.setItemLayout(b,{points:I.concat(T.slice().reverse())})}}!function(t){var e=t.hostModel.get("orient");t.each((function(n){var i,r,o,a,s=t.getItemModel(n),l=s.getModel("label").get("position"),u=s.getModel("labelLine"),h=t.getItemLayout(n),c=h.points,p="inner"===l||"inside"===l||"center"===l||"insideLeft"===l||"insideRight"===l;if(p)"insideLeft"===l?(r=(c[0][0]+c[3][0])/2+5,o=(c[0][1]+c[3][1])/2,i="left"):"insideRight"===l?(r=(c[1][0]+c[2][0])/2-5,o=(c[1][1]+c[2][1])/2,i="right"):(r=(c[0][0]+c[1][0]+c[2][0]+c[3][0])/4,o=(c[0][1]+c[1][1]+c[2][1]+c[3][1])/4,i="center"),a=[[r,o],[r,o]];else{var d=void 0,f=void 0,g=void 0,y=void 0,v=u.get("length");"left"===l?(d=(c[3][0]+c[0][0])/2,f=(c[3][1]+c[0][1])/2,r=(g=d-v)-5,i="right"):"right"===l?(d=(c[1][0]+c[2][0])/2,f=(c[1][1]+c[2][1])/2,r=(g=d+v)+5,i="left"):"top"===l?(d=(c[3][0]+c[0][0])/2,o=(y=(f=(c[3][1]+c[0][1])/2)-v)-5,i="center"):"bottom"===l?(d=(c[1][0]+c[2][0])/2,o=(y=(f=(c[1][1]+c[2][1])/2)+v)+5,i="center"):"rightTop"===l?(d="horizontal"===e?c[3][0]:c[1][0],f="horizontal"===e?c[3][1]:c[1][1],"horizontal"===e?(o=(y=f-v)-5,i="center"):(r=(g=d+v)+5,i="top")):"rightBottom"===l?(d=c[2][0],f=c[2][1],"horizontal"===e?(o=(y=f+v)+5,i="center"):(r=(g=d+v)+5,i="bottom")):"leftTop"===l?(d=c[0][0],f="horizontal"===e?c[0][1]:c[1][1],"horizontal"===e?(o=(y=f-v)-5,i="center"):(r=(g=d-v)-5,i="right")):"leftBottom"===l?(d="horizontal"===e?c[1][0]:c[3][0],f="horizontal"===e?c[1][1]:c[2][1],"horizontal"===e?(o=(y=f+v)+5,i="center"):(r=(g=d-v)-5,i="right")):(d=(c[1][0]+c[2][0])/2,f=(c[1][1]+c[2][1])/2,"horizontal"===e?(o=(y=f+v)+5,i="center"):(r=(g=d+v)+5,i="left")),"horizontal"===e?r=g=d:o=y=f,a=[[d,f],[g,y]]}h.label={linePoints:a,x:r,y:o,verticalAlign:"middle",textAlign:i,inside:p}}))}(n)}))}var XA=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._dataGroup=new Cr,n._initialized=!1,n}return n(e,t),e.prototype.init=function(){this.group.add(this._dataGroup)},e.prototype.render=function(t,e,n,i){this._progressiveEls=null;var r=this._dataGroup,o=t.getData(),a=this._data,s=t.coordinateSystem,l=s.dimensions,u=qA(t);if(o.diff(a).add((function(t){KA(jA(o,r,t,l,s),o,t,u)})).update((function(e,n){var i=a.getItemGraphicEl(n),r=ZA(o,e,l,s);o.setItemGraphicEl(e,i),ih(i,{shape:{points:r}},t,e),uh(i),KA(i,o,e,u)})).remove((function(t){var e=a.getItemGraphicEl(t);r.remove(e)})).execute(),!this._initialized){this._initialized=!0;var h=function(t,e,n){var i=t.model,r=t.getRect(),o=new Ts({shape:{x:r.x,y:r.y,width:r.width,height:r.height}}),a="horizontal"===i.get("layout")?"width":"height";return o.setShape(a,0),rh(o,{shape:{width:r.width,height:r.height}},e,n),o}(s,t,(function(){setTimeout((function(){r.removeClipPath()}))}));r.setClipPath(h)}this._data=o},e.prototype.incrementalPrepareRender=function(t,e,n){this._initialized=!0,this._data=null,this._dataGroup.removeAll()},e.prototype.incrementalRender=function(t,e,n){for(var i=e.getData(),r=e.coordinateSystem,o=r.dimensions,a=qA(e),s=this._progressiveEls=[],l=t.start;l<t.end;l++){var u=jA(i,this._dataGroup,l,o,r);u.incremental=!0,KA(u,i,l,a),s.push(u)}},e.prototype.remove=function(){this._dataGroup&&this._dataGroup.removeAll(),this._data=null},e.type="parallel",e}(mg);function ZA(t,e,n,i){for(var r,o=[],a=0;a<n.length;a++){var s=n[a],l=t.get(t.mapDimension(s),e);r=l,("category"===i.getAxis(s).type?null==r:null==r||isNaN(r))||o.push(i.dataToPoint(l,s))}return o}function jA(t,e,n,i,r){var o=ZA(t,n,i,r),a=new Ou({shape:{points:o},z2:10});return e.add(a),t.setItemGraphicEl(n,a),a}function qA(t){var e=t.get("smooth",!0);return!0===e&&(e=.3),nt(e=to(e))&&(e=0),{smooth:e}}function KA(t,e,n,i){t.useStyle(e.getItemVisual(n,"style")),t.style.fill=null,t.setShape("smooth",i.smooth);var r=e.getItemModel(n),o=r.getModel("emphasis");zl(t,r,"lineStyle"),Ol(t,o.get("focus"),o.get("blurScope"),o.get("disabled"))}var $A=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.visualStyleAccessPath="lineStyle",n.visualDrawType="stroke",n}return n(e,t),e.prototype.getInitialData=function(t,e){return nx(null,this,{useEncodeDefaulter:W(JA,null,this)})},e.prototype.getRawIndicesByActiveState=function(t){var e=this.coordinateSystem,n=this.getData(),i=[];return e.eachActiveState(n,(function(e,r){t===e&&i.push(n.getRawIndex(r))})),i},e.type="series.parallel",e.dependencies=["parallel"],e.defaultOption={z:2,coordinateSystem:"parallel",parallelIndex:0,label:{show:!1},inactiveOpacity:.05,activeOpacity:1,lineStyle:{width:1,opacity:.45,type:"solid"},emphasis:{label:{show:!1}},progressive:500,smooth:!1,animationEasing:"linear"},e}(ag);function JA(t){var e=t.ecModel.getComponent("parallel",t.get("parallelIndex"));if(e){var n={};return E(e.dimensions,(function(t){var e=+t.replace("dim","");n[t]=e})),n}}var QA=["lineStyle","opacity"],tk={seriesType:"parallel",reset:function(t,e){var n=t.coordinateSystem,i={normal:t.get(["lineStyle","opacity"]),active:t.get("activeOpacity"),inactive:t.get("inactiveOpacity")};return{progress:function(t,e){n.eachActiveState(e,(function(t,n){var r=i[t];if("normal"===t&&e.hasItemOption){var o=e.getItemModel(n).get(QA,!0);null!=o&&(r=o)}e.ensureUniqueItemVisual(n,"style").opacity=r}),t.start,t.end)}}}};function ek(t){!function(t){if(t.parallel)return;var e=!1;E(t.series,(function(t){t&&"parallel"===t.type&&(e=!0)})),e&&(t.parallel=[{}])}(t),function(t){E(ho(t.parallelAxis),(function(e){if(q(e)){var n=e.parallelIndex||0,i=ho(t.parallel)[n];i&&i.parallelAxisDefault&&C(e,i.parallelAxisDefault,!1)}}))}(t)}var nk=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){this._model=t,this._api=n,this._handlers||(this._handlers={},E(ik,(function(t,e){n.getZr().on(e,this._handlers[e]=W(t,this))}),this)),Dg(this,"_throttledDispatchExpand",t.get("axisExpandRate"),"fixRate")},e.prototype.dispose=function(t,e){Ag(this,"_throttledDispatchExpand"),E(this._handlers,(function(t,n){e.getZr().off(n,t)})),this._handlers=null},e.prototype._throttledDispatchExpand=function(t){this._dispatchExpand(t)},e.prototype._dispatchExpand=function(t){t&&this._api.dispatchAction(A({type:"parallelAxisExpand"},t))},e.type="parallel",e}(fg),ik={mousedown:function(t){rk(this,"click")&&(this._mouseDownPoint=[t.offsetX,t.offsetY])},mouseup:function(t){var e=this._mouseDownPoint;if(rk(this,"click")&&e){var n=[t.offsetX,t.offsetY];if(Math.pow(e[0]-n[0],2)+Math.pow(e[1]-n[1],2)>5)return;var i=this._model.coordinateSystem.getSlidedAxisExpandWindow([t.offsetX,t.offsetY]);"none"!==i.behavior&&this._dispatchExpand({axisExpandWindow:i.axisExpandWindow})}this._mouseDownPoint=null},mousemove:function(t){if(!this._mouseDownPoint&&rk(this,"mousemove")){var e=this._model,n=e.coordinateSystem.getSlidedAxisExpandWindow([t.offsetX,t.offsetY]),i=n.behavior;"jump"===i&&this._throttledDispatchExpand.debounceNextCall(e.get("axisExpandDebounce")),this._throttledDispatchExpand("none"===i?null:{axisExpandWindow:n.axisExpandWindow,animation:"jump"===i?null:{duration:0}})}}};function rk(t,e){var n=t._model;return n.get("axisExpandable")&&n.get("axisExpandTriggerOn")===e}var ok=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(){t.prototype.init.apply(this,arguments),this.mergeOption({})},e.prototype.mergeOption=function(t){var e=this.option;t&&C(e,t,!0),this._initDimensions()},e.prototype.contains=function(t,e){var n=t.get("parallelIndex");return null!=n&&e.getComponent("parallel",n)===this},e.prototype.setAxisExpand=function(t){E(["axisExpandable","axisExpandCenter","axisExpandCount","axisExpandWidth","axisExpandWindow"],(function(e){t.hasOwnProperty(e)&&(this.option[e]=t[e])}),this)},e.prototype._initDimensions=function(){var t=this.dimensions=[],e=this.parallelAxisIndex=[];E(B(this.ecModel.queryComponents({mainType:"parallelAxis"}),(function(t){return(t.get("parallelIndex")||0)===this.componentIndex}),this),(function(n){t.push("dim"+n.get("dim")),e.push(n.componentIndex)}))},e.type="parallel",e.dependencies=["parallelAxis"],e.layoutMode="box",e.defaultOption={z:0,left:80,top:60,right:80,bottom:60,layout:"horizontal",axisExpandable:!1,axisExpandCenter:null,axisExpandCount:0,axisExpandWidth:50,axisExpandRate:17,axisExpandDebounce:50,axisExpandSlideTriggerArea:[-.15,.05,.4],axisExpandTriggerOn:"click",parallelAxisDefault:null},e}(Ip),ak=function(t){function e(e,n,i,r,o){var a=t.call(this,e,n,i)||this;return a.type=r||"value",a.axisIndex=o,a}return n(e,t),e.prototype.isHorizontal=function(){return"horizontal"!==this.coordinateSystem.getModel().get("layout")},e}(G_);function sk(t,e,n,i,r,o){t=t||0;var a=n[1]-n[0];if(null!=r&&(r=uk(r,[0,a])),null!=o&&(o=Math.max(o,null!=r?r:0)),"all"===i){var s=Math.abs(e[1]-e[0]);s=uk(s,[0,a]),r=o=uk(s,[r,o]),i=0}e[0]=uk(e[0],n),e[1]=uk(e[1],n);var l=lk(e,i);e[i]+=t;var u,h=r||0,c=n.slice();return l.sign<0?c[0]+=h:c[1]-=h,e[i]=uk(e[i],c),u=lk(e,i),null!=r&&(u.sign!==l.sign||u.span<r)&&(e[1-i]=e[i]+l.sign*r),u=lk(e,i),null!=o&&u.span>o&&(e[1-i]=e[i]+u.sign*o),e}function lk(t,e){var n=t[e]-t[1-e];return{span:Math.abs(n),sign:n>0?-1:n<0?1:e?-1:1}}function uk(t,e){return Math.min(null!=e[1]?e[1]:1/0,Math.max(null!=e[0]?e[0]:-1/0,t))}var hk=E,ck=Math.min,pk=Math.max,dk=Math.floor,fk=Math.ceil,gk=zr,yk=Math.PI,vk=function(){function t(t,e,n){this.type="parallel",this._axesMap=ft(),this._axesLayout={},this.dimensions=t.dimensions,this._model=t,this._init(t,e,n)}return t.prototype._init=function(t,e,n){var i=t.dimensions,r=t.parallelAxisIndex;hk(i,(function(t,n){var i=r[n],o=e.getComponent("parallelAxis",i),a=this._axesMap.set(t,new ak(t,i_(o),[0,0],o.get("type"),i)),s="category"===a.type;a.onBand=s&&o.get("boundaryGap"),a.inverse=o.get("inverse"),o.axis=a,a.model=o,a.coordinateSystem=o.coordinateSystem=this}),this)},t.prototype.update=function(t,e){this._updateAxesFromSeries(this._model,t)},t.prototype.containPoint=function(t){var e=this._makeLayoutInfo(),n=e.axisBase,i=e.layoutBase,r=e.pixelDimIndex,o=t[1-r],a=t[r];return o>=n&&o<=n+e.axisLength&&a>=i&&a<=i+e.layoutLength},t.prototype.getModel=function(){return this._model},t.prototype._updateAxesFromSeries=function(t,e){e.eachSeries((function(n){if(t.contains(n,e)){var i=n.getData();hk(this.dimensions,(function(t){var e=this._axesMap.get(t);e.scale.unionExtentFromData(i,i.mapDimension(t)),n_(e.scale,e.model)}),this)}}),this)},t.prototype.resize=function(t,e){this._rect=mp(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()}),this._layoutAxes()},t.prototype.getRect=function(){return this._rect},t.prototype._makeLayoutInfo=function(){var t,e=this._model,n=this._rect,i=["x","y"],r=["width","height"],o=e.get("layout"),a="horizontal"===o?0:1,s=n[r[a]],l=[0,s],u=this.dimensions.length,h=mk(e.get("axisExpandWidth"),l),c=mk(e.get("axisExpandCount")||0,[0,u]),p=e.get("axisExpandable")&&u>3&&u>c&&c>1&&h>0&&s>0,d=e.get("axisExpandWindow");d?(t=mk(d[1]-d[0],l),d[1]=d[0]+t):(t=mk(h*(c-1),l),(d=[h*(e.get("axisExpandCenter")||dk(u/2))-t/2])[1]=d[0]+t);var f=(s-t)/(u-c);f<3&&(f=0);var g=[dk(gk(d[0]/h,1))+1,fk(gk(d[1]/h,1))-1],y=f/h*d[0];return{layout:o,pixelDimIndex:a,layoutBase:n[i[a]],layoutLength:s,axisBase:n[i[1-a]],axisLength:n[r[1-a]],axisExpandable:p,axisExpandWidth:h,axisCollapseWidth:f,axisExpandWindow:d,axisCount:u,winInnerIndices:g,axisExpandWindow0Pos:y}},t.prototype._layoutAxes=function(){var t=this._rect,e=this._axesMap,n=this.dimensions,i=this._makeLayoutInfo(),r=i.layout;e.each((function(t){var e=[0,i.axisLength],n=t.inverse?1:0;t.setExtent(e[n],e[1-n])})),hk(n,(function(e,n){var o=(i.axisExpandable?_k:xk)(n,i),a={horizontal:{x:o.position,y:i.axisLength},vertical:{x:0,y:o.position}},s={horizontal:yk/2,vertical:0},l=[a[r].x+t.x,a[r].y+t.y],u=s[r],h=[1,0,0,1,0,0];zi(h,h,u),Ei(h,h,l),this._axesLayout[e]={position:l,rotation:u,transform:h,axisNameAvailableWidth:o.axisNameAvailableWidth,axisLabelShow:o.axisLabelShow,nameTruncateMaxWidth:o.nameTruncateMaxWidth,tickDirection:1,labelDirection:1}}),this)},t.prototype.getAxis=function(t){return this._axesMap.get(t)},t.prototype.dataToPoint=function(t,e){return this.axisCoordToPoint(this._axesMap.get(e).dataToCoord(t),e)},t.prototype.eachActiveState=function(t,e,n,i){null==n&&(n=0),null==i&&(i=t.count());var r=this._axesMap,o=this.dimensions,a=[],s=[];E(o,(function(e){a.push(t.mapDimension(e)),s.push(r.get(e).model)}));for(var l=this.hasAxisBrushed(),u=n;u<i;u++){var h=void 0;if(l){h="active";for(var c=t.getValues(a,u),p=0,d=o.length;p<d;p++){if("inactive"===s[p].getActiveState(c[p])){h="inactive";break}}}else h="normal";e(h,u)}},t.prototype.hasAxisBrushed=function(){for(var t=this.dimensions,e=this._axesMap,n=!1,i=0,r=t.length;i<r;i++)"normal"!==e.get(t[i]).model.getActiveState()&&(n=!0);return n},t.prototype.axisCoordToPoint=function(t,e){return Ih([t,0],this._axesLayout[e].transform)},t.prototype.getAxisLayout=function(t){return T(this._axesLayout[t])},t.prototype.getSlidedAxisExpandWindow=function(t){var e=this._makeLayoutInfo(),n=e.pixelDimIndex,i=e.axisExpandWindow.slice(),r=i[1]-i[0],o=[0,e.axisExpandWidth*(e.axisCount-1)];if(!this.containPoint(t))return{behavior:"none",axisExpandWindow:i};var a,s=t[n]-e.layoutBase-e.axisExpandWindow0Pos,l="slide",u=e.axisCollapseWidth,h=this._model.get("axisExpandSlideTriggerArea"),c=null!=h[0];if(u)c&&u&&s<r*h[0]?(l="jump",a=s-r*h[2]):c&&u&&s>r*(1-h[0])?(l="jump",a=s-r*(1-h[2])):(a=s-r*h[1])>=0&&(a=s-r*(1-h[1]))<=0&&(a=0),(a*=e.axisExpandWidth/u)?sk(a,i,o,"all"):l="none";else{var p=i[1]-i[0];(i=[pk(0,o[1]*s/p-p/2)])[1]=ck(o[1],i[0]+p),i[0]=i[1]-p}return{axisExpandWindow:i,behavior:l}},t}();function mk(t,e){return ck(pk(t,e[0]),e[1])}function xk(t,e){var n=e.layoutLength/(e.axisCount-1);return{position:n*t,axisNameAvailableWidth:n,axisLabelShow:!0}}function _k(t,e){var n,i,r=e.layoutLength,o=e.axisExpandWidth,a=e.axisCount,s=e.axisCollapseWidth,l=e.winInnerIndices,u=s,h=!1;return t<l[0]?(n=t*s,i=s):t<=l[1]?(n=e.axisExpandWindow0Pos+t*o-e.axisExpandWindow[0],u=o,h=!0):(n=r-(a-1-t)*s,i=s),{position:n,axisNameAvailableWidth:u,axisLabelShow:h,nameTruncateMaxWidth:i}}var bk={create:function(t,e){var n=[];return t.eachComponent("parallel",(function(i,r){var o=new vk(i,t,e);o.name="parallel_"+r,o.resize(i,e),i.coordinateSystem=o,o.model=i,n.push(o)})),t.eachSeries((function(t){if("parallel"===t.get("coordinateSystem")){var e=t.getReferringComponents("parallel",Co).models[0];t.coordinateSystem=e.coordinateSystem}})),n}},wk=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.activeIntervals=[],n}return n(e,t),e.prototype.getAreaSelectStyle=function(){return Wo([["fill","color"],["lineWidth","borderWidth"],["stroke","borderColor"],["width","width"],["opacity","opacity"]])(this.getModel("areaSelectStyle"))},e.prototype.setActiveIntervals=function(t){var e=this.activeIntervals=T(t);if(e)for(var n=e.length-1;n>=0;n--)Vr(e[n])},e.prototype.getActiveState=function(t){var e=this.activeIntervals;if(!e.length)return"normal";if(null==t||isNaN(+t))return"inactive";if(1===e.length){var n=e[0];if(n[0]<=t&&t<=n[1])return"active"}else for(var i=0,r=e.length;i<r;i++)if(e[i][0]<=t&&t<=e[i][1])return"active";return"inactive"},e}(Ip);R(wk,h_);var Sk=!0,Mk=Math.min,Ik=Math.max,Tk=Math.pow,Ck="globalPan",Dk={w:[0,0],e:[0,1],n:[1,0],s:[1,1]},Ak={w:"ew",e:"ew",n:"ns",s:"ns",ne:"nesw",sw:"nesw",nw:"nwse",se:"nwse"},kk={brushStyle:{lineWidth:2,stroke:"rgba(210,219,238,0.3)",fill:"#D2DBEE"},transformable:!0,brushMode:"single",removeOnClick:!1},Lk=0,Pk=function(t){function e(e){var n=t.call(this)||this;return n._track=[],n._covers=[],n._handlers={},n._zr=e,n.group=new Cr,n._uid="brushController_"+Lk++,E(oL,(function(t,e){this._handlers[e]=W(t,this)}),n),n}return n(e,t),e.prototype.enableBrush=function(t){return this._brushType&&this._doDisableBrush(),t.brushType&&this._doEnableBrush(t),this},e.prototype._doEnableBrush=function(t){var e=this._zr;this._enableGlobalPan||function(t,e,n){CI(t)[e]=n}(e,Ck,this._uid),E(this._handlers,(function(t,n){e.on(n,t)})),this._brushType=t.brushType,this._brushOption=C(T(kk),t,!0)},e.prototype._doDisableBrush=function(){var t=this._zr;!function(t,e,n){var i=CI(t);i[e]===n&&(i[e]=null)}(t,Ck,this._uid),E(this._handlers,(function(e,n){t.off(n,e)})),this._brushType=this._brushOption=null},e.prototype.setPanels=function(t){if(t&&t.length){var e=this._panels={};E(t,(function(t){e[t.panelId]=T(t)}))}else this._panels=null;return this},e.prototype.mount=function(t){t=t||{},this._enableGlobalPan=t.enableGlobalPan;var e=this.group;return this._zr.add(e),e.attr({x:t.x||0,y:t.y||0,rotation:t.rotation||0,scaleX:t.scaleX||1,scaleY:t.scaleY||1}),this._transform=e.getLocalTransform(),this},e.prototype.updateCovers=function(t){t=z(t,(function(t){return C(T(kk),t,!0)}));var e=this._covers,n=this._covers=[],i=this,r=this._creatingCover;return new Sm(e,t,(function(t,e){return o(t.__brushOption,e)}),o).add(a).update(a).remove((function(t){e[t]!==r&&i.group.remove(e[t])})).execute(),this;function o(t,e){return(null!=t.id?t.id:"\0-brush-index-"+e)+"-"+t.brushType}function a(o,a){var s=t[o];if(null!=a&&e[a]===r)n[o]=e[a];else{var l=n[o]=null!=a?(e[a].__brushOption=s,e[a]):Rk(i,Ok(i,s));zk(i,l)}}},e.prototype.unmount=function(){return this.enableBrush(!1),Gk(this),this._zr.remove(this.group),this},e.prototype.dispose=function(){this.unmount(),this.off()},e}(Xt);function Ok(t,e){var n=sL[e.brushType].createCover(t,e);return n.__brushOption=e,Ek(n,e),t.group.add(n),n}function Rk(t,e){var n=Vk(e);return n.endCreating&&(n.endCreating(t,e),Ek(e,e.__brushOption)),e}function Nk(t,e){var n=e.__brushOption;Vk(e).updateCoverShape(t,e,n.range,n)}function Ek(t,e){var n=e.z;null==n&&(n=1e4),t.traverse((function(t){t.z=n,t.z2=n}))}function zk(t,e){Vk(e).updateCommon(t,e),Nk(t,e)}function Vk(t){return sL[t.__brushOption.brushType]}function Bk(t,e,n){var i,r=t._panels;if(!r)return Sk;var o=t._transform;return E(r,(function(t){t.isTargetByCursor(e,n,o)&&(i=t)})),i}function Fk(t,e){var n=t._panels;if(!n)return Sk;var i=e.__brushOption.panelId;return null!=i?n[i]:Sk}function Gk(t){var e=t._covers,n=e.length;return E(e,(function(e){t.group.remove(e)}),t),e.length=0,!!n}function Wk(t,e){var n=z(t._covers,(function(t){var e=t.__brushOption,n=T(e.range);return{brushType:e.brushType,panelId:e.panelId,range:n}}));t.trigger("brush",{areas:n,isEnd:!!e.isEnd,removeOnClick:!!e.removeOnClick})}function Hk(t){var e=t.length-1;return e<0&&(e=0),[t[0],t[e]]}function Yk(t,e,n,i){var r=new Cr;return r.add(new Ts({name:"main",style:jk(n),silent:!0,draggable:!0,cursor:"move",drift:H($k,t,e,r,["n","s","w","e"]),ondragend:H(Wk,e,{isEnd:!0})})),E(i,(function(n){r.add(new Ts({name:n.join(""),style:{opacity:0},draggable:!0,silent:!0,invisible:!0,drift:H($k,t,e,r,n),ondragend:H(Wk,e,{isEnd:!0})}))})),r}function Uk(t,e,n,i){var r=i.brushStyle.lineWidth||0,o=Ik(r,6),a=n[0][0],s=n[1][0],l=a-r/2,u=s-r/2,h=n[0][1],c=n[1][1],p=h-o+r/2,d=c-o+r/2,f=h-a,g=c-s,y=f+r,v=g+r;Zk(t,e,"main",a,s,f,g),i.transformable&&(Zk(t,e,"w",l,u,o,v),Zk(t,e,"e",p,u,o,v),Zk(t,e,"n",l,u,y,o),Zk(t,e,"s",l,d,y,o),Zk(t,e,"nw",l,u,o,o),Zk(t,e,"ne",p,u,o,o),Zk(t,e,"sw",l,d,o,o),Zk(t,e,"se",p,d,o,o))}function Xk(t,e){var n=e.__brushOption,i=n.transformable,r=e.childAt(0);r.useStyle(jk(n)),r.attr({silent:!i,cursor:i?"move":"default"}),E([["w"],["e"],["n"],["s"],["s","e"],["s","w"],["n","e"],["n","w"]],(function(n){var r=e.childOfName(n.join("")),o=1===n.length?Kk(t,n[0]):function(t,e){var n=[Kk(t,e[0]),Kk(t,e[1])];return("e"===n[0]||"w"===n[0])&&n.reverse(),n.join("")}(t,n);r&&r.attr({silent:!i,invisible:!i,cursor:i?Ak[o]+"-resize":null})}))}function Zk(t,e,n,i,r,o,a){var s=e.childOfName(n);s&&s.setShape(function(t){var e=Mk(t[0][0],t[1][0]),n=Mk(t[0][1],t[1][1]),i=Ik(t[0][0],t[1][0]),r=Ik(t[0][1],t[1][1]);return{x:e,y:n,width:i-e,height:r-n}}(tL(t,e,[[i,r],[i+o,r+a]])))}function jk(t){return k({strokeNoScale:!0},t.brushStyle)}function qk(t,e,n,i){var r=[Mk(t,n),Mk(e,i)],o=[Ik(t,n),Ik(e,i)];return[[r[0],o[0]],[r[1],o[1]]]}function Kk(t,e){return{left:"w",right:"e",top:"n",bottom:"s"}[Th({w:"left",e:"right",n:"top",s:"bottom"}[e],function(t){return Mh(t.group)}(t))]}function $k(t,e,n,i,r,o){var a=n.__brushOption,s=t.toRectRange(a.range),l=Qk(e,r,o);E(i,(function(t){var e=Dk[t];s[e[0]][e[1]]+=l[e[0]]})),a.range=t.fromRectRange(qk(s[0][0],s[1][0],s[0][1],s[1][1])),zk(e,n),Wk(e,{isEnd:!1})}function Jk(t,e,n,i){var r=e.__brushOption.range,o=Qk(t,n,i);E(r,(function(t){t[0]+=o[0],t[1]+=o[1]})),zk(t,e),Wk(t,{isEnd:!1})}function Qk(t,e,n){var i=t.group,r=i.transformCoordToLocal(e,n),o=i.transformCoordToLocal(0,0);return[r[0]-o[0],r[1]-o[1]]}function tL(t,e,n){var i=Fk(t,e);return i&&i!==Sk?i.clipPath(n,t._transform):T(n)}function eL(t){var e=t.event;e.preventDefault&&e.preventDefault()}function nL(t,e,n){return t.childOfName("main").contain(e,n)}function iL(t,e,n,i){var r,o=t._creatingCover,a=t._creatingPanel,s=t._brushOption;if(t._track.push(n.slice()),function(t){var e=t._track;if(!e.length)return!1;var n=e[e.length-1],i=e[0],r=n[0]-i[0],o=n[1]-i[1];return Tk(r*r+o*o,.5)>6}(t)||o){if(a&&!o){"single"===s.brushMode&&Gk(t);var l=T(s);l.brushType=rL(l.brushType,a),l.panelId=a===Sk?null:a.panelId,o=t._creatingCover=Ok(t,l),t._covers.push(o)}if(o){var u=sL[rL(t._brushType,a)];o.__brushOption.range=u.getCreatingRange(tL(t,o,t._track)),i&&(Rk(t,o),u.updateCommon(t,o)),Nk(t,o),r={isEnd:i}}}else i&&"single"===s.brushMode&&s.removeOnClick&&Bk(t,e,n)&&Gk(t)&&(r={isEnd:i,removeOnClick:!0});return r}function rL(t,e){return"auto"===t?e.defaultBrushType:t}var oL={mousedown:function(t){if(this._dragging)aL(this,t);else if(!t.target||!t.target.draggable){eL(t);var e=this.group.transformCoordToLocal(t.offsetX,t.offsetY);this._creatingCover=null,(this._creatingPanel=Bk(this,t,e))&&(this._dragging=!0,this._track=[e.slice()])}},mousemove:function(t){var e=t.offsetX,n=t.offsetY,i=this.group.transformCoordToLocal(e,n);if(function(t,e,n){if(t._brushType&&!function(t,e,n){var i=t._zr;return e<0||e>i.getWidth()||n<0||n>i.getHeight()}(t,e.offsetX,e.offsetY)){var i=t._zr,r=t._covers,o=Bk(t,e,n);if(!t._dragging)for(var a=0;a<r.length;a++){var s=r[a].__brushOption;if(o&&(o===Sk||s.panelId===o.panelId)&&sL[s.brushType].contain(r[a],n[0],n[1]))return}o&&i.setCursorStyle("crosshair")}}(this,t,i),this._dragging){eL(t);var r=iL(this,t,i,!1);r&&Wk(this,r)}},mouseup:function(t){aL(this,t)}};function aL(t,e){if(t._dragging){eL(e);var n=e.offsetX,i=e.offsetY,r=t.group.transformCoordToLocal(n,i),o=iL(t,e,r,!0);t._dragging=!1,t._track=[],t._creatingCover=null,o&&Wk(t,o)}}var sL={lineX:lL(0),lineY:lL(1),rect:{createCover:function(t,e){function n(t){return t}return Yk({toRectRange:n,fromRectRange:n},t,e,[["w"],["e"],["n"],["s"],["s","e"],["s","w"],["n","e"],["n","w"]])},getCreatingRange:function(t){var e=Hk(t);return qk(e[1][0],e[1][1],e[0][0],e[0][1])},updateCoverShape:function(t,e,n,i){Uk(t,e,n,i)},updateCommon:Xk,contain:nL},polygon:{createCover:function(t,e){var n=new Cr;return n.add(new Ou({name:"main",style:jk(e),silent:!0})),n},getCreatingRange:function(t){return t},endCreating:function(t,e){e.remove(e.childAt(0)),e.add(new Lu({name:"main",draggable:!0,drift:H(Jk,t,e),ondragend:H(Wk,t,{isEnd:!0})}))},updateCoverShape:function(t,e,n,i){e.childAt(0).setShape({points:tL(t,e,n)})},updateCommon:Xk,contain:nL}};function lL(t){return{createCover:function(e,n){return Yk({toRectRange:function(e){var n=[e,[0,100]];return t&&n.reverse(),n},fromRectRange:function(e){return e[t]}},e,n,[[["w"],["e"]],[["n"],["s"]]][t])},getCreatingRange:function(e){var n=Hk(e);return[Mk(n[0][t],n[1][t]),Ik(n[0][t],n[1][t])]},updateCoverShape:function(e,n,i,r){var o,a=Fk(e,n);if(a!==Sk&&a.getLinearBrushOtherExtent)o=a.getLinearBrushOtherExtent(t);else{var s=e._zr;o=[0,[s.getWidth(),s.getHeight()][1-t]]}var l=[i,o];t&&l.reverse(),Uk(e,n,l,r)},updateCommon:Xk,contain:nL}}function uL(t){return t=pL(t),function(e){return Ah(e,t)}}function hL(t,e){return t=pL(t),function(n){var i=null!=e?e:n,r=i?t.width:t.height,o=i?t.x:t.y;return[o,o+(r||0)]}}function cL(t,e,n){var i=pL(t);return function(t,r){return i.contain(r[0],r[1])&&!EI(t,e,n)}}function pL(t){return sr.create(t)}var dL=["axisLine","axisTickLabel","axisName"],fL=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(e,n){t.prototype.init.apply(this,arguments),(this._brushController=new Pk(n.getZr())).on("brush",W(this._onBrush,this))},e.prototype.render=function(t,e,n,i){if(!function(t,e,n){return n&&"axisAreaSelect"===n.type&&e.findComponents({mainType:"parallelAxis",query:n})[0]===t}(t,e,i)){this.axisModel=t,this.api=n,this.group.removeAll();var r=this._axisGroup;if(this._axisGroup=new Cr,this.group.add(this._axisGroup),t.get("show")){var o=function(t,e){return e.getComponent("parallel",t.get("parallelIndex"))}(t,e),a=o.coordinateSystem,s=t.getAreaSelectStyle(),l=s.width,u=t.axis.dim,h=A({strokeContainThreshold:l},a.getAxisLayout(u)),c=new BM(t,h);E(dL,c.add,c),this._axisGroup.add(c.getGroup()),this._refreshBrushController(h,s,t,o,l,n),Dh(r,this._axisGroup,t)}}},e.prototype._refreshBrushController=function(t,e,n,i,r,o){var a=n.axis.getExtent(),s=a[1]-a[0],l=Math.min(30,.1*Math.abs(s)),u=sr.create({x:a[0],y:-r/2,width:s,height:r});u.x-=l,u.width+=2*l,this._brushController.mount({enableGlobalPan:!0,rotation:t.rotation,x:t.position[0],y:t.position[1]}).setPanels([{panelId:"pl",clipPath:uL(u),isTargetByCursor:cL(u,o,i),getLinearBrushOtherExtent:hL(u,0)}]).enableBrush({brushType:"lineX",brushStyle:e,removeOnClick:!0}).updateCovers(function(t){var e=t.axis;return z(t.activeIntervals,(function(t){return{brushType:"lineX",panelId:"pl",range:[e.dataToCoord(t[0],!0),e.dataToCoord(t[1],!0)]}}))}(n))},e.prototype._onBrush=function(t){var e=t.areas,n=this.axisModel,i=n.axis,r=z(e,(function(t){return[i.coordToData(t.range[0],!0),i.coordToData(t.range[1],!0)]}));(!n.option.realtime===t.isEnd||t.removeOnClick)&&this.api.dispatchAction({type:"axisAreaSelect",parallelAxisId:n.id,intervals:r})},e.prototype.dispose=function(){this._brushController.dispose()},e.type="parallelAxis",e}(fg);var gL={type:"axisAreaSelect",event:"axisAreaSelected"};var yL={type:"value",areaSelectStyle:{width:20,borderWidth:1,borderColor:"rgba(160,197,232)",color:"rgba(160,197,232)",opacity:.3},realtime:!0,z:10};function vL(t){t.registerComponentView(nk),t.registerComponentModel(ok),t.registerCoordinateSystem("parallel",bk),t.registerPreprocessor(ek),t.registerComponentModel(wk),t.registerComponentView(fL),wM(t,"parallel",wk,yL),function(t){t.registerAction(gL,(function(t,e){e.eachComponent({mainType:"parallelAxis",query:t},(function(e){e.axis.model.setActiveIntervals(t.intervals)}))})),t.registerAction("parallelAxisExpand",(function(t,e){e.eachComponent({mainType:"parallel",query:t},(function(e){e.setAxisExpand(t)}))}))}(t)}var mL=function(){this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.cpx1=0,this.cpy1=0,this.cpx2=0,this.cpy2=0,this.extent=0},xL=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultShape=function(){return new mL},e.prototype.buildPath=function(t,e){var n=e.extent;t.moveTo(e.x1,e.y1),t.bezierCurveTo(e.cpx1,e.cpy1,e.cpx2,e.cpy2,e.x2,e.y2),"vertical"===e.orient?(t.lineTo(e.x2+n,e.y2),t.bezierCurveTo(e.cpx2+n,e.cpy2,e.cpx1+n,e.cpy1,e.x1+n,e.y1)):(t.lineTo(e.x2,e.y2+n),t.bezierCurveTo(e.cpx2,e.cpy2+n,e.cpx1,e.cpy1+n,e.x1,e.y1+n)),t.closePath()},e.prototype.highlight=function(){xl(this)},e.prototype.downplay=function(){_l(this)},e}(fs),_L=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._focusAdjacencyDisabled=!1,n}return n(e,t),e.prototype.render=function(t,e,n){var i=this,r=t.getGraph(),o=this.group,a=t.layoutInfo,s=a.width,l=a.height,u=t.getData(),h=t.getData("edge"),c=t.get("orient");this._model=t,o.removeAll(),o.x=a.x,o.y=a.y,r.eachEdge((function(e){var n=new xL,i=Ws(n);i.dataIndex=e.dataIndex,i.seriesIndex=t.seriesIndex,i.dataType="edge";var r,a,u,p,d,f,g,y,v=e.getModel(),m=v.getModel("lineStyle"),x=m.get("curveness"),_=e.node1.getLayout(),b=e.node1.getModel(),w=b.get("localX"),S=b.get("localY"),M=e.node2.getLayout(),I=e.node2.getModel(),T=I.get("localX"),C=I.get("localY"),D=e.getLayout();switch(n.shape.extent=Math.max(1,D.dy),n.shape.orient=c,"vertical"===c?(r=(null!=w?w*s:_.x)+D.sy,a=(null!=S?S*l:_.y)+_.dy,u=(null!=T?T*s:M.x)+D.ty,d=r,f=a*(1-x)+(p=null!=C?C*l:M.y)*x,g=u,y=a*x+p*(1-x)):(r=(null!=w?w*s:_.x)+_.dx,a=(null!=S?S*l:_.y)+D.sy,d=r*(1-x)+(u=null!=T?T*s:M.x)*x,f=a,g=r*x+u*(1-x),y=p=(null!=C?C*l:M.y)+D.ty),n.setShape({x1:r,y1:a,x2:u,y2:p,cpx1:d,cpy1:f,cpx2:g,cpy2:y}),n.useStyle(m.getItemStyle()),n.style.fill){case"source":n.style.fill=e.node1.getVisual("color"),n.style.decal=e.node1.getVisual("style").decal;break;case"target":n.style.fill=e.node2.getVisual("color"),n.style.decal=e.node2.getVisual("style").decal;break;case"gradient":var A=e.node1.getVisual("color"),k=e.node2.getVisual("color");X(A)&&X(k)&&(n.style.fill=new Uu(0,0,+("horizontal"===c),+("vertical"===c),[{color:A,offset:0},{color:k,offset:1}]))}var L=v.getModel("emphasis");zl(n,v,"lineStyle",(function(t){return t.getItemStyle()})),o.add(n),h.setItemGraphicEl(e.dataIndex,n);var P=L.get("focus");Ol(n,"adjacency"===P?e.getAdjacentDataIndices():P,L.get("blurScope"),L.get("disabled")),Ws(n).dataType="edge"})),r.eachNode((function(e){var n=e.getLayout(),i=e.getModel(),r=i.get("localX"),a=i.get("localY"),h=i.getModel("emphasis"),c=new Ts({shape:{x:null!=r?r*s:n.x,y:null!=a?a*l:n.y,width:n.dx,height:n.dy},style:i.getModel("itemStyle").getItemStyle(),z2:10});Wh(c,Hh(i),{labelFetcher:t,labelDataIndex:e.dataIndex,defaultText:e.id}),c.disableLabelAnimation=!0,c.setStyle("fill",e.getVisual("color")),c.setStyle("decal",e.getVisual("style").decal),zl(c,i),o.add(c),u.setItemGraphicEl(e.dataIndex,c),Ws(c).dataType="node";var p=h.get("focus");Ol(c,"adjacency"===p?e.getAdjacentDataIndices():p,h.get("blurScope"),h.get("disabled"))})),u.eachItemGraphicEl((function(e,r){u.getItemModel(r).get("draggable")&&(e.drift=function(e,o){i._focusAdjacencyDisabled=!0,this.shape.x+=e,this.shape.y+=o,this.dirty(),n.dispatchAction({type:"dragNode",seriesId:t.id,dataIndex:u.getRawIndex(r),localX:this.shape.x/s,localY:this.shape.y/l})},e.ondragend=function(){i._focusAdjacencyDisabled=!1},e.draggable=!0,e.cursor="move")})),!this._data&&t.isAnimationEnabled()&&o.setClipPath(function(t,e,n){var i=new Ts({shape:{x:t.x-10,y:t.y-10,width:0,height:t.height+20}});return rh(i,{shape:{width:t.width+20}},e,n),i}(o.getBoundingRect(),t,(function(){o.removeClipPath()}))),this._data=t.getData()},e.prototype.dispose=function(){},e.type="sankey",e}(mg);var bL=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.getInitialData=function(t,e){var n=t.edges||t.links,i=t.data||t.nodes,r=t.levels;this.levelModels=[];for(var o=this.levelModels,a=0;a<r.length;a++)null!=r[a].depth&&r[a].depth>=0&&(o[r[a].depth]=new pc(r[a],this,e));if(i&&n)return PA(i,n,this,!0,(function(t,e){t.wrapMethod("getItemModel",(function(t,e){var n=t.parentModel,i=n.getData().getItemLayout(e);if(i){var r=i.depth,o=n.levelModels[r];o&&(t.parentModel=o)}return t})),e.wrapMethod("getItemModel",(function(t,e){var n=t.parentModel,i=n.getGraph().getEdgeByIndex(e).node1.getLayout();if(i){var r=i.depth,o=n.levelModels[r];o&&(t.parentModel=o)}return t}))})).data},e.prototype.setNodePosition=function(t,e){var n=(this.option.data||this.option.nodes)[t];n.localX=e[0],n.localY=e[1]},e.prototype.getGraph=function(){return this.getData().graph},e.prototype.getEdgeData=function(){return this.getGraph().edgeData},e.prototype.formatTooltip=function(t,e,n){function i(t){return isNaN(t)||null==t}if("edge"===n){var r=this.getDataParams(t,n),o=r.data,a=r.value;return Uf("nameValue",{name:o.source+" -- "+o.target,value:a,noValue:i(a)})}var s=this.getGraph().getNodeByIndex(t).getLayout().value,l=this.getDataParams(t,n).data.name;return Uf("nameValue",{name:null!=l?l+"":null,value:s,noValue:i(s)})},e.prototype.optionUpdated=function(){},e.prototype.getDataParams=function(e,n){var i=t.prototype.getDataParams.call(this,e,n);if(null==i.value&&"node"===n){var r=this.getGraph().getNodeByIndex(e).getLayout().value;i.value=r}return i},e.type="series.sankey",e.defaultOption={z:2,coordinateSystem:"view",left:"5%",top:"5%",right:"20%",bottom:"5%",orient:"horizontal",nodeWidth:20,nodeGap:8,draggable:!0,layoutIterations:32,label:{show:!0,position:"right",fontSize:12},levels:[],nodeAlign:"justify",lineStyle:{color:"#314656",opacity:.2,curveness:.5},emphasis:{label:{show:!0},lineStyle:{opacity:.5}},select:{itemStyle:{borderColor:"#212121"}},animationEasing:"linear",animationDuration:1e3},e}(ag);function wL(t,e){t.eachSeriesByType("sankey",(function(t){var n=t.get("nodeWidth"),i=t.get("nodeGap"),r=function(t,e){return mp(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()})}(t,e);t.layoutInfo=r;var o=r.width,a=r.height,s=t.getGraph(),l=s.nodes,u=s.edges;!function(t){E(t,(function(t){var e=PL(t.outEdges,LL),n=PL(t.inEdges,LL),i=t.getValue()||0,r=Math.max(e,n,i);t.setLayout({value:r},!0)}))}(l),function(t,e,n,i,r,o,a,s,l){(function(t,e,n,i,r,o,a){for(var s=[],l=[],u=[],h=[],c=0,p=0;p<e.length;p++)s[p]=1;for(p=0;p<t.length;p++)l[p]=t[p].inEdges.length,0===l[p]&&u.push(t[p]);var d=-1;for(;u.length;){for(var f=0;f<u.length;f++){var g=u[f],y=g.hostGraph.data.getRawDataItem(g.dataIndex),v=null!=y.depth&&y.depth>=0;v&&y.depth>d&&(d=y.depth),g.setLayout({depth:v?y.depth:c},!0),"vertical"===o?g.setLayout({dy:n},!0):g.setLayout({dx:n},!0);for(var m=0;m<g.outEdges.length;m++){var x=g.outEdges[m];s[e.indexOf(x)]=0;var _=x.node2;0==--l[t.indexOf(_)]&&h.indexOf(_)<0&&h.push(_)}}++c,u=h,h=[]}for(p=0;p<s.length;p++)if(1===s[p])throw new Error("Sankey is a DAG, the original data has cycle!");var b=d>c-1?d:c-1;a&&"left"!==a&&function(t,e,n,i){if("right"===e){for(var r=[],o=t,a=0;o.length;){for(var s=0;s<o.length;s++){var l=o[s];l.setLayout({skNodeHeight:a},!0);for(var u=0;u<l.inEdges.length;u++){var h=l.inEdges[u];r.indexOf(h.node1)<0&&r.push(h.node1)}}o=r,r=[],++a}E(t,(function(t){SL(t)||t.setLayout({depth:Math.max(0,i-t.getLayout().skNodeHeight)},!0)}))}else"justify"===e&&function(t,e){E(t,(function(t){SL(t)||t.outEdges.length||t.setLayout({depth:e},!0)}))}(t,i)}(t,a,0,b);!function(t,e,n){E(t,(function(t){var i=t.getLayout().depth*e;"vertical"===n?t.setLayout({y:i},!0):t.setLayout({x:i},!0)}))}(t,"vertical"===o?(r-n)/b:(i-n)/b,o)})(t,e,n,r,o,s,l),function(t,e,n,i,r,o,a){var s=function(t,e){var n=[],i="vertical"===e?"y":"x",r=Lo(t,(function(t){return t.getLayout()[i]}));return r.keys.sort((function(t,e){return t-e})),E(r.keys,(function(t){n.push(r.buckets.get(t))})),n}(t,a);(function(t,e,n,i,r,o){var a=1/0;E(t,(function(t){var e=t.length,s=0;E(t,(function(t){s+=t.getLayout().value}));var l="vertical"===o?(i-(e-1)*r)/s:(n-(e-1)*r)/s;l<a&&(a=l)})),E(t,(function(t){E(t,(function(t,e){var n=t.getLayout().value*a;"vertical"===o?(t.setLayout({x:e},!0),t.setLayout({dx:n},!0)):(t.setLayout({y:e},!0),t.setLayout({dy:n},!0))}))})),E(e,(function(t){var e=+t.getValue()*a;t.setLayout({dy:e},!0)}))})(s,e,n,i,r,a),ML(s,r,n,i,a);for(var l=1;o>0;o--)IL(s,l*=.99,a),ML(s,r,n,i,a),OL(s,l,a),ML(s,r,n,i,a)}(t,e,o,r,i,a,s),function(t,e){var n="vertical"===e?"x":"y";E(t,(function(t){t.outEdges.sort((function(t,e){return t.node2.getLayout()[n]-e.node2.getLayout()[n]})),t.inEdges.sort((function(t,e){return t.node1.getLayout()[n]-e.node1.getLayout()[n]}))})),E(t,(function(t){var e=0,n=0;E(t.outEdges,(function(t){t.setLayout({sy:e},!0),e+=t.getLayout().dy})),E(t.inEdges,(function(t){t.setLayout({ty:n},!0),n+=t.getLayout().dy}))}))}(t,s)}(l,u,n,i,o,a,0!==B(l,(function(t){return 0===t.getLayout().value})).length?0:t.get("layoutIterations"),t.get("orient"),t.get("nodeAlign"))}))}function SL(t){var e=t.hostGraph.data.getRawDataItem(t.dataIndex);return null!=e.depth&&e.depth>=0}function ML(t,e,n,i,r){var o="vertical"===r?"x":"y";E(t,(function(t){var a,s,l;t.sort((function(t,e){return t.getLayout()[o]-e.getLayout()[o]}));for(var u=0,h=t.length,c="vertical"===r?"dx":"dy",p=0;p<h;p++)(l=u-(s=t[p]).getLayout()[o])>0&&(a=s.getLayout()[o]+l,"vertical"===r?s.setLayout({x:a},!0):s.setLayout({y:a},!0)),u=s.getLayout()[o]+s.getLayout()[c]+e;if((l=u-e-("vertical"===r?i:n))>0){a=s.getLayout()[o]-l,"vertical"===r?s.setLayout({x:a},!0):s.setLayout({y:a},!0),u=a;for(p=h-2;p>=0;--p)(l=(s=t[p]).getLayout()[o]+s.getLayout()[c]+e-u)>0&&(a=s.getLayout()[o]-l,"vertical"===r?s.setLayout({x:a},!0):s.setLayout({y:a},!0)),u=s.getLayout()[o]}}))}function IL(t,e,n){E(t.slice().reverse(),(function(t){E(t,(function(t){if(t.outEdges.length){var i=PL(t.outEdges,TL,n)/PL(t.outEdges,LL);if(isNaN(i)){var r=t.outEdges.length;i=r?PL(t.outEdges,CL,n)/r:0}if("vertical"===n){var o=t.getLayout().x+(i-kL(t,n))*e;t.setLayout({x:o},!0)}else{var a=t.getLayout().y+(i-kL(t,n))*e;t.setLayout({y:a},!0)}}}))}))}function TL(t,e){return kL(t.node2,e)*t.getValue()}function CL(t,e){return kL(t.node2,e)}function DL(t,e){return kL(t.node1,e)*t.getValue()}function AL(t,e){return kL(t.node1,e)}function kL(t,e){return"vertical"===e?t.getLayout().x+t.getLayout().dx/2:t.getLayout().y+t.getLayout().dy/2}function LL(t){return t.getValue()}function PL(t,e,n){for(var i=0,r=t.length,o=-1;++o<r;){var a=+e(t[o],n);isNaN(a)||(i+=a)}return i}function OL(t,e,n){E(t,(function(t){E(t,(function(t){if(t.inEdges.length){var i=PL(t.inEdges,DL,n)/PL(t.inEdges,LL);if(isNaN(i)){var r=t.inEdges.length;i=r?PL(t.inEdges,AL,n)/r:0}if("vertical"===n){var o=t.getLayout().x+(i-kL(t,n))*e;t.setLayout({x:o},!0)}else{var a=t.getLayout().y+(i-kL(t,n))*e;t.setLayout({y:a},!0)}}}))}))}function RL(t){t.eachSeriesByType("sankey",(function(t){var e=t.getGraph().nodes;if(e.length){var n=1/0,i=-1/0;E(e,(function(t){var e=t.getLayout().value;e<n&&(n=e),e>i&&(i=e)})),E(e,(function(e){var r=new eD({type:"color",mappingMethod:"linear",dataExtent:[n,i],visual:t.get("color")}).mapValueToVisual(e.getLayout().value),o=e.getModel().get(["itemStyle","color"]);null!=o?(e.setVisual("color",o),e.setVisual("style",{fill:o})):(e.setVisual("color",r),e.setVisual("style",{fill:r}))}))}}))}var NL=function(){function t(){}return t.prototype.getInitialData=function(t,e){var n,i,r=e.getComponent("xAxis",this.get("xAxisIndex")),o=e.getComponent("yAxis",this.get("yAxisIndex")),a=r.get("type"),s=o.get("type");"category"===a?(t.layout="horizontal",n=r.getOrdinalMeta(),i=!0):"category"===s?(t.layout="vertical",n=o.getOrdinalMeta(),i=!0):t.layout=t.layout||"horizontal";var l=["x","y"],u="horizontal"===t.layout?0:1,h=this._baseAxisDim=l[u],c=l[1-u],p=[r,o],d=p[u].get("type"),f=p[1-u].get("type"),g=t.data;if(g&&i){var y=[];E(g,(function(t,e){var n;Y(t)?(n=t.slice(),t.unshift(e)):Y(t.value)?((n=A({},t)).value=n.value.slice(),t.value.unshift(e)):n=t,y.push(n)})),t.data=y}var v=this.defaultValueDimensions,m=[{name:h,type:Tm(d),ordinalMeta:n,otherDims:{tooltip:!1,itemName:0},dimsDef:["base"]},{name:c,type:Tm(f),dimsDef:v.slice()}];return sM(this,{coordDimensions:m,dimensionsCount:v.length+1,encodeDefaulter:H(Wp,m,this)})},t.prototype.getBaseAxis=function(){var t=this._baseAxisDim;return this.ecModel.getComponent(t+"Axis",this.get(t+"AxisIndex")).axis},t}(),EL=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.defaultValueDimensions=[{name:"min",defaultTooltip:!0},{name:"Q1",defaultTooltip:!0},{name:"median",defaultTooltip:!0},{name:"Q3",defaultTooltip:!0},{name:"max",defaultTooltip:!0}],n.visualDrawType="stroke",n}return n(e,t),e.type="series.boxplot",e.dependencies=["xAxis","yAxis","grid"],e.defaultOption={z:2,coordinateSystem:"cartesian2d",legendHoverLink:!0,layout:null,boxWidth:[7,50],itemStyle:{color:"#fff",borderWidth:1},emphasis:{scale:!0,itemStyle:{borderWidth:2,shadowBlur:5,shadowOffsetX:1,shadowOffsetY:1,shadowColor:"rgba(0,0,0,0.2)"}},animationDuration:800},e}(ag);R(EL,NL,!0);var zL=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i=t.getData(),r=this.group,o=this._data;this._data||r.removeAll();var a="horizontal"===t.get("layout")?1:0;i.diff(o).add((function(t){if(i.hasValue(t)){var e=FL(i.getItemLayout(t),i,t,a,!0);i.setItemGraphicEl(t,e),r.add(e)}})).update((function(t,e){var n=o.getItemGraphicEl(e);if(i.hasValue(t)){var s=i.getItemLayout(t);n?(uh(n),GL(s,n,i,t)):n=FL(s,i,t,a),r.add(n),i.setItemGraphicEl(t,n)}else r.remove(n)})).remove((function(t){var e=o.getItemGraphicEl(t);e&&r.remove(e)})).execute(),this._data=i},e.prototype.remove=function(t){var e=this.group,n=this._data;this._data=null,n&&n.eachItemGraphicEl((function(t){t&&e.remove(t)}))},e.type="boxplot",e}(mg),VL=function(){},BL=function(t){function e(e){var n=t.call(this,e)||this;return n.type="boxplotBoxPath",n}return n(e,t),e.prototype.getDefaultShape=function(){return new VL},e.prototype.buildPath=function(t,e){var n=e.points,i=0;for(t.moveTo(n[i][0],n[i][1]),i++;i<4;i++)t.lineTo(n[i][0],n[i][1]);for(t.closePath();i<n.length;i++)t.moveTo(n[i][0],n[i][1]),i++,t.lineTo(n[i][0],n[i][1])},e}(fs);function FL(t,e,n,i,r){var o=t.ends,a=new BL({shape:{points:r?WL(o,i,t):o}});return GL(t,a,e,n,r),a}function GL(t,e,n,i,r){var o=n.hostModel;(0,Vh[r?"initProps":"updateProps"])(e,{shape:{points:t.ends}},o,i),e.useStyle(n.getItemVisual(i,"style")),e.style.strokeNoScale=!0,e.z2=100;var a=n.getItemModel(i),s=a.getModel("emphasis");zl(e,a),Ol(e,s.get("focus"),s.get("blurScope"),s.get("disabled"))}function WL(t,e,n){return z(t,(function(t){return(t=t.slice())[e]=n.initBaseline,t}))}function HL(t,e){}var YL=E;function UL(t){var e=function(t){var e=[],n=[];return t.eachSeriesByType("boxplot",(function(t){var i=t.getBaseAxis(),r=P(n,i);r<0&&(r=n.length,n[r]=i,e[r]={axis:i,seriesModels:[]}),e[r].seriesModels.push(t)})),e}(t);YL(e,(function(t){var e=t.seriesModels;e.length&&(!function(t){var e,n=t.axis,i=t.seriesModels,r=i.length,o=t.boxWidthList=[],a=t.boxOffsetList=[],s=[];if("category"===n.type)e=n.getBandWidth();else{var l=0;YL(i,(function(t){l=Math.max(l,t.getData().count())}));var u=n.getExtent();e=Math.abs(u[1]-u[0])/l}YL(i,(function(t){var n=t.get("boxWidth");Y(n)||(n=[n,n]),s.push([Er(n[0],e)||0,Er(n[1],e)||0])}));var h=.8*e-2,c=h/r*.3,p=(h-c*(r-1))/r,d=p/2-h/2;YL(i,(function(t,e){a.push(d),d+=c+p,o.push(Math.min(Math.max(p,s[e][0]),s[e][1]))}))}(t),YL(e,(function(e,n){!function(t,e,n){var i=t.coordinateSystem,r=t.getData(),o=n/2,a="horizontal"===t.get("layout")?0:1,s=1-a,l=["x","y"],u=r.mapDimension(l[a]),h=r.mapDimensionsAll(l[s]);if(null==u||h.length<5)return;for(var c=0;c<r.count();c++){var p=r.get(u,c),d=x(p,h[2],c),f=x(p,h[0],c),g=x(p,h[1],c),y=x(p,h[3],c),v=x(p,h[4],c),m=[];_(m,g,!1),_(m,y,!0),m.push(f,g,v,y),b(m,f),b(m,v),b(m,d),r.setItemLayout(c,{initBaseline:d[s],ends:m})}function x(t,n,o){var l,u=r.get(n,o),h=[];return h[a]=t,h[s]=u,isNaN(t)||isNaN(u)?l=[NaN,NaN]:(l=i.dataToPoint(h))[a]+=e,l}function _(t,e,n){var i=e.slice(),r=e.slice();i[a]+=o,r[a]-=o,n?t.push(i,r):t.push(r,i)}function b(t,e){var n=e.slice(),i=e.slice();n[a]-=o,i[a]+=o,t.push(n,i)}}(e,t.boxOffsetList[n],t.boxWidthList[n])})))}))}var XL={type:"echarts:boxplot",transform:function(t){var e=t.upstream;if(e.sourceFormat!==Lp){var n="";0,ao(n)}var i=function(t,e){for(var n=[],i=[],r=(e=e||{}).boundIQR,o="none"===r||0===r,a=0;a<t.length;a++){var s=Vr(t[a].slice()),l=Jr(s,.25),u=Jr(s,.5),h=Jr(s,.75),c=s[0],p=s[s.length-1],d=(null==r?1.5:r)*(h-l),f=o?c:Math.max(c,l-d),g=o?p:Math.min(p,h+d),y=e.itemNameFormatter,v=U(y)?y({value:a}):X(y)?y.replace("{value}",a+""):a+"";n.push([v,f,l,u,h,g]);for(var m=0;m<s.length;m++){var x=s[m];if(x<f||x>g){var _=[v,x];i.push(_)}}}return{boxData:n,outliers:i}}(e.getRawData(),t.config);return[{dimensions:["ItemName","Low","Q1","Q2","Q3","High"],data:i.boxData},{data:i.outliers}]}};var ZL=["color","borderColor"],jL=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){this.group.removeClipPath(),this._progressiveEls=null,this._updateDrawMode(t),this._isLargeDraw?this._renderLarge(t):this._renderNormal(t)},e.prototype.incrementalPrepareRender=function(t,e,n){this._clear(),this._updateDrawMode(t)},e.prototype.incrementalRender=function(t,e,n,i){this._progressiveEls=[],this._isLargeDraw?this._incrementalRenderLarge(t,e):this._incrementalRenderNormal(t,e)},e.prototype.eachRendered=function(t){zh(this._progressiveEls||this.group,t)},e.prototype._updateDrawMode=function(t){var e=t.pipelineContext.large;null!=this._isLargeDraw&&e===this._isLargeDraw||(this._isLargeDraw=e,this._clear())},e.prototype._renderNormal=function(t){var e=t.getData(),n=this._data,i=this.group,r=e.getLayout("isSimpleBox"),o=t.get("clip",!0),a=t.coordinateSystem,s=a.getArea&&a.getArea();this._data||i.removeAll(),e.diff(n).add((function(n){if(e.hasValue(n)){var a=e.getItemLayout(n);if(o&&JL(s,a))return;var l=$L(a,n,!0);rh(l,{shape:{points:a.ends}},t,n),QL(l,e,n,r),i.add(l),e.setItemGraphicEl(n,l)}})).update((function(a,l){var u=n.getItemGraphicEl(l);if(e.hasValue(a)){var h=e.getItemLayout(a);o&&JL(s,h)?i.remove(u):(u?(ih(u,{shape:{points:h.ends}},t,a),uh(u)):u=$L(h),QL(u,e,a,r),i.add(u),e.setItemGraphicEl(a,u))}else i.remove(u)})).remove((function(t){var e=n.getItemGraphicEl(t);e&&i.remove(e)})).execute(),this._data=e},e.prototype._renderLarge=function(t){this._clear(),iP(t,this.group);var e=t.get("clip",!0)?aS(t.coordinateSystem,!1,t):null;e?this.group.setClipPath(e):this.group.removeClipPath()},e.prototype._incrementalRenderNormal=function(t,e){for(var n,i=e.getData(),r=i.getLayout("isSimpleBox");null!=(n=t.next());){var o=$L(i.getItemLayout(n));QL(o,i,n,r),o.incremental=!0,this.group.add(o),this._progressiveEls.push(o)}},e.prototype._incrementalRenderLarge=function(t,e){iP(e,this.group,this._progressiveEls,!0)},e.prototype.remove=function(t){this._clear()},e.prototype._clear=function(){this.group.removeAll(),this._data=null},e.type="candlestick",e}(mg),qL=function(){},KL=function(t){function e(e){var n=t.call(this,e)||this;return n.type="normalCandlestickBox",n}return n(e,t),e.prototype.getDefaultShape=function(){return new qL},e.prototype.buildPath=function(t,e){var n=e.points;this.__simpleBox?(t.moveTo(n[4][0],n[4][1]),t.lineTo(n[6][0],n[6][1])):(t.moveTo(n[0][0],n[0][1]),t.lineTo(n[1][0],n[1][1]),t.lineTo(n[2][0],n[2][1]),t.lineTo(n[3][0],n[3][1]),t.closePath(),t.moveTo(n[4][0],n[4][1]),t.lineTo(n[5][0],n[5][1]),t.moveTo(n[6][0],n[6][1]),t.lineTo(n[7][0],n[7][1]))},e}(fs);function $L(t,e,n){var i=t.ends;return new KL({shape:{points:n?tP(i,t):i},z2:100})}function JL(t,e){for(var n=!0,i=0;i<e.ends.length;i++)if(t.contain(e.ends[i][0],e.ends[i][1])){n=!1;break}return n}function QL(t,e,n,i){var r=e.getItemModel(n);t.useStyle(e.getItemVisual(n,"style")),t.style.strokeNoScale=!0,t.__simpleBox=i,zl(t,r)}function tP(t,e){return z(t,(function(t){return(t=t.slice())[1]=e.initBaseline,t}))}var eP=function(){},nP=function(t){function e(e){var n=t.call(this,e)||this;return n.type="largeCandlestickBox",n}return n(e,t),e.prototype.getDefaultShape=function(){return new eP},e.prototype.buildPath=function(t,e){for(var n=e.points,i=0;i<n.length;)if(this.__sign===n[i++]){var r=n[i++];t.moveTo(r,n[i++]),t.lineTo(r,n[i++])}else i+=3},e}(fs);function iP(t,e,n,i){var r=t.getData().getLayout("largePoints"),o=new nP({shape:{points:r},__sign:1});e.add(o);var a=new nP({shape:{points:r},__sign:-1});e.add(a),rP(1,o,t),rP(-1,a,t),i&&(o.incremental=!0,a.incremental=!0),n&&n.push(o,a)}function rP(t,e,n,i){var r=n.get(["itemStyle",t>0?"borderColor":"borderColor0"])||n.get(["itemStyle",t>0?"color":"color0"]),o=n.getModel("itemStyle").getItemStyle(ZL);e.useStyle(o),e.style.fill=null,e.style.stroke=r}var oP=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.defaultValueDimensions=[{name:"open",defaultTooltip:!0},{name:"close",defaultTooltip:!0},{name:"lowest",defaultTooltip:!0},{name:"highest",defaultTooltip:!0}],n}return n(e,t),e.prototype.getShadowDim=function(){return"open"},e.prototype.brushSelector=function(t,e,n){var i=e.getItemLayout(t);return i&&n.rect(i.brushRect)},e.type="series.candlestick",e.dependencies=["xAxis","yAxis","grid"],e.defaultOption={z:2,coordinateSystem:"cartesian2d",legendHoverLink:!0,layout:null,clip:!0,itemStyle:{color:"#eb5454",color0:"#47b262",borderColor:"#eb5454",borderColor0:"#47b262",borderWidth:1},emphasis:{scale:!0,itemStyle:{borderWidth:2}},barMaxWidth:null,barMinWidth:null,barWidth:null,large:!0,largeThreshold:600,progressive:3e3,progressiveThreshold:1e4,progressiveChunkMode:"mod",animationEasing:"linear",animationDuration:300},e}(ag);function aP(t){t&&Y(t.series)&&E(t.series,(function(t){q(t)&&"k"===t.type&&(t.type="candlestick")}))}R(oP,NL,!0);var sP=["itemStyle","borderColor"],lP=["itemStyle","borderColor0"],uP=["itemStyle","color"],hP=["itemStyle","color0"],cP={seriesType:"candlestick",plan:gg(),performRawSeries:!0,reset:function(t,e){function n(t,e){return e.get(t>0?uP:hP)}function i(t,e){return e.get(t>0?sP:lP)}if(!e.isSeriesFiltered(t))return!t.pipelineContext.large&&{progress:function(t,e){for(var r;null!=(r=t.next());){var o=e.getItemModel(r),a=e.getItemLayout(r).sign,s=o.getItemStyle();s.fill=n(a,o),s.stroke=i(a,o)||s.fill,A(e.ensureUniqueItemVisual(r,"style"),s)}}}}},pP={seriesType:"candlestick",plan:gg(),reset:function(t){var e=t.coordinateSystem,n=t.getData(),i=function(t,e){var n,i=t.getBaseAxis(),r="category"===i.type?i.getBandWidth():(n=i.getExtent(),Math.abs(n[1]-n[0])/e.count()),o=Er(rt(t.get("barMaxWidth"),r),r),a=Er(rt(t.get("barMinWidth"),1),r),s=t.get("barWidth");return null!=s?Er(s,r):Math.max(Math.min(r/2,o),a)}(t,n),r=["x","y"],o=n.getDimensionIndex(n.mapDimension(r[0])),a=z(n.mapDimensionsAll(r[1]),n.getDimensionIndex,n),s=a[0],l=a[1],u=a[2],h=a[3];if(n.setLayout({candleWidth:i,isSimpleBox:i<=1.3}),!(o<0||a.length<4))return{progress:t.pipelineContext.large?function(t,n){var i,r,a=_x(4*t.count),c=0,p=[],d=[],f=n.getStore();for(;null!=(r=t.next());){var g=f.get(o,r),y=f.get(s,r),v=f.get(l,r),m=f.get(u,r),x=f.get(h,r);isNaN(g)||isNaN(m)||isNaN(x)?(a[c++]=NaN,c+=3):(a[c++]=dP(f,r,y,v,l),p[0]=g,p[1]=m,i=e.dataToPoint(p,null,d),a[c++]=i?i[0]:NaN,a[c++]=i?i[1]:NaN,p[1]=x,i=e.dataToPoint(p,null,d),a[c++]=i?i[1]:NaN)}n.setLayout("largePoints",a)}:function(t,n){var r,a=n.getStore();for(;null!=(r=t.next());){var c=a.get(o,r),p=a.get(s,r),d=a.get(l,r),f=a.get(u,r),g=a.get(h,r),y=Math.min(p,d),v=Math.max(p,d),m=S(y,c),x=S(v,c),_=S(f,c),b=S(g,c),w=[];M(w,x,0),M(w,m,1),w.push(T(b),T(x),T(_),T(m)),n.setItemLayout(r,{sign:dP(a,r,p,d,l),initBaseline:p>d?x[1]:m[1],ends:w,brushRect:I(f,g,c)})}function S(t,n){var i=[];return i[0]=n,i[1]=t,isNaN(n)||isNaN(t)?[NaN,NaN]:e.dataToPoint(i)}function M(t,e,n){var r=e.slice(),o=e.slice();r[0]=Sh(r[0]+i/2,1,!1),o[0]=Sh(o[0]-i/2,1,!0),n?t.push(r,o):t.push(o,r)}function I(t,e,n){var r=S(t,n),o=S(e,n);return r[0]-=i/2,o[0]-=i/2,{x:r[0],y:r[1],width:i,height:o[1]-r[1]}}function T(t){return t[0]=Sh(t[0],1),t}}}}};function dP(t,e,n,i,r){return n>i?-1:n<i?1:e>0?t.get(r,e-1)<=i?1:-1:1}function fP(t,e){var n=e.rippleEffectColor||e.color;t.eachChild((function(t){t.attr({z:e.z,zlevel:e.zlevel,style:{stroke:"stroke"===e.brushType?n:null,fill:"fill"===e.brushType?n:null}})}))}var gP=function(t){function e(e,n){var i=t.call(this)||this,r=new Ww(e,n),o=new Cr;return i.add(r),i.add(o),i.updateData(e,n),i}return n(e,t),e.prototype.stopEffectAnimation=function(){this.childAt(1).removeAll()},e.prototype.startEffectAnimation=function(t){for(var e=t.symbolType,n=t.color,i=t.rippleNumber,r=this.childAt(1),o=0;o<i;o++){var a=ky(e,-1,-1,2,2,n);a.attr({style:{strokeNoScale:!0},z2:99,silent:!0,scaleX:.5,scaleY:.5});var s=-o/i*t.period+t.effectOffset;a.animate("",!0).when(t.period,{scaleX:t.rippleScale/2,scaleY:t.rippleScale/2}).delay(s).start(),a.animateStyle(!0).when(t.period,{opacity:0}).delay(s).start(),r.add(a)}fP(r,t)},e.prototype.updateEffectAnimation=function(t){for(var e=this._effectCfg,n=this.childAt(1),i=["symbolType","period","rippleScale","rippleNumber"],r=0;r<i.length;r++){var o=i[r];if(e[o]!==t[o])return this.stopEffectAnimation(),void this.startEffectAnimation(t)}fP(n,t)},e.prototype.highlight=function(){xl(this)},e.prototype.downplay=function(){_l(this)},e.prototype.getSymbolType=function(){var t=this.childAt(0);return t&&t.getSymbolType()},e.prototype.updateData=function(t,e){var n=this,i=t.hostModel;this.childAt(0).updateData(t,e);var r=this.childAt(1),o=t.getItemModel(e),a=t.getItemVisual(e,"symbol"),s=Ly(t.getItemVisual(e,"symbolSize")),l=t.getItemVisual(e,"style"),u=l&&l.fill,h=o.getModel("emphasis");r.setScale(s),r.traverse((function(t){t.setStyle("fill",u)}));var c=Py(t.getItemVisual(e,"symbolOffset"),s);c&&(r.x=c[0],r.y=c[1]);var p=t.getItemVisual(e,"symbolRotate");r.rotation=(p||0)*Math.PI/180||0;var d={};d.showEffectOn=i.get("showEffectOn"),d.rippleScale=o.get(["rippleEffect","scale"]),d.brushType=o.get(["rippleEffect","brushType"]),d.period=1e3*o.get(["rippleEffect","period"]),d.effectOffset=e/t.count(),d.z=i.getShallow("z")||0,d.zlevel=i.getShallow("zlevel")||0,d.symbolType=a,d.color=u,d.rippleEffectColor=o.get(["rippleEffect","color"]),d.rippleNumber=o.get(["rippleEffect","number"]),"render"===d.showEffectOn?(this._effectCfg?this.updateEffectAnimation(d):this.startEffectAnimation(d),this._effectCfg=d):(this._effectCfg=null,this.stopEffectAnimation(),this.onHoverStateChange=function(t){"emphasis"===t?"render"!==d.showEffectOn&&n.startEffectAnimation(d):"normal"===t&&"render"!==d.showEffectOn&&n.stopEffectAnimation()}),this._effectCfg=d,Ol(this,h.get("focus"),h.get("blurScope"),h.get("disabled"))},e.prototype.fadeOut=function(t){t&&t()},e}(Cr),yP=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(){this._symbolDraw=new Zw(gP)},e.prototype.render=function(t,e,n){var i=t.getData(),r=this._symbolDraw;r.updateData(i,{clipShape:this._getClipShape(t)}),this.group.add(r.group)},e.prototype._getClipShape=function(t){var e=t.coordinateSystem,n=e&&e.getArea&&e.getArea();return t.get("clip",!0)?n:null},e.prototype.updateTransform=function(t,e,n){var i=t.getData();this.group.dirty();var r=xS("").reset(t,e,n);r.progress&&r.progress({start:0,end:i.count(),count:i.count()},i),this._symbolDraw.updateLayout()},e.prototype._updateGroupTransform=function(t){var e=t.coordinateSystem;e&&e.getRoamTransform&&(this.group.transform=Fi(e.getRoamTransform()),this.group.decomposeTransform())},e.prototype.remove=function(t,e){this._symbolDraw&&this._symbolDraw.remove(!0)},e.type="effectScatter",e}(mg),vP=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.hasSymbolVisual=!0,n}return n(e,t),e.prototype.getInitialData=function(t,e){return nx(null,this,{useEncodeDefaulter:!0})},e.prototype.brushSelector=function(t,e,n){return n.point(e.getItemLayout(t))},e.type="series.effectScatter",e.dependencies=["grid","polar"],e.defaultOption={coordinateSystem:"cartesian2d",z:2,legendHoverLink:!0,effectType:"ripple",progressive:0,showEffectOn:"render",clip:!0,rippleEffect:{period:4,scale:2.5,brushType:"fill",number:3},universalTransition:{divideShape:"clone"},symbolSize:10},e}(ag);var mP=function(t){function e(e,n,i){var r=t.call(this)||this;return r.add(r.createLine(e,n,i)),r._updateEffectSymbol(e,n),r}return n(e,t),e.prototype.createLine=function(t,e,n){return new pA(t,e,n)},e.prototype._updateEffectSymbol=function(t,e){var n=t.getItemModel(e).getModel("effect"),i=n.get("symbolSize"),r=n.get("symbol");Y(i)||(i=[i,i]);var o=t.getItemVisual(e,"style"),a=n.get("color")||o&&o.stroke,s=this.childAt(1);this._symbolType!==r&&(this.remove(s),(s=ky(r,-.5,-.5,1,1,a)).z2=100,s.culling=!0,this.add(s)),s&&(s.setStyle("shadowColor",a),s.setStyle(n.getItemStyle(["color"])),s.scaleX=i[0],s.scaleY=i[1],s.setColor(a),this._symbolType=r,this._symbolScale=i,this._updateEffectAnimation(t,n,e))},e.prototype._updateEffectAnimation=function(t,e,n){var i=this.childAt(1);if(i){var r=this,o=t.getItemLayout(n),a=1e3*e.get("period"),s=e.get("loop"),l=e.get("constantSpeed"),u=it(e.get("delay"),(function(e){return e/t.count()*a/3}));if(i.ignore=!0,this._updateAnimationPoints(i,o),l>0&&(a=this._getLineLength(i)/l*1e3),(a!==this._period||s!==this._loop)&&(i.stopAnimation(),a>0)){var h=void 0;h=U(u)?u(n):u,i.__t>0&&(h=-a*i.__t),i.__t=0;var c=i.animate("",s).when(a,{__t:1}).delay(h).during((function(){r._updateSymbolPosition(i)}));s||c.done((function(){r.remove(i)})),c.start()}this._period=a,this._loop=s}},e.prototype._getLineLength=function(t){return Et(t.__p1,t.__cp1)+Et(t.__cp1,t.__p2)},e.prototype._updateAnimationPoints=function(t,e){t.__p1=e[0],t.__p2=e[1],t.__cp1=e[2]||[(e[0][0]+e[1][0])/2,(e[0][1]+e[1][1])/2]},e.prototype.updateData=function(t,e,n){this.childAt(0).updateData(t,e,n),this._updateEffectSymbol(t,e)},e.prototype._updateSymbolPosition=function(t){var e=t.__p1,n=t.__p2,i=t.__cp1,r=t.__t,o=[t.x,t.y],a=o.slice(),s=Ke,l=$e;o[0]=s(e[0],i[0],n[0],r),o[1]=s(e[1],i[1],n[1],r);var u=l(e[0],i[0],n[0],r),h=l(e[1],i[1],n[1],r);t.rotation=-Math.atan2(h,u)-Math.PI/2,"line"!==this._symbolType&&"rect"!==this._symbolType&&"roundRect"!==this._symbolType||(void 0!==t.__lastT&&t.__lastT<t.__t?(t.scaleY=1.05*Et(a,o),1===r&&(o[0]=a[0]+(o[0]-a[0])/2,o[1]=a[1]+(o[1]-a[1])/2)):1===t.__lastT?t.scaleY=2*Et(e,o):t.scaleY=this._symbolScale[1]),t.__lastT=t.__t,t.ignore=!1,t.x=o[0],t.y=o[1]},e.prototype.updateLayout=function(t,e){this.childAt(0).updateLayout(t,e);var n=t.getItemModel(e).getModel("effect");this._updateEffectAnimation(t,n,e)},e}(Cr),xP=function(t){function e(e,n,i){var r=t.call(this)||this;return r._createPolyline(e,n,i),r}return n(e,t),e.prototype._createPolyline=function(t,e,n){var i=t.getItemLayout(e),r=new Ou({shape:{points:i}});this.add(r),this._updateCommonStl(t,e,n)},e.prototype.updateData=function(t,e,n){var i=t.hostModel;ih(this.childAt(0),{shape:{points:t.getItemLayout(e)}},i,e),this._updateCommonStl(t,e,n)},e.prototype._updateCommonStl=function(t,e,n){var i=this.childAt(0),r=t.getItemModel(e),o=n&&n.emphasisLineStyle,a=n&&n.focus,s=n&&n.blurScope,l=n&&n.emphasisDisabled;if(!n||t.hasItemOption){var u=r.getModel("emphasis");o=u.getModel("lineStyle").getLineStyle(),l=u.get("disabled"),a=u.get("focus"),s=u.get("blurScope")}i.useStyle(t.getItemVisual(e,"style")),i.style.fill=null,i.style.strokeNoScale=!0,i.ensureState("emphasis").style=o,Ol(this,a,s,l)},e.prototype.updateLayout=function(t,e){this.childAt(0).setShape("points",t.getItemLayout(e))},e}(Cr),_P=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._lastFrame=0,e._lastFramePercent=0,e}return n(e,t),e.prototype.createLine=function(t,e,n){return new xP(t,e,n)},e.prototype._updateAnimationPoints=function(t,e){this._points=e;for(var n=[0],i=0,r=1;r<e.length;r++){var o=e[r-1],a=e[r];i+=Et(o,a),n.push(i)}if(0!==i){for(r=0;r<n.length;r++)n[r]/=i;this._offsets=n,this._length=i}else this._length=0},e.prototype._getLineLength=function(){return this._length},e.prototype._updateSymbolPosition=function(t){var e=t.__t,n=this._points,i=this._offsets,r=n.length;if(i){var o,a=this._lastFrame;if(e<this._lastFramePercent){for(o=Math.min(a+1,r-1);o>=0&&!(i[o]<=e);o--);o=Math.min(o,r-2)}else{for(o=a;o<r&&!(i[o]>e);o++);o=Math.min(o-1,r-2)}var s=(e-i[o])/(i[o+1]-i[o]),l=n[o],u=n[o+1];t.x=l[0]*(1-s)+s*u[0],t.y=l[1]*(1-s)+s*u[1];var h=u[0]-l[0],c=u[1]-l[1];t.rotation=-Math.atan2(c,h)-Math.PI/2,this._lastFrame=o,this._lastFramePercent=e,t.ignore=!1}},e}(mP),bP=function(){this.polyline=!1,this.curveness=0,this.segs=[]},wP=function(t){function e(e){var n=t.call(this,e)||this;return n._off=0,n.hoverDataIdx=-1,n}return n(e,t),e.prototype.reset=function(){this.notClear=!1,this._off=0},e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new bP},e.prototype.buildPath=function(t,e){var n,i=e.segs,r=e.curveness;if(e.polyline)for(n=this._off;n<i.length;){var o=i[n++];if(o>0){t.moveTo(i[n++],i[n++]);for(var a=1;a<o;a++)t.lineTo(i[n++],i[n++])}}else for(n=this._off;n<i.length;){var s=i[n++],l=i[n++],u=i[n++],h=i[n++];if(t.moveTo(s,l),r>0){var c=(s+u)/2-(l-h)*r,p=(l+h)/2-(u-s)*r;t.quadraticCurveTo(c,p,u,h)}else t.lineTo(u,h)}this.incremental&&(this._off=n,this.notClear=!0)},e.prototype.findDataIndex=function(t,e){var n=this.shape,i=n.segs,r=n.curveness,o=this.style.lineWidth;if(n.polyline)for(var a=0,s=0;s<i.length;){var l=i[s++];if(l>0)for(var u=i[s++],h=i[s++],c=1;c<l;c++){if(qa(u,h,p=i[s++],d=i[s++],o,t,e))return a}a++}else for(a=0,s=0;s<i.length;){u=i[s++],h=i[s++];var p=i[s++],d=i[s++];if(r>0){if($a(u,h,(u+p)/2-(h-d)*r,(h+d)/2-(p-u)*r,p,d,o,t,e))return a}else if(qa(u,h,p,d,o,t,e))return a;a++}return-1},e.prototype.contain=function(t,e){var n=this.transformCoordToLocal(t,e),i=this.getBoundingRect();return t=n[0],e=n[1],i.contain(t,e)?(this.hoverDataIdx=this.findDataIndex(t,e))>=0:(this.hoverDataIdx=-1,!1)},e.prototype.getBoundingRect=function(){var t=this._rect;if(!t){for(var e=this.shape.segs,n=1/0,i=1/0,r=-1/0,o=-1/0,a=0;a<e.length;){var s=e[a++],l=e[a++];n=Math.min(s,n),r=Math.max(s,r),i=Math.min(l,i),o=Math.max(l,o)}t=this._rect=new sr(n,i,r,o)}return t},e}(fs),SP=function(){function t(){this.group=new Cr}return t.prototype.updateData=function(t){this._clear();var e=this._create();e.setShape({segs:t.getLayout("linesPoints")}),this._setCommon(e,t)},t.prototype.incrementalPrepareUpdate=function(t){this.group.removeAll(),this._clear()},t.prototype.incrementalUpdate=function(t,e){var n=this._newAdded[0],i=e.getLayout("linesPoints"),r=n&&n.shape.segs;if(r&&r.length<2e4){var o=r.length,a=new Float32Array(o+i.length);a.set(r),a.set(i,o),n.setShape({segs:a})}else{this._newAdded=[];var s=this._create();s.incremental=!0,s.setShape({segs:i}),this._setCommon(s,e),s.__startIndex=t.start}},t.prototype.remove=function(){this._clear()},t.prototype.eachRendered=function(t){this._newAdded[0]&&t(this._newAdded[0])},t.prototype._create=function(){var t=new wP({cursor:"default"});return this._newAdded.push(t),this.group.add(t),t},t.prototype._setCommon=function(t,e,n){var i=e.hostModel;t.setShape({polyline:i.get("polyline"),curveness:i.get(["lineStyle","curveness"])}),t.useStyle(i.getModel("lineStyle").getLineStyle()),t.style.strokeNoScale=!0;var r=e.getVisual("style");r&&r.stroke&&t.setStyle("stroke",r.stroke),t.setStyle("fill",null);var o=Ws(t);o.seriesIndex=i.seriesIndex,t.on("mousemove",(function(e){o.dataIndex=null;var n=t.hoverDataIdx;n>0&&(o.dataIndex=n+t.__startIndex)}))},t.prototype._clear=function(){this._newAdded=[],this.group.removeAll()},t}(),MP={seriesType:"lines",plan:gg(),reset:function(t){var e=t.coordinateSystem;if(e){var n=t.get("polyline"),i=t.pipelineContext.large;return{progress:function(r,o){var a=[];if(i){var s=void 0,l=r.end-r.start;if(n){for(var u=0,h=r.start;h<r.end;h++)u+=t.getLineCoordsCount(h);s=new Float32Array(l+2*u)}else s=new Float32Array(4*l);var c=0,p=[];for(h=r.start;h<r.end;h++){var d=t.getLineCoords(h,a);n&&(s[c++]=d);for(var f=0;f<d;f++)p=e.dataToPoint(a[f],!1,p),s[c++]=p[0],s[c++]=p[1]}o.setLayout("linesPoints",s)}else for(h=r.start;h<r.end;h++){var g=o.getItemModel(h),y=(d=t.getLineCoords(h,a),[]);if(n)for(var v=0;v<d;v++)y.push(e.dataToPoint(a[v]));else{y[0]=e.dataToPoint(a[0]),y[1]=e.dataToPoint(a[1]);var m=g.get(["lineStyle","curveness"]);+m&&(y[2]=[(y[0][0]+y[1][0])/2-(y[0][1]-y[1][1])*m,(y[0][1]+y[1][1])/2-(y[1][0]-y[0][0])*m])}o.setItemLayout(h,y)}}}}}},IP=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i=t.getData(),r=this._updateLineDraw(i,t),o=t.get("zlevel"),a=t.get(["effect","trailLength"]),s=n.getZr(),l="svg"===s.painter.getType();l||s.painter.getLayer(o).clear(!0),null==this._lastZlevel||l||s.configLayer(this._lastZlevel,{motionBlur:!1}),this._showEffect(t)&&a>0&&(l||s.configLayer(o,{motionBlur:!0,lastFrameAlpha:Math.max(Math.min(a/10+.9,1),0)})),r.updateData(i);var u=t.get("clip",!0)&&aS(t.coordinateSystem,!1,t);u?this.group.setClipPath(u):this.group.removeClipPath(),this._lastZlevel=o,this._finished=!0},e.prototype.incrementalPrepareRender=function(t,e,n){var i=t.getData();this._updateLineDraw(i,t).incrementalPrepareUpdate(i),this._clearLayer(n),this._finished=!1},e.prototype.incrementalRender=function(t,e,n){this._lineDraw.incrementalUpdate(t,e.getData()),this._finished=t.end===e.getData().count()},e.prototype.eachRendered=function(t){this._lineDraw&&this._lineDraw.eachRendered(t)},e.prototype.updateTransform=function(t,e,n){var i=t.getData(),r=t.pipelineContext;if(!this._finished||r.large||r.progressiveRender)return{update:!0};var o=MP.reset(t,e,n);o.progress&&o.progress({start:0,end:i.count(),count:i.count()},i),this._lineDraw.updateLayout(),this._clearLayer(n)},e.prototype._updateLineDraw=function(t,e){var n=this._lineDraw,i=this._showEffect(e),r=!!e.get("polyline"),o=e.pipelineContext.large;return n&&i===this._hasEffet&&r===this._isPolyline&&o===this._isLargeDraw||(n&&n.remove(),n=this._lineDraw=o?new SP:new dA(r?i?_P:xP:i?mP:pA),this._hasEffet=i,this._isPolyline=r,this._isLargeDraw=o),this.group.add(n.group),n},e.prototype._showEffect=function(t){return!!t.get(["effect","show"])},e.prototype._clearLayer=function(t){var e=t.getZr();"svg"===e.painter.getType()||null==this._lastZlevel||e.painter.getLayer(this._lastZlevel).clear(!0)},e.prototype.remove=function(t,e){this._lineDraw&&this._lineDraw.remove(),this._lineDraw=null,this._clearLayer(e)},e.prototype.dispose=function(t,e){this.remove(t,e)},e.type="lines",e}(mg),TP="undefined"==typeof Uint32Array?Array:Uint32Array,CP="undefined"==typeof Float64Array?Array:Float64Array;function DP(t){var e=t.data;e&&e[0]&&e[0][0]&&e[0][0].coord&&(t.data=z(e,(function(t){var e={coords:[t[0].coord,t[1].coord]};return t[0].name&&(e.fromName=t[0].name),t[1].name&&(e.toName=t[1].name),D([e,t[0],t[1]])})))}var AP=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.visualStyleAccessPath="lineStyle",n.visualDrawType="stroke",n}return n(e,t),e.prototype.init=function(e){e.data=e.data||[],DP(e);var n=this._processFlatCoordsArray(e.data);this._flatCoords=n.flatCoords,this._flatCoordsOffset=n.flatCoordsOffset,n.flatCoords&&(e.data=new Float32Array(n.count)),t.prototype.init.apply(this,arguments)},e.prototype.mergeOption=function(e){if(DP(e),e.data){var n=this._processFlatCoordsArray(e.data);this._flatCoords=n.flatCoords,this._flatCoordsOffset=n.flatCoordsOffset,n.flatCoords&&(e.data=new Float32Array(n.count))}t.prototype.mergeOption.apply(this,arguments)},e.prototype.appendData=function(t){var e=this._processFlatCoordsArray(t.data);e.flatCoords&&(this._flatCoords?(this._flatCoords=gt(this._flatCoords,e.flatCoords),this._flatCoordsOffset=gt(this._flatCoordsOffset,e.flatCoordsOffset)):(this._flatCoords=e.flatCoords,this._flatCoordsOffset=e.flatCoordsOffset),t.data=new Float32Array(e.count)),this.getRawData().appendData(t.data)},e.prototype._getCoordsFromItemModel=function(t){var e=this.getData().getItemModel(t),n=e.option instanceof Array?e.option:e.getShallow("coords");return n},e.prototype.getLineCoordsCount=function(t){return this._flatCoordsOffset?this._flatCoordsOffset[2*t+1]:this._getCoordsFromItemModel(t).length},e.prototype.getLineCoords=function(t,e){if(this._flatCoordsOffset){for(var n=this._flatCoordsOffset[2*t],i=this._flatCoordsOffset[2*t+1],r=0;r<i;r++)e[r]=e[r]||[],e[r][0]=this._flatCoords[n+2*r],e[r][1]=this._flatCoords[n+2*r+1];return i}var o=this._getCoordsFromItemModel(t);for(r=0;r<o.length;r++)e[r]=e[r]||[],e[r][0]=o[r][0],e[r][1]=o[r][1];return o.length},e.prototype._processFlatCoordsArray=function(t){var e=0;if(this._flatCoords&&(e=this._flatCoords.length),j(t[0])){for(var n=t.length,i=new TP(n),r=new CP(n),o=0,a=0,s=0,l=0;l<n;){s++;var u=t[l++];i[a++]=o+e,i[a++]=u;for(var h=0;h<u;h++){var c=t[l++],p=t[l++];r[o++]=c,r[o++]=p}}return{flatCoordsOffset:new Uint32Array(i.buffer,0,a),flatCoords:r,count:s}}return{flatCoordsOffset:null,flatCoords:null,count:t.length}},e.prototype.getInitialData=function(t,e){var n=new Zm(["value"],this);return n.hasItemOption=!1,n.initData(t.data,[],(function(t,e,i,r){if(t instanceof Array)return NaN;n.hasItemOption=!0;var o=t.value;return null!=o?o instanceof Array?o[r]:o:void 0})),n},e.prototype.formatTooltip=function(t,e,n){var i=this.getData().getItemModel(t),r=i.get("name");if(r)return r;var o=i.get("fromName"),a=i.get("toName"),s=[];return null!=o&&s.push(o),null!=a&&s.push(a),Uf("nameValue",{name:s.join(" > ")})},e.prototype.preventIncremental=function(){return!!this.get(["effect","show"])},e.prototype.getProgressive=function(){var t=this.option.progressive;return null==t?this.option.large?1e4:this.get("progressive"):t},e.prototype.getProgressiveThreshold=function(){var t=this.option.progressiveThreshold;return null==t?this.option.large?2e4:this.get("progressiveThreshold"):t},e.prototype.getZLevelKey=function(){var t=this.getModel("effect"),e=t.get("trailLength");return this.getData().count()>this.getProgressiveThreshold()?this.id:t.get("show")&&e>0?e+"":""},e.type="series.lines",e.dependencies=["grid","polar","geo","calendar"],e.defaultOption={coordinateSystem:"geo",z:2,legendHoverLink:!0,xAxisIndex:0,yAxisIndex:0,symbol:["none","none"],symbolSize:[10,10],geoIndex:0,effect:{show:!1,period:4,constantSpeed:0,symbol:"circle",symbolSize:3,loop:!0,trailLength:.2},large:!1,largeThreshold:2e3,polyline:!1,clip:!0,label:{show:!1,position:"end"},lineStyle:{opacity:.5}},e}(ag);function kP(t){return t instanceof Array||(t=[t,t]),t}var LP={seriesType:"lines",reset:function(t){var e=kP(t.get("symbol")),n=kP(t.get("symbolSize")),i=t.getData();return i.setVisual("fromSymbol",e&&e[0]),i.setVisual("toSymbol",e&&e[1]),i.setVisual("fromSymbolSize",n&&n[0]),i.setVisual("toSymbolSize",n&&n[1]),{dataEach:i.hasItemOption?function(t,e){var n=t.getItemModel(e),i=kP(n.getShallow("symbol",!0)),r=kP(n.getShallow("symbolSize",!0));i[0]&&t.setItemVisual(e,"fromSymbol",i[0]),i[1]&&t.setItemVisual(e,"toSymbol",i[1]),r[0]&&t.setItemVisual(e,"fromSymbolSize",r[0]),r[1]&&t.setItemVisual(e,"toSymbolSize",r[1])}:null}}};var PP=function(){function t(){this.blurSize=30,this.pointSize=20,this.maxOpacity=1,this.minOpacity=0,this._gradientPixels={inRange:null,outOfRange:null};var t=h.createCanvas();this.canvas=t}return t.prototype.update=function(t,e,n,i,r,o){var a=this._getBrush(),s=this._getGradient(r,"inRange"),l=this._getGradient(r,"outOfRange"),u=this.pointSize+this.blurSize,h=this.canvas,c=h.getContext("2d"),p=t.length;h.width=e,h.height=n;for(var d=0;d<p;++d){var f=t[d],g=f[0],y=f[1],v=i(f[2]);c.globalAlpha=v,c.drawImage(a,g-u,y-u)}if(!h.width||!h.height)return h;for(var m=c.getImageData(0,0,h.width,h.height),x=m.data,_=0,b=x.length,w=this.minOpacity,S=this.maxOpacity-w;_<b;){v=x[_+3]/256;var M=4*Math.floor(255*v);if(v>0){var I=o(v)?s:l;v>0&&(v=v*S+w),x[_++]=I[M],x[_++]=I[M+1],x[_++]=I[M+2],x[_++]=I[M+3]*v*256}else _+=4}return c.putImageData(m,0,0),h},t.prototype._getBrush=function(){var t=this._brushCanvas||(this._brushCanvas=h.createCanvas()),e=this.pointSize+this.blurSize,n=2*e;t.width=n,t.height=n;var i=t.getContext("2d");return i.clearRect(0,0,n,n),i.shadowOffsetX=n,i.shadowBlur=this.blurSize,i.shadowColor="#000",i.beginPath(),i.arc(-e,e,this.pointSize,0,2*Math.PI,!0),i.closePath(),i.fill(),t},t.prototype._getGradient=function(t,e){for(var n=this._gradientPixels,i=n[e]||(n[e]=new Uint8ClampedArray(1024)),r=[0,0,0,0],o=0,a=0;a<256;a++)t[e](a/255,!0,r),i[o++]=r[0],i[o++]=r[1],i[o++]=r[2],i[o++]=r[3];return i},t}();function OP(t){var e=t.dimensions;return"lng"===e[0]&&"lat"===e[1]}var RP=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i;e.eachComponent("visualMap",(function(e){e.eachTargetSeries((function(n){n===t&&(i=e)}))})),this._progressiveEls=null,this.group.removeAll();var r=t.coordinateSystem;"cartesian2d"===r.type||"calendar"===r.type?this._renderOnCartesianAndCalendar(t,n,0,t.getData().count()):OP(r)&&this._renderOnGeo(r,t,i,n)},e.prototype.incrementalPrepareRender=function(t,e,n){this.group.removeAll()},e.prototype.incrementalRender=function(t,e,n,i){var r=e.coordinateSystem;r&&(OP(r)?this.render(e,n,i):(this._progressiveEls=[],this._renderOnCartesianAndCalendar(e,i,t.start,t.end,!0)))},e.prototype.eachRendered=function(t){zh(this._progressiveEls||this.group,t)},e.prototype._renderOnCartesianAndCalendar=function(t,e,n,i,r){var o,a,s,l,u=t.coordinateSystem;if(sS(u,"cartesian2d")){var h=u.getAxis("x"),c=u.getAxis("y");0,o=h.getBandWidth(),a=c.getBandWidth(),s=h.scale.getExtent(),l=c.scale.getExtent()}for(var p=this.group,d=t.getData(),f=t.getModel(["emphasis","itemStyle"]).getItemStyle(),g=t.getModel(["blur","itemStyle"]).getItemStyle(),y=t.getModel(["select","itemStyle"]).getItemStyle(),v=Hh(t),m=t.getModel("emphasis"),x=m.get("focus"),_=m.get("blurScope"),b=m.get("disabled"),w=sS(u,"cartesian2d")?[d.mapDimension("x"),d.mapDimension("y"),d.mapDimension("value")]:[d.mapDimension("time"),d.mapDimension("value")],S=n;S<i;S++){var M=void 0,I=d.getItemVisual(S,"style");if(sS(u,"cartesian2d")){var T=d.get(w[0],S),C=d.get(w[1],S);if(isNaN(d.get(w[2],S))||T<s[0]||T>s[1]||C<l[0]||C>l[1])continue;var D=u.dataToPoint([T,C]);M=new Ts({shape:{x:Math.floor(Math.round(D[0])-o/2),y:Math.floor(Math.round(D[1])-a/2),width:Math.ceil(o),height:Math.ceil(a)},style:I})}else{if(isNaN(d.get(w[1],S)))continue;M=new Ts({z2:1,shape:u.dataToRect([d.get(w[0],S)]).contentShape,style:I})}var A=d.getItemModel(S);if(d.hasItemOption){var k=A.getModel("emphasis");f=k.getModel("itemStyle").getItemStyle(),g=A.getModel(["blur","itemStyle"]).getItemStyle(),y=A.getModel(["select","itemStyle"]).getItemStyle(),x=k.get("focus"),_=k.get("blurScope"),b=k.get("disabled"),v=Hh(A)}var L=t.getRawValue(S),P="-";L&&null!=L[2]&&(P=L[2]+""),Wh(M,v,{labelFetcher:t,labelDataIndex:S,defaultOpacity:I.opacity,defaultText:P}),M.ensureState("emphasis").style=f,M.ensureState("blur").style=g,M.ensureState("select").style=y,Ol(M,x,_,b),M.incremental=r,r&&(M.states.emphasis.hoverLayer=!0),p.add(M),d.setItemGraphicEl(S,M),this._progressiveEls&&this._progressiveEls.push(M)}},e.prototype._renderOnGeo=function(t,e,n,i){var r=n.targetVisuals.inRange,o=n.targetVisuals.outOfRange,a=e.getData(),s=this._hmLayer||this._hmLayer||new PP;s.blurSize=e.get("blurSize"),s.pointSize=e.get("pointSize"),s.minOpacity=e.get("minOpacity"),s.maxOpacity=e.get("maxOpacity");var l=t.getViewRect().clone(),u=t.getRoamTransform();l.applyTransform(u);var h=Math.max(l.x,0),c=Math.max(l.y,0),p=Math.min(l.width+l.x,i.getWidth()),d=Math.min(l.height+l.y,i.getHeight()),f=p-h,g=d-c,y=[a.mapDimension("lng"),a.mapDimension("lat"),a.mapDimension("value")],v=a.mapArray(y,(function(e,n,i){var r=t.dataToPoint([e,n]);return r[0]-=h,r[1]-=c,r.push(i),r})),m=n.getExtent(),x="visualMap.continuous"===n.type?function(t,e){var n=t[1]-t[0];return e=[(e[0]-t[0])/n,(e[1]-t[0])/n],function(t){return t>=e[0]&&t<=e[1]}}(m,n.option.range):function(t,e,n){var i=t[1]-t[0],r=(e=z(e,(function(e){return{interval:[(e.interval[0]-t[0])/i,(e.interval[1]-t[0])/i]}}))).length,o=0;return function(t){var i;for(i=o;i<r;i++)if((a=e[i].interval)[0]<=t&&t<=a[1]){o=i;break}if(i===r)for(i=o-1;i>=0;i--){var a;if((a=e[i].interval)[0]<=t&&t<=a[1]){o=i;break}}return i>=0&&i<r&&n[i]}}(m,n.getPieceList(),n.option.selected);s.update(v,f,g,r.color.getNormalizer(),{inRange:r.color.getColorMapper(),outOfRange:o.color.getColorMapper()},x);var _=new xs({style:{width:f,height:g,x:h,y:c,image:s.canvas},silent:!0});this.group.add(_)},e.type="heatmap",e}(mg),NP=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.getInitialData=function(t,e){return nx(null,this,{generateCoord:"value"})},e.prototype.preventIncremental=function(){var t=ud.get(this.get("coordinateSystem"));if(t&&t.dimensions)return"lng"===t.dimensions[0]&&"lat"===t.dimensions[1]},e.type="series.heatmap",e.dependencies=["grid","geo","calendar"],e.defaultOption={coordinateSystem:"cartesian2d",z:2,geoIndex:0,blurSize:30,pointSize:20,maxOpacity:1,minOpacity:0,select:{itemStyle:{borderColor:"#212121"}}},e}(ag);var EP=["itemStyle","borderWidth"],zP=[{xy:"x",wh:"width",index:0,posDesc:["left","right"]},{xy:"y",wh:"height",index:1,posDesc:["top","bottom"]}],VP=new uu,BP=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i=this.group,r=t.getData(),o=this._data,a=t.coordinateSystem,s=a.getBaseAxis().isHorizontal(),l=a.master.getRect(),u={ecSize:{width:n.getWidth(),height:n.getHeight()},seriesModel:t,coordSys:a,coordSysExtent:[[l.x,l.x+l.width],[l.y,l.y+l.height]],isHorizontal:s,valueDim:zP[+s],categoryDim:zP[1-+s]};return r.diff(o).add((function(t){if(r.hasValue(t)){var e=ZP(r,t),n=FP(r,t,e,u),o=KP(r,u,n);r.setItemGraphicEl(t,o),i.add(o),eO(o,u,n)}})).update((function(t,e){var n=o.getItemGraphicEl(e);if(r.hasValue(t)){var a=ZP(r,t),s=FP(r,t,a,u),l=JP(r,s);n&&l!==n.__pictorialShapeStr&&(i.remove(n),r.setItemGraphicEl(t,null),n=null),n?function(t,e,n){var i=n.animationModel,r=n.dataIndex;ih(t.__pictorialBundle,{x:n.bundlePosition[0],y:n.bundlePosition[1]},i,r),n.symbolRepeat?HP(t,e,n,!0):YP(t,e,n,!0);UP(t,n,!0),XP(t,e,n,!0)}(n,u,s):n=KP(r,u,s,!0),r.setItemGraphicEl(t,n),n.__pictorialSymbolMeta=s,i.add(n),eO(n,u,s)}else i.remove(n)})).remove((function(t){var e=o.getItemGraphicEl(t);e&&$P(o,t,e.__pictorialSymbolMeta.animationModel,e)})).execute(),this._data=r,this.group},e.prototype.remove=function(t,e){var n=this.group,i=this._data;t.get("animation")?i&&i.eachItemGraphicEl((function(e){$P(i,Ws(e).dataIndex,t,e)})):n.removeAll()},e.type="pictorialBar",e}(mg);function FP(t,e,n,i){var r=t.getItemLayout(e),o=n.get("symbolRepeat"),a=n.get("symbolClip"),s=n.get("symbolPosition")||"start",l=(n.get("symbolRotate")||0)*Math.PI/180||0,u=n.get("symbolPatternSize")||2,h=n.isAnimationEnabled(),c={dataIndex:e,layout:r,itemModel:n,symbolType:t.getItemVisual(e,"symbol")||"circle",style:t.getItemVisual(e,"style"),symbolClip:a,symbolRepeat:o,symbolRepeatDirection:n.get("symbolRepeatDirection"),symbolPatternSize:u,rotation:l,animationModel:h?n:null,hoverScale:h&&n.get(["emphasis","scale"]),z2:n.getShallow("z",!0)||0};!function(t,e,n,i,r){var o,a=i.valueDim,s=t.get("symbolBoundingData"),l=i.coordSys.getOtherAxis(i.coordSys.getBaseAxis()),u=l.toGlobalCoord(l.dataToCoord(0)),h=1-+(n[a.wh]<=0);if(Y(s)){var c=[GP(l,s[0])-u,GP(l,s[1])-u];c[1]<c[0]&&c.reverse(),o=c[h]}else o=null!=s?GP(l,s)-u:e?i.coordSysExtent[a.index][h]-u:n[a.wh];r.boundingLength=o,e&&(r.repeatCutLength=n[a.wh]);r.pxSign=o>0?1:-1}(n,o,r,i,c),function(t,e,n,i,r,o,a,s,l,u){var h,c=l.valueDim,p=l.categoryDim,d=Math.abs(n[p.wh]),f=t.getItemVisual(e,"symbolSize");h=Y(f)?f.slice():null==f?["100%","100%"]:[f,f];h[p.index]=Er(h[p.index],d),h[c.index]=Er(h[c.index],i?d:Math.abs(o)),u.symbolSize=h,(u.symbolScale=[h[0]/s,h[1]/s])[c.index]*=(l.isHorizontal?-1:1)*a}(t,e,r,o,0,c.boundingLength,c.pxSign,u,i,c),function(t,e,n,i,r){var o=t.get(EP)||0;o&&(VP.attr({scaleX:e[0],scaleY:e[1],rotation:n}),VP.updateTransform(),o/=VP.getLineScale(),o*=e[i.valueDim.index]);r.valueLineWidth=o}(n,c.symbolScale,l,i,c);var p=c.symbolSize,d=Py(n.get("symbolOffset"),p);return function(t,e,n,i,r,o,a,s,l,u,h,c){var p=h.categoryDim,d=h.valueDim,f=c.pxSign,g=Math.max(e[d.index]+s,0),y=g;if(i){var v=Math.abs(l),m=it(t.get("symbolMargin"),"15%")+"",x=!1;m.lastIndexOf("!")===m.length-1&&(x=!0,m=m.slice(0,m.length-1));var _=Er(m,e[d.index]),b=Math.max(g+2*_,0),w=x?0:2*_,S=eo(i),M=S?i:nO((v+w)/b);b=g+2*(_=(v-M*g)/2/(x?M:Math.max(M-1,1))),w=x?0:2*_,S||"fixed"===i||(M=u?nO((Math.abs(u)+w)/b):0),y=M*b-w,c.repeatTimes=M,c.symbolMargin=_}var I=f*(y/2),T=c.pathPosition=[];T[p.index]=n[p.wh]/2,T[d.index]="start"===a?I:"end"===a?l-I:l/2,o&&(T[0]+=o[0],T[1]+=o[1]);var C=c.bundlePosition=[];C[p.index]=n[p.xy],C[d.index]=n[d.xy];var D=c.barRectShape=A({},n);D[d.wh]=f*Math.max(Math.abs(n[d.wh]),Math.abs(T[d.index]+I)),D[p.wh]=n[p.wh];var k=c.clipShape={};k[p.xy]=-n[p.xy],k[p.wh]=h.ecSize[p.wh],k[d.xy]=0,k[d.wh]=n[d.wh]}(n,p,r,o,0,d,s,c.valueLineWidth,c.boundingLength,c.repeatCutLength,i,c),c}function GP(t,e){return t.toGlobalCoord(t.dataToCoord(t.scale.parse(e)))}function WP(t){var e=t.symbolPatternSize,n=ky(t.symbolType,-e/2,-e/2,e,e);return n.attr({culling:!0}),"image"!==n.type&&n.setStyle({strokeNoScale:!0}),n}function HP(t,e,n,i){var r=t.__pictorialBundle,o=n.symbolSize,a=n.valueLineWidth,s=n.pathPosition,l=e.valueDim,u=n.repeatTimes||0,h=0,c=o[e.valueDim.index]+a+2*n.symbolMargin;for(QP(t,(function(t){t.__pictorialAnimationIndex=h,t.__pictorialRepeatTimes=u,h<u?tO(t,null,f(h),n,i):tO(t,null,{scaleX:0,scaleY:0},n,i,(function(){r.remove(t)})),h++}));h<u;h++){var p=WP(n);p.__pictorialAnimationIndex=h,p.__pictorialRepeatTimes=u,r.add(p);var d=f(h);tO(p,{x:d.x,y:d.y,scaleX:0,scaleY:0},{scaleX:d.scaleX,scaleY:d.scaleY,rotation:d.rotation},n,i)}function f(t){var e=s.slice(),i=n.pxSign,r=t;return("start"===n.symbolRepeatDirection?i>0:i<0)&&(r=u-1-t),e[l.index]=c*(r-u/2+.5)+s[l.index],{x:e[0],y:e[1],scaleX:n.symbolScale[0],scaleY:n.symbolScale[1],rotation:n.rotation}}}function YP(t,e,n,i){var r=t.__pictorialBundle,o=t.__pictorialMainPath;o?tO(o,null,{x:n.pathPosition[0],y:n.pathPosition[1],scaleX:n.symbolScale[0],scaleY:n.symbolScale[1],rotation:n.rotation},n,i):(o=t.__pictorialMainPath=WP(n),r.add(o),tO(o,{x:n.pathPosition[0],y:n.pathPosition[1],scaleX:0,scaleY:0,rotation:n.rotation},{scaleX:n.symbolScale[0],scaleY:n.symbolScale[1]},n,i))}function UP(t,e,n){var i=A({},e.barRectShape),r=t.__pictorialBarRect;r?tO(r,null,{shape:i},e,n):((r=t.__pictorialBarRect=new Ts({z2:2,shape:i,silent:!0,style:{stroke:"transparent",fill:"transparent",lineWidth:0}})).disableMorphing=!0,t.add(r))}function XP(t,e,n,i){if(n.symbolClip){var r=t.__pictorialClipPath,o=A({},n.clipShape),a=e.valueDim,s=n.animationModel,l=n.dataIndex;if(r)ih(r,{shape:o},s,l);else{o[a.wh]=0,r=new Ts({shape:o}),t.__pictorialBundle.setClipPath(r),t.__pictorialClipPath=r;var u={};u[a.wh]=n.clipShape[a.wh],Vh[i?"updateProps":"initProps"](r,{shape:u},s,l)}}}function ZP(t,e){var n=t.getItemModel(e);return n.getAnimationDelayParams=jP,n.isAnimationEnabled=qP,n}function jP(t){return{index:t.__pictorialAnimationIndex,count:t.__pictorialRepeatTimes}}function qP(){return this.parentModel.isAnimationEnabled()&&!!this.getShallow("animation")}function KP(t,e,n,i){var r=new Cr,o=new Cr;return r.add(o),r.__pictorialBundle=o,o.x=n.bundlePosition[0],o.y=n.bundlePosition[1],n.symbolRepeat?HP(r,e,n):YP(r,0,n),UP(r,n,i),XP(r,e,n,i),r.__pictorialShapeStr=JP(t,n),r.__pictorialSymbolMeta=n,r}function $P(t,e,n,i){var r=i.__pictorialBarRect;r&&r.removeTextContent();var o=[];QP(i,(function(t){o.push(t)})),i.__pictorialMainPath&&o.push(i.__pictorialMainPath),i.__pictorialClipPath&&(n=null),E(o,(function(t){ah(t,{scaleX:0,scaleY:0},n,e,(function(){i.parent&&i.parent.remove(i)}))})),t.setItemGraphicEl(e,null)}function JP(t,e){return[t.getItemVisual(e.dataIndex,"symbol")||"none",!!e.symbolRepeat,!!e.symbolClip].join(":")}function QP(t,e,n){E(t.__pictorialBundle.children(),(function(i){i!==t.__pictorialBarRect&&e.call(n,i)}))}function tO(t,e,n,i,r,o){e&&t.attr(e),i.symbolClip&&!r?n&&t.attr(n):n&&Vh[r?"updateProps":"initProps"](t,n,i.animationModel,i.dataIndex,o)}function eO(t,e,n){var i=n.dataIndex,r=n.itemModel,o=r.getModel("emphasis"),a=o.getModel("itemStyle").getItemStyle(),s=r.getModel(["blur","itemStyle"]).getItemStyle(),l=r.getModel(["select","itemStyle"]).getItemStyle(),u=r.getShallow("cursor"),h=o.get("focus"),c=o.get("blurScope"),p=o.get("scale");QP(t,(function(t){if(t instanceof xs){var e=t.style;t.useStyle(A({image:e.image,x:e.x,y:e.y,width:e.width,height:e.height},n.style))}else t.useStyle(n.style);var i=t.ensureState("emphasis");i.style=a,p&&(i.scaleX=1.1*t.scaleX,i.scaleY=1.1*t.scaleY),t.ensureState("blur").style=s,t.ensureState("select").style=l,u&&(t.cursor=u),t.z2=n.z2}));var d=e.valueDim.posDesc[+(n.boundingLength>0)];Wh(t.__pictorialBarRect,Hh(r),{labelFetcher:e.seriesModel,labelDataIndex:i,defaultText:Fw(e.seriesModel.getData(),i),inheritColor:n.style.fill,defaultOpacity:n.style.opacity,defaultOutsidePosition:d}),Ol(t,h,c,o.get("disabled"))}function nO(t){var e=Math.round(t);return Math.abs(t-e)<1e-4?e:Math.ceil(t)}var iO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.hasSymbolVisual=!0,n.defaultSymbol="roundRect",n}return n(e,t),e.prototype.getInitialData=function(e){return e.stack=null,t.prototype.getInitialData.apply(this,arguments)},e.type="series.pictorialBar",e.dependencies=["grid"],e.defaultOption=gc(SS.defaultOption,{symbol:"circle",symbolSize:null,symbolRotate:null,symbolPosition:null,symbolOffset:null,symbolMargin:null,symbolRepeat:!1,symbolRepeatDirection:"end",symbolClip:!1,symbolBoundingData:null,symbolPatternSize:400,barGap:"-100%",progressive:0,emphasis:{scale:!1},select:{itemStyle:{borderColor:"#212121"}}}),e}(SS);var rO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._layers=[],n}return n(e,t),e.prototype.render=function(t,e,n){var i=t.getData(),r=this,o=this.group,a=t.getLayerSeries(),s=i.getLayout("layoutInfo"),l=s.rect,u=s.boundaryGap;function h(t){return t.name}o.x=0,o.y=l.y+u[0];var c=new Sm(this._layersSeries||[],a,h,h),p=[];function d(e,n,s){var l=r._layers;if("remove"!==e){for(var u,h,c=[],d=[],f=a[n].indices,g=0;g<f.length;g++){var y=i.getItemLayout(f[g]),v=y.x,m=y.y0,x=y.y;c.push(v,m),d.push(v,m+x),u=i.getItemVisual(f[g],"style")}var _=i.getItemLayout(f[0]),b=t.getModel("label").get("margin"),w=t.getModel("emphasis");if("add"===e){var S=p[n]=new Cr;h=new iS({shape:{points:c,stackedOnPoints:d,smooth:.4,stackedOnSmooth:.4,smoothConstraint:!1},z2:0}),S.add(h),o.add(S),t.isAnimationEnabled()&&h.setClipPath(function(t,e,n){var i=new Ts({shape:{x:t.x-10,y:t.y-10,width:0,height:t.height+20}});return rh(i,{shape:{x:t.x-50,width:t.width+100,height:t.height+20}},e,n),i}(h.getBoundingRect(),t,(function(){h.removeClipPath()})))}else{S=l[s];h=S.childAt(0),o.add(S),p[n]=S,ih(h,{shape:{points:c,stackedOnPoints:d}},t),uh(h)}Wh(h,Hh(t),{labelDataIndex:f[g-1],defaultText:i.getName(f[g-1]),inheritColor:u.fill},{normal:{verticalAlign:"middle"}}),h.setTextConfig({position:null,local:!0});var M=h.getTextContent();M&&(M.x=_.x-b,M.y=_.y0+_.y/2),h.useStyle(u),i.setItemGraphicEl(n,h),zl(h,t),Ol(h,w.get("focus"),w.get("blurScope"),w.get("disabled"))}else o.remove(l[n])}c.add(W(d,this,"add")).update(W(d,this,"update")).remove(W(d,this,"remove")).execute(),this._layersSeries=a,this._layers=p},e.type="themeRiver",e}(mg);var oO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(e){t.prototype.init.apply(this,arguments),this.legendVisualProvider=new lM(W(this.getData,this),W(this.getRawData,this))},e.prototype.fixData=function(t){var e=t.length,n={},i=Lo(t,(function(t){return n.hasOwnProperty(t[0]+"")||(n[t[0]+""]=-1),t[2]})),r=[];i.buckets.each((function(t,e){r.push({name:e,dataList:t})}));for(var o=r.length,a=0;a<o;++a){for(var s=r[a].name,l=0;l<r[a].dataList.length;++l){var u=r[a].dataList[l][0]+"";n[u]=a}for(var u in n)n.hasOwnProperty(u)&&n[u]!==a&&(n[u]=a,t[e]=[u,0,s],e++)}return t},e.prototype.getInitialData=function(t,e){for(var n=this.getReferringComponents("singleAxis",Co).models[0].get("type"),i=B(t.data,(function(t){return void 0!==t[2]})),r=this.fixData(i||[]),o=[],a=this.nameMap=ft(),s=0,l=0;l<r.length;++l)o.push(r[l][2]),a.get(r[l][2])||(a.set(r[l][2],s),s++);var u=jm(r,{coordDimensions:["single"],dimensionsDefine:[{name:"time",type:Tm(n)},{name:"value",type:"float"},{name:"name",type:"ordinal"}],encodeDefine:{single:0,value:1,itemName:2}}).dimensions,h=new Zm(u,this);return h.initData(r),h},e.prototype.getLayerSeries=function(){for(var t=this.getData(),e=t.count(),n=[],i=0;i<e;++i)n[i]=i;var r=t.mapDimension("single"),o=Lo(n,(function(e){return t.get("name",e)})),a=[];return o.buckets.each((function(e,n){e.sort((function(e,n){return t.get(r,e)-t.get(r,n)})),a.push({name:n,indices:e})})),a},e.prototype.getAxisTooltipData=function(t,e,n){Y(t)||(t=t?[t]:[]);for(var i,r=this.getData(),o=this.getLayerSeries(),a=[],s=o.length,l=0;l<s;++l){for(var u=Number.MAX_VALUE,h=-1,c=o[l].indices.length,p=0;p<c;++p){var d=r.get(t[0],o[l].indices[p]),f=Math.abs(d-e);f<=u&&(i=d,u=f,h=o[l].indices[p])}a.push(h)}return{dataIndices:a,nestestValue:i}},e.prototype.formatTooltip=function(t,e,n){var i=this.getData();return Uf("nameValue",{name:i.getName(t),value:i.get(i.mapDimension("value"),t)})},e.type="series.themeRiver",e.dependencies=["singleAxis"],e.defaultOption={z:2,colorBy:"data",coordinateSystem:"singleAxis",boundaryGap:["10%","10%"],singleAxisIndex:0,animationEasing:"linear",label:{margin:4,show:!0,position:"left",fontSize:11},emphasis:{label:{show:!0}}},e}(ag);function aO(t,e){t.eachSeriesByType("themeRiver",(function(t){var e=t.getData(),n=t.coordinateSystem,i={},r=n.getRect();i.rect=r;var o=t.get("boundaryGap"),a=n.getAxis();(i.boundaryGap=o,"horizontal"===a.orient)?(o[0]=Er(o[0],r.height),o[1]=Er(o[1],r.height),sO(e,t,r.height-o[0]-o[1])):(o[0]=Er(o[0],r.width),o[1]=Er(o[1],r.width),sO(e,t,r.width-o[0]-o[1]));e.setLayout("layoutInfo",i)}))}function sO(t,e,n){if(t.count())for(var i,r=e.coordinateSystem,o=e.getLayerSeries(),a=t.mapDimension("single"),s=t.mapDimension("value"),l=z(o,(function(e){return z(e.indices,(function(e){var n=r.dataToPoint(t.get(a,e));return n[1]=t.get(s,e),n}))})),u=function(t){for(var e=t.length,n=t[0].length,i=[],r=[],o=0,a=0;a<n;++a){for(var s=0,l=0;l<e;++l)s+=t[l][a][1];s>o&&(o=s),i.push(s)}for(var u=0;u<n;++u)r[u]=(o-i[u])/2;o=0;for(var h=0;h<n;++h){var c=i[h]+r[h];c>o&&(o=c)}return{y0:r,max:o}}(l),h=u.y0,c=n/u.max,p=o.length,d=o[0].indices.length,f=0;f<d;++f){i=h[f]*c,t.setItemLayout(o[0].indices[f],{layerIndex:0,x:l[0][f][0],y0:i,y:l[0][f][1]*c});for(var g=1;g<p;++g)i+=l[g-1][f][1]*c,t.setItemLayout(o[g].indices[f],{layerIndex:g,x:l[g][f][0],y0:i,y:l[g][f][1]*c})}}var lO=function(t){function e(e,n,i,r){var o=t.call(this)||this;o.z2=2,o.textConfig={inside:!0},Ws(o).seriesIndex=n.seriesIndex;var a=new As({z2:4,silent:e.getModel().get(["label","silent"])});return o.setTextContent(a),o.updateData(!0,e,n,i,r),o}return n(e,t),e.prototype.updateData=function(t,e,n,i,r){this.node=e,e.piece=this,n=n||this._seriesModel,i=i||this._ecModel;var o=this;Ws(o).dataIndex=e.dataIndex;var a=e.getModel(),s=a.getModel("emphasis"),l=e.getLayout(),u=A({},l);u.label=null;var h=e.getVisual("style");h.lineJoin="bevel";var c=e.getVisual("decal");c&&(h.decal=nv(c,r));var p=rM(a.getModel("itemStyle"),u,!0);A(u,p),E(js,(function(t){var e=o.ensureState(t),n=a.getModel([t,"itemStyle"]);e.style=n.getItemStyle();var i=rM(n,u);i&&(e.shape=i)})),t?(o.setShape(u),o.shape.r=l.r0,ih(o,{shape:{r:l.r}},n,e.dataIndex)):(ih(o,{shape:u},n),uh(o)),o.useStyle(h),this._updateLabel(n);var d=a.getShallow("cursor");d&&o.attr("cursor",d),this._seriesModel=n||this._seriesModel,this._ecModel=i||this._ecModel;var f=s.get("focus");Ol(this,"ancestor"===f?e.getAncestorsIndices():"descendant"===f?e.getDescendantIndices():f,s.get("blurScope"),s.get("disabled"))},e.prototype._updateLabel=function(t){var e=this,n=this.node.getModel(),i=n.getModel("label"),r=this.node.getLayout(),o=r.endAngle-r.startAngle,a=(r.startAngle+r.endAngle)/2,s=Math.cos(a),l=Math.sin(a),u=this,h=u.getTextContent(),c=this.node.dataIndex,p=i.get("minAngle")/180*Math.PI,d=i.get("show")&&!(null!=p&&Math.abs(o)<p);function f(t,e){var n=t.get(e);return null==n?i.get(e):n}h.ignore=!d,E(qs,(function(i){var o="normal"===i?n.getModel("label"):n.getModel([i,"label"]),p="normal"===i,d=p?h:h.ensureState(i),g=t.getFormattedLabel(c,i);p&&(g=g||e.node.name),d.style=Yh(o,{},null,"normal"!==i,!0),g&&(d.style.text=g);var y=o.get("show");null==y||p||(d.ignore=!y);var v,m=f(o,"position"),x=p?u:u.states[i],_=x.style.fill;x.textConfig={outsideFill:"inherit"===o.get("color")?_:null,inside:"outside"!==m};var b=f(o,"distance")||0,w=f(o,"align");"outside"===m?(v=r.r+b,w=a>Math.PI/2?"right":"left"):w&&"center"!==w?"left"===w?(v=r.r0+b,a>Math.PI/2&&(w="right")):"right"===w&&(v=r.r-b,a>Math.PI/2&&(w="left")):(v=(r.r+r.r0)/2,w="center"),d.style.align=w,d.style.verticalAlign=f(o,"verticalAlign")||"middle",d.x=v*s+r.cx,d.y=v*l+r.cy;var S=f(o,"rotate"),M=0;"radial"===S?(M=-a)<-Math.PI/2&&(M+=Math.PI):"tangential"===S?(M=Math.PI/2-a)>Math.PI/2?M-=Math.PI:M<-Math.PI/2&&(M+=Math.PI):j(S)&&(M=S*Math.PI/180),d.rotation=M})),h.dirtyStyle()},e}(Tu),uO="sunburstRootToNode",hO="sunburstHighlight";var cO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n,i){var r=this;this.seriesModel=t,this.api=n,this.ecModel=e;var o=t.getData(),a=o.tree.root,s=t.getViewRoot(),l=this.group,u=t.get("renderLabelForZeroData"),h=[];s.eachNode((function(t){h.push(t)}));var c=this._oldChildren||[];!function(i,r){if(0===i.length&&0===r.length)return;function s(t){return t.getId()}function h(s,h){!function(i,r){u||!i||i.getValue()||(i=null);if(i!==a&&r!==a)if(r&&r.piece)i?(r.piece.updateData(!1,i,t,e,n),o.setItemGraphicEl(i.dataIndex,r.piece)):function(t){if(!t)return;t.piece&&(l.remove(t.piece),t.piece=null)}(r);else if(i){var s=new lO(i,t,e,n);l.add(s),o.setItemGraphicEl(i.dataIndex,s)}}(null==s?null:i[s],null==h?null:r[h])}new Sm(r,i,s,s).add(h).update(h).remove(H(h,null)).execute()}(h,c),function(i,o){o.depth>0?(r.virtualPiece?r.virtualPiece.updateData(!1,i,t,e,n):(r.virtualPiece=new lO(i,t,e,n),l.add(r.virtualPiece)),o.piece.off("click"),r.virtualPiece.on("click",(function(t){r._rootToNode(o.parentNode)}))):r.virtualPiece&&(l.remove(r.virtualPiece),r.virtualPiece=null)}(a,s),this._initEvents(),this._oldChildren=h},e.prototype._initEvents=function(){var t=this;this.group.off("click"),this.group.on("click",(function(e){var n=!1;t.seriesModel.getViewRoot().eachNode((function(i){if(!n&&i.piece&&i.piece===e.target){var r=i.getModel().get("nodeClick");if("rootToNode"===r)t._rootToNode(i);else if("link"===r){var o=i.getModel(),a=o.get("link");if(a)pp(a,o.get("target",!0)||"_blank")}n=!0}}))}))},e.prototype._rootToNode=function(t){t!==this.seriesModel.getViewRoot()&&this.api.dispatchAction({type:uO,from:this.uid,seriesId:this.seriesModel.id,targetNode:t})},e.prototype.containPoint=function(t,e){var n=e.getData().getItemLayout(0);if(n){var i=t[0]-n.cx,r=t[1]-n.cy,o=Math.sqrt(i*i+r*r);return o<=n.r&&o>=n.r0}},e.type="sunburst",e}(mg),pO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.ignoreStyleOnData=!0,n}return n(e,t),e.prototype.getInitialData=function(t,e){var n={name:t.name,children:t.data};dO(n);var i=this._levelModels=z(t.levels||[],(function(t){return new pc(t,this,e)}),this),r=CC.createTree(n,this,(function(t){t.wrapMethod("getItemModel",(function(t,e){var n=r.getNodeByDataIndex(e),o=i[n.depth];return o&&(t.parentModel=o),t}))}));return r.data},e.prototype.optionUpdated=function(){this.resetViewRoot()},e.prototype.getDataParams=function(e){var n=t.prototype.getDataParams.apply(this,arguments),i=this.getData().tree.getNodeByDataIndex(e);return n.treePathInfo=LC(i,this),n},e.prototype.getLevelModel=function(t){return this._levelModels&&this._levelModels[t.depth]},e.prototype.getViewRoot=function(){return this._viewRoot},e.prototype.resetViewRoot=function(t){t?this._viewRoot=t:t=this._viewRoot;var e=this.getRawData().tree.root;t&&(t===e||e.contains(t))||(this._viewRoot=e)},e.prototype.enableAriaDecal=function(){zC(this)},e.type="series.sunburst",e.defaultOption={z:2,center:["50%","50%"],radius:[0,"75%"],clockwise:!0,startAngle:90,minAngle:0,stillShowZeroSum:!0,nodeClick:"rootToNode",renderLabelForZeroData:!1,label:{rotate:"radial",show:!0,opacity:1,align:"center",position:"inside",distance:5,silent:!0},itemStyle:{borderWidth:1,borderColor:"white",borderType:"solid",shadowBlur:0,shadowColor:"rgba(0, 0, 0, 0.2)",shadowOffsetX:0,shadowOffsetY:0,opacity:1},emphasis:{focus:"descendant"},blur:{itemStyle:{opacity:.2},label:{opacity:.1}},animationType:"expansion",animationDuration:1e3,animationDurationUpdate:500,data:[],sort:"desc"},e}(ag);function dO(t){var e=0;E(t.children,(function(t){dO(t);var n=t.value;Y(n)&&(n=n[0]),e+=n}));var n=t.value;Y(n)&&(n=n[0]),(null==n||isNaN(n))&&(n=e),n<0&&(n=0),Y(t.value)?t.value[0]=n:t.value=n}var fO=Math.PI/180;function gO(t,e,n){e.eachSeriesByType(t,(function(t){var e=t.get("center"),i=t.get("radius");Y(i)||(i=[0,i]),Y(e)||(e=[e,e]);var r=n.getWidth(),o=n.getHeight(),a=Math.min(r,o),s=Er(e[0],r),l=Er(e[1],o),u=Er(i[0],a/2),h=Er(i[1],a/2),c=-t.get("startAngle")*fO,p=t.get("minAngle")*fO,d=t.getData().tree.root,f=t.getViewRoot(),g=f.depth,y=t.get("sort");null!=y&&yO(f,y);var v=0;E(f.children,(function(t){!isNaN(t.getValue())&&v++}));var m=f.getValue(),x=Math.PI/(m||v)*2,_=f.depth>0,b=f.height-(_?-1:1),w=(h-u)/(b||1),S=t.get("clockwise"),M=t.get("stillShowZeroSum"),I=S?1:-1,T=function(e,n){if(e){var i=n;if(e!==d){var r=e.getValue(),o=0===m&&M?x:r*x;o<p&&(o=p),i=n+I*o;var h=e.depth-g-(_?-1:1),c=u+w*h,f=u+w*(h+1),y=t.getLevelModel(e);if(y){var v=y.get("r0",!0),b=y.get("r",!0),C=y.get("radius",!0);null!=C&&(v=C[0],b=C[1]),null!=v&&(c=Er(v,a/2)),null!=b&&(f=Er(b,a/2))}e.setLayout({angle:o,startAngle:n,endAngle:i,clockwise:S,cx:s,cy:l,r0:c,r:f})}if(e.children&&e.children.length){var D=0;E(e.children,(function(t){D+=T(t,n+D)}))}return i-n}};if(_){var C=u,D=u+w,A=2*Math.PI;d.setLayout({angle:A,startAngle:c,endAngle:c+A,clockwise:S,cx:s,cy:l,r0:C,r:D})}T(f,c)}))}function yO(t,e){var n=t.children||[];t.children=function(t,e){if(U(e)){var n=z(t,(function(t,e){var n=t.getValue();return{params:{depth:t.depth,height:t.height,dataIndex:t.dataIndex,getValue:function(){return n}},index:e}}));return n.sort((function(t,n){return e(t.params,n.params)})),z(n,(function(e){return t[e.index]}))}var i="asc"===e;return t.sort((function(t,e){var n=(t.getValue()-e.getValue())*(i?1:-1);return 0===n?(t.dataIndex-e.dataIndex)*(i?-1:1):n}))}(n,e),n.length&&E(t.children,(function(t){yO(t,e)}))}function vO(t){var e={};t.eachSeriesByType("sunburst",(function(t){var n=t.getData(),i=n.tree;i.eachNode((function(r){var o=r.getModel().getModel("itemStyle").getItemStyle();o.fill||(o.fill=function(t,n,i){for(var r=t;r&&r.depth>1;)r=r.parentNode;var o=n.getColorFromPalette(r.name||r.dataIndex+"",e);return t.depth>1&&X(o)&&(o=Sn(o,(t.depth-1)/(i-1)*.5)),o}(r,t,i.root.height)),A(n.ensureUniqueItemVisual(r.dataIndex,"style"),o)}))}))}var mO={color:"fill",borderColor:"stroke"},xO={symbol:1,symbolSize:1,symbolKeepAspect:1,legendIcon:1,visualMeta:1,liftZ:1,decal:1},_O=So(),bO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.optionUpdated=function(){this.currentZLevel=this.get("zlevel",!0),this.currentZ=this.get("z",!0)},e.prototype.getInitialData=function(t,e){return nx(null,this)},e.prototype.getDataParams=function(e,n,i){var r=t.prototype.getDataParams.call(this,e,n);return i&&(r.info=_O(i).info),r},e.type="series.custom",e.dependencies=["grid","polar","geo","singleAxis","calendar"],e.defaultOption={coordinateSystem:"cartesian2d",z:2,legendHoverLink:!0,clip:!1},e}(ag);function wO(t,e){return e=e||[0,0],z(["x","y"],(function(n,i){var r=this.getAxis(n),o=e[i],a=t[i]/2;return"category"===r.type?r.getBandWidth():Math.abs(r.dataToCoord(o-a)-r.dataToCoord(o+a))}),this)}function SO(t,e){return e=e||[0,0],z([0,1],(function(n){var i=e[n],r=t[n]/2,o=[],a=[];return o[n]=i-r,a[n]=i+r,o[1-n]=a[1-n]=e[1-n],Math.abs(this.dataToPoint(o)[n]-this.dataToPoint(a)[n])}),this)}function MO(t,e){var n=this.getAxis(),i=e instanceof Array?e[0]:e,r=(t instanceof Array?t[0]:t)/2;return"category"===n.type?n.getBandWidth():Math.abs(n.dataToCoord(i-r)-n.dataToCoord(i+r))}function IO(t,e){return e=e||[0,0],z(["Radius","Angle"],(function(n,i){var r=this["get"+n+"Axis"](),o=e[i],a=t[i]/2,s="category"===r.type?r.getBandWidth():Math.abs(r.dataToCoord(o-a)-r.dataToCoord(o+a));return"Angle"===n&&(s=s*Math.PI/180),s}),this)}function TO(t,e,n,i){return t&&(t.legacy||!1!==t.legacy&&!n&&!i&&"tspan"!==e&&("text"===e||mt(t,"text")))}function CO(t,e,n){var i,r,o,a=t;if("text"===e)o=a;else{o={},mt(a,"text")&&(o.text=a.text),mt(a,"rich")&&(o.rich=a.rich),mt(a,"textFill")&&(o.fill=a.textFill),mt(a,"textStroke")&&(o.stroke=a.textStroke),mt(a,"fontFamily")&&(o.fontFamily=a.fontFamily),mt(a,"fontSize")&&(o.fontSize=a.fontSize),mt(a,"fontStyle")&&(o.fontStyle=a.fontStyle),mt(a,"fontWeight")&&(o.fontWeight=a.fontWeight),r={type:"text",style:o,silent:!0},i={};var s=mt(a,"textPosition");n?i.position=s?a.textPosition:"inside":s&&(i.position=a.textPosition),mt(a,"textPosition")&&(i.position=a.textPosition),mt(a,"textOffset")&&(i.offset=a.textOffset),mt(a,"textRotation")&&(i.rotation=a.textRotation),mt(a,"textDistance")&&(i.distance=a.textDistance)}return DO(o,t),E(o.rich,(function(t){DO(t,t)})),{textConfig:i,textContent:r}}function DO(t,e){e&&(e.font=e.textFont||e.font,mt(e,"textStrokeWidth")&&(t.lineWidth=e.textStrokeWidth),mt(e,"textAlign")&&(t.align=e.textAlign),mt(e,"textVerticalAlign")&&(t.verticalAlign=e.textVerticalAlign),mt(e,"textLineHeight")&&(t.lineHeight=e.textLineHeight),mt(e,"textWidth")&&(t.width=e.textWidth),mt(e,"textHeight")&&(t.height=e.textHeight),mt(e,"textBackgroundColor")&&(t.backgroundColor=e.textBackgroundColor),mt(e,"textPadding")&&(t.padding=e.textPadding),mt(e,"textBorderColor")&&(t.borderColor=e.textBorderColor),mt(e,"textBorderWidth")&&(t.borderWidth=e.textBorderWidth),mt(e,"textBorderRadius")&&(t.borderRadius=e.textBorderRadius),mt(e,"textBoxShadowColor")&&(t.shadowColor=e.textBoxShadowColor),mt(e,"textBoxShadowBlur")&&(t.shadowBlur=e.textBoxShadowBlur),mt(e,"textBoxShadowOffsetX")&&(t.shadowOffsetX=e.textBoxShadowOffsetX),mt(e,"textBoxShadowOffsetY")&&(t.shadowOffsetY=e.textBoxShadowOffsetY))}function AO(t,e,n){var i=t;i.textPosition=i.textPosition||n.position||"inside",null!=n.offset&&(i.textOffset=n.offset),null!=n.rotation&&(i.textRotation=n.rotation),null!=n.distance&&(i.textDistance=n.distance);var r=i.textPosition.indexOf("inside")>=0,o=t.fill||"#000";kO(i,e);var a=null==i.textFill;return r?a&&(i.textFill=n.insideFill||"#fff",!i.textStroke&&n.insideStroke&&(i.textStroke=n.insideStroke),!i.textStroke&&(i.textStroke=o),null==i.textStrokeWidth&&(i.textStrokeWidth=2)):(a&&(i.textFill=t.fill||n.outsideFill||"#000"),!i.textStroke&&n.outsideStroke&&(i.textStroke=n.outsideStroke)),i.text=e.text,i.rich=e.rich,E(e.rich,(function(t){kO(t,t)})),i}function kO(t,e){e&&(mt(e,"fill")&&(t.textFill=e.fill),mt(e,"stroke")&&(t.textStroke=e.fill),mt(e,"lineWidth")&&(t.textStrokeWidth=e.lineWidth),mt(e,"font")&&(t.font=e.font),mt(e,"fontStyle")&&(t.fontStyle=e.fontStyle),mt(e,"fontWeight")&&(t.fontWeight=e.fontWeight),mt(e,"fontSize")&&(t.fontSize=e.fontSize),mt(e,"fontFamily")&&(t.fontFamily=e.fontFamily),mt(e,"align")&&(t.textAlign=e.align),mt(e,"verticalAlign")&&(t.textVerticalAlign=e.verticalAlign),mt(e,"lineHeight")&&(t.textLineHeight=e.lineHeight),mt(e,"width")&&(t.textWidth=e.width),mt(e,"height")&&(t.textHeight=e.height),mt(e,"backgroundColor")&&(t.textBackgroundColor=e.backgroundColor),mt(e,"padding")&&(t.textPadding=e.padding),mt(e,"borderColor")&&(t.textBorderColor=e.borderColor),mt(e,"borderWidth")&&(t.textBorderWidth=e.borderWidth),mt(e,"borderRadius")&&(t.textBorderRadius=e.borderRadius),mt(e,"shadowColor")&&(t.textBoxShadowColor=e.shadowColor),mt(e,"shadowBlur")&&(t.textBoxShadowBlur=e.shadowBlur),mt(e,"shadowOffsetX")&&(t.textBoxShadowOffsetX=e.shadowOffsetX),mt(e,"shadowOffsetY")&&(t.textBoxShadowOffsetY=e.shadowOffsetY),mt(e,"textShadowColor")&&(t.textShadowColor=e.textShadowColor),mt(e,"textShadowBlur")&&(t.textShadowBlur=e.textShadowBlur),mt(e,"textShadowOffsetX")&&(t.textShadowOffsetX=e.textShadowOffsetX),mt(e,"textShadowOffsetY")&&(t.textShadowOffsetY=e.textShadowOffsetY))}var LO={position:["x","y"],scale:["scaleX","scaleY"],origin:["originX","originY"]},PO=G(LO),OO=(V(Ki,(function(t,e){return t[e]=1,t}),{}),Ki.join(", "),["","style","shape","extra"]),RO=So();function NO(t,e,n,i,r){var o=t+"Animation",a=eh(t,i,r)||{},s=RO(e).userDuring;return a.duration>0&&(a.during=s?W(WO,{el:e,userDuring:s}):null,a.setToFinal=!0,a.scope=t),A(a,n[o]),a}function EO(t,e,n,i){var r=(i=i||{}).dataIndex,o=i.isInit,a=i.clearStyle,s=n.isAnimationEnabled(),l=RO(t),u=e.style;l.userDuring=e.during;var h={},c={};if(function(t,e,n){for(var i=0;i<PO.length;i++){var r=PO[i],o=LO[r],a=e[r];a&&(n[o[0]]=a[0],n[o[1]]=a[1])}for(i=0;i<Ki.length;i++){var s=Ki[i];null!=e[s]&&(n[s]=e[s])}}(0,e,c),YO("shape",e,c),YO("extra",e,c),!o&&s&&(function(t,e,n){for(var i=e.transition,r=BO(i)?Ki:ho(i||[]),o=0;o<r.length;o++){var a=r[o];if("style"!==a&&"shape"!==a&&"extra"!==a){var s=t[a];0,n[a]=s}}}(t,e,h),HO("shape",t,e,h),HO("extra",t,e,h),function(t,e,n,i){if(!n)return;var r,o=t.style;if(o){var a=n.transition,s=e.transition;if(a&&!BO(a)){var l=ho(a);!r&&(r=i.style={});for(var u=0;u<l.length;u++){var h=o[f=l[u]];r[f]=h}}else if(t.getAnimationStyleProps&&(BO(s)||BO(a)||P(s,"style")>=0)){var c=t.getAnimationStyleProps(),p=c?c.style:null;if(p){!r&&(r=i.style={});var d=G(n);for(u=0;u<d.length;u++){var f;if(p[f=d[u]]){h=o[f];r[f]=h}}}}}}(t,e,u,h)),c.style=u,function(t,e,n){var i=e.style;if(!t.isGroup&&i){if(n){t.useStyle({});for(var r=t.animators,o=0;o<r.length;o++){var a=r[o];"style"===a.targetName&&a.changeTarget(t.style)}}t.setStyle(i)}e&&(e.style=null,e&&t.attr(e),e.style=i)}(t,c,a),function(t,e){mt(e,"silent")&&(t.silent=e.silent),mt(e,"ignore")&&(t.ignore=e.ignore),t instanceof da&&mt(e,"invisible")&&(t.invisible=e.invisible);t instanceof fs&&mt(e,"autoBatch")&&(t.autoBatch=e.autoBatch)}(t,e),s)if(o){var p={};E(OO,(function(t){var n=t?e[t]:e;n&&n.enterFrom&&(t&&(p[t]=p[t]||{}),A(t?p[t]:p,n.enterFrom))}));var d=NO("enter",t,e,n,r);d.duration>0&&t.animateFrom(p,d)}else!function(t,e,n,i,r){if(r){var o=NO("update",t,e,i,n);o.duration>0&&t.animateFrom(r,o)}}(t,e,r||0,n,h);zO(t,e),u?t.dirty():t.markRedraw()}function zO(t,e){for(var n=RO(t).leaveToProps,i=0;i<OO.length;i++){var r=OO[i],o=r?e[r]:e;o&&o.leaveTo&&(n||(n=RO(t).leaveToProps={}),r&&(n[r]=n[r]||{}),A(r?n[r]:n,o.leaveTo))}}function VO(t,e,n,i){if(t){var r=t.parent,o=RO(t).leaveToProps;if(o){var a=NO("update",t,e,n,0);a.done=function(){r.remove(t),i&&i()},t.animateTo(o,a)}else r.remove(t),i&&i()}}function BO(t){return"all"===t}var FO={},GO={setTransform:function(t,e){return FO.el[t]=e,this},getTransform:function(t){return FO.el[t]},setShape:function(t,e){var n=FO.el;return(n.shape||(n.shape={}))[t]=e,n.dirtyShape&&n.dirtyShape(),this},getShape:function(t){var e=FO.el.shape;if(e)return e[t]},setStyle:function(t,e){var n=FO.el,i=n.style;return i&&(i[t]=e,n.dirtyStyle&&n.dirtyStyle()),this},getStyle:function(t){var e=FO.el.style;if(e)return e[t]},setExtra:function(t,e){return(FO.el.extra||(FO.el.extra={}))[t]=e,this},getExtra:function(t){var e=FO.el.extra;if(e)return e[t]}};function WO(){var t=this,e=t.el;if(e){var n=RO(e).userDuring,i=t.userDuring;n===i?(FO.el=e,i(GO)):t.el=t.userDuring=null}}function HO(t,e,n,i){var r=n[t];if(r){var o,a=e[t];if(a){var s=n.transition,l=r.transition;if(l)if(!o&&(o=i[t]={}),BO(l))A(o,a);else for(var u=ho(l),h=0;h<u.length;h++){var c=a[d=u[h]];o[d]=c}else if(BO(s)||P(s,t)>=0){!o&&(o=i[t]={});var p=G(a);for(h=0;h<p.length;h++){var d;c=a[d=p[h]];UO(r[d],c)&&(o[d]=c)}}}}}function YO(t,e,n){var i=e[t];if(i)for(var r=n[t]={},o=G(i),a=0;a<o.length;a++){var s=o[a];r[s]=ti(i[s])}}function UO(t,e){return N(t)?t!==e:null!=t&&isFinite(t)}var XO=So(),ZO=["percent","easing","shape","style","extra"];function jO(t){t.stopAnimation("keyframe"),t.attr(XO(t))}function qO(t,e,n){if(n.isAnimationEnabled()&&e)if(Y(e))E(e,(function(e){qO(t,e,n)}));else{var i=e.keyframes,r=e.duration;if(n&&null==r){var o=eh("enter",n,0);r=o&&o.duration}if(i&&r){var a=XO(t);E(OO,(function(n){if(!n||t[n]){var o;i.sort((function(t,e){return t.percent-e.percent})),E(i,(function(i){var s=t.animators,l=n?i[n]:i;if(l){var u=G(l);if(n||(u=B(u,(function(t){return P(ZO,t)<0}))),u.length){o||((o=t.animate(n,e.loop,!0)).scope="keyframe");for(var h=0;h<s.length;h++)s[h]!==o&&s[h].targetName===o.targetName&&s[h].stopTracks(u);n&&(a[n]=a[n]||{});var c=n?a[n]:a;E(u,(function(e){c[e]=((n?t[n]:t)||{})[e]})),o.whenWithKeys(r*i.percent,l,u,i.easing)}}})),o&&o.delay(e.delay||0).duration(r).start(e.easing)}}))}}}var KO="emphasis",$O="normal",JO="blur",QO="select",tR=[$O,KO,JO,QO],eR={normal:["itemStyle"],emphasis:[KO,"itemStyle"],blur:[JO,"itemStyle"],select:[QO,"itemStyle"]},nR={normal:["label"],emphasis:[KO,"label"],blur:[JO,"label"],select:[QO,"label"]},iR=["x","y"],rR={normal:{},emphasis:{},blur:{},select:{}},oR={cartesian2d:function(t){var e=t.master.getRect();return{coordSys:{type:"cartesian2d",x:e.x,y:e.y,width:e.width,height:e.height},api:{coord:function(e){return t.dataToPoint(e)},size:W(wO,t)}}},geo:function(t){var e=t.getBoundingRect();return{coordSys:{type:"geo",x:e.x,y:e.y,width:e.width,height:e.height,zoom:t.getZoom()},api:{coord:function(e){return t.dataToPoint(e)},size:W(SO,t)}}},singleAxis:function(t){var e=t.getRect();return{coordSys:{type:"singleAxis",x:e.x,y:e.y,width:e.width,height:e.height},api:{coord:function(e){return t.dataToPoint(e)},size:W(MO,t)}}},polar:function(t){var e=t.getRadiusAxis(),n=t.getAngleAxis(),i=e.getExtent();return i[0]>i[1]&&i.reverse(),{coordSys:{type:"polar",cx:t.cx,cy:t.cy,r:i[1],r0:i[0]},api:{coord:function(i){var r=e.dataToRadius(i[0]),o=n.dataToAngle(i[1]),a=t.coordToPoint([r,o]);return a.push(r,o*Math.PI/180),a},size:W(IO,t)}}},calendar:function(t){var e=t.getRect(),n=t.getRangeInfo();return{coordSys:{type:"calendar",x:e.x,y:e.y,width:e.width,height:e.height,cellWidth:t.getCellWidth(),cellHeight:t.getCellHeight(),rangeInfo:{start:n.start,end:n.end,weeks:n.weeks,dayCount:n.allDay}},api:{coord:function(e,n){return t.dataToPoint(e,n)}}}}};function aR(t){return t instanceof fs}function sR(t){return t instanceof da}var lR=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n,i){this._progressiveEls=null;var r=this._data,o=t.getData(),a=this.group,s=dR(t,o,e,n);r||a.removeAll(),o.diff(r).add((function(e){gR(n,null,e,s(e,i),t,a,o)})).remove((function(e){var n=r.getItemGraphicEl(e);VO(n,_O(n).option,t)})).update((function(e,l){var u=r.getItemGraphicEl(l);gR(n,u,e,s(e,i),t,a,o)})).execute();var l=t.get("clip",!0)?aS(t.coordinateSystem,!1,t):null;l?a.setClipPath(l):a.removeClipPath(),this._data=o},e.prototype.incrementalPrepareRender=function(t,e,n){this.group.removeAll(),this._data=null},e.prototype.incrementalRender=function(t,e,n,i,r){var o=e.getData(),a=dR(e,o,n,i),s=this._progressiveEls=[];function l(t){t.isGroup||(t.incremental=!0,t.ensureState("emphasis").hoverLayer=!0)}for(var u=t.start;u<t.end;u++){var h=gR(null,null,u,a(u,r),e,this.group,o);h&&(h.traverse(l),s.push(h))}},e.prototype.eachRendered=function(t){zh(this._progressiveEls||this.group,t)},e.prototype.filterForExposedEvent=function(t,e,n,i){var r=e.element;if(null==r||n.name===r)return!0;for(;(n=n.__hostTarget||n.parent)&&n!==this.group;)if(n.name===r)return!0;return!1},e.type="custom",e}(mg);function uR(t){var e,n=t.type;if("path"===n){var i=t.shape,r=null!=i.width&&null!=i.height?{x:i.x||0,y:i.y||0,width:i.width,height:i.height}:null,o=MR(i);e=mh(o,null,r,i.layout||"center"),_O(e).customPathData=o}else if("image"===n)e=new xs({}),_O(e).customImagePath=t.style.image;else if("text"===n)e=new As({});else if("group"===n)e=new Cr;else{if("compoundPath"===n)throw new Error('"compoundPath" is not supported yet.');var a=vh(n);if(!a){var s="";0,ao(s)}e=new a}return _O(e).customGraphicType=n,e.name=t.name,e.z2EmphasisLift=1,e.z2SelectLift=1,e}function hR(t,e,n,i,r,o,a){jO(e);var s=r&&r.normal.cfg;s&&e.setTextConfig(s),i&&null==i.transition&&(i.transition=iR);var l=i&&i.style;if(l){if("text"===e.type){var u=l;mt(u,"textFill")&&(u.fill=u.textFill),mt(u,"textStroke")&&(u.stroke=u.textStroke)}var h=void 0,c=aR(e)?l.decal:null;t&&c&&(c.dirty=!0,h=nv(c,t)),l.__decalPattern=h}sR(e)&&(l&&(h=l.__decalPattern)&&(l.decal=h));EO(e,i,o,{dataIndex:n,isInit:a,clearStyle:!0}),qO(e,i.keyframeAnimation,o)}function cR(t,e,n,i,r){var o=e.isGroup?null:e,a=r&&r[t].cfg;if(o){var s=o.ensureState(t);if(!1===i){var l=o.getState(t);l&&(l.style=null)}else s.style=i||null;a&&(s.textConfig=a),yl(o)}}function pR(t,e,n){var i=n===$O,r=i?e:xR(e,n),o=r?r.z2:null;null!=o&&((i?t:t.ensureState(n)).z2=o||0)}function dR(t,e,n,i){var r=t.get("renderItem"),o=t.coordinateSystem,a={};o&&(a=o.prepareCustoms?o.prepareCustoms(o):oR[o.type](o));for(var s,l,u=k({getWidth:i.getWidth,getHeight:i.getHeight,getZr:i.getZr,getDevicePixelRatio:i.getDevicePixelRatio,value:function(t,n){return null==n&&(n=s),e.getStore().get(e.getDimensionIndex(t||0),n)},style:function(n,i){0;null==i&&(i=s);var r=e.getItemVisual(i,"style"),o=r&&r.fill,a=r&&r.opacity,l=m(i,$O).getItemStyle();null!=o&&(l.fill=o),null!=a&&(l.opacity=a);var u={inheritColor:X(o)?o:"#000"},h=x(i,$O),c=Yh(h,null,u,!1,!0);c.text=h.getShallow("show")?rt(t.getFormattedLabel(i,$O),Fw(e,i)):null;var p=Uh(h,u,!1);return b(n,l),l=AO(l,c,p),n&&_(l,n),l.legacy=!0,l},ordinalRawValue:function(t,n){null==n&&(n=s),t=t||0;var i=e.getDimensionInfo(t);if(!i){var r=e.getDimensionIndex(t);return r>=0?e.getStore().get(r,n):void 0}var o=e.get(i.name,n),a=i&&i.ordinalMeta;return a?a.categories[o]:o},styleEmphasis:function(n,i){0;null==i&&(i=s);var r=m(i,KO).getItemStyle(),o=x(i,KO),a=Yh(o,null,null,!0,!0);a.text=o.getShallow("show")?ot(t.getFormattedLabel(i,KO),t.getFormattedLabel(i,$O),Fw(e,i)):null;var l=Uh(o,null,!0);return b(n,r),r=AO(r,a,l),n&&_(r,n),r.legacy=!0,r},visual:function(t,n){if(null==n&&(n=s),mt(mO,t)){var i=e.getItemVisual(n,"style");return i?i[mO[t]]:null}if(mt(xO,t))return e.getItemVisual(n,t)},barLayout:function(t){if("cartesian2d"===o.type){return function(t){var e=[],n=t.axis,i="axis0";if("category"===n.type){for(var r=n.getBandWidth(),o=0;o<t.count;o++)e.push(k({bandWidth:r,axisKey:i,stackId:bx+o},t));var a=Cx(e),s=[];for(o=0;o<t.count;o++){var l=a.axis0[bx+o];l.offsetCenter=l.offset+l.width/2,s.push(l)}return s}}(k({axis:o.getBaseAxis()},t))}},currentSeriesIndices:function(){return n.getCurrentSeriesIndices()},font:function(t){return Kh(t,n)}},a.api||{}),h={context:{},seriesId:t.id,seriesName:t.name,seriesIndex:t.seriesIndex,coordSys:a.coordSys,dataInsideLength:e.count(),encode:fR(t.getData())},c={},p={},d={},f={},g=0;g<tR.length;g++){var y=tR[g];d[y]=t.getModel(eR[y]),f[y]=t.getModel(nR[y])}function v(t){return t===s?l||(l=e.getItemModel(t)):e.getItemModel(t)}function m(t,n){return e.hasItemOption?t===s?c[n]||(c[n]=v(t).getModel(eR[n])):v(t).getModel(eR[n]):d[n]}function x(t,n){return e.hasItemOption?t===s?p[n]||(p[n]=v(t).getModel(nR[n])):v(t).getModel(nR[n]):f[n]}return function(t,n){return s=t,l=null,c={},p={},r&&r(k({dataIndexInside:t,dataIndex:e.getRawIndex(t),actionType:n?n.type:null},h),u)};function _(t,e){for(var n in e)mt(e,n)&&(t[n]=e[n])}function b(t,e){t&&(t.textFill&&(e.textFill=t.textFill),t.textPosition&&(e.textPosition=t.textPosition))}}function fR(t){var e={};return E(t.dimensions,(function(n){var i=t.getDimensionInfo(n);if(!i.isExtraCoord){var r=i.coordDim;(e[r]=e[r]||[])[i.coordDimIndex]=t.getDimensionIndex(n)}})),e}function gR(t,e,n,i,r,o,a){if(i){var s=yR(t,e,n,i,r,o);return s&&a.setItemGraphicEl(n,s),s&&Ol(s,i.focus,i.blurScope,i.emphasisDisabled),s}o.remove(e)}function yR(t,e,n,i,r,o){var a=-1,s=e;e&&vR(e,i,r)&&(a=P(o.childrenRef(),e),e=null);var l,u,h=!e,c=e;c?c.clearStates():(c=uR(i),s&&(l=s,(u=c).copyTransform(l),sR(u)&&sR(l)&&(u.setStyle(l.style),u.z=l.z,u.z2=l.z2,u.zlevel=l.zlevel,u.invisible=l.invisible,u.ignore=l.ignore,aR(u)&&aR(l)&&u.setShape(l.shape)))),!1===i.morph?c.disableMorphing=!0:c.disableMorphing&&(c.disableMorphing=!1),rR.normal.cfg=rR.normal.conOpt=rR.emphasis.cfg=rR.emphasis.conOpt=rR.blur.cfg=rR.blur.conOpt=rR.select.cfg=rR.select.conOpt=null,rR.isLegacy=!1,function(t,e,n,i,r,o){if(t.isGroup)return;mR(n,null,o),mR(n,KO,o);var a=o.normal.conOpt,s=o.emphasis.conOpt,l=o.blur.conOpt,u=o.select.conOpt;if(null!=a||null!=s||null!=u||null!=l){var h=t.getTextContent();if(!1===a)h&&t.removeTextContent();else{a=o.normal.conOpt=a||{type:"text"},h?h.clearStates():(h=uR(a),t.setTextContent(h)),hR(null,h,e,a,null,i,r);for(var c=a&&a.style,p=0;p<tR.length;p++){var d=tR[p];if(d!==$O){var f=o[d].conOpt;cR(d,h,0,_R(a,f,d),null)}}c?h.dirty():h.markRedraw()}}}(c,n,i,r,h,rR),function(t,e,n,i,r){var o=n.clipPath;if(!1===o)t&&t.getClipPath()&&t.removeClipPath();else if(o){var a=t.getClipPath();a&&vR(a,o,i)&&(a=null),a||(a=uR(o),t.setClipPath(a)),hR(null,a,e,o,null,i,r)}}(c,n,i,r,h),hR(t,c,n,i,rR,r,h),mt(i,"info")&&(_O(c).info=i.info);for(var p=0;p<tR.length;p++){var d=tR[p];if(d!==$O){var f=xR(i,d);cR(d,c,0,_R(i,f,d),rR)}}return function(t,e,n){if(!t.isGroup){var i=t,r=n.currentZ,o=n.currentZLevel;i.z=r,i.zlevel=o;var a=e.z2;null!=a&&(i.z2=a||0);for(var s=0;s<tR.length;s++)pR(i,e,tR[s])}}(c,i,r),"group"===i.type&&function(t,e,n,i,r){var o=i.children,a=o?o.length:0,s=i.$mergeChildren,l="byName"===s||i.diffChildrenByName,u=!1===s;if(!a&&!l&&!u)return;if(l)return h={api:t,oldChildren:e.children()||[],newChildren:o||[],dataIndex:n,seriesModel:r,group:e},void new Sm(h.oldChildren,h.newChildren,bR,bR,h).add(wR).update(wR).remove(SR).execute();var h;u&&e.removeAll();for(var c=0;c<a;c++)o[c]&&yR(t,e.childAt(c),n,o[c],r,e);for(var p=e.childCount()-1;p>=c;p--){VO(e.childAt(p),_O(e).option,r)}}(t,c,n,i,r),a>=0?o.replaceAt(c,a):o.add(c),c}function vR(t,e,n){var i,r=_O(t),o=e.type,a=e.shape,s=e.style;return n.isUniversalTransitionEnabled()||null!=o&&o!==r.customGraphicType||"path"===o&&((i=a)&&(mt(i,"pathData")||mt(i,"d")))&&MR(a)!==r.customPathData||"image"===o&&mt(s,"image")&&s.image!==r.customImagePath}function mR(t,e,n){var i=e?xR(t,e):t,r=e?_R(t,i,KO):t.style,o=t.type,a=i?i.textConfig:null,s=t.textContent,l=s?e?xR(s,e):s:null;if(r&&(n.isLegacy||TO(r,o,!!a,!!l))){n.isLegacy=!0;var u=CO(r,o,!e);!a&&u.textConfig&&(a=u.textConfig),!l&&u.textContent&&(l=u.textContent)}if(!e&&l){var h=l;!h.type&&(h.type="text")}var c=e?n[e]:n.normal;c.cfg=a,c.conOpt=l}function xR(t,e){return e?t?t[e]:null:t}function _R(t,e,n){var i=e&&e.style;return null==i&&n===KO&&t&&(i=t.styleEmphasis),i}function bR(t,e){var n=t&&t.name;return null!=n?n:"e\0\0"+e}function wR(t,e){var n=this.context,i=null!=t?n.newChildren[t]:null,r=null!=e?n.oldChildren[e]:null;yR(n.api,r,n.dataIndex,i,n.seriesModel,n.group)}function SR(t){var e=this.context,n=e.oldChildren[t];VO(n,_O(n).option,e.seriesModel)}function MR(t){return t&&(t.pathData||t.d)}var IR=So(),TR=T,CR=W,DR=function(){function t(){this._dragging=!1,this.animationThreshold=15}return t.prototype.render=function(t,e,n,i){var r=e.get("value"),o=e.get("status");if(this._axisModel=t,this._axisPointerModel=e,this._api=n,i||this._lastValue!==r||this._lastStatus!==o){this._lastValue=r,this._lastStatus=o;var a=this._group,s=this._handle;if(!o||"hide"===o)return a&&a.hide(),void(s&&s.hide());a&&a.show(),s&&s.show();var l={};this.makeElOption(l,r,t,e,n);var u=l.graphicKey;u!==this._lastGraphicKey&&this.clear(n),this._lastGraphicKey=u;var h=this._moveAnimation=this.determineAnimation(t,e);if(a){var c=H(AR,e,h);this.updatePointerEl(a,l,c),this.updateLabelEl(a,l,c,e)}else a=this._group=new Cr,this.createPointerEl(a,l,t,e),this.createLabelEl(a,l,t,e),n.getZr().add(a);OR(a,e,!0),this._renderHandle(r)}},t.prototype.remove=function(t){this.clear(t)},t.prototype.dispose=function(t){this.clear(t)},t.prototype.determineAnimation=function(t,e){var n=e.get("animation"),i=t.axis,r="category"===i.type,o=e.get("snap");if(!o&&!r)return!1;if("auto"===n||null==n){var a=this.animationThreshold;if(r&&i.getBandWidth()>a)return!0;if(o){var s=jM(t).seriesDataCount,l=i.getExtent();return Math.abs(l[0]-l[1])/s>a}return!1}return!0===n},t.prototype.makeElOption=function(t,e,n,i,r){},t.prototype.createPointerEl=function(t,e,n,i){var r=e.pointer;if(r){var o=IR(t).pointerEl=new Vh[r.type](TR(e.pointer));t.add(o)}},t.prototype.createLabelEl=function(t,e,n,i){if(e.label){var r=IR(t).labelEl=new As(TR(e.label));t.add(r),LR(r,i)}},t.prototype.updatePointerEl=function(t,e,n){var i=IR(t).pointerEl;i&&e.pointer&&(i.setStyle(e.pointer.style),n(i,{shape:e.pointer.shape}))},t.prototype.updateLabelEl=function(t,e,n,i){var r=IR(t).labelEl;r&&(r.setStyle(e.label.style),n(r,{x:e.label.x,y:e.label.y}),LR(r,i))},t.prototype._renderHandle=function(t){if(!this._dragging&&this.updateHandleTransform){var e,n=this._axisPointerModel,i=this._api.getZr(),r=this._handle,o=n.getModel("handle"),a=n.get("status");if(!o.get("show")||!a||"hide"===a)return r&&i.remove(r),void(this._handle=null);this._handle||(e=!0,r=this._handle=Lh(o.get("icon"),{cursor:"move",draggable:!0,onmousemove:function(t){se(t.event)},onmousedown:CR(this._onHandleDragMove,this,0,0),drift:CR(this._onHandleDragMove,this),ondragend:CR(this._onHandleDragEnd,this)}),i.add(r)),OR(r,n,!1),r.setStyle(o.getItemStyle(null,["color","borderColor","borderWidth","opacity","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY"]));var s=o.get("size");Y(s)||(s=[s,s]),r.scaleX=s[0]/2,r.scaleY=s[1]/2,Dg(this,"_doDispatchAxisPointer",o.get("throttle")||0,"fixRate"),this._moveHandleToValue(t,e)}},t.prototype._moveHandleToValue=function(t,e){AR(this._axisPointerModel,!e&&this._moveAnimation,this._handle,PR(this.getHandleTransform(t,this._axisModel,this._axisPointerModel)))},t.prototype._onHandleDragMove=function(t,e){var n=this._handle;if(n){this._dragging=!0;var i=this.updateHandleTransform(PR(n),[t,e],this._axisModel,this._axisPointerModel);this._payloadInfo=i,n.stopAnimation(),n.attr(PR(i)),IR(n).lastProp=null,this._doDispatchAxisPointer()}},t.prototype._doDispatchAxisPointer=function(){if(this._handle){var t=this._payloadInfo,e=this._axisModel;this._api.dispatchAction({type:"updateAxisPointer",x:t.cursorPoint[0],y:t.cursorPoint[1],tooltipOption:t.tooltipOption,axesInfo:[{axisDim:e.axis.dim,axisIndex:e.componentIndex}]})}},t.prototype._onHandleDragEnd=function(){if(this._dragging=!1,this._handle){var t=this._axisPointerModel.get("value");this._moveHandleToValue(t),this._api.dispatchAction({type:"hideTip"})}},t.prototype.clear=function(t){this._lastValue=null,this._lastStatus=null;var e=t.getZr(),n=this._group,i=this._handle;e&&n&&(this._lastGraphicKey=null,n&&e.remove(n),i&&e.remove(i),this._group=null,this._handle=null,this._payloadInfo=null),Ag(this,"_doDispatchAxisPointer")},t.prototype.doClear=function(){},t.prototype.buildLabel=function(t,e,n){return{x:t[n=n||0],y:t[1-n],width:e[n],height:e[1-n]}},t}();function AR(t,e,n,i){kR(IR(n).lastProp,i)||(IR(n).lastProp=i,e?ih(n,i,t):(n.stopAnimation(),n.attr(i)))}function kR(t,e){if(q(t)&&q(e)){var n=!0;return E(e,(function(e,i){n=n&&kR(t[i],e)})),!!n}return t===e}function LR(t,e){t[e.get(["label","show"])?"show":"hide"]()}function PR(t){return{x:t.x||0,y:t.y||0,rotation:t.rotation||0}}function OR(t,e,n){var i=e.get("z"),r=e.get("zlevel");t&&t.traverse((function(t){"group"!==t.type&&(null!=i&&(t.z=i),null!=r&&(t.zlevel=r),t.silent=n)}))}function RR(t){var e,n=t.get("type"),i=t.getModel(n+"Style");return"line"===n?(e=i.getLineStyle()).fill=null:"shadow"===n&&((e=i.getAreaStyle()).stroke=null),e}function NR(t,e,n,i,r){var o=ER(n.get("value"),e.axis,e.ecModel,n.get("seriesDataIndices"),{precision:n.get(["label","precision"]),formatter:n.get(["label","formatter"])}),a=n.getModel("label"),s=np(a.get("padding")||0),l=a.getFont(),u=cr(o,l),h=r.position,c=u.width+s[1]+s[3],p=u.height+s[0]+s[2],d=r.align;"right"===d&&(h[0]-=c),"center"===d&&(h[0]-=c/2);var f=r.verticalAlign;"bottom"===f&&(h[1]-=p),"middle"===f&&(h[1]-=p/2),function(t,e,n,i){var r=i.getWidth(),o=i.getHeight();t[0]=Math.min(t[0]+e,r)-e,t[1]=Math.min(t[1]+n,o)-n,t[0]=Math.max(t[0],0),t[1]=Math.max(t[1],0)}(h,c,p,i);var g=a.get("backgroundColor");g&&"auto"!==g||(g=e.get(["axisLine","lineStyle","color"])),t.label={x:h[0],y:h[1],style:Yh(a,{text:o,font:l,fill:a.getTextColor(),padding:s,backgroundColor:g}),z2:10}}function ER(t,e,n,i,r){t=e.scale.parse(t);var o=e.scale.getLabel({value:t},{precision:r.precision}),a=r.formatter;if(a){var s={value:o_(e,{value:t}),axisDimension:e.dim,axisIndex:e.index,seriesData:[]};E(i,(function(t){var e=n.getSeriesByIndex(t.seriesIndex),i=t.dataIndexInside,r=e&&e.getDataParams(i);r&&s.seriesData.push(r)})),X(a)?o=a.replace("{value}",o):U(a)&&(o=a(s))}return o}function zR(t,e,n){var i=[1,0,0,1,0,0];return zi(i,i,n.rotation),Ei(i,i,n.position),Ih([t.dataToCoord(e),(n.labelOffset||0)+(n.labelDirection||1)*(n.labelMargin||0)],i)}function VR(t,e,n,i,r,o){var a=BM.innerTextLayout(n.rotation,0,n.labelDirection);n.labelMargin=r.get(["label","margin"]),NR(e,i,r,o,{position:zR(i.axis,t,n),align:a.textAlign,verticalAlign:a.textVerticalAlign})}function BR(t,e,n){return{x1:t[n=n||0],y1:t[1-n],x2:e[n],y2:e[1-n]}}function FR(t,e,n){return{x:t[n=n||0],y:t[1-n],width:e[n],height:e[1-n]}}function GR(t,e,n,i,r,o){return{cx:t,cy:e,r0:n,r:i,startAngle:r,endAngle:o,clockwise:!0}}var WR=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.makeElOption=function(t,e,n,i,r){var o=n.axis,a=o.grid,s=i.get("type"),l=HR(a,o).getOtherAxis(o).getGlobalExtent(),u=o.toGlobalCoord(o.dataToCoord(e,!0));if(s&&"none"!==s){var h=RR(i),c=YR[s](o,u,l);c.style=h,t.graphicKey=c.type,t.pointer=c}VR(e,t,AM(a.model,n),n,i,r)},e.prototype.getHandleTransform=function(t,e,n){var i=AM(e.axis.grid.model,e,{labelInside:!1});i.labelMargin=n.get(["handle","margin"]);var r=zR(e.axis,t,i);return{x:r[0],y:r[1],rotation:i.rotation+(i.labelDirection<0?Math.PI:0)}},e.prototype.updateHandleTransform=function(t,e,n,i){var r=n.axis,o=r.grid,a=r.getGlobalExtent(!0),s=HR(o,r).getOtherAxis(r).getGlobalExtent(),l="x"===r.dim?0:1,u=[t.x,t.y];u[l]+=e[l],u[l]=Math.min(a[1],u[l]),u[l]=Math.max(a[0],u[l]);var h=(s[1]+s[0])/2,c=[h,h];c[l]=u[l];return{x:u[0],y:u[1],rotation:t.rotation,cursorPoint:c,tooltipOption:[{verticalAlign:"middle"},{align:"center"}][l]}},e}(DR);function HR(t,e){var n={};return n[e.dim+"AxisIndex"]=e.index,t.getCartesian(n)}var YR={line:function(t,e,n){return{type:"Line",subPixelOptimize:!0,shape:BR([e,n[0]],[e,n[1]],UR(t))}},shadow:function(t,e,n){var i=Math.max(1,t.getBandWidth()),r=n[1]-n[0];return{type:"Rect",shape:FR([e-i/2,n[0]],[i,r],UR(t))}}};function UR(t){return"x"===t.dim?0:1}var XR=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="axisPointer",e.defaultOption={show:"auto",z:50,type:"line",snap:!1,triggerTooltip:!0,value:null,status:null,link:[],animation:null,animationDurationUpdate:200,lineStyle:{color:"#B9BEC9",width:1,type:"dashed"},shadowStyle:{color:"rgba(210,219,238,0.2)"},label:{show:!0,formatter:null,precision:"auto",margin:3,color:"#fff",padding:[5,7,5,7],backgroundColor:"auto",borderColor:null,borderWidth:0,borderRadius:3},handle:{show:!1,icon:"M10.7,11.9v-1.3H9.3v1.3c-4.9,0.3-8.8,4.4-8.8,9.4c0,5,3.9,9.1,8.8,9.4h1.3c4.9-0.3,8.8-4.4,8.8-9.4C19.5,16.3,15.6,12.2,10.7,11.9z M13.3,24.4H6.7v-1.2h6.6z M13.3,22H6.7v-1.2h6.6z M13.3,19.6H6.7v-1.2h6.6z",size:45,margin:50,color:"#333",shadowBlur:3,shadowColor:"#aaa",shadowOffsetX:0,shadowOffsetY:2,throttle:40}},e}(Ip),ZR=So(),jR=E;function qR(t,e,n){if(!r.node){var i=e.getZr();ZR(i).records||(ZR(i).records={}),function(t,e){if(ZR(t).initialized)return;function n(n,i){t.on(n,(function(n){var r=function(t){var e={showTip:[],hideTip:[]},n=function(i){var r=e[i.type];r?r.push(i):(i.dispatchAction=n,t.dispatchAction(i))};return{dispatchAction:n,pendings:e}}(e);jR(ZR(t).records,(function(t){t&&i(t,n,r.dispatchAction)})),function(t,e){var n,i=t.showTip.length,r=t.hideTip.length;i?n=t.showTip[i-1]:r&&(n=t.hideTip[r-1]);n&&(n.dispatchAction=null,e.dispatchAction(n))}(r.pendings,e)}))}ZR(t).initialized=!0,n("click",H($R,"click")),n("mousemove",H($R,"mousemove")),n("globalout",KR)}(i,e),(ZR(i).records[t]||(ZR(i).records[t]={})).handler=n}}function KR(t,e,n){t.handler("leave",null,n)}function $R(t,e,n,i){e.handler(t,n,i)}function JR(t,e){if(!r.node){var n=e.getZr();(ZR(n).records||{})[t]&&(ZR(n).records[t]=null)}}var QR=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i=e.getComponent("tooltip"),r=t.get("triggerOn")||i&&i.get("triggerOn")||"mousemove|click";qR("axisPointer",n,(function(t,e,n){"none"!==r&&("leave"===t||r.indexOf(t)>=0)&&n({type:"updateAxisPointer",currTrigger:t,x:e&&e.offsetX,y:e&&e.offsetY})}))},e.prototype.remove=function(t,e){JR("axisPointer",e)},e.prototype.dispose=function(t,e){JR("axisPointer",e)},e.type="axisPointer",e}(fg);function tN(t,e){var n,i=[],r=t.seriesIndex;if(null==r||!(n=e.getSeriesByIndex(r)))return{point:[]};var o=n.getData(),a=wo(o,t);if(null==a||a<0||Y(a))return{point:[]};var s=o.getItemGraphicEl(a),l=n.coordinateSystem;if(n.getTooltipPosition)i=n.getTooltipPosition(a)||[];else if(l&&l.dataToPoint)if(t.isStacked){var u=l.getBaseAxis(),h=l.getOtherAxis(u).dim,c=u.dim,p="x"===h||"radius"===h?1:0,d=o.mapDimension(c),f=[];f[p]=o.get(d,a),f[1-p]=o.get(o.getCalculationInfo("stackResultDimension"),a),i=l.dataToPoint(f)||[]}else i=l.dataToPoint(o.getValues(z(l.dimensions,(function(t){return o.mapDimension(t)})),a))||[];else if(s){var g=s.getBoundingRect().clone();g.applyTransform(s.transform),i=[g.x+g.width/2,g.y+g.height/2]}return{point:i,el:s}}var eN=So();function nN(t,e,n){var i=t.currTrigger,r=[t.x,t.y],o=t,a=t.dispatchAction||W(n.dispatchAction,n),s=e.getComponent("axisPointer").coordSysAxesInfo;if(s){sN(r)&&(r=tN({seriesIndex:o.seriesIndex,dataIndex:o.dataIndex},e).point);var l=sN(r),u=o.axesInfo,h=s.axesInfo,c="leave"===i||sN(r),p={},d={},f={list:[],map:{}},g={showPointer:H(rN,d),showTooltip:H(oN,f)};E(s.coordSysMap,(function(t,e){var n=l||t.containPoint(r);E(s.coordSysAxesInfo[e],(function(t,e){var i=t.axis,o=function(t,e){for(var n=0;n<(t||[]).length;n++){var i=t[n];if(e.axis.dim===i.axisDim&&e.axis.model.componentIndex===i.axisIndex)return i}}(u,t);if(!c&&n&&(!u||o)){var a=o&&o.value;null!=a||l||(a=i.pointToData(r)),null!=a&&iN(t,a,g,!1,p)}}))}));var y={};return E(h,(function(t,e){var n=t.linkGroup;n&&!d[e]&&E(n.axesInfo,(function(e,i){var r=d[i];if(e!==t&&r){var o=r.value;n.mapper&&(o=t.axis.scale.parse(n.mapper(o,aN(e),aN(t)))),y[t.key]=o}}))})),E(y,(function(t,e){iN(h[e],t,g,!0,p)})),function(t,e,n){var i=n.axesInfo=[];E(e,(function(e,n){var r=e.axisPointerModel.option,o=t[n];o?(!e.useHandle&&(r.status="show"),r.value=o.value,r.seriesDataIndices=(o.payloadBatch||[]).slice()):!e.useHandle&&(r.status="hide"),"show"===r.status&&i.push({axisDim:e.axis.dim,axisIndex:e.axis.model.componentIndex,value:r.value})}))}(d,h,p),function(t,e,n,i){if(sN(e)||!t.list.length)return void i({type:"hideTip"});var r=((t.list[0].dataByAxis[0]||{}).seriesDataIndices||[])[0]||{};i({type:"showTip",escapeConnect:!0,x:e[0],y:e[1],tooltipOption:n.tooltipOption,position:n.position,dataIndexInside:r.dataIndexInside,dataIndex:r.dataIndex,seriesIndex:r.seriesIndex,dataByCoordSys:t.list})}(f,r,t,a),function(t,e,n){var i=n.getZr(),r="axisPointerLastHighlights",o=eN(i)[r]||{},a=eN(i)[r]={};E(t,(function(t,e){var n=t.axisPointerModel.option;"show"===n.status&&E(n.seriesDataIndices,(function(t){var e=t.seriesIndex+" | "+t.dataIndex;a[e]=t}))}));var s=[],l=[];E(o,(function(t,e){!a[e]&&l.push(t)})),E(a,(function(t,e){!o[e]&&s.push(t)})),l.length&&n.dispatchAction({type:"downplay",escapeConnect:!0,notBlur:!0,batch:l}),s.length&&n.dispatchAction({type:"highlight",escapeConnect:!0,notBlur:!0,batch:s})}(h,0,n),p}}function iN(t,e,n,i,r){var o=t.axis;if(!o.scale.isBlank()&&o.containData(e))if(t.involveSeries){var a=function(t,e){var n=e.axis,i=n.dim,r=t,o=[],a=Number.MAX_VALUE,s=-1;return E(e.seriesModels,(function(e,l){var u,h,c=e.getData().mapDimensionsAll(i);if(e.getAxisTooltipData){var p=e.getAxisTooltipData(c,t,n);h=p.dataIndices,u=p.nestestValue}else{if(!(h=e.getData().indicesOfNearest(c[0],t,"category"===n.type?.5:null)).length)return;u=e.getData().get(c[0],h[0])}if(null!=u&&isFinite(u)){var d=t-u,f=Math.abs(d);f<=a&&((f<a||d>=0&&s<0)&&(a=f,s=d,r=u,o.length=0),E(h,(function(t){o.push({seriesIndex:e.seriesIndex,dataIndexInside:t,dataIndex:e.getData().getRawIndex(t)})})))}})),{payloadBatch:o,snapToValue:r}}(e,t),s=a.payloadBatch,l=a.snapToValue;s[0]&&null==r.seriesIndex&&A(r,s[0]),!i&&t.snap&&o.containData(l)&&null!=l&&(e=l),n.showPointer(t,e,s),n.showTooltip(t,a,l)}else n.showPointer(t,e)}function rN(t,e,n,i){t[e.key]={value:n,payloadBatch:i}}function oN(t,e,n,i){var r=n.payloadBatch,o=e.axis,a=o.model,s=e.axisPointerModel;if(e.triggerTooltip&&r.length){var l=e.coordSys.model,u=KM(l),h=t.map[u];h||(h=t.map[u]={coordSysId:l.id,coordSysIndex:l.componentIndex,coordSysType:l.type,coordSysMainType:l.mainType,dataByAxis:[]},t.list.push(h)),h.dataByAxis.push({axisDim:o.dim,axisIndex:a.componentIndex,axisType:a.type,axisId:a.id,value:i,valueLabelOpt:{precision:s.get(["label","precision"]),formatter:s.get(["label","formatter"])},seriesDataIndices:r.slice()})}}function aN(t){var e=t.axis.model,n={},i=n.axisDim=t.axis.dim;return n.axisIndex=n[i+"AxisIndex"]=e.componentIndex,n.axisName=n[i+"AxisName"]=e.name,n.axisId=n[i+"AxisId"]=e.id,n}function sN(t){return!t||null==t[0]||isNaN(t[0])||null==t[1]||isNaN(t[1])}function lN(t){JM.registerAxisPointerClass("CartesianAxisPointer",WR),t.registerComponentModel(XR),t.registerComponentView(QR),t.registerPreprocessor((function(t){if(t){(!t.axisPointer||0===t.axisPointer.length)&&(t.axisPointer={});var e=t.axisPointer.link;e&&!Y(e)&&(t.axisPointer.link=[e])}})),t.registerProcessor(t.PRIORITY.PROCESSOR.STATISTIC,(function(t,e){t.getComponent("axisPointer").coordSysAxesInfo=UM(t,e)})),t.registerAction({type:"updateAxisPointer",event:"updateAxisPointer",update:":updateAxisPointer"},nN)}var uN=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.makeElOption=function(t,e,n,i,r){var o=n.axis;"angle"===o.dim&&(this.animationThreshold=Math.PI/18);var a=o.polar,s=a.getOtherAxis(o).getExtent(),l=o.dataToCoord(e),u=i.get("type");if(u&&"none"!==u){var h=RR(i),c=hN[u](o,a,l,s);c.style=h,t.graphicKey=c.type,t.pointer=c}var p=function(t,e,n,i,r){var o=e.axis,a=o.dataToCoord(t),s=i.getAngleAxis().getExtent()[0];s=s/180*Math.PI;var l,u,h,c=i.getRadiusAxis().getExtent();if("radius"===o.dim){var p=[1,0,0,1,0,0];zi(p,p,s),Ei(p,p,[i.cx,i.cy]),l=Ih([a,-r],p);var d=e.getModel("axisLabel").get("rotate")||0,f=BM.innerTextLayout(s,d*Math.PI/180,-1);u=f.textAlign,h=f.textVerticalAlign}else{var g=c[1];l=i.coordToPoint([g+r,a]);var y=i.cx,v=i.cy;u=Math.abs(l[0]-y)/g<.3?"center":l[0]>y?"left":"right",h=Math.abs(l[1]-v)/g<.3?"middle":l[1]>v?"top":"bottom"}return{position:l,align:u,verticalAlign:h}}(e,n,0,a,i.get(["label","margin"]));NR(t,n,i,r,p)},e}(DR);var hN={line:function(t,e,n,i){return"angle"===t.dim?{type:"Line",shape:BR(e.coordToPoint([i[0],n]),e.coordToPoint([i[1],n]))}:{type:"Circle",shape:{cx:e.cx,cy:e.cy,r:n}}},shadow:function(t,e,n,i){var r=Math.max(1,t.getBandWidth()),o=Math.PI/180;return"angle"===t.dim?{type:"Sector",shape:GR(e.cx,e.cy,i[0],i[1],(-n-r/2)*o,(r/2-n)*o)}:{type:"Sector",shape:GR(e.cx,e.cy,n-r/2,n+r/2,0,2*Math.PI)}}},cN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.findAxisModel=function(t){var e;return this.ecModel.eachComponent(t,(function(t){t.getCoordSysModel()===this&&(e=t)}),this),e},e.type="polar",e.dependencies=["radiusAxis","angleAxis"],e.defaultOption={z:0,center:["50%","50%"],radius:"80%"},e}(Ip),pN=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.getCoordSysModel=function(){return this.getReferringComponents("polar",Co).models[0]},e.type="polarAxis",e}(Ip);R(pN,h_);var dN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="angleAxis",e}(pN),fN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="radiusAxis",e}(pN),gN=function(t){function e(e,n){return t.call(this,"radius",e,n)||this}return n(e,t),e.prototype.pointToData=function(t,e){return this.polar.pointToData(t,e)["radius"===this.dim?0:1]},e}(G_);gN.prototype.dataToRadius=G_.prototype.dataToCoord,gN.prototype.radiusToData=G_.prototype.coordToData;var yN=So(),vN=function(t){function e(e,n){return t.call(this,"angle",e,n||[0,360])||this}return n(e,t),e.prototype.pointToData=function(t,e){return this.polar.pointToData(t,e)["radius"===this.dim?0:1]},e.prototype.calculateCategoryInterval=function(){var t=this,e=t.getLabelModel(),n=t.scale,i=n.getExtent(),r=n.count();if(i[1]-i[0]<1)return 0;var o=i[0],a=t.dataToCoord(o+1)-t.dataToCoord(o),s=Math.abs(a),l=cr(null==o?"":o+"",e.getFont(),"center","top"),u=Math.max(l.height,7)/s;isNaN(u)&&(u=1/0);var h=Math.max(0,Math.floor(u)),c=yN(t.model),p=c.lastAutoInterval,d=c.lastTickCount;return null!=p&&null!=d&&Math.abs(p-h)<=1&&Math.abs(d-r)<=1&&p>h?h=p:(c.lastTickCount=r,c.lastAutoInterval=h),h},e}(G_);vN.prototype.dataToAngle=G_.prototype.dataToCoord,vN.prototype.angleToData=G_.prototype.coordToData;var mN=["radius","angle"],xN=function(){function t(t){this.dimensions=mN,this.type="polar",this.cx=0,this.cy=0,this._radiusAxis=new gN,this._angleAxis=new vN,this.axisPointerEnabled=!0,this.name=t||"",this._radiusAxis.polar=this._angleAxis.polar=this}return t.prototype.containPoint=function(t){var e=this.pointToCoord(t);return this._radiusAxis.contain(e[0])&&this._angleAxis.contain(e[1])},t.prototype.containData=function(t){return this._radiusAxis.containData(t[0])&&this._angleAxis.containData(t[1])},t.prototype.getAxis=function(t){return this["_"+t+"Axis"]},t.prototype.getAxes=function(){return[this._radiusAxis,this._angleAxis]},t.prototype.getAxesByScale=function(t){var e=[],n=this._angleAxis,i=this._radiusAxis;return n.scale.type===t&&e.push(n),i.scale.type===t&&e.push(i),e},t.prototype.getAngleAxis=function(){return this._angleAxis},t.prototype.getRadiusAxis=function(){return this._radiusAxis},t.prototype.getOtherAxis=function(t){var e=this._angleAxis;return t===e?this._radiusAxis:e},t.prototype.getBaseAxis=function(){return this.getAxesByScale("ordinal")[0]||this.getAxesByScale("time")[0]||this.getAngleAxis()},t.prototype.getTooltipAxes=function(t){var e=null!=t&&"auto"!==t?this.getAxis(t):this.getBaseAxis();return{baseAxes:[e],otherAxes:[this.getOtherAxis(e)]}},t.prototype.dataToPoint=function(t,e){return this.coordToPoint([this._radiusAxis.dataToRadius(t[0],e),this._angleAxis.dataToAngle(t[1],e)])},t.prototype.pointToData=function(t,e){var n=this.pointToCoord(t);return[this._radiusAxis.radiusToData(n[0],e),this._angleAxis.angleToData(n[1],e)]},t.prototype.pointToCoord=function(t){var e=t[0]-this.cx,n=t[1]-this.cy,i=this.getAngleAxis(),r=i.getExtent(),o=Math.min(r[0],r[1]),a=Math.max(r[0],r[1]);i.inverse?o=a-360:a=o+360;var s=Math.sqrt(e*e+n*n);e/=s,n/=s;for(var l=Math.atan2(-n,e)/Math.PI*180,u=l<o?1:-1;l<o||l>a;)l+=360*u;return[s,l]},t.prototype.coordToPoint=function(t){var e=t[0],n=t[1]/180*Math.PI;return[Math.cos(n)*e+this.cx,-Math.sin(n)*e+this.cy]},t.prototype.getArea=function(){var t=this.getAngleAxis(),e=this.getRadiusAxis().getExtent().slice();e[0]>e[1]&&e.reverse();var n=t.getExtent(),i=Math.PI/180;return{cx:this.cx,cy:this.cy,r0:e[0],r:e[1],startAngle:-n[0]*i,endAngle:-n[1]*i,clockwise:t.inverse,contain:function(t,e){var n=t-this.cx,i=e-this.cy,r=n*n+i*i-1e-4,o=this.r,a=this.r0;return r<=o*o&&r>=a*a}}},t.prototype.convertToPixel=function(t,e,n){return _N(e)===this?this.dataToPoint(n):null},t.prototype.convertFromPixel=function(t,e,n){return _N(e)===this?this.pointToData(n):null},t}();function _N(t){var e=t.seriesModel,n=t.polarModel;return n&&n.coordinateSystem||e&&e.coordinateSystem}function bN(t,e){var n=this,i=n.getAngleAxis(),r=n.getRadiusAxis();if(i.scale.setExtent(1/0,-1/0),r.scale.setExtent(1/0,-1/0),t.eachSeries((function(t){if(t.coordinateSystem===n){var e=t.getData();E(u_(e,"radius"),(function(t){r.scale.unionExtentFromData(e,t)})),E(u_(e,"angle"),(function(t){i.scale.unionExtentFromData(e,t)}))}})),n_(i.scale,i.model),n_(r.scale,r.model),"category"===i.type&&!i.onBand){var o=i.getExtent(),a=360/i.scale.count();i.inverse?o[1]+=a:o[1]-=a,i.setExtent(o[0],o[1])}}function wN(t,e){if(t.type=e.get("type"),t.scale=i_(e),t.onBand=e.get("boundaryGap")&&"category"===t.type,t.inverse=e.get("inverse"),function(t){return"angleAxis"===t.mainType}(e)){t.inverse=t.inverse!==e.get("clockwise");var n=e.get("startAngle");t.setExtent(n,n+(t.inverse?-360:360))}e.axis=t,t.model=e}var SN={dimensions:mN,create:function(t,e){var n=[];return t.eachComponent("polar",(function(t,i){var r=new xN(i+"");r.update=bN;var o=r.getRadiusAxis(),a=r.getAngleAxis(),s=t.findAxisModel("radiusAxis"),l=t.findAxisModel("angleAxis");wN(o,s),wN(a,l),function(t,e,n){var i=e.get("center"),r=n.getWidth(),o=n.getHeight();t.cx=Er(i[0],r),t.cy=Er(i[1],o);var a=t.getRadiusAxis(),s=Math.min(r,o)/2,l=e.get("radius");null==l?l=[0,"100%"]:Y(l)||(l=[0,l]);var u=[Er(l[0],s),Er(l[1],s)];a.inverse?a.setExtent(u[1],u[0]):a.setExtent(u[0],u[1])}(r,t,e),n.push(r),t.coordinateSystem=r,r.model=t})),t.eachSeries((function(t){if("polar"===t.get("coordinateSystem")){var e=t.getReferringComponents("polar",Co).models[0];0,t.coordinateSystem=e.coordinateSystem}})),n}},MN=["axisLine","axisLabel","axisTick","minorTick","splitLine","minorSplitLine","splitArea"];function IN(t,e,n){e[1]>e[0]&&(e=e.slice().reverse());var i=t.coordToPoint([e[0],n]),r=t.coordToPoint([e[1],n]);return{x1:i[0],y1:i[1],x2:r[0],y2:r[1]}}function TN(t){return t.getRadiusAxis().inverse?0:1}function CN(t){var e=t[0],n=t[t.length-1];e&&n&&Math.abs(Math.abs(e.coord-n.coord)-360)<1e-4&&t.pop()}var DN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.axisPointerClass="PolarAxisPointer",n}return n(e,t),e.prototype.render=function(t,e){if(this.group.removeAll(),t.get("show")){var n=t.axis,i=n.polar,r=i.getRadiusAxis().getExtent(),o=n.getTicksCoords(),a=n.getMinorTicksCoords(),s=z(n.getViewLabels(),(function(t){t=T(t);var e=n.scale,i="ordinal"===e.type?e.getRawOrdinalNumber(t.tickValue):t.tickValue;return t.coord=n.dataToCoord(i),t}));CN(s),CN(o),E(MN,(function(e){!t.get([e,"show"])||n.scale.isBlank()&&"axisLine"!==e||AN[e](this.group,t,i,o,a,r,s)}),this)}},e.type="angleAxis",e}(JM),AN={axisLine:function(t,e,n,i,r,o){var a,s=e.getModel(["axisLine","lineStyle"]),l=TN(n),u=l?0:1;(a=0===o[u]?new uu({shape:{cx:n.cx,cy:n.cy,r:o[l]},style:s.getLineStyle(),z2:1,silent:!0}):new Du({shape:{cx:n.cx,cy:n.cy,r:o[l],r0:o[u]},style:s.getLineStyle(),z2:1,silent:!0})).style.fill=null,t.add(a)},axisTick:function(t,e,n,i,r,o){var a=e.getModel("axisTick"),s=(a.get("inside")?-1:1)*a.get("length"),l=o[TN(n)],u=z(i,(function(t){return new Eu({shape:IN(n,[l,l+s],t.coord)})}));t.add(bh(u,{style:k(a.getModel("lineStyle").getLineStyle(),{stroke:e.get(["axisLine","lineStyle","color"])})}))},minorTick:function(t,e,n,i,r,o){if(r.length){for(var a=e.getModel("axisTick"),s=e.getModel("minorTick"),l=(a.get("inside")?-1:1)*s.get("length"),u=o[TN(n)],h=[],c=0;c<r.length;c++)for(var p=0;p<r[c].length;p++)h.push(new Eu({shape:IN(n,[u,u+l],r[c][p].coord)}));t.add(bh(h,{style:k(s.getModel("lineStyle").getLineStyle(),k(a.getLineStyle(),{stroke:e.get(["axisLine","lineStyle","color"])}))}))}},axisLabel:function(t,e,n,i,r,o,a){var s=e.getCategories(!0),l=e.getModel("axisLabel"),u=l.get("margin"),h=e.get("triggerEvent");E(a,(function(i,r){var a=l,c=i.tickValue,p=o[TN(n)],d=n.coordToPoint([p+u,i.coord]),f=n.cx,g=n.cy,y=Math.abs(d[0]-f)/p<.3?"center":d[0]>f?"left":"right",v=Math.abs(d[1]-g)/p<.3?"middle":d[1]>g?"top":"bottom";if(s&&s[c]){var m=s[c];q(m)&&m.textStyle&&(a=new pc(m.textStyle,l,l.ecModel))}var x=new As({silent:BM.isLabelSilent(e),style:Yh(a,{x:d[0],y:d[1],fill:a.getTextColor()||e.get(["axisLine","lineStyle","color"]),text:i.formattedLabel,align:y,verticalAlign:v})});if(t.add(x),h){var _=BM.makeAxisEventDataBase(e);_.targetType="axisLabel",_.value=i.rawLabel,Ws(x).eventData=_}}),this)},splitLine:function(t,e,n,i,r,o){var a=e.getModel("splitLine").getModel("lineStyle"),s=a.get("color"),l=0;s=s instanceof Array?s:[s];for(var u=[],h=0;h<i.length;h++){var c=l++%s.length;u[c]=u[c]||[],u[c].push(new Eu({shape:IN(n,o,i[h].coord)}))}for(h=0;h<u.length;h++)t.add(bh(u[h],{style:k({stroke:s[h%s.length]},a.getLineStyle()),silent:!0,z:e.get("z")}))},minorSplitLine:function(t,e,n,i,r,o){if(r.length){for(var a=e.getModel("minorSplitLine").getModel("lineStyle"),s=[],l=0;l<r.length;l++)for(var u=0;u<r[l].length;u++)s.push(new Eu({shape:IN(n,o,r[l][u].coord)}));t.add(bh(s,{style:a.getLineStyle(),silent:!0,z:e.get("z")}))}},splitArea:function(t,e,n,i,r,o){if(i.length){var a=e.getModel("splitArea").getModel("areaStyle"),s=a.get("color"),l=0;s=s instanceof Array?s:[s];for(var u=[],h=Math.PI/180,c=-i[0].coord*h,p=Math.min(o[0],o[1]),d=Math.max(o[0],o[1]),f=e.get("clockwise"),g=1,y=i.length;g<=y;g++){var v=g===y?i[0].coord:i[g].coord,m=l++%s.length;u[m]=u[m]||[],u[m].push(new Tu({shape:{cx:n.cx,cy:n.cy,r0:p,r:d,startAngle:c,endAngle:-v*h,clockwise:f},silent:!0})),c=-v*h}for(g=0;g<u.length;g++)t.add(bh(u[g],{style:k({fill:s[g%s.length]},a.getAreaStyle()),silent:!0}))}}},kN=["axisLine","axisTickLabel","axisName"],LN=["splitLine","splitArea","minorSplitLine"],PN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.axisPointerClass="PolarAxisPointer",n}return n(e,t),e.prototype.render=function(t,e){if(this.group.removeAll(),t.get("show")){var n=this._axisGroup,i=this._axisGroup=new Cr;this.group.add(i);var r=t.axis,o=r.polar,a=o.getAngleAxis(),s=r.getTicksCoords(),l=r.getMinorTicksCoords(),u=a.getExtent()[0],h=r.getExtent(),c=function(t,e,n){return{position:[t.cx,t.cy],rotation:n/180*Math.PI,labelDirection:-1,tickDirection:-1,nameDirection:1,labelRotate:e.getModel("axisLabel").get("rotate"),z2:1}}(o,t,u),p=new BM(t,c);E(kN,p.add,p),i.add(p.getGroup()),Dh(n,i,t),E(LN,(function(e){t.get([e,"show"])&&!r.scale.isBlank()&&ON[e](this.group,t,o,u,h,s,l)}),this)}},e.type="radiusAxis",e}(JM),ON={splitLine:function(t,e,n,i,r,o){var a=e.getModel("splitLine").getModel("lineStyle"),s=a.get("color"),l=0;s=s instanceof Array?s:[s];for(var u=[],h=0;h<o.length;h++){var c=l++%s.length;u[c]=u[c]||[],u[c].push(new uu({shape:{cx:n.cx,cy:n.cy,r:o[h].coord}}))}for(h=0;h<u.length;h++)t.add(bh(u[h],{style:k({stroke:s[h%s.length],fill:null},a.getLineStyle()),silent:!0}))},minorSplitLine:function(t,e,n,i,r,o,a){if(a.length){for(var s=e.getModel("minorSplitLine").getModel("lineStyle"),l=[],u=0;u<a.length;u++)for(var h=0;h<a[u].length;h++)l.push(new uu({shape:{cx:n.cx,cy:n.cy,r:a[u][h].coord}}));t.add(bh(l,{style:k({fill:null},s.getLineStyle()),silent:!0}))}},splitArea:function(t,e,n,i,r,o){if(o.length){var a=e.getModel("splitArea").getModel("areaStyle"),s=a.get("color"),l=0;s=s instanceof Array?s:[s];for(var u=[],h=o[0].coord,c=1;c<o.length;c++){var p=l++%s.length;u[p]=u[p]||[],u[p].push(new Tu({shape:{cx:n.cx,cy:n.cy,r0:h,r:o[c].coord,startAngle:0,endAngle:2*Math.PI},silent:!0})),h=o[c].coord}for(c=0;c<u.length;c++)t.add(bh(u[c],{style:k({fill:s[c%s.length]},a.getAreaStyle()),silent:!0}))}}};function RN(t){return t.get("stack")||"__ec_stack_"+t.seriesIndex}function NN(t,e){return e.dim+t.model.componentIndex}function EN(t,e,n){var i={},r=function(t){var e={};E(t,(function(t,n){var i=t.getData(),r=t.coordinateSystem,o=r.getBaseAxis(),a=NN(r,o),s=o.getExtent(),l="category"===o.type?o.getBandWidth():Math.abs(s[1]-s[0])/i.count(),u=e[a]||{bandWidth:l,remainedWidth:l,autoWidthCount:0,categoryGap:"20%",gap:"30%",stacks:{}},h=u.stacks;e[a]=u;var c=RN(t);h[c]||u.autoWidthCount++,h[c]=h[c]||{width:0,maxWidth:0};var p=Er(t.get("barWidth"),l),d=Er(t.get("barMaxWidth"),l),f=t.get("barGap"),g=t.get("barCategoryGap");p&&!h[c].width&&(p=Math.min(u.remainedWidth,p),h[c].width=p,u.remainedWidth-=p),d&&(h[c].maxWidth=d),null!=f&&(u.gap=f),null!=g&&(u.categoryGap=g)}));var n={};return E(e,(function(t,e){n[e]={};var i=t.stacks,r=t.bandWidth,o=Er(t.categoryGap,r),a=Er(t.gap,1),s=t.remainedWidth,l=t.autoWidthCount,u=(s-o)/(l+(l-1)*a);u=Math.max(u,0),E(i,(function(t,e){var n=t.maxWidth;n&&n<u&&(n=Math.min(n,s),t.width&&(n=Math.min(n,t.width)),s-=n,t.width=n,l--)})),u=(s-o)/(l+(l-1)*a),u=Math.max(u,0);var h,c=0;E(i,(function(t,e){t.width||(t.width=u),h=t,c+=t.width*(1+a)})),h&&(c-=h.width*a);var p=-c/2;E(i,(function(t,i){n[e][i]=n[e][i]||{offset:p,width:t.width},p+=t.width*(1+a)}))})),n}(B(e.getSeriesByType(t),(function(t){return!e.isSeriesFiltered(t)&&t.coordinateSystem&&"polar"===t.coordinateSystem.type})));e.eachSeriesByType(t,(function(t){if("polar"===t.coordinateSystem.type){var e=t.getData(),n=t.coordinateSystem,o=n.getBaseAxis(),a=NN(n,o),s=RN(t),l=r[a][s],u=l.offset,h=l.width,c=n.getOtherAxis(o),p=t.coordinateSystem.cx,d=t.coordinateSystem.cy,f=t.get("barMinHeight")||0,g=t.get("barMinAngle")||0;i[s]=i[s]||[];for(var y=e.mapDimension(c.dim),v=e.mapDimension(o.dim),m=tx(e,y),x="radius"!==o.dim||!t.get("roundCap",!0),_=c.dataToCoord(0),b=0,w=e.count();b<w;b++){var S=e.get(y,b),M=e.get(v,b),I=S>=0?"p":"n",T=_;m&&(i[s][M]||(i[s][M]={p:_,n:_}),T=i[s][M][I]);var C=void 0,D=void 0,A=void 0,k=void 0;if("radius"===c.dim){var L=c.dataToCoord(S)-_,P=o.dataToCoord(M);Math.abs(L)<f&&(L=(L<0?-1:1)*f),C=T,D=T+L,k=(A=P-u)-h,m&&(i[s][M][I]=D)}else{var O=c.dataToCoord(S,x)-_,R=o.dataToCoord(M);Math.abs(O)<g&&(O=(O<0?-1:1)*g),D=(C=R+u)+h,A=T,k=T+O,m&&(i[s][M][I]=k)}e.setItemLayout(b,{cx:p,cy:d,r0:C,r:D,startAngle:-A*Math.PI/180,endAngle:-k*Math.PI/180,clockwise:A>=k})}}}))}var zN={startAngle:90,clockwise:!0,splitNumber:12,axisLabel:{rotate:0}},VN={splitNumber:5},BN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="polar",e}(fg);function FN(t,e){e=e||{};var n=t.coordinateSystem,i=t.axis,r={},o=i.position,a=i.orient,s=n.getRect(),l=[s.x,s.x+s.width,s.y,s.y+s.height],u={horizontal:{top:l[2],bottom:l[3]},vertical:{left:l[0],right:l[1]}};r.position=["vertical"===a?u.vertical[o]:l[0],"horizontal"===a?u.horizontal[o]:l[3]];r.rotation=Math.PI/2*{horizontal:0,vertical:1}[a];r.labelDirection=r.tickDirection=r.nameDirection={top:-1,bottom:1,right:1,left:-1}[o],t.get(["axisTick","inside"])&&(r.tickDirection=-r.tickDirection),it(e.labelInside,t.get(["axisLabel","inside"]))&&(r.labelDirection=-r.labelDirection);var h=e.rotate;return null==h&&(h=t.get(["axisLabel","rotate"])),r.labelRotation="top"===o?-h:h,r.z2=1,r}var GN=["axisLine","axisTickLabel","axisName"],WN=["splitArea","splitLine"],HN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.axisPointerClass="SingleAxisPointer",n}return n(e,t),e.prototype.render=function(e,n,i,r){var o=this.group;o.removeAll();var a=this._axisGroup;this._axisGroup=new Cr;var s=FN(e),l=new BM(e,s);E(GN,l.add,l),o.add(this._axisGroup),o.add(l.getGroup()),E(WN,(function(t){e.get([t,"show"])&&YN[t](this,this.group,this._axisGroup,e)}),this),Dh(a,this._axisGroup,e),t.prototype.render.call(this,e,n,i,r)},e.prototype.remove=function(){eI(this)},e.type="singleAxis",e}(JM),YN={splitLine:function(t,e,n,i){var r=i.axis;if(!r.scale.isBlank()){var o=i.getModel("splitLine"),a=o.getModel("lineStyle"),s=a.get("color");s=s instanceof Array?s:[s];for(var l=i.coordinateSystem.getRect(),u=r.isHorizontal(),h=[],c=0,p=r.getTicksCoords({tickModel:o}),d=[],f=[],g=0;g<p.length;++g){var y=r.toGlobalCoord(p[g].coord);u?(d[0]=y,d[1]=l.y,f[0]=y,f[1]=l.y+l.height):(d[0]=l.x,d[1]=y,f[0]=l.x+l.width,f[1]=y);var v=c++%s.length;h[v]=h[v]||[],h[v].push(new Eu({subPixelOptimize:!0,shape:{x1:d[0],y1:d[1],x2:f[0],y2:f[1]},silent:!0}))}var m=a.getLineStyle(["color"]);for(g=0;g<h.length;++g)e.add(bh(h[g],{style:k({stroke:s[g%s.length]},m),silent:!0}))}},splitArea:function(t,e,n,i){tI(t,n,i,i)}},UN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.getCoordSysModel=function(){return this},e.type="singleAxis",e.layoutMode="box",e.defaultOption={left:"5%",top:"5%",right:"5%",bottom:"5%",type:"value",position:"bottom",orient:"horizontal",axisLine:{show:!0,lineStyle:{width:1,type:"solid"}},tooltip:{show:!0},axisTick:{show:!0,length:6,lineStyle:{width:1}},axisLabel:{show:!0,interval:"auto"},splitLine:{show:!0,lineStyle:{type:"dashed",opacity:.2}}},e}(Ip);R(UN,h_.prototype);var XN=function(t){function e(e,n,i,r,o){var a=t.call(this,e,n,i)||this;return a.type=r||"value",a.position=o||"bottom",a}return n(e,t),e.prototype.isHorizontal=function(){var t=this.position;return"top"===t||"bottom"===t},e.prototype.pointToData=function(t,e){return this.coordinateSystem.pointToData(t)[0]},e}(G_),ZN=["single"],jN=function(){function t(t,e,n){this.type="single",this.dimension="single",this.dimensions=ZN,this.axisPointerEnabled=!0,this.model=t,this._init(t,e,n)}return t.prototype._init=function(t,e,n){var i=this.dimension,r=new XN(i,i_(t),[0,0],t.get("type"),t.get("position")),o="category"===r.type;r.onBand=o&&t.get("boundaryGap"),r.inverse=t.get("inverse"),r.orient=t.get("orient"),t.axis=r,r.model=t,r.coordinateSystem=this,this._axis=r},t.prototype.update=function(t,e){t.eachSeries((function(t){if(t.coordinateSystem===this){var e=t.getData();E(e.mapDimensionsAll(this.dimension),(function(t){this._axis.scale.unionExtentFromData(e,t)}),this),n_(this._axis.scale,this._axis.model)}}),this)},t.prototype.resize=function(t,e){this._rect=mp({left:t.get("left"),top:t.get("top"),right:t.get("right"),bottom:t.get("bottom"),width:t.get("width"),height:t.get("height")},{width:e.getWidth(),height:e.getHeight()}),this._adjustAxis()},t.prototype.getRect=function(){return this._rect},t.prototype._adjustAxis=function(){var t=this._rect,e=this._axis,n=e.isHorizontal(),i=n?[0,t.width]:[0,t.height],r=e.reverse?1:0;e.setExtent(i[r],i[1-r]),this._updateAxisTransform(e,n?t.x:t.y)},t.prototype._updateAxisTransform=function(t,e){var n=t.getExtent(),i=n[0]+n[1],r=t.isHorizontal();t.toGlobalCoord=r?function(t){return t+e}:function(t){return i-t+e},t.toLocalCoord=r?function(t){return t-e}:function(t){return i-t+e}},t.prototype.getAxis=function(){return this._axis},t.prototype.getBaseAxis=function(){return this._axis},t.prototype.getAxes=function(){return[this._axis]},t.prototype.getTooltipAxes=function(){return{baseAxes:[this.getAxis()],otherAxes:[]}},t.prototype.containPoint=function(t){var e=this.getRect(),n=this.getAxis();return"horizontal"===n.orient?n.contain(n.toLocalCoord(t[0]))&&t[1]>=e.y&&t[1]<=e.y+e.height:n.contain(n.toLocalCoord(t[1]))&&t[0]>=e.y&&t[0]<=e.y+e.height},t.prototype.pointToData=function(t){var e=this.getAxis();return[e.coordToData(e.toLocalCoord(t["horizontal"===e.orient?0:1]))]},t.prototype.dataToPoint=function(t){var e=this.getAxis(),n=this.getRect(),i=[],r="horizontal"===e.orient?0:1;return t instanceof Array&&(t=t[0]),i[r]=e.toGlobalCoord(e.dataToCoord(+t)),i[1-r]=0===r?n.y+n.height/2:n.x+n.width/2,i},t.prototype.convertToPixel=function(t,e,n){return qN(e)===this?this.dataToPoint(n):null},t.prototype.convertFromPixel=function(t,e,n){return qN(e)===this?this.pointToData(n):null},t}();function qN(t){var e=t.seriesModel,n=t.singleAxisModel;return n&&n.coordinateSystem||e&&e.coordinateSystem}var KN={create:function(t,e){var n=[];return t.eachComponent("singleAxis",(function(i,r){var o=new jN(i,t,e);o.name="single_"+r,o.resize(i,e),i.coordinateSystem=o,n.push(o)})),t.eachSeries((function(t){if("singleAxis"===t.get("coordinateSystem")){var e=t.getReferringComponents("singleAxis",Co).models[0];t.coordinateSystem=e&&e.coordinateSystem}})),n},dimensions:ZN},$N=["x","y"],JN=["width","height"],QN=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.makeElOption=function(t,e,n,i,r){var o=n.axis,a=o.coordinateSystem,s=nE(a,1-eE(o)),l=a.dataToPoint(e)[0],u=i.get("type");if(u&&"none"!==u){var h=RR(i),c=tE[u](o,l,s);c.style=h,t.graphicKey=c.type,t.pointer=c}VR(e,t,FN(n),n,i,r)},e.prototype.getHandleTransform=function(t,e,n){var i=FN(e,{labelInside:!1});i.labelMargin=n.get(["handle","margin"]);var r=zR(e.axis,t,i);return{x:r[0],y:r[1],rotation:i.rotation+(i.labelDirection<0?Math.PI:0)}},e.prototype.updateHandleTransform=function(t,e,n,i){var r=n.axis,o=r.coordinateSystem,a=eE(r),s=nE(o,a),l=[t.x,t.y];l[a]+=e[a],l[a]=Math.min(s[1],l[a]),l[a]=Math.max(s[0],l[a]);var u=nE(o,1-a),h=(u[1]+u[0])/2,c=[h,h];return c[a]=l[a],{x:l[0],y:l[1],rotation:t.rotation,cursorPoint:c,tooltipOption:{verticalAlign:"middle"}}},e}(DR),tE={line:function(t,e,n){return{type:"Line",subPixelOptimize:!0,shape:BR([e,n[0]],[e,n[1]],eE(t))}},shadow:function(t,e,n){var i=t.getBandWidth(),r=n[1]-n[0];return{type:"Rect",shape:FR([e-i/2,n[0]],[i,r],eE(t))}}};function eE(t){return t.isHorizontal()?0:1}function nE(t,e){var n=t.getRect();return[n[$N[e]],n[$N[e]]+n[JN[e]]]}var iE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="single",e}(fg);var rE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(e,n,i){var r=wp(e);t.prototype.init.apply(this,arguments),oE(e,r)},e.prototype.mergeOption=function(e){t.prototype.mergeOption.apply(this,arguments),oE(this.option,e)},e.prototype.getCellSize=function(){return this.option.cellSize},e.type="calendar",e.defaultOption={z:2,left:80,top:60,cellSize:20,orient:"horizontal",splitLine:{show:!0,lineStyle:{color:"#000",width:1,type:"solid"}},itemStyle:{color:"#fff",borderWidth:1,borderColor:"#ccc"},dayLabel:{show:!0,firstDay:0,position:"start",margin:"50%",color:"#000"},monthLabel:{show:!0,position:"start",margin:5,align:"center",formatter:null,color:"#000"},yearLabel:{show:!0,position:null,margin:30,formatter:null,color:"#ccc",fontFamily:"sans-serif",fontWeight:"bolder",fontSize:20}},e}(Ip);function oE(t,e){var n,i=t.cellSize;1===(n=Y(i)?i:t.cellSize=[i,i]).length&&(n[1]=n[0]);var r=z([0,1],(function(t){return function(t,e){return null!=t[gp[e][0]]||null!=t[gp[e][1]]&&null!=t[gp[e][2]]}(e,t)&&(n[t]="auto"),null!=n[t]&&"auto"!==n[t]}));bp(t,e,{type:"box",ignoreSize:r})}var aE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i=this.group;i.removeAll();var r=t.coordinateSystem,o=r.getRangeInfo(),a=r.getOrient(),s=e.getLocaleModel();this._renderDayRect(t,o,i),this._renderLines(t,o,a,i),this._renderYearText(t,o,a,i),this._renderMonthText(t,s,a,i),this._renderWeekText(t,s,o,a,i)},e.prototype._renderDayRect=function(t,e,n){for(var i=t.coordinateSystem,r=t.getModel("itemStyle").getItemStyle(),o=i.getCellWidth(),a=i.getCellHeight(),s=e.start.time;s<=e.end.time;s=i.getNextNDay(s,1).time){var l=i.dataToRect([s],!1).tl,u=new Ts({shape:{x:l[0],y:l[1],width:o,height:a},cursor:"default",style:r});n.add(u)}},e.prototype._renderLines=function(t,e,n,i){var r=this,o=t.coordinateSystem,a=t.getModel(["splitLine","lineStyle"]).getLineStyle(),s=t.get(["splitLine","show"]),l=a.lineWidth;this._tlpoints=[],this._blpoints=[],this._firstDayOfMonth=[],this._firstDayPoints=[];for(var u=e.start,h=0;u.time<=e.end.time;h++){p(u.formatedDate),0===h&&(u=o.getDateInfo(e.start.y+"-"+e.start.m));var c=u.date;c.setMonth(c.getMonth()+1),u=o.getDateInfo(c)}function p(e){r._firstDayOfMonth.push(o.getDateInfo(e)),r._firstDayPoints.push(o.dataToRect([e],!1).tl);var l=r._getLinePointsOfOneWeek(t,e,n);r._tlpoints.push(l[0]),r._blpoints.push(l[l.length-1]),s&&r._drawSplitline(l,a,i)}p(o.getNextNDay(e.end.time,1).formatedDate),s&&this._drawSplitline(r._getEdgesPoints(r._tlpoints,l,n),a,i),s&&this._drawSplitline(r._getEdgesPoints(r._blpoints,l,n),a,i)},e.prototype._getEdgesPoints=function(t,e,n){var i=[t[0].slice(),t[t.length-1].slice()],r="horizontal"===n?0:1;return i[0][r]=i[0][r]-e/2,i[1][r]=i[1][r]+e/2,i},e.prototype._drawSplitline=function(t,e,n){var i=new Ou({z2:20,shape:{points:t},style:e});n.add(i)},e.prototype._getLinePointsOfOneWeek=function(t,e,n){for(var i=t.coordinateSystem,r=i.getDateInfo(e),o=[],a=0;a<7;a++){var s=i.getNextNDay(r.time,a),l=i.dataToRect([s.time],!1);o[2*s.day]=l.tl,o[2*s.day+1]=l["horizontal"===n?"bl":"tr"]}return o},e.prototype._formatterLabel=function(t,e){return X(t)&&t?(n=t,E(e,(function(t,e){n=n.replace("{"+e+"}",i?op(t):t)})),n):U(t)?t(e):e.nameMap;var n,i},e.prototype._yearTextPositionControl=function(t,e,n,i,r){var o=e[0],a=e[1],s=["center","bottom"];"bottom"===i?(a+=r,s=["center","top"]):"left"===i?o-=r:"right"===i?(o+=r,s=["center","top"]):a-=r;var l=0;return"left"!==i&&"right"!==i||(l=Math.PI/2),{rotation:l,x:o,y:a,style:{align:s[0],verticalAlign:s[1]}}},e.prototype._renderYearText=function(t,e,n,i){var r=t.getModel("yearLabel");if(r.get("show")){var o=r.get("margin"),a=r.get("position");a||(a="horizontal"!==n?"top":"left");var s=[this._tlpoints[this._tlpoints.length-1],this._blpoints[0]],l=(s[0][0]+s[1][0])/2,u=(s[0][1]+s[1][1])/2,h="horizontal"===n?0:1,c={top:[l,s[h][1]],bottom:[l,s[1-h][1]],left:[s[1-h][0],u],right:[s[h][0],u]},p=e.start.y;+e.end.y>+e.start.y&&(p=p+"-"+e.end.y);var d=r.get("formatter"),f={start:e.start.y,end:e.end.y,nameMap:p},g=this._formatterLabel(d,f),y=new As({z2:30,style:Yh(r,{text:g})});y.attr(this._yearTextPositionControl(y,c[a],n,a,o)),i.add(y)}},e.prototype._monthTextPositionControl=function(t,e,n,i,r){var o="left",a="top",s=t[0],l=t[1];return"horizontal"===n?(l+=r,e&&(o="center"),"start"===i&&(a="bottom")):(s+=r,e&&(a="middle"),"start"===i&&(o="right")),{x:s,y:l,align:o,verticalAlign:a}},e.prototype._renderMonthText=function(t,e,n,i){var r=t.getModel("monthLabel");if(r.get("show")){var o=r.get("nameMap"),a=r.get("margin"),s=r.get("position"),l=r.get("align"),u=[this._tlpoints,this._blpoints];o&&!X(o)||(o&&(e=Sc(o)||e),o=e.get(["time","monthAbbr"])||[]);var h="start"===s?0:1,c="horizontal"===n?0:1;a="start"===s?-a:a;for(var p="center"===l,d=0;d<u[h].length-1;d++){var f=u[h][d].slice(),g=this._firstDayOfMonth[d];if(p){var y=this._firstDayPoints[d];f[c]=(y[c]+u[0][d+1][c])/2}var v=r.get("formatter"),m=o[+g.m-1],x={yyyy:g.y,yy:(g.y+"").slice(2),MM:g.m,M:+g.m,nameMap:m},_=this._formatterLabel(v,x),b=new As({z2:30,style:A(Yh(r,{text:_}),this._monthTextPositionControl(f,p,n,s,a))});i.add(b)}}},e.prototype._weekTextPositionControl=function(t,e,n,i,r){var o="center",a="middle",s=t[0],l=t[1],u="start"===n;return"horizontal"===e?(s=s+i+(u?1:-1)*r[0]/2,o=u?"right":"left"):(l=l+i+(u?1:-1)*r[1]/2,a=u?"bottom":"top"),{x:s,y:l,align:o,verticalAlign:a}},e.prototype._renderWeekText=function(t,e,n,i,r){var o=t.getModel("dayLabel");if(o.get("show")){var a=t.coordinateSystem,s=o.get("position"),l=o.get("nameMap"),u=o.get("margin"),h=a.getFirstDayOfWeek();if(!l||X(l))l&&(e=Sc(l)||e),l=e.get(["time","dayOfWeekShort"])||z(e.get(["time","dayOfWeekAbbr"]),(function(t){return t[0]}));var c=a.getNextNDay(n.end.time,7-n.lweek).time,p=[a.getCellWidth(),a.getCellHeight()];u=Er(u,Math.min(p[1],p[0])),"start"===s&&(c=a.getNextNDay(n.start.time,-(7+n.fweek)).time,u=-u);for(var d=0;d<7;d++){var f,g=a.getNextNDay(c,d),y=a.dataToRect([g.time],!1).center;f=Math.abs((d+h)%7);var v=new As({z2:30,style:A(Yh(o,{text:l[f]}),this._weekTextPositionControl(y,i,s,u,p))});r.add(v)}}},e.type="calendar",e}(fg),sE=864e5,lE=function(){function t(e,n,i){this.type="calendar",this.dimensions=t.dimensions,this.getDimensionsInfo=t.getDimensionsInfo,this._model=e}return t.getDimensionsInfo=function(){return[{name:"time",type:"time"},"value"]},t.prototype.getRangeInfo=function(){return this._rangeInfo},t.prototype.getModel=function(){return this._model},t.prototype.getRect=function(){return this._rect},t.prototype.getCellWidth=function(){return this._sw},t.prototype.getCellHeight=function(){return this._sh},t.prototype.getOrient=function(){return this._orient},t.prototype.getFirstDayOfWeek=function(){return this._firstDayOfWeek},t.prototype.getDateInfo=function(t){var e=(t=jr(t)).getFullYear(),n=t.getMonth()+1,i=n<10?"0"+n:""+n,r=t.getDate(),o=r<10?"0"+r:""+r,a=t.getDay();return{y:e+"",m:i,d:o,day:a=Math.abs((a+7-this.getFirstDayOfWeek())%7),time:t.getTime(),formatedDate:e+"-"+i+"-"+o,date:t}},t.prototype.getNextNDay=function(t,e){return 0===(e=e||0)||(t=new Date(this.getDateInfo(t).time)).setDate(t.getDate()+e),this.getDateInfo(t)},t.prototype.update=function(t,e){this._firstDayOfWeek=+this._model.getModel("dayLabel").get("firstDay"),this._orient=this._model.get("orient"),this._lineWidth=this._model.getModel("itemStyle").getItemStyle().lineWidth||0,this._rangeInfo=this._getRangeInfo(this._initRangeOption());var n=this._rangeInfo.weeks||1,i=["width","height"],r=this._model.getCellSize().slice(),o=this._model.getBoxLayoutParams(),a="horizontal"===this._orient?[n,7]:[7,n];E([0,1],(function(t){u(r,t)&&(o[i[t]]=r[t]*a[t])}));var s={width:e.getWidth(),height:e.getHeight()},l=this._rect=mp(o,s);function u(t,e){return null!=t[e]&&"auto"!==t[e]}E([0,1],(function(t){u(r,t)||(r[t]=l[i[t]]/a[t])})),this._sw=r[0],this._sh=r[1]},t.prototype.dataToPoint=function(t,e){Y(t)&&(t=t[0]),null==e&&(e=!0);var n=this.getDateInfo(t),i=this._rangeInfo,r=n.formatedDate;if(e&&!(n.time>=i.start.time&&n.time<i.end.time+sE))return[NaN,NaN];var o=n.day,a=this._getRangeInfo([i.start.time,r]).nthWeek;return"vertical"===this._orient?[this._rect.x+o*this._sw+this._sw/2,this._rect.y+a*this._sh+this._sh/2]:[this._rect.x+a*this._sw+this._sw/2,this._rect.y+o*this._sh+this._sh/2]},t.prototype.pointToData=function(t){var e=this.pointToDate(t);return e&&e.time},t.prototype.dataToRect=function(t,e){var n=this.dataToPoint(t,e);return{contentShape:{x:n[0]-(this._sw-this._lineWidth)/2,y:n[1]-(this._sh-this._lineWidth)/2,width:this._sw-this._lineWidth,height:this._sh-this._lineWidth},center:n,tl:[n[0]-this._sw/2,n[1]-this._sh/2],tr:[n[0]+this._sw/2,n[1]-this._sh/2],br:[n[0]+this._sw/2,n[1]+this._sh/2],bl:[n[0]-this._sw/2,n[1]+this._sh/2]}},t.prototype.pointToDate=function(t){var e=Math.floor((t[0]-this._rect.x)/this._sw)+1,n=Math.floor((t[1]-this._rect.y)/this._sh)+1,i=this._rangeInfo.range;return"vertical"===this._orient?this._getDateByWeeksAndDay(n,e-1,i):this._getDateByWeeksAndDay(e,n-1,i)},t.prototype.convertToPixel=function(t,e,n){var i=uE(e);return i===this?i.dataToPoint(n):null},t.prototype.convertFromPixel=function(t,e,n){var i=uE(e);return i===this?i.pointToData(n):null},t.prototype.containPoint=function(t){return console.warn("Not implemented."),!1},t.prototype._initRangeOption=function(){var t,e=this._model.get("range");if(Y(e)&&1===e.length&&(e=e[0]),Y(e))t=e;else{var n=e.toString();if(/^\d{4}$/.test(n)&&(t=[n+"-01-01",n+"-12-31"]),/^\d{4}[\/|-]\d{1,2}$/.test(n)){var i=this.getDateInfo(n),r=i.date;r.setMonth(r.getMonth()+1);var o=this.getNextNDay(r,-1);t=[i.formatedDate,o.formatedDate]}/^\d{4}[\/|-]\d{1,2}[\/|-]\d{1,2}$/.test(n)&&(t=[n,n])}if(!t)return e;var a=this._getRangeInfo(t);return a.start.time>a.end.time&&t.reverse(),t},t.prototype._getRangeInfo=function(t){var e,n=[this.getDateInfo(t[0]),this.getDateInfo(t[1])];n[0].time>n[1].time&&(e=!0,n.reverse());var i=Math.floor(n[1].time/sE)-Math.floor(n[0].time/sE)+1,r=new Date(n[0].time),o=r.getDate(),a=n[1].date.getDate();r.setDate(o+i-1);var s=r.getDate();if(s!==a)for(var l=r.getTime()-n[1].time>0?1:-1;(s=r.getDate())!==a&&(r.getTime()-n[1].time)*l>0;)i-=l,r.setDate(s-l);var u=Math.floor((i+n[0].day+6)/7),h=e?1-u:u-1;return e&&n.reverse(),{range:[n[0].formatedDate,n[1].formatedDate],start:n[0],end:n[1],allDay:i,weeks:u,nthWeek:h,fweek:n[0].day,lweek:n[1].day}},t.prototype._getDateByWeeksAndDay=function(t,e,n){var i=this._getRangeInfo(n);if(t>i.weeks||0===t&&e<i.fweek||t===i.weeks&&e>i.lweek)return null;var r=7*(t-1)-i.fweek+e,o=new Date(i.start.time);return o.setDate(+i.start.d+r),this.getDateInfo(o)},t.create=function(e,n){var i=[];return e.eachComponent("calendar",(function(r){var o=new t(r,e,n);i.push(o),r.coordinateSystem=o})),e.eachSeries((function(t){"calendar"===t.get("coordinateSystem")&&(t.coordinateSystem=i[t.get("calendarIndex")||0])})),i},t.dimensions=["time","value"],t}();function uE(t){var e=t.calendarModel,n=t.seriesModel;return e?e.coordinateSystem:n?n.coordinateSystem:null}function hE(t,e){var n;return E(e,(function(e){null!=t[e]&&"auto"!==t[e]&&(n=!0)})),n}var cE=["transition","enterFrom","leaveTo"],pE=cE.concat(["enterAnimation","updateAnimation","leaveAnimation"]);function dE(t,e,n){if(n&&(!t[n]&&e[n]&&(t[n]={}),t=t[n],e=e[n]),t&&e)for(var i=n?cE:pE,r=0;r<i.length;r++){var o=i[r];null==t[o]&&null!=e[o]&&(t[o]=e[o])}}var fE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.preventAutoZ=!0,n}return n(e,t),e.prototype.mergeOption=function(e,n){var i=this.option.elements;this.option.elements=null,t.prototype.mergeOption.call(this,e,n),this.option.elements=i},e.prototype.optionUpdated=function(t,e){var n=this.option,i=(e?n:t).elements,r=n.elements=e?[]:n.elements,o=[];this._flatten(i,o,null);var a=yo(r,o,"normalMerge"),s=this._elOptionsToUpdate=[];E(a,(function(t,e){var n=t.newOption;n&&(s.push(n),function(t,e){var n=t.existing;if(e.id=t.keyInfo.id,!e.type&&n&&(e.type=n.type),null==e.parentId){var i=e.parentOption;i?e.parentId=i.id:n&&(e.parentId=n.parentId)}e.parentOption=null}(t,n),function(t,e,n){var i=A({},n),r=t[e],o=n.$action||"merge";"merge"===o?r?(C(r,i,!0),bp(r,i,{ignoreSize:!0}),Sp(n,r),dE(n,r),dE(n,r,"shape"),dE(n,r,"style"),dE(n,r,"extra"),n.clipPath=r.clipPath):t[e]=i:"replace"===o?t[e]=i:"remove"===o&&r&&(t[e]=null)}(r,e,n),function(t,e){if(t&&(t.hv=e.hv=[hE(e,["left","right"]),hE(e,["top","bottom"])],"group"===t.type)){var n=t,i=e;null==n.width&&(n.width=i.width=0),null==n.height&&(n.height=i.height=0)}}(r[e],n))}),this),n.elements=B(r,(function(t){return t&&delete t.$action,null!=t}))},e.prototype._flatten=function(t,e,n){E(t,(function(t){if(t){n&&(t.parentOption=n),e.push(t);var i=t.children;"group"===t.type&&i&&this._flatten(i,e,t),delete t.children}}),this)},e.prototype.useElOptionsToUpdate=function(){var t=this._elOptionsToUpdate;return this._elOptionsToUpdate=null,t},e.type="graphic",e.defaultOption={elements:[]},e}(Ip),gE={path:null,compoundPath:null,group:Cr,image:xs,text:As},yE=So(),vE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(){this._elMap=ft()},e.prototype.render=function(t,e,n){t!==this._lastGraphicModel&&this._clear(),this._lastGraphicModel=t,this._updateElements(t),this._relocate(t,n)},e.prototype._updateElements=function(t){var e=t.useElOptionsToUpdate();if(e){var n=this._elMap,i=this.group,r=t.get("z"),o=t.get("zlevel");E(e,(function(e){var a=xo(e.id,null),s=null!=a?n.get(a):null,l=xo(e.parentId,null),u=null!=l?n.get(l):i,h=e.type,c=e.style;"text"===h&&c&&e.hv&&e.hv[1]&&(c.textVerticalAlign=c.textBaseline=c.verticalAlign=c.align=null);var p=e.textContent,d=e.textConfig;if(c&&TO(c,h,!!d,!!p)){var f=CO(c,h,!0);!d&&f.textConfig&&(d=e.textConfig=f.textConfig),!p&&f.textContent&&(p=f.textContent)}var g=function(t){return t=A({},t),E(["id","parentId","$action","hv","bounding","textContent","clipPath"].concat(fp),(function(e){delete t[e]})),t}(e);var y=e.$action||"merge",v="merge"===y,m="replace"===y;if(v){var x=s;(T=!s)?x=xE(a,u,e.type,n):(x&&(yE(x).isNew=!1),jO(x)),x&&(EO(x,g,t,{isInit:T}),bE(x,e,r,o))}else if(m){_E(s,e,n,t);var _=xE(a,u,e.type,n);_&&(EO(_,g,t,{isInit:!0}),bE(_,e,r,o))}else"remove"===y&&(zO(s,e),_E(s,e,n,t));var b=n.get(a);if(b&&p)if(v){var w=b.getTextContent();w?w.attr(p):b.setTextContent(new As(p))}else m&&b.setTextContent(new As(p));if(b){var S=e.clipPath;if(S){var M=S.type,I=void 0,T=!1;if(v){var C=b.getClipPath();I=(T=!C||yE(C).type!==M)?mE(M):C}else m&&(T=!0,I=mE(M));b.setClipPath(I),EO(I,S,t,{isInit:T}),qO(I,S.keyframeAnimation,t)}var D=yE(b);b.setTextConfig(d),D.option=e,function(t,e,n){var i=Ws(t).eventData;t.silent||t.ignore||i||(i=Ws(t).eventData={componentType:"graphic",componentIndex:e.componentIndex,name:t.name});i&&(i.info=n.info)}(b,t,e),Nh({el:b,componentModel:t,itemName:b.name,itemTooltipOption:e.tooltip}),qO(b,e.keyframeAnimation,t)}}))}},e.prototype._relocate=function(t,e){for(var n=t.option.elements,i=this.group,r=this._elMap,o=e.getWidth(),a=e.getHeight(),s=["x","y"],l=0;l<n.length;l++){if((f=null!=(d=xo((p=n[l]).id,null))?r.get(d):null)&&f.isGroup){var u=(g=f.parent)===i,h=yE(f),c=yE(g);h.width=Er(h.option.width,u?o:c.width)||0,h.height=Er(h.option.height,u?a:c.height)||0}}for(l=n.length-1;l>=0;l--){var p,d,f;if(f=null!=(d=xo((p=n[l]).id,null))?r.get(d):null){var g=f.parent,y=(c=yE(g),{}),v=xp(f,p,g===i?{width:o,height:a}:{width:c.width,height:c.height},null,{hv:p.hv,boundingMode:p.bounding},y);if(!yE(f).isNew&&v){for(var m=p.transition,x={},_=0;_<s.length;_++){var b=s[_],w=y[b];m&&(BO(m)||P(m,b)>=0)?x[b]=w:f[b]=w}ih(f,x,t,0)}else f.attr(y)}}},e.prototype._clear=function(){var t=this,e=this._elMap;e.each((function(n){_E(n,yE(n).option,e,t._lastGraphicModel)})),this._elMap=ft()},e.prototype.dispose=function(){this._clear()},e.type="graphic",e}(fg);function mE(t){var e=mt(gE,t)?gE[t]:vh(t);var n=new e({});return yE(n).type=t,n}function xE(t,e,n,i){var r=mE(n);return e.add(r),i.set(t,r),yE(r).id=t,yE(r).isNew=!0,r}function _E(t,e,n,i){t&&t.parent&&("group"===t.type&&t.traverse((function(t){_E(t,e,n,i)})),VO(t,e,i),n.removeKey(yE(t).id))}function bE(t,e,n,i){if(!t.isGroup){var r=t;r.z=rt(e.z,n||0),r.zlevel=rt(e.zlevel,i||0);var o=e.z2;null!=o&&(r.z2=o||0)}E(G(e),(function(n){var i=e[n];0===n.indexOf("on")&&U(i)&&(t[n]=i)})),t.draggable=e.draggable,null!=e.name&&(t.name=e.name),null!=e.id&&(t.id=e.id)}var wE=["x","y","radius","angle","single"],SE=["cartesian2d","polar","singleAxis"];function ME(t){return t+"Axis"}function IE(t,e){var n,i=ft(),r=[],o=ft();t.eachComponent({mainType:"dataZoom",query:e},(function(t){o.get(t.uid)||s(t)}));do{n=!1,t.eachComponent("dataZoom",a)}while(n);function a(t){!o.get(t.uid)&&function(t){var e=!1;return t.eachTargetAxis((function(t,n){var r=i.get(t);r&&r[n]&&(e=!0)})),e}(t)&&(s(t),n=!0)}function s(t){o.set(t.uid,!0),r.push(t),t.eachTargetAxis((function(t,e){(i.get(t)||i.set(t,[]))[e]=!0}))}return r}function TE(t){var e=t.ecModel,n={infoList:[],infoMap:ft()};return t.eachTargetAxis((function(t,i){var r=e.getComponent(ME(t),i);if(r){var o=r.getCoordSysModel();if(o){var a=o.uid,s=n.infoMap.get(a);s||(s={model:o,axisModels:[]},n.infoList.push(s),n.infoMap.set(a,s)),s.axisModels.push(r)}}})),n}var CE=function(){function t(){this.indexList=[],this.indexMap=[]}return t.prototype.add=function(t){this.indexMap[t]||(this.indexList.push(t),this.indexMap[t]=!0)},t}(),DE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._autoThrottle=!0,n._noTarget=!0,n._rangePropMode=["percent","percent"],n}return n(e,t),e.prototype.init=function(t,e,n){var i=AE(t);this.settledOption=i,this.mergeDefaultAndTheme(t,n),this._doInit(i)},e.prototype.mergeOption=function(t){var e=AE(t);C(this.option,t,!0),C(this.settledOption,e,!0),this._doInit(e)},e.prototype._doInit=function(t){var e=this.option;this._setDefaultThrottle(t),this._updateRangeUse(t);var n=this.settledOption;E([["start","startValue"],["end","endValue"]],(function(t,i){"value"===this._rangePropMode[i]&&(e[t[0]]=n[t[0]]=null)}),this),this._resetTarget()},e.prototype._resetTarget=function(){var t=this.get("orient",!0),e=this._targetAxisInfoMap=ft();this._fillSpecifiedTargetAxis(e)?this._orient=t||this._makeAutoOrientByTargetAxis():(this._orient=t||"horizontal",this._fillAutoTargetAxisByOrient(e,this._orient)),this._noTarget=!0,e.each((function(t){t.indexList.length&&(this._noTarget=!1)}),this)},e.prototype._fillSpecifiedTargetAxis=function(t){var e=!1;return E(wE,(function(n){var i=this.getReferringComponents(ME(n),Do);if(i.specified){e=!0;var r=new CE;E(i.models,(function(t){r.add(t.componentIndex)})),t.set(n,r)}}),this),e},e.prototype._fillAutoTargetAxisByOrient=function(t,e){var n=this.ecModel,i=!0;if(i){var r="vertical"===e?"y":"x";o(n.findComponents({mainType:r+"Axis"}),r)}i&&o(n.findComponents({mainType:"singleAxis",filter:function(t){return t.get("orient",!0)===e}}),"single");function o(e,n){var r=e[0];if(r){var o=new CE;if(o.add(r.componentIndex),t.set(n,o),i=!1,"x"===n||"y"===n){var a=r.getReferringComponents("grid",Co).models[0];a&&E(e,(function(t){r.componentIndex!==t.componentIndex&&a===t.getReferringComponents("grid",Co).models[0]&&o.add(t.componentIndex)}))}}}i&&E(wE,(function(e){if(i){var r=n.findComponents({mainType:ME(e),filter:function(t){return"category"===t.get("type",!0)}});if(r[0]){var o=new CE;o.add(r[0].componentIndex),t.set(e,o),i=!1}}}),this)},e.prototype._makeAutoOrientByTargetAxis=function(){var t;return this.eachTargetAxis((function(e){!t&&(t=e)}),this),"y"===t?"vertical":"horizontal"},e.prototype._setDefaultThrottle=function(t){if(t.hasOwnProperty("throttle")&&(this._autoThrottle=!1),this._autoThrottle){var e=this.ecModel.option;this.option.throttle=e.animation&&e.animationDurationUpdate>0?100:20}},e.prototype._updateRangeUse=function(t){var e=this._rangePropMode,n=this.get("rangeMode");E([["start","startValue"],["end","endValue"]],(function(i,r){var o=null!=t[i[0]],a=null!=t[i[1]];o&&!a?e[r]="percent":!o&&a?e[r]="value":n?e[r]=n[r]:o&&(e[r]="percent")}))},e.prototype.noTarget=function(){return this._noTarget},e.prototype.getFirstTargetAxisModel=function(){var t;return this.eachTargetAxis((function(e,n){null==t&&(t=this.ecModel.getComponent(ME(e),n))}),this),t},e.prototype.eachTargetAxis=function(t,e){this._targetAxisInfoMap.each((function(n,i){E(n.indexList,(function(n){t.call(e,i,n)}))}))},e.prototype.getAxisProxy=function(t,e){var n=this.getAxisModel(t,e);if(n)return n.__dzAxisProxy},e.prototype.getAxisModel=function(t,e){var n=this._targetAxisInfoMap.get(t);if(n&&n.indexMap[e])return this.ecModel.getComponent(ME(t),e)},e.prototype.setRawRange=function(t){var e=this.option,n=this.settledOption;E([["start","startValue"],["end","endValue"]],(function(i){null==t[i[0]]&&null==t[i[1]]||(e[i[0]]=n[i[0]]=t[i[0]],e[i[1]]=n[i[1]]=t[i[1]])}),this),this._updateRangeUse(t)},e.prototype.setCalculatedRange=function(t){var e=this.option;E(["start","startValue","end","endValue"],(function(n){e[n]=t[n]}))},e.prototype.getPercentRange=function(){var t=this.findRepresentativeAxisProxy();if(t)return t.getDataPercentWindow()},e.prototype.getValueRange=function(t,e){if(null!=t||null!=e)return this.getAxisProxy(t,e).getDataValueWindow();var n=this.findRepresentativeAxisProxy();return n?n.getDataValueWindow():void 0},e.prototype.findRepresentativeAxisProxy=function(t){if(t)return t.__dzAxisProxy;for(var e,n=this._targetAxisInfoMap.keys(),i=0;i<n.length;i++)for(var r=n[i],o=this._targetAxisInfoMap.get(r),a=0;a<o.indexList.length;a++){var s=this.getAxisProxy(r,o.indexList[a]);if(s.hostedBy(this))return s;e||(e=s)}return e},e.prototype.getRangePropMode=function(){return this._rangePropMode.slice()},e.prototype.getOrient=function(){return this._orient},e.type="dataZoom",e.dependencies=["xAxis","yAxis","radiusAxis","angleAxis","singleAxis","series","toolbox"],e.defaultOption={z:4,filterMode:"filter",start:0,end:100},e}(Ip);function AE(t){var e={};return E(["start","end","startValue","endValue","throttle"],(function(n){t.hasOwnProperty(n)&&(e[n]=t[n])})),e}var kE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="dataZoom.select",e}(DE),LE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n,i){this.dataZoomModel=t,this.ecModel=e,this.api=n},e.type="dataZoom",e}(fg),PE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="dataZoom.select",e}(LE),OE=E,RE=Vr,NE=function(){function t(t,e,n,i){this._dimName=t,this._axisIndex=e,this.ecModel=i,this._dataZoomModel=n}return t.prototype.hostedBy=function(t){return this._dataZoomModel===t},t.prototype.getDataValueWindow=function(){return this._valueWindow.slice()},t.prototype.getDataPercentWindow=function(){return this._percentWindow.slice()},t.prototype.getTargetSeriesModels=function(){var t=[];return this.ecModel.eachSeries((function(e){if(function(t){var e=t.get("coordinateSystem");return P(SE,e)>=0}(e)){var n=ME(this._dimName),i=e.getReferringComponents(n,Co).models[0];i&&this._axisIndex===i.componentIndex&&t.push(e)}}),this),t},t.prototype.getAxisModel=function(){return this.ecModel.getComponent(this._dimName+"Axis",this._axisIndex)},t.prototype.getMinMaxSpan=function(){return T(this._minMaxSpan)},t.prototype.calculateDataWindow=function(t){var e,n=this._dataExtent,i=this.getAxisModel().axis.scale,r=this._dataZoomModel.getRangePropMode(),o=[0,100],a=[],s=[];OE(["start","end"],(function(l,u){var h=t[l],c=t[l+"Value"];"percent"===r[u]?(null==h&&(h=o[u]),c=i.parse(Nr(h,o,n))):(e=!0,h=Nr(c=null==c?n[u]:i.parse(c),n,o)),s[u]=c,a[u]=h})),RE(s),RE(a);var l=this._minMaxSpan;function u(t,e,n,r,o){var a=o?"Span":"ValueSpan";sk(0,t,n,"all",l["min"+a],l["max"+a]);for(var s=0;s<2;s++)e[s]=Nr(t[s],n,r,!0),o&&(e[s]=i.parse(e[s]))}return e?u(s,a,n,o,!1):u(a,s,o,n,!0),{valueWindow:s,percentWindow:a}},t.prototype.reset=function(t){if(t===this._dataZoomModel){var e=this.getTargetSeriesModels();this._dataExtent=function(t,e,n){var i=[1/0,-1/0];OE(n,(function(t){!function(t,e,n){e&&E(u_(e,n),(function(n){var i=e.getApproximateExtent(n);i[0]<t[0]&&(t[0]=i[0]),i[1]>t[1]&&(t[1]=i[1])}))}(i,t.getData(),e)}));var r=t.getAxisModel(),o=Qx(r.axis.scale,r,i).calculate();return[o.min,o.max]}(this,this._dimName,e),this._updateMinMaxSpan();var n=this.calculateDataWindow(t.settledOption);this._valueWindow=n.valueWindow,this._percentWindow=n.percentWindow,this._setAxisModel()}},t.prototype.filterData=function(t,e){if(t===this._dataZoomModel){var n=this._dimName,i=this.getTargetSeriesModels(),r=t.get("filterMode"),o=this._valueWindow;"none"!==r&&OE(i,(function(t){var e=t.getData(),i=e.mapDimensionsAll(n);if(i.length){if("weakFilter"===r){var a=e.getStore(),s=z(i,(function(t){return e.getDimensionIndex(t)}),e);e.filterSelf((function(t){for(var e,n,r,l=0;l<i.length;l++){var u=a.get(s[l],t),h=!isNaN(u),c=u<o[0],p=u>o[1];if(h&&!c&&!p)return!0;h&&(r=!0),c&&(e=!0),p&&(n=!0)}return r&&e&&n}))}else OE(i,(function(n){if("empty"===r)t.setData(e=e.map(n,(function(t){return function(t){return t>=o[0]&&t<=o[1]}(t)?t:NaN})));else{var i={};i[n]=o,e.selectRange(i)}}));OE(i,(function(t){e.setApproximateExtent(o,t)}))}}))}},t.prototype._updateMinMaxSpan=function(){var t=this._minMaxSpan={},e=this._dataZoomModel,n=this._dataExtent;OE(["min","max"],(function(i){var r=e.get(i+"Span"),o=e.get(i+"ValueSpan");null!=o&&(o=this.getAxisModel().axis.scale.parse(o)),null!=o?r=Nr(n[0]+o,n,[0,100],!0):null!=r&&(o=Nr(r,[0,100],n,!0)-n[0]),t[i+"Span"]=r,t[i+"ValueSpan"]=o}),this)},t.prototype._setAxisModel=function(){var t=this.getAxisModel(),e=this._percentWindow,n=this._valueWindow;if(e){var i=Gr(n,[0,500]);i=Math.min(i,20);var r=t.axis.scale.rawExtentInfo;0!==e[0]&&r.setDeterminedMinMax("min",+n[0].toFixed(i)),100!==e[1]&&r.setDeterminedMinMax("max",+n[1].toFixed(i)),r.freeze()}},t}();var EE={getTargetSeries:function(t){function e(e){t.eachComponent("dataZoom",(function(n){n.eachTargetAxis((function(i,r){var o=t.getComponent(ME(i),r);e(i,r,o,n)}))}))}e((function(t,e,n,i){n.__dzAxisProxy=null}));var n=[];e((function(e,i,r,o){r.__dzAxisProxy||(r.__dzAxisProxy=new NE(e,i,o,t),n.push(r.__dzAxisProxy))}));var i=ft();return E(n,(function(t){E(t.getTargetSeriesModels(),(function(t){i.set(t.uid,t)}))})),i},overallReset:function(t,e){t.eachComponent("dataZoom",(function(t){t.eachTargetAxis((function(e,n){t.getAxisProxy(e,n).reset(t)})),t.eachTargetAxis((function(n,i){t.getAxisProxy(n,i).filterData(t,e)}))})),t.eachComponent("dataZoom",(function(t){var e=t.findRepresentativeAxisProxy();if(e){var n=e.getDataPercentWindow(),i=e.getDataValueWindow();t.setCalculatedRange({start:n[0],end:n[1],startValue:i[0],endValue:i[1]})}}))}};var zE=!1;function VE(t){zE||(zE=!0,t.registerProcessor(t.PRIORITY.PROCESSOR.FILTER,EE),function(t){t.registerAction("dataZoom",(function(t,e){E(IE(e,t),(function(e){e.setRawRange({start:t.start,end:t.end,startValue:t.startValue,endValue:t.endValue})}))}))}(t),t.registerSubTypeDefaulter("dataZoom",(function(){return"slider"})))}function BE(t){t.registerComponentModel(kE),t.registerComponentView(PE),VE(t)}var FE=function(){},GE={};function WE(t,e){GE[t]=e}function HE(t){return GE[t]}var YE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.optionUpdated=function(){t.prototype.optionUpdated.apply(this,arguments);var e=this.ecModel;E(this.option.feature,(function(t,n){var i=HE(n);i&&(i.getDefaultOption&&(i.defaultOption=i.getDefaultOption(e)),C(t,i.defaultOption))}))},e.type="toolbox",e.layoutMode={type:"box",ignoreSize:!0},e.defaultOption={show:!0,z:6,orient:"horizontal",left:"right",top:"top",backgroundColor:"transparent",borderColor:"#ccc",borderRadius:0,borderWidth:0,padding:5,itemSize:15,itemGap:8,showTitle:!0,iconStyle:{borderColor:"#666",color:"none"},emphasis:{iconStyle:{borderColor:"#3E98C5"}},tooltip:{show:!1,position:"bottom"}},e}(Ip);function UE(t,e){var n=np(e.get("padding")),i=e.getItemStyle(["color","opacity"]);return i.fill=e.get("backgroundColor"),t=new Ts({shape:{x:t.x-n[3],y:t.y-n[0],width:t.width+n[1]+n[3],height:t.height+n[0]+n[2],r:e.get("borderRadius")},style:i,silent:!0,z2:-1})}var XE=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.render=function(t,e,n,i){var r=this.group;if(r.removeAll(),t.get("show")){var o=+t.get("itemSize"),a=t.get("feature")||{},s=this._features||(this._features={}),l=[];E(a,(function(t,e){l.push(e)})),new Sm(this._featureNames||[],l).add(u).update(u).remove(H(u,null)).execute(),this._featureNames=l,function(t,e,n){var i=e.getBoxLayoutParams(),r=e.get("padding"),o={width:n.getWidth(),height:n.getHeight()},a=mp(i,o,r);vp(e.get("orient"),t,e.get("itemGap"),a.width,a.height),xp(t,i,o,r)}(r,t,n),r.add(UE(r.getBoundingRect(),t)),r.eachChild((function(t){var e=t.__title,i=t.ensureState("emphasis"),a=i.textConfig||(i.textConfig={}),s=t.getTextContent(),l=s&&s.states.emphasis;if(l&&!U(l)&&e){var u=l.style||(l.style={}),h=cr(e,As.makeFont(u)),c=t.x+r.x,p=!1;t.y+r.y+o+h.height>n.getHeight()&&(a.position="top",p=!0);var d=p?-5-h.height:o+8;c+h.width/2>n.getWidth()?(a.position=["100%",d],u.align="right"):c-h.width/2<0&&(a.position=[0,d],u.align="left")}}))}function u(u,h){var c,p=l[u],d=l[h],f=a[p],g=new pc(f,t,t.ecModel);if(i&&null!=i.newTitle&&i.featureName===p&&(f.title=i.newTitle),p&&!d){if(function(t){return 0===t.indexOf("my")}(p))c={onclick:g.option.onclick,featureName:p};else{var y=HE(p);if(!y)return;c=new y}s[p]=c}else if(!(c=s[d]))return;c.uid=fc("toolbox-feature"),c.model=g,c.ecModel=e,c.api=n;var v=c instanceof FE;p||!d?!g.get("show")||v&&c.unusable?v&&c.remove&&c.remove(e,n):(!function(i,a,s){var l,u,h=i.getModel("iconStyle"),c=i.getModel(["emphasis","iconStyle"]),p=a instanceof FE&&a.getIcons?a.getIcons():i.get("icon"),d=i.get("title")||{};X(p)?(l={})[s]=p:l=p;X(d)?(u={})[s]=d:u=d;var f=i.iconPaths={};E(l,(function(s,l){var p=Lh(s,{},{x:-o/2,y:-o/2,width:o,height:o});p.setStyle(h.getItemStyle()),p.ensureState("emphasis").style=c.getItemStyle();var d=new As({style:{text:u[l],align:c.get("textAlign"),borderRadius:c.get("textBorderRadius"),padding:c.get("textPadding"),fill:null},ignore:!0});p.setTextContent(d),Nh({el:p,componentModel:t,itemName:l,formatterParamsExtra:{title:u[l]}}),p.__title=u[l],p.on("mouseover",(function(){var e=c.getItemStyle(),n="vertical"===t.get("orient")?null==t.get("right")?"right":"left":null==t.get("bottom")?"bottom":"top";d.setStyle({fill:c.get("textFill")||e.fill||e.stroke||"#000",backgroundColor:c.get("textBackgroundColor")}),p.setTextConfig({position:c.get("textPosition")||n}),d.ignore=!t.get("showTitle"),xl(this)})).on("mouseout",(function(){"emphasis"!==i.get(["iconStatus",l])&&_l(this),d.hide()})),("emphasis"===i.get(["iconStatus",l])?xl:_l)(p),r.add(p),p.on("click",W(a.onclick,a,e,n,l)),f[l]=p}))}(g,c,p),g.setIconStatus=function(t,e){var n=this.option,i=this.iconPaths;n.iconStatus=n.iconStatus||{},n.iconStatus[t]=e,i[t]&&("emphasis"===e?xl:_l)(i[t])},c instanceof FE&&c.render&&c.render(g,e,n,i)):v&&c.dispose&&c.dispose(e,n)}},e.prototype.updateView=function(t,e,n,i){E(this._features,(function(t){t instanceof FE&&t.updateView&&t.updateView(t.model,e,n,i)}))},e.prototype.remove=function(t,e){E(this._features,(function(n){n instanceof FE&&n.remove&&n.remove(t,e)})),this.group.removeAll()},e.prototype.dispose=function(t,e){E(this._features,(function(n){n instanceof FE&&n.dispose&&n.dispose(t,e)}))},e.type="toolbox",e}(fg);var ZE=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.onclick=function(t,e){var n=this.model,i=n.get("name")||t.get("title.0.text")||"echarts",o="svg"===e.getZr().painter.getType(),a=o?"svg":n.get("type",!0)||"png",s=e.getConnectedDataURL({type:a,backgroundColor:n.get("backgroundColor",!0)||t.get("backgroundColor")||"#fff",connectedBackgroundColor:n.get("connectedBackgroundColor"),excludeComponents:n.get("excludeComponents"),pixelRatio:n.get("pixelRatio")}),l=r.browser;if(U(MouseEvent)&&(l.newEdge||!l.ie&&!l.edge)){var u=document.createElement("a");u.download=i+"."+a,u.target="_blank",u.href=s;var h=new MouseEvent("click",{view:document.defaultView,bubbles:!0,cancelable:!1});u.dispatchEvent(h)}else if(window.navigator.msSaveOrOpenBlob||o){var c=s.split(","),p=c[0].indexOf("base64")>-1,d=o?decodeURIComponent(c[1]):c[1];p&&(d=window.atob(d));var f=i+"."+a;if(window.navigator.msSaveOrOpenBlob){for(var g=d.length,y=new Uint8Array(g);g--;)y[g]=d.charCodeAt(g);var v=new Blob([y]);window.navigator.msSaveOrOpenBlob(v,f)}else{var m=document.createElement("iframe");document.body.appendChild(m);var x=m.contentWindow,_=x.document;_.open("image/svg+xml","replace"),_.write(d),_.close(),x.focus(),_.execCommand("SaveAs",!0,f),document.body.removeChild(m)}}else{var b=n.get("lang"),w='<body style="margin:0;"><img src="'+s+'" style="max-width:100%;" title="'+(b&&b[0]||"")+'" /></body>',S=window.open();S.document.write(w),S.document.title=i}},e.getDefaultOption=function(t){return{show:!0,icon:"M4.7,22.9L29.3,45.5L54.7,23.4M4.6,43.6L4.6,58L53.8,58L53.8,43.6M29.2,45.1L29.2,0",title:t.getLocaleModel().get(["toolbox","saveAsImage","title"]),type:"png",connectedBackgroundColor:"#fff",name:"",excludeComponents:["toolbox"],lang:t.getLocaleModel().get(["toolbox","saveAsImage","lang"])}},e}(FE),jE="__ec_magicType_stack__",qE=[["line","bar"],["stack"]],KE=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.getIcons=function(){var t=this.model,e=t.get("icon"),n={};return E(t.get("type"),(function(t){e[t]&&(n[t]=e[t])})),n},e.getDefaultOption=function(t){return{show:!0,type:[],icon:{line:"M4.1,28.9h7.1l9.3-22l7.4,38l9.7-19.7l3,12.8h14.9M4.1,58h51.4",bar:"M6.7,22.9h10V48h-10V22.9zM24.9,13h10v35h-10V13zM43.2,2h10v46h-10V2zM3.1,58h53.7",stack:"M8.2,38.4l-8.4,4.1l30.6,15.3L60,42.5l-8.1-4.1l-21.5,11L8.2,38.4z M51.9,30l-8.1,4.2l-13.4,6.9l-13.9-6.9L8.2,30l-8.4,4.2l8.4,4.2l22.2,11l21.5-11l8.1-4.2L51.9,30z M51.9,21.7l-8.1,4.2L35.7,30l-5.3,2.8L24.9,30l-8.4-4.1l-8.3-4.2l-8.4,4.2L8.2,30l8.3,4.2l13.9,6.9l13.4-6.9l8.1-4.2l8.1-4.1L51.9,21.7zM30.4,2.2L-0.2,17.5l8.4,4.1l8.3,4.2l8.4,4.2l5.5,2.7l5.3-2.7l8.1-4.2l8.1-4.2l8.1-4.1L30.4,2.2z"},title:t.getLocaleModel().get(["toolbox","magicType","title"]),option:{},seriesIndex:{}}},e.prototype.onclick=function(t,e,n){var i=this.model,r=i.get(["seriesIndex",n]);if($E[n]){var o,a={series:[]};E(qE,(function(t){P(t,n)>=0&&E(t,(function(t){i.setIconStatus(t,"normal")}))})),i.setIconStatus(n,"emphasis"),t.eachComponent({mainType:"series",query:null==r?null:{seriesIndex:r}},(function(t){var e=t.subType,r=t.id,o=$E[n](e,r,t,i);o&&(k(o,t.option),a.series.push(o));var s=t.coordinateSystem;if(s&&"cartesian2d"===s.type&&("line"===n||"bar"===n)){var l=s.getAxesByScale("ordinal")[0];if(l){var u=l.dim+"Axis",h=t.getReferringComponents(u,Co).models[0].componentIndex;a[u]=a[u]||[];for(var c=0;c<=h;c++)a[u][h]=a[u][h]||{};a[u][h].boundaryGap="bar"===n}}}));var s=n;"stack"===n&&(o=C({stack:i.option.title.tiled,tiled:i.option.title.stack},i.option.title),"emphasis"!==i.get(["iconStatus",n])&&(s="tiled")),e.dispatchAction({type:"changeMagicType",currentType:s,newOption:a,newTitle:o,featureName:"magicType"})}},e}(FE),$E={line:function(t,e,n,i){if("bar"===t)return C({id:e,type:"line",data:n.get("data"),stack:n.get("stack"),markPoint:n.get("markPoint"),markLine:n.get("markLine")},i.get(["option","line"])||{},!0)},bar:function(t,e,n,i){if("line"===t)return C({id:e,type:"bar",data:n.get("data"),stack:n.get("stack"),markPoint:n.get("markPoint"),markLine:n.get("markLine")},i.get(["option","bar"])||{},!0)},stack:function(t,e,n,i){var r=n.get("stack")===jE;if("line"===t||"bar"===t)return i.setIconStatus("stack",r?"normal":"emphasis"),C({id:e,stack:r?"":jE},i.get(["option","stack"])||{},!0)}};um({type:"changeMagicType",event:"magicTypeChanged",update:"prepareAndUpdate"},(function(t,e){e.mergeOption(t.newOption)}));var JE=new Array(60).join("-"),QE="\t";function tz(t){return t.replace(/^\s\s*/,"").replace(/\s\s*$/,"")}var ez=new RegExp("[\t]+","g");function nz(t,e){var n=t.split(new RegExp("\n*"+JE+"\n*","g")),i={series:[]};return E(n,(function(t,n){if(function(t){if(t.slice(0,t.indexOf("\n")).indexOf(QE)>=0)return!0}(t)){var r=function(t){for(var e=t.split(/\n+/g),n=[],i=z(tz(e.shift()).split(ez),(function(t){return{name:t,data:[]}})),r=0;r<e.length;r++){var o=tz(e[r]).split(ez);n.push(o.shift());for(var a=0;a<o.length;a++)i[a]&&(i[a].data[r]=o[a])}return{series:i,categories:n}}(t),o=e[n],a=o.axisDim+"Axis";o&&(i[a]=i[a]||[],i[a][o.axisIndex]={data:r.categories},i.series=i.series.concat(r.series))}else{r=function(t){for(var e=t.split(/\n+/g),n=tz(e.shift()),i=[],r=0;r<e.length;r++){var o=tz(e[r]);if(o){var a=o.split(ez),s="",l=void 0,u=!1;isNaN(a[0])?(u=!0,s=a[0],a=a.slice(1),i[r]={name:s,value:[]},l=i[r].value):l=i[r]=[];for(var h=0;h<a.length;h++)l.push(+a[h]);1===l.length&&(u?i[r].value=l[0]:i[r]=l[0])}}return{name:n,data:i}}(t);i.series.push(r)}})),i}var iz=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.onclick=function(t,e){var n=e.getDom(),i=this.model;this._dom&&n.removeChild(this._dom);var r=document.createElement("div");r.style.cssText="position:absolute;left:5px;top:5px;bottom:5px;right:5px;",r.style.backgroundColor=i.get("backgroundColor")||"#fff";var o=document.createElement("h4"),a=i.get("lang")||[];o.innerHTML=a[0]||i.get("title"),o.style.cssText="margin: 10px 20px;",o.style.color=i.get("textColor");var s=document.createElement("div"),l=document.createElement("textarea");s.style.cssText="display:block;width:100%;overflow:auto;";var u=i.get("optionToContent"),h=i.get("contentToOption"),c=function(t){var e,n,i,r=function(t){var e={},n=[],i=[];return t.eachRawSeries((function(t){var r=t.coordinateSystem;if(!r||"cartesian2d"!==r.type&&"polar"!==r.type)n.push(t);else{var o=r.getBaseAxis();if("category"===o.type){var a=o.dim+"_"+o.index;e[a]||(e[a]={categoryAxis:o,valueAxis:r.getOtherAxis(o),series:[]},i.push({axisDim:o.dim,axisIndex:o.index})),e[a].series.push(t)}else n.push(t)}})),{seriesGroupByCategoryAxis:e,other:n,meta:i}}(t);return{value:B([(n=r.seriesGroupByCategoryAxis,i=[],E(n,(function(t,e){var n=t.categoryAxis,r=t.valueAxis.dim,o=[" "].concat(z(t.series,(function(t){return t.name}))),a=[n.model.getCategories()];E(t.series,(function(t){var e=t.getRawData();a.push(t.getRawData().mapArray(e.mapDimension(r),(function(t){return t})))}));for(var s=[o.join(QE)],l=0;l<a[0].length;l++){for(var u=[],h=0;h<a.length;h++)u.push(a[h][l]);s.push(u.join(QE))}i.push(s.join("\n"))})),i.join("\n\n"+JE+"\n\n")),(e=r.other,z(e,(function(t){var e=t.getRawData(),n=[t.name],i=[];return e.each(e.dimensions,(function(){for(var t=arguments.length,r=arguments[t-1],o=e.getName(r),a=0;a<t-1;a++)i[a]=arguments[a];n.push((o?o+QE:"")+i.join(QE))})),n.join("\n")})).join("\n\n"+JE+"\n\n"))],(function(t){return!!t.replace(/[\n\t\s]/g,"")})).join("\n\n"+JE+"\n\n"),meta:r.meta}}(t);if(U(u)){var p=u(e.getOption());X(p)?s.innerHTML=p:J(p)&&s.appendChild(p)}else s.appendChild(l),l.readOnly=i.get("readOnly"),l.style.cssText="width:100%;height:100%;font-family:monospace;font-size:14px;line-height:1.6rem;",l.style.color=i.get("textColor"),l.style.borderColor=i.get("textareaBorderColor"),l.style.backgroundColor=i.get("textareaColor"),l.value=c.value;var d=c.meta,f=document.createElement("div");f.style.cssText="position:absolute;bottom:0;left:0;right:0;";var g="float:right;margin-right:20px;border:none;cursor:pointer;padding:2px 5px;font-size:12px;border-radius:3px",y=document.createElement("div"),v=document.createElement("div");g+=";background-color:"+i.get("buttonColor"),g+=";color:"+i.get("buttonTextColor");var m=this;function x(){n.removeChild(r),m._dom=null}ae(y,"click",x),ae(v,"click",(function(){if(null==h&&null!=u||null!=h&&null==u)x();else{var t;try{t=U(h)?h(s,e.getOption()):nz(l.value,d)}catch(t){throw x(),new Error("Data view format error "+t)}t&&e.dispatchAction({type:"changeDataView",newOption:t}),x()}})),y.innerHTML=a[1],v.innerHTML=a[2],v.style.cssText=g,y.style.cssText=g,!i.get("readOnly")&&f.appendChild(v),f.appendChild(y),r.appendChild(o),r.appendChild(s),r.appendChild(f),s.style.height=n.clientHeight-80+"px",n.appendChild(r),this._dom=r},e.prototype.remove=function(t,e){this._dom&&e.getDom().removeChild(this._dom)},e.prototype.dispose=function(t,e){this.remove(t,e)},e.getDefaultOption=function(t){return{show:!0,readOnly:!1,optionToContent:null,contentToOption:null,icon:"M17.5,17.3H33 M17.5,17.3H33 M45.4,29.5h-28 M11.5,2v56H51V14.8L38.4,2H11.5z M38.4,2.2v12.7H51 M45.4,41.7h-28",title:t.getLocaleModel().get(["toolbox","dataView","title"]),lang:t.getLocaleModel().get(["toolbox","dataView","lang"]),backgroundColor:"#fff",textColor:"#000",textareaColor:"#fff",textareaBorderColor:"#333",buttonColor:"#c23531",buttonTextColor:"#fff"}},e}(FE);function rz(t,e){return z(t,(function(t,n){var i=e&&e[n];if(q(i)&&!Y(i)){q(t)&&!Y(t)||(t={value:t});var r=null!=i.name&&null==t.name;return t=k(t,i),r&&delete t.name,t}return t}))}um({type:"changeDataView",event:"dataViewChanged",update:"prepareAndUpdate"},(function(t,e){var n=[];E(t.newOption.series,(function(t){var i=e.getSeriesByName(t.name)[0];if(i){var r=i.get("data");n.push({name:t.name,data:rz(t.data,r)})}else n.push(A({type:"scatter"},t))})),e.mergeOption(k({series:n},t.newOption))}));var oz=E,az=So();function sz(t){var e=az(t);return e.snapshots||(e.snapshots=[{}]),e.snapshots}var lz=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.onclick=function(t,e){!function(t){az(t).snapshots=null}(t),e.dispatchAction({type:"restore",from:this.uid})},e.getDefaultOption=function(t){return{show:!0,icon:"M3.8,33.4 M47,18.9h9.8V8.7 M56.3,20.1 C52.1,9,40.5,0.6,26.8,2.1C12.6,3.7,1.6,16.2,2.1,30.6 M13,41.1H3.1v10.2 M3.7,39.9c4.2,11.1,15.8,19.5,29.5,18 c14.2-1.6,25.2-14.1,24.7-28.5",title:t.getLocaleModel().get(["toolbox","restore","title"])}},e}(FE);um({type:"restore",event:"restore",update:"prepareAndUpdate"},(function(t,e){e.resetOption("recreate")}));var uz=["grid","xAxis","yAxis","geo","graph","polar","radiusAxis","angleAxis","bmap"],hz=function(){function t(t,e,n){var i=this;this._targetInfoList=[];var r=pz(e,t);E(dz,(function(t,e){(!n||!n.include||P(n.include,e)>=0)&&t(r,i._targetInfoList)}))}return t.prototype.setOutputRanges=function(t,e){return this.matchOutputRanges(t,e,(function(t,e,n){if((t.coordRanges||(t.coordRanges=[])).push(e),!t.coordRange){t.coordRange=e;var i=yz[t.brushType](0,n,e);t.__rangeOffset={offset:mz[t.brushType](i.values,t.range,[1,1]),xyMinMax:i.xyMinMax}}})),t},t.prototype.matchOutputRanges=function(t,e,n){E(t,(function(t){var i=this.findTargetInfo(t,e);i&&!0!==i&&E(i.coordSyses,(function(i){var r=yz[t.brushType](1,i,t.range,!0);n(t,r.values,i,e)}))}),this)},t.prototype.setInputRanges=function(t,e){E(t,(function(t){var n,i,r,o,a,s=this.findTargetInfo(t,e);if(t.range=t.range||[],s&&!0!==s){t.panelId=s.panelId;var l=yz[t.brushType](0,s.coordSys,t.coordRange),u=t.__rangeOffset;t.range=u?mz[t.brushType](l.values,u.offset,(n=l.xyMinMax,i=u.xyMinMax,r=_z(n),o=_z(i),a=[r[0]/o[0],r[1]/o[1]],isNaN(a[0])&&(a[0]=1),isNaN(a[1])&&(a[1]=1),a)):l.values}}),this)},t.prototype.makePanelOpts=function(t,e){return z(this._targetInfoList,(function(n){var i=n.getPanelRect();return{panelId:n.panelId,defaultBrushType:e?e(n):null,clipPath:uL(i),isTargetByCursor:cL(i,t,n.coordSysModel),getLinearBrushOtherExtent:hL(i)}}))},t.prototype.controlSeries=function(t,e,n){var i=this.findTargetInfo(t,n);return!0===i||i&&P(i.coordSyses,e.coordinateSystem)>=0},t.prototype.findTargetInfo=function(t,e){for(var n=this._targetInfoList,i=pz(e,t),r=0;r<n.length;r++){var o=n[r],a=t.panelId;if(a){if(o.panelId===a)return o}else for(var s=0;s<fz.length;s++)if(fz[s](i,o))return o}return!0},t}();function cz(t){return t[0]>t[1]&&t.reverse(),t}function pz(t,e){return Io(t,e,{includeMainTypes:uz})}var dz={grid:function(t,e){var n=t.xAxisModels,i=t.yAxisModels,r=t.gridModels,o=ft(),a={},s={};(n||i||r)&&(E(n,(function(t){var e=t.axis.grid.model;o.set(e.id,e),a[e.id]=!0})),E(i,(function(t){var e=t.axis.grid.model;o.set(e.id,e),s[e.id]=!0})),E(r,(function(t){o.set(t.id,t),a[t.id]=!0,s[t.id]=!0})),o.each((function(t){var r=t.coordinateSystem,o=[];E(r.getCartesians(),(function(t,e){(P(n,t.getAxis("x").model)>=0||P(i,t.getAxis("y").model)>=0)&&o.push(t)})),e.push({panelId:"grid--"+t.id,gridModel:t,coordSysModel:t,coordSys:o[0],coordSyses:o,getPanelRect:gz.grid,xAxisDeclared:a[t.id],yAxisDeclared:s[t.id]})})))},geo:function(t,e){E(t.geoModels,(function(t){var n=t.coordinateSystem;e.push({panelId:"geo--"+t.id,geoModel:t,coordSysModel:t,coordSys:n,coordSyses:[n],getPanelRect:gz.geo})}))}},fz=[function(t,e){var n=t.xAxisModel,i=t.yAxisModel,r=t.gridModel;return!r&&n&&(r=n.axis.grid.model),!r&&i&&(r=i.axis.grid.model),r&&r===e.gridModel},function(t,e){var n=t.geoModel;return n&&n===e.geoModel}],gz={grid:function(){return this.coordSys.master.getRect().clone()},geo:function(){var t=this.coordSys,e=t.getBoundingRect().clone();return e.applyTransform(Mh(t)),e}},yz={lineX:H(vz,0),lineY:H(vz,1),rect:function(t,e,n,i){var r=t?e.pointToData([n[0][0],n[1][0]],i):e.dataToPoint([n[0][0],n[1][0]],i),o=t?e.pointToData([n[0][1],n[1][1]],i):e.dataToPoint([n[0][1],n[1][1]],i),a=[cz([r[0],o[0]]),cz([r[1],o[1]])];return{values:a,xyMinMax:a}},polygon:function(t,e,n,i){var r=[[1/0,-1/0],[1/0,-1/0]];return{values:z(n,(function(n){var o=t?e.pointToData(n,i):e.dataToPoint(n,i);return r[0][0]=Math.min(r[0][0],o[0]),r[1][0]=Math.min(r[1][0],o[1]),r[0][1]=Math.max(r[0][1],o[0]),r[1][1]=Math.max(r[1][1],o[1]),o})),xyMinMax:r}}};function vz(t,e,n,i){var r=n.getAxis(["x","y"][t]),o=cz(z([0,1],(function(t){return e?r.coordToData(r.toLocalCoord(i[t]),!0):r.toGlobalCoord(r.dataToCoord(i[t]))}))),a=[];return a[t]=o,a[1-t]=[NaN,NaN],{values:o,xyMinMax:a}}var mz={lineX:H(xz,0),lineY:H(xz,1),rect:function(t,e,n){return[[t[0][0]-n[0]*e[0][0],t[0][1]-n[0]*e[0][1]],[t[1][0]-n[1]*e[1][0],t[1][1]-n[1]*e[1][1]]]},polygon:function(t,e,n){return z(t,(function(t,i){return[t[0]-n[0]*e[i][0],t[1]-n[1]*e[i][1]]}))}};function xz(t,e,n,i){return[e[0]-i[t]*n[0],e[1]-i[t]*n[1]]}function _z(t){return t?[t[0][1]-t[0][0],t[1][1]-t[1][0]]:[NaN,NaN]}var bz,wz,Sz=E,Mz=uo+"toolbox-dataZoom_",Iz=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.render=function(t,e,n,i){this._brushController||(this._brushController=new Pk(n.getZr()),this._brushController.on("brush",W(this._onBrush,this)).mount()),function(t,e,n,i,r){var o=n._isZoomActive;i&&"takeGlobalCursor"===i.type&&(o="dataZoomSelect"===i.key&&i.dataZoomSelectActive);n._isZoomActive=o,t.setIconStatus("zoom",o?"emphasis":"normal");var a=new hz(Cz(t),e,{include:["grid"]}).makePanelOpts(r,(function(t){return t.xAxisDeclared&&!t.yAxisDeclared?"lineX":!t.xAxisDeclared&&t.yAxisDeclared?"lineY":"rect"}));n._brushController.setPanels(a).enableBrush(!(!o||!a.length)&&{brushType:"auto",brushStyle:t.getModel("brushStyle").getItemStyle()})}(t,e,this,i,n),function(t,e){t.setIconStatus("back",function(t){return sz(t).length}(e)>1?"emphasis":"normal")}(t,e)},e.prototype.onclick=function(t,e,n){Tz[n].call(this)},e.prototype.remove=function(t,e){this._brushController&&this._brushController.unmount()},e.prototype.dispose=function(t,e){this._brushController&&this._brushController.dispose()},e.prototype._onBrush=function(t){var e=t.areas;if(t.isEnd&&e.length){var n={},i=this.ecModel;this._brushController.updateCovers([]),new hz(Cz(this.model),i,{include:["grid"]}).matchOutputRanges(e,i,(function(t,e,n){if("cartesian2d"===n.type){var i=t.brushType;"rect"===i?(r("x",n,e[0]),r("y",n,e[1])):r({lineX:"x",lineY:"y"}[i],n,e)}})),function(t,e){var n=sz(t);oz(e,(function(e,i){for(var r=n.length-1;r>=0&&!n[r][i];r--);if(r<0){var o=t.queryComponents({mainType:"dataZoom",subType:"select",id:i})[0];if(o){var a=o.getPercentRange();n[0][i]={dataZoomId:i,start:a[0],end:a[1]}}}})),n.push(e)}(i,n),this._dispatchZoomAction(n)}function r(t,e,r){var o=e.getAxis(t),a=o.model,s=function(t,e,n){var i;return n.eachComponent({mainType:"dataZoom",subType:"select"},(function(n){n.getAxisModel(t,e.componentIndex)&&(i=n)})),i}(t,a,i),l=s.findRepresentativeAxisProxy(a).getMinMaxSpan();null==l.minValueSpan&&null==l.maxValueSpan||(r=sk(0,r.slice(),o.scale.getExtent(),0,l.minValueSpan,l.maxValueSpan)),s&&(n[s.id]={dataZoomId:s.id,startValue:r[0],endValue:r[1]})}},e.prototype._dispatchZoomAction=function(t){var e=[];Sz(t,(function(t,n){e.push(T(t))})),e.length&&this.api.dispatchAction({type:"dataZoom",from:this.uid,batch:e})},e.getDefaultOption=function(t){return{show:!0,filterMode:"filter",icon:{zoom:"M0,13.5h26.9 M13.5,26.9V0 M32.1,13.5H58V58H13.5 V32.1",back:"M22,1.4L9.9,13.5l12.3,12.3 M10.3,13.5H54.9v44.6 H10.3v-26"},title:t.getLocaleModel().get(["toolbox","dataZoom","title"]),brushStyle:{borderWidth:0,color:"rgba(210,219,238,0.2)"}}},e}(FE),Tz={zoom:function(){var t=!this._isZoomActive;this.api.dispatchAction({type:"takeGlobalCursor",key:"dataZoomSelect",dataZoomSelectActive:t})},back:function(){this._dispatchZoomAction(function(t){var e=sz(t),n=e[e.length-1];e.length>1&&e.pop();var i={};return oz(n,(function(t,n){for(var r=e.length-1;r>=0;r--)if(t=e[r][n]){i[n]=t;break}})),i}(this.ecModel))}};function Cz(t){var e={xAxisIndex:t.get("xAxisIndex",!0),yAxisIndex:t.get("yAxisIndex",!0),xAxisId:t.get("xAxisId",!0),yAxisId:t.get("yAxisId",!0)};return null==e.xAxisIndex&&null==e.xAxisId&&(e.xAxisIndex="all"),null==e.yAxisIndex&&null==e.yAxisId&&(e.yAxisIndex="all"),e}bz="dataZoom",wz=function(t){var e=t.getComponent("toolbox",0),n=["feature","dataZoom"];if(e&&null!=e.get(n)){var i=e.getModel(n),r=[],o=Io(t,Cz(i));return Sz(o.xAxisModels,(function(t){return a(t,"xAxis","xAxisIndex")})),Sz(o.yAxisModels,(function(t){return a(t,"yAxis","yAxisIndex")})),r}function a(t,e,n){var o=t.componentIndex,a={type:"select",$fromToolbox:!0,filterMode:i.get("filterMode",!0)||"filter",id:Mz+e+o};a[n]=o,r.push(a)}},lt(null==Zp.get(bz)&&wz),Zp.set(bz,wz);var Dz=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="tooltip",e.dependencies=["axisPointer"],e.defaultOption={z:60,show:!0,showContent:!0,trigger:"item",triggerOn:"mousemove|click",alwaysShowContent:!1,displayMode:"single",renderMode:"auto",confine:null,showDelay:0,hideDelay:100,transitionDuration:.4,enterable:!1,backgroundColor:"#fff",shadowBlur:10,shadowColor:"rgba(0, 0, 0, .2)",shadowOffsetX:1,shadowOffsetY:2,borderRadius:4,borderWidth:1,padding:null,extraCssText:"",axisPointer:{type:"line",axis:"auto",animation:"auto",animationDurationUpdate:200,animationEasingUpdate:"exponentialOut",crossStyle:{color:"#999",width:1,type:"dashed",textStyle:{}}},textStyle:{color:"#666",fontSize:14}},e}(Ip);function Az(t){var e=t.get("confine");return null!=e?!!e:"richText"===t.get("renderMode")}function kz(t){if(r.domSupported)for(var e=document.documentElement.style,n=0,i=t.length;n<i;n++)if(t[n]in e)return t[n]}var Lz=kz(["transform","webkitTransform","OTransform","MozTransform","msTransform"]);function Pz(t,e){if(!t)return e;e=ep(e,!0);var n=t.indexOf(e);return(t=-1===n?e:"-"+t.slice(0,n)+"-"+e).toLowerCase()}var Oz=Pz(kz(["webkitTransition","transition","OTransition","MozTransition","msTransition"]),"transition"),Rz=Pz(Lz,"transform"),Nz="position:absolute;display:block;border-style:solid;white-space:nowrap;z-index:9999999;"+(r.transform3dSupported?"will-change:transform;":"");function Ez(t,e,n){var i=t.toFixed(0)+"px",o=e.toFixed(0)+"px";if(!r.transformSupported)return n?"top:"+o+";left:"+i+";":[["top",o],["left",i]];var a=r.transform3dSupported,s="translate"+(a?"3d":"")+"("+i+","+o+(a?",0":"")+")";return n?"top:0;left:0;"+Rz+":"+s+";":[["top",0],["left",0],[Lz,s]]}function zz(t,e,n){var i=[],o=t.get("transitionDuration"),a=t.get("backgroundColor"),s=t.get("shadowBlur"),l=t.get("shadowColor"),u=t.get("shadowOffsetX"),h=t.get("shadowOffsetY"),c=t.getModel("textStyle"),p=eg(t,"html"),d=u+"px "+h+"px "+s+"px "+l;return i.push("box-shadow:"+d),e&&o&&i.push(function(t,e){var n="cubic-bezier(0.23,1,0.32,1)",i=" "+t/2+"s "+n,o="opacity"+i+",visibility"+i;return e||(i=" "+t+"s "+n,o+=r.transformSupported?","+Rz+i:",left"+i+",top"+i),Oz+":"+o}(o,n)),a&&i.push("background-color:"+a),E(["width","color","radius"],(function(e){var n="border-"+e,r=ep(n),o=t.get(r);null!=o&&i.push(n+":"+o+("color"===e?"":"px"))})),i.push(function(t){var e=[],n=t.get("fontSize"),i=t.getTextColor();i&&e.push("color:"+i),e.push("font:"+t.getFont()),n&&e.push("line-height:"+Math.round(3*n/2)+"px");var r=t.get("textShadowColor"),o=t.get("textShadowBlur")||0,a=t.get("textShadowOffsetX")||0,s=t.get("textShadowOffsetY")||0;return r&&o&&e.push("text-shadow:"+a+"px "+s+"px "+o+"px "+r),E(["decoration","align"],(function(n){var i=t.get(n);i&&e.push("text-"+n+":"+i)})),e.join(";")}(c)),null!=p&&i.push("padding:"+np(p).join("px ")+"px"),i.join(";")+";"}function Vz(t,e,n,i,r){var o=e&&e.painter;if(n){var a=o&&o.getViewportRoot();a&&function(t,e,n,i,r){$t(Kt,e,i,r,!0)&&$t(t,n,Kt[0],Kt[1])}(t,a,document.body,i,r)}else{t[0]=i,t[1]=r;var s=o&&o.getViewportRootOffset();s&&(t[0]+=s.offsetLeft,t[1]+=s.offsetTop)}t[2]=t[0]/e.getWidth(),t[3]=t[1]/e.getHeight()}var Bz=function(){function t(t,e,n){if(this._show=!1,this._styleCoord=[0,0,0,0],this._enterable=!0,this._firstShow=!0,this._longHide=!0,r.wxa)return null;var i=document.createElement("div");i.domBelongToZr=!0,this.el=i;var o=this._zr=e.getZr(),a=this._appendToBody=n&&n.appendToBody;Vz(this._styleCoord,o,a,e.getWidth()/2,e.getHeight()/2),a?document.body.appendChild(i):t.appendChild(i),this._container=t;var s=this;i.onmouseenter=function(){s._enterable&&(clearTimeout(s._hideTimeout),s._show=!0),s._inContent=!0},i.onmousemove=function(t){if(t=t||window.event,!s._enterable){var e=o.handler;oe(o.painter.getViewportRoot(),t,!0),e.dispatch("mousemove",t)}},i.onmouseleave=function(){s._inContent=!1,s._enterable&&s._show&&s.hideLater(s._hideDelay)}}return t.prototype.update=function(t){var e,n,i,r=this._container,o=(n="position",(i=(e=r).currentStyle||document.defaultView&&document.defaultView.getComputedStyle(e))?n?i[n]:i:null),a=r.style;"absolute"!==a.position&&"absolute"!==o&&(a.position="relative"),t.get("alwaysShowContent")&&this._moveIfResized(),this.el.className=t.get("className")||""},t.prototype.show=function(t,e){clearTimeout(this._hideTimeout),clearTimeout(this._longHideTimeout);var n=this.el,i=n.style,r=this._styleCoord;n.innerHTML?i.cssText=Nz+zz(t,!this._firstShow,this._longHide)+Ez(r[0],r[1],!0)+"border-color:"+cp(e)+";"+(t.get("extraCssText")||"")+";pointer-events:"+(this._enterable?"auto":"none"):i.display="none",this._show=!0,this._firstShow=!1,this._longHide=!1},t.prototype.setContent=function(t,e,n,i,r){var o=this.el;if(null!=t){var a="";if(X(r)&&"item"===n.get("trigger")&&!Az(n)&&(a=function(t,e,n){if(!X(n)||"inside"===n)return"";var i=t.get("backgroundColor"),r=t.get("borderWidth");e=cp(e);var o,a,s="left"===(o=n)?"right":"right"===o?"left":"top"===o?"bottom":"top",l=Math.max(1.5*Math.round(r),6),u="",h=Rz+":";P(["left","right"],s)>-1?(u+="top:50%",h+="translateY(-50%) rotate("+(a="left"===s?-225:-45)+"deg)"):(u+="left:50%",h+="translateX(-50%) rotate("+(a="top"===s?225:45)+"deg)");var c=a*Math.PI/180,p=l+r,d=p*Math.abs(Math.cos(c))+p*Math.abs(Math.sin(c)),f=e+" solid "+r+"px;";return'<div style="'+["position:absolute;width:"+l+"px;height:"+l+"px;",(u+=";"+s+":-"+Math.round(100*((d-Math.SQRT2*r)/2+Math.SQRT2*r-(d-p)/2))/100+"px")+";"+h+";","border-bottom:"+f,"border-right:"+f,"background-color:"+i+";"].join("")+'"></div>'}(n,i,r)),X(t))o.innerHTML=t+a;else if(t){o.innerHTML="",Y(t)||(t=[t]);for(var s=0;s<t.length;s++)J(t[s])&&t[s].parentNode!==o&&o.appendChild(t[s]);if(a&&o.childNodes.length){var l=document.createElement("div");l.innerHTML=a,o.appendChild(l)}}}else o.innerHTML=""},t.prototype.setEnterable=function(t){this._enterable=t},t.prototype.getSize=function(){var t=this.el;return[t.offsetWidth,t.offsetHeight]},t.prototype.moveTo=function(t,e){var n=this._styleCoord;if(Vz(n,this._zr,this._appendToBody,t,e),null!=n[0]&&null!=n[1]){var i=this.el.style;E(Ez(n[0],n[1]),(function(t){i[t[0]]=t[1]}))}},t.prototype._moveIfResized=function(){var t=this._styleCoord[2],e=this._styleCoord[3];this.moveTo(t*this._zr.getWidth(),e*this._zr.getHeight())},t.prototype.hide=function(){var t=this,e=this.el.style;e.visibility="hidden",e.opacity="0",r.transform3dSupported&&(e.willChange=""),this._show=!1,this._longHideTimeout=setTimeout((function(){return t._longHide=!0}),500)},t.prototype.hideLater=function(t){!this._show||this._inContent&&this._enterable||(t?(this._hideDelay=t,this._show=!1,this._hideTimeout=setTimeout(W(this.hide,this),t)):this.hide())},t.prototype.isShow=function(){return this._show},t.prototype.dispose=function(){this.el.parentNode.removeChild(this.el)},t}(),Fz=function(){function t(t){this._show=!1,this._styleCoord=[0,0,0,0],this._enterable=!0,this._zr=t.getZr(),Hz(this._styleCoord,this._zr,t.getWidth()/2,t.getHeight()/2)}return t.prototype.update=function(t){t.get("alwaysShowContent")&&this._moveIfResized()},t.prototype.show=function(){this._hideTimeout&&clearTimeout(this._hideTimeout),this.el.show(),this._show=!0},t.prototype.setContent=function(t,e,n,i,r){var o=this;q(t)&&ao(""),this.el&&this._zr.remove(this.el);var a=n.getModel("textStyle");this.el=new As({style:{rich:e.richTextStyles,text:t,lineHeight:22,borderWidth:1,borderColor:i,textShadowColor:a.get("textShadowColor"),fill:n.get(["textStyle","color"]),padding:eg(n,"richText"),verticalAlign:"top",align:"left"},z:n.get("z")}),E(["backgroundColor","borderRadius","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY"],(function(t){o.el.style[t]=n.get(t)})),E(["textShadowBlur","textShadowOffsetX","textShadowOffsetY"],(function(t){o.el.style[t]=a.get(t)||0})),this._zr.add(this.el);var s=this;this.el.on("mouseover",(function(){s._enterable&&(clearTimeout(s._hideTimeout),s._show=!0),s._inContent=!0})),this.el.on("mouseout",(function(){s._enterable&&s._show&&s.hideLater(s._hideDelay),s._inContent=!1}))},t.prototype.setEnterable=function(t){this._enterable=t},t.prototype.getSize=function(){var t=this.el,e=this.el.getBoundingRect(),n=Wz(t.style);return[e.width+n.left+n.right,e.height+n.top+n.bottom]},t.prototype.moveTo=function(t,e){var n=this.el;if(n){var i=this._styleCoord;Hz(i,this._zr,t,e),t=i[0],e=i[1];var r=n.style,o=Gz(r.borderWidth||0),a=Wz(r);n.x=t+o+a.left,n.y=e+o+a.top,n.markRedraw()}},t.prototype._moveIfResized=function(){var t=this._styleCoord[2],e=this._styleCoord[3];this.moveTo(t*this._zr.getWidth(),e*this._zr.getHeight())},t.prototype.hide=function(){this.el&&this.el.hide(),this._show=!1},t.prototype.hideLater=function(t){!this._show||this._inContent&&this._enterable||(t?(this._hideDelay=t,this._show=!1,this._hideTimeout=setTimeout(W(this.hide,this),t)):this.hide())},t.prototype.isShow=function(){return this._show},t.prototype.dispose=function(){this._zr.remove(this.el)},t}();function Gz(t){return Math.max(0,t)}function Wz(t){var e=Gz(t.shadowBlur||0),n=Gz(t.shadowOffsetX||0),i=Gz(t.shadowOffsetY||0);return{left:Gz(e-n),right:Gz(e+n),top:Gz(e-i),bottom:Gz(e+i)}}function Hz(t,e,n,i){t[0]=n,t[1]=i,t[2]=t[0]/e.getWidth(),t[3]=t[1]/e.getHeight()}var Yz=new Ts({shape:{x:-1,y:-1,width:2,height:2}}),Uz=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(t,e){if(!r.node&&e.getDom()){var n,i=t.getComponent("tooltip"),o=this._renderMode="auto"===(n=i.get("renderMode"))?r.domSupported?"html":"richText":n||"html";this._tooltipContent="richText"===o?new Fz(e):new Bz(e.getDom(),e,{appendToBody:i.get("appendToBody",!0)})}},e.prototype.render=function(t,e,n){if(!r.node&&n.getDom()){this.group.removeAll(),this._tooltipModel=t,this._ecModel=e,this._api=n,this._alwaysShowContent=t.get("alwaysShowContent");var i=this._tooltipContent;i.update(t),i.setEnterable(t.get("enterable")),this._initGlobalListener(),this._keepShow(),"richText"!==this._renderMode&&t.get("transitionDuration")?Dg(this,"_updatePosition",50,"fixRate"):Ag(this,"_updatePosition")}},e.prototype._initGlobalListener=function(){var t=this._tooltipModel.get("triggerOn");qR("itemTooltip",this._api,W((function(e,n,i){"none"!==t&&(t.indexOf(e)>=0?this._tryShow(n,i):"leave"===e&&this._hide(i))}),this))},e.prototype._keepShow=function(){var t=this._tooltipModel,e=this._ecModel,n=this._api;if(null!=this._lastX&&null!=this._lastY&&"none"!==t.get("triggerOn")){var i=this;clearTimeout(this._refreshUpdateTimeout),this._refreshUpdateTimeout=setTimeout((function(){!n.isDisposed()&&i.manuallyShowTip(t,e,n,{x:i._lastX,y:i._lastY,dataByCoordSys:i._lastDataByCoordSys})}))}},e.prototype.manuallyShowTip=function(t,e,n,i){if(i.from!==this.uid&&!r.node&&n.getDom()){var o=Zz(i,n);this._ticket="";var a=i.dataByCoordSys,s=function(t,e,n){var i=To(t).queryOptionMap,r=i.keys()[0];if(!r||"series"===r)return;var o,a=Ao(e,r,i.get(r),{useDefault:!1,enableAll:!1,enableNone:!1}).models[0];if(!a)return;if(n.getViewOfComponentModel(a).group.traverse((function(e){var n=Ws(e).tooltipConfig;if(n&&n.name===t.name)return o=e,!0})),o)return{componentMainType:r,componentIndex:a.componentIndex,el:o}}(i,e,n);if(s){var l=s.el.getBoundingRect().clone();l.applyTransform(s.el.transform),this._tryShow({offsetX:l.x+l.width/2,offsetY:l.y+l.height/2,target:s.el,position:i.position,positionDefault:"bottom"},o)}else if(i.tooltip&&null!=i.x&&null!=i.y){var u=Yz;u.x=i.x,u.y=i.y,u.update(),Ws(u).tooltipConfig={name:null,option:i.tooltip},this._tryShow({offsetX:i.x,offsetY:i.y,target:u},o)}else if(a)this._tryShow({offsetX:i.x,offsetY:i.y,position:i.position,dataByCoordSys:a,tooltipOption:i.tooltipOption},o);else if(null!=i.seriesIndex){if(this._manuallyAxisShowTip(t,e,n,i))return;var h=tN(i,e),c=h.point[0],p=h.point[1];null!=c&&null!=p&&this._tryShow({offsetX:c,offsetY:p,target:h.el,position:i.position,positionDefault:"bottom"},o)}else null!=i.x&&null!=i.y&&(n.dispatchAction({type:"updateAxisPointer",x:i.x,y:i.y}),this._tryShow({offsetX:i.x,offsetY:i.y,position:i.position,target:n.getZr().findHover(i.x,i.y).target},o))}},e.prototype.manuallyHideTip=function(t,e,n,i){var r=this._tooltipContent;!this._alwaysShowContent&&this._tooltipModel&&r.hideLater(this._tooltipModel.get("hideDelay")),this._lastX=this._lastY=this._lastDataByCoordSys=null,i.from!==this.uid&&this._hide(Zz(i,n))},e.prototype._manuallyAxisShowTip=function(t,e,n,i){var r=i.seriesIndex,o=i.dataIndex,a=e.getComponent("axisPointer").coordSysAxesInfo;if(null!=r&&null!=o&&null!=a){var s=e.getSeriesByIndex(r);if(s)if("axis"===Xz([s.getData().getItemModel(o),s,(s.coordinateSystem||{}).model],this._tooltipModel).get("trigger"))return n.dispatchAction({type:"updateAxisPointer",seriesIndex:r,dataIndex:o,position:i.position}),!0}},e.prototype._tryShow=function(t,e){var n=t.target;if(this._tooltipModel){this._lastX=t.offsetX,this._lastY=t.offsetY;var i=t.dataByCoordSys;if(i&&i.length)this._showAxisTooltip(i,t);else if(n){var r,o;this._lastDataByCoordSys=null,my(n,(function(t){return null!=Ws(t).dataIndex?(r=t,!0):null!=Ws(t).tooltipConfig?(o=t,!0):void 0}),!0),r?this._showSeriesItemTooltip(t,r,e):o?this._showComponentItemTooltip(t,o,e):this._hide(e)}else this._lastDataByCoordSys=null,this._hide(e)}},e.prototype._showOrMove=function(t,e){var n=t.get("showDelay");e=W(e,this),clearTimeout(this._showTimout),n>0?this._showTimout=setTimeout(e,n):e()},e.prototype._showAxisTooltip=function(t,e){var n=this._ecModel,i=this._tooltipModel,r=[e.offsetX,e.offsetY],o=Xz([e.tooltipOption],i),a=this._renderMode,s=[],l=Uf("section",{blocks:[],noHeader:!0}),u=[],h=new ng;E(t,(function(t){E(t.dataByAxis,(function(t){var e=n.getComponent(t.axisDim+"Axis",t.axisIndex),r=t.value;if(e&&null!=r){var o=ER(r,e.axis,n,t.seriesDataIndices,t.valueLabelOpt),c=Uf("section",{header:o,noHeader:!ut(o),sortBlocks:!0,blocks:[]});l.blocks.push(c),E(t.seriesDataIndices,(function(l){var p=n.getSeriesByIndex(l.seriesIndex),d=l.dataIndexInside,f=p.getDataParams(d);if(!(f.dataIndex<0)){f.axisDim=t.axisDim,f.axisIndex=t.axisIndex,f.axisType=t.axisType,f.axisId=t.axisId,f.axisValue=o_(e.axis,{value:r}),f.axisValueLabel=o,f.marker=h.makeTooltipMarker("item",cp(f.color),a);var g=lf(p.formatTooltip(d,!0,null)),y=g.frag;if(y){var v=Xz([p],i).get("valueFormatter");c.blocks.push(v?A({valueFormatter:v},y):y)}g.text&&u.push(g.text),s.push(f)}}))}}))})),l.blocks.reverse(),u.reverse();var c=e.position,p=o.get("order"),d=$f(l,h,a,p,n.get("useUTC"),o.get("textStyle"));d&&u.unshift(d);var f="richText"===a?"\n\n":"<br/>",g=u.join(f);this._showOrMove(o,(function(){this._updateContentNotChangedOnAxis(t,s)?this._updatePosition(o,c,r[0],r[1],this._tooltipContent,s):this._showTooltipContent(o,g,s,Math.random()+"",r[0],r[1],c,null,h)}))},e.prototype._showSeriesItemTooltip=function(t,e,n){var i=this._ecModel,r=Ws(e),o=r.seriesIndex,a=i.getSeriesByIndex(o),s=r.dataModel||a,l=r.dataIndex,u=r.dataType,h=s.getData(u),c=this._renderMode,p=t.positionDefault,d=Xz([h.getItemModel(l),s,a&&(a.coordinateSystem||{}).model],this._tooltipModel,p?{position:p}:null),f=d.get("trigger");if(null==f||"item"===f){var g=s.getDataParams(l,u),y=new ng;g.marker=y.makeTooltipMarker("item",cp(g.color),c);var v=lf(s.formatTooltip(l,!1,u)),m=d.get("order"),x=d.get("valueFormatter"),_=v.frag,b=_?$f(x?A({valueFormatter:x},_):_,y,c,m,i.get("useUTC"),d.get("textStyle")):v.text,w="item_"+s.name+"_"+l;this._showOrMove(d,(function(){this._showTooltipContent(d,b,g,w,t.offsetX,t.offsetY,t.position,t.target,y)})),n({type:"showTip",dataIndexInside:l,dataIndex:h.getRawIndex(l),seriesIndex:o,from:this.uid})}},e.prototype._showComponentItemTooltip=function(t,e,n){var i=Ws(e),r=i.tooltipConfig.option||{};if(X(r)){r={content:r,formatter:r}}var o=[r],a=this._ecModel.getComponent(i.componentMainType,i.componentIndex);a&&o.push(a),o.push({formatter:r.content});var s=t.positionDefault,l=Xz(o,this._tooltipModel,s?{position:s}:null),u=l.get("content"),h=Math.random()+"",c=new ng;this._showOrMove(l,(function(){var n=T(l.get("formatterParams")||{});this._showTooltipContent(l,u,n,h,t.offsetX,t.offsetY,t.position,e,c)})),n({type:"showTip",from:this.uid})},e.prototype._showTooltipContent=function(t,e,n,i,r,o,a,s,l){if(this._ticket="",t.get("showContent")&&t.get("show")){var u=this._tooltipContent,h=t.get("formatter");a=a||t.get("position");var c=e,p=this._getNearestPoint([r,o],n,t.get("trigger"),t.get("borderColor")).color;if(h)if(X(h)){var d=t.ecModel.get("useUTC"),f=Y(n)?n[0]:n;c=h,f&&f.axisType&&f.axisType.indexOf("time")>=0&&(c=zc(f.axisValue,c,d)),c=up(c,n,!0)}else if(U(h)){var g=W((function(e,i){e===this._ticket&&(u.setContent(i,l,t,p,a),this._updatePosition(t,a,r,o,u,n,s))}),this);this._ticket=i,c=h(n,i,g)}else c=h;u.setContent(c,l,t,p,a),u.show(t,p),this._updatePosition(t,a,r,o,u,n,s)}},e.prototype._getNearestPoint=function(t,e,n,i){return"axis"===n||Y(e)?{color:i||("html"===this._renderMode?"#fff":"none")}:Y(e)?void 0:{color:i||e.color||e.borderColor}},e.prototype._updatePosition=function(t,e,n,i,r,o,a){var s=this._api.getWidth(),l=this._api.getHeight();e=e||t.get("position");var u=r.getSize(),h=t.get("align"),c=t.get("verticalAlign"),p=a&&a.getBoundingRect().clone();if(a&&p.applyTransform(a.transform),U(e)&&(e=e([n,i],o,r.el,p,{viewSize:[s,l],contentSize:u.slice()})),Y(e))n=Er(e[0],s),i=Er(e[1],l);else if(q(e)){var d=e;d.width=u[0],d.height=u[1];var f=mp(d,{width:s,height:l});n=f.x,i=f.y,h=null,c=null}else if(X(e)&&a){var g=function(t,e,n,i){var r=n[0],o=n[1],a=Math.ceil(Math.SQRT2*i)+8,s=0,l=0,u=e.width,h=e.height;switch(t){case"inside":s=e.x+u/2-r/2,l=e.y+h/2-o/2;break;case"top":s=e.x+u/2-r/2,l=e.y-o-a;break;case"bottom":s=e.x+u/2-r/2,l=e.y+h+a;break;case"left":s=e.x-r-a,l=e.y+h/2-o/2;break;case"right":s=e.x+u+a,l=e.y+h/2-o/2}return[s,l]}(e,p,u,t.get("borderWidth"));n=g[0],i=g[1]}else{g=function(t,e,n,i,r,o,a){var s=n.getSize(),l=s[0],u=s[1];null!=o&&(t+l+o+2>i?t-=l+o:t+=o);null!=a&&(e+u+a>r?e-=u+a:e+=a);return[t,e]}(n,i,r,s,l,h?null:20,c?null:20);n=g[0],i=g[1]}if(h&&(n-=jz(h)?u[0]/2:"right"===h?u[0]:0),c&&(i-=jz(c)?u[1]/2:"bottom"===c?u[1]:0),Az(t)){g=function(t,e,n,i,r){var o=n.getSize(),a=o[0],s=o[1];return t=Math.min(t+a,i)-a,e=Math.min(e+s,r)-s,t=Math.max(t,0),e=Math.max(e,0),[t,e]}(n,i,r,s,l);n=g[0],i=g[1]}r.moveTo(n,i)},e.prototype._updateContentNotChangedOnAxis=function(t,e){var n=this._lastDataByCoordSys,i=this._cbParamsList,r=!!n&&n.length===t.length;return r&&E(n,(function(n,o){var a=n.dataByAxis||[],s=(t[o]||{}).dataByAxis||[];(r=r&&a.length===s.length)&&E(a,(function(t,n){var o=s[n]||{},a=t.seriesDataIndices||[],l=o.seriesDataIndices||[];(r=r&&t.value===o.value&&t.axisType===o.axisType&&t.axisId===o.axisId&&a.length===l.length)&&E(a,(function(t,e){var n=l[e];r=r&&t.seriesIndex===n.seriesIndex&&t.dataIndex===n.dataIndex})),i&&E(t.seriesDataIndices,(function(t){var n=t.seriesIndex,o=e[n],a=i[n];o&&a&&a.data!==o.data&&(r=!1)}))}))})),this._lastDataByCoordSys=t,this._cbParamsList=e,!!r},e.prototype._hide=function(t){this._lastDataByCoordSys=null,t({type:"hideTip",from:this.uid})},e.prototype.dispose=function(t,e){!r.node&&e.getDom()&&(Ag(this,"_updatePosition"),this._tooltipContent.dispose(),JR("itemTooltip",e))},e.type="tooltip",e}(fg);function Xz(t,e,n){var i,r=e.ecModel;n?(i=new pc(n,r,r),i=new pc(e.option,i,r)):i=e;for(var o=t.length-1;o>=0;o--){var a=t[o];a&&(a instanceof pc&&(a=a.get("tooltip",!0)),X(a)&&(a={formatter:a}),a&&(i=new pc(a,i,r)))}return i}function Zz(t,e){return t.dispatchAction||W(e.dispatchAction,e)}function jz(t){return"center"===t||"middle"===t}var qz=["rect","polygon","keep","clear"];function Kz(t,e){var n=ho(t?t.brush:[]);if(n.length){var i=[];E(n,(function(t){var e=t.hasOwnProperty("toolbox")?t.toolbox:[];e instanceof Array&&(i=i.concat(e))}));var r=t&&t.toolbox;Y(r)&&(r=r[0]),r||(r={feature:{}},t.toolbox=[r]);var o=r.feature||(r.feature={}),a=o.brush||(o.brush={}),s=a.type||(a.type=[]);s.push.apply(s,i),function(t){var e={};E(t,(function(t){e[t]=1})),t.length=0,E(e,(function(e,n){t.push(n)}))}(s),e&&!s.length&&s.push.apply(s,qz)}}var $z=E;function Jz(t){if(t)for(var e in t)if(t.hasOwnProperty(e))return!0}function Qz(t,e,n){var i={};return $z(e,(function(e){var r,o=i[e]=((r=function(){}).prototype.__hidden=r.prototype,new r);$z(t[e],(function(t,i){if(eD.isValidType(i)){var r={type:i,visual:t};n&&n(r,e),o[i]=new eD(r),"opacity"===i&&((r=T(r)).type="colorAlpha",o.__hidden.__alphaForOpacity=new eD(r))}}))})),i}function tV(t,e,n){var i;E(n,(function(t){e.hasOwnProperty(t)&&Jz(e[t])&&(i=!0)})),i&&E(n,(function(n){e.hasOwnProperty(n)&&Jz(e[n])?t[n]=T(e[n]):delete t[n]}))}var eV={lineX:nV(0),lineY:nV(1),rect:{point:function(t,e,n){return t&&n.boundingRect.contain(t[0],t[1])},rect:function(t,e,n){return t&&n.boundingRect.intersect(t)}},polygon:{point:function(t,e,n){return t&&n.boundingRect.contain(t[0],t[1])&&f_(n.range,t[0],t[1])},rect:function(t,e,n){var i=n.range;if(!t||i.length<=1)return!1;var r=t.x,o=t.y,a=t.width,s=t.height,l=i[0];return!!(f_(i,r,o)||f_(i,r+a,o)||f_(i,r,o+s)||f_(i,r+a,o+s)||sr.create(t).contain(l[0],l[1])||Ph(r,o,r+a,o,i)||Ph(r,o,r,o+s,i)||Ph(r+a,o,r+a,o+s,i)||Ph(r,o+s,r+a,o+s,i))||void 0}}};function nV(t){var e=["x","y"],n=["width","height"];return{point:function(e,n,i){if(e){var r=i.range;return iV(e[t],r)}},rect:function(i,r,o){if(i){var a=o.range,s=[i[e[t]],i[e[t]]+i[n[t]]];return s[1]<s[0]&&s.reverse(),iV(s[0],a)||iV(s[1],a)||iV(a[0],s)||iV(a[1],s)}}}}function iV(t,e){return e[0]<=t&&t<=e[1]}var rV=["inBrush","outOfBrush"],oV="__ecBrushSelect",aV="__ecInBrushSelectEvent";function sV(t){t.eachComponent({mainType:"brush"},(function(e){(e.brushTargetManager=new hz(e.option,t)).setInputRanges(e.areas,t)}))}function lV(t,e,n){var i,r,o=[];t.eachComponent({mainType:"brush"},(function(t){n&&"takeGlobalCursor"===n.type&&t.setBrushOption("brush"===n.key?n.brushOption:{brushType:!1})})),sV(t),t.eachComponent({mainType:"brush"},(function(e,n){var a={brushId:e.id,brushIndex:n,brushName:e.name,areas:T(e.areas),selected:[]};o.push(a);var s=e.option,l=s.brushLink,u=[],h=[],c=[],p=!1;n||(i=s.throttleType,r=s.throttleDelay);var d=z(e.areas,(function(t){var e=cV[t.brushType],n=k({boundingRect:e?e(t):void 0},t);return n.selectors=function(t){var e=t.brushType,n={point:function(i){return eV[e].point(i,n,t)},rect:function(i){return eV[e].rect(i,n,t)}};return n}(n),n})),f=Qz(e.option,rV,(function(t){t.mappingMethod="fixed"}));function g(t){return"all"===l||!!u[t]}function y(t){return!!t.length}Y(l)&&E(l,(function(t){u[t]=1})),t.eachSeries((function(n,i){var r=c[i]=[];"parallel"===n.subType?function(t,e){var n=t.coordinateSystem;p=p||n.hasAxisBrushed(),g(e)&&n.eachActiveState(t.getData(),(function(t,e){"active"===t&&(h[e]=1)}))}(n,i):function(n,i,r){if(!n.brushSelector||function(t,e){var n=t.option.seriesIndex;return null!=n&&"all"!==n&&(Y(n)?P(n,e)<0:e!==n)}(e,i))return;if(E(d,(function(i){e.brushTargetManager.controlSeries(i,n,t)&&r.push(i),p=p||y(r)})),g(i)&&y(r)){var o=n.getData();o.each((function(t){hV(n,r,o,t)&&(h[t]=1)}))}}(n,i,r)})),t.eachSeries((function(t,e){var n={seriesId:t.id,seriesIndex:e,seriesName:t.name,dataIndex:[]};a.selected.push(n);var i=c[e],r=t.getData(),o=g(e)?function(t){return h[t]?(n.dataIndex.push(r.getRawIndex(t)),"inBrush"):"outOfBrush"}:function(e){return hV(t,i,r,e)?(n.dataIndex.push(r.getRawIndex(e)),"inBrush"):"outOfBrush"};(g(e)?p:y(i))&&function(t,e,n,i,r,o){var a,s={};function l(t){return dy(n,a,t)}function u(t,e){gy(n,a,t,e)}function h(t,h){a=null==o?t:h;var c=n.getRawDataItem(a);if(!c||!1!==c.visualMap)for(var p=i.call(r,t),d=e[p],f=s[p],g=0,y=f.length;g<y;g++){var v=f[g];d[v]&&d[v].applyVisual(t,l,u)}}E(t,(function(t){var n=eD.prepareVisualTypes(e[t]);s[t]=n})),null==o?n.each(h):n.each([o],h)}(rV,f,r,o)}))})),function(t,e,n,i,r){if(!r)return;var o=t.getZr();if(o[aV])return;o.__ecBrushSelect||(o.__ecBrushSelect=uV);Dg(o,oV,n,e)(t,i)}(e,i,r,o,n)}function uV(t,e){if(!t.isDisposed()){var n=t.getZr();n[aV]=!0,t.dispatchAction({type:"brushSelect",batch:e}),n[aV]=!1}}function hV(t,e,n,i){for(var r=0,o=e.length;r<o;r++){var a=e[r];if(t.brushSelector(i,n,a.selectors,a))return!0}}var cV={rect:function(t){return pV(t.range)},polygon:function(t){for(var e,n=t.range,i=0,r=n.length;i<r;i++){e=e||[[1/0,-1/0],[1/0,-1/0]];var o=n[i];o[0]<e[0][0]&&(e[0][0]=o[0]),o[0]>e[0][1]&&(e[0][1]=o[0]),o[1]<e[1][0]&&(e[1][0]=o[1]),o[1]>e[1][1]&&(e[1][1]=o[1])}return e&&pV(e)}};function pV(t){return new sr(t[0][0],t[1][0],t[0][1]-t[0][0],t[1][1]-t[1][0])}var dV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(t,e){this.ecModel=t,this.api=e,this.model,(this._brushController=new Pk(e.getZr())).on("brush",W(this._onBrush,this)).mount()},e.prototype.render=function(t,e,n,i){this.model=t,this._updateController(t,e,n,i)},e.prototype.updateTransform=function(t,e,n,i){sV(e),this._updateController(t,e,n,i)},e.prototype.updateVisual=function(t,e,n,i){this.updateTransform(t,e,n,i)},e.prototype.updateView=function(t,e,n,i){this._updateController(t,e,n,i)},e.prototype._updateController=function(t,e,n,i){(!i||i.$from!==t.id)&&this._brushController.setPanels(t.brushTargetManager.makePanelOpts(n)).enableBrush(t.brushOption).updateCovers(t.areas.slice())},e.prototype.dispose=function(){this._brushController.dispose()},e.prototype._onBrush=function(t){var e=this.model.id,n=this.model.brushTargetManager.setOutputRanges(t.areas,this.ecModel);(!t.isEnd||t.removeOnClick)&&this.api.dispatchAction({type:"brush",brushId:e,areas:T(n),$from:e}),t.isEnd&&this.api.dispatchAction({type:"brushEnd",brushId:e,areas:T(n),$from:e})},e.type="brush",e}(fg),fV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.areas=[],n.brushOption={},n}return n(e,t),e.prototype.optionUpdated=function(t,e){var n=this.option;!e&&tV(n,t,["inBrush","outOfBrush"]);var i=n.inBrush=n.inBrush||{};n.outOfBrush=n.outOfBrush||{color:"#ddd"},i.hasOwnProperty("liftZ")||(i.liftZ=5)},e.prototype.setAreas=function(t){t&&(this.areas=z(t,(function(t){return gV(this.option,t)}),this))},e.prototype.setBrushOption=function(t){this.brushOption=gV(this.option,t),this.brushType=this.brushOption.brushType},e.type="brush",e.dependencies=["geo","grid","xAxis","yAxis","parallel","series"],e.defaultOption={seriesIndex:"all",brushType:"rect",brushMode:"single",transformable:!0,brushStyle:{borderWidth:1,color:"rgba(210,219,238,0.3)",borderColor:"#D2DBEE"},throttleType:"fixRate",throttleDelay:0,removeOnClick:!0,z:1e4},e}(Ip);function gV(t,e){return C({brushType:t.brushType,brushMode:t.brushMode,transformable:t.transformable,brushStyle:new pc(t.brushStyle).getItemStyle(),removeOnClick:t.removeOnClick,z:t.z},e,!0)}var yV=["rect","polygon","lineX","lineY","keep","clear"],vV=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.render=function(t,e,n){var i,r,o;e.eachComponent({mainType:"brush"},(function(t){i=t.brushType,r=t.brushOption.brushMode||"single",o=o||!!t.areas.length})),this._brushType=i,this._brushMode=r,E(t.get("type",!0),(function(e){t.setIconStatus(e,("keep"===e?"multiple"===r:"clear"===e?o:e===i)?"emphasis":"normal")}))},e.prototype.updateView=function(t,e,n){this.render(t,e,n)},e.prototype.getIcons=function(){var t=this.model,e=t.get("icon",!0),n={};return E(t.get("type",!0),(function(t){e[t]&&(n[t]=e[t])})),n},e.prototype.onclick=function(t,e,n){var i=this._brushType,r=this._brushMode;"clear"===n?(e.dispatchAction({type:"axisAreaSelect",intervals:[]}),e.dispatchAction({type:"brush",command:"clear",areas:[]})):e.dispatchAction({type:"takeGlobalCursor",key:"brush",brushOption:{brushType:"keep"===n?i:i!==n&&n,brushMode:"keep"===n?"multiple"===r?"single":"multiple":r}})},e.getDefaultOption=function(t){return{show:!0,type:yV.slice(),icon:{rect:"M7.3,34.7 M0.4,10V-0.2h9.8 M89.6,10V-0.2h-9.8 M0.4,60v10.2h9.8 M89.6,60v10.2h-9.8 M12.3,22.4V10.5h13.1 M33.6,10.5h7.8 M49.1,10.5h7.8 M77.5,22.4V10.5h-13 M12.3,31.1v8.2 M77.7,31.1v8.2 M12.3,47.6v11.9h13.1 M33.6,59.5h7.6 M49.1,59.5 h7.7 M77.5,47.6v11.9h-13",polygon:"M55.2,34.9c1.7,0,3.1,1.4,3.1,3.1s-1.4,3.1-3.1,3.1 s-3.1-1.4-3.1-3.1S53.5,34.9,55.2,34.9z M50.4,51c1.7,0,3.1,1.4,3.1,3.1c0,1.7-1.4,3.1-3.1,3.1c-1.7,0-3.1-1.4-3.1-3.1 C47.3,52.4,48.7,51,50.4,51z M55.6,37.1l1.5-7.8 M60.1,13.5l1.6-8.7l-7.8,4 M59,19l-1,5.3 M24,16.1l6.4,4.9l6.4-3.3 M48.5,11.6 l-5.9,3.1 M19.1,12.8L9.7,5.1l1.1,7.7 M13.4,29.8l1,7.3l6.6,1.6 M11.6,18.4l1,6.1 M32.8,41.9 M26.6,40.4 M27.3,40.2l6.1,1.6 M49.9,52.1l-5.6-7.6l-4.9-1.2",lineX:"M15.2,30 M19.7,15.6V1.9H29 M34.8,1.9H40.4 M55.3,15.6V1.9H45.9 M19.7,44.4V58.1H29 M34.8,58.1H40.4 M55.3,44.4 V58.1H45.9 M12.5,20.3l-9.4,9.6l9.6,9.8 M3.1,29.9h16.5 M62.5,20.3l9.4,9.6L62.3,39.7 M71.9,29.9H55.4",lineY:"M38.8,7.7 M52.7,12h13.2v9 M65.9,26.6V32 M52.7,46.3h13.2v-9 M24.9,12H11.8v9 M11.8,26.6V32 M24.9,46.3H11.8v-9 M48.2,5.1l-9.3-9l-9.4,9.2 M38.9-3.9V12 M48.2,53.3l-9.3,9l-9.4-9.2 M38.9,62.3V46.4",keep:"M4,10.5V1h10.3 M20.7,1h6.1 M33,1h6.1 M55.4,10.5V1H45.2 M4,17.3v6.6 M55.6,17.3v6.6 M4,30.5V40h10.3 M20.7,40 h6.1 M33,40h6.1 M55.4,30.5V40H45.2 M21,18.9h62.9v48.6H21V18.9z",clear:"M22,14.7l30.9,31 M52.9,14.7L22,45.7 M4.7,16.8V4.2h13.1 M26,4.2h7.8 M41.6,4.2h7.8 M70.3,16.8V4.2H57.2 M4.7,25.9v8.6 M70.3,25.9v8.6 M4.7,43.2v12.6h13.1 M26,55.8h7.8 M41.6,55.8h7.8 M70.3,43.2v12.6H57.2"},title:t.getLocaleModel().get(["toolbox","brush","title"])}},e}(FE);var mV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.layoutMode={type:"box",ignoreSize:!0},n}return n(e,t),e.type="title",e.defaultOption={z:6,show:!0,text:"",target:"blank",subtext:"",subtarget:"blank",left:0,top:0,backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",borderWidth:0,padding:5,itemGap:10,textStyle:{fontSize:18,fontWeight:"bold",color:"#464646"},subtextStyle:{fontSize:12,color:"#6E7079"}},e}(Ip),xV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){if(this.group.removeAll(),t.get("show")){var i=this.group,r=t.getModel("textStyle"),o=t.getModel("subtextStyle"),a=t.get("textAlign"),s=rt(t.get("textBaseline"),t.get("textVerticalAlign")),l=new As({style:Yh(r,{text:t.get("text"),fill:r.getTextColor()},{disableBox:!0}),z2:10}),u=l.getBoundingRect(),h=t.get("subtext"),c=new As({style:Yh(o,{text:h,fill:o.getTextColor(),y:u.height+t.get("itemGap"),verticalAlign:"top"},{disableBox:!0}),z2:10}),p=t.get("link"),d=t.get("sublink"),f=t.get("triggerEvent",!0);l.silent=!p&&!f,c.silent=!d&&!f,p&&l.on("click",(function(){pp(p,"_"+t.get("target"))})),d&&c.on("click",(function(){pp(d,"_"+t.get("subtarget"))})),Ws(l).eventData=Ws(c).eventData=f?{componentType:"title",componentIndex:t.componentIndex}:null,i.add(l),h&&i.add(c);var g=i.getBoundingRect(),y=t.getBoxLayoutParams();y.width=g.width,y.height=g.height;var v=mp(y,{width:n.getWidth(),height:n.getHeight()},t.get("padding"));a||("middle"===(a=t.get("left")||t.get("right"))&&(a="center"),"right"===a?v.x+=v.width:"center"===a&&(v.x+=v.width/2)),s||("center"===(s=t.get("top")||t.get("bottom"))&&(s="middle"),"bottom"===s?v.y+=v.height:"middle"===s&&(v.y+=v.height/2),s=s||"top"),i.x=v.x,i.y=v.y,i.markRedraw();var m={align:a,verticalAlign:s};l.setStyle(m),c.setStyle(m),g=i.getBoundingRect();var x=v.margin,_=t.getItemStyle(["color","opacity"]);_.fill=t.get("backgroundColor");var b=new Ts({shape:{x:g.x-x[3],y:g.y-x[0],width:g.width+x[1]+x[3],height:g.height+x[0]+x[2],r:t.get("borderRadius")},style:_,subPixelOptimize:!0,silent:!0});i.add(b)}},e.type="title",e}(fg);var _V=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.layoutMode="box",n}return n(e,t),e.prototype.init=function(t,e,n){this.mergeDefaultAndTheme(t,n),this._initData()},e.prototype.mergeOption=function(e){t.prototype.mergeOption.apply(this,arguments),this._initData()},e.prototype.setCurrentIndex=function(t){null==t&&(t=this.option.currentIndex);var e=this._data.count();this.option.loop?t=(t%e+e)%e:(t>=e&&(t=e-1),t<0&&(t=0)),this.option.currentIndex=t},e.prototype.getCurrentIndex=function(){return this.option.currentIndex},e.prototype.isIndexMax=function(){return this.getCurrentIndex()>=this._data.count()-1},e.prototype.setPlayState=function(t){this.option.autoPlay=!!t},e.prototype.getPlayState=function(){return!!this.option.autoPlay},e.prototype._initData=function(){var t,e=this.option,n=e.data||[],i=e.axisType,r=this._names=[];"category"===i?(t=[],E(n,(function(e,n){var i,o=xo(fo(e),"");q(e)?(i=T(e)).value=n:i=n,t.push(i),r.push(o)}))):t=n;var o={category:"ordinal",time:"time",value:"number"}[i]||"number";(this._data=new Zm([{name:"value",type:o}],this)).initData(t,r)},e.prototype.getData=function(){return this._data},e.prototype.getCategories=function(){if("category"===this.get("axisType"))return this._names.slice()},e.type="timeline",e.defaultOption={z:4,show:!0,axisType:"time",realtime:!0,left:"20%",top:null,right:"20%",bottom:0,width:null,height:40,padding:5,controlPosition:"left",autoPlay:!1,rewind:!1,loop:!0,playInterval:2e3,currentIndex:0,itemStyle:{},label:{color:"#000"},data:[]},e}(Ip),bV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="timeline.slider",e.defaultOption=gc(_V.defaultOption,{backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",borderWidth:0,orient:"horizontal",inverse:!1,tooltip:{trigger:"item"},symbol:"circle",symbolSize:12,lineStyle:{show:!0,width:2,color:"#DAE1F5"},label:{position:"auto",show:!0,interval:"auto",rotate:0,color:"#A4B1D7"},itemStyle:{color:"#A4B1D7",borderWidth:1},checkpointStyle:{symbol:"circle",symbolSize:15,color:"#316bf3",borderColor:"#fff",borderWidth:2,shadowBlur:2,shadowOffsetX:1,shadowOffsetY:1,shadowColor:"rgba(0, 0, 0, 0.3)",animation:!0,animationDuration:300,animationEasing:"quinticInOut"},controlStyle:{show:!0,showPlayBtn:!0,showPrevBtn:!0,showNextBtn:!0,itemSize:24,itemGap:12,position:"left",playIcon:"path://M31.6,53C17.5,53,6,41.5,6,27.4S17.5,1.8,31.6,1.8C45.7,1.8,57.2,13.3,57.2,27.4S45.7,53,31.6,53z M31.6,3.3 C18.4,3.3,7.5,14.1,7.5,27.4c0,13.3,10.8,24.1,24.1,24.1C44.9,51.5,55.7,40.7,55.7,27.4C55.7,14.1,44.9,3.3,31.6,3.3z M24.9,21.3 c0-2.2,1.6-3.1,3.5-2l10.5,6.1c1.899,1.1,1.899,2.9,0,4l-10.5,6.1c-1.9,1.1-3.5,0.2-3.5-2V21.3z",stopIcon:"path://M30.9,53.2C16.8,53.2,5.3,41.7,5.3,27.6S16.8,2,30.9,2C45,2,56.4,13.5,56.4,27.6S45,53.2,30.9,53.2z M30.9,3.5C17.6,3.5,6.8,14.4,6.8,27.6c0,13.3,10.8,24.1,24.101,24.1C44.2,51.7,55,40.9,55,27.6C54.9,14.4,44.1,3.5,30.9,3.5z M36.9,35.8c0,0.601-0.4,1-0.9,1h-1.3c-0.5,0-0.9-0.399-0.9-1V19.5c0-0.6,0.4-1,0.9-1H36c0.5,0,0.9,0.4,0.9,1V35.8z M27.8,35.8 c0,0.601-0.4,1-0.9,1h-1.3c-0.5,0-0.9-0.399-0.9-1V19.5c0-0.6,0.4-1,0.9-1H27c0.5,0,0.9,0.4,0.9,1L27.8,35.8L27.8,35.8z",nextIcon:"M2,18.5A1.52,1.52,0,0,1,.92,18a1.49,1.49,0,0,1,0-2.12L7.81,9.36,1,3.11A1.5,1.5,0,1,1,3,.89l8,7.34a1.48,1.48,0,0,1,.49,1.09,1.51,1.51,0,0,1-.46,1.1L3,18.08A1.5,1.5,0,0,1,2,18.5Z",prevIcon:"M10,.5A1.52,1.52,0,0,1,11.08,1a1.49,1.49,0,0,1,0,2.12L4.19,9.64,11,15.89a1.5,1.5,0,1,1-2,2.22L1,10.77A1.48,1.48,0,0,1,.5,9.68,1.51,1.51,0,0,1,1,8.58L9,.92A1.5,1.5,0,0,1,10,.5Z",prevBtnSize:18,nextBtnSize:18,color:"#A4B1D7",borderColor:"#A4B1D7",borderWidth:1},emphasis:{label:{show:!0,color:"#6f778d"},itemStyle:{color:"#316BF3"},controlStyle:{color:"#316BF3",borderColor:"#316BF3",borderWidth:2}},progress:{lineStyle:{color:"#316BF3"},itemStyle:{color:"#316BF3"},label:{color:"#6f778d"}},data:[]}),e}(_V);R(bV,sf.prototype);var wV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="timeline",e}(fg),SV=function(t){function e(e,n,i,r){var o=t.call(this,e,n,i)||this;return o.type=r||"value",o}return n(e,t),e.prototype.getLabelModel=function(){return this.model.getModel("label")},e.prototype.isHorizontal=function(){return"horizontal"===this.model.get("orient")},e}(G_),MV=Math.PI,IV=So(),TV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(t,e){this.api=e},e.prototype.render=function(t,e,n){if(this.model=t,this.api=n,this.ecModel=e,this.group.removeAll(),t.get("show",!0)){var i=this._layout(t,n),r=this._createGroup("_mainGroup"),o=this._createGroup("_labelGroup"),a=this._axis=this._createAxis(i,t);t.formatTooltip=function(t){return Uf("nameValue",{noName:!0,value:a.scale.getLabel({value:t})})},E(["AxisLine","AxisTick","Control","CurrentPointer"],(function(e){this["_render"+e](i,r,a,t)}),this),this._renderAxisLabel(i,o,a,t),this._position(i,t)}this._doPlayStop(),this._updateTicksStatus()},e.prototype.remove=function(){this._clearTimer(),this.group.removeAll()},e.prototype.dispose=function(){this._clearTimer()},e.prototype._layout=function(t,e){var n,i,r,o,a=t.get(["label","position"]),s=t.get("orient"),l=function(t,e){return mp(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()},t.get("padding"))}(t,e),u={horizontal:"center",vertical:(n=null==a||"auto"===a?"horizontal"===s?l.y+l.height/2<e.getHeight()/2?"-":"+":l.x+l.width/2<e.getWidth()/2?"+":"-":X(a)?{horizontal:{top:"-",bottom:"+"},vertical:{left:"-",right:"+"}}[s][a]:a)>=0||"+"===n?"left":"right"},h={horizontal:n>=0||"+"===n?"top":"bottom",vertical:"middle"},c={horizontal:0,vertical:MV/2},p="vertical"===s?l.height:l.width,d=t.getModel("controlStyle"),f=d.get("show",!0),g=f?d.get("itemSize"):0,y=f?d.get("itemGap"):0,v=g+y,m=t.get(["label","rotate"])||0;m=m*MV/180;var x=d.get("position",!0),_=f&&d.get("showPlayBtn",!0),b=f&&d.get("showPrevBtn",!0),w=f&&d.get("showNextBtn",!0),S=0,M=p;"left"===x||"bottom"===x?(_&&(i=[0,0],S+=v),b&&(r=[S,0],S+=v),w&&(o=[M-g,0],M-=v)):(_&&(i=[M-g,0],M-=v),b&&(r=[0,0],S+=v),w&&(o=[M-g,0],M-=v));var I=[S,M];return t.get("inverse")&&I.reverse(),{viewRect:l,mainLength:p,orient:s,rotation:c[s],labelRotation:m,labelPosOpt:n,labelAlign:t.get(["label","align"])||u[s],labelBaseline:t.get(["label","verticalAlign"])||t.get(["label","baseline"])||h[s],playPosition:i,prevBtnPosition:r,nextBtnPosition:o,axisExtent:I,controlSize:g,controlGap:y}},e.prototype._position=function(t,e){var n=this._mainGroup,i=this._labelGroup,r=t.viewRect;if("vertical"===t.orient){var o=[1,0,0,1,0,0],a=r.x,s=r.y+r.height;Ei(o,o,[-a,-s]),zi(o,o,-MV/2),Ei(o,o,[a,s]),(r=r.clone()).applyTransform(o)}var l=y(r),u=y(n.getBoundingRect()),h=y(i.getBoundingRect()),c=[n.x,n.y],p=[i.x,i.y];p[0]=c[0]=l[0][0];var d,f=t.labelPosOpt;null==f||X(f)?(v(c,u,l,1,d="+"===f?0:1),v(p,h,l,1,1-d)):(v(c,u,l,1,d=f>=0?0:1),p[1]=c[1]+f);function g(t){t.originX=l[0][0]-t.x,t.originY=l[1][0]-t.y}function y(t){return[[t.x,t.x+t.width],[t.y,t.y+t.height]]}function v(t,e,n,i,r){t[i]+=n[i][r]-e[i][r]}n.setPosition(c),i.setPosition(p),n.rotation=i.rotation=t.rotation,g(n),g(i)},e.prototype._createAxis=function(t,e){var n=e.getData(),i=e.get("axisType"),r=function(t,e){if(e=e||t.get("type"))switch(e){case"category":return new gx({ordinalMeta:t.getCategories(),extent:[1/0,-1/0]});case"time":return new Px({locale:t.ecModel.getLocaleModel(),useUTC:t.ecModel.get("useUTC")});default:return new vx}}(e,i);r.getTicks=function(){return n.mapArray(["value"],(function(t){return{value:t}}))};var o=n.getDataExtent("value");r.setExtent(o[0],o[1]),r.calcNiceTicks();var a=new SV("value",r,t.axisExtent,i);return a.model=e,a},e.prototype._createGroup=function(t){var e=this[t]=new Cr;return this.group.add(e),e},e.prototype._renderAxisLine=function(t,e,n,i){var r=n.getExtent();if(i.get(["lineStyle","show"])){var o=new Eu({shape:{x1:r[0],y1:0,x2:r[1],y2:0},style:A({lineCap:"round"},i.getModel("lineStyle").getLineStyle()),silent:!0,z2:1});e.add(o);var a=this._progressLine=new Eu({shape:{x1:r[0],x2:this._currentPointer?this._currentPointer.x:r[0],y1:0,y2:0},style:k({lineCap:"round",lineWidth:o.style.lineWidth},i.getModel(["progress","lineStyle"]).getLineStyle()),silent:!0,z2:1});e.add(a)}},e.prototype._renderAxisTick=function(t,e,n,i){var r=this,o=i.getData(),a=n.scale.getTicks();this._tickSymbols=[],E(a,(function(t){var a=n.dataToCoord(t.value),s=o.getItemModel(t.value),l=s.getModel("itemStyle"),u=s.getModel(["emphasis","itemStyle"]),h=s.getModel(["progress","itemStyle"]),c={x:a,y:0,onclick:W(r._changeTimeline,r,t.value)},p=CV(s,l,e,c);p.ensureState("emphasis").style=u.getItemStyle(),p.ensureState("progress").style=h.getItemStyle(),Pl(p);var d=Ws(p);s.get("tooltip")?(d.dataIndex=t.value,d.dataModel=i):d.dataIndex=d.dataModel=null,r._tickSymbols.push(p)}))},e.prototype._renderAxisLabel=function(t,e,n,i){var r=this;if(n.getLabelModel().get("show")){var o=i.getData(),a=n.getViewLabels();this._tickLabels=[],E(a,(function(i){var a=i.tickValue,s=o.getItemModel(a),l=s.getModel("label"),u=s.getModel(["emphasis","label"]),h=s.getModel(["progress","label"]),c=n.dataToCoord(i.tickValue),p=new As({x:c,y:0,rotation:t.labelRotation-t.rotation,onclick:W(r._changeTimeline,r,a),silent:!1,style:Yh(l,{text:i.formattedLabel,align:t.labelAlign,verticalAlign:t.labelBaseline})});p.ensureState("emphasis").style=Yh(u),p.ensureState("progress").style=Yh(h),e.add(p),Pl(p),IV(p).dataIndex=a,r._tickLabels.push(p)}))}},e.prototype._renderControl=function(t,e,n,i){var r=t.controlSize,o=t.rotation,a=i.getModel("controlStyle").getItemStyle(),s=i.getModel(["emphasis","controlStyle"]).getItemStyle(),l=i.getPlayState(),u=i.get("inverse",!0);function h(t,n,l,u){if(t){var h=gr(rt(i.get(["controlStyle",n+"BtnSize"]),r),r),c=function(t,e,n,i){var r=i.style,o=Lh(t.get(["controlStyle",e]),i||{},new sr(n[0],n[1],n[2],n[3]));r&&o.setStyle(r);return o}(i,n+"Icon",[0,-h/2,h,h],{x:t[0],y:t[1],originX:r/2,originY:0,rotation:u?-o:0,rectHover:!0,style:a,onclick:l});c.ensureState("emphasis").style=s,e.add(c),Pl(c)}}h(t.nextBtnPosition,"next",W(this._changeTimeline,this,u?"-":"+")),h(t.prevBtnPosition,"prev",W(this._changeTimeline,this,u?"+":"-")),h(t.playPosition,l?"stop":"play",W(this._handlePlayClick,this,!l),!0)},e.prototype._renderCurrentPointer=function(t,e,n,i){var r=i.getData(),o=i.getCurrentIndex(),a=r.getItemModel(o).getModel("checkpointStyle"),s=this,l={onCreate:function(t){t.draggable=!0,t.drift=W(s._handlePointerDrag,s),t.ondragend=W(s._handlePointerDragend,s),DV(t,s._progressLine,o,n,i,!0)},onUpdate:function(t){DV(t,s._progressLine,o,n,i)}};this._currentPointer=CV(a,a,this._mainGroup,{},this._currentPointer,l)},e.prototype._handlePlayClick=function(t){this._clearTimer(),this.api.dispatchAction({type:"timelinePlayChange",playState:t,from:this.uid})},e.prototype._handlePointerDrag=function(t,e,n){this._clearTimer(),this._pointerChangeTimeline([n.offsetX,n.offsetY])},e.prototype._handlePointerDragend=function(t){this._pointerChangeTimeline([t.offsetX,t.offsetY],!0)},e.prototype._pointerChangeTimeline=function(t,e){var n=this._toAxisCoord(t)[0],i=Vr(this._axis.getExtent().slice());n>i[1]&&(n=i[1]),n<i[0]&&(n=i[0]),this._currentPointer.x=n,this._currentPointer.markRedraw(),this._progressLine.shape.x2=n,this._progressLine.dirty();var r=this._findNearestTick(n),o=this.model;(e||r!==o.getCurrentIndex()&&o.get("realtime"))&&this._changeTimeline(r)},e.prototype._doPlayStop=function(){var t=this;this._clearTimer(),this.model.getPlayState()&&(this._timer=setTimeout((function(){var e=t.model;t._changeTimeline(e.getCurrentIndex()+(e.get("rewind",!0)?-1:1))}),this.model.get("playInterval")))},e.prototype._toAxisCoord=function(t){return Ih(t,this._mainGroup.getLocalTransform(),!0)},e.prototype._findNearestTick=function(t){var e,n=this.model.getData(),i=1/0,r=this._axis;return n.each(["value"],(function(n,o){var a=r.dataToCoord(n),s=Math.abs(a-t);s<i&&(i=s,e=o)})),e},e.prototype._clearTimer=function(){this._timer&&(clearTimeout(this._timer),this._timer=null)},e.prototype._changeTimeline=function(t){var e=this.model.getCurrentIndex();"+"===t?t=e+1:"-"===t&&(t=e-1),this.api.dispatchAction({type:"timelineChange",currentIndex:t,from:this.uid})},e.prototype._updateTicksStatus=function(){var t=this.model.getCurrentIndex(),e=this._tickSymbols,n=this._tickLabels;if(e)for(var i=0;i<e.length;i++)e&&e[i]&&e[i].toggleState("progress",i<t);if(n)for(i=0;i<n.length;i++)n&&n[i]&&n[i].toggleState("progress",IV(n[i]).dataIndex<=t)},e.type="timeline.slider",e}(wV);function CV(t,e,n,i,r,o){var a=e.get("color");r?(r.setColor(a),n.add(r),o&&o.onUpdate(r)):((r=ky(t.get("symbol"),-1,-1,2,2,a)).setStyle("strokeNoScale",!0),n.add(r),o&&o.onCreate(r));var s=e.getItemStyle(["color"]);r.setStyle(s),i=C({rectHover:!0,z2:100},i,!0);var l=Ly(t.get("symbolSize"));i.scaleX=l[0]/2,i.scaleY=l[1]/2;var u=Py(t.get("symbolOffset"),l);u&&(i.x=(i.x||0)+u[0],i.y=(i.y||0)+u[1]);var h=t.get("symbolRotate");return i.rotation=(h||0)*Math.PI/180||0,r.attr(i),r.updateTransform(),r}function DV(t,e,n,i,r,o){if(!t.dragging){var a=r.getModel("checkpointStyle"),s=i.dataToCoord(r.getData().get("value",n));if(o||!a.get("animation",!0))t.attr({x:s,y:0}),e&&e.attr({shape:{x2:s}});else{var l={duration:a.get("animationDuration",!0),easing:a.get("animationEasing",!0)};t.stopAnimation(null,!0),t.animateTo({x:s,y:0},l),e&&e.animateTo({shape:{x2:s}},l)}}}function AV(t){var e=t&&t.timeline;Y(e)||(e=e?[e]:[]),E(e,(function(t){t&&function(t){var e=t.type,n={number:"value",time:"time"};n[e]&&(t.axisType=n[e],delete t.type);if(kV(t),LV(t,"controlPosition")){var i=t.controlStyle||(t.controlStyle={});LV(i,"position")||(i.position=t.controlPosition),"none"!==i.position||LV(i,"show")||(i.show=!1,delete i.position),delete t.controlPosition}E(t.data||[],(function(t){q(t)&&!Y(t)&&(!LV(t,"value")&&LV(t,"name")&&(t.value=t.name),kV(t))}))}(t)}))}function kV(t){var e=t.itemStyle||(t.itemStyle={}),n=e.emphasis||(e.emphasis={}),i=t.label||t.label||{},r=i.normal||(i.normal={}),o={normal:1,emphasis:1};E(i,(function(t,e){o[e]||LV(r,e)||(r[e]=t)})),n.label&&!LV(i,"emphasis")&&(i.emphasis=n.label,delete n.label)}function LV(t,e){return t.hasOwnProperty(e)}function PV(t,e){if(!t)return!1;for(var n=Y(t)?t:[t],i=0;i<n.length;i++)if(n[i]&&n[i][e])return!0;return!1}function OV(t){co(t,"label",["show"])}var RV=So(),NV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.createdBySelf=!1,n}return n(e,t),e.prototype.init=function(t,e,n){this.mergeDefaultAndTheme(t,n),this._mergeOption(t,n,!1,!0)},e.prototype.isAnimationEnabled=function(){if(r.node)return!1;var t=this.__hostSeries;return this.getShallow("animation")&&t&&t.isAnimationEnabled()},e.prototype.mergeOption=function(t,e){this._mergeOption(t,e,!1,!1)},e.prototype._mergeOption=function(t,e,n,i){var r=this.mainType;n||e.eachSeries((function(t){var n=t.get(this.mainType,!0),o=RV(t)[r];n&&n.data?(o?o._mergeOption(n,e,!0):(i&&OV(n),E(n.data,(function(t){t instanceof Array?(OV(t[0]),OV(t[1])):OV(t)})),A(o=this.createMarkerModelFromSeries(n,this,e),{mainType:this.mainType,seriesIndex:t.seriesIndex,name:t.name,createdBySelf:!0}),o.__hostSeries=t),RV(t)[r]=o):RV(t)[r]=null}),this)},e.prototype.formatTooltip=function(t,e,n){var i=this.getData(),r=this.getRawValue(t),o=i.getName(t);return Uf("section",{header:this.name,blocks:[Uf("nameValue",{name:o,value:r,noName:!o,noValue:null==r})]})},e.prototype.getData=function(){return this._data},e.prototype.setData=function(t){this._data=t},e.getMarkerModelFromSeries=function(t,e){return RV(t)[e]},e.type="marker",e.dependencies=["series","grid","polar","geo"],e}(Ip);R(NV,sf.prototype);var EV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.createMarkerModelFromSeries=function(t,n,i){return new e(t,n,i)},e.type="markPoint",e.defaultOption={z:5,symbol:"pin",symbolSize:50,tooltip:{trigger:"item"},label:{show:!0,position:"inside"},itemStyle:{borderWidth:2},emphasis:{label:{show:!0}}},e}(NV);function zV(t,e,n,i,r,o){var a=[],s=tx(e,i)?e.getCalculationInfo("stackResultDimension"):i,l=HV(e,s,t),u=e.indicesOfNearest(s,l)[0];a[r]=e.get(n,u),a[o]=e.get(s,u);var h=e.get(i,u),c=Br(e.get(i,u));return(c=Math.min(c,20))>=0&&(a[o]=+a[o].toFixed(c)),[a,h]}var VV={min:H(zV,"min"),max:H(zV,"max"),average:H(zV,"average"),median:H(zV,"median")};function BV(t,e){var n=t.getData(),i=t.coordinateSystem;if(e&&!function(t){return!isNaN(parseFloat(t.x))&&!isNaN(parseFloat(t.y))}(e)&&!Y(e.coord)&&i){var r=i.dimensions,o=FV(e,n,i,t);if((e=T(e)).type&&VV[e.type]&&o.baseAxis&&o.valueAxis){var a=P(r,o.baseAxis.dim),s=P(r,o.valueAxis.dim),l=VV[e.type](n,o.baseDataDim,o.valueDataDim,a,s);e.coord=l[0],e.value=l[1]}else{for(var u=[null!=e.xAxis?e.xAxis:e.radiusAxis,null!=e.yAxis?e.yAxis:e.angleAxis],h=0;h<2;h++)VV[u[h]]&&(u[h]=HV(n,n.mapDimension(r[h]),u[h]));e.coord=u}}return e}function FV(t,e,n,i){var r={};return null!=t.valueIndex||null!=t.valueDim?(r.valueDataDim=null!=t.valueIndex?e.getDimension(t.valueIndex):t.valueDim,r.valueAxis=n.getAxis(function(t,e){var n=t.getData().getDimensionInfo(e);return n&&n.coordDim}(i,r.valueDataDim)),r.baseAxis=n.getOtherAxis(r.valueAxis),r.baseDataDim=e.mapDimension(r.baseAxis.dim)):(r.baseAxis=i.getBaseAxis(),r.valueAxis=n.getOtherAxis(r.baseAxis),r.baseDataDim=e.mapDimension(r.baseAxis.dim),r.valueDataDim=e.mapDimension(r.valueAxis.dim)),r}function GV(t,e){return!(t&&t.containData&&e.coord&&!function(t){return!(isNaN(parseFloat(t.x))&&isNaN(parseFloat(t.y)))}(e))||t.containData(e.coord)}function WV(t,e){return t?function(t,n,i,r){return pf(r<2?t.coord&&t.coord[r]:t.value,e[r])}:function(t,n,i,r){return pf(t.value,e[r])}}function HV(t,e,n){if("average"===n){var i=0,r=0;return t.each(e,(function(t,e){isNaN(t)||(i+=t,r++)})),i/r}return"median"===n?t.getMedian(e):t.getDataExtent(e)["max"===n?1:0]}var YV=So(),UV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(){this.markerGroupMap=ft()},e.prototype.render=function(t,e,n){var i=this,r=this.markerGroupMap;r.each((function(t){YV(t).keep=!1})),e.eachSeries((function(t){var r=NV.getMarkerModelFromSeries(t,i.type);r&&i.renderSeries(t,r,e,n)})),r.each((function(t){!YV(t).keep&&i.group.remove(t.group)}))},e.prototype.markKeep=function(t){YV(t).keep=!0},e.prototype.blurSeries=function(t){var e=this;E(t,(function(t){var n=NV.getMarkerModelFromSeries(t,e.type);n&&n.getData().eachItemGraphicEl((function(t){t&&bl(t)}))}))},e.type="marker",e}(fg);function XV(t,e,n){var i=e.coordinateSystem;t.each((function(r){var o,a=t.getItemModel(r),s=Er(a.get("x"),n.getWidth()),l=Er(a.get("y"),n.getHeight());if(isNaN(s)||isNaN(l)){if(e.getMarkerPosition)o=e.getMarkerPosition(t.getValues(t.dimensions,r));else if(i){var u=t.get(i.dimensions[0],r),h=t.get(i.dimensions[1],r);o=i.dataToPoint([u,h])}}else o=[s,l];isNaN(s)||(o[0]=s),isNaN(l)||(o[1]=l),t.setItemLayout(r,o)}))}var ZV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.updateTransform=function(t,e,n){e.eachSeries((function(t){var e=NV.getMarkerModelFromSeries(t,"markPoint");e&&(XV(e.getData(),t,n),this.markerGroupMap.get(t.id).updateLayout())}),this)},e.prototype.renderSeries=function(t,e,n,i){var r=t.coordinateSystem,o=t.id,a=t.getData(),s=this.markerGroupMap,l=s.get(o)||s.set(o,new Zw),u=function(t,e,n){var i;i=t?z(t&&t.dimensions,(function(t){return A(A({},e.getData().getDimensionInfo(e.getData().mapDimension(t))||{}),{name:t,ordinalMeta:null})})):[{name:"value",type:"float"}];var r=new Zm(i,n),o=z(n.get("data"),H(BV,e));t&&(o=B(o,H(GV,t)));var a=WV(!!t,i);return r.initData(o,null,a),r}(r,t,e);e.setData(u),XV(e.getData(),t,i),u.each((function(t){var n=u.getItemModel(t),i=n.getShallow("symbol"),r=n.getShallow("symbolSize"),o=n.getShallow("symbolRotate"),s=n.getShallow("symbolOffset"),l=n.getShallow("symbolKeepAspect");if(U(i)||U(r)||U(o)||U(s)){var h=e.getRawValue(t),c=e.getDataParams(t);U(i)&&(i=i(h,c)),U(r)&&(r=r(h,c)),U(o)&&(o=o(h,c)),U(s)&&(s=s(h,c))}var p=n.getModel("itemStyle").getItemStyle(),d=fy(a,"color");p.fill||(p.fill=d),u.setItemVisual(t,{symbol:i,symbolSize:r,symbolRotate:o,symbolOffset:s,symbolKeepAspect:l,style:p})})),l.updateData(u),this.group.add(l.group),u.eachItemGraphicEl((function(t){t.traverse((function(t){Ws(t).dataModel=e}))})),this.markKeep(l),l.group.silent=e.get("silent")||t.get("silent")},e.type="markPoint",e}(UV);var jV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.createMarkerModelFromSeries=function(t,n,i){return new e(t,n,i)},e.type="markLine",e.defaultOption={z:5,symbol:["circle","arrow"],symbolSize:[8,16],symbolOffset:0,precision:2,tooltip:{trigger:"item"},label:{show:!0,position:"end",distance:5},lineStyle:{type:"dashed"},emphasis:{label:{show:!0},lineStyle:{width:3}},animationEasing:"linear"},e}(NV),qV=So(),KV=function(t,e,n,i){var r,o=t.getData();if(Y(i))r=i;else{var a=i.type;if("min"===a||"max"===a||"average"===a||"median"===a||null!=i.xAxis||null!=i.yAxis){var s=void 0,l=void 0;if(null!=i.yAxis||null!=i.xAxis)s=e.getAxis(null!=i.yAxis?"y":"x"),l=it(i.yAxis,i.xAxis);else{var u=FV(i,o,e,t);s=u.valueAxis,l=HV(o,ex(o,u.valueDataDim),a)}var h="x"===s.dim?0:1,c=1-h,p=T(i),d={coord:[]};p.type=null,p.coord=[],p.coord[c]=-1/0,d.coord[c]=1/0;var f=n.get("precision");f>=0&&j(l)&&(l=+l.toFixed(Math.min(f,20))),p.coord[h]=d.coord[h]=l,r=[p,d,{type:a,valueIndex:i.valueIndex,value:l}]}else r=[]}var g=[BV(t,r[0]),BV(t,r[1]),A({},r[2])];return g[2].type=g[2].type||null,C(g[2],g[0]),C(g[2],g[1]),g};function $V(t){return!isNaN(t)&&!isFinite(t)}function JV(t,e,n,i){var r=1-t,o=i.dimensions[t];return $V(e[r])&&$V(n[r])&&e[t]===n[t]&&i.getAxis(o).containData(e[t])}function QV(t,e){if("cartesian2d"===t.type){var n=e[0].coord,i=e[1].coord;if(n&&i&&(JV(1,n,i,t)||JV(0,n,i,t)))return!0}return GV(t,e[0])&&GV(t,e[1])}function tB(t,e,n,i,r){var o,a=i.coordinateSystem,s=t.getItemModel(e),l=Er(s.get("x"),r.getWidth()),u=Er(s.get("y"),r.getHeight());if(isNaN(l)||isNaN(u)){if(i.getMarkerPosition)o=i.getMarkerPosition(t.getValues(t.dimensions,e));else{var h=a.dimensions,c=t.get(h[0],e),p=t.get(h[1],e);o=a.dataToPoint([c,p])}if(sS(a,"cartesian2d")){var d=a.getAxis("x"),f=a.getAxis("y");h=a.dimensions;$V(t.get(h[0],e))?o[0]=d.toGlobalCoord(d.getExtent()[n?0:1]):$V(t.get(h[1],e))&&(o[1]=f.toGlobalCoord(f.getExtent()[n?0:1]))}isNaN(l)||(o[0]=l),isNaN(u)||(o[1]=u)}else o=[l,u];t.setItemLayout(e,o)}var eB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.updateTransform=function(t,e,n){e.eachSeries((function(t){var e=NV.getMarkerModelFromSeries(t,"markLine");if(e){var i=e.getData(),r=qV(e).from,o=qV(e).to;r.each((function(e){tB(r,e,!0,t,n),tB(o,e,!1,t,n)})),i.each((function(t){i.setItemLayout(t,[r.getItemLayout(t),o.getItemLayout(t)])})),this.markerGroupMap.get(t.id).updateLayout()}}),this)},e.prototype.renderSeries=function(t,e,n,i){var r=t.coordinateSystem,o=t.id,a=t.getData(),s=this.markerGroupMap,l=s.get(o)||s.set(o,new dA);this.group.add(l.group);var u=function(t,e,n){var i;i=t?z(t&&t.dimensions,(function(t){return A(A({},e.getData().getDimensionInfo(e.getData().mapDimension(t))||{}),{name:t,ordinalMeta:null})})):[{name:"value",type:"float"}];var r=new Zm(i,n),o=new Zm(i,n),a=new Zm([],n),s=z(n.get("data"),H(KV,e,t,n));t&&(s=B(s,H(QV,t)));var l=WV(!!t,i);return r.initData(z(s,(function(t){return t[0]})),null,l),o.initData(z(s,(function(t){return t[1]})),null,l),a.initData(z(s,(function(t){return t[2]}))),a.hasItemOption=!0,{from:r,to:o,line:a}}(r,t,e),h=u.from,c=u.to,p=u.line;qV(e).from=h,qV(e).to=c,e.setData(p);var d=e.get("symbol"),f=e.get("symbolSize"),g=e.get("symbolRotate"),y=e.get("symbolOffset");function v(e,n,r){var o=e.getItemModel(n);tB(e,n,r,t,i);var s=o.getModel("itemStyle").getItemStyle();null==s.fill&&(s.fill=fy(a,"color")),e.setItemVisual(n,{symbolKeepAspect:o.get("symbolKeepAspect"),symbolOffset:rt(o.get("symbolOffset",!0),y[r?0:1]),symbolRotate:rt(o.get("symbolRotate",!0),g[r?0:1]),symbolSize:rt(o.get("symbolSize"),f[r?0:1]),symbol:rt(o.get("symbol",!0),d[r?0:1]),style:s})}Y(d)||(d=[d,d]),Y(f)||(f=[f,f]),Y(g)||(g=[g,g]),Y(y)||(y=[y,y]),u.from.each((function(t){v(h,t,!0),v(c,t,!1)})),p.each((function(t){var e=p.getItemModel(t).getModel("lineStyle").getLineStyle();p.setItemLayout(t,[h.getItemLayout(t),c.getItemLayout(t)]),null==e.stroke&&(e.stroke=h.getItemVisual(t,"style").fill),p.setItemVisual(t,{fromSymbolKeepAspect:h.getItemVisual(t,"symbolKeepAspect"),fromSymbolOffset:h.getItemVisual(t,"symbolOffset"),fromSymbolRotate:h.getItemVisual(t,"symbolRotate"),fromSymbolSize:h.getItemVisual(t,"symbolSize"),fromSymbol:h.getItemVisual(t,"symbol"),toSymbolKeepAspect:c.getItemVisual(t,"symbolKeepAspect"),toSymbolOffset:c.getItemVisual(t,"symbolOffset"),toSymbolRotate:c.getItemVisual(t,"symbolRotate"),toSymbolSize:c.getItemVisual(t,"symbolSize"),toSymbol:c.getItemVisual(t,"symbol"),style:e})})),l.updateData(p),u.line.eachItemGraphicEl((function(t,n){t.traverse((function(t){Ws(t).dataModel=e}))})),this.markKeep(l),l.group.silent=e.get("silent")||t.get("silent")},e.type="markLine",e}(UV);var nB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.createMarkerModelFromSeries=function(t,n,i){return new e(t,n,i)},e.type="markArea",e.defaultOption={z:1,tooltip:{trigger:"item"},animation:!1,label:{show:!0,position:"top"},itemStyle:{borderWidth:0},emphasis:{label:{show:!0,position:"top"}}},e}(NV),iB=So(),rB=function(t,e,n,i){var r=BV(t,i[0]),o=BV(t,i[1]),a=r.coord,s=o.coord;a[0]=it(a[0],-1/0),a[1]=it(a[1],-1/0),s[0]=it(s[0],1/0),s[1]=it(s[1],1/0);var l=D([{},r,o]);return l.coord=[r.coord,o.coord],l.x0=r.x,l.y0=r.y,l.x1=o.x,l.y1=o.y,l};function oB(t){return!isNaN(t)&&!isFinite(t)}function aB(t,e,n,i){var r=1-t;return oB(e[r])&&oB(n[r])}function sB(t,e){var n=e.coord[0],i=e.coord[1];return!!(sS(t,"cartesian2d")&&n&&i&&(aB(1,n,i)||aB(0,n,i)))||(GV(t,{coord:n,x:e.x0,y:e.y0})||GV(t,{coord:i,x:e.x1,y:e.y1}))}function lB(t,e,n,i,r){var o,a=i.coordinateSystem,s=t.getItemModel(e),l=Er(s.get(n[0]),r.getWidth()),u=Er(s.get(n[1]),r.getHeight());if(isNaN(l)||isNaN(u)){if(i.getMarkerPosition)o=i.getMarkerPosition(t.getValues(n,e));else{var h=[d=t.get(n[0],e),f=t.get(n[1],e)];a.clampData&&a.clampData(h,h),o=a.dataToPoint(h,!0)}if(sS(a,"cartesian2d")){var c=a.getAxis("x"),p=a.getAxis("y"),d=t.get(n[0],e),f=t.get(n[1],e);oB(d)?o[0]=c.toGlobalCoord(c.getExtent()["x0"===n[0]?0:1]):oB(f)&&(o[1]=p.toGlobalCoord(p.getExtent()["y0"===n[1]?0:1]))}isNaN(l)||(o[0]=l),isNaN(u)||(o[1]=u)}else o=[l,u];return o}var uB=[["x0","y0"],["x1","y0"],["x1","y1"],["x0","y1"]],hB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.updateTransform=function(t,e,n){e.eachSeries((function(t){var e=NV.getMarkerModelFromSeries(t,"markArea");if(e){var i=e.getData();i.each((function(e){var r=z(uB,(function(r){return lB(i,e,r,t,n)}));i.setItemLayout(e,r),i.getItemGraphicEl(e).setShape("points",r)}))}}),this)},e.prototype.renderSeries=function(t,e,n,i){var r=t.coordinateSystem,o=t.id,a=t.getData(),s=this.markerGroupMap,l=s.get(o)||s.set(o,{group:new Cr});this.group.add(l.group),this.markKeep(l);var u=function(t,e,n){var i,r,o=["x0","y0","x1","y1"];if(t){var a=z(t&&t.dimensions,(function(t){var n=e.getData();return A(A({},n.getDimensionInfo(n.mapDimension(t))||{}),{name:t,ordinalMeta:null})}));r=z(o,(function(t,e){return{name:t,type:a[e%2].type}})),i=new Zm(r,n)}else i=new Zm(r=[{name:"value",type:"float"}],n);var s=z(n.get("data"),H(rB,e,t,n));t&&(s=B(s,H(sB,t)));var l=t?function(t,e,n,i){return pf(t.coord[Math.floor(i/2)][i%2],r[i])}:function(t,e,n,i){return pf(t.value,r[i])};return i.initData(s,null,l),i.hasItemOption=!0,i}(r,t,e);e.setData(u),u.each((function(e){var n=z(uB,(function(n){return lB(u,e,n,t,i)})),o=r.getAxis("x").scale,s=r.getAxis("y").scale,l=o.getExtent(),h=s.getExtent(),c=[o.parse(u.get("x0",e)),o.parse(u.get("x1",e))],p=[s.parse(u.get("y0",e)),s.parse(u.get("y1",e))];Vr(c),Vr(p);var d=!!(l[0]>c[1]||l[1]<c[0]||h[0]>p[1]||h[1]<p[0]);u.setItemLayout(e,{points:n,allClipped:d});var f=u.getItemModel(e).getModel("itemStyle").getItemStyle(),g=fy(a,"color");f.fill||(f.fill=g,X(f.fill)&&(f.fill=An(f.fill,.4))),f.stroke||(f.stroke=g),u.setItemVisual(e,"style",f)})),u.diff(iB(l).data).add((function(t){var e=u.getItemLayout(t);if(!e.allClipped){var n=new Lu({shape:{points:e.points}});u.setItemGraphicEl(t,n),l.group.add(n)}})).update((function(t,n){var i=iB(l).data.getItemGraphicEl(n),r=u.getItemLayout(t);r.allClipped?i&&l.group.remove(i):(i?ih(i,{shape:{points:r.points}},e,t):i=new Lu({shape:{points:r.points}}),u.setItemGraphicEl(t,i),l.group.add(i))})).remove((function(t){var e=iB(l).data.getItemGraphicEl(t);l.group.remove(e)})).execute(),u.eachItemGraphicEl((function(t,n){var i=u.getItemModel(n),r=u.getItemVisual(n,"style");t.useStyle(u.getItemVisual(n,"style")),Wh(t,Hh(i),{labelFetcher:e,labelDataIndex:n,defaultText:u.getName(n)||"",inheritColor:X(r.fill)?An(r.fill,1):"#000"}),zl(t,i),Ol(t,null,null,i.get(["emphasis","disabled"])),Ws(t).dataModel=e})),iB(l).data=u,l.group.silent=e.get("silent")||t.get("silent")},e.type="markArea",e}(UV);var cB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.layoutMode={type:"box",ignoreSize:!0},n}return n(e,t),e.prototype.init=function(t,e,n){this.mergeDefaultAndTheme(t,n),t.selected=t.selected||{},this._updateSelector(t)},e.prototype.mergeOption=function(e,n){t.prototype.mergeOption.call(this,e,n),this._updateSelector(e)},e.prototype._updateSelector=function(t){var e=t.selector,n=this.ecModel;!0===e&&(e=t.selector=["all","inverse"]),Y(e)&&E(e,(function(t,i){X(t)&&(t={type:t}),e[i]=C(t,function(t,e){return"all"===e?{type:"all",title:t.getLocaleModel().get(["legend","selector","all"])}:"inverse"===e?{type:"inverse",title:t.getLocaleModel().get(["legend","selector","inverse"])}:void 0}(n,t.type))}))},e.prototype.optionUpdated=function(){this._updateData(this.ecModel);var t=this._data;if(t[0]&&"single"===this.get("selectedMode")){for(var e=!1,n=0;n<t.length;n++){var i=t[n].get("name");if(this.isSelected(i)){this.select(i),e=!0;break}}!e&&this.select(t[0].get("name"))}},e.prototype._updateData=function(t){var e=[],n=[];t.eachRawSeries((function(i){var r,o=i.name;if(n.push(o),i.legendVisualProvider){var a=i.legendVisualProvider.getAllNames();t.isSeriesFiltered(i)||(n=n.concat(a)),a.length?e=e.concat(a):r=!0}else r=!0;r&&_o(i)&&e.push(i.name)})),this._availableNames=n;var i=z(this.get("data")||e,(function(t){return(X(t)||j(t))&&(t={name:t}),new pc(t,this,this.ecModel)}),this);this._data=i},e.prototype.getData=function(){return this._data},e.prototype.select=function(t){var e=this.option.selected;"single"===this.get("selectedMode")&&E(this._data,(function(t){e[t.get("name")]=!1}));e[t]=!0},e.prototype.unSelect=function(t){"single"!==this.get("selectedMode")&&(this.option.selected[t]=!1)},e.prototype.toggleSelected=function(t){var e=this.option.selected;e.hasOwnProperty(t)||(e[t]=!0),this[e[t]?"unSelect":"select"](t)},e.prototype.allSelect=function(){var t=this._data,e=this.option.selected;E(t,(function(t){e[t.get("name",!0)]=!0}))},e.prototype.inverseSelect=function(){var t=this._data,e=this.option.selected;E(t,(function(t){var n=t.get("name",!0);e.hasOwnProperty(n)||(e[n]=!0),e[n]=!e[n]}))},e.prototype.isSelected=function(t){var e=this.option.selected;return!(e.hasOwnProperty(t)&&!e[t])&&P(this._availableNames,t)>=0},e.prototype.getOrient=function(){return"vertical"===this.get("orient")?{index:1,name:"vertical"}:{index:0,name:"horizontal"}},e.type="legend.plain",e.dependencies=["series"],e.defaultOption={z:4,show:!0,orient:"horizontal",left:"center",top:0,align:"auto",backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",borderRadius:0,borderWidth:0,padding:5,itemGap:10,itemWidth:25,itemHeight:14,symbolRotate:"inherit",symbolKeepAspect:!0,inactiveColor:"#ccc",inactiveBorderColor:"#ccc",inactiveBorderWidth:"auto",itemStyle:{color:"inherit",opacity:"inherit",borderColor:"inherit",borderWidth:"auto",borderCap:"inherit",borderJoin:"inherit",borderDashOffset:"inherit",borderMiterLimit:"inherit"},lineStyle:{width:"auto",color:"inherit",inactiveColor:"#ccc",inactiveWidth:2,opacity:"inherit",type:"inherit",cap:"inherit",join:"inherit",dashOffset:"inherit",miterLimit:"inherit"},textStyle:{color:"#333"},selectedMode:!0,selector:!1,selectorLabel:{show:!0,borderRadius:10,padding:[3,5,3,5],fontSize:12,fontFamily:"sans-serif",color:"#666",borderWidth:1,borderColor:"#666"},emphasis:{selectorLabel:{show:!0,color:"#eee",backgroundColor:"#666"}},selectorPosition:"auto",selectorItemGap:7,selectorButtonGap:10,tooltip:{show:!1}},e}(Ip),pB=H,dB=E,fB=Cr,gB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.newlineDisabled=!1,n}return n(e,t),e.prototype.init=function(){this.group.add(this._contentGroup=new fB),this.group.add(this._selectorGroup=new fB),this._isFirstRender=!0},e.prototype.getContentGroup=function(){return this._contentGroup},e.prototype.getSelectorGroup=function(){return this._selectorGroup},e.prototype.render=function(t,e,n){var i=this._isFirstRender;if(this._isFirstRender=!1,this.resetInner(),t.get("show",!0)){var r=t.get("align"),o=t.get("orient");r&&"auto"!==r||(r="right"===t.get("left")&&"vertical"===o?"right":"left");var a=t.get("selector",!0),s=t.get("selectorPosition",!0);!a||s&&"auto"!==s||(s="horizontal"===o?"end":"start"),this.renderInner(r,t,e,n,a,o,s);var l=t.getBoxLayoutParams(),u={width:n.getWidth(),height:n.getHeight()},h=t.get("padding"),c=mp(l,u,h),p=this.layoutInner(t,r,c,i,a,s),d=mp(k({width:p.width,height:p.height},l),u,h);this.group.x=d.x-p.x,this.group.y=d.y-p.y,this.group.markRedraw(),this.group.add(this._backgroundEl=UE(p,t))}},e.prototype.resetInner=function(){this.getContentGroup().removeAll(),this._backgroundEl&&this.group.remove(this._backgroundEl),this.getSelectorGroup().removeAll()},e.prototype.renderInner=function(t,e,n,i,r,o,a){var s=this.getContentGroup(),l=ft(),u=e.get("selectedMode"),h=[];n.eachRawSeries((function(t){!t.get("legendHoverLink")&&h.push(t.id)})),dB(e.getData(),(function(r,o){var a=r.get("name");if(!this.newlineDisabled&&(""===a||"\n"===a)){var c=new fB;return c.newline=!0,void s.add(c)}var p=n.getSeriesByName(a)[0];if(!l.get(a)){if(p){var d=p.getData(),f=d.getVisual("legendLineStyle")||{},g=d.getVisual("legendIcon"),y=d.getVisual("style");this._createItem(p,a,o,r,e,t,f,y,g,u).on("click",pB(yB,a,null,i,h)).on("mouseover",pB(mB,p.name,null,i,h)).on("mouseout",pB(xB,p.name,null,i,h)),l.set(a,!0)}else n.eachRawSeries((function(n){if(!l.get(a)&&n.legendVisualProvider){var s=n.legendVisualProvider;if(!s.containName(a))return;var c=s.indexOfName(a),p=s.getItemVisual(c,"style"),d=s.getItemVisual(c,"legendIcon"),f=bn(p.fill);f&&0===f[3]&&(f[3]=.2,p=A(A({},p),{fill:kn(f,"rgba")})),this._createItem(n,a,o,r,e,t,{},p,d,u).on("click",pB(yB,null,a,i,h)).on("mouseover",pB(mB,null,a,i,h)).on("mouseout",pB(xB,null,a,i,h)),l.set(a,!0)}}),this);0}}),this),r&&this._createSelector(r,e,i,o,a)},e.prototype._createSelector=function(t,e,n,i,r){var o=this.getSelectorGroup();dB(t,(function(t){var i=t.type,r=new As({style:{x:0,y:0,align:"center",verticalAlign:"middle"},onclick:function(){n.dispatchAction({type:"all"===i?"legendAllSelect":"legendInverseSelect"})}});o.add(r),Wh(r,{normal:e.getModel("selectorLabel"),emphasis:e.getModel(["emphasis","selectorLabel"])},{defaultText:t.title}),Pl(r)}))},e.prototype._createItem=function(t,e,n,i,r,o,a,s,l,u){var h=t.visualDrawType,c=r.get("itemWidth"),p=r.get("itemHeight"),d=r.isSelected(e),f=i.get("symbolRotate"),g=i.get("symbolKeepAspect"),y=i.get("icon"),v=function(t,e,n,i,r,o){function a(t,e){"auto"===t.lineWidth&&(t.lineWidth=e.lineWidth>0?2:0),dB(t,(function(n,i){"inherit"===t[i]&&(t[i]=e[i])}))}var s=e.getModel("itemStyle").getItemStyle(),l=0===t.lastIndexOf("empty",0)?"fill":"stroke";s.decal=i.decal,"inherit"===s.fill&&(s.fill=i[r]);"inherit"===s.stroke&&(s.stroke=i[l]);"inherit"===s.opacity&&(s.opacity=("fill"===r?i:n).opacity);a(s,i);var u=e.getModel("lineStyle"),h=u.getLineStyle();if(a(h,n),"auto"===s.fill&&(s.fill=i.fill),"auto"===s.stroke&&(s.stroke=i.fill),"auto"===h.stroke&&(h.stroke=i.fill),!o){var c=e.get("inactiveBorderWidth"),p=s[l];s.lineWidth="auto"===c?i.lineWidth>0&&p?2:0:s.lineWidth,s.fill=e.get("inactiveColor"),s.stroke=e.get("inactiveBorderColor"),h.stroke=u.get("inactiveColor"),h.lineWidth=u.get("inactiveWidth")}return{itemStyle:s,lineStyle:h}}(l=y||l||"roundRect",i,a,s,h,d),m=new fB,x=i.getModel("textStyle");if(!U(t.getLegendIcon)||y&&"inherit"!==y){var _="inherit"===y&&t.getData().getVisual("symbol")?"inherit"===f?t.getData().getVisual("symbolRotate"):f:0;m.add(function(t){var e=t.icon||"roundRect",n=ky(e,0,0,t.itemWidth,t.itemHeight,t.itemStyle.fill,t.symbolKeepAspect);n.setStyle(t.itemStyle),n.rotation=(t.iconRotate||0)*Math.PI/180,n.setOrigin([t.itemWidth/2,t.itemHeight/2]),e.indexOf("empty")>-1&&(n.style.stroke=n.style.fill,n.style.fill="#fff",n.style.lineWidth=2);return n}({itemWidth:c,itemHeight:p,icon:l,iconRotate:_,itemStyle:v.itemStyle,lineStyle:v.lineStyle,symbolKeepAspect:g}))}else m.add(t.getLegendIcon({itemWidth:c,itemHeight:p,icon:l,iconRotate:f,itemStyle:v.itemStyle,lineStyle:v.lineStyle,symbolKeepAspect:g}));var b="left"===o?c+5:-5,w=o,S=r.get("formatter"),M=e;X(S)&&S?M=S.replace("{name}",null!=e?e:""):U(S)&&(M=S(e));var I=i.get("inactiveColor");m.add(new As({style:Yh(x,{text:M,x:b,y:p/2,fill:d?x.getTextColor():I,align:w,verticalAlign:"middle"})}));var T=new Ts({shape:m.getBoundingRect(),invisible:!0}),C=i.getModel("tooltip");return C.get("show")&&Nh({el:T,componentModel:r,itemName:e,itemTooltipOption:C.option}),m.add(T),m.eachChild((function(t){t.silent=!0})),T.silent=!u,this.getContentGroup().add(m),Pl(m),m.__legendDataIndex=n,m},e.prototype.layoutInner=function(t,e,n,i,r,o){var a=this.getContentGroup(),s=this.getSelectorGroup();vp(t.get("orient"),a,t.get("itemGap"),n.width,n.height);var l=a.getBoundingRect(),u=[-l.x,-l.y];if(s.markRedraw(),a.markRedraw(),r){vp("horizontal",s,t.get("selectorItemGap",!0));var h=s.getBoundingRect(),c=[-h.x,-h.y],p=t.get("selectorButtonGap",!0),d=t.getOrient().index,f=0===d?"width":"height",g=0===d?"height":"width",y=0===d?"y":"x";"end"===o?c[d]+=l[f]+p:u[d]+=h[f]+p,c[1-d]+=l[g]/2-h[g]/2,s.x=c[0],s.y=c[1],a.x=u[0],a.y=u[1];var v={x:0,y:0};return v[f]=l[f]+p+h[f],v[g]=Math.max(l[g],h[g]),v[y]=Math.min(0,h[y]+c[1-d]),v}return a.x=u[0],a.y=u[1],this.group.getBoundingRect()},e.prototype.remove=function(){this.getContentGroup().removeAll(),this._isFirstRender=!0},e.type="legend.plain",e}(fg);function yB(t,e,n,i){xB(t,e,n,i),n.dispatchAction({type:"legendToggleSelect",name:null!=t?t:e}),mB(t,e,n,i)}function vB(t){for(var e,n=t.getZr().storage.getDisplayList(),i=0,r=n.length;i<r&&!(e=n[i].states.emphasis);)i++;return e&&e.hoverLayer}function mB(t,e,n,i){vB(n)||n.dispatchAction({type:"highlight",seriesName:t,name:e,excludeSeriesId:i})}function xB(t,e,n,i){vB(n)||n.dispatchAction({type:"downplay",seriesName:t,name:e,excludeSeriesId:i})}function _B(t){var e=t.findComponents({mainType:"legend"});e&&e.length&&t.filterSeries((function(t){for(var n=0;n<e.length;n++)if(!e[n].isSelected(t.name))return!1;return!0}))}function bB(t,e,n){var i,r={},o="toggleSelected"===t;return n.eachComponent("legend",(function(n){o&&null!=i?n[i?"select":"unSelect"](e.name):"allSelect"===t||"inverseSelect"===t?n[t]():(n[t](e.name),i=n.isSelected(e.name)),E(n.getData(),(function(t){var e=t.get("name");if("\n"!==e&&""!==e){var i=n.isSelected(e);r.hasOwnProperty(e)?r[e]=r[e]&&i:r[e]=i}}))})),"allSelect"===t||"inverseSelect"===t?{selected:r}:{name:e.name,selected:r}}function wB(t){t.registerComponentModel(cB),t.registerComponentView(gB),t.registerProcessor(t.PRIORITY.PROCESSOR.SERIES_FILTER,_B),t.registerSubTypeDefaulter("legend",(function(){return"plain"})),function(t){t.registerAction("legendToggleSelect","legendselectchanged",H(bB,"toggleSelected")),t.registerAction("legendAllSelect","legendselectall",H(bB,"allSelect")),t.registerAction("legendInverseSelect","legendinverseselect",H(bB,"inverseSelect")),t.registerAction("legendSelect","legendselected",H(bB,"select")),t.registerAction("legendUnSelect","legendunselected",H(bB,"unSelect"))}(t)}var SB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.setScrollDataIndex=function(t){this.option.scrollDataIndex=t},e.prototype.init=function(e,n,i){var r=wp(e);t.prototype.init.call(this,e,n,i),MB(this,e,r)},e.prototype.mergeOption=function(e,n){t.prototype.mergeOption.call(this,e,n),MB(this,this.option,e)},e.type="legend.scroll",e.defaultOption=gc(cB.defaultOption,{scrollDataIndex:0,pageButtonItemGap:5,pageButtonGap:null,pageButtonPosition:"end",pageFormatter:"{current}/{total}",pageIcons:{horizontal:["M0,0L12,-10L12,10z","M0,0L-12,-10L-12,10z"],vertical:["M0,0L20,0L10,-20z","M0,0L20,0L10,20z"]},pageIconColor:"#2f4554",pageIconInactiveColor:"#aaa",pageIconSize:15,pageTextStyle:{color:"#333"},animationDurationUpdate:800}),e}(cB);function MB(t,e,n){var i=[1,1];i[t.getOrient().index]=0,bp(e,n,{type:"box",ignoreSize:!!i})}var IB=Cr,TB=["width","height"],CB=["x","y"],DB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.newlineDisabled=!0,n._currentIndex=0,n}return n(e,t),e.prototype.init=function(){t.prototype.init.call(this),this.group.add(this._containerGroup=new IB),this._containerGroup.add(this.getContentGroup()),this.group.add(this._controllerGroup=new IB)},e.prototype.resetInner=function(){t.prototype.resetInner.call(this),this._controllerGroup.removeAll(),this._containerGroup.removeClipPath(),this._containerGroup.__rectSize=null},e.prototype.renderInner=function(e,n,i,r,o,a,s){var l=this;t.prototype.renderInner.call(this,e,n,i,r,o,a,s);var u=this._controllerGroup,h=n.get("pageIconSize",!0),c=Y(h)?h:[h,h];d("pagePrev",0);var p=n.getModel("pageTextStyle");function d(t,e){var i=t+"DataIndex",o=Lh(n.get("pageIcons",!0)[n.getOrient().name][e],{onclick:W(l._pageGo,l,i,n,r)},{x:-c[0]/2,y:-c[1]/2,width:c[0],height:c[1]});o.name=t,u.add(o)}u.add(new As({name:"pageText",style:{text:"xx/xx",fill:p.getTextColor(),font:p.getFont(),verticalAlign:"middle",align:"center"},silent:!0})),d("pageNext",1)},e.prototype.layoutInner=function(t,e,n,i,r,o){var a=this.getSelectorGroup(),s=t.getOrient().index,l=TB[s],u=CB[s],h=TB[1-s],c=CB[1-s];r&&vp("horizontal",a,t.get("selectorItemGap",!0));var p=t.get("selectorButtonGap",!0),d=a.getBoundingRect(),f=[-d.x,-d.y],g=T(n);r&&(g[l]=n[l]-d[l]-p);var y=this._layoutContentAndController(t,i,g,s,l,h,c,u);if(r){if("end"===o)f[s]+=y[l]+p;else{var v=d[l]+p;f[s]-=v,y[u]-=v}y[l]+=d[l]+p,f[1-s]+=y[c]+y[h]/2-d[h]/2,y[h]=Math.max(y[h],d[h]),y[c]=Math.min(y[c],d[c]+f[1-s]),a.x=f[0],a.y=f[1],a.markRedraw()}return y},e.prototype._layoutContentAndController=function(t,e,n,i,r,o,a,s){var l=this.getContentGroup(),u=this._containerGroup,h=this._controllerGroup;vp(t.get("orient"),l,t.get("itemGap"),i?n.width:null,i?null:n.height),vp("horizontal",h,t.get("pageButtonItemGap",!0));var c=l.getBoundingRect(),p=h.getBoundingRect(),d=this._showController=c[r]>n[r],f=[-c.x,-c.y];e||(f[i]=l[s]);var g=[0,0],y=[-p.x,-p.y],v=rt(t.get("pageButtonGap",!0),t.get("itemGap",!0));d&&("end"===t.get("pageButtonPosition",!0)?y[i]+=n[r]-p[r]:g[i]+=p[r]+v);y[1-i]+=c[o]/2-p[o]/2,l.setPosition(f),u.setPosition(g),h.setPosition(y);var m={x:0,y:0};if(m[r]=d?n[r]:c[r],m[o]=Math.max(c[o],p[o]),m[a]=Math.min(0,p[a]+y[1-i]),u.__rectSize=n[r],d){var x={x:0,y:0};x[r]=Math.max(n[r]-p[r]-v,0),x[o]=m[o],u.setClipPath(new Ts({shape:x})),u.__rectSize=x[r]}else h.eachChild((function(t){t.attr({invisible:!0,silent:!0})}));var _=this._getPageInfo(t);return null!=_.pageIndex&&ih(l,{x:_.contentPosition[0],y:_.contentPosition[1]},d?t:null),this._updatePageInfoView(t,_),m},e.prototype._pageGo=function(t,e,n){var i=this._getPageInfo(e)[t];null!=i&&n.dispatchAction({type:"legendScroll",scrollDataIndex:i,legendId:e.id})},e.prototype._updatePageInfoView=function(t,e){var n=this._controllerGroup;E(["pagePrev","pageNext"],(function(i){var r=null!=e[i+"DataIndex"],o=n.childOfName(i);o&&(o.setStyle("fill",r?t.get("pageIconColor",!0):t.get("pageIconInactiveColor",!0)),o.cursor=r?"pointer":"default")}));var i=n.childOfName("pageText"),r=t.get("pageFormatter"),o=e.pageIndex,a=null!=o?o+1:0,s=e.pageCount;i&&r&&i.setStyle("text",X(r)?r.replace("{current}",null==a?"":a+"").replace("{total}",null==s?"":s+""):r({current:a,total:s}))},e.prototype._getPageInfo=function(t){var e=t.get("scrollDataIndex",!0),n=this.getContentGroup(),i=this._containerGroup.__rectSize,r=t.getOrient().index,o=TB[r],a=CB[r],s=this._findTargetItemIndex(e),l=n.children(),u=l[s],h=l.length,c=h?1:0,p={contentPosition:[n.x,n.y],pageCount:c,pageIndex:c-1,pagePrevDataIndex:null,pageNextDataIndex:null};if(!u)return p;var d=m(u);p.contentPosition[r]=-d.s;for(var f=s+1,g=d,y=d,v=null;f<=h;++f)(!(v=m(l[f]))&&y.e>g.s+i||v&&!x(v,g.s))&&(g=y.i>g.i?y:v)&&(null==p.pageNextDataIndex&&(p.pageNextDataIndex=g.i),++p.pageCount),y=v;for(f=s-1,g=d,y=d,v=null;f>=-1;--f)(v=m(l[f]))&&x(y,v.s)||!(g.i<y.i)||(y=g,null==p.pagePrevDataIndex&&(p.pagePrevDataIndex=g.i),++p.pageCount,++p.pageIndex),g=v;return p;function m(t){if(t){var e=t.getBoundingRect(),n=e[a]+t[a];return{s:n,e:n+e[o],i:t.__legendDataIndex}}}function x(t,e){return t.e>=e&&t.s<=e+i}},e.prototype._findTargetItemIndex=function(t){return this._showController?(this.getContentGroup().eachChild((function(i,r){var o=i.__legendDataIndex;null==n&&null!=o&&(n=r),o===t&&(e=r)})),null!=e?e:n):0;var e,n},e.type="legend.scroll",e}(gB);function AB(t){_m(wB),t.registerComponentModel(SB),t.registerComponentView(DB),function(t){t.registerAction("legendScroll","legendscroll",(function(t,e){var n=t.scrollDataIndex;null!=n&&e.eachComponent({mainType:"legend",subType:"scroll",query:t},(function(t){t.setScrollDataIndex(n)}))}))}(t)}var kB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="dataZoom.inside",e.defaultOption=gc(DE.defaultOption,{disabled:!1,zoomLock:!1,zoomOnMouseWheel:!0,moveOnMouseMove:!0,moveOnMouseWheel:!1,preventDefaultMouseMove:!0}),e}(DE),LB=So();function PB(t,e,n){LB(t).coordSysRecordMap.each((function(t){var i=t.dataZoomInfoMap.get(e.uid);i&&(i.getRange=n)}))}function OB(t,e){if(e){t.removeKey(e.model.uid);var n=e.controller;n&&n.dispose()}}function RB(t,e){t.isDisposed()||t.dispatchAction({type:"dataZoom",animation:{easing:"cubicOut",duration:100},batch:e})}function NB(t,e,n,i){return t.coordinateSystem.containPoint([n,i])}function EB(t){t.registerProcessor(t.PRIORITY.PROCESSOR.FILTER,(function(t,e){var n=LB(e),i=n.coordSysRecordMap||(n.coordSysRecordMap=ft());i.each((function(t){t.dataZoomInfoMap=null})),t.eachComponent({mainType:"dataZoom",subType:"inside"},(function(t){E(TE(t).infoList,(function(n){var r=n.model.uid,o=i.get(r)||i.set(r,function(t,e){var n={model:e,containsPoint:H(NB,e),dispatchAction:H(RB,t),dataZoomInfoMap:null,controller:null},i=n.controller=new DI(t.getZr());return E(["pan","zoom","scrollMove"],(function(t){i.on(t,(function(e){var i=[];n.dataZoomInfoMap.each((function(r){if(e.isAvailableBehavior(r.model.option)){var o=(r.getRange||{})[t],a=o&&o(r.dzReferCoordSysInfo,n.model.mainType,n.controller,e);!r.model.get("disabled",!0)&&a&&i.push({dataZoomId:r.model.id,start:a[0],end:a[1]})}})),i.length&&n.dispatchAction(i)}))})),n}(e,n.model));(o.dataZoomInfoMap||(o.dataZoomInfoMap=ft())).set(t.uid,{dzReferCoordSysInfo:n,model:t,getRange:null})}))})),i.each((function(t){var e,n=t.controller,r=t.dataZoomInfoMap;if(r){var o=r.keys()[0];null!=o&&(e=r.get(o))}if(e){var a=function(t){var e,n="type_",i={type_true:2,type_move:1,type_false:0,type_undefined:-1},r=!0;return t.each((function(t){var o=t.model,a=!o.get("disabled",!0)&&(!o.get("zoomLock",!0)||"move");i[n+a]>i[n+e]&&(e=a),r=r&&o.get("preventDefaultMouseMove",!0)})),{controlType:e,opt:{zoomOnMouseWheel:!0,moveOnMouseMove:!0,moveOnMouseWheel:!0,preventDefaultMouseMove:!!r}}}(r);n.enable(a.controlType,a.opt),n.setPointerChecker(t.containsPoint),Dg(t,"dispatchAction",e.model.get("throttle",!0),"fixRate")}else OB(i,t)}))}))}var zB=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="dataZoom.inside",e}return n(e,t),e.prototype.render=function(e,n,i){t.prototype.render.apply(this,arguments),e.noTarget()?this._clear():(this.range=e.getPercentRange(),PB(i,e,{pan:W(VB.pan,this),zoom:W(VB.zoom,this),scrollMove:W(VB.scrollMove,this)}))},e.prototype.dispose=function(){this._clear(),t.prototype.dispose.apply(this,arguments)},e.prototype._clear=function(){!function(t,e){for(var n=LB(t).coordSysRecordMap,i=n.keys(),r=0;r<i.length;r++){var o=i[r],a=n.get(o),s=a.dataZoomInfoMap;if(s){var l=e.uid;s.get(l)&&(s.removeKey(l),s.keys().length||OB(n,a))}}}(this.api,this.dataZoomModel),this.range=null},e.type="dataZoom.inside",e}(LE),VB={zoom:function(t,e,n,i){var r=this.range,o=r.slice(),a=t.axisModels[0];if(a){var s=FB[e](null,[i.originX,i.originY],a,n,t),l=(s.signal>0?s.pixelStart+s.pixelLength-s.pixel:s.pixel-s.pixelStart)/s.pixelLength*(o[1]-o[0])+o[0],u=Math.max(1/i.scale,0);o[0]=(o[0]-l)*u+l,o[1]=(o[1]-l)*u+l;var h=this.dataZoomModel.findRepresentativeAxisProxy().getMinMaxSpan();return sk(0,o,[0,100],0,h.minSpan,h.maxSpan),this.range=o,r[0]!==o[0]||r[1]!==o[1]?o:void 0}},pan:BB((function(t,e,n,i,r,o){var a=FB[i]([o.oldX,o.oldY],[o.newX,o.newY],e,r,n);return a.signal*(t[1]-t[0])*a.pixel/a.pixelLength})),scrollMove:BB((function(t,e,n,i,r,o){return FB[i]([0,0],[o.scrollDelta,o.scrollDelta],e,r,n).signal*(t[1]-t[0])*o.scrollDelta}))};function BB(t){return function(e,n,i,r){var o=this.range,a=o.slice(),s=e.axisModels[0];if(s)return sk(t(a,s,e,n,i,r),a,[0,100],"all"),this.range=a,o[0]!==a[0]||o[1]!==a[1]?a:void 0}}var FB={grid:function(t,e,n,i,r){var o=n.axis,a={},s=r.model.coordinateSystem.getRect();return t=t||[0,0],"x"===o.dim?(a.pixel=e[0]-t[0],a.pixelLength=s.width,a.pixelStart=s.x,a.signal=o.inverse?1:-1):(a.pixel=e[1]-t[1],a.pixelLength=s.height,a.pixelStart=s.y,a.signal=o.inverse?-1:1),a},polar:function(t,e,n,i,r){var o=n.axis,a={},s=r.model.coordinateSystem,l=s.getRadiusAxis().getExtent(),u=s.getAngleAxis().getExtent();return t=t?s.pointToCoord(t):[0,0],e=s.pointToCoord(e),"radiusAxis"===n.mainType?(a.pixel=e[0]-t[0],a.pixelLength=l[1]-l[0],a.pixelStart=l[0],a.signal=o.inverse?1:-1):(a.pixel=e[1]-t[1],a.pixelLength=u[1]-u[0],a.pixelStart=u[0],a.signal=o.inverse?-1:1),a},singleAxis:function(t,e,n,i,r){var o=n.axis,a=r.model.coordinateSystem.getRect(),s={};return t=t||[0,0],"horizontal"===o.orient?(s.pixel=e[0]-t[0],s.pixelLength=a.width,s.pixelStart=a.x,s.signal=o.inverse?1:-1):(s.pixel=e[1]-t[1],s.pixelLength=a.height,s.pixelStart=a.y,s.signal=o.inverse?-1:1),s}};function GB(t){VE(t),t.registerComponentModel(kB),t.registerComponentView(zB),EB(t)}var WB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="dataZoom.slider",e.layoutMode="box",e.defaultOption=gc(DE.defaultOption,{show:!0,right:"ph",top:"ph",width:"ph",height:"ph",left:null,bottom:null,borderColor:"#d2dbee",borderRadius:3,backgroundColor:"rgba(47,69,84,0)",dataBackground:{lineStyle:{color:"#d2dbee",width:.5},areaStyle:{color:"#d2dbee",opacity:.2}},selectedDataBackground:{lineStyle:{color:"#8fb0f7",width:.5},areaStyle:{color:"#8fb0f7",opacity:.2}},fillerColor:"rgba(135,175,274,0.2)",handleIcon:"path://M-9.35,34.56V42m0-40V9.5m-2,0h4a2,2,0,0,1,2,2v21a2,2,0,0,1-2,2h-4a2,2,0,0,1-2-2v-21A2,2,0,0,1-11.35,9.5Z",handleSize:"100%",handleStyle:{color:"#fff",borderColor:"#ACB8D1"},moveHandleSize:7,moveHandleIcon:"path://M-320.9-50L-320.9-50c18.1,0,27.1,9,27.1,27.1V85.7c0,18.1-9,27.1-27.1,27.1l0,0c-18.1,0-27.1-9-27.1-27.1V-22.9C-348-41-339-50-320.9-50z M-212.3-50L-212.3-50c18.1,0,27.1,9,27.1,27.1V85.7c0,18.1-9,27.1-27.1,27.1l0,0c-18.1,0-27.1-9-27.1-27.1V-22.9C-239.4-41-230.4-50-212.3-50z M-103.7-50L-103.7-50c18.1,0,27.1,9,27.1,27.1V85.7c0,18.1-9,27.1-27.1,27.1l0,0c-18.1,0-27.1-9-27.1-27.1V-22.9C-130.9-41-121.8-50-103.7-50z",moveHandleStyle:{color:"#D2DBEE",opacity:.7},showDetail:!0,showDataShadow:"auto",realtime:!0,zoomLock:!1,textStyle:{color:"#6E7079"},brushSelect:!0,brushStyle:{color:"rgba(135,175,274,0.15)"},emphasis:{handleStyle:{borderColor:"#8FB0F7"},moveHandleStyle:{color:"#8FB0F7"}}}),e}(DE),HB=Ts,YB="horizontal",UB="vertical",XB=["line","bar","candlestick","scatter"],ZB={easing:"cubicOut",duration:100,delay:0},jB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._displayables={},n}return n(e,t),e.prototype.init=function(t,e){this.api=e,this._onBrush=W(this._onBrush,this),this._onBrushEnd=W(this._onBrushEnd,this)},e.prototype.render=function(e,n,i,r){if(t.prototype.render.apply(this,arguments),Dg(this,"_dispatchZoomAction",e.get("throttle"),"fixRate"),this._orient=e.getOrient(),!1!==e.get("show")){if(e.noTarget())return this._clear(),void this.group.removeAll();r&&"dataZoom"===r.type&&r.from===this.uid||this._buildView(),this._updateView()}else this.group.removeAll()},e.prototype.dispose=function(){this._clear(),t.prototype.dispose.apply(this,arguments)},e.prototype._clear=function(){Ag(this,"_dispatchZoomAction");var t=this.api.getZr();t.off("mousemove",this._onBrush),t.off("mouseup",this._onBrushEnd)},e.prototype._buildView=function(){var t=this.group;t.removeAll(),this._brushing=!1,this._displayables.brushRect=null,this._resetLocation(),this._resetInterval();var e=this._displayables.sliderGroup=new Cr;this._renderBackground(),this._renderHandle(),this._renderDataShadow(),t.add(e),this._positionGroup()},e.prototype._resetLocation=function(){var t=this.dataZoomModel,e=this.api,n=t.get("brushSelect")?7:0,i=this._findCoordRect(),r={width:e.getWidth(),height:e.getHeight()},o=this._orient===YB?{right:r.width-i.x-i.width,top:r.height-30-7-n,width:i.width,height:30}:{right:7,top:i.y,width:30,height:i.height},a=wp(t.option);E(["right","top","width","height"],(function(t){"ph"===a[t]&&(a[t]=o[t])}));var s=mp(a,r);this._location={x:s.x,y:s.y},this._size=[s.width,s.height],this._orient===UB&&this._size.reverse()},e.prototype._positionGroup=function(){var t=this.group,e=this._location,n=this._orient,i=this.dataZoomModel.getFirstTargetAxisModel(),r=i&&i.get("inverse"),o=this._displayables.sliderGroup,a=(this._dataShadowInfo||{}).otherAxisInverse;o.attr(n!==YB||r?n===YB&&r?{scaleY:a?1:-1,scaleX:-1}:n!==UB||r?{scaleY:a?-1:1,scaleX:-1,rotation:Math.PI/2}:{scaleY:a?-1:1,scaleX:1,rotation:Math.PI/2}:{scaleY:a?1:-1,scaleX:1});var s=t.getBoundingRect([o]);t.x=e.x-s.x,t.y=e.y-s.y,t.markRedraw()},e.prototype._getViewExtent=function(){return[0,this._size[0]]},e.prototype._renderBackground=function(){var t=this.dataZoomModel,e=this._size,n=this._displayables.sliderGroup,i=t.get("brushSelect");n.add(new HB({silent:!0,shape:{x:0,y:0,width:e[0],height:e[1]},style:{fill:t.get("backgroundColor")},z2:-40}));var r=new HB({shape:{x:0,y:0,width:e[0],height:e[1]},style:{fill:"transparent"},z2:0,onclick:W(this._onClickPanel,this)}),o=this.api.getZr();i?(r.on("mousedown",this._onBrushStart,this),r.cursor="crosshair",o.on("mousemove",this._onBrush),o.on("mouseup",this._onBrushEnd)):(o.off("mousemove",this._onBrush),o.off("mouseup",this._onBrushEnd)),n.add(r)},e.prototype._renderDataShadow=function(){var t=this._dataShadowInfo=this._prepareDataShadowInfo();if(this._displayables.dataShadowSegs=[],t){var e=this._size,n=this._shadowSize||[],i=t.series,r=i.getRawData(),o=i.getShadowDim?i.getShadowDim():t.otherDim;if(null!=o){var a=this._shadowPolygonPts,s=this._shadowPolylinePts;if(r!==this._shadowData||o!==this._shadowDim||e[0]!==n[0]||e[1]!==n[1]){var l=r.getDataExtent(o),u=.3*(l[1]-l[0]);l=[l[0]-u,l[1]+u];var h,c=[0,e[1]],p=[0,e[0]],d=[[e[0],0],[0,0]],f=[],g=p[1]/(r.count()-1),y=0,v=Math.round(r.count()/e[0]);r.each([o],(function(t,e){if(v>0&&e%v)y+=g;else{var n=null==t||isNaN(t)||""===t,i=n?0:Nr(t,l,c,!0);n&&!h&&e?(d.push([d[d.length-1][0],0]),f.push([f[f.length-1][0],0])):!n&&h&&(d.push([y,0]),f.push([y,0])),d.push([y,i]),f.push([y,i]),y+=g,h=n}})),a=this._shadowPolygonPts=d,s=this._shadowPolylinePts=f}this._shadowData=r,this._shadowDim=o,this._shadowSize=[e[0],e[1]];for(var m=this.dataZoomModel,x=0;x<3;x++){var _=b(1===x);this._displayables.sliderGroup.add(_),this._displayables.dataShadowSegs.push(_)}}}function b(t){var e=m.getModel(t?"selectedDataBackground":"dataBackground"),n=new Cr,i=new Lu({shape:{points:a},segmentIgnoreThreshold:1,style:e.getModel("areaStyle").getAreaStyle(),silent:!0,z2:-20}),r=new Ou({shape:{points:s},segmentIgnoreThreshold:1,style:e.getModel("lineStyle").getLineStyle(),silent:!0,z2:-19});return n.add(i),n.add(r),n}},e.prototype._prepareDataShadowInfo=function(){var t=this.dataZoomModel,e=t.get("showDataShadow");if(!1!==e){var n,i=this.ecModel;return t.eachTargetAxis((function(r,o){E(t.getAxisProxy(r,o).getTargetSeriesModels(),(function(t){if(!(n||!0!==e&&P(XB,t.get("type"))<0)){var a,s=i.getComponent(ME(r),o).axis,l={x:"y",y:"x",radius:"angle",angle:"radius"}[r],u=t.coordinateSystem;null!=l&&u.getOtherAxis&&(a=u.getOtherAxis(s).inverse),l=t.getData().mapDimension(l),n={thisAxis:s,series:t,thisDim:r,otherDim:l,otherAxisInverse:a}}}),this)}),this),n}},e.prototype._renderHandle=function(){var t=this.group,e=this._displayables,n=e.handles=[null,null],i=e.handleLabels=[null,null],r=this._displayables.sliderGroup,o=this._size,a=this.dataZoomModel,s=this.api,l=a.get("borderRadius")||0,u=a.get("brushSelect"),h=e.filler=new HB({silent:u,style:{fill:a.get("fillerColor")},textConfig:{position:"inside"}});r.add(h),r.add(new HB({silent:!0,subPixelOptimize:!0,shape:{x:0,y:0,width:o[0],height:o[1],r:l},style:{stroke:a.get("dataBackgroundColor")||a.get("borderColor"),lineWidth:1,fill:"rgba(0,0,0,0)"}})),E([0,1],(function(e){var o=a.get("handleIcon");!Cy[o]&&o.indexOf("path://")<0&&o.indexOf("image://")<0&&(o="path://"+o);var s=ky(o,-1,0,2,2,null,!0);s.attr({cursor:qB(this._orient),draggable:!0,drift:W(this._onDragMove,this,e),ondragend:W(this._onDragEnd,this),onmouseover:W(this._showDataInfo,this,!0),onmouseout:W(this._showDataInfo,this,!1),z2:5});var l=s.getBoundingRect(),u=a.get("handleSize");this._handleHeight=Er(u,this._size[1]),this._handleWidth=l.width/l.height*this._handleHeight,s.setStyle(a.getModel("handleStyle").getItemStyle()),s.style.strokeNoScale=!0,s.rectHover=!0,s.ensureState("emphasis").style=a.getModel(["emphasis","handleStyle"]).getItemStyle(),Pl(s);var h=a.get("handleColor");null!=h&&(s.style.fill=h),r.add(n[e]=s);var c=a.getModel("textStyle");t.add(i[e]=new As({silent:!0,invisible:!0,style:Yh(c,{x:0,y:0,text:"",verticalAlign:"middle",align:"center",fill:c.getTextColor(),font:c.getFont()}),z2:10}))}),this);var c=h;if(u){var p=Er(a.get("moveHandleSize"),o[1]),d=e.moveHandle=new Ts({style:a.getModel("moveHandleStyle").getItemStyle(),silent:!0,shape:{r:[0,0,2,2],y:o[1]-.5,height:p}}),f=.8*p,g=e.moveHandleIcon=ky(a.get("moveHandleIcon"),-f/2,-f/2,f,f,"#fff",!0);g.silent=!0,g.y=o[1]+p/2-.5,d.ensureState("emphasis").style=a.getModel(["emphasis","moveHandleStyle"]).getItemStyle();var y=Math.min(o[1]/2,Math.max(p,10));(c=e.moveZone=new Ts({invisible:!0,shape:{y:o[1]-y,height:p+y}})).on("mouseover",(function(){s.enterEmphasis(d)})).on("mouseout",(function(){s.leaveEmphasis(d)})),r.add(d),r.add(g),r.add(c)}c.attr({draggable:!0,cursor:qB(this._orient),drift:W(this._onDragMove,this,"all"),ondragstart:W(this._showDataInfo,this,!0),ondragend:W(this._onDragEnd,this),onmouseover:W(this._showDataInfo,this,!0),onmouseout:W(this._showDataInfo,this,!1)})},e.prototype._resetInterval=function(){var t=this._range=this.dataZoomModel.getPercentRange(),e=this._getViewExtent();this._handleEnds=[Nr(t[0],[0,100],e,!0),Nr(t[1],[0,100],e,!0)]},e.prototype._updateInterval=function(t,e){var n=this.dataZoomModel,i=this._handleEnds,r=this._getViewExtent(),o=n.findRepresentativeAxisProxy().getMinMaxSpan(),a=[0,100];sk(e,i,r,n.get("zoomLock")?"all":t,null!=o.minSpan?Nr(o.minSpan,a,r,!0):null,null!=o.maxSpan?Nr(o.maxSpan,a,r,!0):null);var s=this._range,l=this._range=Vr([Nr(i[0],r,a,!0),Nr(i[1],r,a,!0)]);return!s||s[0]!==l[0]||s[1]!==l[1]},e.prototype._updateView=function(t){var e=this._displayables,n=this._handleEnds,i=Vr(n.slice()),r=this._size;E([0,1],(function(t){var i=e.handles[t],o=this._handleHeight;i.attr({scaleX:o/2,scaleY:o/2,x:n[t]+(t?-1:1),y:r[1]/2-o/2})}),this),e.filler.setShape({x:i[0],y:0,width:i[1]-i[0],height:r[1]});var o={x:i[0],width:i[1]-i[0]};e.moveHandle&&(e.moveHandle.setShape(o),e.moveZone.setShape(o),e.moveZone.getBoundingRect(),e.moveHandleIcon&&e.moveHandleIcon.attr("x",o.x+o.width/2));for(var a=e.dataShadowSegs,s=[0,i[0],i[1],r[0]],l=0;l<a.length;l++){var u=a[l],h=u.getClipPath();h||(h=new Ts,u.setClipPath(h)),h.setShape({x:s[l],y:0,width:s[l+1]-s[l],height:r[1]})}this._updateDataInfo(t)},e.prototype._updateDataInfo=function(t){var e=this.dataZoomModel,n=this._displayables,i=n.handleLabels,r=this._orient,o=["",""];if(e.get("showDetail")){var a=e.findRepresentativeAxisProxy();if(a){var s=a.getAxisModel().axis,l=this._range,u=t?a.calculateDataWindow({start:l[0],end:l[1]}).valueWindow:a.getDataValueWindow();o=[this._formatLabel(u[0],s),this._formatLabel(u[1],s)]}}var h=Vr(this._handleEnds.slice());function c(t){var e=Mh(n.handles[t].parent,this.group),a=Th(0===t?"right":"left",e),s=this._handleWidth/2+5,l=Ih([h[t]+(0===t?-s:s),this._size[1]/2],e);i[t].setStyle({x:l[0],y:l[1],verticalAlign:r===YB?"middle":a,align:r===YB?a:"center",text:o[t]})}c.call(this,0),c.call(this,1)},e.prototype._formatLabel=function(t,e){var n=this.dataZoomModel,i=n.get("labelFormatter"),r=n.get("labelPrecision");null!=r&&"auto"!==r||(r=e.getPixelPrecision());var o=null==t||isNaN(t)?"":"category"===e.type||"time"===e.type?e.scale.getLabel({value:Math.round(t)}):t.toFixed(Math.min(r,20));return U(i)?i(t,o):X(i)?i.replace("{value}",o):o},e.prototype._showDataInfo=function(t){t=this._dragging||t;var e=this._displayables,n=e.handleLabels;n[0].attr("invisible",!t),n[1].attr("invisible",!t),e.moveHandle&&this.api[t?"enterEmphasis":"leaveEmphasis"](e.moveHandle,1)},e.prototype._onDragMove=function(t,e,n,i){this._dragging=!0,se(i.event);var r=Ih([e,n],this._displayables.sliderGroup.getLocalTransform(),!0),o=this._updateInterval(t,r[0]),a=this.dataZoomModel.get("realtime");this._updateView(!a),o&&a&&this._dispatchZoomAction(!0)},e.prototype._onDragEnd=function(){this._dragging=!1,this._showDataInfo(!1),!this.dataZoomModel.get("realtime")&&this._dispatchZoomAction(!1)},e.prototype._onClickPanel=function(t){var e=this._size,n=this._displayables.sliderGroup.transformCoordToLocal(t.offsetX,t.offsetY);if(!(n[0]<0||n[0]>e[0]||n[1]<0||n[1]>e[1])){var i=this._handleEnds,r=(i[0]+i[1])/2,o=this._updateInterval("all",n[0]-r);this._updateView(),o&&this._dispatchZoomAction(!1)}},e.prototype._onBrushStart=function(t){var e=t.offsetX,n=t.offsetY;this._brushStart=new Ji(e,n),this._brushing=!0,this._brushStartTime=+new Date},e.prototype._onBrushEnd=function(t){if(this._brushing){var e=this._displayables.brushRect;if(this._brushing=!1,e){e.attr("ignore",!0);var n=e.shape;if(!(+new Date-this._brushStartTime<200&&Math.abs(n.width)<5)){var i=this._getViewExtent(),r=[0,100];this._range=Vr([Nr(n.x,i,r,!0),Nr(n.x+n.width,i,r,!0)]),this._handleEnds=[n.x,n.x+n.width],this._updateView(),this._dispatchZoomAction(!1)}}}},e.prototype._onBrush=function(t){this._brushing&&(se(t.event),this._updateBrushRect(t.offsetX,t.offsetY))},e.prototype._updateBrushRect=function(t,e){var n=this._displayables,i=this.dataZoomModel,r=n.brushRect;r||(r=n.brushRect=new HB({silent:!0,style:i.getModel("brushStyle").getItemStyle()}),n.sliderGroup.add(r)),r.attr("ignore",!1);var o=this._brushStart,a=this._displayables.sliderGroup,s=a.transformCoordToLocal(t,e),l=a.transformCoordToLocal(o.x,o.y),u=this._size;s[0]=Math.max(Math.min(u[0],s[0]),0),r.setShape({x:l[0],y:0,width:s[0]-l[0],height:u[1]})},e.prototype._dispatchZoomAction=function(t){var e=this._range;this.api.dispatchAction({type:"dataZoom",from:this.uid,dataZoomId:this.dataZoomModel.id,animation:t?ZB:null,start:e[0],end:e[1]})},e.prototype._findCoordRect=function(){var t,e=TE(this.dataZoomModel).infoList;if(!t&&e.length){var n=e[0].model.coordinateSystem;t=n.getRect&&n.getRect()}if(!t){var i=this.api.getWidth(),r=this.api.getHeight();t={x:.2*i,y:.2*r,width:.6*i,height:.6*r}}return t},e.type="dataZoom.slider",e}(LE);function qB(t){return"vertical"===t?"ns-resize":"ew-resize"}function KB(t){t.registerComponentModel(WB),t.registerComponentView(jB),VE(t)}var $B=function(t,e,n){var i=T((JB[t]||{})[e]);return n&&Y(i)?i[i.length-1]:i},JB={color:{active:["#006edd","#e0ffff"],inactive:["rgba(0,0,0,0)"]},colorHue:{active:[0,360],inactive:[0,0]},colorSaturation:{active:[.3,1],inactive:[0,0]},colorLightness:{active:[.9,.5],inactive:[0,0]},colorAlpha:{active:[.3,1],inactive:[0,0]},opacity:{active:[.3,1],inactive:[0,0]},symbol:{active:["circle","roundRect","diamond"],inactive:["none"]},symbolSize:{active:[10,50],inactive:[0,0]}},QB=eD.mapVisual,tF=eD.eachVisual,eF=Y,nF=E,iF=Vr,rF=Nr,oF=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.stateList=["inRange","outOfRange"],n.replacableOptionKeys=["inRange","outOfRange","target","controller","color"],n.layoutMode={type:"box",ignoreSize:!0},n.dataBound=[-1/0,1/0],n.targetVisuals={},n.controllerVisuals={},n}return n(e,t),e.prototype.init=function(t,e,n){this.mergeDefaultAndTheme(t,n)},e.prototype.optionUpdated=function(t,e){var n=this.option;!e&&tV(n,t,this.replacableOptionKeys),this.textStyleModel=this.getModel("textStyle"),this.resetItemSize(),this.completeVisualOption()},e.prototype.resetVisual=function(t){var e=this.stateList;t=W(t,this),this.controllerVisuals=Qz(this.option.controller,e,t),this.targetVisuals=Qz(this.option.target,e,t)},e.prototype.getItemSymbol=function(){return null},e.prototype.getTargetSeriesIndices=function(){var t=this.option.seriesIndex,e=[];return null==t||"all"===t?this.ecModel.eachSeries((function(t,n){e.push(n)})):e=ho(t),e},e.prototype.eachTargetSeries=function(t,e){E(this.getTargetSeriesIndices(),(function(n){var i=this.ecModel.getSeriesByIndex(n);i&&t.call(e,i)}),this)},e.prototype.isTargetSeries=function(t){var e=!1;return this.eachTargetSeries((function(n){n===t&&(e=!0)})),e},e.prototype.formatValueText=function(t,e,n){var i,r=this.option,o=r.precision,a=this.dataBound,s=r.formatter;n=n||["<",">"],Y(t)&&(t=t.slice(),i=!0);var l=e?t:i?[u(t[0]),u(t[1])]:u(t);return X(s)?s.replace("{value}",i?l[0]:l).replace("{value2}",i?l[1]:l):U(s)?i?s(t[0],t[1]):s(t):i?t[0]===a[0]?n[0]+" "+l[1]:t[1]===a[1]?n[1]+" "+l[0]:l[0]+" - "+l[1]:l;function u(t){return t===a[0]?"min":t===a[1]?"max":(+t).toFixed(Math.min(o,20))}},e.prototype.resetExtent=function(){var t=this.option,e=iF([t.min,t.max]);this._dataExtent=e},e.prototype.getDataDimensionIndex=function(t){var e=this.option.dimension;if(null!=e)return t.getDimensionIndex(e);for(var n=t.dimensions,i=n.length-1;i>=0;i--){var r=n[i],o=t.getDimensionInfo(r);if(!o.isCalculationCoord)return o.storeDimIndex}},e.prototype.getExtent=function(){return this._dataExtent.slice()},e.prototype.completeVisualOption=function(){var t=this.ecModel,e=this.option,n={inRange:e.inRange,outOfRange:e.outOfRange},i=e.target||(e.target={}),r=e.controller||(e.controller={});C(i,n),C(r,n);var o=this.isCategory();function a(n){eF(e.color)&&!n.inRange&&(n.inRange={color:e.color.slice().reverse()}),n.inRange=n.inRange||{color:t.get("gradientColor")}}a.call(this,i),a.call(this,r),function(t,e,n){var i=t[e],r=t[n];i&&!r&&(r=t[n]={},nF(i,(function(t,e){if(eD.isValidType(e)){var n=$B(e,"inactive",o);null!=n&&(r[e]=n,"color"!==e||r.hasOwnProperty("opacity")||r.hasOwnProperty("colorAlpha")||(r.opacity=[0,0]))}})))}.call(this,i,"inRange","outOfRange"),function(t){var e=(t.inRange||{}).symbol||(t.outOfRange||{}).symbol,n=(t.inRange||{}).symbolSize||(t.outOfRange||{}).symbolSize,i=this.get("inactiveColor"),r=this.getItemSymbol()||"roundRect";nF(this.stateList,(function(a){var s=this.itemSize,l=t[a];l||(l=t[a]={color:o?i:[i]}),null==l.symbol&&(l.symbol=e&&T(e)||(o?r:[r])),null==l.symbolSize&&(l.symbolSize=n&&T(n)||(o?s[0]:[s[0],s[0]])),l.symbol=QB(l.symbol,(function(t){return"none"===t?r:t}));var u=l.symbolSize;if(null!=u){var h=-1/0;tF(u,(function(t){t>h&&(h=t)})),l.symbolSize=QB(u,(function(t){return rF(t,[0,h],[0,s[0]],!0)}))}}),this)}.call(this,r)},e.prototype.resetItemSize=function(){this.itemSize=[parseFloat(this.get("itemWidth")),parseFloat(this.get("itemHeight"))]},e.prototype.isCategory=function(){return!!this.option.categories},e.prototype.setSelected=function(t){},e.prototype.getSelected=function(){return null},e.prototype.getValueState=function(t){return null},e.prototype.getVisualMeta=function(t){return null},e.type="visualMap",e.dependencies=["series"],e.defaultOption={show:!0,z:4,seriesIndex:"all",min:0,max:200,left:0,right:null,top:null,bottom:0,itemWidth:null,itemHeight:null,inverse:!1,orient:"vertical",backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",contentColor:"#5793f3",inactiveColor:"#aaa",borderWidth:0,padding:5,textGap:10,precision:0,textStyle:{color:"#333"}},e}(Ip),aF=[20,140],sF=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.optionUpdated=function(e,n){t.prototype.optionUpdated.apply(this,arguments),this.resetExtent(),this.resetVisual((function(t){t.mappingMethod="linear",t.dataExtent=this.getExtent()})),this._resetRange()},e.prototype.resetItemSize=function(){t.prototype.resetItemSize.apply(this,arguments);var e=this.itemSize;(null==e[0]||isNaN(e[0]))&&(e[0]=aF[0]),(null==e[1]||isNaN(e[1]))&&(e[1]=aF[1])},e.prototype._resetRange=function(){var t=this.getExtent(),e=this.option.range;!e||e.auto?(t.auto=1,this.option.range=t):Y(e)&&(e[0]>e[1]&&e.reverse(),e[0]=Math.max(e[0],t[0]),e[1]=Math.min(e[1],t[1]))},e.prototype.completeVisualOption=function(){t.prototype.completeVisualOption.apply(this,arguments),E(this.stateList,(function(t){var e=this.option.controller[t].symbolSize;e&&e[0]!==e[1]&&(e[0]=e[1]/3)}),this)},e.prototype.setSelected=function(t){this.option.range=t.slice(),this._resetRange()},e.prototype.getSelected=function(){var t=this.getExtent(),e=Vr((this.get("range")||[]).slice());return e[0]>t[1]&&(e[0]=t[1]),e[1]>t[1]&&(e[1]=t[1]),e[0]<t[0]&&(e[0]=t[0]),e[1]<t[0]&&(e[1]=t[0]),e},e.prototype.getValueState=function(t){var e=this.option.range,n=this.getExtent();return(e[0]<=n[0]||e[0]<=t)&&(e[1]>=n[1]||t<=e[1])?"inRange":"outOfRange"},e.prototype.findTargetDataIndices=function(t){var e=[];return this.eachTargetSeries((function(n){var i=[],r=n.getData();r.each(this.getDataDimensionIndex(r),(function(e,n){t[0]<=e&&e<=t[1]&&i.push(n)}),this),e.push({seriesId:n.id,dataIndex:i})}),this),e},e.prototype.getVisualMeta=function(t){var e=lF(this,"outOfRange",this.getExtent()),n=lF(this,"inRange",this.option.range.slice()),i=[];function r(e,n){i.push({value:e,color:t(e,n)})}for(var o=0,a=0,s=n.length,l=e.length;a<l&&(!n.length||e[a]<=n[0]);a++)e[a]<n[o]&&r(e[a],"outOfRange");for(var u=1;o<s;o++,u=0)u&&i.length&&r(n[o],"outOfRange"),r(n[o],"inRange");for(u=1;a<l;a++)(!n.length||n[n.length-1]<e[a])&&(u&&(i.length&&r(i[i.length-1].value,"outOfRange"),u=0),r(e[a],"outOfRange"));var h=i.length;return{stops:i,outerColors:[h?i[0].color:"transparent",h?i[h-1].color:"transparent"]}},e.type="visualMap.continuous",e.defaultOption=gc(oF.defaultOption,{align:"auto",calculable:!1,hoverLink:!0,realtime:!0,handleIcon:"path://M-11.39,9.77h0a3.5,3.5,0,0,1-3.5,3.5h-22a3.5,3.5,0,0,1-3.5-3.5h0a3.5,3.5,0,0,1,3.5-3.5h22A3.5,3.5,0,0,1-11.39,9.77Z",handleSize:"120%",handleStyle:{borderColor:"#fff",borderWidth:1},indicatorIcon:"circle",indicatorSize:"50%",indicatorStyle:{borderColor:"#fff",borderWidth:2,shadowBlur:2,shadowOffsetX:1,shadowOffsetY:1,shadowColor:"rgba(0,0,0,0.2)"}}),e}(oF);function lF(t,e,n){if(n[0]===n[1])return n.slice();for(var i=(n[1]-n[0])/200,r=n[0],o=[],a=0;a<=200&&r<n[1];a++)o.push(r),r+=i;return o.push(n[1]),o}var uF=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.autoPositionValues={left:1,right:1,top:1,bottom:1},n}return n(e,t),e.prototype.init=function(t,e){this.ecModel=t,this.api=e},e.prototype.render=function(t,e,n,i){this.visualMapModel=t,!1!==t.get("show")?this.doRender(t,e,n,i):this.group.removeAll()},e.prototype.renderBackground=function(t){var e=this.visualMapModel,n=np(e.get("padding")||0),i=t.getBoundingRect();t.add(new Ts({z2:-1,silent:!0,shape:{x:i.x-n[3],y:i.y-n[0],width:i.width+n[3]+n[1],height:i.height+n[0]+n[2]},style:{fill:e.get("backgroundColor"),stroke:e.get("borderColor"),lineWidth:e.get("borderWidth")}}))},e.prototype.getControllerVisual=function(t,e,n){var i=(n=n||{}).forceState,r=this.visualMapModel,o={};if("color"===e){var a=r.get("contentColor");o.color=a}function s(t){return o[t]}function l(t,e){o[t]=e}var u=r.controllerVisuals[i||r.getValueState(t)];return E(eD.prepareVisualTypes(u),(function(i){var r=u[i];n.convertOpacityToAlpha&&"opacity"===i&&(i="colorAlpha",r=u.__alphaForOpacity),eD.dependsOn(i,e)&&r&&r.applyVisual(t,s,l)})),o[e]},e.prototype.positionGroup=function(t){var e=this.visualMapModel,n=this.api;xp(t,e.getBoxLayoutParams(),{width:n.getWidth(),height:n.getHeight()})},e.prototype.doRender=function(t,e,n,i){},e.type="visualMap",e}(fg),hF=[["left","right","width"],["top","bottom","height"]];function cF(t,e,n){var i=t.option,r=i.align;if(null!=r&&"auto"!==r)return r;for(var o={width:e.getWidth(),height:e.getHeight()},a="horizontal"===i.orient?1:0,s=hF[a],l=[0,null,10],u={},h=0;h<3;h++)u[hF[1-a][h]]=l[h],u[s[h]]=2===h?n[0]:i[s[h]];var c=[["x","width",3],["y","height",0]][a],p=mp(u,o,i.padding);return s[(p.margin[c[2]]||0)+p[c[0]]+.5*p[c[1]]<.5*o[c[1]]?0:1]}function pF(t,e){return E(t||[],(function(t){null!=t.dataIndex&&(t.dataIndexInside=t.dataIndex,t.dataIndex=null),t.highlightKey="visualMap"+(e?e.componentIndex:"")})),t}var dF=Nr,fF=E,gF=Math.min,yF=Math.max,vF=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._shapes={},n._dataInterval=[],n._handleEnds=[],n._hoverLinkDataIndices=[],n}return n(e,t),e.prototype.doRender=function(t,e,n,i){this._api=n,i&&"selectDataRange"===i.type&&i.from===this.uid||this._buildView()},e.prototype._buildView=function(){this.group.removeAll();var t=this.visualMapModel,e=this.group;this._orient=t.get("orient"),this._useHandle=t.get("calculable"),this._resetInterval(),this._renderBar(e);var n=t.get("text");this._renderEndsText(e,n,0),this._renderEndsText(e,n,1),this._updateView(!0),this.renderBackground(e),this._updateView(),this._enableHoverLinkToSeries(),this._enableHoverLinkFromSeries(),this.positionGroup(e)},e.prototype._renderEndsText=function(t,e,n){if(e){var i=e[1-n];i=null!=i?i+"":"";var r=this.visualMapModel,o=r.get("textGap"),a=r.itemSize,s=this._shapes.mainGroup,l=this._applyTransform([a[0]/2,0===n?-o:a[1]+o],s),u=this._applyTransform(0===n?"bottom":"top",s),h=this._orient,c=this.visualMapModel.textStyleModel;this.group.add(new As({style:{x:l[0],y:l[1],verticalAlign:"horizontal"===h?"middle":u,align:"horizontal"===h?u:"center",text:i,font:c.getFont(),fill:c.getTextColor()}}))}},e.prototype._renderBar=function(t){var e=this.visualMapModel,n=this._shapes,i=e.itemSize,r=this._orient,o=this._useHandle,a=cF(e,this.api,i),s=n.mainGroup=this._createBarGroup(a),l=new Cr;s.add(l),l.add(n.outOfRange=mF()),l.add(n.inRange=mF(null,o?_F(this._orient):null,W(this._dragHandle,this,"all",!1),W(this._dragHandle,this,"all",!0))),l.setClipPath(new Ts({shape:{x:0,y:0,width:i[0],height:i[1],r:3}}));var u=e.textStyleModel.getTextRect("国"),h=yF(u.width,u.height);o&&(n.handleThumbs=[],n.handleLabels=[],n.handleLabelPoints=[],this._createHandle(e,s,0,i,h,r),this._createHandle(e,s,1,i,h,r)),this._createIndicator(e,s,i,h,r),t.add(s)},e.prototype._createHandle=function(t,e,n,i,r,o){var a=W(this._dragHandle,this,n,!1),s=W(this._dragHandle,this,n,!0),l=gr(t.get("handleSize"),i[0]),u=ky(t.get("handleIcon"),-l/2,-l/2,l,l,null,!0),h=_F(this._orient);u.attr({cursor:h,draggable:!0,drift:a,ondragend:s,onmousemove:function(t){se(t.event)}}),u.x=i[0]/2,u.useStyle(t.getModel("handleStyle").getItemStyle()),u.setStyle({strokeNoScale:!0,strokeFirst:!0}),u.style.lineWidth*=2,u.ensureState("emphasis").style=t.getModel(["emphasis","handleStyle"]).getItemStyle(),Vl(u,!0),e.add(u);var c=this.visualMapModel.textStyleModel,p=new As({cursor:h,draggable:!0,drift:a,onmousemove:function(t){se(t.event)},ondragend:s,style:{x:0,y:0,text:"",font:c.getFont(),fill:c.getTextColor()}});p.ensureState("blur").style={opacity:.1},p.stateTransition={duration:200},this.group.add(p);var d=[l,0],f=this._shapes;f.handleThumbs[n]=u,f.handleLabelPoints[n]=d,f.handleLabels[n]=p},e.prototype._createIndicator=function(t,e,n,i,r){var o=gr(t.get("indicatorSize"),n[0]),a=ky(t.get("indicatorIcon"),-o/2,-o/2,o,o,null,!0);a.attr({cursor:"move",invisible:!0,silent:!0,x:n[0]/2});var s=t.getModel("indicatorStyle").getItemStyle();if(a instanceof xs){var l=a.style;a.useStyle(A({image:l.image,x:l.x,y:l.y,width:l.width,height:l.height},s))}else a.useStyle(s);e.add(a);var u=this.visualMapModel.textStyleModel,h=new As({silent:!0,invisible:!0,style:{x:0,y:0,text:"",font:u.getFont(),fill:u.getTextColor()}});this.group.add(h);var c=[("horizontal"===r?i/2:6)+n[0]/2,0],p=this._shapes;p.indicator=a,p.indicatorLabel=h,p.indicatorLabelPoint=c,this._firstShowIndicator=!0},e.prototype._dragHandle=function(t,e,n,i){if(this._useHandle){if(this._dragging=!e,!e){var r=this._applyTransform([n,i],this._shapes.mainGroup,!0);this._updateInterval(t,r[1]),this._hideIndicator(),this._updateView()}e===!this.visualMapModel.get("realtime")&&this.api.dispatchAction({type:"selectDataRange",from:this.uid,visualMapId:this.visualMapModel.id,selected:this._dataInterval.slice()}),e?!this._hovering&&this._clearHoverLinkToSeries():xF(this.visualMapModel)&&this._doHoverLinkToSeries(this._handleEnds[t],!1)}},e.prototype._resetInterval=function(){var t=this.visualMapModel,e=this._dataInterval=t.getSelected(),n=t.getExtent(),i=[0,t.itemSize[1]];this._handleEnds=[dF(e[0],n,i,!0),dF(e[1],n,i,!0)]},e.prototype._updateInterval=function(t,e){e=e||0;var n=this.visualMapModel,i=this._handleEnds,r=[0,n.itemSize[1]];sk(e,i,r,t,0);var o=n.getExtent();this._dataInterval=[dF(i[0],r,o,!0),dF(i[1],r,o,!0)]},e.prototype._updateView=function(t){var e=this.visualMapModel,n=e.getExtent(),i=this._shapes,r=[0,e.itemSize[1]],o=t?r:this._handleEnds,a=this._createBarVisual(this._dataInterval,n,o,"inRange"),s=this._createBarVisual(n,n,r,"outOfRange");i.inRange.setStyle({fill:a.barColor}).setShape("points",a.barPoints),i.outOfRange.setStyle({fill:s.barColor}).setShape("points",s.barPoints),this._updateHandle(o,a)},e.prototype._createBarVisual=function(t,e,n,i){var r={forceState:i,convertOpacityToAlpha:!0},o=this._makeColorGradient(t,r),a=[this.getControllerVisual(t[0],"symbolSize",r),this.getControllerVisual(t[1],"symbolSize",r)],s=this._createBarPoints(n,a);return{barColor:new Uu(0,0,0,1,o),barPoints:s,handlesColor:[o[0].color,o[o.length-1].color]}},e.prototype._makeColorGradient=function(t,e){var n=[],i=(t[1]-t[0])/100;n.push({color:this.getControllerVisual(t[0],"color",e),offset:0});for(var r=1;r<100;r++){var o=t[0]+i*r;if(o>t[1])break;n.push({color:this.getControllerVisual(o,"color",e),offset:r/100})}return n.push({color:this.getControllerVisual(t[1],"color",e),offset:1}),n},e.prototype._createBarPoints=function(t,e){var n=this.visualMapModel.itemSize;return[[n[0]-e[0],t[0]],[n[0],t[0]],[n[0],t[1]],[n[0]-e[1],t[1]]]},e.prototype._createBarGroup=function(t){var e=this._orient,n=this.visualMapModel.get("inverse");return new Cr("horizontal"!==e||n?"horizontal"===e&&n?{scaleX:"bottom"===t?-1:1,rotation:-Math.PI/2}:"vertical"!==e||n?{scaleX:"left"===t?1:-1}:{scaleX:"left"===t?1:-1,scaleY:-1}:{scaleX:"bottom"===t?1:-1,rotation:Math.PI/2})},e.prototype._updateHandle=function(t,e){if(this._useHandle){var n=this._shapes,i=this.visualMapModel,r=n.handleThumbs,o=n.handleLabels,a=i.itemSize,s=i.getExtent();fF([0,1],(function(l){var u=r[l];u.setStyle("fill",e.handlesColor[l]),u.y=t[l];var h=dF(t[l],[0,a[1]],s,!0),c=this.getControllerVisual(h,"symbolSize");u.scaleX=u.scaleY=c/a[0],u.x=a[0]-c/2;var p=Ih(n.handleLabelPoints[l],Mh(u,this.group));o[l].setStyle({x:p[0],y:p[1],text:i.formatValueText(this._dataInterval[l]),verticalAlign:"middle",align:"vertical"===this._orient?this._applyTransform("left",n.mainGroup):"center"})}),this)}},e.prototype._showIndicator=function(t,e,n,i){var r=this.visualMapModel,o=r.getExtent(),a=r.itemSize,s=[0,a[1]],l=this._shapes,u=l.indicator;if(u){u.attr("invisible",!1);var h=this.getControllerVisual(t,"color",{convertOpacityToAlpha:!0}),c=this.getControllerVisual(t,"symbolSize"),p=dF(t,o,s,!0),d=a[0]-c/2,f={x:u.x,y:u.y};u.y=p,u.x=d;var g=Ih(l.indicatorLabelPoint,Mh(u,this.group)),y=l.indicatorLabel;y.attr("invisible",!1);var v=this._applyTransform("left",l.mainGroup),m="horizontal"===this._orient;y.setStyle({text:(n||"")+r.formatValueText(e),verticalAlign:m?v:"middle",align:m?"center":v});var x={x:d,y:p,style:{fill:h}},_={style:{x:g[0],y:g[1]}};if(r.ecModel.isAnimationEnabled()&&!this._firstShowIndicator){var b={duration:100,easing:"cubicInOut",additive:!0};u.x=f.x,u.y=f.y,u.animateTo(x,b),y.animateTo(_,b)}else u.attr(x),y.attr(_);this._firstShowIndicator=!1;var w=this._shapes.handleLabels;if(w)for(var S=0;S<w.length;S++)this._api.enterBlur(w[S])}},e.prototype._enableHoverLinkToSeries=function(){var t=this;this._shapes.mainGroup.on("mousemove",(function(e){if(t._hovering=!0,!t._dragging){var n=t.visualMapModel.itemSize,i=t._applyTransform([e.offsetX,e.offsetY],t._shapes.mainGroup,!0,!0);i[1]=gF(yF(0,i[1]),n[1]),t._doHoverLinkToSeries(i[1],0<=i[0]&&i[0]<=n[0])}})).on("mouseout",(function(){t._hovering=!1,!t._dragging&&t._clearHoverLinkToSeries()}))},e.prototype._enableHoverLinkFromSeries=function(){var t=this.api.getZr();this.visualMapModel.option.hoverLink?(t.on("mouseover",this._hoverLinkFromSeriesMouseOver,this),t.on("mouseout",this._hideIndicator,this)):this._clearHoverLinkFromSeries()},e.prototype._doHoverLinkToSeries=function(t,e){var n=this.visualMapModel,i=n.itemSize;if(n.option.hoverLink){var r=[0,i[1]],o=n.getExtent();t=gF(yF(r[0],t),r[1]);var a=function(t,e,n){var i=6,r=t.get("hoverLinkDataSize");r&&(i=dF(r,e,n,!0)/2);return i}(n,o,r),s=[t-a,t+a],l=dF(t,r,o,!0),u=[dF(s[0],r,o,!0),dF(s[1],r,o,!0)];s[0]<r[0]&&(u[0]=-1/0),s[1]>r[1]&&(u[1]=1/0),e&&(u[0]===-1/0?this._showIndicator(l,u[1],"< ",a):u[1]===1/0?this._showIndicator(l,u[0],"> ",a):this._showIndicator(l,l,"≈ ",a));var h=this._hoverLinkDataIndices,c=[];(e||xF(n))&&(c=this._hoverLinkDataIndices=n.findTargetDataIndices(u));var p=function(t,e){var n={},i={};return r(t||[],n),r(e||[],i,n),[o(n),o(i)];function r(t,e,n){for(var i=0,r=t.length;i<r;i++){var o=xo(t[i].seriesId,null);if(null==o)return;for(var a=ho(t[i].dataIndex),s=n&&n[o],l=0,u=a.length;l<u;l++){var h=a[l];s&&s[h]?s[h]=null:(e[o]||(e[o]={}))[h]=1}}}function o(t,e){var n=[];for(var i in t)if(t.hasOwnProperty(i)&&null!=t[i])if(e)n.push(+i);else{var r=o(t[i],!0);r.length&&n.push({seriesId:i,dataIndex:r})}return n}}(h,c);this._dispatchHighDown("downplay",pF(p[0],n)),this._dispatchHighDown("highlight",pF(p[1],n))}},e.prototype._hoverLinkFromSeriesMouseOver=function(t){var e=t.target,n=this.visualMapModel;if(e&&null!=Ws(e).dataIndex){var i=Ws(e),r=this.ecModel.getSeriesByIndex(i.seriesIndex);if(n.isTargetSeries(r)){var o=r.getData(i.dataType),a=o.getStore().get(n.getDataDimensionIndex(o),i.dataIndex);isNaN(a)||this._showIndicator(a,a)}}},e.prototype._hideIndicator=function(){var t=this._shapes;t.indicator&&t.indicator.attr("invisible",!0),t.indicatorLabel&&t.indicatorLabel.attr("invisible",!0);var e=this._shapes.handleLabels;if(e)for(var n=0;n<e.length;n++)this._api.leaveBlur(e[n])},e.prototype._clearHoverLinkToSeries=function(){this._hideIndicator();var t=this._hoverLinkDataIndices;this._dispatchHighDown("downplay",pF(t,this.visualMapModel)),t.length=0},e.prototype._clearHoverLinkFromSeries=function(){this._hideIndicator();var t=this.api.getZr();t.off("mouseover",this._hoverLinkFromSeriesMouseOver),t.off("mouseout",this._hideIndicator)},e.prototype._applyTransform=function(t,e,n,i){var r=Mh(e,i?null:this.group);return Y(t)?Ih(t,r,n):Th(t,r,n)},e.prototype._dispatchHighDown=function(t,e){e&&e.length&&this.api.dispatchAction({type:t,batch:e})},e.prototype.dispose=function(){this._clearHoverLinkFromSeries(),this._clearHoverLinkToSeries()},e.prototype.remove=function(){this._clearHoverLinkFromSeries(),this._clearHoverLinkToSeries()},e.type="visualMap.continuous",e}(uF);function mF(t,e,n,i){return new Lu({shape:{points:t},draggable:!!n,cursor:e,drift:n,onmousemove:function(t){se(t.event)},ondragend:i})}function xF(t){var e=t.get("hoverLinkOnHandle");return!!(null==e?t.get("realtime"):e)}function _F(t){return"vertical"===t?"ns-resize":"ew-resize"}var bF={type:"selectDataRange",event:"dataRangeSelected",update:"update"},wF=function(t,e){e.eachComponent({mainType:"visualMap",query:t},(function(e){e.setSelected(t.selected)}))},SF=[{createOnAllSeries:!0,reset:function(t,e){var n=[];return e.eachComponent("visualMap",(function(e){var i,r,o,a,s,l=t.pipelineContext;!e.isTargetSeries(t)||l&&l.large||n.push((i=e.stateList,r=e.targetVisuals,o=W(e.getValueState,e),a=e.getDataDimensionIndex(t.getData()),s={},E(i,(function(t){var e=eD.prepareVisualTypes(r[t]);s[t]=e})),{progress:function(t,e){var n,i;function l(t){return dy(e,i,t)}function u(t,n){gy(e,i,t,n)}null!=a&&(n=e.getDimensionIndex(a));for(var h=e.getStore();null!=(i=t.next());){var c=e.getRawDataItem(i);if(!c||!1!==c.visualMap)for(var p=null!=a?h.get(n,i):i,d=o(p),f=r[d],g=s[d],y=0,v=g.length;y<v;y++){var m=g[y];f[m]&&f[m].applyVisual(p,l,u)}}}}))})),n}},{createOnAllSeries:!0,reset:function(t,e){var n=t.getData(),i=[];e.eachComponent("visualMap",(function(e){if(e.isTargetSeries(t)){var r=e.getVisualMeta(W(MF,null,t,e))||{stops:[],outerColors:[]},o=e.getDataDimensionIndex(n);o>=0&&(r.dimension=o,i.push(r))}})),t.getData().setVisual("visualMeta",i)}}];function MF(t,e,n,i){for(var r=e.targetVisuals[i],o=eD.prepareVisualTypes(r),a={color:fy(t.getData(),"color")},s=0,l=o.length;s<l;s++){var u=o[s],h=r["opacity"===u?"__alphaForOpacity":u];h&&h.applyVisual(n,c,p)}return a.color;function c(t){return a[t]}function p(t,e){a[t]=e}}var IF=E;function TF(t){var e=t&&t.visualMap;Y(e)||(e=e?[e]:[]),IF(e,(function(t){if(t){CF(t,"splitList")&&!CF(t,"pieces")&&(t.pieces=t.splitList,delete t.splitList);var e=t.pieces;e&&Y(e)&&IF(e,(function(t){q(t)&&(CF(t,"start")&&!CF(t,"min")&&(t.min=t.start),CF(t,"end")&&!CF(t,"max")&&(t.max=t.end))}))}}))}function CF(t,e){return t&&t.hasOwnProperty&&t.hasOwnProperty(e)}var DF=!1;function AF(t){DF||(DF=!0,t.registerSubTypeDefaulter("visualMap",(function(t){return t.categories||(t.pieces?t.pieces.length>0:t.splitNumber>0)&&!t.calculable?"piecewise":"continuous"})),t.registerAction(bF,wF),E(SF,(function(e){t.registerVisual(t.PRIORITY.VISUAL.COMPONENT,e)})),t.registerPreprocessor(TF))}function kF(t){t.registerComponentModel(sF),t.registerComponentView(vF),AF(t)}var LF=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._pieceList=[],n}return n(e,t),e.prototype.optionUpdated=function(e,n){t.prototype.optionUpdated.apply(this,arguments),this.resetExtent();var i=this._mode=this._determineMode();this._pieceList=[],PF[this._mode].call(this,this._pieceList),this._resetSelected(e,n);var r=this.option.categories;this.resetVisual((function(t,e){"categories"===i?(t.mappingMethod="category",t.categories=T(r)):(t.dataExtent=this.getExtent(),t.mappingMethod="piecewise",t.pieceList=z(this._pieceList,(function(t){return t=T(t),"inRange"!==e&&(t.visual=null),t})))}))},e.prototype.completeVisualOption=function(){var e=this.option,n={},i=eD.listVisualTypes(),r=this.isCategory();function o(t,e,n){return t&&t[e]&&t[e].hasOwnProperty(n)}E(e.pieces,(function(t){E(i,(function(e){t.hasOwnProperty(e)&&(n[e]=1)}))})),E(n,(function(t,n){var i=!1;E(this.stateList,(function(t){i=i||o(e,t,n)||o(e.target,t,n)}),this),!i&&E(this.stateList,(function(t){(e[t]||(e[t]={}))[n]=$B(n,"inRange"===t?"active":"inactive",r)}))}),this),t.prototype.completeVisualOption.apply(this,arguments)},e.prototype._resetSelected=function(t,e){var n=this.option,i=this._pieceList,r=(e?n:t).selected||{};if(n.selected=r,E(i,(function(t,e){var n=this.getSelectedMapKey(t);r.hasOwnProperty(n)||(r[n]=!0)}),this),"single"===n.selectedMode){var o=!1;E(i,(function(t,e){var n=this.getSelectedMapKey(t);r[n]&&(o?r[n]=!1:o=!0)}),this)}},e.prototype.getItemSymbol=function(){return this.get("itemSymbol")},e.prototype.getSelectedMapKey=function(t){return"categories"===this._mode?t.value+"":t.index+""},e.prototype.getPieceList=function(){return this._pieceList},e.prototype._determineMode=function(){var t=this.option;return t.pieces&&t.pieces.length>0?"pieces":this.option.categories?"categories":"splitNumber"},e.prototype.setSelected=function(t){this.option.selected=T(t)},e.prototype.getValueState=function(t){var e=eD.findPieceIndex(t,this._pieceList);return null!=e&&this.option.selected[this.getSelectedMapKey(this._pieceList[e])]?"inRange":"outOfRange"},e.prototype.findTargetDataIndices=function(t){var e=[],n=this._pieceList;return this.eachTargetSeries((function(i){var r=[],o=i.getData();o.each(this.getDataDimensionIndex(o),(function(e,i){eD.findPieceIndex(e,n)===t&&r.push(i)}),this),e.push({seriesId:i.id,dataIndex:r})}),this),e},e.prototype.getRepresentValue=function(t){var e;if(this.isCategory())e=t.value;else if(null!=t.value)e=t.value;else{var n=t.interval||[];e=n[0]===-1/0&&n[1]===1/0?0:(n[0]+n[1])/2}return e},e.prototype.getVisualMeta=function(t){if(!this.isCategory()){var e=[],n=["",""],i=this,r=this._pieceList.slice();if(r.length){var o=r[0].interval[0];o!==-1/0&&r.unshift({interval:[-1/0,o]}),(o=r[r.length-1].interval[1])!==1/0&&r.push({interval:[o,1/0]})}else r.push({interval:[-1/0,1/0]});var a=-1/0;return E(r,(function(t){var e=t.interval;e&&(e[0]>a&&s([a,e[0]],"outOfRange"),s(e.slice()),a=e[1])}),this),{stops:e,outerColors:n}}function s(r,o){var a=i.getRepresentValue({interval:r});o||(o=i.getValueState(a));var s=t(a,o);r[0]===-1/0?n[0]=s:r[1]===1/0?n[1]=s:e.push({value:r[0],color:s},{value:r[1],color:s})}},e.type="visualMap.piecewise",e.defaultOption=gc(oF.defaultOption,{selected:null,minOpen:!1,maxOpen:!1,align:"auto",itemWidth:20,itemHeight:14,itemSymbol:"roundRect",pieces:null,categories:null,splitNumber:5,selectedMode:"multiple",itemGap:10,hoverLink:!0}),e}(oF),PF={splitNumber:function(t){var e=this.option,n=Math.min(e.precision,20),i=this.getExtent(),r=e.splitNumber;r=Math.max(parseInt(r,10),1),e.splitNumber=r;for(var o=(i[1]-i[0])/r;+o.toFixed(n)!==o&&n<5;)n++;e.precision=n,o=+o.toFixed(n),e.minOpen&&t.push({interval:[-1/0,i[0]],close:[0,0]});for(var a=0,s=i[0];a<r;s+=o,a++){var l=a===r-1?i[1]:s+o;t.push({interval:[s,l],close:[1,1]})}e.maxOpen&&t.push({interval:[i[1],1/0],close:[0,0]}),Qr(t),E(t,(function(t,e){t.index=e,t.text=this.formatValueText(t.interval)}),this)},categories:function(t){var e=this.option;E(e.categories,(function(e){t.push({text:this.formatValueText(e,!0),value:e})}),this),OF(e,t)},pieces:function(t){var e=this.option;E(e.pieces,(function(e,n){q(e)||(e={value:e});var i={text:"",index:n};if(null!=e.label&&(i.text=e.label),e.hasOwnProperty("value")){var r=i.value=e.value;i.interval=[r,r],i.close=[1,1]}else{for(var o=i.interval=[],a=i.close=[0,0],s=[1,0,1],l=[-1/0,1/0],u=[],h=0;h<2;h++){for(var c=[["gte","gt","min"],["lte","lt","max"]][h],p=0;p<3&&null==o[h];p++)o[h]=e[c[p]],a[h]=s[p],u[h]=2===p;null==o[h]&&(o[h]=l[h])}u[0]&&o[1]===1/0&&(a[0]=0),u[1]&&o[0]===-1/0&&(a[1]=0),o[0]===o[1]&&a[0]&&a[1]&&(i.value=o[0])}i.visual=eD.retrieveVisuals(e),t.push(i)}),this),OF(e,t),Qr(t),E(t,(function(t){var e=t.close,n=[["<","≤"][e[1]],[">","≥"][e[0]]];t.text=t.text||this.formatValueText(null!=t.value?t.value:t.interval,!1,n)}),this)}};function OF(t,e){var n=t.inverse;("vertical"===t.orient?!n:n)&&e.reverse()}var RF=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.doRender=function(){var t=this.group;t.removeAll();var e=this.visualMapModel,n=e.get("textGap"),i=e.textStyleModel,r=i.getFont(),o=i.getTextColor(),a=this._getItemAlign(),s=e.itemSize,l=this._getViewData(),u=l.endsText,h=it(e.get("showLabel",!0),!u);u&&this._renderEndsText(t,u[0],s,h,a),E(l.viewPieceList,(function(i){var l=i.piece,u=new Cr;u.onclick=W(this._onItemClick,this,l),this._enableHoverLink(u,i.indexInModelPieceList);var c=e.getRepresentValue(l);if(this._createItemSymbol(u,c,[0,0,s[0],s[1]]),h){var p=this.visualMapModel.getValueState(c);u.add(new As({style:{x:"right"===a?-n:s[0]+n,y:s[1]/2,text:l.text,verticalAlign:"middle",align:a,font:r,fill:o,opacity:"outOfRange"===p?.5:1}}))}t.add(u)}),this),u&&this._renderEndsText(t,u[1],s,h,a),vp(e.get("orient"),t,e.get("itemGap")),this.renderBackground(t),this.positionGroup(t)},e.prototype._enableHoverLink=function(t,e){var n=this;t.on("mouseover",(function(){return i("highlight")})).on("mouseout",(function(){return i("downplay")}));var i=function(t){var i=n.visualMapModel;i.option.hoverLink&&n.api.dispatchAction({type:t,batch:pF(i.findTargetDataIndices(e),i)})}},e.prototype._getItemAlign=function(){var t=this.visualMapModel,e=t.option;if("vertical"===e.orient)return cF(t,this.api,t.itemSize);var n=e.align;return n&&"auto"!==n||(n="left"),n},e.prototype._renderEndsText=function(t,e,n,i,r){if(e){var o=new Cr,a=this.visualMapModel.textStyleModel;o.add(new As({style:{x:i?"right"===r?n[0]:0:n[0]/2,y:n[1]/2,verticalAlign:"middle",align:i?r:"center",text:e,font:a.getFont(),fill:a.getTextColor()}})),t.add(o)}},e.prototype._getViewData=function(){var t=this.visualMapModel,e=z(t.getPieceList(),(function(t,e){return{piece:t,indexInModelPieceList:e}})),n=t.get("text"),i=t.get("orient"),r=t.get("inverse");return("horizontal"===i?r:!r)?e.reverse():n&&(n=n.slice().reverse()),{viewPieceList:e,endsText:n}},e.prototype._createItemSymbol=function(t,e,n){t.add(ky(this.getControllerVisual(e,"symbol"),n[0],n[1],n[2],n[3],this.getControllerVisual(e,"color")))},e.prototype._onItemClick=function(t){var e=this.visualMapModel,n=e.option,i=T(n.selected),r=e.getSelectedMapKey(t);"single"===n.selectedMode?(i[r]=!0,E(i,(function(t,e){i[e]=e===r}))):i[r]=!i[r],this.api.dispatchAction({type:"selectDataRange",from:this.uid,visualMapId:this.visualMapModel.id,selected:i})},e.type="visualMap.piecewise",e}(uF);function NF(t){t.registerComponentModel(LF),t.registerComponentView(RF),AF(t)}var EF={label:{enabled:!0},decal:{show:!1}},zF=So(),VF={};function BF(t,e){var n=t.getModel("aria");if(n.get("enabled")){var i=T(EF);C(i.label,t.getLocaleModel().get("aria"),!1),C(n.option,i,!1),function(){if(n.getModel("decal").get("show")){var e=ft();t.eachSeries((function(t){if(!t.isColorBySeries()){var n=e.get(t.type);n||(n={},e.set(t.type,n)),zF(t).scope=n}})),t.eachRawSeries((function(e){if(!t.isSeriesFiltered(e))if(U(e.enableAriaDecal))e.enableAriaDecal();else{var n=e.getData();if(e.isColorBySeries()){var i=td(e.ecModel,e.name,VF,t.getSeriesCount()),r=n.getVisual("decal");n.setVisual("decal",u(r,i))}else{var o=e.getRawData(),a={},s=zF(e).scope;n.each((function(t){var e=n.getRawIndex(t);a[e]=t}));var l=o.count();o.each((function(t){var i=a[t],r=o.getName(t)||t+"",h=td(e.ecModel,r,s,l),c=n.getItemVisual(i,"decal");n.setItemVisual(i,"decal",u(c,h))}))}}function u(t,e){var n=t?A(A({},e),t):e;return n.dirty=!0,n}}))}}(),function(){var i=t.getLocaleModel().get("aria"),o=n.getModel("label");if(o.option=k(o.option,i),!o.get("enabled"))return;var a=e.getZr().dom;if(o.get("description"))return void a.setAttribute("aria-label",o.get("description"));var s,l=t.getSeriesCount(),u=o.get(["data","maxCount"])||10,h=o.get(["series","maxCount"])||10,c=Math.min(l,h);if(l<1)return;var p=function(){var e=t.get("title");e&&e.length&&(e=e[0]);return e&&e.text}();if(p){var d=o.get(["general","withTitle"]);s=r(d,{title:p})}else s=o.get(["general","withoutTitle"]);var f=[],g=l>1?o.get(["series","multiple","prefix"]):o.get(["series","single","prefix"]);s+=r(g,{seriesCount:l}),t.eachSeries((function(e,n){if(n<c){var i=void 0,a=e.get("name")?"withName":"withoutName";i=r(i=l>1?o.get(["series","multiple",a]):o.get(["series","single",a]),{seriesId:e.seriesIndex,seriesName:e.get("name"),seriesType:(x=e.subType,t.getLocaleModel().get(["series","typeNames"])[x]||"自定义图")});var s=e.getData();if(s.count()>u)i+=r(o.get(["data","partialData"]),{displayCnt:u});else i+=o.get(["data","allData"]);for(var h=o.get(["data","separator","middle"]),p=o.get(["data","separator","end"]),d=[],g=0;g<s.count();g++)if(g<u){var y=s.getName(g),v=s.getValues(g),m=o.get(["data",y?"withName":"withoutName"]);d.push(r(m,{name:y,value:v.join(h)}))}i+=d.join(h)+p,f.push(i)}var x}));var y=o.getModel(["series","multiple","separator"]),v=y.get("middle"),m=y.get("end");s+=f.join(v)+m,a.setAttribute("aria-label",s)}()}function r(t,e){if(!X(t))return t;var n=t;return E(e,(function(t,e){n=n.replace(new RegExp("\\{\\s*"+e+"\\s*\\}","g"),t)})),n}}function FF(t){if(t&&t.aria){var e=t.aria;null!=e.show&&(e.enabled=e.show),e.label=e.label||{},E(["description","general","series","data"],(function(t){null!=e[t]&&(e.label[t]=e[t])}))}}var GF={value:"eq","<":"lt","<=":"lte",">":"gt",">=":"gte","=":"eq","!=":"ne","<>":"ne"},WF=function(){function t(t){if(null==(this._condVal=X(t)?new RegExp(t):et(t)?t:null)){var e="";0,ao(e)}}return t.prototype.evaluate=function(t){var e=typeof t;return X(e)?this._condVal.test(t):!!j(e)&&this._condVal.test(t+"")},t}(),HF=function(){function t(){}return t.prototype.evaluate=function(){return this.value},t}(),YF=function(){function t(){}return t.prototype.evaluate=function(){for(var t=this.children,e=0;e<t.length;e++)if(!t[e].evaluate())return!1;return!0},t}(),UF=function(){function t(){}return t.prototype.evaluate=function(){for(var t=this.children,e=0;e<t.length;e++)if(t[e].evaluate())return!0;return!1},t}(),XF=function(){function t(){}return t.prototype.evaluate=function(){return!this.child.evaluate()},t}(),ZF=function(){function t(){}return t.prototype.evaluate=function(){for(var t=!!this.valueParser,e=(0,this.getValue)(this.valueGetterParam),n=t?this.valueParser(e):null,i=0;i<this.subCondList.length;i++)if(!this.subCondList[i].evaluate(t?n:e))return!1;return!0},t}();function jF(t,e){if(!0===t||!1===t){var n=new HF;return n.value=t,n}var i="";return KF(t)||ao(i),t.and?qF("and",t,e):t.or?qF("or",t,e):t.not?function(t,e){var n=t.not,i="";0;KF(n)||ao(i);var r=new XF;r.child=jF(n,e),r.child||ao(i);return r}(t,e):function(t,e){for(var n="",i=e.prepareGetValue(t),r=[],o=G(t),a=t.parser,s=a?ff(a):null,l=0;l<o.length;l++){var u=o[l];if("parser"!==u&&!e.valueGetterAttrMap.get(u)){var h=mt(GF,u)?GF[u]:u,c=t[u],p=s?s(c):c,d=xf(h,p)||"reg"===h&&new WF(p);d||ao(n),r.push(d)}}r.length||ao(n);var f=new ZF;return f.valueGetterParam=i,f.valueParser=s,f.getValue=e.getValue,f.subCondList=r,f}(t,e)}function qF(t,e,n){var i=e[t],r="";Y(i)||ao(r),i.length||ao(r);var o="and"===t?new YF:new UF;return o.children=z(i,(function(t){return jF(t,n)})),o.children.length||ao(r),o}function KF(t){return q(t)&&!N(t)}var $F=function(){function t(t,e){this._cond=jF(t,e)}return t.prototype.evaluate=function(){return this._cond.evaluate()},t}();var JF={type:"echarts:filter",transform:function(t){for(var e,n,i,r=t.upstream,o=(n=t.config,i={valueGetterAttrMap:ft({dimension:!0}),prepareGetValue:function(t){var e="",n=t.dimension;mt(t,"dimension")||ao(e);var i=r.getDimensionInfo(n);return i||ao(e),{dimIdx:i.index}},getValue:function(t){return r.retrieveValueFromItem(e,t.dimIdx)}},new $F(n,i)),a=[],s=0,l=r.count();s<l;s++)e=r.getRawDataItem(s),o.evaluate()&&a.push(e);return{data:a}}};var QF={type:"echarts:sort",transform:function(t){var e=t.upstream,n=t.config,i="",r=ho(n);r.length||ao(i);var o=[];E(r,(function(t){var n=t.dimension,r=t.order,a=t.parser,s=t.incomparable;if(null==n&&ao(i),"asc"!==r&&"desc"!==r&&ao(i),s&&"min"!==s&&"max"!==s){var l="";0,ao(l)}if("asc"!==r&&"desc"!==r){var u="";0,ao(u)}var h=e.getDimensionInfo(n);h||ao(i);var c=a?ff(a):null;a&&!c&&ao(i),o.push({dimIdx:h.index,parser:c,comparator:new vf(r,s)})}));var a=e.sourceFormat;a!==Lp&&a!==Pp&&ao(i);for(var s=[],l=0,u=e.count();l<u;l++)s.push(e.getRawDataItem(l));return s.sort((function(t,n){for(var i=0;i<o.length;i++){var r=o[i],a=e.retrieveValueFromItem(t,r.dimIdx),s=e.retrieveValueFromItem(n,r.dimIdx);r.parser&&(a=r.parser(a),s=r.parser(s));var l=r.comparator.evaluate(a,s);if(0!==l)return l}return 0})),{data:s}}};var tG=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="dataset",e}return n(e,t),e.prototype.init=function(e,n,i){t.prototype.init.call(this,e,n,i),this._sourceManager=new Vf(this),Bf(this)},e.prototype.mergeOption=function(e,n){t.prototype.mergeOption.call(this,e,n),Bf(this)},e.prototype.optionUpdated=function(){this._sourceManager.dirty()},e.prototype.getSourceManager=function(){return this._sourceManager},e.type="dataset",e.defaultOption={seriesLayoutBy:Ep},e}(Ip),eG=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="dataset",e}return n(e,t),e.type="dataset",e}(fg);var nG=ja.CMD;function iG(t,e){return Math.abs(t-e)<1e-5}function rG(t){var e,n,i,r,o,a=t.data,s=t.len(),l=[],u=0,h=0,c=0,p=0;function d(t,n){e&&e.length>2&&l.push(e),e=[t,n]}function f(t,n,i,r){iG(t,i)&&iG(n,r)||e.push(t,n,i,r,i,r)}function g(t,n,i,r,o,a){var s=Math.abs(n-t),l=4*Math.tan(s/4)/3,u=n<t?-1:1,h=Math.cos(t),c=Math.sin(t),p=Math.cos(n),d=Math.sin(n),f=h*o+i,g=c*a+r,y=p*o+i,v=d*a+r,m=o*l*u,x=a*l*u;e.push(f-m*c,g+x*h,y+m*d,v-x*p,y,v)}for(var y=0;y<s;){var v=a[y++],m=1===y;switch(m&&(c=u=a[y],p=h=a[y+1],v!==nG.L&&v!==nG.C&&v!==nG.Q||(e=[c,p])),v){case nG.M:u=c=a[y++],h=p=a[y++],d(c,p);break;case nG.L:f(u,h,n=a[y++],i=a[y++]),u=n,h=i;break;case nG.C:e.push(a[y++],a[y++],a[y++],a[y++],u=a[y++],h=a[y++]);break;case nG.Q:n=a[y++],i=a[y++],r=a[y++],o=a[y++],e.push(u+2/3*(n-u),h+2/3*(i-h),r+2/3*(n-r),o+2/3*(i-o),r,o),u=r,h=o;break;case nG.A:var x=a[y++],_=a[y++],b=a[y++],w=a[y++],S=a[y++],M=a[y++]+S;y+=1;var I=!a[y++];n=Math.cos(S)*b+x,i=Math.sin(S)*w+_,m?d(c=n,p=i):f(u,h,n,i),u=Math.cos(M)*b+x,h=Math.sin(M)*w+_;for(var T=(I?-1:1)*Math.PI/2,C=S;I?C>M:C<M;C+=T){g(C,I?Math.max(C+T,M):Math.min(C+T,M),x,_,b,w)}break;case nG.R:c=u=a[y++],p=h=a[y++],n=c+a[y++],i=p+a[y++],d(n,p),f(n,p,n,i),f(n,i,c,i),f(c,i,c,p),f(c,p,n,p);break;case nG.Z:e&&f(u,h,c,p),u=c,h=p}}return e&&e.length>2&&l.push(e),l}function oG(t,e,n,i,r,o,a,s,l,u){if(iG(t,n)&&iG(e,i)&&iG(r,a)&&iG(o,s))l.push(a,s);else{var h=2/u,c=h*h,p=a-t,d=s-e,f=Math.sqrt(p*p+d*d);p/=f,d/=f;var g=n-t,y=i-e,v=r-a,m=o-s,x=g*g+y*y,_=v*v+m*m;if(x<c&&_<c)l.push(a,s);else{var b=p*g+d*y,w=-p*v-d*m;if(x-b*b<c&&b>=0&&_-w*w<c&&w>=0)l.push(a,s);else{var S=[],M=[];Ze(t,n,r,a,.5,S),Ze(e,i,o,s,.5,M),oG(S[0],M[0],S[1],M[1],S[2],M[2],S[3],M[3],l,u),oG(S[4],M[4],S[5],M[5],S[6],M[6],S[7],M[7],l,u)}}}}function aG(t,e,n){var i=t[e],r=t[1-e],o=Math.abs(i/r),a=Math.ceil(Math.sqrt(o*n)),s=Math.floor(n/a);0===s&&(s=1,a=n);for(var l=[],u=0;u<a;u++)l.push(s);var h=n-a*s;if(h>0)for(u=0;u<h;u++)l[u%a]+=1;return l}function sG(t,e,n){for(var i=t.r0,r=t.r,o=t.startAngle,a=t.endAngle,s=Math.abs(a-o),l=s*r,u=r-i,h=l>Math.abs(u),c=aG([l,u],h?0:1,e),p=(h?s:u)/c.length,d=0;d<c.length;d++)for(var f=(h?u:s)/c[d],g=0;g<c[d];g++){var y={};h?(y.startAngle=o+p*d,y.endAngle=o+p*(d+1),y.r0=i+f*g,y.r=i+f*(g+1)):(y.startAngle=o+f*g,y.endAngle=o+f*(g+1),y.r0=i+p*d,y.r=i+p*(d+1)),y.clockwise=t.clockwise,y.cx=t.cx,y.cy=t.cy,n.push(y)}}function lG(t,e,n,i){return t*i-n*e}function uG(t,e,n,i,r,o,a,s){var l=n-t,u=i-e,h=a-r,c=s-o,p=lG(h,c,l,u);if(Math.abs(p)<1e-6)return null;var d=lG(t-r,e-o,h,c)/p;return d<0||d>1?null:new Ji(d*l+t,d*u+e)}function hG(t,e,n){var i=new Ji;Ji.sub(i,n,e),i.normalize();var r=new Ji;return Ji.sub(r,t,e),r.dot(i)}function cG(t,e){var n=t[t.length-1];n&&n[0]===e[0]&&n[1]===e[1]||t.push(e)}function pG(t){var e=t.points,n=[],i=[];Ma(e,n,i);var r=new sr(n[0],n[1],i[0]-n[0],i[1]-n[1]),o=r.width,a=r.height,s=r.x,l=r.y,u=new Ji,h=new Ji;return o>a?(u.x=h.x=s+o/2,u.y=l,h.y=l+a):(u.y=h.y=l+a/2,u.x=s,h.x=s+o),function(t,e,n){for(var i=t.length,r=[],o=0;o<i;o++){var a=t[o],s=t[(o+1)%i],l=uG(a[0],a[1],s[0],s[1],e.x,e.y,n.x,n.y);l&&r.push({projPt:hG(l,e,n),pt:l,idx:o})}if(r.length<2)return[{points:t},{points:t}];r.sort((function(t,e){return t.projPt-e.projPt}));var u=r[0],h=r[r.length-1];if(h.idx<u.idx){var c=u;u=h,h=c}var p=[u.pt.x,u.pt.y],d=[h.pt.x,h.pt.y],f=[p],g=[d];for(o=u.idx+1;o<=h.idx;o++)cG(f,t[o].slice());for(cG(f,d),cG(f,p),o=h.idx+1;o<=u.idx+i;o++)cG(g,t[o%i].slice());return cG(g,p),cG(g,d),[{points:f},{points:g}]}(e,u,h)}function dG(t,e,n,i){if(1===n)i.push(e);else{var r=Math.floor(n/2),o=t(e);dG(t,o[0],r,i),dG(t,o[1],n-r,i)}return i}function fG(t,e){e.setStyle(t.style),e.z=t.z,e.z2=t.z2,e.zlevel=t.zlevel}function gG(t,e){var n,i=[],r=t.shape;switch(t.type){case"rect":!function(t,e,n){for(var i=t.width,r=t.height,o=i>r,a=aG([i,r],o?0:1,e),s=o?"width":"height",l=o?"height":"width",u=o?"x":"y",h=o?"y":"x",c=t[s]/a.length,p=0;p<a.length;p++)for(var d=t[l]/a[p],f=0;f<a[p];f++){var g={};g[u]=p*c,g[h]=f*d,g[s]=c,g[l]=d,g.x+=t.x,g.y+=t.y,n.push(g)}}(r,e,i),n=Ts;break;case"sector":sG(r,e,i),n=Tu;break;case"circle":sG({r0:0,r:r.r,startAngle:0,endAngle:2*Math.PI,cx:r.cx,cy:r.cy},e,i),n=Tu;break;default:var o=t.getComputedTransform(),a=o?Math.sqrt(Math.max(o[0]*o[0]+o[1]*o[1],o[2]*o[2]+o[3]*o[3])):1,s=z(function(t,e){var n=rG(t),i=[];e=e||1;for(var r=0;r<n.length;r++){var o=n[r],a=[],s=o[0],l=o[1];a.push(s,l);for(var u=2;u<o.length;){var h=o[u++],c=o[u++],p=o[u++],d=o[u++],f=o[u++],g=o[u++];oG(s,l,h,c,p,d,f,g,a,e),s=f,l=g}i.push(a)}return i}(t.getUpdatedPathProxy(),a),(function(t){return function(t){for(var e=[],n=0;n<t.length;)e.push([t[n++],t[n++]]);return e}(t)})),l=s.length;if(0===l)dG(pG,{points:s[0]},e,i);else if(l===e)for(var u=0;u<l;u++)i.push({points:s[u]});else{var h=0,c=z(s,(function(t){var e=[],n=[];Ma(t,e,n);var i=(n[1]-e[1])*(n[0]-e[0]);return h+=i,{poly:t,area:i}}));c.sort((function(t,e){return e.area-t.area}));var p=e;for(u=0;u<l;u++){var d=c[u];if(p<=0)break;var f=u===l-1?p:Math.ceil(d.area/h*e);f<0||(dG(pG,{points:d.poly},f,i),p-=f)}}n=Lu}if(!n)return function(t,e){for(var n=[],i=0;i<e;i++)n.push(su(t));return n}(t,e);var g=[];for(u=0;u<i.length;u++){var y=new n;y.setShape(i[u]),fG(t,y),g.push(y)}return g}function yG(t,e){var n=t.length,i=e.length;if(n===i)return[t,e];for(var r=[],o=[],a=n<i?t:e,s=Math.min(n,i),l=Math.abs(i-n)/6,u=(s-2)/6,h=Math.ceil(l/u)+1,c=[a[0],a[1]],p=l,d=2;d<s;){var f=a[d-2],g=a[d-1],y=a[d++],v=a[d++],m=a[d++],x=a[d++],_=a[d++],b=a[d++];if(p<=0)c.push(y,v,m,x,_,b);else{for(var w=Math.min(p,h-1)+1,S=1;S<=w;S++){var M=S/w;Ze(f,y,m,_,M,r),Ze(g,v,x,b,M,o),f=r[3],g=o[3],c.push(r[1],o[1],r[2],o[2],f,g),y=r[5],v=o[5],m=r[6],x=o[6]}p-=w-1}}return a===t?[c,e]:[t,c]}function vG(t,e){for(var n=t.length,i=t[n-2],r=t[n-1],o=[],a=0;a<e.length;)o[a++]=i,o[a++]=r;return o}function mG(t){for(var e=0,n=0,i=0,r=t.length,o=0,a=r-2;o<r;a=o,o+=2){var s=t[a],l=t[a+1],u=t[o],h=t[o+1],c=s*h-u*l;e+=c,n+=(s+u)*c,i+=(l+h)*c}return 0===e?[t[0]||0,t[1]||0]:[n/e/3,i/e/3,e]}function xG(t,e,n,i){for(var r=(t.length-2)/6,o=1/0,a=0,s=t.length,l=s-2,u=0;u<r;u++){for(var h=6*u,c=0,p=0;p<s;p+=2){var d=0===p?h:(h+p-2)%l+2,f=t[d]-n[0],g=t[d+1]-n[1],y=e[p]-i[0]-f,v=e[p+1]-i[1]-g;c+=y*y+v*v}c<o&&(o=c,a=u)}return a}function _G(t){for(var e=[],n=t.length,i=0;i<n;i+=2)e[i]=t[n-i-2],e[i+1]=t[n-i-1];return e}function bG(t){return t.__isCombineMorphing}var wG="__mOriginal_";function SG(t,e,n){var i=wG+e,r=t[i]||t[e];t[i]||(t[i]=t[e]);var o=n.replace,a=n.after,s=n.before;t[e]=function(){var t,e=arguments;return s&&s.apply(this,e),t=o?o.apply(this,e):r.apply(this,e),a&&a.apply(this,e),t}}function MG(t,e){var n=wG+e;t[n]&&(t[e]=t[n],t[n]=null)}function IG(t,e){for(var n=0;n<t.length;n++)for(var i=t[n],r=0;r<i.length;){var o=i[r],a=i[r+1];i[r++]=e[0]*o+e[2]*a+e[4],i[r++]=e[1]*o+e[3]*a+e[5]}}function TG(t,e){var n=t.getUpdatedPathProxy(),i=e.getUpdatedPathProxy(),r=function(t,e){for(var n,i,r,o=[],a=[],s=0;s<Math.max(t.length,e.length);s++){var l=t[s],u=e[s],h=void 0,c=void 0;l?u?(i=h=(n=yG(l,u))[0],r=c=n[1]):(c=vG(r||l,l),h=l):(h=vG(i||u,u),c=u),o.push(h),a.push(c)}return[o,a]}(rG(n),rG(i)),o=r[0],a=r[1],s=t.getComputedTransform(),l=e.getComputedTransform();s&&IG(o,s),l&&IG(a,l),SG(e,"updateTransform",{replace:function(){this.transform=null}}),e.transform=null;var u=function(t,e,n,i){for(var r,o=[],a=0;a<t.length;a++){var s=t[a],l=e[a],u=mG(s),h=mG(l);null==r&&(r=u[2]<0!=h[2]<0);var c=[],p=[],d=0,f=1/0,g=[],y=s.length;r&&(s=_G(s));for(var v=6*xG(s,l,u,h),m=y-2,x=0;x<m;x+=2){var _=(v+x)%m+2;c[x+2]=s[_]-u[0],c[x+3]=s[_+1]-u[1]}if(c[0]=s[v]-u[0],c[1]=s[v+1]-u[1],n>0)for(var b=i/n,w=-i/2;w<=i/2;w+=b){var S=Math.sin(w),M=Math.cos(w),I=0;for(x=0;x<s.length;x+=2){var T=c[x],C=c[x+1],D=l[x]-h[0],A=l[x+1]-h[1],k=D*M-A*S,L=D*S+A*M;g[x]=k,g[x+1]=L;var P=k-T,O=L-C;I+=P*P+O*O}if(I<f){f=I,d=w;for(var R=0;R<g.length;R++)p[R]=g[R]}}else for(var N=0;N<y;N+=2)p[N]=l[N]-h[0],p[N+1]=l[N+1]-h[1];o.push({from:c,to:p,fromCp:u,toCp:h,rotation:-d})}return o}(o,a,10,Math.PI),h=[];SG(e,"buildPath",{replace:function(t){for(var n=e.__morphT,i=1-n,r=[],o=0;o<u.length;o++){var a=u[o],s=a.from,l=a.to,c=a.rotation*n,p=a.fromCp,d=a.toCp,f=Math.sin(c),g=Math.cos(c);Bt(r,p,d,n);for(var y=0;y<s.length;y+=2){var v=s[y],m=s[y+1],x=v*i+(S=l[y])*n,_=m*i+(M=l[y+1])*n;h[y]=x*g-_*f+r[0],h[y+1]=x*f+_*g+r[1]}var b=h[0],w=h[1];t.moveTo(b,w);for(y=2;y<s.length;){var S=h[y++],M=h[y++],I=h[y++],T=h[y++],C=h[y++],D=h[y++];b===S&&w===M&&I===C&&T===D?t.lineTo(C,D):t.bezierCurveTo(S,M,I,T,C,D),b=C,w=D}}}})}function CG(t,e,n){if(!t||!e)return e;var i=n.done,r=n.during;return TG(t,e),e.__morphT=0,e.animateTo({__morphT:1},k({during:function(t){e.dirtyShape(),r&&r(t)},done:function(){MG(e,"buildPath"),MG(e,"updateTransform"),e.__morphT=-1,e.createPathProxy(),e.dirtyShape(),i&&i()}},n)),e}function DG(t,e,n,i,r,o){t=r===n?0:Math.round(32767*(t-n)/(r-n)),e=o===i?0:Math.round(32767*(e-i)/(o-i));for(var a,s=0,l=32768;l>0;l/=2){var u=0,h=0;(t&l)>0&&(u=1),(e&l)>0&&(h=1),s+=l*l*(3*u^h),0===h&&(1===u&&(t=l-1-t,e=l-1-e),a=t,t=e,e=a)}return s}function AG(t){var e=1/0,n=1/0,i=-1/0,r=-1/0,o=z(t,(function(t){var o=t.getBoundingRect(),a=t.getComputedTransform(),s=o.x+o.width/2+(a?a[4]:0),l=o.y+o.height/2+(a?a[5]:0);return e=Math.min(s,e),n=Math.min(l,n),i=Math.max(s,i),r=Math.max(l,r),[s,l]}));return z(o,(function(o,a){return{cp:o,z:DG(o[0],o[1],e,n,i,r),path:t[a]}})).sort((function(t,e){return t.z-e.z})).map((function(t){return t.path}))}function kG(t){return gG(t.path,t.count)}function LG(t){return Y(t[0])}function PG(t,e){for(var n=[],i=t.length,r=0;r<i;r++)n.push({one:t[r],many:[]});for(r=0;r<e.length;r++){var o=e[r].length,a=void 0;for(a=0;a<o;a++)n[a%i].many.push(e[r][a])}var s=0;for(r=i-1;r>=0;r--)if(!n[r].many.length){var l=n[s].many;if(l.length<=1){if(!s)return n;s=0}o=l.length;var u=Math.ceil(o/2);n[r].many=l.slice(u,o),n[s].many=l.slice(0,u),s++}return n}var OG={clone:function(t){for(var e=[],n=1-Math.pow(1-t.path.style.opacity,1/t.count),i=0;i<t.count;i++){var r=su(t.path);r.setStyle("opacity",n),e.push(r)}return e},split:null};function RG(t,e,n,i,r,o){if(t.length&&e.length){var a=eh("update",i,r);if(a&&a.duration>0){var s,l,u=i.getModel("universalTransition").get("delay"),h=Object.assign({setToFinal:!0},a);LG(t)&&(s=t,l=e),LG(e)&&(s=e,l=t);for(var c=s?s===t:t.length>e.length,p=s?PG(l,s):PG(c?e:t,[c?t:e]),d=0,f=0;f<p.length;f++)d+=p[f].many.length;var g=0;for(f=0;f<p.length;f++)y(p[f],c,g,d),g+=p[f].many.length}}function y(t,e,i,r,a){var s=t.many,l=t.one;if(1!==s.length||a)for(var c=k({dividePath:OG[n],individualDelay:u&&function(t,e,n,o){return u(t+i,r)}},h),p=e?function(t,e,n){var i=[];!function t(e){for(var n=0;n<e.length;n++){var r=e[n];bG(r)?t(r.childrenRef()):r instanceof fs&&i.push(r)}}(t);var r=i.length;if(!r)return{fromIndividuals:[],toIndividuals:[],count:0};var o=(n.dividePath||kG)({path:e,count:r});if(o.length!==r)return console.error("Invalid morphing: unmatched splitted path"),{fromIndividuals:[],toIndividuals:[],count:0};i=AG(i),o=AG(o);for(var a=n.done,s=n.during,l=n.individualDelay,u=new qi,h=0;h<r;h++){var c=i[h],p=o[h];p.parent=e,p.copyTransform(u),l||TG(c,p)}function d(t){for(var e=0;e<o.length;e++)o[e].addSelfToZr(t)}function f(){e.__isCombineMorphing=!1,e.__morphT=-1,e.childrenRef=null,MG(e,"addSelfToZr"),MG(e,"removeSelfFromZr")}e.__isCombineMorphing=!0,e.childrenRef=function(){return o},SG(e,"addSelfToZr",{after:function(t){d(t)}}),SG(e,"removeSelfFromZr",{after:function(t){for(var e=0;e<o.length;e++)o[e].removeSelfFromZr(t)}});var g=o.length;if(l){var y=g,v=function(){0==--y&&(f(),a&&a())};for(h=0;h<g;h++){var m=l?k({delay:(n.delay||0)+l(h,g,i[h],o[h]),done:v},n):n;CG(i[h],o[h],m)}}else e.__morphT=0,e.animateTo({__morphT:1},k({during:function(t){for(var n=0;n<g;n++){var i=o[n];i.__morphT=e.__morphT,i.dirtyShape()}s&&s(t)},done:function(){f();for(var e=0;e<t.length;e++)MG(t[e],"updateTransform");a&&a()}},n));return e.__zr&&d(e.__zr),{fromIndividuals:i,toIndividuals:o,count:g}}(s,l,c):function(t,e,n){var i=e.length,r=[],o=n.dividePath||kG;if(bG(t)){!function t(e){for(var n=0;n<e.length;n++){var i=e[n];bG(i)?t(i.childrenRef()):i instanceof fs&&r.push(i)}}(t.childrenRef());var a=r.length;if(a<i)for(var s=0,l=a;l<i;l++)r.push(su(r[s++%a]));r.length=i}else{r=o({path:t,count:i});var u=t.getComputedTransform();for(l=0;l<r.length;l++)r[l].setLocalTransform(u);if(r.length!==i)return console.error("Invalid morphing: unmatched splitted path"),{fromIndividuals:[],toIndividuals:[],count:0}}r=AG(r),e=AG(e);var h=n.individualDelay;for(l=0;l<i;l++){var c=h?k({delay:(n.delay||0)+h(l,i,r[l],e[l])},n):n;CG(r[l],e[l],c)}return{fromIndividuals:r,toIndividuals:e,count:e.length}}(l,s,c),d=p.fromIndividuals,f=p.toIndividuals,g=d.length,v=0;v<g;v++){m=u?k({delay:u(v,g)},h):h;o(d[v],f[v],e?s[v]:t.one,e?t.one:s[v],m)}else{var m,x=e?s[0]:l,_=e?l:s[0];if(bG(x))y({many:[x],one:_},!0,i,r,!0);else CG(x,_,m=u?k({delay:u(i,r)},h):h),o(x,_,x,_,m)}}}function NG(t){if(!t)return[];if(Y(t)){for(var e=[],n=0;n<t.length;n++)e.push(NG(t[n]));return e}var i=[];return t.traverse((function(t){t instanceof fs&&!t.disableMorphing&&!t.invisible&&!t.ignore&&i.push(t)})),i}var EG=So();function zG(t){var e=[];return E(t,(function(t){var n=t.data;if(!(n.count()>1e4))for(var i=n.getIndices(),r=function(t){for(var e=t.dimensions,n=0;n<e.length;n++){var i=t.getDimensionInfo(e[n]);if(i&&0===i.otherDims.itemGroupId)return e[n]}}(n),o=0;o<i.length;o++)e.push({data:n,dim:t.dim||r,divide:t.divide,dataIndex:o})})),e}function VG(t,e,n){t.traverse((function(t){t instanceof fs&&rh(t,{style:{opacity:0}},e,{dataIndex:n,isFrom:!0})}))}function BG(t){if(t.parent){var e=t.getComputedTransform();t.setLocalTransform(e),t.parent.remove(t)}}function FG(t){t.stopAnimation(),t.isGroup&&t.traverse((function(t){t.stopAnimation()}))}function GG(t,e,n){var i=eh("update",n,e);i&&t.traverse((function(t){if(t instanceof da){var e=function(t){return th(t).oldStyle}(t);e&&t.animateFrom({style:e},i)}}))}function WG(t,e,n){var i=zG(t),r=zG(e);function o(t,e,n,i,r){(n||t)&&e.animateFrom({style:n&&n!==t?A(A({},n.style),t.style):t.style},r)}function a(t){for(var e=0;e<t.length;e++)if(t[e].dim)return t[e].dim}var s=a(i),l=a(r),u=!1;function h(t,e){return function(n){var i=n.data,r=n.dataIndex;if(e)return i.getId(r);var o=i.hostModel&&i.hostModel.get("dataGroupId"),a=t?s||l:l||s,u=a&&i.getDimensionInfo(a),h=u&&u.ordinalMeta;if(u){var c=i.get(u.name,r);return h&&h.categories[c]||c+""}var p=i.getRawDataItem(r);return p&&p.groupId?p.groupId+"":o||i.getId(r)}}var c=function(t,e){var n=t.length;if(n!==e.length)return!1;for(var i=0;i<n;i++){var r=t[i],o=e[i];if(r.data.getId(r.dataIndex)!==o.data.getId(o.dataIndex))return!1}return!0}(i,r),p={};if(!c)for(var d=0;d<r.length;d++){var f=r[d],g=f.data.getItemGraphicEl(f.dataIndex);g&&(p[g.id]=!0)}function y(t,e){var n=i[e],a=r[t],s=a.data.hostModel,l=n.data.getItemGraphicEl(n.dataIndex),h=a.data.getItemGraphicEl(a.dataIndex);l!==h?l&&p[l.id]||h&&(FG(h),l?(FG(l),BG(l),u=!0,RG(NG(l),NG(h),a.divide,s,t,o)):VG(h,s,t)):h&&GG(h,a.dataIndex,s)}new Sm(i,r,h(!0,c),h(!1,c),null,"multiple").update(y).updateManyToOne((function(t,e){var n=r[t],a=n.data,s=a.hostModel,l=a.getItemGraphicEl(n.dataIndex),h=B(z(e,(function(t){return i[t].data.getItemGraphicEl(i[t].dataIndex)})),(function(t){return t&&t!==l&&!p[t.id]}));l&&(FG(l),h.length?(E(h,(function(t){FG(t),BG(t)})),u=!0,RG(NG(h),NG(l),n.divide,s,t,o)):VG(l,s,n.dataIndex))})).updateOneToMany((function(t,e){var n=i[e],a=n.data.getItemGraphicEl(n.dataIndex);if(!a||!p[a.id]){var s=B(z(t,(function(t){return r[t].data.getItemGraphicEl(r[t].dataIndex)})),(function(t){return t&&t!==a})),l=r[t[0]].data.hostModel;s.length&&(E(s,(function(t){return FG(t)})),a?(FG(a),BG(a),u=!0,RG(NG(a),NG(s),n.divide,l,t[0],o)):E(s,(function(e){return VG(e,l,t[0])})))}})).updateManyToMany((function(t,e){new Sm(e,t,(function(t){return i[t].data.getId(i[t].dataIndex)}),(function(t){return r[t].data.getId(r[t].dataIndex)})).update((function(n,i){y(t[n],e[i])})).execute()})).execute(),u&&E(e,(function(t){var e=t.data.hostModel,i=e&&n.getViewOfSeriesModel(e),r=eh("update",e,0);i&&e.isAnimationEnabled()&&r&&r.duration>0&&i.group.traverse((function(t){t instanceof fs&&!t.animators.length&&t.animateFrom({style:{opacity:0}},r)}))}))}function HG(t){var e=t.getModel("universalTransition").get("seriesKey");return e||t.id}function YG(t){return Y(t)?t.sort().join(","):t}function UG(t){if(t.hostModel)return t.hostModel.getModel("universalTransition").get("divideShape")}function XG(t,e){for(var n=0;n<t.length;n++){if(null!=e.seriesIndex&&e.seriesIndex===t[n].seriesIndex||null!=e.seriesId&&e.seriesId===t[n].id)return n}}_m([function(t){t.registerPainter("canvas",Vw)}]),_m([function(t){t.registerPainter("svg",Lw)}]),_m([function(t){t.registerChartView(mS),t.registerSeriesModel(Bw),t.registerLayout(xS("line",!0)),t.registerVisual({seriesType:"line",reset:function(t){var e=t.getData(),n=t.getModel("lineStyle").getLineStyle();n&&!n.stroke&&(n.stroke=e.getVisual("style").fill),e.setVisual("legendLineStyle",n)}}),t.registerProcessor(t.PRIORITY.PROCESSOR.STATISTIC,wS("line"))},function(t){t.registerChartView(LS),t.registerSeriesModel(MS),t.registerLayout(t.PRIORITY.VISUAL.LAYOUT,H(Dx,"bar")),t.registerLayout(t.PRIORITY.VISUAL.PROGRESSIVE_LAYOUT,Ax("bar")),t.registerProcessor(t.PRIORITY.PROCESSOR.STATISTIC,wS("bar")),t.registerAction({type:"changeAxisOrder",event:"changeAxisOrder",update:"update"},(function(t,e){var n=t.componentType||"series";e.eachComponent({mainType:n,query:t},(function(e){t.sortInfo&&e.axis.setCategorySortInfo(t.sortInfo)}))}))},function(t){t.registerChartView(aM),t.registerSeriesModel(uM),yy("pie",t.registerAction),t.registerLayout(H($S,"pie")),t.registerProcessor(JS("pie")),t.registerProcessor(function(t){return{seriesType:t,reset:function(t,e){var n=t.getData();n.filterSelf((function(t){var e=n.mapDimension("value"),i=n.get(e,t);return!(j(i)&&!isNaN(i)&&i<0)}))}}}("pie"))},function(t){_m(hI),t.registerSeriesModel(hM),t.registerChartView(fM),t.registerLayout(xS("scatter"))},function(t){_m(MI),t.registerChartView(gI),t.registerSeriesModel(yI),t.registerLayout(cI),t.registerProcessor(JS("radar")),t.registerPreprocessor(fI)},function(t){_m(JT),t.registerChartView(RT),t.registerSeriesModel(NT),t.registerLayout(zT),t.registerProcessor(t.PRIORITY.PROCESSOR.STATISTIC,ET),yy("map",t.registerAction)},function(t){t.registerChartView(hC),t.registerSeriesModel(PC),t.registerLayout(RC),t.registerVisual(NC),function(t){t.registerAction({type:"treeExpandAndCollapse",event:"treeExpandAndCollapse",update:"update"},(function(t,e){e.eachComponent({mainType:"series",subType:"tree",query:t},(function(e){var n=t.dataIndex,i=e.getData().tree.getNodeByDataIndex(n);i.isExpand=!i.isExpand}))})),t.registerAction({type:"treeRoam",event:"treeRoam",update:"none"},(function(t,e){e.eachComponent({mainType:"series",subType:"tree",query:t},(function(e){var n=qT(e.coordinateSystem,t);e.setCenter&&e.setCenter(n.center),e.setZoom&&e.setZoom(n.zoom)}))}))}(t)},function(t){t.registerSeriesModel(VC),t.registerChartView($C),t.registerVisual(fD),t.registerLayout(CD),function(t){for(var e=0;e<EC.length;e++)t.registerAction({type:EC[e],update:"updateView"},xt);t.registerAction({type:"treemapRootToNode",update:"updateView"},(function(t,e){e.eachComponent({mainType:"series",subType:"treemap",query:t},(function(e,n){var i=DC(t,["treemapZoomToNode","treemapRootToNode"],e);if(i){var r=e.getViewRoot();r&&(t.direction=kC(r,i.node)?"rollUp":"drillDown"),e.resetViewRoot(i.node)}}))}))}(t)},function(t){t.registerChartView(TA),t.registerSeriesModel(OA),t.registerProcessor(OD),t.registerVisual(RD),t.registerVisual(ED),t.registerLayout(XD),t.registerLayout(t.PRIORITY.VISUAL.POST_CHART_LAYOUT,QD),t.registerLayout(eA),t.registerCoordinateSystem("graphView",{dimensions:BT.dimensions,create:nA}),t.registerAction({type:"focusNodeAdjacency",event:"focusNodeAdjacency",update:"series:focusNodeAdjacency"},xt),t.registerAction({type:"unfocusNodeAdjacency",event:"unfocusNodeAdjacency",update:"series:unfocusNodeAdjacency"},xt),t.registerAction(RA,(function(t,e){e.eachComponent({mainType:"series",query:t},(function(e){var n=qT(e.coordinateSystem,t);e.setCenter&&e.setCenter(n.center),e.setZoom&&e.setZoom(n.zoom)}))}))},function(t){t.registerChartView(BA),t.registerSeriesModel(FA)},function(t){t.registerChartView(HA),t.registerSeriesModel(YA),t.registerLayout(UA),t.registerProcessor(JS("funnel"))},function(t){_m(vL),t.registerChartView(XA),t.registerSeriesModel($A),t.registerVisual(t.PRIORITY.VISUAL.BRUSH,tk)},function(t){t.registerChartView(_L),t.registerSeriesModel(bL),t.registerLayout(wL),t.registerVisual(RL),t.registerAction({type:"dragNode",event:"dragnode",update:"update"},(function(t,e){e.eachComponent({mainType:"series",subType:"sankey",query:t},(function(e){e.setNodePosition(t.dataIndex,[t.localX,t.localY])}))}))},function(t){t.registerSeriesModel(EL),t.registerChartView(zL),t.registerVisual(HL),t.registerLayout(UL),t.registerTransform(XL)},function(t){t.registerChartView(jL),t.registerSeriesModel(oP),t.registerPreprocessor(aP),t.registerVisual(cP),t.registerLayout(pP)},function(t){t.registerChartView(yP),t.registerSeriesModel(vP),t.registerLayout(xS("effectScatter"))},function(t){t.registerChartView(IP),t.registerSeriesModel(AP),t.registerLayout(MP),t.registerVisual(LP)},function(t){t.registerChartView(RP),t.registerSeriesModel(NP)},function(t){t.registerChartView(BP),t.registerSeriesModel(iO),t.registerLayout(t.PRIORITY.VISUAL.LAYOUT,H(Dx,"pictorialBar")),t.registerLayout(t.PRIORITY.VISUAL.PROGRESSIVE_LAYOUT,Ax("pictorialBar"))},function(t){t.registerChartView(rO),t.registerSeriesModel(oO),t.registerLayout(aO),t.registerProcessor(JS("themeRiver"))},function(t){t.registerChartView(cO),t.registerSeriesModel(pO),t.registerLayout(H(gO,"sunburst")),t.registerProcessor(H(JS,"sunburst")),t.registerVisual(vO),function(t){t.registerAction({type:uO,update:"updateView"},(function(t,e){e.eachComponent({mainType:"series",subType:"sunburst",query:t},(function(e,n){var i=DC(t,[uO],e);if(i){var r=e.getViewRoot();r&&(t.direction=kC(r,i.node)?"rollUp":"drillDown"),e.resetViewRoot(i.node)}}))})),t.registerAction({type:hO,update:"none"},(function(t,e,n){t=A({},t),e.eachComponent({mainType:"series",subType:"sunburst",query:t},(function(e){var n=DC(t,[hO],e);n&&(t.dataIndex=n.node.dataIndex)})),n.dispatchAction(A(t,{type:"highlight"}))})),t.registerAction({type:"sunburstUnhighlight",update:"updateView"},(function(t,e,n){t=A({},t),n.dispatchAction(A(t,{type:"downplay"}))}))}(t)},function(t){t.registerChartView(lR),t.registerSeriesModel(bO)}]),_m((function(t){_m(hI),_m(lN)})),_m((function(t){_m(lN),JM.registerAxisPointerClass("PolarAxisPointer",uN),t.registerCoordinateSystem("polar",SN),t.registerComponentModel(cN),t.registerComponentView(BN),wM(t,"angle",dN,zN),wM(t,"radius",fN,VN),t.registerComponentView(DN),t.registerComponentView(PN),t.registerLayout(H(EN,"bar"))})),_m(JT),_m((function(t){_m(lN),JM.registerAxisPointerClass("SingleAxisPointer",QN),t.registerComponentView(iE),t.registerComponentView(HN),t.registerComponentModel(UN),wM(t,"single",UN,UN.defaultOption),t.registerCoordinateSystem("single",KN)})),_m(vL),_m((function(t){t.registerComponentModel(rE),t.registerComponentView(aE),t.registerCoordinateSystem("calendar",lE)})),_m((function(t){t.registerComponentModel(fE),t.registerComponentView(vE),t.registerPreprocessor((function(t){var e=t.graphic;Y(e)?e[0]&&e[0].elements?t.graphic=[t.graphic[0]]:t.graphic=[{elements:e}]:e&&!e.elements&&(t.graphic=[{elements:[e]}])}))})),_m((function(t){t.registerComponentModel(YE),t.registerComponentView(XE),WE("saveAsImage",ZE),WE("magicType",KE),WE("dataView",iz),WE("dataZoom",Iz),WE("restore",lz),_m(BE)})),_m((function(t){_m(lN),t.registerComponentModel(Dz),t.registerComponentView(Uz),t.registerAction({type:"showTip",event:"showTip",update:"tooltip:manuallyShowTip"},xt),t.registerAction({type:"hideTip",event:"hideTip",update:"tooltip:manuallyHideTip"},xt)})),_m(lN),_m((function(t){t.registerComponentView(dV),t.registerComponentModel(fV),t.registerPreprocessor(Kz),t.registerVisual(t.PRIORITY.VISUAL.BRUSH,lV),t.registerAction({type:"brush",event:"brush",update:"updateVisual"},(function(t,e){e.eachComponent({mainType:"brush",query:t},(function(e){e.setAreas(t.areas)}))})),t.registerAction({type:"brushSelect",event:"brushSelected",update:"none"},xt),t.registerAction({type:"brushEnd",event:"brushEnd",update:"none"},xt),WE("brush",vV)})),_m((function(t){t.registerComponentModel(mV),t.registerComponentView(xV)})),_m((function(t){t.registerComponentModel(bV),t.registerComponentView(TV),t.registerSubTypeDefaulter("timeline",(function(){return"slider"})),function(t){t.registerAction({type:"timelineChange",event:"timelineChanged",update:"prepareAndUpdate"},(function(t,e,n){var i=e.getComponent("timeline");return i&&null!=t.currentIndex&&(i.setCurrentIndex(t.currentIndex),!i.get("loop",!0)&&i.isIndexMax()&&i.getPlayState()&&(i.setPlayState(!1),n.dispatchAction({type:"timelinePlayChange",playState:!1,from:t.from}))),e.resetOption("timeline",{replaceMerge:i.get("replaceMerge",!0)}),k({currentIndex:i.option.currentIndex},t)})),t.registerAction({type:"timelinePlayChange",event:"timelinePlayChanged",update:"update"},(function(t,e){var n=e.getComponent("timeline");n&&null!=t.playState&&n.setPlayState(t.playState)}))}(t),t.registerPreprocessor(AV)})),_m((function(t){t.registerComponentModel(EV),t.registerComponentView(ZV),t.registerPreprocessor((function(t){PV(t.series,"markPoint")&&(t.markPoint=t.markPoint||{})}))})),_m((function(t){t.registerComponentModel(jV),t.registerComponentView(eB),t.registerPreprocessor((function(t){PV(t.series,"markLine")&&(t.markLine=t.markLine||{})}))})),_m((function(t){t.registerComponentModel(nB),t.registerComponentView(hB),t.registerPreprocessor((function(t){PV(t.series,"markArea")&&(t.markArea=t.markArea||{})}))})),_m((function(t){_m(wB),_m(AB)})),_m((function(t){_m(GB),_m(KB)})),_m(GB),_m(KB),_m((function(t){_m(kF),_m(NF)})),_m(kF),_m(NF),_m((function(t){t.registerPreprocessor(FF),t.registerVisual(t.PRIORITY.VISUAL.ARIA,BF)})),_m((function(t){t.registerTransform(JF),t.registerTransform(QF)})),_m((function(t){t.registerComponentModel(tG),t.registerComponentView(eG)})),_m((function(t){t.registerUpdateLifecycle("series:beforeupdate",(function(t,e,n){E(ho(n.seriesTransition),(function(t){E(ho(t.to),(function(t){for(var e=n.updatedSeries,i=0;i<e.length;i++)(null!=t.seriesIndex&&t.seriesIndex===e[i].seriesIndex||null!=t.seriesId&&t.seriesId===e[i].id)&&(e[i].__universalTransitionEnabled=!0)}))}))})),t.registerUpdateLifecycle("series:transition",(function(t,e,n){var i=EG(e);if(i.oldSeries&&n.updatedSeries&&n.optionChanged){var r=n.seriesTransition;if(r)E(ho(r),(function(t){!function(t,e,n,i){var r=[],o=[];E(ho(t.from),(function(t){var n=XG(e.oldSeries,t);n>=0&&r.push({data:e.oldData[n],divide:UG(e.oldData[n]),dim:t.dimension})})),E(ho(t.to),(function(t){var e=XG(n.updatedSeries,t);if(e>=0){var i=n.updatedSeries[e].getData();o.push({data:i,divide:UG(i),dim:t.dimension})}})),r.length>0&&o.length>0&&WG(r,o,i)}(t,i,n,e)}));else{var o=function(t,e){var n=ft(),i=ft(),r=ft();return E(t.oldSeries,(function(e,n){var o=t.oldData[n],a=HG(e),s=YG(a);i.set(s,o),Y(a)&&E(a,(function(t){r.set(t,{data:o,key:s})}))})),E(e.updatedSeries,(function(t){if(t.isUniversalTransitionEnabled()&&t.isAnimationEnabled()){var e=t.getData(),o=HG(t),a=YG(o),s=i.get(a);if(s)n.set(a,{oldSeries:[{divide:UG(s),data:s}],newSeries:[{divide:UG(e),data:e}]});else if(Y(o)){var l=[];E(o,(function(t){var e=i.get(t);e&&l.push({divide:UG(e),data:e})})),l.length&&n.set(a,{oldSeries:l,newSeries:[{data:e,divide:UG(e)}]})}else{var u=r.get(o);if(u){var h=n.get(u.key);h||(h={oldSeries:[{data:u.data,divide:UG(u.data)}],newSeries:[]},n.set(u.key,h)),h.newSeries.push({data:e,divide:UG(e)})}}}})),n}(i,n);E(o.keys(),(function(t){var n=o.get(t);WG(n.oldSeries,n.newSeries,e)}))}E(n.updatedSeries,(function(t){t.__universalTransitionEnabled&&(t.__universalTransitionEnabled=!1)}))}for(var a=t.getSeries(),s=i.oldSeries=[],l=i.oldData=[],u=0;u<a.length;u++){var h=a[u].getData();h.count()<1e4&&(s.push(a[u]),l.push(h))}}))})),_m((function(t){t.registerUpdateLifecycle("series:beforeupdate",(function(t,e,n){var i=Tb(e).labelManager;i||(i=Tb(e).labelManager=new Ib),i.clearLabels()})),t.registerUpdateLifecycle("series:layoutlabels",(function(t,e,n){var i=Tb(e).labelManager;n.updatedSeries.forEach((function(t){i.addLabelsOfSeries(e.getViewOfSeriesModel(t))})),i.updateLayoutConfig(e),i.layout(e),i.processLabelsOverall()}))})),t.Axis=G_,t.ChartView=mg,t.ComponentModel=Ip,t.ComponentView=fg,t.List=Zm,t.Model=pc,t.PRIORITY=pv,t.SeriesModel=ag,t.color=Pn,t.connect=function(t){if(Y(t)){var e=t;t=null,E(e,(function(e){null!=e.group&&(t=e.group)})),t=t||"g_"+Jv++,E(e,(function(e){e.group=t}))}return Kv[t]=!0,t},t.dataTool={},t.dependencies={zrender:"5.3.0"},t.disConnect=tm,t.disconnect=em,t.dispose=function(t){X(t)?t=qv[t]:t instanceof Vv||(t=nm(t)),t instanceof Vv&&!t.isDisposed()&&t.dispose()},t.env=r,t.extendChartView=function(t){var e=mg.extend(t);return mg.registerClass(e),e},t.extendComponentModel=function(t){var e=Ip.extend(t);return Ip.registerClass(e),e},t.extendComponentView=function(t){var e=fg.extend(t);return fg.registerClass(e),e},t.extendSeriesModel=function(t){var e=ag.extend(t);return ag.registerClass(e),e},t.format=A_,t.getCoordinateSystemDimensions=function(t){var e=ud.get(t);if(e)return e.getDimensionsInfo?e.getDimensionsInfo():e.dimensions.slice()},t.getInstanceByDom=nm,t.getInstanceById=function(t){return qv[t]},t.getMap=function(t){var e=lv("getMap");return e&&e(t)},t.graphic=D_,t.helper=p_,t.init=function(t,e,n){var i=!(n&&n.ssr);if(i){0;var r=nm(t);if(r)return r;0}var o=new Vv(t,e,n);return o.id="ec_"+$v++,qv[o.id]=o,i&&ko(t,Qv,o.id),Ov(o),av.trigger("afterinit",o),o},t.innerDrawElementOnCanvas=$y,t.matrix=Gi,t.number=T_,t.parseGeoJSON=I_,t.parseGeoJson=I_,t.registerAction=um,t.registerCoordinateSystem=hm,t.registerLayout=cm,t.registerLoading=gm,t.registerLocale=wc,t.registerMap=ym,t.registerPostInit=am,t.registerPostUpdate=sm,t.registerPreprocessor=rm,t.registerProcessor=om,t.registerTheme=im,t.registerTransform=vm,t.registerUpdateLifecycle=lm,t.registerVisual=pm,t.setCanvasCreator=function(t){c({createCanvas:t})},t.setPlatformAPI=c,t.throttle=Cg,t.time=C_,t.use=_m,t.util=k_,t.vector=Ht,t.version="5.3.0",t.zrUtil=bt,t.zrender=Or,Object.defineProperty(t,"__esModule",{value:!0})}));
+ scaffolding/js/search-box.js view
@@ -0,0 +1,10425 @@+/* Generated by Spago v1.0.4 */+(() => {+  // output/Affjax/foreign.js+  function _ajax(platformSpecificDriver, timeoutErrorMessageIdent, requestFailedMessageIdent, mkHeader, options2) {+    return function(errback, callback) {+      var xhr = platformSpecificDriver.newXHR();+      var fixedUrl = platformSpecificDriver.fixupUrl(options2.url, xhr);+      xhr.open(options2.method || "GET", fixedUrl, true, options2.username, options2.password);+      if (options2.headers) {+        try {+          for (var i2 = 0, header2; (header2 = options2.headers[i2]) != null; i2++) {+            xhr.setRequestHeader(header2.field, header2.value);+          }+        } catch (e) {+          errback(e);+        }+      }+      var onerror = function(msgIdent) {+        return function() {+          errback(new Error(msgIdent));+        };+      };+      xhr.onerror = onerror(requestFailedMessageIdent);+      xhr.ontimeout = onerror(timeoutErrorMessageIdent);+      xhr.onload = function() {+        callback({+          status: xhr.status,+          statusText: xhr.statusText,+          headers: xhr.getAllResponseHeaders().split("\r\n").filter(function(header3) {+            return header3.length > 0;+          }).map(function(header3) {+            var i3 = header3.indexOf(":");+            return mkHeader(header3.substring(0, i3))(header3.substring(i3 + 2));+          }),+          body: xhr.response+        });+      };+      xhr.responseType = options2.responseType;+      xhr.withCredentials = options2.withCredentials;+      xhr.timeout = options2.timeout;+      xhr.send(options2.content);+      return function(error4, cancelErrback, cancelCallback) {+        try {+          xhr.abort();+        } catch (e) {+          return cancelErrback(e);+        }+        return cancelCallback();+      };+    };+  }++  // output/Data.Functor/foreign.js+  var arrayMap = function(f) {+    return function(arr) {+      var l = arr.length;+      var result = new Array(l);+      for (var i2 = 0; i2 < l; i2++) {+        result[i2] = f(arr[i2]);+      }+      return result;+    };+  };++  // output/Control.Semigroupoid/index.js+  var semigroupoidFn = {+    compose: function(f) {+      return function(g) {+        return function(x) {+          return f(g(x));+        };+      };+    }+  };+  var compose = function(dict) {+    return dict.compose;+  };++  // output/Control.Category/index.js+  var identity = function(dict) {+    return dict.identity;+  };+  var categoryFn = {+    identity: function(x) {+      return x;+    },+    Semigroupoid0: function() {+      return semigroupoidFn;+    }+  };++  // output/Data.Boolean/index.js+  var otherwise = true;++  // output/Data.Function/index.js+  var on = function(f) {+    return function(g) {+      return function(x) {+        return function(y) {+          return f(g(x))(g(y));+        };+      };+    };+  };+  var flip = function(f) {+    return function(b2) {+      return function(a2) {+        return f(a2)(b2);+      };+    };+  };+  var $$const = function(a2) {+    return function(v) {+      return a2;+    };+  };++  // output/Data.Unit/foreign.js+  var unit = void 0;++  // output/Type.Proxy/index.js+  var $$Proxy = /* @__PURE__ */ (function() {+    function $$Proxy2() {+    }+    ;+    $$Proxy2.value = new $$Proxy2();+    return $$Proxy2;+  })();++  // output/Data.Functor/index.js+  var map = function(dict) {+    return dict.map;+  };+  var mapFlipped = function(dictFunctor) {+    var map112 = map(dictFunctor);+    return function(fa) {+      return function(f) {+        return map112(f)(fa);+      };+    };+  };+  var $$void = function(dictFunctor) {+    return map(dictFunctor)($$const(unit));+  };+  var voidLeft = function(dictFunctor) {+    var map112 = map(dictFunctor);+    return function(f) {+      return function(x) {+        return map112($$const(x))(f);+      };+    };+  };+  var functorArray = {+    map: arrayMap+  };++  // output/Data.Semigroup/foreign.js+  var concatArray = function(xs) {+    return function(ys) {+      if (xs.length === 0) return ys;+      if (ys.length === 0) return xs;+      return xs.concat(ys);+    };+  };++  // output/Data.Symbol/index.js+  var reflectSymbol = function(dict) {+    return dict.reflectSymbol;+  };++  // output/Record.Unsafe/foreign.js+  var unsafeSet = function(label5) {+    return function(value15) {+      return function(rec) {+        var copy2 = {};+        for (var key in rec) {+          if ({}.hasOwnProperty.call(rec, key)) {+            copy2[key] = rec[key];+          }+        }+        copy2[label5] = value15;+        return copy2;+      };+    };+  };++  // output/Data.Semigroup/index.js+  var semigroupArray = {+    append: concatArray+  };+  var append = function(dict) {+    return dict.append;+  };+  var semigroupFn = function(dictSemigroup) {+    var append12 = append(dictSemigroup);+    return {+      append: function(f) {+        return function(g) {+          return function(x) {+            return append12(f(x))(g(x));+          };+        };+      }+    };+  };++  // output/Control.Alt/index.js+  var alt = function(dict) {+    return dict.alt;+  };++  // output/Control.Apply/index.js+  var identity2 = /* @__PURE__ */ identity(categoryFn);+  var apply = function(dict) {+    return dict.apply;+  };+  var applySecond = function(dictApply) {+    var apply1 = apply(dictApply);+    var map32 = map(dictApply.Functor0());+    return function(a2) {+      return function(b2) {+        return apply1(map32($$const(identity2))(a2))(b2);+      };+    };+  };++  // output/Control.Applicative/index.js+  var pure = function(dict) {+    return dict.pure;+  };+  var unless = function(dictApplicative) {+    var pure16 = pure(dictApplicative);+    return function(v) {+      return function(v1) {+        if (!v) {+          return v1;+        }+        ;+        if (v) {+          return pure16(unit);+        }+        ;+        throw new Error("Failed pattern match at Control.Applicative (line 68, column 1 - line 68, column 65): " + [v.constructor.name, v1.constructor.name]);+      };+    };+  };+  var when = function(dictApplicative) {+    var pure16 = pure(dictApplicative);+    return function(v) {+      return function(v1) {+        if (v) {+          return v1;+        }+        ;+        if (!v) {+          return pure16(unit);+        }+        ;+        throw new Error("Failed pattern match at Control.Applicative (line 63, column 1 - line 63, column 63): " + [v.constructor.name, v1.constructor.name]);+      };+    };+  };+  var liftA1 = function(dictApplicative) {+    var apply4 = apply(dictApplicative.Apply0());+    var pure16 = pure(dictApplicative);+    return function(f) {+      return function(a2) {+        return apply4(pure16(f))(a2);+      };+    };+  };++  // output/Data.Bounded/foreign.js+  var topChar = String.fromCharCode(65535);+  var bottomChar = String.fromCharCode(0);+  var topNumber = Number.POSITIVE_INFINITY;+  var bottomNumber = Number.NEGATIVE_INFINITY;++  // output/Data.Ord/foreign.js+  var unsafeCompareImpl = function(lt) {+    return function(eq5) {+      return function(gt) {+        return function(x) {+          return function(y) {+            return x < y ? lt : x === y ? eq5 : gt;+          };+        };+      };+    };+  };+  var ordIntImpl = unsafeCompareImpl;+  var ordStringImpl = unsafeCompareImpl;++  // output/Data.Eq/foreign.js+  var refEq = function(r1) {+    return function(r2) {+      return r1 === r2;+    };+  };+  var eqBooleanImpl = refEq;+  var eqIntImpl = refEq;+  var eqStringImpl = refEq;++  // output/Data.Eq/index.js+  var eqString = {+    eq: eqStringImpl+  };+  var eqInt = {+    eq: eqIntImpl+  };+  var eqBoolean = {+    eq: eqBooleanImpl+  };+  var eq = function(dict) {+    return dict.eq;+  };+  var eq2 = /* @__PURE__ */ eq(eqBoolean);+  var notEq = function(dictEq) {+    var eq32 = eq(dictEq);+    return function(x) {+      return function(y) {+        return eq2(eq32(x)(y))(false);+      };+    };+  };++  // output/Data.Ordering/index.js+  var LT = /* @__PURE__ */ (function() {+    function LT2() {+    }+    ;+    LT2.value = new LT2();+    return LT2;+  })();+  var GT = /* @__PURE__ */ (function() {+    function GT2() {+    }+    ;+    GT2.value = new GT2();+    return GT2;+  })();+  var EQ = /* @__PURE__ */ (function() {+    function EQ2() {+    }+    ;+    EQ2.value = new EQ2();+    return EQ2;+  })();++  // output/Data.Ord/index.js+  var ordString = /* @__PURE__ */ (function() {+    return {+      compare: ordStringImpl(LT.value)(EQ.value)(GT.value),+      Eq0: function() {+        return eqString;+      }+    };+  })();+  var ordInt = /* @__PURE__ */ (function() {+    return {+      compare: ordIntImpl(LT.value)(EQ.value)(GT.value),+      Eq0: function() {+        return eqInt;+      }+    };+  })();+  var compare = function(dict) {+    return dict.compare;+  };++  // output/Data.Show/foreign.js+  var showIntImpl = function(n) {+    return n.toString();+  };+  var showStringImpl = function(s) {+    var l = s.length;+    return '"' + s.replace(+      /[\0-\x1F\x7F"\\]/g,+      // eslint-disable-line no-control-regex+      function(c, i2) {+        switch (c) {+          case '"':+          case "\\":+            return "\\" + c;+          case "\x07":+            return "\\a";+          case "\b":+            return "\\b";+          case "\f":+            return "\\f";+          case "\n":+            return "\\n";+          case "\r":+            return "\\r";+          case "	":+            return "\\t";+          case "\v":+            return "\\v";+        }+        var k = i2 + 1;+        var empty7 = k < l && s[k] >= "0" && s[k] <= "9" ? "\\&" : "";+        return "\\" + c.charCodeAt(0).toString(10) + empty7;+      }+    ) + '"';+  };++  // output/Data.Show/index.js+  var showString = {+    show: showStringImpl+  };+  var showInt = {+    show: showIntImpl+  };+  var show = function(dict) {+    return dict.show;+  };++  // output/Data.Generic.Rep/index.js+  var Inl = /* @__PURE__ */ (function() {+    function Inl2(value0) {+      this.value0 = value0;+    }+    ;+    Inl2.create = function(value0) {+      return new Inl2(value0);+    };+    return Inl2;+  })();+  var Inr = /* @__PURE__ */ (function() {+    function Inr2(value0) {+      this.value0 = value0;+    }+    ;+    Inr2.create = function(value0) {+      return new Inr2(value0);+    };+    return Inr2;+  })();+  var NoArguments = /* @__PURE__ */ (function() {+    function NoArguments2() {+    }+    ;+    NoArguments2.value = new NoArguments2();+    return NoArguments2;+  })();+  var Argument = function(x) {+    return x;+  };+  var to = function(dict) {+    return dict.to;+  };++  // output/Data.Maybe/index.js+  var identity3 = /* @__PURE__ */ identity(categoryFn);+  var Nothing = /* @__PURE__ */ (function() {+    function Nothing2() {+    }+    ;+    Nothing2.value = new Nothing2();+    return Nothing2;+  })();+  var Just = /* @__PURE__ */ (function() {+    function Just2(value0) {+      this.value0 = value0;+    }+    ;+    Just2.create = function(value0) {+      return new Just2(value0);+    };+    return Just2;+  })();+  var maybe = function(v) {+    return function(v1) {+      return function(v2) {+        if (v2 instanceof Nothing) {+          return v;+        }+        ;+        if (v2 instanceof Just) {+          return v1(v2.value0);+        }+        ;+        throw new Error("Failed pattern match at Data.Maybe (line 237, column 1 - line 237, column 51): " + [v.constructor.name, v1.constructor.name, v2.constructor.name]);+      };+    };+  };+  var isNothing = /* @__PURE__ */ maybe(true)(/* @__PURE__ */ $$const(false));+  var isJust = /* @__PURE__ */ maybe(false)(/* @__PURE__ */ $$const(true));+  var functorMaybe = {+    map: function(v) {+      return function(v1) {+        if (v1 instanceof Just) {+          return new Just(v(v1.value0));+        }+        ;+        return Nothing.value;+      };+    }+  };+  var map2 = /* @__PURE__ */ map(functorMaybe);+  var fromMaybe = function(a2) {+    return maybe(a2)(identity3);+  };+  var fromJust = function() {+    return function(v) {+      if (v instanceof Just) {+        return v.value0;+      }+      ;+      throw new Error("Failed pattern match at Data.Maybe (line 288, column 1 - line 288, column 46): " + [v.constructor.name]);+    };+  };+  var eqMaybe = function(dictEq) {+    var eq5 = eq(dictEq);+    return {+      eq: function(x) {+        return function(y) {+          if (x instanceof Nothing && y instanceof Nothing) {+            return true;+          }+          ;+          if (x instanceof Just && y instanceof Just) {+            return eq5(x.value0)(y.value0);+          }+          ;+          return false;+        };+      }+    };+  };+  var applyMaybe = {+    apply: function(v) {+      return function(v1) {+        if (v instanceof Just) {+          return map2(v.value0)(v1);+        }+        ;+        if (v instanceof Nothing) {+          return Nothing.value;+        }+        ;+        throw new Error("Failed pattern match at Data.Maybe (line 67, column 1 - line 69, column 30): " + [v.constructor.name, v1.constructor.name]);+      };+    },+    Functor0: function() {+      return functorMaybe;+    }+  };+  var bindMaybe = {+    bind: function(v) {+      return function(v1) {+        if (v instanceof Just) {+          return v1(v.value0);+        }+        ;+        if (v instanceof Nothing) {+          return Nothing.value;+        }+        ;+        throw new Error("Failed pattern match at Data.Maybe (line 125, column 1 - line 127, column 28): " + [v.constructor.name, v1.constructor.name]);+      };+    },+    Apply0: function() {+      return applyMaybe;+    }+  };+  var applicativeMaybe = /* @__PURE__ */ (function() {+    return {+      pure: Just.create,+      Apply0: function() {+        return applyMaybe;+      }+    };+  })();++  // output/Data.MediaType.Common/index.js+  var applicationJSON = "application/json";+  var applicationFormURLEncoded = "application/x-www-form-urlencoded";++  // output/Affjax.RequestBody/index.js+  var ArrayView = /* @__PURE__ */ (function() {+    function ArrayView2(value0) {+      this.value0 = value0;+    }+    ;+    ArrayView2.create = function(value0) {+      return new ArrayView2(value0);+    };+    return ArrayView2;+  })();+  var Blob = /* @__PURE__ */ (function() {+    function Blob3(value0) {+      this.value0 = value0;+    }+    ;+    Blob3.create = function(value0) {+      return new Blob3(value0);+    };+    return Blob3;+  })();+  var Document = /* @__PURE__ */ (function() {+    function Document3(value0) {+      this.value0 = value0;+    }+    ;+    Document3.create = function(value0) {+      return new Document3(value0);+    };+    return Document3;+  })();+  var $$String = /* @__PURE__ */ (function() {+    function $$String3(value0) {+      this.value0 = value0;+    }+    ;+    $$String3.create = function(value0) {+      return new $$String3(value0);+    };+    return $$String3;+  })();+  var FormData = /* @__PURE__ */ (function() {+    function FormData2(value0) {+      this.value0 = value0;+    }+    ;+    FormData2.create = function(value0) {+      return new FormData2(value0);+    };+    return FormData2;+  })();+  var FormURLEncoded = /* @__PURE__ */ (function() {+    function FormURLEncoded2(value0) {+      this.value0 = value0;+    }+    ;+    FormURLEncoded2.create = function(value0) {+      return new FormURLEncoded2(value0);+    };+    return FormURLEncoded2;+  })();+  var Json = /* @__PURE__ */ (function() {+    function Json3(value0) {+      this.value0 = value0;+    }+    ;+    Json3.create = function(value0) {+      return new Json3(value0);+    };+    return Json3;+  })();+  var toMediaType = function(v) {+    if (v instanceof FormURLEncoded) {+      return new Just(applicationFormURLEncoded);+    }+    ;+    if (v instanceof Json) {+      return new Just(applicationJSON);+    }+    ;+    return Nothing.value;+  };++  // output/Unsafe.Coerce/foreign.js+  var unsafeCoerce2 = function(x) {+    return x;+  };++  // output/Safe.Coerce/index.js+  var coerce = function() {+    return unsafeCoerce2;+  };++  // output/Data.Newtype/index.js+  var coerce2 = /* @__PURE__ */ coerce();+  var unwrap = function() {+    return coerce2;+  };+  var under = function() {+    return function() {+      return function(v) {+        return coerce2;+      };+    };+  };+  var alaF = function() {+    return function() {+      return function() {+        return function() {+          return function(v) {+            return coerce2;+          };+        };+      };+    };+  };++  // output/Affjax.RequestHeader/index.js+  var unwrap2 = /* @__PURE__ */ unwrap();+  var Accept = /* @__PURE__ */ (function() {+    function Accept2(value0) {+      this.value0 = value0;+    }+    ;+    Accept2.create = function(value0) {+      return new Accept2(value0);+    };+    return Accept2;+  })();+  var ContentType = /* @__PURE__ */ (function() {+    function ContentType2(value0) {+      this.value0 = value0;+    }+    ;+    ContentType2.create = function(value0) {+      return new ContentType2(value0);+    };+    return ContentType2;+  })();+  var RequestHeader = /* @__PURE__ */ (function() {+    function RequestHeader2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    RequestHeader2.create = function(value0) {+      return function(value1) {+        return new RequestHeader2(value0, value1);+      };+    };+    return RequestHeader2;+  })();+  var value = function(v) {+    if (v instanceof Accept) {+      return unwrap2(v.value0);+    }+    ;+    if (v instanceof ContentType) {+      return unwrap2(v.value0);+    }+    ;+    if (v instanceof RequestHeader) {+      return v.value1;+    }+    ;+    throw new Error("Failed pattern match at Affjax.RequestHeader (line 26, column 1 - line 26, column 33): " + [v.constructor.name]);+  };+  var name = function(v) {+    if (v instanceof Accept) {+      return "Accept";+    }+    ;+    if (v instanceof ContentType) {+      return "Content-Type";+    }+    ;+    if (v instanceof RequestHeader) {+      return v.value0;+    }+    ;+    throw new Error("Failed pattern match at Affjax.RequestHeader (line 21, column 1 - line 21, column 32): " + [v.constructor.name]);+  };++  // output/Affjax.ResponseFormat/index.js+  var identity4 = /* @__PURE__ */ identity(categoryFn);+  var $$ArrayBuffer = /* @__PURE__ */ (function() {+    function $$ArrayBuffer2(value0) {+      this.value0 = value0;+    }+    ;+    $$ArrayBuffer2.create = function(value0) {+      return new $$ArrayBuffer2(value0);+    };+    return $$ArrayBuffer2;+  })();+  var Blob2 = /* @__PURE__ */ (function() {+    function Blob3(value0) {+      this.value0 = value0;+    }+    ;+    Blob3.create = function(value0) {+      return new Blob3(value0);+    };+    return Blob3;+  })();+  var Document2 = /* @__PURE__ */ (function() {+    function Document3(value0) {+      this.value0 = value0;+    }+    ;+    Document3.create = function(value0) {+      return new Document3(value0);+    };+    return Document3;+  })();+  var Json2 = /* @__PURE__ */ (function() {+    function Json3(value0) {+      this.value0 = value0;+    }+    ;+    Json3.create = function(value0) {+      return new Json3(value0);+    };+    return Json3;+  })();+  var $$String2 = /* @__PURE__ */ (function() {+    function $$String3(value0) {+      this.value0 = value0;+    }+    ;+    $$String3.create = function(value0) {+      return new $$String3(value0);+    };+    return $$String3;+  })();+  var Ignore = /* @__PURE__ */ (function() {+    function Ignore2(value0) {+      this.value0 = value0;+    }+    ;+    Ignore2.create = function(value0) {+      return new Ignore2(value0);+    };+    return Ignore2;+  })();+  var toResponseType = function(v) {+    if (v instanceof $$ArrayBuffer) {+      return "arraybuffer";+    }+    ;+    if (v instanceof Blob2) {+      return "blob";+    }+    ;+    if (v instanceof Document2) {+      return "document";+    }+    ;+    if (v instanceof Json2) {+      return "text";+    }+    ;+    if (v instanceof $$String2) {+      return "text";+    }+    ;+    if (v instanceof Ignore) {+      return "";+    }+    ;+    throw new Error("Failed pattern match at Affjax.ResponseFormat (line 44, column 3 - line 50, column 19): " + [v.constructor.name]);+  };+  var toMediaType2 = function(v) {+    if (v instanceof Json2) {+      return new Just(applicationJSON);+    }+    ;+    return Nothing.value;+  };+  var json = /* @__PURE__ */ (function() {+    return new Json2(identity4);+  })();+  var ignore = /* @__PURE__ */ (function() {+    return new Ignore(identity4);+  })();++  // output/Affjax.ResponseHeader/index.js+  var ResponseHeader = /* @__PURE__ */ (function() {+    function ResponseHeader2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    ResponseHeader2.create = function(value0) {+      return function(value1) {+        return new ResponseHeader2(value0, value1);+      };+    };+    return ResponseHeader2;+  })();++  // output/Control.Bind/index.js+  var discard = function(dict) {+    return dict.discard;+  };+  var bind = function(dict) {+    return dict.bind;+  };+  var bindFlipped = function(dictBind) {+    return flip(bind(dictBind));+  };+  var composeKleisliFlipped = function(dictBind) {+    var bindFlipped12 = bindFlipped(dictBind);+    return function(f) {+      return function(g) {+        return function(a2) {+          return bindFlipped12(f)(g(a2));+        };+      };+    };+  };+  var composeKleisli = function(dictBind) {+    var bind16 = bind(dictBind);+    return function(f) {+      return function(g) {+        return function(a2) {+          return bind16(f(a2))(g);+        };+      };+    };+  };+  var discardUnit = {+    discard: function(dictBind) {+      return bind(dictBind);+    }+  };++  // output/Data.Either/index.js+  var Left = /* @__PURE__ */ (function() {+    function Left2(value0) {+      this.value0 = value0;+    }+    ;+    Left2.create = function(value0) {+      return new Left2(value0);+    };+    return Left2;+  })();+  var Right = /* @__PURE__ */ (function() {+    function Right2(value0) {+      this.value0 = value0;+    }+    ;+    Right2.create = function(value0) {+      return new Right2(value0);+    };+    return Right2;+  })();+  var note = function(a2) {+    return maybe(new Left(a2))(Right.create);+  };+  var functorEither = {+    map: function(f) {+      return function(m) {+        if (m instanceof Left) {+          return new Left(m.value0);+        }+        ;+        if (m instanceof Right) {+          return new Right(f(m.value0));+        }+        ;+        throw new Error("Failed pattern match at Data.Either (line 0, column 0 - line 0, column 0): " + [m.constructor.name]);+      };+    }+  };+  var map3 = /* @__PURE__ */ map(functorEither);+  var either = function(v) {+    return function(v1) {+      return function(v2) {+        if (v2 instanceof Left) {+          return v(v2.value0);+        }+        ;+        if (v2 instanceof Right) {+          return v1(v2.value0);+        }+        ;+        throw new Error("Failed pattern match at Data.Either (line 208, column 1 - line 208, column 64): " + [v.constructor.name, v1.constructor.name, v2.constructor.name]);+      };+    };+  };+  var applyEither = {+    apply: function(v) {+      return function(v1) {+        if (v instanceof Left) {+          return new Left(v.value0);+        }+        ;+        if (v instanceof Right) {+          return map3(v.value0)(v1);+        }+        ;+        throw new Error("Failed pattern match at Data.Either (line 70, column 1 - line 72, column 30): " + [v.constructor.name, v1.constructor.name]);+      };+    },+    Functor0: function() {+      return functorEither;+    }+  };+  var bindEither = {+    bind: /* @__PURE__ */ either(function(e) {+      return function(v) {+        return new Left(e);+      };+    })(function(a2) {+      return function(f) {+        return f(a2);+      };+    }),+    Apply0: function() {+      return applyEither;+    }+  };+  var applicativeEither = /* @__PURE__ */ (function() {+    return {+      pure: Right.create,+      Apply0: function() {+        return applyEither;+      }+    };+  })();+  var altEither = {+    alt: function(v) {+      return function(v1) {+        if (v instanceof Left) {+          return v1;+        }+        ;+        return v;+      };+    },+    Functor0: function() {+      return functorEither;+    }+  };++  // output/Effect/foreign.js+  var pureE = function(a2) {+    return function() {+      return a2;+    };+  };+  var bindE = function(a2) {+    return function(f) {+      return function() {+        return f(a2())();+      };+    };+  };++  // output/Control.Monad/index.js+  var unlessM = function(dictMonad) {+    var bind11 = bind(dictMonad.Bind1());+    var unless2 = unless(dictMonad.Applicative0());+    return function(mb) {+      return function(m) {+        return bind11(mb)(function(b2) {+          return unless2(b2)(m);+        });+      };+    };+  };+  var ap = function(dictMonad) {+    var bind11 = bind(dictMonad.Bind1());+    var pure16 = pure(dictMonad.Applicative0());+    return function(f) {+      return function(a2) {+        return bind11(f)(function(f$prime) {+          return bind11(a2)(function(a$prime) {+            return pure16(f$prime(a$prime));+          });+        });+      };+    };+  };++  // output/Data.Monoid/index.js+  var mempty = function(dict) {+    return dict.mempty;+  };+  var monoidFn = function(dictMonoid) {+    var mempty1 = mempty(dictMonoid);+    var semigroupFn2 = semigroupFn(dictMonoid.Semigroup0());+    return {+      mempty: function(v) {+        return mempty1;+      },+      Semigroup0: function() {+        return semigroupFn2;+      }+    };+  };++  // output/Effect/index.js+  var $runtime_lazy = function(name16, moduleName, init3) {+    var state3 = 0;+    var val;+    return function(lineNumber) {+      if (state3 === 2) return val;+      if (state3 === 1) throw new ReferenceError(name16 + " was needed before it finished initializing (module " + moduleName + ", line " + lineNumber + ")", moduleName, lineNumber);+      state3 = 1;+      val = init3();+      state3 = 2;+      return val;+    };+  };+  var monadEffect = {+    Applicative0: function() {+      return applicativeEffect;+    },+    Bind1: function() {+      return bindEffect;+    }+  };+  var bindEffect = {+    bind: bindE,+    Apply0: function() {+      return $lazy_applyEffect(0);+    }+  };+  var applicativeEffect = {+    pure: pureE,+    Apply0: function() {+      return $lazy_applyEffect(0);+    }+  };+  var $lazy_functorEffect = /* @__PURE__ */ $runtime_lazy("functorEffect", "Effect", function() {+    return {+      map: liftA1(applicativeEffect)+    };+  });+  var $lazy_applyEffect = /* @__PURE__ */ $runtime_lazy("applyEffect", "Effect", function() {+    return {+      apply: ap(monadEffect),+      Functor0: function() {+        return $lazy_functorEffect(0);+      }+    };+  });+  var functorEffect = /* @__PURE__ */ $lazy_functorEffect(20);++  // output/Effect.Exception/foreign.js+  function error(msg) {+    return new Error(msg);+  }+  function message(e) {+    return e.message;+  }+  function throwException(e) {+    return function() {+      throw e;+    };+  }++  // output/Effect.Exception/index.js+  var $$throw = function($4) {+    return throwException(error($4));+  };++  // output/Control.Monad.Error.Class/index.js+  var throwError = function(dict) {+    return dict.throwError;+  };+  var catchError = function(dict) {+    return dict.catchError;+  };+  var $$try = function(dictMonadError) {+    var catchError1 = catchError(dictMonadError);+    var Monad0 = dictMonadError.MonadThrow0().Monad0();+    var map32 = map(Monad0.Bind1().Apply0().Functor0());+    var pure16 = pure(Monad0.Applicative0());+    return function(a2) {+      return catchError1(map32(Right.create)(a2))(function($52) {+        return pure16(Left.create($52));+      });+    };+  };++  // output/Data.Identity/index.js+  var Identity = function(x) {+    return x;+  };+  var functorIdentity = {+    map: function(f) {+      return function(m) {+        return f(m);+      };+    }+  };+  var applyIdentity = {+    apply: function(v) {+      return function(v1) {+        return v(v1);+      };+    },+    Functor0: function() {+      return functorIdentity;+    }+  };+  var bindIdentity = {+    bind: function(v) {+      return function(f) {+        return f(v);+      };+    },+    Apply0: function() {+      return applyIdentity;+    }+  };+  var applicativeIdentity = {+    pure: Identity,+    Apply0: function() {+      return applyIdentity;+    }+  };+  var monadIdentity = {+    Applicative0: function() {+      return applicativeIdentity;+    },+    Bind1: function() {+      return bindIdentity;+    }+  };++  // output/Effect.Ref/foreign.js+  var _new = function(val) {+    return function() {+      return { value: val };+    };+  };+  var read = function(ref2) {+    return function() {+      return ref2.value;+    };+  };+  var modifyImpl = function(f) {+    return function(ref2) {+      return function() {+        var t = f(ref2.value);+        ref2.value = t.state;+        return t.value;+      };+    };+  };+  var write = function(val) {+    return function(ref2) {+      return function() {+        ref2.value = val;+      };+    };+  };++  // output/Effect.Ref/index.js+  var $$void2 = /* @__PURE__ */ $$void(functorEffect);+  var $$new = _new;+  var modify$prime = modifyImpl;+  var modify = function(f) {+    return modify$prime(function(s) {+      var s$prime = f(s);+      return {+        state: s$prime,+        value: s$prime+      };+    });+  };+  var modify_ = function(f) {+    return function(s) {+      return $$void2(modify(f)(s));+    };+  };++  // output/Control.Monad.Rec.Class/index.js+  var bindFlipped2 = /* @__PURE__ */ bindFlipped(bindEffect);+  var map4 = /* @__PURE__ */ map(functorEffect);+  var Loop = /* @__PURE__ */ (function() {+    function Loop2(value0) {+      this.value0 = value0;+    }+    ;+    Loop2.create = function(value0) {+      return new Loop2(value0);+    };+    return Loop2;+  })();+  var Done = /* @__PURE__ */ (function() {+    function Done2(value0) {+      this.value0 = value0;+    }+    ;+    Done2.create = function(value0) {+      return new Done2(value0);+    };+    return Done2;+  })();+  var tailRecM = function(dict) {+    return dict.tailRecM;+  };+  var monadRecEffect = {+    tailRecM: function(f) {+      return function(a2) {+        var fromDone = function(v) {+          if (v instanceof Done) {+            return v.value0;+          }+          ;+          throw new Error("Failed pattern match at Control.Monad.Rec.Class (line 137, column 30 - line 137, column 44): " + [v.constructor.name]);+        };+        return function __do2() {+          var r = bindFlipped2($$new)(f(a2))();+          (function() {+            while (!(function __do3() {+              var v = read(r)();+              if (v instanceof Loop) {+                var e = f(v.value0)();+                write(e)(r)();+                return false;+              }+              ;+              if (v instanceof Done) {+                return true;+              }+              ;+              throw new Error("Failed pattern match at Control.Monad.Rec.Class (line 128, column 22 - line 133, column 28): " + [v.constructor.name]);+            })()) {+            }+            ;+            return {};+          })();+          return map4(fromDone)(read(r))();+        };+      };+    },+    Monad0: function() {+      return monadEffect;+    }+  };++  // output/Data.HeytingAlgebra/foreign.js+  var boolConj = function(b1) {+    return function(b2) {+      return b1 && b2;+    };+  };+  var boolDisj = function(b1) {+    return function(b2) {+      return b1 || b2;+    };+  };+  var boolNot = function(b2) {+    return !b2;+  };++  // output/Data.HeytingAlgebra/index.js+  var tt = function(dict) {+    return dict.tt;+  };+  var not = function(dict) {+    return dict.not;+  };+  var implies = function(dict) {+    return dict.implies;+  };+  var ff = function(dict) {+    return dict.ff;+  };+  var disj = function(dict) {+    return dict.disj;+  };+  var heytingAlgebraBoolean = {+    ff: false,+    tt: true,+    implies: function(a2) {+      return function(b2) {+        return disj(heytingAlgebraBoolean)(not(heytingAlgebraBoolean)(a2))(b2);+      };+    },+    conj: boolConj,+    disj: boolDisj,+    not: boolNot+  };+  var conj = function(dict) {+    return dict.conj;+  };+  var heytingAlgebraFunction = function(dictHeytingAlgebra) {+    var ff1 = ff(dictHeytingAlgebra);+    var tt1 = tt(dictHeytingAlgebra);+    var implies1 = implies(dictHeytingAlgebra);+    var conj1 = conj(dictHeytingAlgebra);+    var disj1 = disj(dictHeytingAlgebra);+    var not1 = not(dictHeytingAlgebra);+    return {+      ff: function(v) {+        return ff1;+      },+      tt: function(v) {+        return tt1;+      },+      implies: function(f) {+        return function(g) {+          return function(a2) {+            return implies1(f(a2))(g(a2));+          };+        };+      },+      conj: function(f) {+        return function(g) {+          return function(a2) {+            return conj1(f(a2))(g(a2));+          };+        };+      },+      disj: function(f) {+        return function(g) {+          return function(a2) {+            return disj1(f(a2))(g(a2));+          };+        };+      },+      not: function(f) {+        return function(a2) {+          return not1(f(a2));+        };+      }+    };+  };++  // output/Data.Tuple/index.js+  var Tuple = /* @__PURE__ */ (function() {+    function Tuple2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    Tuple2.create = function(value0) {+      return function(value1) {+        return new Tuple2(value0, value1);+      };+    };+    return Tuple2;+  })();+  var snd = function(v) {+    return v.value1;+  };+  var functorTuple = {+    map: function(f) {+      return function(m) {+        return new Tuple(m.value0, f(m.value1));+      };+    }+  };+  var fst = function(v) {+    return v.value0;+  };++  // output/Control.Monad.State.Class/index.js+  var state = function(dict) {+    return dict.state;+  };+  var put = function(dictMonadState) {+    var state1 = state(dictMonadState);+    return function(s) {+      return state1(function(v) {+        return new Tuple(unit, s);+      });+    };+  };+  var modify_2 = function(dictMonadState) {+    var state1 = state(dictMonadState);+    return function(f) {+      return state1(function(s) {+        return new Tuple(unit, f(s));+      });+    };+  };+  var get = function(dictMonadState) {+    return state(dictMonadState)(function(s) {+      return new Tuple(s, s);+    });+  };++  // output/Effect.Class/index.js+  var monadEffectEffect = {+    liftEffect: /* @__PURE__ */ identity(categoryFn),+    Monad0: function() {+      return monadEffect;+    }+  };+  var liftEffect = function(dict) {+    return dict.liftEffect;+  };++  // output/Control.Monad.Except.Trans/index.js+  var map5 = /* @__PURE__ */ map(functorEither);+  var ExceptT = function(x) {+    return x;+  };+  var runExceptT = function(v) {+    return v;+  };+  var mapExceptT = function(f) {+    return function(v) {+      return f(v);+    };+  };+  var functorExceptT = function(dictFunctor) {+    var map112 = map(dictFunctor);+    return {+      map: function(f) {+        return mapExceptT(map112(map5(f)));+      }+    };+  };+  var monadExceptT = function(dictMonad) {+    return {+      Applicative0: function() {+        return applicativeExceptT(dictMonad);+      },+      Bind1: function() {+        return bindExceptT(dictMonad);+      }+    };+  };+  var bindExceptT = function(dictMonad) {+    var bind11 = bind(dictMonad.Bind1());+    var pure16 = pure(dictMonad.Applicative0());+    return {+      bind: function(v) {+        return function(k) {+          return bind11(v)(either(function($187) {+            return pure16(Left.create($187));+          })(function(a2) {+            var v1 = k(a2);+            return v1;+          }));+        };+      },+      Apply0: function() {+        return applyExceptT(dictMonad);+      }+    };+  };+  var applyExceptT = function(dictMonad) {+    var functorExceptT1 = functorExceptT(dictMonad.Bind1().Apply0().Functor0());+    return {+      apply: ap(monadExceptT(dictMonad)),+      Functor0: function() {+        return functorExceptT1;+      }+    };+  };+  var applicativeExceptT = function(dictMonad) {+    return {+      pure: (function() {+        var $188 = pure(dictMonad.Applicative0());+        return function($189) {+          return ExceptT($188(Right.create($189)));+        };+      })(),+      Apply0: function() {+        return applyExceptT(dictMonad);+      }+    };+  };+  var monadThrowExceptT = function(dictMonad) {+    var monadExceptT1 = monadExceptT(dictMonad);+    return {+      throwError: (function() {+        var $198 = pure(dictMonad.Applicative0());+        return function($199) {+          return ExceptT($198(Left.create($199)));+        };+      })(),+      Monad0: function() {+        return monadExceptT1;+      }+    };+  };+  var altExceptT = function(dictSemigroup) {+    var append5 = append(dictSemigroup);+    return function(dictMonad) {+      var Bind1 = dictMonad.Bind1();+      var bind11 = bind(Bind1);+      var pure16 = pure(dictMonad.Applicative0());+      var functorExceptT1 = functorExceptT(Bind1.Apply0().Functor0());+      return {+        alt: function(v) {+          return function(v1) {+            return bind11(v)(function(rm) {+              if (rm instanceof Right) {+                return pure16(new Right(rm.value0));+              }+              ;+              if (rm instanceof Left) {+                return bind11(v1)(function(rn) {+                  if (rn instanceof Right) {+                    return pure16(new Right(rn.value0));+                  }+                  ;+                  if (rn instanceof Left) {+                    return pure16(new Left(append5(rm.value0)(rn.value0)));+                  }+                  ;+                  throw new Error("Failed pattern match at Control.Monad.Except.Trans (line 86, column 9 - line 88, column 49): " + [rn.constructor.name]);+                });+              }+              ;+              throw new Error("Failed pattern match at Control.Monad.Except.Trans (line 82, column 5 - line 88, column 49): " + [rm.constructor.name]);+            });+          };+        },+        Functor0: function() {+          return functorExceptT1;+        }+      };+    };+  };++  // output/Control.Monad.Except/index.js+  var unwrap3 = /* @__PURE__ */ unwrap();+  var runExcept = function($3) {+    return unwrap3(runExceptT($3));+  };++  // output/Data.Argonaut.Core/foreign.js+  function id(x) {+    return x;+  }+  var jsonNull = null;+  function stringify(j) {+    return JSON.stringify(j);+  }+  function _caseJson(isNull3, isBool, isNum, isStr, isArr, isObj, j) {+    if (j == null) return isNull3();+    else if (typeof j === "boolean") return isBool(j);+    else if (typeof j === "number") return isNum(j);+    else if (typeof j === "string") return isStr(j);+    else if (Object.prototype.toString.call(j) === "[object Array]")+      return isArr(j);+    else return isObj(j);+  }++  // output/Foreign.Object/foreign.js+  function _copyST(m) {+    return function() {+      var r = {};+      for (var k in m) {+        if (hasOwnProperty.call(m, k)) {+          r[k] = m[k];+        }+      }+      return r;+    };+  }+  var empty = {};+  function runST(f) {+    return f();+  }+  function _lookup(no, yes, k, m) {+    return k in m ? yes(m[k]) : no;+  }+  function toArrayWithKey(f) {+    return function(m) {+      var r = [];+      for (var k in m) {+        if (hasOwnProperty.call(m, k)) {+          r.push(f(k)(m[k]));+        }+      }+      return r;+    };+  }+  var keys = Object.keys || toArrayWithKey(function(k) {+    return function() {+      return k;+    };+  });++  // output/Data.Array/foreign.js+  var replicateFill = function(count, value15) {+    if (count < 1) {+      return [];+    }+    var result = new Array(count);+    return result.fill(value15);+  };+  var replicatePolyfill = function(count, value15) {+    var result = [];+    var n = 0;+    for (var i2 = 0; i2 < count; i2++) {+      result[n++] = value15;+    }+    return result;+  };+  var replicateImpl = typeof Array.prototype.fill === "function" ? replicateFill : replicatePolyfill;+  var fromFoldableImpl = /* @__PURE__ */ (function() {+    function Cons2(head4, tail2) {+      this.head = head4;+      this.tail = tail2;+    }+    var emptyList = {};+    function curryCons(head4) {+      return function(tail2) {+        return new Cons2(head4, tail2);+      };+    }+    function listToArray(list) {+      var result = [];+      var count = 0;+      var xs = list;+      while (xs !== emptyList) {+        result[count++] = xs.head;+        xs = xs.tail;+      }+      return result;+    }+    return function(foldr4, xs) {+      return listToArray(foldr4(curryCons)(emptyList)(xs));+    };+  })();+  var length = function(xs) {+    return xs.length;+  };+  var unconsImpl = function(empty7, next, xs) {+    return xs.length === 0 ? empty7({}) : next(xs[0])(xs.slice(1));+  };+  var findIndexImpl = function(just, nothing, f, xs) {+    for (var i2 = 0, l = xs.length; i2 < l; i2++) {+      if (f(xs[i2])) return just(i2);+    }+    return nothing;+  };+  var _deleteAt = function(just, nothing, i2, l) {+    if (i2 < 0 || i2 >= l.length) return nothing;+    var l1 = l.slice();+    l1.splice(i2, 1);+    return just(l1);+  };+  var filterImpl = function(f, xs) {+    return xs.filter(f);+  };+  var allImpl = function(p2, xs) {+    var len = xs.length;+    for (var i2 = 0; i2 < len; i2++) {+      if (!p2(xs[i2])) return false;+    }+    return true;+  };++  // output/Data.Array.ST/foreign.js+  function unsafeFreezeThawImpl(xs) {+    return xs;+  }+  var unsafeFreezeImpl = unsafeFreezeThawImpl;+  function copyImpl(xs) {+    return xs.slice();+  }+  var thawImpl = copyImpl;+  var pushImpl = function(a2, xs) {+    return xs.push(a2);+  };++  // output/Control.Monad.ST.Uncurried/foreign.js+  var runSTFn1 = function runSTFn12(fn) {+    return function(a2) {+      return function() {+        return fn(a2);+      };+    };+  };+  var runSTFn2 = function runSTFn22(fn) {+    return function(a2) {+      return function(b2) {+        return function() {+          return fn(a2, b2);+        };+      };+    };+  };++  // output/Data.Array.ST/index.js+  var unsafeFreeze = /* @__PURE__ */ runSTFn1(unsafeFreezeImpl);+  var thaw = /* @__PURE__ */ runSTFn1(thawImpl);+  var withArray = function(f) {+    return function(xs) {+      return function __do2() {+        var result = thaw(xs)();+        f(result)();+        return unsafeFreeze(result)();+      };+    };+  };+  var push = /* @__PURE__ */ runSTFn2(pushImpl);++  // output/Data.Foldable/foreign.js+  var foldrArray = function(f) {+    return function(init3) {+      return function(xs) {+        var acc = init3;+        var len = xs.length;+        for (var i2 = len - 1; i2 >= 0; i2--) {+          acc = f(xs[i2])(acc);+        }+        return acc;+      };+    };+  };+  var foldlArray = function(f) {+    return function(init3) {+      return function(xs) {+        var acc = init3;+        var len = xs.length;+        for (var i2 = 0; i2 < len; i2++) {+          acc = f(acc)(xs[i2]);+        }+        return acc;+      };+    };+  };++  // output/Control.Plus/index.js+  var empty2 = function(dict) {+    return dict.empty;+  };++  // output/Data.Bifunctor/index.js+  var identity5 = /* @__PURE__ */ identity(categoryFn);+  var bimap = function(dict) {+    return dict.bimap;+  };+  var lmap = function(dictBifunctor) {+    var bimap1 = bimap(dictBifunctor);+    return function(f) {+      return bimap1(f)(identity5);+    };+  };+  var bifunctorEither = {+    bimap: function(v) {+      return function(v1) {+        return function(v2) {+          if (v2 instanceof Left) {+            return new Left(v(v2.value0));+          }+          ;+          if (v2 instanceof Right) {+            return new Right(v1(v2.value0));+          }+          ;+          throw new Error("Failed pattern match at Data.Bifunctor (line 32, column 1 - line 34, column 36): " + [v.constructor.name, v1.constructor.name, v2.constructor.name]);+        };+      };+    }+  };++  // output/Data.Maybe.First/index.js+  var First = function(x) {+    return x;+  };+  var semigroupFirst = {+    append: function(v) {+      return function(v1) {+        if (v instanceof Just) {+          return v;+        }+        ;+        return v1;+      };+    }+  };+  var monoidFirst = /* @__PURE__ */ (function() {+    return {+      mempty: Nothing.value,+      Semigroup0: function() {+        return semigroupFirst;+      }+    };+  })();++  // output/Data.Monoid.Disj/index.js+  var Disj = function(x) {+    return x;+  };+  var semigroupDisj = function(dictHeytingAlgebra) {+    var disj2 = disj(dictHeytingAlgebra);+    return {+      append: function(v) {+        return function(v1) {+          return disj2(v)(v1);+        };+      }+    };+  };+  var monoidDisj = function(dictHeytingAlgebra) {+    var semigroupDisj1 = semigroupDisj(dictHeytingAlgebra);+    return {+      mempty: ff(dictHeytingAlgebra),+      Semigroup0: function() {+        return semigroupDisj1;+      }+    };+  };++  // output/Data.Monoid.Endo/index.js+  var Endo = function(x) {+    return x;+  };+  var semigroupEndo = function(dictSemigroupoid) {+    var compose2 = compose(dictSemigroupoid);+    return {+      append: function(v) {+        return function(v1) {+          return compose2(v)(v1);+        };+      }+    };+  };+  var monoidEndo = function(dictCategory) {+    var semigroupEndo1 = semigroupEndo(dictCategory.Semigroupoid0());+    return {+      mempty: identity(dictCategory),+      Semigroup0: function() {+        return semigroupEndo1;+      }+    };+  };++  // output/Data.Foldable/index.js+  var identity6 = /* @__PURE__ */ identity(categoryFn);+  var alaF2 = /* @__PURE__ */ alaF()()()();+  var foldr = function(dict) {+    return dict.foldr;+  };+  var traverse_ = function(dictApplicative) {+    var applySecond2 = applySecond(dictApplicative.Apply0());+    var pure16 = pure(dictApplicative);+    return function(dictFoldable) {+      var foldr22 = foldr(dictFoldable);+      return function(f) {+        return foldr22(function($454) {+          return applySecond2(f($454));+        })(pure16(unit));+      };+    };+  };+  var for_ = function(dictApplicative) {+    var traverse_14 = traverse_(dictApplicative);+    return function(dictFoldable) {+      return flip(traverse_14(dictFoldable));+    };+  };+  var foldl = function(dict) {+    return dict.foldl;+  };+  var foldableMaybe = {+    foldr: function(v) {+      return function(v1) {+        return function(v2) {+          if (v2 instanceof Nothing) {+            return v1;+          }+          ;+          if (v2 instanceof Just) {+            return v(v2.value0)(v1);+          }+          ;+          throw new Error("Failed pattern match at Data.Foldable (line 138, column 1 - line 144, column 27): " + [v.constructor.name, v1.constructor.name, v2.constructor.name]);+        };+      };+    },+    foldl: function(v) {+      return function(v1) {+        return function(v2) {+          if (v2 instanceof Nothing) {+            return v1;+          }+          ;+          if (v2 instanceof Just) {+            return v(v1)(v2.value0);+          }+          ;+          throw new Error("Failed pattern match at Data.Foldable (line 138, column 1 - line 144, column 27): " + [v.constructor.name, v1.constructor.name, v2.constructor.name]);+        };+      };+    },+    foldMap: function(dictMonoid) {+      var mempty2 = mempty(dictMonoid);+      return function(v) {+        return function(v1) {+          if (v1 instanceof Nothing) {+            return mempty2;+          }+          ;+          if (v1 instanceof Just) {+            return v(v1.value0);+          }+          ;+          throw new Error("Failed pattern match at Data.Foldable (line 138, column 1 - line 144, column 27): " + [v.constructor.name, v1.constructor.name]);+        };+      };+    }+  };+  var foldMapDefaultR = function(dictFoldable) {+    var foldr22 = foldr(dictFoldable);+    return function(dictMonoid) {+      var append5 = append(dictMonoid.Semigroup0());+      var mempty2 = mempty(dictMonoid);+      return function(f) {+        return foldr22(function(x) {+          return function(acc) {+            return append5(f(x))(acc);+          };+        })(mempty2);+      };+    };+  };+  var foldableArray = {+    foldr: foldrArray,+    foldl: foldlArray,+    foldMap: function(dictMonoid) {+      return foldMapDefaultR(foldableArray)(dictMonoid);+    }+  };+  var foldMap = function(dict) {+    return dict.foldMap;+  };+  var any = function(dictFoldable) {+    var foldMap2 = foldMap(dictFoldable);+    return function(dictHeytingAlgebra) {+      return alaF2(Disj)(foldMap2(monoidDisj(dictHeytingAlgebra)));+    };+  };+  var or = function(dictFoldable) {+    var any1 = any(dictFoldable);+    return function(dictHeytingAlgebra) {+      return any1(dictHeytingAlgebra)(identity6);+    };+  };++  // output/Data.Function.Uncurried/foreign.js+  var runFn2 = function(fn) {+    return function(a2) {+      return function(b2) {+        return fn(a2, b2);+      };+    };+  };+  var runFn3 = function(fn) {+    return function(a2) {+      return function(b2) {+        return function(c) {+          return fn(a2, b2, c);+        };+      };+    };+  };+  var runFn4 = function(fn) {+    return function(a2) {+      return function(b2) {+        return function(c) {+          return function(d) {+            return fn(a2, b2, c, d);+          };+        };+      };+    };+  };++  // output/Data.FunctorWithIndex/foreign.js+  var mapWithIndexArray = function(f) {+    return function(xs) {+      var l = xs.length;+      var result = Array(l);+      for (var i2 = 0; i2 < l; i2++) {+        result[i2] = f(i2)(xs[i2]);+      }+      return result;+    };+  };++  // output/Data.Const/index.js+  var Const = function(x) {+    return x;+  };+  var functorConst = {+    map: function(f) {+      return function(m) {+        return m;+      };+    }+  };+  var applyConst = function(dictSemigroup) {+    var append12 = append(dictSemigroup);+    return {+      apply: function(v) {+        return function(v1) {+          return append12(v)(v1);+        };+      },+      Functor0: function() {+        return functorConst;+      }+    };+  };+  var applicativeConst = function(dictMonoid) {+    var mempty2 = mempty(dictMonoid);+    var applyConst1 = applyConst(dictMonoid.Semigroup0());+    return {+      pure: function(v) {+        return mempty2;+      },+      Apply0: function() {+        return applyConst1;+      }+    };+  };++  // output/Data.FunctorWithIndex/index.js+  var mapWithIndex = function(dict) {+    return dict.mapWithIndex;+  };+  var functorWithIndexArray = {+    mapWithIndex: mapWithIndexArray,+    Functor0: function() {+      return functorArray;+    }+  };++  // output/Data.Traversable/foreign.js+  var traverseArrayImpl = /* @__PURE__ */ (function() {+    function array1(a2) {+      return [a2];+    }+    function array2(a2) {+      return function(b2) {+        return [a2, b2];+      };+    }+    function array3(a2) {+      return function(b2) {+        return function(c) {+          return [a2, b2, c];+        };+      };+    }+    function concat2(xs) {+      return function(ys) {+        return xs.concat(ys);+      };+    }+    return function(apply4) {+      return function(map32) {+        return function(pure16) {+          return function(f) {+            return function(array) {+              function go2(bot, top2) {+                switch (top2 - bot) {+                  case 0:+                    return pure16([]);+                  case 1:+                    return map32(array1)(f(array[bot]));+                  case 2:+                    return apply4(map32(array2)(f(array[bot])))(f(array[bot + 1]));+                  case 3:+                    return apply4(apply4(map32(array3)(f(array[bot])))(f(array[bot + 1])))(f(array[bot + 2]));+                  default:+                    var pivot = bot + Math.floor((top2 - bot) / 4) * 2;+                    return apply4(map32(concat2)(go2(bot, pivot)))(go2(pivot, top2));+                }+              }+              return go2(0, array.length);+            };+          };+        };+      };+    };+  })();++  // output/Data.Traversable/index.js+  var identity7 = /* @__PURE__ */ identity(categoryFn);+  var traverse = function(dict) {+    return dict.traverse;+  };+  var sequenceDefault = function(dictTraversable) {+    var traverse22 = traverse(dictTraversable);+    return function(dictApplicative) {+      return traverse22(dictApplicative)(identity7);+    };+  };+  var traversableArray = {+    traverse: function(dictApplicative) {+      var Apply0 = dictApplicative.Apply0();+      return traverseArrayImpl(apply(Apply0))(map(Apply0.Functor0()))(pure(dictApplicative));+    },+    sequence: function(dictApplicative) {+      return sequenceDefault(traversableArray)(dictApplicative);+    },+    Functor0: function() {+      return functorArray;+    },+    Foldable1: function() {+      return foldableArray;+    }+  };+  var sequence = function(dict) {+    return dict.sequence;+  };++  // output/Data.Array/index.js+  var fromJust2 = /* @__PURE__ */ fromJust();+  var uncons = /* @__PURE__ */ (function() {+    return runFn3(unconsImpl)($$const(Nothing.value))(function(x) {+      return function(xs) {+        return new Just({+          head: x,+          tail: xs+        });+      };+    });+  })();+  var snoc = function(xs) {+    return function(x) {+      return withArray(push(x))(xs)();+    };+  };+  var singleton2 = function(a2) {+    return [a2];+  };+  var $$null = function(xs) {+    return length(xs) === 0;+  };+  var fromFoldable = function(dictFoldable) {+    return runFn2(fromFoldableImpl)(foldr(dictFoldable));+  };+  var findIndex = /* @__PURE__ */ (function() {+    return runFn4(findIndexImpl)(Just.create)(Nothing.value);+  })();+  var filter = /* @__PURE__ */ runFn2(filterImpl);+  var deleteAt = /* @__PURE__ */ (function() {+    return runFn4(_deleteAt)(Just.create)(Nothing.value);+  })();+  var deleteBy = function(v) {+    return function(v1) {+      return function(v2) {+        if (v2.length === 0) {+          return [];+        }+        ;+        return maybe(v2)(function(i2) {+          return fromJust2(deleteAt(i2)(v2));+        })(findIndex(v(v1))(v2));+      };+    };+  };+  var all2 = /* @__PURE__ */ runFn2(allImpl);++  // output/Data.FoldableWithIndex/index.js+  var foldr8 = /* @__PURE__ */ foldr(foldableArray);+  var mapWithIndex2 = /* @__PURE__ */ mapWithIndex(functorWithIndexArray);+  var foldl8 = /* @__PURE__ */ foldl(foldableArray);+  var foldrWithIndex = function(dict) {+    return dict.foldrWithIndex;+  };+  var foldMapWithIndexDefaultR = function(dictFoldableWithIndex) {+    var foldrWithIndex1 = foldrWithIndex(dictFoldableWithIndex);+    return function(dictMonoid) {+      var append5 = append(dictMonoid.Semigroup0());+      var mempty2 = mempty(dictMonoid);+      return function(f) {+        return foldrWithIndex1(function(i2) {+          return function(x) {+            return function(acc) {+              return append5(f(i2)(x))(acc);+            };+          };+        })(mempty2);+      };+    };+  };+  var foldableWithIndexArray = {+    foldrWithIndex: function(f) {+      return function(z) {+        var $291 = foldr8(function(v) {+          return function(y) {+            return f(v.value0)(v.value1)(y);+          };+        })(z);+        var $292 = mapWithIndex2(Tuple.create);+        return function($293) {+          return $291($292($293));+        };+      };+    },+    foldlWithIndex: function(f) {+      return function(z) {+        var $294 = foldl8(function(y) {+          return function(v) {+            return f(v.value0)(y)(v.value1);+          };+        })(z);+        var $295 = mapWithIndex2(Tuple.create);+        return function($296) {+          return $294($295($296));+        };+      };+    },+    foldMapWithIndex: function(dictMonoid) {+      return foldMapWithIndexDefaultR(foldableWithIndexArray)(dictMonoid);+    },+    Foldable0: function() {+      return foldableArray;+    }+  };++  // output/Data.TraversableWithIndex/index.js+  var traverseWithIndexDefault = function(dictTraversableWithIndex) {+    var sequence2 = sequence(dictTraversableWithIndex.Traversable2());+    var mapWithIndex4 = mapWithIndex(dictTraversableWithIndex.FunctorWithIndex0());+    return function(dictApplicative) {+      var sequence12 = sequence2(dictApplicative);+      return function(f) {+        var $174 = mapWithIndex4(f);+        return function($175) {+          return sequence12($174($175));+        };+      };+    };+  };+  var traverseWithIndex = function(dict) {+    return dict.traverseWithIndex;+  };+  var traversableWithIndexArray = {+    traverseWithIndex: function(dictApplicative) {+      return traverseWithIndexDefault(traversableWithIndexArray)(dictApplicative);+    },+    FunctorWithIndex0: function() {+      return functorWithIndexArray;+    },+    FoldableWithIndex1: function() {+      return foldableWithIndexArray;+    },+    Traversable2: function() {+      return traversableArray;+    }+  };++  // output/Foreign.Object.ST/foreign.js+  var newImpl = function() {+    return {};+  };+  var deleteImpl = function(k) {+    return function(m) {+      return function() {+        delete m[k];+        return m;+      };+    };+  };++  // output/Foreign.Object/index.js+  var thawST = _copyST;+  var mutate = function(f) {+    return function(m) {+      return runST(function __do2() {+        var s = thawST(m)();+        f(s)();+        return s;+      });+    };+  };+  var lookup = /* @__PURE__ */ (function() {+    return runFn4(_lookup)(Nothing.value)(Just.create);+  })();+  var $$delete = function(k) {+    return mutate(deleteImpl(k));+  };++  // output/Data.Argonaut.Core/index.js+  var verbJsonType = function(def) {+    return function(f) {+      return function(g) {+        return g(def)(f);+      };+    };+  };+  var toJsonType = /* @__PURE__ */ (function() {+    return verbJsonType(Nothing.value)(Just.create);+  })();+  var jsonEmptyObject = /* @__PURE__ */ id(empty);+  var isJsonType = /* @__PURE__ */ verbJsonType(false)(/* @__PURE__ */ $$const(true));+  var caseJsonString = function(d) {+    return function(f) {+      return function(j) {+        return _caseJson($$const(d), $$const(d), $$const(d), f, $$const(d), $$const(d), j);+      };+    };+  };+  var toString = /* @__PURE__ */ toJsonType(caseJsonString);+  var caseJsonObject = function(d) {+    return function(f) {+      return function(j) {+        return _caseJson($$const(d), $$const(d), $$const(d), $$const(d), $$const(d), f, j);+      };+    };+  };+  var toObject = /* @__PURE__ */ toJsonType(caseJsonObject);+  var caseJsonNull = function(d) {+    return function(f) {+      return function(j) {+        return _caseJson(f, $$const(d), $$const(d), $$const(d), $$const(d), $$const(d), j);+      };+    };+  };+  var isNull = /* @__PURE__ */ isJsonType(caseJsonNull);+  var caseJsonArray = function(d) {+    return function(f) {+      return function(j) {+        return _caseJson($$const(d), $$const(d), $$const(d), $$const(d), f, $$const(d), j);+      };+    };+  };+  var toArray = /* @__PURE__ */ toJsonType(caseJsonArray);+  var caseJson = function(a2) {+    return function(b2) {+      return function(c) {+        return function(d) {+          return function(e) {+            return function(f) {+              return function(json2) {+                return _caseJson(a2, b2, c, d, e, f, json2);+              };+            };+          };+        };+      };+    };+  };++  // output/Data.Argonaut.Parser/foreign.js+  function _jsonParser(fail3, succ, s) {+    try {+      return succ(JSON.parse(s));+    } catch (e) {+      return fail3(e.message);+    }+  }++  // output/Data.Argonaut.Parser/index.js+  var jsonParser = function(j) {+    return _jsonParser(Left.create, Right.create, j);+  };++  // output/Data.String.Common/foreign.js+  var split = function(sep) {+    return function(s) {+      return s.split(sep);+    };+  };+  var trim = function(s) {+    return s.trim();+  };+  var joinWith = function(s) {+    return function(xs) {+      return xs.join(s);+    };+  };++  // output/JSURI/foreign.js+  function encodeURIComponent_to_RFC3986(input3) {+    return input3.replace(/[!'()*]/g, function(c) {+      return "%" + c.charCodeAt(0).toString(16);+    });+  }+  function _encodeFormURLComponent(fail3, succeed, input3) {+    try {+      return succeed(encodeURIComponent_to_RFC3986(encodeURIComponent(input3)).replace(/%20/g, "+"));+    } catch (err) {+      return fail3(err);+    }+  }++  // output/JSURI/index.js+  var encodeFormURLComponent = /* @__PURE__ */ (function() {+    return runFn3(_encodeFormURLComponent)($$const(Nothing.value))(Just.create);+  })();++  // output/Data.FormURLEncoded/index.js+  var apply2 = /* @__PURE__ */ apply(applyMaybe);+  var map6 = /* @__PURE__ */ map(functorMaybe);+  var traverse2 = /* @__PURE__ */ traverse(traversableArray)(applicativeMaybe);+  var toArray2 = function(v) {+    return v;+  };+  var encode = /* @__PURE__ */ (function() {+    var encodePart = function(v) {+      if (v.value1 instanceof Nothing) {+        return encodeFormURLComponent(v.value0);+      }+      ;+      if (v.value1 instanceof Just) {+        return apply2(map6(function(key) {+          return function(val) {+            return key + ("=" + val);+          };+        })(encodeFormURLComponent(v.value0)))(encodeFormURLComponent(v.value1.value0));+      }+      ;+      throw new Error("Failed pattern match at Data.FormURLEncoded (line 37, column 16 - line 39, column 114): " + [v.constructor.name]);+    };+    var $37 = map6(joinWith("&"));+    var $38 = traverse2(encodePart);+    return function($39) {+      return $37($38(toArray2($39)));+    };+  })();++  // output/Data.HTTP.Method/index.js+  var OPTIONS = /* @__PURE__ */ (function() {+    function OPTIONS2() {+    }+    ;+    OPTIONS2.value = new OPTIONS2();+    return OPTIONS2;+  })();+  var GET = /* @__PURE__ */ (function() {+    function GET3() {+    }+    ;+    GET3.value = new GET3();+    return GET3;+  })();+  var HEAD = /* @__PURE__ */ (function() {+    function HEAD2() {+    }+    ;+    HEAD2.value = new HEAD2();+    return HEAD2;+  })();+  var POST = /* @__PURE__ */ (function() {+    function POST3() {+    }+    ;+    POST3.value = new POST3();+    return POST3;+  })();+  var PUT = /* @__PURE__ */ (function() {+    function PUT2() {+    }+    ;+    PUT2.value = new PUT2();+    return PUT2;+  })();+  var DELETE = /* @__PURE__ */ (function() {+    function DELETE2() {+    }+    ;+    DELETE2.value = new DELETE2();+    return DELETE2;+  })();+  var TRACE = /* @__PURE__ */ (function() {+    function TRACE2() {+    }+    ;+    TRACE2.value = new TRACE2();+    return TRACE2;+  })();+  var CONNECT = /* @__PURE__ */ (function() {+    function CONNECT2() {+    }+    ;+    CONNECT2.value = new CONNECT2();+    return CONNECT2;+  })();+  var PROPFIND = /* @__PURE__ */ (function() {+    function PROPFIND2() {+    }+    ;+    PROPFIND2.value = new PROPFIND2();+    return PROPFIND2;+  })();+  var PROPPATCH = /* @__PURE__ */ (function() {+    function PROPPATCH2() {+    }+    ;+    PROPPATCH2.value = new PROPPATCH2();+    return PROPPATCH2;+  })();+  var MKCOL = /* @__PURE__ */ (function() {+    function MKCOL2() {+    }+    ;+    MKCOL2.value = new MKCOL2();+    return MKCOL2;+  })();+  var COPY = /* @__PURE__ */ (function() {+    function COPY2() {+    }+    ;+    COPY2.value = new COPY2();+    return COPY2;+  })();+  var MOVE = /* @__PURE__ */ (function() {+    function MOVE2() {+    }+    ;+    MOVE2.value = new MOVE2();+    return MOVE2;+  })();+  var LOCK = /* @__PURE__ */ (function() {+    function LOCK2() {+    }+    ;+    LOCK2.value = new LOCK2();+    return LOCK2;+  })();+  var UNLOCK = /* @__PURE__ */ (function() {+    function UNLOCK2() {+    }+    ;+    UNLOCK2.value = new UNLOCK2();+    return UNLOCK2;+  })();+  var PATCH = /* @__PURE__ */ (function() {+    function PATCH2() {+    }+    ;+    PATCH2.value = new PATCH2();+    return PATCH2;+  })();+  var unCustomMethod = function(v) {+    return v;+  };+  var showMethod = {+    show: function(v) {+      if (v instanceof OPTIONS) {+        return "OPTIONS";+      }+      ;+      if (v instanceof GET) {+        return "GET";+      }+      ;+      if (v instanceof HEAD) {+        return "HEAD";+      }+      ;+      if (v instanceof POST) {+        return "POST";+      }+      ;+      if (v instanceof PUT) {+        return "PUT";+      }+      ;+      if (v instanceof DELETE) {+        return "DELETE";+      }+      ;+      if (v instanceof TRACE) {+        return "TRACE";+      }+      ;+      if (v instanceof CONNECT) {+        return "CONNECT";+      }+      ;+      if (v instanceof PROPFIND) {+        return "PROPFIND";+      }+      ;+      if (v instanceof PROPPATCH) {+        return "PROPPATCH";+      }+      ;+      if (v instanceof MKCOL) {+        return "MKCOL";+      }+      ;+      if (v instanceof COPY) {+        return "COPY";+      }+      ;+      if (v instanceof MOVE) {+        return "MOVE";+      }+      ;+      if (v instanceof LOCK) {+        return "LOCK";+      }+      ;+      if (v instanceof UNLOCK) {+        return "UNLOCK";+      }+      ;+      if (v instanceof PATCH) {+        return "PATCH";+      }+      ;+      throw new Error("Failed pattern match at Data.HTTP.Method (line 43, column 1 - line 59, column 23): " + [v.constructor.name]);+    }+  };+  var print = /* @__PURE__ */ either(/* @__PURE__ */ show(showMethod))(unCustomMethod);++  // output/Data.NonEmpty/index.js+  var NonEmpty = /* @__PURE__ */ (function() {+    function NonEmpty2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    NonEmpty2.create = function(value0) {+      return function(value1) {+        return new NonEmpty2(value0, value1);+      };+    };+    return NonEmpty2;+  })();+  var singleton4 = function(dictPlus) {+    var empty7 = empty2(dictPlus);+    return function(a2) {+      return new NonEmpty(a2, empty7);+    };+  };++  // output/Data.List.Types/index.js+  var Nil = /* @__PURE__ */ (function() {+    function Nil2() {+    }+    ;+    Nil2.value = new Nil2();+    return Nil2;+  })();+  var Cons = /* @__PURE__ */ (function() {+    function Cons2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    Cons2.create = function(value0) {+      return function(value1) {+        return new Cons2(value0, value1);+      };+    };+    return Cons2;+  })();+  var NonEmptyList = function(x) {+    return x;+  };+  var toList = function(v) {+    return new Cons(v.value0, v.value1);+  };+  var listMap = function(f) {+    var chunkedRevMap = function($copy_v) {+      return function($copy_v1) {+        var $tco_var_v = $copy_v;+        var $tco_done = false;+        var $tco_result;+        function $tco_loop(v, v1) {+          if (v1 instanceof Cons && (v1.value1 instanceof Cons && v1.value1.value1 instanceof Cons)) {+            $tco_var_v = new Cons(v1, v);+            $copy_v1 = v1.value1.value1.value1;+            return;+          }+          ;+          var unrolledMap = function(v2) {+            if (v2 instanceof Cons && (v2.value1 instanceof Cons && v2.value1.value1 instanceof Nil)) {+              return new Cons(f(v2.value0), new Cons(f(v2.value1.value0), Nil.value));+            }+            ;+            if (v2 instanceof Cons && v2.value1 instanceof Nil) {+              return new Cons(f(v2.value0), Nil.value);+            }+            ;+            return Nil.value;+          };+          var reverseUnrolledMap = function($copy_v2) {+            return function($copy_v3) {+              var $tco_var_v2 = $copy_v2;+              var $tco_done1 = false;+              var $tco_result2;+              function $tco_loop2(v2, v3) {+                if (v2 instanceof Cons && (v2.value0 instanceof Cons && (v2.value0.value1 instanceof Cons && v2.value0.value1.value1 instanceof Cons))) {+                  $tco_var_v2 = v2.value1;+                  $copy_v3 = new Cons(f(v2.value0.value0), new Cons(f(v2.value0.value1.value0), new Cons(f(v2.value0.value1.value1.value0), v3)));+                  return;+                }+                ;+                $tco_done1 = true;+                return v3;+              }+              ;+              while (!$tco_done1) {+                $tco_result2 = $tco_loop2($tco_var_v2, $copy_v3);+              }+              ;+              return $tco_result2;+            };+          };+          $tco_done = true;+          return reverseUnrolledMap(v)(unrolledMap(v1));+        }+        ;+        while (!$tco_done) {+          $tco_result = $tco_loop($tco_var_v, $copy_v1);+        }+        ;+        return $tco_result;+      };+    };+    return chunkedRevMap(Nil.value);+  };+  var functorList = {+    map: listMap+  };+  var foldableList = {+    foldr: function(f) {+      return function(b2) {+        var rev3 = (function() {+          var go2 = function($copy_v) {+            return function($copy_v1) {+              var $tco_var_v = $copy_v;+              var $tco_done = false;+              var $tco_result;+              function $tco_loop(v, v1) {+                if (v1 instanceof Nil) {+                  $tco_done = true;+                  return v;+                }+                ;+                if (v1 instanceof Cons) {+                  $tco_var_v = new Cons(v1.value0, v);+                  $copy_v1 = v1.value1;+                  return;+                }+                ;+                throw new Error("Failed pattern match at Data.List.Types (line 107, column 7 - line 107, column 23): " + [v.constructor.name, v1.constructor.name]);+              }+              ;+              while (!$tco_done) {+                $tco_result = $tco_loop($tco_var_v, $copy_v1);+              }+              ;+              return $tco_result;+            };+          };+          return go2(Nil.value);+        })();+        var $284 = foldl(foldableList)(flip(f))(b2);+        return function($285) {+          return $284(rev3($285));+        };+      };+    },+    foldl: function(f) {+      var go2 = function($copy_b) {+        return function($copy_v) {+          var $tco_var_b = $copy_b;+          var $tco_done1 = false;+          var $tco_result;+          function $tco_loop(b2, v) {+            if (v instanceof Nil) {+              $tco_done1 = true;+              return b2;+            }+            ;+            if (v instanceof Cons) {+              $tco_var_b = f(b2)(v.value0);+              $copy_v = v.value1;+              return;+            }+            ;+            throw new Error("Failed pattern match at Data.List.Types (line 111, column 12 - line 113, column 30): " + [v.constructor.name]);+          }+          ;+          while (!$tco_done1) {+            $tco_result = $tco_loop($tco_var_b, $copy_v);+          }+          ;+          return $tco_result;+        };+      };+      return go2;+    },+    foldMap: function(dictMonoid) {+      var append22 = append(dictMonoid.Semigroup0());+      var mempty2 = mempty(dictMonoid);+      return function(f) {+        return foldl(foldableList)(function(acc) {+          var $286 = append22(acc);+          return function($287) {+            return $286(f($287));+          };+        })(mempty2);+      };+    }+  };+  var foldr2 = /* @__PURE__ */ foldr(foldableList);+  var semigroupList = {+    append: function(xs) {+      return function(ys) {+        return foldr2(Cons.create)(ys)(xs);+      };+    }+  };+  var append1 = /* @__PURE__ */ append(semigroupList);+  var semigroupNonEmptyList = {+    append: function(v) {+      return function(as$prime) {+        return new NonEmpty(v.value0, append1(v.value1)(toList(as$prime)));+      };+    }+  };+  var altList = {+    alt: append1,+    Functor0: function() {+      return functorList;+    }+  };+  var plusList = /* @__PURE__ */ (function() {+    return {+      empty: Nil.value,+      Alt0: function() {+        return altList;+      }+    };+  })();++  // output/Data.List/index.js+  var reverse2 = /* @__PURE__ */ (function() {+    var go2 = function($copy_v) {+      return function($copy_v1) {+        var $tco_var_v = $copy_v;+        var $tco_done = false;+        var $tco_result;+        function $tco_loop(v, v1) {+          if (v1 instanceof Nil) {+            $tco_done = true;+            return v;+          }+          ;+          if (v1 instanceof Cons) {+            $tco_var_v = new Cons(v1.value0, v);+            $copy_v1 = v1.value1;+            return;+          }+          ;+          throw new Error("Failed pattern match at Data.List (line 368, column 3 - line 368, column 19): " + [v.constructor.name, v1.constructor.name]);+        }+        ;+        while (!$tco_done) {+          $tco_result = $tco_loop($tco_var_v, $copy_v1);+        }+        ;+        return $tco_result;+      };+    };+    return go2(Nil.value);+  })();+  var $$null2 = function(v) {+    if (v instanceof Nil) {+      return true;+    }+    ;+    return false;+  };++  // output/Partial.Unsafe/foreign.js+  var _unsafePartial = function(f) {+    return f();+  };++  // output/Partial/foreign.js+  var _crashWith = function(msg) {+    throw new Error(msg);+  };++  // output/Partial/index.js+  var crashWith = function() {+    return _crashWith;+  };++  // output/Partial.Unsafe/index.js+  var crashWith2 = /* @__PURE__ */ crashWith();+  var unsafePartial = _unsafePartial;+  var unsafeCrashWith = function(msg) {+    return unsafePartial(function() {+      return crashWith2(msg);+    });+  };++  // output/Data.List.NonEmpty/index.js+  var singleton5 = /* @__PURE__ */ (function() {+    var $200 = singleton4(plusList);+    return function($201) {+      return NonEmptyList($200($201));+    };+  })();+  var head = function(v) {+    return v.value0;+  };+  var cons = function(y) {+    return function(v) {+      return new NonEmpty(y, new Cons(v.value0, v.value1));+    };+  };++  // output/Data.Nullable/foreign.js+  var nullImpl = null;+  function nullable(a2, r, f) {+    return a2 == null ? r : f(a2);+  }+  function notNull(x) {+    return x;+  }++  // output/Data.Nullable/index.js+  var toNullable = /* @__PURE__ */ maybe(nullImpl)(notNull);+  var toMaybe = function(n) {+    return nullable(n, Nothing.value, Just.create);+  };++  // output/Effect.Aff/foreign.js+  var Aff = (function() {+    var EMPTY = {};+    var PURE = "Pure";+    var THROW = "Throw";+    var CATCH = "Catch";+    var SYNC = "Sync";+    var ASYNC = "Async";+    var BIND = "Bind";+    var BRACKET = "Bracket";+    var FORK = "Fork";+    var SEQ = "Sequential";+    var MAP = "Map";+    var APPLY = "Apply";+    var ALT = "Alt";+    var CONS = "Cons";+    var RESUME = "Resume";+    var RELEASE = "Release";+    var FINALIZER = "Finalizer";+    var FINALIZED = "Finalized";+    var FORKED = "Forked";+    var FIBER = "Fiber";+    var THUNK = "Thunk";+    function Aff2(tag, _1, _2, _3) {+      this.tag = tag;+      this._1 = _1;+      this._2 = _2;+      this._3 = _3;+    }+    function AffCtr(tag) {+      var fn = function(_1, _2, _3) {+        return new Aff2(tag, _1, _2, _3);+      };+      fn.tag = tag;+      return fn;+    }+    function nonCanceler2(error4) {+      return new Aff2(PURE, void 0);+    }+    function runEff(eff) {+      try {+        eff();+      } catch (error4) {+        setTimeout(function() {+          throw error4;+        }, 0);+      }+    }+    function runSync(left2, right2, eff) {+      try {+        return right2(eff());+      } catch (error4) {+        return left2(error4);+      }+    }+    function runAsync(left2, eff, k) {+      try {+        return eff(k)();+      } catch (error4) {+        k(left2(error4))();+        return nonCanceler2;+      }+    }+    var Scheduler = (function() {+      var limit = 1024;+      var size5 = 0;+      var ix = 0;+      var queue = new Array(limit);+      var draining = false;+      function drain() {+        var thunk;+        draining = true;+        while (size5 !== 0) {+          size5--;+          thunk = queue[ix];+          queue[ix] = void 0;+          ix = (ix + 1) % limit;+          thunk();+        }+        draining = false;+      }+      return {+        isDraining: function() {+          return draining;+        },+        enqueue: function(cb) {+          var i2, tmp;+          if (size5 === limit) {+            tmp = draining;+            drain();+            draining = tmp;+          }+          queue[(ix + size5) % limit] = cb;+          size5++;+          if (!draining) {+            drain();+          }+        }+      };+    })();+    function Supervisor(util) {+      var fibers = {};+      var fiberId = 0;+      var count = 0;+      return {+        register: function(fiber) {+          var fid = fiberId++;+          fiber.onComplete({+            rethrow: true,+            handler: function(result) {+              return function() {+                count--;+                delete fibers[fid];+              };+            }+          })();+          fibers[fid] = fiber;+          count++;+        },+        isEmpty: function() {+          return count === 0;+        },+        killAll: function(killError, cb) {+          return function() {+            if (count === 0) {+              return cb();+            }+            var killCount = 0;+            var kills = {};+            function kill2(fid) {+              kills[fid] = fibers[fid].kill(killError, function(result) {+                return function() {+                  delete kills[fid];+                  killCount--;+                  if (util.isLeft(result) && util.fromLeft(result)) {+                    setTimeout(function() {+                      throw util.fromLeft(result);+                    }, 0);+                  }+                  if (killCount === 0) {+                    cb();+                  }+                };+              })();+            }+            for (var k in fibers) {+              if (fibers.hasOwnProperty(k)) {+                killCount++;+                kill2(k);+              }+            }+            fibers = {};+            fiberId = 0;+            count = 0;+            return function(error4) {+              return new Aff2(SYNC, function() {+                for (var k2 in kills) {+                  if (kills.hasOwnProperty(k2)) {+                    kills[k2]();+                  }+                }+              });+            };+          };+        }+      };+    }+    var SUSPENDED = 0;+    var CONTINUE = 1;+    var STEP_BIND = 2;+    var STEP_RESULT = 3;+    var PENDING = 4;+    var RETURN = 5;+    var COMPLETED = 6;+    function Fiber(util, supervisor, aff) {+      var runTick = 0;+      var status = SUSPENDED;+      var step3 = aff;+      var fail3 = null;+      var interrupt = null;+      var bhead = null;+      var btail = null;+      var attempts = null;+      var bracketCount = 0;+      var joinId = 0;+      var joins = null;+      var rethrow = true;+      function run3(localRunTick) {+        var tmp, result, attempt;+        while (true) {+          tmp = null;+          result = null;+          attempt = null;+          switch (status) {+            case STEP_BIND:+              status = CONTINUE;+              try {+                step3 = bhead(step3);+                if (btail === null) {+                  bhead = null;+                } else {+                  bhead = btail._1;+                  btail = btail._2;+                }+              } catch (e) {+                status = RETURN;+                fail3 = util.left(e);+                step3 = null;+              }+              break;+            case STEP_RESULT:+              if (util.isLeft(step3)) {+                status = RETURN;+                fail3 = step3;+                step3 = null;+              } else if (bhead === null) {+                status = RETURN;+              } else {+                status = STEP_BIND;+                step3 = util.fromRight(step3);+              }+              break;+            case CONTINUE:+              switch (step3.tag) {+                case BIND:+                  if (bhead) {+                    btail = new Aff2(CONS, bhead, btail);+                  }+                  bhead = step3._2;+                  status = CONTINUE;+                  step3 = step3._1;+                  break;+                case PURE:+                  if (bhead === null) {+                    status = RETURN;+                    step3 = util.right(step3._1);+                  } else {+                    status = STEP_BIND;+                    step3 = step3._1;+                  }+                  break;+                case SYNC:+                  status = STEP_RESULT;+                  step3 = runSync(util.left, util.right, step3._1);+                  break;+                case ASYNC:+                  status = PENDING;+                  step3 = runAsync(util.left, step3._1, function(result2) {+                    return function() {+                      if (runTick !== localRunTick) {+                        return;+                      }+                      runTick++;+                      Scheduler.enqueue(function() {+                        if (runTick !== localRunTick + 1) {+                          return;+                        }+                        status = STEP_RESULT;+                        step3 = result2;+                        run3(runTick);+                      });+                    };+                  });+                  return;+                case THROW:+                  status = RETURN;+                  fail3 = util.left(step3._1);+                  step3 = null;+                  break;+                // Enqueue the Catch so that we can call the error handler later on+                // in case of an exception.+                case CATCH:+                  if (bhead === null) {+                    attempts = new Aff2(CONS, step3, attempts, interrupt);+                  } else {+                    attempts = new Aff2(CONS, step3, new Aff2(CONS, new Aff2(RESUME, bhead, btail), attempts, interrupt), interrupt);+                  }+                  bhead = null;+                  btail = null;+                  status = CONTINUE;+                  step3 = step3._1;+                  break;+                // Enqueue the Bracket so that we can call the appropriate handlers+                // after resource acquisition.+                case BRACKET:+                  bracketCount++;+                  if (bhead === null) {+                    attempts = new Aff2(CONS, step3, attempts, interrupt);+                  } else {+                    attempts = new Aff2(CONS, step3, new Aff2(CONS, new Aff2(RESUME, bhead, btail), attempts, interrupt), interrupt);+                  }+                  bhead = null;+                  btail = null;+                  status = CONTINUE;+                  step3 = step3._1;+                  break;+                case FORK:+                  status = STEP_RESULT;+                  tmp = Fiber(util, supervisor, step3._2);+                  if (supervisor) {+                    supervisor.register(tmp);+                  }+                  if (step3._1) {+                    tmp.run();+                  }+                  step3 = util.right(tmp);+                  break;+                case SEQ:+                  status = CONTINUE;+                  step3 = sequential3(util, supervisor, step3._1);+                  break;+              }+              break;+            case RETURN:+              bhead = null;+              btail = null;+              if (attempts === null) {+                status = COMPLETED;+                step3 = interrupt || fail3 || step3;+              } else {+                tmp = attempts._3;+                attempt = attempts._1;+                attempts = attempts._2;+                switch (attempt.tag) {+                  // We cannot recover from an unmasked interrupt. Otherwise we should+                  // continue stepping, or run the exception handler if an exception+                  // was raised.+                  case CATCH:+                    if (interrupt && interrupt !== tmp && bracketCount === 0) {+                      status = RETURN;+                    } else if (fail3) {+                      status = CONTINUE;+                      step3 = attempt._2(util.fromLeft(fail3));+                      fail3 = null;+                    }+                    break;+                  // We cannot resume from an unmasked interrupt or exception.+                  case RESUME:+                    if (interrupt && interrupt !== tmp && bracketCount === 0 || fail3) {+                      status = RETURN;+                    } else {+                      bhead = attempt._1;+                      btail = attempt._2;+                      status = STEP_BIND;+                      step3 = util.fromRight(step3);+                    }+                    break;+                  // If we have a bracket, we should enqueue the handlers,+                  // and continue with the success branch only if the fiber has+                  // not been interrupted. If the bracket acquisition failed, we+                  // should not run either.+                  case BRACKET:+                    bracketCount--;+                    if (fail3 === null) {+                      result = util.fromRight(step3);+                      attempts = new Aff2(CONS, new Aff2(RELEASE, attempt._2, result), attempts, tmp);+                      if (interrupt === tmp || bracketCount > 0) {+                        status = CONTINUE;+                        step3 = attempt._3(result);+                      }+                    }+                    break;+                  // Enqueue the appropriate handler. We increase the bracket count+                  // because it should not be cancelled.+                  case RELEASE:+                    attempts = new Aff2(CONS, new Aff2(FINALIZED, step3, fail3), attempts, interrupt);+                    status = CONTINUE;+                    if (interrupt && interrupt !== tmp && bracketCount === 0) {+                      step3 = attempt._1.killed(util.fromLeft(interrupt))(attempt._2);+                    } else if (fail3) {+                      step3 = attempt._1.failed(util.fromLeft(fail3))(attempt._2);+                    } else {+                      step3 = attempt._1.completed(util.fromRight(step3))(attempt._2);+                    }+                    fail3 = null;+                    bracketCount++;+                    break;+                  case FINALIZER:+                    bracketCount++;+                    attempts = new Aff2(CONS, new Aff2(FINALIZED, step3, fail3), attempts, interrupt);+                    status = CONTINUE;+                    step3 = attempt._1;+                    break;+                  case FINALIZED:+                    bracketCount--;+                    status = RETURN;+                    step3 = attempt._1;+                    fail3 = attempt._2;+                    break;+                }+              }+              break;+            case COMPLETED:+              for (var k in joins) {+                if (joins.hasOwnProperty(k)) {+                  rethrow = rethrow && joins[k].rethrow;+                  runEff(joins[k].handler(step3));+                }+              }+              joins = null;+              if (interrupt && fail3) {+                setTimeout(function() {+                  throw util.fromLeft(fail3);+                }, 0);+              } else if (util.isLeft(step3) && rethrow) {+                setTimeout(function() {+                  if (rethrow) {+                    throw util.fromLeft(step3);+                  }+                }, 0);+              }+              return;+            case SUSPENDED:+              status = CONTINUE;+              break;+            case PENDING:+              return;+          }+        }+      }+      function onComplete(join4) {+        return function() {+          if (status === COMPLETED) {+            rethrow = rethrow && join4.rethrow;+            join4.handler(step3)();+            return function() {+            };+          }+          var jid = joinId++;+          joins = joins || {};+          joins[jid] = join4;+          return function() {+            if (joins !== null) {+              delete joins[jid];+            }+          };+        };+      }+      function kill2(error4, cb) {+        return function() {+          if (status === COMPLETED) {+            cb(util.right(void 0))();+            return function() {+            };+          }+          var canceler = onComplete({+            rethrow: false,+            handler: function() {+              return cb(util.right(void 0));+            }+          })();+          switch (status) {+            case SUSPENDED:+              interrupt = util.left(error4);+              status = COMPLETED;+              step3 = interrupt;+              run3(runTick);+              break;+            case PENDING:+              if (interrupt === null) {+                interrupt = util.left(error4);+              }+              if (bracketCount === 0) {+                if (status === PENDING) {+                  attempts = new Aff2(CONS, new Aff2(FINALIZER, step3(error4)), attempts, interrupt);+                }+                status = RETURN;+                step3 = null;+                fail3 = null;+                run3(++runTick);+              }+              break;+            default:+              if (interrupt === null) {+                interrupt = util.left(error4);+              }+              if (bracketCount === 0) {+                status = RETURN;+                step3 = null;+                fail3 = null;+              }+          }+          return canceler;+        };+      }+      function join3(cb) {+        return function() {+          var canceler = onComplete({+            rethrow: false,+            handler: cb+          })();+          if (status === SUSPENDED) {+            run3(runTick);+          }+          return canceler;+        };+      }+      return {+        kill: kill2,+        join: join3,+        onComplete,+        isSuspended: function() {+          return status === SUSPENDED;+        },+        run: function() {+          if (status === SUSPENDED) {+            if (!Scheduler.isDraining()) {+              Scheduler.enqueue(function() {+                run3(runTick);+              });+            } else {+              run3(runTick);+            }+          }+        }+      };+    }+    function runPar(util, supervisor, par, cb) {+      var fiberId = 0;+      var fibers = {};+      var killId = 0;+      var kills = {};+      var early = new Error("[ParAff] Early exit");+      var interrupt = null;+      var root = EMPTY;+      function kill2(error4, par2, cb2) {+        var step3 = par2;+        var head4 = null;+        var tail2 = null;+        var count = 0;+        var kills2 = {};+        var tmp, kid;+        loop: while (true) {+          tmp = null;+          switch (step3.tag) {+            case FORKED:+              if (step3._3 === EMPTY) {+                tmp = fibers[step3._1];+                kills2[count++] = tmp.kill(error4, function(result) {+                  return function() {+                    count--;+                    if (count === 0) {+                      cb2(result)();+                    }+                  };+                });+              }+              if (head4 === null) {+                break loop;+              }+              step3 = head4._2;+              if (tail2 === null) {+                head4 = null;+              } else {+                head4 = tail2._1;+                tail2 = tail2._2;+              }+              break;+            case MAP:+              step3 = step3._2;+              break;+            case APPLY:+            case ALT:+              if (head4) {+                tail2 = new Aff2(CONS, head4, tail2);+              }+              head4 = step3;+              step3 = step3._1;+              break;+          }+        }+        if (count === 0) {+          cb2(util.right(void 0))();+        } else {+          kid = 0;+          tmp = count;+          for (; kid < tmp; kid++) {+            kills2[kid] = kills2[kid]();+          }+        }+        return kills2;+      }+      function join3(result, head4, tail2) {+        var fail3, step3, lhs, rhs, tmp, kid;+        if (util.isLeft(result)) {+          fail3 = result;+          step3 = null;+        } else {+          step3 = result;+          fail3 = null;+        }+        loop: while (true) {+          lhs = null;+          rhs = null;+          tmp = null;+          kid = null;+          if (interrupt !== null) {+            return;+          }+          if (head4 === null) {+            cb(fail3 || step3)();+            return;+          }+          if (head4._3 !== EMPTY) {+            return;+          }+          switch (head4.tag) {+            case MAP:+              if (fail3 === null) {+                head4._3 = util.right(head4._1(util.fromRight(step3)));+                step3 = head4._3;+              } else {+                head4._3 = fail3;+              }+              break;+            case APPLY:+              lhs = head4._1._3;+              rhs = head4._2._3;+              if (fail3) {+                head4._3 = fail3;+                tmp = true;+                kid = killId++;+                kills[kid] = kill2(early, fail3 === lhs ? head4._2 : head4._1, function() {+                  return function() {+                    delete kills[kid];+                    if (tmp) {+                      tmp = false;+                    } else if (tail2 === null) {+                      join3(fail3, null, null);+                    } else {+                      join3(fail3, tail2._1, tail2._2);+                    }+                  };+                });+                if (tmp) {+                  tmp = false;+                  return;+                }+              } else if (lhs === EMPTY || rhs === EMPTY) {+                return;+              } else {+                step3 = util.right(util.fromRight(lhs)(util.fromRight(rhs)));+                head4._3 = step3;+              }+              break;+            case ALT:+              lhs = head4._1._3;+              rhs = head4._2._3;+              if (lhs === EMPTY && util.isLeft(rhs) || rhs === EMPTY && util.isLeft(lhs)) {+                return;+              }+              if (lhs !== EMPTY && util.isLeft(lhs) && rhs !== EMPTY && util.isLeft(rhs)) {+                fail3 = step3 === lhs ? rhs : lhs;+                step3 = null;+                head4._3 = fail3;+              } else {+                head4._3 = step3;+                tmp = true;+                kid = killId++;+                kills[kid] = kill2(early, step3 === lhs ? head4._2 : head4._1, function() {+                  return function() {+                    delete kills[kid];+                    if (tmp) {+                      tmp = false;+                    } else if (tail2 === null) {+                      join3(step3, null, null);+                    } else {+                      join3(step3, tail2._1, tail2._2);+                    }+                  };+                });+                if (tmp) {+                  tmp = false;+                  return;+                }+              }+              break;+          }+          if (tail2 === null) {+            head4 = null;+          } else {+            head4 = tail2._1;+            tail2 = tail2._2;+          }+        }+      }+      function resolve(fiber) {+        return function(result) {+          return function() {+            delete fibers[fiber._1];+            fiber._3 = result;+            join3(result, fiber._2._1, fiber._2._2);+          };+        };+      }+      function run3() {+        var status = CONTINUE;+        var step3 = par;+        var head4 = null;+        var tail2 = null;+        var tmp, fid;+        loop: while (true) {+          tmp = null;+          fid = null;+          switch (status) {+            case CONTINUE:+              switch (step3.tag) {+                case MAP:+                  if (head4) {+                    tail2 = new Aff2(CONS, head4, tail2);+                  }+                  head4 = new Aff2(MAP, step3._1, EMPTY, EMPTY);+                  step3 = step3._2;+                  break;+                case APPLY:+                  if (head4) {+                    tail2 = new Aff2(CONS, head4, tail2);+                  }+                  head4 = new Aff2(APPLY, EMPTY, step3._2, EMPTY);+                  step3 = step3._1;+                  break;+                case ALT:+                  if (head4) {+                    tail2 = new Aff2(CONS, head4, tail2);+                  }+                  head4 = new Aff2(ALT, EMPTY, step3._2, EMPTY);+                  step3 = step3._1;+                  break;+                default:+                  fid = fiberId++;+                  status = RETURN;+                  tmp = step3;+                  step3 = new Aff2(FORKED, fid, new Aff2(CONS, head4, tail2), EMPTY);+                  tmp = Fiber(util, supervisor, tmp);+                  tmp.onComplete({+                    rethrow: false,+                    handler: resolve(step3)+                  })();+                  fibers[fid] = tmp;+                  if (supervisor) {+                    supervisor.register(tmp);+                  }+              }+              break;+            case RETURN:+              if (head4 === null) {+                break loop;+              }+              if (head4._1 === EMPTY) {+                head4._1 = step3;+                status = CONTINUE;+                step3 = head4._2;+                head4._2 = EMPTY;+              } else {+                head4._2 = step3;+                step3 = head4;+                if (tail2 === null) {+                  head4 = null;+                } else {+                  head4 = tail2._1;+                  tail2 = tail2._2;+                }+              }+          }+        }+        root = step3;+        for (fid = 0; fid < fiberId; fid++) {+          fibers[fid].run();+        }+      }+      function cancel(error4, cb2) {+        interrupt = util.left(error4);+        var innerKills;+        for (var kid in kills) {+          if (kills.hasOwnProperty(kid)) {+            innerKills = kills[kid];+            for (kid in innerKills) {+              if (innerKills.hasOwnProperty(kid)) {+                innerKills[kid]();+              }+            }+          }+        }+        kills = null;+        var newKills = kill2(error4, root, cb2);+        return function(killError) {+          return new Aff2(ASYNC, function(killCb) {+            return function() {+              for (var kid2 in newKills) {+                if (newKills.hasOwnProperty(kid2)) {+                  newKills[kid2]();+                }+              }+              return nonCanceler2;+            };+          });+        };+      }+      run3();+      return function(killError) {+        return new Aff2(ASYNC, function(killCb) {+          return function() {+            return cancel(killError, killCb);+          };+        });+      };+    }+    function sequential3(util, supervisor, par) {+      return new Aff2(ASYNC, function(cb) {+        return function() {+          return runPar(util, supervisor, par, cb);+        };+      });+    }+    Aff2.EMPTY = EMPTY;+    Aff2.Pure = AffCtr(PURE);+    Aff2.Throw = AffCtr(THROW);+    Aff2.Catch = AffCtr(CATCH);+    Aff2.Sync = AffCtr(SYNC);+    Aff2.Async = AffCtr(ASYNC);+    Aff2.Bind = AffCtr(BIND);+    Aff2.Bracket = AffCtr(BRACKET);+    Aff2.Fork = AffCtr(FORK);+    Aff2.Seq = AffCtr(SEQ);+    Aff2.ParMap = AffCtr(MAP);+    Aff2.ParApply = AffCtr(APPLY);+    Aff2.ParAlt = AffCtr(ALT);+    Aff2.Fiber = Fiber;+    Aff2.Supervisor = Supervisor;+    Aff2.Scheduler = Scheduler;+    Aff2.nonCanceler = nonCanceler2;+    return Aff2;+  })();+  var _pure = Aff.Pure;+  var _throwError = Aff.Throw;+  function _catchError(aff) {+    return function(k) {+      return Aff.Catch(aff, k);+    };+  }+  function _map(f) {+    return function(aff) {+      if (aff.tag === Aff.Pure.tag) {+        return Aff.Pure(f(aff._1));+      } else {+        return Aff.Bind(aff, function(value15) {+          return Aff.Pure(f(value15));+        });+      }+    };+  }+  function _bind(aff) {+    return function(k) {+      return Aff.Bind(aff, k);+    };+  }+  function _fork(immediate) {+    return function(aff) {+      return Aff.Fork(immediate, aff);+    };+  }+  var _liftEffect = Aff.Sync;+  function _parAffMap(f) {+    return function(aff) {+      return Aff.ParMap(f, aff);+    };+  }+  function _parAffApply(aff1) {+    return function(aff2) {+      return Aff.ParApply(aff1, aff2);+    };+  }+  var makeAff = Aff.Async;+  function generalBracket(acquire) {+    return function(options2) {+      return function(k) {+        return Aff.Bracket(acquire, options2, k);+      };+    };+  }+  function _makeFiber(util, aff) {+    return function() {+      return Aff.Fiber(util, null, aff);+    };+  }+  var _sequential = Aff.Seq;++  // output/Data.Profunctor/index.js+  var identity8 = /* @__PURE__ */ identity(categoryFn);+  var dimap = function(dict) {+    return dict.dimap;+  };+  var rmap = function(dictProfunctor) {+    var dimap1 = dimap(dictProfunctor);+    return function(b2c) {+      return dimap1(identity8)(b2c);+    };+  };++  // output/Control.Parallel.Class/index.js+  var sequential = function(dict) {+    return dict.sequential;+  };+  var parallel = function(dict) {+    return dict.parallel;+  };++  // output/Control.Parallel/index.js+  var identity9 = /* @__PURE__ */ identity(categoryFn);+  var parTraverse_ = function(dictParallel) {+    var sequential3 = sequential(dictParallel);+    var parallel4 = parallel(dictParallel);+    return function(dictApplicative) {+      var traverse_7 = traverse_(dictApplicative);+      return function(dictFoldable) {+        var traverse_14 = traverse_7(dictFoldable);+        return function(f) {+          var $51 = traverse_14(function($53) {+            return parallel4(f($53));+          });+          return function($52) {+            return sequential3($51($52));+          };+        };+      };+    };+  };+  var parSequence_ = function(dictParallel) {+    var parTraverse_1 = parTraverse_(dictParallel);+    return function(dictApplicative) {+      var parTraverse_2 = parTraverse_1(dictApplicative);+      return function(dictFoldable) {+        return parTraverse_2(dictFoldable)(identity9);+      };+    };+  };++  // output/Effect.Unsafe/foreign.js+  var unsafePerformEffect = function(f) {+    return f();+  };++  // output/Effect.Aff/index.js+  var $runtime_lazy2 = function(name16, moduleName, init3) {+    var state3 = 0;+    var val;+    return function(lineNumber) {+      if (state3 === 2) return val;+      if (state3 === 1) throw new ReferenceError(name16 + " was needed before it finished initializing (module " + moduleName + ", line " + lineNumber + ")", moduleName, lineNumber);+      state3 = 1;+      val = init3();+      state3 = 2;+      return val;+    };+  };+  var pure2 = /* @__PURE__ */ pure(applicativeEffect);+  var $$void3 = /* @__PURE__ */ $$void(functorEffect);+  var map7 = /* @__PURE__ */ map(functorEffect);+  var Canceler = function(x) {+    return x;+  };+  var suspendAff = /* @__PURE__ */ _fork(false);+  var functorParAff = {+    map: _parAffMap+  };+  var functorAff = {+    map: _map+  };+  var map1 = /* @__PURE__ */ map(functorAff);+  var forkAff = /* @__PURE__ */ _fork(true);+  var ffiUtil = /* @__PURE__ */ (function() {+    var unsafeFromRight = function(v) {+      if (v instanceof Right) {+        return v.value0;+      }+      ;+      if (v instanceof Left) {+        return unsafeCrashWith("unsafeFromRight: Left");+      }+      ;+      throw new Error("Failed pattern match at Effect.Aff (line 412, column 21 - line 414, column 54): " + [v.constructor.name]);+    };+    var unsafeFromLeft = function(v) {+      if (v instanceof Left) {+        return v.value0;+      }+      ;+      if (v instanceof Right) {+        return unsafeCrashWith("unsafeFromLeft: Right");+      }+      ;+      throw new Error("Failed pattern match at Effect.Aff (line 407, column 20 - line 409, column 55): " + [v.constructor.name]);+    };+    var isLeft = function(v) {+      if (v instanceof Left) {+        return true;+      }+      ;+      if (v instanceof Right) {+        return false;+      }+      ;+      throw new Error("Failed pattern match at Effect.Aff (line 402, column 12 - line 404, column 21): " + [v.constructor.name]);+    };+    return {+      isLeft,+      fromLeft: unsafeFromLeft,+      fromRight: unsafeFromRight,+      left: Left.create,+      right: Right.create+    };+  })();+  var makeFiber = function(aff) {+    return _makeFiber(ffiUtil, aff);+  };+  var launchAff = function(aff) {+    return function __do2() {+      var fiber = makeFiber(aff)();+      fiber.run();+      return fiber;+    };+  };+  var bracket = function(acquire) {+    return function(completed) {+      return generalBracket(acquire)({+        killed: $$const(completed),+        failed: $$const(completed),+        completed: $$const(completed)+      });+    };+  };+  var applyParAff = {+    apply: _parAffApply,+    Functor0: function() {+      return functorParAff;+    }+  };+  var monadAff = {+    Applicative0: function() {+      return applicativeAff;+    },+    Bind1: function() {+      return bindAff;+    }+  };+  var bindAff = {+    bind: _bind,+    Apply0: function() {+      return $lazy_applyAff(0);+    }+  };+  var applicativeAff = {+    pure: _pure,+    Apply0: function() {+      return $lazy_applyAff(0);+    }+  };+  var $lazy_applyAff = /* @__PURE__ */ $runtime_lazy2("applyAff", "Effect.Aff", function() {+    return {+      apply: ap(monadAff),+      Functor0: function() {+        return functorAff;+      }+    };+  });+  var applyAff = /* @__PURE__ */ $lazy_applyAff(73);+  var pure22 = /* @__PURE__ */ pure(applicativeAff);+  var bind1 = /* @__PURE__ */ bind(bindAff);+  var bindFlipped3 = /* @__PURE__ */ bindFlipped(bindAff);+  var $$finally = function(fin) {+    return function(a2) {+      return bracket(pure22(unit))($$const(fin))($$const(a2));+    };+  };+  var parallelAff = {+    parallel: unsafeCoerce2,+    sequential: _sequential,+    Apply0: function() {+      return applyAff;+    },+    Apply1: function() {+      return applyParAff;+    }+  };+  var parallel2 = /* @__PURE__ */ parallel(parallelAff);+  var applicativeParAff = {+    pure: function($76) {+      return parallel2(pure22($76));+    },+    Apply0: function() {+      return applyParAff;+    }+  };+  var monadEffectAff = {+    liftEffect: _liftEffect,+    Monad0: function() {+      return monadAff;+    }+  };+  var liftEffect2 = /* @__PURE__ */ liftEffect(monadEffectAff);+  var effectCanceler = function($77) {+    return Canceler($$const(liftEffect2($77)));+  };+  var joinFiber = function(v) {+    return makeAff(function(k) {+      return map7(effectCanceler)(v.join(k));+    });+  };+  var functorFiber = {+    map: function(f) {+      return function(t) {+        return unsafePerformEffect(makeFiber(map1(f)(joinFiber(t))));+      };+    }+  };+  var killFiber = function(e) {+    return function(v) {+      return bind1(liftEffect2(v.isSuspended))(function(suspended) {+        if (suspended) {+          return liftEffect2($$void3(v.kill(e, $$const(pure2(unit)))));+        }+        ;+        return makeAff(function(k) {+          return map7(effectCanceler)(v.kill(e, k));+        });+      });+    };+  };+  var monadThrowAff = {+    throwError: _throwError,+    Monad0: function() {+      return monadAff;+    }+  };+  var monadErrorAff = {+    catchError: _catchError,+    MonadThrow0: function() {+      return monadThrowAff;+    }+  };+  var $$try2 = /* @__PURE__ */ $$try(monadErrorAff);+  var runAff = function(k) {+    return function(aff) {+      return launchAff(bindFlipped3(function($83) {+        return liftEffect2(k($83));+      })($$try2(aff)));+    };+  };+  var runAff_ = function(k) {+    return function(aff) {+      return $$void3(runAff(k)(aff));+    };+  };+  var monadRecAff = {+    tailRecM: function(k) {+      var go2 = function(a2) {+        return bind1(k(a2))(function(res) {+          if (res instanceof Done) {+            return pure22(res.value0);+          }+          ;+          if (res instanceof Loop) {+            return go2(res.value0);+          }+          ;+          throw new Error("Failed pattern match at Effect.Aff (line 104, column 7 - line 106, column 23): " + [res.constructor.name]);+        });+      };+      return go2;+    },+    Monad0: function() {+      return monadAff;+    }+  };+  var nonCanceler = /* @__PURE__ */ $$const(/* @__PURE__ */ pure22(unit));++  // output/Effect.Aff.Compat/index.js+  var fromEffectFnAff = function(v) {+    return makeAff(function(k) {+      return function __do2() {+        var v1 = v(function($9) {+          return k(Left.create($9))();+        }, function($10) {+          return k(Right.create($10))();+        });+        return function(e) {+          return makeAff(function(k2) {+            return function __do3() {+              v1(e, function($11) {+                return k2(Left.create($11))();+              }, function($12) {+                return k2(Right.create($12))();+              });+              return nonCanceler;+            };+          });+        };+      };+    });+  };++  // output/Foreign/foreign.js+  function typeOf(value15) {+    return typeof value15;+  }+  function tagOf(value15) {+    return Object.prototype.toString.call(value15).slice(8, -1);+  }++  // output/Data.String.CodeUnits/foreign.js+  var _indexOf = function(just) {+    return function(nothing) {+      return function(x) {+        return function(s) {+          var i2 = s.indexOf(x);+          return i2 === -1 ? nothing : just(i2);+        };+      };+    };+  };++  // output/Data.String.CodeUnits/index.js+  var indexOf = /* @__PURE__ */ (function() {+    return _indexOf(Just.create)(Nothing.value);+  })();+  var contains = function(pat) {+    var $23 = indexOf(pat);+    return function($24) {+      return isJust($23($24));+    };+  };++  // output/Foreign/index.js+  var show2 = /* @__PURE__ */ show(showString);+  var show1 = /* @__PURE__ */ show(showInt);+  var ForeignError = /* @__PURE__ */ (function() {+    function ForeignError2(value0) {+      this.value0 = value0;+    }+    ;+    ForeignError2.create = function(value0) {+      return new ForeignError2(value0);+    };+    return ForeignError2;+  })();+  var TypeMismatch = /* @__PURE__ */ (function() {+    function TypeMismatch3(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    TypeMismatch3.create = function(value0) {+      return function(value1) {+        return new TypeMismatch3(value0, value1);+      };+    };+    return TypeMismatch3;+  })();+  var ErrorAtIndex = /* @__PURE__ */ (function() {+    function ErrorAtIndex2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    ErrorAtIndex2.create = function(value0) {+      return function(value1) {+        return new ErrorAtIndex2(value0, value1);+      };+    };+    return ErrorAtIndex2;+  })();+  var ErrorAtProperty = /* @__PURE__ */ (function() {+    function ErrorAtProperty2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    ErrorAtProperty2.create = function(value0) {+      return function(value1) {+        return new ErrorAtProperty2(value0, value1);+      };+    };+    return ErrorAtProperty2;+  })();+  var unsafeToForeign = unsafeCoerce2;+  var unsafeFromForeign = unsafeCoerce2;+  var renderForeignError = function(v) {+    if (v instanceof ForeignError) {+      return v.value0;+    }+    ;+    if (v instanceof ErrorAtIndex) {+      return "Error at array index " + (show1(v.value0) + (": " + renderForeignError(v.value1)));+    }+    ;+    if (v instanceof ErrorAtProperty) {+      return "Error at property " + (show2(v.value0) + (": " + renderForeignError(v.value1)));+    }+    ;+    if (v instanceof TypeMismatch) {+      return "Type mismatch: expected " + (v.value0 + (", found " + v.value1));+    }+    ;+    throw new Error("Failed pattern match at Foreign (line 78, column 1 - line 78, column 45): " + [v.constructor.name]);+  };+  var fail = function(dictMonad) {+    var $153 = throwError(monadThrowExceptT(dictMonad));+    return function($154) {+      return $153(singleton5($154));+    };+  };+  var unsafeReadTagged = function(dictMonad) {+    var pure16 = pure(applicativeExceptT(dictMonad));+    var fail1 = fail(dictMonad);+    return function(tag) {+      return function(value15) {+        if (tagOf(value15) === tag) {+          return pure16(unsafeFromForeign(value15));+        }+        ;+        if (otherwise) {+          return fail1(new TypeMismatch(tag, tagOf(value15)));+        }+        ;+        throw new Error("Failed pattern match at Foreign (line 123, column 1 - line 123, column 104): " + [tag.constructor.name, value15.constructor.name]);+      };+    };+  };+  var readString = function(dictMonad) {+    return unsafeReadTagged(dictMonad)("String");+  };++  // output/Affjax/index.js+  var pure3 = /* @__PURE__ */ pure(/* @__PURE__ */ applicativeExceptT(monadIdentity));+  var fail2 = /* @__PURE__ */ fail(monadIdentity);+  var unsafeReadTagged2 = /* @__PURE__ */ unsafeReadTagged(monadIdentity);+  var alt2 = /* @__PURE__ */ alt(/* @__PURE__ */ altExceptT(semigroupNonEmptyList)(monadIdentity));+  var composeKleisliFlipped2 = /* @__PURE__ */ composeKleisliFlipped(/* @__PURE__ */ bindExceptT(monadIdentity));+  var map8 = /* @__PURE__ */ map(functorMaybe);+  var any2 = /* @__PURE__ */ any(foldableArray)(heytingAlgebraBoolean);+  var eq3 = /* @__PURE__ */ eq(eqString);+  var bindFlipped4 = /* @__PURE__ */ bindFlipped(bindMaybe);+  var map12 = /* @__PURE__ */ map(functorArray);+  var mapFlipped2 = /* @__PURE__ */ mapFlipped(functorAff);+  var $$try3 = /* @__PURE__ */ $$try(monadErrorAff);+  var pure1 = /* @__PURE__ */ pure(applicativeAff);+  var RequestContentError = /* @__PURE__ */ (function() {+    function RequestContentError2(value0) {+      this.value0 = value0;+    }+    ;+    RequestContentError2.create = function(value0) {+      return new RequestContentError2(value0);+    };+    return RequestContentError2;+  })();+  var ResponseBodyError = /* @__PURE__ */ (function() {+    function ResponseBodyError2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    ResponseBodyError2.create = function(value0) {+      return function(value1) {+        return new ResponseBodyError2(value0, value1);+      };+    };+    return ResponseBodyError2;+  })();+  var TimeoutError = /* @__PURE__ */ (function() {+    function TimeoutError2() {+    }+    ;+    TimeoutError2.value = new TimeoutError2();+    return TimeoutError2;+  })();+  var RequestFailedError = /* @__PURE__ */ (function() {+    function RequestFailedError2() {+    }+    ;+    RequestFailedError2.value = new RequestFailedError2();+    return RequestFailedError2;+  })();+  var XHROtherError = /* @__PURE__ */ (function() {+    function XHROtherError2(value0) {+      this.value0 = value0;+    }+    ;+    XHROtherError2.create = function(value0) {+      return new XHROtherError2(value0);+    };+    return XHROtherError2;+  })();+  var request = function(driver2) {+    return function(req) {+      var parseJSON = function(v2) {+        if (v2 === "") {+          return pure3(jsonEmptyObject);+        }+        ;+        return either(function($74) {+          return fail2(ForeignError.create($74));+        })(pure3)(jsonParser(v2));+      };+      var fromResponse = (function() {+        if (req.responseFormat instanceof $$ArrayBuffer) {+          return unsafeReadTagged2("ArrayBuffer");+        }+        ;+        if (req.responseFormat instanceof Blob2) {+          return unsafeReadTagged2("Blob");+        }+        ;+        if (req.responseFormat instanceof Document2) {+          return function(x) {+            return alt2(unsafeReadTagged2("Document")(x))(alt2(unsafeReadTagged2("XMLDocument")(x))(unsafeReadTagged2("HTMLDocument")(x)));+          };+        }+        ;+        if (req.responseFormat instanceof Json2) {+          return composeKleisliFlipped2(function($75) {+            return req.responseFormat.value0(parseJSON($75));+          })(unsafeReadTagged2("String"));+        }+        ;+        if (req.responseFormat instanceof $$String2) {+          return unsafeReadTagged2("String");+        }+        ;+        if (req.responseFormat instanceof Ignore) {+          return $$const(req.responseFormat.value0(pure3(unit)));+        }+        ;+        throw new Error("Failed pattern match at Affjax (line 274, column 18 - line 283, column 57): " + [req.responseFormat.constructor.name]);+      })();+      var extractContent = function(v2) {+        if (v2 instanceof ArrayView) {+          return new Right(v2.value0(unsafeToForeign));+        }+        ;+        if (v2 instanceof Blob) {+          return new Right(unsafeToForeign(v2.value0));+        }+        ;+        if (v2 instanceof Document) {+          return new Right(unsafeToForeign(v2.value0));+        }+        ;+        if (v2 instanceof $$String) {+          return new Right(unsafeToForeign(v2.value0));+        }+        ;+        if (v2 instanceof FormData) {+          return new Right(unsafeToForeign(v2.value0));+        }+        ;+        if (v2 instanceof FormURLEncoded) {+          return note("Body contains values that cannot be encoded as application/x-www-form-urlencoded")(map8(unsafeToForeign)(encode(v2.value0)));+        }+        ;+        if (v2 instanceof Json) {+          return new Right(unsafeToForeign(stringify(v2.value0)));+        }+        ;+        throw new Error("Failed pattern match at Affjax (line 235, column 20 - line 250, column 69): " + [v2.constructor.name]);+      };+      var addHeader = function(mh) {+        return function(hs) {+          if (mh instanceof Just && !any2(on(eq3)(name)(mh.value0))(hs)) {+            return snoc(hs)(mh.value0);+          }+          ;+          return hs;+        };+      };+      var headers = function(reqContent) {+        return addHeader(map8(ContentType.create)(bindFlipped4(toMediaType)(reqContent)))(addHeader(map8(Accept.create)(toMediaType2(req.responseFormat)))(req.headers));+      };+      var ajaxRequest = function(v2) {+        return {+          method: print(req.method),+          url: req.url,+          headers: map12(function(h) {+            return {+              field: name(h),+              value: value(h)+            };+          })(headers(req.content)),+          content: v2,+          responseType: toResponseType(req.responseFormat),+          username: toNullable(req.username),+          password: toNullable(req.password),+          withCredentials: req.withCredentials,+          timeout: fromMaybe(0)(map8(function(v1) {+            return v1;+          })(req.timeout))+        };+      };+      var send = function(content3) {+        return mapFlipped2($$try3(fromEffectFnAff(_ajax(driver2, "AffjaxTimeoutErrorMessageIdent", "AffjaxRequestFailedMessageIdent", ResponseHeader.create, ajaxRequest(content3)))))(function(v2) {+          if (v2 instanceof Right) {+            var v1 = runExcept(fromResponse(v2.value0.body));+            if (v1 instanceof Left) {+              return new Left(new ResponseBodyError(head(v1.value0), v2.value0));+            }+            ;+            if (v1 instanceof Right) {+              return new Right({+                headers: v2.value0.headers,+                status: v2.value0.status,+                statusText: v2.value0.statusText,+                body: v1.value0+              });+            }+            ;+            throw new Error("Failed pattern match at Affjax (line 209, column 9 - line 211, column 52): " + [v1.constructor.name]);+          }+          ;+          if (v2 instanceof Left) {+            return new Left((function() {+              var message2 = message(v2.value0);+              var $61 = message2 === "AffjaxTimeoutErrorMessageIdent";+              if ($61) {+                return TimeoutError.value;+              }+              ;+              var $62 = message2 === "AffjaxRequestFailedMessageIdent";+              if ($62) {+                return RequestFailedError.value;+              }+              ;+              return new XHROtherError(v2.value0);+            })());+          }+          ;+          throw new Error("Failed pattern match at Affjax (line 207, column 144 - line 219, column 28): " + [v2.constructor.name]);+        });+      };+      if (req.content instanceof Nothing) {+        return send(toNullable(Nothing.value));+      }+      ;+      if (req.content instanceof Just) {+        var v = extractContent(req.content.value0);+        if (v instanceof Right) {+          return send(toNullable(new Just(v.value0)));+        }+        ;+        if (v instanceof Left) {+          return pure1(new Left(new RequestContentError(v.value0)));+        }+        ;+        throw new Error("Failed pattern match at Affjax (line 199, column 7 - line 203, column 48): " + [v.constructor.name]);+      }+      ;+      throw new Error("Failed pattern match at Affjax (line 195, column 3 - line 203, column 48): " + [req.content.constructor.name]);+    };+  };+  var printError = function(v) {+    if (v instanceof RequestContentError) {+      return "There was a problem with the request content: " + v.value0;+    }+    ;+    if (v instanceof ResponseBodyError) {+      return "There was a problem with the response body: " + renderForeignError(v.value0);+    }+    ;+    if (v instanceof TimeoutError) {+      return "There was a problem making the request: timeout";+    }+    ;+    if (v instanceof RequestFailedError) {+      return "There was a problem making the request: request failed";+    }+    ;+    if (v instanceof XHROtherError) {+      return "There was a problem making the request: " + message(v.value0);+    }+    ;+    throw new Error("Failed pattern match at Affjax (line 113, column 14 - line 123, column 66): " + [v.constructor.name]);+  };+  var defaultRequest = /* @__PURE__ */ (function() {+    return {+      method: new Left(GET.value),+      url: "/",+      headers: [],+      content: Nothing.value,+      username: Nothing.value,+      password: Nothing.value,+      withCredentials: false,+      responseFormat: ignore,+      timeout: Nothing.value+    };+  })();+  var get2 = function(driver2) {+    return function(rf) {+      return function(u2) {+        return request(driver2)({+          method: defaultRequest.method,+          headers: defaultRequest.headers,+          content: defaultRequest.content,+          username: defaultRequest.username,+          password: defaultRequest.password,+          withCredentials: defaultRequest.withCredentials,+          timeout: defaultRequest.timeout,+          url: u2,+          responseFormat: rf+        });+      };+    };+  };++  // output/Data.Argonaut.Decode.Error/index.js+  var show3 = /* @__PURE__ */ show(showString);+  var show12 = /* @__PURE__ */ show(showInt);+  var TypeMismatch2 = /* @__PURE__ */ (function() {+    function TypeMismatch3(value0) {+      this.value0 = value0;+    }+    ;+    TypeMismatch3.create = function(value0) {+      return new TypeMismatch3(value0);+    };+    return TypeMismatch3;+  })();+  var UnexpectedValue = /* @__PURE__ */ (function() {+    function UnexpectedValue2(value0) {+      this.value0 = value0;+    }+    ;+    UnexpectedValue2.create = function(value0) {+      return new UnexpectedValue2(value0);+    };+    return UnexpectedValue2;+  })();+  var AtIndex = /* @__PURE__ */ (function() {+    function AtIndex2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    AtIndex2.create = function(value0) {+      return function(value1) {+        return new AtIndex2(value0, value1);+      };+    };+    return AtIndex2;+  })();+  var AtKey = /* @__PURE__ */ (function() {+    function AtKey2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    AtKey2.create = function(value0) {+      return function(value1) {+        return new AtKey2(value0, value1);+      };+    };+    return AtKey2;+  })();+  var Named = /* @__PURE__ */ (function() {+    function Named2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    Named2.create = function(value0) {+      return function(value1) {+        return new Named2(value0, value1);+      };+    };+    return Named2;+  })();+  var MissingValue = /* @__PURE__ */ (function() {+    function MissingValue2() {+    }+    ;+    MissingValue2.value = new MissingValue2();+    return MissingValue2;+  })();+  var showJsonDecodeError = {+    show: function(v) {+      if (v instanceof TypeMismatch2) {+        return "(TypeMismatch " + (show3(v.value0) + ")");+      }+      ;+      if (v instanceof UnexpectedValue) {+        return "(UnexpectedValue " + (stringify(v.value0) + ")");+      }+      ;+      if (v instanceof AtIndex) {+        return "(AtIndex " + (show12(v.value0) + (" " + (show(showJsonDecodeError)(v.value1) + ")")));+      }+      ;+      if (v instanceof AtKey) {+        return "(AtKey " + (show3(v.value0) + (" " + (show(showJsonDecodeError)(v.value1) + ")")));+      }+      ;+      if (v instanceof Named) {+        return "(Named " + (show3(v.value0) + (" " + (show(showJsonDecodeError)(v.value1) + ")")));+      }+      ;+      if (v instanceof MissingValue) {+        return "MissingValue";+      }+      ;+      throw new Error("Failed pattern match at Data.Argonaut.Decode.Error (line 24, column 10 - line 30, column 35): " + [v.constructor.name]);+    }+  };++  // output/Data.Lens.Internal.Forget/index.js+  var alaF3 = /* @__PURE__ */ alaF()()()();+  var Forget = function(x) {+    return x;+  };+  var profunctorForget = {+    dimap: function(f) {+      return function(v) {+        return function(v1) {+          return function($36) {+            return v1(f($36));+          };+        };+      };+    }+  };+  var strongForget = {+    first: function(v) {+      return function($37) {+        return v(fst($37));+      };+    },+    second: function(v) {+      return function($38) {+        return v(snd($38));+      };+    },+    Profunctor0: function() {+      return profunctorForget;+    }+  };+  var choiceForget = function(dictMonoid) {+    var mempty2 = mempty(monoidFn(dictMonoid));+    return {+      left: function(v) {+        return either(v)(mempty2);+      },+      right: function(v) {+        return either(mempty2)(v);+      },+      Profunctor0: function() {+        return profunctorForget;+      }+    };+  };+  var wanderForget = function(dictMonoid) {+    var applicativeConst2 = applicativeConst(dictMonoid);+    var choiceForget1 = choiceForget(dictMonoid);+    return {+      wander: function(f) {+        return function(v) {+          return alaF3(Const)(f(applicativeConst2))(v);+        };+      },+      Strong0: function() {+        return strongForget;+      },+      Choice1: function() {+        return choiceForget1;+      }+    };+  };++  // output/Data.Profunctor.Choice/index.js+  var right = function(dict) {+    return dict.right;+  };++  // output/Data.Lens.Internal.Wander/index.js+  var wander = function(dict) {+    return dict.wander;+  };++  // output/Data.Lens.Fold/index.js+  var unwrap4 = /* @__PURE__ */ unwrap();+  var fromFoldable3 = /* @__PURE__ */ fromFoldable(foldableList);+  var foldMapOf = /* @__PURE__ */ under()()(Forget);+  var foldrOf = function(p2) {+    return function(f) {+      return function(r) {+        var $116 = flip(unwrap4)(r);+        var $117 = foldMapOf(p2)(function($119) {+          return Endo(f($119));+        });+        return function($118) {+          return $116($117($118));+        };+      };+    };+  };+  var toListOf = function(p2) {+    return foldrOf(p2)(Cons.create)(Nil.value);+  };+  var toArrayOf = function(p2) {+    var $124 = toListOf(p2);+    return function($125) {+      return fromFoldable3($124($125));+    };+  };+  var preview = function(p2) {+    var $135 = foldMapOf(p2)(function($137) {+      return First(Just.create($137));+    });+    return function($136) {+      return unwrap4($135($136));+    };+  };++  // output/Data.Lens.Getter/index.js+  var unwrap5 = /* @__PURE__ */ unwrap();+  var identity10 = /* @__PURE__ */ identity(categoryFn);+  var view = function(l) {+    return unwrap5(l(identity10));+  };+  var to2 = function(f) {+    return function(p2) {+      var $10 = unwrap5(p2);+      return function($11) {+        return $10(f($11));+      };+    };+  };++  // output/Data.Lens.Prism/index.js+  var identity11 = /* @__PURE__ */ identity(categoryFn);+  var prism = function(to3) {+    return function(fro) {+      return function(dictChoice) {+        var Profunctor0 = dictChoice.Profunctor0();+        var dimap2 = dimap(Profunctor0);+        var right2 = right(dictChoice);+        var rmap3 = rmap(Profunctor0);+        return function(pab) {+          return dimap2(fro)(either(identity11)(identity11))(right2(rmap3(to3)(pab)));+        };+      };+    };+  };++  // output/Data.Lens.Prism.Maybe/index.js+  var _Just = function(dictChoice) {+    return prism(Just.create)(maybe(new Left(Nothing.value))(Right.create))(dictChoice);+  };++  // output/Data.Lens.Iso/index.js+  var coerce3 = /* @__PURE__ */ coerce();+  var iso = function(f) {+    return function(g) {+      return function(dictProfunctor) {+        var dimap2 = dimap(dictProfunctor);+        return function(pab) {+          return dimap2(f)(g)(pab);+        };+      };+    };+  };+  var coerced = function() {+    return function() {+      return function(dictProfunctor) {+        return iso(coerce3)(coerce3)(dictProfunctor);+      };+    };+  };++  // output/Data.Lens.Iso.Newtype/index.js+  var coerced2 = /* @__PURE__ */ coerced()();+  var _Newtype = function() {+    return function() {+      return function(dictProfunctor) {+        return coerced2(dictProfunctor);+      };+    };+  };++  // output/Data.Lens.Traversal/index.js+  var traversed = function(dictTraversable) {+    var traverse3 = traverse(dictTraversable);+    return function(dictWander) {+      return wander(dictWander)(function(dictApplicative) {+        return traverse3(dictApplicative);+      });+    };+  };++  // output/Effect.Aff.Class/index.js+  var monadAffAff = {+    liftAff: /* @__PURE__ */ identity(categoryFn),+    MonadEffect0: function() {+      return monadEffectAff;+    }+  };+  var liftAff = function(dict) {+    return dict.liftAff;+  };++  // output/Effect.Console/foreign.js+  var log2 = function(s) {+    return function() {+      console.log(s);+    };+  };+  var warn = function(s) {+    return function() {+      console.warn(s);+    };+  };++  // output/Effect.Class.Console/index.js+  var log3 = function(dictMonadEffect) {+    var $67 = liftEffect(dictMonadEffect);+    return function($68) {+      return $67(log2($68));+    };+  };++  // output/Web.DOM.ParentNode/foreign.js+  var getEffProp = function(name16) {+    return function(node) {+      return function() {+        return node[name16];+      };+    };+  };+  var children = getEffProp("children");+  var _firstElementChild = getEffProp("firstElementChild");+  var _lastElementChild = getEffProp("lastElementChild");+  var childElementCount = getEffProp("childElementCount");+  function _querySelector(selector) {+    return function(node) {+      return function() {+        return node.querySelector(selector);+      };+    };+  }++  // output/Web.DOM.ParentNode/index.js+  var map9 = /* @__PURE__ */ map(functorEffect);+  var querySelector = function(qs) {+    var $2 = map9(toMaybe);+    var $3 = _querySelector(qs);+    return function($4) {+      return $2($3($4));+    };+  };++  // output/Web.Event.EventTarget/foreign.js+  function eventListener(fn) {+    return function() {+      return function(event) {+        return fn(event)();+      };+    };+  }+  function addEventListener(type) {+    return function(listener) {+      return function(useCapture) {+        return function(target7) {+          return function() {+            return target7.addEventListener(type, listener, useCapture);+          };+        };+      };+    };+  }+  function removeEventListener(type) {+    return function(listener) {+      return function(useCapture) {+        return function(target7) {+          return function() {+            return target7.removeEventListener(type, listener, useCapture);+          };+        };+      };+    };+  }++  // output/Web.HTML/foreign.js+  var windowImpl = function() {+    return window;+  };++  // output/Web.HTML.HTMLDocument/foreign.js+  function _readyState(doc) {+    return doc.readyState;+  }++  // output/Web.HTML.HTMLDocument.ReadyState/index.js+  var Loading = /* @__PURE__ */ (function() {+    function Loading2() {+    }+    ;+    Loading2.value = new Loading2();+    return Loading2;+  })();+  var Interactive = /* @__PURE__ */ (function() {+    function Interactive2() {+    }+    ;+    Interactive2.value = new Interactive2();+    return Interactive2;+  })();+  var Complete = /* @__PURE__ */ (function() {+    function Complete2() {+    }+    ;+    Complete2.value = new Complete2();+    return Complete2;+  })();+  var parse = function(v) {+    if (v === "loading") {+      return new Just(Loading.value);+    }+    ;+    if (v === "interactive") {+      return new Just(Interactive.value);+    }+    ;+    if (v === "complete") {+      return new Just(Complete.value);+    }+    ;+    return Nothing.value;+  };++  // output/Web.HTML.HTMLDocument/index.js+  var map10 = /* @__PURE__ */ map(functorEffect);+  var toParentNode = unsafeCoerce2;+  var toDocument = unsafeCoerce2;+  var readyState = function(doc) {+    return map10((function() {+      var $4 = fromMaybe(Loading.value);+      return function($5) {+        return $4(parse($5));+      };+    })())(function() {+      return _readyState(doc);+    });+  };++  // output/Web.HTML.HTMLElement/foreign.js+  function _read(nothing, just, value15) {+    var tag = Object.prototype.toString.call(value15);+    if (tag.indexOf("[object HTML") === 0 && tag.indexOf("Element]") === tag.length - 8) {+      return just(value15);+    } else {+      return nothing;+    }+  }++  // output/Web.HTML.HTMLElement/index.js+  var toNode = unsafeCoerce2;+  var fromElement = function(x) {+    return _read(Nothing.value, Just.create, x);+  };++  // output/Web.HTML.Window/foreign.js+  function document(window2) {+    return function() {+      return window2.document;+    };+  }++  // output/Web.HTML.Window/index.js+  var toEventTarget = unsafeCoerce2;++  // output/Web.HTML.Event.EventTypes/index.js+  var input = "input";+  var domcontentloaded = "DOMContentLoaded";++  // output/Halogen.Aff.Util/index.js+  var bind2 = /* @__PURE__ */ bind(bindAff);+  var liftEffect3 = /* @__PURE__ */ liftEffect(monadEffectAff);+  var bindFlipped5 = /* @__PURE__ */ bindFlipped(bindEffect);+  var composeKleisliFlipped3 = /* @__PURE__ */ composeKleisliFlipped(bindEffect);+  var pure4 = /* @__PURE__ */ pure(applicativeAff);+  var bindFlipped1 = /* @__PURE__ */ bindFlipped(bindMaybe);+  var pure12 = /* @__PURE__ */ pure(applicativeEffect);+  var map11 = /* @__PURE__ */ map(functorEffect);+  var discard2 = /* @__PURE__ */ discard(discardUnit);+  var throwError2 = /* @__PURE__ */ throwError(monadThrowAff);+  var selectElement = function(query2) {+    return bind2(liftEffect3(bindFlipped5(composeKleisliFlipped3((function() {+      var $16 = querySelector(query2);+      return function($17) {+        return $16(toParentNode($17));+      };+    })())(document))(windowImpl)))(function(mel) {+      return pure4(bindFlipped1(fromElement)(mel));+    });+  };+  var runHalogenAff = /* @__PURE__ */ runAff_(/* @__PURE__ */ either(throwException)(/* @__PURE__ */ $$const(/* @__PURE__ */ pure12(unit))));+  var awaitLoad = /* @__PURE__ */ makeAff(function(callback) {+    return function __do2() {+      var rs = bindFlipped5(readyState)(bindFlipped5(document)(windowImpl))();+      if (rs instanceof Loading) {+        var et = map11(toEventTarget)(windowImpl)();+        var listener = eventListener(function(v) {+          return callback(new Right(unit));+        })();+        addEventListener(domcontentloaded)(listener)(false)(et)();+        return effectCanceler(removeEventListener(domcontentloaded)(listener)(false)(et));+      }+      ;+      callback(new Right(unit))();+      return nonCanceler;+    };+  });+  var awaitBody = /* @__PURE__ */ discard2(bindAff)(awaitLoad)(function() {+    return bind2(selectElement("body"))(function(body2) {+      return maybe(throwError2(error("Could not find body")))(pure4)(body2);+    });+  });++  // output/Halogen.Query.Input/index.js+  var RefUpdate = /* @__PURE__ */ (function() {+    function RefUpdate2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    RefUpdate2.create = function(value0) {+      return function(value1) {+        return new RefUpdate2(value0, value1);+      };+    };+    return RefUpdate2;+  })();+  var Action = /* @__PURE__ */ (function() {+    function Action3(value0) {+      this.value0 = value0;+    }+    ;+    Action3.create = function(value0) {+      return new Action3(value0);+    };+    return Action3;+  })();++  // output/Halogen.VDom.Machine/index.js+  var Step = /* @__PURE__ */ (function() {+    function Step3(value0, value1, value22, value32) {+      this.value0 = value0;+      this.value1 = value1;+      this.value2 = value22;+      this.value3 = value32;+    }+    ;+    Step3.create = function(value0) {+      return function(value1) {+        return function(value22) {+          return function(value32) {+            return new Step3(value0, value1, value22, value32);+          };+        };+      };+    };+    return Step3;+  })();+  var unStep = unsafeCoerce2;+  var step2 = function(v, a2) {+    return v.value2(v.value1, a2);+  };+  var mkStep = unsafeCoerce2;+  var halt = function(v) {+    return v.value3(v.value1);+  };+  var extract2 = /* @__PURE__ */ unStep(function(v) {+    return v.value0;+  });++  // output/Halogen.VDom.Types/index.js+  var map13 = /* @__PURE__ */ map(functorArray);+  var map14 = /* @__PURE__ */ map(functorTuple);+  var Text = /* @__PURE__ */ (function() {+    function Text2(value0) {+      this.value0 = value0;+    }+    ;+    Text2.create = function(value0) {+      return new Text2(value0);+    };+    return Text2;+  })();+  var Elem = /* @__PURE__ */ (function() {+    function Elem2(value0, value1, value22, value32) {+      this.value0 = value0;+      this.value1 = value1;+      this.value2 = value22;+      this.value3 = value32;+    }+    ;+    Elem2.create = function(value0) {+      return function(value1) {+        return function(value22) {+          return function(value32) {+            return new Elem2(value0, value1, value22, value32);+          };+        };+      };+    };+    return Elem2;+  })();+  var Keyed = /* @__PURE__ */ (function() {+    function Keyed2(value0, value1, value22, value32) {+      this.value0 = value0;+      this.value1 = value1;+      this.value2 = value22;+      this.value3 = value32;+    }+    ;+    Keyed2.create = function(value0) {+      return function(value1) {+        return function(value22) {+          return function(value32) {+            return new Keyed2(value0, value1, value22, value32);+          };+        };+      };+    };+    return Keyed2;+  })();+  var Widget = /* @__PURE__ */ (function() {+    function Widget2(value0) {+      this.value0 = value0;+    }+    ;+    Widget2.create = function(value0) {+      return new Widget2(value0);+    };+    return Widget2;+  })();+  var Grafted = /* @__PURE__ */ (function() {+    function Grafted2(value0) {+      this.value0 = value0;+    }+    ;+    Grafted2.create = function(value0) {+      return new Grafted2(value0);+    };+    return Grafted2;+  })();+  var Graft = /* @__PURE__ */ (function() {+    function Graft2(value0, value1, value22) {+      this.value0 = value0;+      this.value1 = value1;+      this.value2 = value22;+    }+    ;+    Graft2.create = function(value0) {+      return function(value1) {+        return function(value22) {+          return new Graft2(value0, value1, value22);+        };+      };+    };+    return Graft2;+  })();+  var unGraft = function(f) {+    return function($61) {+      return f($61);+    };+  };+  var graft = unsafeCoerce2;+  var bifunctorGraft = {+    bimap: function(f) {+      return function(g) {+        return unGraft(function(v) {+          return graft(new Graft(function($63) {+            return f(v.value0($63));+          }, function($64) {+            return g(v.value1($64));+          }, v.value2));+        });+      };+    }+  };+  var bimap2 = /* @__PURE__ */ bimap(bifunctorGraft);+  var runGraft = /* @__PURE__ */ unGraft(function(v) {+    var go2 = function(v2) {+      if (v2 instanceof Text) {+        return new Text(v2.value0);+      }+      ;+      if (v2 instanceof Elem) {+        return new Elem(v2.value0, v2.value1, v.value0(v2.value2), map13(go2)(v2.value3));+      }+      ;+      if (v2 instanceof Keyed) {+        return new Keyed(v2.value0, v2.value1, v.value0(v2.value2), map13(map14(go2))(v2.value3));+      }+      ;+      if (v2 instanceof Widget) {+        return new Widget(v.value1(v2.value0));+      }+      ;+      if (v2 instanceof Grafted) {+        return new Grafted(bimap2(v.value0)(v.value1)(v2.value0));+      }+      ;+      throw new Error("Failed pattern match at Halogen.VDom.Types (line 86, column 7 - line 86, column 27): " + [v2.constructor.name]);+    };+    return go2(v.value2);+  });++  // output/Halogen.VDom.Util/foreign.js+  function unsafeGetAny(key, obj) {+    return obj[key];+  }+  function unsafeHasAny(key, obj) {+    return obj.hasOwnProperty(key);+  }+  function unsafeSetAny(key, val, obj) {+    obj[key] = val;+  }+  function forE2(a2, f) {+    var b2 = [];+    for (var i2 = 0; i2 < a2.length; i2++) {+      b2.push(f(i2, a2[i2]));+    }+    return b2;+  }+  function forEachE(a2, f) {+    for (var i2 = 0; i2 < a2.length; i2++) {+      f(a2[i2]);+    }+  }+  function forInE(o, f) {+    var ks = Object.keys(o);+    for (var i2 = 0; i2 < ks.length; i2++) {+      var k = ks[i2];+      f(k, o[k]);+    }+  }+  function diffWithIxE(a1, a2, f1, f2, f3) {+    var a3 = [];+    var l1 = a1.length;+    var l2 = a2.length;+    var i2 = 0;+    while (1) {+      if (i2 < l1) {+        if (i2 < l2) {+          a3.push(f1(i2, a1[i2], a2[i2]));+        } else {+          f2(i2, a1[i2]);+        }+      } else if (i2 < l2) {+        a3.push(f3(i2, a2[i2]));+      } else {+        break;+      }+      i2++;+    }+    return a3;+  }+  function strMapWithIxE(as, fk, f) {+    var o = {};+    for (var i2 = 0; i2 < as.length; i2++) {+      var a2 = as[i2];+      var k = fk(a2);+      o[k] = f(k, i2, a2);+    }+    return o;+  }+  function diffWithKeyAndIxE(o1, as, fk, f1, f2, f3) {+    var o2 = {};+    for (var i2 = 0; i2 < as.length; i2++) {+      var a2 = as[i2];+      var k = fk(a2);+      if (o1.hasOwnProperty(k)) {+        o2[k] = f1(k, i2, o1[k], a2);+      } else {+        o2[k] = f3(k, i2, a2);+      }+    }+    for (var k in o1) {+      if (k in o2) {+        continue;+      }+      f2(k, o1[k]);+    }+    return o2;+  }+  function refEq2(a2, b2) {+    return a2 === b2;+  }+  function createTextNode(s, doc) {+    return doc.createTextNode(s);+  }+  function setTextContent(s, n) {+    n.textContent = s;+  }+  function createElement(ns, name16, doc) {+    if (ns != null) {+      return doc.createElementNS(ns, name16);+    } else {+      return doc.createElement(name16);+    }+  }+  function insertChildIx(i2, a2, b2) {+    var n = b2.childNodes.item(i2) || null;+    if (n !== a2) {+      b2.insertBefore(a2, n);+    }+  }+  function removeChild(a2, b2) {+    if (b2 && a2.parentNode === b2) {+      b2.removeChild(a2);+    }+  }+  function parentNode(a2) {+    return a2.parentNode;+  }+  function setAttribute(ns, attr3, val, el) {+    if (ns != null) {+      el.setAttributeNS(ns, attr3, val);+    } else {+      el.setAttribute(attr3, val);+    }+  }+  function removeAttribute(ns, attr3, el) {+    if (ns != null) {+      el.removeAttributeNS(ns, attr3);+    } else {+      el.removeAttribute(attr3);+    }+  }+  function hasAttribute(ns, attr3, el) {+    if (ns != null) {+      return el.hasAttributeNS(ns, attr3);+    } else {+      return el.hasAttribute(attr3);+    }+  }+  function addEventListener2(ev, listener, el) {+    el.addEventListener(ev, listener, false);+  }+  function removeEventListener2(ev, listener, el) {+    el.removeEventListener(ev, listener, false);+  }+  var jsUndefined = void 0;++  // output/Halogen.VDom.Util/index.js+  var unsafeLookup = unsafeGetAny;+  var unsafeFreeze2 = unsafeCoerce2;+  var pokeMutMap = unsafeSetAny;+  var newMutMap = newImpl;++  // output/Web.DOM.Element/foreign.js+  var getProp = function(name16) {+    return function(doctype) {+      return doctype[name16];+    };+  };+  var _namespaceURI = getProp("namespaceURI");+  var _prefix = getProp("prefix");+  var localName = getProp("localName");+  var tagName = getProp("tagName");+  function _getAttribute(name16) {+    return function(element3) {+      return function() {+        return element3.getAttribute(name16);+      };+    };+  }++  // output/Web.DOM.Element/index.js+  var map15 = /* @__PURE__ */ map(functorEffect);+  var toNode2 = unsafeCoerce2;+  var getAttribute = function(attr3) {+    var $6 = map15(toMaybe);+    var $7 = _getAttribute(attr3);+    return function($8) {+      return $6($7($8));+    };+  };++  // output/Halogen.VDom.DOM/index.js+  var $runtime_lazy3 = function(name16, moduleName, init3) {+    var state3 = 0;+    var val;+    return function(lineNumber) {+      if (state3 === 2) return val;+      if (state3 === 1) throw new ReferenceError(name16 + " was needed before it finished initializing (module " + moduleName + ", line " + lineNumber + ")", moduleName, lineNumber);+      state3 = 1;+      val = init3();+      state3 = 2;+      return val;+    };+  };+  var haltWidget = function(v) {+    return halt(v.widget);+  };+  var $lazy_patchWidget = /* @__PURE__ */ $runtime_lazy3("patchWidget", "Halogen.VDom.DOM", function() {+    return function(state3, vdom) {+      if (vdom instanceof Grafted) {+        return $lazy_patchWidget(291)(state3, runGraft(vdom.value0));+      }+      ;+      if (vdom instanceof Widget) {+        var res = step2(state3.widget, vdom.value0);+        var res$prime = unStep(function(v) {+          return mkStep(new Step(v.value0, {+            build: state3.build,+            widget: res+          }, $lazy_patchWidget(296), haltWidget));+        })(res);+        return res$prime;+      }+      ;+      haltWidget(state3);+      return state3.build(vdom);+    };+  });+  var patchWidget = /* @__PURE__ */ $lazy_patchWidget(286);+  var haltText = function(v) {+    var parent2 = parentNode(v.node);+    return removeChild(v.node, parent2);+  };+  var $lazy_patchText = /* @__PURE__ */ $runtime_lazy3("patchText", "Halogen.VDom.DOM", function() {+    return function(state3, vdom) {+      if (vdom instanceof Grafted) {+        return $lazy_patchText(82)(state3, runGraft(vdom.value0));+      }+      ;+      if (vdom instanceof Text) {+        if (state3.value === vdom.value0) {+          return mkStep(new Step(state3.node, state3, $lazy_patchText(85), haltText));+        }+        ;+        if (otherwise) {+          var nextState = {+            build: state3.build,+            node: state3.node,+            value: vdom.value0+          };+          setTextContent(vdom.value0, state3.node);+          return mkStep(new Step(state3.node, nextState, $lazy_patchText(89), haltText));+        }+        ;+      }+      ;+      haltText(state3);+      return state3.build(vdom);+    };+  });+  var patchText = /* @__PURE__ */ $lazy_patchText(77);+  var haltKeyed = function(v) {+    var parent2 = parentNode(v.node);+    removeChild(v.node, parent2);+    forInE(v.children, function(v1, s) {+      return halt(s);+    });+    return halt(v.attrs);+  };+  var haltElem = function(v) {+    var parent2 = parentNode(v.node);+    removeChild(v.node, parent2);+    forEachE(v.children, halt);+    return halt(v.attrs);+  };+  var eqElemSpec = function(ns1, v, ns2, v1) {+    var $63 = v === v1;+    if ($63) {+      if (ns1 instanceof Just && (ns2 instanceof Just && ns1.value0 === ns2.value0)) {+        return true;+      }+      ;+      if (ns1 instanceof Nothing && ns2 instanceof Nothing) {+        return true;+      }+      ;+      return false;+    }+    ;+    return false;+  };+  var $lazy_patchElem = /* @__PURE__ */ $runtime_lazy3("patchElem", "Halogen.VDom.DOM", function() {+    return function(state3, vdom) {+      if (vdom instanceof Grafted) {+        return $lazy_patchElem(135)(state3, runGraft(vdom.value0));+      }+      ;+      if (vdom instanceof Elem && eqElemSpec(state3.ns, state3.name, vdom.value0, vdom.value1)) {+        var v = length(vdom.value3);+        var v1 = length(state3.children);+        if (v1 === 0 && v === 0) {+          var attrs2 = step2(state3.attrs, vdom.value2);+          var nextState = {+            build: state3.build,+            node: state3.node,+            attrs: attrs2,+            ns: vdom.value0,+            name: vdom.value1,+            children: state3.children+          };+          return mkStep(new Step(state3.node, nextState, $lazy_patchElem(149), haltElem));+        }+        ;+        var onThis = function(v2, s) {+          return halt(s);+        };+        var onThese = function(ix, s, v2) {+          var res = step2(s, v2);+          insertChildIx(ix, extract2(res), state3.node);+          return res;+        };+        var onThat = function(ix, v2) {+          var res = state3.build(v2);+          insertChildIx(ix, extract2(res), state3.node);+          return res;+        };+        var children2 = diffWithIxE(state3.children, vdom.value3, onThese, onThis, onThat);+        var attrs2 = step2(state3.attrs, vdom.value2);+        var nextState = {+          build: state3.build,+          node: state3.node,+          attrs: attrs2,+          ns: vdom.value0,+          name: vdom.value1,+          children: children2+        };+        return mkStep(new Step(state3.node, nextState, $lazy_patchElem(172), haltElem));+      }+      ;+      haltElem(state3);+      return state3.build(vdom);+    };+  });+  var patchElem = /* @__PURE__ */ $lazy_patchElem(130);+  var $lazy_patchKeyed = /* @__PURE__ */ $runtime_lazy3("patchKeyed", "Halogen.VDom.DOM", function() {+    return function(state3, vdom) {+      if (vdom instanceof Grafted) {+        return $lazy_patchKeyed(222)(state3, runGraft(vdom.value0));+      }+      ;+      if (vdom instanceof Keyed && eqElemSpec(state3.ns, state3.name, vdom.value0, vdom.value1)) {+        var v = length(vdom.value3);+        if (state3.length === 0 && v === 0) {+          var attrs2 = step2(state3.attrs, vdom.value2);+          var nextState = {+            build: state3.build,+            node: state3.node,+            attrs: attrs2,+            ns: vdom.value0,+            name: vdom.value1,+            children: state3.children,+            length: 0+          };+          return mkStep(new Step(state3.node, nextState, $lazy_patchKeyed(237), haltKeyed));+        }+        ;+        var onThis = function(v2, s) {+          return halt(s);+        };+        var onThese = function(v2, ix$prime, s, v3) {+          var res = step2(s, v3.value1);+          insertChildIx(ix$prime, extract2(res), state3.node);+          return res;+        };+        var onThat = function(v2, ix, v3) {+          var res = state3.build(v3.value1);+          insertChildIx(ix, extract2(res), state3.node);+          return res;+        };+        var children2 = diffWithKeyAndIxE(state3.children, vdom.value3, fst, onThese, onThis, onThat);+        var attrs2 = step2(state3.attrs, vdom.value2);+        var nextState = {+          build: state3.build,+          node: state3.node,+          attrs: attrs2,+          ns: vdom.value0,+          name: vdom.value1,+          children: children2,+          length: v+        };+        return mkStep(new Step(state3.node, nextState, $lazy_patchKeyed(261), haltKeyed));+      }+      ;+      haltKeyed(state3);+      return state3.build(vdom);+    };+  });+  var patchKeyed = /* @__PURE__ */ $lazy_patchKeyed(217);+  var buildWidget = function(v, build, w) {+    var res = v.buildWidget(v)(w);+    var res$prime = unStep(function(v1) {+      return mkStep(new Step(v1.value0, {+        build,+        widget: res+      }, patchWidget, haltWidget));+    })(res);+    return res$prime;+  };+  var buildText = function(v, build, s) {+    var node = createTextNode(s, v.document);+    var state3 = {+      build,+      node,+      value: s+    };+    return mkStep(new Step(node, state3, patchText, haltText));+  };+  var buildKeyed = function(v, build, ns1, name1, as1, ch1) {+    var el = createElement(toNullable(ns1), name1, v.document);+    var node = toNode2(el);+    var onChild = function(v1, ix, v2) {+      var res = build(v2.value1);+      insertChildIx(ix, extract2(res), node);+      return res;+    };+    var children2 = strMapWithIxE(ch1, fst, onChild);+    var attrs = v.buildAttributes(el)(as1);+    var state3 = {+      build,+      node,+      attrs,+      ns: ns1,+      name: name1,+      children: children2,+      length: length(ch1)+    };+    return mkStep(new Step(node, state3, patchKeyed, haltKeyed));+  };+  var buildElem = function(v, build, ns1, name1, as1, ch1) {+    var el = createElement(toNullable(ns1), name1, v.document);+    var node = toNode2(el);+    var onChild = function(ix, child) {+      var res = build(child);+      insertChildIx(ix, extract2(res), node);+      return res;+    };+    var children2 = forE2(ch1, onChild);+    var attrs = v.buildAttributes(el)(as1);+    var state3 = {+      build,+      node,+      attrs,+      ns: ns1,+      name: name1,+      children: children2+    };+    return mkStep(new Step(node, state3, patchElem, haltElem));+  };+  var buildVDom = function(spec) {+    var $lazy_build = $runtime_lazy3("build", "Halogen.VDom.DOM", function() {+      return function(v) {+        if (v instanceof Text) {+          return buildText(spec, $lazy_build(59), v.value0);+        }+        ;+        if (v instanceof Elem) {+          return buildElem(spec, $lazy_build(60), v.value0, v.value1, v.value2, v.value3);+        }+        ;+        if (v instanceof Keyed) {+          return buildKeyed(spec, $lazy_build(61), v.value0, v.value1, v.value2, v.value3);+        }+        ;+        if (v instanceof Widget) {+          return buildWidget(spec, $lazy_build(62), v.value0);+        }+        ;+        if (v instanceof Grafted) {+          return $lazy_build(63)(runGraft(v.value0));+        }+        ;+        throw new Error("Failed pattern match at Halogen.VDom.DOM (line 58, column 27 - line 63, column 52): " + [v.constructor.name]);+      };+    });+    var build = $lazy_build(58);+    return build;+  };++  // output/Halogen.VDom.DOM.Prop/index.js+  var $runtime_lazy4 = function(name16, moduleName, init3) {+    var state3 = 0;+    var val;+    return function(lineNumber) {+      if (state3 === 2) return val;+      if (state3 === 1) throw new ReferenceError(name16 + " was needed before it finished initializing (module " + moduleName + ", line " + lineNumber + ")", moduleName, lineNumber);+      state3 = 1;+      val = init3();+      state3 = 2;+      return val;+    };+  };+  var Created = /* @__PURE__ */ (function() {+    function Created2(value0) {+      this.value0 = value0;+    }+    ;+    Created2.create = function(value0) {+      return new Created2(value0);+    };+    return Created2;+  })();+  var Removed = /* @__PURE__ */ (function() {+    function Removed2(value0) {+      this.value0 = value0;+    }+    ;+    Removed2.create = function(value0) {+      return new Removed2(value0);+    };+    return Removed2;+  })();+  var Attribute = /* @__PURE__ */ (function() {+    function Attribute2(value0, value1, value22) {+      this.value0 = value0;+      this.value1 = value1;+      this.value2 = value22;+    }+    ;+    Attribute2.create = function(value0) {+      return function(value1) {+        return function(value22) {+          return new Attribute2(value0, value1, value22);+        };+      };+    };+    return Attribute2;+  })();+  var Property = /* @__PURE__ */ (function() {+    function Property2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    Property2.create = function(value0) {+      return function(value1) {+        return new Property2(value0, value1);+      };+    };+    return Property2;+  })();+  var Handler = /* @__PURE__ */ (function() {+    function Handler2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    Handler2.create = function(value0) {+      return function(value1) {+        return new Handler2(value0, value1);+      };+    };+    return Handler2;+  })();+  var Ref = /* @__PURE__ */ (function() {+    function Ref2(value0) {+      this.value0 = value0;+    }+    ;+    Ref2.create = function(value0) {+      return new Ref2(value0);+    };+    return Ref2;+  })();+  var unsafeGetProperty = unsafeGetAny;+  var setProperty = unsafeSetAny;+  var removeProperty = function(key, el) {+    var v = hasAttribute(nullImpl, key, el);+    if (v) {+      return removeAttribute(nullImpl, key, el);+    }+    ;+    var v1 = typeOf(unsafeGetAny(key, el));+    if (v1 === "string") {+      return unsafeSetAny(key, "", el);+    }+    ;+    if (key === "rowSpan") {+      return unsafeSetAny(key, 1, el);+    }+    ;+    if (key === "colSpan") {+      return unsafeSetAny(key, 1, el);+    }+    ;+    return unsafeSetAny(key, jsUndefined, el);+  };+  var propToStrKey = function(v) {+    if (v instanceof Attribute && v.value0 instanceof Just) {+      return "attr/" + (v.value0.value0 + (":" + v.value1));+    }+    ;+    if (v instanceof Attribute) {+      return "attr/:" + v.value1;+    }+    ;+    if (v instanceof Property) {+      return "prop/" + v.value0;+    }+    ;+    if (v instanceof Handler) {+      return "handler/" + v.value0;+    }+    ;+    if (v instanceof Ref) {+      return "ref";+    }+    ;+    throw new Error("Failed pattern match at Halogen.VDom.DOM.Prop (line 182, column 16 - line 187, column 16): " + [v.constructor.name]);+  };+  var propFromString = unsafeCoerce2;+  var propFromInt = unsafeCoerce2;+  var propFromBoolean = unsafeCoerce2;+  var buildProp = function(emit) {+    return function(el) {+      var removeProp = function(prevEvents) {+        return function(v, v1) {+          if (v1 instanceof Attribute) {+            return removeAttribute(toNullable(v1.value0), v1.value1, el);+          }+          ;+          if (v1 instanceof Property) {+            return removeProperty(v1.value0, el);+          }+          ;+          if (v1 instanceof Handler) {+            var handler3 = unsafeLookup(v1.value0, prevEvents);+            return removeEventListener2(v1.value0, fst(handler3), el);+          }+          ;+          if (v1 instanceof Ref) {+            return unit;+          }+          ;+          throw new Error("Failed pattern match at Halogen.VDom.DOM.Prop (line 169, column 5 - line 179, column 18): " + [v1.constructor.name]);+        };+      };+      var mbEmit = function(v) {+        if (v instanceof Just) {+          return emit(v.value0)();+        }+        ;+        return unit;+      };+      var haltProp = function(state3) {+        var v = lookup("ref")(state3.props);+        if (v instanceof Just && v.value0 instanceof Ref) {+          return mbEmit(v.value0.value0(new Removed(el)));+        }+        ;+        return unit;+      };+      var diffProp = function(prevEvents, events) {+        return function(v, v1, v11, v2) {+          if (v11 instanceof Attribute && v2 instanceof Attribute) {+            var $66 = v11.value2 === v2.value2;+            if ($66) {+              return v2;+            }+            ;+            setAttribute(toNullable(v2.value0), v2.value1, v2.value2, el);+            return v2;+          }+          ;+          if (v11 instanceof Property && v2 instanceof Property) {+            var v4 = refEq2(v11.value1, v2.value1);+            if (v4) {+              return v2;+            }+            ;+            if (v2.value0 === "value") {+              var elVal = unsafeGetProperty("value", el);+              var $75 = refEq2(elVal, v2.value1);+              if ($75) {+                return v2;+              }+              ;+              setProperty(v2.value0, v2.value1, el);+              return v2;+            }+            ;+            setProperty(v2.value0, v2.value1, el);+            return v2;+          }+          ;+          if (v11 instanceof Handler && v2 instanceof Handler) {+            var handler3 = unsafeLookup(v2.value0, prevEvents);+            write(v2.value1)(snd(handler3))();+            pokeMutMap(v2.value0, handler3, events);+            return v2;+          }+          ;+          return v2;+        };+      };+      var applyProp = function(events) {+        return function(v, v1, v2) {+          if (v2 instanceof Attribute) {+            setAttribute(toNullable(v2.value0), v2.value1, v2.value2, el);+            return v2;+          }+          ;+          if (v2 instanceof Property) {+            setProperty(v2.value0, v2.value1, el);+            return v2;+          }+          ;+          if (v2 instanceof Handler) {+            var v3 = unsafeGetAny(v2.value0, events);+            if (unsafeHasAny(v2.value0, events)) {+              write(v2.value1)(snd(v3))();+              return v2;+            }+            ;+            var ref2 = $$new(v2.value1)();+            var listener = eventListener(function(ev) {+              return function __do2() {+                var f$prime = read(ref2)();+                return mbEmit(f$prime(ev));+              };+            })();+            pokeMutMap(v2.value0, new Tuple(listener, ref2), events);+            addEventListener2(v2.value0, listener, el);+            return v2;+          }+          ;+          if (v2 instanceof Ref) {+            mbEmit(v2.value0(new Created(el)));+            return v2;+          }+          ;+          throw new Error("Failed pattern match at Halogen.VDom.DOM.Prop (line 113, column 5 - line 135, column 15): " + [v2.constructor.name]);+        };+      };+      var $lazy_patchProp = $runtime_lazy4("patchProp", "Halogen.VDom.DOM.Prop", function() {+        return function(state3, ps2) {+          var events = newMutMap();+          var onThis = removeProp(state3.events);+          var onThese = diffProp(state3.events, events);+          var onThat = applyProp(events);+          var props = diffWithKeyAndIxE(state3.props, ps2, propToStrKey, onThese, onThis, onThat);+          var nextState = {+            events: unsafeFreeze2(events),+            props+          };+          return mkStep(new Step(unit, nextState, $lazy_patchProp(100), haltProp));+        };+      });+      var patchProp = $lazy_patchProp(87);+      var renderProp = function(ps1) {+        var events = newMutMap();+        var ps1$prime = strMapWithIxE(ps1, propToStrKey, applyProp(events));+        var state3 = {+          events: unsafeFreeze2(events),+          props: ps1$prime+        };+        return mkStep(new Step(unit, state3, patchProp, haltProp));+      };+      return renderProp;+    };+  };++  // output/Halogen.HTML.Core/index.js+  var HTML = function(x) {+    return x;+  };+  var toPropValue = function(dict) {+    return dict.toPropValue;+  };+  var text5 = function($29) {+    return HTML(Text.create($29));+  };+  var prop = function(dictIsProp) {+    var toPropValue1 = toPropValue(dictIsProp);+    return function(v) {+      var $31 = Property.create(v);+      return function($32) {+        return $31(toPropValue1($32));+      };+    };+  };+  var isPropString = {+    toPropValue: propFromString+  };+  var isPropInt = {+    toPropValue: propFromInt+  };+  var isPropBoolean = {+    toPropValue: propFromBoolean+  };+  var handler = /* @__PURE__ */ (function() {+    return Handler.create;+  })();+  var element = function(ns) {+    return function(name16) {+      return function(props) {+        return function(children2) {+          return new Elem(ns, name16, props, children2);+        };+      };+    };+  };++  // output/Halogen.HTML.Elements/index.js+  var element2 = /* @__PURE__ */ (function() {+    return element(Nothing.value);+  })();+  var img = function(props) {+    return element2("img")(props)([]);+  };+  var input2 = function(props) {+    return element2("input")(props)([]);+  };+  var li = /* @__PURE__ */ element2("li");+  var p = /* @__PURE__ */ element2("p");+  var p_ = /* @__PURE__ */ p([]);+  var source = function(props) {+    return element2("source")(props)([]);+  };+  var span3 = /* @__PURE__ */ element2("span");+  var span_ = /* @__PURE__ */ span3([]);+  var ul = /* @__PURE__ */ element2("ul");+  var video = /* @__PURE__ */ element2("video");+  var div2 = /* @__PURE__ */ element2("div");+  var div_ = /* @__PURE__ */ div2([]);+  var button = /* @__PURE__ */ element2("button");+  var audio = /* @__PURE__ */ element2("audio");+  var a = /* @__PURE__ */ element2("a");++  // output/Foreign.Index/foreign.js+  function unsafeReadPropImpl(f, s, key, value15) {+    return value15 == null ? f : s(value15[key]);+  }++  // output/Foreign.Index/index.js+  var unsafeReadProp = function(dictMonad) {+    var fail3 = fail(dictMonad);+    var pure16 = pure(applicativeExceptT(dictMonad));+    return function(k) {+      return function(value15) {+        return unsafeReadPropImpl(fail3(new TypeMismatch("object", typeOf(value15))), pure16, k, value15);+      };+    };+  };+  var readProp = function(dictMonad) {+    return unsafeReadProp(dictMonad);+  };++  // output/Web.Event.Event/foreign.js+  function _currentTarget(e) {+    return e.currentTarget;+  }+  function preventDefault(e) {+    return function() {+      return e.preventDefault();+    };+  }++  // output/Web.Event.Event/index.js+  var currentTarget = function($5) {+    return toMaybe(_currentTarget($5));+  };++  // output/Web.UIEvent.MouseEvent.EventTypes/index.js+  var click2 = "click";++  // output/Halogen.HTML.Events/index.js+  var map16 = /* @__PURE__ */ map(functorMaybe);+  var composeKleisli2 = /* @__PURE__ */ composeKleisli(bindMaybe);+  var composeKleisliFlipped4 = /* @__PURE__ */ composeKleisliFlipped(/* @__PURE__ */ bindExceptT(monadIdentity));+  var readProp2 = /* @__PURE__ */ readProp(monadIdentity);+  var readString2 = /* @__PURE__ */ readString(monadIdentity);+  var mouseHandler = unsafeCoerce2;+  var handler$prime = function(et) {+    return function(f) {+      return handler(et)(function(ev) {+        return map16(Action.create)(f(ev));+      });+    };+  };+  var handler2 = function(et) {+    return function(f) {+      return handler(et)(function(ev) {+        return new Just(new Action(f(ev)));+      });+    };+  };+  var onClick = /* @__PURE__ */ (function() {+    var $15 = handler2(click2);+    return function($16) {+      return $15(mouseHandler($16));+    };+  })();+  var addForeignPropHandler = function(key) {+    return function(prop4) {+      return function(reader) {+        return function(f) {+          var go2 = function(a2) {+            return composeKleisliFlipped4(reader)(readProp2(prop4))(unsafeToForeign(a2));+          };+          return handler$prime(key)(composeKleisli2(currentTarget)(function(e) {+            return either($$const(Nothing.value))(function($85) {+              return Just.create(f($85));+            })(runExcept(go2(e)));+          }));+        };+      };+    };+  };+  var onValueInput = /* @__PURE__ */ addForeignPropHandler(input)("value")(readString2);++  // output/Halogen.HTML.Properties/index.js+  var unwrap6 = /* @__PURE__ */ unwrap();+  var prop2 = function(dictIsProp) {+    return prop(dictIsProp);+  };+  var prop1 = /* @__PURE__ */ prop2(isPropBoolean);+  var prop22 = /* @__PURE__ */ prop2(isPropString);+  var prop3 = /* @__PURE__ */ prop2(isPropInt);+  var src9 = /* @__PURE__ */ prop22("src");+  var target6 = /* @__PURE__ */ prop22("target");+  var value13 = function(dictIsProp) {+    return prop2(dictIsProp)("value");+  };+  var width8 = /* @__PURE__ */ prop3("width");+  var placeholder3 = /* @__PURE__ */ prop22("placeholder");+  var href4 = /* @__PURE__ */ prop22("href");+  var height8 = /* @__PURE__ */ prop3("height");+  var controls2 = /* @__PURE__ */ prop1("controls");+  var classes = /* @__PURE__ */ (function() {+    var $32 = prop22("className");+    var $33 = joinWith(" ");+    var $34 = map(functorArray)(unwrap6);+    return function($35) {+      return $32($33($34($35)));+    };+  })();+  var class_ = /* @__PURE__ */ (function() {+    var $36 = prop22("className");+    return function($37) {+      return $36(unwrap6($37));+    };+  })();++  // output/Control.Monad.Fork.Class/index.js+  var monadForkAff = {+    suspend: suspendAff,+    fork: forkAff,+    join: joinFiber,+    Monad0: function() {+      return monadAff;+    },+    Functor1: function() {+      return functorFiber;+    }+  };+  var fork = function(dict) {+    return dict.fork;+  };++  // output/Data.Map.Internal/index.js+  var $runtime_lazy5 = function(name16, moduleName, init3) {+    var state3 = 0;+    var val;+    return function(lineNumber) {+      if (state3 === 2) return val;+      if (state3 === 1) throw new ReferenceError(name16 + " was needed before it finished initializing (module " + moduleName + ", line " + lineNumber + ")", moduleName, lineNumber);+      state3 = 1;+      val = init3();+      state3 = 2;+      return val;+    };+  };+  var Leaf = /* @__PURE__ */ (function() {+    function Leaf2() {+    }+    ;+    Leaf2.value = new Leaf2();+    return Leaf2;+  })();+  var Node = /* @__PURE__ */ (function() {+    function Node2(value0, value1, value22, value32, value42, value52) {+      this.value0 = value0;+      this.value1 = value1;+      this.value2 = value22;+      this.value3 = value32;+      this.value4 = value42;+      this.value5 = value52;+    }+    ;+    Node2.create = function(value0) {+      return function(value1) {+        return function(value22) {+          return function(value32) {+            return function(value42) {+              return function(value52) {+                return new Node2(value0, value1, value22, value32, value42, value52);+              };+            };+          };+        };+      };+    };+    return Node2;+  })();+  var Split = /* @__PURE__ */ (function() {+    function Split2(value0, value1, value22) {+      this.value0 = value0;+      this.value1 = value1;+      this.value2 = value22;+    }+    ;+    Split2.create = function(value0) {+      return function(value1) {+        return function(value22) {+          return new Split2(value0, value1, value22);+        };+      };+    };+    return Split2;+  })();+  var SplitLast = /* @__PURE__ */ (function() {+    function SplitLast2(value0, value1, value22) {+      this.value0 = value0;+      this.value1 = value1;+      this.value2 = value22;+    }+    ;+    SplitLast2.create = function(value0) {+      return function(value1) {+        return function(value22) {+          return new SplitLast2(value0, value1, value22);+        };+      };+    };+    return SplitLast2;+  })();+  var unsafeNode = function(k, v, l, r) {+    if (l instanceof Leaf) {+      if (r instanceof Leaf) {+        return new Node(1, 1, k, v, l, r);+      }+      ;+      if (r instanceof Node) {+        return new Node(1 + r.value0 | 0, 1 + r.value1 | 0, k, v, l, r);+      }+      ;+      throw new Error("Failed pattern match at Data.Map.Internal (line 702, column 5 - line 706, column 39): " + [r.constructor.name]);+    }+    ;+    if (l instanceof Node) {+      if (r instanceof Leaf) {+        return new Node(1 + l.value0 | 0, 1 + l.value1 | 0, k, v, l, r);+      }+      ;+      if (r instanceof Node) {+        return new Node(1 + (function() {+          var $280 = l.value0 > r.value0;+          if ($280) {+            return l.value0;+          }+          ;+          return r.value0;+        })() | 0, (1 + l.value1 | 0) + r.value1 | 0, k, v, l, r);+      }+      ;+      throw new Error("Failed pattern match at Data.Map.Internal (line 708, column 5 - line 712, column 68): " + [r.constructor.name]);+    }+    ;+    throw new Error("Failed pattern match at Data.Map.Internal (line 700, column 32 - line 712, column 68): " + [l.constructor.name]);+  };+  var singleton7 = function(k) {+    return function(v) {+      return new Node(1, 1, k, v, Leaf.value, Leaf.value);+    };+  };+  var unsafeBalancedNode = /* @__PURE__ */ (function() {+    var height9 = function(v) {+      if (v instanceof Leaf) {+        return 0;+      }+      ;+      if (v instanceof Node) {+        return v.value0;+      }+      ;+      throw new Error("Failed pattern match at Data.Map.Internal (line 757, column 12 - line 759, column 26): " + [v.constructor.name]);+    };+    var rotateLeft = function(k, v, l, rk, rv, rl, rr) {+      if (rl instanceof Node && rl.value0 > height9(rr)) {+        return unsafeNode(rl.value2, rl.value3, unsafeNode(k, v, l, rl.value4), unsafeNode(rk, rv, rl.value5, rr));+      }+      ;+      return unsafeNode(rk, rv, unsafeNode(k, v, l, rl), rr);+    };+    var rotateRight = function(k, v, lk, lv, ll, lr, r) {+      if (lr instanceof Node && height9(ll) <= lr.value0) {+        return unsafeNode(lr.value2, lr.value3, unsafeNode(lk, lv, ll, lr.value4), unsafeNode(k, v, lr.value5, r));+      }+      ;+      return unsafeNode(lk, lv, ll, unsafeNode(k, v, lr, r));+    };+    return function(k, v, l, r) {+      if (l instanceof Leaf) {+        if (r instanceof Leaf) {+          return singleton7(k)(v);+        }+        ;+        if (r instanceof Node && r.value0 > 1) {+          return rotateLeft(k, v, l, r.value2, r.value3, r.value4, r.value5);+        }+        ;+        return unsafeNode(k, v, l, r);+      }+      ;+      if (l instanceof Node) {+        if (r instanceof Node) {+          if (r.value0 > (l.value0 + 1 | 0)) {+            return rotateLeft(k, v, l, r.value2, r.value3, r.value4, r.value5);+          }+          ;+          if (l.value0 > (r.value0 + 1 | 0)) {+            return rotateRight(k, v, l.value2, l.value3, l.value4, l.value5, r);+          }+          ;+        }+        ;+        if (r instanceof Leaf && l.value0 > 1) {+          return rotateRight(k, v, l.value2, l.value3, l.value4, l.value5, r);+        }+        ;+        return unsafeNode(k, v, l, r);+      }+      ;+      throw new Error("Failed pattern match at Data.Map.Internal (line 717, column 40 - line 738, column 34): " + [l.constructor.name]);+    };+  })();+  var $lazy_unsafeSplit = /* @__PURE__ */ $runtime_lazy5("unsafeSplit", "Data.Map.Internal", function() {+    return function(comp, k, m) {+      if (m instanceof Leaf) {+        return new Split(Nothing.value, Leaf.value, Leaf.value);+      }+      ;+      if (m instanceof Node) {+        var v = comp(k)(m.value2);+        if (v instanceof LT) {+          var v1 = $lazy_unsafeSplit(793)(comp, k, m.value4);+          return new Split(v1.value0, v1.value1, unsafeBalancedNode(m.value2, m.value3, v1.value2, m.value5));+        }+        ;+        if (v instanceof GT) {+          var v1 = $lazy_unsafeSplit(796)(comp, k, m.value5);+          return new Split(v1.value0, unsafeBalancedNode(m.value2, m.value3, m.value4, v1.value1), v1.value2);+        }+        ;+        if (v instanceof EQ) {+          return new Split(new Just(m.value3), m.value4, m.value5);+        }+        ;+        throw new Error("Failed pattern match at Data.Map.Internal (line 791, column 5 - line 799, column 30): " + [v.constructor.name]);+      }+      ;+      throw new Error("Failed pattern match at Data.Map.Internal (line 787, column 34 - line 799, column 30): " + [m.constructor.name]);+    };+  });+  var unsafeSplit = /* @__PURE__ */ $lazy_unsafeSplit(786);+  var $lazy_unsafeSplitLast = /* @__PURE__ */ $runtime_lazy5("unsafeSplitLast", "Data.Map.Internal", function() {+    return function(k, v, l, r) {+      if (r instanceof Leaf) {+        return new SplitLast(k, v, l);+      }+      ;+      if (r instanceof Node) {+        var v1 = $lazy_unsafeSplitLast(779)(r.value2, r.value3, r.value4, r.value5);+        return new SplitLast(v1.value0, v1.value1, unsafeBalancedNode(k, v, l, v1.value2));+      }+      ;+      throw new Error("Failed pattern match at Data.Map.Internal (line 776, column 37 - line 780, column 57): " + [r.constructor.name]);+    };+  });+  var unsafeSplitLast = /* @__PURE__ */ $lazy_unsafeSplitLast(775);+  var unsafeJoinNodes = function(v, v1) {+    if (v instanceof Leaf) {+      return v1;+    }+    ;+    if (v instanceof Node) {+      var v2 = unsafeSplitLast(v.value2, v.value3, v.value4, v.value5);+      return unsafeBalancedNode(v2.value0, v2.value1, v2.value2, v1);+    }+    ;+    throw new Error("Failed pattern match at Data.Map.Internal (line 764, column 25 - line 768, column 38): " + [v.constructor.name, v1.constructor.name]);+  };+  var lookup2 = function(dictOrd) {+    var compare2 = compare(dictOrd);+    return function(k) {+      var go2 = function($copy_v) {+        var $tco_done = false;+        var $tco_result;+        function $tco_loop(v) {+          if (v instanceof Leaf) {+            $tco_done = true;+            return Nothing.value;+          }+          ;+          if (v instanceof Node) {+            var v1 = compare2(k)(v.value2);+            if (v1 instanceof LT) {+              $copy_v = v.value4;+              return;+            }+            ;+            if (v1 instanceof GT) {+              $copy_v = v.value5;+              return;+            }+            ;+            if (v1 instanceof EQ) {+              $tco_done = true;+              return new Just(v.value3);+            }+            ;+            throw new Error("Failed pattern match at Data.Map.Internal (line 283, column 7 - line 286, column 22): " + [v1.constructor.name]);+          }+          ;+          throw new Error("Failed pattern match at Data.Map.Internal (line 280, column 8 - line 286, column 22): " + [v.constructor.name]);+        }+        ;+        while (!$tco_done) {+          $tco_result = $tco_loop($copy_v);+        }+        ;+        return $tco_result;+      };+      return go2;+    };+  };+  var insert = function(dictOrd) {+    var compare2 = compare(dictOrd);+    return function(k) {+      return function(v) {+        var go2 = function(v1) {+          if (v1 instanceof Leaf) {+            return singleton7(k)(v);+          }+          ;+          if (v1 instanceof Node) {+            var v2 = compare2(k)(v1.value2);+            if (v2 instanceof LT) {+              return unsafeBalancedNode(v1.value2, v1.value3, go2(v1.value4), v1.value5);+            }+            ;+            if (v2 instanceof GT) {+              return unsafeBalancedNode(v1.value2, v1.value3, v1.value4, go2(v1.value5));+            }+            ;+            if (v2 instanceof EQ) {+              return new Node(v1.value0, v1.value1, k, v, v1.value4, v1.value5);+            }+            ;+            throw new Error("Failed pattern match at Data.Map.Internal (line 471, column 7 - line 474, column 35): " + [v2.constructor.name]);+          }+          ;+          throw new Error("Failed pattern match at Data.Map.Internal (line 468, column 8 - line 474, column 35): " + [v1.constructor.name]);+        };+        return go2;+      };+    };+  };+  var foldableMap = {+    foldr: function(f) {+      return function(z) {+        var $lazy_go = $runtime_lazy5("go", "Data.Map.Internal", function() {+          return function(m$prime, z$prime) {+            if (m$prime instanceof Leaf) {+              return z$prime;+            }+            ;+            if (m$prime instanceof Node) {+              return $lazy_go(172)(m$prime.value4, f(m$prime.value3)($lazy_go(172)(m$prime.value5, z$prime)));+            }+            ;+            throw new Error("Failed pattern match at Data.Map.Internal (line 169, column 26 - line 172, column 43): " + [m$prime.constructor.name]);+          };+        });+        var go2 = $lazy_go(169);+        return function(m) {+          return go2(m, z);+        };+      };+    },+    foldl: function(f) {+      return function(z) {+        var $lazy_go = $runtime_lazy5("go", "Data.Map.Internal", function() {+          return function(z$prime, m$prime) {+            if (m$prime instanceof Leaf) {+              return z$prime;+            }+            ;+            if (m$prime instanceof Node) {+              return $lazy_go(178)(f($lazy_go(178)(z$prime, m$prime.value4))(m$prime.value3), m$prime.value5);+            }+            ;+            throw new Error("Failed pattern match at Data.Map.Internal (line 175, column 26 - line 178, column 43): " + [m$prime.constructor.name]);+          };+        });+        var go2 = $lazy_go(175);+        return function(m) {+          return go2(z, m);+        };+      };+    },+    foldMap: function(dictMonoid) {+      var mempty2 = mempty(dictMonoid);+      var append12 = append(dictMonoid.Semigroup0());+      return function(f) {+        var go2 = function(v) {+          if (v instanceof Leaf) {+            return mempty2;+          }+          ;+          if (v instanceof Node) {+            return append12(go2(v.value4))(append12(f(v.value3))(go2(v.value5)));+          }+          ;+          throw new Error("Failed pattern match at Data.Map.Internal (line 181, column 10 - line 184, column 28): " + [v.constructor.name]);+        };+        return go2;+      };+    }+  };+  var empty3 = /* @__PURE__ */ (function() {+    return Leaf.value;+  })();+  var $$delete2 = function(dictOrd) {+    var compare2 = compare(dictOrd);+    return function(k) {+      var go2 = function(v) {+        if (v instanceof Leaf) {+          return Leaf.value;+        }+        ;+        if (v instanceof Node) {+          var v1 = compare2(k)(v.value2);+          if (v1 instanceof LT) {+            return unsafeBalancedNode(v.value2, v.value3, go2(v.value4), v.value5);+          }+          ;+          if (v1 instanceof GT) {+            return unsafeBalancedNode(v.value2, v.value3, v.value4, go2(v.value5));+          }+          ;+          if (v1 instanceof EQ) {+            return unsafeJoinNodes(v.value4, v.value5);+          }+          ;+          throw new Error("Failed pattern match at Data.Map.Internal (line 498, column 7 - line 501, column 43): " + [v1.constructor.name]);+        }+        ;+        throw new Error("Failed pattern match at Data.Map.Internal (line 495, column 8 - line 501, column 43): " + [v.constructor.name]);+      };+      return go2;+    };+  };+  var alter = function(dictOrd) {+    var compare2 = compare(dictOrd);+    return function(f) {+      return function(k) {+        return function(m) {+          var v = unsafeSplit(compare2, k, m);+          var v2 = f(v.value0);+          if (v2 instanceof Nothing) {+            return unsafeJoinNodes(v.value1, v.value2);+          }+          ;+          if (v2 instanceof Just) {+            return unsafeBalancedNode(k, v2.value0, v.value1, v.value2);+          }+          ;+          throw new Error("Failed pattern match at Data.Map.Internal (line 514, column 3 - line 518, column 41): " + [v2.constructor.name]);+        };+      };+    };+  };++  // output/Data.Exists/index.js+  var runExists = unsafeCoerce2;+  var mkExists = unsafeCoerce2;++  // output/Data.Coyoneda/index.js+  var CoyonedaF = /* @__PURE__ */ (function() {+    function CoyonedaF2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    CoyonedaF2.create = function(value0) {+      return function(value1) {+        return new CoyonedaF2(value0, value1);+      };+    };+    return CoyonedaF2;+  })();+  var unCoyoneda = function(f) {+    return function(v) {+      return runExists(function(v1) {+        return f(v1.value0)(v1.value1);+      })(v);+    };+  };+  var coyoneda = function(k) {+    return function(fi) {+      return mkExists(new CoyonedaF(k, fi));+    };+  };+  var functorCoyoneda = {+    map: function(f) {+      return function(v) {+        return runExists(function(v1) {+          return coyoneda(function($180) {+            return f(v1.value0($180));+          })(v1.value1);+        })(v);+      };+    }+  };+  var liftCoyoneda = /* @__PURE__ */ coyoneda(/* @__PURE__ */ identity(categoryFn));++  // output/Halogen.Data.Slot/index.js+  var foreachSlot = function(dictApplicative) {+    var traverse_7 = traverse_(dictApplicative)(foldableMap);+    return function(v) {+      return function(k) {+        return traverse_7(function($54) {+          return k($54);+        })(v);+      };+    };+  };+  var empty4 = empty3;++  // output/Control.Applicative.Free/index.js+  var identity12 = /* @__PURE__ */ identity(categoryFn);+  var Pure = /* @__PURE__ */ (function() {+    function Pure2(value0) {+      this.value0 = value0;+    }+    ;+    Pure2.create = function(value0) {+      return new Pure2(value0);+    };+    return Pure2;+  })();+  var Lift = /* @__PURE__ */ (function() {+    function Lift3(value0) {+      this.value0 = value0;+    }+    ;+    Lift3.create = function(value0) {+      return new Lift3(value0);+    };+    return Lift3;+  })();+  var Ap = /* @__PURE__ */ (function() {+    function Ap2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    Ap2.create = function(value0) {+      return function(value1) {+        return new Ap2(value0, value1);+      };+    };+    return Ap2;+  })();+  var mkAp = function(fba) {+    return function(fb) {+      return new Ap(fba, fb);+    };+  };+  var liftFreeAp = /* @__PURE__ */ (function() {+    return Lift.create;+  })();+  var goLeft = function(dictApplicative) {+    var pure16 = pure(dictApplicative);+    return function(fStack) {+      return function(valStack) {+        return function(nat) {+          return function(func) {+            return function(count) {+              if (func instanceof Pure) {+                return new Tuple(new Cons({+                  func: pure16(func.value0),+                  count+                }, fStack), valStack);+              }+              ;+              if (func instanceof Lift) {+                return new Tuple(new Cons({+                  func: nat(func.value0),+                  count+                }, fStack), valStack);+              }+              ;+              if (func instanceof Ap) {+                return goLeft(dictApplicative)(fStack)(cons(func.value1)(valStack))(nat)(func.value0)(count + 1 | 0);+              }+              ;+              throw new Error("Failed pattern match at Control.Applicative.Free (line 102, column 41 - line 105, column 81): " + [func.constructor.name]);+            };+          };+        };+      };+    };+  };+  var goApply = function(dictApplicative) {+    var apply4 = apply(dictApplicative.Apply0());+    return function(fStack) {+      return function(vals) {+        return function(gVal) {+          if (fStack instanceof Nil) {+            return new Left(gVal);+          }+          ;+          if (fStack instanceof Cons) {+            var gRes = apply4(fStack.value0.func)(gVal);+            var $31 = fStack.value0.count === 1;+            if ($31) {+              if (fStack.value1 instanceof Nil) {+                return new Left(gRes);+              }+              ;+              return goApply(dictApplicative)(fStack.value1)(vals)(gRes);+            }+            ;+            if (vals instanceof Nil) {+              return new Left(gRes);+            }+            ;+            if (vals instanceof Cons) {+              return new Right(new Tuple(new Cons({+                func: gRes,+                count: fStack.value0.count - 1 | 0+              }, fStack.value1), new NonEmpty(vals.value0, vals.value1)));+            }+            ;+            throw new Error("Failed pattern match at Control.Applicative.Free (line 83, column 11 - line 88, column 50): " + [vals.constructor.name]);+          }+          ;+          throw new Error("Failed pattern match at Control.Applicative.Free (line 72, column 3 - line 88, column 50): " + [fStack.constructor.name]);+        };+      };+    };+  };+  var functorFreeAp = {+    map: function(f) {+      return function(x) {+        return mkAp(new Pure(f))(x);+      };+    }+  };+  var foldFreeAp = function(dictApplicative) {+    var goApply1 = goApply(dictApplicative);+    var pure16 = pure(dictApplicative);+    var goLeft1 = goLeft(dictApplicative);+    return function(nat) {+      return function(z) {+        var go2 = function($copy_v) {+          var $tco_done = false;+          var $tco_result;+          function $tco_loop(v) {+            if (v.value1.value0 instanceof Pure) {+              var v1 = goApply1(v.value0)(v.value1.value1)(pure16(v.value1.value0.value0));+              if (v1 instanceof Left) {+                $tco_done = true;+                return v1.value0;+              }+              ;+              if (v1 instanceof Right) {+                $copy_v = v1.value0;+                return;+              }+              ;+              throw new Error("Failed pattern match at Control.Applicative.Free (line 54, column 17 - line 56, column 24): " + [v1.constructor.name]);+            }+            ;+            if (v.value1.value0 instanceof Lift) {+              var v1 = goApply1(v.value0)(v.value1.value1)(nat(v.value1.value0.value0));+              if (v1 instanceof Left) {+                $tco_done = true;+                return v1.value0;+              }+              ;+              if (v1 instanceof Right) {+                $copy_v = v1.value0;+                return;+              }+              ;+              throw new Error("Failed pattern match at Control.Applicative.Free (line 57, column 17 - line 59, column 24): " + [v1.constructor.name]);+            }+            ;+            if (v.value1.value0 instanceof Ap) {+              var nextVals = new NonEmpty(v.value1.value0.value1, v.value1.value1);+              $copy_v = goLeft1(v.value0)(nextVals)(nat)(v.value1.value0.value0)(1);+              return;+            }+            ;+            throw new Error("Failed pattern match at Control.Applicative.Free (line 53, column 5 - line 62, column 47): " + [v.value1.value0.constructor.name]);+          }+          ;+          while (!$tco_done) {+            $tco_result = $tco_loop($copy_v);+          }+          ;+          return $tco_result;+        };+        return go2(new Tuple(Nil.value, singleton5(z)));+      };+    };+  };+  var retractFreeAp = function(dictApplicative) {+    return foldFreeAp(dictApplicative)(identity12);+  };+  var applyFreeAp = {+    apply: function(fba) {+      return function(fb) {+        return mkAp(fba)(fb);+      };+    },+    Functor0: function() {+      return functorFreeAp;+    }+  };+  var applicativeFreeAp = /* @__PURE__ */ (function() {+    return {+      pure: Pure.create,+      Apply0: function() {+        return applyFreeAp;+      }+    };+  })();+  var foldFreeAp1 = /* @__PURE__ */ foldFreeAp(applicativeFreeAp);+  var hoistFreeAp = function(f) {+    return foldFreeAp1(function($54) {+      return liftFreeAp(f($54));+    });+  };++  // output/Data.CatQueue/index.js+  var CatQueue = /* @__PURE__ */ (function() {+    function CatQueue2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    CatQueue2.create = function(value0) {+      return function(value1) {+        return new CatQueue2(value0, value1);+      };+    };+    return CatQueue2;+  })();+  var uncons3 = function($copy_v) {+    var $tco_done = false;+    var $tco_result;+    function $tco_loop(v) {+      if (v.value0 instanceof Nil && v.value1 instanceof Nil) {+        $tco_done = true;+        return Nothing.value;+      }+      ;+      if (v.value0 instanceof Nil) {+        $copy_v = new CatQueue(reverse2(v.value1), Nil.value);+        return;+      }+      ;+      if (v.value0 instanceof Cons) {+        $tco_done = true;+        return new Just(new Tuple(v.value0.value0, new CatQueue(v.value0.value1, v.value1)));+      }+      ;+      throw new Error("Failed pattern match at Data.CatQueue (line 82, column 1 - line 82, column 63): " + [v.constructor.name]);+    }+    ;+    while (!$tco_done) {+      $tco_result = $tco_loop($copy_v);+    }+    ;+    return $tco_result;+  };+  var snoc3 = function(v) {+    return function(a2) {+      return new CatQueue(v.value0, new Cons(a2, v.value1));+    };+  };+  var $$null3 = function(v) {+    if (v.value0 instanceof Nil && v.value1 instanceof Nil) {+      return true;+    }+    ;+    return false;+  };+  var empty5 = /* @__PURE__ */ (function() {+    return new CatQueue(Nil.value, Nil.value);+  })();++  // output/Data.CatList/index.js+  var CatNil = /* @__PURE__ */ (function() {+    function CatNil2() {+    }+    ;+    CatNil2.value = new CatNil2();+    return CatNil2;+  })();+  var CatCons = /* @__PURE__ */ (function() {+    function CatCons2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    CatCons2.create = function(value0) {+      return function(value1) {+        return new CatCons2(value0, value1);+      };+    };+    return CatCons2;+  })();+  var link = function(v) {+    return function(v1) {+      if (v instanceof CatNil) {+        return v1;+      }+      ;+      if (v1 instanceof CatNil) {+        return v;+      }+      ;+      if (v instanceof CatCons) {+        return new CatCons(v.value0, snoc3(v.value1)(v1));+      }+      ;+      throw new Error("Failed pattern match at Data.CatList (line 108, column 1 - line 108, column 54): " + [v.constructor.name, v1.constructor.name]);+    };+  };+  var foldr3 = function(k) {+    return function(b2) {+      return function(q2) {+        var foldl2 = function($copy_v) {+          return function($copy_v1) {+            return function($copy_v2) {+              var $tco_var_v = $copy_v;+              var $tco_var_v1 = $copy_v1;+              var $tco_done = false;+              var $tco_result;+              function $tco_loop(v, v1, v2) {+                if (v2 instanceof Nil) {+                  $tco_done = true;+                  return v1;+                }+                ;+                if (v2 instanceof Cons) {+                  $tco_var_v = v;+                  $tco_var_v1 = v(v1)(v2.value0);+                  $copy_v2 = v2.value1;+                  return;+                }+                ;+                throw new Error("Failed pattern match at Data.CatList (line 124, column 3 - line 124, column 59): " + [v.constructor.name, v1.constructor.name, v2.constructor.name]);+              }+              ;+              while (!$tco_done) {+                $tco_result = $tco_loop($tco_var_v, $tco_var_v1, $copy_v2);+              }+              ;+              return $tco_result;+            };+          };+        };+        var go2 = function($copy_xs) {+          return function($copy_ys) {+            var $tco_var_xs = $copy_xs;+            var $tco_done1 = false;+            var $tco_result;+            function $tco_loop(xs, ys) {+              var v = uncons3(xs);+              if (v instanceof Nothing) {+                $tco_done1 = true;+                return foldl2(function(x) {+                  return function(i2) {+                    return i2(x);+                  };+                })(b2)(ys);+              }+              ;+              if (v instanceof Just) {+                $tco_var_xs = v.value0.value1;+                $copy_ys = new Cons(k(v.value0.value0), ys);+                return;+              }+              ;+              throw new Error("Failed pattern match at Data.CatList (line 120, column 14 - line 122, column 67): " + [v.constructor.name]);+            }+            ;+            while (!$tco_done1) {+              $tco_result = $tco_loop($tco_var_xs, $copy_ys);+            }+            ;+            return $tco_result;+          };+        };+        return go2(q2)(Nil.value);+      };+    };+  };+  var uncons4 = function(v) {+    if (v instanceof CatNil) {+      return Nothing.value;+    }+    ;+    if (v instanceof CatCons) {+      return new Just(new Tuple(v.value0, (function() {+        var $66 = $$null3(v.value1);+        if ($66) {+          return CatNil.value;+        }+        ;+        return foldr3(link)(CatNil.value)(v.value1);+      })()));+    }+    ;+    throw new Error("Failed pattern match at Data.CatList (line 99, column 1 - line 99, column 61): " + [v.constructor.name]);+  };+  var empty6 = /* @__PURE__ */ (function() {+    return CatNil.value;+  })();+  var append2 = link;+  var semigroupCatList = {+    append: append2+  };+  var snoc4 = function(cat) {+    return function(a2) {+      return append2(cat)(new CatCons(a2, empty5));+    };+  };++  // output/Control.Monad.Free/index.js+  var $runtime_lazy6 = function(name16, moduleName, init3) {+    var state3 = 0;+    var val;+    return function(lineNumber) {+      if (state3 === 2) return val;+      if (state3 === 1) throw new ReferenceError(name16 + " was needed before it finished initializing (module " + moduleName + ", line " + lineNumber + ")", moduleName, lineNumber);+      state3 = 1;+      val = init3();+      state3 = 2;+      return val;+    };+  };+  var append3 = /* @__PURE__ */ append(semigroupCatList);+  var Free = /* @__PURE__ */ (function() {+    function Free2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    Free2.create = function(value0) {+      return function(value1) {+        return new Free2(value0, value1);+      };+    };+    return Free2;+  })();+  var Return = /* @__PURE__ */ (function() {+    function Return2(value0) {+      this.value0 = value0;+    }+    ;+    Return2.create = function(value0) {+      return new Return2(value0);+    };+    return Return2;+  })();+  var Bind = /* @__PURE__ */ (function() {+    function Bind2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    Bind2.create = function(value0) {+      return function(value1) {+        return new Bind2(value0, value1);+      };+    };+    return Bind2;+  })();+  var toView = function($copy_v) {+    var $tco_done = false;+    var $tco_result;+    function $tco_loop(v) {+      var runExpF = function(v22) {+        return v22;+      };+      var concatF = function(v22) {+        return function(r) {+          return new Free(v22.value0, append3(v22.value1)(r));+        };+      };+      if (v.value0 instanceof Return) {+        var v2 = uncons4(v.value1);+        if (v2 instanceof Nothing) {+          $tco_done = true;+          return new Return(v.value0.value0);+        }+        ;+        if (v2 instanceof Just) {+          $copy_v = concatF(runExpF(v2.value0.value0)(v.value0.value0))(v2.value0.value1);+          return;+        }+        ;+        throw new Error("Failed pattern match at Control.Monad.Free (line 227, column 7 - line 231, column 64): " + [v2.constructor.name]);+      }+      ;+      if (v.value0 instanceof Bind) {+        $tco_done = true;+        return new Bind(v.value0.value0, function(a2) {+          return concatF(v.value0.value1(a2))(v.value1);+        });+      }+      ;+      throw new Error("Failed pattern match at Control.Monad.Free (line 225, column 3 - line 233, column 56): " + [v.value0.constructor.name]);+    }+    ;+    while (!$tco_done) {+      $tco_result = $tco_loop($copy_v);+    }+    ;+    return $tco_result;+  };+  var fromView = function(f) {+    return new Free(f, empty6);+  };+  var freeMonad = {+    Applicative0: function() {+      return freeApplicative;+    },+    Bind1: function() {+      return freeBind;+    }+  };+  var freeFunctor = {+    map: function(k) {+      return function(f) {+        return bindFlipped(freeBind)((function() {+          var $189 = pure(freeApplicative);+          return function($190) {+            return $189(k($190));+          };+        })())(f);+      };+    }+  };+  var freeBind = {+    bind: function(v) {+      return function(k) {+        return new Free(v.value0, snoc4(v.value1)(k));+      };+    },+    Apply0: function() {+      return $lazy_freeApply(0);+    }+  };+  var freeApplicative = {+    pure: function($191) {+      return fromView(Return.create($191));+    },+    Apply0: function() {+      return $lazy_freeApply(0);+    }+  };+  var $lazy_freeApply = /* @__PURE__ */ $runtime_lazy6("freeApply", "Control.Monad.Free", function() {+    return {+      apply: ap(freeMonad),+      Functor0: function() {+        return freeFunctor;+      }+    };+  });+  var pure5 = /* @__PURE__ */ pure(freeApplicative);+  var liftF = function(f) {+    return fromView(new Bind(f, function($192) {+      return pure5($192);+    }));+  };+  var foldFree = function(dictMonadRec) {+    var Monad0 = dictMonadRec.Monad0();+    var map112 = map(Monad0.Bind1().Apply0().Functor0());+    var pure16 = pure(Monad0.Applicative0());+    var tailRecM4 = tailRecM(dictMonadRec);+    return function(k) {+      var go2 = function(f) {+        var v = toView(f);+        if (v instanceof Return) {+          return map112(Done.create)(pure16(v.value0));+        }+        ;+        if (v instanceof Bind) {+          return map112(function($199) {+            return Loop.create(v.value1($199));+          })(k(v.value0));+        }+        ;+        throw new Error("Failed pattern match at Control.Monad.Free (line 158, column 10 - line 160, column 37): " + [v.constructor.name]);+      };+      return tailRecM4(go2);+    };+  };++  // output/Halogen.Query.ChildQuery/index.js+  var unChildQueryBox = unsafeCoerce2;++  // output/Unsafe.Reference/foreign.js+  function reallyUnsafeRefEq(a2) {+    return function(b2) {+      return a2 === b2;+    };+  }++  // output/Unsafe.Reference/index.js+  var unsafeRefEq = reallyUnsafeRefEq;++  // output/Halogen.Subscription/index.js+  var $$void4 = /* @__PURE__ */ $$void(functorEffect);+  var bind3 = /* @__PURE__ */ bind(bindEffect);+  var append4 = /* @__PURE__ */ append(semigroupArray);+  var traverse_2 = /* @__PURE__ */ traverse_(applicativeEffect);+  var traverse_1 = /* @__PURE__ */ traverse_2(foldableArray);+  var unsubscribe = function(v) {+    return v;+  };+  var subscribe = function(v) {+    return function(k) {+      return v(function($76) {+        return $$void4(k($76));+      });+    };+  };+  var notify = function(v) {+    return function(a2) {+      return v(a2);+    };+  };+  var create3 = function __do() {+    var subscribers = $$new([])();+    return {+      emitter: function(k) {+        return function __do2() {+          modify_(function(v) {+            return append4(v)([k]);+          })(subscribers)();+          return modify_(deleteBy(unsafeRefEq)(k))(subscribers);+        };+      },+      listener: function(a2) {+        return bind3(read(subscribers))(traverse_1(function(k) {+          return k(a2);+        }));+      }+    };+  };++  // output/Halogen.Query.HalogenM/index.js+  var SubscriptionId = function(x) {+    return x;+  };+  var ForkId = function(x) {+    return x;+  };+  var State = /* @__PURE__ */ (function() {+    function State2(value0) {+      this.value0 = value0;+    }+    ;+    State2.create = function(value0) {+      return new State2(value0);+    };+    return State2;+  })();+  var Subscribe = /* @__PURE__ */ (function() {+    function Subscribe2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    Subscribe2.create = function(value0) {+      return function(value1) {+        return new Subscribe2(value0, value1);+      };+    };+    return Subscribe2;+  })();+  var Unsubscribe = /* @__PURE__ */ (function() {+    function Unsubscribe2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    Unsubscribe2.create = function(value0) {+      return function(value1) {+        return new Unsubscribe2(value0, value1);+      };+    };+    return Unsubscribe2;+  })();+  var Lift2 = /* @__PURE__ */ (function() {+    function Lift3(value0) {+      this.value0 = value0;+    }+    ;+    Lift3.create = function(value0) {+      return new Lift3(value0);+    };+    return Lift3;+  })();+  var ChildQuery2 = /* @__PURE__ */ (function() {+    function ChildQuery3(value0) {+      this.value0 = value0;+    }+    ;+    ChildQuery3.create = function(value0) {+      return new ChildQuery3(value0);+    };+    return ChildQuery3;+  })();+  var Raise = /* @__PURE__ */ (function() {+    function Raise2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    Raise2.create = function(value0) {+      return function(value1) {+        return new Raise2(value0, value1);+      };+    };+    return Raise2;+  })();+  var Par = /* @__PURE__ */ (function() {+    function Par2(value0) {+      this.value0 = value0;+    }+    ;+    Par2.create = function(value0) {+      return new Par2(value0);+    };+    return Par2;+  })();+  var Fork = /* @__PURE__ */ (function() {+    function Fork2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    Fork2.create = function(value0) {+      return function(value1) {+        return new Fork2(value0, value1);+      };+    };+    return Fork2;+  })();+  var Join = /* @__PURE__ */ (function() {+    function Join2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    Join2.create = function(value0) {+      return function(value1) {+        return new Join2(value0, value1);+      };+    };+    return Join2;+  })();+  var Kill = /* @__PURE__ */ (function() {+    function Kill2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    Kill2.create = function(value0) {+      return function(value1) {+        return new Kill2(value0, value1);+      };+    };+    return Kill2;+  })();+  var GetRef = /* @__PURE__ */ (function() {+    function GetRef2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    GetRef2.create = function(value0) {+      return function(value1) {+        return new GetRef2(value0, value1);+      };+    };+    return GetRef2;+  })();+  var HalogenM = function(x) {+    return x;+  };+  var ordSubscriptionId = ordInt;+  var ordForkId = ordInt;+  var monadHalogenM = freeMonad;+  var monadStateHalogenM = {+    state: function($181) {+      return HalogenM(liftF(State.create($181)));+    },+    Monad0: function() {+      return monadHalogenM;+    }+  };+  var monadEffectHalogenM = function(dictMonadEffect) {+    return {+      liftEffect: (function() {+        var $186 = liftEffect(dictMonadEffect);+        return function($187) {+          return HalogenM(liftF(Lift2.create($186($187))));+        };+      })(),+      Monad0: function() {+        return monadHalogenM;+      }+    };+  };+  var functorHalogenM = freeFunctor;+  var bindHalogenM = freeBind;+  var applicativeHalogenM = freeApplicative;++  // output/Halogen.Query.HalogenQ/index.js+  var Initialize = /* @__PURE__ */ (function() {+    function Initialize2(value0) {+      this.value0 = value0;+    }+    ;+    Initialize2.create = function(value0) {+      return new Initialize2(value0);+    };+    return Initialize2;+  })();+  var Finalize = /* @__PURE__ */ (function() {+    function Finalize2(value0) {+      this.value0 = value0;+    }+    ;+    Finalize2.create = function(value0) {+      return new Finalize2(value0);+    };+    return Finalize2;+  })();+  var Receive = /* @__PURE__ */ (function() {+    function Receive2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    Receive2.create = function(value0) {+      return function(value1) {+        return new Receive2(value0, value1);+      };+    };+    return Receive2;+  })();+  var Action2 = /* @__PURE__ */ (function() {+    function Action3(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    Action3.create = function(value0) {+      return function(value1) {+        return new Action3(value0, value1);+      };+    };+    return Action3;+  })();+  var Query = /* @__PURE__ */ (function() {+    function Query2(value0, value1) {+      this.value0 = value0;+      this.value1 = value1;+    }+    ;+    Query2.create = function(value0) {+      return function(value1) {+        return new Query2(value0, value1);+      };+    };+    return Query2;+  })();++  // output/Halogen.VDom.Thunk/index.js+  var $runtime_lazy7 = function(name16, moduleName, init3) {+    var state3 = 0;+    var val;+    return function(lineNumber) {+      if (state3 === 2) return val;+      if (state3 === 1) throw new ReferenceError(name16 + " was needed before it finished initializing (module " + moduleName + ", line " + lineNumber + ")", moduleName, lineNumber);+      state3 = 1;+      val = init3();+      state3 = 2;+      return val;+    };+  };+  var unsafeEqThunk = function(v, v1) {+    return refEq2(v.value0, v1.value0) && (refEq2(v.value1, v1.value1) && v.value1(v.value3, v1.value3));+  };+  var runThunk = function(v) {+    return v.value2(v.value3);+  };+  var buildThunk = function(toVDom) {+    var haltThunk = function(state3) {+      return halt(state3.vdom);+    };+    var $lazy_patchThunk = $runtime_lazy7("patchThunk", "Halogen.VDom.Thunk", function() {+      return function(state3, t2) {+        var $48 = unsafeEqThunk(state3.thunk, t2);+        if ($48) {+          return mkStep(new Step(extract2(state3.vdom), state3, $lazy_patchThunk(112), haltThunk));+        }+        ;+        var vdom = step2(state3.vdom, toVDom(runThunk(t2)));+        return mkStep(new Step(extract2(vdom), {+          vdom,+          thunk: t2+        }, $lazy_patchThunk(115), haltThunk));+      };+    });+    var patchThunk = $lazy_patchThunk(108);+    var renderThunk = function(spec) {+      return function(t) {+        var vdom = buildVDom(spec)(toVDom(runThunk(t)));+        return mkStep(new Step(extract2(vdom), {+          thunk: t,+          vdom+        }, patchThunk, haltThunk));+      };+    };+    return renderThunk;+  };++  // output/Halogen.Component/index.js+  var voidLeft2 = /* @__PURE__ */ voidLeft(functorHalogenM);+  var traverse_3 = /* @__PURE__ */ traverse_(applicativeHalogenM)(foldableMaybe);+  var map17 = /* @__PURE__ */ map(functorHalogenM);+  var pure6 = /* @__PURE__ */ pure(applicativeHalogenM);+  var ComponentSlot = /* @__PURE__ */ (function() {+    function ComponentSlot2(value0) {+      this.value0 = value0;+    }+    ;+    ComponentSlot2.create = function(value0) {+      return new ComponentSlot2(value0);+    };+    return ComponentSlot2;+  })();+  var ThunkSlot = /* @__PURE__ */ (function() {+    function ThunkSlot2(value0) {+      this.value0 = value0;+    }+    ;+    ThunkSlot2.create = function(value0) {+      return new ThunkSlot2(value0);+    };+    return ThunkSlot2;+  })();+  var unComponentSlot = unsafeCoerce2;+  var unComponent = unsafeCoerce2;+  var mkEval = function(args) {+    return function(v) {+      if (v instanceof Initialize) {+        return voidLeft2(traverse_3(args.handleAction)(args.initialize))(v.value0);+      }+      ;+      if (v instanceof Finalize) {+        return voidLeft2(traverse_3(args.handleAction)(args.finalize))(v.value0);+      }+      ;+      if (v instanceof Receive) {+        return voidLeft2(traverse_3(args.handleAction)(args.receive(v.value0)))(v.value1);+      }+      ;+      if (v instanceof Action2) {+        return voidLeft2(args.handleAction(v.value0))(v.value1);+      }+      ;+      if (v instanceof Query) {+        return unCoyoneda(function(g) {+          var $45 = map17(maybe(v.value1(unit))(g));+          return function($46) {+            return $45(args.handleQuery($46));+          };+        })(v.value0);+      }+      ;+      throw new Error("Failed pattern match at Halogen.Component (line 182, column 15 - line 192, column 71): " + [v.constructor.name]);+    };+  };+  var mkComponent = unsafeCoerce2;+  var defaultEval = /* @__PURE__ */ (function() {+    return {+      handleAction: $$const(pure6(unit)),+      handleQuery: $$const(pure6(Nothing.value)),+      receive: $$const(Nothing.value),+      initialize: Nothing.value,+      finalize: Nothing.value+    };+  })();++  // output/Halogen.Aff.Driver.State/index.js+  var unRenderStateX = unsafeCoerce2;+  var unDriverStateX = unsafeCoerce2;+  var renderStateX_ = function(dictApplicative) {+    var traverse_7 = traverse_(dictApplicative)(foldableMaybe);+    return function(f) {+      return unDriverStateX(function(st) {+        return traverse_7(f)(st.rendering);+      });+    };+  };+  var mkRenderStateX = unsafeCoerce2;+  var renderStateX = function(dictFunctor) {+    return function(f) {+      return unDriverStateX(function(st) {+        return mkRenderStateX(f(st.rendering));+      });+    };+  };+  var mkDriverStateXRef = unsafeCoerce2;+  var mapDriverState = function(f) {+    return function(v) {+      return f(v);+    };+  };+  var initDriverState = function(component3) {+    return function(input3) {+      return function(handler3) {+        return function(lchs) {+          return function __do2() {+            var selfRef = $$new({})();+            var childrenIn = $$new(empty4)();+            var childrenOut = $$new(empty4)();+            var handlerRef = $$new(handler3)();+            var pendingQueries = $$new(new Just(Nil.value))();+            var pendingOuts = $$new(new Just(Nil.value))();+            var pendingHandlers = $$new(Nothing.value)();+            var fresh2 = $$new(1)();+            var subscriptions = $$new(new Just(empty3))();+            var forks = $$new(empty3)();+            var ds = {+              component: component3,+              state: component3.initialState(input3),+              refs: empty3,+              children: empty4,+              childrenIn,+              childrenOut,+              selfRef,+              handlerRef,+              pendingQueries,+              pendingOuts,+              pendingHandlers,+              rendering: Nothing.value,+              fresh: fresh2,+              subscriptions,+              forks,+              lifecycleHandlers: lchs+            };+            write(ds)(selfRef)();+            return mkDriverStateXRef(selfRef);+          };+        };+      };+    };+  };++  // output/Halogen.Aff.Driver.Eval/index.js+  var traverse_4 = /* @__PURE__ */ traverse_(applicativeEffect)(foldableMaybe);+  var bindFlipped6 = /* @__PURE__ */ bindFlipped(bindMaybe);+  var lookup4 = /* @__PURE__ */ lookup2(ordSubscriptionId);+  var bind12 = /* @__PURE__ */ bind(bindAff);+  var liftEffect4 = /* @__PURE__ */ liftEffect(monadEffectAff);+  var discard3 = /* @__PURE__ */ discard(discardUnit);+  var discard1 = /* @__PURE__ */ discard3(bindAff);+  var traverse_12 = /* @__PURE__ */ traverse_(applicativeAff);+  var traverse_22 = /* @__PURE__ */ traverse_12(foldableList);+  var fork3 = /* @__PURE__ */ fork(monadForkAff);+  var parSequence_2 = /* @__PURE__ */ parSequence_(parallelAff)(applicativeParAff)(foldableList);+  var pure7 = /* @__PURE__ */ pure(applicativeAff);+  var map19 = /* @__PURE__ */ map(functorCoyoneda);+  var parallel3 = /* @__PURE__ */ parallel(parallelAff);+  var map110 = /* @__PURE__ */ map(functorAff);+  var sequential2 = /* @__PURE__ */ sequential(parallelAff);+  var map22 = /* @__PURE__ */ map(functorMaybe);+  var insert3 = /* @__PURE__ */ insert(ordSubscriptionId);+  var retractFreeAp2 = /* @__PURE__ */ retractFreeAp(applicativeParAff);+  var $$delete3 = /* @__PURE__ */ $$delete2(ordForkId);+  var unlessM2 = /* @__PURE__ */ unlessM(monadEffect);+  var insert1 = /* @__PURE__ */ insert(ordForkId);+  var traverse_32 = /* @__PURE__ */ traverse_12(foldableMaybe);+  var lookup1 = /* @__PURE__ */ lookup2(ordForkId);+  var lookup22 = /* @__PURE__ */ lookup2(ordString);+  var foldFree2 = /* @__PURE__ */ foldFree(monadRecAff);+  var alter2 = /* @__PURE__ */ alter(ordString);+  var unsubscribe3 = function(sid) {+    return function(ref2) {+      return function __do2() {+        var v = read(ref2)();+        var subs = read(v.subscriptions)();+        return traverse_4(unsubscribe)(bindFlipped6(lookup4(sid))(subs))();+      };+    };+  };+  var queueOrRun = function(ref2) {+    return function(au) {+      return bind12(liftEffect4(read(ref2)))(function(v) {+        if (v instanceof Nothing) {+          return au;+        }+        ;+        if (v instanceof Just) {+          return liftEffect4(write(new Just(new Cons(au, v.value0)))(ref2));+        }+        ;+        throw new Error("Failed pattern match at Halogen.Aff.Driver.Eval (line 188, column 33 - line 190, column 57): " + [v.constructor.name]);+      });+    };+  };+  var handleLifecycle = function(lchs) {+    return function(f) {+      return discard1(liftEffect4(write({+        initializers: Nil.value,+        finalizers: Nil.value+      })(lchs)))(function() {+        return bind12(liftEffect4(f))(function(result) {+          return bind12(liftEffect4(read(lchs)))(function(v) {+            return discard1(traverse_22(fork3)(v.finalizers))(function() {+              return discard1(parSequence_2(v.initializers))(function() {+                return pure7(result);+              });+            });+          });+        });+      });+    };+  };+  var handleAff = /* @__PURE__ */ runAff_(/* @__PURE__ */ either(throwException)(/* @__PURE__ */ $$const(/* @__PURE__ */ pure(applicativeEffect)(unit))));+  var fresh = function(f) {+    return function(ref2) {+      return bind12(liftEffect4(read(ref2)))(function(v) {+        return liftEffect4(modify$prime(function(i2) {+          return {+            state: i2 + 1 | 0,+            value: f(i2)+          };+        })(v.fresh));+      });+    };+  };+  var evalQ = function(render) {+    return function(ref2) {+      return function(q2) {+        return bind12(liftEffect4(read(ref2)))(function(v) {+          return evalM(render)(ref2)(v["component"]["eval"](new Query(map19(Just.create)(liftCoyoneda(q2)), $$const(Nothing.value))));+        });+      };+    };+  };+  var evalM = function(render) {+    return function(initRef) {+      return function(v) {+        var evalChildQuery = function(ref2) {+          return function(cqb) {+            return bind12(liftEffect4(read(ref2)))(function(v1) {+              return unChildQueryBox(function(v2) {+                var evalChild = function(v3) {+                  return parallel3(bind12(liftEffect4(read(v3)))(function(dsx) {+                    return unDriverStateX(function(ds) {+                      return evalQ(render)(ds.selfRef)(v2.value1);+                    })(dsx);+                  }));+                };+                return map110(v2.value2)(sequential2(v2.value0(applicativeParAff)(evalChild)(v1.children)));+              })(cqb);+            });+          };+        };+        var go2 = function(ref2) {+          return function(v1) {+            if (v1 instanceof State) {+              return bind12(liftEffect4(read(ref2)))(function(v2) {+                var v3 = v1.value0(v2.state);+                if (unsafeRefEq(v2.state)(v3.value1)) {+                  return pure7(v3.value0);+                }+                ;+                if (otherwise) {+                  return discard1(liftEffect4(write({+                    component: v2.component,+                    refs: v2.refs,+                    children: v2.children,+                    childrenIn: v2.childrenIn,+                    childrenOut: v2.childrenOut,+                    selfRef: v2.selfRef,+                    handlerRef: v2.handlerRef,+                    pendingQueries: v2.pendingQueries,+                    pendingOuts: v2.pendingOuts,+                    pendingHandlers: v2.pendingHandlers,+                    rendering: v2.rendering,+                    fresh: v2.fresh,+                    subscriptions: v2.subscriptions,+                    forks: v2.forks,+                    lifecycleHandlers: v2.lifecycleHandlers,+                    state: v3.value1+                  })(ref2)))(function() {+                    return discard1(handleLifecycle(v2.lifecycleHandlers)(render(v2.lifecycleHandlers)(ref2)))(function() {+                      return pure7(v3.value0);+                    });+                  });+                }+                ;+                throw new Error("Failed pattern match at Halogen.Aff.Driver.Eval (line 86, column 7 - line 92, column 21): " + [v3.constructor.name]);+              });+            }+            ;+            if (v1 instanceof Subscribe) {+              return bind12(fresh(SubscriptionId)(ref2))(function(sid) {+                return bind12(liftEffect4(subscribe(v1.value0(sid))(function(act) {+                  return handleAff(evalF(render)(ref2)(new Action(act)));+                })))(function(finalize) {+                  return bind12(liftEffect4(read(ref2)))(function(v2) {+                    return discard1(liftEffect4(modify_(map22(insert3(sid)(finalize)))(v2.subscriptions)))(function() {+                      return pure7(v1.value1(sid));+                    });+                  });+                });+              });+            }+            ;+            if (v1 instanceof Unsubscribe) {+              return discard1(liftEffect4(unsubscribe3(v1.value0)(ref2)))(function() {+                return pure7(v1.value1);+              });+            }+            ;+            if (v1 instanceof Lift2) {+              return v1.value0;+            }+            ;+            if (v1 instanceof ChildQuery2) {+              return evalChildQuery(ref2)(v1.value0);+            }+            ;+            if (v1 instanceof Raise) {+              return bind12(liftEffect4(read(ref2)))(function(v2) {+                return bind12(liftEffect4(read(v2.handlerRef)))(function(handler3) {+                  return discard1(queueOrRun(v2.pendingOuts)(handler3(v1.value0)))(function() {+                    return pure7(v1.value1);+                  });+                });+              });+            }+            ;+            if (v1 instanceof Par) {+              return sequential2(retractFreeAp2(hoistFreeAp((function() {+                var $119 = evalM(render)(ref2);+                return function($120) {+                  return parallel3($119($120));+                };+              })())(v1.value0)));+            }+            ;+            if (v1 instanceof Fork) {+              return bind12(fresh(ForkId)(ref2))(function(fid) {+                return bind12(liftEffect4(read(ref2)))(function(v2) {+                  return bind12(liftEffect4($$new(false)))(function(doneRef) {+                    return bind12(fork3($$finally(liftEffect4(function __do2() {+                      modify_($$delete3(fid))(v2.forks)();+                      return write(true)(doneRef)();+                    }))(evalM(render)(ref2)(v1.value0))))(function(fiber) {+                      return discard1(liftEffect4(unlessM2(read(doneRef))(modify_(insert1(fid)(fiber))(v2.forks))))(function() {+                        return pure7(v1.value1(fid));+                      });+                    });+                  });+                });+              });+            }+            ;+            if (v1 instanceof Join) {+              return bind12(liftEffect4(read(ref2)))(function(v2) {+                return bind12(liftEffect4(read(v2.forks)))(function(forkMap) {+                  return discard1(traverse_32(joinFiber)(lookup1(v1.value0)(forkMap)))(function() {+                    return pure7(v1.value1);+                  });+                });+              });+            }+            ;+            if (v1 instanceof Kill) {+              return bind12(liftEffect4(read(ref2)))(function(v2) {+                return bind12(liftEffect4(read(v2.forks)))(function(forkMap) {+                  return discard1(traverse_32(killFiber(error("Cancelled")))(lookup1(v1.value0)(forkMap)))(function() {+                    return pure7(v1.value1);+                  });+                });+              });+            }+            ;+            if (v1 instanceof GetRef) {+              return bind12(liftEffect4(read(ref2)))(function(v2) {+                return pure7(v1.value1(lookup22(v1.value0)(v2.refs)));+              });+            }+            ;+            throw new Error("Failed pattern match at Halogen.Aff.Driver.Eval (line 83, column 12 - line 139, column 33): " + [v1.constructor.name]);+          };+        };+        return foldFree2(go2(initRef))(v);+      };+    };+  };+  var evalF = function(render) {+    return function(ref2) {+      return function(v) {+        if (v instanceof RefUpdate) {+          return liftEffect4(flip(modify_)(ref2)(mapDriverState(function(st) {+            return {+              component: st.component,+              state: st.state,+              children: st.children,+              childrenIn: st.childrenIn,+              childrenOut: st.childrenOut,+              selfRef: st.selfRef,+              handlerRef: st.handlerRef,+              pendingQueries: st.pendingQueries,+              pendingOuts: st.pendingOuts,+              pendingHandlers: st.pendingHandlers,+              rendering: st.rendering,+              fresh: st.fresh,+              subscriptions: st.subscriptions,+              forks: st.forks,+              lifecycleHandlers: st.lifecycleHandlers,+              refs: alter2($$const(v.value1))(v.value0)(st.refs)+            };+          })));+        }+        ;+        if (v instanceof Action) {+          return bind12(liftEffect4(read(ref2)))(function(v1) {+            return evalM(render)(ref2)(v1["component"]["eval"](new Action2(v.value0, unit)));+          });+        }+        ;+        throw new Error("Failed pattern match at Halogen.Aff.Driver.Eval (line 52, column 20 - line 58, column 62): " + [v.constructor.name]);+      };+    };+  };++  // output/Halogen.Aff.Driver/index.js+  var bind4 = /* @__PURE__ */ bind(bindEffect);+  var discard4 = /* @__PURE__ */ discard(discardUnit);+  var for_2 = /* @__PURE__ */ for_(applicativeEffect)(foldableMaybe);+  var traverse_5 = /* @__PURE__ */ traverse_(applicativeAff)(foldableList);+  var fork4 = /* @__PURE__ */ fork(monadForkAff);+  var bindFlipped7 = /* @__PURE__ */ bindFlipped(bindEffect);+  var traverse_13 = /* @__PURE__ */ traverse_(applicativeEffect);+  var traverse_23 = /* @__PURE__ */ traverse_13(foldableMaybe);+  var traverse_33 = /* @__PURE__ */ traverse_13(foldableMap);+  var discard22 = /* @__PURE__ */ discard4(bindAff);+  var parSequence_3 = /* @__PURE__ */ parSequence_(parallelAff)(applicativeParAff)(foldableList);+  var liftEffect5 = /* @__PURE__ */ liftEffect(monadEffectAff);+  var pure8 = /* @__PURE__ */ pure(applicativeEffect);+  var map20 = /* @__PURE__ */ map(functorEffect);+  var pure13 = /* @__PURE__ */ pure(applicativeAff);+  var when2 = /* @__PURE__ */ when(applicativeEffect);+  var renderStateX2 = /* @__PURE__ */ renderStateX(functorEffect);+  var $$void5 = /* @__PURE__ */ $$void(functorAff);+  var foreachSlot2 = /* @__PURE__ */ foreachSlot(applicativeEffect);+  var renderStateX_2 = /* @__PURE__ */ renderStateX_(applicativeEffect);+  var tailRecM3 = /* @__PURE__ */ tailRecM(monadRecEffect);+  var voidLeft3 = /* @__PURE__ */ voidLeft(functorEffect);+  var bind13 = /* @__PURE__ */ bind(bindAff);+  var liftEffect1 = /* @__PURE__ */ liftEffect(monadEffectEffect);+  var newLifecycleHandlers = /* @__PURE__ */ (function() {+    return $$new({+      initializers: Nil.value,+      finalizers: Nil.value+    });+  })();+  var handlePending = function(ref2) {+    return function __do2() {+      var queue = read(ref2)();+      write(Nothing.value)(ref2)();+      return for_2(queue)((function() {+        var $59 = traverse_5(fork4);+        return function($60) {+          return handleAff($59(reverse2($60)));+        };+      })())();+    };+  };+  var cleanupSubscriptionsAndForks = function(v) {+    return function __do2() {+      bindFlipped7(traverse_23(traverse_33(unsubscribe)))(read(v.subscriptions))();+      write(Nothing.value)(v.subscriptions)();+      bindFlipped7(traverse_33((function() {+        var $61 = killFiber(error("finalized"));+        return function($62) {+          return handleAff($61($62));+        };+      })()))(read(v.forks))();+      return write(empty3)(v.forks)();+    };+  };+  var runUI = function(renderSpec2) {+    return function(component3) {+      return function(i2) {+        var squashChildInitializers = function(lchs) {+          return function(preInits) {+            return unDriverStateX(function(st) {+              var parentInitializer = evalM(render)(st.selfRef)(st["component"]["eval"](new Initialize(unit)));+              return modify_(function(handlers) {+                return {+                  initializers: new Cons(discard22(parSequence_3(reverse2(handlers.initializers)))(function() {+                    return discard22(parentInitializer)(function() {+                      return liftEffect5(function __do2() {+                        handlePending(st.pendingQueries)();+                        return handlePending(st.pendingOuts)();+                      });+                    });+                  }), preInits),+                  finalizers: handlers.finalizers+                };+              })(lchs);+            });+          };+        };+        var runComponent = function(lchs) {+          return function(handler3) {+            return function(j) {+              return unComponent(function(c) {+                return function __do2() {+                  var lchs$prime = newLifecycleHandlers();+                  var $$var2 = initDriverState(c)(j)(handler3)(lchs$prime)();+                  var pre2 = read(lchs)();+                  write({+                    initializers: Nil.value,+                    finalizers: pre2.finalizers+                  })(lchs)();+                  bindFlipped7(unDriverStateX((function() {+                    var $63 = render(lchs);+                    return function($64) {+                      return $63((function(v) {+                        return v.selfRef;+                      })($64));+                    };+                  })()))(read($$var2))();+                  bindFlipped7(squashChildInitializers(lchs)(pre2.initializers))(read($$var2))();+                  return $$var2;+                };+              });+            };+          };+        };+        var renderChild = function(lchs) {+          return function(handler3) {+            return function(childrenInRef) {+              return function(childrenOutRef) {+                return unComponentSlot(function(slot) {+                  return function __do2() {+                    var childrenIn = map20(slot.pop)(read(childrenInRef))();+                    var $$var2 = (function() {+                      if (childrenIn instanceof Just) {+                        write(childrenIn.value0.value1)(childrenInRef)();+                        var dsx = read(childrenIn.value0.value0)();+                        unDriverStateX(function(st) {+                          return function __do3() {+                            flip(write)(st.handlerRef)((function() {+                              var $65 = maybe(pure13(unit))(handler3);+                              return function($66) {+                                return $65(slot.output($66));+                              };+                            })())();+                            return handleAff(evalM(render)(st.selfRef)(st["component"]["eval"](new Receive(slot.input, unit))))();+                          };+                        })(dsx)();+                        return childrenIn.value0.value0;+                      }+                      ;+                      if (childrenIn instanceof Nothing) {+                        return runComponent(lchs)((function() {+                          var $67 = maybe(pure13(unit))(handler3);+                          return function($68) {+                            return $67(slot.output($68));+                          };+                        })())(slot.input)(slot.component)();+                      }+                      ;+                      throw new Error("Failed pattern match at Halogen.Aff.Driver (line 213, column 14 - line 222, column 98): " + [childrenIn.constructor.name]);+                    })();+                    var isDuplicate = map20(function($69) {+                      return isJust(slot.get($69));+                    })(read(childrenOutRef))();+                    when2(isDuplicate)(warn("Halogen: Duplicate slot address was detected during rendering, unexpected results may occur"))();+                    modify_(slot.set($$var2))(childrenOutRef)();+                    return bind4(read($$var2))(renderStateX2(function(v) {+                      if (v instanceof Nothing) {+                        return $$throw("Halogen internal error: child was not initialized in renderChild");+                      }+                      ;+                      if (v instanceof Just) {+                        return pure8(renderSpec2.renderChild(v.value0));+                      }+                      ;+                      throw new Error("Failed pattern match at Halogen.Aff.Driver (line 227, column 37 - line 229, column 50): " + [v.constructor.name]);+                    }))();+                  };+                });+              };+            };+          };+        };+        var render = function(lchs) {+          return function($$var2) {+            return function __do2() {+              var v = read($$var2)();+              var shouldProcessHandlers = map20(isNothing)(read(v.pendingHandlers))();+              when2(shouldProcessHandlers)(write(new Just(Nil.value))(v.pendingHandlers))();+              write(empty4)(v.childrenOut)();+              write(v.children)(v.childrenIn)();+              var handler3 = (function() {+                var $70 = queueOrRun(v.pendingHandlers);+                var $71 = evalF(render)(v.selfRef);+                return function($72) {+                  return $70($$void5($71($72)));+                };+              })();+              var childHandler = (function() {+                var $73 = queueOrRun(v.pendingQueries);+                return function($74) {+                  return $73(handler3(Action.create($74)));+                };+              })();+              var rendering = renderSpec2.render(function($75) {+                return handleAff(handler3($75));+              })(renderChild(lchs)(childHandler)(v.childrenIn)(v.childrenOut))(v.component.render(v.state))(v.rendering)();+              var children2 = read(v.childrenOut)();+              var childrenIn = read(v.childrenIn)();+              foreachSlot2(childrenIn)(function(v1) {+                return function __do3() {+                  var childDS = read(v1)();+                  renderStateX_2(renderSpec2.removeChild)(childDS)();+                  return finalize(lchs)(childDS)();+                };+              })();+              flip(modify_)(v.selfRef)(mapDriverState(function(ds$prime) {+                return {+                  component: ds$prime.component,+                  state: ds$prime.state,+                  refs: ds$prime.refs,+                  childrenIn: ds$prime.childrenIn,+                  childrenOut: ds$prime.childrenOut,+                  selfRef: ds$prime.selfRef,+                  handlerRef: ds$prime.handlerRef,+                  pendingQueries: ds$prime.pendingQueries,+                  pendingOuts: ds$prime.pendingOuts,+                  pendingHandlers: ds$prime.pendingHandlers,+                  fresh: ds$prime.fresh,+                  subscriptions: ds$prime.subscriptions,+                  forks: ds$prime.forks,+                  lifecycleHandlers: ds$prime.lifecycleHandlers,+                  rendering: new Just(rendering),+                  children: children2+                };+              }))();+              return when2(shouldProcessHandlers)(flip(tailRecM3)(unit)(function(v1) {+                return function __do3() {+                  var handlers = read(v.pendingHandlers)();+                  write(new Just(Nil.value))(v.pendingHandlers)();+                  traverse_23((function() {+                    var $76 = traverse_5(fork4);+                    return function($77) {+                      return handleAff($76(reverse2($77)));+                    };+                  })())(handlers)();+                  var mmore = read(v.pendingHandlers)();+                  var $52 = maybe(false)($$null2)(mmore);+                  if ($52) {+                    return voidLeft3(write(Nothing.value)(v.pendingHandlers))(new Done(unit))();+                  }+                  ;+                  return new Loop(unit);+                };+              }))();+            };+          };+        };+        var finalize = function(lchs) {+          return unDriverStateX(function(st) {+            return function __do2() {+              cleanupSubscriptionsAndForks(st)();+              var f = evalM(render)(st.selfRef)(st["component"]["eval"](new Finalize(unit)));+              modify_(function(handlers) {+                return {+                  initializers: handlers.initializers,+                  finalizers: new Cons(f, handlers.finalizers)+                };+              })(lchs)();+              return foreachSlot2(st.children)(function(v) {+                return function __do3() {+                  var dsx = read(v)();+                  return finalize(lchs)(dsx)();+                };+              })();+            };+          });+        };+        var evalDriver = function(disposed) {+          return function(ref2) {+            return function(q2) {+              return bind13(liftEffect5(read(disposed)))(function(v) {+                if (v) {+                  return pure13(Nothing.value);+                }+                ;+                return evalQ(render)(ref2)(q2);+              });+            };+          };+        };+        var dispose = function(disposed) {+          return function(lchs) {+            return function(dsx) {+              return handleLifecycle(lchs)(function __do2() {+                var v = read(disposed)();+                if (v) {+                  return unit;+                }+                ;+                write(true)(disposed)();+                finalize(lchs)(dsx)();+                return unDriverStateX(function(v1) {+                  return function __do3() {+                    var v2 = liftEffect1(read(v1.selfRef))();+                    return for_2(v2.rendering)(renderSpec2.dispose)();+                  };+                })(dsx)();+              });+            };+          };+        };+        return bind13(liftEffect5(newLifecycleHandlers))(function(lchs) {+          return bind13(liftEffect5($$new(false)))(function(disposed) {+            return handleLifecycle(lchs)(function __do2() {+              var sio = create3();+              var dsx = bindFlipped7(read)(runComponent(lchs)((function() {+                var $78 = notify(sio.listener);+                return function($79) {+                  return liftEffect5($78($79));+                };+              })())(i2)(component3))();+              return unDriverStateX(function(st) {+                return pure8({+                  query: evalDriver(disposed)(st.selfRef),+                  messages: sio.emitter,+                  dispose: dispose(disposed)(lchs)(dsx)+                });+              })(dsx)();+            });+          });+        });+      };+    };+  };++  // output/Web.DOM.Node/foreign.js+  var getEffProp2 = function(name16) {+    return function(node) {+      return function() {+        return node[name16];+      };+    };+  };+  var baseURI = getEffProp2("baseURI");+  var _ownerDocument = getEffProp2("ownerDocument");+  var _parentNode = getEffProp2("parentNode");+  var _parentElement = getEffProp2("parentElement");+  var childNodes = getEffProp2("childNodes");+  var _firstChild = getEffProp2("firstChild");+  var _lastChild = getEffProp2("lastChild");+  var _previousSibling = getEffProp2("previousSibling");+  var _nextSibling = getEffProp2("nextSibling");+  var _nodeValue = getEffProp2("nodeValue");+  var textContent = getEffProp2("textContent");+  function insertBefore(node1) {+    return function(node2) {+      return function(parent2) {+        return function() {+          parent2.insertBefore(node1, node2);+        };+      };+    };+  }+  function appendChild(node) {+    return function(parent2) {+      return function() {+        parent2.appendChild(node);+      };+    };+  }+  function removeChild2(node) {+    return function(parent2) {+      return function() {+        parent2.removeChild(node);+      };+    };+  }++  // output/Web.DOM.Node/index.js+  var map21 = /* @__PURE__ */ map(functorEffect);+  var parentNode2 = /* @__PURE__ */ (function() {+    var $6 = map21(toMaybe);+    return function($7) {+      return $6(_parentNode($7));+    };+  })();+  var nextSibling = /* @__PURE__ */ (function() {+    var $15 = map21(toMaybe);+    return function($16) {+      return $15(_nextSibling($16));+    };+  })();++  // output/Halogen.VDom.Driver/index.js+  var $runtime_lazy8 = function(name16, moduleName, init3) {+    var state3 = 0;+    var val;+    return function(lineNumber) {+      if (state3 === 2) return val;+      if (state3 === 1) throw new ReferenceError(name16 + " was needed before it finished initializing (module " + moduleName + ", line " + lineNumber + ")", moduleName, lineNumber);+      state3 = 1;+      val = init3();+      state3 = 2;+      return val;+    };+  };+  var $$void6 = /* @__PURE__ */ $$void(functorEffect);+  var pure9 = /* @__PURE__ */ pure(applicativeEffect);+  var traverse_6 = /* @__PURE__ */ traverse_(applicativeEffect)(foldableMaybe);+  var unwrap7 = /* @__PURE__ */ unwrap();+  var when3 = /* @__PURE__ */ when(applicativeEffect);+  var not2 = /* @__PURE__ */ not(/* @__PURE__ */ heytingAlgebraFunction(/* @__PURE__ */ heytingAlgebraFunction(heytingAlgebraBoolean)));+  var identity13 = /* @__PURE__ */ identity(categoryFn);+  var bind14 = /* @__PURE__ */ bind(bindAff);+  var liftEffect6 = /* @__PURE__ */ liftEffect(monadEffectAff);+  var map23 = /* @__PURE__ */ map(functorEffect);+  var bindFlipped8 = /* @__PURE__ */ bindFlipped(bindEffect);+  var substInParent = function(v) {+    return function(v1) {+      return function(v2) {+        if (v1 instanceof Just && v2 instanceof Just) {+          return $$void6(insertBefore(v)(v1.value0)(v2.value0));+        }+        ;+        if (v1 instanceof Nothing && v2 instanceof Just) {+          return $$void6(appendChild(v)(v2.value0));+        }+        ;+        return pure9(unit);+      };+    };+  };+  var removeChild3 = function(v) {+    return function __do2() {+      var npn = parentNode2(v.node)();+      return traverse_6(function(pn) {+        return removeChild2(v.node)(pn);+      })(npn)();+    };+  };+  var mkSpec = function(handler3) {+    return function(renderChildRef) {+      return function(document2) {+        var getNode = unRenderStateX(function(v) {+          return v.node;+        });+        var done = function(st) {+          if (st instanceof Just) {+            return halt(st.value0);+          }+          ;+          return unit;+        };+        var buildWidget2 = function(spec) {+          var buildThunk2 = buildThunk(unwrap7)(spec);+          var $lazy_patch = $runtime_lazy8("patch", "Halogen.VDom.Driver", function() {+            return function(st, slot) {+              if (st instanceof Just) {+                if (slot instanceof ComponentSlot) {+                  halt(st.value0);+                  return $lazy_renderComponentSlot(100)(slot.value0);+                }+                ;+                if (slot instanceof ThunkSlot) {+                  var step$prime = step2(st.value0, slot.value0);+                  return mkStep(new Step(extract2(step$prime), new Just(step$prime), $lazy_patch(103), done));+                }+                ;+                throw new Error("Failed pattern match at Halogen.VDom.Driver (line 97, column 22 - line 103, column 79): " + [slot.constructor.name]);+              }+              ;+              return $lazy_render(104)(slot);+            };+          });+          var $lazy_render = $runtime_lazy8("render", "Halogen.VDom.Driver", function() {+            return function(slot) {+              if (slot instanceof ComponentSlot) {+                return $lazy_renderComponentSlot(86)(slot.value0);+              }+              ;+              if (slot instanceof ThunkSlot) {+                var step3 = buildThunk2(slot.value0);+                return mkStep(new Step(extract2(step3), new Just(step3), $lazy_patch(89), done));+              }+              ;+              throw new Error("Failed pattern match at Halogen.VDom.Driver (line 84, column 7 - line 89, column 75): " + [slot.constructor.name]);+            };+          });+          var $lazy_renderComponentSlot = $runtime_lazy8("renderComponentSlot", "Halogen.VDom.Driver", function() {+            return function(cs) {+              var renderChild = read(renderChildRef)();+              var rsx = renderChild(cs)();+              var node = getNode(rsx);+              return mkStep(new Step(node, Nothing.value, $lazy_patch(117), done));+            };+          });+          var patch2 = $lazy_patch(91);+          var render = $lazy_render(82);+          var renderComponentSlot = $lazy_renderComponentSlot(109);+          return render;+        };+        var buildAttributes = buildProp(handler3);+        return {+          buildWidget: buildWidget2,+          buildAttributes,+          document: document2+        };+      };+    };+  };+  var renderSpec = function(document2) {+    return function(container) {+      var render = function(handler3) {+        return function(child) {+          return function(v) {+            return function(v1) {+              if (v1 instanceof Nothing) {+                return function __do2() {+                  var renderChildRef = $$new(child)();+                  var spec = mkSpec(handler3)(renderChildRef)(document2);+                  var machine = buildVDom(spec)(v);+                  var node = extract2(machine);+                  $$void6(appendChild(node)(toNode(container)))();+                  return {+                    machine,+                    node,+                    renderChildRef+                  };+                };+              }+              ;+              if (v1 instanceof Just) {+                return function __do2() {+                  write(child)(v1.value0.renderChildRef)();+                  var parent2 = parentNode2(v1.value0.node)();+                  var nextSib = nextSibling(v1.value0.node)();+                  var machine$prime = step2(v1.value0.machine, v);+                  var newNode = extract2(machine$prime);+                  when3(not2(unsafeRefEq)(v1.value0.node)(newNode))(substInParent(newNode)(nextSib)(parent2))();+                  return {+                    machine: machine$prime,+                    node: newNode,+                    renderChildRef: v1.value0.renderChildRef+                  };+                };+              }+              ;+              throw new Error("Failed pattern match at Halogen.VDom.Driver (line 157, column 5 - line 173, column 80): " + [v1.constructor.name]);+            };+          };+        };+      };+      return {+        render,+        renderChild: identity13,+        removeChild: removeChild3,+        dispose: removeChild3+      };+    };+  };+  var runUI2 = function(component3) {+    return function(i2) {+      return function(element3) {+        return bind14(liftEffect6(map23(toDocument)(bindFlipped8(document)(windowImpl))))(function(document2) {+          return runUI(renderSpec(document2)(element3))(component3)(i2);+        });+      };+    };+  };++  // output/Affjax.Web/foreign.js+  var driver = {+    newXHR: function() {+      return new XMLHttpRequest();+    },+    fixupUrl: function(url2) {+      return url2 || "/";+    }+  };++  // output/Affjax.Web/index.js+  var get3 = /* @__PURE__ */ get2(driver);++  // output/Data.Argonaut.Aeson.Helpers/index.js+  var Mode = /* @__PURE__ */ (function() {+    function Mode2(value0) {+      this.value0 = value0;+    }+    ;+    Mode2.create = function(value0) {+      return new Mode2(value0);+    };+    return Mode2;+  })();+  var isSingleConstructor_Sum = {+    isSingleConstructor: function(v) {+      return false;+    }+  };+  var isSingleConstructor_Constructor = {+    isSingleConstructor: function(v) {+      return true;+    }+  };+  var isSingleConstructor = function(dict) {+    return dict.isSingleConstructor;+  };+  var areAllConstructorsNullary_NoArguments = {+    areAllConstructorsNullary: function(v) {+      return true;+    }+  };+  var areAllConstructorsNullary_Argument = {+    areAllConstructorsNullary: function(v) {+      return false;+    }+  };+  var areAllConstructorsNullary = function(dict) {+    return dict.areAllConstructorsNullary;+  };+  var areAllConstructorsNullary_Constructor = function(dictAreAllConstructorsNullary) {+    var areAllConstructorsNullary1 = areAllConstructorsNullary(dictAreAllConstructorsNullary);+    return {+      areAllConstructorsNullary: function(v) {+        return areAllConstructorsNullary1($$Proxy.value);+      }+    };+  };+  var areAllConstructorsNullary_Sum = function(dictAreAllConstructorsNullary) {+    var areAllConstructorsNullary1 = areAllConstructorsNullary(dictAreAllConstructorsNullary);+    return function(dictAreAllConstructorsNullary1) {+      var areAllConstructorsNullary2 = areAllConstructorsNullary(dictAreAllConstructorsNullary1);+      return {+        areAllConstructorsNullary: function(v) {+          return areAllConstructorsNullary1($$Proxy.value) && areAllConstructorsNullary2($$Proxy.value);+        }+      };+    };+  };++  // output/Data.String.CodePoints/foreign.js+  var hasStringIterator = typeof Symbol !== "undefined" && Symbol != null && typeof Symbol.iterator !== "undefined" && typeof String.prototype[Symbol.iterator] === "function";+  var hasFromCodePoint = typeof String.prototype.fromCodePoint === "function";+  var hasCodePointAt = typeof String.prototype.codePointAt === "function";++  // output/Data.Argonaut.Decode.Decoders/index.js+  var pure10 = /* @__PURE__ */ pure(applicativeEither);+  var map24 = /* @__PURE__ */ map(functorEither);+  var lmap2 = /* @__PURE__ */ lmap(bifunctorEither);+  var composeKleisliFlipped5 = /* @__PURE__ */ composeKleisliFlipped(bindEither);+  var bind5 = /* @__PURE__ */ bind(bindEither);+  var traverseWithIndex2 = /* @__PURE__ */ traverseWithIndex(traversableWithIndexArray)(applicativeEither);+  var apply3 = /* @__PURE__ */ apply(applyEither);+  var decodeString = /* @__PURE__ */ (function() {+    return caseJsonString(new Left(new TypeMismatch2("String")))(Right.create);+  })();+  var decodeMaybe = function(decoder) {+    return function(json2) {+      if (isNull(json2)) {+        return pure10(Nothing.value);+      }+      ;+      if (otherwise) {+        return map24(Just.create)(decoder(json2));+      }+      ;+      throw new Error("Failed pattern match at Data.Argonaut.Decode.Decoders (line 37, column 1 - line 41, column 38): " + [decoder.constructor.name, json2.constructor.name]);+    };+  };+  var decodeJArray = /* @__PURE__ */ (function() {+    var $52 = note(new TypeMismatch2("Array"));+    return function($53) {+      return $52(toArray($53));+    };+  })();+  var decodeArray = function(decoder) {+    return composeKleisliFlipped5((function() {+      var $89 = lmap2(Named.create("Array"));+      var $90 = traverseWithIndex2(function(i2) {+        var $92 = lmap2(AtIndex.create(i2));+        return function($93) {+          return $92(decoder($93));+        };+      });+      return function($91) {+        return $89($90($91));+      };+    })())(decodeJArray);+  };+  var decodeTuple = function(decoderA) {+    return function(decoderB) {+      return function(json2) {+        var f = function(v) {+          if (v.length === 2) {+            return apply3(map24(Tuple.create)(decoderA(v[0])))(decoderB(v[1]));+          }+          ;+          return new Left(new TypeMismatch2("Tuple"));+        };+        return bind5(decodeArray(Right.create)(json2))(f);+      };+    };+  };++  // output/Record/index.js+  var insert5 = function(dictIsSymbol) {+    var reflectSymbol2 = reflectSymbol(dictIsSymbol);+    return function() {+      return function() {+        return function(l) {+          return function(a2) {+            return function(r) {+              return unsafeSet(reflectSymbol2(l))(a2)(r);+            };+          };+        };+      };+    };+  };++  // output/Data.Argonaut.Decode.Class/index.js+  var bind6 = /* @__PURE__ */ bind(bindEither);+  var lmap3 = /* @__PURE__ */ lmap(bifunctorEither);+  var map25 = /* @__PURE__ */ map(functorMaybe);+  var gDecodeJsonNil = {+    gDecodeJson: function(v) {+      return function(v1) {+        return new Right({});+      };+    }+  };+  var gDecodeJson = function(dict) {+    return dict.gDecodeJson;+  };+  var decodeRecord = function(dictGDecodeJson) {+    var gDecodeJson1 = gDecodeJson(dictGDecodeJson);+    return function() {+      return {+        decodeJson: function(json2) {+          var v = toObject(json2);+          if (v instanceof Just) {+            return gDecodeJson1(v.value0)($$Proxy.value);+          }+          ;+          if (v instanceof Nothing) {+            return new Left(new TypeMismatch2("Object"));+          }+          ;+          throw new Error("Failed pattern match at Data.Argonaut.Decode.Class (line 103, column 5 - line 105, column 46): " + [v.constructor.name]);+        }+      };+    };+  };+  var decodeJsonString = {+    decodeJson: decodeString+  };+  var decodeJsonField = function(dict) {+    return dict.decodeJsonField;+  };+  var gDecodeJsonCons = function(dictDecodeJsonField) {+    var decodeJsonField1 = decodeJsonField(dictDecodeJsonField);+    return function(dictGDecodeJson) {+      var gDecodeJson1 = gDecodeJson(dictGDecodeJson);+      return function(dictIsSymbol) {+        var reflectSymbol2 = reflectSymbol(dictIsSymbol);+        var insert7 = insert5(dictIsSymbol)()();+        return function() {+          return function() {+            return {+              gDecodeJson: function(object2) {+                return function(v) {+                  var fieldName = reflectSymbol2($$Proxy.value);+                  var fieldValue = lookup(fieldName)(object2);+                  var v1 = decodeJsonField1(fieldValue);+                  if (v1 instanceof Just) {+                    return bind6(lmap3(AtKey.create(fieldName))(v1.value0))(function(val) {+                      return bind6(gDecodeJson1(object2)($$Proxy.value))(function(rest) {+                        return new Right(insert7($$Proxy.value)(val)(rest));+                      });+                    });+                  }+                  ;+                  if (v1 instanceof Nothing) {+                    return new Left(new AtKey(fieldName, MissingValue.value));+                  }+                  ;+                  throw new Error("Failed pattern match at Data.Argonaut.Decode.Class (line 127, column 5 - line 134, column 44): " + [v1.constructor.name]);+                };+              }+            };+          };+        };+      };+    };+  };+  var decodeJson = function(dict) {+    return dict.decodeJson;+  };+  var decodeJsonMaybe = function(dictDecodeJson) {+    return {+      decodeJson: decodeMaybe(decodeJson(dictDecodeJson))+    };+  };+  var decodeJsonTuple = function(dictDecodeJson) {+    var decodeJson1 = decodeJson(dictDecodeJson);+    return function(dictDecodeJson1) {+      return {+        decodeJson: decodeTuple(decodeJson1)(decodeJson(dictDecodeJson1))+      };+    };+  };+  var decodeFieldMaybe = function(dictDecodeJson) {+    var decodeJson1 = decodeJson(decodeJsonMaybe(dictDecodeJson));+    return {+      decodeJsonField: function(v) {+        if (v instanceof Nothing) {+          return new Just(new Right(Nothing.value));+        }+        ;+        if (v instanceof Just) {+          return new Just(decodeJson1(v.value0));+        }+        ;+        throw new Error("Failed pattern match at Data.Argonaut.Decode.Class (line 139, column 1 - line 143, column 49): " + [v.constructor.name]);+      }+    };+  };+  var decodeFieldId = function(dictDecodeJson) {+    var decodeJson1 = decodeJson(dictDecodeJson);+    return {+      decodeJsonField: function(j) {+        return map25(decodeJson1)(j);+      }+    };+  };+  var decodeArray2 = function(dictDecodeJson) {+    return {+      decodeJson: decodeArray(decodeJson(dictDecodeJson))+    };+  };++  // output/Data.Argonaut.Decode.Generic/index.js+  var bind7 = /* @__PURE__ */ bind(bindEither);+  var map26 = /* @__PURE__ */ map(functorEither);+  var decodeRepArgsNoArguments = {+    decodeRepArgs: function(js) {+      return new Right({+        init: NoArguments.value,+        rest: js+      });+    }+  };+  var decodeRepArgsArgument = function(dictDecodeJson) {+    var decodeJson2 = decodeJson(dictDecodeJson);+    return {+      decodeRepArgs: function(js) {+        return bind7(note(new TypeMismatch2("NonEmptyArray"))(uncons(js)))(function(v) {+          return map26(function($104) {+            return (function(v1) {+              return {+                init: v1,+                rest: v.tail+              };+            })(Argument($104));+          })(decodeJson2(v.head));+        });+      }+    };+  };+  var decodeRepArgs = function(dict) {+    return dict.decodeRepArgs;+  };++  // output/Data.Argonaut.Aeson.Decode.Generic/index.js+  var alt6 = /* @__PURE__ */ alt(altEither);+  var map27 = /* @__PURE__ */ map(functorEither);+  var composeKleisli3 = /* @__PURE__ */ composeKleisli(bindEither);+  var show4 = /* @__PURE__ */ show(showString);+  var lmap4 = /* @__PURE__ */ lmap(bifunctorEither);+  var bind8 = /* @__PURE__ */ bind(bindEither);+  var pure11 = /* @__PURE__ */ pure(applicativeEither);+  var discard5 = /* @__PURE__ */ discard(discardUnit)(bindEither);+  var toJsonArray = /* @__PURE__ */ caseJson(/* @__PURE__ */ $$const(/* @__PURE__ */ singleton2(jsonNull)))(function($134) {+    return singleton2(id($134));+  })(function($135) {+    return singleton2(id($135));+  })(function($136) {+    return singleton2(id($136));+  })(function($137) {+    return singleton2(id($137));+  })(function($138) {+    return singleton2(id($138));+  });+  var decodingErr = function(name16) {+    return function(msg) {+      return new Named("When decoding a " + name16, msg);+    };+  };+  var decodeAeson$prime = function(dict) {+    return dict["decodeAeson'"];+  };+  var decodeAesonConstructor = function(dictDecodeRepArgs) {+    return function(dictIsSymbol) {+      return function(dictAreAllConstructorsNullary) {+        var areAllConstructorsNullary2 = areAllConstructorsNullary(dictAreAllConstructorsNullary);+        return function(dictIsSingleConstructor) {+          var isSingleConstructor2 = isSingleConstructor(dictIsSingleConstructor);+          return function(dictDecodeAeson$prime) {+            var decodeAeson$prime1 = decodeAeson$prime(dictDecodeAeson$prime);+            return {+              decodeAeson: function(o) {+                return function(thing) {+                  var mode = new Mode({+                    "_Mode_ConstructorIsSingle": isSingleConstructor2($$Proxy.value),+                    "_Mode_ConstructorsAreAllNullary": areAllConstructorsNullary2($$Proxy.value)+                  });+                  return decodeAeson$prime1(mode)(o)(thing);+                };+              }+            };+          };+        };+      };+    };+  };+  var decodeAesonSum = function(dictDecodeAeson$prime) {+    var decodeAeson$prime1 = decodeAeson$prime(dictDecodeAeson$prime);+    return function(dictAreAllConstructorsNullary) {+      var areAllConstructorsNullary2 = areAllConstructorsNullary(dictAreAllConstructorsNullary);+      return function(dictIsSingleConstructor) {+        var isSingleConstructor2 = isSingleConstructor(dictIsSingleConstructor);+        return {+          decodeAeson: function(o) {+            return function(thing) {+              var mode = new Mode({+                "_Mode_ConstructorIsSingle": isSingleConstructor2($$Proxy.value),+                "_Mode_ConstructorsAreAllNullary": areAllConstructorsNullary2($$Proxy.value)+              });+              return decodeAeson$prime1(mode)(o)(thing);+            };+          }+        };+      };+    };+  };+  var decodeAesonSum$prime = function(dictDecodeAeson$prime) {+    var decodeAeson$prime1 = decodeAeson$prime(dictDecodeAeson$prime);+    return function(dictDecodeAeson$prime1) {+      var decodeAeson$prime2 = decodeAeson$prime(dictDecodeAeson$prime1);+      return {+        "decodeAeson'": function(mode) {+          return function(o) {+            return function(j) {+              return alt6(map27(Inl.create)(decodeAeson$prime1(mode)(o)(j)))(map27(Inr.create)(decodeAeson$prime2(mode)(o)(j)));+            };+          };+        }+      };+    };+  };+  var decodeAeson = function(dict) {+    return dict.decodeAeson;+  };+  var genericDecodeAeson = function(dictGeneric) {+    var to3 = to(dictGeneric);+    return function(dictDecodeAeson) {+      var decodeAeson1 = decodeAeson(dictDecodeAeson);+      return function(o) {+        var $139 = map27(to3);+        var $140 = decodeAeson1(o);+        return function($141) {+          return $139($140($141));+        };+      };+    };+  };+  var checkTag = function(tagFieldName) {+    return function(expectedTag) {+      return composeKleisli3((function() {+        var $142 = note(new Named(show4(tagFieldName) + " property is missing", MissingValue.value));+        var $143 = lookup(tagFieldName);+        return function($144) {+          return $142($143($144));+        };+      })())(composeKleisli3((function() {+        var $145 = note(new TypeMismatch2(show4(tagFieldName) + " property is not a string"));+        return function($146) {+          return $145(toString($146));+        };+      })())(function(actualTag) {+        var $75 = actualTag !== expectedTag;+        if ($75) {+          return new Left(new Named("'tag' property has an incorrect value", new TypeMismatch2(actualTag)));+        }+        ;+        return new Right(unit);+      }));+    };+  };+  var decodeGeneralCase = function(dictIsSymbol) {+    var reflectSymbol2 = reflectSymbol(dictIsSymbol);+    return function(dictDecodeRepArgs) {+      var decodeRepArgs2 = decodeRepArgs(dictDecodeRepArgs);+      return function(mode) {+        return function(options2) {+          return function(json2) {+            var name16 = reflectSymbol2($$Proxy.value);+            var $93 = {+              mode,+              options: options2+            };+            return bind8(note(new TypeMismatch2("expected an object"))(toObject(json2)))(function(objectJson) {+              return discard5(checkTag($93.options.sumEncoding.value0.tagFieldName)(name16)(objectJson))(function() {+                return bind8((function() {+                  var v = lookup($93.options.sumEncoding.value0.contentsFieldName)(objectJson);+                  if (v instanceof Just) {+                    return decodeRepArgs2(toJsonArray(v.value0));+                  }+                  ;+                  if (v instanceof Nothing) {+                    return decodeRepArgs2(singleton2(id($$delete($93.options.sumEncoding.value0.tagFieldName)(objectJson))));+                  }+                  ;+                  throw new Error("Failed pattern match at Data.Argonaut.Aeson.Decode.Generic (line 166, column 27 - line 170, column 115): " + [v.constructor.name]);+                })())(function(v) {+                  return pure11(v.init);+                });+              });+            });+          };+        };+      };+    };+  };+  var decodeAesonConstructor$prime = function(dictIsSymbol) {+    var reflectSymbol2 = reflectSymbol(dictIsSymbol);+    var decodeGeneralCase1 = decodeGeneralCase(dictIsSymbol);+    return function(dictDecodeRepArgs) {+      var decodeRepArgs2 = decodeRepArgs(dictDecodeRepArgs);+      var decodeGeneralCase2 = decodeGeneralCase1(dictDecodeRepArgs);+      return {+        "decodeAeson'": function(mode) {+          return function(options2) {+            return function(json2) {+              var name16 = reflectSymbol2($$Proxy.value);+              return lmap4(decodingErr(name16))((function() {+                var $102 = {+                  mode,+                  options: options2+                };+                if ($102["mode"]["value0"]["_Mode_ConstructorsAreAllNullary"]) {+                  return unsafeCrashWith("Unreachable: cannot have all nullary constructors and an `Argument` constructor at once.");+                }+                ;+                if ($102["mode"]["value0"]["_Mode_ConstructorIsSingle"] && !$102.options.tagSingleConstructors) {+                  return bind8(decodeRepArgs2(caseJsonArray(singleton2(json2))(function($147) {+                    return singleton2(id($147));+                  })(json2)))(function(v) {+                    return pure11(v.init);+                  });+                }+                ;+                return decodeGeneralCase2(mode)(options2)(json2);+              })());+            };+          };+        }+      };+    };+  };+  var decodeAesonConstructorNoArguments$prime = function(dictIsSymbol) {+    var reflectSymbol2 = reflectSymbol(dictIsSymbol);+    var decodeGeneralCase1 = decodeGeneralCase(dictIsSymbol)(decodeRepArgsNoArguments);+    return {+      "decodeAeson'": function(mode) {+        return function(options2) {+          return function(json2) {+            var name16 = reflectSymbol2($$Proxy.value);+            return lmap4(decodingErr(name16))((function() {+              var $114 = {+                mode,+                options: options2+              };+              if ($114["mode"]["value0"]["_Mode_ConstructorIsSingle"] && !$114.options.tagSingleConstructors) {+                var v = caseJsonArray(Nothing.value)(Just.create)(json2);+                if (v instanceof Just && v.value0.length === 0) {+                  return new Right(NoArguments.value);+                }+                ;+                return new Left(new TypeMismatch2("Expected an empty array!"));+              }+              ;+              if ($114["mode"]["value0"]["_Mode_ConstructorsAreAllNullary"] && $114.options.allNullaryToStringTag) {+                var v = caseJsonString(Nothing.value)(Just.create)(json2);+                if (v instanceof Nothing) {+                  return new Left(new TypeMismatch2("Expected a string!"));+                }+                ;+                if (v instanceof Just) {+                  var $123 = v.value0 === name16;+                  if ($123) {+                    return new Right(NoArguments.value);+                  }+                  ;+                  return new Left(new TypeMismatch2("Mismatched constructor tag!"));+                }+                ;+                throw new Error("Failed pattern match at Data.Argonaut.Aeson.Decode.Generic (line 112, column 14 - line 116, column 67): " + [v.constructor.name]);+              }+              ;+              return decodeGeneralCase1(mode)(options2)(json2);+            })());+          };+        };+      }+    };+  };++  // output/Data.Argonaut.Aeson.Options/index.js+  var TaggedObject = /* @__PURE__ */ (function() {+    function TaggedObject2(value0) {+      this.value0 = value0;+    }+    ;+    TaggedObject2.create = function(value0) {+      return new TaggedObject2(value0);+    };+    return TaggedObject2;+  })();+  var defaultOptions = /* @__PURE__ */ (function() {+    return {+      sumEncoding: new TaggedObject({+        tagFieldName: "tag",+        contentsFieldName: "contents"+      }),+      tagSingleConstructors: false,+      allNullaryToStringTag: true+    };+  })();++  // output/KitchenSink.Layout.Blog.Summary/index.js+  var topicsIsSymbol = {+    reflectSymbol: function() {+      return "topics";+    }+  };+  var keywordsIsSymbol = {+    reflectSymbol: function() {+      return "keywords";+    }+  };+  var imageLinkIsSymbol = {+    reflectSymbol: function() {+      return "imageLink";+    }+  };+  var TopicSummaryIsSymbol = {+    reflectSymbol: function() {+      return "TopicSummary";+    }+  };+  var areAllConstructorsNullary_Constructor2 = /* @__PURE__ */ areAllConstructorsNullary_Constructor(areAllConstructorsNullary_Argument);+  var CssTargetIsSymbol = {+    reflectSymbol: function() {+      return "CssTarget";+    }+  };+  var WebfontTargetIsSymbol = {+    reflectSymbol: function() {+      return "WebfontTarget";+    }+  };+  var ImageTargetIsSymbol = {+    reflectSymbol: function() {+      return "ImageTarget";+    }+  };+  var GraphVizImageTargetIsSymbol = {+    reflectSymbol: function() {+      return "GraphVizImageTarget";+    }+  };+  var VideoTargetIsSymbol = {+    reflectSymbol: function() {+      return "VideoTarget";+    }+  };+  var AudioTargetIsSymbol = {+    reflectSymbol: function() {+      return "AudioTarget";+    }+  };+  var RawTargetIsSymbol = {+    reflectSymbol: function() {+      return "RawTarget";+    }+  };+  var DatasetTargetIsSymbol = {+    reflectSymbol: function() {+      return "DatasetTarget";+    }+  };+  var DocumentTargetIsSymbol = {+    reflectSymbol: function() {+      return "DocumentTarget";+    }+  };+  var JavaScriptSourceTargetIsSymbol = {+    reflectSymbol: function() {+      return "JavaScriptSourceTarget";+    }+  };+  var HtmlSourceTargetIsSymbol = {+    reflectSymbol: function() {+      return "HtmlSourceTarget";+    }+  };+  var JSONTargetIsSymbol = {+    reflectSymbol: function() {+      return "JSONTarget";+    }+  };+  var RootFileTargetIsSymbol = {+    reflectSymbol: function() {+      return "RootFileTarget";+    }+  };+  var ArticleTargetIsSymbol = {+    reflectSymbol: function() {+      return "ArticleTarget";+    }+  };+  var GeneratedTargetIsSymbol = {+    reflectSymbol: function() {+      return "GeneratedTarget";+    }+  };+  var TopicsIndexTargetIsSymbol = {+    reflectSymbol: function() {+      return "TopicsIndexTarget";+    }+  };+  var GlossaryTargetIsSymbol = {+    reflectSymbol: function() {+      return "GlossaryTarget";+    }+  };+  var HashTagsIndexTargetIsSymbol = {+    reflectSymbol: function() {+      return "HashTagsIndexTarget";+    }+  };+  var areAllConstructorsNullary_Constructor1 = /* @__PURE__ */ areAllConstructorsNullary_Constructor(areAllConstructorsNullary_NoArguments);+  var areAllConstructorsNullary_Sum2 = /* @__PURE__ */ areAllConstructorsNullary_Sum(areAllConstructorsNullary_Constructor1);+  var areAllConstructorsNullary_Sum1 = /* @__PURE__ */ areAllConstructorsNullary_Sum2(/* @__PURE__ */ areAllConstructorsNullary_Sum2(/* @__PURE__ */ areAllConstructorsNullary_Sum2(/* @__PURE__ */ areAllConstructorsNullary_Sum2(/* @__PURE__ */ areAllConstructorsNullary_Sum2(/* @__PURE__ */ areAllConstructorsNullary_Sum2(/* @__PURE__ */ areAllConstructorsNullary_Sum2(/* @__PURE__ */ areAllConstructorsNullary_Sum2(/* @__PURE__ */ areAllConstructorsNullary_Sum2(/* @__PURE__ */ areAllConstructorsNullary_Sum2(/* @__PURE__ */ areAllConstructorsNullary_Sum2(/* @__PURE__ */ areAllConstructorsNullary_Sum2(/* @__PURE__ */ areAllConstructorsNullary_Sum2(/* @__PURE__ */ areAllConstructorsNullary_Sum2(/* @__PURE__ */ areAllConstructorsNullary_Sum2(/* @__PURE__ */ areAllConstructorsNullary_Sum2(/* @__PURE__ */ areAllConstructorsNullary_Sum2(areAllConstructorsNullary_Constructor1)))))))))))))))));+  var titleIsSymbol = {+    reflectSymbol: function() {+      return "title";+    }+  };+  var faviconUrlIsSymbol = {+    reflectSymbol: function() {+      return "faviconUrl";+    }+  };+  var datetxtIsSymbol = {+    reflectSymbol: function() {+      return "datetxt";+    }+  };+  var authorIsSymbol = {+    reflectSymbol: function() {+      return "author";+    }+  };+  var PreambleSummaryIsSymbol = {+    reflectSymbol: function() {+      return "PreambleSummary";+    }+  };+  var hashtagIsSymbol = {+    reflectSymbol: function() {+      return "hashtag";+    }+  };+  var HashTagItemIsSymbol = {+    reflectSymbol: function() {+      return "HashTagItem";+    }+  };+  var hashtagsIsSymbol = {+    reflectSymbol: function() {+      return "hashtags";+    }+  };+  var HashTagSummaryIsSymbol = {+    reflectSymbol: function() {+      return "HashTagSummary";+    }+  };+  var termIsSymbol = {+    reflectSymbol: function() {+      return "term";+    }+  };+  var definitionIsSymbol = {+    reflectSymbol: function() {+      return "definition";+    }+  };+  var GlossaryItemIsSymbol = {+    reflectSymbol: function() {+      return "GlossaryItem";+    }+  };+  var glossaryIsSymbol = {+    reflectSymbol: function() {+      return "glossary";+    }+  };+  var GlossarySummaryIsSymbol = {+    reflectSymbol: function() {+      return "GlossarySummary";+    }+  };+  var topicSummaryIsSymbol = {+    reflectSymbol: function() {+      return "topicSummary";+    }+  };+  var textualTitleIsSymbol = {+    reflectSymbol: function() {+      return "textualTitle";+    }+  };+  var textualSummaryIsSymbol = {+    reflectSymbol: function() {+      return "textualSummary";+    }+  };+  var targetTypeIsSymbol = {+    reflectSymbol: function() {+      return "targetType";+    }+  };+  var preambleSummaryIsSymbol = {+    reflectSymbol: function() {+      return "preambleSummary";+    }+  };+  var hashtagSummaryIsSymbol = {+    reflectSymbol: function() {+      return "hashtagSummary";+    }+  };+  var glossarySummaryIsSymbol = {+    reflectSymbol: function() {+      return "glossarySummary";+    }+  };+  var TargetSummaryIsSymbol = {+    reflectSymbol: function() {+      return "TargetSummary";+    }+  };+  var gDecodeJsonCons2 = /* @__PURE__ */ gDecodeJsonCons(/* @__PURE__ */ decodeFieldMaybe(decodeJsonString));+  var gDecodeJsonCons1 = /* @__PURE__ */ gDecodeJsonCons(/* @__PURE__ */ decodeFieldId(/* @__PURE__ */ decodeArray2(decodeJsonString)));+  var decodeRepArgsArgument2 = /* @__PURE__ */ decodeRepArgsArgument(/* @__PURE__ */ decodeRecord(/* @__PURE__ */ gDecodeJsonCons2(/* @__PURE__ */ gDecodeJsonCons1(/* @__PURE__ */ gDecodeJsonCons1(gDecodeJsonNil)(topicsIsSymbol)()())(keywordsIsSymbol)()())(imageLinkIsSymbol)()())());+  var gDecodeJsonCons22 = /* @__PURE__ */ gDecodeJsonCons(/* @__PURE__ */ decodeFieldId(decodeJsonString));+  var gDecodeJsonCons3 = /* @__PURE__ */ gDecodeJsonCons22(gDecodeJsonNil);+  var decodeRepArgsArgument1 = /* @__PURE__ */ decodeRepArgsArgument(/* @__PURE__ */ decodeRecord(/* @__PURE__ */ gDecodeJsonCons22(/* @__PURE__ */ gDecodeJsonCons2(/* @__PURE__ */ gDecodeJsonCons22(/* @__PURE__ */ gDecodeJsonCons3(titleIsSymbol)()())(faviconUrlIsSymbol)()())(datetxtIsSymbol)()())(authorIsSymbol)()())());+  var decodeRepArgsArgument22 = /* @__PURE__ */ decodeRepArgsArgument(/* @__PURE__ */ decodeRecord(/* @__PURE__ */ gDecodeJsonCons3(hashtagIsSymbol)()())());+  var decodeRepArgsArgument3 = /* @__PURE__ */ decodeRepArgsArgument(/* @__PURE__ */ decodeRecord(/* @__PURE__ */ gDecodeJsonCons22(/* @__PURE__ */ gDecodeJsonCons3(termIsSymbol)()())(definitionIsSymbol)()())());+  var _Newtype2 = /* @__PURE__ */ _Newtype()();+  var CssTarget = /* @__PURE__ */ (function() {+    function CssTarget2() {+    }+    ;+    CssTarget2.value = new CssTarget2();+    return CssTarget2;+  })();+  var WebfontTarget = /* @__PURE__ */ (function() {+    function WebfontTarget2() {+    }+    ;+    WebfontTarget2.value = new WebfontTarget2();+    return WebfontTarget2;+  })();+  var ImageTarget = /* @__PURE__ */ (function() {+    function ImageTarget2() {+    }+    ;+    ImageTarget2.value = new ImageTarget2();+    return ImageTarget2;+  })();+  var GraphVizImageTarget = /* @__PURE__ */ (function() {+    function GraphVizImageTarget2() {+    }+    ;+    GraphVizImageTarget2.value = new GraphVizImageTarget2();+    return GraphVizImageTarget2;+  })();+  var VideoTarget = /* @__PURE__ */ (function() {+    function VideoTarget2() {+    }+    ;+    VideoTarget2.value = new VideoTarget2();+    return VideoTarget2;+  })();+  var AudioTarget = /* @__PURE__ */ (function() {+    function AudioTarget2() {+    }+    ;+    AudioTarget2.value = new AudioTarget2();+    return AudioTarget2;+  })();+  var RawTarget = /* @__PURE__ */ (function() {+    function RawTarget2() {+    }+    ;+    RawTarget2.value = new RawTarget2();+    return RawTarget2;+  })();+  var DatasetTarget = /* @__PURE__ */ (function() {+    function DatasetTarget2() {+    }+    ;+    DatasetTarget2.value = new DatasetTarget2();+    return DatasetTarget2;+  })();+  var DocumentTarget = /* @__PURE__ */ (function() {+    function DocumentTarget2() {+    }+    ;+    DocumentTarget2.value = new DocumentTarget2();+    return DocumentTarget2;+  })();+  var JavaScriptSourceTarget = /* @__PURE__ */ (function() {+    function JavaScriptSourceTarget2() {+    }+    ;+    JavaScriptSourceTarget2.value = new JavaScriptSourceTarget2();+    return JavaScriptSourceTarget2;+  })();+  var HtmlSourceTarget = /* @__PURE__ */ (function() {+    function HtmlSourceTarget2() {+    }+    ;+    HtmlSourceTarget2.value = new HtmlSourceTarget2();+    return HtmlSourceTarget2;+  })();+  var JSONTarget = /* @__PURE__ */ (function() {+    function JSONTarget2() {+    }+    ;+    JSONTarget2.value = new JSONTarget2();+    return JSONTarget2;+  })();+  var RootFileTarget = /* @__PURE__ */ (function() {+    function RootFileTarget2() {+    }+    ;+    RootFileTarget2.value = new RootFileTarget2();+    return RootFileTarget2;+  })();+  var ArticleTarget = /* @__PURE__ */ (function() {+    function ArticleTarget2() {+    }+    ;+    ArticleTarget2.value = new ArticleTarget2();+    return ArticleTarget2;+  })();+  var GeneratedTarget = /* @__PURE__ */ (function() {+    function GeneratedTarget2() {+    }+    ;+    GeneratedTarget2.value = new GeneratedTarget2();+    return GeneratedTarget2;+  })();+  var TopicsIndexTarget = /* @__PURE__ */ (function() {+    function TopicsIndexTarget2() {+    }+    ;+    TopicsIndexTarget2.value = new TopicsIndexTarget2();+    return TopicsIndexTarget2;+  })();+  var GlossaryTarget = /* @__PURE__ */ (function() {+    function GlossaryTarget2() {+    }+    ;+    GlossaryTarget2.value = new GlossaryTarget2();+    return GlossaryTarget2;+  })();+  var HashTagsIndexTarget = /* @__PURE__ */ (function() {+    function HashTagsIndexTarget2() {+    }+    ;+    HashTagsIndexTarget2.value = new HashTagsIndexTarget2();+    return HashTagsIndexTarget2;+  })();+  var genericTopicSummary = {+    to: function(x) {+      return x;+    },+    from: function(x) {+      return x;+    }+  };+  var genericTargetType = {+    to: function(x) {+      if (x instanceof Inl) {+        return CssTarget.value;+      }+      ;+      if (x instanceof Inr && x.value0 instanceof Inl) {+        return WebfontTarget.value;+      }+      ;+      if (x instanceof Inr && (x.value0 instanceof Inr && x.value0.value0 instanceof Inl)) {+        return ImageTarget.value;+      }+      ;+      if (x instanceof Inr && (x.value0 instanceof Inr && (x.value0.value0 instanceof Inr && x.value0.value0.value0 instanceof Inl))) {+        return GraphVizImageTarget.value;+      }+      ;+      if (x instanceof Inr && (x.value0 instanceof Inr && (x.value0.value0 instanceof Inr && (x.value0.value0.value0 instanceof Inr && x.value0.value0.value0.value0 instanceof Inl)))) {+        return VideoTarget.value;+      }+      ;+      if (x instanceof Inr && (x.value0 instanceof Inr && (x.value0.value0 instanceof Inr && (x.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0 instanceof Inr && x.value0.value0.value0.value0.value0 instanceof Inl))))) {+        return AudioTarget.value;+      }+      ;+      if (x instanceof Inr && (x.value0 instanceof Inr && (x.value0.value0 instanceof Inr && (x.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0 instanceof Inr && x.value0.value0.value0.value0.value0.value0 instanceof Inl)))))) {+        return RawTarget.value;+      }+      ;+      if (x instanceof Inr && (x.value0 instanceof Inr && (x.value0.value0 instanceof Inr && (x.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0 instanceof Inr && x.value0.value0.value0.value0.value0.value0.value0 instanceof Inl))))))) {+        return DatasetTarget.value;+      }+      ;+      if (x instanceof Inr && (x.value0 instanceof Inr && (x.value0.value0 instanceof Inr && (x.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && x.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inl)))))))) {+        return DocumentTarget.value;+      }+      ;+      if (x instanceof Inr && (x.value0 instanceof Inr && (x.value0.value0 instanceof Inr && (x.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && x.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inl))))))))) {+        return JavaScriptSourceTarget.value;+      }+      ;+      if (x instanceof Inr && (x.value0 instanceof Inr && (x.value0.value0 instanceof Inr && (x.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inl)))))))))) {+        return HtmlSourceTarget.value;+      }+      ;+      if (x instanceof Inr && (x.value0 instanceof Inr && (x.value0.value0 instanceof Inr && (x.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inl))))))))))) {+        return JSONTarget.value;+      }+      ;+      if (x instanceof Inr && (x.value0 instanceof Inr && (x.value0.value0 instanceof Inr && (x.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inl)))))))))))) {+        return RootFileTarget.value;+      }+      ;+      if (x instanceof Inr && (x.value0 instanceof Inr && (x.value0.value0 instanceof Inr && (x.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inl))))))))))))) {+        return ArticleTarget.value;+      }+      ;+      if (x instanceof Inr && (x.value0 instanceof Inr && (x.value0.value0 instanceof Inr && (x.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inl)))))))))))))) {+        return GeneratedTarget.value;+      }+      ;+      if (x instanceof Inr && (x.value0 instanceof Inr && (x.value0.value0 instanceof Inr && (x.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inl))))))))))))))) {+        return TopicsIndexTarget.value;+      }+      ;+      if (x instanceof Inr && (x.value0 instanceof Inr && (x.value0.value0 instanceof Inr && (x.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inl)))))))))))))))) {+        return GlossaryTarget.value;+      }+      ;+      if (x instanceof Inr && (x.value0 instanceof Inr && (x.value0.value0 instanceof Inr && (x.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && (x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr && x.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0.value0 instanceof Inr)))))))))))))))) {+        return HashTagsIndexTarget.value;+      }+      ;+      throw new Error("Failed pattern match at KitchenSink.Layout.Blog.Summary (line 137, column 1 - line 137, column 58): " + [x.constructor.name]);+    },+    from: function(x) {+      if (x instanceof CssTarget) {+        return new Inl(NoArguments.value);+      }+      ;+      if (x instanceof WebfontTarget) {+        return new Inr(new Inl(NoArguments.value));+      }+      ;+      if (x instanceof ImageTarget) {+        return new Inr(new Inr(new Inl(NoArguments.value)));+      }+      ;+      if (x instanceof GraphVizImageTarget) {+        return new Inr(new Inr(new Inr(new Inl(NoArguments.value))));+      }+      ;+      if (x instanceof VideoTarget) {+        return new Inr(new Inr(new Inr(new Inr(new Inl(NoArguments.value)))));+      }+      ;+      if (x instanceof AudioTarget) {+        return new Inr(new Inr(new Inr(new Inr(new Inr(new Inl(NoArguments.value))))));+      }+      ;+      if (x instanceof RawTarget) {+        return new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inl(NoArguments.value)))))));+      }+      ;+      if (x instanceof DatasetTarget) {+        return new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inl(NoArguments.value))))))));+      }+      ;+      if (x instanceof DocumentTarget) {+        return new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inl(NoArguments.value)))))))));+      }+      ;+      if (x instanceof JavaScriptSourceTarget) {+        return new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inl(NoArguments.value))))))))));+      }+      ;+      if (x instanceof HtmlSourceTarget) {+        return new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inl(NoArguments.value)))))))))));+      }+      ;+      if (x instanceof JSONTarget) {+        return new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inl(NoArguments.value))))))))))));+      }+      ;+      if (x instanceof RootFileTarget) {+        return new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inl(NoArguments.value)))))))))))));+      }+      ;+      if (x instanceof ArticleTarget) {+        return new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inl(NoArguments.value))))))))))))));+      }+      ;+      if (x instanceof GeneratedTarget) {+        return new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inl(NoArguments.value)))))))))))))));+      }+      ;+      if (x instanceof TopicsIndexTarget) {+        return new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inl(NoArguments.value))))))))))))))));+      }+      ;+      if (x instanceof GlossaryTarget) {+        return new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inl(NoArguments.value)))))))))))))))));+      }+      ;+      if (x instanceof HashTagsIndexTarget) {+        return new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(new Inr(NoArguments.value)))))))))))))))));+      }+      ;+      throw new Error("Failed pattern match at KitchenSink.Layout.Blog.Summary (line 137, column 1 - line 137, column 58): " + [x.constructor.name]);+    }+  };+  var genericTargetSummary = {+    to: function(x) {+      return x;+    },+    from: function(x) {+      return x;+    }+  };+  var genericPreambleSummary = {+    to: function(x) {+      return x;+    },+    from: function(x) {+      return x;+    }+  };+  var genericPathList = {+    to: function(x) {+      return x;+    },+    from: function(x) {+      return x;+    }+  };+  var genericHashTagSummary = {+    to: function(x) {+      return x;+    },+    from: function(x) {+      return x;+    }+  };+  var genericHashTagItem = {+    to: function(x) {+      return x;+    },+    from: function(x) {+      return x;+    }+  };+  var genericGlossarySummary = {+    to: function(x) {+      return x;+    },+    from: function(x) {+      return x;+    }+  };+  var genericGlossaryItem = {+    to: function(x) {+      return x;+    },+    from: function(x) {+      return x;+    }+  };+  var decodeJsonTopicSummary = {+    decodeJson: /* @__PURE__ */ genericDecodeAeson(genericTopicSummary)(/* @__PURE__ */ decodeAesonConstructor(decodeRepArgsArgument2)(TopicSummaryIsSymbol)(areAllConstructorsNullary_Constructor2)(isSingleConstructor_Constructor)(/* @__PURE__ */ decodeAesonConstructor$prime(TopicSummaryIsSymbol)(decodeRepArgsArgument2)))(defaultOptions)+  };+  var decodeJsonTargetType = {+    decodeJson: /* @__PURE__ */ genericDecodeAeson(genericTargetType)(/* @__PURE__ */ decodeAesonSum(/* @__PURE__ */ decodeAesonSum$prime(/* @__PURE__ */ decodeAesonConstructorNoArguments$prime(CssTargetIsSymbol))(/* @__PURE__ */ decodeAesonSum$prime(/* @__PURE__ */ decodeAesonConstructorNoArguments$prime(WebfontTargetIsSymbol))(/* @__PURE__ */ decodeAesonSum$prime(/* @__PURE__ */ decodeAesonConstructorNoArguments$prime(ImageTargetIsSymbol))(/* @__PURE__ */ decodeAesonSum$prime(/* @__PURE__ */ decodeAesonConstructorNoArguments$prime(GraphVizImageTargetIsSymbol))(/* @__PURE__ */ decodeAesonSum$prime(/* @__PURE__ */ decodeAesonConstructorNoArguments$prime(VideoTargetIsSymbol))(/* @__PURE__ */ decodeAesonSum$prime(/* @__PURE__ */ decodeAesonConstructorNoArguments$prime(AudioTargetIsSymbol))(/* @__PURE__ */ decodeAesonSum$prime(/* @__PURE__ */ decodeAesonConstructorNoArguments$prime(RawTargetIsSymbol))(/* @__PURE__ */ decodeAesonSum$prime(/* @__PURE__ */ decodeAesonConstructorNoArguments$prime(DatasetTargetIsSymbol))(/* @__PURE__ */ decodeAesonSum$prime(/* @__PURE__ */ decodeAesonConstructorNoArguments$prime(DocumentTargetIsSymbol))(/* @__PURE__ */ decodeAesonSum$prime(/* @__PURE__ */ decodeAesonConstructorNoArguments$prime(JavaScriptSourceTargetIsSymbol))(/* @__PURE__ */ decodeAesonSum$prime(/* @__PURE__ */ decodeAesonConstructorNoArguments$prime(HtmlSourceTargetIsSymbol))(/* @__PURE__ */ decodeAesonSum$prime(/* @__PURE__ */ decodeAesonConstructorNoArguments$prime(JSONTargetIsSymbol))(/* @__PURE__ */ decodeAesonSum$prime(/* @__PURE__ */ decodeAesonConstructorNoArguments$prime(RootFileTargetIsSymbol))(/* @__PURE__ */ decodeAesonSum$prime(/* @__PURE__ */ decodeAesonConstructorNoArguments$prime(ArticleTargetIsSymbol))(/* @__PURE__ */ decodeAesonSum$prime(/* @__PURE__ */ decodeAesonConstructorNoArguments$prime(GeneratedTargetIsSymbol))(/* @__PURE__ */ decodeAesonSum$prime(/* @__PURE__ */ decodeAesonConstructorNoArguments$prime(TopicsIndexTargetIsSymbol))(/* @__PURE__ */ decodeAesonSum$prime(/* @__PURE__ */ decodeAesonConstructorNoArguments$prime(GlossaryTargetIsSymbol))(/* @__PURE__ */ decodeAesonConstructorNoArguments$prime(HashTagsIndexTargetIsSymbol)))))))))))))))))))(areAllConstructorsNullary_Sum1)(isSingleConstructor_Sum))(defaultOptions)+  };+  var decodeJsonPreambleSummary = {+    decodeJson: /* @__PURE__ */ genericDecodeAeson(genericPreambleSummary)(/* @__PURE__ */ decodeAesonConstructor(decodeRepArgsArgument1)(PreambleSummaryIsSymbol)(areAllConstructorsNullary_Constructor2)(isSingleConstructor_Constructor)(/* @__PURE__ */ decodeAesonConstructor$prime(PreambleSummaryIsSymbol)(decodeRepArgsArgument1)))(defaultOptions)+  };+  var decodeJsonHashTagItem = {+    decodeJson: /* @__PURE__ */ genericDecodeAeson(genericHashTagItem)(/* @__PURE__ */ decodeAesonConstructor(decodeRepArgsArgument22)(HashTagItemIsSymbol)(areAllConstructorsNullary_Constructor2)(isSingleConstructor_Constructor)(/* @__PURE__ */ decodeAesonConstructor$prime(HashTagItemIsSymbol)(decodeRepArgsArgument22)))(defaultOptions)+  };+  var decodeRepArgsArgument4 = /* @__PURE__ */ decodeRepArgsArgument(/* @__PURE__ */ decodeRecord(/* @__PURE__ */ gDecodeJsonCons(/* @__PURE__ */ decodeFieldId(/* @__PURE__ */ decodeArray2(decodeJsonHashTagItem)))(gDecodeJsonNil)(hashtagsIsSymbol)()())());+  var decodeJsonHashTagSummary = {+    decodeJson: /* @__PURE__ */ genericDecodeAeson(genericHashTagSummary)(/* @__PURE__ */ decodeAesonConstructor(decodeRepArgsArgument4)(HashTagSummaryIsSymbol)(areAllConstructorsNullary_Constructor2)(isSingleConstructor_Constructor)(/* @__PURE__ */ decodeAesonConstructor$prime(HashTagSummaryIsSymbol)(decodeRepArgsArgument4)))(defaultOptions)+  };+  var decodeJsonGlossaryItem = {+    decodeJson: /* @__PURE__ */ genericDecodeAeson(genericGlossaryItem)(/* @__PURE__ */ decodeAesonConstructor(decodeRepArgsArgument3)(GlossaryItemIsSymbol)(areAllConstructorsNullary_Constructor2)(isSingleConstructor_Constructor)(/* @__PURE__ */ decodeAesonConstructor$prime(GlossaryItemIsSymbol)(decodeRepArgsArgument3)))(defaultOptions)+  };+  var decodeRepArgsArgument5 = /* @__PURE__ */ decodeRepArgsArgument(/* @__PURE__ */ decodeRecord(/* @__PURE__ */ gDecodeJsonCons(/* @__PURE__ */ decodeFieldId(/* @__PURE__ */ decodeArray2(decodeJsonGlossaryItem)))(gDecodeJsonNil)(glossaryIsSymbol)()())());+  var decodeJsonGlossarySummary = {+    decodeJson: /* @__PURE__ */ genericDecodeAeson(genericGlossarySummary)(/* @__PURE__ */ decodeAesonConstructor(decodeRepArgsArgument5)(GlossarySummaryIsSymbol)(areAllConstructorsNullary_Constructor2)(isSingleConstructor_Constructor)(/* @__PURE__ */ decodeAesonConstructor$prime(GlossarySummaryIsSymbol)(decodeRepArgsArgument5)))(defaultOptions)+  };+  var decodeRepArgsArgument6 = /* @__PURE__ */ decodeRepArgsArgument(/* @__PURE__ */ decodeRecord(/* @__PURE__ */ gDecodeJsonCons(/* @__PURE__ */ decodeFieldMaybe(decodeJsonGlossarySummary))(/* @__PURE__ */ gDecodeJsonCons(/* @__PURE__ */ decodeFieldId(decodeJsonHashTagSummary))(/* @__PURE__ */ gDecodeJsonCons(/* @__PURE__ */ decodeFieldMaybe(decodeJsonPreambleSummary))(/* @__PURE__ */ gDecodeJsonCons(/* @__PURE__ */ decodeFieldId(decodeJsonTargetType))(/* @__PURE__ */ gDecodeJsonCons2(/* @__PURE__ */ gDecodeJsonCons2(/* @__PURE__ */ gDecodeJsonCons(/* @__PURE__ */ decodeFieldMaybe(decodeJsonTopicSummary))(gDecodeJsonNil)(topicSummaryIsSymbol)()())(textualTitleIsSymbol)()())(textualSummaryIsSymbol)()())(targetTypeIsSymbol)()())(preambleSummaryIsSymbol)()())(hashtagSummaryIsSymbol)()())(glossarySummaryIsSymbol)()())());+  var decodeJsonTargetSummary = {+    decodeJson: /* @__PURE__ */ genericDecodeAeson(genericTargetSummary)(/* @__PURE__ */ decodeAesonConstructor(decodeRepArgsArgument6)(TargetSummaryIsSymbol)(areAllConstructorsNullary_Constructor2)(isSingleConstructor_Constructor)(/* @__PURE__ */ decodeAesonConstructor$prime(TargetSummaryIsSymbol)(decodeRepArgsArgument6)))(defaultOptions)+  };+  var _TopicSummary = function(dictProfunctor) {+    return _Newtype2(dictProfunctor);+  };+  var _TargetSummary = function(dictProfunctor) {+    return _Newtype2(dictProfunctor);+  };+  var _PreambleSummary = function(dictProfunctor) {+    return _Newtype2(dictProfunctor);+  };+  var _PathList = function(dictProfunctor) {+    return _Newtype2(dictProfunctor);+  };+  var _HashTagSummary = function(dictProfunctor) {+    return _Newtype2(dictProfunctor);+  };+  var _HashTagItem = function(dictProfunctor) {+    return _Newtype2(dictProfunctor);+  };++  // output/Web.DOM.Document/foreign.js+  var getEffProp3 = function(name16) {+    return function(doc) {+      return function() {+        return doc[name16];+      };+    };+  };+  var url = getEffProp3("URL");+  var documentURI = getEffProp3("documentURI");+  var origin2 = getEffProp3("origin");+  var compatMode = getEffProp3("compatMode");+  var characterSet = getEffProp3("characterSet");+  var contentType = getEffProp3("contentType");+  var _documentElement2 = getEffProp3("documentElement");++  // output/Web.DOM.Document/index.js+  var toNonElementParentNode = unsafeCoerce2;++  // output/Web.DOM.NonElementParentNode/foreign.js+  function _getElementById(id3) {+    return function(node) {+      return function() {+        return node.getElementById(id3);+      };+    };+  }++  // output/Web.DOM.NonElementParentNode/index.js+  var map28 = /* @__PURE__ */ map(functorEffect);+  var getElementById = function(eid) {+    var $2 = map28(toMaybe);+    var $3 = _getElementById(eid);+    return function($4) {+      return $2($3($4));+    };+  };++  // output/KitchenSink/index.js+  var map29 = /* @__PURE__ */ map(functorEffect);+  var bind15 = /* @__PURE__ */ bind(bindAff);+  var pure14 = /* @__PURE__ */ pure(applicativeAff);+  var map111 = /* @__PURE__ */ map(functorEither);+  var decodeJsonTuple2 = /* @__PURE__ */ decodeJsonTuple(decodeJsonString);+  var decodeRepArgsArgument7 = /* @__PURE__ */ decodeRepArgsArgument(/* @__PURE__ */ decodeRecord(/* @__PURE__ */ gDecodeJsonCons(/* @__PURE__ */ decodeFieldId(/* @__PURE__ */ decodeArray2(/* @__PURE__ */ decodeJsonTuple2(decodeJsonTargetSummary))))(gDecodeJsonNil)({+    reflectSymbol: function() {+      return "paths";+    }+  })()())());+  var PathListIsSymbol = {+    reflectSymbol: function() {+      return "PathList";+    }+  };+  var areAllConstructorsNullary_Constructor3 = /* @__PURE__ */ areAllConstructorsNullary_Constructor(areAllConstructorsNullary_Argument);+  var genericDecodeAeson2 = /* @__PURE__ */ genericDecodeAeson(genericPathList)(/* @__PURE__ */ decodeAesonConstructor(decodeRepArgsArgument7)(PathListIsSymbol)(areAllConstructorsNullary_Constructor3)(isSingleConstructor_Constructor)(/* @__PURE__ */ decodeAesonConstructor$prime(PathListIsSymbol)(decodeRepArgsArgument7)));+  var sitePaths = "/json/paths.json";+  var getBasePath = function(elemId) {+    return function __do2() {+      var win = windowImpl();+      var doc = document(win)();+      var mEl = getElementById(elemId)(toNonElementParentNode(toDocument(doc)))();+      if (mEl instanceof Nothing) {+        return "";+      }+      ;+      if (mEl instanceof Just) {+        return map29(fromMaybe(""))(getAttribute("data-base-path")(mEl.value0))();+      }+      ;+      throw new Error("Failed pattern match at KitchenSink (line 44, column 3 - line 46, column 69): " + [mEl.constructor.name]);+    };+  };+  var fetchPaths = function(baseUrl) {+    return bind15(get3(json)(baseUrl + sitePaths))(function(resp) {+      return pure14(map111(function(x) {+        return genericDecodeAeson2(defaultOptions)(x.body);+      })(resp));+    });+  };++  // output/Web.UIEvent.MouseEvent/index.js+  var toEvent = unsafeCoerce2;++  // output/Searchbox/index.js+  var value14 = /* @__PURE__ */ value13(isPropString);+  var eqMaybe2 = /* @__PURE__ */ eqMaybe(eqString);+  var eq4 = /* @__PURE__ */ eq(eqMaybe2);+  var map30 = /* @__PURE__ */ map(functorArray);+  var modify_3 = /* @__PURE__ */ modify_2(monadStateHalogenM);+  var bind9 = /* @__PURE__ */ bind(bindHalogenM);+  var get5 = /* @__PURE__ */ get(monadStateHalogenM);+  var discard6 = /* @__PURE__ */ discard(discardUnit)(bindHalogenM);+  var put3 = /* @__PURE__ */ put(monadStateHalogenM);+  var when4 = /* @__PURE__ */ when(applicativeHalogenM);+  var notEq2 = /* @__PURE__ */ notEq(eqMaybe2);+  var Hidden = /* @__PURE__ */ (function() {+    function Hidden2() {+    }+    ;+    Hidden2.value = new Hidden2();+    return Hidden2;+  })();+  var Visible2 = /* @__PURE__ */ (function() {+    function Visible3() {+    }+    ;+    Visible3.value = new Visible3();+    return Visible3;+  })();+  var Expanded = /* @__PURE__ */ (function() {+    function Expanded2() {+    }+    ;+    Expanded2.value = new Expanded2();+    return Expanded2;+  })();+  var Collapsed = /* @__PURE__ */ (function() {+    function Collapsed2() {+    }+    ;+    Collapsed2.value = new Collapsed2();+    return Collapsed2;+  })();+  var SetFilterString = /* @__PURE__ */ (function() {+    function SetFilterString2(value0) {+      this.value0 = value0;+    }+    ;+    SetFilterString2.create = function(value0) {+      return new SetFilterString2(value0);+    };+    return SetFilterString2;+  })();+  var SetVisibility = /* @__PURE__ */ (function() {+    function SetVisibility2(value0) {+      this.value0 = value0;+    }+    ;+    SetVisibility2.create = function(value0) {+      return new SetVisibility2(value0);+    };+    return SetVisibility2;+  })();+  var ToggleItemVisibility = /* @__PURE__ */ (function() {+    function ToggleItemVisibility2(value0, value1, value22) {+      this.value0 = value0;+      this.value1 = value1;+      this.value2 = value22;+    }+    ;+    ToggleItemVisibility2.create = function(value0) {+      return function(value1) {+        return function(value22) {+          return new ToggleItemVisibility2(value0, value1, value22);+        };+      };+    };+    return ToggleItemVisibility2;+  })();+  var component = function(dictMonadAff) {+    var liftEffect8 = liftEffect(monadEffectHalogenM(dictMonadAff.MonadEffect0()));+    return function(props) {+      var renderFilter = function(str) {+        return input2([class_("routes-filter-input"), onValueInput(function(e) {+          return new SetFilterString(e);+        }), onClick(function(v) {+          return new SetVisibility(Visible2.value);+        }), value14(str), placeholder3("search")]);+      };+      var renderCollapseListButton = button([class_("collapse-button"), onClick(function(v) {+        return new SetVisibility(Hidden.value);+      })])([text5("\u{1F53A}\uFE0Fhide results")]);+      var itemVisibility = function(expanded) {+        return function(v) {+          var $28 = eq4(new Just(v.value0))(expanded);+          if ($28) {+            return Expanded.value;+          }+          ;+          return Collapsed.value;+        };+      };+      var renderRoutes = function(state3) {+        return function(visibility) {+          return function(rts) {+            var visibilityClass = function(v) {+              if (v instanceof Hidden) {+                return "hidden";+              }+              ;+              if (v instanceof Visible2) {+                var $32 = $$null(rts);+                if ($32) {+                  return "hidden";+                }+                ;+                return "visible";+              }+              ;+              throw new Error("Failed pattern match at Searchbox (line 88, column 14 - line 90, column 73): " + [v.constructor.name]);+            };+            return div2([classes(["routes-list", visibilityClass(visibility)])])([div_([renderCollapseListButton]), ul([class_("routes-list-list")])(map30(function(x) {+              return props.renderRoute(itemVisibility(state3.expanded)(x))(x);+            })(rts))]);+          };+        };+      };+      var render = function(state3) {+        return div_([renderFilter(state3.filter), renderRoutes(state3)(state3.visibility)(filter(props.matchRoute(state3.filter))(state3.routes))]);+      };+      var initialState = function(input3) {+        return {+          routes: input3.routes,+          filter: input3.filter,+          visibility: Hidden.value,+          expanded: Nothing.value+        };+      };+      var handleAction = function(v) {+        if (v instanceof SetFilterString) {+          return modify_3(function(v1) {+            var $34 = {};+            for (var $35 in v1) {+              if ({}.hasOwnProperty.call(v1, $35)) {+                $34[$35] = v1[$35];+              }+              ;+            }+            ;+            $34.filter = v.value0;+            return $34;+          });+        }+        ;+        if (v instanceof SetVisibility) {+          return modify_3(function(v2) {+            var $38 = {};+            for (var $39 in v2) {+              if ({}.hasOwnProperty.call(v2, $39)) {+                $38[$39] = v2[$39];+              }+              ;+            }+            ;+            $38.visibility = v.value0;+            return $38;+          });+        }+        ;+        if (v instanceof ToggleItemVisibility) {+          return bind9(get5)(function(st0) {+            return discard6(put3((function() {+              var $42 = {};+              for (var $43 in st0) {+                if ({}.hasOwnProperty.call(st0, $43)) {+                  $42[$43] = st0[$43];+                }+                ;+              }+              ;+              $42.expanded = new Just(v.value1);+              return $42;+            })()))(function() {+              return when4(notEq2(st0.expanded)(new Just(v.value1)) && v.value0)(liftEffect8(preventDefault(toEvent(v.value2))));+            });+          });+        }+        ;+        throw new Error("Failed pattern match at Searchbox (line 115, column 18 - line 122, column 63): " + [v.constructor.name]);+      };+      return mkComponent({+        initialState,+        render,+        "eval": mkEval({+          handleQuery: defaultEval.handleQuery,+          receive: defaultEval.receive,+          initialize: defaultEval.initialize,+          finalize: defaultEval.finalize,+          handleAction+        })+      });+    };+  };++  // output/Main/index.js+  var map31 = /* @__PURE__ */ map(functorArray);+  var _TargetSummary2 = /* @__PURE__ */ _TargetSummary(profunctorForget);+  var _Just2 = /* @__PURE__ */ _Just(/* @__PURE__ */ choiceForget(monoidFirst));+  var _TopicSummary2 = /* @__PURE__ */ _TopicSummary(profunctorForget);+  var _PreambleSummary2 = /* @__PURE__ */ _PreambleSummary(profunctorForget);+  var _HashTagSummary2 = /* @__PURE__ */ _HashTagSummary(profunctorForget);+  var monoidEndo2 = /* @__PURE__ */ monoidEndo(categoryFn);+  var traversed2 = /* @__PURE__ */ traversed(traversableArray)(/* @__PURE__ */ wanderForget(monoidEndo2));+  var _HashTagItem2 = /* @__PURE__ */ _HashTagItem(profunctorForget);+  var or2 = /* @__PURE__ */ or(foldableArray)(heytingAlgebraBoolean);+  var bind10 = /* @__PURE__ */ bind(bindAff);+  var discard7 = /* @__PURE__ */ discard(discardUnit)(bindAff);+  var log4 = /* @__PURE__ */ log3(monadEffectAff);+  var pure15 = /* @__PURE__ */ pure(applicativeAff);+  var show5 = /* @__PURE__ */ show(showJsonDecodeError);+  var liftEffect7 = /* @__PURE__ */ liftEffect(monadEffectAff);+  var liftAff2 = /* @__PURE__ */ liftAff(monadAffAff);+  var _Just1 = /* @__PURE__ */ _Just(/* @__PURE__ */ choiceForget(monoidEndo2));+  var _PathList2 = /* @__PURE__ */ _PathList(profunctorForget);+  var component2 = /* @__PURE__ */ component(monadAffAff);+  var showTargetType = function(v) {+    if (v instanceof CssTarget) {+      return "A css file";+    }+    ;+    if (v instanceof ImageTarget) {+      return "Some image";+    }+    ;+    if (v instanceof GraphVizImageTarget) {+      return "Some rendered graph image";+    }+    ;+    if (v instanceof VideoTarget) {+      return "Some video";+    }+    ;+    if (v instanceof AudioTarget) {+      return "Some audio file";+    }+    ;+    if (v instanceof JavaScriptSourceTarget) {+      return "Some JS code";+    }+    ;+    if (v instanceof HtmlSourceTarget) {+      return "Some raw HTML file";+    }+    ;+    if (v instanceof JSONTarget) {+      return "Some JSON data";+    }+    ;+    if (v instanceof RawTarget) {+      return "Some arbitrary data";+    }+    ;+    if (v instanceof DatasetTarget) {+      return "An article dataset";+    }+    ;+    if (v instanceof RootFileTarget) {+      return "Some unspecified data";+    }+    ;+    if (v instanceof ArticleTarget) {+      return "An article";+    }+    ;+    if (v instanceof GeneratedTarget) {+      return "The output of a command";+    }+    ;+    if (v instanceof TopicsIndexTarget) {+      return "An index";+    }+    ;+    if (v instanceof GlossaryTarget) {+      return "The glossary";+    }+    ;+    if (v instanceof DocumentTarget) {+      return "Some document file";+    }+    ;+    if (v instanceof HashTagsIndexTarget) {+      return "Hashtags index";+    }+    ;+    if (v instanceof WebfontTarget) {+      return "Some web font";+    }+    ;+    throw new Error("Failed pattern match at Main (line 153, column 18 - line 171, column 35): " + [v.constructor.name]);+  };+  var renderTopicImage = function(url2) {+    return img([src9(url2)]);+  };+  var renderTopicHashtags = function(tags) {+    var ht = function(t) {+      return li([class_("hashtags-list-item")])([text5("#" + t)]);+    };+    return ul([class_("hashtags-list")])(map31(ht)(tags));+  };+  var renderMediaEmbed = function(r) {+    return function(v) {+      if (v instanceof ImageTarget) {+        return new Just(renderTopicImage(r));+      }+      ;+      if (v instanceof GraphVizImageTarget) {+        return new Just(renderTopicImage(r));+      }+      ;+      if (v instanceof VideoTarget) {+        return new Just(video([controls2(true), width8(320), height8(240)])([source([src9(r)])]));+      }+      ;+      if (v instanceof AudioTarget) {+        return new Just(audio([controls2(true)])([source([src9(r)])]));+      }+      ;+      return Nothing.value;+    };+  };+  var renderFavicon = function(url2) {+    return img([src9(url2), width8(32), height8(32)]);+  };+  var preventMouseClickBeforeExpand = function(v) {+    if (v instanceof ArticleTarget) {+      return true;+    }+    ;+    return false;+  };+  var renderRoute = function(visibility) {+    return function(v) {+      var visibilityClass = (function() {+        if (visibility instanceof Expanded) {+          return "visible";+        }+        ;+        if (visibility instanceof Collapsed) {+          return "hidden";+        }+        ;+        throw new Error("Failed pattern match at Main (line 79, column 23 - line 81, column 46): " + [visibility.constructor.name]);+      })();+      var topicImage = preview((function() {+        var $68 = to2(function(v1) {+          return v1.topicSummary;+        });+        var $69 = to2(function(v1) {+          return v1.imageLink;+        });+        return function($70) {+          return _TargetSummary2($68(_Just2(_TopicSummary2($69(_Just2($70))))));+        };+      })())(v.value1);+      var targetType = view((function() {+        var $71 = to2(function(v1) {+          return v1.targetType;+        });+        return function($72) {+          return _TargetSummary2($71($72));+        };+      })())(v.value1);+      var summaryTitle = view((function() {+        var $73 = to2(function(v1) {+          return v1.textualTitle;+        });+        return function($74) {+          return _TargetSummary2($73($74));+        };+      })())(v.value1);+      var summaryDescription = view((function() {+        var $75 = to2(function(v1) {+          return v1.textualSummary;+        });+        return function($76) {+          return _TargetSummary2($75($76));+        };+      })())(v.value1);+      var preambleFavicon = preview((function() {+        var $77 = to2(function(v1) {+          return v1.preambleSummary;+        });+        var $78 = to2(function(v1) {+          return v1.faviconUrl;+        });+        return function($79) {+          return _TargetSummary2($77(_Just2(_PreambleSummary2($78($79)))));+        };+      })())(v.value1);+      var hashtags = toArrayOf((function() {+        var $80 = to2(function(v1) {+          return v1.hashtagSummary;+        });+        var $81 = to2(function(v1) {+          return v1.hashtags;+        });+        var $82 = to2(function(v1) {+          return v1.hashtag;+        });+        return function($83) {+          return _TargetSummary2($80(_HashTagSummary2($81(traversed2(_HashTagItem2($82($83)))))));+        };+      })())(v.value1);+      var defaultTitle = showTargetType(targetType);+      return li([classes(["routes-list-item", "link-description", visibilityClass]), onClick(function(e) {+        return new ToggleItemVisibility(preventMouseClickBeforeExpand(targetType), v.value0, e);+      })])([p([class_("link-description-header")])([a([href4(v.value0), target6("_blank"), class_("link")])([maybe(text5(""))(renderFavicon)(preambleFavicon), span_([text5(v.value0)])]), span3([class_("link-description-title")])([text5(fromMaybe(defaultTitle)(summaryTitle))]), renderTopicHashtags(hashtags)]), div2([classes(["link-description-body", visibilityClass])])([p_([text5(fromMaybe("")(summaryDescription))]), maybe(text5(""))(renderTopicImage)(topicImage), fromMaybe(text5(""))(renderMediaEmbed(v.value0)(targetType))])]);+    };+  };+  var matchFilter = function(filter3) {+    return function(str) {+      var matchString = function(q2) {+        return contains(q2)(str);+      };+      return all2(matchString)(split(" ")(trim(filter3)));+    };+  };+  var matchRoute = function(filter3) {+    return function(v) {+      var hashtags = toArrayOf((function() {+        var $84 = to2(function(v1) {+          return v1.hashtagSummary;+        });+        var $85 = to2(function(v1) {+          return v1.hashtags;+        });+        var $86 = to2(function(v1) {+          return v1.hashtag;+        });+        return function($87) {+          return _TargetSummary2($84(_HashTagSummary2($85(traversed2(_HashTagItem2($86($87)))))));+        };+      })())(v.value1);+      var f = matchFilter(filter3);+      var inHashtags = or2(map31(f)(map31(function(v1) {+        return "#" + v1;+      })(hashtags)));+      var inSummary = preview((function() {+        var $88 = to2(function(v1) {+          return v1.textualSummary;+        });+        var $89 = to2(f);+        return function($90) {+          return _TargetSummary2($88(_Just2($89($90))));+        };+      })())(v.value1);+      var inTitle = preview((function() {+        var $91 = to2(function(v1) {+          return v1.textualTitle;+        });+        var $92 = to2(f);+        return function($93) {+          return _TargetSummary2($91(_Just2($92($93))));+        };+      })())(v.value1);+      return or2([f(v.value0), fromMaybe(false)(inTitle), fromMaybe(false)(inSummary), inHashtags]);+    };+  };+  var fetchPathList = function(basePath) {+    return bind10(fetchPaths(basePath))(function(res) {+      if (res instanceof Left) {+        return discard7(log4("failed: " + printError(res.value0)))(function() {+          return pure15(Nothing.value);+        });+      }+      ;+      if (res instanceof Right && res.value0 instanceof Left) {+        return discard7(log4("failed: " + show5(res.value0.value0)))(function() {+          return pure15(Nothing.value);+        });+      }+      ;+      if (res instanceof Right && res.value0 instanceof Right) {+        return pure15(new Just(res.value0.value0));+      }+      ;+      throw new Error("Failed pattern match at Main (line 33, column 3 - line 40, column 41): " + [res.constructor.name]);+    });+  };+  var main2 = /* @__PURE__ */ runHalogenAff(/* @__PURE__ */ bind10(awaitBody)(function(body2) {+    return bind10(liftEffect7(getBasePath("search-box")))(function(basePath) {+      return bind10(liftAff2(fetchPathList(basePath)))(function(blogPaths) {+        var routes = toArrayOf((function() {+          var $94 = to2(function(v) {+            return v.paths;+          });+          return function($95) {+            return _Just1(_PathList2($94(traversed2($95))));+          };+        })())(blogPaths);+        return bind10(selectElement("#search-box"))(function(elem3) {+          var tgt = fromMaybe(body2)(elem3);+          var props = {+            matchRoute,+            renderRoute+          };+          return runUI2(component2(props))({+            routes,+            filter: ".html"+          })(tgt);+        });+      });+    });+  }));++  // <stdin>+  main2();+})();
+ scaffolding/js/topicgraph.js view
@@ -0,0 +1,71 @@+/* Generated by Spago v1.0.4 */+(()=>{var qZ=Object.defineProperty;var JZ=(r,t)=>{for(var e in t)qZ(r,e,{get:t[e],enumerable:!0})};function QN(r,t,e,n,a){return function(o,i){var u=r.newXHR(),l=r.fixupUrl(a.url,u);if(u.open(a.method||"GET",l,!0,a.username,a.password),a.headers)try{for(var f=0,s;(s=a.headers[f])!=null;f++)u.setRequestHeader(s.field,s.value)}catch(p){o(p)}var c=function(p){return function(){o(new Error(p))}};return u.onerror=c(e),u.ontimeout=c(t),u.onload=function(){i({status:u.status,statusText:u.statusText,headers:u.getAllResponseHeaders().split(`\r+`).filter(function(p){return p.length>0}).map(function(p){var v=p.indexOf(":");return n(p.substring(0,v))(p.substring(v+2))}),body:u.response})},u.responseType=a.responseType,u.withCredentials=a.withCredentials,u.timeout=a.timeout,u.send(a.content),function(p,v,d){try{u.abort()}catch(m){return v(m)}return d()}}}var ZN=function(r){return function(t){for(var e=t.length,n=new Array(e),a=0;a<e;a++)n[a]=r(t[a]);return n}};var Zd={compose:function(r){return function(t){return function(e){return r(t(e))}}}},op=function(r){return r.compose};var Lt=function(r){return r.identity},Pt={identity:function(r){return r},Semigroupoid0:function(){return Zd}};var Er=!0;var dw=function(r){return function(t){return function(e){return function(n){return r(t(e))(t(n))}}}},Pe=function(r){return function(t){return function(e){return r(e)(t)}}},Dt=function(r){return function(t){return r}};var Ne=(function(){function r(){}return r.value=new r,r})();var W=function(r){return r.map},ip=function(r){var t=W(r);return function(e){return function(n){return t(n)(e)}}},hr=function(r){return W(r)(Dt(void 0))},Xd=function(r){var t=W(r);return function(e){return function(n){return t(Dt(n))(e)}}};var an={map:ZN};var XN=function(r){return function(t){return r.length===0?t:t.length===0?r:r.concat(t)}};var _r=function(r){return r.reflectSymbol};var ku=function(r){return function(t){return function(e){var n={};for(var a in e)({}).hasOwnProperty.call(e,a)&&(n[a]=e[a]);return n[r]=t,n}}};var pi={append:XN};var ae=function(r){return r.append},ry=function(r){var t=ae(r);return{append:function(e){return function(n){return function(a){return t(e(a))(n(a))}}}}};var Xr=function(r){return r.alt};var tX=Lt(Pt);var Oe=function(r){return r.apply};var ps=function(r){var t=Oe(r),e=W(r.Functor0());return function(n){return function(a){return t(e(Dt(tX))(n))(a)}}};var it=function(r){return r.pure},Kd=function(r){var t=it(r);return function(e){return function(n){if(!e)return n;if(e)return t(void 0);throw new Error("Failed pattern match at Control.Applicative (line 68, column 1 - line 68, column 65): "+[e.constructor.name,n.constructor.name])}}},Fo=function(r){var t=it(r);return function(e){return function(n){if(e)return n;if(!e)return t(void 0);throw new Error("Failed pattern match at Control.Applicative (line 63, column 1 - line 63, column 63): "+[e.constructor.name,n.constructor.name])}}},tm=function(r){var t=Oe(r.Apply0()),e=it(r);return function(n){return function(a){return t(e(n))(a)}}};var rX=Number.POSITIVE_INFINITY,nX=Number.NEGATIVE_INFINITY;var eO=function(r){return function(t){return function(e){return function(n){return function(a){return n<a?r:n===a?t:e}}}}};var rO=eO;var nO=eO;var aO=function(r){return function(t){return r===t}};var oO=aO;var iO=aO;var hw={eq:function(r){return function(t){return!0}}},Lo={eq:iO};var ny={eq:oO};var pe=function(r){return r.eq};var Zt=(function(){function r(){}return r.value=new r,r})(),jt=(function(){function r(){}return r.value=new r,r})(),ye=(function(){function r(){}return r.value=new r,r})();var iy={compare:function(r){return function(t){return ye.value}},Eq0:function(){return hw}},on=(function(){return{compare:nO(Zt.value)(ye.value)(jt.value),Eq0:function(){return Lo}}})();var Pa=(function(){return{compare:rO(Zt.value)(ye.value)(jt.value),Eq0:function(){return ny}}})();var oe=function(r){return r.compare};var fO=function(r){return r.toString()};var sO=function(r){var t=r.length;return'"'+r.replace(/[\0-\x1F\x7F"\\]/g,function(e,n){switch(e){case'"':case"\\":return"\\"+e;case"\x07":return"\\a";case"\b":return"\\b";case"\f":return"\\f";case`+`:return"\\n";case"\r":return"\\r";case"	":return"\\t";case"\v":return"\\v"}var a=n+1,o=a<t&&r[a]>="0"&&r[a]<="9"?"\\&":"";return"\\"+e.charCodeAt(0).toString(10)+o})+'"'};var ha={show:sO};var up={show:fO};var Yt=function(r){return r.show};var En=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),ar=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),Ol=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})();var cO=function(r){return r},_w=function(r){return r.to};var hX=Lt(Pt),B=(function(){function r(){}return r.value=new r,r})(),z=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})();var Je=function(r){return function(t){return function(e){if(e instanceof B)return r;if(e instanceof z)return t(e.value0);throw new Error("Failed pattern match at Data.Maybe (line 237, column 1 - line 237, column 51): "+[r.constructor.name,t.constructor.name,e.constructor.name])}}},lp=Je(!0)(Dt(!1)),ly=Je(!1)(Dt(!0));var Xe={map:function(r){return function(t){return t instanceof z?new z(r(t.value0)):B.value}}},_X=W(Xe);var Kn=function(r){return Je(r)(hX)},Vu=function(){return function(r){if(r instanceof z)return r.value0;throw new Error("Failed pattern match at Data.Maybe (line 288, column 1 - line 288, column 46): "+[r.constructor.name])}};var fp=function(r){var t=pe(r);return{eq:function(e){return function(n){return e instanceof B&&n instanceof B?!0:e instanceof z&&n instanceof z?t(e.value0)(n.value0):!1}}}};var Ul={apply:function(r){return function(t){if(r instanceof z)return _X(r.value0)(t);if(r instanceof B)return B.value;throw new Error("Failed pattern match at Data.Maybe (line 67, column 1 - line 69, column 30): "+[r.constructor.name,t.constructor.name])}},Functor0:function(){return Xe}};var Na={bind:function(r){return function(t){if(r instanceof z)return t(r.value0);if(r instanceof B)return B.value;throw new Error("Failed pattern match at Data.Maybe (line 125, column 1 - line 127, column 28): "+[r.constructor.name,t.constructor.name])}},Apply0:function(){return Ul}};var sp=(function(){return{pure:z.create,Apply0:function(){return Ul}}})();var fy="application/json",pO="application/x-www-form-urlencoded";var dO=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),mO=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),hO=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),_O=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),gO=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),gw=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),yw=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),yO=function(r){return r instanceof gw?new z(pO):r instanceof yw?new z(fy):B.value};var tt=function(r){return r};var hs=function(){return tt};var Dw=hs();var Lr=function(){return Dw};var sy=function(){return function(){return function(r){return Dw}}};var cp=function(){return function(){return function(){return function(){return function(r){return Dw}}}}};var bO=Lr();var cy=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),py=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),CO=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})(),TO=function(r){if(r instanceof cy||r instanceof py)return bO(r.value0);if(r instanceof CO)return r.value1;throw new Error("Failed pattern match at Affjax.RequestHeader (line 26, column 1 - line 26, column 33): "+[r.constructor.name])};var bw=function(r){if(r instanceof cy)return"Accept";if(r instanceof py)return"Content-Type";if(r instanceof CO)return r.value0;throw new Error("Failed pattern match at Affjax.RequestHeader (line 21, column 1 - line 21, column 32): "+[r.constructor.name])};var xO=Lt(Pt),Cw=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),Tw=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),xw=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),nm=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),ww=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),vy=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),wO=function(r){if(r instanceof Cw)return"arraybuffer";if(r instanceof Tw)return"blob";if(r instanceof xw)return"document";if(r instanceof nm||r instanceof ww)return"text";if(r instanceof vy)return"";throw new Error("Failed pattern match at Affjax.ResponseFormat (line 44, column 3 - line 50, column 19): "+[r.constructor.name])},SO=function(r){return r instanceof nm?new z(fy):B.value};var EO=(function(){return new nm(xO)})(),MO=(function(){return new vy(xO)})();var IO=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})();var ta=function(r){return r.discard};var Ut=function(r){return r.bind},gr=function(r){return Pe(Ut(r))},Hl=function(r){var t=gr(r);return function(e){return function(n){return function(a){return t(e)(n(a))}}}},FO=function(r){var t=Ut(r);return function(e){return function(n){return function(a){return t(e(a))(n)}}}};var ea={discard:function(r){return Ut(r)}};var _t=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),ht=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})();var Ro=function(r){return Je(new _t(r))(ht.create)};var Un={map:function(r){return function(t){if(t instanceof _t)return new _t(t.value0);if(t instanceof ht)return new ht(r(t.value0));throw new Error("Failed pattern match at Data.Either (line 0, column 0 - line 0, column 0): "+[t.constructor.name])}}},xX=W(Un);var br=function(r){return function(t){return function(e){if(e instanceof _t)return r(e.value0);if(e instanceof ht)return t(e.value0);throw new Error("Failed pattern match at Data.Either (line 208, column 1 - line 208, column 64): "+[r.constructor.name,t.constructor.name,e.constructor.name])}}};var am={apply:function(r){return function(t){if(r instanceof _t)return new _t(r.value0);if(r instanceof ht)return xX(r.value0)(t);throw new Error("Failed pattern match at Data.Either (line 70, column 1 - line 72, column 30): "+[r.constructor.name,t.constructor.name])}},Functor0:function(){return Un}};var di={bind:br(function(r){return function(t){return new _t(r)}})(function(r){return function(t){return t(r)}}),Apply0:function(){return am}};var Xi=(function(){return{pure:ht.create,Apply0:function(){return am}}})();var Sw={alt:function(r){return function(t){return r instanceof _t?t:r}},Functor0:function(){return Un}};var LO=function(r){return function(){return r}},RO=function(r){return function(t){return function(){return t(r())()}}};var UO=function(r){var t=Ut(r.Bind1()),e=Kd(r.Applicative0());return function(n){return function(a){return t(n)(function(o){return e(o)(a)})}}};var Oa=function(r){var t=Ut(r.Bind1()),e=it(r.Applicative0());return function(n){return function(a){return t(n)(function(o){return t(a)(function(i){return e(o(i))})})}}};var Ue=function(r){return r.mempty},my=function(r){var t=Ue(r),e=ry(r.Semigroup0());return{mempty:function(n){return t},Semigroup0:function(){return e}}};var kO=function(r,t,e){var n=0,a;return function(o){if(n===2)return a;if(n===1)throw new ReferenceError(r+" was needed before it finished initializing (module "+t+", line "+o+")",t,o);return n=1,a=e(),n=2,a}},$u={Applicative0:function(){return Mr},Bind1:function(){return _a}},_a={bind:RO,Apply0:function(){return WO(0)}},Mr={pure:LO,Apply0:function(){return WO(0)}},zO=kO("functorEffect","Effect",function(){return{map:tm(Mr)}}),WO=kO("applyEffect","Effect",function(){return{apply:Oa($u),Functor0:function(){return zO(0)}}}),_e=zO(20);function mi(r){return new Error(r)}function om(r){return r.message}function kl(r){return function(){throw r}}var BO=function(r){return kl(mi(r))};var Mn=function(r){return r.throwError};var Ki=function(r){return r.catchError};var im=function(r){var t=Ki(r),e=r.MonadThrow0().Monad0(),n=W(e.Bind1().Apply0().Functor0()),a=it(e.Applicative0());return function(o){return t(n(ht.create)(o))(function(i){return a(_t.create(i))})}};var tu=function(r){return r};var zl={map:function(r){return function(t){return r(t)}}};var $O={apply:function(r){return function(t){return r(t)}},Functor0:function(){return zl}},UX={bind:function(r){return function(t){return t(r)}},Apply0:function(){return $O}},qO={pure:tu,Apply0:function(){return $O}},na={Applicative0:function(){return qO},Bind1:function(){return UX}};var JO=function(r){return function(){return{value:r}}};var ue=function(r){return function(){return r.value}},jO=function(r){return function(t){return function(){var e=r(t.value);return t.value=e.state,e.value}}},or=function(r){return function(t){return function(){t.value=r}}};var kX=hr(_e),Ar=JO,Iw=jO,YO=function(r){return Iw(function(t){var e=r(t);return{state:e,value:e}})},vo=function(r){return function(t){return kX(YO(r)(t))}};var WX=gr(_a),GX=W(_e),Hn=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),An=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),No=function(r){return r.tailRecM};var QO={tailRecM:function(r){return function(t){var e=function(n){if(n instanceof An)return n.value0;throw new Error("Failed pattern match at Control.Monad.Rec.Class (line 137, column 30 - line 137, column 44): "+[n.constructor.name])};return function(){var a=WX(Ar)(r(t))();return(function(){for(;!(function(){var i=ue(a)();if(i instanceof Hn){var u=r(i.value0)();return or(u)(a)(),!1}if(i instanceof An)return!0;throw new Error("Failed pattern match at Control.Monad.Rec.Class (line 128, column 22 - line 133, column 28): "+[i.constructor.name])})(););return{}})(),GX(e)(ue(a))()}}},Monad0:function(){return $u}};var ZO=function(r){return function(t){return r&&t}},XO=function(r){return function(t){return r||t}},KO=function(r){return!r};var _s=function(r){return r.tt};var qu=function(r){return r.not};var Lw=function(r){return r.implies};var Gl=function(r){return r.ff};var Bl=function(r){return r.disj},ka={ff:!1,tt:!0,implies:function(r){return function(t){return Bl(ka)(qu(ka)(r))(t)}},conj:ZO,disj:XO,not:KO};var mp=function(r){return r.conj},Rw=function(r){var t=Gl(r),e=_s(r),n=Lw(r),a=mp(r),o=Bl(r),i=qu(r);return{ff:function(u){return t},tt:function(u){return e},implies:function(u){return function(l){return function(f){return n(u(f))(l(f))}}},conj:function(u){return function(l){return function(f){return a(u(f))(l(f))}}},disj:function(u){return function(l){return function(f){return o(u(f))(l(f))}}},not:function(u){return function(l){return i(u(l))}}}};var qt=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})();var kn=function(r){return r.value1};var Vl={map:function(r){return function(t){return new qt(t.value0,r(t.value1))}}};var zn=function(r){return r.value0};var e2=function(r){var t=pe(r);return function(e){var n=pe(e);return{eq:function(a){return function(o){return t(a.value0)(o.value0)&&n(a.value1)(o.value1)}}}}},lm=function(r){var t=oe(r),e=e2(r.Eq0());return function(n){var a=oe(n),o=e(n.Eq0());return{compare:function(i){return function(u){var l=t(i.value0)(u.value0);return l instanceof Zt?Zt.value:l instanceof jt?jt.value:a(i.value1)(u.value1)}},Eq0:function(){return o}}}};var Ju=function(r){return r.state};var $l=function(r){var t=Ju(r);return function(e){return t(function(n){return new qt(void 0,e(n))})}};var ju=function(r){return Ju(r)(function(t){return new qt(t,t)})};var r2={liftEffect:Lt(Pt),Monad0:function(){return $u}},sr=function(r){return r.liftEffect};var VX=W(Un);var Pw=function(r){return r};var Nw=function(r){return r};var vm=function(r){return function(t){return r(t)}},gy=function(r){var t=W(r);return{map:function(e){return vm(t(VX(e)))}}};var n2=function(r){return{Applicative0:function(){return Yu(r)},Bind1:function(){return _p(r)}}},_p=function(r){var t=Ut(r.Bind1()),e=it(r.Applicative0());return{bind:function(n){return function(a){return t(n)(br(function(o){return e(_t.create(o))})(function(o){var i=a(o);return i}))}},Apply0:function(){return Ow(r)}}},Ow=function(r){var t=gy(r.Bind1().Apply0().Functor0());return{apply:Oa(n2(r)),Functor0:function(){return t}}},Yu=function(r){return{pure:(function(){var t=it(r.Applicative0());return function(e){return Pw(t(ht.create(e)))}})(),Apply0:function(){return Ow(r)}}};var yy=function(r){var t=n2(r);return{throwError:(function(){var e=it(r.Applicative0());return function(n){return Pw(e(_t.create(n)))}})(),Monad0:function(){return t}}};var a2=function(r){var t=ae(r);return function(e){var n=e.Bind1(),a=Ut(n),o=it(e.Applicative0()),i=gy(n.Apply0().Functor0());return{alt:function(u){return function(l){return a(u)(function(f){if(f instanceof ht)return o(new ht(f.value0));if(f instanceof _t)return a(l)(function(s){if(s instanceof ht)return o(new ht(s.value0));if(s instanceof _t)return o(new _t(t(f.value0)(s.value0)));throw new Error("Failed pattern match at Control.Monad.Except.Trans (line 86, column 9 - line 88, column 49): "+[s.constructor.name])});throw new Error("Failed pattern match at Control.Monad.Except.Trans (line 82, column 5 - line 88, column 49): "+[f.constructor.name])})}},Functor0:function(){return i}}}};var qX=Lr();var dm=function(r){return qX(Nw(r))};var mm=null;function hm(r){return JSON.stringify(r)}function gp(r,t,e,n,a,o,i){return i==null?r():typeof i=="boolean"?t(i):typeof i=="number"?e(i):typeof i=="string"?n(i):Object.prototype.toString.call(i)==="[object Array]"?a(i):o(i)}function i2(r){return function(){var t={};for(var e in r)hasOwnProperty.call(r,e)&&(t[e]=r[e]);return t}}var yp={};function Uw(r){return r()}function u2(r,t,e,n){return e in n?t(n[e]):r}function Hw(r){return function(t){var e=[];for(var n in t)hasOwnProperty.call(t,n)&&e.push(r(n)(t[n]));return e}}var jX=Object.keys||Hw(function(r){return function(){return r}});var KX=function(r,t){if(r<1)return[];var e=new Array(r);return e.fill(t)},tK=function(r,t){for(var e=[],n=0,a=0;a<r;a++)e[n++]=t;return e},eK=typeof Array.prototype.fill=="function"?KX:tK,p2=(function(){function r(a,o){this.head=a,this.tail=o}var t={};function e(a){return function(o){return new r(a,o)}}function n(a){for(var o=[],i=0,u=a;u!==t;)o[i++]=u.head,u=u.tail;return o}return function(a,o){return n(a(e)(t)(o))}})(),nu=function(r){return r.length},v2=function(r,t,e){return e.length===0?r({}):t(e[0])(e.slice(1))};var d2=function(r,t,e,n){for(var a=0,o=n.length;a<o;a++)if(e(n[a]))return r(a);return t};var m2=function(r,t,e,n){if(e<0||e>=n.length)return t;var a=n.slice();return a.splice(e,1),r(a)};function nK(r){return r}var h2=nK;function aK(r){return r.slice()}var _2=aK;var g2=function(r,t){return t.push(r)};var Dy=function(t){return function(e){return function(){return t(e)}}},kw=function(t){return function(e){return function(n){return function(){return t(e,n)}}}};var y2=Dy(h2);var pK=Dy(_2),D2=function(r){return function(t){return function(){var n=pK(t)();return r(n)(),y2(n)()}}};var zw=kw(g2);var T2=function(r){return function(t){return function(e){for(var n=t,a=e.length,o=a-1;o>=0;o--)n=r(e[o])(n);return n}}},x2=function(r){return function(t){return function(e){for(var n=t,a=e.length,o=0;o<a;o++)n=r(n)(e[o]);return n}}};var ga=function(r){return r.empty};var _K=Lt(Pt),Wa=function(r){return r.bimap},Oo=function(r){var t=Wa(r);return function(e){return t(e)(_K)}};var Uo={bimap:function(r){return function(t){return function(e){if(e instanceof _t)return new _t(r(e.value0));if(e instanceof ht)return new ht(t(e.value0));throw new Error("Failed pattern match at Data.Bifunctor (line 32, column 1 - line 34, column 36): "+[r.constructor.name,t.constructor.name,e.constructor.name])}}}};var Bw=function(r){return r};var TK={append:function(r){return function(t){return r instanceof z?r:t}}};var Cy=(function(){return{mempty:B.value,Semigroup0:function(){return TK}}})();var bs=function(r){return r};var xK=function(r){var t=Bl(r);return{append:function(e){return function(n){return t(e)(n)}}}};var bp=function(r){var t=xK(r);return{mempty:Gl(r),Semigroup0:function(){return t}}};var Dm=function(r){return r};var wK=function(r){var t=op(r);return{append:function(e){return function(n){return t(e)(n)}}}};var bm=function(r){var t=wK(r.Semigroupoid0());return{mempty:Lt(r),Semigroup0:function(){return t}}};var SK=cp()()()(),un=function(r){return r.foldr};var Cr=function(r){var t=ps(r.Apply0()),e=it(r);return function(n){var a=un(n);return function(o){return a(function(i){return t(o(i))})(e(void 0))}}},xy=function(r){var t=Cr(r);return function(e){return Pe(t(e))}};var mn=function(r){return r.foldl};var hn={foldr:function(r){return function(t){return function(e){if(e instanceof B)return t;if(e instanceof z)return r(e.value0)(t);throw new Error("Failed pattern match at Data.Foldable (line 138, column 1 - line 144, column 27): "+[r.constructor.name,t.constructor.name,e.constructor.name])}}},foldl:function(r){return function(t){return function(e){if(e instanceof B)return t;if(e instanceof z)return r(t)(e.value0);throw new Error("Failed pattern match at Data.Foldable (line 138, column 1 - line 144, column 27): "+[r.constructor.name,t.constructor.name,e.constructor.name])}}},foldMap:function(r){var t=Ue(r);return function(e){return function(n){if(n instanceof B)return t;if(n instanceof z)return e(n.value0);throw new Error("Failed pattern match at Data.Foldable (line 138, column 1 - line 144, column 27): "+[e.constructor.name,n.constructor.name])}}}};var wy={foldr:function(r){return function(t){return function(e){if(e instanceof _t)return t;if(e instanceof ht)return r(e.value0)(t);throw new Error("Failed pattern match at Data.Foldable (line 181, column 1 - line 187, column 28): "+[r.constructor.name,t.constructor.name,e.constructor.name])}}},foldl:function(r){return function(t){return function(e){if(e instanceof _t)return t;if(e instanceof ht)return r(t)(e.value0);throw new Error("Failed pattern match at Data.Foldable (line 181, column 1 - line 187, column 28): "+[r.constructor.name,t.constructor.name,e.constructor.name])}}},foldMap:function(r){var t=Ue(r);return function(e){return function(n){if(n instanceof _t)return t;if(n instanceof ht)return e(n.value0);throw new Error("Failed pattern match at Data.Foldable (line 181, column 1 - line 187, column 28): "+[e.constructor.name,n.constructor.name])}}}};var I2=function(r){var t=un(r);return function(e){var n=ae(e.Semigroup0()),a=Ue(e);return function(o){return t(function(i){return function(u){return n(o(i))(u)}})(a)}}},In={foldr:T2,foldl:x2,foldMap:function(r){return I2(In)(r)}};var aa=function(r){return r.foldMap};var Tp=function(r){var t=aa(r);return function(e){return SK(bs)(t(bp(e)))}};var Tm=function(r){return function(t){return function(e){return r(t,e)}}},xm=function(r){return function(t){return function(e){return function(n){return r(t,e,n)}}}},xp=function(r){return function(t){return function(e){return function(n){return function(a){return r(t,e,n,a)}}}}};var F2=function(r){return function(t){for(var e=t.length,n=Array(e),a=0;a<e;a++)n[a]=r(a)(t[a]);return n}};var Sy=function(r){return r};var $w={map:function(r){return function(t){return t}}};var IK=function(r){var t=ae(r);return{apply:function(e){return function(n){return t(e)(n)}},Functor0:function(){return $w}}},qw=function(r){var t=Ue(r),e=IK(r.Semigroup0());return{pure:function(n){return t},Apply0:function(){return e}}};var Ts=function(r){return r.mapWithIndex};var Sp={mapWithIndex:F2,Functor0:function(){return an}};var L2=(function(){function r(a){return[a]}function t(a){return function(o){return[a,o]}}function e(a){return function(o){return function(i){return[a,o,i]}}}function n(a){return function(o){return a.concat(o)}}return function(a){return function(o){return function(i){return function(u){return function(l){function f(s,c){switch(c-s){case 0:return i([]);case 1:return o(r)(u(l[s]));case 2:return a(o(t)(u(l[s])))(u(l[s+1]));case 3:return a(a(o(e)(u(l[s])))(u(l[s+1])))(u(l[s+2]));default:var p=s+Math.floor((c-s)/4)*2;return a(o(n)(f(s,p)))(f(p,c))}}return f(0,l.length)}}}}}})();var ftt=Lt(Pt),tn=function(r){return r.traverse};var $2=function(r){var t=tn(r);return function(e){return t(e)(ftt)}},au={traverse:function(r){var t=r.Apply0();return L2(Oe(t))(W(t.Functor0()))(it(r))},sequence:function(r){return $2(au)(r)},Functor0:function(){return an},Foldable1:function(){return In}},Jl=function(r){return r.sequence};var xtt=Vu();var Fm=(function(){return xm(v2)(Dt(B.value))(function(r){return function(t){return new z({head:r,tail:t})}})})();var Fy=function(r){return function(t){return D2(zw(t))(r)()}};var Fn=function(r){return[r]};var Ly=function(r){return Tm(p2)(un(r))};var j2=(function(){return xp(d2)(z.create)(B.value)})();var Y2=(function(){return xp(m2)(z.create)(B.value)})(),Xw=function(r){return function(t){return function(e){return e.length===0?[]:Je(e)(function(n){return xtt(Y2(n)(e))})(j2(r(t))(e))}}};var wtt=un(In),Q2=Ts(Sp),Stt=mn(In);var Lm=function(r){return r.foldrWithIndex};var Ett=function(r){var t=Lm(r);return function(e){var n=ae(e.Semigroup0()),a=Ue(e);return function(o){return t(function(i){return function(u){return function(l){return n(o(i)(u))(l)}}})(a)}}},Ry={foldrWithIndex:function(r){return function(t){var e=wtt(function(a){return function(o){return r(a.value0)(a.value1)(o)}})(t),n=Q2(qt.create);return function(a){return e(n(a))}}},foldlWithIndex:function(r){return function(t){var e=Stt(function(a){return function(o){return r(o.value0)(a)(o.value1)}})(t),n=Q2(qt.create);return function(a){return e(n(a))}}},foldMapWithIndex:function(r){return Ett(Ry)(r)},Foldable0:function(){return In}};var Att=function(r){var t=Jl(r.Traversable2()),e=Ts(r.FunctorWithIndex0());return function(n){var a=t(n);return function(o){var i=e(o);return function(u){return a(i(u))}}}},Ap=function(r){return r.traverseWithIndex};var Py={traverseWithIndex:function(r){return Att(Py)(r)},FunctorWithIndex0:function(){return Sp},FoldableWithIndex1:function(){return Ry},Traversable2:function(){return au}};var Ny=function(){return{}};var Kw=function(r){return function(t){return function(){return delete t[r],t}}};var Ott=i2;var Utt=function(r){return function(t){return Uw(function(){var n=Ott(t)();return r(n)(),n})}};var iu=(function(){return xp(u2)(B.value)(z.create)})();var eS=function(r){return Utt(Kw(r))};var Htt=function(r){return function(t){return function(e){return e(r)(t)}}},rS=(function(){return Htt(B.value)(z.create)})();var K2=yp;var Hy=function(r){return function(t){return function(e){return gp(Dt(r),Dt(r),Dt(r),t,Dt(r),Dt(r),e)}}};var ky=rS(Hy),tU=function(r){return function(t){return function(e){return gp(Dt(r),Dt(r),Dt(r),Dt(r),Dt(r),t,e)}}};var ws=rS(tU),eU=function(r){return function(t){return function(e){return gp(Dt(r),Dt(r),t,Dt(r),Dt(r),Dt(r),e)}}};var zy=function(r){return function(t){return function(e){return gp(Dt(r),Dt(r),Dt(r),Dt(r),t,Dt(r),e)}}};var nS=rS(zy),aS=function(r){return function(t){return function(e){return function(n){return function(a){return function(o){return function(i){return gp(r,t,e,n,a,o,i)}}}}}}};function rU(r,t,e){try{return t(JSON.parse(e))}catch(n){return r(n.message)}}var nU=function(r){return rU(_t.create,ht.create,r)};var Rm=function(r){return function(t){return t.join(r)}};function Jtt(r){return r.replace(/[!'()*]/g,function(t){return"%"+t.charCodeAt(0).toString(16)})}function aU(r,t,e){try{return t(Jtt(encodeURIComponent(e)).replace(/%20/g,"+"))}catch(n){return r(n)}}var Wy=(function(){return xm(aU)(Dt(B.value))(z.create)})();var Qtt=Oe(Ul),oU=W(Xe),Ztt=tn(au)(sp);var Xtt=function(r){return r};var iU=(function(){var r=function(n){if(n.value1 instanceof B)return Wy(n.value0);if(n.value1 instanceof z)return Qtt(oU(function(a){return function(o){return a+("="+o)}})(Wy(n.value0)))(Wy(n.value1.value0));throw new Error("Failed pattern match at Data.FormURLEncoded (line 37, column 16 - line 39, column 114): "+[n.constructor.name])},t=oU(Rm("&")),e=Ztt(r);return function(n){return t(e(Xtt(n)))}})();var tet=(function(){function r(){}return r.value=new r,r})(),iS=(function(){function r(){}return r.value=new r,r})(),eet=(function(){function r(){}return r.value=new r,r})(),uU=(function(){function r(){}return r.value=new r,r})(),lU=(function(){function r(){}return r.value=new r,r})(),fU=(function(){function r(){}return r.value=new r,r})(),ret=(function(){function r(){}return r.value=new r,r})(),net=(function(){function r(){}return r.value=new r,r})(),aet=(function(){function r(){}return r.value=new r,r})(),oet=(function(){function r(){}return r.value=new r,r})(),iet=(function(){function r(){}return r.value=new r,r})(),uet=(function(){function r(){}return r.value=new r,r})(),fet=(function(){function r(){}return r.value=new r,r})(),set=(function(){function r(){}return r.value=new r,r})(),cet=(function(){function r(){}return r.value=new r,r})(),sU=(function(){function r(){}return r.value=new r,r})();var pet=function(r){return r},vet={show:function(r){if(r instanceof tet)return"OPTIONS";if(r instanceof iS)return"GET";if(r instanceof eet)return"HEAD";if(r instanceof uU)return"POST";if(r instanceof lU)return"PUT";if(r instanceof fU)return"DELETE";if(r instanceof ret)return"TRACE";if(r instanceof net)return"CONNECT";if(r instanceof aet)return"PROPFIND";if(r instanceof oet)return"PROPPATCH";if(r instanceof iet)return"MKCOL";if(r instanceof uet)return"COPY";if(r instanceof fet)return"MOVE";if(r instanceof set)return"LOCK";if(r instanceof cet)return"UNLOCK";if(r instanceof sU)return"PATCH";throw new Error("Failed pattern match at Data.HTTP.Method (line 43, column 1 - line 59, column 23): "+[r.constructor.name])}};var cU=br(Yt(vet))(pet);var hi=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})();var uS=function(r){var t=ga(r);return function(e){return new hi(e,t)}};var be=(function(){function r(){}return r.value=new r,r})(),De=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})(),lS=function(r){return r},yet=function(r){return new De(r.value0,r.value1)};var Det=function(r){var t=function(e){return function(n){var a=e,o=!1,i;function u(l,f){if(f instanceof De&&f.value1 instanceof De&&f.value1.value1 instanceof De){a=new De(f,l),n=f.value1.value1.value1;return}var s=function(p){return p instanceof De&&p.value1 instanceof De&&p.value1.value1 instanceof be?new De(r(p.value0),new De(r(p.value1.value0),be.value)):p instanceof De&&p.value1 instanceof be?new De(r(p.value0),be.value):be.value},c=function(p){return function(v){var d=p,m=!1,h;function _(g,y){if(g instanceof De&&g.value0 instanceof De&&g.value0.value1 instanceof De&&g.value0.value1.value1 instanceof De){d=g.value1,v=new De(r(g.value0.value0),new De(r(g.value0.value1.value0),new De(r(g.value0.value1.value1.value0),y)));return}return m=!0,y}for(;!m;)h=_(d,v);return h}};return o=!0,c(l)(s(f))}for(;!o;)i=u(a,n);return i}};return t(be.value)},dU={map:Det};var ya={foldr:function(r){return function(t){var e=(function(){var a=function(o){return function(i){var u=o,l=!1,f;function s(c,p){if(p instanceof be)return l=!0,c;if(p instanceof De){u=new De(p.value0,c),i=p.value1;return}throw new Error("Failed pattern match at Data.List.Types (line 107, column 7 - line 107, column 23): "+[c.constructor.name,p.constructor.name])}for(;!l;)f=s(u,i);return f}};return a(be.value)})(),n=mn(ya)(Pe(r))(t);return function(a){return n(e(a))}}},foldl:function(r){var t=function(e){return function(n){var a=e,o=!1,i;function u(l,f){if(f instanceof be)return o=!0,l;if(f instanceof De){a=r(l)(f.value0),n=f.value1;return}throw new Error("Failed pattern match at Data.List.Types (line 111, column 12 - line 113, column 30): "+[f.constructor.name])}for(;!o;)i=u(a,n);return i}};return t},foldMap:function(r){var t=ae(r.Semigroup0()),e=Ue(r);return function(n){return mn(ya)(function(a){var o=t(a);return function(i){return o(n(i))}})(e)}}};var bet=un(ya);var fS={append:function(r){return function(t){return bet(De.create)(t)(r)}}},mU=ae(fS);var hU={append:function(r){return function(t){return new hi(r.value0,mU(r.value1)(yet(t)))}}};var Cet={alt:mU,Functor0:function(){return dU}},_U=(function(){return{empty:be.value,Alt0:function(){return Cet}}})();var Ss=(function(){var r=function(t){return function(e){var n=t,a=!1,o;function i(u,l){if(l instanceof be)return a=!0,u;if(l instanceof De){n=new De(l.value0,u),e=l.value1;return}throw new Error("Failed pattern match at Data.List (line 368, column 3 - line 368, column 19): "+[u.constructor.name,l.constructor.name])}for(;!a;)o=i(n,e);return o}};return r(be.value)})();var gU=function(r){return r instanceof be};var yU=function(r){return r()};var DU=function(r){throw new Error(r)};var bU=function(){return DU};var Ret=bU(),Pet=yU,Es=function(r){return Pet(function(){return Ret(r)})};var Ms=(function(){var r=uS(_U);return function(t){return lS(r(t))}})();var TU=function(r){return r.value0};var xU=function(r){return function(t){return new hi(r,new De(t.value0,t.value1))}};function wU(r,t,e){return r==null?t:e(r)}function sS(r){return r}var ba=Je(null)(sS),dr=function(r){return wU(r,B.value,z.create)};var oa=(function(){var r={},t="Pure",e="Throw",n="Catch",a="Sync",o="Async",i="Bind",u="Bracket",l="Fork",f="Sequential",s="Map",c="Apply",p="Alt",v="Cons",d="Resume",m="Release",h="Finalizer",_="Finalized",g="Forked",y="Fiber",D="Thunk";function b(J,ot,At,Mt){this.tag=J,this._1=ot,this._2=At,this._3=Mt}function C(J){var ot=function(At,Mt,ut){return new b(J,At,Mt,ut)};return ot.tag=J,ot}function x(J){return new b(t,void 0)}function w(J){try{J()}catch(ot){setTimeout(function(){throw ot},0)}}function S(J,ot,At){try{return ot(At())}catch(Mt){return J(Mt)}}function E(J,ot,At){try{return ot(At)()}catch(Mt){return At(J(Mt))(),x}}var M=(function(){var J=1024,ot=0,At=0,Mt=new Array(J),ut=!1;function $(){var Ct;for(ut=!0;ot!==0;)ot--,Ct=Mt[At],Mt[At]=void 0,At=(At+1)%J,Ct();ut=!1}return{isDraining:function(){return ut},enqueue:function(Ct){var ct,ft;ot===J&&(ft=ut,$(),ut=ft),Mt[(At+ot)%J]=Ct,ot++,ut||$()}}})();function I(J){var ot={},At=0,Mt=0;return{register:function(ut){var $=At++;ut.onComplete({rethrow:!0,handler:function(Ct){return function(){Mt--,delete ot[$]}}})(),ot[$]=ut,Mt++},isEmpty:function(){return Mt===0},killAll:function(ut,$){return function(){if(Mt===0)return $();var Ct=0,ct={};function ft(re){ct[re]=ot[re].kill(ut,function(Bt){return function(){delete ct[re],Ct--,J.isLeft(Bt)&&J.fromLeft(Bt)&&setTimeout(function(){throw J.fromLeft(Bt)},0),Ct===0&&$()}})()}for(var It in ot)ot.hasOwnProperty(It)&&(Ct++,ft(It));return ot={},At=0,Mt=0,function(re){return new b(a,function(){for(var Bt in ct)ct.hasOwnProperty(Bt)&&ct[Bt]()})}}}}}var F=0,L=1,R=2,P=3,k=4,H=5,G=6;function j(J,ot,At){var Mt=0,ut=F,$=At,Ct=null,ct=null,ft=null,It=null,re=null,Bt=0,rr=0,Ge=null,Sr=!0;function Sn(te){for(var ee,Be,qe;;)switch(ee=null,Be=null,qe=null,ut){case R:ut=L;try{$=ft($),It===null?ft=null:(ft=It._1,It=It._2)}catch(On){ut=H,Ct=J.left(On),$=null}break;case P:J.isLeft($)?(ut=H,Ct=$,$=null):ft===null?ut=H:(ut=R,$=J.fromRight($));break;case L:switch($.tag){case i:ft&&(It=new b(v,ft,It)),ft=$._2,ut=L,$=$._1;break;case t:ft===null?(ut=H,$=J.right($._1)):(ut=R,$=$._1);break;case a:ut=P,$=S(J.left,J.right,$._1);break;case o:ut=k,$=E(J.left,$._1,function(On){return function(){Mt===te&&(Mt++,M.enqueue(function(){Mt===te+1&&(ut=P,$=On,Sn(Mt))}))}});return;case e:ut=H,Ct=J.left($._1),$=null;break;case n:ft===null?re=new b(v,$,re,ct):re=new b(v,$,new b(v,new b(d,ft,It),re,ct),ct),ft=null,It=null,ut=L,$=$._1;break;case u:Bt++,ft===null?re=new b(v,$,re,ct):re=new b(v,$,new b(v,new b(d,ft,It),re,ct),ct),ft=null,It=null,ut=L,$=$._1;break;case l:ut=P,ee=j(J,ot,$._2),ot&&ot.register(ee),$._1&&ee.run(),$=J.right(ee);break;case f:ut=L,$=xt(J,ot,$._1);break}break;case H:if(ft=null,It=null,re===null)ut=G,$=ct||Ct||$;else switch(ee=re._3,qe=re._1,re=re._2,qe.tag){case n:ct&&ct!==ee&&Bt===0?ut=H:Ct&&(ut=L,$=qe._2(J.fromLeft(Ct)),Ct=null);break;case d:ct&&ct!==ee&&Bt===0||Ct?ut=H:(ft=qe._1,It=qe._2,ut=R,$=J.fromRight($));break;case u:Bt--,Ct===null&&(Be=J.fromRight($),re=new b(v,new b(m,qe._2,Be),re,ee),(ct===ee||Bt>0)&&(ut=L,$=qe._3(Be)));break;case m:re=new b(v,new b(_,$,Ct),re,ct),ut=L,ct&&ct!==ee&&Bt===0?$=qe._1.killed(J.fromLeft(ct))(qe._2):Ct?$=qe._1.failed(J.fromLeft(Ct))(qe._2):$=qe._1.completed(J.fromRight($))(qe._2),Ct=null,Bt++;break;case h:Bt++,re=new b(v,new b(_,$,Ct),re,ct),ut=L,$=qe._1;break;case _:Bt--,ut=H,$=qe._1,Ct=qe._2;break}break;case G:for(var Wr in Ge)Ge.hasOwnProperty(Wr)&&(Sr=Sr&&Ge[Wr].rethrow,w(Ge[Wr].handler($)));Ge=null,ct&&Ct?setTimeout(function(){throw J.fromLeft(Ct)},0):J.isLeft($)&&Sr&&setTimeout(function(){if(Sr)throw J.fromLeft($)},0);return;case F:ut=L;break;case k:return}}function ke(te){return function(){if(ut===G)return Sr=Sr&&te.rethrow,te.handler($)(),function(){};var ee=rr++;return Ge=Ge||{},Ge[ee]=te,function(){Ge!==null&&delete Ge[ee]}}}function ne(te,ee){return function(){if(ut===G)return ee(J.right(void 0))(),function(){};var Be=ke({rethrow:!1,handler:function(){return ee(J.right(void 0))}})();switch(ut){case F:ct=J.left(te),ut=G,$=ct,Sn(Mt);break;case k:ct===null&&(ct=J.left(te)),Bt===0&&(ut===k&&(re=new b(v,new b(h,$(te)),re,ct)),ut=H,$=null,Ct=null,Sn(++Mt));break;default:ct===null&&(ct=J.left(te)),Bt===0&&(ut=H,$=null,Ct=null)}return Be}}function Ce(te){return function(){var ee=ke({rethrow:!1,handler:te})();return ut===F&&Sn(Mt),ee}}return{kill:ne,join:Ce,onComplete:ke,isSuspended:function(){return ut===F},run:function(){ut===F&&(M.isDraining()?Sn(Mt):M.enqueue(function(){Sn(Mt)}))}}}function rt(J,ot,At,Mt){var ut=0,$={},Ct=0,ct={},ft=new Error("[ParAff] Early exit"),It=null,re=r;function Bt(ke,ne,Ce){var te=ne,ee=null,Be=null,qe=0,Wr={},On,Qd;t:for(;;)switch(On=null,te.tag){case g:if(te._3===r&&(On=$[te._1],Wr[qe++]=On.kill(ke,function($Z){return function(){qe--,qe===0&&Ce($Z)()}})),ee===null)break t;te=ee._2,Be===null?ee=null:(ee=Be._1,Be=Be._2);break;case s:te=te._2;break;case c:case p:ee&&(Be=new b(v,ee,Be)),ee=te,te=te._1;break}if(qe===0)Ce(J.right(void 0))();else for(Qd=0,On=qe;Qd<On;Qd++)Wr[Qd]=Wr[Qd]();return Wr}function rr(ke,ne,Ce){var te,ee,Be,qe,Wr,On;for(J.isLeft(ke)?(te=ke,ee=null):(ee=ke,te=null);;){if(Be=null,qe=null,Wr=null,On=null,It!==null)return;if(ne===null){Mt(te||ee)();return}if(ne._3!==r)return;switch(ne.tag){case s:te===null?(ne._3=J.right(ne._1(J.fromRight(ee))),ee=ne._3):ne._3=te;break;case c:if(Be=ne._1._3,qe=ne._2._3,te){if(ne._3=te,Wr=!0,On=Ct++,ct[On]=Bt(ft,te===Be?ne._2:ne._1,function(){return function(){delete ct[On],Wr?Wr=!1:Ce===null?rr(te,null,null):rr(te,Ce._1,Ce._2)}}),Wr){Wr=!1;return}}else{if(Be===r||qe===r)return;ee=J.right(J.fromRight(Be)(J.fromRight(qe))),ne._3=ee}break;case p:if(Be=ne._1._3,qe=ne._2._3,Be===r&&J.isLeft(qe)||qe===r&&J.isLeft(Be))return;if(Be!==r&&J.isLeft(Be)&&qe!==r&&J.isLeft(qe))te=ee===Be?qe:Be,ee=null,ne._3=te;else if(ne._3=ee,Wr=!0,On=Ct++,ct[On]=Bt(ft,ee===Be?ne._2:ne._1,function(){return function(){delete ct[On],Wr?Wr=!1:Ce===null?rr(ee,null,null):rr(ee,Ce._1,Ce._2)}}),Wr){Wr=!1;return}break}Ce===null?ne=null:(ne=Ce._1,Ce=Ce._2)}}function Ge(ke){return function(ne){return function(){delete $[ke._1],ke._3=ne,rr(ne,ke._2._1,ke._2._2)}}}function Sr(){var ke=L,ne=At,Ce=null,te=null,ee,Be;t:for(;;)switch(ee=null,Be=null,ke){case L:switch(ne.tag){case s:Ce&&(te=new b(v,Ce,te)),Ce=new b(s,ne._1,r,r),ne=ne._2;break;case c:Ce&&(te=new b(v,Ce,te)),Ce=new b(c,r,ne._2,r),ne=ne._1;break;case p:Ce&&(te=new b(v,Ce,te)),Ce=new b(p,r,ne._2,r),ne=ne._1;break;default:Be=ut++,ke=H,ee=ne,ne=new b(g,Be,new b(v,Ce,te),r),ee=j(J,ot,ee),ee.onComplete({rethrow:!1,handler:Ge(ne)})(),$[Be]=ee,ot&&ot.register(ee)}break;case H:if(Ce===null)break t;Ce._1===r?(Ce._1=ne,ke=L,ne=Ce._2,Ce._2=r):(Ce._2=ne,ne=Ce,te===null?Ce=null:(Ce=te._1,te=te._2))}for(re=ne,Be=0;Be<ut;Be++)$[Be].run()}function Sn(ke,ne){It=J.left(ke);var Ce;for(var te in ct)if(ct.hasOwnProperty(te)){Ce=ct[te];for(te in Ce)Ce.hasOwnProperty(te)&&Ce[te]()}ct=null;var ee=Bt(ke,re,ne);return function(Be){return new b(o,function(qe){return function(){for(var Wr in ee)ee.hasOwnProperty(Wr)&&ee[Wr]();return x}})}}return Sr(),function(ke){return new b(o,function(ne){return function(){return Sn(ke,ne)}})}}function xt(J,ot,At){return new b(o,function(Mt){return function(){return rt(J,ot,At,Mt)}})}return b.EMPTY=r,b.Pure=C(t),b.Throw=C(e),b.Catch=C(n),b.Sync=C(a),b.Async=C(o),b.Bind=C(i),b.Bracket=C(u),b.Fork=C(l),b.Seq=C(f),b.ParMap=C(s),b.ParApply=C(c),b.ParAlt=C(p),b.Fiber=j,b.Supervisor=I,b.Scheduler=M,b.nonCanceler=x,b})(),SU=oa.Pure,EU=oa.Throw;function MU(r){return function(t){return oa.Catch(r,t)}}function AU(r){return function(t){return t.tag===oa.Pure.tag?oa.Pure(r(t._1)):oa.Bind(t,function(e){return oa.Pure(r(e))})}}function IU(r){return function(t){return oa.Bind(r,t)}}function cS(r){return function(t){return oa.Fork(r,t)}}var FU=oa.Sync;function LU(r){return function(t){return oa.ParMap(r,t)}}function RU(r){return function(t){return oa.ParApply(r,t)}}var Xu=oa.Async;function By(r){return function(t){return function(e){return oa.Bracket(r,t,e)}}}function PU(r,t){return function(){return oa.Fiber(r,null,t)}}var NU=oa.Seq;var Vet=Lt(Pt);var _i=function(r){return r.dimap};var $y=function(r){var t=_i(r);return function(e){return t(Vet)(e)}};var Op=function(r){return r.sequential},jl=function(r){return r.parallel};var Jet=Lt(Pt),jet=function(r){var t=Op(r),e=jl(r);return function(n){var a=Cr(n);return function(o){var i=a(o);return function(u){var l=i(function(f){return e(u(f))});return function(f){return t(l(f))}}}}};var Nm=function(r){var t=jet(r);return function(e){var n=t(e);return function(a){return n(a)(Jet)}}};var Jy=function(r){return r()};var Zet=function(r,t,e){var n=0,a;return function(o){if(n===2)return a;if(n===1)throw new ReferenceError(r+" was needed before it finished initializing (module "+t+", line "+o+")",t,o);return n=1,a=e(),n=2,a}},Xet=it(Mr),BU=hr(_e),VU=W(_e);var Ket=function(r){return r},$U=cS(!1);var trt={map:LU},Yl={map:AU},ert=W(Yl),qU=cS(!0),rrt=(function(){var r=function(n){if(n instanceof ht)return n.value0;if(n instanceof _t)return Es("unsafeFromRight: Left");throw new Error("Failed pattern match at Effect.Aff (line 412, column 21 - line 414, column 54): "+[n.constructor.name])},t=function(n){if(n instanceof _t)return n.value0;if(n instanceof ht)return Es("unsafeFromLeft: Right");throw new Error("Failed pattern match at Effect.Aff (line 407, column 20 - line 409, column 55): "+[n.constructor.name])},e=function(n){if(n instanceof _t)return!0;if(n instanceof ht)return!1;throw new Error("Failed pattern match at Effect.Aff (line 402, column 12 - line 404, column 21): "+[n.constructor.name])};return{isLeft:e,fromLeft:t,fromRight:r,left:_t.create,right:ht.create}})(),JU=function(r){return PU(rrt,r)},nrt=function(r){return function(){var e=JU(r)();return e.run(),e}};var art=function(r){return function(t){return By(r)({killed:Dt(t),failed:Dt(t),completed:Dt(t)})}},jU={apply:RU,Functor0:function(){return trt}};var Up={Applicative0:function(){return ia},Bind1:function(){return _n}},_n={bind:IU,Apply0:function(){return _S(0)}},ia={pure:SU,Apply0:function(){return _S(0)}},_S=Zet("applyAff","Effect.Aff",function(){return{apply:Oa(Up),Functor0:function(){return Yl}}}),ort=_S(73),Yy=it(ia),YU=Ut(_n);var irt=gr(_n);var QU=function(r){return function(t){return art(Yy(void 0))(Dt(r))(Dt(t))}};var As={parallel:tt,sequential:NU,Apply0:function(){return ort},Apply1:function(){return jU}},urt=jl(As),Hp={pure:function(r){return urt(Yy(r))},Apply0:function(){return jU}};var ho={liftEffect:FU,Monad0:function(){return Up}},jy=sr(ho),Qy=function(r){return Ket(Dt(jy(r)))},Om=function(r){return Xu(function(t){return VU(Qy)(r.join(t))})},ZU={map:function(r){return function(t){return Jy(JU(ert(r)(Om(t))))}}};var Um=function(r){return function(t){return YU(jy(t.isSuspended))(function(e){return e?jy(BU(t.kill(r,Dt(Xet(void 0))))):Xu(function(n){return VU(Qy)(t.kill(r,n))})})}};var Zy={throwError:EU,Monad0:function(){return Up}},Xy={catchError:MU,MonadThrow0:function(){return Zy}},lrt=im(Xy);var frt=function(r){return function(t){return nrt(irt(function(e){return jy(r(e))})(lrt(t)))}},Ky=function(r){return function(t){return BU(frt(r)(t))}};var XU={tailRecM:function(r){var t=function(e){return YU(r(e))(function(n){if(n instanceof An)return Yy(n.value0);if(n instanceof Hn)return t(n.value0);throw new Error("Failed pattern match at Effect.Aff (line 104, column 7 - line 106, column 23): "+[n.constructor.name])})};return t},Monad0:function(){return Up}};var tD=Dt(Yy(void 0));var nH=function(r){return Xu(function(t){return function(){var n=r(function(a){return t(_t.create(a))()},function(a){return t(ht.create(a))()});return function(a){return Xu(function(o){return function(){return n(a,function(u){return o(_t.create(u))()},function(u){return o(ht.create(u))()}),tD}})}}})};function Ku(r){return typeof r}function Hm(r){return Object.prototype.toString.call(r).slice(8,-1)}function km(r){return r===null}function zm(r){return r===void 0}var aH=function(r){return function(t){return function(e){return(e|0)===e?r(e):t}}},Wm=function(r){return r};var eD=Math.log;var rD=(function(){return aH(z.create)(B.value)})();var Grt=Yt(ha),Brt=Yt(up),Vrt=it(Xi);var Bm=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),Vm=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})(),vH=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})(),DS=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})(),Ql=tt,$rt=tt;var aD=function(r){if(r instanceof Bm)return r.value0;if(r instanceof vH)return"Error at array index "+(Brt(r.value0)+(": "+aD(r.value1)));if(r instanceof DS)return"Error at property "+(Grt(r.value0)+(": "+aD(r.value1)));if(r instanceof Vm)return"Type mismatch: expected "+(r.value0+(", found "+r.value1));throw new Error("Failed pattern match at Foreign (line 78, column 1 - line 78, column 45): "+[r.constructor.name])};var $m=function(r){var t=Mn(yy(r));return function(e){return t(Ms(e))}};var oD=function(r){var t=it(Yu(r)),e=$m(r);return function(n){return function(a){if(Hm(a)===n)return t($rt(a));if(Er)return e(new Vm(n,Hm(a)));throw new Error("Failed pattern match at Foreign (line 123, column 1 - line 123, column 104): "+[n.constructor.name,a.constructor.name])}}};var qrt=function(r){return oD(r)("Number")},dH=function(r){var t=W(r.Bind1().Apply0().Functor0()),e=qrt(r);return function(n){var a=new _t(Ms(new Vm("Int",Hm(n)))),o=(function(){var i=Je(a)(Vrt);return function(u){return i(rD(u))}})();return vm(t(br(Dt(a))(o)))(e(n))}},mH=function(r){return oD(r)("String")};var bS=it(Yu(na)),Jrt=$m(na),Is=oD(na),hH=Xr(a2(hU)(na)),jrt=Hl(_p(na)),uD=W(Xe),Yrt=Tp(In)(ka),Qrt=pe(Lo),Zrt=gr(Na),Xrt=W(an),Krt=ip(Yl),tnt=im(Xy),ent=it(ia);var CS=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),TS=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})(),xS=(function(){function r(){}return r.value=new r,r})(),wS=(function(){function r(){}return r.value=new r,r})(),SS=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),_H=function(r){return function(t){var e=function(s){return s===""?bS(K2):br(function(c){return Jrt(Bm.create(c))})(bS)(nU(s))},n=(function(){if(t.responseFormat instanceof Cw)return Is("ArrayBuffer");if(t.responseFormat instanceof Tw)return Is("Blob");if(t.responseFormat instanceof xw)return function(s){return hH(Is("Document")(s))(hH(Is("XMLDocument")(s))(Is("HTMLDocument")(s)))};if(t.responseFormat instanceof nm)return jrt(function(s){return t.responseFormat.value0(e(s))})(Is("String"));if(t.responseFormat instanceof ww)return Is("String");if(t.responseFormat instanceof vy)return Dt(t.responseFormat.value0(bS(void 0)));throw new Error("Failed pattern match at Affjax (line 274, column 18 - line 283, column 57): "+[t.responseFormat.constructor.name])})(),a=function(s){if(s instanceof dO)return new ht(s.value0(Ql));if(s instanceof mO)return new ht(Ql(s.value0));if(s instanceof hO)return new ht(Ql(s.value0));if(s instanceof _O)return new ht(Ql(s.value0));if(s instanceof gO)return new ht(Ql(s.value0));if(s instanceof gw)return Ro("Body contains values that cannot be encoded as application/x-www-form-urlencoded")(uD(Ql)(iU(s.value0)));if(s instanceof yw)return new ht(Ql(hm(s.value0)));throw new Error("Failed pattern match at Affjax (line 235, column 20 - line 250, column 69): "+[s.constructor.name])},o=function(s){return function(c){return s instanceof z&&!Yrt(dw(Qrt)(bw)(s.value0))(c)?Fy(c)(s.value0):c}},i=function(s){return o(uD(py.create)(Zrt(yO)(s)))(o(uD(cy.create)(SO(t.responseFormat)))(t.headers))},u=function(s){return{method:cU(t.method),url:t.url,headers:Xrt(function(c){return{field:bw(c),value:TO(c)}})(i(t.content)),content:s,responseType:wO(t.responseFormat),username:ba(t.username),password:ba(t.password),withCredentials:t.withCredentials,timeout:Kn(0)(uD(function(c){return c})(t.timeout))}},l=function(s){return Krt(tnt(nH(QN(r,"AffjaxTimeoutErrorMessageIdent","AffjaxRequestFailedMessageIdent",IO.create,u(s)))))(function(c){if(c instanceof ht){var p=dm(n(c.value0.body));if(p instanceof _t)return new _t(new TS(TU(p.value0),c.value0));if(p instanceof ht)return new ht({headers:c.value0.headers,status:c.value0.status,statusText:c.value0.statusText,body:p.value0});throw new Error("Failed pattern match at Affjax (line 209, column 9 - line 211, column 52): "+[p.constructor.name])}if(c instanceof _t)return new _t((function(){var v=om(c.value0),d=v==="AffjaxTimeoutErrorMessageIdent";if(d)return xS.value;var m=v==="AffjaxRequestFailedMessageIdent";return m?wS.value:new SS(c.value0)})());throw new Error("Failed pattern match at Affjax (line 207, column 144 - line 219, column 28): "+[c.constructor.name])})};if(t.content instanceof B)return l(ba(B.value));if(t.content instanceof z){var f=a(t.content.value0);if(f instanceof ht)return l(ba(new z(f.value0)));if(f instanceof _t)return ent(new _t(new CS(f.value0)));throw new Error("Failed pattern match at Affjax (line 199, column 7 - line 203, column 48): "+[f.constructor.name])}throw new Error("Failed pattern match at Affjax (line 195, column 3 - line 203, column 48): "+[t.content.constructor.name])}},ES=function(r){if(r instanceof CS)return"There was a problem with the request content: "+r.value0;if(r instanceof TS)return"There was a problem with the response body: "+aD(r.value0);if(r instanceof xS)return"There was a problem making the request: timeout";if(r instanceof wS)return"There was a problem making the request: request failed";if(r instanceof SS)return"There was a problem making the request: "+om(r.value0);throw new Error("Failed pattern match at Affjax (line 113, column 14 - line 123, column 66): "+[r.constructor.name])},Zl=(function(){return{method:new _t(iS.value),url:"/",headers:[],content:B.value,username:B.value,password:B.value,withCredentials:!1,responseFormat:MO,timeout:B.value}})();var gH=function(r){return function(t){return function(e){return _H(r)({method:Zl.method,headers:Zl.headers,content:Zl.content,username:Zl.username,password:Zl.password,withCredentials:Zl.withCredentials,timeout:Zl.timeout,url:e,responseFormat:t})}}};var MS=Yt(ha),nnt=Yt(up);var ua=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),AS=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),IS=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})(),kp=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})(),Xl=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})(),Fs=(function(){function r(){}return r.value=new r,r})(),qm={show:function(r){if(r instanceof ua)return"(TypeMismatch "+(MS(r.value0)+")");if(r instanceof AS)return"(UnexpectedValue "+(hm(r.value0)+")");if(r instanceof IS)return"(AtIndex "+(nnt(r.value0)+(" "+(Yt(qm)(r.value1)+")")));if(r instanceof kp)return"(AtKey "+(MS(r.value0)+(" "+(Yt(qm)(r.value1)+")")));if(r instanceof Xl)return"(Named "+(MS(r.value0)+(" "+(Yt(qm)(r.value1)+")")));if(r instanceof Fs)return"MissingValue";throw new Error("Failed pattern match at Data.Argonaut.Decode.Error (line 24, column 10 - line 30, column 35): "+[r.constructor.name])}};var ant=cp()()()(),FS=function(r){return r};var zp={dimap:function(r){return function(t){return function(e){return function(n){return e(r(n))}}}}},ont={first:function(r){return function(t){return r(zn(t))}},second:function(r){return function(t){return r(kn(t))}},Profunctor0:function(){return zp}};var LS=function(r){var t=Ue(my(r));return{left:function(e){return br(e)(t)},right:function(e){return br(t)(e)},Profunctor0:function(){return zp}}},RS=function(r){var t=qw(r),e=LS(r);return{wander:function(n){return function(a){return ant(Sy)(n(t))(a)}},Strong0:function(){return ont},Choice1:function(){return e}}};var Wp=function(r){return r.right};var Qm=function(r){return r.wander};var US=Lr(),TH=Lt(Pt),_nt=Ly(ya);var wH=function(r){return function(t){var e=aa(t)(r);return function(n){return e(n)}}},HS=sy()()(FS);var gnt=function(r){return function(t){return function(e){var n=Pe(US)(e),a=HS(r)(function(o){return Dm(t(o))});return function(o){return n(a(o))}}}};var ynt=function(r){return gnt(r)(De.create)(be.value)},kS=function(r){var t=ynt(r);return function(e){return _nt(t(e))}};var SH=function(r){var t=HS(r)(function(e){return Bw(z.create(e))});return function(e){return US(t(e))}};var EH=function(r){var t=Wp(r),e=_i(r.Profunctor0());return function(n){var a=e(function(o){var i=n(o);return i?new ht(o):new _t(o)})(br(TH)(TH));return function(o){return a(t(o))}}},MH=function(r){return function(t){return function(e){var n=HS(t)(function(a){return bs(e(a))});return function(a){return US(n(a))}}}};var Dnt=Lr();var tl=function(r){return function(t){var e=Dnt(t);return function(n){return e(r(n))}}};var LH=Lt(Pt);var RH=function(r){return function(t){return function(e){var n=e.Profunctor0(),a=_i(n),o=Wp(e),i=$y(n);return function(u){return a(t)(br(LH)(LH))(o(i(r)(u)))}}}};var PH=function(r){return RH(z.create)(Je(new _t(B.value))(ht.create))(r)};var VS={liftAff:Lt(Pt),MonadEffect0:function(){return ho}},Xm=function(r){return r.liftAff};var Km=function(r){return function(){console.log(r)}},sD=function(r){return function(){console.warn(r)}};var cD=function(r){return function(t){return function(){return t[r]}}},Nnt=cD("children"),Ont=cD("firstElementChild"),Unt=cD("lastElementChild"),Hnt=cD("childElementCount");function HH(r){return function(t){return function(){return t.querySelector(r)}}}var znt=W(_e);var kH=function(r){var t=znt(dr),e=HH(r);return function(n){return t(e(n))}};function th(r){return function(){return function(t){return r(t)()}}}function $S(r){return function(t){return function(e){return function(n){return function(){return n.addEventListener(r,t,e)}}}}}function qS(r){return function(t){return function(e){return function(n){return function(){return n.removeEventListener(r,t,e)}}}}}var yi=function(){return window};function WH(r){return r.readyState}var eh=(function(){function r(){}return r.value=new r,r})(),qnt=(function(){function r(){}return r.value=new r,r})(),Jnt=(function(){function r(){}return r.value=new r,r})();var GH=function(r){return r==="loading"?new z(eh.value):r==="interactive"?new z(qnt.value):r==="complete"?new z(Jnt.value):B.value};var Ynt=W(_e);var VH=tt;var pD=tt;var $H=function(r){return Ynt((function(){var t=Kn(eh.value);return function(e){return t(GH(e))}})())(function(){return WH(r)})};function qH(r,t,e){var n=Object.prototype.toString.call(e);return n.indexOf("[object HTML")===0&&n.indexOf("Element]")===n.length-8?t(e):r}var JH=tt;var jS=function(r){return qH(B.value,z.create,r)};function tf(r){return function(){return r.document}}function YH(r){return function(t){return function(e){return function(n){return function(){return n.open(r,t,e)}}}}}var Sat=W(_e);var QH=tt;var ZH=function(r){return function(t){return function(e){return function(n){return Sat(dr)(YH(r)(t)(e)(n))}}}};var ZS="DOMContentLoaded";var XH=Ut(_n),Mat=sr(ho),XS=gr(_a),Aat=Hl(_a),KH=it(ia),Iat=gr(Na),Fat=it(Mr),Lat=W(_e),Rat=ta(ea),Pat=Mn(Zy),KS=function(r){return XH(Mat(XS(Aat((function(){var t=kH(r);return function(e){return t(VH(e))}})())(tf))(yi)))(function(t){return KH(Iat(jS)(t))})},tk=Ky(br(kl)(Dt(Fat(void 0)))),Nat=Xu(function(r){return function(){var e=XS($H)(XS(tf)(yi))();if(e instanceof eh){var n=Lat(QH)(yi)(),a=th(function(o){return r(new ht(void 0))})();return $S(ZS)(a)(!1)(n)(),Qy(qS(ZS)(a)(!1)(n))}return r(new ht(void 0))(),tD}}),ek=Rat(_n)(Nat)(function(){return XH(KS("body"))(function(r){return Je(Pat(mi("Could not find body")))(KH)(r)})});var t1=tt,rk=tt;var Hat=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})();var nk=function(r){return function(t){return t1(function(e){return r(e.value0)(e.value1)})(t)}};var ak=function(r){return function(t){return rk(new Hat(r,t))}},e1={map:function(r){return function(t){return t1(function(e){return ak(function(n){return r(e.value0(n))})(e.value1)})(t)}}};var ok=ak(Lt(Pt));var gD=function(r,t,e){var n=0,a;return function(o){if(n===2)return a;if(n===1)throw new ReferenceError(r+" was needed before it finished initializing (module "+t+", line "+o+")",t,o);return n=1,a=e(),n=2,a}};var kat=W(Xe);var qr=(function(){function r(){}return r.value=new r,r})(),Pr=(function(){function r(t,e,n,a,o,i){this.value0=t,this.value1=e,this.value2=n,this.value3=a,this.value4=o,this.value5=i}return r.create=function(t){return function(e){return function(n){return function(a){return function(o){return function(i){return new r(t,e,n,a,o,i)}}}}}},r})();var _D=(function(){function r(t,e,n){this.value0=t,this.value1=e,this.value2=n}return r.create=function(t){return function(e){return function(n){return new r(t,e,n)}}},r})(),ik=(function(){function r(t,e,n){this.value0=t,this.value1=e,this.value2=n}return r.create=function(t){return function(e){return function(n){return new r(t,e,n)}}},r})(),ko=function(r,t,e,n){if(e instanceof qr){if(n instanceof qr)return new Pr(1,1,r,t,e,n);if(n instanceof Pr)return new Pr(1+n.value0|0,1+n.value1|0,r,t,e,n);throw new Error("Failed pattern match at Data.Map.Internal (line 702, column 5 - line 706, column 39): "+[n.constructor.name])}if(e instanceof Pr){if(n instanceof qr)return new Pr(1+e.value0|0,1+e.value1|0,r,t,e,n);if(n instanceof Pr)return new Pr(1+(function(){var a=e.value0>n.value0;return a?e.value0:n.value0})()|0,(1+e.value1|0)+n.value1|0,r,t,e,n);throw new Error("Failed pattern match at Data.Map.Internal (line 708, column 5 - line 712, column 68): "+[n.constructor.name])}throw new Error("Failed pattern match at Data.Map.Internal (line 700, column 32 - line 712, column 68): "+[e.constructor.name])};var yD=function(r){return function(t){return new Pr(1,1,r,t,qr.value,qr.value)}},el=(function(){var r=function(n){if(n instanceof qr)return 0;if(n instanceof Pr)return n.value0;throw new Error("Failed pattern match at Data.Map.Internal (line 757, column 12 - line 759, column 26): "+[n.constructor.name])},t=function(n,a,o,i,u,l,f){return l instanceof Pr&&l.value0>r(f)?ko(l.value2,l.value3,ko(n,a,o,l.value4),ko(i,u,l.value5,f)):ko(i,u,ko(n,a,o,l),f)},e=function(n,a,o,i,u,l,f){return l instanceof Pr&&r(u)<=l.value0?ko(l.value2,l.value3,ko(o,i,u,l.value4),ko(n,a,l.value5,f)):ko(o,i,u,ko(n,a,l,f))};return function(n,a,o,i){if(o instanceof qr)return i instanceof qr?yD(n)(a):i instanceof Pr&&i.value0>1?t(n,a,o,i.value2,i.value3,i.value4,i.value5):ko(n,a,o,i);if(o instanceof Pr){if(i instanceof Pr){if(i.value0>(o.value0+1|0))return t(n,a,o,i.value2,i.value3,i.value4,i.value5);if(o.value0>(i.value0+1|0))return e(n,a,o.value2,o.value3,o.value4,o.value5,i)}return i instanceof qr&&o.value0>1?e(n,a,o.value2,o.value3,o.value4,o.value5,i):ko(n,a,o,i)}throw new Error("Failed pattern match at Data.Map.Internal (line 717, column 40 - line 738, column 34): "+[o.constructor.name])}})(),n1=gD("unsafeSplit","Data.Map.Internal",function(){return function(r,t,e){if(e instanceof qr)return new _D(B.value,qr.value,qr.value);if(e instanceof Pr){var n=r(t)(e.value2);if(n instanceof Zt){var a=n1(793)(r,t,e.value4);return new _D(a.value0,a.value1,el(e.value2,e.value3,a.value2,e.value5))}if(n instanceof jt){var a=n1(796)(r,t,e.value5);return new _D(a.value0,el(e.value2,e.value3,e.value4,a.value1),a.value2)}if(n instanceof ye)return new _D(new z(e.value3),e.value4,e.value5);throw new Error("Failed pattern match at Data.Map.Internal (line 791, column 5 - line 799, column 30): "+[n.constructor.name])}throw new Error("Failed pattern match at Data.Map.Internal (line 787, column 34 - line 799, column 30): "+[e.constructor.name])}}),uk=n1(786),lk=gD("unsafeSplitLast","Data.Map.Internal",function(){return function(r,t,e,n){if(n instanceof qr)return new ik(r,t,e);if(n instanceof Pr){var a=lk(779)(n.value2,n.value3,n.value4,n.value5);return new ik(a.value0,a.value1,el(r,t,e,a.value2))}throw new Error("Failed pattern match at Data.Map.Internal (line 776, column 37 - line 780, column 57): "+[n.constructor.name])}}),zat=lk(775),a1=function(r,t){if(r instanceof qr)return t;if(r instanceof Pr){var e=zat(r.value2,r.value3,r.value4,r.value5);return el(e.value0,e.value1,e.value2,t)}throw new Error("Failed pattern match at Data.Map.Internal (line 764, column 25 - line 768, column 38): "+[r.constructor.name,t.constructor.name])};var fk=function(r){var t=oe(r);return function(e){return function(n){var a=uk(t,e,n);return kat(function(o){return new qt(o,a1(a.value1,a.value2))})(a.value0)}}};var Gp=function(r){var t=oe(r);return function(e){var n=function(a){var o=!1,i;function u(l){if(l instanceof qr)return o=!0,B.value;if(l instanceof Pr){var f=t(e)(l.value2);if(f instanceof Zt){a=l.value4;return}if(f instanceof jt){a=l.value5;return}if(f instanceof ye)return o=!0,new z(l.value3);throw new Error("Failed pattern match at Data.Map.Internal (line 283, column 7 - line 286, column 22): "+[f.constructor.name])}throw new Error("Failed pattern match at Data.Map.Internal (line 280, column 8 - line 286, column 22): "+[l.constructor.name])}for(;!o;)i=u(a);return i};return n}};var Ls=function(r){var t=oe(r);return function(e){return function(n){var a=function(o){if(o instanceof qr)return yD(e)(n);if(o instanceof Pr){var i=t(e)(o.value2);if(i instanceof Zt)return el(o.value2,o.value3,a(o.value4),o.value5);if(i instanceof jt)return el(o.value2,o.value3,o.value4,a(o.value5));if(i instanceof ye)return new Pr(o.value0,o.value1,e,n,o.value4,o.value5);throw new Error("Failed pattern match at Data.Map.Internal (line 471, column 7 - line 474, column 35): "+[i.constructor.name])}throw new Error("Failed pattern match at Data.Map.Internal (line 468, column 8 - line 474, column 35): "+[o.constructor.name])};return a}}};var DD={foldr:function(r){return function(t){var e=gD("go","Data.Map.Internal",function(){return function(a,o){if(a instanceof qr)return o;if(a instanceof Pr)return e(172)(a.value4,r(a.value3)(e(172)(a.value5,o)));throw new Error("Failed pattern match at Data.Map.Internal (line 169, column 26 - line 172, column 43): "+[a.constructor.name])}}),n=e(169);return function(a){return n(a,t)}}},foldl:function(r){return function(t){var e=gD("go","Data.Map.Internal",function(){return function(a,o){if(o instanceof qr)return a;if(o instanceof Pr)return e(178)(r(e(178)(a,o.value4))(o.value3),o.value5);throw new Error("Failed pattern match at Data.Map.Internal (line 175, column 26 - line 178, column 43): "+[o.constructor.name])}}),n=e(175);return function(a){return n(t,a)}}},foldMap:function(r){var t=Ue(r),e=ae(r.Semigroup0());return function(n){var a=function(o){if(o instanceof qr)return t;if(o instanceof Pr)return e(a(o.value4))(e(n(o.value3))(a(o.value5)));throw new Error("Failed pattern match at Data.Map.Internal (line 181, column 10 - line 184, column 28): "+[o.constructor.name])};return a}}};var lu=(function(){return qr.value})();var o1=function(r){var t=oe(r);return function(e){var n=function(a){if(a instanceof qr)return qr.value;if(a instanceof Pr){var o=t(e)(a.value2);if(o instanceof Zt)return el(a.value2,a.value3,n(a.value4),a.value5);if(o instanceof jt)return el(a.value2,a.value3,a.value4,n(a.value5));if(o instanceof ye)return a1(a.value4,a.value5);throw new Error("Failed pattern match at Data.Map.Internal (line 498, column 7 - line 501, column 43): "+[o.constructor.name])}throw new Error("Failed pattern match at Data.Map.Internal (line 495, column 8 - line 501, column 43): "+[a.constructor.name])};return n}};var i1=function(r){var t=oe(r);return function(e){return function(n){return function(a){var o=uk(t,n,a),i=e(o.value0);if(i instanceof B)return a1(o.value1,o.value2);if(i instanceof z)return el(n,i.value0,o.value1,o.value2);throw new Error("Failed pattern match at Data.Map.Internal (line 514, column 3 - line 518, column 41): "+[i.constructor.name])}}}};var Gat=(function(){function r(t,e,n){this.value0=t,this.value1=e,this.value2=n}return r.create=function(t){return function(e){return function(n){return new r(t,e,n)}}},r})();var bD=function(r){return Gat.create(pe(r.Eq0()))(oe(r))},Bat={eq:function(r){return function(t){return r.value0(r.value2)(t.value2)}}},sk={compare:function(r){return function(t){return r.value1(r.value2)(t.value2)}},Eq0:function(){return Bat}};var u1=lm(on)(sk);var $at=fk(u1),qat=Gp(u1),Jat=Ls(u1);var pk=function(){return function(r){var t=_r(r);return function(e){var n=bD(e);return function(a){return function(o){return function(i){return $at(new qt(t(a),n(o)))(i)}}}}}},l1=function(){return function(r){var t=_r(r);return function(e){var n=bD(e);return function(a){return function(o){return function(i){return qat(new qt(t(a),n(o)))(i)}}}}}},vk=function(){return function(r){var t=_r(r);return function(e){var n=bD(e);return function(a){return function(o){return function(i){return function(u){return Jat(new qt(t(a),n(o)))(i)(u)}}}}}}},dk=function(r){var t=Cr(r)(DD);return function(e){return function(n){return t(function(a){return n(a)})(e)}}},Bp=lu;var TD=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})(),rh=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})();var Nr=(function(){function r(t,e,n,a){this.value0=t,this.value1=e,this.value2=n,this.value3=a}return r.create=function(t){return function(e){return function(n){return function(a){return new r(t,e,n,a)}}}},r})(),nh=tt,Ga=function(r,t){return r.value2(r.value1,t)},Or=tt,Ba=function(r){return r.value3(r.value1)},Gn=nh(function(r){return r.value0});var mk=W(an),fot=W(Vl);var rf=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),rl=(function(){function r(t,e,n,a){this.value0=t,this.value1=e,this.value2=n,this.value3=a}return r.create=function(t){return function(e){return function(n){return function(a){return new r(t,e,n,a)}}}},r})(),nf=(function(){function r(t,e,n,a){this.value0=t,this.value1=e,this.value2=n,this.value3=a}return r.create=function(t){return function(e){return function(n){return function(a){return new r(t,e,n,a)}}}},r})(),af=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),nl=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),sot=(function(){function r(t,e,n){this.value0=t,this.value1=e,this.value2=n}return r.create=function(t){return function(e){return function(n){return new r(t,e,n)}}},r})(),hk=function(r){return function(t){return r(t)}};var cot=tt;var pot={bimap:function(r){return function(t){return hk(function(e){return cot(new sot(function(n){return r(e.value0(n))},function(n){return t(e.value1(n))},e.value2))})}}},vot=Wa(pot);var Rs=hk(function(r){var t=function(e){if(e instanceof rf)return new rf(e.value0);if(e instanceof rl)return new rl(e.value0,e.value1,r.value0(e.value2),mk(t)(e.value3));if(e instanceof nf)return new nf(e.value0,e.value1,r.value0(e.value2),mk(fot(t))(e.value3));if(e instanceof af)return new af(r.value1(e.value0));if(e instanceof nl)return new nl(vot(r.value0)(r.value1)(e.value0));throw new Error("Failed pattern match at Halogen.VDom.Types (line 86, column 7 - line 86, column 27): "+[e.constructor.name])};return t(r.value2)});function Ps(r,t){return t[r]}function s1(r,t){return t.hasOwnProperty(r)}function al(r,t,e){e[r]=t}function c1(r,t){for(var e=[],n=0;n<r.length;n++)e.push(t(n,r[n]));return e}function p1(r,t){for(var e=0;e<r.length;e++)t(r[e])}function v1(r,t){for(var e=Object.keys(r),n=0;n<e.length;n++){var a=e[n];t(a,r[a])}}function d1(r,t,e,n,a){for(var o=[],i=r.length,u=t.length,l=0;;){if(l<i)l<u?o.push(e(l,r[l],t[l])):n(l,r[l]);else if(l<u)o.push(a(l,t[l]));else break;l++}return o}function ah(r,t,e){for(var n={},a=0;a<r.length;a++){var o=r[a],i=t(o);n[i]=e(i,a,o)}return n}function oh(r,t,e,n,a,o){for(var i={},u=0;u<t.length;u++){var l=t[u],f=e(l);r.hasOwnProperty(f)?i[f]=n(f,u,r[f],l):i[f]=o(f,u,l)}for(var f in r)f in i||a(f,r[f]);return i}function Ns(r,t){return r===t}function m1(r,t){return t.createTextNode(r)}function h1(r,t){t.textContent=r}function SD(r,t,e){return r!=null?e.createElementNS(r,t):e.createElement(t)}function of(r,t,e){var n=e.childNodes.item(r)||null;n!==t&&e.insertBefore(t,n)}function ih(r,t){t&&r.parentNode===t&&t.removeChild(r)}function uh(r){return r.parentNode}function ED(r,t,e,n){r!=null?n.setAttributeNS(r,t,e):n.setAttribute(t,e)}function MD(r,t,e){r!=null?e.removeAttributeNS(r,t):e.removeAttribute(t)}function _1(r,t,e){return r!=null?e.hasAttributeNS(r,t):e.hasAttribute(t)}function g1(r,t,e){e.addEventListener(r,t,!1)}function y1(r,t,e){e.removeEventListener(r,t,!1)}var D1=void 0;var b1=Ps,C1=tt,T1=al,x1=Ny;var AD=function(r){return function(t){return t[r]}},hot=AD("namespaceURI"),_ot=AD("prefix"),got=AD("localName"),yot=AD("tagName");function _k(r){return function(t){return function(){return t.getAttribute(r)}}}var Tot=W(_e);var S1=tt;var gk=function(r){var t=Tot(dr),e=_k(r);return function(n){return t(e(n))}};var lh=function(r,t,e){var n=0,a;return function(o){if(n===2)return a;if(n===1)throw new ReferenceError(r+" was needed before it finished initializing (module "+t+", line "+o+")",t,o);return n=1,a=e(),n=2,a}};var E1=function(r){return Ba(r.widget)},M1=lh("patchWidget","Halogen.VDom.DOM",function(){return function(r,t){if(t instanceof nl)return M1(291)(r,Rs(t.value0));if(t instanceof af){var e=Ga(r.widget,t.value0),n=nh(function(a){return Or(new Nr(a.value0,{build:r.build,widget:e},M1(296),E1))})(e);return n}return E1(r),r.build(t)}}),xot=M1(286),ID=function(r){var t=uh(r.node);return ih(r.node,t)},FD=lh("patchText","Halogen.VDom.DOM",function(){return function(r,t){if(t instanceof nl)return FD(82)(r,Rs(t.value0));if(t instanceof rf){if(r.value===t.value0)return Or(new Nr(r.node,r,FD(85),ID));if(Er){var e={build:r.build,node:r.node,value:t.value0};return h1(t.value0,r.node),Or(new Nr(r.node,e,FD(89),ID))}}return ID(r),r.build(t)}}),wot=FD(77),LD=function(r){var t=uh(r.node);return ih(r.node,t),v1(r.children,function(e,n){return Ba(n)}),Ba(r.attrs)},RD=function(r){var t=uh(r.node);return ih(r.node,t),p1(r.children,Ba),Ba(r.attrs)},Dk=function(r,t,e,n){var a=t===n;return a?r instanceof z&&e instanceof z&&r.value0===e.value0||r instanceof B&&e instanceof B:!1},PD=lh("patchElem","Halogen.VDom.DOM",function(){return function(r,t){if(t instanceof nl)return PD(135)(r,Rs(t.value0));if(t instanceof rl&&Dk(r.ns,r.name,t.value0,t.value1)){var e=nu(t.value3),n=nu(r.children);if(n===0&&e===0){var l=Ga(r.attrs,t.value2),f={build:r.build,node:r.node,attrs:l,ns:t.value0,name:t.value1,children:r.children};return Or(new Nr(r.node,f,PD(149),RD))}var a=function(s,c){return Ba(c)},o=function(s,c,p){var v=Ga(c,p);return of(s,Gn(v),r.node),v},i=function(s,c){var p=r.build(c);return of(s,Gn(p),r.node),p},u=d1(r.children,t.value3,o,a,i),l=Ga(r.attrs,t.value2),f={build:r.build,node:r.node,attrs:l,ns:t.value0,name:t.value1,children:u};return Or(new Nr(r.node,f,PD(172),RD))}return RD(r),r.build(t)}}),Sot=PD(130),ND=lh("patchKeyed","Halogen.VDom.DOM",function(){return function(r,t){if(t instanceof nl)return ND(222)(r,Rs(t.value0));if(t instanceof nf&&Dk(r.ns,r.name,t.value0,t.value1)){var e=nu(t.value3);if(r.length===0&&e===0){var u=Ga(r.attrs,t.value2),l={build:r.build,node:r.node,attrs:u,ns:t.value0,name:t.value1,children:r.children,length:0};return Or(new Nr(r.node,l,ND(237),LD))}var n=function(f,s){return Ba(s)},a=function(f,s,c,p){var v=Ga(c,p.value1);return of(s,Gn(v),r.node),v},o=function(f,s,c){var p=r.build(c.value1);return of(s,Gn(p),r.node),p},i=oh(r.children,t.value3,zn,a,n,o),u=Ga(r.attrs,t.value2),l={build:r.build,node:r.node,attrs:u,ns:t.value0,name:t.value1,children:i,length:e};return Or(new Nr(r.node,l,ND(261),LD))}return LD(r),r.build(t)}}),Eot=ND(217),Mot=function(r,t,e){var n=r.buildWidget(r)(e),a=nh(function(o){return Or(new Nr(o.value0,{build:t,widget:n},xot,E1))})(n);return a},Aot=function(r,t,e){var n=m1(e,r.document),a={build:t,node:n,value:e};return Or(new Nr(n,a,wot,ID))},Iot=function(r,t,e,n,a,o){var i=SD(ba(e),n,r.document),u=S1(i),l=function(p,v,d){var m=t(d.value1);return of(v,Gn(m),u),m},f=ah(o,zn,l),s=r.buildAttributes(i)(a),c={build:t,node:u,attrs:s,ns:e,name:n,children:f,length:nu(o)};return Or(new Nr(u,c,Eot,LD))},Fot=function(r,t,e,n,a,o){var i=SD(ba(e),n,r.document),u=S1(i),l=function(p,v){var d=t(v);return of(p,Gn(d),u),d},f=c1(o,l),s=r.buildAttributes(i)(a),c={build:t,node:u,attrs:s,ns:e,name:n,children:f};return Or(new Nr(u,c,Sot,RD))},fh=function(r){var t=lh("build","Halogen.VDom.DOM",function(){return function(n){if(n instanceof rf)return Aot(r,t(59),n.value0);if(n instanceof rl)return Fot(r,t(60),n.value0,n.value1,n.value2,n.value3);if(n instanceof nf)return Iot(r,t(61),n.value0,n.value1,n.value2,n.value3);if(n instanceof af)return Mot(r,t(62),n.value0);if(n instanceof nl)return t(63)(Rs(n.value0));throw new Error("Failed pattern match at Halogen.VDom.DOM (line 58, column 27 - line 63, column 52): "+[n.constructor.name])}}),e=t(58);return e};var Lot=function(r,t,e){var n=0,a;return function(o){if(n===2)return a;if(n===1)throw new ReferenceError(r+" was needed before it finished initializing (module "+t+", line "+o+")",t,o);return n=1,a=e(),n=2,a}};var L1=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),R1=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),ol=(function(){function r(t,e,n){this.value0=t,this.value1=e,this.value2=n}return r.create=function(t){return function(e){return function(n){return new r(t,e,n)}}},r})(),uf=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})(),Os=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})(),Us=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),Rot=Ps,F1=al,Pot=function(r,t){var e=_1(null,r,t);if(e)return MD(null,r,t);var n=Ku(Ps(r,t));return n==="string"?al(r,"",t):r==="rowSpan"?al(r,1,t):r==="colSpan"?al(r,1,t):al(r,D1,t)},Ck=function(r){if(r instanceof ol&&r.value0 instanceof z)return"attr/"+(r.value0.value0+(":"+r.value1));if(r instanceof ol)return"attr/:"+r.value1;if(r instanceof uf)return"prop/"+r.value0;if(r instanceof Os)return"handler/"+r.value0;if(r instanceof Us)return"ref";throw new Error("Failed pattern match at Halogen.VDom.DOM.Prop (line 182, column 16 - line 187, column 16): "+[r.constructor.name])},Tk=tt;var xk=function(r){return function(t){var e=function(s){return function(c,p){if(p instanceof ol)return MD(ba(p.value0),p.value1,t);if(p instanceof uf)return Pot(p.value0,t);if(p instanceof Os){var v=b1(p.value0,s);return y1(p.value0,zn(v),t)}if(p instanceof Us)return void 0;throw new Error("Failed pattern match at Halogen.VDom.DOM.Prop (line 169, column 5 - line 179, column 18): "+[p.constructor.name])}},n=function(s){return s instanceof z?r(s.value0)():void 0},a=function(s){var c=iu("ref")(s.props);return c instanceof z&&c.value0 instanceof Us?n(c.value0.value0(new R1(t))):void 0},o=function(s,c){return function(p,v,d,m){if(d instanceof ol&&m instanceof ol){var h=d.value2===m.value2;return h||ED(ba(m.value0),m.value1,m.value2,t),m}if(d instanceof uf&&m instanceof uf){var _=Ns(d.value1,m.value1);if(_)return m;if(m.value0==="value"){var g=Rot("value",t),y=Ns(g,m.value1);return y||F1(m.value0,m.value1,t),m}return F1(m.value0,m.value1,t),m}if(d instanceof Os&&m instanceof Os){var D=b1(m.value0,s);return or(m.value1)(kn(D))(),T1(m.value0,D,c),m}return m}},i=function(s){return function(c,p,v){if(v instanceof ol)return ED(ba(v.value0),v.value1,v.value2,t),v;if(v instanceof uf)return F1(v.value0,v.value1,t),v;if(v instanceof Os){var d=Ps(v.value0,s);if(s1(v.value0,s))return or(v.value1)(kn(d))(),v;var m=Ar(v.value1)(),h=th(function(_){return function(){var y=ue(m)();return n(y(_))}})();return T1(v.value0,new qt(h,m),s),g1(v.value0,h,t),v}if(v instanceof Us)return n(v.value0(new L1(t))),v;throw new Error("Failed pattern match at Halogen.VDom.DOM.Prop (line 113, column 5 - line 135, column 15): "+[v.constructor.name])}},u=Lot("patchProp","Halogen.VDom.DOM.Prop",function(){return function(s,c){var p=x1(),v=e(s.events),d=o(s.events,p),m=i(p),h=oh(s.props,c,Ck,d,v,m),_={events:C1(p),props:h};return Or(new Nr(void 0,_,u(100),a))}}),l=u(87),f=function(s){var c=x1(),p=ah(s,Ck,i(c)),v={events:C1(c),props:p};return Or(new Nr(void 0,v,l,a))};return f}};var N1=function(r){return r},Mk=function(r){return N1(af.create(r))},Uot=function(r){return r.toPropValue},O1=function(r){return N1(rf.create(r))},Ak=function(r){return new Us(function(t){return r((function(e){if(e instanceof L1)return new z(e.value0);if(e instanceof R1)return B.value;throw new Error("Failed pattern match at Halogen.HTML.Core (line 109, column 21 - line 111, column 23): "+[e.constructor.name])})(t))})},Ik=function(r){var t=Uot(r);return function(e){var n=uf.create(e);return function(a){return n(t(a))}}};var Fk={toPropValue:Tk};var Lk=function(r){return function(t){return function(e){return function(n){return new rl(r,t,e,n)}}}};var Rk=function(r){return function(t){return ol.create(r)(t)}};var Hot=Lt(Pt);var OD=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),U1=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),H1=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})(),Pk=function(r){return function(t){return new H1(r,t)}},Nk=(function(){return U1.create})(),Ok=function(r){var t=it(r);return function(e){return function(n){return function(a){return function(o){return function(i){if(o instanceof OD)return new qt(new De({func:t(o.value0),count:i},e),n);if(o instanceof U1)return new qt(new De({func:a(o.value0),count:i},e),n);if(o instanceof H1)return Ok(r)(e)(xU(o.value1)(n))(a)(o.value0)(i+1|0);throw new Error("Failed pattern match at Control.Applicative.Free (line 102, column 41 - line 105, column 81): "+[o.constructor.name])}}}}}},Uk=function(r){var t=Oe(r.Apply0());return function(e){return function(n){return function(a){if(e instanceof be)return new _t(a);if(e instanceof De){var o=t(e.value0.func)(a),i=e.value0.count===1;if(i)return e.value1 instanceof be?new _t(o):Uk(r)(e.value1)(n)(o);if(n instanceof be)return new _t(o);if(n instanceof De)return new ht(new qt(new De({func:o,count:e.value0.count-1|0},e.value1),new hi(n.value0,n.value1)));throw new Error("Failed pattern match at Control.Applicative.Free (line 83, column 11 - line 88, column 50): "+[n.constructor.name])}throw new Error("Failed pattern match at Control.Applicative.Free (line 72, column 3 - line 88, column 50): "+[e.constructor.name])}}}},Hk={map:function(r){return function(t){return Pk(new OD(r))(t)}}},kk=function(r){var t=Uk(r),e=it(r),n=Ok(r);return function(a){return function(o){var i=function(u){var l=!1,f;function s(c){if(c.value1.value0 instanceof OD){var p=t(c.value0)(c.value1.value1)(e(c.value1.value0.value0));if(p instanceof _t)return l=!0,p.value0;if(p instanceof ht){u=p.value0;return}throw new Error("Failed pattern match at Control.Applicative.Free (line 54, column 17 - line 56, column 24): "+[p.constructor.name])}if(c.value1.value0 instanceof U1){var p=t(c.value0)(c.value1.value1)(a(c.value1.value0.value0));if(p instanceof _t)return l=!0,p.value0;if(p instanceof ht){u=p.value0;return}throw new Error("Failed pattern match at Control.Applicative.Free (line 57, column 17 - line 59, column 24): "+[p.constructor.name])}if(c.value1.value0 instanceof H1){var v=new hi(c.value1.value0.value1,c.value1.value1);u=n(c.value0)(v)(a)(c.value1.value0.value0)(1);return}throw new Error("Failed pattern match at Control.Applicative.Free (line 53, column 5 - line 62, column 47): "+[c.value1.value0.constructor.name])}for(;!l;)f=s(u);return f};return i(new qt(be.value,Ms(o)))}}},zk=function(r){return kk(r)(Hot)},Wk={apply:function(r){return function(t){return Pk(r)(t)}},Functor0:function(){return Hk}},Gk=(function(){return{pure:OD.create,Apply0:function(){return Wk}}})(),kot=kk(Gk),k1=function(r){return kot(function(t){return Nk(r(t))})};var UD=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})();var Vk=function(r){var t=!1,e;function n(a){if(a.value0 instanceof be&&a.value1 instanceof be)return t=!0,B.value;if(a.value0 instanceof be){r=new UD(Ss(a.value1),be.value);return}if(a.value0 instanceof De)return t=!0,new z(new qt(a.value0.value0,new UD(a.value0.value1,a.value1)));throw new Error("Failed pattern match at Data.CatQueue (line 82, column 1 - line 82, column 63): "+[a.constructor.name])}for(;!t;)e=n(r);return e},$k=function(r){return function(t){return new UD(r.value0,new De(t,r.value1))}};var qk=function(r){return r.value0 instanceof be&&r.value1 instanceof be};var Jk=(function(){return new UD(be.value,be.value)})();var Vp=(function(){function r(){}return r.value=new r,r})(),HD=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})();var jk=function(r){return function(t){if(r instanceof Vp)return t;if(t instanceof Vp)return r;if(r instanceof HD)return new HD(r.value0,$k(r.value1)(t));throw new Error("Failed pattern match at Data.CatList (line 108, column 1 - line 108, column 54): "+[r.constructor.name,t.constructor.name])}},Wot=function(r){return function(t){return function(e){var n=function(o){return function(i){return function(u){var l=o,f=i,s=!1,c;function p(v,d,m){if(m instanceof be)return s=!0,d;if(m instanceof De){l=v,f=v(d)(m.value0),u=m.value1;return}throw new Error("Failed pattern match at Data.CatList (line 124, column 3 - line 124, column 59): "+[v.constructor.name,d.constructor.name,m.constructor.name])}for(;!s;)c=p(l,f,u);return c}}},a=function(o){return function(i){var u=o,l=!1,f;function s(c,p){var v=Vk(c);if(v instanceof B)return l=!0,n(function(d){return function(m){return m(d)}})(t)(p);if(v instanceof z){u=v.value0.value1,i=new De(r(v.value0.value0),p);return}throw new Error("Failed pattern match at Data.CatList (line 120, column 14 - line 122, column 67): "+[v.constructor.name])}for(;!l;)f=s(u,i);return f}};return a(e)(be.value)}}},Yk=function(r){if(r instanceof Vp)return B.value;if(r instanceof HD)return new z(new qt(r.value0,(function(){var t=qk(r.value1);return t?Vp.value:Wot(jk)(Vp.value)(r.value1)})()));throw new Error("Failed pattern match at Data.CatList (line 99, column 1 - line 99, column 61): "+[r.constructor.name])};var Qk=(function(){return Vp.value})(),Zk=jk;var Xk={append:Zk};var Kk=function(r){return function(t){return Zk(r)(new HD(t,Jk))}};var Bot=function(r,t,e){var n=0,a;return function(o){if(n===2)return a;if(n===1)throw new ReferenceError(r+" was needed before it finished initializing (module "+t+", line "+o+")",t,o);return n=1,a=e(),n=2,a}},Vot=ae(Xk);var z1=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})(),kD=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),zD=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})(),$ot=function(r){var t=!1,e;function n(a){var o=function(l){return l},i=function(l){return function(f){return new z1(l.value0,Vot(l.value1)(f))}};if(a.value0 instanceof kD){var u=Yk(a.value1);if(u instanceof B)return t=!0,new kD(a.value0.value0);if(u instanceof z){r=i(o(u.value0.value0)(a.value0.value0))(u.value0.value1);return}throw new Error("Failed pattern match at Control.Monad.Free (line 227, column 7 - line 231, column 64): "+[u.constructor.name])}if(a.value0 instanceof zD)return t=!0,new zD(a.value0.value0,function(l){return i(a.value0.value1(l))(a.value1)});throw new Error("Failed pattern match at Control.Monad.Free (line 225, column 3 - line 233, column 56): "+[a.value0.constructor.name])}for(;!t;)e=n(r);return e};var tz=function(r){return new z1(r,Qk)};var W1={Applicative0:function(){return ch},Bind1:function(){return WD}},G1={map:function(r){return function(t){return gr(WD)((function(){var e=it(ch);return function(n){return e(r(n))}})())(t)}}},WD={bind:function(r){return function(t){return new z1(r.value0,Kk(r.value1)(t))}},Apply0:function(){return ez(0)}},ch={pure:function(r){return tz(kD.create(r))},Apply0:function(){return ez(0)}},ez=Bot("freeApply","Control.Monad.Free",function(){return{apply:Oa(W1),Functor0:function(){return G1}}});var qot=it(ch);var $p=function(r){return tz(new zD(r,function(t){return qot(t)}))};var rz=function(r){var t=r.Monad0(),e=W(t.Bind1().Apply0().Functor0()),n=it(t.Applicative0()),a=No(r);return function(o){var i=function(u){var l=$ot(u);if(l instanceof kD)return e(An.create)(n(l.value0));if(l instanceof zD)return e(function(f){return Hn.create(l.value1(f))})(o(l.value0));throw new Error("Failed pattern match at Control.Monad.Free (line 158, column 10 - line 160, column 37): "+[l.constructor.name])};return a(i)}};var az=tt;function B1(r){return function(t){return r===t}}var qp=B1;var jot=hr(_e);var Yot=Ut(_a);var Qot=ae(pi),Zot=Cr(Mr),Xot=Zot(In);var GD=function(r){return r},iz=function(r){return function(t){return r(function(e){return jot(t(e))})}};var BD=function(r){return function(t){return r(t)}};var VD=function(){var t=Ar([])();return{emitter:function(e){return function(){return vo(function(a){return Qot(a)([e])})(t)(),vo(Xw(qp)(e))(t)}},listener:function(e){return Yot(ue(t))(Xot(function(n){return n(e)}))}}};var uz=Lt(Pt);var lz=function(r){return r},fz=function(r){return r},ph=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),vh=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})(),qD=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})(),dh=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),JD=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),mh=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})(),jD=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),YD=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})(),QD=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})(),ZD=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})(),hh=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})();var XD=function(r){return r};var KD=function(r){return $p(new vh(function(t){return r},uz))};var t0=function(r){return $p(new mh(r,void 0))};var $1=Pa,e0=Pa;var sz=W1,Jp={state:function(r){return XD($p(ph.create(r)))},Monad0:function(){return sz}};var r0=function(r){return{liftEffect:(function(){var t=sr(r);return function(e){return XD($p(dh.create(t(e))))}})(),Monad0:function(){return sz}}};var _h=function(r){return $p(new hh(r,uz))},n0=G1;var jp=WD;var fu=ch;var Yp=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),Qp=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),Zp=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})(),Xp=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})(),Kp=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})();var Kot=function(r,t,e){var n=0,a;return function(o){if(n===2)return a;if(n===1)throw new ReferenceError(r+" was needed before it finished initializing (module "+t+", line "+o+")",t,o);return n=1,a=e(),n=2,a}};var tit=function(r,t){return Ns(r.value0,t.value0)&&Ns(r.value1,t.value1)&&r.value1(r.value3,t.value3)};var cz=function(r){return r.value2(r.value3)};var pz=function(r){var t=function(o){return Ba(o.vdom)},e=Kot("patchThunk","Halogen.VDom.Thunk",function(){return function(o,i){var u=tit(o.thunk,i);if(u)return Or(new Nr(Gn(o.vdom),o,e(112),t));var l=Ga(o.vdom,r(cz(i)));return Or(new Nr(Gn(l),{vdom:l,thunk:i},e(115),t))}}),n=e(108),a=function(o){return function(i){var u=fh(o)(r(cz(i)));return Or(new Nr(Gn(u),{thunk:i,vdom:u},n,t))}};return a};var a0=Xd(n0),j1=Cr(fu)(hn),eit=W(n0);var vz=it(fu),rit=l1(),nit=pk(),ait=vk(),yh=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),o0=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),Y1=tt,Q1=tt,Dh=function(r){return function(t){if(t instanceof Yp)return a0(j1(r.handleAction)(r.initialize))(t.value0);if(t instanceof Qp)return a0(j1(r.handleAction)(r.finalize))(t.value0);if(t instanceof Zp)return a0(j1(r.handleAction)(r.receive(t.value0)))(t.value1);if(t instanceof Xp)return a0(r.handleAction(t.value0))(t.value1);if(t instanceof Kp)return nk(function(e){var n=eit(Je(t.value1(void 0))(e));return function(a){return n(r.handleQuery(a))}})(t.value0);throw new Error("Failed pattern match at Halogen.Component (line 182, column 15 - line 192, column 71): "+[t.constructor.name])}},oit=tt,bh=tt;var lf=(function(){return{handleAction:Dt(vz(void 0)),handleQuery:Dt(vz(B.value)),receive:Dt(B.value),initialize:B.value,finalize:B.value}})(),Z1=function(){return function(r){var t=rit(r),e=nit(r),n=ait(r);return function(a){var o=t(a),i=e(a),u=n(a);return function(l){return function(f){return function(s){return function(c){return function(p){return oit({get:o(l)(f),pop:i(l)(f),set:u(l)(f),component:s,input:c,output:p})}}}}}}}};var X1=function(r,t){return X1=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,n){e.__proto__=n}||function(e,n){for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(e[a]=n[a])},X1(r,t)};function A(r,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");X1(r,t);function e(){this.constructor=r}r.prototype=t===null?Object.create(t):(e.prototype=t.prototype,new e)}var iit=(function(){function r(){this.firefox=!1,this.ie=!1,this.edge=!1,this.newEdge=!1,this.weChat=!1}return r})(),uit=(function(){function r(){this.browser=new iit,this.node=!1,this.wxa=!1,this.worker=!1,this.svgSupported=!1,this.touchEventsSupported=!1,this.pointerEventsSupported=!1,this.domSupported=!1,this.transformSupported=!1,this.transform3dSupported=!1,this.hasGlobalWindow=typeof window<"u"}return r})(),Hs=new uit;typeof wx=="object"&&typeof wx.getSystemInfoSync=="function"?(Hs.wxa=!0,Hs.touchEventsSupported=!0):typeof document>"u"&&typeof self<"u"?Hs.worker=!0:typeof navigator>"u"||navigator.userAgent.indexOf("Node.js")===0?(Hs.node=!0,Hs.svgSupported=!0):lit(navigator.userAgent,Hs);function lit(r,t){var e=t.browser,n=r.match(/Firefox\/([\d.]+)/),a=r.match(/MSIE\s([\d.]+)/)||r.match(/Trident\/.+?rv:(([\d.]+))/),o=r.match(/Edge?\/([\d.]+)/),i=/micromessenger/i.test(r);n&&(e.firefox=!0,e.version=n[1]),a&&(e.ie=!0,e.version=a[1]),o&&(e.edge=!0,e.version=o[1],e.newEdge=+o[1].split(".")[0]>18),i&&(e.weChat=!0),t.svgSupported=typeof SVGRect<"u",t.touchEventsSupported="ontouchstart"in window&&!e.ie&&!e.edge,t.pointerEventsSupported="onpointerdown"in window&&(e.edge||e.ie&&+e.version>=11),t.domSupported=typeof document<"u";var u=document.documentElement.style;t.transform3dSupported=(e.ie&&"transition"in u||e.edge||"WebKitCSSMatrix"in window&&"m11"in new WebKitCSSMatrix||"MozPerspective"in u)&&!("OTransition"in u),t.transformSupported=t.transform3dSupported||e.ie&&+e.version>=9}var Kt=Hs;var i0=12,K1="sans-serif",_o=i0+"px "+K1,fit=20,sit=100,cit="007LLmW'55;N0500LLLLLLLLLL00NNNLzWW\\\\WQb\\0FWLg\\bWb\\WQ\\WrWWQ000CL5LLFLL0LL**F*gLLLL5F0LF\\FFF5.5N";function pit(r){var t={};if(typeof JSON>"u")return t;for(var e=0;e<r.length;e++){var n=String.fromCharCode(e+32),a=(r.charCodeAt(e)-fit)/sit;t[n]=a}return t}var vit=pit(cit),la={createCanvas:function(){return typeof document<"u"&&document.createElement("canvas")},measureText:(function(){var r,t;return function(e,n){if(!r){var a=la.createCanvas();r=a&&a.getContext("2d")}if(r)return t!==n&&(t=r.font=n||_o),r.measureText(e);e=e||"",n=n||_o;var o=/(\d+)px/.exec(n),i=o&&+o[1]||i0,u=0;if(n.indexOf("mono")>=0)u=i*e.length;else for(var l=0;l<e.length;l++){var f=vit[e[l]];u+=f==null?i:f*i}return{width:u}}})(),loadImage:function(r,t,e){var n=new Image;return n.onload=t,n.onerror=e,n.src=r,n}};var hz=Bn(["Function","RegExp","Date","Error","CanvasGradient","CanvasPattern","Image","Canvas"],function(r,t){return r["[object "+t+"]"]=!0,r},{}),_z=Bn(["Int8","Uint8","Uint8Clamped","Int16","Uint16","Int32","Uint32","Float32","Float64"],function(r,t){return r["[object "+t+"Array]"]=!0,r},{}),tv=Object.prototype.toString,l0=Array.prototype,dit=l0.forEach,mit=l0.filter,tE=l0.slice,hit=l0.map,dz=function(){}.constructor,u0=dz?dz.prototype:null,eE="__proto__",_it=2311;function f0(){return _it++}function ks(){for(var r=[],t=0;t<arguments.length;t++)r[t]=arguments[t];typeof console<"u"&&console.error.apply(console,r)}function lt(r){if(r==null||typeof r!="object")return r;var t=r,e=tv.call(r);if(e==="[object Array]"){if(!Th(r)){t=[];for(var n=0,a=r.length;n<a;n++)t[n]=lt(r[n])}}else if(_z[e]){if(!Th(r)){var o=r.constructor;if(o.from)t=o.from(r);else{t=new o(r.length);for(var n=0,a=r.length;n<a;n++)t[n]=r[n]}}}else if(!hz[e]&&!Th(r)&&!ff(r)){t={};for(var i in r)r.hasOwnProperty(i)&&i!==eE&&(t[i]=lt(r[i]))}return t}function Et(r,t,e){if(!nt(t)||!nt(r))return e?lt(t):r;for(var n in t)if(t.hasOwnProperty(n)&&n!==eE){var a=r[n],o=t[n];nt(o)&&nt(a)&&!O(o)&&!O(a)&&!ff(o)&&!ff(a)&&!mz(o)&&!mz(a)&&!Th(o)&&!Th(a)?Et(a,o,e):(e||!(n in r))&&(r[n]=lt(t[n]))}return r}function ev(r,t){for(var e=r[0],n=1,a=r.length;n<a;n++)e=Et(e,r[n],t);return e}function N(r,t){if(Object.assign)Object.assign(r,t);else for(var e in t)t.hasOwnProperty(e)&&e!==eE&&(r[e]=t[e]);return r}function et(r,t,e){for(var n=Ft(t),a=0;a<n.length;a++){var o=n[a];(e?t[o]!=null:r[o]==null)&&(r[o]=t[o])}return r}var Djt=la.createCanvas;function wt(r,t){if(r){if(r.indexOf)return r.indexOf(t);for(var e=0,n=r.length;e<n;e++)if(r[e]===t)return e}return-1}function gz(r,t){var e=r.prototype;function n(){}n.prototype=t.prototype,r.prototype=new n;for(var a in e)e.hasOwnProperty(a)&&(r.prototype[a]=e[a]);r.prototype.constructor=r,r.superClass=t}function Ve(r,t,e){if(r="prototype"in r?r.prototype:r,t="prototype"in t?t.prototype:t,Object.getOwnPropertyNames)for(var n=Object.getOwnPropertyNames(t),a=0;a<n.length;a++){var o=n[a];o!=="constructor"&&(e?t[o]!=null:r[o]==null)&&(r[o]=t[o])}else et(r,t,e)}function Ur(r){return!r||typeof r=="string"?!1:typeof r.length=="number"}function T(r,t,e){if(r&&t)if(r.forEach&&r.forEach===dit)r.forEach(t,e);else if(r.length===+r.length)for(var n=0,a=r.length;n<a;n++)t.call(e,r[n],n,r);else for(var o in r)r.hasOwnProperty(o)&&t.call(e,r[o],o,r)}function U(r,t,e){if(!r)return[];if(!t)return s0(r);if(r.map&&r.map===hit)return r.map(t,e);for(var n=[],a=0,o=r.length;a<o;a++)n.push(t.call(e,r[a],a,r));return n}function Bn(r,t,e,n){if(r&&t){for(var a=0,o=r.length;a<o;a++)e=t.call(n,e,r[a],a,r);return e}}function de(r,t,e){if(!r)return[];if(!t)return s0(r);if(r.filter&&r.filter===mit)return r.filter(t,e);for(var n=[],a=0,o=r.length;a<o;a++)t.call(e,r[a],a,r)&&n.push(r[a]);return n}function yz(r,t,e){if(r&&t){for(var n=0,a=r.length;n<a;n++)if(t.call(e,r[n],n,r))return r[n]}}function Ft(r){if(!r)return[];if(Object.keys)return Object.keys(r);var t=[];for(var e in r)r.hasOwnProperty(e)&&t.push(e);return t}function git(r,t){for(var e=[],n=2;n<arguments.length;n++)e[n-2]=arguments[n];return function(){return r.apply(t,e.concat(tE.call(arguments)))}}var Q=u0&&X(u0.bind)?u0.call.bind(u0.bind):git;function gt(r){for(var t=[],e=1;e<arguments.length;e++)t[e-1]=arguments[e];return function(){return r.apply(this,t.concat(tE.call(arguments)))}}function O(r){return Array.isArray?Array.isArray(r):tv.call(r)==="[object Array]"}function X(r){return typeof r=="function"}function V(r){return typeof r=="string"}function xh(r){return tv.call(r)==="[object String]"}function Nt(r){return typeof r=="number"}function nt(r){var t=typeof r;return t==="function"||!!r&&t==="object"}function mz(r){return!!hz[tv.call(r)]}function Jr(r){return!!_z[tv.call(r)]}function ff(r){return typeof r=="object"&&typeof r.nodeType=="number"&&typeof r.ownerDocument=="object"}function sf(r){return r.colorStops!=null}function Dz(r){return r.image!=null}function bz(r){return tv.call(r)==="[object RegExp]"}function cf(r){return r!==r}function ir(){for(var r=[],t=0;t<arguments.length;t++)r[t]=arguments[t];for(var e=0,n=r.length;e<n;e++)if(r[e]!=null)return r[e]}function Tt(r,t){return r??t}function gn(r,t,e){return r??t??e}function s0(r){for(var t=[],e=1;e<arguments.length;e++)t[e-1]=arguments[e];return tE.apply(r,t)}function rv(r){if(typeof r=="number")return[r,r,r,r];var t=r.length;return t===2?[r[0],r[1],r[0],r[1]]:t===3?[r[0],r[1],r[2],r[1]]:r}function ur(r,t){if(!r)throw new Error(t)}function yn(r){return r==null?null:typeof r.trim=="function"?r.trim():r.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}var Cz="__ec_primitive__";function zs(r){r[Cz]=!0}function Th(r){return r[Cz]}var yit=(function(){function r(){this.data={}}return r.prototype.delete=function(t){var e=this.has(t);return e&&delete this.data[t],e},r.prototype.has=function(t){return this.data.hasOwnProperty(t)},r.prototype.get=function(t){return this.data[t]},r.prototype.set=function(t,e){return this.data[t]=e,this},r.prototype.keys=function(){return Ft(this.data)},r.prototype.forEach=function(t){var e=this.data;for(var n in e)e.hasOwnProperty(n)&&t(e[n],n)},r})(),Tz=typeof Map=="function";function Dit(){return Tz?new Map:new yit}var bit=(function(){function r(t){var e=O(t);this.data=Dit();var n=this;t instanceof r?t.each(a):t&&T(t,a);function a(o,i){e?n.set(o,i):n.set(i,o)}}return r.prototype.hasKey=function(t){return this.data.has(t)},r.prototype.get=function(t){return this.data.get(t)},r.prototype.set=function(t,e){return this.data.set(t,e),e},r.prototype.each=function(t,e){this.data.forEach(function(n,a){t.call(e,n,a)})},r.prototype.keys=function(){var t=this.data.keys();return Tz?Array.from(t):t},r.prototype.removeKey=function(t){this.data.delete(t)},r})();function Z(r){return new bit(r)}function Ws(r,t){for(var e=new r.constructor(r.length+t.length),n=0;n<r.length;n++)e[n]=r[n];for(var a=r.length,n=0;n<t.length;n++)e[n+a]=t[n];return e}function pf(r,t){var e;if(Object.create)e=Object.create(r);else{var n=function(){};n.prototype=r,e=new n}return t&&N(e,t),e}function c0(r){var t=r.style;t.webkitUserSelect="none",t.userSelect="none",t.webkitTapHighlightColor="rgba(0,0,0,0)",t["-webkit-touch-callout"]="none"}function st(r,t){return r.hasOwnProperty(t)}function Ye(){}var nv=180/Math.PI;function su(r,t){return r==null&&(r=0),t==null&&(t=0),[r,t]}function Dn(r,t){return r[0]=t[0],r[1]=t[1],r}function Va(r){return[r[0],r[1]]}function xz(r,t,e){return r[0]=t,r[1]=e,r}function rE(r,t,e){return r[0]=t[0]+e[0],r[1]=t[1]+e[1],r}function wh(r,t,e,n){return r[0]=t[0]+e[0]*n,r[1]=t[1]+e[1]*n,r}function Di(r,t,e){return r[0]=t[0]-e[0],r[1]=t[1]-e[1],r}function p0(r){return Math.sqrt(Cit(r))}function Cit(r){return r[0]*r[0]+r[1]*r[1]}function av(r,t,e){return r[0]=t[0]*e,r[1]=t[1]*e,r}function zo(r,t){var e=p0(t);return e===0?(r[0]=0,r[1]=0):(r[0]=t[0]/e,r[1]=t[1]/e),r}function v0(r,t){return Math.sqrt((r[0]-t[0])*(r[0]-t[0])+(r[1]-t[1])*(r[1]-t[1]))}var Wo=v0;function Tit(r,t){return(r[0]-t[0])*(r[0]-t[0])+(r[1]-t[1])*(r[1]-t[1])}var il=Tit;function ov(r,t,e,n){return r[0]=t[0]+n*(e[0]-t[0]),r[1]=t[1]+n*(e[1]-t[1]),r}function Hr(r,t,e){var n=t[0],a=t[1];return r[0]=e[0]*n+e[2]*a+e[4],r[1]=e[1]*n+e[3]*a+e[5],r}function go(r,t,e){return r[0]=Math.min(t[0],e[0]),r[1]=Math.min(t[1],e[1]),r}function yo(r,t,e){return r[0]=Math.max(t[0],e[0]),r[1]=Math.max(t[1],e[1]),r}var iv=(function(){function r(t,e){this.target=t,this.topTarget=e&&e.topTarget}return r})(),xit=(function(){function r(t){this.handler=t,t.on("mousedown",this._dragStart,this),t.on("mousemove",this._drag,this),t.on("mouseup",this._dragEnd,this)}return r.prototype._dragStart=function(t){for(var e=t.target;e&&!e.draggable;)e=e.parent||e.__hostTarget;e&&(this._draggingTarget=e,e.dragging=!0,this._x=t.offsetX,this._y=t.offsetY,this.handler.dispatchToElement(new iv(e,t),"dragstart",t.event))},r.prototype._drag=function(t){var e=this._draggingTarget;if(e){var n=t.offsetX,a=t.offsetY,o=n-this._x,i=a-this._y;this._x=n,this._y=a,e.drift(o,i,t),this.handler.dispatchToElement(new iv(e,t),"drag",t.event);var u=this.handler.findHover(n,a,e).target,l=this._dropTarget;this._dropTarget=u,e!==u&&(l&&u!==l&&this.handler.dispatchToElement(new iv(l,t),"dragleave",t.event),u&&u!==l&&this.handler.dispatchToElement(new iv(u,t),"dragenter",t.event))}},r.prototype._dragEnd=function(t){var e=this._draggingTarget;e&&(e.dragging=!1),this.handler.dispatchToElement(new iv(e,t),"dragend",t.event),this._dropTarget&&this.handler.dispatchToElement(new iv(this._dropTarget,t),"drop",t.event),this._draggingTarget=null,this._dropTarget=null},r})(),wz=xit;var wit=(function(){function r(t){t&&(this._$eventProcessor=t)}return r.prototype.on=function(t,e,n,a){this._$handlers||(this._$handlers={});var o=this._$handlers;if(typeof e=="function"&&(a=n,n=e,e=null),!n||!t)return this;var i=this._$eventProcessor;e!=null&&i&&i.normalizeQuery&&(e=i.normalizeQuery(e)),o[t]||(o[t]=[]);for(var u=0;u<o[t].length;u++)if(o[t][u].h===n)return this;var l={h:n,query:e,ctx:a||this,callAtLast:n.zrEventfulCallAtLast},f=o[t].length-1,s=o[t][f];return s&&s.callAtLast?o[t].splice(f,0,l):o[t].push(l),this},r.prototype.isSilent=function(t){var e=this._$handlers;return!e||!e[t]||!e[t].length},r.prototype.off=function(t,e){var n=this._$handlers;if(!n)return this;if(!t)return this._$handlers={},this;if(e){if(n[t]){for(var a=[],o=0,i=n[t].length;o<i;o++)n[t][o].h!==e&&a.push(n[t][o]);n[t]=a}n[t]&&n[t].length===0&&delete n[t]}else delete n[t];return this},r.prototype.trigger=function(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];if(!this._$handlers)return this;var a=this._$handlers[t],o=this._$eventProcessor;if(a)for(var i=e.length,u=a.length,l=0;l<u;l++){var f=a[l];if(!(o&&o.filter&&f.query!=null&&!o.filter(t,f.query)))switch(i){case 0:f.h.call(f.ctx);break;case 1:f.h.call(f.ctx,e[0]);break;case 2:f.h.call(f.ctx,e[0],e[1]);break;default:f.h.apply(f.ctx,e);break}}return o&&o.afterTrigger&&o.afterTrigger(t),this},r.prototype.triggerWithContext=function(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];if(!this._$handlers)return this;var a=this._$handlers[t],o=this._$eventProcessor;if(a)for(var i=e.length,u=e[i-1],l=a.length,f=0;f<l;f++){var s=a[f];if(!(o&&o.filter&&s.query!=null&&!o.filter(t,s.query)))switch(i){case 0:s.h.call(u);break;case 1:s.h.call(u,e[0]);break;case 2:s.h.call(u,e[0],e[1]);break;default:s.h.apply(u,e.slice(1,i-1));break}}return o&&o.afterTrigger&&o.afterTrigger(t),this},r})(),en=wit;var Sit=Math.log(2);function nE(r,t,e,n,a,o){var i=n+"-"+a,u=r.length;if(o.hasOwnProperty(i))return o[i];if(t===1){var l=Math.round(Math.log((1<<u)-1&~a)/Sit);return r[e][l]}for(var f=n|1<<e,s=e+1;n&1<<s;)s++;for(var c=0,p=0,v=0;p<u;p++){var d=1<<p;d&a||(c+=(v%2?-1:1)*r[e][p]*nE(r,t-1,s,f,a|d,o),v++)}return o[i]=c,c}function aE(r,t){var e=[[r[0],r[1],1,0,0,0,-t[0]*r[0],-t[0]*r[1]],[0,0,0,r[0],r[1],1,-t[1]*r[0],-t[1]*r[1]],[r[2],r[3],1,0,0,0,-t[2]*r[2],-t[2]*r[3]],[0,0,0,r[2],r[3],1,-t[3]*r[2],-t[3]*r[3]],[r[4],r[5],1,0,0,0,-t[4]*r[4],-t[4]*r[5]],[0,0,0,r[4],r[5],1,-t[5]*r[4],-t[5]*r[5]],[r[6],r[7],1,0,0,0,-t[6]*r[6],-t[6]*r[7]],[0,0,0,r[6],r[7],1,-t[7]*r[6],-t[7]*r[7]]],n={},a=nE(e,8,0,0,0,n);if(a!==0){for(var o=[],i=0;i<8;i++)for(var u=0;u<8;u++)o[u]==null&&(o[u]=0),o[u]+=((i+u)%2?-1:1)*nE(e,7,i===0?1:0,1<<i,1<<u,n)/a*t[i];return function(l,f,s){var c=f*o[6]+s*o[7]+1;l[0]=(f*o[0]+s*o[1]+o[2])/c,l[1]=(f*o[3]+s*o[4]+o[5])/c}}}var Sz="___zrEVENTSAVED",oE=[];function Ez(r,t,e,n,a){return d0(oE,t,n,a,!0)&&d0(r,e,oE[0],oE[1])}function d0(r,t,e,n,a){if(t.getBoundingClientRect&&Kt.domSupported&&!iE(t)){var o=t[Sz]||(t[Sz]={}),i=Eit(t,o),u=Mit(i,o,a);if(u)return u(r,e,n),!0}return!1}function Eit(r,t){var e=t.markers;if(e)return e;e=t.markers=[];for(var n=["left","right"],a=["top","bottom"],o=0;o<4;o++){var i=document.createElement("div"),u=i.style,l=o%2,f=(o>>1)%2;u.cssText=["position: absolute","visibility: hidden","padding: 0","margin: 0","border-width: 0","user-select: none","width:0","height:0",n[l]+":0",a[f]+":0",n[1-l]+":auto",a[1-f]+":auto",""].join("!important;"),r.appendChild(i),e.push(i)}return e}function Mit(r,t,e){for(var n=e?"invTrans":"trans",a=t[n],o=t.srcCoords,i=[],u=[],l=!0,f=0;f<4;f++){var s=r[f].getBoundingClientRect(),c=2*f,p=s.left,v=s.top;i.push(p,v),l=l&&o&&p===o[c]&&v===o[c+1],u.push(r[f].offsetLeft,r[f].offsetTop)}return l&&a?a:(t.srcCoords=i,t[n]=e?aE(u,i):aE(i,u))}function iE(r){return r.nodeName.toUpperCase()==="CANVAS"}var Ait=/([&<>"'])/g,Iit={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"};function Vn(r){return r==null?"":(r+"").replace(Ait,function(t,e){return Iit[e]})}var Fit=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,uE=[],Lit=Kt.browser.firefox&&+Kt.browser.version.split(".")[0]<39;function m0(r,t,e,n){return e=e||{},n?Mz(r,t,e):Lit&&t.layerX!=null&&t.layerX!==t.offsetX?(e.zrX=t.layerX,e.zrY=t.layerY):t.offsetX!=null?(e.zrX=t.offsetX,e.zrY=t.offsetY):Mz(r,t,e),e}function Mz(r,t,e){if(Kt.domSupported&&r.getBoundingClientRect){var n=t.clientX,a=t.clientY;if(iE(r)){var o=r.getBoundingClientRect();e.zrX=n-o.left,e.zrY=a-o.top;return}else if(d0(uE,r,n,a)){e.zrX=uE[0],e.zrY=uE[1];return}}e.zrX=e.zrY=0}function h0(r){return r||window.event}function $a(r,t,e){if(t=h0(t),t.zrX!=null)return t;var n=t.type,a=n&&n.indexOf("touch")>=0;if(a){var i=n!=="touchend"?t.targetTouches[0]:t.changedTouches[0];i&&m0(r,i,t,e)}else{m0(r,t,t,e);var o=Rit(t);t.zrDelta=o?o/120:-(t.detail||0)/3}var u=t.button;return t.which==null&&u!==void 0&&Fit.test(t.type)&&(t.which=u&1?1:u&2?3:u&4?2:0),t}function Rit(r){var t=r.wheelDelta;if(t)return t;var e=r.deltaX,n=r.deltaY;if(e==null||n==null)return t;var a=Math.abs(n!==0?n:e),o=n>0?-1:n<0?1:e>0?-1:1;return 3*a*o}function Sh(r,t,e,n){r.addEventListener(t,e,n)}function Az(r,t,e,n){r.removeEventListener(t,e,n)}var qa=function(r){r.preventDefault(),r.stopPropagation(),r.cancelBubble=!0};function lE(r){return r.which===2||r.which===3}var Fz=(function(){function r(){this._track=[]}return r.prototype.recognize=function(t,e,n){return this._doTrack(t,e,n),this._recognize(t)},r.prototype.clear=function(){return this._track.length=0,this},r.prototype._doTrack=function(t,e,n){var a=t.touches;if(a){for(var o={points:[],touches:[],target:e,event:t},i=0,u=a.length;i<u;i++){var l=a[i],f=m0(n,l,{});o.points.push([f.zrX,f.zrY]),o.touches.push(l)}this._track.push(o)}},r.prototype._recognize=function(t){for(var e in fE)if(fE.hasOwnProperty(e)){var n=fE[e](this._track,t);if(n)return n}},r})();function Iz(r){var t=r[1][0]-r[0][0],e=r[1][1]-r[0][1];return Math.sqrt(t*t+e*e)}function Pit(r){return[(r[0][0]+r[1][0])/2,(r[0][1]+r[1][1])/2]}var fE={pinch:function(r,t){var e=r.length;if(e){var n=(r[e-1]||{}).points,a=(r[e-2]||{}).points||n;if(a&&a.length>1&&n&&n.length>1){var o=Iz(n)/Iz(a);!isFinite(o)&&(o=1),t.pinchScale=o;var i=Pit(n);return t.pinchX=i[0],t.pinchY=i[1],{type:"pinch",target:r[0].target,event:t}}}}};function jr(){return[1,0,0,1,0,0]}function vf(r){return r[0]=1,r[1]=0,r[2]=0,r[3]=1,r[4]=0,r[5]=0,r}function Eh(r,t){return r[0]=t[0],r[1]=t[1],r[2]=t[2],r[3]=t[3],r[4]=t[4],r[5]=t[5],r}function Ja(r,t,e){var n=t[0]*e[0]+t[2]*e[1],a=t[1]*e[0]+t[3]*e[1],o=t[0]*e[2]+t[2]*e[3],i=t[1]*e[2]+t[3]*e[3],u=t[0]*e[4]+t[2]*e[5]+t[4],l=t[1]*e[4]+t[3]*e[5]+t[5];return r[0]=n,r[1]=a,r[2]=o,r[3]=i,r[4]=u,r[5]=l,r}function $n(r,t,e){return r[0]=t[0],r[1]=t[1],r[2]=t[2],r[3]=t[3],r[4]=t[4]+e[0],r[5]=t[5]+e[1],r}function ja(r,t,e,n){n===void 0&&(n=[0,0]);var a=t[0],o=t[2],i=t[4],u=t[1],l=t[3],f=t[5],s=Math.sin(e),c=Math.cos(e);return r[0]=a*c+u*s,r[1]=-a*s+u*c,r[2]=o*c+l*s,r[3]=-o*s+c*l,r[4]=c*(i-n[0])+s*(f-n[1])+n[0],r[5]=c*(f-n[1])-s*(i-n[0])+n[1],r}function lv(r,t,e){var n=e[0],a=e[1];return r[0]=t[0]*n,r[1]=t[1]*a,r[2]=t[2]*n,r[3]=t[3]*a,r[4]=t[4]*n,r[5]=t[5]*a,r}function Go(r,t){var e=t[0],n=t[2],a=t[4],o=t[1],i=t[3],u=t[5],l=e*i-o*n;return l?(l=1/l,r[0]=i*l,r[1]=-o*l,r[2]=-n*l,r[3]=e*l,r[4]=(n*u-i*a)*l,r[5]=(o*a-e*u)*l,r):null}function Lz(r){var t=jr();return Eh(t,r),t}var Nit=(function(){function r(t,e){this.x=t||0,this.y=e||0}return r.prototype.copy=function(t){return this.x=t.x,this.y=t.y,this},r.prototype.clone=function(){return new r(this.x,this.y)},r.prototype.set=function(t,e){return this.x=t,this.y=e,this},r.prototype.equal=function(t){return t.x===this.x&&t.y===this.y},r.prototype.add=function(t){return this.x+=t.x,this.y+=t.y,this},r.prototype.scale=function(t){this.x*=t,this.y*=t},r.prototype.scaleAndAdd=function(t,e){this.x+=t.x*e,this.y+=t.y*e},r.prototype.sub=function(t){return this.x-=t.x,this.y-=t.y,this},r.prototype.dot=function(t){return this.x*t.x+this.y*t.y},r.prototype.len=function(){return Math.sqrt(this.x*this.x+this.y*this.y)},r.prototype.lenSquare=function(){return this.x*this.x+this.y*this.y},r.prototype.normalize=function(){var t=this.len();return this.x/=t,this.y/=t,this},r.prototype.distance=function(t){var e=this.x-t.x,n=this.y-t.y;return Math.sqrt(e*e+n*n)},r.prototype.distanceSquare=function(t){var e=this.x-t.x,n=this.y-t.y;return e*e+n*n},r.prototype.negate=function(){return this.x=-this.x,this.y=-this.y,this},r.prototype.transform=function(t){if(t){var e=this.x,n=this.y;return this.x=t[0]*e+t[2]*n+t[4],this.y=t[1]*e+t[3]*n+t[5],this}},r.prototype.toArray=function(t){return t[0]=this.x,t[1]=this.y,t},r.prototype.fromArray=function(t){this.x=t[0],this.y=t[1]},r.set=function(t,e,n){t.x=e,t.y=n},r.copy=function(t,e){t.x=e.x,t.y=e.y},r.len=function(t){return Math.sqrt(t.x*t.x+t.y*t.y)},r.lenSquare=function(t){return t.x*t.x+t.y*t.y},r.dot=function(t,e){return t.x*e.x+t.y*e.y},r.add=function(t,e,n){t.x=e.x+n.x,t.y=e.y+n.y},r.sub=function(t,e,n){t.x=e.x-n.x,t.y=e.y-n.y},r.scale=function(t,e,n){t.x=e.x*n,t.y=e.y*n},r.scaleAndAdd=function(t,e,n,a){t.x=e.x+n.x*a,t.y=e.y+n.y*a},r.lerp=function(t,e,n,a){var o=1-a;t.x=o*e.x+a*n.x,t.y=o*e.y+a*n.y},r})(),Qt=Nit;var _0=Math.min,g0=Math.max,Gs=new Qt,Bs=new Qt,Vs=new Qt,$s=new Qt,Mh=new Qt,Ah=new Qt,Oit=(function(){function r(t,e,n,a){n<0&&(t=t+n,n=-n),a<0&&(e=e+a,a=-a),this.x=t,this.y=e,this.width=n,this.height=a}return r.prototype.union=function(t){var e=_0(t.x,this.x),n=_0(t.y,this.y);isFinite(this.x)&&isFinite(this.width)?this.width=g0(t.x+t.width,this.x+this.width)-e:this.width=t.width,isFinite(this.y)&&isFinite(this.height)?this.height=g0(t.y+t.height,this.y+this.height)-n:this.height=t.height,this.x=e,this.y=n},r.prototype.applyTransform=function(t){r.applyTransform(this,this,t)},r.prototype.calculateTransform=function(t){var e=this,n=t.width/e.width,a=t.height/e.height,o=jr();return $n(o,o,[-e.x,-e.y]),lv(o,o,[n,a]),$n(o,o,[t.x,t.y]),o},r.prototype.intersect=function(t,e){if(!t)return!1;t instanceof r||(t=r.create(t));var n=this,a=n.x,o=n.x+n.width,i=n.y,u=n.y+n.height,l=t.x,f=t.x+t.width,s=t.y,c=t.y+t.height,p=!(o<l||f<a||u<s||c<i);if(e){var v=1/0,d=0,m=Math.abs(o-l),h=Math.abs(f-a),_=Math.abs(u-s),g=Math.abs(c-i),y=Math.min(m,h),D=Math.min(_,g);o<l||f<a?y>d&&(d=y,m<h?Qt.set(Ah,-m,0):Qt.set(Ah,h,0)):y<v&&(v=y,m<h?Qt.set(Mh,m,0):Qt.set(Mh,-h,0)),u<s||c<i?D>d&&(d=D,_<g?Qt.set(Ah,0,-_):Qt.set(Ah,0,g)):y<v&&(v=y,_<g?Qt.set(Mh,0,_):Qt.set(Mh,0,-g))}return e&&Qt.copy(e,p?Mh:Ah),p},r.prototype.contain=function(t,e){var n=this;return t>=n.x&&t<=n.x+n.width&&e>=n.y&&e<=n.y+n.height},r.prototype.clone=function(){return new r(this.x,this.y,this.width,this.height)},r.prototype.copy=function(t){r.copy(this,t)},r.prototype.plain=function(){return{x:this.x,y:this.y,width:this.width,height:this.height}},r.prototype.isFinite=function(){return isFinite(this.x)&&isFinite(this.y)&&isFinite(this.width)&&isFinite(this.height)},r.prototype.isZero=function(){return this.width===0||this.height===0},r.create=function(t){return new r(t.x,t.y,t.width,t.height)},r.copy=function(t,e){t.x=e.x,t.y=e.y,t.width=e.width,t.height=e.height},r.applyTransform=function(t,e,n){if(!n){t!==e&&r.copy(t,e);return}if(n[1]<1e-5&&n[1]>-1e-5&&n[2]<1e-5&&n[2]>-1e-5){var a=n[0],o=n[3],i=n[4],u=n[5];t.x=e.x*a+i,t.y=e.y*o+u,t.width=e.width*a,t.height=e.height*o,t.width<0&&(t.x+=t.width,t.width=-t.width),t.height<0&&(t.y+=t.height,t.height=-t.height);return}Gs.x=Vs.x=e.x,Gs.y=$s.y=e.y,Bs.x=$s.x=e.x+e.width,Bs.y=Vs.y=e.y+e.height,Gs.transform(n),$s.transform(n),Bs.transform(n),Vs.transform(n),t.x=_0(Gs.x,Bs.x,Vs.x,$s.x),t.y=_0(Gs.y,Bs.y,Vs.y,$s.y);var l=g0(Gs.x,Bs.x,Vs.x,$s.x),f=g0(Gs.y,Bs.y,Vs.y,$s.y);t.width=l-t.x,t.height=f-t.y},r})(),yt=Oit;var Pz="silent";function Uit(r,t,e){return{type:r,event:e,target:t.target,topTarget:t.topTarget,cancelBubble:!1,offsetX:e.zrX,offsetY:e.zrY,gestureEvent:e.gestureEvent,pinchX:e.pinchX,pinchY:e.pinchY,pinchScale:e.pinchScale,wheelDelta:e.zrDelta,zrByTouch:e.zrByTouch,which:e.which,stop:Hit}}function Hit(){qa(this.event)}var kit=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.handler=null,e}return t.prototype.dispose=function(){},t.prototype.setCursor=function(){},t})(en),Ih=(function(){function r(t,e){this.x=t,this.y=e}return r})(),zit=["click","dblclick","mousewheel","mouseout","mouseup","mousedown","mousemove","contextmenu"],sE=new yt(0,0,0,0),Nz=(function(r){A(t,r);function t(e,n,a,o,i){var u=r.call(this)||this;return u._hovered=new Ih(0,0),u.storage=e,u.painter=n,u.painterRoot=o,u._pointerSize=i,a=a||new kit,u.proxy=null,u.setHandlerProxy(a),u._draggingMgr=new wz(u),u}return t.prototype.setHandlerProxy=function(e){this.proxy&&this.proxy.dispose(),e&&(T(zit,function(n){e.on&&e.on(n,this[n],this)},this),e.handler=this),this.proxy=e},t.prototype.mousemove=function(e){var n=e.zrX,a=e.zrY,o=Oz(this,n,a),i=this._hovered,u=i.target;u&&!u.__zr&&(i=this.findHover(i.x,i.y),u=i.target);var l=this._hovered=o?new Ih(n,a):this.findHover(n,a),f=l.target,s=this.proxy;s.setCursor&&s.setCursor(f?f.cursor:"default"),u&&f!==u&&this.dispatchToElement(i,"mouseout",e),this.dispatchToElement(l,"mousemove",e),f&&f!==u&&this.dispatchToElement(l,"mouseover",e)},t.prototype.mouseout=function(e){var n=e.zrEventControl;n!=="only_globalout"&&this.dispatchToElement(this._hovered,"mouseout",e),n!=="no_globalout"&&this.trigger("globalout",{type:"globalout",event:e})},t.prototype.resize=function(){this._hovered=new Ih(0,0)},t.prototype.dispatch=function(e,n){var a=this[e];a&&a.call(this,n)},t.prototype.dispose=function(){this.proxy.dispose(),this.storage=null,this.proxy=null,this.painter=null},t.prototype.setCursorStyle=function(e){var n=this.proxy;n.setCursor&&n.setCursor(e)},t.prototype.dispatchToElement=function(e,n,a){e=e||{};var o=e.target;if(!(o&&o.silent)){for(var i="on"+n,u=Uit(n,e,a);o&&(o[i]&&(u.cancelBubble=!!o[i].call(o,u)),o.trigger(n,u),o=o.__hostTarget?o.__hostTarget:o.parent,!u.cancelBubble););u.cancelBubble||(this.trigger(n,u),this.painter&&this.painter.eachOtherLayer&&this.painter.eachOtherLayer(function(l){typeof l[i]=="function"&&l[i].call(l,u),l.trigger&&l.trigger(n,u)}))}},t.prototype.findHover=function(e,n,a){var o=this.storage.getDisplayList(),i=new Ih(e,n);if(Rz(o,i,e,n,a),this._pointerSize&&!i.target){for(var u=[],l=this._pointerSize,f=l/2,s=new yt(e-f,n-f,l,l),c=o.length-1;c>=0;c--){var p=o[c];p!==a&&!p.ignore&&!p.ignoreCoarsePointer&&(!p.parent||!p.parent.ignoreCoarsePointer)&&(sE.copy(p.getBoundingRect()),p.transform&&sE.applyTransform(p.transform),sE.intersect(s)&&u.push(p))}if(u.length)for(var v=4,d=Math.PI/12,m=Math.PI*2,h=0;h<f;h+=v)for(var _=0;_<m;_+=d){var g=e+h*Math.cos(_),y=n+h*Math.sin(_);if(Rz(u,i,g,y,a),i.target)return i}}return i},t.prototype.processGesture=function(e,n){this._gestureMgr||(this._gestureMgr=new Fz);var a=this._gestureMgr;n==="start"&&a.clear();var o=a.recognize(e,this.findHover(e.zrX,e.zrY,null).target,this.proxy.dom);if(n==="end"&&a.clear(),o){var i=o.type;e.gestureEvent=i;var u=new Ih;u.target=o.target,this.dispatchToElement(u,i,o.event)}},t})(en);T(["click","mousedown","mouseup","mousewheel","dblclick","contextmenu"],function(r){Nz.prototype[r]=function(t){var e=t.zrX,n=t.zrY,a=Oz(this,e,n),o,i;if((r!=="mouseup"||!a)&&(o=this.findHover(e,n),i=o.target),r==="mousedown")this._downEl=i,this._downPoint=[t.zrX,t.zrY],this._upEl=i;else if(r==="mouseup")this._upEl=i;else if(r==="click"){if(this._downEl!==this._upEl||!this._downPoint||Wo(this._downPoint,[t.zrX,t.zrY])>4)return;this._downPoint=null}this.dispatchToElement(o,r,t)}});function Wit(r,t,e){if(r[r.rectHover?"rectContain":"contain"](t,e)){for(var n=r,a=void 0,o=!1;n;){if(n.ignoreClip&&(o=!0),!o){var i=n.getClipPath();if(i&&!i.contain(t,e))return!1}n.silent&&(a=!0);var u=n.__hostTarget;n=u||n.parent}return a?Pz:!0}return!1}function Rz(r,t,e,n,a){for(var o=r.length-1;o>=0;o--){var i=r[o],u=void 0;if(i!==a&&!i.ignore&&(u=Wit(i,e,n))&&(!t.topTarget&&(t.topTarget=i),u!==Pz)){t.target=i;break}}}function Oz(r,t,e){var n=r.painter;return t<0||t>n.getWidth()||e<0||e>n.getHeight()}var Uz=Nz;var zz=32,Fh=7;function Git(r){for(var t=0;r>=zz;)t|=r&1,r>>=1;return r+t}function Hz(r,t,e,n){var a=t+1;if(a===e)return 1;if(n(r[a++],r[t])<0){for(;a<e&&n(r[a],r[a-1])<0;)a++;Bit(r,t,a)}else for(;a<e&&n(r[a],r[a-1])>=0;)a++;return a-t}function Bit(r,t,e){for(e--;t<e;){var n=r[t];r[t++]=r[e],r[e--]=n}}function kz(r,t,e,n,a){for(n===t&&n++;n<e;n++){for(var o=r[n],i=t,u=n,l;i<u;)l=i+u>>>1,a(o,r[l])<0?u=l:i=l+1;var f=n-i;switch(f){case 3:r[i+3]=r[i+2];case 2:r[i+2]=r[i+1];case 1:r[i+1]=r[i];break;default:for(;f>0;)r[i+f]=r[i+f-1],f--}r[i]=o}}function cE(r,t,e,n,a,o){var i=0,u=0,l=1;if(o(r,t[e+a])>0){for(u=n-a;l<u&&o(r,t[e+a+l])>0;)i=l,l=(l<<1)+1,l<=0&&(l=u);l>u&&(l=u),i+=a,l+=a}else{for(u=a+1;l<u&&o(r,t[e+a-l])<=0;)i=l,l=(l<<1)+1,l<=0&&(l=u);l>u&&(l=u);var f=i;i=a-l,l=a-f}for(i++;i<l;){var s=i+(l-i>>>1);o(r,t[e+s])>0?i=s+1:l=s}return l}function pE(r,t,e,n,a,o){var i=0,u=0,l=1;if(o(r,t[e+a])<0){for(u=a+1;l<u&&o(r,t[e+a-l])<0;)i=l,l=(l<<1)+1,l<=0&&(l=u);l>u&&(l=u);var f=i;i=a-l,l=a-f}else{for(u=n-a;l<u&&o(r,t[e+a+l])>=0;)i=l,l=(l<<1)+1,l<=0&&(l=u);l>u&&(l=u),i+=a,l+=a}for(i++;i<l;){var s=i+(l-i>>>1);o(r,t[e+s])<0?l=s:i=s+1}return l}function Vit(r,t){var e=Fh,n,a,o=0,i=[];n=[],a=[];function u(v,d){n[o]=v,a[o]=d,o+=1}function l(){for(;o>1;){var v=o-2;if(v>=1&&a[v-1]<=a[v]+a[v+1]||v>=2&&a[v-2]<=a[v]+a[v-1])a[v-1]<a[v+1]&&v--;else if(a[v]>a[v+1])break;s(v)}}function f(){for(;o>1;){var v=o-2;v>0&&a[v-1]<a[v+1]&&v--,s(v)}}function s(v){var d=n[v],m=a[v],h=n[v+1],_=a[v+1];a[v]=m+_,v===o-3&&(n[v+1]=n[v+2],a[v+1]=a[v+2]),o--;var g=pE(r[h],r,d,m,0,t);d+=g,m-=g,m!==0&&(_=cE(r[d+m-1],r,h,_,_-1,t),_!==0&&(m<=_?c(d,m,h,_):p(d,m,h,_)))}function c(v,d,m,h){var _=0;for(_=0;_<d;_++)i[_]=r[v+_];var g=0,y=m,D=v;if(r[D++]=r[y++],--h===0){for(_=0;_<d;_++)r[D+_]=i[g+_];return}if(d===1){for(_=0;_<h;_++)r[D+_]=r[y+_];r[D+h]=i[g];return}for(var b=e,C,x,w;;){C=0,x=0,w=!1;do if(t(r[y],i[g])<0){if(r[D++]=r[y++],x++,C=0,--h===0){w=!0;break}}else if(r[D++]=i[g++],C++,x=0,--d===1){w=!0;break}while((C|x)<b);if(w)break;do{if(C=pE(r[y],i,g,d,0,t),C!==0){for(_=0;_<C;_++)r[D+_]=i[g+_];if(D+=C,g+=C,d-=C,d<=1){w=!0;break}}if(r[D++]=r[y++],--h===0){w=!0;break}if(x=cE(i[g],r,y,h,0,t),x!==0){for(_=0;_<x;_++)r[D+_]=r[y+_];if(D+=x,y+=x,h-=x,h===0){w=!0;break}}if(r[D++]=i[g++],--d===1){w=!0;break}b--}while(C>=Fh||x>=Fh);if(w)break;b<0&&(b=0),b+=2}if(e=b,e<1&&(e=1),d===1){for(_=0;_<h;_++)r[D+_]=r[y+_];r[D+h]=i[g]}else{if(d===0)throw new Error;for(_=0;_<d;_++)r[D+_]=i[g+_]}}function p(v,d,m,h){var _=0;for(_=0;_<h;_++)i[_]=r[m+_];var g=v+d-1,y=h-1,D=m+h-1,b=0,C=0;if(r[D--]=r[g--],--d===0){for(b=D-(h-1),_=0;_<h;_++)r[b+_]=i[_];return}if(h===1){for(D-=d,g-=d,C=D+1,b=g+1,_=d-1;_>=0;_--)r[C+_]=r[b+_];r[D]=i[y];return}for(var x=e;;){var w=0,S=0,E=!1;do if(t(i[y],r[g])<0){if(r[D--]=r[g--],w++,S=0,--d===0){E=!0;break}}else if(r[D--]=i[y--],S++,w=0,--h===1){E=!0;break}while((w|S)<x);if(E)break;do{if(w=d-pE(i[y],r,v,d,d-1,t),w!==0){for(D-=w,g-=w,d-=w,C=D+1,b=g+1,_=w-1;_>=0;_--)r[C+_]=r[b+_];if(d===0){E=!0;break}}if(r[D--]=i[y--],--h===1){E=!0;break}if(S=h-cE(r[g],i,0,h,h-1,t),S!==0){for(D-=S,y-=S,h-=S,C=D+1,b=y+1,_=0;_<S;_++)r[C+_]=i[b+_];if(h<=1){E=!0;break}}if(r[D--]=r[g--],--d===0){E=!0;break}x--}while(w>=Fh||S>=Fh);if(E)break;x<0&&(x=0),x+=2}if(e=x,e<1&&(e=1),h===1){for(D-=d,g-=d,C=D+1,b=g+1,_=d-1;_>=0;_--)r[C+_]=r[b+_];r[D]=i[y]}else{if(h===0)throw new Error;for(b=D-(h-1),_=0;_<h;_++)r[b+_]=i[_]}}return{mergeRuns:l,forceMergeRuns:f,pushRun:u}}function qs(r,t,e,n){e||(e=0),n||(n=r.length);var a=n-e;if(!(a<2)){var o=0;if(a<zz){o=Hz(r,e,n,t),kz(r,e,n,e+o,t);return}var i=Vit(r,t),u=Git(a);do{if(o=Hz(r,e,n,t),o<u){var l=a;l>u&&(l=u),kz(r,e,e+l,e+o,t),o=l}i.pushRun(e,o),i.mergeRuns(),a-=o,e+=o}while(a!==0);i.forceMergeRuns()}}var ln=1,Js=2,df=4;var Wz=!1;function vE(){Wz||(Wz=!0,console.warn("z / z2 / zlevel of displayable is invalid, which may cause unexpected errors"))}function Gz(r,t){return r.zlevel===t.zlevel?r.z===t.z?r.z2-t.z2:r.z-t.z:r.zlevel-t.zlevel}var $it=(function(){function r(){this._roots=[],this._displayList=[],this._displayListLen=0,this.displayableSortFunc=Gz}return r.prototype.traverse=function(t,e){for(var n=0;n<this._roots.length;n++)this._roots[n].traverse(t,e)},r.prototype.getDisplayList=function(t,e){e=e||!1;var n=this._displayList;return(t||!n.length)&&this.updateDisplayList(e),n},r.prototype.updateDisplayList=function(t){this._displayListLen=0;for(var e=this._roots,n=this._displayList,a=0,o=e.length;a<o;a++)this._updateAndAddDisplayable(e[a],null,t);n.length=this._displayListLen,qs(n,Gz)},r.prototype._updateAndAddDisplayable=function(t,e,n){if(!(t.ignore&&!n)){t.beforeUpdate(),t.update(),t.afterUpdate();var a=t.getClipPath();if(t.ignoreClip)e=null;else if(a){e?e=e.slice():e=[];for(var o=a,i=t;o;)o.parent=i,o.updateTransform(),e.push(o),i=o,o=o.getClipPath()}if(t.childrenRef){for(var u=t.childrenRef(),l=0;l<u.length;l++){var f=u[l];t.__dirty&&(f.__dirty|=ln),this._updateAndAddDisplayable(f,e,n)}t.__dirty=0}else{var s=t;e&&e.length?s.__clipPaths=e:s.__clipPaths&&s.__clipPaths.length>0&&(s.__clipPaths=[]),isNaN(s.z)&&(vE(),s.z=0),isNaN(s.z2)&&(vE(),s.z2=0),isNaN(s.zlevel)&&(vE(),s.zlevel=0),this._displayList[this._displayListLen++]=s}var c=t.getDecalElement&&t.getDecalElement();c&&this._updateAndAddDisplayable(c,e,n);var p=t.getTextGuideLine();p&&this._updateAndAddDisplayable(p,e,n);var v=t.getTextContent();v&&this._updateAndAddDisplayable(v,e,n)}},r.prototype.addRoot=function(t){t.__zr&&t.__zr.storage===this||this._roots.push(t)},r.prototype.delRoot=function(t){if(t instanceof Array){for(var e=0,n=t.length;e<n;e++)this.delRoot(t[e]);return}var a=wt(this._roots,t);a>=0&&this._roots.splice(a,1)},r.prototype.delAllRoots=function(){this._roots=[],this._displayList=[],this._displayListLen=0},r.prototype.getRoots=function(){return this._roots},r.prototype.dispose=function(){this._displayList=null,this._roots=null},r})(),Bz=$it;var Vz;Vz=Kt.hasGlobalWindow&&(window.requestAnimationFrame&&window.requestAnimationFrame.bind(window)||window.msRequestAnimationFrame&&window.msRequestAnimationFrame.bind(window)||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame)||function(r){return setTimeout(r,16)};var Lh=Vz;var y0={linear:function(r){return r},quadraticIn:function(r){return r*r},quadraticOut:function(r){return r*(2-r)},quadraticInOut:function(r){return(r*=2)<1?.5*r*r:-.5*(--r*(r-2)-1)},cubicIn:function(r){return r*r*r},cubicOut:function(r){return--r*r*r+1},cubicInOut:function(r){return(r*=2)<1?.5*r*r*r:.5*((r-=2)*r*r+2)},quarticIn:function(r){return r*r*r*r},quarticOut:function(r){return 1- --r*r*r*r},quarticInOut:function(r){return(r*=2)<1?.5*r*r*r*r:-.5*((r-=2)*r*r*r-2)},quinticIn:function(r){return r*r*r*r*r},quinticOut:function(r){return--r*r*r*r*r+1},quinticInOut:function(r){return(r*=2)<1?.5*r*r*r*r*r:.5*((r-=2)*r*r*r*r+2)},sinusoidalIn:function(r){return 1-Math.cos(r*Math.PI/2)},sinusoidalOut:function(r){return Math.sin(r*Math.PI/2)},sinusoidalInOut:function(r){return .5*(1-Math.cos(Math.PI*r))},exponentialIn:function(r){return r===0?0:Math.pow(1024,r-1)},exponentialOut:function(r){return r===1?1:1-Math.pow(2,-10*r)},exponentialInOut:function(r){return r===0?0:r===1?1:(r*=2)<1?.5*Math.pow(1024,r-1):.5*(-Math.pow(2,-10*(r-1))+2)},circularIn:function(r){return 1-Math.sqrt(1-r*r)},circularOut:function(r){return Math.sqrt(1- --r*r)},circularInOut:function(r){return(r*=2)<1?-.5*(Math.sqrt(1-r*r)-1):.5*(Math.sqrt(1-(r-=2)*r)+1)},elasticIn:function(r){var t,e=.1,n=.4;return r===0?0:r===1?1:(!e||e<1?(e=1,t=n/4):t=n*Math.asin(1/e)/(2*Math.PI),-(e*Math.pow(2,10*(r-=1))*Math.sin((r-t)*(2*Math.PI)/n)))},elasticOut:function(r){var t,e=.1,n=.4;return r===0?0:r===1?1:(!e||e<1?(e=1,t=n/4):t=n*Math.asin(1/e)/(2*Math.PI),e*Math.pow(2,-10*r)*Math.sin((r-t)*(2*Math.PI)/n)+1)},elasticInOut:function(r){var t,e=.1,n=.4;return r===0?0:r===1?1:(!e||e<1?(e=1,t=n/4):t=n*Math.asin(1/e)/(2*Math.PI),(r*=2)<1?-.5*(e*Math.pow(2,10*(r-=1))*Math.sin((r-t)*(2*Math.PI)/n)):e*Math.pow(2,-10*(r-=1))*Math.sin((r-t)*(2*Math.PI)/n)*.5+1)},backIn:function(r){var t=1.70158;return r*r*((t+1)*r-t)},backOut:function(r){var t=1.70158;return--r*r*((t+1)*r+t)+1},backInOut:function(r){var t=2.5949095;return(r*=2)<1?.5*(r*r*((t+1)*r-t)):.5*((r-=2)*r*((t+1)*r+t)+2)},bounceIn:function(r){return 1-y0.bounceOut(1-r)},bounceOut:function(r){return r<.36363636363636365?7.5625*r*r:r<.7272727272727273?7.5625*(r-=.5454545454545454)*r+.75:r<.9090909090909091?7.5625*(r-=.8181818181818182)*r+.9375:7.5625*(r-=.9545454545454546)*r+.984375},bounceInOut:function(r){return r<.5?y0.bounceIn(r*2)*.5:y0.bounceOut(r*2-1)*.5+.5}},D0=y0;var b0=Math.pow,hf=Math.sqrt,T0=1e-8,qz=1e-4,$z=hf(3),C0=1/3,cu=su(),Bo=su(),fv=su();function mf(r){return r>-T0&&r<T0}function Jz(r){return r>T0||r<-T0}function kr(r,t,e,n,a){var o=1-a;return o*o*(o*r+3*a*t)+a*a*(a*n+3*o*e)}function dE(r,t,e,n,a){var o=1-a;return 3*(((t-r)*o+2*(e-t)*a)*o+(n-e)*a*a)}function js(r,t,e,n,a,o){var i=n+3*(t-e)-r,u=3*(e-t*2+r),l=3*(t-r),f=r-a,s=u*u-3*i*l,c=u*l-9*i*f,p=l*l-3*u*f,v=0;if(mf(s)&&mf(c))if(mf(u))o[0]=0;else{var d=-l/u;d>=0&&d<=1&&(o[v++]=d)}else{var m=c*c-4*s*p;if(mf(m)){var h=c/s,d=-u/i+h,_=-h/2;d>=0&&d<=1&&(o[v++]=d),_>=0&&_<=1&&(o[v++]=_)}else if(m>0){var g=hf(m),y=s*u+1.5*i*(-c+g),D=s*u+1.5*i*(-c-g);y<0?y=-b0(-y,C0):y=b0(y,C0),D<0?D=-b0(-D,C0):D=b0(D,C0);var d=(-u-(y+D))/(3*i);d>=0&&d<=1&&(o[v++]=d)}else{var b=(2*s*u-3*i*c)/(2*hf(s*s*s)),C=Math.acos(b)/3,x=hf(s),w=Math.cos(C),d=(-u-2*x*w)/(3*i),_=(-u+x*(w+$z*Math.sin(C)))/(3*i),S=(-u+x*(w-$z*Math.sin(C)))/(3*i);d>=0&&d<=1&&(o[v++]=d),_>=0&&_<=1&&(o[v++]=_),S>=0&&S<=1&&(o[v++]=S)}}return v}function x0(r,t,e,n,a){var o=6*e-12*t+6*r,i=9*t+3*n-3*r-9*e,u=3*t-3*r,l=0;if(mf(i)){if(Jz(o)){var f=-u/o;f>=0&&f<=1&&(a[l++]=f)}}else{var s=o*o-4*i*u;if(mf(s))a[0]=-o/(2*i);else if(s>0){var c=hf(s),f=(-o+c)/(2*i),p=(-o-c)/(2*i);f>=0&&f<=1&&(a[l++]=f),p>=0&&p<=1&&(a[l++]=p)}}return l}function Vo(r,t,e,n,a,o){var i=(t-r)*a+r,u=(e-t)*a+t,l=(n-e)*a+e,f=(u-i)*a+i,s=(l-u)*a+u,c=(s-f)*a+f;o[0]=r,o[1]=i,o[2]=f,o[3]=c,o[4]=c,o[5]=s,o[6]=l,o[7]=n}function w0(r,t,e,n,a,o,i,u,l,f,s){var c,p=.005,v=1/0,d,m,h,_;cu[0]=l,cu[1]=f;for(var g=0;g<1;g+=.05)Bo[0]=kr(r,e,a,i,g),Bo[1]=kr(t,n,o,u,g),h=il(cu,Bo),h<v&&(c=g,v=h);v=1/0;for(var y=0;y<32&&!(p<qz);y++)d=c-p,m=c+p,Bo[0]=kr(r,e,a,i,d),Bo[1]=kr(t,n,o,u,d),h=il(Bo,cu),d>=0&&h<v?(c=d,v=h):(fv[0]=kr(r,e,a,i,m),fv[1]=kr(t,n,o,u,m),_=il(fv,cu),m<=1&&_<v?(c=m,v=_):p*=.5);return s&&(s[0]=kr(r,e,a,i,c),s[1]=kr(t,n,o,u,c)),hf(v)}function jz(r,t,e,n,a,o,i,u,l){for(var f=r,s=t,c=0,p=1/l,v=1;v<=l;v++){var d=v*p,m=kr(r,e,a,i,d),h=kr(t,n,o,u,d),_=m-f,g=h-s;c+=Math.sqrt(_*_+g*g),f=m,s=h}return c}function Gr(r,t,e,n){var a=1-n;return a*(a*r+2*n*t)+n*n*e}function Rh(r,t,e,n){return 2*((1-n)*(t-r)+n*(e-t))}function Yz(r,t,e,n,a){var o=r-2*t+e,i=2*(t-r),u=r-n,l=0;if(mf(o)){if(Jz(i)){var f=-u/i;f>=0&&f<=1&&(a[l++]=f)}}else{var s=i*i-4*o*u;if(mf(s)){var f=-i/(2*o);f>=0&&f<=1&&(a[l++]=f)}else if(s>0){var c=hf(s),f=(-i+c)/(2*o),p=(-i-c)/(2*o);f>=0&&f<=1&&(a[l++]=f),p>=0&&p<=1&&(a[l++]=p)}}return l}function S0(r,t,e){var n=r+e-2*t;return n===0?.5:(r-t)/n}function _f(r,t,e,n,a){var o=(t-r)*n+r,i=(e-t)*n+t,u=(i-o)*n+o;a[0]=r,a[1]=o,a[2]=u,a[3]=u,a[4]=i,a[5]=e}function E0(r,t,e,n,a,o,i,u,l){var f,s=.005,c=1/0;cu[0]=i,cu[1]=u;for(var p=0;p<1;p+=.05){Bo[0]=Gr(r,e,a,p),Bo[1]=Gr(t,n,o,p);var v=il(cu,Bo);v<c&&(f=p,c=v)}c=1/0;for(var d=0;d<32&&!(s<qz);d++){var m=f-s,h=f+s;Bo[0]=Gr(r,e,a,m),Bo[1]=Gr(t,n,o,m);var v=il(Bo,cu);if(m>=0&&v<c)f=m,c=v;else{fv[0]=Gr(r,e,a,h),fv[1]=Gr(t,n,o,h);var _=il(fv,cu);h<=1&&_<c?(f=h,c=_):s*=.5}}return l&&(l[0]=Gr(r,e,a,f),l[1]=Gr(t,n,o,f)),hf(c)}function Qz(r,t,e,n,a,o,i){for(var u=r,l=t,f=0,s=1/i,c=1;c<=i;c++){var p=c*s,v=Gr(r,e,a,p),d=Gr(t,n,o,p),m=v-u,h=d-l;f+=Math.sqrt(m*m+h*h),u=v,l=d}return f}var qit=/cubic-bezier\(([0-9,\.e ]+)\)/;function sv(r){var t=r&&qit.exec(r);if(t){var e=t[1].split(","),n=+yn(e[0]),a=+yn(e[1]),o=+yn(e[2]),i=+yn(e[3]);if(isNaN(n+a+o+i))return;var u=[];return function(l){return l<=0?0:l>=1?1:js(0,n,o,1,l,u)&&kr(0,a,i,1,u[0])}}}var Jit=(function(){function r(t){this._inited=!1,this._startTime=0,this._pausedTime=0,this._paused=!1,this._life=t.life||1e3,this._delay=t.delay||0,this.loop=t.loop||!1,this.onframe=t.onframe||Ye,this.ondestroy=t.ondestroy||Ye,this.onrestart=t.onrestart||Ye,t.easing&&this.setEasing(t.easing)}return r.prototype.step=function(t,e){if(this._inited||(this._startTime=t+this._delay,this._inited=!0),this._paused){this._pausedTime+=e;return}var n=this._life,a=t-this._startTime-this._pausedTime,o=a/n;o<0&&(o=0),o=Math.min(o,1);var i=this.easingFunc,u=i?i(o):o;if(this.onframe(u),o===1)if(this.loop){var l=a%n;this._startTime=t-l,this._pausedTime=0,this.onrestart()}else return!0;return!1},r.prototype.pause=function(){this._paused=!0},r.prototype.resume=function(){this._paused=!1},r.prototype.setEasing=function(t){this.easing=t,this.easingFunc=X(t)?t:D0[t]||sv(t)},r})(),Zz=Jit;var Xz=(function(){function r(t){this.value=t}return r})();var jit=(function(){function r(){this._len=0}return r.prototype.insert=function(t){var e=new Xz(t);return this.insertEntry(e),e},r.prototype.insertEntry=function(t){this.head?(this.tail.next=t,t.prev=this.tail,t.next=null,this.tail=t):this.head=this.tail=t,this._len++},r.prototype.remove=function(t){var e=t.prev,n=t.next;e?e.next=n:this.head=n,n?n.prev=e:this.tail=e,t.next=t.prev=null,this._len--},r.prototype.len=function(){return this._len},r.prototype.clear=function(){this.head=this.tail=null,this._len=0},r})();var Yit=(function(){function r(t){this._list=new jit,this._maxSize=10,this._map={},this._maxSize=t}return r.prototype.put=function(t,e){var n=this._list,a=this._map,o=null;if(a[t]==null){var i=n.len(),u=this._lastRemovedEntry;if(i>=this._maxSize&&i>0){var l=n.head;n.remove(l),delete a[l.key],o=l.value,this._lastRemovedEntry=l}u?u.value=e:u=new Xz(e),u.key=t,n.insertEntry(u),a[t]=u}return o},r.prototype.get=function(t){var e=this._map[t],n=this._list;if(e!=null)return e!==n.tail&&(n.remove(e),n.insertEntry(e)),e.value},r.prototype.clear=function(){this._list.clear(),this._map={}},r.prototype.len=function(){return this._list.len()},r})(),ul=Yit;var Kz={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};function bi(r){return r=Math.round(r),r<0?0:r>255?255:r}function Qit(r){return r=Math.round(r),r<0?0:r>360?360:r}function Nh(r){return r<0?0:r>1?1:r}function mE(r){var t=r;return t.length&&t.charAt(t.length-1)==="%"?bi(parseFloat(t)/100*255):bi(parseInt(t,10))}function Ys(r){var t=r;return t.length&&t.charAt(t.length-1)==="%"?Nh(parseFloat(t)/100):Nh(parseFloat(t))}function hE(r,t,e){return e<0?e+=1:e>1&&(e-=1),e*6<1?r+(t-r)*e*6:e*2<1?t:e*3<2?r+(t-r)*(2/3-e)*6:r}function gf(r,t,e){return r+(t-r)*e}function $o(r,t,e,n,a){return r[0]=t,r[1]=e,r[2]=n,r[3]=a,r}function _E(r,t){return r[0]=t[0],r[1]=t[1],r[2]=t[2],r[3]=t[3],r}var eW=new ul(20),M0=null;function cv(r,t){M0&&_E(M0,t),M0=eW.put(r,M0||t.slice())}function Ln(r,t){if(r){t=t||[];var e=eW.get(r);if(e)return _E(t,e);r=r+"";var n=r.replace(/ /g,"").toLowerCase();if(n in Kz)return _E(t,Kz[n]),cv(r,t),t;var a=n.length;if(n.charAt(0)==="#"){if(a===4||a===5){var o=parseInt(n.slice(1,4),16);if(!(o>=0&&o<=4095)){$o(t,0,0,0,1);return}return $o(t,(o&3840)>>4|(o&3840)>>8,o&240|(o&240)>>4,o&15|(o&15)<<4,a===5?parseInt(n.slice(4),16)/15:1),cv(r,t),t}else if(a===7||a===9){var o=parseInt(n.slice(1,7),16);if(!(o>=0&&o<=16777215)){$o(t,0,0,0,1);return}return $o(t,(o&16711680)>>16,(o&65280)>>8,o&255,a===9?parseInt(n.slice(7),16)/255:1),cv(r,t),t}return}var i=n.indexOf("("),u=n.indexOf(")");if(i!==-1&&u+1===a){var l=n.substr(0,i),f=n.substr(i+1,u-(i+1)).split(","),s=1;switch(l){case"rgba":if(f.length!==4)return f.length===3?$o(t,+f[0],+f[1],+f[2],1):$o(t,0,0,0,1);s=Ys(f.pop());case"rgb":if(f.length>=3)return $o(t,mE(f[0]),mE(f[1]),mE(f[2]),f.length===3?s:Ys(f[3])),cv(r,t),t;$o(t,0,0,0,1);return;case"hsla":if(f.length!==4){$o(t,0,0,0,1);return}return f[3]=Ys(f[3]),gE(f,t),cv(r,t),t;case"hsl":if(f.length!==3){$o(t,0,0,0,1);return}return gE(f,t),cv(r,t),t;default:return}}$o(t,0,0,0,1)}}function gE(r,t){var e=(parseFloat(r[0])%360+360)%360/360,n=Ys(r[1]),a=Ys(r[2]),o=a<=.5?a*(n+1):a+n-a*n,i=a*2-o;return t=t||[],$o(t,bi(hE(i,o,e+1/3)*255),bi(hE(i,o,e)*255),bi(hE(i,o,e-1/3)*255),1),r.length===4&&(t[3]=r[3]),t}function Zit(r){if(r){var t=r[0]/255,e=r[1]/255,n=r[2]/255,a=Math.min(t,e,n),o=Math.max(t,e,n),i=o-a,u=(o+a)/2,l,f;if(i===0)l=0,f=0;else{u<.5?f=i/(o+a):f=i/(2-o-a);var s=((o-t)/6+i/2)/i,c=((o-e)/6+i/2)/i,p=((o-n)/6+i/2)/i;t===o?l=p-c:e===o?l=1/3+s-p:n===o&&(l=2/3+c-s),l<0&&(l+=1),l>1&&(l-=1)}var v=[l*360,f,u];return r[3]!=null&&v.push(r[3]),v}}function A0(r,t){var e=Ln(r);if(e){for(var n=0;n<3;n++)t<0?e[n]=e[n]*(1-t)|0:e[n]=(255-e[n])*t+e[n]|0,e[n]>255?e[n]=255:e[n]<0&&(e[n]=0);return qo(e,e.length===4?"rgba":"rgb")}}function I0(r,t,e){if(!(!(t&&t.length)||!(r>=0&&r<=1))){e=e||[];var n=r*(t.length-1),a=Math.floor(n),o=Math.ceil(n),i=t[a],u=t[o],l=n-a;return e[0]=bi(gf(i[0],u[0],l)),e[1]=bi(gf(i[1],u[1],l)),e[2]=bi(gf(i[2],u[2],l)),e[3]=Nh(gf(i[3],u[3],l)),e}}function rW(r,t,e){if(!(!(t&&t.length)||!(r>=0&&r<=1))){var n=r*(t.length-1),a=Math.floor(n),o=Math.ceil(n),i=Ln(t[a]),u=Ln(t[o]),l=n-a,f=qo([bi(gf(i[0],u[0],l)),bi(gf(i[1],u[1],l)),bi(gf(i[2],u[2],l)),Nh(gf(i[3],u[3],l))],"rgba");return e?{color:f,leftIndex:a,rightIndex:o,value:n}:f}}function Qs(r,t,e,n){var a=Ln(r);if(r)return a=Zit(a),t!=null&&(a[0]=Qit(t)),e!=null&&(a[1]=Ys(e)),n!=null&&(a[2]=Ys(n)),qo(gE(a),"rgba")}function Zs(r,t){var e=Ln(r);if(e&&t!=null)return e[3]=Nh(t),qo(e,"rgba")}function qo(r,t){if(!(!r||!r.length)){var e=r[0]+","+r[1]+","+r[2];return(t==="rgba"||t==="hsva"||t==="hsla")&&(e+=","+r[3]),t+"("+e+")"}}function pv(r,t){var e=Ln(r);return e?(.299*e[0]+.587*e[1]+.114*e[2])*e[3]/255+(1-e[3])*t:0}var tW=new ul(100);function Oh(r){if(V(r)){var t=tW.get(r);return t||(t=A0(r,-.1),tW.put(r,t)),t}else if(sf(r)){var e=N({},r);return e.colorStops=U(r.colorStops,function(n){return{offset:n.offset,color:A0(n.color,-.1)}}),e}return r}var L0=Math.round;function yf(r){var t;if(!r||r==="transparent")r="none";else if(typeof r=="string"&&r.indexOf("rgba")>-1){var e=Ln(r);e&&(r="rgb("+e[0]+","+e[1]+","+e[2]+")",t=e[3])}return{color:r,opacity:t??1}}var nW=1e-4;function pu(r){return r<nW&&r>-nW}function F0(r){return L0(r*1e3)/1e3}function R0(r){return L0(r*1e4)/1e4}function aW(r){return"matrix("+F0(r[0])+","+F0(r[1])+","+F0(r[2])+","+F0(r[3])+","+R0(r[4])+","+R0(r[5])+")"}var oW={left:"start",right:"end",center:"middle",middle:"middle"};function iW(r,t,e){return e==="top"?r+=t/2:e==="bottom"&&(r-=t/2),r}function uW(r){return r&&(r.shadowBlur||r.shadowOffsetX||r.shadowOffsetY)}function lW(r){var t=r.style,e=r.getGlobalScale();return[t.shadowColor,(t.shadowBlur||0).toFixed(2),(t.shadowOffsetX||0).toFixed(2),(t.shadowOffsetY||0).toFixed(2),e[0],e[1]].join(",")}function DE(r){return r&&!!r.image}function Xit(r){return r&&!!r.svgElement}function Uh(r){return DE(r)||Xit(r)}function P0(r){return r.type==="linear"}function N0(r){return r.type==="radial"}function O0(r){return r&&(r.type==="linear"||r.type==="radial")}function Hh(r){return"url(#"+r+")"}function U0(r){var t=r.getGlobalScale(),e=Math.max(t[0],t[1]);return Math.max(Math.ceil(Math.log(e)/Math.log(10)),1)}function H0(r){var t=r.x||0,e=r.y||0,n=(r.rotation||0)*nv,a=Tt(r.scaleX,1),o=Tt(r.scaleY,1),i=r.skewX||0,u=r.skewY||0,l=[];return(t||e)&&l.push("translate("+t+"px,"+e+"px)"),n&&l.push("rotate("+n+")"),(a!==1||o!==1)&&l.push("scale("+a+","+o+")"),(i||u)&&l.push("skew("+L0(i*nv)+"deg, "+L0(u*nv)+"deg)"),l.join(" ")}var fW=(function(){return Kt.hasGlobalWindow&&X(window.btoa)?function(r){return window.btoa(unescape(encodeURIComponent(r)))}:typeof Buffer<"u"?function(r){return Buffer.from(r).toString("base64")}:function(r){return null}})();var CE=Array.prototype.slice;function ll(r,t,e){return(t-r)*e+r}function bE(r,t,e,n){for(var a=t.length,o=0;o<a;o++)r[o]=ll(t[o],e[o],n);return r}function Kit(r,t,e,n){for(var a=t.length,o=a&&t[0].length,i=0;i<a;i++){r[i]||(r[i]=[]);for(var u=0;u<o;u++)r[i][u]=ll(t[i][u],e[i][u],n)}return r}function k0(r,t,e,n){for(var a=t.length,o=0;o<a;o++)r[o]=t[o]+e[o]*n;return r}function sW(r,t,e,n){for(var a=t.length,o=a&&t[0].length,i=0;i<a;i++){r[i]||(r[i]=[]);for(var u=0;u<o;u++)r[i][u]=t[i][u]+e[i][u]*n}return r}function tut(r,t){for(var e=r.length,n=t.length,a=e>n?t:r,o=Math.min(e,n),i=a[o-1]||{color:[0,0,0,0],offset:0},u=o;u<Math.max(e,n);u++)a.push({offset:i.offset,color:i.color.slice()})}function eut(r,t,e){var n=r,a=t;if(!(!n.push||!a.push)){var o=n.length,i=a.length;if(o!==i){var u=o>i;if(u)n.length=i;else for(var l=o;l<i;l++)n.push(e===1?a[l]:CE.call(a[l]))}for(var f=n[0]&&n[0].length,l=0;l<n.length;l++)if(e===1)isNaN(n[l])&&(n[l]=a[l]);else for(var s=0;s<f;s++)isNaN(n[l][s])&&(n[l][s]=a[l][s])}}function Xs(r){if(Ur(r)){var t=r.length;if(Ur(r[0])){for(var e=[],n=0;n<t;n++)e.push(CE.call(r[n]));return e}return CE.call(r)}return r}function G0(r){return r[0]=Math.floor(r[0])||0,r[1]=Math.floor(r[1])||0,r[2]=Math.floor(r[2])||0,r[3]=r[3]==null?1:r[3],"rgba("+r.join(",")+")"}function rut(r){return Ur(r&&r[0])?2:1}var z0=0,B0=1,vW=2,zh=3,TE=4,xE=5,cW=6;function pW(r){return r===TE||r===xE}function W0(r){return r===B0||r===vW}var kh=[0,0,0,0],nut=(function(){function r(t){this.keyframes=[],this.discrete=!1,this._invalid=!1,this._needsSort=!1,this._lastFr=0,this._lastFrP=0,this.propName=t}return r.prototype.isFinished=function(){return this._finished},r.prototype.setFinished=function(){this._finished=!0,this._additiveTrack&&this._additiveTrack.setFinished()},r.prototype.needsAnimate=function(){return this.keyframes.length>=1},r.prototype.getAdditiveTrack=function(){return this._additiveTrack},r.prototype.addKeyframe=function(t,e,n){this._needsSort=!0;var a=this.keyframes,o=a.length,i=!1,u=cW,l=e;if(Ur(e)){var f=rut(e);u=f,(f===1&&!Nt(e[0])||f===2&&!Nt(e[0][0]))&&(i=!0)}else if(Nt(e)&&!cf(e))u=z0;else if(V(e))if(!isNaN(+e))u=z0;else{var s=Ln(e);s&&(l=s,u=zh)}else if(sf(e)){var c=N({},l);c.colorStops=U(e.colorStops,function(v){return{offset:v.offset,color:Ln(v.color)}}),P0(e)?u=TE:N0(e)&&(u=xE),l=c}o===0?this.valType=u:(u!==this.valType||u===cW)&&(i=!0),this.discrete=this.discrete||i;var p={time:t,value:l,rawValue:e,percent:0};return n&&(p.easing=n,p.easingFunc=X(n)?n:D0[n]||sv(n)),a.push(p),p},r.prototype.prepare=function(t,e){var n=this.keyframes;this._needsSort&&n.sort(function(m,h){return m.time-h.time});for(var a=this.valType,o=n.length,i=n[o-1],u=this.discrete,l=W0(a),f=pW(a),s=0;s<o;s++){var c=n[s],p=c.value,v=i.value;c.percent=c.time/t,u||(l&&s!==o-1?eut(p,v,a):f&&tut(p.colorStops,v.colorStops))}if(!u&&a!==xE&&e&&this.needsAnimate()&&e.needsAnimate()&&a===e.valType&&!e._finished){this._additiveTrack=e;for(var d=n[0].value,s=0;s<o;s++)a===z0?n[s].additiveValue=n[s].value-d:a===zh?n[s].additiveValue=k0([],n[s].value,d,-1):W0(a)&&(n[s].additiveValue=a===B0?k0([],n[s].value,d,-1):sW([],n[s].value,d,-1))}},r.prototype.step=function(t,e){if(!this._finished){this._additiveTrack&&this._additiveTrack._finished&&(this._additiveTrack=null);var n=this._additiveTrack!=null,a=n?"additiveValue":"value",o=this.valType,i=this.keyframes,u=i.length,l=this.propName,f=o===zh,s,c=this._lastFr,p=Math.min,v,d;if(u===1)v=d=i[0];else{if(e<0)s=0;else if(e<this._lastFrP){var m=p(c+1,u-1);for(s=m;s>=0&&!(i[s].percent<=e);s--);s=p(s,u-2)}else{for(s=c;s<u&&!(i[s].percent>e);s++);s=p(s-1,u-2)}d=i[s+1],v=i[s]}if(v&&d){this._lastFr=s,this._lastFrP=e;var h=d.percent-v.percent,_=h===0?1:p((e-v.percent)/h,1);d.easingFunc&&(_=d.easingFunc(_));var g=n?this._additiveValue:f?kh:t[l];if((W0(o)||f)&&!g&&(g=this._additiveValue=[]),this.discrete)t[l]=_<1?v.rawValue:d.rawValue;else if(W0(o))o===B0?bE(g,v[a],d[a],_):Kit(g,v[a],d[a],_);else if(pW(o)){var y=v[a],D=d[a],b=o===TE;t[l]={type:b?"linear":"radial",x:ll(y.x,D.x,_),y:ll(y.y,D.y,_),colorStops:U(y.colorStops,function(x,w){var S=D.colorStops[w];return{offset:ll(x.offset,S.offset,_),color:G0(bE([],x.color,S.color,_))}}),global:D.global},b?(t[l].x2=ll(y.x2,D.x2,_),t[l].y2=ll(y.y2,D.y2,_)):t[l].r=ll(y.r,D.r,_)}else if(f)bE(g,v[a],d[a],_),n||(t[l]=G0(g));else{var C=ll(v[a],d[a],_);n?this._additiveValue=C:t[l]=C}n&&this._addToTarget(t)}}},r.prototype._addToTarget=function(t){var e=this.valType,n=this.propName,a=this._additiveValue;e===z0?t[n]=t[n]+a:e===zh?(Ln(t[n],kh),k0(kh,kh,a,1),t[n]=G0(kh)):e===B0?k0(t[n],t[n],a,1):e===vW&&sW(t[n],t[n],a,1)},r})(),aut=(function(){function r(t,e,n,a){if(this._tracks={},this._trackKeys=[],this._maxTime=0,this._started=0,this._clip=null,this._target=t,this._loop=e,e&&a){ks("Can' use additive animation on looped animation.");return}this._additiveAnimators=a,this._allowDiscrete=n}return r.prototype.getMaxTime=function(){return this._maxTime},r.prototype.getDelay=function(){return this._delay},r.prototype.getLoop=function(){return this._loop},r.prototype.getTarget=function(){return this._target},r.prototype.changeTarget=function(t){this._target=t},r.prototype.when=function(t,e,n){return this.whenWithKeys(t,e,Ft(e),n)},r.prototype.whenWithKeys=function(t,e,n,a){for(var o=this._tracks,i=0;i<n.length;i++){var u=n[i],l=o[u];if(!l){l=o[u]=new nut(u);var f=void 0,s=this._getAdditiveTrack(u);if(s){var c=s.keyframes,p=c[c.length-1];f=p&&p.value,s.valType===zh&&f&&(f=G0(f))}else f=this._target[u];if(f==null)continue;t>0&&l.addKeyframe(0,Xs(f),a),this._trackKeys.push(u)}l.addKeyframe(t,Xs(e[u]),a)}return this._maxTime=Math.max(this._maxTime,t),this},r.prototype.pause=function(){this._clip.pause(),this._paused=!0},r.prototype.resume=function(){this._clip.resume(),this._paused=!1},r.prototype.isPaused=function(){return!!this._paused},r.prototype.duration=function(t){return this._maxTime=t,this._force=!0,this},r.prototype._doneCallback=function(){this._setTracksFinished(),this._clip=null;var t=this._doneCbs;if(t)for(var e=t.length,n=0;n<e;n++)t[n].call(this)},r.prototype._abortedCallback=function(){this._setTracksFinished();var t=this.animation,e=this._abortedCbs;if(t&&t.removeClip(this._clip),this._clip=null,e)for(var n=0;n<e.length;n++)e[n].call(this)},r.prototype._setTracksFinished=function(){for(var t=this._tracks,e=this._trackKeys,n=0;n<e.length;n++)t[e[n]].setFinished()},r.prototype._getAdditiveTrack=function(t){var e,n=this._additiveAnimators;if(n)for(var a=0;a<n.length;a++){var o=n[a].getTrack(t);o&&(e=o)}return e},r.prototype.start=function(t){if(!(this._started>0)){this._started=1;for(var e=this,n=[],a=this._maxTime||0,o=0;o<this._trackKeys.length;o++){var i=this._trackKeys[o],u=this._tracks[i],l=this._getAdditiveTrack(i),f=u.keyframes,s=f.length;if(u.prepare(a,l),u.needsAnimate())if(!this._allowDiscrete&&u.discrete){var c=f[s-1];c&&(e._target[u.propName]=c.rawValue),u.setFinished()}else n.push(u)}if(n.length||this._force){var p=new Zz({life:a,loop:this._loop,delay:this._delay||0,onframe:function(v){e._started=2;var d=e._additiveAnimators;if(d){for(var m=!1,h=0;h<d.length;h++)if(d[h]._clip){m=!0;break}m||(e._additiveAnimators=null)}for(var h=0;h<n.length;h++)n[h].step(e._target,v);var _=e._onframeCbs;if(_)for(var h=0;h<_.length;h++)_[h](e._target,v)},ondestroy:function(){e._doneCallback()}});this._clip=p,this.animation&&this.animation.addClip(p),t&&p.setEasing(t)}else this._doneCallback();return this}},r.prototype.stop=function(t){if(this._clip){var e=this._clip;t&&e.onframe(1),this._abortedCallback()}},r.prototype.delay=function(t){return this._delay=t,this},r.prototype.during=function(t){return t&&(this._onframeCbs||(this._onframeCbs=[]),this._onframeCbs.push(t)),this},r.prototype.done=function(t){return t&&(this._doneCbs||(this._doneCbs=[]),this._doneCbs.push(t)),this},r.prototype.aborted=function(t){return t&&(this._abortedCbs||(this._abortedCbs=[]),this._abortedCbs.push(t)),this},r.prototype.getClip=function(){return this._clip},r.prototype.getTrack=function(t){return this._tracks[t]},r.prototype.getTracks=function(){var t=this;return U(this._trackKeys,function(e){return t._tracks[e]})},r.prototype.stopTracks=function(t,e){if(!t.length||!this._clip)return!0;for(var n=this._tracks,a=this._trackKeys,o=0;o<t.length;o++){var i=n[t[o]];i&&!i.isFinished()&&(e?i.step(this._target,1):this._started===1&&i.step(this._target,0),i.setFinished())}for(var u=!0,o=0;o<a.length;o++)if(!n[a[o]].isFinished()){u=!1;break}return u&&this._abortedCallback(),u},r.prototype.saveTo=function(t,e,n){if(t){e=e||this._trackKeys;for(var a=0;a<e.length;a++){var o=e[a],i=this._tracks[o];if(!(!i||i.isFinished())){var u=i.keyframes,l=u[n?0:u.length-1];l&&(t[o]=Xs(l.rawValue))}}}},r.prototype.__changeFinalValue=function(t,e){e=e||Ft(t);for(var n=0;n<e.length;n++){var a=e[n],o=this._tracks[a];if(o){var i=o.keyframes;if(i.length>1){var u=i.pop();o.addKeyframe(u.time,t[a]),o.prepare(this._maxTime,o.getAdditiveTrack())}}}},r})(),Wh=aut;function Ks(){return new Date().getTime()}var out=(function(r){A(t,r);function t(e){var n=r.call(this)||this;return n._running=!1,n._time=0,n._pausedTime=0,n._pauseStart=0,n._paused=!1,e=e||{},n.stage=e.stage||{},n}return t.prototype.addClip=function(e){e.animation&&this.removeClip(e),this._head?(this._tail.next=e,e.prev=this._tail,e.next=null,this._tail=e):this._head=this._tail=e,e.animation=this},t.prototype.addAnimator=function(e){e.animation=this;var n=e.getClip();n&&this.addClip(n)},t.prototype.removeClip=function(e){if(e.animation){var n=e.prev,a=e.next;n?n.next=a:this._head=a,a?a.prev=n:this._tail=n,e.next=e.prev=e.animation=null}},t.prototype.removeAnimator=function(e){var n=e.getClip();n&&this.removeClip(n),e.animation=null},t.prototype.update=function(e){for(var n=Ks()-this._pausedTime,a=n-this._time,o=this._head;o;){var i=o.next,u=o.step(n,a);u&&(o.ondestroy(),this.removeClip(o)),o=i}this._time=n,e||(this.trigger("frame",a),this.stage.update&&this.stage.update())},t.prototype._startLoop=function(){var e=this;this._running=!0;function n(){e._running&&(Lh(n),!e._paused&&e.update())}Lh(n)},t.prototype.start=function(){this._running||(this._time=Ks(),this._pausedTime=0,this._startLoop())},t.prototype.stop=function(){this._running=!1},t.prototype.pause=function(){this._paused||(this._pauseStart=Ks(),this._paused=!0)},t.prototype.resume=function(){this._paused&&(this._pausedTime+=Ks()-this._pauseStart,this._paused=!1)},t.prototype.clear=function(){for(var e=this._head;e;){var n=e.next;e.prev=e.next=e.animation=null,e=n}this._head=this._tail=null},t.prototype.isFinished=function(){return this._head==null},t.prototype.animate=function(e,n){n=n||{},this.start();var a=new Wh(e,n.loop);return this.addAnimator(a),a},t})(en),dW=out;var iut=300,wE=Kt.domSupported,SE=(function(){var r=["click","dblclick","mousewheel","wheel","mouseout","mouseup","mousedown","mousemove","contextmenu"],t=["touchstart","touchend","touchmove"],e={pointerdown:1,pointerup:1,pointermove:1,pointerout:1},n=U(r,function(a){var o=a.replace("mouse","pointer");return e.hasOwnProperty(o)?o:a});return{mouse:r,touch:t,pointer:n}})(),mW={mouse:["mousemove","mouseup"],pointer:["pointermove","pointerup"]},hW=!1;function AE(r){var t=r.pointerType;return t==="pen"||t==="touch"}function uut(r){r.touching=!0,r.touchTimer!=null&&(clearTimeout(r.touchTimer),r.touchTimer=null),r.touchTimer=setTimeout(function(){r.touching=!1,r.touchTimer=null},700)}function EE(r){r&&(r.zrByTouch=!0)}function lut(r,t){return $a(r.dom,new fut(r,t),!0)}function gW(r,t){for(var e=t,n=!1;e&&e.nodeType!==9&&!(n=e.domBelongToZr||e!==t&&e===r.painterRoot);)e=e.parentNode;return n}var fut=(function(){function r(t,e){this.stopPropagation=Ye,this.stopImmediatePropagation=Ye,this.preventDefault=Ye,this.type=e.type,this.target=this.currentTarget=t.dom,this.pointerType=e.pointerType,this.clientX=e.clientX,this.clientY=e.clientY}return r})(),Ci={mousedown:function(r){r=$a(this.dom,r),this.__mayPointerCapture=[r.zrX,r.zrY],this.trigger("mousedown",r)},mousemove:function(r){r=$a(this.dom,r);var t=this.__mayPointerCapture;t&&(r.zrX!==t[0]||r.zrY!==t[1])&&this.__togglePointerCapture(!0),this.trigger("mousemove",r)},mouseup:function(r){r=$a(this.dom,r),this.__togglePointerCapture(!1),this.trigger("mouseup",r)},mouseout:function(r){r=$a(this.dom,r);var t=r.toElement||r.relatedTarget;gW(this,t)||(this.__pointerCapturing&&(r.zrEventControl="no_globalout"),this.trigger("mouseout",r))},wheel:function(r){hW=!0,r=$a(this.dom,r),this.trigger("mousewheel",r)},mousewheel:function(r){hW||(r=$a(this.dom,r),this.trigger("mousewheel",r))},touchstart:function(r){r=$a(this.dom,r),EE(r),this.__lastTouchMoment=new Date,this.handler.processGesture(r,"start"),Ci.mousemove.call(this,r),Ci.mousedown.call(this,r)},touchmove:function(r){r=$a(this.dom,r),EE(r),this.handler.processGesture(r,"change"),Ci.mousemove.call(this,r)},touchend:function(r){r=$a(this.dom,r),EE(r),this.handler.processGesture(r,"end"),Ci.mouseup.call(this,r),+new Date-+this.__lastTouchMoment<iut&&Ci.click.call(this,r)},pointerdown:function(r){Ci.mousedown.call(this,r)},pointermove:function(r){AE(r)||Ci.mousemove.call(this,r)},pointerup:function(r){Ci.mouseup.call(this,r)},pointerout:function(r){AE(r)||Ci.mouseout.call(this,r)}};T(["click","dblclick","contextmenu"],function(r){Ci[r]=function(t){t=$a(this.dom,t),this.trigger(r,t)}});var IE={pointermove:function(r){AE(r)||IE.mousemove.call(this,r)},pointerup:function(r){IE.mouseup.call(this,r)},mousemove:function(r){this.trigger("mousemove",r)},mouseup:function(r){var t=this.__pointerCapturing;this.__togglePointerCapture(!1),this.trigger("mouseup",r),t&&(r.zrEventControl="only_globalout",this.trigger("mouseout",r))}};function sut(r,t){var e=t.domHandlers;Kt.pointerEventsSupported?T(SE.pointer,function(n){V0(t,n,function(a){e[n].call(r,a)})}):(Kt.touchEventsSupported&&T(SE.touch,function(n){V0(t,n,function(a){e[n].call(r,a),uut(t)})}),T(SE.mouse,function(n){V0(t,n,function(a){a=h0(a),t.touching||e[n].call(r,a)})}))}function cut(r,t){Kt.pointerEventsSupported?T(mW.pointer,e):Kt.touchEventsSupported||T(mW.mouse,e);function e(n){function a(o){o=h0(o),gW(r,o.target)||(o=lut(r,o),t.domHandlers[n].call(r,o))}V0(t,n,a,{capture:!0})}}function V0(r,t,e,n){r.mounted[t]=e,r.listenerOpts[t]=n,Sh(r.domTarget,t,e,n)}function ME(r){var t=r.mounted;for(var e in t)t.hasOwnProperty(e)&&Az(r.domTarget,e,t[e],r.listenerOpts[e]);r.mounted={}}var _W=(function(){function r(t,e){this.mounted={},this.listenerOpts={},this.touching=!1,this.domTarget=t,this.domHandlers=e}return r})(),put=(function(r){A(t,r);function t(e,n){var a=r.call(this)||this;return a.__pointerCapturing=!1,a.dom=e,a.painterRoot=n,a._localHandlerScope=new _W(e,Ci),wE&&(a._globalHandlerScope=new _W(document,IE)),sut(a,a._localHandlerScope),a}return t.prototype.dispose=function(){ME(this._localHandlerScope),wE&&ME(this._globalHandlerScope)},t.prototype.setCursor=function(e){this.dom.style&&(this.dom.style.cursor=e||"default")},t.prototype.__togglePointerCapture=function(e){if(this.__mayPointerCapture=null,wE&&+this.__pointerCapturing^+e){this.__pointerCapturing=e;var n=this._globalHandlerScope;e?cut(this,n):ME(n)}},t})(en),yW=put;var DW=1;Kt.hasGlobalWindow&&(DW=Math.max(window.devicePixelRatio||window.screen&&window.screen.deviceXDPI/window.screen.logicalXDPI||1,1));var tc=DW,Gh=.4,Bh="#333",Vh="#ccc",bW="#eee";var CW=vf,TW=5e-5;function ec(r){return r>TW||r<-TW}var rc=[],vv=[],FE=jr(),LE=Math.abs,vut=(function(){function r(){}return r.prototype.getLocalTransform=function(t){return r.getLocalTransform(this,t)},r.prototype.setPosition=function(t){this.x=t[0],this.y=t[1]},r.prototype.setScale=function(t){this.scaleX=t[0],this.scaleY=t[1]},r.prototype.setSkew=function(t){this.skewX=t[0],this.skewY=t[1]},r.prototype.setOrigin=function(t){this.originX=t[0],this.originY=t[1]},r.prototype.needLocalTransform=function(){return ec(this.rotation)||ec(this.x)||ec(this.y)||ec(this.scaleX-1)||ec(this.scaleY-1)||ec(this.skewX)||ec(this.skewY)},r.prototype.updateTransform=function(){var t=this.parent&&this.parent.transform,e=this.needLocalTransform(),n=this.transform;if(!(e||t)){n&&(CW(n),this.invTransform=null);return}n=n||jr(),e?this.getLocalTransform(n):CW(n),t&&(e?Ja(n,t,n):Eh(n,t)),this.transform=n,this._resolveGlobalScaleRatio(n)},r.prototype._resolveGlobalScaleRatio=function(t){var e=this.globalScaleRatio;if(e!=null&&e!==1){this.getGlobalScale(rc);var n=rc[0]<0?-1:1,a=rc[1]<0?-1:1,o=((rc[0]-n)*e+n)/rc[0]||0,i=((rc[1]-a)*e+a)/rc[1]||0;t[0]*=o,t[1]*=o,t[2]*=i,t[3]*=i}this.invTransform=this.invTransform||jr(),Go(this.invTransform,t)},r.prototype.getComputedTransform=function(){for(var t=this,e=[];t;)e.push(t),t=t.parent;for(;t=e.pop();)t.updateTransform();return this.transform},r.prototype.setLocalTransform=function(t){if(t){var e=t[0]*t[0]+t[1]*t[1],n=t[2]*t[2]+t[3]*t[3],a=Math.atan2(t[1],t[0]),o=Math.PI/2+a-Math.atan2(t[3],t[2]);n=Math.sqrt(n)*Math.cos(o),e=Math.sqrt(e),this.skewX=o,this.skewY=0,this.rotation=-a,this.x=+t[4],this.y=+t[5],this.scaleX=e,this.scaleY=n,this.originX=0,this.originY=0}},r.prototype.decomposeTransform=function(){if(this.transform){var t=this.parent,e=this.transform;t&&t.transform&&(t.invTransform=t.invTransform||jr(),Ja(vv,t.invTransform,e),e=vv);var n=this.originX,a=this.originY;(n||a)&&(FE[4]=n,FE[5]=a,Ja(vv,e,FE),vv[4]-=n,vv[5]-=a,e=vv),this.setLocalTransform(e)}},r.prototype.getGlobalScale=function(t){var e=this.transform;return t=t||[],e?(t[0]=Math.sqrt(e[0]*e[0]+e[1]*e[1]),t[1]=Math.sqrt(e[2]*e[2]+e[3]*e[3]),e[0]<0&&(t[0]=-t[0]),e[3]<0&&(t[1]=-t[1]),t):(t[0]=1,t[1]=1,t)},r.prototype.transformCoordToLocal=function(t,e){var n=[t,e],a=this.invTransform;return a&&Hr(n,n,a),n},r.prototype.transformCoordToGlobal=function(t,e){var n=[t,e],a=this.transform;return a&&Hr(n,n,a),n},r.prototype.getLineScale=function(){var t=this.transform;return t&&LE(t[0]-1)>1e-10&&LE(t[3]-1)>1e-10?Math.sqrt(LE(t[0]*t[3]-t[2]*t[1])):1},r.prototype.copyTransform=function(t){RE(this,t)},r.getLocalTransform=function(t,e){e=e||[];var n=t.originX||0,a=t.originY||0,o=t.scaleX,i=t.scaleY,u=t.anchorX,l=t.anchorY,f=t.rotation||0,s=t.x,c=t.y,p=t.skewX?Math.tan(t.skewX):0,v=t.skewY?Math.tan(-t.skewY):0;if(n||a||u||l){var d=n+u,m=a+l;e[4]=-d*o-p*m*i,e[5]=-m*i-v*d*o}else e[4]=e[5]=0;return e[0]=o,e[3]=i,e[1]=v*o,e[2]=p*i,f&&ja(e,e,f),e[4]+=n+s,e[5]+=a+c,e},r.initDefaultProps=(function(){var t=r.prototype;t.scaleX=t.scaleY=t.globalScaleRatio=1,t.x=t.y=t.originX=t.originY=t.skewX=t.skewY=t.rotation=t.anchorX=t.anchorY=0})(),r})(),bo=["x","y","originX","originY","anchorX","anchorY","rotation","scaleX","scaleY","skewX","skewY"];function RE(r,t){for(var e=0;e<bo.length;e++){var n=bo[e];r[n]=t[n]}}var Ya=vut;var xW={};function Qa(r,t){t=t||_o;var e=xW[t];e||(e=xW[t]=new ul(500));var n=e.get(r);return n==null&&(n=la.measureText(r,t).width,e.put(r,n)),n}function wW(r,t,e,n){var a=Qa(r,t),o=mv(t),i=dv(0,a,e),u=nc(0,o,n),l=new yt(i,u,a,o);return l}function vu(r,t,e,n){var a=((r||"")+"").split(`+`),o=a.length;if(o===1)return wW(a[0],t,e,n);for(var i=new yt(0,0,0,0),u=0;u<a.length;u++){var l=wW(a[u],t,e,n);u===0?i.copy(l):i.union(l)}return i}function dv(r,t,e){return e==="right"?r-=t:e==="center"&&(r-=t/2),r}function nc(r,t,e){return e==="middle"?r-=t/2:e==="bottom"&&(r-=t),r}function mv(r){return Qa("\u56FD",r)}function qn(r,t){return typeof r=="string"?r.lastIndexOf("%")>=0?parseFloat(r)/100*t:parseFloat(r):r}function ac(r,t,e){var n=t.position||"inside",a=t.distance!=null?t.distance:5,o=e.height,i=e.width,u=o/2,l=e.x,f=e.y,s="left",c="top";if(n instanceof Array)l+=qn(n[0],e.width),f+=qn(n[1],e.height),s=null,c=null;else switch(n){case"left":l-=a,f+=u,s="right",c="middle";break;case"right":l+=a+i,f+=u,c="middle";break;case"top":l+=i/2,f-=a,s="center",c="bottom";break;case"bottom":l+=i/2,f+=o+a,s="center";break;case"inside":l+=i/2,f+=u,s="center",c="middle";break;case"insideLeft":l+=a,f+=u,c="middle";break;case"insideRight":l+=i-a,f+=u,s="right",c="middle";break;case"insideTop":l+=i/2,f+=a,s="center";break;case"insideBottom":l+=i/2,f+=o-a,s="center",c="bottom";break;case"insideTopLeft":l+=a,f+=a;break;case"insideTopRight":l+=i-a,f+=a,s="right";break;case"insideBottomLeft":l+=a,f+=o-a,c="bottom";break;case"insideBottomRight":l+=i-a,f+=o-a,s="right",c="bottom";break}return r=r||{},r.x=l,r.y=f,r.align=s,r.verticalAlign=c,r}var PE="__zr_normal__",NE=bo.concat(["ignore"]),dut=Bn(bo,function(r,t){return r[t]=!0,r},{ignore:!1}),hv={},mut=new yt(0,0,0,0),HE=(function(){function r(t){this.id=f0(),this.animators=[],this.currentStates=[],this.states={},this._init(t)}return r.prototype._init=function(t){this.attr(t)},r.prototype.drift=function(t,e,n){switch(this.draggable){case"horizontal":e=0;break;case"vertical":t=0;break}var a=this.transform;a||(a=this.transform=[1,0,0,1,0,0]),a[4]+=t,a[5]+=e,this.decomposeTransform(),this.markRedraw()},r.prototype.beforeUpdate=function(){},r.prototype.afterUpdate=function(){},r.prototype.update=function(){this.updateTransform(),this.__dirty&&this.updateInnerText()},r.prototype.updateInnerText=function(t){var e=this._textContent;if(e&&(!e.ignore||t)){this.textConfig||(this.textConfig={});var n=this.textConfig,a=n.local,o=e.innerTransformable,i=void 0,u=void 0,l=!1;o.parent=a?this:null;var f=!1;if(o.copyTransform(e),n.position!=null){var s=mut;n.layoutRect?s.copy(n.layoutRect):s.copy(this.getBoundingRect()),a||s.applyTransform(this.transform),this.calculateTextPosition?this.calculateTextPosition(hv,n,s):ac(hv,n,s),o.x=hv.x,o.y=hv.y,i=hv.align,u=hv.verticalAlign;var c=n.origin;if(c&&n.rotation!=null){var p=void 0,v=void 0;c==="center"?(p=s.width*.5,v=s.height*.5):(p=qn(c[0],s.width),v=qn(c[1],s.height)),f=!0,o.originX=-o.x+p+(a?0:s.x),o.originY=-o.y+v+(a?0:s.y)}}n.rotation!=null&&(o.rotation=n.rotation);var d=n.offset;d&&(o.x+=d[0],o.y+=d[1],f||(o.originX=-d[0],o.originY=-d[1]));var m=n.inside==null?typeof n.position=="string"&&n.position.indexOf("inside")>=0:n.inside,h=this._innerTextDefaultStyle||(this._innerTextDefaultStyle={}),_=void 0,g=void 0,y=void 0;m&&this.canBeInsideText()?(_=n.insideFill,g=n.insideStroke,(_==null||_==="auto")&&(_=this.getInsideTextFill()),(g==null||g==="auto")&&(g=this.getInsideTextStroke(_),y=!0)):(_=n.outsideFill,g=n.outsideStroke,(_==null||_==="auto")&&(_=this.getOutsideFill()),(g==null||g==="auto")&&(g=this.getOutsideStroke(_),y=!0)),_=_||"#000",(_!==h.fill||g!==h.stroke||y!==h.autoStroke||i!==h.align||u!==h.verticalAlign)&&(l=!0,h.fill=_,h.stroke=g,h.autoStroke=y,h.align=i,h.verticalAlign=u,e.setDefaultTextStyle(h)),e.__dirty|=ln,l&&e.dirtyStyle(!0)}},r.prototype.canBeInsideText=function(){return!0},r.prototype.getInsideTextFill=function(){return"#fff"},r.prototype.getInsideTextStroke=function(t){return"#000"},r.prototype.getOutsideFill=function(){return this.__zr&&this.__zr.isDarkMode()?Vh:Bh},r.prototype.getOutsideStroke=function(t){var e=this.__zr&&this.__zr.getBackgroundColor(),n=typeof e=="string"&&Ln(e);n||(n=[255,255,255,1]);for(var a=n[3],o=this.__zr.isDarkMode(),i=0;i<3;i++)n[i]=n[i]*a+(o?0:255)*(1-a);return n[3]=1,qo(n,"rgba")},r.prototype.traverse=function(t,e){},r.prototype.attrKV=function(t,e){t==="textConfig"?this.setTextConfig(e):t==="textContent"?this.setTextContent(e):t==="clipPath"?this.setClipPath(e):t==="extra"?(this.extra=this.extra||{},N(this.extra,e)):this[t]=e},r.prototype.hide=function(){this.ignore=!0,this.markRedraw()},r.prototype.show=function(){this.ignore=!1,this.markRedraw()},r.prototype.attr=function(t,e){if(typeof t=="string")this.attrKV(t,e);else if(nt(t))for(var n=t,a=Ft(n),o=0;o<a.length;o++){var i=a[o];this.attrKV(i,t[i])}return this.markRedraw(),this},r.prototype.saveCurrentToNormalState=function(t){this._innerSaveToNormal(t);for(var e=this._normalState,n=0;n<this.animators.length;n++){var a=this.animators[n],o=a.__fromStateTransition;if(!(a.getLoop()||o&&o!==PE)){var i=a.targetName,u=i?e[i]:e;a.saveTo(u)}}},r.prototype._innerSaveToNormal=function(t){var e=this._normalState;e||(e=this._normalState={}),t.textConfig&&!e.textConfig&&(e.textConfig=this.textConfig),this._savePrimaryToNormal(t,e,NE)},r.prototype._savePrimaryToNormal=function(t,e,n){for(var a=0;a<n.length;a++){var o=n[a];t[o]!=null&&!(o in e)&&(e[o]=this[o])}},r.prototype.hasState=function(){return this.currentStates.length>0},r.prototype.getState=function(t){return this.states[t]},r.prototype.ensureState=function(t){var e=this.states;return e[t]||(e[t]={}),e[t]},r.prototype.clearStates=function(t){this.useState(PE,!1,t)},r.prototype.useState=function(t,e,n,a){var o=t===PE,i=this.hasState();if(!(!i&&o)){var u=this.currentStates,l=this.stateTransition;if(!(wt(u,t)>=0&&(e||u.length===1))){var f;if(this.stateProxy&&!o&&(f=this.stateProxy(t)),f||(f=this.states&&this.states[t]),!f&&!o){ks("State "+t+" not exists.");return}o||this.saveCurrentToNormalState(f);var s=!!(f&&f.hoverLayer||a);s&&this._toggleHoverLayerFlag(!0),this._applyStateObj(t,f,this._normalState,e,!n&&!this.__inHover&&l&&l.duration>0,l);var c=this._textContent,p=this._textGuide;return c&&c.useState(t,e,n,s),p&&p.useState(t,e,n,s),o?(this.currentStates=[],this._normalState={}):e?this.currentStates.push(t):this.currentStates=[t],this._updateAnimationTargets(),this.markRedraw(),!s&&this.__inHover&&(this._toggleHoverLayerFlag(!1),this.__dirty&=~ln),f}}},r.prototype.useStates=function(t,e,n){if(!t.length)this.clearStates();else{var a=[],o=this.currentStates,i=t.length,u=i===o.length;if(u){for(var l=0;l<i;l++)if(t[l]!==o[l]){u=!1;break}}if(u)return;for(var l=0;l<i;l++){var f=t[l],s=void 0;this.stateProxy&&(s=this.stateProxy(f,t)),s||(s=this.states[f]),s&&a.push(s)}var c=a[i-1],p=!!(c&&c.hoverLayer||n);p&&this._toggleHoverLayerFlag(!0);var v=this._mergeStates(a),d=this.stateTransition;this.saveCurrentToNormalState(v),this._applyStateObj(t.join(","),v,this._normalState,!1,!e&&!this.__inHover&&d&&d.duration>0,d);var m=this._textContent,h=this._textGuide;m&&m.useStates(t,e,p),h&&h.useStates(t,e,p),this._updateAnimationTargets(),this.currentStates=t.slice(),this.markRedraw(),!p&&this.__inHover&&(this._toggleHoverLayerFlag(!1),this.__dirty&=~ln)}},r.prototype.isSilent=function(){for(var t=this.silent,e=this.parent;!t&&e;){if(e.silent){t=!0;break}e=e.parent}return t},r.prototype._updateAnimationTargets=function(){for(var t=0;t<this.animators.length;t++){var e=this.animators[t];e.targetName&&e.changeTarget(this[e.targetName])}},r.prototype.removeState=function(t){var e=wt(this.currentStates,t);if(e>=0){var n=this.currentStates.slice();n.splice(e,1),this.useStates(n)}},r.prototype.replaceState=function(t,e,n){var a=this.currentStates.slice(),o=wt(a,t),i=wt(a,e)>=0;o>=0?i?a.splice(o,1):a[o]=e:n&&!i&&a.push(e),this.useStates(a)},r.prototype.toggleState=function(t,e){e?this.useState(t,!0):this.removeState(t)},r.prototype._mergeStates=function(t){for(var e={},n,a=0;a<t.length;a++){var o=t[a];N(e,o),o.textConfig&&(n=n||{},N(n,o.textConfig))}return n&&(e.textConfig=n),e},r.prototype._applyStateObj=function(t,e,n,a,o,i){var u=!(e&&a);e&&e.textConfig?(this.textConfig=N({},a?this.textConfig:n.textConfig),N(this.textConfig,e.textConfig)):u&&n.textConfig&&(this.textConfig=n.textConfig);for(var l={},f=!1,s=0;s<NE.length;s++){var c=NE[s],p=o&&dut[c];e&&e[c]!=null?p?(f=!0,l[c]=e[c]):this[c]=e[c]:u&&n[c]!=null&&(p?(f=!0,l[c]=n[c]):this[c]=n[c])}if(!o)for(var s=0;s<this.animators.length;s++){var v=this.animators[s],d=v.targetName;v.getLoop()||v.__changeFinalValue(d?(e||n)[d]:e||n)}f&&this._transitionState(t,l,i)},r.prototype._attachComponent=function(t){if(!(t.__zr&&!t.__hostTarget)&&t!==this){var e=this.__zr;e&&t.addSelfToZr(e),t.__zr=e,t.__hostTarget=this}},r.prototype._detachComponent=function(t){t.__zr&&t.removeSelfFromZr(t.__zr),t.__zr=null,t.__hostTarget=null},r.prototype.getClipPath=function(){return this._clipPath},r.prototype.setClipPath=function(t){this._clipPath&&this._clipPath!==t&&this.removeClipPath(),this._attachComponent(t),this._clipPath=t,this.markRedraw()},r.prototype.removeClipPath=function(){var t=this._clipPath;t&&(this._detachComponent(t),this._clipPath=null,this.markRedraw())},r.prototype.getTextContent=function(){return this._textContent},r.prototype.setTextContent=function(t){var e=this._textContent;e!==t&&(e&&e!==t&&this.removeTextContent(),t.innerTransformable=new Ya,this._attachComponent(t),this._textContent=t,this.markRedraw())},r.prototype.setTextConfig=function(t){this.textConfig||(this.textConfig={}),N(this.textConfig,t),this.markRedraw()},r.prototype.removeTextConfig=function(){this.textConfig=null,this.markRedraw()},r.prototype.removeTextContent=function(){var t=this._textContent;t&&(t.innerTransformable=null,this._detachComponent(t),this._textContent=null,this._innerTextDefaultStyle=null,this.markRedraw())},r.prototype.getTextGuideLine=function(){return this._textGuide},r.prototype.setTextGuideLine=function(t){this._textGuide&&this._textGuide!==t&&this.removeTextGuideLine(),this._attachComponent(t),this._textGuide=t,this.markRedraw()},r.prototype.removeTextGuideLine=function(){var t=this._textGuide;t&&(this._detachComponent(t),this._textGuide=null,this.markRedraw())},r.prototype.markRedraw=function(){this.__dirty|=ln;var t=this.__zr;t&&(this.__inHover?t.refreshHover():t.refresh()),this.__hostTarget&&this.__hostTarget.markRedraw()},r.prototype.dirty=function(){this.markRedraw()},r.prototype._toggleHoverLayerFlag=function(t){this.__inHover=t;var e=this._textContent,n=this._textGuide;e&&(e.__inHover=t),n&&(n.__inHover=t)},r.prototype.addSelfToZr=function(t){if(this.__zr!==t){this.__zr=t;var e=this.animators;if(e)for(var n=0;n<e.length;n++)t.animation.addAnimator(e[n]);this._clipPath&&this._clipPath.addSelfToZr(t),this._textContent&&this._textContent.addSelfToZr(t),this._textGuide&&this._textGuide.addSelfToZr(t)}},r.prototype.removeSelfFromZr=function(t){if(this.__zr){this.__zr=null;var e=this.animators;if(e)for(var n=0;n<e.length;n++)t.animation.removeAnimator(e[n]);this._clipPath&&this._clipPath.removeSelfFromZr(t),this._textContent&&this._textContent.removeSelfFromZr(t),this._textGuide&&this._textGuide.removeSelfFromZr(t)}},r.prototype.animate=function(t,e,n){var a=t?this[t]:this,o=new Wh(a,e,n);return t&&(o.targetName=t),this.addAnimator(o,t),o},r.prototype.addAnimator=function(t,e){var n=this.__zr,a=this;t.during(function(){a.updateDuringAnimation(e)}).done(function(){var o=a.animators,i=wt(o,t);i>=0&&o.splice(i,1)}),this.animators.push(t),n&&n.animation.addAnimator(t),n&&n.wakeUp()},r.prototype.updateDuringAnimation=function(t){this.markRedraw()},r.prototype.stopAnimation=function(t,e){for(var n=this.animators,a=n.length,o=[],i=0;i<a;i++){var u=n[i];!t||t===u.scope?u.stop(e):o.push(u)}return this.animators=o,this},r.prototype.animateTo=function(t,e,n){OE(this,t,e,n)},r.prototype.animateFrom=function(t,e,n){OE(this,t,e,n,!0)},r.prototype._transitionState=function(t,e,n,a){for(var o=OE(this,e,n,a),i=0;i<o.length;i++)o[i].__fromStateTransition=t},r.prototype.getBoundingRect=function(){return null},r.prototype.getPaintRect=function(){return null},r.initDefaultProps=(function(){var t=r.prototype;t.type="element",t.name="",t.ignore=t.silent=t.isGroup=t.draggable=t.dragging=t.ignoreClip=t.__inHover=!1,t.__dirty=ln;var e={};function n(o,i,u){e[o+i+u]||(console.warn("DEPRECATED: '"+o+"' has been deprecated. use '"+i+"', '"+u+"' instead"),e[o+i+u]=!0)}function a(o,i,u,l){Object.defineProperty(t,o,{get:function(){if(!this[i]){var s=this[i]=[];f(this,s)}return this[i]},set:function(s){this[u]=s[0],this[l]=s[1],this[i]=s,f(this,s)}});function f(s,c){Object.defineProperty(c,0,{get:function(){return s[u]},set:function(p){s[u]=p}}),Object.defineProperty(c,1,{get:function(){return s[l]},set:function(p){s[l]=p}})}}Object.defineProperty&&(a("position","_legacyPos","x","y"),a("scale","_legacyScale","scaleX","scaleY"),a("origin","_legacyOrigin","originX","originY"))})(),r})();Ve(HE,en);Ve(HE,Ya);function OE(r,t,e,n,a){e=e||{};var o=[];SW(r,"",r,t,e,n,o,a);var i=o.length,u=!1,l=e.done,f=e.aborted,s=function(){u=!0,i--,i<=0&&(u?l&&l():f&&f())},c=function(){i--,i<=0&&(u?l&&l():f&&f())};i||l&&l(),o.length>0&&e.during&&o[0].during(function(d,m){e.during(m)});for(var p=0;p<o.length;p++){var v=o[p];s&&v.done(s),c&&v.aborted(c),e.force&&v.duration(e.duration),v.start(e.easing)}return o}function UE(r,t,e){for(var n=0;n<e;n++)r[n]=t[n]}function hut(r){return Ur(r[0])}function _ut(r,t,e){if(Ur(t[e]))if(Ur(r[e])||(r[e]=[]),Jr(t[e])){var n=t[e].length;r[e].length!==n&&(r[e]=new t[e].constructor(n),UE(r[e],t[e],n))}else{var a=t[e],o=r[e],i=a.length;if(hut(a))for(var u=a[0].length,l=0;l<i;l++)o[l]?UE(o[l],a[l],u):o[l]=Array.prototype.slice.call(a[l]);else UE(o,a,i);o.length=a.length}else r[e]=t[e]}function gut(r,t){return r===t||Ur(r)&&Ur(t)&&yut(r,t)}function yut(r,t){var e=r.length;if(e!==t.length)return!1;for(var n=0;n<e;n++)if(r[n]!==t[n])return!1;return!0}function SW(r,t,e,n,a,o,i,u){for(var l=Ft(n),f=a.duration,s=a.delay,c=a.additive,p=a.setToFinal,v=!nt(o),d=r.animators,m=[],h=0;h<l.length;h++){var _=l[h],g=n[_];if(g!=null&&e[_]!=null&&(v||o[_]))if(nt(g)&&!Ur(g)&&!sf(g)){if(t){u||(e[_]=g,r.updateDuringAnimation(t));continue}SW(r,_,e[_],g,a,o&&o[_],i,u)}else m.push(_);else u||(e[_]=g,r.updateDuringAnimation(t),m.push(_))}var y=m.length;if(!c&&y)for(var D=0;D<d.length;D++){var b=d[D];if(b.targetName===t){var C=b.stopTracks(m);if(C){var x=wt(d,b);d.splice(x,1)}}}if(a.force||(m=de(m,function(M){return!gut(n[M],e[M])}),y=m.length),y>0||a.force&&!i.length){var w=void 0,S=void 0,E=void 0;if(u){S={},p&&(w={});for(var D=0;D<y;D++){var _=m[D];S[_]=e[_],p?w[_]=n[_]:e[_]=n[_]}}else if(p){E={};for(var D=0;D<y;D++){var _=m[D];E[_]=Xs(e[_]),_ut(e,n,_)}}var b=new Wh(e,!1,!1,c?de(d,function(I){return I.targetName===t}):null);b.targetName=t,a.scope&&(b.scope=a.scope),p&&w&&b.whenWithKeys(0,w,m),E&&b.whenWithKeys(0,E,m),b.whenWithKeys(f??500,u?S:n,m).delay(s||0),r.addAnimator(b,t),i.push(b)}}var q0=HE;var EW=(function(r){A(t,r);function t(e){var n=r.call(this)||this;return n.isGroup=!0,n._children=[],n.attr(e),n}return t.prototype.childrenRef=function(){return this._children},t.prototype.children=function(){return this._children.slice()},t.prototype.childAt=function(e){return this._children[e]},t.prototype.childOfName=function(e){for(var n=this._children,a=0;a<n.length;a++)if(n[a].name===e)return n[a]},t.prototype.childCount=function(){return this._children.length},t.prototype.add=function(e){return e&&e!==this&&e.parent!==this&&(this._children.push(e),this._doAdd(e)),this},t.prototype.addBefore=function(e,n){if(e&&e!==this&&e.parent!==this&&n&&n.parent===this){var a=this._children,o=a.indexOf(n);o>=0&&(a.splice(o,0,e),this._doAdd(e))}return this},t.prototype.replace=function(e,n){var a=wt(this._children,e);return a>=0&&this.replaceAt(n,a),this},t.prototype.replaceAt=function(e,n){var a=this._children,o=a[n];if(e&&e!==this&&e.parent!==this&&e!==o){a[n]=e,o.parent=null;var i=this.__zr;i&&o.removeSelfFromZr(i),this._doAdd(e)}return this},t.prototype._doAdd=function(e){e.parent&&e.parent.remove(e),e.parent=this;var n=this.__zr;n&&n!==e.__zr&&e.addSelfToZr(n),n&&n.refresh()},t.prototype.remove=function(e){var n=this.__zr,a=this._children,o=wt(a,e);return o<0?this:(a.splice(o,1),e.parent=null,n&&e.removeSelfFromZr(n),n&&n.refresh(),this)},t.prototype.removeAll=function(){for(var e=this._children,n=this.__zr,a=0;a<e.length;a++){var o=e[a];n&&o.removeSelfFromZr(n),o.parent=null}return e.length=0,this},t.prototype.eachChild=function(e,n){for(var a=this._children,o=0;o<a.length;o++){var i=a[o];e.call(n,i,o)}return this},t.prototype.traverse=function(e,n){for(var a=0;a<this._children.length;a++){var o=this._children[a],i=e.call(n,o);o.isGroup&&!i&&o.traverse(e,n)}return this},t.prototype.addSelfToZr=function(e){r.prototype.addSelfToZr.call(this,e);for(var n=0;n<this._children.length;n++){var a=this._children[n];a.addSelfToZr(e)}},t.prototype.removeSelfFromZr=function(e){r.prototype.removeSelfFromZr.call(this,e);for(var n=0;n<this._children.length;n++){var a=this._children[n];a.removeSelfFromZr(e)}},t.prototype.getBoundingRect=function(e){for(var n=new yt(0,0,0,0),a=e||this._children,o=[],i=null,u=0;u<a.length;u++){var l=a[u];if(!(l.ignore||l.invisible)){var f=l.getBoundingRect(),s=l.getLocalTransform(o);s?(yt.applyTransform(n,f,s),i=i||n.clone(),i.union(n)):(i=i||f.clone(),i.union(f))}}return i||n},t})(q0);EW.prototype.type="group";var at=EW;var J0={},MW={};function Dut(r){delete MW[r]}function but(r){if(!r)return!1;if(typeof r=="string")return pv(r,1)<Gh;if(r.colorStops){for(var t=r.colorStops,e=0,n=t.length,a=0;a<n;a++)e+=pv(t[a].color,1);return e/=n,e<Gh}return!1}var Cut=(function(){function r(t,e,n){var a=this;this._sleepAfterStill=10,this._stillFrameAccum=0,this._needsRefresh=!0,this._needsRefreshHover=!0,this._darkMode=!1,n=n||{},this.dom=e,this.id=t;var o=new Bz,i=n.renderer||"canvas";J0[i]||(i=Ft(J0)[0]),n.useDirtyRect=n.useDirtyRect==null?!1:n.useDirtyRect;var u=new J0[i](e,o,n,t),l=n.ssr||u.ssrOnly;this.storage=o,this.painter=u;var f=!Kt.node&&!Kt.worker&&!l?new yW(u.getViewportRoot(),u.root):null,s=n.useCoarsePointer,c=s==null||s==="auto"?Kt.touchEventsSupported:!!s,p=44,v;c&&(v=Tt(n.pointerSize,p)),this.handler=new Uz(o,u,f,u.root,v),this.animation=new dW({stage:{update:l?null:function(){return a._flush(!0)}}}),l||this.animation.start()}return r.prototype.add=function(t){this._disposed||!t||(this.storage.addRoot(t),t.addSelfToZr(this),this.refresh())},r.prototype.remove=function(t){this._disposed||!t||(this.storage.delRoot(t),t.removeSelfFromZr(this),this.refresh())},r.prototype.configLayer=function(t,e){this._disposed||(this.painter.configLayer&&this.painter.configLayer(t,e),this.refresh())},r.prototype.setBackgroundColor=function(t){this._disposed||(this.painter.setBackgroundColor&&this.painter.setBackgroundColor(t),this.refresh(),this._backgroundColor=t,this._darkMode=but(t))},r.prototype.getBackgroundColor=function(){return this._backgroundColor},r.prototype.setDarkMode=function(t){this._darkMode=t},r.prototype.isDarkMode=function(){return this._darkMode},r.prototype.refreshImmediately=function(t){this._disposed||(t||this.animation.update(!0),this._needsRefresh=!1,this.painter.refresh(),this._needsRefresh=!1)},r.prototype.refresh=function(){this._disposed||(this._needsRefresh=!0,this.animation.start())},r.prototype.flush=function(){this._disposed||this._flush(!1)},r.prototype._flush=function(t){var e,n=Ks();this._needsRefresh&&(e=!0,this.refreshImmediately(t)),this._needsRefreshHover&&(e=!0,this.refreshHoverImmediately());var a=Ks();e?(this._stillFrameAccum=0,this.trigger("rendered",{elapsedTime:a-n})):this._sleepAfterStill>0&&(this._stillFrameAccum++,this._stillFrameAccum>this._sleepAfterStill&&this.animation.stop())},r.prototype.setSleepAfterStill=function(t){this._sleepAfterStill=t},r.prototype.wakeUp=function(){this._disposed||(this.animation.start(),this._stillFrameAccum=0)},r.prototype.refreshHover=function(){this._needsRefreshHover=!0},r.prototype.refreshHoverImmediately=function(){this._disposed||(this._needsRefreshHover=!1,this.painter.refreshHover&&this.painter.getType()==="canvas"&&this.painter.refreshHover())},r.prototype.resize=function(t){this._disposed||(t=t||{},this.painter.resize(t.width,t.height),this.handler.resize())},r.prototype.clearAnimation=function(){this._disposed||this.animation.clear()},r.prototype.getWidth=function(){if(!this._disposed)return this.painter.getWidth()},r.prototype.getHeight=function(){if(!this._disposed)return this.painter.getHeight()},r.prototype.setCursorStyle=function(t){this._disposed||this.handler.setCursorStyle(t)},r.prototype.findHover=function(t,e){if(!this._disposed)return this.handler.findHover(t,e)},r.prototype.on=function(t,e,n){return this._disposed||this.handler.on(t,e,n),this},r.prototype.off=function(t,e){this._disposed||this.handler.off(t,e)},r.prototype.trigger=function(t,e){this._disposed||this.handler.trigger(t,e)},r.prototype.clear=function(){if(!this._disposed){for(var t=this.storage.getRoots(),e=0;e<t.length;e++)t[e]instanceof at&&t[e].removeSelfFromZr(this);this.storage.delAllRoots(),this.painter.clear()}},r.prototype.dispose=function(){this._disposed||(this.animation.stop(),this.clear(),this.storage.dispose(),this.painter.dispose(),this.handler.dispose(),this.animation=this.storage=this.painter=this.handler=null,this._disposed=!0,Dut(this.id))},r})();function zE(r,t){var e=new Cut(f0(),r,t);return MW[e.id]=e,e}function AW(r,t){J0[r]=t}var kE;function IW(r){if(typeof kE=="function")return kE(r)}function FW(r){kE=r}var LW=1e-4,RW=20;function xut(r){return r.replace(/^\s+|\s+$/g,"")}function Ie(r,t,e,n){var a=t[0],o=t[1],i=e[0],u=e[1],l=o-a,f=u-i;if(l===0)return f===0?i:(i+u)/2;if(n)if(l>0){if(r<=a)return i;if(r>=o)return u}else{if(r>=a)return i;if(r<=o)return u}else{if(r===a)return i;if(r===o)return u}return(r-a)/l*f+i}function Y(r,t){switch(r){case"center":case"middle":r="50%";break;case"left":case"top":r="0%";break;case"right":case"bottom":r="100%";break}return V(r)?xut(r).match(/%$/)?parseFloat(r)/100*t:parseFloat(r):r==null?NaN:+r}function Qe(r,t,e){return t==null&&(t=10),t=Math.min(Math.max(0,t),RW),r=(+r).toFixed(t),e?r:+r}function fn(r){return r.sort(function(t,e){return t-e}),r}function Ca(r){if(r=+r,isNaN(r))return 0;if(r>1e-14){for(var t=1,e=0;e<15;e++,t*=10)if(Math.round(r*t)/t===r)return e}return wut(r)}function wut(r){var t=r.toString().toLowerCase(),e=t.indexOf("e"),n=e>0?+t.slice(e+1):0,a=e>0?e:t.length,o=t.indexOf("."),i=o<0?0:a-1-o;return Math.max(0,i-n)}function j0(r,t){var e=Math.log,n=Math.LN10,a=Math.floor(e(r[1]-r[0])/n),o=Math.round(e(Math.abs(t[1]-t[0]))/n),i=Math.min(Math.max(-a+o,0),20);return isFinite(i)?i:20}function PW(r,t){var e=Bn(r,function(v,d){return v+(isNaN(d)?0:d)},0);if(e===0)return[];for(var n=Math.pow(10,t),a=U(r,function(v){return(isNaN(v)?0:v)/e*n*100}),o=n*100,i=U(a,function(v){return Math.floor(v)}),u=Bn(i,function(v,d){return v+d},0),l=U(a,function(v,d){return v-i[d]});u<o;){for(var f=Number.NEGATIVE_INFINITY,s=null,c=0,p=l.length;c<p;++c)l[c]>f&&(f=l[c],s=c);++i[s],l[s]=0,++u}return U(i,function(v){return v/n})}function NW(r,t){var e=Math.max(Ca(r),Ca(t)),n=r+t;return e>RW?n:Qe(n,e)}var WE=9007199254740991;function GE(r){var t=Math.PI*2;return(r%t+t)%t}function oc(r){return r>-LW&&r<LW}var Sut=/^(?:(\d{4})(?:[-\/](\d{1,2})(?:[-\/](\d{1,2})(?:[T ](\d{1,2})(?::(\d{1,2})(?::(\d{1,2})(?:[.,](\d+))?)?)?(Z|[\+\-]\d\d:?\d\d)?)?)?)?)?$/;function Ta(r){if(r instanceof Date)return r;if(V(r)){var t=Sut.exec(r);if(!t)return new Date(NaN);if(t[8]){var e=+t[4]||0;return t[8].toUpperCase()!=="Z"&&(e-=+t[8].slice(0,3)),new Date(Date.UTC(+t[1],+(t[2]||1)-1,+t[3]||1,e,+(t[5]||0),+t[6]||0,t[7]?+t[7].substring(0,3):0))}else return new Date(+t[1],+(t[2]||1)-1,+t[3]||1,+t[4]||0,+(t[5]||0),+t[6]||0,t[7]?+t[7].substring(0,3):0)}else if(r==null)return new Date(NaN);return new Date(Math.round(r))}function OW(r){return Math.pow(10,Y0(r))}function Y0(r){if(r===0)return 0;var t=Math.floor(Math.log(r)/Math.LN10);return r/Math.pow(10,t)>=10&&t++,t}function Q0(r,t){var e=Y0(r),n=Math.pow(10,e),a=r/n,o;return t?a<1.5?o=1:a<2.5?o=2:a<4?o=3:a<7?o=5:o=10:a<1?o=1:a<2?o=2:a<3?o=3:a<5?o=5:o=10,r=o*n,e>=-20?+r.toFixed(e<0?-e:0):r}function Z0(r,t){var e=(r.length-1)*t+1,n=Math.floor(e),a=+r[n-1],o=e-n;return o?a+o*(r[n]-a):a}function BE(r){r.sort(function(l,f){return u(l,f,0)?-1:1});for(var t=-1/0,e=1,n=0;n<r.length;){for(var a=r[n].interval,o=r[n].close,i=0;i<2;i++)a[i]<=t&&(a[i]=t,o[i]=i?1:1-e),t=a[i],e=o[i];a[0]===a[1]&&o[0]*o[1]!==1?r.splice(n,1):n++}return r;function u(l,f,s){return l.interval[s]<f.interval[s]||l.interval[s]===f.interval[s]&&(l.close[s]-f.close[s]===(s?-1:1)||!s&&u(l,f,1))}}function Jo(r){var t=parseFloat(r);return t==r&&(t!==0||!V(r)||r.indexOf("x")<=0)?t:NaN}function $h(r){return!isNaN(Jo(r))}function X0(){return Math.round(Math.random()*9)}function UW(r,t){return t===0?r:UW(t,r%t)}function VE(r,t){return r==null?t:t==null?r:r*t/UW(r,t)}var Eut="[ECharts] ",HW={},Mut=typeof console<"u"&&console.warn&&console.log;function Aut(r,t,e){if(Mut){if(e){if(HW[t])return;HW[t]=!0}console[r](Eut+t)}}function kW(r,t){Aut("warn",r,t)}function Fe(r){throw new Error(r)}function zW(r,t,e){return(t-r)*e+r}var WW="series\0",GW="\0_ec_\0";function we(r){return r instanceof Array?r:r==null?[]:[r]}function Co(r,t,e){if(r){r[t]=r[t]||{},r.emphasis=r.emphasis||{},r.emphasis[t]=r.emphasis[t]||{};for(var n=0,a=e.length;n<a;n++){var o=e[n];!r.emphasis[t].hasOwnProperty(o)&&r[t].hasOwnProperty(o)&&(r.emphasis[t][o]=r[t][o])}}}var $E=["fontStyle","fontWeight","fontSize","fontFamily","rich","tag","color","textBorderColor","textBorderWidth","width","height","lineHeight","align","verticalAlign","baseline","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY","textShadowColor","textShadowBlur","textShadowOffsetX","textShadowOffsetY","backgroundColor","borderColor","borderWidth","borderRadius","padding"];function Ti(r){return nt(r)&&!O(r)&&!(r instanceof Date)?r.value:r}function BW(r){return nt(r)&&!(r instanceof Array)}function K0(r,t,e){var n=e==="normalMerge",a=e==="replaceMerge",o=e==="replaceAll";r=r||[],t=(t||[]).slice();var i=Z();T(t,function(l,f){if(!nt(l)){t[f]=null;return}});var u=Iut(r,i,e);return(n||a)&&Fut(u,r,i,t),n&&Lut(u,t),n||a?Rut(u,t,a):o&&Put(u,t),Nut(u),u}function Iut(r,t,e){var n=[];if(e==="replaceAll")return n;for(var a=0;a<r.length;a++){var o=r[a];o&&o.id!=null&&t.set(o.id,a),n.push({existing:e==="replaceMerge"||_v(o)?null:o,newOption:null,keyInfo:null,brandNew:null})}return n}function Fut(r,t,e,n){T(n,function(a,o){if(!(!a||a.id==null)){var i=qh(a.id),u=e.get(i);if(u!=null){var l=r[u];ur(!l.newOption,'Duplicated option on id "'+i+'".'),l.newOption=a,l.existing=t[u],n[o]=null}}})}function Lut(r,t){T(t,function(e,n){if(!(!e||e.name==null))for(var a=0;a<r.length;a++){var o=r[a].existing;if(!r[a].newOption&&o&&(o.id==null||e.id==null)&&!_v(e)&&!_v(o)&&VW("name",o,e)){r[a].newOption=e,t[n]=null;return}}})}function Rut(r,t,e){T(t,function(n){if(n){for(var a,o=0;(a=r[o])&&(a.newOption||_v(a.existing)||a.existing&&n.id!=null&&!VW("id",n,a.existing));)o++;a?(a.newOption=n,a.brandNew=e):r.push({newOption:n,brandNew:e,existing:null,keyInfo:null}),o++}})}function Put(r,t){T(t,function(e){r.push({newOption:e,brandNew:!0,existing:null,keyInfo:null})})}function Nut(r){var t=Z();T(r,function(e){var n=e.existing;n&&t.set(n.id,e)}),T(r,function(e){var n=e.newOption;ur(!n||n.id==null||!t.get(n.id)||t.get(n.id)===e,"id duplicates: "+(n&&n.id)),n&&n.id!=null&&t.set(n.id,e),!e.keyInfo&&(e.keyInfo={})}),T(r,function(e,n){var a=e.existing,o=e.newOption,i=e.keyInfo;if(nt(o)){if(i.name=o.name!=null?qh(o.name):a?a.name:WW+n,a)i.id=qh(a.id);else if(o.id!=null)i.id=qh(o.id);else{var u=0;do i.id="\0"+i.name+"\0"+u++;while(t.get(i.id))}t.set(i.id,e)}})}function VW(r,t,e){var n=cr(t[r],null),a=cr(e[r],null);return n!=null&&a!=null&&n===a}function qh(r){return cr(r,"")}function cr(r,t){return r==null?t:V(r)?r:Nt(r)||xh(r)?r+"":t}function gv(r){var t=r.name;return!!(t&&t.indexOf(WW))}function _v(r){return r&&r.id!=null&&qh(r.id).indexOf(GW)===0}function $W(r){return GW+r}function qW(r,t,e){T(r,function(n){var a=n.newOption;nt(a)&&(n.keyInfo.mainType=t,n.keyInfo.subType=Out(t,a,n.existing,e))})}function Out(r,t,e,n){var a=t.type?t.type:e?e.subType:n.determineSubType(r,t);return a}function JW(r,t){var e={},n={};return a(r||[],e),a(t||[],n,e),[o(e),o(n)];function a(i,u,l){for(var f=0,s=i.length;f<s;f++){var c=cr(i[f].seriesId,null);if(c==null)return;for(var p=we(i[f].dataIndex),v=l&&l[c],d=0,m=p.length;d<m;d++){var h=p[d];v&&v[h]?v[h]=null:(u[c]||(u[c]={}))[h]=1}}}function o(i,u){var l=[];for(var f in i)if(i.hasOwnProperty(f)&&i[f]!=null)if(u)l.push(+f);else{var s=o(i[f],!0);s.length&&l.push({seriesId:f,dataIndex:s})}return l}}function jo(r,t){if(t.dataIndexInside!=null)return t.dataIndexInside;if(t.dataIndex!=null)return O(t.dataIndex)?U(t.dataIndex,function(e){return r.indexOfRawIndex(e)}):r.indexOfRawIndex(t.dataIndex);if(t.name!=null)return O(t.name)?U(t.name,function(e){return r.indexOfName(e)}):r.indexOfName(t.name)}function St(){var r="__ec_inner_"+Uut++;return function(t){return t[r]||(t[r]={})}}var Uut=X0();function Df(r,t,e){var n=Jh(t,e),a=n.mainTypeSpecified,o=n.queryOptionMap,i=n.others,u=i,l=e?e.defaultMainType:null;return!a&&l&&o.set(l,{}),o.each(function(f,s){var c=bf(r,s,f,{useDefault:l===s,enableAll:e&&e.enableAll!=null?e.enableAll:!0,enableNone:e&&e.enableNone!=null?e.enableNone:!0});u[s+"Models"]=c.models,u[s+"Model"]=c.models[0]}),u}function Jh(r,t){var e;if(V(r)){var n={};n[r+"Index"]=0,e=n}else e=r;var a=Z(),o={},i=!1;return T(e,function(u,l){if(l==="dataIndex"||l==="dataIndexInside"){o[l]=u;return}var f=l.match(/^(\w+)(Index|Id|Name)$/)||[],s=f[1],c=(f[2]||"").toLowerCase();if(!(!s||!c||t&&t.includeMainTypes&&wt(t.includeMainTypes,s)<0)){i=i||!!s;var p=a.get(s)||a.set(s,{});p[c]=u}}),{mainTypeSpecified:i,queryOptionMap:a,others:o}}var je={useDefault:!0,enableAll:!1,enableNone:!1},jW={useDefault:!1,enableAll:!0,enableNone:!0};function bf(r,t,e,n){n=n||je;var a=e.index,o=e.id,i=e.name,u={models:null,specified:a!=null||o!=null||i!=null};if(!u.specified){var l=void 0;return u.models=n.useDefault&&(l=r.getComponent(t))?[l]:[],u}return a==="none"||a===!1?(ur(n.enableNone,'`"none"` or `false` is not a valid value on index option.'),u.models=[],u):(a==="all"&&(ur(n.enableAll,'`"all"` is not a valid value on index option.'),a=o=i=null),u.models=r.queryComponents({mainType:t,index:a,id:o,name:i}),u)}function qE(r,t,e){r.setAttribute?r.setAttribute(t,e):r[t]=e}function YW(r,t){return r.getAttribute?r.getAttribute(t):r[t]}function QW(r){return r==="auto"?Kt.domSupported?"html":"richText":r||"html"}function jh(r,t){var e=Z(),n=[];return T(r,function(a){var o=t(a);(e.get(o)||(n.push(o),e.set(o,[]))).push(a)}),{keys:n,buckets:e}}function tb(r,t,e,n,a){var o=t==null||t==="auto";if(n==null)return n;if(Nt(n)){var i=zW(e||0,n,a);return Qe(i,o?Math.max(Ca(e||0),Ca(n)):t)}else{if(V(n))return a<1?e:n;for(var u=[],l=e,f=n,s=Math.max(l?l.length:0,f.length),c=0;c<s;++c){var p=r.getDimensionInfo(c);if(p&&p.type==="ordinal")u[c]=(a<1&&l?l:f)[c];else{var v=l&&l[c]?l[c]:0,d=f[c],i=zW(v,d,a);u[c]=Qe(i,o?Math.max(Ca(v),Ca(d)):t)}}return u}}var Hut=".",ic="___EC__COMPONENT__CONTAINER___",ZW="___EC__EXTENDED_CLASS___";function Xa(r){var t={main:"",sub:""};if(r){var e=r.split(Hut);t.main=e[0]||"",t.sub=e[1]||""}return t}function kut(r){ur(/^[a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)?$/.test(r),'componentType "'+r+'" illegal')}function XW(r){return!!(r&&r[ZW])}function yv(r,t){r.$constructor=r,r.extend=function(e){var n=this,a;return zut(n)?a=(function(o){A(i,o);function i(){return o.apply(this,arguments)||this}return i})(n):(a=function(){(e.$constructor||n).apply(this,arguments)},gz(a,this)),N(a.prototype,e),a[ZW]=!0,a.extend=this.extend,a.superCall=Gut,a.superApply=But,a.superClass=n,a}}function zut(r){return X(r)&&/^class\s/.test(Function.prototype.toString.call(r))}function eb(r,t){r.extend=t.extend}var Wut=Math.round(Math.random()*10);function KW(r){var t=["__\0is_clz",Wut++].join("_");r.prototype[t]=!0,r.isInstance=function(e){return!!(e&&e[t])}}function Gut(r,t){for(var e=[],n=2;n<arguments.length;n++)e[n-2]=arguments[n];return this.superClass.prototype[t].apply(r,e)}function But(r,t,e){return this.superClass.prototype[t].apply(r,e)}function Cf(r){var t={};r.registerClass=function(n){var a=n.type||n.prototype.type;if(a){kut(a),n.prototype.type=a;var o=Xa(a);if(!o.sub)t[o.main]=n;else if(o.sub!==ic){var i=e(o);i[o.sub]=n}}return n},r.getClass=function(n,a,o){var i=t[n];if(i&&i[ic]&&(i=a?i[a]:null),o&&!i)throw new Error(a?"Component "+n+"."+(a||"")+" is used but not imported.":n+".type should be specified.");return i},r.getClassesByMainType=function(n){var a=Xa(n),o=[],i=t[a.main];return i&&i[ic]?T(i,function(u,l){l!==ic&&o.push(u)}):o.push(i),o},r.hasClass=function(n){var a=Xa(n);return!!t[a.main]},r.getAllClassMainTypes=function(){var n=[];return T(t,function(a,o){n.push(o)}),n},r.hasSubTypes=function(n){var a=Xa(n),o=t[a.main];return o&&o[ic]};function e(n){var a=t[n.main];return(!a||!a[ic])&&(a=t[n.main]={},a[ic]=!0),a}}function Ka(r,t){for(var e=0;e<r.length;e++)r[e][1]||(r[e][1]=r[e][0]);return t=t||!1,function(n,a,o){for(var i={},u=0;u<r.length;u++){var l=r[u][1];if(!(a&&wt(a,l)>=0||o&&wt(o,l)<0)){var f=n.getShallow(l,t);f!=null&&(i[r[u][0]]=f)}}return i}}var Vut=[["fill","color"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["opacity"],["shadowColor"]],$ut=Ka(Vut),tG=(function(){function r(){}return r.prototype.getAreaStyle=function(t,e){return $ut(this,t,e)},r})();var jE=new ul(50);function rG(r){if(typeof r=="string"){var t=jE.get(r);return t&&t.image}else return r}function Yh(r,t,e,n,a){if(r)if(typeof r=="string"){if(t&&t.__zrImageSrc===r||!e)return t;var o=jE.get(r),i={hostEl:e,cb:n,cbPayload:a};return o?(t=o.image,!Dv(t)&&o.pending.push(i)):(t=la.loadImage(r,eG,eG),t.__zrImageSrc=r,jE.put(r,t.__cachedImgObj={image:t,pending:[i]})),t}else return r;else return t}function eG(){var r=this.__cachedImgObj;this.onload=this.onerror=this.__cachedImgObj=null;for(var t=0;t<r.pending.length;t++){var e=r.pending[t],n=e.cb;n&&n(this,e.cbPayload),e.hostEl.dirty()}r.pending.length=0}function Dv(r){return r&&r.width&&r.height}var YE=/\{([a-zA-Z0-9_]+)\|([^}]*)\}/g;function Jut(r,t,e,n,a){if(!t)return"";var o=(r+"").split(`+`);a=aG(t,e,n,a);for(var i=0,u=o.length;i<u;i++)o[i]=oG(o[i],a);return o.join(`+`)}function aG(r,t,e,n){n=n||{};var a=N({},n);a.font=t,e=Tt(e,"..."),a.maxIterations=Tt(n.maxIterations,2);var o=a.minChar=Tt(n.minChar,0);a.cnCharWidth=Qa("\u56FD",t);var i=a.ascCharWidth=Qa("a",t);a.placeholder=Tt(n.placeholder,"");for(var u=r=Math.max(0,r-1),l=0;l<o&&u>=i;l++)u-=i;var f=Qa(e,t);return f>u&&(e="",f=0),u=r-f,a.ellipsis=e,a.ellipsisWidth=f,a.contentWidth=u,a.containerWidth=r,a}function oG(r,t){var e=t.containerWidth,n=t.font,a=t.contentWidth;if(!e)return"";var o=Qa(r,n);if(o<=e)return r;for(var i=0;;i++){if(o<=a||i>=t.maxIterations){r+=t.ellipsis;break}var u=i===0?jut(r,a,t.ascCharWidth,t.cnCharWidth):o>0?Math.floor(r.length*a/o):0;r=r.substr(0,u),o=Qa(r,n)}return r===""&&(r=t.placeholder),r}function jut(r,t,e,n){for(var a=0,o=0,i=r.length;o<i&&a<t;o++){var u=r.charCodeAt(o);a+=0<=u&&u<=127?e:n}return o}function iG(r,t){r!=null&&(r+="");var e=t.overflow,n=t.padding,a=t.font,o=e==="truncate",i=mv(a),u=Tt(t.lineHeight,i),l=!!t.backgroundColor,f=t.lineOverflow==="truncate",s=t.width,c;s!=null&&(e==="break"||e==="breakAll")?c=r?lG(r,t.font,s,e==="breakAll",0).lines:[]:c=r?r.split(`+`):[];var p=c.length*u,v=Tt(t.height,p);if(p>v&&f){var d=Math.floor(v/u);c=c.slice(0,d)}if(r&&o&&s!=null)for(var m=aG(s,a,t.ellipsis,{minChar:t.truncateMinChar,placeholder:t.placeholder}),h=0;h<c.length;h++)c[h]=oG(c[h],m);for(var _=v,g=0,h=0;h<c.length;h++)g=Math.max(Qa(c[h],a),g);s==null&&(s=g);var y=g;return n&&(_+=n[0]+n[2],y+=n[1]+n[3],s+=n[1]+n[3]),l&&(y=s),{lines:c,height:v,outerWidth:y,outerHeight:_,lineHeight:u,calculatedLineHeight:i,contentWidth:g,contentHeight:p,width:s}}var Yut=(function(){function r(){}return r})(),nG=(function(){function r(t){this.tokens=[],t&&(this.tokens=t)}return r})(),Qut=(function(){function r(){this.width=0,this.height=0,this.contentWidth=0,this.contentHeight=0,this.outerWidth=0,this.outerHeight=0,this.lines=[]}return r})();function uG(r,t){var e=new Qut;if(r!=null&&(r+=""),!r)return e;for(var n=t.width,a=t.height,o=t.overflow,i=(o==="break"||o==="breakAll")&&n!=null?{width:n,accumWidth:0,breakAll:o==="breakAll"}:null,u=YE.lastIndex=0,l;(l=YE.exec(r))!=null;){var f=l.index;f>u&&QE(e,r.substring(u,f),t,i),QE(e,l[2],t,i,l[1]),u=YE.lastIndex}u<r.length&&QE(e,r.substring(u,r.length),t,i);var s=[],c=0,p=0,v=t.padding,d=o==="truncate",m=t.lineOverflow==="truncate";function h(H,G,j){H.width=G,H.lineHeight=j,c+=j,p=Math.max(p,G)}t:for(var _=0;_<e.lines.length;_++){for(var g=e.lines[_],y=0,D=0,b=0;b<g.tokens.length;b++){var C=g.tokens[b],x=C.styleName&&t.rich[C.styleName]||{},w=C.textPadding=x.padding,S=w?w[1]+w[3]:0,E=C.font=x.font||t.font;C.contentHeight=mv(E);var M=Tt(x.height,C.contentHeight);if(C.innerHeight=M,w&&(M+=w[0]+w[2]),C.height=M,C.lineHeight=gn(x.lineHeight,t.lineHeight,M),C.align=x&&x.align||t.align,C.verticalAlign=x&&x.verticalAlign||"middle",m&&a!=null&&c+C.lineHeight>a){b>0?(g.tokens=g.tokens.slice(0,b),h(g,D,y),e.lines=e.lines.slice(0,_+1)):e.lines=e.lines.slice(0,_);break t}var I=x.width,F=I==null||I==="auto";if(typeof I=="string"&&I.charAt(I.length-1)==="%")C.percentWidth=I,s.push(C),C.contentWidth=Qa(C.text,E);else{if(F){var L=x.backgroundColor,R=L&&L.image;R&&(R=rG(R),Dv(R)&&(C.width=Math.max(C.width,R.width*M/R.height)))}var P=d&&n!=null?n-D:null;P!=null&&P<C.width?!F||P<S?(C.text="",C.width=C.contentWidth=0):(C.text=Jut(C.text,P-S,E,t.ellipsis,{minChar:t.truncateMinChar}),C.width=C.contentWidth=Qa(C.text,E)):C.contentWidth=Qa(C.text,E)}C.width+=S,D+=C.width,x&&(y=Math.max(y,C.lineHeight))}h(g,D,y)}e.outerWidth=e.width=Tt(n,p),e.outerHeight=e.height=Tt(a,c),e.contentHeight=c,e.contentWidth=p,v&&(e.outerWidth+=v[1]+v[3],e.outerHeight+=v[0]+v[2]);for(var _=0;_<s.length;_++){var C=s[_],k=C.percentWidth;C.width=parseInt(k,10)/100*e.width}return e}function QE(r,t,e,n,a){var o=t==="",i=a&&e.rich[a]||{},u=r.lines,l=i.font||e.font,f=!1,s,c;if(n){var p=i.padding,v=p?p[1]+p[3]:0;if(i.width!=null&&i.width!=="auto"){var d=qn(i.width,n.width)+v;u.length>0&&d+n.accumWidth>n.width&&(s=t.split(`+`),f=!0),n.accumWidth=d}else{var m=lG(t,l,n.width,n.breakAll,n.accumWidth);n.accumWidth=m.accumWidth+v,c=m.linesWidths,s=m.lines}}else s=t.split(`+`);for(var h=0;h<s.length;h++){var _=s[h],g=new Yut;if(g.styleName=a,g.text=_,g.isLineHolder=!_&&!o,typeof i.width=="number"?g.width=i.width:g.width=c?c[h]:Qa(_,l),!h&&!f){var y=(u[u.length-1]||(u[0]=new nG)).tokens,D=y.length;D===1&&y[0].isLineHolder?y[0]=g:(_||!D||o)&&y.push(g)}else u.push(new nG([g]))}}function Zut(r){var t=r.charCodeAt(0);return t>=32&&t<=591||t>=880&&t<=4351||t>=4608&&t<=5119||t>=7680&&t<=8303}var Xut=Bn(",&?/;] ".split(""),function(r,t){return r[t]=!0,r},{});function Kut(r){return Zut(r)?!!Xut[r]:!0}function lG(r,t,e,n,a){for(var o=[],i=[],u="",l="",f=0,s=0,c=0;c<r.length;c++){var p=r.charAt(c);if(p===`+`){l&&(u+=l,s+=f),o.push(u),i.push(s),u="",l="",f=0,s=0;continue}var v=Qa(p,t),d=n?!1:!Kut(p);if(o.length?s+v>e:a+s+v>e){s?(u||l)&&(d?(u||(u=l,l="",f=0,s=f),o.push(u),i.push(s-f),l+=p,f+=v,u="",s=f):(l&&(u+=l,l="",f=0),o.push(u),i.push(s),u=p,s=v)):d?(o.push(l),i.push(f),l=p,f=v):(o.push(p),i.push(v));continue}s+=v,d?(l+=p,f+=v):(l&&(u+=l,l="",f=0),u+=p)}return!o.length&&!u&&(u=r,l="",f=0),l&&(u+=l),u&&(o.push(u),i.push(s)),o.length===1&&(s+=a),{accumWidth:s,lines:o,linesWidths:i}}var KE="__zr_style_"+Math.round(Math.random()*10),du={shadowBlur:0,shadowOffsetX:0,shadowOffsetY:0,shadowColor:"#000",opacity:1,blend:"source-over"},uc={style:{shadowBlur:!0,shadowOffsetX:!0,shadowOffsetY:!0,shadowColor:!0,opacity:!0}};du[KE]=!0;var fG=["z","z2","invisible"],tlt=["invisible"],elt=(function(r){A(t,r);function t(e){return r.call(this,e)||this}return t.prototype._init=function(e){for(var n=Ft(e),a=0;a<n.length;a++){var o=n[a];o==="style"?this.useStyle(e[o]):r.prototype.attrKV.call(this,o,e[o])}this.style||this.useStyle({})},t.prototype.beforeBrush=function(){},t.prototype.afterBrush=function(){},t.prototype.innerBeforeBrush=function(){},t.prototype.innerAfterBrush=function(){},t.prototype.shouldBePainted=function(e,n,a,o){var i=this.transform;if(this.ignore||this.invisible||this.style.opacity===0||this.culling&&rlt(this,e,n)||i&&!i[0]&&!i[3])return!1;if(a&&this.__clipPaths){for(var u=0;u<this.__clipPaths.length;++u)if(this.__clipPaths[u].isZeroArea())return!1}if(o&&this.parent)for(var l=this.parent;l;){if(l.ignore)return!1;l=l.parent}return!0},t.prototype.contain=function(e,n){return this.rectContain(e,n)},t.prototype.traverse=function(e,n){e.call(n,this)},t.prototype.rectContain=function(e,n){var a=this.transformCoordToLocal(e,n),o=this.getBoundingRect();return o.contain(a[0],a[1])},t.prototype.getPaintRect=function(){var e=this._paintRect;if(!this._paintRect||this.__dirty){var n=this.transform,a=this.getBoundingRect(),o=this.style,i=o.shadowBlur||0,u=o.shadowOffsetX||0,l=o.shadowOffsetY||0;e=this._paintRect||(this._paintRect=new yt(0,0,0,0)),n?yt.applyTransform(e,a,n):e.copy(a),(i||u||l)&&(e.width+=i*2+Math.abs(u),e.height+=i*2+Math.abs(l),e.x=Math.min(e.x,e.x+u-i),e.y=Math.min(e.y,e.y+l-i));var f=this.dirtyRectTolerance;e.isZero()||(e.x=Math.floor(e.x-f),e.y=Math.floor(e.y-f),e.width=Math.ceil(e.width+1+f*2),e.height=Math.ceil(e.height+1+f*2))}return e},t.prototype.setPrevPaintRect=function(e){e?(this._prevPaintRect=this._prevPaintRect||new yt(0,0,0,0),this._prevPaintRect.copy(e)):this._prevPaintRect=null},t.prototype.getPrevPaintRect=function(){return this._prevPaintRect},t.prototype.animateStyle=function(e){return this.animate("style",e)},t.prototype.updateDuringAnimation=function(e){e==="style"?this.dirtyStyle():this.markRedraw()},t.prototype.attrKV=function(e,n){e!=="style"?r.prototype.attrKV.call(this,e,n):this.style?this.setStyle(n):this.useStyle(n)},t.prototype.setStyle=function(e,n){return typeof e=="string"?this.style[e]=n:N(this.style,e),this.dirtyStyle(),this},t.prototype.dirtyStyle=function(e){e||this.markRedraw(),this.__dirty|=Js,this._rect&&(this._rect=null)},t.prototype.dirty=function(){this.dirtyStyle()},t.prototype.styleChanged=function(){return!!(this.__dirty&Js)},t.prototype.styleUpdated=function(){this.__dirty&=~Js},t.prototype.createStyle=function(e){return pf(du,e)},t.prototype.useStyle=function(e){e[KE]||(e=this.createStyle(e)),this.__inHover?this.__hoverStyle=e:this.style=e,this.dirtyStyle()},t.prototype.isStyleObject=function(e){return e[KE]},t.prototype._innerSaveToNormal=function(e){r.prototype._innerSaveToNormal.call(this,e);var n=this._normalState;e.style&&!n.style&&(n.style=this._mergeStyle(this.createStyle(),this.style)),this._savePrimaryToNormal(e,n,fG)},t.prototype._applyStateObj=function(e,n,a,o,i,u){r.prototype._applyStateObj.call(this,e,n,a,o,i,u);var l=!(n&&o),f;if(n&&n.style?i?o?f=n.style:(f=this._mergeStyle(this.createStyle(),a.style),this._mergeStyle(f,n.style)):(f=this._mergeStyle(this.createStyle(),o?this.style:a.style),this._mergeStyle(f,n.style)):l&&(f=a.style),f)if(i){var s=this.style;if(this.style=this.createStyle(l?{}:s),l)for(var c=Ft(s),p=0;p<c.length;p++){var v=c[p];v in f&&(f[v]=f[v],this.style[v]=s[v])}for(var d=Ft(f),p=0;p<d.length;p++){var v=d[p];this.style[v]=this.style[v]}this._transitionState(e,{style:f},u,this.getAnimationStyleProps())}else this.useStyle(f);for(var m=this.__inHover?tlt:fG,p=0;p<m.length;p++){var v=m[p];n&&n[v]!=null?this[v]=n[v]:l&&a[v]!=null&&(this[v]=a[v])}},t.prototype._mergeStates=function(e){for(var n=r.prototype._mergeStates.call(this,e),a,o=0;o<e.length;o++){var i=e[o];i.style&&(a=a||{},this._mergeStyle(a,i.style))}return a&&(n.style=a),n},t.prototype._mergeStyle=function(e,n){return N(e,n),e},t.prototype.getAnimationStyleProps=function(){return uc},t.initDefaultProps=(function(){var e=t.prototype;e.type="displayable",e.invisible=!1,e.z=0,e.z2=0,e.zlevel=0,e.culling=!1,e.cursor="pointer",e.rectHover=!1,e.incremental=!1,e._rect=null,e.dirtyRectTolerance=0,e.__dirty=ln|Js})(),t})(q0),ZE=new yt(0,0,0,0),XE=new yt(0,0,0,0);function rlt(r,t,e){return ZE.copy(r.getBoundingRect()),r.transform&&ZE.applyTransform(r.transform),XE.width=t,XE.height=e,!ZE.intersect(XE)}var Br=elt;var to=Math.min,eo=Math.max,tM=Math.sin,eM=Math.cos,lc=Math.PI*2,rb=su(),nb=su(),ab=su();function fc(r,t,e){if(r.length!==0){for(var n=r[0],a=n[0],o=n[0],i=n[1],u=n[1],l=1;l<r.length;l++)n=r[l],a=to(a,n[0]),o=eo(o,n[0]),i=to(i,n[1]),u=eo(u,n[1]);t[0]=a,t[1]=i,e[0]=o,e[1]=u}}function rM(r,t,e,n,a,o){a[0]=to(r,e),a[1]=to(t,n),o[0]=eo(r,e),o[1]=eo(t,n)}var sG=[],cG=[];function pG(r,t,e,n,a,o,i,u,l,f){var s=x0,c=kr,p=s(r,e,a,i,sG);l[0]=1/0,l[1]=1/0,f[0]=-1/0,f[1]=-1/0;for(var v=0;v<p;v++){var d=c(r,e,a,i,sG[v]);l[0]=to(d,l[0]),f[0]=eo(d,f[0])}p=s(t,n,o,u,cG);for(var v=0;v<p;v++){var m=c(t,n,o,u,cG[v]);l[1]=to(m,l[1]),f[1]=eo(m,f[1])}l[0]=to(r,l[0]),f[0]=eo(r,f[0]),l[0]=to(i,l[0]),f[0]=eo(i,f[0]),l[1]=to(t,l[1]),f[1]=eo(t,f[1]),l[1]=to(u,l[1]),f[1]=eo(u,f[1])}function vG(r,t,e,n,a,o,i,u){var l=S0,f=Gr,s=eo(to(l(r,e,a),1),0),c=eo(to(l(t,n,o),1),0),p=f(r,e,a,s),v=f(t,n,o,c);i[0]=to(r,a,p),i[1]=to(t,o,v),u[0]=eo(r,a,p),u[1]=eo(t,o,v)}function dG(r,t,e,n,a,o,i,u,l){var f=go,s=yo,c=Math.abs(a-o);if(c%lc<1e-4&&c>1e-4){u[0]=r-e,u[1]=t-n,l[0]=r+e,l[1]=t+n;return}if(rb[0]=eM(a)*e+r,rb[1]=tM(a)*n+t,nb[0]=eM(o)*e+r,nb[1]=tM(o)*n+t,f(u,rb,nb),s(l,rb,nb),a=a%lc,a<0&&(a=a+lc),o=o%lc,o<0&&(o=o+lc),a>o&&!i?o+=lc:a<o&&i&&(a+=lc),i){var p=o;o=a,a=p}for(var v=0;v<o;v+=Math.PI/2)v>a&&(ab[0]=eM(v)*e+r,ab[1]=tM(v)*n+t,f(u,ab,u),s(l,ab,l))}var lr={M:1,L:2,C:3,Q:4,A:5,Z:6,R:7},sc=[],cc=[],mu=[],Tf=[],hu=[],_u=[],nM=Math.min,aM=Math.max,pc=Math.cos,vc=Math.sin,fl=Math.abs,uM=Math.PI,xf=uM*2,oM=typeof Float32Array<"u",Qh=[];function iM(r){var t=Math.round(r/uM*1e8)/1e8;return t%2*uM}function Zh(r,t){var e=iM(r[0]);e<0&&(e+=xf);var n=e-r[0],a=r[1];a+=n,!t&&a-e>=xf?a=e+xf:t&&e-a>=xf?a=e-xf:!t&&e>a?a=e+(xf-iM(e-a)):t&&e<a&&(a=e-(xf-iM(a-e))),r[0]=e,r[1]=a}var nlt=(function(){function r(t){this.dpr=1,this._xi=0,this._yi=0,this._x0=0,this._y0=0,this._len=0,t&&(this._saveData=!1),this._saveData&&(this.data=[])}return r.prototype.increaseVersion=function(){this._version++},r.prototype.getVersion=function(){return this._version},r.prototype.setScale=function(t,e,n){n=n||0,n>0&&(this._ux=fl(n/tc/t)||0,this._uy=fl(n/tc/e)||0)},r.prototype.setDPR=function(t){this.dpr=t},r.prototype.setContext=function(t){this._ctx=t},r.prototype.getContext=function(){return this._ctx},r.prototype.beginPath=function(){return this._ctx&&this._ctx.beginPath(),this.reset(),this},r.prototype.reset=function(){this._saveData&&(this._len=0),this._pathSegLen&&(this._pathSegLen=null,this._pathLen=0),this._version++},r.prototype.moveTo=function(t,e){return this._drawPendingPt(),this.addData(lr.M,t,e),this._ctx&&this._ctx.moveTo(t,e),this._x0=t,this._y0=e,this._xi=t,this._yi=e,this},r.prototype.lineTo=function(t,e){var n=fl(t-this._xi),a=fl(e-this._yi),o=n>this._ux||a>this._uy;if(this.addData(lr.L,t,e),this._ctx&&o&&this._ctx.lineTo(t,e),o)this._xi=t,this._yi=e,this._pendingPtDist=0;else{var i=n*n+a*a;i>this._pendingPtDist&&(this._pendingPtX=t,this._pendingPtY=e,this._pendingPtDist=i)}return this},r.prototype.bezierCurveTo=function(t,e,n,a,o,i){return this._drawPendingPt(),this.addData(lr.C,t,e,n,a,o,i),this._ctx&&this._ctx.bezierCurveTo(t,e,n,a,o,i),this._xi=o,this._yi=i,this},r.prototype.quadraticCurveTo=function(t,e,n,a){return this._drawPendingPt(),this.addData(lr.Q,t,e,n,a),this._ctx&&this._ctx.quadraticCurveTo(t,e,n,a),this._xi=n,this._yi=a,this},r.prototype.arc=function(t,e,n,a,o,i){this._drawPendingPt(),Qh[0]=a,Qh[1]=o,Zh(Qh,i),a=Qh[0],o=Qh[1];var u=o-a;return this.addData(lr.A,t,e,n,n,a,u,0,i?0:1),this._ctx&&this._ctx.arc(t,e,n,a,o,i),this._xi=pc(o)*n+t,this._yi=vc(o)*n+e,this},r.prototype.arcTo=function(t,e,n,a,o){return this._drawPendingPt(),this._ctx&&this._ctx.arcTo(t,e,n,a,o),this},r.prototype.rect=function(t,e,n,a){return this._drawPendingPt(),this._ctx&&this._ctx.rect(t,e,n,a),this.addData(lr.R,t,e,n,a),this},r.prototype.closePath=function(){this._drawPendingPt(),this.addData(lr.Z);var t=this._ctx,e=this._x0,n=this._y0;return t&&t.closePath(),this._xi=e,this._yi=n,this},r.prototype.fill=function(t){t&&t.fill(),this.toStatic()},r.prototype.stroke=function(t){t&&t.stroke(),this.toStatic()},r.prototype.len=function(){return this._len},r.prototype.setData=function(t){var e=t.length;!(this.data&&this.data.length===e)&&oM&&(this.data=new Float32Array(e));for(var n=0;n<e;n++)this.data[n]=t[n];this._len=e},r.prototype.appendPath=function(t){t instanceof Array||(t=[t]);for(var e=t.length,n=0,a=this._len,o=0;o<e;o++)n+=t[o].len();oM&&this.data instanceof Float32Array&&(this.data=new Float32Array(a+n));for(var o=0;o<e;o++)for(var i=t[o].data,u=0;u<i.length;u++)this.data[a++]=i[u];this._len=a},r.prototype.addData=function(t,e,n,a,o,i,u,l,f){if(this._saveData){var s=this.data;this._len+arguments.length>s.length&&(this._expandData(),s=this.data);for(var c=0;c<arguments.length;c++)s[this._len++]=arguments[c]}},r.prototype._drawPendingPt=function(){this._pendingPtDist>0&&(this._ctx&&this._ctx.lineTo(this._pendingPtX,this._pendingPtY),this._pendingPtDist=0)},r.prototype._expandData=function(){if(!(this.data instanceof Array)){for(var t=[],e=0;e<this._len;e++)t[e]=this.data[e];this.data=t}},r.prototype.toStatic=function(){if(this._saveData){this._drawPendingPt();var t=this.data;t instanceof Array&&(t.length=this._len,oM&&this._len>11&&(this.data=new Float32Array(t)))}},r.prototype.getBoundingRect=function(){mu[0]=mu[1]=hu[0]=hu[1]=Number.MAX_VALUE,Tf[0]=Tf[1]=_u[0]=_u[1]=-Number.MAX_VALUE;var t=this.data,e=0,n=0,a=0,o=0,i;for(i=0;i<this._len;){var u=t[i++],l=i===1;switch(l&&(e=t[i],n=t[i+1],a=e,o=n),u){case lr.M:e=a=t[i++],n=o=t[i++],hu[0]=a,hu[1]=o,_u[0]=a,_u[1]=o;break;case lr.L:rM(e,n,t[i],t[i+1],hu,_u),e=t[i++],n=t[i++];break;case lr.C:pG(e,n,t[i++],t[i++],t[i++],t[i++],t[i],t[i+1],hu,_u),e=t[i++],n=t[i++];break;case lr.Q:vG(e,n,t[i++],t[i++],t[i],t[i+1],hu,_u),e=t[i++],n=t[i++];break;case lr.A:var f=t[i++],s=t[i++],c=t[i++],p=t[i++],v=t[i++],d=t[i++]+v;i+=1;var m=!t[i++];l&&(a=pc(v)*c+f,o=vc(v)*p+s),dG(f,s,c,p,v,d,m,hu,_u),e=pc(d)*c+f,n=vc(d)*p+s;break;case lr.R:a=e=t[i++],o=n=t[i++];var h=t[i++],_=t[i++];rM(a,o,a+h,o+_,hu,_u);break;case lr.Z:e=a,n=o;break}go(mu,mu,hu),yo(Tf,Tf,_u)}return i===0&&(mu[0]=mu[1]=Tf[0]=Tf[1]=0),new yt(mu[0],mu[1],Tf[0]-mu[0],Tf[1]-mu[1])},r.prototype._calculateLength=function(){var t=this.data,e=this._len,n=this._ux,a=this._uy,o=0,i=0,u=0,l=0;this._pathSegLen||(this._pathSegLen=[]);for(var f=this._pathSegLen,s=0,c=0,p=0;p<e;){var v=t[p++],d=p===1;d&&(o=t[p],i=t[p+1],u=o,l=i);var m=-1;switch(v){case lr.M:o=u=t[p++],i=l=t[p++];break;case lr.L:{var h=t[p++],_=t[p++],g=h-o,y=_-i;(fl(g)>n||fl(y)>a||p===e-1)&&(m=Math.sqrt(g*g+y*y),o=h,i=_);break}case lr.C:{var D=t[p++],b=t[p++],h=t[p++],_=t[p++],C=t[p++],x=t[p++];m=jz(o,i,D,b,h,_,C,x,10),o=C,i=x;break}case lr.Q:{var D=t[p++],b=t[p++],h=t[p++],_=t[p++];m=Qz(o,i,D,b,h,_,10),o=h,i=_;break}case lr.A:var w=t[p++],S=t[p++],E=t[p++],M=t[p++],I=t[p++],F=t[p++],L=F+I;p+=1,d&&(u=pc(I)*E+w,l=vc(I)*M+S),m=aM(E,M)*nM(xf,Math.abs(F)),o=pc(L)*E+w,i=vc(L)*M+S;break;case lr.R:{u=o=t[p++],l=i=t[p++];var R=t[p++],P=t[p++];m=R*2+P*2;break}case lr.Z:{var g=u-o,y=l-i;m=Math.sqrt(g*g+y*y),o=u,i=l;break}}m>=0&&(f[c++]=m,s+=m)}return this._pathLen=s,s},r.prototype.rebuildPath=function(t,e){var n=this.data,a=this._ux,o=this._uy,i=this._len,u,l,f,s,c,p,v=e<1,d,m,h=0,_=0,g,y=0,D,b;if(!(v&&(this._pathSegLen||this._calculateLength(),d=this._pathSegLen,m=this._pathLen,g=e*m,!g)))t:for(var C=0;C<i;){var x=n[C++],w=C===1;switch(w&&(f=n[C],s=n[C+1],u=f,l=s),x!==lr.L&&y>0&&(t.lineTo(D,b),y=0),x){case lr.M:u=f=n[C++],l=s=n[C++],t.moveTo(f,s);break;case lr.L:{c=n[C++],p=n[C++];var S=fl(c-f),E=fl(p-s);if(S>a||E>o){if(v){var M=d[_++];if(h+M>g){var I=(g-h)/M;t.lineTo(f*(1-I)+c*I,s*(1-I)+p*I);break t}h+=M}t.lineTo(c,p),f=c,s=p,y=0}else{var F=S*S+E*E;F>y&&(D=c,b=p,y=F)}break}case lr.C:{var L=n[C++],R=n[C++],P=n[C++],k=n[C++],H=n[C++],G=n[C++];if(v){var M=d[_++];if(h+M>g){var I=(g-h)/M;Vo(f,L,P,H,I,sc),Vo(s,R,k,G,I,cc),t.bezierCurveTo(sc[1],cc[1],sc[2],cc[2],sc[3],cc[3]);break t}h+=M}t.bezierCurveTo(L,R,P,k,H,G),f=H,s=G;break}case lr.Q:{var L=n[C++],R=n[C++],P=n[C++],k=n[C++];if(v){var M=d[_++];if(h+M>g){var I=(g-h)/M;_f(f,L,P,I,sc),_f(s,R,k,I,cc),t.quadraticCurveTo(sc[1],cc[1],sc[2],cc[2]);break t}h+=M}t.quadraticCurveTo(L,R,P,k),f=P,s=k;break}case lr.A:var j=n[C++],rt=n[C++],xt=n[C++],J=n[C++],ot=n[C++],At=n[C++],Mt=n[C++],ut=!n[C++],$=xt>J?xt:J,Ct=fl(xt-J)>.001,ct=ot+At,ft=!1;if(v){var M=d[_++];h+M>g&&(ct=ot+At*(g-h)/M,ft=!0),h+=M}if(Ct&&t.ellipse?t.ellipse(j,rt,xt,J,Mt,ot,ct,ut):t.arc(j,rt,$,ot,ct,ut),ft)break t;w&&(u=pc(ot)*xt+j,l=vc(ot)*J+rt),f=pc(ct)*xt+j,s=vc(ct)*J+rt;break;case lr.R:u=f=n[C],l=s=n[C+1],c=n[C++],p=n[C++];var It=n[C++],re=n[C++];if(v){var M=d[_++];if(h+M>g){var Bt=g-h;t.moveTo(c,p),t.lineTo(c+nM(Bt,It),p),Bt-=It,Bt>0&&t.lineTo(c+It,p+nM(Bt,re)),Bt-=re,Bt>0&&t.lineTo(c+aM(It-Bt,0),p+re),Bt-=It,Bt>0&&t.lineTo(c,p+aM(re-Bt,0));break t}h+=M}t.rect(c,p,It,re);break;case lr.Z:if(v){var M=d[_++];if(h+M>g){var I=(g-h)/M;t.lineTo(f*(1-I)+u*I,s*(1-I)+l*I);break t}h+=M}t.closePath(),f=u,s=l}}},r.prototype.clone=function(){var t=new r,e=this.data;return t.data=e.slice?e.slice():Array.prototype.slice.call(e),t._len=this._len,t},r.CMD=lr,r.initDefaultProps=(function(){var t=r.prototype;t._saveData=!0,t._ux=0,t._uy=0,t._pendingPtDist=0,t._version=0})(),r})(),Tn=nlt;function gu(r,t,e,n,a,o,i){if(a===0)return!1;var u=a,l=0,f=r;if(i>t+u&&i>n+u||i<t-u&&i<n-u||o>r+u&&o>e+u||o<r-u&&o<e-u)return!1;if(r!==e)l=(t-n)/(r-e),f=(r*n-e*t)/(r-e);else return Math.abs(o-r)<=u/2;var s=l*o-i+f,c=s*s/(l*l+1);return c<=u/2*u/2}function _G(r,t,e,n,a,o,i,u,l,f,s){if(l===0)return!1;var c=l;if(s>t+c&&s>n+c&&s>o+c&&s>u+c||s<t-c&&s<n-c&&s<o-c&&s<u-c||f>r+c&&f>e+c&&f>a+c&&f>i+c||f<r-c&&f<e-c&&f<a-c&&f<i-c)return!1;var p=w0(r,t,e,n,a,o,i,u,f,s,null);return p<=c/2}function ob(r,t,e,n,a,o,i,u,l){if(i===0)return!1;var f=i;if(l>t+f&&l>n+f&&l>o+f||l<t-f&&l<n-f&&l<o-f||u>r+f&&u>e+f&&u>a+f||u<r-f&&u<e-f&&u<a-f)return!1;var s=E0(r,t,e,n,a,o,u,l,null);return s<=f/2}var yG=Math.PI*2;function Jn(r){return r%=yG,r<0&&(r+=yG),r}var Xh=Math.PI*2;function DG(r,t,e,n,a,o,i,u,l){if(i===0)return!1;var f=i;u-=r,l-=t;var s=Math.sqrt(u*u+l*l);if(s-f>e||s+f<e)return!1;if(Math.abs(n-a)%Xh<1e-4)return!0;if(o){var c=n;n=Jn(a),a=Jn(c)}else n=Jn(n),a=Jn(a);n>a&&(a+=Xh);var p=Math.atan2(l,u);return p<0&&(p+=Xh),p>=n&&p<=a||p+Xh>=n&&p+Xh<=a}function Yo(r,t,e,n,a,o){if(o>t&&o>n||o<t&&o<n||n===t)return 0;var i=(o-t)/(n-t),u=n<t?1:-1;(i===1||i===0)&&(u=n<t?.5:-.5);var l=i*(e-r)+r;return l===a?1/0:l>a?u:0}var wf=Tn.CMD,dc=Math.PI*2,ilt=1e-4;function ult(r,t){return Math.abs(r-t)<ilt}var xa=[-1,-1,-1],Qo=[-1,-1];function llt(){var r=Qo[0];Qo[0]=Qo[1],Qo[1]=r}function flt(r,t,e,n,a,o,i,u,l,f){if(f>t&&f>n&&f>o&&f>u||f<t&&f<n&&f<o&&f<u)return 0;var s=js(t,n,o,u,f,xa);if(s===0)return 0;for(var c=0,p=-1,v=void 0,d=void 0,m=0;m<s;m++){var h=xa[m],_=h===0||h===1?.5:1,g=kr(r,e,a,i,h);g<l||(p<0&&(p=x0(t,n,o,u,Qo),Qo[1]<Qo[0]&&p>1&&llt(),v=kr(t,n,o,u,Qo[0]),p>1&&(d=kr(t,n,o,u,Qo[1]))),p===2?h<Qo[0]?c+=v<t?_:-_:h<Qo[1]?c+=d<v?_:-_:c+=u<d?_:-_:h<Qo[0]?c+=v<t?_:-_:c+=u<v?_:-_)}return c}function slt(r,t,e,n,a,o,i,u){if(u>t&&u>n&&u>o||u<t&&u<n&&u<o)return 0;var l=Yz(t,n,o,u,xa);if(l===0)return 0;var f=S0(t,n,o);if(f>=0&&f<=1){for(var s=0,c=Gr(t,n,o,f),p=0;p<l;p++){var v=xa[p]===0||xa[p]===1?.5:1,d=Gr(r,e,a,xa[p]);d<i||(xa[p]<f?s+=c<t?v:-v:s+=o<c?v:-v)}return s}else{var v=xa[0]===0||xa[0]===1?.5:1,d=Gr(r,e,a,xa[0]);return d<i?0:o<t?v:-v}}function clt(r,t,e,n,a,o,i,u){if(u-=t,u>e||u<-e)return 0;var l=Math.sqrt(e*e-u*u);xa[0]=-l,xa[1]=l;var f=Math.abs(n-a);if(f<1e-4)return 0;if(f>=dc-1e-4){n=0,a=dc;var s=o?1:-1;return i>=xa[0]+r&&i<=xa[1]+r?s:0}if(n>a){var c=n;n=a,a=c}n<0&&(n+=dc,a+=dc);for(var p=0,v=0;v<2;v++){var d=xa[v];if(d+r>i){var m=Math.atan2(u,d),s=o?1:-1;m<0&&(m=dc+m),(m>=n&&m<=a||m+dc>=n&&m+dc<=a)&&(m>Math.PI/2&&m<Math.PI*1.5&&(s=-s),p+=s)}}return p}function bG(r,t,e,n,a){for(var o=r.data,i=r.len(),u=0,l=0,f=0,s=0,c=0,p,v,d=0;d<i;){var m=o[d++],h=d===1;switch(m===wf.M&&d>1&&(e||(u+=Yo(l,f,s,c,n,a))),h&&(l=o[d],f=o[d+1],s=l,c=f),m){case wf.M:s=o[d++],c=o[d++],l=s,f=c;break;case wf.L:if(e){if(gu(l,f,o[d],o[d+1],t,n,a))return!0}else u+=Yo(l,f,o[d],o[d+1],n,a)||0;l=o[d++],f=o[d++];break;case wf.C:if(e){if(_G(l,f,o[d++],o[d++],o[d++],o[d++],o[d],o[d+1],t,n,a))return!0}else u+=flt(l,f,o[d++],o[d++],o[d++],o[d++],o[d],o[d+1],n,a)||0;l=o[d++],f=o[d++];break;case wf.Q:if(e){if(ob(l,f,o[d++],o[d++],o[d],o[d+1],t,n,a))return!0}else u+=slt(l,f,o[d++],o[d++],o[d],o[d+1],n,a)||0;l=o[d++],f=o[d++];break;case wf.A:var _=o[d++],g=o[d++],y=o[d++],D=o[d++],b=o[d++],C=o[d++];d+=1;var x=!!(1-o[d++]);p=Math.cos(b)*y+_,v=Math.sin(b)*D+g,h?(s=p,c=v):u+=Yo(l,f,p,v,n,a);var w=(n-_)*D/y+_;if(e){if(DG(_,g,D,b,b+C,x,t,w,a))return!0}else u+=clt(_,g,D,b,b+C,x,w,a);l=Math.cos(b+C)*y+_,f=Math.sin(b+C)*D+g;break;case wf.R:s=l=o[d++],c=f=o[d++];var S=o[d++],E=o[d++];if(p=s+S,v=c+E,e){if(gu(s,c,p,c,t,n,a)||gu(p,c,p,v,t,n,a)||gu(p,v,s,v,t,n,a)||gu(s,v,s,c,t,n,a))return!0}else u+=Yo(p,c,p,v,n,a),u+=Yo(s,v,s,c,n,a);break;case wf.Z:if(e){if(gu(l,f,s,c,t,n,a))return!0}else u+=Yo(l,f,s,c,n,a);l=s,f=c;break}}return!e&&!ult(f,c)&&(u+=Yo(l,f,s,c,n,a)||0),u!==0}function CG(r,t,e){return bG(r,0,!1,t,e)}function TG(r,t,e,n){return bG(r,t,!0,e,n)}var bv=et({fill:"#000",stroke:null,strokePercent:1,fillOpacity:1,strokeOpacity:1,lineDashOffset:0,lineWidth:1,lineCap:"butt",miterLimit:10,strokeNoScale:!1,strokeFirst:!1},du),vlt={style:et({fill:!0,stroke:!0,strokePercent:!0,fillOpacity:!0,strokeOpacity:!0,lineDashOffset:!0,lineWidth:!0,miterLimit:!0},uc.style)},lM=bo.concat(["invisible","culling","z","z2","zlevel","parent"]),dlt=(function(r){A(t,r);function t(e){return r.call(this,e)||this}return t.prototype.update=function(){var e=this;r.prototype.update.call(this);var n=this.style;if(n.decal){var a=this._decalEl=this._decalEl||new t;a.buildPath===t.prototype.buildPath&&(a.buildPath=function(l){e.buildPath(l,e.shape)}),a.silent=!0;var o=a.style;for(var i in n)o[i]!==n[i]&&(o[i]=n[i]);o.fill=n.fill?n.decal:null,o.decal=null,o.shadowColor=null,n.strokeFirst&&(o.stroke=null);for(var u=0;u<lM.length;++u)a[lM[u]]=this[lM[u]];a.__dirty|=ln}else this._decalEl&&(this._decalEl=null)},t.prototype.getDecalElement=function(){return this._decalEl},t.prototype._init=function(e){var n=Ft(e);this.shape=this.getDefaultShape();var a=this.getDefaultStyle();a&&this.useStyle(a);for(var o=0;o<n.length;o++){var i=n[o],u=e[i];i==="style"?this.style?N(this.style,u):this.useStyle(u):i==="shape"?N(this.shape,u):r.prototype.attrKV.call(this,i,u)}this.style||this.useStyle({})},t.prototype.getDefaultStyle=function(){return null},t.prototype.getDefaultShape=function(){return{}},t.prototype.canBeInsideText=function(){return this.hasFill()},t.prototype.getInsideTextFill=function(){var e=this.style.fill;if(e!=="none"){if(V(e)){var n=pv(e,0);return n>.5?Bh:n>.2?bW:Vh}else if(e)return Vh}return Bh},t.prototype.getInsideTextStroke=function(e){var n=this.style.fill;if(V(n)){var a=this.__zr,o=!!(a&&a.isDarkMode()),i=pv(e,0)<Gh;if(o===i)return n}},t.prototype.buildPath=function(e,n,a){},t.prototype.pathUpdated=function(){this.__dirty&=~df},t.prototype.getUpdatedPathProxy=function(e){return!this.path&&this.createPathProxy(),this.path.beginPath(),this.buildPath(this.path,this.shape,e),this.path},t.prototype.createPathProxy=function(){this.path=new Tn(!1)},t.prototype.hasStroke=function(){var e=this.style,n=e.stroke;return!(n==null||n==="none"||!(e.lineWidth>0))},t.prototype.hasFill=function(){var e=this.style,n=e.fill;return n!=null&&n!=="none"},t.prototype.getBoundingRect=function(){var e=this._rect,n=this.style,a=!e;if(a){var o=!1;this.path||(o=!0,this.createPathProxy());var i=this.path;(o||this.__dirty&df)&&(i.beginPath(),this.buildPath(i,this.shape,!1),this.pathUpdated()),e=i.getBoundingRect()}if(this._rect=e,this.hasStroke()&&this.path&&this.path.len()>0){var u=this._rectStroke||(this._rectStroke=e.clone());if(this.__dirty||a){u.copy(e);var l=n.strokeNoScale?this.getLineScale():1,f=n.lineWidth;if(!this.hasFill()){var s=this.strokeContainThreshold;f=Math.max(f,s??4)}l>1e-10&&(u.width+=f/l,u.height+=f/l,u.x-=f/l/2,u.y-=f/l/2)}return u}return e},t.prototype.contain=function(e,n){var a=this.transformCoordToLocal(e,n),o=this.getBoundingRect(),i=this.style;if(e=a[0],n=a[1],o.contain(e,n)){var u=this.path;if(this.hasStroke()){var l=i.lineWidth,f=i.strokeNoScale?this.getLineScale():1;if(f>1e-10&&(this.hasFill()||(l=Math.max(l,this.strokeContainThreshold)),TG(u,l/f,e,n)))return!0}if(this.hasFill())return CG(u,e,n)}return!1},t.prototype.dirtyShape=function(){this.__dirty|=df,this._rect&&(this._rect=null),this._decalEl&&this._decalEl.dirtyShape(),this.markRedraw()},t.prototype.dirty=function(){this.dirtyStyle(),this.dirtyShape()},t.prototype.animateShape=function(e){return this.animate("shape",e)},t.prototype.updateDuringAnimation=function(e){e==="style"?this.dirtyStyle():e==="shape"?this.dirtyShape():this.markRedraw()},t.prototype.attrKV=function(e,n){e==="shape"?this.setShape(n):r.prototype.attrKV.call(this,e,n)},t.prototype.setShape=function(e,n){var a=this.shape;return a||(a=this.shape={}),typeof e=="string"?a[e]=n:N(a,e),this.dirtyShape(),this},t.prototype.shapeChanged=function(){return!!(this.__dirty&df)},t.prototype.createStyle=function(e){return pf(bv,e)},t.prototype._innerSaveToNormal=function(e){r.prototype._innerSaveToNormal.call(this,e);var n=this._normalState;e.shape&&!n.shape&&(n.shape=N({},this.shape))},t.prototype._applyStateObj=function(e,n,a,o,i,u){r.prototype._applyStateObj.call(this,e,n,a,o,i,u);var l=!(n&&o),f;if(n&&n.shape?i?o?f=n.shape:(f=N({},a.shape),N(f,n.shape)):(f=N({},o?this.shape:a.shape),N(f,n.shape)):l&&(f=a.shape),f)if(i){this.shape=N({},this.shape);for(var s={},c=Ft(f),p=0;p<c.length;p++){var v=c[p];typeof f[v]=="object"?this.shape[v]=f[v]:s[v]=f[v]}this._transitionState(e,{shape:s},u)}else this.shape=f,this.dirtyShape()},t.prototype._mergeStates=function(e){for(var n=r.prototype._mergeStates.call(this,e),a,o=0;o<e.length;o++){var i=e[o];i.shape&&(a=a||{},this._mergeStyle(a,i.shape))}return a&&(n.shape=a),n},t.prototype.getAnimationStyleProps=function(){return vlt},t.prototype.isZeroArea=function(){return!1},t.extend=function(e){var n=(function(o){A(i,o);function i(u){var l=o.call(this,u)||this;return e.init&&e.init.call(l,u),l}return i.prototype.getDefaultStyle=function(){return lt(e.style)},i.prototype.getDefaultShape=function(){return lt(e.shape)},i})(t);for(var a in e)typeof e[a]=="function"&&(n.prototype[a]=e[a]);return n},t.initDefaultProps=(function(){var e=t.prototype;e.type="path",e.strokeContainThreshold=5,e.segmentIgnoreThreshold=0,e.subPixelOptimize=!1,e.autoBatch=!1,e.__dirty=ln|Js|df})(),t})(Br),bt=dlt;var mlt=et({strokeFirst:!0,font:_o,x:0,y:0,textAlign:"left",textBaseline:"top",miterLimit:2},bv),xG=(function(r){A(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return t.prototype.hasStroke=function(){var e=this.style,n=e.stroke;return n!=null&&n!=="none"&&e.lineWidth>0},t.prototype.hasFill=function(){var e=this.style,n=e.fill;return n!=null&&n!=="none"},t.prototype.createStyle=function(e){return pf(mlt,e)},t.prototype.setBoundingRect=function(e){this._rect=e},t.prototype.getBoundingRect=function(){var e=this.style;if(!this._rect){var n=e.text;n!=null?n+="":n="";var a=vu(n,e.font,e.textAlign,e.textBaseline);if(a.x+=e.x||0,a.y+=e.y||0,this.hasStroke()){var o=e.lineWidth;a.x-=o/2,a.y-=o/2,a.width+=o,a.height+=o}this._rect=a}return this._rect},t.initDefaultProps=(function(){var e=t.prototype;e.dirtyRectTolerance=10})(),t})(Br);xG.prototype.type="tspan";var sl=xG;var hlt=et({x:0,y:0},du),_lt={style:et({x:!0,y:!0,width:!0,height:!0,sx:!0,sy:!0,sWidth:!0,sHeight:!0},uc.style)};function glt(r){return!!(r&&typeof r!="string"&&r.width&&r.height)}var wG=(function(r){A(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return t.prototype.createStyle=function(e){return pf(hlt,e)},t.prototype._getSize=function(e){var n=this.style,a=n[e];if(a!=null)return a;var o=glt(n.image)?n.image:this.__image;if(!o)return 0;var i=e==="width"?"height":"width",u=n[i];return u==null?o[e]:o[e]/o[i]*u},t.prototype.getWidth=function(){return this._getSize("width")},t.prototype.getHeight=function(){return this._getSize("height")},t.prototype.getAnimationStyleProps=function(){return _lt},t.prototype.getBoundingRect=function(){var e=this.style;return this._rect||(this._rect=new yt(e.x||0,e.y||0,this.getWidth(),this.getHeight())),this._rect},t})(Br);wG.prototype.type="image";var er=wG;function SG(r,t){var e=t.x,n=t.y,a=t.width,o=t.height,i=t.r,u,l,f,s;a<0&&(e=e+a,a=-a),o<0&&(n=n+o,o=-o),typeof i=="number"?u=l=f=s=i:i instanceof Array?i.length===1?u=l=f=s=i[0]:i.length===2?(u=f=i[0],l=s=i[1]):i.length===3?(u=i[0],l=s=i[1],f=i[2]):(u=i[0],l=i[1],f=i[2],s=i[3]):u=l=f=s=0;var c;u+l>a&&(c=u+l,u*=a/c,l*=a/c),f+s>a&&(c=f+s,f*=a/c,s*=a/c),l+f>o&&(c=l+f,l*=o/c,f*=o/c),u+s>o&&(c=u+s,u*=o/c,s*=o/c),r.moveTo(e+u,n),r.lineTo(e+a-l,n),l!==0&&r.arc(e+a-l,n+l,l,-Math.PI/2,0),r.lineTo(e+a,n+o-f),f!==0&&r.arc(e+a-f,n+o-f,f,0,Math.PI/2),r.lineTo(e+s,n+o),s!==0&&r.arc(e+s,n+o-s,s,Math.PI/2,Math.PI),r.lineTo(e,n+u),u!==0&&r.arc(e+u,n+u,u,Math.PI,Math.PI*1.5)}var Cv=Math.round;function ib(r,t,e){if(t){var n=t.x1,a=t.x2,o=t.y1,i=t.y2;r.x1=n,r.x2=a,r.y1=o,r.y2=i;var u=e&&e.lineWidth;return u&&(Cv(n*2)===Cv(a*2)&&(r.x1=r.x2=Sf(n,u,!0)),Cv(o*2)===Cv(i*2)&&(r.y1=r.y2=Sf(o,u,!0))),r}}function ub(r,t,e){if(t){var n=t.x,a=t.y,o=t.width,i=t.height;r.x=n,r.y=a,r.width=o,r.height=i;var u=e&&e.lineWidth;return u&&(r.x=Sf(n,u,!0),r.y=Sf(a,u,!0),r.width=Math.max(Sf(n+o,u,!1)-r.x,o===0?0:1),r.height=Math.max(Sf(a+i,u,!1)-r.y,i===0?0:1)),r}}function Sf(r,t,e){if(!t)return r;var n=Cv(r*2);return(n+Cv(t))%2===0?n/2:(n+(e?1:-1))/2}var blt=(function(){function r(){this.x=0,this.y=0,this.width=0,this.height=0}return r})();var Clt={},EG=(function(r){A(t,r);function t(e){return r.call(this,e)||this}return t.prototype.getDefaultShape=function(){return new blt},t.prototype.buildPath=function(e,n){var a,o,i,u;if(this.subPixelOptimize){var l=ub(Clt,n,this.style);a=l.x,o=l.y,i=l.width,u=l.height,l.r=n.r,n=l}else a=n.x,o=n.y,i=n.width,u=n.height;n.r?SG(e,n):e.rect(a,o,i,u)},t.prototype.isZeroArea=function(){return!this.shape.width||!this.shape.height},t})(bt);EG.prototype.type="rect";var Rt=EG;var MG={fill:"#000"},AG=2,Tlt={style:et({fill:!0,stroke:!0,fillOpacity:!0,strokeOpacity:!0,lineWidth:!0,fontSize:!0,lineHeight:!0,width:!0,height:!0,textShadowColor:!0,textShadowBlur:!0,textShadowOffsetX:!0,textShadowOffsetY:!0,backgroundColor:!0,padding:!0,borderColor:!0,borderWidth:!0,borderRadius:!0},uc.style)},UG=(function(r){A(t,r);function t(e){var n=r.call(this)||this;return n.type="text",n._children=[],n._defaultStyle=MG,n.attr(e),n}return t.prototype.childrenRef=function(){return this._children},t.prototype.update=function(){r.prototype.update.call(this),this.styleChanged()&&this._updateSubTexts();for(var e=0;e<this._children.length;e++){var n=this._children[e];n.zlevel=this.zlevel,n.z=this.z,n.z2=this.z2,n.culling=this.culling,n.cursor=this.cursor,n.invisible=this.invisible}},t.prototype.updateTransform=function(){var e=this.innerTransformable;e?(e.updateTransform(),e.transform&&(this.transform=e.transform)):r.prototype.updateTransform.call(this)},t.prototype.getLocalTransform=function(e){var n=this.innerTransformable;return n?n.getLocalTransform(e):r.prototype.getLocalTransform.call(this,e)},t.prototype.getComputedTransform=function(){return this.__hostTarget&&(this.__hostTarget.getComputedTransform(),this.__hostTarget.updateInnerText(!0)),r.prototype.getComputedTransform.call(this)},t.prototype._updateSubTexts=function(){this._childCursor=0,Slt(this.style),this.style.rich?this._updateRichTexts():this._updatePlainTexts(),this._children.length=this._childCursor,this.styleUpdated()},t.prototype.addSelfToZr=function(e){r.prototype.addSelfToZr.call(this,e);for(var n=0;n<this._children.length;n++)this._children[n].__zr=e},t.prototype.removeSelfFromZr=function(e){r.prototype.removeSelfFromZr.call(this,e);for(var n=0;n<this._children.length;n++)this._children[n].__zr=null},t.prototype.getBoundingRect=function(){if(this.styleChanged()&&this._updateSubTexts(),!this._rect){for(var e=new yt(0,0,0,0),n=this._children,a=[],o=null,i=0;i<n.length;i++){var u=n[i],l=u.getBoundingRect(),f=u.getLocalTransform(a);f?(e.copy(l),e.applyTransform(f),o=o||e.clone(),o.union(e)):(o=o||l.clone(),o.union(l))}this._rect=o||e}return this._rect},t.prototype.setDefaultTextStyle=function(e){this._defaultStyle=e||MG},t.prototype.setTextContent=function(e){},t.prototype._mergeStyle=function(e,n){if(!n)return e;var a=n.rich,o=e.rich||a&&{};return N(e,n),a&&o?(this._mergeRich(o,a),e.rich=o):o&&(e.rich=o),e},t.prototype._mergeRich=function(e,n){for(var a=Ft(n),o=0;o<a.length;o++){var i=a[o];e[i]=e[i]||{},N(e[i],n[i])}},t.prototype.getAnimationStyleProps=function(){return Tlt},t.prototype._getOrCreateChild=function(e){var n=this._children[this._childCursor];return(!n||!(n instanceof e))&&(n=new e),this._children[this._childCursor++]=n,n.__zr=this.__zr,n.parent=this,n},t.prototype._updatePlainTexts=function(){var e=this.style,n=e.font||_o,a=e.padding,o=OG(e),i=iG(o,e),u=fM(e),l=!!e.backgroundColor,f=i.outerHeight,s=i.outerWidth,c=i.contentWidth,p=i.lines,v=i.lineHeight,d=this._defaultStyle,m=e.x||0,h=e.y||0,_=e.align||d.align||"left",g=e.verticalAlign||d.verticalAlign||"top",y=m,D=nc(h,i.contentHeight,g);if(u||a){var b=dv(m,s,_),C=nc(h,f,g);u&&this._renderBackground(e,e,b,C,s,f)}D+=v/2,a&&(y=NG(m,_,a),g==="top"?D+=a[0]:g==="bottom"&&(D-=a[2]));for(var x=0,w=!1,S=PG("fill"in e?e.fill:(w=!0,d.fill)),E=RG("stroke"in e?e.stroke:!l&&(!d.autoStroke||w)?(x=AG,d.stroke):null),M=e.textShadowBlur>0,I=e.width!=null&&(e.overflow==="truncate"||e.overflow==="break"||e.overflow==="breakAll"),F=i.calculatedLineHeight,L=0;L<p.length;L++){var R=this._getOrCreateChild(sl),P=R.createStyle();R.useStyle(P),P.text=p[L],P.x=y,P.y=D,_&&(P.textAlign=_),P.textBaseline="middle",P.opacity=e.opacity,P.strokeFirst=!0,M&&(P.shadowBlur=e.textShadowBlur||0,P.shadowColor=e.textShadowColor||"transparent",P.shadowOffsetX=e.textShadowOffsetX||0,P.shadowOffsetY=e.textShadowOffsetY||0),P.stroke=E,P.fill=S,E&&(P.lineWidth=e.lineWidth||x,P.lineDash=e.lineDash,P.lineDashOffset=e.lineDashOffset||0),P.font=n,FG(P,e),D+=v,I&&R.setBoundingRect(new yt(dv(P.x,e.width,P.textAlign),nc(P.y,F,P.textBaseline),c,F))}},t.prototype._updateRichTexts=function(){var e=this.style,n=OG(e),a=uG(n,e),o=a.width,i=a.outerWidth,u=a.outerHeight,l=e.padding,f=e.x||0,s=e.y||0,c=this._defaultStyle,p=e.align||c.align,v=e.verticalAlign||c.verticalAlign,d=dv(f,i,p),m=nc(s,u,v),h=d,_=m;l&&(h+=l[3],_+=l[0]);var g=h+o;fM(e)&&this._renderBackground(e,e,d,m,i,u);for(var y=!!e.backgroundColor,D=0;D<a.lines.length;D++){for(var b=a.lines[D],C=b.tokens,x=C.length,w=b.lineHeight,S=b.width,E=0,M=h,I=g,F=x-1,L=void 0;E<x&&(L=C[E],!L.align||L.align==="left");)this._placeToken(L,e,w,_,M,"left",y),S-=L.width,M+=L.width,E++;for(;F>=0&&(L=C[F],L.align==="right");)this._placeToken(L,e,w,_,I,"right",y),S-=L.width,I-=L.width,F--;for(M+=(o-(M-h)-(g-I)-S)/2;E<=F;)L=C[E],this._placeToken(L,e,w,_,M+L.width/2,"center",y),M+=L.width,E++;_+=w}},t.prototype._placeToken=function(e,n,a,o,i,u,l){var f=n.rich[e.styleName]||{};f.text=e.text;var s=e.verticalAlign,c=o+a/2;s==="top"?c=o+e.height/2:s==="bottom"&&(c=o+a-e.height/2);var p=!e.isLineHolder&&fM(f);p&&this._renderBackground(f,n,u==="right"?i-e.width:u==="center"?i-e.width/2:i,c-e.height/2,e.width,e.height);var v=!!f.backgroundColor,d=e.textPadding;d&&(i=NG(i,u,d),c-=e.height/2-d[0]-e.innerHeight/2);var m=this._getOrCreateChild(sl),h=m.createStyle();m.useStyle(h);var _=this._defaultStyle,g=!1,y=0,D=PG("fill"in f?f.fill:"fill"in n?n.fill:(g=!0,_.fill)),b=RG("stroke"in f?f.stroke:"stroke"in n?n.stroke:!v&&!l&&(!_.autoStroke||g)?(y=AG,_.stroke):null),C=f.textShadowBlur>0||n.textShadowBlur>0;h.text=e.text,h.x=i,h.y=c,C&&(h.shadowBlur=f.textShadowBlur||n.textShadowBlur||0,h.shadowColor=f.textShadowColor||n.textShadowColor||"transparent",h.shadowOffsetX=f.textShadowOffsetX||n.textShadowOffsetX||0,h.shadowOffsetY=f.textShadowOffsetY||n.textShadowOffsetY||0),h.textAlign=u,h.textBaseline="middle",h.font=e.font||_o,h.opacity=gn(f.opacity,n.opacity,1),FG(h,f),b&&(h.lineWidth=gn(f.lineWidth,n.lineWidth,y),h.lineDash=Tt(f.lineDash,n.lineDash),h.lineDashOffset=n.lineDashOffset||0,h.stroke=b),D&&(h.fill=D);var x=e.contentWidth,w=e.contentHeight;m.setBoundingRect(new yt(dv(h.x,x,h.textAlign),nc(h.y,w,h.textBaseline),x,w))},t.prototype._renderBackground=function(e,n,a,o,i,u){var l=e.backgroundColor,f=e.borderWidth,s=e.borderColor,c=l&&l.image,p=l&&!c,v=e.borderRadius,d=this,m,h;if(p||e.lineHeight||f&&s){m=this._getOrCreateChild(Rt),m.useStyle(m.createStyle()),m.style.fill=null;var _=m.shape;_.x=a,_.y=o,_.width=i,_.height=u,_.r=v,m.dirtyShape()}if(p){var g=m.style;g.fill=l||null,g.fillOpacity=Tt(e.fillOpacity,1)}else if(c){h=this._getOrCreateChild(er),h.onload=function(){d.dirtyStyle()};var y=h.style;y.image=l.image,y.x=a,y.y=o,y.width=i,y.height=u}if(f&&s){var g=m.style;g.lineWidth=f,g.stroke=s,g.strokeOpacity=Tt(e.strokeOpacity,1),g.lineDash=e.borderDash,g.lineDashOffset=e.borderDashOffset||0,m.strokeContainThreshold=0,m.hasFill()&&m.hasStroke()&&(g.strokeFirst=!0,g.lineWidth*=2)}var D=(m||h).style;D.shadowBlur=e.shadowBlur||0,D.shadowColor=e.shadowColor||"transparent",D.shadowOffsetX=e.shadowOffsetX||0,D.shadowOffsetY=e.shadowOffsetY||0,D.opacity=gn(e.opacity,n.opacity,1)},t.makeFont=function(e){var n="";return cM(e)&&(n=[e.fontStyle,e.fontWeight,sM(e.fontSize),e.fontFamily||"sans-serif"].join(" ")),n&&yn(n)||e.textFont||e.font},t})(Br),xlt={left:!0,right:1,center:1},wlt={top:1,bottom:1,middle:1},IG=["fontStyle","fontWeight","fontSize","fontFamily"];function sM(r){return typeof r=="string"&&(r.indexOf("px")!==-1||r.indexOf("rem")!==-1||r.indexOf("em")!==-1)?r:isNaN(+r)?i0+"px":r+"px"}function FG(r,t){for(var e=0;e<IG.length;e++){var n=IG[e],a=t[n];a!=null&&(r[n]=a)}}function cM(r){return r.fontSize!=null||r.fontFamily||r.fontWeight}function Slt(r){return LG(r),T(r.rich,LG),r}function LG(r){if(r){r.font=UG.makeFont(r);var t=r.align;t==="middle"&&(t="center"),r.align=t==null||xlt[t]?t:"left";var e=r.verticalAlign;e==="center"&&(e="middle"),r.verticalAlign=e==null||wlt[e]?e:"top";var n=r.padding;n&&(r.padding=rv(r.padding))}}function RG(r,t){return r==null||t<=0||r==="transparent"||r==="none"?null:r.image||r.colorStops?"#000":r}function PG(r){return r==null||r==="none"?null:r.image||r.colorStops?"#000":r}function NG(r,t,e){return t==="right"?r-e[1]:t==="center"?r+e[3]/2-e[1]/2:r+e[3]}function OG(r){var t=r.text;return t!=null&&(t+=""),t}function fM(r){return!!(r.backgroundColor||r.lineHeight||r.borderWidth&&r.borderColor)}var Wt=UG;var vt=St(),Kh=function(r,t,e,n){if(n){var a=vt(n);a.dataIndex=e,a.dataType=t,a.seriesIndex=r,a.ssrType="chart",n.type==="group"&&n.traverse(function(o){var i=vt(o);i.seriesIndex=r,i.dataIndex=e,i.dataType=t,i.ssrType="chart"})}};var HG=1,kG={},VG=St(),dM=St(),mM=0,mc=1,t_=2,sn=["emphasis","blur","select"],Ef=["normal","emphasis","blur","select"],cl=10,Elt=9,Mf="highlight",e_="downplay",xv="select",r_="unselect",wv="toggleSelect";function Tv(r){return r!=null&&r!=="none"}function fb(r,t,e){r.onHoverStateChange&&(r.hoverState||0)!==e&&r.onHoverStateChange(t),r.hoverState=e}function $G(r){fb(r,"emphasis",t_)}function qG(r){r.hoverState===t_&&fb(r,"normal",mM)}function hM(r){fb(r,"blur",mc)}function JG(r){r.hoverState===mc&&fb(r,"normal",mM)}function Mlt(r){r.selected=!0}function Alt(r){r.selected=!1}function zG(r,t,e){t(r,e)}function pl(r,t,e){zG(r,t,e),r.isGroup&&r.traverse(function(n){zG(n,t,e)})}function hc(r,t){switch(t){case"emphasis":r.hoverState=t_;break;case"normal":r.hoverState=mM;break;case"blur":r.hoverState=mc;break;case"select":r.selected=!0}}function Ilt(r,t,e,n){for(var a=r.style,o={},i=0;i<t.length;i++){var u=t[i],l=a[u];o[u]=l??(n&&n[u])}for(var i=0;i<r.animators.length;i++){var f=r.animators[i];f.__fromStateTransition&&f.__fromStateTransition.indexOf(e)<0&&f.targetName==="style"&&f.saveTo(o,t)}return o}function Flt(r,t,e,n){var a=e&&wt(e,"select")>=0,o=!1;if(r instanceof bt){var i=VG(r),u=a&&i.selectFill||i.normalFill,l=a&&i.selectStroke||i.normalStroke;if(Tv(u)||Tv(l)){n=n||{};var f=n.style||{};f.fill==="inherit"?(o=!0,n=N({},n),f=N({},f),f.fill=u):!Tv(f.fill)&&Tv(u)?(o=!0,n=N({},n),f=N({},f),f.fill=Oh(u)):!Tv(f.stroke)&&Tv(l)&&(o||(n=N({},n),f=N({},f)),f.stroke=Oh(l)),n.style=f}}if(n&&n.z2==null){o||(n=N({},n));var s=r.z2EmphasisLift;n.z2=r.z2+(s??cl)}return n}function Llt(r,t,e){if(e&&e.z2==null){e=N({},e);var n=r.z2SelectLift;e.z2=r.z2+(n??Elt)}return e}function Rlt(r,t,e){var n=wt(r.currentStates,t)>=0,a=r.style.opacity,o=n?null:Ilt(r,["opacity"],t,{opacity:1});e=e||{};var i=e.style||{};return i.opacity==null&&(e=N({},e),i=N({opacity:n?a:o.opacity*.1},i),e.style=i),e}function pM(r,t){var e=this.states[r];if(this.style){if(r==="emphasis")return Flt(this,r,t,e);if(r==="blur")return Rlt(this,r,e);if(r==="select")return Llt(this,r,e)}return e}function xi(r){r.stateProxy=pM;var t=r.getTextContent(),e=r.getTextGuideLine();t&&(t.stateProxy=pM),e&&(e.stateProxy=pM)}function WG(r,t){!jG(r,t)&&!r.__highByOuter&&pl(r,$G)}function GG(r,t){!jG(r,t)&&!r.__highByOuter&&pl(r,qG)}function fa(r,t){r.__highByOuter|=1<<(t||0),pl(r,$G)}function sa(r,t){!(r.__highByOuter&=~(1<<(t||0)))&&pl(r,qG)}function sb(r){pl(r,hM)}function n_(r){pl(r,JG)}function _M(r){pl(r,Mlt)}function gM(r){pl(r,Alt)}function jG(r,t){return r.__highDownSilentOnTouch&&t.zrByTouch}function yM(r){var t=r.getModel(),e=[],n=[];t.eachComponent(function(a,o){var i=dM(o),u=a==="series",l=u?r.getViewOfSeriesModel(o):r.getViewOfComponentModel(o);!u&&n.push(l),i.isBlured&&(l.group.traverse(function(f){JG(f)}),u&&e.push(o)),i.isBlured=!1}),T(n,function(a){a&&a.toggleBlurSeries&&a.toggleBlurSeries(e,!1,t)})}function vM(r,t,e,n){var a=n.getModel();e=e||"coordinateSystem";function o(f,s){for(var c=0;c<s.length;c++){var p=f.getItemGraphicEl(s[c]);p&&n_(p)}}if(r!=null&&!(!t||t==="none")){var i=a.getSeriesByIndex(r),u=i.coordinateSystem;u&&u.master&&(u=u.master);var l=[];a.eachSeries(function(f){var s=i===f,c=f.coordinateSystem;c&&c.master&&(c=c.master);var p=c&&u?c===u:s;if(!(e==="series"&&!s||e==="coordinateSystem"&&!p||t==="series"&&s)){var v=n.getViewOfSeriesModel(f);if(v.group.traverse(function(h){h.__highByOuter&&s&&t==="self"||hM(h)}),Ur(t))o(f.getData(),t);else if(nt(t))for(var d=Ft(t),m=0;m<d.length;m++)o(f.getData(d[m]),t[d[m]]);l.push(f),dM(f).isBlured=!0}}),a.eachComponent(function(f,s){if(f!=="series"){var c=n.getViewOfComponentModel(s);c&&c.toggleBlurSeries&&c.toggleBlurSeries(l,!0,a)}})}}function lb(r,t,e){if(!(r==null||t==null)){var n=e.getModel().getComponent(r,t);if(n){dM(n).isBlured=!0;var a=e.getViewOfComponentModel(n);!a||!a.focusBlurEnabled||a.group.traverse(function(o){hM(o)})}}}function YG(r,t,e){var n=r.seriesIndex,a=r.getData(t.dataType);if(a){var o=jo(a,t);o=(O(o)?o[0]:o)||0;var i=a.getItemGraphicEl(o);if(!i)for(var u=a.count(),l=0;!i&&l<u;)i=a.getItemGraphicEl(l++);if(i){var f=vt(i);vM(n,f.focus,f.blurScope,e)}else{var s=r.get(["emphasis","focus"]),c=r.get(["emphasis","blurScope"]);s!=null&&vM(n,s,c,e)}}}function cb(r,t,e,n){var a={focusSelf:!1,dispatchers:null};if(r==null||r==="series"||t==null||e==null)return a;var o=n.getModel().getComponent(r,t);if(!o)return a;var i=n.getViewOfComponentModel(o);if(!i||!i.findHighDownDispatchers)return a;for(var u=i.findHighDownDispatchers(e),l,f=0;f<u.length;f++)if(vt(u[f]).focus==="self"){l=!0;break}return{focusSelf:l,dispatchers:u}}function QG(r,t,e){var n=vt(r),a=cb(n.componentMainType,n.componentIndex,n.componentHighDownName,e),o=a.dispatchers,i=a.focusSelf;o?(i&&lb(n.componentMainType,n.componentIndex,e),T(o,function(u){return WG(u,t)})):(vM(n.seriesIndex,n.focus,n.blurScope,e),n.focus==="self"&&lb(n.componentMainType,n.componentIndex,e),WG(r,t))}function ZG(r,t,e){yM(e);var n=vt(r),a=cb(n.componentMainType,n.componentIndex,n.componentHighDownName,e).dispatchers;a?T(a,function(o){return GG(o,t)}):GG(r,t)}function XG(r,t,e){if(vb(t)){var n=t.dataType,a=r.getData(n),o=jo(a,t);O(o)||(o=[o]),r[t.type===wv?"toggleSelect":t.type===xv?"select":"unselect"](o,n)}}function DM(r){var t=r.getAllData();T(t,function(e){var n=e.data,a=e.type;n.eachItemGraphicEl(function(o,i){r.isSelected(i,a)?_M(o):gM(o)})})}function KG(r){var t=[];return r.eachSeries(function(e){var n=e.getAllData();T(n,function(a){var o=a.data,i=a.type,u=e.getSelectedDataIndices();if(u.length>0){var l={dataIndex:u,seriesIndex:e.seriesIndex};i!=null&&(l.dataType=i),t.push(l)}})}),t}function yu(r,t,e){vl(r,!0),pl(r,xi),pb(r,t,e)}function Plt(r){vl(r,!1)}function Me(r,t,e,n){n?Plt(r):yu(r,t,e)}function pb(r,t,e){var n=vt(r);t!=null?(n.focus=t,n.blurScope=e):n.focus&&(n.focus=null)}var BG=["emphasis","blur","select"],Nlt={itemStyle:"getItemStyle",lineStyle:"getLineStyle",areaStyle:"getAreaStyle"};function fr(r,t,e,n){e=e||"itemStyle";for(var a=0;a<BG.length;a++){var o=BG[a],i=t.getModel([o,e]),u=r.ensureState(o);u.style=n?n(i):i[Nlt[e]]()}}function vl(r,t){var e=t===!1,n=r;r.highDownSilentOnTouch&&(n.__highDownSilentOnTouch=r.highDownSilentOnTouch),(!e||n.__highDownDispatcher)&&(n.__highByOuter=n.__highByOuter||0,n.__highDownDispatcher=!e)}function Af(r){return!!(r&&r.__highDownDispatcher)}function tB(r,t,e){var n=vt(r);n.componentMainType=t.mainType,n.componentIndex=t.componentIndex,n.componentHighDownName=e}function eB(r){var t=kG[r];return t==null&&HG<=32&&(t=kG[r]=HG++),t}function vb(r){var t=r.type;return t===xv||t===r_||t===wv}function bM(r){var t=r.type;return t===Mf||t===e_}function rB(r){var t=VG(r);t.normalFill=r.style.fill,t.normalStroke=r.style.stroke;var e=r.states.select||{};t.selectFill=e.style&&e.style.fill||null,t.selectStroke=e.style&&e.style.stroke||null}var Ot={};JZ(Ot,{Arc:()=>l_,BezierCurve:()=>yc,BoundingRect:()=>yt,Circle:()=>wa,CompoundPath:()=>Av,Ellipse:()=>o_,Group:()=>at,Image:()=>er,IncrementalDisplayable:()=>SB,Line:()=>mr,LinearGradient:()=>bu,OrientedBoundingRect:()=>Iv,Path:()=>bt,Point:()=>Qt,Polygon:()=>xr,Polyline:()=>yr,RadialGradient:()=>bb,Rect:()=>Rt,Ring:()=>gc,Sector:()=>Vr,Text:()=>Wt,applyTransform:()=>jn,clipPointsByRect:()=>IM,clipRectByRect:()=>dft,createIcon:()=>gl,extendPath:()=>cft,extendShape:()=>fft,getShapeClass:()=>f_,getTransform:()=>Ei,groupTransition:()=>_l,initProps:()=>Ae,isElementRemoved:()=>dl,lineLineIntersect:()=>PB,linePolygonIntersect:()=>Lv,makeImage:()=>AM,makePath:()=>Fv,mergePath:()=>pa,registerShape:()=>Si,removeElement:()=>Zo,removeElementWithFadeOut:()=>ml,resizePath:()=>RB,setTooltipConfig:()=>Mi,subPixelOptimize:()=>s_,subPixelOptimizeLine:()=>hl,subPixelOptimizeRect:()=>pft,transformDirection:()=>Cc,traverseElements:()=>Sa,updateProps:()=>$t});var Sv=Tn.CMD,Olt=[[],[],[]],nB=Math.sqrt,Ult=Math.atan2;function db(r,t){if(t){var e=r.data,n=r.len(),a,o,i,u,l,f,s=Sv.M,c=Sv.C,p=Sv.L,v=Sv.R,d=Sv.A,m=Sv.Q;for(i=0,u=0;i<n;){switch(a=e[i++],u=i,o=0,a){case s:o=1;break;case p:o=1;break;case c:o=3;break;case m:o=2;break;case d:var h=t[4],_=t[5],g=nB(t[0]*t[0]+t[1]*t[1]),y=nB(t[2]*t[2]+t[3]*t[3]),D=Ult(-t[1]/y,t[0]/g);e[i]*=g,e[i++]+=h,e[i]*=y,e[i++]+=_,e[i++]*=g,e[i++]*=y,e[i++]+=D,e[i++]+=D,i+=2,u=i;break;case v:f[0]=e[i++],f[1]=e[i++],Hr(f,f,t),e[u++]=f[0],e[u++]=f[1],f[0]+=e[i++],f[1]+=e[i++],Hr(f,f,t),e[u++]=f[0],e[u++]=f[1]}for(l=0;l<o;l++){var b=Olt[l];b[0]=e[i++],b[1]=e[i++],Hr(b,b,t),e[u++]=b[0],e[u++]=b[1]}}r.increaseVersion()}}var CM=Math.sqrt,mb=Math.sin,hb=Math.cos,a_=Math.PI;function aB(r){return Math.sqrt(r[0]*r[0]+r[1]*r[1])}function TM(r,t){return(r[0]*t[0]+r[1]*t[1])/(aB(r)*aB(t))}function oB(r,t){return(r[0]*t[1]<r[1]*t[0]?-1:1)*Math.acos(TM(r,t))}function iB(r,t,e,n,a,o,i,u,l,f,s){var c=l*(a_/180),p=hb(c)*(r-e)/2+mb(c)*(t-n)/2,v=-1*mb(c)*(r-e)/2+hb(c)*(t-n)/2,d=p*p/(i*i)+v*v/(u*u);d>1&&(i*=CM(d),u*=CM(d));var m=(a===o?-1:1)*CM((i*i*(u*u)-i*i*(v*v)-u*u*(p*p))/(i*i*(v*v)+u*u*(p*p)))||0,h=m*i*v/u,_=m*-u*p/i,g=(r+e)/2+hb(c)*h-mb(c)*_,y=(t+n)/2+mb(c)*h+hb(c)*_,D=oB([1,0],[(p-h)/i,(v-_)/u]),b=[(p-h)/i,(v-_)/u],C=[(-1*p-h)/i,(-1*v-_)/u],x=oB(b,C);if(TM(b,C)<=-1&&(x=a_),TM(b,C)>=1&&(x=0),x<0){var w=Math.round(x/a_*1e6)/1e6;x=a_*2+w%2*a_}s.addData(f,g,y,i,u,D,x,c,o)}var Hlt=/([mlvhzcqtsa])([^mlvhzcqtsa]*)/ig,klt=/-?([0-9]*\.)?[0-9]+([eE]-?[0-9]+)?/g;function zlt(r){var t=new Tn;if(!r)return t;var e=0,n=0,a=e,o=n,i,u=Tn.CMD,l=r.match(Hlt);if(!l)return t;for(var f=0;f<l.length;f++){for(var s=l[f],c=s.charAt(0),p=void 0,v=s.match(klt)||[],d=v.length,m=0;m<d;m++)v[m]=parseFloat(v[m]);for(var h=0;h<d;){var _=void 0,g=void 0,y=void 0,D=void 0,b=void 0,C=void 0,x=void 0,w=e,S=n,E=void 0,M=void 0;switch(c){case"l":e+=v[h++],n+=v[h++],p=u.L,t.addData(p,e,n);break;case"L":e=v[h++],n=v[h++],p=u.L,t.addData(p,e,n);break;case"m":e+=v[h++],n+=v[h++],p=u.M,t.addData(p,e,n),a=e,o=n,c="l";break;case"M":e=v[h++],n=v[h++],p=u.M,t.addData(p,e,n),a=e,o=n,c="L";break;case"h":e+=v[h++],p=u.L,t.addData(p,e,n);break;case"H":e=v[h++],p=u.L,t.addData(p,e,n);break;case"v":n+=v[h++],p=u.L,t.addData(p,e,n);break;case"V":n=v[h++],p=u.L,t.addData(p,e,n);break;case"C":p=u.C,t.addData(p,v[h++],v[h++],v[h++],v[h++],v[h++],v[h++]),e=v[h-2],n=v[h-1];break;case"c":p=u.C,t.addData(p,v[h++]+e,v[h++]+n,v[h++]+e,v[h++]+n,v[h++]+e,v[h++]+n),e+=v[h-2],n+=v[h-1];break;case"S":_=e,g=n,E=t.len(),M=t.data,i===u.C&&(_+=e-M[E-4],g+=n-M[E-3]),p=u.C,w=v[h++],S=v[h++],e=v[h++],n=v[h++],t.addData(p,_,g,w,S,e,n);break;case"s":_=e,g=n,E=t.len(),M=t.data,i===u.C&&(_+=e-M[E-4],g+=n-M[E-3]),p=u.C,w=e+v[h++],S=n+v[h++],e+=v[h++],n+=v[h++],t.addData(p,_,g,w,S,e,n);break;case"Q":w=v[h++],S=v[h++],e=v[h++],n=v[h++],p=u.Q,t.addData(p,w,S,e,n);break;case"q":w=v[h++]+e,S=v[h++]+n,e+=v[h++],n+=v[h++],p=u.Q,t.addData(p,w,S,e,n);break;case"T":_=e,g=n,E=t.len(),M=t.data,i===u.Q&&(_+=e-M[E-4],g+=n-M[E-3]),e=v[h++],n=v[h++],p=u.Q,t.addData(p,_,g,e,n);break;case"t":_=e,g=n,E=t.len(),M=t.data,i===u.Q&&(_+=e-M[E-4],g+=n-M[E-3]),e+=v[h++],n+=v[h++],p=u.Q,t.addData(p,_,g,e,n);break;case"A":y=v[h++],D=v[h++],b=v[h++],C=v[h++],x=v[h++],w=e,S=n,e=v[h++],n=v[h++],p=u.A,iB(w,S,e,n,C,x,y,D,b,p,t);break;case"a":y=v[h++],D=v[h++],b=v[h++],C=v[h++],x=v[h++],w=e,S=n,e+=v[h++],n+=v[h++],p=u.A,iB(w,S,e,n,C,x,y,D,b,p,t);break}}(c==="z"||c==="Z")&&(p=u.Z,t.addData(p),e=a,n=o),i=p}return t.toStatic(),t}var uB=(function(r){A(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return t.prototype.applyTransform=function(e){},t})(bt);function lB(r){return r.setData!=null}function fB(r,t){var e=zlt(r),n=N({},t);return n.buildPath=function(a){if(lB(a)){a.setData(e.data);var o=a.getContext();o&&a.rebuildPath(o,1)}else{var o=a;e.rebuildPath(o,1)}},n.applyTransform=function(a){db(e,a),this.dirtyShape()},n}function _b(r,t){return new uB(fB(r,t))}function sB(r,t){var e=fB(r,t),n=(function(a){A(o,a);function o(i){var u=a.call(this,i)||this;return u.applyTransform=e.applyTransform,u.buildPath=e.buildPath,u}return o})(uB);return n}function cB(r,t){for(var e=[],n=r.length,a=0;a<n;a++){var o=r[a];e.push(o.getUpdatedPathProxy(!0))}var i=new bt(t);return i.createPathProxy(),i.buildPath=function(u){if(lB(u)){u.appendPath(e);var l=u.getContext();l&&u.rebuildPath(l,1)}},i}function Ev(r,t){t=t||{};var e=new bt;return r.shape&&e.setShape(r.shape),e.setStyle(r.style),t.bakeTransform?db(e.path,r.getComputedTransform()):t.toLocal?e.setLocalTransform(r.getComputedTransform()):e.copyTransform(r),e.buildPath=r.buildPath,e.applyTransform=e.applyTransform,e.z=r.z,e.z2=r.z2,e.zlevel=r.zlevel,e}var Glt=(function(){function r(){this.cx=0,this.cy=0,this.r=0}return r})();var pB=(function(r){A(t,r);function t(e){return r.call(this,e)||this}return t.prototype.getDefaultShape=function(){return new Glt},t.prototype.buildPath=function(e,n){e.moveTo(n.cx+n.r,n.cy),e.arc(n.cx,n.cy,n.r,0,Math.PI*2)},t})(bt);pB.prototype.type="circle";var wa=pB;var Blt=(function(){function r(){this.cx=0,this.cy=0,this.rx=0,this.ry=0}return r})();var vB=(function(r){A(t,r);function t(e){return r.call(this,e)||this}return t.prototype.getDefaultShape=function(){return new Blt},t.prototype.buildPath=function(e,n){var a=.5522848,o=n.cx,i=n.cy,u=n.rx,l=n.ry,f=u*a,s=l*a;e.moveTo(o-u,i),e.bezierCurveTo(o-u,i-s,o-f,i-l,o,i-l),e.bezierCurveTo(o+f,i-l,o+u,i-s,o+u,i),e.bezierCurveTo(o+u,i+s,o+f,i+l,o,i+l),e.bezierCurveTo(o-f,i+l,o-u,i+s,o-u,i),e.closePath()},t})(bt);vB.prototype.type="ellipse";var o_=vB;var mB=Math.PI,xM=mB*2,_c=Math.sin,Mv=Math.cos,Vlt=Math.acos,ca=Math.atan2,dB=Math.abs,u_=Math.sqrt,i_=Math.max,Du=Math.min,wi=1e-4;function $lt(r,t,e,n,a,o,i,u){var l=e-r,f=n-t,s=i-a,c=u-o,p=c*l-s*f;if(!(p*p<wi))return p=(s*(t-o)-c*(r-a))/p,[r+p*l,t+p*f]}function gb(r,t,e,n,a,o,i){var u=r-e,l=t-n,f=(i?o:-o)/u_(u*u+l*l),s=f*l,c=-f*u,p=r+s,v=t+c,d=e+s,m=n+c,h=(p+d)/2,_=(v+m)/2,g=d-p,y=m-v,D=g*g+y*y,b=a-o,C=p*m-d*v,x=(y<0?-1:1)*u_(i_(0,b*b*D-C*C)),w=(C*y-g*x)/D,S=(-C*g-y*x)/D,E=(C*y+g*x)/D,M=(-C*g+y*x)/D,I=w-h,F=S-_,L=E-h,R=M-_;return I*I+F*F>L*L+R*R&&(w=E,S=M),{cx:w,cy:S,x0:-s,y0:-c,x1:w*(a/b-1),y1:S*(a/b-1)}}function qlt(r){var t;if(O(r)){var e=r.length;if(!e)return r;e===1?t=[r[0],r[0],0,0]:e===2?t=[r[0],r[0],r[1],r[1]]:e===3?t=r.concat(r[2]):t=r}else t=[r,r,r,r];return t}function hB(r,t){var e,n=i_(t.r,0),a=i_(t.r0||0,0),o=n>0,i=a>0;if(!(!o&&!i)){if(o||(n=a,a=0),a>n){var u=n;n=a,a=u}var l=t.startAngle,f=t.endAngle;if(!(isNaN(l)||isNaN(f))){var s=t.cx,c=t.cy,p=!!t.clockwise,v=dB(f-l),d=v>xM&&v%xM;if(d>wi&&(v=d),!(n>wi))r.moveTo(s,c);else if(v>xM-wi)r.moveTo(s+n*Mv(l),c+n*_c(l)),r.arc(s,c,n,l,f,!p),a>wi&&(r.moveTo(s+a*Mv(f),c+a*_c(f)),r.arc(s,c,a,f,l,p));else{var m=void 0,h=void 0,_=void 0,g=void 0,y=void 0,D=void 0,b=void 0,C=void 0,x=void 0,w=void 0,S=void 0,E=void 0,M=void 0,I=void 0,F=void 0,L=void 0,R=n*Mv(l),P=n*_c(l),k=a*Mv(f),H=a*_c(f),G=v>wi;if(G){var j=t.cornerRadius;j&&(e=qlt(j),m=e[0],h=e[1],_=e[2],g=e[3]);var rt=dB(n-a)/2;if(y=Du(rt,_),D=Du(rt,g),b=Du(rt,m),C=Du(rt,h),S=x=i_(y,D),E=w=i_(b,C),(x>wi||w>wi)&&(M=n*Mv(f),I=n*_c(f),F=a*Mv(l),L=a*_c(l),v<mB)){var xt=$lt(R,P,F,L,M,I,k,H);if(xt){var J=R-xt[0],ot=P-xt[1],At=M-xt[0],Mt=I-xt[1],ut=1/_c(Vlt((J*At+ot*Mt)/(u_(J*J+ot*ot)*u_(At*At+Mt*Mt)))/2),$=u_(xt[0]*xt[0]+xt[1]*xt[1]);S=Du(x,(n-$)/(ut+1)),E=Du(w,(a-$)/(ut-1))}}}if(!G)r.moveTo(s+R,c+P);else if(S>wi){var Ct=Du(_,S),ct=Du(g,S),ft=gb(F,L,R,P,n,Ct,p),It=gb(M,I,k,H,n,ct,p);r.moveTo(s+ft.cx+ft.x0,c+ft.cy+ft.y0),S<x&&Ct===ct?r.arc(s+ft.cx,c+ft.cy,S,ca(ft.y0,ft.x0),ca(It.y0,It.x0),!p):(Ct>0&&r.arc(s+ft.cx,c+ft.cy,Ct,ca(ft.y0,ft.x0),ca(ft.y1,ft.x1),!p),r.arc(s,c,n,ca(ft.cy+ft.y1,ft.cx+ft.x1),ca(It.cy+It.y1,It.cx+It.x1),!p),ct>0&&r.arc(s+It.cx,c+It.cy,ct,ca(It.y1,It.x1),ca(It.y0,It.x0),!p))}else r.moveTo(s+R,c+P),r.arc(s,c,n,l,f,!p);if(!(a>wi)||!G)r.lineTo(s+k,c+H);else if(E>wi){var Ct=Du(m,E),ct=Du(h,E),ft=gb(k,H,M,I,a,-ct,p),It=gb(R,P,F,L,a,-Ct,p);r.lineTo(s+ft.cx+ft.x0,c+ft.cy+ft.y0),E<w&&Ct===ct?r.arc(s+ft.cx,c+ft.cy,E,ca(ft.y0,ft.x0),ca(It.y0,It.x0),!p):(ct>0&&r.arc(s+ft.cx,c+ft.cy,ct,ca(ft.y0,ft.x0),ca(ft.y1,ft.x1),!p),r.arc(s,c,a,ca(ft.cy+ft.y1,ft.cx+ft.x1),ca(It.cy+It.y1,It.cx+It.x1),p),Ct>0&&r.arc(s+It.cx,c+It.cy,Ct,ca(It.y1,It.x1),ca(It.y0,It.x0),!p))}else r.lineTo(s+k,c+H),r.arc(s,c,a,f,l,p)}r.closePath()}}}var jlt=(function(){function r(){this.cx=0,this.cy=0,this.r0=0,this.r=0,this.startAngle=0,this.endAngle=Math.PI*2,this.clockwise=!0,this.cornerRadius=0}return r})();var _B=(function(r){A(t,r);function t(e){return r.call(this,e)||this}return t.prototype.getDefaultShape=function(){return new jlt},t.prototype.buildPath=function(e,n){hB(e,n)},t.prototype.isZeroArea=function(){return this.shape.startAngle===this.shape.endAngle||this.shape.r===this.shape.r0},t})(bt);_B.prototype.type="sector";var Vr=_B;var Ylt=(function(){function r(){this.cx=0,this.cy=0,this.r=0,this.r0=0}return r})();var gB=(function(r){A(t,r);function t(e){return r.call(this,e)||this}return t.prototype.getDefaultShape=function(){return new Ylt},t.prototype.buildPath=function(e,n){var a=n.cx,o=n.cy,i=Math.PI*2;e.moveTo(a+n.r,o),e.arc(a,o,n.r,0,i,!1),e.moveTo(a+n.r0,o),e.arc(a,o,n.r0,0,i,!0)},t})(bt);gB.prototype.type="ring";var gc=gB;function wM(r,t,e,n){var a=[],o=[],i=[],u=[],l,f,s,c;if(n){s=[1/0,1/0],c=[-1/0,-1/0];for(var p=0,v=r.length;p<v;p++)go(s,s,r[p]),yo(c,c,r[p]);go(s,s,n[0]),yo(c,c,n[1])}for(var p=0,v=r.length;p<v;p++){var d=r[p];if(e)l=r[p?p-1:v-1],f=r[(p+1)%v];else if(p===0||p===v-1){a.push(Va(r[p]));continue}else l=r[p-1],f=r[p+1];Di(o,f,l),av(o,o,t);var m=v0(d,l),h=v0(d,f),_=m+h;_!==0&&(m/=_,h/=_),av(i,o,-m),av(u,o,h);var g=rE([],d,i),y=rE([],d,u);n&&(yo(g,g,s),go(g,g,c),yo(y,y,s),go(y,y,c)),a.push(g),a.push(y)}return e&&a.push(a.shift()),a}function yb(r,t,e){var n=t.smooth,a=t.points;if(a&&a.length>=2){if(n){var o=wM(a,n,e,t.smoothConstraint);r.moveTo(a[0][0],a[0][1]);for(var i=a.length,u=0;u<(e?i:i-1);u++){var l=o[u*2],f=o[u*2+1],s=a[(u+1)%i];r.bezierCurveTo(l[0],l[1],f[0],f[1],s[0],s[1])}}else{r.moveTo(a[0][0],a[0][1]);for(var u=1,c=a.length;u<c;u++)r.lineTo(a[u][0],a[u][1])}e&&r.closePath()}}var Qlt=(function(){function r(){this.points=null,this.smooth=0,this.smoothConstraint=null}return r})();var DB=(function(r){A(t,r);function t(e){return r.call(this,e)||this}return t.prototype.getDefaultShape=function(){return new Qlt},t.prototype.buildPath=function(e,n){yb(e,n,!0)},t})(bt);DB.prototype.type="polygon";var xr=DB;var Zlt=(function(){function r(){this.points=null,this.percent=1,this.smooth=0,this.smoothConstraint=null}return r})();var bB=(function(r){A(t,r);function t(e){return r.call(this,e)||this}return t.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},t.prototype.getDefaultShape=function(){return new Zlt},t.prototype.buildPath=function(e,n){yb(e,n,!1)},t})(bt);bB.prototype.type="polyline";var yr=bB;var Xlt={},Klt=(function(){function r(){this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.percent=1}return r})();var CB=(function(r){A(t,r);function t(e){return r.call(this,e)||this}return t.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},t.prototype.getDefaultShape=function(){return new Klt},t.prototype.buildPath=function(e,n){var a,o,i,u;if(this.subPixelOptimize){var l=ib(Xlt,n,this.style);a=l.x1,o=l.y1,i=l.x2,u=l.y2}else a=n.x1,o=n.y1,i=n.x2,u=n.y2;var f=n.percent;f!==0&&(e.moveTo(a,o),f<1&&(i=a*(1-f)+i*f,u=o*(1-f)+u*f),e.lineTo(i,u))},t.prototype.pointAt=function(e){var n=this.shape;return[n.x1*(1-e)+n.x2*e,n.y1*(1-e)+n.y2*e]},t})(bt);CB.prototype.type="line";var mr=CB;var ro=[],tft=(function(){function r(){this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.cpx1=0,this.cpy1=0,this.percent=1}return r})();function TB(r,t,e){var n=r.cpx2,a=r.cpy2;return n!=null||a!=null?[(e?dE:kr)(r.x1,r.cpx1,r.cpx2,r.x2,t),(e?dE:kr)(r.y1,r.cpy1,r.cpy2,r.y2,t)]:[(e?Rh:Gr)(r.x1,r.cpx1,r.x2,t),(e?Rh:Gr)(r.y1,r.cpy1,r.y2,t)]}var xB=(function(r){A(t,r);function t(e){return r.call(this,e)||this}return t.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},t.prototype.getDefaultShape=function(){return new tft},t.prototype.buildPath=function(e,n){var a=n.x1,o=n.y1,i=n.x2,u=n.y2,l=n.cpx1,f=n.cpy1,s=n.cpx2,c=n.cpy2,p=n.percent;p!==0&&(e.moveTo(a,o),s==null||c==null?(p<1&&(_f(a,l,i,p,ro),l=ro[1],i=ro[2],_f(o,f,u,p,ro),f=ro[1],u=ro[2]),e.quadraticCurveTo(l,f,i,u)):(p<1&&(Vo(a,l,s,i,p,ro),l=ro[1],s=ro[2],i=ro[3],Vo(o,f,c,u,p,ro),f=ro[1],c=ro[2],u=ro[3]),e.bezierCurveTo(l,f,s,c,i,u)))},t.prototype.pointAt=function(e){return TB(this.shape,e,!1)},t.prototype.tangentAt=function(e){var n=TB(this.shape,e,!0);return zo(n,n)},t})(bt);xB.prototype.type="bezier-curve";var yc=xB;var eft=(function(){function r(){this.cx=0,this.cy=0,this.r=0,this.startAngle=0,this.endAngle=Math.PI*2,this.clockwise=!0}return r})();var wB=(function(r){A(t,r);function t(e){return r.call(this,e)||this}return t.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},t.prototype.getDefaultShape=function(){return new eft},t.prototype.buildPath=function(e,n){var a=n.cx,o=n.cy,i=Math.max(n.r,0),u=n.startAngle,l=n.endAngle,f=n.clockwise,s=Math.cos(u),c=Math.sin(u);e.moveTo(s*i+a,c*i+o),e.arc(a,o,i,u,l,!f)},t})(bt);wB.prototype.type="arc";var l_=wB;var rft=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type="compound",e}return t.prototype._updatePathDirty=function(){for(var e=this.shape.paths,n=this.shapeChanged(),a=0;a<e.length;a++)n=n||e[a].shapeChanged();n&&this.dirtyShape()},t.prototype.beforeBrush=function(){this._updatePathDirty();for(var e=this.shape.paths||[],n=this.getGlobalScale(),a=0;a<e.length;a++)e[a].path||e[a].createPathProxy(),e[a].path.setScale(n[0],n[1],e[a].segmentIgnoreThreshold)},t.prototype.buildPath=function(e,n){for(var a=n.paths||[],o=0;o<a.length;o++)a[o].buildPath(e,a[o].shape,!0)},t.prototype.afterBrush=function(){for(var e=this.shape.paths||[],n=0;n<e.length;n++)e[n].pathUpdated()},t.prototype.getBoundingRect=function(){return this._updatePathDirty.call(this),bt.prototype.getBoundingRect.call(this)},t})(bt),Av=rft;var nft=(function(){function r(t){this.colorStops=t||[]}return r.prototype.addColorStop=function(t,e){this.colorStops.push({offset:t,color:e})},r})(),Db=nft;var aft=(function(r){A(t,r);function t(e,n,a,o,i,u){var l=r.call(this,i)||this;return l.x=e??0,l.y=n??0,l.x2=a??1,l.y2=o??0,l.type="linear",l.global=u||!1,l}return t})(Db),bu=aft;var oft=(function(r){A(t,r);function t(e,n,a,o,i){var u=r.call(this,o)||this;return u.x=e??.5,u.y=n??.5,u.r=a??.5,u.type="radial",u.global=i||!1,u}return t})(Db),bb=oft;var Dc=[0,0],bc=[0,0],Cb=new Qt,Tb=new Qt,ift=(function(){function r(t,e){this._corners=[],this._axes=[],this._origin=[0,0];for(var n=0;n<4;n++)this._corners[n]=new Qt;for(var n=0;n<2;n++)this._axes[n]=new Qt;t&&this.fromBoundingRect(t,e)}return r.prototype.fromBoundingRect=function(t,e){var n=this._corners,a=this._axes,o=t.x,i=t.y,u=o+t.width,l=i+t.height;if(n[0].set(o,i),n[1].set(u,i),n[2].set(u,l),n[3].set(o,l),e)for(var f=0;f<4;f++)n[f].transform(e);Qt.sub(a[0],n[1],n[0]),Qt.sub(a[1],n[3],n[0]),a[0].normalize(),a[1].normalize();for(var f=0;f<2;f++)this._origin[f]=a[f].dot(n[0])},r.prototype.intersect=function(t,e){var n=!0,a=!e;return Cb.set(1/0,1/0),Tb.set(0,0),!this._intersectCheckOneSide(this,t,Cb,Tb,a,1)&&(n=!1,a)||!this._intersectCheckOneSide(t,this,Cb,Tb,a,-1)&&(n=!1,a)||a||Qt.copy(e,n?Cb:Tb),n},r.prototype._intersectCheckOneSide=function(t,e,n,a,o,i){for(var u=!0,l=0;l<2;l++){var f=this._axes[l];if(this._getProjMinMaxOnAxis(l,t._corners,Dc),this._getProjMinMaxOnAxis(l,e._corners,bc),Dc[1]<bc[0]||Dc[0]>bc[1]){if(u=!1,o)return u;var s=Math.abs(bc[0]-Dc[1]),c=Math.abs(Dc[0]-bc[1]);Math.min(s,c)>a.len()&&(s<c?Qt.scale(a,f,-s*i):Qt.scale(a,f,c*i))}else if(n){var s=Math.abs(bc[0]-Dc[1]),c=Math.abs(Dc[0]-bc[1]);Math.min(s,c)<n.len()&&(s<c?Qt.scale(n,f,s*i):Qt.scale(n,f,-c*i))}}return u},r.prototype._getProjMinMaxOnAxis=function(t,e,n){for(var a=this._axes[t],o=this._origin,i=e[0].dot(a)+o[t],u=i,l=i,f=1;f<e.length;f++){var s=e[f].dot(a)+o[t];u=Math.min(s,u),l=Math.max(s,l)}n[0]=u,n[1]=l},r})(),Iv=ift;var uft=[],lft=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.notClear=!0,e.incremental=!0,e._displayables=[],e._temporaryDisplayables=[],e._cursor=0,e}return t.prototype.traverse=function(e,n){e.call(n,this)},t.prototype.useStyle=function(){this.style={}},t.prototype.getCursor=function(){return this._cursor},t.prototype.innerAfterBrush=function(){this._cursor=this._displayables.length},t.prototype.clearDisplaybles=function(){this._displayables=[],this._temporaryDisplayables=[],this._cursor=0,this.markRedraw(),this.notClear=!1},t.prototype.clearTemporalDisplayables=function(){this._temporaryDisplayables=[]},t.prototype.addDisplayable=function(e,n){n?this._temporaryDisplayables.push(e):this._displayables.push(e),this.markRedraw()},t.prototype.addDisplayables=function(e,n){n=n||!1;for(var a=0;a<e.length;a++)this.addDisplayable(e[a],n)},t.prototype.getDisplayables=function(){return this._displayables},t.prototype.getTemporalDisplayables=function(){return this._temporaryDisplayables},t.prototype.eachPendingDisplayable=function(e){for(var n=this._cursor;n<this._displayables.length;n++)e&&e(this._displayables[n]);for(var n=0;n<this._temporaryDisplayables.length;n++)e&&e(this._temporaryDisplayables[n])},t.prototype.update=function(){this.updateTransform();for(var e=this._cursor;e<this._displayables.length;e++){var n=this._displayables[e];n.parent=this,n.update(),n.parent=null}for(var e=0;e<this._temporaryDisplayables.length;e++){var n=this._temporaryDisplayables[e];n.parent=this,n.update(),n.parent=null}},t.prototype.getBoundingRect=function(){if(!this._rect){for(var e=new yt(1/0,1/0,-1/0,-1/0),n=0;n<this._displayables.length;n++){var a=this._displayables[n],o=a.getBoundingRect().clone();a.needLocalTransform()&&o.applyTransform(a.getLocalTransform(uft)),e.union(o)}this._rect=e}return this._rect},t.prototype.contain=function(e,n){var a=this.transformCoordToLocal(e,n),o=this.getBoundingRect();if(o.contain(a[0],a[1]))for(var i=0;i<this._displayables.length;i++){var u=this._displayables[i];if(u.contain(e,n))return!0}return!1},t})(Br),SB=lft;var MB=St();function Cu(r,t,e,n,a){var o;if(t&&t.ecModel){var i=t.ecModel.getUpdatePayload();o=i&&i.animation}var u=t&&t.isAnimationEnabled(),l=r==="update";if(u){var f=void 0,s=void 0,c=void 0;n?(f=Tt(n.duration,200),s=Tt(n.easing,"cubicOut"),c=0):(f=t.getShallow(l?"animationDurationUpdate":"animationDuration"),s=t.getShallow(l?"animationEasingUpdate":"animationEasing"),c=t.getShallow(l?"animationDelayUpdate":"animationDelay")),o&&(o.duration!=null&&(f=o.duration),o.easing!=null&&(s=o.easing),o.delay!=null&&(c=o.delay)),X(c)&&(c=c(e,a)),X(f)&&(f=f(e));var p={duration:f||0,delay:c,easing:s};return p}else return null}function SM(r,t,e,n,a,o,i){var u=!1,l;X(a)?(i=o,o=a,a=null):nt(a)&&(o=a.cb,i=a.during,u=a.isFrom,l=a.removeOpt,a=a.dataIndex);var f=r==="leave";f||t.stopAnimation("leave");var s=Cu(r,n,a,f?l||{}:null,n&&n.getAnimationDelayParams?n.getAnimationDelayParams(t,a):null);if(s&&s.duration>0){var c=s.duration,p=s.delay,v=s.easing,d={duration:c,delay:p||0,easing:v,done:o,force:!!o||!!i,setToFinal:!f,scope:r,during:i};u?t.animateFrom(e,d):t.animateTo(e,d)}else t.stopAnimation(),!u&&t.attr(e),i&&i(1),o&&o()}function $t(r,t,e,n,a,o){SM("update",r,t,e,n,a,o)}function Ae(r,t,e,n,a,o){SM("enter",r,t,e,n,a,o)}function dl(r){if(!r.__zr)return!0;for(var t=0;t<r.animators.length;t++){var e=r.animators[t];if(e.scope==="leave")return!0}return!1}function Zo(r,t,e,n,a,o){dl(r)||SM("leave",r,t,e,n,a,o)}function EB(r,t,e,n){r.removeTextContent(),r.removeTextGuideLine(),Zo(r,{style:{opacity:0}},t,e,n)}function ml(r,t,e){function n(){r.parent&&r.parent.remove(r)}r.isGroup?r.traverse(function(a){a.isGroup||EB(a,t,e,n)}):EB(r,t,e,n)}function rn(r){MB(r).oldStyle=r.style}function AB(r){return MB(r).oldStyle}var xb=Math.max,wb=Math.min,MM={};function fft(r){return bt.extend(r)}var sft=sB;function cft(r,t){return sft(r,t)}function Si(r,t){MM[r]=t}function f_(r){if(MM.hasOwnProperty(r))return MM[r]}function Fv(r,t,e,n){var a=_b(r,t);return e&&(n==="center"&&(e=LB(e,a.getBoundingRect())),RB(a,e)),a}function AM(r,t,e){var n=new er({style:{image:r,x:t.x,y:t.y,width:t.width,height:t.height},onload:function(a){if(e==="center"){var o={width:a.width,height:a.height};n.setStyle(LB(t,o))}}});return n}function LB(r,t){var e=t.width/t.height,n=r.height*e,a;n<=r.width?a=r.height:(n=r.width,a=n/e);var o=r.x+r.width/2,i=r.y+r.height/2;return{x:o-n/2,y:i-a/2,width:n,height:a}}var pa=cB;function RB(r,t){if(r.applyTransform){var e=r.getBoundingRect(),n=e.calculateTransform(t);r.applyTransform(n)}}function hl(r,t){return ib(r,r,{lineWidth:t}),r}function pft(r){return ub(r.shape,r.shape,r.style),r}var s_=Sf;function Ei(r,t){for(var e=vf([]);r&&r!==t;)Ja(e,r.getLocalTransform(),e),r=r.parent;return e}function jn(r,t,e){return t&&!Ur(t)&&(t=Ya.getLocalTransform(t)),e&&(t=Go([],t)),Hr([],r,t)}function Cc(r,t,e){var n=t[4]===0||t[5]===0||t[0]===0?1:Math.abs(2*t[4]/t[0]),a=t[4]===0||t[5]===0||t[2]===0?1:Math.abs(2*t[4]/t[2]),o=[r==="left"?-n:r==="right"?n:0,r==="top"?-a:r==="bottom"?a:0];return o=jn(o,t,e),Math.abs(o[0])>Math.abs(o[1])?o[0]>0?"right":"left":o[1]>0?"bottom":"top"}function IB(r){return!r.isGroup}function vft(r){return r.shape!=null}function _l(r,t,e){if(!r||!t)return;function n(i){var u={};return i.traverse(function(l){IB(l)&&l.anid&&(u[l.anid]=l)}),u}function a(i){var u={x:i.x,y:i.y,rotation:i.rotation};return vft(i)&&(u.shape=N({},i.shape)),u}var o=n(r);t.traverse(function(i){if(IB(i)&&i.anid){var u=o[i.anid];if(u){var l=a(i);i.attr(a(u)),$t(i,l,e,vt(i).dataIndex)}}})}function IM(r,t){return U(r,function(e){var n=e[0];n=xb(n,t.x),n=wb(n,t.x+t.width);var a=e[1];return a=xb(a,t.y),a=wb(a,t.y+t.height),[n,a]})}function dft(r,t){var e=xb(r.x,t.x),n=wb(r.x+r.width,t.x+t.width),a=xb(r.y,t.y),o=wb(r.y+r.height,t.y+t.height);if(n>=e&&o>=a)return{x:e,y:a,width:n-e,height:o-a}}function gl(r,t,e){var n=N({rectHover:!0},t),a=n.style={strokeNoScale:!0};if(e=e||{x:-1,y:-1,width:2,height:2},r)return r.indexOf("image://")===0?(a.image=r.slice(8),et(a,e),new er(n)):Fv(r.replace("path://",""),n,e,"center")}function Lv(r,t,e,n,a){for(var o=0,i=a[a.length-1];o<a.length;o++){var u=a[o];if(PB(r,t,e,n,u[0],u[1],i[0],i[1]))return!0;i=u}}function PB(r,t,e,n,a,o,i,u){var l=e-r,f=n-t,s=i-a,c=u-o,p=EM(s,c,l,f);if(mft(p))return!1;var v=r-a,d=t-o,m=EM(v,d,l,f)/p;if(m<0||m>1)return!1;var h=EM(v,d,s,c)/p;return!(h<0||h>1)}function EM(r,t,e,n){return r*n-e*t}function mft(r){return r<=1e-6&&r>=-1e-6}function Mi(r){var t=r.itemTooltipOption,e=r.componentModel,n=r.itemName,a=V(t)?{formatter:t}:t,o=e.mainType,i=e.componentIndex,u={componentType:o,name:n,$vars:["name"]};u[o+"Index"]=i;var l=r.formatterParamsExtra;l&&T(Ft(l),function(s){st(u,s)||(u[s]=l[s],u.$vars.push(s))});var f=vt(r.el);f.componentMainType=o,f.componentIndex=i,f.tooltipConfig={name:n,option:et({content:n,formatterParams:u},a)}}function FB(r,t){var e;r.isGroup&&(e=t(r)),e||r.traverse(t)}function Sa(r,t){if(r)if(O(r))for(var e=0;e<r.length;e++)FB(r[e],t);else FB(r,t)}Si("circle",wa);Si("ellipse",o_);Si("sector",Vr);Si("ring",gc);Si("polygon",xr);Si("polyline",yr);Si("rect",Rt);Si("line",mr);Si("bezierCurve",yc);Si("arc",l_);var Sb={};function kB(r,t){for(var e=0;e<sn.length;e++){var n=sn[e],a=t[n],o=r.ensureState(n);o.style=o.style||{},o.style.text=a}var i=r.currentStates.slice();r.clearStates(!0),r.setStyle({text:t.normal}),r.useStates(i,!0)}function FM(r,t,e){var n=r.labelFetcher,a=r.labelDataIndex,o=r.labelDimIndex,i=t.normal,u;n&&(u=n.getFormattedLabel(a,"normal",null,o,i&&i.get("formatter"),e!=null?{interpolatedValue:e}:null)),u==null&&(u=X(r.defaultText)?r.defaultText(a,r,e):r.defaultText);for(var l={normal:u},f=0;f<sn.length;f++){var s=sn[f],c=t[s];l[s]=Tt(n?n.getFormattedLabel(a,s,null,o,c&&c.get("formatter")):null,u)}return l}function Ze(r,t,e,n){e=e||Sb;for(var a=r instanceof Wt,o=!1,i=0;i<Ef.length;i++){var u=t[Ef[i]];if(u&&u.getShallow("show")){o=!0;break}}var l=a?r:r.getTextContent();if(o){a||(l||(l=new Wt,r.setTextContent(l)),r.stateProxy&&(l.stateProxy=r.stateProxy));var f=FM(e,t),s=t.normal,c=!!s.getShallow("show"),p=Re(s,n&&n.normal,e,!1,!a);p.text=f.normal,a||r.setTextConfig(c_(s,e,!1));for(var i=0;i<sn.length;i++){var v=sn[i],u=t[v];if(u){var d=l.ensureState(v),m=!!Tt(u.getShallow("show"),c);if(m!==c&&(d.ignore=!m),d.style=Re(u,n&&n[v],e,!0,!a),d.style.text=f[v],!a){var h=r.ensureState(v);h.textConfig=c_(u,e,!0)}}}l.silent=!!s.getShallow("silent"),l.style.x!=null&&(p.x=l.style.x),l.style.y!=null&&(p.y=l.style.y),l.ignore=!c,l.useStyle(p),l.dirty(),e.enableTextSetter&&(yl(l).setLabelText=function(_){var g=FM(e,t,_);kB(l,g)})}else l&&(l.ignore=!0);r.dirty()}function $e(r,t){t=t||"label";for(var e={normal:r.getModel(t)},n=0;n<sn.length;n++){var a=sn[n];e[a]=r.getModel([a,t])}return e}function Re(r,t,e,n,a){var o={};return hft(o,r,e,n,a),t&&N(o,t),o}function c_(r,t,e){t=t||{};var n={},a,o=r.getShallow("rotate"),i=Tt(r.getShallow("distance"),e?null:5),u=r.getShallow("offset");return a=r.getShallow("position")||(e?null:"inside"),a==="outside"&&(a=t.defaultOutsidePosition||"top"),a!=null&&(n.position=a),u!=null&&(n.offset=u),o!=null&&(o*=Math.PI/180,n.rotation=o),i!=null&&(n.distance=i),n.outsideFill=r.get("color")==="inherit"?t.inheritColor||null:"auto",n}function hft(r,t,e,n,a){e=e||Sb;var o=t.ecModel,i=o&&o.option.textStyle,u=_ft(t),l;if(u){l={};for(var f in u)if(u.hasOwnProperty(f)){var s=t.getModel(["rich",f]);HB(l[f]={},s,i,e,n,a,!1,!0)}}l&&(r.rich=l);var c=t.get("overflow");c&&(r.overflow=c);var p=t.get("minMargin");p!=null&&(r.margin=p),HB(r,t,i,e,n,a,!0,!1)}function _ft(r){for(var t;r&&r!==r.ecModel;){var e=(r.option||Sb).rich;if(e){t=t||{};for(var n=Ft(e),a=0;a<n.length;a++){var o=n[a];t[o]=1}}r=r.parentModel}return t}var NB=["fontStyle","fontWeight","fontSize","fontFamily","textShadowColor","textShadowBlur","textShadowOffsetX","textShadowOffsetY"],OB=["align","lineHeight","width","height","tag","verticalAlign","ellipsis"],UB=["padding","borderWidth","borderRadius","borderDashOffset","backgroundColor","borderColor","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY"];function HB(r,t,e,n,a,o,i,u){e=!a&&e||Sb;var l=n&&n.inheritColor,f=t.getShallow("color"),s=t.getShallow("textBorderColor"),c=Tt(t.getShallow("opacity"),e.opacity);(f==="inherit"||f==="auto")&&(l?f=l:f=null),(s==="inherit"||s==="auto")&&(l?s=l:s=null),o||(f=f||e.color,s=s||e.textBorderColor),f!=null&&(r.fill=f),s!=null&&(r.stroke=s);var p=Tt(t.getShallow("textBorderWidth"),e.textBorderWidth);p!=null&&(r.lineWidth=p);var v=Tt(t.getShallow("textBorderType"),e.textBorderType);v!=null&&(r.lineDash=v);var d=Tt(t.getShallow("textBorderDashOffset"),e.textBorderDashOffset);d!=null&&(r.lineDashOffset=d),!a&&c==null&&!u&&(c=n&&n.defaultOpacity),c!=null&&(r.opacity=c),!a&&!o&&r.fill==null&&n.inheritColor&&(r.fill=n.inheritColor);for(var m=0;m<NB.length;m++){var h=NB[m],_=Tt(t.getShallow(h),e[h]);_!=null&&(r[h]=_)}for(var m=0;m<OB.length;m++){var h=OB[m],_=t.getShallow(h);_!=null&&(r[h]=_)}if(r.verticalAlign==null){var g=t.getShallow("baseline");g!=null&&(r.verticalAlign=g)}if(!i||!n.disableBox){for(var m=0;m<UB.length;m++){var h=UB[m],_=t.getShallow(h);_!=null&&(r[h]=_)}var y=t.getShallow("borderType");y!=null&&(r.borderDash=y),(r.backgroundColor==="auto"||r.backgroundColor==="inherit")&&l&&(r.backgroundColor=l),(r.borderColor==="auto"||r.borderColor==="inherit")&&l&&(r.borderColor=l)}}function Rv(r,t){var e=t&&t.getModel("textStyle");return yn([r.fontStyle||e&&e.getShallow("fontStyle")||"",r.fontWeight||e&&e.getShallow("fontWeight")||"",(r.fontSize||e&&e.getShallow("fontSize")||12)+"px",r.fontFamily||e&&e.getShallow("fontFamily")||"sans-serif"].join(" "))}var yl=St();function Eb(r,t,e,n){if(r){var a=yl(r);a.prevValue=a.value,a.value=e;var o=t.normal;a.valueAnimation=o.get("valueAnimation"),a.valueAnimation&&(a.precision=o.get("precision"),a.defaultInterpolatedText=n,a.statesModels=t)}}function Mb(r,t,e,n,a){var o=yl(r);if(!o.valueAnimation||o.prevValue===o.value)return;var i=o.defaultInterpolatedText,u=Tt(o.interpolatedValue,o.prevValue),l=o.value;function f(s){var c=tb(e,o.precision,u,l,s);o.interpolatedValue=s===1?null:c;var p=FM({labelDataIndex:t,labelFetcher:a,defaultText:i?i(c):c+""},o.statesModels,c);kB(r,p)}r.percent=0,(o.prevValue==null?Ae:$t)(r,{percent:1},n,t,null,f)}var yft=["textStyle","color"],LM=["fontStyle","fontWeight","fontSize","fontFamily","padding","lineHeight","rich","width","height","overflow"],RM=new Wt,Dft=(function(){function r(){}return r.prototype.getTextColor=function(t){var e=this.ecModel;return this.getShallow("color")||(!t&&e?e.get(yft):null)},r.prototype.getFont=function(){return Rv({fontStyle:this.getShallow("fontStyle"),fontWeight:this.getShallow("fontWeight"),fontSize:this.getShallow("fontSize"),fontFamily:this.getShallow("fontFamily")},this.ecModel)},r.prototype.getTextRect=function(t){for(var e={text:t,verticalAlign:this.getShallow("verticalAlign")||this.getShallow("baseline")},n=0;n<LM.length;n++)e[LM[n]]=this.getShallow(LM[n]);return RM.useStyle(e),RM.update(),RM.getBoundingRect()},r})(),zB=Dft;var PM=[["lineWidth","width"],["stroke","color"],["opacity"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["shadowColor"],["lineDash","type"],["lineDashOffset","dashOffset"],["lineCap","cap"],["lineJoin","join"],["miterLimit"]],bft=Ka(PM),WB=(function(){function r(){}return r.prototype.getLineStyle=function(t){return bft(this,t)},r})();var NM=[["fill","color"],["stroke","borderColor"],["lineWidth","borderWidth"],["opacity"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["shadowColor"],["lineDash","borderType"],["lineDashOffset","borderDashOffset"],["lineCap","borderCap"],["lineJoin","borderJoin"],["miterLimit","borderMiterLimit"]],Cft=Ka(NM),GB=(function(){function r(){}return r.prototype.getItemStyle=function(t,e){return Cft(this,t,e)},r})();var Tc=(function(){function r(t,e,n){this.parentModel=e,this.ecModel=n,this.option=t}return r.prototype.init=function(t,e,n){for(var a=[],o=3;o<arguments.length;o++)a[o-3]=arguments[o]},r.prototype.mergeOption=function(t,e){Et(this.option,t,!0)},r.prototype.get=function(t,e){return t==null?this.option:this._doGet(this.parsePath(t),!e&&this.parentModel)},r.prototype.getShallow=function(t,e){var n=this.option,a=n==null?n:n[t];if(a==null&&!e){var o=this.parentModel;o&&(a=o.getShallow(t))}return a},r.prototype.getModel=function(t,e){var n=t!=null,a=n?this.parsePath(t):null,o=n?this._doGet(a):this.option;return e=e||this.parentModel&&this.parentModel.getModel(this.resolveParentPath(a)),new r(o,e,this.ecModel)},r.prototype.isEmpty=function(){return this.option==null},r.prototype.restoreData=function(){},r.prototype.clone=function(){var t=this.constructor;return new t(lt(this.option))},r.prototype.parsePath=function(t){return typeof t=="string"?t.split("."):t},r.prototype.resolveParentPath=function(t){return t},r.prototype.isAnimationEnabled=function(){if(!Kt.node&&this.option){if(this.option.animation!=null)return!!this.option.animation;if(this.parentModel)return this.parentModel.isAnimationEnabled()}},r.prototype._doGet=function(t,e){var n=this.option;if(!t)return n;for(var a=0;a<t.length&&!(t[a]&&(n=n&&typeof n=="object"?n[t[a]]:null,n==null));a++);return n==null&&e&&(n=e._doGet(this.resolveParentPath(t),e.parentModel)),n},r})();yv(Tc);KW(Tc);Ve(Tc,WB);Ve(Tc,GB);Ve(Tc,tG);Ve(Tc,zB);var Te=Tc;var Tft=Math.round(Math.random()*10);function Xo(r){return[r||"",Tft++].join("_")}function BB(r){var t={};r.registerSubTypeDefaulter=function(e,n){var a=Xa(e);t[a.main]=n},r.determineSubType=function(e,n){var a=n.type;if(!a){var o=Xa(e).main;r.hasSubTypes(e)&&t[o]&&(a=t[o](n))}return a}}function VB(r,t){r.topologicalTravel=function(o,i,u,l){if(!o.length)return;var f=e(i),s=f.graph,c=f.noEntryList,p={};for(T(o,function(g){p[g]=!0});c.length;){var v=c.pop(),d=s[v],m=!!p[v];m&&(u.call(l,v,d.originalDeps.slice()),delete p[v]),T(d.successor,m?_:h)}T(p,function(){var g="";throw new Error(g)});function h(g){s[g].entryCount--,s[g].entryCount===0&&c.push(g)}function _(g){p[g]=!0,h(g)}};function e(o){var i={},u=[];return T(o,function(l){var f=n(i,l),s=f.originalDeps=t(l),c=a(s,o);f.entryCount=c.length,f.entryCount===0&&u.push(l),T(c,function(p){wt(f.predecessor,p)<0&&f.predecessor.push(p);var v=n(i,p);wt(v.successor,p)<0&&v.successor.push(l)})}),{graph:i,noEntryList:u}}function n(o,i){return o[i]||(o[i]={predecessor:[],successor:[]}),o[i]}function a(o,i){var u=[];return T(o,function(l){wt(i,l)>=0&&u.push(l)}),u}}function va(r,t){return Et(Et({},r,!0),t,!0)}var $B={time:{month:["January","February","March","April","May","June","July","August","September","October","November","December"],monthAbbr:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayOfWeek:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayOfWeekAbbr:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]},legend:{selector:{all:"All",inverse:"Inv"}},toolbox:{brush:{title:{rect:"Box Select",polygon:"Lasso Select",lineX:"Horizontally Select",lineY:"Vertically Select",keep:"Keep Selections",clear:"Clear Selections"}},dataView:{title:"Data View",lang:["Data View","Close","Refresh"]},dataZoom:{title:{zoom:"Zoom",back:"Zoom Reset"}},magicType:{title:{line:"Switch to Line Chart",bar:"Switch to Bar Chart",stack:"Stack",tiled:"Tile"}},restore:{title:"Restore"},saveAsImage:{title:"Save as Image",lang:["Right Click to Save Image"]}},series:{typeNames:{pie:"Pie chart",bar:"Bar chart",line:"Line chart",scatter:"Scatter plot",effectScatter:"Ripple scatter plot",radar:"Radar chart",tree:"Tree",treemap:"Treemap",boxplot:"Boxplot",candlestick:"Candlestick",k:"K line chart",heatmap:"Heat map",map:"Map",parallel:"Parallel coordinate map",lines:"Line graph",graph:"Relationship graph",sankey:"Sankey diagram",funnel:"Funnel chart",gauge:"Gauge",pictorialBar:"Pictorial bar",themeRiver:"Theme River Map",sunburst:"Sunburst",custom:"Custom chart",chart:"Chart"}},aria:{general:{withTitle:'This is a chart about "{title}"',withoutTitle:"This is a chart"},series:{single:{prefix:"",withName:" with type {seriesType} named {seriesName}.",withoutName:" with type {seriesType}."},multiple:{prefix:". It consists of {seriesCount} series count.",withName:" The {seriesId} series is a {seriesType} representing {seriesName}.",withoutName:" The {seriesId} series is a {seriesType}.",separator:{middle:"",end:""}}},data:{allData:"The data is as follows: ",partialData:"The first {displayCnt} items are: ",withName:"the data for {name} is {value}",withoutName:"{value}",separator:{middle:", ",end:". "}}}};var qB={time:{month:["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"],monthAbbr:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],dayOfWeek:["\u661F\u671F\u65E5","\u661F\u671F\u4E00","\u661F\u671F\u4E8C","\u661F\u671F\u4E09","\u661F\u671F\u56DB","\u661F\u671F\u4E94","\u661F\u671F\u516D"],dayOfWeekAbbr:["\u65E5","\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D"]},legend:{selector:{all:"\u5168\u9009",inverse:"\u53CD\u9009"}},toolbox:{brush:{title:{rect:"\u77E9\u5F62\u9009\u62E9",polygon:"\u5708\u9009",lineX:"\u6A2A\u5411\u9009\u62E9",lineY:"\u7EB5\u5411\u9009\u62E9",keep:"\u4FDD\u6301\u9009\u62E9",clear:"\u6E05\u9664\u9009\u62E9"}},dataView:{title:"\u6570\u636E\u89C6\u56FE",lang:["\u6570\u636E\u89C6\u56FE","\u5173\u95ED","\u5237\u65B0"]},dataZoom:{title:{zoom:"\u533A\u57DF\u7F29\u653E",back:"\u533A\u57DF\u7F29\u653E\u8FD8\u539F"}},magicType:{title:{line:"\u5207\u6362\u4E3A\u6298\u7EBF\u56FE",bar:"\u5207\u6362\u4E3A\u67F1\u72B6\u56FE",stack:"\u5207\u6362\u4E3A\u5806\u53E0",tiled:"\u5207\u6362\u4E3A\u5E73\u94FA"}},restore:{title:"\u8FD8\u539F"},saveAsImage:{title:"\u4FDD\u5B58\u4E3A\u56FE\u7247",lang:["\u53F3\u952E\u53E6\u5B58\u4E3A\u56FE\u7247"]}},series:{typeNames:{pie:"\u997C\u56FE",bar:"\u67F1\u72B6\u56FE",line:"\u6298\u7EBF\u56FE",scatter:"\u6563\u70B9\u56FE",effectScatter:"\u6D9F\u6F2A\u6563\u70B9\u56FE",radar:"\u96F7\u8FBE\u56FE",tree:"\u6811\u56FE",treemap:"\u77E9\u5F62\u6811\u56FE",boxplot:"\u7BB1\u578B\u56FE",candlestick:"K\u7EBF\u56FE",k:"K\u7EBF\u56FE",heatmap:"\u70ED\u529B\u56FE",map:"\u5730\u56FE",parallel:"\u5E73\u884C\u5750\u6807\u56FE",lines:"\u7EBF\u56FE",graph:"\u5173\u7CFB\u56FE",sankey:"\u6851\u57FA\u56FE",funnel:"\u6F0F\u6597\u56FE",gauge:"\u4EEA\u8868\u76D8\u56FE",pictorialBar:"\u8C61\u5F62\u67F1\u56FE",themeRiver:"\u4E3B\u9898\u6CB3\u6D41\u56FE",sunburst:"\u65ED\u65E5\u56FE",custom:"\u81EA\u5B9A\u4E49\u56FE\u8868",chart:"\u56FE\u8868"}},aria:{general:{withTitle:"\u8FD9\u662F\u4E00\u4E2A\u5173\u4E8E\u201C{title}\u201D\u7684\u56FE\u8868\u3002",withoutTitle:"\u8FD9\u662F\u4E00\u4E2A\u56FE\u8868\uFF0C"},series:{single:{prefix:"",withName:"\u56FE\u8868\u7C7B\u578B\u662F{seriesType}\uFF0C\u8868\u793A{seriesName}\u3002",withoutName:"\u56FE\u8868\u7C7B\u578B\u662F{seriesType}\u3002"},multiple:{prefix:"\u5B83\u7531{seriesCount}\u4E2A\u56FE\u8868\u7CFB\u5217\u7EC4\u6210\u3002",withName:"\u7B2C{seriesId}\u4E2A\u7CFB\u5217\u662F\u4E00\u4E2A\u8868\u793A{seriesName}\u7684{seriesType}\uFF0C",withoutName:"\u7B2C{seriesId}\u4E2A\u7CFB\u5217\u662F\u4E00\u4E2A{seriesType}\uFF0C",separator:{middle:"\uFF1B",end:"\u3002"}}},data:{allData:"\u5176\u6570\u636E\u662F\u2014\u2014",partialData:"\u5176\u4E2D\uFF0C\u524D{displayCnt}\u9879\u662F\u2014\u2014",withName:"{name}\u7684\u6570\u636E\u662F{value}",withoutName:"{value}",separator:{middle:"\uFF0C",end:""}}}};var Ib="ZH",UM="EN",Pv=UM,Ab={},HM={},Fb=Kt.domSupported?(function(){var r=(document.documentElement.lang||navigator.language||navigator.browserLanguage||Pv).toUpperCase();return r.indexOf(Ib)>-1?Ib:Pv})():Pv;function JB(r,t){r=r.toUpperCase(),HM[r]=new Te(t),Ab[r]=t}function jB(r){if(V(r)){var t=Ab[r.toUpperCase()]||{};return r===Ib||r===UM?lt(t):Et(lt(t),lt(Ab[Pv]),!1)}else return Et(lt(r),lt(Ab[Pv]),!1)}function p_(r){return HM[r]}function YB(){return HM[Pv]}JB(UM,$B);JB(Ib,qB);var Rb=1e3,Pb=Rb*60,Ov=Pb*60,To=Ov*24,zM=To*365,v_={year:"{yyyy}",month:"{MMM}",day:"{d}",hour:"{HH}:{mm}",minute:"{HH}:{mm}",second:"{HH}:{mm}:{ss}",millisecond:"{HH}:{mm}:{ss} {SSS}",none:"{yyyy}-{MM}-{dd} {HH}:{mm}:{ss} {SSS}"},Lb="{yyyy}-{MM}-{dd}",WM={year:"{yyyy}",month:"{yyyy}-{MM}",day:Lb,hour:Lb+" "+v_.hour,minute:Lb+" "+v_.minute,second:Lb+" "+v_.second,millisecond:v_.none},kM=["year","month","day","hour","minute","second","millisecond"],GM=["year","half-year","quarter","month","week","half-week","day","half-day","quarter-day","hour","minute","second","millisecond"];function Dl(r,t){return r+="","0000".substr(0,t-r.length)+r}function wc(r){switch(r){case"half-year":case"quarter":return"month";case"week":case"half-week":return"day";case"half-day":case"quarter-day":return"hour";default:return r}}function QB(r){return r===wc(r)}function ZB(r){switch(r){case"year":case"month":return"day";case"millisecond":return"millisecond";default:return"second"}}function Sc(r,t,e,n){var a=Ta(r),o=a[Nb(e)](),i=a[xc(e)]()+1,u=Math.floor((i-1)/3)+1,l=a[d_(e)](),f=a["get"+(e?"UTC":"")+"Day"](),s=a[Nv(e)](),c=(s-1)%12+1,p=a[m_(e)](),v=a[h_(e)](),d=a[__(e)](),m=n instanceof Te?n:p_(n||Fb)||YB(),h=m.getModel("time"),_=h.get("month"),g=h.get("monthAbbr"),y=h.get("dayOfWeek"),D=h.get("dayOfWeekAbbr");return(t||"").replace(/{yyyy}/g,o+"").replace(/{yy}/g,Dl(o%100+"",2)).replace(/{Q}/g,u+"").replace(/{MMMM}/g,_[i-1]).replace(/{MMM}/g,g[i-1]).replace(/{MM}/g,Dl(i,2)).replace(/{M}/g,i+"").replace(/{dd}/g,Dl(l,2)).replace(/{d}/g,l+"").replace(/{eeee}/g,y[f]).replace(/{ee}/g,D[f]).replace(/{e}/g,f+"").replace(/{HH}/g,Dl(s,2)).replace(/{H}/g,s+"").replace(/{hh}/g,Dl(c+"",2)).replace(/{h}/g,c+"").replace(/{mm}/g,Dl(p,2)).replace(/{m}/g,p+"").replace(/{ss}/g,Dl(v,2)).replace(/{s}/g,v+"").replace(/{SSS}/g,Dl(d,3)).replace(/{S}/g,d+"")}function XB(r,t,e,n,a){var o=null;if(V(e))o=e;else if(X(e))o=e(r.value,t,{level:r.level});else{var i=N({},v_);if(r.level>0)for(var u=0;u<kM.length;++u)i[kM[u]]="{primary|"+i[kM[u]]+"}";var l=e?e.inherit===!1?e:et(e,i):i,f=KB(r.value,a);if(l[f])o=l[f];else if(l.inherit){for(var s=GM.indexOf(f),u=s-1;u>=0;--u)if(l[f]){o=l[f];break}o=o||i.none}if(O(o)){var c=r.level==null?0:r.level>=0?r.level:o.length+r.level;c=Math.min(c,o.length-1),o=o[c]}}return Sc(new Date(r.value),o,a,n)}function KB(r,t){var e=Ta(r),n=e[xc(t)]()+1,a=e[d_(t)](),o=e[Nv(t)](),i=e[m_(t)](),u=e[h_(t)](),l=e[__(t)](),f=l===0,s=f&&u===0,c=s&&i===0,p=c&&o===0,v=p&&a===1,d=v&&n===1;return d?"year":v?"month":p?"day":c?"hour":s?"minute":f?"second":"millisecond"}function BM(r,t,e){var n=Nt(r)?Ta(r):r;switch(t=t||KB(r,e),t){case"year":return n[Nb(e)]();case"half-year":return n[xc(e)]()>=6?1:0;case"quarter":return Math.floor((n[xc(e)]()+1)/4);case"month":return n[xc(e)]();case"day":return n[d_(e)]();case"half-day":return n[Nv(e)]()/24;case"hour":return n[Nv(e)]();case"minute":return n[m_(e)]();case"second":return n[h_(e)]();case"millisecond":return n[__(e)]()}}function Nb(r){return r?"getUTCFullYear":"getFullYear"}function xc(r){return r?"getUTCMonth":"getMonth"}function d_(r){return r?"getUTCDate":"getDate"}function Nv(r){return r?"getUTCHours":"getHours"}function m_(r){return r?"getUTCMinutes":"getMinutes"}function h_(r){return r?"getUTCSeconds":"getSeconds"}function __(r){return r?"getUTCMilliseconds":"getMilliseconds"}function tV(r){return r?"setUTCFullYear":"setFullYear"}function VM(r){return r?"setUTCMonth":"setMonth"}function $M(r){return r?"setUTCDate":"setDate"}function qM(r){return r?"setUTCHours":"setHours"}function JM(r){return r?"setUTCMinutes":"setMinutes"}function jM(r){return r?"setUTCSeconds":"setSeconds"}function YM(r){return r?"setUTCMilliseconds":"setMilliseconds"}function ZM(r){if(!$h(r))return V(r)?r:"-";var t=(r+"").split(".");return t[0].replace(/(\d{1,3})(?=(?:\d{3})+(?!\d))/g,"$1,")+(t.length>1?"."+t[1]:"")}function Ob(r,t){return r=(r||"").toLowerCase().replace(/-(.)/g,function(e,n){return n.toUpperCase()}),t&&r&&(r=r.charAt(0).toUpperCase()+r.slice(1)),r}var Ai=rv;function Ub(r,t,e){var n="{yyyy}-{MM}-{dd} {HH}:{mm}:{ss}";function a(s){return s&&yn(s)?s:"-"}function o(s){return!!(s!=null&&!isNaN(s)&&isFinite(s))}var i=t==="time",u=r instanceof Date;if(i||u){var l=i?Ta(r):r;if(isNaN(+l)){if(u)return"-"}else return Sc(l,n,e)}if(t==="ordinal")return xh(r)?a(r):Nt(r)&&o(r)?r+"":"-";var f=Jo(r);return o(f)?ZM(f):xh(r)?a(r):typeof r=="boolean"?r+"":"-"}var eV=["a","b","c","d","e","f","g"],QM=function(r,t){return"{"+r+(t??"")+"}"};function Hb(r,t,e){O(t)||(t=[t]);var n=t.length;if(!n)return"";for(var a=t[0].$vars||[],o=0;o<a.length;o++){var i=eV[o];r=r.replace(QM(i),QM(i,0))}for(var u=0;u<n;u++)for(var l=0;l<a.length;l++){var f=t[u][a[l]];r=r.replace(QM(eV[l],u),e?Vn(f):f)}return r}function rV(r,t,e){return T(t,function(n,a){r=r.replace("{"+a+"}",e?Vn(n):n)}),r}function nV(r,t){var e=V(r)?{color:r,extraCssText:t}:r||{},n=e.color,a=e.type;t=e.extraCssText;var o=e.renderMode||"html";if(!n)return"";if(o==="html")return a==="subItem"?'<span style="display:inline-block;vertical-align:middle;margin-right:8px;margin-left:3px;border-radius:4px;width:4px;height:4px;background-color:'+Vn(n)+";"+(t||"")+'"></span>':'<span style="display:inline-block;margin-right:4px;border-radius:10px;width:10px;height:10px;background-color:'+Vn(n)+";"+(t||"")+'"></span>';var i=e.markerId||"markerX";return{renderMode:o,content:"{"+i+"|}  ",style:a==="subItem"?{width:4,height:4,borderRadius:2,backgroundColor:n}:{width:10,height:10,borderRadius:5,backgroundColor:n}}}function Ii(r,t){return t=t||"transparent",V(r)?r:nt(r)&&r.colorStops&&(r.colorStops[0]||{}).color||t}function Ec(r,t){if(t==="_blank"||t==="blank"){var e=window.open();e.opener=null,e.location.href=r}else window.open(r,t)}var kb=T,XM=["left","right","top","bottom","width","height"],Mc=[["width","left","right"],["height","top","bottom"]];function KM(r,t,e,n,a){var o=0,i=0;n==null&&(n=1/0),a==null&&(a=1/0);var u=0;t.eachChild(function(l,f){var s=l.getBoundingRect(),c=t.childAt(f+1),p=c&&c.getBoundingRect(),v,d;if(r==="horizontal"){var m=s.width+(p?-p.x+s.x:0);v=o+m,v>n||l.newline?(o=0,v=m,i+=u+e,u=s.height):u=Math.max(u,s.height)}else{var h=s.height+(p?-p.y+s.y:0);d=i+h,d>a||l.newline?(o+=u+e,i=0,d=h,u=s.width):u=Math.max(u,s.width)}l.newline||(l.x=o,l.y=i,l.markRedraw(),r==="horizontal"?o=v+e:i=d+e)})}var Fi=KM,RKt=gt(KM,"vertical"),PKt=gt(KM,"horizontal");function aV(r,t,e){var n=t.width,a=t.height,o=Y(r.left,n),i=Y(r.top,a),u=Y(r.right,n),l=Y(r.bottom,a);return(isNaN(o)||isNaN(parseFloat(r.left)))&&(o=0),(isNaN(u)||isNaN(parseFloat(r.right)))&&(u=n),(isNaN(i)||isNaN(parseFloat(r.top)))&&(i=0),(isNaN(l)||isNaN(parseFloat(r.bottom)))&&(l=a),e=Ai(e||0),{width:Math.max(u-o-e[1]-e[3],0),height:Math.max(l-i-e[0]-e[2],0)}}function ze(r,t,e){e=Ai(e||0);var n=t.width,a=t.height,o=Y(r.left,n),i=Y(r.top,a),u=Y(r.right,n),l=Y(r.bottom,a),f=Y(r.width,n),s=Y(r.height,a),c=e[2]+e[0],p=e[1]+e[3],v=r.aspect;switch(isNaN(f)&&(f=n-u-p-o),isNaN(s)&&(s=a-l-c-i),v!=null&&(isNaN(f)&&isNaN(s)&&(v>n/a?f=n*.8:s=a*.8),isNaN(f)&&(f=v*s),isNaN(s)&&(s=f/v)),isNaN(o)&&(o=n-u-f-p),isNaN(i)&&(i=a-l-s-c),r.left||r.right){case"center":o=n/2-f/2-e[3];break;case"right":o=n-f-p;break}switch(r.top||r.bottom){case"middle":case"center":i=a/2-s/2-e[0];break;case"bottom":i=a-s-c;break}o=o||0,i=i||0,isNaN(f)&&(f=n-p-o-(u||0)),isNaN(s)&&(s=a-c-i-(l||0));var d=new yt(o+e[3],i+e[0],f,s);return d.margin=e,d}function If(r,t,e,n,a,o){var i=!a||!a.hv||a.hv[0],u=!a||!a.hv||a.hv[1],l=a&&a.boundingMode||"all";if(o=o||r,o.x=r.x,o.y=r.y,!i&&!u)return!1;var f;if(l==="raw")f=r.type==="group"?new yt(0,0,+t.width||0,+t.height||0):r.getBoundingRect();else if(f=r.getBoundingRect(),r.needLocalTransform()){var s=r.getLocalTransform();f=f.clone(),f.applyTransform(s)}var c=ze(et({width:f.width,height:f.height},t),e,n),p=i?c.x-f.x:0,v=u?c.y-f.y:0;return l==="raw"?(o.x=p,o.y=v):(o.x+=p,o.y+=v),o===r&&r.markRedraw(),!0}function oV(r,t){return r[Mc[t][0]]!=null||r[Mc[t][1]]!=null&&r[Mc[t][2]]!=null}function Ff(r){var t=r.layoutMode||r.constructor.layoutMode;return nt(t)?t:t?{type:t}:null}function no(r,t,e){var n=e&&e.ignoreSize;!O(n)&&(n=[n,n]);var a=i(Mc[0],0),o=i(Mc[1],1);f(Mc[0],r,a),f(Mc[1],r,o);function i(s,c){var p={},v=0,d={},m=0,h=2;if(kb(s,function(y){d[y]=r[y]}),kb(s,function(y){u(t,y)&&(p[y]=d[y]=t[y]),l(p,y)&&v++,l(d,y)&&m++}),n[c])return l(t,s[1])?d[s[2]]=null:l(t,s[2])&&(d[s[1]]=null),d;if(m===h||!v)return d;if(v>=h)return p;for(var _=0;_<s.length;_++){var g=s[_];if(!u(p,g)&&u(r,g)){p[g]=r[g];break}}return p}function u(s,c){return s.hasOwnProperty(c)}function l(s,c){return s[c]!=null&&s[c]!=="auto"}function f(s,c,p){kb(s,function(v){c[v]=p[v]})}}function Ko(r){return tA({},r)}function tA(r,t){return t&&r&&kb(XM,function(e){t.hasOwnProperty(e)&&(r[e]=t[e])}),r}var xft=St(),Uv=(function(r){A(t,r);function t(e,n,a){var o=r.call(this,e,n,a)||this;return o.uid=Xo("ec_cpt_model"),o}return t.prototype.init=function(e,n,a){this.mergeDefaultAndTheme(e,a)},t.prototype.mergeDefaultAndTheme=function(e,n){var a=Ff(this),o=a?Ko(e):{},i=n.getTheme();Et(e,i.get(this.mainType)),Et(e,this.getDefaultOption()),a&&no(e,o,a)},t.prototype.mergeOption=function(e,n){Et(this.option,e,!0);var a=Ff(this);a&&no(this.option,e,a)},t.prototype.optionUpdated=function(e,n){},t.prototype.getDefaultOption=function(){var e=this.constructor;if(!XW(e))return e.defaultOption;var n=xft(this);if(!n.defaultOption){for(var a=[],o=e;o;){var i=o.prototype.defaultOption;i&&a.push(i),o=o.superClass}for(var u={},l=a.length-1;l>=0;l--)u=Et(u,a[l],!0);n.defaultOption=u}return n.defaultOption},t.prototype.getReferringComponents=function(e,n){var a=e+"Index",o=e+"Id";return bf(this.ecModel,e,{index:this.get(a,!0),id:this.get(o,!0)},n)},t.prototype.getBoxLayoutParams=function(){var e=this;return{left:e.get("left"),top:e.get("top"),right:e.get("right"),bottom:e.get("bottom"),width:e.get("width"),height:e.get("height")}},t.prototype.getZLevelKey=function(){return""},t.prototype.setZLevel=function(e){this.option.zlevel=e},t.protoInitialize=(function(){var e=t.prototype;e.type="component",e.id="",e.name="",e.mainType="",e.subType="",e.componentIndex=0})(),t})(Te);eb(Uv,Te);Cf(Uv);BB(Uv);VB(Uv,wft);function wft(r){var t=[];return T(Uv.getClassesByMainType(r),function(e){t=t.concat(e.dependencies||e.prototype.dependencies||[])}),t=U(t,function(e){return Xa(e).main}),r!=="dataset"&&wt(t,"dataset")<=0&&t.unshift("dataset"),t}var Gt=Uv;var iV="";typeof navigator<"u"&&(iV=navigator.platform||"");var Hv="rgba(0, 0, 0, 0.2)",uV={darkMode:"auto",colorBy:"series",color:["#5470c6","#91cc75","#fac858","#ee6666","#73c0de","#3ba272","#fc8452","#9a60b4","#ea7ccc"],gradientColor:["#f6efa6","#d88273","#bf444c"],aria:{decal:{decals:[{color:Hv,dashArrayX:[1,0],dashArrayY:[2,5],symbolSize:1,rotation:Math.PI/6},{color:Hv,symbol:"circle",dashArrayX:[[8,8],[0,8,8,0]],dashArrayY:[6,0],symbolSize:.8},{color:Hv,dashArrayX:[1,0],dashArrayY:[4,3],rotation:-Math.PI/4},{color:Hv,dashArrayX:[[6,6],[0,6,6,0]],dashArrayY:[6,0]},{color:Hv,dashArrayX:[[1,0],[1,6]],dashArrayY:[1,0,6,0],rotation:Math.PI/4},{color:Hv,symbol:"triangle",dashArrayX:[[9,9],[0,9,9,0]],dashArrayY:[7,2],symbolSize:.75}]}},textStyle:{fontFamily:iV.match(/^Win/)?"Microsoft YaHei":"sans-serif",fontSize:12,fontStyle:"normal",fontWeight:"normal"},blendMode:null,stateAnimation:{duration:300,easing:"cubicOut"},animation:"auto",animationDuration:1e3,animationDurationUpdate:500,animationEasing:"cubicInOut",animationEasingUpdate:"cubicInOut",animationThreshold:2e3,progressiveThreshold:3e3,progressive:400,hoverLayerThreshold:3e3,useUTC:!1};var zb=Z(["tooltip","label","itemName","itemId","itemGroupId","itemChildGroupId","seriesName"]),Rn="original",Yr="arrayRows",Qn="objectRows",xo="keyedColumns",wo="typedArray",eA="unknown",ao="column",bl="row";var xn={Must:1,Might:2,Not:3},lV=St();function fV(r){lV(r).datasetMap=Z()}function Wb(r,t,e){var n={},a=Gb(t);if(!a||!r)return n;var o=[],i=[],u=t.ecModel,l=lV(u).datasetMap,f=a.uid+"_"+e.seriesLayoutBy,s,c;r=r.slice(),T(r,function(m,h){var _=nt(m)?m:r[h]={name:m};_.type==="ordinal"&&s==null&&(s=h,c=d(_)),n[_.name]=[]});var p=l.get(f)||l.set(f,{categoryWayDim:c,valueWayDim:0});T(r,function(m,h){var _=m.name,g=d(m);if(s==null){var y=p.valueWayDim;v(n[_],y,g),v(i,y,g),p.valueWayDim+=g}else if(s===h)v(n[_],0,g),v(o,0,g);else{var y=p.categoryWayDim;v(n[_],y,g),v(i,y,g),p.categoryWayDim+=g}});function v(m,h,_){for(var g=0;g<_;g++)m.push(h+g)}function d(m){var h=m.dimsDef;return h?h.length:1}return o.length&&(n.itemName=o),i.length&&(n.seriesName=i),n}function kv(r,t,e){var n={},a=Gb(r);if(!a)return n;var o=t.sourceFormat,i=t.dimensionsDefine,u;(o===Qn||o===xo)&&T(i,function(s,c){(nt(s)?s.name:s)==="name"&&(u=c)});var l=(function(){for(var s={},c={},p=[],v=0,d=Math.min(5,e);v<d;v++){var m=cV(t.data,o,t.seriesLayoutBy,i,t.startIndex,v);p.push(m);var h=m===xn.Not;if(h&&s.v==null&&v!==u&&(s.v=v),(s.n==null||s.n===s.v||!h&&p[s.n]===xn.Not)&&(s.n=v),_(s)&&p[s.n]!==xn.Not)return s;h||(m===xn.Might&&c.v==null&&v!==u&&(c.v=v),(c.n==null||c.n===c.v)&&(c.n=v))}function _(g){return g.v!=null&&g.n!=null}return _(s)?s:_(c)?c:null})();if(l){n.value=[l.v];var f=u??l.n;n.itemName=[f],n.seriesName=[f]}return n}function Gb(r){var t=r.get("data",!0);if(!t)return bf(r.ecModel,"dataset",{index:r.get("datasetIndex",!0),id:r.get("datasetId",!0)},je).models[0]}function sV(r){return!r.get("transform",!0)&&!r.get("fromTransformResult",!0)?[]:bf(r.ecModel,"dataset",{index:r.get("fromDatasetIndex",!0),id:r.get("fromDatasetId",!0)},je).models}function Bb(r,t){return cV(r.data,r.sourceFormat,r.seriesLayoutBy,r.dimensionsDefine,r.startIndex,t)}function cV(r,t,e,n,a,o){var i,u=5;if(Jr(r))return xn.Not;var l,f;if(n){var s=n[o];nt(s)?(l=s.name,f=s.type):V(s)&&(l=s)}if(f!=null)return f==="ordinal"?xn.Must:xn.Not;if(t===Yr){var c=r;if(e===bl){for(var p=c[o],v=0;v<(p||[]).length&&v<u;v++)if((i=D(p[a+v]))!=null)return i}else for(var v=0;v<c.length&&v<u;v++){var d=c[a+v];if(d&&(i=D(d[o]))!=null)return i}}else if(t===Qn){var m=r;if(!l)return xn.Not;for(var v=0;v<m.length&&v<u;v++){var h=m[v];if(h&&(i=D(h[l]))!=null)return i}}else if(t===xo){var _=r;if(!l)return xn.Not;var p=_[l];if(!p||Jr(p))return xn.Not;for(var v=0;v<p.length&&v<u;v++)if((i=D(p[v]))!=null)return i}else if(t===Rn)for(var g=r,v=0;v<g.length&&v<u;v++){var h=g[v],y=Ti(h);if(!O(y))return xn.Not;if((i=D(y[o]))!=null)return i}function D(b){var C=V(b);if(b!=null&&isFinite(b)&&b!=="")return C?xn.Might:xn.Not;if(C&&b!=="-")return xn.Must}return xn.Not}var rA=Z();function pV(r,t){ur(rA.get(r)==null&&t),rA.set(r,t)}function vV(r,t,e){var n=rA.get(t);if(!n)return e;var a=n(r);if(!a)return e;if(0)for(var o;o<a.length;o++);return e.concat(a)}var dV=St(),Sft=St(),y_=(function(){function r(){}return r.prototype.getColorFromPalette=function(t,e,n){var a=we(this.get("color",!0)),o=this.get("colorLayer",!0);return mV(this,dV,a,o,t,e,n)},r.prototype.clearColorPalette=function(){Mft(this,dV)},r})();function D_(r,t,e,n){var a=we(r.get(["aria","decal","decals"]));return mV(r,Sft,a,null,t,e,n)}function Eft(r,t){for(var e=r.length,n=0;n<e;n++)if(r[n].length>t)return r[n];return r[e-1]}function mV(r,t,e,n,a,o,i){o=o||r;var u=t(o),l=u.paletteIdx||0,f=u.paletteNameMap=u.paletteNameMap||{};if(f.hasOwnProperty(a))return f[a];var s=i==null||!n?e:Eft(n,i);if(s=s||e,!(!s||!s.length)){var c=s[l];return a&&(f[a]=c),u.paletteIdx=(l+1)%s.length,c}}function Mft(r,t){t(r).paletteIdx=0,t(r).paletteNameMap={}}var Vb,b_,hV,_V="\0_ec_inner",Aft=1;var bV=(function(r){A(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return t.prototype.init=function(e,n,a,o,i,u){o=o||{},this.option=null,this._theme=new Te(o),this._locale=new Te(i),this._optionManager=u},t.prototype.setOption=function(e,n,a){var o=DV(n);this._optionManager.setOption(e,a,o),this._resetOption(null,o)},t.prototype.resetOption=function(e,n){return this._resetOption(e,DV(n))},t.prototype._resetOption=function(e,n){var a=!1,o=this._optionManager;if(!e||e==="recreate"){var i=o.mountOption(e==="recreate");!this.option||e==="recreate"?hV(this,i):(this.restoreData(),this._mergeOption(i,n)),a=!0}if((e==="timeline"||e==="media")&&this.restoreData(),!e||e==="recreate"||e==="timeline"){var u=o.getTimelineOption(this);u&&(a=!0,this._mergeOption(u,n))}if(!e||e==="recreate"||e==="media"){var l=o.getMediaOption(this);l.length&&T(l,function(f){a=!0,this._mergeOption(f,n)},this)}return a},t.prototype.mergeOption=function(e){this._mergeOption(e,null)},t.prototype._mergeOption=function(e,n){var a=this.option,o=this._componentsMap,i=this._componentsCount,u=[],l=Z(),f=n&&n.replaceMergeMainTypeMap;fV(this),T(e,function(c,p){c!=null&&(Gt.hasClass(p)?p&&(u.push(p),l.set(p,!0)):a[p]=a[p]==null?lt(c):Et(a[p],c,!0))}),f&&f.each(function(c,p){Gt.hasClass(p)&&!l.get(p)&&(u.push(p),l.set(p,!0))}),Gt.topologicalTravel(u,Gt.getAllClassMainTypes(),s,this);function s(c){var p=vV(this,c,we(e[c])),v=o.get(c),d=v?f&&f.get(c)?"replaceMerge":"normalMerge":"replaceAll",m=K0(v,p,d);qW(m,c,Gt),a[c]=null,o.set(c,null),i.set(c,0);var h=[],_=[],g=0,y,D;T(m,function(b,C){var x=b.existing,w=b.newOption;if(!w)x&&(x.mergeOption({},this),x.optionUpdated({},!1));else{var S=c==="series",E=Gt.getClass(c,b.keyInfo.subType,!S);if(!E){if(0)var M,I;return}if(c==="tooltip"){if(y)return;y=!0}if(x&&x.constructor===E)x.name=b.keyInfo.name,x.mergeOption(w,this),x.optionUpdated(w,!1);else{var F=N({componentIndex:C},b.keyInfo);x=new E(w,this,this,F),N(x,F),b.brandNew&&(x.__requireNewView=!0),x.init(w,this,this),x.optionUpdated(null,!0)}}x?(h.push(x.option),_.push(x),g++):(h.push(void 0),_.push(void 0))},this),a[c]=h,o.set(c,_),i.set(c,g),c==="series"&&Vb(this)}this._seriesIndices||Vb(this)},t.prototype.getOption=function(){var e=lt(this.option);return T(e,function(n,a){if(Gt.hasClass(a)){for(var o=we(n),i=o.length,u=!1,l=i-1;l>=0;l--)o[l]&&!_v(o[l])?u=!0:(o[l]=null,!u&&i--);o.length=i,e[a]=o}}),delete e[_V],e},t.prototype.getTheme=function(){return this._theme},t.prototype.getLocaleModel=function(){return this._locale},t.prototype.setUpdatePayload=function(e){this._payload=e},t.prototype.getUpdatePayload=function(){return this._payload},t.prototype.getComponent=function(e,n){var a=this._componentsMap.get(e);if(a){var o=a[n||0];if(o)return o;if(n==null){for(var i=0;i<a.length;i++)if(a[i])return a[i]}}},t.prototype.queryComponents=function(e){var n=e.mainType;if(!n)return[];var a=e.index,o=e.id,i=e.name,u=this._componentsMap.get(n);if(!u||!u.length)return[];var l;return a!=null?(l=[],T(we(a),function(f){u[f]&&l.push(u[f])})):o!=null?l=gV("id",o,u):i!=null?l=gV("name",i,u):l=de(u,function(f){return!!f}),yV(l,e)},t.prototype.findComponents=function(e){var n=e.query,a=e.mainType,o=u(n),i=o?this.queryComponents(o):de(this._componentsMap.get(a),function(f){return!!f});return l(yV(i,e));function u(f){var s=a+"Index",c=a+"Id",p=a+"Name";return f&&(f[s]!=null||f[c]!=null||f[p]!=null)?{mainType:a,index:f[s],id:f[c],name:f[p]}:null}function l(f){return e.filter?de(f,e.filter):f}},t.prototype.eachComponent=function(e,n,a){var o=this._componentsMap;if(X(e)){var i=n,u=e;o.each(function(c,p){for(var v=0;c&&v<c.length;v++){var d=c[v];d&&u.call(i,p,d,d.componentIndex)}})}else for(var l=V(e)?o.get(e):nt(e)?this.findComponents(e):null,f=0;l&&f<l.length;f++){var s=l[f];s&&n.call(a,s,s.componentIndex)}},t.prototype.getSeriesByName=function(e){var n=cr(e,null);return de(this._componentsMap.get("series"),function(a){return!!a&&n!=null&&a.name===n})},t.prototype.getSeriesByIndex=function(e){return this._componentsMap.get("series")[e]},t.prototype.getSeriesByType=function(e){return de(this._componentsMap.get("series"),function(n){return!!n&&n.subType===e})},t.prototype.getSeries=function(){return de(this._componentsMap.get("series"),function(e){return!!e})},t.prototype.getSeriesCount=function(){return this._componentsCount.get("series")},t.prototype.eachSeries=function(e,n){b_(this),T(this._seriesIndices,function(a){var o=this._componentsMap.get("series")[a];e.call(n,o,a)},this)},t.prototype.eachRawSeries=function(e,n){T(this._componentsMap.get("series"),function(a){a&&e.call(n,a,a.componentIndex)})},t.prototype.eachSeriesByType=function(e,n,a){b_(this),T(this._seriesIndices,function(o){var i=this._componentsMap.get("series")[o];i.subType===e&&n.call(a,i,o)},this)},t.prototype.eachRawSeriesByType=function(e,n,a){return T(this.getSeriesByType(e),n,a)},t.prototype.isSeriesFiltered=function(e){return b_(this),this._seriesIndicesMap.get(e.componentIndex)==null},t.prototype.getCurrentSeriesIndices=function(){return(this._seriesIndices||[]).slice()},t.prototype.filterSeries=function(e,n){b_(this);var a=[];T(this._seriesIndices,function(o){var i=this._componentsMap.get("series")[o];e.call(n,i,o)&&a.push(o)},this),this._seriesIndices=a,this._seriesIndicesMap=Z(a)},t.prototype.restoreData=function(e){Vb(this);var n=this._componentsMap,a=[];n.each(function(o,i){Gt.hasClass(i)&&a.push(i)}),Gt.topologicalTravel(a,Gt.getAllClassMainTypes(),function(o){T(n.get(o),function(i){i&&(o!=="series"||!Ift(i,e))&&i.restoreData()})})},t.internalField=(function(){Vb=function(e){var n=e._seriesIndices=[];T(e._componentsMap.get("series"),function(a){a&&n.push(a.componentIndex)}),e._seriesIndicesMap=Z(n)},b_=function(e){},hV=function(e,n){e.option={},e.option[_V]=Aft,e._componentsMap=Z({series:[]}),e._componentsCount=Z();var a=n.aria;nt(a)&&a.enabled==null&&(a.enabled=!0),Fft(n,e._theme.option),Et(n,uV,!1),e._mergeOption(n,null)}})(),t})(Te);function Ift(r,t){if(t){var e=t.seriesIndex,n=t.seriesId,a=t.seriesName;return e!=null&&r.componentIndex!==e||n!=null&&r.id!==n||a!=null&&r.name!==a}}function Fft(r,t){var e=r.color&&!r.colorLayer;T(t,function(n,a){a==="colorLayer"&&e||Gt.hasClass(a)||(typeof n=="object"?r[a]=r[a]?Et(r[a],n,!1):lt(n):r[a]==null&&(r[a]=n))})}function gV(r,t,e){if(O(t)){var n=Z();return T(t,function(o){if(o!=null){var i=cr(o,null);i!=null&&n.set(o,!0)}}),de(e,function(o){return o&&n.get(o[r])})}else{var a=cr(t,null);return de(e,function(o){return o&&a!=null&&o[r]===a})}}function yV(r,t){return t.hasOwnProperty("subType")?de(r,function(e){return e&&e.subType===t.subType}):r}function DV(r){var t=Z();return r&&T(we(r.replaceMerge),function(e){t.set(e,!0)}),{replaceMergeMainTypeMap:t}}Ve(bV,y_);var $b=bV;var Lft=["getDom","getZr","getWidth","getHeight","getDevicePixelRatio","dispatchAction","isSSR","isDisposed","on","off","getDataURL","getConnectedDataURL","getOption","getId","updateLabelLayout"],Rft=(function(){function r(t){T(Lft,function(e){this[e]=Q(t[e],t)},this)}return r})(),qb=Rft;var nA={},Pft=(function(){function r(){this._coordinateSystems=[]}return r.prototype.create=function(t,e){var n=[];T(nA,function(a,o){var i=a.create(t,e);n=n.concat(i||[])}),this._coordinateSystems=n},r.prototype.update=function(t,e){T(this._coordinateSystems,function(n){n.update&&n.update(t,e)})},r.prototype.getCoordinateSystems=function(){return this._coordinateSystems.slice()},r.register=function(t,e){nA[t]=e},r.get=function(t){return nA[t]},r})(),Cl=Pft;var Nft=/^(min|max)?(.+)$/,Oft=(function(){function r(t){this._timelineOptions=[],this._mediaList=[],this._currentMediaIndices=[],this._api=t}return r.prototype.setOption=function(t,e,n){t&&(T(we(t.series),function(i){i&&i.data&&Jr(i.data)&&zs(i.data)}),T(we(t.dataset),function(i){i&&i.source&&Jr(i.source)&&zs(i.source)})),t=lt(t);var a=this._optionBackup,o=Uft(t,e,!a);this._newBaseOption=o.baseOption,a?(o.timelineOptions.length&&(a.timelineOptions=o.timelineOptions),o.mediaList.length&&(a.mediaList=o.mediaList),o.mediaDefault&&(a.mediaDefault=o.mediaDefault)):this._optionBackup=o},r.prototype.mountOption=function(t){var e=this._optionBackup;return this._timelineOptions=e.timelineOptions,this._mediaList=e.mediaList,this._mediaDefault=e.mediaDefault,this._currentMediaIndices=[],lt(t?e.baseOption:this._newBaseOption)},r.prototype.getTimelineOption=function(t){var e,n=this._timelineOptions;if(n.length){var a=t.getComponent("timeline");a&&(e=lt(n[a.getCurrentIndex()]))}return e},r.prototype.getMediaOption=function(t){var e=this._api.getWidth(),n=this._api.getHeight(),a=this._mediaList,o=this._mediaDefault,i=[],u=[];if(!a.length&&!o)return u;for(var l=0,f=a.length;l<f;l++)Hft(a[l].query,e,n)&&i.push(l);return!i.length&&o&&(i=[-1]),i.length&&!zft(i,this._currentMediaIndices)&&(u=U(i,function(s){return lt(s===-1?o.option:a[s].option)})),this._currentMediaIndices=i,u},r})();function Uft(r,t,e){var n=[],a,o,i=r.baseOption,u=r.timeline,l=r.options,f=r.media,s=!!r.media,c=!!(l||u||i&&i.timeline);i?(o=i,o.timeline||(o.timeline=u)):((c||s)&&(r.options=r.media=null),o=r),s&&O(f)&&T(f,function(v){v&&v.option&&(v.query?n.push(v):a||(a=v))}),p(o),T(l,function(v){return p(v)}),T(n,function(v){return p(v.option)});function p(v){T(t,function(d){d(v,e)})}return{baseOption:o,timelineOptions:l||[],mediaDefault:a,mediaList:n}}function Hft(r,t,e){var n={width:t,height:e,aspectratio:t/e},a=!0;return T(r,function(o,i){var u=i.match(Nft);if(!(!u||!u[1]||!u[2])){var l=u[1],f=u[2].toLowerCase();kft(n[f],o,l)||(a=!1)}}),a}function kft(r,t,e){return e==="min"?r>=t:e==="max"?r<=t:r===t}function zft(r,t){return r.join(",")===t.join(",")}var CV=Oft;var Li=T,T_=nt,TV=["areaStyle","lineStyle","nodeStyle","linkStyle","chordStyle","label","labelLine"];function aA(r){var t=r&&r.itemStyle;if(t)for(var e=0,n=TV.length;e<n;e++){var a=TV[e],o=t.normal,i=t.emphasis;o&&o[a]&&(r[a]=r[a]||{},r[a].normal?Et(r[a].normal,o[a]):r[a].normal=o[a],o[a]=null),i&&i[a]&&(r[a]=r[a]||{},r[a].emphasis?Et(r[a].emphasis,i[a]):r[a].emphasis=i[a],i[a]=null)}}function da(r,t,e){if(r&&r[t]&&(r[t].normal||r[t].emphasis)){var n=r[t].normal,a=r[t].emphasis;n&&(e?(r[t].normal=r[t].emphasis=null,et(r[t],n)):r[t]=n),a&&(r.emphasis=r.emphasis||{},r.emphasis[t]=a,a.focus&&(r.emphasis.focus=a.focus),a.blurScope&&(r.emphasis.blurScope=a.blurScope))}}function C_(r){da(r,"itemStyle"),da(r,"lineStyle"),da(r,"areaStyle"),da(r,"label"),da(r,"labelLine"),da(r,"upperLabel"),da(r,"edgeLabel")}function nn(r,t){var e=T_(r)&&r[t],n=T_(e)&&e.textStyle;if(n)for(var a=0,o=$E.length;a<o;a++){var i=$E[a];n.hasOwnProperty(i)&&(e[i]=n[i])}}function ti(r){r&&(C_(r),nn(r,"label"),r.emphasis&&nn(r.emphasis,"label"))}function Wft(r){if(T_(r)){aA(r),C_(r),nn(r,"label"),nn(r,"upperLabel"),nn(r,"edgeLabel"),r.emphasis&&(nn(r.emphasis,"label"),nn(r.emphasis,"upperLabel"),nn(r.emphasis,"edgeLabel"));var t=r.markPoint;t&&(aA(t),ti(t));var e=r.markLine;e&&(aA(e),ti(e));var n=r.markArea;n&&ti(n);var a=r.data;if(r.type==="graph"){a=a||r.nodes;var o=r.links||r.edges;if(o&&!Jr(o))for(var i=0;i<o.length;i++)ti(o[i]);T(r.categories,function(f){C_(f)})}if(a&&!Jr(a))for(var i=0;i<a.length;i++)ti(a[i]);if(t=r.markPoint,t&&t.data)for(var u=t.data,i=0;i<u.length;i++)ti(u[i]);if(e=r.markLine,e&&e.data)for(var l=e.data,i=0;i<l.length;i++)O(l[i])?(ti(l[i][0]),ti(l[i][1])):ti(l[i]);r.type==="gauge"?(nn(r,"axisLabel"),nn(r,"title"),nn(r,"detail")):r.type==="treemap"?(da(r.breadcrumb,"itemStyle"),T(r.levels,function(f){C_(f)})):r.type==="tree"&&C_(r.leaves)}}function Tl(r){return O(r)?r:r?[r]:[]}function xV(r){return(O(r)?r[0]:r)||{}}function oA(r,t){Li(Tl(r.series),function(n){T_(n)&&Wft(n)});var e=["xAxis","yAxis","radiusAxis","angleAxis","singleAxis","parallelAxis","radar"];t&&e.push("valueAxis","categoryAxis","logAxis","timeAxis"),Li(e,function(n){Li(Tl(r[n]),function(a){a&&(nn(a,"axisLabel"),nn(a.axisPointer,"label"))})}),Li(Tl(r.parallel),function(n){var a=n&&n.parallelAxisDefault;nn(a,"axisLabel"),nn(a&&a.axisPointer,"label")}),Li(Tl(r.calendar),function(n){da(n,"itemStyle"),nn(n,"dayLabel"),nn(n,"monthLabel"),nn(n,"yearLabel")}),Li(Tl(r.radar),function(n){nn(n,"name"),n.name&&n.axisName==null&&(n.axisName=n.name,delete n.name),n.nameGap!=null&&n.axisNameGap==null&&(n.axisNameGap=n.nameGap,delete n.nameGap)}),Li(Tl(r.geo),function(n){T_(n)&&(ti(n),Li(Tl(n.regions),function(a){ti(a)}))}),Li(Tl(r.timeline),function(n){ti(n),da(n,"label"),da(n,"itemStyle"),da(n,"controlStyle",!0);var a=n.data;O(a)&&T(a,function(o){nt(o)&&(da(o,"label"),da(o,"itemStyle"))})}),Li(Tl(r.toolbox),function(n){da(n,"iconStyle"),Li(n.feature,function(a){da(a,"iconStyle")})}),nn(xV(r.axisPointer),"label"),nn(xV(r.tooltip).axisPointer,"label")}function Gft(r,t){for(var e=t.split(","),n=r,a=0;a<e.length&&(n=n&&n[e[a]],n!=null);a++);return n}function Bft(r,t,e,n){for(var a=t.split(","),o=r,i,u=0;u<a.length-1;u++)i=a[u],o[i]==null&&(o[i]={}),o=o[i];(n||o[a[u]]==null)&&(o[a[u]]=e)}function wV(r){r&&T(Vft,function(t){t[0]in r&&!(t[1]in r)&&(r[t[1]]=r[t[0]])})}var Vft=[["x","left"],["y","top"],["x2","right"],["y2","bottom"]],$ft=["grid","geo","parallel","legend","toolbox","title","visualMap","dataZoom","timeline"],iA=[["borderRadius","barBorderRadius"],["borderColor","barBorderColor"],["borderWidth","barBorderWidth"]];function x_(r){var t=r&&r.itemStyle;if(t)for(var e=0;e<iA.length;e++){var n=iA[e][1],a=iA[e][0];t[n]!=null&&(t[a]=t[n])}}function SV(r){r&&r.alignTo==="edge"&&r.margin!=null&&r.edgeDistance==null&&(r.edgeDistance=r.margin)}function EV(r){r&&r.downplay&&!r.blur&&(r.blur=r.downplay)}function qft(r){r&&r.focusNodeAdjacency!=null&&(r.emphasis=r.emphasis||{},r.emphasis.focus==null&&(r.emphasis.focus="adjacency"))}function MV(r,t){if(r)for(var e=0;e<r.length;e++)t(r[e]),r[e]&&MV(r[e].children,t)}function Jb(r,t){oA(r,t),r.series=we(r.series),T(r.series,function(e){if(nt(e)){var n=e.type;if(n==="line")e.clipOverflow!=null&&(e.clip=e.clipOverflow);else if(n==="pie"||n==="gauge"){e.clockWise!=null&&(e.clockwise=e.clockWise),SV(e.label);var a=e.data;if(a&&!Jr(a))for(var o=0;o<a.length;o++)SV(a[o]);e.hoverOffset!=null&&(e.emphasis=e.emphasis||{},(e.emphasis.scaleSize=null)&&(e.emphasis.scaleSize=e.hoverOffset))}else if(n==="gauge"){var i=Gft(e,"pointer.color");i!=null&&Bft(e,"itemStyle.color",i)}else if(n==="bar"){x_(e),x_(e.backgroundStyle),x_(e.emphasis);var a=e.data;if(a&&!Jr(a))for(var o=0;o<a.length;o++)typeof a[o]=="object"&&(x_(a[o]),x_(a[o]&&a[o].emphasis))}else if(n==="sunburst"){var u=e.highlightPolicy;u&&(e.emphasis=e.emphasis||{},e.emphasis.focus||(e.emphasis.focus=u)),EV(e),MV(e.data,EV)}else n==="graph"||n==="sankey"?qft(e):n==="map"&&(e.mapType&&!e.map&&(e.map=e.mapType),e.mapLocation&&et(e,e.mapLocation));e.hoverAnimation!=null&&(e.emphasis=e.emphasis||{},e.emphasis&&e.emphasis.scale==null&&(e.emphasis.scale=e.hoverAnimation)),wV(e)}}),r.dataRange&&(r.visualMap=r.dataRange),T($ft,function(e){var n=r[e];n&&(O(n)||(n=[n]),T(n,function(a){wV(a)}))})}function uA(r){var t=Z();r.eachSeries(function(e){var n=e.get("stack");if(n){var a=t.get(n)||t.set(n,[]),o=e.getData(),i={stackResultDimension:o.getCalculationInfo("stackResultDimension"),stackedOverDimension:o.getCalculationInfo("stackedOverDimension"),stackedDimension:o.getCalculationInfo("stackedDimension"),stackedByDimension:o.getCalculationInfo("stackedByDimension"),isStackedByIndex:o.getCalculationInfo("isStackedByIndex"),data:o,seriesModel:e};if(!i.stackedDimension||!(i.isStackedByIndex||i.stackedByDimension))return;a.length&&o.setCalculationInfo("stackedOnSeries",a[a.length-1].seriesModel),a.push(i)}}),t.each(Jft)}function Jft(r){T(r,function(t,e){var n=[],a=[NaN,NaN],o=[t.stackResultDimension,t.stackedOverDimension],i=t.data,u=t.isStackedByIndex,l=t.seriesModel.get("stackStrategy")||"samesign";i.modify(o,function(f,s,c){var p=i.get(t.stackedDimension,c);if(isNaN(p))return a;var v,d;u?d=i.getRawIndex(c):v=i.get(t.stackedByDimension,c);for(var m=NaN,h=e-1;h>=0;h--){var _=r[h];if(u||(d=_.data.rawIndexOf(_.stackedByDimension,v)),d>=0){var g=_.data.getByRawIndex(_.stackResultDimension,d);if(l==="all"||l==="positive"&&g>0||l==="negative"&&g<0||l==="samesign"&&p>=0&&g>0||l==="samesign"&&p<=0&&g<0){p=NW(p,g),m=g;break}}}return n[0]=p,n[1]=m,n})})}var jb=(function(){function r(t){this.data=t.data||(t.sourceFormat===xo?{}:[]),this.sourceFormat=t.sourceFormat||eA,this.seriesLayoutBy=t.seriesLayoutBy||ao,this.startIndex=t.startIndex||0,this.dimensionsDetectedCount=t.dimensionsDetectedCount,this.metaRawOption=t.metaRawOption;var e=this.dimensionsDefine=t.dimensionsDefine;if(e)for(var n=0;n<e.length;n++){var a=e[n];a.type==null&&Bb(this,n)===xn.Must&&(a.type="ordinal")}}return r})();function zv(r){return r instanceof jb}function w_(r,t,e){e=e||lA(r);var n=t.seriesLayoutBy,a=jft(r,e,n,t.sourceHeader,t.dimensions),o=new jb({data:r,sourceFormat:e,seriesLayoutBy:n,dimensionsDefine:a.dimensionsDefine,startIndex:a.startIndex,dimensionsDetectedCount:a.dimensionsDetectedCount,metaRawOption:lt(t)});return o}function Wv(r){return new jb({data:r,sourceFormat:Jr(r)?wo:Rn})}function FV(r){return new jb({data:r.data,sourceFormat:r.sourceFormat,seriesLayoutBy:r.seriesLayoutBy,dimensionsDefine:lt(r.dimensionsDefine),startIndex:r.startIndex,dimensionsDetectedCount:r.dimensionsDetectedCount})}function lA(r){var t=eA;if(Jr(r))t=wo;else if(O(r)){r.length===0&&(t=Yr);for(var e=0,n=r.length;e<n;e++){var a=r[e];if(a!=null){if(O(a)||Jr(a)){t=Yr;break}else if(nt(a)){t=Qn;break}}}}else if(nt(r)){for(var o in r)if(st(r,o)&&Ur(r[o])){t=xo;break}}return t}function jft(r,t,e,n,a){var o,i;if(!r)return{dimensionsDefine:AV(a),startIndex:i,dimensionsDetectedCount:o};if(t===Yr){var u=r;n==="auto"||n==null?IV(function(f){f!=null&&f!=="-"&&(V(f)?i==null&&(i=1):i=0)},e,u,10):i=Nt(n)?n:n?1:0,!a&&i===1&&(a=[],IV(function(f,s){a[s]=f!=null?f+"":""},e,u,1/0)),o=a?a.length:e===bl?u.length:u[0]?u[0].length:null}else if(t===Qn)a||(a=Yft(r));else if(t===xo)a||(a=[],T(r,function(f,s){a.push(s)}));else if(t===Rn){var l=Ti(r[0]);o=O(l)&&l.length||1}return{startIndex:i,dimensionsDefine:AV(a),dimensionsDetectedCount:o}}function Yft(r){for(var t=0,e;t<r.length&&!(e=r[t++]););if(e)return Ft(e)}function AV(r){if(r){var t=Z();return U(r,function(e,n){e=nt(e)?e:{name:e};var a={name:e.name,displayName:e.displayName,type:e.type};if(a.name==null)return a;a.name+="",a.displayName==null&&(a.displayName=a.name);var o=t.get(a.name);return o?a.name+="-"+o.count++:t.set(a.name,{count:1}),a})}}function IV(r,t,e,n){if(t===bl)for(var a=0;a<e.length&&a<n;a++)r(e[a]?e[a][0]:null,a);else for(var o=e[0]||[],a=0;a<o.length&&a<n;a++)r(o[a],a)}function Yb(r){var t=r.sourceFormat;return t===Qn||t===xo}var Ac,Ic,Fc,LV,RV,Qb=(function(){function r(t,e){var n=zv(t)?t:Wv(t);this._source=n;var a=this._data=n.data;n.sourceFormat===wo&&(this._offset=0,this._dimSize=e,this._data=a),RV(this,a,n)}return r.prototype.getSource=function(){return this._source},r.prototype.count=function(){return 0},r.prototype.getItem=function(t,e){},r.prototype.appendData=function(t){},r.prototype.clean=function(){},r.protoInitialize=(function(){var t=r.prototype;t.pure=!1,t.persistent=!0})(),r.internalField=(function(){var t;RV=function(i,u,l){var f=l.sourceFormat,s=l.seriesLayoutBy,c=l.startIndex,p=l.dimensionsDefine,v=LV[vA(f,s)];if(N(i,v),f===wo)i.getItem=e,i.count=a,i.fillStorage=n;else{var d=sA(f,s);i.getItem=Q(d,null,u,c,p);var m=cA(f,s);i.count=Q(m,null,u,c,p)}};var e=function(i,u){i=i-this._offset,u=u||[];for(var l=this._data,f=this._dimSize,s=f*i,c=0;c<f;c++)u[c]=l[s+c];return u},n=function(i,u,l,f){for(var s=this._data,c=this._dimSize,p=0;p<c;p++){for(var v=f[p],d=v[0]==null?1/0:v[0],m=v[1]==null?-1/0:v[1],h=u-i,_=l[p],g=0;g<h;g++){var y=s[g*c+p];_[i+g]=y,y<d&&(d=y),y>m&&(m=y)}v[0]=d,v[1]=m}},a=function(){return this._data?this._data.length/this._dimSize:0};LV=(t={},t[Yr+"_"+ao]={pure:!0,appendData:o},t[Yr+"_"+bl]={pure:!0,appendData:function(){throw new Error('Do not support appendData when set seriesLayoutBy: "row".')}},t[Qn]={pure:!0,appendData:o},t[xo]={pure:!0,appendData:function(i){var u=this._data;T(i,function(l,f){for(var s=u[f]||(u[f]=[]),c=0;c<(l||[]).length;c++)s.push(l[c])})}},t[Rn]={appendData:o},t[wo]={persistent:!1,pure:!0,appendData:function(i){this._data=i},clean:function(){this._offset+=this.count(),this._data=null}},t);function o(i){for(var u=0;u<i.length;u++)this._data.push(i[u])}})(),r})();var PV=function(r,t,e,n){return r[n]},Qft=(Ac={},Ac[Yr+"_"+ao]=function(r,t,e,n){return r[n+t]},Ac[Yr+"_"+bl]=function(r,t,e,n,a){n+=t;for(var o=a||[],i=r,u=0;u<i.length;u++){var l=i[u];o[u]=l?l[n]:null}return o},Ac[Qn]=PV,Ac[xo]=function(r,t,e,n,a){for(var o=a||[],i=0;i<e.length;i++){var u=e[i].name,l=r[u];o[i]=l?l[n]:null}return o},Ac[Rn]=PV,Ac);function sA(r,t){var e=Qft[vA(r,t)];return e}var NV=function(r,t,e){return r.length},Zft=(Ic={},Ic[Yr+"_"+ao]=function(r,t,e){return Math.max(0,r.length-t)},Ic[Yr+"_"+bl]=function(r,t,e){var n=r[0];return n?Math.max(0,n.length-t):0},Ic[Qn]=NV,Ic[xo]=function(r,t,e){var n=e[0].name,a=r[n];return a?a.length:0},Ic[Rn]=NV,Ic);function cA(r,t){var e=Zft[vA(r,t)];return e}var fA=function(r,t,e){return r[t]},Xft=(Fc={},Fc[Yr]=fA,Fc[Qn]=function(r,t,e){return r[e]},Fc[xo]=fA,Fc[Rn]=function(r,t,e){var n=Ti(r);return n instanceof Array?n[t]:n},Fc[wo]=fA,Fc);function pA(r){var t=Xft[r];return t}function vA(r,t){return r===Yr?r+"_"+t:r}function xl(r,t,e){if(r){var n=r.getRawDataItem(t);if(n!=null){var a=r.getStore(),o=a.getSource().sourceFormat;if(e!=null){var i=r.getDimensionIndex(e),u=a.getDimensionProperty(i);return pA(o)(n,i,u)}else{var l=n;return o===Rn&&(l=Ti(n)),l}}}}var Kft=/\{@(.+?)\}/g,Gv=(function(){function r(){}return r.prototype.getDataParams=function(t,e){var n=this.getData(e),a=this.getRawValue(t,e),o=n.getRawIndex(t),i=n.getName(t),u=n.getRawDataItem(t),l=n.getItemVisual(t,"style"),f=l&&l[n.getItemVisual(t,"drawType")||"fill"],s=l&&l.stroke,c=this.mainType,p=c==="series",v=n.userOutput&&n.userOutput.get();return{componentType:c,componentSubType:this.subType,componentIndex:this.componentIndex,seriesType:p?this.subType:null,seriesIndex:this.seriesIndex,seriesId:p?this.id:null,seriesName:p?this.name:null,name:i,dataIndex:o,data:u,dataType:e,value:a,color:f,borderColor:s,dimensionNames:v?v.fullDimensions:null,encode:v?v.encode:null,$vars:["seriesName","name","value"]}},r.prototype.getFormattedLabel=function(t,e,n,a,o,i){e=e||"normal";var u=this.getData(n),l=this.getDataParams(t,n);if(i&&(l.value=i.interpolatedValue),a!=null&&O(l.value)&&(l.value=l.value[a]),!o){var f=u.getItemModel(t);o=f.get(e==="normal"?["label","formatter"]:[e,"label","formatter"])}if(X(o))return l.status=e,l.dimensionIndex=a,o(l);if(V(o)){var s=Hb(o,l);return s.replace(Kft,function(c,p){var v=p.length,d=p;d.charAt(0)==="["&&d.charAt(v-1)==="]"&&(d=+d.slice(1,v-1));var m=xl(u,t,d);if(i&&O(i.interpolatedValue)){var h=u.getDimensionIndex(d);h>=0&&(m=i.interpolatedValue[h])}return m!=null?m+"":""})}},r.prototype.getRawValue=function(t,e){return xl(this.getData(e),t)},r.prototype.formatTooltip=function(t,e,n){},r})();function dA(r){var t,e;return nt(r)?r.type&&(e=r):t=r,{text:t,frag:e}}function Lf(r){return new tst(r)}var tst=(function(){function r(t){t=t||{},this._reset=t.reset,this._plan=t.plan,this._count=t.count,this._onDirty=t.onDirty,this._dirty=!0}return r.prototype.perform=function(t){var e=this._upstream,n=t&&t.skip;if(this._dirty&&e){var a=this.context;a.data=a.outputData=e.context.outputData}this.__pipeline&&(this.__pipeline.currentTask=this);var o;this._plan&&!n&&(o=this._plan(this.context));var i=s(this._modBy),u=this._modDataCount||0,l=s(t&&t.modBy),f=t&&t.modDataCount||0;(i!==l||u!==f)&&(o="reset");function s(g){return!(g>=1)&&(g=1),g}var c;(this._dirty||o==="reset")&&(this._dirty=!1,c=this._doReset(n)),this._modBy=l,this._modDataCount=f;var p=t&&t.step;if(e?this._dueEnd=e._outputDueEnd:this._dueEnd=this._count?this._count(this.context):1/0,this._progress){var v=this._dueIndex,d=Math.min(p!=null?this._dueIndex+p:1/0,this._dueEnd);if(!n&&(c||v<d)){var m=this._progress;if(O(m))for(var h=0;h<m.length;h++)this._doProgress(m[h],v,d,l,f);else this._doProgress(m,v,d,l,f)}this._dueIndex=d;var _=this._settedOutputEnd!=null?this._settedOutputEnd:d;this._outputDueEnd=_}else this._dueIndex=this._outputDueEnd=this._settedOutputEnd!=null?this._settedOutputEnd:this._dueEnd;return this.unfinished()},r.prototype.dirty=function(){this._dirty=!0,this._onDirty&&this._onDirty(this.context)},r.prototype._doProgress=function(t,e,n,a,o){OV.reset(e,n,a,o),this._callingProgress=t,this._callingProgress({start:e,end:n,count:n-e,next:OV.next},this.context)},r.prototype._doReset=function(t){this._dueIndex=this._outputDueEnd=this._dueEnd=0,this._settedOutputEnd=null;var e,n;!t&&this._reset&&(e=this._reset(this.context),e&&e.progress&&(n=e.forceFirstProgress,e=e.progress),O(e)&&!e.length&&(e=null)),this._progress=e,this._modBy=this._modDataCount=null;var a=this._downstream;return a&&a.dirty(),n},r.prototype.unfinished=function(){return this._progress&&this._dueIndex<this._dueEnd},r.prototype.pipe=function(t){(this._downstream!==t||this._dirty)&&(this._downstream=t,t._upstream=this,t.dirty())},r.prototype.dispose=function(){this._disposed||(this._upstream&&(this._upstream._downstream=null),this._downstream&&(this._downstream._upstream=null),this._dirty=!1,this._disposed=!0)},r.prototype.getUpstream=function(){return this._upstream},r.prototype.getDownstream=function(){return this._downstream},r.prototype.setOutputEnd=function(t){this._outputDueEnd=this._settedOutputEnd=t},r})();var OV=(function(){var r,t,e,n,a,o={reset:function(l,f,s,c){t=l,r=f,e=s,n=c,a=Math.ceil(n/e),o.next=e>1&&n>0?u:i}};return o;function i(){return t<r?t++:null}function u(){var l=t%a*e+Math.ceil(t/a),f=t>=r?null:l<n?l:t;return t++,f}})();function ei(r,t){var e=t&&t.type;return e==="ordinal"?r:(e==="time"&&!Nt(r)&&r!=null&&r!=="-"&&(r=+Ta(r)),r==null||r===""?NaN:+r)}var est=Z({number:function(r){return parseFloat(r)},time:function(r){return+Ta(r)},trim:function(r){return V(r)?yn(r):r}});function Zb(r){return est.get(r)}var UV={lt:function(r,t){return r<t},lte:function(r,t){return r<=t},gt:function(r,t){return r>t},gte:function(r,t){return r>=t}},rst=(function(){function r(t,e){if(!Nt(e)){var n="";Fe(n)}this._opFn=UV[t],this._rvalFloat=Jo(e)}return r.prototype.evaluate=function(t){return Nt(t)?this._opFn(t,this._rvalFloat):this._opFn(Jo(t),this._rvalFloat)},r})(),Xb=(function(){function r(t,e){var n=t==="desc";this._resultLT=n?1:-1,e==null&&(e=n?"min":"max"),this._incomparable=e==="min"?-1/0:1/0}return r.prototype.evaluate=function(t,e){var n=Nt(t)?t:Jo(t),a=Nt(e)?e:Jo(e),o=isNaN(n),i=isNaN(a);if(o&&(n=this._incomparable),i&&(a=this._incomparable),o&&i){var u=V(t),l=V(e);u&&(n=l?t:0),l&&(a=u?e:0)}return n<a?this._resultLT:n>a?-this._resultLT:0},r})();var nst=(function(){function r(t,e){this._rval=e,this._isEQ=t,this._rvalTypeof=typeof e,this._rvalFloat=Jo(e)}return r.prototype.evaluate=function(t){var e=t===this._rval;if(!e){var n=typeof t;n!==this._rvalTypeof&&(n==="number"||this._rvalTypeof==="number")&&(e=Jo(t)===this._rvalFloat)}return this._isEQ?e:!e},r})();function HV(r,t){return r==="eq"||r==="ne"?new nst(r==="eq",t):st(UV,r)?new rst(r,t):null}var ast=(function(){function r(){}return r.prototype.getRawData=function(){throw new Error("not supported")},r.prototype.getRawDataItem=function(t){throw new Error("not supported")},r.prototype.cloneRawData=function(){},r.prototype.getDimensionInfo=function(t){},r.prototype.cloneAllDimensionInfo=function(){},r.prototype.count=function(){},r.prototype.retrieveValue=function(t,e){},r.prototype.retrieveValueFromItem=function(t,e){},r.prototype.convertValue=function(t,e){return ei(t,e)},r})();function ost(r,t){var e=new ast,n=r.data,a=e.sourceFormat=r.sourceFormat,o=r.startIndex,i="";r.seriesLayoutBy!==ao&&Fe(i);var u=[],l={},f=r.dimensionsDefine;if(f)T(f,function(m,h){var _=m.name,g={index:h,name:_,displayName:m.displayName};if(u.push(g),_!=null){var y="";st(l,_)&&Fe(y),l[_]=g}});else for(var s=0;s<r.dimensionsDetectedCount;s++)u.push({index:s});var c=sA(a,ao);t.__isBuiltIn&&(e.getRawDataItem=function(m){return c(n,o,u,m)},e.getRawData=Q(ist,null,r)),e.cloneRawData=Q(ust,null,r);var p=cA(a,ao);e.count=Q(p,null,n,o,u);var v=pA(a);e.retrieveValue=function(m,h){var _=c(n,o,u,m);return d(_,h)};var d=e.retrieveValueFromItem=function(m,h){if(m!=null){var _=u[h];if(_)return v(m,h,_.name)}};return e.getDimensionInfo=Q(lst,null,u,l),e.cloneAllDimensionInfo=Q(fst,null,u),e}function ist(r){var t=r.sourceFormat;if(!mA(t)){var e="";Fe(e)}return r.data}function ust(r){var t=r.sourceFormat,e=r.data;if(!mA(t)){var n="";Fe(n)}if(t===Yr){for(var a=[],o=0,i=e.length;o<i;o++)a.push(e[o].slice());return a}else if(t===Qn){for(var a=[],o=0,i=e.length;o<i;o++)a.push(N({},e[o]));return a}}function lst(r,t,e){if(e!=null){if(Nt(e)||!isNaN(e)&&!st(t,e))return r[e];if(st(t,e))return t[e]}}function fst(r){return lt(r)}var kV=Z();function zV(r){r=lt(r);var t=r.type,e="";t||Fe(e);var n=t.split(":");n.length!==2&&Fe(e);var a=!1;n[0]==="echarts"&&(t=n[1],a=!0),r.__isBuiltIn=a,kV.set(t,r)}function WV(r,t,e){var n=we(r),a=n.length,o="";a||Fe(o);for(var i=0,u=a;i<u;i++){var l=n[i];t=sst(l,t,e,a===1?null:i),i!==u-1&&(t.length=Math.max(t.length,1))}return t}function sst(r,t,e,n){var a="";t.length||Fe(a),nt(r)||Fe(a);var o=r.type,i=kV.get(o);i||Fe(a);var u=U(t,function(s){return ost(s,i)}),l=we(i.transform({upstream:u[0],upstreamList:u,config:lt(r.config)}));if(0&&r.print)var f;return U(l,function(s,c){var p="";nt(s)||Fe(p),s.data||Fe(p);var v=lA(s.data);mA(v)||Fe(p);var d,m=t[0];if(m&&c===0&&!s.dimensions){var h=m.startIndex;h&&(s.data=m.data.slice(0,h).concat(s.data)),d={seriesLayoutBy:ao,sourceHeader:h,dimensions:m.metaRawOption.dimensions}}else d={seriesLayoutBy:ao,sourceHeader:0,dimensions:s.dimensions};return w_(s.data,d,null)})}function mA(r){return r===Yr||r===Qn}var Kb="undefined",cst=typeof Uint32Array===Kb?Array:Uint32Array,pst=typeof Uint16Array===Kb?Array:Uint16Array,_A=typeof Int32Array===Kb?Array:Int32Array,GV=typeof Float64Array===Kb?Array:Float64Array,VV={float:GV,int:_A,ordinal:Array,number:Array,time:GV},hA;function S_(r){return r>65535?cst:pst}function Bv(){return[1/0,-1/0]}function vst(r){var t=r.constructor;return t===Array?r.slice():new t(r)}function BV(r,t,e,n,a){var o=VV[e||"float"];if(a){var i=r[t],u=i&&i.length;if(u!==n){for(var l=new o(n),f=0;f<u;f++)l[f]=i[f];r[t]=l}}else r[t]=new o(n)}var dst=(function(){function r(){this._chunks=[],this._rawExtent=[],this._extent=[],this._count=0,this._rawCount=0,this._calcDimNameToIdx=Z()}return r.prototype.initData=function(t,e,n){this._provider=t,this._chunks=[],this._indices=null,this.getRawIndex=this._getRawIdxIdentity;var a=t.getSource(),o=this.defaultDimValueGetter=hA[a.sourceFormat];this._dimValueGetter=n||o,this._rawExtent=[];var i=Yb(a);this._dimensions=U(e,function(u){return{type:u.type,property:u.property}}),this._initDataFromProvider(0,t.count())},r.prototype.getProvider=function(){return this._provider},r.prototype.getSource=function(){return this._provider.getSource()},r.prototype.ensureCalculationDimension=function(t,e){var n=this._calcDimNameToIdx,a=this._dimensions,o=n.get(t);if(o!=null){if(a[o].type===e)return o}else o=a.length;return a[o]={type:e},n.set(t,o),this._chunks[o]=new VV[e||"float"](this._rawCount),this._rawExtent[o]=Bv(),o},r.prototype.collectOrdinalMeta=function(t,e){var n=this._chunks[t],a=this._dimensions[t],o=this._rawExtent,i=a.ordinalOffset||0,u=n.length;i===0&&(o[t]=Bv());for(var l=o[t],f=i;f<u;f++){var s=n[f]=e.parseAndCollect(n[f]);isNaN(s)||(l[0]=Math.min(s,l[0]),l[1]=Math.max(s,l[1]))}a.ordinalMeta=e,a.ordinalOffset=u,a.type="ordinal"},r.prototype.getOrdinalMeta=function(t){var e=this._dimensions[t],n=e.ordinalMeta;return n},r.prototype.getDimensionProperty=function(t){var e=this._dimensions[t];return e&&e.property},r.prototype.appendData=function(t){var e=this._provider,n=this.count();e.appendData(t);var a=e.count();return e.persistent||(a+=n),n<a&&this._initDataFromProvider(n,a,!0),[n,a]},r.prototype.appendValues=function(t,e){for(var n=this._chunks,a=this._dimensions,o=a.length,i=this._rawExtent,u=this.count(),l=u+Math.max(t.length,e||0),f=0;f<o;f++){var s=a[f];BV(n,f,s.type,l,!0)}for(var c=[],p=u;p<l;p++)for(var v=p-u,d=0;d<o;d++){var s=a[d],m=hA.arrayRows.call(this,t[v]||c,s.property,v,d);n[d][p]=m;var h=i[d];m<h[0]&&(h[0]=m),m>h[1]&&(h[1]=m)}return this._rawCount=this._count=l,{start:u,end:l}},r.prototype._initDataFromProvider=function(t,e,n){for(var a=this._provider,o=this._chunks,i=this._dimensions,u=i.length,l=this._rawExtent,f=U(i,function(g){return g.property}),s=0;s<u;s++){var c=i[s];l[s]||(l[s]=Bv()),BV(o,s,c.type,e,n)}if(a.fillStorage)a.fillStorage(t,e,o,l);else for(var p=[],v=t;v<e;v++){p=a.getItem(v,p);for(var d=0;d<u;d++){var m=o[d],h=this._dimValueGetter(p,f[d],v,d);m[v]=h;var _=l[d];h<_[0]&&(_[0]=h),h>_[1]&&(_[1]=h)}}!a.persistent&&a.clean&&a.clean(),this._rawCount=this._count=e,this._extent=[]},r.prototype.count=function(){return this._count},r.prototype.get=function(t,e){if(!(e>=0&&e<this._count))return NaN;var n=this._chunks[t];return n?n[this.getRawIndex(e)]:NaN},r.prototype.getValues=function(t,e){var n=[],a=[];if(e==null){e=t,t=[];for(var o=0;o<this._dimensions.length;o++)a.push(o)}else a=t;for(var o=0,i=a.length;o<i;o++)n.push(this.get(a[o],e));return n},r.prototype.getByRawIndex=function(t,e){if(!(e>=0&&e<this._rawCount))return NaN;var n=this._chunks[t];return n?n[e]:NaN},r.prototype.getSum=function(t){var e=this._chunks[t],n=0;if(e)for(var a=0,o=this.count();a<o;a++){var i=this.get(t,a);isNaN(i)||(n+=i)}return n},r.prototype.getMedian=function(t){var e=[];this.each([t],function(o){isNaN(o)||e.push(o)});var n=e.sort(function(o,i){return o-i}),a=this.count();return a===0?0:a%2===1?n[(a-1)/2]:(n[a/2]+n[a/2-1])/2},r.prototype.indexOfRawIndex=function(t){if(t>=this._rawCount||t<0)return-1;if(!this._indices)return t;var e=this._indices,n=e[t];if(n!=null&&n<this._count&&n===t)return t;for(var a=0,o=this._count-1;a<=o;){var i=(a+o)/2|0;if(e[i]<t)a=i+1;else if(e[i]>t)o=i-1;else return i}return-1},r.prototype.indicesOfNearest=function(t,e,n){var a=this._chunks,o=a[t],i=[];if(!o)return i;n==null&&(n=1/0);for(var u=1/0,l=-1,f=0,s=0,c=this.count();s<c;s++){var p=this.getRawIndex(s),v=e-o[p],d=Math.abs(v);d<=n&&((d<u||d===u&&v>=0&&l<0)&&(u=d,l=v,f=0),v===l&&(i[f++]=s))}return i.length=f,i},r.prototype.getIndices=function(){var t,e=this._indices;if(e){var n=e.constructor,a=this._count;if(n===Array){t=new n(a);for(var o=0;o<a;o++)t[o]=e[o]}else t=new n(e.buffer,0,a)}else{var n=S_(this._rawCount);t=new n(this.count());for(var o=0;o<t.length;o++)t[o]=o}return t},r.prototype.filter=function(t,e){if(!this._count)return this;for(var n=this.clone(),a=n.count(),o=S_(n._rawCount),i=new o(a),u=[],l=t.length,f=0,s=t[0],c=n._chunks,p=0;p<a;p++){var v=void 0,d=n.getRawIndex(p);if(l===0)v=e(p);else if(l===1){var m=c[s][d];v=e(m,p)}else{for(var h=0;h<l;h++)u[h]=c[t[h]][d];u[h]=p,v=e.apply(null,u)}v&&(i[f++]=d)}return f<a&&(n._indices=i),n._count=f,n._extent=[],n._updateGetRawIdx(),n},r.prototype.selectRange=function(t){var e=this.clone(),n=e._count;if(!n)return this;var a=Ft(t),o=a.length;if(!o)return this;var i=e.count(),u=S_(e._rawCount),l=new u(i),f=0,s=a[0],c=t[s][0],p=t[s][1],v=e._chunks,d=!1;if(!e._indices){var m=0;if(o===1){for(var h=v[a[0]],_=0;_<n;_++){var g=h[_];(g>=c&&g<=p||isNaN(g))&&(l[f++]=m),m++}d=!0}else if(o===2){for(var h=v[a[0]],y=v[a[1]],D=t[a[1]][0],b=t[a[1]][1],_=0;_<n;_++){var g=h[_],C=y[_];(g>=c&&g<=p||isNaN(g))&&(C>=D&&C<=b||isNaN(C))&&(l[f++]=m),m++}d=!0}}if(!d)if(o===1)for(var _=0;_<i;_++){var x=e.getRawIndex(_),g=v[a[0]][x];(g>=c&&g<=p||isNaN(g))&&(l[f++]=x)}else for(var _=0;_<i;_++){for(var w=!0,x=e.getRawIndex(_),S=0;S<o;S++){var E=a[S],g=v[E][x];(g<t[E][0]||g>t[E][1])&&(w=!1)}w&&(l[f++]=e.getRawIndex(_))}return f<i&&(e._indices=l),e._count=f,e._extent=[],e._updateGetRawIdx(),e},r.prototype.map=function(t,e){var n=this.clone(t);return this._updateDims(n,t,e),n},r.prototype.modify=function(t,e){this._updateDims(this,t,e)},r.prototype._updateDims=function(t,e,n){for(var a=t._chunks,o=[],i=e.length,u=t.count(),l=[],f=t._rawExtent,s=0;s<e.length;s++)f[e[s]]=Bv();for(var c=0;c<u;c++){for(var p=t.getRawIndex(c),v=0;v<i;v++)l[v]=a[e[v]][p];l[i]=c;var d=n&&n.apply(null,l);if(d!=null){typeof d!="object"&&(o[0]=d,d=o);for(var s=0;s<d.length;s++){var m=e[s],h=d[s],_=f[m],g=a[m];g&&(g[p]=h),h<_[0]&&(_[0]=h),h>_[1]&&(_[1]=h)}}}},r.prototype.lttbDownSample=function(t,e){var n=this.clone([t],!0),a=n._chunks,o=a[t],i=this.count(),u=0,l=Math.floor(1/e),f=this.getRawIndex(0),s,c,p,v=new(S_(this._rawCount))(Math.min((Math.ceil(i/l)+2)*2,i));v[u++]=f;for(var d=1;d<i-1;d+=l){for(var m=Math.min(d+l,i-1),h=Math.min(d+l*2,i),_=(h+m)/2,g=0,y=m;y<h;y++){var D=this.getRawIndex(y),b=o[D];isNaN(b)||(g+=b)}g/=h-m;var C=d,x=Math.min(d+l,i),w=d-1,S=o[f];s=-1,p=C;for(var E=-1,M=0,y=C;y<x;y++){var D=this.getRawIndex(y),b=o[D];if(isNaN(b)){M++,E<0&&(E=D);continue}c=Math.abs((w-_)*(b-S)-(w-y)*(g-S)),c>s&&(s=c,p=D)}M>0&&M<x-C&&(v[u++]=Math.min(E,p),p=Math.max(E,p)),v[u++]=p,f=p}return v[u++]=this.getRawIndex(i-1),n._count=u,n._indices=v,n.getRawIndex=this._getRawIdx,n},r.prototype.downSample=function(t,e,n,a){for(var o=this.clone([t],!0),i=o._chunks,u=[],l=Math.floor(1/e),f=i[t],s=this.count(),c=o._rawExtent[t]=Bv(),p=new(S_(this._rawCount))(Math.ceil(s/l)),v=0,d=0;d<s;d+=l){l>s-d&&(l=s-d,u.length=l);for(var m=0;m<l;m++){var h=this.getRawIndex(d+m);u[m]=f[h]}var _=n(u),g=this.getRawIndex(Math.min(d+a(u,_)||0,s-1));f[g]=_,_<c[0]&&(c[0]=_),_>c[1]&&(c[1]=_),p[v++]=g}return o._count=v,o._indices=p,o._updateGetRawIdx(),o},r.prototype.each=function(t,e){if(this._count)for(var n=t.length,a=this._chunks,o=0,i=this.count();o<i;o++){var u=this.getRawIndex(o);switch(n){case 0:e(o);break;case 1:e(a[t[0]][u],o);break;case 2:e(a[t[0]][u],a[t[1]][u],o);break;default:for(var l=0,f=[];l<n;l++)f[l]=a[t[l]][u];f[l]=o,e.apply(null,f)}}},r.prototype.getDataExtent=function(t){var e=this._chunks[t],n=Bv();if(!e)return n;var a=this.count(),o=!this._indices,i;if(o)return this._rawExtent[t].slice();if(i=this._extent[t],i)return i.slice();i=n;for(var u=i[0],l=i[1],f=0;f<a;f++){var s=this.getRawIndex(f),c=e[s];c<u&&(u=c),c>l&&(l=c)}return i=[u,l],this._extent[t]=i,i},r.prototype.getRawDataItem=function(t){var e=this.getRawIndex(t);if(this._provider.persistent)return this._provider.getItem(e);for(var n=[],a=this._chunks,o=0;o<a.length;o++)n.push(a[o][e]);return n},r.prototype.clone=function(t,e){var n=new r,a=this._chunks,o=t&&Bn(t,function(u,l){return u[l]=!0,u},{});if(o)for(var i=0;i<a.length;i++)n._chunks[i]=o[i]?vst(a[i]):a[i];else n._chunks=a;return this._copyCommonProps(n),e||(n._indices=this._cloneIndices()),n._updateGetRawIdx(),n},r.prototype._copyCommonProps=function(t){t._count=this._count,t._rawCount=this._rawCount,t._provider=this._provider,t._dimensions=this._dimensions,t._extent=lt(this._extent),t._rawExtent=lt(this._rawExtent)},r.prototype._cloneIndices=function(){if(this._indices){var t=this._indices.constructor,e=void 0;if(t===Array){var n=this._indices.length;e=new t(n);for(var a=0;a<n;a++)e[a]=this._indices[a]}else e=new t(this._indices);return e}return null},r.prototype._getRawIdxIdentity=function(t){return t},r.prototype._getRawIdx=function(t){return t<this._count&&t>=0?this._indices[t]:-1},r.prototype._updateGetRawIdx=function(){this.getRawIndex=this._indices?this._getRawIdx:this._getRawIdxIdentity},r.internalField=(function(){function t(e,n,a,o){return ei(e[o],this._dimensions[o])}hA={arrayRows:t,objectRows:function(e,n,a,o){return ei(e[n],this._dimensions[o])},keyedColumns:t,original:function(e,n,a,o){var i=e&&(e.value==null?e:e.value);return ei(i instanceof Array?i[o]:i,this._dimensions[o])},typedArray:function(e,n,a,o){return e[o]}}})(),r})(),E_=dst;var eC=(function(){function r(t){this._sourceList=[],this._storeList=[],this._upstreamSignList=[],this._versionSignBase=0,this._dirty=!0,this._sourceHost=t}return r.prototype.dirty=function(){this._setLocalSource([],[]),this._storeList=[],this._dirty=!0},r.prototype._setLocalSource=function(t,e){this._sourceList=t,this._upstreamSignList=e,this._versionSignBase++,this._versionSignBase>9e10&&(this._versionSignBase=0)},r.prototype._getVersionSign=function(){return this._sourceHost.uid+"_"+this._versionSignBase},r.prototype.prepareSource=function(){this._isDirty()&&(this._createSource(),this._dirty=!1)},r.prototype._createSource=function(){this._setLocalSource([],[]);var t=this._sourceHost,e=this._getUpstreamSourceManagers(),n=!!e.length,a,o;if(tC(t)){var i=t,u=void 0,l=void 0,f=void 0;if(n){var s=e[0];s.prepareSource(),f=s.getSource(),u=f.data,l=f.sourceFormat,o=[s._getVersionSign()]}else u=i.get("data",!0),l=Jr(u)?wo:Rn,o=[];var c=this._getSourceMetaRawOption()||{},p=f&&f.metaRawOption||{},v=Tt(c.seriesLayoutBy,p.seriesLayoutBy)||null,d=Tt(c.sourceHeader,p.sourceHeader),m=Tt(c.dimensions,p.dimensions),h=v!==p.seriesLayoutBy||!!d!=!!p.sourceHeader||m;a=h?[w_(u,{seriesLayoutBy:v,sourceHeader:d,dimensions:m},l)]:[]}else{var _=t;if(n){var g=this._applyTransform(e);a=g.sourceList,o=g.upstreamSignList}else{var y=_.get("source",!0);a=[w_(y,this._getSourceMetaRawOption(),null)],o=[]}}this._setLocalSource(a,o)},r.prototype._applyTransform=function(t){var e=this._sourceHost,n=e.get("transform",!0),a=e.get("fromTransformResult",!0);if(a!=null){var o="";t.length!==1&&$V(o)}var i,u=[],l=[];return T(t,function(f){f.prepareSource();var s=f.getSource(a||0),c="";a!=null&&!s&&$V(c),u.push(s),l.push(f._getVersionSign())}),n?i=WV(n,u,{datasetIndex:e.componentIndex}):a!=null&&(i=[FV(u[0])]),{sourceList:i,upstreamSignList:l}},r.prototype._isDirty=function(){if(this._dirty)return!0;for(var t=this._getUpstreamSourceManagers(),e=0;e<t.length;e++){var n=t[e];if(n._isDirty()||this._upstreamSignList[e]!==n._getVersionSign())return!0}},r.prototype.getSource=function(t){t=t||0;var e=this._sourceList[t];if(!e){var n=this._getUpstreamSourceManagers();return n[0]&&n[0].getSource(t)}return e},r.prototype.getSharedDataStore=function(t){var e=t.makeStoreSchema();return this._innerGetDataStore(e.dimensions,t.source,e.hash)},r.prototype._innerGetDataStore=function(t,e,n){var a=0,o=this._storeList,i=o[a];i||(i=o[a]={});var u=i[n];if(!u){var l=this._getUpstreamSourceManagers()[0];tC(this._sourceHost)&&l?u=l._innerGetDataStore(t,e,n):(u=new E_,u.initData(new Qb(e,t.length),t)),i[n]=u}return u},r.prototype._getUpstreamSourceManagers=function(){var t=this._sourceHost;if(tC(t)){var e=Gb(t);return e?[e.getSourceManager()]:[]}else return U(sV(t),function(n){return n.getSourceManager()})},r.prototype._getSourceMetaRawOption=function(){var t=this._sourceHost,e,n,a;if(tC(t))e=t.get("seriesLayoutBy",!0),n=t.get("sourceHeader",!0),a=t.get("dimensions",!0);else if(!this._getUpstreamSourceManagers().length){var o=t;e=o.get("seriesLayoutBy",!0),n=o.get("sourceHeader",!0),a=o.get("dimensions",!0)}return{seriesLayoutBy:e,sourceHeader:n,dimensions:a}},r})();function gA(r){var t=r.option.transform;t&&zs(r.option.transform)}function tC(r){return r.mainType==="series"}function $V(r){throw new Error(r)}var qV="line-height:1";function JV(r,t){var e=r.color||"#6e7079",n=r.fontSize||12,a=r.fontWeight||"400",o=r.color||"#464646",i=r.fontSize||14,u=r.fontWeight||"900";return t==="html"?{nameStyle:"font-size:"+Vn(n+"")+"px;color:"+Vn(e)+";font-weight:"+Vn(a+""),valueStyle:"font-size:"+Vn(i+"")+"px;color:"+Vn(o)+";font-weight:"+Vn(u+"")}:{nameStyle:{fontSize:n,fill:e,fontWeight:a},valueStyle:{fontSize:i,fill:o,fontWeight:u}}}var mst=[0,10,20,30],hst=["",`+`,`++`,`+++`];function nr(r,t){return t.type=r,t}function yA(r){return r.type==="section"}function jV(r){return yA(r)?_st:gst}function YV(r){if(yA(r)){var t=0,e=r.blocks.length,n=e>1||e>0&&!r.noHeader;return T(r.blocks,function(a){var o=YV(a);o>=t&&(t=o+ +(n&&(!o||yA(a)&&!a.noHeader)))}),t}return 0}function _st(r,t,e,n){var a=t.noHeader,o=yst(YV(t)),i=[],u=t.blocks||[];ur(!u||O(u)),u=u||[];var l=r.orderMode;if(t.sortBlocks&&l){u=u.slice();var f={valueAsc:"asc",valueDesc:"desc"};if(st(f,l)){var s=new Xb(f[l],null);u.sort(function(d,m){return s.evaluate(d.sortParam,m.sortParam)})}else l==="seriesDesc"&&u.reverse()}T(u,function(d,m){var h=t.valueFormatter,_=jV(d)(h?N(N({},r),{valueFormatter:h}):r,d,m>0?o.html:0,n);_!=null&&i.push(_)});var c=r.renderMode==="richText"?i.join(o.richText):DA(i.join(""),a?e:o.html);if(a)return c;var p=Ub(t.header,"ordinal",r.useUTC),v=JV(n,r.renderMode).nameStyle;return r.renderMode==="richText"?QV(r,p,v)+o.richText+c:DA('<div style="'+v+";"+qV+';">'+Vn(p)+"</div>"+c,e)}function gst(r,t,e,n){var a=r.renderMode,o=t.noName,i=t.noValue,u=!t.markerType,l=t.name,f=r.useUTC,s=t.valueFormatter||r.valueFormatter||function(D){return D=O(D)?D:[D],U(D,function(b,C){return Ub(b,O(v)?v[C]:v,f)})};if(!(o&&i)){var c=u?"":r.markupStyleCreator.makeTooltipMarker(t.markerType,t.markerColor||"#333",a),p=o?"":Ub(l,"ordinal",f),v=t.valueType,d=i?[]:s(t.value,t.dataIndex),m=!u||!o,h=!u&&o,_=JV(n,a),g=_.nameStyle,y=_.valueStyle;return a==="richText"?(u?"":c)+(o?"":QV(r,p,g))+(i?"":Cst(r,d,m,h,y)):DA((u?"":c)+(o?"":Dst(p,!u,g))+(i?"":bst(d,m,h,y)),e)}}function bA(r,t,e,n,a,o){if(r){var i=jV(r),u={useUTC:a,renderMode:e,orderMode:n,markupStyleCreator:t,valueFormatter:r.valueFormatter};return i(u,r,0,o)}}function yst(r){return{html:mst[r],richText:hst[r]}}function DA(r,t){var e='<div style="clear:both"></div>',n="margin: "+t+"px 0 0";return'<div style="'+n+";"+qV+';">'+r+e+"</div>"}function Dst(r,t,e){var n=t?"margin-left:2px":"";return'<span style="'+e+";"+n+'">'+Vn(r)+"</span>"}function bst(r,t,e,n){var a=e?"10px":"20px",o=t?"float:right;margin-left:"+a:"";return r=O(r)?r:[r],'<span style="'+o+";"+n+'">'+U(r,function(i){return Vn(i)}).join("&nbsp;&nbsp;")+"</span>"}function QV(r,t,e){return r.markupStyleCreator.wrapRichTextStyle(t,e)}function Cst(r,t,e,n,a){var o=[a],i=n?10:20;return e&&o.push({padding:[0,0,0,i],align:"right"}),r.markupStyleCreator.wrapRichTextStyle(O(t)?t.join("  "):t,o)}function rC(r,t){var e=r.getData().getItemVisual(t,"style"),n=e[r.visualDrawType];return Ii(n)}function nC(r,t){var e=r.get("padding");return e??(t==="richText"?[8,10]:10)}var aC=(function(){function r(){this.richTextStyles={},this._nextStyleNameId=X0()}return r.prototype._generateStyleName=function(){return"__EC_aUTo_"+this._nextStyleNameId++},r.prototype.makeTooltipMarker=function(t,e,n){var a=n==="richText"?this._generateStyleName():null,o=nV({color:e,type:t,renderMode:n,markerId:a});return V(o)?o:(this.richTextStyles[a]=o.style,o.content)},r.prototype.wrapRichTextStyle=function(t,e){var n={};O(e)?T(e,function(o){return N(n,o)}):N(n,e);var a=this._generateStyleName();return this.richTextStyles[a]=n,"{"+a+"|"+t+"}"},r})();function oC(r){var t=r.series,e=r.dataIndex,n=r.multipleSeries,a=t.getData(),o=a.mapDimensionsAll("defaultedTooltip"),i=o.length,u=t.getRawValue(e),l=O(u),f=rC(t,e),s,c,p,v;if(i>1||l&&!i){var d=Tst(u,t,e,o,f);s=d.inlineValues,c=d.inlineValueTypes,p=d.blocks,v=d.inlineValues[0]}else if(i){var m=a.getDimensionInfo(o[0]);v=s=xl(a,e,o[0]),c=m.type}else v=s=l?u[0]:u;var h=gv(t),_=h&&t.name||"",g=a.getName(e),y=n?_:g;return nr("section",{header:_,noHeader:n||!h,sortParam:v,blocks:[nr("nameValue",{markerType:"item",markerColor:f,name:y,noName:!yn(y),value:s,valueType:c,dataIndex:e})].concat(p||[])})}function Tst(r,t,e,n,a){var o=t.getData(),i=Bn(r,function(c,p,v){var d=o.getDimensionInfo(v);return c=c||d&&d.tooltip!==!1&&d.displayName!=null},!1),u=[],l=[],f=[];n.length?T(n,function(c){s(xl(o,e,c),c)}):T(r,s);function s(c,p){var v=o.getDimensionInfo(p);!v||v.otherDims.tooltip===!1||(i?f.push(nr("nameValue",{markerType:"subItem",markerColor:a,name:v.displayName,value:c,valueType:v.type})):(u.push(c),l.push(v.type)))}return{inlineValues:u,inlineValueTypes:l,blocks:f}}var Rf=St();function iC(r,t){return r.getName(t)||r.getId(t)}var M_="__universalTransitionEnabled",uC=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e._selectedDataIndicesMap={},e}return t.prototype.init=function(e,n,a){this.seriesIndex=this.componentIndex,this.dataTask=Lf({count:wst,reset:Sst}),this.dataTask.context={model:this},this.mergeDefaultAndTheme(e,a);var o=Rf(this).sourceManager=new eC(this);o.prepareSource();var i=this.getInitialData(e,a);XV(i,this),this.dataTask.context.data=i,Rf(this).dataBeforeProcessed=i,ZV(this),this._initSelectedMapFromData(i)},t.prototype.mergeDefaultAndTheme=function(e,n){var a=Ff(this),o=a?Ko(e):{},i=this.subType;Gt.hasClass(i)&&(i+="Series"),Et(e,n.getTheme().get(this.subType)),Et(e,this.getDefaultOption()),Co(e,"label",["show"]),this.fillDataTextStyle(e.data),a&&no(e,o,a)},t.prototype.mergeOption=function(e,n){e=Et(this.option,e,!0),this.fillDataTextStyle(e.data);var a=Ff(this);a&&no(this.option,e,a);var o=Rf(this).sourceManager;o.dirty(),o.prepareSource();var i=this.getInitialData(e,n);XV(i,this),this.dataTask.dirty(),this.dataTask.context.data=i,Rf(this).dataBeforeProcessed=i,ZV(this),this._initSelectedMapFromData(i)},t.prototype.fillDataTextStyle=function(e){if(e&&!Jr(e))for(var n=["show"],a=0;a<e.length;a++)e[a]&&e[a].label&&Co(e[a],"label",n)},t.prototype.getInitialData=function(e,n){},t.prototype.appendData=function(e){var n=this.getRawData();n.appendData(e.data)},t.prototype.getData=function(e){var n=CA(this);if(n){var a=n.context.data;return e==null?a:a.getLinkedData(e)}else return Rf(this).data},t.prototype.getAllData=function(){var e=this.getData();return e&&e.getLinkedDataAll?e.getLinkedDataAll():[{data:e}]},t.prototype.setData=function(e){var n=CA(this);if(n){var a=n.context;a.outputData=e,n!==this.dataTask&&(a.data=e)}Rf(this).data=e},t.prototype.getEncode=function(){var e=this.get("encode",!0);if(e)return Z(e)},t.prototype.getSourceManager=function(){return Rf(this).sourceManager},t.prototype.getSource=function(){return this.getSourceManager().getSource()},t.prototype.getRawData=function(){return Rf(this).dataBeforeProcessed},t.prototype.getColorBy=function(){var e=this.get("colorBy");return e||"series"},t.prototype.isColorBySeries=function(){return this.getColorBy()==="series"},t.prototype.getBaseAxis=function(){var e=this.coordinateSystem;return e&&e.getBaseAxis&&e.getBaseAxis()},t.prototype.formatTooltip=function(e,n,a){return oC({series:this,dataIndex:e,multipleSeries:n})},t.prototype.isAnimationEnabled=function(){var e=this.ecModel;if(Kt.node&&!(e&&e.ssr))return!1;var n=this.getShallow("animation");return n&&this.getData().count()>this.getShallow("animationThreshold")&&(n=!1),!!n},t.prototype.restoreData=function(){this.dataTask.dirty()},t.prototype.getColorFromPalette=function(e,n,a){var o=this.ecModel,i=y_.prototype.getColorFromPalette.call(this,e,n,a);return i||(i=o.getColorFromPalette(e,n,a)),i},t.prototype.coordDimToDataDim=function(e){return this.getRawData().mapDimensionsAll(e)},t.prototype.getProgressive=function(){return this.get("progressive")},t.prototype.getProgressiveThreshold=function(){return this.get("progressiveThreshold")},t.prototype.select=function(e,n){this._innerSelect(this.getData(n),e)},t.prototype.unselect=function(e,n){var a=this.option.selectedMap;if(a){var o=this.option.selectedMode,i=this.getData(n);if(o==="series"||a==="all"){this.option.selectedMap={},this._selectedDataIndicesMap={};return}for(var u=0;u<e.length;u++){var l=e[u],f=iC(i,l);a[f]=!1,this._selectedDataIndicesMap[f]=-1}}},t.prototype.toggleSelect=function(e,n){for(var a=[],o=0;o<e.length;o++)a[0]=e[o],this.isSelected(e[o],n)?this.unselect(a,n):this.select(a,n)},t.prototype.getSelectedDataIndices=function(){if(this.option.selectedMap==="all")return[].slice.call(this.getData().getIndices());for(var e=this._selectedDataIndicesMap,n=Ft(e),a=[],o=0;o<n.length;o++){var i=e[n[o]];i>=0&&a.push(i)}return a},t.prototype.isSelected=function(e,n){var a=this.option.selectedMap;if(!a)return!1;var o=this.getData(n);return(a==="all"||a[iC(o,e)])&&!o.getItemModel(e).get(["select","disabled"])},t.prototype.isUniversalTransitionEnabled=function(){if(this[M_])return!0;var e=this.option.universalTransition;return e?e===!0?!0:e&&e.enabled:!1},t.prototype._innerSelect=function(e,n){var a,o,i=this.option,u=i.selectedMode,l=n.length;if(!(!u||!l)){if(u==="series")i.selectedMap="all";else if(u==="multiple"){nt(i.selectedMap)||(i.selectedMap={});for(var f=i.selectedMap,s=0;s<l;s++){var c=n[s],p=iC(e,c);f[p]=!0,this._selectedDataIndicesMap[p]=e.getRawIndex(c)}}else if(u==="single"||u===!0){var v=n[l-1],p=iC(e,v);i.selectedMap=(a={},a[p]=!0,a),this._selectedDataIndicesMap=(o={},o[p]=e.getRawIndex(v),o)}}},t.prototype._initSelectedMapFromData=function(e){if(!this.option.selectedMap){var n=[];e.hasItemOption&&e.each(function(a){var o=e.getRawDataItem(a);o&&o.selected&&n.push(a)}),n.length>0&&this._innerSelect(e,n)}},t.registerClass=function(e){return Gt.registerClass(e)},t.protoInitialize=(function(){var e=t.prototype;e.type="series.__base__",e.seriesIndex=0,e.ignoreStyleOnData=!1,e.hasSymbolVisual=!1,e.defaultSymbol="circle",e.visualStyleAccessPath="itemStyle",e.visualDrawType="fill"})(),t})(Gt);Ve(uC,Gv);Ve(uC,y_);eb(uC,Gt);function ZV(r){var t=r.name;gv(r)||(r.name=xst(r)||t)}function xst(r){var t=r.getRawData(),e=t.mapDimensionsAll("seriesName"),n=[];return T(e,function(a){var o=t.getDimensionInfo(a);o.displayName&&n.push(o.displayName)}),n.join(" ")}function wst(r){return r.model.getRawData().count()}function Sst(r){var t=r.model;return t.setData(t.getRawData().cloneShallow()),Est}function Est(r,t){t.outputData&&r.end>t.outputData.count()&&t.model.getRawData().cloneShallow(t.outputData)}function XV(r,t){T(Ws(r.CHANGABLE_METHODS,r.DOWNSAMPLE_METHODS),function(e){r.wrapMethod(e,gt(Mst,t))})}function Mst(r,t){var e=CA(r);return e&&e.setOutputEnd((t||this).count()),t}function CA(r){var t=(r.ecModel||{}).scheduler,e=t&&t.getPipeline(r.uid);if(e){var n=e.currentTask;if(n){var a=n.agentStubMap;a&&(n=a.get(r.uid))}return n}}var xe=uC;var TA=(function(){function r(){this.group=new at,this.uid=Xo("viewComponent")}return r.prototype.init=function(t,e){},r.prototype.render=function(t,e,n,a){},r.prototype.dispose=function(t,e){},r.prototype.updateView=function(t,e,n,a){},r.prototype.updateLayout=function(t,e,n,a){},r.prototype.updateVisual=function(t,e,n,a){},r.prototype.toggleBlurSeries=function(t,e,n){},r.prototype.eachRendered=function(t){var e=this.group;e&&e.traverse(t)},r})();yv(TA);Cf(TA);var Ee=TA;function So(){var r=St();return function(t){var e=r(t),n=t.pipelineContext,a=!!e.large,o=!!e.progressiveRender,i=e.large=!!(n&&n.large),u=e.progressiveRender=!!(n&&n.progressiveRender);return(a!==i||o!==u)&&"reset"}}var e3=St(),Ast=So(),xA=(function(){function r(){this.group=new at,this.uid=Xo("viewChart"),this.renderTask=Lf({plan:Ist,reset:Fst}),this.renderTask.context={view:this}}return r.prototype.init=function(t,e){},r.prototype.render=function(t,e,n,a){},r.prototype.highlight=function(t,e,n,a){var o=t.getData(a&&a.dataType);o&&t3(o,a,"emphasis")},r.prototype.downplay=function(t,e,n,a){var o=t.getData(a&&a.dataType);o&&t3(o,a,"normal")},r.prototype.remove=function(t,e){this.group.removeAll()},r.prototype.dispose=function(t,e){},r.prototype.updateView=function(t,e,n,a){this.render(t,e,n,a)},r.prototype.updateLayout=function(t,e,n,a){this.render(t,e,n,a)},r.prototype.updateVisual=function(t,e,n,a){this.render(t,e,n,a)},r.prototype.eachRendered=function(t){Sa(this.group,t)},r.markUpdateMethod=function(t,e){e3(t).updateMethod=e},r.protoInitialize=(function(){var t=r.prototype;t.type="chart"})(),r})();function KV(r,t,e){r&&Af(r)&&(t==="emphasis"?fa:sa)(r,e)}function t3(r,t,e){var n=jo(r,t),a=t&&t.highlightKey!=null?eB(t.highlightKey):null;n!=null?T(we(n),function(o){KV(r.getItemGraphicEl(o),e,a)}):r.eachItemGraphicEl(function(o){KV(o,e,a)})}yv(xA,["dispose"]);Cf(xA);function Ist(r){return Ast(r.model)}function Fst(r){var t=r.model,e=r.ecModel,n=r.api,a=r.payload,o=t.pipelineContext.progressiveRender,i=r.view,u=a&&e3(a).updateMethod,l=o?"incrementalPrepareRender":u&&i[u]?u:"render";return l!=="render"&&i[l](t,e,n,a),Lst[l]}var Lst={incrementalPrepareRender:{progress:function(r,t){t.view.incrementalRender(r,t.model,t.ecModel,t.api,t.payload)}},render:{forceFirstProgress:!0,progress:function(r,t){t.view.render(t.model,t.ecModel,t.api,t.payload)}}},me=xA;var lC="\0__throttleOriginMethod",r3="\0__throttleRate",n3="\0__throttleType";function A_(r,t,e){var n,a=0,o=0,i=null,u,l,f,s;t=t||0;function c(){o=new Date().getTime(),i=null,r.apply(l,f||[])}var p=function(){for(var v=[],d=0;d<arguments.length;d++)v[d]=arguments[d];n=new Date().getTime(),l=this,f=v;var m=s||t,h=s||e;s=null,u=n-(h?a:o)-m,clearTimeout(i),h?i=setTimeout(c,m):u>=0?c():i=setTimeout(c,-u),a=n};return p.clear=function(){i&&(clearTimeout(i),i=null)},p.debounceNextCall=function(v){s=v},p}function ri(r,t,e,n){var a=r[t];if(a){var o=a[lC]||a,i=a[n3],u=a[r3];if(u!==e||i!==n){if(e==null||!n)return r[t]=o;a=r[t]=A_(o,e,n==="debounce"),a[lC]=o,a[n3]=n,a[r3]=e}return a}}function wl(r,t){var e=r[t];e&&e[lC]&&(e.clear&&e.clear(),r[t]=e[lC])}var a3=St(),o3={itemStyle:Ka(NM,!0),lineStyle:Ka(PM,!0)},Rst={lineStyle:"stroke",itemStyle:"fill"};function i3(r,t){var e=r.visualStyleMapper||o3[t];return e||(console.warn("Unknown style type '"+t+"'."),o3.itemStyle)}function u3(r,t){var e=r.visualDrawType||Rst[t];return e||(console.warn("Unknown style type '"+t+"'."),"fill")}var l3={createOnAllSeries:!0,performRawSeries:!0,reset:function(r,t){var e=r.getData(),n=r.visualStyleAccessPath||"itemStyle",a=r.getModel(n),o=i3(r,n),i=o(a),u=a.getShallow("decal");u&&(e.setVisual("decal",u),u.dirty=!0);var l=u3(r,n),f=i[l],s=X(f)?f:null,c=i.fill==="auto"||i.stroke==="auto";if(!i[l]||s||c){var p=r.getColorFromPalette(r.name,null,t.getSeriesCount());i[l]||(i[l]=p,e.setVisual("colorFromPalette",!0)),i.fill=i.fill==="auto"||X(i.fill)?p:i.fill,i.stroke=i.stroke==="auto"||X(i.stroke)?p:i.stroke}if(e.setVisual("style",i),e.setVisual("drawType",l),!t.isSeriesFiltered(r)&&s)return e.setVisual("colorFromPalette",!1),{dataEach:function(v,d){var m=r.getDataParams(d),h=N({},i);h[l]=s(m),v.setItemVisual(d,"style",h)}}}},I_=new Te,f3={createOnAllSeries:!0,performRawSeries:!0,reset:function(r,t){if(!(r.ignoreStyleOnData||t.isSeriesFiltered(r))){var e=r.getData(),n=r.visualStyleAccessPath||"itemStyle",a=i3(r,n),o=e.getVisual("drawType");return{dataEach:e.hasItemOption?function(i,u){var l=i.getRawDataItem(u);if(l&&l[n]){I_.option=l[n];var f=a(I_),s=i.ensureUniqueItemVisual(u,"style");N(s,f),I_.option.decal&&(i.setItemVisual(u,"decal",I_.option.decal),I_.option.decal.dirty=!0),o in f&&i.setItemVisual(u,"colorFromPalette",!1)}}:null}}}},s3={performRawSeries:!0,overallReset:function(r){var t=Z();r.eachSeries(function(e){var n=e.getColorBy();if(!e.isColorBySeries()){var a=e.type+"-"+n,o=t.get(a);o||(o={},t.set(a,o)),a3(e).scope=o}}),r.eachSeries(function(e){if(!(e.isColorBySeries()||r.isSeriesFiltered(e))){var n=e.getRawData(),a={},o=e.getData(),i=a3(e).scope,u=e.visualStyleAccessPath||"itemStyle",l=u3(e,u);o.each(function(f){var s=o.getRawIndex(f);a[s]=f}),n.each(function(f){var s=a[f],c=o.getItemVisual(s,"colorFromPalette");if(c){var p=o.ensureUniqueItemVisual(s,"style"),v=n.getName(f)||f+"",d=n.count();p[l]=e.getColorFromPalette(v,i,d)}})}})}};var sC=Math.PI;function wA(r,t){t=t||{},et(t,{text:"loading",textColor:"#000",fontSize:12,fontWeight:"normal",fontStyle:"normal",fontFamily:"sans-serif",maskColor:"rgba(255, 255, 255, 0.8)",showSpinner:!0,color:"#5470c6",spinnerRadius:10,lineWidth:5,zlevel:0});var e=new at,n=new Rt({style:{fill:t.maskColor},zlevel:t.zlevel,z:1e4});e.add(n);var a=new Wt({style:{text:t.text,fill:t.textColor,fontSize:t.fontSize,fontWeight:t.fontWeight,fontStyle:t.fontStyle,fontFamily:t.fontFamily},zlevel:t.zlevel,z:10001}),o=new Rt({style:{fill:"none"},textContent:a,textConfig:{position:"right",distance:10},zlevel:t.zlevel,z:10001});e.add(o);var i;return t.showSpinner&&(i=new l_({shape:{startAngle:-sC/2,endAngle:-sC/2+.1,r:t.spinnerRadius},style:{stroke:t.color,lineCap:"round",lineWidth:t.lineWidth},zlevel:t.zlevel,z:10001}),i.animateShape(!0).when(1e3,{endAngle:sC*3/2}).start("circularInOut"),i.animateShape(!0).when(1e3,{startAngle:sC*3/2}).delay(300).start("circularInOut"),e.add(i)),e.resize=function(){var u=a.getBoundingRect().width,l=t.showSpinner?t.spinnerRadius:0,f=(r.getWidth()-l*2-(t.showSpinner&&u?10:0)-u)/2-(t.showSpinner&&u?0:5+u/2)+(t.showSpinner?0:u/2)+(u?0:l),s=r.getHeight()/2;t.showSpinner&&i.setShape({cx:f,cy:s}),o.setShape({x:f-l,y:s-l,width:l*2,height:l*2}),n.setShape({x:0,y:0,width:r.getWidth(),height:r.getHeight()})},e.resize(),e}var Pst=(function(){function r(t,e,n,a){this._stageTaskMap=Z(),this.ecInstance=t,this.api=e,n=this._dataProcessorHandlers=n.slice(),a=this._visualHandlers=a.slice(),this._allHandlers=n.concat(a)}return r.prototype.restoreData=function(t,e){t.restoreData(e),this._stageTaskMap.each(function(n){var a=n.overallTask;a&&a.dirty()})},r.prototype.getPerformArgs=function(t,e){if(t.__pipeline){var n=this._pipelineMap.get(t.__pipeline.id),a=n.context,o=!e&&n.progressiveEnabled&&(!a||a.progressiveRender)&&t.__idxInPipeline>n.blockIndex,i=o?n.step:null,u=a&&a.modDataCount,l=u!=null?Math.ceil(u/i):null;return{step:i,modBy:l,modDataCount:u}}},r.prototype.getPipeline=function(t){return this._pipelineMap.get(t)},r.prototype.updateStreamModes=function(t,e){var n=this._pipelineMap.get(t.uid),a=t.getData(),o=a.count(),i=n.progressiveEnabled&&e.incrementalPrepareRender&&o>=n.threshold,u=t.get("large")&&o>=t.get("largeThreshold"),l=t.get("progressiveChunkMode")==="mod"?o:null;t.pipelineContext=n.context={progressiveRender:i,modDataCount:l,large:u}},r.prototype.restorePipelines=function(t){var e=this,n=e._pipelineMap=Z();t.eachSeries(function(a){var o=a.getProgressive(),i=a.uid;n.set(i,{id:i,head:null,tail:null,threshold:a.getProgressiveThreshold(),progressiveEnabled:o&&!(a.preventIncremental&&a.preventIncremental()),blockIndex:-1,step:Math.round(o||700),count:0}),e._pipe(a,a.dataTask)})},r.prototype.prepareStageTasks=function(){var t=this._stageTaskMap,e=this.api.getModel(),n=this.api;T(this._allHandlers,function(a){var o=t.get(a.uid)||t.set(a.uid,{}),i="";ur(!(a.reset&&a.overallReset),i),a.reset&&this._createSeriesStageTask(a,o,e,n),a.overallReset&&this._createOverallStageTask(a,o,e,n)},this)},r.prototype.prepareView=function(t,e,n,a){var o=t.renderTask,i=o.context;i.model=e,i.ecModel=n,i.api=a,o.__block=!t.incrementalPrepareRender,this._pipe(e,o)},r.prototype.performDataProcessorTasks=function(t,e){this._performStageTasks(this._dataProcessorHandlers,t,e,{block:!0})},r.prototype.performVisualTasks=function(t,e,n){this._performStageTasks(this._visualHandlers,t,e,n)},r.prototype._performStageTasks=function(t,e,n,a){a=a||{};var o=!1,i=this;T(t,function(l,f){if(!(a.visualType&&a.visualType!==l.visualType)){var s=i._stageTaskMap.get(l.uid),c=s.seriesTaskMap,p=s.overallTask;if(p){var v,d=p.agentStubMap;d.each(function(h){u(a,h)&&(h.dirty(),v=!0)}),v&&p.dirty(),i.updatePayload(p,n);var m=i.getPerformArgs(p,a.block);d.each(function(h){h.perform(m)}),p.perform(m)&&(o=!0)}else c&&c.each(function(h,_){u(a,h)&&h.dirty();var g=i.getPerformArgs(h,a.block);g.skip=!l.performRawSeries&&e.isSeriesFiltered(h.context.model),i.updatePayload(h,n),h.perform(g)&&(o=!0)})}});function u(l,f){return l.setDirty&&(!l.dirtyMap||l.dirtyMap.get(f.__pipeline.id))}this.unfinished=o||this.unfinished},r.prototype.performSeriesTasks=function(t){var e;t.eachSeries(function(n){e=n.dataTask.perform()||e}),this.unfinished=e||this.unfinished},r.prototype.plan=function(){this._pipelineMap.each(function(t){var e=t.tail;do{if(e.__block){t.blockIndex=e.__idxInPipeline;break}e=e.getUpstream()}while(e)})},r.prototype.updatePayload=function(t,e){e!=="remain"&&(t.context.payload=e)},r.prototype._createSeriesStageTask=function(t,e,n,a){var o=this,i=e.seriesTaskMap,u=e.seriesTaskMap=Z(),l=t.seriesType,f=t.getTargetSeries;t.createOnAllSeries?n.eachRawSeries(s):l?n.eachRawSeriesByType(l,s):f&&f(n,a).each(s);function s(c){var p=c.uid,v=u.set(p,i&&i.get(p)||Lf({plan:kst,reset:zst,count:Gst}));v.context={model:c,ecModel:n,api:a,useClearVisual:t.isVisual&&!t.isLayout,plan:t.plan,reset:t.reset,scheduler:o},o._pipe(c,v)}},r.prototype._createOverallStageTask=function(t,e,n,a){var o=this,i=e.overallTask=e.overallTask||Lf({reset:Nst});i.context={ecModel:n,api:a,overallReset:t.overallReset,scheduler:o};var u=i.agentStubMap,l=i.agentStubMap=Z(),f=t.seriesType,s=t.getTargetSeries,c=!0,p=!1,v="";ur(!t.createOnAllSeries,v),f?n.eachRawSeriesByType(f,d):s?s(n,a).each(d):(c=!1,T(n.getSeries(),d));function d(m){var h=m.uid,_=l.set(h,u&&u.get(h)||(p=!0,Lf({reset:Ost,onDirty:Hst})));_.context={model:m,overallProgress:c},_.agent=i,_.__block=c,o._pipe(m,_)}p&&i.dirty()},r.prototype._pipe=function(t,e){var n=t.uid,a=this._pipelineMap.get(n);!a.head&&(a.head=e),a.tail&&a.tail.pipe(e),a.tail=e,e.__idxInPipeline=a.count++,e.__pipeline=a},r.wrapStageHandler=function(t,e){return X(t)&&(t={overallReset:t,seriesType:Bst(t)}),t.uid=Xo("stageHandler"),e&&(t.visualType=e),t},r})();function Nst(r){r.overallReset(r.ecModel,r.api,r.payload)}function Ost(r){return r.overallProgress&&Ust}function Ust(){this.agent.dirty(),this.getDownstream().dirty()}function Hst(){this.agent&&this.agent.dirty()}function kst(r){return r.plan?r.plan(r.model,r.ecModel,r.api,r.payload):null}function zst(r){r.useClearVisual&&r.data.clearAllVisual();var t=r.resetDefines=we(r.reset(r.model,r.ecModel,r.api,r.payload));return t.length>1?U(t,function(e,n){return c3(n)}):Wst}var Wst=c3(0);function c3(r){return function(t,e){var n=e.data,a=e.resetDefines[r];if(a&&a.dataEach)for(var o=t.start;o<t.end;o++)a.dataEach(n,o);else a&&a.progress&&a.progress(t,n)}}function Gst(r){return r.data.count()}function Bst(r){cC=null;try{r(F_,p3)}catch{}return cC}var F_={},p3={},cC;v3(F_,$b);v3(p3,qb);F_.eachSeriesByType=F_.eachRawSeriesByType=function(r){cC=r};F_.eachComponent=function(r){r.mainType==="series"&&r.subType&&(cC=r.subType)};function v3(r,t){for(var e in t.prototype)r[e]=Ye}var SA=Pst;var d3=["#37A2DA","#32C5E9","#67E0E3","#9FE6B8","#FFDB5C","#ff9f7f","#fb7293","#E062AE","#E690D1","#e7bcf3","#9d96f5","#8378EA","#96BFFF"],m3={color:d3,colorLayer:[["#37A2DA","#ffd85c","#fd7b5f"],["#37A2DA","#67E0E3","#FFDB5C","#ff9f7f","#E062AE","#9d96f5"],["#37A2DA","#32C5E9","#9FE6B8","#FFDB5C","#ff9f7f","#fb7293","#e7bcf3","#8378EA","#96BFFF"],d3]};var Ea="#B9B8CE",h3="#100C2A",pC=function(){return{axisLine:{lineStyle:{color:Ea}},splitLine:{lineStyle:{color:"#484753"}},splitArea:{areaStyle:{color:["rgba(255,255,255,0.02)","rgba(255,255,255,0.05)"]}},minorSplitLine:{lineStyle:{color:"#20203B"}}}},_3=["#4992ff","#7cffb2","#fddd60","#ff6e76","#58d9f9","#05c091","#ff8a45","#8d48e3","#dd79ff"],g3={darkMode:!0,color:_3,backgroundColor:h3,axisPointer:{lineStyle:{color:"#817f91"},crossStyle:{color:"#817f91"},label:{color:"#fff"}},legend:{textStyle:{color:Ea}},textStyle:{color:Ea},title:{textStyle:{color:"#EEF1FA"},subtextStyle:{color:"#B9B8CE"}},toolbox:{iconStyle:{borderColor:Ea}},dataZoom:{borderColor:"#71708A",textStyle:{color:Ea},brushStyle:{color:"rgba(135,163,206,0.3)"},handleStyle:{color:"#353450",borderColor:"#C5CBE3"},moveHandleStyle:{color:"#B0B6C3",opacity:.3},fillerColor:"rgba(135,163,206,0.2)",emphasis:{handleStyle:{borderColor:"#91B7F2",color:"#4D587D"},moveHandleStyle:{color:"#636D9A",opacity:.7}},dataBackground:{lineStyle:{color:"#71708A",width:1},areaStyle:{color:"#71708A"}},selectedDataBackground:{lineStyle:{color:"#87A3CE"},areaStyle:{color:"#87A3CE"}}},visualMap:{textStyle:{color:Ea}},timeline:{lineStyle:{color:Ea},label:{color:Ea},controlStyle:{color:Ea,borderColor:Ea}},calendar:{itemStyle:{color:h3},dayLabel:{color:Ea},monthLabel:{color:Ea},yearLabel:{color:Ea}},timeAxis:pC(),logAxis:pC(),valueAxis:pC(),categoryAxis:pC(),line:{symbol:"circle"},graph:{color:_3},gauge:{title:{color:Ea},axisLine:{lineStyle:{color:[[1,"rgba(207,212,219,0.2)"]]}},axisLabel:{color:Ea},detail:{color:"#EEF1FA"}},candlestick:{itemStyle:{color:"#f64e56",color0:"#54ea92",borderColor:"#f64e56",borderColor0:"#54ea92"}}};g3.categoryAxis.splitLine.show=!1;var y3=g3;var D3=(function(){function r(){}return r.prototype.normalizeQuery=function(t){var e={},n={},a={};if(V(t)){var o=Xa(t);e.mainType=o.main||null,e.subType=o.sub||null}else{var i=["Index","Name","Id"],u={name:1,dataIndex:1,dataType:1};T(t,function(l,f){for(var s=!1,c=0;c<i.length;c++){var p=i[c],v=f.lastIndexOf(p);if(v>0&&v===f.length-p.length){var d=f.slice(0,v);d!=="data"&&(e.mainType=d,e[p.toLowerCase()]=l,s=!0)}}u.hasOwnProperty(f)&&(n[f]=l,s=!0),s||(a[f]=l)})}return{cptQuery:e,dataQuery:n,otherQuery:a}},r.prototype.filter=function(t,e){var n=this.eventInfo;if(!n)return!0;var a=n.targetEl,o=n.packedEvent,i=n.model,u=n.view;if(!i||!u)return!0;var l=e.cptQuery,f=e.dataQuery;return s(l,i,"mainType")&&s(l,i,"subType")&&s(l,i,"index","componentIndex")&&s(l,i,"name")&&s(l,i,"id")&&s(f,o,"name")&&s(f,o,"dataIndex")&&s(f,o,"dataType")&&(!u.filterForExposedEvent||u.filterForExposedEvent(t,e.otherQuery,a,o));function s(c,p,v,d){return c[v]==null||p[d||v]===c[v]}},r.prototype.afterTrigger=function(){this.eventInfo=null},r})();var EA=["symbol","symbolSize","symbolRotate","symbolOffset"],b3=EA.concat(["symbolKeepAspect"]),C3={createOnAllSeries:!0,performRawSeries:!0,reset:function(r,t){var e=r.getData();if(r.legendIcon&&e.setVisual("legendIcon",r.legendIcon),!r.hasSymbolVisual)return;for(var n={},a={},o=!1,i=0;i<EA.length;i++){var u=EA[i],l=r.get(u);X(l)?(o=!0,a[u]=l):n[u]=l}if(n.symbol=n.symbol||r.defaultSymbol,e.setVisual(N({legendIcon:r.legendIcon||n.symbol,symbolKeepAspect:r.get("symbolKeepAspect")},n)),t.isSeriesFiltered(r))return;var f=Ft(a);function s(c,p){for(var v=r.getRawValue(p),d=r.getDataParams(p),m=0;m<f.length;m++){var h=f[m];c.setItemVisual(p,h,a[h](v,d))}}return{dataEach:o?s:null}}},T3={createOnAllSeries:!0,performRawSeries:!0,reset:function(r,t){if(!r.hasSymbolVisual||t.isSeriesFiltered(r))return;var e=r.getData();function n(a,o){for(var i=a.getItemModel(o),u=0;u<b3.length;u++){var l=b3[u],f=i.getShallow(l,!0);f!=null&&a.setItemVisual(o,l,f)}}return{dataEach:e.hasItemOption?n:null}}};function L_(r,t,e){switch(e){case"color":var n=r.getItemVisual(t,"style");return n[r.getVisual("drawType")];case"opacity":return r.getItemVisual(t,"style").opacity;case"symbol":case"symbolSize":case"liftZ":return r.getItemVisual(t,e);default:}}function Tu(r,t){switch(t){case"color":var e=r.getVisual("style");return e[r.getVisual("drawType")];case"opacity":return r.getVisual("style").opacity;case"symbol":case"symbolSize":case"liftZ":return r.getVisual(t);default:}}function MA(r,t,e,n){switch(e){case"color":var a=r.ensureUniqueItemVisual(t,"style");a[r.getVisual("drawType")]=n,r.setItemVisual(t,"colorFromPalette",!1);break;case"opacity":r.ensureUniqueItemVisual(t,"style").opacity=n;break;case"symbol":case"symbolSize":case"liftZ":r.setItemVisual(t,e,n);break;default:}}function vC(r,t){function e(n,a){var o=[];return n.eachComponent({mainType:"series",subType:r,query:a},function(i){o.push(i.seriesIndex)}),o}T([[r+"ToggleSelect","toggleSelect"],[r+"Select","select"],[r+"UnSelect","unselect"]],function(n){t(n[0],function(a,o,i){a=N({},a),i.dispatchAction(N(a,{type:n[1],seriesIndex:e(o,a)}))})})}function Vv(r,t,e,n,a){var o=r+t;e.isSilent(o)||n.eachComponent({mainType:"series",subType:"pie"},function(i){for(var u=i.seriesIndex,l=i.option.selectedMap,f=a.selected,s=0;s<f.length;s++)if(f[s].seriesIndex===u){var c=i.getData(),p=jo(c,a.fromActionPayload);e.trigger(o,{type:o,seriesId:i.id,name:O(p)?c.getName(p[0]):c.getName(p),selected:V(l)?l:N({},l)})}})}function x3(r,t,e){r.on("selectchanged",function(n){var a=e.getModel();n.isFromClick?(Vv("map","selectchanged",t,a,n),Vv("pie","selectchanged",t,a,n)):n.fromAction==="select"?(Vv("map","selected",t,a,n),Vv("pie","selected",t,a,n)):n.fromAction==="unselect"&&(Vv("map","unselected",t,a,n),Vv("pie","unselected",t,a,n))})}function Ri(r,t,e){for(var n;r&&!(t(r)&&(n=r,e));)r=r.__hostTarget||r.parent;return n}var Vst=Math.round(Math.random()*9),$st=typeof Object.defineProperty=="function",qst=(function(){function r(){this._id="__ec_inner_"+Vst++}return r.prototype.get=function(t){return this._guard(t)[this._id]},r.prototype.set=function(t,e){var n=this._guard(t);return $st?Object.defineProperty(n,this._id,{value:e,enumerable:!1,configurable:!0}):n[this._id]=e,this},r.prototype.delete=function(t){return this.has(t)?(delete this._guard(t)[this._id],!0):!1},r.prototype.has=function(t){return!!this._guard(t)[this._id]},r.prototype._guard=function(t){if(t!==Object(t))throw TypeError("Value of WeakMap is not a non-null object.");return t},r})(),w3=qst;var Jst=bt.extend({type:"triangle",shape:{cx:0,cy:0,width:0,height:0},buildPath:function(r,t){var e=t.cx,n=t.cy,a=t.width/2,o=t.height/2;r.moveTo(e,n-o),r.lineTo(e+a,n+o),r.lineTo(e-a,n+o),r.closePath()}}),jst=bt.extend({type:"diamond",shape:{cx:0,cy:0,width:0,height:0},buildPath:function(r,t){var e=t.cx,n=t.cy,a=t.width/2,o=t.height/2;r.moveTo(e,n-o),r.lineTo(e+a,n),r.lineTo(e,n+o),r.lineTo(e-a,n),r.closePath()}}),Yst=bt.extend({type:"pin",shape:{x:0,y:0,width:0,height:0},buildPath:function(r,t){var e=t.x,n=t.y,a=t.width/5*3,o=Math.max(a,t.height),i=a/2,u=i*i/(o-i),l=n-o+i+u,f=Math.asin(u/i),s=Math.cos(f)*i,c=Math.sin(f),p=Math.cos(f),v=i*.6,d=i*.7;r.moveTo(e-s,l+u),r.arc(e,l,i,Math.PI-f,Math.PI*2+f),r.bezierCurveTo(e+s-c*v,l+u+p*v,e,n-d,e,n),r.bezierCurveTo(e,n-d,e-s+c*v,l+u+p*v,e-s,l+u),r.closePath()}}),Qst=bt.extend({type:"arrow",shape:{x:0,y:0,width:0,height:0},buildPath:function(r,t){var e=t.height,n=t.width,a=t.x,o=t.y,i=n/3*2;r.moveTo(a,o),r.lineTo(a+i,o+e),r.lineTo(a,o+e/4*3),r.lineTo(a-i,o+e),r.lineTo(a,o),r.closePath()}}),Zst={line:mr,rect:Rt,roundRect:Rt,square:Rt,circle:wa,diamond:jst,pin:Yst,arrow:Qst,triangle:Jst},Xst={line:function(r,t,e,n,a){a.x1=r,a.y1=t+n/2,a.x2=r+e,a.y2=t+n/2},rect:function(r,t,e,n,a){a.x=r,a.y=t,a.width=e,a.height=n},roundRect:function(r,t,e,n,a){a.x=r,a.y=t,a.width=e,a.height=n,a.r=Math.min(e,n)/4},square:function(r,t,e,n,a){var o=Math.min(e,n);a.x=r,a.y=t,a.width=o,a.height=o},circle:function(r,t,e,n,a){a.cx=r+e/2,a.cy=t+n/2,a.r=Math.min(e,n)/2},diamond:function(r,t,e,n,a){a.cx=r+e/2,a.cy=t+n/2,a.width=e,a.height=n},pin:function(r,t,e,n,a){a.x=r+e/2,a.y=t+n/2,a.width=e,a.height=n},arrow:function(r,t,e,n,a){a.x=r+e/2,a.y=t+n/2,a.width=e,a.height=n},triangle:function(r,t,e,n,a){a.cx=r+e/2,a.cy=t+n/2,a.width=e,a.height=n}},R_={};T(Zst,function(r,t){R_[t]=new r});var Kst=bt.extend({type:"symbol",shape:{symbolType:"",x:0,y:0,width:0,height:0},calculateTextPosition:function(r,t,e){var n=ac(r,t,e),a=this.shape;return a&&a.symbolType==="pin"&&t.position==="inside"&&(n.y=e.y+e.height*.4),n},buildPath:function(r,t,e){var n=t.symbolType;if(n!=="none"){var a=R_[n];a||(n="rect",a=R_[n]),Xst[n](t.x,t.y,t.width,t.height,a.shape),a.buildPath(r,a.shape,e)}}});function tct(r,t){if(this.type!=="image"){var e=this.style;this.__isEmptyBrush?(e.stroke=r,e.fill=t||"#fff",e.lineWidth=2):this.shape.symbolType==="line"?e.stroke=r:e.fill=r,this.markRedraw()}}function We(r,t,e,n,a,o,i){var u=r.indexOf("empty")===0;u&&(r=r.substr(5,1).toLowerCase()+r.substr(6));var l;return r.indexOf("image://")===0?l=AM(r.slice(8),new yt(t,e,n,a),i?"center":"cover"):r.indexOf("path://")===0?l=Fv(r.slice(7),{},new yt(t,e,n,a),i?"center":"cover"):l=new Kst({shape:{symbolType:r,x:t,y:e,width:n,height:a}}),l.__isEmptyBrush=u,l.setColor=tct,o&&l.setColor(o),l}function Pi(r){return O(r)||(r=[+r,+r]),[r[0]||0,r[1]||0]}function Eo(r,t){if(r!=null)return O(r)||(r=[r,r]),[Y(r[0],t[0])||0,Y(Tt(r[1],r[0]),t[1])||0]}function Lc(r){return isFinite(r)}function ect(r,t,e){var n=t.x==null?0:t.x,a=t.x2==null?1:t.x2,o=t.y==null?0:t.y,i=t.y2==null?0:t.y2;t.global||(n=n*e.width+e.x,a=a*e.width+e.x,o=o*e.height+e.y,i=i*e.height+e.y),n=Lc(n)?n:0,a=Lc(a)?a:1,o=Lc(o)?o:0,i=Lc(i)?i:0;var u=r.createLinearGradient(n,o,a,i);return u}function rct(r,t,e){var n=e.width,a=e.height,o=Math.min(n,a),i=t.x==null?.5:t.x,u=t.y==null?.5:t.y,l=t.r==null?.5:t.r;t.global||(i=i*n+e.x,u=u*a+e.y,l=l*o),i=Lc(i)?i:.5,u=Lc(u)?u:.5,l=l>=0&&Lc(l)?l:.5;var f=r.createRadialGradient(i,u,0,i,u,l);return f}function P_(r,t,e){for(var n=t.type==="radial"?rct(r,t,e):ect(r,t,e),a=t.colorStops,o=0;o<a.length;o++)n.addColorStop(a[o].offset,a[o].color);return n}function E3(r,t){if(r===t||!r&&!t)return!1;if(!r||!t||r.length!==t.length)return!0;for(var e=0;e<r.length;e++)if(r[e]!==t[e])return!0;return!1}function dC(r){return parseInt(r,10)}function Pf(r,t,e){var n=["width","height"][t],a=["clientWidth","clientHeight"][t],o=["paddingLeft","paddingTop"][t],i=["paddingRight","paddingBottom"][t];if(e[n]!=null&&e[n]!=="auto")return parseFloat(e[n]);var u=document.defaultView.getComputedStyle(r);return(r[a]||dC(u[n])||dC(r.style[n]))-(dC(u[o])||0)-(dC(u[i])||0)|0}function nct(r,t){return!r||r==="solid"||!(t>0)?null:r==="dashed"?[4*t,2*t]:r==="dotted"?[t]:Nt(r)?[r]:O(r)?r:null}function N_(r){var t=r.style,e=t.lineDash&&t.lineWidth>0&&nct(t.lineDash,t.lineWidth),n=t.lineDashOffset;if(e){var a=t.strokeNoScale&&r.getLineScale?r.getLineScale():1;a&&a!==1&&(e=U(e,function(o){return o/a}),n/=a)}return[e,n]}var act=new Tn(!0);function mC(r){var t=r.stroke;return!(t==null||t==="none"||!(r.lineWidth>0))}function M3(r){return typeof r=="string"&&r!=="none"}function hC(r){var t=r.fill;return t!=null&&t!=="none"}function A3(r,t){if(t.fillOpacity!=null&&t.fillOpacity!==1){var e=r.globalAlpha;r.globalAlpha=t.fillOpacity*t.opacity,r.fill(),r.globalAlpha=e}else r.fill()}function I3(r,t){if(t.strokeOpacity!=null&&t.strokeOpacity!==1){var e=r.globalAlpha;r.globalAlpha=t.strokeOpacity*t.opacity,r.stroke(),r.globalAlpha=e}else r.stroke()}function _C(r,t,e){var n=Yh(t.image,t.__image,e);if(Dv(n)){var a=r.createPattern(n,t.repeat||"repeat");if(typeof DOMMatrix=="function"&&a&&a.setTransform){var o=new DOMMatrix;o.translateSelf(t.x||0,t.y||0),o.rotateSelf(0,0,(t.rotation||0)*nv),o.scaleSelf(t.scaleX||1,t.scaleY||1),a.setTransform(o)}return a}}function oct(r,t,e,n){var a,o=mC(e),i=hC(e),u=e.strokePercent,l=u<1,f=!t.path;(!t.silent||l)&&f&&t.createPathProxy();var s=t.path||act,c=t.__dirty;if(!n){var p=e.fill,v=e.stroke,d=i&&!!p.colorStops,m=o&&!!v.colorStops,h=i&&!!p.image,_=o&&!!v.image,g=void 0,y=void 0,D=void 0,b=void 0,C=void 0;(d||m)&&(C=t.getBoundingRect()),d&&(g=c?P_(r,p,C):t.__canvasFillGradient,t.__canvasFillGradient=g),m&&(y=c?P_(r,v,C):t.__canvasStrokeGradient,t.__canvasStrokeGradient=y),h&&(D=c||!t.__canvasFillPattern?_C(r,p,t):t.__canvasFillPattern,t.__canvasFillPattern=D),_&&(b=c||!t.__canvasStrokePattern?_C(r,v,t):t.__canvasStrokePattern,t.__canvasStrokePattern=D),d?r.fillStyle=g:h&&(D?r.fillStyle=D:i=!1),m?r.strokeStyle=y:_&&(b?r.strokeStyle=b:o=!1)}var x=t.getGlobalScale();s.setScale(x[0],x[1],t.segmentIgnoreThreshold);var w,S;r.setLineDash&&e.lineDash&&(a=N_(t),w=a[0],S=a[1]);var E=!0;(f||c&df)&&(s.setDPR(r.dpr),l?s.setContext(null):(s.setContext(r),E=!1),s.reset(),t.buildPath(s,t.shape,n),s.toStatic(),t.pathUpdated()),E&&s.rebuildPath(r,l?u:1),w&&(r.setLineDash(w),r.lineDashOffset=S),n||(e.strokeFirst?(o&&I3(r,e),i&&A3(r,e)):(i&&A3(r,e),o&&I3(r,e))),w&&r.setLineDash([])}function ict(r,t,e){var n=t.__image=Yh(e.image,t.__image,t,t.onload);if(!(!n||!Dv(n))){var a=e.x||0,o=e.y||0,i=t.getWidth(),u=t.getHeight(),l=n.width/n.height;if(i==null&&u!=null?i=u*l:u==null&&i!=null?u=i/l:i==null&&u==null&&(i=n.width,u=n.height),e.sWidth&&e.sHeight){var f=e.sx||0,s=e.sy||0;r.drawImage(n,f,s,e.sWidth,e.sHeight,a,o,i,u)}else if(e.sx&&e.sy){var f=e.sx,s=e.sy,c=i-f,p=u-s;r.drawImage(n,f,s,c,p,a,o,i,u)}else r.drawImage(n,a,o,i,u)}}function uct(r,t,e){var n,a=e.text;if(a!=null&&(a+=""),a){r.font=e.font||_o,r.textAlign=e.textAlign,r.textBaseline=e.textBaseline;var o=void 0,i=void 0;r.setLineDash&&e.lineDash&&(n=N_(t),o=n[0],i=n[1]),o&&(r.setLineDash(o),r.lineDashOffset=i),e.strokeFirst?(mC(e)&&r.strokeText(a,e.x,e.y),hC(e)&&r.fillText(a,e.x,e.y)):(hC(e)&&r.fillText(a,e.x,e.y),mC(e)&&r.strokeText(a,e.x,e.y)),o&&r.setLineDash([])}}var F3=["shadowBlur","shadowOffsetX","shadowOffsetY"],L3=[["lineCap","butt"],["lineJoin","miter"],["miterLimit",10]];function H3(r,t,e,n,a){var o=!1;if(!n&&(e=e||{},t===e))return!1;if(n||t.opacity!==e.opacity){oo(r,a),o=!0;var i=Math.max(Math.min(t.opacity,1),0);r.globalAlpha=isNaN(i)?du.opacity:i}(n||t.blend!==e.blend)&&(o||(oo(r,a),o=!0),r.globalCompositeOperation=t.blend||du.blend);for(var u=0;u<F3.length;u++){var l=F3[u];(n||t[l]!==e[l])&&(o||(oo(r,a),o=!0),r[l]=r.dpr*(t[l]||0))}return(n||t.shadowColor!==e.shadowColor)&&(o||(oo(r,a),o=!0),r.shadowColor=t.shadowColor||du.shadowColor),o}function R3(r,t,e,n,a){var o=O_(t,a.inHover),i=n?null:e&&O_(e,a.inHover)||{};if(o===i)return!1;var u=H3(r,o,i,n,a);if((n||o.fill!==i.fill)&&(u||(oo(r,a),u=!0),M3(o.fill)&&(r.fillStyle=o.fill)),(n||o.stroke!==i.stroke)&&(u||(oo(r,a),u=!0),M3(o.stroke)&&(r.strokeStyle=o.stroke)),(n||o.opacity!==i.opacity)&&(u||(oo(r,a),u=!0),r.globalAlpha=o.opacity==null?1:o.opacity),t.hasStroke()){var l=o.lineWidth,f=l/(o.strokeNoScale&&t.getLineScale?t.getLineScale():1);r.lineWidth!==f&&(u||(oo(r,a),u=!0),r.lineWidth=f)}for(var s=0;s<L3.length;s++){var c=L3[s],p=c[0];(n||o[p]!==i[p])&&(u||(oo(r,a),u=!0),r[p]=o[p]||c[1])}return u}function lct(r,t,e,n,a){return H3(r,O_(t,a.inHover),e&&O_(e,a.inHover),n,a)}function k3(r,t){var e=t.transform,n=r.dpr||1;e?r.setTransform(n*e[0],n*e[1],n*e[2],n*e[3],n*e[4],n*e[5]):r.setTransform(n,0,0,n,0,0)}function fct(r,t,e){for(var n=!1,a=0;a<r.length;a++){var o=r[a];n=n||o.isZeroArea(),k3(t,o),t.beginPath(),o.buildPath(t,o.shape),t.clip()}e.allClipped=n}function sct(r,t){return r&&t?r[0]!==t[0]||r[1]!==t[1]||r[2]!==t[2]||r[3]!==t[3]||r[4]!==t[4]||r[5]!==t[5]:!(!r&&!t)}var P3=1,N3=2,O3=3,U3=4;function cct(r){var t=hC(r),e=mC(r);return!(r.lineDash||!(+t^+e)||t&&typeof r.fill!="string"||e&&typeof r.stroke!="string"||r.strokePercent<1||r.strokeOpacity<1||r.fillOpacity<1)}function oo(r,t){t.batchFill&&r.fill(),t.batchStroke&&r.stroke(),t.batchFill="",t.batchStroke=""}function O_(r,t){return t&&r.__hoverStyle||r.style}function gC(r,t){Nf(r,t,{inHover:!1,viewWidth:0,viewHeight:0},!0)}function Nf(r,t,e,n){var a=t.transform;if(!t.shouldBePainted(e.viewWidth,e.viewHeight,!1,!1)){t.__dirty&=~ln,t.__isRendered=!1;return}var o=t.__clipPaths,i=e.prevElClipPaths,u=!1,l=!1;if((!i||E3(o,i))&&(i&&i.length&&(oo(r,e),r.restore(),l=u=!0,e.prevElClipPaths=null,e.allClipped=!1,e.prevEl=null),o&&o.length&&(oo(r,e),r.save(),fct(o,r,e),u=!0),e.prevElClipPaths=o),e.allClipped){t.__isRendered=!1;return}t.beforeBrush&&t.beforeBrush(),t.innerBeforeBrush();var f=e.prevEl;f||(l=u=!0);var s=t instanceof bt&&t.autoBatch&&cct(t.style);u||sct(a,f.transform)?(oo(r,e),k3(r,t)):s||oo(r,e);var c=O_(t,e.inHover);t instanceof bt?(e.lastDrawType!==P3&&(l=!0,e.lastDrawType=P3),R3(r,t,f,l,e),(!s||!e.batchFill&&!e.batchStroke)&&r.beginPath(),oct(r,t,c,s),s&&(e.batchFill=c.fill||"",e.batchStroke=c.stroke||"")):t instanceof sl?(e.lastDrawType!==O3&&(l=!0,e.lastDrawType=O3),R3(r,t,f,l,e),uct(r,t,c)):t instanceof er?(e.lastDrawType!==N3&&(l=!0,e.lastDrawType=N3),lct(r,t,f,l,e),ict(r,t,c)):t.getTemporalDisplayables&&(e.lastDrawType!==U3&&(l=!0,e.lastDrawType=U3),pct(r,t,e)),s&&n&&oo(r,e),t.innerAfterBrush(),t.afterBrush&&t.afterBrush(),e.prevEl=t,t.__dirty=0,t.__isRendered=!0}function pct(r,t,e){var n=t.getDisplayables(),a=t.getTemporalDisplayables();r.save();var o={prevElClipPaths:null,prevEl:null,allClipped:!1,viewWidth:e.viewWidth,viewHeight:e.viewHeight,inHover:e.inHover},i,u;for(i=t.getCursor(),u=n.length;i<u;i++){var l=n[i];l.beforeBrush&&l.beforeBrush(),l.innerBeforeBrush(),Nf(r,l,o,i===u-1),l.innerAfterBrush(),l.afterBrush&&l.afterBrush(),o.prevEl=l}for(var f=0,s=a.length;f<s;f++){var l=a[f];l.beforeBrush&&l.beforeBrush(),l.innerBeforeBrush(),Nf(r,l,o,f===s-1),l.innerAfterBrush(),l.afterBrush&&l.afterBrush(),o.prevEl=l}t.clearTemporalDisplayables(),t.notClear=!0,r.restore()}var AA=new w3,z3=new ul(100),W3=["symbol","symbolSize","symbolKeepAspect","color","backgroundColor","dashArrayX","dashArrayY","maxTileWidth","maxTileHeight"];function Ni(r,t){if(r==="none")return null;var e=t.getDevicePixelRatio(),n=t.getZr(),a=n.painter.type==="svg";r.dirty&&AA.delete(r);var o=AA.get(r);if(o)return o;var i=et(r,{symbol:"rect",symbolSize:1,symbolKeepAspect:!0,color:"rgba(0, 0, 0, 0.2)",backgroundColor:null,dashArrayX:5,dashArrayY:5,rotation:0,maxTileWidth:512,maxTileHeight:512});i.backgroundColor==="none"&&(i.backgroundColor=null);var u={repeat:"repeat"};return l(u),u.rotation=i.rotation,u.scaleX=u.scaleY=a?1:1/e,AA.set(r,u),r.dirty=!1,u;function l(f){for(var s=[e],c=!0,p=0;p<W3.length;++p){var v=i[W3[p]];if(v!=null&&!O(v)&&!V(v)&&!Nt(v)&&typeof v!="boolean"){c=!1;break}s.push(v)}var d;if(c){d=s.join(",")+(a?"-svg":"");var m=z3.get(d);m&&(a?f.svgElement=m:f.image=m)}var h=B3(i.dashArrayX),_=vct(i.dashArrayY),g=G3(i.symbol),y=dct(h),D=V3(_),b=!a&&la.createCanvas(),C=a&&{tag:"g",attrs:{},key:"dcl",children:[]},x=S(),w;b&&(b.width=x.width*e,b.height=x.height*e,w=b.getContext("2d")),E(),c&&z3.put(d,b||C),f.image=b,f.svgElement=C,f.svgWidth=x.width,f.svgHeight=x.height;function S(){for(var M=1,I=0,F=y.length;I<F;++I)M=VE(M,y[I]);for(var L=1,I=0,F=g.length;I<F;++I)L=VE(L,g[I].length);M*=L;var R=D*y.length*g.length;if(0)var P;return{width:Math.max(1,Math.min(M,i.maxTileWidth)),height:Math.max(1,Math.min(R,i.maxTileHeight))}}function E(){w&&(w.clearRect(0,0,b.width,b.height),i.backgroundColor&&(w.fillStyle=i.backgroundColor,w.fillRect(0,0,b.width,b.height)));for(var M=0,I=0;I<_.length;++I)M+=_[I];if(M<=0)return;for(var F=-D,L=0,R=0,P=0;F<x.height;){if(L%2===0){for(var k=R/2%g.length,H=0,G=0,j=0;H<x.width*2;){for(var rt=0,I=0;I<h[P].length;++I)rt+=h[P][I];if(rt<=0)break;if(G%2===0){var xt=(1-i.symbolSize)*.5,J=H+h[P][G]*xt,ot=F+_[L]*xt,At=h[P][G]*i.symbolSize,Mt=_[L]*i.symbolSize,ut=j/2%g[k].length;$(J,ot,At,Mt,g[k][ut])}H+=h[P][G],++j,++G,G===h[P].length&&(G=0)}++P,P===h.length&&(P=0)}F+=_[L],++R,++L,L===_.length&&(L=0)}function $(Ct,ct,ft,It,re){var Bt=a?1:e,rr=We(re,Ct*Bt,ct*Bt,ft*Bt,It*Bt,i.color,i.symbolKeepAspect);if(a){var Ge=n.painter.renderOneToVNode(rr);Ge&&C.children.push(Ge)}else gC(w,rr)}}}}function G3(r){if(!r||r.length===0)return[["rect"]];if(V(r))return[[r]];for(var t=!0,e=0;e<r.length;++e)if(!V(r[e])){t=!1;break}if(t)return G3([r]);for(var n=[],e=0;e<r.length;++e)V(r[e])?n.push([r[e]]):n.push(r[e]);return n}function B3(r){if(!r||r.length===0)return[[0,0]];if(Nt(r)){var t=Math.ceil(r);return[[t,t]]}for(var e=!0,n=0;n<r.length;++n)if(!Nt(r[n])){e=!1;break}if(e)return B3([r]);for(var a=[],n=0;n<r.length;++n)if(Nt(r[n])){var t=Math.ceil(r[n]);a.push([t,t])}else{var t=U(r[n],function(u){return Math.ceil(u)});t.length%2===1?a.push(t.concat(t)):a.push(t)}return a}function vct(r){if(!r||typeof r=="object"&&r.length===0)return[0,0];if(Nt(r)){var t=Math.ceil(r);return[t,t]}var e=U(r,function(n){return Math.ceil(n)});return r.length%2?e.concat(e):e}function dct(r){return U(r,function(t){return V3(t)})}function V3(r){for(var t=0,e=0;e<r.length;++e)t+=r[e];return r.length%2===1?t*2:t}function IA(r,t){r.eachRawSeries(function(e){if(!r.isSeriesFiltered(e)){var n=e.getData();n.hasItemVisual()&&n.each(function(i){var u=n.getItemVisual(i,"decal");if(u){var l=n.ensureUniqueItemVisual(i,"style");l.decal=Ni(u,t)}});var a=n.getVisual("decal");if(a){var o=n.getVisual("style");o.decal=Ni(a,t)}}})}var mct=new en,ni=mct;var $3={};function q3(r,t){$3[r]=t}function J3(r){return $3[r]}var hct=1,_ct=800,gct=900,yct=1e3,Dct=2e3,bct=5e3,n$=1e3,Cct=1100,WA=2e3,a$=3e3,Tct=4e3,TC=4500,xct=4600,wct=5e3,Sct=6e3,o$=7e3,i$={PROCESSOR:{FILTER:yct,SERIES_FILTER:_ct,STATISTIC:bct},VISUAL:{LAYOUT:n$,PROGRESSIVE_LAYOUT:Cct,GLOBAL:WA,CHART:a$,POST_CHART_LAYOUT:xct,COMPONENT:Tct,BRUSH:wct,CHART_ITEM:TC,ARIA:Sct,DECAL:o$}},ma="__flagInMainProcess",io="__pendingUpdate",FA="__needsUpdateStatus",j3=/^[a-zA-Z0-9_]+$/,LA="__connectUpdateStatus",Y3=0,Ect=1,Mct=2;function u$(r){return function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];if(this.isDisposed()){this.id;return}return f$(this,r,t)}}function l$(r){return function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return f$(this,r,t)}}function f$(r,t,e){return e[0]=e[0]&&e[0].toLowerCase(),en.prototype[t].apply(r,e)}var s$=(function(r){A(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return t})(en),c$=s$.prototype;c$.on=l$("on");c$.off=l$("off");var $v,RA,yC,Of,PA,NA,OA,U_,H_,Q3,Z3,UA,X3,DC,K3,p$,ai,t$,v$=(function(r){A(t,r);function t(e,n,a){var o=r.call(this,new D3)||this;o._chartsViews=[],o._chartsMap={},o._componentsViews=[],o._componentsMap={},o._pendingActions=[],a=a||{},V(n)&&(n=d$[n]),o._dom=e;var i="canvas",u="auto",l=!1;if(0)var f;a.ssr&&FW(function(v){var d=vt(v),m=d.dataIndex;if(m!=null){var h=Z();return h.set("series_index",d.seriesIndex),h.set("data_index",m),d.ssrType&&h.set("ssr_type",d.ssrType),h}});var s=o._zr=zE(e,{renderer:a.renderer||i,devicePixelRatio:a.devicePixelRatio,width:a.width,height:a.height,ssr:a.ssr,useDirtyRect:Tt(a.useDirtyRect,l),useCoarsePointer:Tt(a.useCoarsePointer,u),pointerSize:a.pointerSize});o._ssr=a.ssr,o._throttledZrFlush=A_(Q(s.flush,s),17),n=lt(n),n&&Jb(n,!0),o._theme=n,o._locale=jB(a.locale||Fb),o._coordSysMgr=new Cl;var c=o._api=K3(o);function p(v,d){return v.__prio-d.__prio}return qs(CC,p),qs(HA,p),o._scheduler=new SA(o,c,HA,CC),o._messageCenter=new s$,o._initEvents(),o.resize=Q(o.resize,o),s.animation.on("frame",o._onframe,o),Q3(s,o),Z3(s,o),zs(o),o}return t.prototype._onframe=function(){if(!this._disposed){t$(this);var e=this._scheduler;if(this[io]){var n=this[io].silent;this[ma]=!0;try{$v(this),Of.update.call(this,null,this[io].updateParams)}catch(l){throw this[ma]=!1,this[io]=null,l}this._zr.flush(),this[ma]=!1,this[io]=null,U_.call(this,n),H_.call(this,n)}else if(e.unfinished){var a=hct,o=this._model,i=this._api;e.unfinished=!1;do{var u=+new Date;e.performSeriesTasks(o),e.performDataProcessorTasks(o),NA(this,o),e.performVisualTasks(o),DC(this,this._model,i,"remain",{}),a-=+new Date-u}while(a>0&&e.unfinished);e.unfinished||this._zr.flush()}}},t.prototype.getDom=function(){return this._dom},t.prototype.getId=function(){return this.id},t.prototype.getZr=function(){return this._zr},t.prototype.isSSR=function(){return this._ssr},t.prototype.setOption=function(e,n,a){if(!this[ma]){if(this._disposed){this.id;return}var o,i,u;if(nt(n)&&(a=n.lazyUpdate,o=n.silent,i=n.replaceMerge,u=n.transition,n=n.notMerge),this[ma]=!0,!this._model||n){var l=new CV(this._api),f=this._theme,s=this._model=new $b;s.scheduler=this._scheduler,s.ssr=this._ssr,s.init(null,null,null,f,this._locale,l)}this._model.setOption(e,{replaceMerge:i},kA);var c={seriesTransition:u,optionChanged:!0};if(a)this[io]={silent:o,updateParams:c},this[ma]=!1,this.getZr().wakeUp();else{try{$v(this),Of.update.call(this,null,c)}catch(p){throw this[io]=null,this[ma]=!1,p}this._ssr||this._zr.flush(),this[io]=null,this[ma]=!1,U_.call(this,o),H_.call(this,o)}}},t.prototype.setTheme=function(){},t.prototype.getModel=function(){return this._model},t.prototype.getOption=function(){return this._model&&this._model.getOption()},t.prototype.getWidth=function(){return this._zr.getWidth()},t.prototype.getHeight=function(){return this._zr.getHeight()},t.prototype.getDevicePixelRatio=function(){return this._zr.painter.dpr||Kt.hasGlobalWindow&&window.devicePixelRatio||1},t.prototype.getRenderedCanvas=function(e){return this.renderToCanvas(e)},t.prototype.renderToCanvas=function(e){e=e||{};var n=this._zr.painter;return n.getRenderedCanvas({backgroundColor:e.backgroundColor||this._model.get("backgroundColor"),pixelRatio:e.pixelRatio||this.getDevicePixelRatio()})},t.prototype.renderToSVGString=function(e){e=e||{};var n=this._zr.painter;return n.renderToString({useViewBox:e.useViewBox})},t.prototype.getSvgDataURL=function(){if(Kt.svgSupported){var e=this._zr,n=e.storage.getDisplayList();return T(n,function(a){a.stopAnimation(null,!0)}),e.painter.toDataURL()}},t.prototype.getDataURL=function(e){if(this._disposed){this.id;return}e=e||{};var n=e.excludeComponents,a=this._model,o=[],i=this;T(n,function(l){a.eachComponent({mainType:l},function(f){var s=i._componentsMap[f.__viewId];s.group.ignore||(o.push(s),s.group.ignore=!0)})});var u=this._zr.painter.getType()==="svg"?this.getSvgDataURL():this.renderToCanvas(e).toDataURL("image/"+(e&&e.type||"png"));return T(o,function(l){l.group.ignore=!1}),u},t.prototype.getConnectedDataURL=function(e){if(this._disposed){this.id;return}var n=e.type==="svg",a=this.group,o=Math.min,i=Math.max,u=1/0;if(e$[a]){var l=u,f=u,s=-u,c=-u,p=[],v=e&&e.pixelRatio||this.getDevicePixelRatio();T(z_,function(y,D){if(y.group===a){var b=n?y.getZr().painter.getSvgDom().innerHTML:y.renderToCanvas(lt(e)),C=y.getDom().getBoundingClientRect();l=o(C.left,l),f=o(C.top,f),s=i(C.right,s),c=i(C.bottom,c),p.push({dom:b,left:C.left,top:C.top})}}),l*=v,f*=v,s*=v,c*=v;var d=s-l,m=c-f,h=la.createCanvas(),_=zE(h,{renderer:n?"svg":"canvas"});if(_.resize({width:d,height:m}),n){var g="";return T(p,function(y){var D=y.left-l,b=y.top-f;g+='<g transform="translate('+D+","+b+')">'+y.dom+"</g>"}),_.painter.getSvgRoot().innerHTML=g,e.connectedBackgroundColor&&_.painter.setBackgroundColor(e.connectedBackgroundColor),_.refreshImmediately(),_.painter.toDataURL()}else return e.connectedBackgroundColor&&_.add(new Rt({shape:{x:0,y:0,width:d,height:m},style:{fill:e.connectedBackgroundColor}})),T(p,function(y){var D=new er({style:{x:y.left*v-l,y:y.top*v-f,image:y.dom}});_.add(D)}),_.refreshImmediately(),h.toDataURL("image/"+(e&&e.type||"png"))}else return this.getDataURL(e)},t.prototype.convertToPixel=function(e,n){return PA(this,"convertToPixel",e,n)},t.prototype.convertFromPixel=function(e,n){return PA(this,"convertFromPixel",e,n)},t.prototype.containPixel=function(e,n){if(this._disposed){this.id;return}var a=this._model,o,i=Df(a,e);return T(i,function(u,l){l.indexOf("Models")>=0&&T(u,function(f){var s=f.coordinateSystem;if(s&&s.containPoint)o=o||!!s.containPoint(n);else if(l==="seriesModels"){var c=this._chartsMap[f.__viewId];c&&c.containPoint&&(o=o||c.containPoint(n,f))}},this)},this),!!o},t.prototype.getVisual=function(e,n){var a=this._model,o=Df(a,e,{defaultMainType:"series"}),i=o.seriesModel,u=i.getData(),l=o.hasOwnProperty("dataIndexInside")?o.dataIndexInside:o.hasOwnProperty("dataIndex")?u.indexOfRawIndex(o.dataIndex):null;return l!=null?L_(u,l,n):Tu(u,n)},t.prototype.getViewOfComponentModel=function(e){return this._componentsMap[e.__viewId]},t.prototype.getViewOfSeriesModel=function(e){return this._chartsMap[e.__viewId]},t.prototype._initEvents=function(){var e=this;T(Act,function(n){var a=function(o){var i=e.getModel(),u=o.target,l,f=n==="globalout";if(f?l={}:u&&Ri(u,function(d){var m=vt(d);if(m&&m.dataIndex!=null){var h=m.dataModel||i.getSeriesByIndex(m.seriesIndex);return l=h&&h.getDataParams(m.dataIndex,m.dataType,u)||{},!0}else if(m.eventData)return l=N({},m.eventData),!0},!0),l){var s=l.componentType,c=l.componentIndex;(s==="markLine"||s==="markPoint"||s==="markArea")&&(s="series",c=l.seriesIndex);var p=s&&c!=null&&i.getComponent(s,c),v=p&&e[p.mainType==="series"?"_chartsMap":"_componentsMap"][p.__viewId];l.event=o,l.type=n,e._$eventProcessor.eventInfo={targetEl:u,packedEvent:l,model:p,view:v},e.trigger(n,l)}};a.zrEventfulCallAtLast=!0,e._zr.on(n,a,e)}),T(k_,function(n,a){e._messageCenter.on(a,function(o){this.trigger(a,o)},e)}),T(["selectchanged"],function(n){e._messageCenter.on(n,function(a){this.trigger(n,a)},e)}),x3(this._messageCenter,this,this._api)},t.prototype.isDisposed=function(){return this._disposed},t.prototype.clear=function(){if(this._disposed){this.id;return}this.setOption({series:[]},!0)},t.prototype.dispose=function(){if(this._disposed){this.id;return}this._disposed=!0;var e=this.getDom();e&&qE(this.getDom(),BA,"");var n=this,a=n._api,o=n._model;T(n._componentsViews,function(i){i.dispose(o,a)}),T(n._chartsViews,function(i){i.dispose(o,a)}),n._zr.dispose(),n._dom=n._model=n._chartsMap=n._componentsMap=n._chartsViews=n._componentsViews=n._scheduler=n._api=n._zr=n._throttledZrFlush=n._theme=n._coordSysMgr=n._messageCenter=null,delete z_[n.id]},t.prototype.resize=function(e){if(!this[ma]){if(this._disposed){this.id;return}this._zr.resize(e);var n=this._model;if(this._loadingFX&&this._loadingFX.resize(),!!n){var a=n.resetOption("media"),o=e&&e.silent;this[io]&&(o==null&&(o=this[io].silent),a=!0,this[io]=null),this[ma]=!0;try{a&&$v(this),Of.update.call(this,{type:"resize",animation:N({duration:0},e&&e.animation)})}catch(i){throw this[ma]=!1,i}this[ma]=!1,U_.call(this,o),H_.call(this,o)}}},t.prototype.showLoading=function(e,n){if(this._disposed){this.id;return}if(nt(e)&&(n=e,e=""),e=e||"default",this.hideLoading(),!!zA[e]){var a=zA[e](this._api,n),o=this._zr;this._loadingFX=a,o.add(a)}},t.prototype.hideLoading=function(){if(this._disposed){this.id;return}this._loadingFX&&this._zr.remove(this._loadingFX),this._loadingFX=null},t.prototype.makeActionFromEvent=function(e){var n=N({},e);return n.type=k_[e.type],n},t.prototype.dispatchAction=function(e,n){if(this._disposed){this.id;return}if(nt(n)||(n={silent:!!n}),!!bC[e.type]&&this._model){if(this[ma]){this._pendingActions.push(e);return}var a=n.silent;OA.call(this,e,a);var o=n.flush;o?this._zr.flush():o!==!1&&Kt.browser.weChat&&this._throttledZrFlush(),U_.call(this,a),H_.call(this,a)}},t.prototype.updateLabelLayout=function(){ni.trigger("series:layoutlabels",this._model,this._api,{updatedSeries:[]})},t.prototype.appendData=function(e){if(this._disposed){this.id;return}var n=e.seriesIndex,a=this.getModel(),o=a.getSeriesByIndex(n);o.appendData(e),this._scheduler.unfinished=!0,this.getZr().wakeUp()},t.internalField=(function(){$v=function(c){var p=c._scheduler;p.restorePipelines(c._model),p.prepareStageTasks(),RA(c,!0),RA(c,!1),p.plan()},RA=function(c,p){for(var v=c._model,d=c._scheduler,m=p?c._componentsViews:c._chartsViews,h=p?c._componentsMap:c._chartsMap,_=c._zr,g=c._api,y=0;y<m.length;y++)m[y].__alive=!1;p?v.eachComponent(function(C,x){C!=="series"&&D(x)}):v.eachSeries(D);function D(C){var x=C.__requireNewView;C.__requireNewView=!1;var w="_ec_"+C.id+"_"+C.type,S=!x&&h[w];if(!S){var E=Xa(C.type),M=p?Ee.getClass(E.main,E.sub):me.getClass(E.sub);S=new M,S.init(v,g),h[w]=S,m.push(S),_.add(S.group)}C.__viewId=S.__id=w,S.__alive=!0,S.__model=C,S.group.__ecComponentInfo={mainType:C.mainType,index:C.componentIndex},!p&&d.prepareView(S,C,v,g)}for(var y=0;y<m.length;){var b=m[y];b.__alive?y++:(!p&&b.renderTask.dispose(),_.remove(b.group),b.dispose(v,g),m.splice(y,1),h[b.__id]===b&&delete h[b.__id],b.__id=b.group.__ecComponentInfo=null)}},yC=function(c,p,v,d,m){var h=c._model;if(h.setUpdatePayload(v),!d){T([].concat(c._componentsViews).concat(c._chartsViews),b);return}var _={};_[d+"Id"]=v[d+"Id"],_[d+"Index"]=v[d+"Index"],_[d+"Name"]=v[d+"Name"];var g={mainType:d,query:_};m&&(g.subType=m);var y=v.excludeSeriesId,D;y!=null&&(D=Z(),T(we(y),function(C){var x=cr(C,null);x!=null&&D.set(x,!0)})),h&&h.eachComponent(g,function(C){var x=D&&D.get(C.id)!=null;if(!x)if(bM(v))if(C instanceof xe)v.type===Mf&&!v.notBlur&&!C.get(["emphasis","disabled"])&&YG(C,v,c._api);else{var w=cb(C.mainType,C.componentIndex,v.name,c._api),S=w.focusSelf,E=w.dispatchers;v.type===Mf&&S&&!v.notBlur&&lb(C.mainType,C.componentIndex,c._api),E&&T(E,function(M){v.type===Mf?fa(M):sa(M)})}else vb(v)&&C instanceof xe&&(XG(C,v,c._api),DM(C),ai(c))},c),h&&h.eachComponent(g,function(C){var x=D&&D.get(C.id)!=null;x||b(c[d==="series"?"_chartsMap":"_componentsMap"][C.__viewId])},c);function b(C){C&&C.__alive&&C[p]&&C[p](C.__model,h,c._api,v)}},Of={prepareAndUpdate:function(c){$v(this),Of.update.call(this,c,{optionChanged:c.newOption!=null})},update:function(c,p){var v=this._model,d=this._api,m=this._zr,h=this._coordSysMgr,_=this._scheduler;if(v){v.setUpdatePayload(c),_.restoreData(v,c),_.performSeriesTasks(v),h.create(v,d),_.performDataProcessorTasks(v,c),NA(this,v),h.update(v,d),e(v),_.performVisualTasks(v,c),UA(this,v,d,c,p);var g=v.get("backgroundColor")||"transparent",y=v.get("darkMode");m.setBackgroundColor(g),y!=null&&y!=="auto"&&m.setDarkMode(y),ni.trigger("afterupdate",v,d)}},updateTransform:function(c){var p=this,v=this._model,d=this._api;if(v){v.setUpdatePayload(c);var m=[];v.eachComponent(function(_,g){if(_!=="series"){var y=p.getViewOfComponentModel(g);if(y&&y.__alive)if(y.updateTransform){var D=y.updateTransform(g,v,d,c);D&&D.update&&m.push(y)}else m.push(y)}});var h=Z();v.eachSeries(function(_){var g=p._chartsMap[_.__viewId];if(g.updateTransform){var y=g.updateTransform(_,v,d,c);y&&y.update&&h.set(_.uid,1)}else h.set(_.uid,1)}),e(v),this._scheduler.performVisualTasks(v,c,{setDirty:!0,dirtyMap:h}),DC(this,v,d,c,{},h),ni.trigger("afterupdate",v,d)}},updateView:function(c){var p=this._model;p&&(p.setUpdatePayload(c),me.markUpdateMethod(c,"updateView"),e(p),this._scheduler.performVisualTasks(p,c,{setDirty:!0}),UA(this,p,this._api,c,{}),ni.trigger("afterupdate",p,this._api))},updateVisual:function(c){var p=this,v=this._model;v&&(v.setUpdatePayload(c),v.eachSeries(function(d){d.getData().clearAllVisual()}),me.markUpdateMethod(c,"updateVisual"),e(v),this._scheduler.performVisualTasks(v,c,{visualType:"visual",setDirty:!0}),v.eachComponent(function(d,m){if(d!=="series"){var h=p.getViewOfComponentModel(m);h&&h.__alive&&h.updateVisual(m,v,p._api,c)}}),v.eachSeries(function(d){var m=p._chartsMap[d.__viewId];m.updateVisual(d,v,p._api,c)}),ni.trigger("afterupdate",v,this._api))},updateLayout:function(c){Of.update.call(this,c)}},PA=function(c,p,v,d){if(c._disposed){c.id;return}for(var m=c._model,h=c._coordSysMgr.getCoordinateSystems(),_,g=Df(m,v),y=0;y<h.length;y++){var D=h[y];if(D[p]&&(_=D[p](m,g,d))!=null)return _}},NA=function(c,p){var v=c._chartsMap,d=c._scheduler;p.eachSeries(function(m){d.updateStreamModes(m,v[m.__viewId])})},OA=function(c,p){var v=this,d=this.getModel(),m=c.type,h=c.escapeConnect,_=bC[m],g=_.actionInfo,y=(g.update||"update").split(":"),D=y.pop(),b=y[0]!=null&&Xa(y[0]);this[ma]=!0;var C=[c],x=!1;c.batch&&(x=!0,C=U(c.batch,function(L){return L=et(N({},L),c),L.batch=null,L}));var w=[],S,E=vb(c),M=bM(c);if(M&&yM(this._api),T(C,function(L){if(S=_.action(L,v._model,v._api),S=S||N({},L),S.type=g.event||S.type,w.push(S),M){var R=Jh(c),P=R.queryOptionMap,k=R.mainTypeSpecified,H=k?P.keys()[0]:"series";yC(v,D,L,H),ai(v)}else E?(yC(v,D,L,"series"),ai(v)):b&&yC(v,D,L,b.main,b.sub)}),D!=="none"&&!M&&!E&&!b)try{this[io]?($v(this),Of.update.call(this,c),this[io]=null):Of[D].call(this,c)}catch(L){throw this[ma]=!1,L}if(x?S={type:g.event||m,escapeConnect:h,batch:w}:S=w[0],this[ma]=!1,!p){var I=this._messageCenter;if(I.trigger(S.type,S),E){var F={type:"selectchanged",escapeConnect:h,selected:KG(d),isFromClick:c.isFromClick||!1,fromAction:c.type,fromActionPayload:c};I.trigger(F.type,F)}}},U_=function(c){for(var p=this._pendingActions;p.length;){var v=p.shift();OA.call(this,v,c)}},H_=function(c){!c&&this.trigger("updated")},Q3=function(c,p){c.on("rendered",function(v){p.trigger("rendered",v),c.animation.isFinished()&&!p[io]&&!p._scheduler.unfinished&&!p._pendingActions.length&&p.trigger("finished")})},Z3=function(c,p){c.on("mouseover",function(v){var d=v.target,m=Ri(d,Af);m&&(QG(m,v,p._api),ai(p))}).on("mouseout",function(v){var d=v.target,m=Ri(d,Af);m&&(ZG(m,v,p._api),ai(p))}).on("click",function(v){var d=v.target,m=Ri(d,function(g){return vt(g).dataIndex!=null},!0);if(m){var h=m.selected?"unselect":"select",_=vt(m);p._api.dispatchAction({type:h,dataType:_.dataType,dataIndexInside:_.dataIndex,seriesIndex:_.seriesIndex,isFromClick:!0})}})};function e(c){c.clearColorPalette(),c.eachSeries(function(p){p.clearColorPalette()})}function n(c){var p=[],v=[],d=!1;if(c.eachComponent(function(g,y){var D=y.get("zlevel")||0,b=y.get("z")||0,C=y.getZLevelKey();d=d||!!C,(g==="series"?v:p).push({zlevel:D,z:b,idx:y.componentIndex,type:g,key:C})}),d){var m=p.concat(v),h,_;qs(m,function(g,y){return g.zlevel===y.zlevel?g.z-y.z:g.zlevel-y.zlevel}),T(m,function(g){var y=c.getComponent(g.type,g.idx),D=g.zlevel,b=g.key;h!=null&&(D=Math.max(h,D)),b?(D===h&&b!==_&&D++,_=b):_&&(D===h&&D++,_=""),h=D,y.setZLevel(D)})}}UA=function(c,p,v,d,m){n(p),X3(c,p,v,d,m),T(c._chartsViews,function(h){h.__alive=!1}),DC(c,p,v,d,m),T(c._chartsViews,function(h){h.__alive||h.remove(p,v)})},X3=function(c,p,v,d,m,h){T(h||c._componentsViews,function(_){var g=_.__model;f(g,_),_.render(g,p,v,d),u(g,_),s(g,_)})},DC=function(c,p,v,d,m,h){var _=c._scheduler;m=N(m||{},{updatedSeries:p.getSeries()}),ni.trigger("series:beforeupdate",p,v,m);var g=!1;p.eachSeries(function(y){var D=c._chartsMap[y.__viewId];D.__alive=!0;var b=D.renderTask;_.updatePayload(b,d),f(y,D),h&&h.get(y.uid)&&b.dirty(),b.perform(_.getPerformArgs(b))&&(g=!0),D.group.silent=!!y.get("silent"),i(y,D),DM(y)}),_.unfinished=g||_.unfinished,ni.trigger("series:layoutlabels",p,v,m),ni.trigger("series:transition",p,v,m),p.eachSeries(function(y){var D=c._chartsMap[y.__viewId];u(y,D),s(y,D)}),o(c,p),ni.trigger("series:afterupdate",p,v,m)},ai=function(c){c[FA]=!0,c.getZr().wakeUp()},t$=function(c){c[FA]&&(c.getZr().storage.traverse(function(p){dl(p)||a(p)}),c[FA]=!1)};function a(c){for(var p=[],v=c.currentStates,d=0;d<v.length;d++){var m=v[d];m==="emphasis"||m==="blur"||m==="select"||p.push(m)}c.selected&&c.states.select&&p.push("select"),c.hoverState===t_&&c.states.emphasis?p.push("emphasis"):c.hoverState===mc&&c.states.blur&&p.push("blur"),c.useStates(p)}function o(c,p){var v=c._zr,d=v.storage,m=0;d.traverse(function(h){h.isGroup||m++}),m>p.get("hoverLayerThreshold")&&!Kt.node&&!Kt.worker&&p.eachSeries(function(h){if(!h.preventUsingHoverLayer){var _=c._chartsMap[h.__viewId];_.__alive&&_.eachRendered(function(g){g.states.emphasis&&(g.states.emphasis.hoverLayer=!0)})}})}function i(c,p){var v=c.get("blendMode")||null;p.eachRendered(function(d){d.isGroup||(d.style.blend=v)})}function u(c,p){if(!c.preventAutoZ){var v=c.get("z")||0,d=c.get("zlevel")||0;p.eachRendered(function(m){return l(m,v,d,-1/0),!0})}}function l(c,p,v,d){var m=c.getTextContent(),h=c.getTextGuideLine(),_=c.isGroup;if(_)for(var g=c.childrenRef(),y=0;y<g.length;y++)d=Math.max(l(g[y],p,v,d),d);else c.z=p,c.zlevel=v,d=Math.max(c.z2,d);if(m&&(m.z=p,m.zlevel=v,isFinite(d)&&(m.z2=d+2)),h){var D=c.textGuideLineConfig;h.z=p,h.zlevel=v,isFinite(d)&&(h.z2=d+(D&&D.showAbove?1:-1))}return d}function f(c,p){p.eachRendered(function(v){if(!dl(v)){var d=v.getTextContent(),m=v.getTextGuideLine();v.stateTransition&&(v.stateTransition=null),d&&d.stateTransition&&(d.stateTransition=null),m&&m.stateTransition&&(m.stateTransition=null),v.hasState()?(v.prevStates=v.currentStates,v.clearStates()):v.prevStates&&(v.prevStates=null)}})}function s(c,p){var v=c.getModel("stateAnimation"),d=c.isAnimationEnabled(),m=v.get("duration"),h=m>0?{duration:m,delay:v.get("delay"),easing:v.get("easing")}:null;p.eachRendered(function(_){if(_.states&&_.states.emphasis){if(dl(_))return;if(_ instanceof bt&&rB(_),_.__dirty){var g=_.prevStates;g&&_.useStates(g)}if(d){_.stateTransition=h;var y=_.getTextContent(),D=_.getTextGuideLine();y&&(y.stateTransition=h),D&&(D.stateTransition=h)}_.__dirty&&a(_)}})}K3=function(c){return new((function(p){A(v,p);function v(){return p!==null&&p.apply(this,arguments)||this}return v.prototype.getCoordinateSystems=function(){return c._coordSysMgr.getCoordinateSystems()},v.prototype.getComponentByElement=function(d){for(;d;){var m=d.__ecComponentInfo;if(m!=null)return c._model.getComponent(m.mainType,m.index);d=d.parent}},v.prototype.enterEmphasis=function(d,m){fa(d,m),ai(c)},v.prototype.leaveEmphasis=function(d,m){sa(d,m),ai(c)},v.prototype.enterBlur=function(d){sb(d),ai(c)},v.prototype.leaveBlur=function(d){n_(d),ai(c)},v.prototype.enterSelect=function(d){_M(d),ai(c)},v.prototype.leaveSelect=function(d){gM(d),ai(c)},v.prototype.getModel=function(){return c.getModel()},v.prototype.getViewOfComponentModel=function(d){return c.getViewOfComponentModel(d)},v.prototype.getViewOfSeriesModel=function(d){return c.getViewOfSeriesModel(d)},v})(qb))(c)},p$=function(c){function p(v,d){for(var m=0;m<v.length;m++){var h=v[m];h[LA]=d}}T(k_,function(v,d){c._messageCenter.on(d,function(m){if(e$[c.group]&&c[LA]!==Y3){if(m&&m.escapeConnect)return;var h=c.makeActionFromEvent(m),_=[];T(z_,function(g){g!==c&&g.group===c.group&&_.push(g)}),p(_,Y3),T(_,function(g){g[LA]!==Ect&&g.dispatchAction(h)}),p(_,Mct)}})})}})(),t})(en),GA=v$.prototype;GA.on=u$("on");GA.off=u$("off");GA.one=function(r,t,e){var n=this;function a(){for(var o=[],i=0;i<arguments.length;i++)o[i]=arguments[i];t&&t.apply&&t.apply(this,o),n.off(r,a)}this.on.call(this,r,a,e)};var Act=["click","dblclick","mouseover","mouseout","mousemove","mousedown","mouseup","globalout","contextmenu"];var bC={},k_={},HA=[],kA=[],CC=[],d$={},zA={},z_={},e$={},Ict=+new Date-0,Pne=+new Date-0,BA="_echarts_instance_";function m$(r,t,e){var n=!(e&&e.ssr);if(n){var a=Fct(r);if(a)return a}var o=new v$(r,t,e);return o.id="ec_"+Ict++,z_[o.id]=o,n&&qE(r,BA,o.id),p$(o),ni.trigger("afterinit",o),o}function Fct(r){return z_[YW(r,BA)]}function h$(r,t){d$[r]=t}function VA(r){wt(kA,r)<0&&kA.push(r)}function $A(r,t){qA(HA,r,t,Dct)}function _$(r){xC("afterinit",r)}function g$(r){xC("afterupdate",r)}function xC(r,t){ni.on(r,t)}function Ma(r,t,e){X(t)&&(e=t,t="");var n=nt(r)?r.type:[r,r={event:t}][0];r.event=(r.event||n).toLowerCase(),t=r.event,!k_[t]&&(ur(j3.test(n)&&j3.test(t)),bC[n]||(bC[n]={action:e,actionInfo:r}),k_[t]=n)}function y$(r,t){Cl.register(r,t)}function D$(r,t){qA(CC,r,t,n$,"layout")}function Uf(r,t){qA(CC,r,t,a$,"visual")}var r$=[];function qA(r,t,e,n,a){if((X(t)||nt(t))&&(e=t,t=n),!(wt(r$,e)>=0)){r$.push(e);var o=SA.wrapStageHandler(e,a);o.__prio=t,o.__raw=e,r.push(o)}}function JA(r,t){zA[r]=t}function b$(r,t,e){var n=J3("registerMap");n&&n(r,t,e)}var C$=zV;Uf(WA,l3);Uf(TC,f3);Uf(TC,s3);Uf(WA,C3);Uf(TC,T3);Uf(o$,IA);VA(Jb);$A(gct,uA);JA("default",wA);Ma({type:Mf,event:Mf,update:Mf},Ye);Ma({type:e_,event:e_,update:e_},Ye);Ma({type:xv,event:xv,update:xv},Ye);Ma({type:r_,event:r_,update:r_},Ye);Ma({type:wv,event:wv,update:wv},Ye);h$("light",m3);h$("dark",y3);var T$=[],Lct={registerPreprocessor:VA,registerProcessor:$A,registerPostInit:_$,registerPostUpdate:g$,registerUpdateLifecycle:xC,registerAction:Ma,registerCoordinateSystem:y$,registerLayout:D$,registerVisual:Uf,registerTransform:C$,registerLoading:JA,registerMap:b$,registerImpl:q3,PRIORITY:i$,ComponentModel:Gt,ComponentView:Ee,SeriesModel:xe,ChartView:me,registerComponentModel:function(r){Gt.registerClass(r)},registerComponentView:function(r){Ee.registerClass(r)},registerSeriesModel:function(r){xe.registerClass(r)},registerChartView:function(r){me.registerClass(r)},registerSubTypeDefaulter:function(r,t){Gt.registerSubTypeDefaulter(r,t)},registerPainter:function(r,t){AW(r,t)}};function Jt(r){if(O(r)){T(r,function(t){Jt(t)});return}wt(T$,r)>=0||(T$.push(r),X(r)&&(r={install:r}),r.install(Lct))}function W_(r){return r==null?0:r.length||1}function x$(r){return r}var Rct=(function(){function r(t,e,n,a,o,i){this._old=t,this._new=e,this._oldKeyGetter=n||x$,this._newKeyGetter=a||x$,this.context=o,this._diffModeMultiple=i==="multiple"}return r.prototype.add=function(t){return this._add=t,this},r.prototype.update=function(t){return this._update=t,this},r.prototype.updateManyToOne=function(t){return this._updateManyToOne=t,this},r.prototype.updateOneToMany=function(t){return this._updateOneToMany=t,this},r.prototype.updateManyToMany=function(t){return this._updateManyToMany=t,this},r.prototype.remove=function(t){return this._remove=t,this},r.prototype.execute=function(){this[this._diffModeMultiple?"_executeMultiple":"_executeOneToOne"]()},r.prototype._executeOneToOne=function(){var t=this._old,e=this._new,n={},a=new Array(t.length),o=new Array(e.length);this._initIndexMap(t,null,a,"_oldKeyGetter"),this._initIndexMap(e,n,o,"_newKeyGetter");for(var i=0;i<t.length;i++){var u=a[i],l=n[u],f=W_(l);if(f>1){var s=l.shift();l.length===1&&(n[u]=l[0]),this._update&&this._update(s,i)}else f===1?(n[u]=null,this._update&&this._update(l,i)):this._remove&&this._remove(i)}this._performRestAdd(o,n)},r.prototype._executeMultiple=function(){var t=this._old,e=this._new,n={},a={},o=[],i=[];this._initIndexMap(t,n,o,"_oldKeyGetter"),this._initIndexMap(e,a,i,"_newKeyGetter");for(var u=0;u<o.length;u++){var l=o[u],f=n[l],s=a[l],c=W_(f),p=W_(s);if(c>1&&p===1)this._updateManyToOne&&this._updateManyToOne(s,f),a[l]=null;else if(c===1&&p>1)this._updateOneToMany&&this._updateOneToMany(s,f),a[l]=null;else if(c===1&&p===1)this._update&&this._update(s,f),a[l]=null;else if(c>1&&p>1)this._updateManyToMany&&this._updateManyToMany(s,f),a[l]=null;else if(c>1)for(var v=0;v<c;v++)this._remove&&this._remove(f[v]);else this._remove&&this._remove(f)}this._performRestAdd(i,a)},r.prototype._performRestAdd=function(t,e){for(var n=0;n<t.length;n++){var a=t[n],o=e[a],i=W_(o);if(i>1)for(var u=0;u<i;u++)this._add&&this._add(o[u]);else i===1&&this._add&&this._add(o);e[a]=null}},r.prototype._initIndexMap=function(t,e,n,a){for(var o=this._diffModeMultiple,i=0;i<t.length;i++){var u="_ec_"+this[a](t[i],i);if(o||(n[i]=u),!!e){var l=e[u],f=W_(l);f===0?(e[u]=i,o&&n.push(u)):f===1?e[u]=[l,i]:l.push(i)}}},r})(),Zn=Rct;var Pct=(function(){function r(t,e){this._encode=t,this._schema=e}return r.prototype.get=function(){return{fullDimensions:this._getFullDimensionNames(),encode:this._encode}},r.prototype._getFullDimensionNames=function(){return this._cachedDimNames||(this._cachedDimNames=this._schema?this._schema.makeOutputDimensionNames():[]),this._cachedDimNames},r})();function w$(r,t){var e={},n=e.encode={},a=Z(),o=[],i=[],u={};T(r.dimensions,function(p){var v=r.getDimensionInfo(p),d=v.coordDim;if(d){var m=v.coordDimIndex;jA(n,d)[m]=p,v.isExtraCoord||(a.set(d,1),Nct(v.type)&&(o[0]=p),jA(u,d)[m]=r.getDimensionIndex(v.name)),v.defaultTooltip&&i.push(p)}zb.each(function(h,_){var g=jA(n,_),y=v.otherDims[_];y!=null&&y!==!1&&(g[y]=v.name)})});var l=[],f={};a.each(function(p,v){var d=n[v];f[v]=d[0],l=l.concat(d)}),e.dataDimsOnCoord=l,e.dataDimIndicesOnCoord=U(l,function(p){return r.getDimensionInfo(p).storeDimIndex}),e.encodeFirstDimNotExtra=f;var s=n.label;s&&s.length&&(o=s.slice());var c=n.tooltip;return c&&c.length?i=c.slice():i.length||(i=o.slice()),n.defaultedLabel=o,n.defaultedTooltip=i,e.userOutput=new Pct(u,t),e}function jA(r,t){return r.hasOwnProperty(t)||(r[t]=[]),r[t]}function Rc(r){return r==="category"?"ordinal":r==="time"?"time":"float"}function Nct(r){return!(r==="ordinal"||r==="time")}var Oct=(function(){function r(t){this.otherDims={},t!=null&&N(this,t)}return r})(),qv=Oct;var Uct=St(),Hct={float:"f",int:"i",ordinal:"o",number:"n",time:"t"},YA=(function(){function r(t){this.dimensions=t.dimensions,this._dimOmitted=t.dimensionOmitted,this.source=t.source,this._fullDimCount=t.fullDimensionCount,this._updateDimOmitted(t.dimensionOmitted)}return r.prototype.isDimensionOmitted=function(){return this._dimOmitted},r.prototype._updateDimOmitted=function(t){this._dimOmitted=t,t&&(this._dimNameMap||(this._dimNameMap=ZA(this.source)))},r.prototype.getSourceDimensionIndex=function(t){return Tt(this._dimNameMap.get(t),-1)},r.prototype.getSourceDimension=function(t){var e=this.source.dimensionsDefine;if(e)return e[t]},r.prototype.makeStoreSchema=function(){for(var t=this._fullDimCount,e=Yb(this.source),n=!XA(t),a="",o=[],i=0,u=0;i<t;i++){var l=void 0,f=void 0,s=void 0,c=this.dimensions[u];if(c&&c.storeDimIndex===i)l=e?c.name:null,f=c.type,s=c.ordinalMeta,u++;else{var p=this.getSourceDimension(i);p&&(l=e?p.name:null,f=p.type)}o.push({property:l,type:f,ordinalMeta:s}),e&&l!=null&&(!c||!c.isCalculationCoord)&&(a+=n?l.replace(/\`/g,"`1").replace(/\$/g,"`2"):l),a+="$",a+=Hct[f]||"f",s&&(a+=s.uid),a+="$"}var v=this.source,d=[v.seriesLayoutBy,v.startIndex,a].join("$$");return{dimensions:o,hash:d}},r.prototype.makeOutputDimensionNames=function(){for(var t=[],e=0,n=0;e<this._fullDimCount;e++){var a=void 0,o=this.dimensions[n];if(o&&o.storeDimIndex===e)o.isCalculationCoord||(a=o.name),n++;else{var i=this.getSourceDimension(e);i&&(a=i.name)}t.push(a)}return t},r.prototype.appendCalculationDimension=function(t){this.dimensions.push(t),t.isCalculationCoord=!0,this._fullDimCount++,this._updateDimOmitted(!0)},r})();function SC(r){return r instanceof YA}function QA(r){for(var t=Z(),e=0;e<(r||[]).length;e++){var n=r[e],a=nt(n)?n.name:n;a!=null&&t.get(a)==null&&t.set(a,e)}return t}function ZA(r){var t=Uct(r);return t.dimNameMap||(t.dimNameMap=QA(r.dimensionsDefine))}function XA(r){return r>30}var G_=nt,Hf=U,kct=typeof Int32Array>"u"?Array:Int32Array,zct="e\0\0",S$=-1,Wct=["hasItemOption","_nameList","_idList","_invertedIndicesMap","_dimSummary","userOutput","_rawData","_dimValueGetter","_nameDimIdx","_idDimIdx","_nameRepeatCount"],Gct=["_approximateExtent"],E$,EC,B_,V_,KA,MC,tI,Bct=(function(){function r(t,e){this.type="list",this._dimOmitted=!1,this._nameList=[],this._idList=[],this._visual={},this._layout={},this._itemVisuals=[],this._itemLayouts=[],this._graphicEls=[],this._approximateExtent={},this._calculationInfo={},this.hasItemOption=!1,this.TRANSFERABLE_METHODS=["cloneShallow","downSample","lttbDownSample","map"],this.CHANGABLE_METHODS=["filterSelf","selectRange"],this.DOWNSAMPLE_METHODS=["downSample","lttbDownSample"];var n,a=!1;SC(t)?(n=t.dimensions,this._dimOmitted=t.isDimensionOmitted(),this._schema=t):(a=!0,n=t),n=n||["x","y"];for(var o={},i=[],u={},l=!1,f={},s=0;s<n.length;s++){var c=n[s],p=V(c)?new qv({name:c}):c instanceof qv?c:new qv(c),v=p.name;p.type=p.type||"float",p.coordDim||(p.coordDim=v,p.coordDimIndex=0);var d=p.otherDims=p.otherDims||{};i.push(v),o[v]=p,f[v]!=null&&(l=!0),p.createInvertedIndices&&(u[v]=[]),d.itemName===0&&(this._nameDimIdx=s),d.itemId===0&&(this._idDimIdx=s),a&&(p.storeDimIndex=s)}if(this.dimensions=i,this._dimInfos=o,this._initGetDimensionInfo(l),this.hostModel=e,this._invertedIndicesMap=u,this._dimOmitted){var m=this._dimIdxToName=Z();T(i,function(h){m.set(o[h].storeDimIndex,h)})}}return r.prototype.getDimension=function(t){var e=this._recognizeDimIndex(t);if(e==null)return t;if(e=t,!this._dimOmitted)return this.dimensions[e];var n=this._dimIdxToName.get(e);if(n!=null)return n;var a=this._schema.getSourceDimension(e);if(a)return a.name},r.prototype.getDimensionIndex=function(t){var e=this._recognizeDimIndex(t);if(e!=null)return e;if(t==null)return-1;var n=this._getDimInfo(t);return n?n.storeDimIndex:this._dimOmitted?this._schema.getSourceDimensionIndex(t):-1},r.prototype._recognizeDimIndex=function(t){if(Nt(t)||t!=null&&!isNaN(t)&&!this._getDimInfo(t)&&(!this._dimOmitted||this._schema.getSourceDimensionIndex(t)<0))return+t},r.prototype._getStoreDimIndex=function(t){var e=this.getDimensionIndex(t);return e},r.prototype.getDimensionInfo=function(t){return this._getDimInfo(this.getDimension(t))},r.prototype._initGetDimensionInfo=function(t){var e=this._dimInfos;this._getDimInfo=t?function(n){return e.hasOwnProperty(n)?e[n]:void 0}:function(n){return e[n]}},r.prototype.getDimensionsOnCoord=function(){return this._dimSummary.dataDimsOnCoord.slice()},r.prototype.mapDimension=function(t,e){var n=this._dimSummary;if(e==null)return n.encodeFirstDimNotExtra[t];var a=n.encode[t];return a?a[e]:null},r.prototype.mapDimensionsAll=function(t){var e=this._dimSummary,n=e.encode[t];return(n||[]).slice()},r.prototype.getStore=function(){return this._store},r.prototype.initData=function(t,e,n){var a=this,o;if(t instanceof E_&&(o=t),!o){var i=this.dimensions,u=zv(t)||Ur(t)?new Qb(t,i.length):t;o=new E_;var l=Hf(i,function(f){return{type:a._dimInfos[f].type,property:f}});o.initData(u,l,n)}this._store=o,this._nameList=(e||[]).slice(),this._idList=[],this._nameRepeatCount={},this._doInit(0,o.count()),this._dimSummary=w$(this,this._schema),this.userOutput=this._dimSummary.userOutput},r.prototype.appendData=function(t){var e=this._store.appendData(t);this._doInit(e[0],e[1])},r.prototype.appendValues=function(t,e){var n=this._store.appendValues(t,e.length),a=n.start,o=n.end,i=this._shouldMakeIdFromName();if(this._updateOrdinalMeta(),e)for(var u=a;u<o;u++){var l=u-a;this._nameList[u]=e[l],i&&tI(this,u)}},r.prototype._updateOrdinalMeta=function(){for(var t=this._store,e=this.dimensions,n=0;n<e.length;n++){var a=this._dimInfos[e[n]];a.ordinalMeta&&t.collectOrdinalMeta(a.storeDimIndex,a.ordinalMeta)}},r.prototype._shouldMakeIdFromName=function(){var t=this._store.getProvider();return this._idDimIdx==null&&t.getSource().sourceFormat!==wo&&!t.fillStorage},r.prototype._doInit=function(t,e){if(!(t>=e)){var n=this._store,a=n.getProvider();this._updateOrdinalMeta();var o=this._nameList,i=this._idList,u=a.getSource().sourceFormat,l=u===Rn;if(l&&!a.pure)for(var f=[],s=t;s<e;s++){var c=a.getItem(s,f);if(!this.hasItemOption&&BW(c)&&(this.hasItemOption=!0),c){var p=c.name;o[s]==null&&p!=null&&(o[s]=cr(p,null));var v=c.id;i[s]==null&&v!=null&&(i[s]=cr(v,null))}}if(this._shouldMakeIdFromName())for(var s=t;s<e;s++)tI(this,s);E$(this)}},r.prototype.getApproximateExtent=function(t){return this._approximateExtent[t]||this._store.getDataExtent(this._getStoreDimIndex(t))},r.prototype.setApproximateExtent=function(t,e){e=this.getDimension(e),this._approximateExtent[e]=t.slice()},r.prototype.getCalculationInfo=function(t){return this._calculationInfo[t]},r.prototype.setCalculationInfo=function(t,e){G_(t)?N(this._calculationInfo,t):this._calculationInfo[t]=e},r.prototype.getName=function(t){var e=this.getRawIndex(t),n=this._nameList[e];return n==null&&this._nameDimIdx!=null&&(n=B_(this,this._nameDimIdx,e)),n==null&&(n=""),n},r.prototype._getCategory=function(t,e){var n=this._store.get(t,e),a=this._store.getOrdinalMeta(t);return a?a.categories[n]:n},r.prototype.getId=function(t){return EC(this,this.getRawIndex(t))},r.prototype.count=function(){return this._store.count()},r.prototype.get=function(t,e){var n=this._store,a=this._dimInfos[t];if(a)return n.get(a.storeDimIndex,e)},r.prototype.getByRawIndex=function(t,e){var n=this._store,a=this._dimInfos[t];if(a)return n.getByRawIndex(a.storeDimIndex,e)},r.prototype.getIndices=function(){return this._store.getIndices()},r.prototype.getDataExtent=function(t){return this._store.getDataExtent(this._getStoreDimIndex(t))},r.prototype.getSum=function(t){return this._store.getSum(this._getStoreDimIndex(t))},r.prototype.getMedian=function(t){return this._store.getMedian(this._getStoreDimIndex(t))},r.prototype.getValues=function(t,e){var n=this,a=this._store;return O(t)?a.getValues(Hf(t,function(o){return n._getStoreDimIndex(o)}),e):a.getValues(t)},r.prototype.hasValue=function(t){for(var e=this._dimSummary.dataDimIndicesOnCoord,n=0,a=e.length;n<a;n++)if(isNaN(this._store.get(e[n],t)))return!1;return!0},r.prototype.indexOfName=function(t){for(var e=0,n=this._store.count();e<n;e++)if(this.getName(e)===t)return e;return-1},r.prototype.getRawIndex=function(t){return this._store.getRawIndex(t)},r.prototype.indexOfRawIndex=function(t){return this._store.indexOfRawIndex(t)},r.prototype.rawIndexOf=function(t,e){var n=t&&this._invertedIndicesMap[t],a=n[e];return a==null||isNaN(a)?S$:a},r.prototype.indicesOfNearest=function(t,e,n){return this._store.indicesOfNearest(this._getStoreDimIndex(t),e,n)},r.prototype.each=function(t,e,n){"use strict";X(t)&&(n=e,e=t,t=[]);var a=n||this,o=Hf(V_(t),this._getStoreDimIndex,this);this._store.each(o,a?Q(e,a):e)},r.prototype.filterSelf=function(t,e,n){"use strict";X(t)&&(n=e,e=t,t=[]);var a=n||this,o=Hf(V_(t),this._getStoreDimIndex,this);return this._store=this._store.filter(o,a?Q(e,a):e),this},r.prototype.selectRange=function(t){"use strict";var e=this,n={},a=Ft(t),o=[];return T(a,function(i){var u=e._getStoreDimIndex(i);n[u]=t[i],o.push(u)}),this._store=this._store.selectRange(n),this},r.prototype.mapArray=function(t,e,n){"use strict";X(t)&&(n=e,e=t,t=[]),n=n||this;var a=[];return this.each(t,function(){a.push(e&&e.apply(this,arguments))},n),a},r.prototype.map=function(t,e,n,a){"use strict";var o=n||a||this,i=Hf(V_(t),this._getStoreDimIndex,this),u=MC(this);return u._store=this._store.map(i,o?Q(e,o):e),u},r.prototype.modify=function(t,e,n,a){var o=this,i=n||a||this,u=Hf(V_(t),this._getStoreDimIndex,this);this._store.modify(u,i?Q(e,i):e)},r.prototype.downSample=function(t,e,n,a){var o=MC(this);return o._store=this._store.downSample(this._getStoreDimIndex(t),e,n,a),o},r.prototype.lttbDownSample=function(t,e){var n=MC(this);return n._store=this._store.lttbDownSample(this._getStoreDimIndex(t),e),n},r.prototype.getRawDataItem=function(t){return this._store.getRawDataItem(t)},r.prototype.getItemModel=function(t){var e=this.hostModel,n=this.getRawDataItem(t);return new Te(n,e,e&&e.ecModel)},r.prototype.diff=function(t){var e=this;return new Zn(t?t.getStore().getIndices():[],this.getStore().getIndices(),function(n){return EC(t,n)},function(n){return EC(e,n)})},r.prototype.getVisual=function(t){var e=this._visual;return e&&e[t]},r.prototype.setVisual=function(t,e){this._visual=this._visual||{},G_(t)?N(this._visual,t):this._visual[t]=e},r.prototype.getItemVisual=function(t,e){var n=this._itemVisuals[t],a=n&&n[e];return a??this.getVisual(e)},r.prototype.hasItemVisual=function(){return this._itemVisuals.length>0},r.prototype.ensureUniqueItemVisual=function(t,e){var n=this._itemVisuals,a=n[t];a||(a=n[t]={});var o=a[e];return o==null&&(o=this.getVisual(e),O(o)?o=o.slice():G_(o)&&(o=N({},o)),a[e]=o),o},r.prototype.setItemVisual=function(t,e,n){var a=this._itemVisuals[t]||{};this._itemVisuals[t]=a,G_(e)?N(a,e):a[e]=n},r.prototype.clearAllVisual=function(){this._visual={},this._itemVisuals=[]},r.prototype.setLayout=function(t,e){G_(t)?N(this._layout,t):this._layout[t]=e},r.prototype.getLayout=function(t){return this._layout[t]},r.prototype.getItemLayout=function(t){return this._itemLayouts[t]},r.prototype.setItemLayout=function(t,e,n){this._itemLayouts[t]=n?N(this._itemLayouts[t]||{},e):e},r.prototype.clearItemLayouts=function(){this._itemLayouts.length=0},r.prototype.setItemGraphicEl=function(t,e){var n=this.hostModel&&this.hostModel.seriesIndex;Kh(n,this.dataType,t,e),this._graphicEls[t]=e},r.prototype.getItemGraphicEl=function(t){return this._graphicEls[t]},r.prototype.eachItemGraphicEl=function(t,e){T(this._graphicEls,function(n,a){n&&t&&t.call(e,n,a)})},r.prototype.cloneShallow=function(t){return t||(t=new r(this._schema?this._schema:Hf(this.dimensions,this._getDimInfo,this),this.hostModel)),KA(t,this),t._store=this._store,t},r.prototype.wrapMethod=function(t,e){var n=this[t];X(n)&&(this.__wrappedMethods=this.__wrappedMethods||[],this.__wrappedMethods.push(t),this[t]=function(){var a=n.apply(this,arguments);return e.apply(this,[a].concat(s0(arguments)))})},r.internalField=(function(){E$=function(t){var e=t._invertedIndicesMap;T(e,function(n,a){var o=t._dimInfos[a],i=o.ordinalMeta,u=t._store;if(i){n=e[a]=new kct(i.categories.length);for(var l=0;l<n.length;l++)n[l]=S$;for(var l=0;l<u.count();l++)n[u.get(o.storeDimIndex,l)]=l}})},B_=function(t,e,n){return cr(t._getCategory(e,n),null)},EC=function(t,e){var n=t._idList[e];return n==null&&t._idDimIdx!=null&&(n=B_(t,t._idDimIdx,e)),n==null&&(n=zct+e),n},V_=function(t){return O(t)||(t=t!=null?[t]:[]),t},MC=function(t){var e=new r(t._schema?t._schema:Hf(t.dimensions,t._getDimInfo,t),t.hostModel);return KA(e,t),e},KA=function(t,e){T(Wct.concat(e.__wrappedMethods||[]),function(n){e.hasOwnProperty(n)&&(t[n]=e[n])}),t.__wrappedMethods=e.__wrappedMethods,T(Gct,function(n){t[n]=lt(e[n])}),t._calculationInfo=N({},e._calculationInfo)},tI=function(t,e){var n=t._nameList,a=t._idList,o=t._nameDimIdx,i=t._idDimIdx,u=n[e],l=a[e];if(u==null&&o!=null&&(n[e]=u=B_(t,o,e)),l==null&&i!=null&&(a[e]=l=B_(t,i,e)),l==null&&u!=null){var f=t._nameRepeatCount,s=f[u]=(f[u]||0)+1;l=u,s>1&&(l+="__ec__"+s),a[e]=l}}})(),r})(),wr=Bct;function Oi(r,t){zv(r)||(r=Wv(r)),t=t||{};var e=t.coordDimensions||[],n=t.dimensionsDefine||r.dimensionsDefine||[],a=Z(),o=[],i=$ct(r,e,n,t.dimensionsCount),u=t.canOmitUnusedDimensions&&XA(i),l=n===r.dimensionsDefine,f=l?ZA(r):QA(n),s=t.encodeDefine;!s&&t.encodeDefaulter&&(s=t.encodeDefaulter(r,i));for(var c=Z(s),p=new _A(i),v=0;v<p.length;v++)p[v]=-1;function d(S){var E=p[S];if(E<0){var M=n[S],I=nt(M)?M:{name:M},F=new qv,L=I.name;L!=null&&f.get(L)!=null&&(F.name=F.displayName=L),I.type!=null&&(F.type=I.type),I.displayName!=null&&(F.displayName=I.displayName);var R=o.length;return p[S]=R,F.storeDimIndex=S,o.push(F),F}return o[E]}if(!u)for(var v=0;v<i;v++)d(v);c.each(function(S,E){var M=we(S).slice();if(M.length===1&&!V(M[0])&&M[0]<0){c.set(E,!1);return}var I=c.set(E,[]);T(M,function(F,L){var R=V(F)?f.get(F):F;R!=null&&R<i&&(I[L]=R,h(d(R),E,L))})});var m=0;T(e,function(S){var E,M,I,F;if(V(S))E=S,F={};else{F=S,E=F.name;var L=F.ordinalMeta;F.ordinalMeta=null,F=N({},F),F.ordinalMeta=L,M=F.dimsDef,I=F.otherDims,F.name=F.coordDim=F.coordDimIndex=F.dimsDef=F.otherDims=null}var R=c.get(E);if(R!==!1){if(R=we(R),!R.length)for(var P=0;P<(M&&M.length||1);P++){for(;m<i&&d(m).coordDim!=null;)m++;m<i&&R.push(m++)}T(R,function(k,H){var G=d(k);if(l&&F.type!=null&&(G.type=F.type),h(et(G,F),E,H),G.name==null&&M){var j=M[H];!nt(j)&&(j={name:j}),G.name=G.displayName=j.name,G.defaultTooltip=j.defaultTooltip}I&&et(G.otherDims,I)})}});function h(S,E,M){zb.get(E)!=null?S.otherDims[E]=M:(S.coordDim=E,S.coordDimIndex=M,a.set(E,!0))}var _=t.generateCoord,g=t.generateCoordCount,y=g!=null;g=_?g||1:0;var D=_||"value";function b(S){S.name==null&&(S.name=S.coordDim)}if(u)T(o,function(S){b(S)}),o.sort(function(S,E){return S.storeDimIndex-E.storeDimIndex});else for(var C=0;C<i;C++){var x=d(C),w=x.coordDim;w==null&&(x.coordDim=qct(D,a,y),x.coordDimIndex=0,(!_||g<=0)&&(x.isExtraCoord=!0),g--),b(x),x.type==null&&(Bb(r,C)===xn.Must||x.isExtraCoord&&(x.otherDims.itemName!=null||x.otherDims.seriesName!=null))&&(x.type="ordinal")}return Vct(o),new YA({source:r,dimensions:o,fullDimensionCount:i,dimensionOmitted:u})}function Vct(r){for(var t=Z(),e=0;e<r.length;e++){var n=r[e],a=n.name,o=t.get(a)||0;o>0&&(n.name=a+(o-1)),o++,t.set(a,o)}}function $ct(r,t,e,n){var a=Math.max(r.dimensionsDetectedCount||1,t.length,e.length,n||0);return T(t,function(o){var i;nt(o)&&(i=o.dimsDef)&&(a=Math.max(a,i.length))}),a}function qct(r,t,e){if(e||t.hasKey(r)){for(var n=0;t.hasKey(r+n);)n++;r+=n}return t.set(r,!0),r}var Jct=(function(){function r(t){this.coordSysDims=[],this.axisMap=Z(),this.categoryAxisMap=Z(),this.coordSysName=t}return r})();function M$(r){var t=r.get("coordinateSystem"),e=new Jct(t),n=jct[t];if(n)return n(r,e,e.axisMap,e.categoryAxisMap),e}var jct={cartesian2d:function(r,t,e,n){var a=r.getReferringComponents("xAxis",je).models[0],o=r.getReferringComponents("yAxis",je).models[0];t.coordSysDims=["x","y"],e.set("x",a),e.set("y",o),Jv(a)&&(n.set("x",a),t.firstCategoryDimIndex=0),Jv(o)&&(n.set("y",o),t.firstCategoryDimIndex==null&&(t.firstCategoryDimIndex=1))},singleAxis:function(r,t,e,n){var a=r.getReferringComponents("singleAxis",je).models[0];t.coordSysDims=["single"],e.set("single",a),Jv(a)&&(n.set("single",a),t.firstCategoryDimIndex=0)},polar:function(r,t,e,n){var a=r.getReferringComponents("polar",je).models[0],o=a.findAxisModel("radiusAxis"),i=a.findAxisModel("angleAxis");t.coordSysDims=["radius","angle"],e.set("radius",o),e.set("angle",i),Jv(o)&&(n.set("radius",o),t.firstCategoryDimIndex=0),Jv(i)&&(n.set("angle",i),t.firstCategoryDimIndex==null&&(t.firstCategoryDimIndex=1))},geo:function(r,t,e,n){t.coordSysDims=["lng","lat"]},parallel:function(r,t,e,n){var a=r.ecModel,o=a.getComponent("parallel",r.get("parallelIndex")),i=t.coordSysDims=o.dimensions.slice();T(o.parallelAxisIndex,function(u,l){var f=a.getComponent("parallelAxis",u),s=i[l];e.set(s,f),Jv(f)&&(n.set(s,f),t.firstCategoryDimIndex==null&&(t.firstCategoryDimIndex=l))})}};function Jv(r){return r.get("type")==="category"}function A$(r,t,e){e=e||{};var n=e.byIndex,a=e.stackedCoordDimension,o,i,u;Yct(t)?o=t:(i=t.schema,o=i.dimensions,u=t.store);var l=!!(r&&r.get("stack")),f,s,c,p;if(T(o,function(g,y){V(g)&&(o[y]=g={name:g}),l&&!g.isExtraCoord&&(!n&&!f&&g.ordinalMeta&&(f=g),!s&&g.type!=="ordinal"&&g.type!=="time"&&(!a||a===g.coordDim)&&(s=g))}),s&&!n&&!f&&(n=!0),s){c="__\0ecstackresult_"+r.id,p="__\0ecstackedover_"+r.id,f&&(f.createInvertedIndices=!0);var v=s.coordDim,d=s.type,m=0;T(o,function(g){g.coordDim===v&&m++});var h={name:c,coordDim:v,coordDimIndex:m,type:d,isExtraCoord:!0,isCalculationCoord:!0,storeDimIndex:o.length},_={name:p,coordDim:p,coordDimIndex:m+1,type:d,isExtraCoord:!0,isCalculationCoord:!0,storeDimIndex:o.length+1};i?(u&&(h.storeDimIndex=u.ensureCalculationDimension(p,d),_.storeDimIndex=u.ensureCalculationDimension(c,d)),i.appendCalculationDimension(h),i.appendCalculationDimension(_)):(o.push(h),o.push(_))}return{stackedDimension:s&&s.name,stackedByDimension:f&&f.name,isStackedByIndex:n,stackedOverDimension:p,stackResultDimension:c}}function Yct(r){return!SC(r.schema)}function Mo(r,t){return!!t&&t===r.getCalculationInfo("stackedDimension")}function AC(r,t){return Mo(r,t)?r.getCalculationInfo("stackResultDimension"):t}function Qct(r,t){var e=r.get("coordinateSystem"),n=Cl.get(e),a;return t&&t.coordSysDims&&(a=U(t.coordSysDims,function(o){var i={name:o},u=t.axisMap.get(o);if(u){var l=u.get("type");i.type=Rc(l)}return i})),a||(a=n&&(n.getDimensionsInfo?n.getDimensionsInfo():n.dimensions.slice())||["x","y"]),a}function Zct(r,t,e){var n,a;return e&&T(r,function(o,i){var u=o.coordDim,l=e.categoryAxisMap.get(u);l&&(n==null&&(n=i),o.ordinalMeta=l.getOrdinalMeta(),t&&(o.createInvertedIndices=!0)),o.otherDims.itemName!=null&&(a=!0)}),!a&&n!=null&&(r[n].otherDims.itemName=0),n}function Xct(r,t,e){e=e||{};var n=t.getSourceManager(),a,o=!1;r?(o=!0,a=Wv(r)):(a=n.getSource(),o=a.sourceFormat===Rn);var i=M$(t),u=Qct(t,i),l=e.useEncodeDefaulter,f=X(l)?l:l?gt(Wb,u,t):null,s={coordDimensions:u,generateCoord:e.generateCoord,encodeDefine:t.getEncode(),encodeDefaulter:f,canOmitUnusedDimensions:!o},c=Oi(a,s),p=Zct(c.dimensions,e.createInvertedIndices,i),v=o?null:n.getSharedDataStore(c),d=A$(t,{schema:c,store:v}),m=new wr(c,t);m.setCalculationInfo(d);var h=p!=null&&Kct(a)?function(_,g,y,D){return D===p?y:this.defaultDimValueGetter(_,g,y,D)}:null;return m.hasItemOption=!1,m.initData(o?a:v,null,h),m}function Kct(r){if(r.sourceFormat===Rn){var t=tpt(r.data||[]);return!O(Ti(t))}}function tpt(r){for(var t=0;t<r.length&&r[t]==null;)t++;return r[t]}var Pn=Xct;var I$=(function(){function r(t){this._setting=t||{},this._extent=[1/0,-1/0]}return r.prototype.getSetting=function(t){return this._setting[t]},r.prototype.unionExtent=function(t){var e=this._extent;t[0]<e[0]&&(e[0]=t[0]),t[1]>e[1]&&(e[1]=t[1])},r.prototype.unionExtentFromData=function(t,e){this.unionExtent(t.getApproximateExtent(e))},r.prototype.getExtent=function(){return this._extent.slice()},r.prototype.setExtent=function(t,e){var n=this._extent;isNaN(t)||(n[0]=t),isNaN(e)||(n[1]=e)},r.prototype.isInExtentRange=function(t){return this._extent[0]<=t&&this._extent[1]>=t},r.prototype.isBlank=function(){return this._isBlank},r.prototype.setBlank=function(t){this._isBlank=t},r})();Cf(I$);var uo=I$;var ept=0,rpt=(function(){function r(t){this.categories=t.categories||[],this._needCollect=t.needCollect,this._deduplication=t.deduplication,this.uid=++ept}return r.createByAxisModel=function(t){var e=t.option,n=e.data,a=n&&U(n,npt);return new r({categories:a,needCollect:!a,deduplication:e.dedplication!==!1})},r.prototype.getOrdinal=function(t){return this._getOrCreateMap().get(t)},r.prototype.parseAndCollect=function(t){var e,n=this._needCollect;if(!V(t)&&!n)return t;if(n&&!this._deduplication)return e=this.categories.length,this.categories[e]=t,e;var a=this._getOrCreateMap();return e=a.get(t),e==null&&(n?(e=this.categories.length,this.categories[e]=t,a.set(t,e)):e=NaN),e},r.prototype._getOrCreateMap=function(){return this._map||(this._map=Z(this.categories))},r})();function npt(r){return nt(r)&&r.value!=null?r.value:r+""}var $_=rpt;function q_(r){return r.type==="interval"||r.type==="log"}function L$(r,t,e,n){var a={},o=r[1]-r[0],i=a.interval=Q0(o/t,!0);e!=null&&i<e&&(i=a.interval=e),n!=null&&i>n&&(i=a.interval=n);var u=a.intervalPrecision=eI(i),l=a.niceTickExtent=[Qe(Math.ceil(r[0]/i)*i,u),Qe(Math.floor(r[1]/i)*i,u)];return apt(l,r),a}function IC(r){var t=Math.pow(10,Y0(r)),e=r/t;return e?e===2?e=3:e===3?e=5:e*=2:e=1,Qe(e*t)}function eI(r){return Ca(r)+2}function F$(r,t,e){r[t]=Math.max(Math.min(r[t],e[1]),e[0])}function apt(r,t){!isFinite(r[0])&&(r[0]=t[0]),!isFinite(r[1])&&(r[1]=t[1]),F$(r,0,t),F$(r,1,t),r[0]>r[1]&&(r[0]=r[1])}function kf(r,t){return r>=t[0]&&r<=t[1]}function zf(r,t){return t[1]===t[0]?.5:(r-t[0])/(t[1]-t[0])}function Wf(r,t){return r*(t[1]-t[0])+t[0]}var R$=(function(r){A(t,r);function t(e){var n=r.call(this,e)||this;n.type="ordinal";var a=n.getSetting("ordinalMeta");return a||(a=new $_({})),O(a)&&(a=new $_({categories:U(a,function(o){return nt(o)?o.value:o})})),n._ordinalMeta=a,n._extent=n.getSetting("extent")||[0,a.categories.length-1],n}return t.prototype.parse=function(e){return e==null?NaN:V(e)?this._ordinalMeta.getOrdinal(e):Math.round(e)},t.prototype.contain=function(e){return e=this.parse(e),kf(e,this._extent)&&this._ordinalMeta.categories[e]!=null},t.prototype.normalize=function(e){return e=this._getTickNumber(this.parse(e)),zf(e,this._extent)},t.prototype.scale=function(e){return e=Math.round(Wf(e,this._extent)),this.getRawOrdinalNumber(e)},t.prototype.getTicks=function(){for(var e=[],n=this._extent,a=n[0];a<=n[1];)e.push({value:a}),a++;return e},t.prototype.getMinorTicks=function(e){},t.prototype.setSortInfo=function(e){if(e==null){this._ordinalNumbersByTick=this._ticksByOrdinalNumber=null;return}for(var n=e.ordinalNumbers,a=this._ordinalNumbersByTick=[],o=this._ticksByOrdinalNumber=[],i=0,u=this._ordinalMeta.categories.length,l=Math.min(u,n.length);i<l;++i){var f=n[i];a[i]=f,o[f]=i}for(var s=0;i<u;++i){for(;o[s]!=null;)s++;a.push(s),o[s]=i}},t.prototype._getTickNumber=function(e){var n=this._ticksByOrdinalNumber;return n&&e>=0&&e<n.length?n[e]:e},t.prototype.getRawOrdinalNumber=function(e){var n=this._ordinalNumbersByTick;return n&&e>=0&&e<n.length?n[e]:e},t.prototype.getLabel=function(e){if(!this.isBlank()){var n=this.getRawOrdinalNumber(e.value),a=this._ordinalMeta.categories[n];return a==null?"":a+""}},t.prototype.count=function(){return this._extent[1]-this._extent[0]+1},t.prototype.unionExtentFromData=function(e,n){this.unionExtent(e.getApproximateExtent(n))},t.prototype.isInExtentRange=function(e){return e=this._getTickNumber(e),this._extent[0]<=e&&this._extent[1]>=e},t.prototype.getOrdinalMeta=function(){return this._ordinalMeta},t.prototype.calcNiceTicks=function(){},t.prototype.calcNiceExtent=function(){},t.type="ordinal",t})(uo);uo.registerClass(R$);var J_=R$;var Pc=Qe,P$=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type="interval",e._interval=0,e._intervalPrecision=2,e}return t.prototype.parse=function(e){return e},t.prototype.contain=function(e){return kf(e,this._extent)},t.prototype.normalize=function(e){return zf(e,this._extent)},t.prototype.scale=function(e){return Wf(e,this._extent)},t.prototype.setExtent=function(e,n){var a=this._extent;isNaN(e)||(a[0]=parseFloat(e)),isNaN(n)||(a[1]=parseFloat(n))},t.prototype.unionExtent=function(e){var n=this._extent;e[0]<n[0]&&(n[0]=e[0]),e[1]>n[1]&&(n[1]=e[1]),this.setExtent(n[0],n[1])},t.prototype.getInterval=function(){return this._interval},t.prototype.setInterval=function(e){this._interval=e,this._niceExtent=this._extent.slice(),this._intervalPrecision=eI(e)},t.prototype.getTicks=function(e){var n=this._interval,a=this._extent,o=this._niceExtent,i=this._intervalPrecision,u=[];if(!n)return u;var l=1e4;a[0]<o[0]&&(e?u.push({value:Pc(o[0]-n,i)}):u.push({value:a[0]}));for(var f=o[0];f<=o[1]&&(u.push({value:f}),f=Pc(f+n,i),f!==u[u.length-1].value);)if(u.length>l)return[];var s=u.length?u[u.length-1].value:o[1];return a[1]>s&&(e?u.push({value:Pc(s+n,i)}):u.push({value:a[1]})),u},t.prototype.getMinorTicks=function(e){for(var n=this.getTicks(!0),a=[],o=this.getExtent(),i=1;i<n.length;i++){for(var u=n[i],l=n[i-1],f=0,s=[],c=u.value-l.value,p=c/e;f<e-1;){var v=Pc(l.value+(f+1)*p);v>o[0]&&v<o[1]&&s.push(v),f++}a.push(s)}return a},t.prototype.getLabel=function(e,n){if(e==null)return"";var a=n&&n.precision;a==null?a=Ca(e.value)||0:a==="auto"&&(a=this._intervalPrecision);var o=Pc(e.value,a,!0);return ZM(o)},t.prototype.calcNiceTicks=function(e,n,a){e=e||5;var o=this._extent,i=o[1]-o[0];if(isFinite(i)){i<0&&(i=-i,o.reverse());var u=L$(o,e,n,a);this._intervalPrecision=u.intervalPrecision,this._interval=u.interval,this._niceExtent=u.niceTickExtent}},t.prototype.calcNiceExtent=function(e){var n=this._extent;if(n[0]===n[1])if(n[0]!==0){var a=Math.abs(n[0]);e.fixMax||(n[1]+=a/2),n[0]-=a/2}else n[1]=1;var o=n[1]-n[0];isFinite(o)||(n[0]=0,n[1]=1),this.calcNiceTicks(e.splitNumber,e.minInterval,e.maxInterval);var i=this._interval;e.fixMin||(n[0]=Pc(Math.floor(n[0]/i)*i)),e.fixMax||(n[1]=Pc(Math.ceil(n[1]/i)*i))},t.prototype.setNiceExtent=function(e,n){this._niceExtent=[e,n]},t.type="interval",t})(uo);uo.registerClass(P$);var lo=P$;var N$=typeof Float32Array<"u",opt=N$?Float32Array:Array;function Aa(r){return O(r)?N$?new Float32Array(r):r:new opt(r)}var rI="__ec_stack_";function nI(r){return r.get("stack")||rI+r.seriesIndex}function aI(r){return r.dim+r.index}function O$(r){var t=[],e=r.axis,n="axis0";if(e.type==="category"){for(var a=e.getBandWidth(),o=0;o<r.count;o++)t.push(et({bandWidth:a,axisKey:n,stackId:rI+o},r));for(var i=U$(t),u=[],o=0;o<r.count;o++){var l=i[n][rI+o];l.offsetCenter=l.offset+l.width/2,u.push(l)}return u}}function oI(r,t){var e=[];return t.eachSeriesByType(r,function(n){k$(n)&&e.push(n)}),e}function ipt(r){var t={};T(r,function(l){var f=l.coordinateSystem,s=f.getBaseAxis();if(!(s.type!=="time"&&s.type!=="value"))for(var c=l.getData(),p=s.dim+"_"+s.index,v=c.getDimensionIndex(c.mapDimension(s.dim)),d=c.getStore(),m=0,h=d.count();m<h;++m){var _=d.get(v,m);t[p]?t[p].push(_):t[p]=[_]}});var e={};for(var n in t)if(t.hasOwnProperty(n)){var a=t[n];if(a){a.sort(function(l,f){return l-f});for(var o=null,i=1;i<a.length;++i){var u=a[i]-a[i-1];u>0&&(o=o===null?u:Math.min(o,u))}e[n]=o}}return e}function iI(r){var t=ipt(r),e=[];return T(r,function(n){var a=n.coordinateSystem,o=a.getBaseAxis(),i=o.getExtent(),u;if(o.type==="category")u=o.getBandWidth();else if(o.type==="value"||o.type==="time"){var l=o.dim+"_"+o.index,f=t[l],s=Math.abs(i[1]-i[0]),c=o.scale.getExtent(),p=Math.abs(c[1]-c[0]);u=f?s/p*f:s}else{var v=n.getData();u=Math.abs(i[1]-i[0])/v.count()}var d=Y(n.get("barWidth"),u),m=Y(n.get("barMaxWidth"),u),h=Y(n.get("barMinWidth")||(z$(n)?.5:1),u),_=n.get("barGap"),g=n.get("barCategoryGap");e.push({bandWidth:u,barWidth:d,barMaxWidth:m,barMinWidth:h,barGap:_,barCategoryGap:g,axisKey:aI(o),stackId:nI(n)})}),U$(e)}function U$(r){var t={};T(r,function(n,a){var o=n.axisKey,i=n.bandWidth,u=t[o]||{bandWidth:i,remainedWidth:i,autoWidthCount:0,categoryGap:null,gap:"20%",stacks:{}},l=u.stacks;t[o]=u;var f=n.stackId;l[f]||u.autoWidthCount++,l[f]=l[f]||{width:0,maxWidth:0};var s=n.barWidth;s&&!l[f].width&&(l[f].width=s,s=Math.min(u.remainedWidth,s),u.remainedWidth-=s);var c=n.barMaxWidth;c&&(l[f].maxWidth=c);var p=n.barMinWidth;p&&(l[f].minWidth=p);var v=n.barGap;v!=null&&(u.gap=v);var d=n.barCategoryGap;d!=null&&(u.categoryGap=d)});var e={};return T(t,function(n,a){e[a]={};var o=n.stacks,i=n.bandWidth,u=n.categoryGap;if(u==null){var l=Ft(o).length;u=Math.max(35-l*4,15)+"%"}var f=Y(u,i),s=Y(n.gap,1),c=n.remainedWidth,p=n.autoWidthCount,v=(c-f)/(p+(p-1)*s);v=Math.max(v,0),T(o,function(_){var g=_.maxWidth,y=_.minWidth;if(_.width){var D=_.width;g&&(D=Math.min(D,g)),y&&(D=Math.max(D,y)),_.width=D,c-=D+s*D,p--}else{var D=v;g&&g<D&&(D=Math.min(g,c)),y&&y>D&&(D=y),D!==v&&(_.width=D,c-=D+s*D,p--)}}),v=(c-f)/(p+(p-1)*s),v=Math.max(v,0);var d=0,m;T(o,function(_,g){_.width||(_.width=v),m=_,d+=_.width*(1+s)}),m&&(d-=m.width*s);var h=-d/2;T(o,function(_,g){e[a][g]=e[a][g]||{bandWidth:i,offset:h,width:_.width},h+=_.width*(1+s)})}),e}function H$(r,t,e){if(r&&t){var n=r[aI(t)];return n!=null&&e!=null?n[nI(e)]:n}}function LC(r,t){var e=oI(r,t),n=iI(e);T(e,function(a){var o=a.getData(),i=a.coordinateSystem,u=i.getBaseAxis(),l=nI(a),f=n[aI(u)][l],s=f.offset,c=f.width;o.setLayout({bandWidth:f.bandWidth,offset:s,size:c})})}function RC(r){return{seriesType:r,plan:So(),reset:function(t){if(k$(t)){var e=t.getData(),n=t.coordinateSystem,a=n.getBaseAxis(),o=n.getOtherAxis(a),i=e.getDimensionIndex(e.mapDimension(o.dim)),u=e.getDimensionIndex(e.mapDimension(a.dim)),l=t.get("showBackground",!0),f=e.mapDimension(o.dim),s=e.getCalculationInfo("stackResultDimension"),c=Mo(e,f)&&!!e.getCalculationInfo("stackedOnSeries"),p=o.isHorizontal(),v=upt(a,o),d=z$(t),m=t.get("barMinHeight")||0,h=s&&e.getDimensionIndex(s),_=e.getLayout("size"),g=e.getLayout("offset");return{progress:function(y,D){for(var b=y.count,C=d&&Aa(b*3),x=d&&l&&Aa(b*3),w=d&&Aa(b),S=n.master.getRect(),E=p?S.width:S.height,M,I=D.getStore(),F=0;(M=y.next())!=null;){var L=I.get(c?h:i,M),R=I.get(u,M),P=v,k=void 0;c&&(k=+L-I.get(i,M));var H=void 0,G=void 0,j=void 0,rt=void 0;if(p){var xt=n.dataToPoint([L,R]);if(c){var J=n.dataToPoint([k,R]);P=J[0]}H=P,G=xt[1]+g,j=xt[0]-P,rt=_,Math.abs(j)<m&&(j=(j<0?-1:1)*m)}else{var xt=n.dataToPoint([R,L]);if(c){var J=n.dataToPoint([R,k]);P=J[1]}H=xt[0]+g,G=P,j=_,rt=xt[1]-P,Math.abs(rt)<m&&(rt=(rt<=0?-1:1)*m)}d?(C[F]=H,C[F+1]=G,C[F+2]=p?j:rt,x&&(x[F]=p?S.x:H,x[F+1]=p?G:S.y,x[F+2]=E),w[M]=M):D.setItemLayout(M,{x:H,y:G,width:j,height:rt}),F+=3}d&&D.setLayout({largePoints:C,largeDataIndices:w,largeBackgroundPoints:x,valueAxisHorizontal:p})}}}}}}function k$(r){return r.coordinateSystem&&r.coordinateSystem.type==="cartesian2d"}function z$(r){return r.pipelineContext&&r.pipelineContext.large}function upt(r,t){return t.toGlobalCoord(t.dataToCoord(t.type==="log"?1:0))}var lpt=function(r,t,e,n){for(;e<n;){var a=e+n>>>1;r[a][1]<t?e=a+1:n=a}return e},G$=(function(r){A(t,r);function t(e){var n=r.call(this,e)||this;return n.type="time",n}return t.prototype.getLabel=function(e){var n=this.getSetting("useUTC");return Sc(e.value,WM[ZB(wc(this._minLevelUnit))]||WM.second,n,this.getSetting("locale"))},t.prototype.getFormattedLabel=function(e,n,a){var o=this.getSetting("useUTC"),i=this.getSetting("locale");return XB(e,n,a,i,o)},t.prototype.getTicks=function(){var e=this._interval,n=this._extent,a=[];if(!e)return a;a.push({value:n[0],level:0});var o=this.getSetting("useUTC"),i=mpt(this._minLevelUnit,this._approxInterval,o,n);return a=a.concat(i),a.push({value:n[1],level:0}),a},t.prototype.calcNiceExtent=function(e){var n=this._extent;if(n[0]===n[1]&&(n[0]-=To,n[1]+=To),n[1]===-1/0&&n[0]===1/0){var a=new Date;n[1]=+new Date(a.getFullYear(),a.getMonth(),a.getDate()),n[0]=n[1]-To}this.calcNiceTicks(e.splitNumber,e.minInterval,e.maxInterval)},t.prototype.calcNiceTicks=function(e,n,a){e=e||10;var o=this._extent,i=o[1]-o[0];this._approxInterval=i/e,n!=null&&this._approxInterval<n&&(this._approxInterval=n),a!=null&&this._approxInterval>a&&(this._approxInterval=a);var u=PC.length,l=Math.min(lpt(PC,this._approxInterval,0,u),u-1);this._interval=PC[l][1],this._minLevelUnit=PC[Math.max(l-1,0)][0]},t.prototype.parse=function(e){return Nt(e)?e:+Ta(e)},t.prototype.contain=function(e){return kf(this.parse(e),this._extent)},t.prototype.normalize=function(e){return zf(this.parse(e),this._extent)},t.prototype.scale=function(e){return Wf(e,this._extent)},t.type="time",t})(lo),PC=[["second",Rb],["minute",Pb],["hour",Ov],["quarter-day",Ov*6],["half-day",Ov*12],["day",To*1.2],["half-week",To*3.5],["week",To*7],["month",To*31],["quarter",To*95],["half-year",zM/2],["year",zM]];function fpt(r,t,e,n){var a=Ta(t),o=Ta(e),i=function(d){return BM(a,d,n)===BM(o,d,n)},u=function(){return i("year")},l=function(){return u()&&i("month")},f=function(){return l()&&i("day")},s=function(){return f()&&i("hour")},c=function(){return s()&&i("minute")},p=function(){return c()&&i("second")},v=function(){return p()&&i("millisecond")};switch(r){case"year":return u();case"month":return l();case"day":return f();case"hour":return s();case"minute":return c();case"second":return p();case"millisecond":return v()}}function spt(r,t){return r/=To,r>16?16:r>7.5?7:r>3.5?4:r>1.5?2:1}function cpt(r){var t=30*To;return r/=t,r>6?6:r>3?3:r>2?2:1}function ppt(r){return r/=Ov,r>12?12:r>6?6:r>3.5?4:r>2?2:1}function W$(r,t){return r/=t?Pb:Rb,r>30?30:r>20?20:r>15?15:r>10?10:r>5?5:r>2?2:1}function vpt(r){return Q0(r,!0)}function dpt(r,t,e){var n=new Date(r);switch(wc(t)){case"year":case"month":n[VM(e)](0);case"day":n[$M(e)](1);case"hour":n[qM(e)](0);case"minute":n[JM(e)](0);case"second":n[jM(e)](0),n[YM(e)](0)}return n.getTime()}function mpt(r,t,e,n){var a=1e4,o=GM,i=0;function u(E,M,I,F,L,R,P){for(var k=new Date(M),H=M,G=k[F]();H<I&&H<=n[1];)P.push({value:H}),G+=E,k[L](G),H=k.getTime();P.push({value:H,notAdd:!0})}function l(E,M,I){var F=[],L=!M.length;if(!fpt(wc(E),n[0],n[1],e)){L&&(M=[{value:dpt(new Date(n[0]),E,e)},{value:n[1]}]);for(var R=0;R<M.length-1;R++){var P=M[R].value,k=M[R+1].value;if(P!==k){var H=void 0,G=void 0,j=void 0,rt=!1;switch(E){case"year":H=Math.max(1,Math.round(t/To/365)),G=Nb(e),j=tV(e);break;case"half-year":case"quarter":case"month":H=cpt(t),G=xc(e),j=VM(e);break;case"week":case"half-week":case"day":H=spt(t,31),G=d_(e),j=$M(e),rt=!0;break;case"half-day":case"quarter-day":case"hour":H=ppt(t),G=Nv(e),j=qM(e);break;case"minute":H=W$(t,!0),G=m_(e),j=JM(e);break;case"second":H=W$(t,!1),G=h_(e),j=jM(e);break;case"millisecond":H=vpt(t),G=__(e),j=YM(e);break}u(H,P,k,G,j,rt,F),E==="year"&&I.length>1&&R===0&&I.unshift({value:I[0].value-H})}}for(var R=0;R<F.length;R++)I.push(F[R]);return F}}for(var f=[],s=[],c=0,p=0,v=0;v<o.length&&i++<a;++v){var d=wc(o[v]);if(QB(o[v])){l(o[v],f[f.length-1]||[],s);var m=o[v+1]?wc(o[v+1]):null;if(d!==m){if(s.length){p=c,s.sort(function(E,M){return E.value-M.value});for(var h=[],_=0;_<s.length;++_){var g=s[_].value;(_===0||s[_-1].value!==g)&&(h.push(s[_]),g>=n[0]&&g<=n[1]&&c++)}var y=(n[1]-n[0])/t;if(c>y*1.5&&p>y/1.5||(f.push(h),c>y||r===o[v]))break}s=[]}}}for(var D=de(U(f,function(E){return de(E,function(M){return M.value>=n[0]&&M.value<=n[1]&&!M.notAdd})}),function(E){return E.length>0}),b=[],C=D.length-1,v=0;v<D.length;++v)for(var x=D[v],w=0;w<x.length;++w)b.push({value:x[w].value,level:C-v});b.sort(function(E,M){return E.value-M.value});for(var S=[],v=0;v<b.length;++v)(v===0||b[v].value!==b[v-1].value)&&S.push(b[v]);return S}uo.registerClass(G$);var NC=G$;var B$=uo.prototype,j_=lo.prototype,hpt=Qe,_pt=Math.floor,gpt=Math.ceil,OC=Math.pow,Ui=Math.log,uI=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type="log",e.base=10,e._originalScale=new lo,e._interval=0,e}return t.prototype.getTicks=function(e){var n=this._originalScale,a=this._extent,o=n.getExtent(),i=j_.getTicks.call(this,e);return U(i,function(u){var l=u.value,f=Qe(OC(this.base,l));return f=l===a[0]&&this._fixMin?UC(f,o[0]):f,f=l===a[1]&&this._fixMax?UC(f,o[1]):f,{value:f}},this)},t.prototype.setExtent=function(e,n){var a=Ui(this.base);e=Ui(Math.max(0,e))/a,n=Ui(Math.max(0,n))/a,j_.setExtent.call(this,e,n)},t.prototype.getExtent=function(){var e=this.base,n=B$.getExtent.call(this);n[0]=OC(e,n[0]),n[1]=OC(e,n[1]);var a=this._originalScale,o=a.getExtent();return this._fixMin&&(n[0]=UC(n[0],o[0])),this._fixMax&&(n[1]=UC(n[1],o[1])),n},t.prototype.unionExtent=function(e){this._originalScale.unionExtent(e);var n=this.base;e[0]=Ui(e[0])/Ui(n),e[1]=Ui(e[1])/Ui(n),B$.unionExtent.call(this,e)},t.prototype.unionExtentFromData=function(e,n){this.unionExtent(e.getApproximateExtent(n))},t.prototype.calcNiceTicks=function(e){e=e||10;var n=this._extent,a=n[1]-n[0];if(!(a===1/0||a<=0)){var o=OW(a),i=e/a*o;for(i<=.5&&(o*=10);!isNaN(o)&&Math.abs(o)<1&&Math.abs(o)>0;)o*=10;var u=[Qe(gpt(n[0]/o)*o),Qe(_pt(n[1]/o)*o)];this._interval=o,this._niceExtent=u}},t.prototype.calcNiceExtent=function(e){j_.calcNiceExtent.call(this,e),this._fixMin=e.fixMin,this._fixMax=e.fixMax},t.prototype.parse=function(e){return e},t.prototype.contain=function(e){return e=Ui(e)/Ui(this.base),kf(e,this._extent)},t.prototype.normalize=function(e){return e=Ui(e)/Ui(this.base),zf(e,this._extent)},t.prototype.scale=function(e){return e=Wf(e,this._extent),OC(this.base,e)},t.type="log",t})(uo),V$=uI.prototype;V$.getMinorTicks=j_.getMinorTicks;V$.getLabel=j_.getLabel;function UC(r,t){return hpt(r,Ca(t))}uo.registerClass(uI);var $$=uI;var ypt=(function(){function r(t,e,n){this._prepareParams(t,e,n)}return r.prototype._prepareParams=function(t,e,n){n[1]<n[0]&&(n=[NaN,NaN]),this._dataMin=n[0],this._dataMax=n[1];var a=this._isOrdinal=t.type==="ordinal";this._needCrossZero=t.type==="interval"&&e.getNeedCrossZero&&e.getNeedCrossZero();var o=this._modelMinRaw=e.get("min",!0);X(o)?this._modelMinNum=HC(t,o({min:n[0],max:n[1]})):o!=="dataMin"&&(this._modelMinNum=HC(t,o));var i=this._modelMaxRaw=e.get("max",!0);if(X(i)?this._modelMaxNum=HC(t,i({min:n[0],max:n[1]})):i!=="dataMax"&&(this._modelMaxNum=HC(t,i)),a)this._axisDataLen=e.getCategories().length;else{var u=e.get("boundaryGap"),l=O(u)?u:[u||0,u||0];typeof l[0]=="boolean"||typeof l[1]=="boolean"?this._boundaryGapInner=[0,0]:this._boundaryGapInner=[qn(l[0],1),qn(l[1],1)]}},r.prototype.calculate=function(){var t=this._isOrdinal,e=this._dataMin,n=this._dataMax,a=this._axisDataLen,o=this._boundaryGapInner,i=t?null:n-e||Math.abs(e),u=this._modelMinRaw==="dataMin"?e:this._modelMinNum,l=this._modelMaxRaw==="dataMax"?n:this._modelMaxNum,f=u!=null,s=l!=null;u==null&&(u=t?a?0:NaN:e-o[0]*i),l==null&&(l=t?a?a-1:NaN:n+o[1]*i),(u==null||!isFinite(u))&&(u=NaN),(l==null||!isFinite(l))&&(l=NaN);var c=cf(u)||cf(l)||t&&!a;this._needCrossZero&&(u>0&&l>0&&!f&&(u=0),u<0&&l<0&&!s&&(l=0));var p=this._determinedMin,v=this._determinedMax;return p!=null&&(u=p,f=!0),v!=null&&(l=v,s=!0),{min:u,max:l,minFixed:f,maxFixed:s,isBlank:c}},r.prototype.modifyDataMinMax=function(t,e){this[bpt[t]]=e},r.prototype.setDeterminedMinMax=function(t,e){var n=Dpt[t];this[n]=e},r.prototype.freeze=function(){this.frozen=!0},r})();var Dpt={min:"_determinedMin",max:"_determinedMax"},bpt={min:"_dataMin",max:"_dataMax"};function kC(r,t,e){var n=r.rawExtentInfo;return n||(n=new ypt(r,t,e),r.rawExtentInfo=n,n)}function HC(r,t){return t==null?null:cf(t)?NaN:r.parse(t)}function lI(r,t){var e=r.type,n=kC(r,t,r.getExtent()).calculate();r.setBlank(n.isBlank);var a=n.min,o=n.max,i=t.ecModel;if(i&&e==="time"){var u=oI("bar",i),l=!1;if(T(u,function(c){l=l||c.getBaseAxis()===t.axis}),l){var f=iI(u),s=Cpt(a,o,t,f);a=s.min,o=s.max}}return{extent:[a,o],fixMin:n.minFixed,fixMax:n.maxFixed}}function Cpt(r,t,e,n){var a=e.axis.getExtent(),o=a[1]-a[0],i=H$(n,e.axis);if(i===void 0)return{min:r,max:t};var u=1/0;T(i,function(v){u=Math.min(v.offset,u)});var l=-1/0;T(i,function(v){l=Math.max(v.offset+v.width,l)}),u=Math.abs(u),l=Math.abs(l);var f=u+l,s=t-r,c=1-(u+l)/o,p=s/c-s;return t+=p*(l/f),r-=p*(u/f),{min:r,max:t}}function xu(r,t){var e=t,n=lI(r,e),a=n.extent,o=e.get("splitNumber");r instanceof $$&&(r.base=e.get("logBase"));var i=r.type,u=e.get("interval"),l=i==="interval"||i==="time";r.setExtent(a[0],a[1]),r.calcNiceExtent({splitNumber:o,fixMin:n.fixMin,fixMax:n.fixMax,minInterval:l?e.get("minInterval"):null,maxInterval:l?e.get("maxInterval"):null}),u!=null&&r.setInterval&&r.setInterval(u)}function Gf(r,t){if(t=t||r.get("type"),t)switch(t){case"category":return new J_({ordinalMeta:r.getOrdinalMeta?r.getOrdinalMeta():r.getCategories(),extent:[1/0,-1/0]});case"time":return new NC({locale:r.ecModel.getLocaleModel(),useUTC:r.ecModel.get("useUTC")});default:return new(uo.getClass(t)||lo)}}function q$(r){var t=r.scale.getExtent(),e=t[0],n=t[1];return!(e>0&&n>0||e<0&&n<0)}function jv(r){var t=r.getLabelModel().get("formatter"),e=r.type==="category"?r.scale.getExtent()[0]:null;return r.scale.type==="time"?(function(n){return function(a,o){return r.scale.getFormattedLabel(a,o,n)}})(t):V(t)?(function(n){return function(a){var o=r.scale.getLabel(a),i=n.replace("{value}",o??"");return i}})(t):X(t)?(function(n){return function(a,o){return e!=null&&(o=a.value-e),n(Y_(r,a),o,a.level!=null?{level:a.level}:null)}})(t):function(n){return r.scale.getLabel(n)}}function Y_(r,t){return r.type==="category"?r.scale.getLabel(t):t.value}function J$(r){var t=r.model,e=r.scale;if(!(!t.get(["axisLabel","show"])||e.isBlank())){var n,a,o=e.getExtent();e instanceof J_?a=e.count():(n=e.getTicks(),a=n.length);var i=r.getLabelModel(),u=jv(r),l,f=1;a>40&&(f=Math.ceil(a/40));for(var s=0;s<a;s+=f){var c=n?n[s]:{value:o[0]+s},p=u(c,s),v=i.getTextRect(p),d=Tpt(v,i.get("rotate")||0);l?l.union(d):l=d}return l}}function Tpt(r,t){var e=t*Math.PI/180,n=r.width,a=r.height,o=n*Math.abs(Math.cos(e))+Math.abs(a*Math.sin(e)),i=n*Math.abs(Math.sin(e))+Math.abs(a*Math.cos(e)),u=new yt(r.x,r.y,o,i);return u}function zC(r){var t=r.get("interval");return t??"auto"}function WC(r){return r.type==="category"&&zC(r.getLabelModel())===0}function Yv(r,t){var e={};return T(r.mapDimensionsAll(t),function(n){e[AC(r,n)]=!0}),Ft(e)}function j$(r,t,e){t&&T(Yv(t,e),function(n){var a=t.getApproximateExtent(n);a[0]<r[0]&&(r[0]=a[0]),a[1]>r[1]&&(r[1]=a[1])})}var wu=(function(){function r(){}return r.prototype.getNeedCrossZero=function(){var t=this.option;return!t.scale},r.prototype.getCoordSysModel=function(){},r})();var xpt=1e-8;function Y$(r,t){return Math.abs(r-t)<xpt}function Sl(r,t,e){var n=0,a=r[0];if(!a)return!1;for(var o=1;o<r.length;o++){var i=r[o];n+=Yo(a[0],a[1],i[0],i[1],t,e),a=i}var u=r[0];return(!Y$(a[0],u[0])||!Y$(a[1],u[1]))&&(n+=Yo(a[0],a[1],u[0],u[1],t,e)),n!==0}var wpt=[];function fI(r,t){for(var e=0;e<r.length;e++)Hr(r[e],r[e],t)}function Z$(r,t,e,n){for(var a=0;a<r.length;a++){var o=r[a];n&&(o=n.project(o)),o&&isFinite(o[0])&&isFinite(o[1])&&(go(t,t,o),yo(e,e,o))}}function Spt(r){for(var t=0,e=0,n=0,a=r.length,o=r[a-1][0],i=r[a-1][1],u=0;u<a;u++){var l=r[u][0],f=r[u][1],s=o*f-l*i;t+=s,e+=(o+l)*s,n+=(i+f)*s,o=l,i=f}return t?[e/t/3,n/t/3,t]:[r[0][0]||0,r[0][1]||0]}var X$=(function(){function r(t){this.name=t}return r.prototype.setCenter=function(t){this._center=t},r.prototype.getCenter=function(){var t=this._center;return t||(t=this._center=this.calcCenter()),t},r})();var sI=(function(){function r(t,e){this.type="polygon",this.exterior=t,this.interiors=e}return r})();var cI=(function(){function r(t){this.type="linestring",this.points=t}return r})();var BC=(function(r){A(t,r);function t(e,n,a){var o=r.call(this,e)||this;return o.type="geoJSON",o.geometries=n,o._center=a&&[a[0],a[1]],o}return t.prototype.calcCenter=function(){for(var e=this.geometries,n,a=0,o=0;o<e.length;o++){var i=e[o],u=i.exterior,l=u&&u.length;l>a&&(n=i,a=l)}if(n)return Spt(n.exterior);var f=this.getBoundingRect();return[f.x+f.width/2,f.y+f.height/2]},t.prototype.getBoundingRect=function(e){var n=this._rect;if(n&&!e)return n;var a=[1/0,1/0],o=[-1/0,-1/0],i=this.geometries;return T(i,function(u){u.type==="polygon"?Z$(u.exterior,a,o,e):T(u.points,function(l){Z$(l,a,o,e)})}),isFinite(a[0])&&isFinite(a[1])&&isFinite(o[0])&&isFinite(o[1])||(a[0]=a[1]=o[0]=o[1]=0),n=new yt(a[0],a[1],o[0]-a[0],o[1]-a[1]),e||(this._rect=n),n},t.prototype.contain=function(e){var n=this.getBoundingRect(),a=this.geometries;if(!n.contain(e[0],e[1]))return!1;t:for(var o=0,i=a.length;o<i;o++){var u=a[o];if(u.type==="polygon"){var l=u.exterior,f=u.interiors;if(Sl(l,e[0],e[1])){for(var s=0;s<(f?f.length:0);s++)if(Sl(f[s],e[0],e[1]))continue t;return!0}}}return!1},t.prototype.transformTo=function(e,n,a,o){var i=this.getBoundingRect(),u=i.width/i.height;a?o||(o=a/u):a=u*o;for(var l=new yt(e,n,a,o),f=i.calculateTransform(l),s=this.geometries,c=0;c<s.length;c++){var p=s[c];p.type==="polygon"?(fI(p.exterior,f),T(p.interiors,function(v){fI(v,f)})):T(p.points,function(v){fI(v,f)})}i=this._rect,i.copy(l),this._center=[i.x+i.width/2,i.y+i.height/2]},t.prototype.cloneShallow=function(e){e==null&&(e=this.name);var n=new t(e,this.geometries,this._center);return n._rect=this._rect,n.transformTo=null,n},t})(X$);var K$=(function(r){A(t,r);function t(e,n){var a=r.call(this,e)||this;return a.type="geoSVG",a._elOnlyForCalculate=n,a}return t.prototype.calcCenter=function(){for(var e=this._elOnlyForCalculate,n=e.getBoundingRect(),a=[n.x+n.width/2,n.y+n.height/2],o=vf(wpt),i=e;i&&!i.isGeoSVGGraphicRoot;)Ja(o,i.getLocalTransform(),o),i=i.parent;return Go(o,o),Hr(a,a,o),a},t})(X$);function Ept(r){if(!r.UTF8Encoding)return r;var t=r,e=t.UTF8Scale;e==null&&(e=1024);var n=t.features;return T(n,function(a){var o=a.geometry,i=o.encodeOffsets,u=o.coordinates;if(i)switch(o.type){case"LineString":o.coordinates=t5(u,i,e);break;case"Polygon":pI(u,i,e);break;case"MultiLineString":pI(u,i,e);break;case"MultiPolygon":T(u,function(l,f){return pI(l,i[f],e)})}}),t.UTF8Encoding=!1,t}function pI(r,t,e){for(var n=0;n<r.length;n++)r[n]=t5(r[n],t[n],e)}function t5(r,t,e){for(var n=[],a=t[0],o=t[1],i=0;i<r.length;i+=2){var u=r.charCodeAt(i)-64,l=r.charCodeAt(i+1)-64;u=u>>1^-(u&1),l=l>>1^-(l&1),u+=a,l+=o,a=u,o=l,n.push([u/e,l/e])}return n}function vI(r,t){return r=Ept(r),U(de(r.features,function(e){return e.geometry&&e.properties&&e.geometry.coordinates.length>0}),function(e){var n=e.properties,a=e.geometry,o=[];switch(a.type){case"Polygon":var i=a.coordinates;o.push(new sI(i[0],i.slice(1)));break;case"MultiPolygon":T(a.coordinates,function(l){l[0]&&o.push(new sI(l[0],l.slice(1)))});break;case"LineString":o.push(new cI([a.coordinates]));break;case"MultiLineString":o.push(new cI(a.coordinates))}var u=new BC(n[t||"name"],o,n.cp);return u.properties=n,u})}var Q_=St();function e5(r){return r.type==="category"?Mpt(r):Ipt(r)}function r5(r,t){return r.type==="category"?Apt(r,t):{ticks:U(r.scale.getTicks(),function(e){return e.value})}}function Mpt(r){var t=r.getLabelModel(),e=n5(r,t);return!t.get("show")||r.scale.isBlank()?{labels:[],labelCategoryInterval:e.labelCategoryInterval}:e}function n5(r,t){var e=a5(r,"labels"),n=zC(t),a=o5(e,n);if(a)return a;var o,i;return X(n)?o=f5(r,n):(i=n==="auto"?Fpt(r):n,o=l5(r,i)),i5(e,n,{labels:o,labelCategoryInterval:i})}function Apt(r,t){var e=a5(r,"ticks"),n=zC(t),a=o5(e,n);if(a)return a;var o,i;if((!t.get("show")||r.scale.isBlank())&&(o=[]),X(n))o=f5(r,n,!0);else if(n==="auto"){var u=n5(r,r.getLabelModel());i=u.labelCategoryInterval,o=U(u.labels,function(l){return l.tickValue})}else i=n,o=l5(r,i,!0);return i5(e,n,{ticks:o,tickCategoryInterval:i})}function Ipt(r){var t=r.scale.getTicks(),e=jv(r);return{labels:U(t,function(n,a){return{level:n.level,formattedLabel:e(n,a),rawLabel:r.scale.getLabel(n),tickValue:n.value}})}}function a5(r,t){return Q_(r)[t]||(Q_(r)[t]=[])}function o5(r,t){for(var e=0;e<r.length;e++)if(r[e].key===t)return r[e].value}function i5(r,t,e){return r.push({key:t,value:e}),e}function Fpt(r){var t=Q_(r).autoInterval;return t??(Q_(r).autoInterval=r.calculateCategoryInterval())}function u5(r){var t=Lpt(r),e=jv(r),n=(t.axisRotate-t.labelRotate)/180*Math.PI,a=r.scale,o=a.getExtent(),i=a.count();if(o[1]-o[0]<1)return 0;var u=1;i>40&&(u=Math.max(1,Math.floor(i/40)));for(var l=o[0],f=r.dataToCoord(l+1)-r.dataToCoord(l),s=Math.abs(f*Math.cos(n)),c=Math.abs(f*Math.sin(n)),p=0,v=0;l<=o[1];l+=u){var d=0,m=0,h=vu(e({value:l}),t.font,"center","top");d=h.width*1.3,m=h.height*1.3,p=Math.max(p,d,7),v=Math.max(v,m,7)}var _=p/s,g=v/c;isNaN(_)&&(_=1/0),isNaN(g)&&(g=1/0);var y=Math.max(0,Math.floor(Math.min(_,g))),D=Q_(r.model),b=r.getExtent(),C=D.lastAutoInterval,x=D.lastTickCount;return C!=null&&x!=null&&Math.abs(C-y)<=1&&Math.abs(x-i)<=1&&C>y&&D.axisExtent0===b[0]&&D.axisExtent1===b[1]?y=C:(D.lastTickCount=i,D.lastAutoInterval=y,D.axisExtent0=b[0],D.axisExtent1=b[1]),y}function Lpt(r){var t=r.getLabelModel();return{axisRotate:r.getRotate?r.getRotate():r.isHorizontal&&!r.isHorizontal()?90:0,labelRotate:t.get("rotate")||0,font:t.getFont()}}function l5(r,t,e){var n=jv(r),a=r.scale,o=a.getExtent(),i=r.getLabelModel(),u=[],l=Math.max((t||0)+1,1),f=o[0],s=a.count();f!==0&&l>1&&s/l>2&&(f=Math.round(Math.ceil(f/l)*l));var c=WC(r),p=i.get("showMinLabel")||c,v=i.get("showMaxLabel")||c;p&&f!==o[0]&&m(o[0]);for(var d=f;d<=o[1];d+=l)m(d);v&&d-l!==o[1]&&m(o[1]);function m(h){var _={value:h};u.push(e?h:{formattedLabel:n(_),rawLabel:a.getLabel(_),tickValue:h})}return u}function f5(r,t,e){var n=r.scale,a=jv(r),o=[];return T(n.getTicks(),function(i){var u=n.getLabel(i),l=i.value;t(i.value,u)&&o.push(e?l:{formattedLabel:a(i),rawLabel:u,tickValue:l})}),o}var s5=[0,1],Rpt=(function(){function r(t,e,n){this.onBand=!1,this.inverse=!1,this.dim=t,this.scale=e,this._extent=n||[0,0]}return r.prototype.contain=function(t){var e=this._extent,n=Math.min(e[0],e[1]),a=Math.max(e[0],e[1]);return t>=n&&t<=a},r.prototype.containData=function(t){return this.scale.contain(t)},r.prototype.getExtent=function(){return this._extent.slice()},r.prototype.getPixelPrecision=function(t){return j0(t||this.scale.getExtent(),this._extent)},r.prototype.setExtent=function(t,e){var n=this._extent;n[0]=t,n[1]=e},r.prototype.dataToCoord=function(t,e){var n=this._extent,a=this.scale;return t=a.normalize(t),this.onBand&&a.type==="ordinal"&&(n=n.slice(),c5(n,a.count())),Ie(t,s5,n,e)},r.prototype.coordToData=function(t,e){var n=this._extent,a=this.scale;this.onBand&&a.type==="ordinal"&&(n=n.slice(),c5(n,a.count()));var o=Ie(t,n,s5,e);return this.scale.scale(o)},r.prototype.pointToData=function(t,e){},r.prototype.getTicksCoords=function(t){t=t||{};var e=t.tickModel||this.getTickModel(),n=r5(this,e),a=n.ticks,o=U(a,function(u){return{coord:this.dataToCoord(this.scale.type==="ordinal"?this.scale.getRawOrdinalNumber(u):u),tickValue:u}},this),i=e.get("alignWithLabel");return Ppt(this,o,i,t.clamp),o},r.prototype.getMinorTicksCoords=function(){if(this.scale.type==="ordinal")return[];var t=this.model.getModel("minorTick"),e=t.get("splitNumber");e>0&&e<100||(e=5);var n=this.scale.getMinorTicks(e),a=U(n,function(o){return U(o,function(i){return{coord:this.dataToCoord(i),tickValue:i}},this)},this);return a},r.prototype.getViewLabels=function(){return e5(this).labels},r.prototype.getLabelModel=function(){return this.model.getModel("axisLabel")},r.prototype.getTickModel=function(){return this.model.getModel("axisTick")},r.prototype.getBandWidth=function(){var t=this._extent,e=this.scale.getExtent(),n=e[1]-e[0]+(this.onBand?1:0);n===0&&(n=1);var a=Math.abs(t[1]-t[0]);return Math.abs(a)/n},r.prototype.calculateCategoryInterval=function(){return u5(this)},r})();function c5(r,t){var e=r[1]-r[0],n=t,a=e/n/2;r[0]+=a,r[1]-=a}function Ppt(r,t,e,n){var a=t.length;if(!r.onBand||e||!a)return;var o=r.getExtent(),i,u;if(a===1)t[0].coord=o[0],i=t[1]={coord:o[1]};else{var l=t[a-1].tickValue-t[0].tickValue,f=(t[a-1].coord-t[0].coord)/l;T(t,function(v){v.coord-=f/2});var s=r.scale.getExtent();u=1+s[1]-t[a-1].tickValue,i={coord:t[a-1].coord+f*u},t.push(i)}var c=o[0]>o[1];p(t[0].coord,o[0])&&(n?t[0].coord=o[0]:t.shift()),n&&p(o[0],t[0].coord)&&t.unshift({coord:o[0]}),p(o[1],i.coord)&&(n?i.coord=o[1]:t.pop()),n&&p(i.coord,o[1])&&t.push({coord:o[1]});function p(v,d){return v=Qe(v),d=Qe(d),c?v>d:v<d}}var Nn=Rpt;var Z_=Math.PI*2,Nc=Tn.CMD,Npt=["top","right","bottom","left"];function Opt(r,t,e,n,a){var o=e.width,i=e.height;switch(r){case"top":n.set(e.x+o/2,e.y-t),a.set(0,-1);break;case"bottom":n.set(e.x+o/2,e.y+i+t),a.set(0,1);break;case"left":n.set(e.x-t,e.y+i/2),a.set(-1,0);break;case"right":n.set(e.x+o+t,e.y+i/2),a.set(1,0);break}}function Upt(r,t,e,n,a,o,i,u,l){i-=r,u-=t;var f=Math.sqrt(i*i+u*u);i/=f,u/=f;var s=i*e+r,c=u*e+t;if(Math.abs(n-a)%Z_<1e-4)return l[0]=s,l[1]=c,f-e;if(o){var p=n;n=Jn(a),a=Jn(p)}else n=Jn(n),a=Jn(a);n>a&&(a+=Z_);var v=Math.atan2(u,i);if(v<0&&(v+=Z_),v>=n&&v<=a||v+Z_>=n&&v+Z_<=a)return l[0]=s,l[1]=c,f-e;var d=e*Math.cos(n)+r,m=e*Math.sin(n)+t,h=e*Math.cos(a)+r,_=e*Math.sin(a)+t,g=(d-i)*(d-i)+(m-u)*(m-u),y=(h-i)*(h-i)+(_-u)*(_-u);return g<y?(l[0]=d,l[1]=m,Math.sqrt(g)):(l[0]=h,l[1]=_,Math.sqrt(y))}function VC(r,t,e,n,a,o,i,u){var l=a-r,f=o-t,s=e-r,c=n-t,p=Math.sqrt(s*s+c*c);s/=p,c/=p;var v=l*s+f*c,d=v/p;u&&(d=Math.min(Math.max(d,0),1)),d*=p;var m=i[0]=r+d*s,h=i[1]=t+d*c;return Math.sqrt((m-a)*(m-a)+(h-o)*(h-o))}function p5(r,t,e,n,a,o,i){e<0&&(r=r+e,e=-e),n<0&&(t=t+n,n=-n);var u=r+e,l=t+n,f=i[0]=Math.min(Math.max(a,r),u),s=i[1]=Math.min(Math.max(o,t),l);return Math.sqrt((f-a)*(f-a)+(s-o)*(s-o))}var Hi=[];function Hpt(r,t,e){var n=p5(t.x,t.y,t.width,t.height,r.x,r.y,Hi);return e.set(Hi[0],Hi[1]),n}function kpt(r,t,e){for(var n=0,a=0,o=0,i=0,u,l,f=1/0,s=t.data,c=r.x,p=r.y,v=0;v<s.length;){var d=s[v++];v===1&&(n=s[v],a=s[v+1],o=n,i=a);var m=f;switch(d){case Nc.M:o=s[v++],i=s[v++],n=o,a=i;break;case Nc.L:m=VC(n,a,s[v],s[v+1],c,p,Hi,!0),n=s[v++],a=s[v++];break;case Nc.C:m=w0(n,a,s[v++],s[v++],s[v++],s[v++],s[v],s[v+1],c,p,Hi),n=s[v++],a=s[v++];break;case Nc.Q:m=E0(n,a,s[v++],s[v++],s[v],s[v+1],c,p,Hi),n=s[v++],a=s[v++];break;case Nc.A:var h=s[v++],_=s[v++],g=s[v++],y=s[v++],D=s[v++],b=s[v++];v+=1;var C=!!(1-s[v++]);u=Math.cos(D)*g+h,l=Math.sin(D)*y+_,v<=1&&(o=u,i=l);var x=(c-h)*y/g+h;m=Upt(h,_,y,D,D+b,C,x,p,Hi),n=Math.cos(D+b)*g+h,a=Math.sin(D+b)*y+_;break;case Nc.R:o=n=s[v++],i=a=s[v++];var w=s[v++],S=s[v++];m=p5(o,i,w,S,c,p,Hi);break;case Nc.Z:m=VC(n,a,o,i,c,p,Hi,!0),n=o,a=i;break}m<f&&(f=m,e.set(Hi[0],Hi[1]))}return f}var ki=new Qt,pr=new Qt,Qr=new Qt,Eu=new Qt,Su=new Qt;function mI(r,t){if(r){var e=r.getTextGuideLine(),n=r.getTextContent();if(n&&e){var a=r.textGuideLineConfig||{},o=[[0,0],[0,0],[0,0]],i=a.candidates||Npt,u=n.getBoundingRect().clone();u.applyTransform(n.getComputedTransform());var l=1/0,f=a.anchor,s=r.getComputedTransform(),c=s&&Go([],s),p=t.get("length2")||0;f&&Qr.copy(f);for(var v=0;v<i.length;v++){var d=i[v];Opt(d,0,u,ki,Eu),Qt.scaleAndAdd(pr,ki,Eu,p),pr.transform(c);var m=r.getBoundingRect(),h=f?f.distance(pr):r instanceof bt?kpt(pr,r.path,Qr):Hpt(pr,m,Qr);h<l&&(l=h,pr.transform(s),Qr.transform(s),Qr.toArray(o[0]),pr.toArray(o[1]),ki.toArray(o[2]))}hI(o,t.get("minTurnAngle")),e.setShape({points:o})}}}var $C=[],Ia=new Qt;function hI(r,t){if(t<=180&&t>0){t=t/180*Math.PI,ki.fromArray(r[0]),pr.fromArray(r[1]),Qr.fromArray(r[2]),Qt.sub(Eu,ki,pr),Qt.sub(Su,Qr,pr);var e=Eu.len(),n=Su.len();if(!(e<.001||n<.001)){Eu.scale(1/e),Su.scale(1/n);var a=Eu.dot(Su),o=Math.cos(t);if(o<a){var i=VC(pr.x,pr.y,Qr.x,Qr.y,ki.x,ki.y,$C,!1);Ia.fromArray($C),Ia.scaleAndAdd(Su,i/Math.tan(Math.PI-t));var u=Qr.x!==pr.x?(Ia.x-pr.x)/(Qr.x-pr.x):(Ia.y-pr.y)/(Qr.y-pr.y);if(isNaN(u))return;u<0?Qt.copy(Ia,pr):u>1&&Qt.copy(Ia,Qr),Ia.toArray(r[1])}}}}function v5(r,t,e){if(e<=180&&e>0){e=e/180*Math.PI,ki.fromArray(r[0]),pr.fromArray(r[1]),Qr.fromArray(r[2]),Qt.sub(Eu,pr,ki),Qt.sub(Su,Qr,pr);var n=Eu.len(),a=Su.len();if(!(n<.001||a<.001)){Eu.scale(1/n),Su.scale(1/a);var o=Eu.dot(t),i=Math.cos(e);if(o<i){var u=VC(pr.x,pr.y,Qr.x,Qr.y,ki.x,ki.y,$C,!1);Ia.fromArray($C);var l=Math.PI/2,f=Math.acos(Su.dot(t)),s=l+f-e;if(s>=l)Qt.copy(Ia,Qr);else{Ia.scaleAndAdd(Su,u/Math.tan(Math.PI/2-s));var c=Qr.x!==pr.x?(Ia.x-pr.x)/(Qr.x-pr.x):(Ia.y-pr.y)/(Qr.y-pr.y);if(isNaN(c))return;c<0?Qt.copy(Ia,pr):c>1&&Qt.copy(Ia,Qr)}Ia.toArray(r[1])}}}}function dI(r,t,e,n){var a=e==="normal",o=a?r:r.ensureState(e);o.ignore=t;var i=n.get("smooth");i&&i===!0&&(i=.3),o.shape=o.shape||{},i>0&&(o.shape.smooth=i);var u=n.getModel("lineStyle").getLineStyle();a?r.useStyle(u):o.style=u}function zpt(r,t){var e=t.smooth,n=t.points;if(n)if(r.moveTo(n[0][0],n[0][1]),e>0&&n.length>=3){var a=Wo(n[0],n[1]),o=Wo(n[1],n[2]);if(!a||!o){r.lineTo(n[1][0],n[1][1]),r.lineTo(n[2][0],n[2][1]);return}var i=Math.min(a,o)*e,u=ov([],n[1],n[0],i/a),l=ov([],n[1],n[2],i/o),f=ov([],u,l,.5);r.bezierCurveTo(u[0],u[1],u[0],u[1],f[0],f[1]),r.bezierCurveTo(l[0],l[1],l[0],l[1],n[2][0],n[2][1])}else for(var s=1;s<n.length;s++)r.lineTo(n[s][0],n[s][1])}function Qv(r,t,e){var n=r.getTextGuideLine(),a=r.getTextContent();if(!a){n&&r.removeTextGuideLine();return}for(var o=t.normal,i=o.get("show"),u=a.ignore,l=0;l<Ef.length;l++){var f=Ef[l],s=t[f],c=f==="normal";if(s){var p=s.get("show"),v=c?u:Tt(a.states[f]&&a.states[f].ignore,u);if(v||!Tt(p,i)){var d=c?n:n&&n.states[f];d&&(d.ignore=!0),n&&dI(n,!0,f,s);continue}n||(n=new yr,r.setTextGuideLine(n),!c&&(u||!i)&&dI(n,!0,"normal",t.normal),r.stateProxy&&(n.stateProxy=r.stateProxy)),dI(n,!1,f,s)}}if(n){et(n.style,e),n.style.fill=null;var m=o.get("showAbove"),h=r.textGuideLineConfig=r.textGuideLineConfig||{};h.showAbove=m||!1,n.buildPath=zpt}}function Zv(r,t){t=t||"labelLine";for(var e={normal:r.getModel(t)},n=0;n<sn.length;n++){var a=sn[n];e[a]=r.getModel([a,t])}return e}function qC(r){for(var t=[],e=0;e<r.length;e++){var n=r[e];if(!n.defaultAttr.ignore){var a=n.label,o=a.getComputedTransform(),i=a.getBoundingRect(),u=!o||o[1]<1e-5&&o[2]<1e-5,l=a.style.margin||0,f=i.clone();f.applyTransform(o),f.x-=l/2,f.y-=l/2,f.width+=l,f.height+=l;var s=u?new Iv(i,o):null;t.push({label:a,labelLine:n.labelLine,rect:f,localRect:i,obb:s,priority:n.priority,defaultAttr:n.defaultAttr,layoutOption:n.computedLayoutOption,axisAligned:u,transform:o})}}return t}function d5(r,t,e,n,a,o){var i=r.length;if(i<2)return;r.sort(function(S,E){return S.rect[t]-E.rect[t]});for(var u=0,l,f=!1,s=[],c=0,p=0;p<i;p++){var v=r[p],d=v.rect;l=d[t]-u,l<0&&(d[t]-=l,v.label[t]-=l,f=!0);var m=Math.max(-l,0);s.push(m),c+=m,u=d[t]+d[e]}c>0&&o&&C(-c/i,0,i);var h=r[0],_=r[i-1],g,y;D(),g<0&&x(-g,.8),y<0&&x(y,.8),D(),b(g,y,1),b(y,g,-1),D(),g<0&&w(-g),y<0&&w(y);function D(){g=h.rect[t]-n,y=a-_.rect[t]-_.rect[e]}function b(S,E,M){if(S<0){var I=Math.min(E,-S);if(I>0){C(I*M,0,i);var F=I+S;F<0&&x(-F*M,1)}else x(-S*M,1)}}function C(S,E,M){S!==0&&(f=!0);for(var I=E;I<M;I++){var F=r[I],L=F.rect;L[t]+=S,F.label[t]+=S}}function x(S,E){for(var M=[],I=0,F=1;F<i;F++){var L=r[F-1].rect,R=Math.max(r[F].rect[t]-L[t]-L[e],0);M.push(R),I+=R}if(I){var P=Math.min(Math.abs(S)/I,E);if(S>0)for(var F=0;F<i-1;F++){var k=M[F]*P;C(k,0,F+1)}else for(var F=i-1;F>0;F--){var k=M[F-1]*P;C(-k,F,i)}}}function w(S){var E=S<0?-1:1;S=Math.abs(S);for(var M=Math.ceil(S/(i-1)),I=0;I<i-1;I++)if(E>0?C(M,0,I+1):C(-M,i-I-1,i),S-=M,S<=0)return}return f}function m5(r,t,e,n){return d5(r,"x","width",t,e,n)}function JC(r,t,e,n){return d5(r,"y","height",t,e,n)}function jC(r){var t=[];r.sort(function(m,h){return h.priority-m.priority});var e=new yt(0,0,0,0);function n(m){if(!m.ignore){var h=m.ensureState("emphasis");h.ignore==null&&(h.ignore=!1)}m.ignore=!0}for(var a=0;a<r.length;a++){var o=r[a],i=o.axisAligned,u=o.localRect,l=o.transform,f=o.label,s=o.labelLine;e.copy(o.rect),e.width-=.1,e.height-=.1,e.x+=.05,e.y+=.05;for(var c=o.obb,p=!1,v=0;v<t.length;v++){var d=t[v];if(e.intersect(d.rect)){if(i&&d.axisAligned){p=!0;break}if(d.obb||(d.obb=new Iv(d.localRect,d.transform)),c||(c=new Iv(u,l)),c.intersect(d.obb)){p=!0;break}}}p?(n(f),s&&n(s)):(f.attr("ignore",o.defaultAttr.ignore),s&&s.attr("ignore",o.defaultAttr.labelGuideIgnore),t.push(o))}}function Wpt(r){if(r){for(var t=[],e=0;e<r.length;e++)t.push(r[e].slice());return t}}function Gpt(r,t){var e=r.label,n=t&&t.getTextGuideLine();return{dataIndex:r.dataIndex,dataType:r.dataType,seriesIndex:r.seriesModel.seriesIndex,text:r.label.style.text,rect:r.hostRect,labelRect:r.rect,align:e.style.align,verticalAlign:e.style.verticalAlign,labelLinePoints:Wpt(n&&n.shape.points)}}var h5=["align","verticalAlign","width","height","fontSize"],Fa=new Ya,_I=St(),Bpt=St();function YC(r,t,e){for(var n=0;n<e.length;n++){var a=e[n];t[a]!=null&&(r[a]=t[a])}}var QC=["x","y","rotation"],Vpt=(function(){function r(){this._labelList=[],this._chartViewList=[]}return r.prototype.clearLabels=function(){this._labelList=[],this._chartViewList=[]},r.prototype._addLabel=function(t,e,n,a,o){var i=a.style,u=a.__hostTarget,l=u.textConfig||{},f=a.getComputedTransform(),s=a.getBoundingRect().plain();yt.applyTransform(s,s,f),f?Fa.setLocalTransform(f):(Fa.x=Fa.y=Fa.rotation=Fa.originX=Fa.originY=0,Fa.scaleX=Fa.scaleY=1),Fa.rotation=Jn(Fa.rotation);var c=a.__hostTarget,p;if(c){p=c.getBoundingRect().plain();var v=c.getComputedTransform();yt.applyTransform(p,p,v)}var d=p&&c.getTextGuideLine();this._labelList.push({label:a,labelLine:d,seriesModel:n,dataIndex:t,dataType:e,layoutOption:o,computedLayoutOption:null,rect:s,hostRect:p,priority:p?p.width*p.height:0,defaultAttr:{ignore:a.ignore,labelGuideIgnore:d&&d.ignore,x:Fa.x,y:Fa.y,scaleX:Fa.scaleX,scaleY:Fa.scaleY,rotation:Fa.rotation,style:{x:i.x,y:i.y,align:i.align,verticalAlign:i.verticalAlign,width:i.width,height:i.height,fontSize:i.fontSize},cursor:a.cursor,attachedPos:l.position,attachedRot:l.rotation}})},r.prototype.addLabelsOfSeries=function(t){var e=this;this._chartViewList.push(t);var n=t.__model,a=n.get("labelLayout");(X(a)||Ft(a).length)&&t.group.traverse(function(o){if(o.ignore)return!0;var i=o.getTextContent(),u=vt(o);i&&!i.disableLabelLayout&&e._addLabel(u.dataIndex,u.dataType,n,i,a)})},r.prototype.updateLayoutConfig=function(t){var e=t.getWidth(),n=t.getHeight();function a(y,D){return function(){mI(y,D)}}for(var o=0;o<this._labelList.length;o++){var i=this._labelList[o],u=i.label,l=u.__hostTarget,f=i.defaultAttr,s=void 0;X(i.layoutOption)?s=i.layoutOption(Gpt(i,l)):s=i.layoutOption,s=s||{},i.computedLayoutOption=s;var c=Math.PI/180;l&&l.setTextConfig({local:!1,position:s.x!=null||s.y!=null?null:f.attachedPos,rotation:s.rotate!=null?s.rotate*c:f.attachedRot,offset:[s.dx||0,s.dy||0]});var p=!1;if(s.x!=null?(u.x=Y(s.x,e),u.setStyle("x",0),p=!0):(u.x=f.x,u.setStyle("x",f.style.x)),s.y!=null?(u.y=Y(s.y,n),u.setStyle("y",0),p=!0):(u.y=f.y,u.setStyle("y",f.style.y)),s.labelLinePoints){var v=l.getTextGuideLine();v&&(v.setShape({points:s.labelLinePoints}),p=!1)}var d=_I(u);d.needsUpdateLabelLine=p,u.rotation=s.rotate!=null?s.rotate*c:f.rotation,u.scaleX=f.scaleX,u.scaleY=f.scaleY;for(var m=0;m<h5.length;m++){var h=h5[m];u.setStyle(h,s[h]!=null?s[h]:f.style[h])}if(s.draggable){if(u.draggable=!0,u.cursor="move",l){var _=i.seriesModel;if(i.dataIndex!=null){var g=i.seriesModel.getData(i.dataType);_=g.getItemModel(i.dataIndex)}u.on("drag",a(l,_.getModel("labelLine")))}}else u.off("drag"),u.cursor=f.cursor}},r.prototype.layout=function(t){var e=t.getWidth(),n=t.getHeight(),a=qC(this._labelList),o=de(a,function(l){return l.layoutOption.moveOverlap==="shiftX"}),i=de(a,function(l){return l.layoutOption.moveOverlap==="shiftY"});m5(o,0,e),JC(i,0,n);var u=de(a,function(l){return l.layoutOption.hideOverlap});jC(u)},r.prototype.processLabelsOverall=function(){var t=this;T(this._chartViewList,function(e){var n=e.__model,a=e.ignoreLabelLineUpdate,o=n.isAnimationEnabled();e.group.traverse(function(i){if(i.ignore&&!i.forceLabelAnimation)return!0;var u=!a,l=i.getTextContent();!u&&l&&(u=_I(l).needsUpdateLabelLine),u&&t._updateLabelLine(i,n),o&&t._animateLabels(i,n)})})},r.prototype._updateLabelLine=function(t,e){var n=t.getTextContent(),a=vt(t),o=a.dataIndex;if(n&&o!=null){var i=e.getData(a.dataType),u=i.getItemModel(o),l={},f=i.getItemVisual(o,"style");if(f){var s=i.getVisual("drawType");l.stroke=f[s]}var c=u.getModel("labelLine");Qv(t,Zv(u),l),mI(t,c)}},r.prototype._animateLabels=function(t,e){var n=t.getTextContent(),a=t.getTextGuideLine();if(n&&(t.forceLabelAnimation||!n.ignore&&!n.invisible&&!t.disableLabelAnimation&&!dl(t))){var o=_I(n),i=o.oldLayout,u=vt(t),l=u.dataIndex,f={x:n.x,y:n.y,rotation:n.rotation},s=e.getData(u.dataType);if(i){n.attr(i);var p=t.prevStates;p&&(wt(p,"select")>=0&&n.attr(o.oldLayoutSelect),wt(p,"emphasis")>=0&&n.attr(o.oldLayoutEmphasis)),$t(n,f,e,l)}else if(n.attr(f),!yl(n).valueAnimation){var c=Tt(n.style.opacity,1);n.style.opacity=0,Ae(n,{style:{opacity:c}},e,l)}if(o.oldLayout=f,n.states.select){var v=o.oldLayoutSelect={};YC(v,f,QC),YC(v,n.states.select,QC)}if(n.states.emphasis){var d=o.oldLayoutEmphasis={};YC(d,f,QC),YC(d,n.states.emphasis,QC)}Mb(n,l,s,e,e)}if(a&&!a.ignore&&!a.invisible){var o=Bpt(a),i=o.oldLayout,m={points:a.shape.points};i?(a.attr({shape:i}),$t(a,{shape:m},e)):(a.setShape(m),a.style.strokePercent=0,Ae(a,{style:{strokePercent:1}},e)),o.oldLayout=m}},r})(),_5=Vpt;var gI=St();function yI(r){r.registerUpdateLifecycle("series:beforeupdate",function(t,e,n){var a=gI(e).labelManager;a||(a=gI(e).labelManager=new _5),a.clearLabels()}),r.registerUpdateLifecycle("series:layoutlabels",function(t,e,n){var a=gI(e).labelManager;n.updatedSeries.forEach(function(o){a.addLabelsOfSeries(e.getViewOfSeriesModel(o))}),a.updateLayoutConfig(e),a.layout(e),a.processLabelsOverall()})}var DI=Math.sin,bI=Math.cos,g5=Math.PI,Oc=Math.PI*2,$pt=180/g5,qpt=(function(){function r(){}return r.prototype.reset=function(t){this._start=!0,this._d=[],this._str="",this._p=Math.pow(10,t||4)},r.prototype.moveTo=function(t,e){this._add("M",t,e)},r.prototype.lineTo=function(t,e){this._add("L",t,e)},r.prototype.bezierCurveTo=function(t,e,n,a,o,i){this._add("C",t,e,n,a,o,i)},r.prototype.quadraticCurveTo=function(t,e,n,a){this._add("Q",t,e,n,a)},r.prototype.arc=function(t,e,n,a,o,i){this.ellipse(t,e,n,n,0,a,o,i)},r.prototype.ellipse=function(t,e,n,a,o,i,u,l){var f=u-i,s=!l,c=Math.abs(f),p=pu(c-Oc)||(s?f>=Oc:-f>=Oc),v=f>0?f%Oc:f%Oc+Oc,d=!1;p?d=!0:pu(c)?d=!1:d=v>=g5==!!s;var m=t+n*bI(i),h=e+a*DI(i);this._start&&this._add("M",m,h);var _=Math.round(o*$pt);if(p){var g=1/this._p,y=(s?1:-1)*(Oc-g);this._add("A",n,a,_,1,+s,t+n*bI(i+y),e+a*DI(i+y)),g>.01&&this._add("A",n,a,_,0,+s,m,h)}else{var D=t+n*bI(u),b=e+a*DI(u);this._add("A",n,a,_,+d,+s,D,b)}},r.prototype.rect=function(t,e,n,a){this._add("M",t,e),this._add("l",n,0),this._add("l",0,a),this._add("l",-n,0),this._add("Z")},r.prototype.closePath=function(){this._d.length>0&&this._add("Z")},r.prototype._add=function(t,e,n,a,o,i,u,l,f){for(var s=[],c=this._p,p=1;p<arguments.length;p++){var v=arguments[p];if(isNaN(v)){this._invalid=!0;return}s.push(Math.round(v*c)/c)}this._d.push(t+s.join(" ")),this._start=t==="Z"},r.prototype.generateStr=function(){this._str=this._invalid?"":this._d.join(""),this._d=[]},r.prototype.getStr=function(){return this._str},r})(),ZC=qpt;var X_="none",Jpt=Math.round;function jpt(r){var t=r.fill;return t!=null&&t!==X_}function Ypt(r){var t=r.stroke;return t!=null&&t!==X_}var CI=["lineCap","miterLimit","lineJoin"],Qpt=U(CI,function(r){return"stroke-"+r.toLowerCase()});function TI(r,t,e,n){var a=t.opacity==null?1:t.opacity;if(e instanceof er){r("opacity",a);return}if(jpt(t)){var o=yf(t.fill);r("fill",o.color);var i=t.fillOpacity!=null?t.fillOpacity*o.opacity*a:o.opacity*a;(n||i<1)&&r("fill-opacity",i)}else r("fill",X_);if(Ypt(t)){var u=yf(t.stroke);r("stroke",u.color);var l=t.strokeNoScale?e.getLineScale():1,f=l?(t.lineWidth||0)/l:0,s=t.strokeOpacity!=null?t.strokeOpacity*u.opacity*a:u.opacity*a,c=t.strokeFirst;if((n||f!==1)&&r("stroke-width",f),(n||c)&&r("paint-order",c?"stroke":"fill"),(n||s<1)&&r("stroke-opacity",s),t.lineDash){var p=N_(e),v=p[0],d=p[1];v&&(d=Jpt(d||0),r("stroke-dasharray",v.join(",")),(d||n)&&r("stroke-dashoffset",d))}else n&&r("stroke-dasharray",X_);for(var m=0;m<CI.length;m++){var h=CI[m];if(n||t[h]!==bv[h]){var _=t[h]||bv[h];_&&r(Qpt[m],_)}}}else n&&r("stroke",X_)}var y5="http://www.w3.org/2000/svg",xI="http://www.w3.org/1999/xlink",D5="http://www.w3.org/2000/xmlns/",b5="http://www.w3.org/XML/1998/namespace",wI="ecmeta_";function XC(r){return document.createElementNS(y5,r)}function Zr(r,t,e,n,a){return{tag:r,attrs:e||{},children:n,text:a,key:t}}function Zpt(r,t){var e=[];if(t)for(var n in t){var a=t[n],o=n;a!==!1&&(a!==!0&&a!=null&&(o+='="'+a+'"'),e.push(o))}return"<"+r+" "+e.join(" ")+">"}function Xpt(r){return"</"+r+">"}function K_(r,t){t=t||{};var e=t.newline?`+`:"";function n(a){var o=a.children,i=a.tag,u=a.attrs,l=a.text;return Zpt(i,u)+(i!=="style"?Vn(l):l||"")+(o?""+e+U(o,function(f){return n(f)}).join(e)+e:"")+Xpt(i)}return n(r)}function C5(r,t,e){e=e||{};var n=e.newline?`+`:"",a=" {"+n,o=n+"}",i=U(Ft(r),function(l){return l+a+U(Ft(r[l]),function(f){return f+":"+r[l][f]+";"}).join(n)+o}).join(n),u=U(Ft(t),function(l){return"@keyframes "+l+a+U(Ft(t[l]),function(f){return f+a+U(Ft(t[l][f]),function(s){var c=t[l][f][s];return s==="d"&&(c='path("'+c+'")'),s+":"+c+";"}).join(n)+o}).join(n)+o}).join(n);return!i&&!u?"":["<![CDATA[",i,u,"]]>"].join(n)}function tg(r){return{zrId:r,shadowCache:{},patternCache:{},gradientCache:{},clipPathCache:{},defs:{},cssNodes:{},cssAnims:{},cssStyleCache:{},cssAnimIdx:0,shadowIdx:0,gradientIdx:0,patternIdx:0,clipPathIdx:0}}function SI(r,t,e,n){return Zr("svg","root",{width:r,height:t,xmlns:y5,"xmlns:xlink":xI,version:"1.1",baseProfile:"full",viewBox:n?"0 0 "+r+" "+t:!1},e)}var Kpt=0;function KC(){return Kpt++}var T5={cubicIn:"0.32,0,0.67,0",cubicOut:"0.33,1,0.68,1",cubicInOut:"0.65,0,0.35,1",quadraticIn:"0.11,0,0.5,0",quadraticOut:"0.5,1,0.89,1",quadraticInOut:"0.45,0,0.55,1",quarticIn:"0.5,0,0.75,0",quarticOut:"0.25,1,0.5,1",quarticInOut:"0.76,0,0.24,1",quinticIn:"0.64,0,0.78,0",quinticOut:"0.22,1,0.36,1",quinticInOut:"0.83,0,0.17,1",sinusoidalIn:"0.12,0,0.39,0",sinusoidalOut:"0.61,1,0.88,1",sinusoidalInOut:"0.37,0,0.63,1",exponentialIn:"0.7,0,0.84,0",exponentialOut:"0.16,1,0.3,1",exponentialInOut:"0.87,0,0.13,1",circularIn:"0.55,0,1,0.45",circularOut:"0,0.55,0.45,1",circularInOut:"0.85,0,0.15,1"},Uc="transform-origin";function tvt(r,t,e){var n=N({},r.shape);N(n,t),r.buildPath(e,n);var a=new ZC;return a.reset(U0(r)),e.rebuildPath(a,1),a.generateStr(),a.getStr()}function evt(r,t){var e=t.originX,n=t.originY;(e||n)&&(r[Uc]=e+"px "+n+"px")}var rvt={fill:"fill",opacity:"opacity",lineWidth:"stroke-width",lineDashOffset:"stroke-dashoffset"};function w5(r,t){var e=t.zrId+"-ani-"+t.cssAnimIdx++;return t.cssAnims[e]=r,e}function nvt(r,t,e){var n=r.shape.paths,a={},o,i;if(T(n,function(l){var f=tg(e.zrId);f.animation=!0,eg(l,{},f,!0);var s=f.cssAnims,c=f.cssNodes,p=Ft(s),v=p.length;if(v){i=p[v-1];var d=s[i];for(var m in d){var h=d[m];a[m]=a[m]||{d:""},a[m].d+=h.d||""}for(var _ in c){var g=c[_].animation;g.indexOf(i)>=0&&(o=g)}}}),!!o){t.d=!1;var u=w5(a,e);return o.replace(i,u)}}function x5(r){return V(r)?T5[r]?"cubic-bezier("+T5[r]+")":sv(r)?r:"":""}function eg(r,t,e,n){var a=r.animators,o=a.length,i=[];if(r instanceof Av){var u=nvt(r,t,e);if(u)i.push(u);else if(!o)return}else if(!o)return;for(var l={},f=0;f<o;f++){var s=a[f],c=[s.getMaxTime()/1e3+"s"],p=x5(s.getClip().easing),v=s.getDelay();p?c.push(p):c.push("linear"),v&&c.push(v/1e3+"s"),s.getLoop()&&c.push("infinite");var d=c.join(" ");l[d]=l[d]||[d,[]],l[d][1].push(s)}function m(g){var y=g[1],D=y.length,b={},C={},x={},w="animation-timing-function";function S($,Ct,ct){for(var ft=$.getTracks(),It=$.getMaxTime(),re=0;re<ft.length;re++){var Bt=ft[re];if(Bt.needsAnimate()){var rr=Bt.keyframes,Ge=Bt.propName;if(ct&&(Ge=ct(Ge)),Ge)for(var Sr=0;Sr<rr.length;Sr++){var Sn=rr[Sr],ke=Math.round(Sn.time/It*100)+"%",ne=x5(Sn.easing),Ce=Sn.rawValue;(V(Ce)||Nt(Ce))&&(Ct[ke]=Ct[ke]||{},Ct[ke][Ge]=Sn.rawValue,ne&&(Ct[ke][w]=ne))}}}}for(var E=0;E<D;E++){var M=y[E],I=M.targetName;I?I==="shape"&&S(M,C):!n&&S(M,b)}for(var F in b){var L={};RE(L,r),N(L,b[F]);var R=H0(L),P=b[F][w];x[F]=R?{transform:R}:{},evt(x[F],L),P&&(x[F][w]=P)}var k,H=!0;for(var F in C){x[F]=x[F]||{};var G=!k,P=C[F][w];G&&(k=new Tn);var j=k.len();k.reset(),x[F].d=tvt(r,C[F],k);var rt=k.len();if(!G&&j!==rt){H=!1;break}P&&(x[F][w]=P)}if(!H)for(var F in x)delete x[F].d;if(!n)for(var E=0;E<D;E++){var M=y[E],I=M.targetName;I==="style"&&S(M,x,function(ft){return rvt[ft]})}for(var xt=Ft(x),J=!0,ot,E=1;E<xt.length;E++){var At=xt[E-1],Mt=xt[E];if(x[At][Uc]!==x[Mt][Uc]){J=!1;break}ot=x[At][Uc]}if(J&&ot){for(var F in x)x[F][Uc]&&delete x[F][Uc];t[Uc]=ot}if(de(xt,function($){return Ft(x[$]).length>0}).length){var ut=w5(x,e);return ut+" "+g[0]+" both"}}for(var h in l){var u=m(l[h]);u&&i.push(u)}if(i.length){var _=e.zrId+"-cls-"+KC();e.cssNodes["."+_]={animation:i.join(",")},t.class=_}}function E5(r,t,e){if(!r.ignore)if(r.isSilent()){var n={"pointer-events":"none"};S5(n,t,e,!0)}else{var a=r.states.emphasis&&r.states.emphasis.style?r.states.emphasis.style:{},o=a.fill;if(!o){var i=r.style&&r.style.fill,u=r.states.select&&r.states.select.style&&r.states.select.style.fill,l=r.currentStates.indexOf("select")>=0&&u||i;l&&(o=Oh(l))}var f=a.lineWidth;if(f){var s=!a.strokeNoScale&&r.transform?r.transform[0]:1;f=f/s}var n={cursor:"pointer"};o&&(n.fill=o),a.stroke&&(n.stroke=a.stroke),f&&(n["stroke-width"]=f),S5(n,t,e,!0)}}function S5(r,t,e,n){var a=JSON.stringify(r),o=e.cssStyleCache[a];o||(o=e.zrId+"-cls-"+KC(),e.cssStyleCache[a]=o,e.cssNodes["."+o+(n?":hover":"")]=r),t.class=t.class?t.class+" "+o:o}var rg=Math.round;function F5(r){return r&&V(r.src)}function L5(r){return r&&X(r.toDataURL)}function EI(r,t,e,n){TI(function(a,o){var i=a==="fill"||a==="stroke";i&&O0(o)?FI(t,r,a,n):i&&Uh(o)?LI(e,r,a,n):i&&o==="none"?r[a]="transparent":r[a]=o},t,e,!1),svt(e,r,n)}function MI(r,t){var e=IW(t);e&&(e.each(function(n,a){n!=null&&(r[(wI+a).toLowerCase()]=n+"")}),t.isSilent()&&(r[wI+"silent"]="true"))}function M5(r){return pu(r[0]-1)&&pu(r[1])&&pu(r[2])&&pu(r[3]-1)}function avt(r){return pu(r[4])&&pu(r[5])}function AI(r,t,e){if(t&&!(avt(t)&&M5(t))){var n=e?10:1e4;r.transform=M5(t)?"translate("+rg(t[4]*n)/n+" "+rg(t[5]*n)/n+")":aW(t)}}function A5(r,t,e){for(var n=r.points,a=[],o=0;o<n.length;o++)a.push(rg(n[o][0]*e)/e),a.push(rg(n[o][1]*e)/e);t.points=a.join(" ")}function I5(r){return!r.smooth}function ovt(r){var t=U(r,function(e){return typeof e=="string"?[e,e]:e});return function(e,n,a){for(var o=0;o<t.length;o++){var i=t[o],u=e[i[0]];u!=null&&(n[i[1]]=rg(u*a)/a)}}}var ivt={circle:[ovt(["cx","cy","r"])],polyline:[A5,I5],polygon:[A5,I5]};function uvt(r){for(var t=r.animators,e=0;e<t.length;e++)if(t[e].targetName==="shape")return!0;return!1}function R5(r,t){var e=r.style,n=r.shape,a=ivt[r.type],o={},i=t.animation,u="path",l=r.style.strokePercent,f=t.compress&&U0(r)||4;if(a&&!t.willUpdate&&!(a[1]&&!a[1](n))&&!(i&&uvt(r))&&!(l<1)){u=r.type;var s=Math.pow(10,f);a[0](n,o,s)}else{var c=!r.path||r.shapeChanged();r.path||r.createPathProxy();var p=r.path;c&&(p.beginPath(),r.buildPath(p,r.shape),r.pathUpdated());var v=p.getVersion(),d=r,m=d.__svgPathBuilder;(d.__svgPathVersion!==v||!m||l!==d.__svgPathStrokePercent)&&(m||(m=d.__svgPathBuilder=new ZC),m.reset(f),p.rebuildPath(m,l),m.generateStr(),d.__svgPathVersion=v,d.__svgPathStrokePercent=l),o.d=m.getStr()}return AI(o,r.transform),EI(o,e,r,t),MI(o,r),t.animation&&eg(r,o,t),t.emphasis&&E5(r,o,t),Zr(u,r.id+"",o)}function lvt(r,t){var e=r.style,n=e.image;if(n&&!V(n)&&(F5(n)?n=n.src:L5(n)&&(n=n.toDataURL())),!!n){var a=e.x||0,o=e.y||0,i=e.width,u=e.height,l={href:n,width:i,height:u};return a&&(l.x=a),o&&(l.y=o),AI(l,r.transform),EI(l,e,r,t),MI(l,r),t.animation&&eg(r,l,t),Zr("image",r.id+"",l)}}function fvt(r,t){var e=r.style,n=e.text;if(n!=null&&(n+=""),!(!n||isNaN(e.x)||isNaN(e.y))){var a=e.font||_o,o=e.x||0,i=iW(e.y||0,mv(a),e.textBaseline),u=oW[e.textAlign]||e.textAlign,l={"dominant-baseline":"central","text-anchor":u};if(cM(e)){var f="",s=e.fontStyle,c=sM(e.fontSize);if(!parseFloat(c))return;var p=e.fontFamily||K1,v=e.fontWeight;f+="font-size:"+c+";font-family:"+p+";",s&&s!=="normal"&&(f+="font-style:"+s+";"),v&&v!=="normal"&&(f+="font-weight:"+v+";"),l.style=f}else l.style="font: "+a;return n.match(/\s/)&&(l["xml:space"]="preserve"),o&&(l.x=o),i&&(l.y=i),AI(l,r.transform),EI(l,e,r,t),MI(l,r),t.animation&&eg(r,l,t),Zr("text",r.id+"",l,void 0,n)}}function II(r,t){if(r instanceof bt)return R5(r,t);if(r instanceof er)return lvt(r,t);if(r instanceof sl)return fvt(r,t)}function svt(r,t,e){var n=r.style;if(uW(n)){var a=lW(r),o=e.shadowCache,i=o[a];if(!i){var u=r.getGlobalScale(),l=u[0],f=u[1];if(!l||!f)return;var s=n.shadowOffsetX||0,c=n.shadowOffsetY||0,p=n.shadowBlur,v=yf(n.shadowColor),d=v.opacity,m=v.color,h=p/2/l,_=p/2/f,g=h+" "+_;i=e.zrId+"-s"+e.shadowIdx++,e.defs[i]=Zr("filter",i,{id:i,x:"-100%",y:"-100%",width:"300%",height:"300%"},[Zr("feDropShadow","",{dx:s/l,dy:c/f,stdDeviation:g,"flood-color":m,"flood-opacity":d})]),o[a]=i}t.filter=Hh(i)}}function FI(r,t,e,n){var a=r[e],o,i={gradientUnits:a.global?"userSpaceOnUse":"objectBoundingBox"};if(P0(a))o="linearGradient",i.x1=a.x,i.y1=a.y,i.x2=a.x2,i.y2=a.y2;else if(N0(a))o="radialGradient",i.cx=Tt(a.x,.5),i.cy=Tt(a.y,.5),i.r=Tt(a.r,.5);else return;for(var u=a.colorStops,l=[],f=0,s=u.length;f<s;++f){var c=R0(u[f].offset)*100+"%",p=u[f].color,v=yf(p),d=v.color,m=v.opacity,h={offset:c};h["stop-color"]=d,m<1&&(h["stop-opacity"]=m),l.push(Zr("stop",f+"",h))}var _=Zr(o,"",i,l),g=K_(_),y=n.gradientCache,D=y[g];D||(D=n.zrId+"-g"+n.gradientIdx++,y[g]=D,i.id=D,n.defs[D]=Zr(o,D,i,l)),t[e]=Hh(D)}function LI(r,t,e,n){var a=r.style[e],o=r.getBoundingRect(),i={},u=a.repeat,l=u==="no-repeat",f=u==="repeat-x",s=u==="repeat-y",c;if(DE(a)){var p=a.imageWidth,v=a.imageHeight,d=void 0,m=a.image;if(V(m)?d=m:F5(m)?d=m.src:L5(m)&&(d=m.toDataURL()),typeof Image>"u"){var h="Image width/height must been given explictly in svg-ssr renderer.";ur(p,h),ur(v,h)}else if(p==null||v==null){var _=function(E,M){if(E){var I=E.elm,F=p||M.width,L=v||M.height;E.tag==="pattern"&&(f?(L=1,F/=o.width):s&&(F=1,L/=o.height)),E.attrs.width=F,E.attrs.height=L,I&&(I.setAttribute("width",F),I.setAttribute("height",L))}},g=Yh(d,null,r,function(E){l||_(C,E),_(c,E)});g&&g.width&&g.height&&(p=p||g.width,v=v||g.height)}c=Zr("image","img",{href:d,width:p,height:v}),i.width=p,i.height=v}else a.svgElement&&(c=lt(a.svgElement),i.width=a.svgWidth,i.height=a.svgHeight);if(c){var y,D;l?y=D=1:f?(D=1,y=i.width/o.width):s?(y=1,D=i.height/o.height):i.patternUnits="userSpaceOnUse",y!=null&&!isNaN(y)&&(i.width=y),D!=null&&!isNaN(D)&&(i.height=D);var b=H0(a);b&&(i.patternTransform=b);var C=Zr("pattern","",i,[c]),x=K_(C),w=n.patternCache,S=w[x];S||(S=n.zrId+"-p"+n.patternIdx++,w[x]=S,i.id=S,C=n.defs[S]=Zr("pattern",S,i,[c])),t[e]=Hh(S)}}function P5(r,t,e){var n=e.clipPathCache,a=e.defs,o=n[r.id];if(!o){o=e.zrId+"-c"+e.clipPathIdx++;var i={id:o};n[r.id]=o,a[o]=Zr("clipPath",o,i,[R5(r,e)])}t["clip-path"]=Hh(o)}function RI(r){return document.createTextNode(r)}function Bf(r,t,e){r.insertBefore(t,e)}function PI(r,t){r.removeChild(t)}function NI(r,t){r.appendChild(t)}function OI(r){return r.parentNode}function UI(r){return r.nextSibling}function tT(r,t){r.textContent=t}var N5=58,pvt=120,vvt=Zr("","");function HI(r){return r===void 0}function Mu(r){return r!==void 0}function dvt(r,t,e){for(var n={},a=t;a<=e;++a){var o=r[a].key;o!==void 0&&(n[o]=a)}return n}function ng(r,t){var e=r.key===t.key,n=r.tag===t.tag;return n&&e}function ag(r){var t,e=r.children,n=r.tag;if(Mu(n)){var a=r.elm=XC(n);if(rT(vvt,r),O(e))for(t=0;t<e.length;++t){var o=e[t];o!=null&&NI(a,ag(o))}else Mu(r.text)&&!nt(r.text)&&NI(a,RI(r.text))}else r.elm=RI(r.text);return r.elm}function O5(r,t,e,n,a){for(;n<=a;++n){var o=e[n];o!=null&&Bf(r,ag(o),t)}}function eT(r,t,e,n){for(;e<=n;++e){var a=t[e];if(a!=null)if(Mu(a.tag)){var o=OI(a.elm);PI(o,a.elm)}else PI(r,a.elm)}}function rT(r,t){var e,n=t.elm,a=r&&r.attrs||{},o=t.attrs||{};if(a!==o){for(e in o){var i=o[e],u=a[e];u!==i&&(i===!0?n.setAttribute(e,""):i===!1?n.removeAttribute(e):e==="style"?n.style.cssText=i:e.charCodeAt(0)!==pvt?n.setAttribute(e,i):e==="xmlns:xlink"||e==="xmlns"?n.setAttributeNS(D5,e,i):e.charCodeAt(3)===N5?n.setAttributeNS(b5,e,i):e.charCodeAt(5)===N5?n.setAttributeNS(xI,e,i):n.setAttribute(e,i))}for(e in a)e in o||n.removeAttribute(e)}}function mvt(r,t,e){for(var n=0,a=0,o=t.length-1,i=t[0],u=t[o],l=e.length-1,f=e[0],s=e[l],c,p,v,d;n<=o&&a<=l;)i==null?i=t[++n]:u==null?u=t[--o]:f==null?f=e[++a]:s==null?s=e[--l]:ng(i,f)?(Xv(i,f),i=t[++n],f=e[++a]):ng(u,s)?(Xv(u,s),u=t[--o],s=e[--l]):ng(i,s)?(Xv(i,s),Bf(r,i.elm,UI(u.elm)),i=t[++n],s=e[--l]):ng(u,f)?(Xv(u,f),Bf(r,u.elm,i.elm),u=t[--o],f=e[++a]):(HI(c)&&(c=dvt(t,n,o)),p=c[f.key],HI(p)?Bf(r,ag(f),i.elm):(v=t[p],v.tag!==f.tag?Bf(r,ag(f),i.elm):(Xv(v,f),t[p]=void 0,Bf(r,v.elm,i.elm))),f=e[++a]);(n<=o||a<=l)&&(n>o?(d=e[l+1]==null?null:e[l+1].elm,O5(r,d,e,a,l)):eT(r,t,n,o))}function Xv(r,t){var e=t.elm=r.elm,n=r.children,a=t.children;r!==t&&(rT(r,t),HI(t.text)?Mu(n)&&Mu(a)?n!==a&&mvt(e,n,a):Mu(a)?(Mu(r.text)&&tT(e,""),O5(e,null,a,0,a.length-1)):Mu(n)?eT(e,n,0,n.length-1):Mu(r.text)&&tT(e,""):r.text!==t.text&&(Mu(n)&&eT(e,n,0,n.length-1),tT(e,t.text)))}function kI(r,t){if(ng(r,t))Xv(r,t);else{var e=r.elm,n=OI(e);ag(t),n!==null&&(Bf(n,t.elm,UI(e)),eT(n,[r],0,0))}return t}var hvt=0,_vt=(function(){function r(t,e,n){if(this.type="svg",this.refreshHover=U5("refreshHover"),this.configLayer=U5("configLayer"),this.storage=e,this._opts=n=N({},n),this.root=t,this._id="zr"+hvt++,this._oldVNode=SI(n.width,n.height),t&&!n.ssr){var a=this._viewport=document.createElement("div");a.style.cssText="position:relative;overflow:hidden";var o=this._svgDom=this._oldVNode.elm=XC("svg");rT(null,this._oldVNode),a.appendChild(o),t.appendChild(a)}this.resize(n.width,n.height)}return r.prototype.getType=function(){return this.type},r.prototype.getViewportRoot=function(){return this._viewport},r.prototype.getViewportRootOffset=function(){var t=this.getViewportRoot();if(t)return{offsetLeft:t.offsetLeft||0,offsetTop:t.offsetTop||0}},r.prototype.getSvgDom=function(){return this._svgDom},r.prototype.refresh=function(){if(this.root){var t=this.renderToVNode({willUpdate:!0});t.attrs.style="position:absolute;left:0;top:0;user-select:none",kI(this._oldVNode,t),this._oldVNode=t}},r.prototype.renderOneToVNode=function(t){return II(t,tg(this._id))},r.prototype.renderToVNode=function(t){t=t||{};var e=this.storage.getDisplayList(!0),n=this._width,a=this._height,o=tg(this._id);o.animation=t.animation,o.willUpdate=t.willUpdate,o.compress=t.compress,o.emphasis=t.emphasis;var i=[],u=this._bgVNode=gvt(n,a,this._backgroundColor,o);u&&i.push(u);var l=t.compress?null:this._mainVNode=Zr("g","main",{},[]);this._paintList(e,o,l?l.children:i),l&&i.push(l);var f=U(Ft(o.defs),function(p){return o.defs[p]});if(f.length&&i.push(Zr("defs","defs",{},f)),t.animation){var s=C5(o.cssNodes,o.cssAnims,{newline:!0});if(s){var c=Zr("style","stl",{},[],s);i.push(c)}}return SI(n,a,i,t.useViewBox)},r.prototype.renderToString=function(t){return t=t||{},K_(this.renderToVNode({animation:Tt(t.cssAnimation,!0),emphasis:Tt(t.cssEmphasis,!0),willUpdate:!1,compress:!0,useViewBox:Tt(t.useViewBox,!0)}),{newline:!0})},r.prototype.setBackgroundColor=function(t){this._backgroundColor=t},r.prototype.getSvgRoot=function(){return this._mainVNode&&this._mainVNode.elm},r.prototype._paintList=function(t,e,n){for(var a=t.length,o=[],i=0,u,l,f=0,s=0;s<a;s++){var c=t[s];if(!c.invisible){var p=c.__clipPaths,v=p&&p.length||0,d=l&&l.length||0,m=void 0;for(m=Math.max(v-1,d-1);m>=0&&!(p&&l&&p[m]===l[m]);m--);for(var h=d-1;h>m;h--)i--,u=o[i-1];for(var _=m+1;_<v;_++){var g={};P5(p[_],g,e);var y=Zr("g","clip-g-"+f++,g,[]);(u?u.children:n).push(y),o[i++]=y,u=y}l=p;var D=II(c,e);D&&(u?u.children:n).push(D)}}},r.prototype.resize=function(t,e){var n=this._opts,a=this.root,o=this._viewport;if(t!=null&&(n.width=t),e!=null&&(n.height=e),a&&o&&(o.style.display="none",t=Pf(a,0,n),e=Pf(a,1,n),o.style.display=""),this._width!==t||this._height!==e){if(this._width=t,this._height=e,o){var i=o.style;i.width=t+"px",i.height=e+"px"}if(Uh(this._backgroundColor))this.refresh();else{var u=this._svgDom;u&&(u.setAttribute("width",t),u.setAttribute("height",e));var l=this._bgVNode&&this._bgVNode.elm;l&&(l.setAttribute("width",t),l.setAttribute("height",e))}}},r.prototype.getWidth=function(){return this._width},r.prototype.getHeight=function(){return this._height},r.prototype.dispose=function(){this.root&&(this.root.innerHTML=""),this._svgDom=this._viewport=this.storage=this._oldVNode=this._bgVNode=this._mainVNode=null},r.prototype.clear=function(){this._svgDom&&(this._svgDom.innerHTML=null),this._oldVNode=null},r.prototype.toDataURL=function(t){var e=this.renderToString(),n="data:image/svg+xml;";return t?(e=fW(e),e&&n+"base64,"+e):n+"charset=UTF-8,"+encodeURIComponent(e)},r})();function U5(r){return function(){}}function gvt(r,t,e,n){var a;if(e&&e!=="none")if(a=Zr("rect","bg",{width:r,height:t,x:"0",y:"0"}),O0(e))FI({fill:e},a.attrs,"fill",n);else if(Uh(e))LI({style:{fill:e},dirty:Ye,getBoundingRect:function(){return{width:r,height:t}}},a.attrs,"fill",n);else{var o=yf(e),i=o.color,u=o.opacity;a.attrs.fill=i,u<1&&(a.attrs["fill-opacity"]=u)}return a}var H5=_vt;function zI(r){r.registerPainter("svg",H5)}function k5(r,t,e){var n=la.createCanvas(),a=t.getWidth(),o=t.getHeight(),i=n.style;return i&&(i.position="absolute",i.left="0",i.top="0",i.width=a+"px",i.height=o+"px",n.setAttribute("data-zr-dom-id",r)),n.width=a*e,n.height=o*e,n}var yvt=(function(r){A(t,r);function t(e,n,a){var o=r.call(this)||this;o.motionBlur=!1,o.lastFrameAlpha=.7,o.dpr=1,o.virtual=!1,o.config={},o.incremental=!1,o.zlevel=0,o.maxRepaintRectCount=5,o.__dirty=!0,o.__firstTimePaint=!0,o.__used=!1,o.__drawIndex=0,o.__startIndex=0,o.__endIndex=0,o.__prevStartIndex=null,o.__prevEndIndex=null;var i;a=a||tc,typeof e=="string"?i=k5(e,n,a):nt(e)&&(i=e,e=i.id),o.id=e,o.dom=i;var u=i.style;return u&&(c0(i),i.onselectstart=function(){return!1},u.padding="0",u.margin="0",u.borderWidth="0"),o.painter=n,o.dpr=a,o}return t.prototype.getElementCount=function(){return this.__endIndex-this.__startIndex},t.prototype.afterBrush=function(){this.__prevStartIndex=this.__startIndex,this.__prevEndIndex=this.__endIndex},t.prototype.initContext=function(){this.ctx=this.dom.getContext("2d"),this.ctx.dpr=this.dpr},t.prototype.setUnpainted=function(){this.__firstTimePaint=!0},t.prototype.createBackBuffer=function(){var e=this.dpr;this.domBack=k5("back-"+this.id,this.painter,e),this.ctxBack=this.domBack.getContext("2d"),e!==1&&this.ctxBack.scale(e,e)},t.prototype.createRepaintRects=function(e,n,a,o){if(this.__firstTimePaint)return this.__firstTimePaint=!1,null;var i=[],u=this.maxRepaintRectCount,l=!1,f=new yt(0,0,0,0);function s(g){if(!(!g.isFinite()||g.isZero()))if(i.length===0){var y=new yt(0,0,0,0);y.copy(g),i.push(y)}else{for(var D=!1,b=1/0,C=0,x=0;x<i.length;++x){var w=i[x];if(w.intersect(g)){var S=new yt(0,0,0,0);S.copy(w),S.union(g),i[x]=S,D=!0;break}else if(l){f.copy(g),f.union(w);var E=g.width*g.height,M=w.width*w.height,I=f.width*f.height,F=I-E-M;F<b&&(b=F,C=x)}}if(l&&(i[C].union(g),D=!0),!D){var y=new yt(0,0,0,0);y.copy(g),i.push(y)}l||(l=i.length>=u)}}for(var c=this.__startIndex;c<this.__endIndex;++c){var p=e[c];if(p){var v=p.shouldBePainted(a,o,!0,!0),d=p.__isRendered&&(p.__dirty&ln||!v)?p.getPrevPaintRect():null;d&&s(d);var m=v&&(p.__dirty&ln||!p.__isRendered)?p.getPaintRect():null;m&&s(m)}}for(var c=this.__prevStartIndex;c<this.__prevEndIndex;++c){var p=n[c],v=p&&p.shouldBePainted(a,o,!0,!0);if(p&&(!v||!p.__zr)&&p.__isRendered){var d=p.getPrevPaintRect();d&&s(d)}}var h;do{h=!1;for(var c=0;c<i.length;){if(i[c].isZero()){i.splice(c,1);continue}for(var _=c+1;_<i.length;)i[c].intersect(i[_])?(h=!0,i[c].union(i[_]),i.splice(_,1)):_++;c++}}while(h);return this._paintRects=i,i},t.prototype.debugGetPaintRects=function(){return(this._paintRects||[]).slice()},t.prototype.resize=function(e,n){var a=this.dpr,o=this.dom,i=o.style,u=this.domBack;i&&(i.width=e+"px",i.height=n+"px"),o.width=e*a,o.height=n*a,u&&(u.width=e*a,u.height=n*a,a!==1&&this.ctxBack.scale(a,a))},t.prototype.clear=function(e,n,a){var o=this.dom,i=this.ctx,u=o.width,l=o.height;n=n||this.clearColor;var f=this.motionBlur&&!e,s=this.lastFrameAlpha,c=this.dpr,p=this;f&&(this.domBack||this.createBackBuffer(),this.ctxBack.globalCompositeOperation="copy",this.ctxBack.drawImage(o,0,0,u/c,l/c));var v=this.domBack;function d(m,h,_,g){if(i.clearRect(m,h,_,g),n&&n!=="transparent"){var y=void 0;if(sf(n)){var D=n.global||n.__width===_&&n.__height===g;y=D&&n.__canvasGradient||P_(i,n,{x:0,y:0,width:_,height:g}),n.__canvasGradient=y,n.__width=_,n.__height=g}else Dz(n)&&(n.scaleX=n.scaleX||c,n.scaleY=n.scaleY||c,y=_C(i,n,{dirty:function(){p.setUnpainted(),p.painter.refresh()}}));i.save(),i.fillStyle=y||n,i.fillRect(m,h,_,g),i.restore()}f&&(i.save(),i.globalAlpha=s,i.drawImage(v,m,h,_,g),i.restore())}!a||f?d(0,0,u,l):a.length&&T(a,function(m){d(m.x*c,m.y*c,m.width*c,m.height*c)})},t})(en),nT=yvt;var z5=1e5,Hc=314159,aT=.01,Dvt=.001;function bvt(r){return r?r.__builtin__?!0:!(typeof r.resize!="function"||typeof r.refresh!="function"):!1}function Cvt(r,t){var e=document.createElement("div");return e.style.cssText=["position:relative","width:"+r+"px","height:"+t+"px","padding:0","margin:0","border-width:0"].join(";")+";",e}var Tvt=(function(){function r(t,e,n,a){this.type="canvas",this._zlevelList=[],this._prevDisplayList=[],this._layers={},this._layerConfig={},this._needsManuallyCompositing=!1,this.type="canvas";var o=!t.nodeName||t.nodeName.toUpperCase()==="CANVAS";this._opts=n=N({},n||{}),this.dpr=n.devicePixelRatio||tc,this._singleCanvas=o,this.root=t;var i=t.style;i&&(c0(t),t.innerHTML=""),this.storage=e;var u=this._zlevelList;this._prevDisplayList=[];var l=this._layers;if(o){var s=t,c=s.width,p=s.height;n.width!=null&&(c=n.width),n.height!=null&&(p=n.height),this.dpr=n.devicePixelRatio||1,s.width=c*this.dpr,s.height=p*this.dpr,this._width=c,this._height=p;var v=new nT(s,this,this.dpr);v.__builtin__=!0,v.initContext(),l[Hc]=v,v.zlevel=Hc,u.push(Hc),this._domRoot=t}else{this._width=Pf(t,0,n),this._height=Pf(t,1,n);var f=this._domRoot=Cvt(this._width,this._height);t.appendChild(f)}}return r.prototype.getType=function(){return"canvas"},r.prototype.isSingleCanvas=function(){return this._singleCanvas},r.prototype.getViewportRoot=function(){return this._domRoot},r.prototype.getViewportRootOffset=function(){var t=this.getViewportRoot();if(t)return{offsetLeft:t.offsetLeft||0,offsetTop:t.offsetTop||0}},r.prototype.refresh=function(t){var e=this.storage.getDisplayList(!0),n=this._prevDisplayList,a=this._zlevelList;this._redrawId=Math.random(),this._paintList(e,n,t,this._redrawId);for(var o=0;o<a.length;o++){var i=a[o],u=this._layers[i];if(!u.__builtin__&&u.refresh){var l=o===0?this._backgroundColor:null;u.refresh(l)}}return this._opts.useDirtyRect&&(this._prevDisplayList=e.slice()),this},r.prototype.refreshHover=function(){this._paintHoverList(this.storage.getDisplayList(!1))},r.prototype._paintHoverList=function(t){var e=t.length,n=this._hoverlayer;if(n&&n.clear(),!!e){for(var a={inHover:!0,viewWidth:this._width,viewHeight:this._height},o,i=0;i<e;i++){var u=t[i];u.__inHover&&(n||(n=this._hoverlayer=this.getLayer(z5)),o||(o=n.ctx,o.save()),Nf(o,u,a,i===e-1))}o&&o.restore()}},r.prototype.getHoverLayer=function(){return this.getLayer(z5)},r.prototype.paintOne=function(t,e){gC(t,e)},r.prototype._paintList=function(t,e,n,a){if(this._redrawId===a){n=n||!1,this._updateLayerStatus(t);var o=this._doPaintList(t,e,n),i=o.finished,u=o.needsRefreshHover;if(this._needsManuallyCompositing&&this._compositeManually(),u&&this._paintHoverList(t),i)this.eachLayer(function(f){f.afterBrush&&f.afterBrush()});else{var l=this;Lh(function(){l._paintList(t,e,n,a)})}}},r.prototype._compositeManually=function(){var t=this.getLayer(Hc).ctx,e=this._domRoot.width,n=this._domRoot.height;t.clearRect(0,0,e,n),this.eachBuiltinLayer(function(a){a.virtual&&t.drawImage(a.dom,0,0,e,n)})},r.prototype._doPaintList=function(t,e,n){for(var a=this,o=[],i=this._opts.useDirtyRect,u=0;u<this._zlevelList.length;u++){var l=this._zlevelList[u],f=this._layers[l];f.__builtin__&&f!==this._hoverlayer&&(f.__dirty||n)&&o.push(f)}for(var s=!0,c=!1,p=function(m){var h=o[m],_=h.ctx,g=i&&h.createRepaintRects(t,e,v._width,v._height),y=n?h.__startIndex:h.__drawIndex,D=!n&&h.incremental&&Date.now,b=D&&Date.now(),C=h.zlevel===v._zlevelList[0]?v._backgroundColor:null;if(h.__startIndex===h.__endIndex)h.clear(!1,C,g);else if(y===h.__startIndex){var x=t[y];(!x.incremental||!x.notClear||n)&&h.clear(!1,C,g)}y===-1&&(console.error("For some unknown reason. drawIndex is -1"),y=h.__startIndex);var w,S=function(F){var L={inHover:!1,allClipped:!1,prevEl:null,viewWidth:a._width,viewHeight:a._height};for(w=y;w<h.__endIndex;w++){var R=t[w];if(R.__inHover&&(c=!0),a._doPaintEl(R,h,i,F,L,w===h.__endIndex-1),D){var P=Date.now()-b;if(P>15)break}}L.prevElClipPaths&&_.restore()};if(g)if(g.length===0)w=h.__endIndex;else for(var E=v.dpr,M=0;M<g.length;++M){var I=g[M];_.save(),_.beginPath(),_.rect(I.x*E,I.y*E,I.width*E,I.height*E),_.clip(),S(I),_.restore()}else _.save(),S(),_.restore();h.__drawIndex=w,h.__drawIndex<h.__endIndex&&(s=!1)},v=this,d=0;d<o.length;d++)p(d);return Kt.wxa&&T(this._layers,function(m){m&&m.ctx&&m.ctx.draw&&m.ctx.draw()}),{finished:s,needsRefreshHover:c}},r.prototype._doPaintEl=function(t,e,n,a,o,i){var u=e.ctx;if(n){var l=t.getPaintRect();(!a||l&&l.intersect(a))&&(Nf(u,t,o,i),t.setPrevPaintRect(l))}else Nf(u,t,o,i)},r.prototype.getLayer=function(t,e){this._singleCanvas&&!this._needsManuallyCompositing&&(t=Hc);var n=this._layers[t];return n||(n=new nT("zr_"+t,this,this.dpr),n.zlevel=t,n.__builtin__=!0,this._layerConfig[t]?Et(n,this._layerConfig[t],!0):this._layerConfig[t-aT]&&Et(n,this._layerConfig[t-aT],!0),e&&(n.virtual=e),this.insertLayer(t,n),n.initContext()),n},r.prototype.insertLayer=function(t,e){var n=this._layers,a=this._zlevelList,o=a.length,i=this._domRoot,u=null,l=-1;if(!n[t]&&bvt(e)){if(o>0&&t>a[0]){for(l=0;l<o-1&&!(a[l]<t&&a[l+1]>t);l++);u=n[a[l]]}if(a.splice(l+1,0,t),n[t]=e,!e.virtual)if(u){var f=u.dom;f.nextSibling?i.insertBefore(e.dom,f.nextSibling):i.appendChild(e.dom)}else i.firstChild?i.insertBefore(e.dom,i.firstChild):i.appendChild(e.dom);e.painter||(e.painter=this)}},r.prototype.eachLayer=function(t,e){for(var n=this._zlevelList,a=0;a<n.length;a++){var o=n[a];t.call(e,this._layers[o],o)}},r.prototype.eachBuiltinLayer=function(t,e){for(var n=this._zlevelList,a=0;a<n.length;a++){var o=n[a],i=this._layers[o];i.__builtin__&&t.call(e,i,o)}},r.prototype.eachOtherLayer=function(t,e){for(var n=this._zlevelList,a=0;a<n.length;a++){var o=n[a],i=this._layers[o];i.__builtin__||t.call(e,i,o)}},r.prototype.getLayers=function(){return this._layers},r.prototype._updateLayerStatus=function(t){this.eachBuiltinLayer(function(c,p){c.__dirty=c.__used=!1});function e(c){o&&(o.__endIndex!==c&&(o.__dirty=!0),o.__endIndex=c)}if(this._singleCanvas)for(var n=1;n<t.length;n++){var a=t[n];if(a.zlevel!==t[n-1].zlevel||a.incremental){this._needsManuallyCompositing=!0;break}}var o=null,i=0,u,l;for(l=0;l<t.length;l++){var a=t[l],f=a.zlevel,s=void 0;u!==f&&(u=f,i=0),a.incremental?(s=this.getLayer(f+Dvt,this._needsManuallyCompositing),s.incremental=!0,i=1):s=this.getLayer(f+(i>0?aT:0),this._needsManuallyCompositing),s.__builtin__||ks("ZLevel "+f+" has been used by unkown layer "+s.id),s!==o&&(s.__used=!0,s.__startIndex!==l&&(s.__dirty=!0),s.__startIndex=l,s.incremental?s.__drawIndex=-1:s.__drawIndex=l,e(l),o=s),a.__dirty&ln&&!a.__inHover&&(s.__dirty=!0,s.incremental&&s.__drawIndex<0&&(s.__drawIndex=l))}e(l),this.eachBuiltinLayer(function(c,p){!c.__used&&c.getElementCount()>0&&(c.__dirty=!0,c.__startIndex=c.__endIndex=c.__drawIndex=0),c.__dirty&&c.__drawIndex<0&&(c.__drawIndex=c.__startIndex)})},r.prototype.clear=function(){return this.eachBuiltinLayer(this._clearLayer),this},r.prototype._clearLayer=function(t){t.clear()},r.prototype.setBackgroundColor=function(t){this._backgroundColor=t,T(this._layers,function(e){e.setUnpainted()})},r.prototype.configLayer=function(t,e){if(e){var n=this._layerConfig;n[t]?Et(n[t],e,!0):n[t]=e;for(var a=0;a<this._zlevelList.length;a++){var o=this._zlevelList[a];if(o===t||o===t+aT){var i=this._layers[o];Et(i,n[t],!0)}}}},r.prototype.delLayer=function(t){var e=this._layers,n=this._zlevelList,a=e[t];a&&(a.dom.parentNode.removeChild(a.dom),delete e[t],n.splice(wt(n,t),1))},r.prototype.resize=function(t,e){if(this._domRoot.style){var n=this._domRoot;n.style.display="none";var a=this._opts,o=this.root;if(t!=null&&(a.width=t),e!=null&&(a.height=e),t=Pf(o,0,a),e=Pf(o,1,a),n.style.display="",this._width!==t||e!==this._height){n.style.width=t+"px",n.style.height=e+"px";for(var i in this._layers)this._layers.hasOwnProperty(i)&&this._layers[i].resize(t,e);this.refresh(!0)}this._width=t,this._height=e}else{if(t==null||e==null)return;this._width=t,this._height=e,this.getLayer(Hc).resize(t,e)}return this},r.prototype.clearLayer=function(t){var e=this._layers[t];e&&e.clear()},r.prototype.dispose=function(){this.root.innerHTML="",this.root=this.storage=this._domRoot=this._layers=null},r.prototype.getRenderedCanvas=function(t){if(t=t||{},this._singleCanvas&&!this._compositeManually)return this._layers[Hc].dom;var e=new nT("image",this,t.pixelRatio||this.dpr);e.initContext(),e.clear(!1,t.backgroundColor||this._backgroundColor);var n=e.ctx;if(t.pixelRatio<=this.dpr){this.refresh();var a=e.dom.width,o=e.dom.height;this.eachLayer(function(c){c.__builtin__?n.drawImage(c.dom,0,0,a,o):c.renderToCanvas&&(n.save(),c.renderToCanvas(n),n.restore())})}else for(var i={inHover:!1,viewWidth:this._width,viewHeight:this._height},u=this.storage.getDisplayList(!0),l=0,f=u.length;l<f;l++){var s=u[l];Nf(n,s,i,l===f-1)}return e.dom},r.prototype.getWidth=function(){return this._width},r.prototype.getHeight=function(){return this._height},r})(),W5=Tvt;function WI(r){r.registerPainter("canvas",W5)}var xvt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.hasSymbolVisual=!0,e}return t.prototype.getInitialData=function(e){if(0)var n;return Pn(null,this,{useEncodeDefaulter:!0})},t.prototype.getLegendIcon=function(e){var n=new at,a=We("line",0,e.itemHeight/2,e.itemWidth,0,e.lineStyle.stroke,!1);n.add(a),a.setStyle(e.lineStyle);var o=this.getData().getVisual("symbol"),i=this.getData().getVisual("symbolRotate"),u=o==="none"?"circle":o,l=e.itemHeight*.8,f=We(u,(e.itemWidth-l)/2,(e.itemHeight-l)/2,l,l,e.itemStyle.fill);n.add(f),f.setStyle(e.itemStyle);var s=e.iconRotate==="inherit"?i:e.iconRotate||0;return f.rotation=s*Math.PI/180,f.setOrigin([e.itemWidth/2,e.itemHeight/2]),u.indexOf("empty")>-1&&(f.style.stroke=f.style.fill,f.style.fill="#fff",f.style.lineWidth=2),n},t.type="series.line",t.dependencies=["grid","polar"],t.defaultOption={z:3,coordinateSystem:"cartesian2d",legendHoverLink:!0,clip:!0,label:{position:"top"},endLabel:{show:!1,valueAnimation:!0,distance:8},lineStyle:{width:2,type:"solid"},emphasis:{scale:!0},step:!1,smooth:!1,smoothMonotone:null,symbol:"emptyCircle",symbolSize:4,symbolRotate:null,showSymbol:!0,showAllSymbol:"auto",connectNulls:!1,sampling:"none",animationEasing:"linear",progressive:0,hoverLayerThreshold:1/0,universalTransition:{divideShape:"clone"},triggerLineEvent:!1},t})(xe),G5=xvt;function zi(r,t){var e=r.mapDimensionsAll("defaultedLabel"),n=e.length;if(n===1){var a=xl(r,t,e[0]);return a!=null?a+"":null}else if(n){for(var o=[],i=0;i<e.length;i++)o.push(xl(r,t,e[i]));return o.join(" ")}}function oT(r,t){var e=r.mapDimensionsAll("defaultedLabel");if(!O(t))return t+"";for(var n=[],a=0;a<e.length;a++){var o=r.getDimensionIndex(e[a]);o>=0&&n.push(t[o])}return n.join(" ")}var wvt=(function(r){A(t,r);function t(e,n,a,o){var i=r.call(this)||this;return i.updateData(e,n,a,o),i}return t.prototype._createSymbol=function(e,n,a,o,i){this.removeAll();var u=We(e,-1,-1,2,2,null,i);u.attr({z2:100,culling:!0,scaleX:o[0]/2,scaleY:o[1]/2}),u.drift=Svt,this._symbolType=e,this.add(u)},t.prototype.stopSymbolAnimation=function(e){this.childAt(0).stopAnimation(null,e)},t.prototype.getSymbolType=function(){return this._symbolType},t.prototype.getSymbolPath=function(){return this.childAt(0)},t.prototype.highlight=function(){fa(this.childAt(0))},t.prototype.downplay=function(){sa(this.childAt(0))},t.prototype.setZ=function(e,n){var a=this.childAt(0);a.zlevel=e,a.z=n},t.prototype.setDraggable=function(e,n){var a=this.childAt(0);a.draggable=e,a.cursor=!n&&e?"move":a.cursor},t.prototype.updateData=function(e,n,a,o){this.silent=!1;var i=e.getItemVisual(n,"symbol")||"circle",u=e.hostModel,l=t.getSymbolSize(e,n),f=i!==this._symbolType,s=o&&o.disableAnimation;if(f){var c=e.getItemVisual(n,"symbolKeepAspect");this._createSymbol(i,e,n,l,c)}else{var p=this.childAt(0);p.silent=!1;var v={scaleX:l[0]/2,scaleY:l[1]/2};s?p.attr(v):$t(p,v,u,n),rn(p)}if(this._updateCommon(e,n,l,a,o),f){var p=this.childAt(0);if(!s){var v={scaleX:this._sizeX,scaleY:this._sizeY,style:{opacity:p.style.opacity}};p.scaleX=p.scaleY=0,p.style.opacity=0,Ae(p,v,u,n)}}s&&this.childAt(0).stopAnimation("leave")},t.prototype._updateCommon=function(e,n,a,o,i){var u=this.childAt(0),l=e.hostModel,f,s,c,p,v,d,m,h,_;if(o&&(f=o.emphasisItemStyle,s=o.blurItemStyle,c=o.selectItemStyle,p=o.focus,v=o.blurScope,m=o.labelStatesModels,h=o.hoverScale,_=o.cursorStyle,d=o.emphasisDisabled),!o||e.hasItemOption){var g=o&&o.itemModel?o.itemModel:e.getItemModel(n),y=g.getModel("emphasis");f=y.getModel("itemStyle").getItemStyle(),c=g.getModel(["select","itemStyle"]).getItemStyle(),s=g.getModel(["blur","itemStyle"]).getItemStyle(),p=y.get("focus"),v=y.get("blurScope"),d=y.get("disabled"),m=$e(g),h=y.getShallow("scale"),_=g.getShallow("cursor")}var D=e.getItemVisual(n,"symbolRotate");u.attr("rotation",(D||0)*Math.PI/180||0);var b=Eo(e.getItemVisual(n,"symbolOffset"),a);b&&(u.x=b[0],u.y=b[1]),_&&u.attr("cursor",_);var C=e.getItemVisual(n,"style"),x=C.fill;if(u instanceof er){var w=u.style;u.useStyle(N({image:w.image,x:w.x,y:w.y,width:w.width,height:w.height},C))}else u.__isEmptyBrush?u.useStyle(N({},C)):u.useStyle(C),u.style.decal=null,u.setColor(x,i&&i.symbolInnerColor),u.style.strokeNoScale=!0;var S=e.getItemVisual(n,"liftZ"),E=this._z2;S!=null?E==null&&(this._z2=u.z2,u.z2+=S):E!=null&&(u.z2=E,this._z2=null);var M=i&&i.useNameLabel;Ze(u,m,{labelFetcher:l,labelDataIndex:n,defaultText:I,inheritColor:x,defaultOpacity:C.opacity});function I(R){return M?e.getName(R):zi(e,R)}this._sizeX=a[0]/2,this._sizeY=a[1]/2;var F=u.ensureState("emphasis");F.style=f,u.ensureState("select").style=c,u.ensureState("blur").style=s;var L=h==null||h===!0?Math.max(1.1,3/this._sizeY):isFinite(h)&&h>0?+h:1;F.scaleX=this._sizeX*L,F.scaleY=this._sizeY*L,this.setSymbolScale(1),Me(this,p,v,d)},t.prototype.setSymbolScale=function(e){this.scaleX=this.scaleY=e},t.prototype.fadeOut=function(e,n,a){var o=this.childAt(0),i=vt(this).dataIndex,u=a&&a.animation;if(this.silent=o.silent=!0,a&&a.fadeLabel){var l=o.getTextContent();l&&Zo(l,{style:{opacity:0}},n,{dataIndex:i,removeOpt:u,cb:function(){o.removeTextContent()}})}else o.removeTextContent();Zo(o,{style:{opacity:0},scaleX:0,scaleY:0},n,{dataIndex:i,cb:e,removeOpt:u})},t.getSymbolSize=function(e,n){return Pi(e.getItemVisual(n,"symbolSize"))},t})(at);function Svt(r,t){this.parent.drift(r,t)}var El=wvt;function GI(r,t,e,n){return t&&!isNaN(t[0])&&!isNaN(t[1])&&!(n.isIgnore&&n.isIgnore(e))&&!(n.clipShape&&!n.clipShape.contain(t[0],t[1]))&&r.getItemVisual(e,"symbol")!=="none"}function B5(r){return r!=null&&!nt(r)&&(r={isIgnore:r}),r||{}}function V5(r){var t=r.hostModel,e=t.getModel("emphasis");return{emphasisItemStyle:e.getModel("itemStyle").getItemStyle(),blurItemStyle:t.getModel(["blur","itemStyle"]).getItemStyle(),selectItemStyle:t.getModel(["select","itemStyle"]).getItemStyle(),focus:e.get("focus"),blurScope:e.get("blurScope"),emphasisDisabled:e.get("disabled"),hoverScale:e.get("scale"),labelStatesModels:$e(t),cursorStyle:t.get("cursor")}}var Evt=(function(){function r(t){this.group=new at,this._SymbolCtor=t||El}return r.prototype.updateData=function(t,e){this._progressiveEls=null,e=B5(e);var n=this.group,a=t.hostModel,o=this._data,i=this._SymbolCtor,u=e.disableAnimation,l=V5(t),f={disableAnimation:u},s=e.getSymbolPoint||function(c){return t.getItemLayout(c)};o||n.removeAll(),t.diff(o).add(function(c){var p=s(c);if(GI(t,p,c,e)){var v=new i(t,c,l,f);v.setPosition(p),t.setItemGraphicEl(c,v),n.add(v)}}).update(function(c,p){var v=o.getItemGraphicEl(p),d=s(c);if(!GI(t,d,c,e)){n.remove(v);return}var m=t.getItemVisual(c,"symbol")||"circle",h=v&&v.getSymbolType&&v.getSymbolType();if(!v||h&&h!==m)n.remove(v),v=new i(t,c,l,f),v.setPosition(d);else{v.updateData(t,c,l,f);var _={x:d[0],y:d[1]};u?v.attr(_):$t(v,_,a)}n.add(v),t.setItemGraphicEl(c,v)}).remove(function(c){var p=o.getItemGraphicEl(c);p&&p.fadeOut(function(){n.remove(p)},a)}).execute(),this._getSymbolPoint=s,this._data=t},r.prototype.updateLayout=function(){var t=this,e=this._data;e&&e.eachItemGraphicEl(function(n,a){var o=t._getSymbolPoint(a);n.setPosition(o),n.markRedraw()})},r.prototype.incrementalPrepareUpdate=function(t){this._seriesScope=V5(t),this._data=null,this.group.removeAll()},r.prototype.incrementalUpdate=function(t,e,n){this._progressiveEls=[],n=B5(n);function a(l){l.isGroup||(l.incremental=!0,l.ensureState("emphasis").hoverLayer=!0)}for(var o=t.start;o<t.end;o++){var i=e.getItemLayout(o);if(GI(e,i,o,n)){var u=new this._SymbolCtor(e,o,this._seriesScope);u.traverse(a),u.setPosition(i),this.group.add(u),e.setItemGraphicEl(o,u),this._progressiveEls.push(u)}}},r.prototype.eachRendered=function(t){Sa(this._progressiveEls||this.group,t)},r.prototype.remove=function(t){var e=this.group,n=this._data;n&&t?n.eachItemGraphicEl(function(a){a.fadeOut(function(){e.remove(a)},n.hostModel)}):e.removeAll()},r})(),Au=Evt;function iT(r,t,e){var n=r.getBaseAxis(),a=r.getOtherAxis(n),o=Mvt(a,e),i=n.dim,u=a.dim,l=t.mapDimension(u),f=t.mapDimension(i),s=u==="x"||u==="radius"?1:0,c=U(r.dimensions,function(d){return t.mapDimension(d)}),p=!1,v=t.getCalculationInfo("stackResultDimension");return Mo(t,c[0])&&(p=!0,c[0]=v),Mo(t,c[1])&&(p=!0,c[1]=v),{dataDimsForPoint:c,valueStart:o,valueAxisDim:u,baseAxisDim:i,stacked:!!p,valueDim:l,baseDim:f,baseDataOffset:s,stackedOverDimension:t.getCalculationInfo("stackedOverDimension")}}function Mvt(r,t){var e=0,n=r.scale.getExtent();return t==="start"?e=n[0]:t==="end"?e=n[1]:Nt(t)&&!isNaN(t)?e=t:n[0]>0?e=n[0]:n[1]<0&&(e=n[1]),e}function uT(r,t,e,n){var a=NaN;r.stacked&&(a=e.get(e.getCalculationInfo("stackedOverDimension"),n)),isNaN(a)&&(a=r.valueStart);var o=r.baseDataOffset,i=[];return i[o]=e.get(r.baseDim,n),i[1-o]=a,t.dataToPoint(i)}function Avt(r,t){var e=[];return t.diff(r).add(function(n){e.push({cmd:"+",idx:n})}).update(function(n,a){e.push({cmd:"=",idx:a,idx1:n})}).remove(function(n){e.push({cmd:"-",idx:n})}).execute(),e}function BI(r,t,e,n,a,o,i,u){for(var l=Avt(r,t),f=[],s=[],c=[],p=[],v=[],d=[],m=[],h=iT(a,t,i),_=r.getLayout("points")||[],g=t.getLayout("points")||[],y=0;y<l.length;y++){var D=l[y],b=!0,C=void 0,x=void 0;switch(D.cmd){case"=":C=D.idx*2,x=D.idx1*2;var w=_[C],S=_[C+1],E=g[x],M=g[x+1];(isNaN(w)||isNaN(S))&&(w=E,S=M),f.push(w,S),s.push(E,M),c.push(e[C],e[C+1]),p.push(n[x],n[x+1]),m.push(t.getRawIndex(D.idx1));break;case"+":var I=D.idx,F=h.dataDimsForPoint,L=a.dataToPoint([t.get(F[0],I),t.get(F[1],I)]);x=I*2,f.push(L[0],L[1]),s.push(g[x],g[x+1]);var R=uT(h,a,t,I);c.push(R[0],R[1]),p.push(n[x],n[x+1]),m.push(t.getRawIndex(I));break;case"-":b=!1}b&&(v.push(D),d.push(d.length))}d.sort(function(At,Mt){return m[At]-m[Mt]});for(var P=f.length,k=Aa(P),H=Aa(P),G=Aa(P),j=Aa(P),rt=[],y=0;y<d.length;y++){var xt=d[y],J=y*2,ot=xt*2;k[J]=f[ot],k[J+1]=f[ot+1],H[J]=s[ot],H[J+1]=s[ot+1],G[J]=c[ot],G[J+1]=c[ot+1],j[J]=p[ot],j[J+1]=p[ot+1],rt[y]=v[xt]}return{current:k,next:H,stackedOnCurrent:G,stackedOnNext:j,status:rt}}var Vf=Math.min,$f=Math.max;function kc(r,t){return isNaN(r)||isNaN(t)}function VI(r,t,e,n,a,o,i,u,l){for(var f,s,c,p,v,d,m=e,h=0;h<n;h++){var _=t[m*2],g=t[m*2+1];if(m>=a||m<0)break;if(kc(_,g)){if(l){m+=o;continue}break}if(m===e)r[o>0?"moveTo":"lineTo"](_,g),c=_,p=g;else{var y=_-f,D=g-s;if(y*y+D*D<.5){m+=o;continue}if(i>0){for(var b=m+o,C=t[b*2],x=t[b*2+1];C===_&&x===g&&h<n;)h++,b+=o,m+=o,C=t[b*2],x=t[b*2+1],_=t[m*2],g=t[m*2+1],y=_-f,D=g-s;var w=h+1;if(l)for(;kc(C,x)&&w<n;)w++,b+=o,C=t[b*2],x=t[b*2+1];var S=.5,E=0,M=0,I=void 0,F=void 0;if(w>=n||kc(C,x))v=_,d=g;else{E=C-f,M=x-s;var L=_-f,R=C-_,P=g-s,k=x-g,H=void 0,G=void 0;if(u==="x"){H=Math.abs(L),G=Math.abs(R);var j=E>0?1:-1;v=_-j*H*i,d=g,I=_+j*G*i,F=g}else if(u==="y"){H=Math.abs(P),G=Math.abs(k);var rt=M>0?1:-1;v=_,d=g-rt*H*i,I=_,F=g+rt*G*i}else H=Math.sqrt(L*L+P*P),G=Math.sqrt(R*R+k*k),S=G/(G+H),v=_-E*i*(1-S),d=g-M*i*(1-S),I=_+E*i*S,F=g+M*i*S,I=Vf(I,$f(C,_)),F=Vf(F,$f(x,g)),I=$f(I,Vf(C,_)),F=$f(F,Vf(x,g)),E=I-_,M=F-g,v=_-E*H/G,d=g-M*H/G,v=Vf(v,$f(f,_)),d=Vf(d,$f(s,g)),v=$f(v,Vf(f,_)),d=$f(d,Vf(s,g)),E=_-v,M=g-d,I=_+E*G/H,F=g+M*G/H}r.bezierCurveTo(c,p,v,d,_,g),c=I,p=F}else r.lineTo(_,g)}f=_,s=g,m+=o}return h}var $5=(function(){function r(){this.smooth=0,this.smoothConstraint=!0}return r})(),q5=(function(r){A(t,r);function t(e){var n=r.call(this,e)||this;return n.type="ec-polyline",n}return t.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},t.prototype.getDefaultShape=function(){return new $5},t.prototype.buildPath=function(e,n){var a=n.points,o=0,i=a.length/2;if(n.connectNulls){for(;i>0&&kc(a[i*2-2],a[i*2-1]);i--);for(;o<i&&kc(a[o*2],a[o*2+1]);o++);}for(;o<i;)o+=VI(e,a,o,i,i,1,n.smooth,n.smoothMonotone,n.connectNulls)+1},t.prototype.getPointOn=function(e,n){this.path||(this.createPathProxy(),this.buildPath(this.path,this.shape));for(var a=this.path,o=a.data,i=Tn.CMD,u,l,f=n==="x",s=[],c=0;c<o.length;){var p=o[c++],v=void 0,d=void 0,m=void 0,h=void 0,_=void 0,g=void 0,y=void 0;switch(p){case i.M:u=o[c++],l=o[c++];break;case i.L:if(v=o[c++],d=o[c++],y=f?(e-u)/(v-u):(e-l)/(d-l),y<=1&&y>=0){var D=f?(d-l)*y+l:(v-u)*y+u;return f?[e,D]:[D,e]}u=v,l=d;break;case i.C:v=o[c++],d=o[c++],m=o[c++],h=o[c++],_=o[c++],g=o[c++];var b=f?js(u,v,m,_,e,s):js(l,d,h,g,e,s);if(b>0)for(var C=0;C<b;C++){var x=s[C];if(x<=1&&x>=0){var D=f?kr(l,d,h,g,x):kr(u,v,m,_,x);return f?[e,D]:[D,e]}}u=_,l=g;break}}},t})(bt);var Ivt=(function(r){A(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return t})($5),lT=(function(r){A(t,r);function t(e){var n=r.call(this,e)||this;return n.type="ec-polygon",n}return t.prototype.getDefaultShape=function(){return new Ivt},t.prototype.buildPath=function(e,n){var a=n.points,o=n.stackedOnPoints,i=0,u=a.length/2,l=n.smoothMonotone;if(n.connectNulls){for(;u>0&&kc(a[u*2-2],a[u*2-1]);u--);for(;i<u&&kc(a[i*2],a[i*2+1]);i++);}for(;i<u;){var f=VI(e,a,i,u,u,1,n.smooth,l,n.connectNulls);VI(e,o,i+f-1,f,u,-1,n.stackedOnSmooth,l,n.connectNulls),i+=f+1,e.closePath()}},t})(bt);function $I(r,t,e,n,a){var o=r.getArea(),i=o.x,u=o.y,l=o.width,f=o.height,s=e.get(["lineStyle","width"])||2;i-=s/2,u-=s/2,l+=s,f+=s,l=Math.ceil(l),i!==Math.floor(i)&&(i=Math.floor(i),l++);var c=new Rt({shape:{x:i,y:u,width:l,height:f}});if(t){var p=r.getBaseAxis(),v=p.isHorizontal(),d=p.inverse;v?(d&&(c.shape.x+=l),c.shape.width=0):(d||(c.shape.y+=f),c.shape.height=0);var m=X(a)?function(h){a(h,c)}:null;Ae(c,{shape:{width:l,height:f,x:i,y:u}},e,null,n,m)}return c}function qI(r,t,e){var n=r.getArea(),a=Qe(n.r0,1),o=Qe(n.r,1),i=new Vr({shape:{cx:Qe(r.cx,1),cy:Qe(r.cy,1),r0:a,r:o,startAngle:n.startAngle,endAngle:n.endAngle,clockwise:n.clockwise}});if(t){var u=r.getBaseAxis().dim==="angle";u?i.shape.endAngle=n.startAngle:i.shape.r=a,Ae(i,{shape:{endAngle:n.endAngle,r:o}},e)}return i}function Iu(r,t,e,n,a){if(r){if(r.type==="polar")return qI(r,t,e);if(r.type==="cartesian2d")return $I(r,t,e,n,a)}else return null;return null}function oi(r,t){return r.type===t}function J5(r,t){if(r.length===t.length){for(var e=0;e<r.length;e++)if(r[e]!==t[e])return;return!0}}function j5(r){for(var t=1/0,e=1/0,n=-1/0,a=-1/0,o=0;o<r.length;){var i=r[o++],u=r[o++];isNaN(i)||(t=Math.min(i,t),n=Math.max(i,n)),isNaN(u)||(e=Math.min(u,e),a=Math.max(u,a))}return[[t,e],[n,a]]}function Y5(r,t){var e=j5(r),n=e[0],a=e[1],o=j5(t),i=o[0],u=o[1];return Math.max(Math.abs(n[0]-i[0]),Math.abs(n[1]-i[1]),Math.abs(a[0]-u[0]),Math.abs(a[1]-u[1]))}function Q5(r){return Nt(r)?r:r?.5:0}function Fvt(r,t,e){if(!e.valueDim)return[];for(var n=t.count(),a=Aa(n*2),o=0;o<n;o++){var i=uT(e,r,t,o);a[o*2]=i[0],a[o*2+1]=i[1]}return a}function qf(r,t,e,n){var a=t.getBaseAxis(),o=a.dim==="x"||a.dim==="radius"?0:1,i=[],u=0,l=[],f=[],s=[],c=[];if(n){for(u=0;u<r.length;u+=2)!isNaN(r[u])&&!isNaN(r[u+1])&&c.push(r[u],r[u+1]);r=c}for(u=0;u<r.length-2;u+=2)switch(s[0]=r[u+2],s[1]=r[u+3],f[0]=r[u],f[1]=r[u+1],i.push(f[0],f[1]),e){case"end":l[o]=s[o],l[1-o]=f[1-o],i.push(l[0],l[1]);break;case"middle":var p=(f[o]+s[o])/2,v=[];l[o]=v[o]=p,l[1-o]=f[1-o],v[1-o]=s[1-o],i.push(l[0],l[1]),i.push(v[0],v[1]);break;default:l[o]=f[o],l[1-o]=s[1-o],i.push(l[0],l[1])}return i.push(r[u++],r[u++]),i}function Lvt(r,t){var e=[],n=r.length,a,o;function i(s,c,p){var v=s.coord,d=(p-v)/(c.coord-v),m=rW(d,[s.color,c.color]);return{coord:p,color:m}}for(var u=0;u<n;u++){var l=r[u],f=l.coord;if(f<0)a=l;else if(f>t){o?e.push(i(o,l,t)):a&&e.push(i(a,l,0),i(a,l,t));break}else a&&(e.push(i(a,l,0)),a=null),e.push(l),o=l}return e}function Rvt(r,t,e){var n=r.getVisual("visualMeta");if(!(!n||!n.length||!r.count())&&t.type==="cartesian2d"){for(var a,o,i=n.length-1;i>=0;i--){var u=r.getDimensionInfo(n[i].dimension);if(a=u&&u.coordDim,a==="x"||a==="y"){o=n[i];break}}if(o){var l=t.getAxis(a),f=U(o.stops,function(y){return{coord:l.toGlobalCoord(l.dataToCoord(y.value)),color:y.color}}),s=f.length,c=o.outerColors.slice();s&&f[0].coord>f[s-1].coord&&(f.reverse(),c.reverse());var p=Lvt(f,a==="x"?e.getWidth():e.getHeight()),v=p.length;if(!v&&s)return f[0].coord<0?c[1]?c[1]:f[s-1].color:c[0]?c[0]:f[0].color;var d=10,m=p[0].coord-d,h=p[v-1].coord+d,_=h-m;if(_<.001)return"transparent";T(p,function(y){y.offset=(y.coord-m)/_}),p.push({offset:v?p[v-1].offset:.5,color:c[1]||"transparent"}),p.unshift({offset:v?p[0].offset:.5,color:c[0]||"transparent"});var g=new bu(0,0,0,0,p,!0);return g[a]=m,g[a+"2"]=h,g}}}function Pvt(r,t,e){var n=r.get("showAllSymbol"),a=n==="auto";if(!(n&&!a)){var o=e.getAxesByScale("ordinal")[0];if(o&&!(a&&Nvt(o,t))){var i=t.mapDimension(o.dim),u={};return T(o.getViewLabels(),function(l){var f=o.scale.getRawOrdinalNumber(l.tickValue);u[f]=1}),function(l){return!u.hasOwnProperty(t.get(i,l))}}}}function Nvt(r,t){var e=r.getExtent(),n=Math.abs(e[1]-e[0])/r.scale.count();isNaN(n)&&(n=0);for(var a=t.count(),o=Math.max(1,Math.round(a/5)),i=0;i<a;i+=o)if(El.getSymbolSize(t,i)[r.isHorizontal()?1:0]*1.5>n)return!1;return!0}function Ovt(r,t){return isNaN(r)||isNaN(t)}function Uvt(r){for(var t=r.length/2;t>0&&Ovt(r[t*2-2],r[t*2-1]);t--);return t-1}function Z5(r,t){return[r[t*2],r[t*2+1]]}function Hvt(r,t,e){for(var n=r.length/2,a=e==="x"?0:1,o,i,u=0,l=-1,f=0;f<n;f++)if(i=r[f*2+a],!(isNaN(i)||isNaN(r[f*2+1-a]))){if(f===0){o=i;continue}if(o<=t&&i>=t||o>=t&&i<=t){l=f;break}u=f,o=i}return{range:[u,l],t:(t-o)/(i-o)}}function X5(r){if(r.get(["endLabel","show"]))return!0;for(var t=0;t<sn.length;t++)if(r.get([sn[t],"endLabel","show"]))return!0;return!1}function JI(r,t,e,n){if(oi(t,"cartesian2d")){var a=n.getModel("endLabel"),o=a.get("valueAnimation"),i=n.getData(),u={lastFrameIndex:0},l=X5(n)?function(v,d){r._endLabelOnDuring(v,d,i,u,o,a,t)}:null,f=t.getBaseAxis().isHorizontal(),s=$I(t,e,n,function(){var v=r._endLabel;v&&e&&u.originalX!=null&&v.attr({x:u.originalX,y:u.originalY})},l);if(!n.get("clip",!0)){var c=s.shape,p=Math.max(c.width,c.height);f?(c.y-=p,c.height+=p*2):(c.x-=p,c.width+=p*2)}return l&&l(1,s),s}else return qI(t,e,n)}function kvt(r,t){var e=t.getBaseAxis(),n=e.isHorizontal(),a=e.inverse,o=n?a?"right":"left":"center",i=n?"middle":a?"top":"bottom";return{normal:{align:r.get("align")||o,verticalAlign:r.get("verticalAlign")||i}}}var zvt=(function(r){A(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return t.prototype.init=function(){var e=new at,n=new Au;this.group.add(n.group),this._symbolDraw=n,this._lineGroup=e},t.prototype.render=function(e,n,a){var o=this,i=e.coordinateSystem,u=this.group,l=e.getData(),f=e.getModel("lineStyle"),s=e.getModel("areaStyle"),c=l.getLayout("points")||[],p=i.type==="polar",v=this._coordSys,d=this._symbolDraw,m=this._polyline,h=this._polygon,_=this._lineGroup,g=!n.ssr&&e.get("animation"),y=!s.isEmpty(),D=s.get("origin"),b=iT(i,l,D),C=y&&Fvt(i,l,b),x=e.get("showSymbol"),w=e.get("connectNulls"),S=x&&!p&&Pvt(e,l,i),E=this._data;E&&E.eachItemGraphicEl(function(Mt,ut){Mt.__temp&&(u.remove(Mt),E.setItemGraphicEl(ut,null))}),x||d.remove(),u.add(_);var M=p?!1:e.get("step"),I;i&&i.getArea&&e.get("clip",!0)&&(I=i.getArea(),I.width!=null?(I.x-=.1,I.y-=.1,I.width+=.2,I.height+=.2):I.r0&&(I.r0-=.5,I.r+=.5)),this._clipShapeForSymbol=I;var F=Rvt(l,i,a)||l.getVisual("style")[l.getVisual("drawType")];if(!(m&&v.type===i.type&&M===this._step))x&&d.updateData(l,{isIgnore:S,clipShape:I,disableAnimation:!0,getSymbolPoint:function(Mt){return[c[Mt*2],c[Mt*2+1]]}}),g&&this._initSymbolLabelAnimation(l,i,I),M&&(c=qf(c,i,M,w),C&&(C=qf(C,i,M,w))),m=this._newPolyline(c),y?h=this._newPolygon(c,C):h&&(_.remove(h),h=this._polygon=null),p||this._initOrUpdateEndLabel(e,i,Ii(F)),_.setClipPath(JI(this,i,!0,e));else{y&&!h?h=this._newPolygon(c,C):h&&!y&&(_.remove(h),h=this._polygon=null),p||this._initOrUpdateEndLabel(e,i,Ii(F));var L=_.getClipPath();if(L){var R=JI(this,i,!1,e);Ae(L,{shape:R.shape},e)}else _.setClipPath(JI(this,i,!0,e));x&&d.updateData(l,{isIgnore:S,clipShape:I,disableAnimation:!0,getSymbolPoint:function(Mt){return[c[Mt*2],c[Mt*2+1]]}}),(!J5(this._stackedOnPoints,C)||!J5(this._points,c))&&(g?this._doUpdateAnimation(l,C,i,a,M,D,w):(M&&(c=qf(c,i,M,w),C&&(C=qf(C,i,M,w))),m.setShape({points:c}),h&&h.setShape({points:c,stackedOnPoints:C})))}var P=e.getModel("emphasis"),k=P.get("focus"),H=P.get("blurScope"),G=P.get("disabled");if(m.useStyle(et(f.getLineStyle(),{fill:"none",stroke:F,lineJoin:"bevel"})),fr(m,e,"lineStyle"),m.style.lineWidth>0&&e.get(["emphasis","lineStyle","width"])==="bolder"){var j=m.getState("emphasis").style;j.lineWidth=+m.style.lineWidth+1}vt(m).seriesIndex=e.seriesIndex,Me(m,k,H,G);var rt=Q5(e.get("smooth")),xt=e.get("smoothMonotone");if(m.setShape({smooth:rt,smoothMonotone:xt,connectNulls:w}),h){var J=l.getCalculationInfo("stackedOnSeries"),ot=0;h.useStyle(et(s.getAreaStyle(),{fill:F,opacity:.7,lineJoin:"bevel",decal:l.getVisual("style").decal})),J&&(ot=Q5(J.get("smooth"))),h.setShape({smooth:rt,stackedOnSmooth:ot,smoothMonotone:xt,connectNulls:w}),fr(h,e,"areaStyle"),vt(h).seriesIndex=e.seriesIndex,Me(h,k,H,G)}var At=function(Mt){o._changePolyState(Mt)};l.eachItemGraphicEl(function(Mt){Mt&&(Mt.onHoverStateChange=At)}),this._polyline.onHoverStateChange=At,this._data=l,this._coordSys=i,this._stackedOnPoints=C,this._points=c,this._step=M,this._valueOrigin=D,e.get("triggerLineEvent")&&(this.packEventData(e,m),h&&this.packEventData(e,h))},t.prototype.packEventData=function(e,n){vt(n).eventData={componentType:"series",componentSubType:"line",componentIndex:e.componentIndex,seriesIndex:e.seriesIndex,seriesName:e.name,seriesType:"line"}},t.prototype.highlight=function(e,n,a,o){var i=e.getData(),u=jo(i,o);if(this._changePolyState("emphasis"),!(u instanceof Array)&&u!=null&&u>=0){var l=i.getLayout("points"),f=i.getItemGraphicEl(u);if(!f){var s=l[u*2],c=l[u*2+1];if(isNaN(s)||isNaN(c)||this._clipShapeForSymbol&&!this._clipShapeForSymbol.contain(s,c))return;var p=e.get("zlevel")||0,v=e.get("z")||0;f=new El(i,u),f.x=s,f.y=c,f.setZ(p,v);var d=f.getSymbolPath().getTextContent();d&&(d.zlevel=p,d.z=v,d.z2=this._polyline.z2+1),f.__temp=!0,i.setItemGraphicEl(u,f),f.stopSymbolAnimation(!0),this.group.add(f)}f.highlight()}else me.prototype.highlight.call(this,e,n,a,o)},t.prototype.downplay=function(e,n,a,o){var i=e.getData(),u=jo(i,o);if(this._changePolyState("normal"),u!=null&&u>=0){var l=i.getItemGraphicEl(u);l&&(l.__temp?(i.setItemGraphicEl(u,null),this.group.remove(l)):l.downplay())}else me.prototype.downplay.call(this,e,n,a,o)},t.prototype._changePolyState=function(e){var n=this._polygon;hc(this._polyline,e),n&&hc(n,e)},t.prototype._newPolyline=function(e){var n=this._polyline;return n&&this._lineGroup.remove(n),n=new q5({shape:{points:e},segmentIgnoreThreshold:2,z2:10}),this._lineGroup.add(n),this._polyline=n,n},t.prototype._newPolygon=function(e,n){var a=this._polygon;return a&&this._lineGroup.remove(a),a=new lT({shape:{points:e,stackedOnPoints:n},segmentIgnoreThreshold:2}),this._lineGroup.add(a),this._polygon=a,a},t.prototype._initSymbolLabelAnimation=function(e,n,a){var o,i,u=n.getBaseAxis(),l=u.inverse;n.type==="cartesian2d"?(o=u.isHorizontal(),i=!1):n.type==="polar"&&(o=u.dim==="angle",i=!0);var f=e.hostModel,s=f.get("animationDuration");X(s)&&(s=s(null));var c=f.get("animationDelay")||0,p=X(c)?c(null):c;e.eachItemGraphicEl(function(v,d){var m=v;if(m){var h=[v.x,v.y],_=void 0,g=void 0,y=void 0;if(a)if(i){var D=a,b=n.pointToCoord(h);o?(_=D.startAngle,g=D.endAngle,y=-b[1]/180*Math.PI):(_=D.r0,g=D.r,y=b[0])}else{var C=a;o?(_=C.x,g=C.x+C.width,y=v.x):(_=C.y+C.height,g=C.y,y=v.y)}var x=g===_?0:(y-_)/(g-_);l&&(x=1-x);var w=X(c)?c(d):s*x+p,S=m.getSymbolPath(),E=S.getTextContent();m.attr({scaleX:0,scaleY:0}),m.animateTo({scaleX:1,scaleY:1},{duration:200,setToFinal:!0,delay:w}),E&&E.animateFrom({style:{opacity:0}},{duration:300,delay:w}),S.disableLabelAnimation=!0}})},t.prototype._initOrUpdateEndLabel=function(e,n,a){var o=e.getModel("endLabel");if(X5(e)){var i=e.getData(),u=this._polyline,l=i.getLayout("points");if(!l){u.removeTextContent(),this._endLabel=null;return}var f=this._endLabel;f||(f=this._endLabel=new Wt({z2:200}),f.ignoreClip=!0,u.setTextContent(this._endLabel),u.disableLabelAnimation=!0);var s=Uvt(l);s>=0&&(Ze(u,$e(e,"endLabel"),{inheritColor:a,labelFetcher:e,labelDataIndex:s,defaultText:function(c,p,v){return v!=null?oT(i,v):zi(i,c)},enableTextSetter:!0},kvt(o,n)),u.textConfig.position=null)}else this._endLabel&&(this._polyline.removeTextContent(),this._endLabel=null)},t.prototype._endLabelOnDuring=function(e,n,a,o,i,u,l){var f=this._endLabel,s=this._polyline;if(f){e<1&&o.originalX==null&&(o.originalX=f.x,o.originalY=f.y);var c=a.getLayout("points"),p=a.hostModel,v=p.get("connectNulls"),d=u.get("precision"),m=u.get("distance")||0,h=l.getBaseAxis(),_=h.isHorizontal(),g=h.inverse,y=n.shape,D=g?_?y.x:y.y+y.height:_?y.x+y.width:y.y,b=(_?m:0)*(g?-1:1),C=(_?0:-m)*(g?-1:1),x=_?"x":"y",w=Hvt(c,D,x),S=w.range,E=S[1]-S[0],M=void 0;if(E>=1){if(E>1&&!v){var I=Z5(c,S[0]);f.attr({x:I[0]+b,y:I[1]+C}),i&&(M=p.getRawValue(S[0]))}else{var I=s.getPointOn(D,x);I&&f.attr({x:I[0]+b,y:I[1]+C});var F=p.getRawValue(S[0]),L=p.getRawValue(S[1]);i&&(M=tb(a,d,F,L,w.t))}o.lastFrameIndex=S[0]}else{var R=e===1||o.lastFrameIndex>0?S[0]:0,I=Z5(c,R);i&&(M=p.getRawValue(R)),f.attr({x:I[0]+b,y:I[1]+C})}if(i){var P=yl(f);typeof P.setLabelText=="function"&&P.setLabelText(M)}}},t.prototype._doUpdateAnimation=function(e,n,a,o,i,u,l){var f=this._polyline,s=this._polygon,c=e.hostModel,p=BI(this._data,e,this._stackedOnPoints,n,this._coordSys,a,this._valueOrigin,u),v=p.current,d=p.stackedOnCurrent,m=p.next,h=p.stackedOnNext;if(i&&(v=qf(p.current,a,i,l),d=qf(p.stackedOnCurrent,a,i,l),m=qf(p.next,a,i,l),h=qf(p.stackedOnNext,a,i,l)),Y5(v,m)>3e3||s&&Y5(d,h)>3e3){f.stopAnimation(),f.setShape({points:m}),s&&(s.stopAnimation(),s.setShape({points:m,stackedOnPoints:h}));return}f.shape.__points=p.current,f.shape.points=v;var _={shape:{points:m}};p.current!==v&&(_.shape.__points=p.next),f.stopAnimation(),$t(f,_,c),s&&(s.setShape({points:v,stackedOnPoints:d}),s.stopAnimation(),$t(s,{shape:{stackedOnPoints:h}},c),f.shape.points!==s.shape.points&&(s.shape.points=f.shape.points));for(var g=[],y=p.status,D=0;D<y.length;D++){var b=y[D].cmd;if(b==="="){var C=e.getItemGraphicEl(y[D].idx1);C&&g.push({el:C,ptIdx:D})}}f.animators&&f.animators.length&&f.animators[0].during(function(){s&&s.dirtyShape();for(var x=f.shape.__points,w=0;w<g.length;w++){var S=g[w].el,E=g[w].ptIdx*2;S.x=x[E],S.y=x[E+1],S.markRedraw()}})},t.prototype.remove=function(e){var n=this.group,a=this._data;this._lineGroup.removeAll(),this._symbolDraw.remove(!0),a&&a.eachItemGraphicEl(function(o,i){o.__temp&&(n.remove(o),a.setItemGraphicEl(i,null))}),this._polyline=this._polygon=this._coordSys=this._points=this._stackedOnPoints=this._endLabel=this._data=null},t.type="line",t})(me),K5=zvt;function Wi(r,t){return{seriesType:r,plan:So(),reset:function(e){var n=e.getData(),a=e.coordinateSystem,o=e.pipelineContext,i=t||o.large;if(a){var u=U(a.dimensions,function(v){return n.mapDimension(v)}).slice(0,2),l=u.length,f=n.getCalculationInfo("stackResultDimension");Mo(n,u[0])&&(u[0]=f),Mo(n,u[1])&&(u[1]=f);var s=n.getStore(),c=n.getDimensionIndex(u[0]),p=n.getDimensionIndex(u[1]);return l&&{progress:function(v,d){for(var m=v.end-v.start,h=i&&Aa(m*l),_=[],g=[],y=v.start,D=0;y<v.end;y++){var b=void 0;if(l===1){var C=s.get(c,y);b=a.dataToPoint(C,null,g)}else _[0]=s.get(c,y),_[1]=s.get(p,y),b=a.dataToPoint(_,null,g);i?(h[D++]=b[0],h[D++]=b[1]):d.setItemLayout(y,b.slice())}i&&d.setLayout("points",h)}}}}}}var Wvt={average:function(r){for(var t=0,e=0,n=0;n<r.length;n++)isNaN(r[n])||(t+=r[n],e++);return e===0?NaN:t/e},sum:function(r){for(var t=0,e=0;e<r.length;e++)t+=r[e]||0;return t},max:function(r){for(var t=-1/0,e=0;e<r.length;e++)r[e]>t&&(t=r[e]);return isFinite(t)?t:NaN},min:function(r){for(var t=1/0,e=0;e<r.length;e++)r[e]<t&&(t=r[e]);return isFinite(t)?t:NaN},minmax:function(r){for(var t=-1/0,e=-1/0,n=0;n<r.length;n++){var a=r[n],o=Math.abs(a);o>t&&(t=o,e=a)}return isFinite(e)?e:NaN},nearest:function(r){return r[0]}},Gvt=function(r){return Math.round(r.length/2)};function og(r){return{seriesType:r,reset:function(t,e,n){var a=t.getData(),o=t.get("sampling"),i=t.coordinateSystem,u=a.count();if(u>10&&i.type==="cartesian2d"&&o){var l=i.getBaseAxis(),f=i.getOtherAxis(l),s=l.getExtent(),c=n.getDevicePixelRatio(),p=Math.abs(s[1]-s[0])*(c||1),v=Math.round(u/p);if(isFinite(v)&&v>1){o==="lttb"&&t.setData(a.lttbDownSample(a.mapDimension(f.dim),1/v));var d=void 0;V(o)?d=Wvt[o]:X(o)&&(d=o),d&&t.setData(a.downSample(a.mapDimension(f.dim),1/v,d,Gvt))}}}}}function jI(r){r.registerChartView(K5),r.registerSeriesModel(G5),r.registerLayout(Wi("line",!0)),r.registerVisual({seriesType:"line",reset:function(t){var e=t.getData(),n=t.getModel("lineStyle").getLineStyle();n&&!n.stroke&&(n.stroke=e.getVisual("style").fill),e.setVisual("legendLineStyle",n)}}),r.registerProcessor(r.PRIORITY.PROCESSOR.STATISTIC,og("line"))}var tq=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.getInitialData=function(e,n){return Pn(null,this,{useEncodeDefaulter:!0})},t.prototype.getMarkerPosition=function(e,n,a){var o=this.coordinateSystem;if(o&&o.clampData){var i=o.clampData(e),u=o.dataToPoint(i);if(a)T(o.getAxes(),function(p,v){if(p.type==="category"&&n!=null){var d=p.getTicksCoords(),m=p.getTickModel().get("alignWithLabel"),h=i[v],_=n[v]==="x1"||n[v]==="y1";if(_&&!m&&(h+=1),d.length<2)return;if(d.length===2){u[v]=p.toGlobalCoord(p.getExtent()[_?1:0]);return}for(var g=void 0,y=void 0,D=1,b=0;b<d.length;b++){var C=d[b].coord,x=b===d.length-1?d[b-1].tickValue+D:d[b].tickValue;if(x===h){y=C;break}else if(x<h)g=C;else if(g!=null&&x>h){y=(C+g)/2;break}b===1&&(D=x-d[0].tickValue)}y==null&&(g?g&&(y=d[d.length-1].coord):y=d[0].coord),u[v]=p.toGlobalCoord(y)}});else{var l=this.getData(),f=l.getLayout("offset"),s=l.getLayout("size"),c=o.getBaseAxis().isHorizontal()?0:1;u[c]+=f+s/2}return u}return[NaN,NaN]},t.type="series.__base_bar__",t.defaultOption={z:2,coordinateSystem:"cartesian2d",legendHoverLink:!0,barMinHeight:0,barMinAngle:0,large:!1,largeThreshold:400,progressive:3e3,progressiveChunkMode:"mod"},t})(xe);xe.registerClass(tq);var Kv=tq;var Bvt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.getInitialData=function(){return Pn(null,this,{useEncodeDefaulter:!0,createInvertedIndices:!!this.get("realtimeSort",!0)||null})},t.prototype.getProgressive=function(){return this.get("large")?this.get("progressive"):!1},t.prototype.getProgressiveThreshold=function(){var e=this.get("progressiveThreshold"),n=this.get("largeThreshold");return n>e&&(e=n),e},t.prototype.brushSelector=function(e,n,a){return a.rect(n.getItemLayout(e))},t.type="series.bar",t.dependencies=["grid","polar"],t.defaultOption=va(Kv.defaultOption,{clip:!0,roundCap:!1,showBackground:!1,backgroundStyle:{color:"rgba(180, 180, 180, 0.2)",borderColor:null,borderWidth:0,borderType:"solid",borderRadius:0,shadowBlur:0,shadowColor:null,shadowOffsetX:0,shadowOffsetY:0,opacity:1},select:{itemStyle:{borderColor:"#212121"}},realtimeSort:!1}),t})(Kv),eq=Bvt;var Vvt=(function(){function r(){this.cx=0,this.cy=0,this.r0=0,this.r=0,this.startAngle=0,this.endAngle=Math.PI*2,this.clockwise=!0}return r})(),$vt=(function(r){A(t,r);function t(e){var n=r.call(this,e)||this;return n.type="sausage",n}return t.prototype.getDefaultShape=function(){return new Vvt},t.prototype.buildPath=function(e,n){var a=n.cx,o=n.cy,i=Math.max(n.r0||0,0),u=Math.max(n.r,0),l=(u-i)*.5,f=i+l,s=n.startAngle,c=n.endAngle,p=n.clockwise,v=Math.PI*2,d=p?c-s<v:s-c<v;d||(s=c-(p?v:-v));var m=Math.cos(s),h=Math.sin(s),_=Math.cos(c),g=Math.sin(c);d?(e.moveTo(m*i+a,h*i+o),e.arc(m*f+a,h*f+o,l,-Math.PI+s,s,!p)):e.moveTo(m*u+a,h*u+o),e.arc(a,o,u,s,c,!p),e.arc(_*f+a,g*f+o,l,c-Math.PI*2,c-Math.PI,!p),i!==0&&e.arc(a,o,i,c,s,p)},t})(bt),td=$vt;function rq(r,t){t=t||{};var e=t.isRoundCap;return function(n,a,o){var i=a.position;if(!i||i instanceof Array)return ac(n,a,o);var u=r(i),l=a.distance!=null?a.distance:5,f=this.shape,s=f.cx,c=f.cy,p=f.r,v=f.r0,d=(p+v)/2,m=f.startAngle,h=f.endAngle,_=(m+h)/2,g=e?Math.abs(p-v)/2:0,y=Math.cos,D=Math.sin,b=s+p*y(m),C=c+p*D(m),x="left",w="top";switch(u){case"startArc":b=s+(v-l)*y(_),C=c+(v-l)*D(_),x="center",w="top";break;case"insideStartArc":b=s+(v+l)*y(_),C=c+(v+l)*D(_),x="center",w="bottom";break;case"startAngle":b=s+d*y(m)+fT(m,l+g,!1),C=c+d*D(m)+sT(m,l+g,!1),x="right",w="middle";break;case"insideStartAngle":b=s+d*y(m)+fT(m,-l+g,!1),C=c+d*D(m)+sT(m,-l+g,!1),x="left",w="middle";break;case"middle":b=s+d*y(_),C=c+d*D(_),x="center",w="middle";break;case"endArc":b=s+(p+l)*y(_),C=c+(p+l)*D(_),x="center",w="bottom";break;case"insideEndArc":b=s+(p-l)*y(_),C=c+(p-l)*D(_),x="center",w="top";break;case"endAngle":b=s+d*y(h)+fT(h,l+g,!0),C=c+d*D(h)+sT(h,l+g,!0),x="left",w="middle";break;case"insideEndAngle":b=s+d*y(h)+fT(h,-l+g,!0),C=c+d*D(h)+sT(h,-l+g,!0),x="right",w="middle";break;default:return ac(n,a,o)}return n=n||{},n.x=b,n.y=C,n.align=x,n.verticalAlign=w,n}}function nq(r,t,e,n){if(Nt(n)){r.setTextConfig({rotation:n});return}else if(O(t)){r.setTextConfig({rotation:0});return}var a=r.shape,o=a.clockwise?a.startAngle:a.endAngle,i=a.clockwise?a.endAngle:a.startAngle,u=(o+i)/2,l,f=e(t);switch(f){case"startArc":case"insideStartArc":case"middle":case"insideEndArc":case"endArc":l=u;break;case"startAngle":case"insideStartAngle":l=o;break;case"endAngle":case"insideEndAngle":l=i;break;default:r.setTextConfig({rotation:0});return}var s=Math.PI*1.5-l;f==="middle"&&s>Math.PI/2&&s<Math.PI*1.5&&(s-=Math.PI),r.setTextConfig({rotation:s})}function fT(r,t,e){return t*Math.sin(r)*(e?-1:1)}function sT(r,t,e){return t*Math.cos(r)*(e?1:-1)}function Fu(r,t,e){var n=r.get("borderRadius");if(n==null)return e?{cornerRadius:0}:null;O(n)||(n=[n,n,n,n]);var a=Math.abs(t.r||0-t.r0||0);return{cornerRadius:U(n,function(o){return qn(o,a)})}}var YI=Math.max,QI=Math.min;function qvt(r,t){var e=r.getArea&&r.getArea();if(oi(r,"cartesian2d")){var n=r.getBaseAxis();if(n.type!=="category"||!n.onBand){var a=t.getLayout("bandWidth");n.isHorizontal()?(e.x-=a,e.width+=a*2):(e.y-=a,e.height+=a*2)}}return e}var Jvt=(function(r){A(t,r);function t(){var e=r.call(this)||this;return e.type=t.type,e._isFirstFrame=!0,e}return t.prototype.render=function(e,n,a,o){this._model=e,this._removeOnRenderedListener(a),this._updateDrawMode(e);var i=e.get("coordinateSystem");(i==="cartesian2d"||i==="polar")&&(this._progressiveEls=null,this._isLargeDraw?this._renderLarge(e,n,a):this._renderNormal(e,n,a,o))},t.prototype.incrementalPrepareRender=function(e){this._clear(),this._updateDrawMode(e),this._updateLargeClip(e)},t.prototype.incrementalRender=function(e,n){this._progressiveEls=[],this._incrementalRenderLarge(e,n)},t.prototype.eachRendered=function(e){Sa(this._progressiveEls||this.group,e)},t.prototype._updateDrawMode=function(e){var n=e.pipelineContext.large;(this._isLargeDraw==null||n!==this._isLargeDraw)&&(this._isLargeDraw=n,this._clear())},t.prototype._renderNormal=function(e,n,a,o){var i=this.group,u=e.getData(),l=this._data,f=e.coordinateSystem,s=f.getBaseAxis(),c;f.type==="cartesian2d"?c=s.isHorizontal():f.type==="polar"&&(c=s.dim==="angle");var p=e.isAnimationEnabled()?e:null,v=jvt(e,f);v&&this._enableRealtimeSort(v,u,a);var d=e.get("clip",!0)||v,m=qvt(f,u);i.removeClipPath();var h=e.get("roundCap",!0),_=e.get("showBackground",!0),g=e.getModel("backgroundStyle"),y=g.get("borderRadius")||0,D=[],b=this._backgroundEls,C=o&&o.isInitSort,x=o&&o.type==="changeAxisOrder";function w(M){var I=cT[f.type](u,M),F=edt(f,c,I);return F.useStyle(g.getItemStyle()),f.type==="cartesian2d"?F.setShape("r",y):F.setShape("cornerRadius",y),D[M]=F,F}u.diff(l).add(function(M){var I=u.getItemModel(M),F=cT[f.type](u,M,I);if(_&&w(M),!(!u.hasValue(M)||!lq[f.type](F))){var L=!1;d&&(L=aq[f.type](m,F));var R=oq[f.type](e,u,M,F,c,p,s.model,!1,h);v&&(R.forceLabelAnimation=!0),fq(R,u,M,I,F,e,c,f.type==="polar"),C?R.attr({shape:F}):v?iq(v,p,R,F,M,c,!1,!1):Ae(R,{shape:F},e,M),u.setItemGraphicEl(M,R),i.add(R),R.ignore=L}}).update(function(M,I){var F=u.getItemModel(M),L=cT[f.type](u,M,F);if(_){var R=void 0;b.length===0?R=w(I):(R=b[I],R.useStyle(g.getItemStyle()),f.type==="cartesian2d"?R.setShape("r",y):R.setShape("cornerRadius",y),D[M]=R);var P=cT[f.type](u,M),k=dq(c,P,f);$t(R,{shape:k},p,M)}var H=l.getItemGraphicEl(I);if(!u.hasValue(M)||!lq[f.type](L)){i.remove(H);return}var G=!1;if(d&&(G=aq[f.type](m,L),G&&i.remove(H)),H?rn(H):H=oq[f.type](e,u,M,L,c,p,s.model,!!H,h),v&&(H.forceLabelAnimation=!0),x){var j=H.getTextContent();if(j){var rt=yl(j);rt.prevValue!=null&&(rt.prevValue=rt.value)}}else fq(H,u,M,F,L,e,c,f.type==="polar");C?H.attr({shape:L}):v?iq(v,p,H,L,M,c,!0,x):$t(H,{shape:L},e,M,null),u.setItemGraphicEl(M,H),H.ignore=G,i.add(H)}).remove(function(M){var I=l.getItemGraphicEl(M);I&&ml(I,e,M)}).execute();var S=this._backgroundGroup||(this._backgroundGroup=new at);S.removeAll();for(var E=0;E<D.length;++E)S.add(D[E]);i.add(S),this._backgroundEls=D,this._data=u},t.prototype._renderLarge=function(e,n,a){this._clear(),cq(e,this.group),this._updateLargeClip(e)},t.prototype._incrementalRenderLarge=function(e,n){this._removeBackground(),cq(n,this.group,this._progressiveEls,!0)},t.prototype._updateLargeClip=function(e){var n=e.get("clip",!0)&&Iu(e.coordinateSystem,!1,e),a=this.group;n?a.setClipPath(n):a.removeClipPath()},t.prototype._enableRealtimeSort=function(e,n,a){var o=this;if(n.count()){var i=e.baseAxis;if(this._isFirstFrame)this._dispatchInitSort(n,e,a),this._isFirstFrame=!1;else{var u=function(l){var f=n.getItemGraphicEl(l),s=f&&f.shape;return s&&Math.abs(i.isHorizontal()?s.height:s.width)||0};this._onRendered=function(){o._updateSortWithinSameData(n,u,i,a)},a.getZr().on("rendered",this._onRendered)}}},t.prototype._dataSort=function(e,n,a){var o=[];return e.each(e.mapDimension(n.dim),function(i,u){var l=a(u);l=l??NaN,o.push({dataIndex:u,mappedValue:l,ordinalNumber:i})}),o.sort(function(i,u){return u.mappedValue-i.mappedValue}),{ordinalNumbers:U(o,function(i){return i.ordinalNumber})}},t.prototype._isOrderChangedWithinSameData=function(e,n,a){for(var o=a.scale,i=e.mapDimension(a.dim),u=Number.MAX_VALUE,l=0,f=o.getOrdinalMeta().categories.length;l<f;++l){var s=e.rawIndexOf(i,o.getRawOrdinalNumber(l)),c=s<0?Number.MIN_VALUE:n(e.indexOfRawIndex(s));if(c>u)return!0;u=c}return!1},t.prototype._isOrderDifferentInView=function(e,n){for(var a=n.scale,o=a.getExtent(),i=Math.max(0,o[0]),u=Math.min(o[1],a.getOrdinalMeta().categories.length-1);i<=u;++i)if(e.ordinalNumbers[i]!==a.getRawOrdinalNumber(i))return!0},t.prototype._updateSortWithinSameData=function(e,n,a,o){if(this._isOrderChangedWithinSameData(e,n,a)){var i=this._dataSort(e,a,n);this._isOrderDifferentInView(i,a)&&(this._removeOnRenderedListener(o),o.dispatchAction({type:"changeAxisOrder",componentType:a.dim+"Axis",axisId:a.index,sortInfo:i}))}},t.prototype._dispatchInitSort=function(e,n,a){var o=n.baseAxis,i=this._dataSort(e,o,function(u){return e.get(e.mapDimension(n.otherAxis.dim),u)});a.dispatchAction({type:"changeAxisOrder",componentType:o.dim+"Axis",isInitSort:!0,axisId:o.index,sortInfo:i})},t.prototype.remove=function(e,n){this._clear(this._model),this._removeOnRenderedListener(n)},t.prototype.dispose=function(e,n){this._removeOnRenderedListener(n)},t.prototype._removeOnRenderedListener=function(e){this._onRendered&&(e.getZr().off("rendered",this._onRendered),this._onRendered=null)},t.prototype._clear=function(e){var n=this.group,a=this._data;e&&e.isAnimationEnabled()&&a&&!this._isLargeDraw?(this._removeBackground(),this._backgroundEls=[],a.eachItemGraphicEl(function(o){ml(o,e,vt(o).dataIndex)})):n.removeAll(),this._data=null,this._isFirstFrame=!0},t.prototype._removeBackground=function(){this.group.remove(this._backgroundGroup),this._backgroundGroup=null},t.type="bar",t})(me),aq={cartesian2d:function(r,t){var e=t.width<0?-1:1,n=t.height<0?-1:1;e<0&&(t.x+=t.width,t.width=-t.width),n<0&&(t.y+=t.height,t.height=-t.height);var a=r.x+r.width,o=r.y+r.height,i=YI(t.x,r.x),u=QI(t.x+t.width,a),l=YI(t.y,r.y),f=QI(t.y+t.height,o),s=u<i,c=f<l;return t.x=s&&i>a?u:i,t.y=c&&l>o?f:l,t.width=s?0:u-i,t.height=c?0:f-l,e<0&&(t.x+=t.width,t.width=-t.width),n<0&&(t.y+=t.height,t.height=-t.height),s||c},polar:function(r,t){var e=t.r0<=t.r?1:-1;if(e<0){var n=t.r;t.r=t.r0,t.r0=n}var a=QI(t.r,r.r),o=YI(t.r0,r.r0);t.r=a,t.r0=o;var i=a-o<0;if(e<0){var n=t.r;t.r=t.r0,t.r0=n}return i}},oq={cartesian2d:function(r,t,e,n,a,o,i,u,l){var f=new Rt({shape:N({},n),z2:1});if(f.__dataIndex=e,f.name="item",o){var s=f.shape,c=a?"height":"width";s[c]=0}return f},polar:function(r,t,e,n,a,o,i,u,l){var f=!a&&l?td:Vr,s=new f({shape:n,z2:1});s.name="item";var c=vq(a);if(s.calculateTextPosition=rq(c,{isRoundCap:f===td}),o){var p=s.shape,v=a?"r":"endAngle",d={};p[v]=a?n.r0:n.startAngle,d[v]=n[v],(u?$t:Ae)(s,{shape:d},o)}return s}};function jvt(r,t){var e=r.get("realtimeSort",!0),n=t.getBaseAxis();if(e&&n.type==="category"&&t.type==="cartesian2d")return{baseAxis:n,otherAxis:t.getOtherAxis(n)}}function iq(r,t,e,n,a,o,i,u){var l,f;o?(f={x:n.x,width:n.width},l={y:n.y,height:n.height}):(f={y:n.y,height:n.height},l={x:n.x,width:n.width}),u||(i?$t:Ae)(e,{shape:l},t,a,null);var s=t?r.baseAxis.model:null;(i?$t:Ae)(e,{shape:f},s,a)}function uq(r,t){for(var e=0;e<t.length;e++)if(!isFinite(r[t[e]]))return!0;return!1}var Yvt=["x","y","width","height"],Qvt=["cx","cy","r","startAngle","endAngle"],lq={cartesian2d:function(r){return!uq(r,Yvt)},polar:function(r){return!uq(r,Qvt)}},cT={cartesian2d:function(r,t,e){var n=r.getItemLayout(t),a=e?Xvt(e,n):0,o=n.width>0?1:-1,i=n.height>0?1:-1;return{x:n.x+o*a/2,y:n.y+i*a/2,width:n.width-o*a,height:n.height-i*a}},polar:function(r,t,e){var n=r.getItemLayout(t);return{cx:n.cx,cy:n.cy,r0:n.r0,r:n.r,startAngle:n.startAngle,endAngle:n.endAngle,clockwise:n.clockwise}}};function Zvt(r){return r.startAngle!=null&&r.endAngle!=null&&r.startAngle===r.endAngle}function vq(r){return(function(t){var e=t?"Arc":"Angle";return function(n){switch(n){case"start":case"insideStart":case"end":case"insideEnd":return n+e;default:return n}}})(r)}function fq(r,t,e,n,a,o,i,u){var l=t.getItemVisual(e,"style");if(u){if(!o.get("roundCap")){var s=r.shape,c=Fu(n.getModel("itemStyle"),s,!0);N(s,c),r.setShape(s)}}else{var f=n.get(["itemStyle","borderRadius"])||0;r.setShape("r",f)}r.useStyle(l);var p=n.getShallow("cursor");p&&r.attr("cursor",p);var v=u?i?a.r>=a.r0?"endArc":"startArc":a.endAngle>=a.startAngle?"endAngle":"startAngle":i?a.height>=0?"bottom":"top":a.width>=0?"right":"left",d=$e(n);Ze(r,d,{labelFetcher:o,labelDataIndex:e,defaultText:zi(o.getData(),e),inheritColor:l.fill,defaultOpacity:l.opacity,defaultOutsidePosition:v});var m=r.getTextContent();if(u&&m){var h=n.get(["label","position"]);r.textConfig.inside=h==="middle"?!0:null,nq(r,h==="outside"?v:h,vq(i),n.get(["label","rotate"]))}Eb(m,d,o.getRawValue(e),function(g){return oT(t,g)});var _=n.getModel(["emphasis"]);Me(r,_.get("focus"),_.get("blurScope"),_.get("disabled")),fr(r,n),Zvt(a)&&(r.style.fill="none",r.style.stroke="none",T(r.states,function(g){g.style&&(g.style.fill=g.style.stroke="none")}))}function Xvt(r,t){var e=r.get(["itemStyle","borderColor"]);if(!e||e==="none")return 0;var n=r.get(["itemStyle","borderWidth"])||0,a=isNaN(t.width)?Number.MAX_VALUE:Math.abs(t.width),o=isNaN(t.height)?Number.MAX_VALUE:Math.abs(t.height);return Math.min(n,a,o)}var Kvt=(function(){function r(){}return r})(),sq=(function(r){A(t,r);function t(e){var n=r.call(this,e)||this;return n.type="largeBar",n}return t.prototype.getDefaultShape=function(){return new Kvt},t.prototype.buildPath=function(e,n){for(var a=n.points,o=this.baseDimIdx,i=1-this.baseDimIdx,u=[],l=[],f=this.barWidth,s=0;s<a.length;s+=3)l[o]=f,l[i]=a[s+2],u[o]=a[s+o],u[i]=a[s+i],e.rect(u[0],u[1],l[0],l[1])},t})(bt);function cq(r,t,e,n){var a=r.getData(),o=a.getLayout("valueAxisHorizontal")?1:0,i=a.getLayout("largeDataIndices"),u=a.getLayout("size"),l=r.getModel("backgroundStyle"),f=a.getLayout("largeBackgroundPoints");if(f){var s=new sq({shape:{points:f},incremental:!!n,silent:!0,z2:0});s.baseDimIdx=o,s.largeDataIndices=i,s.barWidth=u,s.useStyle(l.getItemStyle()),t.add(s),e&&e.push(s)}var c=new sq({shape:{points:a.getLayout("largePoints")},incremental:!!n,ignoreCoarsePointer:!0,z2:1});c.baseDimIdx=o,c.largeDataIndices=i,c.barWidth=u,t.add(c),c.useStyle(a.getVisual("style")),vt(c).seriesIndex=r.seriesIndex,r.get("silent")||(c.on("mousedown",pq),c.on("mousemove",pq)),e&&e.push(c)}var pq=A_(function(r){var t=this,e=tdt(t,r.offsetX,r.offsetY);vt(t).dataIndex=e>=0?e:null},30,!1);function tdt(r,t,e){for(var n=r.baseDimIdx,a=1-n,o=r.shape.points,i=r.largeDataIndices,u=[],l=[],f=r.barWidth,s=0,c=o.length/3;s<c;s++){var p=s*3;if(l[n]=f,l[a]=o[p+2],u[n]=o[p+n],u[a]=o[p+a],l[a]<0&&(u[a]+=l[a],l[a]=-l[a]),t>=u[0]&&t<=u[0]+l[0]&&e>=u[1]&&e<=u[1]+l[1])return i[s]}return-1}function dq(r,t,e){if(oi(e,"cartesian2d")){var n=t,a=e.getArea();return{x:r?n.x:a.x,y:r?a.y:n.y,width:r?n.width:a.width,height:r?a.height:n.height}}else{var a=e.getArea(),o=t;return{cx:a.cx,cy:a.cy,r0:r?a.r0:o.r0,r:r?a.r:o.r,startAngle:r?o.startAngle:0,endAngle:r?o.endAngle:Math.PI*2}}}function edt(r,t,e){var n=r.type==="polar"?Vr:Rt;return new n({shape:dq(t,e,r),silent:!0,z2:0})}var mq=Jvt;function ZI(r){r.registerChartView(mq),r.registerSeriesModel(eq),r.registerLayout(r.PRIORITY.VISUAL.LAYOUT,gt(LC,"bar")),r.registerLayout(r.PRIORITY.VISUAL.PROGRESSIVE_LAYOUT,RC("bar")),r.registerProcessor(r.PRIORITY.PROCESSOR.STATISTIC,og("bar")),r.registerAction({type:"changeAxisOrder",event:"changeAxisOrder",update:"update"},function(t,e){var n=t.componentType||"series";e.eachComponent({mainType:n,query:t},function(a){t.sortInfo&&a.axis.setCategorySortInfo(t.sortInfo)})})}var hq=Math.PI*2,pT=Math.PI/180;function _q(r,t){return ze(r.getBoxLayoutParams(),{width:t.getWidth(),height:t.getHeight()})}function XI(r,t){var e=_q(r,t),n=r.get("center"),a=r.get("radius");O(a)||(a=[0,a]);var o=Y(e.width,t.getWidth()),i=Y(e.height,t.getHeight()),u=Math.min(o,i),l=Y(a[0],u/2),f=Y(a[1],u/2),s,c,p=r.coordinateSystem;if(p){var v=p.dataToPoint(n);s=v[0]||0,c=v[1]||0}else O(n)||(n=[n,n]),s=Y(n[0],o)+e.x,c=Y(n[1],i)+e.y;return{cx:s,cy:c,r0:l,r:f}}function KI(r,t,e){t.eachSeriesByType(r,function(n){var a=n.getData(),o=a.mapDimension("value"),i=_q(n,e),u=XI(n,e),l=u.cx,f=u.cy,s=u.r,c=u.r0,p=-n.get("startAngle")*pT,v=n.get("endAngle"),d=n.get("padAngle")*pT;v=v==="auto"?p-hq:-v*pT;var m=n.get("minAngle")*pT,h=m+d,_=0;a.each(o,function(P){!isNaN(P)&&_++});var g=a.getSum(o),y=Math.PI/(g||_)*2,D=n.get("clockwise"),b=n.get("roseType"),C=n.get("stillShowZeroSum"),x=a.getDataExtent(o);x[0]=0;var w=D?1:-1,S=[p,v],E=w*d/2;Zh(S,!D),p=S[0],v=S[1];var M=Math.abs(v-p),I=M,F=0,L=p;if(a.setLayout({viewRect:i,r:s}),a.each(o,function(P,k){var H;if(isNaN(P)){a.setItemLayout(k,{angle:NaN,startAngle:NaN,endAngle:NaN,clockwise:D,cx:l,cy:f,r0:c,r:b?NaN:s});return}b!=="area"?H=g===0&&C?y:P*y:H=M/_,H<h?(H=h,I-=h):F+=P;var G=L+w*H,j=0,rt=0;d>H?(j=L+w*H/2,rt=j):(j=L+E,rt=G-E),a.setItemLayout(k,{angle:H,startAngle:j,endAngle:rt,clockwise:D,cx:l,cy:f,r0:c,r:b?Ie(P,x,[c,s]):s}),L=G}),I<hq&&_)if(I<=.001){var R=M/_;a.each(o,function(P,k){if(!isNaN(P)){var H=a.getItemLayout(k);H.angle=R;var G=0,j=0;R<d?(G=p+w*(k+1/2)*R,j=G):(G=p+w*k*R+E,j=p+w*(k+1)*R-E),H.startAngle=G,H.endAngle=j}})}else y=I/F,L=p,a.each(o,function(P,k){if(!isNaN(P)){var H=a.getItemLayout(k),G=H.angle===h?h:P*y,j=0,rt=0;G<d?(j=L+w*G/2,rt=j):(j=L+E,rt=L+w*G-E),H.startAngle=j,H.endAngle=rt,L+=w*G}})})}function Gi(r){return{seriesType:r,reset:function(t,e){var n=e.findComponents({mainType:"legend"});if(!(!n||!n.length)){var a=t.getData();a.filterSelf(function(o){for(var i=a.getName(o),u=0;u<n.length;u++)if(!n[u].isSelected(i))return!1;return!0})}}}}var rdt=Math.PI/180;function gq(r,t,e,n,a,o,i,u,l,f){if(r.length<2)return;function s(m){for(var h=m.rB,_=h*h,g=0;g<m.list.length;g++){var y=m.list[g],D=Math.abs(y.label.y-e),b=n+y.len,C=b*b,x=Math.sqrt((1-Math.abs(D*D/_))*C),w=t+(x+y.len2)*a,S=w-y.label.x,E=y.targetTextWidth-S*a;yq(y,E,!0),y.label.x=w}}function c(m){for(var h={list:[],maxY:0},_={list:[],maxY:0},g=0;g<m.length;g++)if(m[g].labelAlignTo==="none"){var y=m[g],D=y.label.y>e?_:h,b=Math.abs(y.label.y-e);if(b>=D.maxY){var C=y.label.x-t-y.len2*a,x=n+y.len,w=Math.abs(C)<x?Math.sqrt(b*b/(1-C*C/x/x)):x;D.rB=w,D.maxY=b}D.list.push(y)}s(h),s(_)}for(var p=r.length,v=0;v<p;v++)if(r[v].position==="outer"&&r[v].labelAlignTo==="labelLine"){var d=r[v].label.x-f;r[v].linePoints[1][0]+=d,r[v].label.x=f}JC(r,l,l+i)&&c(r)}function ndt(r,t,e,n,a,o,i,u){for(var l=[],f=[],s=Number.MAX_VALUE,c=-Number.MAX_VALUE,p=0;p<r.length;p++){var v=r[p].label;tF(r[p])||(v.x<t?(s=Math.min(s,v.x),l.push(r[p])):(c=Math.max(c,v.x),f.push(r[p])))}for(var p=0;p<r.length;p++){var d=r[p];if(!tF(d)&&d.linePoints){if(d.labelStyleWidth!=null)continue;var v=d.label,m=d.linePoints,h=void 0;d.labelAlignTo==="edge"?v.x<t?h=m[2][0]-d.labelDistance-i-d.edgeDistance:h=i+a-d.edgeDistance-m[2][0]-d.labelDistance:d.labelAlignTo==="labelLine"?v.x<t?h=s-i-d.bleedMargin:h=i+a-c-d.bleedMargin:v.x<t?h=v.x-i-d.bleedMargin:h=i+a-v.x-d.bleedMargin,d.targetTextWidth=h,yq(d,h)}}gq(f,t,e,n,1,a,o,i,u,c),gq(l,t,e,n,-1,a,o,i,u,s);for(var p=0;p<r.length;p++){var d=r[p];if(!tF(d)&&d.linePoints){var v=d.label,m=d.linePoints,_=d.labelAlignTo==="edge",g=v.style.padding,y=g?g[1]+g[3]:0,D=v.style.backgroundColor?0:y,b=d.rect.width+D,C=m[1][0]-m[2][0];_?v.x<t?m[2][0]=i+d.edgeDistance+b+d.labelDistance:m[2][0]=i+a-d.edgeDistance-b-d.labelDistance:(v.x<t?m[2][0]=v.x+d.labelDistance:m[2][0]=v.x-d.labelDistance,m[1][0]=m[2][0]+C),m[1][1]=m[2][1]=v.y}}}function yq(r,t,e){if(e===void 0&&(e=!1),r.labelStyleWidth==null){var n=r.label,a=n.style,o=r.rect,i=a.backgroundColor,u=a.padding,l=u?u[1]+u[3]:0,f=a.overflow,s=o.width+(i?0:l);if(t<s||e){var c=o.height;if(f&&f.match("break")){n.setStyle("backgroundColor",null),n.setStyle("width",t-l);var p=n.getBoundingRect();n.setStyle("width",Math.ceil(p.width)),n.setStyle("backgroundColor",i)}else{var v=t-l,d=t<s?v:e?v>r.unconstrainedWidth?null:v:null;n.setStyle("width",d)}var m=n.getBoundingRect();o.width=m.width;var h=(n.style.margin||0)+2.1;o.height=m.height+h,o.y-=(o.height-c)/2}}}function tF(r){return r.position==="center"}function eF(r){var t=r.getData(),e=[],n,a,o=!1,i=(r.get("minShowLabelAngle")||0)*rdt,u=t.getLayout("viewRect"),l=t.getLayout("r"),f=u.width,s=u.x,c=u.y,p=u.height;function v(C){C.ignore=!0}function d(C){if(!C.ignore)return!0;for(var x in C.states)if(C.states[x].ignore===!1)return!0;return!1}t.each(function(C){var x=t.getItemGraphicEl(C),w=x.shape,S=x.getTextContent(),E=x.getTextGuideLine(),M=t.getItemModel(C),I=M.getModel("label"),F=I.get("position")||M.get(["emphasis","label","position"]),L=I.get("distanceToLabelLine"),R=I.get("alignTo"),P=Y(I.get("edgeDistance"),f),k=I.get("bleedMargin"),H=M.getModel("labelLine"),G=H.get("length");G=Y(G,f);var j=H.get("length2");if(j=Y(j,f),Math.abs(w.endAngle-w.startAngle)<i){T(S.states,v),S.ignore=!0,E&&(T(E.states,v),E.ignore=!0);return}if(d(S)){var rt=(w.startAngle+w.endAngle)/2,xt=Math.cos(rt),J=Math.sin(rt),ot,At,Mt,ut;n=w.cx,a=w.cy;var $=F==="inside"||F==="inner";if(F==="center")ot=w.cx,At=w.cy,ut="center";else{var Ct=($?(w.r+w.r0)/2*xt:w.r*xt)+n,ct=($?(w.r+w.r0)/2*J:w.r*J)+a;if(ot=Ct+xt*3,At=ct+J*3,!$){var ft=Ct+xt*(G+l-w.r),It=ct+J*(G+l-w.r),re=ft+(xt<0?-1:1)*j,Bt=It;R==="edge"?ot=xt<0?s+P:s+f-P:ot=re+(xt<0?-L:L),At=Bt,Mt=[[Ct,ct],[ft,It],[re,Bt]]}ut=$?"center":R==="edge"?xt>0?"right":"left":xt>0?"left":"right"}var rr=Math.PI,Ge=0,Sr=I.get("rotate");if(Nt(Sr))Ge=Sr*(rr/180);else if(F==="center")Ge=0;else if(Sr==="radial"||Sr===!0){var Sn=xt<0?-rt+rr:-rt;Ge=Sn}else if(Sr==="tangential"&&F!=="outside"&&F!=="outer"){var ke=Math.atan2(xt,J);ke<0&&(ke=rr*2+ke);var ne=J>0;ne&&(ke=rr+ke),Ge=ke-rr}if(o=!!Ge,S.x=ot,S.y=At,S.rotation=Ge,S.setStyle({verticalAlign:"middle"}),$){S.setStyle({align:ut});var ee=S.states.select;ee&&(ee.x+=S.x,ee.y+=S.y)}else{var Ce=S.getBoundingRect().clone();Ce.applyTransform(S.getComputedTransform());var te=(S.style.margin||0)+2.1;Ce.y-=te/2,Ce.height+=te,e.push({label:S,labelLine:E,position:F,len:G,len2:j,minTurnAngle:H.get("minTurnAngle"),maxSurfaceAngle:H.get("maxSurfaceAngle"),surfaceNormal:new Qt(xt,J),linePoints:Mt,textAlign:ut,labelDistance:L,labelAlignTo:R,edgeDistance:P,bleedMargin:k,rect:Ce,unconstrainedWidth:Ce.width,labelStyleWidth:S.style.width})}x.setTextConfig({inside:$})}}),!o&&r.get("avoidLabelOverlap")&&ndt(e,n,a,l,f,p,s,c);for(var m=0;m<e.length;m++){var h=e[m],_=h.label,g=h.labelLine,y=isNaN(_.x)||isNaN(_.y);if(_){_.setStyle({align:h.textAlign}),y&&(T(_.states,v),_.ignore=!0);var D=_.states.select;D&&(D.x+=_.x,D.y+=_.y)}if(g){var b=h.linePoints;y||!b?(T(g.states,v),g.ignore=!0):(hI(b,h.minTurnAngle),v5(b,h.surfaceNormal,h.maxSurfaceAngle),g.setShape({points:b}),_.__hostTarget.textGuideLineConfig={anchor:new Qt(b[0][0],b[0][1])})}}}var adt=(function(r){A(t,r);function t(e,n,a){var o=r.call(this)||this;o.z2=2;var i=new Wt;return o.setTextContent(i),o.updateData(e,n,a,!0),o}return t.prototype.updateData=function(e,n,a,o){var i=this,u=e.hostModel,l=e.getItemModel(n),f=l.getModel("emphasis"),s=e.getItemLayout(n),c=N(Fu(l.getModel("itemStyle"),s,!0),s);if(isNaN(c.startAngle)){i.setShape(c);return}if(o){i.setShape(c);var p=u.getShallow("animationType");u.ecModel.ssr?(Ae(i,{scaleX:0,scaleY:0},u,{dataIndex:n,isFrom:!0}),i.originX=c.cx,i.originY=c.cy):p==="scale"?(i.shape.r=s.r0,Ae(i,{shape:{r:s.r}},u,n)):a!=null?(i.setShape({startAngle:a,endAngle:a}),Ae(i,{shape:{startAngle:s.startAngle,endAngle:s.endAngle}},u,n)):(i.shape.endAngle=s.startAngle,$t(i,{shape:{endAngle:s.endAngle}},u,n))}else rn(i),$t(i,{shape:c},u,n);i.useStyle(e.getItemVisual(n,"style")),fr(i,l);var v=(s.startAngle+s.endAngle)/2,d=u.get("selectedOffset"),m=Math.cos(v)*d,h=Math.sin(v)*d,_=l.getShallow("cursor");_&&i.attr("cursor",_),this._updateLabel(u,e,n),i.ensureState("emphasis").shape=N({r:s.r+(f.get("scale")&&f.get("scaleSize")||0)},Fu(f.getModel("itemStyle"),s)),N(i.ensureState("select"),{x:m,y:h,shape:Fu(l.getModel(["select","itemStyle"]),s)}),N(i.ensureState("blur"),{shape:Fu(l.getModel(["blur","itemStyle"]),s)});var g=i.getTextGuideLine(),y=i.getTextContent();g&&N(g.ensureState("select"),{x:m,y:h}),N(y.ensureState("select"),{x:m,y:h}),Me(this,f.get("focus"),f.get("blurScope"),f.get("disabled"))},t.prototype._updateLabel=function(e,n,a){var o=this,i=n.getItemModel(a),u=i.getModel("labelLine"),l=n.getItemVisual(a,"style"),f=l&&l.fill,s=l&&l.opacity;Ze(o,$e(i),{labelFetcher:n.hostModel,labelDataIndex:a,inheritColor:f,defaultOpacity:s,defaultText:e.getFormattedLabel(a,"normal")||n.getName(a)});var c=o.getTextContent();o.setTextConfig({position:null,rotation:null}),c.attr({z2:10});var p=e.get(["label","position"]);if(p!=="outside"&&p!=="outer")o.removeTextGuideLine();else{var v=this.getTextGuideLine();v||(v=new yr,this.setTextGuideLine(v)),Qv(this,Zv(i),{stroke:f,opacity:gn(u.get(["lineStyle","opacity"]),s,1)})}},t})(Vr),odt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.ignoreLabelLineUpdate=!0,e}return t.prototype.render=function(e,n,a,o){var i=e.getData(),u=this._data,l=this.group,f;if(!u&&i.count()>0){for(var s=i.getItemLayout(0),c=1;isNaN(s&&s.startAngle)&&c<i.count();++c)s=i.getItemLayout(c);s&&(f=s.startAngle)}if(this._emptyCircleSector&&l.remove(this._emptyCircleSector),i.count()===0&&e.get("showEmptyCircle")){var p=new Vr({shape:XI(e,a)});p.useStyle(e.getModel("emptyCircleStyle").getItemStyle()),this._emptyCircleSector=p,l.add(p)}i.diff(u).add(function(v){var d=new adt(i,v,f);i.setItemGraphicEl(v,d),l.add(d)}).update(function(v,d){var m=u.getItemGraphicEl(d);m.updateData(i,v,f),m.off("click"),l.add(m),i.setItemGraphicEl(v,m)}).remove(function(v){var d=u.getItemGraphicEl(v);ml(d,e,v)}).execute(),eF(e),e.get("animationTypeUpdate")!=="expansion"&&(this._data=i)},t.prototype.dispose=function(){},t.prototype.containPoint=function(e,n){var a=n.getData(),o=a.getItemLayout(0);if(o){var i=e[0]-o.cx,u=e[1]-o.cy,l=Math.sqrt(i*i+u*u);return l<=o.r&&l>=o.r0}},t.type="pie",t})(me),Dq=odt;function Ao(r,t,e){t=O(t)&&{coordDimensions:t}||N({encodeDefine:r.getEncode()},t);var n=r.getSource(),a=Oi(n,t).dimensions,o=new wr(a,r);return o.initData(n,e),o}var idt=(function(){function r(t,e){this._getDataWithEncodedVisual=t,this._getRawData=e}return r.prototype.getAllNames=function(){var t=this._getRawData();return t.mapArray(t.getName)},r.prototype.containName=function(t){var e=this._getRawData();return e.indexOfName(t)>=0},r.prototype.indexOfName=function(t){var e=this._getDataWithEncodedVisual();return e.indexOfName(t)},r.prototype.getItemVisual=function(t,e){var n=this._getDataWithEncodedVisual();return n.getItemVisual(t,e)},r})(),Lu=idt;var udt=St(),ldt=(function(r){A(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return t.prototype.init=function(e){r.prototype.init.apply(this,arguments),this.legendVisualProvider=new Lu(Q(this.getData,this),Q(this.getRawData,this)),this._defaultLabelLine(e)},t.prototype.mergeOption=function(){r.prototype.mergeOption.apply(this,arguments)},t.prototype.getInitialData=function(){return Ao(this,{coordDimensions:["value"],encodeDefaulter:gt(kv,this)})},t.prototype.getDataParams=function(e){var n=this.getData(),a=udt(n),o=a.seats;if(!o){var i=[];n.each(n.mapDimension("value"),function(l){i.push(l)}),o=a.seats=PW(i,n.hostModel.get("percentPrecision"))}var u=r.prototype.getDataParams.call(this,e);return u.percent=o[e]||0,u.$vars.push("percent"),u},t.prototype._defaultLabelLine=function(e){Co(e,"labelLine",["show"]);var n=e.labelLine,a=e.emphasis.labelLine;n.show=n.show&&e.label.show,a.show=a.show&&e.emphasis.label.show},t.type="series.pie",t.defaultOption={z:2,legendHoverLink:!0,colorBy:"data",center:["50%","50%"],radius:[0,"75%"],clockwise:!0,startAngle:90,endAngle:"auto",padAngle:0,minAngle:0,minShowLabelAngle:0,selectedOffset:10,percentPrecision:2,stillShowZeroSum:!0,left:0,top:0,right:0,bottom:0,width:null,height:null,label:{rotate:0,show:!0,overflow:"truncate",position:"outer",alignTo:"none",edgeDistance:"25%",bleedMargin:10,distanceToLabelLine:5},labelLine:{show:!0,length:15,length2:15,smooth:!1,minTurnAngle:90,maxSurfaceAngle:90,lineStyle:{width:1,type:"solid"}},itemStyle:{borderWidth:1,borderJoin:"round"},showEmptyCircle:!0,emptyCircleStyle:{color:"lightgray",opacity:1},labelLayout:{hideOverlap:!0},emphasis:{scale:!0,scaleSize:5},avoidLabelOverlap:!0,animationType:"expansion",animationDuration:1e3,animationTypeUpdate:"transition",animationEasingUpdate:"cubicInOut",animationDurationUpdate:500,animationEasing:"cubicInOut"},t})(xe),bq=ldt;function rF(r){return{seriesType:r,reset:function(t,e){var n=t.getData();n.filterSelf(function(a){var o=n.mapDimension("value"),i=n.get(o,a);return!(Nt(i)&&!isNaN(i)&&i<0)})}}}function nF(r){r.registerChartView(Dq),r.registerSeriesModel(bq),vC("pie",r.registerAction),r.registerLayout(gt(KI,"pie")),r.registerProcessor(Gi("pie")),r.registerProcessor(rF("pie"))}var fdt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.hasSymbolVisual=!0,e}return t.prototype.getInitialData=function(e,n){return Pn(null,this,{useEncodeDefaulter:!0})},t.prototype.getProgressive=function(){var e=this.option.progressive;return e??(this.option.large?5e3:this.get("progressive"))},t.prototype.getProgressiveThreshold=function(){var e=this.option.progressiveThreshold;return e??(this.option.large?1e4:this.get("progressiveThreshold"))},t.prototype.brushSelector=function(e,n,a){return a.point(n.getItemLayout(e))},t.prototype.getZLevelKey=function(){return this.getData().count()>this.getProgressiveThreshold()?this.id:""},t.type="series.scatter",t.dependencies=["grid","polar","geo","singleAxis","calendar"],t.defaultOption={coordinateSystem:"cartesian2d",z:2,legendHoverLink:!0,symbolSize:10,large:!1,largeThreshold:2e3,itemStyle:{opacity:.8},emphasis:{scale:!0},clip:!0,select:{itemStyle:{borderColor:"#212121"}},universalTransition:{divideShape:"clone"}},t})(xe),Cq=fdt;var Tq=4,sdt=(function(){function r(){}return r})(),cdt=(function(r){A(t,r);function t(e){var n=r.call(this,e)||this;return n._off=0,n.hoverDataIdx=-1,n}return t.prototype.getDefaultShape=function(){return new sdt},t.prototype.reset=function(){this.notClear=!1,this._off=0},t.prototype.buildPath=function(e,n){var a=n.points,o=n.size,i=this.symbolProxy,u=i.shape,l=e.getContext?e.getContext():e,f=l&&o[0]<Tq,s=this.softClipShape,c;if(f){this._ctx=l;return}for(this._ctx=null,c=this._off;c<a.length;){var p=a[c++],v=a[c++];isNaN(p)||isNaN(v)||s&&!s.contain(p,v)||(u.x=p-o[0]/2,u.y=v-o[1]/2,u.width=o[0],u.height=o[1],i.buildPath(e,u,!0))}this.incremental&&(this._off=c,this.notClear=!0)},t.prototype.afterBrush=function(){var e=this.shape,n=e.points,a=e.size,o=this._ctx,i=this.softClipShape,u;if(o){for(u=this._off;u<n.length;){var l=n[u++],f=n[u++];isNaN(l)||isNaN(f)||i&&!i.contain(l,f)||o.fillRect(l-a[0]/2,f-a[1]/2,a[0],a[1])}this.incremental&&(this._off=u,this.notClear=!0)}},t.prototype.findDataIndex=function(e,n){for(var a=this.shape,o=a.points,i=a.size,u=Math.max(i[0],4),l=Math.max(i[1],4),f=o.length/2-1;f>=0;f--){var s=f*2,c=o[s]-u/2,p=o[s+1]-l/2;if(e>=c&&n>=p&&e<=c+u&&n<=p+l)return f}return-1},t.prototype.contain=function(e,n){var a=this.transformCoordToLocal(e,n),o=this.getBoundingRect();if(e=a[0],n=a[1],o.contain(e,n)){var i=this.hoverDataIdx=this.findDataIndex(e,n);return i>=0}return this.hoverDataIdx=-1,!1},t.prototype.getBoundingRect=function(){var e=this._rect;if(!e){for(var n=this.shape,a=n.points,o=n.size,i=o[0],u=o[1],l=1/0,f=1/0,s=-1/0,c=-1/0,p=0;p<a.length;){var v=a[p++],d=a[p++];l=Math.min(v,l),s=Math.max(v,s),f=Math.min(d,f),c=Math.max(d,c)}e=this._rect=new yt(l-i/2,f-u/2,s-l+i,c-f+u)}return e},t})(bt),pdt=(function(){function r(){this.group=new at}return r.prototype.updateData=function(t,e){this._clear();var n=this._create();n.setShape({points:t.getLayout("points")}),this._setCommon(n,t,e)},r.prototype.updateLayout=function(t){var e=t.getLayout("points");this.group.eachChild(function(n){if(n.startIndex!=null){var a=(n.endIndex-n.startIndex)*2,o=n.startIndex*4*2;e=new Float32Array(e.buffer,o,a)}n.setShape("points",e),n.reset()})},r.prototype.incrementalPrepareUpdate=function(t){this._clear()},r.prototype.incrementalUpdate=function(t,e,n){var a=this._newAdded[0],o=e.getLayout("points"),i=a&&a.shape.points;if(i&&i.length<2e4){var u=i.length,l=new Float32Array(u+o.length);l.set(i),l.set(o,u),a.endIndex=t.end,a.setShape({points:l})}else{this._newAdded=[];var f=this._create();f.startIndex=t.start,f.endIndex=t.end,f.incremental=!0,f.setShape({points:o}),this._setCommon(f,e,n)}},r.prototype.eachRendered=function(t){this._newAdded[0]&&t(this._newAdded[0])},r.prototype._create=function(){var t=new cdt({cursor:"default"});return t.ignoreCoarsePointer=!0,this.group.add(t),this._newAdded.push(t),t},r.prototype._setCommon=function(t,e,n){var a=e.hostModel;n=n||{};var o=e.getVisual("symbolSize");t.setShape("size",o instanceof Array?o:[o,o]),t.softClipShape=n.clipShape||null,t.symbolProxy=We(e.getVisual("symbol"),0,0,0,0),t.setColor=t.symbolProxy.setColor;var i=t.shape.size[0]<Tq;t.useStyle(a.getModel("itemStyle").getItemStyle(i?["color","shadowBlur","shadowColor"]:["color"]));var u=e.getVisual("style"),l=u&&u.fill;l&&t.setColor(l);var f=vt(t);f.seriesIndex=a.seriesIndex,t.on("mousemove",function(s){f.dataIndex=null;var c=t.hoverDataIdx;c>=0&&(f.dataIndex=c+(t.startIndex||0))})},r.prototype.remove=function(){this._clear()},r.prototype._clear=function(){this._newAdded=[],this.group.removeAll()},r})(),xq=pdt;var vdt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.render=function(e,n,a){var o=e.getData(),i=this._updateSymbolDraw(o,e);i.updateData(o,{clipShape:this._getClipShape(e)}),this._finished=!0},t.prototype.incrementalPrepareRender=function(e,n,a){var o=e.getData(),i=this._updateSymbolDraw(o,e);i.incrementalPrepareUpdate(o),this._finished=!1},t.prototype.incrementalRender=function(e,n,a){this._symbolDraw.incrementalUpdate(e,n.getData(),{clipShape:this._getClipShape(n)}),this._finished=e.end===n.getData().count()},t.prototype.updateTransform=function(e,n,a){var o=e.getData();if(this.group.dirty(),!this._finished||o.count()>1e4)return{update:!0};var i=Wi("").reset(e,n,a);i.progress&&i.progress({start:0,end:o.count(),count:o.count()},o),this._symbolDraw.updateLayout(o)},t.prototype.eachRendered=function(e){this._symbolDraw&&this._symbolDraw.eachRendered(e)},t.prototype._getClipShape=function(e){if(e.get("clip",!0)){var n=e.coordinateSystem;return n&&n.getArea&&n.getArea(.1)}},t.prototype._updateSymbolDraw=function(e,n){var a=this._symbolDraw,o=n.pipelineContext,i=o.large;return(!a||i!==this._isLargeDraw)&&(a&&a.remove(),a=this._symbolDraw=i?new xq:new Au,this._isLargeDraw=i,this.group.removeAll()),this.group.add(a.group),a},t.prototype.remove=function(e,n){this._symbolDraw&&this._symbolDraw.remove(!0),this._symbolDraw=null},t.prototype.dispose=function(){},t.type="scatter",t})(me),wq=vdt;var ddt=(function(r){A(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return t.type="grid",t.dependencies=["xAxis","yAxis"],t.layoutMode="box",t.defaultOption={show:!1,z:0,left:"10%",top:60,right:"10%",bottom:70,containLabel:!1,backgroundColor:"rgba(0,0,0,0)",borderWidth:1,borderColor:"#ccc"},t})(Gt),Sq=ddt;var vT=(function(r){A(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return t.prototype.getCoordSysModel=function(){return this.getReferringComponents("grid",je).models[0]},t.type="cartesian2dAxis",t})(Gt);Ve(vT,wu);var Eq={show:!0,z:0,inverse:!1,name:"",nameLocation:"end",nameRotate:null,nameTruncate:{maxWidth:null,ellipsis:"...",placeholder:"."},nameTextStyle:{},nameGap:15,silent:!1,triggerEvent:!1,tooltip:{show:!1},axisPointer:{},axisLine:{show:!0,onZero:!0,onZeroAxisIndex:null,lineStyle:{color:"#6E7079",width:1,type:"solid"},symbol:["none","none"],symbolSize:[10,15]},axisTick:{show:!0,inside:!1,length:5,lineStyle:{width:1}},axisLabel:{show:!0,inside:!1,rotate:0,showMinLabel:null,showMaxLabel:null,margin:8,fontSize:12},splitLine:{show:!0,lineStyle:{color:["#E0E6F1"],width:1,type:"solid"}},splitArea:{show:!1,areaStyle:{color:["rgba(250,250,250,0.2)","rgba(210,219,238,0.2)"]}}},mdt=Et({boundaryGap:!0,deduplication:null,splitLine:{show:!1},axisTick:{alignWithLabel:!1,interval:"auto"},axisLabel:{interval:"auto"}},Eq),aF=Et({boundaryGap:[0,0],axisLine:{show:"auto"},axisTick:{show:"auto"},splitNumber:5,minorTick:{show:!1,splitNumber:5,length:3,lineStyle:{}},minorSplitLine:{show:!1,lineStyle:{color:"#F4F7FD",width:1}}},Eq),hdt=Et({splitNumber:6,axisLabel:{showMinLabel:!1,showMaxLabel:!1,rich:{primary:{fontWeight:"bold"}}},splitLine:{show:!1}},aF),_dt=et({logBase:10},aF),dT={category:mdt,value:aF,time:hdt,log:_dt};var Mq={value:1,category:1,time:1,log:1};function Bi(r,t,e,n){T(Mq,function(a,o){var i=Et(Et({},dT[o],!0),n,!0),u=(function(l){A(f,l);function f(){var s=l!==null&&l.apply(this,arguments)||this;return s.type=t+"Axis."+o,s}return f.prototype.mergeDefaultAndTheme=function(s,c){var p=Ff(this),v=p?Ko(s):{},d=c.getTheme();Et(s,d.get(o+"Axis")),Et(s,this.getDefaultOption()),s.type=Aq(s),p&&no(s,v,p)},f.prototype.optionUpdated=function(){var s=this.option;s.type==="category"&&(this.__ordinalMeta=$_.createByAxisModel(this))},f.prototype.getCategories=function(s){var c=this.option;if(c.type==="category")return s?c.data:this.__ordinalMeta.categories},f.prototype.getOrdinalMeta=function(){return this.__ordinalMeta},f.type=t+"Axis."+o,f.defaultOption=i,f})(e);r.registerComponentModel(u)}),r.registerSubTypeDefaulter(t+"Axis",Aq)}function Aq(r){return r.type||(r.data?"category":"value")}var gdt=(function(){function r(t){this.type="cartesian",this._dimList=[],this._axes={},this.name=t||""}return r.prototype.getAxis=function(t){return this._axes[t]},r.prototype.getAxes=function(){return U(this._dimList,function(t){return this._axes[t]},this)},r.prototype.getAxesByScale=function(t){return t=t.toLowerCase(),de(this.getAxes(),function(e){return e.scale.type===t})},r.prototype.addAxis=function(t){var e=t.dim;this._axes[e]=t,this._dimList.push(e)},r})(),Iq=gdt;var mT=["x","y"];function Fq(r){return r.type==="interval"||r.type==="time"}var ydt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type="cartesian2d",e.dimensions=mT,e}return t.prototype.calcAffineTransform=function(){this._transform=this._invTransform=null;var e=this.getAxis("x").scale,n=this.getAxis("y").scale;if(!(!Fq(e)||!Fq(n))){var a=e.getExtent(),o=n.getExtent(),i=this.dataToPoint([a[0],o[0]]),u=this.dataToPoint([a[1],o[1]]),l=a[1]-a[0],f=o[1]-o[0];if(!(!l||!f)){var s=(u[0]-i[0])/l,c=(u[1]-i[1])/f,p=i[0]-a[0]*s,v=i[1]-o[0]*c,d=this._transform=[s,0,0,c,p,v];this._invTransform=Go([],d)}}},t.prototype.getBaseAxis=function(){return this.getAxesByScale("ordinal")[0]||this.getAxesByScale("time")[0]||this.getAxis("x")},t.prototype.containPoint=function(e){var n=this.getAxis("x"),a=this.getAxis("y");return n.contain(n.toLocalCoord(e[0]))&&a.contain(a.toLocalCoord(e[1]))},t.prototype.containData=function(e){return this.getAxis("x").containData(e[0])&&this.getAxis("y").containData(e[1])},t.prototype.containZone=function(e,n){var a=this.dataToPoint(e),o=this.dataToPoint(n),i=this.getArea(),u=new yt(a[0],a[1],o[0]-a[0],o[1]-a[1]);return i.intersect(u)},t.prototype.dataToPoint=function(e,n,a){a=a||[];var o=e[0],i=e[1];if(this._transform&&o!=null&&isFinite(o)&&i!=null&&isFinite(i))return Hr(a,e,this._transform);var u=this.getAxis("x"),l=this.getAxis("y");return a[0]=u.toGlobalCoord(u.dataToCoord(o,n)),a[1]=l.toGlobalCoord(l.dataToCoord(i,n)),a},t.prototype.clampData=function(e,n){var a=this.getAxis("x").scale,o=this.getAxis("y").scale,i=a.getExtent(),u=o.getExtent(),l=a.parse(e[0]),f=o.parse(e[1]);return n=n||[],n[0]=Math.min(Math.max(Math.min(i[0],i[1]),l),Math.max(i[0],i[1])),n[1]=Math.min(Math.max(Math.min(u[0],u[1]),f),Math.max(u[0],u[1])),n},t.prototype.pointToData=function(e,n){var a=[];if(this._invTransform)return Hr(a,e,this._invTransform);var o=this.getAxis("x"),i=this.getAxis("y");return a[0]=o.coordToData(o.toLocalCoord(e[0]),n),a[1]=i.coordToData(i.toLocalCoord(e[1]),n),a},t.prototype.getOtherAxis=function(e){return this.getAxis(e.dim==="x"?"y":"x")},t.prototype.getArea=function(e){e=e||0;var n=this.getAxis("x").getGlobalExtent(),a=this.getAxis("y").getGlobalExtent(),o=Math.min(n[0],n[1])-e,i=Math.min(a[0],a[1])-e,u=Math.max(n[0],n[1])-o+e,l=Math.max(a[0],a[1])-i+e;return new yt(o,i,u,l)},t})(Iq),Lq=ydt;var Ddt=(function(r){A(t,r);function t(e,n,a,o,i){var u=r.call(this,e,n,a)||this;return u.index=0,u.type=o||"value",u.position=i||"bottom",u}return t.prototype.isHorizontal=function(){var e=this.position;return e==="top"||e==="bottom"},t.prototype.getGlobalExtent=function(e){var n=this.getExtent();return n[0]=this.toGlobalCoord(n[0]),n[1]=this.toGlobalCoord(n[1]),e&&n[0]>n[1]&&n.reverse(),n},t.prototype.pointToData=function(e,n){return this.coordToData(this.toLocalCoord(e[this.dim==="x"?0:1]),n)},t.prototype.setCategorySortInfo=function(e){if(this.type!=="category")return!1;this.model.option.categorySortInfo=e,this.scale.setSortInfo(e)},t})(Nn),Rq=Ddt;function ig(r,t,e){e=e||{};var n=r.coordinateSystem,a=t.axis,o={},i=a.getAxesOnZeroOf()[0],u=a.position,l=i?"onZero":u,f=a.dim,s=n.getRect(),c=[s.x,s.x+s.width,s.y,s.y+s.height],p={left:0,right:1,top:0,bottom:1,onZero:2},v=t.get("offset")||0,d=f==="x"?[c[2]-v,c[3]+v]:[c[0]-v,c[1]+v];if(i){var m=i.toGlobalCoord(i.dataToCoord(0));d[p.onZero]=Math.max(Math.min(m,d[1]),d[0])}o.position=[f==="y"?d[p[l]]:c[0],f==="x"?d[p[l]]:c[3]],o.rotation=Math.PI/2*(f==="x"?0:1);var h={top:-1,bottom:1,left:-1,right:1};o.labelDirection=o.tickDirection=o.nameDirection=h[u],o.labelOffset=i?d[p[u]]-d[p.onZero]:0,t.get(["axisTick","inside"])&&(o.tickDirection=-o.tickDirection),ir(e.labelInside,t.get(["axisLabel","inside"]))&&(o.labelDirection=-o.labelDirection);var _=t.get(["axisLabel","rotate"]);return o.labelRotate=l==="top"?-_:_,o.z2=1,o}function oF(r){return r.get("coordinateSystem")==="cartesian2d"}function iF(r){var t={xAxisModel:null,yAxisModel:null};return T(t,function(e,n){var a=n.replace(/Model$/,""),o=r.getReferringComponents(a,je).models[0];t[n]=o}),t}var uF=Math.log;function hT(r,t,e){var n=lo.prototype,a=n.getTicks.call(e),o=n.getTicks.call(e,!0),i=a.length-1,u=n.getInterval.call(e),l=lI(r,t),f=l.extent,s=l.fixMin,c=l.fixMax;if(r.type==="log"){var p=uF(r.base);f=[uF(f[0])/p,uF(f[1])/p]}r.setExtent(f[0],f[1]),r.calcNiceExtent({splitNumber:i,fixMin:s,fixMax:c});var v=n.getExtent.call(r);s&&(f[0]=v[0]),c&&(f[1]=v[1]);var d=n.getInterval.call(r),m=f[0],h=f[1];if(s&&c)d=(h-m)/i;else if(s)for(h=f[0]+d*i;h<f[1]&&isFinite(h)&&isFinite(f[1]);)d=IC(d),h=f[0]+d*i;else if(c)for(m=f[1]-d*i;m>f[0]&&isFinite(m)&&isFinite(f[0]);)d=IC(d),m=f[1]-d*i;else{var _=r.getTicks().length-1;_>i&&(d=IC(d));var g=d*i;h=Math.ceil(f[1]/d)*d,m=Qe(h-g),m<0&&f[0]>=0?(m=0,h=Qe(g)):h>0&&f[1]<=0&&(h=0,m=-Qe(g))}var y=(a[0].value-o[0].value)/u,D=(a[i].value-o[i].value)/u;if(n.setExtent.call(r,m+d*y,h+d*D),n.setInterval.call(r,d),(y||D)&&n.setNiceExtent.call(r,m+d,h-d),0)var b}var bdt=(function(){function r(t,e,n){this.type="grid",this._coordsMap={},this._coordsList=[],this._axesMap={},this._axesList=[],this.axisPointerEnabled=!0,this.dimensions=mT,this._initCartesian(t,e,n),this.model=t}return r.prototype.getRect=function(){return this._rect},r.prototype.update=function(t,e){var n=this._axesMap;this._updateScale(t,this.model);function a(i){var u,l=Ft(i),f=l.length;if(f){for(var s=[],c=f-1;c>=0;c--){var p=+l[c],v=i[p],d=v.model,m=v.scale;q_(m)&&d.get("alignTicks")&&d.get("interval")==null?s.push(v):(xu(m,d),q_(m)&&(u=v))}s.length&&(u||(u=s.pop(),xu(u.scale,u.model)),T(s,function(h){hT(h.scale,h.model,u.scale)}))}}a(n.x),a(n.y);var o={};T(n.x,function(i){Nq(n,"y",i,o)}),T(n.y,function(i){Nq(n,"x",i,o)}),this.resize(this.model,e)},r.prototype.resize=function(t,e,n){var a=t.getBoxLayoutParams(),o=!n&&t.get("containLabel"),i=ze(a,{width:e.getWidth(),height:e.getHeight()});this._rect=i;var u=this._axesList;l(),o&&(T(u,function(f){if(!f.model.get(["axisLabel","inside"])){var s=J$(f);if(s){var c=f.isHorizontal()?"height":"width",p=f.model.get(["axisLabel","margin"]);i[c]-=s[c]+p,f.position==="top"?i.y+=s.height+p:f.position==="left"&&(i.x+=s.width+p)}}}),l()),T(this._coordsList,function(f){f.calcAffineTransform()});function l(){T(u,function(f){var s=f.isHorizontal(),c=s?[0,i.width]:[0,i.height],p=f.inverse?1:0;f.setExtent(c[p],c[1-p]),Cdt(f,s?i.x:i.y)})}},r.prototype.getAxis=function(t,e){var n=this._axesMap[t];if(n!=null)return n[e||0]},r.prototype.getAxes=function(){return this._axesList.slice()},r.prototype.getCartesian=function(t,e){if(t!=null&&e!=null){var n="x"+t+"y"+e;return this._coordsMap[n]}nt(t)&&(e=t.yAxisIndex,t=t.xAxisIndex);for(var a=0,o=this._coordsList;a<o.length;a++)if(o[a].getAxis("x").index===t||o[a].getAxis("y").index===e)return o[a]},r.prototype.getCartesians=function(){return this._coordsList.slice()},r.prototype.convertToPixel=function(t,e,n){var a=this._findConvertTarget(e);return a.cartesian?a.cartesian.dataToPoint(n):a.axis?a.axis.toGlobalCoord(a.axis.dataToCoord(n)):null},r.prototype.convertFromPixel=function(t,e,n){var a=this._findConvertTarget(e);return a.cartesian?a.cartesian.pointToData(n):a.axis?a.axis.coordToData(a.axis.toLocalCoord(n)):null},r.prototype._findConvertTarget=function(t){var e=t.seriesModel,n=t.xAxisModel||e&&e.getReferringComponents("xAxis",je).models[0],a=t.yAxisModel||e&&e.getReferringComponents("yAxis",je).models[0],o=t.gridModel,i=this._coordsList,u,l;if(e)u=e.coordinateSystem,wt(i,u)<0&&(u=null);else if(n&&a)u=this.getCartesian(n.componentIndex,a.componentIndex);else if(n)l=this.getAxis("x",n.componentIndex);else if(a)l=this.getAxis("y",a.componentIndex);else if(o){var f=o.coordinateSystem;f===this&&(u=this._coordsList[0])}return{cartesian:u,axis:l}},r.prototype.containPoint=function(t){var e=this._coordsList[0];if(e)return e.containPoint(t)},r.prototype._initCartesian=function(t,e,n){var a=this,o=this,i={left:!1,right:!1,top:!1,bottom:!1},u={x:{},y:{}},l={x:0,y:0};if(e.eachComponent("xAxis",f("x"),this),e.eachComponent("yAxis",f("y"),this),!l.x||!l.y){this._axesMap={},this._axesList=[];return}this._axesMap=u,T(u.x,function(s,c){T(u.y,function(p,v){var d="x"+c+"y"+v,m=new Lq(d);m.master=a,m.model=t,a._coordsMap[d]=m,a._coordsList.push(m),m.addAxis(s),m.addAxis(p)})});function f(s){return function(c,p){if(lF(c,t)){var v=c.get("position");s==="x"?v!=="top"&&v!=="bottom"&&(v=i.bottom?"top":"bottom"):v!=="left"&&v!=="right"&&(v=i.left?"right":"left"),i[v]=!0;var d=new Rq(s,Gf(c),[0,0],c.get("type"),v),m=d.type==="category";d.onBand=m&&c.get("boundaryGap"),d.inverse=c.get("inverse"),c.axis=d,d.model=c,d.grid=o,d.index=p,o._axesList.push(d),u[s][p]=d,l[s]++}}}},r.prototype._updateScale=function(t,e){T(this._axesList,function(a){if(a.scale.setExtent(1/0,-1/0),a.type==="category"){var o=a.model.get("categorySortInfo");a.scale.setSortInfo(o)}}),t.eachSeries(function(a){if(oF(a)){var o=iF(a),i=o.xAxisModel,u=o.yAxisModel;if(!lF(i,e)||!lF(u,e))return;var l=this.getCartesian(i.componentIndex,u.componentIndex),f=a.getData(),s=l.getAxis("x"),c=l.getAxis("y");n(f,s),n(f,c)}},this);function n(a,o){T(Yv(a,o.dim),function(i){o.scale.unionExtentFromData(a,i)})}},r.prototype.getTooltipAxes=function(t){var e=[],n=[];return T(this.getCartesians(),function(a){var o=t!=null&&t!=="auto"?a.getAxis(t):a.getBaseAxis(),i=a.getOtherAxis(o);wt(e,o)<0&&e.push(o),wt(n,i)<0&&n.push(i)}),{baseAxes:e,otherAxes:n}},r.create=function(t,e){var n=[];return t.eachComponent("grid",function(a,o){var i=new r(a,t,e);i.name="grid_"+o,i.resize(a,e,!0),a.coordinateSystem=i,n.push(i)}),t.eachSeries(function(a){if(oF(a)){var o=iF(a),i=o.xAxisModel,u=o.yAxisModel,l=i.getCoordSysModel(),f=l.coordinateSystem;a.coordinateSystem=f.getCartesian(i.componentIndex,u.componentIndex)}}),n},r.dimensions=mT,r})();function lF(r,t){return r.getCoordSysModel()===t}function Nq(r,t,e,n){e.getAxesOnZeroOf=function(){return o?[o]:[]};var a=r[t],o,i=e.model,u=i.get(["axisLine","onZero"]),l=i.get(["axisLine","onZeroAxisIndex"]);if(!u)return;if(l!=null)Oq(a[l])&&(o=a[l]);else for(var f in a)if(a.hasOwnProperty(f)&&Oq(a[f])&&!n[s(a[f])]){o=a[f];break}o&&(n[s(o)]=!0);function s(c){return c.dim+"_"+c.index}}function Oq(r){return r&&r.type!=="category"&&r.type!=="time"&&q$(r)}function Cdt(r,t){var e=r.getExtent(),n=e[0]+e[1];r.toGlobalCoord=r.dim==="x"?function(a){return a+t}:function(a){return n-a+t},r.toLocalCoord=r.dim==="x"?function(a){return a-t}:function(a){return n-a+t}}var Uq=bdt;var Jf=Math.PI,zc=(function(){function r(t,e){this.group=new at,this.opt=e,this.axisModel=t,et(e,{labelOffset:0,nameDirection:1,tickDirection:1,labelDirection:1,silent:!0,handleAutoShown:function(){return!0}});var n=new at({x:e.position[0],y:e.position[1],rotation:e.rotation});n.updateTransform(),this._transformGroup=n}return r.prototype.hasBuilder=function(t){return!!Hq[t]},r.prototype.add=function(t){Hq[t](this.opt,this.axisModel,this.group,this._transformGroup)},r.prototype.getGroup=function(){return this.group},r.innerTextLayout=function(t,e,n){var a=GE(e-t),o,i;return oc(a)?(i=n>0?"top":"bottom",o="center"):oc(a-Jf)?(i=n>0?"bottom":"top",o="center"):(i="middle",a>0&&a<Jf?o=n>0?"right":"left":o=n>0?"left":"right"),{rotation:a,textAlign:o,textVerticalAlign:i}},r.makeAxisEventDataBase=function(t){var e={componentType:t.mainType,componentIndex:t.componentIndex};return e[t.mainType+"Index"]=t.componentIndex,e},r.isLabelSilent=function(t){var e=t.get("tooltip");return t.get("silent")||!(t.get("triggerEvent")||e&&e.show)},r})(),Hq={axisLine:function(r,t,e,n){var a=t.get(["axisLine","show"]);if(a==="auto"&&r.handleAutoShown&&(a=r.handleAutoShown("axisLine")),!!a){var o=t.axis.getExtent(),i=n.transform,u=[o[0],0],l=[o[1],0],f=u[0]>l[0];i&&(Hr(u,u,i),Hr(l,l,i));var s=N({lineCap:"round"},t.getModel(["axisLine","lineStyle"]).getLineStyle()),c=new mr({shape:{x1:u[0],y1:u[1],x2:l[0],y2:l[1]},style:s,strokeContainThreshold:r.strokeContainThreshold||5,silent:!0,z2:1});hl(c.shape,c.style.lineWidth),c.anid="line",e.add(c);var p=t.get(["axisLine","symbol"]);if(p!=null){var v=t.get(["axisLine","symbolSize"]);V(p)&&(p=[p,p]),(V(v)||Nt(v))&&(v=[v,v]);var d=Eo(t.get(["axisLine","symbolOffset"])||0,v),m=v[0],h=v[1];T([{rotate:r.rotation+Math.PI/2,offset:d[0],r:0},{rotate:r.rotation-Math.PI/2,offset:d[1],r:Math.sqrt((u[0]-l[0])*(u[0]-l[0])+(u[1]-l[1])*(u[1]-l[1]))}],function(_,g){if(p[g]!=="none"&&p[g]!=null){var y=We(p[g],-m/2,-h/2,m,h,s.stroke,!0),D=_.r+_.offset,b=f?l:u;y.attr({rotation:_.rotate,x:b[0]+D*Math.cos(r.rotation),y:b[1]-D*Math.sin(r.rotation),silent:!0,z2:11}),e.add(y)}})}}},axisTickLabel:function(r,t,e,n){var a=wdt(e,n,t,r),o=Edt(e,n,t,r);if(xdt(t,o,a),Sdt(e,n,t,r.tickDirection),t.get(["axisLabel","hideOverlap"])){var i=qC(U(o,function(u){return{label:u,priority:u.z2,defaultAttr:{ignore:u.ignore}}}));jC(i)}},axisName:function(r,t,e,n){var a=ir(r.axisName,t.get("name"));if(a){var o=t.get("nameLocation"),i=r.nameDirection,u=t.getModel("nameTextStyle"),l=t.get("nameGap")||0,f=t.axis.getExtent(),s=f[0]>f[1]?-1:1,c=[o==="start"?f[0]-s*l:o==="end"?f[1]+s*l:(f[0]+f[1])/2,zq(o)?r.labelOffset+i*l:0],p,v=t.get("nameRotate");v!=null&&(v=v*Jf/180);var d;zq(o)?p=zc.innerTextLayout(r.rotation,v??r.rotation,i):(p=Tdt(r.rotation,o,v||0,f),d=r.axisNameAvailableWidth,d!=null&&(d=Math.abs(d/Math.sin(p.rotation)),!isFinite(d)&&(d=null)));var m=u.getFont(),h=t.get("nameTruncate",!0)||{},_=h.ellipsis,g=ir(r.nameTruncateMaxWidth,h.maxWidth,d),y=new Wt({x:c[0],y:c[1],rotation:p.rotation,silent:zc.isLabelSilent(t),style:Re(u,{text:a,font:m,overflow:"truncate",width:g,ellipsis:_,fill:u.getTextColor()||t.get(["axisLine","lineStyle","color"]),align:u.get("align")||p.textAlign,verticalAlign:u.get("verticalAlign")||p.textVerticalAlign}),z2:1});if(Mi({el:y,componentModel:t,itemName:a}),y.__fullText=a,y.anid="name",t.get("triggerEvent")){var D=zc.makeAxisEventDataBase(t);D.targetType="axisName",D.name=a,vt(y).eventData=D}n.add(y),y.updateTransform(),e.add(y),y.decomposeTransform()}}};function Tdt(r,t,e,n){var a=GE(e-r),o,i,u=n[0]>n[1],l=t==="start"&&!u||t!=="start"&&u;return oc(a-Jf/2)?(i=l?"bottom":"top",o="center"):oc(a-Jf*1.5)?(i=l?"top":"bottom",o="center"):(i="middle",a<Jf*1.5&&a>Jf/2?o=l?"left":"right":o=l?"right":"left"),{rotation:a,textAlign:o,textVerticalAlign:i}}function xdt(r,t,e){if(!WC(r.axis)){var n=r.get(["axisLabel","showMinLabel"]),a=r.get(["axisLabel","showMaxLabel"]);t=t||[],e=e||[];var o=t[0],i=t[1],u=t[t.length-1],l=t[t.length-2],f=e[0],s=e[1],c=e[e.length-1],p=e[e.length-2];n===!1?(ii(o),ii(f)):kq(o,i)&&(n?(ii(i),ii(s)):(ii(o),ii(f))),a===!1?(ii(u),ii(c)):kq(l,u)&&(a?(ii(l),ii(p)):(ii(u),ii(c)))}}function ii(r){r&&(r.ignore=!0)}function kq(r,t){var e=r&&r.getBoundingRect().clone(),n=t&&t.getBoundingRect().clone();if(!(!e||!n)){var a=vf([]);return ja(a,a,-r.rotation),e.applyTransform(Ja([],a,r.getLocalTransform())),n.applyTransform(Ja([],a,t.getLocalTransform())),e.intersect(n)}}function zq(r){return r==="middle"||r==="center"}function Wq(r,t,e,n,a){for(var o=[],i=[],u=[],l=0;l<r.length;l++){var f=r[l].coord;i[0]=f,i[1]=0,u[0]=f,u[1]=e,t&&(Hr(i,i,t),Hr(u,u,t));var s=new mr({shape:{x1:i[0],y1:i[1],x2:u[0],y2:u[1]},style:n,z2:2,autoBatch:!0,silent:!0});hl(s.shape,s.style.lineWidth),s.anid=a+"_"+r[l].tickValue,o.push(s)}return o}function wdt(r,t,e,n){var a=e.axis,o=e.getModel("axisTick"),i=o.get("show");if(i==="auto"&&n.handleAutoShown&&(i=n.handleAutoShown("axisTick")),!(!i||a.scale.isBlank())){for(var u=o.getModel("lineStyle"),l=n.tickDirection*o.get("length"),f=a.getTicksCoords(),s=Wq(f,t.transform,l,et(u.getLineStyle(),{stroke:e.get(["axisLine","lineStyle","color"])}),"ticks"),c=0;c<s.length;c++)r.add(s[c]);return s}}function Sdt(r,t,e,n){var a=e.axis,o=e.getModel("minorTick");if(!(!o.get("show")||a.scale.isBlank())){var i=a.getMinorTicksCoords();if(i.length)for(var u=o.getModel("lineStyle"),l=n*o.get("length"),f=et(u.getLineStyle(),et(e.getModel("axisTick").getLineStyle(),{stroke:e.get(["axisLine","lineStyle","color"])})),s=0;s<i.length;s++)for(var c=Wq(i[s],t.transform,l,f,"minorticks_"+s),p=0;p<c.length;p++)r.add(c[p])}}function Edt(r,t,e,n){var a=e.axis,o=ir(n.axisLabelShow,e.get(["axisLabel","show"]));if(!(!o||a.scale.isBlank())){var i=e.getModel("axisLabel"),u=i.get("margin"),l=a.getViewLabels(),f=(ir(n.labelRotate,i.get("rotate"))||0)*Jf/180,s=zc.innerTextLayout(n.rotation,f,n.labelDirection),c=e.getCategories&&e.getCategories(!0),p=[],v=zc.isLabelSilent(e),d=e.get("triggerEvent");return T(l,function(m,h){var _=a.scale.type==="ordinal"?a.scale.getRawOrdinalNumber(m.tickValue):m.tickValue,g=m.formattedLabel,y=m.rawLabel,D=i;if(c&&c[_]){var b=c[_];nt(b)&&b.textStyle&&(D=new Te(b.textStyle,i,e.ecModel))}var C=D.getTextColor()||e.get(["axisLine","lineStyle","color"]),x=a.dataToCoord(_),w=D.getShallow("align",!0)||s.textAlign,S=Tt(D.getShallow("alignMinLabel",!0),w),E=Tt(D.getShallow("alignMaxLabel",!0),w),M=D.getShallow("verticalAlign",!0)||D.getShallow("baseline",!0)||s.textVerticalAlign,I=Tt(D.getShallow("verticalAlignMinLabel",!0),M),F=Tt(D.getShallow("verticalAlignMaxLabel",!0),M),L=new Wt({x,y:n.labelOffset+n.labelDirection*u,rotation:s.rotation,silent:v,z2:10+(m.level||0),style:Re(D,{text:g,align:h===0?S:h===l.length-1?E:w,verticalAlign:h===0?I:h===l.length-1?F:M,fill:X(C)?C(a.type==="category"?y:a.type==="value"?_+"":_,h):C})});if(L.anid="label_"+_,d){var R=zc.makeAxisEventDataBase(e);R.targetType="axisLabel",R.value=y,R.tickIndex=h,a.type==="category"&&(R.dataIndex=_),vt(L).eventData=R}t.add(L),L.updateTransform(),p.push(L),r.add(L),L.decomposeTransform()}),p}}var Xn=zc;function Gq(r,t){var e={axesInfo:{},seriesInvolved:!1,coordSysAxesInfo:{},coordSysMap:{}};return Mdt(e,r,t),e.seriesInvolved&&Idt(e,r),e}function Mdt(r,t,e){var n=t.getComponent("tooltip"),a=t.getComponent("axisPointer"),o=a.get("link",!0)||[],i=[];T(e.getCoordinateSystems(),function(u){if(!u.axisPointerEnabled)return;var l=ed(u.model),f=r.coordSysAxesInfo[l]={};r.coordSysMap[l]=u;var s=u.model,c=s.getModel("tooltip",n);if(T(u.getAxes(),gt(m,!1,null)),u.getTooltipAxes&&n&&c.get("show")){var p=c.get("trigger")==="axis",v=c.get(["axisPointer","type"])==="cross",d=u.getTooltipAxes(c.get(["axisPointer","axis"]));(p||v)&&T(d.baseAxes,gt(m,v?"cross":!0,p)),v&&T(d.otherAxes,gt(m,"cross",!1))}function m(h,_,g){var y=g.model.getModel("axisPointer",a),D=y.get("show");if(!(!D||D==="auto"&&!h&&!sF(y))){_==null&&(_=y.get("triggerTooltip")),y=h?Adt(g,c,a,t,h,_):y;var b=y.get("snap"),C=y.get("triggerEmphasis"),x=ed(g.model),w=_||b||g.type==="category",S=r.axesInfo[x]={key:x,axis:g,coordSys:u,axisPointerModel:y,triggerTooltip:_,triggerEmphasis:C,involveSeries:w,snap:b,useHandle:sF(y),seriesModels:[],linkGroup:null};f[x]=S,r.seriesInvolved=r.seriesInvolved||w;var E=Fdt(o,g);if(E!=null){var M=i[E]||(i[E]={axesInfo:{}});M.axesInfo[x]=S,M.mapper=o[E].mapper,S.linkGroup=M}}}})}function Adt(r,t,e,n,a,o){var i=t.getModel("axisPointer"),u=["type","snap","lineStyle","shadowStyle","label","animation","animationDurationUpdate","animationEasingUpdate","z"],l={};T(u,function(p){l[p]=lt(i.get(p))}),l.snap=r.type!=="category"&&!!o,i.get("type")==="cross"&&(l.type="line");var f=l.label||(l.label={});if(f.show==null&&(f.show=!1),a==="cross"){var s=i.get(["label","show"]);if(f.show=s??!0,!o){var c=l.lineStyle=i.get("crossStyle");c&&et(f,c.textStyle)}}return r.model.getModel("axisPointer",new Te(l,e,n))}function Idt(r,t){t.eachSeries(function(e){var n=e.coordinateSystem,a=e.get(["tooltip","trigger"],!0),o=e.get(["tooltip","show"],!0);!n||a==="none"||a===!1||a==="item"||o===!1||e.get(["axisPointer","show"],!0)===!1||T(r.coordSysAxesInfo[ed(n.model)],function(i){var u=i.axis;n.getAxis(u.dim)===u&&(i.seriesModels.push(e),i.seriesDataCount==null&&(i.seriesDataCount=0),i.seriesDataCount+=e.getData().count())})})}function Fdt(r,t){for(var e=t.model,n=t.dim,a=0;a<r.length;a++){var o=r[a]||{};if(fF(o[n+"AxisId"],e.id)||fF(o[n+"AxisIndex"],e.componentIndex)||fF(o[n+"AxisName"],e.name))return a}}function fF(r,t){return r==="all"||O(r)&&wt(r,t)>=0||r===t}function Bq(r){var t=_T(r);if(t){var e=t.axisPointerModel,n=t.axis.scale,a=e.option,o=e.get("status"),i=e.get("value");i!=null&&(i=n.parse(i));var u=sF(e);o==null&&(a.status=u?"show":"hide");var l=n.getExtent().slice();l[0]>l[1]&&l.reverse(),(i==null||i>l[1])&&(i=l[1]),i<l[0]&&(i=l[0]),a.value=i,u&&(a.status=t.axis.scale.isBlank()?"hide":"show")}}function _T(r){var t=(r.ecModel.getComponent("axisPointer")||{}).coordSysAxesInfo;return t&&t.axesInfo[ed(r)]}function Vq(r){var t=_T(r);return t&&t.axisPointerModel}function sF(r){return!!r.get(["handle","show"])}function ed(r){return r.type+"||"+r.id}var $q={},Ldt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.render=function(e,n,a,o){this.axisPointerClass&&Bq(e),r.prototype.render.apply(this,arguments),this._doUpdateAxisPointerClass(e,a,!0)},t.prototype.updateAxisPointer=function(e,n,a,o){this._doUpdateAxisPointerClass(e,a,!1)},t.prototype.remove=function(e,n){var a=this._axisPointer;a&&a.remove(n)},t.prototype.dispose=function(e,n){this._disposeAxisPointer(n),r.prototype.dispose.apply(this,arguments)},t.prototype._doUpdateAxisPointerClass=function(e,n,a){var o=t.getAxisPointerClass(this.axisPointerClass);if(o){var i=Vq(e);i?(this._axisPointer||(this._axisPointer=new o)).render(e,i,n,a):this._disposeAxisPointer(n)}},t.prototype._disposeAxisPointer=function(e){this._axisPointer&&this._axisPointer.dispose(e),this._axisPointer=null},t.registerAxisPointerClass=function(e,n){$q[e]=n},t.getAxisPointerClass=function(e){return e&&$q[e]},t.type="axis",t})(Ee),fo=Ldt;var pF=St();function gT(r,t,e,n){var a=e.axis;if(!a.scale.isBlank()){var o=e.getModel("splitArea"),i=o.getModel("areaStyle"),u=i.get("color"),l=n.coordinateSystem.getRect(),f=a.getTicksCoords({tickModel:o,clamp:!0});if(f.length){var s=u.length,c=pF(r).splitAreaColors,p=Z(),v=0;if(c)for(var d=0;d<f.length;d++){var m=c.get(f[d].tickValue);if(m!=null){v=(m+(s-1)*d)%s;break}}var h=a.toGlobalCoord(f[0].coord),_=i.getAreaStyle();u=O(u)?u:[u];for(var d=1;d<f.length;d++){var g=a.toGlobalCoord(f[d].coord),y=void 0,D=void 0,b=void 0,C=void 0;a.isHorizontal()?(y=h,D=l.y,b=g-y,C=l.height,h=y+b):(y=l.x,D=h,b=l.width,C=g-D,h=D+C);var x=f[d-1].tickValue;x!=null&&p.set(x,v),t.add(new Rt({anid:x!=null?"area_"+x:null,shape:{x:y,y:D,width:b,height:C},style:et({fill:u[v]},_),autoBatch:!0,silent:!0})),v=(v+1)%s}pF(r).splitAreaColors=p}}}function yT(r){pF(r).splitAreaColors=null}var Rdt=["axisLine","axisTickLabel","axisName"],Pdt=["splitArea","splitLine","minorSplitLine"],qq=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.axisPointerClass="CartesianAxisPointer",e}return t.prototype.render=function(e,n,a,o){this.group.removeAll();var i=this._axisGroup;if(this._axisGroup=new at,this.group.add(this._axisGroup),!!e.get("show")){var u=e.getCoordSysModel(),l=ig(u,e),f=new Xn(e,N({handleAutoShown:function(c){for(var p=u.coordinateSystem.getCartesians(),v=0;v<p.length;v++)if(q_(p[v].getOtherAxis(e.axis).scale))return!0;return!1}},l));T(Rdt,f.add,f),this._axisGroup.add(f.getGroup()),T(Pdt,function(c){e.get([c,"show"])&&Ndt[c](this,this._axisGroup,e,u)},this);var s=o&&o.type==="changeAxisOrder"&&o.isInitSort;s||_l(i,this._axisGroup,e),r.prototype.render.call(this,e,n,a,o)}},t.prototype.remove=function(){yT(this)},t.type="cartesianAxis",t})(fo),Ndt={splitLine:function(r,t,e,n){var a=e.axis;if(!a.scale.isBlank()){var o=e.getModel("splitLine"),i=o.getModel("lineStyle"),u=i.get("color");u=O(u)?u:[u];for(var l=n.coordinateSystem.getRect(),f=a.isHorizontal(),s=0,c=a.getTicksCoords({tickModel:o}),p=[],v=[],d=i.getLineStyle(),m=0;m<c.length;m++){var h=a.toGlobalCoord(c[m].coord);f?(p[0]=h,p[1]=l.y,v[0]=h,v[1]=l.y+l.height):(p[0]=l.x,p[1]=h,v[0]=l.x+l.width,v[1]=h);var _=s++%u.length,g=c[m].tickValue,y=new mr({anid:g!=null?"line_"+c[m].tickValue:null,autoBatch:!0,shape:{x1:p[0],y1:p[1],x2:v[0],y2:v[1]},style:et({stroke:u[_]},d),silent:!0});hl(y.shape,d.lineWidth),t.add(y)}}},minorSplitLine:function(r,t,e,n){var a=e.axis,o=e.getModel("minorSplitLine"),i=o.getModel("lineStyle"),u=n.coordinateSystem.getRect(),l=a.isHorizontal(),f=a.getMinorTicksCoords();if(f.length)for(var s=[],c=[],p=i.getLineStyle(),v=0;v<f.length;v++)for(var d=0;d<f[v].length;d++){var m=a.toGlobalCoord(f[v][d].coord);l?(s[0]=m,s[1]=u.y,c[0]=m,c[1]=u.y+u.height):(s[0]=u.x,s[1]=m,c[0]=u.x+u.width,c[1]=m);var h=new mr({anid:"minor_line_"+f[v][d].tickValue,autoBatch:!0,shape:{x1:s[0],y1:s[1],x2:c[0],y2:c[1]},style:p,silent:!0});hl(h.shape,p.lineWidth),t.add(h)}},splitArea:function(r,t,e,n){gT(r,t,e,n)}},vF=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.type="xAxis",t})(qq);var Jq=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=vF.type,e}return t.type="yAxis",t})(qq);var Odt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type="grid",e}return t.prototype.render=function(e,n){this.group.removeAll(),e.get("show")&&this.group.add(new Rt({shape:e.coordinateSystem.getRect(),style:et({fill:e.get("backgroundColor")},e.getItemStyle()),silent:!0,z2:-1}))},t.type="grid",t})(Ee),jq={offset:0};function DT(r){r.registerComponentView(Odt),r.registerComponentModel(Sq),r.registerCoordinateSystem("cartesian2d",Uq),Bi(r,"x",vT,jq),Bi(r,"y",vT,jq),r.registerComponentView(vF),r.registerComponentView(Jq),r.registerPreprocessor(function(t){t.xAxis&&t.yAxis&&!t.grid&&(t.grid={})})}function dF(r){Jt(DT),r.registerSeriesModel(Cq),r.registerChartView(wq),r.registerLayout(Wi("scatter"))}function mF(r){r.eachSeriesByType("radar",function(t){var e=t.getData(),n=[],a=t.coordinateSystem;if(a){var o=a.getIndicatorAxes();T(o,function(i,u){e.each(e.mapDimension(o[u].dim),function(l,f){n[f]=n[f]||[];var s=a.dataToPoint(l,u);n[f][u]=Yq(s)?s:Qq(a)})}),e.each(function(i){var u=yz(n[i],function(l){return Yq(l)})||Qq(a);n[i].push(u.slice()),e.setItemLayout(i,n[i])})}})}function Yq(r){return!isNaN(r[0])&&!isNaN(r[1])}function Qq(r){return[r.cx,r.cy]}function hF(r){var t=r.polar;if(t){O(t)||(t=[t]);var e=[];T(t,function(n,a){n.indicator?(n.type&&!n.shape&&(n.shape=n.type),r.radar=r.radar||[],O(r.radar)||(r.radar=[r.radar]),r.radar.push(n)):e.push(n)}),r.polar=e}T(r.series,function(n){n&&n.type==="radar"&&n.polarIndex&&(n.radarIndex=n.polarIndex)})}var Udt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.render=function(e,n,a){var o=e.coordinateSystem,i=this.group,u=e.getData(),l=this._data;function f(p,v){var d=p.getItemVisual(v,"symbol")||"circle";if(d!=="none"){var m=Pi(p.getItemVisual(v,"symbolSize")),h=We(d,-1,-1,2,2),_=p.getItemVisual(v,"symbolRotate")||0;return h.attr({style:{strokeNoScale:!0},z2:100,scaleX:m[0]/2,scaleY:m[1]/2,rotation:_*Math.PI/180||0}),h}}function s(p,v,d,m,h,_){d.removeAll();for(var g=0;g<v.length-1;g++){var y=f(m,h);y&&(y.__dimIdx=g,p[g]?(y.setPosition(p[g]),Ot[_?"initProps":"updateProps"](y,{x:v[g][0],y:v[g][1]},e,h)):y.setPosition(v[g]),d.add(y))}}function c(p){return U(p,function(v){return[o.cx,o.cy]})}u.diff(l).add(function(p){var v=u.getItemLayout(p);if(v){var d=new xr,m=new yr,h={shape:{points:v}};d.shape.points=c(v),m.shape.points=c(v),Ae(d,h,e,p),Ae(m,h,e,p);var _=new at,g=new at;_.add(m),_.add(d),_.add(g),s(m.shape.points,v,g,u,p,!0),u.setItemGraphicEl(p,_)}}).update(function(p,v){var d=l.getItemGraphicEl(v),m=d.childAt(0),h=d.childAt(1),_=d.childAt(2),g={shape:{points:u.getItemLayout(p)}};g.shape.points&&(s(m.shape.points,g.shape.points,_,u,p,!1),rn(h),rn(m),$t(m,g,e),$t(h,g,e),u.setItemGraphicEl(p,d))}).remove(function(p){i.remove(l.getItemGraphicEl(p))}).execute(),u.eachItemGraphicEl(function(p,v){var d=u.getItemModel(v),m=p.childAt(0),h=p.childAt(1),_=p.childAt(2),g=u.getItemVisual(v,"style"),y=g.fill;i.add(p),m.useStyle(et(d.getModel("lineStyle").getLineStyle(),{fill:"none",stroke:y})),fr(m,d,"lineStyle"),fr(h,d,"areaStyle");var D=d.getModel("areaStyle"),b=D.isEmpty()&&D.parentModel.isEmpty();h.ignore=b,T(["emphasis","select","blur"],function(w){var S=d.getModel([w,"areaStyle"]),E=S.isEmpty()&&S.parentModel.isEmpty();h.ensureState(w).ignore=E&&b}),h.useStyle(et(D.getAreaStyle(),{fill:y,opacity:.7,decal:g.decal}));var C=d.getModel("emphasis"),x=C.getModel("itemStyle").getItemStyle();_.eachChild(function(w){if(w instanceof er){var S=w.style;w.useStyle(N({image:S.image,x:S.x,y:S.y,width:S.width,height:S.height},g))}else w.useStyle(g),w.setColor(y),w.style.strokeNoScale=!0;var E=w.ensureState("emphasis");E.style=lt(x);var M=u.getStore().get(u.getDimensionIndex(w.__dimIdx),v);(M==null||isNaN(M))&&(M=""),Ze(w,$e(d),{labelFetcher:u.hostModel,labelDataIndex:v,labelDimIndex:w.__dimIdx,defaultText:M,inheritColor:y,defaultOpacity:g.opacity})}),Me(p,C.get("focus"),C.get("blurScope"),C.get("disabled"))}),this._data=u},t.prototype.remove=function(){this.group.removeAll(),this._data=null},t.type="radar",t})(me),Zq=Udt;var Hdt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.hasSymbolVisual=!0,e}return t.prototype.init=function(e){r.prototype.init.apply(this,arguments),this.legendVisualProvider=new Lu(Q(this.getData,this),Q(this.getRawData,this))},t.prototype.getInitialData=function(e,n){return Ao(this,{generateCoord:"indicator_",generateCoordCount:1/0})},t.prototype.formatTooltip=function(e,n,a){var o=this.getData(),i=this.coordinateSystem,u=i.getIndicatorAxes(),l=this.getData().getName(e),f=l===""?this.name:l,s=rC(this,e);return nr("section",{header:f,sortBlocks:!0,blocks:U(u,function(c){var p=o.get(o.mapDimension(c.dim),e);return nr("nameValue",{markerType:"subItem",markerColor:s,name:c.name,value:p,sortParam:p})})})},t.prototype.getTooltipPosition=function(e){if(e!=null){for(var n=this.getData(),a=this.coordinateSystem,o=n.getValues(U(a.dimensions,function(f){return n.mapDimension(f)}),e),i=0,u=o.length;i<u;i++)if(!isNaN(o[i])){var l=a.getIndicatorAxes();return a.coordToPoint(l[i].dataToCoord(o[i]),i)}}},t.type="series.radar",t.dependencies=["radar"],t.defaultOption={z:2,colorBy:"data",coordinateSystem:"radar",legendHoverLink:!0,radarIndex:0,lineStyle:{width:2,type:"solid",join:"round"},label:{position:"top"},symbolSize:8},t})(xe),Xq=Hdt;var ug=dT.value;function bT(r,t){return et({show:t},r)}var kdt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.optionUpdated=function(){var e=this.get("boundaryGap"),n=this.get("splitNumber"),a=this.get("scale"),o=this.get("axisLine"),i=this.get("axisTick"),u=this.get("axisLabel"),l=this.get("axisName"),f=this.get(["axisName","show"]),s=this.get(["axisName","formatter"]),c=this.get("axisNameGap"),p=this.get("triggerEvent"),v=U(this.get("indicator")||[],function(d){d.max!=null&&d.max>0&&!d.min?d.min=0:d.min!=null&&d.min<0&&!d.max&&(d.max=0);var m=l;d.color!=null&&(m=et({color:d.color},l));var h=Et(lt(d),{boundaryGap:e,splitNumber:n,scale:a,axisLine:o,axisTick:i,axisLabel:u,name:d.text,showName:f,nameLocation:"end",nameGap:c,nameTextStyle:m,triggerEvent:p},!1);if(V(s)){var _=h.name;h.name=s.replace("{value}",_??"")}else X(s)&&(h.name=s(h.name,h));var g=new Te(h,null,this.ecModel);return Ve(g,wu.prototype),g.mainType="radar",g.componentIndex=this.componentIndex,g},this);this._indicatorModels=v},t.prototype.getIndicatorModels=function(){return this._indicatorModels},t.type="radar",t.defaultOption={z:0,center:["50%","50%"],radius:"75%",startAngle:90,axisName:{show:!0},boundaryGap:[0,0],splitNumber:5,axisNameGap:15,scale:!1,shape:"polygon",axisLine:Et({lineStyle:{color:"#bbb"}},ug.axisLine),axisLabel:bT(ug.axisLabel,!1),axisTick:bT(ug.axisTick,!1),splitLine:bT(ug.splitLine,!0),splitArea:bT(ug.splitArea,!0),indicator:[]},t})(Gt),Kq=kdt;var zdt=["axisLine","axisTickLabel","axisName"],Wdt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.render=function(e,n,a){var o=this.group;o.removeAll(),this._buildAxes(e),this._buildSplitLineAndArea(e)},t.prototype._buildAxes=function(e){var n=e.coordinateSystem,a=n.getIndicatorAxes(),o=U(a,function(i){var u=i.model.get("showName")?i.name:"",l=new Xn(i.model,{axisName:u,position:[n.cx,n.cy],rotation:i.angle,labelDirection:-1,tickDirection:-1,nameDirection:1});return l});T(o,function(i){T(zdt,i.add,i),this.group.add(i.getGroup())},this)},t.prototype._buildSplitLineAndArea=function(e){var n=e.coordinateSystem,a=n.getIndicatorAxes();if(!a.length)return;var o=e.get("shape"),i=e.getModel("splitLine"),u=e.getModel("splitArea"),l=i.getModel("lineStyle"),f=u.getModel("areaStyle"),s=i.get("show"),c=u.get("show"),p=l.get("color"),v=f.get("color"),d=O(p)?p:[p],m=O(v)?v:[v],h=[],_=[];function g(R,P,k){var H=k%P.length;return R[H]=R[H]||[],H}if(o==="circle")for(var y=a[0].getTicksCoords(),D=n.cx,b=n.cy,C=0;C<y.length;C++){if(s){var x=g(h,d,C);h[x].push(new wa({shape:{cx:D,cy:b,r:y[C].coord}}))}if(c&&C<y.length-1){var x=g(_,m,C);_[x].push(new gc({shape:{cx:D,cy:b,r0:y[C].coord,r:y[C+1].coord}}))}}else for(var w,S=U(a,function(R,P){var k=R.getTicksCoords();return w=w==null?k.length-1:Math.min(k.length-1,w),U(k,function(H){return n.coordToPoint(H.coord,P)})}),E=[],C=0;C<=w;C++){for(var M=[],I=0;I<a.length;I++)M.push(S[I][C]);if(M[0]&&M.push(M[0].slice()),s){var x=g(h,d,C);h[x].push(new yr({shape:{points:M}}))}if(c&&E){var x=g(_,m,C-1);_[x].push(new xr({shape:{points:M.concat(E)}}))}E=M.slice().reverse()}var F=l.getLineStyle(),L=f.getAreaStyle();T(_,function(R,P){this.group.add(pa(R,{style:et({stroke:"none",fill:m[P%m.length]},L),silent:!0}))},this),T(h,function(R,P){this.group.add(pa(R,{style:et({fill:"none",stroke:d[P%d.length]},F),silent:!0}))},this)},t.type="radar",t})(Ee),t4=Wdt;var Gdt=(function(r){A(t,r);function t(e,n,a){var o=r.call(this,e,n,a)||this;return o.type="value",o.angle=0,o.name="",o}return t})(Nn),e4=Gdt;var Bdt=(function(){function r(t,e,n){this.dimensions=[],this._model=t,this._indicatorAxes=U(t.getIndicatorModels(),function(a,o){var i="indicator_"+o,u=new e4(i,new lo);return u.name=a.get("name"),u.model=a,a.axis=u,this.dimensions.push(i),u},this),this.resize(t,n)}return r.prototype.getIndicatorAxes=function(){return this._indicatorAxes},r.prototype.dataToPoint=function(t,e){var n=this._indicatorAxes[e];return this.coordToPoint(n.dataToCoord(t),e)},r.prototype.coordToPoint=function(t,e){var n=this._indicatorAxes[e],a=n.angle,o=this.cx+t*Math.cos(a),i=this.cy-t*Math.sin(a);return[o,i]},r.prototype.pointToData=function(t){var e=t[0]-this.cx,n=t[1]-this.cy,a=Math.sqrt(e*e+n*n);e/=a,n/=a;for(var o=Math.atan2(-n,e),i=1/0,u,l=-1,f=0;f<this._indicatorAxes.length;f++){var s=this._indicatorAxes[f],c=Math.abs(o-s.angle);c<i&&(u=s,l=f,i=c)}return[l,+(u&&u.coordToData(a))]},r.prototype.resize=function(t,e){var n=t.get("center"),a=e.getWidth(),o=e.getHeight(),i=Math.min(a,o)/2;this.cx=Y(n[0],a),this.cy=Y(n[1],o),this.startAngle=t.get("startAngle")*Math.PI/180;var u=t.get("radius");(V(u)||Nt(u))&&(u=[0,u]),this.r0=Y(u[0],i),this.r=Y(u[1],i),T(this._indicatorAxes,function(l,f){l.setExtent(this.r0,this.r);var s=this.startAngle+f*Math.PI*2/this._indicatorAxes.length;s=Math.atan2(Math.sin(s),Math.cos(s)),l.angle=s},this)},r.prototype.update=function(t,e){var n=this._indicatorAxes,a=this._model;T(n,function(u){u.scale.setExtent(1/0,-1/0)}),t.eachSeriesByType("radar",function(u,l){if(!(u.get("coordinateSystem")!=="radar"||t.getComponent("radar",u.get("radarIndex"))!==a)){var f=u.getData();T(n,function(s){s.scale.unionExtentFromData(f,f.mapDimension(s.dim))})}},this);var o=a.get("splitNumber"),i=new lo;i.setExtent(0,o),i.setInterval(1),T(n,function(u,l){hT(u.scale,u.model,i)})},r.prototype.convertToPixel=function(t,e,n){return console.warn("Not implemented."),null},r.prototype.convertFromPixel=function(t,e,n){return console.warn("Not implemented."),null},r.prototype.containPoint=function(t){return console.warn("Not implemented."),!1},r.create=function(t,e){var n=[];return t.eachComponent("radar",function(a){var o=new r(a,t,e);n.push(o),a.coordinateSystem=o}),t.eachSeriesByType("radar",function(a){a.get("coordinateSystem")==="radar"&&(a.coordinateSystem=n[a.get("radarIndex")||0])}),n},r.dimensions=[],r})(),r4=Bdt;function n4(r){r.registerCoordinateSystem("radar",r4),r.registerComponentModel(Kq),r.registerComponentView(t4),r.registerVisual({seriesType:"radar",reset:function(t){var e=t.getData();e.each(function(n){e.setItemVisual(n,"legendIcon","roundRect")}),e.setVisual("legendIcon","roundRect")}})}function _F(r){Jt(n4),r.registerChartView(Zq),r.registerSeriesModel(Xq),r.registerLayout(mF),r.registerProcessor(Gi("radar")),r.registerPreprocessor(hF)}var a4="\0_ec_interaction_mutex";function o4(r,t,e){var n=yF(r);n[t]=e}function i4(r,t,e){var n=yF(r),a=n[t];a===e&&(n[t]=null)}function gF(r,t){return!!yF(r)[t]}function yF(r){return r[a4]||(r[a4]={})}Ma({type:"takeGlobalCursor",event:"globalCursorTaken",update:"update"},Ye);var Vdt=(function(r){A(t,r);function t(e){var n=r.call(this)||this;n._zr=e;var a=Q(n._mousedownHandler,n),o=Q(n._mousemoveHandler,n),i=Q(n._mouseupHandler,n),u=Q(n._mousewheelHandler,n),l=Q(n._pinchHandler,n);return n.enable=function(f,s){this.disable(),this._opt=et(lt(s)||{},{zoomOnMouseWheel:!0,moveOnMouseMove:!0,moveOnMouseWheel:!1,preventDefaultMouseMove:!0}),f==null&&(f=!0),(f===!0||f==="move"||f==="pan")&&(e.on("mousedown",a),e.on("mousemove",o),e.on("mouseup",i)),(f===!0||f==="scale"||f==="zoom")&&(e.on("mousewheel",u),e.on("pinch",l))},n.disable=function(){e.off("mousedown",a),e.off("mousemove",o),e.off("mouseup",i),e.off("mousewheel",u),e.off("pinch",l)},n}return t.prototype.isDragging=function(){return this._dragging},t.prototype.isPinching=function(){return this._pinching},t.prototype.setPointerChecker=function(e){this.pointerChecker=e},t.prototype.dispose=function(){this.disable()},t.prototype._mousedownHandler=function(e){if(!lE(e)){for(var n=e.target;n;){if(n.draggable)return;n=n.__hostTarget||n.parent}var a=e.offsetX,o=e.offsetY;this.pointerChecker&&this.pointerChecker(e,a,o)&&(this._x=a,this._y=o,this._dragging=!0)}},t.prototype._mousemoveHandler=function(e){if(!(!this._dragging||!CT("moveOnMouseMove",e,this._opt)||e.gestureEvent==="pinch"||gF(this._zr,"globalPan"))){var n=e.offsetX,a=e.offsetY,o=this._x,i=this._y,u=n-o,l=a-i;this._x=n,this._y=a,this._opt.preventDefaultMouseMove&&qa(e.event),l4(this,"pan","moveOnMouseMove",e,{dx:u,dy:l,oldX:o,oldY:i,newX:n,newY:a,isAvailableBehavior:null})}},t.prototype._mouseupHandler=function(e){lE(e)||(this._dragging=!1)},t.prototype._mousewheelHandler=function(e){var n=CT("zoomOnMouseWheel",e,this._opt),a=CT("moveOnMouseWheel",e,this._opt),o=e.wheelDelta,i=Math.abs(o),u=e.offsetX,l=e.offsetY;if(!(o===0||!n&&!a)){if(n){var f=i>3?1.4:i>1?1.2:1.1,s=o>0?f:1/f;DF(this,"zoom","zoomOnMouseWheel",e,{scale:s,originX:u,originY:l,isAvailableBehavior:null})}if(a){var c=Math.abs(o),p=(o>0?1:-1)*(c>3?.4:c>1?.15:.05);DF(this,"scrollMove","moveOnMouseWheel",e,{scrollDelta:p,originX:u,originY:l,isAvailableBehavior:null})}}},t.prototype._pinchHandler=function(e){if(!gF(this._zr,"globalPan")){var n=e.pinchScale>1?1.1:1/1.1;DF(this,"zoom",null,e,{scale:n,originX:e.pinchX,originY:e.pinchY,isAvailableBehavior:null})}},t})(en);function DF(r,t,e,n,a){r.pointerChecker&&r.pointerChecker(n,a.originX,a.originY)&&(qa(n.event),l4(r,t,e,n,a))}function l4(r,t,e,n,a){a.isAvailableBehavior=Q(CT,null,e,n),r.trigger(t,a)}function CT(r,t,e){var n=e[r];return!r||n&&(!V(n)||t.event[n+"Key"])}var Ru=Vdt;function rd(r,t,e){var n=r.target;n.x+=t,n.y+=e,n.dirty()}function nd(r,t,e,n){var a=r.target,o=r.zoomLimit,i=r.zoom=r.zoom||1;if(i*=t,o){var u=o.min||0,l=o.max||1/0;i=Math.max(Math.min(l,i),u)}var f=i/r.zoom;r.zoom=i,a.x-=(e-a.x)*(f-1),a.y-=(n-a.y)*(f-1),a.scaleX*=f,a.scaleY*=f,a.dirty()}var $dt={axisPointer:1,tooltip:1,brush:1};function jf(r,t,e){var n=t.getComponentByElement(r.topTarget),a=n&&n.coordinateSystem;return n&&n!==e&&!$dt.hasOwnProperty(n.mainType)&&a&&a.model!==e}function TT(r){if(V(r)){var t=new DOMParser;r=t.parseFromString(r,"text/xml")}var e=r;for(e.nodeType===9&&(e=e.firstChild);e.nodeName.toLowerCase()!=="svg"||e.nodeType!==1;)e=e.nextSibling;return e}var CF,xT={fill:"fill",stroke:"stroke","stroke-width":"lineWidth",opacity:"opacity","fill-opacity":"fillOpacity","stroke-opacity":"strokeOpacity","stroke-dasharray":"lineDash","stroke-dashoffset":"lineDashOffset","stroke-linecap":"lineCap","stroke-linejoin":"lineJoin","stroke-miterlimit":"miterLimit","font-family":"fontFamily","font-size":"fontSize","font-style":"fontStyle","font-weight":"fontWeight","text-anchor":"textAlign",visibility:"visibility",display:"display"},f4=Ft(xT),wT={"alignment-baseline":"textBaseline","stop-color":"stopColor"},s4=Ft(wT),qdt=(function(){function r(){this._defs={},this._root=null}return r.prototype.parse=function(t,e){e=e||{};var n=TT(t);this._defsUsePending=[];var a=new at;this._root=a;var o=[],i=n.getAttribute("viewBox")||"",u=parseFloat(n.getAttribute("width")||e.width),l=parseFloat(n.getAttribute("height")||e.height);isNaN(u)&&(u=null),isNaN(l)&&(l=null),Io(n,a,null,!0,!1);for(var f=n.firstChild;f;)this._parseNode(f,a,o,null,!1,!1),f=f.nextSibling;Ydt(this._defs,this._defsUsePending),this._defsUsePending=[];var s,c;if(i){var p=ST(i);p.length>=4&&(s={x:parseFloat(p[0]||0),y:parseFloat(p[1]||0),width:parseFloat(p[2]),height:parseFloat(p[3])})}if(s&&u!=null&&l!=null&&(c=xF(s,{x:0,y:0,width:u,height:l}),!e.ignoreViewBox)){var v=a;a=new at,a.add(v),v.scaleX=v.scaleY=c.scale,v.x=c.x,v.y=c.y}return!e.ignoreRootClip&&u!=null&&l!=null&&a.setClipPath(new Rt({shape:{x:0,y:0,width:u,height:l}})),{root:a,width:u,height:l,viewBoxRect:s,viewBoxTransform:c,named:o}},r.prototype._parseNode=function(t,e,n,a,o,i){var u=t.nodeName.toLowerCase(),l,f=a;if(u==="defs"&&(o=!0),u==="text"&&(i=!0),u==="defs"||u==="switch")l=e;else{if(!o){var s=CF[u];if(s&&st(CF,u)){l=s.call(this,t,e);var c=t.getAttribute("name");if(c){var p={name:c,namedFrom:null,svgNodeTagLower:u,el:l};n.push(p),u==="g"&&(f=p)}else a&&n.push({name:a.name,namedFrom:a,svgNodeTagLower:u,el:l});e.add(l)}}var v=c4[u];if(v&&st(c4,u)){var d=v.call(this,t),m=t.getAttribute("id");m&&(this._defs[m]=d)}}if(l&&l.isGroup)for(var h=t.firstChild;h;)h.nodeType===1?this._parseNode(h,l,n,f,o,i):h.nodeType===3&&i&&this._parseText(h,l),h=h.nextSibling},r.prototype._parseText=function(t,e){var n=new sl({style:{text:t.textContent},silent:!0,x:this._textX||0,y:this._textY||0});ui(e,n),Io(t,n,this._defsUsePending,!1,!1),Jdt(n,e);var a=n.style,o=a.fontSize;o&&o<9&&(a.fontSize=9,n.scaleX*=o/9,n.scaleY*=o/9);var i=(a.fontSize||a.fontFamily)&&[a.fontStyle,a.fontWeight,(a.fontSize||12)+"px",a.fontFamily||"sans-serif"].join(" ");a.font=i;var u=n.getBoundingRect();return this._textX+=u.width,e.add(n),n},r.internalField=(function(){CF={g:function(t,e){var n=new at;return ui(e,n),Io(t,n,this._defsUsePending,!1,!1),n},rect:function(t,e){var n=new Rt;return ui(e,n),Io(t,n,this._defsUsePending,!1,!1),n.setShape({x:parseFloat(t.getAttribute("x")||"0"),y:parseFloat(t.getAttribute("y")||"0"),width:parseFloat(t.getAttribute("width")||"0"),height:parseFloat(t.getAttribute("height")||"0")}),n.silent=!0,n},circle:function(t,e){var n=new wa;return ui(e,n),Io(t,n,this._defsUsePending,!1,!1),n.setShape({cx:parseFloat(t.getAttribute("cx")||"0"),cy:parseFloat(t.getAttribute("cy")||"0"),r:parseFloat(t.getAttribute("r")||"0")}),n.silent=!0,n},line:function(t,e){var n=new mr;return ui(e,n),Io(t,n,this._defsUsePending,!1,!1),n.setShape({x1:parseFloat(t.getAttribute("x1")||"0"),y1:parseFloat(t.getAttribute("y1")||"0"),x2:parseFloat(t.getAttribute("x2")||"0"),y2:parseFloat(t.getAttribute("y2")||"0")}),n.silent=!0,n},ellipse:function(t,e){var n=new o_;return ui(e,n),Io(t,n,this._defsUsePending,!1,!1),n.setShape({cx:parseFloat(t.getAttribute("cx")||"0"),cy:parseFloat(t.getAttribute("cy")||"0"),rx:parseFloat(t.getAttribute("rx")||"0"),ry:parseFloat(t.getAttribute("ry")||"0")}),n.silent=!0,n},polygon:function(t,e){var n=t.getAttribute("points"),a;n&&(a=d4(n));var o=new xr({shape:{points:a||[]},silent:!0});return ui(e,o),Io(t,o,this._defsUsePending,!1,!1),o},polyline:function(t,e){var n=t.getAttribute("points"),a;n&&(a=d4(n));var o=new yr({shape:{points:a||[]},silent:!0});return ui(e,o),Io(t,o,this._defsUsePending,!1,!1),o},image:function(t,e){var n=new er;return ui(e,n),Io(t,n,this._defsUsePending,!1,!1),n.setStyle({image:t.getAttribute("xlink:href")||t.getAttribute("href"),x:+t.getAttribute("x"),y:+t.getAttribute("y"),width:+t.getAttribute("width"),height:+t.getAttribute("height")}),n.silent=!0,n},text:function(t,e){var n=t.getAttribute("x")||"0",a=t.getAttribute("y")||"0",o=t.getAttribute("dx")||"0",i=t.getAttribute("dy")||"0";this._textX=parseFloat(n)+parseFloat(o),this._textY=parseFloat(a)+parseFloat(i);var u=new at;return ui(e,u),Io(t,u,this._defsUsePending,!1,!0),u},tspan:function(t,e){var n=t.getAttribute("x"),a=t.getAttribute("y");n!=null&&(this._textX=parseFloat(n)),a!=null&&(this._textY=parseFloat(a));var o=t.getAttribute("dx")||"0",i=t.getAttribute("dy")||"0",u=new at;return ui(e,u),Io(t,u,this._defsUsePending,!1,!0),this._textX+=parseFloat(o),this._textY+=parseFloat(i),u},path:function(t,e){var n=t.getAttribute("d")||"",a=_b(n);return ui(e,a),Io(t,a,this._defsUsePending,!1,!1),a.silent=!0,a}}})(),r})(),c4={lineargradient:function(r){var t=parseInt(r.getAttribute("x1")||"0",10),e=parseInt(r.getAttribute("y1")||"0",10),n=parseInt(r.getAttribute("x2")||"10",10),a=parseInt(r.getAttribute("y2")||"0",10),o=new bu(t,e,n,a);return p4(r,o),v4(r,o),o},radialgradient:function(r){var t=parseInt(r.getAttribute("cx")||"0",10),e=parseInt(r.getAttribute("cy")||"0",10),n=parseInt(r.getAttribute("r")||"0",10),a=new bb(t,e,n);return p4(r,a),v4(r,a),a}};function p4(r,t){var e=r.getAttribute("gradientUnits");e==="userSpaceOnUse"&&(t.global=!0)}function v4(r,t){for(var e=r.firstChild;e;){if(e.nodeType===1&&e.nodeName.toLocaleLowerCase()==="stop"){var n=e.getAttribute("offset"),a=void 0;n&&n.indexOf("%")>0?a=parseInt(n,10)/100:n?a=parseFloat(n):a=0;var o={};_4(e,o,o);var i=o.stopColor||e.getAttribute("stop-color")||"#000000";t.colorStops.push({offset:a,color:i})}e=e.nextSibling}}function ui(r,t){r&&r.__inheritedStyle&&(t.__inheritedStyle||(t.__inheritedStyle={}),et(t.__inheritedStyle,r.__inheritedStyle))}function d4(r){for(var t=ST(r),e=[],n=0;n<t.length;n+=2){var a=parseFloat(t[n]),o=parseFloat(t[n+1]);e.push([a,o])}return e}function Io(r,t,e,n,a){var o=t,i=o.__inheritedStyle=o.__inheritedStyle||{},u={};r.nodeType===1&&(Xdt(r,t),_4(r,i,u),n||Kdt(r,i,u)),o.style=o.style||{},i.fill!=null&&(o.style.fill=m4(o,"fill",i.fill,e)),i.stroke!=null&&(o.style.stroke=m4(o,"stroke",i.stroke,e)),T(["lineWidth","opacity","fillOpacity","strokeOpacity","miterLimit","fontSize"],function(l){i[l]!=null&&(o.style[l]=parseFloat(i[l]))}),T(["lineDashOffset","lineCap","lineJoin","fontWeight","fontFamily","fontStyle","textAlign"],function(l){i[l]!=null&&(o.style[l]=i[l])}),a&&(o.__selfStyle=u),i.lineDash&&(o.style.lineDash=U(ST(i.lineDash),function(l){return parseFloat(l)})),(i.visibility==="hidden"||i.visibility==="collapse")&&(o.invisible=!0),i.display==="none"&&(o.ignore=!0)}function Jdt(r,t){var e=t.__selfStyle;if(e){var n=e.textBaseline,a=n;!n||n==="auto"||n==="baseline"?a="alphabetic":n==="before-edge"||n==="text-before-edge"?a="top":n==="after-edge"||n==="text-after-edge"?a="bottom":(n==="central"||n==="mathematical")&&(a="middle"),r.style.textBaseline=a}var o=t.__inheritedStyle;if(o){var i=o.textAlign,u=i;i&&(i==="middle"&&(u="center"),r.style.textAlign=u)}}var jdt=/^url\(\s*#(.*?)\)/;function m4(r,t,e,n){var a=e&&e.match(jdt);if(a){var o=yn(a[1]);n.push([r,t,o]);return}return e==="none"&&(e=null),e}function Ydt(r,t){for(var e=0;e<t.length;e++){var n=t[e];n[0].style[n[1]]=r[n[2]]}}var Qdt=/-?([0-9]*\.)?[0-9]+([eE]-?[0-9]+)?/g;function ST(r){return r.match(Qdt)||[]}var Zdt=/(translate|scale|rotate|skewX|skewY|matrix)\(([\-\s0-9\.eE,]*)\)/g,TF=Math.PI/180;function Xdt(r,t){var e=r.getAttribute("transform");if(e){e=e.replace(/,/g," ");var n=[],a=null;e.replace(Zdt,function(c,p,v){return n.push(p,v),""});for(var o=n.length-1;o>0;o-=2){var i=n[o],u=n[o-1],l=ST(i);switch(a=a||jr(),u){case"translate":$n(a,a,[parseFloat(l[0]),parseFloat(l[1]||"0")]);break;case"scale":lv(a,a,[parseFloat(l[0]),parseFloat(l[1]||l[0])]);break;case"rotate":ja(a,a,-parseFloat(l[0])*TF,[parseFloat(l[1]||"0"),parseFloat(l[2]||"0")]);break;case"skewX":var f=Math.tan(parseFloat(l[0])*TF);Ja(a,[1,0,f,1,0,0],a);break;case"skewY":var s=Math.tan(parseFloat(l[0])*TF);Ja(a,[1,s,0,1,0,0],a);break;case"matrix":a[0]=parseFloat(l[0]),a[1]=parseFloat(l[1]),a[2]=parseFloat(l[2]),a[3]=parseFloat(l[3]),a[4]=parseFloat(l[4]),a[5]=parseFloat(l[5]);break}}t.setLocalTransform(a)}}var h4=/([^\s:;]+)\s*:\s*([^:;]+)/g;function _4(r,t,e){var n=r.getAttribute("style");if(n){h4.lastIndex=0;for(var a;(a=h4.exec(n))!=null;){var o=a[1],i=st(xT,o)?xT[o]:null;i&&(t[i]=a[2]);var u=st(wT,o)?wT[o]:null;u&&(e[u]=a[2])}}}function Kdt(r,t,e){for(var n=0;n<f4.length;n++){var a=f4[n],o=r.getAttribute(a);o!=null&&(t[xT[a]]=o)}for(var n=0;n<s4.length;n++){var a=s4[n],o=r.getAttribute(a);o!=null&&(e[wT[a]]=o)}}function xF(r,t){var e=t.width/r.width,n=t.height/r.height,a=Math.min(e,n);return{scale:a,x:-(r.x+r.width/2)*a+(t.x+t.width/2),y:-(r.y+r.height/2)*a+(t.y+t.height/2)}}function g4(r,t){var e=new qdt;return e.parse(r,t)}var tmt=Z(["rect","circle","line","ellipse","polygon","polyline","path","text","tspan","g"]),y4=(function(){function r(t,e){this.type="geoSVG",this._usedGraphicMap=Z(),this._freedGraphics=[],this._mapName=t,this._parsedXML=TT(e)}return r.prototype.load=function(){var t=this._firstGraphic;if(!t){t=this._firstGraphic=this._buildGraphic(this._parsedXML),this._freedGraphics.push(t),this._boundingRect=this._firstGraphic.boundingRect.clone();var e=rmt(t.named),n=e.regions,a=e.regionsMap;this._regions=n,this._regionsMap=a}return{boundingRect:this._boundingRect,regions:this._regions,regionsMap:this._regionsMap}},r.prototype._buildGraphic=function(t){var e,n;try{e=t&&g4(t,{ignoreViewBox:!0,ignoreRootClip:!0})||{},n=e.root,ur(n!=null)}catch(h){throw new Error(`Invalid svg format+`+h.message)}var a=new at;a.add(n),a.isGeoSVGGraphicRoot=!0;var o=e.width,i=e.height,u=e.viewBoxRect,l=this._boundingRect;if(!l){var f=void 0,s=void 0,c=void 0,p=void 0;if(o!=null?(f=0,c=o):u&&(f=u.x,c=u.width),i!=null?(s=0,p=i):u&&(s=u.y,p=u.height),f==null||s==null){var v=n.getBoundingRect();f==null&&(f=v.x,c=v.width),s==null&&(s=v.y,p=v.height)}l=this._boundingRect=new yt(f,s,c,p)}if(u){var d=xF(u,l);n.scaleX=n.scaleY=d.scale,n.x=d.x,n.y=d.y}a.setClipPath(new Rt({shape:l.plain()}));var m=[];return T(e.named,function(h){tmt.get(h.svgNodeTagLower)!=null&&(m.push(h),emt(h.el))}),{root:a,boundingRect:l,named:m}},r.prototype.useGraphic=function(t){var e=this._usedGraphicMap,n=e.get(t);return n||(n=this._freedGraphics.pop()||this._buildGraphic(this._parsedXML),e.set(t,n),n)},r.prototype.freeGraphic=function(t){var e=this._usedGraphicMap,n=e.get(t);n&&(e.removeKey(t),this._freedGraphics.push(n))},r})();function emt(r){r.silent=!1,r.isGroup&&r.traverse(function(t){t.silent=!1})}function rmt(r){var t=[],e=Z();return T(r,function(n){if(n.namedFrom==null){var a=new K$(n.name,n.el);t.push(a),e.set(n.name,a)}}),{regions:t,regionsMap:e}}var wF=[126,25],D4="\u5357\u6D77\u8BF8\u5C9B",Gc=[[[0,3.5],[7,11.2],[15,11.9],[30,7],[42,.7],[52,.7],[56,7.7],[59,.7],[64,.7],[64,0],[5,0],[0,3.5]],[[13,16.1],[19,14.7],[16,21.7],[11,23.1],[13,16.1]],[[12,32.2],[14,38.5],[15,38.5],[13,32.2],[12,32.2]],[[16,47.6],[12,53.2],[13,53.2],[18,47.6],[16,47.6]],[[6,64.4],[8,70],[9,70],[8,64.4],[6,64.4]],[[23,82.6],[29,79.8],[30,79.8],[25,82.6],[23,82.6]],[[37,70.7],[43,62.3],[44,62.3],[39,70.7],[37,70.7]],[[48,51.1],[51,45.5],[53,45.5],[50,51.1],[48,51.1]],[[51,35],[51,28.7],[53,28.7],[53,35],[51,35]],[[52,22.4],[55,17.5],[56,17.5],[53,22.4],[52,22.4]],[[58,12.6],[62,7],[63,7],[60,12.6],[58,12.6]],[[0,3.5],[0,93.1],[64,93.1],[64,0],[63,0],[63,92.4],[1,92.4],[1,3.5],[0,3.5]]];for(Yf=0;Yf<Gc.length;Yf++)for(Wc=0;Wc<Gc[Yf].length;Wc++)Gc[Yf][Wc][0]/=10.5,Gc[Yf][Wc][1]/=-10.5/.75,Gc[Yf][Wc][0]+=wF[0],Gc[Yf][Wc][1]+=wF[1];var Wc,Yf;function SF(r,t){if(r==="china"){for(var e=0;e<t.length;e++)if(t[e].name===D4)return;t.push(new BC(D4,U(Gc,function(n){return{type:"polygon",exterior:n}}),wF))}}var nmt={\u5357\u6D77\u8BF8\u5C9B:[32,80],\u5E7F\u4E1C:[0,-10],\u9999\u6E2F:[10,5],\u6FB3\u95E8:[-10,10],\u5929\u6D25:[5,5]};function EF(r,t){if(r==="china"){var e=nmt[t.name];if(e){var n=t.getCenter();n[0]+=e[0]/10.5,n[1]+=-e[1]/(10.5/.75),t.setCenter(n)}}}var amt=[[[123.45165252685547,25.73527164402261],[123.49731445312499,25.73527164402261],[123.49731445312499,25.750734064600884],[123.45165252685547,25.750734064600884],[123.45165252685547,25.73527164402261]]];function MF(r,t){r==="china"&&t.name==="\u53F0\u6E7E"&&t.geometries.push({type:"polygon",exterior:amt[0]})}var omt="name",b4=(function(){function r(t,e,n){this.type="geoJSON",this._parsedMap=Z(),this._mapName=t,this._specialAreas=n,this._geoJSON=umt(e)}return r.prototype.load=function(t,e){e=e||omt;var n=this._parsedMap.get(e);if(!n){var a=this._parseToRegions(e);n=this._parsedMap.set(e,{regions:a,boundingRect:imt(a)})}var o=Z(),i=[];return T(n.regions,function(u){var l=u.name;t&&st(t,l)&&(u=u.cloneShallow(l=t[l])),i.push(u),o.set(l,u)}),{regions:i,boundingRect:n.boundingRect||new yt(0,0,0,0),regionsMap:o}},r.prototype._parseToRegions=function(t){var e=this._mapName,n=this._geoJSON,a;try{a=n?vI(n,t):[]}catch(o){throw new Error(`Invalid geoJson format+`+o.message)}return SF(e,a),T(a,function(o){var i=o.name;EF(e,o),MF(e,o);var u=this._specialAreas&&this._specialAreas[i];u&&o.transformTo(u.left,u.top,u.width,u.height)},this),a},r.prototype.getMapForUser=function(){return{geoJson:this._geoJSON,geoJSON:this._geoJSON,specialAreas:this._specialAreas}},r})();function imt(r){for(var t,e=0;e<r.length;e++){var n=r[e].getBoundingRect();t=t||n.clone(),t.union(n)}return t}function umt(r){return V(r)?typeof JSON<"u"&&JSON.parse?JSON.parse(r):new Function("return ("+r+");")():r}var lg=Z(),La={registerMap:function(r,t,e){if(t.svg){var n=new y4(r,t.svg);lg.set(r,n)}else{var a=t.geoJson||t.geoJSON;a&&!t.features?e=t.specialAreas:a=t;var n=new b4(r,a,e);lg.set(r,n)}},getGeoResource:function(r){return lg.get(r)},getMapForUser:function(r){var t=lg.get(r);return t&&t.type==="geoJSON"&&t.getMapForUser()},load:function(r,t,e){var n=lg.get(r);if(n)return n.load(t,e)}};var AF=["rect","circle","line","ellipse","polygon","polyline","path"],lmt=Z(AF),fmt=Z(AF.concat(["g"])),smt=Z(AF.concat(["g"])),A4=St();function ET(r){var t=r.getItemStyle(),e=r.get("areaColor");return e!=null&&(t.fill=e),t}function C4(r){var t=r.style;t&&(t.stroke=t.stroke||t.fill,t.fill=null)}var cmt=(function(){function r(t){var e=new at;this.uid=Xo("ec_map_draw"),this._controller=new Ru(t.getZr()),this._controllerHost={target:e},this.group=e,e.add(this._regionsGroup=new at),e.add(this._svgGroup=new at)}return r.prototype.draw=function(t,e,n,a,o){var i=t.mainType==="geo",u=t.getData&&t.getData();i&&e.eachComponent({mainType:"series",subType:"map"},function(_){!u&&_.getHostGeoModel()===t&&(u=_.getData())});var l=t.coordinateSystem,f=this._regionsGroup,s=this.group,c=l.getTransformInfo(),p=c.raw,v=c.roam,d=!f.childAt(0)||o;d?(s.x=v.x,s.y=v.y,s.scaleX=v.scaleX,s.scaleY=v.scaleY,s.dirty()):$t(s,v,t);var m=u&&u.getVisual("visualMeta")&&u.getVisual("visualMeta").length>0,h={api:n,geo:l,mapOrGeoModel:t,data:u,isVisualEncodedByVisualMap:m,isGeo:i,transformInfoRaw:p};l.resourceType==="geoJSON"?this._buildGeoJSON(h):l.resourceType==="geoSVG"&&this._buildSVG(h),this._updateController(t,e,n),this._updateMapSelectHandler(t,f,n,a)},r.prototype._buildGeoJSON=function(t){var e=this._regionsGroupByName=Z(),n=Z(),a=this._regionsGroup,o=t.transformInfoRaw,i=t.mapOrGeoModel,u=t.data,l=t.geo.projection,f=l&&l.stream;function s(v,d){return d&&(v=d(v)),v&&[v[0]*o.scaleX+o.x,v[1]*o.scaleY+o.y]}function c(v){for(var d=[],m=!f&&l&&l.project,h=0;h<v.length;++h){var _=s(v[h],m);_&&d.push(_)}return d}function p(v){return{shape:{points:c(v)}}}a.removeAll(),T(t.geo.regions,function(v){var d=v.name,m=e.get(d),h=n.get(d)||{},_=h.dataIdx,g=h.regionModel;m||(m=e.set(d,new at),a.add(m),_=u?u.indexOfName(d):null,g=t.isGeo?i.getRegionModel(d):u?u.getItemModel(_):null,n.set(d,{dataIdx:_,regionModel:g}));var y=[],D=[];T(v.geometries,function(x){if(x.type==="polygon"){var w=[x.exterior].concat(x.interiors||[]);f&&(w=M4(w,f)),T(w,function(E){y.push(new xr(p(E)))})}else{var S=x.points;f&&(S=M4(S,f,!0)),T(S,function(E){D.push(new yr(p(E)))})}});var b=s(v.getCenter(),l&&l.project);function C(x,w){if(x.length){var S=new Av({culling:!0,segmentIgnoreThreshold:1,shape:{paths:x}});m.add(S),T4(t,S,_,g),x4(t,S,d,g,i,_,b),w&&(C4(S),T(S.states,C4))}}C(y),C(D,!0)}),e.each(function(v,d){var m=n.get(d),h=m.dataIdx,_=m.regionModel;w4(t,v,d,_,i,h),S4(t,v,d,_,i),E4(t,v,d,_,i)},this)},r.prototype._buildSVG=function(t){var e=t.geo.map,n=t.transformInfoRaw;this._svgGroup.x=n.x,this._svgGroup.y=n.y,this._svgGroup.scaleX=n.scaleX,this._svgGroup.scaleY=n.scaleY,this._svgResourceChanged(e)&&(this._freeSVG(),this._useSVG(e));var a=this._svgDispatcherMap=Z(),o=!1;T(this._svgGraphicRecord.named,function(i){var u=i.name,l=t.mapOrGeoModel,f=t.data,s=i.svgNodeTagLower,c=i.el,p=f?f.indexOfName(u):null,v=l.getRegionModel(u);if(lmt.get(s)!=null&&c instanceof Br&&T4(t,c,p,v),c instanceof Br&&(c.culling=!0),c.z2EmphasisLift=0,!i.namedFrom&&(smt.get(s)!=null&&x4(t,c,u,v,l,p,null),w4(t,c,u,v,l,p),S4(t,c,u,v,l),fmt.get(s)!=null)){var d=E4(t,c,u,v,l);d==="self"&&(o=!0);var m=a.get(u)||a.set(u,[]);m.push(c)}},this),this._enableBlurEntireSVG(o,t)},r.prototype._enableBlurEntireSVG=function(t,e){if(t&&e.isGeo){var n=e.mapOrGeoModel.getModel(["blur","itemStyle"]).getItemStyle(),a=n.opacity;this._svgGraphicRecord.root.traverse(function(o){if(!o.isGroup){xi(o);var i=o.ensureState("blur").style||{};i.opacity==null&&a!=null&&(i.opacity=a),o.ensureState("emphasis")}})}},r.prototype.remove=function(){this._regionsGroup.removeAll(),this._regionsGroupByName=null,this._svgGroup.removeAll(),this._freeSVG(),this._controller.dispose(),this._controllerHost=null},r.prototype.findHighDownDispatchers=function(t,e){if(t==null)return[];var n=e.coordinateSystem;if(n.resourceType==="geoJSON"){var a=this._regionsGroupByName;if(a){var o=a.get(t);return o?[o]:[]}}else if(n.resourceType==="geoSVG")return this._svgDispatcherMap&&this._svgDispatcherMap.get(t)||[]},r.prototype._svgResourceChanged=function(t){return this._svgMapName!==t},r.prototype._useSVG=function(t){var e=La.getGeoResource(t);if(e&&e.type==="geoSVG"){var n=e.useGraphic(this.uid);this._svgGroup.add(n.root),this._svgGraphicRecord=n,this._svgMapName=t}},r.prototype._freeSVG=function(){var t=this._svgMapName;if(t!=null){var e=La.getGeoResource(t);e&&e.type==="geoSVG"&&e.freeGraphic(this.uid),this._svgGraphicRecord=null,this._svgDispatcherMap=null,this._svgGroup.removeAll(),this._svgMapName=null}},r.prototype._updateController=function(t,e,n){var a=t.coordinateSystem,o=this._controller,i=this._controllerHost;i.zoomLimit=t.get("scaleLimit"),i.zoom=a.getZoom(),o.enable(t.get("roam")||!1);var u=t.mainType;function l(){var f={type:"geoRoam",componentType:u};return f[u+"Id"]=t.id,f}o.off("pan").on("pan",function(f){this._mouseDownFlag=!1,rd(i,f.dx,f.dy),n.dispatchAction(N(l(),{dx:f.dx,dy:f.dy,animation:{duration:0}}))},this),o.off("zoom").on("zoom",function(f){this._mouseDownFlag=!1,nd(i,f.scale,f.originX,f.originY),n.dispatchAction(N(l(),{zoom:f.scale,originX:f.originX,originY:f.originY,animation:{duration:0}}))},this),o.setPointerChecker(function(f,s,c){return a.containPoint([s,c])&&!jf(f,n,t)})},r.prototype.resetForLabelLayout=function(){this.group.traverse(function(t){var e=t.getTextContent();e&&(e.ignore=A4(e).ignore)})},r.prototype._updateMapSelectHandler=function(t,e,n,a){var o=this;e.off("mousedown"),e.off("click"),t.get("selectedMode")&&(e.on("mousedown",function(){o._mouseDownFlag=!0}),e.on("click",function(i){o._mouseDownFlag&&(o._mouseDownFlag=!1)}))},r})();function T4(r,t,e,n){var a=n.getModel("itemStyle"),o=n.getModel(["emphasis","itemStyle"]),i=n.getModel(["blur","itemStyle"]),u=n.getModel(["select","itemStyle"]),l=ET(a),f=ET(o),s=ET(u),c=ET(i),p=r.data;if(p){var v=p.getItemVisual(e,"style"),d=p.getItemVisual(e,"decal");r.isVisualEncodedByVisualMap&&v.fill&&(l.fill=v.fill),d&&(l.decal=Ni(d,r.api))}t.setStyle(l),t.style.strokeNoScale=!0,t.ensureState("emphasis").style=f,t.ensureState("select").style=s,t.ensureState("blur").style=c,xi(t)}function x4(r,t,e,n,a,o,i){var u=r.data,l=r.isGeo,f=u&&isNaN(u.get(u.mapDimension("value"),o)),s=u&&u.getItemLayout(o);if(l||f||s&&s.showLabel){var c=l?e:o,p=void 0;(!u||o>=0)&&(p=a);var v=i?{normal:{align:"center",verticalAlign:"middle"}}:null;Ze(t,$e(n),{labelFetcher:p,labelDataIndex:c,defaultText:e},v);var d=t.getTextContent();if(d&&(A4(d).ignore=d.ignore,t.textConfig&&i)){var m=t.getBoundingRect().clone();t.textConfig.layoutRect=m,t.textConfig.position=[(i[0]-m.x)/m.width*100+"%",(i[1]-m.y)/m.height*100+"%"]}t.disableLabelAnimation=!0}else t.removeTextContent(),t.removeTextConfig(),t.disableLabelAnimation=null}function w4(r,t,e,n,a,o){r.data?r.data.setItemGraphicEl(o,t):vt(t).eventData={componentType:"geo",componentIndex:a.componentIndex,geoIndex:a.componentIndex,name:e,region:n&&n.option||{}}}function S4(r,t,e,n,a){r.data||Mi({el:t,componentModel:a,itemName:e,itemTooltipOption:n.get("tooltip")})}function E4(r,t,e,n,a){t.highDownSilentOnTouch=!!a.get("selectedMode");var o=n.getModel("emphasis"),i=o.get("focus");return Me(t,i,o.get("blurScope"),o.get("disabled")),r.isGeo&&tB(t,a,e),i}function M4(r,t,e){var n=[],a;function o(){a=[]}function i(){a.length&&(n.push(a),a=[])}var u=t({polygonStart:o,polygonEnd:i,lineStart:o,lineEnd:i,point:function(l,f){isFinite(l)&&isFinite(f)&&a.push([l,f])},sphere:function(){}});return!e&&u.polygonStart(),T(r,function(l){u.lineStart();for(var f=0;f<l.length;f++)u.point(l[f][0],l[f][1]);u.lineEnd()}),!e&&u.polygonEnd(),n}var MT=cmt;var pmt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.render=function(e,n,a,o){if(!(o&&o.type==="mapToggleSelect"&&o.from===this.uid)){var i=this.group;if(i.removeAll(),!e.getHostGeoModel()){if(this._mapDraw&&o&&o.type==="geoRoam"&&this._mapDraw.resetForLabelLayout(),o&&o.type==="geoRoam"&&o.componentType==="series"&&o.seriesId===e.id){var u=this._mapDraw;u&&i.add(u.group)}else if(e.needsDrawMap){var u=this._mapDraw||new MT(a);i.add(u.group),u.draw(e,n,a,this,o),this._mapDraw=u}else this._mapDraw&&this._mapDraw.remove(),this._mapDraw=null;e.get("showLegendSymbol")&&n.getComponent("legend")&&this._renderSymbols(e,n,a)}}},t.prototype.remove=function(){this._mapDraw&&this._mapDraw.remove(),this._mapDraw=null,this.group.removeAll()},t.prototype.dispose=function(){this._mapDraw&&this._mapDraw.remove(),this._mapDraw=null},t.prototype._renderSymbols=function(e,n,a){var o=e.originalData,i=this.group;o.each(o.mapDimension("value"),function(u,l){if(!isNaN(u)){var f=o.getItemLayout(l);if(!(!f||!f.point)){var s=f.point,c=f.offset,p=new wa({style:{fill:e.getData().getVisual("style").fill},shape:{cx:s[0]+c*9,cy:s[1],r:3},silent:!0,z2:8+(c?0:cl+1)});if(!c){var v=e.mainSeries.getData(),d=o.getName(l),m=v.indexOfName(d),h=o.getItemModel(l),_=h.getModel("label"),g=v.getItemGraphicEl(m);Ze(p,$e(h),{labelFetcher:{getFormattedLabel:function(y,D){return e.getFormattedLabel(m,D)}},defaultText:d}),p.disableLabelAnimation=!0,_.get("position")||p.setTextConfig({position:"bottom"}),g.onHoverStateChange=function(y){hc(p,y)}}i.add(p)}}})},t.type="map",t})(me),I4=pmt;var vmt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.needsDrawMap=!1,e.seriesGroup=[],e.getTooltipPosition=function(n){if(n!=null){var a=this.getData().getName(n),o=this.coordinateSystem,i=o.getRegion(a);return i&&o.dataToPoint(i.getCenter())}},e}return t.prototype.getInitialData=function(e){for(var n=Ao(this,{coordDimensions:["value"],encodeDefaulter:gt(kv,this)}),a=Z(),o=[],i=0,u=n.count();i<u;i++){var l=n.getName(i);a.set(l,!0)}var f=La.load(this.getMapType(),this.option.nameMap,this.option.nameProperty);return T(f.regions,function(s){var c=s.name;a.get(c)||o.push(c)}),n.appendValues([],o),n},t.prototype.getHostGeoModel=function(){var e=this.option.geoIndex;return e!=null?this.ecModel.getComponent("geo",e):null},t.prototype.getMapType=function(){return(this.getHostGeoModel()||this).option.map},t.prototype.getRawValue=function(e){var n=this.getData();return n.get(n.mapDimension("value"),e)},t.prototype.getRegionModel=function(e){var n=this.getData();return n.getItemModel(n.indexOfName(e))},t.prototype.formatTooltip=function(e,n,a){for(var o=this.getData(),i=this.getRawValue(e),u=o.getName(e),l=this.seriesGroup,f=[],s=0;s<l.length;s++){var c=l[s].originalData.indexOfName(u),p=o.mapDimension("value");isNaN(l[s].originalData.get(p,c))||f.push(l[s].name)}return nr("section",{header:f.join(", "),noHeader:!f.length,blocks:[nr("nameValue",{name:u,value:i})]})},t.prototype.setZoom=function(e){this.option.zoom=e},t.prototype.setCenter=function(e){this.option.center=e},t.prototype.getLegendIcon=function(e){var n=e.icon||"roundRect",a=We(n,0,0,e.itemWidth,e.itemHeight,e.itemStyle.fill);return a.setStyle(e.itemStyle),a.style.stroke="none",n.indexOf("empty")>-1&&(a.style.stroke=a.style.fill,a.style.fill="#fff",a.style.lineWidth=2),a},t.type="series.map",t.dependencies=["geo"],t.layoutMode="box",t.defaultOption={z:2,coordinateSystem:"geo",map:"",left:"center",top:"center",aspectScale:null,showLegendSymbol:!0,boundingCoords:null,center:null,zoom:1,scaleLimit:null,selectedMode:!0,label:{show:!1,color:"#000"},itemStyle:{borderWidth:.5,borderColor:"#444",areaColor:"#eee"},emphasis:{label:{show:!0,color:"rgb(100,0,0)"},itemStyle:{areaColor:"rgba(255,215,0,0.8)"}},select:{label:{show:!0,color:"rgb(100,0,0)"},itemStyle:{color:"rgba(255,215,0,0.8)"}},nameProperty:"name"},t})(xe),F4=vmt;function dmt(r,t){var e={};return T(r,function(n){n.each(n.mapDimension("value"),function(a,o){var i="ec-"+n.getName(o);e[i]=e[i]||[],isNaN(a)||e[i].push(a)})}),r[0].map(r[0].mapDimension("value"),function(n,a){for(var o="ec-"+r[0].getName(a),i=0,u=1/0,l=-1/0,f=e[o].length,s=0;s<f;s++)u=Math.min(u,e[o][s]),l=Math.max(l,e[o][s]),i+=e[o][s];var c;return t==="min"?c=u:t==="max"?c=l:t==="average"?c=i/f:c=i,f===0?NaN:c})}function IF(r){var t={};r.eachSeriesByType("map",function(e){var n=e.getHostGeoModel(),a=n?"o"+n.id:"i"+e.getMapType();(t[a]=t[a]||[]).push(e)}),T(t,function(e,n){for(var a=dmt(U(e,function(i){return i.getData()}),e[0].get("mapValueCalculation")),o=0;o<e.length;o++)e[o].originalData=e[o].getData();for(var o=0;o<e.length;o++)e[o].seriesGroup=e,e[o].needsDrawMap=o===0&&!e[o].getHostGeoModel(),e[o].setData(a.cloneShallow()),e[o].mainSeries=e[0]})}function FF(r){var t={};r.eachSeriesByType("map",function(e){var n=e.getMapType();if(!(e.getHostGeoModel()||t[n])){var a={};T(e.seriesGroup,function(i){var u=i.coordinateSystem,l=i.originalData;i.get("showLegendSymbol")&&r.getComponent("legend")&&l.each(l.mapDimension("value"),function(f,s){var c=l.getName(s),p=u.getRegion(c);if(!(!p||isNaN(f))){var v=a[c]||0,d=u.dataToPoint(p.getCenter());a[c]=v+1,l.setItemLayout(s,{point:d,offset:v})}})});var o=e.getData();o.each(function(i){var u=o.getName(i),l=o.getItemLayout(i)||{};l.showLabel=!a[u],o.setItemLayout(i,l)}),t[n]=!0}})}var L4=Hr,mmt=(function(r){A(t,r);function t(e){var n=r.call(this)||this;return n.type="view",n.dimensions=["x","y"],n._roamTransformable=new Ya,n._rawTransformable=new Ya,n.name=e,n}return t.prototype.setBoundingRect=function(e,n,a,o){return this._rect=new yt(e,n,a,o),this._rect},t.prototype.getBoundingRect=function(){return this._rect},t.prototype.setViewRect=function(e,n,a,o){this._transformTo(e,n,a,o),this._viewRect=new yt(e,n,a,o)},t.prototype._transformTo=function(e,n,a,o){var i=this.getBoundingRect(),u=this._rawTransformable;u.transform=i.calculateTransform(new yt(e,n,a,o));var l=u.parent;u.parent=null,u.decomposeTransform(),u.parent=l,this._updateTransform()},t.prototype.setCenter=function(e,n){e&&(this._center=[Y(e[0],n.getWidth()),Y(e[1],n.getHeight())],this._updateCenterAndZoom())},t.prototype.setZoom=function(e){e=e||1;var n=this.zoomLimit;n&&(n.max!=null&&(e=Math.min(n.max,e)),n.min!=null&&(e=Math.max(n.min,e))),this._zoom=e,this._updateCenterAndZoom()},t.prototype.getDefaultCenter=function(){var e=this.getBoundingRect(),n=e.x+e.width/2,a=e.y+e.height/2;return[n,a]},t.prototype.getCenter=function(){return this._center||this.getDefaultCenter()},t.prototype.getZoom=function(){return this._zoom||1},t.prototype.getRoamTransform=function(){return this._roamTransformable.getLocalTransform()},t.prototype._updateCenterAndZoom=function(){var e=this._rawTransformable.getLocalTransform(),n=this._roamTransformable,a=this.getDefaultCenter(),o=this.getCenter(),i=this.getZoom();o=Hr([],o,e),a=Hr([],a,e),n.originX=o[0],n.originY=o[1],n.x=a[0]-o[0],n.y=a[1]-o[1],n.scaleX=n.scaleY=i,this._updateTransform()},t.prototype._updateTransform=function(){var e=this._roamTransformable,n=this._rawTransformable;n.parent=e,e.updateTransform(),n.updateTransform(),Eh(this.transform||(this.transform=[]),n.transform||jr()),this._rawTransform=n.getLocalTransform(),this.invTransform=this.invTransform||[],Go(this.invTransform,this.transform),this.decomposeTransform()},t.prototype.getTransformInfo=function(){var e=this._rawTransformable,n=this._roamTransformable,a=new Ya;return a.transform=n.transform,a.decomposeTransform(),{roam:{x:a.x,y:a.y,scaleX:a.scaleX,scaleY:a.scaleY},raw:{x:e.x,y:e.y,scaleX:e.scaleX,scaleY:e.scaleY}}},t.prototype.getViewRect=function(){return this._viewRect},t.prototype.getViewRectAfterRoam=function(){var e=this.getBoundingRect().clone();return e.applyTransform(this.transform),e},t.prototype.dataToPoint=function(e,n,a){var o=n?this._rawTransform:this.transform;return a=a||[],o?L4(a,e,o):Dn(a,e)},t.prototype.pointToData=function(e){var n=this.invTransform;return n?L4([],e,n):[e[0],e[1]]},t.prototype.convertToPixel=function(e,n,a){var o=R4(n);return o===this?o.dataToPoint(a):null},t.prototype.convertFromPixel=function(e,n,a){var o=R4(n);return o===this?o.pointToData(a):null},t.prototype.containPoint=function(e){return this.getViewRectAfterRoam().contain(e[0],e[1])},t.dimensions=["x","y"],t})(Ya);function R4(r){var t=r.seriesModel;return t?t.coordinateSystem:null}var Ml=mmt;var hmt={geoJSON:{aspectScale:.75,invertLongitute:!0},geoSVG:{aspectScale:1,invertLongitute:!1}},LF=["lng","lat"],N4=(function(r){A(t,r);function t(e,n,a){var o=r.call(this,e)||this;o.dimensions=LF,o.type="geo",o._nameCoordMap=Z(),o.map=n;var i=a.projection,u=La.load(n,a.nameMap,a.nameProperty),l=La.getGeoResource(n),f=o.resourceType=l?l.type:null,s=o.regions=u.regions,c=hmt[l.type];o._regionsMap=u.regionsMap,o.regions=u.regions,o.projection=i;var p;if(i)for(var v=0;v<s.length;v++){var d=s[v].getBoundingRect(i);p=p||d.clone(),p.union(d)}else p=u.boundingRect;return o.setBoundingRect(p.x,p.y,p.width,p.height),o.aspectScale=i?1:Tt(a.aspectScale,c.aspectScale),o._invertLongitute=i?!1:c.invertLongitute,o}return t.prototype._transformTo=function(e,n,a,o){var i=this.getBoundingRect(),u=this._invertLongitute;i=i.clone(),u&&(i.y=-i.y-i.height);var l=this._rawTransformable;l.transform=i.calculateTransform(new yt(e,n,a,o));var f=l.parent;l.parent=null,l.decomposeTransform(),l.parent=f,u&&(l.scaleY=-l.scaleY),this._updateTransform()},t.prototype.getRegion=function(e){return this._regionsMap.get(e)},t.prototype.getRegionByCoord=function(e){for(var n=this.regions,a=0;a<n.length;a++){var o=n[a];if(o.type==="geoJSON"&&o.contain(e))return n[a]}},t.prototype.addGeoCoord=function(e,n){this._nameCoordMap.set(e,n)},t.prototype.getGeoCoord=function(e){var n=this._regionsMap.get(e);return this._nameCoordMap.get(e)||n&&n.getCenter()},t.prototype.dataToPoint=function(e,n,a){if(V(e)&&(e=this.getGeoCoord(e)),e){var o=this.projection;return o&&(e=o.project(e)),e&&this.projectedToPoint(e,n,a)}},t.prototype.pointToData=function(e){var n=this.projection;return n&&(e=n.unproject(e)),e&&this.pointToProjected(e)},t.prototype.pointToProjected=function(e){return r.prototype.pointToData.call(this,e)},t.prototype.projectedToPoint=function(e,n,a){return r.prototype.dataToPoint.call(this,e,n,a)},t.prototype.convertToPixel=function(e,n,a){var o=P4(n);return o===this?o.dataToPoint(a):null},t.prototype.convertFromPixel=function(e,n,a){var o=P4(n);return o===this?o.pointToData(a):null},t})(Ml);Ve(N4,Ml);function P4(r){var t=r.geoModel,e=r.seriesModel;return t?t.coordinateSystem:e?e.coordinateSystem||(e.getReferringComponents("geo",je).models[0]||{}).coordinateSystem:null}var RF=N4;function O4(r,t){var e=r.get("boundingCoords");if(e!=null){var n=e[0],a=e[1];if(isFinite(n[0])&&isFinite(n[1])&&isFinite(a[0])&&isFinite(a[1])){var o=this.projection;if(o){var i=n[0],u=n[1],l=a[0],f=a[1];n=[1/0,1/0],a=[-1/0,-1/0];var s=function(C,x,w,S){for(var E=w-C,M=S-x,I=0;I<=100;I++){var F=I/100,L=o.project([C+E*F,x+M*F]);go(n,n,L),yo(a,a,L)}};s(i,u,l,u),s(l,u,l,f),s(l,f,i,f),s(i,f,l,u)}this.setBoundingRect(n[0],n[1],a[0]-n[0],a[1]-n[1])}}var c=this.getBoundingRect(),p=r.get("layoutCenter"),v=r.get("layoutSize"),d=t.getWidth(),m=t.getHeight(),h=c.width/c.height*this.aspectScale,_=!1,g,y;p&&v&&(g=[Y(p[0],d),Y(p[1],m)],y=Y(v,Math.min(d,m)),!isNaN(g[0])&&!isNaN(g[1])&&!isNaN(y)&&(_=!0));var D;if(_)D={},h>1?(D.width=y,D.height=y/h):(D.height=y,D.width=y*h),D.y=g[1]-D.height/2,D.x=g[0]-D.width/2;else{var b=r.getBoxLayoutParams();b.aspect=h,D=ze(b,{width:d,height:m})}this.setViewRect(D.x,D.y,D.width,D.height),this.setCenter(r.get("center"),t),this.setZoom(r.get("zoom"))}function _mt(r,t){T(t.get("geoCoord"),function(e,n){r.addGeoCoord(n,e)})}var gmt=(function(){function r(){this.dimensions=LF}return r.prototype.create=function(t,e){var n=[];function a(i){return{nameProperty:i.get("nameProperty"),aspectScale:i.get("aspectScale"),projection:i.get("projection")}}t.eachComponent("geo",function(i,u){var l=i.get("map"),f=new RF(l+u,l,N({nameMap:i.get("nameMap")},a(i)));f.zoomLimit=i.get("scaleLimit"),n.push(f),i.coordinateSystem=f,f.model=i,f.resize=O4,f.resize(i,e)}),t.eachSeries(function(i){var u=i.get("coordinateSystem");if(u==="geo"){var l=i.get("geoIndex")||0;i.coordinateSystem=n[l]}});var o={};return t.eachSeriesByType("map",function(i){if(!i.getHostGeoModel()){var u=i.getMapType();o[u]=o[u]||[],o[u].push(i)}}),T(o,function(i,u){var l=U(i,function(s){return s.get("nameMap")}),f=new RF(u,u,N({nameMap:ev(l)},a(i[0])));f.zoomLimit=ir.apply(null,U(i,function(s){return s.get("scaleLimit")})),n.push(f),f.resize=O4,f.resize(i[0],e),T(i,function(s){s.coordinateSystem=f,_mt(f,s)})}),n},r.prototype.getFilledRegions=function(t,e,n,a){for(var o=(t||[]).slice(),i=Z(),u=0;u<o.length;u++)i.set(o[u].name,o[u]);var l=La.load(e,n,a);return T(l.regions,function(f){var s=f.name;!i.get(s)&&o.push({name:s})}),o},r})(),ymt=new gmt,AT=ymt;var Dmt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.init=function(e,n,a){var o=La.getGeoResource(e.map);if(o&&o.type==="geoJSON"){var i=e.itemStyle=e.itemStyle||{};"color"in i||(i.color="#eee")}this.mergeDefaultAndTheme(e,a),Co(e,"label",["show"])},t.prototype.optionUpdated=function(){var e=this,n=this.option;n.regions=AT.getFilledRegions(n.regions,n.map,n.nameMap,n.nameProperty);var a={};this._optionModelMap=Bn(n.regions||[],function(o,i){var u=i.name;return u&&(o.set(u,new Te(i,e,e.ecModel)),i.selected&&(a[u]=!0)),o},Z()),n.selectedMap||(n.selectedMap=a)},t.prototype.getRegionModel=function(e){return this._optionModelMap.get(e)||new Te(null,this,this.ecModel)},t.prototype.getFormattedLabel=function(e,n){var a=this.getRegionModel(e),o=n==="normal"?a.get(["label","formatter"]):a.get(["emphasis","label","formatter"]),i={name:e};if(X(o))return i.status=n,o(i);if(V(o))return o.replace("{a}",e??"")},t.prototype.setZoom=function(e){this.option.zoom=e},t.prototype.setCenter=function(e){this.option.center=e},t.prototype.select=function(e){var n=this.option,a=n.selectedMode;if(a){a!=="multiple"&&(n.selectedMap=null);var o=n.selectedMap||(n.selectedMap={});o[e]=!0}},t.prototype.unSelect=function(e){var n=this.option.selectedMap;n&&(n[e]=!1)},t.prototype.toggleSelected=function(e){this[this.isSelected(e)?"unSelect":"select"](e)},t.prototype.isSelected=function(e){var n=this.option.selectedMap;return!!(n&&n[e])},t.type="geo",t.layoutMode="box",t.defaultOption={z:0,show:!0,left:"center",top:"center",aspectScale:null,silent:!1,map:"",boundingCoords:null,center:null,zoom:1,scaleLimit:null,label:{show:!1,color:"#000"},itemStyle:{borderWidth:.5,borderColor:"#444"},emphasis:{label:{show:!0,color:"rgb(100,0,0)"},itemStyle:{color:"rgba(255,215,0,0.8)"}},select:{label:{show:!0,color:"rgb(100,0,0)"},itemStyle:{color:"rgba(255,215,0,0.8)"}},regions:[]},t})(Gt),U4=Dmt;function H4(r,t){return r.pointToProjected?r.pointToProjected(t):r.pointToData(t)}function ad(r,t,e,n){var a=r.getZoom(),o=r.getCenter(),i=t.zoom,u=r.projectedToPoint?r.projectedToPoint(o):r.dataToPoint(o);if(t.dx!=null&&t.dy!=null&&(u[0]-=t.dx,u[1]-=t.dy,r.setCenter(H4(r,u),n)),i!=null){if(e){var l=e.min||0,f=e.max||1/0;i=Math.max(Math.min(a*i,f),l)/a}r.scaleX*=i,r.scaleY*=i;var s=(t.originX-r.x)*(i-1),c=(t.originY-r.y)*(i-1);r.x-=s,r.y-=c,r.updateTransform(),r.setCenter(H4(r,u),n),r.setZoom(i*a)}return{center:r.getCenter(),zoom:r.getZoom()}}var bmt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.focusBlurEnabled=!0,e}return t.prototype.init=function(e,n){this._api=n},t.prototype.render=function(e,n,a,o){if(this._model=e,!e.get("show")){this._mapDraw&&this._mapDraw.remove(),this._mapDraw=null;return}this._mapDraw||(this._mapDraw=new MT(a));var i=this._mapDraw;i.draw(e,n,a,this,o),i.group.on("click",this._handleRegionClick,this),i.group.silent=e.get("silent"),this.group.add(i.group),this.updateSelectStatus(e,n,a)},t.prototype._handleRegionClick=function(e){var n;Ri(e.target,function(a){return(n=vt(a).eventData)!=null},!0),n&&this._api.dispatchAction({type:"geoToggleSelect",geoId:this._model.id,name:n.name})},t.prototype.updateSelectStatus=function(e,n,a){var o=this;this._mapDraw.group.traverse(function(i){var u=vt(i).eventData;if(u)return o._model.isSelected(u.name)?a.enterSelect(i):a.leaveSelect(i),!0})},t.prototype.findHighDownDispatchers=function(e){return this._mapDraw&&this._mapDraw.findHighDownDispatchers(e,this._model)},t.prototype.dispose=function(){this._mapDraw&&this._mapDraw.remove()},t.type="geo",t})(Ee),k4=bmt;function Cmt(r,t,e){La.registerMap(r,t,e)}function fg(r){r.registerCoordinateSystem("geo",AT),r.registerComponentModel(U4),r.registerComponentView(k4),r.registerImpl("registerMap",Cmt),r.registerImpl("getMap",function(e){return La.getMapForUser(e)});function t(e,n){n.update="geo:updateSelectStatus",r.registerAction(n,function(a,o){var i={},u=[];return o.eachComponent({mainType:"geo",query:a},function(l){l[e](a.name);var f=l.coordinateSystem;T(f.regions,function(c){i[c.name]=l.isSelected(c.name)||!1});var s=[];T(i,function(c,p){i[p]&&s.push(p)}),u.push({geoIndex:l.componentIndex,name:s})}),{selected:i,allSelected:u,name:a.name}})}t("toggleSelected",{type:"geoToggleSelect",event:"geoselectchanged"}),t("select",{type:"geoSelect",event:"geoselected"}),t("unSelect",{type:"geoUnSelect",event:"geounselected"}),r.registerAction({type:"geoRoam",event:"geoRoam",update:"updateTransform"},function(e,n,a){var o=e.componentType||"series";n.eachComponent({mainType:o,query:e},function(i){var u=i.coordinateSystem;if(u.type==="geo"){var l=ad(u,e,i.get("scaleLimit"),a);i.setCenter&&i.setCenter(l.center),i.setZoom&&i.setZoom(l.zoom),o==="series"&&T(i.seriesGroup,function(f){f.setCenter(l.center),f.setZoom(l.zoom)})}})})}function PF(r){Jt(fg),r.registerChartView(I4),r.registerSeriesModel(F4),r.registerLayout(FF),r.registerProcessor(r.PRIORITY.PROCESSOR.STATISTIC,IF),vC("map",r.registerAction)}function z4(r){var t=r;t.hierNode={defaultAncestor:null,ancestor:t,prelim:0,modifier:0,change:0,shift:0,i:0,thread:null};for(var e=[t],n,a;n=e.pop();)if(a=n.children,n.isExpand&&a.length)for(var o=a.length,i=o-1;i>=0;i--){var u=a[i];u.hierNode={defaultAncestor:null,ancestor:u,prelim:0,modifier:0,change:0,shift:0,i,thread:null},e.push(u)}}function W4(r,t){var e=r.isExpand?r.children:[],n=r.parentNode.children,a=r.hierNode.i?n[r.hierNode.i-1]:null;if(e.length){Tmt(r);var o=(e[0].hierNode.prelim+e[e.length-1].hierNode.prelim)/2;a?(r.hierNode.prelim=a.hierNode.prelim+t(r,a),r.hierNode.modifier=r.hierNode.prelim-o):r.hierNode.prelim=o}else a&&(r.hierNode.prelim=a.hierNode.prelim+t(r,a));r.parentNode.hierNode.defaultAncestor=xmt(r,a,r.parentNode.hierNode.defaultAncestor||n[0],t)}function G4(r){var t=r.hierNode.prelim+r.parentNode.hierNode.modifier;r.setLayout({x:t},!0),r.hierNode.modifier+=r.parentNode.hierNode.modifier}function UF(r){return arguments.length?r:Emt}function Bc(r,t){return r-=Math.PI/2,{x:t*Math.cos(r),y:t*Math.sin(r)}}function B4(r,t){return ze(r.getBoxLayoutParams(),{width:t.getWidth(),height:t.getHeight()})}function Tmt(r){for(var t=r.children,e=t.length,n=0,a=0;--e>=0;){var o=t[e];o.hierNode.prelim+=n,o.hierNode.modifier+=n,a+=o.hierNode.change,n+=o.hierNode.shift+a}}function xmt(r,t,e,n){if(t){for(var a=r,o=r,i=o.parentNode.children[0],u=t,l=a.hierNode.modifier,f=o.hierNode.modifier,s=i.hierNode.modifier,c=u.hierNode.modifier;u=NF(u),o=OF(o),u&&o;){a=NF(a),i=OF(i),a.hierNode.ancestor=r;var p=u.hierNode.prelim+c-o.hierNode.prelim-f+n(u,o);p>0&&(Smt(wmt(u,r,e),r,p),f+=p,l+=p),c+=u.hierNode.modifier,f+=o.hierNode.modifier,l+=a.hierNode.modifier,s+=i.hierNode.modifier}u&&!NF(a)&&(a.hierNode.thread=u,a.hierNode.modifier+=c-l),o&&!OF(i)&&(i.hierNode.thread=o,i.hierNode.modifier+=f-s,e=r)}return e}function NF(r){var t=r.children;return t.length&&r.isExpand?t[t.length-1]:r.hierNode.thread}function OF(r){var t=r.children;return t.length&&r.isExpand?t[0]:r.hierNode.thread}function wmt(r,t,e){return r.hierNode.ancestor.parentNode===t.parentNode?r.hierNode.ancestor:e}function Smt(r,t,e){var n=e/(t.hierNode.i-r.hierNode.i);t.hierNode.change-=n,t.hierNode.shift+=e,t.hierNode.modifier+=e,t.hierNode.prelim+=e,r.hierNode.change+=n}function Emt(r,t){return r.parentNode===t.parentNode?1:2}var Mmt=(function(){function r(){this.parentPoint=[],this.childPoints=[]}return r})(),Amt=(function(r){A(t,r);function t(e){return r.call(this,e)||this}return t.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},t.prototype.getDefaultShape=function(){return new Mmt},t.prototype.buildPath=function(e,n){var a=n.childPoints,o=a.length,i=n.parentPoint,u=a[0],l=a[o-1];if(o===1){e.moveTo(i[0],i[1]),e.lineTo(u[0],u[1]);return}var f=n.orient,s=f==="TB"||f==="BT"?0:1,c=1-s,p=Y(n.forkPosition,1),v=[];v[s]=i[s],v[c]=i[c]+(l[c]-i[c])*p,e.moveTo(i[0],i[1]),e.lineTo(v[0],v[1]),e.moveTo(u[0],u[1]),v[s]=u[s],e.lineTo(v[0],v[1]),v[s]=l[s],e.lineTo(v[0],v[1]),e.lineTo(l[0],l[1]);for(var d=1;d<o-1;d++){var m=a[d];e.moveTo(m[0],m[1]),v[s]=m[s],e.lineTo(v[0],v[1])}},t})(bt),Imt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e._mainGroup=new at,e}return t.prototype.init=function(e,n){this._controller=new Ru(n.getZr()),this._controllerHost={target:this.group},this.group.add(this._mainGroup)},t.prototype.render=function(e,n,a){var o=e.getData(),i=e.layoutInfo,u=this._mainGroup,l=e.get("layout");l==="radial"?(u.x=i.x+i.width/2,u.y=i.y+i.height/2):(u.x=i.x,u.y=i.y),this._updateViewCoordSys(e,a),this._updateController(e,n,a);var f=this._data;o.diff(f).add(function(s){V4(o,s)&&$4(o,s,null,u,e)}).update(function(s,c){var p=f.getItemGraphicEl(c);if(!V4(o,s)){p&&J4(f,c,p,u,e);return}$4(o,s,p,u,e)}).remove(function(s){var c=f.getItemGraphicEl(s);c&&J4(f,s,c,u,e)}).execute(),this._nodeScaleRatio=e.get("nodeScaleRatio"),this._updateNodeAndLinkScale(e),e.get("expandAndCollapse")===!0&&o.eachItemGraphicEl(function(s,c){s.off("click").on("click",function(){a.dispatchAction({type:"treeExpandAndCollapse",seriesId:e.id,dataIndex:c})})}),this._data=o},t.prototype._updateViewCoordSys=function(e,n){var a=e.getData(),o=[];a.each(function(c){var p=a.getItemLayout(c);p&&!isNaN(p.x)&&!isNaN(p.y)&&o.push([+p.x,+p.y])});var i=[],u=[];fc(o,i,u);var l=this._min,f=this._max;u[0]-i[0]===0&&(i[0]=l?l[0]:i[0]-1,u[0]=f?f[0]:u[0]+1),u[1]-i[1]===0&&(i[1]=l?l[1]:i[1]-1,u[1]=f?f[1]:u[1]+1);var s=e.coordinateSystem=new Ml;s.zoomLimit=e.get("scaleLimit"),s.setBoundingRect(i[0],i[1],u[0]-i[0],u[1]-i[1]),s.setCenter(e.get("center"),n),s.setZoom(e.get("zoom")),this.group.attr({x:s.x,y:s.y,scaleX:s.scaleX,scaleY:s.scaleY}),this._min=i,this._max=u},t.prototype._updateController=function(e,n,a){var o=this,i=this._controller,u=this._controllerHost,l=this.group;i.setPointerChecker(function(f,s,c){var p=l.getBoundingRect();return p.applyTransform(l.transform),p.contain(s,c)&&!jf(f,a,e)}),i.enable(e.get("roam")),u.zoomLimit=e.get("scaleLimit"),u.zoom=e.coordinateSystem.getZoom(),i.off("pan").off("zoom").on("pan",function(f){rd(u,f.dx,f.dy),a.dispatchAction({seriesId:e.id,type:"treeRoam",dx:f.dx,dy:f.dy})}).on("zoom",function(f){nd(u,f.scale,f.originX,f.originY),a.dispatchAction({seriesId:e.id,type:"treeRoam",zoom:f.scale,originX:f.originX,originY:f.originY}),o._updateNodeAndLinkScale(e),a.updateLabelLayout()})},t.prototype._updateNodeAndLinkScale=function(e){var n=e.getData(),a=this._getNodeGlobalScale(e);n.eachItemGraphicEl(function(o,i){o.setSymbolScale(a)})},t.prototype._getNodeGlobalScale=function(e){var n=e.coordinateSystem;if(n.type!=="view")return 1;var a=this._nodeScaleRatio,o=n.scaleX||1,i=n.getZoom(),u=(i-1)*a+1;return u/o},t.prototype.dispose=function(){this._controller&&this._controller.dispose(),this._controllerHost=null},t.prototype.remove=function(){this._mainGroup.removeAll(),this._data=null},t.type="tree",t})(me);function V4(r,t){var e=r.getItemLayout(t);return e&&!isNaN(e.x)&&!isNaN(e.y)}function $4(r,t,e,n,a){var o=!e,i=r.tree.getNodeByDataIndex(t),u=i.getModel(),l=i.getVisual("style").fill,f=i.isExpand===!1&&i.children.length!==0?l:"#fff",s=r.tree.root,c=i.parentNode===s?i:i.parentNode||i,p=r.getItemGraphicEl(c.dataIndex),v=c.getLayout(),d=p?{x:p.__oldX,y:p.__oldY,rawX:p.__radialOldRawX,rawY:p.__radialOldRawY}:v,m=i.getLayout();o?(e=new El(r,t,null,{symbolInnerColor:f,useNameLabel:!0}),e.x=d.x,e.y=d.y):e.updateData(r,t,null,{symbolInnerColor:f,useNameLabel:!0}),e.__radialOldRawX=e.__radialRawX,e.__radialOldRawY=e.__radialRawY,e.__radialRawX=m.rawX,e.__radialRawY=m.rawY,n.add(e),r.setItemGraphicEl(t,e),e.__oldX=e.x,e.__oldY=e.y,$t(e,{x:m.x,y:m.y},a);var h=e.getSymbolPath();if(a.get("layout")==="radial"){var _=s.children[0],g=_.getLayout(),y=_.children.length,D=void 0,b=void 0;if(m.x===g.x&&i.isExpand===!0&&_.children.length){var C={x:(_.children[0].getLayout().x+_.children[y-1].getLayout().x)/2,y:(_.children[0].getLayout().y+_.children[y-1].getLayout().y)/2};D=Math.atan2(C.y-g.y,C.x-g.x),D<0&&(D=Math.PI*2+D),b=C.x<g.x,b&&(D=D-Math.PI)}else D=Math.atan2(m.y-g.y,m.x-g.x),D<0&&(D=Math.PI*2+D),i.children.length===0||i.children.length!==0&&i.isExpand===!1?(b=m.x<g.x,b&&(D=D-Math.PI)):(b=m.x>g.x,b||(D=D-Math.PI));var x=b?"left":"right",w=u.getModel("label"),S=w.get("rotate"),E=S*(Math.PI/180),M=h.getTextContent();M&&(h.setTextConfig({position:w.get("position")||x,rotation:S==null?-D:E,origin:"center"}),M.setStyle("verticalAlign","middle"))}var I=u.get(["emphasis","focus"]),F=I==="relative"?Ws(i.getAncestorsIndices(),i.getDescendantIndices()):I==="ancestor"?i.getAncestorsIndices():I==="descendant"?i.getDescendantIndices():null;F&&(vt(e).focus=F),Fmt(a,i,s,e,d,v,m,n),e.__edge&&(e.onHoverStateChange=function(L){if(L!=="blur"){var R=i.parentNode&&r.getItemGraphicEl(i.parentNode.dataIndex);R&&R.hoverState===mc||hc(e.__edge,L)}})}function Fmt(r,t,e,n,a,o,i,u){var l=t.getModel(),f=r.get("edgeShape"),s=r.get("layout"),c=r.getOrient(),p=r.get(["lineStyle","curveness"]),v=r.get("edgeForkPosition"),d=l.getModel("lineStyle").getLineStyle(),m=n.__edge;if(f==="curve")t.parentNode&&t.parentNode!==e&&(m||(m=n.__edge=new yc({shape:HF(s,c,p,a,a)})),$t(m,{shape:HF(s,c,p,o,i)},r));else if(f==="polyline"&&s==="orthogonal"&&t!==e&&t.children&&t.children.length!==0&&t.isExpand===!0){for(var h=t.children,_=[],g=0;g<h.length;g++){var y=h[g].getLayout();_.push([y.x,y.y])}m||(m=n.__edge=new Amt({shape:{parentPoint:[i.x,i.y],childPoints:[[i.x,i.y]],orient:c,forkPosition:v}})),$t(m,{shape:{parentPoint:[i.x,i.y],childPoints:_}},r)}m&&!(f==="polyline"&&!t.isExpand)&&(m.useStyle(et({strokeNoScale:!0,fill:null},d)),fr(m,l,"lineStyle"),xi(m),u.add(m))}function q4(r,t,e,n,a){var o=t.tree.root,i=j4(o,r),u=i.source,l=i.sourceLayout,f=t.getItemGraphicEl(r.dataIndex);if(f){var s=t.getItemGraphicEl(u.dataIndex),c=s.__edge,p=f.__edge||(u.isExpand===!1||u.children.length===1?c:void 0),v=n.get("edgeShape"),d=n.get("layout"),m=n.get("orient"),h=n.get(["lineStyle","curveness"]);p&&(v==="curve"?Zo(p,{shape:HF(d,m,h,l,l),style:{opacity:0}},n,{cb:function(){e.remove(p)},removeOpt:a}):v==="polyline"&&n.get("layout")==="orthogonal"&&Zo(p,{shape:{parentPoint:[l.x,l.y],childPoints:[[l.x,l.y]]},style:{opacity:0}},n,{cb:function(){e.remove(p)},removeOpt:a}))}}function j4(r,t){for(var e=t.parentNode===r?t:t.parentNode||t,n;n=e.getLayout(),n==null;)e=e.parentNode===r?e:e.parentNode||e;return{source:e,sourceLayout:n}}function J4(r,t,e,n,a){var o=r.tree.getNodeByDataIndex(t),i=r.tree.root,u=j4(i,o).sourceLayout,l={duration:a.get("animationDurationUpdate"),easing:a.get("animationEasingUpdate")};Zo(e,{x:u.x+1,y:u.y+1},a,{cb:function(){n.remove(e),r.setItemGraphicEl(t,null)},removeOpt:l}),e.fadeOut(null,r.hostModel,{fadeLabel:!0,animation:l}),o.children.forEach(function(f){q4(f,r,n,a,l)}),q4(o,r,n,a,l)}function HF(r,t,e,n,a){var o,i,u,l,f,s,c,p;if(r==="radial"){f=n.rawX,c=n.rawY,s=a.rawX,p=a.rawY;var v=Bc(f,c),d=Bc(f,c+(p-c)*e),m=Bc(s,p+(c-p)*e),h=Bc(s,p);return{x1:v.x||0,y1:v.y||0,x2:h.x||0,y2:h.y||0,cpx1:d.x||0,cpy1:d.y||0,cpx2:m.x||0,cpy2:m.y||0}}else f=n.x,c=n.y,s=a.x,p=a.y,(t==="LR"||t==="RL")&&(o=f+(s-f)*e,i=c,u=s+(f-s)*e,l=p),(t==="TB"||t==="BT")&&(o=f,i=c+(p-c)*e,u=s,l=p+(c-p)*e);return{x1:f,y1:c,x2:s,y2:p,cpx1:o,cpy1:i,cpx2:u,cpy2:l}}var Y4=Imt;var li=St();function Lmt(r){var t=r.mainData,e=r.datas;e||(e={main:t},r.datasAttr={main:"data"}),r.datas=r.mainData=null,Q4(t,e,r),T(e,function(n){T(t.TRANSFERABLE_METHODS,function(a){n.wrapMethod(a,gt(Rmt,r))})}),t.wrapMethod("cloneShallow",gt(Nmt,r)),T(t.CHANGABLE_METHODS,function(n){t.wrapMethod(n,gt(Pmt,r))}),ur(e[t.dataType]===t)}function Rmt(r,t){if(Hmt(this)){var e=N({},li(this).datas);e[this.dataType]=t,Q4(t,e,r)}else kF(t,this.dataType,li(this).mainData,r);return t}function Pmt(r,t){return r.struct&&r.struct.update(),t}function Nmt(r,t){return T(li(t).datas,function(e,n){e!==t&&kF(e.cloneShallow(),n,t,r)}),t}function Omt(r){var t=li(this).mainData;return r==null||t==null?t:li(t).datas[r]}function Umt(){var r=li(this).mainData;return r==null?[{data:r}]:U(Ft(li(r).datas),function(t){return{type:t,data:li(r).datas[t]}})}function Hmt(r){return li(r).mainData===r}function Q4(r,t,e){li(r).datas={},T(t,function(n,a){kF(n,a,r,e)})}function kF(r,t,e,n){li(e).datas[t]=r,li(r).mainData=e,r.dataType=t,n.struct&&(r[n.structAttr]=n.struct,n.struct[n.datasAttr[t]]=r),r.getLinkedData=Omt,r.getLinkedDataAll=Umt}var IT=Lmt;var kmt=(function(){function r(t,e){this.depth=0,this.height=0,this.dataIndex=-1,this.children=[],this.viewChildren=[],this.isExpand=!1,this.name=t||"",this.hostTree=e}return r.prototype.isRemoved=function(){return this.dataIndex<0},r.prototype.eachNode=function(t,e,n){X(t)&&(n=e,e=t,t=null),t=t||{},V(t)&&(t={order:t});var a=t.order||"preorder",o=this[t.attr||"children"],i;a==="preorder"&&(i=e.call(n,this));for(var u=0;!i&&u<o.length;u++)o[u].eachNode(t,e,n);a==="postorder"&&e.call(n,this)},r.prototype.updateDepthAndHeight=function(t){var e=0;this.depth=t;for(var n=0;n<this.children.length;n++){var a=this.children[n];a.updateDepthAndHeight(t+1),a.height>e&&(e=a.height)}this.height=e+1},r.prototype.getNodeById=function(t){if(this.getId()===t)return this;for(var e=0,n=this.children,a=n.length;e<a;e++){var o=n[e].getNodeById(t);if(o)return o}},r.prototype.contains=function(t){if(t===this)return!0;for(var e=0,n=this.children,a=n.length;e<a;e++){var o=n[e].contains(t);if(o)return o}},r.prototype.getAncestors=function(t){for(var e=[],n=t?this:this.parentNode;n;)e.push(n),n=n.parentNode;return e.reverse(),e},r.prototype.getAncestorsIndices=function(){for(var t=[],e=this;e;)t.push(e.dataIndex),e=e.parentNode;return t.reverse(),t},r.prototype.getDescendantIndices=function(){var t=[];return this.eachNode(function(e){t.push(e.dataIndex)}),t},r.prototype.getValue=function(t){var e=this.hostTree.data;return e.getStore().get(e.getDimensionIndex(t||"value"),this.dataIndex)},r.prototype.setLayout=function(t,e){this.dataIndex>=0&&this.hostTree.data.setItemLayout(this.dataIndex,t,e)},r.prototype.getLayout=function(){return this.hostTree.data.getItemLayout(this.dataIndex)},r.prototype.getModel=function(t){if(!(this.dataIndex<0)){var e=this.hostTree,n=e.data.getItemModel(this.dataIndex);return n.getModel(t)}},r.prototype.getLevelModel=function(){return(this.hostTree.levelModels||[])[this.depth]},r.prototype.setVisual=function(t,e){this.dataIndex>=0&&this.hostTree.data.setItemVisual(this.dataIndex,t,e)},r.prototype.getVisual=function(t){return this.hostTree.data.getItemVisual(this.dataIndex,t)},r.prototype.getRawIndex=function(){return this.hostTree.data.getRawIndex(this.dataIndex)},r.prototype.getId=function(){return this.hostTree.data.getId(this.dataIndex)},r.prototype.getChildIndex=function(){if(this.parentNode){for(var t=this.parentNode.children,e=0;e<t.length;++e)if(t[e]===this)return e;return-1}return-1},r.prototype.isAncestorOf=function(t){for(var e=t.parentNode;e;){if(e===this)return!0;e=e.parentNode}return!1},r.prototype.isDescendantOf=function(t){return t!==this&&t.isAncestorOf(this)},r})();var zmt=(function(){function r(t){this.type="tree",this._nodes=[],this.hostModel=t}return r.prototype.eachNode=function(t,e,n){this.root.eachNode(t,e,n)},r.prototype.getNodeByDataIndex=function(t){var e=this.data.getRawIndex(t);return this._nodes[e]},r.prototype.getNodeById=function(t){return this.root.getNodeById(t)},r.prototype.update=function(){for(var t=this.data,e=this._nodes,n=0,a=e.length;n<a;n++)e[n].dataIndex=-1;for(var n=0,a=t.count();n<a;n++)e[t.getRawIndex(n)].dataIndex=n},r.prototype.clearLayouts=function(){this.data.clearItemLayouts()},r.createTree=function(t,e,n){var a=new r(e),o=[],i=1;u(t);function u(s,c){var p=s.value;i=Math.max(i,O(p)?p.length:1),o.push(s);var v=new kmt(cr(s.name,""),a);c?Wmt(v,c):a.root=v,a._nodes.push(v);var d=s.children;if(d)for(var m=0;m<d.length;m++)u(d[m],v)}a.root.updateDepthAndHeight(0);var l=Oi(o,{coordDimensions:["value"],dimensionsCount:i}).dimensions,f=new wr(l,e);return f.initData(o),n&&n(f),IT({mainData:f,struct:a,structAttr:"tree"}),a.update(),a},r})();function Wmt(r,t){var e=t.children;r.parentNode!==t&&(e.push(r),r.parentNode=t)}var od=zmt;function Al(r,t,e){if(r&&wt(t,r.type)>=0){var n=e.getData().tree.root,a=r.targetNode;if(V(a)&&(a=n.getNodeById(a)),a&&n.contains(a))return{node:a};var o=r.targetNodeId;if(o!=null&&(a=n.getNodeById(o)))return{node:a}}}function zF(r){for(var t=[];r;)r=r.parentNode,r&&t.push(r);return t.reverse()}function id(r,t){var e=zF(r);return wt(e,t)>=0}function Qf(r,t){for(var e=[];r;){var n=r.dataIndex;e.push({name:r.name,dataIndex:n,value:t.getRawValue(n)}),r=r.parentNode}return e.reverse(),e}var Gmt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.hasSymbolVisual=!0,e.ignoreStyleOnData=!0,e}return t.prototype.getInitialData=function(e){var n={name:e.name,children:e.data},a=e.leaves||{},o=new Te(a,this,this.ecModel),i=od.createTree(n,this,u);function u(c){c.wrapMethod("getItemModel",function(p,v){var d=i.getNodeByDataIndex(v);return d&&d.children.length&&d.isExpand||(p.parentModel=o),p})}var l=0;i.eachNode("preorder",function(c){c.depth>l&&(l=c.depth)});var f=e.expandAndCollapse,s=f&&e.initialTreeDepth>=0?e.initialTreeDepth:l;return i.root.eachNode("preorder",function(c){var p=c.hostTree.data.getRawDataItem(c.dataIndex);c.isExpand=p&&p.collapsed!=null?!p.collapsed:c.depth<=s}),i.data},t.prototype.getOrient=function(){var e=this.get("orient");return e==="horizontal"?e="LR":e==="vertical"&&(e="TB"),e},t.prototype.setZoom=function(e){this.option.zoom=e},t.prototype.setCenter=function(e){this.option.center=e},t.prototype.formatTooltip=function(e,n,a){for(var o=this.getData().tree,i=o.root.children[0],u=o.getNodeByDataIndex(e),l=u.getValue(),f=u.name;u&&u!==i;)f=u.parentNode.name+"."+f,u=u.parentNode;return nr("nameValue",{name:f,value:l,noValue:isNaN(l)||l==null})},t.prototype.getDataParams=function(e){var n=r.prototype.getDataParams.apply(this,arguments),a=this.getData().tree.getNodeByDataIndex(e);return n.treeAncestors=Qf(a,this),n.collapsed=!a.isExpand,n},t.type="series.tree",t.layoutMode="box",t.defaultOption={z:2,coordinateSystem:"view",left:"12%",top:"12%",right:"12%",bottom:"12%",layout:"orthogonal",edgeShape:"curve",edgeForkPosition:"50%",roam:!1,nodeScaleRatio:.4,center:null,zoom:1,orient:"LR",symbol:"emptyCircle",symbolSize:7,expandAndCollapse:!0,initialTreeDepth:2,lineStyle:{color:"#ccc",width:1.5,curveness:.5},itemStyle:{color:"lightsteelblue",borderWidth:1.5},label:{show:!0},animationEasing:"linear",animationDuration:700,animationDurationUpdate:500},t})(xe),Z4=Gmt;function X4(r,t,e){for(var n=[r],a=[],o;o=n.pop();)if(a.push(o),o.isExpand){var i=o.children;if(i.length)for(var u=0;u<i.length;u++)n.push(i[u])}for(;o=a.pop();)t(o,e)}function ud(r,t){for(var e=[r],n;n=e.pop();)if(t(n),n.isExpand){var a=n.children;if(a.length)for(var o=a.length-1;o>=0;o--)e.push(a[o])}}function GF(r,t){r.eachSeriesByType("tree",function(e){Bmt(e,t)})}function Bmt(r,t){var e=B4(r,t);r.layoutInfo=e;var n=r.get("layout"),a=0,o=0,i=null;n==="radial"?(a=2*Math.PI,o=Math.min(e.height,e.width)/2,i=UF(function(y,D){return(y.parentNode===D.parentNode?1:2)/y.depth})):(a=e.width,o=e.height,i=UF());var u=r.getData().tree.root,l=u.children[0];if(l){z4(u),X4(l,W4,i),u.hierNode.modifier=-l.hierNode.prelim,ud(l,G4);var f=l,s=l,c=l;ud(l,function(y){var D=y.getLayout().x;D<f.getLayout().x&&(f=y),D>s.getLayout().x&&(s=y),y.depth>c.depth&&(c=y)});var p=f===s?1:i(f,s)/2,v=p-f.getLayout().x,d=0,m=0,h=0,_=0;if(n==="radial")d=a/(s.getLayout().x+p+v),m=o/(c.depth-1||1),ud(l,function(y){h=(y.getLayout().x+v)*d,_=(y.depth-1)*m;var D=Bc(h,_);y.setLayout({x:D.x,y:D.y,rawX:h,rawY:_},!0)});else{var g=r.getOrient();g==="RL"||g==="LR"?(m=o/(s.getLayout().x+p+v),d=a/(c.depth-1||1),ud(l,function(y){_=(y.getLayout().x+v)*m,h=g==="LR"?(y.depth-1)*d:a-(y.depth-1)*d,y.setLayout({x:h,y:_},!0)})):(g==="TB"||g==="BT")&&(d=a/(s.getLayout().x+p+v),m=o/(c.depth-1||1),ud(l,function(y){h=(y.getLayout().x+v)*d,_=g==="TB"?(y.depth-1)*m:o-(y.depth-1)*m,y.setLayout({x:h,y:_},!0)}))}}}function BF(r){r.eachSeriesByType("tree",function(t){var e=t.getData(),n=e.tree;n.eachNode(function(a){var o=a.getModel(),i=o.getModel("itemStyle").getItemStyle(),u=e.ensureUniqueItemVisual(a.dataIndex,"style");N(u,i)})})}function K4(r){r.registerAction({type:"treeExpandAndCollapse",event:"treeExpandAndCollapse",update:"update"},function(t,e){e.eachComponent({mainType:"series",subType:"tree",query:t},function(n){var a=t.dataIndex,o=n.getData().tree,i=o.getNodeByDataIndex(a);i.isExpand=!i.isExpand})}),r.registerAction({type:"treeRoam",event:"treeRoam",update:"none"},function(t,e,n){e.eachComponent({mainType:"series",subType:"tree",query:t},function(a){var o=a.coordinateSystem,i=ad(o,t,void 0,n);a.setCenter&&a.setCenter(i.center),a.setZoom&&a.setZoom(i.zoom)})})}function VF(r){r.registerChartView(Y4),r.registerSeriesModel(Z4),r.registerLayout(GF),r.registerVisual(BF),K4(r)}var t8=["treemapZoomToNode","treemapRender","treemapMove"];function e8(r){for(var t=0;t<t8.length;t++)r.registerAction({type:t8[t],update:"updateView"},Ye);r.registerAction({type:"treemapRootToNode",update:"updateView"},function(e,n){n.eachComponent({mainType:"series",subType:"treemap",query:e},a);function a(o,i){var u=["treemapZoomToNode","treemapRootToNode"],l=Al(e,u,o);if(l){var f=o.getViewRoot();f&&(e.direction=id(f,l.node)?"rollUp":"drillDown"),o.resetViewRoot(l.node)}}})}function sg(r){var t=r.getData(),e=t.tree,n={};e.eachNode(function(a){for(var o=a;o&&o.depth>1;)o=o.parentNode;var i=D_(r.ecModel,o.name||o.dataIndex+"",n);a.setVisual("decal",i)})}var Vmt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.preventUsingHoverLayer=!0,e}return t.prototype.getInitialData=function(e,n){var a={name:e.name,children:e.data};r8(a);var o=e.levels||[],i=this.designatedVisualItemStyle={},u=new Te({itemStyle:i},this,n);o=e.levels=$mt(o,n);var l=U(o||[],function(c){return new Te(c,u,n)},this),f=od.createTree(a,this,s);function s(c){c.wrapMethod("getItemModel",function(p,v){var d=f.getNodeByDataIndex(v),m=d?l[d.depth]:null;return p.parentModel=m||u,p})}return f.data},t.prototype.optionUpdated=function(){this.resetViewRoot()},t.prototype.formatTooltip=function(e,n,a){var o=this.getData(),i=this.getRawValue(e),u=o.getName(e);return nr("nameValue",{name:u,value:i})},t.prototype.getDataParams=function(e){var n=r.prototype.getDataParams.apply(this,arguments),a=this.getData().tree.getNodeByDataIndex(e);return n.treeAncestors=Qf(a,this),n.treePathInfo=n.treeAncestors,n},t.prototype.setLayoutInfo=function(e){this.layoutInfo=this.layoutInfo||{},N(this.layoutInfo,e)},t.prototype.mapIdToIndex=function(e){var n=this._idIndexMap;n||(n=this._idIndexMap=Z(),this._idIndexMapCount=0);var a=n.get(e);return a==null&&n.set(e,a=this._idIndexMapCount++),a},t.prototype.getViewRoot=function(){return this._viewRoot},t.prototype.resetViewRoot=function(e){e?this._viewRoot=e:e=this._viewRoot;var n=this.getRawData().tree.root;(!e||e!==n&&!n.contains(e))&&(this._viewRoot=n)},t.prototype.enableAriaDecal=function(){sg(this)},t.type="series.treemap",t.layoutMode="box",t.defaultOption={progressive:0,left:"center",top:"middle",width:"80%",height:"80%",sort:!0,clipWindow:"origin",squareRatio:.5*(1+Math.sqrt(5)),leafDepth:null,drillDownIcon:"\u25B6",zoomToNodeRatio:.32*.32,roam:!0,nodeClick:"zoomToNode",animation:!0,animationDurationUpdate:900,animationEasing:"quinticInOut",breadcrumb:{show:!0,height:22,left:"center",top:"bottom",emptyItemWidth:25,itemStyle:{color:"rgba(0,0,0,0.7)",textStyle:{color:"#fff"}},emphasis:{itemStyle:{color:"rgba(0,0,0,0.9)"}}},label:{show:!0,distance:0,padding:5,position:"inside",color:"#fff",overflow:"truncate"},upperLabel:{show:!1,position:[0,"50%"],height:20,overflow:"truncate",verticalAlign:"middle"},itemStyle:{color:null,colorAlpha:null,colorSaturation:null,borderWidth:0,gapWidth:0,borderColor:"#fff",borderColorSaturation:null},emphasis:{upperLabel:{show:!0,position:[0,"50%"],overflow:"truncate",verticalAlign:"middle"}},visualDimension:0,visualMin:null,visualMax:null,color:[],colorAlpha:null,colorSaturation:null,colorMappingBy:"index",visibleMin:10,childrenVisibleMin:null,levels:[]},t})(xe);function r8(r){var t=0;T(r.children,function(n){r8(n);var a=n.value;O(a)&&(a=a[0]),t+=a});var e=r.value;O(e)&&(e=e[0]),(e==null||isNaN(e))&&(e=t),e<0&&(e=0),O(r.value)?r.value[0]=e:r.value=e}function $mt(r,t){var e=we(t.get("color")),n=we(t.get(["aria","decal","decals"]));if(e){r=r||[];var a,o;T(r,function(u){var l=new Te(u),f=l.get("color"),s=l.get("decal");(l.get(["itemStyle","color"])||f&&f!=="none")&&(a=!0),(l.get(["itemStyle","decal"])||s&&s!=="none")&&(o=!0)});var i=r[0]||(r[0]={});return a||(i.color=e.slice()),!o&&n&&(i.decal=n.slice()),r}}var n8=Vmt;var qmt=8,a8=8,$F=5,Jmt=(function(){function r(t){this.group=new at,t.add(this.group)}return r.prototype.render=function(t,e,n,a){var o=t.getModel("breadcrumb"),i=this.group;if(i.removeAll(),!(!o.get("show")||!n)){var u=o.getModel("itemStyle"),l=o.getModel("emphasis"),f=u.getModel("textStyle"),s=l.getModel(["itemStyle","textStyle"]),c={pos:{left:o.get("left"),right:o.get("right"),top:o.get("top"),bottom:o.get("bottom")},box:{width:e.getWidth(),height:e.getHeight()},emptyItemWidth:o.get("emptyItemWidth"),totalWidth:0,renderList:[]};this._prepare(n,c,f),this._renderContent(t,c,u,l,f,s,a),If(i,c.pos,c.box)}},r.prototype._prepare=function(t,e,n){for(var a=t;a;a=a.parentNode){var o=cr(a.getModel().get("name"),""),i=n.getTextRect(o),u=Math.max(i.width+qmt*2,e.emptyItemWidth);e.totalWidth+=u+a8,e.renderList.push({node:a,text:o,width:u})}},r.prototype._renderContent=function(t,e,n,a,o,i,u){for(var l=0,f=e.emptyItemWidth,s=t.get(["breadcrumb","height"]),c=aV(e.pos,e.box),p=e.totalWidth,v=e.renderList,d=a.getModel("itemStyle").getItemStyle(),m=v.length-1;m>=0;m--){var h=v[m],_=h.node,g=h.width,y=h.text;p>c.width&&(p-=g-f,g=f,y=null);var D=new xr({shape:{points:jmt(l,0,g,s,m===v.length-1,m===0)},style:et(n.getItemStyle(),{lineJoin:"bevel"}),textContent:new Wt({style:Re(o,{text:y})}),textConfig:{position:"inside"},z2:cl*1e4,onclick:gt(u,_)});D.disableLabelAnimation=!0,D.getTextContent().ensureState("emphasis").style=Re(i,{text:y}),D.ensureState("emphasis").style=d,Me(D,a.get("focus"),a.get("blurScope"),a.get("disabled")),this.group.add(D),Ymt(D,t,_),l+=g+a8}},r.prototype.remove=function(){this.group.removeAll()},r})();function jmt(r,t,e,n,a,o){var i=[[a?r:r-$F,t],[r+e,t],[r+e,t+n],[a?r:r-$F,t+n]];return!o&&i.splice(2,0,[r+e+$F,t+n/2]),!a&&i.push([r,t+n/2]),i}function Ymt(r,t,e){vt(r).eventData={componentType:"series",componentSubType:"treemap",componentIndex:t.componentIndex,seriesIndex:t.seriesIndex,seriesName:t.name,seriesType:"treemap",selfType:"breadcrumb",nodeData:{dataIndex:e&&e.dataIndex,name:e&&e.name},treePathInfo:e&&Qf(e,t)}}var o8=Jmt;var Qmt=(function(){function r(){this._storage=[],this._elExistsMap={}}return r.prototype.add=function(t,e,n,a,o){return this._elExistsMap[t.id]?!1:(this._elExistsMap[t.id]=!0,this._storage.push({el:t,target:e,duration:n,delay:a,easing:o}),!0)},r.prototype.finished=function(t){return this._finishedCallback=t,this},r.prototype.start=function(){for(var t=this,e=this._storage.length,n=function(){e--,e<=0&&(t._storage.length=0,t._elExistsMap={},t._finishedCallback&&t._finishedCallback())},a=0,o=this._storage.length;a<o;a++){var i=this._storage[a];i.el.animateTo(i.target,{duration:i.duration,delay:i.delay,easing:i.easing,setToFinal:!0,done:n,aborted:n})}return this},r})();function i8(){return new Qmt}var qF=at,u8=Rt,l8=3,f8="label",s8="upperLabel",Xmt=cl*10,Kmt=cl*2,tht=cl*3,Vc=Ka([["fill","color"],["stroke","strokeColor"],["lineWidth","strokeWidth"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["shadowColor"]]),c8=function(r){var t=Vc(r);return t.stroke=t.fill=t.lineWidth=null,t},FT=St(),eht=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e._state="ready",e._storage=cg(),e}return t.prototype.render=function(e,n,a,o){var i=n.findComponents({mainType:"series",subType:"treemap",query:o});if(!(wt(i,e)<0)){this.seriesModel=e,this.api=a,this.ecModel=n;var u=["treemapZoomToNode","treemapRootToNode"],l=Al(o,u,e),f=o&&o.type,s=e.layoutInfo,c=!this._oldTree,p=this._storage,v=f==="treemapRootToNode"&&l&&p?{rootNodeGroup:p.nodeGroup[l.node.getRawIndex()],direction:o.direction}:null,d=this._giveContainerGroup(s),m=e.get("animation"),h=this._doRender(d,e,v);m&&!c&&(!f||f==="treemapZoomToNode"||f==="treemapRootToNode")?this._doAnimation(d,h,e,v):h.renderFinally(),this._resetController(a),this._renderBreadcrumb(e,a,l)}},t.prototype._giveContainerGroup=function(e){var n=this._containerGroup;return n||(n=this._containerGroup=new qF,this._initEvents(n),this.group.add(n)),n.x=e.x,n.y=e.y,n},t.prototype._doRender=function(e,n,a){var o=n.getData().tree,i=this._oldTree,u=cg(),l=cg(),f=this._storage,s=[];function c(h,_,g,y){return rht(n,l,f,a,u,s,h,_,g,y)}v(o.root?[o.root]:[],i&&i.root?[i.root]:[],e,o===i||!i,0);var p=d(f);return this._oldTree=o,this._storage=l,{lastsForAnimation:u,willDeleteEls:p,renderFinally:m};function v(h,_,g,y,D){y?(_=h,T(h,function(x,w){!x.isRemoved()&&C(w,w)})):new Zn(_,h,b,b).add(C).update(C).remove(gt(C,null)).execute();function b(x){return x.getId()}function C(x,w){var S=x!=null?h[x]:null,E=w!=null?_[w]:null,M=c(S,E,g,D);M&&v(S&&S.viewChildren||[],E&&E.viewChildren||[],M,y,D+1)}}function d(h){var _=cg();return h&&T(h,function(g,y){var D=_[y];T(g,function(b){b&&(D.push(b),FT(b).willDelete=!0)})}),_}function m(){T(p,function(h){T(h,function(_){_.parent&&_.parent.remove(_)})}),T(s,function(h){h.invisible=!0,h.dirty()})}},t.prototype._doAnimation=function(e,n,a,o){var i=a.get("animationDurationUpdate"),u=a.get("animationEasing"),l=(X(i)?0:i)||0,f=(X(u)?null:u)||"cubicOut",s=i8();T(n.willDeleteEls,function(c,p){T(c,function(v,d){if(!v.invisible){var m=v.parent,h,_=FT(m);if(o&&o.direction==="drillDown")h=m===o.rootNodeGroup?{shape:{x:0,y:0,width:_.nodeWidth,height:_.nodeHeight},style:{opacity:0}}:{style:{opacity:0}};else{var g=0,y=0;_.willDelete||(g=_.nodeWidth/2,y=_.nodeHeight/2),h=p==="nodeGroup"?{x:g,y,style:{opacity:0}}:{shape:{x:g,y,width:0,height:0},style:{opacity:0}}}h&&s.add(v,h,l,0,f)}})}),T(this._storage,function(c,p){T(c,function(v,d){var m=n.lastsForAnimation[p][d],h={};m&&(v instanceof at?m.oldX!=null&&(h.x=v.x,h.y=v.y,v.x=m.oldX,v.y=m.oldY):(m.oldShape&&(h.shape=N({},v.shape),v.setShape(m.oldShape)),m.fadein?(v.setStyle("opacity",0),h.style={opacity:1}):v.style.opacity!==1&&(h.style={opacity:1})),s.add(v,h,l,0,f))})},this),this._state="animating",s.finished(Q(function(){this._state="ready",n.renderFinally()},this)).start()},t.prototype._resetController=function(e){var n=this._controller;n||(n=this._controller=new Ru(e.getZr()),n.enable(this.seriesModel.get("roam")),n.on("pan",Q(this._onPan,this)),n.on("zoom",Q(this._onZoom,this)));var a=new yt(0,0,e.getWidth(),e.getHeight());n.setPointerChecker(function(o,i,u){return a.contain(i,u)})},t.prototype._clearController=function(){var e=this._controller;e&&(e.dispose(),e=null)},t.prototype._onPan=function(e){if(this._state!=="animating"&&(Math.abs(e.dx)>l8||Math.abs(e.dy)>l8)){var n=this.seriesModel.getData().tree.root;if(!n)return;var a=n.getLayout();if(!a)return;this.api.dispatchAction({type:"treemapMove",from:this.uid,seriesId:this.seriesModel.id,rootRect:{x:a.x+e.dx,y:a.y+e.dy,width:a.width,height:a.height}})}},t.prototype._onZoom=function(e){var n=e.originX,a=e.originY;if(this._state!=="animating"){var o=this.seriesModel.getData().tree.root;if(!o)return;var i=o.getLayout();if(!i)return;var u=new yt(i.x,i.y,i.width,i.height),l=this.seriesModel.layoutInfo;n-=l.x,a-=l.y;var f=jr();$n(f,f,[-n,-a]),lv(f,f,[e.scale,e.scale]),$n(f,f,[n,a]),u.applyTransform(f),this.api.dispatchAction({type:"treemapRender",from:this.uid,seriesId:this.seriesModel.id,rootRect:{x:u.x,y:u.y,width:u.width,height:u.height}})}},t.prototype._initEvents=function(e){var n=this;e.on("click",function(a){if(n._state==="ready"){var o=n.seriesModel.get("nodeClick",!0);if(o){var i=n.findTarget(a.offsetX,a.offsetY);if(i){var u=i.node;if(u.getLayout().isLeafRoot)n._rootToNode(i);else if(o==="zoomToNode")n._zoomToNode(i);else if(o==="link"){var l=u.hostTree.data.getItemModel(u.dataIndex),f=l.get("link",!0),s=l.get("target",!0)||"blank";f&&Ec(f,s)}}}}},this)},t.prototype._renderBreadcrumb=function(e,n,a){var o=this;a||(a=e.get("leafDepth",!0)!=null?{node:e.getViewRoot()}:this.findTarget(n.getWidth()/2,n.getHeight()/2),a||(a={node:e.getData().tree.root})),(this._breadcrumb||(this._breadcrumb=new o8(this.group))).render(e,n,a.node,function(i){o._state!=="animating"&&(id(e.getViewRoot(),i)?o._rootToNode({node:i}):o._zoomToNode({node:i}))})},t.prototype.remove=function(){this._clearController(),this._containerGroup&&this._containerGroup.removeAll(),this._storage=cg(),this._state="ready",this._breadcrumb&&this._breadcrumb.remove()},t.prototype.dispose=function(){this._clearController()},t.prototype._zoomToNode=function(e){this.api.dispatchAction({type:"treemapZoomToNode",from:this.uid,seriesId:this.seriesModel.id,targetNode:e.node})},t.prototype._rootToNode=function(e){this.api.dispatchAction({type:"treemapRootToNode",from:this.uid,seriesId:this.seriesModel.id,targetNode:e.node})},t.prototype.findTarget=function(e,n){var a,o=this.seriesModel.getViewRoot();return o.eachNode({attr:"viewChildren",order:"preorder"},function(i){var u=this._storage.background[i.getRawIndex()];if(u){var l=u.transformCoordToLocal(e,n),f=u.shape;if(f.x<=l[0]&&l[0]<=f.x+f.width&&f.y<=l[1]&&l[1]<=f.y+f.height)a={node:i,offsetX:l[0],offsetY:l[1]};else return!1}},this),a},t.type="treemap",t})(me);function cg(){return{nodeGroup:[],background:[],content:[]}}function rht(r,t,e,n,a,o,i,u,l,f){if(!i)return;var s=i.getLayout(),c=r.getData(),p=i.getModel();if(c.setItemGraphicEl(i.dataIndex,null),!s||!s.isInView)return;var v=s.width,d=s.height,m=s.borderWidth,h=s.invisible,_=i.getRawIndex(),g=u&&u.getRawIndex(),y=i.viewChildren,D=s.upperHeight,b=y&&y.length,C=p.getModel("itemStyle"),x=p.getModel(["emphasis","itemStyle"]),w=p.getModel(["blur","itemStyle"]),S=p.getModel(["select","itemStyle"]),E=C.get("borderRadius")||0,M=ot("nodeGroup",qF);if(!M)return;if(l.add(M),M.x=s.x||0,M.y=s.y||0,M.markRedraw(),FT(M).nodeWidth=v,FT(M).nodeHeight=d,s.isAboveViewRoot)return M;var I=ot("background",u8,f,Kmt);I&&G(M,I,b&&s.upperLabelHeight);var F=p.getModel("emphasis"),L=F.get("focus"),R=F.get("blurScope"),P=F.get("disabled"),k=L==="ancestor"?i.getAncestorsIndices():L==="descendant"?i.getDescendantIndices():L;if(b)Af(M)&&vl(M,!1),I&&(vl(I,!P),c.setItemGraphicEl(i.dataIndex,I),pb(I,k,R));else{var H=ot("content",u8,f,tht);H&&j(M,H),I.disableMorphing=!0,I&&Af(I)&&vl(I,!1),vl(M,!P),c.setItemGraphicEl(i.dataIndex,M),pb(M,k,R)}return M;function G(ut,$,Ct){var ct=vt($);if(ct.dataIndex=i.dataIndex,ct.seriesIndex=r.seriesIndex,$.setShape({x:0,y:0,width:v,height:d,r:E}),h)rt($);else{$.invisible=!1;var ft=i.getVisual("style"),It=ft.stroke,re=c8(C);re.fill=It;var Bt=Vc(x);Bt.fill=x.get("borderColor");var rr=Vc(w);rr.fill=w.get("borderColor");var Ge=Vc(S);if(Ge.fill=S.get("borderColor"),Ct){var Sr=v-2*m;xt($,It,ft.opacity,{x:m,y:0,width:Sr,height:D})}else $.removeTextContent();$.setStyle(re),$.ensureState("emphasis").style=Bt,$.ensureState("blur").style=rr,$.ensureState("select").style=Ge,xi($)}ut.add($)}function j(ut,$){var Ct=vt($);Ct.dataIndex=i.dataIndex,Ct.seriesIndex=r.seriesIndex;var ct=Math.max(v-2*m,0),ft=Math.max(d-2*m,0);if($.culling=!0,$.setShape({x:m,y:m,width:ct,height:ft,r:E}),h)rt($);else{$.invisible=!1;var It=i.getVisual("style"),re=It.fill,Bt=c8(C);Bt.fill=re,Bt.decal=It.decal;var rr=Vc(x),Ge=Vc(w),Sr=Vc(S);xt($,re,It.opacity,null),$.setStyle(Bt),$.ensureState("emphasis").style=rr,$.ensureState("blur").style=Ge,$.ensureState("select").style=Sr,xi($)}ut.add($)}function rt(ut){!ut.invisible&&o.push(ut)}function xt(ut,$,Ct,ct){var ft=p.getModel(ct?s8:f8),It=cr(p.get("name"),null),re=ft.getShallow("show");Ze(ut,$e(p,ct?s8:f8),{defaultText:re?It:null,inheritColor:$,defaultOpacity:Ct,labelFetcher:r,labelDataIndex:i.dataIndex});var Bt=ut.getTextContent();if(Bt){var rr=Bt.style,Ge=rv(rr.padding||0);ct&&(ut.setTextConfig({layoutRect:ct}),Bt.disableLabelLayout=!0),Bt.beforeUpdate=function(){var Sn=Math.max((ct?ct.width:ut.shape.width)-Ge[1]-Ge[3],0),ke=Math.max((ct?ct.height:ut.shape.height)-Ge[0]-Ge[2],0);(rr.width!==Sn||rr.height!==ke)&&Bt.setStyle({width:Sn,height:ke})},rr.truncateMinChar=2,rr.lineOverflow="truncate",J(rr,ct,s);var Sr=Bt.getState("emphasis");J(Sr?Sr.style:null,ct,s)}}function J(ut,$,Ct){var ct=ut?ut.text:null;if(!$&&Ct.isLeafRoot&&ct!=null){var ft=r.get("drillDownIcon",!0);ut.text=ft?ft+" "+ct:ct}}function ot(ut,$,Ct,ct){var ft=g!=null&&e[ut][g],It=a[ut];return ft?(e[ut][g]=null,At(It,ft)):h||(ft=new $,ft instanceof Br&&(ft.z2=nht(Ct,ct)),Mt(It,ft)),t[ut][_]=ft}function At(ut,$){var Ct=ut[_]={};$ instanceof qF?(Ct.oldX=$.x,Ct.oldY=$.y):Ct.oldShape=N({},$.shape)}function Mt(ut,$){var Ct=ut[_]={},ct=i.parentNode,ft=$ instanceof at;if(ct&&(!n||n.direction==="drillDown")){var It=0,re=0,Bt=a.background[ct.getRawIndex()];!n&&Bt&&Bt.oldShape&&(It=Bt.oldShape.width,re=Bt.oldShape.height),ft?(Ct.oldX=0,Ct.oldY=re):Ct.oldShape={x:It,y:re,width:0,height:0}}Ct.fadein=!ft}}function nht(r,t){return r*Xmt+t}var p8=eht;var dg=T,aht=nt,PT=-1,QF=(function(){function r(t){var e=t.mappingMethod,n=t.type,a=this.option=lt(t);this.type=n,this.mappingMethod=e,this._normalizeData=uht[e];var o=r.visualHandlers[n];this.applyVisual=o.applyVisual,this.getColorMapper=o.getColorMapper,this._normalizedToVisual=o._normalizedToVisual[e],e==="piecewise"?(JF(a),oht(a)):e==="category"?a.categories?iht(a):JF(a,!0):(ur(e!=="linear"||a.dataExtent),JF(a))}return r.prototype.mapValueToVisual=function(t){var e=this._normalizeData(t);return this._normalizedToVisual(e,t)},r.prototype.getNormalizer=function(){return Q(this._normalizeData,this)},r.listVisualTypes=function(){return Ft(r.visualHandlers)},r.isValidType=function(t){return r.visualHandlers.hasOwnProperty(t)},r.eachVisual=function(t,e,n){nt(t)?T(t,e,n):e.call(n,t)},r.mapVisual=function(t,e,n){var a,o=O(t)?[]:nt(t)?{}:(a=!0,null);return r.eachVisual(t,function(i,u){var l=e.call(n,i,u);a?o=l:o[u]=l}),o},r.retrieveVisuals=function(t){var e={},n;return t&&dg(r.visualHandlers,function(a,o){t.hasOwnProperty(o)&&(e[o]=t[o],n=!0)}),n?e:null},r.prepareVisualTypes=function(t){if(O(t))t=t.slice();else if(aht(t)){var e=[];dg(t,function(n,a){e.push(a)}),t=e}else return[];return t.sort(function(n,a){return a==="color"&&n!=="color"&&n.indexOf("color")===0?1:-1}),t},r.dependsOn=function(t,e){return e==="color"?!!(t&&t.indexOf(e)===0):t===e},r.findPieceIndex=function(t,e,n){for(var a,o=1/0,i=0,u=e.length;i<u;i++){var l=e[i].value;if(l!=null){if(l===t||V(l)&&l===t+"")return i;n&&p(l,i)}}for(var i=0,u=e.length;i<u;i++){var f=e[i],s=f.interval,c=f.close;if(s){if(s[0]===-1/0){if(RT(c[1],t,s[1]))return i}else if(s[1]===1/0){if(RT(c[0],s[0],t))return i}else if(RT(c[0],s[0],t)&&RT(c[1],t,s[1]))return i;n&&p(s[0],i),n&&p(s[1],i)}}if(n)return t===1/0?e.length-1:t===-1/0?0:a;function p(v,d){var m=Math.abs(v-t);m<o&&(o=m,a=d)}},r.visualHandlers={color:{applyVisual:pg("color"),getColorMapper:function(){var t=this.option;return Q(t.mappingMethod==="category"?function(e,n){return!n&&(e=this._normalizeData(e)),vg.call(this,e)}:function(e,n,a){var o=!!a;return!n&&(e=this._normalizeData(e)),a=I0(e,t.parsedVisual,a),o?a:qo(a,"rgba")},this)},_normalizedToVisual:{linear:function(t){return qo(I0(t,this.option.parsedVisual),"rgba")},category:vg,piecewise:function(t,e){var n=YF.call(this,e);return n==null&&(n=qo(I0(t,this.option.parsedVisual),"rgba")),n},fixed:$c}},colorHue:LT(function(t,e){return Qs(t,e)}),colorSaturation:LT(function(t,e){return Qs(t,null,e)}),colorLightness:LT(function(t,e){return Qs(t,null,null,e)}),colorAlpha:LT(function(t,e){return Zs(t,e)}),decal:{applyVisual:pg("decal"),_normalizedToVisual:{linear:null,category:vg,piecewise:null,fixed:null}},opacity:{applyVisual:pg("opacity"),_normalizedToVisual:jF([0,1])},liftZ:{applyVisual:pg("liftZ"),_normalizedToVisual:{linear:$c,category:$c,piecewise:$c,fixed:$c}},symbol:{applyVisual:function(t,e,n){var a=this.mapValueToVisual(t);n("symbol",a)},_normalizedToVisual:{linear:v8,category:vg,piecewise:function(t,e){var n=YF.call(this,e);return n==null&&(n=v8.call(this,t)),n},fixed:$c}},symbolSize:{applyVisual:pg("symbolSize"),_normalizedToVisual:jF([0,1])}},r})();function oht(r){var t=r.pieceList;r.hasSpecialVisual=!1,T(t,function(e,n){e.originIndex=n,e.visual!=null&&(r.hasSpecialVisual=!0)})}function iht(r){var t=r.categories,e=r.categoryMap={},n=r.visual;if(dg(t,function(i,u){e[i]=u}),!O(n)){var a=[];nt(n)?dg(n,function(i,u){var l=e[u];a[l??PT]=i}):a[PT]=n,n=d8(r,a)}for(var o=t.length-1;o>=0;o--)n[o]==null&&(delete e[t[o]],t.pop())}function JF(r,t){var e=r.visual,n=[];nt(e)?dg(e,function(o){n.push(o)}):e!=null&&n.push(e);var a={color:1,symbol:1};!t&&n.length===1&&!a.hasOwnProperty(r.type)&&(n[1]=n[0]),d8(r,n)}function LT(r){return{applyVisual:function(t,e,n){var a=this.mapValueToVisual(t);n("color",r(e("color"),a))},_normalizedToVisual:jF([0,1])}}function v8(r){var t=this.option.visual;return t[Math.round(Ie(r,[0,1],[0,t.length-1],!0))]||{}}function pg(r){return function(t,e,n){n(r,this.mapValueToVisual(t))}}function vg(r){var t=this.option.visual;return t[this.option.loop&&r!==PT?r%t.length:r]}function $c(){return this.option.visual[0]}function jF(r){return{linear:function(t){return Ie(t,r,this.option.visual,!0)},category:vg,piecewise:function(t,e){var n=YF.call(this,e);return n==null&&(n=Ie(t,r,this.option.visual,!0)),n},fixed:$c}}function YF(r){var t=this.option,e=t.pieceList;if(t.hasSpecialVisual){var n=QF.findPieceIndex(r,e),a=e[n];if(a&&a.visual)return a.visual[this.type]}}function d8(r,t){return r.visual=t,r.type==="color"&&(r.parsedVisual=U(t,function(e){var n=Ln(e);return n||[0,0,0,1]})),t}var uht={linear:function(r){return Ie(r,this.option.dataExtent,[0,1],!0)},piecewise:function(r){var t=this.option.pieceList,e=QF.findPieceIndex(r,t,!0);if(e!=null)return Ie(e,[0,t.length-1],[0,1],!0)},category:function(r){var t=this.option.categories?this.option.categoryMap[r]:r;return t??PT},fixed:Ye};function RT(r,t,e){return r?t<=e:t<e}var zr=QF;var lht="itemStyle",h8=St(),_8={seriesType:"treemap",reset:function(r){var t=r.getData().tree,e=t.root;e.isRemoved()||g8(e,{},r.getViewRoot().getAncestors(),r)}};function g8(r,t,e,n){var a=r.getModel(),o=r.getLayout(),i=r.hostTree.data;if(!(!o||o.invisible||!o.isInView)){var u=a.getModel(lht),l=fht(u,t,n),f=i.ensureUniqueItemVisual(r.dataIndex,"style"),s=u.get("borderColor"),c=u.get("borderColorSaturation"),p;c!=null&&(p=m8(l),s=sht(c,p)),f.stroke=s;var v=r.viewChildren;if(!v||!v.length)p=m8(l),f.fill=p;else{var d=cht(r,a,o,u,l,v);T(v,function(m,h){if(m.depth>=e.length||m===e[m.depth]){var _=pht(a,l,m,h,d,n);g8(m,_,e,n)}})}}}function fht(r,t,e){var n=N({},t),a=e.designatedVisualItemStyle;return T(["color","colorAlpha","colorSaturation"],function(o){a[o]=t[o];var i=r.get(o);a[o]=null,i!=null&&(n[o]=i)}),n}function m8(r){var t=ZF(r,"color");if(t){var e=ZF(r,"colorAlpha"),n=ZF(r,"colorSaturation");return n&&(t=Qs(t,null,null,n)),e&&(t=Zs(t,e)),t}}function sht(r,t){return t!=null?Qs(t,null,null,r):null}function ZF(r,t){var e=r[t];if(e!=null&&e!=="none")return e}function cht(r,t,e,n,a,o){if(!(!o||!o.length)){var i=XF(t,"color")||a.color!=null&&a.color!=="none"&&(XF(t,"colorAlpha")||XF(t,"colorSaturation"));if(i){var u=t.get("visualMin"),l=t.get("visualMax"),f=e.dataExtent.slice();u!=null&&u<f[0]&&(f[0]=u),l!=null&&l>f[1]&&(f[1]=l);var s=t.get("colorMappingBy"),c={type:i.name,dataExtent:f,visual:i.range};c.type==="color"&&(s==="index"||s==="id")?(c.mappingMethod="category",c.loop=!0):c.mappingMethod="linear";var p=new zr(c);return h8(p).drColorMappingBy=s,p}}}function XF(r,t){var e=r.get(t);return O(e)&&e.length?{name:t,range:e}:null}function pht(r,t,e,n,a,o){var i=N({},t);if(a){var u=a.type,l=u==="color"&&h8(a).drColorMappingBy,f=l==="index"?n:l==="id"?o.mapIdToIndex(e.getId()):e.getValue(r.get("visualDimension"));i[u]=a.mapValueToVisual(f)}return i}var mg=Math.max,NT=Math.min,y8=ir,KF=T,b8=["itemStyle","borderWidth"],vht=["itemStyle","gapWidth"],dht=["upperLabel","show"],mht=["upperLabel","height"],C8={seriesType:"treemap",reset:function(r,t,e,n){var a=e.getWidth(),o=e.getHeight(),i=r.option,u=ze(r.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()}),l=i.size||[],f=Y(y8(u.width,l[0]),a),s=Y(y8(u.height,l[1]),o),c=n&&n.type,p=["treemapZoomToNode","treemapRootToNode"],v=Al(n,p,r),d=c==="treemapRender"||c==="treemapMove"?n.rootRect:null,m=r.getViewRoot(),h=zF(m);if(c!=="treemapMove"){var _=c==="treemapZoomToNode"?bht(r,v,m,f,s):d?[d.width,d.height]:[f,s],g=i.sort;g&&g!=="asc"&&g!=="desc"&&(g="desc");var y={squareRatio:i.squareRatio,sort:g,leafDepth:i.leafDepth};m.hostTree.clearLayouts();var D={x:0,y:0,width:_[0],height:_[1],area:_[0]*_[1]};m.setLayout(D),T8(m,y,!1,0),D=m.getLayout(),KF(h,function(C,x){var w=(h[x+1]||m).getValue();C.setLayout(N({dataExtent:[w,w],borderWidth:0,upperHeight:0},D))})}var b=r.getData().tree.root;b.setLayout(Cht(u,d,v),!0),r.setLayoutInfo(u),x8(b,new yt(-u.x,-u.y,a,o),h,m,0)}};function T8(r,t,e,n){var a,o;if(!r.isRemoved()){var i=r.getLayout();a=i.width,o=i.height;var u=r.getModel(),l=u.get(b8),f=u.get(vht)/2,s=w8(u),c=Math.max(l,s),p=l-f,v=c-f;r.setLayout({borderWidth:l,upperHeight:c,upperLabelHeight:s},!0),a=mg(a-2*p,0),o=mg(o-p-v,0);var d=a*o,m=hht(r,u,d,t,e,n);if(m.length){var h={x:p,y:v,width:a,height:o},_=NT(a,o),g=1/0,y=[];y.area=0;for(var D=0,b=m.length;D<b;){var C=m[D];y.push(C),y.area+=C.getLayout().area;var x=Dht(y,_,t.squareRatio);x<=g?(D++,g=x):(y.area-=y.pop().getLayout().area,D8(y,_,h,f,!1),_=NT(h.width,h.height),y.length=y.area=0,g=1/0)}if(y.length&&D8(y,_,h,f,!0),!e){var w=u.get("childrenVisibleMin");w!=null&&d<w&&(e=!0)}for(var D=0,b=m.length;D<b;D++)T8(m[D],t,e,n+1)}}}function hht(r,t,e,n,a,o){var i=r.children||[],u=n.sort;u!=="asc"&&u!=="desc"&&(u=null);var l=n.leafDepth!=null&&n.leafDepth<=o;if(a&&!l)return r.viewChildren=[];i=de(i,function(v){return!v.isRemoved()}),ght(i,u);var f=yht(t,i,u);if(f.sum===0)return r.viewChildren=[];if(f.sum=_ht(t,e,f.sum,u,i),f.sum===0)return r.viewChildren=[];for(var s=0,c=i.length;s<c;s++){var p=i[s].getValue()/f.sum*e;i[s].setLayout({area:p})}return l&&(i.length&&r.setLayout({isLeafRoot:!0},!0),i.length=0),r.viewChildren=i,r.setLayout({dataExtent:f.dataExtent},!0),i}function _ht(r,t,e,n,a){if(!n)return e;for(var o=r.get("visibleMin"),i=a.length,u=i,l=i-1;l>=0;l--){var f=a[n==="asc"?i-l-1:l].getValue();f/e*t<o&&(u=l,e-=f)}return n==="asc"?a.splice(0,i-u):a.splice(u,i-u),e}function ght(r,t){return t&&r.sort(function(e,n){var a=t==="asc"?e.getValue()-n.getValue():n.getValue()-e.getValue();return a===0?t==="asc"?e.dataIndex-n.dataIndex:n.dataIndex-e.dataIndex:a}),r}function yht(r,t,e){for(var n=0,a=0,o=t.length;a<o;a++)n+=t[a].getValue();var i=r.get("visualDimension"),u;return!t||!t.length?u=[NaN,NaN]:i==="value"&&e?(u=[t[t.length-1].getValue(),t[0].getValue()],e==="asc"&&u.reverse()):(u=[1/0,-1/0],KF(t,function(l){var f=l.getValue(i);f<u[0]&&(u[0]=f),f>u[1]&&(u[1]=f)})),{sum:n,dataExtent:u}}function Dht(r,t,e){for(var n=0,a=1/0,o=0,i=void 0,u=r.length;o<u;o++)i=r[o].getLayout().area,i&&(i<a&&(a=i),i>n&&(n=i));var l=r.area*r.area,f=t*t*e;return l?mg(f*n/l,l/(f*a)):1/0}function D8(r,t,e,n,a){var o=t===e.width?0:1,i=1-o,u=["x","y"],l=["width","height"],f=e[u[o]],s=t?r.area/t:0;(a||s>e[l[i]])&&(s=e[l[i]]);for(var c=0,p=r.length;c<p;c++){var v=r[c],d={},m=s?v.getLayout().area/s:0,h=d[l[i]]=mg(s-2*n,0),_=e[u[o]]+e[l[o]]-f,g=c===p-1||_<m?_:m,y=d[l[o]]=mg(g-2*n,0);d[u[i]]=e[u[i]]+NT(n,h/2),d[u[o]]=f+NT(n,y/2),f+=g,v.setLayout(d,!0)}e[u[i]]+=s,e[l[i]]-=s}function bht(r,t,e,n,a){var o=(t||{}).node,i=[n,a];if(!o||o===e)return i;for(var u,l=n*a,f=l*r.option.zoomToNodeRatio;u=o.parentNode;){for(var s=0,c=u.children,p=0,v=c.length;p<v;p++)s+=c[p].getValue();var d=o.getValue();if(d===0)return i;f*=s/d;var m=u.getModel(),h=m.get(b8),_=Math.max(h,w8(m));f+=4*h*h+(3*h+_)*Math.pow(f,.5),f>WE&&(f=WE),o=u}f<l&&(f=l);var g=Math.pow(f/l,.5);return[n*g,a*g]}function Cht(r,t,e){if(t)return{x:t.x,y:t.y};var n={x:0,y:0};if(!e)return n;var a=e.node,o=a.getLayout();if(!o)return n;for(var i=[o.width/2,o.height/2],u=a;u;){var l=u.getLayout();i[0]+=l.x,i[1]+=l.y,u=u.parentNode}return{x:r.width/2-i[0],y:r.height/2-i[1]}}function x8(r,t,e,n,a){var o=r.getLayout(),i=e[a],u=i&&i===r;if(!(i&&!u||a===e.length&&r!==n)){r.setLayout({isInView:!0,invisible:!u&&!t.intersect(o),isAboveViewRoot:u},!0);var l=new yt(t.x-o.x,t.y-o.y,t.width,t.height);KF(r.viewChildren||[],function(f){x8(f,l,e,n,a+1)})}}function w8(r){return r.get(dht)?r.get(mht):0}function tL(r){r.registerSeriesModel(n8),r.registerChartView(p8),r.registerVisual(_8),r.registerLayout(C8),e8(r)}function eL(r){var t=r.findComponents({mainType:"legend"});!t||!t.length||r.eachSeriesByType("graph",function(e){var n=e.getCategoriesData(),a=e.getGraph(),o=a.data,i=n.mapArray(n.getName);o.filterSelf(function(u){var l=o.getItemModel(u),f=l.getShallow("category");if(f!=null){Nt(f)&&(f=i[f]);for(var s=0;s<t.length;s++)if(!t[s].isSelected(f))return!1}return!0})})}function rL(r){var t={};r.eachSeriesByType("graph",function(e){var n=e.getCategoriesData(),a=e.getData(),o={};n.each(function(i){var u=n.getName(i);o["ec-"+u]=i;var l=n.getItemModel(i),f=l.getModel("itemStyle").getItemStyle();f.fill||(f.fill=e.getColorFromPalette(u,t)),n.setItemVisual(i,"style",f);for(var s=["symbol","symbolSize","symbolKeepAspect"],c=0;c<s.length;c++){var p=l.getShallow(s[c],!0);p!=null&&n.setItemVisual(i,s[c],p)}}),n.count()&&a.each(function(i){var u=a.getItemModel(i),l=u.getShallow("category");if(l!=null){V(l)&&(l=o["ec-"+l]);var f=n.getItemVisual(l,"style"),s=a.ensureUniqueItemVisual(i,"style");N(s,f);for(var c=["symbol","symbolSize","symbolKeepAspect"],p=0;p<c.length;p++)a.setItemVisual(i,c[p],n.getItemVisual(l,c[p]))}})})}function OT(r){return r instanceof Array||(r=[r,r]),r}function nL(r){r.eachSeriesByType("graph",function(t){var e=t.getGraph(),n=t.getEdgeData(),a=OT(t.get("edgeSymbol")),o=OT(t.get("edgeSymbolSize"));n.setVisual("fromSymbol",a&&a[0]),n.setVisual("toSymbol",a&&a[1]),n.setVisual("fromSymbolSize",o&&o[0]),n.setVisual("toSymbolSize",o&&o[1]),n.setVisual("style",t.getModel("lineStyle").getLineStyle()),n.each(function(i){var u=n.getItemModel(i),l=e.getEdgeByIndex(i),f=OT(u.getShallow("symbol",!0)),s=OT(u.getShallow("symbolSize",!0)),c=u.getModel("lineStyle").getLineStyle(),p=n.ensureUniqueItemVisual(i,"style");switch(N(p,c),p.stroke){case"source":{var v=l.node1.getVisual("style");p.stroke=v&&v.fill;break}case"target":{var v=l.node2.getVisual("style");p.stroke=v&&v.fill;break}}f[0]&&l.setVisual("fromSymbol",f[0]),f[1]&&l.setVisual("toSymbol",f[1]),s[0]&&l.setVisual("fromSymbolSize",s[0]),s[1]&&l.setVisual("toSymbolSize",s[1])})})}var aL="-->",UT=function(r){return r.get("autoCurveness")||null},S8=function(r,t){var e=UT(r),n=20,a=[];if(Nt(e))n=e;else if(O(e)){r.__curvenessList=e;return}t>n&&(n=t);var o=n%2?n+2:n+3;a=[];for(var i=0;i<o;i++)a.push((i%2?i+1:i)/10*(i%2?-1:1));r.__curvenessList=a},hg=function(r,t,e){var n=[r.id,r.dataIndex].join("."),a=[t.id,t.dataIndex].join(".");return[e.uid,n,a].join(aL)},E8=function(r){var t=r.split(aL);return[t[0],t[2],t[1]].join(aL)},Tht=function(r,t){var e=hg(r.node1,r.node2,t);return t.__edgeMap[e]},xht=function(r,t){var e=oL(hg(r.node1,r.node2,t),t),n=oL(hg(r.node2,r.node1,t),t);return e+n},oL=function(r,t){var e=t.__edgeMap;return e[r]?e[r].length:0};function M8(r){UT(r)&&(r.__curvenessList=[],r.__edgeMap={},S8(r))}function A8(r,t,e,n){if(UT(e)){var a=hg(r,t,e),o=e.__edgeMap,i=o[E8(a)];o[a]&&!i?o[a].isForward=!0:i&&o[a]&&(i.isForward=!0,o[a].isForward=!1),o[a]=o[a]||[],o[a].push(n)}}function ld(r,t,e,n){var a=UT(t),o=O(a);if(!a)return null;var i=Tht(r,t);if(!i)return null;for(var u=-1,l=0;l<i.length;l++)if(i[l]===e){u=l;break}var f=xht(r,t);S8(t,f),r.lineStyle=r.lineStyle||{};var s=hg(r.node1,r.node2,t),c=t.__curvenessList,p=o||f%2?0:1;if(i.isForward)return c[p+u];var v=E8(s),d=oL(v,t),m=c[u+d+p];return n?o?a&&a[0]===0?(d+p)%2?m:-m:((d%2?0:1)+p)%2?m:-m:(d+p)%2?m:-m:c[u+d+p]}function HT(r){var t=r.coordinateSystem;if(!(t&&t.type!=="view")){var e=r.getGraph();e.eachNode(function(n){var a=n.getModel();n.setLayout([+a.get("x"),+a.get("y")])}),_g(e,r)}}function _g(r,t){r.eachEdge(function(e,n){var a=gn(e.getModel().get(["lineStyle","curveness"]),-ld(e,t,n,!0),0),o=Va(e.node1.getLayout()),i=Va(e.node2.getLayout()),u=[o,i];+a&&u.push([(o[0]+i[0])/2-(o[1]-i[1])*a,(o[1]+i[1])/2-(i[0]-o[0])*a]),e.setLayout(u)})}function iL(r,t){r.eachSeriesByType("graph",function(e){var n=e.get("layout"),a=e.coordinateSystem;if(a&&a.type!=="view"){var o=e.getData(),i=[];T(a.dimensions,function(p){i=i.concat(o.mapDimensionsAll(p))});for(var u=0;u<o.count();u++){for(var l=[],f=!1,s=0;s<i.length;s++){var c=o.get(i[s],u);isNaN(c)||(f=!0),l.push(c)}f?o.setItemLayout(u,a.dataToPoint(l)):o.setItemLayout(u,[NaN,NaN])}_g(o.graph,e)}else(!n||n==="none")&&HT(e)})}function qc(r){var t=r.coordinateSystem;if(t.type!=="view")return 1;var e=r.option.nodeScaleRatio,n=t.scaleX,a=t.getZoom(),o=(a-1)*e+1;return o/n}function Jc(r){var t=r.getVisual("symbolSize");return t instanceof Array&&(t=(t[0]+t[1])/2),+t}var I8=Math.PI,uL=[];function fd(r,t,e,n){var a=r.coordinateSystem;if(!(a&&a.type!=="view")){var o=a.getBoundingRect(),i=r.getData(),u=i.graph,l=o.width/2+o.x,f=o.height/2+o.y,s=Math.min(o.width,o.height)/2,c=i.count();if(i.setLayout({cx:l,cy:f}),!!c){if(e){var p=a.pointToData(n),v=p[0],d=p[1],m=[v-l,d-f];zo(m,m),av(m,m,s),e.setLayout([l+m[0],f+m[1]],!0);var h=r.get(["circular","rotateLabel"]);lL(e,h,l,f)}wht[t](r,u,i,s,l,f,c),u.eachEdge(function(_,g){var y=gn(_.getModel().get(["lineStyle","curveness"]),ld(_,r,g),0),D=Va(_.node1.getLayout()),b=Va(_.node2.getLayout()),C,x=(D[0]+b[0])/2,w=(D[1]+b[1])/2;+y&&(y*=3,C=[l*y+x*(1-y),f*y+w*(1-y)]),_.setLayout([D,b,C])})}}}var wht={value:function(r,t,e,n,a,o,i){var u=0,l=e.getSum("value"),f=Math.PI*2/(l||i);t.eachNode(function(s){var c=s.getValue("value"),p=f*(l?c:1)/2;u+=p,s.setLayout([n*Math.cos(u)+a,n*Math.sin(u)+o]),u+=p})},symbolSize:function(r,t,e,n,a,o,i){var u=0;uL.length=i;var l=qc(r);t.eachNode(function(c){var p=Jc(c);isNaN(p)&&(p=2),p<0&&(p=0),p*=l;var v=Math.asin(p/2/n);isNaN(v)&&(v=I8/2),uL[c.dataIndex]=v,u+=v*2});var f=(2*I8-u)/i/2,s=0;t.eachNode(function(c){var p=f+uL[c.dataIndex];s+=p,(!c.getLayout()||!c.getLayout().fixed)&&c.setLayout([n*Math.cos(s)+a,n*Math.sin(s)+o]),s+=p})}};function lL(r,t,e,n){var a=r.getGraphicEl();if(a){var o=r.getModel(),i=o.get(["label","rotate"])||0,u=a.getSymbolPath();if(t){var l=r.getLayout(),f=Math.atan2(l[1]-n,l[0]-e);f<0&&(f=Math.PI*2+f);var s=l[0]<e;s&&(f=f-Math.PI);var c=s?"left":"right";u.setTextConfig({rotation:-f,position:c,origin:"center"});var p=u.ensureState("emphasis");N(p.textConfig||(p.textConfig={}),{position:c})}else u.setTextConfig({rotation:i*=Math.PI/180})}}function fL(r){r.eachSeriesByType("graph",function(t){t.get("layout")==="circular"&&fd(t,"symbolSize")})}var sd=wh;function F8(r,t,e){for(var n=r,a=t,o=e.rect,i=o.width,u=o.height,l=[o.x+i/2,o.y+u/2],f=e.gravity==null?.1:e.gravity,s=0;s<n.length;s++){var c=n[s];c.p||(c.p=su(i*(Math.random()-.5)+l[0],u*(Math.random()-.5)+l[1])),c.pp=Va(c.p),c.edges=null}var p=e.friction==null?.6:e.friction,v=p,d,m;return{warmUp:function(){v=p*.8},setFixed:function(h){n[h].fixed=!0},setUnfixed:function(h){n[h].fixed=!1},beforeStep:function(h){d=h},afterStep:function(h){m=h},step:function(h){d&&d(n,a);for(var _=[],g=n.length,y=0;y<a.length;y++){var D=a[y];if(!D.ignoreForceLayout){var b=D.n1,C=D.n2;Di(_,C.p,b.p);var x=p0(_)-D.d,w=C.w/(b.w+C.w);isNaN(w)&&(w=0),zo(_,_),!b.fixed&&sd(b.p,b.p,_,w*x*v),!C.fixed&&sd(C.p,C.p,_,-(1-w)*x*v)}}for(var y=0;y<g;y++){var S=n[y];S.fixed||(Di(_,l,S.p),sd(S.p,S.p,_,f*v))}for(var y=0;y<g;y++)for(var b=n[y],E=y+1;E<g;E++){var C=n[E];Di(_,C.p,b.p);var x=p0(_);x===0&&(xz(_,Math.random()-.5,Math.random()-.5),x=1);var M=(b.rep+C.rep)/x/x;!b.fixed&&sd(b.pp,b.pp,_,M),!C.fixed&&sd(C.pp,C.pp,_,-M)}for(var I=[],y=0;y<g;y++){var S=n[y];S.fixed||(Di(I,S.p,S.pp),sd(S.p,S.p,I,v),Dn(S.pp,S.p))}v=v*.992;var F=v<.01;m&&m(n,a,F),h&&h(F)}}}function sL(r){r.eachSeriesByType("graph",function(t){var e=t.coordinateSystem;if(!(e&&e.type!=="view"))if(t.get("layout")==="force"){var n=t.preservedPoints||{},a=t.getGraph(),o=a.data,i=a.edgeData,u=t.getModel("force"),l=u.get("initLayout");t.preservedPoints?o.each(function(y){var D=o.getId(y);o.setItemLayout(y,n[D]||[NaN,NaN])}):!l||l==="none"?HT(t):l==="circular"&&fd(t,"value");var f=o.getDataExtent("value"),s=i.getDataExtent("value"),c=u.get("repulsion"),p=u.get("edgeLength"),v=O(c)?c:[c,c],d=O(p)?p:[p,p];d=[d[1],d[0]];var m=o.mapArray("value",function(y,D){var b=o.getItemLayout(D),C=Ie(y,f,v);return isNaN(C)&&(C=(v[0]+v[1])/2),{w:C,rep:C,fixed:o.getItemModel(D).get("fixed"),p:!b||isNaN(b[0])||isNaN(b[1])?null:b}}),h=i.mapArray("value",function(y,D){var b=a.getEdgeByIndex(D),C=Ie(y,s,d);isNaN(C)&&(C=(d[0]+d[1])/2);var x=b.getModel(),w=gn(b.getModel().get(["lineStyle","curveness"]),-ld(b,t,D,!0),0);return{n1:m[b.node1.dataIndex],n2:m[b.node2.dataIndex],d:C,curveness:w,ignoreForceLayout:x.get("ignoreForceLayout")}}),_=e.getBoundingRect(),g=F8(m,h,{rect:_,gravity:u.get("gravity"),friction:u.get("friction")});g.beforeStep(function(y,D){for(var b=0,C=y.length;b<C;b++)y[b].fixed&&Dn(y[b].p,a.getNodeByIndex(b).getLayout())}),g.afterStep(function(y,D,b){for(var C=0,x=y.length;C<x;C++)y[C].fixed||a.getNodeByIndex(C).setLayout(y[C].p),n[o.getId(C)]=y[C].p;for(var C=0,x=D.length;C<x;C++){var w=D[C],S=a.getEdgeByIndex(C),E=w.n1.p,M=w.n2.p,I=S.getLayout();I=I?I.slice():[],I[0]=I[0]||[],I[1]=I[1]||[],Dn(I[0],E),Dn(I[1],M),+w.curveness&&(I[2]=[(E[0]+M[0])/2-(E[1]-M[1])*w.curveness,(E[1]+M[1])/2-(M[0]-E[0])*w.curveness]),S.setLayout(I)}}),t.forceLayout=g,t.preservedPoints=n,g.step()}else t.forceLayout=null})}function Sht(r,t,e){var n=N(r.getBoxLayoutParams(),{aspect:e});return ze(n,{width:t.getWidth(),height:t.getHeight()})}function cL(r,t){var e=[];return r.eachSeriesByType("graph",function(n){var a=n.get("coordinateSystem");if(!a||a==="view"){var o=n.getData(),i=o.mapArray(function(h){var _=o.getItemModel(h);return[+_.get("x"),+_.get("y")]}),u=[],l=[];fc(i,u,l),l[0]-u[0]===0&&(l[0]+=1,u[0]-=1),l[1]-u[1]===0&&(l[1]+=1,u[1]-=1);var f=(l[0]-u[0])/(l[1]-u[1]),s=Sht(n,t,f);isNaN(f)&&(u=[s.x,s.y],l=[s.x+s.width,s.y+s.height]);var c=l[0]-u[0],p=l[1]-u[1],v=s.width,d=s.height,m=n.coordinateSystem=new Ml;m.zoomLimit=n.get("scaleLimit"),m.setBoundingRect(u[0],u[1],c,p),m.setViewRect(s.x,s.y,v,d),m.setCenter(n.get("center"),t),m.setZoom(n.get("zoom")),e.push(m)}}),e}var L8=mr.prototype,pL=yc.prototype,R8=(function(){function r(){this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.percent=1}return r})(),I_e=(function(r){A(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return t})(R8);function vL(r){return isNaN(+r.cpx1)||isNaN(+r.cpy1)}var Eht=(function(r){A(t,r);function t(e){var n=r.call(this,e)||this;return n.type="ec-line",n}return t.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},t.prototype.getDefaultShape=function(){return new R8},t.prototype.buildPath=function(e,n){vL(n)?L8.buildPath.call(this,e,n):pL.buildPath.call(this,e,n)},t.prototype.pointAt=function(e){return vL(this.shape)?L8.pointAt.call(this,e):pL.pointAt.call(this,e)},t.prototype.tangentAt=function(e){var n=this.shape,a=vL(n)?[n.x2-n.x1,n.y2-n.y1]:pL.tangentAt.call(this,e);return zo(a,a)},t})(bt),P8=Eht;var dL=["fromSymbol","toSymbol"];function N8(r){return"_"+r+"Type"}function O8(r,t,e){var n=t.getItemVisual(e,r);if(!n||n==="none")return n;var a=t.getItemVisual(e,r+"Size"),o=t.getItemVisual(e,r+"Rotate"),i=t.getItemVisual(e,r+"Offset"),u=t.getItemVisual(e,r+"KeepAspect"),l=Pi(a),f=Eo(i||0,l);return n+l+f+(o||"")+(u||"")}function U8(r,t,e){var n=t.getItemVisual(e,r);if(!(!n||n==="none")){var a=t.getItemVisual(e,r+"Size"),o=t.getItemVisual(e,r+"Rotate"),i=t.getItemVisual(e,r+"Offset"),u=t.getItemVisual(e,r+"KeepAspect"),l=Pi(a),f=Eo(i||0,l),s=We(n,-l[0]/2+f[0],-l[1]/2+f[1],l[0],l[1],null,u);return s.__specifiedRotation=o==null||isNaN(o)?void 0:+o*Math.PI/180||0,s.name=r,s}}function Mht(r){var t=new P8({name:"line",subPixelOptimize:!0});return mL(t.shape,r),t}function mL(r,t){r.x1=t[0][0],r.y1=t[0][1],r.x2=t[1][0],r.y2=t[1][1],r.percent=1;var e=t[2];e?(r.cpx1=e[0],r.cpy1=e[1]):(r.cpx1=NaN,r.cpy1=NaN)}var Aht=(function(r){A(t,r);function t(e,n,a){var o=r.call(this)||this;return o._createLine(e,n,a),o}return t.prototype._createLine=function(e,n,a){var o=e.hostModel,i=e.getItemLayout(n),u=Mht(i);u.shape.percent=0,Ae(u,{shape:{percent:1}},o,n),this.add(u),T(dL,function(l){var f=U8(l,e,n);this.add(f),this[N8(l)]=O8(l,e,n)},this),this._updateCommonStl(e,n,a)},t.prototype.updateData=function(e,n,a){var o=e.hostModel,i=this.childOfName("line"),u=e.getItemLayout(n),l={shape:{}};mL(l.shape,u),$t(i,l,o,n),T(dL,function(f){var s=O8(f,e,n),c=N8(f);if(this[c]!==s){this.remove(this.childOfName(f));var p=U8(f,e,n);this.add(p)}this[c]=s},this),this._updateCommonStl(e,n,a)},t.prototype.getLinePath=function(){return this.childAt(0)},t.prototype._updateCommonStl=function(e,n,a){var o=e.hostModel,i=this.childOfName("line"),u=a&&a.emphasisLineStyle,l=a&&a.blurLineStyle,f=a&&a.selectLineStyle,s=a&&a.labelStatesModels,c=a&&a.emphasisDisabled,p=a&&a.focus,v=a&&a.blurScope;if(!a||e.hasItemOption){var d=e.getItemModel(n),m=d.getModel("emphasis");u=m.getModel("lineStyle").getLineStyle(),l=d.getModel(["blur","lineStyle"]).getLineStyle(),f=d.getModel(["select","lineStyle"]).getLineStyle(),c=m.get("disabled"),p=m.get("focus"),v=m.get("blurScope"),s=$e(d)}var h=e.getItemVisual(n,"style"),_=h.stroke;i.useStyle(h),i.style.fill=null,i.style.strokeNoScale=!0,i.ensureState("emphasis").style=u,i.ensureState("blur").style=l,i.ensureState("select").style=f,T(dL,function(C){var x=this.childOfName(C);if(x){x.setColor(_),x.style.opacity=h.opacity;for(var w=0;w<sn.length;w++){var S=sn[w],E=i.getState(S);if(E){var M=E.style||{},I=x.ensureState(S),F=I.style||(I.style={});M.stroke!=null&&(F[x.__isEmptyBrush?"stroke":"fill"]=M.stroke),M.opacity!=null&&(F.opacity=M.opacity)}}x.markRedraw()}},this);var g=o.getRawValue(n);Ze(this,s,{labelDataIndex:n,labelFetcher:{getFormattedLabel:function(C,x){return o.getFormattedLabel(C,x,e.dataType)}},inheritColor:_||"#000",defaultOpacity:h.opacity,defaultText:(g==null?e.getName(n):isFinite(g)?Qe(g):g)+""});var y=this.getTextContent();if(y){var D=s.normal;y.__align=y.style.align,y.__verticalAlign=y.style.verticalAlign,y.__position=D.get("position")||"middle";var b=D.get("distance");O(b)||(b=[b,b]),y.__labelDistance=b}this.setTextConfig({position:null,local:!0,inside:!1}),Me(this,p,v,c)},t.prototype.highlight=function(){fa(this)},t.prototype.downplay=function(){sa(this)},t.prototype.updateLayout=function(e,n){this.setLinePoints(e.getItemLayout(n))},t.prototype.setLinePoints=function(e){var n=this.childOfName("line");mL(n.shape,e),n.dirty()},t.prototype.beforeUpdate=function(){var e=this,n=e.childOfName("fromSymbol"),a=e.childOfName("toSymbol"),o=e.getTextContent();if(!n&&!a&&(!o||o.ignore))return;for(var i=1,u=this.parent;u;)u.scaleX&&(i/=u.scaleX),u=u.parent;var l=e.childOfName("line");if(!this.__dirty&&!l.__dirty)return;var f=l.shape.percent,s=l.pointAt(0),c=l.pointAt(f),p=Di([],c,s);zo(p,p);function v(E,M){var I=E.__specifiedRotation;if(I==null){var F=l.tangentAt(M);E.attr("rotation",(M===1?-1:1)*Math.PI/2-Math.atan2(F[1],F[0]))}else E.attr("rotation",I)}if(n&&(n.setPosition(s),v(n,0),n.scaleX=n.scaleY=i*f,n.markRedraw()),a&&(a.setPosition(c),v(a,1),a.scaleX=a.scaleY=i*f,a.markRedraw()),o&&!o.ignore){o.x=o.y=0,o.originX=o.originY=0;var d=void 0,m=void 0,h=o.__labelDistance,_=h[0]*i,g=h[1]*i,y=f/2,D=l.tangentAt(y),b=[D[1],-D[0]],C=l.pointAt(y);b[1]>0&&(b[0]=-b[0],b[1]=-b[1]);var x=D[0]<0?-1:1;if(o.__position!=="start"&&o.__position!=="end"){var w=-Math.atan2(D[1],D[0]);c[0]<s[0]&&(w=Math.PI+w),o.rotation=w}var S=void 0;switch(o.__position){case"insideStartTop":case"insideMiddleTop":case"insideEndTop":case"middle":S=-g,m="bottom";break;case"insideStartBottom":case"insideMiddleBottom":case"insideEndBottom":S=g,m="top";break;default:S=0,m="middle"}switch(o.__position){case"end":o.x=p[0]*_+c[0],o.y=p[1]*g+c[1],d=p[0]>.8?"left":p[0]<-.8?"right":"center",m=p[1]>.8?"top":p[1]<-.8?"bottom":"middle";break;case"start":o.x=-p[0]*_+s[0],o.y=-p[1]*g+s[1],d=p[0]>.8?"right":p[0]<-.8?"left":"center",m=p[1]>.8?"bottom":p[1]<-.8?"top":"middle";break;case"insideStartTop":case"insideStart":case"insideStartBottom":o.x=_*x+s[0],o.y=s[1]+S,d=D[0]<0?"right":"left",o.originX=-_*x,o.originY=-S;break;case"insideMiddleTop":case"insideMiddle":case"insideMiddleBottom":case"middle":o.x=C[0],o.y=C[1]+S,d="center",o.originY=-S;break;case"insideEndTop":case"insideEnd":case"insideEndBottom":o.x=-_*x+c[0],o.y=c[1]+S,d=D[0]>=0?"right":"left",o.originX=_*x,o.originY=-S;break}o.scaleX=o.scaleY=i,o.setStyle({verticalAlign:o.__verticalAlign||m,align:o.__align||d})}},t})(at),cd=Aht;var Iht=(function(){function r(t){this.group=new at,this._LineCtor=t||cd}return r.prototype.updateData=function(t){var e=this;this._progressiveEls=null;var n=this,a=n.group,o=n._lineData;n._lineData=t,o||a.removeAll();var i=H8(t);t.diff(o).add(function(u){e._doAdd(t,u,i)}).update(function(u,l){e._doUpdate(o,t,l,u,i)}).remove(function(u){a.remove(o.getItemGraphicEl(u))}).execute()},r.prototype.updateLayout=function(){var t=this._lineData;t&&t.eachItemGraphicEl(function(e,n){e.updateLayout(t,n)},this)},r.prototype.incrementalPrepareUpdate=function(t){this._seriesScope=H8(t),this._lineData=null,this.group.removeAll()},r.prototype.incrementalUpdate=function(t,e){this._progressiveEls=[];function n(u){!u.isGroup&&!Fht(u)&&(u.incremental=!0,u.ensureState("emphasis").hoverLayer=!0)}for(var a=t.start;a<t.end;a++){var o=e.getItemLayout(a);if(hL(o)){var i=new this._LineCtor(e,a,this._seriesScope);i.traverse(n),this.group.add(i),e.setItemGraphicEl(a,i),this._progressiveEls.push(i)}}},r.prototype.remove=function(){this.group.removeAll()},r.prototype.eachRendered=function(t){Sa(this._progressiveEls||this.group,t)},r.prototype._doAdd=function(t,e,n){var a=t.getItemLayout(e);if(hL(a)){var o=new this._LineCtor(t,e,n);t.setItemGraphicEl(e,o),this.group.add(o)}},r.prototype._doUpdate=function(t,e,n,a,o){var i=t.getItemGraphicEl(n);if(!hL(e.getItemLayout(a))){this.group.remove(i);return}i?i.updateData(e,a,o):i=new this._LineCtor(e,a,o),e.setItemGraphicEl(a,i),this.group.add(i)},r})();function Fht(r){return r.animators&&r.animators.length>0}function H8(r){var t=r.hostModel,e=t.getModel("emphasis");return{lineStyle:t.getModel("lineStyle").getLineStyle(),emphasisLineStyle:e.getModel(["lineStyle"]).getLineStyle(),blurLineStyle:t.getModel(["blur","lineStyle"]).getLineStyle(),selectLineStyle:t.getModel(["select","lineStyle"]).getLineStyle(),emphasisDisabled:e.get("disabled"),blurScope:e.get("blurScope"),focus:e.get("focus"),labelStatesModels:$e(t)}}function k8(r){return isNaN(r[0])||isNaN(r[1])}function hL(r){return r&&!k8(r[0])&&!k8(r[1])}var pd=Iht;var _L=[],gL=[],yL=[],vd=Gr,DL=il,z8=Math.abs;function W8(r,t,e){for(var n=r[0],a=r[1],o=r[2],i=1/0,u,l=e*e,f=.1,s=.1;s<=.9;s+=.1){_L[0]=vd(n[0],a[0],o[0],s),_L[1]=vd(n[1],a[1],o[1],s);var c=z8(DL(_L,t)-l);c<i&&(i=c,u=s)}for(var p=0;p<32;p++){var v=u+f;gL[0]=vd(n[0],a[0],o[0],u),gL[1]=vd(n[1],a[1],o[1],u),yL[0]=vd(n[0],a[0],o[0],v),yL[1]=vd(n[1],a[1],o[1],v);var c=DL(gL,t)-l;if(z8(c)<.01)break;var d=DL(yL,t)-l;f/=2,c<0?d>=0?u=u+f:u=u-f:d>=0?u=u-f:u=u+f}return u}function gg(r,t){var e=[],n=_f,a=[[],[],[]],o=[[],[]],i=[];t/=2,r.eachEdge(function(u,l){var f=u.getLayout(),s=u.getVisual("fromSymbol"),c=u.getVisual("toSymbol");f.__original||(f.__original=[Va(f[0]),Va(f[1])],f[2]&&f.__original.push(Va(f[2])));var p=f.__original;if(f[2]!=null){if(Dn(a[0],p[0]),Dn(a[1],p[2]),Dn(a[2],p[1]),s&&s!=="none"){var v=Jc(u.node1),d=W8(a,p[0],v*t);n(a[0][0],a[1][0],a[2][0],d,e),a[0][0]=e[3],a[1][0]=e[4],n(a[0][1],a[1][1],a[2][1],d,e),a[0][1]=e[3],a[1][1]=e[4]}if(c&&c!=="none"){var v=Jc(u.node2),d=W8(a,p[1],v*t);n(a[0][0],a[1][0],a[2][0],d,e),a[1][0]=e[1],a[2][0]=e[2],n(a[0][1],a[1][1],a[2][1],d,e),a[1][1]=e[1],a[2][1]=e[2]}Dn(f[0],a[0]),Dn(f[1],a[2]),Dn(f[2],a[1])}else{if(Dn(o[0],p[0]),Dn(o[1],p[1]),Di(i,o[1],o[0]),zo(i,i),s&&s!=="none"){var v=Jc(u.node1);wh(o[0],o[0],i,v*t)}if(c&&c!=="none"){var v=Jc(u.node2);wh(o[1],o[1],i,-v*t)}Dn(f[0],o[0]),Dn(f[1],o[1])}})}function G8(r){return r.type==="view"}var Lht=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.init=function(e,n){var a=new Au,o=new pd,i=this.group;this._controller=new Ru(n.getZr()),this._controllerHost={target:i},i.add(a.group),i.add(o.group),this._symbolDraw=a,this._lineDraw=o,this._firstRender=!0},t.prototype.render=function(e,n,a){var o=this,i=e.coordinateSystem;this._model=e;var u=this._symbolDraw,l=this._lineDraw,f=this.group;if(G8(i)){var s={x:i.x,y:i.y,scaleX:i.scaleX,scaleY:i.scaleY};this._firstRender?f.attr(s):$t(f,s,e)}gg(e.getGraph(),qc(e));var c=e.getData();u.updateData(c);var p=e.getEdgeData();l.updateData(p),this._updateNodeAndLinkScale(),this._updateController(e,n,a),clearTimeout(this._layoutTimeout);var v=e.forceLayout,d=e.get(["force","layoutAnimation"]);v&&this._startForceLayoutIteration(v,d);var m=e.get("layout");c.graph.eachNode(function(y){var D=y.dataIndex,b=y.getGraphicEl(),C=y.getModel();if(b){b.off("drag").off("dragend");var x=C.get("draggable");x&&b.on("drag",function(S){switch(m){case"force":v.warmUp(),!o._layouting&&o._startForceLayoutIteration(v,d),v.setFixed(D),c.setItemLayout(D,[b.x,b.y]);break;case"circular":c.setItemLayout(D,[b.x,b.y]),y.setLayout({fixed:!0},!0),fd(e,"symbolSize",y,[S.offsetX,S.offsetY]),o.updateLayout(e);break;default:c.setItemLayout(D,[b.x,b.y]),_g(e.getGraph(),e),o.updateLayout(e);break}}).on("dragend",function(){v&&v.setUnfixed(D)}),b.setDraggable(x,!!C.get("cursor"));var w=C.get(["emphasis","focus"]);w==="adjacency"&&(vt(b).focus=y.getAdjacentDataIndices())}}),c.graph.eachEdge(function(y){var D=y.getGraphicEl(),b=y.getModel().get(["emphasis","focus"]);D&&b==="adjacency"&&(vt(D).focus={edge:[y.dataIndex],node:[y.node1.dataIndex,y.node2.dataIndex]})});var h=e.get("layout")==="circular"&&e.get(["circular","rotateLabel"]),_=c.getLayout("cx"),g=c.getLayout("cy");c.graph.eachNode(function(y){lL(y,h,_,g)}),this._firstRender=!1},t.prototype.dispose=function(){this.remove(),this._controller&&this._controller.dispose(),this._controllerHost=null},t.prototype._startForceLayoutIteration=function(e,n){var a=this;(function o(){e.step(function(i){a.updateLayout(a._model),(a._layouting=!i)&&(n?a._layoutTimeout=setTimeout(o,16):o())})})()},t.prototype._updateController=function(e,n,a){var o=this,i=this._controller,u=this._controllerHost,l=this.group;if(i.setPointerChecker(function(f,s,c){var p=l.getBoundingRect();return p.applyTransform(l.transform),p.contain(s,c)&&!jf(f,a,e)}),!G8(e.coordinateSystem)){i.disable();return}i.enable(e.get("roam")),u.zoomLimit=e.get("scaleLimit"),u.zoom=e.coordinateSystem.getZoom(),i.off("pan").off("zoom").on("pan",function(f){rd(u,f.dx,f.dy),a.dispatchAction({seriesId:e.id,type:"graphRoam",dx:f.dx,dy:f.dy})}).on("zoom",function(f){nd(u,f.scale,f.originX,f.originY),a.dispatchAction({seriesId:e.id,type:"graphRoam",zoom:f.scale,originX:f.originX,originY:f.originY}),o._updateNodeAndLinkScale(),gg(e.getGraph(),qc(e)),o._lineDraw.updateLayout(),a.updateLabelLayout()})},t.prototype._updateNodeAndLinkScale=function(){var e=this._model,n=e.getData(),a=qc(e);n.eachItemGraphicEl(function(o,i){o&&o.setSymbolScale(a)})},t.prototype.updateLayout=function(e){gg(e.getGraph(),qc(e)),this._symbolDraw.updateLayout(),this._lineDraw.updateLayout()},t.prototype.remove=function(){clearTimeout(this._layoutTimeout),this._layouting=!1,this._layoutTimeout=null,this._symbolDraw&&this._symbolDraw.remove(),this._lineDraw&&this._lineDraw.remove()},t.type="graph",t})(me),B8=Lht;function dd(r){return"_EC_"+r}var Rht=(function(){function r(t){this.type="graph",this.nodes=[],this.edges=[],this._nodesMap={},this._edgesMap={},this._directed=t||!1}return r.prototype.isDirected=function(){return this._directed},r.prototype.addNode=function(t,e){t=t==null?""+e:""+t;var n=this._nodesMap;if(!n[dd(t)]){var a=new jc(t,e);return a.hostGraph=this,this.nodes.push(a),n[dd(t)]=a,a}},r.prototype.getNodeByIndex=function(t){var e=this.data.getRawIndex(t);return this.nodes[e]},r.prototype.getNodeById=function(t){return this._nodesMap[dd(t)]},r.prototype.addEdge=function(t,e,n){var a=this._nodesMap,o=this._edgesMap;if(Nt(t)&&(t=this.nodes[t]),Nt(e)&&(e=this.nodes[e]),t instanceof jc||(t=a[dd(t)]),e instanceof jc||(e=a[dd(e)]),!(!t||!e)){var i=t.id+"-"+e.id,u=new V8(t,e,n);return u.hostGraph=this,this._directed&&(t.outEdges.push(u),e.inEdges.push(u)),t.edges.push(u),t!==e&&e.edges.push(u),this.edges.push(u),o[i]=u,u}},r.prototype.getEdgeByIndex=function(t){var e=this.edgeData.getRawIndex(t);return this.edges[e]},r.prototype.getEdge=function(t,e){t instanceof jc&&(t=t.id),e instanceof jc&&(e=e.id);var n=this._edgesMap;return this._directed?n[t+"-"+e]:n[t+"-"+e]||n[e+"-"+t]},r.prototype.eachNode=function(t,e){for(var n=this.nodes,a=n.length,o=0;o<a;o++)n[o].dataIndex>=0&&t.call(e,n[o],o)},r.prototype.eachEdge=function(t,e){for(var n=this.edges,a=n.length,o=0;o<a;o++)n[o].dataIndex>=0&&n[o].node1.dataIndex>=0&&n[o].node2.dataIndex>=0&&t.call(e,n[o],o)},r.prototype.breadthFirstTraverse=function(t,e,n,a){if(e instanceof jc||(e=this._nodesMap[dd(e)]),!!e){for(var o=n==="out"?"outEdges":n==="in"?"inEdges":"edges",i=0;i<this.nodes.length;i++)this.nodes[i].__visited=!1;if(!t.call(a,e,null))for(var u=[e];u.length;)for(var l=u.shift(),f=l[o],i=0;i<f.length;i++){var s=f[i],c=s.node1===l?s.node2:s.node1;if(!c.__visited){if(t.call(a,c,l))return;u.push(c),c.__visited=!0}}}},r.prototype.update=function(){for(var t=this.data,e=this.edgeData,n=this.nodes,a=this.edges,o=0,i=n.length;o<i;o++)n[o].dataIndex=-1;for(var o=0,i=t.count();o<i;o++)n[t.getRawIndex(o)].dataIndex=o;e.filterSelf(function(u){var l=a[e.getRawIndex(u)];return l.node1.dataIndex>=0&&l.node2.dataIndex>=0});for(var o=0,i=a.length;o<i;o++)a[o].dataIndex=-1;for(var o=0,i=e.count();o<i;o++)a[e.getRawIndex(o)].dataIndex=o},r.prototype.clone=function(){for(var t=new r(this._directed),e=this.nodes,n=this.edges,a=0;a<e.length;a++)t.addNode(e[a].id,e[a].dataIndex);for(var a=0;a<n.length;a++){var o=n[a];t.addEdge(o.node1.id,o.node2.id,o.dataIndex)}return t},r})(),jc=(function(){function r(t,e){this.inEdges=[],this.outEdges=[],this.edges=[],this.dataIndex=-1,this.id=t??"",this.dataIndex=e??-1}return r.prototype.degree=function(){return this.edges.length},r.prototype.inDegree=function(){return this.inEdges.length},r.prototype.outDegree=function(){return this.outEdges.length},r.prototype.getModel=function(t){if(!(this.dataIndex<0)){var e=this.hostGraph,n=e.data.getItemModel(this.dataIndex);return n.getModel(t)}},r.prototype.getAdjacentDataIndices=function(){for(var t={edge:[],node:[]},e=0;e<this.edges.length;e++){var n=this.edges[e];n.dataIndex<0||(t.edge.push(n.dataIndex),t.node.push(n.node1.dataIndex,n.node2.dataIndex))}return t},r.prototype.getTrajectoryDataIndices=function(){for(var t=Z(),e=Z(),n=0;n<this.edges.length;n++){var a=this.edges[n];if(!(a.dataIndex<0)){t.set(a.dataIndex,!0);for(var o=[a.node1],i=[a.node2],u=0;u<o.length;){var l=o[u];u++,e.set(l.dataIndex,!0);for(var f=0;f<l.inEdges.length;f++)t.set(l.inEdges[f].dataIndex,!0),o.push(l.inEdges[f].node1)}for(u=0;u<i.length;){var s=i[u];u++,e.set(s.dataIndex,!0);for(var f=0;f<s.outEdges.length;f++)t.set(s.outEdges[f].dataIndex,!0),i.push(s.outEdges[f].node2)}}}return{edge:t.keys(),node:e.keys()}},r})(),V8=(function(){function r(t,e,n){this.dataIndex=-1,this.node1=t,this.node2=e,this.dataIndex=n??-1}return r.prototype.getModel=function(t){if(!(this.dataIndex<0)){var e=this.hostGraph,n=e.edgeData.getItemModel(this.dataIndex);return n.getModel(t)}},r.prototype.getAdjacentDataIndices=function(){return{edge:[this.dataIndex],node:[this.node1.dataIndex,this.node2.dataIndex]}},r.prototype.getTrajectoryDataIndices=function(){var t=Z(),e=Z();t.set(this.dataIndex,!0);for(var n=[this.node1],a=[this.node2],o=0;o<n.length;){var i=n[o];o++,e.set(i.dataIndex,!0);for(var u=0;u<i.inEdges.length;u++)t.set(i.inEdges[u].dataIndex,!0),n.push(i.inEdges[u].node1)}for(o=0;o<a.length;){var l=a[o];o++,e.set(l.dataIndex,!0);for(var u=0;u<l.outEdges.length;u++)t.set(l.outEdges[u].dataIndex,!0),a.push(l.outEdges[u].node2)}return{edge:t.keys(),node:e.keys()}},r})();function $8(r,t){return{getValue:function(e){var n=this[r][t];return n.getStore().get(n.getDimensionIndex(e||"value"),this.dataIndex)},setVisual:function(e,n){this.dataIndex>=0&&this[r][t].setItemVisual(this.dataIndex,e,n)},getVisual:function(e){return this[r][t].getItemVisual(this.dataIndex,e)},setLayout:function(e,n){this.dataIndex>=0&&this[r][t].setItemLayout(this.dataIndex,e,n)},getLayout:function(){return this[r][t].getItemLayout(this.dataIndex)},getGraphicEl:function(){return this[r][t].getItemGraphicEl(this.dataIndex)},getRawIndex:function(){return this[r][t].getRawIndex(this.dataIndex)}}}Ve(jc,$8("hostGraph","data"));Ve(V8,$8("hostGraph","edgeData"));var q8=Rht;function yg(r,t,e,n,a){for(var o=new q8(n),i=0;i<r.length;i++)o.addNode(ir(r[i].id,r[i].name,i),i);for(var u=[],l=[],f=0,i=0;i<t.length;i++){var s=t[i],c=s.source,p=s.target;o.addEdge(c,p,f)&&(l.push(s),u.push(ir(cr(s.id,null),c+" > "+p)),f++)}var v=e.get("coordinateSystem"),d;if(v==="cartesian2d"||v==="polar")d=Pn(r,e);else{var m=Cl.get(v),h=m?m.dimensions||[]:[];wt(h,"value")<0&&h.concat(["value"]);var _=Oi(r,{coordDimensions:h,encodeDefine:e.getEncode()}).dimensions;d=new wr(_,e),d.initData(r)}var g=new wr(["value"],e);return g.initData(l,u),a&&a(d,g),IT({mainData:d,struct:o,structAttr:"graph",datas:{node:d,edge:g},datasAttr:{node:"data",edge:"edgeData"}}),o.update(),o}var Pht=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.hasSymbolVisual=!0,e}return t.prototype.init=function(e){r.prototype.init.apply(this,arguments);var n=this;function a(){return n._categoriesData}this.legendVisualProvider=new Lu(a,a),this.fillDataTextStyle(e.edges||e.links),this._updateCategoriesData()},t.prototype.mergeOption=function(e){r.prototype.mergeOption.apply(this,arguments),this.fillDataTextStyle(e.edges||e.links),this._updateCategoriesData()},t.prototype.mergeDefaultAndTheme=function(e){r.prototype.mergeDefaultAndTheme.apply(this,arguments),Co(e,"edgeLabel",["show"])},t.prototype.getInitialData=function(e,n){var a=e.edges||e.links||[],o=e.data||e.nodes||[],i=this;if(o&&a){M8(this);var u=yg(o,a,this,!0,l);return T(u.edges,function(f){A8(f.node1,f.node2,this,f.dataIndex)},this),u.data}function l(f,s){f.wrapMethod("getItemModel",function(d){var m=i._categoriesModels,h=d.getShallow("category"),_=m[h];return _&&(_.parentModel=d.parentModel,d.parentModel=_),d});var c=Te.prototype.getModel;function p(d,m){var h=c.call(this,d,m);return h.resolveParentPath=v,h}s.wrapMethod("getItemModel",function(d){return d.resolveParentPath=v,d.getModel=p,d});function v(d){if(d&&(d[0]==="label"||d[1]==="label")){var m=d.slice();return d[0]==="label"?m[0]="edgeLabel":d[1]==="label"&&(m[1]="edgeLabel"),m}return d}}},t.prototype.getGraph=function(){return this.getData().graph},t.prototype.getEdgeData=function(){return this.getGraph().edgeData},t.prototype.getCategoriesData=function(){return this._categoriesData},t.prototype.formatTooltip=function(e,n,a){if(a==="edge"){var o=this.getData(),i=this.getDataParams(e,a),u=o.graph.getEdgeByIndex(e),l=o.getName(u.node1.dataIndex),f=o.getName(u.node2.dataIndex),s=[];return l!=null&&s.push(l),f!=null&&s.push(f),nr("nameValue",{name:s.join(" > "),value:i.value,noValue:i.value==null})}var c=oC({series:this,dataIndex:e,multipleSeries:n});return c},t.prototype._updateCategoriesData=function(){var e=U(this.option.categories||[],function(a){return a.value!=null?a:N({value:0},a)}),n=new wr(["value"],this);n.initData(e),this._categoriesData=n,this._categoriesModels=n.mapArray(function(a){return n.getItemModel(a)})},t.prototype.setZoom=function(e){this.option.zoom=e},t.prototype.setCenter=function(e){this.option.center=e},t.prototype.isAnimationEnabled=function(){return r.prototype.isAnimationEnabled.call(this)&&!(this.get("layout")==="force"&&this.get(["force","layoutAnimation"]))},t.type="series.graph",t.dependencies=["grid","polar","geo","singleAxis","calendar"],t.defaultOption={z:2,coordinateSystem:"view",legendHoverLink:!0,layout:null,circular:{rotateLabel:!1},force:{initLayout:null,repulsion:[0,50],gravity:.1,friction:.6,edgeLength:30,layoutAnimation:!0},left:"center",top:"center",symbol:"circle",symbolSize:10,edgeSymbol:["none","none"],edgeSymbolSize:10,edgeLabel:{position:"middle",distance:5},draggable:!1,roam:!1,center:null,zoom:1,nodeScaleRatio:.6,label:{show:!1,formatter:"{b}"},itemStyle:{},lineStyle:{color:"#aaa",width:1,opacity:.5},emphasis:{scale:!0,label:{show:!0}},select:{itemStyle:{borderColor:"#212121"}}},t})(xe),J8=Pht;var Nht={type:"graphRoam",event:"graphRoam",update:"none"};function bL(r){r.registerChartView(B8),r.registerSeriesModel(J8),r.registerProcessor(eL),r.registerVisual(rL),r.registerVisual(nL),r.registerLayout(iL),r.registerLayout(r.PRIORITY.VISUAL.POST_CHART_LAYOUT,fL),r.registerLayout(sL),r.registerCoordinateSystem("graphView",{dimensions:Ml.dimensions,create:cL}),r.registerAction({type:"focusNodeAdjacency",event:"focusNodeAdjacency",update:"series:focusNodeAdjacency"},Ye),r.registerAction({type:"unfocusNodeAdjacency",event:"unfocusNodeAdjacency",update:"series:unfocusNodeAdjacency"},Ye),r.registerAction(Nht,function(t,e,n){e.eachComponent({mainType:"series",query:t},function(a){var o=a.coordinateSystem,i=ad(o,t,void 0,n);a.setCenter&&a.setCenter(i.center),a.setZoom&&a.setZoom(i.zoom)})})}var Oht=(function(){function r(){this.angle=0,this.width=10,this.r=10,this.x=0,this.y=0}return r})(),Uht=(function(r){A(t,r);function t(e){var n=r.call(this,e)||this;return n.type="pointer",n}return t.prototype.getDefaultShape=function(){return new Oht},t.prototype.buildPath=function(e,n){var a=Math.cos,o=Math.sin,i=n.r,u=n.width,l=n.angle,f=n.x-a(l)*u*(u>=i/3?1:2),s=n.y-o(l)*u*(u>=i/3?1:2);l=n.angle-Math.PI/2,e.moveTo(f,s),e.lineTo(n.x+a(l)*u,n.y+o(l)*u),e.lineTo(n.x+a(n.angle)*i,n.y+o(n.angle)*i),e.lineTo(n.x-a(l)*u,n.y-o(l)*u),e.lineTo(f,s)},t})(bt),j8=Uht;function Hht(r,t){var e=r.get("center"),n=t.getWidth(),a=t.getHeight(),o=Math.min(n,a),i=Y(e[0],t.getWidth()),u=Y(e[1],t.getHeight()),l=Y(r.get("radius"),o/2);return{cx:i,cy:u,r:l}}function kT(r,t){var e=r==null?"":r+"";return t&&(V(t)?e=t.replace("{value}",e):X(t)&&(e=t(r))),e}var kht=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.render=function(e,n,a){this.group.removeAll();var o=e.get(["axisLine","lineStyle","color"]),i=Hht(e,a);this._renderMain(e,n,a,o,i),this._data=e.getData()},t.prototype.dispose=function(){},t.prototype._renderMain=function(e,n,a,o,i){var u=this.group,l=e.get("clockwise"),f=-e.get("startAngle")/180*Math.PI,s=-e.get("endAngle")/180*Math.PI,c=e.getModel("axisLine"),p=c.get("roundCap"),v=p?td:Vr,d=c.get("show"),m=c.getModel("lineStyle"),h=m.get("width"),_=[f,s];Zh(_,!l),f=_[0],s=_[1];for(var g=s-f,y=f,D=[],b=0;d&&b<o.length;b++){var C=Math.min(Math.max(o[b][0],0),1);s=f+g*C;var x=new v({shape:{startAngle:y,endAngle:s,cx:i.cx,cy:i.cy,clockwise:l,r0:i.r-h,r:i.r},silent:!0});x.setStyle({fill:o[b][1]}),x.setStyle(m.getLineStyle(["color","width"])),D.push(x),y=s}D.reverse(),T(D,function(S){return u.add(S)});var w=function(S){if(S<=0)return o[0][1];var E;for(E=0;E<o.length;E++)if(o[E][0]>=S&&(E===0?0:o[E-1][0])<S)return o[E][1];return o[E-1][1]};this._renderTicks(e,n,a,w,i,f,s,l,h),this._renderTitleAndDetail(e,n,a,w,i),this._renderAnchor(e,i),this._renderPointer(e,n,a,w,i,f,s,l,h)},t.prototype._renderTicks=function(e,n,a,o,i,u,l,f,s){for(var c=this.group,p=i.cx,v=i.cy,d=i.r,m=+e.get("min"),h=+e.get("max"),_=e.getModel("splitLine"),g=e.getModel("axisTick"),y=e.getModel("axisLabel"),D=e.get("splitNumber"),b=g.get("splitNumber"),C=Y(_.get("length"),d),x=Y(g.get("length"),d),w=u,S=(l-u)/D,E=S/b,M=_.getModel("lineStyle").getLineStyle(),I=g.getModel("lineStyle").getLineStyle(),F=_.get("distance"),L,R,P=0;P<=D;P++){if(L=Math.cos(w),R=Math.sin(w),_.get("show")){var k=F?F+s:s,H=new mr({shape:{x1:L*(d-k)+p,y1:R*(d-k)+v,x2:L*(d-C-k)+p,y2:R*(d-C-k)+v},style:M,silent:!0});M.stroke==="auto"&&H.setStyle({stroke:o(P/D)}),c.add(H)}if(y.get("show")){var k=y.get("distance")+F,G=kT(Qe(P/D*(h-m)+m),y.get("formatter")),j=o(P/D),rt=L*(d-C-k)+p,xt=R*(d-C-k)+v,J=y.get("rotate"),ot=0;J==="radial"?(ot=-w+2*Math.PI,ot>Math.PI/2&&(ot+=Math.PI)):J==="tangential"?ot=-w-Math.PI/2:Nt(J)&&(ot=J*Math.PI/180),ot===0?c.add(new Wt({style:Re(y,{text:G,x:rt,y:xt,verticalAlign:R<-.8?"top":R>.8?"bottom":"middle",align:L<-.4?"left":L>.4?"right":"center"},{inheritColor:j}),silent:!0})):c.add(new Wt({style:Re(y,{text:G,x:rt,y:xt,verticalAlign:"middle",align:"center"},{inheritColor:j}),silent:!0,originX:rt,originY:xt,rotation:ot}))}if(g.get("show")&&P!==D){var k=g.get("distance");k=k?k+s:s;for(var At=0;At<=b;At++){L=Math.cos(w),R=Math.sin(w);var Mt=new mr({shape:{x1:L*(d-k)+p,y1:R*(d-k)+v,x2:L*(d-x-k)+p,y2:R*(d-x-k)+v},silent:!0,style:I});I.stroke==="auto"&&Mt.setStyle({stroke:o((P+At/b)/D)}),c.add(Mt),w+=E}w-=E}else w+=S}},t.prototype._renderPointer=function(e,n,a,o,i,u,l,f,s){var c=this.group,p=this._data,v=this._progressEls,d=[],m=e.get(["pointer","show"]),h=e.getModel("progress"),_=h.get("show"),g=e.getData(),y=g.mapDimension("value"),D=+e.get("min"),b=+e.get("max"),C=[D,b],x=[u,l];function w(E,M){var I=g.getItemModel(E),F=I.getModel("pointer"),L=Y(F.get("width"),i.r),R=Y(F.get("length"),i.r),P=e.get(["pointer","icon"]),k=F.get("offsetCenter"),H=Y(k[0],i.r),G=Y(k[1],i.r),j=F.get("keepAspect"),rt;return P?rt=We(P,H-L/2,G-R,L,R,null,j):rt=new j8({shape:{angle:-Math.PI/2,width:L,r:R,x:H,y:G}}),rt.rotation=-(M+Math.PI/2),rt.x=i.cx,rt.y=i.cy,rt}function S(E,M){var I=h.get("roundCap"),F=I?td:Vr,L=h.get("overlap"),R=L?h.get("width"):s/g.count(),P=L?i.r-R:i.r-(E+1)*R,k=L?i.r:i.r-E*R,H=new F({shape:{startAngle:u,endAngle:M,cx:i.cx,cy:i.cy,clockwise:f,r0:P,r:k}});return L&&(H.z2=b-g.get(y,E)%b),H}(_||m)&&(g.diff(p).add(function(E){var M=g.get(y,E);if(m){var I=w(E,u);Ae(I,{rotation:-((isNaN(+M)?x[0]:Ie(M,C,x,!0))+Math.PI/2)},e),c.add(I),g.setItemGraphicEl(E,I)}if(_){var F=S(E,u),L=h.get("clip");Ae(F,{shape:{endAngle:Ie(M,C,x,L)}},e),c.add(F),Kh(e.seriesIndex,g.dataType,E,F),d[E]=F}}).update(function(E,M){var I=g.get(y,E);if(m){var F=p.getItemGraphicEl(M),L=F?F.rotation:u,R=w(E,L);R.rotation=L,$t(R,{rotation:-((isNaN(+I)?x[0]:Ie(I,C,x,!0))+Math.PI/2)},e),c.add(R),g.setItemGraphicEl(E,R)}if(_){var P=v[M],k=P?P.shape.endAngle:u,H=S(E,k),G=h.get("clip");$t(H,{shape:{endAngle:Ie(I,C,x,G)}},e),c.add(H),Kh(e.seriesIndex,g.dataType,E,H),d[E]=H}}).execute(),g.each(function(E){var M=g.getItemModel(E),I=M.getModel("emphasis"),F=I.get("focus"),L=I.get("blurScope"),R=I.get("disabled");if(m){var P=g.getItemGraphicEl(E),k=g.getItemVisual(E,"style"),H=k.fill;if(P instanceof er){var G=P.style;P.useStyle(N({image:G.image,x:G.x,y:G.y,width:G.width,height:G.height},k))}else P.useStyle(k),P.type!=="pointer"&&P.setColor(H);P.setStyle(M.getModel(["pointer","itemStyle"]).getItemStyle()),P.style.fill==="auto"&&P.setStyle("fill",o(Ie(g.get(y,E),C,[0,1],!0))),P.z2EmphasisLift=0,fr(P,M),Me(P,F,L,R)}if(_){var j=d[E];j.useStyle(g.getItemVisual(E,"style")),j.setStyle(M.getModel(["progress","itemStyle"]).getItemStyle()),j.z2EmphasisLift=0,fr(j,M),Me(j,F,L,R)}}),this._progressEls=d)},t.prototype._renderAnchor=function(e,n){var a=e.getModel("anchor"),o=a.get("show");if(o){var i=a.get("size"),u=a.get("icon"),l=a.get("offsetCenter"),f=a.get("keepAspect"),s=We(u,n.cx-i/2+Y(l[0],n.r),n.cy-i/2+Y(l[1],n.r),i,i,null,f);s.z2=a.get("showAbove")?1:0,s.setStyle(a.getModel("itemStyle").getItemStyle()),this.group.add(s)}},t.prototype._renderTitleAndDetail=function(e,n,a,o,i){var u=this,l=e.getData(),f=l.mapDimension("value"),s=+e.get("min"),c=+e.get("max"),p=new at,v=[],d=[],m=e.isAnimationEnabled(),h=e.get(["pointer","showAbove"]);l.diff(this._data).add(function(_){v[_]=new Wt({silent:!0}),d[_]=new Wt({silent:!0})}).update(function(_,g){v[_]=u._titleEls[g],d[_]=u._detailEls[g]}).execute(),l.each(function(_){var g=l.getItemModel(_),y=l.get(f,_),D=new at,b=o(Ie(y,[s,c],[0,1],!0)),C=g.getModel("title");if(C.get("show")){var x=C.get("offsetCenter"),w=i.cx+Y(x[0],i.r),S=i.cy+Y(x[1],i.r),E=v[_];E.attr({z2:h?0:2,style:Re(C,{x:w,y:S,text:l.getName(_),align:"center",verticalAlign:"middle"},{inheritColor:b})}),D.add(E)}var M=g.getModel("detail");if(M.get("show")){var I=M.get("offsetCenter"),F=i.cx+Y(I[0],i.r),L=i.cy+Y(I[1],i.r),R=Y(M.get("width"),i.r),P=Y(M.get("height"),i.r),k=e.get(["progress","show"])?l.getItemVisual(_,"style").fill:b,E=d[_],H=M.get("formatter");E.attr({z2:h?0:2,style:Re(M,{x:F,y:L,text:kT(y,H),width:isNaN(R)?null:R,height:isNaN(P)?null:P,align:"center",verticalAlign:"middle"},{inheritColor:k})}),Eb(E,{normal:M},y,function(j){return kT(j,H)}),m&&Mb(E,_,l,e,{getFormattedLabel:function(j,rt,xt,J,ot,At){return kT(At?At.interpolatedValue:y,H)}}),D.add(E)}p.add(D)}),this.group.add(p),this._titleEls=v,this._detailEls=d},t.type="gauge",t})(me),Y8=kht;var zht=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.visualStyleAccessPath="itemStyle",e}return t.prototype.getInitialData=function(e,n){return Ao(this,["value"])},t.type="series.gauge",t.defaultOption={z:2,colorBy:"data",center:["50%","50%"],legendHoverLink:!0,radius:"75%",startAngle:225,endAngle:-45,clockwise:!0,min:0,max:100,splitNumber:10,axisLine:{show:!0,roundCap:!1,lineStyle:{color:[[1,"#E6EBF8"]],width:10}},progress:{show:!1,overlap:!0,width:10,roundCap:!1,clip:!0},splitLine:{show:!0,length:10,distance:10,lineStyle:{color:"#63677A",width:3,type:"solid"}},axisTick:{show:!0,splitNumber:5,length:6,distance:10,lineStyle:{color:"#63677A",width:1,type:"solid"}},axisLabel:{show:!0,distance:15,color:"#464646",fontSize:12,rotate:0},pointer:{icon:null,offsetCenter:[0,0],show:!0,showAbove:!0,length:"60%",width:6,keepAspect:!1},anchor:{show:!1,showAbove:!1,size:6,icon:"circle",offsetCenter:[0,0],keepAspect:!1,itemStyle:{color:"#fff",borderWidth:0,borderColor:"#5470c6"}},title:{show:!0,offsetCenter:[0,"20%"],color:"#464646",fontSize:16,valueAnimation:!1},detail:{show:!0,backgroundColor:"rgba(0,0,0,0)",borderWidth:0,borderColor:"#ccc",width:100,height:null,padding:[5,10],offsetCenter:[0,"40%"],color:"#464646",fontSize:30,fontWeight:"bold",lineHeight:30,valueAnimation:!1}},t})(xe),Q8=zht;function CL(r){r.registerChartView(Y8),r.registerSeriesModel(Q8)}var Wht=["itemStyle","opacity"],Ght=(function(r){A(t,r);function t(e,n){var a=r.call(this)||this,o=a,i=new yr,u=new Wt;return o.setTextContent(u),a.setTextGuideLine(i),a.updateData(e,n,!0),a}return t.prototype.updateData=function(e,n,a){var o=this,i=e.hostModel,u=e.getItemModel(n),l=e.getItemLayout(n),f=u.getModel("emphasis"),s=u.get(Wht);s=s??1,a||rn(o),o.useStyle(e.getItemVisual(n,"style")),o.style.lineJoin="round",a?(o.setShape({points:l.points}),o.style.opacity=0,Ae(o,{style:{opacity:s}},i,n)):$t(o,{style:{opacity:s},shape:{points:l.points}},i,n),fr(o,u),this._updateLabel(e,n),Me(this,f.get("focus"),f.get("blurScope"),f.get("disabled"))},t.prototype._updateLabel=function(e,n){var a=this,o=this.getTextGuideLine(),i=a.getTextContent(),u=e.hostModel,l=e.getItemModel(n),f=e.getItemLayout(n),s=f.label,c=e.getItemVisual(n,"style"),p=c.fill;Ze(i,$e(l),{labelFetcher:e.hostModel,labelDataIndex:n,defaultOpacity:c.opacity,defaultText:e.getName(n)},{normal:{align:s.textAlign,verticalAlign:s.verticalAlign}}),a.setTextConfig({local:!0,inside:!!s.inside,insideStroke:p,outsideFill:p});var v=s.linePoints;o.setShape({points:v}),a.textGuideLineConfig={anchor:v?new Qt(v[0][0],v[0][1]):null},$t(i,{style:{x:s.x,y:s.y}},u,n),i.attr({rotation:s.rotation,originX:s.x,originY:s.y,z2:10}),Qv(a,Zv(l),{stroke:p})},t})(xr),Bht=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.ignoreLabelLineUpdate=!0,e}return t.prototype.render=function(e,n,a){var o=e.getData(),i=this._data,u=this.group;o.diff(i).add(function(l){var f=new Ght(o,l);o.setItemGraphicEl(l,f),u.add(f)}).update(function(l,f){var s=i.getItemGraphicEl(f);s.updateData(o,l),u.add(s),o.setItemGraphicEl(l,s)}).remove(function(l){var f=i.getItemGraphicEl(l);ml(f,e,l)}).execute(),this._data=o},t.prototype.remove=function(){this.group.removeAll(),this._data=null},t.prototype.dispose=function(){},t.type="funnel",t})(me),Z8=Bht;var Vht=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.init=function(e){r.prototype.init.apply(this,arguments),this.legendVisualProvider=new Lu(Q(this.getData,this),Q(this.getRawData,this)),this._defaultLabelLine(e)},t.prototype.getInitialData=function(e,n){return Ao(this,{coordDimensions:["value"],encodeDefaulter:gt(kv,this)})},t.prototype._defaultLabelLine=function(e){Co(e,"labelLine",["show"]);var n=e.labelLine,a=e.emphasis.labelLine;n.show=n.show&&e.label.show,a.show=a.show&&e.emphasis.label.show},t.prototype.getDataParams=function(e){var n=this.getData(),a=r.prototype.getDataParams.call(this,e),o=n.mapDimension("value"),i=n.getSum(o);return a.percent=i?+(n.get(o,e)/i*100).toFixed(2):0,a.$vars.push("percent"),a},t.type="series.funnel",t.defaultOption={z:2,legendHoverLink:!0,colorBy:"data",left:80,top:60,right:80,bottom:60,minSize:"0%",maxSize:"100%",sort:"descending",orient:"vertical",gap:0,funnelAlign:"center",label:{show:!0,position:"outer"},labelLine:{show:!0,length:20,lineStyle:{width:1}},itemStyle:{borderColor:"#fff",borderWidth:1},emphasis:{label:{show:!0}},select:{itemStyle:{borderColor:"#212121"}}},t})(xe),X8=Vht;function $ht(r,t){return ze(r.getBoxLayoutParams(),{width:t.getWidth(),height:t.getHeight()})}function qht(r,t){for(var e=r.mapDimension("value"),n=r.mapArray(e,function(l){return l}),a=[],o=t==="ascending",i=0,u=r.count();i<u;i++)a[i]=i;return X(t)?a.sort(t):t!=="none"&&a.sort(function(l,f){return o?n[l]-n[f]:n[f]-n[l]}),a}function Jht(r){var t=r.hostModel,e=t.get("orient");r.each(function(n){var a=r.getItemModel(n),o=a.getModel("label"),i=o.get("position"),u=a.getModel("labelLine"),l=r.getItemLayout(n),f=l.points,s=i==="inner"||i==="inside"||i==="center"||i==="insideLeft"||i==="insideRight",c,p,v,d;if(s)i==="insideLeft"?(p=(f[0][0]+f[3][0])/2+5,v=(f[0][1]+f[3][1])/2,c="left"):i==="insideRight"?(p=(f[1][0]+f[2][0])/2-5,v=(f[1][1]+f[2][1])/2,c="right"):(p=(f[0][0]+f[1][0]+f[2][0]+f[3][0])/4,v=(f[0][1]+f[1][1]+f[2][1]+f[3][1])/4,c="center"),d=[[p,v],[p,v]];else{var m=void 0,h=void 0,_=void 0,g=void 0,y=u.get("length");i==="left"?(m=(f[3][0]+f[0][0])/2,h=(f[3][1]+f[0][1])/2,_=m-y,p=_-5,c="right"):i==="right"?(m=(f[1][0]+f[2][0])/2,h=(f[1][1]+f[2][1])/2,_=m+y,p=_+5,c="left"):i==="top"?(m=(f[3][0]+f[0][0])/2,h=(f[3][1]+f[0][1])/2,g=h-y,v=g-5,c="center"):i==="bottom"?(m=(f[1][0]+f[2][0])/2,h=(f[1][1]+f[2][1])/2,g=h+y,v=g+5,c="center"):i==="rightTop"?(m=e==="horizontal"?f[3][0]:f[1][0],h=e==="horizontal"?f[3][1]:f[1][1],e==="horizontal"?(g=h-y,v=g-5,c="center"):(_=m+y,p=_+5,c="top")):i==="rightBottom"?(m=f[2][0],h=f[2][1],e==="horizontal"?(g=h+y,v=g+5,c="center"):(_=m+y,p=_+5,c="bottom")):i==="leftTop"?(m=f[0][0],h=e==="horizontal"?f[0][1]:f[1][1],e==="horizontal"?(g=h-y,v=g-5,c="center"):(_=m-y,p=_-5,c="right")):i==="leftBottom"?(m=e==="horizontal"?f[1][0]:f[3][0],h=e==="horizontal"?f[1][1]:f[2][1],e==="horizontal"?(g=h+y,v=g+5,c="center"):(_=m-y,p=_-5,c="right")):(m=(f[1][0]+f[2][0])/2,h=(f[1][1]+f[2][1])/2,e==="horizontal"?(g=h+y,v=g+5,c="center"):(_=m+y,p=_+5,c="left")),e==="horizontal"?(_=m,p=_):(g=h,v=g),d=[[m,h],[_,g]]}l.label={linePoints:d,x:p,y:v,verticalAlign:"middle",textAlign:c,inside:s}})}function TL(r,t){r.eachSeriesByType("funnel",function(e){var n=e.getData(),a=n.mapDimension("value"),o=e.get("sort"),i=$ht(e,t),u=e.get("orient"),l=i.width,f=i.height,s=qht(n,o),c=i.x,p=i.y,v=u==="horizontal"?[Y(e.get("minSize"),f),Y(e.get("maxSize"),f)]:[Y(e.get("minSize"),l),Y(e.get("maxSize"),l)],d=n.getDataExtent(a),m=e.get("min"),h=e.get("max");m==null&&(m=Math.min(d[0],0)),h==null&&(h=d[1]);var _=e.get("funnelAlign"),g=e.get("gap"),y=u==="horizontal"?l:f,D=(y-g*(n.count()-1))/n.count(),b=function(L,R){if(u==="horizontal"){var P=n.get(a,L)||0,k=Ie(P,[m,h],v,!0),H=void 0;switch(_){case"top":H=p;break;case"center":H=p+(f-k)/2;break;case"bottom":H=p+(f-k);break}return[[R,H],[R,H+k]]}var G=n.get(a,L)||0,j=Ie(G,[m,h],v,!0),rt;switch(_){case"left":rt=c;break;case"center":rt=c+(l-j)/2;break;case"right":rt=c+l-j;break}return[[rt,R],[rt+j,R]]};o==="ascending"&&(D=-D,g=-g,u==="horizontal"?c+=l:p+=f,s=s.reverse());for(var C=0;C<s.length;C++){var x=s[C],w=s[C+1],S=n.getItemModel(x);if(u==="horizontal"){var E=S.get(["itemStyle","width"]);E==null?E=D:(E=Y(E,l),o==="ascending"&&(E=-E));var M=b(x,c),I=b(w,c+E);c+=E+g,n.setItemLayout(x,{points:M.concat(I.slice().reverse())})}else{var F=S.get(["itemStyle","height"]);F==null?F=D:(F=Y(F,f),o==="ascending"&&(F=-F));var M=b(x,p),I=b(w,p+F);p+=F+g,n.setItemLayout(x,{points:M.concat(I.slice().reverse())})}}Jht(n)})}function xL(r){r.registerChartView(Z8),r.registerSeriesModel(X8),r.registerLayout(TL),r.registerProcessor(Gi("funnel"))}var jht=.3,Yht=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e._dataGroup=new at,e._initialized=!1,e}return t.prototype.init=function(){this.group.add(this._dataGroup)},t.prototype.render=function(e,n,a,o){this._progressiveEls=null;var i=this._dataGroup,u=e.getData(),l=this._data,f=e.coordinateSystem,s=f.dimensions,c=t6(e);u.diff(l).add(p).update(v).remove(d).execute();function p(h){var _=K8(u,i,h,s,f);wL(_,u,h,c)}function v(h,_){var g=l.getItemGraphicEl(_),y=e6(u,h,s,f);u.setItemGraphicEl(h,g),$t(g,{shape:{points:y}},e,h),rn(g),wL(g,u,h,c)}function d(h){var _=l.getItemGraphicEl(h);i.remove(_)}if(!this._initialized){this._initialized=!0;var m=Qht(f,e,function(){setTimeout(function(){i.removeClipPath()})});i.setClipPath(m)}this._data=u},t.prototype.incrementalPrepareRender=function(e,n,a){this._initialized=!0,this._data=null,this._dataGroup.removeAll()},t.prototype.incrementalRender=function(e,n,a){for(var o=n.getData(),i=n.coordinateSystem,u=i.dimensions,l=t6(n),f=this._progressiveEls=[],s=e.start;s<e.end;s++){var c=K8(o,this._dataGroup,s,u,i);c.incremental=!0,wL(c,o,s,l),f.push(c)}},t.prototype.remove=function(){this._dataGroup&&this._dataGroup.removeAll(),this._data=null},t.type="parallel",t})(me);function Qht(r,t,e){var n=r.model,a=r.getRect(),o=new Rt({shape:{x:a.x,y:a.y,width:a.width,height:a.height}}),i=n.get("layout")==="horizontal"?"width":"height";return o.setShape(i,0),Ae(o,{shape:{width:a.width,height:a.height}},t,e),o}function e6(r,t,e,n){for(var a=[],o=0;o<e.length;o++){var i=e[o],u=r.get(r.mapDimension(i),t);Zht(u,n.getAxis(i).type)||a.push(n.dataToPoint(u,i))}return a}function K8(r,t,e,n,a){var o=e6(r,e,n,a),i=new yr({shape:{points:o},z2:10});return t.add(i),r.setItemGraphicEl(e,i),i}function t6(r){var t=r.get("smooth",!0);return t===!0&&(t=jht),t=Jo(t),cf(t)&&(t=0),{smooth:t}}function wL(r,t,e,n){r.useStyle(t.getItemVisual(e,"style")),r.style.fill=null,r.setShape("smooth",n.smooth);var a=t.getItemModel(e),o=a.getModel("emphasis");fr(r,a,"lineStyle"),Me(r,o.get("focus"),o.get("blurScope"),o.get("disabled"))}function Zht(r,t){return t==="category"?r==null:r==null||isNaN(r)}var r6=Yht;var Xht=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.visualStyleAccessPath="lineStyle",e.visualDrawType="stroke",e}return t.prototype.getInitialData=function(e,n){return Pn(null,this,{useEncodeDefaulter:Q(Kht,null,this)})},t.prototype.getRawIndicesByActiveState=function(e){var n=this.coordinateSystem,a=this.getData(),o=[];return n.eachActiveState(a,function(i,u){e===i&&o.push(a.getRawIndex(u))}),o},t.type="series.parallel",t.dependencies=["parallel"],t.defaultOption={z:2,coordinateSystem:"parallel",parallelIndex:0,label:{show:!1},inactiveOpacity:.05,activeOpacity:1,lineStyle:{width:1,opacity:.45,type:"solid"},emphasis:{label:{show:!1}},progressive:500,smooth:!1,animationEasing:"linear"},t})(xe);function Kht(r){var t=r.ecModel.getComponent("parallel",r.get("parallelIndex"));if(t){var e={};return T(t.dimensions,function(n){var a=t_t(n);e[n]=a}),e}}function t_t(r){return+r.replace("dim","")}var n6=Xht;var e_t=["lineStyle","opacity"],r_t={seriesType:"parallel",reset:function(r,t){var e=r.coordinateSystem,n={normal:r.get(["lineStyle","opacity"]),active:r.get("activeOpacity"),inactive:r.get("inactiveOpacity")};return{progress:function(a,o){e.eachActiveState(o,function(i,u){var l=n[i];if(i==="normal"&&o.hasItemOption){var f=o.getItemModel(u).get(e_t,!0);f!=null&&(l=f)}var s=o.ensureUniqueItemVisual(u,"style");s.opacity=l},a.start,a.end)}}}},a6=r_t;function SL(r){n_t(r),a_t(r)}function n_t(r){if(!r.parallel){var t=!1;T(r.series,function(e){e&&e.type==="parallel"&&(t=!0)}),t&&(r.parallel=[{}])}}function a_t(r){var t=we(r.parallelAxis);T(t,function(e){if(nt(e)){var n=e.parallelIndex||0,a=we(r.parallel)[n];a&&a.parallelAxisDefault&&Et(e,a.parallelAxisDefault,!1)}})}var o_t=5,i_t=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.render=function(e,n,a){this._model=e,this._api=a,this._handlers||(this._handlers={},T(u_t,function(o,i){a.getZr().on(i,this._handlers[i]=Q(o,this))},this)),ri(this,"_throttledDispatchExpand",e.get("axisExpandRate"),"fixRate")},t.prototype.dispose=function(e,n){wl(this,"_throttledDispatchExpand"),T(this._handlers,function(a,o){n.getZr().off(o,a)}),this._handlers=null},t.prototype._throttledDispatchExpand=function(e){this._dispatchExpand(e)},t.prototype._dispatchExpand=function(e){e&&this._api.dispatchAction(N({type:"parallelAxisExpand"},e))},t.type="parallel",t})(Ee),u_t={mousedown:function(r){EL(this,"click")&&(this._mouseDownPoint=[r.offsetX,r.offsetY])},mouseup:function(r){var t=this._mouseDownPoint;if(EL(this,"click")&&t){var e=[r.offsetX,r.offsetY],n=Math.pow(t[0]-e[0],2)+Math.pow(t[1]-e[1],2);if(n>o_t)return;var a=this._model.coordinateSystem.getSlidedAxisExpandWindow([r.offsetX,r.offsetY]);a.behavior!=="none"&&this._dispatchExpand({axisExpandWindow:a.axisExpandWindow})}this._mouseDownPoint=null},mousemove:function(r){if(!(this._mouseDownPoint||!EL(this,"mousemove"))){var t=this._model,e=t.coordinateSystem.getSlidedAxisExpandWindow([r.offsetX,r.offsetY]),n=e.behavior;n==="jump"&&this._throttledDispatchExpand.debounceNextCall(t.get("axisExpandDebounce")),this._throttledDispatchExpand(n==="none"?null:{axisExpandWindow:e.axisExpandWindow,animation:n==="jump"?null:{duration:0}})}}};function EL(r,t){var e=r._model;return e.get("axisExpandable")&&e.get("axisExpandTriggerOn")===t}var o6=i_t;var l_t=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.init=function(){r.prototype.init.apply(this,arguments),this.mergeOption({})},t.prototype.mergeOption=function(e){var n=this.option;e&&Et(n,e,!0),this._initDimensions()},t.prototype.contains=function(e,n){var a=e.get("parallelIndex");return a!=null&&n.getComponent("parallel",a)===this},t.prototype.setAxisExpand=function(e){T(["axisExpandable","axisExpandCenter","axisExpandCount","axisExpandWidth","axisExpandWindow"],function(n){e.hasOwnProperty(n)&&(this.option[n]=e[n])},this)},t.prototype._initDimensions=function(){var e=this.dimensions=[],n=this.parallelAxisIndex=[],a=de(this.ecModel.queryComponents({mainType:"parallelAxis"}),function(o){return(o.get("parallelIndex")||0)===this.componentIndex},this);T(a,function(o){e.push("dim"+o.get("dim")),n.push(o.componentIndex)})},t.type="parallel",t.dependencies=["parallelAxis"],t.layoutMode="box",t.defaultOption={z:0,left:80,top:60,right:80,bottom:60,layout:"horizontal",axisExpandable:!1,axisExpandCenter:null,axisExpandCount:0,axisExpandWidth:50,axisExpandRate:17,axisExpandDebounce:50,axisExpandSlideTriggerArea:[-.15,.05,.4],axisExpandTriggerOn:"click",parallelAxisDefault:null},t})(Gt),i6=l_t;var f_t=(function(r){A(t,r);function t(e,n,a,o,i){var u=r.call(this,e,n,a)||this;return u.type=o||"value",u.axisIndex=i,u}return t.prototype.isHorizontal=function(){return this.coordinateSystem.getModel().get("layout")!=="horizontal"},t})(Nn),u6=f_t;function so(r,t,e,n,a,o){r=r||0;var i=e[1]-e[0];if(a!=null&&(a=md(a,[0,i])),o!=null&&(o=Math.max(o,a??0)),n==="all"){var u=Math.abs(t[1]-t[0]);u=md(u,[0,i]),a=o=md(u,[a,o]),n=0}t[0]=md(t[0],e),t[1]=md(t[1],e);var l=ML(t,n);t[n]+=r;var f=a||0,s=e.slice();l.sign<0?s[0]+=f:s[1]-=f,t[n]=md(t[n],s);var c;return c=ML(t,n),a!=null&&(c.sign!==l.sign||c.span<a)&&(t[1-n]=t[n]+l.sign*a),c=ML(t,n),o!=null&&c.span>o&&(t[1-n]=t[n]+c.sign*o),t}function ML(r,t){var e=r[t]-r[1-t];return{span:Math.abs(e),sign:e>0?-1:e<0?1:t?-1:1}}function md(r,t){return Math.min(t[1]!=null?t[1]:1/0,Math.max(t[0]!=null?t[0]:-1/0,r))}var AL=T,s6=Math.min,c6=Math.max,l6=Math.floor,s_t=Math.ceil,f6=Qe,c_t=Math.PI,p_t=(function(){function r(t,e,n){this.type="parallel",this._axesMap=Z(),this._axesLayout={},this.dimensions=t.dimensions,this._model=t,this._init(t,e,n)}return r.prototype._init=function(t,e,n){var a=t.dimensions,o=t.parallelAxisIndex;AL(a,function(i,u){var l=o[u],f=e.getComponent("parallelAxis",l),s=this._axesMap.set(i,new u6(i,Gf(f),[0,0],f.get("type"),l)),c=s.type==="category";s.onBand=c&&f.get("boundaryGap"),s.inverse=f.get("inverse"),f.axis=s,s.model=f,s.coordinateSystem=f.coordinateSystem=this},this)},r.prototype.update=function(t,e){this._updateAxesFromSeries(this._model,t)},r.prototype.containPoint=function(t){var e=this._makeLayoutInfo(),n=e.axisBase,a=e.layoutBase,o=e.pixelDimIndex,i=t[1-o],u=t[o];return i>=n&&i<=n+e.axisLength&&u>=a&&u<=a+e.layoutLength},r.prototype.getModel=function(){return this._model},r.prototype._updateAxesFromSeries=function(t,e){e.eachSeries(function(n){if(t.contains(n,e)){var a=n.getData();AL(this.dimensions,function(o){var i=this._axesMap.get(o);i.scale.unionExtentFromData(a,a.mapDimension(o)),xu(i.scale,i.model)},this)}},this)},r.prototype.resize=function(t,e){this._rect=ze(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()}),this._layoutAxes()},r.prototype.getRect=function(){return this._rect},r.prototype._makeLayoutInfo=function(){var t=this._model,e=this._rect,n=["x","y"],a=["width","height"],o=t.get("layout"),i=o==="horizontal"?0:1,u=e[a[i]],l=[0,u],f=this.dimensions.length,s=zT(t.get("axisExpandWidth"),l),c=zT(t.get("axisExpandCount")||0,[0,f]),p=t.get("axisExpandable")&&f>3&&f>c&&c>1&&s>0&&u>0,v=t.get("axisExpandWindow"),d;if(v)d=zT(v[1]-v[0],l),v[1]=v[0]+d;else{d=zT(s*(c-1),l);var m=t.get("axisExpandCenter")||l6(f/2);v=[s*m-d/2],v[1]=v[0]+d}var h=(u-d)/(f-c);h<3&&(h=0);var _=[l6(f6(v[0]/s,1))+1,s_t(f6(v[1]/s,1))-1],g=h/s*v[0];return{layout:o,pixelDimIndex:i,layoutBase:e[n[i]],layoutLength:u,axisBase:e[n[1-i]],axisLength:e[a[1-i]],axisExpandable:p,axisExpandWidth:s,axisCollapseWidth:h,axisExpandWindow:v,axisCount:f,winInnerIndices:_,axisExpandWindow0Pos:g}},r.prototype._layoutAxes=function(){var t=this._rect,e=this._axesMap,n=this.dimensions,a=this._makeLayoutInfo(),o=a.layout;e.each(function(i){var u=[0,a.axisLength],l=i.inverse?1:0;i.setExtent(u[l],u[1-l])}),AL(n,function(i,u){var l=(a.axisExpandable?d_t:v_t)(u,a),f={horizontal:{x:l.position,y:a.axisLength},vertical:{x:0,y:l.position}},s={horizontal:c_t/2,vertical:0},c=[f[o].x+t.x,f[o].y+t.y],p=s[o],v=jr();ja(v,v,p),$n(v,v,c),this._axesLayout[i]={position:c,rotation:p,transform:v,axisNameAvailableWidth:l.axisNameAvailableWidth,axisLabelShow:l.axisLabelShow,nameTruncateMaxWidth:l.nameTruncateMaxWidth,tickDirection:1,labelDirection:1}},this)},r.prototype.getAxis=function(t){return this._axesMap.get(t)},r.prototype.dataToPoint=function(t,e){return this.axisCoordToPoint(this._axesMap.get(e).dataToCoord(t),e)},r.prototype.eachActiveState=function(t,e,n,a){n==null&&(n=0),a==null&&(a=t.count());var o=this._axesMap,i=this.dimensions,u=[],l=[];T(i,function(h){u.push(t.mapDimension(h)),l.push(o.get(h).model)});for(var f=this.hasAxisBrushed(),s=n;s<a;s++){var c=void 0;if(!f)c="normal";else{c="active";for(var p=t.getValues(u,s),v=0,d=i.length;v<d;v++){var m=l[v].getActiveState(p[v]);if(m==="inactive"){c="inactive";break}}}e(c,s)}},r.prototype.hasAxisBrushed=function(){for(var t=this.dimensions,e=this._axesMap,n=!1,a=0,o=t.length;a<o;a++)e.get(t[a]).model.getActiveState()!=="normal"&&(n=!0);return n},r.prototype.axisCoordToPoint=function(t,e){var n=this._axesLayout[e];return jn([t,0],n.transform)},r.prototype.getAxisLayout=function(t){return lt(this._axesLayout[t])},r.prototype.getSlidedAxisExpandWindow=function(t){var e=this._makeLayoutInfo(),n=e.pixelDimIndex,a=e.axisExpandWindow.slice(),o=a[1]-a[0],i=[0,e.axisExpandWidth*(e.axisCount-1)];if(!this.containPoint(t))return{behavior:"none",axisExpandWindow:a};var u=t[n]-e.layoutBase-e.axisExpandWindow0Pos,l,f="slide",s=e.axisCollapseWidth,c=this._model.get("axisExpandSlideTriggerArea"),p=c[0]!=null;if(s)p&&s&&u<o*c[0]?(f="jump",l=u-o*c[2]):p&&s&&u>o*(1-c[0])?(f="jump",l=u-o*(1-c[2])):(l=u-o*c[1])>=0&&(l=u-o*(1-c[1]))<=0&&(l=0),l*=e.axisExpandWidth/s,l?so(l,a,i,"all"):f="none";else{var v=a[1]-a[0],d=i[1]*u/v;a=[c6(0,d-v/2)],a[1]=s6(i[1],a[0]+v),a[0]=a[1]-v}return{axisExpandWindow:a,behavior:f}},r})();function zT(r,t){return s6(c6(r,t[0]),t[1])}function v_t(r,t){var e=t.layoutLength/(t.axisCount-1);return{position:e*r,axisNameAvailableWidth:e,axisLabelShow:!0}}function d_t(r,t){var e=t.layoutLength,n=t.axisExpandWidth,a=t.axisCount,o=t.axisCollapseWidth,i=t.winInnerIndices,u,l=o,f=!1,s;return r<i[0]?(u=r*o,s=o):r<=i[1]?(u=t.axisExpandWindow0Pos+r*n-t.axisExpandWindow[0],l=n,f=!0):(u=e-(a-1-r)*o,s=o),{position:u,axisNameAvailableWidth:l,axisLabelShow:f,nameTruncateMaxWidth:s}}var p6=p_t;function m_t(r,t){var e=[];return r.eachComponent("parallel",function(n,a){var o=new p6(n,r,t);o.name="parallel_"+a,o.resize(n,t),n.coordinateSystem=o,o.model=n,e.push(o)}),r.eachSeries(function(n){if(n.get("coordinateSystem")==="parallel"){var a=n.getReferringComponents("parallel",je).models[0];n.coordinateSystem=a.coordinateSystem}}),e}var h_t={create:m_t},v6=h_t;var d6=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.activeIntervals=[],e}return t.prototype.getAreaSelectStyle=function(){return Ka([["fill","color"],["lineWidth","borderWidth"],["stroke","borderColor"],["width","width"],["opacity","opacity"]])(this.getModel("areaSelectStyle"))},t.prototype.setActiveIntervals=function(e){var n=this.activeIntervals=lt(e);if(n)for(var a=n.length-1;a>=0;a--)fn(n[a])},t.prototype.getActiveState=function(e){var n=this.activeIntervals;if(!n.length)return"normal";if(e==null||isNaN(+e))return"inactive";if(n.length===1){var a=n[0];if(a[0]<=e&&e<=a[1])return"active"}else for(var o=0,i=n.length;o<i;o++)if(n[o][0]<=e&&e<=n[o][1])return"active";return"inactive"},t})(Gt);Ve(d6,wu);var IL=d6;var Yc=!0,Dg=Math.min,hd=Math.max,__t=Math.pow,g_t=1e4,y_t=6,D_t=6,m6="globalPan",b_t={w:[0,0],e:[0,1],n:[1,0],s:[1,1]},C_t={w:"ew",e:"ew",n:"ns",s:"ns",ne:"nesw",sw:"nesw",nw:"nwse",se:"nwse"},h6={brushStyle:{lineWidth:2,stroke:"rgba(210,219,238,0.3)",fill:"#D2DBEE"},transformable:!0,brushMode:"single",removeOnClick:!1},T_t=0,x_t=(function(r){A(t,r);function t(e){var n=r.call(this)||this;return n._track=[],n._covers=[],n._handlers={},n._zr=e,n.group=new at,n._uid="brushController_"+T_t++,T(F_t,function(a,o){this._handlers[o]=Q(a,this)},n),n}return t.prototype.enableBrush=function(e){return this._brushType&&this._doDisableBrush(),e.brushType&&this._doEnableBrush(e),this},t.prototype._doEnableBrush=function(e){var n=this._zr;this._enableGlobalPan||o4(n,m6,this._uid),T(this._handlers,function(a,o){n.on(o,a)}),this._brushType=e.brushType,this._brushOption=Et(lt(h6),e,!0)},t.prototype._doDisableBrush=function(){var e=this._zr;i4(e,m6,this._uid),T(this._handlers,function(n,a){e.off(a,n)}),this._brushType=this._brushOption=null},t.prototype.setPanels=function(e){if(e&&e.length){var n=this._panels={};T(e,function(a){n[a.panelId]=lt(a)})}else this._panels=null;return this},t.prototype.mount=function(e){e=e||{},this._enableGlobalPan=e.enableGlobalPan;var n=this.group;return this._zr.add(n),n.attr({x:e.x||0,y:e.y||0,rotation:e.rotation||0,scaleX:e.scaleX||1,scaleY:e.scaleY||1}),this._transform=n.getLocalTransform(),this},t.prototype.updateCovers=function(e){e=U(e,function(p){return Et(lt(h6),p,!0)});var n="\0-brush-index-",a=this._covers,o=this._covers=[],i=this,u=this._creatingCover;return new Zn(a,e,f,l).add(s).update(s).remove(c).execute(),this;function l(p,v){return(p.id!=null?p.id:n+v)+"-"+p.brushType}function f(p,v){return l(p.__brushOption,v)}function s(p,v){var d=e[p];if(v!=null&&a[v]===u)o[p]=a[v];else{var m=o[p]=v!=null?(a[v].__brushOption=d,a[v]):C6(i,b6(i,d));OL(i,m)}}function c(p){a[p]!==u&&i.group.remove(a[p])}},t.prototype.unmount=function(){return this.enableBrush(!1),FL(this),this._zr.remove(this.group),this},t.prototype.dispose=function(){this.unmount(),this.off()},t})(en);function b6(r,t){var e=WT[t.brushType].createCover(r,t);return e.__brushOption=t,x6(e,t),r.group.add(e),e}function C6(r,t){var e=UL(t);return e.endCreating&&(e.endCreating(r,t),x6(t,t.__brushOption)),t}function T6(r,t){var e=t.__brushOption;UL(t).updateCoverShape(r,t,e.range,e)}function x6(r,t){var e=t.z;e==null&&(e=g_t),r.traverse(function(n){n.z=e,n.z2=e})}function OL(r,t){UL(t).updateCommon(r,t),T6(r,t)}function UL(r){return WT[r.__brushOption.brushType]}function HL(r,t,e){var n=r._panels;if(!n)return Yc;var a,o=r._transform;return T(n,function(i){i.isTargetByCursor(t,e,o)&&(a=i)}),a}function w6(r,t){var e=r._panels;if(!e)return Yc;var n=t.__brushOption.panelId;return n!=null?e[n]:Yc}function FL(r){var t=r._covers,e=t.length;return T(t,function(n){r.group.remove(n)},r),t.length=0,!!e}function Qc(r,t){var e=U(r._covers,function(n){var a=n.__brushOption,o=lt(a.range);return{brushType:a.brushType,panelId:a.panelId,range:o}});r.trigger("brush",{areas:e,isEnd:!!t.isEnd,removeOnClick:!!t.removeOnClick})}function w_t(r){var t=r._track;if(!t.length)return!1;var e=t[t.length-1],n=t[0],a=e[0]-n[0],o=e[1]-n[1],i=__t(a*a+o*o,.5);return i>y_t}function S6(r){var t=r.length-1;return t<0&&(t=0),[r[0],r[t]]}function E6(r,t,e,n){var a=new at;return a.add(new Rt({name:"main",style:kL(e),silent:!0,draggable:!0,cursor:"move",drift:gt(_6,r,t,a,["n","s","w","e"]),ondragend:gt(Qc,t,{isEnd:!0})})),T(n,function(o){a.add(new Rt({name:o.join(""),style:{opacity:0},draggable:!0,silent:!0,invisible:!0,drift:gt(_6,r,t,a,o),ondragend:gt(Qc,t,{isEnd:!0})}))}),a}function M6(r,t,e,n){var a=n.brushStyle.lineWidth||0,o=hd(a,D_t),i=e[0][0],u=e[1][0],l=i-a/2,f=u-a/2,s=e[0][1],c=e[1][1],p=s-o+a/2,v=c-o+a/2,d=s-i,m=c-u,h=d+a,_=m+a;Il(r,t,"main",i,u,d,m),n.transformable&&(Il(r,t,"w",l,f,o,_),Il(r,t,"e",p,f,o,_),Il(r,t,"n",l,f,h,o),Il(r,t,"s",l,v,h,o),Il(r,t,"nw",l,f,o,o),Il(r,t,"ne",p,f,o,o),Il(r,t,"sw",l,v,o,o),Il(r,t,"se",p,v,o,o))}function LL(r,t){var e=t.__brushOption,n=e.transformable,a=t.childAt(0);a.useStyle(kL(e)),a.attr({silent:!n,cursor:n?"move":"default"}),T([["w"],["e"],["n"],["s"],["s","e"],["s","w"],["n","e"],["n","w"]],function(o){var i=t.childOfName(o.join("")),u=o.length===1?RL(r,o[0]):E_t(r,o);i&&i.attr({silent:!n,invisible:!n,cursor:n?C_t[u]+"-resize":null})})}function Il(r,t,e,n,a,o,i){var u=t.childOfName(e);u&&u.setShape(A_t(zL(r,t,[[n,a],[n+o,a+i]])))}function kL(r){return et({strokeNoScale:!0},r.brushStyle)}function A6(r,t,e,n){var a=[Dg(r,e),Dg(t,n)],o=[hd(r,e),hd(t,n)];return[[a[0],o[0]],[a[1],o[1]]]}function S_t(r){return Ei(r.group)}function RL(r,t){var e={w:"left",e:"right",n:"top",s:"bottom"},n={left:"w",right:"e",top:"n",bottom:"s"},a=Cc(e[t],S_t(r));return n[a]}function E_t(r,t){var e=[RL(r,t[0]),RL(r,t[1])];return(e[0]==="e"||e[0]==="w")&&e.reverse(),e.join("")}function _6(r,t,e,n,a,o){var i=e.__brushOption,u=r.toRectRange(i.range),l=I6(t,a,o);T(n,function(f){var s=b_t[f];u[s[0]][s[1]]+=l[s[0]]}),i.range=r.fromRectRange(A6(u[0][0],u[1][0],u[0][1],u[1][1])),OL(t,e),Qc(t,{isEnd:!1})}function M_t(r,t,e,n){var a=t.__brushOption.range,o=I6(r,e,n);T(a,function(i){i[0]+=o[0],i[1]+=o[1]}),OL(r,t),Qc(r,{isEnd:!1})}function I6(r,t,e){var n=r.group,a=n.transformCoordToLocal(t,e),o=n.transformCoordToLocal(0,0);return[a[0]-o[0],a[1]-o[1]]}function zL(r,t,e){var n=w6(r,t);return n&&n!==Yc?n.clipPath(e,r._transform):lt(e)}function A_t(r){var t=Dg(r[0][0],r[1][0]),e=Dg(r[0][1],r[1][1]),n=hd(r[0][0],r[1][0]),a=hd(r[0][1],r[1][1]);return{x:t,y:e,width:n-t,height:a-e}}function I_t(r,t,e){if(!(!r._brushType||L_t(r,t.offsetX,t.offsetY))){var n=r._zr,a=r._covers,o=HL(r,t,e);if(!r._dragging)for(var i=0;i<a.length;i++){var u=a[i].__brushOption;if(o&&(o===Yc||u.panelId===o.panelId)&&WT[u.brushType].contain(a[i],e[0],e[1]))return}o&&n.setCursorStyle("crosshair")}}function PL(r){var t=r.event;t.preventDefault&&t.preventDefault()}function NL(r,t,e){return r.childOfName("main").contain(t,e)}function F6(r,t,e,n){var a=r._creatingCover,o=r._creatingPanel,i=r._brushOption,u;if(r._track.push(e.slice()),w_t(r)||a){if(o&&!a){i.brushMode==="single"&&FL(r);var l=lt(i);l.brushType=g6(l.brushType,o),l.panelId=o===Yc?null:o.panelId,a=r._creatingCover=b6(r,l),r._covers.push(a)}if(a){var f=WT[g6(r._brushType,o)],s=a.__brushOption;s.range=f.getCreatingRange(zL(r,a,r._track)),n&&(C6(r,a),f.updateCommon(r,a)),T6(r,a),u={isEnd:n}}}else n&&i.brushMode==="single"&&i.removeOnClick&&HL(r,t,e)&&FL(r)&&(u={isEnd:n,removeOnClick:!0});return u}function g6(r,t){return r==="auto"?t.defaultBrushType:r}var F_t={mousedown:function(r){if(this._dragging)y6(this,r);else if(!r.target||!r.target.draggable){PL(r);var t=this.group.transformCoordToLocal(r.offsetX,r.offsetY);this._creatingCover=null;var e=this._creatingPanel=HL(this,r,t);e&&(this._dragging=!0,this._track=[t.slice()])}},mousemove:function(r){var t=r.offsetX,e=r.offsetY,n=this.group.transformCoordToLocal(t,e);if(I_t(this,r,n),this._dragging){PL(r);var a=F6(this,r,n,!1);a&&Qc(this,a)}},mouseup:function(r){y6(this,r)}};function y6(r,t){if(r._dragging){PL(t);var e=t.offsetX,n=t.offsetY,a=r.group.transformCoordToLocal(e,n),o=F6(r,t,a,!0);r._dragging=!1,r._track=[],r._creatingCover=null,o&&Qc(r,o)}}function L_t(r,t,e){var n=r._zr;return t<0||t>n.getWidth()||e<0||e>n.getHeight()}var WT={lineX:D6(0),lineY:D6(1),rect:{createCover:function(r,t){function e(n){return n}return E6({toRectRange:e,fromRectRange:e},r,t,[["w"],["e"],["n"],["s"],["s","e"],["s","w"],["n","e"],["n","w"]])},getCreatingRange:function(r){var t=S6(r);return A6(t[1][0],t[1][1],t[0][0],t[0][1])},updateCoverShape:function(r,t,e,n){M6(r,t,e,n)},updateCommon:LL,contain:NL},polygon:{createCover:function(r,t){var e=new at;return e.add(new yr({name:"main",style:kL(t),silent:!0})),e},getCreatingRange:function(r){return r},endCreating:function(r,t){t.remove(t.childAt(0)),t.add(new xr({name:"main",draggable:!0,drift:gt(M_t,r,t),ondragend:gt(Qc,r,{isEnd:!0})}))},updateCoverShape:function(r,t,e,n){t.childAt(0).setShape({points:zL(r,t,e)})},updateCommon:LL,contain:NL}};function D6(r){return{createCover:function(t,e){return E6({toRectRange:function(n){var a=[n,[0,100]];return r&&a.reverse(),a},fromRectRange:function(n){return n[r]}},t,e,[[["w"],["e"]],[["n"],["s"]]][r])},getCreatingRange:function(t){var e=S6(t),n=Dg(e[0][r],e[1][r]),a=hd(e[0][r],e[1][r]);return[n,a]},updateCoverShape:function(t,e,n,a){var o,i=w6(t,e);if(i!==Yc&&i.getLinearBrushOtherExtent)o=i.getLinearBrushOtherExtent(r);else{var u=t._zr;o=[0,[u.getWidth(),u.getHeight()][1-r]]}var l=[n,o];r&&l.reverse(),M6(t,e,l,a)},updateCommon:LL,contain:NL}}var _d=x_t;function GT(r){return r=WL(r),function(t){return IM(t,r)}}function BT(r,t){return r=WL(r),function(e){var n=t??e,a=n?r.width:r.height,o=n?r.x:r.y;return[o,o+(a||0)]}}function VT(r,t,e){var n=WL(r);return function(a,o){return n.contain(o[0],o[1])&&!jf(a,t,e)}}function WL(r){return yt.create(r)}var R_t=["axisLine","axisTickLabel","axisName"],P_t=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.init=function(e,n){r.prototype.init.apply(this,arguments),(this._brushController=new _d(n.getZr())).on("brush",Q(this._onBrush,this))},t.prototype.render=function(e,n,a,o){if(!N_t(e,n,o)){this.axisModel=e,this.api=a,this.group.removeAll();var i=this._axisGroup;if(this._axisGroup=new at,this.group.add(this._axisGroup),!!e.get("show")){var u=U_t(e,n),l=u.coordinateSystem,f=e.getAreaSelectStyle(),s=f.width,c=e.axis.dim,p=l.getAxisLayout(c),v=N({strokeContainThreshold:s},p),d=new Xn(e,v);T(R_t,d.add,d),this._axisGroup.add(d.getGroup()),this._refreshBrushController(v,f,e,u,s,a),_l(i,this._axisGroup,e)}}},t.prototype._refreshBrushController=function(e,n,a,o,i,u){var l=a.axis.getExtent(),f=l[1]-l[0],s=Math.min(30,Math.abs(f)*.1),c=yt.create({x:l[0],y:-i/2,width:f,height:i});c.x-=s,c.width+=2*s,this._brushController.mount({enableGlobalPan:!0,rotation:e.rotation,x:e.position[0],y:e.position[1]}).setPanels([{panelId:"pl",clipPath:GT(c),isTargetByCursor:VT(c,u,o),getLinearBrushOtherExtent:BT(c,0)}]).enableBrush({brushType:"lineX",brushStyle:n,removeOnClick:!0}).updateCovers(O_t(a))},t.prototype._onBrush=function(e){var n=e.areas,a=this.axisModel,o=a.axis,i=U(n,function(u){return[o.coordToData(u.range[0],!0),o.coordToData(u.range[1],!0)]});(!a.option.realtime===e.isEnd||e.removeOnClick)&&this.api.dispatchAction({type:"axisAreaSelect",parallelAxisId:a.id,intervals:i})},t.prototype.dispose=function(){this._brushController.dispose()},t.type="parallelAxis",t})(Ee);function N_t(r,t,e){return e&&e.type==="axisAreaSelect"&&t.findComponents({mainType:"parallelAxis",query:e})[0]===r}function O_t(r){var t=r.axis;return U(r.activeIntervals,function(e){return{brushType:"lineX",panelId:"pl",range:[t.dataToCoord(e[0],!0),t.dataToCoord(e[1],!0)]}})}function U_t(r,t){return t.getComponent("parallel",r.get("parallelIndex"))}var R6=P_t;var H_t={type:"axisAreaSelect",event:"axisAreaSelected"};function P6(r){r.registerAction(H_t,function(t,e){e.eachComponent({mainType:"parallelAxis",query:t},function(n){n.axis.model.setActiveIntervals(t.intervals)})}),r.registerAction("parallelAxisExpand",function(t,e){e.eachComponent({mainType:"parallel",query:t},function(n){n.setAxisExpand(t)})})}var k_t={type:"value",areaSelectStyle:{width:20,borderWidth:1,borderColor:"rgba(160,197,232)",color:"rgba(160,197,232)",opacity:.3},realtime:!0,z:10};function bg(r){r.registerComponentView(o6),r.registerComponentModel(i6),r.registerCoordinateSystem("parallel",v6),r.registerPreprocessor(SL),r.registerComponentModel(IL),r.registerComponentView(R6),Bi(r,"parallel",IL,k_t),P6(r)}function GL(r){Jt(bg),r.registerChartView(r6),r.registerSeriesModel(n6),r.registerVisual(r.PRIORITY.VISUAL.BRUSH,a6)}var z_t=(function(){function r(){this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.cpx1=0,this.cpy1=0,this.cpx2=0,this.cpy2=0,this.extent=0}return r})(),W_t=(function(r){A(t,r);function t(e){return r.call(this,e)||this}return t.prototype.getDefaultShape=function(){return new z_t},t.prototype.buildPath=function(e,n){var a=n.extent;e.moveTo(n.x1,n.y1),e.bezierCurveTo(n.cpx1,n.cpy1,n.cpx2,n.cpy2,n.x2,n.y2),n.orient==="vertical"?(e.lineTo(n.x2+a,n.y2),e.bezierCurveTo(n.cpx2+a,n.cpy2,n.cpx1+a,n.cpy1,n.x1+a,n.y1)):(e.lineTo(n.x2,n.y2+a),e.bezierCurveTo(n.cpx2,n.cpy2+a,n.cpx1,n.cpy1+a,n.x1,n.y1+a)),e.closePath()},t.prototype.highlight=function(){fa(this)},t.prototype.downplay=function(){sa(this)},t})(bt),G_t=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e._focusAdjacencyDisabled=!1,e}return t.prototype.render=function(e,n,a){var o=this,i=e.getGraph(),u=this.group,l=e.layoutInfo,f=l.width,s=l.height,c=e.getData(),p=e.getData("edge"),v=e.get("orient");this._model=e,u.removeAll(),u.x=l.x,u.y=l.y,i.eachEdge(function(d){var m=new W_t,h=vt(m);h.dataIndex=d.dataIndex,h.seriesIndex=e.seriesIndex,h.dataType="edge";var _=d.getModel(),g=_.getModel("lineStyle"),y=g.get("curveness"),D=d.node1.getLayout(),b=d.node1.getModel(),C=b.get("localX"),x=b.get("localY"),w=d.node2.getLayout(),S=d.node2.getModel(),E=S.get("localX"),M=S.get("localY"),I=d.getLayout(),F,L,R,P,k,H,G,j;m.shape.extent=Math.max(1,I.dy),m.shape.orient=v,v==="vertical"?(F=(C!=null?C*f:D.x)+I.sy,L=(x!=null?x*s:D.y)+D.dy,R=(E!=null?E*f:w.x)+I.ty,P=M!=null?M*s:w.y,k=F,H=L*(1-y)+P*y,G=R,j=L*y+P*(1-y)):(F=(C!=null?C*f:D.x)+D.dx,L=(x!=null?x*s:D.y)+I.sy,R=E!=null?E*f:w.x,P=(M!=null?M*s:w.y)+I.ty,k=F*(1-y)+R*y,H=L,G=F*y+R*(1-y),j=P),m.setShape({x1:F,y1:L,x2:R,y2:P,cpx1:k,cpy1:H,cpx2:G,cpy2:j}),m.useStyle(g.getItemStyle()),N6(m.style,v,d);var rt=""+_.get("value"),xt=$e(_,"edgeLabel");Ze(m,xt,{labelFetcher:{getFormattedLabel:function(At,Mt,ut,$,Ct,ct){return e.getFormattedLabel(At,Mt,"edge",$,gn(Ct,xt.normal&&xt.normal.get("formatter"),rt),ct)}},labelDataIndex:d.dataIndex,defaultText:rt}),m.setTextConfig({position:"inside"});var J=_.getModel("emphasis");fr(m,_,"lineStyle",function(At){var Mt=At.getItemStyle();return N6(Mt,v,d),Mt}),u.add(m),p.setItemGraphicEl(d.dataIndex,m);var ot=J.get("focus");Me(m,ot==="adjacency"?d.getAdjacentDataIndices():ot==="trajectory"?d.getTrajectoryDataIndices():ot,J.get("blurScope"),J.get("disabled"))}),i.eachNode(function(d){var m=d.getLayout(),h=d.getModel(),_=h.get("localX"),g=h.get("localY"),y=h.getModel("emphasis"),D=new Rt({shape:{x:_!=null?_*f:m.x,y:g!=null?g*s:m.y,width:m.dx,height:m.dy},style:h.getModel("itemStyle").getItemStyle(),z2:10});Ze(D,$e(h),{labelFetcher:{getFormattedLabel:function(C,x){return e.getFormattedLabel(C,x,"node")}},labelDataIndex:d.dataIndex,defaultText:d.id}),D.disableLabelAnimation=!0,D.setStyle("fill",d.getVisual("color")),D.setStyle("decal",d.getVisual("style").decal),fr(D,h),u.add(D),c.setItemGraphicEl(d.dataIndex,D),vt(D).dataType="node";var b=y.get("focus");Me(D,b==="adjacency"?d.getAdjacentDataIndices():b==="trajectory"?d.getTrajectoryDataIndices():b,y.get("blurScope"),y.get("disabled"))}),c.eachItemGraphicEl(function(d,m){var h=c.getItemModel(m);h.get("draggable")&&(d.drift=function(_,g){o._focusAdjacencyDisabled=!0,this.shape.x+=_,this.shape.y+=g,this.dirty(),a.dispatchAction({type:"dragNode",seriesId:e.id,dataIndex:c.getRawIndex(m),localX:this.shape.x/f,localY:this.shape.y/s})},d.ondragend=function(){o._focusAdjacencyDisabled=!1},d.draggable=!0,d.cursor="move")}),!this._data&&e.isAnimationEnabled()&&u.setClipPath(B_t(u.getBoundingRect(),e,function(){u.removeClipPath()})),this._data=e.getData()},t.prototype.dispose=function(){},t.type="sankey",t})(me);function N6(r,t,e){switch(r.fill){case"source":r.fill=e.node1.getVisual("color"),r.decal=e.node1.getVisual("style").decal;break;case"target":r.fill=e.node2.getVisual("color"),r.decal=e.node2.getVisual("style").decal;break;case"gradient":var n=e.node1.getVisual("color"),a=e.node2.getVisual("color");V(n)&&V(a)&&(r.fill=new bu(0,0,+(t==="horizontal"),+(t==="vertical"),[{color:n,offset:0},{color:a,offset:1}]))}}function B_t(r,t,e){var n=new Rt({shape:{x:r.x-10,y:r.y-10,width:0,height:r.height+20}});return Ae(n,{shape:{width:r.width+20}},t,e),n}var O6=G_t;var V_t=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.getInitialData=function(e,n){var a=e.edges||e.links,o=e.data||e.nodes,i=e.levels;this.levelModels=[];for(var u=this.levelModels,l=0;l<i.length;l++)i[l].depth!=null&&i[l].depth>=0&&(u[i[l].depth]=new Te(i[l],this,n));if(o&&a){var f=yg(o,a,this,!0,s);return f.data}function s(c,p){c.wrapMethod("getItemModel",function(v,d){var m=v.parentModel,h=m.getData().getItemLayout(d);if(h){var _=h.depth,g=m.levelModels[_];g&&(v.parentModel=g)}return v}),p.wrapMethod("getItemModel",function(v,d){var m=v.parentModel,h=m.getGraph().getEdgeByIndex(d),_=h.node1.getLayout();if(_){var g=_.depth,y=m.levelModels[g];y&&(v.parentModel=y)}return v})}},t.prototype.setNodePosition=function(e,n){var a=this.option.data||this.option.nodes,o=a[e];o.localX=n[0],o.localY=n[1]},t.prototype.getGraph=function(){return this.getData().graph},t.prototype.getEdgeData=function(){return this.getGraph().edgeData},t.prototype.formatTooltip=function(e,n,a){function o(v){return isNaN(v)||v==null}if(a==="edge"){var i=this.getDataParams(e,a),u=i.data,l=i.value,f=u.source+" -- "+u.target;return nr("nameValue",{name:f,value:l,noValue:o(l)})}else{var s=this.getGraph().getNodeByIndex(e),c=s.getLayout().value,p=this.getDataParams(e,a).data.name;return nr("nameValue",{name:p!=null?p+"":null,value:c,noValue:o(c)})}},t.prototype.optionUpdated=function(){},t.prototype.getDataParams=function(e,n){var a=r.prototype.getDataParams.call(this,e,n);if(a.value==null&&n==="node"){var o=this.getGraph().getNodeByIndex(e),i=o.getLayout().value;a.value=i}return a},t.type="series.sankey",t.defaultOption={z:2,coordinateSystem:"view",left:"5%",top:"5%",right:"20%",bottom:"5%",orient:"horizontal",nodeWidth:20,nodeGap:8,draggable:!0,layoutIterations:32,label:{show:!0,position:"right",fontSize:12},edgeLabel:{show:!1,fontSize:12},levels:[],nodeAlign:"justify",lineStyle:{color:"#314656",opacity:.2,curveness:.5},emphasis:{label:{show:!0},lineStyle:{opacity:.5}},select:{itemStyle:{borderColor:"#212121"}},animationEasing:"linear",animationDuration:1e3},t})(xe),U6=V_t;function VL(r,t){r.eachSeriesByType("sankey",function(e){var n=e.get("nodeWidth"),a=e.get("nodeGap"),o=$_t(e,t);e.layoutInfo=o;var i=o.width,u=o.height,l=e.getGraph(),f=l.nodes,s=l.edges;J_t(f);var c=de(f,function(m){return m.getLayout().value===0}),p=c.length!==0?0:e.get("layoutIterations"),v=e.get("orient"),d=e.get("nodeAlign");q_t(f,s,n,a,i,u,p,v,d)})}function $_t(r,t){return ze(r.getBoxLayoutParams(),{width:t.getWidth(),height:t.getHeight()})}function q_t(r,t,e,n,a,o,i,u,l){j_t(r,t,e,a,o,u,l),X_t(r,t,o,a,n,i,u),ugt(r,u)}function J_t(r){T(r,function(t){var e=Zf(t.outEdges,$T),n=Zf(t.inEdges,$T),a=t.getValue()||0,o=Math.max(e,n,a);t.setLayout({value:o},!0)})}function j_t(r,t,e,n,a,o,i){for(var u=[],l=[],f=[],s=[],c=0,p=0;p<t.length;p++)u[p]=1;for(var p=0;p<r.length;p++)l[p]=r[p].inEdges.length,l[p]===0&&f.push(r[p]);for(var v=-1;f.length;){for(var d=0;d<f.length;d++){var m=f[d],h=m.hostGraph.data.getRawDataItem(m.dataIndex),_=h.depth!=null&&h.depth>=0;_&&h.depth>v&&(v=h.depth),m.setLayout({depth:_?h.depth:c},!0),o==="vertical"?m.setLayout({dy:e},!0):m.setLayout({dx:e},!0);for(var g=0;g<m.outEdges.length;g++){var y=m.outEdges[g],D=t.indexOf(y);u[D]=0;var b=y.node2,C=r.indexOf(b);--l[C]===0&&s.indexOf(b)<0&&s.push(b)}}++c,f=s,s=[]}for(var p=0;p<u.length;p++)if(u[p]===1)throw new Error("Sankey is a DAG, the original data has cycle!");var x=v>c-1?v:c-1;i&&i!=="left"&&Y_t(r,i,o,x);var w=o==="vertical"?(a-e)/x:(n-e)/x;Z_t(r,w,o)}function H6(r){var t=r.hostGraph.data.getRawDataItem(r.dataIndex);return t.depth!=null&&t.depth>=0}function Y_t(r,t,e,n){if(t==="right"){for(var a=[],o=r,i=0;o.length;){for(var u=0;u<o.length;u++){var l=o[u];l.setLayout({skNodeHeight:i},!0);for(var f=0;f<l.inEdges.length;f++){var s=l.inEdges[f];a.indexOf(s.node1)<0&&a.push(s.node1)}}o=a,a=[],++i}T(r,function(c){H6(c)||c.setLayout({depth:Math.max(0,n-c.getLayout().skNodeHeight)},!0)})}else t==="justify"&&Q_t(r,n)}function Q_t(r,t){T(r,function(e){!H6(e)&&!e.outEdges.length&&e.setLayout({depth:t},!0)})}function Z_t(r,t,e){T(r,function(n){var a=n.getLayout().depth*t;e==="vertical"?n.setLayout({y:a},!0):n.setLayout({x:a},!0)})}function X_t(r,t,e,n,a,o,i){var u=K_t(r,i);tgt(u,t,e,n,a,i),BL(u,a,e,n,i);for(var l=1;o>0;o--)l*=.99,egt(u,l,i),BL(u,a,e,n,i),igt(u,l,i),BL(u,a,e,n,i)}function K_t(r,t){var e=[],n=t==="vertical"?"y":"x",a=jh(r,function(o){return o.getLayout()[n]});return a.keys.sort(function(o,i){return o-i}),T(a.keys,function(o){e.push(a.buckets.get(o))}),e}function tgt(r,t,e,n,a,o){var i=1/0;T(r,function(u){var l=u.length,f=0;T(u,function(c){f+=c.getLayout().value});var s=o==="vertical"?(n-(l-1)*a)/f:(e-(l-1)*a)/f;s<i&&(i=s)}),T(r,function(u){T(u,function(l,f){var s=l.getLayout().value*i;o==="vertical"?(l.setLayout({x:f},!0),l.setLayout({dx:s},!0)):(l.setLayout({y:f},!0),l.setLayout({dy:s},!0))})}),T(t,function(u){var l=+u.getValue()*i;u.setLayout({dy:l},!0)})}function BL(r,t,e,n,a){var o=a==="vertical"?"x":"y";T(r,function(i){i.sort(function(m,h){return m.getLayout()[o]-h.getLayout()[o]});for(var u,l,f,s=0,c=i.length,p=a==="vertical"?"dx":"dy",v=0;v<c;v++)l=i[v],f=s-l.getLayout()[o],f>0&&(u=l.getLayout()[o]+f,a==="vertical"?l.setLayout({x:u},!0):l.setLayout({y:u},!0)),s=l.getLayout()[o]+l.getLayout()[p]+t;var d=a==="vertical"?n:e;if(f=s-t-d,f>0){u=l.getLayout()[o]-f,a==="vertical"?l.setLayout({x:u},!0):l.setLayout({y:u},!0),s=u;for(var v=c-2;v>=0;--v)l=i[v],f=l.getLayout()[o]+l.getLayout()[p]+t-s,f>0&&(u=l.getLayout()[o]-f,a==="vertical"?l.setLayout({x:u},!0):l.setLayout({y:u},!0)),s=l.getLayout()[o]}})}function egt(r,t,e){T(r.slice().reverse(),function(n){T(n,function(a){if(a.outEdges.length){var o=Zf(a.outEdges,rgt,e)/Zf(a.outEdges,$T);if(isNaN(o)){var i=a.outEdges.length;o=i?Zf(a.outEdges,ngt,e)/i:0}if(e==="vertical"){var u=a.getLayout().x+(o-Xf(a,e))*t;a.setLayout({x:u},!0)}else{var l=a.getLayout().y+(o-Xf(a,e))*t;a.setLayout({y:l},!0)}}})})}function rgt(r,t){return Xf(r.node2,t)*r.getValue()}function ngt(r,t){return Xf(r.node2,t)}function agt(r,t){return Xf(r.node1,t)*r.getValue()}function ogt(r,t){return Xf(r.node1,t)}function Xf(r,t){return t==="vertical"?r.getLayout().x+r.getLayout().dx/2:r.getLayout().y+r.getLayout().dy/2}function $T(r){return r.getValue()}function Zf(r,t,e){for(var n=0,a=r.length,o=-1;++o<a;){var i=+t(r[o],e);isNaN(i)||(n+=i)}return n}function igt(r,t,e){T(r,function(n){T(n,function(a){if(a.inEdges.length){var o=Zf(a.inEdges,agt,e)/Zf(a.inEdges,$T);if(isNaN(o)){var i=a.inEdges.length;o=i?Zf(a.inEdges,ogt,e)/i:0}if(e==="vertical"){var u=a.getLayout().x+(o-Xf(a,e))*t;a.setLayout({x:u},!0)}else{var l=a.getLayout().y+(o-Xf(a,e))*t;a.setLayout({y:l},!0)}}})})}function ugt(r,t){var e=t==="vertical"?"x":"y";T(r,function(n){n.outEdges.sort(function(a,o){return a.node2.getLayout()[e]-o.node2.getLayout()[e]}),n.inEdges.sort(function(a,o){return a.node1.getLayout()[e]-o.node1.getLayout()[e]})}),T(r,function(n){var a=0,o=0;T(n.outEdges,function(i){i.setLayout({sy:a},!0),a+=i.getLayout().dy}),T(n.inEdges,function(i){i.setLayout({ty:o},!0),o+=i.getLayout().dy})})}function $L(r){r.eachSeriesByType("sankey",function(t){var e=t.getGraph(),n=e.nodes,a=e.edges;if(n.length){var o=1/0,i=-1/0;T(n,function(u){var l=u.getLayout().value;l<o&&(o=l),l>i&&(i=l)}),T(n,function(u){var l=new zr({type:"color",mappingMethod:"linear",dataExtent:[o,i],visual:t.get("color")}),f=l.mapValueToVisual(u.getLayout().value),s=u.getModel().get(["itemStyle","color"]);s!=null?(u.setVisual("color",s),u.setVisual("style",{fill:s})):(u.setVisual("color",f),u.setVisual("style",{fill:f}))})}a.length&&T(a,function(u){var l=u.getModel().get("lineStyle");u.setVisual("style",l)})})}function qL(r){r.registerChartView(O6),r.registerSeriesModel(U6),r.registerLayout(VL),r.registerVisual($L),r.registerAction({type:"dragNode",event:"dragnode",update:"update"},function(t,e){e.eachComponent({mainType:"series",subType:"sankey",query:t},function(n){n.setNodePosition(t.dataIndex,[t.localX,t.localY])})})}var qT=(function(){function r(){}return r.prototype.getInitialData=function(t,e){var n,a=e.getComponent("xAxis",this.get("xAxisIndex")),o=e.getComponent("yAxis",this.get("yAxisIndex")),i=a.get("type"),u=o.get("type"),l;i==="category"?(t.layout="horizontal",n=a.getOrdinalMeta(),l=!0):u==="category"?(t.layout="vertical",n=o.getOrdinalMeta(),l=!0):t.layout=t.layout||"horizontal";var f=["x","y"],s=t.layout==="horizontal"?0:1,c=this._baseAxisDim=f[s],p=f[1-s],v=[a,o],d=v[s].get("type"),m=v[1-s].get("type"),h=t.data;if(h&&l){var _=[];T(h,function(D,b){var C;O(D)?(C=D.slice(),D.unshift(b)):O(D.value)?(C=N({},D),C.value=C.value.slice(),D.value.unshift(b)):C=D,_.push(C)}),t.data=_}var g=this.defaultValueDimensions,y=[{name:c,type:Rc(d),ordinalMeta:n,otherDims:{tooltip:!1,itemName:0},dimsDef:["base"]},{name:p,type:Rc(m),dimsDef:g.slice()}];return Ao(this,{coordDimensions:y,dimensionsCount:g.length+1,encodeDefaulter:gt(Wb,y,this)})},r.prototype.getBaseAxis=function(){var t=this._baseAxisDim;return this.ecModel.getComponent(t+"Axis",this.get(t+"AxisIndex")).axis},r})();var k6=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.defaultValueDimensions=[{name:"min",defaultTooltip:!0},{name:"Q1",defaultTooltip:!0},{name:"median",defaultTooltip:!0},{name:"Q3",defaultTooltip:!0},{name:"max",defaultTooltip:!0}],e.visualDrawType="stroke",e}return t.type="series.boxplot",t.dependencies=["xAxis","yAxis","grid"],t.defaultOption={z:2,coordinateSystem:"cartesian2d",legendHoverLink:!0,layout:null,boxWidth:[7,50],itemStyle:{color:"#fff",borderWidth:1},emphasis:{scale:!0,itemStyle:{borderWidth:2,shadowBlur:5,shadowOffsetX:1,shadowOffsetY:1,shadowColor:"rgba(0,0,0,0.2)"}},animationDuration:800},t})(xe);Ve(k6,qT,!0);var z6=k6;var lgt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.render=function(e,n,a){var o=e.getData(),i=this.group,u=this._data;this._data||i.removeAll();var l=e.get("layout")==="horizontal"?1:0;o.diff(u).add(function(f){if(o.hasValue(f)){var s=o.getItemLayout(f),c=W6(s,o,f,l,!0);o.setItemGraphicEl(f,c),i.add(c)}}).update(function(f,s){var c=u.getItemGraphicEl(s);if(!o.hasValue(f)){i.remove(c);return}var p=o.getItemLayout(f);c?(rn(c),G6(p,c,o,f)):c=W6(p,o,f,l),i.add(c),o.setItemGraphicEl(f,c)}).remove(function(f){var s=u.getItemGraphicEl(f);s&&i.remove(s)}).execute(),this._data=o},t.prototype.remove=function(e){var n=this.group,a=this._data;this._data=null,a&&a.eachItemGraphicEl(function(o){o&&n.remove(o)})},t.type="boxplot",t})(me),fgt=(function(){function r(){}return r})(),sgt=(function(r){A(t,r);function t(e){var n=r.call(this,e)||this;return n.type="boxplotBoxPath",n}return t.prototype.getDefaultShape=function(){return new fgt},t.prototype.buildPath=function(e,n){var a=n.points,o=0;for(e.moveTo(a[o][0],a[o][1]),o++;o<4;o++)e.lineTo(a[o][0],a[o][1]);for(e.closePath();o<a.length;o++)e.moveTo(a[o][0],a[o][1]),o++,e.lineTo(a[o][0],a[o][1])},t})(bt);function W6(r,t,e,n,a){var o=r.ends,i=new sgt({shape:{points:a?cgt(o,n,r):o}});return G6(r,i,t,e,a),i}function G6(r,t,e,n,a){var o=e.hostModel,i=Ot[a?"initProps":"updateProps"];i(t,{shape:{points:r.ends}},o,n),t.useStyle(e.getItemVisual(n,"style")),t.style.strokeNoScale=!0,t.z2=100;var u=e.getItemModel(n),l=u.getModel("emphasis");fr(t,u),Me(t,l.get("focus"),l.get("blurScope"),l.get("disabled"))}function cgt(r,t,e){return U(r,function(n){return n=n.slice(),n[t]=e.initBaseline,n})}var B6=lgt;var Cg=T;function JL(r){var t=pgt(r);Cg(t,function(e){var n=e.seriesModels;n.length&&(vgt(e),Cg(n,function(a,o){dgt(a,e.boxOffsetList[o],e.boxWidthList[o])}))})}function pgt(r){var t=[],e=[];return r.eachSeriesByType("boxplot",function(n){var a=n.getBaseAxis(),o=wt(e,a);o<0&&(o=e.length,e[o]=a,t[o]={axis:a,seriesModels:[]}),t[o].seriesModels.push(n)}),t}function vgt(r){var t=r.axis,e=r.seriesModels,n=e.length,a=r.boxWidthList=[],o=r.boxOffsetList=[],i=[],u;if(t.type==="category")u=t.getBandWidth();else{var l=0;Cg(e,function(d){l=Math.max(l,d.getData().count())});var f=t.getExtent();u=Math.abs(f[1]-f[0])/l}Cg(e,function(d){var m=d.get("boxWidth");O(m)||(m=[m,m]),i.push([Y(m[0],u)||0,Y(m[1],u)||0])});var s=u*.8-2,c=s/n*.3,p=(s-c*(n-1))/n,v=p/2-s/2;Cg(e,function(d,m){o.push(v),v+=c+p,a.push(Math.min(Math.max(p,i[m][0]),i[m][1]))})}function dgt(r,t,e){var n=r.coordinateSystem,a=r.getData(),o=e/2,i=r.get("layout")==="horizontal"?0:1,u=1-i,l=["x","y"],f=a.mapDimension(l[i]),s=a.mapDimensionsAll(l[u]);if(f==null||s.length<5)return;for(var c=0;c<a.count();c++){var p=a.get(f,c),v=y(p,s[2],c),d=y(p,s[0],c),m=y(p,s[1],c),h=y(p,s[3],c),_=y(p,s[4],c),g=[];D(g,m,!1),D(g,h,!0),g.push(d,m,_,h),b(g,d),b(g,_),b(g,v),a.setItemLayout(c,{initBaseline:v[u],ends:g})}function y(C,x,w){var S=a.get(x,w),E=[];E[i]=C,E[u]=S;var M;return isNaN(C)||isNaN(S)?M=[NaN,NaN]:(M=n.dataToPoint(E),M[i]+=t),M}function D(C,x,w){var S=x.slice(),E=x.slice();S[i]+=o,E[i]-=o,w?C.push(S,E):C.push(E,S)}function b(C,x){var w=x.slice(),S=x.slice();w[i]-=o,S[i]+=o,C.push(w,S)}}function jL(r,t){t=t||{};for(var e=[],n=[],a=t.boundIQR,o=a==="none"||a===0,i=0;i<r.length;i++){var u=fn(r[i].slice()),l=Z0(u,.25),f=Z0(u,.5),s=Z0(u,.75),c=u[0],p=u[u.length-1],v=(a??1.5)*(s-l),d=o?c:Math.max(c,l-v),m=o?p:Math.min(p,s+v),h=t.itemNameFormatter,_=X(h)?h({value:i}):V(h)?h.replace("{value}",i+""):i+"";e.push([_,d,l,f,s,m]);for(var g=0;g<u.length;g++){var y=u[g];if(y<d||y>m){var D=[_,y];n.push(D)}}}return{boxData:e,outliers:n}}var V6={type:"echarts:boxplot",transform:function(t){var e=t.upstream;if(e.sourceFormat!==Yr){var n="";Fe(n)}var a=jL(e.getRawData(),t.config);return[{dimensions:["ItemName","Low","Q1","Q2","Q3","High"],data:a.boxData},{data:a.outliers}]}};function YL(r){r.registerSeriesModel(z6),r.registerChartView(B6),r.registerLayout(JL),r.registerTransform(V6)}var mgt=["color","borderColor"],hgt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.render=function(e,n,a){this.group.removeClipPath(),this._progressiveEls=null,this._updateDrawMode(e),this._isLargeDraw?this._renderLarge(e):this._renderNormal(e)},t.prototype.incrementalPrepareRender=function(e,n,a){this._clear(),this._updateDrawMode(e)},t.prototype.incrementalRender=function(e,n,a,o){this._progressiveEls=[],this._isLargeDraw?this._incrementalRenderLarge(e,n):this._incrementalRenderNormal(e,n)},t.prototype.eachRendered=function(e){Sa(this._progressiveEls||this.group,e)},t.prototype._updateDrawMode=function(e){var n=e.pipelineContext.large;(this._isLargeDraw==null||n!==this._isLargeDraw)&&(this._isLargeDraw=n,this._clear())},t.prototype._renderNormal=function(e){var n=e.getData(),a=this._data,o=this.group,i=n.getLayout("isSimpleBox"),u=e.get("clip",!0),l=e.coordinateSystem,f=l.getArea&&l.getArea();this._data||o.removeAll(),n.diff(a).add(function(s){if(n.hasValue(s)){var c=n.getItemLayout(s);if(u&&$6(f,c))return;var p=QL(c,s,!0);Ae(p,{shape:{points:c.ends}},e,s),ZL(p,n,s,i),o.add(p),n.setItemGraphicEl(s,p)}}).update(function(s,c){var p=a.getItemGraphicEl(c);if(!n.hasValue(s)){o.remove(p);return}var v=n.getItemLayout(s);if(u&&$6(f,v)){o.remove(p);return}p?($t(p,{shape:{points:v.ends}},e,s),rn(p)):p=QL(v,s),ZL(p,n,s,i),o.add(p),n.setItemGraphicEl(s,p)}).remove(function(s){var c=a.getItemGraphicEl(s);c&&o.remove(c)}).execute(),this._data=n},t.prototype._renderLarge=function(e){this._clear(),q6(e,this.group);var n=e.get("clip",!0)?Iu(e.coordinateSystem,!1,e):null;n?this.group.setClipPath(n):this.group.removeClipPath()},t.prototype._incrementalRenderNormal=function(e,n){for(var a=n.getData(),o=a.getLayout("isSimpleBox"),i;(i=e.next())!=null;){var u=a.getItemLayout(i),l=QL(u,i);ZL(l,a,i,o),l.incremental=!0,this.group.add(l),this._progressiveEls.push(l)}},t.prototype._incrementalRenderLarge=function(e,n){q6(n,this.group,this._progressiveEls,!0)},t.prototype.remove=function(e){this._clear()},t.prototype._clear=function(){this.group.removeAll(),this._data=null},t.type="candlestick",t})(me),_gt=(function(){function r(){}return r})(),ggt=(function(r){A(t,r);function t(e){var n=r.call(this,e)||this;return n.type="normalCandlestickBox",n}return t.prototype.getDefaultShape=function(){return new _gt},t.prototype.buildPath=function(e,n){var a=n.points;this.__simpleBox?(e.moveTo(a[4][0],a[4][1]),e.lineTo(a[6][0],a[6][1])):(e.moveTo(a[0][0],a[0][1]),e.lineTo(a[1][0],a[1][1]),e.lineTo(a[2][0],a[2][1]),e.lineTo(a[3][0],a[3][1]),e.closePath(),e.moveTo(a[4][0],a[4][1]),e.lineTo(a[5][0],a[5][1]),e.moveTo(a[6][0],a[6][1]),e.lineTo(a[7][0],a[7][1]))},t})(bt);function QL(r,t,e){var n=r.ends;return new ggt({shape:{points:e?ygt(n,r):n},z2:100})}function $6(r,t){for(var e=!0,n=0;n<t.ends.length;n++)if(r.contain(t.ends[n][0],t.ends[n][1])){e=!1;break}return e}function ZL(r,t,e,n){var a=t.getItemModel(e);r.useStyle(t.getItemVisual(e,"style")),r.style.strokeNoScale=!0,r.__simpleBox=n,fr(r,a)}function ygt(r,t){return U(r,function(e){return e=e.slice(),e[1]=t.initBaseline,e})}var Dgt=(function(){function r(){}return r})(),XL=(function(r){A(t,r);function t(e){var n=r.call(this,e)||this;return n.type="largeCandlestickBox",n}return t.prototype.getDefaultShape=function(){return new Dgt},t.prototype.buildPath=function(e,n){for(var a=n.points,o=0;o<a.length;)if(this.__sign===a[o++]){var i=a[o++];e.moveTo(i,a[o++]),e.lineTo(i,a[o++])}else o+=3},t})(bt);function q6(r,t,e,n){var a=r.getData(),o=a.getLayout("largePoints"),i=new XL({shape:{points:o},__sign:1,ignoreCoarsePointer:!0});t.add(i);var u=new XL({shape:{points:o},__sign:-1,ignoreCoarsePointer:!0});t.add(u);var l=new XL({shape:{points:o},__sign:0,ignoreCoarsePointer:!0});t.add(l),KL(1,i,r,a),KL(-1,u,r,a),KL(0,l,r,a),n&&(i.incremental=!0,u.incremental=!0),e&&e.push(i,u)}function KL(r,t,e,n){var a=e.get(["itemStyle",r>0?"borderColor":"borderColor0"])||e.get(["itemStyle",r>0?"color":"color0"]);r===0&&(a=e.get(["itemStyle","borderColorDoji"]));var o=e.getModel("itemStyle").getItemStyle(mgt);t.useStyle(o),t.style.fill=null,t.style.stroke=a}var J6=hgt;var j6=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.defaultValueDimensions=[{name:"open",defaultTooltip:!0},{name:"close",defaultTooltip:!0},{name:"lowest",defaultTooltip:!0},{name:"highest",defaultTooltip:!0}],e}return t.prototype.getShadowDim=function(){return"open"},t.prototype.brushSelector=function(e,n,a){var o=n.getItemLayout(e);return o&&a.rect(o.brushRect)},t.type="series.candlestick",t.dependencies=["xAxis","yAxis","grid"],t.defaultOption={z:2,coordinateSystem:"cartesian2d",legendHoverLink:!0,layout:null,clip:!0,itemStyle:{color:"#eb5454",color0:"#47b262",borderColor:"#eb5454",borderColor0:"#47b262",borderColorDoji:null,borderWidth:1},emphasis:{scale:!0,itemStyle:{borderWidth:2}},barMaxWidth:null,barMinWidth:null,barWidth:null,large:!0,largeThreshold:600,progressive:3e3,progressiveThreshold:1e4,progressiveChunkMode:"mod",animationEasing:"linear",animationDuration:300},t})(xe);Ve(j6,qT,!0);var Y6=j6;function tR(r){!r||!O(r.series)||T(r.series,function(t){nt(t)&&t.type==="k"&&(t.type="candlestick")})}var bgt=["itemStyle","borderColor"],Cgt=["itemStyle","borderColor0"],Tgt=["itemStyle","borderColorDoji"],xgt=["itemStyle","color"],wgt=["itemStyle","color0"],Sgt={seriesType:"candlestick",plan:So(),performRawSeries:!0,reset:function(r,t){function e(o,i){return i.get(o>0?xgt:wgt)}function n(o,i){return i.get(o===0?Tgt:o>0?bgt:Cgt)}if(!t.isSeriesFiltered(r)){var a=r.pipelineContext.large;return!a&&{progress:function(o,i){for(var u;(u=o.next())!=null;){var l=i.getItemModel(u),f=i.getItemLayout(u).sign,s=l.getItemStyle();s.fill=e(f,l),s.stroke=n(f,l)||s.fill;var c=i.ensureUniqueItemVisual(u,"style");N(c,s)}}}}}},Q6=Sgt;var Egt={seriesType:"candlestick",plan:So(),reset:function(r){var t=r.coordinateSystem,e=r.getData(),n=Mgt(r,e),a=0,o=1,i=["x","y"],u=e.getDimensionIndex(e.mapDimension(i[a])),l=U(e.mapDimensionsAll(i[o]),e.getDimensionIndex,e),f=l[0],s=l[1],c=l[2],p=l[3];if(e.setLayout({candleWidth:n,isSimpleBox:n<=1.3}),u<0||l.length<4)return;return{progress:r.pipelineContext.large?d:v};function v(m,h){for(var _,g=h.getStore();(_=m.next())!=null;){var y=g.get(u,_),D=g.get(f,_),b=g.get(s,_),C=g.get(c,_),x=g.get(p,_),w=Math.min(D,b),S=Math.max(D,b),E=k(w,y),M=k(S,y),I=k(C,y),F=k(x,y),L=[];H(L,M,0),H(L,E,1),L.push(j(F),j(M),j(I),j(E));var R=h.getItemModel(_),P=!!R.get(["itemStyle","borderColorDoji"]);h.setItemLayout(_,{sign:Z6(g,_,D,b,s,P),initBaseline:D>b?M[o]:E[o],ends:L,brushRect:G(C,x,y)})}function k(rt,xt){var J=[];return J[a]=xt,J[o]=rt,isNaN(xt)||isNaN(rt)?[NaN,NaN]:t.dataToPoint(J)}function H(rt,xt,J){var ot=xt.slice(),At=xt.slice();ot[a]=s_(ot[a]+n/2,1,!1),At[a]=s_(At[a]-n/2,1,!0),J?rt.push(ot,At):rt.push(At,ot)}function G(rt,xt,J){var ot=k(rt,J),At=k(xt,J);return ot[a]-=n/2,At[a]-=n/2,{x:ot[0],y:ot[1],width:o?n:At[0]-ot[0],height:o?At[1]-ot[1]:n}}function j(rt){return rt[a]=s_(rt[a],1),rt}}function d(m,h){for(var _=Aa(m.count*4),g=0,y,D=[],b=[],C,x=h.getStore(),w=!!r.get(["itemStyle","borderColorDoji"]);(C=m.next())!=null;){var S=x.get(u,C),E=x.get(f,C),M=x.get(s,C),I=x.get(c,C),F=x.get(p,C);if(isNaN(S)||isNaN(I)||isNaN(F)){_[g++]=NaN,g+=3;continue}_[g++]=Z6(x,C,E,M,s,w),D[a]=S,D[o]=I,y=t.dataToPoint(D,null,b),_[g++]=y?y[0]:NaN,_[g++]=y?y[1]:NaN,D[o]=F,y=t.dataToPoint(D,null,b),_[g++]=y?y[1]:NaN}h.setLayout("largePoints",_)}}};function Z6(r,t,e,n,a,o){var i;return e>n?i=-1:e<n?i=1:i=o?0:t>0?r.get(a,t-1)<=n?1:-1:1,i}function Mgt(r,t){var e=r.getBaseAxis(),n,a=e.type==="category"?e.getBandWidth():(n=e.getExtent(),Math.abs(n[1]-n[0])/t.count()),o=Y(Tt(r.get("barMaxWidth"),a),a),i=Y(Tt(r.get("barMinWidth"),1),a),u=r.get("barWidth");return u!=null?Y(u,a):Math.max(Math.min(a/2,o),i)}var X6=Egt;function eR(r){r.registerChartView(J6),r.registerSeriesModel(Y6),r.registerPreprocessor(tR),r.registerVisual(Q6),r.registerLayout(X6)}function K6(r,t){var e=t.rippleEffectColor||t.color;r.eachChild(function(n){n.attr({z:t.z,zlevel:t.zlevel,style:{stroke:t.brushType==="stroke"?e:null,fill:t.brushType==="fill"?e:null}})})}var Agt=(function(r){A(t,r);function t(e,n){var a=r.call(this)||this,o=new El(e,n),i=new at;return a.add(o),a.add(i),a.updateData(e,n),a}return t.prototype.stopEffectAnimation=function(){this.childAt(1).removeAll()},t.prototype.startEffectAnimation=function(e){for(var n=e.symbolType,a=e.color,o=e.rippleNumber,i=this.childAt(1),u=0;u<o;u++){var l=We(n,-1,-1,2,2,a);l.attr({style:{strokeNoScale:!0},z2:99,silent:!0,scaleX:.5,scaleY:.5});var f=-u/o*e.period+e.effectOffset;l.animate("",!0).when(e.period,{scaleX:e.rippleScale/2,scaleY:e.rippleScale/2}).delay(f).start(),l.animateStyle(!0).when(e.period,{opacity:0}).delay(f).start(),i.add(l)}K6(i,e)},t.prototype.updateEffectAnimation=function(e){for(var n=this._effectCfg,a=this.childAt(1),o=["symbolType","period","rippleScale","rippleNumber"],i=0;i<o.length;i++){var u=o[i];if(n[u]!==e[u]){this.stopEffectAnimation(),this.startEffectAnimation(e);return}}K6(a,e)},t.prototype.highlight=function(){fa(this)},t.prototype.downplay=function(){sa(this)},t.prototype.getSymbolType=function(){var e=this.childAt(0);return e&&e.getSymbolType()},t.prototype.updateData=function(e,n){var a=this,o=e.hostModel;this.childAt(0).updateData(e,n);var i=this.childAt(1),u=e.getItemModel(n),l=e.getItemVisual(n,"symbol"),f=Pi(e.getItemVisual(n,"symbolSize")),s=e.getItemVisual(n,"style"),c=s&&s.fill,p=u.getModel("emphasis");i.setScale(f),i.traverse(function(h){h.setStyle("fill",c)});var v=Eo(e.getItemVisual(n,"symbolOffset"),f);v&&(i.x=v[0],i.y=v[1]);var d=e.getItemVisual(n,"symbolRotate");i.rotation=(d||0)*Math.PI/180||0;var m={};m.showEffectOn=o.get("showEffectOn"),m.rippleScale=u.get(["rippleEffect","scale"]),m.brushType=u.get(["rippleEffect","brushType"]),m.period=u.get(["rippleEffect","period"])*1e3,m.effectOffset=n/e.count(),m.z=o.getShallow("z")||0,m.zlevel=o.getShallow("zlevel")||0,m.symbolType=l,m.color=c,m.rippleEffectColor=u.get(["rippleEffect","color"]),m.rippleNumber=u.get(["rippleEffect","number"]),m.showEffectOn==="render"?(this._effectCfg?this.updateEffectAnimation(m):this.startEffectAnimation(m),this._effectCfg=m):(this._effectCfg=null,this.stopEffectAnimation(),this.onHoverStateChange=function(h){h==="emphasis"?m.showEffectOn!=="render"&&a.startEffectAnimation(m):h==="normal"&&m.showEffectOn!=="render"&&a.stopEffectAnimation()}),this._effectCfg=m,Me(this,p.get("focus"),p.get("blurScope"),p.get("disabled"))},t.prototype.fadeOut=function(e){e&&e()},t})(at),t7=Agt;var Igt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.init=function(){this._symbolDraw=new Au(t7)},t.prototype.render=function(e,n,a){var o=e.getData(),i=this._symbolDraw;i.updateData(o,{clipShape:this._getClipShape(e)}),this.group.add(i.group)},t.prototype._getClipShape=function(e){var n=e.coordinateSystem,a=n&&n.getArea&&n.getArea();return e.get("clip",!0)?a:null},t.prototype.updateTransform=function(e,n,a){var o=e.getData();this.group.dirty();var i=Wi("").reset(e,n,a);i.progress&&i.progress({start:0,end:o.count(),count:o.count()},o),this._symbolDraw.updateLayout()},t.prototype._updateGroupTransform=function(e){var n=e.coordinateSystem;n&&n.getRoamTransform&&(this.group.transform=Lz(n.getRoamTransform()),this.group.decomposeTransform())},t.prototype.remove=function(e,n){this._symbolDraw&&this._symbolDraw.remove(!0)},t.type="effectScatter",t})(me),e7=Igt;var Fgt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.hasSymbolVisual=!0,e}return t.prototype.getInitialData=function(e,n){return Pn(null,this,{useEncodeDefaulter:!0})},t.prototype.brushSelector=function(e,n,a){return a.point(n.getItemLayout(e))},t.type="series.effectScatter",t.dependencies=["grid","polar"],t.defaultOption={coordinateSystem:"cartesian2d",z:2,legendHoverLink:!0,effectType:"ripple",progressive:0,showEffectOn:"render",clip:!0,rippleEffect:{period:4,scale:2.5,brushType:"fill",number:3},universalTransition:{divideShape:"clone"},symbolSize:10},t})(xe),r7=Fgt;function rR(r){r.registerChartView(e7),r.registerSeriesModel(r7),r.registerLayout(Wi("effectScatter"))}var Lgt=(function(r){A(t,r);function t(e,n,a){var o=r.call(this)||this;return o.add(o.createLine(e,n,a)),o._updateEffectSymbol(e,n),o}return t.prototype.createLine=function(e,n,a){return new cd(e,n,a)},t.prototype._updateEffectSymbol=function(e,n){var a=e.getItemModel(n),o=a.getModel("effect"),i=o.get("symbolSize"),u=o.get("symbol");O(i)||(i=[i,i]);var l=e.getItemVisual(n,"style"),f=o.get("color")||l&&l.stroke,s=this.childAt(1);this._symbolType!==u&&(this.remove(s),s=We(u,-.5,-.5,1,1,f),s.z2=100,s.culling=!0,this.add(s)),s&&(s.setStyle("shadowColor",f),s.setStyle(o.getItemStyle(["color"])),s.scaleX=i[0],s.scaleY=i[1],s.setColor(f),this._symbolType=u,this._symbolScale=i,this._updateEffectAnimation(e,o,n))},t.prototype._updateEffectAnimation=function(e,n,a){var o=this.childAt(1);if(o){var i=e.getItemLayout(a),u=n.get("period")*1e3,l=n.get("loop"),f=n.get("roundTrip"),s=n.get("constantSpeed"),c=ir(n.get("delay"),function(v){return v/e.count()*u/3});if(o.ignore=!0,this._updateAnimationPoints(o,i),s>0&&(u=this._getLineLength(o)/s*1e3),u!==this._period||l!==this._loop||f!==this._roundTrip){o.stopAnimation();var p=void 0;X(c)?p=c(a):p=c,o.__t>0&&(p=-u*o.__t),this._animateSymbol(o,u,p,l,f)}this._period=u,this._loop=l,this._roundTrip=f}},t.prototype._animateSymbol=function(e,n,a,o,i){if(n>0){e.__t=0;var u=this,l=e.animate("",o).when(i?n*2:n,{__t:i?2:1}).delay(a).during(function(){u._updateSymbolPosition(e)});o||l.done(function(){u.remove(e)}),l.start()}},t.prototype._getLineLength=function(e){return Wo(e.__p1,e.__cp1)+Wo(e.__cp1,e.__p2)},t.prototype._updateAnimationPoints=function(e,n){e.__p1=n[0],e.__p2=n[1],e.__cp1=n[2]||[(n[0][0]+n[1][0])/2,(n[0][1]+n[1][1])/2]},t.prototype.updateData=function(e,n,a){this.childAt(0).updateData(e,n,a),this._updateEffectSymbol(e,n)},t.prototype._updateSymbolPosition=function(e){var n=e.__p1,a=e.__p2,o=e.__cp1,i=e.__t<1?e.__t:2-e.__t,u=[e.x,e.y],l=u.slice(),f=Gr,s=Rh;u[0]=f(n[0],o[0],a[0],i),u[1]=f(n[1],o[1],a[1],i);var c=e.__t<1?s(n[0],o[0],a[0],i):s(a[0],o[0],n[0],1-i),p=e.__t<1?s(n[1],o[1],a[1],i):s(a[1],o[1],n[1],1-i);e.rotation=-Math.atan2(p,c)-Math.PI/2,(this._symbolType==="line"||this._symbolType==="rect"||this._symbolType==="roundRect")&&(e.__lastT!==void 0&&e.__lastT<e.__t?(e.scaleY=Wo(l,u)*1.05,i===1&&(u[0]=l[0]+(u[0]-l[0])/2,u[1]=l[1]+(u[1]-l[1])/2)):e.__lastT===1?e.scaleY=2*Wo(n,u):e.scaleY=this._symbolScale[1]),e.__lastT=e.__t,e.ignore=!1,e.x=u[0],e.y=u[1]},t.prototype.updateLayout=function(e,n){this.childAt(0).updateLayout(e,n);var a=e.getItemModel(n).getModel("effect");this._updateEffectAnimation(e,a,n)},t})(at),JT=Lgt;var Rgt=(function(r){A(t,r);function t(e,n,a){var o=r.call(this)||this;return o._createPolyline(e,n,a),o}return t.prototype._createPolyline=function(e,n,a){var o=e.getItemLayout(n),i=new yr({shape:{points:o}});this.add(i),this._updateCommonStl(e,n,a)},t.prototype.updateData=function(e,n,a){var o=e.hostModel,i=this.childAt(0),u={shape:{points:e.getItemLayout(n)}};$t(i,u,o,n),this._updateCommonStl(e,n,a)},t.prototype._updateCommonStl=function(e,n,a){var o=this.childAt(0),i=e.getItemModel(n),u=a&&a.emphasisLineStyle,l=a&&a.focus,f=a&&a.blurScope,s=a&&a.emphasisDisabled;if(!a||e.hasItemOption){var c=i.getModel("emphasis");u=c.getModel("lineStyle").getLineStyle(),s=c.get("disabled"),l=c.get("focus"),f=c.get("blurScope")}o.useStyle(e.getItemVisual(n,"style")),o.style.fill=null,o.style.strokeNoScale=!0;var p=o.ensureState("emphasis");p.style=u,Me(this,l,f,s)},t.prototype.updateLayout=function(e,n){var a=this.childAt(0);a.setShape("points",e.getItemLayout(n))},t})(at),jT=Rgt;var Pgt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e._lastFrame=0,e._lastFramePercent=0,e}return t.prototype.createLine=function(e,n,a){return new jT(e,n,a)},t.prototype._updateAnimationPoints=function(e,n){this._points=n;for(var a=[0],o=0,i=1;i<n.length;i++){var u=n[i-1],l=n[i];o+=Wo(u,l),a.push(o)}if(o===0){this._length=0;return}for(var i=0;i<a.length;i++)a[i]/=o;this._offsets=a,this._length=o},t.prototype._getLineLength=function(){return this._length},t.prototype._updateSymbolPosition=function(e){var n=e.__t<1?e.__t:2-e.__t,a=this._points,o=this._offsets,i=a.length;if(o){var u=this._lastFrame,l;if(n<this._lastFramePercent){var f=Math.min(u+1,i-1);for(l=f;l>=0&&!(o[l]<=n);l--);l=Math.min(l,i-2)}else{for(l=u;l<i&&!(o[l]>n);l++);l=Math.min(l-1,i-2)}var s=(n-o[l])/(o[l+1]-o[l]),c=a[l],p=a[l+1];e.x=c[0]*(1-s)+s*p[0],e.y=c[1]*(1-s)+s*p[1];var v=e.__t<1?p[0]-c[0]:c[0]-p[0],d=e.__t<1?p[1]-c[1]:c[1]-p[1];e.rotation=-Math.atan2(d,v)-Math.PI/2,this._lastFrame=l,this._lastFramePercent=n,e.ignore=!1}},t})(JT),n7=Pgt;var Ngt=(function(){function r(){this.polyline=!1,this.curveness=0,this.segs=[]}return r})(),Ogt=(function(r){A(t,r);function t(e){var n=r.call(this,e)||this;return n._off=0,n.hoverDataIdx=-1,n}return t.prototype.reset=function(){this.notClear=!1,this._off=0},t.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},t.prototype.getDefaultShape=function(){return new Ngt},t.prototype.buildPath=function(e,n){var a=n.segs,o=n.curveness,i;if(n.polyline)for(i=this._off;i<a.length;){var u=a[i++];if(u>0){e.moveTo(a[i++],a[i++]);for(var l=1;l<u;l++)e.lineTo(a[i++],a[i++])}}else for(i=this._off;i<a.length;){var f=a[i++],s=a[i++],c=a[i++],p=a[i++];if(e.moveTo(f,s),o>0){var v=(f+c)/2-(s-p)*o,d=(s+p)/2-(c-f)*o;e.quadraticCurveTo(v,d,c,p)}else e.lineTo(c,p)}this.incremental&&(this._off=i,this.notClear=!0)},t.prototype.findDataIndex=function(e,n){var a=this.shape,o=a.segs,i=a.curveness,u=this.style.lineWidth;if(a.polyline)for(var l=0,f=0;f<o.length;){var s=o[f++];if(s>0)for(var c=o[f++],p=o[f++],v=1;v<s;v++){var d=o[f++],m=o[f++];if(gu(c,p,d,m,u,e,n))return l}l++}else for(var l=0,f=0;f<o.length;){var c=o[f++],p=o[f++],d=o[f++],m=o[f++];if(i>0){var h=(c+d)/2-(p-m)*i,_=(p+m)/2-(d-c)*i;if(ob(c,p,h,_,d,m,u,e,n))return l}else if(gu(c,p,d,m,u,e,n))return l;l++}return-1},t.prototype.contain=function(e,n){var a=this.transformCoordToLocal(e,n),o=this.getBoundingRect();if(e=a[0],n=a[1],o.contain(e,n)){var i=this.hoverDataIdx=this.findDataIndex(e,n);return i>=0}return this.hoverDataIdx=-1,!1},t.prototype.getBoundingRect=function(){var e=this._rect;if(!e){for(var n=this.shape,a=n.segs,o=1/0,i=1/0,u=-1/0,l=-1/0,f=0;f<a.length;){var s=a[f++],c=a[f++];o=Math.min(s,o),u=Math.max(s,u),i=Math.min(c,i),l=Math.max(c,l)}e=this._rect=new yt(o,i,u,l)}return e},t})(bt),Ugt=(function(){function r(){this.group=new at}return r.prototype.updateData=function(t){this._clear();var e=this._create();e.setShape({segs:t.getLayout("linesPoints")}),this._setCommon(e,t)},r.prototype.incrementalPrepareUpdate=function(t){this.group.removeAll(),this._clear()},r.prototype.incrementalUpdate=function(t,e){var n=this._newAdded[0],a=e.getLayout("linesPoints"),o=n&&n.shape.segs;if(o&&o.length<2e4){var i=o.length,u=new Float32Array(i+a.length);u.set(o),u.set(a,i),n.setShape({segs:u})}else{this._newAdded=[];var l=this._create();l.incremental=!0,l.setShape({segs:a}),this._setCommon(l,e),l.__startIndex=t.start}},r.prototype.remove=function(){this._clear()},r.prototype.eachRendered=function(t){this._newAdded[0]&&t(this._newAdded[0])},r.prototype._create=function(){var t=new Ogt({cursor:"default",ignoreCoarsePointer:!0});return this._newAdded.push(t),this.group.add(t),t},r.prototype._setCommon=function(t,e,n){var a=e.hostModel;t.setShape({polyline:a.get("polyline"),curveness:a.get(["lineStyle","curveness"])}),t.useStyle(a.getModel("lineStyle").getLineStyle()),t.style.strokeNoScale=!0;var o=e.getVisual("style");o&&o.stroke&&t.setStyle("stroke",o.stroke),t.setStyle("fill",null);var i=vt(t);i.seriesIndex=a.seriesIndex,t.on("mousemove",function(u){i.dataIndex=null;var l=t.hoverDataIdx;l>0&&(i.dataIndex=l+t.__startIndex)})},r.prototype._clear=function(){this._newAdded=[],this.group.removeAll()},r})(),a7=Ugt;var Hgt={seriesType:"lines",plan:So(),reset:function(r){var t=r.coordinateSystem;if(t){var e=r.get("polyline"),n=r.pipelineContext.large;return{progress:function(a,o){var i=[];if(n){var u=void 0,l=a.end-a.start;if(e){for(var f=0,s=a.start;s<a.end;s++)f+=r.getLineCoordsCount(s);u=new Float32Array(l+f*2)}else u=new Float32Array(l*4);for(var c=0,p=[],s=a.start;s<a.end;s++){var v=r.getLineCoords(s,i);e&&(u[c++]=v);for(var d=0;d<v;d++)p=t.dataToPoint(i[d],!1,p),u[c++]=p[0],u[c++]=p[1]}o.setLayout("linesPoints",u)}else for(var s=a.start;s<a.end;s++){var m=o.getItemModel(s),v=r.getLineCoords(s,i),h=[];if(e)for(var _=0;_<v;_++)h.push(t.dataToPoint(i[_]));else{h[0]=t.dataToPoint(i[0]),h[1]=t.dataToPoint(i[1]);var g=m.get(["lineStyle","curveness"]);+g&&(h[2]=[(h[0][0]+h[1][0])/2-(h[0][1]-h[1][1])*g,(h[0][1]+h[1][1])/2-(h[1][0]-h[0][0])*g])}o.setItemLayout(s,h)}}}}}},YT=Hgt;var kgt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.render=function(e,n,a){var o=e.getData(),i=this._updateLineDraw(o,e),u=e.get("zlevel"),l=e.get(["effect","trailLength"]),f=a.getZr(),s=f.painter.getType()==="svg";s||f.painter.getLayer(u).clear(!0),this._lastZlevel!=null&&!s&&f.configLayer(this._lastZlevel,{motionBlur:!1}),this._showEffect(e)&&l>0&&(s||f.configLayer(u,{motionBlur:!0,lastFrameAlpha:Math.max(Math.min(l/10+.9,1),0)})),i.updateData(o);var c=e.get("clip",!0)&&Iu(e.coordinateSystem,!1,e);c?this.group.setClipPath(c):this.group.removeClipPath(),this._lastZlevel=u,this._finished=!0},t.prototype.incrementalPrepareRender=function(e,n,a){var o=e.getData(),i=this._updateLineDraw(o,e);i.incrementalPrepareUpdate(o),this._clearLayer(a),this._finished=!1},t.prototype.incrementalRender=function(e,n,a){this._lineDraw.incrementalUpdate(e,n.getData()),this._finished=e.end===n.getData().count()},t.prototype.eachRendered=function(e){this._lineDraw&&this._lineDraw.eachRendered(e)},t.prototype.updateTransform=function(e,n,a){var o=e.getData(),i=e.pipelineContext;if(!this._finished||i.large||i.progressiveRender)return{update:!0};var u=YT.reset(e,n,a);u.progress&&u.progress({start:0,end:o.count(),count:o.count()},o),this._lineDraw.updateLayout(),this._clearLayer(a)},t.prototype._updateLineDraw=function(e,n){var a=this._lineDraw,o=this._showEffect(n),i=!!n.get("polyline"),u=n.pipelineContext,l=u.large;return(!a||o!==this._hasEffet||i!==this._isPolyline||l!==this._isLargeDraw)&&(a&&a.remove(),a=this._lineDraw=l?new a7:new pd(i?o?n7:jT:o?JT:cd),this._hasEffet=o,this._isPolyline=i,this._isLargeDraw=l),this.group.add(a.group),a},t.prototype._showEffect=function(e){return!!e.get(["effect","show"])},t.prototype._clearLayer=function(e){var n=e.getZr(),a=n.painter.getType()==="svg";!a&&this._lastZlevel!=null&&n.painter.getLayer(this._lastZlevel).clear(!0)},t.prototype.remove=function(e,n){this._lineDraw&&this._lineDraw.remove(),this._lineDraw=null,this._clearLayer(n)},t.prototype.dispose=function(e,n){this.remove(e,n)},t.type="lines",t})(me),o7=kgt;var zgt=typeof Uint32Array>"u"?Array:Uint32Array,Wgt=typeof Float64Array>"u"?Array:Float64Array;function i7(r){var t=r.data;t&&t[0]&&t[0][0]&&t[0][0].coord&&(r.data=U(t,function(e){var n=[e[0].coord,e[1].coord],a={coords:n};return e[0].name&&(a.fromName=e[0].name),e[1].name&&(a.toName=e[1].name),ev([a,e[0],e[1]])}))}var Ggt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.visualStyleAccessPath="lineStyle",e.visualDrawType="stroke",e}return t.prototype.init=function(e){e.data=e.data||[],i7(e);var n=this._processFlatCoordsArray(e.data);this._flatCoords=n.flatCoords,this._flatCoordsOffset=n.flatCoordsOffset,n.flatCoords&&(e.data=new Float32Array(n.count)),r.prototype.init.apply(this,arguments)},t.prototype.mergeOption=function(e){if(i7(e),e.data){var n=this._processFlatCoordsArray(e.data);this._flatCoords=n.flatCoords,this._flatCoordsOffset=n.flatCoordsOffset,n.flatCoords&&(e.data=new Float32Array(n.count))}r.prototype.mergeOption.apply(this,arguments)},t.prototype.appendData=function(e){var n=this._processFlatCoordsArray(e.data);n.flatCoords&&(this._flatCoords?(this._flatCoords=Ws(this._flatCoords,n.flatCoords),this._flatCoordsOffset=Ws(this._flatCoordsOffset,n.flatCoordsOffset)):(this._flatCoords=n.flatCoords,this._flatCoordsOffset=n.flatCoordsOffset),e.data=new Float32Array(n.count)),this.getRawData().appendData(e.data)},t.prototype._getCoordsFromItemModel=function(e){var n=this.getData().getItemModel(e),a=n.option instanceof Array?n.option:n.getShallow("coords");return a},t.prototype.getLineCoordsCount=function(e){return this._flatCoordsOffset?this._flatCoordsOffset[e*2+1]:this._getCoordsFromItemModel(e).length},t.prototype.getLineCoords=function(e,n){if(this._flatCoordsOffset){for(var a=this._flatCoordsOffset[e*2],o=this._flatCoordsOffset[e*2+1],i=0;i<o;i++)n[i]=n[i]||[],n[i][0]=this._flatCoords[a+i*2],n[i][1]=this._flatCoords[a+i*2+1];return o}else{for(var u=this._getCoordsFromItemModel(e),i=0;i<u.length;i++)n[i]=n[i]||[],n[i][0]=u[i][0],n[i][1]=u[i][1];return u.length}},t.prototype._processFlatCoordsArray=function(e){var n=0;if(this._flatCoords&&(n=this._flatCoords.length),Nt(e[0])){for(var a=e.length,o=new zgt(a),i=new Wgt(a),u=0,l=0,f=0,s=0;s<a;){f++;var c=e[s++];o[l++]=u+n,o[l++]=c;for(var p=0;p<c;p++){var v=e[s++],d=e[s++];i[u++]=v,i[u++]=d,s>a}}return{flatCoordsOffset:new Uint32Array(o.buffer,0,l),flatCoords:i,count:f}}return{flatCoordsOffset:null,flatCoords:null,count:e.length}},t.prototype.getInitialData=function(e,n){if(0)var a;var o=new wr(["value"],this);return o.hasItemOption=!1,o.initData(e.data,[],function(i,u,l,f){if(i instanceof Array)return NaN;o.hasItemOption=!0;var s=i.value;if(s!=null)return s instanceof Array?s[f]:s}),o},t.prototype.formatTooltip=function(e,n,a){var o=this.getData(),i=o.getItemModel(e),u=i.get("name");if(u)return u;var l=i.get("fromName"),f=i.get("toName"),s=[];return l!=null&&s.push(l),f!=null&&s.push(f),nr("nameValue",{name:s.join(" > ")})},t.prototype.preventIncremental=function(){return!!this.get(["effect","show"])},t.prototype.getProgressive=function(){var e=this.option.progressive;return e??(this.option.large?1e4:this.get("progressive"))},t.prototype.getProgressiveThreshold=function(){var e=this.option.progressiveThreshold;return e??(this.option.large?2e4:this.get("progressiveThreshold"))},t.prototype.getZLevelKey=function(){var e=this.getModel("effect"),n=e.get("trailLength");return this.getData().count()>this.getProgressiveThreshold()?this.id:e.get("show")&&n>0?n+"":""},t.type="series.lines",t.dependencies=["grid","polar","geo","calendar"],t.defaultOption={coordinateSystem:"geo",z:2,legendHoverLink:!0,xAxisIndex:0,yAxisIndex:0,symbol:["none","none"],symbolSize:[10,10],geoIndex:0,effect:{show:!1,period:4,constantSpeed:0,symbol:"circle",symbolSize:3,loop:!0,trailLength:.2},large:!1,largeThreshold:2e3,polyline:!1,clip:!0,label:{show:!1,position:"end"},lineStyle:{opacity:.5}},t})(xe),u7=Ggt;function QT(r){return r instanceof Array||(r=[r,r]),r}var Bgt={seriesType:"lines",reset:function(r){var t=QT(r.get("symbol")),e=QT(r.get("symbolSize")),n=r.getData();n.setVisual("fromSymbol",t&&t[0]),n.setVisual("toSymbol",t&&t[1]),n.setVisual("fromSymbolSize",e&&e[0]),n.setVisual("toSymbolSize",e&&e[1]);function a(o,i){var u=o.getItemModel(i),l=QT(u.getShallow("symbol",!0)),f=QT(u.getShallow("symbolSize",!0));l[0]&&o.setItemVisual(i,"fromSymbol",l[0]),l[1]&&o.setItemVisual(i,"toSymbol",l[1]),f[0]&&o.setItemVisual(i,"fromSymbolSize",f[0]),f[1]&&o.setItemVisual(i,"toSymbolSize",f[1])}return{dataEach:n.hasItemOption?a:null}}},l7=Bgt;function nR(r){r.registerChartView(o7),r.registerSeriesModel(u7),r.registerLayout(YT),r.registerVisual(l7)}var Vgt=256,$gt=(function(){function r(){this.blurSize=30,this.pointSize=20,this.maxOpacity=1,this.minOpacity=0,this._gradientPixels={inRange:null,outOfRange:null};var t=la.createCanvas();this.canvas=t}return r.prototype.update=function(t,e,n,a,o,i){var u=this._getBrush(),l=this._getGradient(o,"inRange"),f=this._getGradient(o,"outOfRange"),s=this.pointSize+this.blurSize,c=this.canvas,p=c.getContext("2d"),v=t.length;c.width=e,c.height=n;for(var d=0;d<v;++d){var m=t[d],h=m[0],_=m[1],g=m[2],y=a(g);p.globalAlpha=y,p.drawImage(u,h-s,_-s)}if(!c.width||!c.height)return c;for(var D=p.getImageData(0,0,c.width,c.height),b=D.data,C=0,x=b.length,w=this.minOpacity,S=this.maxOpacity,E=S-w;C<x;){var y=b[C+3]/256,M=Math.floor(y*(Vgt-1))*4;if(y>0){var I=i(y)?l:f;y>0&&(y=y*E+w),b[C++]=I[M],b[C++]=I[M+1],b[C++]=I[M+2],b[C++]=I[M+3]*y*256}else C+=4}return p.putImageData(D,0,0),c},r.prototype._getBrush=function(){var t=this._brushCanvas||(this._brushCanvas=la.createCanvas()),e=this.pointSize+this.blurSize,n=e*2;t.width=n,t.height=n;var a=t.getContext("2d");return a.clearRect(0,0,n,n),a.shadowOffsetX=n,a.shadowBlur=this.blurSize,a.shadowColor="#000",a.beginPath(),a.arc(-e,e,this.pointSize,0,Math.PI*2,!0),a.closePath(),a.fill(),t},r.prototype._getGradient=function(t,e){for(var n=this._gradientPixels,a=n[e]||(n[e]=new Uint8ClampedArray(256*4)),o=[0,0,0,0],i=0,u=0;u<256;u++)t[e](u/255,!0,o),a[i++]=o[0],a[i++]=o[1],a[i++]=o[2],a[i++]=o[3];return a},r})(),f7=$gt;function qgt(r,t,e){var n=r[1]-r[0];t=U(t,function(i){return{interval:[(i.interval[0]-r[0])/n,(i.interval[1]-r[0])/n]}});var a=t.length,o=0;return function(i){var u;for(u=o;u<a;u++){var l=t[u].interval;if(l[0]<=i&&i<=l[1]){o=u;break}}if(u===a)for(u=o-1;u>=0;u--){var l=t[u].interval;if(l[0]<=i&&i<=l[1]){o=u;break}}return u>=0&&u<a&&e[u]}}function Jgt(r,t){var e=r[1]-r[0];return t=[(t[0]-r[0])/e,(t[1]-r[0])/e],function(n){return n>=t[0]&&n<=t[1]}}function s7(r){var t=r.dimensions;return t[0]==="lng"&&t[1]==="lat"}var jgt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.render=function(e,n,a){var o;n.eachComponent("visualMap",function(u){u.eachTargetSeries(function(l){l===e&&(o=u)})}),this._progressiveEls=null,this.group.removeAll();var i=e.coordinateSystem;i.type==="cartesian2d"||i.type==="calendar"?this._renderOnCartesianAndCalendar(e,a,0,e.getData().count()):s7(i)&&this._renderOnGeo(i,e,o,a)},t.prototype.incrementalPrepareRender=function(e,n,a){this.group.removeAll()},t.prototype.incrementalRender=function(e,n,a,o){var i=n.coordinateSystem;i&&(s7(i)?this.render(n,a,o):(this._progressiveEls=[],this._renderOnCartesianAndCalendar(n,o,e.start,e.end,!0)))},t.prototype.eachRendered=function(e){Sa(this._progressiveEls||this.group,e)},t.prototype._renderOnCartesianAndCalendar=function(e,n,a,o,i){var u=e.coordinateSystem,l=oi(u,"cartesian2d"),f,s,c,p;if(l){var v=u.getAxis("x"),d=u.getAxis("y");f=v.getBandWidth()+.5,s=d.getBandWidth()+.5,c=v.scale.getExtent(),p=d.scale.getExtent()}for(var m=this.group,h=e.getData(),_=e.getModel(["emphasis","itemStyle"]).getItemStyle(),g=e.getModel(["blur","itemStyle"]).getItemStyle(),y=e.getModel(["select","itemStyle"]).getItemStyle(),D=e.get(["itemStyle","borderRadius"]),b=$e(e),C=e.getModel("emphasis"),x=C.get("focus"),w=C.get("blurScope"),S=C.get("disabled"),E=l?[h.mapDimension("x"),h.mapDimension("y"),h.mapDimension("value")]:[h.mapDimension("time"),h.mapDimension("value")],M=a;M<o;M++){var I=void 0,F=h.getItemVisual(M,"style");if(l){var L=h.get(E[0],M),R=h.get(E[1],M);if(isNaN(h.get(E[2],M))||isNaN(L)||isNaN(R)||L<c[0]||L>c[1]||R<p[0]||R>p[1])continue;var P=u.dataToPoint([L,R]);I=new Rt({shape:{x:P[0]-f/2,y:P[1]-s/2,width:f,height:s},style:F})}else{if(isNaN(h.get(E[1],M)))continue;I=new Rt({z2:1,shape:u.dataToRect([h.get(E[0],M)]).contentShape,style:F})}if(h.hasItemOption){var k=h.getItemModel(M),H=k.getModel("emphasis");_=H.getModel("itemStyle").getItemStyle(),g=k.getModel(["blur","itemStyle"]).getItemStyle(),y=k.getModel(["select","itemStyle"]).getItemStyle(),D=k.get(["itemStyle","borderRadius"]),x=H.get("focus"),w=H.get("blurScope"),S=H.get("disabled"),b=$e(k)}I.shape.r=D;var G=e.getRawValue(M),j="-";G&&G[2]!=null&&(j=G[2]+""),Ze(I,b,{labelFetcher:e,labelDataIndex:M,defaultOpacity:F.opacity,defaultText:j}),I.ensureState("emphasis").style=_,I.ensureState("blur").style=g,I.ensureState("select").style=y,Me(I,x,w,S),I.incremental=i,i&&(I.states.emphasis.hoverLayer=!0),m.add(I),h.setItemGraphicEl(M,I),this._progressiveEls&&this._progressiveEls.push(I)}},t.prototype._renderOnGeo=function(e,n,a,o){var i=a.targetVisuals.inRange,u=a.targetVisuals.outOfRange,l=n.getData(),f=this._hmLayer||this._hmLayer||new f7;f.blurSize=n.get("blurSize"),f.pointSize=n.get("pointSize"),f.minOpacity=n.get("minOpacity"),f.maxOpacity=n.get("maxOpacity");var s=e.getViewRect().clone(),c=e.getRoamTransform();s.applyTransform(c);var p=Math.max(s.x,0),v=Math.max(s.y,0),d=Math.min(s.width+s.x,o.getWidth()),m=Math.min(s.height+s.y,o.getHeight()),h=d-p,_=m-v,g=[l.mapDimension("lng"),l.mapDimension("lat"),l.mapDimension("value")],y=l.mapArray(g,function(x,w,S){var E=e.dataToPoint([x,w]);return E[0]-=p,E[1]-=v,E.push(S),E}),D=a.getExtent(),b=a.type==="visualMap.continuous"?Jgt(D,a.option.range):qgt(D,a.getPieceList(),a.option.selected);f.update(y,h,_,i.color.getNormalizer(),{inRange:i.color.getColorMapper(),outOfRange:u.color.getColorMapper()},b);var C=new er({style:{width:h,height:_,x:p,y:v,image:f.canvas},silent:!0});this.group.add(C)},t.type="heatmap",t})(me),c7=jgt;var Ygt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.getInitialData=function(e,n){return Pn(null,this,{generateCoord:"value"})},t.prototype.preventIncremental=function(){var e=Cl.get(this.get("coordinateSystem"));if(e&&e.dimensions)return e.dimensions[0]==="lng"&&e.dimensions[1]==="lat"},t.type="series.heatmap",t.dependencies=["grid","geo","calendar"],t.defaultOption={coordinateSystem:"cartesian2d",z:2,geoIndex:0,blurSize:30,pointSize:20,maxOpacity:1,minOpacity:0,select:{itemStyle:{borderColor:"#212121"}}},t})(xe),p7=Ygt;function aR(r){r.registerChartView(c7),r.registerSeriesModel(p7)}var Qgt=["itemStyle","borderWidth"],v7=[{xy:"x",wh:"width",index:0,posDesc:["left","right"]},{xy:"y",wh:"height",index:1,posDesc:["top","bottom"]}],oR=new wa,Zgt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.render=function(e,n,a){var o=this.group,i=e.getData(),u=this._data,l=e.coordinateSystem,f=l.getBaseAxis(),s=f.isHorizontal(),c=l.master.getRect(),p={ecSize:{width:a.getWidth(),height:a.getHeight()},seriesModel:e,coordSys:l,coordSysExtent:[[c.x,c.x+c.width],[c.y,c.y+c.height]],isHorizontal:s,valueDim:v7[+s],categoryDim:v7[1-+s]};i.diff(u).add(function(d){if(i.hasValue(d)){var m=m7(i,d),h=d7(i,d,m,p),_=h7(i,p,h);i.setItemGraphicEl(d,_),o.add(_),g7(_,p,h)}}).update(function(d,m){var h=u.getItemGraphicEl(m);if(!i.hasValue(d)){o.remove(h);return}var _=m7(i,d),g=d7(i,d,_,p),y=w7(i,g);h&&y!==h.__pictorialShapeStr&&(o.remove(h),i.setItemGraphicEl(d,null),h=null),h?ayt(h,p,g):h=h7(i,p,g,!0),i.setItemGraphicEl(d,h),h.__pictorialSymbolMeta=g,o.add(h),g7(h,p,g)}).remove(function(d){var m=u.getItemGraphicEl(d);m&&_7(u,d,m.__pictorialSymbolMeta.animationModel,m)}).execute();var v=e.get("clip",!0)?Iu(e.coordinateSystem,!1,e):null;return v?o.setClipPath(v):o.removeClipPath(),this._data=i,this.group},t.prototype.remove=function(e,n){var a=this.group,o=this._data;e.get("animation")?o&&o.eachItemGraphicEl(function(i){_7(o,vt(i).dataIndex,e,i)}):a.removeAll()},t.type="pictorialBar",t})(me);function d7(r,t,e,n){var a=r.getItemLayout(t),o=e.get("symbolRepeat"),i=e.get("symbolClip"),u=e.get("symbolPosition")||"start",l=e.get("symbolRotate"),f=(l||0)*Math.PI/180||0,s=e.get("symbolPatternSize")||2,c=e.isAnimationEnabled(),p={dataIndex:t,layout:a,itemModel:e,symbolType:r.getItemVisual(t,"symbol")||"circle",style:r.getItemVisual(t,"style"),symbolClip:i,symbolRepeat:o,symbolRepeatDirection:e.get("symbolRepeatDirection"),symbolPatternSize:s,rotation:f,animationModel:c?e:null,hoverScale:c&&e.get(["emphasis","scale"]),z2:e.getShallow("z",!0)||0};Xgt(e,o,a,n,p),Kgt(r,t,a,o,i,p.boundingLength,p.pxSign,s,n,p),tyt(e,p.symbolScale,f,n,p);var v=p.symbolSize,d=Eo(e.get("symbolOffset"),v);return eyt(e,v,a,o,i,d,u,p.valueLineWidth,p.boundingLength,p.repeatCutLength,n,p),p}function Xgt(r,t,e,n,a){var o=n.valueDim,i=r.get("symbolBoundingData"),u=n.coordSys.getOtherAxis(n.coordSys.getBaseAxis()),l=u.toGlobalCoord(u.dataToCoord(0)),f=1-+(e[o.wh]<=0),s;if(O(i)){var c=[iR(u,i[0])-l,iR(u,i[1])-l];c[1]<c[0]&&c.reverse(),s=c[f]}else i!=null?s=iR(u,i)-l:t?s=n.coordSysExtent[o.index][f]-l:s=e[o.wh];a.boundingLength=s,t&&(a.repeatCutLength=e[o.wh]),a.pxSign=s>0?1:-1}function iR(r,t){return r.toGlobalCoord(r.dataToCoord(r.scale.parse(t)))}function Kgt(r,t,e,n,a,o,i,u,l,f){var s=l.valueDim,c=l.categoryDim,p=Math.abs(e[c.wh]),v=r.getItemVisual(t,"symbolSize"),d;O(v)?d=v.slice():v==null?d=["100%","100%"]:d=[v,v],d[c.index]=Y(d[c.index],p),d[s.index]=Y(d[s.index],n?p:Math.abs(o)),f.symbolSize=d;var m=f.symbolScale=[d[0]/u,d[1]/u];m[s.index]*=(l.isHorizontal?-1:1)*i}function tyt(r,t,e,n,a){var o=r.get(Qgt)||0;o&&(oR.attr({scaleX:t[0],scaleY:t[1],rotation:e}),oR.updateTransform(),o/=oR.getLineScale(),o*=t[n.valueDim.index]),a.valueLineWidth=o||0}function eyt(r,t,e,n,a,o,i,u,l,f,s,c){var p=s.categoryDim,v=s.valueDim,d=c.pxSign,m=Math.max(t[v.index]+u,0),h=m;if(n){var _=Math.abs(l),g=ir(r.get("symbolMargin"),"15%")+"",y=!1;g.lastIndexOf("!")===g.length-1&&(y=!0,g=g.slice(0,g.length-1));var D=Y(g,t[v.index]),b=Math.max(m+D*2,0),C=y?0:D*2,x=$h(n),w=x?n:y7((_+C)/b),S=_-w*m;D=S/2/(y?w:Math.max(w-1,1)),b=m+D*2,C=y?0:D*2,!x&&n!=="fixed"&&(w=f?y7((Math.abs(f)+C)/b):0),h=w*b-C,c.repeatTimes=w,c.symbolMargin=D}var E=d*(h/2),M=c.pathPosition=[];M[p.index]=e[p.wh]/2,M[v.index]=i==="start"?E:i==="end"?l-E:l/2,o&&(M[0]+=o[0],M[1]+=o[1]);var I=c.bundlePosition=[];I[p.index]=e[p.xy],I[v.index]=e[v.xy];var F=c.barRectShape=N({},e);F[v.wh]=d*Math.max(Math.abs(e[v.wh]),Math.abs(M[v.index]+E)),F[p.wh]=e[p.wh];var L=c.clipShape={};L[p.xy]=-e[p.xy],L[p.wh]=s.ecSize[p.wh],L[v.xy]=0,L[v.wh]=e[v.wh]}function D7(r){var t=r.symbolPatternSize,e=We(r.symbolType,-t/2,-t/2,t,t);return e.attr({culling:!0}),e.type!=="image"&&e.setStyle({strokeNoScale:!0}),e}function b7(r,t,e,n){var a=r.__pictorialBundle,o=e.symbolSize,i=e.valueLineWidth,u=e.pathPosition,l=t.valueDim,f=e.repeatTimes||0,s=0,c=o[t.valueDim.index]+i+e.symbolMargin*2;for(uR(r,function(m){m.__pictorialAnimationIndex=s,m.__pictorialRepeatTimes=f,s<f?gd(m,null,d(s),e,n):gd(m,null,{scaleX:0,scaleY:0},e,n,function(){a.remove(m)}),s++});s<f;s++){var p=D7(e);p.__pictorialAnimationIndex=s,p.__pictorialRepeatTimes=f,a.add(p);var v=d(s);gd(p,{x:v.x,y:v.y,scaleX:0,scaleY:0},{scaleX:v.scaleX,scaleY:v.scaleY,rotation:v.rotation},e,n)}function d(m){var h=u.slice(),_=e.pxSign,g=m;return(e.symbolRepeatDirection==="start"?_>0:_<0)&&(g=f-1-m),h[l.index]=c*(g-f/2+.5)+u[l.index],{x:h[0],y:h[1],scaleX:e.symbolScale[0],scaleY:e.symbolScale[1],rotation:e.rotation}}}function C7(r,t,e,n){var a=r.__pictorialBundle,o=r.__pictorialMainPath;o?gd(o,null,{x:e.pathPosition[0],y:e.pathPosition[1],scaleX:e.symbolScale[0],scaleY:e.symbolScale[1],rotation:e.rotation},e,n):(o=r.__pictorialMainPath=D7(e),a.add(o),gd(o,{x:e.pathPosition[0],y:e.pathPosition[1],scaleX:0,scaleY:0,rotation:e.rotation},{scaleX:e.symbolScale[0],scaleY:e.symbolScale[1]},e,n))}function T7(r,t,e){var n=N({},t.barRectShape),a=r.__pictorialBarRect;a?gd(a,null,{shape:n},t,e):(a=r.__pictorialBarRect=new Rt({z2:2,shape:n,silent:!0,style:{stroke:"transparent",fill:"transparent",lineWidth:0}}),a.disableMorphing=!0,r.add(a))}function x7(r,t,e,n){if(e.symbolClip){var a=r.__pictorialClipPath,o=N({},e.clipShape),i=t.valueDim,u=e.animationModel,l=e.dataIndex;if(a)$t(a,{shape:o},u,l);else{o[i.wh]=0,a=new Rt({shape:o}),r.__pictorialBundle.setClipPath(a),r.__pictorialClipPath=a;var f={};f[i.wh]=e.clipShape[i.wh],Ot[n?"updateProps":"initProps"](a,{shape:f},u,l)}}}function m7(r,t){var e=r.getItemModel(t);return e.getAnimationDelayParams=ryt,e.isAnimationEnabled=nyt,e}function ryt(r){return{index:r.__pictorialAnimationIndex,count:r.__pictorialRepeatTimes}}function nyt(){return this.parentModel.isAnimationEnabled()&&!!this.getShallow("animation")}function h7(r,t,e,n){var a=new at,o=new at;return a.add(o),a.__pictorialBundle=o,o.x=e.bundlePosition[0],o.y=e.bundlePosition[1],e.symbolRepeat?b7(a,t,e):C7(a,t,e),T7(a,e,n),x7(a,t,e,n),a.__pictorialShapeStr=w7(r,e),a.__pictorialSymbolMeta=e,a}function ayt(r,t,e){var n=e.animationModel,a=e.dataIndex,o=r.__pictorialBundle;$t(o,{x:e.bundlePosition[0],y:e.bundlePosition[1]},n,a),e.symbolRepeat?b7(r,t,e,!0):C7(r,t,e,!0),T7(r,e,!0),x7(r,t,e,!0)}function _7(r,t,e,n){var a=n.__pictorialBarRect;a&&a.removeTextContent();var o=[];uR(n,function(i){o.push(i)}),n.__pictorialMainPath&&o.push(n.__pictorialMainPath),n.__pictorialClipPath&&(e=null),T(o,function(i){Zo(i,{scaleX:0,scaleY:0},e,t,function(){n.parent&&n.parent.remove(n)})}),r.setItemGraphicEl(t,null)}function w7(r,t){return[r.getItemVisual(t.dataIndex,"symbol")||"none",!!t.symbolRepeat,!!t.symbolClip].join(":")}function uR(r,t,e){T(r.__pictorialBundle.children(),function(n){n!==r.__pictorialBarRect&&t.call(e,n)})}function gd(r,t,e,n,a,o){t&&r.attr(t),n.symbolClip&&!a?e&&r.attr(e):e&&Ot[a?"updateProps":"initProps"](r,e,n.animationModel,n.dataIndex,o)}function g7(r,t,e){var n=e.dataIndex,a=e.itemModel,o=a.getModel("emphasis"),i=o.getModel("itemStyle").getItemStyle(),u=a.getModel(["blur","itemStyle"]).getItemStyle(),l=a.getModel(["select","itemStyle"]).getItemStyle(),f=a.getShallow("cursor"),s=o.get("focus"),c=o.get("blurScope"),p=o.get("scale");uR(r,function(m){if(m instanceof er){var h=m.style;m.useStyle(N({image:h.image,x:h.x,y:h.y,width:h.width,height:h.height},e.style))}else m.useStyle(e.style);var _=m.ensureState("emphasis");_.style=i,p&&(_.scaleX=m.scaleX*1.1,_.scaleY=m.scaleY*1.1),m.ensureState("blur").style=u,m.ensureState("select").style=l,f&&(m.cursor=f),m.z2=e.z2});var v=t.valueDim.posDesc[+(e.boundingLength>0)],d=r.__pictorialBarRect;d.ignoreClip=!0,Ze(d,$e(a),{labelFetcher:t.seriesModel,labelDataIndex:n,defaultText:zi(t.seriesModel.getData(),n),inheritColor:e.style.fill,defaultOpacity:e.style.opacity,defaultOutsidePosition:v}),Me(r,s,c,o.get("disabled"))}function y7(r){var t=Math.round(r);return Math.abs(r-t)<1e-4?t:Math.ceil(r)}var S7=Zgt;var oyt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.hasSymbolVisual=!0,e.defaultSymbol="roundRect",e}return t.prototype.getInitialData=function(e){return e.stack=null,r.prototype.getInitialData.apply(this,arguments)},t.type="series.pictorialBar",t.dependencies=["grid"],t.defaultOption=va(Kv.defaultOption,{symbol:"circle",symbolSize:null,symbolRotate:null,symbolPosition:null,symbolOffset:null,symbolMargin:null,symbolRepeat:!1,symbolRepeatDirection:"end",symbolClip:!1,symbolBoundingData:null,symbolPatternSize:400,barGap:"-100%",clip:!1,progressive:0,emphasis:{scale:!1},select:{itemStyle:{borderColor:"#212121"}}}),t})(Kv),E7=oyt;function lR(r){r.registerChartView(S7),r.registerSeriesModel(E7),r.registerLayout(r.PRIORITY.VISUAL.LAYOUT,gt(LC,"pictorialBar")),r.registerLayout(r.PRIORITY.VISUAL.PROGRESSIVE_LAYOUT,RC("pictorialBar"))}var iyt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e._layers=[],e}return t.prototype.render=function(e,n,a){var o=e.getData(),i=this,u=this.group,l=e.getLayerSeries(),f=o.getLayout("layoutInfo"),s=f.rect,c=f.boundaryGap;u.x=0,u.y=s.y+c[0];function p(h){return h.name}var v=new Zn(this._layersSeries||[],l,p,p),d=[];v.add(Q(m,this,"add")).update(Q(m,this,"update")).remove(Q(m,this,"remove")).execute();function m(h,_,g){var y=i._layers;if(h==="remove"){u.remove(y[_]);return}for(var D=[],b=[],C,x=l[_].indices,w=0;w<x.length;w++){var S=o.getItemLayout(x[w]),E=S.x,M=S.y0,I=S.y;D.push(E,M),b.push(E,M+I),C=o.getItemVisual(x[w],"style")}var F,L=o.getItemLayout(x[0]),R=e.getModel("label"),P=R.get("margin"),k=e.getModel("emphasis");if(h==="add"){var H=d[_]=new at;F=new lT({shape:{points:D,stackedOnPoints:b,smooth:.4,stackedOnSmooth:.4,smoothConstraint:!1},z2:0}),H.add(F),u.add(H),e.isAnimationEnabled()&&F.setClipPath(uyt(F.getBoundingRect(),e,function(){F.removeClipPath()}))}else{var H=y[g];F=H.childAt(0),u.add(H),d[_]=H,$t(F,{shape:{points:D,stackedOnPoints:b}},e),rn(F)}Ze(F,$e(e),{labelDataIndex:x[w-1],defaultText:o.getName(x[w-1]),inheritColor:C.fill},{normal:{verticalAlign:"middle"}}),F.setTextConfig({position:null,local:!0});var G=F.getTextContent();G&&(G.x=L.x-P,G.y=L.y0+L.y/2),F.useStyle(C),o.setItemGraphicEl(_,F),fr(F,e),Me(F,k.get("focus"),k.get("blurScope"),k.get("disabled"))}this._layersSeries=l,this._layers=d},t.type="themeRiver",t})(me);function uyt(r,t,e){var n=new Rt({shape:{x:r.x-10,y:r.y-10,width:0,height:r.height+20}});return Ae(n,{shape:{x:r.x-50,width:r.width+100,height:r.height+20}},t,e),n}var M7=iyt;var fR=2,lyt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.init=function(e){r.prototype.init.apply(this,arguments),this.legendVisualProvider=new Lu(Q(this.getData,this),Q(this.getRawData,this))},t.prototype.fixData=function(e){var n=e.length,a={},o=jh(e,function(p){return a.hasOwnProperty(p[0]+"")||(a[p[0]+""]=-1),p[2]}),i=[];o.buckets.each(function(p,v){i.push({name:v,dataList:p})});for(var u=i.length,l=0;l<u;++l){for(var f=i[l].name,s=0;s<i[l].dataList.length;++s){var c=i[l].dataList[s][0]+"";a[c]=l}for(var c in a)a.hasOwnProperty(c)&&a[c]!==l&&(a[c]=l,e[n]=[c,0,f],n++)}return e},t.prototype.getInitialData=function(e,n){for(var a=this.getReferringComponents("singleAxis",je).models[0],o=a.get("type"),i=de(e.data,function(d){return d[2]!==void 0}),u=this.fixData(i||[]),l=[],f=this.nameMap=Z(),s=0,c=0;c<u.length;++c)l.push(u[c][fR]),f.get(u[c][fR])||(f.set(u[c][fR],s),s++);var p=Oi(u,{coordDimensions:["single"],dimensionsDefine:[{name:"time",type:Rc(o)},{name:"value",type:"float"},{name:"name",type:"ordinal"}],encodeDefine:{single:0,value:1,itemName:2}}).dimensions,v=new wr(p,this);return v.initData(u),v},t.prototype.getLayerSeries=function(){for(var e=this.getData(),n=e.count(),a=[],o=0;o<n;++o)a[o]=o;var i=e.mapDimension("single"),u=jh(a,function(f){return e.get("name",f)}),l=[];return u.buckets.each(function(f,s){f.sort(function(c,p){return e.get(i,c)-e.get(i,p)}),l.push({name:s,indices:f})}),l},t.prototype.getAxisTooltipData=function(e,n,a){O(e)||(e=e?[e]:[]);for(var o=this.getData(),i=this.getLayerSeries(),u=[],l=i.length,f,s=0;s<l;++s){for(var c=Number.MAX_VALUE,p=-1,v=i[s].indices.length,d=0;d<v;++d){var m=o.get(e[0],i[s].indices[d]),h=Math.abs(m-n);h<=c&&(f=m,c=h,p=i[s].indices[d])}u.push(p)}return{dataIndices:u,nestestValue:f}},t.prototype.formatTooltip=function(e,n,a){var o=this.getData(),i=o.getName(e),u=o.get(o.mapDimension("value"),e);return nr("nameValue",{name:i,value:u})},t.type="series.themeRiver",t.dependencies=["singleAxis"],t.defaultOption={z:2,colorBy:"data",coordinateSystem:"singleAxis",boundaryGap:["10%","10%"],singleAxisIndex:0,animationEasing:"linear",label:{margin:4,show:!0,position:"left",fontSize:11},emphasis:{label:{show:!0}}},t})(xe),A7=lyt;function sR(r,t){r.eachSeriesByType("themeRiver",function(e){var n=e.getData(),a=e.coordinateSystem,o={},i=a.getRect();o.rect=i;var u=e.get("boundaryGap"),l=a.getAxis();if(o.boundaryGap=u,l.orient==="horizontal"){u[0]=Y(u[0],i.height),u[1]=Y(u[1],i.height);var f=i.height-u[0]-u[1];I7(n,e,f)}else{u[0]=Y(u[0],i.width),u[1]=Y(u[1],i.width);var s=i.width-u[0]-u[1];I7(n,e,s)}n.setLayout("layoutInfo",o)})}function I7(r,t,e){if(r.count())for(var n=t.coordinateSystem,a=t.getLayerSeries(),o=r.mapDimension("single"),i=r.mapDimension("value"),u=U(a,function(h){return U(h.indices,function(_){var g=n.dataToPoint(r.get(o,_));return g[1]=r.get(i,_),g})}),l=fyt(u),f=l.y0,s=e/l.max,c=a.length,p=a[0].indices.length,v,d=0;d<p;++d){v=f[d]*s,r.setItemLayout(a[0].indices[d],{layerIndex:0,x:u[0][d][0],y0:v,y:u[0][d][1]*s});for(var m=1;m<c;++m)v+=u[m-1][d][1]*s,r.setItemLayout(a[m].indices[d],{layerIndex:m,x:u[m][d][0],y0:v,y:u[m][d][1]*s})}}function fyt(r){for(var t=r.length,e=r[0].length,n=[],a=[],o=0,i=0;i<e;++i){for(var u=0,l=0;l<t;++l)u+=r[l][i][1];u>o&&(o=u),n.push(u)}for(var f=0;f<e;++f)a[f]=(o-n[f])/2;o=0;for(var s=0;s<e;++s){var c=n[s]+a[s];c>o&&(o=c)}return{y0:a,max:o}}function cR(r){r.registerChartView(M7),r.registerSeriesModel(A7),r.registerLayout(sR),r.registerProcessor(Gi("themeRiver"))}var syt=2,cyt=4,pyt=(function(r){A(t,r);function t(e,n,a,o){var i=r.call(this)||this;i.z2=syt,i.textConfig={inside:!0},vt(i).seriesIndex=n.seriesIndex;var u=new Wt({z2:cyt,silent:e.getModel().get(["label","silent"])});return i.setTextContent(u),i.updateData(!0,e,n,a,o),i}return t.prototype.updateData=function(e,n,a,o,i){this.node=n,n.piece=this,a=a||this._seriesModel,o=o||this._ecModel;var u=this;vt(u).dataIndex=n.dataIndex;var l=n.getModel(),f=l.getModel("emphasis"),s=n.getLayout(),c=N({},s);c.label=null;var p=n.getVisual("style");p.lineJoin="bevel";var v=n.getVisual("decal");v&&(p.decal=Ni(v,i));var d=Fu(l.getModel("itemStyle"),c,!0);N(c,d),T(sn,function(g){var y=u.ensureState(g),D=l.getModel([g,"itemStyle"]);y.style=D.getItemStyle();var b=Fu(D,c);b&&(y.shape=b)}),e?(u.setShape(c),u.shape.r=s.r0,Ae(u,{shape:{r:s.r}},a,n.dataIndex)):($t(u,{shape:c},a),rn(u)),u.useStyle(p),this._updateLabel(a);var m=l.getShallow("cursor");m&&u.attr("cursor",m),this._seriesModel=a||this._seriesModel,this._ecModel=o||this._ecModel;var h=f.get("focus"),_=h==="ancestor"?n.getAncestorsIndices():h==="descendant"?n.getDescendantIndices():h;Me(this,_,f.get("blurScope"),f.get("disabled"))},t.prototype._updateLabel=function(e){var n=this,a=this.node.getModel(),o=a.getModel("label"),i=this.node.getLayout(),u=i.endAngle-i.startAngle,l=(i.startAngle+i.endAngle)/2,f=Math.cos(l),s=Math.sin(l),c=this,p=c.getTextContent(),v=this.node.dataIndex,d=o.get("minAngle")/180*Math.PI,m=o.get("show")&&!(d!=null&&Math.abs(u)<d);p.ignore=!m,T(Ef,function(_){var g=_==="normal"?a.getModel("label"):a.getModel([_,"label"]),y=_==="normal",D=y?p:p.ensureState(_),b=e.getFormattedLabel(v,_);y&&(b=b||n.node.name),D.style=Re(g,{},null,_!=="normal",!0),b&&(D.style.text=b);var C=g.get("show");C!=null&&!y&&(D.ignore=!C);var x=h(g,"position"),w=y?c:c.states[_],S=w.style.fill;w.textConfig={outsideFill:g.get("color")==="inherit"?S:null,inside:x!=="outside"};var E,M=h(g,"distance")||0,I=h(g,"align"),F=h(g,"rotate"),L=Math.PI*.5,R=Math.PI*1.5,P=Jn(F==="tangential"?Math.PI/2-l:l),k=P>L&&!oc(P-L)&&P<R;x==="outside"?(E=i.r+M,I=k?"right":"left"):!I||I==="center"?(u===2*Math.PI&&i.r0===0?E=0:E=(i.r+i.r0)/2,I="center"):I==="left"?(E=i.r0+M,I=k?"right":"left"):I==="right"&&(E=i.r-M,I=k?"left":"right"),D.style.align=I,D.style.verticalAlign=h(g,"verticalAlign")||"middle",D.x=E*f+i.cx,D.y=E*s+i.cy;var H=0;F==="radial"?H=Jn(-l)+(k?Math.PI:0):F==="tangential"?H=Jn(Math.PI/2-l)+(k?Math.PI:0):Nt(F)&&(H=F*Math.PI/180),D.rotation=Jn(H)});function h(_,g){var y=_.get(g);return y??o.get(g)}p.dirtyStyle()},t})(Vr),pR=pyt;var ZT="sunburstRootToNode",F7="sunburstHighlight",vyt="sunburstUnhighlight";function L7(r){r.registerAction({type:ZT,update:"updateView"},function(t,e){e.eachComponent({mainType:"series",subType:"sunburst",query:t},n);function n(a,o){var i=Al(t,[ZT],a);if(i){var u=a.getViewRoot();u&&(t.direction=id(u,i.node)?"rollUp":"drillDown"),a.resetViewRoot(i.node)}}}),r.registerAction({type:F7,update:"none"},function(t,e,n){t=N({},t),e.eachComponent({mainType:"series",subType:"sunburst",query:t},a);function a(o){var i=Al(t,[F7],o);i&&(t.dataIndex=i.node.dataIndex)}n.dispatchAction(N(t,{type:"highlight"}))}),r.registerAction({type:vyt,update:"updateView"},function(t,e,n){t=N({},t),n.dispatchAction(N(t,{type:"downplay"}))})}var dyt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.render=function(e,n,a,o){var i=this;this.seriesModel=e,this.api=a,this.ecModel=n;var u=e.getData(),l=u.tree.root,f=e.getViewRoot(),s=this.group,c=e.get("renderLabelForZeroData"),p=[];f.eachNode(function(g){p.push(g)});var v=this._oldChildren||[];d(p,v),_(l,f),this._initEvents(),this._oldChildren=p;function d(g,y){if(g.length===0&&y.length===0)return;new Zn(y,g,D,D).add(b).update(b).remove(gt(b,null)).execute();function D(C){return C.getId()}function b(C,x){var w=C==null?null:g[C],S=x==null?null:y[x];m(w,S)}}function m(g,y){if(!c&&g&&!g.getValue()&&(g=null),g!==l&&y!==l){if(y&&y.piece)g?(y.piece.updateData(!1,g,e,n,a),u.setItemGraphicEl(g.dataIndex,y.piece)):h(y);else if(g){var D=new pR(g,e,n,a);s.add(D),u.setItemGraphicEl(g.dataIndex,D)}}}function h(g){g&&g.piece&&(s.remove(g.piece),g.piece=null)}function _(g,y){y.depth>0?(i.virtualPiece?i.virtualPiece.updateData(!1,g,e,n,a):(i.virtualPiece=new pR(g,e,n,a),s.add(i.virtualPiece)),y.piece.off("click"),i.virtualPiece.on("click",function(D){i._rootToNode(y.parentNode)})):i.virtualPiece&&(s.remove(i.virtualPiece),i.virtualPiece=null)}},t.prototype._initEvents=function(){var e=this;this.group.off("click"),this.group.on("click",function(n){var a=!1,o=e.seriesModel.getViewRoot();o.eachNode(function(i){if(!a&&i.piece&&i.piece===n.target){var u=i.getModel().get("nodeClick");if(u==="rootToNode")e._rootToNode(i);else if(u==="link"){var l=i.getModel(),f=l.get("link");if(f){var s=l.get("target",!0)||"_blank";Ec(f,s)}}a=!0}})})},t.prototype._rootToNode=function(e){e!==this.seriesModel.getViewRoot()&&this.api.dispatchAction({type:ZT,from:this.uid,seriesId:this.seriesModel.id,targetNode:e})},t.prototype.containPoint=function(e,n){var a=n.getData(),o=a.getItemLayout(0);if(o){var i=e[0]-o.cx,u=e[1]-o.cy,l=Math.sqrt(i*i+u*u);return l<=o.r&&l>=o.r0}},t.type="sunburst",t})(me),R7=dyt;var myt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.ignoreStyleOnData=!0,e}return t.prototype.getInitialData=function(e,n){var a={name:e.name,children:e.data};P7(a);var o=this._levelModels=U(e.levels||[],function(l){return new Te(l,this,n)},this),i=od.createTree(a,this,u);function u(l){l.wrapMethod("getItemModel",function(f,s){var c=i.getNodeByDataIndex(s),p=o[c.depth];return p&&(f.parentModel=p),f})}return i.data},t.prototype.optionUpdated=function(){this.resetViewRoot()},t.prototype.getDataParams=function(e){var n=r.prototype.getDataParams.apply(this,arguments),a=this.getData().tree.getNodeByDataIndex(e);return n.treePathInfo=Qf(a,this),n},t.prototype.getLevelModel=function(e){return this._levelModels&&this._levelModels[e.depth]},t.prototype.getViewRoot=function(){return this._viewRoot},t.prototype.resetViewRoot=function(e){e?this._viewRoot=e:e=this._viewRoot;var n=this.getRawData().tree.root;(!e||e!==n&&!n.contains(e))&&(this._viewRoot=n)},t.prototype.enableAriaDecal=function(){sg(this)},t.type="series.sunburst",t.defaultOption={z:2,center:["50%","50%"],radius:[0,"75%"],clockwise:!0,startAngle:90,minAngle:0,stillShowZeroSum:!0,nodeClick:"rootToNode",renderLabelForZeroData:!1,label:{rotate:"radial",show:!0,opacity:1,align:"center",position:"inside",distance:5,silent:!0},itemStyle:{borderWidth:1,borderColor:"white",borderType:"solid",shadowBlur:0,shadowColor:"rgba(0, 0, 0, 0.2)",shadowOffsetX:0,shadowOffsetY:0,opacity:1},emphasis:{focus:"descendant"},blur:{itemStyle:{opacity:.2},label:{opacity:.1}},animationType:"expansion",animationDuration:1e3,animationDurationUpdate:500,data:[],sort:"desc"},t})(xe);function P7(r){var t=0;T(r.children,function(n){P7(n);var a=n.value;O(a)&&(a=a[0]),t+=a});var e=r.value;O(e)&&(e=e[0]),(e==null||isNaN(e))&&(e=t),e<0&&(e=0),O(r.value)?r.value[0]=e:r.value=e}var N7=myt;var O7=Math.PI/180;function vR(r,t,e){t.eachSeriesByType(r,function(n){var a=n.get("center"),o=n.get("radius");O(o)||(o=[0,o]),O(a)||(a=[a,a]);var i=e.getWidth(),u=e.getHeight(),l=Math.min(i,u),f=Y(a[0],i),s=Y(a[1],u),c=Y(o[0],l/2),p=Y(o[1],l/2),v=-n.get("startAngle")*O7,d=n.get("minAngle")*O7,m=n.getData().tree.root,h=n.getViewRoot(),_=h.depth,g=n.get("sort");g!=null&&U7(h,g);var y=0;T(h.children,function(P){!isNaN(P.getValue())&&y++});var D=h.getValue(),b=Math.PI/(D||y)*2,C=h.depth>0,x=h.height-(C?-1:1),w=(p-c)/(x||1),S=n.get("clockwise"),E=n.get("stillShowZeroSum"),M=S?1:-1,I=function(P,k){if(P){var H=k;if(P!==m){var G=P.getValue(),j=D===0&&E?b:G*b;j<d&&(j=d),H=k+M*j;var rt=P.depth-_-(C?-1:1),xt=c+w*rt,J=c+w*(rt+1),ot=n.getLevelModel(P);if(ot){var At=ot.get("r0",!0),Mt=ot.get("r",!0),ut=ot.get("radius",!0);ut!=null&&(At=ut[0],Mt=ut[1]),At!=null&&(xt=Y(At,l/2)),Mt!=null&&(J=Y(Mt,l/2))}P.setLayout({angle:j,startAngle:k,endAngle:H,clockwise:S,cx:f,cy:s,r0:xt,r:J})}if(P.children&&P.children.length){var $=0;T(P.children,function(Ct){$+=I(Ct,k+$)})}return H-k}};if(C){var F=c,L=c+w,R=Math.PI*2;m.setLayout({angle:R,startAngle:v,endAngle:v+R,clockwise:S,cx:f,cy:s,r0:F,r:L})}I(h,v)})}function U7(r,t){var e=r.children||[];r.children=hyt(e,t),e.length&&T(r.children,function(n){U7(n,t)})}function hyt(r,t){if(X(t)){var e=U(r,function(a,o){var i=a.getValue();return{params:{depth:a.depth,height:a.height,dataIndex:a.dataIndex,getValue:function(){return i}},index:o}});return e.sort(function(a,o){return t(a.params,o.params)}),U(e,function(a){return r[a.index]})}else{var n=t==="asc";return r.sort(function(a,o){var i=(a.getValue()-o.getValue())*(n?1:-1);return i===0?(a.dataIndex-o.dataIndex)*(n?-1:1):i})}}function dR(r){var t={};function e(n,a,o){for(var i=n;i&&i.depth>1;)i=i.parentNode;var u=a.getColorFromPalette(i.name||i.dataIndex+"",t);return n.depth>1&&V(u)&&(u=A0(u,(n.depth-1)/(o-1)*.5)),u}r.eachSeriesByType("sunburst",function(n){var a=n.getData(),o=a.tree;o.eachNode(function(i){var u=i.getModel(),l=u.getModel("itemStyle").getItemStyle();l.fill||(l.fill=e(i,n,o.root.height));var f=a.ensureUniqueItemVisual(i.dataIndex,"style");N(f,l)})})}function mR(r){r.registerChartView(R7),r.registerSeriesModel(N7),r.registerLayout(gt(vR,"sunburst")),r.registerProcessor(gt(Gi,"sunburst")),r.registerVisual(dR),L7(r)}var hR={color:"fill",borderColor:"stroke"},H7={symbol:1,symbolSize:1,symbolKeepAspect:1,legendIcon:1,visualMeta:1,liftZ:1,decal:1},Pu=St(),_yt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.optionUpdated=function(){this.currentZLevel=this.get("zlevel",!0),this.currentZ=this.get("z",!0)},t.prototype.getInitialData=function(e,n){return Pn(null,this)},t.prototype.getDataParams=function(e,n,a){var o=r.prototype.getDataParams.call(this,e,n);return a&&(o.info=Pu(a).info),o},t.type="series.custom",t.dependencies=["grid","polar","geo","singleAxis","calendar"],t.defaultOption={coordinateSystem:"cartesian2d",z:2,legendHoverLink:!0,clip:!1},t})(xe),k7=_yt;function gyt(r,t){return t=t||[0,0],U(["x","y"],function(e,n){var a=this.getAxis(e),o=t[n],i=r[n]/2;return a.type==="category"?a.getBandWidth():Math.abs(a.dataToCoord(o-i)-a.dataToCoord(o+i))},this)}function _R(r){var t=r.master.getRect();return{coordSys:{type:"cartesian2d",x:t.x,y:t.y,width:t.width,height:t.height},api:{coord:function(e){return r.dataToPoint(e)},size:Q(gyt,r)}}}function yyt(r,t){return t=t||[0,0],U([0,1],function(e){var n=t[e],a=r[e]/2,o=[],i=[];return o[e]=n-a,i[e]=n+a,o[1-e]=i[1-e]=t[1-e],Math.abs(this.dataToPoint(o)[e]-this.dataToPoint(i)[e])},this)}function gR(r){var t=r.getBoundingRect();return{coordSys:{type:"geo",x:t.x,y:t.y,width:t.width,height:t.height,zoom:r.getZoom()},api:{coord:function(e){return r.dataToPoint(e)},size:Q(yyt,r)}}}function Dyt(r,t){var e=this.getAxis(),n=t instanceof Array?t[0]:t,a=(r instanceof Array?r[0]:r)/2;return e.type==="category"?e.getBandWidth():Math.abs(e.dataToCoord(n-a)-e.dataToCoord(n+a))}function yR(r){var t=r.getRect();return{coordSys:{type:"singleAxis",x:t.x,y:t.y,width:t.width,height:t.height},api:{coord:function(e){return r.dataToPoint(e)},size:Q(Dyt,r)}}}function byt(r,t){return t=t||[0,0],U(["Radius","Angle"],function(e,n){var a="get"+e+"Axis",o=this[a](),i=t[n],u=r[n]/2,l=o.type==="category"?o.getBandWidth():Math.abs(o.dataToCoord(i-u)-o.dataToCoord(i+u));return e==="Angle"&&(l=l*Math.PI/180),l},this)}function DR(r){var t=r.getRadiusAxis(),e=r.getAngleAxis(),n=t.getExtent();return n[0]>n[1]&&n.reverse(),{coordSys:{type:"polar",cx:r.cx,cy:r.cy,r:n[1],r0:n[0]},api:{coord:function(a){var o=t.dataToRadius(a[0]),i=e.dataToAngle(a[1]),u=r.coordToPoint([o,i]);return u.push(o,i*Math.PI/180),u},size:Q(byt,r)}}}function bR(r){var t=r.getRect(),e=r.getRangeInfo();return{coordSys:{type:"calendar",x:t.x,y:t.y,width:t.width,height:t.height,cellWidth:r.getCellWidth(),cellHeight:r.getCellHeight(),rangeInfo:{start:e.start,end:e.end,weeks:e.weeks,dayCount:e.allDay}},api:{coord:function(n,a){return r.dataToPoint(n,a)}}}}function XT(r,t,e,n){return r&&(r.legacy||r.legacy!==!1&&!e&&!n&&t!=="tspan"&&(t==="text"||st(r,"text")))}function KT(r,t,e){var n=r,a,o,i;if(t==="text")i=n;else{i={},st(n,"text")&&(i.text=n.text),st(n,"rich")&&(i.rich=n.rich),st(n,"textFill")&&(i.fill=n.textFill),st(n,"textStroke")&&(i.stroke=n.textStroke),st(n,"fontFamily")&&(i.fontFamily=n.fontFamily),st(n,"fontSize")&&(i.fontSize=n.fontSize),st(n,"fontStyle")&&(i.fontStyle=n.fontStyle),st(n,"fontWeight")&&(i.fontWeight=n.fontWeight),o={type:"text",style:i,silent:!0},a={};var u=st(n,"textPosition");e?a.position=u?n.textPosition:"inside":u&&(a.position=n.textPosition),st(n,"textPosition")&&(a.position=n.textPosition),st(n,"textOffset")&&(a.offset=n.textOffset),st(n,"textRotation")&&(a.rotation=n.textRotation),st(n,"textDistance")&&(a.distance=n.textDistance)}return z7(i,r),T(i.rich,function(l){z7(l,l)}),{textConfig:a,textContent:o}}function z7(r,t){t&&(t.font=t.textFont||t.font,st(t,"textStrokeWidth")&&(r.lineWidth=t.textStrokeWidth),st(t,"textAlign")&&(r.align=t.textAlign),st(t,"textVerticalAlign")&&(r.verticalAlign=t.textVerticalAlign),st(t,"textLineHeight")&&(r.lineHeight=t.textLineHeight),st(t,"textWidth")&&(r.width=t.textWidth),st(t,"textHeight")&&(r.height=t.textHeight),st(t,"textBackgroundColor")&&(r.backgroundColor=t.textBackgroundColor),st(t,"textPadding")&&(r.padding=t.textPadding),st(t,"textBorderColor")&&(r.borderColor=t.textBorderColor),st(t,"textBorderWidth")&&(r.borderWidth=t.textBorderWidth),st(t,"textBorderRadius")&&(r.borderRadius=t.textBorderRadius),st(t,"textBoxShadowColor")&&(r.shadowColor=t.textBoxShadowColor),st(t,"textBoxShadowBlur")&&(r.shadowBlur=t.textBoxShadowBlur),st(t,"textBoxShadowOffsetX")&&(r.shadowOffsetX=t.textBoxShadowOffsetX),st(t,"textBoxShadowOffsetY")&&(r.shadowOffsetY=t.textBoxShadowOffsetY))}function CR(r,t,e){var n=r;n.textPosition=n.textPosition||e.position||"inside",e.offset!=null&&(n.textOffset=e.offset),e.rotation!=null&&(n.textRotation=e.rotation),e.distance!=null&&(n.textDistance=e.distance);var a=n.textPosition.indexOf("inside")>=0,o=r.fill||"#000";W7(n,t);var i=n.textFill==null;return a?i&&(n.textFill=e.insideFill||"#fff",!n.textStroke&&e.insideStroke&&(n.textStroke=e.insideStroke),!n.textStroke&&(n.textStroke=o),n.textStrokeWidth==null&&(n.textStrokeWidth=2)):(i&&(n.textFill=r.fill||e.outsideFill||"#000"),!n.textStroke&&e.outsideStroke&&(n.textStroke=e.outsideStroke)),n.text=t.text,n.rich=t.rich,T(t.rich,function(u){W7(u,u)}),n}function W7(r,t){t&&(st(t,"fill")&&(r.textFill=t.fill),st(t,"stroke")&&(r.textStroke=t.fill),st(t,"lineWidth")&&(r.textStrokeWidth=t.lineWidth),st(t,"font")&&(r.font=t.font),st(t,"fontStyle")&&(r.fontStyle=t.fontStyle),st(t,"fontWeight")&&(r.fontWeight=t.fontWeight),st(t,"fontSize")&&(r.fontSize=t.fontSize),st(t,"fontFamily")&&(r.fontFamily=t.fontFamily),st(t,"align")&&(r.textAlign=t.align),st(t,"verticalAlign")&&(r.textVerticalAlign=t.verticalAlign),st(t,"lineHeight")&&(r.textLineHeight=t.lineHeight),st(t,"width")&&(r.textWidth=t.width),st(t,"height")&&(r.textHeight=t.height),st(t,"backgroundColor")&&(r.textBackgroundColor=t.backgroundColor),st(t,"padding")&&(r.textPadding=t.padding),st(t,"borderColor")&&(r.textBorderColor=t.borderColor),st(t,"borderWidth")&&(r.textBorderWidth=t.borderWidth),st(t,"borderRadius")&&(r.textBorderRadius=t.borderRadius),st(t,"shadowColor")&&(r.textBoxShadowColor=t.shadowColor),st(t,"shadowBlur")&&(r.textBoxShadowBlur=t.shadowBlur),st(t,"shadowOffsetX")&&(r.textBoxShadowOffsetX=t.shadowOffsetX),st(t,"shadowOffsetY")&&(r.textBoxShadowOffsetY=t.shadowOffsetY),st(t,"textShadowColor")&&(r.textShadowColor=t.textShadowColor),st(t,"textShadowBlur")&&(r.textShadowBlur=t.textShadowBlur),st(t,"textShadowOffsetX")&&(r.textShadowOffsetX=t.textShadowOffsetX),st(t,"textShadowOffsetY")&&(r.textShadowOffsetY=t.textShadowOffsetY))}var $7={position:["x","y"],scale:["scaleX","scaleY"],origin:["originX","originY"]},G7=Ft($7),Ixe=Bn(bo,function(r,t){return r[t]=1,r},{}),Fxe=bo.join(", "),Tg=["","style","shape","extra"],yd=St();function TR(r,t,e,n,a){var o=r+"Animation",i=Cu(r,n,a)||{},u=yd(t).userDuring;return i.duration>0&&(i.during=u?Q(Syt,{el:t,userDuring:u}):null,i.setToFinal=!0,i.scope=r),N(i,e[o]),i}function Dd(r,t,e,n){n=n||{};var a=n.dataIndex,o=n.isInit,i=n.clearStyle,u=e.isAnimationEnabled(),l=yd(r),f=t.style;l.userDuring=t.during;var s={},c={};if(Myt(r,t,c),V7("shape",t,c),V7("extra",t,c),!o&&u&&(Eyt(r,t,s),B7("shape",r,t,s),B7("extra",r,t,s),Ayt(r,t,f,s)),c.style=f,Cyt(r,c,i),xyt(r,t),u)if(o){var p={};T(Tg,function(d){var m=d?t[d]:t;m&&m.enterFrom&&(d&&(p[d]=p[d]||{}),N(d?p[d]:p,m.enterFrom))});var v=TR("enter",r,t,e,a);v.duration>0&&r.animateFrom(p,v)}else Tyt(r,t,a||0,e,s);xR(r,t),f?r.dirty():r.markRedraw()}function xR(r,t){for(var e=yd(r).leaveToProps,n=0;n<Tg.length;n++){var a=Tg[n],o=a?t[a]:t;o&&o.leaveTo&&(e||(e=yd(r).leaveToProps={}),a&&(e[a]=e[a]||{}),N(a?e[a]:e,o.leaveTo))}}function bd(r,t,e,n){if(r){var a=r.parent,o=yd(r).leaveToProps;if(o){var i=TR("update",r,t,e,0);i.done=function(){a.remove(r),n&&n()},r.animateTo(o,i)}else a.remove(r),n&&n()}}function Kf(r){return r==="all"}function Cyt(r,t,e){var n=t.style;if(!r.isGroup&&n){if(e){r.useStyle({});for(var a=r.animators,o=0;o<a.length;o++){var i=a[o];i.targetName==="style"&&i.changeTarget(r.style)}}r.setStyle(n)}t&&(t.style=null,t&&r.attr(t),t.style=n)}function Tyt(r,t,e,n,a){if(a){var o=TR("update",r,t,n,e);o.duration>0&&r.animateFrom(a,o)}}function xyt(r,t){st(t,"silent")&&(r.silent=t.silent),st(t,"ignore")&&(r.ignore=t.ignore),r instanceof Br&&st(t,"invisible")&&(r.invisible=t.invisible),r instanceof bt&&st(t,"autoBatch")&&(r.autoBatch=t.autoBatch)}var Nu={},wyt={setTransform:function(r,t){return Nu.el[r]=t,this},getTransform:function(r){return Nu.el[r]},setShape:function(r,t){var e=Nu.el,n=e.shape||(e.shape={});return n[r]=t,e.dirtyShape&&e.dirtyShape(),this},getShape:function(r){var t=Nu.el.shape;if(t)return t[r]},setStyle:function(r,t){var e=Nu.el,n=e.style;return n&&(n[r]=t,e.dirtyStyle&&e.dirtyStyle()),this},getStyle:function(r){var t=Nu.el.style;if(t)return t[r]},setExtra:function(r,t){var e=Nu.el.extra||(Nu.el.extra={});return e[r]=t,this},getExtra:function(r){var t=Nu.el.extra;if(t)return t[r]}};function Syt(){var r=this,t=r.el;if(t){var e=yd(t).userDuring,n=r.userDuring;if(e!==n){r.el=r.userDuring=null;return}Nu.el=t,n(wyt)}}function B7(r,t,e,n){var a=e[r];if(a){var o=t[r],i;if(o){var u=e.transition,l=a.transition;if(l)if(!i&&(i=n[r]={}),Kf(l))N(i,o);else for(var f=we(l),s=0;s<f.length;s++){var c=f[s],p=o[c];i[c]=p}else if(Kf(u)||wt(u,r)>=0){!i&&(i=n[r]={});for(var v=Ft(o),s=0;s<v.length;s++){var c=v[s],p=o[c];Iyt(a[c],p)&&(i[c]=p)}}}}}function V7(r,t,e){var n=t[r];if(n)for(var a=e[r]={},o=Ft(n),i=0;i<o.length;i++){var u=o[i];a[u]=Xs(n[u])}}function Eyt(r,t,e){for(var n=t.transition,a=Kf(n)?bo:we(n||[]),o=0;o<a.length;o++){var i=a[o];if(!(i==="style"||i==="shape"||i==="extra")){var u=r[i];e[i]=u}}}function Myt(r,t,e){for(var n=0;n<G7.length;n++){var a=G7[n],o=$7[a],i=t[a];i&&(e[o[0]]=i[0],e[o[1]]=i[1])}for(var n=0;n<bo.length;n++){var u=bo[n];t[u]!=null&&(e[u]=t[u])}}function Ayt(r,t,e,n){if(e){var a=r.style,o;if(a){var i=e.transition,u=t.transition;if(i&&!Kf(i)){var l=we(i);!o&&(o=n.style={});for(var f=0;f<l.length;f++){var s=l[f],c=a[s];o[s]=c}}else if(r.getAnimationStyleProps&&(Kf(u)||Kf(i)||wt(u,"style")>=0)){var p=r.getAnimationStyleProps(),v=p?p.style:null;if(v){!o&&(o=n.style={});for(var d=Ft(e),f=0;f<d.length;f++){var s=d[f];if(v[s]){var c=a[s];o[s]=c}}}}}}}function Iyt(r,t){return Ur(r)?r!==t:r!=null&&isFinite(r)}var q7=St(),Fyt=["percent","easing","shape","style","extra"];function tx(r){r.stopAnimation("keyframe"),r.attr(q7(r))}function Cd(r,t,e){if(!(!e.isAnimationEnabled()||!t)){if(O(t)){T(t,function(u){Cd(r,u,e)});return}var n=t.keyframes,a=t.duration;if(e&&a==null){var o=Cu("enter",e,0);a=o&&o.duration}if(!(!n||!a)){var i=q7(r);T(Tg,function(u){if(!(u&&!r[u])){var l,f=!1;n.sort(function(s,c){return s.percent-c.percent}),T(n,function(s){var c=r.animators,p=u?s[u]:s;if(p){var v=Ft(p);if(u||(v=de(v,function(h){return wt(Fyt,h)<0})),!!v.length){l||(l=r.animate(u,t.loop,!0),l.scope="keyframe");for(var d=0;d<c.length;d++)c[d]!==l&&c[d].targetName===l.targetName&&c[d].stopTracks(v);u&&(i[u]=i[u]||{});var m=u?i[u]:i;T(v,function(h){m[h]=((u?r[u]:r)||{})[h]}),l.whenWithKeys(a*s.percent,p,v,s.easing)}}}),l&&l.delay(t.delay||0).duration(a).start(t.easing)}})}}}var Fl="emphasis",ts="normal",IR="blur",FR="select",es=[ts,Fl,IR,FR],wR={normal:["itemStyle"],emphasis:[Fl,"itemStyle"],blur:[IR,"itemStyle"],select:[FR,"itemStyle"]},SR={normal:["label"],emphasis:[Fl,"label"],blur:[IR,"label"],select:[FR,"label"]},Lyt=["x","y"],Ryt="e\0\0",fi={normal:{},emphasis:{},blur:{},select:{}},Pyt={cartesian2d:_R,geo:gR,single:yR,polar:DR,calendar:bR};function MR(r){return r instanceof bt}function AR(r){return r instanceof Br}function Nyt(r,t){t.copyTransform(r),AR(t)&&AR(r)&&(t.setStyle(r.style),t.z=r.z,t.z2=r.z2,t.zlevel=r.zlevel,t.invisible=r.invisible,t.ignore=r.ignore,MR(t)&&MR(r)&&t.setShape(r.shape))}var Oyt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.render=function(e,n,a,o){this._progressiveEls=null;var i=this._data,u=e.getData(),l=this.group,f=J7(e,u,n,a);i||l.removeAll(),u.diff(i).add(function(c){ER(a,null,c,f(c,o),e,l,u)}).remove(function(c){var p=i.getItemGraphicEl(c);p&&bd(p,Pu(p).option,e)}).update(function(c,p){var v=i.getItemGraphicEl(p);ER(a,v,c,f(c,o),e,l,u)}).execute();var s=e.get("clip",!0)?Iu(e.coordinateSystem,!1,e):null;s?l.setClipPath(s):l.removeClipPath(),this._data=u},t.prototype.incrementalPrepareRender=function(e,n,a){this.group.removeAll(),this._data=null},t.prototype.incrementalRender=function(e,n,a,o,i){var u=n.getData(),l=J7(n,u,a,o),f=this._progressiveEls=[];function s(v){v.isGroup||(v.incremental=!0,v.ensureState("emphasis").hoverLayer=!0)}for(var c=e.start;c<e.end;c++){var p=ER(null,null,c,l(c,i),n,this.group,u);p&&(p.traverse(s),f.push(p))}},t.prototype.eachRendered=function(e){Sa(this._progressiveEls||this.group,e)},t.prototype.filterForExposedEvent=function(e,n,a,o){var i=n.element;if(i==null||a.name===i)return!0;for(;(a=a.__hostTarget||a.parent)&&a!==this.group;)if(a.name===i)return!0;return!1},t.type="custom",t})(me),Z7=Oyt;function LR(r){var t=r.type,e;if(t==="path"){var n=r.shape,a=n.width!=null&&n.height!=null?{x:n.x||0,y:n.y||0,width:n.width,height:n.height}:null,o=tJ(n);e=Fv(o,null,a,n.layout||"center"),Pu(e).customPathData=o}else if(t==="image")e=new er({}),Pu(e).customImagePath=r.style.image;else if(t==="text")e=new Wt({});else if(t==="group")e=new at;else{if(t==="compoundPath")throw new Error('"compoundPath" is not supported yet.');var i=f_(t);if(!i){var u="";Fe(u)}e=new i}return Pu(e).customGraphicType=t,e.name=r.name,e.z2EmphasisLift=1,e.z2SelectLift=1,e}function RR(r,t,e,n,a,o,i){tx(t);var u=a&&a.normal.cfg;u&&t.setTextConfig(u),n&&n.transition==null&&(n.transition=Lyt);var l=n&&n.style;if(l){if(t.type==="text"){var f=l;st(f,"textFill")&&(f.fill=f.textFill),st(f,"textStroke")&&(f.stroke=f.textStroke)}var s=void 0,c=MR(t)?l.decal:null;r&&c&&(c.dirty=!0,s=Ni(c,r)),l.__decalPattern=s}if(AR(t)&&l){var s=l.__decalPattern;s&&(l.decal=s)}Dd(t,n,o,{dataIndex:e,isInit:i,clearStyle:!0}),Cd(t,n.keyframeAnimation,o)}function X7(r,t,e,n,a){var o=t.isGroup?null:t,i=a&&a[r].cfg;if(o){var u=o.ensureState(r);if(n===!1){var l=o.getState(r);l&&(l.style=null)}else u.style=n||null;i&&(u.textConfig=i),xi(o)}}function Uyt(r,t,e){if(!r.isGroup){var n=r,a=e.currentZ,o=e.currentZLevel;n.z=a,n.zlevel=o;var i=t.z2;i!=null&&(n.z2=i||0);for(var u=0;u<es.length;u++)Hyt(n,t,es[u])}}function Hyt(r,t,e){var n=e===ts,a=n?t:ex(t,e),o=a?a.z2:null,i;o!=null&&(i=n?r:r.ensureState(e),i.z2=o||0)}function J7(r,t,e,n){var a=r.get("renderItem"),o=r.coordinateSystem,i={};o&&(i=o.prepareCustoms?o.prepareCustoms(o):Pyt[o.type](o));for(var u=et({getWidth:n.getWidth,getHeight:n.getHeight,getZr:n.getZr,getDevicePixelRatio:n.getDevicePixelRatio,value:D,style:C,ordinalRawValue:b,styleEmphasis:x,visual:E,barLayout:M,currentSeriesIndices:I,font:F},i.api||{}),l={context:{},seriesId:r.id,seriesName:r.name,seriesIndex:r.seriesIndex,coordSys:i.coordSys,dataInsideLength:t.count(),encode:kyt(r.getData())},f,s,c={},p={},v={},d={},m=0;m<es.length;m++){var h=es[m];v[h]=r.getModel(wR[h]),d[h]=r.getModel(SR[h])}function _(L){return L===f?s||(s=t.getItemModel(L)):t.getItemModel(L)}function g(L,R){return t.hasItemOption?L===f?c[R]||(c[R]=_(L).getModel(wR[R])):_(L).getModel(wR[R]):v[R]}function y(L,R){return t.hasItemOption?L===f?p[R]||(p[R]=_(L).getModel(SR[R])):_(L).getModel(SR[R]):d[R]}return function(L,R){return f=L,s=null,c={},p={},a&&a(et({dataIndexInside:L,dataIndex:t.getRawIndex(L),actionType:R?R.type:null},l),u)};function D(L,R){return R==null&&(R=f),t.getStore().get(t.getDimensionIndex(L||0),R)}function b(L,R){R==null&&(R=f),L=L||0;var P=t.getDimensionInfo(L);if(!P){var k=t.getDimensionIndex(L);return k>=0?t.getStore().get(k,R):void 0}var H=t.get(P.name,R),G=P&&P.ordinalMeta;return G?G.categories[H]:H}function C(L,R){R==null&&(R=f);var P=t.getItemVisual(R,"style"),k=P&&P.fill,H=P&&P.opacity,G=g(R,ts).getItemStyle();k!=null&&(G.fill=k),H!=null&&(G.opacity=H);var j={inheritColor:V(k)?k:"#000"},rt=y(R,ts),xt=Re(rt,null,j,!1,!0);xt.text=rt.getShallow("show")?Tt(r.getFormattedLabel(R,ts),zi(t,R)):null;var J=c_(rt,j,!1);return S(L,G),G=CR(G,xt,J),L&&w(G,L),G.legacy=!0,G}function x(L,R){R==null&&(R=f);var P=g(R,Fl).getItemStyle(),k=y(R,Fl),H=Re(k,null,null,!0,!0);H.text=k.getShallow("show")?gn(r.getFormattedLabel(R,Fl),r.getFormattedLabel(R,ts),zi(t,R)):null;var G=c_(k,null,!0);return S(L,P),P=CR(P,H,G),L&&w(P,L),P.legacy=!0,P}function w(L,R){for(var P in R)st(R,P)&&(L[P]=R[P])}function S(L,R){L&&(L.textFill&&(R.textFill=L.textFill),L.textPosition&&(R.textPosition=L.textPosition))}function E(L,R){if(R==null&&(R=f),st(hR,L)){var P=t.getItemVisual(R,"style");return P?P[hR[L]]:null}if(st(H7,L))return t.getItemVisual(R,L)}function M(L){if(o.type==="cartesian2d"){var R=o.getBaseAxis();return O$(et({axis:R},L))}}function I(){return e.getCurrentSeriesIndices()}function F(L){return Rv(L,e)}}function kyt(r){var t={};return T(r.dimensions,function(e){var n=r.getDimensionInfo(e);if(!n.isExtraCoord){var a=n.coordDim,o=t[a]=t[a]||[];o[n.coordDimIndex]=r.getDimensionIndex(e)}}),t}function ER(r,t,e,n,a,o,i){if(!n){o.remove(t);return}var u=PR(r,t,e,n,a,o);return u&&i.setItemGraphicEl(e,u),u&&Me(u,n.focus,n.blurScope,n.emphasisDisabled),u}function PR(r,t,e,n,a,o){var i=-1,u=t;t&&K7(t,n,a)&&(i=wt(o.childrenRef(),t),t=null);var l=!t,f=t;f?f.clearStates():(f=LR(n),u&&Nyt(u,f)),n.morph===!1?f.disableMorphing=!0:f.disableMorphing&&(f.disableMorphing=!1),fi.normal.cfg=fi.normal.conOpt=fi.emphasis.cfg=fi.emphasis.conOpt=fi.blur.cfg=fi.blur.conOpt=fi.select.cfg=fi.select.conOpt=null,fi.isLegacy=!1,Wyt(f,e,n,a,l,fi),zyt(f,e,n,a,l),RR(r,f,e,n,fi,a,l),st(n,"info")&&(Pu(f).info=n.info);for(var s=0;s<es.length;s++){var c=es[s];if(c!==ts){var p=ex(n,c),v=NR(n,p,c);X7(c,f,p,v,fi)}}return Uyt(f,n,a),n.type==="group"&&Gyt(r,f,e,n,a),i>=0?o.replaceAt(f,i):o.add(f),f}function K7(r,t,e){var n=Pu(r),a=t.type,o=t.shape,i=t.style;return e.isUniversalTransitionEnabled()||a!=null&&a!==n.customGraphicType||a==="path"&&qyt(o)&&tJ(o)!==n.customPathData||a==="image"&&st(i,"image")&&i.image!==n.customImagePath}function zyt(r,t,e,n,a){var o=e.clipPath;if(o===!1)r&&r.getClipPath()&&r.removeClipPath();else if(o){var i=r.getClipPath();i&&K7(i,o,n)&&(i=null),i||(i=LR(o),r.setClipPath(i)),RR(null,i,t,o,null,n,a)}}function Wyt(r,t,e,n,a,o){if(!r.isGroup){j7(e,null,o),j7(e,Fl,o);var i=o.normal.conOpt,u=o.emphasis.conOpt,l=o.blur.conOpt,f=o.select.conOpt;if(i!=null||u!=null||f!=null||l!=null){var s=r.getTextContent();if(i===!1)s&&r.removeTextContent();else{i=o.normal.conOpt=i||{type:"text"},s?s.clearStates():(s=LR(i),r.setTextContent(s)),RR(null,s,t,i,null,n,a);for(var c=i&&i.style,p=0;p<es.length;p++){var v=es[p];if(v!==ts){var d=o[v].conOpt;X7(v,s,d,NR(i,d,v),null)}}c?s.dirty():s.markRedraw()}}}}function j7(r,t,e){var n=t?ex(r,t):r,a=t?NR(r,n,Fl):r.style,o=r.type,i=n?n.textConfig:null,u=r.textContent,l=u?t?ex(u,t):u:null;if(a&&(e.isLegacy||XT(a,o,!!i,!!l))){e.isLegacy=!0;var f=KT(a,o,!t);!i&&f.textConfig&&(i=f.textConfig),!l&&f.textContent&&(l=f.textContent)}if(!t&&l){var s=l;!s.type&&(s.type="text")}var c=t?e[t]:e.normal;c.cfg=i,c.conOpt=l}function ex(r,t){return t?r?r[t]:null:r}function NR(r,t,e){var n=t&&t.style;return n==null&&e===Fl&&r&&(n=r.styleEmphasis),n}function Gyt(r,t,e,n,a){var o=n.children,i=o?o.length:0,u=n.$mergeChildren,l=u==="byName"||n.diffChildrenByName,f=u===!1;if(!(!i&&!l&&!f)){if(l){Vyt({api:r,oldChildren:t.children()||[],newChildren:o||[],dataIndex:e,seriesModel:a,group:t});return}f&&t.removeAll();for(var s=0;s<i;s++){var c=o[s],p=t.childAt(s);c?(c.ignore==null&&(c.ignore=!1),PR(r,p,e,c,a,t)):p.ignore=!0}for(var v=t.childCount()-1;v>=s;v--){var d=t.childAt(v);Byt(t,d,a)}}}function Byt(r,t,e){t&&bd(t,Pu(r).option,e)}function Vyt(r){new Zn(r.oldChildren,r.newChildren,Y7,Y7,r).add(Q7).update(Q7).remove($yt).execute()}function Y7(r,t){var e=r&&r.name;return e??Ryt+t}function Q7(r,t){var e=this.context,n=r!=null?e.newChildren[r]:null,a=t!=null?e.oldChildren[t]:null;PR(e.api,a,e.dataIndex,n,e.seriesModel,e.group)}function $yt(r){var t=this.context,e=t.oldChildren[r];e&&bd(e,Pu(e).option,t.seriesModel)}function tJ(r){return r&&(r.pathData||r.d)}function qyt(r){return r&&(st(r,"pathData")||st(r,"d"))}function OR(r){r.registerChartView(Z7),r.registerSeriesModel(k7)}var Zc=St(),eJ=lt,UR=Q,Jyt=(function(){function r(){this._dragging=!1,this.animationThreshold=15}return r.prototype.render=function(t,e,n,a){var o=e.get("value"),i=e.get("status");if(this._axisModel=t,this._axisPointerModel=e,this._api=n,!(!a&&this._lastValue===o&&this._lastStatus===i)){this._lastValue=o,this._lastStatus=i;var u=this._group,l=this._handle;if(!i||i==="hide"){u&&u.hide(),l&&l.hide();return}u&&u.show(),l&&l.show();var f={};this.makeElOption(f,o,t,e,n);var s=f.graphicKey;s!==this._lastGraphicKey&&this.clear(n),this._lastGraphicKey=s;var c=this._moveAnimation=this.determineAnimation(t,e);if(!u)u=this._group=new at,this.createPointerEl(u,f,t,e),this.createLabelEl(u,f,t,e),n.getZr().add(u);else{var p=gt(rJ,e,c);this.updatePointerEl(u,f,p),this.updateLabelEl(u,f,p,e)}aJ(u,e,!0),this._renderHandle(o)}},r.prototype.remove=function(t){this.clear(t)},r.prototype.dispose=function(t){this.clear(t)},r.prototype.determineAnimation=function(t,e){var n=e.get("animation"),a=t.axis,o=a.type==="category",i=e.get("snap");if(!i&&!o)return!1;if(n==="auto"||n==null){var u=this.animationThreshold;if(o&&a.getBandWidth()>u)return!0;if(i){var l=_T(t).seriesDataCount,f=a.getExtent();return Math.abs(f[0]-f[1])/l>u}return!1}return n===!0},r.prototype.makeElOption=function(t,e,n,a,o){},r.prototype.createPointerEl=function(t,e,n,a){var o=e.pointer;if(o){var i=Zc(t).pointerEl=new Ot[o.type](eJ(e.pointer));t.add(i)}},r.prototype.createLabelEl=function(t,e,n,a){if(e.label){var o=Zc(t).labelEl=new Wt(eJ(e.label));t.add(o),nJ(o,a)}},r.prototype.updatePointerEl=function(t,e,n){var a=Zc(t).pointerEl;a&&e.pointer&&(a.setStyle(e.pointer.style),n(a,{shape:e.pointer.shape}))},r.prototype.updateLabelEl=function(t,e,n,a){var o=Zc(t).labelEl;o&&(o.setStyle(e.label.style),n(o,{x:e.label.x,y:e.label.y}),nJ(o,a))},r.prototype._renderHandle=function(t){if(!(this._dragging||!this.updateHandleTransform)){var e=this._axisPointerModel,n=this._api.getZr(),a=this._handle,o=e.getModel("handle"),i=e.get("status");if(!o.get("show")||!i||i==="hide"){a&&n.remove(a),this._handle=null;return}var u;this._handle||(u=!0,a=this._handle=gl(o.get("icon"),{cursor:"move",draggable:!0,onmousemove:function(f){qa(f.event)},onmousedown:UR(this._onHandleDragMove,this,0,0),drift:UR(this._onHandleDragMove,this),ondragend:UR(this._onHandleDragEnd,this)}),n.add(a)),aJ(a,e,!1),a.setStyle(o.getItemStyle(null,["color","borderColor","borderWidth","opacity","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY"]));var l=o.get("size");O(l)||(l=[l,l]),a.scaleX=l[0]/2,a.scaleY=l[1]/2,ri(this,"_doDispatchAxisPointer",o.get("throttle")||0,"fixRate"),this._moveHandleToValue(t,u)}},r.prototype._moveHandleToValue=function(t,e){rJ(this._axisPointerModel,!e&&this._moveAnimation,this._handle,HR(this.getHandleTransform(t,this._axisModel,this._axisPointerModel)))},r.prototype._onHandleDragMove=function(t,e){var n=this._handle;if(n){this._dragging=!0;var a=this.updateHandleTransform(HR(n),[t,e],this._axisModel,this._axisPointerModel);this._payloadInfo=a,n.stopAnimation(),n.attr(HR(a)),Zc(n).lastProp=null,this._doDispatchAxisPointer()}},r.prototype._doDispatchAxisPointer=function(){var t=this._handle;if(t){var e=this._payloadInfo,n=this._axisModel;this._api.dispatchAction({type:"updateAxisPointer",x:e.cursorPoint[0],y:e.cursorPoint[1],tooltipOption:e.tooltipOption,axesInfo:[{axisDim:n.axis.dim,axisIndex:n.componentIndex}]})}},r.prototype._onHandleDragEnd=function(){this._dragging=!1;var t=this._handle;if(t){var e=this._axisPointerModel.get("value");this._moveHandleToValue(e),this._api.dispatchAction({type:"hideTip"})}},r.prototype.clear=function(t){this._lastValue=null,this._lastStatus=null;var e=t.getZr(),n=this._group,a=this._handle;e&&n&&(this._lastGraphicKey=null,n&&e.remove(n),a&&e.remove(a),this._group=null,this._handle=null,this._payloadInfo=null),wl(this,"_doDispatchAxisPointer")},r.prototype.doClear=function(){},r.prototype.buildLabel=function(t,e,n){return n=n||0,{x:t[n],y:t[1-n],width:e[n],height:e[1-n]}},r})();function rJ(r,t,e,n){oJ(Zc(e).lastProp,n)||(Zc(e).lastProp=n,t?$t(e,n,r):(e.stopAnimation(),e.attr(n)))}function oJ(r,t){if(nt(r)&&nt(t)){var e=!0;return T(t,function(n,a){e=e&&oJ(r[a],n)}),!!e}else return r===t}function nJ(r,t){r[t.get(["label","show"])?"show":"hide"]()}function HR(r){return{x:r.x||0,y:r.y||0,rotation:r.rotation||0}}function aJ(r,t,e){var n=t.get("z"),a=t.get("zlevel");r&&r.traverse(function(o){o.type!=="group"&&(n!=null&&(o.z=n),a!=null&&(o.zlevel=a),o.silent=e)})}var Td=Jyt;function xd(r){var t=r.get("type"),e=r.getModel(t+"Style"),n;return t==="line"?(n=e.getLineStyle(),n.fill=null):t==="shadow"&&(n=e.getAreaStyle(),n.stroke=null),n}function kR(r,t,e,n,a){var o=e.get("value"),i=zR(o,t.axis,t.ecModel,e.get("seriesDataIndices"),{precision:e.get(["label","precision"]),formatter:e.get(["label","formatter"])}),u=e.getModel("label"),l=Ai(u.get("padding")||0),f=u.getFont(),s=vu(i,f),c=a.position,p=s.width+l[1]+l[3],v=s.height+l[0]+l[2],d=a.align;d==="right"&&(c[0]-=p),d==="center"&&(c[0]-=p/2);var m=a.verticalAlign;m==="bottom"&&(c[1]-=v),m==="middle"&&(c[1]-=v/2),jyt(c,p,v,n);var h=u.get("backgroundColor");(!h||h==="auto")&&(h=t.get(["axisLine","lineStyle","color"])),r.label={x:c[0],y:c[1],style:Re(u,{text:i,font:f,fill:u.getTextColor(),padding:l,backgroundColor:h}),z2:10}}function jyt(r,t,e,n){var a=n.getWidth(),o=n.getHeight();r[0]=Math.min(r[0]+t,a)-t,r[1]=Math.min(r[1]+e,o)-e,r[0]=Math.max(r[0],0),r[1]=Math.max(r[1],0)}function zR(r,t,e,n,a){r=t.scale.parse(r);var o=t.scale.getLabel({value:r},{precision:a.precision}),i=a.formatter;if(i){var u={value:Y_(t,{value:r}),axisDimension:t.dim,axisIndex:t.index,seriesData:[]};T(n,function(l){var f=e.getSeriesByIndex(l.seriesIndex),s=l.dataIndexInside,c=f&&f.getDataParams(s);c&&u.seriesData.push(c)}),V(i)?o=i.replace("{value}",o):X(i)&&(o=i(u))}return o}function xg(r,t,e){var n=jr();return ja(n,n,e.rotation),$n(n,n,e.position),jn([r.dataToCoord(t),(e.labelOffset||0)+(e.labelDirection||1)*(e.labelMargin||0)],n)}function rx(r,t,e,n,a,o){var i=Xn.innerTextLayout(e.rotation,0,e.labelDirection);e.labelMargin=a.get(["label","margin"]),kR(t,n,a,o,{position:xg(n.axis,r,e),align:i.textAlign,verticalAlign:i.textVerticalAlign})}function wd(r,t,e){return e=e||0,{x1:r[e],y1:r[1-e],x2:t[e],y2:t[1-e]}}function nx(r,t,e){return e=e||0,{x:r[e],y:r[1-e],width:t[e],height:t[1-e]}}function WR(r,t,e,n,a,o){return{cx:r,cy:t,r0:e,r:n,startAngle:a,endAngle:o,clockwise:!0}}var Yyt=(function(r){A(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return t.prototype.makeElOption=function(e,n,a,o,i){var u=a.axis,l=u.grid,f=o.get("type"),s=iJ(l,u).getOtherAxis(u).getGlobalExtent(),c=u.toGlobalCoord(u.dataToCoord(n,!0));if(f&&f!=="none"){var p=xd(o),v=Qyt[f](u,c,s);v.style=p,e.graphicKey=v.type,e.pointer=v}var d=ig(l.model,a);rx(n,e,d,a,o,i)},t.prototype.getHandleTransform=function(e,n,a){var o=ig(n.axis.grid.model,n,{labelInside:!1});o.labelMargin=a.get(["handle","margin"]);var i=xg(n.axis,e,o);return{x:i[0],y:i[1],rotation:o.rotation+(o.labelDirection<0?Math.PI:0)}},t.prototype.updateHandleTransform=function(e,n,a,o){var i=a.axis,u=i.grid,l=i.getGlobalExtent(!0),f=iJ(u,i).getOtherAxis(i).getGlobalExtent(),s=i.dim==="x"?0:1,c=[e.x,e.y];c[s]+=n[s],c[s]=Math.min(l[1],c[s]),c[s]=Math.max(l[0],c[s]);var p=(f[1]+f[0])/2,v=[p,p];v[s]=c[s];var d=[{verticalAlign:"middle"},{align:"center"}];return{x:c[0],y:c[1],rotation:e.rotation,cursorPoint:v,tooltipOption:d[s]}},t})(Td);function iJ(r,t){var e={};return e[t.dim+"AxisIndex"]=t.index,r.getCartesian(e)}var Qyt={line:function(r,t,e){var n=wd([t,e[0]],[t,e[1]],uJ(r));return{type:"Line",subPixelOptimize:!0,shape:n}},shadow:function(r,t,e){var n=Math.max(1,r.getBandWidth()),a=e[1]-e[0];return{type:"Rect",shape:nx([t-n/2,e[0]],[n,a],uJ(r))}}};function uJ(r){return r.dim==="x"?0:1}var lJ=Yyt;var Zyt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.type="axisPointer",t.defaultOption={show:"auto",z:50,type:"line",snap:!1,triggerTooltip:!0,triggerEmphasis:!0,value:null,status:null,link:[],animation:null,animationDurationUpdate:200,lineStyle:{color:"#B9BEC9",width:1,type:"dashed"},shadowStyle:{color:"rgba(210,219,238,0.2)"},label:{show:!0,formatter:null,precision:"auto",margin:3,color:"#fff",padding:[5,7,5,7],backgroundColor:"auto",borderColor:null,borderWidth:0,borderRadius:3},handle:{show:!1,icon:"M10.7,11.9v-1.3H9.3v1.3c-4.9,0.3-8.8,4.4-8.8,9.4c0,5,3.9,9.1,8.8,9.4h1.3c4.9-0.3,8.8-4.4,8.8-9.4C19.5,16.3,15.6,12.2,10.7,11.9z M13.3,24.4H6.7v-1.2h6.6z M13.3,22H6.7v-1.2h6.6z M13.3,19.6H6.7v-1.2h6.6z",size:45,margin:50,color:"#333",shadowBlur:3,shadowColor:"#aaa",shadowOffsetX:0,shadowOffsetY:2,throttle:40}},t})(Gt),fJ=Zyt;var Ll=St(),Xyt=T;function ox(r,t,e){if(!Kt.node){var n=t.getZr();Ll(n).records||(Ll(n).records={}),Kyt(n,t);var a=Ll(n).records[r]||(Ll(n).records[r]={});a.handler=e}}function Kyt(r,t){if(Ll(r).initialized)return;Ll(r).initialized=!0,e("click",gt(sJ,"click")),e("mousemove",gt(sJ,"mousemove")),e("globalout",eDt);function e(n,a){r.on(n,function(o){var i=rDt(t);Xyt(Ll(r).records,function(u){u&&a(u,o,i.dispatchAction)}),tDt(i.pendings,t)})}}function tDt(r,t){var e=r.showTip.length,n=r.hideTip.length,a;e?a=r.showTip[e-1]:n&&(a=r.hideTip[n-1]),a&&(a.dispatchAction=null,t.dispatchAction(a))}function eDt(r,t,e){r.handler("leave",null,e)}function sJ(r,t,e,n){t.handler(r,e,n)}function rDt(r){var t={showTip:[],hideTip:[]},e=function(n){var a=t[n.type];a?a.push(n):(n.dispatchAction=e,r.dispatchAction(n))};return{dispatchAction:e,pendings:t}}function wg(r,t){if(!Kt.node){var e=t.getZr(),n=(Ll(e).records||{})[r];n&&(Ll(e).records[r]=null)}}var nDt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.render=function(e,n,a){var o=n.getComponent("tooltip"),i=e.get("triggerOn")||o&&o.get("triggerOn")||"mousemove|click";ox("axisPointer",a,function(u,l,f){i!=="none"&&(u==="leave"||i.indexOf(u)>=0)&&f({type:"updateAxisPointer",currTrigger:u,x:l&&l.offsetX,y:l&&l.offsetY})})},t.prototype.remove=function(e,n){wg("axisPointer",n)},t.prototype.dispose=function(e,n){wg("axisPointer",n)},t.type="axisPointer",t})(Ee),pJ=nDt;function Sg(r,t){var e=[],n=r.seriesIndex,a;if(n==null||!(a=t.getSeriesByIndex(n)))return{point:[]};var o=a.getData(),i=jo(o,r);if(i==null||i<0||O(i))return{point:[]};var u=o.getItemGraphicEl(i),l=a.coordinateSystem;if(a.getTooltipPosition)e=a.getTooltipPosition(i)||[];else if(l&&l.dataToPoint)if(r.isStacked){var f=l.getBaseAxis(),s=l.getOtherAxis(f),c=s.dim,p=f.dim,v=c==="x"||c==="radius"?1:0,d=o.mapDimension(p),m=[];m[v]=o.get(d,i),m[1-v]=o.get(o.getCalculationInfo("stackResultDimension"),i),e=l.dataToPoint(m)||[]}else e=l.dataToPoint(o.getValues(U(l.dimensions,function(_){return o.mapDimension(_)}),i))||[];else if(u){var h=u.getBoundingRect().clone();h.applyTransform(u.transform),e=[h.x+h.width/2,h.y+h.height/2]}return{point:e,el:u}}var vJ=St();function GR(r,t,e){var n=r.currTrigger,a=[r.x,r.y],o=r,i=r.dispatchAction||Q(e.dispatchAction,e),u=t.getComponent("axisPointer").coordSysAxesInfo;if(u){ix(a)&&(a=Sg({seriesIndex:o.seriesIndex,dataIndex:o.dataIndex},t).point);var l=ix(a),f=o.axesInfo,s=u.axesInfo,c=n==="leave"||ix(a),p={},v={},d={list:[],map:{}},m={showPointer:gt(oDt,v),showTooltip:gt(iDt,d)};T(u.coordSysMap,function(_,g){var y=l||_.containPoint(a);T(u.coordSysAxesInfo[g],function(D,b){var C=D.axis,x=sDt(f,D);if(!c&&y&&(!f||x)){var w=x&&x.value;w==null&&!l&&(w=C.pointToData(a)),w!=null&&dJ(D,w,m,!1,p)}})});var h={};return T(s,function(_,g){var y=_.linkGroup;y&&!v[g]&&T(y.axesInfo,function(D,b){var C=v[b];if(D!==_&&C){var x=C.value;y.mapper&&(x=_.axis.scale.parse(y.mapper(x,mJ(D),mJ(_)))),h[_.key]=x}})}),T(h,function(_,g){dJ(s[g],_,m,!0,p)}),uDt(v,s,p),lDt(d,a,r,i),fDt(s,i,e),p}}function dJ(r,t,e,n,a){var o=r.axis;if(!(o.scale.isBlank()||!o.containData(t))){if(!r.involveSeries){e.showPointer(r,t);return}var i=aDt(t,r),u=i.payloadBatch,l=i.snapToValue;u[0]&&a.seriesIndex==null&&N(a,u[0]),!n&&r.snap&&o.containData(l)&&l!=null&&(t=l),e.showPointer(r,t,u),e.showTooltip(r,i,l)}}function aDt(r,t){var e=t.axis,n=e.dim,a=r,o=[],i=Number.MAX_VALUE,u=-1;return T(t.seriesModels,function(l,f){var s=l.getData().mapDimensionsAll(n),c,p;if(l.getAxisTooltipData){var v=l.getAxisTooltipData(s,r,e);p=v.dataIndices,c=v.nestestValue}else{if(p=l.getData().indicesOfNearest(s[0],r,e.type==="category"?.5:null),!p.length)return;c=l.getData().get(s[0],p[0])}if(!(c==null||!isFinite(c))){var d=r-c,m=Math.abs(d);m<=i&&((m<i||d>=0&&u<0)&&(i=m,u=d,a=c,o.length=0),T(p,function(h){o.push({seriesIndex:l.seriesIndex,dataIndexInside:h,dataIndex:l.getData().getRawIndex(h)})}))}}),{payloadBatch:o,snapToValue:a}}function oDt(r,t,e,n){r[t.key]={value:e,payloadBatch:n}}function iDt(r,t,e,n){var a=e.payloadBatch,o=t.axis,i=o.model,u=t.axisPointerModel;if(!(!t.triggerTooltip||!a.length)){var l=t.coordSys.model,f=ed(l),s=r.map[f];s||(s=r.map[f]={coordSysId:l.id,coordSysIndex:l.componentIndex,coordSysType:l.type,coordSysMainType:l.mainType,dataByAxis:[]},r.list.push(s)),s.dataByAxis.push({axisDim:o.dim,axisIndex:i.componentIndex,axisType:i.type,axisId:i.id,value:n,valueLabelOpt:{precision:u.get(["label","precision"]),formatter:u.get(["label","formatter"])},seriesDataIndices:a.slice()})}}function uDt(r,t,e){var n=e.axesInfo=[];T(t,function(a,o){var i=a.axisPointerModel.option,u=r[o];u?(!a.useHandle&&(i.status="show"),i.value=u.value,i.seriesDataIndices=(u.payloadBatch||[]).slice()):!a.useHandle&&(i.status="hide"),i.status==="show"&&n.push({axisDim:a.axis.dim,axisIndex:a.axis.model.componentIndex,value:i.value})})}function lDt(r,t,e,n){if(ix(t)||!r.list.length){n({type:"hideTip"});return}var a=((r.list[0].dataByAxis[0]||{}).seriesDataIndices||[])[0]||{};n({type:"showTip",escapeConnect:!0,x:t[0],y:t[1],tooltipOption:e.tooltipOption,position:e.position,dataIndexInside:a.dataIndexInside,dataIndex:a.dataIndex,seriesIndex:a.seriesIndex,dataByCoordSys:r.list})}function fDt(r,t,e){var n=e.getZr(),a="axisPointerLastHighlights",o=vJ(n)[a]||{},i=vJ(n)[a]={};T(r,function(f,s){var c=f.axisPointerModel.option;c.status==="show"&&f.triggerEmphasis&&T(c.seriesDataIndices,function(p){var v=p.seriesIndex+" | "+p.dataIndex;i[v]=p})});var u=[],l=[];T(o,function(f,s){!i[s]&&l.push(f)}),T(i,function(f,s){!o[s]&&u.push(f)}),l.length&&e.dispatchAction({type:"downplay",escapeConnect:!0,notBlur:!0,batch:l}),u.length&&e.dispatchAction({type:"highlight",escapeConnect:!0,notBlur:!0,batch:u})}function sDt(r,t){for(var e=0;e<(r||[]).length;e++){var n=r[e];if(t.axis.dim===n.axisDim&&t.axis.model.componentIndex===n.axisIndex)return n}}function mJ(r){var t=r.axis.model,e={},n=e.axisDim=r.axis.dim;return e.axisIndex=e[n+"AxisIndex"]=t.componentIndex,e.axisName=e[n+"AxisName"]=t.name,e.axisId=e[n+"AxisId"]=t.id,e}function ix(r){return!r||r[0]==null||isNaN(r[0])||r[1]==null||isNaN(r[1])}function Vi(r){fo.registerAxisPointerClass("CartesianAxisPointer",lJ),r.registerComponentModel(fJ),r.registerComponentView(pJ),r.registerPreprocessor(function(t){if(t){(!t.axisPointer||t.axisPointer.length===0)&&(t.axisPointer={});var e=t.axisPointer.link;e&&!O(e)&&(t.axisPointer.link=[e])}}),r.registerProcessor(r.PRIORITY.PROCESSOR.STATISTIC,function(t,e){t.getComponent("axisPointer").coordSysAxesInfo=Gq(t,e)}),r.registerAction({type:"updateAxisPointer",event:"updateAxisPointer",update:":updateAxisPointer"},GR)}function BR(r){Jt(DT),Jt(Vi)}var cDt=(function(r){A(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return t.prototype.makeElOption=function(e,n,a,o,i){var u=a.axis;u.dim==="angle"&&(this.animationThreshold=Math.PI/18);var l=u.polar,f=l.getOtherAxis(u),s=f.getExtent(),c=u.dataToCoord(n),p=o.get("type");if(p&&p!=="none"){var v=xd(o),d=vDt[p](u,l,c,s);d.style=v,e.graphicKey=d.type,e.pointer=d}var m=o.get(["label","margin"]),h=pDt(n,a,o,l,m);kR(e,a,o,i,h)},t})(Td);function pDt(r,t,e,n,a){var o=t.axis,i=o.dataToCoord(r),u=n.getAngleAxis().getExtent()[0];u=u/180*Math.PI;var l=n.getRadiusAxis().getExtent(),f,s,c;if(o.dim==="radius"){var p=jr();ja(p,p,u),$n(p,p,[n.cx,n.cy]),f=jn([i,-a],p);var v=t.getModel("axisLabel").get("rotate")||0,d=Xn.innerTextLayout(u,v*Math.PI/180,-1);s=d.textAlign,c=d.textVerticalAlign}else{var m=l[1];f=n.coordToPoint([m+a,i]);var h=n.cx,_=n.cy;s=Math.abs(f[0]-h)/m<.3?"center":f[0]>h?"left":"right",c=Math.abs(f[1]-_)/m<.3?"middle":f[1]>_?"top":"bottom"}return{position:f,align:s,verticalAlign:c}}var vDt={line:function(r,t,e,n){return r.dim==="angle"?{type:"Line",shape:wd(t.coordToPoint([n[0],e]),t.coordToPoint([n[1],e]))}:{type:"Circle",shape:{cx:t.cx,cy:t.cy,r:e}}},shadow:function(r,t,e,n){var a=Math.max(1,r.getBandWidth()),o=Math.PI/180;return r.dim==="angle"?{type:"Sector",shape:WR(t.cx,t.cy,n[0],n[1],(-e-a/2)*o,(-e+a/2)*o)}:{type:"Sector",shape:WR(t.cx,t.cy,e-a/2,e+a/2,0,Math.PI*2)}}},hJ=cDt;var dDt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.findAxisModel=function(e){var n,a=this.ecModel;return a.eachComponent(e,function(o){o.getCoordSysModel()===this&&(n=o)},this),n},t.type="polar",t.dependencies=["radiusAxis","angleAxis"],t.defaultOption={z:0,center:["50%","50%"],radius:"80%"},t})(Gt),_J=dDt;var VR=(function(r){A(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return t.prototype.getCoordSysModel=function(){return this.getReferringComponents("polar",je).models[0]},t.type="polarAxis",t})(Gt);Ve(VR,wu);var gJ=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.type="angleAxis",t})(VR);var yJ=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.type="radiusAxis",t})(VR);var $R=(function(r){A(t,r);function t(e,n){return r.call(this,"radius",e,n)||this}return t.prototype.pointToData=function(e,n){return this.polar.pointToData(e,n)[this.dim==="radius"?0:1]},t})(Nn);$R.prototype.dataToRadius=Nn.prototype.dataToCoord;$R.prototype.radiusToData=Nn.prototype.coordToData;var DJ=$R;var mDt=St(),qR=(function(r){A(t,r);function t(e,n){return r.call(this,"angle",e,n||[0,360])||this}return t.prototype.pointToData=function(e,n){return this.polar.pointToData(e,n)[this.dim==="radius"?0:1]},t.prototype.calculateCategoryInterval=function(){var e=this,n=e.getLabelModel(),a=e.scale,o=a.getExtent(),i=a.count();if(o[1]-o[0]<1)return 0;var u=o[0],l=e.dataToCoord(u+1)-e.dataToCoord(u),f=Math.abs(l),s=vu(u==null?"":u+"",n.getFont(),"center","top"),c=Math.max(s.height,7),p=c/f;isNaN(p)&&(p=1/0);var v=Math.max(0,Math.floor(p)),d=mDt(e.model),m=d.lastAutoInterval,h=d.lastTickCount;return m!=null&&h!=null&&Math.abs(m-v)<=1&&Math.abs(h-i)<=1&&m>v?v=m:(d.lastTickCount=i,d.lastAutoInterval=v),v},t})(Nn);qR.prototype.dataToAngle=Nn.prototype.dataToCoord;qR.prototype.angleToData=Nn.prototype.coordToData;var bJ=qR;var JR=["radius","angle"],hDt=(function(){function r(t){this.dimensions=JR,this.type="polar",this.cx=0,this.cy=0,this._radiusAxis=new DJ,this._angleAxis=new bJ,this.axisPointerEnabled=!0,this.name=t||"",this._radiusAxis.polar=this._angleAxis.polar=this}return r.prototype.containPoint=function(t){var e=this.pointToCoord(t);return this._radiusAxis.contain(e[0])&&this._angleAxis.contain(e[1])},r.prototype.containData=function(t){return this._radiusAxis.containData(t[0])&&this._angleAxis.containData(t[1])},r.prototype.getAxis=function(t){var e="_"+t+"Axis";return this[e]},r.prototype.getAxes=function(){return[this._radiusAxis,this._angleAxis]},r.prototype.getAxesByScale=function(t){var e=[],n=this._angleAxis,a=this._radiusAxis;return n.scale.type===t&&e.push(n),a.scale.type===t&&e.push(a),e},r.prototype.getAngleAxis=function(){return this._angleAxis},r.prototype.getRadiusAxis=function(){return this._radiusAxis},r.prototype.getOtherAxis=function(t){var e=this._angleAxis;return t===e?this._radiusAxis:e},r.prototype.getBaseAxis=function(){return this.getAxesByScale("ordinal")[0]||this.getAxesByScale("time")[0]||this.getAngleAxis()},r.prototype.getTooltipAxes=function(t){var e=t!=null&&t!=="auto"?this.getAxis(t):this.getBaseAxis();return{baseAxes:[e],otherAxes:[this.getOtherAxis(e)]}},r.prototype.dataToPoint=function(t,e){return this.coordToPoint([this._radiusAxis.dataToRadius(t[0],e),this._angleAxis.dataToAngle(t[1],e)])},r.prototype.pointToData=function(t,e){var n=this.pointToCoord(t);return[this._radiusAxis.radiusToData(n[0],e),this._angleAxis.angleToData(n[1],e)]},r.prototype.pointToCoord=function(t){var e=t[0]-this.cx,n=t[1]-this.cy,a=this.getAngleAxis(),o=a.getExtent(),i=Math.min(o[0],o[1]),u=Math.max(o[0],o[1]);a.inverse?i=u-360:u=i+360;var l=Math.sqrt(e*e+n*n);e/=l,n/=l;for(var f=Math.atan2(-n,e)/Math.PI*180,s=f<i?1:-1;f<i||f>u;)f+=s*360;return[l,f]},r.prototype.coordToPoint=function(t){var e=t[0],n=t[1]/180*Math.PI,a=Math.cos(n)*e+this.cx,o=-Math.sin(n)*e+this.cy;return[a,o]},r.prototype.getArea=function(){var t=this.getAngleAxis(),e=this.getRadiusAxis(),n=e.getExtent().slice();n[0]>n[1]&&n.reverse();var a=t.getExtent(),o=Math.PI/180;return{cx:this.cx,cy:this.cy,r0:n[0],r:n[1],startAngle:-a[0]*o,endAngle:-a[1]*o,clockwise:t.inverse,contain:function(i,u){var l=i-this.cx,f=u-this.cy,s=l*l+f*f-1e-4,c=this.r,p=this.r0;return s<=c*c&&s>=p*p}}},r.prototype.convertToPixel=function(t,e,n){var a=CJ(e);return a===this?this.dataToPoint(n):null},r.prototype.convertFromPixel=function(t,e,n){var a=CJ(e);return a===this?this.pointToData(n):null},r})();function CJ(r){var t=r.seriesModel,e=r.polarModel;return e&&e.coordinateSystem||t&&t.coordinateSystem}var TJ=hDt;function _Dt(r,t,e){var n=t.get("center"),a=e.getWidth(),o=e.getHeight();r.cx=Y(n[0],a),r.cy=Y(n[1],o);var i=r.getRadiusAxis(),u=Math.min(a,o)/2,l=t.get("radius");l==null?l=[0,"100%"]:O(l)||(l=[0,l]);var f=[Y(l[0],u),Y(l[1],u)];i.inverse?i.setExtent(f[1],f[0]):i.setExtent(f[0],f[1])}function gDt(r,t){var e=this,n=e.getAngleAxis(),a=e.getRadiusAxis();if(n.scale.setExtent(1/0,-1/0),a.scale.setExtent(1/0,-1/0),r.eachSeries(function(u){if(u.coordinateSystem===e){var l=u.getData();T(Yv(l,"radius"),function(f){a.scale.unionExtentFromData(l,f)}),T(Yv(l,"angle"),function(f){n.scale.unionExtentFromData(l,f)})}}),xu(n.scale,n.model),xu(a.scale,a.model),n.type==="category"&&!n.onBand){var o=n.getExtent(),i=360/n.scale.count();n.inverse?o[1]+=i:o[1]-=i,n.setExtent(o[0],o[1])}}function yDt(r){return r.mainType==="angleAxis"}function xJ(r,t){var e;if(r.type=t.get("type"),r.scale=Gf(t),r.onBand=t.get("boundaryGap")&&r.type==="category",r.inverse=t.get("inverse"),yDt(t)){r.inverse=r.inverse!==t.get("clockwise");var n=t.get("startAngle"),a=(e=t.get("endAngle"))!==null&&e!==void 0?e:n+(r.inverse?-360:360);r.setExtent(n,a)}t.axis=r,r.model=t}var DDt={dimensions:JR,create:function(r,t){var e=[];return r.eachComponent("polar",function(n,a){var o=new TJ(a+"");o.update=gDt;var i=o.getRadiusAxis(),u=o.getAngleAxis(),l=n.findAxisModel("radiusAxis"),f=n.findAxisModel("angleAxis");xJ(i,l),xJ(u,f),_Dt(o,n,t),e.push(o),n.coordinateSystem=o,o.model=n}),r.eachSeries(function(n){if(n.get("coordinateSystem")==="polar"){var a=n.getReferringComponents("polar",je).models[0];n.coordinateSystem=a.coordinateSystem}}),e}},wJ=DDt;var bDt=["axisLine","axisLabel","axisTick","minorTick","splitLine","minorSplitLine","splitArea"];function ux(r,t,e){t[1]>t[0]&&(t=t.slice().reverse());var n=r.coordToPoint([t[0],e]),a=r.coordToPoint([t[1],e]);return{x1:n[0],y1:n[1],x2:a[0],y2:a[1]}}function lx(r){var t=r.getRadiusAxis();return t.inverse?0:1}function SJ(r){var t=r[0],e=r[r.length-1];t&&e&&Math.abs(Math.abs(t.coord-e.coord)-360)<1e-4&&r.pop()}var CDt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.axisPointerClass="PolarAxisPointer",e}return t.prototype.render=function(e,n){if(this.group.removeAll(),!!e.get("show")){var a=e.axis,o=a.polar,i=o.getRadiusAxis().getExtent(),u=a.getTicksCoords(),l=a.getMinorTicksCoords(),f=U(a.getViewLabels(),function(s){s=lt(s);var c=a.scale,p=c.type==="ordinal"?c.getRawOrdinalNumber(s.tickValue):s.tickValue;return s.coord=a.dataToCoord(p),s});SJ(f),SJ(u),T(bDt,function(s){e.get([s,"show"])&&(!a.scale.isBlank()||s==="axisLine")&&TDt[s](this.group,e,o,u,l,i,f)},this)}},t.type="angleAxis",t})(fo),TDt={axisLine:function(r,t,e,n,a,o){var i=t.getModel(["axisLine","lineStyle"]),u=e.getAngleAxis(),l=Math.PI/180,f=u.getExtent(),s=lx(e),c=s?0:1,p,v=Math.abs(f[1]-f[0])===360?"Circle":"Arc";o[c]===0?p=new Ot[v]({shape:{cx:e.cx,cy:e.cy,r:o[s],startAngle:-f[0]*l,endAngle:-f[1]*l,clockwise:u.inverse},style:i.getLineStyle(),z2:1,silent:!0}):p=new gc({shape:{cx:e.cx,cy:e.cy,r:o[s],r0:o[c]},style:i.getLineStyle(),z2:1,silent:!0}),p.style.fill=null,r.add(p)},axisTick:function(r,t,e,n,a,o){var i=t.getModel("axisTick"),u=(i.get("inside")?-1:1)*i.get("length"),l=o[lx(e)],f=U(n,function(s){return new mr({shape:ux(e,[l,l+u],s.coord)})});r.add(pa(f,{style:et(i.getModel("lineStyle").getLineStyle(),{stroke:t.get(["axisLine","lineStyle","color"])})}))},minorTick:function(r,t,e,n,a,o){if(a.length){for(var i=t.getModel("axisTick"),u=t.getModel("minorTick"),l=(i.get("inside")?-1:1)*u.get("length"),f=o[lx(e)],s=[],c=0;c<a.length;c++)for(var p=0;p<a[c].length;p++)s.push(new mr({shape:ux(e,[f,f+l],a[c][p].coord)}));r.add(pa(s,{style:et(u.getModel("lineStyle").getLineStyle(),et(i.getLineStyle(),{stroke:t.get(["axisLine","lineStyle","color"])}))}))}},axisLabel:function(r,t,e,n,a,o,i){var u=t.getCategories(!0),l=t.getModel("axisLabel"),f=l.get("margin"),s=t.get("triggerEvent");T(i,function(c,p){var v=l,d=c.tickValue,m=o[lx(e)],h=e.coordToPoint([m+f,c.coord]),_=e.cx,g=e.cy,y=Math.abs(h[0]-_)/m<.3?"center":h[0]>_?"left":"right",D=Math.abs(h[1]-g)/m<.3?"middle":h[1]>g?"top":"bottom";if(u&&u[d]){var b=u[d];nt(b)&&b.textStyle&&(v=new Te(b.textStyle,l,l.ecModel))}var C=new Wt({silent:Xn.isLabelSilent(t),style:Re(v,{x:h[0],y:h[1],fill:v.getTextColor()||t.get(["axisLine","lineStyle","color"]),text:c.formattedLabel,align:y,verticalAlign:D})});if(r.add(C),s){var x=Xn.makeAxisEventDataBase(t);x.targetType="axisLabel",x.value=c.rawLabel,vt(C).eventData=x}},this)},splitLine:function(r,t,e,n,a,o){var i=t.getModel("splitLine"),u=i.getModel("lineStyle"),l=u.get("color"),f=0;l=l instanceof Array?l:[l];for(var s=[],c=0;c<n.length;c++){var p=f++%l.length;s[p]=s[p]||[],s[p].push(new mr({shape:ux(e,o,n[c].coord)}))}for(var c=0;c<s.length;c++)r.add(pa(s[c],{style:et({stroke:l[c%l.length]},u.getLineStyle()),silent:!0,z:t.get("z")}))},minorSplitLine:function(r,t,e,n,a,o){if(a.length){for(var i=t.getModel("minorSplitLine"),u=i.getModel("lineStyle"),l=[],f=0;f<a.length;f++)for(var s=0;s<a[f].length;s++)l.push(new mr({shape:ux(e,o,a[f][s].coord)}));r.add(pa(l,{style:u.getLineStyle(),silent:!0,z:t.get("z")}))}},splitArea:function(r,t,e,n,a,o){if(n.length){var i=t.getModel("splitArea"),u=i.getModel("areaStyle"),l=u.get("color"),f=0;l=l instanceof Array?l:[l];for(var s=[],c=Math.PI/180,p=-n[0].coord*c,v=Math.min(o[0],o[1]),d=Math.max(o[0],o[1]),m=t.get("clockwise"),h=1,_=n.length;h<=_;h++){var g=h===_?n[0].coord:n[h].coord,y=f++%l.length;s[y]=s[y]||[],s[y].push(new Vr({shape:{cx:e.cx,cy:e.cy,r0:v,r:d,startAngle:p,endAngle:-g*c,clockwise:m},silent:!0})),p=-g*c}for(var h=0;h<s.length;h++)r.add(pa(s[h],{style:et({fill:l[h%l.length]},u.getAreaStyle()),silent:!0}))}}},EJ=CDt;var xDt=["axisLine","axisTickLabel","axisName"],wDt=["splitLine","splitArea","minorSplitLine"],SDt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.axisPointerClass="PolarAxisPointer",e}return t.prototype.render=function(e,n){if(this.group.removeAll(),!!e.get("show")){var a=this._axisGroup,o=this._axisGroup=new at;this.group.add(o);var i=e.axis,u=i.polar,l=u.getAngleAxis(),f=i.getTicksCoords(),s=i.getMinorTicksCoords(),c=l.getExtent()[0],p=i.getExtent(),v=MDt(u,e,c),d=new Xn(e,v);T(xDt,d.add,d),o.add(d.getGroup()),_l(a,o,e),T(wDt,function(m){e.get([m,"show"])&&!i.scale.isBlank()&&EDt[m](this.group,e,u,c,p,f,s)},this)}},t.type="radiusAxis",t})(fo),EDt={splitLine:function(r,t,e,n,a,o){var i=t.getModel("splitLine"),u=i.getModel("lineStyle"),l=u.get("color"),f=0,s=e.getAngleAxis(),c=Math.PI/180,p=s.getExtent(),v=Math.abs(p[1]-p[0])===360?"Circle":"Arc";l=l instanceof Array?l:[l];for(var d=[],m=0;m<o.length;m++){var h=f++%l.length;d[h]=d[h]||[],d[h].push(new Ot[v]({shape:{cx:e.cx,cy:e.cy,r:Math.max(o[m].coord,0),startAngle:-p[0]*c,endAngle:-p[1]*c,clockwise:s.inverse}}))}for(var m=0;m<d.length;m++)r.add(pa(d[m],{style:et({stroke:l[m%l.length],fill:null},u.getLineStyle()),silent:!0}))},minorSplitLine:function(r,t,e,n,a,o,i){if(i.length){for(var u=t.getModel("minorSplitLine"),l=u.getModel("lineStyle"),f=[],s=0;s<i.length;s++)for(var c=0;c<i[s].length;c++)f.push(new wa({shape:{cx:e.cx,cy:e.cy,r:i[s][c].coord}}));r.add(pa(f,{style:et({fill:null},l.getLineStyle()),silent:!0}))}},splitArea:function(r,t,e,n,a,o){if(o.length){var i=t.getModel("splitArea"),u=i.getModel("areaStyle"),l=u.get("color"),f=0;l=l instanceof Array?l:[l];for(var s=[],c=o[0].coord,p=1;p<o.length;p++){var v=f++%l.length;s[v]=s[v]||[],s[v].push(new Vr({shape:{cx:e.cx,cy:e.cy,r0:c,r:o[p].coord,startAngle:0,endAngle:Math.PI*2},silent:!0})),c=o[p].coord}for(var p=0;p<s.length;p++)r.add(pa(s[p],{style:et({fill:l[p%l.length]},u.getAreaStyle()),silent:!0}))}}};function MDt(r,t,e){return{position:[r.cx,r.cy],rotation:e/180*Math.PI,labelDirection:-1,tickDirection:-1,nameDirection:1,labelRotate:t.getModel("axisLabel").get("rotate"),z2:1}}var MJ=SDt;function AJ(r){return r.get("stack")||"__ec_stack_"+r.seriesIndex}function IJ(r,t){return t.dim+r.model.componentIndex}function ADt(r,t,e){var n={},a=IDt(de(t.getSeriesByType(r),function(o){return!t.isSeriesFiltered(o)&&o.coordinateSystem&&o.coordinateSystem.type==="polar"}));t.eachSeriesByType(r,function(o){if(o.coordinateSystem.type==="polar"){var i=o.getData(),u=o.coordinateSystem,l=u.getBaseAxis(),f=IJ(u,l),s=AJ(o),c=a[f][s],p=c.offset,v=c.width,d=u.getOtherAxis(l),m=o.coordinateSystem.cx,h=o.coordinateSystem.cy,_=o.get("barMinHeight")||0,g=o.get("barMinAngle")||0;n[s]=n[s]||[];for(var y=i.mapDimension(d.dim),D=i.mapDimension(l.dim),b=Mo(i,y),C=l.dim!=="radius"||!o.get("roundCap",!0),x=d.dataToCoord(0),w=0,S=i.count();w<S;w++){var E=i.get(y,w),M=i.get(D,w),I=E>=0?"p":"n",F=x;b&&(n[s][M]||(n[s][M]={p:x,n:x}),F=n[s][M][I]);var L=void 0,R=void 0,P=void 0,k=void 0;if(d.dim==="radius"){var H=d.dataToCoord(E)-x,G=l.dataToCoord(M);Math.abs(H)<_&&(H=(H<0?-1:1)*_),L=F,R=F+H,P=G-p,k=P-v,b&&(n[s][M][I]=R)}else{var j=d.dataToCoord(E,C)-x,rt=l.dataToCoord(M);Math.abs(j)<g&&(j=(j<0?-1:1)*g),L=rt+p,R=L+v,P=F,k=F+j,b&&(n[s][M][I]=k)}i.setItemLayout(w,{cx:m,cy:h,r0:L,r:R,startAngle:-P*Math.PI/180,endAngle:-k*Math.PI/180,clockwise:P>=k})}}})}function IDt(r){var t={};T(r,function(n,a){var o=n.getData(),i=n.coordinateSystem,u=i.getBaseAxis(),l=IJ(i,u),f=u.getExtent(),s=u.type==="category"?u.getBandWidth():Math.abs(f[1]-f[0])/o.count(),c=t[l]||{bandWidth:s,remainedWidth:s,autoWidthCount:0,categoryGap:"20%",gap:"30%",stacks:{}},p=c.stacks;t[l]=c;var v=AJ(n);p[v]||c.autoWidthCount++,p[v]=p[v]||{width:0,maxWidth:0};var d=Y(n.get("barWidth"),s),m=Y(n.get("barMaxWidth"),s),h=n.get("barGap"),_=n.get("barCategoryGap");d&&!p[v].width&&(d=Math.min(c.remainedWidth,d),p[v].width=d,c.remainedWidth-=d),m&&(p[v].maxWidth=m),h!=null&&(c.gap=h),_!=null&&(c.categoryGap=_)});var e={};return T(t,function(n,a){e[a]={};var o=n.stacks,i=n.bandWidth,u=Y(n.categoryGap,i),l=Y(n.gap,1),f=n.remainedWidth,s=n.autoWidthCount,c=(f-u)/(s+(s-1)*l);c=Math.max(c,0),T(o,function(m,h){var _=m.maxWidth;_&&_<c&&(_=Math.min(_,f),m.width&&(_=Math.min(_,m.width)),f-=_,m.width=_,s--)}),c=(f-u)/(s+(s-1)*l),c=Math.max(c,0);var p=0,v;T(o,function(m,h){m.width||(m.width=c),v=m,p+=m.width*(1+l)}),v&&(p-=v.width*l);var d=-p/2;T(o,function(m,h){e[a][h]=e[a][h]||{offset:d,width:m.width},d+=m.width*(1+l)})}),e}var FJ=ADt;var FDt={startAngle:90,clockwise:!0,splitNumber:12,axisLabel:{rotate:0}},LDt={splitNumber:5},RDt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.type="polar",t})(Ee);function jR(r){Jt(Vi),fo.registerAxisPointerClass("PolarAxisPointer",hJ),r.registerCoordinateSystem("polar",wJ),r.registerComponentModel(_J),r.registerComponentView(RDt),Bi(r,"angle",gJ,FDt),Bi(r,"radius",yJ,LDt),r.registerComponentView(EJ),r.registerComponentView(MJ),r.registerLayout(gt(FJ,"bar"))}function Eg(r,t){t=t||{};var e=r.coordinateSystem,n=r.axis,a={},o=n.position,i=n.orient,u=e.getRect(),l=[u.x,u.x+u.width,u.y,u.y+u.height],f={horizontal:{top:l[2],bottom:l[3]},vertical:{left:l[0],right:l[1]}};a.position=[i==="vertical"?f.vertical[o]:l[0],i==="horizontal"?f.horizontal[o]:l[3]];var s={horizontal:0,vertical:1};a.rotation=Math.PI/2*s[i];var c={top:-1,bottom:1,right:1,left:-1};a.labelDirection=a.tickDirection=a.nameDirection=c[o],r.get(["axisTick","inside"])&&(a.tickDirection=-a.tickDirection),ir(t.labelInside,r.get(["axisLabel","inside"]))&&(a.labelDirection=-a.labelDirection);var p=t.rotate;return p==null&&(p=r.get(["axisLabel","rotate"])),a.labelRotation=o==="top"?-p:p,a.z2=1,a}var PDt=["axisLine","axisTickLabel","axisName"],NDt=["splitArea","splitLine"],ODt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.axisPointerClass="SingleAxisPointer",e}return t.prototype.render=function(e,n,a,o){var i=this.group;i.removeAll();var u=this._axisGroup;this._axisGroup=new at;var l=Eg(e),f=new Xn(e,l);T(PDt,f.add,f),i.add(this._axisGroup),i.add(f.getGroup()),T(NDt,function(s){e.get([s,"show"])&&UDt[s](this,this.group,this._axisGroup,e)},this),_l(u,this._axisGroup,e),r.prototype.render.call(this,e,n,a,o)},t.prototype.remove=function(){yT(this)},t.type="singleAxis",t})(fo),UDt={splitLine:function(r,t,e,n){var a=n.axis;if(!a.scale.isBlank()){var o=n.getModel("splitLine"),i=o.getModel("lineStyle"),u=i.get("color");u=u instanceof Array?u:[u];for(var l=i.get("width"),f=n.coordinateSystem.getRect(),s=a.isHorizontal(),c=[],p=0,v=a.getTicksCoords({tickModel:o}),d=[],m=[],h=0;h<v.length;++h){var _=a.toGlobalCoord(v[h].coord);s?(d[0]=_,d[1]=f.y,m[0]=_,m[1]=f.y+f.height):(d[0]=f.x,d[1]=_,m[0]=f.x+f.width,m[1]=_);var g=new mr({shape:{x1:d[0],y1:d[1],x2:m[0],y2:m[1]},silent:!0});hl(g.shape,l);var y=p++%u.length;c[y]=c[y]||[],c[y].push(g)}for(var D=i.getLineStyle(["color"]),h=0;h<c.length;++h)t.add(pa(c[h],{style:et({stroke:u[h%u.length]},D),silent:!0}))}},splitArea:function(r,t,e,n){gT(r,e,n,n)}},RJ=ODt;var PJ=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.getCoordSysModel=function(){return this},t.type="singleAxis",t.layoutMode="box",t.defaultOption={left:"5%",top:"5%",right:"5%",bottom:"5%",type:"value",position:"bottom",orient:"horizontal",axisLine:{show:!0,lineStyle:{width:1,type:"solid"}},tooltip:{show:!0},axisTick:{show:!0,length:6,lineStyle:{width:1}},axisLabel:{show:!0,interval:"auto"},splitLine:{show:!0,lineStyle:{type:"dashed",opacity:.2}}},t})(Gt);Ve(PJ,wu.prototype);var fx=PJ;var HDt=(function(r){A(t,r);function t(e,n,a,o,i){var u=r.call(this,e,n,a)||this;return u.type=o||"value",u.position=i||"bottom",u}return t.prototype.isHorizontal=function(){var e=this.position;return e==="top"||e==="bottom"},t.prototype.pointToData=function(e,n){return this.coordinateSystem.pointToData(e)[0]},t})(Nn),NJ=HDt;var YR=["single"],kDt=(function(){function r(t,e,n){this.type="single",this.dimension="single",this.dimensions=YR,this.axisPointerEnabled=!0,this.model=t,this._init(t,e,n)}return r.prototype._init=function(t,e,n){var a=this.dimension,o=new NJ(a,Gf(t),[0,0],t.get("type"),t.get("position")),i=o.type==="category";o.onBand=i&&t.get("boundaryGap"),o.inverse=t.get("inverse"),o.orient=t.get("orient"),t.axis=o,o.model=t,o.coordinateSystem=this,this._axis=o},r.prototype.update=function(t,e){t.eachSeries(function(n){if(n.coordinateSystem===this){var a=n.getData();T(a.mapDimensionsAll(this.dimension),function(o){this._axis.scale.unionExtentFromData(a,o)},this),xu(this._axis.scale,this._axis.model)}},this)},r.prototype.resize=function(t,e){this._rect=ze({left:t.get("left"),top:t.get("top"),right:t.get("right"),bottom:t.get("bottom"),width:t.get("width"),height:t.get("height")},{width:e.getWidth(),height:e.getHeight()}),this._adjustAxis()},r.prototype.getRect=function(){return this._rect},r.prototype._adjustAxis=function(){var t=this._rect,e=this._axis,n=e.isHorizontal(),a=n?[0,t.width]:[0,t.height],o=e.inverse?1:0;e.setExtent(a[o],a[1-o]),this._updateAxisTransform(e,n?t.x:t.y)},r.prototype._updateAxisTransform=function(t,e){var n=t.getExtent(),a=n[0]+n[1],o=t.isHorizontal();t.toGlobalCoord=o?function(i){return i+e}:function(i){return a-i+e},t.toLocalCoord=o?function(i){return i-e}:function(i){return a-i+e}},r.prototype.getAxis=function(){return this._axis},r.prototype.getBaseAxis=function(){return this._axis},r.prototype.getAxes=function(){return[this._axis]},r.prototype.getTooltipAxes=function(){return{baseAxes:[this.getAxis()],otherAxes:[]}},r.prototype.containPoint=function(t){var e=this.getRect(),n=this.getAxis(),a=n.orient;return a==="horizontal"?n.contain(n.toLocalCoord(t[0]))&&t[1]>=e.y&&t[1]<=e.y+e.height:n.contain(n.toLocalCoord(t[1]))&&t[0]>=e.y&&t[0]<=e.y+e.height},r.prototype.pointToData=function(t){var e=this.getAxis();return[e.coordToData(e.toLocalCoord(t[e.orient==="horizontal"?0:1]))]},r.prototype.dataToPoint=function(t){var e=this.getAxis(),n=this.getRect(),a=[],o=e.orient==="horizontal"?0:1;return t instanceof Array&&(t=t[0]),a[o]=e.toGlobalCoord(e.dataToCoord(+t)),a[1-o]=o===0?n.y+n.height/2:n.x+n.width/2,a},r.prototype.convertToPixel=function(t,e,n){var a=OJ(e);return a===this?this.dataToPoint(n):null},r.prototype.convertFromPixel=function(t,e,n){var a=OJ(e);return a===this?this.pointToData(n):null},r})();function OJ(r){var t=r.seriesModel,e=r.singleAxisModel;return e&&e.coordinateSystem||t&&t.coordinateSystem}var UJ=kDt;function zDt(r,t){var e=[];return r.eachComponent("singleAxis",function(n,a){var o=new UJ(n,r,t);o.name="single_"+a,o.resize(n,t),n.coordinateSystem=o,e.push(o)}),r.eachSeries(function(n){if(n.get("coordinateSystem")==="singleAxis"){var a=n.getReferringComponents("singleAxis",je).models[0];n.coordinateSystem=a&&a.coordinateSystem}}),e}var WDt={create:zDt,dimensions:YR},HJ=WDt;var kJ=["x","y"],GDt=["width","height"],BDt=(function(r){A(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return t.prototype.makeElOption=function(e,n,a,o,i){var u=a.axis,l=u.coordinateSystem,f=QR(l,1-sx(u)),s=l.dataToPoint(n)[0],c=o.get("type");if(c&&c!=="none"){var p=xd(o),v=VDt[c](u,s,f);v.style=p,e.graphicKey=v.type,e.pointer=v}var d=Eg(a);rx(n,e,d,a,o,i)},t.prototype.getHandleTransform=function(e,n,a){var o=Eg(n,{labelInside:!1});o.labelMargin=a.get(["handle","margin"]);var i=xg(n.axis,e,o);return{x:i[0],y:i[1],rotation:o.rotation+(o.labelDirection<0?Math.PI:0)}},t.prototype.updateHandleTransform=function(e,n,a,o){var i=a.axis,u=i.coordinateSystem,l=sx(i),f=QR(u,l),s=[e.x,e.y];s[l]+=n[l],s[l]=Math.min(f[1],s[l]),s[l]=Math.max(f[0],s[l]);var c=QR(u,1-l),p=(c[1]+c[0])/2,v=[p,p];return v[l]=s[l],{x:s[0],y:s[1],rotation:e.rotation,cursorPoint:v,tooltipOption:{verticalAlign:"middle"}}},t})(Td),VDt={line:function(r,t,e){var n=wd([t,e[0]],[t,e[1]],sx(r));return{type:"Line",subPixelOptimize:!0,shape:n}},shadow:function(r,t,e){var n=r.getBandWidth(),a=e[1]-e[0];return{type:"Rect",shape:nx([t-n/2,e[0]],[n,a],sx(r))}}};function sx(r){return r.isHorizontal()?0:1}function QR(r,t){var e=r.getRect();return[e[kJ[t]],e[kJ[t]]+e[GDt[t]]]}var zJ=BDt;var $Dt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.type="single",t})(Ee);function ZR(r){Jt(Vi),fo.registerAxisPointerClass("SingleAxisPointer",zJ),r.registerComponentView($Dt),r.registerComponentView(RJ),r.registerComponentModel(fx),Bi(r,"single",fx,fx.defaultOption),r.registerCoordinateSystem("single",HJ)}var qDt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.init=function(e,n,a){var o=Ko(e);r.prototype.init.apply(this,arguments),WJ(e,o)},t.prototype.mergeOption=function(e){r.prototype.mergeOption.apply(this,arguments),WJ(this.option,e)},t.prototype.getCellSize=function(){return this.option.cellSize},t.type="calendar",t.defaultOption={z:2,left:80,top:60,cellSize:20,orient:"horizontal",splitLine:{show:!0,lineStyle:{color:"#000",width:1,type:"solid"}},itemStyle:{color:"#fff",borderWidth:1,borderColor:"#ccc"},dayLabel:{show:!0,firstDay:0,position:"start",margin:"50%",color:"#000"},monthLabel:{show:!0,position:"start",margin:5,align:"center",formatter:null,color:"#000"},yearLabel:{show:!0,position:null,margin:30,formatter:null,color:"#ccc",fontFamily:"sans-serif",fontWeight:"bolder",fontSize:20}},t})(Gt);function WJ(r,t){var e=r.cellSize,n;O(e)?n=e:n=r.cellSize=[e,e],n.length===1&&(n[1]=n[0]);var a=U([0,1],function(o){return oV(t,o)&&(n[o]="auto"),n[o]!=null&&n[o]!=="auto"});no(r,t,{type:"box",ignoreSize:a})}var GJ=qDt;var JDt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.render=function(e,n,a){var o=this.group;o.removeAll();var i=e.coordinateSystem,u=i.getRangeInfo(),l=i.getOrient(),f=n.getLocaleModel();this._renderDayRect(e,u,o),this._renderLines(e,u,l,o),this._renderYearText(e,u,l,o),this._renderMonthText(e,f,l,o),this._renderWeekText(e,f,u,l,o)},t.prototype._renderDayRect=function(e,n,a){for(var o=e.coordinateSystem,i=e.getModel("itemStyle").getItemStyle(),u=o.getCellWidth(),l=o.getCellHeight(),f=n.start.time;f<=n.end.time;f=o.getNextNDay(f,1).time){var s=o.dataToRect([f],!1).tl,c=new Rt({shape:{x:s[0],y:s[1],width:u,height:l},cursor:"default",style:i});a.add(c)}},t.prototype._renderLines=function(e,n,a,o){var i=this,u=e.coordinateSystem,l=e.getModel(["splitLine","lineStyle"]).getLineStyle(),f=e.get(["splitLine","show"]),s=l.lineWidth;this._tlpoints=[],this._blpoints=[],this._firstDayOfMonth=[],this._firstDayPoints=[];for(var c=n.start,p=0;c.time<=n.end.time;p++){d(c.formatedDate),p===0&&(c=u.getDateInfo(n.start.y+"-"+n.start.m));var v=c.date;v.setMonth(v.getMonth()+1),c=u.getDateInfo(v)}d(u.getNextNDay(n.end.time,1).formatedDate);function d(m){i._firstDayOfMonth.push(u.getDateInfo(m)),i._firstDayPoints.push(u.dataToRect([m],!1).tl);var h=i._getLinePointsOfOneWeek(e,m,a);i._tlpoints.push(h[0]),i._blpoints.push(h[h.length-1]),f&&i._drawSplitline(h,l,o)}f&&this._drawSplitline(i._getEdgesPoints(i._tlpoints,s,a),l,o),f&&this._drawSplitline(i._getEdgesPoints(i._blpoints,s,a),l,o)},t.prototype._getEdgesPoints=function(e,n,a){var o=[e[0].slice(),e[e.length-1].slice()],i=a==="horizontal"?0:1;return o[0][i]=o[0][i]-n/2,o[1][i]=o[1][i]+n/2,o},t.prototype._drawSplitline=function(e,n,a){var o=new yr({z2:20,shape:{points:e},style:n});a.add(o)},t.prototype._getLinePointsOfOneWeek=function(e,n,a){for(var o=e.coordinateSystem,i=o.getDateInfo(n),u=[],l=0;l<7;l++){var f=o.getNextNDay(i.time,l),s=o.dataToRect([f.time],!1);u[2*f.day]=s.tl,u[2*f.day+1]=s[a==="horizontal"?"bl":"tr"]}return u},t.prototype._formatterLabel=function(e,n){return V(e)&&e?rV(e,n):X(e)?e(n):n.nameMap},t.prototype._yearTextPositionControl=function(e,n,a,o,i){var u=n[0],l=n[1],f=["center","bottom"];o==="bottom"?(l+=i,f=["center","top"]):o==="left"?u-=i:o==="right"?(u+=i,f=["center","top"]):l-=i;var s=0;return(o==="left"||o==="right")&&(s=Math.PI/2),{rotation:s,x:u,y:l,style:{align:f[0],verticalAlign:f[1]}}},t.prototype._renderYearText=function(e,n,a,o){var i=e.getModel("yearLabel");if(i.get("show")){var u=i.get("margin"),l=i.get("position");l||(l=a!=="horizontal"?"top":"left");var f=[this._tlpoints[this._tlpoints.length-1],this._blpoints[0]],s=(f[0][0]+f[1][0])/2,c=(f[0][1]+f[1][1])/2,p=a==="horizontal"?0:1,v={top:[s,f[p][1]],bottom:[s,f[1-p][1]],left:[f[1-p][0],c],right:[f[p][0],c]},d=n.start.y;+n.end.y>+n.start.y&&(d=d+"-"+n.end.y);var m=i.get("formatter"),h={start:n.start.y,end:n.end.y,nameMap:d},_=this._formatterLabel(m,h),g=new Wt({z2:30,style:Re(i,{text:_})});g.attr(this._yearTextPositionControl(g,v[l],a,l,u)),o.add(g)}},t.prototype._monthTextPositionControl=function(e,n,a,o,i){var u="left",l="top",f=e[0],s=e[1];return a==="horizontal"?(s=s+i,n&&(u="center"),o==="start"&&(l="bottom")):(f=f+i,n&&(l="middle"),o==="start"&&(u="right")),{x:f,y:s,align:u,verticalAlign:l}},t.prototype._renderMonthText=function(e,n,a,o){var i=e.getModel("monthLabel");if(i.get("show")){var u=i.get("nameMap"),l=i.get("margin"),f=i.get("position"),s=i.get("align"),c=[this._tlpoints,this._blpoints];(!u||V(u))&&(u&&(n=p_(u)||n),u=n.get(["time","monthAbbr"])||[]);var p=f==="start"?0:1,v=a==="horizontal"?0:1;l=f==="start"?-l:l;for(var d=s==="center",m=0;m<c[p].length-1;m++){var h=c[p][m].slice(),_=this._firstDayOfMonth[m];if(d){var g=this._firstDayPoints[m];h[v]=(g[v]+c[0][m+1][v])/2}var y=i.get("formatter"),D=u[+_.m-1],b={yyyy:_.y,yy:(_.y+"").slice(2),MM:_.m,M:+_.m,nameMap:D},C=this._formatterLabel(y,b),x=new Wt({z2:30,style:N(Re(i,{text:C}),this._monthTextPositionControl(h,d,a,f,l))});o.add(x)}}},t.prototype._weekTextPositionControl=function(e,n,a,o,i){var u="center",l="middle",f=e[0],s=e[1],c=a==="start";return n==="horizontal"?(f=f+o+(c?1:-1)*i[0]/2,u=c?"right":"left"):(s=s+o+(c?1:-1)*i[1]/2,l=c?"bottom":"top"),{x:f,y:s,align:u,verticalAlign:l}},t.prototype._renderWeekText=function(e,n,a,o,i){var u=e.getModel("dayLabel");if(u.get("show")){var l=e.coordinateSystem,f=u.get("position"),s=u.get("nameMap"),c=u.get("margin"),p=l.getFirstDayOfWeek();if(!s||V(s)){s&&(n=p_(s)||n);var v=n.get(["time","dayOfWeekShort"]);s=v||U(n.get(["time","dayOfWeekAbbr"]),function(b){return b[0]})}var d=l.getNextNDay(a.end.time,7-a.lweek).time,m=[l.getCellWidth(),l.getCellHeight()];c=Y(c,Math.min(m[1],m[0])),f==="start"&&(d=l.getNextNDay(a.start.time,-(7+a.fweek)).time,c=-c);for(var h=0;h<7;h++){var _=l.getNextNDay(d,h),g=l.dataToRect([_.time],!1).center,y=h;y=Math.abs((h+p)%7);var D=new Wt({z2:30,style:N(Re(u,{text:s[y]}),this._weekTextPositionControl(g,o,f,c,m))});i.add(D)}}},t.type="calendar",t})(Ee),BJ=JDt;var XR=864e5,jDt=(function(){function r(t,e,n){this.type="calendar",this.dimensions=r.dimensions,this.getDimensionsInfo=r.getDimensionsInfo,this._model=t}return r.getDimensionsInfo=function(){return[{name:"time",type:"time"},"value"]},r.prototype.getRangeInfo=function(){return this._rangeInfo},r.prototype.getModel=function(){return this._model},r.prototype.getRect=function(){return this._rect},r.prototype.getCellWidth=function(){return this._sw},r.prototype.getCellHeight=function(){return this._sh},r.prototype.getOrient=function(){return this._orient},r.prototype.getFirstDayOfWeek=function(){return this._firstDayOfWeek},r.prototype.getDateInfo=function(t){t=Ta(t);var e=t.getFullYear(),n=t.getMonth()+1,a=n<10?"0"+n:""+n,o=t.getDate(),i=o<10?"0"+o:""+o,u=t.getDay();return u=Math.abs((u+7-this.getFirstDayOfWeek())%7),{y:e+"",m:a,d:i,day:u,time:t.getTime(),formatedDate:e+"-"+a+"-"+i,date:t}},r.prototype.getNextNDay=function(t,e){return e=e||0,e===0?this.getDateInfo(t):(t=new Date(this.getDateInfo(t).time),t.setDate(t.getDate()+e),this.getDateInfo(t))},r.prototype.update=function(t,e){this._firstDayOfWeek=+this._model.getModel("dayLabel").get("firstDay"),this._orient=this._model.get("orient"),this._lineWidth=this._model.getModel("itemStyle").getItemStyle().lineWidth||0,this._rangeInfo=this._getRangeInfo(this._initRangeOption());var n=this._rangeInfo.weeks||1,a=["width","height"],o=this._model.getCellSize().slice(),i=this._model.getBoxLayoutParams(),u=this._orient==="horizontal"?[n,7]:[7,n];T([0,1],function(c){s(o,c)&&(i[a[c]]=o[c]*u[c])});var l={width:e.getWidth(),height:e.getHeight()},f=this._rect=ze(i,l);T([0,1],function(c){s(o,c)||(o[c]=f[a[c]]/u[c])});function s(c,p){return c[p]!=null&&c[p]!=="auto"}this._sw=o[0],this._sh=o[1]},r.prototype.dataToPoint=function(t,e){O(t)&&(t=t[0]),e==null&&(e=!0);var n=this.getDateInfo(t),a=this._rangeInfo,o=n.formatedDate;if(e&&!(n.time>=a.start.time&&n.time<a.end.time+XR))return[NaN,NaN];var i=n.day,u=this._getRangeInfo([a.start.time,o]).nthWeek;return this._orient==="vertical"?[this._rect.x+i*this._sw+this._sw/2,this._rect.y+u*this._sh+this._sh/2]:[this._rect.x+u*this._sw+this._sw/2,this._rect.y+i*this._sh+this._sh/2]},r.prototype.pointToData=function(t){var e=this.pointToDate(t);return e&&e.time},r.prototype.dataToRect=function(t,e){var n=this.dataToPoint(t,e);return{contentShape:{x:n[0]-(this._sw-this._lineWidth)/2,y:n[1]-(this._sh-this._lineWidth)/2,width:this._sw-this._lineWidth,height:this._sh-this._lineWidth},center:n,tl:[n[0]-this._sw/2,n[1]-this._sh/2],tr:[n[0]+this._sw/2,n[1]-this._sh/2],br:[n[0]+this._sw/2,n[1]+this._sh/2],bl:[n[0]-this._sw/2,n[1]+this._sh/2]}},r.prototype.pointToDate=function(t){var e=Math.floor((t[0]-this._rect.x)/this._sw)+1,n=Math.floor((t[1]-this._rect.y)/this._sh)+1,a=this._rangeInfo.range;return this._orient==="vertical"?this._getDateByWeeksAndDay(n,e-1,a):this._getDateByWeeksAndDay(e,n-1,a)},r.prototype.convertToPixel=function(t,e,n){var a=VJ(e);return a===this?a.dataToPoint(n):null},r.prototype.convertFromPixel=function(t,e,n){var a=VJ(e);return a===this?a.pointToData(n):null},r.prototype.containPoint=function(t){return console.warn("Not implemented."),!1},r.prototype._initRangeOption=function(){var t=this._model.get("range"),e;if(O(t)&&t.length===1&&(t=t[0]),O(t))e=t;else{var n=t.toString();if(/^\d{4}$/.test(n)&&(e=[n+"-01-01",n+"-12-31"]),/^\d{4}[\/|-]\d{1,2}$/.test(n)){var a=this.getDateInfo(n),o=a.date;o.setMonth(o.getMonth()+1);var i=this.getNextNDay(o,-1);e=[a.formatedDate,i.formatedDate]}/^\d{4}[\/|-]\d{1,2}[\/|-]\d{1,2}$/.test(n)&&(e=[n,n])}if(!e)return t;var u=this._getRangeInfo(e);return u.start.time>u.end.time&&e.reverse(),e},r.prototype._getRangeInfo=function(t){var e=[this.getDateInfo(t[0]),this.getDateInfo(t[1])],n;e[0].time>e[1].time&&(n=!0,e.reverse());var a=Math.floor(e[1].time/XR)-Math.floor(e[0].time/XR)+1,o=new Date(e[0].time),i=o.getDate(),u=e[1].date.getDate();o.setDate(i+a-1);var l=o.getDate();if(l!==u)for(var f=o.getTime()-e[1].time>0?1:-1;(l=o.getDate())!==u&&(o.getTime()-e[1].time)*f>0;)a-=f,o.setDate(l-f);var s=Math.floor((a+e[0].day+6)/7),c=n?-s+1:s-1;return n&&e.reverse(),{range:[e[0].formatedDate,e[1].formatedDate],start:e[0],end:e[1],allDay:a,weeks:s,nthWeek:c,fweek:e[0].day,lweek:e[1].day}},r.prototype._getDateByWeeksAndDay=function(t,e,n){var a=this._getRangeInfo(n);if(t>a.weeks||t===0&&e<a.fweek||t===a.weeks&&e>a.lweek)return null;var o=(t-1)*7-a.fweek+e,i=new Date(a.start.time);return i.setDate(+a.start.d+o),this.getDateInfo(i)},r.create=function(t,e){var n=[];return t.eachComponent("calendar",function(a){var o=new r(a,t,e);n.push(o),a.coordinateSystem=o}),t.eachSeries(function(a){a.get("coordinateSystem")==="calendar"&&(a.coordinateSystem=n[a.get("calendarIndex")||0])}),n},r.dimensions=["time","value"],r})();function VJ(r){var t=r.calendarModel,e=r.seriesModel,n=t?t.coordinateSystem:e?e.coordinateSystem:null;return n}var $J=jDt;function KR(r){r.registerComponentModel(GJ),r.registerComponentView(BJ),r.registerCoordinateSystem("calendar",$J)}function YDt(r,t){var e=r.existing;if(t.id=r.keyInfo.id,!t.type&&e&&(t.type=e.type),t.parentId==null){var n=t.parentOption;n?t.parentId=n.id:e&&(t.parentId=e.parentId)}t.parentOption=null}function qJ(r,t){var e;return T(t,function(n){r[n]!=null&&r[n]!=="auto"&&(e=!0)}),e}function QDt(r,t,e){var n=N({},e),a=r[t],o=e.$action||"merge";if(o==="merge")if(a){if(0)var i;Et(a,n,!0),no(a,n,{ignoreSize:!0}),tA(e,a),cx(e,a),cx(e,a,"shape"),cx(e,a,"style"),cx(e,a,"extra"),e.clipPath=a.clipPath}else r[t]=n;else o==="replace"?r[t]=n:o==="remove"&&a&&(r[t]=null)}var JJ=["transition","enterFrom","leaveTo"],ZDt=JJ.concat(["enterAnimation","updateAnimation","leaveAnimation"]);function cx(r,t,e){if(e&&(!r[e]&&t[e]&&(r[e]={}),r=r[e],t=t[e]),!(!r||!t))for(var n=e?JJ:ZDt,a=0;a<n.length;a++){var o=n[a];r[o]==null&&t[o]!=null&&(r[o]=t[o])}}function XDt(r,t){if(r&&(r.hv=t.hv=[qJ(t,["left","right"]),qJ(t,["top","bottom"])],r.type==="group")){var e=r,n=t;e.width==null&&(e.width=n.width=0),e.height==null&&(e.height=n.height=0)}}var jJ=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.preventAutoZ=!0,e}return t.prototype.mergeOption=function(e,n){var a=this.option.elements;this.option.elements=null,r.prototype.mergeOption.call(this,e,n),this.option.elements=a},t.prototype.optionUpdated=function(e,n){var a=this.option,o=(n?a:e).elements,i=a.elements=n?[]:a.elements,u=[];this._flatten(o,u,null);var l=K0(i,u,"normalMerge"),f=this._elOptionsToUpdate=[];T(l,function(s,c){var p=s.newOption;p&&(f.push(p),YDt(s,p),QDt(i,c,p),XDt(i[c],p))},this),a.elements=de(i,function(s){return s&&delete s.$action,s!=null})},t.prototype._flatten=function(e,n,a){T(e,function(o){if(o){a&&(o.parentOption=a),n.push(o);var i=o.children;i&&i.length&&this._flatten(i,n,o),delete o.children}},this)},t.prototype.useElOptionsToUpdate=function(){var e=this._elOptionsToUpdate;return this._elOptionsToUpdate=null,e},t.type="graphic",t.defaultOption={elements:[]},t})(Gt);var YJ={path:null,compoundPath:null,group:at,image:er,text:Wt},si=St(),XJ=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.init=function(){this._elMap=Z()},t.prototype.render=function(e,n,a){e!==this._lastGraphicModel&&this._clear(),this._lastGraphicModel=e,this._updateElements(e),this._relocate(e,a)},t.prototype._updateElements=function(e){var n=e.useElOptionsToUpdate();if(n){var a=this._elMap,o=this.group,i=e.get("z"),u=e.get("zlevel");T(n,function(l){var f=cr(l.id,null),s=f!=null?a.get(f):null,c=cr(l.parentId,null),p=c!=null?a.get(c):o,v=l.type,d=l.style;v==="text"&&d&&l.hv&&l.hv[1]&&(d.textVerticalAlign=d.textBaseline=d.verticalAlign=d.align=null);var m=l.textContent,h=l.textConfig;if(d&&XT(d,v,!!h,!!m)){var _=KT(d,v,!0);!h&&_.textConfig&&(h=l.textConfig=_.textConfig),!m&&_.textContent&&(m=_.textContent)}var g=KDt(l),y=l.$action||"merge",D=y==="merge",b=y==="replace";if(D){var C=!s,x=s;C?x=QJ(f,p,l.type,a):(x&&(si(x).isNew=!1),tx(x)),x&&(Dd(x,g,e,{isInit:C}),ZJ(x,l,i,u))}else if(b){px(s,l,a,e);var w=QJ(f,p,l.type,a);w&&(Dd(w,g,e,{isInit:!0}),ZJ(w,l,i,u))}else y==="remove"&&(xR(s,l),px(s,l,a,e));var S=a.get(f);if(S&&m)if(D){var E=S.getTextContent();E?E.attr(m):S.setTextContent(new Wt(m))}else b&&S.setTextContent(new Wt(m));if(S){var M=l.clipPath;if(M){var I=M.type,F=void 0,C=!1;if(D){var L=S.getClipPath();C=!L||si(L).type!==I,F=C?tP(I):L}else b&&(C=!0,F=tP(I));S.setClipPath(F),Dd(F,M,e,{isInit:C}),Cd(F,M.keyframeAnimation,e)}var R=si(S);S.setTextConfig(h),R.option=l,t0t(S,e,l),Mi({el:S,componentModel:e,itemName:S.name,itemTooltipOption:l.tooltip}),Cd(S,l.keyframeAnimation,e)}})}},t.prototype._relocate=function(e,n){for(var a=e.option.elements,o=this.group,i=this._elMap,u=n.getWidth(),l=n.getHeight(),f=["x","y"],s=0;s<a.length;s++){var c=a[s],p=cr(c.id,null),v=p!=null?i.get(p):null;if(!(!v||!v.isGroup)){var d=v.parent,m=d===o,h=si(v),_=si(d);h.width=Y(h.option.width,m?u:_.width)||0,h.height=Y(h.option.height,m?l:_.height)||0}}for(var s=a.length-1;s>=0;s--){var c=a[s],p=cr(c.id,null),v=p!=null?i.get(p):null;if(v){var d=v.parent,_=si(d),g=d===o?{width:u,height:l}:{width:_.width,height:_.height},y={},D=If(v,c,g,null,{hv:c.hv,boundingMode:c.bounding},y);if(!si(v).isNew&&D){for(var b=c.transition,C={},x=0;x<f.length;x++){var w=f[x],S=y[w];b&&(Kf(b)||wt(b,w)>=0)?C[w]=S:v[w]=S}$t(v,C,e,0)}else v.attr(y)}}},t.prototype._clear=function(){var e=this,n=this._elMap;n.each(function(a){px(a,si(a).option,n,e._lastGraphicModel)}),this._elMap=Z()},t.prototype.dispose=function(){this._clear()},t.type="graphic",t})(Ee);function tP(r){var t=st(YJ,r)?YJ[r]:f_(r),e=new t({});return si(e).type=r,e}function QJ(r,t,e,n){var a=tP(e);return t.add(a),n.set(r,a),si(a).id=r,si(a).isNew=!0,a}function px(r,t,e,n){var a=r&&r.parent;a&&(r.type==="group"&&r.traverse(function(o){px(o,t,e,n)}),bd(r,t,n),e.removeKey(si(r).id))}function ZJ(r,t,e,n){r.isGroup||T([["cursor",Br.prototype.cursor],["zlevel",n||0],["z",e||0],["z2",0]],function(a){var o=a[0];st(t,o)?r[o]=Tt(t[o],a[1]):r[o]==null&&(r[o]=a[1])}),T(Ft(t),function(a){if(a.indexOf("on")===0){var o=t[a];r[a]=X(o)?o:null}}),st(t,"draggable")&&(r.draggable=t.draggable),t.name!=null&&(r.name=t.name),t.id!=null&&(r.id=t.id)}function KDt(r){return r=N({},r),T(["id","parentId","$action","hv","bounding","textContent","clipPath"].concat(XM),function(t){delete r[t]}),r}function t0t(r,t,e){var n=vt(r).eventData;!r.silent&&!r.ignore&&!n&&(n=vt(r).eventData={componentType:"graphic",componentIndex:t.componentIndex,name:r.name}),n&&(n.info=e.info)}function eP(r){r.registerComponentModel(jJ),r.registerComponentView(XJ),r.registerPreprocessor(function(t){var e=t.graphic;O(e)?!e[0]||!e[0].elements?t.graphic=[{elements:e}]:t.graphic=[t.graphic[0]]:e&&!e.elements&&(t.graphic=[{elements:[e]}])})}var rP=["x","y","radius","angle","single"],e0t=["cartesian2d","polar","singleAxis"];function KJ(r){var t=r.get("coordinateSystem");return wt(e0t,t)>=0}function ci(r){return r+"Axis"}function t9(r,t){var e=Z(),n=[],a=Z();r.eachComponent({mainType:"dataZoom",query:t},function(s){a.get(s.uid)||u(s)});var o;do o=!1,r.eachComponent("dataZoom",i);while(o);function i(s){!a.get(s.uid)&&l(s)&&(u(s),o=!0)}function u(s){a.set(s.uid,!0),n.push(s),f(s)}function l(s){var c=!1;return s.eachTargetAxis(function(p,v){var d=e.get(p);d&&d[v]&&(c=!0)}),c}function f(s){s.eachTargetAxis(function(c,p){(e.get(c)||e.set(c,[]))[p]=!0})}return n}function vx(r){var t=r.ecModel,e={infoList:[],infoMap:Z()};return r.eachTargetAxis(function(n,a){var o=t.getComponent(ci(n),a);if(o){var i=o.getCoordSysModel();if(i){var u=i.uid,l=e.infoMap.get(u);l||(l={model:i,axisModels:[]},e.infoList.push(l),e.infoMap.set(u,l)),l.axisModels.push(o)}}}),e}var nP=(function(){function r(){this.indexList=[],this.indexMap=[]}return r.prototype.add=function(t){this.indexMap[t]||(this.indexList.push(t),this.indexMap[t]=!0)},r})(),r0t=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e._autoThrottle=!0,e._noTarget=!0,e._rangePropMode=["percent","percent"],e}return t.prototype.init=function(e,n,a){var o=e9(e);this.settledOption=o,this.mergeDefaultAndTheme(e,a),this._doInit(o)},t.prototype.mergeOption=function(e){var n=e9(e);Et(this.option,e,!0),Et(this.settledOption,n,!0),this._doInit(n)},t.prototype._doInit=function(e){var n=this.option;this._setDefaultThrottle(e),this._updateRangeUse(e);var a=this.settledOption;T([["start","startValue"],["end","endValue"]],function(o,i){this._rangePropMode[i]==="value"&&(n[o[0]]=a[o[0]]=null)},this),this._resetTarget()},t.prototype._resetTarget=function(){var e=this.get("orient",!0),n=this._targetAxisInfoMap=Z(),a=this._fillSpecifiedTargetAxis(n);a?this._orient=e||this._makeAutoOrientByTargetAxis():(this._orient=e||"horizontal",this._fillAutoTargetAxisByOrient(n,this._orient)),this._noTarget=!0,n.each(function(o){o.indexList.length&&(this._noTarget=!1)},this)},t.prototype._fillSpecifiedTargetAxis=function(e){var n=!1;return T(rP,function(a){var o=this.getReferringComponents(ci(a),jW);if(o.specified){n=!0;var i=new nP;T(o.models,function(u){i.add(u.componentIndex)}),e.set(a,i)}},this),n},t.prototype._fillAutoTargetAxisByOrient=function(e,n){var a=this.ecModel,o=!0;if(o){var i=n==="vertical"?"y":"x",u=a.findComponents({mainType:i+"Axis"});l(u,i)}if(o){var u=a.findComponents({mainType:"singleAxis",filter:function(s){return s.get("orient",!0)===n}});l(u,"single")}function l(f,s){var c=f[0];if(c){var p=new nP;if(p.add(c.componentIndex),e.set(s,p),o=!1,s==="x"||s==="y"){var v=c.getReferringComponents("grid",je).models[0];v&&T(f,function(d){c.componentIndex!==d.componentIndex&&v===d.getReferringComponents("grid",je).models[0]&&p.add(d.componentIndex)})}}}o&&T(rP,function(f){if(o){var s=a.findComponents({mainType:ci(f),filter:function(p){return p.get("type",!0)==="category"}});if(s[0]){var c=new nP;c.add(s[0].componentIndex),e.set(f,c),o=!1}}},this)},t.prototype._makeAutoOrientByTargetAxis=function(){var e;return this.eachTargetAxis(function(n){!e&&(e=n)},this),e==="y"?"vertical":"horizontal"},t.prototype._setDefaultThrottle=function(e){if(e.hasOwnProperty("throttle")&&(this._autoThrottle=!1),this._autoThrottle){var n=this.ecModel.option;this.option.throttle=n.animation&&n.animationDurationUpdate>0?100:20}},t.prototype._updateRangeUse=function(e){var n=this._rangePropMode,a=this.get("rangeMode");T([["start","startValue"],["end","endValue"]],function(o,i){var u=e[o[0]]!=null,l=e[o[1]]!=null;u&&!l?n[i]="percent":!u&&l?n[i]="value":a?n[i]=a[i]:u&&(n[i]="percent")})},t.prototype.noTarget=function(){return this._noTarget},t.prototype.getFirstTargetAxisModel=function(){var e;return this.eachTargetAxis(function(n,a){e==null&&(e=this.ecModel.getComponent(ci(n),a))},this),e},t.prototype.eachTargetAxis=function(e,n){this._targetAxisInfoMap.each(function(a,o){T(a.indexList,function(i){e.call(n,o,i)})})},t.prototype.getAxisProxy=function(e,n){var a=this.getAxisModel(e,n);if(a)return a.__dzAxisProxy},t.prototype.getAxisModel=function(e,n){var a=this._targetAxisInfoMap.get(e);if(a&&a.indexMap[n])return this.ecModel.getComponent(ci(e),n)},t.prototype.setRawRange=function(e){var n=this.option,a=this.settledOption;T([["start","startValue"],["end","endValue"]],function(o){(e[o[0]]!=null||e[o[1]]!=null)&&(n[o[0]]=a[o[0]]=e[o[0]],n[o[1]]=a[o[1]]=e[o[1]])},this),this._updateRangeUse(e)},t.prototype.setCalculatedRange=function(e){var n=this.option;T(["start","startValue","end","endValue"],function(a){n[a]=e[a]})},t.prototype.getPercentRange=function(){var e=this.findRepresentativeAxisProxy();if(e)return e.getDataPercentWindow()},t.prototype.getValueRange=function(e,n){if(e==null&&n==null){var a=this.findRepresentativeAxisProxy();if(a)return a.getDataValueWindow()}else return this.getAxisProxy(e,n).getDataValueWindow()},t.prototype.findRepresentativeAxisProxy=function(e){if(e)return e.__dzAxisProxy;for(var n,a=this._targetAxisInfoMap.keys(),o=0;o<a.length;o++)for(var i=a[o],u=this._targetAxisInfoMap.get(i),l=0;l<u.indexList.length;l++){var f=this.getAxisProxy(i,u.indexList[l]);if(f.hostedBy(this))return f;n||(n=f)}return n},t.prototype.getRangePropMode=function(){return this._rangePropMode.slice()},t.prototype.getOrient=function(){return this._orient},t.type="dataZoom",t.dependencies=["xAxis","yAxis","radiusAxis","angleAxis","singleAxis","series","toolbox"],t.defaultOption={z:4,filterMode:"filter",start:0,end:100},t})(Gt);function e9(r){var t={};return T(["start","end","startValue","endValue","throttle"],function(e){r.hasOwnProperty(e)&&(t[e]=r[e])}),t}var rs=r0t;var n0t=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.type="dataZoom.select",t})(rs),r9=n0t;var a0t=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.render=function(e,n,a,o){this.dataZoomModel=e,this.ecModel=n,this.api=a},t.type="dataZoom",t})(Ee),Sd=a0t;var o0t=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.type="dataZoom.select",t})(Sd),n9=o0t;var Ed=T,a9=fn,i0t=(function(){function r(t,e,n,a){this._dimName=t,this._axisIndex=e,this.ecModel=a,this._dataZoomModel=n}return r.prototype.hostedBy=function(t){return this._dataZoomModel===t},r.prototype.getDataValueWindow=function(){return this._valueWindow.slice()},r.prototype.getDataPercentWindow=function(){return this._percentWindow.slice()},r.prototype.getTargetSeriesModels=function(){var t=[];return this.ecModel.eachSeries(function(e){if(KJ(e)){var n=ci(this._dimName),a=e.getReferringComponents(n,je).models[0];a&&this._axisIndex===a.componentIndex&&t.push(e)}},this),t},r.prototype.getAxisModel=function(){return this.ecModel.getComponent(this._dimName+"Axis",this._axisIndex)},r.prototype.getMinMaxSpan=function(){return lt(this._minMaxSpan)},r.prototype.calculateDataWindow=function(t){var e=this._dataExtent,n=this.getAxisModel(),a=n.axis.scale,o=this._dataZoomModel.getRangePropMode(),i=[0,100],u=[],l=[],f;Ed(["start","end"],function(p,v){var d=t[p],m=t[p+"Value"];o[v]==="percent"?(d==null&&(d=i[v]),m=a.parse(Ie(d,i,e))):(f=!0,m=m==null?e[v]:a.parse(m),d=Ie(m,e,i)),l[v]=m==null||isNaN(m)?e[v]:m,u[v]=d==null||isNaN(d)?i[v]:d}),a9(l),a9(u);var s=this._minMaxSpan;f?c(l,u,e,i,!1):c(u,l,i,e,!0);function c(p,v,d,m,h){var _=h?"Span":"ValueSpan";so(0,p,d,"all",s["min"+_],s["max"+_]);for(var g=0;g<2;g++)v[g]=Ie(p[g],d,m,!0),h&&(v[g]=a.parse(v[g]))}return{valueWindow:l,percentWindow:u}},r.prototype.reset=function(t){if(t===this._dataZoomModel){var e=this.getTargetSeriesModels();this._dataExtent=u0t(this,this._dimName,e),this._updateMinMaxSpan();var n=this.calculateDataWindow(t.settledOption);this._valueWindow=n.valueWindow,this._percentWindow=n.percentWindow,this._setAxisModel()}},r.prototype.filterData=function(t,e){if(t!==this._dataZoomModel)return;var n=this._dimName,a=this.getTargetSeriesModels(),o=t.get("filterMode"),i=this._valueWindow;if(o==="none")return;Ed(a,function(l){var f=l.getData(),s=f.mapDimensionsAll(n);if(s.length){if(o==="weakFilter"){var c=f.getStore(),p=U(s,function(v){return f.getDimensionIndex(v)},f);f.filterSelf(function(v){for(var d,m,h,_=0;_<s.length;_++){var g=c.get(p[_],v),y=!isNaN(g),D=g<i[0],b=g>i[1];if(y&&!D&&!b)return!0;y&&(h=!0),D&&(d=!0),b&&(m=!0)}return h&&d&&m})}else Ed(s,function(v){if(o==="empty")l.setData(f=f.map(v,function(m){return u(m)?m:NaN}));else{var d={};d[v]=i,f.selectRange(d)}});Ed(s,function(v){f.setApproximateExtent(i,v)})}});function u(l){return l>=i[0]&&l<=i[1]}},r.prototype._updateMinMaxSpan=function(){var t=this._minMaxSpan={},e=this._dataZoomModel,n=this._dataExtent;Ed(["min","max"],function(a){var o=e.get(a+"Span"),i=e.get(a+"ValueSpan");i!=null&&(i=this.getAxisModel().axis.scale.parse(i)),i!=null?o=Ie(n[0]+i,n,[0,100],!0):o!=null&&(i=Ie(o,[0,100],n,!0)-n[0]),t[a+"Span"]=o,t[a+"ValueSpan"]=i},this)},r.prototype._setAxisModel=function(){var t=this.getAxisModel(),e=this._percentWindow,n=this._valueWindow;if(e){var a=j0(n,[0,500]);a=Math.min(a,20);var o=t.axis.scale.rawExtentInfo;e[0]!==0&&o.setDeterminedMinMax("min",+n[0].toFixed(a)),e[1]!==100&&o.setDeterminedMinMax("max",+n[1].toFixed(a)),o.freeze()}},r})();function u0t(r,t,e){var n=[1/0,-1/0];Ed(e,function(i){j$(n,i.getData(),t)});var a=r.getAxisModel(),o=kC(a.axis.scale,a,n).calculate();return[o.min,o.max]}var o9=i0t;var l0t={getTargetSeries:function(r){function t(a){r.eachComponent("dataZoom",function(o){o.eachTargetAxis(function(i,u){var l=r.getComponent(ci(i),u);a(i,u,l,o)})})}t(function(a,o,i,u){i.__dzAxisProxy=null});var e=[];t(function(a,o,i,u){i.__dzAxisProxy||(i.__dzAxisProxy=new o9(a,o,u,r),e.push(i.__dzAxisProxy))});var n=Z();return T(e,function(a){T(a.getTargetSeriesModels(),function(o){n.set(o.uid,o)})}),n},overallReset:function(r,t){r.eachComponent("dataZoom",function(e){e.eachTargetAxis(function(n,a){e.getAxisProxy(n,a).reset(e)}),e.eachTargetAxis(function(n,a){e.getAxisProxy(n,a).filterData(e,t)})}),r.eachComponent("dataZoom",function(e){var n=e.findRepresentativeAxisProxy();if(n){var a=n.getDataPercentWindow(),o=n.getDataValueWindow();e.setCalculatedRange({start:a[0],end:a[1],startValue:o[0],endValue:o[1]})}})}},i9=l0t;function aP(r){r.registerAction("dataZoom",function(t,e){var n=t9(e,t);T(n,function(a){a.setRawRange({start:t.start,end:t.end,startValue:t.startValue,endValue:t.endValue})})})}var u9=!1;function Xc(r){u9||(u9=!0,r.registerProcessor(r.PRIORITY.PROCESSOR.FILTER,i9),aP(r),r.registerSubTypeDefaulter("dataZoom",function(){return"slider"}))}function l9(r){r.registerComponentModel(r9),r.registerComponentView(n9),Xc(r)}var wn=(function(){function r(){}return r})();var f9={};function ns(r,t){f9[r]=t}function dx(r){return f9[r]}var s0t=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.optionUpdated=function(){r.prototype.optionUpdated.apply(this,arguments);var e=this.ecModel;T(this.option.feature,function(n,a){var o=dx(a);o&&(o.getDefaultOption&&(o.defaultOption=o.getDefaultOption(e)),Et(n,o.defaultOption))})},t.type="toolbox",t.layoutMode={type:"box",ignoreSize:!0},t.defaultOption={show:!0,z:6,orient:"horizontal",left:"right",top:"top",backgroundColor:"transparent",borderColor:"#ccc",borderRadius:0,borderWidth:0,padding:5,itemSize:15,itemGap:8,showTitle:!0,iconStyle:{borderColor:"#666",color:"none"},emphasis:{iconStyle:{borderColor:"#3E98C5"}},tooltip:{show:!1,position:"bottom"}},t})(Gt),s9=s0t;function c9(r,t,e){var n=t.getBoxLayoutParams(),a=t.get("padding"),o={width:e.getWidth(),height:e.getHeight()},i=ze(n,o,a);Fi(t.get("orient"),r,t.get("itemGap"),i.width,i.height),If(r,n,o,a)}function mx(r,t){var e=Ai(t.get("padding")),n=t.getItemStyle(["color","opacity"]);return n.fill=t.get("backgroundColor"),r=new Rt({shape:{x:r.x-e[3],y:r.y-e[0],width:r.width+e[1]+e[3],height:r.height+e[0]+e[2],r:t.get("borderRadius")},style:n,silent:!0,z2:-1}),r}var p0t=(function(r){A(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return t.prototype.render=function(e,n,a,o){var i=this.group;if(i.removeAll(),!e.get("show"))return;var u=+e.get("itemSize"),l=e.get("orient")==="vertical",f=e.get("feature")||{},s=this._features||(this._features={}),c=[];T(f,function(d,m){c.push(m)}),new Zn(this._featureNames||[],c).add(p).update(p).remove(gt(p,null)).execute(),this._featureNames=c;function p(d,m){var h=c[d],_=c[m],g=f[h],y=new Te(g,e,e.ecModel),D;if(o&&o.newTitle!=null&&o.featureName===h&&(g.title=o.newTitle),h&&!_){if(v0t(h))D={onclick:y.option.onclick,featureName:h};else{var b=dx(h);if(!b)return;D=new b}s[h]=D}else if(D=s[_],!D)return;D.uid=Xo("toolbox-feature"),D.model=y,D.ecModel=n,D.api=a;var C=D instanceof wn;if(!h&&_){C&&D.dispose&&D.dispose(n,a);return}if(!y.get("show")||C&&D.unusable){C&&D.remove&&D.remove(n,a);return}v(y,D,h),y.setIconStatus=function(x,w){var S=this.option,E=this.iconPaths;S.iconStatus=S.iconStatus||{},S.iconStatus[x]=w,E[x]&&(w==="emphasis"?fa:sa)(E[x])},D instanceof wn&&D.render&&D.render(y,n,a,o)}function v(d,m,h){var _=d.getModel("iconStyle"),g=d.getModel(["emphasis","iconStyle"]),y=m instanceof wn&&m.getIcons?m.getIcons():d.get("icon"),D=d.get("title")||{},b,C;V(y)?(b={},b[h]=y):b=y,V(D)?(C={},C[h]=D):C=D;var x=d.iconPaths={};T(b,function(w,S){var E=gl(w,{},{x:-u/2,y:-u/2,width:u,height:u});E.setStyle(_.getItemStyle());var M=E.ensureState("emphasis");M.style=g.getItemStyle();var I=new Wt({style:{text:C[S],align:g.get("textAlign"),borderRadius:g.get("textBorderRadius"),padding:g.get("textPadding"),fill:null,font:Rv({fontStyle:g.get("textFontStyle"),fontFamily:g.get("textFontFamily"),fontSize:g.get("textFontSize"),fontWeight:g.get("textFontWeight")},n)},ignore:!0});E.setTextContent(I),Mi({el:E,componentModel:e,itemName:S,formatterParamsExtra:{title:C[S]}}),E.__title=C[S],E.on("mouseover",function(){var F=g.getItemStyle(),L=l?e.get("right")==null&&e.get("left")!=="right"?"right":"left":e.get("bottom")==null&&e.get("top")!=="bottom"?"bottom":"top";I.setStyle({fill:g.get("textFill")||F.fill||F.stroke||"#000",backgroundColor:g.get("textBackgroundColor")}),E.setTextConfig({position:g.get("textPosition")||L}),I.ignore=!e.get("showTitle"),a.enterEmphasis(this)}).on("mouseout",function(){d.get(["iconStatus",S])!=="emphasis"&&a.leaveEmphasis(this),I.hide()}),(d.get(["iconStatus",S])==="emphasis"?fa:sa)(E),i.add(E),E.on("click",Q(m.onclick,m,n,a,S)),x[S]=E})}c9(i,e,a),i.add(mx(i.getBoundingRect(),e)),l||i.eachChild(function(d){var m=d.__title,h=d.ensureState("emphasis"),_=h.textConfig||(h.textConfig={}),g=d.getTextContent(),y=g&&g.ensureState("emphasis");if(y&&!X(y)&&m){var D=y.style||(y.style={}),b=vu(m,Wt.makeFont(D)),C=d.x+i.x,x=d.y+i.y+u,w=!1;x+b.height>a.getHeight()&&(_.position="top",w=!0);var S=w?-5-b.height:u+10;C+b.width/2>a.getWidth()?(_.position=["100%",S],D.align="right"):C-b.width/2<0&&(_.position=[0,S],D.align="left")}})},t.prototype.updateView=function(e,n,a,o){T(this._features,function(i){i instanceof wn&&i.updateView&&i.updateView(i.model,n,a,o)})},t.prototype.remove=function(e,n){T(this._features,function(a){a instanceof wn&&a.remove&&a.remove(e,n)}),this.group.removeAll()},t.prototype.dispose=function(e,n){T(this._features,function(a){a instanceof wn&&a.dispose&&a.dispose(e,n)})},t.type="toolbox",t})(Ee);function v0t(r){return r.indexOf("my")===0}var p9=p0t;var d0t=(function(r){A(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return t.prototype.onclick=function(e,n){var a=this.model,o=a.get("name")||e.get("title.0.text")||"echarts",i=n.getZr().painter.getType()==="svg",u=i?"svg":a.get("type",!0)||"png",l=n.getConnectedDataURL({type:u,backgroundColor:a.get("backgroundColor",!0)||e.get("backgroundColor")||"#fff",connectedBackgroundColor:a.get("connectedBackgroundColor"),excludeComponents:a.get("excludeComponents"),pixelRatio:a.get("pixelRatio")}),f=Kt.browser;if(X(MouseEvent)&&(f.newEdge||!f.ie&&!f.edge)){var s=document.createElement("a");s.download=o+"."+u,s.target="_blank",s.href=l;var c=new MouseEvent("click",{view:document.defaultView,bubbles:!0,cancelable:!1});s.dispatchEvent(c)}else if(window.navigator.msSaveOrOpenBlob||i){var p=l.split(","),v=p[0].indexOf("base64")>-1,d=i?decodeURIComponent(p[1]):p[1];v&&(d=window.atob(d));var m=o+"."+u;if(window.navigator.msSaveOrOpenBlob){for(var h=d.length,_=new Uint8Array(h);h--;)_[h]=d.charCodeAt(h);var g=new Blob([_]);window.navigator.msSaveOrOpenBlob(g,m)}else{var y=document.createElement("iframe");document.body.appendChild(y);var D=y.contentWindow,b=D.document;b.open("image/svg+xml","replace"),b.write(d),b.close(),D.focus(),b.execCommand("SaveAs",!0,m),document.body.removeChild(y)}}else{var C=a.get("lang"),x='<body style="margin:0;"><img src="'+l+'" style="max-width:100%;" title="'+(C&&C[0]||"")+'" /></body>',w=window.open();w.document.write(x),w.document.title=o}},t.getDefaultOption=function(e){var n={show:!0,icon:"M4.7,22.9L29.3,45.5L54.7,23.4M4.6,43.6L4.6,58L53.8,58L53.8,43.6M29.2,45.1L29.2,0",title:e.getLocaleModel().get(["toolbox","saveAsImage","title"]),type:"png",connectedBackgroundColor:"#fff",name:"",excludeComponents:["toolbox"],lang:e.getLocaleModel().get(["toolbox","saveAsImage","lang"])};return n},t})(wn),v9=d0t;var d9="__ec_magicType_stack__";var m0t=[["line","bar"],["stack"]],h0t=(function(r){A(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return t.prototype.getIcons=function(){var e=this.model,n=e.get("icon"),a={};return T(e.get("type"),function(o){n[o]&&(a[o]=n[o])}),a},t.getDefaultOption=function(e){var n={show:!0,type:[],icon:{line:"M4.1,28.9h7.1l9.3-22l7.4,38l9.7-19.7l3,12.8h14.9M4.1,58h51.4",bar:"M6.7,22.9h10V48h-10V22.9zM24.9,13h10v35h-10V13zM43.2,2h10v46h-10V2zM3.1,58h53.7",stack:"M8.2,38.4l-8.4,4.1l30.6,15.3L60,42.5l-8.1-4.1l-21.5,11L8.2,38.4z M51.9,30l-8.1,4.2l-13.4,6.9l-13.9-6.9L8.2,30l-8.4,4.2l8.4,4.2l22.2,11l21.5-11l8.1-4.2L51.9,30z M51.9,21.7l-8.1,4.2L35.7,30l-5.3,2.8L24.9,30l-8.4-4.1l-8.3-4.2l-8.4,4.2L8.2,30l8.3,4.2l13.9,6.9l13.4-6.9l8.1-4.2l8.1-4.1L51.9,21.7zM30.4,2.2L-0.2,17.5l8.4,4.1l8.3,4.2l8.4,4.2l5.5,2.7l5.3-2.7l8.1-4.2l8.1-4.2l8.1-4.1L30.4,2.2z"},title:e.getLocaleModel().get(["toolbox","magicType","title"]),option:{},seriesIndex:{}};return n},t.prototype.onclick=function(e,n,a){var o=this.model,i=o.get(["seriesIndex",a]);if(m9[a]){var u={series:[]},l=function(c){var p=c.subType,v=c.id,d=m9[a](p,v,c,o);d&&(et(d,c.option),u.series.push(d));var m=c.coordinateSystem;if(m&&m.type==="cartesian2d"&&(a==="line"||a==="bar")){var h=m.getAxesByScale("ordinal")[0];if(h){var _=h.dim,g=_+"Axis",y=c.getReferringComponents(g,je).models[0],D=y.componentIndex;u[g]=u[g]||[];for(var b=0;b<=D;b++)u[g][D]=u[g][D]||{};u[g][D].boundaryGap=a==="bar"}}};T(m0t,function(c){wt(c,a)>=0&&T(c,function(p){o.setIconStatus(p,"normal")})}),o.setIconStatus(a,"emphasis"),e.eachComponent({mainType:"series",query:i==null?null:{seriesIndex:i}},l);var f,s=a;a==="stack"&&(f=Et({stack:o.option.title.tiled,tiled:o.option.title.stack},o.option.title),o.get(["iconStatus",a])!=="emphasis"&&(s="tiled")),n.dispatchAction({type:"changeMagicType",currentType:s,newOption:u,newTitle:f,featureName:"magicType"})}},t})(wn),m9={line:function(r,t,e,n){if(r==="bar")return Et({id:t,type:"line",data:e.get("data"),stack:e.get("stack"),markPoint:e.get("markPoint"),markLine:e.get("markLine")},n.get(["option","line"])||{},!0)},bar:function(r,t,e,n){if(r==="line")return Et({id:t,type:"bar",data:e.get("data"),stack:e.get("stack"),markPoint:e.get("markPoint"),markLine:e.get("markLine")},n.get(["option","bar"])||{},!0)},stack:function(r,t,e,n){var a=e.get("stack")===d9;if(r==="line"||r==="bar")return n.setIconStatus("stack",a?"normal":"emphasis"),Et({id:t,stack:a?"":d9},n.get(["option","stack"])||{},!0)}};Ma({type:"changeMagicType",event:"magicTypeChanged",update:"prepareAndUpdate"},function(r,t){t.mergeOption(r.newOption)});var h9=h0t;var _x=new Array(60).join("-"),Md="	";function _0t(r){var t={},e=[],n=[];return r.eachRawSeries(function(a){var o=a.coordinateSystem;if(o&&(o.type==="cartesian2d"||o.type==="polar")){var i=o.getBaseAxis();if(i.type==="category"){var u=i.dim+"_"+i.index;t[u]||(t[u]={categoryAxis:i,valueAxis:o.getOtherAxis(i),series:[]},n.push({axisDim:i.dim,axisIndex:i.index})),t[u].series.push(a)}else e.push(a)}else e.push(a)}),{seriesGroupByCategoryAxis:t,other:e,meta:n}}function g0t(r){var t=[];return T(r,function(e,n){var a=e.categoryAxis,o=e.valueAxis,i=o.dim,u=[" "].concat(U(e.series,function(v){return v.name})),l=[a.model.getCategories()];T(e.series,function(v){var d=v.getRawData();l.push(v.getRawData().mapArray(d.mapDimension(i),function(m){return m}))});for(var f=[u.join(Md)],s=0;s<l[0].length;s++){for(var c=[],p=0;p<l.length;p++)c.push(l[p][s]);f.push(c.join(Md))}t.push(f.join(`+`))}),t.join(`++`+_x+`++`)}function y0t(r){return U(r,function(t){var e=t.getRawData(),n=[t.name],a=[];return e.each(e.dimensions,function(){for(var o=arguments.length,i=arguments[o-1],u=e.getName(i),l=0;l<o-1;l++)a[l]=arguments[l];n.push((u?u+Md:"")+a.join(Md))}),n.join(`+`)}).join(`++`+_x+`++`)}function D0t(r){var t=_0t(r);return{value:de([g0t(t.seriesGroupByCategoryAxis),y0t(t.other)],function(e){return!!e.replace(/[\n\t\s]/g,"")}).join(`++`+_x+`++`),meta:t.meta}}function hx(r){return r.replace(/^\s\s*/,"").replace(/\s\s*$/,"")}function b0t(r){var t=r.slice(0,r.indexOf(`+`));if(t.indexOf(Md)>=0)return!0}var oP=new RegExp("["+Md+"]+","g");function C0t(r){for(var t=r.split(/\n+/g),e=hx(t.shift()).split(oP),n=[],a=U(e,function(l){return{name:l,data:[]}}),o=0;o<t.length;o++){var i=hx(t[o]).split(oP);n.push(i.shift());for(var u=0;u<i.length;u++)a[u]&&(a[u].data[o]=i[u])}return{series:a,categories:n}}function T0t(r){for(var t=r.split(/\n+/g),e=hx(t.shift()),n=[],a=0;a<t.length;a++){var o=hx(t[a]);if(o){var i=o.split(oP),u="",l=void 0,f=!1;isNaN(i[0])?(f=!0,u=i[0],i=i.slice(1),n[a]={name:u,value:[]},l=n[a].value):l=n[a]=[];for(var s=0;s<i.length;s++)l.push(+i[s]);l.length===1&&(f?n[a].value=l[0]:n[a]=l[0])}}return{name:e,data:n}}function x0t(r,t){var e=r.split(new RegExp(`+*`+_x+`+*`,"g")),n={series:[]};return T(e,function(a,o){if(b0t(a)){var i=C0t(a),u=t[o],l=u.axisDim+"Axis";u&&(n[l]=n[l]||[],n[l][u.axisIndex]={data:i.categories},n.series=n.series.concat(i.series))}else{var i=T0t(a);n.series.push(i)}}),n}var w0t=(function(r){A(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return t.prototype.onclick=function(e,n){setTimeout(function(){n.dispatchAction({type:"hideTip"})});var a=n.getDom(),o=this.model;this._dom&&a.removeChild(this._dom);var i=document.createElement("div");i.style.cssText="position:absolute;top:0;bottom:0;left:0;right:0;padding:5px",i.style.backgroundColor=o.get("backgroundColor")||"#fff";var u=document.createElement("h4"),l=o.get("lang")||[];u.innerHTML=l[0]||o.get("title"),u.style.cssText="margin:10px 20px",u.style.color=o.get("textColor");var f=document.createElement("div"),s=document.createElement("textarea");f.style.cssText="overflow:auto";var c=o.get("optionToContent"),p=o.get("contentToOption"),v=D0t(e);if(X(c)){var d=c(n.getOption());V(d)?f.innerHTML=d:ff(d)&&f.appendChild(d)}else{s.readOnly=o.get("readOnly");var m=s.style;m.cssText="display:block;width:100%;height:100%;font-family:monospace;font-size:14px;line-height:1.6rem;resize:none;box-sizing:border-box;outline:none",m.color=o.get("textColor"),m.borderColor=o.get("textareaBorderColor"),m.backgroundColor=o.get("textareaColor"),s.value=v.value,f.appendChild(s)}var h=v.meta,_=document.createElement("div");_.style.cssText="position:absolute;bottom:5px;left:0;right:0";var g="float:right;margin-right:20px;border:none;cursor:pointer;padding:2px 5px;font-size:12px;border-radius:3px",y=document.createElement("div"),D=document.createElement("div");g+=";background-color:"+o.get("buttonColor"),g+=";color:"+o.get("buttonTextColor");var b=this;function C(){a.removeChild(i),b._dom=null}Sh(y,"click",C),Sh(D,"click",function(){if(p==null&&c!=null||p!=null&&c==null){C();return}var x;try{X(p)?x=p(f,n.getOption()):x=x0t(s.value,h)}catch(w){throw C(),new Error("Data view format error "+w)}x&&n.dispatchAction({type:"changeDataView",newOption:x}),C()}),y.innerHTML=l[1],D.innerHTML=l[2],D.style.cssText=y.style.cssText=g,!o.get("readOnly")&&_.appendChild(D),_.appendChild(y),i.appendChild(u),i.appendChild(f),i.appendChild(_),f.style.height=a.clientHeight-80+"px",a.appendChild(i),this._dom=i},t.prototype.remove=function(e,n){this._dom&&n.getDom().removeChild(this._dom)},t.prototype.dispose=function(e,n){this.remove(e,n)},t.getDefaultOption=function(e){var n={show:!0,readOnly:!1,optionToContent:null,contentToOption:null,icon:"M17.5,17.3H33 M17.5,17.3H33 M45.4,29.5h-28 M11.5,2v56H51V14.8L38.4,2H11.5z M38.4,2.2v12.7H51 M45.4,41.7h-28",title:e.getLocaleModel().get(["toolbox","dataView","title"]),lang:e.getLocaleModel().get(["toolbox","dataView","lang"]),backgroundColor:"#fff",textColor:"#000",textareaColor:"#fff",textareaBorderColor:"#333",buttonColor:"#c23531",buttonTextColor:"#fff"};return n},t})(wn);function S0t(r,t){return U(r,function(e,n){var a=t&&t[n];if(nt(a)&&!O(a)){var o=nt(e)&&!O(e);o||(e={value:e});var i=a.name!=null&&e.name==null;return e=et(e,a),i&&delete e.name,e}else return e})}Ma({type:"changeDataView",event:"dataViewChanged",update:"prepareAndUpdate"},function(r,t){var e=[];T(r.newOption.series,function(n){var a=t.getSeriesByName(n.name)[0];if(!a)e.push(N({type:"scatter"},n));else{var o=a.get("data");e.push({name:n.name,data:S0t(n.data,o)})}}),t.mergeOption(et({series:e},r.newOption))});var _9=w0t;var g9=T,y9=St();function D9(r,t){var e=iP(r);g9(t,function(n,a){for(var o=e.length-1;o>=0;o--){var i=e[o];if(i[a])break}if(o<0){var u=r.queryComponents({mainType:"dataZoom",subType:"select",id:a})[0];if(u){var l=u.getPercentRange();e[0][a]={dataZoomId:a,start:l[0],end:l[1]}}}}),e.push(t)}function b9(r){var t=iP(r),e=t[t.length-1];t.length>1&&t.pop();var n={};return g9(e,function(a,o){for(var i=t.length-1;i>=0;i--)if(a=t[i][o],a){n[o]=a;break}}),n}function C9(r){y9(r).snapshots=null}function T9(r){return iP(r).length}function iP(r){var t=y9(r);return t.snapshots||(t.snapshots=[{}]),t.snapshots}var E0t=(function(r){A(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return t.prototype.onclick=function(e,n){C9(e),n.dispatchAction({type:"restore",from:this.uid})},t.getDefaultOption=function(e){var n={show:!0,icon:"M3.8,33.4 M47,18.9h9.8V8.7 M56.3,20.1 C52.1,9,40.5,0.6,26.8,2.1C12.6,3.7,1.6,16.2,2.1,30.6 M13,41.1H3.1v10.2 M3.7,39.9c4.2,11.1,15.8,19.5,29.5,18 c14.2-1.6,25.2-14.1,24.7-28.5",title:e.getLocaleModel().get(["toolbox","restore","title"])};return n},t})(wn);Ma({type:"restore",event:"restore",update:"prepareAndUpdate"},function(r,t){t.resetOption("recreate")});var w9=E0t;var M0t=["grid","xAxis","yAxis","geo","graph","polar","radiusAxis","angleAxis","bmap"],A0t=(function(){function r(t,e,n){var a=this;this._targetInfoList=[];var o=S9(e,t);T(I0t,function(i,u){(!n||!n.include||wt(n.include,u)>=0)&&i(o,a._targetInfoList)})}return r.prototype.setOutputRanges=function(t,e){return this.matchOutputRanges(t,e,function(n,a,o){if((n.coordRanges||(n.coordRanges=[])).push(a),!n.coordRange){n.coordRange=a;var i=uP[n.brushType](0,o,a);n.__rangeOffset={offset:I9[n.brushType](i.values,n.range,[1,1]),xyMinMax:i.xyMinMax}}}),t},r.prototype.matchOutputRanges=function(t,e,n){T(t,function(a){var o=this.findTargetInfo(a,e);o&&o!==!0&&T(o.coordSyses,function(i){var u=uP[a.brushType](1,i,a.range,!0);n(a,u.values,i,e)})},this)},r.prototype.setInputRanges=function(t,e){T(t,function(n){var a=this.findTargetInfo(n,e);if(n.range=n.range||[],a&&a!==!0){n.panelId=a.panelId;var o=uP[n.brushType](0,a.coordSys,n.coordRange),i=n.__rangeOffset;n.range=i?I9[n.brushType](o.values,i.offset,F0t(o.xyMinMax,i.xyMinMax)):o.values}},this)},r.prototype.makePanelOpts=function(t,e){return U(this._targetInfoList,function(n){var a=n.getPanelRect();return{panelId:n.panelId,defaultBrushType:e?e(n):null,clipPath:GT(a),isTargetByCursor:VT(a,t,n.coordSysModel),getLinearBrushOtherExtent:BT(a)}})},r.prototype.controlSeries=function(t,e,n){var a=this.findTargetInfo(t,n);return a===!0||a&&wt(a.coordSyses,e.coordinateSystem)>=0},r.prototype.findTargetInfo=function(t,e){for(var n=this._targetInfoList,a=S9(e,t),o=0;o<n.length;o++){var i=n[o],u=t.panelId;if(u){if(i.panelId===u)return i}else for(var l=0;l<E9.length;l++)if(E9[l](a,i))return i}return!0},r})();function lP(r){return r[0]>r[1]&&r.reverse(),r}function S9(r,t){return Df(r,t,{includeMainTypes:M0t})}var I0t={grid:function(r,t){var e=r.xAxisModels,n=r.yAxisModels,a=r.gridModels,o=Z(),i={},u={};!e&&!n&&!a||(T(e,function(l){var f=l.axis.grid.model;o.set(f.id,f),i[f.id]=!0}),T(n,function(l){var f=l.axis.grid.model;o.set(f.id,f),u[f.id]=!0}),T(a,function(l){o.set(l.id,l),i[l.id]=!0,u[l.id]=!0}),o.each(function(l){var f=l.coordinateSystem,s=[];T(f.getCartesians(),function(c,p){(wt(e,c.getAxis("x").model)>=0||wt(n,c.getAxis("y").model)>=0)&&s.push(c)}),t.push({panelId:"grid--"+l.id,gridModel:l,coordSysModel:l,coordSys:s[0],coordSyses:s,getPanelRect:M9.grid,xAxisDeclared:i[l.id],yAxisDeclared:u[l.id]})}))},geo:function(r,t){T(r.geoModels,function(e){var n=e.coordinateSystem;t.push({panelId:"geo--"+e.id,geoModel:e,coordSysModel:e,coordSys:n,coordSyses:[n],getPanelRect:M9.geo})})}},E9=[function(r,t){var e=r.xAxisModel,n=r.yAxisModel,a=r.gridModel;return!a&&e&&(a=e.axis.grid.model),!a&&n&&(a=n.axis.grid.model),a&&a===t.gridModel},function(r,t){var e=r.geoModel;return e&&e===t.geoModel}],M9={grid:function(){return this.coordSys.master.getRect().clone()},geo:function(){var r=this.coordSys,t=r.getBoundingRect().clone();return t.applyTransform(Ei(r)),t}},uP={lineX:gt(A9,0),lineY:gt(A9,1),rect:function(r,t,e,n){var a=r?t.pointToData([e[0][0],e[1][0]],n):t.dataToPoint([e[0][0],e[1][0]],n),o=r?t.pointToData([e[0][1],e[1][1]],n):t.dataToPoint([e[0][1],e[1][1]],n),i=[lP([a[0],o[0]]),lP([a[1],o[1]])];return{values:i,xyMinMax:i}},polygon:function(r,t,e,n){var a=[[1/0,-1/0],[1/0,-1/0]],o=U(e,function(i){var u=r?t.pointToData(i,n):t.dataToPoint(i,n);return a[0][0]=Math.min(a[0][0],u[0]),a[1][0]=Math.min(a[1][0],u[1]),a[0][1]=Math.max(a[0][1],u[0]),a[1][1]=Math.max(a[1][1],u[1]),u});return{values:o,xyMinMax:a}}};function A9(r,t,e,n){var a=e.getAxis(["x","y"][r]),o=lP(U([0,1],function(u){return t?a.coordToData(a.toLocalCoord(n[u]),!0):a.toGlobalCoord(a.dataToCoord(n[u]))})),i=[];return i[r]=o,i[1-r]=[NaN,NaN],{values:o,xyMinMax:i}}var I9={lineX:gt(F9,0),lineY:gt(F9,1),rect:function(r,t,e){return[[r[0][0]-e[0]*t[0][0],r[0][1]-e[0]*t[0][1]],[r[1][0]-e[1]*t[1][0],r[1][1]-e[1]*t[1][1]]]},polygon:function(r,t,e){return U(r,function(n,a){return[n[0]-e[0]*t[a][0],n[1]-e[1]*t[a][1]]})}};function F9(r,t,e,n){return[t[0]-n[r]*e[0],t[1]-n[r]*e[1]]}function F0t(r,t){var e=L9(r),n=L9(t),a=[e[0]/n[0],e[1]/n[1]];return isNaN(a[0])&&(a[0]=1),isNaN(a[1])&&(a[1]=1),a}function L9(r){return r?[r[0][1]-r[0][0],r[1][1]-r[1][0]]:[NaN,NaN]}var Mg=A0t;var fP=T,L0t=$W("toolbox-dataZoom_");var R0t=(function(r){A(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return t.prototype.render=function(e,n,a,o){this._brushController||(this._brushController=new _d(a.getZr()),this._brushController.on("brush",Q(this._onBrush,this)).mount()),O0t(e,n,this,o,a),N0t(e,n)},t.prototype.onclick=function(e,n,a){P0t[a].call(this)},t.prototype.remove=function(e,n){this._brushController&&this._brushController.unmount()},t.prototype.dispose=function(e,n){this._brushController&&this._brushController.dispose()},t.prototype._onBrush=function(e){var n=e.areas;if(!e.isEnd||!n.length)return;var a={},o=this.ecModel;this._brushController.updateCovers([]);var i=new Mg(sP(this.model),o,{include:["grid"]});i.matchOutputRanges(n,o,function(f,s,c){if(c.type==="cartesian2d"){var p=f.brushType;p==="rect"?(u("x",c,s[0]),u("y",c,s[1])):u({lineX:"x",lineY:"y"}[p],c,s)}}),D9(o,a),this._dispatchZoomAction(a);function u(f,s,c){var p=s.getAxis(f),v=p.model,d=l(f,v,o),m=d.findRepresentativeAxisProxy(v).getMinMaxSpan();(m.minValueSpan!=null||m.maxValueSpan!=null)&&(c=so(0,c.slice(),p.scale.getExtent(),0,m.minValueSpan,m.maxValueSpan)),d&&(a[d.id]={dataZoomId:d.id,startValue:c[0],endValue:c[1]})}function l(f,s,c){var p;return c.eachComponent({mainType:"dataZoom",subType:"select"},function(v){var d=v.getAxisModel(f,s.componentIndex);d&&(p=v)}),p}},t.prototype._dispatchZoomAction=function(e){var n=[];fP(e,function(a,o){n.push(lt(a))}),n.length&&this.api.dispatchAction({type:"dataZoom",from:this.uid,batch:n})},t.getDefaultOption=function(e){var n={show:!0,filterMode:"filter",icon:{zoom:"M0,13.5h26.9 M13.5,26.9V0 M32.1,13.5H58V58H13.5 V32.1",back:"M22,1.4L9.9,13.5l12.3,12.3 M10.3,13.5H54.9v44.6 H10.3v-26"},title:e.getLocaleModel().get(["toolbox","dataZoom","title"]),brushStyle:{borderWidth:0,color:"rgba(210,219,238,0.2)"}};return n},t})(wn),P0t={zoom:function(){var r=!this._isZoomActive;this.api.dispatchAction({type:"takeGlobalCursor",key:"dataZoomSelect",dataZoomSelectActive:r})},back:function(){this._dispatchZoomAction(b9(this.ecModel))}};function sP(r){var t={xAxisIndex:r.get("xAxisIndex",!0),yAxisIndex:r.get("yAxisIndex",!0),xAxisId:r.get("xAxisId",!0),yAxisId:r.get("yAxisId",!0)};return t.xAxisIndex==null&&t.xAxisId==null&&(t.xAxisIndex="all"),t.yAxisIndex==null&&t.yAxisId==null&&(t.yAxisIndex="all"),t}function N0t(r,t){r.setIconStatus("back",T9(t)>1?"emphasis":"normal")}function O0t(r,t,e,n,a){var o=e._isZoomActive;n&&n.type==="takeGlobalCursor"&&(o=n.key==="dataZoomSelect"?n.dataZoomSelectActive:!1),e._isZoomActive=o,r.setIconStatus("zoom",o?"emphasis":"normal");var i=new Mg(sP(r),t,{include:["grid"]}),u=i.makePanelOpts(a,function(l){return l.xAxisDeclared&&!l.yAxisDeclared?"lineX":!l.xAxisDeclared&&l.yAxisDeclared?"lineY":"rect"});e._brushController.setPanels(u).enableBrush(o&&u.length?{brushType:"auto",brushStyle:r.getModel("brushStyle").getItemStyle()}:!1)}pV("dataZoom",function(r){var t=r.getComponent("toolbox",0),e=["feature","dataZoom"];if(!t||t.get(e)==null)return;var n=t.getModel(e),a=[],o=sP(n),i=Df(r,o);fP(i.xAxisModels,function(l){return u(l,"xAxis","xAxisIndex")}),fP(i.yAxisModels,function(l){return u(l,"yAxis","yAxisIndex")});function u(l,f,s){var c=l.componentIndex,p={type:"select",$fromToolbox:!0,filterMode:n.get("filterMode",!0)||"filter",id:L0t+f+c};p[s]=c,a.push(p)}return a});var R9=R0t;function cP(r){r.registerComponentModel(s9),r.registerComponentView(p9),ns("saveAsImage",v9),ns("magicType",h9),ns("dataView",_9),ns("dataZoom",R9),ns("restore",w9),Jt(l9)}var U0t=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.type="tooltip",t.dependencies=["axisPointer"],t.defaultOption={z:60,show:!0,showContent:!0,trigger:"item",triggerOn:"mousemove|click",alwaysShowContent:!1,displayMode:"single",renderMode:"auto",confine:null,showDelay:0,hideDelay:100,transitionDuration:.4,enterable:!1,backgroundColor:"#fff",shadowBlur:10,shadowColor:"rgba(0, 0, 0, .2)",shadowOffsetX:1,shadowOffsetY:2,borderRadius:4,borderWidth:1,padding:null,extraCssText:"",axisPointer:{type:"line",axis:"auto",animation:"auto",animationDurationUpdate:200,animationEasingUpdate:"exponentialOut",crossStyle:{color:"#999",width:1,type:"dashed",textStyle:{}}},textStyle:{color:"#666",fontSize:14}},t})(Gt),P9=U0t;function gx(r){var t=r.get("confine");return t!=null?!!t:r.get("renderMode")==="richText"}function N9(r){if(Kt.domSupported){for(var t=document.documentElement.style,e=0,n=r.length;e<n;e++)if(r[e]in t)return r[e]}}var pP=N9(["transform","webkitTransform","OTransform","MozTransform","msTransform"]),O9=N9(["webkitTransition","transition","OTransition","MozTransition","msTransition"]);function vP(r,t){if(!r)return t;t=Ob(t,!0);var e=r.indexOf(t);return r=e===-1?t:"-"+r.slice(0,e)+"-"+t,r.toLowerCase()}function U9(r,t){var e=r.currentStyle||document.defaultView&&document.defaultView.getComputedStyle(r);return e?t?e[t]:e:null}var H0t=vP(O9,"transition"),dP=vP(pP,"transform"),k0t="position:absolute;display:block;border-style:solid;white-space:nowrap;z-index:9999999;"+(Kt.transform3dSupported?"will-change:transform;":"");function z0t(r){return r=r==="left"?"right":r==="right"?"left":r==="top"?"bottom":"top",r}function W0t(r,t,e){if(!V(e)||e==="inside")return"";var n=r.get("backgroundColor"),a=r.get("borderWidth");t=Ii(t);var o=z0t(e),i=Math.max(Math.round(a)*1.5,6),u="",l=dP+":",f;wt(["left","right"],o)>-1?(u+="top:50%",l+="translateY(-50%) rotate("+(f=o==="left"?-225:-45)+"deg)"):(u+="left:50%",l+="translateX(-50%) rotate("+(f=o==="top"?225:45)+"deg)");var s=f*Math.PI/180,c=i+a,p=c*Math.abs(Math.cos(s))+c*Math.abs(Math.sin(s)),v=Math.round(((p-Math.SQRT2*a)/2+Math.SQRT2*a-(p-c)/2)*100)/100;u+=";"+o+":-"+v+"px";var d=t+" solid "+a+"px;",m=["position:absolute;width:"+i+"px;height:"+i+"px;z-index:-1;",u+";"+l+";","border-bottom:"+d,"border-right:"+d,"background-color:"+n+";"];return'<div style="'+m.join("")+'"></div>'}function G0t(r,t){var e="cubic-bezier(0.23,1,0.32,1)",n=" "+r/2+"s "+e,a="opacity"+n+",visibility"+n;return t||(n=" "+r+"s "+e,a+=Kt.transformSupported?","+dP+n:",left"+n+",top"+n),H0t+":"+a}function H9(r,t,e){var n=r.toFixed(0)+"px",a=t.toFixed(0)+"px";if(!Kt.transformSupported)return e?"top:"+a+";left:"+n+";":[["top",a],["left",n]];var o=Kt.transform3dSupported,i="translate"+(o?"3d":"")+"("+n+","+a+(o?",0":"")+")";return e?"top:0;left:0;"+dP+":"+i+";":[["top",0],["left",0],[pP,i]]}function B0t(r){var t=[],e=r.get("fontSize"),n=r.getTextColor();n&&t.push("color:"+n),t.push("font:"+r.getFont()),e&&t.push("line-height:"+Math.round(e*3/2)+"px");var a=r.get("textShadowColor"),o=r.get("textShadowBlur")||0,i=r.get("textShadowOffsetX")||0,u=r.get("textShadowOffsetY")||0;return a&&o&&t.push("text-shadow:"+i+"px "+u+"px "+o+"px "+a),T(["decoration","align"],function(l){var f=r.get(l);f&&t.push("text-"+l+":"+f)}),t.join(";")}function V0t(r,t,e){var n=[],a=r.get("transitionDuration"),o=r.get("backgroundColor"),i=r.get("shadowBlur"),u=r.get("shadowColor"),l=r.get("shadowOffsetX"),f=r.get("shadowOffsetY"),s=r.getModel("textStyle"),c=nC(r,"html"),p=l+"px "+f+"px "+i+"px "+u;return n.push("box-shadow:"+p),t&&a&&n.push(G0t(a,e)),o&&n.push("background-color:"+o),T(["width","color","radius"],function(v){var d="border-"+v,m=Ob(d),h=r.get(m);h!=null&&n.push(d+":"+h+(v==="color"?"":"px"))}),n.push(B0t(s)),c!=null&&n.push("padding:"+Ai(c).join("px ")+"px"),n.join(";")+";"}function k9(r,t,e,n,a){var o=t&&t.painter;if(e){var i=o&&o.getViewportRoot();i&&Ez(r,i,e,n,a)}else{r[0]=n,r[1]=a;var u=o&&o.getViewportRootOffset();u&&(r[0]+=u.offsetLeft,r[1]+=u.offsetTop)}r[2]=r[0]/t.getWidth(),r[3]=r[1]/t.getHeight()}var $0t=(function(){function r(t,e){if(this._show=!1,this._styleCoord=[0,0,0,0],this._enterable=!0,this._alwaysShowContent=!1,this._firstShow=!0,this._longHide=!0,Kt.wxa)return null;var n=document.createElement("div");n.domBelongToZr=!0,this.el=n;var a=this._zr=t.getZr(),o=e.appendTo,i=o&&(V(o)?document.querySelector(o):ff(o)?o:X(o)&&o(t.getDom()));k9(this._styleCoord,a,i,t.getWidth()/2,t.getHeight()/2),(i||t.getDom()).appendChild(n),this._api=t,this._container=i;var u=this;n.onmouseenter=function(){u._enterable&&(clearTimeout(u._hideTimeout),u._show=!0),u._inContent=!0},n.onmousemove=function(l){if(l=l||window.event,!u._enterable){var f=a.handler,s=a.painter.getViewportRoot();$a(s,l,!0),f.dispatch("mousemove",l)}},n.onmouseleave=function(){u._inContent=!1,u._enterable&&u._show&&u.hideLater(u._hideDelay)}}return r.prototype.update=function(t){if(!this._container){var e=this._api.getDom(),n=U9(e,"position"),a=e.style;a.position!=="absolute"&&n!=="absolute"&&(a.position="relative")}var o=t.get("alwaysShowContent");o&&this._moveIfResized(),this._alwaysShowContent=o,this.el.className=t.get("className")||""},r.prototype.show=function(t,e){clearTimeout(this._hideTimeout),clearTimeout(this._longHideTimeout);var n=this.el,a=n.style,o=this._styleCoord;n.innerHTML?a.cssText=k0t+V0t(t,!this._firstShow,this._longHide)+H9(o[0],o[1],!0)+("border-color:"+Ii(e)+";")+(t.get("extraCssText")||"")+(";pointer-events:"+(this._enterable?"auto":"none")):a.display="none",this._show=!0,this._firstShow=!1,this._longHide=!1},r.prototype.setContent=function(t,e,n,a,o){var i=this.el;if(t==null){i.innerHTML="";return}var u="";if(V(o)&&n.get("trigger")==="item"&&!gx(n)&&(u=W0t(n,a,o)),V(t))i.innerHTML=t+u;else if(t){i.innerHTML="",O(t)||(t=[t]);for(var l=0;l<t.length;l++)ff(t[l])&&t[l].parentNode!==i&&i.appendChild(t[l]);if(u&&i.childNodes.length){var f=document.createElement("div");f.innerHTML=u,i.appendChild(f)}}},r.prototype.setEnterable=function(t){this._enterable=t},r.prototype.getSize=function(){var t=this.el;return[t.offsetWidth,t.offsetHeight]},r.prototype.moveTo=function(t,e){var n=this._styleCoord;if(k9(n,this._zr,this._container,t,e),n[0]!=null&&n[1]!=null){var a=this.el.style,o=H9(n[0],n[1]);T(o,function(i){a[i[0]]=i[1]})}},r.prototype._moveIfResized=function(){var t=this._styleCoord[2],e=this._styleCoord[3];this.moveTo(t*this._zr.getWidth(),e*this._zr.getHeight())},r.prototype.hide=function(){var t=this,e=this.el.style;e.visibility="hidden",e.opacity="0",Kt.transform3dSupported&&(e.willChange=""),this._show=!1,this._longHideTimeout=setTimeout(function(){return t._longHide=!0},500)},r.prototype.hideLater=function(t){this._show&&!(this._inContent&&this._enterable)&&!this._alwaysShowContent&&(t?(this._hideDelay=t,this._show=!1,this._hideTimeout=setTimeout(Q(this.hide,this),t)):this.hide())},r.prototype.isShow=function(){return this._show},r.prototype.dispose=function(){clearTimeout(this._hideTimeout),clearTimeout(this._longHideTimeout);var t=this.el.parentNode;t&&t.removeChild(this.el),this.el=this._container=null},r})(),z9=$0t;var q0t=(function(){function r(t){this._show=!1,this._styleCoord=[0,0,0,0],this._alwaysShowContent=!1,this._enterable=!0,this._zr=t.getZr(),G9(this._styleCoord,this._zr,t.getWidth()/2,t.getHeight()/2)}return r.prototype.update=function(t){var e=t.get("alwaysShowContent");e&&this._moveIfResized(),this._alwaysShowContent=e},r.prototype.show=function(){this._hideTimeout&&clearTimeout(this._hideTimeout),this.el.show(),this._show=!0},r.prototype.setContent=function(t,e,n,a,o){var i=this;nt(t)&&Fe(""),this.el&&this._zr.remove(this.el);var u=n.getModel("textStyle");this.el=new Wt({style:{rich:e.richTextStyles,text:t,lineHeight:22,borderWidth:1,borderColor:a,textShadowColor:u.get("textShadowColor"),fill:n.get(["textStyle","color"]),padding:nC(n,"richText"),verticalAlign:"top",align:"left"},z:n.get("z")}),T(["backgroundColor","borderRadius","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY"],function(f){i.el.style[f]=n.get(f)}),T(["textShadowBlur","textShadowOffsetX","textShadowOffsetY"],function(f){i.el.style[f]=u.get(f)||0}),this._zr.add(this.el);var l=this;this.el.on("mouseover",function(){l._enterable&&(clearTimeout(l._hideTimeout),l._show=!0),l._inContent=!0}),this.el.on("mouseout",function(){l._enterable&&l._show&&l.hideLater(l._hideDelay),l._inContent=!1})},r.prototype.setEnterable=function(t){this._enterable=t},r.prototype.getSize=function(){var t=this.el,e=this.el.getBoundingRect(),n=W9(t.style);return[e.width+n.left+n.right,e.height+n.top+n.bottom]},r.prototype.moveTo=function(t,e){var n=this.el;if(n){var a=this._styleCoord;G9(a,this._zr,t,e),t=a[0],e=a[1];var o=n.style,i=as(o.borderWidth||0),u=W9(o);n.x=t+i+u.left,n.y=e+i+u.top,n.markRedraw()}},r.prototype._moveIfResized=function(){var t=this._styleCoord[2],e=this._styleCoord[3];this.moveTo(t*this._zr.getWidth(),e*this._zr.getHeight())},r.prototype.hide=function(){this.el&&this.el.hide(),this._show=!1},r.prototype.hideLater=function(t){this._show&&!(this._inContent&&this._enterable)&&!this._alwaysShowContent&&(t?(this._hideDelay=t,this._show=!1,this._hideTimeout=setTimeout(Q(this.hide,this),t)):this.hide())},r.prototype.isShow=function(){return this._show},r.prototype.dispose=function(){this._zr.remove(this.el)},r})();function as(r){return Math.max(0,r)}function W9(r){var t=as(r.shadowBlur||0),e=as(r.shadowOffsetX||0),n=as(r.shadowOffsetY||0);return{left:as(t-e),right:as(t+e),top:as(t-n),bottom:as(t+n)}}function G9(r,t,e,n){r[0]=e,r[1]=n,r[2]=r[0]/t.getWidth(),r[3]=r[1]/t.getHeight()}var B9=q0t;var J0t=new Rt({shape:{x:-1,y:-1,width:2,height:2}}),j0t=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.init=function(e,n){if(!(Kt.node||!n.getDom())){var a=e.getComponent("tooltip"),o=this._renderMode=QW(a.get("renderMode"));this._tooltipContent=o==="richText"?new B9(n):new z9(n,{appendTo:a.get("appendToBody",!0)?"body":a.get("appendTo",!0)})}},t.prototype.render=function(e,n,a){if(!(Kt.node||!a.getDom())){this.group.removeAll(),this._tooltipModel=e,this._ecModel=n,this._api=a;var o=this._tooltipContent;o.update(e),o.setEnterable(e.get("enterable")),this._initGlobalListener(),this._keepShow(),this._renderMode!=="richText"&&e.get("transitionDuration")?ri(this,"_updatePosition",50,"fixRate"):wl(this,"_updatePosition")}},t.prototype._initGlobalListener=function(){var e=this._tooltipModel,n=e.get("triggerOn");ox("itemTooltip",this._api,Q(function(a,o,i){n!=="none"&&(n.indexOf(a)>=0?this._tryShow(o,i):a==="leave"&&this._hide(i))},this))},t.prototype._keepShow=function(){var e=this._tooltipModel,n=this._ecModel,a=this._api,o=e.get("triggerOn");if(this._lastX!=null&&this._lastY!=null&&o!=="none"&&o!=="click"){var i=this;clearTimeout(this._refreshUpdateTimeout),this._refreshUpdateTimeout=setTimeout(function(){!a.isDisposed()&&i.manuallyShowTip(e,n,a,{x:i._lastX,y:i._lastY,dataByCoordSys:i._lastDataByCoordSys})})}},t.prototype.manuallyShowTip=function(e,n,a,o){if(!(o.from===this.uid||Kt.node||!a.getDom())){var i=V9(o,a);this._ticket="";var u=o.dataByCoordSys,l=X0t(o,n,a);if(l){var f=l.el.getBoundingRect().clone();f.applyTransform(l.el.transform),this._tryShow({offsetX:f.x+f.width/2,offsetY:f.y+f.height/2,target:l.el,position:o.position,positionDefault:"bottom"},i)}else if(o.tooltip&&o.x!=null&&o.y!=null){var s=J0t;s.x=o.x,s.y=o.y,s.update(),vt(s).tooltipConfig={name:null,option:o.tooltip},this._tryShow({offsetX:o.x,offsetY:o.y,target:s},i)}else if(u)this._tryShow({offsetX:o.x,offsetY:o.y,position:o.position,dataByCoordSys:u,tooltipOption:o.tooltipOption},i);else if(o.seriesIndex!=null){if(this._manuallyAxisShowTip(e,n,a,o))return;var c=Sg(o,n),p=c.point[0],v=c.point[1];p!=null&&v!=null&&this._tryShow({offsetX:p,offsetY:v,target:c.el,position:o.position,positionDefault:"bottom"},i)}else o.x!=null&&o.y!=null&&(a.dispatchAction({type:"updateAxisPointer",x:o.x,y:o.y}),this._tryShow({offsetX:o.x,offsetY:o.y,position:o.position,target:a.getZr().findHover(o.x,o.y).target},i))}},t.prototype.manuallyHideTip=function(e,n,a,o){var i=this._tooltipContent;this._tooltipModel&&i.hideLater(this._tooltipModel.get("hideDelay")),this._lastX=this._lastY=this._lastDataByCoordSys=null,o.from!==this.uid&&this._hide(V9(o,a))},t.prototype._manuallyAxisShowTip=function(e,n,a,o){var i=o.seriesIndex,u=o.dataIndex,l=n.getComponent("axisPointer").coordSysAxesInfo;if(!(i==null||u==null||l==null)){var f=n.getSeriesByIndex(i);if(f){var s=f.getData(),c=Ag([s.getItemModel(u),f,(f.coordinateSystem||{}).model],this._tooltipModel);if(c.get("trigger")==="axis")return a.dispatchAction({type:"updateAxisPointer",seriesIndex:i,dataIndex:u,position:o.position}),!0}}},t.prototype._tryShow=function(e,n){var a=e.target,o=this._tooltipModel;if(o){this._lastX=e.offsetX,this._lastY=e.offsetY;var i=e.dataByCoordSys;if(i&&i.length)this._showAxisTooltip(i,e);else if(a){var u=vt(a);if(u.ssrType==="legend")return;this._lastDataByCoordSys=null;var l,f;Ri(a,function(s){if(vt(s).dataIndex!=null)return l=s,!0;if(vt(s).tooltipConfig!=null)return f=s,!0},!0),l?this._showSeriesItemTooltip(e,l,n):f?this._showComponentItemTooltip(e,f,n):this._hide(n)}else this._lastDataByCoordSys=null,this._hide(n)}},t.prototype._showOrMove=function(e,n){var a=e.get("showDelay");n=Q(n,this),clearTimeout(this._showTimout),a>0?this._showTimout=setTimeout(n,a):n()},t.prototype._showAxisTooltip=function(e,n){var a=this._ecModel,o=this._tooltipModel,i=[n.offsetX,n.offsetY],u=Ag([n.tooltipOption],o),l=this._renderMode,f=[],s=nr("section",{blocks:[],noHeader:!0}),c=[],p=new aC;T(e,function(g){T(g.dataByAxis,function(y){var D=a.getComponent(y.axisDim+"Axis",y.axisIndex),b=y.value;if(!(!D||b==null)){var C=zR(b,D.axis,a,y.seriesDataIndices,y.valueLabelOpt),x=nr("section",{header:C,noHeader:!yn(C),sortBlocks:!0,blocks:[]});s.blocks.push(x),T(y.seriesDataIndices,function(w){var S=a.getSeriesByIndex(w.seriesIndex),E=w.dataIndexInside,M=S.getDataParams(E);if(!(M.dataIndex<0)){M.axisDim=y.axisDim,M.axisIndex=y.axisIndex,M.axisType=y.axisType,M.axisId=y.axisId,M.axisValue=Y_(D.axis,{value:b}),M.axisValueLabel=C,M.marker=p.makeTooltipMarker("item",Ii(M.color),l);var I=dA(S.formatTooltip(E,!0,null)),F=I.frag;if(F){var L=Ag([S],o).get("valueFormatter");x.blocks.push(L?N({valueFormatter:L},F):F)}I.text&&c.push(I.text),f.push(M)}})}})}),s.blocks.reverse(),c.reverse();var v=n.position,d=u.get("order"),m=bA(s,p,l,d,a.get("useUTC"),u.get("textStyle"));m&&c.unshift(m);var h=l==="richText"?`++`:"<br/>",_=c.join(h);this._showOrMove(u,function(){this._updateContentNotChangedOnAxis(e,f)?this._updatePosition(u,v,i[0],i[1],this._tooltipContent,f):this._showTooltipContent(u,_,f,Math.random()+"",i[0],i[1],v,null,p)})},t.prototype._showSeriesItemTooltip=function(e,n,a){var o=this._ecModel,i=vt(n),u=i.seriesIndex,l=o.getSeriesByIndex(u),f=i.dataModel||l,s=i.dataIndex,c=i.dataType,p=f.getData(c),v=this._renderMode,d=e.positionDefault,m=Ag([p.getItemModel(s),f,l&&(l.coordinateSystem||{}).model],this._tooltipModel,d?{position:d}:null),h=m.get("trigger");if(!(h!=null&&h!=="item")){var _=f.getDataParams(s,c),g=new aC;_.marker=g.makeTooltipMarker("item",Ii(_.color),v);var y=dA(f.formatTooltip(s,!1,c)),D=m.get("order"),b=m.get("valueFormatter"),C=y.frag,x=C?bA(b?N({valueFormatter:b},C):C,g,v,D,o.get("useUTC"),m.get("textStyle")):y.text,w="item_"+f.name+"_"+s;this._showOrMove(m,function(){this._showTooltipContent(m,x,_,w,e.offsetX,e.offsetY,e.position,e.target,g)}),a({type:"showTip",dataIndexInside:s,dataIndex:p.getRawIndex(s),seriesIndex:u,from:this.uid})}},t.prototype._showComponentItemTooltip=function(e,n,a){var o=vt(n),i=o.tooltipConfig,u=i.option||{};if(V(u)){var l=u;u={content:l,formatter:l}}var f=[u],s=this._ecModel.getComponent(o.componentMainType,o.componentIndex);s&&f.push(s),f.push({formatter:u.content});var c=e.positionDefault,p=Ag(f,this._tooltipModel,c?{position:c}:null),v=p.get("content"),d=Math.random()+"",m=new aC;this._showOrMove(p,function(){var h=lt(p.get("formatterParams")||{});this._showTooltipContent(p,v,h,d,e.offsetX,e.offsetY,e.position,n,m)}),a({type:"showTip",from:this.uid})},t.prototype._showTooltipContent=function(e,n,a,o,i,u,l,f,s){if(this._ticket="",!(!e.get("showContent")||!e.get("show"))){var c=this._tooltipContent;c.setEnterable(e.get("enterable"));var p=e.get("formatter");l=l||e.get("position");var v=n,d=this._getNearestPoint([i,u],a,e.get("trigger"),e.get("borderColor")),m=d.color;if(p)if(V(p)){var h=e.ecModel.get("useUTC"),_=O(a)?a[0]:a,g=_&&_.axisType&&_.axisType.indexOf("time")>=0;v=p,g&&(v=Sc(_.axisValue,v,h)),v=Hb(v,a,!0)}else if(X(p)){var y=Q(function(D,b){D===this._ticket&&(c.setContent(b,s,e,m,l),this._updatePosition(e,l,i,u,c,a,f))},this);this._ticket=o,v=p(a,o,y)}else v=p;c.setContent(v,s,e,m,l),c.show(e,m),this._updatePosition(e,l,i,u,c,a,f)}},t.prototype._getNearestPoint=function(e,n,a,o){if(a==="axis"||O(n))return{color:o||(this._renderMode==="html"?"#fff":"none")};if(!O(n))return{color:o||n.color||n.borderColor}},t.prototype._updatePosition=function(e,n,a,o,i,u,l){var f=this._api.getWidth(),s=this._api.getHeight();n=n||e.get("position");var c=i.getSize(),p=e.get("align"),v=e.get("verticalAlign"),d=l&&l.getBoundingRect().clone();if(l&&d.applyTransform(l.transform),X(n)&&(n=n([a,o],u,i.el,d,{viewSize:[f,s],contentSize:c.slice()})),O(n))a=Y(n[0],f),o=Y(n[1],s);else if(nt(n)){var m=n;m.width=c[0],m.height=c[1];var h=ze(m,{width:f,height:s});a=h.x,o=h.y,p=null,v=null}else if(V(n)&&l){var _=Z0t(n,d,c,e.get("borderWidth"));a=_[0],o=_[1]}else{var _=Y0t(a,o,i,f,s,p?null:20,v?null:20);a=_[0],o=_[1]}if(p&&(a-=$9(p)?c[0]/2:p==="right"?c[0]:0),v&&(o-=$9(v)?c[1]/2:v==="bottom"?c[1]:0),gx(e)){var _=Q0t(a,o,i,f,s);a=_[0],o=_[1]}i.moveTo(a,o)},t.prototype._updateContentNotChangedOnAxis=function(e,n){var a=this._lastDataByCoordSys,o=this._cbParamsList,i=!!a&&a.length===e.length;return i&&T(a,function(u,l){var f=u.dataByAxis||[],s=e[l]||{},c=s.dataByAxis||[];i=i&&f.length===c.length,i&&T(f,function(p,v){var d=c[v]||{},m=p.seriesDataIndices||[],h=d.seriesDataIndices||[];i=i&&p.value===d.value&&p.axisType===d.axisType&&p.axisId===d.axisId&&m.length===h.length,i&&T(m,function(_,g){var y=h[g];i=i&&_.seriesIndex===y.seriesIndex&&_.dataIndex===y.dataIndex}),o&&T(p.seriesDataIndices,function(_){var g=_.seriesIndex,y=n[g],D=o[g];y&&D&&D.data!==y.data&&(i=!1)})})}),this._lastDataByCoordSys=e,this._cbParamsList=n,!!i},t.prototype._hide=function(e){this._lastDataByCoordSys=null,e({type:"hideTip",from:this.uid})},t.prototype.dispose=function(e,n){Kt.node||!n.getDom()||(wl(this,"_updatePosition"),this._tooltipContent.dispose(),wg("itemTooltip",n))},t.type="tooltip",t})(Ee);function Ag(r,t,e){var n=t.ecModel,a;e?(a=new Te(e,n,n),a=new Te(t.option,a,n)):a=t;for(var o=r.length-1;o>=0;o--){var i=r[o];i&&(i instanceof Te&&(i=i.get("tooltip",!0)),V(i)&&(i={formatter:i}),i&&(a=new Te(i,a,n)))}return a}function V9(r,t){return r.dispatchAction||Q(t.dispatchAction,t)}function Y0t(r,t,e,n,a,o,i){var u=e.getSize(),l=u[0],f=u[1];return o!=null&&(r+l+o+2>n?r-=l+o:r+=o),i!=null&&(t+f+i>a?t-=f+i:t+=i),[r,t]}function Q0t(r,t,e,n,a){var o=e.getSize(),i=o[0],u=o[1];return r=Math.min(r+i,n)-i,t=Math.min(t+u,a)-u,r=Math.max(r,0),t=Math.max(t,0),[r,t]}function Z0t(r,t,e,n){var a=e[0],o=e[1],i=Math.ceil(Math.SQRT2*n)+8,u=0,l=0,f=t.width,s=t.height;switch(r){case"inside":u=t.x+f/2-a/2,l=t.y+s/2-o/2;break;case"top":u=t.x+f/2-a/2,l=t.y-o-i;break;case"bottom":u=t.x+f/2-a/2,l=t.y+s+i;break;case"left":u=t.x-a-i,l=t.y+s/2-o/2;break;case"right":u=t.x+f+i,l=t.y+s/2-o/2}return[u,l]}function $9(r){return r==="center"||r==="middle"}function X0t(r,t,e){var n=Jh(r).queryOptionMap,a=n.keys()[0];if(!(!a||a==="series")){var o=bf(t,a,n.get(a),{useDefault:!1,enableAll:!1,enableNone:!1}),i=o.models[0];if(i){var u=e.getViewOfComponentModel(i),l;if(u.group.traverse(function(f){var s=vt(f).tooltipConfig;if(s&&s.name===r.name)return l=f,!0}),l)return{componentMainType:a,componentIndex:i.componentIndex,el:l}}}}var q9=j0t;function mP(r){Jt(Vi),r.registerComponentModel(P9),r.registerComponentView(q9),r.registerAction({type:"showTip",event:"showTip",update:"tooltip:manuallyShowTip"},Ye),r.registerAction({type:"hideTip",event:"hideTip",update:"tooltip:manuallyHideTip"},Ye)}var K0t=["rect","polygon","keep","clear"];function hP(r,t){var e=we(r?r.brush:[]);if(e.length){var n=[];T(e,function(l){var f=l.hasOwnProperty("toolbox")?l.toolbox:[];f instanceof Array&&(n=n.concat(f))});var a=r&&r.toolbox;O(a)&&(a=a[0]),a||(a={feature:{}},r.toolbox=[a]);var o=a.feature||(a.feature={}),i=o.brush||(o.brush={}),u=i.type||(i.type=[]);u.push.apply(u,n),tbt(u),t&&!u.length&&u.push.apply(u,K0t)}}function tbt(r){var t={};T(r,function(e){t[e]=1}),r.length=0,T(t,function(e,n){r.push(n)})}var J9=T;function j9(r){if(r){for(var t in r)if(r.hasOwnProperty(t))return!0}}function Ig(r,t,e){var n={};return J9(t,function(o){var i=n[o]=a();J9(r[o],function(u,l){if(zr.isValidType(l)){var f={type:l,visual:u};e&&e(f,o),i[l]=new zr(f),l==="opacity"&&(f=lt(f),f.type="colorAlpha",i.__hidden.__alphaForOpacity=new zr(f))}})}),n;function a(){var o=function(){};o.prototype.__hidden=o.prototype;var i=new o;return i}}function yx(r,t,e){var n;T(e,function(a){t.hasOwnProperty(a)&&j9(t[a])&&(n=!0)}),n&&T(e,function(a){t.hasOwnProperty(a)&&j9(t[a])?r[a]=lt(t[a]):delete r[a]})}function Y9(r,t,e,n,a,o){var i={};T(r,function(c){var p=zr.prepareVisualTypes(t[c]);i[c]=p});var u;function l(c){return L_(e,u,c)}function f(c,p){MA(e,u,c,p)}o==null?e.each(s):e.each([o],s);function s(c,p){u=o==null?c:p;var v=e.getRawDataItem(u);if(!(v&&v.visualMap===!1))for(var d=n.call(a,c),m=t[d],h=i[d],_=0,g=h.length;_<g;_++){var y=h[_];m[y]&&m[y].applyVisual(c,l,f)}}}function Q9(r,t,e,n){var a={};return T(r,function(o){var i=zr.prepareVisualTypes(t[o]);a[o]=i}),{progress:function(i,u){var l;n!=null&&(l=u.getDimensionIndex(n));function f(b){return L_(u,c,b)}function s(b,C){MA(u,c,b,C)}for(var c,p=u.getStore();(c=i.next())!=null;){var v=u.getRawDataItem(c);if(!(v&&v.visualMap===!1))for(var d=n!=null?p.get(l,c):c,m=e(d),h=t[m],_=a[m],g=0,y=_.length;g<y;g++){var D=_[g];h[D]&&h[D].applyVisual(d,f,s)}}}}}function K9(r){var t=r.brushType,e={point:function(n){return Z9[t].point(n,e,r)},rect:function(n){return Z9[t].rect(n,e,r)}};return e}var Z9={lineX:X9(0),lineY:X9(1),rect:{point:function(r,t,e){return r&&e.boundingRect.contain(r[0],r[1])},rect:function(r,t,e){return r&&e.boundingRect.intersect(r)}},polygon:{point:function(r,t,e){return r&&e.boundingRect.contain(r[0],r[1])&&Sl(e.range,r[0],r[1])},rect:function(r,t,e){var n=e.range;if(!r||n.length<=1)return!1;var a=r.x,o=r.y,i=r.width,u=r.height,l=n[0];if(Sl(n,a,o)||Sl(n,a+i,o)||Sl(n,a,o+u)||Sl(n,a+i,o+u)||yt.create(r).contain(l[0],l[1])||Lv(a,o,a+i,o,n)||Lv(a,o,a,o+u,n)||Lv(a+i,o,a+i,o+u,n)||Lv(a,o+u,a+i,o+u,n))return!0}}};function X9(r){var t=["x","y"],e=["width","height"];return{point:function(n,a,o){if(n){var i=o.range,u=n[r];return Fg(u,i)}},rect:function(n,a,o){if(n){var i=o.range,u=[n[t[r]],n[t[r]]+n[e[r]]];return u[1]<u[0]&&u.reverse(),Fg(u[0],i)||Fg(u[1],i)||Fg(i[0],u)||Fg(i[1],u)}}}}function Fg(r,t){return t[0]<=r&&r<=t[1]}var tj=["inBrush","outOfBrush"],_P="__ecBrushSelect",gP="__ecInBrushSelectEvent";function yP(r){r.eachComponent({mainType:"brush"},function(t){var e=t.brushTargetManager=new Mg(t.option,r);e.setInputRanges(t.areas,r)})}function DP(r,t,e){var n=[],a,o;r.eachComponent({mainType:"brush"},function(i){e&&e.type==="takeGlobalCursor"&&i.setBrushOption(e.key==="brush"?e.brushOption:{brushType:!1})}),yP(r),r.eachComponent({mainType:"brush"},function(i,u){var l={brushId:i.id,brushIndex:u,brushName:i.name,areas:lt(i.areas),selected:[]};n.push(l);var f=i.option,s=f.brushLink,c=[],p=[],v=[],d=!1;u||(a=f.throttleType,o=f.throttleDelay);var m=U(i.areas,function(b){var C=abt[b.brushType],x=et({boundingRect:C?C(b):void 0},b);return x.selectors=K9(x),x}),h=Ig(i.option,tj,function(b){b.mappingMethod="fixed"});O(s)&&T(s,function(b){c[b]=1});function _(b){return s==="all"||!!c[b]}function g(b){return!!b.length}r.eachSeries(function(b,C){var x=v[C]=[];b.subType==="parallel"?y(b,C):D(b,C,x)});function y(b,C){var x=b.coordinateSystem;d=d||x.hasAxisBrushed(),_(C)&&x.eachActiveState(b.getData(),function(w,S){w==="active"&&(p[S]=1)})}function D(b,C,x){if(!(!b.brushSelector||nbt(i,C))&&(T(m,function(S){i.brushTargetManager.controlSeries(S,b,r)&&x.push(S),d=d||g(x)}),_(C)&&g(x))){var w=b.getData();w.each(function(S){ej(b,x,w,S)&&(p[S]=1)})}}r.eachSeries(function(b,C){var x={seriesId:b.id,seriesIndex:C,seriesName:b.name,dataIndex:[]};l.selected.push(x);var w=v[C],S=b.getData(),E=_(C)?function(M){return p[M]?(x.dataIndex.push(S.getRawIndex(M)),"inBrush"):"outOfBrush"}:function(M){return ej(b,w,S,M)?(x.dataIndex.push(S.getRawIndex(M)),"inBrush"):"outOfBrush"};(_(C)?d:g(w))&&Y9(tj,h,S,E)})}),ebt(t,a,o,n,e)}function ebt(r,t,e,n,a){if(a){var o=r.getZr();if(!o[gP]){o[_P]||(o[_P]=rbt);var i=ri(o,_P,e,t);i(r,n)}}}function rbt(r,t){if(!r.isDisposed()){var e=r.getZr();e[gP]=!0,r.dispatchAction({type:"brushSelect",batch:t}),e[gP]=!1}}function ej(r,t,e,n){for(var a=0,o=t.length;a<o;a++){var i=t[a];if(r.brushSelector(n,e,i.selectors,i))return!0}}function nbt(r,t){var e=r.option.seriesIndex;return e!=null&&e!=="all"&&(O(e)?wt(e,t)<0:t!==e)}var abt={rect:function(r){return rj(r.range)},polygon:function(r){for(var t,e=r.range,n=0,a=e.length;n<a;n++){t=t||[[1/0,-1/0],[1/0,-1/0]];var o=e[n];o[0]<t[0][0]&&(t[0][0]=o[0]),o[0]>t[0][1]&&(t[0][1]=o[0]),o[1]<t[1][0]&&(t[1][0]=o[1]),o[1]>t[1][1]&&(t[1][1]=o[1])}return t&&rj(t)}};function rj(r){return new yt(r[0][0],r[1][0],r[0][1]-r[0][0],r[1][1]-r[1][0])}var obt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.init=function(e,n){this.ecModel=e,this.api=n,this.model,(this._brushController=new _d(n.getZr())).on("brush",Q(this._onBrush,this)).mount()},t.prototype.render=function(e,n,a,o){this.model=e,this._updateController(e,n,a,o)},t.prototype.updateTransform=function(e,n,a,o){yP(n),this._updateController(e,n,a,o)},t.prototype.updateVisual=function(e,n,a,o){this.updateTransform(e,n,a,o)},t.prototype.updateView=function(e,n,a,o){this._updateController(e,n,a,o)},t.prototype._updateController=function(e,n,a,o){(!o||o.$from!==e.id)&&this._brushController.setPanels(e.brushTargetManager.makePanelOpts(a)).enableBrush(e.brushOption).updateCovers(e.areas.slice())},t.prototype.dispose=function(){this._brushController.dispose()},t.prototype._onBrush=function(e){var n=this.model.id,a=this.model.brushTargetManager.setOutputRanges(e.areas,this.ecModel);(!e.isEnd||e.removeOnClick)&&this.api.dispatchAction({type:"brush",brushId:n,areas:lt(a),$from:n}),e.isEnd&&this.api.dispatchAction({type:"brushEnd",brushId:n,areas:lt(a),$from:n})},t.type="brush",t})(Ee),nj=obt;var ibt="#ddd",ubt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.areas=[],e.brushOption={},e}return t.prototype.optionUpdated=function(e,n){var a=this.option;!n&&yx(a,e,["inBrush","outOfBrush"]);var o=a.inBrush=a.inBrush||{};a.outOfBrush=a.outOfBrush||{color:ibt},o.hasOwnProperty("liftZ")||(o.liftZ=5)},t.prototype.setAreas=function(e){e&&(this.areas=U(e,function(n){return aj(this.option,n)},this))},t.prototype.setBrushOption=function(e){this.brushOption=aj(this.option,e),this.brushType=this.brushOption.brushType},t.type="brush",t.dependencies=["geo","grid","xAxis","yAxis","parallel","series"],t.defaultOption={seriesIndex:"all",brushType:"rect",brushMode:"single",transformable:!0,brushStyle:{borderWidth:1,color:"rgba(210,219,238,0.3)",borderColor:"#D2DBEE"},throttleType:"fixRate",throttleDelay:0,removeOnClick:!0,z:1e4},t})(Gt);function aj(r,t){return Et({brushType:r.brushType,brushMode:r.brushMode,transformable:r.transformable,brushStyle:new Te(r.brushStyle).getItemStyle(),removeOnClick:r.removeOnClick,z:r.z},t,!0)}var oj=ubt;var lbt=["rect","polygon","lineX","lineY","keep","clear"],fbt=(function(r){A(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return t.prototype.render=function(e,n,a){var o,i,u;n.eachComponent({mainType:"brush"},function(l){o=l.brushType,i=l.brushOption.brushMode||"single",u=u||!!l.areas.length}),this._brushType=o,this._brushMode=i,T(e.get("type",!0),function(l){e.setIconStatus(l,(l==="keep"?i==="multiple":l==="clear"?u:l===o)?"emphasis":"normal")})},t.prototype.updateView=function(e,n,a){this.render(e,n,a)},t.prototype.getIcons=function(){var e=this.model,n=e.get("icon",!0),a={};return T(e.get("type",!0),function(o){n[o]&&(a[o]=n[o])}),a},t.prototype.onclick=function(e,n,a){var o=this._brushType,i=this._brushMode;a==="clear"?(n.dispatchAction({type:"axisAreaSelect",intervals:[]}),n.dispatchAction({type:"brush",command:"clear",areas:[]})):n.dispatchAction({type:"takeGlobalCursor",key:"brush",brushOption:{brushType:a==="keep"?o:o===a?!1:a,brushMode:a==="keep"?i==="multiple"?"single":"multiple":i}})},t.getDefaultOption=function(e){var n={show:!0,type:lbt.slice(),icon:{rect:"M7.3,34.7 M0.4,10V-0.2h9.8 M89.6,10V-0.2h-9.8 M0.4,60v10.2h9.8 M89.6,60v10.2h-9.8 M12.3,22.4V10.5h13.1 M33.6,10.5h7.8 M49.1,10.5h7.8 M77.5,22.4V10.5h-13 M12.3,31.1v8.2 M77.7,31.1v8.2 M12.3,47.6v11.9h13.1 M33.6,59.5h7.6 M49.1,59.5 h7.7 M77.5,47.6v11.9h-13",polygon:"M55.2,34.9c1.7,0,3.1,1.4,3.1,3.1s-1.4,3.1-3.1,3.1 s-3.1-1.4-3.1-3.1S53.5,34.9,55.2,34.9z M50.4,51c1.7,0,3.1,1.4,3.1,3.1c0,1.7-1.4,3.1-3.1,3.1c-1.7,0-3.1-1.4-3.1-3.1 C47.3,52.4,48.7,51,50.4,51z M55.6,37.1l1.5-7.8 M60.1,13.5l1.6-8.7l-7.8,4 M59,19l-1,5.3 M24,16.1l6.4,4.9l6.4-3.3 M48.5,11.6 l-5.9,3.1 M19.1,12.8L9.7,5.1l1.1,7.7 M13.4,29.8l1,7.3l6.6,1.6 M11.6,18.4l1,6.1 M32.8,41.9 M26.6,40.4 M27.3,40.2l6.1,1.6 M49.9,52.1l-5.6-7.6l-4.9-1.2",lineX:"M15.2,30 M19.7,15.6V1.9H29 M34.8,1.9H40.4 M55.3,15.6V1.9H45.9 M19.7,44.4V58.1H29 M34.8,58.1H40.4 M55.3,44.4 V58.1H45.9 M12.5,20.3l-9.4,9.6l9.6,9.8 M3.1,29.9h16.5 M62.5,20.3l9.4,9.6L62.3,39.7 M71.9,29.9H55.4",lineY:"M38.8,7.7 M52.7,12h13.2v9 M65.9,26.6V32 M52.7,46.3h13.2v-9 M24.9,12H11.8v9 M11.8,26.6V32 M24.9,46.3H11.8v-9 M48.2,5.1l-9.3-9l-9.4,9.2 M38.9-3.9V12 M48.2,53.3l-9.3,9l-9.4-9.2 M38.9,62.3V46.4",keep:"M4,10.5V1h10.3 M20.7,1h6.1 M33,1h6.1 M55.4,10.5V1H45.2 M4,17.3v6.6 M55.6,17.3v6.6 M4,30.5V40h10.3 M20.7,40 h6.1 M33,40h6.1 M55.4,30.5V40H45.2 M21,18.9h62.9v48.6H21V18.9z",clear:"M22,14.7l30.9,31 M52.9,14.7L22,45.7 M4.7,16.8V4.2h13.1 M26,4.2h7.8 M41.6,4.2h7.8 M70.3,16.8V4.2H57.2 M4.7,25.9v8.6 M70.3,25.9v8.6 M4.7,43.2v12.6h13.1 M26,55.8h7.8 M41.6,55.8h7.8 M70.3,43.2v12.6H57.2"},title:e.getLocaleModel().get(["toolbox","brush","title"])};return n},t})(wn),ij=fbt;function bP(r){r.registerComponentView(nj),r.registerComponentModel(oj),r.registerPreprocessor(hP),r.registerVisual(r.PRIORITY.VISUAL.BRUSH,DP),r.registerAction({type:"brush",event:"brush",update:"updateVisual"},function(t,e){e.eachComponent({mainType:"brush",query:t},function(n){n.setAreas(t.areas)})}),r.registerAction({type:"brushSelect",event:"brushSelected",update:"none"},Ye),r.registerAction({type:"brushEnd",event:"brushEnd",update:"none"},Ye),ns("brush",ij)}var sbt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.layoutMode={type:"box",ignoreSize:!0},e}return t.type="title",t.defaultOption={z:6,show:!0,text:"",target:"blank",subtext:"",subtarget:"blank",left:0,top:0,backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",borderWidth:0,padding:5,itemGap:10,textStyle:{fontSize:18,fontWeight:"bold",color:"#464646"},subtextStyle:{fontSize:12,color:"#6E7079"}},t})(Gt),cbt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.render=function(e,n,a){if(this.group.removeAll(),!!e.get("show")){var o=this.group,i=e.getModel("textStyle"),u=e.getModel("subtextStyle"),l=e.get("textAlign"),f=Tt(e.get("textBaseline"),e.get("textVerticalAlign")),s=new Wt({style:Re(i,{text:e.get("text"),fill:i.getTextColor()},{disableBox:!0}),z2:10}),c=s.getBoundingRect(),p=e.get("subtext"),v=new Wt({style:Re(u,{text:p,fill:u.getTextColor(),y:c.height+e.get("itemGap"),verticalAlign:"top"},{disableBox:!0}),z2:10}),d=e.get("link"),m=e.get("sublink"),h=e.get("triggerEvent",!0);s.silent=!d&&!h,v.silent=!m&&!h,d&&s.on("click",function(){Ec(d,"_"+e.get("target"))}),m&&v.on("click",function(){Ec(m,"_"+e.get("subtarget"))}),vt(s).eventData=vt(v).eventData=h?{componentType:"title",componentIndex:e.componentIndex}:null,o.add(s),p&&o.add(v);var _=o.getBoundingRect(),g=e.getBoxLayoutParams();g.width=_.width,g.height=_.height;var y=ze(g,{width:a.getWidth(),height:a.getHeight()},e.get("padding"));l||(l=e.get("left")||e.get("right"),l==="middle"&&(l="center"),l==="right"?y.x+=y.width:l==="center"&&(y.x+=y.width/2)),f||(f=e.get("top")||e.get("bottom"),f==="center"&&(f="middle"),f==="bottom"?y.y+=y.height:f==="middle"&&(y.y+=y.height/2),f=f||"top"),o.x=y.x,o.y=y.y,o.markRedraw();var D={align:l,verticalAlign:f};s.setStyle(D),v.setStyle(D),_=o.getBoundingRect();var b=y.margin,C=e.getItemStyle(["color","opacity"]);C.fill=e.get("backgroundColor");var x=new Rt({shape:{x:_.x-b[3],y:_.y-b[0],width:_.width+b[1]+b[3],height:_.height+b[0]+b[2],r:e.get("borderRadius")},style:C,subPixelOptimize:!0,silent:!0});o.add(x)}},t.type="title",t})(Ee);function CP(r){r.registerComponentModel(sbt),r.registerComponentView(cbt)}var pbt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.layoutMode="box",e}return t.prototype.init=function(e,n,a){this.mergeDefaultAndTheme(e,a),this._initData()},t.prototype.mergeOption=function(e){r.prototype.mergeOption.apply(this,arguments),this._initData()},t.prototype.setCurrentIndex=function(e){e==null&&(e=this.option.currentIndex);var n=this._data.count();this.option.loop?e=(e%n+n)%n:(e>=n&&(e=n-1),e<0&&(e=0)),this.option.currentIndex=e},t.prototype.getCurrentIndex=function(){return this.option.currentIndex},t.prototype.isIndexMax=function(){return this.getCurrentIndex()>=this._data.count()-1},t.prototype.setPlayState=function(e){this.option.autoPlay=!!e},t.prototype.getPlayState=function(){return!!this.option.autoPlay},t.prototype._initData=function(){var e=this.option,n=e.data||[],a=e.axisType,o=this._names=[],i;a==="category"?(i=[],T(n,function(f,s){var c=cr(Ti(f),""),p;nt(f)?(p=lt(f),p.value=s):p=s,i.push(p),o.push(c)})):i=n;var u={category:"ordinal",time:"time",value:"number"}[a]||"number",l=this._data=new wr([{name:"value",type:u}],this);l.initData(i,o)},t.prototype.getData=function(){return this._data},t.prototype.getCategories=function(){if(this.get("axisType")==="category")return this._names.slice()},t.type="timeline",t.defaultOption={z:4,show:!0,axisType:"time",realtime:!0,left:"20%",top:null,right:"20%",bottom:0,width:null,height:40,padding:5,controlPosition:"left",autoPlay:!1,rewind:!1,loop:!0,playInterval:2e3,currentIndex:0,itemStyle:{},label:{color:"#000"},data:[]},t})(Gt),TP=pbt;var uj=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.type="timeline.slider",t.defaultOption=va(TP.defaultOption,{backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",borderWidth:0,orient:"horizontal",inverse:!1,tooltip:{trigger:"item"},symbol:"circle",symbolSize:12,lineStyle:{show:!0,width:2,color:"#DAE1F5"},label:{position:"auto",show:!0,interval:"auto",rotate:0,color:"#A4B1D7"},itemStyle:{color:"#A4B1D7",borderWidth:1},checkpointStyle:{symbol:"circle",symbolSize:15,color:"#316bf3",borderColor:"#fff",borderWidth:2,shadowBlur:2,shadowOffsetX:1,shadowOffsetY:1,shadowColor:"rgba(0, 0, 0, 0.3)",animation:!0,animationDuration:300,animationEasing:"quinticInOut"},controlStyle:{show:!0,showPlayBtn:!0,showPrevBtn:!0,showNextBtn:!0,itemSize:24,itemGap:12,position:"left",playIcon:"path://M31.6,53C17.5,53,6,41.5,6,27.4S17.5,1.8,31.6,1.8C45.7,1.8,57.2,13.3,57.2,27.4S45.7,53,31.6,53z M31.6,3.3 C18.4,3.3,7.5,14.1,7.5,27.4c0,13.3,10.8,24.1,24.1,24.1C44.9,51.5,55.7,40.7,55.7,27.4C55.7,14.1,44.9,3.3,31.6,3.3z M24.9,21.3 c0-2.2,1.6-3.1,3.5-2l10.5,6.1c1.899,1.1,1.899,2.9,0,4l-10.5,6.1c-1.9,1.1-3.5,0.2-3.5-2V21.3z",stopIcon:"path://M30.9,53.2C16.8,53.2,5.3,41.7,5.3,27.6S16.8,2,30.9,2C45,2,56.4,13.5,56.4,27.6S45,53.2,30.9,53.2z M30.9,3.5C17.6,3.5,6.8,14.4,6.8,27.6c0,13.3,10.8,24.1,24.101,24.1C44.2,51.7,55,40.9,55,27.6C54.9,14.4,44.1,3.5,30.9,3.5z M36.9,35.8c0,0.601-0.4,1-0.9,1h-1.3c-0.5,0-0.9-0.399-0.9-1V19.5c0-0.6,0.4-1,0.9-1H36c0.5,0,0.9,0.4,0.9,1V35.8z M27.8,35.8 c0,0.601-0.4,1-0.9,1h-1.3c-0.5,0-0.9-0.399-0.9-1V19.5c0-0.6,0.4-1,0.9-1H27c0.5,0,0.9,0.4,0.9,1L27.8,35.8L27.8,35.8z",nextIcon:"M2,18.5A1.52,1.52,0,0,1,.92,18a1.49,1.49,0,0,1,0-2.12L7.81,9.36,1,3.11A1.5,1.5,0,1,1,3,.89l8,7.34a1.48,1.48,0,0,1,.49,1.09,1.51,1.51,0,0,1-.46,1.1L3,18.08A1.5,1.5,0,0,1,2,18.5Z",prevIcon:"M10,.5A1.52,1.52,0,0,1,11.08,1a1.49,1.49,0,0,1,0,2.12L4.19,9.64,11,15.89a1.5,1.5,0,1,1-2,2.22L1,10.77A1.48,1.48,0,0,1,.5,9.68,1.51,1.51,0,0,1,1,8.58L9,.92A1.5,1.5,0,0,1,10,.5Z",prevBtnSize:18,nextBtnSize:18,color:"#A4B1D7",borderColor:"#A4B1D7",borderWidth:1},emphasis:{label:{show:!0,color:"#6f778d"},itemStyle:{color:"#316BF3"},controlStyle:{color:"#316BF3",borderColor:"#316BF3",borderWidth:2}},progress:{lineStyle:{color:"#316BF3"},itemStyle:{color:"#316BF3"},label:{color:"#6f778d"}},data:[]}),t})(TP);Ve(uj,Gv.prototype);var lj=uj;var vbt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.type="timeline",t})(Ee),fj=vbt;var dbt=(function(r){A(t,r);function t(e,n,a,o){var i=r.call(this,e,n,a)||this;return i.type=o||"value",i}return t.prototype.getLabelModel=function(){return this.model.getModel("label")},t.prototype.isHorizontal=function(){return this.model.get("orient")==="horizontal"},t})(Nn),sj=dbt;var xP=Math.PI,cj=St(),mbt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.init=function(e,n){this.api=n},t.prototype.render=function(e,n,a){if(this.model=e,this.api=a,this.ecModel=n,this.group.removeAll(),e.get("show",!0)){var o=this._layout(e,a),i=this._createGroup("_mainGroup"),u=this._createGroup("_labelGroup"),l=this._axis=this._createAxis(o,e);e.formatTooltip=function(f){var s=l.scale.getLabel({value:f});return nr("nameValue",{noName:!0,value:s})},T(["AxisLine","AxisTick","Control","CurrentPointer"],function(f){this["_render"+f](o,i,l,e)},this),this._renderAxisLabel(o,u,l,e),this._position(o,e)}this._doPlayStop(),this._updateTicksStatus()},t.prototype.remove=function(){this._clearTimer(),this.group.removeAll()},t.prototype.dispose=function(){this._clearTimer()},t.prototype._layout=function(e,n){var a=e.get(["label","position"]),o=e.get("orient"),i=_bt(e,n),u;a==null||a==="auto"?u=o==="horizontal"?i.y+i.height/2<n.getHeight()/2?"-":"+":i.x+i.width/2<n.getWidth()/2?"+":"-":V(a)?u={horizontal:{top:"-",bottom:"+"},vertical:{left:"-",right:"+"}}[o][a]:u=a;var l={horizontal:"center",vertical:u>=0||u==="+"?"left":"right"},f={horizontal:u>=0||u==="+"?"top":"bottom",vertical:"middle"},s={horizontal:0,vertical:xP/2},c=o==="vertical"?i.height:i.width,p=e.getModel("controlStyle"),v=p.get("show",!0),d=v?p.get("itemSize"):0,m=v?p.get("itemGap"):0,h=d+m,_=e.get(["label","rotate"])||0;_=_*xP/180;var g,y,D,b=p.get("position",!0),C=v&&p.get("showPlayBtn",!0),x=v&&p.get("showPrevBtn",!0),w=v&&p.get("showNextBtn",!0),S=0,E=c;b==="left"||b==="bottom"?(C&&(g=[0,0],S+=h),x&&(y=[S,0],S+=h),w&&(D=[E-d,0],E-=h)):(C&&(g=[E-d,0],E-=h),x&&(y=[0,0],S+=h),w&&(D=[E-d,0],E-=h));var M=[S,E];return e.get("inverse")&&M.reverse(),{viewRect:i,mainLength:c,orient:o,rotation:s[o],labelRotation:_,labelPosOpt:u,labelAlign:e.get(["label","align"])||l[o],labelBaseline:e.get(["label","verticalAlign"])||e.get(["label","baseline"])||f[o],playPosition:g,prevBtnPosition:y,nextBtnPosition:D,axisExtent:M,controlSize:d,controlGap:m}},t.prototype._position=function(e,n){var a=this._mainGroup,o=this._labelGroup,i=e.viewRect;if(e.orient==="vertical"){var u=jr(),l=i.x,f=i.y+i.height;$n(u,u,[-l,-f]),ja(u,u,-xP/2),$n(u,u,[l,f]),i=i.clone(),i.applyTransform(u)}var s=g(i),c=g(a.getBoundingRect()),p=g(o.getBoundingRect()),v=[a.x,a.y],d=[o.x,o.y];d[0]=v[0]=s[0][0];var m=e.labelPosOpt;if(m==null||V(m)){var h=m==="+"?0:1;y(v,c,s,1,h),y(d,p,s,1,1-h)}else{var h=m>=0?0:1;y(v,c,s,1,h),d[1]=v[1]+m}a.setPosition(v),o.setPosition(d),a.rotation=o.rotation=e.rotation,_(a),_(o);function _(D){D.originX=s[0][0]-D.x,D.originY=s[1][0]-D.y}function g(D){return[[D.x,D.x+D.width],[D.y,D.y+D.height]]}function y(D,b,C,x,w){D[x]+=C[x][w]-b[x][w]}},t.prototype._createAxis=function(e,n){var a=n.getData(),o=n.get("axisType"),i=hbt(n,o);i.getTicks=function(){return a.mapArray(["value"],function(f){return{value:f}})};var u=a.getDataExtent("value");i.setExtent(u[0],u[1]),i.calcNiceTicks();var l=new sj("value",i,e.axisExtent,o);return l.model=n,l},t.prototype._createGroup=function(e){var n=this[e]=new at;return this.group.add(n),n},t.prototype._renderAxisLine=function(e,n,a,o){var i=a.getExtent();if(o.get(["lineStyle","show"])){var u=new mr({shape:{x1:i[0],y1:0,x2:i[1],y2:0},style:N({lineCap:"round"},o.getModel("lineStyle").getLineStyle()),silent:!0,z2:1});n.add(u);var l=this._progressLine=new mr({shape:{x1:i[0],x2:this._currentPointer?this._currentPointer.x:i[0],y1:0,y2:0},style:et({lineCap:"round",lineWidth:u.style.lineWidth},o.getModel(["progress","lineStyle"]).getLineStyle()),silent:!0,z2:1});n.add(l)}},t.prototype._renderAxisTick=function(e,n,a,o){var i=this,u=o.getData(),l=a.scale.getTicks();this._tickSymbols=[],T(l,function(f){var s=a.dataToCoord(f.value),c=u.getItemModel(f.value),p=c.getModel("itemStyle"),v=c.getModel(["emphasis","itemStyle"]),d=c.getModel(["progress","itemStyle"]),m={x:s,y:0,onclick:Q(i._changeTimeline,i,f.value)},h=pj(c,p,n,m);h.ensureState("emphasis").style=v.getItemStyle(),h.ensureState("progress").style=d.getItemStyle(),yu(h);var _=vt(h);c.get("tooltip")?(_.dataIndex=f.value,_.dataModel=o):_.dataIndex=_.dataModel=null,i._tickSymbols.push(h)})},t.prototype._renderAxisLabel=function(e,n,a,o){var i=this,u=a.getLabelModel();if(u.get("show")){var l=o.getData(),f=a.getViewLabels();this._tickLabels=[],T(f,function(s){var c=s.tickValue,p=l.getItemModel(c),v=p.getModel("label"),d=p.getModel(["emphasis","label"]),m=p.getModel(["progress","label"]),h=a.dataToCoord(s.tickValue),_=new Wt({x:h,y:0,rotation:e.labelRotation-e.rotation,onclick:Q(i._changeTimeline,i,c),silent:!1,style:Re(v,{text:s.formattedLabel,align:e.labelAlign,verticalAlign:e.labelBaseline})});_.ensureState("emphasis").style=Re(d),_.ensureState("progress").style=Re(m),n.add(_),yu(_),cj(_).dataIndex=c,i._tickLabels.push(_)})}},t.prototype._renderControl=function(e,n,a,o){var i=e.controlSize,u=e.rotation,l=o.getModel("controlStyle").getItemStyle(),f=o.getModel(["emphasis","controlStyle"]).getItemStyle(),s=o.getPlayState(),c=o.get("inverse",!0);p(e.nextBtnPosition,"next",Q(this._changeTimeline,this,c?"-":"+")),p(e.prevBtnPosition,"prev",Q(this._changeTimeline,this,c?"+":"-")),p(e.playPosition,s?"stop":"play",Q(this._handlePlayClick,this,!s),!0);function p(v,d,m,h){if(v){var _=qn(Tt(o.get(["controlStyle",d+"BtnSize"]),i),i),g=[0,-_/2,_,_],y=gbt(o,d+"Icon",g,{x:v[0],y:v[1],originX:i/2,originY:0,rotation:h?-u:0,rectHover:!0,style:l,onclick:m});y.ensureState("emphasis").style=f,n.add(y),yu(y)}}},t.prototype._renderCurrentPointer=function(e,n,a,o){var i=o.getData(),u=o.getCurrentIndex(),l=i.getItemModel(u).getModel("checkpointStyle"),f=this,s={onCreate:function(c){c.draggable=!0,c.drift=Q(f._handlePointerDrag,f),c.ondragend=Q(f._handlePointerDragend,f),vj(c,f._progressLine,u,a,o,!0)},onUpdate:function(c){vj(c,f._progressLine,u,a,o)}};this._currentPointer=pj(l,l,this._mainGroup,{},this._currentPointer,s)},t.prototype._handlePlayClick=function(e){this._clearTimer(),this.api.dispatchAction({type:"timelinePlayChange",playState:e,from:this.uid})},t.prototype._handlePointerDrag=function(e,n,a){this._clearTimer(),this._pointerChangeTimeline([a.offsetX,a.offsetY])},t.prototype._handlePointerDragend=function(e){this._pointerChangeTimeline([e.offsetX,e.offsetY],!0)},t.prototype._pointerChangeTimeline=function(e,n){var a=this._toAxisCoord(e)[0],o=this._axis,i=fn(o.getExtent().slice());a>i[1]&&(a=i[1]),a<i[0]&&(a=i[0]),this._currentPointer.x=a,this._currentPointer.markRedraw();var u=this._progressLine;u&&(u.shape.x2=a,u.dirty());var l=this._findNearestTick(a),f=this.model;(n||l!==f.getCurrentIndex()&&f.get("realtime"))&&this._changeTimeline(l)},t.prototype._doPlayStop=function(){var e=this;this._clearTimer(),this.model.getPlayState()&&(this._timer=setTimeout(function(){var n=e.model;e._changeTimeline(n.getCurrentIndex()+(n.get("rewind",!0)?-1:1))},this.model.get("playInterval")))},t.prototype._toAxisCoord=function(e){var n=this._mainGroup.getLocalTransform();return jn(e,n,!0)},t.prototype._findNearestTick=function(e){var n=this.model.getData(),a=1/0,o,i=this._axis;return n.each(["value"],function(u,l){var f=i.dataToCoord(u),s=Math.abs(f-e);s<a&&(a=s,o=l)}),o},t.prototype._clearTimer=function(){this._timer&&(clearTimeout(this._timer),this._timer=null)},t.prototype._changeTimeline=function(e){var n=this.model.getCurrentIndex();e==="+"?e=n+1:e==="-"&&(e=n-1),this.api.dispatchAction({type:"timelineChange",currentIndex:e,from:this.uid})},t.prototype._updateTicksStatus=function(){var e=this.model.getCurrentIndex(),n=this._tickSymbols,a=this._tickLabels;if(n)for(var o=0;o<n.length;o++)n&&n[o]&&n[o].toggleState("progress",o<e);if(a)for(var o=0;o<a.length;o++)a&&a[o]&&a[o].toggleState("progress",cj(a[o]).dataIndex<=e)},t.type="timeline.slider",t})(fj);function hbt(r,t){if(t=t||r.get("type"),t)switch(t){case"category":return new J_({ordinalMeta:r.getCategories(),extent:[1/0,-1/0]});case"time":return new NC({locale:r.ecModel.getLocaleModel(),useUTC:r.ecModel.get("useUTC")});default:return new lo}}function _bt(r,t){return ze(r.getBoxLayoutParams(),{width:t.getWidth(),height:t.getHeight()},r.get("padding"))}function gbt(r,t,e,n){var a=n.style,o=gl(r.get(["controlStyle",t]),n||{},new yt(e[0],e[1],e[2],e[3]));return a&&o.setStyle(a),o}function pj(r,t,e,n,a,o){var i=t.get("color");if(a)a.setColor(i),e.add(a),o&&o.onUpdate(a);else{var u=r.get("symbol");a=We(u,-1,-1,2,2,i),a.setStyle("strokeNoScale",!0),e.add(a),o&&o.onCreate(a)}var l=t.getItemStyle(["color"]);a.setStyle(l),n=Et({rectHover:!0,z2:100},n,!0);var f=Pi(r.get("symbolSize"));n.scaleX=f[0]/2,n.scaleY=f[1]/2;var s=Eo(r.get("symbolOffset"),f);s&&(n.x=(n.x||0)+s[0],n.y=(n.y||0)+s[1]);var c=r.get("symbolRotate");return n.rotation=(c||0)*Math.PI/180||0,a.attr(n),a.updateTransform(),a}function vj(r,t,e,n,a,o){if(!r.dragging){var i=a.getModel("checkpointStyle"),u=n.dataToCoord(a.getData().get("value",e));if(o||!i.get("animation",!0))r.attr({x:u,y:0}),t&&t.attr({shape:{x2:u}});else{var l={duration:i.get("animationDuration",!0),easing:i.get("animationEasing",!0)};r.stopAnimation(null,!0),r.animateTo({x:u,y:0},l),t&&t.animateTo({shape:{x2:u}},l)}}}var dj=mbt;function mj(r){r.registerAction({type:"timelineChange",event:"timelineChanged",update:"prepareAndUpdate"},function(t,e,n){var a=e.getComponent("timeline");return a&&t.currentIndex!=null&&(a.setCurrentIndex(t.currentIndex),!a.get("loop",!0)&&a.isIndexMax()&&a.getPlayState()&&(a.setPlayState(!1),n.dispatchAction({type:"timelinePlayChange",playState:!1,from:t.from}))),e.resetOption("timeline",{replaceMerge:a.get("replaceMerge",!0)}),et({currentIndex:a.option.currentIndex},t)}),r.registerAction({type:"timelinePlayChange",event:"timelinePlayChanged",update:"update"},function(t,e){var n=e.getComponent("timeline");n&&t.playState!=null&&n.setPlayState(t.playState)})}function wP(r){var t=r&&r.timeline;O(t)||(t=t?[t]:[]),T(t,function(e){e&&ybt(e)})}function ybt(r){var t=r.type,e={number:"value",time:"time"};if(e[t]&&(r.axisType=e[t],delete r.type),hj(r),Kc(r,"controlPosition")){var n=r.controlStyle||(r.controlStyle={});Kc(n,"position")||(n.position=r.controlPosition),n.position==="none"&&!Kc(n,"show")&&(n.show=!1,delete n.position),delete r.controlPosition}T(r.data||[],function(a){nt(a)&&!O(a)&&(!Kc(a,"value")&&Kc(a,"name")&&(a.value=a.name),hj(a))})}function hj(r){var t=r.itemStyle||(r.itemStyle={}),e=t.emphasis||(t.emphasis={}),n=r.label||r.label||{},a=n.normal||(n.normal={}),o={normal:1,emphasis:1};T(n,function(i,u){!o[u]&&!Kc(a,u)&&(a[u]=i)}),e.label&&!Kc(n,"emphasis")&&(n.emphasis=e.label,delete e.label)}function Kc(r,t){return r.hasOwnProperty(t)}function SP(r){r.registerComponentModel(lj),r.registerComponentView(dj),r.registerSubTypeDefaulter("timeline",function(){return"slider"}),mj(r),r.registerPreprocessor(wP)}function tp(r,t){if(!r)return!1;for(var e=O(r)?r:[r],n=0;n<e.length;n++)if(e[n]&&e[n][t])return!0;return!1}function bx(r){Co(r,"label",["show"])}var Cx=St(),_j=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.createdBySelf=!1,e}return t.prototype.init=function(e,n,a){this.mergeDefaultAndTheme(e,a),this._mergeOption(e,a,!1,!0)},t.prototype.isAnimationEnabled=function(){if(Kt.node)return!1;var e=this.__hostSeries;return this.getShallow("animation")&&e&&e.isAnimationEnabled()},t.prototype.mergeOption=function(e,n){this._mergeOption(e,n,!1,!1)},t.prototype._mergeOption=function(e,n,a,o){var i=this.mainType;a||n.eachSeries(function(u){var l=u.get(this.mainType,!0),f=Cx(u)[i];if(!l||!l.data){Cx(u)[i]=null;return}f?f._mergeOption(l,n,!0):(o&&bx(l),T(l.data,function(s){s instanceof Array?(bx(s[0]),bx(s[1])):bx(s)}),f=this.createMarkerModelFromSeries(l,this,n),N(f,{mainType:this.mainType,seriesIndex:u.seriesIndex,name:u.name,createdBySelf:!0}),f.__hostSeries=u),Cx(u)[i]=f},this)},t.prototype.formatTooltip=function(e,n,a){var o=this.getData(),i=this.getRawValue(e),u=o.getName(e);return nr("section",{header:this.name,blocks:[nr("nameValue",{name:u,value:i,noName:!u,noValue:i==null})]})},t.prototype.getData=function(){return this._data},t.prototype.setData=function(e){this._data=e},t.getMarkerModelFromSeries=function(e,n){return Cx(e)[n]},t.type="marker",t.dependencies=["series","grid","polar","geo"],t})(Gt);Ve(_j,Gv.prototype);var Ra=_j;var Dbt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.createMarkerModelFromSeries=function(e,n,a){return new t(e,n,a)},t.type="markPoint",t.defaultOption={z:5,symbol:"pin",symbolSize:50,tooltip:{trigger:"item"},label:{show:!0,position:"inside"},itemStyle:{borderWidth:2},emphasis:{label:{show:!0}}},t})(Ra),gj=Dbt;function MP(r){return!(isNaN(parseFloat(r.x))&&isNaN(parseFloat(r.y)))}function bbt(r){return!isNaN(parseFloat(r.x))&&!isNaN(parseFloat(r.y))}function Tx(r,t,e,n,a,o){var i=[],u=Mo(t,n),l=u?t.getCalculationInfo("stackResultDimension"):n,f=Sx(t,l,r),s=t.indicesOfNearest(l,f)[0];i[a]=t.get(e,s),i[o]=t.get(l,s);var c=t.get(n,s),p=Ca(t.get(n,s));return p=Math.min(p,20),p>=0&&(i[o]=+i[o].toFixed(p)),[i,c]}var EP={min:gt(Tx,"min"),max:gt(Tx,"max"),average:gt(Tx,"average"),median:gt(Tx,"median")};function os(r,t){if(t){var e=r.getData(),n=r.coordinateSystem,a=n&&n.dimensions;if(!bbt(t)&&!O(t.coord)&&O(a)){var o=AP(t,e,n,r);if(t=lt(t),t.type&&EP[t.type]&&o.baseAxis&&o.valueAxis){var i=wt(a,o.baseAxis.dim),u=wt(a,o.valueAxis.dim),l=EP[t.type](e,o.baseDataDim,o.valueDataDim,i,u);t.coord=l[0],t.value=l[1]}else t.coord=[t.xAxis!=null?t.xAxis:t.radiusAxis,t.yAxis!=null?t.yAxis:t.angleAxis]}if(t.coord==null||!O(a))t.coord=[];else for(var f=t.coord,s=0;s<2;s++)EP[f[s]]&&(f[s]=Sx(e,e.mapDimension(a[s]),f[s]));return t}}function AP(r,t,e,n){var a={};return r.valueIndex!=null||r.valueDim!=null?(a.valueDataDim=r.valueIndex!=null?t.getDimension(r.valueIndex):r.valueDim,a.valueAxis=e.getAxis(Cbt(n,a.valueDataDim)),a.baseAxis=e.getOtherAxis(a.valueAxis),a.baseDataDim=t.mapDimension(a.baseAxis.dim)):(a.baseAxis=n.getBaseAxis(),a.valueAxis=e.getOtherAxis(a.baseAxis),a.baseDataDim=t.mapDimension(a.baseAxis.dim),a.valueDataDim=t.mapDimension(a.valueAxis.dim)),a}function Cbt(r,t){var e=r.getData().getDimensionInfo(t);return e&&e.coordDim}function is(r,t){return r&&r.containData&&t.coord&&!MP(t)?r.containData(t.coord):!0}function yj(r,t,e){return r&&r.containZone&&t.coord&&e.coord&&!MP(t)&&!MP(e)?r.containZone(t.coord,e.coord):!0}function xx(r,t){return r?function(e,n,a,o){var i=o<2?e.coord&&e.coord[o]:e.value;return ei(i,t[o])}:function(e,n,a,o){return ei(e.value,t[o])}}function Sx(r,t,e){if(e==="average"){var n=0,a=0;return r.each(t,function(o,i){isNaN(o)||(n+=o,a++)}),n/a}else return e==="median"?r.getMedian(t):r.getDataExtent(t)[e==="max"?1:0]}var FP=St(),Tbt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.init=function(){this.markerGroupMap=Z()},t.prototype.render=function(e,n,a){var o=this,i=this.markerGroupMap;i.each(function(u){FP(u).keep=!1}),n.eachSeries(function(u){var l=Ra.getMarkerModelFromSeries(u,o.type);l&&o.renderSeries(u,l,n,a)}),i.each(function(u){!FP(u).keep&&o.group.remove(u.group)})},t.prototype.markKeep=function(e){FP(e).keep=!0},t.prototype.toggleBlurSeries=function(e,n){var a=this;T(e,function(o){var i=Ra.getMarkerModelFromSeries(o,a.type);if(i){var u=i.getData();u.eachItemGraphicEl(function(l){l&&(n?sb(l):n_(l))})}})},t.type="marker",t})(Ee),Ad=Tbt;function Dj(r,t,e){var n=t.coordinateSystem;r.each(function(a){var o=r.getItemModel(a),i,u=Y(o.get("x"),e.getWidth()),l=Y(o.get("y"),e.getHeight());if(!isNaN(u)&&!isNaN(l))i=[u,l];else if(t.getMarkerPosition)i=t.getMarkerPosition(r.getValues(r.dimensions,a));else if(n){var f=r.get(n.dimensions[0],a),s=r.get(n.dimensions[1],a);i=n.dataToPoint([f,s])}isNaN(u)||(i[0]=u),isNaN(l)||(i[1]=l),r.setItemLayout(a,i)})}var xbt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.updateTransform=function(e,n,a){n.eachSeries(function(o){var i=Ra.getMarkerModelFromSeries(o,"markPoint");i&&(Dj(i.getData(),o,a),this.markerGroupMap.get(o.id).updateLayout())},this)},t.prototype.renderSeries=function(e,n,a,o){var i=e.coordinateSystem,u=e.id,l=e.getData(),f=this.markerGroupMap,s=f.get(u)||f.set(u,new Au),c=wbt(i,e,n);n.setData(c),Dj(n.getData(),e,o),c.each(function(p){var v=c.getItemModel(p),d=v.getShallow("symbol"),m=v.getShallow("symbolSize"),h=v.getShallow("symbolRotate"),_=v.getShallow("symbolOffset"),g=v.getShallow("symbolKeepAspect");if(X(d)||X(m)||X(h)||X(_)){var y=n.getRawValue(p),D=n.getDataParams(p);X(d)&&(d=d(y,D)),X(m)&&(m=m(y,D)),X(h)&&(h=h(y,D)),X(_)&&(_=_(y,D))}var b=v.getModel("itemStyle").getItemStyle(),C=Tu(l,"color");b.fill||(b.fill=C),c.setItemVisual(p,{symbol:d,symbolSize:m,symbolRotate:h,symbolOffset:_,symbolKeepAspect:g,style:b})}),s.updateData(c),this.group.add(s.group),c.eachItemGraphicEl(function(p){p.traverse(function(v){vt(v).dataModel=n})}),this.markKeep(s),s.group.silent=n.get("silent")||e.get("silent")},t.type="markPoint",t})(Ad);function wbt(r,t,e){var n;r?n=U(r&&r.dimensions,function(u){var l=t.getData().getDimensionInfo(t.getData().mapDimension(u))||{};return N(N({},l),{name:u,ordinalMeta:null})}):n=[{name:"value",type:"float"}];var a=new wr(n,e),o=U(e.get("data"),gt(os,t));r&&(o=de(o,gt(is,r)));var i=xx(!!r,n);return a.initData(o,null,i),a}var bj=xbt;function LP(r){r.registerComponentModel(gj),r.registerComponentView(bj),r.registerPreprocessor(function(t){tp(t.series,"markPoint")&&(t.markPoint=t.markPoint||{})})}var Sbt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.createMarkerModelFromSeries=function(e,n,a){return new t(e,n,a)},t.type="markLine",t.defaultOption={z:5,symbol:["circle","arrow"],symbolSize:[8,16],symbolOffset:0,precision:2,tooltip:{trigger:"item"},label:{show:!0,position:"end",distance:5},lineStyle:{type:"dashed"},emphasis:{label:{show:!0},lineStyle:{width:3}},animationEasing:"linear"},t})(Ra),Cj=Sbt;var Ex=St(),Ebt=function(r,t,e,n){var a=r.getData(),o;if(O(n))o=n;else{var i=n.type;if(i==="min"||i==="max"||i==="average"||i==="median"||n.xAxis!=null||n.yAxis!=null){var u=void 0,l=void 0;if(n.yAxis!=null||n.xAxis!=null)u=t.getAxis(n.yAxis!=null?"y":"x"),l=ir(n.yAxis,n.xAxis);else{var f=AP(n,a,t,r);u=f.valueAxis;var s=AC(a,f.valueDataDim);l=Sx(a,s,i)}var c=u.dim==="x"?0:1,p=1-c,v=lt(n),d={coord:[]};v.type=null,v.coord=[],v.coord[p]=-1/0,d.coord[p]=1/0;var m=e.get("precision");m>=0&&Nt(l)&&(l=+l.toFixed(Math.min(m,20))),v.coord[c]=d.coord[c]=l,o=[v,d,{type:i,valueIndex:n.valueIndex,value:l}]}else o=[]}var h=[os(r,o[0]),os(r,o[1]),N({},o[2])];return h[2].type=h[2].type||null,Et(h[2],h[0]),Et(h[2],h[1]),h};function Mx(r){return!isNaN(r)&&!isFinite(r)}function Tj(r,t,e,n){var a=1-r,o=n.dimensions[r];return Mx(t[a])&&Mx(e[a])&&t[r]===e[r]&&n.getAxis(o).containData(t[r])}function Mbt(r,t){if(r.type==="cartesian2d"){var e=t[0].coord,n=t[1].coord;if(e&&n&&(Tj(1,e,n,r)||Tj(0,e,n,r)))return!0}return is(r,t[0])&&is(r,t[1])}function RP(r,t,e,n,a){var o=n.coordinateSystem,i=r.getItemModel(t),u,l=Y(i.get("x"),a.getWidth()),f=Y(i.get("y"),a.getHeight());if(!isNaN(l)&&!isNaN(f))u=[l,f];else{if(n.getMarkerPosition)u=n.getMarkerPosition(r.getValues(r.dimensions,t));else{var s=o.dimensions,c=r.get(s[0],t),p=r.get(s[1],t);u=o.dataToPoint([c,p])}if(oi(o,"cartesian2d")){var v=o.getAxis("x"),d=o.getAxis("y"),s=o.dimensions;Mx(r.get(s[0],t))?u[0]=v.toGlobalCoord(v.getExtent()[e?0:1]):Mx(r.get(s[1],t))&&(u[1]=d.toGlobalCoord(d.getExtent()[e?0:1]))}isNaN(l)||(u[0]=l),isNaN(f)||(u[1]=f)}r.setItemLayout(t,u)}var Abt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.updateTransform=function(e,n,a){n.eachSeries(function(o){var i=Ra.getMarkerModelFromSeries(o,"markLine");if(i){var u=i.getData(),l=Ex(i).from,f=Ex(i).to;l.each(function(s){RP(l,s,!0,o,a),RP(f,s,!1,o,a)}),u.each(function(s){u.setItemLayout(s,[l.getItemLayout(s),f.getItemLayout(s)])}),this.markerGroupMap.get(o.id).updateLayout()}},this)},t.prototype.renderSeries=function(e,n,a,o){var i=e.coordinateSystem,u=e.id,l=e.getData(),f=this.markerGroupMap,s=f.get(u)||f.set(u,new pd);this.group.add(s.group);var c=Ibt(i,e,n),p=c.from,v=c.to,d=c.line;Ex(n).from=p,Ex(n).to=v,n.setData(d);var m=n.get("symbol"),h=n.get("symbolSize"),_=n.get("symbolRotate"),g=n.get("symbolOffset");O(m)||(m=[m,m]),O(h)||(h=[h,h]),O(_)||(_=[_,_]),O(g)||(g=[g,g]),c.from.each(function(D){y(p,D,!0),y(v,D,!1)}),d.each(function(D){var b=d.getItemModel(D).getModel("lineStyle").getLineStyle();d.setItemLayout(D,[p.getItemLayout(D),v.getItemLayout(D)]),b.stroke==null&&(b.stroke=p.getItemVisual(D,"style").fill),d.setItemVisual(D,{fromSymbolKeepAspect:p.getItemVisual(D,"symbolKeepAspect"),fromSymbolOffset:p.getItemVisual(D,"symbolOffset"),fromSymbolRotate:p.getItemVisual(D,"symbolRotate"),fromSymbolSize:p.getItemVisual(D,"symbolSize"),fromSymbol:p.getItemVisual(D,"symbol"),toSymbolKeepAspect:v.getItemVisual(D,"symbolKeepAspect"),toSymbolOffset:v.getItemVisual(D,"symbolOffset"),toSymbolRotate:v.getItemVisual(D,"symbolRotate"),toSymbolSize:v.getItemVisual(D,"symbolSize"),toSymbol:v.getItemVisual(D,"symbol"),style:b})}),s.updateData(d),c.line.eachItemGraphicEl(function(D){vt(D).dataModel=n,D.traverse(function(b){vt(b).dataModel=n})});function y(D,b,C){var x=D.getItemModel(b);RP(D,b,C,e,o);var w=x.getModel("itemStyle").getItemStyle();w.fill==null&&(w.fill=Tu(l,"color")),D.setItemVisual(b,{symbolKeepAspect:x.get("symbolKeepAspect"),symbolOffset:Tt(x.get("symbolOffset",!0),g[C?0:1]),symbolRotate:Tt(x.get("symbolRotate",!0),_[C?0:1]),symbolSize:Tt(x.get("symbolSize"),h[C?0:1]),symbol:Tt(x.get("symbol",!0),m[C?0:1]),style:w})}this.markKeep(s),s.group.silent=n.get("silent")||e.get("silent")},t.type="markLine",t})(Ad);function Ibt(r,t,e){var n;r?n=U(r&&r.dimensions,function(f){var s=t.getData().getDimensionInfo(t.getData().mapDimension(f))||{};return N(N({},s),{name:f,ordinalMeta:null})}):n=[{name:"value",type:"float"}];var a=new wr(n,e),o=new wr(n,e),i=new wr([],e),u=U(e.get("data"),gt(Ebt,t,r,e));r&&(u=de(u,gt(Mbt,r)));var l=xx(!!r,n);return a.initData(U(u,function(f){return f[0]}),null,l),o.initData(U(u,function(f){return f[1]}),null,l),i.initData(U(u,function(f){return f[2]})),i.hasItemOption=!0,{from:a,to:o,line:i}}var xj=Abt;function PP(r){r.registerComponentModel(Cj),r.registerComponentView(xj),r.registerPreprocessor(function(t){tp(t.series,"markLine")&&(t.markLine=t.markLine||{})})}var Fbt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.createMarkerModelFromSeries=function(e,n,a){return new t(e,n,a)},t.type="markArea",t.defaultOption={z:1,tooltip:{trigger:"item"},animation:!1,label:{show:!0,position:"top"},itemStyle:{borderWidth:0},emphasis:{label:{show:!0,position:"top"}}},t})(Ra),wj=Fbt;var Ax=St(),Lbt=function(r,t,e,n){var a=n[0],o=n[1];if(!(!a||!o)){var i=os(r,a),u=os(r,o),l=i.coord,f=u.coord;l[0]=ir(l[0],-1/0),l[1]=ir(l[1],-1/0),f[0]=ir(f[0],1/0),f[1]=ir(f[1],1/0);var s=ev([{},i,u]);return s.coord=[i.coord,u.coord],s.x0=i.x,s.y0=i.y,s.x1=u.x,s.y1=u.y,s}};function Ix(r){return!isNaN(r)&&!isFinite(r)}function Sj(r,t,e,n){var a=1-r;return Ix(t[a])&&Ix(e[a])}function Rbt(r,t){var e=t.coord[0],n=t.coord[1],a={coord:e,x:t.x0,y:t.y0},o={coord:n,x:t.x1,y:t.y1};return oi(r,"cartesian2d")?e&&n&&(Sj(1,e,n,r)||Sj(0,e,n,r))?!0:yj(r,a,o):is(r,a)||is(r,o)}function Ej(r,t,e,n,a){var o=n.coordinateSystem,i=r.getItemModel(t),u,l=Y(i.get(e[0]),a.getWidth()),f=Y(i.get(e[1]),a.getHeight());if(!isNaN(l)&&!isNaN(f))u=[l,f];else{if(n.getMarkerPosition){var s=r.getValues(["x0","y0"],t),c=r.getValues(["x1","y1"],t),p=o.clampData(s),v=o.clampData(c),d=[];e[0]==="x0"?d[0]=p[0]>v[0]?c[0]:s[0]:d[0]=p[0]>v[0]?s[0]:c[0],e[1]==="y0"?d[1]=p[1]>v[1]?c[1]:s[1]:d[1]=p[1]>v[1]?s[1]:c[1],u=n.getMarkerPosition(d,e,!0)}else{var m=r.get(e[0],t),h=r.get(e[1],t),_=[m,h];o.clampData&&o.clampData(_,_),u=o.dataToPoint(_,!0)}if(oi(o,"cartesian2d")){var g=o.getAxis("x"),y=o.getAxis("y"),m=r.get(e[0],t),h=r.get(e[1],t);Ix(m)?u[0]=g.toGlobalCoord(g.getExtent()[e[0]==="x0"?0:1]):Ix(h)&&(u[1]=y.toGlobalCoord(y.getExtent()[e[1]==="y0"?0:1]))}isNaN(l)||(u[0]=l),isNaN(f)||(u[1]=f)}return u}var Mj=[["x0","y0"],["x1","y0"],["x1","y1"],["x0","y1"]],Pbt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.updateTransform=function(e,n,a){n.eachSeries(function(o){var i=Ra.getMarkerModelFromSeries(o,"markArea");if(i){var u=i.getData();u.each(function(l){var f=U(Mj,function(c){return Ej(u,l,c,o,a)});u.setItemLayout(l,f);var s=u.getItemGraphicEl(l);s.setShape("points",f)})}},this)},t.prototype.renderSeries=function(e,n,a,o){var i=e.coordinateSystem,u=e.id,l=e.getData(),f=this.markerGroupMap,s=f.get(u)||f.set(u,{group:new at});this.group.add(s.group),this.markKeep(s);var c=Nbt(i,e,n);n.setData(c),c.each(function(p){var v=U(Mj,function(w){return Ej(c,p,w,e,o)}),d=i.getAxis("x").scale,m=i.getAxis("y").scale,h=d.getExtent(),_=m.getExtent(),g=[d.parse(c.get("x0",p)),d.parse(c.get("x1",p))],y=[m.parse(c.get("y0",p)),m.parse(c.get("y1",p))];fn(g),fn(y);var D=!(h[0]>g[1]||h[1]<g[0]||_[0]>y[1]||_[1]<y[0]),b=!D;c.setItemLayout(p,{points:v,allClipped:b});var C=c.getItemModel(p).getModel("itemStyle").getItemStyle(),x=Tu(l,"color");C.fill||(C.fill=x,V(C.fill)&&(C.fill=Zs(C.fill,.4))),C.stroke||(C.stroke=x),c.setItemVisual(p,"style",C)}),c.diff(Ax(s).data).add(function(p){var v=c.getItemLayout(p);if(!v.allClipped){var d=new xr({shape:{points:v.points}});c.setItemGraphicEl(p,d),s.group.add(d)}}).update(function(p,v){var d=Ax(s).data.getItemGraphicEl(v),m=c.getItemLayout(p);m.allClipped?d&&s.group.remove(d):(d?$t(d,{shape:{points:m.points}},n,p):d=new xr({shape:{points:m.points}}),c.setItemGraphicEl(p,d),s.group.add(d))}).remove(function(p){var v=Ax(s).data.getItemGraphicEl(p);s.group.remove(v)}).execute(),c.eachItemGraphicEl(function(p,v){var d=c.getItemModel(v),m=c.getItemVisual(v,"style");p.useStyle(c.getItemVisual(v,"style")),Ze(p,$e(d),{labelFetcher:n,labelDataIndex:v,defaultText:c.getName(v)||"",inheritColor:V(m.fill)?Zs(m.fill,1):"#000"}),fr(p,d),Me(p,null,null,d.get(["emphasis","disabled"])),vt(p).dataModel=n}),Ax(s).data=c,s.group.silent=n.get("silent")||e.get("silent")},t.type="markArea",t})(Ad);function Nbt(r,t,e){var n,a,o=["x0","y0","x1","y1"];if(r){var i=U(r&&r.dimensions,function(f){var s=t.getData(),c=s.getDimensionInfo(s.mapDimension(f))||{};return N(N({},c),{name:f,ordinalMeta:null})});a=U(o,function(f,s){return{name:f,type:i[s%2].type}}),n=new wr(a,e)}else a=[{name:"value",type:"float"}],n=new wr(a,e);var u=U(e.get("data"),gt(Lbt,t,r,e));r&&(u=de(u,gt(Rbt,r)));var l=r?function(f,s,c,p){var v=f.coord[Math.floor(p/2)][p%2];return ei(v,a[p])}:function(f,s,c,p){return ei(f.value,a[p])};return n.initData(u,null,l),n.hasItemOption=!0,n}var Aj=Pbt;function NP(r){r.registerComponentModel(wj),r.registerComponentView(Aj),r.registerPreprocessor(function(t){tp(t.series,"markArea")&&(t.markArea=t.markArea||{})})}var Obt=function(r,t){if(t==="all")return{type:"all",title:r.getLocaleModel().get(["legend","selector","all"])};if(t==="inverse")return{type:"inverse",title:r.getLocaleModel().get(["legend","selector","inverse"])}},Ubt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.layoutMode={type:"box",ignoreSize:!0},e}return t.prototype.init=function(e,n,a){this.mergeDefaultAndTheme(e,a),e.selected=e.selected||{},this._updateSelector(e)},t.prototype.mergeOption=function(e,n){r.prototype.mergeOption.call(this,e,n),this._updateSelector(e)},t.prototype._updateSelector=function(e){var n=e.selector,a=this.ecModel;n===!0&&(n=e.selector=["all","inverse"]),O(n)&&T(n,function(o,i){V(o)&&(o={type:o}),n[i]=Et(o,Obt(a,o.type))})},t.prototype.optionUpdated=function(){this._updateData(this.ecModel);var e=this._data;if(e[0]&&this.get("selectedMode")==="single"){for(var n=!1,a=0;a<e.length;a++){var o=e[a].get("name");if(this.isSelected(o)){this.select(o),n=!0;break}}!n&&this.select(e[0].get("name"))}},t.prototype._updateData=function(e){var n=[],a=[];e.eachRawSeries(function(l){var f=l.name;a.push(f);var s;if(l.legendVisualProvider){var c=l.legendVisualProvider,p=c.getAllNames();e.isSeriesFiltered(l)||(a=a.concat(p)),p.length?n=n.concat(p):s=!0}else s=!0;s&&gv(l)&&n.push(l.name)}),this._availableNames=a;var o=this.get("data")||n,i=Z(),u=U(o,function(l){return(V(l)||Nt(l))&&(l={name:l}),i.get(l.name)?null:(i.set(l.name,!0),new Te(l,this,this.ecModel))},this);this._data=de(u,function(l){return!!l})},t.prototype.getData=function(){return this._data},t.prototype.select=function(e){var n=this.option.selected,a=this.get("selectedMode");if(a==="single"){var o=this._data;T(o,function(i){n[i.get("name")]=!1})}n[e]=!0},t.prototype.unSelect=function(e){this.get("selectedMode")!=="single"&&(this.option.selected[e]=!1)},t.prototype.toggleSelected=function(e){var n=this.option.selected;n.hasOwnProperty(e)||(n[e]=!0),this[n[e]?"unSelect":"select"](e)},t.prototype.allSelect=function(){var e=this._data,n=this.option.selected;T(e,function(a){n[a.get("name",!0)]=!0})},t.prototype.inverseSelect=function(){var e=this._data,n=this.option.selected;T(e,function(a){var o=a.get("name",!0);n.hasOwnProperty(o)||(n[o]=!0),n[o]=!n[o]})},t.prototype.isSelected=function(e){var n=this.option.selected;return!(n.hasOwnProperty(e)&&!n[e])&&wt(this._availableNames,e)>=0},t.prototype.getOrient=function(){return this.get("orient")==="vertical"?{index:1,name:"vertical"}:{index:0,name:"horizontal"}},t.type="legend.plain",t.dependencies=["series"],t.defaultOption={z:4,show:!0,orient:"horizontal",left:"center",top:0,align:"auto",backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",borderRadius:0,borderWidth:0,padding:5,itemGap:10,itemWidth:25,itemHeight:14,symbolRotate:"inherit",symbolKeepAspect:!0,inactiveColor:"#ccc",inactiveBorderColor:"#ccc",inactiveBorderWidth:"auto",itemStyle:{color:"inherit",opacity:"inherit",borderColor:"inherit",borderWidth:"auto",borderCap:"inherit",borderJoin:"inherit",borderDashOffset:"inherit",borderMiterLimit:"inherit"},lineStyle:{width:"auto",color:"inherit",inactiveColor:"#ccc",inactiveWidth:2,opacity:"inherit",type:"inherit",cap:"inherit",join:"inherit",dashOffset:"inherit",miterLimit:"inherit"},textStyle:{color:"#333"},selectedMode:!0,selector:!1,selectorLabel:{show:!0,borderRadius:10,padding:[3,5,3,5],fontSize:12,fontFamily:"sans-serif",color:"#666",borderWidth:1,borderColor:"#666"},emphasis:{selectorLabel:{show:!0,color:"#eee",backgroundColor:"#666"}},selectorPosition:"auto",selectorItemGap:7,selectorButtonGap:10,tooltip:{show:!1}},t})(Gt),Lg=Ubt;var Id=gt,OP=T,Fx=at,Hbt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.newlineDisabled=!1,e}return t.prototype.init=function(){this.group.add(this._contentGroup=new Fx),this.group.add(this._selectorGroup=new Fx),this._isFirstRender=!0},t.prototype.getContentGroup=function(){return this._contentGroup},t.prototype.getSelectorGroup=function(){return this._selectorGroup},t.prototype.render=function(e,n,a){var o=this._isFirstRender;if(this._isFirstRender=!1,this.resetInner(),!!e.get("show",!0)){var i=e.get("align"),u=e.get("orient");(!i||i==="auto")&&(i=e.get("left")==="right"&&u==="vertical"?"right":"left");var l=e.get("selector",!0),f=e.get("selectorPosition",!0);l&&(!f||f==="auto")&&(f=u==="horizontal"?"end":"start"),this.renderInner(i,e,n,a,l,u,f);var s=e.getBoxLayoutParams(),c={width:a.getWidth(),height:a.getHeight()},p=e.get("padding"),v=ze(s,c,p),d=this.layoutInner(e,i,v,o,l,f),m=ze(et({width:d.width,height:d.height},s),c,p);this.group.x=m.x-d.x,this.group.y=m.y-d.y,this.group.markRedraw(),this.group.add(this._backgroundEl=mx(d,e))}},t.prototype.resetInner=function(){this.getContentGroup().removeAll(),this._backgroundEl&&this.group.remove(this._backgroundEl),this.getSelectorGroup().removeAll()},t.prototype.renderInner=function(e,n,a,o,i,u,l){var f=this.getContentGroup(),s=Z(),c=n.get("selectedMode"),p=[];a.eachRawSeries(function(v){!v.get("legendHoverLink")&&p.push(v.id)}),OP(n.getData(),function(v,d){var m=v.get("name");if(!this.newlineDisabled&&(m===""||m===`+`)){var h=new Fx;h.newline=!0,f.add(h);return}var _=a.getSeriesByName(m)[0];if(!s.get(m))if(_){var g=_.getData(),y=g.getVisual("legendLineStyle")||{},D=g.getVisual("legendIcon"),b=g.getVisual("style"),C=this._createItem(_,m,d,v,n,e,y,b,D,c,o);C.on("click",Id(Ij,m,null,o,p)).on("mouseover",Id(UP,_.name,null,o,p)).on("mouseout",Id(HP,_.name,null,o,p)),a.ssr&&C.eachChild(function(x){var w=vt(x);w.seriesIndex=_.seriesIndex,w.dataIndex=d,w.ssrType="legend"}),s.set(m,!0)}else a.eachRawSeries(function(x){if(!s.get(m)&&x.legendVisualProvider){var w=x.legendVisualProvider;if(!w.containName(m))return;var S=w.indexOfName(m),E=w.getItemVisual(S,"style"),M=w.getItemVisual(S,"legendIcon"),I=Ln(E.fill);I&&I[3]===0&&(I[3]=.2,E=N(N({},E),{fill:qo(I,"rgba")}));var F=this._createItem(x,m,d,v,n,e,{},E,M,c,o);F.on("click",Id(Ij,null,m,o,p)).on("mouseover",Id(UP,null,m,o,p)).on("mouseout",Id(HP,null,m,o,p)),a.ssr&&F.eachChild(function(L){var R=vt(L);R.seriesIndex=x.seriesIndex,R.dataIndex=d,R.ssrType="legend"}),s.set(m,!0)}},this)},this),i&&this._createSelector(i,n,o,u,l)},t.prototype._createSelector=function(e,n,a,o,i){var u=this.getSelectorGroup();OP(e,function(f){var s=f.type,c=new Wt({style:{x:0,y:0,align:"center",verticalAlign:"middle"},onclick:function(){a.dispatchAction({type:s==="all"?"legendAllSelect":"legendInverseSelect"})}});u.add(c);var p=n.getModel("selectorLabel"),v=n.getModel(["emphasis","selectorLabel"]);Ze(c,{normal:p,emphasis:v},{defaultText:f.title}),yu(c)})},t.prototype._createItem=function(e,n,a,o,i,u,l,f,s,c,p){var v=e.visualDrawType,d=i.get("itemWidth"),m=i.get("itemHeight"),h=i.isSelected(n),_=o.get("symbolRotate"),g=o.get("symbolKeepAspect"),y=o.get("icon");s=y||s||"roundRect";var D=kbt(s,o,l,f,v,h,p),b=new Fx,C=o.getModel("textStyle");if(X(e.getLegendIcon)&&(!y||y==="inherit"))b.add(e.getLegendIcon({itemWidth:d,itemHeight:m,icon:s,iconRotate:_,itemStyle:D.itemStyle,lineStyle:D.lineStyle,symbolKeepAspect:g}));else{var x=y==="inherit"&&e.getData().getVisual("symbol")?_==="inherit"?e.getData().getVisual("symbolRotate"):_:0;b.add(zbt({itemWidth:d,itemHeight:m,icon:s,iconRotate:x,itemStyle:D.itemStyle,lineStyle:D.lineStyle,symbolKeepAspect:g}))}var w=u==="left"?d+5:-5,S=u,E=i.get("formatter"),M=n;V(E)&&E?M=E.replace("{name}",n??""):X(E)&&(M=E(n));var I=h?C.getTextColor():o.get("inactiveColor");b.add(new Wt({style:Re(C,{text:M,x:w,y:m/2,fill:I,align:S,verticalAlign:"middle"},{inheritColor:I})}));var F=new Rt({shape:b.getBoundingRect(),style:{fill:"transparent"}}),L=o.getModel("tooltip");return L.get("show")&&Mi({el:F,componentModel:i,itemName:n,itemTooltipOption:L.option}),b.add(F),b.eachChild(function(R){R.silent=!0}),F.silent=!c,this.getContentGroup().add(b),yu(b),b.__legendDataIndex=a,b},t.prototype.layoutInner=function(e,n,a,o,i,u){var l=this.getContentGroup(),f=this.getSelectorGroup();Fi(e.get("orient"),l,e.get("itemGap"),a.width,a.height);var s=l.getBoundingRect(),c=[-s.x,-s.y];if(f.markRedraw(),l.markRedraw(),i){Fi("horizontal",f,e.get("selectorItemGap",!0));var p=f.getBoundingRect(),v=[-p.x,-p.y],d=e.get("selectorButtonGap",!0),m=e.getOrient().index,h=m===0?"width":"height",_=m===0?"height":"width",g=m===0?"y":"x";u==="end"?v[m]+=s[h]+d:c[m]+=p[h]+d,v[1-m]+=s[_]/2-p[_]/2,f.x=v[0],f.y=v[1],l.x=c[0],l.y=c[1];var y={x:0,y:0};return y[h]=s[h]+d+p[h],y[_]=Math.max(s[_],p[_]),y[g]=Math.min(0,p[g]+v[1-m]),y}else return l.x=c[0],l.y=c[1],this.group.getBoundingRect()},t.prototype.remove=function(){this.getContentGroup().removeAll(),this._isFirstRender=!0},t.type="legend.plain",t})(Ee);function kbt(r,t,e,n,a,o,i){function u(h,_){h.lineWidth==="auto"&&(h.lineWidth=_.lineWidth>0?2:0),OP(h,function(g,y){h[y]==="inherit"&&(h[y]=_[y])})}var l=t.getModel("itemStyle"),f=l.getItemStyle(),s=r.lastIndexOf("empty",0)===0?"fill":"stroke",c=l.getShallow("decal");f.decal=!c||c==="inherit"?n.decal:Ni(c,i),f.fill==="inherit"&&(f.fill=n[a]),f.stroke==="inherit"&&(f.stroke=n[s]),f.opacity==="inherit"&&(f.opacity=(a==="fill"?n:e).opacity),u(f,n);var p=t.getModel("lineStyle"),v=p.getLineStyle();if(u(v,e),f.fill==="auto"&&(f.fill=n.fill),f.stroke==="auto"&&(f.stroke=n.fill),v.stroke==="auto"&&(v.stroke=n.fill),!o){var d=t.get("inactiveBorderWidth"),m=f[s];f.lineWidth=d==="auto"?n.lineWidth>0&&m?2:0:f.lineWidth,f.fill=t.get("inactiveColor"),f.stroke=t.get("inactiveBorderColor"),v.stroke=p.get("inactiveColor"),v.lineWidth=p.get("inactiveWidth")}return{itemStyle:f,lineStyle:v}}function zbt(r){var t=r.icon||"roundRect",e=We(t,0,0,r.itemWidth,r.itemHeight,r.itemStyle.fill,r.symbolKeepAspect);return e.setStyle(r.itemStyle),e.rotation=(r.iconRotate||0)*Math.PI/180,e.setOrigin([r.itemWidth/2,r.itemHeight/2]),t.indexOf("empty")>-1&&(e.style.stroke=e.style.fill,e.style.fill="#fff",e.style.lineWidth=2),e}function Ij(r,t,e,n){HP(r,t,e,n),e.dispatchAction({type:"legendToggleSelect",name:r??t}),UP(r,t,e,n)}function Fj(r){for(var t=r.getZr().storage.getDisplayList(),e,n=0,a=t.length;n<a&&!(e=t[n].states.emphasis);)n++;return e&&e.hoverLayer}function UP(r,t,e,n){Fj(e)||e.dispatchAction({type:"highlight",seriesName:r,name:t,excludeSeriesId:n})}function HP(r,t,e,n){Fj(e)||e.dispatchAction({type:"downplay",seriesName:r,name:t,excludeSeriesId:n})}var Lx=Hbt;function kP(r){var t=r.findComponents({mainType:"legend"});t&&t.length&&r.filterSeries(function(e){for(var n=0;n<t.length;n++)if(!t[n].isSelected(e.name))return!1;return!0})}function Rg(r,t,e){var n={},a=r==="toggleSelected",o;return e.eachComponent("legend",function(i){a&&o!=null?i[o?"select":"unSelect"](t.name):r==="allSelect"||r==="inverseSelect"?i[r]():(i[r](t.name),o=i.isSelected(t.name));var u=i.getData();T(u,function(l){var f=l.get("name");if(!(f===`+`||f==="")){var s=i.isSelected(f);n.hasOwnProperty(f)?n[f]=n[f]&&s:n[f]=s}})}),r==="allSelect"||r==="inverseSelect"?{selected:n}:{name:t.name,selected:n}}function Lj(r){r.registerAction("legendToggleSelect","legendselectchanged",gt(Rg,"toggleSelected")),r.registerAction("legendAllSelect","legendselectall",gt(Rg,"allSelect")),r.registerAction("legendInverseSelect","legendinverseselect",gt(Rg,"inverseSelect")),r.registerAction("legendSelect","legendselected",gt(Rg,"select")),r.registerAction("legendUnSelect","legendunselected",gt(Rg,"unSelect"))}function Rx(r){r.registerComponentModel(Lg),r.registerComponentView(Lx),r.registerProcessor(r.PRIORITY.PROCESSOR.SERIES_FILTER,kP),r.registerSubTypeDefaulter("legend",function(){return"plain"}),Lj(r)}var Wbt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.setScrollDataIndex=function(e){this.option.scrollDataIndex=e},t.prototype.init=function(e,n,a){var o=Ko(e);r.prototype.init.call(this,e,n,a),Rj(this,e,o)},t.prototype.mergeOption=function(e,n){r.prototype.mergeOption.call(this,e,n),Rj(this,this.option,e)},t.type="legend.scroll",t.defaultOption=va(Lg.defaultOption,{scrollDataIndex:0,pageButtonItemGap:5,pageButtonGap:null,pageButtonPosition:"end",pageFormatter:"{current}/{total}",pageIcons:{horizontal:["M0,0L12,-10L12,10z","M0,0L-12,-10L-12,10z"],vertical:["M0,0L20,0L10,-20z","M0,0L20,0L10,20z"]},pageIconColor:"#2f4554",pageIconInactiveColor:"#aaa",pageIconSize:15,pageTextStyle:{color:"#333"},animationDurationUpdate:800}),t})(Lg);function Rj(r,t,e){var n=r.getOrient(),a=[1,1];a[n.index]=0,no(t,e,{type:"box",ignoreSize:!!a})}var Pj=Wbt;var Nj=at,zP=["width","height"],WP=["x","y"],Gbt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.newlineDisabled=!0,e._currentIndex=0,e}return t.prototype.init=function(){r.prototype.init.call(this),this.group.add(this._containerGroup=new Nj),this._containerGroup.add(this.getContentGroup()),this.group.add(this._controllerGroup=new Nj)},t.prototype.resetInner=function(){r.prototype.resetInner.call(this),this._controllerGroup.removeAll(),this._containerGroup.removeClipPath(),this._containerGroup.__rectSize=null},t.prototype.renderInner=function(e,n,a,o,i,u,l){var f=this;r.prototype.renderInner.call(this,e,n,a,o,i,u,l);var s=this._controllerGroup,c=n.get("pageIconSize",!0),p=O(c)?c:[c,c];d("pagePrev",0);var v=n.getModel("pageTextStyle");s.add(new Wt({name:"pageText",style:{text:"xx/xx",fill:v.getTextColor(),font:v.getFont(),verticalAlign:"middle",align:"center"},silent:!0})),d("pageNext",1);function d(m,h){var _=m+"DataIndex",g=gl(n.get("pageIcons",!0)[n.getOrient().name][h],{onclick:Q(f._pageGo,f,_,n,o)},{x:-p[0]/2,y:-p[1]/2,width:p[0],height:p[1]});g.name=m,s.add(g)}},t.prototype.layoutInner=function(e,n,a,o,i,u){var l=this.getSelectorGroup(),f=e.getOrient().index,s=zP[f],c=WP[f],p=zP[1-f],v=WP[1-f];i&&Fi("horizontal",l,e.get("selectorItemGap",!0));var d=e.get("selectorButtonGap",!0),m=l.getBoundingRect(),h=[-m.x,-m.y],_=lt(a);i&&(_[s]=a[s]-m[s]-d);var g=this._layoutContentAndController(e,o,_,f,s,p,v,c);if(i){if(u==="end")h[f]+=g[s]+d;else{var y=m[s]+d;h[f]-=y,g[c]-=y}g[s]+=m[s]+d,h[1-f]+=g[v]+g[p]/2-m[p]/2,g[p]=Math.max(g[p],m[p]),g[v]=Math.min(g[v],m[v]+h[1-f]),l.x=h[0],l.y=h[1],l.markRedraw()}return g},t.prototype._layoutContentAndController=function(e,n,a,o,i,u,l,f){var s=this.getContentGroup(),c=this._containerGroup,p=this._controllerGroup;Fi(e.get("orient"),s,e.get("itemGap"),o?a.width:null,o?null:a.height),Fi("horizontal",p,e.get("pageButtonItemGap",!0));var v=s.getBoundingRect(),d=p.getBoundingRect(),m=this._showController=v[i]>a[i],h=[-v.x,-v.y];n||(h[o]=s[f]);var _=[0,0],g=[-d.x,-d.y],y=Tt(e.get("pageButtonGap",!0),e.get("itemGap",!0));if(m){var D=e.get("pageButtonPosition",!0);D==="end"?g[o]+=a[i]-d[i]:_[o]+=d[i]+y}g[1-o]+=v[u]/2-d[u]/2,s.setPosition(h),c.setPosition(_),p.setPosition(g);var b={x:0,y:0};if(b[i]=m?a[i]:v[i],b[u]=Math.max(v[u],d[u]),b[l]=Math.min(0,d[l]+g[1-o]),c.__rectSize=a[i],m){var C={x:0,y:0};C[i]=Math.max(a[i]-d[i]-y,0),C[u]=b[u],c.setClipPath(new Rt({shape:C})),c.__rectSize=C[i]}else p.eachChild(function(w){w.attr({invisible:!0,silent:!0})});var x=this._getPageInfo(e);return x.pageIndex!=null&&$t(s,{x:x.contentPosition[0],y:x.contentPosition[1]},m?e:null),this._updatePageInfoView(e,x),b},t.prototype._pageGo=function(e,n,a){var o=this._getPageInfo(n)[e];o!=null&&a.dispatchAction({type:"legendScroll",scrollDataIndex:o,legendId:n.id})},t.prototype._updatePageInfoView=function(e,n){var a=this._controllerGroup;T(["pagePrev","pageNext"],function(s){var c=s+"DataIndex",p=n[c]!=null,v=a.childOfName(s);v&&(v.setStyle("fill",p?e.get("pageIconColor",!0):e.get("pageIconInactiveColor",!0)),v.cursor=p?"pointer":"default")});var o=a.childOfName("pageText"),i=e.get("pageFormatter"),u=n.pageIndex,l=u!=null?u+1:0,f=n.pageCount;o&&i&&o.setStyle("text",V(i)?i.replace("{current}",l==null?"":l+"").replace("{total}",f==null?"":f+""):i({current:l,total:f}))},t.prototype._getPageInfo=function(e){var n=e.get("scrollDataIndex",!0),a=this.getContentGroup(),o=this._containerGroup.__rectSize,i=e.getOrient().index,u=zP[i],l=WP[i],f=this._findTargetItemIndex(n),s=a.children(),c=s[f],p=s.length,v=p?1:0,d={contentPosition:[a.x,a.y],pageCount:v,pageIndex:v-1,pagePrevDataIndex:null,pageNextDataIndex:null};if(!c)return d;var m=D(c);d.contentPosition[i]=-m.s;for(var h=f+1,_=m,g=m,y=null;h<=p;++h)y=D(s[h]),(!y&&g.e>_.s+o||y&&!b(y,_.s))&&(g.i>_.i?_=g:_=y,_&&(d.pageNextDataIndex==null&&(d.pageNextDataIndex=_.i),++d.pageCount)),g=y;for(var h=f-1,_=m,g=m,y=null;h>=-1;--h)y=D(s[h]),(!y||!b(g,y.s))&&_.i<g.i&&(g=_,d.pagePrevDataIndex==null&&(d.pagePrevDataIndex=_.i),++d.pageCount,++d.pageIndex),_=y;return d;function D(C){if(C){var x=C.getBoundingRect(),w=x[l]+C[l];return{s:w,e:w+x[u],i:C.__legendDataIndex}}}function b(C,x){return C.e>=x&&C.s<=x+o}},t.prototype._findTargetItemIndex=function(e){if(!this._showController)return 0;var n,a=this.getContentGroup(),o;return a.eachChild(function(i,u){var l=i.__legendDataIndex;o==null&&l!=null&&(o=u),l===e&&(n=u)}),n??o},t.type="legend.scroll",t})(Lx),Oj=Gbt;function GP(r){r.registerAction("legendScroll","legendscroll",function(t,e){var n=t.scrollDataIndex;n!=null&&e.eachComponent({mainType:"legend",subType:"scroll",query:t},function(a){a.setScrollDataIndex(n)})})}function Uj(r){Jt(Rx),r.registerComponentModel(Pj),r.registerComponentView(Oj),GP(r)}function BP(r){Jt(Rx),Jt(Uj)}var Bbt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.type="dataZoom.inside",t.defaultOption=va(rs.defaultOption,{disabled:!1,zoomLock:!1,zoomOnMouseWheel:!0,moveOnMouseMove:!0,moveOnMouseWheel:!1,preventDefaultMouseMove:!0}),t})(rs),Hj=Bbt;var VP=St();function kj(r,t,e){VP(r).coordSysRecordMap.each(function(n){var a=n.dataZoomInfoMap.get(t.uid);a&&(a.getRange=e)})}function zj(r,t){for(var e=VP(r).coordSysRecordMap,n=e.keys(),a=0;a<n.length;a++){var o=n[a],i=e.get(o),u=i.dataZoomInfoMap;if(u){var l=t.uid,f=u.get(l);f&&(u.removeKey(l),u.keys().length||Wj(e,i))}}}function Wj(r,t){if(t){r.removeKey(t.model.uid);var e=t.controller;e&&e.dispose()}}function Vbt(r,t){var e={model:t,containsPoint:gt(qbt,t),dispatchAction:gt($bt,r),dataZoomInfoMap:null,controller:null},n=e.controller=new Ru(r.getZr());return T(["pan","zoom","scrollMove"],function(a){n.on(a,function(o){var i=[];e.dataZoomInfoMap.each(function(u){if(o.isAvailableBehavior(u.model.option)){var l=(u.getRange||{})[a],f=l&&l(u.dzReferCoordSysInfo,e.model.mainType,e.controller,o);!u.model.get("disabled",!0)&&f&&i.push({dataZoomId:u.model.id,start:f[0],end:f[1]})}}),i.length&&e.dispatchAction(i)})}),e}function $bt(r,t){r.isDisposed()||r.dispatchAction({type:"dataZoom",animation:{easing:"cubicOut",duration:100},batch:t})}function qbt(r,t,e,n){return r.coordinateSystem.containPoint([e,n])}function Jbt(r){var t,e="type_",n={type_true:2,type_move:1,type_false:0,type_undefined:-1},a=!0;return r.each(function(o){var i=o.model,u=i.get("disabled",!0)?!1:i.get("zoomLock",!0)?"move":!0;n[e+u]>n[e+t]&&(t=u),a=a&&i.get("preventDefaultMouseMove",!0)}),{controlType:t,opt:{zoomOnMouseWheel:!0,moveOnMouseMove:!0,moveOnMouseWheel:!0,preventDefaultMouseMove:!!a}}}function Gj(r){r.registerProcessor(r.PRIORITY.PROCESSOR.FILTER,function(t,e){var n=VP(e),a=n.coordSysRecordMap||(n.coordSysRecordMap=Z());a.each(function(o){o.dataZoomInfoMap=null}),t.eachComponent({mainType:"dataZoom",subType:"inside"},function(o){var i=vx(o);T(i.infoList,function(u){var l=u.model.uid,f=a.get(l)||a.set(l,Vbt(e,u.model)),s=f.dataZoomInfoMap||(f.dataZoomInfoMap=Z());s.set(o.uid,{dzReferCoordSysInfo:u,model:o,getRange:null})})}),a.each(function(o){var i=o.controller,u,l=o.dataZoomInfoMap;if(l){var f=l.keys()[0];f!=null&&(u=l.get(f))}if(!u){Wj(a,o);return}var s=Jbt(l);i.enable(s.controlType,s.opt),i.setPointerChecker(o.containsPoint),ri(o,"dispatchAction",u.model.get("throttle",!0),"fixRate")})})}var Ybt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type="dataZoom.inside",e}return t.prototype.render=function(e,n,a){if(r.prototype.render.apply(this,arguments),e.noTarget()){this._clear();return}this.range=e.getPercentRange(),kj(a,e,{pan:Q($P.pan,this),zoom:Q($P.zoom,this),scrollMove:Q($P.scrollMove,this)})},t.prototype.dispose=function(){this._clear(),r.prototype.dispose.apply(this,arguments)},t.prototype._clear=function(){zj(this.api,this.dataZoomModel),this.range=null},t.type="dataZoom.inside",t})(Sd),$P={zoom:function(r,t,e,n){var a=this.range,o=a.slice(),i=r.axisModels[0];if(i){var u=qP[t](null,[n.originX,n.originY],i,e,r),l=(u.signal>0?u.pixelStart+u.pixelLength-u.pixel:u.pixel-u.pixelStart)/u.pixelLength*(o[1]-o[0])+o[0],f=Math.max(1/n.scale,0);o[0]=(o[0]-l)*f+l,o[1]=(o[1]-l)*f+l;var s=this.dataZoomModel.findRepresentativeAxisProxy().getMinMaxSpan();if(so(0,o,[0,100],0,s.minSpan,s.maxSpan),this.range=o,a[0]!==o[0]||a[1]!==o[1])return o}},pan:Bj(function(r,t,e,n,a,o){var i=qP[n]([o.oldX,o.oldY],[o.newX,o.newY],t,a,e);return i.signal*(r[1]-r[0])*i.pixel/i.pixelLength}),scrollMove:Bj(function(r,t,e,n,a,o){var i=qP[n]([0,0],[o.scrollDelta,o.scrollDelta],t,a,e);return i.signal*(r[1]-r[0])*o.scrollDelta})};function Bj(r){return function(t,e,n,a){var o=this.range,i=o.slice(),u=t.axisModels[0];if(u){var l=r(i,u,t,e,n,a);if(so(l,i,[0,100],"all"),this.range=i,o[0]!==i[0]||o[1]!==i[1])return i}}}var qP={grid:function(r,t,e,n,a){var o=e.axis,i={},u=a.model.coordinateSystem.getRect();return r=r||[0,0],o.dim==="x"?(i.pixel=t[0]-r[0],i.pixelLength=u.width,i.pixelStart=u.x,i.signal=o.inverse?1:-1):(i.pixel=t[1]-r[1],i.pixelLength=u.height,i.pixelStart=u.y,i.signal=o.inverse?-1:1),i},polar:function(r,t,e,n,a){var o=e.axis,i={},u=a.model.coordinateSystem,l=u.getRadiusAxis().getExtent(),f=u.getAngleAxis().getExtent();return r=r?u.pointToCoord(r):[0,0],t=u.pointToCoord(t),e.mainType==="radiusAxis"?(i.pixel=t[0]-r[0],i.pixelLength=l[1]-l[0],i.pixelStart=l[0],i.signal=o.inverse?1:-1):(i.pixel=t[1]-r[1],i.pixelLength=f[1]-f[0],i.pixelStart=f[0],i.signal=o.inverse?-1:1),i},singleAxis:function(r,t,e,n,a){var o=e.axis,i=a.model.coordinateSystem.getRect(),u={};return r=r||[0,0],o.orient==="horizontal"?(u.pixel=t[0]-r[0],u.pixelLength=i.width,u.pixelStart=i.x,u.signal=o.inverse?1:-1):(u.pixel=t[1]-r[1],u.pixelLength=i.height,u.pixelStart=i.y,u.signal=o.inverse?-1:1),u}},Vj=Ybt;function Pg(r){Xc(r),r.registerComponentModel(Hj),r.registerComponentView(Vj),Gj(r)}var Qbt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.type="dataZoom.slider",t.layoutMode="box",t.defaultOption=va(rs.defaultOption,{show:!0,right:"ph",top:"ph",width:"ph",height:"ph",left:null,bottom:null,borderColor:"#d2dbee",borderRadius:3,backgroundColor:"rgba(47,69,84,0)",dataBackground:{lineStyle:{color:"#d2dbee",width:.5},areaStyle:{color:"#d2dbee",opacity:.2}},selectedDataBackground:{lineStyle:{color:"#8fb0f7",width:.5},areaStyle:{color:"#8fb0f7",opacity:.2}},fillerColor:"rgba(135,175,274,0.2)",handleIcon:"path://M-9.35,34.56V42m0-40V9.5m-2,0h4a2,2,0,0,1,2,2v21a2,2,0,0,1-2,2h-4a2,2,0,0,1-2-2v-21A2,2,0,0,1-11.35,9.5Z",handleSize:"100%",handleStyle:{color:"#fff",borderColor:"#ACB8D1"},moveHandleSize:7,moveHandleIcon:"path://M-320.9-50L-320.9-50c18.1,0,27.1,9,27.1,27.1V85.7c0,18.1-9,27.1-27.1,27.1l0,0c-18.1,0-27.1-9-27.1-27.1V-22.9C-348-41-339-50-320.9-50z M-212.3-50L-212.3-50c18.1,0,27.1,9,27.1,27.1V85.7c0,18.1-9,27.1-27.1,27.1l0,0c-18.1,0-27.1-9-27.1-27.1V-22.9C-239.4-41-230.4-50-212.3-50z M-103.7-50L-103.7-50c18.1,0,27.1,9,27.1,27.1V85.7c0,18.1-9,27.1-27.1,27.1l0,0c-18.1,0-27.1-9-27.1-27.1V-22.9C-130.9-41-121.8-50-103.7-50z",moveHandleStyle:{color:"#D2DBEE",opacity:.7},showDetail:!0,showDataShadow:"auto",realtime:!0,zoomLock:!1,textStyle:{color:"#6E7079"},brushSelect:!0,brushStyle:{color:"rgba(135,175,274,0.15)"},emphasis:{handleStyle:{borderColor:"#8FB0F7"},moveHandleStyle:{color:"#8FB0F7"}}}),t})(rs),$j=Qbt;var Ng=Rt,qj=7,Zbt=1,JP=30,Xbt=7,Og="horizontal",Jj="vertical",Kbt=5,tCt=["line","bar","candlestick","scatter"],eCt={easing:"cubicOut",duration:100,delay:0},rCt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e._displayables={},e}return t.prototype.init=function(e,n){this.api=n,this._onBrush=Q(this._onBrush,this),this._onBrushEnd=Q(this._onBrushEnd,this)},t.prototype.render=function(e,n,a,o){if(r.prototype.render.apply(this,arguments),ri(this,"_dispatchZoomAction",e.get("throttle"),"fixRate"),this._orient=e.getOrient(),e.get("show")===!1){this.group.removeAll();return}if(e.noTarget()){this._clear(),this.group.removeAll();return}(!o||o.type!=="dataZoom"||o.from!==this.uid)&&this._buildView(),this._updateView()},t.prototype.dispose=function(){this._clear(),r.prototype.dispose.apply(this,arguments)},t.prototype._clear=function(){wl(this,"_dispatchZoomAction");var e=this.api.getZr();e.off("mousemove",this._onBrush),e.off("mouseup",this._onBrushEnd)},t.prototype._buildView=function(){var e=this.group;e.removeAll(),this._brushing=!1,this._displayables.brushRect=null,this._resetLocation(),this._resetInterval();var n=this._displayables.sliderGroup=new at;this._renderBackground(),this._renderHandle(),this._renderDataShadow(),e.add(n),this._positionGroup()},t.prototype._resetLocation=function(){var e=this.dataZoomModel,n=this.api,a=e.get("brushSelect"),o=a?Xbt:0,i=this._findCoordRect(),u={width:n.getWidth(),height:n.getHeight()},l=this._orient===Og?{right:u.width-i.x-i.width,top:u.height-JP-qj-o,width:i.width,height:JP}:{right:qj,top:i.y,width:JP,height:i.height},f=Ko(e.option);T(["right","top","width","height"],function(c){f[c]==="ph"&&(f[c]=l[c])});var s=ze(f,u);this._location={x:s.x,y:s.y},this._size=[s.width,s.height],this._orient===Jj&&this._size.reverse()},t.prototype._positionGroup=function(){var e=this.group,n=this._location,a=this._orient,o=this.dataZoomModel.getFirstTargetAxisModel(),i=o&&o.get("inverse"),u=this._displayables.sliderGroup,l=(this._dataShadowInfo||{}).otherAxisInverse;u.attr(a===Og&&!i?{scaleY:l?1:-1,scaleX:1}:a===Og&&i?{scaleY:l?1:-1,scaleX:-1}:a===Jj&&!i?{scaleY:l?-1:1,scaleX:1,rotation:Math.PI/2}:{scaleY:l?-1:1,scaleX:-1,rotation:Math.PI/2});var f=e.getBoundingRect([u]);e.x=n.x-f.x,e.y=n.y-f.y,e.markRedraw()},t.prototype._getViewExtent=function(){return[0,this._size[0]]},t.prototype._renderBackground=function(){var e=this.dataZoomModel,n=this._size,a=this._displayables.sliderGroup,o=e.get("brushSelect");a.add(new Ng({silent:!0,shape:{x:0,y:0,width:n[0],height:n[1]},style:{fill:e.get("backgroundColor")},z2:-40}));var i=new Ng({shape:{x:0,y:0,width:n[0],height:n[1]},style:{fill:"transparent"},z2:0,onclick:Q(this._onClickPanel,this)}),u=this.api.getZr();o?(i.on("mousedown",this._onBrushStart,this),i.cursor="crosshair",u.on("mousemove",this._onBrush),u.on("mouseup",this._onBrushEnd)):(u.off("mousemove",this._onBrush),u.off("mouseup",this._onBrushEnd)),a.add(i)},t.prototype._renderDataShadow=function(){var e=this._dataShadowInfo=this._prepareDataShadowInfo();if(this._displayables.dataShadowSegs=[],!e)return;var n=this._size,a=this._shadowSize||[],o=e.series,i=o.getRawData(),u=o.getShadowDim&&o.getShadowDim(),l=u&&i.getDimensionInfo(u)?o.getShadowDim():e.otherDim;if(l==null)return;var f=this._shadowPolygonPts,s=this._shadowPolylinePts;if(i!==this._shadowData||l!==this._shadowDim||n[0]!==a[0]||n[1]!==a[1]){var c=i.getDataExtent(l),p=(c[1]-c[0])*.3;c=[c[0]-p,c[1]+p];var v=[0,n[1]],d=[0,n[0]],m=[[n[0],0],[0,0]],h=[],_=d[1]/(i.count()-1),g=0,y=Math.round(i.count()/n[0]),D;i.each([l],function(S,E){if(y>0&&E%y){g+=_;return}var M=S==null||isNaN(S)||S==="",I=M?0:Ie(S,c,v,!0);M&&!D&&E?(m.push([m[m.length-1][0],0]),h.push([h[h.length-1][0],0])):!M&&D&&(m.push([g,0]),h.push([g,0])),m.push([g,I]),h.push([g,I]),g+=_,D=M}),f=this._shadowPolygonPts=m,s=this._shadowPolylinePts=h}this._shadowData=i,this._shadowDim=l,this._shadowSize=[n[0],n[1]];var b=this.dataZoomModel;function C(S){var E=b.getModel(S?"selectedDataBackground":"dataBackground"),M=new at,I=new xr({shape:{points:f},segmentIgnoreThreshold:1,style:E.getModel("areaStyle").getAreaStyle(),silent:!0,z2:-20}),F=new yr({shape:{points:s},segmentIgnoreThreshold:1,style:E.getModel("lineStyle").getLineStyle(),silent:!0,z2:-19});return M.add(I),M.add(F),M}for(var x=0;x<3;x++){var w=C(x===1);this._displayables.sliderGroup.add(w),this._displayables.dataShadowSegs.push(w)}},t.prototype._prepareDataShadowInfo=function(){var e=this.dataZoomModel,n=e.get("showDataShadow");if(n!==!1){var a,o=this.ecModel;return e.eachTargetAxis(function(i,u){var l=e.getAxisProxy(i,u).getTargetSeriesModels();T(l,function(f){if(!a&&!(n!==!0&&wt(tCt,f.get("type"))<0)){var s=o.getComponent(ci(i),u).axis,c=nCt(i),p,v=f.coordinateSystem;c!=null&&v.getOtherAxis&&(p=v.getOtherAxis(s).inverse),c=f.getData().mapDimension(c),a={thisAxis:s,series:f,thisDim:i,otherDim:c,otherAxisInverse:p}}},this)},this),a}},t.prototype._renderHandle=function(){var e=this.group,n=this._displayables,a=n.handles=[null,null],o=n.handleLabels=[null,null],i=this._displayables.sliderGroup,u=this._size,l=this.dataZoomModel,f=this.api,s=l.get("borderRadius")||0,c=l.get("brushSelect"),p=n.filler=new Ng({silent:c,style:{fill:l.get("fillerColor")},textConfig:{position:"inside"}});i.add(p),i.add(new Ng({silent:!0,subPixelOptimize:!0,shape:{x:0,y:0,width:u[0],height:u[1],r:s},style:{stroke:l.get("dataBackgroundColor")||l.get("borderColor"),lineWidth:Zbt,fill:"rgba(0,0,0,0)"}})),T([0,1],function(y){var D=l.get("handleIcon");!R_[D]&&D.indexOf("path://")<0&&D.indexOf("image://")<0&&(D="path://"+D);var b=We(D,-1,0,2,2,null,!0);b.attr({cursor:jj(this._orient),draggable:!0,drift:Q(this._onDragMove,this,y),ondragend:Q(this._onDragEnd,this),onmouseover:Q(this._showDataInfo,this,!0),onmouseout:Q(this._showDataInfo,this,!1),z2:5});var C=b.getBoundingRect(),x=l.get("handleSize");this._handleHeight=Y(x,this._size[1]),this._handleWidth=C.width/C.height*this._handleHeight,b.setStyle(l.getModel("handleStyle").getItemStyle()),b.style.strokeNoScale=!0,b.rectHover=!0,b.ensureState("emphasis").style=l.getModel(["emphasis","handleStyle"]).getItemStyle(),yu(b);var w=l.get("handleColor");w!=null&&(b.style.fill=w),i.add(a[y]=b);var S=l.getModel("textStyle");e.add(o[y]=new Wt({silent:!0,invisible:!0,style:Re(S,{x:0,y:0,text:"",verticalAlign:"middle",align:"center",fill:S.getTextColor(),font:S.getFont()}),z2:10}))},this);var v=p;if(c){var d=Y(l.get("moveHandleSize"),u[1]),m=n.moveHandle=new Rt({style:l.getModel("moveHandleStyle").getItemStyle(),silent:!0,shape:{r:[0,0,2,2],y:u[1]-.5,height:d}}),h=d*.8,_=n.moveHandleIcon=We(l.get("moveHandleIcon"),-h/2,-h/2,h,h,"#fff",!0);_.silent=!0,_.y=u[1]+d/2-.5,m.ensureState("emphasis").style=l.getModel(["emphasis","moveHandleStyle"]).getItemStyle();var g=Math.min(u[1]/2,Math.max(d,10));v=n.moveZone=new Rt({invisible:!0,shape:{y:u[1]-g,height:d+g}}),v.on("mouseover",function(){f.enterEmphasis(m)}).on("mouseout",function(){f.leaveEmphasis(m)}),i.add(m),i.add(_),i.add(v)}v.attr({draggable:!0,cursor:jj(this._orient),drift:Q(this._onDragMove,this,"all"),ondragstart:Q(this._showDataInfo,this,!0),ondragend:Q(this._onDragEnd,this),onmouseover:Q(this._showDataInfo,this,!0),onmouseout:Q(this._showDataInfo,this,!1)})},t.prototype._resetInterval=function(){var e=this._range=this.dataZoomModel.getPercentRange(),n=this._getViewExtent();this._handleEnds=[Ie(e[0],[0,100],n,!0),Ie(e[1],[0,100],n,!0)]},t.prototype._updateInterval=function(e,n){var a=this.dataZoomModel,o=this._handleEnds,i=this._getViewExtent(),u=a.findRepresentativeAxisProxy().getMinMaxSpan(),l=[0,100];so(n,o,i,a.get("zoomLock")?"all":e,u.minSpan!=null?Ie(u.minSpan,l,i,!0):null,u.maxSpan!=null?Ie(u.maxSpan,l,i,!0):null);var f=this._range,s=this._range=fn([Ie(o[0],i,l,!0),Ie(o[1],i,l,!0)]);return!f||f[0]!==s[0]||f[1]!==s[1]},t.prototype._updateView=function(e){var n=this._displayables,a=this._handleEnds,o=fn(a.slice()),i=this._size;T([0,1],function(v){var d=n.handles[v],m=this._handleHeight;d.attr({scaleX:m/2,scaleY:m/2,x:a[v]+(v?-1:1),y:i[1]/2-m/2})},this),n.filler.setShape({x:o[0],y:0,width:o[1]-o[0],height:i[1]});var u={x:o[0],width:o[1]-o[0]};n.moveHandle&&(n.moveHandle.setShape(u),n.moveZone.setShape(u),n.moveZone.getBoundingRect(),n.moveHandleIcon&&n.moveHandleIcon.attr("x",u.x+u.width/2));for(var l=n.dataShadowSegs,f=[0,o[0],o[1],i[0]],s=0;s<l.length;s++){var c=l[s],p=c.getClipPath();p||(p=new Rt,c.setClipPath(p)),p.setShape({x:f[s],y:0,width:f[s+1]-f[s],height:i[1]})}this._updateDataInfo(e)},t.prototype._updateDataInfo=function(e){var n=this.dataZoomModel,a=this._displayables,o=a.handleLabels,i=this._orient,u=["",""];if(n.get("showDetail")){var l=n.findRepresentativeAxisProxy();if(l){var f=l.getAxisModel().axis,s=this._range,c=e?l.calculateDataWindow({start:s[0],end:s[1]}).valueWindow:l.getDataValueWindow();u=[this._formatLabel(c[0],f),this._formatLabel(c[1],f)]}}var p=fn(this._handleEnds.slice());v.call(this,0),v.call(this,1);function v(d){var m=Ei(a.handles[d].parent,this.group),h=Cc(d===0?"right":"left",m),_=this._handleWidth/2+Kbt,g=jn([p[d]+(d===0?-_:_),this._size[1]/2],m);o[d].setStyle({x:g[0],y:g[1],verticalAlign:i===Og?"middle":h,align:i===Og?h:"center",text:u[d]})}},t.prototype._formatLabel=function(e,n){var a=this.dataZoomModel,o=a.get("labelFormatter"),i=a.get("labelPrecision");(i==null||i==="auto")&&(i=n.getPixelPrecision());var u=e==null||isNaN(e)?"":n.type==="category"||n.type==="time"?n.scale.getLabel({value:Math.round(e)}):e.toFixed(Math.min(i,20));return X(o)?o(e,u):V(o)?o.replace("{value}",u):u},t.prototype._showDataInfo=function(e){e=this._dragging||e;var n=this._displayables,a=n.handleLabels;a[0].attr("invisible",!e),a[1].attr("invisible",!e),n.moveHandle&&this.api[e?"enterEmphasis":"leaveEmphasis"](n.moveHandle,1)},t.prototype._onDragMove=function(e,n,a,o){this._dragging=!0,qa(o.event);var i=this._displayables.sliderGroup.getLocalTransform(),u=jn([n,a],i,!0),l=this._updateInterval(e,u[0]),f=this.dataZoomModel.get("realtime");this._updateView(!f),l&&f&&this._dispatchZoomAction(!0)},t.prototype._onDragEnd=function(){this._dragging=!1,this._showDataInfo(!1);var e=this.dataZoomModel.get("realtime");!e&&this._dispatchZoomAction(!1)},t.prototype._onClickPanel=function(e){var n=this._size,a=this._displayables.sliderGroup.transformCoordToLocal(e.offsetX,e.offsetY);if(!(a[0]<0||a[0]>n[0]||a[1]<0||a[1]>n[1])){var o=this._handleEnds,i=(o[0]+o[1])/2,u=this._updateInterval("all",a[0]-i);this._updateView(),u&&this._dispatchZoomAction(!1)}},t.prototype._onBrushStart=function(e){var n=e.offsetX,a=e.offsetY;this._brushStart=new Qt(n,a),this._brushing=!0,this._brushStartTime=+new Date},t.prototype._onBrushEnd=function(e){if(this._brushing){var n=this._displayables.brushRect;if(this._brushing=!1,!!n){n.attr("ignore",!0);var a=n.shape,o=+new Date;if(!(o-this._brushStartTime<200&&Math.abs(a.width)<5)){var i=this._getViewExtent(),u=[0,100];this._range=fn([Ie(a.x,i,u,!0),Ie(a.x+a.width,i,u,!0)]),this._handleEnds=[a.x,a.x+a.width],this._updateView(),this._dispatchZoomAction(!1)}}}},t.prototype._onBrush=function(e){this._brushing&&(qa(e.event),this._updateBrushRect(e.offsetX,e.offsetY))},t.prototype._updateBrushRect=function(e,n){var a=this._displayables,o=this.dataZoomModel,i=a.brushRect;i||(i=a.brushRect=new Ng({silent:!0,style:o.getModel("brushStyle").getItemStyle()}),a.sliderGroup.add(i)),i.attr("ignore",!1);var u=this._brushStart,l=this._displayables.sliderGroup,f=l.transformCoordToLocal(e,n),s=l.transformCoordToLocal(u.x,u.y),c=this._size;f[0]=Math.max(Math.min(c[0],f[0]),0),i.setShape({x:s[0],y:0,width:f[0]-s[0],height:c[1]})},t.prototype._dispatchZoomAction=function(e){var n=this._range;this.api.dispatchAction({type:"dataZoom",from:this.uid,dataZoomId:this.dataZoomModel.id,animation:e?eCt:null,start:n[0],end:n[1]})},t.prototype._findCoordRect=function(){var e,n=vx(this.dataZoomModel).infoList;if(!e&&n.length){var a=n[0].model.coordinateSystem;e=a.getRect&&a.getRect()}if(!e){var o=this.api.getWidth(),i=this.api.getHeight();e={x:o*.2,y:i*.2,width:o*.6,height:i*.6}}return e},t.type="dataZoom.slider",t})(Sd);function nCt(r){var t={x:"y",y:"x",radius:"angle",angle:"radius"};return t[r]}function jj(r){return r==="vertical"?"ns-resize":"ew-resize"}var Yj=rCt;function Ug(r){r.registerComponentModel($j),r.registerComponentView(Yj),Xc(r)}function jP(r){Jt(Pg),Jt(Ug)}var aCt={get:function(r,t,e){var n=lt((oCt[r]||{})[t]);return e&&O(n)?n[n.length-1]:n}},oCt={color:{active:["#006edd","#e0ffff"],inactive:["rgba(0,0,0,0)"]},colorHue:{active:[0,360],inactive:[0,0]},colorSaturation:{active:[.3,1],inactive:[0,0]},colorLightness:{active:[.9,.5],inactive:[0,0]},colorAlpha:{active:[.3,1],inactive:[0,0]},opacity:{active:[.3,1],inactive:[0,0]},symbol:{active:["circle","roundRect","diamond"],inactive:["none"]},symbolSize:{active:[10,50],inactive:[0,0]}},Px=aCt;var Qj=zr.mapVisual,iCt=zr.eachVisual,uCt=O,Zj=T,lCt=fn,fCt=Ie,sCt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.stateList=["inRange","outOfRange"],e.replacableOptionKeys=["inRange","outOfRange","target","controller","color"],e.layoutMode={type:"box",ignoreSize:!0},e.dataBound=[-1/0,1/0],e.targetVisuals={},e.controllerVisuals={},e}return t.prototype.init=function(e,n,a){this.mergeDefaultAndTheme(e,a)},t.prototype.optionUpdated=function(e,n){var a=this.option;!n&&yx(a,e,this.replacableOptionKeys),this.textStyleModel=this.getModel("textStyle"),this.resetItemSize(),this.completeVisualOption()},t.prototype.resetVisual=function(e){var n=this.stateList;e=Q(e,this),this.controllerVisuals=Ig(this.option.controller,n,e),this.targetVisuals=Ig(this.option.target,n,e)},t.prototype.getItemSymbol=function(){return null},t.prototype.getTargetSeriesIndices=function(){var e=this.option.seriesIndex,n=[];return e==null||e==="all"?this.ecModel.eachSeries(function(a,o){n.push(o)}):n=we(e),n},t.prototype.eachTargetSeries=function(e,n){T(this.getTargetSeriesIndices(),function(a){var o=this.ecModel.getSeriesByIndex(a);o&&e.call(n,o)},this)},t.prototype.isTargetSeries=function(e){var n=!1;return this.eachTargetSeries(function(a){a===e&&(n=!0)}),n},t.prototype.formatValueText=function(e,n,a){var o=this.option,i=o.precision,u=this.dataBound,l=o.formatter,f;a=a||["<",">"],O(e)&&(e=e.slice(),f=!0);var s=n?e:f?[c(e[0]),c(e[1])]:c(e);if(V(l))return l.replace("{value}",f?s[0]:s).replace("{value2}",f?s[1]:s);if(X(l))return f?l(e[0],e[1]):l(e);if(f)return e[0]===u[0]?a[0]+" "+s[1]:e[1]===u[1]?a[1]+" "+s[0]:s[0]+" - "+s[1];return s;function c(p){return p===u[0]?"min":p===u[1]?"max":(+p).toFixed(Math.min(i,20))}},t.prototype.resetExtent=function(){var e=this.option,n=lCt([e.min,e.max]);this._dataExtent=n},t.prototype.getDataDimensionIndex=function(e){var n=this.option.dimension;if(n!=null)return e.getDimensionIndex(n);for(var a=e.dimensions,o=a.length-1;o>=0;o--){var i=a[o],u=e.getDimensionInfo(i);if(!u.isCalculationCoord)return u.storeDimIndex}},t.prototype.getExtent=function(){return this._dataExtent.slice()},t.prototype.completeVisualOption=function(){var e=this.ecModel,n=this.option,a={inRange:n.inRange,outOfRange:n.outOfRange},o=n.target||(n.target={}),i=n.controller||(n.controller={});Et(o,a),Et(i,a);var u=this.isCategory();l.call(this,o),l.call(this,i),f.call(this,o,"inRange","outOfRange"),s.call(this,i);function l(c){uCt(n.color)&&!c.inRange&&(c.inRange={color:n.color.slice().reverse()}),c.inRange=c.inRange||{color:e.get("gradientColor")}}function f(c,p,v){var d=c[p],m=c[v];d&&!m&&(m=c[v]={},Zj(d,function(h,_){if(zr.isValidType(_)){var g=Px.get(_,"inactive",u);g!=null&&(m[_]=g,_==="color"&&!m.hasOwnProperty("opacity")&&!m.hasOwnProperty("colorAlpha")&&(m.opacity=[0,0]))}}))}function s(c){var p=(c.inRange||{}).symbol||(c.outOfRange||{}).symbol,v=(c.inRange||{}).symbolSize||(c.outOfRange||{}).symbolSize,d=this.get("inactiveColor"),m=this.getItemSymbol(),h=m||"roundRect";Zj(this.stateList,function(_){var g=this.itemSize,y=c[_];y||(y=c[_]={color:u?d:[d]}),y.symbol==null&&(y.symbol=p&&lt(p)||(u?h:[h])),y.symbolSize==null&&(y.symbolSize=v&&lt(v)||(u?g[0]:[g[0],g[0]])),y.symbol=Qj(y.symbol,function(C){return C==="none"?h:C});var D=y.symbolSize;if(D!=null){var b=-1/0;iCt(D,function(C){C>b&&(b=C)}),y.symbolSize=Qj(D,function(C){return fCt(C,[0,b],[0,g[0]],!0)})}},this)}},t.prototype.resetItemSize=function(){this.itemSize=[parseFloat(this.get("itemWidth")),parseFloat(this.get("itemHeight"))]},t.prototype.isCategory=function(){return!!this.option.categories},t.prototype.setSelected=function(e){},t.prototype.getSelected=function(){return null},t.prototype.getValueState=function(e){return null},t.prototype.getVisualMeta=function(e){return null},t.type="visualMap",t.dependencies=["series"],t.defaultOption={show:!0,z:4,seriesIndex:"all",min:0,max:200,left:0,right:null,top:null,bottom:0,itemWidth:null,itemHeight:null,inverse:!1,orient:"vertical",backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",contentColor:"#5793f3",inactiveColor:"#aaa",borderWidth:0,padding:5,textGap:10,precision:0,textStyle:{color:"#333"}},t})(Gt),Fd=sCt;var Xj=[20,140],cCt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.optionUpdated=function(e,n){r.prototype.optionUpdated.apply(this,arguments),this.resetExtent(),this.resetVisual(function(a){a.mappingMethod="linear",a.dataExtent=this.getExtent()}),this._resetRange()},t.prototype.resetItemSize=function(){r.prototype.resetItemSize.apply(this,arguments);var e=this.itemSize;(e[0]==null||isNaN(e[0]))&&(e[0]=Xj[0]),(e[1]==null||isNaN(e[1]))&&(e[1]=Xj[1])},t.prototype._resetRange=function(){var e=this.getExtent(),n=this.option.range;!n||n.auto?(e.auto=1,this.option.range=e):O(n)&&(n[0]>n[1]&&n.reverse(),n[0]=Math.max(n[0],e[0]),n[1]=Math.min(n[1],e[1]))},t.prototype.completeVisualOption=function(){r.prototype.completeVisualOption.apply(this,arguments),T(this.stateList,function(e){var n=this.option.controller[e].symbolSize;n&&n[0]!==n[1]&&(n[0]=n[1]/3)},this)},t.prototype.setSelected=function(e){this.option.range=e.slice(),this._resetRange()},t.prototype.getSelected=function(){var e=this.getExtent(),n=fn((this.get("range")||[]).slice());return n[0]>e[1]&&(n[0]=e[1]),n[1]>e[1]&&(n[1]=e[1]),n[0]<e[0]&&(n[0]=e[0]),n[1]<e[0]&&(n[1]=e[0]),n},t.prototype.getValueState=function(e){var n=this.option.range,a=this.getExtent();return(n[0]<=a[0]||n[0]<=e)&&(n[1]>=a[1]||e<=n[1])?"inRange":"outOfRange"},t.prototype.findTargetDataIndices=function(e){var n=[];return this.eachTargetSeries(function(a){var o=[],i=a.getData();i.each(this.getDataDimensionIndex(i),function(u,l){e[0]<=u&&u<=e[1]&&o.push(l)},this),n.push({seriesId:a.id,dataIndex:o})},this),n},t.prototype.getVisualMeta=function(e){var n=Kj(this,"outOfRange",this.getExtent()),a=Kj(this,"inRange",this.option.range.slice()),o=[];function i(v,d){o.push({value:v,color:e(v,d)})}for(var u=0,l=0,f=a.length,s=n.length;l<s&&(!a.length||n[l]<=a[0]);l++)n[l]<a[u]&&i(n[l],"outOfRange");for(var c=1;u<f;u++,c=0)c&&o.length&&i(a[u],"outOfRange"),i(a[u],"inRange");for(var c=1;l<s;l++)(!a.length||a[a.length-1]<n[l])&&(c&&(o.length&&i(o[o.length-1].value,"outOfRange"),c=0),i(n[l],"outOfRange"));var p=o.length;return{stops:o,outerColors:[p?o[0].color:"transparent",p?o[p-1].color:"transparent"]}},t.type="visualMap.continuous",t.defaultOption=va(Fd.defaultOption,{align:"auto",calculable:!1,hoverLink:!0,realtime:!0,handleIcon:"path://M-11.39,9.77h0a3.5,3.5,0,0,1-3.5,3.5h-22a3.5,3.5,0,0,1-3.5-3.5h0a3.5,3.5,0,0,1,3.5-3.5h22A3.5,3.5,0,0,1-11.39,9.77Z",handleSize:"120%",handleStyle:{borderColor:"#fff",borderWidth:1},indicatorIcon:"circle",indicatorSize:"50%",indicatorStyle:{borderColor:"#fff",borderWidth:2,shadowBlur:2,shadowOffsetX:1,shadowOffsetY:1,shadowColor:"rgba(0,0,0,0.2)"}}),t})(Fd);function Kj(r,t,e){if(e[0]===e[1])return e.slice();for(var n=200,a=(e[1]-e[0])/n,o=e[0],i=[],u=0;u<=n&&o<e[1];u++)i.push(o),o+=a;return i.push(e[1]),i}var tY=cCt;var pCt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e.autoPositionValues={left:1,right:1,top:1,bottom:1},e}return t.prototype.init=function(e,n){this.ecModel=e,this.api=n},t.prototype.render=function(e,n,a,o){if(this.visualMapModel=e,e.get("show")===!1){this.group.removeAll();return}this.doRender(e,n,a,o)},t.prototype.renderBackground=function(e){var n=this.visualMapModel,a=Ai(n.get("padding")||0),o=e.getBoundingRect();e.add(new Rt({z2:-1,silent:!0,shape:{x:o.x-a[3],y:o.y-a[0],width:o.width+a[3]+a[1],height:o.height+a[0]+a[2]},style:{fill:n.get("backgroundColor"),stroke:n.get("borderColor"),lineWidth:n.get("borderWidth")}}))},t.prototype.getControllerVisual=function(e,n,a){a=a||{};var o=a.forceState,i=this.visualMapModel,u={};if(n==="color"){var l=i.get("contentColor");u.color=l}function f(v){return u[v]}function s(v,d){u[v]=d}var c=i.controllerVisuals[o||i.getValueState(e)],p=zr.prepareVisualTypes(c);return T(p,function(v){var d=c[v];a.convertOpacityToAlpha&&v==="opacity"&&(v="colorAlpha",d=c.__alphaForOpacity),zr.dependsOn(v,n)&&d&&d.applyVisual(e,f,s)}),u[n]},t.prototype.positionGroup=function(e){var n=this.visualMapModel,a=this.api;If(e,n.getBoxLayoutParams(),{width:a.getWidth(),height:a.getHeight()})},t.prototype.doRender=function(e,n,a,o){},t.type="visualMap",t})(Ee),Nx=pCt;var eY=[["left","right","width"],["top","bottom","height"]];function Ox(r,t,e){var n=r.option,a=n.align;if(a!=null&&a!=="auto")return a;for(var o={width:t.getWidth(),height:t.getHeight()},i=n.orient==="horizontal"?1:0,u=eY[i],l=[0,null,10],f={},s=0;s<3;s++)f[eY[1-i][s]]=l[s],f[u[s]]=s===2?e[0]:n[u[s]];var c=[["x","width",3],["y","height",0]][i],p=ze(f,o,n.padding);return u[(p.margin[c[2]]||0)+p[c[0]]+p[c[1]]*.5<o[c[1]]*.5?0:1]}function Ld(r,t){return T(r||[],function(e){e.dataIndex!=null&&(e.dataIndexInside=e.dataIndex,e.dataIndex=null),e.highlightKey="visualMap"+(t?t.componentIndex:"")}),r}var Ou=Ie,vCt=T,nY=Math.min,YP=Math.max,dCt=12,mCt=6,hCt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e._shapes={},e._dataInterval=[],e._handleEnds=[],e._hoverLinkDataIndices=[],e}return t.prototype.init=function(e,n){r.prototype.init.call(this,e,n),this._hoverLinkFromSeriesMouseOver=Q(this._hoverLinkFromSeriesMouseOver,this),this._hideIndicator=Q(this._hideIndicator,this)},t.prototype.doRender=function(e,n,a,o){(!o||o.type!=="selectDataRange"||o.from!==this.uid)&&this._buildView()},t.prototype._buildView=function(){this.group.removeAll();var e=this.visualMapModel,n=this.group;this._orient=e.get("orient"),this._useHandle=e.get("calculable"),this._resetInterval(),this._renderBar(n);var a=e.get("text");this._renderEndsText(n,a,0),this._renderEndsText(n,a,1),this._updateView(!0),this.renderBackground(n),this._updateView(),this._enableHoverLinkToSeries(),this._enableHoverLinkFromSeries(),this.positionGroup(n)},t.prototype._renderEndsText=function(e,n,a){if(n){var o=n[1-a];o=o!=null?o+"":"";var i=this.visualMapModel,u=i.get("textGap"),l=i.itemSize,f=this._shapes.mainGroup,s=this._applyTransform([l[0]/2,a===0?-u:l[1]+u],f),c=this._applyTransform(a===0?"bottom":"top",f),p=this._orient,v=this.visualMapModel.textStyleModel;this.group.add(new Wt({style:Re(v,{x:s[0],y:s[1],verticalAlign:p==="horizontal"?"middle":c,align:p==="horizontal"?c:"center",text:o})}))}},t.prototype._renderBar=function(e){var n=this.visualMapModel,a=this._shapes,o=n.itemSize,i=this._orient,u=this._useHandle,l=Ox(n,this.api,o),f=a.mainGroup=this._createBarGroup(l),s=new at;f.add(s),s.add(a.outOfRange=aY()),s.add(a.inRange=aY(null,u?iY(this._orient):null,Q(this._dragHandle,this,"all",!1),Q(this._dragHandle,this,"all",!0))),s.setClipPath(new Rt({shape:{x:0,y:0,width:o[0],height:o[1],r:3}}));var c=n.textStyleModel.getTextRect("\u56FD"),p=YP(c.width,c.height);u&&(a.handleThumbs=[],a.handleLabels=[],a.handleLabelPoints=[],this._createHandle(n,f,0,o,p,i),this._createHandle(n,f,1,o,p,i)),this._createIndicator(n,f,o,p,i),e.add(f)},t.prototype._createHandle=function(e,n,a,o,i,u){var l=Q(this._dragHandle,this,a,!1),f=Q(this._dragHandle,this,a,!0),s=qn(e.get("handleSize"),o[0]),c=We(e.get("handleIcon"),-s/2,-s/2,s,s,null,!0),p=iY(this._orient);c.attr({cursor:p,draggable:!0,drift:l,ondragend:f,onmousemove:function(_){qa(_.event)}}),c.x=o[0]/2,c.useStyle(e.getModel("handleStyle").getItemStyle()),c.setStyle({strokeNoScale:!0,strokeFirst:!0}),c.style.lineWidth*=2,c.ensureState("emphasis").style=e.getModel(["emphasis","handleStyle"]).getItemStyle(),vl(c,!0),n.add(c);var v=this.visualMapModel.textStyleModel,d=new Wt({cursor:p,draggable:!0,drift:l,onmousemove:function(_){qa(_.event)},ondragend:f,style:Re(v,{x:0,y:0,text:""})});d.ensureState("blur").style={opacity:.1},d.stateTransition={duration:200},this.group.add(d);var m=[s,0],h=this._shapes;h.handleThumbs[a]=c,h.handleLabelPoints[a]=m,h.handleLabels[a]=d},t.prototype._createIndicator=function(e,n,a,o,i){var u=qn(e.get("indicatorSize"),a[0]),l=We(e.get("indicatorIcon"),-u/2,-u/2,u,u,null,!0);l.attr({cursor:"move",invisible:!0,silent:!0,x:a[0]/2});var f=e.getModel("indicatorStyle").getItemStyle();if(l instanceof er){var s=l.style;l.useStyle(N({image:s.image,x:s.x,y:s.y,width:s.width,height:s.height},f))}else l.useStyle(f);n.add(l);var c=this.visualMapModel.textStyleModel,p=new Wt({silent:!0,invisible:!0,style:Re(c,{x:0,y:0,text:""})});this.group.add(p);var v=[(i==="horizontal"?o/2:mCt)+a[0]/2,0],d=this._shapes;d.indicator=l,d.indicatorLabel=p,d.indicatorLabelPoint=v,this._firstShowIndicator=!0},t.prototype._dragHandle=function(e,n,a,o){if(this._useHandle){if(this._dragging=!n,!n){var i=this._applyTransform([a,o],this._shapes.mainGroup,!0);this._updateInterval(e,i[1]),this._hideIndicator(),this._updateView()}n===!this.visualMapModel.get("realtime")&&this.api.dispatchAction({type:"selectDataRange",from:this.uid,visualMapId:this.visualMapModel.id,selected:this._dataInterval.slice()}),n?!this._hovering&&this._clearHoverLinkToSeries():oY(this.visualMapModel)&&this._doHoverLinkToSeries(this._handleEnds[e],!1)}},t.prototype._resetInterval=function(){var e=this.visualMapModel,n=this._dataInterval=e.getSelected(),a=e.getExtent(),o=[0,e.itemSize[1]];this._handleEnds=[Ou(n[0],a,o,!0),Ou(n[1],a,o,!0)]},t.prototype._updateInterval=function(e,n){n=n||0;var a=this.visualMapModel,o=this._handleEnds,i=[0,a.itemSize[1]];so(n,o,i,e,0);var u=a.getExtent();this._dataInterval=[Ou(o[0],i,u,!0),Ou(o[1],i,u,!0)]},t.prototype._updateView=function(e){var n=this.visualMapModel,a=n.getExtent(),o=this._shapes,i=[0,n.itemSize[1]],u=e?i:this._handleEnds,l=this._createBarVisual(this._dataInterval,a,u,"inRange"),f=this._createBarVisual(a,a,i,"outOfRange");o.inRange.setStyle({fill:l.barColor}).setShape("points",l.barPoints),o.outOfRange.setStyle({fill:f.barColor}).setShape("points",f.barPoints),this._updateHandle(u,l)},t.prototype._createBarVisual=function(e,n,a,o){var i={forceState:o,convertOpacityToAlpha:!0},u=this._makeColorGradient(e,i),l=[this.getControllerVisual(e[0],"symbolSize",i),this.getControllerVisual(e[1],"symbolSize",i)],f=this._createBarPoints(a,l);return{barColor:new bu(0,0,0,1,u),barPoints:f,handlesColor:[u[0].color,u[u.length-1].color]}},t.prototype._makeColorGradient=function(e,n){var a=100,o=[],i=(e[1]-e[0])/a;o.push({color:this.getControllerVisual(e[0],"color",n),offset:0});for(var u=1;u<a;u++){var l=e[0]+i*u;if(l>e[1])break;o.push({color:this.getControllerVisual(l,"color",n),offset:u/a})}return o.push({color:this.getControllerVisual(e[1],"color",n),offset:1}),o},t.prototype._createBarPoints=function(e,n){var a=this.visualMapModel.itemSize;return[[a[0]-n[0],e[0]],[a[0],e[0]],[a[0],e[1]],[a[0]-n[1],e[1]]]},t.prototype._createBarGroup=function(e){var n=this._orient,a=this.visualMapModel.get("inverse");return new at(n==="horizontal"&&!a?{scaleX:e==="bottom"?1:-1,rotation:Math.PI/2}:n==="horizontal"&&a?{scaleX:e==="bottom"?-1:1,rotation:-Math.PI/2}:n==="vertical"&&!a?{scaleX:e==="left"?1:-1,scaleY:-1}:{scaleX:e==="left"?1:-1})},t.prototype._updateHandle=function(e,n){if(this._useHandle){var a=this._shapes,o=this.visualMapModel,i=a.handleThumbs,u=a.handleLabels,l=o.itemSize,f=o.getExtent();vCt([0,1],function(s){var c=i[s];c.setStyle("fill",n.handlesColor[s]),c.y=e[s];var p=Ou(e[s],[0,l[1]],f,!0),v=this.getControllerVisual(p,"symbolSize");c.scaleX=c.scaleY=v/l[0],c.x=l[0]-v/2;var d=jn(a.handleLabelPoints[s],Ei(c,this.group));u[s].setStyle({x:d[0],y:d[1],text:o.formatValueText(this._dataInterval[s]),verticalAlign:"middle",align:this._orient==="vertical"?this._applyTransform("left",a.mainGroup):"center"})},this)}},t.prototype._showIndicator=function(e,n,a,o){var i=this.visualMapModel,u=i.getExtent(),l=i.itemSize,f=[0,l[1]],s=this._shapes,c=s.indicator;if(c){c.attr("invisible",!1);var p={convertOpacityToAlpha:!0},v=this.getControllerVisual(e,"color",p),d=this.getControllerVisual(e,"symbolSize"),m=Ou(e,u,f,!0),h=l[0]-d/2,_={x:c.x,y:c.y};c.y=m,c.x=h;var g=jn(s.indicatorLabelPoint,Ei(c,this.group)),y=s.indicatorLabel;y.attr("invisible",!1);var D=this._applyTransform("left",s.mainGroup),b=this._orient,C=b==="horizontal";y.setStyle({text:(a||"")+i.formatValueText(n),verticalAlign:C?D:"middle",align:C?"center":D});var x={x:h,y:m,style:{fill:v}},w={style:{x:g[0],y:g[1]}};if(i.ecModel.isAnimationEnabled()&&!this._firstShowIndicator){var S={duration:100,easing:"cubicInOut",additive:!0};c.x=_.x,c.y=_.y,c.animateTo(x,S),y.animateTo(w,S)}else c.attr(x),y.attr(w);this._firstShowIndicator=!1;var E=this._shapes.handleLabels;if(E)for(var M=0;M<E.length;M++)this.api.enterBlur(E[M])}},t.prototype._enableHoverLinkToSeries=function(){var e=this;this._shapes.mainGroup.on("mousemove",function(n){if(e._hovering=!0,!e._dragging){var a=e.visualMapModel.itemSize,o=e._applyTransform([n.offsetX,n.offsetY],e._shapes.mainGroup,!0,!0);o[1]=nY(YP(0,o[1]),a[1]),e._doHoverLinkToSeries(o[1],0<=o[0]&&o[0]<=a[0])}}).on("mouseout",function(){e._hovering=!1,!e._dragging&&e._clearHoverLinkToSeries()})},t.prototype._enableHoverLinkFromSeries=function(){var e=this.api.getZr();this.visualMapModel.option.hoverLink?(e.on("mouseover",this._hoverLinkFromSeriesMouseOver,this),e.on("mouseout",this._hideIndicator,this)):this._clearHoverLinkFromSeries()},t.prototype._doHoverLinkToSeries=function(e,n){var a=this.visualMapModel,o=a.itemSize;if(a.option.hoverLink){var i=[0,o[1]],u=a.getExtent();e=nY(YP(i[0],e),i[1]);var l=_Ct(a,u,i),f=[e-l,e+l],s=Ou(e,i,u,!0),c=[Ou(f[0],i,u,!0),Ou(f[1],i,u,!0)];f[0]<i[0]&&(c[0]=-1/0),f[1]>i[1]&&(c[1]=1/0),n&&(c[0]===-1/0?this._showIndicator(s,c[1],"< ",l):c[1]===1/0?this._showIndicator(s,c[0],"> ",l):this._showIndicator(s,s,"\u2248 ",l));var p=this._hoverLinkDataIndices,v=[];(n||oY(a))&&(v=this._hoverLinkDataIndices=a.findTargetDataIndices(c));var d=JW(p,v);this._dispatchHighDown("downplay",Ld(d[0],a)),this._dispatchHighDown("highlight",Ld(d[1],a))}},t.prototype._hoverLinkFromSeriesMouseOver=function(e){var n;if(Ri(e.target,function(l){var f=vt(l);if(f.dataIndex!=null)return n=f,!0},!0),!!n){var a=this.ecModel.getSeriesByIndex(n.seriesIndex),o=this.visualMapModel;if(o.isTargetSeries(a)){var i=a.getData(n.dataType),u=i.getStore().get(o.getDataDimensionIndex(i),n.dataIndex);isNaN(u)||this._showIndicator(u,u)}}},t.prototype._hideIndicator=function(){var e=this._shapes;e.indicator&&e.indicator.attr("invisible",!0),e.indicatorLabel&&e.indicatorLabel.attr("invisible",!0);var n=this._shapes.handleLabels;if(n)for(var a=0;a<n.length;a++)this.api.leaveBlur(n[a])},t.prototype._clearHoverLinkToSeries=function(){this._hideIndicator();var e=this._hoverLinkDataIndices;this._dispatchHighDown("downplay",Ld(e,this.visualMapModel)),e.length=0},t.prototype._clearHoverLinkFromSeries=function(){this._hideIndicator();var e=this.api.getZr();e.off("mouseover",this._hoverLinkFromSeriesMouseOver),e.off("mouseout",this._hideIndicator)},t.prototype._applyTransform=function(e,n,a,o){var i=Ei(n,o?null:this.group);return O(e)?jn(e,i,a):Cc(e,i,a)},t.prototype._dispatchHighDown=function(e,n){n&&n.length&&this.api.dispatchAction({type:e,batch:n})},t.prototype.dispose=function(){this._clearHoverLinkFromSeries(),this._clearHoverLinkToSeries()},t.type="visualMap.continuous",t})(Nx);function aY(r,t,e,n){return new xr({shape:{points:r},draggable:!!e,cursor:t,drift:e,onmousemove:function(a){qa(a.event)},ondragend:n})}function _Ct(r,t,e){var n=dCt/2,a=r.get("hoverLinkDataSize");return a&&(n=Ou(a,t,e,!0)/2),n}function oY(r){var t=r.get("hoverLinkOnHandle");return!!(t??r.get("realtime"))}function iY(r){return r==="vertical"?"ns-resize":"ew-resize"}var uY=hCt;var lY={type:"selectDataRange",event:"dataRangeSelected",update:"update"},fY=function(r,t){t.eachComponent({mainType:"visualMap",query:r},function(e){e.setSelected(r.selected)})};var sY=[{createOnAllSeries:!0,reset:function(r,t){var e=[];return t.eachComponent("visualMap",function(n){var a=r.pipelineContext;!n.isTargetSeries(r)||a&&a.large||e.push(Q9(n.stateList,n.targetVisuals,Q(n.getValueState,n),n.getDataDimensionIndex(r.getData())))}),e}},{createOnAllSeries:!0,reset:function(r,t){var e=r.getData(),n=[];t.eachComponent("visualMap",function(a){if(a.isTargetSeries(r)){var o=a.getVisualMeta(Q(gCt,null,r,a))||{stops:[],outerColors:[]},i=a.getDataDimensionIndex(e);i>=0&&(o.dimension=i,n.push(o))}}),r.getData().setVisual("visualMeta",n)}}];function gCt(r,t,e,n){for(var a=t.targetVisuals[n],o=zr.prepareVisualTypes(a),i={color:Tu(r.getData(),"color")},u=0,l=o.length;u<l;u++){var f=o[u],s=a[f==="opacity"?"__alphaForOpacity":f];s&&s.applyVisual(e,c,p)}return i.color;function c(v){return i[v]}function p(v,d){i[v]=d}}var cY=T;function QP(r){var t=r&&r.visualMap;O(t)||(t=t?[t]:[]),cY(t,function(e){if(e){Rd(e,"splitList")&&!Rd(e,"pieces")&&(e.pieces=e.splitList,delete e.splitList);var n=e.pieces;n&&O(n)&&cY(n,function(a){nt(a)&&(Rd(a,"start")&&!Rd(a,"min")&&(a.min=a.start),Rd(a,"end")&&!Rd(a,"max")&&(a.max=a.end))})}})}function Rd(r,t){return r&&r.hasOwnProperty&&r.hasOwnProperty(t)}var pY=!1;function Hg(r){pY||(pY=!0,r.registerSubTypeDefaulter("visualMap",function(t){return!t.categories&&(!(t.pieces?t.pieces.length>0:t.splitNumber>0)||t.calculable)?"continuous":"piecewise"}),r.registerAction(lY,fY),T(sY,function(t){r.registerVisual(r.PRIORITY.VISUAL.COMPONENT,t)}),r.registerPreprocessor(QP))}function kg(r){r.registerComponentModel(tY),r.registerComponentView(uY),Hg(r)}var yCt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e._pieceList=[],e}return t.prototype.optionUpdated=function(e,n){r.prototype.optionUpdated.apply(this,arguments),this.resetExtent();var a=this._mode=this._determineMode();this._pieceList=[],DCt[this._mode].call(this,this._pieceList),this._resetSelected(e,n);var o=this.option.categories;this.resetVisual(function(i,u){a==="categories"?(i.mappingMethod="category",i.categories=lt(o)):(i.dataExtent=this.getExtent(),i.mappingMethod="piecewise",i.pieceList=U(this._pieceList,function(l){return l=lt(l),u!=="inRange"&&(l.visual=null),l}))})},t.prototype.completeVisualOption=function(){var e=this.option,n={},a=zr.listVisualTypes(),o=this.isCategory();T(e.pieces,function(u){T(a,function(l){u.hasOwnProperty(l)&&(n[l]=1)})}),T(n,function(u,l){var f=!1;T(this.stateList,function(s){f=f||i(e,s,l)||i(e.target,s,l)},this),!f&&T(this.stateList,function(s){(e[s]||(e[s]={}))[l]=Px.get(l,s==="inRange"?"active":"inactive",o)})},this);function i(u,l,f){return u&&u[l]&&u[l].hasOwnProperty(f)}r.prototype.completeVisualOption.apply(this,arguments)},t.prototype._resetSelected=function(e,n){var a=this.option,o=this._pieceList,i=(n?a:e).selected||{};if(a.selected=i,T(o,function(l,f){var s=this.getSelectedMapKey(l);i.hasOwnProperty(s)||(i[s]=!0)},this),a.selectedMode==="single"){var u=!1;T(o,function(l,f){var s=this.getSelectedMapKey(l);i[s]&&(u?i[s]=!1:u=!0)},this)}},t.prototype.getItemSymbol=function(){return this.get("itemSymbol")},t.prototype.getSelectedMapKey=function(e){return this._mode==="categories"?e.value+"":e.index+""},t.prototype.getPieceList=function(){return this._pieceList},t.prototype._determineMode=function(){var e=this.option;return e.pieces&&e.pieces.length>0?"pieces":this.option.categories?"categories":"splitNumber"},t.prototype.setSelected=function(e){this.option.selected=lt(e)},t.prototype.getValueState=function(e){var n=zr.findPieceIndex(e,this._pieceList);return n!=null&&this.option.selected[this.getSelectedMapKey(this._pieceList[n])]?"inRange":"outOfRange"},t.prototype.findTargetDataIndices=function(e){var n=[],a=this._pieceList;return this.eachTargetSeries(function(o){var i=[],u=o.getData();u.each(this.getDataDimensionIndex(u),function(l,f){var s=zr.findPieceIndex(l,a);s===e&&i.push(f)},this),n.push({seriesId:o.id,dataIndex:i})},this),n},t.prototype.getRepresentValue=function(e){var n;if(this.isCategory())n=e.value;else if(e.value!=null)n=e.value;else{var a=e.interval||[];n=a[0]===-1/0&&a[1]===1/0?0:(a[0]+a[1])/2}return n},t.prototype.getVisualMeta=function(e){if(this.isCategory())return;var n=[],a=["",""],o=this;function i(s,c){var p=o.getRepresentValue({interval:s});c||(c=o.getValueState(p));var v=e(p,c);s[0]===-1/0?a[0]=v:s[1]===1/0?a[1]=v:n.push({value:s[0],color:v},{value:s[1],color:v})}var u=this._pieceList.slice();if(!u.length)u.push({interval:[-1/0,1/0]});else{var l=u[0].interval[0];l!==-1/0&&u.unshift({interval:[-1/0,l]}),l=u[u.length-1].interval[1],l!==1/0&&u.push({interval:[l,1/0]})}var f=-1/0;return T(u,function(s){var c=s.interval;c&&(c[0]>f&&i([f,c[0]],"outOfRange"),i(c.slice()),f=c[1])},this),{stops:n,outerColors:a}},t.type="visualMap.piecewise",t.defaultOption=va(Fd.defaultOption,{selected:null,minOpen:!1,maxOpen:!1,align:"auto",itemWidth:20,itemHeight:14,itemSymbol:"roundRect",pieces:null,categories:null,splitNumber:5,selectedMode:"multiple",itemGap:10,hoverLink:!0}),t})(Fd),DCt={splitNumber:function(r){var t=this.option,e=Math.min(t.precision,20),n=this.getExtent(),a=t.splitNumber;a=Math.max(parseInt(a,10),1),t.splitNumber=a;for(var o=(n[1]-n[0])/a;+o.toFixed(e)!==o&&e<5;)e++;t.precision=e,o=+o.toFixed(e),t.minOpen&&r.push({interval:[-1/0,n[0]],close:[0,0]});for(var i=0,u=n[0];i<a;u+=o,i++){var l=i===a-1?n[1]:u+o;r.push({interval:[u,l],close:[1,1]})}t.maxOpen&&r.push({interval:[n[1],1/0],close:[0,0]}),BE(r),T(r,function(f,s){f.index=s,f.text=this.formatValueText(f.interval)},this)},categories:function(r){var t=this.option;T(t.categories,function(e){r.push({text:this.formatValueText(e,!0),value:e})},this),vY(t,r)},pieces:function(r){var t=this.option;T(t.pieces,function(e,n){nt(e)||(e={value:e});var a={text:"",index:n};if(e.label!=null&&(a.text=e.label),e.hasOwnProperty("value")){var o=a.value=e.value;a.interval=[o,o],a.close=[1,1]}else{for(var i=a.interval=[],u=a.close=[0,0],l=[1,0,1],f=[-1/0,1/0],s=[],c=0;c<2;c++){for(var p=[["gte","gt","min"],["lte","lt","max"]][c],v=0;v<3&&i[c]==null;v++)i[c]=e[p[v]],u[c]=l[v],s[c]=v===2;i[c]==null&&(i[c]=f[c])}s[0]&&i[1]===1/0&&(u[0]=0),s[1]&&i[0]===-1/0&&(u[1]=0),i[0]===i[1]&&u[0]&&u[1]&&(a.value=i[0])}a.visual=zr.retrieveVisuals(e),r.push(a)},this),vY(t,r),BE(r),T(r,function(e){var n=e.close,a=[["<","\u2264"][n[1]],[">","\u2265"][n[0]]];e.text=e.text||this.formatValueText(e.value!=null?e.value:e.interval,!1,a)},this)}};function vY(r,t){var e=r.inverse;(r.orient==="vertical"?!e:e)&&t.reverse()}var dY=yCt;var bCt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type=t.type,e}return t.prototype.doRender=function(){var e=this.group;e.removeAll();var n=this.visualMapModel,a=n.get("textGap"),o=n.textStyleModel,i=o.getFont(),u=o.getTextColor(),l=this._getItemAlign(),f=n.itemSize,s=this._getViewData(),c=s.endsText,p=ir(n.get("showLabel",!0),!c);c&&this._renderEndsText(e,c[0],f,p,l),T(s.viewPieceList,function(v){var d=v.piece,m=new at;m.onclick=Q(this._onItemClick,this,d),this._enableHoverLink(m,v.indexInModelPieceList);var h=n.getRepresentValue(d);if(this._createItemSymbol(m,h,[0,0,f[0],f[1]]),p){var _=this.visualMapModel.getValueState(h);m.add(new Wt({style:{x:l==="right"?-a:f[0]+a,y:f[1]/2,text:d.text,verticalAlign:"middle",align:l,font:i,fill:u,opacity:_==="outOfRange"?.5:1}}))}e.add(m)},this),c&&this._renderEndsText(e,c[1],f,p,l),Fi(n.get("orient"),e,n.get("itemGap")),this.renderBackground(e),this.positionGroup(e)},t.prototype._enableHoverLink=function(e,n){var a=this;e.on("mouseover",function(){return o("highlight")}).on("mouseout",function(){return o("downplay")});var o=function(i){var u=a.visualMapModel;u.option.hoverLink&&a.api.dispatchAction({type:i,batch:Ld(u.findTargetDataIndices(n),u)})}},t.prototype._getItemAlign=function(){var e=this.visualMapModel,n=e.option;if(n.orient==="vertical")return Ox(e,this.api,e.itemSize);var a=n.align;return(!a||a==="auto")&&(a="left"),a},t.prototype._renderEndsText=function(e,n,a,o,i){if(n){var u=new at,l=this.visualMapModel.textStyleModel;u.add(new Wt({style:Re(l,{x:o?i==="right"?a[0]:0:a[0]/2,y:a[1]/2,verticalAlign:"middle",align:o?i:"center",text:n})})),e.add(u)}},t.prototype._getViewData=function(){var e=this.visualMapModel,n=U(e.getPieceList(),function(u,l){return{piece:u,indexInModelPieceList:l}}),a=e.get("text"),o=e.get("orient"),i=e.get("inverse");return(o==="horizontal"?i:!i)?n.reverse():a&&(a=a.slice().reverse()),{viewPieceList:n,endsText:a}},t.prototype._createItemSymbol=function(e,n,a){e.add(We(this.getControllerVisual(n,"symbol"),a[0],a[1],a[2],a[3],this.getControllerVisual(n,"color")))},t.prototype._onItemClick=function(e){var n=this.visualMapModel,a=n.option,o=a.selectedMode;if(o){var i=lt(a.selected),u=n.getSelectedMapKey(e);o==="single"||o===!0?(i[u]=!0,T(i,function(l,f){i[f]=f===u})):i[u]=!i[u],this.api.dispatchAction({type:"selectDataRange",from:this.uid,visualMapId:this.visualMapModel.id,selected:i})}},t.type="visualMap.piecewise",t})(Nx),mY=bCt;function zg(r){r.registerComponentModel(dY),r.registerComponentView(mY),Hg(r)}function ZP(r){Jt(kg),Jt(zg)}var CCt={label:{enabled:!0},decal:{show:!1}},hY=St(),TCt={};function XP(r,t){var e=r.getModel("aria");if(!e.get("enabled"))return;var n=lt(CCt);Et(n.label,r.getLocaleModel().get("aria"),!1),Et(e.option,n,!1),a(),o();function a(){var f=e.getModel("decal"),s=f.get("show");if(s){var c=Z();r.eachSeries(function(p){if(!p.isColorBySeries()){var v=c.get(p.type);v||(v={},c.set(p.type,v)),hY(p).scope=v}}),r.eachRawSeries(function(p){if(r.isSeriesFiltered(p))return;if(X(p.enableAriaDecal)){p.enableAriaDecal();return}var v=p.getData();if(p.isColorBySeries()){var g=D_(p.ecModel,p.name,TCt,r.getSeriesCount()),y=v.getVisual("decal");v.setVisual("decal",D(y,g))}else{var d=p.getRawData(),m={},h=hY(p).scope;v.each(function(b){var C=v.getRawIndex(b);m[C]=b});var _=d.count();d.each(function(b){var C=m[b],x=d.getName(b)||b+"",w=D_(p.ecModel,x,h,_),S=v.getItemVisual(C,"decal");v.setItemVisual(C,"decal",D(S,w))})}function D(b,C){var x=b?N(N({},C),b):C;return x.dirty=!0,x}})}}function o(){var f=r.getLocaleModel().get("aria"),s=e.getModel("label");if(s.option=et(s.option,f),!!s.get("enabled")){var c=t.getZr().dom;if(s.get("description")){c.setAttribute("aria-label",s.get("description"));return}var p=r.getSeriesCount(),v=s.get(["data","maxCount"])||10,d=s.get(["series","maxCount"])||10,m=Math.min(p,d),h;if(!(p<1)){var _=u();if(_){var g=s.get(["general","withTitle"]);h=i(g,{title:_})}else h=s.get(["general","withoutTitle"]);var y=[],D=p>1?s.get(["series","multiple","prefix"]):s.get(["series","single","prefix"]);h+=i(D,{seriesCount:p}),r.eachSeries(function(w,S){if(S<m){var E=void 0,M=w.get("name"),I=M?"withName":"withoutName";E=p>1?s.get(["series","multiple",I]):s.get(["series","single",I]),E=i(E,{seriesId:w.seriesIndex,seriesName:w.get("name"),seriesType:l(w.subType)});var F=w.getData();if(F.count()>v){var L=s.get(["data","partialData"]);E+=i(L,{displayCnt:v})}else E+=s.get(["data","allData"]);for(var R=s.get(["data","separator","middle"]),P=s.get(["data","separator","end"]),k=[],H=0;H<F.count();H++)if(H<v){var G=F.getName(H),j=F.getValues(H),rt=s.get(["data",G?"withName":"withoutName"]);k.push(i(rt,{name:G,value:j.join(R)}))}E+=k.join(R)+P,y.push(E)}});var b=s.getModel(["series","multiple","separator"]),C=b.get("middle"),x=b.get("end");h+=y.join(C)+x,c.setAttribute("aria-label",h)}}}function i(f,s){if(!V(f))return f;var c=f;return T(s,function(p,v){c=c.replace(new RegExp("\\{\\s*"+v+"\\s*\\}","g"),p)}),c}function u(){var f=r.get("title");return f&&f.length&&(f=f[0]),f&&f.text}function l(f){var s=r.getLocaleModel().get(["series","typeNames"]);return s[f]||s.chart}}function KP(r){if(!(!r||!r.aria)){var t=r.aria;t.show!=null&&(t.enabled=t.show),t.label=t.label||{},T(["description","general","series","data"],function(e){t[e]!=null&&(t.label[e]=t[e])})}}function tN(r){r.registerPreprocessor(KP),r.registerVisual(r.PRIORITY.VISUAL.ARIA,XP)}var _Y={value:"eq","<":"lt","<=":"lte",">":"gt",">=":"gte","=":"eq","!=":"ne","<>":"ne"},xCt=(function(){function r(t){var e=this._condVal=V(t)?new RegExp(t):bz(t)?t:null;if(e==null){var n="";Fe(n)}}return r.prototype.evaluate=function(t){var e=typeof t;return V(e)?this._condVal.test(t):Nt(e)?this._condVal.test(t+""):!1},r})(),wCt=(function(){function r(){}return r.prototype.evaluate=function(){return this.value},r})(),SCt=(function(){function r(){}return r.prototype.evaluate=function(){for(var t=this.children,e=0;e<t.length;e++)if(!t[e].evaluate())return!1;return!0},r})(),ECt=(function(){function r(){}return r.prototype.evaluate=function(){for(var t=this.children,e=0;e<t.length;e++)if(t[e].evaluate())return!0;return!1},r})(),MCt=(function(){function r(){}return r.prototype.evaluate=function(){return!this.child.evaluate()},r})(),ACt=(function(){function r(){}return r.prototype.evaluate=function(){for(var t=!!this.valueParser,e=this.getValue,n=e(this.valueGetterParam),a=t?this.valueParser(n):null,o=0;o<this.subCondList.length;o++)if(!this.subCondList[o].evaluate(t?a:n))return!1;return!0},r})();function eN(r,t){if(r===!0||r===!1){var e=new wCt;return e.value=r,e}var n="";return yY(r)||Fe(n),r.and?gY("and",r,t):r.or?gY("or",r,t):r.not?ICt(r,t):FCt(r,t)}function gY(r,t,e){var n=t[r],a="";O(n)||Fe(a),n.length||Fe(a);var o=r==="and"?new SCt:new ECt;return o.children=U(n,function(i){return eN(i,e)}),o.children.length||Fe(a),o}function ICt(r,t){var e=r.not,n="";yY(e)||Fe(n);var a=new MCt;return a.child=eN(e,t),a.child||Fe(n),a}function FCt(r,t){for(var e="",n=t.prepareGetValue(r),a=[],o=Ft(r),i=r.parser,u=i?Zb(i):null,l=0;l<o.length;l++){var f=o[l];if(!(f==="parser"||t.valueGetterAttrMap.get(f))){var s=st(_Y,f)?_Y[f]:f,c=r[f],p=u?u(c):c,v=HV(s,p)||s==="reg"&&new xCt(p);v||Fe(e),a.push(v)}}a.length||Fe(e);var d=new ACt;return d.valueGetterParam=n,d.valueParser=u,d.getValue=t.getValue,d.subCondList=a,d}function yY(r){return nt(r)&&!Ur(r)}var LCt=(function(){function r(t,e){this._cond=eN(t,e)}return r.prototype.evaluate=function(){return this._cond.evaluate()},r})();function DY(r,t){return new LCt(r,t)}var bY={type:"echarts:filter",transform:function(r){for(var t=r.upstream,e,n=DY(r.config,{valueGetterAttrMap:Z({dimension:!0}),prepareGetValue:function(u){var l="",f=u.dimension;st(u,"dimension")||Fe(l);var s=t.getDimensionInfo(f);return s||Fe(l),{dimIdx:s.index}},getValue:function(u){return t.retrieveValueFromItem(e,u.dimIdx)}}),a=[],o=0,i=t.count();o<i;o++)e=t.getRawDataItem(o),n.evaluate()&&a.push(e);return{data:a}}};var CY={type:"echarts:sort",transform:function(r){var t=r.upstream,e=r.config,n="",a=we(e);a.length||Fe(n);var o=[];T(a,function(s){var c=s.dimension,p=s.order,v=s.parser,d=s.incomparable;if(c==null&&Fe(n),p!=="asc"&&p!=="desc"&&Fe(n),d&&d!=="min"&&d!=="max"){var m="";Fe(m)}if(p!=="asc"&&p!=="desc"){var h="";Fe(h)}var _=t.getDimensionInfo(c);_||Fe(n);var g=v?Zb(v):null;v&&!g&&Fe(n),o.push({dimIdx:_.index,parser:g,comparator:new Xb(p,d)})});var i=t.sourceFormat;i!==Yr&&i!==Qn&&Fe(n);for(var u=[],l=0,f=t.count();l<f;l++)u.push(t.getRawDataItem(l));return u.sort(function(s,c){for(var p=0;p<o.length;p++){var v=o[p],d=t.retrieveValueFromItem(s,v.dimIdx),m=t.retrieveValueFromItem(c,v.dimIdx);v.parser&&(d=v.parser(d),m=v.parser(m));var h=v.comparator.evaluate(d,m);if(h!==0)return h}return 0}),{data:u}}};function rN(r){r.registerTransform(bY),r.registerTransform(CY)}var RCt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type="dataset",e}return t.prototype.init=function(e,n,a){r.prototype.init.call(this,e,n,a),this._sourceManager=new eC(this),gA(this)},t.prototype.mergeOption=function(e,n){r.prototype.mergeOption.call(this,e,n),gA(this)},t.prototype.optionUpdated=function(){this._sourceManager.dirty()},t.prototype.getSourceManager=function(){return this._sourceManager},t.type="dataset",t.defaultOption={seriesLayoutBy:ao},t})(Gt);var PCt=(function(r){A(t,r);function t(){var e=r!==null&&r.apply(this,arguments)||this;return e.type="dataset",e}return t.type="dataset",t})(Ee);function nN(r){r.registerComponentModel(RCt),r.registerComponentView(PCt)}var Uu=Tn.CMD;function Pd(r,t){return Math.abs(r-t)<1e-5}function Ux(r){var t=r.data,e=r.len(),n=[],a,o=0,i=0,u=0,l=0;function f(F,L){a&&a.length>2&&n.push(a),a=[F,L]}function s(F,L,R,P){Pd(F,R)&&Pd(L,P)||a.push(F,L,R,P,R,P)}function c(F,L,R,P,k,H){var G=Math.abs(L-F),j=Math.tan(G/4)*4/3,rt=L<F?-1:1,xt=Math.cos(F),J=Math.sin(F),ot=Math.cos(L),At=Math.sin(L),Mt=xt*k+R,ut=J*H+P,$=ot*k+R,Ct=At*H+P,ct=k*j*rt,ft=H*j*rt;a.push(Mt-ct*J,ut+ft*xt,$+ct*At,Ct-ft*ot,$,Ct)}for(var p,v,d,m,h=0;h<e;){var _=t[h++],g=h===1;switch(g&&(o=t[h],i=t[h+1],u=o,l=i,(_===Uu.L||_===Uu.C||_===Uu.Q)&&(a=[u,l])),_){case Uu.M:o=u=t[h++],i=l=t[h++],f(u,l);break;case Uu.L:p=t[h++],v=t[h++],s(o,i,p,v),o=p,i=v;break;case Uu.C:a.push(t[h++],t[h++],t[h++],t[h++],o=t[h++],i=t[h++]);break;case Uu.Q:p=t[h++],v=t[h++],d=t[h++],m=t[h++],a.push(o+2/3*(p-o),i+2/3*(v-i),d+2/3*(p-d),m+2/3*(v-m),d,m),o=d,i=m;break;case Uu.A:var y=t[h++],D=t[h++],b=t[h++],C=t[h++],x=t[h++],w=t[h++]+x;h+=1;var S=!t[h++];p=Math.cos(x)*b+y,v=Math.sin(x)*C+D,g?(u=p,l=v,f(u,l)):s(o,i,p,v),o=Math.cos(w)*b+y,i=Math.sin(w)*C+D;for(var E=(S?-1:1)*Math.PI/2,M=x;S?M>w:M<w;M+=E){var I=S?Math.max(M+E,w):Math.min(M+E,w);c(M,I,y,D,b,C)}break;case Uu.R:u=o=t[h++],l=i=t[h++],p=u+t[h++],v=l+t[h++],f(p,l),s(p,l,p,v),s(p,v,u,v),s(u,v,u,l),s(u,l,p,l);break;case Uu.Z:a&&s(o,i,u,l),o=u,i=l;break}}return a&&a.length>2&&n.push(a),n}function aN(r,t,e,n,a,o,i,u,l,f){if(Pd(r,e)&&Pd(t,n)&&Pd(a,i)&&Pd(o,u)){l.push(i,u);return}var s=2/f,c=s*s,p=i-r,v=u-t,d=Math.sqrt(p*p+v*v);p/=d,v/=d;var m=e-r,h=n-t,_=a-i,g=o-u,y=m*m+h*h,D=_*_+g*g;if(y<c&&D<c){l.push(i,u);return}var b=p*m+v*h,C=-p*_-v*g,x=y-b*b,w=D-C*C;if(x<c&&b>=0&&w<c&&C>=0){l.push(i,u);return}var S=[],E=[];Vo(r,e,a,i,.5,S),Vo(t,n,o,u,.5,E),aN(S[0],E[0],S[1],E[1],S[2],E[2],S[3],E[3],l,f),aN(S[4],E[4],S[5],E[5],S[6],E[6],S[7],E[7],l,f)}function TY(r,t){var e=Ux(r),n=[];t=t||1;for(var a=0;a<e.length;a++){var o=e[a],i=[],u=o[0],l=o[1];i.push(u,l);for(var f=2;f<o.length;){var s=o[f++],c=o[f++],p=o[f++],v=o[f++],d=o[f++],m=o[f++];aN(u,l,s,c,p,v,d,m,i,t),u=d,l=m}n.push(i)}return n}function EY(r,t,e){var n=r[t],a=r[1-t],o=Math.abs(n/a),i=Math.ceil(Math.sqrt(o*e)),u=Math.floor(e/i);u===0&&(u=1,i=e);for(var l=[],f=0;f<i;f++)l.push(u);var s=i*u,c=e-s;if(c>0)for(var f=0;f<c;f++)l[f%i]+=1;return l}function xY(r,t,e){for(var n=r.r0,a=r.r,o=r.startAngle,i=r.endAngle,u=Math.abs(i-o),l=u*a,f=a-n,s=l>Math.abs(f),c=EY([l,f],s?0:1,t),p=(s?u:f)/c.length,v=0;v<c.length;v++)for(var d=(s?f:u)/c[v],m=0;m<c[v];m++){var h={};s?(h.startAngle=o+p*v,h.endAngle=o+p*(v+1),h.r0=n+d*m,h.r=n+d*(m+1)):(h.startAngle=o+d*m,h.endAngle=o+d*(m+1),h.r0=n+p*v,h.r=n+p*(v+1)),h.clockwise=r.clockwise,h.cx=r.cx,h.cy=r.cy,e.push(h)}}function NCt(r,t,e){for(var n=r.width,a=r.height,o=n>a,i=EY([n,a],o?0:1,t),u=o?"width":"height",l=o?"height":"width",f=o?"x":"y",s=o?"y":"x",c=r[u]/i.length,p=0;p<i.length;p++)for(var v=r[l]/i[p],d=0;d<i[p];d++){var m={};m[f]=p*c,m[s]=d*v,m[u]=c,m[l]=v,m.x+=r.x,m.y+=r.y,e.push(m)}}function wY(r,t,e,n){return r*n-e*t}function OCt(r,t,e,n,a,o,i,u){var l=e-r,f=n-t,s=i-a,c=u-o,p=wY(s,c,l,f);if(Math.abs(p)<1e-6)return null;var v=r-a,d=t-o,m=wY(v,d,s,c)/p;return m<0||m>1?null:new Qt(m*l+r,m*f+t)}function UCt(r,t,e){var n=new Qt;Qt.sub(n,e,t),n.normalize();var a=new Qt;Qt.sub(a,r,t);var o=a.dot(n);return o}function Nd(r,t){var e=r[r.length-1];e&&e[0]===t[0]&&e[1]===t[1]||r.push(t)}function HCt(r,t,e){for(var n=r.length,a=[],o=0;o<n;o++){var i=r[o],u=r[(o+1)%n],l=OCt(i[0],i[1],u[0],u[1],t.x,t.y,e.x,e.y);l&&a.push({projPt:UCt(l,t,e),pt:l,idx:o})}if(a.length<2)return[{points:r},{points:r}];a.sort(function(h,_){return h.projPt-_.projPt});var f=a[0],s=a[a.length-1];if(s.idx<f.idx){var c=f;f=s,s=c}for(var p=[f.pt.x,f.pt.y],v=[s.pt.x,s.pt.y],d=[p],m=[v],o=f.idx+1;o<=s.idx;o++)Nd(d,r[o].slice());Nd(d,v),Nd(d,p);for(var o=s.idx+1;o<=f.idx+n;o++)Nd(m,r[o%n].slice());return Nd(m,p),Nd(m,v),[{points:d},{points:m}]}function SY(r){var t=r.points,e=[],n=[];fc(t,e,n);var a=new yt(e[0],e[1],n[0]-e[0],n[1]-e[1]),o=a.width,i=a.height,u=a.x,l=a.y,f=new Qt,s=new Qt;return o>i?(f.x=s.x=u+o/2,f.y=l,s.y=l+i):(f.y=s.y=l+i/2,f.x=u,s.x=u+o),HCt(t,f,s)}function Hx(r,t,e,n){if(e===1)n.push(t);else{var a=Math.floor(e/2),o=r(t);Hx(r,o[0],a,n),Hx(r,o[1],e-a,n)}return n}function kCt(r,t){for(var e=[],n=0;n<t;n++)e.push(Ev(r));return e}function zCt(r,t){t.setStyle(r.style),t.z=r.z,t.z2=r.z2,t.zlevel=r.zlevel}function WCt(r){for(var t=[],e=0;e<r.length;)t.push([r[e++],r[e++]]);return t}function MY(r,t){var e=[],n=r.shape,a;switch(r.type){case"rect":NCt(n,t,e),a=Rt;break;case"sector":xY(n,t,e),a=Vr;break;case"circle":xY({r0:0,r:n.r,startAngle:0,endAngle:Math.PI*2,cx:n.cx,cy:n.cy},t,e),a=Vr;break;default:var o=r.getComputedTransform(),i=o?Math.sqrt(Math.max(o[0]*o[0]+o[1]*o[1],o[2]*o[2]+o[3]*o[3])):1,u=U(TY(r.getUpdatedPathProxy(),i),function(_){return WCt(_)}),l=u.length;if(l===0)Hx(SY,{points:u[0]},t,e);else if(l===t)for(var f=0;f<l;f++)e.push({points:u[f]});else{var s=0,c=U(u,function(_){var g=[],y=[];fc(_,g,y);var D=(y[1]-g[1])*(y[0]-g[0]);return s+=D,{poly:_,area:D}});c.sort(function(_,g){return g.area-_.area});for(var p=t,f=0;f<l;f++){var v=c[f];if(p<=0)break;var d=f===l-1?p:Math.ceil(v.area/s*t);d<0||(Hx(SY,{points:v.poly},d,e),p-=d)}}a=xr;break}if(!a)return kCt(r,t);for(var m=[],f=0;f<e.length;f++){var h=new a;h.setShape(e[f]),zCt(r,h),m.push(h)}return m}function GCt(r,t){var e=r.length,n=t.length;if(e===n)return[r,t];for(var a=[],o=[],i=e<n?r:t,u=Math.min(e,n),l=Math.abs(n-e)/6,f=(u-2)/6,s=Math.ceil(l/f)+1,c=[i[0],i[1]],p=l,v=2;v<u;){var d=i[v-2],m=i[v-1],h=i[v++],_=i[v++],g=i[v++],y=i[v++],D=i[v++],b=i[v++];if(p<=0){c.push(h,_,g,y,D,b);continue}for(var C=Math.min(p,s-1)+1,x=1;x<=C;x++){var w=x/C;Vo(d,h,g,D,w,a),Vo(m,_,y,b,w,o),d=a[3],m=o[3],c.push(a[1],o[1],a[2],o[2],d,m),h=a[5],_=o[5],g=a[6],y=o[6]}p-=C-1}return i===r?[c,t]:[r,c]}function AY(r,t){for(var e=r.length,n=r[e-2],a=r[e-1],o=[],i=0;i<t.length;)o[i++]=n,o[i++]=a;return o}function BCt(r,t){for(var e,n,a,o=[],i=[],u=0;u<Math.max(r.length,t.length);u++){var l=r[u],f=t[u],s=void 0,c=void 0;l?f?(e=GCt(l,f),s=e[0],c=e[1],n=s,a=c):(c=AY(a||l,l),s=l):(s=AY(n||f,f),c=f),o.push(s),i.push(c)}return[o,i]}function IY(r){for(var t=0,e=0,n=0,a=r.length,o=0,i=a-2;o<a;i=o,o+=2){var u=r[i],l=r[i+1],f=r[o],s=r[o+1],c=u*s-f*l;t+=c,e+=(u+f)*c,n+=(l+s)*c}return t===0?[r[0]||0,r[1]||0]:[e/t/3,n/t/3,t]}function VCt(r,t,e,n){for(var a=(r.length-2)/6,o=1/0,i=0,u=r.length,l=u-2,f=0;f<a;f++){for(var s=f*6,c=0,p=0;p<u;p+=2){var v=p===0?s:(s+p-2)%l+2,d=r[v]-e[0],m=r[v+1]-e[1],h=t[p]-n[0],_=t[p+1]-n[1],g=h-d,y=_-m;c+=g*g+y*y}c<o&&(o=c,i=f)}return i}function $Ct(r){for(var t=[],e=r.length,n=0;n<e;n+=2)t[n]=r[e-n-2],t[n+1]=r[e-n-1];return t}function qCt(r,t,e,n){for(var a=[],o,i=0;i<r.length;i++){var u=r[i],l=t[i],f=IY(u),s=IY(l);o==null&&(o=f[2]<0!=s[2]<0);var c=[],p=[],v=0,d=1/0,m=[],h=u.length;o&&(u=$Ct(u));for(var _=VCt(u,l,f,s)*6,g=h-2,y=0;y<g;y+=2){var D=(_+y)%g+2;c[y+2]=u[D]-f[0],c[y+3]=u[D+1]-f[1]}if(c[0]=u[_]-f[0],c[1]=u[_+1]-f[1],e>0)for(var b=n/e,C=-n/2;C<=n/2;C+=b){for(var x=Math.sin(C),w=Math.cos(C),S=0,y=0;y<u.length;y+=2){var E=c[y],M=c[y+1],I=l[y]-s[0],F=l[y+1]-s[1],L=I*w-F*x,R=I*x+F*w;m[y]=L,m[y+1]=R;var P=L-E,k=R-M;S+=P*P+k*k}if(S<d){d=S,v=C;for(var H=0;H<m.length;H++)p[H]=m[H]}}else for(var G=0;G<h;G+=2)p[G]=l[G]-s[0],p[G+1]=l[G+1]-s[1];a.push({from:c,to:p,fromCp:f,toCp:s,rotation:-v})}return a}function Gg(r){return r.__isCombineMorphing}var LY="__mOriginal_";function kx(r,t,e){var n=LY+t,a=r[n]||r[t];r[n]||(r[n]=r[t]);var o=e.replace,i=e.after,u=e.before;r[t]=function(){var l=arguments,f;return u&&u.apply(this,l),o?f=o.apply(this,l):f=a.apply(this,l),i&&i.apply(this,l),f}}function Wg(r,t){var e=LY+t;r[e]&&(r[t]=r[e],r[e]=null)}function FY(r,t){for(var e=0;e<r.length;e++)for(var n=r[e],a=0;a<n.length;){var o=n[a],i=n[a+1];n[a++]=t[0]*o+t[2]*i+t[4],n[a++]=t[1]*o+t[3]*i+t[5]}}function RY(r,t){var e=r.getUpdatedPathProxy(),n=t.getUpdatedPathProxy(),a=BCt(Ux(e),Ux(n)),o=a[0],i=a[1],u=r.getComputedTransform(),l=t.getComputedTransform();function f(){this.transform=null}u&&FY(o,u),l&&FY(i,l),kx(t,"updateTransform",{replace:f}),t.transform=null;var s=qCt(o,i,10,Math.PI),c=[];kx(t,"buildPath",{replace:function(p){for(var v=t.__morphT,d=1-v,m=[],h=0;h<s.length;h++){var _=s[h],g=_.from,y=_.to,D=_.rotation*v,b=_.fromCp,C=_.toCp,x=Math.sin(D),w=Math.cos(D);ov(m,b,C,v);for(var S=0;S<g.length;S+=2){var E=g[S],M=g[S+1],I=y[S],F=y[S+1],L=E*d+I*v,R=M*d+F*v;c[S]=L*w-R*x+m[0],c[S+1]=L*x+R*w+m[1]}var P=c[0],k=c[1];p.moveTo(P,k);for(var S=2;S<g.length;){var I=c[S++],F=c[S++],H=c[S++],G=c[S++],j=c[S++],rt=c[S++];P===I&&k===F&&H===j&&G===rt?p.lineTo(j,rt):p.bezierCurveTo(I,F,H,G,j,rt),P=j,k=rt}}}})}function Wx(r,t,e){if(!r||!t)return t;var n=e.done,a=e.during;RY(r,t),t.__morphT=0;function o(){Wg(t,"buildPath"),Wg(t,"updateTransform"),t.__morphT=-1,t.createPathProxy(),t.dirtyShape()}return t.animateTo({__morphT:1},et({during:function(i){t.dirtyShape(),a&&a(i)},done:function(){o(),n&&n()}},e)),t}function JCt(r,t,e,n,a,o){var i=16;r=a===e?0:Math.round(32767*(r-e)/(a-e)),t=o===n?0:Math.round(32767*(t-n)/(o-n));for(var u=0,l,f=(1<<i)/2;f>0;f/=2){var s=0,c=0;(r&f)>0&&(s=1),(t&f)>0&&(c=1),u+=f*f*(3*s^c),c===0&&(s===1&&(r=f-1-r,t=f-1-t),l=r,r=t,t=l)}return u}function zx(r){var t=1/0,e=1/0,n=-1/0,a=-1/0,o=U(r,function(u){var l=u.getBoundingRect(),f=u.getComputedTransform(),s=l.x+l.width/2+(f?f[4]:0),c=l.y+l.height/2+(f?f[5]:0);return t=Math.min(s,t),e=Math.min(c,e),n=Math.max(s,n),a=Math.max(c,a),[s,c]}),i=U(o,function(u,l){return{cp:u,z:JCt(u[0],u[1],t,e,n,a),path:r[l]}});return i.sort(function(u,l){return u.z-l.z}).map(function(u){return u.path})}function PY(r){return MY(r.path,r.count)}function oN(){return{fromIndividuals:[],toIndividuals:[],count:0}}function NY(r,t,e){var n=[];function a(b){for(var C=0;C<b.length;C++){var x=b[C];Gg(x)?a(x.childrenRef()):x instanceof bt&&n.push(x)}}a(r);var o=n.length;if(!o)return oN();var i=e.dividePath||PY,u=i({path:t,count:o});if(u.length!==o)return console.error("Invalid morphing: unmatched splitted path"),oN();n=zx(n),u=zx(u);for(var l=e.done,f=e.during,s=e.individualDelay,c=new Ya,p=0;p<o;p++){var v=n[p],d=u[p];d.parent=t,d.copyTransform(c),s||RY(v,d)}t.__isCombineMorphing=!0,t.childrenRef=function(){return u};function m(b){for(var C=0;C<u.length;C++)u[C].addSelfToZr(b)}kx(t,"addSelfToZr",{after:function(b){m(b)}}),kx(t,"removeSelfFromZr",{after:function(b){for(var C=0;C<u.length;C++)u[C].removeSelfFromZr(b)}});function h(){t.__isCombineMorphing=!1,t.__morphT=-1,t.childrenRef=null,Wg(t,"addSelfToZr"),Wg(t,"removeSelfFromZr")}var _=u.length;if(s)for(var g=_,y=function(){g--,g===0&&(h(),l&&l())},p=0;p<_;p++){var D=s?et({delay:(e.delay||0)+s(p,_,n[p],u[p]),done:y},e):e;Wx(n[p],u[p],D)}else t.__morphT=0,t.animateTo({__morphT:1},et({during:function(b){for(var C=0;C<_;C++){var x=u[C];x.__morphT=t.__morphT,x.dirtyShape()}f&&f(b)},done:function(){h();for(var b=0;b<r.length;b++)Wg(r[b],"updateTransform");l&&l()}},e));return t.__zr&&m(t.__zr),{fromIndividuals:n,toIndividuals:u,count:_}}function OY(r,t,e){var n=t.length,a=[],o=e.dividePath||PY;function i(v){for(var d=0;d<v.length;d++){var m=v[d];Gg(m)?i(m.childrenRef()):m instanceof bt&&a.push(m)}}if(Gg(r)){i(r.childrenRef());var u=a.length;if(u<n)for(var l=0,f=u;f<n;f++)a.push(Ev(a[l++%u]));a.length=n}else{a=o({path:r,count:n});for(var s=r.getComputedTransform(),f=0;f<a.length;f++)a[f].setLocalTransform(s);if(a.length!==n)return console.error("Invalid morphing: unmatched splitted path"),oN()}a=zx(a),t=zx(t);for(var c=e.individualDelay,f=0;f<n;f++){var p=c?et({delay:(e.delay||0)+c(f,n,a[f],t[f])},e):e;Wx(a[f],t[f],p)}return{fromIndividuals:a,toIndividuals:t,count:t.length}}function UY(r){return O(r[0])}function HY(r,t){for(var e=[],n=r.length,a=0;a<n;a++)e.push({one:r[a],many:[]});for(var a=0;a<t.length;a++){var o=t[a].length,i=void 0;for(i=0;i<o;i++)e[i%n].many.push(t[a][i])}for(var u=0,a=n-1;a>=0;a--)if(!e[a].many.length){var l=e[u].many;if(l.length<=1)if(u)u=0;else return e;var o=l.length,f=Math.ceil(o/2);e[a].many=l.slice(f,o),e[u].many=l.slice(0,f),u++}return e}var jCt={clone:function(r){for(var t=[],e=1-Math.pow(1-r.path.style.opacity,1/r.count),n=0;n<r.count;n++){var a=Ev(r.path);a.setStyle("opacity",e),t.push(a)}return t},split:null};function Gx(r,t,e,n,a,o){if(!r.length||!t.length)return;var i=Cu("update",n,a);if(!(i&&i.duration>0))return;var u=n.getModel("universalTransition").get("delay"),l=Object.assign({setToFinal:!0},i),f,s;UY(r)&&(f=r,s=t),UY(t)&&(f=t,s=r);function c(_,g,y,D,b){var C=_.many,x=_.one;if(C.length===1&&!b){var w=g?C[0]:x,S=g?x:C[0];if(Gg(w))c({many:[w],one:S},!0,y,D,!0);else{var E=u?et({delay:u(y,D)},l):l;Wx(w,S,E),o(w,S,w,S,E)}}else for(var M=et({dividePath:jCt[e],individualDelay:u&&function(k,H,G,j){return u(k+y,D)}},l),I=g?NY(C,x,M):OY(x,C,M),F=I.fromIndividuals,L=I.toIndividuals,R=F.length,P=0;P<R;P++){var E=u?et({delay:u(P,R)},l):l;o(F[P],L[P],g?C[P]:_.one,g?_.one:C[P],E)}}for(var p=f?f===r:r.length>t.length,v=f?HY(s,f):HY(p?t:r,[p?r:t]),d=0,m=0;m<v.length;m++)d+=v[m].many.length;for(var h=0,m=0;m<v.length;m++)c(v[m],p,h,d),h+=v[m].many.length}function us(r){if(!r)return[];if(O(r)){for(var t=[],e=0;e<r.length;e++)t.push(us(r[e]));return t}var n=[];return r.traverse(function(a){a instanceof bt&&!a.disableMorphing&&!a.invisible&&!a.ignore&&n.push(a)}),n}var qY=1e4,YCt=0,kY=1,zY=2,QCt=St();function ZCt(r,t){for(var e=r.dimensions,n=0;n<e.length;n++){var a=r.getDimensionInfo(e[n]);if(a&&a.otherDims[t]===0)return e[n]}}function XCt(r,t,e){var n=r.getDimensionInfo(e),a=n&&n.ordinalMeta;if(n){var o=r.get(n.name,t);return a&&a.categories[o]||o+""}}function WY(r,t,e,n){var a=n?"itemChildGroupId":"itemGroupId",o=ZCt(r,a);if(o){var i=XCt(r,t,o);return i}var u=r.getRawDataItem(t),l=n?"childGroupId":"groupId";if(u&&u[l])return u[l]+"";if(!n)return e||r.getId(t)}function GY(r){var t=[];return T(r,function(e){var n=e.data,a=e.dataGroupId;if(!(n.count()>qY))for(var o=n.getIndices(),i=0;i<o.length;i++)t.push({data:n,groupId:WY(n,i,a,!1),childGroupId:WY(n,i,a,!0),divide:e.divide,dataIndex:i})}),t}function iN(r,t,e){r.traverse(function(n){n instanceof bt&&Ae(n,{style:{opacity:0}},t,{dataIndex:e,isFrom:!0})})}function uN(r){if(r.parent){var t=r.getComputedTransform();r.setLocalTransform(t),r.parent.remove(r)}}function Od(r){r.stopAnimation(),r.isGroup&&r.traverse(function(t){t.stopAnimation()})}function KCt(r,t,e){var n=Cu("update",e,t);n&&r.traverse(function(a){if(a instanceof Br){var o=AB(a);o&&a.animateFrom({style:o},n)}})}function tTt(r,t){var e=r.length;if(e!==t.length)return!1;for(var n=0;n<e;n++){var a=r[n],o=t[n];if(a.data.getId(a.dataIndex)!==o.data.getId(o.dataIndex))return!1}return!0}function JY(r,t,e){var n=GY(r),a=GY(t);function o(y,D,b,C,x){(b||y)&&D.animateFrom({style:b&&b!==y?N(N({},b.style),y.style):y.style},x)}var i=!1,u=YCt,l=Z(),f=Z();n.forEach(function(y){y.groupId&&l.set(y.groupId,!0),y.childGroupId&&f.set(y.childGroupId,!0)});for(var s=0;s<a.length;s++){var c=a[s].groupId;if(f.get(c)){u=kY;break}var p=a[s].childGroupId;if(p&&l.get(p)){u=zY;break}}function v(y,D){return function(b){var C=b.data,x=b.dataIndex;return D?C.getId(x):y?u===kY?b.childGroupId:b.groupId:u===zY?b.childGroupId:b.groupId}}var d=tTt(n,a),m={};if(!d)for(var s=0;s<a.length;s++){var h=a[s],_=h.data.getItemGraphicEl(h.dataIndex);_&&(m[_.id]=!0)}function g(y,D){var b=n[D],C=a[y],x=C.data.hostModel,w=b.data.getItemGraphicEl(b.dataIndex),S=C.data.getItemGraphicEl(C.dataIndex);if(w===S){S&&KCt(S,C.dataIndex,x);return}w&&m[w.id]||S&&(Od(S),w?(Od(w),uN(w),i=!0,Gx(us(w),us(S),C.divide,x,y,o)):iN(S,x,y))}new Zn(n,a,v(!0,d),v(!1,d),null,"multiple").update(g).updateManyToOne(function(y,D){var b=a[y],C=b.data,x=C.hostModel,w=C.getItemGraphicEl(b.dataIndex),S=de(U(D,function(E){return n[E].data.getItemGraphicEl(n[E].dataIndex)}),function(E){return E&&E!==w&&!m[E.id]});w&&(Od(w),S.length?(T(S,function(E){Od(E),uN(E)}),i=!0,Gx(us(S),us(w),b.divide,x,y,o)):iN(w,x,b.dataIndex))}).updateOneToMany(function(y,D){var b=n[D],C=b.data.getItemGraphicEl(b.dataIndex);if(!(C&&m[C.id])){var x=de(U(y,function(S){return a[S].data.getItemGraphicEl(a[S].dataIndex)}),function(S){return S&&S!==C}),w=a[y[0]].data.hostModel;x.length&&(T(x,function(S){return Od(S)}),C?(Od(C),uN(C),i=!0,Gx(us(C),us(x),b.divide,w,y[0],o)):T(x,function(S){return iN(S,w,y[0])}))}}).updateManyToMany(function(y,D){new Zn(D,y,function(b){return n[b].data.getId(n[b].dataIndex)},function(b){return a[b].data.getId(a[b].dataIndex)}).update(function(b,C){g(y[b],D[C])}).execute()}).execute(),i&&T(t,function(y){var D=y.data,b=D.hostModel,C=b&&e.getViewOfSeriesModel(b),x=Cu("update",b,0);C&&b.isAnimationEnabled()&&x&&x.duration>0&&C.group.traverse(function(w){w instanceof bt&&!w.animators.length&&w.animateFrom({style:{opacity:0}},x)})})}function BY(r){var t=r.getModel("universalTransition").get("seriesKey");return t||r.id}function VY(r){return O(r)?r.sort().join(","):r}function ls(r){if(r.hostModel)return r.hostModel.getModel("universalTransition").get("divideShape")}function eTt(r,t){var e=Z(),n=Z(),a=Z();T(r.oldSeries,function(i,u){var l=r.oldDataGroupIds[u],f=r.oldData[u],s=BY(i),c=VY(s);n.set(c,{dataGroupId:l,data:f}),O(s)&&T(s,function(p){a.set(p,{key:c,dataGroupId:l,data:f})})});function o(i){e.get(i)&&kW("Duplicated seriesKey in universalTransition "+i)}return T(t.updatedSeries,function(i){if(i.isUniversalTransitionEnabled()&&i.isAnimationEnabled()){var u=i.get("dataGroupId"),l=i.getData(),f=BY(i),s=VY(f),c=n.get(s);if(c)e.set(s,{oldSeries:[{dataGroupId:c.dataGroupId,divide:ls(c.data),data:c.data}],newSeries:[{dataGroupId:u,divide:ls(l),data:l}]});else if(O(f)){var p=[];T(f,function(m){var h=n.get(m);h.data&&p.push({dataGroupId:h.dataGroupId,divide:ls(h.data),data:h.data})}),p.length&&e.set(s,{oldSeries:p,newSeries:[{dataGroupId:u,data:l,divide:ls(l)}]})}else{var v=a.get(f);if(v){var d=e.get(v.key);d||(d={oldSeries:[{dataGroupId:v.dataGroupId,data:v.data,divide:ls(v.data)}],newSeries:[]},e.set(v.key,d)),d.newSeries.push({dataGroupId:u,data:l,divide:ls(l)})}}}}),e}function $Y(r,t){for(var e=0;e<r.length;e++){var n=t.seriesIndex!=null&&t.seriesIndex===r[e].seriesIndex||t.seriesId!=null&&t.seriesId===r[e].id;if(n)return e}}function rTt(r,t,e,n){var a=[],o=[];T(we(r.from),function(i){var u=$Y(t.oldSeries,i);u>=0&&a.push({dataGroupId:t.oldDataGroupIds[u],data:t.oldData[u],divide:ls(t.oldData[u]),groupIdDim:i.dimension})}),T(we(r.to),function(i){var u=$Y(e.updatedSeries,i);if(u>=0){var l=e.updatedSeries[u].getData();o.push({dataGroupId:t.oldDataGroupIds[u],data:l,divide:ls(l),groupIdDim:i.dimension})}}),a.length>0&&o.length>0&&JY(a,o,n)}function lN(r){r.registerUpdateLifecycle("series:beforeupdate",function(t,e,n){T(we(n.seriesTransition),function(a){T(we(a.to),function(o){for(var i=n.updatedSeries,u=0;u<i.length;u++)(o.seriesIndex!=null&&o.seriesIndex===i[u].seriesIndex||o.seriesId!=null&&o.seriesId===i[u].id)&&(i[u][M_]=!0)})})}),r.registerUpdateLifecycle("series:transition",function(t,e,n){var a=QCt(e);if(a.oldSeries&&n.updatedSeries&&n.optionChanged){var o=n.seriesTransition;if(o)T(we(o),function(v){rTt(v,a,n,e)});else{var i=eTt(a,n);T(i.keys(),function(v){var d=i.get(v);JY(d.oldSeries,d.newSeries,e)})}T(n.updatedSeries,function(v){v[M_]&&(v[M_]=!1)})}for(var u=t.getSeries(),l=a.oldSeries=[],f=a.oldDataGroupIds=[],s=a.oldData=[],c=0;c<u.length;c++){var p=u[c].getData();p.count()<qY&&(l.push(u[c]),f.push(u[c].get("dataGroupId")),s.push(p))}})}Jt([WI]);Jt([zI]);Jt([jI,ZI,nF,dF,_F,PF,VF,tL,bL,CL,xL,GL,qL,YL,eR,rR,nR,aR,lR,cR,mR,OR]);Jt(BR);Jt(jR);Jt(fg);Jt(ZR);Jt(bg);Jt(KR);Jt(eP);Jt(cP);Jt(mP);Jt(Vi);Jt(bP);Jt(CP);Jt(SP);Jt(LP);Jt(PP);Jt(NP);Jt(BP);Jt(jP);Jt(Pg);Jt(Ug);Jt(ZP);Jt(kg);Jt(zg);Jt(tN);Jt(rN);Jt(nN);Jt(lN);Jt(yI);var fN=function(r){return()=>m$(r)};var sN=function(r){return()=>r.showLoading()},cN=function(r){return()=>r.hideLoading()},pN=function(r){return function(t){return function(){r.setOption(t)}}},vN=function(r){return function(t){return function(e){let n=a=>{e(a)()};return function(){r.on(t,n)}}}};var dN=(function(){return Lk(B.value)})();var mN=dN("p");var fs=dN("div"),hN=fs([]);var oTt=Lr();var YY=(function(){var r=function(t){return function(e){return new z(new TD(t,e))}};return function(t){return Ak(r(t))}})(),QY=function(r){return Ik(r)};var iTt=QY(Fk);var ep=(function(){var r=iTt("className");return function(t){return r(oTt(t))}})();var ZY=(function(){return Rk(B.value)})();var XY=ZY("style");var Bx=Ut(jp),uTt=Cr(fu)(hn),lTt=ta(ea),Vx=lTt(jp),tQ=$l(Jp),fTt=ju(Jp),_N=it(fu),sTt=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})(),cTt=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),eQ=(function(){function r(){}return r.value=new r,r})(),$x=(function(){function r(){}return r.value=new r,r})(),gN=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),rQ=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),nQ="width:640px;height:480px;";var aQ=function(r){var t=sr(r0(r.MonadEffect0()));return function(e){var n=function(u){return fs([ep("echarts-container")])([fs([ep("echarts-ref"),XY(e),YY("chart-ref")])([])])},a=function(u){return{options:u.options,chart:B.value}},o=function(u){if(u instanceof eQ)return Bx(_h("chart-ref"))(uTt(function(l){return Bx(t(function(){var s=VD(),c=fN(l)();return sN(c)(),vN(c)("click")(function(p){return BD(s.listener)(new rQ(p))})(),{chart:c,emitter:s.emitter}}))(function(f){return Bx(KD(f.emitter))(function(){return Vx(tQ(function(s){var c={};for(var p in s)({}).hasOwnProperty.call(s,p)&&(c[p]=s[p]);return c.chart=new z(f.chart),c}))(function(){return o($x.value)})})})}));if(u instanceof gN)return Vx(tQ(function(l){var f={};for(var s in l)({}).hasOwnProperty.call(l,s)&&(f[s]=l[s]);return f.options=u.value0,f}))(function(){return o($x.value)});if(u instanceof $x)return Bx(fTt)(function(l){if(l.chart instanceof B)return _N(void 0);if(l.chart instanceof z)return t(function(){return cN(l.chart.value0)(),pN(l.chart.value0)(l.options)()});throw new Error("Failed pattern match at Halogen.ECharts (line 105, column 9 - line 110, column 51): "+[l.chart.constructor.name])});if(u instanceof rQ)return t0(u.value0);throw new Error("Failed pattern match at Halogen.ECharts (line 88, column 20 - line 112, column 21): "+[u.constructor.name])},i=function(u){if(u instanceof sTt)return Vx(o(new gN(u.value0)))(function(){return _N(new z(u.value1))});if(u instanceof cTt)return Vx(o($x.value))(function(){return _N(new z(u.value0))});throw new Error("Failed pattern match at Halogen.ECharts (line 80, column 20 - line 86, column 22): "+[u.constructor.name])};return bh({initialState:a,render:n,eval:Dh({finalize:lf.finalize,handleAction:o,initialize:new z(eQ.value),receive:function(u){return u.modified?new z(new gN(u.options)):B.value},handleQuery:i})})}};var vTt=Z1();var oQ=function(){return function(r){var t=vTt(r);return function(e){var n=t(e);return function(a){return function(o){return function(i){return function(u){return function(l){return Mk(new yh(n(a)(o)(i)(u)(function(f){return z.create(l(f))})))}}}}}}}};var qx={suspend:$U,fork:qU,join:Om,Monad0:function(){return Up},Functor1:function(){return ZU}};var Jx=function(r){return r.fork};var fQ=tt,$i=tt,sQ=function(r){var t=Cr(r)(hn);return function(e){return $i(function(n){return t(e)(n.rendering)})}},bTt=tt,cQ=function(r){return function(t){return $i(function(e){return bTt(t(e.rendering))})}},CTt=tt,jx=function(r){return function(t){return r(t)}},pQ=function(r){return function(t){return function(e){return function(n){return function(){var o=Ar({})(),i=Ar(Bp)(),u=Ar(Bp)(),l=Ar(e)(),f=Ar(new z(be.value))(),s=Ar(new z(be.value))(),c=Ar(B.value)(),p=Ar(1)(),v=Ar(new z(lu))(),d=Ar(lu)(),m={component:r,state:r.initialState(t),refs:lu,children:Bp,childrenIn:i,childrenOut:u,selfRef:o,handlerRef:l,pendingQueries:f,pendingOuts:s,pendingHandlers:c,rendering:B.value,fresh:p,subscriptions:v,forks:d,lifecycleHandlers:n};return or(m)(o)(),CTt(o)}}}}};var TTt=Cr(Mr)(hn),xTt=gr(Na),wTt=Gp($1),$r=Ut(_n),vr=sr(ho),STt=ta(ea),qi=STt(_n),gQ=Cr(ia),ETt=gQ(ya),yQ=Jx(qx),MTt=Nm(As)(Hp)(ya),Hu=it(ia),ATt=W(e1),vQ=jl(As),ITt=W(Yl),dQ=Op(As),FTt=W(Xe),LTt=Ls($1),RTt=zk(Hp),PTt=o1(e0),NTt=UO($u),OTt=Ls(e0),mQ=gQ(hn),hQ=Gp(e0),UTt=Gp(on),HTt=rz(XU),kTt=i1(on),zTt=function(r){return function(t){return function(){var n=ue(t)(),a=ue(n.subscriptions)();return TTt(GD)(xTt(wTt(r))(a))()}}},Yx=function(r){return function(t){return $r(vr(ue(r)))(function(e){if(e instanceof B)return t;if(e instanceof z)return vr(or(new z(new De(t,e.value0)))(r));throw new Error("Failed pattern match at Halogen.Aff.Driver.Eval (line 188, column 33 - line 190, column 57): "+[e.constructor.name])})}},Qx=function(r){return function(t){return qi(vr(or({initializers:be.value,finalizers:be.value})(r)))(function(){return $r(vr(t))(function(e){return $r(vr(ue(r)))(function(n){return qi(ETt(yQ)(n.finalizers))(function(){return qi(MTt(n.initializers))(function(){return Hu(e)})})})})})}},rp=Ky(br(kl)(Dt(it(Mr)(void 0)))),_Q=function(r){return function(t){return $r(vr(ue(t)))(function(e){return vr(Iw(function(n){return{state:n+1|0,value:r(n)}})(e.fresh))})}},DN=function(r){return function(t){return function(e){return $r(vr(ue(t)))(function(n){return ss(r)(t)(n.component.eval(new Kp(ATt(z.create)(ok(e)),Dt(B.value))))})}}},ss=function(r){return function(t){return function(e){var n=function(o){return function(i){return $r(vr(ue(o)))(function(u){return az(function(l){var f=function(s){return vQ($r(vr(ue(s)))(function(c){return $i(function(p){return DN(r)(p.selfRef)(l.value1)})(c)}))};return ITt(l.value2)(dQ(l.value0(Hp)(f)(u.children)))})(i)})}},a=function(o){return function(i){if(i instanceof ph)return $r(vr(ue(o)))(function(u){var l=i.value0(u.state);if(qp(u.state)(l.value1))return Hu(l.value0);if(Er)return qi(vr(or({component:u.component,refs:u.refs,children:u.children,childrenIn:u.childrenIn,childrenOut:u.childrenOut,selfRef:u.selfRef,handlerRef:u.handlerRef,pendingQueries:u.pendingQueries,pendingOuts:u.pendingOuts,pendingHandlers:u.pendingHandlers,rendering:u.rendering,fresh:u.fresh,subscriptions:u.subscriptions,forks:u.forks,lifecycleHandlers:u.lifecycleHandlers,state:l.value1})(o)))(function(){return qi(Qx(u.lifecycleHandlers)(r(u.lifecycleHandlers)(o)))(function(){return Hu(l.value0)})});throw new Error("Failed pattern match at Halogen.Aff.Driver.Eval (line 86, column 7 - line 92, column 21): "+[l.constructor.name])});if(i instanceof vh)return $r(_Q(lz)(o))(function(u){return $r(vr(iz(i.value0(u))(function(l){return rp(bN(r)(o)(new rh(l)))})))(function(l){return $r(vr(ue(o)))(function(f){return qi(vr(vo(FTt(LTt(u)(l)))(f.subscriptions)))(function(){return Hu(i.value1(u))})})})});if(i instanceof qD)return qi(vr(zTt(i.value0)(o)))(function(){return Hu(i.value1)});if(i instanceof dh)return i.value0;if(i instanceof JD)return n(o)(i.value0);if(i instanceof mh)return $r(vr(ue(o)))(function(u){return $r(vr(ue(u.handlerRef)))(function(l){return qi(Yx(u.pendingOuts)(l(i.value0)))(function(){return Hu(i.value1)})})});if(i instanceof jD)return dQ(RTt(k1((function(){var u=ss(r)(o);return function(l){return vQ(u(l))}})())(i.value0)));if(i instanceof YD)return $r(_Q(fz)(o))(function(u){return $r(vr(ue(o)))(function(l){return $r(vr(Ar(!1)))(function(f){return $r(yQ(QU(vr(function(){return vo(PTt(u))(l.forks)(),or(!0)(f)()}))(ss(r)(o)(i.value0))))(function(s){return qi(vr(NTt(ue(f))(vo(OTt(u)(s))(l.forks))))(function(){return Hu(i.value1(u))})})})})});if(i instanceof QD)return $r(vr(ue(o)))(function(u){return $r(vr(ue(u.forks)))(function(l){return qi(mQ(Om)(hQ(i.value0)(l)))(function(){return Hu(i.value1)})})});if(i instanceof ZD)return $r(vr(ue(o)))(function(u){return $r(vr(ue(u.forks)))(function(l){return qi(mQ(Um(mi("Cancelled")))(hQ(i.value0)(l)))(function(){return Hu(i.value1)})})});if(i instanceof hh)return $r(vr(ue(o)))(function(u){return Hu(i.value1(UTt(i.value0)(u.refs)))});throw new Error("Failed pattern match at Halogen.Aff.Driver.Eval (line 83, column 12 - line 139, column 33): "+[i.constructor.name])}};return HTt(a(t))(e)}}},bN=function(r){return function(t){return function(e){if(e instanceof TD)return vr(Pe(vo)(t)(jx(function(n){return{component:n.component,state:n.state,children:n.children,childrenIn:n.childrenIn,childrenOut:n.childrenOut,selfRef:n.selfRef,handlerRef:n.handlerRef,pendingQueries:n.pendingQueries,pendingOuts:n.pendingOuts,pendingHandlers:n.pendingHandlers,rendering:n.rendering,fresh:n.fresh,subscriptions:n.subscriptions,forks:n.forks,lifecycleHandlers:n.lifecycleHandlers,refs:kTt(Dt(e.value1))(e.value0)(n.refs)}})));if(e instanceof rh)return $r(vr(ue(t)))(function(n){return ss(r)(t)(n.component.eval(new Xp(e.value0,void 0)))});throw new Error("Failed pattern match at Halogen.Aff.Driver.Eval (line 52, column 20 - line 58, column 62): "+[e.constructor.name])}}};var GTt=Ut(_a),BTt=ta(ea),SQ=xy(Mr)(hn),EQ=Cr(ia)(ya),MQ=Jx(qx),Vg=gr(_a),AQ=Cr(Mr),IQ=AQ(hn),DQ=AQ(DD),bQ=BTt(_n),VTt=Nm(As)(Hp)(ya),Bg=sr(ho),CQ=it(Mr),CN=W(_e),TN=it(ia),xN=Fo(Mr),$Tt=cQ(_e),qTt=hr(Yl),TQ=dk(Mr),JTt=sQ(Mr),jTt=No(QO),YTt=Xd(_e),wN=Ut(_n),QTt=sr(r2),xQ=(function(){return Ar({initializers:be.value,finalizers:be.value})})(),wQ=function(r){return function(){var e=ue(r)();return or(B.value)(r)(),SQ(e)((function(){var n=EQ(MQ);return function(a){return rp(n(Ss(a)))}})())()}},ZTt=function(r){return function(){return Vg(IQ(DQ(GD)))(ue(r.subscriptions))(),or(B.value)(r.subscriptions)(),Vg(DQ((function(){var e=Um(mi("finalized"));return function(n){return rp(e(n))}})()))(ue(r.forks))(),or(lu)(r.forks)()}},FQ=function(r){return function(t){return function(e){var n=function(s){return function(c){return $i(function(p){var v=ss(i)(p.selfRef)(p.component.eval(new Yp(void 0)));return vo(function(d){return{initializers:new De(bQ(VTt(Ss(d.initializers)))(function(){return bQ(v)(function(){return Bg(function(){return wQ(p.pendingQueries)(),wQ(p.pendingOuts)()})})}),c),finalizers:d.finalizers}})(s)})}},a=function(s){return function(c){return function(p){return Q1(function(v){return function(){var m=xQ(),h=pQ(v)(p)(c)(m)(),_=ue(s)();return or({initializers:be.value,finalizers:_.finalizers})(s)(),Vg($i((function(){var g=i(s);return function(y){return g((function(D){return D.selfRef})(y))}})()))(ue(h))(),Vg(n(s)(_.initializers))(ue(h))(),h}})}}},o=function(s){return function(c){return function(p){return function(v){return Y1(function(d){return function(){var h=CN(d.pop)(ue(p))(),_=(function(){if(h instanceof z){or(h.value0.value1)(p)();var y=ue(h.value0.value0)();return $i(function(D){return function(){return Pe(or)(D.handlerRef)((function(){var C=Je(TN(void 0))(c);return function(x){return C(d.output(x))}})())(),rp(ss(i)(D.selfRef)(D.component.eval(new Zp(d.input,void 0))))()}})(y)(),h.value0.value0}if(h instanceof B)return a(s)((function(){var D=Je(TN(void 0))(c);return function(b){return D(d.output(b))}})())(d.input)(d.component)();throw new Error("Failed pattern match at Halogen.Aff.Driver (line 213, column 14 - line 222, column 98): "+[h.constructor.name])})(),g=CN(function(y){return ly(d.get(y))})(ue(v))();return xN(g)(sD("Halogen: Duplicate slot address was detected during rendering, unexpected results may occur"))(),vo(d.set(_))(v)(),GTt(ue(_))($Tt(function(y){if(y instanceof B)return BO("Halogen internal error: child was not initialized in renderChild");if(y instanceof z)return CQ(r.renderChild(y.value0));throw new Error("Failed pattern match at Halogen.Aff.Driver (line 227, column 37 - line 229, column 50): "+[y.constructor.name])}))()}})}}}},i=function(s){return function(c){return function(){var v=ue(c)(),d=CN(lp)(ue(v.pendingHandlers))();xN(d)(or(new z(be.value))(v.pendingHandlers))(),or(Bp)(v.childrenOut)(),or(v.children)(v.childrenIn)();var m=(function(){var D=Yx(v.pendingHandlers),b=bN(i)(v.selfRef);return function(C){return D(qTt(b(C)))}})(),h=(function(){var D=Yx(v.pendingQueries);return function(b){return D(m(rh.create(b)))}})(),_=r.render(function(D){return rp(m(D))})(o(s)(h)(v.childrenIn)(v.childrenOut))(v.component.render(v.state))(v.rendering)(),g=ue(v.childrenOut)(),y=ue(v.childrenIn)();return TQ(y)(function(D){return function(){var C=ue(D)();return JTt(r.removeChild)(C)(),u(s)(C)()}})(),Pe(vo)(v.selfRef)(jx(function(D){return{component:D.component,state:D.state,refs:D.refs,childrenIn:D.childrenIn,childrenOut:D.childrenOut,selfRef:D.selfRef,handlerRef:D.handlerRef,pendingQueries:D.pendingQueries,pendingOuts:D.pendingOuts,pendingHandlers:D.pendingHandlers,fresh:D.fresh,subscriptions:D.subscriptions,forks:D.forks,lifecycleHandlers:D.lifecycleHandlers,rendering:new z(_),children:g}}))(),xN(d)(Pe(jTt)(void 0)(function(D){return function(){var C=ue(v.pendingHandlers)();or(new z(be.value))(v.pendingHandlers)(),IQ((function(){var S=EQ(MQ);return function(E){return rp(S(Ss(E)))}})())(C)();var x=ue(v.pendingHandlers)(),w=Je(!1)(gU)(x);return w?YTt(or(B.value)(v.pendingHandlers))(new An(void 0))():new Hn(void 0)}}))()}}},u=function(s){return $i(function(c){return function(){ZTt(c)();var v=ss(i)(c.selfRef)(c.component.eval(new Qp(void 0)));return vo(function(d){return{initializers:d.initializers,finalizers:new De(v,d.finalizers)}})(s)(),TQ(c.children)(function(d){return function(){var h=ue(d)();return u(s)(h)()}})()}})},l=function(s){return function(c){return function(p){return wN(Bg(ue(s)))(function(v){return v?TN(B.value):DN(i)(c)(p)})}}},f=function(s){return function(c){return function(p){return Qx(c)(function(){var d=ue(s)();return d?void 0:(or(!0)(s)(),u(c)(p)(),$i(function(m){return function(){var _=QTt(ue(m.selfRef))();return SQ(_.rendering)(r.dispose)()}})(p)())})}}};return wN(Bg(xQ))(function(s){return wN(Bg(Ar(!1)))(function(c){return Qx(s)(function(){var v=VD(),d=Vg(ue)(a(s)((function(){var m=BD(v.listener);return function(h){return Bg(m(h))}})())(e)(t))();return $i(function(m){return CQ({query:l(c)(m.selfRef),messages:v.emitter,dispose:f(c)(s)(d)})})(d)()})})})}}};var Ji=function(r){return function(t){return function(){return t[r]}}};var KTt=Ji("baseURI"),txt=Ji("ownerDocument"),LQ=Ji("parentNode"),ext=Ji("parentElement");var rxt=Ji("childNodes"),nxt=Ji("firstChild"),axt=Ji("lastChild"),oxt=Ji("previousSibling"),RQ=Ji("nextSibling"),ixt=Ji("nodeValue");var uxt=Ji("textContent");function SN(r){return function(t){return function(e){return function(){e.insertBefore(r,t)}}}}function Zx(r){return function(t){return function(){t.appendChild(r)}}}function EN(r){return function(t){return function(){t.removeChild(r)}}}var PQ=W(_e);var MN=(function(){var r=PQ(dr);return function(t){return r(LQ(t))}})();var NQ=(function(){var r=PQ(dr);return function(t){return r(RQ(t))}})();var AN=function(r,t,e){var n=0,a;return function(o){if(n===2)return a;if(n===1)throw new ReferenceError(r+" was needed before it finished initializing (module "+t+", line "+o+")",t,o);return n=1,a=e(),n=2,a}},IN=hr(_e),pxt=it(Mr),vxt=Cr(Mr)(hn),dxt=Lr(),mxt=Fo(Mr),hxt=qu(Rw(Rw(ka))),_xt=Lt(Pt),gxt=Ut(_n),yxt=sr(ho),Dxt=W(_e),bxt=gr(_a);var Cxt=function(r){return function(t){return function(e){return t instanceof z&&e instanceof z?IN(SN(r)(t.value0)(e.value0)):t instanceof B&&e instanceof z?IN(Zx(r)(e.value0)):pxt(void 0)}}},OQ=function(r){return function(){var e=MN(r.node)();return vxt(function(n){return EN(r.node)(n)})(e)()}},Txt=function(r){return function(t){return function(e){var n=fQ(function(u){return u.node}),a=function(u){return u instanceof z?Ba(u.value0):void 0},o=function(u){var l=pz(dxt)(u),f=AN("patch","Halogen.VDom.Driver",function(){return function(m,h){if(m instanceof z){if(h instanceof yh)return Ba(m.value0),c(100)(h.value0);if(h instanceof o0){var _=Ga(m.value0,h.value0);return Or(new Nr(Gn(_),new z(_),f(103),a))}throw new Error("Failed pattern match at Halogen.VDom.Driver (line 97, column 22 - line 103, column 79): "+[h.constructor.name])}return s(104)(h)}}),s=AN("render","Halogen.VDom.Driver",function(){return function(m){if(m instanceof yh)return c(86)(m.value0);if(m instanceof o0){var h=l(m.value0);return Or(new Nr(Gn(h),new z(h),f(89),a))}throw new Error("Failed pattern match at Halogen.VDom.Driver (line 84, column 7 - line 89, column 75): "+[m.constructor.name])}}),c=AN("renderComponentSlot","Halogen.VDom.Driver",function(){return function(m){var h=ue(t)(),_=h(m)(),g=n(_);return Or(new Nr(g,B.value,f(117),a))}}),p=f(91),v=s(82),d=c(109);return v},i=xk(r);return{buildWidget:o,buildAttributes:i,document:e}}}},xxt=function(r){return function(t){var e=function(n){return function(a){return function(o){return function(i){if(i instanceof B)return function(){var l=Ar(a)(),f=Txt(n)(l)(r),s=fh(f)(o),c=Gn(s);return IN(Zx(c)(JH(t)))(),{machine:s,node:c,renderChildRef:l}};if(i instanceof z)return function(){or(a)(i.value0.renderChildRef)();var l=MN(i.value0.node)(),f=NQ(i.value0.node)(),s=Ga(i.value0.machine,o),c=Gn(s);return mxt(hxt(qp)(i.value0.node)(c))(Cxt(c)(f)(l))(),{machine:s,node:c,renderChildRef:i.value0.renderChildRef}};throw new Error("Failed pattern match at Halogen.VDom.Driver (line 157, column 5 - line 173, column 80): "+[i.constructor.name])}}}};return{render:e,renderChild:_xt,removeChild:OQ,dispose:OQ}}},UQ=function(r){return function(t){return function(e){return gxt(yxt(Dxt(pD)(bxt(tf)(yi))))(function(n){return FQ(xxt(n)(e))(r)(t)})}}};var zQ=hs();var Oxt=function(r){return function(t){return function(e){var n=_i(e);return function(a){return n(r)(t)(a)}}}};var WQ=function(){return function(){return function(r){return Oxt(zQ)(zQ)(r)}}};var Hxt=WQ()(),Xx=function(){return function(){return function(r){return Hxt(r)}}};var GQ=function(r){var t=tn(r);return function(e){return Qm(e)(function(n){return t(n)})}};function BQ(r,t,e,n){return n==null?r:t(n[e])}function VQ(r,t){return Object.prototype.hasOwnProperty.call(t,r)}function $Q(r,t){return r in t}var qxt=function(r){var t=$m(r),e=it(Yu(r));return function(n){return function(a){return BQ(t(new Vm("object",Ku(a))),e,n,a)}}},Jxt=function(r){return qxt(r)};var qQ=function(r){return r.ix},jxt=function(r){return r.index};var JQ=function(r){return{ix:function(t){return jxt(t)}}},Yxt=function(r){return function(t){return km(t)||zm(t)?!1:Ku(t)==="object"||Ku(t)==="function"?$Q(r,t):!1}};var Qxt=function(r){return function(t){return km(t)||zm(t)?!1:Ku(t)==="object"||Ku(t)==="function"?VQ(r,t):!1}};var jQ=function(r){return{index:Pe(Jxt(r)),hasProperty:Yxt,hasOwnProperty:Qxt,errorAt:DS.create}};var Kx=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),RN={isSingleConstructor:function(r){return!1}};var tw={isSingleConstructor:function(r){return!0}},ew=function(r){return r.isSingleConstructor},YQ={areAllConstructorsNullary:function(r){return!1}};var $g={areAllConstructorsNullary:function(r){return!1}},np=function(r){return r.areAllConstructorsNullary},Ud=function(r){var t=np(r);return{areAllConstructorsNullary:function(e){return t(Ne.value)}}},rw=function(r){var t=np(r);return function(e){var n=np(e);return{areAllConstructorsNullary:function(a){return t(Ne.value)&&n(Ne.value)}}}};var Y$e=typeof Symbol<"u"&&Symbol!=null&&typeof Symbol.iterator<"u"&&typeof String.prototype[Symbol.iterator]=="function",Q$e=typeof String.prototype.fromCodePoint=="function",Z$e=typeof String.prototype.codePointAt=="function";var owt=W(Un),rZ=Oo(Uo);var nZ=Hl(di);var iwt=Ut(di),uwt=Ap(Py)(Xi),lwt=Oe(am);var aZ=(function(){return Hy(new _t(new ua("String")))(ht.create)})(),oZ=(function(){return eU(new _t(new ua("Number")))(ht.create)})();var fwt=(function(){var r=Ro(new ua("Array"));return function(t){return r(nS(t))}})();var iZ=nZ((function(){var r=Ro(new ua("Integer"));return function(t){return r(rD(t))}})())(oZ);var PN=function(r){return nZ((function(){var t=rZ(Xl.create("Array")),e=uwt(function(n){var a=rZ(IS.create(n));return function(o){return a(r(o))}});return function(n){return t(e(n))}})())(fwt)},uZ=function(r){return function(t){return function(e){var n=function(a){return a.length===2?lwt(owt(qt.create)(r(a[0])))(t(a[1])):new _t(new ua("Tuple"))};return iwt(PN(ht.create)(e))(n)}}};var fZ=function(r){var t=_r(r);return function(){return function(){return function(e){return function(n){return function(a){return ku(t(e))(n)(a)}}}}}};var sZ=Ut(di),vwt=Oo(Uo),dwt=W(Xe),nw={gDecodeJson:function(r){return function(t){return new ht({})}}},cZ=function(r){return r.gDecodeJson};var aw=function(r){var t=cZ(r);return function(){return{decodeJson:function(e){var n=ws(e);if(n instanceof z)return t(n.value0)(Ne.value);if(n instanceof B)return new _t(new ua("Object"));throw new Error("Failed pattern match at Data.Argonaut.Decode.Class (line 103, column 5 - line 105, column 46): "+[n.constructor.name])}}}},kd={decodeJson:aZ};var pZ={decodeJson:iZ},mwt=function(r){return r.decodeJsonField},Jg=function(r){var t=mwt(r);return function(e){var n=cZ(e);return function(a){var o=_r(a),i=fZ(a)()();return function(){return function(){return{gDecodeJson:function(u){return function(l){var f=o(Ne.value),s=iu(f)(u),c=t(s);if(c instanceof z)return sZ(vwt(kp.create(f))(c.value0))(function(p){return sZ(n(u)(Ne.value))(function(v){return new ht(i(Ne.value)(p)(v))})});if(c instanceof B)return new _t(new kp(f,Fs.value));throw new Error("Failed pattern match at Data.Argonaut.Decode.Class (line 127, column 5 - line 134, column 44): "+[c.constructor.name])}}}}}}}};var Hd=function(r){return r.decodeJson};var ow=function(r){var t=Hd(r);return function(e){return{decodeJson:uZ(t)(Hd(e))}}};var jg=function(r){var t=Hd(r);return{decodeJsonField:function(e){return dwt(t)(e)}}},Yg=function(r){return{decodeJson:PN(Hd(r))}};var ON=Ut(di);var _wt=it(Xi),gwt=W(Un);var Wd=function(r){var t=Hd(r);return{decodeRepArgs:function(e){return ON(Ro(new ua("NonEmptyArray"))(Fm(e)))(function(n){return gwt(function(a){return(function(o){return{init:o,rest:n.tail}})(cO(a))})(t(n.head))})}}},zd=function(r){return r.decodeRepArgs},vZ=function(r){var t=zd(r);return function(e){var n=zd(e);return{decodeRepArgs:function(a){return ON(t(a))(function(o){return ON(n(o.rest))(function(i){return _wt({init:new Ol(o.init,i.init),rest:i.rest})})})}}}};var hZ=Lt(Pt),ywt=Xr(Sw),UN=W(Un),dZ=FO(di),mZ=Yt(ha),_Z=Oo(Uo),Gd=Ut(di),lw=it(Xi),gZ=ta(ea)(di),Dwt=aS(Dt(Fn(mm)))(function(r){return Fn(r)})(function(r){return Fn(r)})(function(r){return Fn(r)})(hZ)(function(r){return Fn(r)}),bwt=aS(Dt(Fn(mm)))(function(r){return Fn(r)})(function(r){return Fn(r)})(function(r){return Fn(r)})(function(r){return Fn(r)})(function(r){return Fn(r)}),yZ=function(r){return function(t){return new Xl("When decoding a "+r,t)}};var fw=function(r){return r["decodeAeson'"]},sw=function(r){return function(t){return function(e){var n=np(e);return function(a){var o=ew(a);return function(i){var u=fw(i);return{decodeAeson:function(l){return function(f){var s=new Kx({_Mode_ConstructorIsSingle:o(Ne.value),_Mode_ConstructorsAreAllNullary:n(Ne.value)});return u(s)(l)(f)}}}}}}}},HN=function(r){var t=fw(r);return function(e){var n=np(e);return function(a){var o=ew(a);return{decodeAeson:function(i){return function(u){var l=new Kx({_Mode_ConstructorIsSingle:o(Ne.value),_Mode_ConstructorsAreAllNullary:n(Ne.value)});return t(l)(i)(u)}}}}}},Bd=function(r){var t=fw(r);return function(e){var n=fw(e);return{"decodeAeson'":function(a){return function(o){return function(i){return ywt(UN(En.create)(t(a)(o)(i)))(UN(ar.create)(n(a)(o)(i)))}}}}}},Cwt=function(r){return r.decodeAeson},Qg=function(r){var t=_w(r);return function(e){var n=Cwt(e);return function(a){var o=UN(t),i=n(a);return function(u){return o(i(u))}}}},DZ=function(r){return function(t){return dZ((function(){var e=Ro(new Xl(mZ(r)+" property is missing",Fs.value)),n=iu(r);return function(a){return e(n(a))}})())(dZ((function(){var e=Ro(new ua(mZ(r)+" property is not a string"));return function(n){return e(ky(n))}})())(function(e){var n=e!==t;return n?new _t(new Xl("'tag' property has an incorrect value",new ua(e))):new ht(void 0)}))}},cw=function(r){var t=_r(r);return function(e){var n=vZ(e);return function(a){var o=zd(n(a));return{"decodeAeson'":function(i){return function(u){return function(l){var f=t(Ne.value);return _Z(yZ(f))((function(){var s={mode:i,options:u};return s.mode.value0._Mode_ConstructorIsSingle&&!s.options.tagSingleConstructors?Gd(o(zy(Fn(l))(hZ)(l)))(function(c){return lw(c.init)}):Gd(Ro(new ua("expected an object"))(ws(l)))(function(c){return gZ(DZ(s.options.sumEncoding.value0.tagFieldName)(f)(c))(function(){return Gd((function(){var p=iu(s.options.sumEncoding.value0.contentsFieldName)(c);if(p instanceof z)return o(Dwt(p.value0));if(p instanceof B)return o(Fn(eS(s.options.sumEncoding.value0.tagFieldName)(c)));throw new Error("Failed pattern match at Data.Argonaut.Aeson.Decode.Generic (line 135, column 27 - line 139, column 115): "+[p.constructor.name])})())(function(p){return lw(p.init)})})})})())}}}}}}},Twt=function(r){var t=_r(r);return function(e){var n=zd(e);return function(a){return function(o){return function(i){var u=t(Ne.value),l={mode:a,options:o};return Gd(Ro(new ua("expected an object"))(ws(i)))(function(f){return gZ(DZ(l.options.sumEncoding.value0.tagFieldName)(u)(f))(function(){return Gd((function(){var s=iu(l.options.sumEncoding.value0.contentsFieldName)(f);if(s instanceof z)return n(bwt(s.value0));if(s instanceof B)return n(Fn(eS(l.options.sumEncoding.value0.tagFieldName)(f)));throw new Error("Failed pattern match at Data.Argonaut.Aeson.Decode.Generic (line 166, column 27 - line 170, column 115): "+[s.constructor.name])})())(function(s){return lw(s.init)})})})}}}}},Vd=function(r){var t=_r(r),e=Twt(r);return function(n){var a=zd(n),o=e(n);return{"decodeAeson'":function(i){return function(u){return function(l){var f=t(Ne.value);return _Z(yZ(f))((function(){var s={mode:i,options:u};return s.mode.value0._Mode_ConstructorsAreAllNullary?Es("Unreachable: cannot have all nullary constructors and an `Argument` constructor at once."):s.mode.value0._Mode_ConstructorIsSingle&&!s.options.tagSingleConstructors?Gd(a(zy(Fn(l))(function(c){return Fn(c)})(l)))(function(c){return lw(c.init)}):o(i)(u)(l)})())}}}}}};var Iwt=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})();var Zg=(function(){return{sumEncoding:new Iwt({tagFieldName:"tag",contentsFieldName:"contents"}),tagSingleConstructors:!1,allNullaryToStringTag:!0}})();var Bwt={reflectSymbol:function(){return"TopicNode"}};var Vwt={reflectSymbol:function(){return"HashTagNode"}},$wt={reflectSymbol:function(){return"ArticleNode"}},qwt={reflectSymbol:function(){return"ImageNode"}},Jwt={reflectSymbol:function(){return"ExternalKitchenSinkSiteNode"}},GN=rw(Ud(YQ)),xZ=Ud($g),jwt=GN(GN(GN(rw(xZ)(xZ))));var Xg=Wd(kd),BN=Wd(pZ);var Ywt=Xx()(),$d=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})(),qd=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})(),Jd=(function(){function r(t,e){this.value0=t,this.value1=e}return r.create=function(t){return function(e){return new r(t,e)}},r})(),jd=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),Yd=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})();var wZ={to:function(r){return r},from:function(r){return r}},Qwt={to:function(r){if(r instanceof En)return new $d(r.value0.value0,r.value0.value1);if(r instanceof ar&&r.value0 instanceof En)return new qd(r.value0.value0.value0,r.value0.value0.value1);if(r instanceof ar&&r.value0 instanceof ar&&r.value0.value0 instanceof En)return new Jd(r.value0.value0.value0.value0,r.value0.value0.value0.value1);if(r instanceof ar&&r.value0 instanceof ar&&r.value0.value0 instanceof ar&&r.value0.value0.value0 instanceof En)return new jd(r.value0.value0.value0.value0);if(r instanceof ar&&r.value0 instanceof ar&&r.value0.value0 instanceof ar&&r.value0.value0.value0 instanceof ar)return new Yd(r.value0.value0.value0.value0);throw new Error("Failed pattern match at KitchenSink.Layout.Blog.Analyses.SiteGraph (line 50, column 1 - line 50, column 46): "+[r.constructor.name])},from:function(r){if(r instanceof $d)return new En(new Ol(r.value0,r.value1));if(r instanceof qd)return new ar(new En(new Ol(r.value0,r.value1)));if(r instanceof Jd)return new ar(new ar(new En(new Ol(r.value0,r.value1))));if(r instanceof jd)return new ar(new ar(new ar(new En(r.value0))));if(r instanceof Yd)return new ar(new ar(new ar(new ar(r.value0))));throw new Error("Failed pattern match at KitchenSink.Layout.Blog.Analyses.SiteGraph (line 50, column 1 - line 50, column 46): "+[r.constructor.name])}};var SZ={decodeJson:Qg(Qwt)(HN(Bd(cw(Bwt)(Xg)(BN))(Bd(cw(Vwt)(Xg)(BN))(Bd(cw($wt)(Xg)(BN))(Bd(Vd(qwt)(Xg))(Vd(Jwt)(Xg))))))(jwt)(RN))(Zg)};var pw=function(r){return Ywt(r)};var cs=it(Yu(na)),Zwt=Mn(yy(na)),ji=Ut(_p(na)),Kg=qQ(JQ(na))(jQ(na)),vw=mH(na),Xwt=dH(na),EZ=W(gy(zl)),Kwt=MH(ka),$N=pw(zp),AZ=GQ(au),tSt=AZ(RS(bp(ka))),eSt=W(an),MZ=AZ(RS(bm(Pt))),rSt=(function(){function r(){}return r.value=new r,r})(),nSt=(function(){function r(){}return r.value=new r,r})(),aSt=(function(){function r(){}return r.value=new r,r})(),oSt=(function(){function r(){}return r.value=new r,r})(),iSt=(function(){function r(){}return r.value=new r,r})(),uSt=(function(){function r(){}return r.value=new r,r})(),qN=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),lSt=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),fSt=function(r){return r===0?cs(rSt.value):r===1?cs(nSt.value):r===2?cs(aSt.value):r===3?cs(oSt.value):r===4?cs(iSt.value):Zwt(Ms(new Bm("Unsupported category")))},sSt=function(r){return ji(ji(Kg(r)("id"))(vw))(function(t){return ji(ji(Kg(r)("name"))(vw))(function(e){return ji(ji(ji(Kg(r)("category"))(Xwt))(fSt))(function(n){return cs({id:t,name:e,category:n})})})})},cSt=function(r){return ji(ji(Kg(r)("target"))(vw))(function(t){return ji(ji(Kg(r)("source"))(vw))(function(e){return cs({target:t,source:e})})})},IZ=function(r){if(r.dataType==="edge")return EZ(lSt.create)(cSt(r.data));if(r.dataType==="node")return EZ(qN.create)(sSt(r.data));if(Er)return cs(uSt.value);throw new Error("Failed pattern match at KSGraph (line 43, column 1 - line 43, column 78): "+[r.constructor.name])},FZ=function(r){return function(t){var e=function(h){return 10},n=function(h){return Je(!1)(function(_){return _.id===h})(t)},a=function(h){return 5},o=function(h){return 8},i=function(h){return function(_){var g=function(y){return h===y.value0&&_===y.value1||_===y.value0&&h===y.value1};return Kwt((function(){var y=tl(function(D){return D.edges});return function(D){return $N(y(tSt(D)))}})())(g)(r)}},u=function(h){return Je(!1)(function(_){return i(h)(_.id)})(t)},l=function(h){return function(_){if(n(_)||u(_))return"image://"+h;if(Er)return"circle";throw new Error("Failed pattern match at KSGraph (line 122, column 5 - line 122, column 46): "+[h.constructor.name,_.constructor.name])}},f=function(h){return function(_){if(n(h))return 35;if(u(h))return 30;if(Er)return _;throw new Error("Failed pattern match at KSGraph (line 127, column 5 - line 127, column 48): "+[h.constructor.name,_.constructor.name])}},s=function(h){return 15},c=function(h){return{source:h.value0,target:h.value1}},p=[{name:"articles"},{name:"topics"},{name:"hashtags"},{name:"images"},{name:"external"}],v=function(h){return function(_){return 10+eD(Wm(h))/eD(2)}},d=function(h){if(h.value1 instanceof Jd)return{id:h.value0,name:h.value1.value0,category:0,symbol:"rect",symbolSize:f(h.value0)(v(h.value1.value1)(h.value0))};if(h.value1 instanceof $d)return{id:h.value0,name:h.value0,category:1,symbol:"diamond",symbolSize:f(h.value0)(e(h.value0))};if(h.value1 instanceof qd)return{id:h.value0,name:h.value1.value0,category:2,symbol:"rect",symbolSize:f(h.value0)(o(h.value0))};if(h.value1 instanceof jd)return{id:h.value0,name:h.value1.value0,category:3,symbol:l(h.value1.value0)(h.value0),symbolSize:f(h.value0)(a(h.value0))};if(h.value1 instanceof Yd)return{id:h.value0,name:h.value1.value0,category:4,symbol:"triangle",symbolSize:s(h.value0)};throw new Error("Failed pattern match at KSGraph (line 148, column 35 - line 183, column 10): "+[h.value1.constructor.name])},m={legend:[{data:eSt(function(h){return h.name})(p)}],series:[{name:"dependency graph",type:"graph",layout:"force",data:kS((function(){var h=tl(function(g){return g.nodes}),_=tl(d);return function(g){return $N(h(MZ(_(g))))}})())(r),links:kS((function(){var h=tl(function(g){return g.edges}),_=tl(c);return function(g){return $N(h(MZ(_(g))))}})())(r),categories:p,roam:!0,draggable:!0,label:{position:"right"},force:{repulsion:100}}]};return{options:m,modified:!0}}};var JN={newXHR:function(){return new XMLHttpRequest},fixupUrl:function(r){return r||"/"}};var LZ=gH(JN);var ap=function(r){return function(t){return function(){return t[r]}}},hSt=ap("URL"),_St=ap("documentURI"),gSt=ap("origin"),ySt=ap("compatMode"),DSt=ap("characterSet"),bSt=ap("contentType");var CSt=ap("documentElement");var RZ=tt;function PZ(r){return function(t){return function(){return t.getElementById(r)}}}var SSt=W(_e),NZ=function(r){var t=SSt(dr),e=PZ(r);return function(n){return t(e(n))}};var MSt=W(_e),ASt=Ut(_n),ISt=it(ia),FSt=W(Un),OZ=ow(kd);var LSt=Ud($g);var UZ=Wd(aw(Jg(jg(Yg(OZ(kd))))(Jg(jg(Yg(OZ(SZ))))(nw)({reflectSymbol:function(){return"nodes"}})()())({reflectSymbol:function(){return"edges"}})()())()),HZ={reflectSymbol:function(){return"TopicGraph"}},RSt=Qg(wZ)(sw(UZ)(HZ)(LSt)(tw)(Vd(HZ)(UZ))),PSt="/json/topicsgraph.json";var kZ=function(r){return function(){var e=yi(),n=tf(e)(),a=NZ(r)(RZ(pD(n)))();if(a instanceof B)return"";if(a instanceof z)return MSt(Kn(""))(gk("data-base-path")(a.value0))();throw new Error("Failed pattern match at KitchenSink (line 44, column 3 - line 46, column 69): "+[a.constructor.name])}};var zZ=function(r){return ASt(LZ(EO)(r+PSt))(function(t){return ISt(FSt(function(e){return RSt(Zg)(e.body)})(t))})};var OSt=pw(zp),USt=wH(Cy)(In),GZ=LS(Cy),HSt=EH(GZ),kSt=PH(GZ),zSt=Ut(_a),ty=Ut(_n),BZ=ta(ea),WZ=BZ(_n),YN=sr(ho),jN=it(ia),WSt=Yt(qm),GSt=oQ()({reflectSymbol:function(){return"ksgraph"}})(iy),BSt=Ut(jp),VSt=ju(Jp),$St=gr(Na),qSt=BZ(jp),JSt=Fo(fu),jSt=pe(fp(Lo)),YSt=W(Xe),QSt=Cr(Mr)(hn),ZSt=$l(Jp),XSt=it(fu),KSt=Cr(fu)(wy),t1t=Xm(VS),e1t=(function(){function r(t){this.value0=t}return r.create=function(t){return new r(t)},r})(),r1t=function(r){return function(t){var e=function(a){return a.value0===r.id},n=function(a){if(a.value1 instanceof Jd)return new z(a.value1.value0);if(a.value1 instanceof $d)return new z(a.value1.value0);if(a.value1 instanceof qd)return new z(a.value1.value0);if(a.value1 instanceof jd)return new z(a.value1.value0);if(a.value1 instanceof Yd)return new z(a.value1.value0);throw new Error("Failed pattern match at Main (line 126, column 23 - line 131, column 53): "+[a.value1.constructor.name])};return SH((function(){var a=tl(function(u){return u.nodes}),o=HSt(e),i=tl(n);return function(u){return OSt(a(USt(o(i(kSt(u))))))}})())(t)}},n1t=function(r){return zSt(yi)(ZH(r)("_blank")(""))},a1t=function(r){return ty(zZ(r))(function(t){if(t instanceof _t)return WZ(YN(Km("failed: "+ES(t.value0))))(function(){return jN(B.value)});if(t instanceof ht&&t.value0 instanceof _t)return WZ(YN(Km("failed: "+WSt(t.value0.value0))))(function(){return jN(B.value)});if(t instanceof ht&&t.value0 instanceof ht)return jN(new z(t.value0.value0));throw new Error("Failed pattern match at Main (line 38, column 3 - line 45, column 41): "+[t.constructor.name])})},o1t=(function(){return Ne.value})(),i1t=function(r){var t=aQ(r),e=sr(r0(r.MonadEffect0())),n=function(s){return function(c){return hN([GSt(o1t)(void 0)(t(nQ))(FZ(s)(c))(e1t.create)])}},a=fs([ep("errorbox")])([mN([ep("errorbox-message")])([O1("could not load the topics graph")])]),o=function(s){return fs([ep("kitchensink-topicgraph")])([(function(){if(s.graph instanceof B)return a;if(s.graph instanceof z)return n(s.graph.value0)(s.focusedNode);throw new Error("Failed pattern match at Main (line 83, column 7 - line 85, column 58): "+[s.graph.constructor.name])})()])},i=function(s){return BSt(VSt)(function(c){var p=$St(r1t(s))(c.graph);return qSt(JSt(jSt(YSt(function(v){return v.id})(c.focusedNode))(new z(s.id)))(e(QSt(n1t)(p))))(function(){return ZSt(function(v){var d={};for(var m in v)({}).hasOwnProperty.call(v,m)&&(d[m]=v[m]);return d.focusedNode=new z(s),d})})})},u=function(s){return s instanceof qN?i(s.value0):XSt(void 0)},l=function(s){return{graph:s,focusedNode:B.value}},f=function(s){var c=dm(IZ(s.value0));return KSt(u)(c)};return bh({initialState:l,render:o,eval:Dh({handleQuery:lf.handleQuery,receive:lf.receive,initialize:lf.initialize,finalize:lf.finalize,handleAction:f})})},u1t=i1t(VS),VZ=tk(ty(ek)(function(r){return ty(YN(kZ("echartzone")))(function(t){return ty(t1t(a1t(t)))(function(e){return ty(KS("#echartzone"))(function(n){var a=Kn(r)(n);return UQ(u1t)(e)(a)})})})}));VZ();})();+/*! Bundled license information:++tslib/tslib.es6.js:+  (*! *****************************************************************************+  Copyright (c) Microsoft Corporation.+  +  Permission to use, copy, modify, and/or distribute this software for any+  purpose with or without fee is hereby granted.+  +  THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH+  REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY+  AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,+  INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM+  LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR+  OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR+  PERFORMANCE OF THIS SOFTWARE.+  ***************************************************************************** *)++zrender/lib/zrender.js:+  (*!+  * ZRender, a high performance 2d drawing library.+  *+  * Copyright (c) 2013, Baidu Inc.+  * All rights reserved.+  *+  * LICENSE+  * https://github.com/ecomfe/zrender/blob/master/LICENSE.txt+  *)+*/
+ scaffolding/kitchen-sink.json view
@@ -0,0 +1,7 @@+{ "title": "Kitchen Sink Default Page"+, "publishURL": "https://kitchensink.github.io"+, "twitterLogin": "lucasdicioccio"+, "commands": []+, "api": {"tag":"NoProxying"}+}+
+ scaffolding/newpage.cmark.tmpl view
@@ -0,0 +1,43 @@+=base:build-info.json+{"layout":"article"+,"publicationStatus":"Public"+}++=base:preamble.json+{"author": "Anonymous Author"+,"date": "2084-04-04T01:00:00Z"+,"title": "new page"+}++=base:topic.json+{"topics":["some topic"]+,"keywords":["some more", "longer keywords"]+}++=base:social.json+{"twitter": "lucasdicioccio"+,"linkedin": "lucasdicioccio"+,"github": "lucasdicioccio"+,"mastodon": "https://fosstodon.org/@lucasdicioccio"+}++=base:summary.cmark+A Page unintentionally left blank (or quasi-vacat).++=base:main-content.cmark++# new page++an article example++## subsection++a subsection with words and #super-hashtag++=base:main-css.css++@import "/css/dev.css";+@import "/css/colors.css";+@import "/css/article.css";+@import "/css/navigation.css";+
+ scaffolding/topics.cmark.tmpl view
@@ -0,0 +1,11 @@+=base:build-info.json+{"layout":"topics"+}++=base:main-css.css+@import "/css/dev.css";+@import "/css/colors.css";+@import "/css/articles-listing.css";+@import "/css/topics.css";+@import "/css/navigation.css";+
+ src/KitchenSink/Commonmark/BlogHTML.hs view
@@ -0,0 +1,61 @@+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE DerivingVia #-}+{-# LANGUAGE UndecidableInstances #-}++module KitchenSink.Commonmark.BlogHTML where++import Commonmark (HasAttributes, IsBlock (..), IsInline, Rangeable, ToPlainText, addAttribute, htmlInline)+import Commonmark qualified+import Commonmark.Extensions (HasDiv, HasEmoji, HasQuoted, HasSpan)+import Data.Ord (min)+import Data.Text.Lazy (toStrict)+import Data.Text.Lazy qualified as TL+import Data.Text.Lazy.Encoding (decodeUtf8)+import KitchenSink.Commonmark.HashTag (HasHashTag (..))++import KitchenSink.Commonmark.Highlighting+import KitchenSink.Prelude+import Prelude ((+))++newtype Html = Html (Commonmark.Html ())+    deriving (Show)+    deriving (Semigroup)+    deriving (Monoid)+    deriving (HasAttributes) via (Commonmark.Html ())+    deriving (Rangeable) via (Commonmark.Html ())+    deriving (IsInline) via (Commonmark.Html ())+    deriving (HasDiv) via (Commonmark.Html ())+    deriving (HasSpan) via (Commonmark.Html ())+    deriving (HasEmoji) via (Commonmark.Html ())+    deriving (HasQuoted) via (Commonmark.Html ())+    deriving (ToPlainText) via (Commonmark.Html ())++hashtagDestinationUrl :: Text -> Text+hashtagDestinationUrl txt = "/hashtags/" <> txt <> ".html"++instance HasHashTag Html where+    hashtag a =+        Html+            $ addAttribute ("href", hashtagDestinationUrl a)+            $ htmlInline "a"+            $ Just+            $ hashtag a++instance IsBlock Html Html where+    paragraph (Html a) = Html (paragraph a)+    plain (Html a) = Html (plain a)+    thematicBreak = Html thematicBreak+    blockQuote (Html a) = Html (blockQuote a)+    -- Markdown headings start one level below the hand-authored article+    -- <h1> title, so `#` becomes <h2>, `##` becomes <h3>, etc.+    heading n (Html a) = Html (heading (min 6 (n + 1)) a)+    rawBlock f t = Html (rawBlock f t)+    referenceLinkDefinition t kv = Html (referenceLinkDefinition t kv)+    list ty sp xs = Html (list ty sp [coerce x | x <- xs])+    codeBlock lang code =+        case highlightCode (CodeLanguage lang) (Code code) of+            Nothing -> Html (codeBlock lang code)+            Just lbs -> Html $ Commonmark.htmlRaw $ mconcat ["<div class=\"code code--highlighted\">", toStrict $ decodeUtf8 $ lbs, "</div>"]++renderHtml :: Html -> TL.Text+renderHtml = Commonmark.renderHtml . coerce
+ src/KitchenSink/Commonmark/Free.hs view
@@ -0,0 +1,222 @@+{-# OPTIONS_GHC -fno-warn-orphans #-}++module KitchenSink.Commonmark.Free where++import Commonmark.Extensions (HasDiv (..), HasSpan (..))+import Commonmark.Types+import Control.Applicative (pure)+import Data.Aeson (ToJSON (..), (.=))+import Data.Aeson qualified as Aeson+import Data.Char (Char)+import Data.Function (($), (.))+import Data.Int (Int)+import Data.Monoid (Monoid (..))+import Data.Semigroup (Semigroup (..))+import Data.Text (Text)+import GHC.Generics (Generic)+import Text.Show (Show)++import KitchenSink.Commonmark.HashTag (HasHashTag (..))++{- Note: neither 'Inline' nor 'Block' may be parameterized.++commonmark >= 0.3 ships an OVERLAPPABLE @IsBlock (f il) (f b)@ instance lifting+the class through applicative functors. 'IsBlock' has the functional dependency+@b -> il@, so a parameterized @Block a@ would unify with @f b@ and be forced to+pick @il ~ Block _@, conflicting with the @Inline@ instance below. GHC's fundep+consistency check runs regardless of OVERLAPPING pragmas, so keeping these type+constructors nullary is what makes the instances legal.+-}++-- INLINES++data InlineChunk+    = LineBreak+    | SoftBreak+    | Str Text+    | Entity Text+    | EscapedChar Char+    | Emph Inline+    | Strong Inline+    | Link Text Text Inline+    | Image Text Text Inline+    | Code Text+    | HashTag Text+    | RawInline Format Text+    | SpanInline Inline+    deriving (Show, Generic)+instance ToJSON InlineChunk++data Inline = Inline+    { inlineChunks :: [InlineChunk]+    , inlineAttributes :: Attributes+    }+    deriving (Show, Generic)+instance ToJSON Inline++instance ToJSON Format where+    toJSON (Format txt) = toJSON txt++inlineUniplate :: Inline -> [Inline]+inlineUniplate blk = mconcat [go c | c <- inlineChunks blk]+  where+    only a = [a]+    nil = []+    go bc = case bc of+        Emph il -> only il+        Strong il -> only il+        Link _ _ il -> only il+        Image _ _ il -> only il+        _ -> nil++inlineUniverse :: Inline -> [Inline]+inlineUniverse blk = blk : mconcat [inlineUniverse b | b <- inlineUniplate blk]++inline :: InlineChunk -> Inline+inline c = Inline [c] mempty++instance Semigroup Inline where+    Inline c1s a1s <> Inline c2s a2s = Inline (c1s <> c2s) (a1s <> a2s)++instance Monoid Inline where+    mempty = Inline mempty mempty++instance HasAttributes Inline where+    addAttributes xs (Inline c ys) = Inline c (xs <> ys)++instance HasHashTag Inline where+    hashtag t = Inline [HashTag t] mempty++instance HasSpan Inline where+    spanWith attrs il = Inline [SpanInline il] attrs++instance Rangeable Inline where+    ranged _ a = a++instance IsInline Inline where+    lineBreak = inline LineBreak+    softBreak = inline SoftBreak+    str = inline . Str+    entity = inline . Entity+    escapedChar = inline . EscapedChar+    emph = inline . Emph+    strong = inline . Strong+    link dst title = inline . Link dst title+    image dst title = inline . Image dst title+    code = inline . Code+    rawInline fmt = inline . RawInline fmt++-- BLOCKS++data BlockChunk+    = Paragraph Inline+    | Plain Inline+    | ThematicBreak+    | BlockQuote Block+    | CodeBlock Text Text+    | Heading Int Inline+    | RawBlock Format Text+    | ReferenceLinkDefinition Text (Text, Text)+    | List ListType ListSpacing [Block]+    | NestedDivBlock Block+    deriving (Show, Generic)+instance ToJSON BlockChunk++blockChunkInlines :: BlockChunk -> [Inline]+blockChunkInlines bc =+    let only a = [a]+        nil = []+     in case bc of+            Paragraph il -> only il+            Plain il -> only il+            Heading _ il -> only il+            _ -> nil++data Block = Block+    { blockChunks :: [BlockChunk]+    , blockAttributes :: Attributes+    }+    deriving (Show, Generic)+instance ToJSON Block++instance HasDiv Block where+    div_ bl = Block [NestedDivBlock bl] mempty++instance ToJSON EnumeratorType where+    toJSON Decimal = toJSON ("Decimal" :: Text)+    toJSON UpperAlpha = toJSON ("UpperAlpha" :: Text)+    toJSON LowerAlpha = toJSON ("LowerAlpha" :: Text)+    toJSON UpperRoman = toJSON ("UpperRoman" :: Text)+    toJSON LowerRoman = toJSON ("LowerRoman" :: Text)++instance ToJSON DelimiterType where+    toJSON Period = toJSON ("Period" :: Text)+    toJSON OneParen = toJSON ("OneParen" :: Text)+    toJSON TwoParens = toJSON ("TwoParens" :: Text)++instance ToJSON ListSpacing where+    toJSON TightList = toJSON ("TightList" :: Text)+    toJSON LooseList = toJSON ("LooseList" :: Text)++instance ToJSON ListType where+    toJSON (BulletList c) = Aeson.object ["tag" .= ("BulletList" :: Text), "contents" .= c]+    toJSON (OrderedList n et dt) =+        Aeson.object+            [ "tag" .= ("OrderedList" :: Text)+            , "contents"+                .= Aeson.toJSON1+                    [ toJSON n+                    , toJSON et+                    , toJSON dt+                    ]+            ]++blockUniplate :: Block -> [Block]+blockUniplate blk = mconcat [blockChunkBlocks c | c <- blockChunks blk]++blockChunkBlocks :: BlockChunk -> [Block]+blockChunkBlocks = go+  where+    only a = [a]+    nil = []+    go bc = case bc of+        BlockQuote bl -> only bl+        List _ _ bls -> bls+        _ -> nil++blockUniverse :: Block -> [Block]+blockUniverse blk = blk : mconcat [blockUniverse b | b <- blockUniplate blk]++blockInlines :: Block -> [Inline]+blockInlines root = do+    -- list monad!+    blk <- blockUniverse root+    chunk <- blockChunks blk+    il <- blockChunkInlines chunk+    pure il++block :: BlockChunk -> Block+block c = Block [c] mempty++instance Semigroup Block where+    Block c1s a1s <> Block c2s a2s = Block (c1s <> c2s) (a1s <> a2s)++instance Monoid Block where+    mempty = Block mempty mempty++instance HasAttributes Block where+    addAttributes xs (Block c ys) = Block c (xs <> ys)++instance Rangeable Block where+    ranged _ a = a++instance IsBlock Inline Block where+    paragraph = block . Paragraph+    plain = block . Plain+    thematicBreak = block ThematicBreak+    blockQuote = block . BlockQuote+    codeBlock t1 t2 = block $ CodeBlock t1 t2+    heading n = block . Heading n+    rawBlock fmt = block . RawBlock fmt+    referenceLinkDefinition lbl dsttile = block $ ReferenceLinkDefinition lbl dsttile+    list ltype lspacing = block . List ltype lspacing
+ src/KitchenSink/Commonmark/HashTag.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE ImplicitPrelude #-}++module KitchenSink.Commonmark.HashTag (+    HasHashTag (..),+    hashtagSpec,+)+where++import Commonmark.Html+import Commonmark.Inlines+import Commonmark.SourceMap+import Commonmark.Syntax+import Commonmark.TokParsers+import Commonmark.Tokens+import Commonmark.Types+import Data.Text (Text)+import Text.Parsec++hashtagSpec ::+    (Monad m, IsBlock il bl, IsInline il, HasHashTag il) =>+    SyntaxSpec m il bl+hashtagSpec =+    mempty+        { syntaxInlineParsers = [withAttributes parseHashTag]+        }++class HasHashTag a where+    hashtag ::+        Text -> -- the hashtag value+        a++instance {-# OVERLAPPABLE #-} HasHashTag (Html a) where+    hashtag kw =+        addAttribute ("class", "hashtag")+            . addAttribute ("data-hashtag", kw)+            $ htmlInline "span"+            $ Just+            $ htmlText+            $ "#" <> kw++instance (HasHashTag i, Monoid i) => HasHashTag (WithSourceMap i) where+    hashtag kw = hashtag kw <$ addName "hashtag"++parseHashTag :: (Monad m, HasHashTag a) => InlineParser m a+parseHashTag = try $ do+    _ <- symbol '#'+    ts <-+        many1 $+            satisfyWord (const True)+                <|> symbol '_'+                <|> symbol '-'+    let kw = untokenize ts+    return $! hashtag kw
+ src/KitchenSink/Commonmark/Highlighting.hs view
@@ -0,0 +1,26 @@+module KitchenSink.Commonmark.Highlighting (+    CodeLanguage (..),+    Code (..),+    highlightCode,+) where++import Data.ByteString.Lazy qualified as LByteString+import Skylighting+import Text.Blaze.Html qualified as Blaze+import Text.Blaze.Renderer.Utf8 (renderMarkup)++import KitchenSink.Prelude++newtype CodeLanguage = CodeLanguage Text+newtype Code = Code Text++highlightCode :: CodeLanguage -> Code -> Maybe LByteString.ByteString+highlightCode fmt code = do+    s <- syntaxByName defaultSyntaxMap (coerce fmt)+    either (const Nothing) (Just . render)+        $ tokenize (TokenizerConfig defaultSyntaxMap False) s (coerce code)+  where+    render tkns =+        renderMarkup+            $ Blaze.toHtml+            $ formatHtmlBlock defaultFormatOpts tkns
+ src/KitchenSink/Core/Assembler.hs view
@@ -0,0 +1,5 @@+module KitchenSink.Core.Assembler (+    module KitchenSink.Core.Assembler.Base,+) where++import KitchenSink.Core.Assembler.Base
+ src/KitchenSink/Core/Assembler/Base.hs view
@@ -0,0 +1,24 @@+module KitchenSink.Core.Assembler.Base (Assembler (..), AssemblerError (..)) where++import Commonmark qualified+import Data.Typeable++import KitchenSink.Core.Section+import KitchenSink.Prelude++data AssemblerError ext+    = SectionNotFound+    | UnsupportedConversionFormat Format+    | CommonMarkRenderingError Commonmark.ParseError+    | JsonDecodingError String+    deriving (Show, Eq)+instance (Show ext, Typeable ext) => Exception (AssemblerError ext)++newtype Assembler ext a = Assembler {runAssembler :: Either (AssemblerError ext) a}+    deriving (Show, Functor, Applicative, Monad)++instance (Semigroup a) => Semigroup (Assembler ext a) where+    a1 <> a2 = (<>) <$> a1 <*> a2++instance (Monoid a) => Monoid (Assembler ext a) where+    mempty = pure mempty
+ src/KitchenSink/Core/Assembler/Sections.hs view
@@ -0,0 +1,25 @@+module KitchenSink.Core.Assembler.Sections (+    module KitchenSink.Core.Assembler.Sections.Primitives,+    module KitchenSink.Core.Assembler.Sections.CommonMark,+    module KitchenSink.Core.Assembler.Sections.Json,+    module KitchenSink.Core.Assembler.Sections.PreRendered,+    renderSection,+) where++import Data.Text qualified as Text++import KitchenSink.Core.Build.Target+import KitchenSink.Core.Section+import KitchenSink.Prelude++import KitchenSink.Core.Assembler.Sections.CommonMark+import KitchenSink.Core.Assembler.Sections.Json+import KitchenSink.Core.Assembler.Sections.PreRendered+import KitchenSink.Core.Assembler.Sections.Primitives++renderSection :: Section ext [Text] -> Assembler ext (Section ext PreRenderedHtml)+renderSection s@(Section _ encoding _) =+    case encoding of+        Cmark -> renderCMark s+        TextHtml -> Assembler $ Right $ fmap (coerce Text.unlines) s+        fmt -> Assembler $ Left (UnsupportedConversionFormat fmt)
+ src/KitchenSink/Core/Assembler/Sections/CommonMark.hs view
@@ -0,0 +1,62 @@+module KitchenSink.Core.Assembler.Sections.CommonMark+where++import Commonmark qualified+import Commonmark.Extensions qualified as CommonmarkE+import Data.Text qualified as Text+import Data.Text.Lazy qualified as LText+import KitchenSink.Commonmark.HashTag qualified as CommonmarkE++import KitchenSink.Commonmark.BlogHTML+import KitchenSink.Commonmark.Free qualified as FreeCommonmark+import KitchenSink.Core.Build.Target+import KitchenSink.Core.Section+import KitchenSink.Prelude++import KitchenSink.Core.Assembler.Sections.PreRendered (PreRenderedHtml (..))++dumpCMark :: Section ext [Text] -> Assembler ext (Section ext (FreeCommonmark.Block))+dumpCMark (Section ty Cmark lines) = do+    let customSyntax =+            mconcat+                [ CommonmarkE.hashtagSpec+                , CommonmarkE.fencedDivSpec+                , CommonmarkE.bracketedSpanSpec+                , Commonmark.defaultSyntaxSpec+                ]+    res <- Commonmark.commonmarkWith customSyntax "inline" (Text.unlines lines)+    case res of+        Left err ->+            Assembler $ Left (CommonMarkRenderingError err)+        Right (blk :: FreeCommonmark.Block) ->+            Assembler $ Right $ Section ty InMemory blk+dumpCMark (Section _ fmt _) =+    Assembler $ Left (UnsupportedConversionFormat fmt)++parseCMark :: Section ext [Text] -> Assembler ext (Section ext Html)+parseCMark (Section ty Cmark lines) = do+    let customSyntax =+            mconcat+                [ CommonmarkE.hashtagSpec+                , CommonmarkE.fencedDivSpec+                , CommonmarkE.bracketedSpanSpec+                , CommonmarkE.emojiSpec+                , CommonmarkE.smartPunctuationSpec+                , CommonmarkE.autoIdentifiersSpec+                , CommonmarkE.implicitHeadingReferencesSpec+                , Commonmark.defaultSyntaxSpec+                ]+    res <- Commonmark.commonmarkWith customSyntax "inline" (Text.unlines lines)+    case res of+        Left err -> Assembler $ Left (CommonMarkRenderingError err)+        Right (html :: Html) -> Assembler $ Right $ Section ty InMemory html+parseCMark (Section _ fmt _) = Assembler $ Left (UnsupportedConversionFormat fmt)++renderCMark :: Section ext [Text] -> Assembler ext (Section ext PreRenderedHtml)+renderCMark sec =+    fmap (fmap r) $ parseCMark sec+  where+    r (html :: Html) =+        PreRenderedHtml+            $ LText.toStrict+            $ renderHtml html
+ src/KitchenSink/Core/Assembler/Sections/Json.hs view
@@ -0,0 +1,27 @@+module KitchenSink.Core.Assembler.Sections.Json where++import Data.Aeson (FromJSON)+import Data.Aeson qualified as Aeson+import Data.Text qualified as Text+import Data.Text.Lazy qualified as LText+import Data.Text.Lazy.Encoding qualified as LText++import KitchenSink.Core.Assembler.Sections.Primitives+import KitchenSink.Core.Build.Site+import KitchenSink.Core.Build.Target+import KitchenSink.Core.Section+import KitchenSink.Prelude++jsonSection :: (FromJSON a) => Section ext [Text] -> Assembler ext (Section ext a)+jsonSection (Section ty Json lines) =+    let res = Aeson.eitherDecode' (LText.encodeUtf8 $ LText.fromStrict $ Text.unlines lines)+     in case res of+            Left err -> Assembler $ Left (JsonDecodingError err)+            Right a -> Assembler $ Right $ Section ty InMemory a+jsonSection (Section _ fmt _) = Assembler $ Left (UnsupportedConversionFormat fmt)++json :: (Eq ext, FromJSON a) => Article ext [Text] -> SectionPredicate ext -> Assembler ext (Section ext a)+json art k = getSection art k >>= jsonSection++jsonm :: (Eq ext, FromJSON a) => Article ext [Text] -> SectionPredicate ext -> Assembler ext (Maybe (Section ext a))+jsonm art k = lookupSection art k >>= traverse jsonSection
+ src/KitchenSink/Core/Assembler/Sections/PreRendered.hs view
@@ -0,0 +1,8 @@+module KitchenSink.Core.Assembler.Sections.PreRendered (+    PreRenderedHtml (..),+)+where++import Data.Text (Text)++newtype PreRenderedHtml = PreRenderedHtml Text
+ src/KitchenSink/Core/Assembler/Sections/Primitives.hs view
@@ -0,0 +1,93 @@+module KitchenSink.Core.Assembler.Sections.Primitives (+    -- some helper function to locate sections in articles+    SectionPredicate,+    getSection,+    getSections,+    lookupSection,++    -- * prebuild predicates+    isBuildInfo,+    isCallout,+    isFaq,+    isGlossary,+    isMainContent,+    isMainCss,+    isPreamble,+    isPricing,+    isSocial,+    isSummary,+    isTopic,+    isGeneratorInstructions,+    isDataset,+    isLibrary,+) where++import Data.List qualified as List++import KitchenSink.Core.Build.Site+import KitchenSink.Core.Build.Target+import KitchenSink.Core.Section+import KitchenSink.Prelude++type SectionPredicate ext = forall payload. (Section ext payload -> Bool)++isBuildInfo :: (Eq ext) => SectionPredicate ext+isBuildInfo = (== BuildInfo) . sectionType++isMainContent :: (Eq ext) => SectionPredicate ext+isMainContent = (== MainContent) . sectionType++isMainCss :: (Eq ext) => SectionPredicate ext+isMainCss = (== MainCss) . sectionType++isGeneratorInstructions :: (Eq ext) => SectionPredicate ext+isGeneratorInstructions = (== GeneratorInstructions) . sectionType++isSummary :: (Eq ext) => SectionPredicate ext+isSummary = (== Summary) . sectionType++isTopic :: (Eq ext) => SectionPredicate ext+isTopic = (== Topic) . sectionType++isGlossary :: (Eq ext) => SectionPredicate ext+isGlossary = (== Glossary) . sectionType++isCallout :: (Eq ext) => SectionPredicate ext+isCallout = (== Callout) . sectionType++isFaq :: (Eq ext) => SectionPredicate ext+isFaq = (== Faq) . sectionType++isPricing :: (Eq ext) => SectionPredicate ext+isPricing = (== Pricing) . sectionType++isSocial :: (Eq ext) => SectionPredicate ext+isSocial = (== Social) . sectionType++isPreamble :: (Eq ext) => SectionPredicate ext+isPreamble = (== Preamble) . sectionType++isDataset :: SectionPredicate ext+isDataset s = case sectionType s of+    (Dataset _) -> True+    _ -> False++isLibrary :: SectionPredicate ext+isLibrary s = case sectionType s of+    (Library _) -> True+    _ -> False++getSection :: (Eq ext) => Article ext a -> SectionPredicate ext -> Assembler ext (Section ext a)+getSection (Article _ xs) f =+    Assembler+        $ maybe (Left $ SectionNotFound) Right+        $ List.find f xs++getSections :: (Eq ext) => Article ext a -> SectionPredicate ext -> Assembler ext [Section ext a]+getSections (Article _ xs) f =+    pure+        $ List.filter f xs++lookupSection :: (Eq ext) => Article ext a -> SectionPredicate ext -> Assembler ext (Maybe (Section ext a))+lookupSection (Article _ xs) f =+    pure $ List.find f xs
+ src/KitchenSink/Core/Build/Site.hs view
@@ -0,0 +1,65 @@+module KitchenSink.Core.Build.Site where++import Text.Megaparsec+import Text.Megaparsec.Char (newline)++import KitchenSink.Core.Build.Target+import KitchenSink.Core.Section+import KitchenSink.Prelude++data Article ext a+    = Article FilePath [Section ext a]+    deriving (Show, Eq, Ord, Functor)++article :: [ExtraSectionType ext] -> FilePath -> Parser (Article ext [Text])+article extras path = Article path <$> (section extras `sepBy` newline)++-- A lens-like over-function that effectfully alters sections of an article.+overSections :: (Applicative t) => (Section ext a -> t (Section ext b)) -> Article ext a -> t (Article ext b)+overSections f (Article p xs) =+    Article p <$> traverse f xs++data AudioFile = AudioFile+    deriving (Show, Eq, Ord)++data VideoFile = VideoFile+    deriving (Show, Eq, Ord)++data RawFile = RawFile+    deriving (Show, Eq, Ord)++data DocumentFile = DocumentFile+    deriving (Show, Eq, Ord)++data CssFile = CssFile+    deriving (Show, Eq, Ord)++data WebfontFile = WebfontFile+    deriving (Show, Eq, Ord)++data JsFile = JsFile+    deriving (Show, Eq, Ord)++data HtmlFile = HtmlFile+    deriving (Show, Eq, Ord)++data Image = Image+    deriving (Show, Eq, Ord)++data DotSourceFile = DotSourceFile+    deriving (Show, Eq, Ord)++data Site ext = Site+    { articles :: [Sourced (Article ext [Text])]+    , images :: [Sourced Image]+    , videoFiles :: [Sourced VideoFile]+    , audioFiles :: [Sourced AudioFile]+    , cssFiles :: [Sourced CssFile]+    , webfontFiles :: [Sourced WebfontFile]+    , jsFiles :: [Sourced JsFile]+    , htmlFiles :: [Sourced HtmlFile]+    , dotSourceFiles :: [Sourced DotSourceFile]+    , rawFiles :: [Sourced RawFile]+    , docFiles :: [Sourced DocumentFile]+    }+    deriving (Show, Eq, Ord)
+ src/KitchenSink/Core/Build/Target.hs view
@@ -0,0 +1,62 @@+module KitchenSink.Core.Build.Target (Target (..), ProductionRule (..), Url, DestinationLocation (..), destinationUrl, SourceLocation (..), Sourced (..), Assembler (..), AssemblerError (..), copyFrom, execCmd, ExecRoot, OutputPrefix)+where++import Data.ByteString (ByteString)+import Data.ByteString qualified as ByteString+import Data.Text.Lazy qualified as LText+import System.Exit (ExitCode (..))+import System.Process qualified as Process+import System.Process.ByteString qualified as BProcess++import KitchenSink.Core.Assembler+import KitchenSink.Core.Build.Trace+import KitchenSink.Core.Generator+import KitchenSink.Prelude++type OutputPrefix = FilePath++data ProductionRule ext+    = ProduceAssembler (Assembler ext LText.Text)+    | ProduceGenerator (Tracer -> Generator ByteString.ByteString)+    | ProduceFileCopy (Sourced ())++data Target ext a = Target+    { destination :: DestinationLocation+    , productionRule :: ProductionRule ext+    , summary :: a+    }+    deriving (Functor)++data SourceLocation = FileSource FilePath+    deriving (Show, Eq, Ord)++data Sourced a = Sourced {location :: SourceLocation, obj :: a}+    deriving (Show, Eq, Ord)++type Url = Text++data DestinationLocation+    = StaticFileDestination Url FilePath+    | VirtualFileDestination Url FilePath+    deriving (Show, Eq, Ord)++destinationUrl :: DestinationLocation -> Url+destinationUrl (StaticFileDestination u _) = u+destinationUrl (VirtualFileDestination u _) = u++copyFrom :: SourceLocation -> ProductionRule ext+copyFrom path = ProduceFileCopy (Sourced path ())++type ExecRoot = Maybe FilePath++execCmd :: ExecRoot -> FilePath -> [String] -> ByteString -> ProductionRule ext+execCmd root path args input =+    ProduceGenerator f+  where+    f trace = Generator $ do+        _ <- trace $ Executing path args+        let cprocess = (Process.proc path args){Process.cwd = root}+        (code, !out, !err) <- BProcess.readCreateProcessWithExitCode cprocess input+        pure $ case code of+            ExitFailure n -> Left (GeneratorError (show n) err)+            _ -> Right out
+ src/KitchenSink/Core/Build/Trace.hs view
@@ -0,0 +1,13 @@+module KitchenSink.Core.Build.Trace (Tracer, Trace (..))+where++import KitchenSink.Prelude++data Trace+    = Executing FilePath [String]+    | Copying FilePath+    | Generating FilePath+    | Assembling FilePath+    deriving (Show)++type Tracer = Trace -> IO ()
+ src/KitchenSink/Core/Generator.hs view
@@ -0,0 +1,19 @@+module KitchenSink.Core.Generator (Generator (..), GeneratorError (..)) where++import Data.ByteString (ByteString)++import KitchenSink.Prelude++data GeneratorError+    = GeneratorError String ByteString+    deriving (Show, Eq)+instance Exception GeneratorError++newtype Generator a+    = Generator+    { runGenerator :: IO (Either GeneratorError a)+    }+    deriving (Functor)++instance Show (Generator a) where+    show _ = "Generator"
+ src/KitchenSink/Core/Section.hs view
@@ -0,0 +1,10 @@+module KitchenSink.Core.Section (+    module KitchenSink.Core.Section.Base,+    module KitchenSink.Core.Section.Parser,+    module KitchenSink.Core.Section.Payloads,+)+where++import KitchenSink.Core.Section.Base+import KitchenSink.Core.Section.Parser+import KitchenSink.Core.Section.Payloads
+ src/KitchenSink/Core/Section/Base.hs view
@@ -0,0 +1,54 @@+-- | Base types for the Kitchensink section-format.+module KitchenSink.Core.Section.Base (SectionType (..), Format (..), Section (..))+where++import KitchenSink.Prelude++data SectionType ext+    = BuildInfo+    | Preamble+    | Topic+    | Summary+    | MainContent+    | MainCss+    | TakenOff+    | Social+    | Glossary+    | Callout+    | Faq+    | Pricing+    | Dataset Name+    | Library Name+    | Extension ext+    | --+      GeneratorInstructions+    deriving (Show, Eq, Ord)++data Format+    = Cmark+    | Dhall+    | Mustache+    | -- | tramaj, expression root: evaluates to @{format, contents}@+      TramajJson+    | -- | tramaj, element root: evaluates to a document tree+      TramajDoc+    | -- | tramaj, library, for imports only+      TramajLib+    | Json+    | TextHtml+    | Css+    | Csv+    | InMemory+    | -- | a dataset backed by a SQL query, evaluated per-request against a+      -- read-only sqlite datasource (dynamic pages only); deliberately never+      -- evaluated at load time, see 'KitchenSink.Engine.SiteLoader'+      Sql+    deriving (Show, Eq, Ord)++data Section ext payload+    = Section+    { sectionType :: (SectionType ext)+    , sectionFormat :: Format+    , sectionPayload :: payload+    }+    deriving (Show, Eq, Ord, Functor, Foldable, Traversable)
+ src/KitchenSink/Core/Section/Parser.hs view
@@ -0,0 +1,117 @@+module KitchenSink.Core.Section.Parser (+    module KitchenSink.Core.Section.Base,+    extract,+    extract',+    section,+    ExtraSectionType (..),+    Parser,+)+where++import Data.Char (isAlphaNum)+import Data.Foldable (asum)+import Data.Void (Void)+import Text.Megaparsec+import Text.Megaparsec.Char (newline, space, string)++import KitchenSink.Core.Section.Base+import KitchenSink.Prelude++extract' :: (Coercible a b) => Section ext a -> b+extract' (Section _ _ a) = coerce a++extract :: Section ext a -> a+extract (Section _ _ a) = a++type Parser = Parsec Void Text++data ExtraSectionType userdef+    = ExtraSectionType+    { key :: Text+    , val :: userdef+    }++headers :: [ExtraSectionType ext] -> Parser (SectionType ext, Format)+headers extras =+    asum (basics <> complicated <> dangerous <> extensions)+  where+    dotFormat :: Parser Format+    dotFormat = string "." *> format++    nsKeyVal :: forall value. Text -> Text -> value -> Parser value+    nsKeyVal ns k v = string ("=" <> ns <> ":" <> k) *> pure v++    base k v = (,) <$> nsKeyVal "base" k v <*> dotFormat+    gen k v = (,) <$> nsKeyVal "generator" k v <*> dotFormat+    ext k v = (,) <$> nsKeyVal "ext" k v <*> dotFormat++    basics =+        [ base "build-info" BuildInfo+        , base "preamble" Preamble+        , base "topic" Topic+        , base "main-content" MainContent+        , base "summary" Summary+        , base "main-css" MainCss+        , base "taken-off" TakenOff+        , base "social" Social+        , base "glossary" Glossary+        , base "callout" Callout+        , base "faq" Faq+        , base "pricing" Pricing+        ]++    -- for dataset the format is before the dataset+    complicated =+        [ adaptDataset <$> (nsKeyVal "base" "library" Library) <*> dotFormat <*> (space *> kebabString)+        , adaptDataset <$> (nsKeyVal "base" "dataset" Dataset) <*> dotFormat <*> (space *> kebabString)+        ]+      where+        adaptDataset :: (Name -> SectionType ext) -> Format -> Text -> (SectionType ext, Format)+        adaptDataset f fmt name = (f name, fmt)++    dangerous =+        [ gen "cmd" GeneratorInstructions+        ]++    extensions =+        [ext k (Extension v) | ExtraSectionType k v <- extras]++format :: Parser Format+format = cmark <|> json <|> css <|> csv <|> dhall <|> mustache <|> tramajDoc <|> tramajLib <|> tramajJson <|> sql+  where+    cmark = string "cmark" *> pure Cmark+    json = string "json" *> pure Json+    css = string "css" *> pure Css+    csv = string "csv" *> pure Csv+    dhall = string "dhall" *> pure Dhall+    mustache = string "mustache" *> pure Mustache+    sql = string "sql" *> pure Sql+    -- all three tramaj modes carry a suffix ("-json"/"-doc"/"-lib"), so none+    -- is a prefix of another and there is no ordering hazard between them+    tramajDoc = string "tramaj-doc" *> pure TramajDoc+    tramajLib = string "tramaj-lib" *> pure TramajLib+    tramajJson = string "tramaj-json" *> pure TramajJson++section :: forall ext. [ExtraSectionType ext] -> Parser (Section ext [Text])+section extras = f <$> (hdrs <?> "section-headers") <*> body+  where+    f (ty, fmt) b = Section ty fmt b++    hdrs :: Parser (SectionType ext, Format)+    hdrs = headers extras++    body :: Parser [Text]+    body = many (try emptyline <|> try contentLine)++    emptyline :: Parser Text+    emptyline = newline >> notFollowedBy hdrs >> pure ""++    contentLine :: Parser Text+    contentLine = takeWhile1P Nothing ((/=) '\n') <* newline++kebabString :: Parser Text+kebabString = takeWhile1P (Just "kebab-cased-char") isKebabChar++isKebabChar :: Token Text -> Bool+isKebabChar '-' = True+isKebabChar x = isAlphaNum x
+ src/KitchenSink/Core/Section/Payloads.hs view
@@ -0,0 +1,170 @@+{- | This module exposes the key payloads that allow to convey data to the Engine.++JSON serialization instances exist for metadata consumption on frontend/api clients.+-}+module KitchenSink.Core.Section.Payloads+where++import Data.Aeson (FromJSON, ToJSON, Value)+import Data.Aeson qualified as Aeson+import Data.Char (toLower)+import Data.List qualified as List+import Data.Time.Clock (UTCTime)+import GHC.Generics (Generic)++import KitchenSink.Prelude++data PublicationStatus+    = Public+    | Upcoming+    | Archived+    deriving (Show, Eq, Generic)+instance FromJSON PublicationStatus+instance ToJSON PublicationStatus++data BuildInfoData = BuildInfoData+    { layout :: Text+    , publicationStatus :: Maybe PublicationStatus+    , robots :: Maybe Text+    , order :: Maybe Int+    -- ^ position among the pages of a same layout (used by the documentation layout)+    , route :: Maybe Text+    -- ^ SQLPage-style request path pattern (e.g. @\"\/users\/:id\"@) that turns+    -- this article into a request-time dynamic page (@layout: \"dynamic\"@),+    -- served only when @kitchen-sink serve --dynamic@ is used+    , rowCap :: Maybe Int+    -- ^ per-page cap on the number of rows a @.sql@ dataset of this page may+    -- return (default 1000); a dynamic-page-only setting+    , blobs :: Maybe Text+    -- ^ how @BLOB@ columns of this page's @.sql@ datasets are rendered into+    -- JSON: @\"base64\"@ (the default) or @\"omit\"@; a dynamic-page-only setting+    , auth :: Maybe Text+    -- ^ access policy for a dynamic page: @\"public\"@ (the default, when+    -- absent) or @\"required\"@, enforced before any @.sql@ dataset of the+    -- page runs; a dynamic-page-only setting, see "KitchenSink.Engine.Auth"+    }+    deriving (Show, Eq, Generic)+instance FromJSON BuildInfoData+instance ToJSON BuildInfoData++type TopicName = Text++data TopicData = TopicData+    { topics :: [TopicName]+    , keywords :: [Text]+    , imageLink :: Maybe Text+    , imageAlt :: Maybe Text+    }+    deriving (Show, Eq, Generic)+instance FromJSON TopicData+instance ToJSON TopicData++topicKeywords :: TopicData -> [Text]+topicKeywords d = List.nub $ topics d <> keywords d++data PreambleData = PreambleData+    { author :: Text+    , datetxt :: Maybe Text+    , date :: Maybe UTCTime+    , updated :: Maybe UTCTime+    , title :: Text+    , faviconUrl :: Maybe Text+    , lang :: Maybe Text+    }+    deriving (Show, Eq, Generic)+instance FromJSON PreambleData+instance ToJSON PreambleData++data SocialData = SocialData+    { twitter :: Maybe Text+    , linkedin :: Maybe Text+    , github :: Maybe Text+    , mastodon :: Maybe Text+    }+    deriving (Show, Eq, Generic)+instance FromJSON SocialData+instance ToJSON SocialData++data GeneratorInstructionsData = GeneratorInstructionsData+    { cmd :: Text+    , args :: [Text]+    , stdin :: Maybe Text+    , stdin_json :: Maybe Value+    , target :: FilePath+    }+    deriving (Show, Eq, Generic)+instance FromJSON GeneratorInstructionsData+instance ToJSON GeneratorInstructionsData++data GlossaryTerm = GlossaryTerm+    { term :: Text+    , definition :: Text+    }+    deriving (Show, Eq, Generic)+instance FromJSON GlossaryTerm+instance ToJSON GlossaryTerm++data GlossaryData = GlossaryData+    { glossary :: [GlossaryTerm]+    }+    deriving (Show, Eq, Generic)+instance FromJSON GlossaryData+instance ToJSON GlossaryData++-- | An inline admonition/callout box (note, warning, tip, ...) interleaved+-- with main-content sections. `calloutKind` is a free-form string mapped to+-- a CSS class (`callout-<kind>`); unrecognized kinds fall back to a default+-- style. JSON keys drop the `callout` prefix (`kind`/`title`/`body`) since+-- the Haskell field names would otherwise clash with `PreambleData.title`.+data CalloutData = CalloutData+    { calloutKind :: Text+    , calloutTitle :: Maybe Text+    , calloutBody :: Text+    }+    deriving (Show, Eq, Generic)+instance FromJSON CalloutData where+    parseJSON = Aeson.genericParseJSON calloutJsonOptions+instance ToJSON CalloutData where+    toJSON = Aeson.genericToJSON calloutJsonOptions++calloutJsonOptions :: Aeson.Options+calloutJsonOptions = Aeson.defaultOptions{Aeson.fieldLabelModifier = calloutFieldName}++calloutFieldName :: String -> String+calloutFieldName s = case List.stripPrefix "callout" s of+    Just (c : cs) -> toLower c : cs+    _ -> s++data FaqItem = FaqItem+    { question :: Text+    , answer :: Text+    }+    deriving (Show, Eq, Generic)+instance FromJSON FaqItem+instance ToJSON FaqItem++newtype FaqData = FaqData+    { items :: [FaqItem]+    }+    deriving (Show, Eq, Generic)+instance FromJSON FaqData+instance ToJSON FaqData++-- | One column of a pricing/comparison table. `values` must line up+-- positionally with `pricingFeatures` in the enclosing 'PricingTableData'.+data PricingPlan = PricingPlan+    { name :: Text+    , price :: Text+    , values :: [Text]+    }+    deriving (Show, Eq, Generic)+instance FromJSON PricingPlan+instance ToJSON PricingPlan++data PricingTableData = PricingTableData+    { pricingFeatures :: [Text]+    , pricingPlans :: [PricingPlan]+    }+    deriving (Show, Eq, Generic)+instance FromJSON PricingTableData+instance ToJSON PricingTableData
+ src/KitchenSink/Engine.hs view
@@ -0,0 +1,94 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE OverloadedRecordDot #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE TypeApplications #-}++module KitchenSink.Engine where++import Options.Generic++import Data.Text as Text+import KitchenSink.Engine.Auth (hashPassword)+import KitchenSink.Engine.Init qualified as Init+import KitchenSink.Engine.MultiSite qualified as MultiSite+import KitchenSink.Engine.NewArticle qualified as NewArticle+import KitchenSink.Engine.Produce qualified as Produce+import KitchenSink.Engine.Serve qualified as Serve+import KitchenSink.Prelude++data Action+    = Init+        { dir :: FilePath <?> "directory to create the new site in"+        , force :: Bool <?> "overwrite if directory already exists and is non-empty"+        }+    | Produce+        { srcDir :: FilePath <?> "source directory"+        , outDir :: Maybe FilePath <?> "output directory"+        , ksFile :: Maybe FilePath <?> "kitchen-sink.json file"+        , var :: [Text] <?> "variables in --var varname=value format"+        , abortOnError :: Bool <?> "stop at the first target that fails (default: report it, produce the rest, exit non-zero)"+        }+    | Serve+        { srcDir :: FilePath <?> "source directory"+        , outDir :: Maybe FilePath <?> "output directory"+        , ksFile :: Maybe FilePath <?> "kitchen-sink.json file"+        , servMode :: Serve.ServMode <?> "SERVE|DEV"+        , var :: [Text] <?> "variables in --var varname=value format"+        , httpPort :: Maybe Int <?> "port-num"+        , httpsPort :: Maybe Int <?> "port-num"+        , tlsKeyFile :: Maybe FilePath <?> "tls-private-key"+        , tlsCertFile :: Maybe FilePath <?> "tls-certificate"+        , dynamic :: Bool <?> "opt-in to request-time dynamic pages (SQLPage-style routes/sql-datasets), see kitchen-sink.json's datasources"+        }+    | NewArticle+        { srcDir :: FilePath <?> "source directory"+        , title :: Text <?> "article title"+        , layout :: Maybe Text <?> "layout name (default: article)"+        , author :: Maybe Text <?> "author name"+        }+    | MultiSite+        { configFile :: FilePath <?> "multisite config file (JSON)"+        , var :: [Text] <?> "variables in --var varname=value format"+        , httpPort :: Maybe Int <?> "port-num"+        , httpsPort :: Maybe Int <?> "port-num"+        , tlsKeyFile :: Maybe FilePath <?> "tls-private-key"+        , tlsCertFile :: Maybe FilePath <?> "tls-certificate"+        , proxyingTimeout :: Maybe Int <?> "proxy-timeout-microsecs"+        }+    | HashPassword+        { password :: Text <?> "plaintext password to hash for kitchen-sink.json's auth.provider.users[].passwordHash (see KitchenSink.Engine.Auth)"+        }+    deriving (Generic, Show)++instance ParseRecord Action++defaultMain :: IO ()+defaultMain = do+    cmd <- getRecord "kitchen-sink"+    case cmd of+        Init a b ->+            let (a', b') = coerce (a, b)+             in Init.run (Init.Args a' b')+        Produce a b c vars d ->+            let (a', b', c', d') = coerce (a, b, c, d)+             in Produce.run (Produce.Args a' b' c' (parseVars (coerce vars)) d')+        Serve a b c d vars e f g h i ->+            let (a', b', c', d', e', f', g', h', i') = coerce (a, b, c, d, e, f, g, h, i)+             in Serve.run (Serve.Args a' b' c' d' (parseVars (coerce vars)) e' f' g' h' i')+        NewArticle a b c d ->+            let (a', b', c', d') = coerce (a, b, c, d)+             in NewArticle.run (NewArticle.Args a' b' c' d')+        MultiSite a vars b c d e f ->+            let (a', b', c', d', e', f') = coerce (a, b, c, d, e, f)+             in MultiSite.run (MultiSite.Args a' (parseVars (coerce vars)) b' c' d' e' f')+        HashPassword a -> do+            hashed <- hashPassword (coerce a)+            putStrLn (Text.unpack hashed)+  where+    parseVars :: [Text] -> [(Text, Text)]+    parseVars xs = fmap parseVar xs++    parseVar :: Text -> (Text, Text)+    parseVar txt =+        let (k, v) = Text.breakOn "=" txt+         in (k, Text.drop 1 v)
+ src/KitchenSink/Engine/Api.hs view
@@ -0,0 +1,57 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE OverloadedStrings #-}++module KitchenSink.Engine.Api where++import Data.Aeson (ToJSON)+import GHC.Generics (Generic)+import Prod.Status qualified as Prod+import Servant++import KitchenSink.Engine.Config (Command)+import KitchenSink.Engine.Track (WatchResult)+import KitchenSink.Prelude+import Prod.Proxy qualified as ProdProxy++type DevApi =+    DevWatchApi+        :<|> DevListTargetsApi+        :<|> DevProduceApi+        :<|> DevPublishApi+        :<|> DevListCommandsApi+        :<|> DevExecCommandApi+        :<|> DevForceReloadApi+        :<|> ProxyApi+        :<|> OnTheFlyProductionApi++type ServeApi =+    ProxyApi+        :<|> OnTheFlyProductionApi++type TargetPathName = Text++type DevWatchApi = "dev" :> "watch" :> QueryParam "server-id" Text :> QueryParam "pathname" TargetPathName :> Get '[JSON] (Prod.Identification, WatchResult)++type DevListTargetsApi = "dev" :> "targets" :> Get '[JSON] [Text]++newtype DevTextOutput = DevTextOutput Text+    deriving (Generic, Show)+instance ToJSON DevTextOutput++type DevProduceApi = "dev" :> "produce" :> Post '[JSON] DevTextOutput++type DevPublishApi = "dev" :> "publish" :> Post '[JSON] DevTextOutput++type DevListCommandsApi = "dev" :> "commands" :> Get '[JSON] [Command]++type DevExecCommandApi = "dev" :> "command" :> QueryParam' '[Required, Strict] "handle" Text :> Post '[JSON] DevTextOutput++data ForceReloadStatus = ForceReloaded+    deriving (Generic, Show)+instance ToJSON ForceReloadStatus++type DevForceReloadApi = "dev" :> "reload" :> Post '[JSON] (Maybe ForceReloadStatus)++type ProxyApi = "api" :> ProdProxy.Api++type OnTheFlyProductionApi = Raw
+ src/KitchenSink/Engine/Auth.hs view
@@ -0,0 +1,286 @@+{-# LANGUAGE OverloadedRecordDot #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE ScopedTypeVariables #-}++{- | Authentication and access control for request-time dynamic pages (see+"KitchenSink.Engine.Dynamic"). This is the first cut described in the+feature's design notes: a single credential source (@config@: static users+in @kitchen-sink.json@, see 'KitchenSink.Engine.Config.AuthConfig'), no+forms\/POST (out of scope -- see 'KitchenSink.Engine.Dynamic'), and no roles+beyond public\/required.++Login is HTTP Basic against the @config@ provider (no login form needed);+on success a signed, expiring session cookie is set so the browser needn't+resend @Authorization@ on every request. Both the cookie and the+@Authorization@ header are checked on every request to a @\"required\"@+route; whichever is valid wins, cookie first.++Passwords are never stored in plaintext: 'hashPassword' produces a salted+PBKDF2-HMAC-SHA256 hash (@kitchen-sink hash-password@ is the CLI front-end+for it), and 'verifyPassword' checks a candidate password against that hash+in constant time.+-}+module KitchenSink.Engine.Auth (+    -- * access policy+    AuthPolicy (..),+    parseAuthPolicy,++    -- * identity+    Identity (..),++    -- * password hashing (config provider)+    hashPassword,+    verifyPassword,++    -- * session cookies+    sessionCookieName,+    signSession,+    verifySession,+    setSessionCookieHeader,++    -- * request-side auth+    authenticateConfigProvider,+    parseBasicAuthHeader,+    identityFromRequest,+    unauthorizedResponse,+) where++import Crypto.Hash.Algorithms (SHA256 (..))+import Crypto.KDF.PBKDF2 qualified as PBKDF2+import Crypto.MAC.HMAC qualified as HMAC+import Crypto.Random.Entropy (getEntropy)+import Data.ByteArray qualified as ByteArray+import Data.ByteString (ByteString)+import Data.ByteString qualified as BS+import Data.ByteString.Base64 qualified as Base64+import Data.ByteString.Base64.URL qualified as Base64URL+import Data.List qualified as List+import Data.Text qualified as Text+import Data.Text.Encoding qualified as Text+import Data.Time.Clock.POSIX (getPOSIXTime)+import Network.HTTP.Types (Header, status401)+import Network.Wai (Request)+import Network.Wai qualified as Wai+import Prelude (Integer, reads, round, (+), (>=))++import KitchenSink.Engine.Config (AuthConfig (..), AuthProviderConfig (..), AuthUser (..))+import KitchenSink.Prelude++-- | A dynamic page's access policy, from @=base:build-info.json@'s @auth@+-- field. Absent or unrecognized values fall back to 'Public', same+-- forward-compatible convention as an unknown @layout@ elsewhere in this+-- codebase.+data AuthPolicy = Public | Required+    deriving (Show, Eq)++parseAuthPolicy :: Maybe Text -> AuthPolicy+parseAuthPolicy (Just "required") = Required+parseAuthPolicy _ = Public++-- | The authenticated caller of a dynamic-page request. Only a username+-- today (the @config@ provider has no other attributes); exposed to+-- templates as @$ctx.request.user@ and bound as @:user_id@ in @.sql@+-- datasets (see "KitchenSink.Engine.Dynamic").+newtype Identity = Identity {identityUsername :: Text}+    deriving (Show, Eq)++--------------------------------------------------------------------------------+-- password hashing++pbkdf2Iterations :: Int+pbkdf2Iterations = 210000++pbkdf2KeyLength :: Int+pbkdf2KeyLength = 32++saltLength :: Int+saltLength = 16++-- | Salts and hashes a plaintext password for storage as an 'AuthUser's+-- @passwordHash@ (@kitchen-sink hash-password@ is the CLI front-end).+-- Never store the argument itself.+hashPassword :: Text -> IO Text+hashPassword password = do+    salt <- getEntropy saltLength :: IO ByteString+    pure (encodeHash pbkdf2Iterations salt (derive pbkdf2Iterations salt password))++-- | Checks a candidate password against a hash produced by 'hashPassword'.+-- A malformed hash (e.g. hand-edited config) never matches, rather than+-- erroring.+verifyPassword :: Text -> Text -> Bool+verifyPassword password storedHash = case decodeHash storedHash of+    Nothing -> False+    Just (iters, salt, expected) ->+        ByteArray.constEq expected (derive iters salt password)++derive :: Int -> ByteString -> Text -> ByteString+derive iters salt password =+    PBKDF2.generate+        (PBKDF2.prfHMAC SHA256)+        (PBKDF2.Parameters iters pbkdf2KeyLength)+        (Text.encodeUtf8 password)+        salt++encodeHash :: Int -> ByteString -> ByteString -> Text+encodeHash iters salt digest =+    Text.intercalate+        "$"+        [ "pbkdf2-sha256"+        , Text.pack (show iters)+        , Text.decodeUtf8 (Base64.encode salt)+        , Text.decodeUtf8 (Base64.encode digest)+        ]++decodeHash :: Text -> Maybe (Int, ByteString, ByteString)+decodeHash t = case Text.splitOn "$" t of+    ["pbkdf2-sha256", itersTxt, saltTxt, digestTxt] -> do+        iters <- readMaybeInt itersTxt+        salt <- hush (Base64.decode (Text.encodeUtf8 saltTxt))+        digest <- hush (Base64.decode (Text.encodeUtf8 digestTxt))+        pure (iters, salt, digest)+    _ -> Nothing++readMaybeInt :: Text -> Maybe Int+readMaybeInt t = case [n | (n, "") <- reads (Text.unpack t)] of+    [n] -> Just n+    _ -> Nothing++--------------------------------------------------------------------------------+-- session cookies++sessionCookieName :: ByteString+sessionCookieName = "ks_session"++-- | How long a session cookie is valid for, in seconds, once minted.+sessionLifetimeSeconds :: Integer+sessionLifetimeSeconds = 86400 -- 24h++-- | Signs a session identifying @username@, expiring+-- 'sessionLifetimeSeconds' from now. The cookie value is+-- @base64url(payload).base64url(hmac-sha256(secret, payload))@, where+-- @payload@ is @username|expiryEpochSeconds@.+signSession :: Text -> Text -> IO Text+signSession secret username = do+    now <- round <$> getPOSIXTime :: IO Integer+    let expiry = now + sessionLifetimeSeconds+    let payload = Text.encodeUtf8 (username <> "|" <> Text.pack (show expiry))+    pure (encodeSession secret payload)++encodeSession :: Text -> ByteString -> Text+encodeSession secret payload =+    let sig = ByteArray.convert (HMAC.hmac (Text.encodeUtf8 secret) payload :: HMAC.HMAC SHA256) :: ByteString+     in Text.decodeUtf8 (Base64URL.encodeUnpadded payload) <> "." <> Text.decodeUtf8 (Base64URL.encodeUnpadded sig)++-- | Verifies a session cookie value against 'secret', returning the+-- 'Identity' iff the signature checks out (constant time) and it hasn't+-- expired.+verifySession :: Text -> Text -> IO (Maybe Identity)+verifySession secret cookieValue = case Text.splitOn "." cookieValue of+    [payloadTxt, sigTxt] -> case (hush (Base64URL.decodeUnpadded (Text.encodeUtf8 payloadTxt)), hush (Base64URL.decodeUnpadded (Text.encodeUtf8 sigTxt))) of+        (Just payload, Just sig) -> do+            let expectedSig = ByteArray.convert (HMAC.hmac (Text.encodeUtf8 secret) payload :: HMAC.HMAC SHA256) :: ByteString+            if ByteArray.constEq sig expectedSig+                then do+                    now <- round <$> getPOSIXTime :: IO Integer+                    pure (checkExpiry now payload)+                else pure Nothing+        _ -> pure Nothing+    _ -> pure Nothing++checkExpiry :: Integer -> ByteString -> Maybe Identity+checkExpiry now payload = case Text.splitOn "|" (Text.decodeUtf8 payload) of+    [username, expiryTxt] -> do+        expiry <- readMaybeInteger expiryTxt+        if expiry >= now then Just (Identity username) else Nothing+    _ -> Nothing+  where+    readMaybeInteger :: Text -> Maybe Integer+    readMaybeInteger t = case [n | (n, "") <- reads (Text.unpack t)] of+        [n] -> Just n+        _ -> Nothing++-- | @Set-Cookie@ header for a freshly-minted session. @HttpOnly@ and+-- @SameSite=Strict@ always; @Secure@ iff the request that triggered the+-- login was itself HTTPS (never on a plain-HTTP dev server, since a+-- browser silently drops a @Secure@ cookie set over plain HTTP anyway, and+-- forcing it in dev would make login look broken).+setSessionCookieHeader :: Bool -> Text -> Header+setSessionCookieHeader secure signedValue =+    ( "Set-Cookie"+    , Text.encodeUtf8 $+        Text.decodeUtf8 sessionCookieName+            <> "="+            <> signedValue+            <> "; Path=/; HttpOnly; SameSite=Strict; Max-Age="+            <> Text.pack (show sessionLifetimeSeconds)+            <> (if secure then "; Secure" else "")+    )++--------------------------------------------------------------------------------+-- config provider++-- | Checks a username\/password pair against the @config@ provider's user+-- list.+authenticateConfigProvider :: AuthProviderConfig -> Text -> Text -> Maybe Identity+authenticateConfigProvider (ConfigProvider us) user pass =+    case List.find (\u -> u.username == user) us of+        Just u | verifyPassword pass u.passwordHash -> Just (Identity user)+        _ -> Nothing++-- | Parses an @Authorization: Basic <base64(user:pass)>@ header value.+parseBasicAuthHeader :: ByteString -> Maybe (Text, Text)+parseBasicAuthHeader h = do+    rest <- BS.stripPrefix "Basic " h+    decoded <- hush (Base64.decode rest)+    let (userBs, rest') = BS.break (== 58 {- ':' -}) decoded+    passBs <- BS.stripPrefix ":" rest'+    pure (Text.decodeUtf8 userBs, Text.decodeUtf8 passBs)++-- | Tries the session cookie first, then the @Authorization@ header,+-- against the given 'AuthConfig'. The second result is 'Just' a fresh+-- signed session cookie iff identity came from a freshly-presented Basic+-- credential (so the caller can set it on the response) -- 'Nothing' when+-- identity came from an already-valid cookie (nothing to refresh) or there+-- is no identity at all.+identityFromRequest :: AuthConfig -> Request -> IO (Maybe Identity, Maybe Text)+identityFromRequest cfg req = case cookieValue of+    Just v -> do+        mIdent <- verifySession cfg.cookieSecret v+        case mIdent of+            Just ident -> pure (Just ident, Nothing)+            Nothing -> viaBasic+    Nothing -> viaBasic+  where+    viaBasic = case List.lookup "Authorization" (Wai.requestHeaders req) >>= parseBasicAuthHeader of+        Just (user, pass) -> case authenticateConfigProvider cfg.provider user pass of+            Just ident@(Identity username) -> do+                signed <- signSession cfg.cookieSecret username+                pure (Just ident, Just signed)+            Nothing -> pure (Nothing, Nothing)+        Nothing -> pure (Nothing, Nothing)++    cookieValue :: Maybe Text+    cookieValue = do+        raw <- List.lookup "Cookie" (Wai.requestHeaders req)+        List.lookup sessionCookieName (parseCookieHeader raw)++parseCookieHeader :: ByteString -> [(ByteString, Text)]+parseCookieHeader raw =+    [ (k, Text.decodeUtf8 (BS.drop 1 v))+    | kv <- BS.split 59 {- ';' -} raw+    , let trimmed = BS.dropWhile (== 32 {- ' ' -}) kv+    , let (k, v) = BS.break (== 61 {- '=' -}) trimmed+    , not (BS.null v)+    ]++-- | 401 response with a @WWW-Authenticate: Basic@ challenge, for a+-- @\"required\"@ route with no (or invalid) credentials.+unauthorizedResponse :: Wai.Response+unauthorizedResponse =+    Wai.responseLBS+        status401+        [challenge, ("content-type", "text/plain; charset=utf-8")]+        "authentication required"+  where+    challenge :: Header+    challenge = ("WWW-Authenticate", "Basic realm=\"kitchen-sink\", charset=\"UTF-8\"")
+ src/KitchenSink/Engine/Config.hs view
@@ -0,0 +1,125 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE OverloadedStrings #-}++module KitchenSink.Engine.Config where++import Data.Aeson (FromJSON, ToJSON)+import Data.Map (Map)+import GHC.Generics (Generic)++import KitchenSink.Prelude++data Command = Command+    { exe :: FilePath+    , display :: Text+    , handle :: Text+    }+    deriving (Generic, Show)+instance FromJSON Command+instance ToJSON Command++type HostName = Text+type PortNum = Int+type Prefix = Text++data TransportSecurity+    = UseHTTPS+    | UsePlainText+    deriving (Eq, Generic, Show)+instance FromJSON TransportSecurity+instance ToJSON TransportSecurity++data RewriteRule+    = NoRewrite+    | DropPrefix+    | RewritePrefix Prefix+    | RewritePrefixHost Prefix HostName+    deriving (Eq, Generic, Show)+instance FromJSON RewriteRule+instance ToJSON RewriteRule++data SlashApiProxyDirective+    = SlashApiProxyDirective+    { security :: TransportSecurity+    , prefix :: Prefix+    , rewrite :: RewriteRule+    , hostname :: HostName+    , portnum :: PortNum+    }+    deriving (Generic, Show)+instance FromJSON SlashApiProxyDirective+instance ToJSON SlashApiProxyDirective++data ApiProxyConfig+    = NoProxying+    | SlashApiProxy HostName PortNum+    | SlashApiProxyList [SlashApiProxyDirective]+    deriving (Generic, Show)+instance FromJSON ApiProxyConfig+instance ToJSON ApiProxyConfig++{- | One entry of the @datasources@ object of @kitchen-sink.json@: for now,+the only backend is a read-only sqlite file, bound as @sqlite@; a page's+@.sql@ datasets all query the datasource named @\"main\"@ (see+"KitchenSink.Engine.Dynamic" -- per-dataset datasource selection is not+implemented yet).+-}+newtype DatasourceConfig = DatasourceConfig+    { sqlite :: FilePath+    }+    deriving (Generic, Show)+instance FromJSON DatasourceConfig+instance ToJSON DatasourceConfig++{- | One statically-configured user of the @config@ auth provider.+@passwordHash@ must be a hash produced by+"KitchenSink.Engine.Auth" (@kitchen-sink hash-password@) -- never a plaintext+password.+-}+data AuthUser = AuthUser+    { username :: Text+    , passwordHash :: Text+    }+    deriving (Generic, Show)+instance FromJSON AuthUser+instance ToJSON AuthUser++{- | Where an @auth@ section's credentials come from. One constructor today+(@config@: a static user list right in @kitchen-sink.json@); a later source+(a sqlite users table, a trusted reverse-proxy header) is a new constructor+here, not a rewrite of the callers -- see "KitchenSink.Engine.Auth".+-}+newtype AuthProviderConfig+    = ConfigProvider {users :: [AuthUser]}+    deriving (Generic, Show)+instance FromJSON AuthProviderConfig+instance ToJSON AuthProviderConfig++{- | The @auth@ stanza of @kitchen-sink.json@: enables authentication for+dynamic pages whose @=base:build-info.json@ declares @"auth":"required"@+(see "KitchenSink.Engine.Dynamic" and "KitchenSink.Engine.Auth").+@cookieSecret@ signs the session cookie; keep it out of the served tree+(i.e. only in @kitchen-sink.json@, which is excluded from raw site files by+"KitchenSink.Engine.SiteLoader").+-}+data AuthConfig = AuthConfig+    { provider :: AuthProviderConfig+    , cookieSecret :: Text+    }+    deriving (Generic, Show)+instance FromJSON AuthConfig+instance ToJSON AuthConfig++data Config = Config+    { publishScript :: Maybe FilePath+    , commands :: [Command]+    , api :: ApiProxyConfig+    , datasources :: Maybe (Map Text DatasourceConfig)+    -- ^ request-time dynamic pages (@kitchen-sink serve --dynamic@); see+    -- "KitchenSink.Engine.Dynamic"+    , auth :: Maybe AuthConfig+    -- ^ authentication for dynamic pages; see "KitchenSink.Engine.Auth"+    }+    deriving (Generic, Show)+instance FromJSON Config+instance ToJSON Config
+ src/KitchenSink/Engine/Counters.hs view
@@ -0,0 +1,79 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE OverloadedStrings #-}++module KitchenSink.Engine.Counters (Counters (..), initCounters, timeItWithLabel) where++import Control.Monad.IO.Class (liftIO)+import Data.Time.Clock (diffUTCTime, getCurrentTime)+import GHC.Real (fromRational, toRational)+import Prometheus qualified as Prometheus++import KitchenSink.Prelude++data Counters+    = Counters+    { time_singlebuild :: Prometheus.Vector Text Prometheus.Summary+    , time_fullbuild :: Prometheus.Summary+    , time_publishing :: Prometheus.Summary+    , time_ontheflybuild :: Prometheus.Vector Text Prometheus.Summary+    , cnt_reloads :: Prometheus.Counter+    , cnt_watches :: Prometheus.Vector Text Prometheus.Counter+    , cnt_rebuilds :: Prometheus.Counter+    , cnt_publishs :: Prometheus.Counter+    , cnt_targetRequests :: Prometheus.Vector (Text, Text) Prometheus.Counter+    , cnt_targetSizes :: Prometheus.Vector (Text) Prometheus.Gauge+    , cnt_sources :: Prometheus.Gauge+    , cnt_forceReloads :: Prometheus.Counter+    , cnt_commands :: Prometheus.Vector Text Prometheus.Counter+    }+initCounters :: IO Counters+initCounters =+    Counters+        <$> reg1s "ks_single_build_time" "path" "time spent building single targets on disk"+        <*> reg0s "ks_fullbuild_time" "time spent building targets on disk"+        <*> reg0s "ks_publish_time" "time spent publishing"+        <*> reg1s "ks_ontheflybuild_time" "path" "time spent building targets on disk"+        <*> reg0 "ks_reloads" "number of time the site is reloaded"+        <*> reg1 "ks_watches" "status" "number of watches created"+        <*> reg0 "ks_rebuilds" "number of time the output has been rebuilt"+        <*> reg0 "ks_publishes" "number of time the site has been published"+        <*> reg1 "ks_targets_requests" ("status", "path") "number of queries per blog target"+        <*> reg1g "ks_targets_sizes" ("path") "sizes of targets in bytes"+        <*> reg0g "ks_targets_number" "number of targets"+        <*> reg0 "ks_forceReloads" "number of time the site has been reloaded upon user request"+        <*> reg1 "ks_commands" "status" "number of command ran"+  where+    reg0 k h =+        Prometheus.register+            $ Prometheus.counter (Prometheus.Info k h)+    reg0g k h =+        Prometheus.register+            $ Prometheus.gauge (Prometheus.Info k h)+    reg1 k t h =+        Prometheus.register+            $ Prometheus.vector t+            $ Prometheus.counter (Prometheus.Info k h)+    reg1g k t h =+        Prometheus.register+            $ Prometheus.vector t+            $ Prometheus.gauge (Prometheus.Info k h)+    reg0s k h =+        Prometheus.register+            $ Prometheus.summary (Prometheus.Info k h) Prometheus.defaultQuantiles+    reg1s k t h =+        Prometheus.register+            $ Prometheus.vector t+            $ Prometheus.summary (Prometheus.Info k h) Prometheus.defaultQuantiles++timeItWithLabel ::+    (Prometheus.Label label, Prometheus.Observer metric) =>+    Prometheus.Vector label metric ->+    label ->+    IO b ->+    IO b+timeItWithLabel cnt lbl action = do+    t0 <- liftIO $ getCurrentTime+    !ret <- action+    t1 <- liftIO $ getCurrentTime+    Prometheus.withLabel cnt lbl $ flip Prometheus.observe (fromRational $ toRational $ diffUTCTime t1 t0)+    pure ret
+ src/KitchenSink/Engine/Diagnostics.hs view
@@ -0,0 +1,34 @@+{-# LANGUAGE OverloadedRecordDot #-}+{-# LANGUAGE OverloadedStrings #-}++module KitchenSink.Engine.Diagnostics (+    reportDiagnostics,+    hasFailures,+) where++import Data.Foldable (any)+import Data.Text qualified as Text+import System.IO (hPutStrLn, stderr)++import KitchenSink.Core.Build.Target (SourceLocation (..))+import KitchenSink.Layout.Base (Diagnostic (..), Severity (..))+import KitchenSink.Prelude++-- | One line per diagnostic on stderr, @path: warning: message@.+reportDiagnostics :: [Diagnostic] -> IO ()+reportDiagnostics = traverse_ (hPutStrLn stderr . render)+  where+    render :: Diagnostic -> String+    render d =+        mconcat+            [ case d.source of FileSource path -> path+            , ": "+            , case d.severity of+                Warning -> "warning"+                Failure -> "error"+            , ": "+            , Text.unpack d.message+            ]++hasFailures :: [Diagnostic] -> Bool+hasFailures = any ((== Failure) . (.severity))
+ src/KitchenSink/Engine/Dynamic.hs view
@@ -0,0 +1,371 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE OverloadedRecordDot #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE ScopedTypeVariables #-}++{- | Request-time dynamic pages, SQLPage-style: an article whose+@=base:build-info.json@ declares a @route@ (e.g. @{"layout":"dynamic","route":"/users/:id"}@)+is served per-request instead of statically. Its @.sql@ datasets+(@=base:dataset.sql name@) run against a read-only sqlite datasource for+every request, and its @main-content@ (a @.tramaj-doc@ section) is evaluated+per-request against a context extended with @$ctx.request@+(@method@\/@path@\/@params@\/@query@\/@form@\/@cookies@\/@user@).++Both are left unevaluated at load time by "KitchenSink.Engine.SiteLoader"+(see @KitchenSink.Engine.SiteLoader.isDynamicArticle@); this module does the+per-request evaluation.++This is opt-in (@kitchen-sink serve --dynamic@) and, in this first cut,+scoped to what the feature's design notes called out as an acceptable+subset: GET-only (no forms\/POST\/redirects), a single datasource named+@\"main\"@ (no per-dataset datasource selection), and no postgres -- all+recorded as deferred follow-ups, not silently missing.++A page's build-info may set @\"auth\":\"required\"@ to require a caller+identity before any dataset runs (default, and any other value, is+@\"public\"@) -- see "KitchenSink.Engine.Auth" for how identity is+established (HTTP Basic against the @config@ credential provider, backed by+a signed session cookie) and 'DynamicOptions' for how it is wired in from+@kitchen-sink.json@'s @auth@ stanza.+-}+module KitchenSink.Engine.Dynamic (+    DynamicOptions (..),+    noDynamicOptions,+    dynamicOptionsFromConfig,+    dynamicMiddleware,++    -- * exposed for testing/inspection+    DynamicPage (..),+    RouteSegment (..),+    BlobMode (..),+    parseRoute,+    matchRoute,+    extractDynamicPage,+    findDynamicPages,+) where++import Control.Exception (SomeException, bracket, throwIO, try)+import Data.Aeson (Value)+import Data.Aeson qualified as Aeson+import Data.Aeson.Key qualified as Key+import Data.Aeson.KeyMap qualified as KeyMap+import Data.ByteString.Base64 qualified as Base64+import Data.ByteString.Lazy qualified as LByteString+import Data.Int (Int64)+import Data.List qualified as List+import Data.Map.Strict (Map)+import Data.Map.Strict qualified as Map+import Data.Maybe (isNothing)+import Data.Text qualified as Text+import Data.Text.Encoding qualified as Text+import Database.SQLite3 (ColumnIndex (..), Database, ParamIndex (..), SQLData (..), SQLOpenFlag (..), SQLVFS (..), Statement, StepResult (..))+import Database.SQLite3 qualified as SQLite3+import Network.HTTP.Types (status200, status500)+import Network.Wai qualified as Wai+import Prelude (Double, id, negate, (&&), (+), (-), (<), (>), (>=), (||))++import KitchenSink.Core.Assembler (runAssembler)+import KitchenSink.Core.Assembler.Sections.Json (json)+import KitchenSink.Core.Assembler.Sections.Primitives (getSection, getSections, isBuildInfo, isDataset, isMainContent)+import KitchenSink.Core.Build.Site (Article, Site (..))+import KitchenSink.Core.Build.Target (SourceLocation (..), Sourced (..))+import KitchenSink.Core.Section (BuildInfoData (..), Format (..), Section (..), SectionType (Dataset))+import KitchenSink.Core.Section.Parser (extract)+import KitchenSink.Engine.Auth (AuthPolicy (..), Identity (..), identityFromRequest, parseAuthPolicy, setSessionCookieHeader, unauthorizedResponse)+import KitchenSink.Engine.Config (AuthConfig, Config (..), DatasourceConfig (..))+import KitchenSink.Engine.Templating qualified as Templating+import KitchenSink.Prelude++-- | A route pattern segment: a literal path component, or a @:name@ capture.+data RouteSegment+    = Literal Text+    | Param Text+    deriving (Show, Eq)++-- | How a page's @.sql@ dataset(s) render @BLOB@ columns to JSON.+data BlobMode = BlobBase64 | BlobOmit+    deriving (Show, Eq)++parseBlobMode :: Maybe Text -> BlobMode+parseBlobMode (Just "omit") = BlobOmit+parseBlobMode _ = BlobBase64++defaultRowCap :: Int+defaultRowCap = 1000++-- | Splits a route pattern (@\"\/users\/:id\"@) into matchable segments.+parseRoute :: Text -> [RouteSegment]+parseRoute r = fmap toSeg $ List.filter (not . Text.null) $ Text.splitOn "/" r+  where+    toSeg s+        | Text.isPrefixOf ":" s = Param (Text.drop 1 s)+        | otherwise = Literal s++-- | Matches a parsed route against a request's path segments (as WAI's+-- 'Network.Wai.pathInfo' gives them, already url-decoded). 'Nothing' when+-- the segment count differs or a literal segment doesn't match exactly.+matchRoute :: [RouteSegment] -> [Text] -> Maybe (Map Text Text)+matchRoute pat segs+    | List.length pat /= List.length segs = Nothing+    | List.all literalOk paired = Just (Map.fromList [(name, s) | (Param name, s) <- paired])+    | otherwise = Nothing+  where+    paired = List.zip pat segs+    literalOk (Literal l, s) = l == s+    literalOk (Param _, _) = True++-- | A dynamic page, extracted once per request from its (already-loaded but+-- deliberately unevaluated) 'Article'.+data DynamicPage = DynamicPage+    { dynRoute :: [RouteSegment]+    , dynRowCap :: Int+    , dynBlobMode :: BlobMode+    , dynAuthPolicy :: AuthPolicy+    , dynDatasets :: [(Name, Text)]+    -- ^ dataset name, raw (unevaluated) SQL source+    , dynMainContent :: Text+    -- ^ raw (unevaluated) tramaj-doc source+    , dynSourcePath :: FilePath+    }++-- | Reads a 'DynamicPage' out of an article, iff its build-info declares a+-- @route@. 'Nothing' both for an ordinary article and for a malformed+-- dynamic one (unreadable build-info, or no tramaj-doc main-content section)+-- -- the latter simply never matches any request, same as an unknown layout+-- name elsewhere in this codebase falls back rather than crashing the+-- server.+extractDynamicPage :: forall ext. (Eq ext) => FilePath -> Article ext [Text] -> Maybe DynamicPage+extractDynamicPage path art = do+    binfo <- hush $ runAssembler (extract <$> json @ext @BuildInfoData art isBuildInfo)+    r <- route binfo+    mainSec <- hush $ runAssembler (getSection art isMainContent)+    mainBody <- case mainSec of+        Section _ TramajDoc body -> Just (Text.unlines body)+        _ -> Nothing+    let datasetSecs = either (const []) id $ runAssembler (getSections art isDataset)+    let sqlDatasets =+            [ (name, Text.unlines body)+            | Section (Dataset name) Sql body <- datasetSecs+            ]+    pure+        DynamicPage+            { dynRoute = parseRoute r+            , dynRowCap = maybe defaultRowCap id (rowCap binfo)+            , dynBlobMode = parseBlobMode (blobs binfo)+            , dynAuthPolicy = parseAuthPolicy binfo.auth+            , dynDatasets = sqlDatasets+            , dynMainContent = mainBody+            , dynSourcePath = path+            }++-- | Every dynamic page in a site.+findDynamicPages :: (Eq ext) => Site ext -> [DynamicPage]+findDynamicPages site =+    [ pg+    | Sourced (FileSource path) art <- site.articles+    , Just pg <- [extractDynamicPage path art]+    ]++data DynamicOptions = DynamicOptions+    { dynEnabled :: Bool+    , dynDatasources :: Map Text DatasourceConfig+    , dynAuth :: Maybe AuthConfig+    }++noDynamicOptions :: DynamicOptions+noDynamicOptions = DynamicOptions False Map.empty Nothing++dynamicOptionsFromConfig :: Bool -> Config -> DynamicOptions+dynamicOptionsFromConfig enabled cfg =+    DynamicOptions enabled (maybe Map.empty id cfg.datasources) cfg.auth++{- | Tries every dynamic route (GET only, in this first cut) before falling+back to @app@ (the site's ordinary on-the-fly production). Disabled+entirely -- falls straight to @app@ -- unless 'dynEnabled'.+-}+dynamicMiddleware :: (Eq ext) => DynamicOptions -> IO (Site ext) -> Wai.Application -> Wai.Application+dynamicMiddleware opts readSite fallback req resp+    | not (dynEnabled opts) = fallback req resp+    | Wai.requestMethod req /= "GET" = fallback req resp+    | otherwise = do+        site <- readSite+        case lookupDynamicPage site (Wai.pathInfo req) of+            Nothing -> fallback req resp+            Just (pg, params) -> case Map.lookup "main" (dynDatasources opts) of+                Nothing -> resp $ Wai.responseLBS status500 [("content-type", "text/plain")] "dynamic page requested but no \"main\" datasource is configured (kitchen-sink.json: datasources.main.sqlite)"+                Just dsCfg -> case (dynAuthPolicy pg, dynAuth opts) of+                    (Required, Nothing) ->+                        resp $ Wai.responseLBS status500 [("content-type", "text/plain")] "dynamic page requires auth (\"auth\":\"required\") but kitchen-sink.json has no \"auth\" stanza configured"+                    (policy, mAuthCfg) -> do+                        (mIdent, mFreshCookie) <- case mAuthCfg of+                            Just authCfg -> identityFromRequest authCfg req+                            Nothing -> pure (Nothing, Nothing)+                        if policy == Required && isNothing mIdent+                            then resp unauthorizedResponse+                            else do+                                response <- respondDynamic dsCfg pg params mIdent req+                                resp (attachFreshCookie (Wai.isSecure req) mFreshCookie response)++-- | Adds a @Set-Cookie@ header for a freshly-minted session (see+-- 'KitchenSink.Engine.Auth.identityFromRequest') onto an otherwise-finished+-- response; a no-op when identity came from an already-valid cookie or+-- there is no identity at all.+attachFreshCookie :: Bool -> Maybe Text -> Wai.Response -> Wai.Response+attachFreshCookie _ Nothing response = response+attachFreshCookie secure (Just signedValue) response =+    Wai.mapResponseHeaders (setSessionCookieHeader secure signedValue :) response++lookupDynamicPage :: (Eq ext) => Site ext -> [Text] -> Maybe (DynamicPage, Map Text Text)+lookupDynamicPage site segs =+    List.foldr (\pg acc -> maybe acc (\ps -> Just (pg, ps)) (matchRoute (dynRoute pg) segs)) Nothing (findDynamicPages site)++newtype DynamicPageError = DynamicPageError Text+    deriving (Show)+instance Exception DynamicPageError++respondDynamic :: DatasourceConfig -> DynamicPage -> Map Text Text -> Maybe Identity -> Wai.Request -> IO Wai.Response+respondDynamic dsCfg pg routeParams mIdent req = do+    outcome <- try (renderDynamicPage dsCfg pg routeParams mIdent req)+    pure $ case outcome of+        Right html ->+            Wai.responseLBS status200 [("content-type", "text/html; charset=utf-8")] (LByteString.fromStrict $ Text.encodeUtf8 html)+        Left (e :: SomeException) ->+            Wai.responseLBS status500 [("content-type", "text/plain; charset=utf-8")] (LByteString.fromStrict $ Text.encodeUtf8 $ "dynamic page error: " <> Text.pack (show e))++renderDynamicPage :: DatasourceConfig -> DynamicPage -> Map Text Text -> Maybe Identity -> Wai.Request -> IO Text+renderDynamicPage dsCfg pg routeParams mIdent req =+    bracket (openReadOnly (sqlite dsCfg)) SQLite3.close $ \db -> do+        let bindings = maybe id (\(Identity u) -> Map.insert "user_id" u) mIdent (Map.union routeParams (queryMap req))+        datasetPairs <-+            traverse+                (\(name, sqlText) -> (,) name <$> runDataset db (dynRowCap pg) (dynBlobMode pg) bindings sqlText)+                (dynDatasets pg)+        let datasetsMap = Map.fromList datasetPairs+        let reqCtx = requestContext req routeParams mIdent+        let ctx0 = Templating.buildContext (dynSourcePath pg) 0 "" [] datasetsMap+        let ctx = withRequestContext reqCtx ctx0+        case Templating.evalDocSection Map.empty ctx (dynMainContent pg) of+            Left err -> throwIO $ DynamicPageError (Text.pack (show err))+            Right (_, html) -> pure html++withRequestContext :: Value -> Value -> Value+withRequestContext reqVal (Aeson.Object obj) = Aeson.Object (KeyMap.insert "request" reqVal obj)+withRequestContext _ other = other++requestContext :: Wai.Request -> Map Text Text -> Maybe Identity -> Value+requestContext req params mIdent =+    Aeson.object+        [ ("method", Aeson.toJSON (Text.decodeUtf8 (Wai.requestMethod req)))+        , ("path", Aeson.toJSON (Text.decodeUtf8 (Wai.rawPathInfo req)))+        , ("params", Aeson.toJSON params)+        , ("query", Aeson.toJSON (queryMap req))+        , ("form", Aeson.object []) -- GET-only in this first cut; see module docs+        , ("cookies", Aeson.toJSON (cookieMap req))+        , ("user", maybe Aeson.Null (\(Identity u) -> Aeson.toJSON u) mIdent)+        ]++queryMap :: Wai.Request -> Map Text Text+queryMap req =+    Map.fromList+        [ (Text.decodeUtf8 k, maybe "" Text.decodeUtf8 v)+        | (k, v) <- Wai.queryString req+        ]++cookieMap :: Wai.Request -> Map Text Text+cookieMap req =+    case List.lookup "Cookie" (Wai.requestHeaders req) of+        Nothing -> Map.empty+        Just raw -> Map.fromList $ fmap parseOne $ List.filter (not . Text.null) $ fmap Text.strip $ Text.splitOn ";" (Text.decodeUtf8 raw)+  where+    parseOne kv = let (k, v) = Text.breakOn "=" kv in (k, Text.drop 1 v)++-- | Opens the datasource read-only, with a busy-timeout so a concurrent+-- write from outside kitchen-sink doesn't hang a request forever. Never+-- attempts to set @journal_mode=WAL@: that requires a writable connection,+-- and kitchen-sink never writes to a datasource (bring-your-own db; see the+-- module docs and the feature's design notes). Put the datasource in WAL+-- mode yourself, e.g. from whatever writes to it.+openReadOnly :: FilePath -> IO Database+openReadOnly path = do+    db <- SQLite3.open2 (Text.pack path) [SQLOpenReadOnly] SQLVFSDefault+    SQLite3.exec db "PRAGMA busy_timeout=5000;"+    pure db++-- | Runs one @.sql@ dataset's query, binding every named parameter the+-- query actually references from the (route params ++ query string) map --+-- an unmatched name binds NULL rather than erroring, and a bound value the+-- query never references is silently unused. A statement that isn't a+-- SELECT (e.g. an INSERT) still runs against a read-only connection, so+-- sqlite itself rejects it at `step` time: the caught exception surfaces as+-- the page's error, with no partial HTML written.+runDataset :: Database -> Int -> BlobMode -> Map Text Text -> Text -> IO Value+runDataset db rowCapN blobMode bindings sqlText =+    -- 'bracket', not a plain prepare/finalize pair: a write attempt against+    -- the read-only connection throws mid-'step' (see 'collectRows'), and an+    -- unfinalized statement left dangling on that path would in turn make+    -- the outer connection's own 'SQLite3.close' fail -- masking the real+    -- error behind an unrelated "unfinalized statements" one.+    bracket (SQLite3.prepare db sqlText) SQLite3.finalize $ \stmt -> do+        bindNamedFromMap stmt bindings+        rows <- collectRows stmt rowCapN blobMode+        pure (Aeson.toJSON rows)++bindNamedFromMap :: Statement -> Map Text Text -> IO ()+bindNamedFromMap stmt bindings = do+    ParamIndex n <- SQLite3.bindParameterCount stmt+    traverse_ bindOne [1 .. n]+  where+    bindOne i = do+        mName <- SQLite3.bindParameterName stmt (ParamIndex i)+        case mName >>= stripSigil of+            Just key -> case Map.lookup key bindings of+                Just v -> SQLite3.bindText stmt (ParamIndex i) v+                Nothing -> SQLite3.bindNull stmt (ParamIndex i)+            Nothing -> SQLite3.bindNull stmt (ParamIndex i)++stripSigil :: Text -> Maybe Text+stripSigil t = case Text.uncons t of+    Just (c, rest) | c == ':' || c == '@' || c == '$' -> Just rest+    _ -> Nothing++collectRows :: Statement -> Int -> BlobMode -> IO [Value]+collectRows stmt cap blobMode = go 0+  where+    go n+        | n >= cap = pure []+        | otherwise = do+            r <- SQLite3.step stmt+            case r of+                Done -> pure []+                Row -> do+                    v <- rowValue stmt blobMode+                    (v :) <$> go (n + 1)++rowValue :: Statement -> BlobMode -> IO Value+rowValue stmt blobMode = do+    ColumnIndex count <- SQLite3.columnCount stmt+    let idxs = [ColumnIndex i | i <- [0 .. count - 1]]+    pairs <- traverse (\i -> (,) <$> columnKey stmt i <*> (sqlDataToJson blobMode <$> SQLite3.column stmt i)) idxs+    pure $ Aeson.Object $ KeyMap.fromList [(Key.fromText k, v) | (k, v) <- pairs]++columnKey :: Statement -> ColumnIndex -> IO Text+columnKey stmt i = maybe (Text.pack (show i)) id <$> SQLite3.columnName stmt i++sqlDataToJson :: BlobMode -> SQLData -> Value+sqlDataToJson _ (SQLInteger i) = integerJson i+sqlDataToJson _ (SQLFloat d) = Aeson.toJSON (d :: Double)+sqlDataToJson _ (SQLText t) = Aeson.toJSON t+sqlDataToJson BlobBase64 (SQLBlob b) = Aeson.toJSON (Text.decodeUtf8 (Base64.encode b) :: Text)+sqlDataToJson BlobOmit (SQLBlob _) = Aeson.Null+sqlDataToJson _ SQLNull = Aeson.Null++-- | Integers beyond 2^53 lose precision once round-tripped through a JS (or+-- any IEEE-754-double-backed) JSON consumer, so they are rendered as+-- strings instead, same convention as e.g. protobuf-JSON's int64 mapping.+integerJson :: Int64 -> Value+integerJson i+    | i > maxSafeInteger || i < negate maxSafeInteger = Aeson.toJSON (Text.pack (show i))+    | otherwise = Aeson.toJSON (i :: Int64)+  where+    maxSafeInteger :: Int64+    maxSafeInteger = 9007199254740992 -- 2^53
+ src/KitchenSink/Engine/Handlers.hs view
@@ -0,0 +1,156 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE OverloadedRecordDot #-}+{-# LANGUAGE OverloadedStrings #-}++module KitchenSink.Engine.Handlers where++import Control.Concurrent.Async (mapConcurrently_)+import Control.Monad.IO.Class (liftIO)+import Data.IORef (atomicModifyIORef', newIORef, readIORef)+import Data.List qualified as List+import Data.Maybe (isJust)+import Data.Text qualified as Text+import Data.Text.Encoding qualified as Text+import Data.Typeable (Typeable)+import Network.HTTP.Types (status404)+import Network.Wai as Wai+import Prod.Background as Background+import Prod.Prometheus (timeIt)+import Prod.Proxy qualified as ProdProxy+import Prod.Status+import Prod.Status qualified as Prod+import Prod.Tracer+import Prometheus qualified as Prometheus+import Servant+import System.Process (proc, readCreateProcess)+import Prelude (id, unlines)++import KitchenSink.Core.Build.Target (destination, destinationUrl)+import KitchenSink.Core.Build.Trace as Build+import KitchenSink.Engine.Api+import KitchenSink.Engine.Config+import KitchenSink.Engine.Counters (Counters (..))+import KitchenSink.Engine.OnTheFly+import KitchenSink.Engine.Runtime+import KitchenSink.Engine.SiteBuilder+import KitchenSink.Engine.SiteLoader (Site)+import KitchenSink.Engine.Track (DevServerTrack (..), RequestedPath (..), WatchResult (..))+import KitchenSink.Prelude++handleDevWatch :: Engine ext -> Runtime ext -> Maybe Text -> Maybe TargetPathName -> Handler (Prod.Identification, WatchResult)+handleDevWatch _ rt srvId pathname+    | srvId /= Just (coerce Prod.this) = liftIO $ do+        Prometheus.withLabel (cnt_watches $ counters rt) "outdated" Prometheus.incCounter+        runTracer (traceDev rt) (WatchRejected srvId pathname)+        pure (Prod.this, Respawned)+handleDevWatch engine rt _ pathname = liftIO $ do+    Prometheus.withLabel (cnt_watches $ counters rt) "matching" Prometheus.incCounter+    runTracer (traceDev rt) (WatchAdded (coerce Prod.this) pathname)+    waitReload rt+    let readSite = readBackgroundVal (liveSite rt)+    let lookupTarget = fmap snd . findTarget engine readSite (traceDev rt) . RequestedPath . Text.encodeUtf8+    targetStillExists <- isJust <$> maybe (pure Nothing) lookupTarget pathname+    let res =+            if targetStillExists+                then Reloaded+                else Disappeared+    runTracer (traceDev rt) (WatchLeft pathname res)+    pure (Prod.this, res)++handleDevListTargets :: Engine ext -> Runtime ext -> Handler [Text]+handleDevListTargets engine rt = liftIO $ do+    site <- readBackgroundVal (liveSite rt)+    meta <- execLoadMetaExtradata engine+    let tgts = evalTargets engine meta site+    pure $ [destinationUrl $ destination tgt | tgt <- tgts]++handleDevProduce :: (Show ext, Typeable ext) => Engine ext -> Runtime ext -> Handler DevTextOutput+handleDevProduce engine rt = liftIO $ do+    site <- readBackgroundVal (liveSite rt)+    extra <- execLoadMetaExtradata engine+    let tgts = evalTargets engine extra site+    log <- newIORef []+    let traceTargets item = do+            let blogTracer = contramap BlogTargetTrace $ (traceDev rt)+            atomicModifyIORef' log (\items -> (item : items, ()))+            runTracer blogTracer item+    let go tgt = do+            Prometheus.withLabel (time_singlebuild $ counters rt) (destinationUrl $ destination tgt) $ \m -> timeIt id m $ produceTarget traceTargets tgt+    timeIt time_fullbuild (counters rt)+        $ mapConcurrently_ go tgts+    Prometheus.incCounter $ cnt_rebuilds $ counters rt+    runTracer (traceDev rt) ProducedBuild+    let collateLogs = Text.pack . unlines . fmap show :: [Build.Trace] -> Text+    DevTextOutput . collateLogs <$> readIORef log++handleDevPublish :: Config -> Runtime ext -> Handler DevTextOutput+handleDevPublish config rt =+    case publishScript config of+        Just path -> runPublishScript path+        Nothing -> pure $ DevTextOutput "no publish-script configured"+  where+    runPublishScript path = liftIO $ do+        out <- timeIt time_publishing (counters rt) $ do+            procOut <- readCreateProcess (proc path []) ""+            seq (length procOut) $ pure procOut+        Prometheus.incCounter $ cnt_publishs $ counters rt+        runTracer (traceDev rt) (PublishedBuild out)+        pure (DevTextOutput $ Text.pack out)++handleExecCommand :: Config -> Runtime ext -> Text -> Handler DevTextOutput+handleExecCommand config rt commandName =+    case List.find (\c -> handle c == commandName) $ commands config of+        Just cmd -> runCommand cmd+        Nothing -> pure $ DevTextOutput "no publish-script configured"+  where+    runCommand cmd = liftIO $ do+        let path = exe cmd+        out <- timeIt time_publishing (counters rt) $ do+            procOut <- readCreateProcess (proc path []) ""+            seq (length procOut) $ pure procOut+        Prometheus.withLabel (cnt_commands $ counters rt) (handle cmd) Prometheus.incCounter+        runTracer (traceDev rt) (CommandRan cmd out)+        pure (DevTextOutput $ Text.pack out)++handleDevListCommands :: Config -> Runtime ext -> Handler [Command]+handleDevListCommands config _ =+    pure $ commands config++handleDevForceReload :: Runtime ext -> Handler (Maybe ForceReloadStatus)+handleDevForceReload rt = do+    (_, worked) <- liftIO $ do+        Prometheus.incCounter $ cnt_forceReloads $ counters rt+        reloadSite rt+    let status = if worked then Just ForceReloaded else Nothing+    pure status++handleProxyApi :: Runtime ext -> Application+handleProxyApi rt = case prodproxyRuntime rt of+    Nothing ->+        \_ resp -> resp $ Wai.responseLBS status404 [] "api proxy runtime is disabled"+    Just proxyrt -> do+        ProdProxy.handleProxy proxyrt++-- works with two configured engines: one for all of dev stuff and one in serve mode (for producing files)+serveDevApi :: forall ext. (Show ext, Typeable ext) => Config -> Engine ext -> Engine ext -> Runtime ext -> Server DevApi+serveDevApi config devengine prodengine rt =+    handleDevWatch devengine rt+        :<|> handleDevListTargets devengine rt+        :<|> handleDevProduce prodengine rt+        :<|> handleDevPublish config rt+        :<|> handleDevListCommands config rt+        :<|> handleExecCommand config rt+        :<|> handleDevForceReload rt+        :<|> coerce (handleProxyApi rt)+        :<|> coerce (handleOnTheFlyProduction (findTarget devengine readSite (traceDev rt)) (ontheflyCounters rt.counters) (traceDev rt))+  where+    readSite :: IO (Site ext)+    readSite = readBackgroundVal (liveSite rt)++serveApi :: forall ext. (Show ext, Typeable ext) => Engine ext -> Runtime ext -> Server ServeApi+serveApi engine rt =+    coerce (handleProxyApi rt)+        :<|> coerce (handleOnTheFlyProduction (findTarget engine readSite (traceDev rt)) (ontheflyCounters rt.counters) (traceDev rt))+  where+    readSite :: IO (Site ext)+    readSite = readBackgroundVal (liveSite rt)
+ src/KitchenSink/Engine/Init.hs view
@@ -0,0 +1,101 @@+{-# LANGUAGE OverloadedRecordDot #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE TemplateHaskell #-}++module KitchenSink.Engine.Init where++import Data.ByteString (ByteString)+import Data.ByteString qualified as ByteString+import Data.FileEmbed (embedDir, makeRelativeToProject)+import Data.List qualified as List+import System.Directory (createDirectoryIfMissing, doesDirectoryExist, listDirectory)+import System.Exit (exitFailure)+import System.FilePath.Posix (takeFileName, (</>))+import System.IO (hPutStrLn, stderr)+import Prelude ((&&))++import KitchenSink.Prelude++data Args+    = Args+    { dir :: FilePath+    , force :: Bool+    }++-- | Every file under hs/scaffolding/ (a copy of the repo-root scaffolding/+-- kept in sync by scripts/import-scaffold.sh), embedded at compile-time so+-- `init` works regardless of the current working directory or install+-- location. It must live inside the package directory: `cabal install`+-- builds from a temp copy of just the package, so a path reaching outside+-- it (e.g. "../scaffolding") is not available at TH-splice time.+scaffoldingFiles :: [(FilePath, ByteString)]+scaffoldingFiles = $(makeRelativeToProject "scaffolding" >>= embedDir)++-- | Directory skeleton that produce/serve expect to already exist+-- (nothing in the engine creates these on demand).+outputSkeletonDirs :: [FilePath]+outputSkeletonDirs =+    [ ""+    , "gen"+    , "gen/out"+    , "gen/images"+    , "json"+    , "js"+    , "css"+    , "webfonts"+    , "raw"+    , "raw/data"+    , ".well-known"+    , "topics"+    , "hashtags"+    , "images"+    , "videos"+    , "audios"+    , "docs"+    , "text"+    ]++run :: Args -> IO ()+run cmd = do+    let target = cmd.dir+    let srcDir = target </> "src"+    let outDir = target </> "www"+    alreadyExists <- doesDirectoryExist target+    nonEmpty <-+        if alreadyExists+            then not . List.null <$> listDirectory target+            else pure False+    if nonEmpty && not cmd.force+        then do+            hPutStrLn stderr $+                target+                    <> " already exists and is not empty; pass --force to overwrite"+            exitFailure+        else do+            createDirectoryIfMissing True srcDir+            traverse_ (createDirectoryIfMissing True . (outDir </>)) outputSkeletonDirs+            traverse_ (writeScaffoldFile target srcDir) scaffoldingFiles+            putStrLn $ "Created new kitchen-sink site in " <> target+            putStrLn ""+            putStrLn "Next steps:"+            putStrLn $ "  cd " <> target+            putStrLn $+                "  kitchen-sink serve --srcDir src --outDir www --servMode DEV --httpPort 7655"++-- | Reproduces the mapping of scaffolding/sourcedir.sh: .tmpl files are+-- renamed on copy, and js/ and css/ subdirectories are flattened into the+-- source directory root. README.md is the one exception, landing at the+-- top of the bootstrapped project rather than inside src/.+writeScaffoldFile :: FilePath -> FilePath -> (FilePath, ByteString) -> IO ()+writeScaffoldFile target srcDir (relPath, contents)+    | relPath == "README.md" = ByteString.writeFile (target </> "README.md") contents+    | otherwise = ByteString.writeFile (srcDir </> destinationFileName relPath) contents++destinationFileName :: FilePath -> FilePath+destinationFileName relPath+    | relPath == "index.cmark.tmpl" = "index.cmark"+    | relPath == "glossary.cmark.tmpl" = "glossary.cmark"+    | relPath == "topics.cmark.tmpl" = "topics.cmark"+    | relPath == "hashtags.cmark.tmpl" = "hashtags.cmark"+    | relPath == "newpage.cmark.tmpl" = "first-article.cmark"+    | otherwise = takeFileName relPath
+ src/KitchenSink/Engine/MultiSite.hs view
@@ -0,0 +1,422 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE OverloadedRecordDot #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE TypeApplications #-}++module KitchenSink.Engine.MultiSite where++import Control.Concurrent.Async (Concurrently (..))+import Control.Monad (filterM)+import Data.ByteString qualified as ByteString+import Data.Function ((&))+import Data.List (concatMap)+import Data.List qualified as List+import Data.List.NonEmpty (NonEmpty ((:|)))+import Data.List.NonEmpty qualified as NEList+import Data.Map.Strict qualified as Map+import Data.Maybe (catMaybes)+import Data.Text qualified as Text+import Data.Text.Encoding qualified as Text+import Data.Time.Clock (getCurrentTime)+import Network.HTTP.Client qualified as Http+import Network.HTTP.Client.TLS (newTlsManagerWith)+import Network.HTTP.ReverseProxy qualified as WaiProxy+import Network.HTTP.Types.Status (status404)+import Network.TLS qualified as TLS+import Network.Wai qualified as Wai+import Network.Wai.Handler.Warp as Warp+import Network.Wai.Handler.WarpTLS qualified as WarpTLS+import Network.Wai.Middleware.RequestLogger qualified as RequestLogger+import Options.Generic+import Paths_prodapi_core qualified+import Prod.App qualified as Prod+import Prod.Proxy qualified as ProdProxy+import Prod.Proxy.MultiApp qualified as ProdProxy+import Prod.Status+import Prod.Tracer+import Prometheus qualified as Prometheus+import Servant+import System.Directory (doesFileExist)+import System.Exit (exitFailure)+import System.IO (hPutStrLn, stderr)+import Prelude (id, (&&))++import KitchenSink.Core.Build.Target (Target)+import KitchenSink.Engine.Config (ApiProxyConfig (..), Prefix, RewriteRule (..), SlashApiProxyDirective (..), TransportSecurity (..))+import KitchenSink.Engine.Counters (timeItWithLabel)+import KitchenSink.Engine.Diagnostics (reportDiagnostics)+import KitchenSink.Engine.MultiSiteConfig+import KitchenSink.Engine.OnTheFly (OnTheFlyCounters (..), findTarget, handleOnTheFlyProduction)+import KitchenSink.Engine.Runtime (Engine (..))+import KitchenSink.Engine.SiteBuilder (produceTarget)+import KitchenSink.Engine.SiteConfig+import KitchenSink.Engine.SiteLoader qualified as SiteLoader+import KitchenSink.Engine.Track (DevServerTrack (..))+import KitchenSink.Engine.Utils+import KitchenSink.Layout.Blog as Blog+import KitchenSink.Prelude++data Args+    = Args+    { configFile :: FilePath+    , variables :: [(Text, Text)]+    , httpPort :: Maybe Int+    , httpsPort :: Maybe Int+    , tlsKeyFile :: Maybe FilePath+    , tlsCertFile :: Maybe FilePath+    , proxyingTimeout :: Maybe Int+    }+    deriving (Generic, Show)++type MultiSiteApi = Raw++data Counters+    = Counters+    { count_Requests :: Prometheus.Vector (Text, Text, Text) Prometheus.Counter+    , duration_Build :: Prometheus.Vector (Text, Text) Prometheus.Summary+    , count_ProxiedRequests :: Prometheus.Vector (Text, Text) Prometheus.Counter+    }++initCounters :: IO Counters+initCounters =+    Counters+        <$> reg1c "ks_targets_requests" ("app", "status", "path") "number of queries per blog target"+        <*> reg1s "ks_ontheflybuild_time" ("app", "path") "time spent building targets on disk"+        <*> reg1c "ks_proxied_requests" ("app", "route") "number of requests proxied, per site and api route"+  where+    reg1c k t h =+        Prometheus.register+            $ Prometheus.vector t+            $ Prometheus.counter (Prometheus.Info k h)+    reg1s k t h =+        Prometheus.register+            $ Prometheus.vector t+            $ Prometheus.summary (Prometheus.Info k h) Prometheus.defaultQuantiles++ontheflyCounters :: HostName -> Counters -> OnTheFlyCounters a+ontheflyCounters a cntrs =+    OnTheFlyCounters+        (\(s, p) -> Prometheus.withLabel cntrs.count_Requests (a, s, p) Prometheus.incCounter)+        (\(p) work -> timeItWithLabel cntrs.duration_Build (a, p) work)++data Runtime+    = Runtime+    { counters :: Counters+    , httpManager :: Http.Manager+    , proxyCounters :: ProdProxy.Counters+    , vars :: [(Text, Text)]+    }++initRuntime :: Args -> IO Runtime+initRuntime args =+    Runtime+        <$> initCounters+        <*> newTlsManagerWith managersettings+        <*> ProdProxy.initCounters+        <*> pure args.variables+  where+    managersettings :: Http.ManagerSettings+    managersettings =+        Http.defaultManagerSettings+            & maybe id (\t setts -> setts{Http.managerResponseTimeout = Http.responseTimeoutMicro t}) timeout++    timeout :: Maybe Int+    timeout = args.proxyingTimeout++run :: Args -> IO ()+run cmd = do+    mcfg <- loadConfigFile @MultiSiteConfig cmd.configFile+    rt <- initRuntime cmd+    case mcfg of+        Left err -> hPutStrLn stderr ("could not load config: " <> err) >> exitFailure+        Right cfg -> do+            mfallback <- buildFallbackApp rt cfg+            mapps <- buildApplicationMap rt cfg+            mtls <- buildTLSMap cfg+            case (mfallback, mapps, mtls) of+                (_, _, Left err) -> print ("could not load config certs" :: Text, err)+                (Nothing, _, _) -> print ("could not setup fallback app" :: Text)+                (Just (_, fallbackApp), apps, Right creds) -> do+                    print $ Map.keys apps+                    tlsSettings <- loadTLSSettings creds+                    let multiapp = ProdProxy.routeApplication apps fallbackApp+                    healthRt <- Prod.alwaysReadyRuntime tracePrint+                    let status = pure ("ok" :: Text)+                    init <- Prod.initialize healthRt+                    let prodapiapp =+                            Prod.app+                                init+                                status+                                (statusPage <> versionsSection [("prodapi", Paths_prodapi_core.version)] <> metricsSection "js/metrics.js")+                                (coerce multiapp)+                                (Proxy @MultiSiteApi)+                    let webapp = RequestLogger.logStdoutDev prodapiapp+                    let httpWarp = Warp.run <$> cmd.httpPort <*> pure webapp+                    let httpsWarp = WarpTLS.runTLS <$> tlsSettings <*> tlsWarpSettings <*> pure webapp+                    let program = (,) <$> Concurrently (mio httpWarp) <*> Concurrently (mio httpsWarp)+                    void $ runConcurrently program+  where+    -- NOTE that there appear to be some repetition in the fallback of TLS certificates.+    -- We actually must provide two fallback:+    -- \* (a) one that warpTLS expects+    -- \* (b) one that ProdProxy.withTLSCredentialMap expects+    -- The credential (b) serves as default when SNI fails to find a hostname.+    -- The credential (a) serves as default when there is no SNI indication.+    -- Today these two situations are conflated and if you end up needing to+    -- separate the two for any reason, let me know.+    loadTLSSettings :: ProdProxy.CredentialMap -> IO (Maybe WarpTLS.TLSSettings)+    loadTLSSettings creds = do+        fallback <- loadDefaultCredentials+        pure $ bundleTLSSettings creds =<< fallback++    bundleTLSSettings :: ProdProxy.CredentialMap -> TLS.Credentials -> Maybe WarpTLS.TLSSettings+    bundleTLSSettings creds fallback = do+        cert <- cmd.tlsCertFile+        key <- cmd.tlsKeyFile+        let base = WarpTLS.tlsSettings cert key+        pure $ ProdProxy.withTLSCredentialMap creds fallback base++    tlsWarpSettings :: Maybe Warp.Settings+    tlsWarpSettings = do+        port <- cmd.httpsPort+        pure $ Warp.setPort port Warp.defaultSettings++    loadDefaultCredentials :: IO (Maybe TLS.Credentials)+    loadDefaultCredentials = do+        let cert = cmd.tlsCertFile+        let key = cmd.tlsKeyFile+        let go = TLS.credentialLoadX509 <$> cert <*> key+        case go of+            Nothing -> pure Nothing+            Just fetch -> do+                x <- fetch+                case x of+                    Left _ -> pure $ Nothing+                    Right c -> pure $ Just $ TLS.Credentials [c]++loadMetadata :: SiteInfo -> IO MetaData+loadMetadata config = do+    MetaData+        <$> getCurrentTime+        <*> pure (title config)+        <*> pure (publishURL config)+        <*> pure (twitterLogin config)+        <*> pure noExtraHeaders+        <*> pure (maybe [] (fmap baseURL) $ linkedSites config)+        <*> pure (normalizedBasePath config)+        <*> pure (resolveHomeLink config)+        <*> pure (resolveMenu config)+        <*> pure (resolveFooter config)+  where+    noExtraHeaders _ = pure mempty++type SiteOnlyApi = Raw+type ProxyOnlyApi = Raw+type SiteAndProxyApi =+    ("api" :> ProxyOnlyApi) :<|> SiteOnlyApi++buildSiteApplication :: Runtime -> SiteStanza -> IO (Maybe (NEList.NonEmpty TLS.HostName, Wai.Application))+buildSiteApplication rt cfg = do+    proxyApp <- fmap (countProxied rt.counters cfg.domain cfg.api . ProdProxy.handleProxy) <$> buildProxyBackend rt cfg.api+    ksApp <- case cfg.site of+        NoFiles -> pure Nothing+        KitchenSinkDirectorySource src ->+            Just <$> buildDirectorySourceApp rt src cfg+    pure $ wrap <$> fullApp proxyApp ksApp+  where+    fullApp :: Maybe Wai.Application -> Maybe Wai.Application -> Maybe Wai.Application+    fullApp Nothing Nothing =+        Nothing+    fullApp Nothing (Just y) =+        Just $ Servant.serve (Proxy @SiteOnlyApi) (coerce y)+    fullApp (Just x) Nothing =+        Just $ Servant.serve (Proxy @ProxyOnlyApi) (coerce x)+    fullApp (Just x) (Just y) =+        Just $ Servant.serve (Proxy @SiteAndProxyApi) ((coerce x) :<|> (coerce y))++    wrap :: Wai.Application -> (NEList.NonEmpty TLS.HostName, Wai.Application)+    wrap v = do+        let k = Text.unpack cfg.domain+        let ks = fmap Text.unpack cfg.extraDomains+        (k :| ks, v)++{- | The route a proxied request falls under, used as a metric label: the+prefix of the first matching directive, "no-route" when none matches, and "*"+for a site proxying everything to one backend.+-}+proxyRouteLabel :: ApiProxyConfig -> Wai.Request -> Text+proxyRouteLabel cfg req =+    case cfg of+        NoProxying -> "none"+        SlashApiProxy _ _ -> "*"+        SlashApiProxyList directives ->+            maybe "no-route" (\d -> d.prefix) (List.find (matchesDirective req) directives)++matchesDirective :: Wai.Request -> SlashApiProxyDirective -> Bool+matchesDirective req directive = Text.encodeUtf8 directive.prefix `ByteString.isPrefixOf` Wai.rawPathInfo req++{- | Counts each proxied request under its site and route. The proxy library+only has a single unlabeled counter (still exposed as `cnt_proxied_requests`,+the total), so the keyed one lives here, around the proxy application.+-}+countProxied :: Counters -> Text -> ApiProxyConfig -> Wai.Application -> Wai.Application+countProxied cntrs domain cfg app req rsp = do+    Prometheus.withLabel cntrs.count_ProxiedRequests (domain, proxyRouteLabel cfg req) Prometheus.incCounter+    app req rsp++mkProdProxyRuntime :: Runtime -> ProdProxy.Backends -> ProdProxy.Runtime+mkProdProxyRuntime rt backends =+    ProdProxy.Runtime+        (rt.proxyCounters)+        (backends)+        (rt.httpManager)++buildProxyBackend :: Runtime -> ApiProxyConfig -> IO (Maybe ProdProxy.Runtime)+buildProxyBackend rt cfg =+    case cfg of+        NoProxying -> pure Nothing+        (SlashApiProxyList []) -> pure Nothing+        (SlashApiProxy host port) ->+            pure $ Just $ mkProdProxyRuntime rt (static (Text.encodeUtf8 host) port)+        (SlashApiProxyList directives) -> do+            pure $ Just $ mkProdProxyRuntime rt (prefixed directives)+  where+    proxydest host port = WaiProxy.ProxyDest host port+    dest host port = WaiProxy.WPRProxyDest $ proxydest host port+    destSecure host port = WaiProxy.WPRProxyDestSecure $ proxydest host port+    mkdest directive =+        let+            host = Text.encodeUtf8 directive.hostname+         in+            case (directive.rewrite, directive.security) of+                (NoRewrite, UsePlainText) -> const $ dest host directive.portnum+                (NoRewrite, UseHTTPS) -> const $ destSecure host directive.portnum+                (DropPrefix, UsePlainText) ->+                    \req -> WaiProxy.WPRModifiedRequest (stripPrefix directive.prefix req) (proxydest host directive.portnum)+                (DropPrefix, UseHTTPS) ->+                    \req -> WaiProxy.WPRModifiedRequestSecure (stripPrefix directive.prefix req) (proxydest host directive.portnum)+                (RewritePrefix pfx, UsePlainText) ->+                    \req -> WaiProxy.WPRModifiedRequest (rewritePrefix directive.prefix pfx req) (proxydest host directive.portnum)+                (RewritePrefix pfx, UseHTTPS) ->+                    \req -> WaiProxy.WPRModifiedRequestSecure (rewritePrefix directive.prefix pfx req) (proxydest host directive.portnum)+                (RewritePrefixHost pfx newHost, UsePlainText) ->+                    \req -> WaiProxy.WPRModifiedRequest (changeHost (Text.encodeUtf8 newHost) $ rewritePrefix directive.prefix pfx $ req) (proxydest host directive.portnum)+                (RewritePrefixHost pfx newHost, UseHTTPS) ->+                    \req -> WaiProxy.WPRModifiedRequestSecure (changeHost (Text.encodeUtf8 newHost) $ rewritePrefix directive.prefix pfx $ req) (proxydest host directive.portnum)++    stripPrefix :: Prefix -> Wai.Request -> Wai.Request+    stripPrefix pfx req = req{Wai.rawPathInfo = ByteString.drop (ByteString.length $ Text.encodeUtf8 pfx) req.rawPathInfo}++    rewritePrefix :: Prefix -> Prefix -> Wai.Request -> Wai.Request+    rewritePrefix pfx newPfx req = req{Wai.rawPathInfo = (Text.encodeUtf8 newPfx) <> ByteString.drop (ByteString.length $ Text.encodeUtf8 pfx) req.rawPathInfo}++    changeHost :: ByteString.ByteString -> Wai.Request -> Wai.Request+    changeHost newHost req =+        let+            notHostHeader (hn, _) = hn /= "host"+         in+            req+                { Wai.requestHeaderHost = Just newHost+                , Wai.requestHeaders = ("host", newHost) : List.filter notHostHeader (Wai.requestHeaders req)+                }++    static host port =+        ProdProxy.WaiProxyBackend (\_ -> pure $ dest host port)+    prefixed directives =+        let+            destinations = [(directive, mkdest directive) | directive <- directives]+            noDest = WaiProxy.WPRResponse $ Wai.responseLBS status404 [] "no such api route"+            findDestination req = fmap (\mk -> mk req) <$> List.find (matchesDirective req . fst) destinations+            getDestination req = maybe noDest snd (findDestination req)+         in+            ProdProxy.WaiProxyBackend (\req -> pure $ getDestination req)++buildDirectorySourceApp :: Runtime -> KitchenSinkDirectorySourceStanza -> SiteStanza -> IO Wai.Application+buildDirectorySourceApp rt src cfg = do+    -- loaded once for the whole duration of the application+    metadata <- loadMetadata src.metadata+    site <- loadSource metadata+    let targets = evalTargets metadata site+    let engine = Engine (pure site) (pure metadata) (\_ _ -> targets) (produceTarget print)+    let webapp =+            handleOnTheFlyProduction+                (findTarget engine (pure site) tracePrint)+                (ontheflyCounters cfg.domain rt.counters)+                tracePrint+    pure webapp+  where+    -- An output prefix that is unused when generating results on the fly.+    unusedPrefix :: FilePath+    unusedPrefix = ""++    evalTargets :: MetaData -> SiteLoader.Site () -> [Target () ()]+    evalTargets med site =+        fmap (fmap $ const ())+            $ (siteTargets Blog.layout) (src.execRoot) unusedPrefix med site++    loadSource :: MetaData -> IO (SiteLoader.Site ())+    loadSource med = do+        site <-+            SiteLoader.loadSite+                rt.vars+                med.pathPrefix+                (extraSectiontypes Blog.layout)+                (runTracer $ contramap Loading $ tracePrint)+                src.path+        reportDiagnostics (siteDiagnostics Blog.layout site)+        pure site++buildFallbackApp :: Runtime -> MultiSiteConfig -> IO (Maybe (TLS.HostName, Wai.Application))+buildFallbackApp rt cfg = case cfg.fallback of+    FallbackWithOminousError -> pure $ Just ("*", ominousApp)+    FallbackSite s ->+        let pickHeadHost (hosts, a) = (NEList.head hosts, a)+         in fmap pickHeadHost <$> buildSiteApplication rt s+  where+    ominousApp :: Wai.Application+    ominousApp = \_ reply -> reply $ Wai.responseLBS status404 [] "ominous error"++buildApplicationMap :: Runtime -> MultiSiteConfig -> IO ProdProxy.ApplicationMap+buildApplicationMap rt cfg =+    let+        flattenHosts (hosts, a) = [(host, a) | host <- NEList.toList hosts]+        bundleApps = Map.fromList . concatMap flattenHosts+     in+        bundleApps . catMaybes <$> traverse (buildSiteApplication rt) cfg.services++buildTLSMap :: MultiSiteConfig -> IO (Either String ProdProxy.CredentialMap)+buildTLSMap cfg = do+    triplets <- filterM certificateFilesExist+        $ mconcat+        $ fmap siteTLSTriplet cfg.services+    ProdProxy.loadCredentialMap triplets+  where+    -- A missing cert/key file must not crash the whole daemon: we warn and+    -- drop the entry, letting that host fall through to the process-wide+    -- fallback certificate at TLS handshake time (see the NOTE in `run`).+    certificateFilesExist :: (TLS.HostName, ProdProxy.X509Path, ProdProxy.PrivateKeyPath) -> IO Bool+    certificateFilesExist (host, pemPath, keyPath) = do+        pemExists <- doesFileExist pemPath+        keyExists <- doesFileExist keyPath+        if pemExists && keyExists+            then pure True+            else do+                print+                    ( "warning: missing TLS certificate files for host, falling back to the default certificate" :: Text+                    , host+                    , pemPath+                    , keyPath+                    )+                pure False++siteTLSTriplet :: SiteStanza -> [(TLS.HostName, ProdProxy.X509Path, ProdProxy.PrivateKeyPath)]+siteTLSTriplet cfg = do+    t <- cfg.tls+    c <- toList (tlsCert t)+    d <- join (toList (t.sniDomains <|> (Just [cfg.domain])))+    pure (Text.unpack d, c.pem, c.key)+  where+    tlsCert :: TLSStanza -> Maybe CertificateFiles+    tlsCert s = case s.certificate of+        NoCertificates -> Nothing+        CertificateFileSource x -> Just x
+ src/KitchenSink/Engine/MultiSiteConfig.hs view
@@ -0,0 +1,79 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE OverloadedStrings #-}++module KitchenSink.Engine.MultiSiteConfig where++import Data.Aeson (FromJSON, ToJSON)+import GHC.Generics (Generic)++import KitchenSink.Engine.Config (ApiProxyConfig)+import KitchenSink.Engine.SiteConfig (SiteInfo)+import KitchenSink.Prelude++type HostName = Text++data KitchenSinkDirectorySourceStanza+    = KitchenSinkDirectorySourceStanza+    { path :: FilePath+    , metadata :: SiteInfo+    , execRoot :: Maybe FilePath+    }+    deriving (Generic, Show)+instance FromJSON KitchenSinkDirectorySourceStanza+instance ToJSON KitchenSinkDirectorySourceStanza++data SourceStanza+    = NoFiles+    | KitchenSinkDirectorySource KitchenSinkDirectorySourceStanza+    deriving (Generic, Show)+instance FromJSON SourceStanza+instance ToJSON SourceStanza++data CertificateFiles = CertificateFiles+    { pem :: FilePath+    , key :: FilePath+    }+    deriving (Generic, Show)+instance FromJSON CertificateFiles+instance ToJSON CertificateFiles++data CertificateSource+    = NoCertificates -- lazy way to force a {tag:/contents:} json serialization+    | CertificateFileSource CertificateFiles+    deriving (Generic, Show)+instance FromJSON CertificateSource+instance ToJSON CertificateSource++data TLSStanza = TLSStanza+    { sniDomains :: Maybe [HostName]+    , certificate :: CertificateSource+    }+    deriving (Generic, Show)+instance FromJSON TLSStanza+instance ToJSON TLSStanza++data SiteStanza = SiteStanza+    { domain :: HostName+    , extraDomains :: [HostName]+    , tls :: [TLSStanza]+    , site :: SourceStanza+    , api :: ApiProxyConfig+    }+    deriving (Generic, Show)+instance FromJSON SiteStanza+instance ToJSON SiteStanza++data FallbackStanza+    = FallbackWithOminousError+    | FallbackSite SiteStanza+    deriving (Generic, Show)+instance FromJSON FallbackStanza+instance ToJSON FallbackStanza++data MultiSiteConfig = MultiSiteConfig+    { services :: [SiteStanza]+    , fallback :: FallbackStanza+    }+    deriving (Generic, Show)+instance FromJSON MultiSiteConfig+instance ToJSON MultiSiteConfig
+ src/KitchenSink/Engine/NewArticle.hs view
@@ -0,0 +1,95 @@+{-# LANGUAGE OverloadedRecordDot #-}+{-# LANGUAGE OverloadedStrings #-}++module KitchenSink.Engine.NewArticle where++import Data.Aeson (encode, object, (.=))+import Data.Aeson.Types (Pair)+import Data.Char (isAlphaNum)+import Data.List (filter)+import Data.Maybe (fromMaybe)+import Data.Text qualified as Text+import Data.Text.IO qualified as Text+import Data.Text.Lazy qualified as TextLazy+import Data.Text.Lazy.Encoding qualified as TextLazy+import Data.Time.Clock (UTCTime, getCurrentTime)+import System.Directory (doesDirectoryExist, doesFileExist)+import System.Exit (exitFailure)+import System.FilePath.Posix ((</>))+import System.IO (hPutStrLn, stderr)++import KitchenSink.Prelude++data Args+    = Args+    { srcDir :: FilePath+    , title :: Text+    , layout :: Maybe Text+    , author :: Maybe Text+    }++run :: Args -> IO ()+run cmd = do+    srcDirExists <- doesDirectoryExist cmd.srcDir+    if not srcDirExists+        then do+            hPutStrLn stderr $ cmd.srcDir <> " does not exist"+            exitFailure+        else do+            let filename = cmd.srcDir </> Text.unpack slug <> ".cmark"+            fileExists <- doesFileExist filename+            if fileExists+                then do+                    hPutStrLn stderr $ filename <> " already exists"+                    exitFailure+                else do+                    now <- getCurrentTime+                    Text.writeFile filename (articleContents layoutName authorName cmd.title now)+                    putStrLn $ "Created new article in " <> filename+  where+    slug = slugify cmd.title+    layoutName = maybe "article" Text.toLower cmd.layout+    authorName = fromMaybe "Anonymous Author" cmd.author++slugify :: Text -> Text+slugify =+    Text.intercalate "-"+        . filter (not . Text.null)+        . Text.split (== '-')+        . Text.map toDash+        . Text.toLower+  where+    toDash c+        | isAlphaNum c = c+        | otherwise = '-'++jsonLine :: [Pair] -> Text+jsonLine = TextLazy.toStrict . TextLazy.decodeUtf8 . encode . object++articleContents :: Text -> Text -> Text -> UTCTime -> Text+articleContents layoutName authorName title now =+    Text.unlines+        [ "=base:build-info.json"+        , jsonLine ["layout" .= layoutName, "publicationStatus" .= ("Public" :: Text)]+        , ""+        , "=base:preamble.json"+        , jsonLine ["author" .= authorName, "title" .= title, "date" .= now]+        , ""+        , "=base:topic.json"+        , jsonLine ["topics" .= ([] :: [Text]), "keywords" .= ([] :: [Text])]+        , ""+        , "=base:social.json"+        , jsonLine []+        , ""+        , "=base:main-css.css"+        , ""+        , "=base:summary.cmark"+        , ""+        , "TODO: write a short summary of \"" <> title <> "\"."+        , ""+        , "=base:main-content.cmark"+        , ""+        , "# " <> title+        , ""+        , "TODO: write the article content."+        ]
+ src/KitchenSink/Engine/OnTheFly.hs view
@@ -0,0 +1,109 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE OverloadedRecordDot #-}+{-# LANGUAGE OverloadedStrings #-}++module KitchenSink.Engine.OnTheFly where++import Data.ByteString (ByteString)+import Data.ByteString.Char8 qualified as ByteString+import Data.ByteString.Lazy qualified as LByteString+import Data.Int (Int64)+import Data.List qualified as List+import Data.Text.Encoding qualified as Text+import Data.Typeable (Typeable)+import Network.HTTP.Types (status200, status404)+import Network.Wai as Wai+import Prod.Tracer+import Prometheus qualified as Prometheus++import KitchenSink.Core.Build.Target (Target, destination, destinationUrl)+import KitchenSink.Engine.Counters (Counters (..), timeItWithLabel)+import KitchenSink.Engine.Runtime+import KitchenSink.Engine.SiteBuilder+import KitchenSink.Engine.SiteLoader (Site)+import KitchenSink.Engine.Track (DevServerTrack (..), RequestedPath (..), blogTargetTracer, requestedPath)+import KitchenSink.Layout.Blog.Metadata (pathPrefix)+import KitchenSink.Prelude++type TargetPath = ByteString++type FetchTarget ext = RequestedPath -> IO (TargetPath, Maybe (Target ext ()))++findTarget ::+    Engine ext ->+    IO (Site ext) ->+    Prod.Tracer.Tracer IO (DevServerTrack ext) ->+    FetchTarget ext+findTarget engine loadSite track = \origpath -> do+    runTracer track (TargetRequested origpath)+    med <- execLoadMetaExtradata engine+    let rootPath = RequestedPath $ Text.encodeUtf8 (pathPrefix med) <> "/"+    let indexPath = Text.encodeUtf8 (pathPrefix med) <> "/index.html"+    let path = if origpath == rootPath then indexPath else coerce origpath+    tgts <- evalTargets engine med <$> loadSite+    let target = List.find (\tgt -> Text.encodeUtf8 (destinationUrl (destination tgt)) == path) tgts+    pure (path, target)++data OnTheFlyCounters a+    = OnTheFlyCounters+    { incTargetRequests :: (Text, Text) -> IO ()+    , timeBuild :: (Text) -> IO a -> IO a+    }++ontheflyCounters :: Counters -> OnTheFlyCounters a+ontheflyCounters cntrs =+    OnTheFlyCounters+        (\labels -> Prometheus.withLabel cntrs.cnt_targetRequests labels Prometheus.incCounter)+        (\labels work -> timeItWithLabel cntrs.time_ontheflybuild labels work)++handleOnTheFlyProduction ::+    forall ext.+    (Show ext, Typeable ext) =>+    FetchTarget ext ->+    OnTheFlyCounters (LByteString.ByteString, Int64) ->+    Prod.Tracer.Tracer IO (DevServerTrack ext) ->+    Application+handleOnTheFlyProduction fetchTarget cntrs2 track = go+  where+    go :: Application+    go req resp = do+        let origpath = requestedPath req+        (path, target) <- fetchTarget origpath+        maybe+            (handleNotFound origpath resp)+            (handleFound path resp)+            target++    handleNotFound :: RequestedPath -> (Wai.Response -> IO a) -> IO a+    handleNotFound path resp = do+        cntrs2.incTargetRequests ("not-found", Text.decodeUtf8 $ coerce path)+        runTracer track (TargetMissing $ coerce path)+        resp $ Wai.responseLBS status404 [] "not found"++    handleFound :: TargetPath -> (Wai.Response -> IO a) -> Target ext () -> IO a+    handleFound path resp tgt = do+        cntrs2.incTargetRequests ("found", Text.decodeUtf8 path)+        let produce work = cntrs2.timeBuild (destinationUrl $ destination tgt) work+        (body, size) <- produce $ do+            body <- LByteString.fromStrict <$> outputTarget (blogTargetTracer track) tgt+            let size = LByteString.length body+            seq size (pure (body, size))+        runTracer track (TargetBuilt path size)+        resp $ Wai.responseLBS status200 (("content-type", ctypeFor path) : corsHeadersFor path) body++    ctypeFor path+        | path == "/.well-known/webfinger" = "application/jrd+json"+        | ".js" `ByteString.isSuffixOf` path = "application/javascript"+        | ".json" `ByteString.isSuffixOf` path = "application/json"+        | ".html" `ByteString.isSuffixOf` path = "text/html"+        | True = ""++    -- JSON data targets (e.g. `topicsgraph.json`, consumed by the+    -- graphexplorer widget to build a federated cross-site graph, see+    -- KitchenSink.Layout.Blog.Analyses.SiteGraph) are meant to be readable+    -- from other kitchen-sink sites' origins. They carry no secrets and no+    -- credentials/cookies are involved, so a permissive read-only CORS+    -- allowance is safe: allow any origin to GET them.+    corsHeadersFor path+        | ".json" `ByteString.isSuffixOf` path = [("Access-Control-Allow-Origin", "*")]+        | True = []
+ src/KitchenSink/Engine/Produce.hs view
@@ -0,0 +1,106 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE OverloadedRecordDot #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE TypeApplications #-}++module KitchenSink.Engine.Produce where++import Control.Exception (SomeAsyncException (..), SomeException, displayException, fromException, throwIO, try)+import Control.Monad (when)+import Data.Maybe (catMaybes, fromMaybe)+import Data.Text qualified as Text+import Data.Time.Clock (getCurrentTime)+import Prod.Tracer+import System.Exit (exitFailure)+import System.IO (BufferMode (LineBuffering), hPutStrLn, hSetBuffering, stderr, stdout)+import Prelude ((||))++import KitchenSink.Core.Build.Target (Target, destination, destinationUrl)+import KitchenSink.Engine.Diagnostics (hasFailures, reportDiagnostics)+import KitchenSink.Engine.Runtime+import KitchenSink.Engine.SiteBuilder (produceTarget)+import KitchenSink.Engine.SiteConfig+import KitchenSink.Engine.SiteLoader as SiteLoader+import KitchenSink.Engine.Track (DevServerTrack (..))+import KitchenSink.Engine.Utils+import KitchenSink.Layout.Blog as Blog+import KitchenSink.Prelude++data Args+    = Args+    { srcDir :: FilePath+    , outDir :: Maybe FilePath+    , ksFile :: Maybe FilePath+    , variables :: [(Text, Text)]+    , abortOnError :: Bool+    -- ^ stop at the first target that fails to produce (default: report it, keep producing the rest, exit non-zero at the end)+    }++run :: Args -> IO ()+run cmd = do+    -- progress goes to stdout and problems to stderr: keep their lines whole when both land in one log+    hSetBuffering stdout LineBuffering+    let srcPath = cmd.srcDir+    let kitchensinkFilePath = kitshenSinkJsonFilePath cmd.srcDir cmd.ksFile+    serveMetadata <- loadMetadata kitchensinkFilePath+    let handleLoadSite =+            loadSite+                cmd.variables+                serveMetadata.pathPrefix+                (extraSectiontypes Blog.layout)+                (runTracer $ contramap Loading $ tracePrint)+                srcPath+    let prodengine =+            Engine+                (handleLoadSite)+                (pure serveMetadata)+                (\med site -> fmap (fmap $ const ()) $ (siteTargets Blog.layout) Nothing (fromMaybe "./out" cmd.outDir) med site)+                (produceTarget print)+    site <- execLoadSite prodengine+    meta <- execLoadMetaExtradata prodengine+    let diagnostics = siteDiagnostics Blog.layout site+    reportDiagnostics diagnostics+    let tgts = evalTargets prodengine meta site+    failedTargets <-+        if cmd.abortOnError+            then traverse_ (execProduceTarget prodengine) tgts >> pure []+            else catMaybes <$> traverse (produceOrReport prodengine) tgts+    -- everything that could be produced has been; still fail the command+    when (hasFailures diagnostics || not (null failedTargets)) $ do+        when (not (null failedTargets)) $+            hPutStrLn stderr (show (length failedTargets) <> " target(s) failed to produce; use --abortOnError to stop at the first one")+        exitFailure++-- | Produces one target; a failure is reported on stderr (and returned) instead of ending the run.+produceOrReport :: Engine () -> Target () () -> IO (Maybe Text)+produceOrReport engine tgt = do+    r <- try @SomeException (execProduceTarget engine tgt)+    case r of+        Right () -> pure Nothing+        Left e+            | Just (SomeAsyncException _) <- fromException e -> throwIO e+            | otherwise -> do+                let url = destinationUrl (destination tgt)+                hPutStrLn stderr (Text.unpack url <> ": error: " <> displayException e)+                pure (Just url)++loadMetadata :: FilePath -> IO MetaData+loadMetadata path = do+    config <- fromMaybe defaultSiteInfo <$> loadJSONFile @SiteInfo path+    serveMetadataFromSiteInfo config++serveMetadataFromSiteInfo :: SiteInfo -> IO MetaData+serveMetadataFromSiteInfo config = do+    MetaData+        <$> getCurrentTime+        <*> pure (title config)+        <*> pure (publishURL config)+        <*> pure (twitterLogin config)+        <*> pure noExtraHeaders+        <*> pure (maybe [] (fmap baseURL) $ linkedSites config)+        <*> pure (normalizedBasePath config)+        <*> pure (resolveHomeLink config)+        <*> pure (resolveMenu config)+        <*> pure (resolveFooter config)+  where+    noExtraHeaders _ = pure mempty
+ src/KitchenSink/Engine/Runtime.hs view
@@ -0,0 +1,203 @@+{-# LANGUAGE OverloadedRecordDot #-}++module KitchenSink.Engine.Runtime (+    Engine (..),+    Runtime (..),+    initDevServerRuntime,+) where++import Control.Concurrent (forkIO, threadDelay)+import Control.Concurrent.STM (atomically)+import Control.Concurrent.STM.TMVar+import Control.Concurrent.STM.TVar+import Control.Exception (SomeException, catch)+import Control.Monad (forever, when)+import Data.ByteString qualified as ByteString+import Data.List qualified as List+import Data.Text.Encoding qualified as Text+import GHC.Enum (succ)+import GHC.Float (int2Double)+import Network.HTTP.Client as HTTP (Manager, defaultManagerSettings, newManager)+import Network.Wai qualified as Wai+import Prod.Background as Background+import Prod.Proxy qualified as ProdProxy+import Prod.Tracer+import Prometheus qualified as Prometheus+import System.FSNotify qualified as FSNotify+import System.FilePath.Posix (takeExtension)+import Prelude ((||))++import KitchenSink.Core.Build.Target (Target)+import KitchenSink.Engine.Config+import KitchenSink.Engine.Counters (Counters (..), initCounters)+import KitchenSink.Engine.SiteLoader as SiteLoader+import KitchenSink.Engine.Track (DevServerTrack (..))+import KitchenSink.Layout.Blog+import KitchenSink.Prelude++{- | Part of the Engine that is shared between one-off production script and+longstanding dev-servers.+-}+data Engine ext = Engine+    { execLoadSite :: IO (Site ext)+    , execLoadMetaExtradata :: IO MetaData+    , evalTargets :: MetaData -> (Site ext) -> [Target ext ()]+    , execProduceTarget :: Target ext () -> IO ()+    }++-- | Runtime concerned with auto-reloading, logging and other concernts.+data Runtime ext = Runtime+    { waitReload :: IO ()+    , reloadSite :: IO (Site ext, Bool)+    , traceDev :: Tracer IO (DevServerTrack ext)+    , liveSite :: BackgroundVal (Site ext)+    , counters :: Counters+    , httpManager :: HTTP.Manager+    , prodproxyRuntime :: Maybe ProdProxy.Runtime+    }++initDevServerRuntime :: forall ext. Config -> Engine ext -> FilePath -> Tracer IO (DevServerTrack ext) -> IO (Runtime ext)+initDevServerRuntime cfg engine path devtracer = do+    rtCounters <- initCounters+    initialSite <- load rtCounters++    fsTVar <- newEmptyTMVarIO -- a swappable tmvar for debouncing+    siteTMVar <- newEmptyTMVarIO -- a swappable tmvar that doubles as a watch-trigger+    watches <- newTVarIO []++    notify <- FSNotify.startManager+    _ <- FSNotify.watchDir notify path shouldNotify (handleFSEvent fsTVar)+    _ <- forkIO (loadDebouncedFsEvents rtCounters fsTVar siteTMVar)++    proxyRuntime <- initProxyBackend (api cfg)++    Runtime+        <$> pure (waitChanges watches)+        <*> pure (pushNewSite rtCounters siteTMVar)+        <*> pure devtracer+        <*> background (contramap adaptTracer devtracer) 0 initialSite (waitSiteAndNotify rtCounters siteTMVar watches)+        <*> pure rtCounters+        <*> newManager defaultManagerSettings+        <*> pure proxyRuntime+  where+    initProxyBackend :: ApiProxyConfig -> IO (Maybe ProdProxy.Runtime)+    initProxyBackend NoProxying = pure Nothing+    initProxyBackend (SlashApiProxy host port) =+        Just+            <$> ProdProxy.initRuntime (ProdProxy.StaticBackend (Text.encodeUtf8 host) port)+    initProxyBackend (SlashApiProxyList []) = pure Nothing+    initProxyBackend (SlashApiProxyList triplets) = do+        let adapt directive = (Text.encodeUtf8 directive.hostname, directive.portnum)+        let hasreqprefix req directive = Text.encodeUtf8 directive.prefix `ByteString.isPrefixOf` Wai.rawPathInfo req+        let flookup req = pure $ fmap adapt $ List.find (hasreqprefix req) triplets+        Just <$> ProdProxy.initRuntime (ProdProxy.DynamicBackend flookup)++    load :: Counters -> IO (Site ext)+    load cntrs = do+        site <- execLoadSite engine+        Prometheus.setGauge (cnt_sources cntrs) (int2Double $ countSources $ site)+        pure site++    handleFSEvent :: TMVar () -> FSNotify.Event -> IO ()+    handleFSEvent x ev = do+        let modfile = getFilePath ev+        let shouldReload = (not . ignoreFileReload $ modfile)+        when shouldReload $ do+            runTracer devtracer $ FileWatch ev+            void $ atomically $ tryPutTMVar x ()++    loadDebouncedFsEvents :: Counters -> TMVar () -> TMVar (Site ext) -> IO ()+    loadDebouncedFsEvents cntrs x y = forever $ do+        atomically $ takeTMVar x+        -- give some time in case FileSystem is still synching+        threadDelay 100000+        loaded <- (Right <$> load cntrs) `catch` (\(e :: SomeException) -> pure (Left e))+        case loaded of+            Right site -> do+                atomically $ do+                    _ <- tryTakeTMVar y+                    putTMVar y site+            Left e -> do+                runTracer devtracer $ SiteReloadException e++    pushNewSite :: Counters -> TMVar (Site ext) -> IO (Site ext, Bool)+    pushNewSite cntrs siteTMVar = do+        site <- load cntrs+        res <- seq site $ atomically $ tryPutTMVar siteTMVar site+        pure (site, res)++type WatchQueue = [TMVar ()]++-- Action waiting on a new Site and notifying a series of watches.+--+-- The action flushes the pending watches so that waiters do not have to remove+-- themselves from the queue.+waitSiteAndNotify :: Counters -> TMVar (Site ext) -> TVar WatchQueue -> Int -> IO ((Site ext), Int)+waitSiteAndNotify cntrs siteTMVar watches v = do+    Prometheus.incCounter $ cnt_reloads cntrs+    -- wait for siteTMVar and fan-out to all watches+    atomically $ do+        site <- takeTMVar siteTMVar+        old <- swapTVar watches []+        traverse_ (flip putTMVar ()) old+        pure (site, succ v)++-- | Enqueue oneself waiting for a new site.+waitChanges :: TVar WatchQueue -> IO ()+waitChanges watches = do+    w <- newEmptyTMVarIO+    -- append itself to watches+    atomically $ do+        modifyTVar' watches (\ws -> w : ws)+    void . atomically $ takeTMVar w++shouldNotify :: FSNotify.Event -> Bool+shouldNotify ev = case ev of+    FSNotify.Added _ _ _ -> True+    FSNotify.CloseWrite _ _ _ -> True+    FSNotify.Modified _ _ _ -> True+    FSNotify.ModifiedAttributes _ _ _ -> False+    FSNotify.Unknown _ _ _ _ -> False+    FSNotify.Removed _ _ _ -> False+    FSNotify.WatchedDirectoryRemoved _ _ _ -> False++getFilePath :: FSNotify.Event -> FilePath+getFilePath ev = case ev of+    FSNotify.Added p _ _ -> p+    FSNotify.CloseWrite p _ _ -> p+    FSNotify.Modified p _ _ -> p+    FSNotify.ModifiedAttributes p _ _ -> p+    FSNotify.Removed p _ _ -> p+    FSNotify.Unknown p _ _ _ -> p+    FSNotify.WatchedDirectoryRemoved p _ _ -> p++{- | Files the dev-server's fsnotify watch never triggers a reload for.+Besides editor swap files, this excludes a sqlite datasource+("KitchenSink.Engine.Dynamic", @kitchen-sink serve --dynamic@) and its+WAL\/SHM\/journal side-files: those churn on every dynamic-page request, and+none of it is a change to the site's own sources.+-}+ignoreFileReload :: FilePath -> Bool+ignoreFileReload p =+    takeExtension p == ".swp"+        || takeExtension p `List.elem` [".db", ".sqlite", ".sqlite3"]+        || List.any (`List.isSuffixOf` p) ["-wal", "-shm", "-journal"]++{- | Adapt the background-value tracks with a site by dropping the Site content+(which doesn't implement Show).+-}+adaptTracer :: Background.Track (Site ext) -> DevServerTrack ext+adaptTracer trk = SiteReloaded $ fmap (const ()) trk++countSources :: Site ext -> Int+countSources s =+    sum+        [ length $ articles s+        , length $ images s+        , length $ videoFiles s+        , length $ cssFiles s+        , length $ jsFiles s+        , length $ htmlFiles s+        , length $ dotSourceFiles s+        , length $ rawFiles s+        ]
+ src/KitchenSink/Engine/Serve.hs view
@@ -0,0 +1,185 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE OverloadedRecordDot #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE TypeApplications #-}++module KitchenSink.Engine.Serve where++import Control.Concurrent.Async (Concurrently (..))+import Data.Maybe (fromMaybe)+import Data.Time.Clock (getCurrentTime)+import Lucid as Lucid+import Lucid.Base qualified as Lucid+import Network.Wai.Handler.Warp as Warp+import Network.Wai.Handler.WarpTLS qualified as WarpTLS+import Network.Wai.Middleware.RequestLogger qualified as RequestLogger+import Options.Generic+import Paths_prodapi_core qualified+import Prod.App qualified as Prod+import Prod.Background (readBackgroundVal)+import Prod.Status+import Prod.Tracer+import Servant+import Prelude (Read, error)++import KitchenSink.Core.Assembler (Assembler)+import KitchenSink.Engine.Api+import KitchenSink.Engine.Config+import KitchenSink.Engine.Diagnostics (reportDiagnostics)+import KitchenSink.Engine.Dynamic (dynamicMiddleware, dynamicOptionsFromConfig)+import KitchenSink.Engine.Handlers+import KitchenSink.Engine.Runtime+import KitchenSink.Engine.SiteBuilder (produceTarget)+import KitchenSink.Engine.SiteConfig+import KitchenSink.Engine.SiteLoader as SiteLoader+import KitchenSink.Engine.Track (DevServerTrack (..))+import KitchenSink.Engine.Utils+import KitchenSink.Layout.Blog as Blog+import KitchenSink.Prelude++data ServMode = SERVE | DEV+    deriving (Generic, Read, Show)++instance ParseField ServMode+instance ParseFields ServMode+instance ParseRecord ServMode++data Args+    = Args+    { srcDir :: FilePath+    , outDir :: Maybe FilePath+    , ksFile :: Maybe FilePath+    , servMode :: ServMode+    , variables :: [(Text, Text)]+    , httpPort :: Maybe Int+    , httpsPort :: Maybe Int+    , tlsKeyFile :: Maybe FilePath+    , tlsCertFile :: Maybe FilePath+    , dynamic :: Bool+    }++run :: Args -> IO ()+run cmd = do+    let srcPath = cmd.srcDir+    let kitchensinkFilePath = kitshenSinkJsonFilePath cmd.srcDir cmd.ksFile+    serveMetadata <- loadServeModeExtraData kitchensinkFilePath+    let adaptTargets = fmap (fmap (const ()))+    let handleLoadSite = do+            site <-+                loadSite+                    cmd.variables+                    serveMetadata.pathPrefix+                    (extraSectiontypes Blog.layout)+                    (runTracer $ contramap Loading $ tracePrint)+                    srcPath+            -- also on every reload, so an edit that introduces a problem shows up+            reportDiagnostics (siteDiagnostics Blog.layout site)+            pure site+    let prodengine =+            Engine+                handleLoadSite+                (pure serveMetadata)+                (\med site -> adaptTargets (siteTargets Blog.layout Nothing (fromMaybe "./out" cmd.outDir) med site))+                (produceTarget print)+    let devengine = prodengine{execLoadMetaExtradata = loadDevModeExtraData kitchensinkFilePath}+    ksconfig <- loadJSONFile @Config kitchensinkFilePath >>= maybe (error "couldn't load kitchensink.json") pure+    kswebapp <- case cmd.servMode of+        DEV -> runDev ksconfig devengine prodengine srcPath+        SERVE -> runServe ksconfig prodengine srcPath++    let webapp = RequestLogger.logStdoutDev kswebapp+    let httpWarp = Warp.run <$> cmd.httpPort <*> pure webapp+    let httpsWarp = WarpTLS.runTLS <$> tlsSettings <*> tlsWarpSettings <*> pure webapp++    let program = (,) <$> Concurrently (mio httpWarp) <*> Concurrently (mio httpsWarp)+    void $ runConcurrently program+  where+    tlsSettings :: Maybe WarpTLS.TLSSettings+    tlsSettings = do+        cert <- cmd.tlsCertFile+        key <- cmd.tlsKeyFile+        pure $ WarpTLS.tlsSettings cert key++    tlsWarpSettings :: Maybe Warp.Settings+    tlsWarpSettings = do+        port <- cmd.httpsPort+        pure $ Warp.setPort port Warp.defaultSettings++    runDev ksconfig devengine prodengine path = do+        let apiStatus = pure ("ok" :: Text)+        healthRt <- Prod.alwaysReadyRuntime tracePrint+        rt <- initDevServerRuntime ksconfig devengine path tracePrint+        init <- Prod.initialize healthRt+        let webapp =+                Prod.app+                    init+                    apiStatus+                    (statusPage <> versionsSection [("prodapi", Paths_prodapi_core.version)] <> metricsSection "js/metrics.js")+                    (serveDevApi ksconfig devengine prodengine rt)+                    (Proxy @DevApi)+        pure $ withDynamicRouting ksconfig rt webapp++    runServe ksconfig engine path = do+        let apiStatus = pure ("ok" :: Text)+        healthRt <- Prod.alwaysReadyRuntime tracePrint+        rt <- initDevServerRuntime ksconfig engine path tracePrint+        init <- Prod.initialize healthRt+        let webapp =+                Prod.app+                    init+                    apiStatus+                    (statusPage <> versionsSection [("prodapi", Paths_prodapi_core.version)] <> metricsSection "js/metrics.js")+                    (serveApi engine rt)+                    (Proxy @ServeApi)+        pure $ withDynamicRouting ksconfig rt webapp++    -- opt-in (--dynamic): tries every request-time dynamic route before+    -- falling back to the site's ordinary (static / on-the-fly) production;+    -- see "KitchenSink.Engine.Dynamic"+    withDynamicRouting ksconfig rt webapp =+        dynamicMiddleware (dynamicOptionsFromConfig cmd.dynamic ksconfig) (readBackgroundVal (liveSite rt)) webapp++loadServeModeExtraData :: FilePath -> IO MetaData+loadServeModeExtraData path = do+    config <- fromMaybe defaultSiteInfo <$> loadJSONFile @SiteInfo path+    serveMetadataFromSiteInfo config++serveMetadataFromSiteInfo :: SiteInfo -> IO MetaData+serveMetadataFromSiteInfo config = do+    MetaData+        <$> getCurrentTime+        <*> pure (title config)+        <*> pure (publishURL config)+        <*> pure (twitterLogin config)+        <*> pure noExtraHeaders+        <*> pure (maybe [] (fmap baseURL) $ linkedSites config)+        <*> pure (normalizedBasePath config)+        <*> pure (resolveHomeLink config)+        <*> pure (resolveMenu config)+        <*> pure (resolveFooter config)+  where+    noExtraHeaders _ = pure mempty++loadDevModeExtraData :: FilePath -> IO MetaData+loadDevModeExtraData path = do+    config <- fromMaybe defaultSiteInfo <$> loadJSONFile @SiteInfo path+    let prefix = normalizedBasePath config+    MetaData+        <$> getCurrentTime+        <*> pure (title config)+        <*> pure (publishURL config)+        <*> pure (twitterLogin config)+        <*> pure (jsReloadExtraHeaders prefix)+        <*> pure (maybe [] (fmap baseURL) $ linkedSites config)+        <*> pure prefix+        <*> pure (resolveHomeLink config)+        <*> pure (resolveMenu config)+        <*> pure (resolveFooter config)+  where+    jsReloadExtraHeaders :: Text -> Article ext [Text] -> Assembler ext (Lucid.Html ())+    jsReloadExtraHeaders prefix _ =+        let js1 = Lucid.termRawWith "script" [type_ "text/javascript", src_ (prefix <> "/js/autoreload.js")] ""+            js2 = Lucid.termRawWith "script" [type_ "text/javascript", src_ (prefix <> "/js/add-dev-route.js")] ""+            js3 = Lucid.termRawWith "script" [type_ "text/javascript", src_ (prefix <> "/js/echarts.min.js")] ""+            js5 = Lucid.termRawWith "script" [type_ "text/javascript", src_ (prefix <> "/js/echart-histogram.js")] ""+         in pure (js1 *> js2 *> js3 *> js5)
+ src/KitchenSink/Engine/SiteBuilder.hs view
@@ -0,0 +1,66 @@+module KitchenSink.Engine.SiteBuilder (produceTarget, outputTarget)+where++import Control.Exception (throwIO)+import Data.ByteString (ByteString)+import Data.ByteString qualified as ByteString+import Data.ByteString.Lazy qualified as LByteString+import Data.Text.Lazy.Encoding qualified as LText+import Data.Text.Lazy.IO qualified as LText+import Data.Typeable (Typeable)+import System.Directory (copyFile)++import KitchenSink.Core.Assembler+import KitchenSink.Core.Build.Target+import KitchenSink.Core.Build.Trace+import KitchenSink.Core.Generator+import KitchenSink.Prelude++-- | Outputs a target by generating its contents.+outputTarget ::+    (Typeable ext, Show ext) =>+    Tracer ->+    Target ext a ->+    IO ByteString+outputTarget trace t = do+    case productionRule t of+        ProduceAssembler assembler -> do+            trace $ Assembling dest+            let ret = LByteString.toStrict . LText.encodeUtf8 <$> runAssembler assembler+            either throwIO pure ret+        ProduceGenerator fgenerator -> do+            ret <- runGenerator (fgenerator trace)+            either throwIO pure ret+        ProduceFileCopy (Sourced (FileSource src) _) -> do+            ByteString.readFile src+  where+    dest = case destination t of+        (StaticFileDestination _ d) -> d+        (VirtualFileDestination _ d) -> d++-- | Outputs a target by storing its contents in a given file.+produceTarget ::+    (Typeable ext, Show ext) =>+    Tracer ->+    Target ext a ->+    IO ()+produceTarget trace t = do+    case productionRule t of+        ProduceAssembler assembler -> do+            trace $ Assembling dest+            case runAssembler assembler of+                Right s -> LText.writeFile dest s+                Left e -> throwIO e+        ProduceGenerator fgenerator -> do+            trace $ Generating dest+            ret <- runGenerator (fgenerator trace)+            case ret of+                Right s -> ByteString.writeFile dest s+                Left e -> throwIO e+        ProduceFileCopy (Sourced (FileSource src) _) -> do+            trace $ Copying dest+            copyFile src dest+  where+    dest = case destination t of+        (StaticFileDestination _ d) -> d+        (VirtualFileDestination _ d) -> d
+ src/KitchenSink/Engine/SiteConfig.hs view
@@ -0,0 +1,134 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE OverloadedRecordDot #-}+{-# LANGUAGE OverloadedStrings #-}++module KitchenSink.Engine.SiteConfig where++import Data.Aeson (FromJSON, ToJSON)+import Data.Maybe (fromMaybe, isNothing)+import Data.Text qualified as Text+import GHC.Generics (Generic)+import Prelude ((&&))++import KitchenSink.Layout.Blog.Metadata (FooterColumn (..), FooterSpec (..), HomeLinkSpec (..), MenuItem (..), defaultHomeLink)+import KitchenSink.Prelude++data LinkedSite = LinkedSite+    { baseURL :: Text+    , siteType :: Text+    , siteTitle :: Text+    }+    deriving (Generic, Show)+instance FromJSON LinkedSite+instance ToJSON LinkedSite++-- | The optional @homeLink@ object of @kitchen-sink.json@: the label (default+-- @"Home"@) and an optional icon image of the link back to the site root.+data HomeLink = HomeLink+    { label :: Maybe Text+    , icon :: Maybe Text+    }+    deriving (Generic, Show)+instance FromJSON HomeLink+instance ToJSON HomeLink++-- | A plain link of the @menu@ or of a @footer@ column.+data NavLink = NavLink+    { label :: Text+    , url :: Text+    }+    deriving (Generic, Show)+instance FromJSON NavLink+instance ToJSON NavLink++-- | An entry of the @menu@ array of @kitchen-sink.json@: a link, optionally+-- with a sub-menu of plain links (one level only).+data NavEntry = NavEntry+    { label :: Text+    , url :: Text+    , children :: Maybe [NavLink]+    }+    deriving (Generic, Show)+instance FromJSON NavEntry+instance ToJSON NavEntry++data FooterColumnConfig = FooterColumnConfig+    { heading :: Maybe Text+    , links :: [NavLink]+    }+    deriving (Generic, Show)+instance FromJSON FooterColumnConfig+instance ToJSON FooterColumnConfig++-- | The optional @footer@ object of @kitchen-sink.json@: columns of links and+-- a legal line.+data FooterConfig = FooterConfig+    { columns :: Maybe [FooterColumnConfig]+    , legal :: Maybe Text+    }+    deriving (Generic, Show)+instance FromJSON FooterConfig+instance ToJSON FooterConfig++data SiteInfo = SiteInfo+    { title :: Text+    , publishURL :: Text+    , twitterLogin :: Maybe Text+    , linkedSites :: Maybe [LinkedSite]+    , basePath :: Maybe Text+    , homeLink :: Maybe HomeLink+    , menu :: Maybe [NavEntry]+    , footer :: Maybe FooterConfig+    }+    deriving (Generic, Show)+instance FromJSON SiteInfo+instance ToJSON SiteInfo++defaultSiteInfo :: SiteInfo+defaultSiteInfo =+    SiteInfo "invalid siteconfig!" "/" Nothing Nothing Nothing Nothing Nothing Nothing++-- | The home link to render, falling back to the defaults for whatever the+-- configuration leaves out.+resolveHomeLink :: SiteInfo -> HomeLinkSpec+resolveHomeLink config =+    HomeLinkSpec+        (fromMaybe (homeLabel defaultHomeLink) (config.homeLink >>= (.label)))+        (config.homeLink >>= (.icon))++-- | The header menu to render: empty when the configuration has none.+resolveMenu :: SiteInfo -> [MenuItem]+resolveMenu config = fmap toItem (fromMaybe [] config.menu)+  where+    toItem e = MenuItem e.label e.url (fmap linkItem (fromMaybe [] e.children))++-- | The footer to render: 'Nothing' when the configuration has no columns and+-- no legal line.+resolveFooter :: SiteInfo -> Maybe FooterSpec+resolveFooter config = do+    f <- config.footer+    let cols = fmap toColumn (fromMaybe [] f.columns)+    if null cols && isNothing f.legal+        then Nothing+        else Just (FooterSpec cols f.legal)+  where+    toColumn c = FooterColumn c.heading (fmap linkItem c.links)++linkItem :: NavLink -> MenuItem+linkItem l = MenuItem l.label l.url []++-- | Normalizes the configured @basePath@ (e.g., @Just "tramaj"@, @Just+-- "/tramaj/"@, @Nothing@) into a prefix ready to prepend to the+-- root-relative URLs generated throughout the site: no trailing slash, a+-- single leading slash when non-empty, and @""@ when hosted at the domain+-- root. This is what makes a GitHub Pages *project* page (served under+-- @https:\/\/user.github.io\/reponame\/@ rather than the domain root) work.+normalizedBasePath :: SiteInfo -> Text+normalizedBasePath config =+    case Text.dropWhileEnd (== '/') . dropLeadingSlashes <$> basePath config of+        Nothing -> ""+        Just "" -> ""+        Just p -> "/" <> p+  where+    dropLeadingSlashes = Text.dropWhile (== '/')
+ src/KitchenSink/Engine/SiteLoader.hs view
@@ -0,0 +1,440 @@+{-# LANGUAGE DeriveAnyClass #-}+{-# LANGUAGE OverloadedRecordDot #-}++module KitchenSink.Engine.SiteLoader (module KitchenSink.Core.Build.Site, loadSite, LogMsg (..)) where++import Control.Exception (throwIO)+import Data.Aeson (FromJSON (..), withObject, (.:))+import Data.Aeson qualified as Aeson+import Data.Aeson.Types qualified as Aeson.Types+import Data.ByteString.Lazy qualified as LByteString+import Data.List qualified as List+import Data.Map (Map)+import Data.Map qualified as Map+import Data.Maybe (isJust)+import Data.Text qualified as Text+import Data.Text.Encoding qualified as Text+import Data.Text.IO qualified as Text+import System.Directory (listDirectory)+import System.FilePath.Posix (dropExtension, takeExtension, takeFileName, (</>))+import Text.Megaparsec (runParser)+import Text.Mustache qualified as Mustache+import Text.Parsec qualified as Parsec+import Prelude (Integer, ioError, succ, userError, (&&), (||))+import Control.Monad (foldM)+import qualified Tramaj.Ast+import qualified Tramaj.Eval++import Control.Monad.State++import KitchenSink.Core.Build.Site+import KitchenSink.Core.Build.Target+import KitchenSink.Core.Section+import KitchenSink.Engine.Templating (TemplatingError)+import KitchenSink.Engine.Templating qualified as Templating+import KitchenSink.Prelude++data LogMsg ext+    = LoadArticle FilePath+    | LoadTemplatingLibraryFile FilePath+    | LoadImage FilePath+    | LoadVideo FilePath+    | LoadRaw FilePath+    | LoadDocument FilePath+    | LoadCss FilePath+    | LoadWebfont FilePath+    | LoadJs FilePath+    | LoadHtml FilePath+    | LoadDotSource FilePath+    | EvalSection FilePath (SectionType ext) Format+    deriving (Show)++type Loader ext a = (LogMsg ext -> IO ()) -> FilePath -> IO (Sourced a)++-- TODO: consider adding some LoadedArticle type to:+-- - distinguish article that have just been parsed from pre-processed ones+-- - return some extra structure about the Article like:+--   * dependencies using a specific section+--   * dependencies between sections? or between articles?+--   * dependencies to external query widgets or params?+--   * references to generated datasets (e.g., `curl a page, use as input to other place`)+loadArticle :: [(Text, Text)] -> Text -> [ExtraSectionType ext] -> Tramaj.Eval.LibraryTable -> Loader ext (Article ext [Text])+loadArticle vars pathPrefix extras globalLibs trace path = do+    trace $ LoadArticle path+    eart <- runParser (article extras path) path <$> Text.readFile path+    case eart of+        Left err -> throwIO err+        Right art -> Sourced (FileSource path) <$> evalSections art+  where+    env = EvalEnv path vars pathPrefix trace+    evalSections art = evalStateT (overSections (evalSection env) art) (newState (isDynamicArticle art) globalLibs)++{- | Whether an article declares a @route@ in its @=base:build-info.json@+section, which makes it a request-time dynamic page (see+"KitchenSink.Engine.Dynamic"). Sections of such an article that would+otherwise be evaluated against @$ctx@ at load time (its @.tramaj-doc@ /+@.tramaj-json@ sections, most importantly its @main-content@) are instead+left untouched here, since @$ctx.request@ only exists once an actual request+comes in.+-}+isDynamicArticle :: Article ext [Text] -> Bool+isDynamicArticle (Article _ secs) =+    List.any hasRoute secs+  where+    hasRoute (Section BuildInfo Json body) =+        case Aeson.decode (LByteString.fromStrict $ Text.encodeUtf8 $ Text.unlines body) of+            Just (binfo :: BuildInfoData) -> isJust (route binfo)+            Nothing -> False+    hasRoute _ = False++{- | Parses every @library.templating-lib@ section out of a set of+templating-library-only files (a @*.cmark-tramaj@ file, picked up by+'loadSite' and excluded from the site's articles) into one shared+'Tramaj.Eval.LibraryTable', which every article is then seeded with (see+'loadArticle').++Every name a file registers is nested under that file's own basename, so+@bob.cmark-tramaj@'s @icon@ library is only ever reachable as+@import(\"bob\/icon\", ...)@. Two files can therefore never collide on a name+-- the filesystem itself already guarantees two files in one directory don't+share a basename -- so 'DuplicateTemplatingLibrary' below can only ever fire+within one file, same as the ordinary in-article case.++Deliberately just parsing, not evaluating: a library's body is not run here+any more than an in-article @library.templating-lib@ section's body is run+where it is declared (see 'sectionStep') -- it is run later, wherever+something actually imports it and reads @.rendered@ off the result, against+whatever library table /that/ call site has. Which library file 'loadSite'+processes first therefore cannot matter for correctness; a genuine import+cycle (two libraries, from the same file or different ones, that import each+other) is caught by @tramaj@ itself as an 'Tramaj.Eval.EvalError'+('Tramaj.Eval.ImportCycle') when something finally evaluates that chain, not+by anything here.+-}+loadTemplatingLibraries ::+    (LogMsg ext -> IO ()) ->+    [ExtraSectionType ext] ->+    [FilePath] ->+    IO Tramaj.Eval.LibraryTable+loadTemplatingLibraries trace extras = foldM loadFile Map.empty+  where+    loadFile acc path = do+        trace $ LoadTemplatingLibraryFile path+        eart <- runParser (article extras path) path <$> Text.readFile path+        case eart of+            Left err -> throwIO err+            Right (Article _ secs) -> do+                fileTable <- foldM (registerSection path) Map.empty secs+                let prefix = Text.pack (dropExtension (takeFileName path))+                pure $ Map.union (Map.mapKeys ((prefix <> "/") <>) fileTable) acc++    registerSection path acc (Section (Library name) TramajLib body) = do+        case Templating.parseLibrarySection (Text.unlines body) of+            Left err -> throwIO $ TemplatingSectionError path err+            Right prog+                | Map.member name acc -> throwIO $ DuplicateTemplatingLibrary name path+                | otherwise -> pure $ Map.insert name prog acc+    registerSection _ acc _ = pure acc++{- | What an evaluated section (templating-lang in expression mode)+must answer with: a @format@ naming the concrete format the section is rewritten+to, plus its @contents@.+-}+data SectionEvalResult+    = TextContents Text [Text]+    | JsonContents Aeson.Value+    deriving (Show)++instance FromJSON SectionEvalResult where+    parseJSON = withObject "SectionEvalResult" $ \obj -> do+        format <- obj .: "format"+        case format of+            "json" -> JsonContents <$> obj .: "contents"+            _ -> TextContents format <$> (obj .: "contents" >>= textContents)+      where+        -- a single string is accepted as well as an array of lines, since+        -- writing `[ "…" ]` for a one-line result is pure noise+        textContents :: Aeson.Value -> Aeson.Types.Parser [Text]+        textContents (Aeson.String txt) = pure [txt]+        textContents v = parseJSON v++data EvalEnv ext+    = EvalEnv+    { path :: FilePath+    , vars :: [(Text, Text)]+    , pathPrefix :: Text+    , trace :: LogMsg ext -> IO ()+    }++data EvalError+    = UnsupportedReturnFormat Text+    | MalformedJSONDataset Name String+    | -- | the file holding the section, and what the JSON decoder said+      MalformedJSONGeneratorInstructions FilePath String+    | MustacheCompileError Parsec.ParseError+    | TemplatingSectionError FilePath TemplatingError+    | TemplatingResultJsonDecodeError FilePath String+    | -- | the same library name was registered twice within one+      -- @*.cmark-tramaj@ file; carries the name and the file+      DuplicateTemplatingLibrary Name FilePath+    deriving (Show, Exception)++type DatasetCells =+    Map Name Aeson.Value++data EvalState = EvalState+    { sectionNumber :: Integer+    , datasets :: DatasetCells+    , templatingLibraryTable :: Tramaj.Eval.LibraryTable+    , dynamicArticle :: Bool+    -- ^ set once, from the article's own @route@ build-info; see 'isDynamicArticle'+    }++newState :: Bool -> Tramaj.Eval.LibraryTable -> EvalState+newState dyn globalLibs = EvalState 0 Map.empty globalLibs dyn++type Eval a = StateT EvalState IO a++evalSection :: EvalEnv ext -> Section ext [Text] -> Eval (Section ext [Text])+evalSection env s = do+    x <- sectionStep env s+    incrementSectionNumber+    pure x++incrementSectionNumber :: Eval ()+incrementSectionNumber = modify f+  where+    f st0 = st0{sectionNumber = succ (sectionNumber st0)}++recordTemplatingLibrary :: Text -> Tramaj.Ast.Program -> Eval ()+recordTemplatingLibrary key x = modify f+  where+    f st0 = st0{templatingLibraryTable = g (templatingLibraryTable st0) }+    g libtable = Map.insert key x libtable ++insertDatasetContents :: Name -> Aeson.Value -> Eval ()+insertDatasetContents k val = modify f+  where+    f st0 = st0{datasets = Map.insert k val (datasets st0)}++sectionStep :: forall ext. EvalEnv ext -> Section ext [Text] -> Eval (Section ext [Text])+sectionStep env x@(Section t fmt body) = do+    st0 <- get+    liftIO $ env.trace $ EvalSection env.path t fmt+    exec st0+  where+    exec :: EvalState -> Eval (Section ext [Text])+    -- a dynamic page's tramaj sections (most importantly its main-content)+    -- read $ctx.request, which only exists per-request; leave them as source+    -- for "KitchenSink.Engine.Dynamic" to evaluate later, not here+    exec st0+        | st0.dynamicArticle && (fmt == TramajDoc || fmt == TramajJson) =+            pure x+    exec st0 = case (t, fmt) of+        -- a .sql dataset is never evaluated at load time either: it runs+        -- per-request against a read-only sqlite datasource, see+        -- "KitchenSink.Engine.Dynamic"+        (Dataset _, Sql) -> pure x+        (_, Mustache) -> do+            let jsonDataset = Aeson.toJSON st0.datasets+            let template = Mustache.compileTemplate "(section)" (Text.unlines body)+            case template of+                Left err -> liftIO $ throwIO $ MustacheCompileError err+                Right tpl -> do+                    let contents = Mustache.substitute tpl jsonDataset+                    pure $ Section t Cmark [contents]+        (_, Dhall) ->+            liftIO+                $ ioError+                $ userError+                $ env.path+                <> ": the dhall section format was removed; rewrite this section as a tramaj section (tramaj-json for a value, tramaj-doc for HTML), see /sections-templating.html"+        (_, TramajJson) -> do+            let ctx = Templating.buildContext env.path st0.sectionNumber env.pathPrefix env.vars st0.datasets+            case Templating.evalJsonSection st0.templatingLibraryTable ctx (Text.unlines body) of+                Left err -> liftIO $ throwIO $ TemplatingSectionError env.path err+                Right (prog,jvalue) -> case Aeson.fromJSON jvalue of+                    Aeson.Error err ->+                        liftIO $ throwIO $ TemplatingResultJsonDecodeError env.path err+                    Aeson.Success result -> do+                        recordTemplatingLibrary (Text.pack $ show $ st0.sectionNumber) prog+                        rewriteSection "tramaj-json" result+        (_, TramajDoc) -> do+            let ctx = Templating.buildContext env.path st0.sectionNumber env.pathPrefix env.vars st0.datasets+            case Templating.evalDocSection st0.templatingLibraryTable ctx (Text.unlines body) of+                Left err -> liftIO $ throwIO $ TemplatingSectionError env.path err+                Right (prog, html) -> do+                  recordTemplatingLibrary (Text.pack $ show $ st0.sectionNumber) prog+                  pure $ Section t TextHtml [html]+        (Library name, TramajLib) -> do+            case Templating.parseLibrarySection (Text.unlines body) of+                Left err -> liftIO $ throwIO $ TemplatingSectionError env.path err+                Right prog -> do+                  recordTemplatingLibrary (Text.pack $ show $ st0.sectionNumber) prog+                  recordTemplatingLibrary name prog+                  pure $ Section t TextHtml []+        (Dataset name, Json) -> do+            case (Aeson.eitherDecode $ LByteString.fromStrict $ Text.encodeUtf8 $ Text.unlines body) of+                Right v -> insertDatasetContents name v+                Left err -> liftIO $ throwIO $ MalformedJSONDataset name err+            pure x+        (Dataset name, _) -> do+            insertDatasetContents name (Aeson.String $ Text.unlines body)+            pure x+        (GeneratorInstructions, Json) -> do+            let jsonDataset = Aeson.toJSON st0.datasets+            case (Aeson.eitherDecode @GeneratorInstructionsData $ LByteString.fromStrict $ Text.encodeUtf8 $ Text.unlines body) of+                Left err -> liftIO $ throwIO $ MalformedJSONGeneratorInstructions env.path err+                Right gen ->+                    if isJust gen.stdin_json || isJust gen.stdin+                        then pure x+                        else+                            pure+                                $ Section+                                    GeneratorInstructions+                                    Json+                                    [Text.decodeUtf8 $ LByteString.toStrict $ Aeson.encode $ gen{stdin_json = Just jsonDataset}]+        _ ->+            pure x++    {- | Rewrites an evaluated section into the concrete format its result asked+    for; @backend@ names the section format for the error message.++    A generated dataset cell is registered here too: the format-dispatching+    branches above match before @(Dataset name, Json)@ does, so without this a+    @=base:dataset.tramaj-json my-name@ cell would be rewritten to+    JSON and then stay invisible to every later section.+    -}+    rewriteSection :: Text -> SectionEvalResult -> Eval (Section ext [Text])+    rewriteSection _ (JsonContents obj) = do+        case t of+            Dataset name -> insertDatasetContents name obj+            _ -> pure ()+        pure $ Section t Json [Text.decodeUtf8 $ LByteString.toStrict $ Aeson.encode obj]+    rewriteSection backend (TextContents newFormat contents) =+        case newFormat of+            "cmark" -> pure $ Section t Cmark contents+            "html" -> pure $ Section t TextHtml contents+            "css" -> pure $ Section t Css contents+            unsupportedFmt ->+                liftIO+                    $ throwIO+                    $ UnsupportedReturnFormat+                    $ "unknown returned " <> backend <> " format: " <> unsupportedFmt++loadImage :: Loader a Image+loadImage trace path = do+    trace $ LoadImage path+    pure $ (Sourced (FileSource path) Image)++loadAudio :: Loader a AudioFile+loadAudio trace path = do+    trace $ LoadVideo path+    pure $ (Sourced (FileSource path) AudioFile)++loadVideo :: Loader a VideoFile+loadVideo trace path = do+    trace $ LoadVideo path+    pure $ (Sourced (FileSource path) VideoFile)++loadRaw :: Loader a RawFile+loadRaw trace path = do+    trace $ LoadRaw path+    pure $ (Sourced (FileSource path) RawFile)++loadDocument :: Loader a DocumentFile+loadDocument trace path = do+    trace $ LoadDocument path+    pure $ (Sourced (FileSource path) DocumentFile)++loadCss :: Loader a CssFile+loadCss trace path = do+    trace $ LoadCss path+    pure $ (Sourced (FileSource path) CssFile)++loadFont :: Loader a WebfontFile+loadFont trace path = do+    trace $ LoadWebfont path+    pure $ (Sourced (FileSource path) WebfontFile)++loadJs :: Loader a JsFile+loadJs trace path = do+    trace $ LoadJs path+    pure $ (Sourced (FileSource path) JsFile)++loadHtml :: Loader a HtmlFile+loadHtml trace path = do+    trace $ LoadHtml path+    pure $ (Sourced (FileSource path) HtmlFile)++loadDotSource :: Loader a DotSourceFile+loadDotSource trace path = do+    trace $ LoadDotSource path+    pure $ (Sourced (FileSource path) DotSourceFile)++loadSite ::+    [(Text, Text)] ->+    Text ->+    [ExtraSectionType ext] ->+    (LogMsg ext -> IO ()) ->+    FilePath ->+    IO (Site ext)+loadSite vars pathPrefix extras trace dir = do+    paths <- listDirectory dir+    globalLibs <- loadTemplatingLibraries trace extras (libraryPaths paths)+    Site+        <$> articlesM globalLibs paths+        <*> imagesM paths+        <*> videosM paths+        <*> audiosM paths+        <*> cssM paths+        <*> fontsM paths+        <*> jsM paths+        <*> htmlM paths+        <*> dotsM paths+        <*> rawsM paths+        <*> docsM paths+  where+    -- Library-only files: a dedicated extension (not merely a naming+    -- convention on top of .cmark/.md) so an ordinary article can never be+    -- mistaken for one, or vice versa. They generate no target of their own+    -- -- 'articlesM' below never sees them, since their extension doesn't+    -- match its filter -- and are instead parsed for their+    -- @library.templating-lib@ sections into one shared table every article+    -- can import from. Sorted only so 'LoadTemplatingLibraryFile' tracing is+    -- in a stable, deterministic order; which file is processed first does+    -- not otherwise matter (see 'loadTemplatingLibraries').+    libraryPaths paths = List.sort [dir </> p | p <- paths, takeExtension p == ".cmark-tramaj"]+    articlesM globalLibs paths =+        traverse (loadArticle vars pathPrefix extras globalLibs trace)+            $ [dir </> p | p <- paths, takeExtension p `List.elem` [".md", ".cmark"]]+    imagesM paths =+        traverse (loadImage trace)+            $ [dir </> p | p <- paths, takeExtension p `List.elem` [".jpg", ".jpeg", ".png"]]+    cssM paths =+        traverse (loadCss trace)+            $ [dir </> p | p <- paths, takeExtension p `List.elem` [".css"]]+    fontsM paths =+        traverse (loadFont trace)+            $ [dir </> p | p <- paths, takeExtension p `List.elem` [".ttf", ".woff2"]]+    jsM paths =+        traverse (loadJs trace)+            $ [dir </> p | p <- paths, takeExtension p `List.elem` [".js"]]+    htmlM paths =+        traverse (loadHtml trace)+            $ [dir </> p | p <- paths, takeExtension p `List.elem` [".html"]]+    dotsM paths =+        traverse (loadDotSource trace)+            $ [dir </> p | p <- paths, takeExtension p == ".dot"]+    videosM paths =+        traverse (loadVideo trace)+            $ [dir </> p | p <- paths, takeExtension p `List.elem` [".webm", ".mp4"]]+    audiosM paths =+        traverse (loadAudio trace)+            $ [dir </> p | p <- paths, takeExtension p `List.elem` [".ogg", ".mp3", ".wav", ".midi", ".flac"]]+    rawsM paths =+        traverse (loadRaw trace)+            $ [dir </> p | p <- paths, takeExtension p `List.elem` [".txt", ".csv", ".json", ".dhall"], takeFileName p /= "kitchen-sink.json"]+    docsM paths =+        traverse (loadDocument trace)+            $ [dir </> p | p <- paths, takeExtension p `List.elem` [".pdf"]]
+ src/KitchenSink/Engine/Templating.hs view
@@ -0,0 +1,197 @@+{-# LANGUAGE DeriveAnyClass #-}+{-# LANGUAGE OverloadedRecordDot #-}++{- | Section evaluation backed by @tramaj-hs@ (the Haskell half of+<https://github.com/lucasdicioccio/tramaj>), the alternative to the+Dhall backend in "KitchenSink.Engine.SiteLoader".++Two modes, one per 'KitchenSink.Core.Section.Format' constructor:++  * 'evalJsonSection' ('Templating') expects the program to evaluate to a+    plain JSON value, the same @{format, contents}@ contract Dhall sections+    answer with.+  * 'evalDocSection' ('TemplatingDoc') expects the program to evaluate to a+    document tree, and folds it to HTML.++tramaj has a single grammar and evaluator: which of the two a program+produces follows from the value its root actually evaluated to (a 'Node' or+a plain JSON value), not from which of these two entry points was called.+Both below enforce the shape their caller expects, converting the other one+over rather than rejecting it, since both are meaningful JSON/HTML values in+their own right.++Both receive the same context, 'buildContext', which is the @kitchensink@+record Dhall sections get, reachable as @$ctx.datasets@, @$ctx.vars@,+@$ctx.file@, @$ctx.sectionNum@ and @$ctx.pathPrefix@.+-}+module KitchenSink.Engine.Templating (+    TemplatingError (..),+    buildContext,+    evalJsonSection,+    evalDocSection,+    parseLibrarySection,+    renderNodeHtml,+) where++import Data.Aeson qualified as Aeson+import Data.ByteString.Lazy qualified as LByteString+import Data.Char (isAlphaNum)+import Data.Map.Strict (Map)+import Data.Map.Strict qualified as Map+import Data.Scientific qualified as Scientific+import Data.Text qualified as Text+import Data.Text.Encoding qualified as Text+import Data.Text.Lazy qualified as LText+import Lucid qualified+import Lucid.Base qualified as Lucid+import Data.Void (Void)+import Text.Megaparsec (ParseErrorBundle, errorBundlePretty)+import Prelude (Double, Integer, (&&), (||))++import Tramaj.Ast (Program)+import Tramaj.Eval qualified as Templating+import Tramaj.Node (Node (..), NodeAttribute (..))+import Tramaj.Node qualified as Templating+import Tramaj.Parser qualified as Templating++import KitchenSink.Prelude++data TemplatingError+    = TemplatingParseError String+    | TemplatingEvalError Templating.EvalError+    | -- | attribute names the language allows but HTML does not+      TemplatingInvalidAttributeNames [Text]+    deriving (Show, Exception)++{- | The @$ctx@ a templating section is evaluated against, field-for-field the+@kitchensink@ record the Dhall backend builds. Unlike the Dhall path this needs+no schema inference round trip, so there is no way for the datasets to silently+degrade into an error string.+-}+buildContext :: FilePath -> Integer -> Text -> [(Text, Text)] -> Map Name Aeson.Value -> Aeson.Value+buildContext path sectionNum pathPrefix vars datasets =+    Aeson.object+        [ ("file", Aeson.toJSON (Text.pack path))+        , ("sectionNum", Aeson.toJSON sectionNum)+        , ("pathPrefix", Aeson.toJSON pathPrefix)+        , ("datasets", Aeson.toJSON datasets)+        , ("vars", Aeson.toJSON (Map.fromList vars))+        ]++-- | Expression-rooted mode: the section body evaluates to a JSON value. A+-- program whose root instead evaluated to a document is accepted too, folded+-- to its normative JSON representation ("Tramaj.Node"'s @nodeToJson@).+evalJsonSection :: Templating.LibraryTable -> Aeson.Value -> Text -> Either TemplatingError (Program, Aeson.Value)+evalJsonSection libtable ctx body = do+    prog <- adaptParse (Templating.parseProgram body)+    out <- adaptEval (Templating.evalProgram Templating.Concrete libtable ctx prog)+    let j = case out of+            Templating.OValue v -> v+            Templating.ONode n -> Templating.nodeToJson n+    pure (prog, j)++-- | Element-rooted mode: the section body evaluates to a document tree, which+-- this renders as HTML. A program whose root evaluated to a plain value+-- instead of a document is accepted too, wrapped as a lone text node.+evalDocSection :: Templating.LibraryTable -> Aeson.Value -> Text -> Either TemplatingError (Program, Text)+evalDocSection libtable ctx body = do+    prog <- parseLibrarySection body+    out <- adaptEval (Templating.evalProgram Templating.Concrete libtable ctx prog)+    let node = case out of+            Templating.ONode n -> n+            Templating.OValue v -> NText v Templating.noAnnotations+    txt <- renderNodeHtml node+    pure (prog, txt)++parseLibrarySection :: Text -> Either TemplatingError Program+parseLibrarySection body =+    adaptParse (Templating.parseProgram body)++adaptParse :: Either (ParseErrorBundle Text Void) a -> Either TemplatingError a+adaptParse = either (Left . TemplatingParseError . errorBundlePretty) Right++adaptEval :: Either Templating.EvalError a -> Either TemplatingError a+adaptEval = either (Left . TemplatingEvalError) Right++{- | Folds an evaluated document tree to HTML.++Attribute names are validated first: the language permits keys the DOM rejects+(the PureScript host has a @validateAttrNames@ pass for exactly this), and here+they would silently produce malformed markup instead of an error.+-}+renderNodeHtml :: Node -> Either TemplatingError Text+renderNodeHtml node =+    case badAttributeNames node of+        [] -> Right $ LText.toStrict $ Lucid.renderText $ nodeHtml node+        bad -> Left $ TemplatingInvalidAttributeNames bad++badAttributeNames :: Node -> [Text]+badAttributeNames (NText _ _) = []+badAttributeNames (NFragment children _) = foldMap badAttributeNames children+badAttributeNames (NElement _ attrs _ children _) =+    [k | NAttr k _ <- attrs, not (isValidAttributeName k)]+        <> foldMap badAttributeNames children++isValidAttributeName :: Text -> Bool+isValidAttributeName k =+    not (Text.null k) && Text.all ok k+  where+    ok c = isAlphaNum c || c == '-' || c == '_'++nodeHtml :: Node -> Lucid.Html ()+nodeHtml (NText v _) = Lucid.toHtml (displayValue v)+nodeHtml (NFragment children _) = traverse_ nodeHtml children+nodeHtml (NElement tag attrs _ children _)+    | isVoidElement tag = Lucid.with (Lucid.makeElementNoEnd tag) htmlAttrs+    | otherwise = Lucid.with (Lucid.makeElement tag) htmlAttrs (traverse_ nodeHtml children)+  where+    htmlAttrs :: [Lucid.Attribute]+    htmlAttrs = foldMap attributeHtml attrs++attributeHtml :: NodeAttribute -> [Lucid.Attribute]+attributeHtml (NAttr k v) = [Lucid.makeAttribute k (displayValue v)]+attributeHtml (NAction event key payload) =+    [ Lucid.makeAttribute "data-ks-action-event" event+    , Lucid.makeAttribute "data-ks-action-key" key+    , Lucid.makeAttribute "data-ks-action-payload" (encodeJsonText payload)+    ]++encodeJsonText :: Aeson.Value -> Text+encodeJsonText = Text.decodeUtf8 . LByteString.toStrict . Aeson.encode++{- | A best-effort rendering of a JSON scalar\/structure to display text, used+for an 'NText' value and an ordinary attribute's value. Mirrors tramaj's own+@str@ builtin closely enough for a demonstrator (a plain string passes+through unchanged, @null@\/booleans render as their literal spelling), but+does not attempt to reproduce its ECMAScript-exact number formatting since+that logic is internal to "Tramaj.Eval" and not exported.+-}+displayValue :: Aeson.Value -> Text+displayValue Aeson.Null = ""+displayValue (Aeson.Bool b) = if b then "true" else "false"+displayValue (Aeson.String s) = s+displayValue (Aeson.Number n) =+    case Scientific.floatingOrInteger n of+        Right (i :: Integer) -> Text.pack (show i)+        Left (_ :: Double) -> Text.pack (show n)+displayValue v = Text.decodeUtf8 $ LByteString.toStrict $ Aeson.encode v++isVoidElement :: Text -> Bool+isVoidElement tag = tag `elem` voidElements++voidElements :: [Text]+voidElements =+    [ "area"+    , "base"+    , "br"+    , "col"+    , "embed"+    , "hr"+    , "img"+    , "input"+    , "link"+    , "meta"+    , "source"+    , "track"+    , "wbr"+    ]
+ src/KitchenSink/Engine/Toolbox.hs view
@@ -0,0 +1,153 @@+{-# LANGUAGE OverloadedStrings #-}++-- | A single agents-exe bash-toolbox ("describe"/"run") wrapper around+-- kitchen-sink's own one-shot subcommands.+--+-- See <https://github.com/kitchensink-tech/agents-exe> documentation+-- @documentation\/binary-tool.md@ for the protocol this implements: a tool+-- is called with @describe@ (no other args) to print a JSON description of+-- its interface, or with @run@ followed by arguments to execute it, writing+-- its result to stdout.+--+-- This wrapper exposes exactly one argument: the raw kitchen-sink+-- subcommand and flags to run, e.g. @"produce --srcDir website-src --outDir+-- www"@. Only @produce@, @init@ and @newarticle@ are allowed, because+-- @serve@ and @multisite@ start long-running daemons and don't fit a+-- one-shot, stdout-returning toolbox tool.+module KitchenSink.Engine.Toolbox (toolboxMain) where++import Data.Aeson (encode, object, (.=))+import Data.ByteString.Lazy qualified as LBS+import Data.List (drop, isPrefixOf, words)+import Data.Text qualified as Text+import System.Directory (findExecutable)+import System.Environment (getArgs, getExecutablePath, lookupEnv)+import System.Exit (exitFailure, exitWith)+import System.FilePath ((</>))+import System.FilePath qualified as FilePath+import System.IO (hPutStrLn, putStr, stderr)+import System.Process (readProcessWithExitCode)++import KitchenSink.Prelude++-- | Subcommands of the real @kitchen-sink@ binary that are one-shot and+-- batch-friendly, and thus safe to expose through this toolbox tool. These+-- are the exact (lowercase) spellings the @kitchen-sink@ binary itself+-- expects on its command line.+allowedSubcommands :: [Text]+allowedSubcommands = ["produce", "init", "newarticle"]++toolboxMain :: IO ()+toolboxMain = do+    args <- getArgs+    case args of+        ["describe"] -> describe+        ("run" : rest) -> run rest+        _ -> usageError++usageError :: IO ()+usageError = do+    hPutStrLn stderr "usage: kitchen-sink-tool describe | kitchen-sink-tool run --command \"<subcommand and flags>\""+    exitFailure++describe :: IO ()+describe = do+    LBS.putStr (encode descriptionValue)+    putStrLn ""+  where+    descriptionValue =+        object+            [ "slug" .= ("kitchen_sink" :: Text)+            ,+                ( "description"+                    .= ( "Runs a one-shot kitchen-sink subcommand ("+                            <> Text.intercalate ", " allowedSubcommands+                            <> ") and returns its output. kitchen-sink is a static-site"+                            <> " generator; use this to produce a site, scaffold a new one,"+                            <> " or add a new article. Long-running daemons (serve, multisite)"+                            <> " are not supported."+                       )+                )+            ,+                ( "args"+                    .= [ object+                            [ "name" .= ("command" :: Text)+                            ,+                                ( "description"+                                    .= ( "The kitchen-sink subcommand and its flags, exactly as you would"+                                            <> " pass them on the command line, e.g. \"produce --srcDir website-src --outDir www\"."+                                            <> " Only "+                                            <> Text.intercalate ", " allowedSubcommands+                                            <> " are supported."+                                       )+                                )+                            , "type" .= ("string" :: Text)+                            , "backing_type" .= ("string" :: Text)+                            , "arity" .= ("single" :: Text)+                            , "mode" .= ("dashdashspace" :: Text)+                            ]+                       ]+                )+            ]++run :: [String] -> IO ()+run rest = case extractCommand rest of+    Nothing -> do+        hPutStrLn stderr "run: missing --command \"<subcommand and flags>\""+        exitFailure+    Just commandString ->+        case words commandString of+            [] -> do+                hPutStrLn stderr "run: --command was empty"+                exitFailure+            (subcommand : flags)+                | Text.toLower (Text.pack subcommand) `elem` allowedSubcommands -> do+                    kitchenSinkBin <- locateKitchenSink+                    let canonicalSubcommand = Text.unpack (Text.toLower (Text.pack subcommand))+                    (exitCode, out, err) <- readProcessWithExitCode kitchenSinkBin (canonicalSubcommand : flags) ""+                    putStr out+                    hPutStrLn stderr err+                    exitWith exitCode+                | otherwise -> do+                    hPutStrLn stderr $+                        "run: unsupported subcommand "+                            <> subcommand+                            <> " (only "+                            <> Text.unpack (Text.intercalate ", " allowedSubcommands)+                            <> " are supported by this toolbox tool)"+                    exitFailure++-- | Pull the value of @--command@ out of the raw @run@ arguments. Accepts+-- either @--command value@ (two args, the protocol's @dashdashspace@ mode)+-- or @--command=value@ (@dashdashequal@), in case a caller uses that+-- instead.+extractCommand :: [String] -> Maybe String+extractCommand [] = Nothing+extractCommand (x : xs)+    | x == "--command" = case xs of+        (v : _) -> Just v+        [] -> Nothing+    | "--command=" `isPrefixOf` x = Just (drop (length ("--command=" :: String)) x)+    | otherwise = extractCommand xs++-- | Find the real @kitchen-sink@ binary: first next to this executable+-- (the common case, since both are built/installed together), then falling+-- back to @$PATH@.+locateKitchenSink :: IO FilePath+locateKitchenSink = do+    override <- lookupEnv "KITCHEN_SINK"+    case override of+        Just p -> pure p+        Nothing -> do+            self <- getExecutablePath+            let sibling = FilePath.takeDirectory self </> "kitchen-sink"+            fromPath <- findExecutable sibling+            case fromPath of+                Just p -> pure p+                Nothing -> do+                    onPath <- findExecutable "kitchen-sink"+                    case onPath of+                        Just p -> pure p+                        Nothing -> do+                            hPutStrLn stderr "run: could not find the kitchen-sink binary (looked next to this executable and on PATH; set KITCHEN_SINK to override)"+                            exitFailure
+ src/KitchenSink/Engine/Track.hs view
@@ -0,0 +1,52 @@+{-# LANGUAGE OverloadedStrings #-}++module KitchenSink.Engine.Track where++import Control.Exception (SomeException)+import Data.Aeson (ToJSON)+import Data.ByteString (ByteString)+import Data.Int (Int64)+import GHC.Generics (Generic)+import Network.Wai (Request, rawPathInfo)+import Prod.Background as Background+import Prod.Tracer (Tracer (..))+import System.FSNotify qualified as FSNotify++import KitchenSink.Core.Build.Trace qualified as Build+import KitchenSink.Engine.Config (Command)+import KitchenSink.Engine.SiteLoader as SiteLoader+import KitchenSink.Prelude++-- we distinguish requested paths from effective target-path (for counters and other processing)+newtype RequestedPath = RequestedPath ByteString+    deriving (Eq, Ord, Show)++requestedPath :: Request -> RequestedPath+requestedPath = RequestedPath . rawPathInfo++data DevServerTrack ext+    = ProducedBuild+    | PublishedBuild String+    | WatchAdded Text (Maybe Text)+    | WatchRejected (Maybe Text) (Maybe Text)+    | WatchLeft (Maybe Text) WatchResult+    | FileWatch FSNotify.Event+    | SiteReloaded (Background.Track ())+    | SiteReloadException SomeException+    | TargetRequested RequestedPath+    | TargetMissing ByteString+    | TargetBuilt ByteString Int64+    | Loading (SiteLoader.LogMsg ext)+    | BlogTargetTrace Build.Trace+    | CommandRan Command String+    deriving (Show)++blogTargetTracer :: Tracer IO (DevServerTrack ext) -> Build.Tracer+blogTargetTracer t = runTracer t . BlogTargetTrace++data WatchResult+    = Reloaded+    | Disappeared+    | Respawned+    deriving (Generic, Show)+instance ToJSON WatchResult
+ src/KitchenSink/Engine/Utils.hs view
@@ -0,0 +1,33 @@+{-# LANGUAGE DataKinds #-}++module KitchenSink.Engine.Utils where++import Data.Aeson (FromJSON, decode, eitherDecode)+import Data.Bifunctor (first)+import Data.ByteString.Lazy qualified as LByteString+import Data.Maybe (fromMaybe)+import KitchenSink.Prelude+import System.FilePath.Posix (takeExtension, (</>))++-- | Loads a JSON configuration file, with a readable reason when it cannot be+-- loaded (including the removed Dhall format).+loadConfigFile :: (FromJSON a) => FilePath -> IO (Either String a)+loadConfigFile path+    | takeExtension path == ".dhall" =+        pure $ Left (path <> ": Dhall configuration files are no longer supported; write the same stanzas as JSON")+    | otherwise = first ((path <> ": ") <>) . eitherDecode <$> LByteString.readFile path++loadJSONFile :: (FromJSON a) => FilePath -> IO (Maybe a)+loadJSONFile path =+    decode <$> LByteString.readFile path++mio :: Maybe (IO ()) -> IO ()+mio = fromMaybe (pure ())++kitshenSinkJsonFilePath ::+    FilePath ->+    Maybe FilePath ->+    FilePath+kitshenSinkJsonFilePath base preferred =+    let fallback = base </> "kitchen-sink.json"+     in fromMaybe fallback (preferred)
+ src/KitchenSink/Layout/Base.hs view
@@ -0,0 +1,29 @@+module KitchenSink.Layout.Base where++import KitchenSink.Core.Build.Site (Site)+import KitchenSink.Core.Build.Target (ExecRoot, OutputPrefix, SourceLocation, Target)+import KitchenSink.Core.Section (ExtraSectionType)+import KitchenSink.Prelude++data Layout ext meta summary = Layout+    { siteTargets :: ExecRoot -> OutputPrefix -> meta -> Site ext -> [Target ext summary]+    , siteDiagnostics :: Site ext -> [Diagnostic]+    -- ^ problems found in the sources that 'siteTargets' works around (an+    -- unknown layout falling back to the default one, a generator section that+    -- cannot be read, ...), for the engine to report at load time+    , extraSectiontypes :: [ExtraSectionType ext]+    }++data Severity+    = -- | the site is still built as intended, modulo a fallback+      Warning+    | -- | part of the site could not be built+      Failure+    deriving (Show, Eq)++data Diagnostic = Diagnostic+    { severity :: Severity+    , source :: SourceLocation+    , message :: Text+    }+    deriving (Show, Eq)
+ src/KitchenSink/Layout/Blog.hs view
@@ -0,0 +1,17 @@+module KitchenSink.Layout.Blog (+    module KitchenSink.Layout.Blog.Metadata,+    module KitchenSink.Layout.Base,+    layout,+) where++import KitchenSink.Layout.Base (Layout (..))+import KitchenSink.Layout.Blog.Metadata (MetaData (..))+import KitchenSink.Layout.Blog.Targets qualified as Targets++layout :: Layout () MetaData Targets.TargetSummary+layout =+    Layout+        { siteTargets = Targets.siteTargets+        , siteDiagnostics = Targets.siteDiagnostics+        , extraSectiontypes = []+        }
+ src/KitchenSink/Layout/Blog/Analyses.hs view
@@ -0,0 +1,15 @@+module KitchenSink.Layout.Blog.Analyses (+    module KitchenSink.Layout.Blog.Analyses.ArticleInfos,+    module KitchenSink.Layout.Blog.Analyses.FileCount,+    module KitchenSink.Layout.Blog.Analyses.GlossaryGrouping,+    module KitchenSink.Layout.Blog.Analyses.SiteGraph,+    module KitchenSink.Layout.Blog.Analyses.TopicStats,+    module KitchenSink.Layout.Blog.Analyses.Wordcount,+) where++import KitchenSink.Layout.Blog.Analyses.ArticleInfos+import KitchenSink.Layout.Blog.Analyses.FileCount+import KitchenSink.Layout.Blog.Analyses.GlossaryGrouping+import KitchenSink.Layout.Blog.Analyses.SiteGraph+import KitchenSink.Layout.Blog.Analyses.TopicStats+import KitchenSink.Layout.Blog.Analyses.Wordcount
+ src/KitchenSink/Layout/Blog/Analyses/ArticleInfos.hs view
@@ -0,0 +1,105 @@+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE DerivingVia #-}++-- note: a problem to adding datasets here is that we have not access to the whole URL(and-section-index)+-- doing so would require some (more) circular references between the target-computations+module KitchenSink.Layout.Blog.Analyses.ArticleInfos (+    analyzeArticle,+    ArticleInfos (..),+    HashTagInfo (..),+    ImageInfo (..),+    LinkInfo (..),+    SnippetInfo (..),+) where++import Data.Aeson (FromJSON, ToJSON)+import Data.List qualified as List+import GHC.Generics (Generic)++import KitchenSink.Commonmark.Free as CMark+import KitchenSink.Core.Assembler.Sections+import KitchenSink.Core.Build.Target (runAssembler)+import KitchenSink.Core.Section+import KitchenSink.Layout.Blog.Extensions (Article)+import KitchenSink.Prelude++import KitchenSink.Layout.Blog.Analyses.SkyLine++data ArticleInfos = ArticleInfos+    { ast :: [CMark.Block]+    , linkInfos :: [LinkInfo]+    , imageInfos :: [ImageInfo]+    , snippetInfos :: [SnippetInfo]+    , hashtagInfos :: [HashTagInfo]+    , skyline :: SkyLine+    }+    deriving (Show, Generic)+instance ToJSON ArticleInfos++data LinkInfo = LinkInfo {linkURL :: Text, linkText :: Text}+    deriving (Show, Generic)+instance ToJSON LinkInfo+instance FromJSON LinkInfo++data SnippetInfo = SnippetInfo {snippetType :: Text, snippetContents :: Text}+    deriving (Show, Generic)+instance ToJSON SnippetInfo+instance FromJSON SnippetInfo++data ImageInfo = ImageInfo {imageURL :: Text, imageText :: Text}+    deriving (Show, Generic)+instance ToJSON ImageInfo+instance FromJSON ImageInfo++data HashTagInfo = HashTagInfo {hashtagValue :: Text}+    deriving (Show, Generic, Eq, Ord)+instance ToJSON HashTagInfo+instance FromJSON HashTagInfo++articleCMarks :: Article [Text] -> [CMark.Block]+articleCMarks art =+    case runAssembler (getSections art isMainContent >>= traverse dumpCMark . List.filter isCmark) of+        Left _ -> []+        Right xs -> fmap extract xs+  where+    isCmark (Section _ Cmark _) = True+    isCmark _ = False++analyzeArticle :: Article [Text] -> ArticleInfos+analyzeArticle art =+    let xs = articleCMarks art+     in ArticleInfos+            (xs)+            (mconcat [findLinksInSection x | x <- xs])+            (mconcat [findImagesInSection x | x <- xs])+            (mconcat [findSnippetsInSection x | x <- xs])+            (List.nub $ mconcat [findHashTagsInSection x | x <- xs])+            (mconcat [sectionSkyLine x | x <- xs])++findLinksInSection :: CMark.Block -> [LinkInfo]+findLinksInSection s = do+    -- list monad!+    il <- blockInlines (s)+    Link dst ttl _ <- inlineChunks il+    pure $ LinkInfo dst ttl++findSnippetsInSection :: CMark.Block -> [SnippetInfo]+findSnippetsInSection s = do+    -- list monad!+    b <- blockUniverse (s)+    CodeBlock typ_ raw <- blockChunks b+    pure $ SnippetInfo typ_ raw++findHashTagsInSection :: CMark.Block -> [HashTagInfo]+findHashTagsInSection s = do+    -- list monad!+    il <- blockInlines (s)+    HashTag txt <- inlineChunks il+    pure $ HashTagInfo txt++findImagesInSection :: CMark.Block -> [ImageInfo]+findImagesInSection s = do+    -- list monad!+    il <- blockInlines (s)+    CMark.Image dst ttl _ <- inlineChunks il+    pure $ ImageInfo dst ttl
+ src/KitchenSink/Layout/Blog/Analyses/FileCount.hs view
@@ -0,0 +1,32 @@+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE DerivingVia #-}++module KitchenSink.Layout.Blog.Analyses.FileCount (+    filecounts,+) where++import Data.Aeson (ToJSON)+import GHC.Generics (Generic)++import KitchenSink.Core.Build.Site (articles, audioFiles, cssFiles, dotSourceFiles, images, jsFiles, rawFiles, videoFiles)+import KitchenSink.Layout.Blog.Extensions (Site)+import KitchenSink.Prelude++data FileCount = FileCount+    { srctype :: Text+    , count :: Int+    }+    deriving (Generic, Show)+instance ToJSON FileCount++filecounts :: Site -> [FileCount]+filecounts site =+    [ FileCount "articles" (length $ articles site)+    , FileCount "images" (length $ images site)+    , FileCount "videos" (length $ videoFiles site)+    , FileCount "audios" (length $ audioFiles site)+    , FileCount "raws" (length $ rawFiles site)+    , FileCount "css" (length $ cssFiles site)+    , FileCount "js" (length $ jsFiles site)+    , FileCount "dot" (length $ dotSourceFiles site)+    ]
+ src/KitchenSink/Layout/Blog/Analyses/GlossaryGrouping.hs view
@@ -0,0 +1,57 @@+module KitchenSink.Layout.Blog.Analyses.GlossaryGrouping (+    WholeGlossary (..),+    buildWholeGlossary,+    glossaryEntries,+    glossaryTerms,+) where++import Data.Map.Strict (Map)+import Data.Map.Strict qualified as Map++import KitchenSink.Core.Assembler.Sections+import KitchenSink.Core.Build.Target (Sourced (..), runAssembler)+import KitchenSink.Core.Section+import KitchenSink.Layout.Blog.Extensions (Article, Target)+import KitchenSink.Prelude++type TargetArticle k = (Target (), Article [Text], k)++type Term = Text+type Definition = Text++data WholeGlossary = WholeGlossary+    { byTerm :: Map Term [TargetArticle Definition]+    }++{- | Glossary terms in ascending order.++Implementation relies on Map.keys to return values in ascending order.+-}+glossaryTerms :: WholeGlossary -> [Text]+glossaryTerms = Map.keys . byTerm++{- | Glossary entries in ascending order.++Implementation relies on Map.toAscList to return values in ascending order.+-}+glossaryEntries :: WholeGlossary -> [(Text, [TargetArticle Definition])]+glossaryEntries = Map.toAscList . byTerm++buildWholeGlossary :: [Sourced (Article [Text])] -> (Sourced (Article [Text]) -> Target ()) -> WholeGlossary+buildWholeGlossary arts mkTarget =+    WholeGlossary indexByTerm+  where+    indexByTerm :: Map Text [TargetArticle Definition]+    indexByTerm =+        Map.fromListWith (<>)+            $ [ (term t, [(mkTarget s, art, definition t)])+              | s@(Sourced _ art) <- arts+              , t <- getGlossaryTerms art+              ]++    getGlossaryTerms :: Article [Text] -> [GlossaryTerm]+    getGlossaryTerms art =+        either (const []) glossary+            $ runAssembler+            $ fmap extract+            $ json @() @GlossaryData art isGlossary
+ src/KitchenSink/Layout/Blog/Analyses/SiteGraph.hs view
@@ -0,0 +1,151 @@+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE DerivingVia #-}++module KitchenSink.Layout.Blog.Analyses.SiteGraph (+    TopicGraph (..),+    topicsgraph,+    Node (..),+    ExternalSitesInfo (..),+) where++import Data.Aeson (FromJSON, ToJSON)+import Data.List qualified as List+import Data.Map.Strict qualified as Map+import Data.Text qualified as Text+import GHC.Generics (Generic)++import KitchenSink.Core.Build.Target (destination, destinationUrl)+import KitchenSink.Layout.Blog.Destinations+import KitchenSink.Layout.Blog.Extensions (Target)+import KitchenSink.Prelude++import KitchenSink.Layout.Blog.Analyses.ArticleInfos+import KitchenSink.Layout.Blog.Analyses.SkyLine+import KitchenSink.Layout.Blog.Analyses.TopicStats++type NodeKey = Text++type URL = Text++data Node+    = TopicNode URL Int+    | HashTagNode URL Int+    | ArticleNode URL Int+    | ImageNode URL+    | ExternalKitchenSinkSiteNode URL+    deriving (Generic, Show)+instance ToJSON Node+instance FromJSON Node++data TopicGraph = TopicGraph+    { nodes :: [(NodeKey, Node)]+    , edges :: [(NodeKey, NodeKey)]+    }+    deriving (Generic, Show)+instance ToJSON TopicGraph+instance FromJSON TopicGraph++data ExternalSitesInfo = ExternalSitesInfo+    { externalKitchenSinks :: [URL]+    }++topicsgraph :: UrlPrefix -> ExternalSitesInfo -> TopicStats -> TopicGraph+topicsgraph urlPrefix external stats =+    TopicGraph+        (topicNodes <> hashtagNodes <> articleNodes <> imagesNodes <> externalKSSitesNodes)+        (topicArticleEdges <> hashtagArticleEdges <> articleArticleEdges <> articleImageEdges <> articleExternalSiteEdges)+  where+    topicNodes, hashtagNodes, articleNodes, externalKSSitesNodes :: [(NodeKey, Node)]+    topicNodes = [(topicKey t, TopicNode (destinationUrl $ destTopic urlPrefix "" t) (length xs)) | (t, xs) <- Map.toList (byTopic stats)]+    hashtagNodes = [let t = hashtagValue tag in (hashtagKey tag, HashTagNode (destinationUrl $ destHashTag urlPrefix "" t) (length xs)) | (tag, xs) <- Map.toList (byHashTag stats)]+    articleNodes = [(articleKey t, ArticleNode (targetUrl t) histsize) | (t, histsize) <- uniqueTargetArticles]+    imagesNodes = [(imageKey url, ImageNode url) | url <- uniqueImages]+    externalKSSitesNodes = [(externalSiteKey url, ExternalKitchenSinkSiteNode url) | url <- externalKitchenSinks external]++    topicArticleEdges :: [(NodeKey, NodeKey)]+    topicArticleEdges =+        mconcat+            $ fmap (\(topic, xs) -> [(topicKey topic, articleKey tgt) | (tgt, _) <- xs])+            $ Map.toList (byTopic stats)++    hashtagArticleEdges :: [(NodeKey, NodeKey)]+    hashtagArticleEdges =+        mconcat+            $ fmap (\(tag, xs) -> [(hashtagKey tag, articleKey tgt) | (tgt, _) <- xs])+            $ Map.toList (byHashTag stats)++    allLinks :: [(Target (), LinkInfo)]+    allLinks = do+        -- list monad!+        (from, a) <- knownTargets stats+        link <- linkInfos $ analyzeArticle a+        pure (from, link)++    articleArticleEdges :: [(NodeKey, NodeKey)]+    articleArticleEdges = do+        -- list monad!+        (from, link) <- allLinks+        toKey <- maybe [] (: []) (lookupArticleLink link)+        pure (articleKey from, toKey)++    articleExternalSiteEdges :: [(NodeKey, NodeKey)]+    articleExternalSiteEdges = do+        -- list monad!+        (from, link) <- allLinks+        toKey <- maybe [] (: []) (lookupExternalSiteLink link)+        pure (articleKey from, toKey)++    articleImageEdges :: [(NodeKey, NodeKey)]+    articleImageEdges = do+        -- list monad!+        ((from, _), infos) <- List.zip (knownTargets stats) analyses+        img <- imageInfos $ infos+        pure (articleKey from, imageKey $ imageURL img)++    hashtagKey t = "#" <> hashtagValue t+    topicKey t = "topic:" <> t+    articleKey t = "article:" <> targetUrl t+    imageKey t = "image:" <> t+    externalSiteKey t = "site:" <> t++    targetUrl t = destinationUrl (destination t)++    uniqueTargetArticles :: [(Target (), Int)]+    uniqueTargetArticles = do+        ((from, _), infos) <- List.zip (knownTargets stats) analyses+        pure (from, articleWeight infos)++    articleWeight :: ArticleInfos -> Int+    articleWeight info =+        sum+            $ fmap skylineItemWeight+            $ skylineItems+            $ skyline info++    skylineItemWeight :: SkyLineItem -> Int+    skylineItemWeight x = case x of+        HeaderMark _ _ -> 30+        ImageMark _ _ -> 10+        TextualMark w _ -> w++    analyses :: [ArticleInfos]+    analyses = fmap (analyzeArticle . snd) $ knownTargets stats++    uniqueImages :: [Text]+    uniqueImages = List.nub $ do+        infos <- analyses+        img <- imageInfos $ infos+        pure $ imageURL img++    lookupArticleLink :: LinkInfo -> Maybe NodeKey+    lookupArticleLink (LinkInfo url _) =+        fmap articleKey+            $ List.find (\t -> targetUrl t == url)+            $ fmap fst+            $ knownTargets stats++    lookupExternalSiteLink :: LinkInfo -> Maybe NodeKey+    lookupExternalSiteLink (LinkInfo url _) =+        fmap externalSiteKey+            $ List.find (\t -> t `Text.isPrefixOf` url)+            $ externalKitchenSinks external
+ src/KitchenSink/Layout/Blog/Analyses/SkyLine.hs view
@@ -0,0 +1,82 @@+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE DerivingVia #-}++module KitchenSink.Layout.Blog.Analyses.SkyLine (+    SkyLine (..),+    SkyLineItem (..),+    sectionSkyLine,+) where++import Data.Aeson (FromJSON, ToJSON)+import Data.List qualified as List+import Data.Text qualified as Text+import GHC.Generics (Generic)+import Prelude (succ, (-))++import KitchenSink.Commonmark.Free as CMark+import KitchenSink.Prelude++newtype SkyLine = SkyLine {skylineItems :: [SkyLineItem]}+    deriving (Show)+    deriving (Generic)+    deriving (Semigroup) via [SkyLineItem]+    deriving (Monoid) via [SkyLineItem]+instance ToJSON SkyLine+instance FromJSON SkyLine++data SkyLineItem+    = HeaderMark Text HeadingLevels+    | ImageMark Text Text+    | TextualMark TextWeight HeadingLevels+    deriving (Show)+    deriving (Generic)+instance ToJSON SkyLineItem+instance FromJSON SkyLineItem++type TextWeight = Int -- todo newtype over Sum Int+type HeadingLevels = [Int] -- todo newtype over nonempty list++sectionSkyLine :: CMark.Block -> SkyLine+sectionSkyLine s =+    let u = s : blockUniplate s+     in SkyLine $ List.reverse $ snd $ foldSkylineBlocks [c | b <- u, c <- blockChunks b]+  where+    foldSkylineBlocks :: [CMark.BlockChunk] -> (HeadingLevels, [SkyLineItem])+    foldSkylineBlocks = List.foldl' foldOneBlock ([0], [])++    foldOneBlock :: (HeadingLevels, [SkyLineItem]) -> CMark.BlockChunk -> (HeadingLevels, [SkyLineItem])+    foldOneBlock (hdrs, xs) b =+        let hdrs' = case b of+                Heading n _ -> updateHeaders n hdrs+                _ -> hdrs+            item = case b of+                Heading _ il ->+                    HeaderMark (mconcat $ fmap flattenText $ inlineChunks $ il) hdrs'+                x ->+                    let directInlines = blockChunkInlines x+                        childrenInlines = List.concatMap blockInlines (blockChunkBlocks x)+                        allInlines = childrenInlines <> directInlines+                     in TextualMark (List.sum $ fmap go allInlines) hdrs'+         in (hdrs', item : xs)++    updateHeaders :: Int -> [Int] -> [Int]+    updateHeaders level counters =+        case List.drop (List.length counters - level) counters of+            [] -> 1 : counters+            cnt : levelcounters -> succ cnt : levelcounters++    go il = List.sum [f c | c <- inlineChunks il]+    f x = case x of+        Str t -> wc t+        Link _ t _ -> wc t+        Code t -> wc t+        Entity _ -> 1+        EscapedChar _ -> 1+        _ -> 0+    flattenText x = case x of+        Str t -> t+        Link _ t _ -> t+        Code t -> t+        _ -> mempty++    wc = List.length . List.filter (\x -> not $ List.elem x ["", ":"]) . Text.words
+ src/KitchenSink/Layout/Blog/Analyses/TextRender.hs view
@@ -0,0 +1,85 @@+{-# LANGUAGE OverloadedRecordDot #-}++module KitchenSink.Layout.Blog.Analyses.TextRender where++import Commonmark.Types (Format (..), ListSpacing, ListType (..))+import Data.Char qualified as Char+import Data.Text qualified as Text+import Data.Text.Lazy qualified as LText+import Data.Text.Lazy.Builder qualified as Builder+import Data.Text.Lazy.Builder.Int qualified as Builder+import Numeric (showHex)++import KitchenSink.Commonmark.Free qualified as FreeCommonmark+import KitchenSink.Core.Assembler.Sections+import KitchenSink.Core.Build.Target (runAssembler)+import KitchenSink.Core.Section (extract)+import KitchenSink.Layout.Blog.Extensions (Article, Section)+import KitchenSink.Prelude++textRender :: Article [Text] -> Text+textRender art =+    case runAssembler (getSections art isMainContent) of+        Left _ -> "\n"+        Right xs -> textRenderSections xs++textRenderSections :: [Section [Text]] -> Text+textRenderSections xs = Text.unlines $ fmap go xs+  where+    go :: Section [Text] -> Text+    go sec =+        case runAssembler $ dumpCMark sec of+            Left _ -> "\n"+            Right html -> makePlainText $ extract html++makePlainText :: (FreeCommonmark.Block) -> Text+makePlainText bRoot =+    renderBlock "" bRoot+  where+    renderBlock :: Text -> FreeCommonmark.Block -> Text+    renderBlock pfx b1 = Text.unlines [pfx <> renderBlockChunk bc | bc <- b1.blockChunks]++    renderBlockChunk :: FreeCommonmark.BlockChunk -> Text+    renderBlockChunk bc1 =+        case bc1 of+            FreeCommonmark.Paragraph sub ->+                renderInline sub <> "\n"+            FreeCommonmark.Plain sub -> renderInline sub+            FreeCommonmark.ThematicBreak -> "-----------------------------\n"+            FreeCommonmark.BlockQuote sub -> renderBlock "    " sub+            FreeCommonmark.CodeBlock fmt t ->+                mconcat+                    ["```", fmt, "\n", t, "```\n"]+            FreeCommonmark.Heading n sub ->+                mconcat+                    [Text.replicate n "#", " ", renderInline sub, "\n"]+            FreeCommonmark.RawBlock (Format fmt) t ->+                mconcat ["```", fmt, "\n", t, "```\n"]+            FreeCommonmark.List ltype lspacing subz -> Text.unlines (fmap (renderBlock (listPrefix ltype lspacing)) subz)+            FreeCommonmark.NestedDivBlock sub -> renderBlock "    " sub+            FreeCommonmark.ReferenceLinkDefinition _ _ -> "" -- todo+    listPrefix :: ListType -> ListSpacing -> Text+    listPrefix (BulletList _) _ = "- "+    listPrefix (OrderedList n _ _) _ = "- ." <> intToText n <> " "++    intToText :: Int -> Text+    intToText = LText.toStrict . Builder.toLazyText . Builder.decimal++    renderInline :: FreeCommonmark.Inline -> Text+    renderInline i = mconcat $ fmap renderInlineChunk i.inlineChunks++    renderInlineChunk :: FreeCommonmark.InlineChunk -> Text+    renderInlineChunk ic = case ic of+        FreeCommonmark.LineBreak -> "--------------------------------------------"+        FreeCommonmark.SoftBreak -> " "+        (FreeCommonmark.Str t) -> t+        (FreeCommonmark.Entity t) -> t+        (FreeCommonmark.EscapedChar c) -> Text.pack ("\\x" <> showHex (Char.ord c) "")+        (FreeCommonmark.Emph sub) -> mconcat ["_", renderInline sub, "_"]+        (FreeCommonmark.Strong sub) -> mconcat ["**", renderInline sub, "**"]+        (FreeCommonmark.Link t0 t1 sub) -> mconcat ["[", renderInline sub, "]", "(", t0, " ", t1, ")"]+        (FreeCommonmark.Image t0 t1 sub) -> mconcat ["![", renderInline sub, "]", "(", t0, " ", t1, ")"]+        (FreeCommonmark.Code t) -> mconcat ["`", t, "`"]+        (FreeCommonmark.HashTag t) -> mconcat ["#", t]+        (FreeCommonmark.RawInline (Format fmt) t) -> mconcat ["```", fmt, "\n", t, "```"]+        (FreeCommonmark.SpanInline sub) -> renderInline sub
+ src/KitchenSink/Layout/Blog/Analyses/TopicStats.hs view
@@ -0,0 +1,56 @@+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE DerivingVia #-}++module KitchenSink.Layout.Blog.Analyses.TopicStats (+    TopicStats (..),+    buildTopicStats,+    allTopicNames,+) where++import Data.Map.Strict (Map)+import Data.Map.Strict qualified as Map++import KitchenSink.Core.Assembler.Sections+import KitchenSink.Core.Build.Target (Sourced (..), runAssembler)+import KitchenSink.Core.Section+import KitchenSink.Layout.Blog.Analyses.ArticleInfos (HashTagInfo, analyzeArticle, hashtagInfos)+import KitchenSink.Layout.Blog.Extensions (Article, Assembler, Target)+import KitchenSink.Prelude++type TagValue = HashTagInfo++data TopicStats = TopicStats+    { byTopic :: Map TopicName [(Target (), Article [Text])]+    , byHashTag :: Map TagValue [(Target (), Article [Text])]+    , knownTargets :: [(Target (), Article [Text])]+    }++allTopicNames :: TopicStats -> [TopicName]+allTopicNames = Map.keys . byTopic++buildTopicStats :: [Sourced (Article [Text])] -> (Sourced (Article [Text]) -> Target ()) -> TopicStats+buildTopicStats arts mkTarget =+    TopicStats indexByTopic indexByHashTag [(mkTarget sa, a) | sa@(Sourced _ a) <- arts]+  where+    indexByTopic =+        Map.fromListWith (<>)+            $ [ (top, [(mkTarget s, art)])+              | s@(Sourced _ art) <- arts+              , top <- getTopicNames art+              ]++    indexByHashTag =+        Map.fromListWith (<>)+            $ [ (tag, [(mkTarget s, art)])+              | s@(Sourced _ art) <- arts+              , tag <- getHashtagNames art+              ]++    getTopicNames :: Article [Text] -> [TopicName]+    getTopicNames art = either (const []) topics . runAssembler $ (topicSection art)++    topicSection :: Article [Text] -> Assembler TopicData+    topicSection art = extract <$> json @() @TopicData art isTopic++    getHashtagNames :: Article [Text] -> [HashTagInfo]+    getHashtagNames art = hashtagInfos $ analyzeArticle art
+ src/KitchenSink/Layout/Blog/Analyses/Wordcount.hs view
@@ -0,0 +1,22 @@+module KitchenSink.Layout.Blog.Analyses.Wordcount where++import Commonmark qualified+import Data.Text qualified as Text++import KitchenSink.Core.Assembler.Sections+import KitchenSink.Core.Build.Target (runAssembler)+import KitchenSink.Core.Section (extract)+import KitchenSink.Layout.Blog.Extensions (Section)+import KitchenSink.Prelude++wordcount :: Text -> Int+wordcount = length . Text.words++contentWordCount :: [Section [Text]] -> Int+contentWordCount xs = sum $ fmap go xs+  where+    go :: Section [Text] -> Int+    go sec =+        case runAssembler $ parseCMark sec of+            Left _ -> sum $ [wordcount w | w <- extract sec]+            Right html -> wordcount $ Commonmark.toPlainText $ extract html
+ src/KitchenSink/Layout/Blog/ArticleTypes.hs view
@@ -0,0 +1,72 @@+module KitchenSink.Layout.Blog.ArticleTypes where++import Data.List qualified as List++import KitchenSink.Core.Assembler (runAssembler)+import KitchenSink.Core.Assembler.Sections+import KitchenSink.Core.Build.Site ()+import KitchenSink.Core.Section hiding (Section)+import KitchenSink.Layout.Blog.Extensions (Article, AssemblerError)+import KitchenSink.Prelude++-- | Internal relay type for picking a given rendering function.+data ArticleLayout+    = UnknownLayout Text+    | ErrorLayout AssemblerError+    | PublishedArticle+    | UpcomingArticle+    | ArchivedArticle+    | IndexPage+    | TopicListingTemplate+    | HashTagListingTemplate+    | GlossaryPage+    | SinglePageApp+    | ImageGallery+    | VariousListing+    | DocumentationPage+    | CorporatePage+    | DynamicPage+    deriving (Show, Eq)++{- | Layouts that never get an ordinary static article target: the+consolidated listings (topics, hashtags, glossary) are built from the whole+site by dedicated targets instead, and 'DynamicPage' is request-time-only+(see "KitchenSink.Engine.Dynamic") so it has no static rendering at all --+'produce' and the dev-server's @\/dev\/targets@ simply skip it.+-}+isSpecialLayout :: ArticleLayout -> Bool+isSpecialLayout l = l `List.elem` [TopicListingTemplate, HashTagListingTemplate, GlossaryPage, DynamicPage]++layoutNameFor :: Article [Text] -> ArticleLayout+layoutNameFor art =+    case runAssembler (json @() @BuildInfoData art isBuildInfo) of+        Left err -> ErrorLayout err+        Right s ->+            let binfo = extract s+             in case publicationStatus binfo of+                    Nothing -> effectiveLayout Public (layout binfo)+                    Just status -> effectiveLayout status (layout binfo)++-- | TODO: find a proper name for the user-input layout-type that we find in the BuildInfo section.+effectiveLayout :: PublicationStatus -> Text -> ArticleLayout+effectiveLayout Public "article" = PublishedArticle+effectiveLayout Public "index" = IndexPage+effectiveLayout Public "topics" = TopicListingTemplate+effectiveLayout Public "hashtags" = HashTagListingTemplate+effectiveLayout Public "glossary" = GlossaryPage+effectiveLayout Public "application" = SinglePageApp+effectiveLayout Public "gallery" = ImageGallery+effectiveLayout Public "listing" = VariousListing+effectiveLayout Public "documentation" = DocumentationPage+effectiveLayout Public "corporate" = CorporatePage+effectiveLayout Public "dynamic" = DynamicPage+effectiveLayout Public t = UnknownLayout t+effectiveLayout Upcoming "article" = UpcomingArticle+effectiveLayout Upcoming "application" = SinglePageApp+effectiveLayout Upcoming "gallery" = ImageGallery+effectiveLayout Upcoming "listing" = VariousListing+effectiveLayout Upcoming "documentation" = DocumentationPage+effectiveLayout Upcoming "corporate" = CorporatePage+effectiveLayout Upcoming t = UnknownLayout t+effectiveLayout Archived "article" = ArchivedArticle+effectiveLayout Archived t = UnknownLayout t
+ src/KitchenSink/Layout/Blog/Destinations.hs view
@@ -0,0 +1,181 @@+module KitchenSink.Layout.Blog.Destinations+where++import Data.Text qualified as Text+import System.FilePath.Posix (takeBaseName, takeFileName, (</>))++import KitchenSink.Core.Build.Target (DestinationLocation (..), OutputPrefix, SourceLocation (..))+import KitchenSink.Core.Section (GeneratorInstructionsData (..))+import KitchenSink.Core.Section.Base as Core+import KitchenSink.Core.Section.Payloads (TopicName)+import KitchenSink.Prelude++-- | Root-relative URL prefix from site config (e.g. @"/tramaj"@, or @""@).+type UrlPrefix = Text.Text++topicFileName :: TopicName -> FilePath+topicFileName t = Text.unpack (Text.replace " " "-" t) <> ".html"++topicAtomName :: TopicName -> FilePath+topicAtomName t = Text.unpack (Text.replace " " "-" t) <> ".atom"++hashtagFileName :: TopicName -> FilePath+hashtagFileName t = Text.unpack t <> ".html"++hashtagAtomName :: TopicName -> FilePath+hashtagAtomName t = Text.unpack t <> ".atom"++data GenFileExtension+    = GenPngFile++extensionString :: GenFileExtension -> String+extensionString GenPngFile = ".png"++-- | Prepends the configured site path-prefix (e.g. @"/tramaj"@, or @""@ when+-- hosted at the domain root) to a root-relative URL. Every @dest*@ function+-- below routes its 'Url' through this so a site hosted under a GitHub+-- Pages project subpath gets correct links.+withPrefix :: UrlPrefix -> String -> Text.Text+withPrefix prefix path = prefix <> Text.pack path++destTopic :: UrlPrefix -> OutputPrefix -> TopicName -> DestinationLocation+destTopic urlPrefix prefix topic =+    VirtualFileDestination+        (withPrefix urlPrefix $ "/topics/" <> topicFileName topic)+        (prefix </> "topics" </> topicFileName topic)++destTopicAtom :: UrlPrefix -> OutputPrefix -> TopicName -> DestinationLocation+destTopicAtom urlPrefix prefix topic =+    VirtualFileDestination+        (withPrefix urlPrefix $ "/topics/" <> topicAtomName topic)+        (prefix </> "topics" </> topicAtomName topic)++type HashTagName = Text.Text -- TODO: move me++destHashTag :: UrlPrefix -> OutputPrefix -> HashTagName -> DestinationLocation+destHashTag urlPrefix prefix tag =+    VirtualFileDestination+        (withPrefix urlPrefix $ "/hashtags/" <> hashtagFileName tag)+        (prefix </> "hashtags" </> hashtagFileName tag)++destHashTagAtom :: UrlPrefix -> OutputPrefix -> HashTagName -> DestinationLocation+destHashTagAtom urlPrefix prefix tag =+    VirtualFileDestination+        (withPrefix urlPrefix $ "/hashtags/" <> hashtagAtomName tag)+        (prefix </> "hashtags" </> hashtagAtomName tag)++destGenImage :: UrlPrefix -> OutputPrefix -> SourceLocation -> GenFileExtension -> DestinationLocation+destGenImage urlPrefix prefix (FileSource path) ext =+    StaticFileDestination+        (withPrefix urlPrefix $ "/gen/images/" <> takeFileName path <> extensionString ext)+        (prefix </> "gen/images" </> takeFileName path <> extensionString ext)++destGenArbitrary :: UrlPrefix -> OutputPrefix -> SourceLocation -> GeneratorInstructionsData -> DestinationLocation+destGenArbitrary urlPrefix prefix (FileSource path) g =+    StaticFileDestination+        (withPrefix urlPrefix $ "/gen/out/" <> takeFileName path <> "__" <> target g)+        (prefix </> "gen/out" </> takeFileName path <> "__" <> target g)++newtype FileExtension = FileExtension String++destinationExtension :: Format -> FileExtension+destinationExtension fmt = FileExtension $ case fmt of+    Core.Json -> "json"+    Core.Cmark -> "cmark"+    Core.Dhall -> "dhall"+    Core.Mustache -> "mustache"+    Core.TramajJson -> "tramaj-json"+    Core.TramajDoc -> "tramaj-doc"+    Core.TramajLib -> "tramaj-lib"+    Core.TextHtml -> "html"+    Core.Css -> "css"+    Core.Csv -> "csv"+    Core.InMemory -> "mem"+    Core.Sql -> "sql"++destEmbeddedData :: UrlPrefix -> OutputPrefix -> SourceLocation -> FileExtension -> Name -> Int -> DestinationLocation+destEmbeddedData urlPrefix prefix (FileSource path) (FileExtension ext) name index =+    StaticFileDestination+        (withPrefix urlPrefix $ "/raw/data/" <> takeFileName path <> "__" <> Text.unpack name <> show index <> "." <> ext)+        (prefix </> "raw/data" </> takeFileName path <> "__" <> Text.unpack name <> show index <> "." <> ext)++destVideoFile :: UrlPrefix -> OutputPrefix -> SourceLocation -> DestinationLocation+destVideoFile urlPrefix prefix (FileSource path) =+    StaticFileDestination+        (withPrefix urlPrefix $ "/videos/" <> takeFileName path)+        (prefix </> "videos" </> takeFileName path)++destAudioFile :: UrlPrefix -> OutputPrefix -> SourceLocation -> DestinationLocation+destAudioFile urlPrefix prefix (FileSource path) =+    StaticFileDestination+        (withPrefix urlPrefix $ "/audios/" <> takeFileName path)+        (prefix </> "audios" </> takeFileName path)++destRawFile :: UrlPrefix -> OutputPrefix -> SourceLocation -> DestinationLocation+destRawFile urlPrefix prefix (FileSource path)+    | takeFileName path == "robots.txt" =+        StaticFileDestination+            (withPrefix urlPrefix "/robots.txt")+            (prefix </> "robots.txt")+    | takeFileName path == "webfinger.json" =+        StaticFileDestination+            (withPrefix urlPrefix "/.well-known/webfinger")+            (prefix </> ".well-known" </> "webfinger")+    | otherwise =+        StaticFileDestination+            (withPrefix urlPrefix $ "/raw/" <> takeFileName path)+            (prefix </> "raw" </> takeFileName path)++destDocumentFile :: UrlPrefix -> OutputPrefix -> SourceLocation -> DestinationLocation+destDocumentFile urlPrefix prefix (FileSource path) =+    StaticFileDestination+        (withPrefix urlPrefix $ "/docs/" <> takeFileName path)+        (prefix </> "docs" </> takeFileName path)++destImage :: UrlPrefix -> OutputPrefix -> SourceLocation -> DestinationLocation+destImage urlPrefix prefix (FileSource path) =+    StaticFileDestination+        (withPrefix urlPrefix $ "/images/" <> takeFileName path)+        (prefix </> "images" </> takeFileName path)++destCssFile :: UrlPrefix -> OutputPrefix -> SourceLocation -> DestinationLocation+destCssFile urlPrefix prefix (FileSource path) =+    StaticFileDestination+        (withPrefix urlPrefix $ "/css/" <> takeFileName path)+        (prefix </> "css" </> takeFileName path)++destWebfontFile :: UrlPrefix -> OutputPrefix -> SourceLocation -> DestinationLocation+destWebfontFile urlPrefix prefix (FileSource path) =+    StaticFileDestination+        (withPrefix urlPrefix $ "/webfonts/" <> takeFileName path)+        (prefix </> "webfonts" </> takeFileName path)++destJsFile :: UrlPrefix -> OutputPrefix -> SourceLocation -> DestinationLocation+destJsFile urlPrefix prefix (FileSource path) =+    StaticFileDestination+        (withPrefix urlPrefix $ "/js/" <> takeFileName path)+        (prefix </> "js" </> takeFileName path)++destJsonDataFile :: UrlPrefix -> OutputPrefix -> FilePath -> DestinationLocation+destJsonDataFile urlPrefix prefix path =+    StaticFileDestination+        (withPrefix urlPrefix $ "/json/" <> takeFileName path)+        (prefix </> "json" </> takeFileName path)++destTextDataFile :: UrlPrefix -> OutputPrefix -> FilePath -> DestinationLocation+destTextDataFile urlPrefix prefix path =+    StaticFileDestination+        (withPrefix urlPrefix $ "/text/" <> takeFileName path)+        (prefix </> "text" </> takeFileName path)++destRootDataFile :: UrlPrefix -> OutputPrefix -> FilePath -> DestinationLocation+destRootDataFile urlPrefix prefix path =+    StaticFileDestination+        (withPrefix urlPrefix $ "/" <> takeFileName path)+        (prefix </> takeFileName path)++destHtml :: UrlPrefix -> OutputPrefix -> SourceLocation -> DestinationLocation+destHtml urlPrefix prefix (FileSource path) =+    StaticFileDestination+        (withPrefix urlPrefix $ "/" <> takeBaseName path <> ".html")+        (prefix </> takeBaseName path <> ".html")
+ src/KitchenSink/Layout/Blog/Extensions.hs view
@@ -0,0 +1,16 @@+{- | Module to simplify types for the layout by pinning the parametrizable+extension to a single known value.+-}+module KitchenSink.Layout.Blog.Extensions where++import KitchenSink.Core.Build.Site qualified as Core+import KitchenSink.Core.Build.Target qualified as Core+import KitchenSink.Core.Section qualified as Core++type Article a = Core.Article () a+type Site = Core.Site ()+type Target a = Core.Target () a+type Assembler a = Core.Assembler () a+type AssemblerError = Core.AssemblerError ()+type Section a = Core.Section () a+type ProductionRule = Core.ProductionRule ()
+ src/KitchenSink/Layout/Blog/Fragments.hs view
@@ -0,0 +1,950 @@+{-# LANGUAGE OverloadedRecordDot #-}++module KitchenSink.Layout.Blog.Fragments where++import Control.Monad (when)+import Data.Aeson (Value, object, (.=))+import Data.Aeson.Text (encodeToLazyText)+import Data.Either (fromRight)+import Data.List qualified as List+import Data.Map.Strict qualified as Map+import Data.Maybe (catMaybes, fromMaybe, isJust)+import Data.Text qualified as Text+import Data.Text.Lazy qualified as LText+import Data.Time.Clock (UTCTime (..))+import Data.Time.Format (defaultTimeLocale, formatTime)+import Data.Time.Format.ISO8601 (iso8601Show)+import Lucid as Lucid+import Lucid.Base qualified as Lucid+import Prelude ((&&), (+), (||), maxBound)++import Text.Atom.Feed qualified as Atom++import KitchenSink.Core.Assembler (runAssembler)+import KitchenSink.Core.Assembler qualified as CoreAssembler+import KitchenSink.Core.Build.Site ()+import KitchenSink.Core.Build.Target (DestinationLocation, OutputPrefix, Url, destination, destinationUrl)+import KitchenSink.Core.Build.Target qualified as Core+import KitchenSink.Core.Section hiding (Section)+import KitchenSink.Prelude++import KitchenSink.Core.Assembler.Sections+import KitchenSink.Layout.Blog.Analyses+import KitchenSink.Layout.Blog.ArticleTypes+import KitchenSink.Layout.Blog.Destinations+import KitchenSink.Layout.Blog.Extensions (Article, Assembler, Section, Target)+import KitchenSink.Layout.Blog.Metadata++assembleHeader :: UrlPrefix -> OutputPrefix -> TopicStats -> DestinationLocation -> Article [Text] -> Assembler (Lucid.Html ())+assembleHeader urlPrefix prefix stats currentDestination art =+    r+        <$> (extract <$> json @() @PreambleData art isPreamble)+        <*> (fmap extract <$> jsonm @() @SocialData art isSocial)+        <*> (fmap extract <$> jsonm @() @TopicData art isTopic)+  where+    r :: PreambleData -> Maybe SocialData -> Maybe TopicData -> Lucid.Html ()+    r content social topic = do+        let author_ = case social >>= twitter of+                Nothing -> span_ (toHtml . author $ content)+                Just handle -> a_ [href_ $ "https://twitter.com/" <> handle] (mconcat ["@", toHtml handle])++        let topiclist_ =+                case topic of+                    Nothing -> mempty+                    Just d ->+                        do+                            div_ [class_ "topiclist"]+                            $ mconcat+                                [ topicTag urlPrefix prefix stats currentDestination t | t <- topics d+                                ]++        let wc =+                toHtml+                    $ show+                    $ fromRight 0+                    $ contentWordCount+                    <$> runAssembler (getSections art isMainContent)+        let infos = analyzeArticle art+        let lc = toHtml . show . length $ infos.linkInfos+        let ic = toHtml . show . length $ infos.imageInfos+        let bc = toHtml . show . length $ infos.snippetInfos+        let headersentence pr =+                case preambleDateText pr of+                    Just txt ->+                        mconcat ["On ", span_ (toHtml txt), ", by ", author_, ", ", wc, " words, ", bc, " code snippets, ", lc, " links, ", ic, "images."]+                    Nothing ->+                        mconcat ["By ", author_, ", ", wc, " words, ", bc, " code snippets, ", lc, " links, ", ic, "images."]++        header_ [class_ "heading"] $ do+            h1_ (toHtml $ title $ content)+            p_ (headersentence content)+            topiclist_++assembleGlossary :: Article [Text] -> Assembler (Lucid.Html ())+assembleGlossary art = do+    gd <- fmap extract <$> jsonm @() @GlossaryData art isGlossary+    let out = maybe mempty r gd+    pure out+  where+    r :: GlossaryData -> Lucid.Html ()+    r gd =+        dl_ [class_ "glossary"] $ do+            mconcat $ fmap rterm (glossary gd)++    rterm :: GlossaryTerm -> Lucid.Html ()+    rterm (GlossaryTerm t d) = do+        dt_ [class_ "term"] (toHtml t)+        dd_ [class_ "definition"] (toHtml d)++assembleFooter :: Article [Text] -> Assembler (Lucid.Html ())+assembleFooter a = r <$> (fmap extract . jsonSection @SocialData =<< getSection a isSocial)+  where+    r :: SocialData -> Lucid.Html ()+    r s =+        footer_ [class_ "footing"] $ do+            div_ [class_ "social-links"] $ do+                maybe mempty twtr (twitter s)+                maybe mempty masto (mastodon s)+                maybe mempty ghub (github s)+                maybe mempty lkdn (linkedin s)++    twtr, ghub, lkdn, masto :: Text -> Lucid.Html ()+    twtr h = a_ [href_ $ "https://twitter.com/" <> h] "twitter"+    ghub h = a_ [href_ $ "https://github.com/" <> h] "github"+    lkdn h = a_ [href_ $ "https://linkedin.com/in/" <> h] "linkedin"+    masto h = a_ [rel_ "me", href_ $ h] "mastodon"++assembleDefaultLayoutWarning :: Article [Text] -> Assembler (Lucid.Html ())+assembleDefaultLayoutWarning _ = pure $ do+    div_ [class_ "no-layout-notice"] $ do+        p_ "this page uses a default layout"++assembleUpcomingMain :: UrlPrefix -> Article [Text] -> Assembler (Lucid.Html ())+assembleUpcomingMain urlPrefix a = r <$> renderMainSections urlPrefix a+  where+    r :: [Lucid.Html ()] -> Lucid.Html ()+    r content = do+        div_ [class_ "upcoming-notice"] $ do+            p_ "This article is still considered unfinished and content may change significantly."+        div_ [id_ "histogram"] mempty+        div_ [class_ "main-article"] $ do+            mconcat content++assembleArchivedMain :: UrlPrefix -> Article [Text] -> Assembler (Lucid.Html ())+assembleArchivedMain urlPrefix a = r <$> renderMainSections urlPrefix a+  where+    r :: [Lucid.Html ()] -> Lucid.Html ()+    r content = do+        div_ [class_ "archived-notice"] $ do+            p_ "This article is considered archived."+        div_ [id_ "histogram"] mempty+        div_ [class_ "main-article"] $ do+            mconcat content++assembleMain :: UrlPrefix -> Article [Text] -> Assembler (Lucid.Html ())+assembleMain urlPrefix a = r <$> renderMainSections urlPrefix a+  where+    r :: [Lucid.Html ()] -> Lucid.Html ()+    r content =+        div_ [class_ "main-article"] $ do+            mconcat content++-- | Renders `main-content` sections (as markdown) alongside `callout`, `faq`,+-- and `pricing` sections (as their own widgets), in the order they appear in+-- the source file.+renderMainSections :: UrlPrefix -> Article [Text] -> Assembler [Lucid.Html ()]+renderMainSections urlPrefix a = getSections a isRenderableContent >>= traverse (renderContentSection urlPrefix)+  where+    isRenderableContent s = isMainContent s || isCallout s || isFaq s || isPricing s++{- | Rewrites root-relative @href="/..."@ and @src="/..."@ attribute values in+an already-rendered HTML fragment to carry the site's @basePath@. This is+what makes a plain markdown link like @[home](\/index.html)@, written by an+author with no idea the site might be hosted under a subpath, resolve+correctly there. Protocol-relative (@\/\/...@), scheme-qualified+(@https:\/\/...@), and fragment (@#...@) URLs are left untouched, since none+of them start with a single @\/@.+-}+prefixRootRelativeLinks :: UrlPrefix -> Text -> Text+prefixRootRelativeLinks "" html = html+prefixRootRelativeLinks urlPrefix html =+    rewriteAttr "src=\"" $ rewriteAttr "href=\"" html+  where+    rewriteAttr :: Text -> Text -> Text+    rewriteAttr marker = go+      where+        go t = case Text.breakOn marker t of+            (before, rest)+                | Text.null rest -> before+                | otherwise ->+                    let afterMarker = Text.drop (Text.length marker) rest+                        isRootRelative = "/" `Text.isPrefixOf` afterMarker && not ("//" `Text.isPrefixOf` afterMarker)+                        inserted = if isRootRelative then urlPrefix else ""+                     in before <> marker <> inserted <> go afterMarker++renderContentSection :: UrlPrefix -> Section [Text] -> Assembler (Lucid.Html ())+renderContentSection urlPrefix s+    | isMainContent s = do+        rendered <- renderSection s+        pure $ section_ [class_ "main-section"] $ toHtmlRaw @Text (prefixRootRelativeLinks urlPrefix $ extract' rendered)+    | isCallout s = do+        calloutSection <- jsonSection @CalloutData s+        pure $ calloutHtml (extract calloutSection)+    | isFaq s = do+        faqSection <- jsonSection @FaqData s+        pure $ faqHtml (extract faqSection)+    | isPricing s = do+        pricingSection <- jsonSection @PricingTableData s+        pure $ pricingHtml (extract pricingSection)+    | otherwise = CoreAssembler.Assembler $ Left (CoreAssembler.UnsupportedConversionFormat (sectionFormat s))++calloutHtml :: CalloutData -> Lucid.Html ()+calloutHtml c =+    div_ [class_ ("callout callout-" <> calloutKind c)] $ do+        p_ [class_ "callout-title"] (toHtml $ fromMaybe (calloutDefaultTitle $ calloutKind c) (calloutTitle c))+        p_ [class_ "callout-body"] (toHtml $ calloutBody c)++calloutDefaultTitle :: Text -> Text+calloutDefaultTitle "note" = "Note"+calloutDefaultTitle "warning" = "Warning"+calloutDefaultTitle "tip" = "Tip"+calloutDefaultTitle "important" = "Important"+calloutDefaultTitle "danger" = "Danger"+calloutDefaultTitle other = other++faqHtml :: FaqData -> Lucid.Html ()+faqHtml d =+    div_ [class_ "faq"] $ do+        mconcat [faqItemHtml i | i <- items d]++faqItemHtml :: FaqItem -> Lucid.Html ()+faqItemHtml i =+    details_ [class_ "faq-item"] $ do+        summary_ [class_ "faq-question"] (toHtml $ question i)+        p_ [class_ "faq-answer"] (toHtml $ answer i)++-- | Renders as an actual `<table>`: one column per plan, one row per+-- feature. A plan's `values` are matched to `pricingFeatures` positionally;+-- mismatched lengths degrade gracefully to a ragged table rather than erroring.+pricingHtml :: PricingTableData -> Lucid.Html ()+pricingHtml d =+    table_ [class_ "pricing-table"] $ do+        thead_ $ tr_ $ do+            th_ [class_ "pricing-feature-header"] mempty+            mconcat [planHeader p | p <- pricingPlans d]+        tbody_ $ do+            mconcat [featureRow feat vals | (feat, vals) <- List.zip (pricingFeatures d) (List.transpose (fmap values (pricingPlans d)))]+  where+    planHeader :: PricingPlan -> Lucid.Html ()+    planHeader p =+        th_ [class_ "pricing-plan-header"] $ do+            div_ [class_ "pricing-plan-name"] (toHtml $ name p)+            div_ [class_ "pricing-plan-price"] (toHtml $ price p)++    featureRow :: Text -> [Text] -> Lucid.Html ()+    featureRow feat vals =+        tr_ $ do+            td_ [class_ "pricing-feature-name"] (toHtml feat)+            mconcat [td_ [class_ "pricing-value"] (toHtml v) | v <- vals]++assembleStyle :: Article [Text] -> Assembler (Lucid.Html ())+assembleStyle a = r <$> (fmap Text.concat <$> getSection a isMainCss)+  where+    r :: Section Text -> Lucid.Html ()+    r content = style_ (extract content)++assembleTopicListing :: UrlPrefix -> OutputPrefix -> TopicStats -> TopicName -> [(Target a, Article [Text])] -> Assembler (Lucid.Html ())+assembleTopicListing urlPrefix prefix stats topic articles =+    pure r+  where+    r :: Lucid.Html ()+    r = do+        header_ [class_ "heading"] $ do+            h1_ $ toHtml topic+        section_ [class_ "main"] $ do+            mainArticleLinks urlPrefix articles+        section_ [class_ "others"]+            $ mconcat+                [ h2_ [class_ "listing-callout"] "other topics"+                , div_ [class_ "topiclist"]+                    $ mconcat+                        [ topicListingTag urlPrefix prefix stats otherTopic | otherTopic <- Map.keys $ byTopic stats, otherTopic /= topic+                        ]+                ]++topicListingTag :: UrlPrefix -> OutputPrefix -> TopicStats -> TopicName -> Lucid.Html ()+topicListingTag urlPrefix prefix stats topic =+    div_ [class_ "topic"] $ do+        a_ [class_ "topic-link", href_ url] $ do+            span_ [class_ "topic-name"] (toHtml topic)+            span_ [class_ "topic-count"] $ do+                toHtml $ show $ length articles+  where+    url = destinationUrl $ destTopic urlPrefix prefix topic+    articles = fromMaybe [] $ Map.lookup topic $ byTopic stats++type TagValue = Text.Text++assembleHashtagListing :: UrlPrefix -> TagValue -> [(Target a, Article [Text])] -> Assembler (Lucid.Html ())+assembleHashtagListing urlPrefix tag articles =+    pure r+  where+    r :: Lucid.Html ()+    r = do+        header_ [class_ "heading"] $ do+            h1_ $ toHtml tag+        section_ [class_ "main"] $ do+            mainArticleLinks urlPrefix articles++assembleGlossaryListing :: OutputPrefix -> WholeGlossary -> [(Target a, Article [Text])] -> Assembler (Lucid.Html ())+assembleGlossaryListing _ g _ =+    pure r+  where+    r :: Lucid.Html ()+    r = do+        header_ [class_ "heading"] $ do+            h1_ $ toHtml ("Glossary" :: Text)+        section_ [class_ "main"] $ do+            mconcat [entry t arts | (t, arts) <- glossaryEntries g]++    entry :: Text -> [(Target (), Article [Text], Text)] -> Lucid.Html ()+    entry t defs = do+        div_ [class_ "entry"] $ do+            p_ $ toHtml t+            defWithLinks defs++    defWithLinks :: [(Target (), Article [Text], Text)] -> Lucid.Html ()+    defWithLinks defs =+        do+            ul_ [class_ "entry-details-list"]+            $ mconcat+                [ li_ [class_ "article-details-list-item"] $ defWithLink t art def+                | (t, art, def) <- defs+                ]++    defWithLink :: Target () -> Article [Text] -> Text -> Lucid.Html ()+    defWithLink t art def =+        div_ [class_ "deflink"] $ do+            p_ $ toHtml def+            span_ $ do+                toHtml ("In: " :: Text)+                articleLink t art+                toHtml ("." :: Text)++htmlbody ::+    (Article [Text] -> Assembler (Lucid.Html ())) ->+    (Article [Text] -> Assembler (Lucid.Html ()))+htmlbody = wrap body_++data MetaHeaders = MetaHeaders+    { extraMeta :: MetaData+    , destinationHTML :: DestinationLocation+    , destinationJSON :: DestinationLocation+    , destinationText :: DestinationLocation+    , destinationAtom :: DestinationLocation+    }++htmlhead ::+    MetaHeaders ->+    (Article [Text] -> Assembler (Lucid.Html ())) ->+    (Article [Text] -> Assembler (Lucid.Html ()))+htmlhead mh f = \art -> do+    hdrs1 <- metaheaders mh art+    hdrs2 <- f art+    hdrs3 <- (extraHeaders mh.extraMeta) art+    pure $ head_ (hdrs1 >> hdrs2 >> hdrs3)++-- see https://ogp.me/#types+-- see https://webcode.tools/generators/open-graph/article+-- see https://developer.twitter.com/en/docs/twitter-for-websites/cards/guides/getting-started+-- see https://www.linkedin.com/post-inspector/inspect/+metaheaders :: MetaHeaders -> Article [Text] -> Assembler (Lucid.Html ())+metaheaders mh art = do+    topic <- fmap extract <$> jsonm @() @TopicData art isTopic+    social <- fmap extract <$> jsonm @() @SocialData art isSocial+    summary <- fmap extract <$> lookupSection art isSummary+    preamble <- fmap extract <$> jsonm @() @PreambleData art isPreamble+    let titleTxt = maybe defaultTitle mktitle preamble :: Text+    let faviconHref = mkfavicon preamble :: Text+    let twitterCard = case topic >>= imageLink of+            Just _ -> "summary_large_image" :: Text+            Nothing -> "summary"+    let modifiedTime = case preamble >>= updated of+            Just x -> Just x+            Nothing -> preamble >>= date+    let robotsContent = case buildinfo art >>= robots of+            Just x -> x+            Nothing -> case publicationStatus =<< buildinfo art of+                Just Upcoming -> "noindex, nofollow"+                Just Archived -> "noindex, nofollow"+                Just Public -> "index, follow"+                Nothing -> "index, follow"+    let jsonLd =+            flip fmap preamble $ \p ->+                object+                    $ catMaybes+                        [ Just $ "@context" .= ("https://schema.org" :: Text)+                        , Just $ "@type" .= ("BlogPosting" :: Text)+                        , Just $ "mainEntityOfPage" .= object ["@type" .= ("WebPage" :: Text), "@id" .= urlForPage]+                        , Just $ "headline" .= title p+                        , fmap (\x -> "description" .= compactSummary x) summary+                        , fmap (\link -> "image" .= [urlForImage link]) (topic >>= imageLink)+                        , fmap (\d -> "datePublished" .= fmtUTC d) (date p)+                        , fmap (\d -> "dateModified" .= fmtUTC d) modifiedTime+                        , Just $ "author" .= object ["@type" .= ("Person" :: Text), "name" .= author p]+                        , Just $ "publisher" .= object ["@type" .= ("Organization" :: Text), "name" .= baseTitle extra]+                        ]+    pure+        $ mconcat+        $ catMaybes+            [ Just $ meta_ [charset_ "utf-8"]+            , Just $ meta_ [name_ "viewport", content_ "width=device-width, initial-scale=1.0"]+            , Just $ meta_ [name_ "robots", content_ robotsContent]+            , Just $ title_ $ toHtml titleTxt+            , Just $ link_ [rel_ "icon", type_ "image/x-icon", href_ faviconHref]+            , Just $ link_ [rel_ "canonical", href_ urlForPage]+            , Just $ link_ [rel_ "alternate", type_ "application/atom+xml", title_ "Atom Feed", href_ urlForAtom]+            , fmap (\x -> meta_ [name_ "author", content_ $ author x]) preamble+            , fmap (\x -> meta_ [name_ "keywords", content_ $ Text.intercalate ", " $ topicKeywords x]) topic+            , fmap (\x -> meta_ [name_ "description", content_ $ compactSummary x]) summary+            , Just $ meta_ [name_ "twitter:card", content_ twitterCard]+            , Just $ meta_ [name_ "twitter:title", content_ titleTxt]+            , (\x -> meta_ [name_ "twitter:site", content_ $ "@" <> x]) <$> twitterSiteLogin extra+            , (\x -> meta_ [name_ "twitter:creator", content_ $ "@" <> x]) <$> (twitter =<< social)+            , fmap (\x -> meta_ [property_ "twitter:description", content_ $ compactSummary x]) summary+            , Just $ meta_ [name_ "type", property_ "og:type", content_ "article"]+            , Just $ meta_ [name_ "title", property_ "og:title", content_ titleTxt]+            , Just $ meta_ [property_ "og:site_name", content_ $ baseTitle extra]+            , Just $ meta_ [name_ "url", property_ "og:url", content_ $ urlForPage]+            , fmap (\x -> meta_ [property_ "og:image", content_ $ urlForImage $ x]) (topic >>= imageLink)+            , fmap (\x -> meta_ [property_ "twitter:image:src", content_ $ urlForImage $ x]) (topic >>= imageLink)+            , fmap (\x -> meta_ [property_ "og:description", content_ $ compactSummary x]) summary+            , fmap (\x -> meta_ [name_ "article:published_time", content_ $ fmtUTC x]) $ preamble >>= date+            , fmap (\x -> meta_ [name_ "article:modified_time", content_ $ fmtUTC x]) modifiedTime+            , Just $ meta_ [name_ "ks:article_json", content_ $ urlForJSONPage]+            , Just $ meta_ [name_ "ks:article_text", content_ $ urlForTextPage]+            , fmap (\v -> script_ [type_ "application/ld+json"] (toHtmlRaw $ renderJsonLd v)) jsonLd+            ]+        <> [meta_ [name_ "article:tag", content_ k] | k <- maybe [] topicKeywords topic]+  where+    extra = mh.extraMeta+    dloc = mh.destinationHTML+    jsondloc = mh.destinationJSON+    textdloc = mh.destinationText+    atomLoc = mh.destinationAtom+    fmtUTC = Text.pack . iso8601Show+    property_ = Lucid.makeAttribute "property"+    urlForPage = publishBaseURL extra <> destinationUrl dloc+    urlForAtom = publishBaseURL extra <> destinationUrl atomLoc+    urlForJSONPage = destinationUrl jsondloc+    urlForTextPage = destinationUrl textdloc+    urlForImage imgpath = publishBaseURL extra <> imgpath++    defaultTitle :: Text+    defaultTitle = baseTitle extra++    mktitle :: PreambleData -> Text+    mktitle x = mconcat [baseTitle extra, " - ", title x]++    mkfavicon :: Maybe PreambleData -> Text+    mkfavicon x = fromMaybe (extra.pathPrefix <> defaultFavicon) (faviconUrl =<< x)++defaultFavicon :: Text+defaultFavicon = "/images/favicon.png"++-- | Renders JSON-LD for embedding in a <script type="application/ld+json">+-- tag. "</" is escaped because a literal "</script>" inside a JSON string+-- value (e.g. an article title) would otherwise close the tag early.+renderJsonLd :: Value -> Text+renderJsonLd = Text.replace "</" "<\\/" . LText.toStrict . encodeToLazyText++wrap ::+    (Lucid.Html () -> Lucid.Html ()) ->+    (Article [Text] -> Assembler (Lucid.Html ())) ->+    (Article [Text] -> Assembler (Lucid.Html ()))+wrap k f = fmap k . f++htmldoc ::+    (Article [Text] -> Assembler (Lucid.Html ())) ->+    Article [Text] ->+    Assembler LText.Text+htmldoc mkContent art =+    Lucid.renderText . withLang <$> mkContent art+  where+    withLang content = doctype_ *> html_ [lang_ langCode] content+    langCode = fromMaybe defaultLang (lang =<< articlePreambleData art)++defaultLang :: Text+defaultLang = "en"++buildinfo :: Article [Text] -> Maybe BuildInfoData+buildinfo art =+    either (const Nothing) Just+        $ fmap extract+        $ runAssembler+        $ json @() @BuildInfoData art isBuildInfo++isPublishedArticle :: Article [Text] -> Bool+isPublishedArticle art = isPublic+  where+    isPublic :: Bool+    isPublic = case publicationStatus =<< buildinfo art of+        Just Upcoming -> False+        Just Archived -> False+        Just Public -> True+        Nothing -> True++isListableArticle :: Article [Text] -> Bool+isListableArticle art = not (layoutNameFor art `List.elem` [IndexPage, TopicListingTemplate, HashTagListingTemplate])++shouldShowStatsForArticle :: Article [Text] -> Bool+shouldShowStatsForArticle art =+    not (layoutNameFor art `List.elem` [IndexPage, HashTagListingTemplate, TopicListingTemplate, ImageGallery, VariousListing, SinglePageApp])++isConcreteTarget :: Article [Text] -> Bool+isConcreteTarget art = not (isSpecialLayout (layoutNameFor art))++compactTitle :: PreambleData -> Text+compactTitle p = mconcat [title p]++articleLink :: Target a -> Article [Text] -> Lucid.Html ()+articleLink (Core.Target d _ _) art =+    mylink_ url txt+  where+    url :: Text+    url = destinationUrl d++    txt :: Text+    txt =+        either (const url) (compactTitle . extract)+            $ runAssembler+            $ json @() @PreambleData art isPreamble++mylink_ :: Url -> Text -> Lucid.Html ()+mylink_ url txt = a_ [href_ url] (toHtml txt)++-- | The link back to the site root, labelled (and optionally decorated with an+-- icon) according to the site's @homeLink@ configuration.+homeLink :: MetaData -> Lucid.Html ()+homeLink meta =+    a_ [href_ (meta.pathPrefix <> "/"), class_ "home-link"] $ do+        traverse_ (\icon -> img_ [src_ (iconUrl icon), alt_ ""]) spec.homeIcon+        toHtml spec.homeLabel+  where+    spec = meta.homeLinkSpec+    iconUrl = siteUrl meta++-- | Only a root-relative URL follows the site's basePath; absolute+-- (https://..., //...) and relative URLs are left alone.+siteUrl :: MetaData -> Text -> Text+siteUrl meta u+    | "/" `Text.isPrefixOf` u && not ("//" `Text.isPrefixOf` u) = meta.pathPrefix <> u+    | otherwise = u++-- | The site-wide header menu, from the @menu@ of @kitchen-sink.json@ (nothing+-- when unset).+siteMenu :: MetaData -> Lucid.Html ()+siteMenu meta+    | null meta.menuSpec = mempty+    | otherwise = ul_ [class_ "site-menu"] $ traverse_ item meta.menuSpec+  where+    item :: MenuItem -> Lucid.Html ()+    item i = li_ $ do+        a_ [href_ (siteUrl meta i.menuUrl)] (toHtml i.menuLabel)+        when (not (null i.menuChildren))+            $ ul_ [class_ "site-submenu"]+            $ traverse_ item i.menuChildren++-- | The site-wide footer, from the @footer@ of @kitchen-sink.json@ (nothing+-- when unset).+siteFooter :: MetaData -> Lucid.Html ()+siteFooter meta = case meta.footerSpec of+    Nothing -> mempty+    Just spec -> footer_ [class_ "site-footer"] $ do+        when (not (null spec.footerColumns))+            $ div_ [class_ "footer-columns"]+            $ traverse_ column spec.footerColumns+        traverse_ (\t -> p_ [class_ "footer-legal"] (toHtml t)) spec.footerLegal+  where+    column :: FooterColumn -> Lucid.Html ()+    column c = div_ [class_ "footer-column"] $ do+        traverse_ (h2_ . toHtml) c.footerHeading+        ul_ $ traverse_ (\l -> li_ $ a_ [href_ (siteUrl meta l.menuUrl)] (toHtml l.menuLabel)) c.footerLinks++-- | The `data-base-path` attribute is read by search-box.js at startup+-- (see @KitchenSink.getBasePath@ in purs/kitchen-sink-compat) so it fetches+-- @paths.json@ from the right place under a `basePath` deployment.+searchBox :: UrlPrefix -> Lucid.Html ()+searchBox urlPrefix = div_ [id_ "search-box", data_ "base-path" urlPrefix] $ do+    js_ (urlPrefix <> "/js/search-box.js")++js_ :: Text -> Lucid.Html ()+js_ p = Lucid.termRawWith "script" [type_ "text/javascript", src_ p, async_ ""] ""++topicsListings :: TopicStats -> Lucid.Html ()+topicsListings stats =+    nav_ [class_ "topics-listing"] $ do+        h2_ [class_ "listing-callout"] "by topic"+        div_ [class_ "topics-listing-list"] $ do+            mconcat+                [ topicListing p+                | p <- Map.toList $ byTopic stats+                ]++topicListing :: (TopicName, [(Target a, Article [Text])]) -> Lucid.Html ()+topicListing (topic, tgts) =+    div_ [class_ "topics-listing-list-topic"] $ do+        strong_ [class_ "topic-name"] (toHtml topic)+        smallArticleLinks tgts++smallArticleLinks :: [(Target a, Article [Text])] -> Lucid.Html ()+smallArticleLinks tgts =+    ul_ [class_ "article-links-list"]+        $ mconcat+            [li_ [class_ "article-links-list-item"] $ uncurry articleLink t | t <- tgts]++topicTag :: UrlPrefix -> OutputPrefix -> TopicStats -> DestinationLocation -> TopicName -> Lucid.Html ()+topicTag urlPrefix prefix stats currentDestination topic =+    div_ [class_ "topic"] $ do+        navArrow "topic-prev-link" "‹" prevUrl+        a_ [class_ "topic-link", href_ url] $ do+            span_ [class_ "topic-name"] (toHtml topic)+            span_ [class_ "topic-count"] $ do+                toHtml $ show $ 1 + length prevArticles+                toHtml ("/" :: Text)+                toHtml $ show $ length articles+        navArrow "topic-next-link" "›" nextUrl+  where+    url = destinationUrl $ destTopic urlPrefix prefix topic+    articles = fromMaybe [] $ Map.lookup topic $ byTopic stats+    -- todo: extract the following into separate functions+    isOtherTarget (target2, _) = destination target2 /= currentDestination+    prevArticles = List.takeWhile isOtherTarget articles+    nextArticles = List.drop 1 $ List.dropWhile isOtherTarget articles+    previousArticle = if null prevArticles then Nothing else Just $ List.last prevArticles+    nextArticle = fst <$> List.uncons nextArticles++    prevUrl = destinationUrl . destination . fst <$> previousArticle+    nextUrl = destinationUrl . destination . fst <$> nextArticle++    -- A pagination-style arrow: a clickable "‹"/"›" when there is a+    -- neighbouring article, otherwise a static "|" marking the end of the topic.+    navArrow :: Text -> Text -> Maybe Url -> Lucid.Html ()+    navArrow cls arrow mUrl =+        span_ [class_ ("topic-nav " <> cls)] $ do+            case mUrl of+                Just u -> a_ [class_ "topic-nav-link", href_ u] (toHtml arrow)+                Nothing -> span_ [class_ "topic-nav-boundary"] (toHtml ("|" :: Text))++sortByDate :: [(a, Article [Text])] -> [(a, Article [Text])]+sortByDate = List.sortBy f+  where+    f (_, a1) (_, a2) = extractDate a2 `compare` extractDate a1++extractDate :: Article [Text] -> Maybe UTCTime+extractDate art =+    either (const Nothing) (date . extract)+        $ runAssembler+        $ json @() @PreambleData art isPreamble++mainArticleLinks :: UrlPrefix -> [(Target a, Article [Text])] -> Lucid.Html ()+mainArticleLinks urlPrefix targets =+    articleListing urlPrefix "all articles"+        $ List.filter (isListableArticle . snd)+        $ sortByDate targets++latestArticleLink :: UrlPrefix -> [(Target a, Article [Text])] -> Lucid.Html ()+latestArticleLink urlPrefix targets =+    articleListing urlPrefix "latest article"+        $ List.take 1+        $ List.filter (isPublishedArticle . snd)+        $ List.filter (isListableArticle . snd)+        $ sortByDate targets++articleListing :: UrlPrefix -> Text -> [(Target a, Article [Text])] -> Lucid.Html ()+articleListing urlPrefix htext targets =+    nav_ [class_ "articles-listing"] $ do+        h2_ [class_ "listing-callout"] $ Lucid.toHtml htext+        div_ [class_ "articles-listing-list"] $ do+            mconcat+                [ uncurry (mainArticleLinkWithAnnotation urlPrefix) p+                | p <- targets+                ]++siteGraphEchartZone :: UrlPrefix -> Lucid.Html ()+siteGraphEchartZone urlPrefix =+    nav_ [class_ "articles-graph"] $ do+        h2_ [class_ "listing-callout"] "site map"+        div_ [id_ "echartzone", data_ "base-path" urlPrefix, style_ "width:800px;height:600px;"] mempty++mainArticleLinkWithAnnotation :: UrlPrefix -> Target a -> Article [Text] -> Lucid.Html ()+mainArticleLinkWithAnnotation urlPrefix t art =+    div_ [class_ $ mconcat ["articles-listing-item", " ", publishStatusClass]] $ do+        span_ [class_ "article-date"] (toHtml formattedDate)+        div_ $ do+            statusIcon+            articleLink t art+            when (isPublishedArticle art) $ do+                articleSummary urlPrefix art+  where+    formattedDate :: Text+    formattedDate = fromMaybe "" $ preambleDateText =<< preamble++    publishStatusClass :: Text+    publishStatusClass = fromMaybe "" $ fmap f $ publicationStatus =<< buildinfo art+      where+        f Public = "article-status-published"+        f Upcoming = "article-status-upcoming"+        f Archived = "article-status-archived"++    statusIcon :: Lucid.Html ()+    statusIcon = case publicationStatus =<< buildinfo art of+        Nothing -> mempty+        Just Public -> mempty+        Just Upcoming -> span_ [class_ "notice-upcoming"] "(upcoming)"+        Just Archived -> span_ [class_ "notice-archived"] "(archived)"++    preamble :: Maybe PreambleData+    preamble =+        either (const Nothing) Just+            $ fmap extract+            $ runAssembler+            $ json @() @PreambleData art isPreamble++preambleDateText :: PreambleData -> Maybe Text+preambleDateText preamble =+    (datetxt preamble)+        <|> (fmtUTC <$> date preamble)+  where+    fmtUTC :: UTCTime -> Text+    fmtUTC = Text.pack . formatTime defaultTimeLocale "%a, %d %b %Y"++articleSummary :: UrlPrefix -> Article [Text] -> Lucid.Html ()+articleSummary urlPrefix art = when (isJust x) $ do+    div_ [class_ "article-summary"] $ do+        when (shouldShowStatsForArticle art) $ do+            articleStats art+        articleImage art+        maybe mempty (toHtmlRaw @Text . prefixRootRelativeLinks urlPrefix . extract') x+  where+    x :: Maybe (Section PreRenderedHtml)+    x = fromRight Nothing $ runAssembler (lookupSection art isSummary >>= traverse renderSection)++articleStats :: Article [Text] -> Lucid.Html ()+articleStats art = do+    div_ [class_ "article-stats"] $ do+        p_+            $ toHtml+            $ List.intercalate+                " "+                [ show wc+                , "words"+                , "/"+                , show . length . linkInfos $ infos+                , "links"+                , "/"+                , show . length . imageInfos $ infos+                , "images"+                , "/"+                , show . length . snippetInfos $ infos+                , "snippets"+                ]+  where+    infos = analyzeArticle art++    wc :: Int+    wc = contentWordCount xs++    xs :: [Section [Text]]+    xs = fromRight [] $ runAssembler (getSections art isMainContent)++articleImage :: Article [Text] -> Lucid.Html ()+articleImage art = do+    div_ [class_ "article-image"] $ do+        maybe mempty (\link -> img_ [src_ link, alt_ altText]) imgUrl+  where+    imgUrl :: Maybe Text+    imgUrl = imageLink =<< topicData++    altText :: Text+    altText =+        fromMaybe (maybe "" title $ articlePreambleData art)+            $ imageAlt =<< topicData++    topicData :: Maybe TopicData+    topicData = case runAssembler getTopic of+        Left _ -> Nothing+        Right x -> x++    getTopic :: Assembler (Maybe TopicData)+    getTopic = f <$> jsonm @() @TopicData art isTopic++    f :: Maybe (Section TopicData) -> Maybe TopicData+    f sec = extract <$> sec++assembleAtomEntry ::+    MetaData ->+    DestinationLocation ->+    Article [Text] ->+    Assembler (Atom.Entry)+assembleAtomEntry extra dloc art = do+    summary <- fmap (compactSummary . extract) <$> lookupSection art isSummary+    contents <- assembleMain extra.pathPrefix art+    r+        <$> (extract <$> json @() @PreambleData art isPreamble)+        <*> pure summary+        <*> pure contents+  where+    r :: PreambleData -> Maybe Text -> Html () -> Atom.Entry+    r preamble summary htmlContents =+        let url = publishBaseURL extra <> destinationUrl dloc+            selfLink = (Atom.nullLink url){Atom.linkRel = Just $ Left "alternate"}+            base =+                Atom.nullEntry+                    (url)+                    (Atom.TextString preamble.title)+                    (fmtUTC $ fromMaybe epochUTCTime preamble.date)+         in base+                { Atom.entrySummary = fmap Atom.TextString summary+                , Atom.entryAuthors = [Atom.nullPerson{Atom.personName = author preamble}]+                , Atom.entryLinks = [selfLink]+                , Atom.entryContent = Just (Atom.HTMLContent $ LText.toStrict $ Lucid.renderText htmlContents)+                }++    fmtUTC = Text.pack . iso8601Show++assemblePreambleData :: Article [Text] -> Assembler (Maybe PreambleData)+assemblePreambleData art = do+    fmap extract <$> jsonm @() @PreambleData art isPreamble++articlePreambleData :: Article [Text] -> Maybe PreambleData+articlePreambleData =+    join . hush . runAssembler . assemblePreambleData++assembleTopicData :: Article [Text] -> Assembler (Maybe TopicData)+assembleTopicData art = do+    fmap extract <$> jsonm @() @TopicData art isTopic++articleTopicData :: Article [Text] -> Maybe TopicData+articleTopicData =+    join . hush . runAssembler . assembleTopicData++assembleGlossaryData :: Article [Text] -> Assembler (Maybe GlossaryData)+assembleGlossaryData art = do+    fmap extract <$> jsonm @() @GlossaryData art isGlossary++articleGlossaryData :: Article [Text] -> Maybe GlossaryData+articleGlossaryData =+    join . hush . runAssembler . assembleGlossaryData++compactSummary :: [Text] -> Text+compactSummary = Text.strip . Text.intercalate " "++assembleCompactSummary :: Article [Text] -> Assembler Text+assembleCompactSummary art = do+    summary <- fmap extract <$> lookupSection art isSummary+    pure $ maybe "" compactSummary summary++assembleTitle :: Article [Text] -> Assembler (Maybe Text)+assembleTitle art = do+    preamble <- fmap extract <$> jsonm @() @PreambleData art isPreamble+    pure (title <$> preamble)++articleCompactSummary :: Article [Text] -> Maybe Text+articleCompactSummary =+    hush . runAssembler . assembleCompactSummary++articleTitle :: Article [Text] -> Maybe Text+articleTitle =+    join . hush . runAssembler . assembleTitle++-- | A heading of a documentation page, as listed in its table of contents.+data OutlineEntry = OutlineEntry+    { outlineLevel :: Int+    , outlineId :: Text+    , outlineLabel :: Text+    -- ^ the heading text as HTML (already escaped by the markdown renderer)+    }+    deriving (Show, Eq)++{- | The @h2@ and @h3@ headings that carry an @id@ (as given by the markdown+renderer's automatic identifiers) in an already-rendered HTML fragment.+-}+headingOutline :: Text -> [OutlineEntry]+headingOutline t =+    case Text.breakOn "<h" t of+        (_, rest) | Text.null rest -> []+        (_, rest) ->+            let afterTag = Text.drop 2 rest+             in case Text.uncons afterTag of+                    Just (c, attrsAndBody)+                        | c == '2' || c == '3' ->+                            let (attrs, afterOpen) = Text.breakOn ">" attrsAndBody+                                (body, afterClose) = Text.breakOn ("</h" <> Text.singleton c <> ">") (Text.drop 1 afterOpen)+                                entry = OutlineEntry (if c == '2' then 2 else 3) <$> attributeValue "id" attrs <*> pure (stripTags body)+                             in maybe (headingOutline afterClose) (: headingOutline afterClose) entry+                    _ -> headingOutline afterTag+  where+    attributeValue :: Text -> Text -> Maybe Text+    attributeValue name attrs =+        case Text.breakOn (name <> "=\"") attrs of+            (_, r) | Text.null r -> Nothing+            (_, r) -> Just $ Text.takeWhile (/= '"') $ Text.drop (Text.length name + 2) r++stripTags :: Text -> Text+stripTags t =+    case Text.breakOn "<" t of+        (before, rest)+            | Text.null rest -> before+            | otherwise -> before <> stripTags (Text.drop 1 (Text.dropWhile (/= '>') rest))++-- | The sidebar of a documentation page: the headings of its @main-content@.+assembleDocumentationToc :: Article [Text] -> Assembler (Lucid.Html ())+assembleDocumentationToc art = do+    sections <- getSections art isMainContent+    rendered <- traverse renderSection sections+    let outline = List.concatMap (headingOutline . extract') rendered+    pure $ case outline of+        [] -> nav_ [class_ "doc-toc"] mempty+        _ ->+            nav_ [class_ "doc-toc"] $ do+                p_ [class_ "doc-toc-title"] "On this page"+                ul_ $ mconcat [entry e | e <- outline]+  where+    entry :: OutlineEntry -> Lucid.Html ()+    entry e =+        li_ [class_ ("doc-toc-level-" <> Text.pack (show e.outlineLevel))]+            $ a_ [href_ ("#" <> e.outlineId)] (toHtmlRaw e.outlineLabel)++{- | Documentation pages are ordered by the @order@ of their build-info, then+by title.+-}+documentationOrder :: Article [Text] -> (Int, Text)+documentationOrder art =+    (fromMaybe maxBound (order =<< buildinfo art), fromMaybe "" (articleTitle art))++-- | Links to the previous and next pages among those of the documentation layout.+documentationPager :: [(Target a, Article [Text])] -> DestinationLocation -> Lucid.Html ()+documentationPager targets current =+    nav_ [class_ "doc-pager"] $ do+        maybe mempty (link "doc-prev" "Previous: ") previous+        maybe mempty (link "doc-next" "Next: ") next+  where+    pages =+        List.sortOn (documentationOrder . snd)+            $ List.filter ((== DocumentationPage) . layoutNameFor . snd) targets++    isCurrent :: (Target a, Article [Text]) -> Bool+    isCurrent (t, _) = destinationUrl (destination t) == destinationUrl current++    (before, fromCurrent) = List.break isCurrent pages++    previous = if List.null before then Nothing else Just (List.last before)+    next = case fromCurrent of+        (_ : n : _) -> Just n+        _ -> Nothing++    link :: Text -> Text -> (Target b, Article [Text]) -> Lucid.Html ()+    link cls lbl (t, art) = div_ [class_ cls] $ do+        span_ [class_ "doc-pager-label"] (toHtml lbl)+        articleLink t art
+ src/KitchenSink/Layout/Blog/Metadata.hs view
@@ -0,0 +1,60 @@+module KitchenSink.Layout.Blog.Metadata (+    MetaData (..),+    HomeLinkSpec (..),+    defaultHomeLink,+    MenuItem (..),+    FooterColumn (..),+    FooterSpec (..),+    epochUTCTime,+) where++import Data.Time.Calendar.OrdinalDate (fromOrdinalDate)+import Data.Time.Clock (UTCTime (..), secondsToDiffTime)+import Lucid.Base qualified as Lucid++import KitchenSink.Layout.Blog.Extensions (Article, Assembler)+import KitchenSink.Prelude++data MetaData = MetaData+    { now :: UTCTime+    , baseTitle :: Text+    , publishBaseURL :: Text+    , twitterSiteLogin :: Maybe Text+    , extraHeaders :: Article [Text] -> Assembler (Lucid.Html ())+    , externalKitchenSinkURLs :: [Text]+    , pathPrefix :: Text+    , homeLinkSpec :: HomeLinkSpec+    , menuSpec :: [MenuItem]+    , footerSpec :: Maybe FooterSpec+    }++-- | How the top-left link back to the site root is rendered.+data HomeLinkSpec = HomeLinkSpec+    { homeLabel :: Text+    , homeIcon :: Maybe Text+    -- ^ image URL, relative to the site (the 'pathPrefix' is applied to a root-relative one)+    }++-- | An entry of the header menu (or a link of a footer column). URLs may be+-- root-relative, in which case the 'pathPrefix' is applied when rendering.+data MenuItem = MenuItem+    { menuLabel :: Text+    , menuUrl :: Text+    , menuChildren :: [MenuItem]+    }++data FooterColumn = FooterColumn+    { footerHeading :: Maybe Text+    , footerLinks :: [MenuItem]+    }++data FooterSpec = FooterSpec+    { footerColumns :: [FooterColumn]+    , footerLegal :: Maybe Text+    }++defaultHomeLink :: HomeLinkSpec+defaultHomeLink = HomeLinkSpec "Home" Nothing++epochUTCTime :: UTCTime+epochUTCTime = UTCTime (fromOrdinalDate 1970 1) (secondsToDiffTime 0)
+ src/KitchenSink/Layout/Blog/SpecialArticles.hs view
@@ -0,0 +1,36 @@+module KitchenSink.Layout.Blog.SpecialArticles (SpecialArticle (..), lookupSpecialArticle, lookupSpecialArticleSource) where++import Data.List qualified as List++import KitchenSink.Core.Build.Site (articles)+import KitchenSink.Core.Build.Target (Sourced (..))+import KitchenSink.Layout.Blog.ArticleTypes (ArticleLayout (..), layoutNameFor)+import KitchenSink.Layout.Blog.Extensions (Article, Site)+import KitchenSink.Prelude++{- | List of special articles that warrant a specific handling such as:+* not being an articleTarget in the list of targets (see 'isSpecialLayout')+* consolidated analysses (such as a list of topics/glossary terms)++A special article is the first article whose @layout@ (in its build-info+section) is the matching one, whatever the file is named.+-}+data SpecialArticle+    = Topics+    | Glossary+    | HashTagListings++layoutOf :: SpecialArticle -> ArticleLayout+layoutOf a = case a of+    Topics -> TopicListingTemplate+    Glossary -> GlossaryPage+    HashTagListings -> HashTagListingTemplate++lookupSpecialArticleSource :: SpecialArticle -> Site -> Maybe (Sourced (Article [Text]))+lookupSpecialArticleSource a site = List.find f (articles site)+  where+    f :: Sourced (Article [Text]) -> Bool+    f s = layoutNameFor (obj s) == layoutOf a++lookupSpecialArticle :: SpecialArticle -> Site -> Maybe (Article [Text])+lookupSpecialArticle a site = obj <$> lookupSpecialArticleSource a site
+ src/KitchenSink/Layout/Blog/Summary.hs view
@@ -0,0 +1,142 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++module KitchenSink.Layout.Blog.Summary (+    PathList (..),+    TargetType (..),+    PreambleSummary (..),+    summarizePreamble,+    TargetSummary (..),+    TopicSummary (..),+    summarizeTopic,+    GlossarySummary (..),+    GlossaryItem (..),+    summarizeGlossary,+    HashTagSummary (..),+    HashTagItem (..),+    summarizeHashTags,+) where++import Data.Aeson (FromJSON, ToJSON)+import Data.Maybe (fromMaybe)+import GHC.Generics (Generic)++import KitchenSink.Core.Section hiding (target)+import KitchenSink.Core.Section.Payloads qualified as SectionBasics+import KitchenSink.Layout.Blog.Analyses.ArticleInfos+import KitchenSink.Layout.Blog.Fragments+import KitchenSink.Prelude++data TargetType+    = CssTarget+    | WebfontTarget+    | ImageTarget+    | GraphVizImageTarget+    | VideoTarget+    | AudioTarget+    | RawTarget+    | DatasetTarget+    | DocumentTarget+    | JavaScriptSourceTarget+    | HtmlSourceTarget+    | JSONTarget+    | RootFileTarget+    | ArticleTarget+    | GeneratedTarget+    | TopicsIndexTarget+    | GlossaryTarget+    | HashTagsIndexTarget+    deriving (Show, Generic)+instance ToJSON TargetType+instance FromJSON TargetType++data PreambleSummary = PreambleSummary+    { author :: Text+    , datetxt :: Maybe Text+    , title :: Text+    , faviconUrl :: Text+    }+    deriving (Show, Eq, Generic)+instance FromJSON PreambleSummary+instance ToJSON PreambleSummary++data TopicSummary = TopicSummary+    { topics :: [Text]+    , keywords :: [Text]+    , imageLink :: Maybe Text+    , imageAlt :: Maybe Text+    }+    deriving (Show, Eq, Generic)+instance FromJSON TopicSummary+instance ToJSON TopicSummary++data GlossaryItem = GlossaryItem+    { term :: Text+    , definition :: Text+    }+    deriving (Show, Eq, Generic)+instance FromJSON GlossaryItem+instance ToJSON GlossaryItem++data GlossarySummary = GlossarySummary+    { glossary :: [GlossaryItem]+    }+    deriving (Show, Eq, Generic)+instance FromJSON GlossarySummary+instance ToJSON GlossarySummary++data HashTagItem = HashTagItem+    { hashtag :: Text+    }+    deriving (Show, Eq, Generic)+instance FromJSON HashTagItem+instance ToJSON HashTagItem++data HashTagSummary = HashTagSummary+    { hashtags :: [HashTagItem]+    }+    deriving (Show, Eq, Generic)+instance FromJSON HashTagSummary+instance ToJSON HashTagSummary++summarizePreamble :: SectionBasics.PreambleData -> PreambleSummary+summarizePreamble p =+    PreambleSummary+        (SectionBasics.author p)+        (SectionBasics.datetxt p)+        (SectionBasics.title p)+        (fromMaybe defaultFavicon $ SectionBasics.faviconUrl p)++summarizeTopic :: TopicData -> TopicSummary+summarizeTopic (TopicData{..}) = TopicSummary{..}++summarizeGlossary :: GlossaryData -> GlossarySummary+summarizeGlossary (GlossaryData terms) = GlossarySummary (fmap f terms)+  where+    f (GlossaryTerm{..}) = GlossaryItem{..}++summarizeHashTags :: ArticleInfos -> HashTagSummary+summarizeHashTags infos = HashTagSummary (fmap f $ hashtagInfos infos)+  where+    f (HashTagInfo{hashtagValue}) = HashTagItem{hashtag = hashtagValue}++data TargetSummary+    = TargetSummary+    { targetType :: TargetType+    , textualTitle :: Maybe Text+    , textualSummary :: Maybe Text+    , preambleSummary :: Maybe PreambleSummary+    , topicSummary :: Maybe TopicSummary+    , glossarySummary :: Maybe GlossarySummary+    , hashtagSummary :: HashTagSummary+    }+    deriving (Show, Generic)+instance ToJSON TargetSummary+instance FromJSON TargetSummary++data PathList = PathList+    { paths :: [(Text, TargetSummary)]+    }+    deriving (Show, Generic)+instance ToJSON PathList+instance FromJSON PathList
+ src/KitchenSink/Layout/Blog/Targets.hs view
@@ -0,0 +1,758 @@+{-# LANGUAGE OverloadedRecordDot #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++module KitchenSink.Layout.Blog.Targets (+    siteTargets,+    siteDiagnostics,+    PathList,+    TargetType,+    PreambleSummary,+    TargetSummary,+    TopicSummary,+    GlossarySummary,+) where++import Data.Aeson (ToJSON, encode)+import Data.Foldable (concatMap)+import Data.ByteString.Lazy qualified as LByteString+import Data.List qualified as List+import Data.Map.Strict qualified as Map+import Data.Maybe (catMaybes, fromJust, fromMaybe, listToMaybe)+import Data.Text qualified as Text+import Data.Text.Encoding qualified as Text+import Data.Text.Lazy qualified as LText+import Data.Time.Format.ISO8601 (iso8601Show)+import GHC.Err (error)+import Lucid (article_, class_, div_, id_, nav_)++import Text.Atom.Feed qualified as Atom+import Text.Feed.Export qualified as Export (textFeedWith)+import Text.Feed.Types (Feed (AtomFeed))+import Text.XML (def)++import KitchenSink.Core.Assembler.Sections+import KitchenSink.Core.Build.Site (articles, audioFiles, cssFiles, docFiles, dotSourceFiles, htmlFiles, images, jsFiles, rawFiles, videoFiles, webfontFiles)+import KitchenSink.Core.Build.Target (DestinationLocation, ExecRoot, OutputPrefix, SourceLocation (..), Sourced (..), copyFrom, destination, destinationUrl, execCmd, runAssembler, summary)+import KitchenSink.Core.Build.Target qualified as Core+import KitchenSink.Core.Generator+import KitchenSink.Core.Section hiding (target)+import KitchenSink.Layout.Base (Diagnostic (..), Severity (..))+import KitchenSink.Layout.Blog.Analyses+import KitchenSink.Layout.Blog.Analyses.TextRender qualified as TextRender+import KitchenSink.Layout.Blog.ArticleTypes+import KitchenSink.Layout.Blog.Destinations+import KitchenSink.Layout.Blog.Extensions (Article, Assembler, ProductionRule, Site)+import KitchenSink.Layout.Blog.Extensions qualified as Ext+import KitchenSink.Layout.Blog.Fragments+import KitchenSink.Layout.Blog.Metadata+import KitchenSink.Layout.Blog.SpecialArticles as SpecialArticles+import KitchenSink.Layout.Blog.Summary+import KitchenSink.Prelude++type Target = Ext.Target TargetSummary++target :: TargetSummary -> DestinationLocation -> ProductionRule -> Target+target z x y = Core.Target x y z++simpleTarget :: TargetType -> DestinationLocation -> ProductionRule -> Target+simpleTarget z x y =+    target (TargetSummary z Nothing Nothing Nothing Nothing Nothing (HashTagSummary [])) x y++imageTargets :: UrlPrefix -> OutputPrefix -> Site -> [Target]+imageTargets urlPrefix prefix site =+    [simpleTarget ImageTarget (destImage urlPrefix prefix loc) (copyFrom loc) | Sourced loc _ <- site.images]++dotimageTargets :: UrlPrefix -> OutputPrefix -> Site -> [Target]+dotimageTargets urlPrefix prefix site =+    [ simpleTarget+        GraphVizImageTarget+        (destGenImage urlPrefix prefix loc GenPngFile)+        (execCmd root "dot" ["-Tpng", "-o", "/dev/stdout", path] "")+    | Sourced loc@(FileSource path) _ <- site.dotSourceFiles+    ]+  where+    root :: ExecRoot+    root = Nothing++videoTargets :: UrlPrefix -> OutputPrefix -> Site -> [Target]+videoTargets urlPrefix prefix site =+    [simpleTarget VideoTarget (destVideoFile urlPrefix prefix loc) (copyFrom loc) | Sourced loc _ <- site.videoFiles]++audioTargets :: UrlPrefix -> OutputPrefix -> Site -> [Target]+audioTargets urlPrefix prefix site =+    [simpleTarget AudioTarget (destAudioFile urlPrefix prefix loc) (copyFrom loc) | Sourced loc _ <- site.audioFiles]++rawTargets :: UrlPrefix -> OutputPrefix -> Site -> [Target]+rawTargets urlPrefix prefix site =+    [simpleTarget RawTarget (destRawFile urlPrefix prefix loc) (copyFrom loc) | Sourced loc _ <- site.rawFiles]++documentTargets :: UrlPrefix -> OutputPrefix -> Site -> [Target]+documentTargets urlPrefix prefix site =+    [simpleTarget DocumentTarget (destDocumentFile urlPrefix prefix loc) (copyFrom loc) | Sourced loc _ <- site.docFiles]++cssTargets :: UrlPrefix -> OutputPrefix -> Site -> [Target]+cssTargets urlPrefix prefix site =+    [simpleTarget CssTarget (destCssFile urlPrefix prefix loc) (copyFrom loc) | Sourced loc _ <- site.cssFiles]++webfontTargets :: UrlPrefix -> OutputPrefix -> Site -> [Target]+webfontTargets urlPrefix prefix site =+    [simpleTarget WebfontTarget (destWebfontFile urlPrefix prefix loc) (copyFrom loc) | Sourced loc _ <- site.webfontFiles]++jsTargets :: UrlPrefix -> OutputPrefix -> Site -> [Target]+jsTargets urlPrefix prefix site =+    [simpleTarget JavaScriptSourceTarget (destJsFile urlPrefix prefix loc) (copyFrom loc) | Sourced loc _ <- site.jsFiles]++htmlTargets :: UrlPrefix -> OutputPrefix -> Site -> [Target]+htmlTargets urlPrefix prefix site =+    [simpleTarget HtmlSourceTarget (destHtml urlPrefix prefix loc) (copyFrom loc) | Sourced loc _ <- site.htmlFiles]++jsonDataTarget :: (ToJSON a) => UrlPrefix -> OutputPrefix -> a -> FilePath -> Target+jsonDataTarget urlPrefix prefix v loc =+    simpleTarget JSONTarget (destJsonDataFile urlPrefix prefix loc) (Core.ProduceGenerator f)+  where+    f _ = Generator $ pure $ Right $ LByteString.toStrict $ encode v++textDataTarget :: UrlPrefix -> OutputPrefix -> Article [Text] -> FilePath -> Target+textDataTarget urlPrefix prefix v loc =+    simpleTarget JSONTarget (destTextDataFile urlPrefix prefix loc) (Core.ProduceGenerator f)+  where+    f _ = Generator $ pure $ Right $ Text.encodeUtf8 $ TextRender.textRender v++rootDataTarget :: UrlPrefix -> OutputPrefix -> Text -> FilePath -> Target+rootDataTarget urlPrefix prefix v loc =+    simpleTarget RootFileTarget (destRootDataFile urlPrefix prefix loc) (Core.ProduceGenerator f)+  where+    f _ = Generator $ pure $ Right $ Text.encodeUtf8 v++generatorInstructions :: Article [Text] -> Assembler [GeneratorInstructionsData]+generatorInstructions art =+    getSections art isGeneratorInstructions+        >>= traverse (fmap extract . jsonSection)++-- | What 'siteTargets' silently works around: an article whose @layout@ is not+-- one we know (or whose build-info section cannot be read) is rendered with the+-- default layout, and an article whose generator sections cannot be read gets no+-- generator targets.+siteDiagnostics :: Site -> [Diagnostic]+siteDiagnostics site = concatMap articleDiagnostics site.articles+  where+    articleDiagnostics :: Sourced (Article [Text]) -> [Diagnostic]+    articleDiagnostics (Sourced loc art) =+        layoutDiagnostics loc art <> generatorDiagnostics loc art++    layoutDiagnostics :: SourceLocation -> Article [Text] -> [Diagnostic]+    layoutDiagnostics loc art+        | not (isConcreteTarget art) = []+        | otherwise = case layoutNameFor art of+            UnknownLayout name ->+                [Diagnostic Warning loc ("unknown layout " <> Text.pack (show name) <> " (with this publicationStatus), rendered with the default layout")]+            ErrorLayout err ->+                [Diagnostic Warning loc ("unreadable build-info section (" <> Text.pack (show err) <> "), rendered with the default layout")]+            _ -> []++    generatorDiagnostics :: SourceLocation -> Article [Text] -> [Diagnostic]+    generatorDiagnostics loc art =+        either+            (\err -> [Diagnostic Failure loc ("unreadable generator section (" <> Text.pack (show err) <> "), no generator target produced")])+            (const [])+            $ runAssembler+            $ generatorInstructions art++siteTargets :: ExecRoot -> OutputPrefix -> MetaData -> Site -> [Target]+siteTargets execRoot prefix extra site = allTargets+  where+    urlPrefix :: UrlPrefix+    urlPrefix = extra.pathPrefix++    allTargets =+        mconcat+            [ embeddedGeneratorTargets+            , embeddedDataTargets+            , fmap fst articleTargets+            , imageTargets urlPrefix prefix site+            , dotimageTargets urlPrefix prefix site+            , videoTargets urlPrefix prefix site+            , audioTargets urlPrefix prefix site+            , rawTargets urlPrefix prefix site+            , documentTargets urlPrefix prefix site+            , cssTargets urlPrefix prefix site+            , webfontTargets urlPrefix prefix site+            , jsTargets urlPrefix prefix site+            , htmlTargets urlPrefix prefix site+            , topicIndexesTargets (lookupSpecialArticle SpecialArticles.Topics site)+            , topicAtomTargets (lookupSpecialArticle SpecialArticles.Topics site)+            , hashtagIndexesTargets (lookupSpecialArticle SpecialArticles.HashTagListings site)+            , hashtagAtomTargets (lookupSpecialArticle SpecialArticles.Topics site)+            , glossaryTargets (lookupSpecialArticleSource SpecialArticles.Glossary site)+            , jsonDataTargets+            , textDataTargets+            , seoTargets+            ]++    pathList :: PathList+    pathList = PathList $ [(destinationUrl (destination tgt), summary tgt) | tgt <- allTargets]++    jsonDataTargets :: [Target]+    jsonDataTargets =+        [ jsonDataTarget urlPrefix prefix (pathList) "paths.json"+        , jsonDataTarget urlPrefix prefix (filecounts site) "filecounts.json"+        , jsonDataTarget urlPrefix prefix (topicsgraph urlPrefix (ExternalSitesInfo $ externalKitchenSinkURLs extra) stats) "topicsgraph.json"+        ]+            <> [ jsonDataTarget urlPrefix prefix (analyzeArticle art) (p <> ".json") | (Sourced (FileSource p) art) <- site.articles+               ]++    textDataTargets :: [Target]+    textDataTargets =+        [ textDataTarget urlPrefix prefix art (p <> ".text") | (Sourced (FileSource p) art) <- site.articles+        ]++    seoTargets :: [Target]+    seoTargets =+        [ rootDataTarget urlPrefix prefix (Text.unlines $ fmap (\x -> publishBaseURL extra <> x) $ fmap (destinationUrl . destination . fst) articleTargets) "sitemap.txt"+        , rootDataTarget urlPrefix prefix (atomFeedContent articleTargets) "atom.xml"+        ]++    atomFeedContent :: [(Ext.Target z, Article [Text])] -> Text+    atomFeedContent targets =+        let render = LText.toStrict . fromJust . Export.textFeedWith def . AtomFeed+            uri = publishBaseURL extra <> (destinationUrl $ destRootDataFile urlPrefix prefix "atom.xml")+         in render+                $ feedForArticles uri+                $ List.filter (isPublishedArticle . snd)+                $ List.filter (isListableArticle . snd)+                $ targets++    feedForArticles :: Atom.URI -> [(Ext.Target z, Article [Text])] -> Atom.Feed+    feedForArticles uri arts =+        let baseFeed = Atom.nullFeed uri (Atom.TextString $ baseTitle extra) updatedAt+            fmtUTC = Text.pack . iso8601Show+            -- picks the first date in the article list, recall that date is optional+            updatedAt =+                fmtUTC+                    $ fromMaybe epochUTCTime+                    $ listToMaybe+                    $ catMaybes+                    $ fmap (extractDate . snd)+                    $ arts+            mkfeed xs = baseFeed{Atom.feedEntries = xs}+            entries =+                traverse toEntry+                    $ sortByDate arts+         in case runAssembler (mkfeed <$> entries) of+                Left err -> error (show err)+                Right x -> x++    toEntry :: (Ext.Target z, Article [Text]) -> Assembler Atom.Entry+    toEntry (tgt, art) = assembleAtomEntry extra (destination tgt) art++    articleTarget :: Sourced (Article [Text]) -> Target+    articleTarget (Sourced loc@(FileSource path) art) =+        let u = destHtml urlPrefix prefix loc+            j = destJsonDataFile urlPrefix prefix (path <> ".json") -- todo:unify+            t = destTextDataFile urlPrefix prefix (path <> ".text") -- todo:unify+            tgtSummary = TargetSummary ArticleTarget (articleTitle art) (articleCompactSummary art) (summarizePreamble <$> articlePreambleData art) (summarizeTopic <$> articleTopicData art) (summarizeGlossary <$> articleGlossaryData art) (summarizeHashTags $ analyzeArticle art)+         in target tgtSummary u (Core.ProduceAssembler $ layoutFor u j t art)++    articleTargets :: [(Target, Article [Text])]+    articleTargets =+        [ (articleTarget srca, srca.obj)+        | srca <- site.articles+        , isConcreteTarget srca.obj+        ]++    -- a section that cannot be read yields no target here; 'siteDiagnostics' reports it+    embeddedGeneratorTargets :: [Target]+    embeddedGeneratorTargets =+        [ tgt+        | Sourced loc art <- site.articles+        , tgt <- getTargets loc art+        ]+      where+        getTargets :: SourceLocation -> Article [Text] -> [Target]+        getTargets loc art =+            either (const []) (fmap (generatorTarget loc))+                $ runAssembler+                $ generatorInstructions art++        generatorTarget :: SourceLocation -> GeneratorInstructionsData -> Target+        generatorTarget loc g =+            let rule =+                    execCmd+                        execRoot+                        (Text.unpack g.cmd)+                        (fmap Text.unpack g.args)+                        (fromMaybe "" $ (fmap Text.encodeUtf8 g.stdin) <|> (fmap (LByteString.toStrict . encode) g.stdin_json))+             in simpleTarget GeneratedTarget (destGenArbitrary urlPrefix prefix loc g) rule++    embeddedDataTargets :: [Target]+    embeddedDataTargets =+        [ tgt+        | Sourced loc art <- site.articles+        , tgt <- getTargets loc art+        ]+      where+        getTargets :: SourceLocation -> Article [Text] -> [Target]+        getTargets loc art =+            catMaybes+                $ either (error . show) (fmap (dataTarget loc)) -- note catMaybes won't swallow errors as `datasets` is a morally-correct filter for valid `dataTarget` arguments+                $ runAssembler+                $ datasets art++        dataTarget :: SourceLocation -> (Int, Section () [Text]) -> Maybe Target+        -- a .sql dataset never becomes a static target: it is deferred,+        -- request-time-only (see "KitchenSink.Engine.Dynamic"), so `produce`+        -- must not try to publish its raw source text+        dataTarget _ (_, Section (Dataset _) Sql _) = Nothing+        dataTarget loc (index, (Section (Dataset name) format contents)) =+            let+                dataDestination = destEmbeddedData urlPrefix prefix loc (destinationExtension format) name index+                rule = Core.ProduceAssembler (pure $ LText.fromStrict $ Text.unlines contents)+             in+                Just $ simpleTarget DatasetTarget dataDestination rule+        dataTarget _ _ = Nothing -- return Nothing on non-Data item only+        datasets :: Article [Text] -> Assembler [(Int, Section () [Text])]+        datasets art = do+            sections <- getSections art isDataset+            pure $ List.zip [1 ..] sections++    topicIndexesTargets :: Maybe (Article [Text]) -> [Target]+    topicIndexesTargets Nothing = []+    topicIndexesTargets (Just art) =+        [ let u = destTopic urlPrefix prefix topic+           in simpleTarget TopicsIndexTarget u (Core.ProduceAssembler $ topicsLayout topic articles u u u art)+        | (topic, articles) <- Map.toList (byTopic stats)+        ]++    topicAtomTargets :: Maybe (Article [Text]) -> [Target]+    topicAtomTargets Nothing = []+    topicAtomTargets (Just _) =+        [ let u = destTopicAtom urlPrefix prefix topic+              rule = Core.ProduceAssembler $ pure $ LText.fromStrict $ atomFeedContent articles+           in simpleTarget TopicsIndexTarget u rule+        | (topic, articles) <- Map.toList (byTopic stats)+        ]++    hashtagIndexesTargets :: Maybe (Article [Text]) -> [Target]+    hashtagIndexesTargets Nothing = []+    hashtagIndexesTargets (Just art) =+        [ let u = destHashTag urlPrefix prefix (hashtagValue tag)+           in simpleTarget HashTagsIndexTarget u (Core.ProduceAssembler $ hashtagsLayout tag articles u u u art)+        | (tag, articles) <- Map.toList (byHashTag stats)+        ]++    hashtagAtomTargets :: Maybe (Article [Text]) -> [Target]+    hashtagAtomTargets Nothing = []+    hashtagAtomTargets (Just _) =+        [ let u = destHashTagAtom urlPrefix prefix (hashtagValue tag)+              rule = Core.ProduceAssembler $ pure $ LText.fromStrict $ atomFeedContent articles+           in simpleTarget HashTagsIndexTarget u rule+        | (tag, articles) <- Map.toList (byHashTag stats)+        ]++    glossaryTargets :: Maybe (Sourced (Article [Text])) -> [Target]+    glossaryTargets Nothing = []+    glossaryTargets (Just (Sourced loc art)) =+        let u = destHtml urlPrefix prefix loc+         in [ simpleTarget GlossaryTarget u (Core.ProduceAssembler $ glossaryListingLayout articleTargets u u u art)+            ]++    layoutFor ::+        DestinationLocation ->+        DestinationLocation ->+        DestinationLocation ->+        Article [Text] ->+        Assembler LText.Text+    layoutFor dloc jsondloc txtdloc art =+        let go =+                fromMaybe defaultLayout+                    $ flip List.lookup layoutMap+                    $ layoutNameFor art+         in go dloc jsondloc txtdloc art++    layoutMap :: [(ArticleLayout, DestinationLocation -> DestinationLocation -> DestinationLocation -> Article [Text] -> Assembler LText.Text)]+    layoutMap =+        [ (SinglePageApp, spaLayout)+        , (VariousListing, variousListingLayout)+        , (ImageGallery, imageGalleryLayout)+        , (ArchivedArticle, archivedArticleLayout)+        , (UpcomingArticle, upcomingArticleLayout)+        , (PublishedArticle, articleLayout)+        , (DocumentationPage, documentationLayout)+        , (CorporatePage, corporateLayout)+        , (IndexPage, indexLayout)+        ]++    stats :: TopicStats+    stats = buildTopicStats site.articles (fmap (const ()) . articleTarget)++    wholeGlossary :: WholeGlossary+    wholeGlossary = buildWholeGlossary site.articles (fmap (const ()) . articleTarget)++    rootAtomDLoc :: DestinationLocation+    rootAtomDLoc = destRootDataFile urlPrefix prefix "atom.xml"++    indexLayout ::+        DestinationLocation ->+        DestinationLocation ->+        DestinationLocation ->+        Article [Text] ->+        Assembler LText.Text+    indexLayout dloc jsondloc txtdloc =+        htmldoc+            $ mconcat+                [ htmlhead (MetaHeaders extra dloc jsondloc txtdloc rootAtomDLoc) assembleStyle+                , htmlbody+                    $ mconcat+                        [ wrap (nav_ [id_ "site-navigation", class_ "nav"])+                            $ mconcat+                                [ const $ pure $ homeLink extra+                                , const $ pure $ siteMenu extra+                                , const $ pure $ searchBox urlPrefix+                                ]+                        , wrap (div_ [class_ "main"])+                            $ wrap article_+                            $ mconcat+                                [ assembleMain urlPrefix+                                , const $ pure $ latestArticleLink urlPrefix articleTargets+                                , const $ pure $ siteGraphEchartZone urlPrefix+                                , const $ pure $ mainArticleLinks urlPrefix articleTargets+                                , const $ pure $ topicsListings stats+                                ]+                        , const $ pure $ siteFooter extra+                        ]+                ]++    archivedArticleLayout ::+        DestinationLocation ->+        DestinationLocation ->+        DestinationLocation ->+        Article [Text] ->+        Assembler LText.Text+    archivedArticleLayout dloc jsondloc txtdloc =+        htmldoc+            $ mconcat+                [ htmlhead (MetaHeaders extra dloc jsondloc txtdloc rootAtomDLoc) assembleStyle+                , htmlbody+                    $ mconcat+                        [ wrap (nav_ [id_ "site-navigation", class_ "nav"])+                            $ mconcat+                                [ const $ pure $ homeLink extra+                                , const $ pure $ siteMenu extra+                                , const $ pure $ searchBox urlPrefix+                                ]+                        , wrap (div_ [class_ "main"])+                            $ wrap article_+                            $ mconcat+                                [ assembleHeader urlPrefix prefix stats dloc+                                , assembleArchivedMain urlPrefix+                                , assembleFooter+                                ]+                        , const $ pure $ siteFooter extra+                        ]+                ]++    upcomingArticleLayout ::+        DestinationLocation ->+        DestinationLocation ->+        DestinationLocation ->+        Article [Text] ->+        Assembler LText.Text+    upcomingArticleLayout dloc jsondloc txtdloc =+        htmldoc+            $ mconcat+                [ htmlhead (MetaHeaders extra dloc jsondloc txtdloc rootAtomDLoc) assembleStyle+                , htmlbody+                    $ mconcat+                        [ wrap (nav_ [id_ "site-navigation", class_ "nav"])+                            $ mconcat+                                [ const $ pure $ homeLink extra+                                , const $ pure $ siteMenu extra+                                , const $ pure $ searchBox urlPrefix+                                ]+                        , wrap (div_ [class_ "main"])+                            $ wrap article_+                            $ mconcat+                                [ assembleHeader urlPrefix prefix stats dloc+                                , assembleUpcomingMain urlPrefix+                                , assembleFooter+                                ]+                        , const $ pure $ siteFooter extra+                        ]+                ]++    articleLayout ::+        DestinationLocation ->+        DestinationLocation ->+        DestinationLocation ->+        Article [Text] ->+        Assembler LText.Text+    articleLayout dloc jsondloc txtdloc =+        htmldoc+            $ mconcat+                [ htmlhead (MetaHeaders extra dloc jsondloc txtdloc rootAtomDLoc) assembleStyle+                , htmlbody+                    $ mconcat+                        [ wrap (nav_ [id_ "site-navigation", class_ "nav"])+                            $ mconcat+                                [ const $ pure $ homeLink extra+                                , const $ pure $ siteMenu extra+                                , const $ pure $ searchBox urlPrefix+                                ]+                        , wrap (div_ [class_ "main"])+                            $ wrap article_+                            $ mconcat+                                [ assembleHeader urlPrefix prefix stats dloc+                                , assembleMain urlPrefix+                                , assembleGlossary+                                , assembleFooter+                                ]+                        , const $ pure $ siteFooter extra+                        ]+                ]++    documentationLayout ::+        DestinationLocation ->+        DestinationLocation ->+        DestinationLocation ->+        Article [Text] ->+        Assembler LText.Text+    documentationLayout dloc jsondloc txtdloc =+        htmldoc+            $ mconcat+                [ htmlhead (MetaHeaders extra dloc jsondloc txtdloc rootAtomDLoc) assembleStyle+                , htmlbody+                    $ mconcat+                        [ wrap (nav_ [id_ "site-navigation", class_ "nav"])+                            $ mconcat+                                [ const $ pure $ homeLink extra+                                , const $ pure $ searchBox urlPrefix+                                ]+                        , wrap (div_ [class_ "main doc-layout"])+                            $ mconcat+                                [ assembleDocumentationToc+                                , wrap article_+                                    $ mconcat+                                        [ assembleHeader urlPrefix prefix stats dloc+                                        , assembleMain urlPrefix+                                        , assembleGlossary+                                        , const $ pure $ documentationPager articleTargets dloc+                                        , assembleFooter+                                        ]+                                ]+                        ]+                ]++    {- | @corporate@: a landing-page layout for company/marketing sites. Wide,+    full-bleed sections (hero, feature grid, pricing table, call to action,+    testimonial strip) instead of a narrow reading column, and none of the+    blog chrome (no byline, no publication date, no topic links, no+    glossary): the page's own @main-content@/@callout@/@pricing@ sections are+    the whole story. The site-wide menu and footer are still shown, same as+    every other layout.+    -}+    corporateLayout ::+        DestinationLocation ->+        DestinationLocation ->+        DestinationLocation ->+        Article [Text] ->+        Assembler LText.Text+    corporateLayout dloc jsondloc txtdloc =+        htmldoc+            $ mconcat+                [ htmlhead (MetaHeaders extra dloc jsondloc txtdloc rootAtomDLoc) assembleStyle+                , htmlbody+                    $ mconcat+                        [ wrap (nav_ [id_ "site-navigation", class_ "nav"])+                            $ mconcat+                                [ const $ pure $ homeLink extra+                                , const $ pure $ siteMenu extra+                                , const $ pure $ searchBox urlPrefix+                                ]+                        , wrap (div_ [class_ "main corporate-layout"])+                            $ wrap article_+                            $ mconcat+                                [ assembleMain urlPrefix+                                ]+                        , const $ pure $ siteFooter extra+                        ]+                ]++    spaLayout ::+        DestinationLocation ->+        DestinationLocation ->+        DestinationLocation ->+        Article [Text] ->+        Assembler LText.Text+    spaLayout dloc jsondloc txtdloc =+        htmldoc+            $ mconcat+                [ htmlhead (MetaHeaders extra dloc jsondloc txtdloc rootAtomDLoc) assembleStyle+                , htmlbody+                    $ mconcat+                        [ wrap (div_ [id_ "spa", class_ "application"]) mempty+                        , wrap (div_ [class_ "help"])+                            $ wrap article_+                            $ mconcat+                                [ assembleMain urlPrefix+                                ]+                        ]+                ]++    imageGalleryLayout ::+        DestinationLocation ->+        DestinationLocation ->+        DestinationLocation ->+        Article [Text] ->+        Assembler LText.Text+    imageGalleryLayout dloc jsondloc txtdloc =+        htmldoc+            $ mconcat+                [ htmlhead (MetaHeaders extra dloc jsondloc txtdloc rootAtomDLoc) assembleStyle+                , htmlbody+                    $ mconcat+                        [ wrap (div_ [id_ "gallery", class_ "photos"])+                            $ mconcat+                                [ assembleMain urlPrefix+                                ]+                        ]+                ]++    variousListingLayout ::+        DestinationLocation ->+        DestinationLocation ->+        DestinationLocation ->+        Article [Text] ->+        Assembler LText.Text+    variousListingLayout dloc jsondloc txtdloc =+        htmldoc+            $ mconcat+                [ htmlhead (MetaHeaders extra dloc jsondloc txtdloc rootAtomDLoc) assembleStyle+                , htmlbody+                    $ mconcat+                        [ wrap (div_ [id_ "listing"])+                            $ mconcat+                                [ assembleMain urlPrefix+                                ]+                        ]+                ]++    topicsLayout ::+        TopicName ->+        [(Ext.Target a, Article [Text])] ->+        DestinationLocation ->+        DestinationLocation ->+        DestinationLocation ->+        Article [Text] ->+        Assembler LText.Text+    topicsLayout topic articles dloc jsondloc txtdloc =+        let atomDLoc = destTopicAtom urlPrefix prefix topic+         in htmldoc+                $ mconcat+                    [ htmlhead (MetaHeaders extra dloc jsondloc txtdloc atomDLoc) assembleStyle+                    , htmlbody+                        $ mconcat+                            [ wrap (nav_ [id_ "site-navigation", class_ "nav"])+                                $ mconcat+                                    [ const $ pure $ homeLink extra+                                    , const $ pure $ siteMenu extra+                                    , const $ pure $ searchBox urlPrefix+                                    ]+                            , wrap (div_ [class_ "main"])+                                $ wrap article_+                                $ mconcat+                                    [ const (assembleTopicListing urlPrefix prefix stats topic articles)+                                    ]+                            , const $ pure $ siteFooter extra+                            ]+                    ]++    hashtagsLayout ::+        HashTagInfo ->+        [(Ext.Target a, Article [Text])] ->+        DestinationLocation ->+        DestinationLocation ->+        DestinationLocation ->+        Article [Text] ->+        Assembler LText.Text+    hashtagsLayout tag articles dloc jsondloc txtdloc =+        let atomDLoc = destHashTagAtom urlPrefix prefix (hashtagValue tag)+         in htmldoc+                $ mconcat+                    [ htmlhead (MetaHeaders extra dloc jsondloc txtdloc atomDLoc) assembleStyle+                    , htmlbody+                        $ mconcat+                            [ wrap (nav_ [id_ "site-navigation", class_ "nav"])+                                $ mconcat+                                    [ const $ pure $ homeLink extra+                                    , const $ pure $ siteMenu extra+                                    , const $ pure $ searchBox urlPrefix+                                    ]+                            , wrap (div_ [class_ "main"])+                                $ wrap article_+                                $ mconcat+                                    [ const (assembleHashtagListing urlPrefix (hashtagValue tag) articles)+                                    ]+                            , const $ pure $ siteFooter extra+                            ]+                    ]++    glossaryListingLayout ::+        [(Ext.Target a, Article [Text])] ->+        DestinationLocation ->+        DestinationLocation ->+        DestinationLocation ->+        Article [Text] ->+        Assembler LText.Text+    glossaryListingLayout articles dloc jsondloc txtdloc =+        htmldoc+            $ mconcat+                [ htmlhead (MetaHeaders extra dloc jsondloc txtdloc rootAtomDLoc) assembleStyle+                , htmlbody+                    $ mconcat+                        [ wrap (nav_ [id_ "site-navigation", class_ "nav"])+                            $ mconcat+                                [ const $ pure $ homeLink extra+                                , const $ pure $ siteMenu extra+                                , const $ pure $ searchBox urlPrefix+                                ]+                        , wrap (div_ [class_ "main"])+                            $ wrap article_+                            $ mconcat+                                [ const (assembleGlossaryListing prefix wholeGlossary articles)+                                ]+                        , const $ pure $ siteFooter extra+                        ]+                ]++    -- see 'siteDiagnostics' for the build-time report of the fallback+    defaultLayout ::+        DestinationLocation ->+        DestinationLocation ->+        DestinationLocation ->+        Article [Text] ->+        Assembler LText.Text+    defaultLayout dloc jsondloc txtdloc =+        htmldoc+            $ mconcat+                [ htmlhead (MetaHeaders extra dloc jsondloc txtdloc rootAtomDLoc) assembleStyle+                , htmlbody+                    $ mconcat+                        [ wrap (nav_ [id_ "site-navigation", class_ "nav"])+                            $ mconcat+                                [ const $ pure $ homeLink extra+                                , const $ pure $ siteMenu extra+                                , const $ pure $ searchBox urlPrefix+                                ]+                        , wrap (div_ [class_ "main"])+                            $ wrap article_+                            $ mconcat+                                [ assembleHeader urlPrefix prefix stats dloc+                                , assembleDefaultLayoutWarning+                                , assembleMain urlPrefix+                                , assembleGlossary+                                , assembleFooter+                                ]+                        , const $ pure $ siteFooter extra+                        ]+                ]
+ src/KitchenSink/Prelude.hs view
@@ -0,0 +1,62 @@+module KitchenSink.Prelude (+    FilePath,+    Name,+    hush,+    module Control.Applicative,+    module Control.Monad,+    module Data.Bool,+    module Data.Coerce,+    module Data.Eq,+    module Data.Either,+    module Data.Foldable,+    module Data.Function,+    module Data.Functor,+    module Data.Int,+    module Data.Traversable,+    module Data.Tuple,+    module Data.List,+    module Data.Maybe,+    module Data.Monoid,+    module Data.Ord,+    module Data.Semigroup,+    module Data.String,+    module Data.Text,+    module System.IO,+    module Text.Show,+    module GHC.Exception,+    module GHC.IO,+    module Prelude,+) where++import Control.Applicative (Applicative, pure, (*>), (<*), (<*>), (<|>))+import Control.Monad (Functor, Monad, fmap, join, void, (=<<), (>>), (>>=))+import Data.Bool (Bool (..), not, otherwise)+import Data.Coerce (Coercible, coerce)+import Data.Either (Either (..), either)+import Data.Eq (Eq, (/=), (==))+import Data.Foldable (Foldable (..), traverse_)+import Data.Function (const, flip, ($), (.))+import Data.Functor ((<$>))+import Data.Int (Int)+import Data.List (length)+import Data.Maybe (Maybe (..), maybe)+import Data.Monoid (Monoid, mappend, mconcat, mempty)+import Data.Ord (Ord, compare)+import Data.Semigroup (Semigroup (..), (<>))+import Data.Text (Text)+import Data.Traversable (Traversable (..), traverse)+import Data.Tuple (fst, snd, uncurry)+import Text.Show (Show, show)+import Prelude (seq)++import Data.String (String)+import GHC.Exception (Exception)+import GHC.IO (IO)+import System.IO (print, putStrLn)++type FilePath = String++type Name = Text++hush :: Either a b -> Maybe b+hush = either (const Nothing) Just
+ toolbox-app/Main.hs view
@@ -0,0 +1,6 @@+module Main where++import KitchenSink.Engine.Toolbox (toolboxMain)++main :: IO ()+main = toolboxMain